summaryrefslogtreecommitdiffstats
path: root/encap
diff options
context:
space:
mode:
authorDaniel Joseph Barnhart Clark <dclark@pobox.com>2006-10-03 12:13:53 +0000
committerDaniel Joseph Barnhart Clark <dclark@pobox.com>2006-10-03 12:13:53 +0000
commit4a5d68a47ecbc3add0d2d6b5785c31d0acace58d (patch)
treeb99d9e8cc227b0f158823dcdb646352626d9b3aa /encap
parent2c31bf62cb9c67ab798c6730b149d4396934e27d (diff)
downloadbcfg2-4a5d68a47ecbc3add0d2d6b5785c31d0acace58d.tar.gz
bcfg2-4a5d68a47ecbc3add0d2d6b5785c31d0acace58d.tar.bz2
bcfg2-4a5d68a47ecbc3add0d2d6b5785c31d0acace58d.zip
EncapPackages: Merging changes from branches/private/dclark/encap-0.8.5.
Major change is removal of dependancies on libgcc, libstdc++, gettext, and libiconv. git-svn-id: https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2@2368 ce84e21b-d406-0410-9b95-82705330c041
Diffstat (limited to 'encap')
-rw-r--r--encap/HOWTO2
-rw-r--r--encap/TODO28
-rwxr-xr-xencap/src/bcfg2-site/bcfg2-site-RENAME/preremove24
-rw-r--r--encap/src/encap-profiles/Makefile21
-rw-r--r--encap/src/encap-profiles/bcfg2-0.8.4.ep36
-rw-r--r--encap/src/encap-profiles/bcfg2-cheetah-2.0rc7.ep2
-rw-r--r--encap/src/encap-profiles/bcfg2-gamin-0.1.7.ep4
-rw-r--r--encap/src/encap-profiles/bcfg2-glib-2.8.6.ep6
-rw-r--r--encap/src/encap-profiles/bcfg2-gzip-1.2.4b.ep (renamed from encap/src/encap-profiles/bcfg2-gettext-0.14.5.ep)42
-rwxr-xr-xencap/src/encap-profiles/bcfg2-libgcc-0.1.sh34
-rw-r--r--encap/src/encap-profiles/bcfg2-libiconv-1.9.2.ep81
-rwxr-xr-xencap/src/encap-profiles/bcfg2-libstdc++-0.1.sh34
-rw-r--r--encap/src/encap-profiles/bcfg2-libxml2-2.6.26.ep9
-rw-r--r--encap/src/encap-profiles/bcfg2-libxslt-1.1.17.ep8
-rw-r--r--encap/src/encap-profiles/bcfg2-lxml-1.1.1.ep (renamed from encap/src/encap-profiles/bcfg2-lxml-1.0.1.ep)10
-rw-r--r--encap/src/encap-profiles/bcfg2-openssl-0.9.8c.ep (renamed from encap/src/encap-profiles/bcfg2-openssl-0.9.8b.ep)10
-rw-r--r--encap/src/encap-profiles/bcfg2-pkg-config-0.20.ep4
-rw-r--r--encap/src/encap-profiles/bcfg2-pyopenssl-0.6.ep6
-rw-r--r--encap/src/encap-profiles/bcfg2-pyrex-0.9.4.1.ep2
-rw-r--r--encap/src/encap-profiles/bcfg2-python-2.4.3.ep18
-rw-r--r--encap/src/encap-profiles/bcfg2-python-apt-0.5.10.ep2
-rw-r--r--encap/src/encap-profiles/bcfg2-python-apt-0.6.16.2ubuntu8.ep4
-rw-r--r--encap/src/encap-profiles/bcfg2-python-apt-0.6.19.ep2
-rw-r--r--encap/src/encap-profiles/bcfg2-readline-5.1.ep4
-rw-r--r--encap/src/encap-profiles/bcfg2-zlib-1.2.3.ep2
-rw-r--r--encap/src/encap-profiles/daemontools-0.76.ep27
-rw-r--r--encap/src/encap-profiles/ostiary-3.4.ep16
-rwxr-xr-xencap/src/makeself-dist/makedist.sh9
28 files changed, 176 insertions, 271 deletions
diff --git a/encap/HOWTO b/encap/HOWTO
index 488846f41..1d9cc1387 100644
--- a/encap/HOWTO
+++ b/encap/HOWTO
@@ -4,7 +4,7 @@ EncapPackages | EncapReadme | EncapInstall | '''EncapHowto'''
= EncapHowto: Encap Packages HOWTO =
-TODO: Aim is to have nice HOWTO for 0.8.4 release.
+TODO: Aim is to have nice HOWTO for 0.8.6 release.
<Reference to README and INSTALL in wiki: format>
diff --git a/encap/TODO b/encap/TODO
index 83892c782..0a85baa57 100644
--- a/encap/TODO
+++ b/encap/TODO
@@ -1,37 +1,11 @@
= EncapTodo: TODO =
-== For 0.8.4 ==
-
* Write HOWTO
* Packages all deps of new reports (django etc.) for GNU/Linux
- * Move from lxml (+deps) to elementtree for client
- * Maybe just move to Python 2.5 (which includes elementtree) if final comes
- out on schedule (Sept 12th, 2006 is planned final release date)
-
-== For 0.8.5 or earlier ==
-
- * Cut down distribution size to something more reasonable
- * Some platforms are now >150MB (installed)
- * Remove unneeded doc / test code / etc.
- * Perhaps make seperate -doc- or -extra- encap packages
- * Might be able to make client-side only python 2.5 (statically linked to
- deps like openssl), bcfg2, daemontools, ostiary, and bcfg2-site.
- * http://groups.google.com/groups/starred?lnk=lnmst&hl=en
- * Look into using http://sourceforge.net/projects/cx-freeze/ for client-side
+ * Work towards full compliance with encap 2.1 spec
-== For 0.8.6 or earlier ==
- * Improve handling of libgcc/libstdc++
-
- * Try to make build not effect the build host as much
-
- * Try to make it possible to build as non-root
-
- * Handle removals nicely (preremove/postremove scripts)
- * Work towards full compliance with encap 2.1 spec
- * Remove /service links in remove scripts for daemontools services
-
== Documentation Version ==
$Id$
diff --git a/encap/src/bcfg2-site/bcfg2-site-RENAME/preremove b/encap/src/bcfg2-site/bcfg2-site-RENAME/preremove
new file mode 100755
index 000000000..26e1b05ab
--- /dev/null
+++ b/encap/src/bcfg2-site/bcfg2-site-RENAME/preremove
@@ -0,0 +1,24 @@
+#!/bin/sh -e
+
+umask 002
+BASEDIR="${ENCAP_TARGET}" # Usually /usr/local
+PKGDIR="${ENCAP_SOURCE}/${ENCAP_PKGNAME}" # Ususally /usr/local/encap/<pkgname>
+
+printf "Running ${ENCAP_PKGNAME} preremove script...\n"
+date
+
+# ostiary (daemontools)
+if [ -h /service/ostiary ]; then
+ printf "INFO: Removing /service/ostiary...\n"
+ /command/svrm /service/ostiary
+fi
+
+# bcfg2-client (daemontools)
+if [ -h /service/bcfg2-client ]; then
+ printf "INFO: Removing /service/bcfg2-client...\n"
+ /command/svrm /service/bcfg2-client
+fi
+
+printf "Finished ${ENCAP_PKGNAME} preremove script.\n"
+
+exit 0
diff --git a/encap/src/encap-profiles/Makefile b/encap/src/encap-profiles/Makefile
index f16bb693c..af17d4d59 100644
--- a/encap/src/encap-profiles/Makefile
+++ b/encap/src/encap-profiles/Makefile
@@ -1,7 +1,7 @@
# $Id$
.PHONY : test log all install clean distclean uninstall encaps rename bcfg2only bcfg2bump
-.SUFFIXES :
+.SUFFIXES :
.SUFFIXES : .ep .sh .installed .packaged .d
export BASEDIR = /usr/local
@@ -17,11 +17,8 @@ BCFG2 := $(basename $(wildcard bcfg2-[0-9].[0-9]*.ep))
BCFG2_CHEETAH := $(basename $(wildcard bcfg2-cheetah-[0-9].[0-9]*.ep))
BCFG2_CHEETAH_DOC := $(basename $(wildcard bcfg2-cheetah-doc-*.ep))
BCFG2_GAMIN := $(basename $(wildcard bcfg2-gamin-*.ep))
-BCFG2_GETTEXT := $(basename $(wildcard bcfg2-gettext-*.ep))
BCFG2_GLIB := $(basename $(wildcard bcfg2-glib-*.ep))
-BCFG2_LIBGCC := $(basename $(wildcard bcfg2-libgcc-*.sh))
-BCFG2_LIBICONV := $(basename $(wildcard bcfg2-libiconv-*.ep))
-BCFG2_LIBSTDCXX := $(basename $(wildcard bcfg2-libstdc++-*.sh))
+BCFG2_GZIP := $(basename $(wildcard bcfg2-gzip-*.ep))
BCFG2_LIBXML2 := $(basename $(wildcard bcfg2-libxml2-*.ep))
BCFG2_LIBXSLT := $(basename $(wildcard bcfg2-libxslt-*.ep))
BCFG2_LXML := $(basename $(wildcard bcfg2-lxml-*.ep))
@@ -40,9 +37,9 @@ OSTIARTY := $(basename $(wildcard ostiary-[0-9].[0-9]*.ep))
OSTIARTY_DOC := $(basename $(wildcard ostiary-doc-*.ep))
PATCH := $(basename $(wildcard patch-*.ep))
-sources_ep := $(sort $(BCFG2) $(BCFG2_CHEETAH) $(BCFG2_CHEETAH_DOC) $(BCFG2_GETTEXT) $(BCFG2_LIBICONV) $(BCFG2_LIBXML2) $(BCFG2_LIBXSLT) $(BCFG2_LXML) $(BCFG2_OPENSSL) $(BCFG2_PKG_CONFIG) $(BCFG2_PYOPENSSL) $(BCFG2_PYREX) $(BCFG2_PYTHON) $(BCFG2_READLINE) $(BCFG2_ZLIB) $(DAEMONTOOLS) $(DAEMONTOOLS_DOC) $(MAKESELF) $(OSTIARTY) $(OSTIARTY_DOC) $(PATCH))
+sources_ep := $(sort $(BCFG2) $(BCFG2_CHEETAH) $(BCFG2_CHEETAH_DOC) $(BCFG2_GZIP) $(BCFG2_LIBXML2) $(BCFG2_LIBXSLT) $(BCFG2_LXML) $(BCFG2_OPENSSL) $(BCFG2_PKG_CONFIG) $(BCFG2_PYOPENSSL) $(BCFG2_PYREX) $(BCFG2_PYTHON) $(BCFG2_READLINE) $(BCFG2_ZLIB) $(DAEMONTOOLS) $(DAEMONTOOLS_DOC) $(MAKESELF) $(OSTIARTY) $(OSTIARTY_DOC) $(PATCH))
-sources_sh := $(sort $(BCFG2_LIBGCC) $(BCFG2_LIBSTDCXX) $(M4))
+sources_sh := $(sort $(M4))
# Only compile bcfg2-glib and bcfg2-gamin (needed by bcfg2 server) on Linux
# (Gamin only supports Linux), and only compile bcfg2-python-apt on known
@@ -123,8 +120,8 @@ log :
&& $(MAKE) rename >> ./make.log 2>&1 ) &
all : install encaps rename
-
-.DELETE_ON_ERROR : # delete the target of a rule if it has changed and its
+
+.DELETE_ON_ERROR : # delete the target of a rule if it has changed and its
# commands exit with a nonzero exit status
install : $(EPKG) $(MKENCAP) $(EP2TARGET) $(M4).installed $(addsuffix .installed,$(sources))
@@ -152,12 +149,12 @@ rename : encaps
fi; \
done;
-clean :
+clean :
-(rm ./*.log; rm ./*.packaged; rm ./*.gz; rm ./*~)
distclean : clean
-rm ./*.d
-
+
uninstall : distclean
-(find $(BASEDIR)/lib/bcfg2 | grep "\.pyc" | xargs -n1 rm)
-(ENCAPS="m4 patch daemontools makeself ostiary bcfg2"; \
@@ -170,7 +167,7 @@ uninstall : distclean
bcfg2only :
$(MAKE) -t; sleep 2; touch $(srcdir)/$(BCFG2).ep; $(MAKE)
-
+
bcfg2bump :
@if [ "$(NEW)x" != "x" ]; then NEW="$(NEW)"; fi && \
if [ "$(OLD)x" != "x" ]; then OLD="$(OLD)"; fi && \
diff --git a/encap/src/encap-profiles/bcfg2-0.8.4.ep b/encap/src/encap-profiles/bcfg2-0.8.4.ep
index 53807bcb1..bc52ccd13 100644
--- a/encap/src/encap-profiles/bcfg2-0.8.4.ep
+++ b/encap/src/encap-profiles/bcfg2-0.8.4.ep
@@ -15,21 +15,17 @@
<prereq package="m4-1.4.4" />
<prereq package="bcfg2-zlib-1.2.3" />
-<prereq package="bcfg2-libiconv-1.9.2" />
-<prereq package="bcfg2-gettext-0.14.5" />
<prereq package="bcfg2-pkg-config-0.20" />
-<prereq package="bcfg2-openssl-0.9.8b" />
-<prereq package="bcfg2-libstdc++-0.1" />
-<prereq package="bcfg2-libgcc-0.1" />
+<prereq package="bcfg2-openssl-0.9.8c" />
<prereq package="bcfg2-python-2.4.3" />
<prereq package="bcfg2-pyopenssl-0.6" />
<prereq package="bcfg2-libxml2-2.6.26" />
<prereq package="bcfg2-libxslt-1.1.17" />
-<prereq package="bcfg2-lxml-1.0.1" />
+<prereq package="bcfg2-lxml-1.1.1" />
<environment
variable="CC"
- value="gcc"
+ value="gcc -static-libgcc"
type="set"
/>
@@ -445,20 +441,34 @@ if [ ! -f $DEFAULT/bcfg2-server/.SENTINEL ]; then
fi
]]></include_file>
+<include_file name="preremove" mode="0755"><![CDATA[
+#!/bin/sh
+
+printf "Running bcfg2 preremove script...\n"
+date
+
+if [ -h /service/bcfg2-client ]; then
+ printf "INFO: Removing /service/bcfg2-client...\n"
+ /command/svrm /service/bcfg2-client
+fi
+
+if [ -h /service/bcfg2-server ]; then
+ printf "INFO: Removing /service/bcfg2-server...\n"
+ /command/svrm /service/bcfg2-server
+fi
+
+printf "Finished bcfg2 preremove script.\n"
+]]></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-openssl-0.9.8c
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
+prereq pkgspec >= bcfg2-lxml-1.1.1
</encapinfo>
</encap_profile>
diff --git a/encap/src/encap-profiles/bcfg2-cheetah-2.0rc7.ep b/encap/src/encap-profiles/bcfg2-cheetah-2.0rc7.ep
index 956536109..5bd3668ff 100644
--- a/encap/src/encap-profiles/bcfg2-cheetah-2.0rc7.ep
+++ b/encap/src/encap-profiles/bcfg2-cheetah-2.0rc7.ep
@@ -12,7 +12,7 @@
<environment
variable="CC"
- value="gcc"
+ value="gcc -static-libgcc"
type="set"
/>
diff --git a/encap/src/encap-profiles/bcfg2-gamin-0.1.7.ep b/encap/src/encap-profiles/bcfg2-gamin-0.1.7.ep
index 99118d03f..a3e41fad9 100644
--- a/encap/src/encap-profiles/bcfg2-gamin-0.1.7.ep
+++ b/encap/src/encap-profiles/bcfg2-gamin-0.1.7.ep
@@ -8,15 +8,13 @@
>
<prereq package="m4-1.4.4" />
-<prereq package="bcfg2-libiconv-1.9.2" />
-<prereq package="bcfg2-gettext-0.14.5" />
<prereq package="bcfg2-pkg-config-0.20" />
<prereq package="bcfg2-python-2.4.3" />
<prereq package="bcfg2-glib-2.8.6" />
<environment
variable="CC"
- value="gcc"
+ value="gcc -static-libgcc"
type="set"
/>
diff --git a/encap/src/encap-profiles/bcfg2-glib-2.8.6.ep b/encap/src/encap-profiles/bcfg2-glib-2.8.6.ep
index f20eeae32..e91dcfb5a 100644
--- a/encap/src/encap-profiles/bcfg2-glib-2.8.6.ep
+++ b/encap/src/encap-profiles/bcfg2-glib-2.8.6.ep
@@ -9,8 +9,6 @@
<prereq package="m4-1.4.4" />
<prereq package="bcfg2-zlib-1.2.3" />
-<prereq package="bcfg2-libiconv-1.9.2" />
-<prereq package="bcfg2-gettext-0.14.5" />
<prereq package="bcfg2-pkg-config-0.20" />
<prereq package="bcfg2-python-2.4.3" />
<prereq package="bcfg2-libxml2-2.6.26" />
@@ -18,7 +16,7 @@
<environment
variable="CC"
- value="gcc"
+ value="gcc -static-libgcc"
type="set"
/>
@@ -68,7 +66,7 @@ url="http://www.pobox.com/users/dclark/mirror/glib/glib-2.8.6.tar.gz
<configure>
./configure \
--prefix="${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2" \
- --with-libiconv=gnu
+ --without-libiconv
</configure>
</source>
diff --git a/encap/src/encap-profiles/bcfg2-gettext-0.14.5.ep b/encap/src/encap-profiles/bcfg2-gzip-1.2.4b.ep
index 7116b0b98..ce7c39420 100644
--- a/encap/src/encap-profiles/bcfg2-gettext-0.14.5.ep
+++ b/encap/src/encap-profiles/bcfg2-gzip-1.2.4b.ep
@@ -4,15 +4,16 @@
<encap_profile
profile_ver="1.0"
- pkgspec="bcfg2-gettext-0.14.5"
+ pkgspec="bcfg2-gzip-1.2.4b"
>
<prereq package="m4-1.4.4" />
-<prereq package="bcfg2-libiconv-1.9.2" />
+<prereq package="patch-2.5.9" />
+<prereq package="bcfg2-pkg-config-0.20" />
<environment
variable="CC"
- value="gcc"
+ value="gcc -static-libgcc"
type="set"
/>
@@ -55,20 +56,45 @@ PLATFORM_ENDIF
/>
<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"
+url="http://www.pobox.com/users/dclark/mirror/gzip/gzip-1.2.4a.tar.gz
+ ftp://ftp.gnu.org/gnu/gzip/gzip-1.2.4a.tar.gz"
>
+<patch options="-p1"><![CDATA[
+--- gzip-1.2.4/gzip.c Thu Aug 19 15:39:43 1993
++++ gzip-1.2.4b/gzip.c Tue Jan 8 21:44:18 2002
+@@ -1005,7 +1005,14 @@
+ #ifdef NO_MULTIPLE_DOTS
+ char *dot; /* pointer to ifname extension, or NULL */
+ #endif
++ int max_suffix_len = (z_len > 3 ? z_len : 3);
+
++ /* Leave enough room in ifname or ofname for suffix: */
++ if (strlen(iname) >= sizeof(ifname) - max_suffix_len) {
++ strncpy(ifname, iname, sizeof(ifname) - 1);
++ /* last byte of ifname is already zero and never overwritten */
++ error("file name too long");
++ }
+ strcpy(ifname, iname);
+
+ /* If input file exists, return OK. */
+]]></patch>
+
<configure>
./configure \
--prefix="${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2"
</configure>
+<install type="prepend">
+test -d ${ENCAP_SOURCE} || mkdir ${ENCAP_SOURCE}
+test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME} || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}
+test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib
+test -d ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2 || mkdir ${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2
+</install>
+
</source>
<prepackage type="set">
-# Make man pages available from /usr/local/lib/bcfg2/man
-mv lib/bcfg2/share/man lib/bcfg2/
# Make "this encap is installed" sentinal file available in /usr/local/var/encap
test -d var || mkdir var
test -d var/encap || mkdir var/encap
@@ -76,7 +102,7 @@ touch var/encap/${ENCAP_PKGNAME}
</prepackage>
<encapinfo>
-description gettext - tools to produce multi-lingual messages
+description gzip - The GNU compression utility
</encapinfo>
</encap_profile>
diff --git a/encap/src/encap-profiles/bcfg2-libgcc-0.1.sh b/encap/src/encap-profiles/bcfg2-libgcc-0.1.sh
deleted file mode 100755
index d6de6c471..000000000
--- a/encap/src/encap-profiles/bcfg2-libgcc-0.1.sh
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/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/src/encap-profiles/bcfg2-libiconv-1.9.2.ep b/encap/src/encap-profiles/bcfg2-libiconv-1.9.2.ep
deleted file mode 100644
index b1e534191..000000000
--- a/encap/src/encap-profiles/bcfg2-libiconv-1.9.2.ep
+++ /dev/null
@@ -1,81 +0,0 @@
-<?xml version="1.0"?>
-
-<!-- $Id$ -->
-
-<encap_profile
- profile_ver="1.0"
- pkgspec="bcfg2-libiconv-1.9.2"
->
-
-<prereq package="m4-1.4.4" />
-
-<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/
-# Make "this encap is installed" sentinal file available in /usr/local/var/encap
-test -d var || mkdir var
-test -d var/encap || mkdir var/encap
-touch var/encap/${ENCAP_PKGNAME}
-</prepackage>
-
-<encapinfo>
-description libiconv - Converts between character encodings
-</encapinfo>
-
-</encap_profile>
diff --git a/encap/src/encap-profiles/bcfg2-libstdc++-0.1.sh b/encap/src/encap-profiles/bcfg2-libstdc++-0.1.sh
deleted file mode 100755
index 6b3fe4a98..000000000
--- a/encap/src/encap-profiles/bcfg2-libstdc++-0.1.sh
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/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/src/encap-profiles/bcfg2-libxml2-2.6.26.ep b/encap/src/encap-profiles/bcfg2-libxml2-2.6.26.ep
index d76256e59..aa7f5bb01 100644
--- a/encap/src/encap-profiles/bcfg2-libxml2-2.6.26.ep
+++ b/encap/src/encap-profiles/bcfg2-libxml2-2.6.26.ep
@@ -9,14 +9,12 @@
<prereq package="m4-1.4.4" />
<prereq package="bcfg2-zlib-1.2.3" />
-<prereq package="bcfg2-libiconv-1.9.2" />
-<prereq package="bcfg2-gettext-0.14.5" />
<prereq package="bcfg2-pkg-config-0.20" />
<prereq package="bcfg2-python-2.4.3" />
<environment
variable="CC"
- value="gcc"
+ value="gcc -static-libgcc"
type="set"
/>
@@ -67,6 +65,7 @@ subdir="libxml2-2.6.26"
<configure>
./configure \
--prefix="${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2" \
+ --without-iconv \
PLATFORM_IF_MATCH(aix)
PLATFORM_ELSE
--enable-shared \
@@ -79,6 +78,10 @@ PLATFORM_ENDIF
</source>
<prepackage type="set">
+# Remove doc - it's big
+if [ -d lib/bcfg2/share/doc ]; then rm -rf lib/bcfg2/share/doc; fi
+if [ -d lib/bcfg2/share/gtk-doc ]; then rm -rf lib/bcfg2/share/gtk-doc; fi
+# Make convieniance links
test -d bin || mkdir bin
ln -sf ../lib/bcfg2/bin/xmllint bin/b2-xmllint
# Make "this encap is installed" sentinal file available in /usr/local/var/encap
diff --git a/encap/src/encap-profiles/bcfg2-libxslt-1.1.17.ep b/encap/src/encap-profiles/bcfg2-libxslt-1.1.17.ep
index 96c3d4247..f8d120be7 100644
--- a/encap/src/encap-profiles/bcfg2-libxslt-1.1.17.ep
+++ b/encap/src/encap-profiles/bcfg2-libxslt-1.1.17.ep
@@ -9,15 +9,13 @@
<prereq package="m4-1.4.4" />
<prereq package="bcfg2-zlib-1.2.3" />
-<prereq package="bcfg2-libiconv-1.9.2" />
-<prereq package="bcfg2-gettext-0.14.5" />
<prereq package="bcfg2-pkg-config-0.20" />
<prereq package="bcfg2-python-2.4.3" />
<prereq package="bcfg2-libxml2-2.6.26" />
<environment
variable="CC"
- value="gcc"
+ value="gcc -static-libgcc"
type="set"
/>
@@ -67,6 +65,7 @@ url="http://www.pobox.com/users/dclark/mirror/libxslt/libxslt-1.1.17.tar.gz
<configure>
./configure \
--prefix="${ENCAP_SOURCE}/${ENCAP_PKGNAME}/lib/bcfg2" \
+ --without-iconv \
PLATFORM_IF_MATCH(aix)
PLATFORM_ELSE
--enable-shared \
@@ -83,6 +82,9 @@ PLATFORM_ENDIF
</source>
<prepackage type="set">
+# Remove doc - it's big
+if [ -d lib/bcfg2/share/doc ]; then rm -rf lib/bcfg2/share/doc; fi
+# Put python stuff in the right place
mv lib/bcfg2/lib/lib/python2.4 lib/bcfg2/lib
rmdir lib/bcfg2/lib/lib
# Make "this encap is installed" sentinal file available in /usr/local/var/encap
diff --git a/encap/src/encap-profiles/bcfg2-lxml-1.0.1.ep b/encap/src/encap-profiles/bcfg2-lxml-1.1.1.ep
index b8cc4c6fb..78b1cb786 100644
--- a/encap/src/encap-profiles/bcfg2-lxml-1.0.1.ep
+++ b/encap/src/encap-profiles/bcfg2-lxml-1.1.1.ep
@@ -4,13 +4,11 @@
<encap_profile
profile_ver="1.0"
- pkgspec="bcfg2-lxml-1.0.1"
+ pkgspec="bcfg2-lxml-1.1.1"
>
<prereq package="m4-1.4.4" />
<prereq package="bcfg2-zlib-1.2.3" />
-<prereq package="bcfg2-libiconv-1.9.2" />
-<prereq package="bcfg2-gettext-0.14.5" />
<prereq package="bcfg2-pkg-config-0.20" />
<prereq package="bcfg2-python-2.4.3" />
<prereq package="bcfg2-pyrex-0.9.4.1" />
@@ -19,7 +17,7 @@
<environment
variable="CC"
- value="gcc"
+ value="gcc -static-libgcc"
type="set"
/>
@@ -62,8 +60,8 @@ PLATFORM_ENDIF
/>
<source
-url="http://www.pobox.com/users/dclark/mirror/lxml/lxml-1.0.1.tgz
- http://codespeak.net/lxml/lxml-1.0.1.tgz"
+url="http://www.pobox.com/users/dclark/mirror/lxml/lxml-1.1.1.tgz
+ http://codespeak.net/lxml/lxml-1.1.1.tgz"
>
<configure>
diff --git a/encap/src/encap-profiles/bcfg2-openssl-0.9.8b.ep b/encap/src/encap-profiles/bcfg2-openssl-0.9.8c.ep
index 740e9c5bd..9a8181f8e 100644
--- a/encap/src/encap-profiles/bcfg2-openssl-0.9.8b.ep
+++ b/encap/src/encap-profiles/bcfg2-openssl-0.9.8c.ep
@@ -4,18 +4,16 @@
<encap_profile
profile_ver="1.0"
- pkgspec="bcfg2-openssl-0.9.8b"
+ pkgspec="bcfg2-openssl-0.9.8c"
>
<prereq package="m4-1.4.4" />
<prereq package="bcfg2-zlib-1.2.3" />
-<prereq package="bcfg2-libiconv-1.9.2" />
-<prereq package="bcfg2-gettext-0.14.5" />
<prereq package="bcfg2-pkg-config-0.20" />
<environment
variable="CC"
- value="gcc"
+ value="gcc -static-libgcc"
type="set"
/>
@@ -58,8 +56,8 @@ PLATFORM_ENDIF
/>
<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"
+url="http://www.pobox.com/users/dclark/mirror/openssl/openssl-0.9.8c.tar.gz
+ http://www.openssl.org/source/openssl-0.9.8c.tar.gz"
use_objdir="no"
>
diff --git a/encap/src/encap-profiles/bcfg2-pkg-config-0.20.ep b/encap/src/encap-profiles/bcfg2-pkg-config-0.20.ep
index 5b61c9a92..db763a00c 100644
--- a/encap/src/encap-profiles/bcfg2-pkg-config-0.20.ep
+++ b/encap/src/encap-profiles/bcfg2-pkg-config-0.20.ep
@@ -8,12 +8,10 @@
>
<prereq package="m4-1.4.4" />
-<prereq package="bcfg2-libiconv-1.9.2" />
-<prereq package="bcfg2-gettext-0.14.5" />
<environment
variable="CC"
- value="gcc"
+ value="gcc -static-libgcc"
type="set"
/>
diff --git a/encap/src/encap-profiles/bcfg2-pyopenssl-0.6.ep b/encap/src/encap-profiles/bcfg2-pyopenssl-0.6.ep
index a2a59d562..3668ecece 100644
--- a/encap/src/encap-profiles/bcfg2-pyopenssl-0.6.ep
+++ b/encap/src/encap-profiles/bcfg2-pyopenssl-0.6.ep
@@ -9,15 +9,13 @@
<prereq package="m4-1.4.4" />
<prereq package="bcfg2-zlib-1.2.3" />
-<prereq package="bcfg2-libiconv-1.9.2" />
-<prereq package="bcfg2-gettext-0.14.5" />
<prereq package="bcfg2-pkg-config-0.20" />
-<prereq package="bcfg2-openssl-0.9.8b" />
+<prereq package="bcfg2-openssl-0.9.8c" />
<prereq package="bcfg2-python-2.4.3" />
<environment
variable="CC"
- value="gcc"
+ value="gcc -static-libgcc"
type="set"
/>
diff --git a/encap/src/encap-profiles/bcfg2-pyrex-0.9.4.1.ep b/encap/src/encap-profiles/bcfg2-pyrex-0.9.4.1.ep
index 5c411285a..0dc621d9f 100644
--- a/encap/src/encap-profiles/bcfg2-pyrex-0.9.4.1.ep
+++ b/encap/src/encap-profiles/bcfg2-pyrex-0.9.4.1.ep
@@ -12,7 +12,7 @@
<environment
variable="CC"
- value="gcc"
+ value="gcc -static-libgcc"
type="set"
/>
diff --git a/encap/src/encap-profiles/bcfg2-python-2.4.3.ep b/encap/src/encap-profiles/bcfg2-python-2.4.3.ep
index e8a39a38b..ad804e8ee 100644
--- a/encap/src/encap-profiles/bcfg2-python-2.4.3.ep
+++ b/encap/src/encap-profiles/bcfg2-python-2.4.3.ep
@@ -9,15 +9,14 @@
<prereq package="m4-1.4.4" />
<prereq package="bcfg2-zlib-1.2.3" />
-<prereq package="bcfg2-libiconv-1.9.2" />
-<prereq package="bcfg2-gettext-0.14.5" />
+<prereq package="bcfg2-gzip-1.2.4b" />
<prereq package="bcfg2-pkg-config-0.20" />
<prereq package="bcfg2-readline-5.1" />
-<prereq package="bcfg2-openssl-0.9.8b" />
+<prereq package="bcfg2-openssl-0.9.8c" />
<environment
variable="CC"
- value="gcc"
+ value="gcc -static-libgcc"
type="set"
/>
@@ -79,10 +78,10 @@ cp setup.py.bcfg2 setup.py
PLATFORM_IF_MATCH(linux)
PLATFORM_ELSE
--with-gcc \
- --with-cxx=g++ \
PLATFORM_ENDIF
--enable-shared=no \
- --disable-ipv6
+ --disable-ipv6 \
+ --without-cxx
</configure>
<build type="append"><![CDATA[
@@ -100,13 +99,18 @@ fi
</source>
<prepackage><![CDATA[
+# Put setup back into pristine state
rm ${builddir}/setup.py
cp ${builddir}/setup.py.orig ${builddir}/setup.py
+# Make site-packages be in the PYTHONPATH
echo /usr/local/lib/bcfg2/lib/python2.4/site-packages > lib/bcfg2/lib/python2.4/site-packages/usr-local-lib-bcfg2.pth
+# Convienience links
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
+# Remove some big stuff that bcfg2 doesn't need
+if [ -d lib/bcfg2/lib/python2.4/test ]; then rm -rf lib/bcfg2/lib/python2.4/test; fi
+if [ -d lib/bcfg2/lib/python2.4/idlelib ]; then rm -rf lib/bcfg2/lib/python2.4/idlelib; fi
# Make "this encap is installed" sentinal file available in /usr/local/var/encap
test -d var || mkdir var
test -d var/encap || mkdir var/encap
diff --git a/encap/src/encap-profiles/bcfg2-python-apt-0.5.10.ep b/encap/src/encap-profiles/bcfg2-python-apt-0.5.10.ep
index 77955e0de..6d9b9f910 100644
--- a/encap/src/encap-profiles/bcfg2-python-apt-0.5.10.ep
+++ b/encap/src/encap-profiles/bcfg2-python-apt-0.5.10.ep
@@ -12,7 +12,7 @@
<environment
variable="CC"
- value="gcc"
+ value="gcc -static-libgcc"
type="set"
/>
diff --git a/encap/src/encap-profiles/bcfg2-python-apt-0.6.16.2ubuntu8.ep b/encap/src/encap-profiles/bcfg2-python-apt-0.6.16.2ubuntu8.ep
index 59f30be2c..e3d8b8e8a 100644
--- a/encap/src/encap-profiles/bcfg2-python-apt-0.6.16.2ubuntu8.ep
+++ b/encap/src/encap-profiles/bcfg2-python-apt-0.6.16.2ubuntu8.ep
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
-<!-- $Id:$ -->
+<!-- $Id$ -->
<encap_profile
profile_ver="1.0"
@@ -12,7 +12,7 @@
<environment
variable="CC"
- value="gcc"
+ value="gcc -static-libgcc"
type="set"
/>
diff --git a/encap/src/encap-profiles/bcfg2-python-apt-0.6.19.ep b/encap/src/encap-profiles/bcfg2-python-apt-0.6.19.ep
index af74340ff..23ddec3b3 100644
--- a/encap/src/encap-profiles/bcfg2-python-apt-0.6.19.ep
+++ b/encap/src/encap-profiles/bcfg2-python-apt-0.6.19.ep
@@ -12,7 +12,7 @@
<environment
variable="CC"
- value="gcc"
+ value="gcc -static-libgcc"
type="set"
/>
diff --git a/encap/src/encap-profiles/bcfg2-readline-5.1.ep b/encap/src/encap-profiles/bcfg2-readline-5.1.ep
index ec2e99630..83c5e9248 100644
--- a/encap/src/encap-profiles/bcfg2-readline-5.1.ep
+++ b/encap/src/encap-profiles/bcfg2-readline-5.1.ep
@@ -8,13 +8,11 @@
>
<prereq package="m4-1.4.4" />
-<prereq package="bcfg2-libiconv-1.9.2" />
-<prereq package="bcfg2-gettext-0.14.5" />
<prereq package="bcfg2-pkg-config-0.20" />
<environment
variable="CC"
- value="gcc"
+ value="gcc -static-libgcc"
type="set"
/>
diff --git a/encap/src/encap-profiles/bcfg2-zlib-1.2.3.ep b/encap/src/encap-profiles/bcfg2-zlib-1.2.3.ep
index 3b2effc8e..fb3236321 100644
--- a/encap/src/encap-profiles/bcfg2-zlib-1.2.3.ep
+++ b/encap/src/encap-profiles/bcfg2-zlib-1.2.3.ep
@@ -11,7 +11,7 @@
<environment
variable="CC"
- value="gcc"
+ value="gcc -static-libgcc"
type="set"
/>
diff --git a/encap/src/encap-profiles/daemontools-0.76.ep b/encap/src/encap-profiles/daemontools-0.76.ep
index 5eb4ba338..569a9aa4f 100644
--- a/encap/src/encap-profiles/daemontools-0.76.ep
+++ b/encap/src/encap-profiles/daemontools-0.76.ep
@@ -12,7 +12,7 @@
<environment
variable="CC"
- value="gcc"
+ value="gcc -static-libgcc"
type="set"
/>
@@ -311,8 +311,8 @@ else
REALDIR=`pwd -P`
rm /service/$SERVICE
svc -dx . log
- rm -rf ${REALDIR}/supervise
- rm -rf ${REALDIR}/log/supervise
+ test -d ${REALDIR}/supervise && rm -rf ${REALDIR}/supervise
+ test -d ${REALDIR}/log/supervise && rm -rf ${REALDIR}/log/supervise
fi
exit 0
]]></include_file>
@@ -436,6 +436,27 @@ cd /usr/local/encap/daemontools-0.76 && ./package/run
printf "Finished daemontools postinstall script.\n"
]]></include_file>
+<include_file name="preremove" mode="0755"><![CDATA[
+#!/bin/sh
+
+printf "Running daemontools preremove script...\n"
+date
+
+for SERVICE in `ls /service`; do
+ if [ -h /service/$SERVICE ]; then
+ printf "INFO: Removing /service/$SERVICE ...\n"
+ /command/svrm /service/$SERVICE || true
+ fi
+done
+
+if [ -h /service/.svscan ]; then
+ printf "INFO: Removing /service/.svscan ...\n"
+ /command/svrm /service/.svscan || true
+fi
+
+printf "Finished daemontools preremove script.\n"
+]]></include_file>
+
<encapinfo>
description daemontools - a collection of tools for managing UNIX services
exclude src
diff --git a/encap/src/encap-profiles/ostiary-3.4.ep b/encap/src/encap-profiles/ostiary-3.4.ep
index c3d95c6c0..af5557e96 100644
--- a/encap/src/encap-profiles/ostiary-3.4.ep
+++ b/encap/src/encap-profiles/ostiary-3.4.ep
@@ -12,7 +12,7 @@
<environment
variable="CC"
- value="gcc"
+ value="gcc -static-libgcc"
type="set"
/>
@@ -115,6 +115,20 @@ test -d /usr/local/var/multilog/ostiary || mkdir /usr/local/var/multilog/ostiary
printf "Finished ostiary postinstall script.\n"
]]></include_file>
+<include_file name="preremove" mode="0755"><![CDATA[
+#!/bin/sh
+
+printf "Running ostiary preremove script...\n"
+date
+
+if [ -h /service/ostiary ]; then
+ printf "INFO: Removing /service/ostiary...\n"
+ /command/svrm /service/ostiary
+fi
+
+printf "Finished ostiary preremove script.\n"
+]]></include_file>
+
<encapinfo>
description Ostiary - Simple, Secure Remote Script Execution
</encapinfo>
diff --git a/encap/src/makeself-dist/makedist.sh b/encap/src/makeself-dist/makedist.sh
index 385bd5b18..d7d58014a 100755
--- a/encap/src/makeself-dist/makedist.sh
+++ b/encap/src/makeself-dist/makedist.sh
@@ -48,17 +48,10 @@ tar -cf $DISTDIR/epkg.tar $EPKGDIR/*
# Copy bcfg2 and client deps to $DISTDIR
BCFG2="`basename $EPDIR/bcfg2-[0-9].[0-9]*-encap-*.tar.gz`"
-BCFG2_GETTEXT="`basename $EPDIR/bcfg2-gettext-*-encap-*.tar.gz`"
-BCFG2_LIBGCC="`basename $EPDIR/bcfg2-libgcc-*.tar.gz`"
-BCFG2_LIBICONV="`basename $EPDIR/bcfg2-libiconv-*-encap-*.tar.gz`"
-BCFG2_LIBSTDCXX="`basename $EPDIR/bcfg2-libstdc++-*.tar.gz`"
BCFG2_LIBXML2="`basename $EPDIR/bcfg2-libxml2-*-encap-*.tar.gz`"
BCFG2_LIBXSLT="`basename $EPDIR/bcfg2-libxslt-*-encap-*.tar.gz`"
BCFG2_LXML="`basename $EPDIR/bcfg2-lxml-*-encap-*.tar.gz`"
-BCFG2_OPENSSL="`basename $EPDIR/bcfg2-openssl-*-encap-*.tar.gz`"
-BCFG2_PYOPENSSL="`basename $EPDIR/bcfg2-pyopenssl-*-encap-*.tar.gz`"
BCFG2_PYTHON="`basename $EPDIR/bcfg2-python-[0-9].[0-9]*-encap-*.tar.gz`"
-BCFG2_ZLIB="`basename $EPDIR/bcfg2-zlib-*-encap-*.tar.gz`"
DAEMONTOOLS="`basename $EPDIR/daemontools-[0-9].[0-9]*-encap-*.tar.gz`"
OSTIARTY="`basename $EPDIR/ostiary-[0-9].[0-9]*-encap-*.tar.gz`"
@@ -67,7 +60,7 @@ if [ "${BCFG2_PYTHON_APT_TMP}x" != 'bcfg2-python-apt-*-encap-*.tar.gzx' ]; then
BCFG2_PYTHON_APT="$BCFG2_PYTHON_APT_TMP"
fi
-BCFG2DEPS="$BCFG2_GETTEXT $BCFG2_LIBGCC $BCFG2_LIBICONV $BCFG2_LIBSTDCXX $BCFG2_LIBXML2 $BCFG2_LIBXSLT $BCFG2_LXML $BCFG2_OPENSSL $BCFG2_PYOPENSSL $BCFG2_PYTHON $BCFG2_ZLIB $BCFG2_PYTHON_APT"
+BCFG2DEPS="$BCFG2_LIBXML2 $BCFG2_LIBXSLT $BCFG2_LXML $BCFG2_PYTHON $BCFG2_PYTHON_APT"
FILES="$BCFG2DEPS $BCFG2 $DAEMONTOOLS $OSTIARTY"