# Process this file with automake to produce an input makefile. # # Copyright (C) 2013, 2014, 2018 Patrick McDermott # # This file is part of opkbuild. # # opkbuild is free software: you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # opkbuild 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 General Public License for more details. # # You should have received a copy of the GNU General Public License # along with opkbuild. If not, see . KEY='2250 31F0 47FF E516 63ED 516F 1A45 9ECD E4D6 04BE' if IN_GIT PACKAGE_VERSION_GIT = $$(git describe --tags --dirty | sed 's|^[^/-]*[/-]||') else PACKAGE_VERSION_GIT = $(PACKAGE_VERSION) endif # PACKAGE_STRING is used in the test suite output and log. # PACKAGE_VERSION can't be overridden. Automake ignores it in the IN_GIT # conditional (and throws a warning), and setting it to $(PACKAGE_VERSION_GIT) # outside the conditional causes PACKAGE_VERSION_GIT to reference itself. # VERSION is not set here because it is used by: # * Automake's distdir macro # * Automake's distdir target (which checks for $(VERSION) in NEWS) # * Our release target PACKAGE_STRING = $(PACKAGE_NAME) $(PACKAGE_VERSION_GIT) SUFFIXES = .sh .sho SHOBJEXT = sho SHPPFLAGS = \ -DSHSOEXT="$(SHSOEXT)" \ -DLIBOPKBUILD_SHSOVERSION="$(libopkbuild_shsoversion)" \ -DBINDIR="$(bindir)" \ -DLIBDATADIR="$(libdatadir)" \ -DDATADIR="$(datadir)" \ -DLOCALEDIR="$(localedir)" \ -DSYSCONFDIR="$(sysconfdir)" \ -DHELPERDIR="$(helperdir)" \ -DOPKG="$(OPKG)" SHSOEXT = shso SHLDFLAGS = \ -llibopkbuild.$(SHSOEXT).$(libopkbuild_shsoversion) LINK = printf "PACKAGE_VERSION='%s'\n" "$(PACKAGE_VERSION_GIT)" | \ '$(srcdir)/tools/shld.sh' -I '$(SH)' -o $@ $(SHLDFLAGS) config.sh - LIBLINK = '$(srcdir)/tools/shld.sh' -o $@ dist_pkgdata_DATA = optstring libdatadir = $(datadir)/sh helperdir = $(pkgdatadir)/helpers CLEANFILES = extra_sources = EXTRA_DIST = \ NEWS.opkhelper \ TODO \ autogen.sh \ tools/shpp.sh \ tools/shld.sh \ tools/shman.sh \ tools/mtime.sh todo_code_script = \ /^[0-9]* .[ \t]*\#[ \t]*TODO/,/^[0-9]* \.[ \t]*[^ \t\#]/{ \ /^[0-9]* \.[ \t]*\#/p; \ }; \ /^[0-9]* .[ \t]*\#[ \t]*FIXME/,/^[0-9]* \.[ \t]*[^ \t\#]/{ \ /^[0-9]* \.[ \t]*\#/p; \ }; \ /^[0-9]* .[ \t]*\#[ \t]*XXX/,/^[0-9]* \.[ \t]*[^ \t\#]/{ \ /^[0-9]* \.[ \t]*\#/p; \ }; todo_file_script = \ H; \ $${ \ g; \ s/^\n*[^\n][^\n]*\n[=][=]*\n\n*//; \ s/\n*[^\n][^\n]*\n[=][=]*\n.*$$//; \ p; \ }; todo: @set -e; \ printf '\n'; \ printf 'Code comments:\n'; \ printf '==============\n\n'; \ for f in $$(printf '%s\n' $(SOURCES) $(extra_sources) | sort -u); do \ printed=false; \ sed '=' "$(top_srcdir)/$${f}" | sed 'N; s/\n/ ./' | sed -n \ '$(todo_code_script)' | while read -r lineno line; do \ if ! $${printed}; then \ printf '%s:\n' "$${f}"; \ printed=true; \ fi; \ printf ' %6d %s\n' $${lineno} "$${line#.}"; \ done; \ done; \ printf '\n'; \ if [ -f '$(top_srcdir)/TODO' ]; then \ printf 'TODO file:\n'; \ printf '==========\n\n'; \ sed -n '$(todo_file_script)' '$(top_srcdir)/TODO'; \ printf '\n'; \ fi really-clean: distclean rm -Rf $(srcdir)/aclocal.m4 $(srcdir)/autom4te.cache/ \ $(srcdir)/configure \ $(srcdir)/build-aux/ $(srcdir)/INSTALL $(srcdir)/Makefile.in \ $(srcdir)/ChangeLog dist-hook: if [ -d '$(srcdir)/.git' ]; then \ printf 'Generated file. Do not edit.\n\n' \ >'$(distdir)/ChangeLog~'; \ GIT_DIR='$(srcdir)/.git' git log --stat --color=never \ >>'$(distdir)/ChangeLog~'; \ mv '$(distdir)/ChangeLog~' '$(distdir)/ChangeLog'; \ fi release: sed "s/^Released: ????-??-??\$$/Released: $$(date '+%Y-%m-%d')/" \ '$(srcdir)/NEWS' >'$(srcdir)/NEWS~' mv '$(srcdir)/NEWS~' '$(srcdir)/NEWS' $(MAKE) distcheck set -e; \ export GIT_DIR='$(srcdir)/.git'; \ export GIT_WORK_TREE='$(srcdir)'; \ git commit -m 'NEWS: Release $(PACKAGE) $(VERSION)' -- NEWS; \ git tag '$(PACKAGE)/$(VERSION)' HEAD; \ git push --tags origin master:master md5sum $(DIST_ARCHIVES) >MD5SUMS sha256sum $(DIST_ARCHIVES) >SHA256SUMS set -e; \ sigs=''; \ for f in $(DIST_ARCHIVES); do \ gpg --local-user $(KEY) --armor --sign $${f}; \ sigs="$${sigs} $${f}.asc"; \ done; \ ssh files@files.proteanos.com mkdir -p files/pub/$(PACKAGE); \ rsync -az --progress --stats $(DIST_ARCHIVES) $${sigs} \ MD5SUMS SHA256SUMS \ files@files.proteanos.com:files/pub/$(PACKAGE)/$(VERSION)/ '$(srcdir)/scripts/announce-release.sh' \ $(PACKAGE) $(VERSION) '$(PACKAGE_NAME)' .sh.sho: $(AM_V_GEN)$(MKDIR_P) "$$(dirname $@)" $(AM_V_at)$(SH) -n $< $(AM_V_at)'$(srcdir)/tools/shpp.sh' $(SHPPFLAGS) $< $@ include $(top_srcdir)/src/local.mk include $(top_srcdir)/lib/local.mk include $(top_srcdir)/man/local.mk include $(top_srcdir)/locale/local.mk include $(top_srcdir)/tests/local.mk