diff -urN colinux-20040417/bin/build-all.sh colinux-20040420/bin/build-all.sh --- colinux-20040417/bin/build-all.sh 2004-04-12 03:57:15.000000000 -0500 +++ colinux-20040420/bin/build-all.sh 2004-04-19 13:34:05.000000000 -0500 @@ -10,4 +10,5 @@ # ./build-cross.sh && -./build-colinux-libs.sh +./build-colinux-libs.sh && +./build-colinux.sh diff -urN colinux-20040417/bin/build-colinux-libs.sh colinux-20040420/bin/build-colinux-libs.sh --- colinux-20040417/bin/build-colinux-libs.sh 2004-04-16 15:22:59.000000000 -0500 +++ colinux-20040420/bin/build-colinux-libs.sh 2004-04-20 12:05:58.000000000 -0500 @@ -15,6 +15,12 @@ W32API_SRC=$W32API W32API_SRC_ARCHIVE=$W32API-src.tar.gz +WINPCAP_SRC=wpdpack +WINPCAP_URL=http://winpcap.polito.it/install/bin +WINPCAP_SRC_ARCHIVE="$WINPCAP_SRC"_3_0.zip + +PATH="$PREFIX/$TARGET/bin:$PATH" + download_files() { mkdir -p "$SRCDIR" @@ -22,6 +28,7 @@ download_file "$FLTK_ARCHIVE" "$FLTK_URL" download_file "$MXML_ARCHIVE" "$MXML_URL" download_file "$W32API_SRC_ARCHIVE" "$MINGW_URL" + download_file "$WINPCAP_SRC_ARCHIVE" "$WINPCAP_URL" } # @@ -158,11 +165,6 @@ { cd "$SRCDIR/$W32API_SRC" echo "Configuring w32api source" - if [ "${CC}x" != "$TARGET-gccx" ]; then - echo "Warning: CC is set, may cause problems with make/build" - echo " of w32api source, unsetting." - unset CC - fi ./configure --host=i686-pc-mingw32 --prefix=$PREFIX/$TARGET &> configure.log if test $? -ne 0; then echo "w32api source configure failed" @@ -197,6 +199,39 @@ install_w32api_src } +# WinPCAP + +extract_winpcap_src() +{ + cd "$SRCDIR" + rm -rf "$WINPCAP_SRC" + echo "Extracting winpcap source" + unzip "$WINPCAP_SRC_ARCHIVE" +} + +install_winpcap_src() +{ + cd "$SRCDIR/$WINPCAP_SRC" + echo "Installing $WINPCAP_SRC" + cp Include/PCAP.H "$PREFIX/$TARGET/include/pcap.h" + cp Include/pcap-stdinc.h "$PREFIX/$TARGET/include" + cp Include/bittypes.h "$PREFIX/$TARGET/include" + cp Include/ip6_misc.h "$PREFIX/$TARGET/include" +# mkdir "$PREFIX/$TARGET/include/net" + cp Include/NET/*.h "$PREFIX/$TARGET/include/net" + cp Lib/libwpcap.a "$PREFIX/$TARGET/lib" + if test $? -ne 0; then + echo "winpcap install failed" + exit 1 + fi +} + +build_winpcap_src() +{ + extract_winpcap_src + install_winpcap_src +} + # ALL build_colinux_libs() @@ -205,6 +240,7 @@ build_fltk build_mxml build_w32api_src + build_winpcap_src } build_colinux_libs diff -urN colinux-20040417/bin/build-colinux.sh colinux-20040420/bin/build-colinux.sh --- colinux-20040417/bin/build-colinux.sh 1969-12-31 18:00:00.000000000 -0600 +++ colinux-20040420/bin/build-colinux.sh 2004-04-20 14:03:24.000000000 -0500 @@ -0,0 +1,141 @@ +#!/bin/sh + +source ./build-common.sh + +# See ./commom.sh + +KERNEL_DIR=v2.4 +KERNEL_VERSION=2.4.26 +KERNEL=linux-$KERNEL_VERSION +KERNEL_URL=http://www.kernel.org/pub/linux/kernel/$KERNEL_DIR +KERNEL_ARCHIVE=$KERNEL.tar.bz2 + +download_files() +{ + mkdir -p "$SRCDIR" + + download_file "$KERNEL_ARCHIVE" "$KERNEL_URL" +} + +# +# Kernel +# + +extract_kernel() +{ + cd "$SRCDIR" + rm -rf $TOPDIR/../../linux + rm -rf "$KERNEL" + echo "Extracting Kernel $KERNEL_VERSION" + bzip2 -dc "$SRCDIR/$KERNEL_ARCHIVE" | tar xf - + cd "$TOPDIR" +} + +patch_kernel() +{ + cd "$SRCDIR" + ln -s "$SRCDIR/$KERNEL" "$TOPDIR/../../linux" + cd "$TOPDIR/../../linux" + # A minor hack for now. allowing linux patch to be 'version specific' + # in the future, but keeping backwards compatability. + cp "$TOPDIR/../patch/linux" "$TOPDIR/../patch/linux-$KERNEL_VERSION.diff" + patch -p1 < "$TOPDIR/../patch/linux-$KERNEL_VERSION.diff" + if test $? -ne 0; then + echo "$KERNEL_VERSION patch failed" + exit 1 + fi + cd "$TOPDIR" +} + +configure_kernel() +{ + cd "$TOPDIR/../../linux" + echo "Configuring Kernel $KERNEL_VERSION" + # A minor hack for now. Allowing linux config to be 'version specific' + # in the future, but keeping backwards compatability. + cp "$TOPDIR/../conf/linux-config" "$TOPDIR/../conf/linux-$KERNEL_VERSION-config" + cp "$TOPDIR/../conf/linux-$KERNEL_VERSION-config" .config + make oldconfig &> configure.log + if test $? -ne 0; then + echo "Kernel $KERNEL_VERSION configure failed" + exit 1 + fi + echo "Making Kernel $KERNEL_VERSION" + make dep &> make-dep.log + if test $? -ne 0; then + echo "Kernel $KERNEL_VERSION make dep failed" + exit 1 + fi + make vmlinux &> make.log + if test $? -ne 0; then + echo "Kernel $KERNEL_VERSION make failed" + exit 1 + fi + cd "$TOPDIR" +} + +install_kernel() +{ + cd "$TOPDIR/../../linux" + echo "Installing Kernel $KERNEL_VERSION" + cp -a vmlinux $PREFIX/$TARGET/bin + + # It would be nice to install kernel modules + # and then tar them up here. + + cd "$TOPDIR" +} + +configure_colinux_daemons() +{ + cd "$TOPDIR/../src" + echo "Configuring colinux (daemons)" + make colinux &> make.log + if test $? -ne 0; then + echo "colinux make failed" + exit 1 + fi + make bridged_net_daemon &> make-bridged-net-daemon.log + if test $? -ne 0; then + echo "bridged net daemon make failed" + exit 1 + fi + cd "$TOPDIR" +} + +install_colinux_daemons() +{ + cd "$TOPDIR/../src" + echo "Installing colinux (daemons)" + cp -a colinux/os/winnt/user/conet-daemon/colinux-net-daemon.exe "$PREFIX/$TARGET/bin" + cp -a colinux/os/winnt/user/console/colinux-console-fltk.exe "$PREFIX/$TARGET/bin" + cp -a colinux/os/winnt/user/console-nt/colinux-console-nt.exe "$PREFIX/$TARGET/bin" + cp -a colinux/os/winnt/user/daemon/colinux-daemon.exe "$PREFIX/$TARGET/bin" + cp -a colinux/os/winnt/build/linux.sys "$PREFIX/$TARGET/bin" + cd "$TOPDIR" +} + +build_kernel() +{ + extract_kernel + patch_kernel + configure_kernel + install_kernel +} + +build_colinux_daemons() +{ + configure_colinux_daemons + install_colinux_daemons +} + +# ALL + +build_colinux() +{ + download_files + build_kernel + build_colinux_daemons +} + +build_colinux