Debian Patches

Status for libloc/0.9.19-3

Patch Description Author Forwarded Bugs Origin Last update
non-empty-dependency_libs-in-la-file-1.patch Makefile: Install Lua in `exec` stage, not `data`
Automake installation has two stages:
* `exec` for platform-specific files,
* `data` for platform-agnostic files.

Automake separates the install stages based on the directory (target)
variable name. Built-in targets have known stages. Any custom-defined
ones check simply whether the target name contains `exec` substring.

Currently, the Lua module is installed in the `data` stage, because
`lua` is not considered an `exec` stage name. However, the Lua module
contains C code (it is architecture-specific).

Similar to how Python is installed via `pyexec`, Lua should be
installed via `luaexec`. That way Automake splits it into `exec` stage
correctly.

Internally, the installation target directory is `LUA_INSTALL_CMOD`
which also signals that this is a platform/architecture-specific
installation. This logic remains unchanged, and the Lua `.so` gets
installed to the same target as a result.

This change is also important to allow libtool cleanup to be done in
`install-exec-hook` consistently. Without this change, part of la-files
cleanup would need to be moved to `install-data-hook`.
Valters Jansons <valter.jansons@gmail.com> not-needed upstream, https://git.ipfire.org/?p=location/libloc.git;a=commit;h=9ae861d9440ad60f4d18e61a190932fc21a94b10 2026-07-02
non-empty-dependency_libs-in-la-file-2.patch Makefile: Avoid installing libtool control files
This project currently uses autoconf, automake, and libtool for
building. During build process, libtool creates `.la` control files
with metadata about the `.so` library. On modern systems, shipping
these files is now strongly discouraged.

The `.la` files are generally not used on live systems. The only
scenario where they would be used is if someone loads the library using
libltdl (libtool's `dlopen` wrapper). However, both Python and Lua just
load the library directly using a `dlopen("location.so")` instead of
calling `lt_dlopen("location.la")`. This project does not reference
`lt_dlopen` or `ltdl` as such.

Moreover, the `.la` files include redundant dependency chain
information. For example, the Lua module depends on libloc. Even though
OpenSSL is a transitive dependency (`src/database.c` and `src/writer.c`,
not `src/lua/`), libtool anyway adds `-lssl` (as well as `-lcrypto
-lresolv`) directly to `dependency_libs` of Lua's `location.la`.
Listing these transitive dependencies muddies the chain. If someone is
consuming the Lua module downstream, then libtool would force the full
dependency chain onto them directly, which is not needed.

Additionally, due to hardcoded dependencies, rebuild propagation is
a concern. An upstream library updating their soname requires all
downstream `.la` files to be rebuilt, even if libloc's ABI has not
changed. This is especially painful at distro packaging scale.

As a result, modern packaging is pushing towards removing these `.la`
files. In cases where some libltdl consumers exist, the fallback route
is emptying out the dependency_libs metadata field. This is visible in
Debian Lintian as error `non-empty-dependency_libs-in-la-file`.

We can go the whole way and drop these files outright. The `.la` files
reference each other; therefore, when one is being removed, all of them
should be removed, to avoid dangling references.
Valters Jansons <valter.jansons@gmail.com> not-needed upstream, https://git.ipfire.org/?p=location/libloc.git;a=commit;h=5b0f2d593adfce05c8d3cafb59c57596b8284aeb 2026-07-02
autotools-pkg-config-macro-not-cross-compilation-safe.patch configure: Remove AC_PATH_PROG call for pkg-config
We already use PKG_PROG_PKG_CONFIG macro higher up in configure.ac,
and it populates PKG_CONFIG variable already. This AC_PATH_PROG use
is redundant at best, and breaks cross-compilation support in specific
cases. The legacy left-over is safe to drop.
Valters Jansons <valter.jansons@gmail.com> not-needed upstream, https://git.ipfire.org/?p=location/libloc.git;a=commit;h=56a92548447afbc2c35a1f34584e02e5606f3f07 2026-07-02
no-manual-page.patch man: Add manual page for `location-importer`
Currently, the `location-importer` binary gets installed without
a manual page. It's expected that all tools installed get manpages.

This commit proposes a generated manpage, introspecting the script's
handlers and considering the structure of the other existing AsciiDoc
files.
Valters Jansons <valter.jansons@gmail.com> not-needed upstream, https://git.ipfire.org/?p=location/libloc.git;a=commit;h=b206dcfe22e127750b33262b2aca1053829a6e37 2026-07-12

All known versions for source package 'libloc'

Links