X-Git-Url: http://git.onelab.eu/?p=ipfw.git;a=blobdiff_plain;f=README;h=9c33bab227000431e880fd3427f39a2129bd2028;hp=c65b91ad277d5930638bbf083ab84f40e4fb8b53;hb=HEAD;hpb=40445faa1db58b90083115bc315d095e7eb2fe51 diff --git a/README b/README index c65b91a..9c33bab 100644 --- a/README +++ b/README @@ -1,5 +1,5 @@ # -# $Id: README 6070 2010-04-15 11:58:21Z marta $ +# $Id: README 8977 2011-07-04 11:47:59Z luigi $ # This directory contains a port of ipfw and dummynet to Linux/OpenWrt @@ -78,18 +78,18 @@ Windows: =================== BUILD INSTRUCTIONS ========================== -***** Windows XP ****** +***** Windows (XPi, Windows7) ****** You can find a pre-built version in the binary/ subdirectory. To build your own version of the package you need: - - MSVC DDK available from ... - http://www.microsoft.com/whdc/DevTools/WDK/WDKpkg.mspx + - MSVC DDK available from + http://msdn.microsoft.com/en-us/windows/hardware/gg487463.aspx - optionally, DbgView if you want to see diagnostic http://technet.microsoft.com/en-us/sysinternals/bb896647.aspx - cygwin, http://www.cygwin.com/ with base packages, make, c compiler, possibly an editor - and subversion. + and subversion (suggest: tortoiseSvn) Edit Makefile in the root directory, and set configuration variables to match your current system (hard drive @@ -101,6 +101,10 @@ Windows: ipfw.sys (an NDIS intermediate filter driver) dummynet.inf and dummynet_m.inf (installer files) + Cross compilation of the userland side under FreeBSD is possible with + gmake TCC=`pwd`/tcc-0.9.25-bsd/win32 CC=`pwd`/tcc-0.9.25-bsd/win32/bin/wintcc + (wintcc is a custom version of tcc which produces Windows code) + ***** Windows crosscompilation for 64 bit using DDK ****** Edit root directory's Makefile and set target operating system @@ -249,19 +253,20 @@ nodes with dummynet emulation capabilities. sudo yum -y install subversion rpm-build rpm-devel m4 redhat-rpm-config make gcc # new build installation requires the gnupg package sudo yum -y install gnupg + # the linux kernel and the ipfw source can be fetched by git + sudo yum -y install git # create and move to a work directory mkdir -p test # extract a planetlab distribution to directory XYZ - (cd test; svn co http://svn.planet-lab.org/svn/build/trunk XYZ) - # copy the planetlab/*mk files here, overriding existing ones - cp planetlab/*mk test/XYZ + (cd test; git clone git://git.onelab.eu/build ./XYZ) # download the specfiles and do some patching. # Results are into SPEC/ (takes 5 minutes) - (cd test/XYZ; make stage1=true PLDISTRO=planetlab ) + (cd test/XYZ; make stage1=true PLDISTRO=onelab) # Building the slice code is fast, the root code takes longer # as it needs to rebuild the whole kernel - (cd test/XYZ; sudo make ipfwslice ipfwroot) + (cd test/XYZ; sudo make ipfwslice PLDISTRO=onelab) + (cd test/XYZ; sudo make ipfwroot PLDISTRO=onelab) The kernel dependency phase is a bit time consuming, but does not need to be redone if we are changing the ipfw sources only.