Bug#1104998: unixodbc-dev: unixodbc_conf.h picks up fakeroot LD path

2025-09-03 Thread Hugh McMaster

On 1/09/2025 4:06 pm, Jochen Sprickerhof wrote:
I have updated the buildd chroot generation script to no longer 
install fakeroot by default and asked for binNMUs for all bug 
pinball-dev (is R³ binary-targets) and verified that this reproduces 
now. I still think it would be better to not expose the build time 
LD_LIBRARY_PATH in the installed unixodbc_conf.h but that is probably 
minor, so closing this. 


Thanks for this work.

As indicated in an early response, unixodbc_conf.h is a private header 
and indicates how unixodbc was built.


I'll probably patch out the LD_LIBRARY_PATH line at the next upload. In 
fact, it might be easier to avoid shipping the header.


Hugh



Bug#1104998: unixodbc-dev: unixodbc_conf.h picks up fakeroot LD path

2025-05-12 Thread Chris Hofstaedtler

* Jochen Sprickerhof  [250512 14:12]:

Hi Chris,

* Chris Hofstaedtler  [2025-05-09 16:42]:

/usr/include/aarch64-linux-gnu/unixODBC/unixodbc_conf.h contains:
#define LT_DLSEARCH_PATH 
"/lib:/usr/lib:/usr/local/lib/aarch64-linux-gnu:/lib/aarch64-linux-gnu:/usr/lib/aarch64-linux-gnu:/usr/lib/aarch64-linux-gnu/libfakeroot:/usr/local/lib"

Apparently it picks up the LD_LIBRARY_PATH modification done by 
fakeroot. But this library path is wrong at runtime.


Please fix the build to not include the libfakeroot directory.


I think it should be enough to rebuild this package with a recent dpkg 
that no longer uses fakeroot by default with Rules-Requires-Root: (but 
I did not test this).


This was discussed in #debian-devel today:

13:38  libtool's autoconf picks up LD_LIBRARY_PATH via LT_SYS_DLSEARCH_PATH
13:40  in this case, unixodbc_conf.h is a private header.
13:42  (it indicates how unixodbc was built)

And I found a number of packages with the same diff:

gerris
libapr1-dev (with other changes)
libdiagnostics-dev
libotf2-trace-dev (with other changes)
librep-dev
libtool-bin
pinball-dev
proftpd-core (with other changes)
r-base-core (with other changes and log size limit)

So maybe this should be reassigned to autoconf?


Maybe, maybe not. I'm guessing the packages themselves control if 
they let the build-time library path end up in their header or 
binary files.


If so, I don't think autoconf can do much about it.

Chris



Bug#1104998: unixodbc-dev: unixodbc_conf.h picks up fakeroot LD path

2025-05-12 Thread Jochen Sprickerhof

Hi Chris,

* Chris Hofstaedtler  [2025-05-09 16:42]:

/usr/include/aarch64-linux-gnu/unixODBC/unixodbc_conf.h contains:
#define LT_DLSEARCH_PATH 
"/lib:/usr/lib:/usr/local/lib/aarch64-linux-gnu:/lib/aarch64-linux-gnu:/usr/lib/aarch64-linux-gnu:/usr/lib/aarch64-linux-gnu/libfakeroot:/usr/local/lib"

Apparently it picks up the LD_LIBRARY_PATH modification done by 
fakeroot. But this library path is wrong at runtime.


Please fix the build to not include the libfakeroot directory.


I think it should be enough to rebuild this package with a recent dpkg 
that no longer uses fakeroot by default with Rules-Requires-Root: (but I 
did not test this).


This was discussed in #debian-devel today:

13:38  libtool's autoconf picks up LD_LIBRARY_PATH via LT_SYS_DLSEARCH_PATH
13:40  in this case, unixodbc_conf.h is a private header.
13:42  (it indicates how unixodbc was built)

And I found a number of packages with the same diff:

gerris
libapr1-dev (with other changes)
libdiagnostics-dev
libotf2-trace-dev (with other changes)
librep-dev
libtool-bin
pinball-dev
proftpd-core (with other changes)
r-base-core (with other changes and log size limit)

So maybe this should be reassigned to autoconf?

Cheers Jochen


signature.asc
Description: PGP signature


Bug#1104998: unixodbc-dev: unixodbc_conf.h picks up fakeroot LD path

2025-05-09 Thread Chris Hofstaedtler

Package: unixodbc-dev
Version: 2.3.12-2
Severity: important
User: [email protected]
Usertag: environment

Hi,

/usr/include/aarch64-linux-gnu/unixODBC/unixodbc_conf.h contains:
#define LT_DLSEARCH_PATH 
"/lib:/usr/lib:/usr/local/lib/aarch64-linux-gnu:/lib/aarch64-linux-gnu:/usr/lib/aarch64-linux-gnu:/usr/lib/aarch64-linux-gnu/libfakeroot:/usr/local/lib"

Apparently it picks up the LD_LIBRARY_PATH modification done by 
fakeroot. But this library path is wrong at runtime.


Please fix the build to not include the libfakeroot directory.

Best,
Chris