Properly fix Lex/Yacc dependency following Ingo's advice
* By setting HDRGRIST to match SOURCE_GRIST in MultiArchDirSetup, the include scanning in Jam will work properly: the generated header will have the same grist as what the include scan looks for. * Remove the now unneeded workaround from netresolv Jamfile.
This commit is contained in:
parent
56b2d534cb
commit
f15fb39b20
@ -739,10 +739,13 @@ rule MultiArchSubDirSetup architectures
|
||||
$(var) on $(architectureObject) = $($(var)) ;
|
||||
}
|
||||
|
||||
# adjust SOURCE_GRIST
|
||||
# adjust SOURCE_GRIST and HDRGRIST
|
||||
SOURCE_GRIST on $(architectureObject)
|
||||
= $(SOURCE_GRIST:E=)!$(architecture) ;
|
||||
|
||||
HDRGRIST on $(architectureObject)
|
||||
= $(HDRGRIST:E=)!$(architecture) ;
|
||||
|
||||
# Adjust the subdir's object dirs that are architecture dependent. To
|
||||
# avoid duplicating the code from SetupObjectsDir, we call it. Since it
|
||||
# sets global variables, we set these variables on our object, call
|
||||
|
@ -5,10 +5,15 @@ for architectureObject in [ MultiArchSubDirSetup ] {
|
||||
on $(architectureObject) {
|
||||
local architecture = $(TARGET_PACKAGING_ARCH) ;
|
||||
|
||||
#HDRGRIST = [ FGrist $(SUBDIR_TOKENS) $(architecture) ] ;
|
||||
|
||||
UseHeaders [ FDirName $(SUBDIR) include ] : true ;
|
||||
UseHeaders [ FDirName $(HAIKU_TOP) src libs compat freebsd_network compat ]
|
||||
: true ;
|
||||
UseHeaders [ FDirName $(HAIKU_TOP) headers compatibility bsd ] : true ;
|
||||
UseHeaders [ FDirName
|
||||
$(TARGET_COMMON_DEBUG_OBJECT_DIR_$(TARGET_PACKAGING_ARCHS[1]))
|
||||
kits network netresolv ] ;
|
||||
SubDirSysHdrs $(SUBDIR) ;
|
||||
|
||||
# private sources for this port
|
||||
@ -24,18 +29,14 @@ for architectureObject in [ MultiArchSubDirSetup ] {
|
||||
SEARCH_SOURCE += [ FDirName $(SUBDIR) resolv ] ;
|
||||
|
||||
{
|
||||
# we want to have the xxx_r functions, too
|
||||
# we want to have the xxx_r functions, IPv6, and md5 implementation
|
||||
# we also need to use our BSD compatibility functions
|
||||
local defines = _REENTRANT=1 USE_MD5=1 _BSD_SOURCE ;
|
||||
defines = [ FDefines $(defines) ] ;
|
||||
SubDirCcFlags $(defines) ;
|
||||
SubDirC++Flags $(defines) ;
|
||||
}
|
||||
|
||||
# the header doesn't appear to get the architecture gristed, so
|
||||
# make the dependency explicit
|
||||
Includes <src!kits!network!netresolv!$(architecture)>nslexer.l
|
||||
: <src!kits!network!netresolv!$(architecture)>nsparser.h ;
|
||||
|
||||
MergeObject <netresolv!$(architecture)>netresolv.o :
|
||||
# dst
|
||||
dst_api.c
|
||||
@ -79,8 +80,8 @@ for architectureObject in [ MultiArchSubDirSetup ] {
|
||||
getservent_r.c
|
||||
hesiod.c
|
||||
nsdispatch.c
|
||||
nsparser.y
|
||||
nslexer.l
|
||||
nsparser.y
|
||||
sethostent.c
|
||||
vars6.c
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user