Hello,

I have contacted the [EMAIL PROTECTED] list for a Debian packager sponsor to get OpenSER into official distribution.

Mikael Magnusson sent back a patch to debian packaging file. See the attached message. Mainly, it is about introducing a variable to control what kind of package to be build.

The new version would not require to build tls packages if you do not need them. What do you think? Any better idea?

Details about ongoing discussion:
http://lists.alioth.debian.org/pipermail/pkg-voip-maintainers/2006-March/

Cheers,
Daniel

--- Begin Message ---
Daniel-Constantin Mierla wrote:
Hello Mikael,

On 03/10/06 11:44, Mikael Magnusson wrote:

Daniel-Constantin Mierla wrote:

Hello,

we have generated fresh packages for sid and uploaded the dsc file as well. There is no diff for packaging debian, the development platform is debian unstable.

Everything is at:
http://openser.org/pub/openser/latest/packages/deb-sid/

Cheers,
Daniel


I have made a patch that fixes some of the problems. It adds bison, flex and libmysqlclient15-dev to the build depends. The source package also depends on radiusclient which can be downloaded from iptel (radiusclient-ng-0.5.2.tar.gz).

What's the reason to build two set of packages, with and without tls support? I also think it's very odd that object files are cleaned in the middle of the install target. The rules file in my patch compiles one set of packages which can be selected by include or leave out notls in DEB_BUILD_OPTIONS.

/Mikael
diff -ur packaging/debian/changelog debian/changelog
--- packaging/debian/changelog	2006-02-27 16:57:23.000000000 +0100
+++ debian/changelog	2006-03-10 17:43:46.000000000 +0100
@@ -1,3 +1,10 @@
+openser (1.0.1-0.0) unstable; urgency=low
+
+  * NMU
+  * Use orig source.
+
+ -- Mikael Magnusson <[EMAIL PROTECTED]>  Fri, 10 Mar 2006 12:27:54 +0100
+
 openser (1.0.1-0) unstable; urgency=low
 
   * OpenSER v1.0.1 Release.
diff -ur packaging/debian/control debian/control
--- packaging/debian/control	2006-01-31 14:53:50.000000000 +0100
+++ debian/control	2006-03-10 13:11:54.000000000 +0100
@@ -2,7 +2,7 @@
 Section: net
 Priority: optional
 Maintainer: Daniel-Constantin Mierla <[EMAIL PROTECTED]>
-Build-Depends: debhelper (>= 4), libmysqlclient14-dev | libmysqlclient-dev, libexpat1-dev, libxml2-dev, libpq-dev | postgresql-dev, libradius-ng-dev, libssl-dev
+Build-Depends: debhelper (>= 4), libmysqlclient15-dev | libmysqlclient14-dev | libmysqlclient-dev, libexpat1-dev, libxml2-dev, libpq-dev | postgresql-dev, libradius-ng-dev, libssl-dev, flex, bison
 Standards-Version: 3.5.2
 
 
Endast i packaging/debian: cron.d.ex
Endast i packaging/debian: ex.package.doc-base
Endast i packaging/debian: manpage.1.ex
Endast i packaging/debian: manpage.sgml.ex
Endast i packaging/debian: preinst.ex
Endast i packaging/debian: prerm.ex
diff -ur packaging/debian/rules debian/rules
--- packaging/debian/rules	2006-02-02 17:01:58.000000000 +0100
+++ debian/rules	2006-03-10 17:50:11.000000000 +0100
@@ -15,7 +15,7 @@
 # export DH_COMPAT=4
 #  -- already set in compat
 #  force no striping (always include debug symbols for now)
-export DEB_BUILD_OPTIONS:="$(DEB_BUILD_OPTIONS) nostrip"
+#export DEB_BUILD_OPTIONS:="$(DEB_BUILD_OPTIONS) nostrip"
 
 # modules not in the "main" package or unstable 
 EXCLUDED_MODULES=	mysql jabber postgres cpl-c pa \
@@ -49,6 +49,20 @@
 ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
 	INSTALL_PROGRAM += -s
 endif
+ifneq (,$(findstring notls,$(DEB_BUILD_OPTIONS)))
+	TLS=
+else
+	TLS=-tls
+endif
+
+
+MODULES=cpl-module jabber-module mysql-module postgres-module radius-modules
+PACKAGES_ALL_MODULES=$(addprefix openser-, $(MODULES)) $(addprefix openser-tls-, $(MODULES))
+
+PACKAGES_SELECTED=openser$(TLS) $(addprefix openser$(TLS)-, $(MODULES))
+
+DH_PACKAGES=$(addprefix -p, $(PACKAGES_SELECTED))
+DH_MODULES_EXCL=$(addprefix -N, $(PACKAGES_ALL_MODULES))
 
 configure: configure-stamp
 configure-stamp:
@@ -63,13 +77,12 @@
 build-stamp: configure-stamp 
 	dh_testdir
 
-	# Add here commands to compile the package.
-	$(MAKE) all  skip_modules="$(EXCLUDED_MODULES)" cfg-target=/etc/openser/
-	$(MAKE) modules modules="$(MYSQL_MOD_PATH)" cfg-target=/etc/openser/
-	$(MAKE) modules modules="$(POSTGRES_MOD_PATH)" cfg-target=/etc/openser/
-	$(MAKE) modules modules="$(JABBER_MOD_PATH)" cfg-target=/etc/openser/
-	$(MAKE) modules modules="$(CPL_MOD_PATH)" cfg-target=/etc/openser/
-	$(MAKE) modules modules="$(RADIUS_MOD_PATH)" cfg-target=/etc/openser/
+	TLS=$(TLS) $(MAKE) all  skip_modules="$(EXCLUDED_MODULES)" cfg-target=/etc/openser/
+	TLS=$(TLS) $(MAKE) modules modules="$(MYSQL_MOD_PATH)" cfg-target=/etc/openser/
+	TLS=$(TLS) $(MAKE) modules modules="$(POSTGRES_MOD_PATH)" cfg-target=/etc/openser/
+	TLS=$(TLS) $(MAKE) modules modules="$(JABBER_MOD_PATH)" cfg-target=/etc/openser/
+	TLS=$(TLS) $(MAKE) modules modules="$(CPL_MOD_PATH)" cfg-target=/etc/openser/
+	TLS=$(TLS) $(MAKE) modules modules="$(RADIUS_MOD_PATH)" cfg-target=/etc/openser/
 	#/usr/bin/docbook-to-man debian/openser.sgml > openser.1
 
 	touch build-stamp
@@ -83,6 +96,9 @@
 	-$(MAKE) \
 		include_modules="$(MYSQL_MODULES) $(POSTGRES_MODULES) $(JABBER_MODULES) $(CPL_MODULES) $(RADIUS_MODULES)"\
 		 proper
+	rm -f tls/tls_init.o tls/tls_config.o tls/tls_server.o tls/tls_domain.o
+	rm -f tls/tls_config.d tls/tls_domain.d tls/tls_init.d tls/tls_server.d utils/gen_ha1/calc.d utils/gen_ha1/gen_ha1.d utils/openserunix/openserunix.d
+	rm -f cfg.tab.h
 
 	dh_clean
 
@@ -94,88 +110,45 @@
 
 	# Add here commands to install the package into debian/openser
 	$(MAKE) install  skip_modules="$(EXCLUDED_MODULES)" \
-		basedir=$(CURDIR)/debian/openser \
+		basedir=$(CURDIR)/debian/openser$(TLS) \
 		prefix=/usr \
-		cfg-prefix=$(CURDIR)/debian/openser \
+		cfg-prefix=$(CURDIR)/debian/openser$(TLS) \
 		cfg-target=/etc/openser/
 	# install only the mysql module
 	$(MAKE) install-modules-all modules="$(MYSQL_MOD_PATH)"  \
-		basedir=$(CURDIR)/debian/openser-mysql-module \
+		basedir=$(CURDIR)/debian/openser$(TLS)-mysql-module \
 		prefix=/usr \
-		cfg-prefix=$(CURDIR)/debian/openser-mysql-module \
+		cfg-prefix=$(CURDIR)/debian/openser$(TLS)-mysql-module \
 		cfg-target=/etc/openser/ \
-		doc-dir=share/doc/openser-mysql-module
+		doc-dir=share/doc/openser$(TLS)-mysql-module
 	# install only the postgres module
 	$(MAKE) install-modules-all modules="$(POSTGRES_MOD_PATH)"  \
-		basedir=$(CURDIR)/debian/openser-postgres-module \
+		basedir=$(CURDIR)/debian/openser$(TLS)-postgres-module \
 		prefix=/usr \
-		cfg-prefix=$(CURDIR)/debian/openser-postgres-module \
+		cfg-prefix=$(CURDIR)/debian/openser$(TLS)-postgres-module \
 		cfg-target=/etc/openser/ \
-		doc-dir=share/doc/openser-postgres-module
+		doc-dir=share/doc/openser$(TLS)-postgres-module
 	#install only the jabber module
 	$(MAKE) install-modules-all modules="$(JABBER_MOD_PATH)"  \
-		basedir=$(CURDIR)/debian/openser-jabber-module \
+		basedir=$(CURDIR)/debian/openser$(TLS)-jabber-module \
 		prefix=/usr \
-		cfg-prefix=$(CURDIR)/debian/openser-jabber-module \
+		cfg-prefix=$(CURDIR)/debian/openser$(TLS)-jabber-module \
 		cfg-target=/etc/openser/ \
-		doc-dir=share/doc/openser-jabber-module
+		doc-dir=share/doc/openser$(TLS)-jabber-module
 	#install only the cpl module
 	$(MAKE) install-modules-all modules="$(CPL_MOD_PATH)"  \
-		basedir=$(CURDIR)/debian/openser-cpl-module \
+		basedir=$(CURDIR)/debian/openser$(TLS)-cpl-module \
 		prefix=/usr \
-		cfg-prefix=$(CURDIR)/debian/openser-cpl-module \
+		cfg-prefix=$(CURDIR)/debian/openser$(TLS)-cpl-module \
 		cfg-target=/etc/openser/ \
-		doc-dir=share/doc/openser-cpl-module
+		doc-dir=share/doc/openser$(TLS)-cpl-module
 	#install only the radius modules
 	$(MAKE) install-modules-all modules="$(RADIUS_MOD_PATH)"  \
-		basedir=$(CURDIR)/debian/openser-radius-modules \
-		prefix=/usr \
-		cfg-prefix=$(CURDIR)/debian/openser-radius-modules \
-		cfg-target=/etc/openser/ \
-		doc-dir=share/doc/openser-radius-modules
-	# compile and install all TLS related packages 
-	$(MAKE) exclude_modules="" proper
-	# openser base package
-	TLS=1 $(MAKE) install skip_modules="$(EXCLUDED_MODULES)" \
-		basedir=$(CURDIR)/debian/openser-tls \
-		prefix=/usr \
-		cfg-prefix=$(CURDIR)/debian/openser-tls \
-		cfg-target=/etc/openser/
-	# install only the mysql-tls module
-	TLS=1 $(MAKE) install-modules-all modules="$(MYSQL_MOD_PATH)"  \
-		basedir=$(CURDIR)/debian/openser-tls-mysql-module \
-		prefix=/usr \
-		cfg-prefix=$(CURDIR)/debian/openser-tls-mysql-module \
-		cfg-target=/etc/openser/ \
-		doc-dir=share/doc/openser-tls-mysql-module
-	# install only the postgres-tls module
-	TLS=1 $(MAKE) install-modules-all modules="$(POSTGRES_MOD_PATH)"  \
-		basedir=$(CURDIR)/debian/openser-tls-postgres-module \
-		prefix=/usr \
-		cfg-prefix=$(CURDIR)/debian/openser-tls-postgres-module \
-		cfg-target=/etc/openser/ \
-		doc-dir=share/doc/openser-tls-postgres-module
-	#install only the jabber-tls module
-	TLS=1 $(MAKE) install-modules-all modules="$(JABBER_MOD_PATH)"  \
-		basedir=$(CURDIR)/debian/openser-tls-jabber-module \
-		prefix=/usr \
-		cfg-prefix=$(CURDIR)/debian/openser-tls-jabber-module \
-		cfg-target=/etc/openser/ \
-		doc-dir=share/doc/openser-tls-jabber-module
-	#install only the cpl-tls module
-	TLS=1 $(MAKE) install-modules-all modules="$(CPL_MOD_PATH)"  \
-		basedir=$(CURDIR)/debian/openser-tls-cpl-module \
-		prefix=/usr \
-		cfg-prefix=$(CURDIR)/debian/openser-tls-cpl-module \
-		cfg-target=/etc/openser/ \
-		doc-dir=share/doc/openser-tls-cpl-module
-	#install only the radius-tls modules
-	TLS=1 $(MAKE) install-modules-all modules="$(RADIUS_MOD_PATH)"  \
-		basedir=$(CURDIR)/debian/openser-tls-radius-modules \
+		basedir=$(CURDIR)/debian/openser$(TLS)-radius-modules \
 		prefix=/usr \
-		cfg-prefix=$(CURDIR)/debian/openser-tls-radius-modules \
+		cfg-prefix=$(CURDIR)/debian/openser$(TLS)-radius-modules \
 		cfg-target=/etc/openser/ \
-		doc-dir=share/doc/openser-tls-radius-modules
+		doc-dir=share/doc/openser$(TLS)-radius-modules
 	#dh_movefiles
 
 
@@ -191,7 +164,7 @@
 	dh_installdocs
 	dh_installexamples
 #	dh_installlogrotate
-	dh_installinit -popenser -popenser-tls --name=openser -- defaults 23
+	dh_installinit $(DH_MODULES_EXCL) --name=openser -- defaults 23
 	dh_installcron
 	dh_installman
 	dh_installinfo
@@ -207,7 +180,7 @@
 	dh_builddeb
 
 # Build architecture-independent packages using the common target
-binary-indep: build install
+#binary-indep: build install
 # (Uncomment this next line if you have such packages.)
 #        $(MAKE) -f debian/rules DH_OPTIONS=-i binary-common
 # We have nothing to do by default.
@@ -215,11 +188,11 @@
 
 # Build architecture-dependent packages using the common target
 binary-arch: build install
-	$(MAKE) -f debian/rules DH_OPTIONS=-a binary-common
+	$(MAKE) -f debian/rules DH_OPTIONS="$(DH_PACKAGES)" binary-common
 
 # Any other binary targets build just one binary package at a time.
 binary-%: build install
 	$(MAKE) -f debian/rules binary-common DH_OPTIONS=-p$*
 
-binary: binary-indep binary-arch
+binary: binary-arch
 .PHONY: build clean binary-indep binary-arch binary install configure
Endast i packaging/debian: watch.ex

--- End Message ---
_______________________________________________
Devel mailing list
Devel@openser.org
http://openser.org/cgi-bin/mailman/listinfo/devel

Reply via email to