Tags 456870 +pending
Tags 191592 +pending
Thanks

Hi!

While reviewing Barry's patch I found that radiusclient was in serious need
of love.  There was a 5 year old proposal for an NMU that had never been
taken into account, and the build system was obsolete.

So, I took the old NMU proposal and integrated it with the current package.  I
did NOT apply the source code changes though (the ones that Torsten described
as "roaring penguin extensions"), because they were invasive and it was not
clear what they were doing.

So, what I did was migrate the package to debhelper 4, cleaning up the
whole build process.  Most of the old rules weren't needed anymore, I kept
the part that linked the libtool files, eventhough I'm not sure it's really
needed.

Since this is a very invasive NMU, I'm going to upload it to the 10-day
DELAYED queue.  In any case, I did take care of producing the same results,
the .debs generated are the same, except for a few maintainer scripts. 

This is the changelog entry:

radiusclient (0.3.2-11.1) unstable; urgency=low

  * Non-maintainer upload to fix Failure To Build From Source.

  [ Barry deFreese ]
  * dh_makeshlibs before dh_shlibdeps. (Closes: #456870).
  * Fix watch file. (Closes: #449695).
  * Convert changelog to UTF-8. (Closes: #453981, #454004, #454015).

  [ Margarita Manterola ]
  * Integrated old changes suggested by Torsten Knodt (Closes: #191592):
    + Corrected lintian warnings:
      - Fixed debian/copyright wording.
      - Removed dot at the end of short descriptions.
    + Moved to debhelper version 4.
    + Cleaned up debian/rules.
    + Patched the sources in order to get a working DESTDIR variable.
  * Cleaned up the whole build process.
  * Removed unneeded files (*.files, *.conffiles, empty postinst/postrm)
  * Updated to latest Standards-Version:
    + Added libradius1.postrm to comply with policy regarding ldconfig
  * Fixed lintian warnings:
    + Fixed old changelog entries that closed bugs with the wrong format.

 -- Margarita Manterola <[EMAIL PROTECTED]>  Thu, 28 Feb 2008 12:42:34 +0000

I'm attaching the debdiff output for the NMU I'll be doing.

-- 
 Bessos,    (o_
    Marga.  (\)_
diff -u radiusclient-0.3.2/debian/changelog radiusclient-0.3.2/debian/changelog
--- radiusclient-0.3.2/debian/changelog
+++ radiusclient-0.3.2/debian/changelog
@@ -1,3 +1,29 @@
+radiusclient (0.3.2-11.1) unstable; urgency=low
+
+  * Non-maintainer upload to fix Failure To Build From Source.
+
+  [ Barry deFreese ]
+  * dh_makeshlibs before dh_shlibdeps. (Closes: #456870).
+  * Fix watch file. (Closes: #449695).
+  * Convert changelog to UTF-8. (Closes: #453981, #454004, #454015).
+
+  [ Margarita Manterola ]
+  * Integrated old changes suggested by Torsten Knodt (Closes: #191592):
+    + Corrected lintian warnings:
+      - Fixed debian/copyright wording.
+      - Removed dot at the end of short descriptions.
+    + Moved to debhelper version 4.
+    + Cleaned up debian/rules.
+    + Patched the sources in order to get a working DESTDIR variable.
+  * Cleaned up the whole build process.
+  * Removed unneeded files (*.files, *.conffiles, empty postinst/postrm)
+  * Updated to latest Standards-Version:
+    + Added libradius1.postrm to comply with policy regarding ldconfig
+  * Fixed lintian warnings:
+    + Fixed old changelog entries that closed bugs with the wrong format.
+
+ -- Margarita Manterola <[EMAIL PROTECTED]>  Thu, 28 Feb 2008 12:42:34 +0000
+
 radiusclient (0.3.2-11) unstable; urgency=low
 
   * Insert a (dummy) binary-indep target.
@@ -168,19 +194,20 @@
 
  -- Turbo Fredriksson <[EMAIL PROTECTED]>  Sat, 29 Jan 2000 03:54:02 +0100
 
-radiusclient (0.3.1-5) unstable; urgency=low, closes=35031
+radiusclient (0.3.1-5) unstable; urgency=low
 
   * Updated the dependecy on perl/perl5. Closes: #41519
   * Upgraded standards-version to 2.5.1
   * Reformatted the descriptions to fit on 80 chars/line.
   * Added the missing ${shlibs:Depends} where needed.
-    Patch by Hertzog Raphaël
+    Patch by Hertzog Raphaël
   
  -- Turbo Fredriksson <[EMAIL PROTECTED]>  Thu, 22 Jul 1999 12:17:30 +0200
 
-radiusclient (0.3.1-4) unstable; urgency=low, closes=35031
+radiusclient (0.3.1-4) unstable; urgency=low
 
   * Install the _CORRECT_ binaries, not the wrappers! *blush*
+  * Closes: #35031
 
  -- Turbo Fredriksson <[EMAIL PROTECTED]>  Wed, 24 Mar 1999 23:30:34 +0100
 
diff -u radiusclient-0.3.2/debian/rules radiusclient-0.3.2/debian/rules
--- radiusclient-0.3.2/debian/rules
+++ radiusclient-0.3.2/debian/rules
@@ -1,17 +1,4 @@
 #!/usr/bin/make -f
-# Made with the aid of dh_make, by Craig Small
-# Sample debian/rules that uses debhelper. GNU copyright 1997 by Joey Hess.
-# This version is for a hypothetical package that builds an
-# architecture-dependant package, as well as an architecture-independant
-# package.
-
-package=radiusclient
-
-version=$(shell expr `pwd` : '.*-\([0-9.]*\)')
-version_major=$(shell expr `pwd` : '.*-\([0-9]*\).[0-9.]*')
-version_so=0.0.1
-
-topdir=$(shell pwd)
 
 # Uncomment this to turn on verbose mode. 
 #export DH_VERBOSE=1
@@ -19,20 +6,28 @@
 build: build-stamp
 build-stamp:
 	dh_testdir
+	
+# Link to the current autotools and libtool files
+ifneq "$(wildcard /usr/share/libtool/config.sub)" ""
+	ln -sf /usr/share/libtool/config.sub config.sub
+endif
+ifneq "$(wildcard /usr/share/libtool/config.guess)" ""
+	ln -sf /usr/share/libtool/config.guess config.guess
+endif
+ifneq "$(wildcard /usr/share/libtool/ltmain.sh)" ""
+	ln -sf /usr/share/libtool/ltmain.sh ltmain.sh
+endif
 
-	@( \
-	  for link in config.guess config.sub ltmain.sh missing mkinstalldirs; do \
-		ln -s /usr/share/libtool/$$link $$link; \
-	  done; \
-	)
-
+# Configure	
 	./configure --prefix=/usr --sysconfdir=/etc --enable-shadow
 
-	rm -f libtool
-	ln -s /usr/bin/libtool libtool
+# Link to the current libtool
+ifneq "$(wildcard /usr/bin/libtool)" ""
+	ln -sf /usr/bin/libtool libtool
+endif
 
+# Make	
 	make
-
 	touch build-stamp
 
 clean:
@@ -41,78 +36,59 @@
 	rm -f build-stamp
 
 	-rm -rf static shared
-	@( \
-	  for link in config.guess config.sub ltmain.sh missing mkinstalldirs; do \
-		rm -f $$link; \
-	  done; \
-	)
 
-	# Add here commands to clean up after the build process.
-	-$(MAKE) distclean
+# Removed linked files (if linked)
+ifneq "$(wildcard /usr/share/libtool/config.sub)" ""
+	-rm config.sub
+endif
+ifneq "$(wildcard /usr/share/libtool/config.guess)" ""
+	-rm config.guess
+endif
+ifneq "$(wildcard /usr/share/libtool/ltmain.sh)" ""
+	-rm ltmain.sh
+endif
+ifneq "$(wildcard /usr/bin/libtool)" ""
+	-rm libtool
+endif
 
+	# Clean up after the build process.
+	[ ! -f Makefile ] || $(MAKE) distclean
 	dh_clean
 
-dirs:
+binary-arch: build
 	dh_installdirs
-
+	
 	dh_testdir
 	dh_testroot
-
+	
+	make DESTDIR=$(CURDIR)/debian/tmp install
+	cp login.radius/migs/login.radius $(CURDIR)/debian/tmp/usr/sbin/
+	
 	dh_installdocs
 	dh_installexamples
 	dh_installmenu
-#	dh_installmanpages
-	dh_undocumented login.radius.1 radacct.1 radexample.1 radlogin.1 radstatus.1
+	dh_installmanpages
 	dh_installchangelogs CHANGES 
-
-binary-arch: dirs radiusclient1 libradius1 libradius1-dev
-	dh_installdeb
-
+	dh_install --list-missing --sourcedir=debian/tmp
+	
 	dh_strip
 	dh_compress
 	dh_fixperms
-
+	chmod 600 $(CURDIR)/debian/radiusclient1/etc/radiusclient/servers
+	
+	dh_installdeb
+	dh_makeshlibs
 	dh_shlibdeps
 	dh_gencontrol
-	dh_makeshlibs
 	dh_md5sums
-
-	chmod 600 $(topdir)/debian/tmp/etc/radiusclient/servers
+	
 	dh_builddeb
 
-radiusclient1: build
-	for file in radacct radexample radlogin radstatus; do \
-	  install -m755 $(topdir)/src/.libs/$$file $(topdir)/debian/tmp/usr/sbin; \
-	done
-	install -m755 $(topdir)/login.radius/migs/login.radius $(topdir)/debian/tmp/usr/sbin
-	for file in issue port-id-map servers; do \
-	  install -m644 $(topdir)/etc/$$file $(topdir)/debian/tmp/etc/radiusclient; \
-	done
-
-libradius1: build
-	install -m755 $(topdir)/lib/.libs/libradiusclient.so.$(version_so) debian/libradius1/usr/lib
-	for file in radiusclient.conf dictionary dictionary.ascend dictionary.compat dictionary.merit; do \
-	  install -m644 $(topdir)/etc/$$file $(topdir)/debian/libradius1/etc/radiusclient; \
-	done
-	cd debian/libradius1/usr/lib && ln -s libradiusclient.so.$(version_so) libradiusclient.so.0
-
-libradius1-dev: build
-	install -m644 $(topdir)/include/radiusclient.h $(topdir)/debian/libradius1-dev/usr/include
-	install -m644 $(topdir)/lib/.libs/libradiusclient.a $(topdir)/debian/libradius1-dev/usr/lib
-	install -m644 $(topdir)/lib/libradiusclient.la $(topdir)/debian/libradius1-dev/usr/lib
-	cd debian/libradius1-dev/usr/lib && ln -s libradiusclient.so.$(version_so) libradiusclient.so
-	cat debian/libradius1-dev/usr/lib/libradiusclient.la | sed '[EMAIL PROTECTED]@installed=yes@' \
-		> debian/libradius1-dev/usr/lib/libradiusclient.la.new
-	mv debian/libradius1-dev/usr/lib/libradiusclient.la.new debian/libradius1-dev/usr/lib/libradiusclient.la
-
 binary-indep:
 	# Nothing to be done in binary-indep
 
-source diff:                                                                  
-	@echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
-
 binary: binary-arch
-.PHONY: build clean binary-arch binary radiusclient1 libradius1-dev binary-indep
+.PHONY: build clean binary-arch binary binary-indep
 
 # Local variables:
 # mode: Makefile
diff -u radiusclient-0.3.2/debian/copyright radiusclient-0.3.2/debian/copyright
--- radiusclient-0.3.2/debian/copyright
+++ radiusclient-0.3.2/debian/copyright
@@ -3,7 +3,7 @@
 
 It was downloaded from ftp.cityline.net/pub/radiusclient/
 
-Upstream Author(s): Lars Fenneberg <[EMAIL PROTECTED]>
+Upstream Author: Lars Fenneberg <[EMAIL PROTECTED]>
 
 Copyright:
 
diff -u radiusclient-0.3.2/debian/control radiusclient-0.3.2/debian/control
--- radiusclient-0.3.2/debian/control
+++ radiusclient-0.3.2/debian/control
@@ -2,14 +2,14 @@
 Section: admin
 Priority: extra
 Maintainer: Turbo Fredriksson <[EMAIL PROTECTED]>
-Build-Depends: debhelper, libtool
-Standards-Version: 3.5.2
+Build-Depends: debhelper (>= 4), libtool
+Standards-Version: 3.7.3
 
 Package: radiusclient1
 Architecture: any
 Section: admin
-Depends: libradius1, perl5, ${shlibs:Depends}
-Description: /bin/login replacement which uses the RADIUS protocol for authentication.
+Depends: libradius1, perl5, ${shlibs:Depends}, ${misc:Depends}
+Description: /bin/login replacement which uses the RADIUS protocol for authentication
  Radiusclient is a /bin/login replacement  which gets called by a getty
  to log  in a user and  to setup the user's  login environment.  Normal
  login programs just  check the login name and  password which the user
@@ -22,8 +22,8 @@
 Package: libradius1-dev
 Architecture: any
 Section: libdevel
-Depends: libradius1, libc6-dev
-Description: /bin/login replacement with RADIUS. Header file and link lib.
+Depends: libradius1, libc6-dev, ${misc:Depends}
+Description: /bin/login replacement with RADIUS. Header file and link lib
  Radiusclient is a /bin/login replacement  which gets called by a getty
  to log  in a user and  to setup the user's  login environment.  Normal
  login programs just  check the login name and  password which the user
@@ -37,8 +37,8 @@
 Package: libradius1
 Architecture: any
 Section: libs
-Depends: ${shlibs:Depends}
-Description: /bin/login replacement with RADIUS. Shared lib to used by programs.
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: /bin/login replacement with RADIUS. Shared lib to used by programs
  Radiusclient is a /bin/login replacement  which gets called by a getty
  to log  in a user and  to setup the user's  login environment.  Normal
  login programs just  check the login name and  password which the user
reverted:
--- radiusclient-0.3.2/debian/libradius1.files
+++ radiusclient-0.3.2.orig/debian/libradius1.files
@@ -1 +0,0 @@
-/usr/lib/*.so.*
reverted:
--- radiusclient-0.3.2/debian/radiusclient1.files
+++ radiusclient-0.3.2.orig/debian/radiusclient1.files
@@ -1,9 +0,0 @@
-etc/radiusclient/issue
-etc/radiusclient/port-id-map
-etc/radiusclient/radiusclient.conf
-etc/radiusclient/servers
-usr/sbin/radlogin
-usr/sbin/radstatus
-usr/sbin/radacct
-usr/sbin/radexample
-usr/sbin/login.radius
reverted:
--- radiusclient-0.3.2/debian/libradius1-dev.files
+++ radiusclient-0.3.2.orig/debian/libradius1-dev.files
@@ -1,4 +0,0 @@
-usr/include/radiusclient.h
-usr/lib/libradiusclient.la
-usr/lib/libradiusclient.a
-
diff -u radiusclient-0.3.2/debian/watch radiusclient-0.3.2/debian/watch
--- radiusclient-0.3.2/debian/watch
+++ radiusclient-0.3.2/debian/watch
@@ -1,5 +1,3 @@
-# Example watch control file for uscan
-# Rename this file to "watch" and then you can run the "uscan" command
-# to check for upstream updates and more.
-# Site		 Directory		Pattern			Version	Script
-ftp.cityline.net /pub/radiusclient	radiusclient-*.tar.gz	debian	uupdate
+version=3
+
+ftp://ftp.cityline.net/pub/radiusclient/radiusclient-([\d.]+)\.tar\.gz
reverted:
--- radiusclient-0.3.2/debian/radiusclient1.postinst
+++ radiusclient-0.3.2.orig/debian/radiusclient1.postinst
@@ -1,3 +0,0 @@
-#!/bin/sh
-
-chmod 600 /etc/radiusclient/servers
reverted:
--- radiusclient-0.3.2/debian/postrm
+++ radiusclient-0.3.2.orig/debian/postrm
@@ -1,3 +0,0 @@
-#!/bin/sh
-
-#DEBHELPER#
reverted:
--- radiusclient-0.3.2/debian/conffiles
+++ radiusclient-0.3.2.orig/debian/conffiles
@@ -1,3 +0,0 @@
-/etc/radiusclient/issue
-/etc/radiusclient/port-id-map
-/etc/radiusclient/servers
reverted:
--- radiusclient-0.3.2/debian/libradius1.conffiles
+++ radiusclient-0.3.2.orig/debian/libradius1.conffiles
@@ -1,5 +0,0 @@
-/etc/radiusclient/radiusclient.conf
-/etc/radiusclient/dictionary
-/etc/radiusclient/dictionary.ascend
-/etc/radiusclient/dictionary.compat
-/etc/radiusclient/dictionary.merit
only in patch2:
unchanged:
--- radiusclient-0.3.2.orig/debian/libradius1.postrm
+++ radiusclient-0.3.2/debian/libradius1.postrm
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+if [ "$1" = "remove" ]; then
+    ldconfig
+fi
+
+#DEBHELPER#
only in patch2:
unchanged:
--- radiusclient-0.3.2.orig/debian/radiusclient1.install
+++ radiusclient-0.3.2/debian/radiusclient1.install
@@ -0,0 +1,8 @@
+usr/sbin/radlogin
+usr/sbin/radstatus
+usr/sbin/radacct
+usr/sbin/radexample
+usr/sbin/login.radius
+etc/radiusclient/servers
+etc/radiusclient/issue
+etc/radiusclient/port-id-map
only in patch2:
unchanged:
--- radiusclient-0.3.2.orig/debian/libradius1.install
+++ radiusclient-0.3.2/debian/libradius1.install
@@ -0,0 +1,6 @@
+usr/lib/libradiusclient.so.*
+etc/radiusclient/radiusclient.conf
+etc/radiusclient/dictionary
+etc/radiusclient/dictionary.ascend
+etc/radiusclient/dictionary.compat
+etc/radiusclient/dictionary.merit
only in patch2:
unchanged:
--- radiusclient-0.3.2.orig/debian/compat
+++ radiusclient-0.3.2/debian/compat
@@ -0,0 +1 @@
+4
only in patch2:
unchanged:
--- radiusclient-0.3.2.orig/debian/libradius1-dev.install
+++ radiusclient-0.3.2/debian/libradius1-dev.install
@@ -0,0 +1,4 @@
+usr/include/radiusclient.h
+usr/lib/libradiusclient.la
+usr/lib/libradiusclient.a
+usr/lib/libradiusclient.so
only in patch2:
unchanged:
--- radiusclient-0.3.2.orig/etc/Makefile.in
+++ radiusclient-0.3.2/etc/Makefile.in
@@ -225,16 +225,16 @@
 
 radiusclient.conf: radiusclient.conf.in
 	sed -e 's|@sbin''dir@|$(sbindir)|g' \
-	    -e 's|@pkgsysconf''dir@|$(pkgsysconfdir)|g' \
+	    -e 's|@pkgsysconf''dir@|$(DESTDIR)$(pkgsysconfdir)|g' \
 	    <$(srcdir)/radiusclient.conf.in >radiusclient.conf
 
 install-data-local: servers
-	$(mkinstalldirs) $(pkgsysconfdir); \
-        echo " $(INSTALL) -m600 $(srcdir)/servers $(pkgsysconfdir)/servers"; \
-        $(INSTALL) -m600 $(srcdir)/servers $(pkgsysconfdir)/servers
+	$(mkinstalldirs) $(DESTDIR)$(pkgsysconfdir); \
+        echo " $(INSTALL) -m600 $(srcdir)/servers $(DESTDIR)$(pkgsysconfdir)/servers"; \
+        $(INSTALL) -m600 $(srcdir)/servers $(DESTDIR)$(pkgsysconfdir)/servers
 
 uninstall-local:
-	rm -f $(pkgsysconfdir)/servers
+	rm -f $(DESTDIR)$(pkgsysconfdir)/servers
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
 # Otherwise a system limit (for SysV at least) may be exceeded.
only in patch2:
unchanged:
--- radiusclient-0.3.2.orig/etc/Makefile.am
+++ radiusclient-0.3.2/etc/Makefile.am
@@ -22,13 +22,13 @@
 
 radiusclient.conf: radiusclient.conf.in
 	sed -e 's|@sbin''dir@|$(sbindir)|g' \
-	    -e 's|@pkgsysconf''dir@|$(pkgsysconfdir)|g' \
+	    -e 's|@pkgsysconf''dir@|$(DESTDIR)$(pkgsysconfdir)|g' \
 	    <$(srcdir)/radiusclient.conf.in >radiusclient.conf
 
 install-data-local: servers
-	$(mkinstalldirs) $(pkgsysconfdir); \
-        echo " $(INSTALL) -m600 $(srcdir)/servers $(pkgsysconfdir)/servers"; \
-        $(INSTALL) -m600 $(srcdir)/servers $(pkgsysconfdir)/servers
+	$(mkinstalldirs) $(DESTDIR)$(pkgsysconfdir); \
+        echo " $(INSTALL) -m600 $(srcdir)/servers $(DESTDIR)$(pkgsysconfdir)/servers"; \
+        $(INSTALL) -m600 $(srcdir)/servers $(DESTDIR)$(pkgsysconfdir)/servers
 
 uninstall-local:
-	rm -f $(pkgsysconfdir)/servers
+	rm -f $(DESTDIR)$(pkgsysconfdir)/servers

Attachment: signature.asc
Description: Digital signature

Reply via email to