summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMartin Lambers <marlam@marlam.de>2012-12-06 12:24:20 (GMT)
committerMartin Lambers <marlam@marlam.de>2012-12-07 19:31:59 (GMT)
commite0ad4a67b2e95fed551cbc5b784a8c3338a94593 (patch)
tree59c8270b9cc1d45b6dd483eb4b5f5fe4a972bd23 /src
parent1f94b3703d3cc9cece3acb850b0afe32201c38a8 (diff)
downloadmxe-e0ad4a67b2e95fed551cbc5b784a8c3338a94593.zip
mxe-e0ad4a67b2e95fed551cbc5b784a8c3338a94593.tar.gz
mxe-e0ad4a67b2e95fed551cbc5b784a8c3338a94593.tar.bz2
Add package netpbm.
Diffstat (limited to 'src')
-rw-r--r--src/netpbm-1-portability-fixes.patch22
-rw-r--r--src/netpbm.mk43
2 files changed, 65 insertions, 0 deletions
diff --git a/src/netpbm-1-portability-fixes.patch b/src/netpbm-1-portability-fixes.patch
new file mode 100644
index 0000000..21e0e54
--- /dev/null
+++ b/src/netpbm-1-portability-fixes.patch
@@ -0,0 +1,22 @@
+This file is part of MXE.
+See index.html for further information.
+
+--- a/urt/rle_open_f.c 2012-12-06 11:19:45.850521658 +0100
++++ b/urt/rle_open_f.c 2012-12-06 11:19:57.794521308 +0100
+@@ -15,14 +15,14 @@
+ #include <unistd.h>
+ #include <fcntl.h>
+
++#include "rle.h"
++
+ #ifndef NO_OPEN_PIPES
+ /* Need to have a SIGCLD signal catcher. */
+ #include <signal.h>
+ #include <sys/wait.h>
+ #include <errno.h>
+
+-#include "rle.h"
+-
+ /* Count outstanding children. Assume no more than 100 possible. */
+ #define MAX_CHILDREN 100
+ static int catching_children = 0;
diff --git a/src/netpbm.mk b/src/netpbm.mk
new file mode 100644
index 0000000..8368d94
--- /dev/null
+++ b/src/netpbm.mk
@@ -0,0 +1,43 @@
+# This file is part of MXE.
+# See index.html for further information.
+
+PKG := netpbm
+$(PKG)_IGNORE :=
+$(PKG)_CHECKSUM := faf4f4e65ede1a22ed38d84596e68446b7970a8b
+$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION)
+$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tgz
+$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/netpbm/super_stable/$($(PKG)_VERSION)/$($(PKG)_FILE)
+$(PKG)_DEPS := gcc
+
+define $(PKG)_UPDATE
+ /bin/false
+endef
+
+# The Netpbm package has its own weird build system...
+# Parallel builds don't work, so we use -j1 explicitly.
+
+define $(PKG)_BUILD
+ # Create a suitable configuration
+ cp '$(1)/Makefile.config.in' '$(1)/Makefile.config'
+ echo 'DEFAULT_TARGET=nonmerge' >> '$(1)/Makefile.config'
+ echo 'CC=$(TARGET)-gcc' >> '$(1)/Makefile.config'
+ echo 'LD=$(TARGET)-gcc' >> '$(1)/Makefile.config'
+ echo 'LINKERISCOMPILER=Y' >> '$(1)/Makefile.config'
+ echo 'LINKER_CAN_DO_EXPLICIT_LIBRARY=Y' >> '$(1)/Makefile.config'
+ echo 'AR=$(TARGET)-ar' >> '$(1)/Makefile.config'
+ echo 'RANLIB=$(TARGET)-ranlib' >> '$(1)/Makefile.config'
+ echo 'OMIT_NETWORK=y' >> '$(1)/Makefile.config'
+ echo 'DONT_HAVE_PROCESS_MGMT=Y' >> '$(1)/Makefile.config'
+ echo 'NETPBMLIBTYPE=unixstatic' >> '$(1)/Makefile.config'
+ echo 'NETPBMLIBSUFFIX=a' >> '$(1)/Makefile.config'
+ # Build only the library
+ $(MAKE) -C '$(1)' -j1 PROG_SUBDIRS=
+ # Package everything into a package directory. Use '-i' to ignore
+ # failures that happen because we did not build all the tools.
+ $(MAKE) -C '$(1)' -j1 -i package pkgdir='$(1)/mxe-pkgdir'
+ # Install only the library from that package directory
+ $(INSTALL) -d '$(PREFIX)/$(TARGET)/include'
+ $(INSTALL) -m644 '$(1)/mxe-pkgdir/include/'* '$(PREFIX)/$(TARGET)/include'
+ $(INSTALL) -d '$(PREFIX)/$(TARGET)/lib'
+ $(INSTALL) -m644 '$(1)/mxe-pkgdir/link/libnetpbm.a' '$(PREFIX)/$(TARGET)/lib/'
+endef