From 4ea5622842f5792e942ee298bed6c4fd922c8127 Mon Sep 17 00:00:00 2001 From: sponge Date: Mon, 23 May 2011 04:52:29 +0000 Subject: [PATCH] mbuild.sh fixups : add new jcpuid/mbuild.sh, edit jbigi/mbuild-all.sh -- pedantic naming --- core/c/jbigi/mbuild-all.sh | 31 +++++++++++++++--- core/c/jcpuid/mbuild.sh | 65 ++++++++++++++++++++++++++++++++++++++ core/c/mbuild.sh | 18 ++++++----- history.txt | 6 ++++ 4 files changed, 107 insertions(+), 13 deletions(-) create mode 100755 core/c/jcpuid/mbuild.sh diff --git a/core/c/jbigi/mbuild-all.sh b/core/c/jbigi/mbuild-all.sh index 081627b6c4..9d40fefc27 100755 --- a/core/c/jbigi/mbuild-all.sh +++ b/core/c/jbigi/mbuild-all.sh @@ -27,9 +27,12 @@ MISC_MINGW_PLATFORMS="" # # Are there any other X86 platforms that work on i2p? Add them here. # -# Oddly athlon64 builds.... I wonder what others can :-) -# -X86_PLATFORMS="pentium pentiummmx pentium2 pentium3 pentiumm pentium4 k6 k62 k63 athlon core2 corei athlon64 geode atom nano viac3 viac32" + +# Note! these build on 32bit as 32bit when operating as 32bit... +X86_64_PLATFORMS="atom athlon64 core2 corei nano pentium4" + +# Note! these are 32bit _ONLY_ +X86_PLATFORMS="pentium pentiummmx pentium2 pentium3 pentiumm k6 k62 k63 athlon geode viac3 viac32 ${X86_64_PLATFORMS}" # @@ -55,11 +58,29 @@ MINGW*) TARGET="-windows-" echo "Building windows .dlls for all architectures";; Linux*) - PLATFORM_LIST="${LINUX_PLATFORMS}" NAME="libjbigi" TYPE="so" + PLATFORM_LIST="" TARGET="-linux-" - echo "Building linux .sos for all architectures";; + arch=$(uname -m | cut -f1 -d" ") + case ${arch} in + i[3-6]86) + arch="x86";; + esac + case ${arch} in + x86_64) + PLATFORM_LIST="${X86_64_PLATFORMS}" + TARGET="-linux-X86_64-";; + ia64) + PLATFORM_LIST="${X86_64_PLATFORMS}" + TARGET="-linux-ia64-";; + x86) + PLATFORM_LIST="${X86_PLATFORMS}" + TARGET="-linux-x86-";; + *) + PLATFORM_LIST="${LINUX_PLATFORMS}";; + esac + echo "Building ${TARGET} .so's for ${arch}";; FreeBSD*) PLATFORM_LIST="${FREEBSD_PLATFORMS}" NAME="libjbigi" diff --git a/core/c/jcpuid/mbuild.sh b/core/c/jcpuid/mbuild.sh new file mode 100755 index 0000000000..01429ab5dc --- /dev/null +++ b/core/c/jcpuid/mbuild.sh @@ -0,0 +1,65 @@ +#/bin/sh + +case `uname -sr` in +MINGW*) + echo "Building windows .dll's";; +CYGWIN*) + echo "Building windows .dll's";; +Linux*) + echo "Building linux .so's";; +FreeBSD*) + echo "Building freebsd .so's";; +*) + echo "Unsupported build environment" + exit;; +esac + +rm -rf lib +mkdir lib +mkdir lib/freenet +mkdir lib/freenet/support +mkdir lib/freenet/support/CPUInformation + +CC="gcc" + +case `uname -sr` in +MINGW*) + JAVA_HOME="/c/software/j2sdk1.4.2_05" + COMPILEFLAGS="-Wall" + INCLUDES="-I. -Iinclude -I$JAVA_HOME/include/ -I$JAVA_HOME/include/win32/" + LINKFLAGS="-shared -static -static-libgcc -Wl,--kill-at" + LIBFILE="lib/freenet/support/CPUInformation/jcpuid-x86-windows.dll";; +FreeBSD*) + COMPILEFLAGS="-Wall" + INCLUDES="-I. -Iinclude -I$JAVA_HOME/include/ -I$JAVA_HOME/include/freebsd/" + LINKFLAGS="-shared -static -Wl,-soname,libjcpuid-x86-freebsd.so" + LIBFILE="lib/freenet/support/CPUInformation/libjcpuid-x86-freebsd.so";; +Linux*) + case `uname -m` in + x86_64*) + LINKFLAGS="-shared -Wl,-soname,libjcpuid-x86_64-linux.so" + LIBFILE="lib/freenet/support/CPUInformation/libjcpuid-x86_64-linux.so";; + ia64*) + LINKFLAGS="-shared -Wl,-soname,libjcpuid-x86-linux.so" + LIBFILE="lib/freenet/support/CPUInformation/libjcpuid-ia64-linux.so";; + i?86*) + LINKFLAGS="-shared -Wl,-soname,libjcpuid-x86-linux.so" + LIBFILE="lib/freenet/support/CPUInformation/libjcpuid-x86-linux.so";; + *) + echo "Unsupported build environment" + exit;; + esac + COMPILEFLAGS="-fPIC -Wall" + INCLUDES="-I. -Iinclude -I$JAVA_HOME/include -I$JAVA_HOME/include/linux";; + +esac + +echo "Compiling C code..." +rm -f $LIBFILE +$CC $COMPILEFLAGS $LINKFLAGS $INCLUDES src/*.c -o $LIBFILE +strip $LIBFILE +echo Built $LIBFILE + +#g++ -shared -static -static-libgcc -Iinclude -I$JAVA_HOME/include \ +# -I$JAVA_HOME/include/linux src/*.cpp \ +# -o lib/freenet/support/CPUInformation/libjcpuid-x86-linux.so diff --git a/core/c/mbuild.sh b/core/c/mbuild.sh index 6794aa5e35..95d3eb98d5 100755 --- a/core/c/mbuild.sh +++ b/core/c/mbuild.sh @@ -2,14 +2,16 @@ # Automatic build of so files, ignores failed builds. # Place latest gmp tarball in the jbigi dir, and exec this script. -JBIGI=../../../installer/lib/jbigi/jbigi.jar +#JBIGI=../../../installer/lib/jbigi/jbigi.jar -if [ -f jbigi.jarx ] ; then -JBIGI=../jbigi.jar -fi +#if [ -f jbigi.jarx ] ; then +#JBIGI=../jbigi.jar +#fi -(cd jcpuid ; sh build.sh ) -(cd jbigi ; sh mbuild-all.sh ) +rm -f t/* jcpuid/lib/freenet/support/CPUInformation/* jbigi/lib/net/i2p/util/* + +( cd jcpuid ; ./mbuild.sh ) +( cd jbigi ; ./mbuild-all.sh ) rm -Rf t mkdir t @@ -41,5 +43,5 @@ cp jbigi/lib/net/i2p/util/* t/ ) -echo "jbigi.jar Refreshed." -echo "raw files ar in t." +echo "jbigi.jar created." +echo "raw files are in t." diff --git a/history.txt b/history.txt index aafbc61d0a..e66935f50f 100644 --- a/history.txt +++ b/history.txt @@ -1,3 +1,9 @@ +2011-05-23 sponge + * mbuild.sh fixups + * add new jcpuid/mbuild.sh -- pedantic naming + * jbigi/mbuild-all.sh -- pedantic naming + * see also http://zzz.i2p/topics/306?page=1#p3341 + 2011-05-22 zzz * GeoIP: Read countries.txt in UTF-8 * Jetty: Fix build error that omitted local jetty patches from org.mortbay.jetty.jar;