diff options
author | Daniel Joseph Barnhart Clark <dclark@pobox.com> | 2006-08-19 21:52:31 +0000 |
---|---|---|
committer | Daniel Joseph Barnhart Clark <dclark@pobox.com> | 2006-08-19 21:52:31 +0000 |
commit | 48b9c8f43f0a5f0bf95d7d8b3c84c476869ff121 (patch) | |
tree | d865bf61a9e6e062f2537b3080d9cabb8ccf94e3 /encap/tools | |
parent | 2b69d8284d014e13b5bcb7fa84413002f592104f (diff) | |
download | bcfg2-48b9c8f43f0a5f0bf95d7d8b3c84c476869ff121.tar.gz bcfg2-48b9c8f43f0a5f0bf95d7d8b3c84c476869ff121.tar.bz2 bcfg2-48b9c8f43f0a5f0bf95d7d8b3c84c476869ff121.zip |
EncapPackages: Beginning of some dir structure changes
git-svn-id: https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2@2074 ce84e21b-d406-0410-9b95-82705330c041
Diffstat (limited to 'encap/tools')
-rw-r--r-- | encap/tools/bcfg2-client/Makefile | 116 | ||||
-rw-r--r-- | encap/tools/bcfg2-client/bcfg2-0.8.2.ep | 444 | ||||
-rw-r--r-- | encap/tools/bcfg2-client/bcfg2-gettext-0.14.5.ep | 79 | ||||
-rwxr-xr-x | encap/tools/bcfg2-client/bcfg2-libgcc-0.1.sh | 34 | ||||
-rw-r--r-- | encap/tools/bcfg2-client/bcfg2-libiconv-1.9.2.ep | 79 | ||||
-rwxr-xr-x | encap/tools/bcfg2-client/bcfg2-libstdc++-0.1.sh | 34 | ||||
-rw-r--r-- | encap/tools/bcfg2-client/bcfg2-libxml2-2.6.26.ep | 86 | ||||
-rw-r--r-- | encap/tools/bcfg2-client/bcfg2-libxslt-1.1.17.ep | 89 | ||||
-rw-r--r-- | encap/tools/bcfg2-client/bcfg2-lxml-1.0.1.ep | 94 | ||||
-rw-r--r-- | encap/tools/bcfg2-client/bcfg2-openssl-0.9.8b.ep | 89 | ||||
-rw-r--r-- | encap/tools/bcfg2-client/bcfg2-pkg-config-0.20.ep | 77 | ||||
-rw-r--r-- | encap/tools/bcfg2-client/bcfg2-pyopenssl-0.6.ep | 91 | ||||
-rw-r--r-- | encap/tools/bcfg2-client/bcfg2-pyrex-0.9.4.1.ep | 90 | ||||
-rw-r--r-- | encap/tools/bcfg2-client/bcfg2-python-2.4.3.ep | 98 | ||||
-rw-r--r-- | encap/tools/bcfg2-client/bcfg2-zlib-1.2.3.ep | 90 | ||||
-rwxr-xr-x | encap/tools/bcfg2-client/m4-1.4.4.sh | 74 |
16 files changed, 1664 insertions, 0 deletions
diff --git a/encap/tools/bcfg2-client/Makefile b/encap/tools/bcfg2-client/Makefile new file mode 100644 index 000000000..45de670d0 --- /dev/null +++ b/encap/tools/bcfg2-client/Makefile @@ -0,0 +1,116 @@ +# $Id$ + +.PHONY : all install clean uninstall encaps rename bcfg2only +.SUFFIXES : +.SUFFIXES : .ep .sh .installed .packaged + +BASEDIR = /usr/local +ENCAPDIR = ${BASEDIR}/encap +export ENCAPDIR +EPKG = ${BASEDIR}/bin/epkg +export EPKG +MKENCAP = ${BASEDIR}/bin/mkencap +export MKENCAP + +M4 = m4-1.4.4 +ZLIB = bcfg2-zlib-1.2.3 +LIBICONV = bcfg2-libiconv-1.9.2 +GETTEXT = bcfg2-gettext-0.14.5 +PKG-CONFIG = bcfg2-pkg-config-0.20 +OPENSSL = bcfg2-openssl-0.9.8b +LIBSTDCXX = bcfg2-libstdc++-0.1 +LIBGCC = bcfg2-libgcc-0.1 +PYTHON = bcfg2-python-2.4.3 +PYREX = bcfg2-pyrex-0.9.4.1 +PYOPENSSL = bcfg2-pyopenssl-0.6 +LIBXML2 = bcfg2-libxml2-2.6.26 +LIBXSLT = bcfg2-libxslt-1.1.17 +LXML = bcfg2-lxml-1.0.1 +BCFG2 = bcfg2-0.8.2 + +.ep.installed : # Clean, compile and install an encap package + @printf "***** START .ep.installed for |$*| ***** \n" + ( ${EPKG} -q -r ${ENCAPDIR}/$* || true ) + ( rm -rf ${ENCAPDIR}/$* || true ) + ( ${MKENCAP} -m /usr/local/bin/m4 -b -DUP $*.ep || true ) > $*.log 2>&1 + ( ${MKENCAP} -m /usr/local/bin/m4 -b -T $*.ep || true ) >> $*.log 2>&1 + ( ${MKENCAP} -m /usr/local/bin/m4 -b -CBI $*.ep ) >> $*.log 2>&1 + ${EPKG} -q -i ${ENCAPDIR}/$* + test -h ${BASEDIR}/var/encap/$* + touch $*.installed + @printf "***** STOP .ep.installed for |$*| ***** \n" + +.sh.installed : # Create and install a "fake" encap package + @printf "***** START .sh.installed for |$*| ***** \n" + ( ${EPKG} -q -r ${ENCAPDIR}/$* || true ) + ( rm -rf ${ENCAPDIR}/$* || true ) + chmod 755 ./$*.sh + ./$*.sh + ${EPKG} -q -i ${ENCAPDIR}/$* + test -h ${BASEDIR}/var/encap/$* + touch $*.installed + @printf "***** STOP .sh.installed for |$*| ***** \n" + +.installed.packaged : # Create .tar.gz encap packages for distribution + @printf "***** START .installed.packaged for |$*| ***** \n" + ( rm ${ENCAPDIR}/$*-*.tar.gz || true ) + ( cd ${ENCAPDIR} && ${MKENCAP} -e $* || true ) + cd ${ENCAPDIR} && ${MKENCAP} -c $* + mv ${ENCAPDIR}/$*-encap-*.tar.gz . + touch $*.packaged + @printf "***** STOP .installed.packaged for |$*| ***** \n" + +all : + ( $(MAKE) install > make.log 2>&1 && $(MAKE) encaps >> make.log 2>&1 ) & + +install : ${EPKG} ${MKENCAP} ${BCFG2}.installed + +encaps : ${EPKG} ${MKENCAP} ${BCFG2}.packaged + +rename : encaps + test "$${OS}x" != "x" + for EARCHIVE in `ls *-encap-*.tar.gz`; do \ + mv $${EARCHIVE} `printf $${EARCHIVE} | awk -F- '{$$NF = "OSDIST.tar.gz" ; print}' | sed s:\ :-:g | sed s:OSDIST:\$${OS}:g` ; \ + done + +clean : + ( rm *.log || true ) + ( rm *.packaged || true ) + ( rm *.gz || true ) + ( rm *~ || true ) + +uninstall : clean + ( rm *.installed || true ) + ( ${EPKG} -q -r ${ENCAPDIR}/bcfg2-* || true ) + ( rm -rf ${ENCAPDIR}/bcfg2-* || true ) + ( rm -rf ${BASEDIR}/lib/bcfg2 || true ) + +bcfg2only : + $(MAKE) -t; sleep 2; touch $(BCFG2).ep; $(MAKE) + +${ZLIB}.installed : ${M4}.installed +${LIBICONV}.installed : ${ZLIB}.installed +${GETTEXT}.installed : ${LIBICONV}.installed +${PKG-CONFIG}.installed : ${GETTEXT}.installed +${OPENSSL}.installed : ${PKG-CONFIG}.installed +${LIBSTDCXX}.installed : ${OPENSSL}.installed +${LIBGCC}.installed : ${LIBSTDCXX}.installed +${PYTHON}.installed : ${LIBGCC}.installed +${PYREX}.installed : ${PYTHON}.installed +${PYOPENSSL}.installed : ${PYREX}.installed +${LIBXML2}.installed : ${PYOPENSSL}.installed +${LIBXSLT}.installed : ${LIBXML2}.installed +${LXML}.installed : ${LIBXSLT}.installed +${BCFG2}.installed : ${LXML}.installed + +${LIBICONV}.packaged : ${ZLIB}.packaged +${GETTEXT}.packaged : ${LIBICONV}.packaged +${OPENSSL}.packaged : ${GETTEXT}.packaged +${LIBSTDCXX}.packaged : ${OPENSSL}.packaged +${LIBGCC}.packaged : ${LIBSTDCXX}.packaged +${PYTHON}.packaged : ${LIBGCC}.packaged +${PYOPENSSL}.packaged : ${PYTHON}.packaged +${LIBXML2}.packaged : ${PYOPENSSL}.packaged +${LIBXSLT}.packaged : ${LIBXML2}.packaged +${LXML}.packaged : ${LIBXSLT}.packaged +${BCFG2}.packaged : ${LXML}.packaged diff --git a/encap/tools/bcfg2-client/bcfg2-0.8.2.ep b/encap/tools/bcfg2-client/bcfg2-0.8.2.ep new file mode 100644 index 000000000..cb8b99ecf --- /dev/null +++ b/encap/tools/bcfg2-client/bcfg2-0.8.2.ep @@ -0,0 +1,444 @@ +<?xml version="1.0"?> + +<!-- $Id$ --> + +<encap_profile + profile_ver="1.0" + pkgspec="bcfg2-0.8.2" +> + +<environment + variable="CC" + value="gcc" + type="set" +/> + +<environment + variable="PATH" +PLATFORM_IF_MATCH(solaris) + value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:" +PLATFORM_ELSE + value="/usr/local/lib/bcfg2/bin:/usr/local/bin:" +PLATFORM_ENDIF + type="prepend" +/> + +PLATFORM_IF_MATCH(linux) +PLATFORM_ELSE +<environment + variable="MAKE" + value="gmake" + type="set" +/> +PLATFORM_ENDIF + +<environment + variable="LDFLAGS" +PLATFORM_IF_MATCH(linux) + value="-L/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib" +PLATFORM_ELSE_IF_MATCH(aix) + value="-L/usr/local/lib/bcfg2/lib -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/lib" +PLATFORM_ELSE_IF_MATCH(solaris) + value="-L/usr/local/lib/bcfg2/lib -R/usr/local/lib/bcfg2/lib:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/lib" +PLATFORM_ELSE +PLATFORM_ENDIF + type="set" +/> + +<environment + variable="CPPFLAGS" + value="-I/usr/local/lib/bcfg2/include" + type="set" +/> + +<source +url="http://www.pobox.com/users/dclark/mirror/bcfg/bcfg2-0.8.2.tar.gz + ftp://ftp.mcs.anl.gov/pub/bcfg/bcfg2-0.8.2.tar.gz" +> + +<configure> +: +</configure> + +<build> +/usr/local/lib/bcfg2/bin/python setup.py build \ +--build-base=${builddir}/build +</build> + +<install> +/usr/local/lib/bcfg2/bin/python setup.py install \ +--prefix=${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2 +</install> + +<clean> +/usr/local/lib/bcfg2/bin/python setup.py clean +</clean> + +</source> + +<prepackage type="set"><![CDATA[ +# Make binaries available from /usr/local/bin +test -d bin || mkdir bin +for FILE in `ls lib/bcfg2/bin`; do \ + ln -sf ../lib/bcfg2/bin/${FILE} bin/${FILE}; \ + if [ ! "`printf "${FILE}" | cut -c 1-5`x" = "bcfg2x" ]; then \ + ln -sf ../lib/bcfg2/bin/${FILE} bin/b2-${FILE}; \ + fi; \ +done +# Make doc available from /usr/local/share/doc/bcfg2 +test -d share || mkdir share +test -d share/doc || mkdir share/doc +test -d share/doc/bcfg2 || mkdir share/doc/bcfg2 +(cp ${builddir}/doc/manual.pdf share/doc/bcfg2/ || true) +cp -r ${builddir}/examples share/doc/bcfg2/ +# Make man pages available from /usr/local/man +mv lib/bcfg2/share/man . +# Make tools dirs and copy over tools +test -d lib/bcfg2/tools || mkdir lib/bcfg2/tools +cp ${builddir}/tools/* lib/bcfg2/tools/ +test -d sbin || mkdir sbin +test -d share/doc/bcfg2/tools || mkdir share/doc/bcfg2/tools +# Makes tools with #! line executable +for FILE in `ls lib/bcfg2/tools`; do \ + F="lib/bcfg2/tools/${FILE}"; \ + if [ "`head -1 ${F} | grep ^#\!/`x" != "x" ]; then \ + chmod 755 ${F} ; \ + fi; \ +done +# Make executable tools available from /usr/local/sbin, and nonexecutable +# tools/tools doc available from /usr/local/share/doc/bcfg2/tools +for FILE in `ls lib/bcfg2/tools`; do \ + F="lib/bcfg2/tools/${FILE}"; \ + if [ -x ${F} ]; then \ + ln -sf ../lib/bcfg2/tools/${FILE} sbin/b2-example-tool-${FILE}; \ + else \ + ln -sf ../../../../lib/bcfg2/tools/${FILE} share/doc/bcfg2/tools/${FILE}; \ + fi; \ +done +# daemontools stuff +test -d var || mkdir var +test -d var/svc.d || mkdir var/svc.d +test -d var/svc.d/bcfg2-client || mkdir var/svc.d/bcfg2-client +test -d var/svc.d/bcfg2-client/log || mkdir var/svc.d/bcfg2-client/log +test -d var/svc.d/bcfg2-server || mkdir var/svc.d/bcfg2-server +test -d var/svc.d/bcfg2-server/log || mkdir var/svc.d/bcfg2-server/log +# Make "this encap is installed" sentinal file available in /usr/local/var/encap +test -d var/encap || mkdir var/encap +touch var/encap/${ENCAP_PKGNAME} +]]></prepackage> + +<include_file name="b2-regexplace.py" mode="0755"><![CDATA[ +#!/usr/local/lib/bcfg2/bin/python + +# regexplace: regular expression search and replace +# Stefano Spinucci +# 2006-02-07 (rev 4) +# Daniel Clark +# 2006-08-03 (modified for bcfg2 encap use) +# thanks to roadrunner.py +# http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/52553 +# for some ideas and some code +# tested with python 2.4.3 + +import sys, os, re, string + +# pupulate and return 'fileslist[]' with all files inside 'dir' matching 'regx' +def make_files_list(dir, regx): + + # if dir is not a directory, exit with error + if not os.path.isdir(dir): + sys.exit(dir + ' is not a valid dir to walk !!!') + + # compile the search regexp + cregex=re.compile(regx) + + # initialize the file list + fileslist = [] + + # loop on all files and select files matching 'regx' + # don't include symbolic links + for root, dirs, files in os.walk(dir): + for name in files: + if cregex.search(name) and name not in ("b2-regexplace.sh", "b2-regexplace.py", "postinstall", "postinstall.log", "bcfg2-0.8.2.ep"): + path = os.path.join(root, name) + if not os.path.islink(path): + fileslist.append(path) + + # return the file list + return fileslist[:] + +# in all files in 'fileslist' search the regexp 'searchregx' and replace +# with 'replacestring'; real substitution in files only if 'simulation' = 0 +def replace_in_files(fileslist, searchregx, replacestring, simulation): + + # compile regexp + cregex=re.compile(searchregx) + + # loop on all files + for xfile in fileslist: + + # initialize the replace flag + replaceflag=0 + + # open file for read + readlines=open(xfile,'r').readlines() + # intialize the list counter + listindex = -1 + + # search and replace in current file printing to the user changed lines + for currentline in readlines: + + # increment the list counter + listindex = listindex + 1 + + # if the regexp is found + if cregex.search(currentline): + + # make the substitution + f=re.sub(searchregx,replacestring,currentline) + + # print the current filename, the old string and the new string + print '\n' + xfile + print '- ' + currentline , + if currentline[-1:]!='\n': print '\n' , + print '+ ' + f , + if f[-1:]!='\n': print '\n' , + + # if substitution is real + if simulation == 0: + + # update the whole file variable ('readlines') + readlines[listindex] = f + replaceflag=1 + + # if some text was replaced + # overwrite the original file + if replaceflag==1: + + # open the file for writting + write_file=open(xfile,'w') + + # overwrite the file + for line in readlines: + write_file.write(line) + + # close the file + write_file.close() + +# main function +def main(): + + # if parameters are wrong, exit with error + if len(sys.argv) < 5: + + print 'Usage: regexplace.py dirname files-regexp search-regexp replace-string' + + sys.exit(1) + + # make the file list + fileslist = make_files_list(sys.argv[1], sys.argv[2]) + + # real execution + replace_in_files(fileslist, sys.argv[3], sys.argv[4], 0) + + # simulated execution + #replace_in_files(fileslist, sys.argv[3], sys.argv[4], 1) + + +if __name__ == '__main__': + main() +]]></include_file> + +<include_file name="b2-regexplace.sh" mode="0755"><![CDATA[ +#!/bin/sh + +# This fixes paths for the bcfg2 encap packaging. + +BASEDIR="`echo ${0} | xargs -n1 dirname`" +REGEXPLACE="${BASEDIR}/b2-regexplace.py" +PYTHON="/usr/local/lib/bcfg2/bin/python" +BINARIES="${REGEXPLACE} ${PYTHON}" +COMPILEALL="/usr/local/lib/bcfg2/lib/python2.4/compileall.py" + +printf "**** Running postinstall with BASEDIR=|${BASEDIR}|...\n" +for BINARY in ${BINARIES}; do + if [ ! -x ${BINARY} ]; then + printf "\nERROR: ${BINARY} is not executable, exiting...\n" + exit 1 + fi +done + +for FILE in ${COMPILEALL}; do + if [ ! -f ${FILE} ]; then + printf "\nERROR: ${FILE} does not exist, exiting...\n" + exit 1 + fi +done + +# Do not run more than once; it does not converge. +# (/usr/local/usr/local/bcfg2.conf bug) +if [ "${1}x" != "firstx" ]; then + printf "\nb2-regexplace.sh: Already ran\n\t${BASEDIR}/b2-regexplace.sh, not running again...\n" + exit 0 +fi + +printf "\nRemoving bcfg2 .pyc files...\n" +find ${BASEDIR} -type f | grep "\.pyc$" | xargs -n1 rm + +printf "\nFixing bcfg2 paths...\n" + +printf "\nReplacing \"/etc/bcfg2.conf\" with \"/usr/local/etc/bcfg2.conf\"...\n" +${REGEXPLACE} ${BASEDIR} .\* \/etc\/bcfg2.conf \/usr\/local\/etc\/bcfg2.conf + +printf "\nReplacing \"/local/sbin/epkg\" with \"/usr/local/bin/epkg\"...\n" +${REGEXPLACE} ${BASEDIR} .\* \/local\/sbin\/epkg \/usr\/local\/bin\/epkg + +printf "\nReplacing \"/usr/share/bcfg2\" with \"/usr/local/lib/bcfg2/share/bcfg2\"...\n" +${REGEXPLACE} ${BASEDIR} .\* \/usr\/share\/bcfg2\/ \/usr\/local\/lib\/bcfg2\/share\/bcfg2\/ + +printf "\nReplacing \"prefix = '/usr'\" with \"prefix = '/usr/local/lib/bcfg2'\"...\n" +${REGEXPLACE} ${BASEDIR} .\* prefix\ =\ \'\/usr\' prefix\ =\ \'/usr/local/lib/bcfg2\' + +printf "\nReplacing \"xmllint\" with \"/usr/local/bin/b2-xmllint\"...\n" +${REGEXPLACE} ${BASEDIR} .\* xmllint \/usr\/local\/bin\/b2-xmllint + +printf "\nReplacing \"#!/usr/bin/env python\" with " +printf "\"#!/usr/local/lib/bcfg2/bin/python\"...\n" +${REGEXPLACE} ${BASEDIR} .\* \#\!\/usr\/bin\/env\ python \#\!\/usr\/local\/lib\/bcfg2\/bin\/python + +printf "\nReplacing \"#!/usr/bin/perl\" with \"#!/usr/bin/env perl\"...\n" +${REGEXPLACE} ${BASEDIR} .\* \#\!\/usr\/bin\/perl \#\!\/usr\/bin\/env\ perl + +printf "\nReplacing \"#!/usr/bin/python\" with " +printf "\"#!/usr/local/lib/bcfg2/bin/python\"...\n" +${REGEXPLACE} ${BASEDIR} .\* \#\!\/usr\/bin\/python \#\!\/usr\/local\/lib\/bcfg2\/bin\/python + +printf "\nCreating bcfg2 .pyc files...\n" +${PYTHON} ${COMPILEALL} ${BASEDIR} + +exit 0 +]]></include_file> + +<include_file name="var/svc.d/bcfg2-client/bcfg2-client.sh" mode="0755"><![CDATA[ +#!/bin/sh + +# note: variables provided from environment with envdir: +# /usr/local/etc/default/bcfg2-client/env/OPTIONS +# /usr/local/etc/default/bcfg2-client/env/RUN_INTERVAL_SECONDS + +ENVDIR="/usr/local/etc/default/bcfg2-client/env" + +# make sure we have options +if [ ! -f ${ENVDIR}/OPTIONS ]; then + printf "WARNING: ${ENVDIR}/OPTIONS\n" + printf "WARNING: does not exist. Using default of \"-q -v -d -n\"\n" + OPTIONS="-q -v -d -n" +fi + +# make sure we have a sleep variable +if [ "${RUN_INTERVAL_SECONDS}x" = "x" ]; then + printf "WARNING: ${ENVDIR}/RUN_INTERVAL_SECONDS\n" + printf "WARNING: does not exist or has no value.\n" + printf "WARNING: Using default of 3600 seconds between runs.\n" + RUN_INTERVAL_SECONDS=3600 +fi + +# loop forever +while : +do + printf "*** starting /usr/local/bin/bcfg2 ${OPTIONS} ...\n" + /usr/local/bin/bcfg2 ${OPTIONS} + printf "*** sleeping ${RUN_INTERVAL_SECONDS} seconds ...\n" + sleep ${RUN_INTERVAL_SECONDS} +done + +exit 0 +]]></include_file> + +<include_file name="var/svc.d/bcfg2-client/run" mode="0755"><![CDATA[ +#!/bin/sh +exec 2>&1 +printf "*** exec /command/envdir /usr/local/etc/default/bcfg2-client/env ./bcfg2-client.sh ...\n" +exec /command/envdir /usr/local/etc/default/bcfg2-client/env ./bcfg2-client.sh +]]></include_file> + +<include_file name="var/svc.d/bcfg2-client/log/run" mode="0755"><![CDATA[ +#!/bin/sh +exec 2>&1 +exec /command/multilog t /usr/local/var/multilog/bcfg2-client +]]></include_file> + +<include_file name="var/svc.d/bcfg2-server/run" mode="0755"><![CDATA[ +#!/bin/sh +exec 2>&1 +/command/envdir /usr/local/etc/default/bcfg2-server/env /bin/sh -c '\ + printf "*** exec /usr/local/bin/bcfg2-server ${OPTIONS} ...\n"' +exec /command/envdir /usr/local/etc/default/bcfg2-server/env /bin/sh -c '\ + exec /usr/local/bin/bcfg2-server ${OPTIONS}' +]]></include_file> + +<include_file name="var/svc.d/bcfg2-server/log/run" mode="0755"><![CDATA[ +#!/bin/sh +exec 2>&1 +exec /command/multilog t /usr/local/var/multilog/bcfg2-server +]]></include_file> + +<include_file name="postinstall" mode="0755"><![CDATA[ +#!/bin/sh +BASEDIR="`echo ${0} | xargs -n1 dirname`" +MULTILOG="/usr/local/var/multilog" +DEFAULT="/usr/local/etc/default" + +# Fix paths +if [ ! -f ${BASEDIR}/postinstall.log ]; then + test -x ${BASEDIR}/b2-regexplace.sh || exit 1 + ${BASEDIR}/b2-regexplace.sh first > ${BASEDIR}/postinstall.log 2>&1 3>&1 +else + printf "\npostinstall: already ran\n\t${BASEDIR}/b2-regexplace.sh, not running again...\n" >> ${BASEDIR}/postinstall.log +fi + +# Make sure log directories exist +test -d /usr/local/var || mkdir /usr/local/var +test -d $MULTILOG || mkdir $MULTILOG +test -d $MULTILOG/bcfg2-client || mkdir $MULTILOG/bcfg2-client +test -d $MULTILOG/bcfg2-server || mkdir $MULTILOG/bcfg2-server + +# Make sure environment directories exist +test -d /usr/local/etc || mkdir /usr/local/etc +test -d $DEFAULT || mkdir $DEFAULT +test -d $DEFAULT/bcfg2-client || mkdir $DEFAULT/bcfg2-client +test -d $DEFAULT/bcfg2-client/env || mkdir $DEFAULT/bcfg2-client/env +test -d $DEFAULT/bcfg2-server || mkdir $DEFAULT/bcfg2-server +test -d $DEFAULT/bcfg2-server/env || mkdir $DEFAULT/bcfg2-server/env + +# Put in default client environment if it didn't exist +if [ ! -f $DEFAULT/bcfg2-client/.SENTINEL ]; then + touch $DEFAULT/bcfg2-client/.SENTINEL + echo "-q -v -d -n" > $DEFAULT/bcfg2-client/env/OPTIONS + echo "3600" > $DEFAULT/bcfg2-client/env/RUN_INTERVAL_SECONDS +fi + +# Put in default server environment if it didn't exist +if [ ! -f $DEFAULT/bcfg2-server/.SENTINEL ]; then + touch $DEFAULT/bcfg2-server/.SENTINEL + echo "-v" > $DEFAULT/bcfg2-server/env/OPTIONS +fi +]]></include_file> + + +<encapinfo> +description Bcfg2 - Provides a declarative interface to system configuration +prereq pkgspec >= bcfg2-zlib-1.2.3 +prereq pkgspec >= bcfg2-libiconv-1.9.2 +prereq pkgspec >= bcfg2-gettext-0.14.5 +prereq pkgspec >= bcfg2-openssl-0.9.8b +prereq pkgspec >= bcfg2-libstdc++-0.1 +prereq pkgspec >= bcfg2-libgcc-0.1 +prereq pkgspec >= bcfg2-python-2.4.3 +prereq pkgspec >= bcfg2-pyopenssl-0.6 +prereq pkgspec >= bcfg2-libxml2-2.6.26 +prereq pkgspec >= bcfg2-libxslt-1.1.17 +prereq pkgspec >= bcfg2-lxml-1.0.1 +</encapinfo> + +</encap_profile> diff --git a/encap/tools/bcfg2-client/bcfg2-gettext-0.14.5.ep b/encap/tools/bcfg2-client/bcfg2-gettext-0.14.5.ep new file mode 100644 index 000000000..eaf6b01e1 --- /dev/null +++ b/encap/tools/bcfg2-client/bcfg2-gettext-0.14.5.ep @@ -0,0 +1,79 @@ +<?xml version="1.0"?> + +<!-- $Id$ --> + +<encap_profile + profile_ver="1.0" + pkgspec="bcfg2-gettext-0.14.5" +> + +<environment + variable="CC" + value="gcc" + type="set" +/> + +<environment + variable="PATH" +PLATFORM_IF_MATCH(solaris) + value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:" +PLATFORM_ELSE + value="/usr/local/lib/bcfg2/bin:/usr/local/bin:" +PLATFORM_ENDIF + type="prepend" +/> + +PLATFORM_IF_MATCH(linux) +PLATFORM_ELSE +<environment + variable="MAKE" + value="gmake" + type="set" +/> +PLATFORM_ENDIF + +<environment + variable="LDFLAGS" +PLATFORM_IF_MATCH(linux) + value="-L/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib" +PLATFORM_ELSE_IF_MATCH(aix) + value="-L/usr/local/lib/bcfg2/lib -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/lib" +PLATFORM_ELSE_IF_MATCH(solaris) + value="-L/usr/local/lib/bcfg2/lib -R/usr/local/lib/bcfg2/lib:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/lib" +PLATFORM_ELSE +PLATFORM_ENDIF + type="set" +/> + +<environment + variable="CPPFLAGS" + value="-I/usr/local/lib/bcfg2/include" + type="set" +/> + +<source +url="http://www.pobox.com/users/dclark/mirror/gettext/gettext-0.14.5.tar.gz + http://ftp.gnu.org/pub/gnu/gettext/gettext-0.14.5.tar.gz" +> + +<configure> +./configure \ + --prefix="${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2" +</configure> + +</source> + +<prepackage type="set"> +# Make man pages available from /usr/local/lib/bcfg2/man +mv lib/bcfg2/share/man lib/bcfg2/ +# Other stuff... +mkdir var 2>/dev/null || exit 0 +mkdir var/encap 2>/dev/null || exit 0 +touch var/encap/${ENCAP_PKGNAME} +</prepackage> + +<encapinfo> +description Gettext - Tools to produce multi-lingual messages +</encapinfo> + +</encap_profile> diff --git a/encap/tools/bcfg2-client/bcfg2-libgcc-0.1.sh b/encap/tools/bcfg2-client/bcfg2-libgcc-0.1.sh new file mode 100755 index 000000000..d6de6c471 --- /dev/null +++ b/encap/tools/bcfg2-client/bcfg2-libgcc-0.1.sh @@ -0,0 +1,34 @@ +#!/bin/sh +# $Id$ + +# Creates encap of libgcc libraries from build machine so other machines +# don't need to have gcc installed, or in the case of GNU/Linux so we're +# using a consistant libgcc version everywhere. + +ENCAP_SOURCE=${ENCAPDIR} +ENCAP_PKGNAME=bcfg2-libgcc-0.1 +PATH=$PATH:/usr/local/bin +export PATH + +if [ "${ENCAP_SOURCE}x" = "x" ]; then + printf "Error in ${ENCAP_PKGNAME}.sh : ENCAPDIR not set, exiting...\n" + exit 1 +fi + +umask 022 + +CXXBASE=`which gcc | xargs dirname | xargs dirname` +for LIB in `cd ${CXXBASE} && find lib | grep libgcc`; do + cd ${CXXBASE} + LIBDIR=`dirname ${LIB}` + NEWDIR=${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2/${LIBDIR} + if [ ! -d ${NEWDIR} ]; then mkdir -p ${NEWDIR}; fi + cp -p ${LIB} ${NEWDIR} +done + +SDIR=${ENCAP_SOURCE}/${ENCAP_PKGNAME}/var/encap +mkdir -p ${SDIR} +touch ${SDIR}/${ENCAP_PKGNAME} + +exit 0 + diff --git a/encap/tools/bcfg2-client/bcfg2-libiconv-1.9.2.ep b/encap/tools/bcfg2-client/bcfg2-libiconv-1.9.2.ep new file mode 100644 index 000000000..b25f7090b --- /dev/null +++ b/encap/tools/bcfg2-client/bcfg2-libiconv-1.9.2.ep @@ -0,0 +1,79 @@ +<?xml version="1.0"?> + +<!-- $Id$ --> + +<encap_profile + profile_ver="1.0" + pkgspec="bcfg2-libiconv-1.9.2" +> + +<environment + variable="CC" + value="gcc" + type="set" +/> + +<environment + variable="PATH" +PLATFORM_IF_MATCH(solaris) + value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:" +PLATFORM_ELSE + value="/usr/local/lib/bcfg2/bin:/usr/local/bin:" +PLATFORM_ENDIF + type="prepend" +/> + +PLATFORM_IF_MATCH(linux) +PLATFORM_ELSE +<environment + variable="MAKE" + value="gmake" + type="set" +/> +PLATFORM_ENDIF + +<environment + variable="LDFLAGS" +PLATFORM_IF_MATCH(linux) + value="-L/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib" +PLATFORM_ELSE_IF_MATCH(aix) + value="-L/usr/local/lib/bcfg2/lib -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/lib" +PLATFORM_ELSE_IF_MATCH(solaris) + value="-L/usr/local/lib/bcfg2/lib -R/usr/local/lib/bcfg2/lib:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/lib" +PLATFORM_ELSE +PLATFORM_ENDIF + type="set" +/> + +<environment + variable="CPPFLAGS" + value="-I/usr/local/lib/bcfg2/include" + type="set" +/> + +<source +url="http://www.pobox.com/users/dclark/mirror/libiconv/libiconv-1.9.2.tar.gz + http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.9.2.tar.gz" +> + +<configure> +./configure \ + --prefix="${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2" +</configure> + +</source> + +<prepackage type="set"> +# Make man pages available from /usr/local/lib/bcfg2/man +mv lib/bcfg2/share/man lib/bcfg2/ +# Other stuff... +mkdir var 2>/dev/null || exit 0 +mkdir var/encap 2>/dev/null || exit 0 +touch var/encap/${ENCAP_PKGNAME} +</prepackage> + +<encapinfo> +description Libiconv - Converts between character encodings +</encapinfo> + +</encap_profile> diff --git a/encap/tools/bcfg2-client/bcfg2-libstdc++-0.1.sh b/encap/tools/bcfg2-client/bcfg2-libstdc++-0.1.sh new file mode 100755 index 000000000..6b3fe4a98 --- /dev/null +++ b/encap/tools/bcfg2-client/bcfg2-libstdc++-0.1.sh @@ -0,0 +1,34 @@ +#!/bin/sh +# $Id$ + +# Creates encap of libstdc++ libraries from build machine so other machines +# don't need to have g++ installed, or in the case of GNU/Linux so we're +# using a consistant libstdc++ version everywhere. + +ENCAP_SOURCE=${ENCAPDIR} +ENCAP_PKGNAME=bcfg2-libstdc++-0.1 +PATH=$PATH:/usr/local/bin +export PATH + +if [ "${ENCAP_SOURCE}x" = "x" ]; then + printf "Error in ${ENCAP_PKGNAME}.sh : ENCAPDIR not set, exiting...\n" + exit 1 +fi + +umask 022 + +CXXBASE=`which g++ | xargs dirname | xargs dirname` +for LIB in `cd ${CXXBASE} && find lib | grep libstdc++`; do + cd ${CXXBASE} + LIBDIR=`dirname ${LIB}` + NEWDIR=${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2/${LIBDIR} + if [ ! -d ${NEWDIR} ]; then mkdir -p ${NEWDIR}; fi + cp -p ${LIB} ${NEWDIR} +done + +SDIR=${ENCAP_SOURCE}/${ENCAP_PKGNAME}/var/encap +mkdir -p ${SDIR} +touch ${SDIR}/${ENCAP_PKGNAME} + +exit 0 + diff --git a/encap/tools/bcfg2-client/bcfg2-libxml2-2.6.26.ep b/encap/tools/bcfg2-client/bcfg2-libxml2-2.6.26.ep new file mode 100644 index 000000000..318f90787 --- /dev/null +++ b/encap/tools/bcfg2-client/bcfg2-libxml2-2.6.26.ep @@ -0,0 +1,86 @@ +<?xml version="1.0"?> + +<!-- $Id$ --> + +<encap_profile + profile_ver="1.0" + pkgspec="bcfg2-libxml2-2.6.26" +> + +<environment + variable="CC" + value="gcc" + type="set" +/> + +<environment + variable="PATH" +PLATFORM_IF_MATCH(solaris) + value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:" +PLATFORM_ELSE + value="/usr/local/lib/bcfg2/bin:/usr/local/bin:" +PLATFORM_ENDIF + type="prepend" +/> + +PLATFORM_IF_MATCH(linux) +PLATFORM_ELSE +<environment + variable="MAKE" + value="gmake" + type="set" +/> +PLATFORM_ENDIF + +<environment + variable="LDFLAGS" +PLATFORM_IF_MATCH(linux) + value="-L/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib" +PLATFORM_ELSE_IF_MATCH(aix) + value="-L/usr/local/lib/bcfg2/lib -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/lib" +PLATFORM_ELSE_IF_MATCH(solaris) + value="-L/usr/local/lib/bcfg2/lib -R/usr/local/lib/bcfg2/lib:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/lib" +PLATFORM_ELSE +PLATFORM_ENDIF + type="set" +/> + +<environment + variable="CPPFLAGS" + value="-I/usr/local/lib/bcfg2/include" + type="set" +/> + +<source +url="http://www.pobox.com/users/dclark/mirror/libxml2/libxml2-sources-2.6.26.tar.gz + ftp://xmlsoft.org/libxml2/libxml2-sources-2.6.26.tar.gz" +subdir="libxml2-2.6.26" +> + +<configure> +./configure \ + --prefix="${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2" \ +PLATFORM_IF_MATCH(aix) +PLATFORM_ELSE + --enable-shared \ +PLATFORM_ENDIF + --enable-ipv6=no \ + --with-python=/usr/local/lib/bcfg2 \ + --with-zlib=/usr/local/lib/bcfg2 +</configure> + +</source> + +<prepackage type="set"> +mkdir bin 2>/dev/null || exit 0 +ln -sf ../lib/bcfg2/bin/xmllint bin/b2-xmllint +mkdir var 2>/dev/null || exit 0 +mkdir var/encap 2>/dev/null || exit 0 +touch var/encap/${ENCAP_PKGNAME} +</prepackage> + +<encapinfo> +description Libxml2 - XML C library for the Gnome project +</encapinfo> + +</encap_profile> diff --git a/encap/tools/bcfg2-client/bcfg2-libxslt-1.1.17.ep b/encap/tools/bcfg2-client/bcfg2-libxslt-1.1.17.ep new file mode 100644 index 000000000..8845c4a4f --- /dev/null +++ b/encap/tools/bcfg2-client/bcfg2-libxslt-1.1.17.ep @@ -0,0 +1,89 @@ +<?xml version="1.0"?> + +<!-- $Id$ --> + +<encap_profile + profile_ver="1.0" + pkgspec="bcfg2-libxslt-1.1.17" +> + +<environment + variable="CC" + value="gcc" + type="set" +/> + +<environment + variable="PATH" +PLATFORM_IF_MATCH(solaris) + value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:" +PLATFORM_ELSE + value="/usr/local/lib/bcfg2/bin:/usr/local/bin:" +PLATFORM_ENDIF + type="prepend" +/> + +PLATFORM_IF_MATCH(linux) +PLATFORM_ELSE +<environment + variable="MAKE" + value="gmake" + type="set" +/> +PLATFORM_ENDIF + +<environment + variable="LDFLAGS" +PLATFORM_IF_MATCH(linux) + value="-L/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib" +PLATFORM_ELSE_IF_MATCH(aix) + value="-L/usr/local/lib/bcfg2/lib -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/lib" +PLATFORM_ELSE_IF_MATCH(solaris) + value="-L/usr/local/lib/bcfg2/lib -R/usr/local/lib/bcfg2/lib:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/lib" +PLATFORM_ELSE +PLATFORM_ENDIF + type="set" +/> + +<environment + variable="CPPFLAGS" + value="-I/usr/local/lib/bcfg2/include" + type="set" +/> + +<source +url="http://www.pobox.com/users/dclark/mirror/libxslt/libxslt-1.1.17.tar.gz + ftp://xmlsoft.org/libxml2/libxslt-1.1.17.tar.gz" +> + +<configure> +./configure \ + --prefix="${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2" \ +PLATFORM_IF_MATCH(aix) +PLATFORM_ELSE + --enable-shared \ +PLATFORM_ENDIF + --with-crypto=no \ + --with-libxml-prefix=/usr/local/lib/bcfg2 \ + --with-libxml-include-prefix=/usr/local/lib/bcfg2/include \ + --with-libxml-libs-prefix=/usr/local/lib/bcfg2/lib \ + --enable-ipv6=no \ + --with-python=/usr/local/lib/bcfg2 \ + --with-zlib=/usr/local/lib/bcfg2 +</configure> + +</source> + +<prepackage type="set"> +mv lib/bcfg2/lib/lib/python2.4 lib/bcfg2/lib +rmdir lib/bcfg2/lib/lib +mkdir var 2>/dev/null || exit 0 +mkdir var/encap 2>/dev/null || exit 0 +touch var/encap/${ENCAP_PKGNAME} +</prepackage> + +<encapinfo> +description Libxml2 - XML C library for the Gnome project +</encapinfo> + +</encap_profile> diff --git a/encap/tools/bcfg2-client/bcfg2-lxml-1.0.1.ep b/encap/tools/bcfg2-client/bcfg2-lxml-1.0.1.ep new file mode 100644 index 000000000..aa8e009e1 --- /dev/null +++ b/encap/tools/bcfg2-client/bcfg2-lxml-1.0.1.ep @@ -0,0 +1,94 @@ +<?xml version="1.0"?> + +<!-- $Id$ --> + +<encap_profile + profile_ver="1.0" + pkgspec="bcfg2-lxml-1.0.1" +> + +<environment + variable="CC" + value="gcc" + type="set" +/> + +<environment + variable="PATH" +PLATFORM_IF_MATCH(solaris) + value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:" +PLATFORM_ELSE + value="/usr/local/lib/bcfg2/bin:/usr/local/bin:" +PLATFORM_ENDIF + type="prepend" +/> + +PLATFORM_IF_MATCH(linux) +PLATFORM_ELSE +<environment + variable="MAKE" + value="gmake" + type="set" +/> +PLATFORM_ENDIF + +<environment + variable="LDFLAGS" +PLATFORM_IF_MATCH(linux) + value="-L/usr/local/lib/bcfg2/lib -lexslt -L/usr/local/lib/bcfg2/lib/python2.4/site-packages -Wl,-rpath,/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib/python2.4/site-packages" +PLATFORM_ELSE_IF_MATCH(aix) + value="-L/usr/local/lib/bcfg2/lib -lexslt -L/usr/local/lib/bcfg2/lib/python2.4/site-packages -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/local/lib/bcfg2/lib/python2.4/site-packages:/usr/lib" +PLATFORM_ELSE_IF_MATCH(solaris) + value="-L/usr/local/lib/bcfg2/lib -lexslt -L/usr/local/lib/bcfg2/lib/python2.4/site-packages -R/usr/local/lib/bcfg2/lib:/usr/local/lib/bcfg2/lib/python2.4/site-packages:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/local/lib/bcfg2/lib/python2.4/site-packages:/usr/lib" +PLATFORM_ELSE +PLATFORM_ENDIF + type="set" +/> + +<environment + variable="CPPFLAGS" + value="-I/usr/local/lib/bcfg2/include" + type="set" +/> + +<source +url="http://www.pobox.com/users/dclark/mirror/lxml/lxml-1.0.1.tgz + http://codespeak.net/lxml/lxml-1.0.1.tgz" +> + +<configure> +/usr/local/lib/bcfg2/bin/python setup.py build_ext \ +-I/usr/local/lib/bcfg2/include \ +-L/usr/local/lib/bcfg2/lib \ +-lexslt \ +-L/usr/local/lib/bcfg2/lib/python2.4/site-packages +</configure> + +<build> +/usr/local/lib/bcfg2/bin/python setup.py build \ +--build-base=${builddir}/build +</build> + +<install> +/usr/local/lib/bcfg2/bin/python setup.py install \ +--prefix=${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2 +</install> + +<clean> +/usr/local/lib/bcfg2/bin/python setup.py clean +make clean +</clean> + +</source> + +<prepackage type="set"> +mkdir var 2>/dev/null || exit 0 +mkdir var/encap 2>/dev/null || exit 0 +touch var/encap/${ENCAP_PKGNAME} +</prepackage> + +<encapinfo> +description lxml - A Pythonic binding for the libxml2 and libxslt libraries +</encapinfo> + +</encap_profile> diff --git a/encap/tools/bcfg2-client/bcfg2-openssl-0.9.8b.ep b/encap/tools/bcfg2-client/bcfg2-openssl-0.9.8b.ep new file mode 100644 index 000000000..2fa76160b --- /dev/null +++ b/encap/tools/bcfg2-client/bcfg2-openssl-0.9.8b.ep @@ -0,0 +1,89 @@ +<?xml version="1.0"?> + +<!-- $Id$ --> + +<encap_profile + profile_ver="1.0" + pkgspec="bcfg2-openssl-0.9.8b" +> + +<environment + variable="CC" + value="gcc" + type="set" +/> + +<environment + variable="PATH" +PLATFORM_IF_MATCH(solaris) + value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:" +PLATFORM_ELSE + value="/usr/local/lib/bcfg2/bin:/usr/local/bin:" +PLATFORM_ENDIF + type="prepend" +/> + +PLATFORM_IF_MATCH(linux) +PLATFORM_ELSE +<environment + variable="MAKE" + value="gmake" + type="set" +/> +PLATFORM_ENDIF + +<environment + variable="LDFLAGS" +PLATFORM_IF_MATCH(linux) + value="-L/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib" +PLATFORM_ELSE_IF_MATCH(aix) + value="-L/usr/local/lib/bcfg2/lib -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/lib" +PLATFORM_ELSE_IF_MATCH(solaris) + value="-L/usr/local/lib/bcfg2/lib -R/usr/local/lib/bcfg2/lib:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/lib" +PLATFORM_ELSE +PLATFORM_ENDIF + type="set" +/> + +<environment + variable="CPPFLAGS" + value="-I/usr/local/lib/bcfg2/include" + type="set" +/> + +<source +url="http://www.pobox.com/users/dclark/mirror/openssl/openssl-0.9.8b.tar.gz + http://www.openssl.org/source/openssl-0.9.8b.tar.gz" + use_objdir="no" +> + +<configure> +./config \ + --prefix="${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2" \ + zlib-dynamic shared \ + -L/usr/local/lib/bcfg2/lib \ + -I/usr/local/lib/bcfg2/include +</configure> + +<build type="append"> + ${MAKE} test +</build> + +</source> + +<prepackage> +# Make man pages available from /usr/local/lib/bcfg2/man +mv lib/bcfg2/ssl/man lib/bcfg2/ +# Other stuff... +mkdir bin 2>/dev/null || exit 0 +ln -sf ../lib/bcfg2/bin/openssl bin/b2-openssl +mkdir var 2>/dev/null || exit 0 +mkdir var/encap 2>/dev/null || exit 0 +touch var/encap/${ENCAP_PKGNAME} +</prepackage> + +<encapinfo> +description SSL encryption tool and library +</encapinfo> + +</encap_profile> diff --git a/encap/tools/bcfg2-client/bcfg2-pkg-config-0.20.ep b/encap/tools/bcfg2-client/bcfg2-pkg-config-0.20.ep new file mode 100644 index 000000000..62db17661 --- /dev/null +++ b/encap/tools/bcfg2-client/bcfg2-pkg-config-0.20.ep @@ -0,0 +1,77 @@ +<?xml version="1.0"?> + +<!-- $Id$ --> + +<encap_profile + profile_ver="1.0" + pkgspec="bcfg2-pkg-config-0.20" +> + +<environment + variable="CC" + value="gcc" + type="set" +/> + +<environment + variable="PATH" +PLATFORM_IF_MATCH(solaris) + value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:" +PLATFORM_ELSE + value="/usr/local/lib/bcfg2/bin:/usr/local/bin:" +PLATFORM_ENDIF + type="prepend" +/> + +PLATFORM_IF_MATCH(linux) +PLATFORM_ELSE +<environment + variable="MAKE" + value="gmake" + type="set" +/> +PLATFORM_ENDIF + +<environment + variable="LDFLAGS" +PLATFORM_IF_MATCH(linux) + value="-L/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib" +PLATFORM_ELSE_IF_MATCH(aix) + value="-L/usr/local/lib/bcfg2/lib -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/lib" +PLATFORM_ELSE_IF_MATCH(solaris) + value="-L/usr/local/lib/bcfg2/lib -R/usr/local/lib/bcfg2/lib:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/lib" +PLATFORM_ELSE +PLATFORM_ENDIF + type="set" +/> + +<environment + variable="CPPFLAGS" + value="-I/usr/local/lib/bcfg2/include" + type="set" +/> + +<source +url="http://www.pobox.com/users/dclark/mirror/pkg-config/pkg-config-0.20.tar.gz + http://pkgconfig.freedesktop.org/releases/pkg-config-0.20.tar.gz" +> + +<configure> +./configure \ + --prefix="${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2" \ + --with-pc-path=/usr/local/lib/bcfg2/lib/pkgconfig +</configure> + +</source> + +<prepackage type="set"> +mkdir var 2>/dev/null || exit 0 +mkdir var/encap 2>/dev/null || exit 0 +touch var/encap/${ENCAP_PKGNAME} +</prepackage> + +<encapinfo> +description pkg-config - application and library compilation helper tool +</encapinfo> + +</encap_profile> diff --git a/encap/tools/bcfg2-client/bcfg2-pyopenssl-0.6.ep b/encap/tools/bcfg2-client/bcfg2-pyopenssl-0.6.ep new file mode 100644 index 000000000..7f9fa97f6 --- /dev/null +++ b/encap/tools/bcfg2-client/bcfg2-pyopenssl-0.6.ep @@ -0,0 +1,91 @@ +<?xml version="1.0"?> + +<!-- $Id$ --> + +<encap_profile + profile_ver="1.0" + pkgspec="bcfg2-pyopenssl-0.6" +> + +<environment + variable="CC" + value="gcc" + type="set" +/> + +<environment + variable="PATH" +PLATFORM_IF_MATCH(solaris) + value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:" +PLATFORM_ELSE + value="/usr/local/lib/bcfg2/bin:/usr/local/bin:" +PLATFORM_ENDIF + type="prepend" +/> + +PLATFORM_IF_MATCH(linux) +PLATFORM_ELSE +<environment + variable="MAKE" + value="gmake" + type="set" +/> +PLATFORM_ENDIF + +<environment + variable="LDFLAGS" +PLATFORM_IF_MATCH(linux) + value="-L/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib" +PLATFORM_ELSE_IF_MATCH(aix) + value="-L/usr/local/lib/bcfg2/lib -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/lib" +PLATFORM_ELSE_IF_MATCH(solaris) + value="-L/usr/local/lib/bcfg2/lib -R/usr/local/lib/bcfg2/lib:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/lib" +PLATFORM_ELSE +PLATFORM_ENDIF + type="set" +/> + +<environment + variable="CPPFLAGS" + value="-I/usr/local/lib/bcfg2/include" + type="set" +/> + +<source +url="http://www.pobox.com/users/dclark/mirror/pyopenssl/pyOpenSSL-0.6.tar.gz + http://umn.dl.sourceforge.net/sourceforge/pyopenssl/pyOpenSSL-0.6.tar.gz" +> + +<configure> +/usr/local/lib/bcfg2/bin/python setup.py build_ext \ +-I/usr/local/lib/bcfg2/include/openssl \ +-L/usr/local/lib/bcfg2/lib/ +</configure> + +<build> +/usr/local/lib/bcfg2/bin/python setup.py build \ +--build-base=${builddir}/build +</build> + +<install> +/usr/local/lib/bcfg2/bin/python setup.py install \ +--prefix=${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2 +</install> + +<clean> +/usr/local/lib/bcfg2/bin/python setup.py clean +</clean> + +</source> + +<prepackage type="set"> +mkdir var 2>/dev/null || exit 0 +mkdir var/encap 2>/dev/null || exit 0 +touch var/encap/${ENCAP_PKGNAME} +</prepackage> + +<encapinfo> +description pyOpenSSL - Python interface to the OpenSSL library +</encapinfo> + +</encap_profile> diff --git a/encap/tools/bcfg2-client/bcfg2-pyrex-0.9.4.1.ep b/encap/tools/bcfg2-client/bcfg2-pyrex-0.9.4.1.ep new file mode 100644 index 000000000..8fcc80449 --- /dev/null +++ b/encap/tools/bcfg2-client/bcfg2-pyrex-0.9.4.1.ep @@ -0,0 +1,90 @@ +<?xml version="1.0"?> + +<!-- $Id$ --> + +<encap_profile + profile_ver="1.0" + pkgspec="bcfg2-pyrex-0.9.4.1" +> + +<environment + variable="CC" + value="gcc" + type="set" +/> + +<environment + variable="PATH" +PLATFORM_IF_MATCH(solaris) + value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:" +PLATFORM_ELSE + value="/usr/local/lib/bcfg2/bin:/usr/local/bin:" +PLATFORM_ENDIF + type="prepend" +/> + +PLATFORM_IF_MATCH(linux) +PLATFORM_ELSE +<environment + variable="MAKE" + value="gmake" + type="set" +/> +PLATFORM_ENDIF + +<environment + variable="LDFLAGS" +PLATFORM_IF_MATCH(linux) + value="-L/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib" +PLATFORM_ELSE_IF_MATCH(aix) + value="-L/usr/local/lib/bcfg2/lib -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/lib" +PLATFORM_ELSE_IF_MATCH(solaris) + value="-L/usr/local/lib/bcfg2/lib -R/usr/local/lib/bcfg2/lib:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/lib" +PLATFORM_ELSE +PLATFORM_ENDIF + type="set" +/> + +<environment + variable="CPPFLAGS" + value="-I/usr/local/lib/bcfg2/include" + type="set" +/> + +<source +url="http://www.pobox.com/users/dclark/mirror/pyrex/Pyrex-0.9.4.1.tar.gz + http://www.cosc.canterbury.ac.nz/~greg/python/Pyrex/Pyrex-0.9.4.1.tar.gz" +> + +<configure> +: +</configure> + +<build> +/usr/local/lib/bcfg2/bin/python setup.py build \ +--build-base=${builddir}/build +</build> + +<install> +/usr/local/lib/bcfg2/bin/python setup.py install \ +--prefix=${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2 \ +</install> + +<clean> +/usr/local/lib/bcfg2/bin/python setup.py clean +</clean> + +</source> + +<prepackage type="set"> +chmod -R o+r lib/bcfg2 +mkdir var 2>/dev/null || exit 0 +mkdir var/encap 2>/dev/null || exit 0 +touch var/encap/${ENCAP_PKGNAME} +</prepackage> + +<encapinfo> +description Pyrex - a Language for Writing Python Extension Modules +</encapinfo> + +</encap_profile> diff --git a/encap/tools/bcfg2-client/bcfg2-python-2.4.3.ep b/encap/tools/bcfg2-client/bcfg2-python-2.4.3.ep new file mode 100644 index 000000000..f62184a08 --- /dev/null +++ b/encap/tools/bcfg2-client/bcfg2-python-2.4.3.ep @@ -0,0 +1,98 @@ +<?xml version="1.0"?> + +<!-- $Id$ --> + +<encap_profile + profile_ver="1.0" + pkgspec="bcfg2-python-2.4.3" +> + +<environment + variable="CC" + value="gcc" + type="set" +/> + +<environment + variable="PATH" +PLATFORM_IF_MATCH(solaris) + value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:" +PLATFORM_ELSE + value="/usr/local/lib/bcfg2/bin:/usr/local/bin:" +PLATFORM_ENDIF + type="prepend" +/> + +PLATFORM_IF_MATCH(linux) +PLATFORM_ELSE +<environment + variable="MAKE" + value="gmake" + type="set" +/> +PLATFORM_ENDIF + +<environment + variable="LDFLAGS" +PLATFORM_IF_MATCH(linux) + value="-L/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib" +PLATFORM_ELSE_IF_MATCH(aix) + value="-L/usr/local/lib/bcfg2/lib -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/lib" +PLATFORM_ELSE_IF_MATCH(solaris) + value="-L/usr/local/lib/bcfg2/lib -R/usr/local/lib/bcfg2/lib:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/lib" +PLATFORM_ELSE +PLATFORM_ENDIF + type="set" +/> + +<environment + variable="CPPFLAGS" + value="-I/usr/local/lib/bcfg2/include" + type="set" +/> + +<source + url="http://www.pobox.com/users/dclark/mirror/python/Python-2.4.3.tgz + http://www.python.org/ftp/python/2.4.3/Python-2.4.3.tgz" +> + +<configure> +cat setup.py \ +| sed s:\/usr\/local\/:\/usr\/local\/lib\/bcfg2\/:g \ +| sed s:\/usr\/local\/lib\/bcfg2\/ssl\/include:\/usr\/local\/lib\/bcfg2\/include:g \ +| sed s:\/usr\/contrib\/ssl\/include\/:\/usr\/local\/lib\/bcfg2\/include\/openssl\/:g \ +| sed s:\/usr\/local\/lib\/bcfg2\/ssl\/lib:\/usr\/local\/lib\/bcfg2\/lib:g \ +> setup.py.bcfg2 +mv setup.py setup.py.orig +cp setup.py.bcfg2 setup.py +./configure \ + --prefix="${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2" \ +PLATFORM_IF_MATCH(linux) +PLATFORM_ELSE + --with-gcc \ + --with-cxx=g++ \ +PLATFORM_ENDIF + --enable-shared=yes \ + --disable-ipv6 +</configure> + +</source> + +<prepackage><![CDATA[ +rm ${builddir}/setup.py +cp ${builddir}/setup.py.orig ${builddir}/setup.py +echo /usr/local/lib/bcfg2/lib/python2.4/site-packages > lib/bcfg2/lib/python2.4/site-packages/usr-local-lib-bcfg2.pth +mkdir bin 2>/dev/null || exit 0 +ln -sf ../lib/bcfg2/bin/idle bin/b2-idle +ln -sf ../lib/bcfg2/bin/pydoc bin/b2-pydoc +ln -sf ../lib/bcfg2/bin/python bin/b2-python +mkdir var 2>/dev/null || exit 0 +mkdir var/encap 2>/dev/null || exit 0 +touch var/encap/${ENCAP_PKGNAME} +]]></prepackage> + +<encapinfo> +description Python - Scripting language +</encapinfo> + +</encap_profile> diff --git a/encap/tools/bcfg2-client/bcfg2-zlib-1.2.3.ep b/encap/tools/bcfg2-client/bcfg2-zlib-1.2.3.ep new file mode 100644 index 000000000..cba36bfb3 --- /dev/null +++ b/encap/tools/bcfg2-client/bcfg2-zlib-1.2.3.ep @@ -0,0 +1,90 @@ +<?xml version="1.0"?> + +<!-- $Id$ --> + +<encap_profile + profile_ver="1.0" + pkgspec="bcfg2-zlib-1.2.3" +> + +<environment + variable="CC" + value="gcc" + type="set" +/> + +<environment + variable="PATH" +PLATFORM_IF_MATCH(solaris) + value="/usr/local/lib/bcfg2/bin:/usr/local/bin:/usr/sfw/bin:/usr/ccs/bin:" +PLATFORM_ELSE + value="/usr/local/lib/bcfg2/bin:/usr/local/bin:" +PLATFORM_ENDIF + type="prepend" +/> + +PLATFORM_IF_MATCH(linux) +PLATFORM_ELSE +<environment + variable="MAKE" + value="gmake" + type="set" +/> +PLATFORM_ENDIF + +<environment + variable="LDFLAGS" +PLATFORM_IF_MATCH(linux) + value="-L/usr/local/lib/bcfg2/lib -Wl,-rpath,/usr/local/lib/bcfg2/lib" +PLATFORM_ELSE_IF_MATCH(aix) + value="-L/usr/local/lib/bcfg2/lib -Wl,-blibpath:/usr/local/lib/bcfg2/lib:/usr/lib" +PLATFORM_ELSE_IF_MATCH(solaris) + value="-L/usr/local/lib/bcfg2/lib -R/usr/local/lib/bcfg2/lib:/usr/lib -YP,/usr/local/lib/bcfg2/lib:/usr/lib" +PLATFORM_ELSE +PLATFORM_ENDIF + type="set" +/> + +<environment + variable="CPPFLAGS" + value="-I/usr/local/lib/bcfg2/include" + type="set" +/> + +PLATFORM_IF_MATCH(solaris) +<environment + variable="CFLAGS" + type="unset" +/> +PLATFORM_ENDIF + +<source + url="http://www.pobox.com/users/dclark/mirror/zlib/zlib-1.2.3.tar.gz + http://www.zlib.net/zlib-1.2.3.tar.gz" +> + +<configure> +./configure \ +PLATFORM_IF_MATCH(aix) +PLATFORM_ELSE + --shared \ +PLATFORM_ENDIF + --prefix="${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2" +</configure> + +</source> + +<prepackage type="set"> +# Make man pages available from /usr/local/lib/bcfg2/man +mv lib/bcfg2/share/man lib/bcfg2/ +# Other stuff... +mkdir var 2>/dev/null || exit 0 +mkdir var/encap 2>/dev/null || exit 0 +touch var/encap/${ENCAP_PKGNAME} +</prepackage> + +<encapinfo> +description Zlib compression library +</encapinfo> + +</encap_profile> diff --git a/encap/tools/bcfg2-client/m4-1.4.4.sh b/encap/tools/bcfg2-client/m4-1.4.4.sh new file mode 100755 index 000000000..b424007eb --- /dev/null +++ b/encap/tools/bcfg2-client/m4-1.4.4.sh @@ -0,0 +1,74 @@ +#!/bin/sh +# $Id$ + +ENCAP_PKGNAME=m4-1.4.4 +PATH=$PATH:/usr/local/bin +export PATH + +cat > ${ENCAP_PKGNAME}.ep << EOF +<?xml version="1.0"?> + +<encap_profile + profile_ver="1.0" + pkgspec="m4-1.4.4" +> + +<environment + variable="CC" + value="gcc" + type="set" +/> + +<environment + variable="PATH" + value="/usr/local/bin:" + type="prepend" +/> + + +<environment + variable="PATH" + value=":/usr/sfw/bin:/usr/ccs/bin" + type="append" +/> + +<source + url="http://www.pobox.com/users/dclark/mirror/m4/m4-1.4.4.tar.gz + http://ftp.gnu.org/gnu/m4/m4-1.4.4.tar.gz" +> + +</source> + +<prepackage type="set"> +mkdir var 2>/dev/null || exit 0 +mkdir var/encap 2>/dev/null || exit 0 +touch var/encap/${ENCAP_PKGNAME} +</prepackage> + +<encapinfo> +description m4 - GNU implementation of the traditional Unix macro processor +</encapinfo> + +</encap_profile> +EOF + +cat > m4-fake << EOF +#!/bin/sh +cat \$4 +EOF + +chmod 755 m4-fake + +( ${MKENCAP} -m ${PWD}/m4-fake -b -DUP ${ENCAP_PKGNAME}.ep || true ) \ + > ${ENCAP_PKGNAME}.log 2>&1 + +( ${MKENCAP} -m ${PWD}/m4-fake -b -T ${ENCAP_PKGNAME}.ep || true ) \ + >> ${ENCAP_PKGNAME}.log 2>&1 + +( ${MKENCAP} -m ${PWD}/m4-fake -b -CBI ${ENCAP_PKGNAME}.ep ) \ + >> ${ENCAP_PKGNAME}.log 2>&1 + +rm m4-fake +rm ${ENCAP_PKGNAME}.ep + +exit 0 |