From a2c95fd54ba85609df061ea917af82f6b62e41ab Mon Sep 17 00:00:00 2001 From: Daniel Joseph Barnhart Clark Date: Sun, 9 Jul 2006 20:39:58 +0000 Subject: Initial checkin of bcfg2-encap-boostrap code to mcs svn. git-svn-id: https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2@1917 ce84e21b-d406-0410-9b95-82705330c041 --- encap/Makefile | 112 ++++++++++++++++++++++++++++++++++++ encap/README | 101 ++++++++++++++++++++++++++++++++ encap/bcfg2-0.8.2pre6.profile | 104 +++++++++++++++++++++++++++++++++ encap/bcfg2-gettext-0.14.5.profile | 69 ++++++++++++++++++++++ encap/bcfg2-libgcc-0.1.sh | 34 +++++++++++ encap/bcfg2-libiconv-1.9.2.profile | 69 ++++++++++++++++++++++ encap/bcfg2-libstdc++-0.1.sh | 34 +++++++++++ encap/bcfg2-libxml2-2.6.26.profile | 77 +++++++++++++++++++++++++ encap/bcfg2-libxslt-1.1.17.profile | 82 ++++++++++++++++++++++++++ encap/bcfg2-lxml-1.0.1.profile | 87 ++++++++++++++++++++++++++++ encap/bcfg2-openssl-0.9.8b.profile | 75 ++++++++++++++++++++++++ encap/bcfg2-pkg-config-0.20.profile | 70 ++++++++++++++++++++++ encap/bcfg2-pyopenssl-0.6.profile | 84 +++++++++++++++++++++++++++ encap/bcfg2-pyrex-0.9.4.1.profile | 83 ++++++++++++++++++++++++++ encap/bcfg2-python-2.4.3.profile | 80 ++++++++++++++++++++++++++ encap/bcfg2-zlib-1.2.3.profile | 73 +++++++++++++++++++++++ encap/m4-1.4.4.sh | 66 +++++++++++++++++++++ 17 files changed, 1300 insertions(+) create mode 100644 encap/Makefile create mode 100644 encap/README create mode 100644 encap/bcfg2-0.8.2pre6.profile create mode 100644 encap/bcfg2-gettext-0.14.5.profile create mode 100755 encap/bcfg2-libgcc-0.1.sh create mode 100644 encap/bcfg2-libiconv-1.9.2.profile create mode 100755 encap/bcfg2-libstdc++-0.1.sh create mode 100644 encap/bcfg2-libxml2-2.6.26.profile create mode 100644 encap/bcfg2-libxslt-1.1.17.profile create mode 100644 encap/bcfg2-lxml-1.0.1.profile create mode 100644 encap/bcfg2-openssl-0.9.8b.profile create mode 100644 encap/bcfg2-pkg-config-0.20.profile create mode 100644 encap/bcfg2-pyopenssl-0.6.profile create mode 100644 encap/bcfg2-pyrex-0.9.4.1.profile create mode 100644 encap/bcfg2-python-2.4.3.profile create mode 100644 encap/bcfg2-zlib-1.2.3.profile create mode 100755 encap/m4-1.4.4.sh diff --git a/encap/Makefile b/encap/Makefile new file mode 100644 index 000000000..515fe81b1 --- /dev/null +++ b/encap/Makefile @@ -0,0 +1,112 @@ +# $Id$ + +.PHONY : all install clean uninstall encaps rename +.SUFFIXES : +.SUFFIXES : .profile .sh .e .ep + +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.2pre6 + +.profile.e : # Clean, compile and install an encap package + @printf "***** START .profile.e for |$*| ***** \n" + ( ${EPKG} -q -r ${ENCAPDIR}/$* || true ) + ( rm -rf ${ENCAPDIR}/$* || true ) + ( ${MKENCAP} -m /usr/local/bin/m4 -b -DUP $*.profile || true ) > $*.log 2>&1 + ( ${MKENCAP} -m /usr/local/bin/m4 -b -T $*.profile || true ) >> $*.log 2>&1 + ( ${MKENCAP} -m /usr/local/bin/m4 -b -CBI $*.profile ) >> $*.log 2>&1 + ${EPKG} -q -i ${ENCAPDIR}/$* + test -h ${BASEDIR}/var/encap/$* + touch $*.e + @printf "***** STOP .profile.e for |$*| ***** \n" + +.sh.e : # Create and install a "fake" encap package + @printf "***** START .sh.e for |$*| ***** \n" + ( ${EPKG} -q -r ${ENCAPDIR}/$* || true ) + ( rm -rf ${ENCAPDIR}/$* || true ) + ./$*.sh + ${EPKG} -q -i ${ENCAPDIR}/$* + test -h ${BASEDIR}/var/encap/$* + touch $*.e + @printf "***** STOP .sh.e for |$*| ***** \n" + +.e.ep : # Create .tar.gz encap packages for distribution to other machines + @printf "***** START .e.ep for |$*| ***** \n" + ( rm ${ENCAPDIR}/$*-*.tar.gz || true ) + ( cd ${ENCAPDIR} && ${MKENCAP} -e $* || true ) + cd ${ENCAPDIR} && ${MKENCAP} -c $* + mv ${ENCAPDIR}/$*-encap-*.tar.gz . + touch $*.ep + @printf "***** STOP .e.ep for |$*| ***** \n" + +all : + ( $(MAKE) install > make.log 2>&1 && $(MAKE) encaps >> make.log 2>&1 ) & + +install : ${EPKG} ${MKENCAP} ${BCFG2}.e + +encaps : ${EPKG} ${MKENCAP} ${BCFG2}.ep + +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 *.ep || true ) + ( rm *.gz || true ) + +uninstall : clean + ( rm *.e || true ) + ( ${EPKG} -q -r ${ENCAPDIR}/bcfg2-* || true ) + ( rm -rf ${ENCAPDIR}/bcfg2-* || true ) + ( rm -rf ${BASEDIR}/lib/bcfg2 || true ) + +${ZLIB}.e : ${M4}.e +${LIBICONV}.e : ${ZLIB}.e +${GETTEXT}.e : ${LIBICONV}.e +${PKG-CONFIG}.e : ${GETTEXT}.e +${OPENSSL}.e : ${PKG-CONFIG}.e +${LIBSTDCXX}.e : ${OPENSSL}.e +${LIBGCC}.e : ${LIBSTDCXX}.e +${PYTHON}.e : ${LIBGCC}.e +${PYREX}.e : ${PYTHON}.e +${PYOPENSSL}.e : ${PYREX}.e +${LIBXML2}.e : ${PYOPENSSL}.e +${LIBXSLT}.e : ${LIBXML2}.e +${LXML}.e : ${LIBXSLT}.e +${BCFG2}.e : ${LXML}.e + +${LIBICONV}.ep : ${ZLIB}.ep +${GETTEXT}.ep : ${LIBICONV}.ep +${OPENSSL}.ep : ${GETTEXT}.ep +${LIBSTDCXX}.ep : ${OPENSSL}.ep +${LIBGCC}.ep : ${LIBSTDCXX}.ep +${PYTHON}.ep : ${LIBGCC}.ep +${PYOPENSSL}.ep : ${PYTHON}.ep +${LIBXML2}.ep : ${PYOPENSSL}.ep +${LIBXSLT}.ep : ${LIBXML2}.ep +${LXML}.ep : ${LIBXSLT}.ep +${BCFG2}.ep : ${LXML}.ep + diff --git a/encap/README b/encap/README new file mode 100644 index 000000000..0e9f49e78 --- /dev/null +++ b/encap/README @@ -0,0 +1,101 @@ += Encap based bootstrap for bcfg2 and complete bcfg2 client toolchain = + +The bcfg2-encap-bootstrap package is a method for getting bcfg2 (as a +client), including all dependencies, up and running on a new platform as +quickly as possible. + +It is available from: + * http://www.pobox.com/users/dclark/bcfg2/bcfg2-encap-bootstrap + +Using the encap package manager it automatically downloads, builds and +creates encap packages for bcfg2 and dependencies to `/usr/local/encap`, and +installs symbolic links to these packages from `/usr/local` (the usual encap +thing). + +It attempts to be as self contained as possible; everything gets linked to +under `/usr/local/lib/bcfg2`, except for bcfg2 itself and some dependent +software, which is prefixed by `b2` (`b2openssl`, `b2python` etc.). + +Note that to run the bcfg2 server, you also need to install gamin, which +supports a subset of the platforms bcfg2 client will work on, including +GNU/Linux and FreeBSD. + +== Building and installing everything == + 1. Make sure all of the Prerequisites (see below) are installed. + 1. The build user needs write access to the encap source and build + directories. By default, these are `/usr/local/encap` and + `/usr/local/src`. If you like to live dangerously, you can also just do + the builds as `root`. + 1. Run `make`. This will kick off and background the entire build process. + Make output will be redirected to `make.log`, and package build output + will go to individual log files. + 1. If everything goes well, try running "`bcfg2-repo-validate`". This should + not generate a python traceback :-) + 1. You now have *-encap-*.tar.gz encap packages you can distribute to other + machines. If you don't like the OS name encap uses automatically (esp. + on GNU/Linux these can be too generic), do `make rename OS=somestring`. + +== Prerequisites == + * GNU gcc and GNU g++ + * GNU make (make sure "gmake" links to GNU make on non-GNU platforms) + * epkg from http://www.encap.org/epkg/ + * If built from source, first need all recommended libraries from web page + +You will need binaries of the GNU tools. For GNU and BSD based operating +systems, you should be able to get these via the operating system's package +system. For commercial operating systems, these can be obtained from: + + AIX:: + * UCLA's Public Domain Software Library for AIX at + http://aixpdslib.seas.ucla.edu/aixpdslib.html + (These are trivial to convert into encap packages) + * Bull AIX Freeware at http://www.bullfreeware.com/ + + Solaris:: + * Freeware for Solaris at http://www.sunfreeware.com/ + * Community Software for Solaris at http://www.blastwave.org/packages.php + +== Supported Platforms == +Below is a table of platforms that have been successfully bootstrapped using +this code. + +|| OS || Vendor || Version || Arch || GCC || By || +|| AIX || IBM || 5.3 || POWER || 4.1.0 || dc || +|| GNU/Linux || Debian || Sarge || i386 || 3.3.5 || dc || +|| GNU/Linux || Debian || Sid || i386 || 4.1.2 || dc || + +dc: "Daniel Clark" + +If you bootstrap a platform not listed above, please send email to Daniel +Clark so that platform can be added to the +list. If you modified any of the files in this package to be able to +bootstrap the new platform, please include either diffs or a tarball of your +modified version so your changes can be incorporated into a new release. Any +other notes, such as where you got the GNU binaries or any issues people +should be aware of, would be appreciated. + +You may want to scan all of the bootstrapped binaries and libraries with +`ldd` (or equivalent) to make sure there are no dependencies on libraries +other than those included with the base operating system and the libraries +built as part of the bootstrap process. + +On non-GNU operating systems, libgcc and libstdc++ are a run-time +requirement. These libraries are usually distributed with gcc/g++, so the +bootstrap system attempts to create encap packages containing those +libraries by copying them from the build machine. To test that this worked, +you'll want to either temporarily remove gcc/g++ from the build machine and +make sure everything still works, or install the bcfg2-*.tar.gz encap +packages on a "clean" machine (without a gcc/g++ install) and test on that +machine. + +Note that the doc for the encap profile format is in "man 5 encap_profile". + +== Release Notes == + 0.1:: + * Initial Released Version + * Work needs to be done to minimize size of distribution. In 0.1 + libraries and binaries are not stripped, and there is a lot of + pruning that can be done of individual packages. + +== Documentation Version == +$Id$ diff --git a/encap/bcfg2-0.8.2pre6.profile b/encap/bcfg2-0.8.2pre6.profile new file mode 100644 index 000000000..ee1139f38 --- /dev/null +++ b/encap/bcfg2-0.8.2pre6.profile @@ -0,0 +1,104 @@ + + + + + + + + + + +PLATFORM_IF_MATCH(linux) +PLATFORM_ELSE + +PLATFORM_ENDIF + + + + + + + + +: + + + +/usr/local/lib/bcfg2/bin/python setup.py build \ +--build-base=${builddir}/build + + + +/usr/local/lib/bcfg2/bin/python setup.py install \ +--prefix=${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2 + + + +/usr/local/lib/bcfg2/bin/python setup.py clean + + + + +/dev/null || exit 0 +ln -sf ../lib/bcfg2/bin/GenerateHostInfo bin/ +ln -sf ../lib/bcfg2/bin/StatReports bin/ +ln -sf ../lib/bcfg2/bin/bcfg2 bin/ +ln -sf ../lib/bcfg2/bin/bcfg2-info bin/ +ln -sf ../lib/bcfg2/bin/bcfg2-repo-validate bin/ +ln -sf ../lib/bcfg2/bin/bcfg2-server bin/ +mkdir share 2>/dev/null || exit 0 +mkdir share/bcfg2 2>/dev/null || exit 0 +cp ${builddir}/doc/manual.pdf share/bcfg2/ +cp -r ${builddir}/examples share/bcfg2/ +mkdir var 2>/dev/null || exit 0 +mkdir var/encap 2>/dev/null || exit 0 +touch var/encap/${ENCAP_PKGNAME} +]]> + + +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 + + + diff --git a/encap/bcfg2-gettext-0.14.5.profile b/encap/bcfg2-gettext-0.14.5.profile new file mode 100644 index 000000000..925aa42fc --- /dev/null +++ b/encap/bcfg2-gettext-0.14.5.profile @@ -0,0 +1,69 @@ + + + + + + + + + + +PLATFORM_IF_MATCH(linux) +PLATFORM_ELSE + +PLATFORM_ENDIF + + + + + + + + +./configure \ + --prefix="${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2" + + + + + +mkdir var 2>/dev/null || exit 0 +mkdir var/encap 2>/dev/null || exit 0 +touch var/encap/${ENCAP_PKGNAME} + + + +description Gettext - Tools to produce multi-lingual messages + + + diff --git a/encap/bcfg2-libgcc-0.1.sh b/encap/bcfg2-libgcc-0.1.sh new file mode 100755 index 000000000..d6de6c471 --- /dev/null +++ b/encap/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/bcfg2-libiconv-1.9.2.profile b/encap/bcfg2-libiconv-1.9.2.profile new file mode 100644 index 000000000..d34f6512c --- /dev/null +++ b/encap/bcfg2-libiconv-1.9.2.profile @@ -0,0 +1,69 @@ + + + + + + + + + + +PLATFORM_IF_MATCH(linux) +PLATFORM_ELSE + +PLATFORM_ENDIF + + + + + + + + +./configure \ + --prefix="${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2" + + + + + +mkdir var 2>/dev/null || exit 0 +mkdir var/encap 2>/dev/null || exit 0 +touch var/encap/${ENCAP_PKGNAME} + + + +description Libiconv - Converts between character encodings + + + diff --git a/encap/bcfg2-libstdc++-0.1.sh b/encap/bcfg2-libstdc++-0.1.sh new file mode 100755 index 000000000..6b3fe4a98 --- /dev/null +++ b/encap/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/bcfg2-libxml2-2.6.26.profile b/encap/bcfg2-libxml2-2.6.26.profile new file mode 100644 index 000000000..0321f30df --- /dev/null +++ b/encap/bcfg2-libxml2-2.6.26.profile @@ -0,0 +1,77 @@ + + + + + + + + + + +PLATFORM_IF_MATCH(linux) +PLATFORM_ELSE + +PLATFORM_ENDIF + + + + + + + + +./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 + + + + + +mkdir var 2>/dev/null || exit 0 +mkdir var/encap 2>/dev/null || exit 0 +touch var/encap/${ENCAP_PKGNAME} + + + +description Libxml2 - XML C library for the Gnome project + + + diff --git a/encap/bcfg2-libxslt-1.1.17.profile b/encap/bcfg2-libxslt-1.1.17.profile new file mode 100644 index 000000000..4c321d77d --- /dev/null +++ b/encap/bcfg2-libxslt-1.1.17.profile @@ -0,0 +1,82 @@ + + + + + + + + + + +PLATFORM_IF_MATCH(linux) +PLATFORM_ELSE + +PLATFORM_ENDIF + + + + + + + + +./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 + + + + + +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} + + + +description Libxml2 - XML C library for the Gnome project + + + diff --git a/encap/bcfg2-lxml-1.0.1.profile b/encap/bcfg2-lxml-1.0.1.profile new file mode 100644 index 000000000..a78e14b75 --- /dev/null +++ b/encap/bcfg2-lxml-1.0.1.profile @@ -0,0 +1,87 @@ + + + + + + + + + + +PLATFORM_IF_MATCH(linux) +PLATFORM_ELSE + +PLATFORM_ENDIF + + + + + + + + +/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 + + + +/usr/local/lib/bcfg2/bin/python setup.py build \ +--build-base=${builddir}/build + + + +/usr/local/lib/bcfg2/bin/python setup.py install \ +--prefix=${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2 + + + +/usr/local/lib/bcfg2/bin/python setup.py clean +make clean + + + + + +mkdir var 2>/dev/null || exit 0 +mkdir var/encap 2>/dev/null || exit 0 +touch var/encap/${ENCAP_PKGNAME} + + + +description lxml - A Pythonic binding for the libxml2 and libxslt libraries + + + diff --git a/encap/bcfg2-openssl-0.9.8b.profile b/encap/bcfg2-openssl-0.9.8b.profile new file mode 100644 index 000000000..9c00b8960 --- /dev/null +++ b/encap/bcfg2-openssl-0.9.8b.profile @@ -0,0 +1,75 @@ + + + + + + + + + + +PLATFORM_IF_MATCH(linux) +PLATFORM_ELSE + +PLATFORM_ENDIF + + + + + + + + +./config \ + --prefix="${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2" \ + zlib-dynamic shared \ + -L/usr/local/lib/bcfg2/lib \ + -I/usr/local/lib/bcfg2/include + + + + + +mkdir bin 2>/dev/null || exit 0 +ln -sf ../lib/bcfg2/bin/openssl bin/b2openssl +mkdir var 2>/dev/null || exit 0 +mkdir var/encap 2>/dev/null || exit 0 +touch var/encap/${ENCAP_PKGNAME} + + + +description SSL encryption tool and library + + + diff --git a/encap/bcfg2-pkg-config-0.20.profile b/encap/bcfg2-pkg-config-0.20.profile new file mode 100644 index 000000000..cc028069d --- /dev/null +++ b/encap/bcfg2-pkg-config-0.20.profile @@ -0,0 +1,70 @@ + + + + + + + + + + +PLATFORM_IF_MATCH(linux) +PLATFORM_ELSE + +PLATFORM_ENDIF + + + + + + + + +./configure \ + --prefix="${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2" \ + --with-pc-path=/usr/local/lib/bcfg2/lib/pkgconfig + + + + + +mkdir var 2>/dev/null || exit 0 +mkdir var/encap 2>/dev/null || exit 0 +touch var/encap/${ENCAP_PKGNAME} + + + +description pkg-config - application and library compilation helper tool + + + diff --git a/encap/bcfg2-pyopenssl-0.6.profile b/encap/bcfg2-pyopenssl-0.6.profile new file mode 100644 index 000000000..d8f486e46 --- /dev/null +++ b/encap/bcfg2-pyopenssl-0.6.profile @@ -0,0 +1,84 @@ + + + + + + + + + + +PLATFORM_IF_MATCH(linux) +PLATFORM_ELSE + +PLATFORM_ENDIF + + + + + + + + +/usr/local/lib/bcfg2/bin/python setup.py build_ext \ +-I/usr/local/lib/bcfg2/include/openssl \ +-L/usr/local/lib/bcfg2/lib/ + + + +/usr/local/lib/bcfg2/bin/python setup.py build \ +--build-base=${builddir}/build + + + +/usr/local/lib/bcfg2/bin/python setup.py install \ +--prefix=${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2 + + + +/usr/local/lib/bcfg2/bin/python setup.py clean + + + + + +mkdir var 2>/dev/null || exit 0 +mkdir var/encap 2>/dev/null || exit 0 +touch var/encap/${ENCAP_PKGNAME} + + + +description pyOpenSSL - Python interface to the OpenSSL library + + + diff --git a/encap/bcfg2-pyrex-0.9.4.1.profile b/encap/bcfg2-pyrex-0.9.4.1.profile new file mode 100644 index 000000000..f28dabc5d --- /dev/null +++ b/encap/bcfg2-pyrex-0.9.4.1.profile @@ -0,0 +1,83 @@ + + + + + + + + + + +PLATFORM_IF_MATCH(linux) +PLATFORM_ELSE + +PLATFORM_ENDIF + + + + + + + + +: + + + +/usr/local/lib/bcfg2/bin/python setup.py build \ +--build-base=${builddir}/build + + + +/usr/local/lib/bcfg2/bin/python setup.py install \ +--prefix=${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2 \ + + + +/usr/local/lib/bcfg2/bin/python setup.py clean + + + + + +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} + + + +description Pyrex - a Language for Writing Python Extension Modules + + + diff --git a/encap/bcfg2-python-2.4.3.profile b/encap/bcfg2-python-2.4.3.profile new file mode 100644 index 000000000..8e30777d3 --- /dev/null +++ b/encap/bcfg2-python-2.4.3.profile @@ -0,0 +1,80 @@ + + + + + + + + + + +PLATFORM_IF_MATCH(linux) +PLATFORM_ELSE + +PLATFORM_ENDIF + + + + + + + + +./configure \ + --prefix="${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2" \ +PLATFORM_IF_MATCH(aix) + --with-gcc \ + --with-cxx=g++ \ +PLATFORM_ENDIF + --enable-shared=yes \ + --disable-ipv6 + + + + + 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/b2idle +ln -sf ../lib/bcfg2/bin/pydoc bin/b2pydoc +ln -sf ../lib/bcfg2/bin/python bin/b2python +mkdir var 2>/dev/null || exit 0 +mkdir var/encap 2>/dev/null || exit 0 +touch var/encap/${ENCAP_PKGNAME} +]]> + + +description Python - Scripting language + + + diff --git a/encap/bcfg2-zlib-1.2.3.profile b/encap/bcfg2-zlib-1.2.3.profile new file mode 100644 index 000000000..50eaed255 --- /dev/null +++ b/encap/bcfg2-zlib-1.2.3.profile @@ -0,0 +1,73 @@ + + + + + + + + + + +PLATFORM_IF_MATCH(linux) +PLATFORM_ELSE + +PLATFORM_ENDIF + + + + + + + + +./configure \ +PLATFORM_IF_MATCH(aix) +PLATFORM_ELSE + --shared \ +PLATFORM_ENDIF + --prefix="${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2" + + + + + +mkdir var 2>/dev/null || exit 0 +mkdir var/encap 2>/dev/null || exit 0 +touch var/encap/${ENCAP_PKGNAME} + + + +description Zlib compression library + + + diff --git a/encap/m4-1.4.4.sh b/encap/m4-1.4.4.sh new file mode 100755 index 000000000..4373319fa --- /dev/null +++ b/encap/m4-1.4.4.sh @@ -0,0 +1,66 @@ +#!/bin/sh +# $Id$ + +ENCAP_PKGNAME=m4-1.4.4 +PATH=$PATH:/usr/local/bin +export PATH + +cat > ${ENCAP_PKGNAME}.profile << EOF + + + + + + + + + + + + + +mkdir var 2>/dev/null || exit 0 +mkdir var/encap 2>/dev/null || exit 0 +touch var/encap/${ENCAP_PKGNAME} + + + +description m4 - GNU implementation of the traditional Unix macro processor + + + +EOF + +cat > m4-fake << EOF +#!/bin/sh +cat \$4 +EOF + +chmod 755 m4-fake + +( ${MKENCAP} -m ${PWD}/m4-fake -b -DUP ${ENCAP_PKGNAME}.profile || true ) \ + > ${ENCAP_PKGNAME}.log 2>&1 + +( ${MKENCAP} -m ${PWD}/m4-fake -b -T ${ENCAP_PKGNAME}.profile || true ) \ + >> ${ENCAP_PKGNAME}.log 2>&1 + +( ${MKENCAP} -m ${PWD}/m4-fake -b -CBI ${ENCAP_PKGNAME}.profile ) \ + >> ${ENCAP_PKGNAME}.log 2>&1 + +rm m4-fake +rm ${ENCAP_PKGNAME}.profile + +exit 0 -- cgit v1.2.3-1-g7c22