From 0a9c98e499211e6c291c4188720852bd3823584c Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Sat, 28 Jan 2017 20:04:36 -0500 Subject: use autothing --- Makefile | 45 +++++--------- README.md | 1 - config.mk.in | 198 ----------------------------------------------------------- 3 files changed, 16 insertions(+), 228 deletions(-) delete mode 120000 README.md delete mode 100644 config.mk.in diff --git a/Makefile b/Makefile index a745ecf..e25d8f4 100644 --- a/Makefile +++ b/Makefile @@ -1,34 +1,24 @@ # Copyright 2016 Luke Shumaker # License: WTFPLv2 -prefix = /usr/local -bindir = $(prefix)/bin -systemddir = $(prefix)/lib/systemd/system -sysconfdir = $(prefix)/etc +PACKAGE = httpconnectd +VERSION = 20161004 + pkgconfdir = $(sysconfdir)/httpconnectd -DESTDIR = Q = @ ######################################################################## - MAKEFLAGS += -r -vars = $(patsubst .var.%,%,$(filter .var.%,$^)) -build_targets += httpconnectd httpconnectd@.service httpconnectd.socket -build_targets += httpsconnectd httpsconnectd.service -build_targets += basicauth.conf-sample -install_targets += $(DESTDIR)$(bindir)/httpconnectd $(DESTDIR)$(systemddir)/httpconnectd@.service $(DESTDIR)$(systemddir)/httpconnectd.socket -install_targets += $(DESTDIR)$(bindir)/httpsconnectd $(DESTDIR)$(systemddir)/httpsconnectd.service $(DESTDIR)$(pkgconfdir)/https.conf -install_targets += $(DESTDIR)$(pkgconfdir)/basicauth.conf-sample - -all: $(build_targets) -install: $(install_targets) -clean: - rm -f -- httpconnectd httpconnectd.sh httpconnectd@.service - rm -f -- httpsconnectd httpsconnectd.sh httpsconnectd.service -uninstall: - rm -f -- $(install_targets) - rmdir -p -- $(dir $(install_targets)) -.PHONY: all install clean uninstall +topsrcdir ?= . +topoutdir ?= . +include $(topsrcdir)/build-aux/Makefile.head.mk + +files.out.all += httpconnectd httpconnectd@.service # httpconnectd.socket +files.out.all += httpsconnectd httpsconnectd.service +files.out.int += *.sh +files.sys.all += $(bindir)/httpconnectd $(systemddir)/httpconnectd@.service $(systemddir)/httpconnectd.socket +files.sys.all += $(bindir)/httpsconnectd $(systemddir)/httpsconnectd.service $(pkgconfdir)/https.conf +files.sys.all += $(pkgconfdir)/basicauth.conf-sample httpconnectd@.service: .var.bindir httpconnectd.sh: .var.pkgconfdir @@ -36,11 +26,10 @@ httpconnectd.sh: .var.pkgconfdir httpsconnectd.service: .var.bindir httpsconnectd.sh: .var.pkgconfdir -######################################################################## - %: %.sh install -m755 $< $@ +vars = $(patsubst .var.%,%,$(filter .var.%,$^)) %: %.in $(if $(Q),$(Q)echo 'EDIT < $< > $@';)$(if $(vars),sed $(foreach v,$(vars), -e 's|@$(v)@|$($(v))|g' ),cat) < $< > $@ @@ -51,9 +40,7 @@ $(DESTDIR)$(systemddir)/%: % $(DESTDIR)$(pkgconfdir)/%: % install -Dm644 $< $@ -.var.%: FORCE - $(Q)printf '%s' '$($*)' > .tmp$@ && { cmp -s .tmp$@ $@ && rm -f -- .tmp$@ || mv -Tf .tmp$@ $@; } || { rm -f -- .tmp$@; false; } - .DELETE_ON_ERROR: .SECONDARY: -.PHONY: FORCE + +include $(topsrcdir)/build-aux/Makefile.tail.mk diff --git a/README.md b/README.md deleted file mode 120000 index 5e5ea4a..0000000 --- a/README.md +++ /dev/null @@ -1 +0,0 @@ -build-aux/Makefile.README.txt \ No newline at end of file diff --git a/config.mk.in b/config.mk.in deleted file mode 100644 index be95ab4..0000000 --- a/config.mk.in +++ /dev/null @@ -1,198 +0,0 @@ -# Copyright (C) 2016-2017 Luke Shumaker -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the GNU Affero General Public License -# along with this program. If not, see . - -# This is based on §7.2 "Makefile Conventions" of the July 25, 2016 -# release of the GNU Coding Standards. -# -# Grep for '^##' in this file to see which Autoconf macros it depends -# on. - -dist.pkgname = @PACKAGE_TARNAME@ -gnuconf.pkgname = @PACKAGE_NAME@ - -# 7.2.2: Utilities in Makefiles -# ----------------------------- - -# It's ok to hard-code these commands in rules, but who wants to -# memorize the list of what's ok? - -## AC_PROG_AWK -## AC_PROG_GREP -## AC_PROG_EGREP -## AC_PROG_SED - -AWK = @AWK@ -CAT = cat -CMP = cmp -CP = cp -DIFF = diff -ECHO = echo -EGREP = @EGREP@ -EXPR = expr -FALSE = false -GREP = @GREP@ -INSTALL_INFO = install-info -LN = ln -LS = ls -MKDIR = mkdir -MV = mv -PRINTF = printf -PWD = pwd -RM = rm -RMDIR = rmdir -SED = @SED@ -SLEEP = sleep -SORT = sort -TAR = tar -TEST = test -TOUCH = touch -TR = tr -TRUE = true - -# 7.2.2: Utilities in Makefiles/7.2.3: Variables for Specifying Commands -# ---------------------------------------------------------------------- - -# Standard user-configurable programs. -# -# The list of programs here is specified in §7.2.2, but the associated FLAGS -# variables are specified in §7.2.3. I found it cleaner to list them together. - -## AC_PROG_INSTALL # @INSTALL@ @INSTALL_PROGRAM@ @INSTALL_SCRIPT@ @INSTALL_DATA@ -## AC_PROG_LEX # @LEX@ @LEXLIB@ -## AC_PROG_RANLIB -## AC_PROG_YACC -## AC_PROG_CC -# -# TODO: What causes Autoconf to define @AR@? - -AR = @AR@ -ARFLAGS = -BISON = bison -BISONFLAGS = -CC = @CC@ -CFLAGS = @CFLAGS@ # CFLAGS instead of CCFLAGS -FLEX = flex -FLEXFLAGS = -INSTALL = @INSTALL@ -# There is no INSTALLFLAGS[0] -LD = ld -LDFLAGS = @LDFLAGS@ -LDCONFIG = ldconfig # TODO[1] -LDCONFIGFLAGS = -LEX = @LEX@ -LFLAGS = #LFLAGS instead of LEXFLAGS -#MAKE -MAKEINFO = makeinfo -MAKEINFOFLAGS = -RANLIB = @RANLIB@ -RANLIBFLAGS = -TEXI2DVI = texi2dvi -TEXI2DVIFLAGS = -YACC = @YACC@ -YFLAGS = # YFLAGS instead of YACCFLAGS - -CPPFLAGS = @CPPFLAGS@ - -LN_S = @LN_S@ - -CHGRP = chgrp -CHGRPFLAGS = -CHMOD = chmod -CHMODFLAGS = -CHOWN = chown -CHOWNFLAGS = -MKNOD = mknod -MKNODFLAGS = - -# [0]: There is no INSTALLFLAGS because it would be inconsistent with how the -# standards otherwise recommend using $(INSTALL); with INSTALL_PROGRAM and -# INSTALL_DATA; which are specified in a way precluding the use of -# INSTALLFLAGS. To have the variable, but to ignore it in the common case -# would be confusing. -# -# [1]: The RANLIB and LDCONFIG variables need some extra smarts; §7.2.2 says: -# -# > When you use ranlib or ldconfig, you should make sure nothing bad -# > happens if the system does not have the program in question. Arrange -# > to ignore an error from that command, and print a message before the -# > command to tell the user that failure of this command does not mean a -# > problem. (The Autoconf ‘AC_PROG_RANLIB’ macro can help with this.) - -# 7.2.3: Variables for Specifying Commands -# ---------------------------------------- - -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_DATA = @INSTALL_DATA@ - -# 7.2.5: Variables for Installation Directories -# --------------------------------------------- - -# Root for the installation -prefix = @prefix@ -exec_prefix = @exec_prefix@ -# Executable programs -bindir = @bindir@ -sbindir = @sbindir@ -libexecdir = @libexecdir@ -# Data files (Autoconf won't support runstatedir until version 2.70) -datarootdir = @datarootdir@ -datadir = @datadir@ -sysconfdir = @sysconfdir@ -sharedstatedir = @sharedstatedir@ -localstatedir = @localstatedir@ -runstatedir = $(localstatedir)/run -# Specific types of files -includedir = @includedir@ -oldincludedir = @oldincludedir@ -docdir = @docdir@ -infodir = @infodir@ -htmldir = @htmldir@ -dvidir = @dvidir@ -pdfdir = @pdfdir@ -psdir = @psdir@ -libdir = @libdir@ -lispdir = $(datarootdir)/emacs/site-lisp -localedir = @localedir@ - -mandir = @mandir@ -man1dir = $(mandir)/man1 -man2dir = $(mandir)/man2 -man3dir = $(mandir)/man3 -man4dir = $(mandir)/man4 -man5dir = $(mandir)/man5 -man6dir = $(mandir)/man6 -man7dir = $(mandir)/man7 -man8dir = $(mandir)/man8 - -manext = .1 -man1ext = .1 -man2ext = .2 -man3ext = .3 -man4ext = .4 -man5ext = .5 -man6ext = .6 -man7ext = .7 -man8ext = .8 - -# 7.2.7: Install Command Categories -# --------------------------------- - -PRE_INSTALL = -POST_INSTALL = -NORMAL_INSTALL = - -PRE_UNINSTALL = -POST_UNINSTALL = -NORMAL_UNINSTALL = -- cgit v1.1-4-g5e80