diff options
| author | Laurent Bercot <ska-skaware@skarnet.org> | 2026-03-18 13:01:36 +0000 |
|---|---|---|
| committer | Laurent Bercot <ska-skaware@skarnet.org> | 2026-03-18 13:01:36 +0000 |
| commit | 7dec0971dd6952a6f72fe44f374ab474519d9f06 (patch) | |
| tree | 5ef8bb3339e21735d8543751b91245f7bba90369 | |
| parent | 50b0d5ce3ad04e2d49b7ea7ff8046a64991b1bf4 (diff) | |
| download | smtpd-starttls-proxy-7dec0971dd6952a6f72fe44f374ab474519d9f06.tar.gz | |
Make /var/qmail installation optional
| -rw-r--r-- | CONTRIBUTING | 28 | ||||
| -rw-r--r-- | INSTALL | 4 | ||||
| -rw-r--r-- | Makefile | 6 | ||||
| -rwxr-xr-x | configure | 18 | ||||
| -rw-r--r-- | doc/index.html | 4 | ||||
| -rw-r--r-- | doc/upgrade.html | 4 | ||||
| -rw-r--r-- | package/configure-snippets/configure_case_lines | 4 | ||||
| -rw-r--r-- | package/configure-snippets/configure_generate_make | 6 | ||||
| -rw-r--r-- | package/configure-snippets/configure_help_install | 1 | ||||
| -rw-r--r-- | package/configure-snippets/configure_help_options | 6 | ||||
| -rw-r--r-- | package/configure-snippets/configure_init_vars | 1 | ||||
| -rw-r--r-- | package/targets.mak | 6 |
12 files changed, 68 insertions, 20 deletions
diff --git a/CONTRIBUTING b/CONTRIBUTING index 6279422..3173998 100644 --- a/CONTRIBUTING +++ b/CONTRIBUTING @@ -1,5 +1,31 @@ - Please add a Signed-Off-By: line at the end of your commit, +- License + + Your contributions to this project are governed by the ISC license. + Please review the COPYING file for this project. + + +- Contribution terms + + When making a contribution you agree to the following terms: + + * I, the contributor, am the copyright owner of these changes + * I submit these changes according to the project's license +with no additionam requirements + * I understand these changes in full and will be able to respond +to review comments. + + Please add a Signed-Off-By: line at the end of your commits, which certifies that you have the right and authority to pass it on as an open-source patch, as explicited in the Developer's Certificate of Origin available in this project's DCO file, or at https://developercertificate.org/ + + +- AI policy + + This project does not accept contributions generated by LLMs +(large language models), sometimes also referred to as "AI". + This policy is not open to discussion. Any content submitted that is +clearly labelled as LLM-generated will be immediately closed, and any +attempt to bypass this policy in any way will result in a ban from the +project. @@ -6,8 +6,8 @@ Build Instructions - A POSIX-compliant C development environment - GNU make version 3.81 or later - - skalibs version 2.14.5.2 or later: https://skarnet.org/software/skalibs/ - - s6 version 2.14.0.1 or later: https://skarnet.org/software/s6/ + - skalibs version 2.14.6.0 or later: https://skarnet.org/software/skalibs/ + - s6 version 2.15.0.0 or later: https://skarnet.org/software/s6/ - s6-networking version 2.7.2.1 or later: https://skarnet.org/software/s6-networking/ This software will run on any operating system that implements @@ -24,7 +24,6 @@ PC_TARGETS := LIB_DEFS := BIN_SYMLINKS := TEST_BINS := -EXTRA_INSTALL := -include config.mak include package/targets.mak @@ -125,7 +124,7 @@ ifneq ($(strip $(ALL_BINS)$(SHARED_LIBS)),) exec $(STRIP) -R .note -R .comment $(ALL_BINS) $(SHARED_LIBS) endif -install: install-dynlib install-libexec install-bin install-symlinks install-lib install-include install-pkgconfig $(EXTRA_INSTALL) +install: install-dynlib install-libexec install-bin install-symlinks install-lib install-include install-pkgconfig install-dynlib: $(SHARED_LIBS:lib%.$(SHLIB_EXT).xyzzy=$(DESTDIR)$(dynlibdir)/lib%.$(SHLIB_EXT)) install-libexec: $(LIBEXEC_TARGETS:%=$(DESTDIR)$(libexecdir)/%) install-bin: $(BIN_TARGETS:%=$(DESTDIR)$(bindir)/%) @@ -191,6 +190,9 @@ lib%.a.xyzzy: lib%.so.xyzzy: exec $(CC) -o $@ $(CFLAGS_ALL) $(CFLAGS_SHARED) $(LDFLAGS_ALL) $(LDFLAGS_SHARED) -Wl,-soname,$(patsubst lib%.so.xyzzy,lib%.so.$(version_M),$@) -Wl,-rpath=$(dynlibdir) $^ $(EXTRA_LIBS) $(LDLIBS) +-lskarnet: + $(error Unable to link against skalibs. Check that you are using the correct --with-lib or --with-dynlib options; see ./configure --help) + .PHONY: it all clean distclean tests check tgz strip install install-dynlib install-bin install-lib install-include install-pkgconfig .DELETE_ON_ERROR: @@ -25,6 +25,7 @@ Fine tuning of the installation directories: --includedir=DIR C header files [PREFIX/include] --sysconfdir=DIR global configuration files [PREFIX/etc] --pkgconfdir=DIR pkg-config .pc files [PREFIX/lib/pkgconfig] + --qmaildir=DIR qmail installation directory [/var/qmail] If no --prefix option is given, by default libdir (but not dynlibdir) will be /usr/lib, and includedir will be /usr/include. @@ -48,9 +49,9 @@ Optional features: --enable-pkgconfig Build and install .pc files for pkg-config [disabled] --enable-slashpackage[=ROOT] assume /package installation at ROOT [disabled] --enable-absolute-paths hardcode absolute BINDIR/foobar paths in binaries [disabled] - --with-qmail-home=DIR qmail installation directory [/var/qmail] - --with-qmailr-ids=uid:gid qmail-remote user:group [qmailr:qmail] - + --with-qmail-home=DIR qmail installation directory [/var/qmail] + --with-qmailr-ids=uid:gid qmail-remote user:group [qmailr:qmail] + --enable-qmail-install setup qmail to use qmail-remote [disabled] EOF exit 0 } @@ -172,6 +173,7 @@ vpathd='' build= qmailhome=/var/qmail qmailrids=qmailr:qmail +qmailinstall=false for arg ; do case "$arg" in @@ -209,8 +211,10 @@ for arg ; do --disable-slashpackage) sproot= ; slashpackage=false ;; --enable-absolute-paths|--enable-absolute-paths=yes) abspath=true ;; --disable-absolute-paths|--enable-absolute-paths=no) abspath=false ;; - --with-qmail-home=*) qmailhome=${arg#*=} ;; + --qmaildir=*) qmailhome=${arg#*=} ;; --with-qmailr-ids=*) qmailrids=${arg#*=} ;; + --enable-qmail-install|--enable-qmail-install=yes) qmailinstall=true ;; + --disable-qmail-install|--enable-qmail-install=no) qmailinstall=false ;; --enable-*|--disable-*|--with-*|--without-*|--*dir=*) ;; --enable-*|--disable-*|--with-*|--without-*|--*dir=*) ;; --host=*|--target=*) target=${arg#*=} ;; @@ -518,7 +522,11 @@ else fi echo "QMAIL_HOME := $qmailhome" echo "QMAILR_IDS := $qmailrids" - +if $qmailinstall ; then + echo 'INSTALL_QMAIL := 1' +else + echo 'INSTALL_QMAIL :=' +fi exec 1>&3 3>&- echo " ... done." diff --git a/doc/index.html b/doc/index.html index c5423e5..c6db2ac 100644 --- a/doc/index.html +++ b/doc/index.html @@ -34,11 +34,11 @@ inetd-like mail servers that do not already support it. <li> A POSIX-compliant system with a standard C development environment </li> <li> GNU make, version 3.81 or later </li> <li> <a href="//skarnet.org/software/skalibs/">skalibs</a> version -2.14.5.2 or later. It's a build-time requirement. It's also a run-time +2.14.6.0 or later. It's a build-time requirement. It's also a run-time requirement if you link against the shared version of the skalibs library. </li> <li> <a href="//skarnet.org/software/s6/">s6</a> version -2.14.0.1 or later. It's a build-time and run-time requirement. </li> +2.15.0.0 or later. It's a build-time and run-time requirement. </li> <li> <a href="//skarnet.org/software/s6-dns/">s6-dns</a> version 2.4.1.1 or later. It's a build-time requirement. It's also a run-time requirement if you link against the shared version of the s6-dns library. </li> diff --git a/doc/upgrade.html b/doc/upgrade.html index 5393bc0..2720b16 100644 --- a/doc/upgrade.html +++ b/doc/upgrade.html @@ -22,9 +22,9 @@ <ul> <li> <a href="//skarnet.org/software/skalibs/">skalibs</a> -dependency bumped to 2.14.5.2 </li> +dependency bumped to 2.14.6.0 </li> <li> <a href="//skarnet.org/software/s6/">s6</a> -dependency bumped to 2.14.0.1 </li> +dependency bumped to 2.15.0.0 </li> <li> New dependency: <a href="//skarnet.org/software/s6-dns/">s6-dns</a> 2.4.1.1 </li> <li> <a href="//skarnet.org/software/s6-networking/">s6-networking</a> dependency bumped to 2.7.2.1 and made mandatory. </li> diff --git a/package/configure-snippets/configure_case_lines b/package/configure-snippets/configure_case_lines index d0af7a0..abc541f 100644 --- a/package/configure-snippets/configure_case_lines +++ b/package/configure-snippets/configure_case_lines @@ -1,2 +1,4 @@ - --with-qmail-home=*) qmailhome=${arg#*=} ;; + --qmaildir=*) qmailhome=${arg#*=} ;; --with-qmailr-ids=*) qmailrids=${arg#*=} ;; + --enable-qmail-install|--enable-qmail-install=yes) qmailinstall=true ;; + --disable-qmail-install|--enable-qmail-install=no) qmailinstall=false ;; diff --git a/package/configure-snippets/configure_generate_make b/package/configure-snippets/configure_generate_make index 54fa00c..83bdb9d 100644 --- a/package/configure-snippets/configure_generate_make +++ b/package/configure-snippets/configure_generate_make @@ -1,3 +1,7 @@ echo "QMAIL_HOME := $qmailhome" echo "QMAILR_IDS := $qmailrids" - +if $qmailinstall ; then + echo 'INSTALL_QMAIL := 1' +else + echo 'INSTALL_QMAIL :=' +fi diff --git a/package/configure-snippets/configure_help_install b/package/configure-snippets/configure_help_install index 8b13789..4ae3171 100644 --- a/package/configure-snippets/configure_help_install +++ b/package/configure-snippets/configure_help_install @@ -1 +1,2 @@ + --qmaildir=DIR qmail installation directory [/var/qmail] diff --git a/package/configure-snippets/configure_help_options b/package/configure-snippets/configure_help_options index b439bc5..769f3a2 100644 --- a/package/configure-snippets/configure_help_options +++ b/package/configure-snippets/configure_help_options @@ -1,3 +1,3 @@ - --with-qmail-home=DIR qmail installation directory [/var/qmail] - --with-qmailr-ids=uid:gid qmail-remote user:group [qmailr:qmail] - + --with-qmail-home=DIR qmail installation directory [/var/qmail] + --with-qmailr-ids=uid:gid qmail-remote user:group [qmailr:qmail] + --enable-qmail-install setup qmail to use qmail-remote [disabled] diff --git a/package/configure-snippets/configure_init_vars b/package/configure-snippets/configure_init_vars index a30b387..2a2dd1c 100644 --- a/package/configure-snippets/configure_init_vars +++ b/package/configure-snippets/configure_init_vars @@ -1,2 +1,3 @@ qmailhome=/var/qmail qmailrids=qmailr:qmail +qmailinstall=false diff --git a/package/targets.mak b/package/targets.mak index f957f22..2f572dc 100644 --- a/package/targets.mak +++ b/package/targets.mak @@ -5,7 +5,9 @@ qmail-remote-io LIBEXEC_TARGETS := -EXTRA_INSTALL += install-qmailr +ifdef INSTALL_QMAIL + +install: install-qmailr QMAILR_UID := $(firstword $(subst :, ,$(QMAILR_IDS))) QMAILR_GID := $(lastword $(subst :, ,$(QMAILR_IDS))) @@ -21,3 +23,5 @@ install-qmailr: touch -- $(DESTDIR)$(QMAIL_HOME)/run/qmail-remote/tcpto6 chown -- $(QMAILR_IDS) $(DESTDIR)$(QMAIL_HOME)/run/qmail-remote/tcpto6 chmod 0640 $(DESTDIR)$(QMAIL_HOME)/run/qmail-remote/tcpto6 + +endif |
