diff options
author | Felix Fietkau <nbd@openwrt.org> | 2006-10-14 23:05:37 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2006-10-14 23:05:37 +0000 |
commit | 1aede1e1db77e03ec5cacb969a0e2accd9c7bbc6 (patch) | |
tree | 85abb06810d9a4f7625eaf0e5874399814195222 /package/zlib/patches/100-cross_compile.patch | |
parent | f524e29d8006731d6c76e3505d52ee3a58b226b6 (diff) | |
download | upstream-1aede1e1db77e03ec5cacb969a0e2accd9c7bbc6.tar.gz upstream-1aede1e1db77e03ec5cacb969a0e2accd9c7bbc6.tar.bz2 upstream-1aede1e1db77e03ec5cacb969a0e2accd9c7bbc6.zip |
fix zlib cross compiling from non-linux systems
SVN-Revision: 5102
Diffstat (limited to 'package/zlib/patches/100-cross_compile.patch')
-rw-r--r-- | package/zlib/patches/100-cross_compile.patch | 206 |
1 files changed, 206 insertions, 0 deletions
diff --git a/package/zlib/patches/100-cross_compile.patch b/package/zlib/patches/100-cross_compile.patch new file mode 100644 index 0000000000..1325462ba5 --- /dev/null +++ b/package/zlib/patches/100-cross_compile.patch @@ -0,0 +1,206 @@ +diff -ruN zlib-1.2.3-orig/Makefile.in zlib-1.2.3-2/Makefile.in +--- zlib-1.2.3-orig/Makefile.in 2004-09-15 16:27:20.000000000 +0200 ++++ zlib-1.2.3-2/Makefile.in 2004-11-13 13:38:12.000000000 +0100 +@@ -25,20 +25,23 @@ + # -Wstrict-prototypes -Wmissing-prototypes + + LDFLAGS=libz.a +-LDSHARED=$(CC) ++LDSHARED=$(CC) -shared -Wl,-soname,$(SHAREDLIBM) + CPP=$(CC) -E + +-LIBS=libz.a ++LIBS= ++STATICLIB=libz.a + SHAREDLIB=libz.so + SHAREDLIBV=libz.so.1.2.3 + SHAREDLIBM=libz.so.1 + +-AR=ar rc ++AR=ar + RANLIB=ranlib + TAR=tar + SHELL=/bin/sh + EXE= + ++DESTDIR = ++ + prefix = /usr/local + exec_prefix = ${prefix} + libdir = ${exec_prefix}/lib +@@ -67,8 +70,8 @@ + echo ' *** zlib test FAILED ***'; \ + fi + +-libz.a: $(OBJS) $(OBJA) +- $(AR) $@ $(OBJS) $(OBJA) ++$(STATICLIB): $(OBJS) $(OBJA) ++ $(AR) rc $@ $(OBJS) $(OBJA) + -@ ($(RANLIB) $@ || true) >/dev/null 2>&1 + + match.o: match.S +@@ -77,8 +80,10 @@ + mv _match.o match.o + rm -f _match.s + ++$(SHAREDLIB): $(SHAREDLIBV) ++ + $(SHAREDLIBV): $(OBJS) +- $(LDSHARED) -o $@ $(OBJS) ++ $(LDSHARED) -lc -o $@ $(OBJS) + rm -f $(SHAREDLIB) $(SHAREDLIBM) + ln -s $@ $(SHAREDLIB) + ln -s $@ $(SHAREDLIBM) +@@ -90,23 +95,23 @@ + $(CC) $(CFLAGS) -o $@ minigzip.o $(LDFLAGS) + + install: $(LIBS) +- -@if [ ! -d $(exec_prefix) ]; then mkdir -p $(exec_prefix); fi +- -@if [ ! -d $(includedir) ]; then mkdir -p $(includedir); fi +- -@if [ ! -d $(libdir) ]; then mkdir -p $(libdir); fi +- -@if [ ! -d $(man3dir) ]; then mkdir -p $(man3dir); fi +- cp zlib.h zconf.h $(includedir) +- chmod 644 $(includedir)/zlib.h $(includedir)/zconf.h +- cp $(LIBS) $(libdir) +- cd $(libdir); chmod 755 $(LIBS) +- -@(cd $(libdir); $(RANLIB) libz.a || true) >/dev/null 2>&1 +- cd $(libdir); if test -f $(SHAREDLIBV); then \ ++ -@if [ ! -d $(DESTDIR)$(exec_prefix) ]; then mkdir -p $(DESTDIR)$(exec_prefix); fi ++ -@if [ ! -d $(DESTDIR)$(includedir) ]; then mkdir -p $(DESTDIR)$(includedir); fi ++ -@if [ ! -d $(DESTDIR)$(libdir) ]; then mkdir -p $(DESTDIR)$(libdir); fi ++ -@if [ ! -d $(DESTDIR)$(man3dir) ]; then mkdir -p $(DESTDIR)$(man3dir); fi ++ cp zlib.h zconf.h $(DESTDIR)$(includedir) ++ chmod 644 $(DESTDIR)$(includedir)/zlib.h $(DESTDIR)$(includedir)/zconf.h ++ cp $(STATICLIB) $(SHAREDLIBV) $(DESTDIR)$(libdir) ++ cd $(DESTDIR)$(libdir); chmod 755 $(LIBS) ++ -@(cd $(DESTDIR)$(libdir); $(RANLIB) libz.a || true) >/dev/null 2>&1 ++ cd $(DESTDIR)$(libdir); if test -f $(SHAREDLIBV); then \ + rm -f $(SHAREDLIB) $(SHAREDLIBM); \ + ln -s $(SHAREDLIBV) $(SHAREDLIB); \ + ln -s $(SHAREDLIBV) $(SHAREDLIBM); \ + (ldconfig || true) >/dev/null 2>&1; \ + fi +- cp zlib.3 $(man3dir) +- chmod 644 $(man3dir)/zlib.3 ++ cp zlib.3 $(DESTDIR)$(man3dir) ++ chmod 644 $(DESTDIR)$(man3dir)/zlib.3 + # The ranlib in install is needed on NeXTSTEP which checks file times + # ldconfig is for Linux + +diff -ruN zlib-1.2.3-orig/configure zlib-1.2.3-2/configure +--- zlib-1.2.3-orig/configure 2004-09-07 07:50:06.000000000 +0200 ++++ zlib-1.2.3-2/configure 2004-11-13 12:37:43.000000000 +0100 +@@ -23,7 +23,7 @@ + VER=`sed -n -e '/VERSION "/s/.*"\(.*\)".*/\1/p' < zlib.h` + VER2=`sed -n -e '/VERSION "/s/.*"\([0-9]*\\.[0-9]*\)\\..*/\1/p' < zlib.h` + VER1=`sed -n -e '/VERSION "/s/.*"\([0-9]*\)\\..*/\1/p' < zlib.h` +-AR=${AR-"ar rc"} ++AR=${AR-"ar"} + RANLIB=${RANLIB-"ranlib"} + prefix=${prefix-/usr/local} + exec_prefix=${exec_prefix-'${prefix}'} +@@ -73,7 +73,7 @@ + + if test "$gcc" -eq 1 && ($cc -c $cflags $test.c) 2>/dev/null; then + CC="$cc" +- SFLAGS=${CFLAGS-"-fPIC -O3"} ++ SFLAGS=${CFLAGS-"-D_REENTRANT -fPIC -O3"} + CFLAGS="$cflags" + case `(uname -s || echo unknown) 2>/dev/null` in + Linux | linux | GNU | GNU/*) LDSHARED=${LDSHARED-"$cc -shared -Wl,-soname,libz.so.1"};; +@@ -408,6 +408,29 @@ + echo Checking for mmap support... No. + fi + ++cat > $test.c <<EOF ++#include <stdio.h> ++int main() { char buf[10]; snprintf(buf, sizeof(buf), "%s", "F"); return 0; } ++EOF ++if test "`($CC -c $CFLAGS $test.c) 2>&1`" = ""; then ++ echo "Checking for snprintf... Yes." ++ CFLAGS="$CFLAGS -DHAS_snprintf" ++else ++ echo "Checking for snprintf.. No." ++fi ++ ++cat > $test.c <<EOF ++#include <stdio.h> ++#include <stdarg.h> ++int main(void) { va_list a; vsnprintf(0, 0, "", a); return 0; } ++EOF ++if test "`($CC -c $CFLAGS $test.c) 2>&1`" = ""; then ++ echo "Checking for vsnprintf... Yes." ++ CFLAGS="$CFLAGS -DHAS_vsnprintf" ++else ++ echo "Checking for vsnprintf.. No." ++fi ++ + CPP=${CPP-"$CC -E"} + case $CFLAGS in + *ASMV*) +@@ -424,20 +447,21 @@ + # udpate Makefile + sed < Makefile.in " + /^CC *=/s#=.*#=$CC# +-/^CFLAGS *=/s#=.*#=$CFLAGS# +-/^CPP *=/s#=.*#=$CPP# +-/^LDSHARED *=/s#=.*#=$LDSHARED# +-/^LIBS *=/s#=.*#=$LIBS# +-/^SHAREDLIB *=/s#=.*#=$SHAREDLIB# +-/^SHAREDLIBV *=/s#=.*#=$SHAREDLIBV# +-/^SHAREDLIBM *=/s#=.*#=$SHAREDLIBM# +-/^AR *=/s#=.*#=$AR# +-/^RANLIB *=/s#=.*#=$RANLIB# +-/^EXE *=/s#=.*#=$EXE# +-/^prefix *=/s#=.*#=$prefix# +-/^exec_prefix *=/s#=.*#=$exec_prefix# +-/^libdir *=/s#=.*#=$libdir# +-/^includedir *=/s#=.*#=$includedir# +-/^mandir *=/s#=.*#=$mandir# +-/^LDFLAGS *=/s#=.*#=$LDFLAGS# ++/^CC *=/s%=.*%= $CC% ++/^CFLAGS *=/s%=.*%= $CFLAGS% ++/^CPP *=/s%=.*%= $CPP% ++/^LDSHARED *=/s%=.*%= $LDSHARED% ++/^LIBS *=/s%=.*%= $LIBS% ++/^SHAREDLIB *=/s%=.*%= $SHAREDLIB% ++/^SHAREDLIBV *=/s%=.*%= $SHAREDLIBV% ++/^SHAREDLIBM *=/s%=.*%= $SHAREDLIBM% ++/^AR *=/s%=.*%= $AR% ++/^RANLIB *=/s%=.*%= $RANLIB% ++/^EXE *=/s%=.*%= $EXE% ++/^prefix *=/s%=.*%= $prefix% ++/^exec_prefix *=/s%=.*%= $exec_prefix% ++/^libdir *=/s%=.*%= $libdir% ++/^includedir *=/s%=.*%= $includedir% ++/^mandir *=/s%=.*%= $mandir% ++/^LDFLAGS *=/s%=.*%= $LDFLAGS% + " > Makefile +diff -ruN zlib-1.2.3-orig/contrib/minizip/Makefile zlib-1.2.3-2/contrib/minizip/Makefile +--- zlib-1.2.3-orig/contrib/minizip/Makefile 2003-09-10 20:00:16.000000000 +0200 ++++ zlib-1.2.3-2/contrib/minizip/Makefile 2004-11-13 12:37:43.000000000 +0100 +@@ -1,8 +1,8 @@ + CC=cc +-CFLAGS=-O -I../.. ++CFLAGS=-O2 -g -I../.. -Dunix + +-UNZ_OBJS = miniunz.o unzip.o ioapi.o ../../libz.a +-ZIP_OBJS = minizip.o zip.o ioapi.o ../../libz.a ++UNZ_OBJS = miniunz.o unzip.o ioapi.o ++ZIP_OBJS = minizip.o zip.o ioapi.o + + .c.o: + $(CC) -c $(CFLAGS) $*.c +@@ -10,10 +10,10 @@ + all: miniunz minizip + + miniunz: $(UNZ_OBJS) +- $(CC) $(CFLAGS) -o $@ $(UNZ_OBJS) ++ $(CC) $(CFLAGS) -o $@ $(UNZ_OBJS) -L ../.. -lz + + minizip: $(ZIP_OBJS) +- $(CC) $(CFLAGS) -o $@ $(ZIP_OBJS) ++ $(CC) $(CFLAGS) -o $@ $(ZIP_OBJS) -L ../.. -lz + + test: miniunz minizip + ./minizip test readme.txt |