Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 21 May 2011 02:14:47 -0400 (EDT)
From:      Benjamin Kaduk <kaduk@MIT.EDU>
To:        freebsd-hackers@freebsd.org
Subject:   porting third-party build system to bsd.kmod.mk
Message-ID:  <alpine.GSO.1.10.1105210148300.6818@multics.mit.edu>

next in thread | raw e-mail | index | archive | help
  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.

---559023410-2023889498-1305958487=:6818
Content-Type: TEXT/PLAIN; format=flowed; charset=US-ASCII

After getting a few pointers from jhb at BSDCan on what a 
bsd.kmod.mk-using Makefile should look like, I have been trying my hand at 
porting the OpenAFS kernel module build system to use it.  (The main thing 
this gets us is not having to manually track version- and 
architecture-dependent CFLAGS and the like.)  However, the path is not 
exactly smooth.

A lot of the difficulty is in getting an autogenerated vnode_if.h while 
using a list of files to include in the module(from the common OpenAFS 
code) that's given as a list of object files.  If there's already a 
vnode_if.h sitting around, I can just use OBJS and things progress quite 
nicely; however, if I have to get back to SRCS for the use of 
sys/conf/kmod.mk's vnode_if.h logic, I get this sort of build failure 
(full log attached) with the attached Makefile:
gcc -I. -I.. -I../nfs [more includes and defines] 
-I/usr/devel/openafs/git/openafs/include/afs -I@/sys -Imachine -I. -I@ 
-I@/contrib/altq -finline-limit=8000 --param inline-unit-growth=100 
--param large-function-growth=1000 -fno-common -fno-omit-frame-pointer 
-mcmodel=kernel -mno-red-zone -mfpmath=387 -mno-mmx -mno-3dnow -mno-sse 
-mno-sse2 -mno-sse3 -msoft-float -fno-asynchronous-unwind-tables 
-ffreestanding -fstack-protector -std=iso9899:1999 -fstack-protector 
-Wno-redundant-decls -Wsystem-headers -Werror -Wno-pointer-sign -o 
osi_crypto.o -c /usr/devel/openafs/git/openafs/src/afs/FBSD/osi_crypto.c 
/usr/devel/openafs/git/openafs/src/libafs/MODLOAD/../../afs/FBSD/osi_crypto.c 
vnode_if.h
gcc: cannot specify -o with -c or -S with multiple files

That last bit, "-o osi_crypto.o -c /path/to/osi_crypto.c 
/path/to/osi_crypto.c vnode_if.h" is quite troublesome.  Any thoughts on 
what is causing those extra files to be listed would be greatly 
appreciated.  (Comments on other issues in the Makefile are welcome, too 
-- it's still in pretty rough shape.)

I should note that though Makefile.common does define a osi_crypto.o 
target, "make -d A" reports:
         using existing source 
/usr/devel/openafs/git/openafs/src/afs/FBSD/osi_crypto.c
         applying .c -> .o to "osi_crypto.o"


Thanks,

Ben Kaduk
---559023410-2023889498-1305958487=:6818
Content-Type: TEXT/PLAIN; charset=US-ASCII; name=Makefile
Content-Transfer-Encoding: BASE64
Content-ID: <alpine.GSO.1.10.1105210214470.6818@multics.mit.edu>
Content-Description: 
Content-Disposition: attachment; filename=Makefile

IyBDb3B5cmlnaHQgMjAwMCwgSW50ZXJuYXRpb25hbCBCdXNpbmVzcyBNYWNo
aW5lcyBDb3Jwb3JhdGlvbiBhbmQgb3RoZXJzLg0KIyBBbGwgUmlnaHRzIFJl
c2VydmVkLg0KIw0KIyBUaGlzIHNvZnR3YXJlIGhhcyBiZWVuIHJlbGVhc2Vk
IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgSUJNIFB1YmxpYw0KIyBMaWNlbnNl
LiAgRm9yIGRldGFpbHMsIHNlZSB0aGUgTElDRU5TRSBmaWxlIGluIHRoZSB0
b3AtbGV2ZWwgc291cmNlDQojIGRpcmVjdG9yeSBvciBvbmxpbmUgYXQgaHR0
cDovL3d3dy5vcGVuYWZzLm9yZy9kbC9saWNlbnNlMTAuaHRtbA0KIw0Kc3Jj
ZGlyPS4NCmluY2x1ZGUgL3Vzci9kZXZlbC9vcGVuYWZzL2dpdC9vcGVuYWZz
L3NyYy9jb25maWcvTWFrZWZpbGUuY29uZmlnDQojIHdlIHVuc2V0IHRoZXNl
IHRvIHdvcmsgYXJvdW5kIGZsYWdzIHdlIGRvbid0IHdhbnQNCiMgWENGTEFH
UyBzZXRzIC1mUElDLCB3aGljaCBpcyBmb3JiaWRkZW4gZm9yIG1jbW9kZWw9
a2VybmVsDQpYQ0ZMQUdTPQ0KQ09NTU9OX0NGTEFHUz0NCiMgWFhYIG5vdCBz
dXJlIGlmIHRoZXNlIG5lZWQgdG8gYmUgKHJlKWRlZmluZWQgaGVyZQ0KSU5T
VEFMTCA9IC91c3IvYmluL2luc3RhbGwgLWMNCklOU1RBTExfREFUQSA9ICR7
SU5TVEFMTH0gLW0gNjQ0DQpJTlNUQUxMX1BST0dSQU0gPSAke0lOU1RBTEx9
IA0KSU5TVEFMTF9TQ1JJUFQgPSAke0lOU1RBTEx9DQoNCiMgU3lzdGVtIHNw
ZWNpZmljIGJ1aWxkIGNvbW1hbmRzIGFuZCBmbGFncw0KS1NSQyA9IC91c3Iv
c3JjL3N5cw0KS0JMRCA9IC91c3Ivb2JqL3Vzci9zcmMvc3lzL0dFTkVSSUMN
Cg0KIyBXZSBzdWNrDQpXQVJOUz0gMQ0KIyBzZXR0aW5nIFdBUk5TPTAgZGlk
IG5vdCBoZWxwIHdpdGggdGhpcz8hDQpDV0FSTkZMQUdTKz0gLVduby1yZWR1
bmRhbnQtZGVjbHMNCg0KIyBzZXR1cCBmb3IgYnNkLmttb2QubWsgaW5mcmFz
dHJ1Y3R1cmUNCi5QQVRIOgkkey5DVVJESVJ9Ly4uLy4uL2FmcyBcDQoJJHsu
Q1VSRElSfS8uLi8uLi9hZnMvRkJTRCBcDQoJJHsuQ1VSRElSfS8uLi8uLi9h
ZnMvVk5PUFMNCktNT0RESVI9L2Jvb3QvbW9kdWxlcw0KS01PRD0JbGliYWZz
DQpTWVNESVI9ICR7S1NSQ30NCiMgTmFtZSBvZiBkaXJlY3RvcnkgdG8gaG9s
ZCBvYmplY3QgZmlsZXMgYW5kIGxpYnJhcmllcy4NCktPQkogPSBNT0RMT0FE
DQoNCiMgVGhpcyB0ZWxscyBNYWtlZmlsZS5jb21tb24gdG8gdXNlIGl0J3Mg
c2luZ2xlIGRpcmVjdG9yeSBidWlsZCB0YXJnZXQuDQpDT01QRElSUyA9IHNp
bmdsZV9jb21wZGlyDQpJTlNURElSUyA9IHNpbmdsZV9pbnN0ZGlyDQpERVNU
RElSUyA9IHNpbmdsZV9kZXN0ZGlyDQoNCiMgVmVyeSB1Z2x5LiAgQnV0IG1h
bnkgb2YgdGhlc2UgbGlua3MgYXJlIG5lZWRlZCBmb3IgY29tbW9uIGNvZGUg
dG8gd29yay4NCnNldHVwOg0KCS1ta2RpciAkKEtPQkopDQoJLSQoUk0pICQo
S09CSikvTWFrZWZpbGUgJChLT0JKKS9NYWtlZmlsZS5jb21tb24NCglsbiAt
ZnMgLi4vTWFrZWZpbGUgJChLT0JKKS9NYWtlZmlsZQ0KCWxuIC1mcyAuLi9N
YWtlZmlsZS5jb21tb24gJChLT0JKKS9NYWtlZmlsZS5jb21tb24NCgktJChS
TSkgLWYgIGggcnBjIHVmcyBtYWNoaW5lDQoJLWxuIC1mcyAke0tTUkN9L2Ft
ZDY0L2luY2x1ZGUgbWFjaGluZQ0KCS1sbiAtZnMgJHtLU1JDfS91ZnMvdWZz
IHVmcw0KCS1sbiAtZnMgJHtLU1JDfS9ycGMgcnBjDQoJLWxuIC1mcyAke0tT
UkN9L3N5cyBoDQoNCiMgTWFrZWZpbGUuY29tbW9uIHNldHMgQUZTQU9CSlMs
IENPTU1PTl9JTkNMVURFLCBUT1Bfe1NSQyxPQkp9KiwgYW5kIHRoZSBsaWtl
Lg0KIyBXZSBtdXN0IGxpdmUgd2l0aCBpdHMgb3RoZXIgcG9sbHV0aW9uIG9m
IHRhcmdldHMgYW5kIGJ1aWxkIHJ1bGVzLg0KaW5jbHVkZSBNYWtlZmlsZS5j
b21tb24NCg0KIyBUaGlzIGlzIHF1aXRlIGF3a3dhcmQuICBUaGUgY29kZSBp
biBrbW9kLm1rIGNoZWNrcyBmb3Igdm5vZGVfaWYuaCBpbg0KIyBTUkNTLCBi
dXQgSSBhbSBnaXZlbiBhIGxpc3Qgb2Ygb2JqZWN0IGZpbGVzIGZyb20gdGhl
IGNvbW1vbiBjb2RlLg0KIyBSZXNvcnQgdG8gdmFyaWFibGUgc3Vic3RpdHV0
aW9uIGJsYWNrIG1hZ2ljLCBiZWxvdy4NClNSQ1MgPSB2bm9kZV9pZi5oDQoN
CiMgT1Mgc3BlY2lmaWMgb2JqZWN0IGZpbGVzOg0KQUZTX09TX09CSlMgPSBv
c2lfY3J5cHRvLm8gXA0KCW9zaV9nY3BhZ3MubyBcDQoJb3NpX2dyb3Vwcy5v
IFwNCglvc2lfZmlsZS5vIFwNCglvc2lfaW5vZGUubyBcDQoJb3NpX21pc2Mu
byBcDQoJb3NpX3NsZWVwLm8gXA0KCW9zaV92Y2FjaGUubyBcDQoJb3NpX3Zt
Lm8gXA0KCW9zaV92bm9kZW9wcy5vIFwNCglvc2lfbW9kdWxlLm8gDQoNCkFG
U19PU19OT05GU09CSlMgPSBcDQoJb3NpX3Zmc29wcy5vDQoNClNSQ1MrPQkk
e0FGU19PU19PQkpTOlMvLm8kLy5jL2d9ICR7QUZTX09TX05PTkZTT0JKUzpT
Ly5vJC8uYy9nfSBcDQoJJHtBRlNBT0JKUzpTLy5vJC8uYy9nfQ0KDQpERUZJ
TkVTPSAtREFGU0RFQlVHIC1ES0VSTkVMIC1EQUZTIC1EVklDRSAtRE5GUyAt
RFVGUyAtRElORVQgLURRVU9UQSAtREdFVE1PVU5UDQpDRkxBR1MrPSAkKERF
RklORVMpICR7Q09NTU9OX0lOQ0xVREV9IC1JQC9zeXMgLUltYWNoaW5lDQoN
CklOU1RfTElCQUZTID0gJHtERVNURElSfSR7YWZza2VybmVsZGlyfS8ke0xJ
QkFGU30NCklOU1RfTElCQUZTTk9ORlMgPSAke0RFU1RESVJ9JHthZnNrZXJu
ZWxkaXJ9LyR7TElCQUZTTk9ORlN9DQoNCkRFU1RfTElCQUZTID0gJHtERVNU
fS9yb290LmNsaWVudC9iaW4vJHtMSUJBRlN9DQpERVNUX0xJQkFGU05PTkZT
ID0gJHtERVNUfS9yb290LmNsaWVudC9iaW4vJHtMSUJBRlNOT05GU30NCg0K
aW5zdGFsbF9saWJhZnM6CWluc3RhbGwNCg0KZGVzdF9saWJhZnM6ICQoTElC
QUZTTk9ORlMpDQoJJHtJTlNUQUxMfSAtZCAke0RFU1R9L3Jvb3QuY2xpZW50
L2Jpbg0KCSR7SU5TVEFMTH0gLW0gNjQ0ICQoTElCQUZTTk9ORlMpICQoREVT
VF9MSUJBRlNOT05GUykNCg0KIyBUaGlzIGlzIHVnbHksIGJ1dCB0aGUgY29t
bW9uIGluZnJhc3RydWN0dXJlIG5lZWRzIGEgbGliYWZzIHRhcmdldC4NCmxp
YmFmczogbGliYWZzLmtvDQoNCi5pbmNsdWRlIDxic2Qua21vZC5taz4NCg==

---559023410-2023889498-1305958487=:6818
Content-Type: APPLICATION/octet-stream; name=build.log
Content-Transfer-Encoding: BASE64
Content-ID: <alpine.GSO.1.10.1105210214471.6818@multics.mit.edu>
Content-Description: 
Content-Disposition: attachment; filename=build.log

bWtkaXIgTU9ETE9BRApta2RpcjogTU9ETE9BRDogRmlsZSBleGlzdHMKKioq
IEVycm9yIGNvZGUgMSAoaWdub3JlZCkKcm0gTU9ETE9BRC9NYWtlZmlsZSBN
T0RMT0FEL01ha2VmaWxlLmNvbW1vbgpsbiAtZnMgLi4vTWFrZWZpbGUgTU9E
TE9BRC9NYWtlZmlsZQpsbiAtZnMgLi4vTWFrZWZpbGUuY29tbW9uIE1PRExP
QUQvTWFrZWZpbGUuY29tbW9uCnJtIC1mICBoIHJwYyB1ZnMgbWFjaGluZQps
biAtZnMgL3Vzci9zcmMvc3lzL2FtZDY0L2luY2x1ZGUgbWFjaGluZQpsbiAt
ZnMgL3Vzci9zcmMvc3lzL3Vmcy91ZnMgdWZzCmxuIC1mcyAvdXNyL3NyYy9z
eXMvcnBjIHJwYwpsbiAtZnMgL3Vzci9zcmMvc3lzL3N5cyBoCmNkIE1PRExP
QUQgOyAgZWNobyBtYWtlIERFU1RESVI9IHNpbmdsZV9jb21wZGlyX2xpYmFm
czsgIG1ha2UgREVTVERJUj0gIHNpbmdsZV9jb21wZGlyX2xpYmFmcwptYWtl
IERFU1RESVI9IHNpbmdsZV9jb21wZGlyX2xpYmFmcwpnY2MgLUkuIC1JLi4g
LUkuLi9uZnMgIC1JL3Vzci9kZXZlbC9vcGVuYWZzL2dpdC9vcGVuYWZzL3Ny
Yy9jcnlwdG8vaGNyeXB0by9rZXJuZWwgIC1JL3Vzci9kZXZlbC9vcGVuYWZz
L2dpdC9vcGVuYWZzL3NyYyAgLUkvdXNyL2RldmVsL29wZW5hZnMvZ2l0L29w
ZW5hZnMvc3JjL2FmcyAgLUkvdXNyL2RldmVsL29wZW5hZnMvZ2l0L29wZW5h
ZnMvc3JjL2Fmcy9GQlNEICAtSS91c3IvZGV2ZWwvb3BlbmFmcy9naXQvb3Bl
bmFmcy9zcmMvY29uZmlnICAtSS91c3IvZGV2ZWwvb3BlbmFmcy9naXQvb3Bl
bmFmcy9zcmMvcngvRkJTRCAgLUkvdXNyL2RldmVsL29wZW5hZnMvZ2l0L29w
ZW5hZnMvc3JjL2V4dGVybmFsL2hlaW1kYWwgIC1JL3Vzci9kZXZlbC9vcGVu
YWZzL2dpdC9vcGVuYWZzL3NyYyAgLUkvdXNyL2RldmVsL29wZW5hZnMvZ2l0
L29wZW5hZnMvc3JjL2FmcyAgLUkvdXNyL2RldmVsL29wZW5hZnMvZ2l0L29w
ZW5hZnMvc3JjL2Fmcy9GQlNEICAtSS91c3IvZGV2ZWwvb3BlbmFmcy9naXQv
b3BlbmFmcy9zcmMvY29uZmlnICAtSS91c3IvZGV2ZWwvb3BlbmFmcy9naXQv
b3BlbmFmcy9zcmMvZnNpbnQgIC1JL3Vzci9kZXZlbC9vcGVuYWZzL2dpdC9v
cGVuYWZzL3NyYy92bHNlcnZlciAgLUkvdXNyL2RldmVsL29wZW5hZnMvZ2l0
L29wZW5hZnMvc3JjL2F1dGggIC1JL3Vzci9kZXZlbC9vcGVuYWZzL2dpdC9v
cGVuYWZzL2luY2x1ZGUgIC1JL3Vzci9kZXZlbC9vcGVuYWZzL2dpdC9vcGVu
YWZzL2luY2x1ZGUvYWZzIC1nIC1PIC1EQUZTREVCVUcgLURLRVJORUwgLURB
RlMgLURWSUNFIC1ETkZTIC1EVUZTIC1ESU5FVCAtRFFVT1RBIC1ER0VUTU9V
TlQgLVdlcnJvciAtRF9LRVJORUwgLURLTERfTU9EVUxFIC1ub3N0ZGluYyAg
LUkuIC1JLi4gLUkuLi9uZnMgLUkvdXNyL2RldmVsL29wZW5hZnMvZ2l0L29w
ZW5hZnMvc3JjL2NyeXB0by9oY3J5cHRvL2tlcm5lbCAtSS91c3IvZGV2ZWwv
b3BlbmFmcy9naXQvb3BlbmFmcy9zcmMgLUkvdXNyL2RldmVsL29wZW5hZnMv
Z2l0L29wZW5hZnMvc3JjL2FmcyAtSS91c3IvZGV2ZWwvb3BlbmFmcy9naXQv
b3BlbmFmcy9zcmMvYWZzL0ZCU0QgLUkvdXNyL2RldmVsL29wZW5hZnMvZ2l0
L29wZW5hZnMvc3JjL2NvbmZpZyAtSS91c3IvZGV2ZWwvb3BlbmFmcy9naXQv
b3BlbmFmcy9zcmMvcngvRkJTRCAtSS91c3IvZGV2ZWwvb3BlbmFmcy9naXQv
b3BlbmFmcy9zcmMvZXh0ZXJuYWwvaGVpbWRhbCAtSS91c3IvZGV2ZWwvb3Bl
bmFmcy9naXQvb3BlbmFmcy9zcmMgLUkvdXNyL2RldmVsL29wZW5hZnMvZ2l0
L29wZW5hZnMvc3JjL2FmcyAtSS91c3IvZGV2ZWwvb3BlbmFmcy9naXQvb3Bl
bmFmcy9zcmMvYWZzL0ZCU0QgLUkvdXNyL2RldmVsL29wZW5hZnMvZ2l0L29w
ZW5hZnMvc3JjL2NvbmZpZyAtSS91c3IvZGV2ZWwvb3BlbmFmcy9naXQvb3Bl
bmFmcy9zcmMvZnNpbnQgLUkvdXNyL2RldmVsL29wZW5hZnMvZ2l0L29wZW5h
ZnMvc3JjL3Zsc2VydmVyIC1JL3Vzci9kZXZlbC9vcGVuYWZzL2dpdC9vcGVu
YWZzL3NyYy9hdXRoIC1JL3Vzci9kZXZlbC9vcGVuYWZzL2dpdC9vcGVuYWZz
L2luY2x1ZGUgLUkvdXNyL2RldmVsL29wZW5hZnMvZ2l0L29wZW5hZnMvaW5j
bHVkZS9hZnMgLUlAL3N5cyAtSW1hY2hpbmUgLUkuIC1JQCAtSUAvY29udHJp
Yi9hbHRxIC1maW5saW5lLWxpbWl0PTgwMDAgLS1wYXJhbSBpbmxpbmUtdW5p
dC1ncm93dGg9MTAwIC0tcGFyYW0gbGFyZ2UtZnVuY3Rpb24tZ3Jvd3RoPTEw
MDAgLWZuby1jb21tb24gIC1mbm8tb21pdC1mcmFtZS1wb2ludGVyICAtbWNt
b2RlbD1rZXJuZWwgLW1uby1yZWQtem9uZSAgLW1mcG1hdGg9Mzg3IC1tbm8t
bW14IC1tbm8tM2Rub3cgLW1uby1zc2UgLW1uby1zc2UyIC1tbm8tc3NlMyAg
LW1zb2Z0LWZsb2F0IC1mbm8tYXN5bmNocm9ub3VzLXVud2luZC10YWJsZXMg
LWZmcmVlc3RhbmRpbmcgLWZzdGFjay1wcm90ZWN0b3IgLXN0ZD1pc285ODk5
OjE5OTkgLWZzdGFjay1wcm90ZWN0b3IgLVduby1yZWR1bmRhbnQtZGVjbHMg
LVdzeXN0ZW0taGVhZGVycyAtV2Vycm9yIC1Xbm8tcG9pbnRlci1zaWduICAt
byBvc2lfY3J5cHRvLm8gLWMgL3Vzci9kZXZlbC9vcGVuYWZzL2dpdC9vcGVu
YWZzL3NyYy9hZnMvRkJTRC9vc2lfY3J5cHRvLmMgL3Vzci9kZXZlbC9vcGVu
YWZzL2dpdC9vcGVuYWZzL3NyYy9saWJhZnMvTU9ETE9BRC8uLi8uLi9hZnMv
RkJTRC9vc2lfY3J5cHRvLmMgdm5vZGVfaWYuaApnY2M6IGNhbm5vdCBzcGVj
aWZ5IC1vIHdpdGggLWMgb3IgLVMgd2l0aCBtdWx0aXBsZSBmaWxlcwoqKiog
RXJyb3IgY29kZSAxCgpTdG9wIGluIC91c3IvZGV2ZWwvb3BlbmFmcy9naXQv
b3BlbmFmcy9zcmMvbGliYWZzL01PRExPQUQuCioqKiBFcnJvciBjb2RlIDEK
ClN0b3AgaW4gL3Vzci9kZXZlbC9vcGVuYWZzL2dpdC9vcGVuYWZzL3NyYy9s
aWJhZnMuCg==

---559023410-2023889498-1305958487=:6818--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?alpine.GSO.1.10.1105210148300.6818>