Hi,
after waiting 3 years for a fix and running inbetween oldoldstable
version of Exim4 I managed today building a new exim4-daemon-custom
package from current stable source package.
There are two steps necessary to build custom packages:
1) uncomment custom packages in debian/control
2) in file debian/rules copy the line
'cp EDITME.eximon $(<D)/Local/eximon.conf'
from rule 'b-exim4-daemon-light/build-$(buildname)/exim:
b-exim4-daemon-light/Makefile configure-stamp'
to rule 'b-exim4-daemon-custom/build-$(buildname)/exim:
b-exim4-daemon-custom/Makefile configure-stamp'
I included a full patch of my changes to 'debian' directory.
I do not know the whole Debian package build process. It seems not so
relevant what in the 'extradaemonpackages=' line is specified. It seems
that all packages from debian/control files are built. Even if I remove
the 'exim-daemon-heavy' from 'extradaemonpackages=' line, the 'heavy'
packages are built anyway. I suppose this is the reason why the 'custom'
packages are commented out there.
So I suggest the following solution for the problem:
1) Let the custom packages in debian/control commented out but add a
comment in debian/rules that these lines have to be commented out to
build 'custom' packages.
2) Add the line mentioned above to debian/rules.
Finally I suppose that the mechanism using
'debian/create-custom-package' to create additional packages not named
'-custom' will not work anymore. There are now hardcoded rules for
custom packages inside debian/rules.
BR
Marko
diff -Nur exim4-4.89/debian/control exim4-4.89.custom/debian/control
--- exim4-4.89/debian/control 2017-01-04 19:31:46.000000000 +0100
+++ exim4-4.89.custom/debian/control 2017-09-07 10:02:38.195835115 +0200
@@ -178,35 +178,35 @@
can find the subscription web page on
http://lists.alioth.debian.org/mailman/listinfo/pkg-exim4-users
-#Package: exim4-daemon-custom
-#Architecture: any
-#Priority: optional
-#Provides: mail-transport-agent, exim4-localscanapi-2.0
-#Conflicts: mail-transport-agent
-#Replaces: mail-transport-agent, exim4-base (<= 4.61-1)
-#Depends: exim4-base (>= ${Upstream-Version}), ${shlibs:Depends}, ${misc:Depends}
-#Description: custom Exim MTA (v4) daemon with locally set features
-# Exim (v4) is a mail transport agent. This package contains a
-# custom-configured exim4 daemon compiled to local needs. This package
-# is not part of official Debian, but can easily be built from the
-# Debian source package. For information about the feature set compiled in,
-# and for bug reports, please find out who built your package.
-# .
-# The Debian exim4 packages have their own web page,
-# http://wiki.debian.org/PkgExim4. There is also a Debian-specific
-# FAQ list. Information about the way the Debian packages are
-# configured can be found in
-# /usr/share/doc/exim4-base/README.Debian.gz, which additionally contains
-# information about the way the Debian binary packages are built. The
-# very extensive upstream documentation is shipped in
-# /usr/share/doc/exim4-base/spec.txt.gz. To repeat the debconf-driven
-# configuration process in a standard setup, invoke dpkg-reconfigure
-# exim4-config. There is a Debian-centered mailing list,
-# [email protected]. Please ask Debian-specific
-# questions there, and only write to the upstream exim-users mailing
-# list if you are sure that your question is not Debian-specific. You
-# can find the subscription web page on
-# http://lists.alioth.debian.org/mailman/listinfo/pkg-exim4-users
+Package: exim4-daemon-custom
+Architecture: any
+Priority: optional
+Provides: mail-transport-agent, exim4-localscanapi-2.0
+Conflicts: mail-transport-agent
+Replaces: mail-transport-agent, exim4-base (<= 4.61-1)
+Depends: exim4-base (>= ${Upstream-Version}), ${shlibs:Depends}, ${misc:Depends}
+Description: custom Exim MTA (v4) daemon with locally set features
+ Exim (v4) is a mail transport agent. This package contains a
+ custom-configured exim4 daemon compiled to local needs. This package
+ is not part of official Debian, but can easily be built from the
+ Debian source package. For information about the feature set compiled in,
+ and for bug reports, please find out who built your package.
+ .
+ The Debian exim4 packages have their own web page,
+ http://wiki.debian.org/PkgExim4. There is also a Debian-specific
+ FAQ list. Information about the way the Debian packages are
+ configured can be found in
+ /usr/share/doc/exim4-base/README.Debian.gz, which additionally contains
+ information about the way the Debian binary packages are built. The
+ very extensive upstream documentation is shipped in
+ /usr/share/doc/exim4-base/spec.txt.gz. To repeat the debconf-driven
+ configuration process in a standard setup, invoke dpkg-reconfigure
+ exim4-config. There is a Debian-centered mailing list,
+ [email protected]. Please ask Debian-specific
+ questions there, and only write to the upstream exim-users mailing
+ list if you are sure that your question is not Debian-specific. You
+ can find the subscription web page on
+ http://lists.alioth.debian.org/mailman/listinfo/pkg-exim4-users
Package: eximon4
Architecture: any
@@ -299,31 +299,31 @@
can find the subscription web page on
http://lists.alioth.debian.org/mailman/listinfo/pkg-exim4-users
-#Package: exim4-daemon-custom-dbg
-#Architecture: any
-#Priority: extra
-#Section: debug
-#Depends: exim4-daemon-custom, ${misc:Depends}
-#Description: debugging symbols for the Exim MTA (v4) packages
-# Exim (v4) is a mail transport agent. This package contains
-# debugging symbols for the binaries contained in the
-# exim4-daemon-custom package.
-# .
-# The Debian exim4 packages have their own web page,
-# http://wiki.debian.org/PkgExim4. There is also a Debian-specific
-# FAQ list. Information about the way the Debian packages are
-# configured can be found in
-# /usr/share/doc/exim4-base/README.Debian.gz, which additionally contains
-# information about the way the Debian binary packages are built. The
-# very extensive upstream documentation is shipped in
-# /usr/share/doc/exim4-base/spec.txt.gz. To repeat the debconf-driven
-# configuration process in a standard setup, invoke dpkg-reconfigure
-# exim4-config. There is a Debian-centered mailing list,
-# [email protected]. Please ask Debian-specific
-# questions there, and only write to the upstream exim-users mailing
-# list if you are sure that your question is not Debian-specific. You
-# can find the subscription web page on
-# http://lists.alioth.debian.org/mailman/listinfo/pkg-exim4-users
+Package: exim4-daemon-custom-dbg
+Architecture: any
+Priority: extra
+Section: debug
+Depends: exim4-daemon-custom, ${misc:Depends}
+Description: debugging symbols for the Exim MTA (v4) packages
+ Exim (v4) is a mail transport agent. This package contains
+ debugging symbols for the binaries contained in the
+ exim4-daemon-custom package.
+ .
+ The Debian exim4 packages have their own web page,
+ http://wiki.debian.org/PkgExim4. There is also a Debian-specific
+ FAQ list. Information about the way the Debian packages are
+ configured can be found in
+ /usr/share/doc/exim4-base/README.Debian.gz, which additionally contains
+ information about the way the Debian binary packages are built. The
+ very extensive upstream documentation is shipped in
+ /usr/share/doc/exim4-base/spec.txt.gz. To repeat the debconf-driven
+ configuration process in a standard setup, invoke dpkg-reconfigure
+ exim4-config. There is a Debian-centered mailing list,
+ [email protected]. Please ask Debian-specific
+ questions there, and only write to the upstream exim-users mailing
+ list if you are sure that your question is not Debian-specific. You
+ can find the subscription web page on
+ http://lists.alioth.debian.org/mailman/listinfo/pkg-exim4-users
Package: exim4-dev
Architecture: any
diff -Nur exim4-4.89/debian/EDITME.exim4-custom.diff exim4-4.89.custom/debian/EDITME.exim4-custom.diff
--- exim4-4.89/debian/EDITME.exim4-custom.diff 1970-01-01 01:00:00.000000000 +0100
+++ exim4-4.89.custom/debian/EDITME.exim4-custom.diff 2017-09-07 10:11:27.575180443 +0200
@@ -0,0 +1,21 @@
+--- EDITME.exim4-light 2017-09-07 09:54:36.938040984 +0200
++++ EDITME.exim4-custom 2017-09-07 10:01:20.973638842 +0200
+@@ -306,7 +306,7 @@
+ LOOKUP_DSEARCH=yes
+ # LOOKUP_IBASE=yes
+ # LOOKUP_LDAP=yes
+-# LOOKUP_MYSQL=yes
++LOOKUP_MYSQL=yes
+ LOOKUP_NIS=yes
+ # LOOKUP_NISPLUS=yes
+ # LOOKUP_ORACLE=yes
+@@ -370,7 +370,9 @@
+ # You do not need to use this for any lookup information added via pkg-config.
+
+ # LOOKUP_INCLUDE=-I /usr/local/ldap/include -I /usr/local/mysql/include -I /usr/local/pgsql/include
++LOOKUP_INCLUDE=-I /usr/include/mysql
+ # LOOKUP_LIBS=-L/usr/local/lib -lldap -llber -lmysqlclient -lpq -lgds -lsqlite3
++LOOKUP_LIBS=-L/usr/lib -lmysqlclient
+
+
+ #------------------------------------------------------------------------------
diff -Nur exim4-4.89/debian/EDITME.exim4-heavy.diff exim4-4.89.custom/debian/EDITME.exim4-heavy.diff
--- exim4-4.89/debian/EDITME.exim4-heavy.diff 2017-03-04 11:18:50.000000000 +0100
+++ exim4-4.89.custom/debian/EDITME.exim4-heavy.diff 2017-09-07 10:11:27.577180164 +0200
@@ -1,5 +1,5 @@
---- EDITME.exim4-light 2017-03-04 11:15:58.309895066 +0100
-+++ EDITME.exim4-heavy 2017-03-04 11:17:12.616522005 +0100
+--- EDITME.exim4-light 2017-09-07 09:54:36.938040984 +0200
++++ EDITME.exim4-heavy 2017-09-07 09:54:36.959038065 +0200
@@ -212,7 +212,7 @@
# This one is very special-purpose, so is not included by default.
diff -Nur exim4-4.89/debian/EDITME.exim4-light.diff exim4-4.89.custom/debian/EDITME.exim4-light.diff
--- exim4-4.89/debian/EDITME.exim4-light.diff 2017-02-12 15:22:55.000000000 +0100
+++ exim4-4.89.custom/debian/EDITME.exim4-light.diff 2017-09-07 10:11:27.537185749 +0200
@@ -1,5 +1,5 @@
---- src/EDITME 2017-02-12 14:19:37.000000000 +0000
-+++ EDITME.exim4-light 2017-02-12 14:22:15.062382937 +0000
+--- src/EDITME 2017-09-06 17:18:20.000000000 +0200
++++ EDITME.exim4-light 2017-09-07 09:54:36.938040984 +0200
@@ -98,7 +98,7 @@
# /usr/local/sbin. The installation script will try to create this directory,
# and any superior directories, if they do not exist.
diff -Nur exim4-4.89/debian/EDITME.eximon.diff exim4-4.89.custom/debian/EDITME.eximon.diff
--- exim4-4.89/debian/EDITME.eximon.diff 2017-02-12 15:22:55.000000000 +0100
+++ exim4-4.89.custom/debian/EDITME.eximon.diff 2017-09-07 10:11:27.580179747 +0200
@@ -1,5 +1,5 @@
---- exim_monitor/EDITME 2017-02-12 00:58:50.000000000 +0000
-+++ EDITME.eximon 2017-02-12 14:19:40.765243359 +0000
+--- exim_monitor/EDITME 2017-03-04 22:21:35.000000000 +0100
++++ EDITME.eximon 2017-09-07 09:54:36.935041403 +0200
@@ -1,6 +1,7 @@
##################################################
# The Exim Monitor #
diff -Nur exim4-4.89/debian/rules exim4-4.89.custom/debian/rules
--- exim4-4.89/debian/rules 2017-02-18 18:20:49.000000000 +0100
+++ exim4-4.89.custom/debian/rules 2017-09-07 10:10:09.987007448 +0200
@@ -36,7 +36,7 @@
endif
ifndef extradaemonpackages
-extradaemonpackages=exim4-daemon-heavy
+extradaemonpackages=exim4-daemon-custom
endif
# If you want to build a daemon with a configuration tailored to YOUR special
# needs, uncomment the two custom packages in debian/control
@@ -219,6 +219,7 @@
rm -rf $(@D)
mkdir -p $(<D)/Local
cp EDITME.exim4-custom $(<D)/Local/Makefile
+ cp EDITME.eximon $(<D)/Local/eximon.conf
cd $(<D) && $(MAKE) FULLECHO=''
build-indep: build-indep-stamp