summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Joseph Barnhart Clark <dclark@pobox.com>2006-08-04 18:00:06 +0000
committerDaniel Joseph Barnhart Clark <dclark@pobox.com>2006-08-04 18:00:06 +0000
commit53bcb121c982db6194620040cc60f011a43a6ac6 (patch)
tree3c7064ac5456e97fbbf9dafbe54d40221457a38c
parent752bbe5e8b0eb07714fa280dbb7d648d143b5f86 (diff)
downloadbcfg2-53bcb121c982db6194620040cc60f011a43a6ac6.tar.gz
bcfg2-53bcb121c982db6194620040cc60f011a43a6ac6.tar.bz2
bcfg2-53bcb121c982db6194620040cc60f011a43a6ac6.zip
* Changed prefix from b2 to b2- to disambiguate from system commands
* Fixes to make man pages easier to access * Install tools as b2-example-tools-* * Added some auxiliary tools under tools/ directory * daemontools - cross-platform alternative to init scripts/cron * ostiary - simple/secure daemon for kicking off a local script * epkg Makefile - to build epkg when pre-built binaries aren't available * Updated README and VERSION git-svn-id: https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2@2041 ce84e21b-d406-0410-9b95-82705330c041
-rw-r--r--encap/Makefile5
-rw-r--r--encap/README29
-rw-r--r--encap/VERSION2
-rw-r--r--encap/bcfg2-0.8.2.ep83
-rw-r--r--encap/bcfg2-gettext-0.14.5.ep3
-rw-r--r--encap/bcfg2-libiconv-1.9.2.ep3
-rw-r--r--encap/bcfg2-libxml2-2.6.26.ep2
-rw-r--r--encap/bcfg2-openssl-0.9.8b.ep5
-rw-r--r--encap/bcfg2-python-2.4.3.ep6
-rw-r--r--encap/bcfg2-zlib-1.2.3.ep3
10 files changed, 103 insertions, 38 deletions
diff --git a/encap/Makefile b/encap/Makefile
index 471033fa8..2d508b65a 100644
--- a/encap/Makefile
+++ b/encap/Makefile
@@ -1,6 +1,6 @@
# $Id$
-.PHONY : all install clean uninstall encaps rename
+.PHONY : all install clean uninstall encaps rename bcfg2only
.SUFFIXES :
.SUFFIXES : .ep .sh .installed .packaged
@@ -84,6 +84,9 @@ uninstall : clean
( 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
diff --git a/encap/README b/encap/README
index 979ba1c16..1ed9bbb02 100644
--- a/encap/README
+++ b/encap/README
@@ -21,7 +21,7 @@ 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.).
+software, which is prefixed by `b2-` (`b2-openssl`, `b2-python` etc.).
To run the bcfg2 server, you also need to install gamin, which
supports a subset of the platforms bcfg2 client will work on, including
@@ -52,7 +52,7 @@ work, but it has not yet been tested with a working bcfg2 repository.
* GNU gcc and GNU g++
* GNU make (make sure "gmake" links to GNU make on non-GNU platforms)
* epkg (the encap package manager)
- * Cannonical website is http://www.encap.org/epkg
+ * Canonical website is http://www.encap.org/epkg
* Mirror of epkg binaries is available at http://www.dclark.us/mirror/
* If built from source, first need all recommended libraries from web page
@@ -75,10 +75,12 @@ Below is a table of platforms that have been successfully bootstrapped using
this code.
|| OS || Vendor || Version || Arch || GCC || By || With VERSION ||
-|| AIX || IBM || 5.3 || POWER || 4.1.0 || dc || 0.1/0.8.2pre6 ||
-|| GNU/Linux || Debian || Sarge || i386 || 3.3.5 || dc || 0.1/0.8.2pre6 ||
-|| GNU/Linux || Debian || Sid || i386 || 4.1.2 || dc || 0.3/0.8.2pre10 ||
+|| AIX || IBM || 5.3 || POWER || 4.1.0 || dc || 0.7/0.8.2 ||
+|| GNU/Linux || Debian || Sarge || i386 || 3.3.5 || dc || 0.7/0.8.2 ||
+|| GNU/Linux || Debian || Sid || i386 || 4.1.2 || dc || 0.8/0.8.2 ||
|| Solaris || Sun || 10 || Sparc || 3.4.3 || dc || 0.7/0.8.2 ||
+|| Solaris || Sun || 10 || i386 || 3.4.3 || dc || 0.7/0.8.2 ||
+
dc: "Daniel Clark" <mailto:dclark@member.fsf.org>
If you bootstrap a platform not listed above, please add a comment to:
@@ -137,10 +139,10 @@ Note that the doc for the encap profile format is in "man 5 encap_profile".
* Mirror of other packages is manual (but deps shouldn't change often)
0.5::
- * Removed external download of patches as that was not working consistantly;
+ * Removed external download of patches as that was not working consistently;
replaced with patches inline the bcfg2 encap profile (.ep file)
- * Added GNU patch dependancy, both for bcfg2 patches and call from Cfg.py
- * Fixed bcfg-repo-validate so it can find xmllint (as b2xmllint)
+ * Added GNU patch dependency, both for bcfg2 patches and call from Cfg.py
+ * Fixed bcfg-repo-validate so it can find xmllint (as b2-xmllint)
0.6::
* Updated bcfg2 to 0.8.2 (released version)
@@ -150,5 +152,16 @@ Note that the doc for the encap profile format is in "man 5 encap_profile".
0.7::
* Added Solaris support
+ 0.8::
+ * Added python code to fix paths; removed inline patch & GNU patch dependency
+ * Path change happens as part of install, logged to postinstall.log
+ * Changed prefix from b2 to b2- to disambiguate from system commands
+ * Fixes to make man pages easier to access
+ * Install tools as b2-example-tools-*
+ * Added some auxiliary tools under tools/ directory
+ * daemontools - cross-platform alternative to init scripts/cron
+ * ostiary - simple/secure daemon for kicking off a local script
+ * epkg Makefile - to build epkg when prebuilt binaries aren't available
+
== Documentation Version ==
$Id$
diff --git a/encap/VERSION b/encap/VERSION
index eb49d7c7f..aec258df7 100644
--- a/encap/VERSION
+++ b/encap/VERSION
@@ -1 +1 @@
-0.7
+0.8
diff --git a/encap/bcfg2-0.8.2.ep b/encap/bcfg2-0.8.2.ep
index 09208eccf..37e94d692 100644
--- a/encap/bcfg2-0.8.2.ep
+++ b/encap/bcfg2-0.8.2.ep
@@ -77,25 +77,51 @@ url="http://www.pobox.com/users/dclark/mirror/bcfg/bcfg2-0.8.2.tar.gz
</source>
<prepackage type="set"><![CDATA[
-mkdir bin 2>/dev/null || exit 0
-ln -sf ../lib/bcfg2/bin/GenerateHostInfo bin/GenerateHostInfo
-ln -sf ../lib/bcfg2/bin/GenerateHostInfo bin/b2GenerateHostInfo
-ln -sf ../lib/bcfg2/bin/StatReports bin/StatReports
-ln -sf ../lib/bcfg2/bin/StatReports bin/b2StatReports
-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/ || true)
-cp -r ${builddir}/examples share/bcfg2/
-mkdir var 2>/dev/null || exit 0
-mkdir var/encap 2>/dev/null || exit 0
+# Make binaries available from /usr/local/bin
+mkdir bin 2>/dev/null || exit 1
+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
+mkdir share 2>/dev/null || exit 1
+mkdir share/doc 2>/dev/null || exit 1
+mkdir share/doc/bcfg2 2>/dev/null || exit 1
+(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
+mkdir lib/bcfg2/tools || exit 1
+cp ${builddir}/tools/* lib/bcfg2/tools/
+mkdir sbin 2>/dev/null || exit 1
+mkdir share/doc/bcfg2/tools 2>/dev/null || exit 1
+# 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
+# Make "this encap is installed" sentinal file available in /usr/local/var/encap
+mkdir var 2>/dev/null || exit 1
+mkdir var/encap 2>/dev/null || exit 1
touch var/encap/${ENCAP_PKGNAME}
]]></prepackage>
-<include_file name="b2regexplace.py" mode="0755"><![CDATA[
+<include_file name="b2-regexplace.py" mode="0755"><![CDATA[
#!/usr/local/lib/bcfg2/bin/python
# regexplace: regular expression search and replace
@@ -127,7 +153,7 @@ def make_files_list(dir, 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 ("b2regexplace.sh", "b2regexplace.py", "postinstall", "postinstall.log", "bcfg2-0.8.2.ep"):
+ 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)
@@ -217,14 +243,14 @@ if __name__ == '__main__':
main()
]]></include_file>
-<include_file name="b2regexplace.sh" mode="0755"><![CDATA[
+<include_file name="b2-regexplace.sh" mode="0755"><![CDATA[
#!/bin/sh
# This fixes paths for the bcfg2 encap packaging.
# Do not run more than once; it does not converge.
BASEDIR="`echo ${0} | xargs -n1 dirname`"
-REGEXPLACE="${BASEDIR}/b2regexplace.py"
+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"
@@ -261,8 +287,19 @@ ${REGEXPLACE} ${BASEDIR} .\* \/usr\/share\/bcfg2\/ \/usr\/local\/lib\/bcfg2\/sha
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/b2xmllint\"...\n"
-${REGEXPLACE} ${BASEDIR} .\* xmllint \/usr\/local\/bin\/b2xmllint
+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}
@@ -273,8 +310,8 @@ exit 0
<include_file name="postinstall" mode="0755"><![CDATA[
#!/bin/sh
BASEDIR="`echo ${0} | xargs -n1 dirname`"
-test -x ${BASEDIR}/b2regexplace.sh || exit 1
-${BASEDIR}/b2regexplace.sh > ${BASEDIR}/postinstall.log 2>&1 3>&1
+test -x ${BASEDIR}/b2-regexplace.sh || exit 1
+${BASEDIR}/b2-regexplace.sh > ${BASEDIR}/postinstall.log 2>&1 3>&1
]]></include_file>
diff --git a/encap/bcfg2-gettext-0.14.5.ep b/encap/bcfg2-gettext-0.14.5.ep
index 8bf753796..eaf6b01e1 100644
--- a/encap/bcfg2-gettext-0.14.5.ep
+++ b/encap/bcfg2-gettext-0.14.5.ep
@@ -64,6 +64,9 @@ url="http://www.pobox.com/users/dclark/mirror/gettext/gettext-0.14.5.tar.gz
</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}
diff --git a/encap/bcfg2-libiconv-1.9.2.ep b/encap/bcfg2-libiconv-1.9.2.ep
index da6d76bd0..b25f7090b 100644
--- a/encap/bcfg2-libiconv-1.9.2.ep
+++ b/encap/bcfg2-libiconv-1.9.2.ep
@@ -64,6 +64,9 @@ url="http://www.pobox.com/users/dclark/mirror/libiconv/libiconv-1.9.2.tar.gz
</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}
diff --git a/encap/bcfg2-libxml2-2.6.26.ep b/encap/bcfg2-libxml2-2.6.26.ep
index fa0344477..318f90787 100644
--- a/encap/bcfg2-libxml2-2.6.26.ep
+++ b/encap/bcfg2-libxml2-2.6.26.ep
@@ -73,7 +73,7 @@ PLATFORM_ENDIF
<prepackage type="set">
mkdir bin 2>/dev/null || exit 0
-ln -sf ../lib/bcfg2/bin/xmllint bin/b2xmllint
+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}
diff --git a/encap/bcfg2-openssl-0.9.8b.ep b/encap/bcfg2-openssl-0.9.8b.ep
index 318ee6603..bb8ec9274 100644
--- a/encap/bcfg2-openssl-0.9.8b.ep
+++ b/encap/bcfg2-openssl-0.9.8b.ep
@@ -68,8 +68,11 @@ url="http://www.pobox.com/users/dclark/mirror/openssl/openssl-0.9.8b.tar.gz
</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/b2openssl
+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}
diff --git a/encap/bcfg2-python-2.4.3.ep b/encap/bcfg2-python-2.4.3.ep
index 296bedff3..d72d969b5 100644
--- a/encap/bcfg2-python-2.4.3.ep
+++ b/encap/bcfg2-python-2.4.3.ep
@@ -73,9 +73,9 @@ PLATFORM_ENDIF
<prepackage><![CDATA[
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/b2idle
-ln -sf ../lib/bcfg2/bin/pydoc bin/b2pydoc
-ln -sf ../lib/bcfg2/bin/python bin/b2python
+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}
diff --git a/encap/bcfg2-zlib-1.2.3.ep b/encap/bcfg2-zlib-1.2.3.ep
index 4a081993b..cba36bfb3 100644
--- a/encap/bcfg2-zlib-1.2.3.ep
+++ b/encap/bcfg2-zlib-1.2.3.ep
@@ -75,6 +75,9 @@ PLATFORM_ENDIF
</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}