[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: