x11/motif: New port (2.5.2)

This commit is contained in:
Tim Hentenaar
2026-04-17 18:57:26 -04:00
committed by Renee Otten
parent 33b06b81e0
commit 5cdfcaca06
3 changed files with 93 additions and 0 deletions
+52
View File
@@ -0,0 +1,52 @@
# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
PortSystem 1.0
PortGroup github 1.0
github.setup thentenaar motif 2.5.2 v
github.tarball_from archive
revision 0
categories x11
license LGPL-2.1
maintainers {hentenaar.com:tim @thentenaar} openmaintainer
description The Motif toolkit for X11
long_description This is Motif, the legendary user interface toolkit \
Originally provided by The Open Group and other vendors, \
it lives on as an independent project.
checksums rmd160 6292e071449c33be3f6af9db7784639b2bc5a30d \
sha256 6698f72e2018eaebb810c8a47345fc8a40a3f945551380ce88a0da6c434a010a \
size 8778216
patchfiles locale.diff drawline.diff
use_autoconf yes
autoconf.cmd autoreconf -fi
configure.args --disable-tests --disable-demos
depends_build port:autoconf \
port:automake \
port:byacc \
port:flex \
port:libtool \
path:bin/pkg-config:pkgconfig \
port:xbitmaps
depends_lib port:freetype \
port:fontconfig \
port:libiconv \
path:include/turbojpeg.h:libjpeg-turbo \
port:libpng \
port:Xft2 \
port:xorg-libice \
port:xorg-libsm \
port:xorg-libX11 \
port:xorg-libXcursor \
port:xorg-libXext \
port:xorg-libXmu \
port:xorg-libXrandr \
port:xorg-libXt \
port:xpm \
port:xrender
+13
View File
@@ -0,0 +1,13 @@
--- lib/Xm/XmString.c
+++ lib/Xm/XmString.c
@@ -3737,7 +3737,9 @@ DrawLine(
Boolean set_direction = False;
XmDirection lay_dir = prim_dir; /* layout direction of this line */
- seg = _XmEntrySegmentGet(line)[seg_index];
+ if (_XmEntryMultiple(line))
+ seg = _XmEntrySegment(line)[seg_index];
+ else seg = (_XmStringNREntry)line;
if (_XmEntryType(seg) != XmSTRING_ENTRY_OPTIMIZED) {
lay_dir = _XmEntryLayoutGet(seg, prim_dir);
+28
View File
@@ -0,0 +1,28 @@
--- lib/Xm/XmString.c
+++ lib/Xm/XmString.c
@@ -5126,14 +5126,14 @@ static void _parse_locale(char *str, int *idx, int *len)
*idx = 0;
*len = 0;
- if (!str || !*str || *str == '@' || *str == ';')
+ if (!str || !*str || *str == '@' || *str == ';' || *str == '/')
return;
/**
* Locale identifiers are formatted as:
* language[_territory][.codeset][@modifier]
*/
- while (tmp[end] && tmp[end] != '.' && tmp[end] != '@' && tmp[end] != ';')
+ while (tmp[end] && tmp[end] != '.' && tmp[end] != '@' && tmp[end] != ';' && tmp[end] != '/')
end++;
/* Bail if we didn't get a codeset */
@@ -5142,7 +5142,7 @@ static void _parse_locale(char *str, int *idx, int *len)
/* Look for the end of the codeset */
*idx = end;
- while (tmp[end] && tmp[end] != '@' && tmp[end] != ';') end++;
+ while (tmp[end] && tmp[end] != '@' && tmp[end] != ';' && tmp[end] != '/') end++;
*len = end - *idx;
}