Feature merge from development version. Changes include:
* Support for experimental ports directory. * Support for patches to be applied automatically. * Acknowledge that we're currently testing 2.7, not 2.8. * Various formatting and string tweaks. * Use a slightly better logic for clearing out stale patches. * Work around 4-STABLE's default pkg_add weirdnesses. * Add a mechanism to skip running cvsup. * 4-STABLE caveat tweaks.
This commit is contained in:
parent
3739fbfe85
commit
8ed0811868
Notes:
svn2git
2020-12-08 03:00:23 +00:00
svn path=/www/; revision=22086
1 changed files with 78 additions and 21 deletions
|
@ -2,19 +2,23 @@
|
|||
|
||||
# builditinator.sh
|
||||
# written by Adam Weinberger <adamw@FreeBSD.org>
|
||||
# owned by the FreeBSD GNOME team <freebsd-gnome@FreeBSD.org>
|
||||
# pwned by the FreeBSD GNOME team <freebsd-gnome@FreeBSD.org>
|
||||
# under the BSD Public Licence
|
||||
# Adam hungry. need taco. unga.
|
||||
|
||||
# handles the basic processes of testing old and new GNOME versions
|
||||
|
||||
SKIP_CVSUP=${SKIP_CVSUP:=0}
|
||||
|
||||
#### Be sure to change these variables to match your system:
|
||||
|
||||
LOGDIR=/build/output
|
||||
MCOM_PORTS=/usr/ports/MARCUSCOM/ports
|
||||
MCOM_PORTSTOOLS=/usr/ports/MARCUSCOM/portstools
|
||||
MCOM_PORTSEXP=/usr/ports/MARCUSCOM/ports-experimental
|
||||
FBSD_PORTS=/usr/ports
|
||||
MCOM_PATCHES=/usr/ports/PATCHES/marcuscom
|
||||
FBSD_PATCHES=/usr/ports/PATCHES/freebsd
|
||||
|
||||
CVSUP_CONF=/etc/cvsup.conf
|
||||
# Re-order these to install them in differing orders
|
||||
|
@ -28,27 +32,27 @@ METAPORTS="${METAPORTS} devel/gnome2-hacker-tools"
|
|||
|
||||
#### There are no interesting user-settable variables below this line.
|
||||
|
||||
BUILDITINATOR_VERSION=2.8.0
|
||||
BUILDITINATOR_VERSION=2.7.2
|
||||
|
||||
OLDVER=2.6
|
||||
NEWVER=2.8
|
||||
NEWVER=2.7
|
||||
|
||||
echo "`basename $0` version ${BUILDITINATOR_VERSION}"
|
||||
|
||||
clean() {
|
||||
echo "==> Cleaning system..."
|
||||
echo "Clearing out work directories..."
|
||||
find ${FBSD_PORTS} ${MCOM_PORTS} -type d -name work | xargs rm -R 2>/dev/null
|
||||
find ${FBSD_PORTS} ${MCOM_PORTS} ${MCOM_PORTSEXP} -type d -name work | xargs rm -R 2>/dev/null
|
||||
echo "Removing all ports..."
|
||||
pkg_delete -a
|
||||
echo "Finding missing plist items in /usr/local..."
|
||||
find /usr/local -type f -o -type l > ${LOGDIR}/missing-plist-items-localbase 2>/dev/null
|
||||
echo -n "Number of items found: "
|
||||
wc -l ${LOGDIR}/missing-plist-items-localbase ; echo
|
||||
wc -l ${LOGDIR}/missing-plist-items-localbase | cut -f1 -d/ ; echo
|
||||
echo "Finding missing plist items in /usr/X11R6..."
|
||||
find /usr/X11R6 -type f -o -type l > ${LOGDIR}/missing-plist-items-x11base 2>/dev/null
|
||||
echo -n "Number of items found: "
|
||||
wc -l ${LOGDIR}/missing-plist-items-x11base ; echo
|
||||
wc -l ${LOGDIR}/missing-plist-items-x11base | cut -f1 -d/ ; echo
|
||||
echo "Backing up extra files..."
|
||||
tar cfy ${LOGDIR}/localbase-missing-items.tbz /usr/local 2>/dev/null
|
||||
tar cfy ${LOGDIR}/x11base-missing-items.tbz /usr/X11R6 2>/dev/null
|
||||
|
@ -60,13 +64,27 @@ clean() {
|
|||
|
||||
update() {
|
||||
echo "==> Updating repositories..."
|
||||
for dir in `find ${MCOM_PORTS} -type d -name files | sed -e "s|${MCOM_PORTS}|${FBSD_PORTS}|g"`
|
||||
# prevent stale patches by removing files/ directories prn before cvsupping.
|
||||
for dir in `find ${MCOM_PORTS} -type f -name distinfo | sed -e "s|${MCOM_PORTS}|${FBSD_PORTS}|g; s|/distinfo|/files/|g"`
|
||||
do
|
||||
rm -R ${dir} 2>/dev/null
|
||||
done
|
||||
[ -f /usr/local/bin/cvsup ] || pkg_add -r cvsup-without-gui
|
||||
cvsup ${CVSUP_CONF}
|
||||
for dir in `find ${MCOM_PORTSEXP} -type f -name distinfo | sed -e "s|${MCOM_PORTSEXP}|${FBSD_PORTS}|g; s|/distinfo|/files/|g"`
|
||||
do
|
||||
rm -R ${dir} 2>/dev/null
|
||||
done
|
||||
if [ ! -f /usr/local/bin/cvsup ]; then
|
||||
if [ -f ~/cvsup-without-gui.tgz ]; then
|
||||
pkg_add ~/cvsup-without-gui.tgz
|
||||
else
|
||||
pkg_add -r cvsup-without-gui
|
||||
fi
|
||||
fi
|
||||
if [ ${SKIP_CVSUP} = 0 ]; then
|
||||
cvsup ${CVSUP_CONF}
|
||||
fi
|
||||
make -C ${MCOM_PORTSTOOLS} clean all
|
||||
mkdir -p /usr/local/bin
|
||||
install -m 755 ${MCOM_PORTSTOOLS}/marcusmerge.sh /usr/local/bin/marcusmerge
|
||||
install -m 755 ${MCOM_PORTSTOOLS}/gnome_upgrade.sh /usr/local/bin/
|
||||
}
|
||||
|
@ -75,6 +93,7 @@ prime() {
|
|||
echo "==> Priming system..."
|
||||
make -C ${FBSD_PORTS}/sysutils/portupgrade install clean
|
||||
pkgdb -F
|
||||
# if you prefer any particular tools in your build environment, put them here.
|
||||
WITHOUT_X11=yes portinstall editors/vim
|
||||
}
|
||||
|
||||
|
@ -92,7 +111,18 @@ upgrade() {
|
|||
/usr/local/bin/gnome_upgrade.sh
|
||||
}
|
||||
|
||||
|
||||
patches() {
|
||||
if find ${MCOM_PATCHES} -type f 2>/dev/null; then
|
||||
for patchfile in ${MCOM_PATCHES}/*; do
|
||||
cd ${MCOM_PORTS} && patch -p0 < patchfile
|
||||
done
|
||||
fi
|
||||
if find ${FBSD_PATCHES} -type f 2>/dev/null; then
|
||||
for patchfile in ${FBSD_PATCHES}/*; do
|
||||
cd ${FBSD_PORTS} && patch -p0 < patchfile
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
cat <<MENU
|
||||
|
||||
|
@ -102,10 +132,12 @@ BUILD ACTIONS
|
|||
1) Run full upgrade cycle
|
||||
2) Install fresh ${OLDVER} system
|
||||
3) Install fresh ${NEWVER} system
|
||||
4) Upgrade to ${NEWVER}
|
||||
5) Freshen ${OLDVER} system
|
||||
6) Freshen ${NEWVER} system
|
||||
7) Clean and prime system
|
||||
4) Install fresh ${NEWVER}-experimental system
|
||||
5) Upgrade to ${NEWVER}
|
||||
6) Freshen ${OLDVER} system
|
||||
7) Freshen ${NEWVER} system
|
||||
8) Freshen ${NEWVER}-experimental system
|
||||
9) Clean and prime system
|
||||
|
||||
MENU
|
||||
read -p "Select build action [1]: " action
|
||||
|
@ -113,11 +145,13 @@ read -p "Select build action [1]: " action
|
|||
# do all interactive thingers at the beginning
|
||||
cd ${MCOM_PORTS} && cvs up
|
||||
cd ${MCOM_PORTSTOOLS} && cvs up
|
||||
cd ${MCOM_PORTSEXP} && cvs up
|
||||
|
||||
case "${action}" in
|
||||
"2")
|
||||
clean
|
||||
update
|
||||
patches
|
||||
prime
|
||||
install_new
|
||||
exit
|
||||
|
@ -125,42 +159,65 @@ case "${action}" in
|
|||
"3")
|
||||
clean
|
||||
update
|
||||
prime
|
||||
marcusmerge
|
||||
patches
|
||||
prime
|
||||
install_new
|
||||
exit
|
||||
;;
|
||||
"4")
|
||||
clean
|
||||
update
|
||||
marcusmerge
|
||||
upgrade
|
||||
marcusmerge -x
|
||||
patches
|
||||
prime
|
||||
install_new
|
||||
exit
|
||||
;;
|
||||
"5")
|
||||
update
|
||||
pkgdb -F
|
||||
portupgrade -a
|
||||
marcusmerge ${expargs}
|
||||
patches
|
||||
upgrade
|
||||
exit
|
||||
;;
|
||||
"6")
|
||||
update
|
||||
marcusmerge
|
||||
patches
|
||||
pkgdb -F
|
||||
portupgrade -a
|
||||
exit
|
||||
;;
|
||||
"7")
|
||||
update
|
||||
marcusmerge
|
||||
patches
|
||||
pkgdb -F
|
||||
portupgrade -a
|
||||
exit
|
||||
;;
|
||||
"8")
|
||||
update
|
||||
marcusmerge -x
|
||||
patches
|
||||
pkgdb -F
|
||||
portupgrade -a
|
||||
exit
|
||||
;;
|
||||
"9")
|
||||
clean
|
||||
update
|
||||
patches
|
||||
prime
|
||||
exit
|
||||
;;
|
||||
*)
|
||||
clean
|
||||
update
|
||||
patches
|
||||
prime
|
||||
install_new
|
||||
marcusmerge
|
||||
marcusmerge ${expargs}
|
||||
upgrade
|
||||
exit
|
||||
;;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue