motif: Add darwin support

This commit is contained in:
Josef Kemetmueller 2016-07-30 12:42:36 +02:00
parent 2f32588a8f
commit ee16dba630
5 changed files with 60 additions and 11 deletions

View File

@ -0,0 +1,7 @@
--- a/bindings/xmbind.alias
+++ b/bindings/xmbind.alias
@@ -62,3 +62,4 @@
"Sun Microsystems, Inc." sun
! "Sun Microsystems, Inc." sun_at
"Tektronix, Inc." tek
+"The X.Org Foundation" tpc

View File

@ -0,0 +1,11 @@
--- a/Makefile.am
+++ b/Makefile.am
@@ -27,7 +27,6 @@ SUBDIRS = bindings bitmaps \
include \
tools \
clients \
- doc \
- demos
+ doc
AUTOMAKE_OPTIONS = 1.4
ACLOCAL_AMFLAGS = -I .

View File

@ -0,0 +1,12 @@
--- a/lib/Xm/XmP.h
+++ b/lib/Xm/XmP.h
@@ -1437,7 +1437,7 @@ extern void _XmDestroyParentCallback(
#endif /* NO_XM_1_2_BC */
-#if __GNUC__
+#if __GNUC__ && ! __APPLE__
# define XM_DEPRECATED __attribute__((__deprecated__))
# define XM_ALIAS(sym) __attribute__((__weak__,alias(#sym)))
#else

View File

@ -0,0 +1,19 @@
--- a/demos/programs/workspace/xrmLib.c
+++ b/demos/programs/workspace/xrmLib.c
@@ -30,7 +30,14 @@ static char rcsid[] = "$XConsortium: xrmLib.c /main/6 1995/07/14 10:01:41 drk $"
#endif
#include <stdio.h>
-#include <malloc.h>
+#if defined(__cplusplus) || defined(__STDC__) || defined(__EXTENSIONS__)
+# include <stdlib.h>
+# if defined(HAVE_MALLOC_H)
+# include <malloc.h>
+# elif defined(HAVE_SYS_MALLOC_H)
+# include <sys/malloc.h>
+# endif
+#endif
#include <Xm/Xm.h>
#include "wsm.h"
#include "wsmDebug.h"

View File

@ -17,29 +17,29 @@ stdenv.mkDerivation rec {
};
buildInputs = [
pkgconfig libtool
libtool
xlibsWrapper xbitmaps libXrender libXmu libXt
expat libjpeg libpng libiconv
] ++ stdenv.lib.optionals (!demoSupport) [ autoconf automake ];
];
nativeBuildInputs = [ flex ];
nativeBuildInputs = [ pkgconfig flex ] ++ stdenv.lib.optionals (!demoSupport) [ autoconf automake ];
propagatedBuildInputs = [ libXp libXau ];
makeFlags = [ "CFLAGS=-fno-strict-aliasing" ];
patchPhase = ''
rm lib/Xm/Xm.h
echo -e '"The X.Org Foundation"\t\t\t\t\tpc' >>bindings/xmbind.alias
'' + stdenv.lib.optionalString (!demoSupport)
''
sed -i -e '/^SUBDIRS/{:x;/\\$/{N;bx;};s/[ \t\n\\]*demos//;}' Makefile.am
'';
prePatch = ''rm lib/Xm/Xm.h'';
patches = [ ./Remove-unsupported-weak-refs-on-darwin.patch
./Use-correct-header-for-malloc.patch
./Add-X.Org-to-bindings-file.patch
]
++ stdenv.lib.optional (!demoSupport) ./Do-not-compile-demos.patch;
meta = with stdenv.lib; {
homepage = http://motif.ics.com;
description = "Unix standard widget-toolkit and window-manager";
platforms = with platforms; linux;
platforms = with platforms; linux ++ darwin;
license = with licenses; [ lgpl21 ];
maintainers = with maintainers; [ ];
};