Hi Masters, I’ll reply to myself because w checked this on IRC with Riastradh in mean time -> Thanks! Looks like software store source/work path in their compiled code as messages even on version it’s show how was compiled, sample below: PowerDNS Recursor 5.2.0 (C) PowerDNS.COM BV Using 64-bits mode. Built using gcc 12.4.0 on Jan 26 2025 15:15:27 by root%devil.e-utp.net@localhost. PowerDNS comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it according to the terms of the GPL version 2. Features: libcrypto-ecdsa libcrypto-ed25519 libcrypto-ed448 libcrypto-eddsa lua nod protobuf dnstap-framestream sodium curl DoT scrypt Configured with: " '--sysconfdir=/usr/pkg/etc' '--with-libsodium' '--enable-dns-over-tls' '--prefix=/usr/pkg' '--build=x86_64--netbsd' '--host=x86_64--netbsd' '--mandir=/usr/pkg/man' '--enable-option-checking=yes' 'build_alias=x86_64--netbsd' 'host_alias=x86_64--netbsd' 'CC=gcc' 'CFLAGS=-O2 -pthread -I/usr/pkg/include -I/usr/include -I/usr/pkg/include/lua-5.4 -I/usr/include/readline -I/usr/pkg/include/sodium' 'LDFLAGS=-Wl,-zrelro -L/usr/pkg/lib -pthread -L/usr/lib -Wl,-R/usr/lib -Wl,-R/usr/pkg/lib' 'LIBS=' 'CPPFLAGS=-I/usr/pkg/include -I/usr/include -I/usr/pkg/include/lua-5.4 -I/usr/include/readline -I/usr/pkg/include/sodium' 'CXX=c++' 'CXXFLAGS=-O2 -pthread -I/usr/pkg/include -I/usr/include -I/usr/pkg/include/lua-5.4 -I/usr/include/readline -I/usr/pkg/include/sodium' 'PKG_CONFIG=/usr/work/amd64/wip/powerdns-recursor5/work/.tools/bin/pkg-config' 'PKG_CONFIG_PATH=' 'PKG_CONFIG_LIBDIR=/usr/work/amd64/wip/powerdns-recursor5/work/.buildlink/lib/pkgconfig:/usr/work/amd64/wip/powerdns-recursor5/work/.buildlink/share/pkgconfig'" As provided by Riastradh the best is check: readelf -d /usr/work/amd64/wip/powerdns-recursor5/work/.destdir/usr/pkg/sbin/pdns_recursor | grep -e NEEDED -e RPATH 0x0000000000000001 (NEEDED) Shared library: [libboost_context.so.1.87.0] 0x0000000000000001 (NEEDED) Shared library: [libboost_system.so.1.87.0] 0x0000000000000001 (NEEDED) Shared library: [libboost_filesystem.so.1.87.0] 0x0000000000000001 (NEEDED) Shared library: [libsodium.so.26] 0x0000000000000001 (NEEDED) Shared library: [libpthread.so.1] 0x0000000000000001 (NEEDED) Shared library: [liblua5.4.so.5] 0x0000000000000001 (NEEDED) Shared library: [libedit.so.3] 0x0000000000000001 (NEEDED) Shared library: [libfstrm.so.0] 0x0000000000000001 (NEEDED) Shared library: [libcurl.so.4] 0x0000000000000001 (NEEDED) Shared library: [libnghttp2.so.14] 0x0000000000000001 (NEEDED) Shared library: [libidn2.so.0] 0x0000000000000001 (NEEDED) Shared library: [libunistring.so.5] 0x0000000000000001 (NEEDED) Shared library: [libintl.so.1] 0x0000000000000001 (NEEDED) Shared library: [libssl.so.15] 0x0000000000000001 (NEEDED) Shared library: [libcrypto.so.15] 0x0000000000000001 (NEEDED) Shared library: [libz.so.1] 0x0000000000000001 (NEEDED) Shared library: [libstdc++.so.9] 0x0000000000000001 (NEEDED) Shared library: [libm.so.0] 0x0000000000000001 (NEEDED) Shared library: [libgcc_s.so.1] 0x0000000000000001 (NEEDED) Shared library: [libc.so.12] 0x000000000000000f (RPATH) Library rpath: [/usr/pkg/lib] for affected binary to ensure that is not using files in work directory. Once this part is done it’s worth to check strings. strings /usr/work/amd64/wip/powerdns-recursor5/work/.destdir/usr/pkg/sbin/pdns_recursor | grep /usr/work/amd64/wip/powerdns-recursor5/work/ | wc -l 45 We have 45 strings with work path :-/ Once we are sure that they are not critical but only messages, we can take the binary out of the work directory, remove whole work directory and check that binary is still working as expected. If so, the only way to make it “packageable” looks like: CHECK_WRKREF_SKIP+= sbin/pdns_recursor In Makefile. I’ll continue working on that, deploy to some test boxes, once fine will upload to WIP. Thanks, From: Marcin Gondek Hello Masters, TL/DR: package is not yet in WIP. I’m little playing with some package, have done to make it compile, even with rust part inside but I’m struggling with one topic: ERROR: Binary file /usr/work/amd64/wip/powerdns-recursor5/work/.destdir/usr/pkg/sbin/pdns_recursor matches ERROR: *** The above files still have references to the build directory. ERROR: This is possibly an error that should be fixed by unwrapping ERROR: the files or adding missing tools to the package makefile! I’ve tried to skip it by UNWRAP_PATTERNS+= *pdns_recursor* Seems to not working, how to debug why this error appear and analyze what could be root cause? gmake[3]: Leaving directory '/usr/work/amd64/wip/powerdns-recursor5/work/pdns-recursor-5.2.0/settings/rust' gmake[2]: Leaving directory '/usr/work/amd64/wip/powerdns-recursor5/work/pdns-recursor-5.2.0/settings/rust' gmake[2]: Entering directory '/usr/work/amd64/wip/powerdns-recursor5/work/pdns-recursor-5.2.0' gmake[3]: Entering directory '/usr/work/amd64/wip/powerdns-recursor5/work/pdns-recursor-5.2.0' /usr/pkg/bin/gmkdir -p '/usr/work/amd64/wip/powerdns-recursor5/work/.destdir/usr/pkg/bin' /bin/sh ./libtool --mode=install /usr/bin/install -c -s -o root -g wheel -m 755 rec_control '/usr/work/amd64/wip/powerdns-recursor5/work/.destdir/usr/pkg/bin' libtool: install: /usr/bin/install -c -o root -g wheel -m 755 -s rec_control /usr/work/amd64/wip/powerdns-recursor5/work/.destdir/usr/pkg/bin/rec_control /usr/pkg/bin/gmkdir -p '/usr/work/amd64/wip/powerdns-recursor5/work/.destdir/usr/pkg/sbin' /bin/sh ./libtool --mode=install /usr/bin/install -c -s -o root -g wheel -m 755 pdns_recursor '/usr/work/amd64/wip/powerdns-recursor5/work/.destdir/usr/pkg/sbin' libtool: install: /usr/bin/install -c -o root -g wheel -m 755 -s pdns_recursor /usr/work/amd64/wip/powerdns-recursor5/work/.destdir/usr/pkg/sbin/pdns_recursor /usr/pkg/bin/gmkdir -p '/usr/work/amd64/wip/powerdns-recursor5/work/.destdir/usr/pkg/etc' /usr/bin/install -c -o root -g wheel -m 644 recursor.yml-dist '/usr/work/amd64/wip/powerdns-recursor5/work/.destdir/usr/pkg/etc' /usr/pkg/bin/gmkdir -p '/usr/work/amd64/wip/powerdns-recursor5/work/.destdir/usr/pkg/man/man1' /usr/bin/install -c -o root -g wheel -m 644 pdns_recursor.1 rec_control.1 '/usr/work/amd64/wip/powerdns-recursor5/work/.destdir/usr/pkg/man/man1' gmake[3]: Leaving directory '/usr/work/amd64/wip/powerdns-recursor5/work/pdns-recursor-5.2.0' gmake[2]: Leaving directory '/usr/work/amd64/wip/powerdns-recursor5/work/pdns-recursor-5.2.0' gmake[1]: Leaving directory '/usr/work/amd64/wip/powerdns-recursor5/work/pdns-recursor-5.2.0' => Automatic manual page handling => Generating post-install file lists => Checking file-check results for pdns-recursor-5.2.0 => Checking for non-existent script interpreters in pdns-recursor-5.2.0 => Checking file permissions in pdns-recursor-5.2.0 => Checking for PIE in pdns-recursor-5.2.0 => Checking for RELRO in pdns-recursor-5.2.0 => Checking for missing run-time search paths in pdns-recursor-5.2.0 => Checking for work-directory references in pdns-recursor-5.2.0 ERROR: Binary file /usr/work/amd64/wip/powerdns-recursor5/work/.destdir/usr/pkg/sbin/pdns_recursor matches ERROR: *** The above files still have references to the build directory. ERROR: This is possibly an error that should be fixed by unwrapping ERROR: the files or adding missing tools to the package makefile! *** Error code 1 Stop. make[1]: stopped making "package" in /srv/NetBSD/pkgsrc/wip/powerdns-recursor5 *** Error code 1 Stop. make: stopped making "package" in /srv/NetBSD/pkgsrc/wip/powerdns-recursor5 devil# Thanks, -- Marcin Gondek / Drixter AS56662 |
Attachment:
openpgp-digital-signature.asc
Description: PGP signature