Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 26 Feb 2007 11:56:02 +0800
From:      mirnshi@gmail.com
To:        freebsd-hackers@freebsd.org
Subject:   the new functions of the crunchgen
Message-ID:  <fe3493cd0702251956u7afb7bcawe197a76a54c1b6c9@mail.gmail.com>
In-Reply-To: <fe3493cd0702251915w75f93e5exe2762e01cdbd2a4d@mail.gmail.com>
References:  <fe3493cd0702251915w75f93e5exe2762e01cdbd2a4d@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
------=_Part_41325_19715973.1172462162579
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

Hi,
   Crunchgen is a smart tools to create a tiny "bsd".  I've used it for
years.
   Sometime, we need some scripts to help crunchgen to generate the makefile
when we combine some foreign packages. If not, the make will stop because of

the definition the symbols. So I modified the codes.

 1. Add two options to special command
   special progname nlib library-file-name
           enter the home directory of the library, run make to rebuild the
static library,
           and tell the 'ld' to add this library  to the progname.lo.
   special progname slib library-file-name
           like nlib, except that the library will be linked as a single
file.

 2. Add "make xxx || echo Never mind." to meet some Makefiles
 3. Disable adding the underscore ('_') to the symbols

see the attachment for detail.

Paul.

------=_Part_41325_19715973.1172462162579
Content-Type: application/octet-stream; name=crunchgen.patch
Content-Transfer-Encoding: base64
X-Attachment-Id: f_eymccf7t
Content-Disposition: attachment; filename="crunchgen.patch"

ZGlmZiAtcnVOIGNydW5jaGdlbi5vcmlnL2NydW5jaGdlbi5jIGNydW5jaGdlbi9jcnVuY2hnZW4u
YwotLS0gY3J1bmNoZ2VuLm9yaWcvY3J1bmNoZ2VuLmMJV2VkIE1heSAzMSAxOToxMTo1OSAyMDA2
CisrKyBjcnVuY2hnZW4vY3J1bmNoZ2VuLmMJVGh1IEphbiAxNSAyMTozOTo0MiAyMDA3CkBAIC0z
MSw2ICszMSwyNSBAQAogICoKICAqIEdlbmVyYXRlcyBhIE1ha2VmaWxlIGFuZCBtYWluIEMgZmls
ZSBmb3IgYSBjcnVuY2hlZCBleGVjdXRhYmxlLAogICogZnJvbSBzcGVjcyBnaXZlbiBpbiBhIC5j
b25mIGZpbGUuCisgKgorICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAq
IE9yaWdpbmFsIGZpbGU6IDEuMzUuMi4xIDIwMDYvMDUvMzEgMTk6MTE6NTkgY2VyaQorICoKKyAq
IDEuIEFkZCB0d28gb3B0aW9ucyB0byBzcGVjaWFsIGNvbW1hbmQKKyAqIDIuIEFkZCAibWFrZSB4
eHggfHwgZWNobyBOZXZlciBtaW5kLiIgdG8gbWVldCBzb21lIE1ha2VmaWxlcworICogMy4gRGlz
YWJsZSBhZGRpbmcgdGhlIHVuZGVyc2NvcmUgKGBfJykgdG8gdGhlIHN5bWJvbHMKKyAqCisgKiBU
aGUgbmV3IG9wdGlvbnM6CisgKiAgIHNwZWNpYWwgcHJvZ25hbWUgbmxpYiBsaWJyYXJ5LWZpbGUt
bmFtZQorICogICAgICAgICAgIHJlYnVpbGQgdGhlIHN0YXRpYyBsaWJyYXJ5LCBhbmQgdGVsbCB0
aGUgJ2xkJyB0byBhZGQgdGhpcyBsaWJyYXJ5CisgKiAgICAgICAgICAgdG8gdGhlIHByb2duYW1l
LmxvLgorICogICBzcGVjaWFsIHByb2duYW1lIHNsaWIgbGlicmFyeS1maWxlLW5hbWUKKyAqICAg
ICAgICAgICByZWJ1aWxkIHRoZSBzdGF0aWMgbGlicmFyeSwgdW5saWtlIG5saWIsIHRoZSBsaWJy
YXJ5IHdpbGwgYmUgbGlua2VkCisgKiAgICAgICAgICAgYXMgYSBzaW5nbGUgZmlsZS4KKyAqCisg
KiBCeSBQYXVsIChtaXJuc2hpQGdtYWlsLmNvbSksIDEvMTUvMjAwNy4KKyAqIC0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgKgogICovCiAjaW5jbHVkZSA8c3lzL3R5cGVzLmg+
CiAjaW5jbHVkZSA8c3lzL3N0YXQuaD4KQEAgLTc0LDYgKzkzLDggQEAKIAlzdHJsc3RfdCAqa2Vl
cGxpc3Q7CiAJc3RybHN0X3QgKmxpbmtzOwogCXN0cmxzdF90ICpsaWJzOworCXN0cmxzdF90ICpz
bGliczsJLyogcmVidWlsZCBsaWJyYXJpZXMgKi8KKwlzdHJsc3RfdCAqbmxpYnM7CS8qIHJlYnVp
bGQgbGlicmFyaWVzLCBtb2R1bGVzKi8KIAlzdHJsc3RfdCAqbGlic19zbzsKIAlpbnQgZ290ZXJy
b3I7CiB9IHByb2dfdDsKQEAgLTQwOSw2ICs0MzAsOCBAQAogCWVsc2UKIAkJcDEtPm5leHQgPSBw
MjsKIAorCS8qIFhYWCB3aHkgYWdhaW4/IFRoZSBzdHJ1Y3QgYmxvY2sgaGFzIGJlZW4gJ21lbXNl
dCcKKyAgICAqLwogCXAyLT5pZGVudCA9IE5VTEw7CiAJcDItPnNyY2RpciA9IE5VTEw7CiAJcDIt
PnJlYWxzcmNkaXIgPSBOVUxMOwpAQCAtNTM4LDYgKzU2MSwxMiBAQAogCX0gZWxzZSBpZiAoIXN0
cmNtcChhcmd2WzJdLCAibGliIikpIHsKIAkJZm9yIChpID0gMzsgaSA8IGFyZ2M7IGkrKykKIAkJ
CWFkZF9zdHJpbmcoJnAtPmxpYnMsIGFyZ3ZbaV0pOworCX0gZWxzZSBpZiAoIXN0cmNtcChhcmd2
WzJdLCAibmxpYiIpKSB7CisJCWZvciAoaSA9IDM7IGkgPCBhcmdjOyBpKyspCisJCQlhZGRfc3Ry
aW5nKCZwLT5ubGlicywgYXJndltpXSk7CisJfSBlbHNlIGlmICghc3RyY21wKGFyZ3ZbMl0sICJz
bGliIikpIHsKKwkJZm9yIChpID0gMzsgaSA8IGFyZ2M7IGkrKykKKwkJCWFkZF9zdHJpbmcoJnAt
PnNsaWJzLCBhcmd2W2ldKTsKIAl9IGVsc2UgewogCQl3YXJueCgiJXM6JWQ6IGJhZCBwYXJhbWV0
ZXIgbmFtZSBgJXMnLCBza2lwcGluZyBsaW5lIiwKIAkJICAgIGN1cmZpbGVuYW1lLCBsaW5lbnVt
LCBhcmd2WzJdKTsKQEAgLTk0OCw2ICs5NzcsNyBAQAogdm9pZCB0b3BfbWFrZWZpbGVfcnVsZXMo
RklMRSAqb3V0bWspCiB7CiAJcHJvZ190ICpwOworCXN0cmxzdF90ICpsc3Q7CiAKIAlpZiAoIHN1
YnRyYWN0X3N0cmxzdCgmbGlicywgJmxpYnNfc28pICkKIAkJZnByaW50ZihvdXRtaywgIiMgTk9U
RTogU29tZSBMSUJTIGRlY2xhcmF0aW9ucyBiZWxvdyBvdmVycmlkZGVuIGJ5IExJQlNfU09cbiIp
OwpAQCAtOTc0LDYgKzEwMDQsMTIgQEAKIAlmcHJpbnRmKG91dG1rLCAiQ1JVTkNIRURfT0JKUz0i
KTsKIAlmb3IgKHAgPSBwcm9nczsgcCAhPSBOVUxMOyBwID0gcC0+bmV4dCkKIAkJZnByaW50Zihv
dXRtaywgIiAlcy5sbyIsIHAtPm5hbWUpOworCisJZm9yIChwID0gcHJvZ3M7IHAgIT0gTlVMTDsg
cCA9IHAtPm5leHQpIHsKKwkJaWYgKHAtPnNsaWJzKQorCQkJZm9yIChsc3QgPSBwLT5zbGliczsg
bHN0ICE9IE5VTEw7IGxzdCA9IGxzdC0+bmV4dCkKKwkJCQlmcHJpbnRmKG91dG1rLCAiICVzIiwg
bHN0LT5zdHIpOworCX0KIAlmcHJpbnRmKG91dG1rLCAiXG4iKTsKIAogCWZwcmludGYob3V0bWss
ICJTVUJNQUtFX1RBUkdFVFM9Iik7CkBAIC0xMDI3LDIwICsxMDYzLDM1IEBACiAJCQlmcHJpbnRm
KG91dG1rLCAiJXNfT1BUUys9IiwgcC0+aWRlbnQpOwogCQkJb3V0cHV0X3N0cmxzdChvdXRtaywg
cC0+YnVpbGRvcHRzKTsKIAkJfQotCQlmcHJpbnRmKG91dG1rLCAiJXNfbWFrZTpcbiIsIHAtPmlk
ZW50KTsKKwkJZnByaW50ZihvdXRtaywgIiVzX21ha2U6IiwgcC0+aWRlbnQpOworCQlpZiAocC0+
c2xpYnMpIAorCQkJZnByaW50ZihvdXRtaywgIiAkeyVzX1NMSUJTfSIsIHAtPmlkZW50KTsKKwkJ
aWYgKHAtPm5saWJzKSAKKwkJCWZwcmludGYob3V0bWssICIgJHslc19OTElCU30iLCBwLT5pZGVu
dCk7CisJCWZwcmludGYob3V0bWssICJcbiIpOworCQkgCiAJCWZwcmludGYob3V0bWssICJcdChj
ZCAkKCVzX1NSQ0RJUikgJiYgIiwgcC0+aWRlbnQpOwogCQlpZiAobWFrZW9iaikKIAkJCWZwcmlu
dGYob3V0bWssICIkKENSVU5DSE1BS0UpIG9iaiAmJiAiKTsKIAkJZnByaW50ZihvdXRtaywgIlxc
XG4iKTsKLQkJZnByaW50ZihvdXRtaywgIlx0XHQkKENSVU5DSE1BS0UpICQoQlVJTERPUFRTKSAk
KCVzX09QVFMpIGRlcGVuZCAmJiIsCi0JCSAgICBwLT5pZGVudCk7CisKKwkJZnByaW50ZihvdXRt
aywgIlx0XHQoJChDUlVOQ0hNQUtFKSAkKEJVSUxET1BUUykgJCglc19PUFRTKSBkZXBlbmQgfHwg
ZWNobyBOZXZlciBtaW5kLikgJiYgIiwKKwkJCXAtPmlkZW50KTsKIAkJZnByaW50ZihvdXRtaywg
IlxcXG4iKTsKIAkJZnByaW50ZihvdXRtaywgIlx0XHQkKENSVU5DSE1BS0UpICQoQlVJTERPUFRT
KSAkKCVzX09QVFMpICIKIAkJICAgICIkKCVzX09CSlMpKSIsCiAJCSAgICBwLT5pZGVudCwgcC0+
aWRlbnQpOwogCQlmcHJpbnRmKG91dG1rLCAiXG4iKTsKLQkJZnByaW50ZihvdXRtaywgIiVzX2Ns
ZWFuOlxuIiwgcC0+aWRlbnQpOwotCQlmcHJpbnRmKG91dG1rLCAiXHQoY2QgJCglc19TUkNESVIp
ICYmICQoQ1JVTkNITUFLRSkgJChCVUlMRE9QVFMpIGNsZWFuIGNsZWFuZGVwZW5kKVxuXG4iLAor
CQlmcHJpbnRmKG91dG1rLCAiJXNfY2xlYW46IiwgcC0+aWRlbnQpOworCQlpZiAocC0+c2xpYnMp
IAorCQkJZnByaW50ZihvdXRtaywgIiBjbGVhbl8lc19TTElCUyIsIHAtPmlkZW50KTsKKwkJaWYg
KHAtPm5saWJzKSAKKwkJCWZwcmludGYob3V0bWssICIgY2xlYW5fJXNfTkxJQlMiLCBwLT5pZGVu
dCk7CisJCWZwcmludGYob3V0bWssICJcbiIpOworCQlmcHJpbnRmKG91dG1rLCAiXHQoY2QgJCgl
c19TUkNESVIpICYmICQoQ1JVTkNITUFLRSkgJChCVUlMRE9QVFMpIGNsZWFuICYmICIsCisJCSAg
ICBwLT5pZGVudCk7CisJCWZwcmludGYob3V0bWssICJcXFxuIik7CisJCWZwcmludGYob3V0bWss
ICJcdFx0KCQoQ1JVTkNITUFLRSkgJChCVUlMRE9QVFMpIGNsZWFuZGVwZW5kIHx8IGVjaG8gTmV2
ZXIgbWluZC4pKVxuIiwKIAkJICAgIHAtPmlkZW50KTsKIAl9IGVsc2UgewogCQlmcHJpbnRmKG91
dG1rLCAiJXNfbWFrZTpcbiIsIHAtPmlkZW50KTsKQEAgLTEwNjEsNiArMTExMiwzMCBAQAogCQlm
cHJpbnRmKG91dG1rLCAiJXNfTElCUz0iLCBwLT5pZGVudCk7CiAJCW91dHB1dF9zdHJsc3Qob3V0
bWssIHAtPmxpYnMpOwogCX0KKwlpZiAocC0+c2xpYnMpIHsKKwkJZnByaW50ZihvdXRtaywgIiVz
X1NMSUJTPSIsIHAtPmlkZW50KTsKKwkJb3V0cHV0X3N0cmxzdChvdXRtaywgcC0+c2xpYnMpOwor
CQlmcHJpbnRmKG91dG1rLCAiJHslc19TTElCU306XG4iLCBwLT5pZGVudCk7CisJCWZwcmludGYo
b3V0bWssICJcdChjZCBgZGlybmFtZSAkey5UQVJHRVR9YDsgJChDUlVOQ0hNQUtFKSAkKEJVSUxE
T1BUUykgJCglc19PUFRTKSlcbiIsIAorCQkJcC0+aWRlbnQpOworCQlmcHJpbnRmKG91dG1rLCAi
Y2xlYW5fJXNfU0xJQlM6XG4iLCBwLT5pZGVudCk7CisJCWZvciAobHN0ID0gcC0+c2xpYnM7IGxz
dCAhPSBOVUxMOyBsc3QgPSBsc3QtPm5leHQpIHsKKwkJCWZwcmludGYob3V0bWssICJcdChjZCBg
ZGlybmFtZSAlc2A7ICQoQ1JVTkNITUFLRSkgJChCVUlMRE9QVFMpIGNsZWFuKVxuIiwgCisJCQkJ
bHN0LT5zdHIsIHAtPmlkZW50KTsKKwkJfQorCX0KKwlpZiAocC0+bmxpYnMpIHsKKwkJZnByaW50
ZihvdXRtaywgIiVzX05MSUJTPSIsIHAtPmlkZW50KTsKKwkJb3V0cHV0X3N0cmxzdChvdXRtaywg
cC0+bmxpYnMpOworCQlmcHJpbnRmKG91dG1rLCAiJHslc19OTElCU306XG4iLCBwLT5pZGVudCk7
CisJCWZwcmludGYob3V0bWssICJcdChjZCBgZGlybmFtZSAkey5UQVJHRVR9YDsgJChDUlVOQ0hN
QUtFKSAkKEJVSUxET1BUUykgJCglc19PUFRTKSlcbiIsIAorCQkJcC0+aWRlbnQpOworCQlmcHJp
bnRmKG91dG1rLCAiY2xlYW5fJXNfTkxJQlM6XG4iLCBwLT5pZGVudCk7CisJCWZvciAobHN0ID0g
cC0+bmxpYnM7IGxzdCAhPSBOVUxMOyBsc3QgPSBsc3QtPm5leHQpIHsKKwkJCWZwcmludGYob3V0
bWssICJcdChjZCBgZGlybmFtZSAlc2A7ICQoQ1JVTkNITUFLRSkgJChCVUlMRE9QVFMpIGNsZWFu
KVxuIiwgCisJCQkJbHN0LT5zdHIsIHAtPmlkZW50KTsKKwkJfQorCX0KIAogCWZwcmludGYob3V0
bWssICIlc19zdHViLmM6XG4iLCBwLT5uYW1lKTsKIAlmcHJpbnRmKG91dG1rLCAiXHRlY2hvIFwi
IgpAQCAtMTA3MSwxNiArMTE0NiwyNSBAQAogCSAgICBwLT5uYW1lLCBwLT5uYW1lLCBwLT5pZGVu
dCk7CiAJaWYgKHAtPmxpYnMpCiAJCWZwcmludGYob3V0bWssICIgJCglc19MSUJTKSIsIHAtPmlk
ZW50KTsKKwlpZiAocC0+bmxpYnMpCisJCWZwcmludGYob3V0bWssICIgJCglc19OTElCUykiLCBw
LT5pZGVudCk7CiAKIAlmcHJpbnRmKG91dG1rLCAiXG4iKTsKIAlmcHJpbnRmKG91dG1rLCAiXHRs
ZCAtZGMgLXIgLW8gJXMubG8gJXNfc3R1Yi5vICQoJXNfT0JKUEFUSFMpIiwKIAkgICAgcC0+bmFt
ZSwgcC0+bmFtZSwgcC0+aWRlbnQpOwogCWlmIChwLT5saWJzKQogCQlmcHJpbnRmKG91dG1rLCAi
ICQoJXNfTElCUykiLCBwLT5pZGVudCk7CisJaWYgKHAtPm5saWJzKQorCQlmcHJpbnRmKG91dG1r
LCAiICQoJXNfTkxJQlMpIiwgcC0+aWRlbnQpOwogCWZwcmludGYob3V0bWssICJcbiIpOwogCWZw
cmludGYob3V0bWssICJcdGNydW5jaGlkZSAtayBfY3J1bmNoZWRfJXNfc3R1YiAiLCBwLT5pZGVu
dCk7CisKKwkvKgorCSAqIFhYWCB3b3csIGFkZGluZyB0aGUgdW5kZXJzY29yZSAoYF8nKSBhdXRv
bWF0aWNhbGx5LgorCSAqIEl0IGlzIG5vdCBhIGdvb2QgaWRlYS4KKyAgICAqLwogCWZvciAobHN0
ID0gcC0+a2VlcGxpc3Q7IGxzdCAhPSBOVUxMOyBsc3QgPSBsc3QtPm5leHQpCi0JCWZwcmludGYo
b3V0bWssICItayBfJXMgIiwgbHN0LT5zdHIpOworCQlmcHJpbnRmKG91dG1rLCAiLWsgJXMgIiwg
bHN0LT5zdHIpOwogCWZwcmludGYob3V0bWssICIlcy5sb1xuIiwgcC0+bmFtZSk7CiB9CiAK
------=_Part_41325_19715973.1172462162579--



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