Bug#690163: unblock: smlnj/110.74-2
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock
Please unblock package smlnj
I've updated the packaging to address #689123 (configuration file in
/usr (policy 10.7.2): /usr/lib/smlnj/lib/pathconfig) by generating
/usr/lib/smlnj/pathconfig via triggers. Debdiff attached.
unblock smlnj/110.74-2
Cheers,
--
James
GPG Key: 4096R/331BA3DB 2011-12-05 James McCoy <jamessan@debian.org>
diffstat for smlnj_110.74-1 smlnj_110.74-2
debian/deregister | 12 ------------
debian/pkg-deregister | 17 -----------------
debian/pkg-register | 17 -----------------
debian/postinst.in | 7 -------
debian/prerm.in | 7 -------
debian/register | 15 ---------------
debian/smlnj-runtime.prerm | 7 -------
debian/smlnj-runtime.triggers | 1 +
smlnj-110.74/debian/changelog | 15 +++++++++++++++
smlnj-110.74/debian/control | 7 +++++++
smlnj-110.74/debian/rules | 26 ++++++--------------------
smlnj-110.74/debian/smlnj-runtime.install | 2 +-
smlnj-110.74/debian/smlnj-runtime.postinst | 21 +++++++++++++++++----
13 files changed, 47 insertions(+), 107 deletions(-)
reverted:
--- smlnj-110.74/debian/pkg-deregister
+++ smlnj-110.74.orig/debian/pkg-deregister
@@ -1,17 +0,0 @@
-#!/bin/sh
-
-set -e
-
-SMLNJ_HOME=/usr/lib/smlnj
-
-list=/var/lib/dpkg/info/$1.list
-
-for l in $(grep "$SMLNJ_HOME/lib/[^.][^/]*$" $list) ; do
- base=$(basename $l)
- $SMLNJ_HOME/bin/deregister $base
-done
-
-for b in $(grep "$SMLNJ_HOME/bin/[^.][^/]*$" $list) ; do
- base=$(basename $b)
- $SMLNJ_HOME/bin/deregister $base
-done
diff -u smlnj-110.74/debian/smlnj-runtime.install smlnj-110.74/debian/smlnj-runtime.install
--- smlnj-110.74/debian/smlnj-runtime.install
+++ smlnj-110.74/debian/smlnj-runtime.install
@@ -1 +1 @@
-bin/.arch-n-opsys bin/.link-sml bin/.run-sml bin/.run debscripts/* usr/lib/smlnj/bin
+bin/.arch-n-opsys bin/.link-sml bin/.run-sml bin/.run usr/lib/smlnj/bin
reverted:
--- smlnj-110.74/debian/prerm.in
+++ smlnj-110.74.orig/debian/prerm.in
@@ -1,7 +0,0 @@
-#!/bin/sh
-
-set -e
-
-@SMLNJ_HOME@/bin/pkg-deregister @PKG@
-
-#DEBHELPER#
diff -u smlnj-110.74/debian/control smlnj-110.74/debian/control
--- smlnj-110.74/debian/control
+++ smlnj-110.74/debian/control
@@ -40,6 +40,13 @@
Package: smlnj-runtime
Architecture: i386 amd64 powerpc
Depends: ${misc:Depends}, ${shlibs:Depends}
+Breaks: libckit-smlnj (<< 110.74-2~), libcml-smlnj (<< 110.74-2~),
+ libcmlutil-smlnj (<< 110.74-2~), libexene-smlnj (<< 110.74-2~),
+ libmlnlffi-smlnj (<< 110.74-2~), libmlrisctools-smlnj (<< 110.74-2~),
+ libpgraphutil-smlnj (<< 110.74-2~), libsmlnj-smlnj (<< 110.74-2~),
+ ml-burg (<< 110.74-2~), ml-lex (<< 110.74-2~), ml-lpt (<< 110.74-2~),
+ ml-nlffigen (<< 110.74-2~), ml-yacc (<< 110.74-2~), nowhere (<< 110.74-2~),
+ smlnj (<< 110.74-2~)
Description: Standard ML of New Jersey runtime system
SML/NJ is an implementation of the Standard ML programming language.
This package includes the runtime system only -- it provides garbage
reverted:
--- smlnj-110.74/debian/register
+++ smlnj-110.74.orig/debian/register
@@ -1,15 +0,0 @@
-#!/bin/sh
-
-set -e
-
-if [ $# -ne 2 ] ; then
- echo "usage: register name target"
- exit 1
-fi
-
-name=$1
-target=$2
-
-/usr/lib/smlnj/bin/deregister $name
-
-echo "$name $target" >> /usr/lib/smlnj/lib/pathconfig
diff -u smlnj-110.74/debian/rules smlnj-110.74/debian/rules
--- smlnj-110.74/debian/rules
+++ smlnj-110.74/debian/rules
@@ -20,15 +20,11 @@
VERSION=$(shell cat $(CONFIGDIR)/version)
-debscripts:=$(addprefix debian/,deregister mkorig pkg-deregister pkg-register register)
-
srcdirs:=$(basename $(wildcard *tgz))
basedirs:=$(basename $(notdir $(wildcard base/*tgz)))
notlibs:=smlnj-runtime smlnj-doc
libpkgs:=$(filter-out $(notlibs),$(shell dh_listpackages))
-postinsts:=$(addsuffix .postinst,$(addprefix debian/,$(libpkgs)))
-prerms:=$(addsuffix .prerm,$(addprefix debian/,$(libpkgs)))
vars.sed:
echo "s,@SHELL@,$(SHELL),g" > vars.sed
@@ -68,14 +64,6 @@
chmod 555 wrapper/$$c; \
done
-debian/%.postinst: debian/postinst.in vars.sed
- cat $< | sed -f vars.sed -e "s/@PKG@/$*/" > $@
-
-debian/%.prerm: debian/prerm.in vars.sed
- cat $< | sed -f vars.sed -e "s/@PKG@/$*/" > $@
-
-instscripts: $(postinsts) $(prerms)
-
unpack-source: unpack-source-stamp
unpack-source-stamp:
cd base && for t in $(basedirs); do tar zxf $$t.tgz; done
@@ -87,9 +75,6 @@
build-arch: build-arch-stamp
build-arch-stamp: unpack-source-stamp
- mkdir -p debscripts
- install -m 555 $(debscripts) debscripts
-
cat debian/patches/* | patch -N -p1 1>/dev/null || true
cp config/targets config/targets.orig
cp debian/targets config/targets
@@ -115,12 +100,11 @@
rm -f *-stamp
rm -f vars.sed
- rm -f $(prerms) $(postinsts)
rm -f arch-n-opsys
rm -f boot*tgz
cd bootstrap && rm -rf bin ckit config lib src
rm -rf $(SRCDIR)/system/foo.* $(SRCDIR)/system/sml.*
- rm -rf bin lib wrapper debscripts
+ rm -rf bin lib wrapper
cd base && rm -rf $(basedirs)
rm -rf $(srcdirs)
@@ -138,7 +122,7 @@
dh_installdirs -i
dh_install -i
-install-arch: build-arch-stamp instscripts
+install-arch: build-arch-stamp
dh_testdir
dh_testroot
dh_prep
@@ -154,8 +138,10 @@
# make sure that the build path doesn't sneak in the link and run scripts
sed -i 's/BIN_DIR=".*smlnj.*"/BIN_DIR="\/usr\/lib\/smlnj\/bin\/"/' $(CURDIR)/debian/smlnj-runtime/usr/lib/smlnj/bin/.*-sml
-# install base pathconfig rules to smlnj-runtime package
- install -m 644 config/extrapathconfig $(CURDIR)/debian/smlnj-runtime/usr/lib/smlnj/lib/pathconfig
+# install extrapathconfig rules to smlnj-runtime package to use as a seed for
+# the trigger-generated pathconfig file
+ install -m 644 config/extrapathconfig $(CURDIR)/debian/smlnj-runtime/usr/lib/smlnj/lib/
+ echo bindir ../bin >> $(CURDIR)/debian/smlnj-runtime/usr/lib/smlnj/lib/extrapathconfig
binary-arch: install-arch
dh_testdir -a
diff -u smlnj-110.74/debian/smlnj-runtime.postinst smlnj-110.74/debian/smlnj-runtime.postinst
--- smlnj-110.74/debian/smlnj-runtime.postinst
+++ smlnj-110.74/debian/smlnj-runtime.postinst
@@ -1,12 +1,25 @@
-#!/bin/sh
+#!/bin/bash
set -e
SMLNJ_HOME=/usr/lib/smlnj
+PATHCONFIG="$SMLNJ_HOME/lib/pathconfig"
-touch $SMLNJ_HOME/lib/pathconfig
-chmod 664 $SMLNJ_HOME/lib/pathconfig
+build_pathconfig() {
+ cp -f "$SMLNJ_HOME/lib/extrapathconfig" "$PATHCONFIG"
+ for f in "$SMLNJ_HOME"/lib/[^.]*; do
+ if [ -d "$f" ]; then
+ g="$(basename $f)"
+ echo "$g $g" >> "$PATHCONFIG"
+ fi
+ done
+ for f in "$SMLNJ_HOME"/bin/[^.]*; do
+ if [ -f "$f" ]; then
+ echo "$(basename $f) ../bin" >> "$PATHCONFIG"
+ fi
+ done
+}
-$SMLNJ_HOME/bin/register bindir ../bin
+build_pathconfig
#DEBHELPER#
reverted:
--- smlnj-110.74/debian/pkg-register
+++ smlnj-110.74.orig/debian/pkg-register
@@ -1,17 +0,0 @@
-#!/bin/sh
-
-set -e
-
-SMLNJ_HOME=/usr/lib/smlnj
-
-list=/var/lib/dpkg/info/$1.list
-
-for l in $(grep "$SMLNJ_HOME/lib/[^.][^/]*$" $list) ; do
- base=$(basename $l)
- $SMLNJ_HOME/bin/register $base $base
-done
-
-for b in $(grep "$SMLNJ_HOME/bin/[^.][^/]*$" $list) ; do
- base=$(basename $b)
- $SMLNJ_HOME/bin/register $base ../bin
-done
reverted:
--- smlnj-110.74/debian/postinst.in
+++ smlnj-110.74.orig/debian/postinst.in
@@ -1,7 +0,0 @@
-#!/bin/sh
-
-set -e
-
-@SMLNJ_HOME@/bin/pkg-register @PKG@
-
-#DEBHELPER#
reverted:
--- smlnj-110.74/debian/smlnj-runtime.prerm
+++ smlnj-110.74.orig/debian/smlnj-runtime.prerm
@@ -1,7 +0,0 @@
-#!/bin/sh
-
-set -e
-
-/usr/lib/smlnj/bin/deregister bindir
-
-#DEBHELPER#
reverted:
--- smlnj-110.74/debian/deregister
+++ smlnj-110.74.orig/debian/deregister
@@ -1,12 +0,0 @@
-#!/bin/sh
-
-set -e
-
-if [ $# -ne 1 ] ; then
- echo "usage: deregister name"
- exit 1
-fi
-
-name=$1
-
-sed -i -e "/^$name /d" /usr/lib/smlnj/lib/pathconfig
diff -u smlnj-110.74/debian/changelog smlnj-110.74/debian/changelog
--- smlnj-110.74/debian/changelog
+++ smlnj-110.74/debian/changelog
@@ -1,3 +1,18 @@
+smlnj (110.74-2) unstable; urgency=low
+
+ * Stop shipping /usr/lib/smlnj/bin/mkorig. This is just used for packaging
+ purposes.
+ * Install config/extrapathconfig as seed for pathconfig trigger. (Closes:
+ #689123)
+ * Add /usr/lib/smlnj trigger to smlnj-runtime to allow updating pathconfig
+ automatically.
+ * Remove {pkg-,}{de,}register scripts. Updating pathconfig is now handled
+ by triggers.
+ * Remove no longer needed postinst/prerm maintainer scripts.
+ * Add Breaks for packages installing files under /usr/lib/smlnj
+
+ -- James McCoy <jamessan@debian.org> Fri, 05 Oct 2012 20:46:53 -0400
+
smlnj (110.74-1) unstable; urgency=low
* New upstream release.
only in patch2:
unchanged:
--- smlnj-110.74.orig/debian/smlnj-runtime.triggers
+++ smlnj-110.74/debian/smlnj-runtime.triggers
@@ -0,0 +1 @@
+interest /usr/lib/smlnj
Reply to: