Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 4 Apr 2014 22:28:37 +0000
From:      "Peel, Casey" <casey.peel@isilon.com>
To:        Julio Merino <jmmv@freebsd.org>
Cc:        "freebsd-testing@freebsd.org" <freebsd-testing@freebsd.org>
Subject:   RE: Makefiles for skip-level directories?
Message-ID:  <16437CC5729B5345AF77F816513376E820BACB49@MX103CL02.corp.emc.com>
References:  <16437CC5729B5345AF77F816513376E8129868F1@MX103CL02.corp.emc.com> <CAFY7cWD2A_B949Fp7Pp5rKysNbQE_LqBJh%2BwYD1-v8uGcLEXBw@mail.gmail.com> <16437CC5729B5345AF77F816513376E820BAA20A@MX103CL02.corp.emc.com> <CAFY7cWD52sSES%2BLqFr6T6-=WREF7iF=HGTDuKov4NhJ9_dmxng@mail.gmail.com> 

next in thread | previous in thread | raw e-mail | index | archive | help
--_002_16437CC5729B5345AF77F816513376E820BACB49MX103CL02corpem_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

Ok, I figured it out and wrote up the following document (that is published=
 on our internal wiki). You may take whatever you want of this for the Free=
BSD wiki if you find it useful.

Something rcattelan pointed out while doing the code review for my gpart ch=
anges that I wanted to run past you:
<daelf> is the include bsd.own.mk to pick up MK_TESTS?
<cpeel> yes
<daelf> do you need to do that in the files that are not look at MK_TESTS?
<daelf> geom/tests/Makefile ?
<cpeel> I probably don't have to, but that's how the other Makefiles like t=
hat are done in FreeBSD, eg: src/bin/tests/Makefile
<daelf> bsd.own.mk is included by bsd.init.mk which is included by bsd.test=
.mk=20
<daelf> so it seems redundant
<daelf> maybe we should ask the upstream if is correct ... might be better =
to leave it off vs perpetuating  something that might  not be right

-- Casey

--
Performance Test Ninja
casey.peel@isilon.com / 206.777.7945


-----Original Message-----
From: Peel, Casey=20
Sent: Friday, April 04, 2014 10:15 AM
To: 'Julio Merino'
Cc: freebsd-testing@freebsd.org
Subject: RE: Makefiles for skip-level directories?

> Please let me know where the documentation above is lacking and/or how
> to make it more discoverable.

Well, lets start with the fact that the share/mk/bsd.README file isn't refe=
renced anywhere on https://wiki.freebsd.org/TestSuite/DeveloperHowTo yet it=
 contains information on the Makefile variables that don't seem to be docum=
ented anywhere else.

It would be good to keep in mind that most testers aren't build engineers a=
nd know just enough about Makefiles to get themselves in trouble (me includ=
ed) so this is an area that needs to be over-documented. If we want to enab=
le people to contribute test code, we need to lower th bar on how to wire t=
hem up to the build. In an ideal world, the entire source tree would contai=
n tests/ directories ready and primed for testcases to be added and the Mak=
efile within them simply updated.

In the meantime I'm going to acquire a Sonic Cherry Coke, put up my Do Not =
Disturb sign, and see if I can't figure out how the hell this stuff works a=
nd write up the definitive guide for n00bs like myself.

-- Casey

--
Performance Test Ninja
casey.peel@isilon.com / 206.777.7945

--_002_16437CC5729B5345AF77F816513376E820BACB49MX103CL02corpem_
Content-Type: text/plain; name="freebsd_atf_makefiles_for_dummies.txt"
Content-Description: freebsd_atf_makefiles_for_dummies.txt
Content-Disposition: attachment;
	filename="freebsd_atf_makefiles_for_dummies.txt"; size=4404;
	creation-date="Fri, 04 Apr 2014 22:27:11 GMT";
	modification-date="Fri, 04 Apr 2014 22:23:24 GMT"
Content-Transfer-Encoding: base64

RnJlZUJTRCBBVEYgTWFrZWZpbGUgZm9yIER1bW1pZXMKClRoZSBwcmltYXJ5IEFURiBkb2N1bWVu
dGF0aW9uIGlzIHNhZGx5IGxhY2tpbmcgaW4gZGV0YWlscyBmb3IgaG93IHlvdSB3aXJlIHVwIE1h
a2VmaWxlcyBmb3Igc29tZSBkaXJlY3Rvcmllcy4gVGhpcyBhdHRlbXB0cyB0byBzaGVkIHNvbWUg
bGlnaHQgb24gdGhpcy4KCj0gS2VybmVsIHRlc3RzIGRvbid0IGZvbGxvdyB0aGUgcGxhY2VtZW50
IHJ1bGVzID0KSWYgeW91IGFyZSB0cnlpbmcgdG8gYWRkIGFuIEFURiB0ZXN0IHRvIHNvbWUgY29k
ZSB1bmRlciBzcmMvc3lzLyB5b3UgZG9uJ3QgcHV0IHRoZW0gaW4gc3JjL3N5cy4gSW5zdGVhZCwg
dGhlc2UgYmVsb25nIGluIHNyYy90ZXN0cy9zeXMvLiBJbiB0aGlzIGxvY2F0aW9uIHRoZXkgZm9s
bG93IHNpbWlsYXIgcnVsZXMgYXMgZWxzZXdoZXJlIC0tIGlmIHlvdSdyZSB3cml0aW5nIGEgdGVz
dCBmb3Igc3JjL3N5cy9uZXQgdGhlIHRlc3RzIGJlbG9uZyBpbiBzcmMvdGVzdHMvc3lzL25ldC8K
Cj0gV2lyaW5nIHVwIHRoZSB0ZXN0cy8gc3ViZGlyZWN0b3J5ID0KV2hlbiBhZGRpbmcgYSBuZXcg
dGVzdHMvIGRpcmVjdG9yeSBzb21ld2hlcmUgaW4gdGhlIHRyZWUsIGl0cyBpbXBvcnRhbnQgdG8g
d2lyZSBpdCB1cCB0byBpdHMgcGFyZW50IE1ha2VmaWxlIHNvIGl0IGNhbiBiZSBzZWVuIGJ5IHRo
ZSBidWlsZC4KClRoZSBbaHR0cHM6Ly93aWtpLmZyZWVic2Qub3JnL1Rlc3RTdWl0ZS9EZXZlbG9w
ZXJIb3dUbyBGcmVlQlNEIGluc3RydWN0aW9uc10gc2F5IHNpbXBseSB0byAiRWRpdCB0aGUgcGFy
ZW50IE1ha2VmaWxlIHRvIHJlY3Vyc2UgaW50byB0aGUgbmV3IHN1YmRpcmVjdG9yeSIgYnV0IGl0
IGRvZXNuJ3QgdGVsbCB5b3UgaG93IHRvIGRvIHRoYXQuIEEgbmlldmUgcmVhZGluZyBzYXlzIGl0
J3MgYXMgc2ltcGxlIGFzIGVkaXRpbmcgdGhlIHBhcmVudCBkaXJlY3RvcnkncyBNYWtlZmlsZSBh
bmQgYWRkaW5nIHRoaXM6CiAuaWYgJHtNS19URVNUU30gIT0gIm5vIgogU1VCRElSKz0gICAgdGVz
dHMKIC5lbmRpZgogCiAuaW5jbHVkZSA8YnNkLnN1YmRpci5taz4KCkFuZCB0aGF0IHdvcmtzIC4u
LiBzb21ldGltZXMuIFVuZm9ydHVuYXRlbHkgdGhhdCBtYWtlcyBzb21lIGh1Z2UgYXNzdW1wdGlv
bnMgYWJvdXQgaG93IHRoZSBwYXJlbnQgZGlyZWN0b3J5J3MgTWFrZWZpbGUgaXMgY29kZWQuIEZv
ciBzb21lIE1ha2VmaWxlcywgbGlrZSB0aG9zZSBpbiBzcmMvc2Jpbi9nZW9tL2NsYXNzL3BhcnQs
IHRoaXMgd29uJ3Qgd29yay4gVGhhdCBNYWtlZmlsZSBsb29rcyBsaWtlIHRoaXM6CiAjICRGcmVl
QlNEJAogCiAuUEFUSDogJHsuQ1VSRElSfS8uLi8uLi9taXNjCiAKIEdFT01fQ0xBU1M9CXBhcnQK
IAogRFBBREQ9CSR7TElCVVRJTH0KIExEQUREPQktbHV0aWwKIAogLmluY2x1ZGUgPGJzZC5saWIu
bWs+CgpBZGRpbmcgdGhlIFNVQkRJUiBzdHVmZiB0byB0aGUgZW5kIG9mIHRoaXMgZmlsZSB3b24n
dCB3b3JrLiBic2QubGliLm1rIGRvZXMgc29tZSB0aGluZ3MgdGhhdCB3aWxsIHNraXAgc3ViZGly
ZWN0b3J5IHByb2Nlc3Npbmcgc28geW91IGhhdmUgdG8gbW92ZSBpdCBhYm92ZSB0aGF0OgogIyAk
RnJlZUJTRCQKIAogLlBBVEg6ICR7LkNVUkRJUn0vLi4vLi4vbWlzYwogCiBHRU9NX0NMQVNTPQlw
YXJ0CiAKIERQQUREPQkke0xJQlVUSUx9CiBMREFERD0JLWx1dGlsCiAKIC5pZiAke01LX1RFU1RT
fSAhPSAibm8iCiBTVUJESVIrPSAgICB0ZXN0cwogLmVuZGlmCiAgCiAuaW5jbHVkZSA8YnNkLnN1
YmRpci5taz4KIAogLmluY2x1ZGUgPGJzZC5saWIubWs+CgpUaGlzIHdvbid0IHdvcmsgZWl0aGVy
IHRob3VnaCBiZWNhdXNlIE1LX1RFU1RTIGlzbid0IGRlZmluZWQgeWV0LiBUaGF0IGRvZXNuJ3Qg
Z2V0IGRlZmluZWQgdW50aWwgYnNkLm93bi5tayBnZXRzIHB1bGxlZCBpbiB0aHJvdWdoIGJzZC5s
aWIubWsuIFRvIHJlc29sdmUgdGhhdCwgeW91IG5lZWQgdG8gaW5jbHVkZSB0aGF0IGF0IHRoZSB0
b3Agb2YgdGhlIGZpbGU6CiAjICRGcmVlQlNEJAogCiAuaW5jbHVkZSA8YnNkLm93bi5taz4KIAog
LlBBVEg6ICR7LkNVUkRJUn0vLi4vLi4vbWlzYwogCiBHRU9NX0NMQVNTPQlwYXJ0CiAKIERQQURE
PQkke0xJQlVUSUx9CiBMREFERD0JLWx1dGlsCiAKIC5pZiAke01LX1RFU1RTfSAhPSAibm8iCiBT
VUJESVIrPSAgICB0ZXN0cwogLmVuZGlmCiAgCiAuaW5jbHVkZSA8YnNkLnN1YmRpci5taz4KIAog
LmluY2x1ZGUgPGJzZC5saWIubWs+CgpTdWNjZXNzISBUaGlzIGlzIG5vdyBwdWxsaW5nIGluIHRo
ZSBwYXJ0L3Rlc3RzLyBkaXJlY3RvcnkgYW5kIHRoZSBmaWxlcyBhcmUgYmVpbmcgbGFpZCBvdXQg
aW4gdGhlIC91c3IvdGVzdHMgZGlyZWN0b3J5OgogW3Jvb3QgL3Vzci90ZXN0c10jIGZpbmQgc2Jp
bi9nZW9tCiBzYmluL2dlb20KIHNiaW4vZ2VvbS9jbGFzcwogc2Jpbi9nZW9tL2NsYXNzL3BhcnQK
IHNiaW4vZ2VvbS9jbGFzcy9wYXJ0L3RfZ3BhcnQKIHNiaW4vZ2VvbS9jbGFzcy9wYXJ0L0t5dWFm
aWxlCgpFeGNlcHQga3l1YSBjYW4ndCBmaW5kIHRoZW06CiBbcm9vdCAvdXNyL3Rlc3RzXSMga3l1
YSBsaXN0IHwgZ3JlcCBncGFydAogW3Jvb3QgL3Vzci90ZXN0c10jIAoKPSBXaXJpbmcgdXAgYWxs
IHRlc3RzLyBkaXJlY3RvcnkgYW5jZXN0b3JzID0Ka3l1YSByZWxpZXMgb24gZWFjaCBkaXJlY3Rv
cnkgdW5kZXIgL3Vzci90ZXN0cyB3aXRoIHN1YmRpcmVjdG9yaWVzIHRvIGNvbnRhaW4gYSBLeXVh
ZmlsZS4gSWYgeW91J3ZlIGFkZGVkIGEgZGVlcCBzdWJkaXJlY3RvcnkgKGxpa2UgaW4gdGhlIHNi
aW4vZ2VvbS9jbGFzcy9wYXJ0IGV4YW1wbGUgYWJvdmUpIHRoZXNlIGludGVybWVkaWFyeSBLeXVh
ZmlsZXMgd29uJ3QgZXhpc3QuIFRvIGZpeCB0aGF0IGV2ZXJ5IGFuY2VzdG9yIGRpcmVjdG9yeSBv
ZiB5b3VyIHRlc3RzIGRpcmVjdG9yeSBhbHNvIG5lZWQgYSB0ZXN0cy8gZGlyZWN0b3J5IGFuZCBh
IE1ha2VmaWxlIHRoYXQgbG9va3Mgc2ltaWxhciB0byB0aGlzOgogIyAkRnJlZUJTRCQKIAogLmlu
Y2x1ZGUgPGJzZC5vd24ubWs+CiAKIFRFU1RTRElSPSAgICAgICAke1RFU1RTQkFTRX0vc2Jpbi9n
ZW9tL2NsYXNzCiAKIC5QQVRIOiAgICAgICAgICAkey5DVVJESVI6SDpIOkh9L3Rlc3RzCiBLWVVB
RklMRT0gICAgICAgeWVzCiAKIC5pbmNsdWRlIDxic2QudGVzdC5taz4KClRFU1RTRElSIHNob3Vs
ZCBwb2ludCB0byB0aGUgZGlyZWN0b3J5IHRoYXQgdGhlIEt5dWFmaWxlIHdpbGwgZW5kIHVwIGlu
IC91c3IvdGVzdHMgKGp1c3QgbGlrZSBhbnkgb3RoZXIgVEVTVFNESVIpLgoKLlBBVEg6IG5lZWRz
IHRvIHBvaW50IHRvIHRoZSBzcmMvdGVzdHMgZGlyZWN0b3J5IHdoZXJlIHRoZSBLeXVhZmlsZSB3
aWxsIGJlIHB1bGxlZCBpbiBmcm9tLiBUaGUgOkggc3ludGF4IGluICR7LkNVUkRJUn0gc3BlY2lm
aWVzIGEgcmVsYXRpdmUgcGF0aCB0byAkey5DVVJESVJ9LiAkey5DVVJESVJ9IGlzIHRoZSBjdXJy
ZW50IHdvcmtpbmcgZGlyZWN0b3J5LCAkey5DVVJESVI6SH0gaXMgdGhlIHBhcmVudCBkaXJlY3Rv
cnkgb2YgdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnksICR7LkNVUkRJUjpIOkh9IGlzIHRo
ZSBwYXJlbnQncyBwYXJlbnQgZGlyZWN0b3J5LCBldGMuIFNvICR7LkNVUkRJUjpIOkg6SH0vdGVz
dHMgcG9pbnRzIHRvIC4uLy4uLy4uL3Rlc3RzLiBJbiB0aGUgY2FzZSBvZiBzeXMvc2Jpbi9nZW9t
L2NsYXNzLywgdGhhdCByZXNvbHZlcyB0byBzeXMvdGVzdHMvLgoKS1lVQUZJTEU9eWVzIHRlbGxz
IHRoZSBNYWtlZmlsZSB0byBwdWxsIGFuIGV4aXN0aW5nIEt5dWFmaWxlLCBub3QgdG8gY3JlYXRl
IG9uZSBpdHNlbGYuIEl0IGlzIGNyaXRpY2FsIHRvIGdldCAuUEFUSCBzZXQgdXAgY29ycmVjdGx5
IHNvIHRoZSBLeXVhZmlsZSBjYW4gYmUgZm91bmQgYnkgdGhlIGJ1aWxkLgoKTm93IGZvciBlYWNo
IG9mIHRoZXNlIG5ldyB0ZXN0cy8gZGlyZWN0b3JpZXMsIHlvdSBuZWVkIHRvIHdpcmUgdGhlbSB1
cCB0byB0aGUgcGFyZW50IGRpcmVjdG9yeSdzIE1ha2VmaWxlIHBlciB0aGUgaW5zdHJ1Y3Rpb25z
IGFib3ZlLgoKVGhpcyBtZWFucyB0aGF0IHRvIGFkZCB0ZXN0cyB3aXRoaW4gc2Jpbi9nZW9tL2Ns
YXNzL3BhcnQvdGVzdHMgeW91J2xsIG5lZWQgdG8gY3JlYXRlIHRoZSBmb2xsb3dpbmcgYWRkaXRp
b25hbCBkaXJlY3RvcmllczoKIHNiaW4vZ2VvbS90ZXN0cwogc2Jpbi9nZW9tL2NsYXNzL3Rlc3Rz
CkFuZCBwb3B1bGF0ZSB0aGVtIHdpdGggY3VzdG9taXplZCBNYWtlZmlsZXM6CiBzYmluL2dlb20v
dGVzdHMvTWFrZWZpbGUKIHNiaW4vZ2VvbS9jbGFzcy90ZXN0cy9NYWtlZmlsZQpUaGUgc2Jpbi90
ZXN0cyBkaXJlY3RvcnkgYWxyZWFkeSBleGlzdHMsIG9yIHdlIHdvdWxkIGhhdmUgbmVlZGVkIHRv
IGFkZCB0aGF0IHRvby4K

--_002_16437CC5729B5345AF77F816513376E820BACB49MX103CL02corpem_--



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