X-Git-Url: http://git.ipfire.org/?p=people%2Fpmueller%2Fipfire-2.x.git;a=blobdiff_plain;f=make.sh;h=3302773e5eaf714c301d83275d6e6b490db1c68a;hp=6124ea77e15b4c8eb001b20657a2cd909070ed7a;hb=442af0321cad6b94dfa4c9bbd719f89acaa99702;hpb=c6fbd6eadf29d4633e10e9a1a1f3ab81282fd6e4 diff --git a/make.sh b/make.sh index 6124ea77e1..3302773e5e 100755 --- a/make.sh +++ b/make.sh @@ -24,22 +24,18 @@ NAME="IPFire" # Software name SNAME="ipfire" # Short name -VERSION="2.0rc2t" # Version number +VERSION="2.3-beta2" +GIT_BRANCH=master:master # Version number SLOGAN="www.ipfire.org" # Software slogan CONFIG_ROOT=/var/ipfire # Configuration rootdir NICE=10 # Nice level MAX_RETRIES=1 # prefetch/check loop KVER=`grep --max-count=1 VER lfs/linux | awk '{ print $3 }'` MACHINE=`uname -m` -SVN_REVISION=`svn info | grep Revision | cut -c 11-` +GIT_TAG=$(git tag | tail -1) IPFVER="full" # Which versions should be compiled? (full|devel) -# Set an information about the build number -if [ -e ./.svn ]; then - FIREBUILD=`cat .svn/entries |sed -n 's/^[ \t]*revision=\"// p' | sed -n 's/\".*$// p'` -fi - # Debian specific settings if [ ! -e /etc/debian_version ]; then FULLPATH=`which $0` @@ -75,6 +71,17 @@ else fi fi +if [ -z $EDITOR ]; then + for i in nano emacs vi; do + EDITOR=$(which $i 2>/dev/null) + if ! [ -z $EDITOR ]; then + export EDITOR=$EDITOR + break + fi + done + [ -z $EDITOR ] && exiterror "You should have installed an editor." +fi + prepareenv() { ############################################################################ # # @@ -327,11 +334,27 @@ buildipfire() { ipfiremake rp-pppoe ipfiremake unzip ipfiremake linux SMP=1 - ipfiremake ipp2p SMP=1 - ipfiremake zaptel SMP=1 + ipfiremake linux-fusion SMP=1 +# ipfiremake ipp2p SMP=1 + ipfiremake r8169 SMP=1 + ipfiremake r8168 SMP=1 + ipfiremake atl2 SMP=1 + ipfiremake kqemu SMP=1 + ipfiremake v4l-dvb SMP=1 + ipfiremake madwifi SMP=1 + ipfiremake sane KMOD=1 SMP=1 + ipfiremake openswan KMOD=1 SMP=1 ipfiremake linux - ipfiremake ipp2p - ipfiremake zaptel + ipfiremake linux-fusion +# ipfiremake ipp2p + ipfiremake r8169 + ipfiremake r8168 + ipfiremake atl2 + ipfiremake kqemu + ipfiremake v4l-dvb + ipfiremake madwifi + ipfiremake sane KMOD=1 + ipfiremake openswan KMOD=1 ipfiremake pkg-config ipfiremake linux-atm ipfiremake cpio @@ -377,6 +400,7 @@ buildipfire() { ipfiremake dosfstools ipfiremake squashfstools ipfiremake reiserfsprogs + ipfiremake xfsprogs ipfiremake sysfsutils ipfiremake fuse ipfiremake ntfs-3g @@ -394,14 +418,14 @@ buildipfire() { ipfiremake whatmask ipfiremake iptables ipfiremake libupnp - ipfiremake ipp2p IPT=1 +# ipfiremake ipp2p IPT=1 ipfiremake linux-igd - ipfiremake ipac-ng ipfiremake ipaddr ipfiremake iptstate ipfiremake iputils ipfiremake l7-protocols ipfiremake mISDN + ipfiremake capi4k-utils ipfiremake hwdata ipfiremake kudzu ipfiremake logrotate @@ -438,7 +462,6 @@ buildipfire() { ipfiremake noip_updater ipfiremake ntp ipfiremake openssh - ipfiremake openswan ipfiremake rrdtool ipfiremake setserial ipfiremake setup @@ -462,6 +485,7 @@ buildipfire() { ipfiremake cups ipfiremake ghostscript ipfiremake foomatic + ipfiremake hplip ipfiremake samba ipfiremake sudo ipfiremake mc @@ -486,6 +510,7 @@ buildipfire() { ipfiremake libmad ipfiremake libogg ipfiremake libvorbis + ipfiremake libdvbpsi ipfiremake lame ipfiremake sox ipfiremake libshout @@ -495,7 +520,7 @@ buildipfire() { ipfiremake mpc ipfiremake xvid ipfiremake libmpeg2 - ipfiremake videolan + ipfiremake cmake ipfiremake libpri ipfiremake asterisk ipfiremake gnump3d @@ -511,7 +536,6 @@ buildipfire() { ipfiremake portmap ipfiremake nfs ipfiremake nmap - ipfiremake mbmon ipfiremake ncftp ipfiremake etherwake ipfiremake bwm-ng @@ -519,16 +543,63 @@ buildipfire() { ipfiremake sysstat ipfiremake vsftpd ipfiremake which + ipfiremake openswan ipfiremake lsof ipfiremake centerim ipfiremake br2684ctl + ipfiremake pcmciautils + ipfiremake lm_sensors + ipfiremake collectd + ipfiremake lcd4linux + ipfiremake neon + ipfiremake subversion + ipfiremake tcptrack + ipfiremake teamspeak + ipfiremake elinks + ipfiremake igmpproxy + ipfiremake fbset + ipfiremake sdl + ipfiremake qemu + ipfiremake sane + ipfiremake netpbm + ipfiremake phpSANE + ipfiremake tunctl + ipfiremake nagios + ipfiremake ebtables + ipfiremake arptables + ipfiremake fontconfig + ipfiremake freefont + ipfiremake directfb + ipfiremake dfb++ + ipfiremake ffmpeg + ipfiremake videolan + ipfiremake vdr + ipfiremake w_scan + ipfiremake git + ipfiremake squidclamav + ipfiremake bc + ipfiremake esniper + ipfiremake vnstat + ipfiremake vnstati + ipfiremake wpa_supplicant + ipfiremake hostapd + ipfiremake urlgrabber + ipfiremake syslinux + ipfiremake tftp-hpa + echo Build on $HOSTNAME > $BASEDIR/build/var/ipfire/firebuild + cat /proc/version >> $BASEDIR/build/var/ipfire/firebuild + echo >> $BASEDIR/build/var/ipfire/firebuild + git log -1 >> $BASEDIR/build/var/ipfire/firebuild + echo >> $BASEDIR/build/var/ipfire/firebuild + git status >> $BASEDIR/build/var/ipfire/firebuild + echo >> $BASEDIR/build/var/ipfire/firebuild + cat /proc/cpuinfo >> $BASEDIR/build/var/ipfire/firebuild } buildinstaller() { # Run installer scripts one by one LOGFILE="$BASEDIR/log/_build.installer.log" export LOGFILE - ipfiremake syslinux ipfiremake as86 ipfiremake mbr ipfiremake memtest @@ -559,6 +630,7 @@ buildinstaller() { installmake wget installmake hwdata installmake kudzu + installmake pcmciautils installmake installer installmake initrd } @@ -584,6 +656,10 @@ buildpackages() { rm -f $BASEDIR/doc/packages-list # packages-list.txt is ready to be displayed for wiki page beautify message DONE + + # Update changelog + cd $BASEDIR + $0 git log # Create images for install ipfiremake cdrom ED=full @@ -592,7 +668,10 @@ buildpackages() { if [ -e /dev/loop/0 ] || [ -e /dev/loop0 ]; then ipfiremake usb-stick fi - mv $LFS/install/images/{*.iso,*.tgz,*.img.gz} $BASEDIR >> $LOGFILE 2>&1 + + # Create updater package + ipfiremake updater + mv $LFS/install/images/{*.iso,*.tgz,*.img.gz,*.bz2} $BASEDIR >> $LOGFILE 2>&1 ipfirepackages @@ -666,13 +745,6 @@ build) beautify build_stage "Building IPFire" buildipfire - # Setzen des IPFire Builds - if [ "$FIREBUILD" ]; then - echo "$FIREBUILD" > $BASEDIR/build/var/ipfire/firebuild - else - echo "_(OvO)_" > $BASEDIR/build/var/ipfire/firebuild - fi - beautify build_stage "Building installer" buildinstaller @@ -686,11 +758,6 @@ shell) prepareenv entershell ;; -changelog) - echo -n "Loading new Changelog from SVN: " - svn log http://svn.ipfire.org/svn/ipfire > doc/ChangeLog - beautify message DONE - ;; clean) echo -en "${BOLD}Cleaning build directory...${NORMAL}" for i in `mount | grep $BASEDIR | sed 's/^.*loop=\(.*\))/\1/'`; do @@ -820,87 +887,50 @@ othersrc) fi stdumount ;; -svn) +git) case "$2" in update|up) - # clear - echo -ne "Loading the latest source files...\n" - if [ $3 ]; then - svn update -r $3 | tee -a $PWD/log/_build.svn.update.log - else - svn update | tee -a $PWD/log/_build.svn.update.log - fi - if [ $? -eq "0" ]; then - beautify message DONE - else - beautify message FAIL - exit 1 - fi - echo -ne "Writing the svn-info to a file" - svn info > $PWD/svn_status - if [ $? -eq "0" ]; then - beautify message DONE - else - beautify message FAIL - exit 1 - fi - chmod 755 $0 - exit 0 - ;; + git pull + ;; commit|ci) - clear - if [ -f /usr/bin/mcedit ]; then - export EDITOR=/usr/bin/mcedit - fi - if [ -f /usr/bin/nano ]; then - export EDITOR=/usr/bin/nano - fi - echo -ne "Selecting editor $EDITOR..." - beautify message DONE - if [ -e /sbin/yast ]; then - if [ "`echo $SVN_REVISION | cut -c 3`" -eq "0" ]; then - $0 changelog - fi - fi - update_langs - svn commit - $0 svn up - if [ -n "$FTP_CACHE_URL" ]; then - $0 uploadsrc - fi - ;; + shift 2 + git commit $* + + [ "$?" -eq "0" ] || exiterror "git commit $* failed." + + echo -e "${BOLD}Do you want to push, too? [y/N]${NORMAL}" + read + [ -z $REPLY ] && exit 0 + for i in y Y j J; do + if [ "$i" == "$REPLY" ]; then + $0 git push + exit $? + fi + done + exiterror "\"$REPLY\" is not a valid answer." + ;; dist) - if [ $3 ]; then - SVN_REVISION=$3 - fi - if [ -f ipfire-source-r$SVN_REVISION.tar.gz ]; then - echo -ne "REV $SVN_REVISION: SKIPPED!\n" - exit 0 - fi - echo -en "REV $SVN_REVISION: Downloading..." - svn export http://svn.ipfire.org/svn/ipfire/trunk ipfire-source/ --force > /dev/null - svn log http://svn.ipfire.org/svn/ipfire/trunk -r 1:$SVN_REVISION > ipfire-source/Changelog - #svn info http://svn.ipfire.org/svn/ipfire/trunk -r $SVN_REVISION > ipfire-source/svn_status - evaluate 1 - - echo -en "REV $SVN_REVISION: Compressing files..." - if [ -e ipfire-source/trunk/make.sh ]; then - chmod 755 ipfire-source/trunk/make.sh - fi - tar cfz ipfire-source-r$SVN_REVISION.tar.gz ipfire-source - evaluate 1 - echo -en "REV $SVN_REVISION: Cleaning up..." - rm ipfire-source/ -r - evaluate 1 - ;; + git archive HEAD | gzip -9 > ${SNAME}-${VERSION}.tar.gz + ;; diff|di) - update_langs - echo -ne "Make a local diff to last svn revision" - svn diff > ipfire-diff-`date +'%Y-%m-%d-%H:%M'`-r`svn info | grep Revision | cut -c 11-`.diff - evaluate 1 - echo "Diff was successfully saved to ipfire-diff-`date +'%Y-%m-%d-%H:%M'`-r`svn info | grep Revision | cut -c 11-`.diff" - svn status - ;; + echo -ne "Make a local diff to last revision" + git diff HEAD > ipfire-diff-$(date +'%Y-%m-%d-%H:%M').diff + evaluate 1 + echo "Diff was successfully saved to ipfire-diff-$(date +'%Y-%m-%d-%H:%M').diff" + git diff --stat + ;; + push) + [ -z $GIT_USER ] && exiterror "You have to setup GIT_USER first." + GIT_URL="ssh://${GIT_USER}@git.ipfire.org/pub/git/ipfire-2.x" + + git push ${GIT_URL} ${GIT_BRANCH} + ;; + log) + [ -z $GIT_TAG ] || LAST_TAG=$GIT_TAG + [ -z $LAST_TAG ] || EXT="$LAST_TAG..HEAD" + + git log -n 500 --no-merges --pretty=medium --shortstat $EXT > $BASEDIR/doc/ChangeLog + ;; esac ;; uploadsrc) @@ -1012,8 +1042,7 @@ lang) ;; "") clear - svn info - select name in "Exit" "IPFIRE: Downloadsrc" "IPFIRE: Build (silent)" "IPFIRE: Watch Build" "IPFIRE: Batch" "IPFIRE: Clean" "SVN: Commit" "SVN: Update" "SVN: Status" "SVN: Diff" "LOG: Tail" "Help" + select name in "Exit" "IPFIRE: Downloadsrc" "IPFIRE: Build (silent)" "IPFIRE: Watch Build" "IPFIRE: Batch" "IPFIRE: Clean" "LOG: Tail" "Help" do case $name in "IPFIRE: Downloadsrc") @@ -1031,9 +1060,6 @@ lang) "IPFIRE: Clean") $0 clean ;; - "SVN: Update") - $0 svn update - ;; "Help") echo "Usage: $0 {build|changelog|clean|gettoolchain|downloadsrc|shell|sync|toolchain}" cat doc/make.sh-usage