Skip to content

Commit c75ef9d

Browse files
committed
Build-time unit tests.
No changes to the actual seedtool code, so no version number change. * Extensive build-time unit tests using `shunit2`. * Phase of build script output during execution in blue. * Properly check for existence of bc-ur. * Corrections to MANUAL. * Added note about new build-time dependency on `shunit2` to README.
1 parent e91aba7 commit c75ef9d

File tree

8 files changed

+397
-31
lines changed

8 files changed

+397
-31
lines changed

MANUAL.md

Lines changed: 30 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -211,8 +211,6 @@ tuna acid epic gyro tiny able able acid also unit road trip quad jump rock gift
211211

212212
Multiple groups and a group threshold may be specified. If omitted, the default `--group-threshold` is 1.
213213

214-
**✅ NOTE**: The first two words of a set of SSKR shares are the same across all the shares. Each group within a set of SSKR shares has the same third word.
215-
216214
```
217215
#
218216
# Generate a 16 byte seed and display it as SSKR, first group
@@ -849,7 +847,7 @@ When encoding a multi-part UR, seedtool outputs the minimum number of parts need
849847
# Generate a multi-part UR
850848
#
851849
852-
$ seedtool --count 300 --deterministic=TEST --ur=50
850+
$ seedtool --count 300 --deterministic TEST --ur=50
853851
ur:crypto-seed/1-7/ltadatcfademcyimclztbehddpoeadhkaddwnteelblrcygldwvarflojtcywyjytpdkfwprylienshnjnpluypmamtkmybsjkspvseesawmrltdlplgcpwsadjk
854852
ur:crypto-seed/2-7/ltaoatcfademcyimclztbehddpkplfbkqzztglfeoyaegsnedtrowsdpgtimmwzspfqdjkhshyfrylenpdnnnswmbeheclasztgmdstpoennbtflwykbcxclayrn
855853
ur:crypto-seed/3-7/ltaxatcfademcyimclztbehddptpktgwcxdkhtskwkkgmdmdlubblstnoxpkpysotntbcmotbdwfetqzwsckmscadwssgarysfeomohdytfhlbmeottijlfrvefm
@@ -862,38 +860,40 @@ ur:crypto-seed/7-7/ltatatcfademcyimclztbehddptpgsglmdbnmknebkkscymofpkteyvoatjlq
862860
# Generate the same multi-part UR, but add 10 additional parts
863861
#
864862
865-
$ seedtool --count 300 --deterministic=TEST --ur=50 --parts 10
866-
ur:crypto-seed/1-7/ltadatcfademcyimclztbehddpoeadhkaddwnteelblrcygldwvarflojtcywyjytpdkfwprylienshnjnpluypmamtkmybsjkspvseesawmrltdlplgcpwsadjk
867-
ur:crypto-seed/2-7/ltaoatcfademcyimclztbehddpkplfbkqzztglfeoyaegsnedtrowsdpgtimmwzspfqdjkhshyfrylenpdnnnswmbeheclasztgmdstpoennbtflwykbcxclayrn
868-
ur:crypto-seed/3-7/ltaxatcfademcyimclztbehddptpktgwcxdkhtskwkkgmdmdlubblstnoxpkpysotntbcmotbdwfetqzwsckmscadwssgarysfeomohdytfhlbmeottijlfrvefm
869-
ur:crypto-seed/4-7/ltaaatcfademcyimclztbehddpiogmdnayhholprylstdieytohtweknvtwsdifhbwsptadlzsldrpnspscsutkkiyfzeyvtyajlvlsewnhkjltduohddaahbkia
870-
ur:crypto-seed/5-7/ltahatcfademcyimclztbehddpdwinbschfzkiaygmmudpcnkklahfoxdksgsgvlrstyvlbsvsaxbsmwenfezcurgtlpuecwfehgatkspriymotofgcettkpgrla
871-
ur:crypto-seed/6-7/ltamatcfademcyimclztbehddpmhguskgeflfyfspliorntefgdkykpswzwyrywtpfvwdeecahtdhhvalrnynbtiwnbdctuesabtmnecvapratdwlbvlisytlati
872-
ur:crypto-seed/7-7/ltatatcfademcyimclztbehddptpgsglmdbnmknebkkscymofpkteyvoatjlqdaovesffhylgdimamcyadctgstymddlynpeaotpiecffdhkaeaeaeaewfjyvlsg
873-
ur:crypto-seed/8-7/ltayatcfademcyimclztbehddpmhguskgeflfyfspliorntefgdkykpswzwyrywtpfvwdeecahtdhhvalrnynbtiwnbdctuesabtmnecvapratdwlbvlzmgyzmpd
874-
ur:crypto-seed/9-7/ltasatcfademcyimclztbehddptslsguretstejsuelrhfttahhyguoncnjoknmnismsehtepthejehfskdyflfgcmmhplamlonytowphnkprdmdiswfttcndnmh
875-
ur:crypto-seed/10-7/ltbkatcfademcyimclztbehddpcactfnnskeotcflffrdiwyotsbiabeldnykngadlcxoximhllndwvartptgeaeyknbgrfzldlbjlwpkgwmtpaehttlehspkgzs
876-
ur:crypto-seed/11-7/ltbdatcfademcyimclztbehddpkkgmrhvyhertwlleqzclluchkgfxsaztbbolmuzsstkkwfrkonflcxntislybgihwlsretsacmjyyttbaeeyjkrtzstpfrmufe
877-
ur:crypto-seed/12-7/ltbnatcfademcyimclztbehddpaefradredesahtzmaxmyatsgiapaetotskcssbfmcydtghhpnlfmplwyaduysorhwmrsbgtowmynfppaiylbmeottikbyllyhs
878-
ur:crypto-seed/13-7/ltbtatcfademcyimclztbehddpbntiqdgooxmnpsdnqzjnbbfmsrpswsrpkbeyingejybkmovwnnpfcmecyncaytkprpvoehesfygmcljynnfheedmlrryhestue
879-
ur:crypto-seed/14-7/ltbaatcfademcyimclztbehddpfsollauemkgdryztceiotavelonlhpcwdmlfsrtnlagtylgdcymuiesrcypydssnmhktimykjzftrerybwkpzseygtzsctdpbb
880-
ur:crypto-seed/15-7/ltbsatcfademcyimclztbehddpwddatejegwlssfdamkehayvytbsgzmethyyagtprchkedkytfeyaeyamdrwphnuyaetajzkiynwkhkutiytkjlhtrnsolrlaby
881-
ur:crypto-seed/16-7/ltbeatcfademcyimclztbehddpfltimtzomhmsgsjovlvsaofxknolasttnnstkbtpjpcfvapslgempffppkvdmtvdndpatpgemsfztalpstryrhchbefpwdeyvs
882-
ur:crypto-seed/17-7/ltbyatcfademcyimclztbehddpfsollauemkgdryztceiotavelonlhpcwdmlfsrtnlagtylgdcymuiesrcypydssnmhktimykjzftrerybwkpzseygtdaseoyas
863+
$ seedtool --deterministic TEST --count 300 --ur=50 --parts 10
864+
ur:crypto-seed/1-7/ltadatcfademcypyfzvarkhddpoeadhkaddwnteelblrcygldwvarflojtcywyjytpdkfwprylienshnjnpluypmamtkmybsjkspvseesawmrltdlplgvehkrlst
865+
ur:crypto-seed/2-7/ltaoatcfademcypyfzvarkhddpkplfbkqzztglfeoyaegsnedtrowsdpgtimmwzspfqdjkhshyfrylenpdnnnswmbeheclasztgmdstpoennbtflwykbvamsrnbk
866+
ur:crypto-seed/3-7/ltaxatcfademcypyfzvarkhddptpktgwcxdkhtskwkkgmdmdlubblstnoxpkpysotntbcmotbdwfetqzwsckmscadwssgarysfeomohdytfhlbmeottiptlggmle
867+
ur:crypto-seed/4-7/ltaaatcfademcypyfzvarkhddpiogmdnayhholprylstdieytohtweknvtwsdifhbwsptadlzsldrpnspscsutkkiyfzeyvtyajlvlsewnhkjltduohdvlqdrfts
868+
ur:crypto-seed/5-7/ltahatcfademcypyfzvarkhddpdwinbschfzkiaygmmudpcnkklahfoxdksgsgvlrstyvlbsvsaxbsmwenfezcurgtlpuecwfehgatkspriymotofgcechsrzeee
869+
ur:crypto-seed/6-7/ltamatcfademcypyfzvarkhddpmhguskgeflfyfspliorntefgdkykpswzwyrywtpfvwdeecahtdhhvalrnynbtiwnbdctuesabtmnecvapratdwlbvlplgwenie
870+
ur:crypto-seed/7-7/ltatatcfademcypyfzvarkhddptpgsglmdbnmknebkkscymofpkteyvoatjlqdaovesffhylgdimamcyadctgstymddlynpeaotpiecffdioaeaeaeaedntegunl
871+
ur:crypto-seed/8-7/ltayatcfademcypyfzvarkhddprfftsghlateseczcwkmuwtfhoxotaytbdkktbwbsehsbftwettgujpprurhhbsrflgsesklnhtldgtghtymdvoeszoqzkilgut
872+
ur:crypto-seed/9-7/ltasatcfademcypyfzvarkhddpcnntbwlfqdwkrfksjzwyioylsglpuyotbecwoxbtmdsslbgepehhkocejedwlrkttdesnbadzmhpsfdndwhgsglgfhzsdaursa
873+
ur:crypto-seed/10-7/ltbkatcfademcypyfzvarkhddptpktgwcxdkhtskwkkgmdmdlubblstnoxpkpysotntbcmotbdwfetqzwsckmscadwssgarysfeomohdytfhlbmeottijyjsbwto
874+
ur:crypto-seed/11-7/ltbdatcfademcypyfzvarkhddpkprhbdadtelkctheaxsrmkvluyhybzwypelkehmnpthtecahoesomkfgneflcpptqznncwecrhtinlbwswjptbgtpluynnrlsn
875+
ur:crypto-seed/12-7/ltbnatcfademcypyfzvarkhddpknkocmclaystwnluzomyuyoswzfhgmsgpfferyaowzghbyzcmsoxtylfpfgspfdrbdswprrsztknjzfrtyspfxdahlftdketee
876+
ur:crypto-seed/13-7/ltbtatcfademcypyfzvarkhddpwkckfzemiedisnolvsrorpwzmwtlkblahnhsdrihaoykpsvlwtemcxtahpjesahsfwmsolldiemdcxgrhkwehevwsfqdrswleo
877+
ur:crypto-seed/14-7/ltbaatcfademcypyfzvarkhddptpgsglmdbnmknebkkscymofpkteyvoatjlqdaovesffhylgdimamcyadctgstymddlynpeaotpiecffdioaeaeaeaeyndlbgut
878+
ur:crypto-seed/15-7/ltbsatcfademcypyfzvarkhddpiogmdnayhholprylstdieytohtweknvtwsdifhbwsptadlzsldrpnspscsutkkiyfzeyvtyajlvlsewnhkjltduohdbscyhkhp
879+
ur:crypto-seed/16-7/ltbeatcfademcypyfzvarkhddpmhissszojllpiogdieehtylkflfymwgydnonfrmnzoadhshygridfdimndkgcffdvtnbsfbnvaksjyhgwdksryuoeogsmkqdrn
880+
ur:crypto-seed/17-7/ltbyatcfademcypyfzvarkhddpdwinbschfzkiaygmmudpcnkklahfoxdksgsgvlrstyvlbsvsaxbsmwenfezcurgtlpuecwfehgatkspriymotofgcedkqzmwon
883881
884882
#
885883
# Reconstruct the message from a subset of the generated parts.
886884
#
887885
888886
$ seedtool --in ur
889-
ur:crypto-seed/2-7/ltaoatcfademcyimclztbehddpkplfbkqzztglfeoyaegsnedtrowsdpgtimmwzspfqdjkhshyfrylenpdnnnswmbeheclasztgmdstpoennbtflwykbcxclayrn
890-
ur:crypto-seed/4-7/ltaaatcfademcyimclztbehddpiogmdnayhholprylstdieytohtweknvtwsdifhbwsptadlzsldrpnspscsutkkiyfzeyvtyajlvlsewnhkjltduohddaahbkia
891-
ur:crypto-seed/5-7/ltahatcfademcyimclztbehddpdwinbschfzkiaygmmudpcnkklahfoxdksgsgvlrstyvlbsvsaxbsmwenfezcurgtlpuecwfehgatkspriymotofgcettkpgrla
892-
ur:crypto-seed/7-7/ltatatcfademcyimclztbehddptpgsglmdbnmknebkkscymofpkteyvoatjlqdaovesffhylgdimamcyadctgstymddlynpeaotpiecffdhkaeaeaeaewfjyvlsg
893-
ur:crypto-seed/8-7/ltayatcfademcyimclztbehddpmhguskgeflfyfspliorntefgdkykpswzwyrywtpfvwdeecahtdhhvalrnynbtiwnbdctuesabtmnecvapratdwlbvlzmgyzmpd
894-
ur:crypto-seed/10-7/ltbkatcfademcyimclztbehddpcactfnnskeotcflffrdiwyotsbiabeldnykngadlcxoximhllndwvartptgeaeyknbgrfzldlbjlwpkgwmtpaehttlehspkgzs
895-
ur:crypto-seed/14-7/ltbaatcfademcyimclztbehddpfsollauemkgdryztceiotavelonlhpcwdmlfsrtnlagtylgdcymuiesrcypydssnmhktimykjzftrerybwkpzseygtzsctdpbb
896-
ur:crypto-seed/16-7/ltbeatcfademcyimclztbehddpfltimtzomhmsgsjovlvsaofxknolasttnnstkbtpjpcfvapslgempffppkvdmtvdndpatpgemsfztalpstryrhchbefpwdeyvs
887+
ur:crypto-seed/2-7/ltaoatcfademcypyfzvarkhddpkplfbkqzztglfeoyaegsnedtrowsdpgtimmwzspfqdjkhshyfrylenpdnnnswmbeheclasztgmdstpoennbtflwykbvamsrnbk
888+
ur:crypto-seed/4-7/ltaaatcfademcypyfzvarkhddpiogmdnayhholprylstdieytohtweknvtwsdifhbwsptadlzsldrpnspscsutkkiyfzeyvtyajlvlsewnhkjltduohdvlqdrfts
889+
ur:crypto-seed/5-7/ltahatcfademcypyfzvarkhddpdwinbschfzkiaygmmudpcnkklahfoxdksgsgvlrstyvlbsvsaxbsmwenfezcurgtlpuecwfehgatkspriymotofgcechsrzeee
890+
ur:crypto-seed/7-7/ltatatcfademcypyfzvarkhddptpgsglmdbnmknebkkscymofpkteyvoatjlqdaovesffhylgdimamcyadctgstymddlynpeaotpiecffdioaeaeaeaedntegunl
891+
ur:crypto-seed/8-7/ltayatcfademcypyfzvarkhddprfftsghlateseczcwkmuwtfhoxotaytbdkktbwbsehsbftwettgujpprurhhbsrflgsesklnhtldgtghtymdvoeszoqzkilgut
892+
ur:crypto-seed/9-7/ltasatcfademcypyfzvarkhddpcnntbwlfqdwkrfksjzwyioylsglpuyotbecwoxbtmdsslbgepehhkocejedwlrkttdesnbadzmhpsfdndwhgsglgfhzsdaursa
893+
ur:crypto-seed/10-7/ltbkatcfademcypyfzvarkhddptpktgwcxdkhtskwkkgmdmdlubblstnoxpkpysotntbcmotbdwfetqzwsckmscadwssgarysfeomohdytfhlbmeottijyjsbwto
894+
ur:crypto-seed/14-7/ltbaatcfademcypyfzvarkhddptpgsglmdbnmknebkkscymofpkteyvoatjlqdaovesffhylgdimamcyadctgstymddlynpeaotpiecffdioaeaeaeaeyndlbgut
895+
ur:crypto-seed/16-7/ltbeatcfademcypyfzvarkhddpmhissszojllpiogdieehtylkflfymwgydnonfrmnzoadhshygridfdimndkgcffdvtnbsfbnvaksjyhgwdksryuoeogsmkqdrn
896+
ur:crypto-seed/17-7/ltbyatcfademcypyfzvarkhddpdwinbschfzkiaygmmudpcnkklahfoxdksgsgvlrstyvlbsvsaxbsmwenfezcurgtlpuecwfehgatkspriymotofgcedkqzmwon
897897
^D
898898
9d347f841a4e2ce6bc886e1aee74d82442b2f7649c606daedbad06cf8f0f73c8e834c2ebb7d2868d75820ab4fb4e45a1004c9f29b8ef2d4d6a94fab0b373615e3bf736a89e9ceb105f2109fb5226d8a29e0d47ee7ed8774f20245ac5f47b95958b1483daa4aaabc9dad616a30bf338b4ef1e971d2cc449bdcc339258f93f7f91a3d067522b085ca6b2f7c72732ce5aed7ae0ef273f13c8d92ffa89b69cac18dd79664032e0f86fe3c1f1596fd2dc582c690f17407d0852932d23798056a424cacae3bfd4e30fe8030f943645fcdf4d86de1b45570778b26692ce461c9053c54a47443dae67bed34624f5acf2eebdf0b0e5283505d25ce6849aa0d0f10b1fdec20d8e35e6b2072c7fe3d84c4e950c989f0a781a92417732e2076fb302e4cc3ff7506a061a011f4cd4952ff6af
899899
```
@@ -909,7 +909,7 @@ $ seedtool --in ur
909909
ur:crypto-sskr/taadecgolywpaeadaelfesaxylbetokntnbsgessutmtecdtyttshnfncp
910910
ur:crypto-sskr/taadecgolywpaeadaoskfmnlmhbtemmovyzohffniaeehlcendglsfmkem
911911
^D
912-
e3b0c44298fc1c149afbf4c8996fb924
912+
b8d12ba46f50afd6b2c7a879bf5feebd
913913
```
914914

915915
## Version History

README.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -137,6 +137,10 @@ These dependencies are automatically installed as submodules when you run the bu
137137

138138
### MacOS
139139

140+
```bash
141+
$ brew install autoconf automake libtool shunit2
142+
```
143+
140144
```bash
141145
$ ./build.sh
142146
$ sudo make install
@@ -220,6 +224,7 @@ This table below also establishes provenance (repository of origin, permalink, a
220224
To build `seedtool` you'll need to use the following tools:
221225

222226
- autotools - Gnu Build System from Free Software Foundation ([intro](https://www.gnu.org/software/automake/manual/html_node/Autotools-Introduction.html)).
227+
- shunit2 - Unit testing for shell scripts
223228

224229
## Financial Support
225230

build.sh

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,47 +8,65 @@ source set_build_paths.sh
88
# Terminal colors
99
RED=`tput setaf 1`
1010
GREEN=`tput setaf 2`
11+
BLUE=`tput setaf 4`
1112
RESET=`tput sgr0`
1213

14+
echo "${BLUE}== bc-crypto-base ==${RESET}"
15+
1316
pushd deps/bc-crypto-base
1417
./configure --prefix ${SYSROOT}
1518
make check
1619
make install
1720
popd
1821

22+
echo "${BLUE}== bc-shamir ==${RESET}"
23+
1924
pushd deps/bc-shamir
2025
./configure --prefix ${SYSROOT}
2126
make check
2227
make install
2328
popd
2429

30+
echo "${BLUE}== bc-sskr ==${RESET}"
31+
2532
pushd deps/bc-sskr
2633
./configure --prefix ${SYSROOT}
2734
make check
2835
make install
2936
popd
3037

38+
echo "${BLUE}== bc-bip39 ==${RESET}"
39+
3140
pushd deps/bc-bip39
3241
./configure --prefix ${SYSROOT}
3342
make check
3443
make install
3544
popd
3645

46+
echo "${BLUE}== bc-ur ==${RESET}"
47+
3748
pushd deps/bc-ur
3849
./configure --prefix ${SYSROOT}
3950
make check
4051
make install
4152
popd
4253

54+
echo "${BLUE}== argp-standalone ==${RESET}"
55+
4356
pushd deps/argp-standalone/argp-standalone
57+
set +e
4458
patch -N <../patch-argp-fmtstream.h
59+
set -e
4560
./configure --prefix ${SYSROOT}
4661
make install
4762
cp libargp.a ${SYSROOT}/lib/
4863
cp argp.h ${SYSROOT}/include/
4964
popd
5065

66+
echo "${BLUE}== seedtool ==${RESET}"
67+
5168
./configure
69+
make clean
5270
make check
5371
echo "${GREEN}*** Seedtool built.${RESET}"
5472
echo "${GREEN}Next step: sudo make install${RESET}"

configure

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3717,6 +3717,56 @@ else
37173717

37183718
fi
37193719

3720+
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for crc32n in -lbc-ur" >&5
3721+
$as_echo_n "checking for crc32n in -lbc-ur... " >&6; }
3722+
if ${ac_cv_lib_bc_ur_crc32n+:} false; then :
3723+
$as_echo_n "(cached) " >&6
3724+
else
3725+
ac_check_lib_save_LIBS=$LIBS
3726+
LIBS="-lbc-ur $LIBS"
3727+
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3728+
/* end confdefs.h. */
3729+
3730+
/* Override any GCC internal prototype to avoid an error.
3731+
Use char because int might match the return type of a GCC
3732+
builtin and then its argument prototype would still apply. */
3733+
#ifdef __cplusplus
3734+
extern "C"
3735+
#endif
3736+
char crc32n ();
3737+
int
3738+
main ()
3739+
{
3740+
return crc32n ();
3741+
;
3742+
return 0;
3743+
}
3744+
_ACEOF
3745+
if ac_fn_c_try_link "$LINENO"; then :
3746+
ac_cv_lib_bc_ur_crc32n=yes
3747+
else
3748+
ac_cv_lib_bc_ur_crc32n=no
3749+
fi
3750+
rm -f core conftest.err conftest.$ac_objext \
3751+
conftest$ac_exeext conftest.$ac_ext
3752+
LIBS=$ac_check_lib_save_LIBS
3753+
fi
3754+
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_bc_ur_crc32n" >&5
3755+
$as_echo "$ac_cv_lib_bc_ur_crc32n" >&6; }
3756+
if test "x$ac_cv_lib_bc_ur_crc32n" = xyes; then :
3757+
cat >>confdefs.h <<_ACEOF
3758+
#define HAVE_LIBBC_UR 1
3759+
_ACEOF
3760+
3761+
LIBS="-lbc-ur $LIBS"
3762+
3763+
else
3764+
3765+
echo "### Error! libbc-ur must be installed first."
3766+
exit -1
3767+
3768+
fi
3769+
37203770
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for argp_parse in -largp" >&5
37213771
$as_echo_n "checking for argp_parse in -largp... " >&6; }
37223772
if ${ac_cv_lib_argp_argp_parse+:} false; then :

configure.ac

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,10 @@ AC_CHECK_LIB([bc-bip39], [bip39_mnemonic_from_word], [], [
2929
echo "### Error! libbc-bip39 must be installed first."
3030
exit -1
3131
])
32+
AC_CHECK_LIB([bc-ur], [crc32n], [], [
33+
echo "### Error! libbc-ur must be installed first."
34+
exit -1
35+
])
3236
AC_CHECK_LIB([argp], [argp_parse], [], [
3337
echo "### Error! argp must be installed first. Try 'brew install argp-standalone'."
3438
exit -1

src/Makefile.in

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ uninstall:
109109

110110
.PHONY: check
111111
check: $(toolname)
112-
./$(toolname)
112+
./test.sh ./$(toolname)
113113

114114
.PHONY: clean
115115
clean:

src/config.h.in

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,9 @@
2121
/* Define to 1 if you have the `bc-sskr' library (-lbc-sskr). */
2222
#undef HAVE_LIBBC_SSKR
2323

24+
/* Define to 1 if you have the `bc-ur' library (-lbc-ur). */
25+
#undef HAVE_LIBBC_UR
26+
2427
/* Define to 1 if your system has a GNU libc compatible `malloc' function, and
2528
to 0 otherwise. */
2629
#undef HAVE_MALLOC

0 commit comments

Comments
 (0)