diff options
author | Leo <thinkabit.ukim@gmail.com> | 2019-05-29 15:44:55 -0300 |
---|---|---|
committer | Francesco Colista <fcolista@alpinelinux.org> | 2019-05-29 21:10:41 +0000 |
commit | 78651dab7e64c4fff4000a9ebf34b69fae81d5fa (patch) | |
tree | c353907b048349e0a7a8f4d89448f1a68b3e0237 /main/motif | |
parent | 254dbc9f0b4813396b262586a4481541756853a1 (diff) | |
download | aports-78651dab7e64c4fff4000a9ebf34b69fae81d5fa.tar.bz2 aports-78651dab7e64c4fff4000a9ebf34b69fae81d5fa.tar.xz |
main/motif: upgrade to 2.3.8
Diffstat (limited to 'main/motif')
-rw-r--r-- | main/motif/01-fix-autoconf.patch | 47 | ||||
-rw-r--r-- | main/motif/12-fix_buffer_overrun_in_libxm.patch | 17 | ||||
-rw-r--r-- | main/motif/14-fix_ac_find_xft.patch | 91 | ||||
-rw-r--r-- | main/motif/18-updated-fix-1565.patch | 431 | ||||
-rw-r--r-- | main/motif/APKBUILD | 70 |
5 files changed, 36 insertions, 620 deletions
diff --git a/main/motif/01-fix-autoconf.patch b/main/motif/01-fix-autoconf.patch deleted file mode 100644 index 325707a18b..0000000000 --- a/main/motif/01-fix-autoconf.patch +++ /dev/null @@ -1,47 +0,0 @@ -Description: Update build system to satisfy latest automake/autoconf - This is part of the patch submitted by Adam Sampson, - so we can build without having to provide AUTHORS and NEWS files - . - Adam licensed his patch under MIT license (whatever that means ;) ) -Forwarded: http://bugs.motifzone.net/show_bug.cgi?id=1571 -Author: Adam Sampson <ats-motif@offog.org> -Author: Graham Inggs <graham@nerve.org.za> -Last-Update: 2012-12-25 ---- a/configure.ac -+++ b/configure.ac -@@ -1,8 +1,13 @@ - dnl Process this file with autoconf to produce a configure script. --AC_INIT -+AC_PREREQ(2.59) -+AC_INIT([motif], [2.3.4]) - AC_CONFIG_SRCDIR([lib/Xm/Form.c]) --AC_PREREQ(2.52) - AC_CONFIG_AUX_DIR(.) -+AC_CANONICAL_TARGET -+ -+AM_INIT_AUTOMAKE([foreign no-define]) -+dnl AM_MAINTAINER_MODE -+ - AC_CHECK_FILE(/usr/X/include/X11/X.h, - AC_PREFIX_DEFAULT(/usr/X), - AC_PREFIX_DEFAULT(/usr)) -@@ -10,9 +15,6 @@ - AC_PREFIX_DEFAULT(/usr/X11R6), - AC_PREFIX_DEFAULT(/usr)) - --dnl AM_MAINTAINER_MODE --AC_CANONICAL_TARGET -- - dnl The version of the Motif libraries - CURRENT=4 - REVISION=4 -@@ -21,9 +23,6 @@ - AC_SUBST(REVISION) - AC_SUBST(AGE) - --dnl This is really dumb but it seems to be bug --AM_INIT_AUTOMAKE(motif,2.3.4,no-define) -- - LIBTOOL_VERSION=$CURRENT:$REVISION:$AGE - - dnl diff --git a/main/motif/12-fix_buffer_overrun_in_libxm.patch b/main/motif/12-fix_buffer_overrun_in_libxm.patch deleted file mode 100644 index 227b1c57a3..0000000000 --- a/main/motif/12-fix_buffer_overrun_in_libxm.patch +++ /dev/null @@ -1,17 +0,0 @@ -Description: Fix buffer overrun in libXm (FontS.c) -Origin: upstream commit dada5ff7f93cb48afaec2469f5dde24178d8d6da -Bug: http://bugs.motifzone.net/show_bug.cgi?id=1568 -Author: Arthur Haas <ahaas@impactweather.com> -Author: Graham Inggs <graham@nerve.org.za> -Last-Update: 2013-02-19 ---- a/lib/Xm/FontS.c -+++ b/lib/Xm/FontS.c -@@ -1879,7 +1879,7 @@ - String params[1]; - Cardinal num = 1; - -- params[1] = new_font; -+ params[0] = new_font; - dbg(); _XmWarningMsg((Widget) fsw, XmNbadXlfdFont, - XmNbadXlfdFontMsg, params, num); - } diff --git a/main/motif/14-fix_ac_find_xft.patch b/main/motif/14-fix_ac_find_xft.patch deleted file mode 100644 index 76c23183e8..0000000000 --- a/main/motif/14-fix_ac_find_xft.patch +++ /dev/null @@ -1,91 +0,0 @@ -Description: Fix ac_find_xft.m4 - ac_find_xft.m4 fails tests required to enable building with Xft anti-aliased fonts. - We also need to add -lfontconfig to LIBS to prevent underlinking of libXm. - . - This patch fixes these. Build-depends on libfontconfig1-dev, libfreetype6-dev and - libxrender-dev can be dropped as they are all dependencies of libxft-dev. -Author: Graham Inggs <graham@nerve.org.za> -Forwarded: http://bugs.motifzone.net/show_bug.cgi?id=1591 -Last-Update: 2013-03-13 ---- a/ac_find_xft.m4 -+++ b/ac_find_xft.m4 -@@ -54,28 +54,28 @@ - - case "$freetype_lib" in - no) -- freetype_lib="" -+ FREETYPE_LIBS="" - ;; - yes) - case "$ft_config" in - no) -- freetype_lib="" -+ FREETYPE_LIBS="-lfreetype" - ;; - *) -- freetype_lib="`$ft_config --libs`" -+ FREETYPE_LIBS="`$ft_config --libs`" - ;; - esac - ;; - *) -- freetype_lib="-L$freetype_lib -lfreetype" -+ FREETYPE_LIBS="-L$freetype_lib -lfreetype" - ;; - esac - - saved_LIBS="$LIBS" --LIBS="$LIBS $freetype_lib" -+LIBS="$LIBS $FREETYPE_LIBS" - saved_CPPFLAGS="$CPPFLAGS" - CPPFLAGS="$CPPFLAGS $FREETYPE_CFLAGS" --AC_CHECK_HEADERS(freetype/freetype.h) -+AC_CHECK_HEADERS(freetype/freetype.h,,,[#include <ft2build.h>]) - - FINDXFT_HAVE_FREETYPE="no" - case "$ac_cv_header_freetype_freetype_h" in -@@ -94,6 +94,7 @@ - FINDXFT_HAVE_FREETYPE="yes" - AC_DEFINE(HAVE_FREETYPE, 1, Means we have discovered the FreeType library) - AC_SUBST(FREETYPE_CFLAGS) -+ AC_SUBST(FREETYPE_LIBS) - ;; - esac - ;; -@@ -134,8 +135,19 @@ - FINDXFT_HAVE_XRENDER="no" - case "$have_x" in - yes) -- XRENDER_CFLAGS="-I$x_includes" -- XRENDER_LIBS="-L$x_libraries -lXft -lXrender" -+ if test x$x_includes = x -+ then -+ XRENDER_CFLAGS="" -+ else -+ XRENDER_CFLAGS="-I$x_includes" -+ fi -+ -+ if test x$x_libraries = x -+ then -+ XRENDER_LIBS="-lXft -lXrender" -+ else -+ XRENDER_LIBS="-I$x_libraries -lXft -lXrender" -+ fi - - saved_LIBS="$LIBS" - LIBS="$LIBS $XRENDER_LIBS" -@@ -203,12 +215,12 @@ - - case "$fontconfig_lib" in - no) -- fontconfig_lib="" -+ FONTCONFIG_LIBS="" - ;; - yes) - case "$fc_config" in - no) -- fontconfig_lib="" -+ FONTCONFIG_LIBS="-lfontconfig" - ;; - *) - FONTCONFIG_LIBS="`$fc_config --libs`" diff --git a/main/motif/18-updated-fix-1565.patch b/main/motif/18-updated-fix-1565.patch deleted file mode 100644 index 850a6e2fbd..0000000000 --- a/main/motif/18-updated-fix-1565.patch +++ /dev/null @@ -1,431 +0,0 @@ -Description: Updated fix for upstream bug #1565 - This patch fixes the problem introduced by fix #1565, included in - Motif 2.3.4, which breaks keyboard navigation in menus. -Author: Olexiy Chernyavskyy <ochern@ics.com> -Origin: upstream, http://bugs.motifzone.net/show_bug.cgi?id=1565 -Bug: http://bugs.motifzone.net/show_bug.cgi?id=1630 -Bug-Debian: http://bugs.debian.org/730026 -Last-Update: 2013-11-29 ---- a/lib/Xm/ComboBox.c -+++ b/lib/Xm/ComboBox.c -@@ -3164,6 +3164,9 @@ - Arg args[4]; - ArgList merged_args; - Cardinal n; -+#ifdef FIX_1565 -+ XmGrabShellWidget grabsh; -+#endif - - n = 0; - XtSetArg(args[n], XmNlayoutDirection, LayoutM(parent)), n++; -@@ -3175,6 +3178,11 @@ - merged_args, n + *num_args); - XtFree((char*)merged_args); - -+#ifdef FIX_1565 -+ grabsh = (XmGrabShellWidget) shell; -+ grabsh->grab_shell.set_input_focus = False; -+#endif -+ - return shell; - } - ---- a/lib/Xm/DropDown.c -+++ b/lib/Xm/DropDown.c -@@ -2027,6 +2027,9 @@ - Arg *new_list, largs[10]; - Cardinal num_largs; - Widget sb; -+#ifdef FIX_1565 -+ XmGrabShellWidget grabsh; -+#endif - - num_largs = 0; - XtSetArg(largs[num_largs], XmNoverrideRedirect, True); num_largs++; -@@ -2040,6 +2043,10 @@ - xmGrabShellWidgetClass, w, - new_list, - num_largs + num_args); -+#ifdef FIX_1565 -+ grabsh = (XmGrabShellWidget) XmDropDown_popup_shell(cbw); -+ grabsh->grab_shell.set_input_focus = False; -+#endif - XtFree((char *) new_list); - - #ifdef FIX_1446 ---- a/lib/Xm/GrabShell.c -+++ b/lib/Xm/GrabShell.c -@@ -283,6 +283,10 @@ - - /* CR 9920: Popdown may be requested before MapNotify. */ - grabsh->grab_shell.mapped = False; -+ -+#ifdef FIX_1565 -+ grabsh->grab_shell.set_input_focus = True; -+#endif - } - - /* -@@ -395,8 +399,16 @@ - XGetInputFocus(XtDisplay(shell), &grabshell->grab_shell.old_focus, - &grabshell->grab_shell.old_revert_to); - old_handler = XSetErrorHandler(IgnoreXErrors); -- XSetInputFocus(XtDisplay(shell), XtWindow(shell), RevertToParent, time); -- XSync(XtDisplay(shell), False); -+#ifdef FIX_1565 -+ if (! grabshell->grab_shell.set_input_focus) { -+ XmForceGrabKeyboard(shell, time); -+ } else { -+#endif -+ XSetInputFocus(XtDisplay(shell), XtWindow(shell), RevertToParent, time); -+ XSync(XtDisplay(shell), False); -+#ifdef FIX_1565 -+ } -+#endif - XSetErrorHandler(old_handler); - } - ---- a/lib/Xm/GrabShellP.h -+++ b/lib/Xm/GrabShellP.h -@@ -30,6 +30,7 @@ - #include <Xm/GrabShell.h> - #include <Xm/XmP.h> - #include <X11/ShellP.h> -+#include "XmI.h" - - #ifdef __cplusplus - extern "C" { -@@ -55,6 +56,9 @@ - Boolean mapped; - Window old_focus; - int old_revert_to; -+#ifdef FIX_1565 -+ Boolean set_input_focus; -+#endif - } XmGrabShellPart; - - ---- a/lib/Xm/MenuShell.c -+++ b/lib/Xm/MenuShell.c -@@ -1514,9 +1514,7 @@ - - /** the real grab ***/ - _XmMenuGrabKeyboardAndPointer((Widget)rowcol, _time); --#ifndef FIX_1565 - _XmMenuFocus(XtParent(rowcol), XmMENU_BEGIN, _time); --#endif - - /* To support menu replay, keep the pointer in sync mode */ - XAllowEvents(XtDisplay(rowcol), SyncPointer, CurrentTime); ---- a/lib/Xm/MenuUtil.c -+++ b/lib/Xm/MenuUtil.c -@@ -1053,11 +1053,7 @@ - - register int status = - (_XmGrabKeyboard(widget, --#ifdef FIX_1565 -- False, --#else - True, --#endif - GrabModeSync, - GrabModeAsync, - time) != GrabSuccess); ---- a/lib/Xm/RCMenu.c -+++ b/lib/Xm/RCMenu.c -@@ -85,6 +85,9 @@ - #include "TraversalI.h" - #include "UniqueEvnI.h" - #include "VendorSI.h" -+#ifdef FIX_1565 -+#include <Xm/GrabShell.h> -+#endif - - #define FIX_1535 - -@@ -943,6 +946,13 @@ - XmMenuState mst = _XmGetMenuState((Widget)w); - Window tmpWindow; - int tmpRevert; -+#ifdef FIX_1565 -+ Widget shell; -+ -+ shell = w; -+ while (! XtIsSubclass(shell, shellWidgetClass)) -+ shell = XtParent(shell); -+#endif - - if (_time == CurrentTime) - _time = XtLastTimestampProcessed(XtDisplay(w)); -@@ -983,6 +993,11 @@ - shell.popped_up)) - **/ - { -+#ifdef FIX_1565 -+ if (XtIsSubclass(shell, xmGrabShellWidgetClass) || XtIsSubclass(shell, xmMenuShellWidgetClass)) -+ XmForceGrabKeyboard(w, _time); -+ else -+#endif - SetInputFocus(XtDisplay(w), mst->RC_menuFocus.oldFocus, - mst->RC_menuFocus.oldRevert, - mst->RC_menuFocus.oldTime); -@@ -996,6 +1011,11 @@ - */ - else - { -+#ifdef FIX_1565 -+ if (XtIsSubclass(shell, xmGrabShellWidgetClass) || XtIsSubclass(shell, xmMenuShellWidgetClass)) -+ XmForceGrabKeyboard(w, _time); -+ else -+#endif - SetInputFocus(XtDisplay(w), mst->RC_menuFocus.oldFocus, - mst->RC_menuFocus.oldRevert, - mst->RC_menuFocus.oldTime); -@@ -1014,6 +1034,11 @@ - RC_menuFocus.oldFocus); - mst->RC_menuFocus.oldTime = _time - 1; - -+#ifdef FIX_1565 -+ if (XtIsSubclass(shell, xmGrabShellWidgetClass) || XtIsSubclass(shell, xmMenuShellWidgetClass)) -+ XmForceGrabKeyboard(w, _time); -+ else -+#endif - SetInputFocus(XtDisplay(w), XtWindow(w), mst->RC_menuFocus.oldRevert, - mst->RC_menuFocus.oldTime); - -@@ -1027,6 +1052,11 @@ - XGetInputFocus(XtDisplay(w), &tmpWindow, &tmpRevert); - if (tmpWindow != XtWindow(w)) - { -+#ifdef FIX_1565 -+ if (XtIsSubclass(shell, xmGrabShellWidgetClass) || XtIsSubclass(shell, xmMenuShellWidgetClass)) -+ XmForceGrabKeyboard(w, _time); -+ else -+#endif - SetInputFocus(XtDisplay(w), XtWindow(w), tmpRevert, _time); - - mst->RC_menuFocus.oldRevert = tmpRevert; -@@ -1048,6 +1078,11 @@ - - break; - case XmMENU_MIDDLE: -+#ifdef FIX_1565 -+ if (XtIsSubclass(shell, xmGrabShellWidgetClass) || XtIsSubclass(shell, xmMenuShellWidgetClass)) -+ XmForceGrabKeyboard(w, _time); -+ else -+#endif - SetInputFocus(XtDisplay(w), XtWindow(w), - mst->RC_menuFocus.oldRevert, - mst->RC_menuFocus.oldTime); -@@ -1062,6 +1097,11 @@ - if ((tmpWindow != XtWindow(w)) && - (_time > mst->RC_menuFocus.oldTime)) - { -+#ifdef FIX_1565 -+ if (XtIsSubclass(shell, xmGrabShellWidgetClass) || XtIsSubclass(shell, xmMenuShellWidgetClass)) -+ XmForceGrabKeyboard(w, _time); -+ else -+#endif - SetInputFocus(XtDisplay(w), XtWindow(w), tmpRevert, _time); - - mst->RC_menuFocus.oldRevert = tmpRevert; ---- a/lib/Xm/Xm.c -+++ b/lib/Xm/Xm.c -@@ -40,6 +40,10 @@ - #ifdef FIX_345 - #include <X11/keysym.h> - #endif -+#ifdef FIX_1565 -+#include <Xm/GrabShell.h> -+#include <Xm/MenuShell.h> -+#endif - - - /************************************************************************** -@@ -530,3 +534,173 @@ - return p; - } - #endif -+ -+#ifdef FIX_1565 -+ -+typedef struct _GrabData GrabData; -+struct _GrabData { -+ Widget w; -+ GrabData *next; -+}; -+ -+static void _XmSendFocusEvent(Widget child, int type); -+static void _XmStartDispatcher(Display *display); -+static Boolean _XmEventDispatcher(XEvent *event); -+static void UnmapHandler(Widget w, XtPointer client_data, XEvent *event, Boolean *cont); -+static Boolean _UngrabKeyboard(Widget w); -+ -+static GrabData *grabw_top = NULL; -+static int xm_dispatcher_on = 0; -+static XtEventDispatchProc saved_dispatcher_proc = NULL; -+static XtEventDispatchProc xt_dispatcher_proc = NULL; -+ -+/* -+ XmForceGrabKeyboard function is defined to be a substitutor of XSetInputFocus calls -+ for popup and pulldown menus that should grab keyboard focus yet main window at the -+ same time should visually stay in focus for window manager. This resolves focus flip -+ issue when popup or pulldown menu is raised. ~ochern -+ */ -+void XmForceGrabKeyboard(Widget w, Time time) -+{ -+ GrabData *grabw; -+ -+ if (!w) -+ return; -+ -+ while (! XtIsSubclass(w, shellWidgetClass)) -+ w = XtParent(w); -+ -+ if (! (XtIsSubclass(w, xmGrabShellWidgetClass) || XtIsSubclass(w, xmMenuShellWidgetClass))) -+ return; -+ -+ _XmStartDispatcher(XtDisplay(w)); -+ -+ _UngrabKeyboard(w); -+ -+ grabw = (GrabData *) XtMalloc(sizeof(GrabData)); -+ grabw->w = w; -+ _XmProcessLock(); -+ grabw->next = grabw_top; -+ grabw_top = grabw; -+ _XmProcessUnlock(); -+ -+ XtInsertEventHandler(w, StructureNotifyMask, False, UnmapHandler, NULL, XtListHead); -+ -+ _XmSendFocusEvent(w, FocusIn); -+ -+ /* Following the XSetInputFocus behaviour we force sending FocusOut (see XGrabKeyboard(3)) -+ event to a previous keyboard holder */ -+ XtGrabKeyboard(w, True, GrabModeAsync, GrabModeAsync, time); -+} -+ -+static void _XmStartDispatcher(Display *display) -+{ -+ if (!display) -+ return; -+ -+ _XmProcessLock(); -+ -+ if (xm_dispatcher_on) { -+ _XmProcessUnlock(); -+ return; -+ } -+ -+ saved_dispatcher_proc = XtSetEventDispatcher(display, KeyPress, _XmEventDispatcher); -+ if (! xt_dispatcher_proc) -+ xt_dispatcher_proc = saved_dispatcher_proc; -+ XtSetEventDispatcher(display, KeyRelease, _XmEventDispatcher); -+ xm_dispatcher_on = 1; -+ -+ _XmProcessUnlock(); -+} -+ -+static Boolean _XmEventDispatcher(XEvent *event) -+{ -+ _XmProcessLock(); -+ if (grabw_top) { -+ if (event->type == KeyPress || event->type == KeyRelease) -+ event->xany.window = XtWindow(grabw_top->w); -+ } -+ _XmProcessUnlock(); -+ -+ if (saved_dispatcher_proc) { -+ return (*saved_dispatcher_proc)(event); -+ } else if (xt_dispatcher_proc) { -+ return (*xt_dispatcher_proc)(event); -+ } else { -+ if (grabw_top) -+ XtSetEventDispatcher(XtDisplay(grabw_top->w), event->type, NULL); -+ return XtDispatchEvent(event); -+ } -+} -+ -+static void UnmapHandler(Widget w, XtPointer client_data, XEvent *event, Boolean *cont) -+{ -+ if (event->type == UnmapNotify) -+ _UngrabKeyboard(w); -+ if (! grabw_top) { -+ XtSetEventDispatcher(XtDisplay(w), KeyPress, saved_dispatcher_proc); -+ XtSetEventDispatcher(XtDisplay(w), KeyRelease, saved_dispatcher_proc); -+ xm_dispatcher_on = 0; -+ } -+ -+ /* we do not call XtUngrabKeyboard since X server automatically performs an -+ UngrabKeyboard request if the event window for an active keyboard grab becomes -+ not viewable. ~ochern */ -+} -+ -+static Boolean _UngrabKeyboard(Widget w) -+{ -+ GrabData *grabw, *grabw_prev; -+ -+ _XmProcessLock(); -+ if (! grabw_top) { -+ _XmProcessUnlock(); -+ return False; -+ } -+ -+ grabw = grabw_top; -+ grabw_prev = NULL; -+ while(grabw && grabw->w != w) { -+ grabw_prev = grabw; -+ grabw = grabw->next; -+ } -+ if (grabw) { -+ if (grabw_prev) -+ grabw_prev->next = grabw->next; -+ else -+ grabw_top = grabw->next; -+ XtFree((char*) grabw); -+ -+ _XmProcessUnlock(); -+ return True; -+ } -+ -+ _XmProcessUnlock(); -+ return False; -+} -+ -+static void _XmSendFocusEvent(Widget child, int type) -+{ -+ child = XtIsWidget(child) ? child : _XtWindowedAncestor(child); -+ if (XtIsSensitive(child) && !child->core.being_destroyed -+ && XtIsRealized(child) && (XtBuildEventMask(child) & FocusChangeMask)) -+ { -+ XFocusChangeEvent event; -+ Display* dpy = XtDisplay (child); -+ -+ event.type = type; -+ event.serial = LastKnownRequestProcessed(dpy); -+ event.send_event = True; -+ event.display = dpy; -+ event.window = XtWindow(child); -+ event.mode = NotifyNormal; -+ event.detail = NotifyAncestor; -+ if (XFilterEvent((XEvent*)&event, XtWindow(child))) -+ return; -+ XtDispatchEventToWidget(child, (XEvent*)&event); -+ } -+} -+ -+#endif -+ ---- a/lib/Xm/XmI.h -+++ b/lib/Xm/XmI.h -@@ -242,7 +242,9 @@ - extern XChar2b* _XmUtf8ToUcs2(char *draw_text, - size_t seg_len, - size_t *ret_str_len); -- -+#ifdef FIX_1565 -+extern void XmForceGrabKeyboard(Widget w, Time time); -+#endif - - /******** End Private Function Declarations ********/ - diff --git a/main/motif/APKBUILD b/main/motif/APKBUILD index 54bf3e7439..3785428cc9 100644 --- a/main/motif/APKBUILD +++ b/main/motif/APKBUILD @@ -1,45 +1,49 @@ # Contributor: Isaac Dunham <ibid.ag@gmail.com> # Maintainer: Isaac Dunham <ibid.ag@gmail.com> pkgname=motif -pkgver=2.3.4 -pkgrel=2 +pkgver=2.3.8 +pkgrel=0 pkgdesc="The Motif library" -url="http://motif.ics.com/" +url="https://motif.ics.com/" arch="all" options="!check" # Tests are interactive and require X11. license="LGPL-2.1-or-later" -depends="" depends_dev="libx11-dev libxft-dev libxt-dev libxpm-dev libxext-dev xbitmaps" -makedepends="$depends_dev libtool autoconf automake flex flex-libs flex-dev bison" -install="" +makedepends="$depends_dev automake autoconf libtool flex flex-libs flex-dev bison" subpackages="mwm $pkgname-dev $pkgname-doc" -source="https://downloads.sourceforge.net/$pkgname/Motif%20$pkgver%20Source%20Code/motif-$pkgver-src.tgz -01-fix-autoconf.patch -02-fix-format-security.patch -03-no-demos.patch -06-cast-size_t-to-int.patch -07-fix_lintian_reported_manpage_typos.patch -08-fix_hyphen_in_man_pages.patch -09-fix_typo_in_libxm.patch -10-fix_manpage-has-bad-whatis-entry.patch -11-fix_underlinking.patch -12-fix_buffer_overrun_in_libxm.patch -13-fix_hardcoded_x11rgb_path.patch -14-fix_ac_find_xft.patch -15-link_uil_against_libuil.patch -16-fix-undefined-use-of-sprintf.patch -17-switch-to-system-iswspace.patch -18-updated-fix-1565.patch" +source=" + https://downloads.sourceforge.net/project/motif/Motif%20$pkgver%20Source%20Code/motif-$pkgver.tar.gz + 02-fix-format-security.patch + 03-no-demos.patch + 06-cast-size_t-to-int.patch + 07-fix_lintian_reported_manpage_typos.patch + 08-fix_hyphen_in_man_pages.patch + 09-fix_typo_in_libxm.patch + 10-fix_manpage-has-bad-whatis-entry.patch + 11-fix_underlinking.patch + 13-fix_hardcoded_x11rgb_path.patch + 15-link_uil_against_libuil.patch + 16-fix-undefined-use-of-sprintf.patch + 17-switch-to-system-iswspace.patch + " + +prepare() { + cd "$builddir" + default_prepare + touch NEWS AUTHORS + autoreconf -fi +} build() { # reasons for --disable- flags: -#png, jpeg: most programs that use png and jpeg use the libraries directly; +# png, jpeg: most programs that use png and jpeg use the libraries directly; # enabling these mainly matters if you want to point the resources at a # png/jpeg image. -#printing: this is Xprint support; only CDE uses this, others print directly. -#demos: one of the demos can break the build +# printing: this is Xprint support; only CDE uses this, others print directly. +# demos: one of the demos can break the build cd "$builddir" - ./autogen.sh \ + export LDFLAGS="$LDFLAGS -lX11" + ./configure \ --build=$CBUILD \ --host=$CHOST \ --disable-demos \ @@ -50,7 +54,8 @@ build() { --prefix=/usr \ --sysconfdir=/etc \ --mandir=/usr/share/man \ - --localstatedir=/var + --localstatedir=/var \ + --disable-static make } @@ -60,6 +65,7 @@ package() { } mwm() { + pkgdesc="Motif Window Manager" mkdir -p "$subpkgdir"/usr/bin "$subpkgdir"/usr/lib/X11 mv "$pkgdir"/usr/bin/mwm "$subpkgdir"/usr/bin mv "$pkgdir"/usr/bin/xmbind "$subpkgdir"/usr/bin @@ -68,8 +74,7 @@ mwm() { } -sha512sums="fb1033caa68f25b93282fa6700d5b7856be217b3651072d86e7c93a747df5b31219230998eb93deae22a8fa698e816b1a30e52b3ae88ae1c01c1f0aac59a2af2 motif-2.3.4-src.tgz -6ca24c74233552a4ce3ebb72f17ed277a3feca10bfa50c4680ed1eff917a11bf1f0bd39bcfdaaef1104466065c25c70251ba450f884bca637bc935565d0cdd9d 01-fix-autoconf.patch +sha512sums="1ab8e8eece25ef97e948592b5fa3e19d98e932695290a18b7a8e90f1aa2766bc4f082bdbc3999dff5660e684821178a149040f76bb477163e53ca06474d02b55 motif-2.3.8.tar.gz aff5be25bd25666e6134bc18faaffd54914cc390ca4d89a498efae5aa6dd175ac2b17dc719f7b8d27cff5db2f17b714ddfd5a163f219cad5f5c949cf5eb4786d 02-fix-format-security.patch a54e0bbf95b7af1a2ba3a6031b3d4f36b6516d4b30d97804158c20b7cccda5df9628ed9a3c84ddda7cbd7779781ad065b0a16d39115184eff9fa509f6ec75ec6 03-no-demos.patch 605f3cc868c179c74ada49bd4ed40a39364f5d883866c99a9e8ffdb1c559e5e06ebf92a776b6a10df516b7f82a186b0084e55a9be1076498f5b742ca9376febc 06-cast-size_t-to-int.patch @@ -78,10 +83,7 @@ fc955d88cc5c64655ec642786449968e2241c92653fec00bcf8a722d2c206a2ebad16e42529d4ba1 9157f68bf111b081811e08e43b0b67f31364230fd480381668750e130e264867697d3fc461d2011117ee267ebf3801c39d04b24d4c213433ac4a213b6ad8683a 09-fix_typo_in_libxm.patch 8081bddd444423cfe34995cef6c52eebf98d98616f34e9f9eae6240cfbfe8269cab2bdfbac7f85be85371a6f7375452471b32082d4a2dd0cffee242afe115c2f 10-fix_manpage-has-bad-whatis-entry.patch 18c155c13a21df3c95e94d15a8f31def6f40257baadc2ec9e29eef3e10197343824adeef54b75863cd9de25b5f46c4dc88e1e1f991f75c59048fc483a1ea1b43 11-fix_underlinking.patch -666d0e0fe1ac9b63942224b4f49711e2590a99409fbf8893570f9b87b6e4f8f80e14c780fd2c4cdd664c6f130ee929b89bb20e189338c73dc7daf2750aa0c382 12-fix_buffer_overrun_in_libxm.patch 21dd0ba7fd9ed234d5115ad24547961592dd35c3d4843856800a564ff380482af0c5a35e3ce60d3258e4e9a47cb537435b4f08f460064e130d4327a4955b9975 13-fix_hardcoded_x11rgb_path.patch -fcb28b3527821c6f4dce0aa86e864f21bf7261ed8a88766858b6f5d4a9ad7affcf94e49c586ae0e87a324a92404fea5965bff2959b2482035e49983d07b5ea45 14-fix_ac_find_xft.patch 8a726e253fa6ed8d14914fd2e2eb0bce8f240051a5fefc04ff56899f908a26300ad3292507b71c1ce65f57e7889e4067e35d0ab4ce15123bffccb606dfd9067f 15-link_uil_against_libuil.patch 2230f0af607111d014b0a648b807df18676a4a1421f10978c59a0a29b02dda38060163619bc54fda19a5186315f98fc8597b2ef6eb8ab7bedb6bd6972a77b38d 16-fix-undefined-use-of-sprintf.patch -0cb0fa3a02a452f067649e02e855d6d3d728e4904bad009aebda9250de0c9fb76d352b6d9a857fcd1f920c5dfc6183f9b12886505c5570164fe92e99e97eea15 17-switch-to-system-iswspace.patch -15cbb37beebf4b06b65a09612a05e4a5b2eaab09d23860332c90aec02cf8a59e0d351dce831eb98a774cb98d15c2ecf695669e5b5e6d0dcce77ce6b2658a8a84 18-updated-fix-1565.patch" +0cb0fa3a02a452f067649e02e855d6d3d728e4904bad009aebda9250de0c9fb76d352b6d9a857fcd1f920c5dfc6183f9b12886505c5570164fe92e99e97eea15 17-switch-to-system-iswspace.patch" |