summaryrefslogtreecommitdiff
path: root/Makefile.am
Commit message (Collapse)AuthorAgeFilesLines
* build: propagate failures from asciidoctorThomas Weißschuh2023-01-071-0/+1
|
* build: track dependencies of manpage generationThomas Weißschuh2023-01-061-1/+9
| | | | | This will rerun the manpage generation if any of the involved files have been updated.
* build-sys: distribute Meson filesKarel Zak2022-03-011-0/+23
| | | | | | | | This commit makes it possible to use Meson build-system when compiling util-linux from tarball. Fixes: https://github.com/util-linux/util-linux/issues/1591 Signed-off-by: Karel Zak <kzak@redhat.com>
* build-sys: generate all man pages for distribution tarballKarel Zak2022-01-251-1/+14
| | | | | | | | | | Now "make dist" and "make distcheck" follows autoconf. It means that disabled tools or tools that cannot compile are ignored, and man-pages for these tools are not generated. This is a problem for people without asciidoctor (adoc -> man generator). Fixes: https://github.com/util-linux/util-linux/issues/1577 Signed-off-by: Karel Zak <kzak@redhat.com>
* build-sys: make re-use of generated man-pages more robustKarel Zak2021-06-041-1/+7
| | | | | | | | We need to ignore man-pages at all if not available (not generated yet), but asciidoctor is not installed. Fix: https://github.com/karelzak/util-linux/issues/1334 Signed-off-by: Karel Zak <kzak@redhat.com>
* build-sys: add generated man-pages to distribution tarballKarel Zak2021-06-031-5/+3
| | | | Signed-off-by: Karel Zak <kzak@redhat.com>
* build-sys: fix {release-version} man pagesKarel Zak2021-06-021-0/+2
| | | | | | | | | | * define {release-version} as $VERSION * do not use {docdir} in adoc; it's built-in ascidoctor variable https://docs.asciidoctor.org/asciidoc/latest/attributes/document-attributes-reference/#intrinsic-attributes Addresses: https://github.com/karelzak/util-linux/issues/1327 Signed-off-by: Karel Zak <kzak@redhat.com>
* build-sys: keep adoc files in dist_noinst_DATAKarel Zak2021-05-051-6/+6
| | | | | | | | | | * rename MANPAGES_EXTRA= to ADOCFILES_COMMON= * keep track about individual adoc files by dist_noinst_DATA= This variable is not effected by automake conditions, so the files are always distributed. Signed-off-by: Karel Zak <kzak@redhat.com>
* build-sys: add targets to generated translated man pagesKarel Zak2021-04-221-0/+6
| | | | | | | | * add --enable-poman (disabled by default) * add po-man/Makefile.am for "make all" and "make install" * install man pages to $mandir/$lang/man{1,3,5,8} Signed-off-by: Karel Zak <kzak@redhat.com>
* tools: add missing stuff to Makefile.amKarel Zak2021-04-091-2/+2
| | | | Signed-off-by: Karel Zak <kzak@redhat.com>
* tools: replace checkmans.sh with adoc scriptsKarel Zak2021-04-081-1/+2
| | | | Signed-off-by: Karel Zak <kzak@redhat.com>
* build-sys: make man pages optional, add --disable-asciidocKarel Zak2021-04-061-15/+13
| | | | | | | | | | | * don't use dist_noinst_DATA= for generated man pages (use man_MANS=) * make asciidoctor optional * add --disable-asciidoc to explicitly disable man pages Addresses: https://github.com/karelzak/util-linux/issues/1257 Signed-off-by: Karel Zak <kzak@redhat.com>
* build-sys: improve asciidoc generic ruleKarel Zak2021-04-011-6/+10
| | | | | | | | | * keep it based on suffixes to make possible to generate individual pages in dependence on original .adoc * use absolute builddir to be robust enough for 'make distcheck' * make man page links depend on man pages Signed-off-by: Karel Zak <kzak@redhat.com>
* build-sys: cleanup distcheck optionsKarel Zak2021-03-311-2/+2
| | | | Signed-off-by: Karel Zak <kzak@redhat.com>
* build-sys: make man pages location independentKarel Zak2021-03-311-1/+1
| | | | | | | | We need to evaluate "include::" directive relatively to project top-level source directory rather than to the current document location. Signed-off-by: Karel Zak <kzak@redhat.com>
* Merge remote-tracking branch 'mariobl/topic/asciidoc'Karel Zak2021-03-291-0/+25
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * mariobl/topic/asciidoc: (71 commits) Asciidoc: Update .pot template Asciidoc: Reorder example command sequence Asciidoc: Update .pot template Asciidoc: Better gettext message splitting in nsenter.1.adoc Asciidoc: Update .pot template Asciidoc: Fix typo and remove invisible spaces which confuse po4a Asciidoc: Update .pot template Asciidoc: Fix typo Asciidoc: Fix artifact from initial import, sixth attempt Asciidoc: Update .pot template Asciidoc: Fix artifacts from initial import, fifth attempt Asciidoc: Fix artifacts from initial import, fourth attempt Asciidoc: Update .pot template Asciidoc: Fix artifacts from initial import, third attempt Asciidoc: Fix artifacts from initial import, second attempt Asciidoc: Fix artifacts from initial import Asciidoc: Add po4a config file and initial translation template for man pages Asciidoc: Small indentation fix in mount.8.adoc Asciidoc: Review sys-utils man pages, part 2 build-sys: fix out-of-tree build ... Signed-off-by: Karel Zak <kzak@redhat.com>
| * build-sys: fix out-of-tree buildKarel Zak2021-03-261-1/+1
| | | | | | | | | | | | | | asciidoctor cannot write to source directory, we need to force it to use $builddir. Signed-off-by: Karel Zak <kzak@redhat.com>
| * build-sys: add man-common/Makemodule.amKarel Zak2021-03-261-3/+5
| | | | | | | | Signed-off-by: Karel Zak <kzak@redhat.com>
| * build-sys: split man pages and man page linksKarel Zak2021-03-261-2/+7
| | | | | | | | | | | | | | | | | | | | The symlinks are generated by asciidoctor and current dist_man_MANS depends on order (nan page before man link). This solutions is useless when execute "make -j". The real solution is to keep man pages in separate variable and use only this variable evaluate what we need to generate. Signed-off-by: Karel Zak <kzak@redhat.com>
| * Add missing backslash to Makefile.amMario Blättermann2021-03-241-1/+1
| |
| * Asciidoc: Adapt Makefiles to new asciidoc man pagesMario Blättermann2021-03-161-0/+18
| |
* | build-sys: add EXTRA_LTLIBRARIES beween CLEANFILESKarel Zak2021-03-161-1/+2
| | | | | | | | Signed-off-by: Karel Zak <kzak@redhat.com>
* | Automake: use EXTRA_LTLIBRARIES instead of noinst_LTLIBRARIESLuca Boccassi2021-03-151-1/+1
|/ | | | | | | | | | | noinst_LTLIBRARIES causes the libraries to be always built unconditionally. EXTRA_LTLIBRARIES causes them to be built only if other build target needs them. In other words, avoid building libcommon.a and libtcolors.a unless they are needed by another library/executable and save some build time. https://www.gnu.org/software/automake/manual/html_node/Libtool-Convenience-Libraries.html
* build-sys: add support for --enable-fuzzing-engineEvgeny Vereshchagin2020-08-061-1/+11
| | | | Signed-off-by: Evgeny Vereshchagin <evvers@ya.ru>
* cryptsetup: add option to use via dlopen in libmountLuca Boccassi2020-07-071-0/+7
| | | | | | | | | | | | | | | | | | | | | Enabling libcrypsetup in libmount had several unintended side effects. First of all, it increases the Debian minimal image size by ~2.5% (5.6MB worth of new libraries). Then, due to libcryptsetup linkage to OpenSSL and libjson-c, it causes incompatibilities with external programs linking against both libmount and a private, static, old version of OpenSSL, or external programs linking against libjansson or json-glib, which have one symbol in common with libjson-c. If ./configure is ran with --with-crypsetup=dlopen, instead of linking to libcrypsetup, use dlopen to resolve the symbols at runtime only when the verity feature is used, thus avoiding clashes and keeping images size down. Fixes #1081 Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
* build-sys: add --enable-ubsan to make it possible to build util-linux with UBSanEvgeny Vereshchagin2020-07-031-1/+1
| | | | | | | mostly to prepare for https://github.com/karelzak/util-linux/pull/1068 but it's useful even without fuzzing. Signed-off-by: Karel Zak <kzak@redhat.com>
* build-sys: cleanup $vendordir useKarel Zak2020-05-251-0/+11
| | | | | | | | | | | | - use --with-vendordir= (rather than --enable) to be compatible with another package stuuf - add USE_VENDORDIR automake condition - add vendordir to global AM_CPPFLAGS to avoid binary specific cflags modifications Signed-off-by: Karel Zak <kzak@redhat.com>
* build-sys: Fix autogenerated URL in ChangeLogChris Hofstaedtler2020-05-221-1/+1
| | | | | Fixes: b3a3b7eb1a15c5633ae890bec00fe5691b784d99 Signed-off-by: Chris Hofstaedtler <zeha@debian.org>
* getopt: use examples installation directory in man pageSami Kerola2020-02-151-0/+1
| | | | | Addresses: https://bugs.debian.org/913049 Signed-off-by: Sami Kerola <kerolasa@iki.fi>
* libmount: add support for verity devices via libcryptsetupLuca Boccassi2019-12-051-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | The following new options are added: verity.hashdevice verity.roothash verity.hashoffset The source path will be used as a dm-verity object, and will be opened using libcryptsetup APIs. A new --with-cryptsetup build-time option is added, which adds a dependency on libcryptsetup. To ease bootstrapping, given libcryptsetup build-depends on util-linux for libuuid, if --with-cryptsetup=yes but libcryptsetup is not installed only a warning will be printed at configure time rather than an error. This way stage0/first stage/ring0 builds can use the same configure options but avoid installing cryptsetup to get a working base set, and then rebuild util-linux in the next step of the boostrapping process. If verity options are selected but cannot be fullfilled due to lack of dependencies, mounting a volume will fail even if using a loop device would work as a fallback, to avoid silently skipping integrity checks.
* build-sys: introduce $sysconfstaticdirKarel Zak2019-11-121-1/+3
| | | | | | | | | | | | | | The current situation is that distros differentiate between: * host specific configuration -- usually /etc, maintained by admin * distribution specific (static) configuration -- usually /usr/lib, maintained by ditro packages Unfortunately autotools have clue about $sysconfdir (/etc) only. This patch introduces $sysconfstaticdir (default $prefix/lib). Signed-off-by: Karel Zak <kzak@redhat.com>
* libmount: Add libselinux dependency to pkgconfig fileMasami Hiramatsu2019-10-111-0/+6
| | | | | | | | | | Add libselinux dependency to libmount if it is compiled with selinux support. Without this fix, 'pkg-config --libs --static mount' doesn't show libselinux related options. Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org>
* build-sys: add --with-pkgconfigdirKarel Zak2019-05-141-2/+0
| | | | | | | | | | | | | | | | | It seems we need a way how to override the default pkg-config install directory. default: $ ./configure $ grep 'pkgconfigdir =' Makefile pkgconfigdir = ${usrlib_execdir}/pkgconfig user-defined: $ ./configure --with-pkgconfigdir=/usr/share/pkgconfig $ grep 'pkgconfigdir =' Makefile $ pkgconfigdir = /usr/share/pkgconfig Addresses: https://github.com/karelzak/util-linux/issues/793 Signed-off-by: Karel Zak <kzak@redhat.com>
* build-sys: add 'make checklibdoc'Karel Zak2019-04-241-0/+13
| | | | | | Let's to be sure that all libs API symbols are documented. Signed-off-by: Karel Zak <kzak@redhat.com>
* build-sys: add ASAN_LDFLAGSKarel Zak2019-04-151-1/+1
| | | | Signed-off-by: Karel Zak <kzak@redhat.com>
* build-sys: add check-programs make targetKarel Zak2019-03-051-0/+2
| | | | Signed-off-by: Karel Zak <kzak@redhat.com>
* build: use --runstatedir instead of --localstatedirAndreas Henriksson2017-07-311-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The util-linux code was previously aligned to use @localstatedir@ and the util-linux build system was set to override the default to use /run. Current GNU Coding Standards introduced the @runstatedir@ variable for this purpose. Lets use that instead. The GNU default for @runstatedir@ is ${localstatedir}/run so util-linux still override the default to be /run to preserve the status quo from before. The only difference is that you'll now pass --runstatedir to override the location on the command line instead of --localstatedir. (FWIW, Debhelper in compat 11 will automatically start passing --runstatedir=/run to all autotools configured builds. It already passes --localstatedir=/var (to avoid it ending up with the GNU default /usr/local/var) which breaks the util-linux build system code that tries to default it to /run. This change will thus allow util-linux and debhelper to work better together and avoid the need for a package-specific override.) Relevant historic commits: * commit 07a16b9d1e5a48550a0d19abb9a900853433ffa2 "build-sys: change --localstatedir to /run" * commit 80c51185d50f00a2701f9379f10fc48a0f885dfc "uuidd: use run configured state directory" * commit 01c5b787947aeaffc7e56000827e3edefa357c59 "agetty: use configured run state directory" [kzak@redhat.com: - add $runstatedir fallback for autoconf < 2.70 - check for unmodified $localstatedir] CC: Sami Kerola <kerolasa@iki.fi> Signed-off-by: Andreas Henriksson <andreas@fatal.se> Signed-off-by: Karel Zak <kzak@redhat.com>
* build-sys: fix chown mistake, add checkusage.sh to the distRuediger Meier2017-06-261-0/+1
| | | | | | | | | | Sorry, don't know why I reverted fad561b0. But for travis we need it only in check_nonroot(). check_root() *can* do chown and the check_dist() is handled by Makefile. Signed-off-by: Ruediger Meier <ruediger.meier@ga-group.nl>
* tools: add checkusage.shRuediger Meier2017-06-261-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Just some simple generic tests for our UL commands, regarding options --help, --version and --unknownopt. The script looks still a bit weired but could be polished to be used in tests/. It would be the first time testing at least "something" for *all* built binaries (currently 109! commands). For the record here are the current candidates with possible problems: $ make checkusage agetty: --unknownopt, stderr too long: 45 blockdev: --unknownopt, stderr too long: 28 flock: --help, no stdout flock: --help, non-empty stderr getopt: --help, returns error kill: --unknownopt, stderr too short: 1 lsipc: --unknownopt, stderr too long: 77 pg: --unknownopt, stderr too long: 23 renice: --unknownopt, stderr too long: 18 rtcwake: --unknownopt, non-empty stdout rtcwake: --unknownopt, stderr too long: 21 sulogin: --unknownopt, stderr too long: 17 write: --unknownopt, stderr too long: 12 Signed-off-by: Ruediger Meier <ruediger.meier@ga-group.nl>
* build-sys: update DISTCHECK_CONFIGURE_FLAGSKarel Zak2017-06-211-0/+1
| | | | Signed-off-by: Karel Zak <kzak@redhat.com>
* build-sys: add tools/Makemodule.amKarel Zak2016-05-251-3/+2
| | | | | | | | We have "make" targets which depends on tools/check*.sh scripts. It's ugly to exclude these scripts from the release tar balls (as generated by "make distcheck"). Signed-off-by: Karel Zak <kzak@redhat.com>
* tools: add checkcompletion.shKarel Zak2016-03-171-0/+3
| | | | | | The command "make checkcompletion" prints missing completion scripts. Signed-off-by: Karel Zak <kzak@redhat.com>
* build-sys: use AC_PROG_MKDIR_P and remove a few gnuismsRuediger Meier2016-03-131-1/+1
| | | | Signed-off-by: Ruediger Meier <ruediger.meier@ga-group.nl>
* build-sys: Properly order install dependencies of pylibmountFilipe Brandenburger2016-02-051-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce a dependency so that libmount.so is installed before pylibmount.so, so that when libtool tries to relink it, it can find libmount.so in the destdir. We introduce this additional make rule through an AC_SUBST variable, to prevent automake from trying to interpret that. This trick has been suggested in http://stackoverflow.com/a/8643550. This fixes a failure of `make install DESTDIR=...` when trying to relink pylibmount against libmount.la. libtool will look for libmount.so under ${DESTDIR}/${libdir} in that case, but if it is not yet present there, libtool assumes it is a system installed library and use -lmount instead, which causes the following failure if libmount is not installed on the base system yet: libtool: install: warning: relinking `pylibmount.la' libtool: install: (... libtool --mode=relink gcc -o pylibmount.la \ -rpath /usr/lib/python2.7/dist-packages/libmount \ libmount/python/*.lo libmount.la ... -lpython2.7 \ -inst-prefix-dir /path/to/destdir) /usr/bin/ld: cannot find -lmount collect2: error: ld returned 1 exit status libtool: install: error: relink `pylibmount.la' ... make[3]: *** [install-pylibmountexecLTLIBRARIES] Error 1 This seems to be a previously encountered issue, since automake includes a hack to insert such a dependency rule to install all libLTLIBRARIES before attempting to install binPROGRAMS, initially introduced in the commit below: http://git.savannah.gnu.org/cgit/automake.git/commit/?id=bd4a1d5ad1a72fa780a8b7fd6c365a5dad2e6220 Also related bug from Ubuntu tracker: https://bugs.launchpad.net/ubuntu/+source/util-linux/+bug/1442076 Tested that `make install` starts working again after this commit, even when libmount-dev is not installed on the system. Also confirmed that `make distcheck` is now functional. Confirmed that the all the files expected in the Python directory (both __init__.py and pylibmount.so) are present after an install. Tested that parallel install works, the dependency is always respected since it's explicit. Inspected the generated Makefile and confirmed that the definition of install-pylibmountexecLTLIBRARIES (generated by automake) and the explicit dependency we introduced are both present. Signed-off-by: Filipe Brandenburger <filbranden@google.com>
* tests: skip automake's empty "Testsuite summary"Ruediger Meier2015-12-101-1/+0
| | | | | | We have no automake TESTS. Let's run check-local only. Signed-off-by: Ruediger Meier <ruediger.meier@ga-group.nl>
* Revert "build-sys: remove static builds from make-check"Karel Zak2015-03-061-0/+1
| | | | | | The problem should be fixed now. This reverts commit 948b87581e7f1a430f258e169282a1755bb68edd.
* build-sys: remove static builds from make-checkKarel Zak2015-03-051-1/+0
| | | | | | | | | .. temporary, the final solution has to cleanup timer_* functions usage. The function are unnecessary for libmount, but we use lib/monotme.c in the library and it probably requires -lrt and *also* -lpthread for static builds. Signed-off-by: Karel Zak <kzak@redhat.com>
* libfdisk: add version.cKarel Zak2015-01-131-0/+3
| | | | Signed-off-by: Karel Zak <kzak@redhat.com>
* build-sys: add fdisk.pcKarel Zak2014-11-261-0/+2
| | | | Signed-off-by: Karel Zak <kzak@redhat.com>
* build-sys: create a regular shared libfdisk.soKarel Zak2014-11-261-3/+4
| | | | | | | | | - symbols versioning - SONAME from configure.ac - library version to header file - modify build-sys to compile and install shared lib Signed-off-by: Karel Zak <kzak@redhat.com>