# opkbuild # Makefile.in # Input Makefile for configure. # # Copyright (C) 2012-2013 Patrick "P. J." McDermott # # This program 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 2 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 General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . package_name = @package_name@ package_version = @package_version@ package_description = @package_description@ srcdir = @srcdir@ prefix = @prefix@ bindir = @bindir@ libdir = @libdir@ pkglibdir = @pkglibdir@ libopkbuild = @libopkbuild@ datadir = @datadir@ mandir = @mandir@ man1dir = @man1dir@ man3dir = @man3dir@ sysconfdir = @sysconfdir@ metadata = @metadata@ opkhelper_3_0 = @opkhelper_3_0@ DESTDIR = / sh = @sh@ MACROS = \ 'DESTDIR=$(DESTDIR)' \ 'prefix=$(prefix)' \ 'bindir=$(bindir)' \ 'libdir=$(libdir)' \ 'datadir=$(datadir)' \ 'mandir=$(mandir)' \ 'sysconfdir=$(sysconfdir)' \ 'libopkbuild=$(libopkbuild)' \ 'metadata=$(metadata)' \ 'opkhelper_3_0=$(opkhelper_3_0)' pkglibpackagedir = $(pkglibdir)/package pkglibmetadatadir = $(pkglibdir)/metadata include $(srcdir)/src/local.mk include $(srcdir)/lib/local.mk include $(srcdir)/lib/package/local.mk include $(srcdir)/lib/metadata/local.mk include $(srcdir)/man/local.mk include $(srcdir)/locale/local.mk bin = $(bin_srcs:.sh=) pkglib = $(pkglib_srcs:.sh=.sm) pkglibpackage = $(pkglibpackage_srcs:.sh=.sm) pkglibmetadata = $(pkglibmetadata_srcs:.sh=.sm) man1 = $(man1_srcs:.1in=.1) man3 = $(man3_srcs:.3in=.3) locale = $(locale_srcs:.sh=.ms) distdir = $(package_name)-$(package_version) distfiles = \ configure \ Makefile.in \ COPYING.2 \ COPYING.3 \ README \ INSTALL \ ChangeLog \ TODO \ src/local.mk \ lib/local.mk \ lib/package/local.mk \ lib/metadata/local.mk \ man/local.mk \ locale/local.mk \ $(bin_srcs) \ $(pkglib_srcs) \ $(pkglibpackage_srcs) \ $(pkglibmetadata_srcs) \ $(man1_srcs) \ $(man3_srcs) \ $(locale_srcs) script = \ s&@@PACKAGE_NAME@@&$(package_name)&;\ s&@@PACKAGE_VERSION@@&$(package_version)&;\ s&@@PACKAGE_DESCRIPTION@@&$(package_description)&;\ s&@@BINDIR@@&$(bindir)&;\ s&@@PKGLIBDIR@@&$(pkglibdir)&;\ s&@@LIBOPKBUILD@@&$(libopkbuild)&;\ s&@@DATADIR@@&$(datadir)&;\ s&@@LOCALEDIR@@&$(localedir)&;\ s&@@SYSCONFDIR@@&$(sysconfdir)&;\ s&@@SH@@&$(sh)&;\ s&@@METADATA@@&$(metadata)&;\ s&@@OPKHELPER_3_0@@&$(opkhelper_3_0)&; .SUFFIXES: .SUFFIXES: .sh .sm .1in .1 .3in .3 .ms # XXX: Support for lists of multiple targets in inference rules doesn't appear # to be required by POSIX.1-2008 [1], but it exists in GNU Make and NetBSD # pmake. Expand this into separate rules if it is a problem with certain make # implementations. # [1]: Compare the inference and target rule definitions after fragments # <#tag_20_76_13_06> and <#tag_20_76_13_04> in # . .sh: @printf ' SED %s\n' '$@' @sed '$(script)' '$(srcdir)/$?' >'$@' @chmod 755 '$@' .sh.sm .1in.1 .3in.3: @printf ' SED %s\n' '$@' @sed '$(script)' '$(srcdir)/$?' >'$@' @chmod 644 '$@' .sh.ms: @printf ' CP %s\n' '$@' @obj='$@'; mkdir -p "$${obj%/*}" @cp '$(srcdir)/$?' '$@' @chmod 644 '$@' all: all-exec all-data all-exec: all-bin all-pkglib all-pkglibpackage all-pkglibmetadata all-bin: $(bin) all-pkglib: $(pkglib) all-pkglibpackage: $(pkglibpackage) all-pkglibmetadata: $(pkglibmetadata) all-data: all-man1 all-man3 all-locale all-man1: $(man1) all-man3: $(man3) all-locale: $(locale) clean: @printf 'Cleaning executable files...\n' @cd src && $(MAKE) $(MACROS) clean @printf 'Cleaning library files...\n' @cd lib && $(MAKE) $(MACROS) clean @cd lib/package && $(MAKE) $(MACROS) clean @cd lib/metadata && $(MAKE) $(MACROS) clean @printf 'Cleaning locales...\n' @cd locale && $(MAKE) $(MACROS) clean @printf 'Cleaning manual pages...\n' @cd man && $(MAKE) $(MACROS) clean install: all @printf 'Installing executable files...\n' @cd src && $(MAKE) $(MACROS) install @printf 'Installing libary files...\n' @cd lib && $(MAKE) $(MACROS) install @cd lib/package && $(MAKE) $(MACROS) install @cd lib/metadata && $(MAKE) $(MACROS) install @printf 'Installing locales...\n' @cd locale && $(MAKE) $(MACROS) install @printf 'Installing manual pages...\n' @cd man && $(MAKE) $(MACROS) install uninstall: @printf 'Uninstalling executable files...\n' @cd src && $(MAKE) $(MACROS) uninstall @printf 'Uninstalling library files...\n' @cd lib/package && $(MAKE) $(MACROS) uninstall @cd lib/metadata && $(MAKE) $(MACROS) uninstall @cd lib && $(MAKE) $(MACROS) uninstall @printf 'Uninstalling locales...\n' @cd locale && $(MAKE) $(MACROS) uninstall @printf 'Uninstalling manual pages...\n' @cd man && $(MAKE) $(MACROS) uninstall test: all @printf 'Running tests...\n' @cd tests && $(MAKE) $(MACROS) test $(distdir): @mkdir -p '$(distdir)' @cp -pR $(distfiles) '$(distdir)' @cd src && $(MAKE) '../$(distdir)/src' @cd lib && $(MAKE) '../$(distdir)/lib' @cd lib/package && $(MAKE) '../../$(distdir)/lib/package' @cd lib/metadata && $(MAKE) '../../$(distdir)/lib/metadata' @cd locale && $(MAKE) '../$(distdir)/locale' @cd man && $(MAKE) '../$(distdir)/man' @cd tests && $(MAKE) '../$(distdir)/tests' dist dist-gzip: $(distdir) @tar -cf - '$(distdir)' | gzip -9c > '$(distdir).tar.gz' @rm -Rf '$(distdir)' dist-bzip2: $(distdir) @tar -cf - '$(distdir)' | bzip2 -9c > '$(distdir).tar.bz2' @rm -Rf '$(distdir)' dist-xz: $(distdir) @tar -cf - '$(distdir)' | xz -c > '$(distdir).tar.xz' @rm -Rf '$(distdir)'