Bug 15030 - ERROR: target pamwinbind.objlist: dependency target samba_intl is missing samba_builtin_subsystem
Summary: ERROR: target pamwinbind.objlist: dependency target samba_intl is missing sam...
Status: NEW
Alias: None
Product: Samba 4.1 and newer
Classification: Unclassified
Component: File services (show other bugs)
Version: 4.16.2
Hardware: All FreeBSD
: P5 normal (vote)
Target Milestone: ---
Assignee: Samba QA Contact
QA Contact: Samba QA Contact
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-03-22 15:40 UTC by Peter Eriksson
Modified: 2022-09-29 07:59 UTC (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Peter Eriksson 2022-03-22 15:40:49 UTC
Get the following error when trying to build Samba 4.16.0 on FreeBSD 12.3:

PYTHONHASHSEED=1 WAF_MAKE=1  ./buildtools/bin/waf build
Waf: Entering directory `/export/software/Build/samba/samba-4.16.0/bin/default'
	Selected embedded Heimdal build
Checking project rules ...
ERROR: target pamwinbind.objlist: dependency target samba_intl is missing samba_builtin_subsystem


Build options:

# project samba configured on Tue Mar 22 14:50:07 2022 by
# waf 2.0.22 (abi 20, python 3080cf0 on freebsd12)
# using ./buildtools/bin/waf configure --prefix=/liu/pkg/samba/4.16.0 --sysconfdir=/etc/samba --localstatedir=/var/samba --mandir=/liu/pkg/samba/4.16.0/share --without-ad-dc --disable-cups --with-shared-modules=nfs4_acls,vfs_zfsacl,vfs_dfs_samba4 --with-privatedir=/etc/samba/private --with-configdir=/etc/samba --with-logfilebase=/var/samba/logs --accel-aes=intelaesni
#

Building with gcc 10.3.0
Comment 1 Peter Eriksson 2022-06-14 11:56:39 UTC
Still the same build error with Samba 4.16.2 and FreeBSD 12.3. I've tried to understand the build magic to find where this problem occurs but alas so far no go. Any suggestions?
Comment 2 Jérémie Courrèges-Anglas 2022-07-11 10:29:47 UTC
This issue is also blocking the update to samba-4.16 in the OpenBSD ports tree.
Comment 3 Stefan Metzmacher 2022-07-12 09:49:01 UTC
A short term solution is passing --without-gettext to configure
Comment 4 Jérémie Courrèges-Anglas 2022-07-15 10:52:03 UTC
(In reply to Stefan Metzmacher from comment #3)
Thank you Stefan, this seems to work around the problem indeed.  We're now testing an update to 4.16.2.

I'm not sure how to add OpenBSD to the affected systems list.  I didn't look too deep into the waf guts, but I suspect that this problem may surface on any system that doesn't ship gettext in libc?
Comment 5 Stefan Metzmacher 2022-07-18 08:12:02 UTC
(In reply to Jérémie Courrèges-Anglas from comment #4)

This first fix would be this:

--- a/lib/replace/wscript
+++ b/lib/replace/wscript
@@ -961,7 +961,10 @@ def build(bld):
                         target='stdbool.h',
                         enabled = not bld.CONFIG_SET('HAVE_STDBOOL_H'))
 
-    bld.SAMBA_SUBSYSTEM('samba_intl', source='', use_global_deps=False,deps=bld.env.intl_libs)
+    bld.SAMBA_SUBSYSTEM('samba_intl', source='',
+                        provide_builtin_linking=True,
+                        use_global_deps=False,
+                        deps=bld.env.intl_libs)
 
 def testonly(ctx):
     '''run talloc testsuite'''


But with that it still builds completely and someone needs to look at the rest.