0000: 41 43 5f 44 45 46 55 4e 28 44 43 5f 44 4f 5f 54 AC_DEFUN(DC_DO_T
0010: 43 4c 2c 20 5b 0a 09 41 43 5f 4d 53 47 5f 43 48 CL, [..AC_MSG_CH
0020: 45 43 4b 49 4e 47 28 5b 70 61 74 68 20 74 6f 20 ECKING([path to
0030: 74 63 6c 5d 29 0a 09 41 43 5f 41 52 47 5f 57 49 tcl])..AC_ARG_WI
0040: 54 48 28 74 63 6c 2c 20 41 43 5f 48 45 4c 50 5f TH(tcl, AC_HELP_
0050: 53 54 52 49 4e 47 28 5b 2d 2d 77 69 74 68 2d 74 STRING([--with-t
0060: 63 6c 5d 2c 20 5b 64 69 72 65 63 74 6f 72 79 20 cl], [directory
0070: 63 6f 6e 74 61 69 6e 69 6e 67 20 74 63 6c 20 63 containing tcl c
0080: 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 28 74 63 onfiguration (tc
0090: 6c 43 6f 6e 66 69 67 2e 73 68 29 5d 29 2c 20 5b lConfig.sh)]), [
00a0: 5d 2c 20 5b 0a 09 09 77 69 74 68 5f 74 63 6c 3d ], [...with_tcl=
00b0: 22 61 75 74 6f 22 0a 09 5d 29 0a 0a 09 69 66 20 "auto"..])...if
00c0: 74 65 73 74 20 22 24 7b 77 69 74 68 5f 74 63 6c test "${with_tcl
00d0: 7d 22 20 3d 20 22 61 75 74 6f 22 3b 20 74 68 65 }" = "auto"; the
00e0: 6e 0a 09 09 66 6f 72 20 64 69 72 20 69 6e 20 60 n...for dir in `
00f0: 65 63 68 6f 20 22 24 7b 50 41 54 48 7d 22 20 7c echo "${PATH}" |
0100: 20 73 65 64 20 27 73 40 3a 40 20 40 67 27 60 3b sed 's@:@ @g'`;
0110: 20 64 6f 0a 09 09 09 69 66 20 74 65 73 74 20 2d do....if test -
0120: 66 20 22 24 7b 64 69 72 7d 2f 74 63 6c 43 6f 6e f "${dir}/tclCon
0130: 66 69 67 2e 73 68 22 3b 20 74 68 65 6e 0a 09 09 fig.sh"; then...
0140: 09 09 74 63 6c 63 6f 6e 66 69 67 73 68 64 69 72 ..tclconfigshdir
0150: 3d 22 24 7b 64 69 72 7d 22 0a 09 09 09 09 74 63 ="${dir}".....tc
0160: 6c 63 6f 6e 66 69 67 73 68 3d 22 24 7b 74 63 6c lconfigsh="${tcl
0170: 63 6f 6e 66 69 67 73 68 64 69 72 7d 2f 74 63 6c configshdir}/tcl
0180: 43 6f 6e 66 69 67 2e 73 68 22 0a 09 09 09 09 62 Config.sh".....b
0190: 72 65 61 6b 0a 09 09 09 66 69 0a 09 09 09 69 66 reak....fi....if
01a0: 20 74 65 73 74 20 2d 66 20 22 24 7b 64 69 72 7d test -f "${dir}
01b0: 2f 2e 2e 2f 6c 69 62 2f 74 63 6c 43 6f 6e 66 69 /../lib/tclConfi
01c0: 67 2e 73 68 22 3b 20 74 68 65 6e 0a 09 09 09 09 g.sh"; then.....
01d0: 74 63 6c 63 6f 6e 66 69 67 73 68 64 69 72 3d 22 tclconfigshdir="
01e0: 24 7b 64 69 72 7d 2f 2e 2e 2f 6c 69 62 22 0a 09 ${dir}/../lib"..
01f0: 09 09 09 74 63 6c 63 6f 6e 66 69 67 73 68 3d 22 ...tclconfigsh="
0200: 24 7b 74 63 6c 63 6f 6e 66 69 67 73 68 64 69 72 ${tclconfigshdir
0210: 7d 2f 74 63 6c 43 6f 6e 66 69 67 2e 73 68 22 0a }/tclConfig.sh".
0220: 09 09 09 09 62 72 65 61 6b 0a 09 09 09 66 69 0a ....break....fi.
0230: 09 09 09 69 66 20 74 65 73 74 20 2d 66 20 22 24 ...if test -f "$
0240: 7b 64 69 72 7d 2f 2e 2e 2f 6c 69 62 36 34 2f 74 {dir}/../lib64/t
0250: 63 6c 43 6f 6e 66 69 67 2e 73 68 22 3b 20 74 68 clConfig.sh"; th
0260: 65 6e 0a 09 09 09 09 74 63 6c 63 6f 6e 66 69 67 en.....tclconfig
0270: 73 68 64 69 72 3d 22 24 7b 64 69 72 7d 2f 2e 2e shdir="${dir}/..
0280: 2f 6c 69 62 36 34 22 0a 09 09 09 09 74 63 6c 63 /lib64".....tclc
0290: 6f 6e 66 69 67 73 68 3d 22 24 7b 74 63 6c 63 6f onfigsh="${tclco
02a0: 6e 66 69 67 73 68 64 69 72 7d 2f 74 63 6c 43 6f nfigshdir}/tclCo
02b0: 6e 66 69 67 2e 73 68 22 0a 09 09 09 09 62 72 65 nfig.sh".....bre
02c0: 61 6b 0a 09 09 09 66 69 0a 09 09 64 6f 6e 65 0a ak....fi...done.
02d0: 0a 09 09 69 66 20 74 65 73 74 20 2d 7a 20 22 24 ...if test -z "$
02e0: 7b 74 63 6c 63 6f 6e 66 69 67 73 68 7d 22 3b 20 {tclconfigsh}";
02f0: 74 68 65 6e 0a 09 09 09 41 43 5f 4d 53 47 5f 45 then....AC_MSG_E
0300: 52 52 4f 52 28 5b 55 6e 61 62 6c 65 20 74 6f 20 RROR([Unable to
0310: 66 69 6e 64 20 74 63 6c 43 6f 6e 66 69 67 2e 73 find tclConfig.s
0320: 68 5d 29 0a 09 09 66 69 0a 09 65 6c 73 65 0a 09 h])...fi..else..
0330: 09 74 63 6c 63 6f 6e 66 69 67 73 68 64 69 72 3d .tclconfigshdir=
0340: 22 24 7b 77 69 74 68 5f 74 63 6c 7d 22 0a 09 09 "${with_tcl}"...
0350: 74 63 6c 63 6f 6e 66 69 67 73 68 3d 22 24 7b 74 tclconfigsh="${t
0360: 63 6c 63 6f 6e 66 69 67 73 68 64 69 72 7d 2f 74 clconfigshdir}/t
0370: 63 6c 43 6f 6e 66 69 67 2e 73 68 22 0a 09 66 69 clConfig.sh"..fi
0380: 0a 0a 09 69 66 20 74 65 73 74 20 2d 66 20 22 24 ...if test -f "$
0390: 7b 74 63 6c 63 6f 6e 66 69 67 73 68 7d 22 3b 20 {tclconfigsh}";
03a0: 74 68 65 6e 0a 09 09 2e 20 22 24 7b 74 63 6c 63 then.... "${tclc
03b0: 6f 6e 66 69 67 73 68 7d 22 0a 0a 09 09 43 46 4c onfigsh}"....CFL
03c0: 41 47 53 3d 22 24 7b 43 46 4c 41 47 53 7d 20 24 AGS="${CFLAGS} $
03d0: 7b 54 43 4c 5f 49 4e 43 4c 55 44 45 5f 53 50 45 {TCL_INCLUDE_SPE
03e0: 43 7d 20 2d 49 24 7b 54 43 4c 5f 53 52 43 5f 44 C} -I${TCL_SRC_D
03f0: 49 52 7d 2f 67 65 6e 65 72 69 63 20 2d 49 24 7b IR}/generic -I${
0400: 74 63 6c 63 6f 6e 66 69 67 73 68 64 69 72 7d 22 tclconfigshdir}"
0410: 0a 09 09 43 50 50 46 4c 41 47 53 3d 22 24 7b 43 ...CPPFLAGS="${C
0420: 50 50 46 4c 41 47 53 7d 20 24 7b 54 43 4c 5f 49 PPFLAGS} ${TCL_I
0430: 4e 43 4c 55 44 45 5f 53 50 45 43 7d 20 2d 49 24 NCLUDE_SPEC} -I$
0440: 7b 54 43 4c 5f 53 52 43 5f 44 49 52 7d 2f 67 65 {TCL_SRC_DIR}/ge
0450: 6e 65 72 69 63 20 2d 49 24 7b 74 63 6c 63 6f 6e neric -I${tclcon
0460: 66 69 67 73 68 64 69 72 7d 22 0a 09 09 4c 49 42 figshdir}"...LIB
0470: 53 3d 22 24 7b 4c 49 42 53 7d 20 24 7b 54 43 4c S="${LIBS} ${TCL
0480: 5f 4c 49 42 53 7d 22 0a 0a 09 09 4b 49 54 44 4c _LIBS}"....KITDL
0490: 4c 5f 4c 49 42 5f 56 45 52 53 49 4f 4e 3d 60 65 L_LIB_VERSION=`e
04a0: 63 68 6f 20 22 24 7b 54 43 4c 5f 56 45 52 53 49 cho "${TCL_VERSI
04b0: 4f 4e 7d 24 7b 54 43 4c 5f 50 41 54 43 48 5f 4c ON}${TCL_PATCH_L
04c0: 45 56 45 4c 7d 22 20 7c 20 73 65 64 20 27 73 40 EVEL}" | sed 's@
04d0: 5c 2e 40 40 67 27 60 0a 09 66 69 0a 0a 09 41 43 \.@@g'`..fi...AC
04e0: 5f 53 55 42 53 54 28 43 46 4c 41 47 53 29 0a 09 _SUBST(CFLAGS)..
04f0: 41 43 5f 53 55 42 53 54 28 43 50 50 46 4c 41 47 AC_SUBST(CPPFLAG
0500: 53 29 0a 09 41 43 5f 53 55 42 53 54 28 4c 49 42 S)..AC_SUBST(LIB
0510: 53 29 0a 09 41 43 5f 53 55 42 53 54 28 4b 49 54 S)..AC_SUBST(KIT
0520: 44 4c 4c 5f 4c 49 42 5f 56 45 52 53 49 4f 4e 29 DLL_LIB_VERSION)
0530: 0a 0a 09 41 43 5f 4d 53 47 5f 52 45 53 55 4c 54 ...AC_MSG_RESULT
0540: 28 5b 24 74 63 6c 63 6f 6e 66 69 67 73 68 5d 29 ([$tclconfigsh])
0550: 0a 5d 29 0a 0a 41 43 5f 44 45 46 55 4e 28 44 43 .])..AC_DEFUN(DC
0560: 5f 44 4f 5f 54 4b 2c 20 5b 0a 09 41 43 5f 4d 53 _DO_TK, [..AC_MS
0570: 47 5f 43 48 45 43 4b 49 4e 47 28 5b 70 61 74 68 G_CHECKING([path
0580: 20 74 6f 20 74 6b 5d 29 0a 09 41 43 5f 41 52 47 to tk])..AC_ARG
0590: 5f 57 49 54 48 28 74 6b 2c 20 41 43 5f 48 45 4c _WITH(tk, AC_HEL
05a0: 50 5f 53 54 52 49 4e 47 28 5b 2d 2d 77 69 74 68 P_STRING([--with
05b0: 2d 74 6b 5d 2c 20 5b 64 69 72 65 63 74 6f 72 79 -tk], [directory
05c0: 20 63 6f 6e 74 61 69 6e 69 6e 67 20 74 6b 20 63 containing tk c
05d0: 6f 6e 66 69 67 75 72 61 74 69 6f 6e 20 28 74 6b onfiguration (tk
05e0: 43 6f 6e 66 69 67 2e 73 68 29 5d 29 2c 20 5b 5d Config.sh)]), []
05f0: 2c 20 5b 0a 09 09 77 69 74 68 5f 74 6b 3d 22 61 , [...with_tk="a
0600: 75 74 6f 22 0a 09 5d 29 0a 0a 09 69 66 20 74 65 uto"..])...if te
0610: 73 74 20 22 24 7b 77 69 74 68 5f 74 6b 7d 22 20 st "${with_tk}"
0620: 3d 20 22 61 75 74 6f 22 3b 20 74 68 65 6e 0a 09 = "auto"; then..
0630: 09 66 6f 72 20 64 69 72 20 69 6e 20 2e 2e 2f 2e .for dir in ../.
0640: 2e 2f 2e 2e 2f 74 6b 2f 62 75 69 6c 64 2f 74 6b ./../tk/build/tk
0650: 2a 2f 2a 2f 20 60 65 63 68 6f 20 22 24 7b 50 41 */*/ `echo "${PA
0660: 54 48 7d 22 20 7c 20 73 65 64 20 27 73 40 3a 40 TH}" | sed 's@:@
0670: 20 40 67 27 60 3b 20 64 6f 0a 09 09 09 69 66 20 @g'`; do....if
0680: 74 65 73 74 20 2d 66 20 22 24 7b 64 69 72 7d 2f test -f "${dir}/
0690: 74 6b 43 6f 6e 66 69 67 2e 73 68 22 3b 20 74 68 tkConfig.sh"; th
06a0: 65 6e 0a 09 09 09 09 74 6b 63 6f 6e 66 69 67 73 en.....tkconfigs
06b0: 68 64 69 72 3d 22 24 7b 64 69 72 7d 22 0a 09 09 hdir="${dir}"...
06c0: 09 09 74 6b 63 6f 6e 66 69 67 73 68 3d 22 24 7b ..tkconfigsh="${
06d0: 74 6b 63 6f 6e 66 69 67 73 68 64 69 72 7d 2f 74 tkconfigshdir}/t
06e0: 6b 43 6f 6e 66 69 67 2e 73 68 22 0a 09 09 09 09 kConfig.sh".....
06f0: 62 72 65 61 6b 0a 09 09 09 66 69 0a 09 09 09 69 break....fi....i
0700: 66 20 74 65 73 74 20 2d 66 20 22 24 7b 64 69 72 f test -f "${dir
0710: 7d 2f 2e 2e 2f 6c 69 62 2f 74 6b 43 6f 6e 66 69 }/../lib/tkConfi
0720: 67 2e 73 68 22 3b 20 74 68 65 6e 0a 09 09 09 09 g.sh"; then.....
0730: 74 6b 63 6f 6e 66 69 67 73 68 64 69 72 3d 22 24 tkconfigshdir="$
0740: 7b 64 69 72 7d 2f 2e 2e 2f 6c 69 62 22 0a 09 09 {dir}/../lib"...
0750: 09 09 74 6b 63 6f 6e 66 69 67 73 68 3d 22 24 7b ..tkconfigsh="${
0760: 74 6b 63 6f 6e 66 69 67 73 68 64 69 72 7d 2f 74 tkconfigshdir}/t
0770: 6b 43 6f 6e 66 69 67 2e 73 68 22 0a 09 09 09 09 kConfig.sh".....
0780: 62 72 65 61 6b 0a 09 09 09 66 69 0a 09 09 09 69 break....fi....i
0790: 66 20 74 65 73 74 20 2d 66 20 22 24 7b 64 69 72 f test -f "${dir
07a0: 7d 2f 2e 2e 2f 6c 69 62 36 34 2f 74 6b 43 6f 6e }/../lib64/tkCon
07b0: 66 69 67 2e 73 68 22 3b 20 74 68 65 6e 0a 09 09 fig.sh"; then...
07c0: 09 09 74 6b 63 6f 6e 66 69 67 73 68 64 69 72 3d ..tkconfigshdir=
07d0: 22 24 7b 64 69 72 7d 2f 2e 2e 2f 6c 69 62 36 34 "${dir}/../lib64
07e0: 22 0a 09 09 09 09 74 6b 63 6f 6e 66 69 67 73 68 ".....tkconfigsh
07f0: 3d 22 24 7b 74 6b 63 6f 6e 66 69 67 73 68 64 69 ="${tkconfigshdi
0800: 72 7d 2f 74 6b 43 6f 6e 66 69 67 2e 73 68 22 0a r}/tkConfig.sh".
0810: 09 09 09 09 62 72 65 61 6b 0a 09 09 09 66 69 0a ....break....fi.
0820: 09 09 64 6f 6e 65 0a 0a 09 09 69 66 20 74 65 73 ..done....if tes
0830: 74 20 2d 7a 20 22 24 7b 74 6b 63 6f 6e 66 69 67 t -z "${tkconfig
0840: 73 68 7d 22 3b 20 74 68 65 6e 0a 09 09 09 41 43 sh}"; then....AC
0850: 5f 4d 53 47 5f 45 52 52 4f 52 28 5b 55 6e 61 62 _MSG_ERROR([Unab
0860: 6c 65 20 74 6f 20 66 69 6e 64 20 74 6b 43 6f 6e le to find tkCon
0870: 66 69 67 2e 73 68 5d 29 0a 09 09 66 69 0a 09 65 fig.sh])...fi..e
0880: 6c 73 65 0a 09 09 74 6b 63 6f 6e 66 69 67 73 68 lse...tkconfigsh
0890: 64 69 72 3d 22 24 7b 77 69 74 68 5f 74 6b 7d 22 dir="${with_tk}"
08a0: 0a 09 09 74 6b 63 6f 6e 66 69 67 73 68 3d 22 24 ...tkconfigsh="$
08b0: 7b 74 6b 63 6f 6e 66 69 67 73 68 64 69 72 7d 2f {tkconfigshdir}/
08c0: 74 6b 43 6f 6e 66 69 67 2e 73 68 22 0a 09 66 69 tkConfig.sh"..fi
08d0: 0a 0a 09 69 66 20 74 65 73 74 20 2d 66 20 22 24 ...if test -f "$
08e0: 7b 74 6b 63 6f 6e 66 69 67 73 68 7d 22 3b 20 74 {tkconfigsh}"; t
08f0: 68 65 6e 0a 09 09 2e 20 22 24 7b 74 6b 63 6f 6e hen.... "${tkcon
0900: 66 69 67 73 68 7d 22 0a 0a 09 09 43 46 4c 41 47 figsh}"....CFLAG
0910: 53 3d 22 24 7b 43 46 4c 41 47 53 7d 20 24 7b 54 S="${CFLAGS} ${T
0920: 4b 5f 49 4e 43 4c 55 44 45 5f 53 50 45 43 7d 20 K_INCLUDE_SPEC}
0930: 2d 49 24 7b 74 6b 63 6f 6e 66 69 67 73 68 64 69 -I${tkconfigshdi
0940: 72 7d 20 2d 49 24 7b 54 4b 5f 53 52 43 5f 44 49 r} -I${TK_SRC_DI
0950: 52 7d 2f 67 65 6e 65 72 69 63 20 2d 49 24 7b 54 R}/generic -I${T
0960: 4b 5f 53 52 43 5f 44 49 52 7d 2f 78 6c 69 62 22 K_SRC_DIR}/xlib"
0970: 0a 09 09 43 50 50 46 4c 41 47 53 3d 22 24 7b 43 ...CPPFLAGS="${C
0980: 50 50 46 4c 41 47 53 7d 20 24 7b 54 4b 5f 49 4e PPFLAGS} ${TK_IN
0990: 43 4c 55 44 45 5f 53 50 45 43 7d 20 2d 49 24 7b CLUDE_SPEC} -I${
09a0: 74 6b 63 6f 6e 66 69 67 73 68 64 69 72 7d 20 2d tkconfigshdir} -
09b0: 49 24 7b 54 4b 5f 53 52 43 5f 44 49 52 7d 2f 67 I${TK_SRC_DIR}/g
09c0: 65 6e 65 72 69 63 20 2d 49 24 7b 54 4b 5f 53 52 eneric -I${TK_SR
09d0: 43 5f 44 49 52 7d 2f 78 6c 69 62 22 0a 09 09 4c C_DIR}/xlib"...L
09e0: 49 42 53 3d 22 24 7b 4c 49 42 53 7d 20 24 7b 54 IBS="${LIBS} ${T
09f0: 4b 5f 4c 49 42 53 7d 22 0a 0a 09 09 4e 45 57 4c K_LIBS}"....NEWL
0a00: 49 42 53 3d 22 22 0a 09 09 66 6f 72 20 6c 69 62 IBS=""...for lib
0a10: 20 69 6e 20 24 7b 4c 49 42 53 7d 3b 20 64 6f 0a in ${LIBS}; do.
0a20: 09 09 09 69 66 20 65 63 68 6f 20 22 24 7b 6c 69 ...if echo "${li
0a30: 62 7d 22 20 7c 20 67 72 65 70 20 27 5e 2d 6c 27 b}" | grep '^-l'
0a40: 20 3e 2f 64 65 76 2f 6e 75 6c 6c 3b 20 74 68 65 >/dev/null; the
0a50: 6e 0a 09 09 09 09 69 66 20 65 63 68 6f 20 22 20 n.....if echo "
0a60: 24 7b 4e 45 57 4c 49 42 53 7d 20 22 20 7c 20 67 ${NEWLIBS} " | g
0a70: 72 65 70 20 22 20 24 7b 6c 69 62 7d 20 22 20 3e rep " ${lib} " >
0a80: 2f 64 65 76 2f 6e 75 6c 6c 3b 20 74 68 65 6e 0a /dev/null; then.
0a90: 09 09 09 09 09 63 6f 6e 74 69 6e 75 65 0a 09 09 .....continue...
0aa0: 09 09 66 69 0a 09 09 09 66 69 0a 0a 09 09 09 4e ..fi....fi.....N
0ab0: 45 57 4c 49 42 53 3d 22 24 7b 4e 45 57 4c 49 42 EWLIBS="${NEWLIB
0ac0: 53 7d 20 24 7b 6c 69 62 7d 22 0a 09 09 64 6f 6e S} ${lib}"...don
0ad0: 65 0a 09 09 4c 49 42 53 3d 22 24 7b 4e 45 57 4c e...LIBS="${NEWL
0ae0: 49 42 53 7d 22 0a 09 09 75 6e 73 65 74 20 4e 45 IBS}"...unset NE
0af0: 57 4c 49 42 53 0a 09 66 69 0a 0a 09 41 43 5f 53 WLIBS..fi...AC_S
0b00: 55 42 53 54 28 43 46 4c 41 47 53 29 0a 09 41 43 UBST(CFLAGS)..AC
0b10: 5f 53 55 42 53 54 28 43 50 50 46 4c 41 47 53 29 _SUBST(CPPFLAGS)
0b20: 0a 09 41 43 5f 53 55 42 53 54 28 4c 49 42 53 29 ..AC_SUBST(LIBS)
0b30: 0a 0a 09 41 43 5f 4d 53 47 5f 52 45 53 55 4c 54 ...AC_MSG_RESULT
0b40: 28 5b 24 74 6b 63 6f 6e 66 69 67 73 68 5d 29 0a ([$tkconfigsh]).
0b50: 5d 29 0a 0a 41 43 5f 44 45 46 55 4e 28 44 43 5f ])..AC_DEFUN(DC_
0b60: 44 4f 5f 53 54 41 54 49 43 5f 4c 49 4e 4b 5f 4c DO_STATIC_LINK_L
0b70: 49 42 2c 20 5b 0a 09 41 43 5f 4d 53 47 5f 43 48 IB, [..AC_MSG_CH
0b80: 45 43 4b 49 4e 47 28 5b 66 6f 72 20 68 6f 77 20 ECKING([for how
0b90: 74 6f 20 73 74 61 74 69 63 61 6c 6c 79 20 6c 69 to statically li
0ba0: 6e 6b 20 74 6f 20 24 31 5d 29 0a 0a 09 53 41 56 nk to $1])...SAV
0bb0: 45 4c 49 42 53 3d 22 24 7b 4c 49 42 53 7d 22 0a ELIBS="${LIBS}".
0bc0: 09 73 74 61 74 69 63 6c 69 62 3d 22 22 0a 09 66 .staticlib=""..f
0bd0: 6f 75 6e 64 3d 22 30 22 0a 09 64 6e 6c 20 48 50 ound="0"..dnl HP
0be0: 2f 55 58 20 75 73 65 73 20 2d 57 6c 2c 2d 61 2c /UX uses -Wl,-a,
0bf0: 61 72 63 68 69 76 65 20 2d 6c 73 74 64 63 2b 2b archive -lstdc++
0c00: 20 2d 57 6c 2c 2d 61 2c 73 68 61 72 65 64 5f 61 -Wl,-a,shared_a
0c10: 72 63 68 69 76 65 0a 09 64 6e 6c 20 4c 69 6e 75 rchive..dnl Linu
0c20: 78 20 61 6e 64 20 53 6f 6c 61 72 69 73 20 75 73 x and Solaris us
0c30: 20 2d 57 6c 2c 2d 42 73 74 61 74 69 63 20 2e 2e -Wl,-Bstatic ..
0c40: 2e 20 2d 57 6c 2c 2d 42 64 79 6e 61 6d 69 63 0a . -Wl,-Bdynamic.
0c50: 09 66 6f 72 20 74 72 79 6c 69 6e 6b 20 69 6e 20 .for trylink in
0c60: 22 2d 57 6c 2c 2d 61 2c 61 72 63 68 69 76 65 20 "-Wl,-a,archive
0c70: 24 32 20 2d 57 6c 2c 2d 61 2c 73 68 61 72 65 64 $2 -Wl,-a,shared
0c80: 5f 61 72 63 68 69 76 65 22 20 22 2d 57 6c 2c 2d _archive" "-Wl,-
0c90: 42 73 74 61 74 69 63 20 24 32 20 2d 57 6c 2c 2d Bstatic $2 -Wl,-
0ca0: 42 64 79 6e 61 6d 69 63 22 20 22 24 32 22 3b 20 Bdynamic" "$2";
0cb0: 64 6f 0a 09 09 69 66 20 65 63 68 6f 20 22 20 24 do...if echo " $
0cc0: 7b 4c 44 46 4c 41 47 53 7d 20 22 20 7c 20 67 72 {LDFLAGS} " | gr
0cd0: 65 70 20 27 20 2d 73 74 61 74 69 63 20 27 20 3e ep ' -static ' >
0ce0: 2f 64 65 76 2f 6e 75 6c 6c 3b 20 74 68 65 6e 0a /dev/null; then.
0cf0: 09 09 09 69 66 20 74 65 73 74 20 22 24 7b 74 72 ...if test "${tr
0d00: 79 6c 69 6e 6b 7d 22 20 21 3d 20 22 24 32 22 3b ylink}" != "$2";
0d10: 20 74 68 65 6e 0a 09 09 09 09 63 6f 6e 74 69 6e then.....contin
0d20: 75 65 0a 09 09 09 66 69 0a 09 09 66 69 0a 0a 09 ue....fi...fi...
0d30: 09 4c 49 42 53 3d 22 24 7b 53 41 56 45 4c 49 42 .LIBS="${SAVELIB
0d40: 53 7d 20 24 7b 74 72 79 6c 69 6e 6b 7d 22 0a 0a S} ${trylink}"..
0d50: 09 09 41 43 5f 4c 49 4e 4b 5f 49 46 45 4c 53 45 ..AC_LINK_IFELSE
0d60: 28 41 43 5f 4c 41 4e 47 5f 50 52 4f 47 52 41 4d (AC_LANG_PROGRAM
0d70: 28 5b 5d 2c 20 5b 5d 29 2c 20 5b 0a 09 09 09 73 ([], []), [....s
0d80: 74 61 74 69 63 6c 69 62 3d 22 24 7b 74 72 79 6c taticlib="${tryl
0d90: 69 6e 6b 7d 22 0a 09 09 09 66 6f 75 6e 64 3d 22 ink}"....found="
0da0: 31 22 0a 0a 09 09 09 62 72 65 61 6b 0a 09 09 5d 1".....break...]
0db0: 29 0a 09 64 6f 6e 65 0a 0a 09 69 66 20 74 65 73 )..done...if tes
0dc0: 74 20 22 24 7b 66 6f 75 6e 64 7d 22 20 3d 20 22 t "${found}" = "
0dd0: 31 22 3b 20 74 68 65 6e 0a 09 09 53 41 56 45 4c 1"; then...SAVEL
0de0: 49 42 53 3d 60 65 63 68 6f 20 22 24 53 41 56 45 IBS=`echo "$SAVE
0df0: 4c 49 42 53 22 20 7c 20 73 65 64 20 27 73 40 20 LIBS" | sed 's@
0e00: 24 32 20 40 20 40 27 60 0a 09 09 4c 49 42 53 3d $2 @ @'`...LIBS=
0e10: 22 24 7b 53 41 56 45 4c 49 42 53 7d 20 24 7b 73 "${SAVELIBS} ${s
0e20: 74 61 74 69 63 6c 69 62 7d 22 0a 0a 09 09 41 43 taticlib}"....AC
0e30: 5f 4d 53 47 5f 52 45 53 55 4c 54 28 5b 24 7b 73 _MSG_RESULT([${s
0e40: 74 61 74 69 63 6c 69 62 7d 5d 29 0a 0a 09 09 41 taticlib}])....A
0e50: 43 5f 53 55 42 53 54 28 4c 49 42 53 29 0a 0a 09 C_SUBST(LIBS)...
0e60: 09 24 33 0a 09 65 6c 73 65 0a 09 09 4c 49 42 53 .$3..else...LIBS
0e70: 3d 22 24 7b 53 41 56 45 4c 49 42 53 7d 22 0a 0a ="${SAVELIBS}"..
0e80: 09 09 41 43 5f 4d 53 47 5f 52 45 53 55 4c 54 28 ..AC_MSG_RESULT(
0e90: 5b 63 61 6e 74 5d 29 0a 0a 09 09 24 34 0a 09 66 [cant])....$4..f
0ea0: 69 0a 5d 29 0a 0a 41 43 5f 44 45 46 55 4e 28 44 i.])..AC_DEFUN(D
0eb0: 43 5f 44 4f 5f 53 54 41 54 49 43 5f 4c 49 4e 4b C_DO_STATIC_LINK
0ec0: 5f 4c 49 42 43 58 58 2c 20 5b 0a 09 64 6e 6c 20 _LIBCXX, [..dnl
0ed0: 53 75 6e 20 53 74 75 64 69 6f 20 75 73 65 73 20 Sun Studio uses
0ee0: 2d 6c 43 73 74 64 20 2d 6c 43 72 75 6e 2c 20 6d -lCstd -lCrun, m
0ef0: 6f 73 74 20 70 6c 61 74 66 6f 72 6d 73 20 75 73 ost platforms us
0f00: 65 20 2d 6c 73 74 64 63 2b 2b 0a 09 44 43 5f 44 e -lstdc++..DC_D
0f10: 4f 5f 53 54 41 54 49 43 5f 4c 49 4e 4b 5f 4c 49 O_STATIC_LINK_LI
0f20: 42 28 5b 43 2b 2b 20 4c 69 62 72 61 72 79 20 28 B([C++ Library (
0f30: 53 75 6e 20 53 74 75 64 69 6f 29 5d 2c 20 5b 2d Sun Studio)], [-
0f40: 6c 43 73 74 64 20 2d 6c 43 72 75 6e 5d 2c 2c 20 lCstd -lCrun],,
0f50: 5b 0a 09 09 44 43 5f 44 4f 5f 53 54 41 54 49 43 [...DC_DO_STATIC
0f60: 5f 4c 49 4e 4b 5f 4c 49 42 28 5b 43 2b 2b 20 4c _LINK_LIB([C++ L
0f70: 69 62 72 61 72 79 20 28 55 4e 49 58 29 5d 2c 20 ibrary (UNIX)],
0f80: 5b 2d 6c 73 74 64 63 2b 2b 5d 29 0a 09 5d 29 0a [-lstdc++])..]).
0f90: 5d 29 0a 0a 41 43 5f 44 45 46 55 4e 28 44 43 5f ])..AC_DEFUN(DC_
0fa0: 46 49 4e 44 5f 54 43 4c 4b 49 54 5f 4c 49 42 53 FIND_TCLKIT_LIBS
0fb0: 2c 20 5b 0a 09 44 43 5f 53 45 54 55 50 5f 54 43 , [..DC_SETUP_TC
0fc0: 4c 5f 50 4c 41 54 5f 44 45 46 53 0a 0a 09 64 6e L_PLAT_DEFS...dn
0fd0: 6c 20 57 65 20 77 69 6c 6c 20 6e 65 65 64 20 74 l We will need t
0fe0: 68 69 73 20 66 6f 72 20 74 68 65 20 54 63 6c 20 his for the Tcl
0ff0: 70 72 6f 6a 65 63 74 2c 20 77 68 69 63 68 20 77 project, which w
1000: 65 20 77 69 6c 6c 20 61 6c 77 61 79 73 20 68 61 e will always ha
1010: 76 65 0a 09 44 43 5f 43 48 45 43 4b 5f 46 4f 52 ve..DC_CHECK_FOR
1020: 5f 57 48 4f 4c 45 5f 41 52 43 48 49 56 45 0a 0a _WHOLE_ARCHIVE..
1030: 09 65 63 68 6f 20 27 2f 2a 20 44 79 6e 61 6d 69 .echo '/* Dynami
1040: 63 61 6c 6c 79 20 67 65 6e 65 72 61 74 65 64 2e cally generated.
1050: 20 2a 2f 27 20 3e 20 6b 69 74 49 6e 69 74 2d 6c */' > kitInit-l
1060: 69 62 73 2e 68 0a 09 6c 69 62 73 5f 69 6e 69 74 ibs.h..libs_init
1070: 5f 66 75 6e 63 73 3d 22 22 0a 0a 09 66 6f 72 20 _funcs=""...for
1080: 70 72 6f 6a 64 69 72 20 69 6e 20 2e 2e 2f 2e 2e projdir in ../..
1090: 2f 2e 2e 2f 2a 2f 3b 20 64 6f 0a 09 09 70 72 6f /../*/; do...pro
10a0: 6a 3d 22 60 62 61 73 65 6e 61 6d 65 20 22 24 7b j="`basename "${
10b0: 70 72 6f 6a 64 69 72 7d 22 60 22 0a 09 09 73 75 projdir}"`"...su
10c0: 62 70 72 6f 6a 73 3d 22 24 70 72 6f 6a 22 0a 0a bprojs="$proj"..
10d0: 09 09 69 66 20 74 65 73 74 20 22 24 7b 70 72 6f ..if test "${pro
10e0: 6a 7d 22 20 3d 20 22 62 75 69 6c 64 22 3b 20 74 j}" = "build"; t
10f0: 68 65 6e 0a 09 09 09 63 6f 6e 74 69 6e 75 65 0a hen....continue.
1100: 09 09 66 69 0a 0a 09 09 69 66 20 74 65 73 74 20 ..fi....if test
1110: 22 24 7b 70 72 6f 6a 7d 22 20 3d 20 22 6b 69 74 "${proj}" = "kit
1120: 73 68 22 3b 20 74 68 65 6e 0a 09 09 09 63 6f 6e sh"; then....con
1130: 74 69 6e 75 65 0a 09 09 66 69 0a 0a 09 09 69 66 tinue...fi....if
1140: 20 74 65 73 74 20 22 24 7b 70 72 6f 6a 7d 22 20 test "${proj}"
1150: 3d 20 22 63 6f 6d 6d 6f 6e 22 3b 20 74 68 65 6e = "common"; then
1160: 0a 09 09 09 63 6f 6e 74 69 6e 75 65 0a 09 09 66 ....continue...f
1170: 69 0a 0a 09 09 70 72 6f 6a 6c 69 62 64 69 72 3d i....projlibdir=
1180: 22 2e 2e 2f 2e 2e 2f 2e 2e 2f 24 7b 70 72 6f 6a "../../../${proj
1190: 7d 2f 69 6e 73 74 22 0a 0a 09 09 69 66 20 74 65 }/inst"....if te
11a0: 73 74 20 2d 64 20 22 24 7b 70 72 6f 6a 6c 69 62 st -d "${projlib
11b0: 64 69 72 7d 22 3b 20 74 68 65 6e 0a 09 09 09 74 dir}"; then....t
11c0: 72 75 65 0a 09 09 65 6c 73 65 0a 09 09 09 63 6f rue...else....co
11d0: 6e 74 69 6e 75 65 0a 09 09 66 69 0a 0a 09 09 41 ntinue...fi....A
11e0: 43 5f 4d 53 47 5f 43 48 45 43 4b 49 4e 47 28 5b C_MSG_CHECKING([
11f0: 66 6f 72 20 6c 69 62 72 61 72 69 65 73 20 72 65 for libraries re
1200: 71 75 69 72 65 64 20 66 6f 72 20 24 7b 70 72 6f quired for ${pro
1210: 6a 7d 5d 29 0a 0a 09 09 70 72 6f 6a 6c 69 62 66 j}])....projlibf
1220: 69 6c 65 73 3d 22 60 66 69 6e 64 20 22 24 7b 70 iles="`find "${p
1230: 72 6f 6a 6c 69 62 64 69 72 7d 22 20 2d 6e 61 6d rojlibdir}" -nam
1240: 65 20 27 2a 2e 61 27 20 32 3e 2f 64 65 76 2f 6e e '*.a' 2>/dev/n
1250: 75 6c 6c 20 7c 20 73 6f 72 74 60 22 0a 09 09 70 ull | sort`"...p
1260: 72 6f 6a 65 78 63 6c 75 64 65 66 69 6c 65 3d 22 rojexcludefile="
1270: 24 7b 70 72 6f 6a 6c 69 62 64 69 72 7d 2f 6b 69 ${projlibdir}/ki
1280: 74 63 72 65 61 74 6f 72 2d 6e 6f 6c 69 62 73 22 tcreator-nolibs"
1290: 0a 09 09 69 66 20 74 65 73 74 20 2d 65 20 22 24 ...if test -e "$
12a0: 7b 70 72 6f 6a 65 78 63 6c 75 64 65 66 69 6c 65 {projexcludefile
12b0: 7d 22 3b 20 74 68 65 6e 0a 09 09 09 70 72 6f 6a }"; then....proj
12c0: 65 78 63 6c 75 64 65 3d 22 60 63 61 74 20 22 24 exclude="`cat "$
12d0: 70 72 6f 6a 65 78 63 6c 75 64 65 66 69 6c 65 22 projexcludefile"
12e0: 60 22 0a 09 09 09 70 72 6f 6a 6c 69 62 66 69 6c `"....projlibfil
12f0: 65 73 3d 22 60 65 63 68 6f 20 22 24 70 72 6f 6a es="`echo "$proj
1300: 6c 69 62 66 69 6c 65 73 22 20 7c 20 65 67 72 65 libfiles" | egre
1310: 70 20 2d 76 20 22 24 70 72 6f 6a 65 78 63 6c 75 p -v "$projexclu
1320: 64 65 22 60 22 0a 09 09 66 69 0a 0a 09 09 70 72 de"`"...fi....pr
1330: 6f 6a 6c 69 62 66 69 6c 65 73 6e 6f 73 74 75 62 ojlibfilesnostub
1340: 3d 22 60 65 63 68 6f 20 22 24 70 72 6f 6a 6c 69 ="`echo "$projli
1350: 62 66 69 6c 65 73 22 20 7c 20 67 72 65 70 20 2d bfiles" | grep -
1360: 76 20 27 73 74 75 62 27 20 7c 20 74 72 20 22 5c v 'stub' | tr "\
1370: 6e 22 20 27 20 27 60 22 0a 09 09 70 72 6f 6a 6c n" ' '`"...projl
1380: 69 62 66 69 6c 65 73 3d 22 60 65 63 68 6f 20 22 ibfiles="`echo "
1390: 24 70 72 6f 6a 6c 69 62 66 69 6c 65 73 22 20 7c $projlibfiles" |
13a0: 20 74 72 20 22 5c 6e 22 20 27 20 27 60 22 0a 09 tr "\n" ' '`"..
13b0: 09 70 72 6f 6a 6c 69 62 65 78 74 72 61 3d 22 22 .projlibextra=""
13c0: 0a 0a 09 09 69 66 20 74 65 73 74 20 22 24 70 72 ....if test "$pr
13d0: 6f 6a 6c 69 62 66 69 6c 65 73 6e 6f 73 74 75 62 ojlibfilesnostub
13e0: 22 20 3d 20 27 20 27 3b 20 74 68 65 6e 0a 09 09 " = ' '; then...
13f0: 09 70 72 6f 6a 6c 69 62 66 69 6c 65 73 6e 6f 73 .projlibfilesnos
1400: 74 75 62 3d 27 27 0a 09 09 66 69 0a 0a 09 09 69 tub=''...fi....i
1410: 66 20 74 65 73 74 20 22 24 70 72 6f 6a 6c 69 62 f test "$projlib
1420: 66 69 6c 65 73 22 20 3d 20 27 20 27 3b 20 74 68 files" = ' '; th
1430: 65 6e 0a 09 09 09 70 72 6f 6a 6c 69 62 66 69 6c en....projlibfil
1440: 65 73 3d 27 27 0a 09 09 66 69 0a 0a 09 09 66 6f es=''...fi....fo
1450: 72 20 6c 69 62 66 69 6c 65 20 69 6e 20 24 7b 70 r libfile in ${p
1460: 72 6f 6a 6c 69 62 66 69 6c 65 73 6e 6f 73 74 75 rojlibfilesnostu
1470: 62 7d 3b 20 64 6f 0a 09 09 09 69 66 20 74 65 73 b}; do....if tes
1480: 74 20 2d 66 20 22 24 7b 6c 69 62 66 69 6c 65 7d t -f "${libfile}
1490: 2e 6c 69 6e 6b 61 64 64 22 3b 20 74 68 65 6e 0a .linkadd"; then.
14a0: 09 09 09 09 70 72 6f 6a 6c 69 62 65 78 74 72 61 ....projlibextra
14b0: 3d 22 60 63 61 74 20 22 24 7b 6c 69 62 66 69 6c ="`cat "${libfil
14c0: 65 7d 2e 6c 69 6e 6b 61 64 64 22 60 22 0a 09 09 e}.linkadd"`"...
14d0: 09 66 69 0a 09 09 64 6f 6e 65 0a 0a 09 09 41 43 .fi...done....AC
14e0: 5f 4d 53 47 5f 52 45 53 55 4c 54 28 5b 24 7b 70 _MSG_RESULT([${p
14f0: 72 6f 6a 6c 69 62 66 69 6c 65 73 6e 6f 73 74 75 rojlibfilesnostu
1500: 62 7d 20 24 7b 70 72 6f 6a 6c 69 62 65 78 74 72 b} ${projlibextr
1510: 61 7d 5d 29 0a 0a 09 09 68 69 64 65 5f 73 79 6d a}])....hide_sym
1520: 62 6f 6c 73 3d 22 31 22 0a 0a 09 09 69 66 20 74 bols="1"....if t
1530: 65 73 74 20 22 24 7b 70 72 6f 6a 7d 22 20 3d 20 est "${proj}" =
1540: 22 74 63 6c 22 3b 20 74 68 65 6e 0a 09 09 09 44 "tcl"; then....D
1550: 43 5f 54 45 53 54 5f 57 48 4f 4c 45 5f 41 52 43 C_TEST_WHOLE_ARC
1560: 48 49 56 45 5f 53 48 41 52 45 44 5f 4c 49 42 28 HIVE_SHARED_LIB(
1570: 5b 24 41 52 43 48 53 20 24 70 72 6f 6a 6c 69 62 [$ARCHS $projlib
1580: 66 69 6c 65 73 6e 6f 73 74 75 62 5d 2c 20 5b 0a filesnostub], [.
1590: 09 09 09 09 70 72 6f 6a 6c 69 62 66 69 6c 65 73 ....projlibfiles
15a0: 3d 22 24 7b 70 72 6f 6a 6c 69 62 66 69 6c 65 73 ="${projlibfiles
15b0: 6e 6f 73 74 75 62 7d 22 0a 09 09 09 5d 2c 20 5b nostub}"....], [
15c0: 0a 09 09 09 09 44 43 5f 54 45 53 54 5f 57 48 4f .....DC_TEST_WHO
15d0: 4c 45 5f 41 52 43 48 49 56 45 5f 53 48 41 52 45 LE_ARCHIVE_SHARE
15e0: 44 5f 4c 49 42 28 5b 24 41 52 43 48 53 20 24 70 D_LIB([$ARCHS $p
15f0: 72 6f 6a 6c 69 62 66 69 6c 65 73 5d 2c 20 5b 0a rojlibfiles], [.
1600: 09 09 09 09 09 70 72 6f 6a 6c 69 62 66 69 6c 65 .....projlibfile
1610: 73 3d 22 24 7b 70 72 6f 6a 6c 69 62 66 69 6c 65 s="${projlibfile
1620: 73 7d 22 0a 09 09 09 09 5d 29 0a 09 09 09 5d 29 s}".....])....])
1630: 0a 0a 09 09 09 68 69 64 65 5f 73 79 6d 62 6f 6c .....hide_symbol
1640: 73 3d 22 30 22 0a 09 09 09 73 75 62 70 72 6f 6a s="0"....subproj
1650: 73 3d 22 60 65 63 68 6f 20 22 20 24 70 72 6f 6a s="`echo " $proj
1660: 6c 69 62 66 69 6c 65 73 6e 6f 73 74 75 62 20 22 libfilesnostub "
1670: 20 7c 20 73 65 64 20 27 73 40 20 5b 5b 5e 20 5d | sed 's@ [[^ ]
1680: 5d 2a 2f 40 20 40 67 3b 73 40 20 6c 69 62 40 20 ]*/@ @g;s@ lib@
1690: 40 67 3b 73 40 5b 5b 30 2d 39 5c 2e 5d 5d 2a 5c @g;s@[[0-9\.]]*\
16a0: 2e 61 40 20 40 67 3b 73 40 20 74 64 62 63 5b 5b .a@ @g;s@ tdbc[[
16b0: 5e 20 5d 5d 2a 40 20 40 67 3b 73 40 20 73 71 6c ^ ]]*@ @g;s@ sql
16c0: 69 74 65 20 40 20 73 71 6c 69 74 65 33 20 40 3b ite @ sqlite3 @;
16d0: 73 40 20 74 63 6c 64 64 65 5b 5b 30 2d 39 5d 5d s@ tcldde[[0-9]]
16e0: 5b 5b 30 2d 39 5d 5d 2a 73 2a 67 2a 20 40 20 40 [[0-9]]*s*g* @ @
16f0: 67 3b 73 40 20 74 63 6c 72 65 67 5b 5b 30 2d 39 g;s@ tclreg[[0-9
1700: 5d 5d 5b 5b 30 2d 39 5d 5d 2a 73 2a 67 2a 20 40 ]][[0-9]]*s*g* @
1710: 20 40 67 3b 73 40 20 74 63 6c 5b 5b 30 2d 39 5d @g;s@ tcl[[0-9]
1720: 5d 2a 73 2a 67 2a 20 40 20 40 67 3b 73 40 5e 20 ]*s*g* @ @g;s@^
1730: 2a 40 40 3b 73 40 20 2a 5b 24 5d 40 40 27 60 22 *@@;s@ *[$]@@'`"
1740: 0a 09 09 66 69 0a 0a 09 09 69 66 20 74 65 73 74 ...fi....if test
1750: 20 22 24 7b 70 72 6f 6a 7d 22 20 3d 20 22 6d 6b "${proj}" = "mk
1760: 34 74 63 6c 22 3b 20 74 68 65 6e 0a 09 09 09 69 4tcl"; then....i
1770: 66 20 74 65 73 74 20 2d 6e 20 22 24 7b 70 72 6f f test -n "${pro
1780: 6a 6c 69 62 66 69 6c 65 73 7d 22 3b 20 74 68 65 jlibfiles}"; the
1790: 6e 0a 09 09 09 09 41 43 5f 44 45 46 49 4e 45 28 n.....AC_DEFINE(
17a0: 4b 49 54 5f 49 4e 43 4c 55 44 45 53 5f 4d 4b 34 KIT_INCLUDES_MK4
17b0: 54 43 4c 2c 20 5b 31 5d 2c 20 5b 53 70 65 63 69 TCL, [1], [Speci
17c0: 66 79 20 74 68 69 73 20 69 66 20 79 6f 75 20 6c fy this if you l
17d0: 69 6e 6b 20 61 67 61 69 6e 73 74 20 6d 6b 74 34 ink against mkt4
17e0: 74 63 6c 5d 29 0a 0a 09 09 09 09 6b 63 5f 63 76 tcl])......kc_cv
17f0: 5f 66 65 61 74 75 72 65 5f 6b 69 74 5f 69 6e 63 _feature_kit_inc
1800: 6c 75 64 65 73 5f 6d 6b 34 74 63 6c 3d 27 31 27 ludes_mk4tcl='1'
1810: 0a 0a 09 09 09 09 44 43 5f 44 4f 5f 53 54 41 54 ......DC_DO_STAT
1820: 49 43 5f 4c 49 4e 4b 5f 4c 49 42 43 58 58 0a 09 IC_LINK_LIBCXX..
1830: 09 09 66 69 0a 0a 09 09 09 73 75 62 70 72 6f 6a ..fi.....subproj
1840: 73 3d 22 22 0a 09 09 66 69 0a 0a 09 09 69 66 20 s=""...fi....if
1850: 74 65 73 74 20 22 24 7b 70 72 6f 6a 7d 22 20 3d test "${proj}" =
1860: 20 22 74 6b 22 3b 20 74 68 65 6e 0a 09 09 09 69 "tk"; then....i
1870: 66 20 74 65 73 74 20 22 24 7b 70 72 6f 6a 6c 69 f test "${projli
1880: 62 66 69 6c 65 73 6e 6f 73 74 75 62 7d 22 20 21 bfilesnostub}" !
1890: 3d 20 22 22 3b 20 74 68 65 6e 0a 09 09 09 09 44 = ""; then.....D
18a0: 43 5f 44 4f 5f 54 4b 0a 09 09 09 09 41 43 5f 44 C_DO_TK.....AC_D
18b0: 45 46 49 4e 45 28 4b 49 54 5f 49 4e 43 4c 55 44 EFINE(KIT_INCLUD
18c0: 45 53 5f 54 4b 2c 20 5b 31 5d 2c 20 5b 53 70 65 ES_TK, [1], [Spe
18d0: 63 69 66 79 20 74 68 69 73 20 69 66 20 77 65 20 cify this if we
18e0: 6c 69 6e 6b 20 73 74 61 74 69 63 61 6c 6c 79 20 link statically
18f0: 74 6f 20 54 6b 5d 29 0a 09 09 09 09 69 66 20 74 to Tk]).....if t
1900: 65 73 74 20 2d 6e 20 22 24 7b 54 4b 5f 56 45 52 est -n "${TK_VER
1910: 53 49 4f 4e 7d 22 3b 20 74 68 65 6e 0a 09 09 09 SION}"; then....
1920: 09 09 41 43 5f 44 45 46 49 4e 45 5f 55 4e 51 55 ..AC_DEFINE_UNQU
1930: 4f 54 45 44 28 4b 49 54 5f 54 4b 5f 56 45 52 53 OTED(KIT_TK_VERS
1940: 49 4f 4e 2c 20 22 24 7b 54 4b 5f 56 45 52 53 49 ION, "${TK_VERSI
1950: 4f 4e 7d 24 7b 54 4b 5f 50 41 54 43 48 5f 4c 45 ON}${TK_PATCH_LE
1960: 56 45 4c 7d 22 2c 20 5b 53 70 65 63 69 66 79 20 VEL}", [Specify
1970: 74 68 65 20 76 65 72 73 69 6f 6e 20 6f 66 20 54 the version of T
1980: 6b 5d 29 0a 09 09 09 09 66 69 0a 0a 09 09 09 09 k]).....fi......
1990: 69 66 20 74 65 73 74 20 22 24 68 6f 73 74 5f 6f if test "$host_o
19a0: 73 22 20 3d 20 22 6d 69 6e 67 77 33 32 6d 73 76 s" = "mingw32msv
19b0: 63 22 20 2d 6f 20 22 24 68 6f 73 74 5f 6f 73 22 c" -o "$host_os"
19c0: 20 3d 20 22 6d 69 6e 67 77 33 32 22 3b 20 74 68 = "mingw32"; th
19d0: 65 6e 0a 09 09 09 09 09 41 43 5f 44 45 46 49 4e en......AC_DEFIN
19e0: 45 28 4b 49 54 53 48 5f 4e 45 45 44 5f 57 49 4e E(KITSH_NEED_WIN
19f0: 4d 41 49 4e 2c 20 5b 31 5d 2c 20 5b 44 65 66 69 MAIN, [1], [Defi
1a00: 6e 65 20 69 66 20 79 6f 75 20 6e 65 65 64 20 57 ne if you need W
1a10: 69 6e 4d 61 69 6e 20 28 57 69 6e 64 6f 77 73 29 inMain (Windows)
1a20: 5d 29 0a 09 09 09 09 09 43 46 4c 41 47 53 3d 22 ])......CFLAGS="
1a30: 24 7b 43 46 4c 41 47 53 7d 20 2d 6d 77 69 6e 64 ${CFLAGS} -mwind
1a40: 6f 77 73 22 0a 09 09 09 09 66 69 0a 0a 09 09 09 ows".....fi.....
1a50: 09 44 43 5f 54 45 53 54 5f 57 48 4f 4c 45 5f 41 .DC_TEST_WHOLE_A
1a60: 52 43 48 49 56 45 5f 53 48 41 52 45 44 5f 4c 49 RCHIVE_SHARED_LI
1a70: 42 28 5b 24 41 52 43 48 53 20 24 70 72 6f 6a 6c B([$ARCHS $projl
1a80: 69 62 66 69 6c 65 73 6e 6f 73 74 75 62 5d 2c 20 ibfilesnostub],
1a90: 5b 0a 09 09 09 09 09 70 72 6f 6a 6c 69 62 66 69 [......projlibfi
1aa0: 6c 65 73 3d 22 24 7b 70 72 6f 6a 6c 69 62 66 69 les="${projlibfi
1ab0: 6c 65 73 6e 6f 73 74 75 62 7d 22 0a 09 09 09 09 lesnostub}".....
1ac0: 5d 2c 20 5b 0a 09 09 09 09 09 44 43 5f 54 45 53 ], [......DC_TES
1ad0: 54 5f 57 48 4f 4c 45 5f 41 52 43 48 49 56 45 5f T_WHOLE_ARCHIVE_
1ae0: 53 48 41 52 45 44 5f 4c 49 42 28 5b 24 41 52 43 SHARED_LIB([$ARC
1af0: 48 53 20 24 70 72 6f 6a 6c 69 62 66 69 6c 65 73 HS $projlibfiles
1b00: 5d 2c 20 5b 0a 09 09 09 09 09 09 70 72 6f 6a 6c ], [.......projl
1b10: 69 62 66 69 6c 65 73 3d 22 24 7b 70 72 6f 6a 6c ibfiles="${projl
1b20: 69 62 66 69 6c 65 73 7d 22 0a 09 09 09 09 09 5d ibfiles}"......]
1b30: 29 0a 09 09 09 09 5d 29 0a 0a 09 09 09 09 68 69 ).....])......hi
1b40: 64 65 5f 73 79 6d 62 6f 6c 73 3d 22 30 22 0a 09 de_symbols="0"..
1b50: 09 09 66 69 0a 0a 09 09 09 73 75 62 70 72 6f 6a ..fi.....subproj
1b60: 73 3d 22 22 0a 09 09 66 69 0a 0a 09 09 69 66 20 s=""...fi....if
1b70: 74 65 73 74 20 22 24 7b 70 72 6f 6a 7d 22 20 3d test "${proj}" =
1b80: 20 22 74 63 6c 76 66 73 22 3b 20 74 68 65 6e 0a "tclvfs"; then.
1b90: 09 09 09 73 75 62 70 72 6f 6a 73 3d 22 22 0a 09 ...subprojs=""..
1ba0: 09 66 69 0a 0a 09 09 69 66 20 74 65 73 74 20 22 .fi....if test "
1bb0: 24 7b 68 69 64 65 5f 73 79 6d 62 6f 6c 73 7d 22 ${hide_symbols}"
1bc0: 20 3d 20 22 31 22 3b 20 74 68 65 6e 0a 09 09 09 = "1"; then....
1bd0: 53 54 52 49 50 4c 49 42 53 3d 22 24 7b 53 54 52 STRIPLIBS="${STR
1be0: 49 50 4c 49 42 53 7d 20 24 7b 70 72 6f 6a 6c 69 IPLIBS} ${projli
1bf0: 62 66 69 6c 65 73 7d 22 0a 09 09 66 69 0a 0a 09 bfiles}"...fi...
1c00: 09 64 6e 6c 20 44 6f 20 6e 6f 74 20 65 78 70 6c .dnl Do not expl
1c10: 69 63 69 74 6c 79 20 6c 69 6e 6b 20 74 6f 20 5a icitly link to Z
1c20: 6c 69 62 2c 20 74 68 61 74 20 77 69 6c 6c 20 68 lib, that will h
1c30: 61 70 70 65 6e 20 65 6c 73 65 77 68 65 72 65 0a appen elsewhere.
1c40: 09 09 69 66 20 74 65 73 74 20 22 24 7b 70 72 6f ..if test "${pro
1c50: 6a 7d 22 20 3d 20 22 7a 6c 69 62 22 3b 20 74 68 j}" = "zlib"; th
1c60: 65 6e 0a 09 09 09 63 6f 6e 74 69 6e 75 65 0a 09 en....continue..
1c70: 09 66 69 0a 0a 09 09 69 66 20 74 65 73 74 20 2d .fi....if test -
1c80: 6e 20 22 24 7b 73 75 62 70 72 6f 6a 73 7d 22 3b n "${subprojs}";
1c90: 20 74 68 65 6e 0a 09 09 09 69 66 20 74 65 73 74 then....if test
1ca0: 20 2d 6e 20 22 24 7b 70 72 6f 6a 6c 69 62 66 69 -n "${projlibfi
1cb0: 6c 65 73 6e 6f 73 74 75 62 7d 22 3b 20 74 68 65 lesnostub}"; the
1cc0: 6e 0a 09 09 09 09 66 6f 72 20 73 75 62 70 72 6f n.....for subpro
1cd0: 6a 20 69 6e 20 24 73 75 62 70 72 6f 6a 73 3b 20 j in $subprojs;
1ce0: 64 6f 0a 09 09 09 09 09 73 75 62 70 72 6f 6a 75 do......subproju
1cf0: 63 61 73 65 3d 22 60 65 63 68 6f 20 24 7b 73 75 case="`echo ${su
1d00: 62 70 72 6f 6a 7d 20 7c 20 64 64 20 63 6f 6e 76 bproj} | dd conv
1d10: 3d 75 63 61 73 65 20 32 3e 2f 64 65 76 2f 6e 75 =ucase 2>/dev/nu
1d20: 6c 6c 60 22 0a 09 09 09 09 09 73 75 62 70 72 6f ll`"......subpro
1d30: 6a 74 63 61 73 65 3d 22 60 65 63 68 6f 20 24 7b jtcase="`echo ${
1d40: 73 75 62 70 72 6f 6a 75 63 61 73 65 7d 20 7c 20 subprojucase} |
1d50: 63 75 74 20 2d 63 20 31 60 60 65 63 68 6f 20 24 cut -c 1``echo $
1d60: 7b 73 75 62 70 72 6f 6a 7d 20 7c 20 63 75 74 20 {subproj} | cut
1d70: 2d 63 20 32 2d 60 22 0a 09 09 09 09 09 6c 69 62 -c 2-`"......lib
1d80: 5f 69 6e 69 74 5f 66 75 6e 63 3d 22 24 7b 73 75 _init_func="${su
1d90: 62 70 72 6f 6a 74 63 61 73 65 7d 5f 49 6e 69 74 bprojtcase}_Init
1da0: 22 0a 0a 09 09 09 09 09 65 63 68 6f 20 22 23 64 ".......echo "#d
1db0: 65 66 69 6e 65 20 4b 49 54 5f 49 4e 43 4c 55 44 efine KIT_INCLUD
1dc0: 45 53 5f 24 7b 73 75 62 70 72 6f 6a 75 63 61 73 ES_${subprojucas
1dd0: 65 7d 22 20 3e 3e 20 6b 69 74 49 6e 69 74 2d 6c e}" >> kitInit-l
1de0: 69 62 73 2e 68 0a 09 09 09 09 09 65 63 68 6f 20 ibs.h......echo
1df0: 22 54 63 6c 5f 41 70 70 49 6e 69 74 50 72 6f 63 "Tcl_AppInitProc
1e00: 20 24 7b 6c 69 62 5f 69 6e 69 74 5f 66 75 6e 63 ${lib_init_func
1e10: 7d 3b 22 20 3e 3e 20 6b 69 74 49 6e 69 74 2d 6c };" >> kitInit-l
1e20: 69 62 73 2e 68 0a 0a 09 09 09 09 09 6c 69 62 73 ibs.h.......libs
1e30: 5f 69 6e 69 74 5f 66 75 6e 63 73 3d 22 24 7b 6c _init_funcs="${l
1e40: 69 62 73 5f 69 6e 69 74 5f 66 75 6e 63 73 7d 20 ibs_init_funcs}
1e50: 24 7b 6c 69 62 5f 69 6e 69 74 5f 66 75 6e 63 7d ${lib_init_func}
1e60: 22 0a 09 09 09 09 64 6f 6e 65 0a 09 09 09 66 69 ".....done....fi
1e70: 0a 09 09 66 69 0a 0a 09 09 41 52 43 48 53 3d 22 ...fi....ARCHS="
1e80: 24 7b 41 52 43 48 53 7d 20 24 7b 70 72 6f 6a 6c ${ARCHS} ${projl
1e90: 69 62 66 69 6c 65 73 7d 22 0a 09 09 4c 49 42 53 ibfiles}"...LIBS
1ea0: 3d 22 24 7b 4c 49 42 53 7d 20 24 7b 70 72 6f 6a ="${LIBS} ${proj
1eb0: 6c 69 62 65 78 74 72 61 7d 22 0a 09 64 6f 6e 65 libextra}"..done
1ec0: 0a 0a 09 65 63 68 6f 20 27 27 20 3e 3e 20 6b 69 ...echo '' >> ki
1ed0: 74 49 6e 69 74 2d 6c 69 62 73 2e 68 0a 09 65 63 tInit-libs.h..ec
1ee0: 68 6f 20 27 73 74 61 74 69 63 20 76 6f 69 64 20 ho 'static void
1ef0: 5f 54 63 6c 6b 69 74 5f 47 65 6e 65 72 69 63 4c _Tclkit_GenericL
1f00: 69 62 5f 49 6e 69 74 28 76 6f 69 64 29 20 7b 27 ib_Init(void) {'
1f10: 20 3e 3e 20 6b 69 74 49 6e 69 74 2d 6c 69 62 73 >> kitInit-libs
1f20: 2e 68 0a 09 66 6f 72 20 6c 69 62 5f 69 6e 69 74 .h..for lib_init
1f30: 5f 66 75 6e 63 20 69 6e 20 24 7b 6c 69 62 73 5f _func in ${libs_
1f40: 69 6e 69 74 5f 66 75 6e 63 73 7d 3b 20 64 6f 0a init_funcs}; do.
1f50: 09 09 70 72 6f 6a 3d 22 60 65 63 68 6f 20 24 7b ..proj="`echo ${
1f60: 6c 69 62 5f 69 6e 69 74 5f 66 75 6e 63 7d 20 7c lib_init_func} |
1f70: 20 73 65 64 20 27 73 40 5f 49 6e 69 74 24 24 40 sed 's@_Init$$@
1f80: 40 40 27 20 7c 20 64 64 20 63 6f 6e 76 3d 6c 63 @@' | dd conv=lc
1f90: 61 73 65 20 32 3e 2f 64 65 76 2f 6e 75 6c 6c 60 ase 2>/dev/null`
1fa0: 22 0a 09 09 65 63 68 6f 20 22 09 54 63 6c 5f 53 "...echo ".Tcl_S
1fb0: 74 61 74 69 63 50 61 63 6b 61 67 65 28 30 2c 20 taticPackage(0,
1fc0: 5c 22 24 7b 70 72 6f 6a 7d 5c 22 2c 20 24 7b 6c \"${proj}\", ${l
1fd0: 69 62 5f 69 6e 69 74 5f 66 75 6e 63 7d 2c 20 4e ib_init_func}, N
1fe0: 55 4c 4c 29 3b 22 20 3e 3e 20 6b 69 74 49 6e 69 ULL);" >> kitIni
1ff0: 74 2d 6c 69 62 73 2e 68 0a 09 64 6f 6e 65 0a 09 t-libs.h..done..
2000: 65 63 68 6f 20 27 09 72 65 74 75 72 6e 3b 27 20 echo '.return;'
2010: 3e 3e 20 6b 69 74 49 6e 69 74 2d 6c 69 62 73 2e >> kitInit-libs.
2020: 68 0a 09 65 63 68 6f 20 27 7d 27 20 3e 3e 20 6b h..echo '}' >> k
2030: 69 74 49 6e 69 74 2d 6c 69 62 73 2e 68 0a 0a 09 itInit-libs.h...
2040: 41 43 5f 53 55 42 53 54 28 41 52 43 48 53 29 0a AC_SUBST(ARCHS).
2050: 09 41 43 5f 53 55 42 53 54 28 53 54 52 49 50 4c .AC_SUBST(STRIPL
2060: 49 42 53 29 0a 09 41 43 5f 53 55 42 53 54 28 4c IBS)..AC_SUBST(L
2070: 49 42 53 29 0a 5d 29 0a 0a 41 43 5f 44 45 46 55 IBS).])..AC_DEFU
2080: 4e 28 44 43 5f 53 45 54 55 50 5f 54 43 4c 5f 50 N(DC_SETUP_TCL_P
2090: 4c 41 54 5f 44 45 46 53 2c 20 5b 0a 09 41 43 5f LAT_DEFS, [..AC_
20a0: 43 41 4e 4f 4e 49 43 41 4c 5f 42 55 49 4c 44 0a CANONICAL_BUILD.
20b0: 09 41 43 5f 43 41 4e 4f 4e 49 43 41 4c 5f 48 4f .AC_CANONICAL_HO
20c0: 53 54 0a 20 20 0a 09 41 43 5f 4d 53 47 5f 43 48 ST. ..AC_MSG_CH
20d0: 45 43 4b 49 4e 47 28 68 6f 73 74 20 6f 70 65 72 ECKING(host oper
20e0: 61 74 69 6e 67 20 73 79 73 74 65 6d 29 0a 09 41 ating system)..A
20f0: 43 5f 4d 53 47 5f 52 45 53 55 4c 54 28 24 68 6f C_MSG_RESULT($ho
2100: 73 74 5f 6f 73 29 0a 20 20 0a 09 63 61 73 65 20 st_os). ..case
2110: 24 68 6f 73 74 5f 6f 73 20 69 6e 0a 09 09 6d 69 $host_os in...mi
2120: 6e 67 77 33 32 2a 29 0a 09 09 09 43 46 4c 41 47 ngw32*)....CFLAG
2130: 53 3d 22 24 7b 43 46 4c 41 47 53 7d 20 2d 6d 6d S="${CFLAGS} -mm
2140: 73 2d 62 69 74 66 69 65 6c 64 73 22 0a 09 09 09 s-bitfields"....
2150: 57 49 53 48 5f 43 46 4c 41 47 53 3d 22 2d 6d 77 WISH_CFLAGS="-mw
2160: 69 6e 64 6f 77 73 22 0a 0a 09 09 09 64 6e 6c 20 indows".....dnl
2170: 49 66 20 77 65 20 61 72 65 20 62 75 69 6c 64 69 If we are buildi
2180: 6e 67 20 66 6f 72 20 57 69 6e 33 32 2c 20 77 65 ng for Win32, we
2190: 20 6e 65 65 64 20 74 6f 20 64 65 66 69 6e 65 20 need to define
21a0: 22 42 55 49 4c 44 5f 74 63 6c 22 20 73 6f 20 74 "BUILD_tcl" so t
21b0: 68 61 74 0a 09 09 09 64 6e 6c 20 54 43 4c 5f 53 hat....dnl TCL_S
21c0: 54 4f 52 41 47 45 5f 43 4c 41 53 53 20 67 65 74 TORAGE_CLASS get
21d0: 73 20 64 65 66 69 6e 65 64 20 61 73 20 44 4c 4c s defined as DLL
21e0: 45 58 50 4f 52 54 2c 20 74 6f 20 6d 61 6b 65 20 EXPORT, to make
21f0: 73 74 61 74 69 63 20 6c 69 6e 6b 69 6e 67 0a 09 static linking..
2200: 09 09 64 6e 6c 20 77 6f 72 6b 0a 09 09 09 41 43 ..dnl work....AC
2210: 5f 44 45 46 49 4e 45 28 42 55 49 4c 44 5f 74 63 _DEFINE(BUILD_tc
2220: 6c 2c 20 5b 31 5d 2c 20 5b 44 65 66 69 6e 65 20 l, [1], [Define
2230: 69 66 20 79 6f 75 20 6e 65 65 64 20 74 6f 20 70 if you need to p
2240: 72 65 74 65 6e 64 20 74 6f 20 62 65 20 62 75 69 retend to be bui
2250: 6c 64 69 6e 67 20 54 63 6c 20 28 57 69 6e 64 6f lding Tcl (Windo
2260: 77 73 29 5d 29 0a 09 09 09 41 43 5f 44 45 46 49 ws)])....AC_DEFI
2270: 4e 45 28 42 55 49 4c 44 5f 74 6b 2c 20 5b 31 5d NE(BUILD_tk, [1]
2280: 2c 20 5b 44 65 66 69 6e 65 20 69 66 20 79 6f 75 , [Define if you
2290: 20 6e 65 65 64 20 74 6f 20 70 72 65 74 65 6e 64 need to pretend
22a0: 20 74 6f 20 62 65 20 62 75 69 6c 64 69 6e 67 20 to be building
22b0: 54 6b 20 28 57 69 6e 64 6f 77 73 29 5d 29 0a 09 Tk (Windows)])..
22c0: 09 09 3b 3b 0a 09 09 63 79 67 77 69 6e 2a 29 0a ..;;...cygwin*).
22d0: 09 09 09 43 46 4c 41 47 53 3d 22 24 7b 43 46 4c ...CFLAGS="${CFL
22e0: 41 47 53 7d 20 2d 6d 6d 73 2d 62 69 74 66 69 65 AGS} -mms-bitfie
22f0: 6c 64 73 22 0a 09 09 09 57 49 53 48 5f 43 46 4c lds"....WISH_CFL
2300: 41 47 53 3d 22 2d 6d 77 69 6e 64 6f 77 73 22 0a AGS="-mwindows".
2310: 09 09 09 3b 3b 0a 09 65 73 61 63 0a 0a 09 41 43 ...;;..esac...AC
2320: 5f 53 55 42 53 54 28 57 49 53 48 5f 43 46 4c 41 _SUBST(WISH_CFLA
2330: 47 53 29 0a 5d 29 0a 0a 41 43 5f 44 45 46 55 4e GS).])..AC_DEFUN
2340: 28 44 43 5f 53 54 41 54 49 43 5f 4c 49 42 47 43 (DC_STATIC_LIBGC
2350: 43 2c 20 5b 0a 09 41 43 5f 4d 53 47 5f 43 48 45 C, [..AC_MSG_CHE
2360: 43 4b 49 4e 47 28 5b 68 6f 77 20 74 6f 20 6c 69 CKING([how to li
2370: 6e 6b 20 73 74 61 74 69 63 61 6c 6c 79 20 61 67 nk statically ag
2380: 61 69 6e 73 74 20 6c 69 62 67 63 63 5d 29 0a 0a ainst libgcc])..
2390: 09 53 41 56 45 4c 44 46 4c 41 47 53 3d 22 24 7b .SAVELDFLAGS="${
23a0: 4c 44 46 4c 41 47 53 7d 22 0a 09 73 74 61 74 69 LDFLAGS}"..stati
23b0: 63 6c 69 62 67 63 63 3d 22 22 0a 09 66 6f 72 20 clibgcc=""..for
23c0: 74 72 79 6c 69 6e 6b 20 69 6e 20 22 2d 73 74 61 trylink in "-sta
23d0: 74 69 63 2d 6c 69 62 67 63 63 22 3b 20 64 6f 0a tic-libgcc"; do.
23e0: 09 09 4c 44 46 4c 41 47 53 3d 22 24 7b 53 41 56 ..LDFLAGS="${SAV
23f0: 45 4c 44 46 4c 41 47 53 7d 20 24 7b 74 72 79 6c ELDFLAGS} ${tryl
2400: 69 6e 6b 7d 22 0a 09 09 41 43 5f 4c 49 4e 4b 5f ink}"...AC_LINK_
2410: 49 46 45 4c 53 45 28 41 43 5f 4c 41 4e 47 5f 50 IFELSE(AC_LANG_P
2420: 52 4f 47 52 41 4d 28 5b 5d 2c 20 5b 5d 29 2c 20 ROGRAM([], []),
2430: 5b 0a 09 09 09 73 74 61 74 69 63 6c 69 62 67 63 [....staticlibgc
2440: 63 3d 22 24 7b 74 72 79 6c 69 6e 6b 7d 22 0a 0a c="${trylink}"..
2450: 09 09 09 62 72 65 61 6b 0a 09 09 5d 29 0a 09 64 ...break...])..d
2460: 6f 6e 65 0a 09 69 66 20 74 65 73 74 20 2d 6e 20 one..if test -n
2470: 22 24 7b 73 74 61 74 69 63 6c 69 62 67 63 63 7d "${staticlibgcc}
2480: 22 3b 20 74 68 65 6e 0a 09 09 4c 44 46 4c 41 47 "; then...LDFLAG
2490: 53 3d 22 24 7b 53 41 56 45 4c 44 46 4c 41 47 53 S="${SAVELDFLAGS
24a0: 7d 20 24 7b 73 74 61 74 69 63 6c 69 62 67 63 63 } ${staticlibgcc
24b0: 7d 22 0a 09 09 41 43 5f 4d 53 47 5f 52 45 53 55 }"...AC_MSG_RESU
24c0: 4c 54 28 5b 24 7b 73 74 61 74 69 63 6c 69 62 67 LT([${staticlibg
24d0: 63 63 7d 5d 29 0a 09 65 6c 73 65 0a 09 09 4c 44 cc}])..else...LD
24e0: 46 4c 41 47 53 3d 22 24 7b 53 41 56 45 4c 44 46 FLAGS="${SAVELDF
24f0: 4c 41 47 53 7d 22 0a 09 09 41 43 5f 4d 53 47 5f LAGS}"...AC_MSG_
2500: 52 45 53 55 4c 54 28 5b 6e 6f 74 20 6e 65 65 64 RESULT([not need
2510: 65 64 5d 29 0a 09 66 69 0a 0a 09 41 43 5f 53 55 ed])..fi...AC_SU
2520: 42 53 54 28 4c 44 46 4c 41 47 53 29 0a 5d 29 0a BST(LDFLAGS).]).
2530: 0a 41 43 5f 44 45 46 55 4e 28 44 43 5f 43 48 45 .AC_DEFUN(DC_CHE
2540: 43 4b 5f 46 4f 52 5f 41 43 43 45 50 54 41 42 4c CK_FOR_ACCEPTABL
2550: 45 5f 44 4c 41 44 44 52 2c 20 5b 0a 09 41 43 5f E_DLADDR, [..AC_
2560: 43 48 45 43 4b 5f 48 45 41 44 45 52 53 28 64 6c CHECK_HEADERS(dl
2570: 66 63 6e 2e 68 29 0a 09 41 43 5f 43 48 45 43 4b fcn.h)..AC_CHECK
2580: 5f 46 55 4e 43 53 28 64 6c 61 64 64 72 29 0a 0a _FUNCS(dladdr)..
2590: 09 41 43 5f 4d 53 47 5f 43 48 45 43 4b 49 4e 47 .AC_MSG_CHECKING
25a0: 28 5b 66 6f 72 20 61 63 63 65 70 74 61 62 6c 65 ([for acceptable
25b0: 20 64 6c 61 64 64 72 5d 29 0a 0a 09 41 43 5f 4c dladdr])...AC_L
25c0: 49 4e 4b 5f 49 46 45 4c 53 45 28 0a 09 09 41 43 INK_IFELSE(...AC
25d0: 5f 4c 41 4e 47 5f 50 52 4f 47 52 41 4d 28 5b 5b _LANG_PROGRAM([[
25e0: 0a 23 69 66 64 65 66 20 48 41 56 45 5f 44 4c 46 .#ifdef HAVE_DLF
25f0: 43 4e 5f 48 0a 23 69 6e 63 6c 75 64 65 20 3c 64 CN_H.#include <d
2600: 6c 66 63 6e 2e 68 3e 0a 23 65 6e 64 69 66 0a 09 lfcn.h>.#endif..
2610: 09 09 5d 5d 2c 20 5b 5b 0a 63 68 61 72 20 2a 78 ..]], [[.char *x
2620: 3b 0a 44 6c 5f 69 6e 66 6f 20 73 79 6d 69 6e 66 ;.Dl_info syminf
2630: 6f 3b 0a 64 6c 61 64 64 72 28 28 76 6f 69 64 20 o;.dladdr((void
2640: 2a 29 20 30 2c 20 26 73 79 6d 69 6e 66 6f 29 3b *) 0, &syminfo);
2650: 0a 78 20 3d 20 73 79 6d 69 6e 66 6f 2e 64 6c 69 .x = syminfo.dli
2660: 5f 66 6e 61 6d 65 3b 0a 09 09 09 5d 5d 0a 09 09 _fname;....]]...
2670: 29 2c 0a 09 09 5b 0a 09 09 09 41 43 5f 4d 53 47 ),...[....AC_MSG
2680: 5f 52 45 53 55 4c 54 28 5b 66 6f 75 6e 64 5d 29 _RESULT([found])
2690: 0a 09 09 09 41 43 5f 44 45 46 49 4e 45 28 48 41 ....AC_DEFINE(HA
26a0: 56 45 5f 41 43 43 45 50 54 41 42 4c 45 5f 44 4c VE_ACCEPTABLE_DL
26b0: 41 44 44 52 2c 20 5b 31 5d 2c 20 5b 44 65 66 69 ADDR, [1], [Defi
26c0: 6e 65 20 74 6f 20 31 20 69 66 20 79 6f 75 20 68 ne to 1 if you h
26d0: 61 76 65 20 61 6e 20 61 63 63 65 70 74 61 62 6c ave an acceptabl
26e0: 65 20 64 6c 61 64 64 72 20 69 6d 70 6c 65 6d 65 e dladdr impleme
26f0: 6e 74 61 74 69 6f 6e 20 77 69 74 68 20 64 6c 69 ntation with dli
2700: 5f 66 6e 61 6d 65 5d 29 0a 09 09 5d 2c 20 5b 0a _fname])...], [.
2710: 09 09 09 41 43 5f 4d 53 47 5f 52 45 53 55 4c 54 ...AC_MSG_RESULT
2720: 28 5b 6e 6f 74 20 66 6f 75 6e 64 5d 29 0a 09 09 ([not found])...
2730: 5d 0a 09 29 0a 5d 29 0a 0a 64 6e 6c 20 55 73 61 ]..).])..dnl Usa
2740: 67 65 3a 0a 64 6e 6c 20 20 20 20 44 43 5f 54 45 ge:.dnl DC_TE
2750: 53 54 5f 53 48 4f 42 4a 46 4c 41 47 53 28 73 68 ST_SHOBJFLAGS(sh
2760: 6f 62 6a 66 6c 61 67 73 2c 20 73 68 6f 62 6a 6c objflags, shobjl
2770: 64 66 6c 61 67 73 2c 20 61 63 74 69 6f 6e 2d 69 dflags, action-i
2780: 66 2d 6e 6f 74 2d 66 6f 75 6e 64 29 0a 64 6e 6c f-not-found).dnl
2790: 0a 41 43 5f 44 45 46 55 4e 28 44 43 5f 54 45 53 .AC_DEFUN(DC_TES
27a0: 54 5f 53 48 4f 42 4a 46 4c 41 47 53 2c 20 5b 0a T_SHOBJFLAGS, [.
27b0: 20 20 41 43 5f 53 55 42 53 54 28 53 48 4f 42 4a AC_SUBST(SHOBJ
27c0: 46 4c 41 47 53 29 0a 20 20 41 43 5f 53 55 42 53 FLAGS). AC_SUBS
27d0: 54 28 53 48 4f 42 4a 4c 44 46 4c 41 47 53 29 0a T(SHOBJLDFLAGS).
27e0: 0a 20 20 4f 4c 44 5f 4c 44 46 4c 41 47 53 3d 22 . OLD_LDFLAGS="
27f0: 24 4c 44 46 4c 41 47 53 22 0a 20 20 53 48 4f 42 $LDFLAGS". SHOB
2800: 4a 46 4c 41 47 53 3d 22 22 0a 0a 20 20 4c 44 46 JFLAGS="".. LDF
2810: 4c 41 47 53 3d 22 24 4f 4c 44 5f 4c 44 46 4c 41 LAGS="$OLD_LDFLA
2820: 47 53 20 24 31 20 24 32 22 0a 0a 20 20 41 43 5f GS $1 $2".. AC_
2830: 54 52 59 5f 4c 49 4e 4b 28 5b 23 69 6e 63 6c 75 TRY_LINK([#inclu
2840: 64 65 20 3c 73 74 64 69 6f 2e 68 3e 0a 69 6e 74 de <stdio.h>.int
2850: 20 75 6e 72 65 73 74 73 74 28 76 6f 69 64 29 3b unrestst(void);
2860: 5d 2c 20 5b 20 70 72 69 6e 74 66 28 22 6f 6b 61 ], [ printf("oka
2870: 79 5c 6e 22 29 3b 20 75 6e 72 65 73 74 73 74 28 y\n"); unrestst(
2880: 29 3b 20 72 65 74 75 72 6e 28 30 29 3b 20 5d 2c ); return(0); ],
2890: 20 5b 20 53 48 4f 42 4a 46 4c 41 47 53 3d 22 24 [ SHOBJFLAGS="$
28a0: 31 22 3b 20 53 48 4f 42 4a 4c 44 46 4c 41 47 53 1"; SHOBJLDFLAGS
28b0: 3d 22 24 32 22 20 5d 2c 20 5b 0a 20 20 4c 44 46 ="$2" ], [. LDF
28c0: 4c 41 47 53 3d 22 24 4f 4c 44 5f 4c 44 46 4c 41 LAGS="$OLD_LDFLA
28d0: 47 53 22 0a 20 20 24 33 0a 5d 29 0a 0a 20 20 4c GS". $3.]).. L
28e0: 44 46 4c 41 47 53 3d 22 24 4f 4c 44 5f 4c 44 46 DFLAGS="$OLD_LDF
28f0: 4c 41 47 53 22 0a 5d 29 0a 0a 41 43 5f 44 45 46 LAGS".])..AC_DEF
2900: 55 4e 28 44 43 5f 47 45 54 5f 53 48 4f 42 4a 46 UN(DC_GET_SHOBJF
2910: 4c 41 47 53 2c 20 5b 0a 20 20 41 43 5f 53 55 42 LAGS, [. AC_SUB
2920: 53 54 28 53 48 4f 42 4a 46 4c 41 47 53 29 0a 20 ST(SHOBJFLAGS).
2930: 20 41 43 5f 53 55 42 53 54 28 53 48 4f 42 4a 4c AC_SUBST(SHOBJL
2940: 44 46 4c 41 47 53 29 0a 0a 20 20 41 43 5f 4d 53 DFLAGS).. AC_MS
2950: 47 5f 43 48 45 43 4b 49 4e 47 28 68 6f 77 20 74 G_CHECKING(how t
2960: 6f 20 63 72 65 61 74 65 20 73 68 61 72 65 64 20 o create shared
2970: 6f 62 6a 65 63 74 73 29 0a 0a 20 20 69 66 20 74 objects).. if t
2980: 65 73 74 20 2d 7a 20 22 24 53 48 4f 42 4a 46 4c est -z "$SHOBJFL
2990: 41 47 53 22 20 2d 61 20 2d 7a 20 22 24 53 48 4f AGS" -a -z "$SHO
29a0: 42 4a 4c 44 46 4c 41 47 53 22 3b 20 74 68 65 6e BJLDFLAGS"; then
29b0: 0a 20 20 20 20 44 43 5f 54 45 53 54 5f 53 48 4f . DC_TEST_SHO
29c0: 42 4a 46 4c 41 47 53 28 5b 2d 66 50 49 43 20 2d BJFLAGS([-fPIC -
29d0: 44 50 49 43 5d 2c 20 5b 2d 73 68 61 72 65 64 20 DPIC], [-shared
29e0: 2d 72 64 79 6e 61 6d 69 63 5d 2c 20 5b 0a 20 20 -rdynamic], [.
29f0: 20 20 20 20 44 43 5f 54 45 53 54 5f 53 48 4f 42 DC_TEST_SHOB
2a00: 4a 46 4c 41 47 53 28 5b 2d 66 50 49 43 20 2d 44 JFLAGS([-fPIC -D
2a10: 50 49 43 5d 2c 20 5b 2d 73 68 61 72 65 64 5d 2c PIC], [-shared],
2a20: 20 5b 0a 20 20 20 20 20 20 20 20 44 43 5f 54 45 [. DC_TE
2a30: 53 54 5f 53 48 4f 42 4a 46 4c 41 47 53 28 5b 2d ST_SHOBJFLAGS([-
2a40: 66 50 49 43 20 2d 44 50 49 43 5d 2c 20 5b 2d 73 fPIC -DPIC], [-s
2a50: 68 61 72 65 64 20 2d 72 64 79 6e 61 6d 69 63 20 hared -rdynamic
2a60: 2d 6d 69 6d 70 75 72 65 2d 74 65 78 74 5d 2c 20 -mimpure-text],
2a70: 5b 0a 20 20 20 20 20 20 20 20 20 20 44 43 5f 54 [. DC_T
2a80: 45 53 54 5f 53 48 4f 42 4a 46 4c 41 47 53 28 5b EST_SHOBJFLAGS([
2a90: 2d 66 50 49 43 20 2d 44 50 49 43 5d 2c 20 5b 2d -fPIC -DPIC], [-
2aa0: 73 68 61 72 65 64 20 2d 6d 69 6d 70 75 72 65 2d shared -mimpure-
2ab0: 74 65 78 74 5d 2c 20 5b 0a 20 20 20 20 20 20 20 text], [.
2ac0: 20 20 20 20 20 44 43 5f 54 45 53 54 5f 53 48 4f DC_TEST_SHO
2ad0: 42 4a 46 4c 41 47 53 28 5b 2d 66 50 49 43 20 2d BJFLAGS([-fPIC -
2ae0: 44 50 49 43 5d 2c 20 5b 2d 73 68 61 72 65 64 20 DPIC], [-shared
2af0: 2d 72 64 79 6e 61 6d 69 63 20 2d 57 6c 2c 2d 47 -rdynamic -Wl,-G
2b00: 2c 2d 7a 2c 74 65 78 74 6f 66 66 5d 2c 20 5b 0a ,-z,textoff], [.
2b10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 43 DC
2b20: 5f 54 45 53 54 5f 53 48 4f 42 4a 46 4c 41 47 53 _TEST_SHOBJFLAGS
2b30: 28 5b 2d 66 50 49 43 20 2d 44 50 49 43 5d 2c 20 ([-fPIC -DPIC],
2b40: 5b 2d 73 68 61 72 65 64 20 2d 57 6c 2c 2d 47 2c [-shared -Wl,-G,
2b50: 2d 7a 2c 74 65 78 74 6f 66 66 5d 2c 20 5b 0a 20 -z,textoff], [.
2b60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 D
2b70: 43 5f 54 45 53 54 5f 53 48 4f 42 4a 46 4c 41 47 C_TEST_SHOBJFLAG
2b80: 53 28 5b 2d 66 50 49 43 20 2d 44 50 49 43 5d 2c S([-fPIC -DPIC],
2b90: 20 5b 2d 73 68 61 72 65 64 20 2d 64 79 6e 61 6d [-shared -dynam
2ba0: 69 63 6c 69 62 20 2d 66 6c 61 74 5f 6e 61 6d 65 iclib -flat_name
2bb0: 73 70 61 63 65 20 2d 75 6e 64 65 66 69 6e 65 64 space -undefined
2bc0: 20 73 75 70 70 72 65 73 73 20 2d 62 69 6e 64 5f suppress -bind_
2bd0: 61 74 5f 6c 6f 61 64 5d 2c 20 5b 0a 20 20 20 20 at_load], [.
2be0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 43 DC
2bf0: 5f 54 45 53 54 5f 53 48 4f 42 4a 46 4c 41 47 53 _TEST_SHOBJFLAGS
2c00: 28 5b 2d 66 50 49 43 20 2d 44 50 49 43 5d 2c 20 ([-fPIC -DPIC],
2c10: 5b 2d 64 79 6e 61 6d 69 63 6c 69 62 20 2d 66 6c [-dynamiclib -fl
2c20: 61 74 5f 6e 61 6d 65 73 70 61 63 65 20 2d 75 6e at_namespace -un
2c30: 64 65 66 69 6e 65 64 20 73 75 70 70 72 65 73 73 defined suppress
2c40: 20 2d 62 69 6e 64 5f 61 74 5f 6c 6f 61 64 5d 2c -bind_at_load],
2c50: 20 5b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 [.
2c60: 20 20 20 20 20 20 20 44 43 5f 54 45 53 54 5f 53 DC_TEST_S
2c70: 48 4f 42 4a 46 4c 41 47 53 28 5b 2d 66 50 49 43 HOBJFLAGS([-fPIC
2c80: 20 2d 44 50 49 43 5d 2c 20 5b 2d 57 6c 2c 2d 64 -DPIC], [-Wl,-d
2c90: 79 6e 61 6d 69 63 6c 69 62 20 2d 57 6c 2c 2d 66 ynamiclib -Wl,-f
2ca0: 6c 61 74 5f 6e 61 6d 65 73 70 61 63 65 20 2d 57 lat_namespace -W
2cb0: 6c 2c 2d 75 6e 64 65 66 69 6e 65 64 2c 73 75 70 l,-undefined,sup
2cc0: 70 72 65 73 73 20 2d 57 6c 2c 2d 62 69 6e 64 5f press -Wl,-bind_
2cd0: 61 74 5f 6c 6f 61 64 5d 2c 20 5b 0a 20 20 20 20 at_load], [.
2ce0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
2cf0: 20 20 44 43 5f 54 45 53 54 5f 53 48 4f 42 4a 46 DC_TEST_SHOBJF
2d00: 4c 41 47 53 28 5b 2d 66 50 49 43 20 2d 44 50 49 LAGS([-fPIC -DPI
2d10: 43 5d 2c 20 5b 2d 64 79 6e 61 6d 69 63 6c 69 62 C], [-dynamiclib
2d20: 20 2d 66 6c 61 74 5f 6e 61 6d 65 73 70 61 63 65 -flat_namespace
2d30: 20 2d 75 6e 64 65 66 69 6e 65 64 20 73 75 70 70 -undefined supp
2d40: 72 65 73 73 5d 2c 20 5b 0a 20 20 20 20 20 20 20 ress], [.
2d50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
2d60: 20 44 43 5f 54 45 53 54 5f 53 48 4f 42 4a 46 4c DC_TEST_SHOBJFL
2d70: 41 47 53 28 5b 2d 66 50 49 43 20 2d 44 50 49 43 AGS([-fPIC -DPIC
2d80: 5d 2c 20 5b 2d 64 79 6e 61 6d 69 63 6c 69 62 5d ], [-dynamiclib]
2d90: 2c 20 5b 0a 20 20 20 20 20 20 20 20 20 20 20 20 , [.
2da0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 41 43 AC
2db0: 5f 4d 53 47 5f 52 45 53 55 4c 54 28 63 61 6e 74 _MSG_RESULT(cant
2dc0: 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ).
2dd0: 20 20 20 20 20 20 20 20 20 20 20 20 41 43 5f 4d AC_M
2de0: 53 47 5f 45 52 52 4f 52 28 5b 57 65 20 61 72 65 SG_ERROR([We are
2df0: 20 75 6e 61 62 6c 65 20 74 6f 20 6d 61 6b 65 20 unable to make
2e00: 73 68 61 72 65 64 20 6f 62 6a 65 63 74 73 2e 5d shared objects.]
2e10: 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ).
2e20: 20 20 20 20 20 20 20 20 20 20 5d 29 0a 20 20 20 ]).
2e30: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
2e40: 20 20 20 5d 29 0a 20 20 20 20 20 20 20 20 20 20 ]).
2e50: 20 20 20 20 20 20 20 20 20 20 5d 29 0a 20 20 20 ]).
2e60: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 5d ]
2e70: 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ).
2e80: 20 20 5d 29 0a 20 20 20 20 20 20 20 20 20 20 20 ]).
2e90: 20 20 20 5d 29 0a 20 20 20 20 20 20 20 20 20 20 ]).
2ea0: 20 20 5d 29 0a 20 20 20 20 20 20 20 20 20 20 5d ]). ]
2eb0: 29 0a 20 20 20 20 20 20 20 20 5d 29 0a 20 20 20 ). ]).
2ec0: 20 20 20 5d 29 0a 20 20 20 20 5d 29 0a 20 20 66 ]). ]). f
2ed0: 69 0a 0a 20 20 41 43 5f 4d 53 47 5f 52 45 53 55 i.. AC_MSG_RESU
2ee0: 4c 54 28 24 53 48 4f 42 4a 4c 44 46 4c 41 47 53 LT($SHOBJLDFLAGS
2ef0: 20 24 53 48 4f 42 4a 46 4c 41 47 53 29 0a 5d 29 $SHOBJFLAGS).])
2f00: 0a 0a 41 43 5f 44 45 46 55 4e 28 44 43 5f 43 48 ..AC_DEFUN(DC_CH
2f10: 4b 5f 4f 53 5f 49 4e 46 4f 2c 20 5b 0a 09 41 43 K_OS_INFO, [..AC
2f20: 5f 43 41 4e 4f 4e 49 43 41 4c 5f 42 55 49 4c 44 _CANONICAL_BUILD
2f30: 0a 09 41 43 5f 43 41 4e 4f 4e 49 43 41 4c 5f 48 ..AC_CANONICAL_H
2f40: 4f 53 54 0a 0a 09 41 43 5f 53 55 42 53 54 28 53 OST...AC_SUBST(S
2f50: 48 4f 42 4a 45 58 54 29 0a 09 41 43 5f 53 55 42 HOBJEXT)..AC_SUB
2f60: 53 54 28 41 52 45 58 54 29 0a 20 20 20 20 20 20 ST(AREXT).
2f70: 20 20 41 43 5f 53 55 42 53 54 28 53 48 4f 42 4a AC_SUBST(SHOBJ
2f80: 46 4c 41 47 53 29 0a 20 20 20 20 20 20 20 20 41 FLAGS). A
2f90: 43 5f 53 55 42 53 54 28 53 48 4f 42 4a 4c 44 46 C_SUBST(SHOBJLDF
2fa0: 4c 41 47 53 29 0a 0a 20 20 20 20 20 20 20 20 41 LAGS).. A
2fb0: 43 5f 4d 53 47 5f 43 48 45 43 4b 49 4e 47 28 68 C_MSG_CHECKING(h
2fc0: 6f 73 74 20 6f 70 65 72 61 74 69 6e 67 20 73 79 ost operating sy
2fd0: 73 74 65 6d 29 0a 20 20 20 20 20 20 20 20 41 43 stem). AC
2fe0: 5f 4d 53 47 5f 52 45 53 55 4c 54 28 24 68 6f 73 _MSG_RESULT($hos
2ff0: 74 5f 6f 73 29 0a 0a 09 53 48 4f 42 4a 45 58 54 t_os)...SHOBJEXT
3000: 3d 22 73 6f 22 0a 09 41 52 45 58 54 3d 22 61 22 ="so"..AREXT="a"
3010: 0a 0a 20 20 20 20 20 20 20 20 63 61 73 65 20 24 .. case $
3020: 68 6f 73 74 5f 6f 73 20 69 6e 0a 20 20 20 20 20 host_os in.
3030: 20 20 20 20 20 20 20 20 20 20 20 64 61 72 77 69 darwi
3040: 6e 2a 29 0a 09 09 09 53 48 4f 42 4a 45 58 54 3d n*)....SHOBJEXT=
3050: 22 64 79 6c 69 62 22 0a 20 20 20 20 20 20 20 20 "dylib".
3060: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
3070: 3b 3b 0a 09 09 68 70 75 78 2a 29 0a 09 09 09 53 ;;...hpux*)....S
3080: 48 4f 42 4a 45 58 54 3d 22 73 6c 22 0a 09 09 09 HOBJEXT="sl"....
3090: 3b 3b 0a 09 09 6d 69 6e 67 77 2a 29 0a 09 09 09 ;;...mingw*)....
30a0: 53 48 4f 42 4a 45 58 54 3d 22 64 6c 6c 22 0a 09 SHOBJEXT="dll"..
30b0: 09 09 53 48 4f 42 4a 46 4c 41 47 53 3d 22 2d 6d ..SHOBJFLAGS="-m
30c0: 6d 73 2d 62 69 74 66 69 65 6c 64 73 20 2d 44 50 ms-bitfields -DP
30d0: 49 43 22 0a 09 09 09 53 48 4f 42 4a 4c 44 46 4c IC"....SHOBJLDFL
30e0: 41 47 53 3d 27 2d 73 68 61 72 65 64 20 2d 57 6c AGS='-shared -Wl
30f0: 2c 2d 2d 64 6c 6c 20 2d 57 6c 2c 2d 2d 65 6e 61 ,--dll -Wl,--ena
3100: 62 6c 65 2d 61 75 74 6f 2d 69 6d 61 67 65 2d 62 ble-auto-image-b
3110: 61 73 65 20 2d 57 6c 2c 2d 2d 6f 75 74 70 75 74 ase -Wl,--output
3120: 2d 64 65 66 2c 24 5b 40 5d 2e 64 65 66 2c 2d 2d -def,$[@].def,--
3130: 6f 75 74 2d 69 6d 70 6c 69 62 2c 24 5b 40 5d 2e out-implib,$[@].
3140: 61 20 2d 57 6c 2c 2d 2d 65 78 70 6f 72 74 2d 61 a -Wl,--export-a
3150: 6c 6c 2d 73 79 6d 62 6f 6c 73 20 2d 57 6c 2c 2d ll-symbols -Wl,-
3160: 2d 61 64 64 2d 73 74 64 63 61 6c 6c 2d 61 6c 69 -add-stdcall-ali
3170: 61 73 27 0a 09 09 09 3b 3b 0a 09 65 73 61 63 0a as'....;;..esac.
3180: 5d 29 0a 0a 41 43 5f 44 45 46 55 4e 28 44 43 5f ])..AC_DEFUN(DC_
3190: 54 45 53 54 5f 57 48 4f 4c 45 5f 41 52 43 48 49 TEST_WHOLE_ARCHI
31a0: 56 45 5f 53 48 41 52 45 44 5f 4c 49 42 2c 20 5b VE_SHARED_LIB, [
31b0: 0a 0a 09 53 41 56 45 5f 4c 49 42 53 3d 22 24 7b ...SAVE_LIBS="${
31c0: 4c 49 42 53 7d 22 0a 0a 09 4c 49 42 53 3d 22 24 LIBS}"...LIBS="$
31d0: 7b 57 48 4f 4c 45 41 52 43 48 49 56 45 7d 20 24 {WHOLEARCHIVE} $
31e0: 31 20 24 7b 4e 4f 57 48 4f 4c 45 41 52 43 48 49 1 ${NOWHOLEARCHI
31f0: 56 45 7d 20 24 7b 53 41 56 45 5f 4c 49 42 53 7d VE} ${SAVE_LIBS}
3200: 22 0a 09 41 43 5f 4c 49 4e 4b 5f 49 46 45 4c 53 "..AC_LINK_IFELS
3210: 45 28 0a 09 09 41 43 5f 4c 41 4e 47 5f 50 52 4f E(...AC_LANG_PRO
3220: 47 52 41 4d 28 5b 5b 0a 09 09 09 5d 5d 2c 20 5b GRAM([[....]], [
3230: 5b 0a 09 09 09 5d 5d 0a 09 09 29 2c 0a 09 09 5b [....]]...),...[
3240: 0a 09 09 09 4c 49 42 53 3d 22 24 7b 53 41 56 45 ....LIBS="${SAVE
3250: 5f 4c 49 42 53 7d 22 0a 0a 09 09 09 24 32 0a 09 _LIBS}".....$2..
3260: 09 5d 2c 20 5b 0a 09 09 09 4c 49 42 53 3d 22 24 .], [....LIBS="$
3270: 7b 53 41 56 45 5f 4c 49 42 53 7d 22 0a 0a 09 09 {SAVE_LIBS}"....
3280: 09 24 33 0a 09 09 5d 0a 09 29 0a 5d 29 0a 0a 41 .$3...]..).])..A
3290: 43 5f 44 45 46 55 4e 28 44 43 5f 43 48 45 43 4b C_DEFUN(DC_CHECK
32a0: 5f 46 4f 52 5f 57 48 4f 4c 45 5f 41 52 43 48 49 _FOR_WHOLE_ARCHI
32b0: 56 45 2c 20 5b 0a 09 41 43 5f 4d 53 47 5f 43 48 VE, [..AC_MSG_CH
32c0: 45 43 4b 49 4e 47 28 5b 66 6f 72 20 68 6f 77 20 ECKING([for how
32d0: 74 6f 20 6c 69 6e 6b 20 77 68 6f 6c 65 20 61 72 to link whole ar
32e0: 63 68 69 76 65 5d 29 0a 0a 09 53 41 56 45 5f 43 chive])...SAVE_C
32f0: 46 4c 41 47 53 3d 22 24 7b 43 46 4c 41 47 53 7d FLAGS="${CFLAGS}
3300: 22 0a 0a 09 77 68 6f 6c 65 61 72 63 68 69 76 65 "...wholearchive
3310: 3d 22 22 0a 0a 09 66 6f 72 20 63 68 65 63 6b 20 =""...for check
3320: 69 6e 20 22 2d 57 6c 2c 2d 2d 77 68 6f 6c 65 2d in "-Wl,--whole-
3330: 61 72 63 68 69 76 65 20 2d 57 6c 2c 2d 2d 6e 6f archive -Wl,--no
3340: 2d 77 68 6f 6c 65 2d 61 72 63 68 69 76 65 22 20 -whole-archive"
3350: 22 2d 57 6c 2c 2d 7a 2c 61 6c 6c 65 78 74 72 61 "-Wl,-z,allextra
3360: 63 74 20 2d 57 6c 2c 2d 7a 2c 64 65 66 61 75 6c ct -Wl,-z,defaul
3370: 74 65 78 74 72 61 63 74 22 3b 20 64 6f 0a 09 09 textract"; do...
3380: 43 46 4c 41 47 53 3d 22 24 7b 53 41 56 45 5f 43 CFLAGS="${SAVE_C
3390: 46 4c 41 47 53 7d 20 24 7b 63 68 65 63 6b 7d 22 FLAGS} ${check}"
33a0: 0a 0a 09 09 41 43 5f 4c 49 4e 4b 5f 49 46 45 4c ....AC_LINK_IFEL
33b0: 53 45 28 41 43 5f 4c 41 4e 47 5f 50 52 4f 47 52 SE(AC_LANG_PROGR
33c0: 41 4d 28 5b 5d 2c 20 5b 5d 29 2c 0a 09 09 09 5b AM([], []),....[
33d0: 0a 09 09 09 09 77 68 6f 6c 65 61 72 63 68 69 76 .....wholearchiv
33e0: 65 3d 22 24 7b 63 68 65 63 6b 7d 22 0a 0a 09 09 e="${check}"....
33f0: 09 09 62 72 65 61 6b 0a 09 09 09 5d 0a 09 09 29 ..break....]...)
3400: 0a 0a 09 64 6f 6e 65 0a 0a 09 43 46 4c 41 47 53 ...done...CFLAGS
3410: 3d 22 24 7b 53 41 56 45 5f 43 46 4c 41 47 53 7d ="${SAVE_CFLAGS}
3420: 22 0a 0a 09 69 66 20 74 65 73 74 20 2d 7a 20 22 "...if test -z "
3430: 24 7b 77 68 6f 6c 65 61 72 63 68 69 76 65 7d 22 ${wholearchive}"
3440: 3b 20 74 68 65 6e 0a 09 09 41 43 5f 4d 53 47 5f ; then...AC_MSG_
3450: 52 45 53 55 4c 54 28 5b 6e 6f 74 20 66 6f 75 6e RESULT([not foun
3460: 64 5d 29 0a 09 65 6c 73 65 0a 09 09 41 43 5f 4d d])..else...AC_M
3470: 53 47 5f 52 45 53 55 4c 54 28 5b 24 7b 77 68 6f SG_RESULT([${who
3480: 6c 65 61 72 63 68 69 76 65 7d 5d 29 0a 0a 09 09 learchive}])....
3490: 57 48 4f 4c 45 41 52 43 48 49 56 45 3d 60 65 63 WHOLEARCHIVE=`ec
34a0: 68 6f 20 22 24 7b 77 68 6f 6c 65 61 72 63 68 69 ho "${wholearchi
34b0: 76 65 7d 22 20 7c 20 63 75 74 20 2d 66 20 31 20 ve}" | cut -f 1
34c0: 2d 64 20 27 20 27 60 0a 09 09 4e 4f 57 48 4f 4c -d ' '`...NOWHOL
34d0: 45 41 52 43 48 49 56 45 3d 60 65 63 68 6f 20 22 EARCHIVE=`echo "
34e0: 24 7b 77 68 6f 6c 65 61 72 63 68 69 76 65 7d 22 ${wholearchive}"
34f0: 20 7c 20 63 75 74 20 2d 66 20 32 20 2d 64 20 27 | cut -f 2 -d '
3500: 20 27 60 0a 09 66 69 0a 0a 09 41 43 5f 53 55 42 '`..fi...AC_SUB
3510: 53 54 28 57 48 4f 4c 45 41 52 43 48 49 56 45 29 ST(WHOLEARCHIVE)
3520: 0a 09 41 43 5f 53 55 42 53 54 28 4e 4f 57 48 4f ..AC_SUBST(NOWHO
3530: 4c 45 41 52 43 48 49 56 45 29 0a 5d 29 0a 0a 41 LEARCHIVE).])..A
3540: 43 5f 44 45 46 55 4e 28 44 43 5f 53 45 54 4c 44 C_DEFUN(DC_SETLD
3550: 52 55 4e 50 41 54 48 2c 20 5b 0a 09 4f 4c 44 5f RUNPATH, [..OLD_
3560: 4c 44 46 4c 41 47 53 3d 22 24 7b 4c 44 46 4c 41 LDFLAGS="${LDFLA
3570: 47 53 7d 22 0a 0a 09 66 6f 72 20 74 65 73 74 6c GS}"...for testl
3580: 64 66 6c 61 67 73 20 69 6e 20 22 2d 57 6c 2c 2d dflags in "-Wl,-
3590: 72 70 61 74 68 20 2d 57 6c 2c 24 31 22 20 22 2d rpath -Wl,$1" "-
35a0: 57 6c 2c 2d 52 20 2d 57 6c 2c 24 31 22 3b 20 64 Wl,-R -Wl,$1"; d
35b0: 6f 0a 09 09 4c 44 46 4c 41 47 53 3d 22 24 7b 4f o...LDFLAGS="${O
35c0: 4c 44 5f 4c 44 46 4c 41 47 53 7d 20 24 7b 74 65 LD_LDFLAGS} ${te
35d0: 73 74 6c 64 66 6c 61 67 73 7d 22 0a 09 09 41 43 stldflags}"...AC
35e0: 5f 54 52 59 5f 4c 49 4e 4b 28 5b 23 69 6e 63 6c _TRY_LINK([#incl
35f0: 75 64 65 20 3c 73 74 64 69 6f 2e 68 3e 5d 2c 20 ude <stdio.h>],
3600: 5b 20 72 65 74 75 72 6e 28 30 29 3b 20 5d 2c 20 [ return(0); ],
3610: 5b 0a 09 09 09 4c 44 52 55 4e 50 41 54 48 3d 22 [....LDRUNPATH="
3620: 24 4c 44 52 55 4e 50 41 54 48 20 24 74 65 73 74 $LDRUNPATH $test
3630: 6c 64 66 6c 61 67 73 22 0a 0a 09 09 09 62 72 65 ldflags".....bre
3640: 61 6b 0a 09 09 5d 29 0a 09 64 6f 6e 65 0a 0a 09 ak...])..done...
3650: 4c 44 46 4c 41 47 53 3d 22 24 7b 4f 4c 44 5f 4c LDFLAGS="${OLD_L
3660: 44 46 4c 41 47 53 7d 22 0a 0a 09 41 43 5f 53 55 DFLAGS}"...AC_SU
3670: 42 53 54 28 4c 44 52 55 4e 50 41 54 48 29 0a 5d BST(LDRUNPATH).]
3680: 29 0a 0a 41 43 5f 44 45 46 55 4e 28 44 43 5f 53 )..AC_DEFUN(DC_S
3690: 45 54 5f 44 49 52 32 43 5f 46 4c 41 47 53 2c 20 ET_DIR2C_FLAGS,
36a0: 5b 0a 09 41 43 5f 4d 53 47 5f 43 48 45 43 4b 49 [..AC_MSG_CHECKI
36b0: 4e 47 28 5b 69 66 20 77 65 20 73 68 6f 75 6c 64 NG([if we should
36c0: 20 6f 62 73 75 66 63 61 74 65 20 74 68 65 20 43 obsufcate the C
36d0: 56 46 53 5d 29 0a 0a 09 41 43 5f 41 52 47 5f 57 VFS])...AC_ARG_W
36e0: 49 54 48 28 6f 62 73 66 75 63 61 74 65 64 2d 63 ITH(obsfucated-c
36f0: 76 66 73 2c 20 41 43 5f 48 45 4c 50 5f 53 54 52 vfs, AC_HELP_STR
3700: 49 4e 47 28 5b 2d 2d 77 69 74 68 2d 6f 62 73 66 ING([--with-obsf
3710: 75 63 61 74 65 64 2d 63 76 66 73 5d 2c 20 5b 4f ucated-cvfs], [O
3720: 62 73 66 75 63 61 74 65 20 43 56 46 53 20 66 69 bsfucate CVFS fi
3730: 6c 65 73 79 73 74 65 6d 20 28 72 65 71 75 69 72 lesystem (requir
3740: 65 73 20 2d 2d 65 6e 61 62 6c 65 2d 6b 69 74 2d es --enable-kit-
3750: 73 74 6f 72 61 67 65 3d 63 76 66 73 29 5d 29 2c storage=cvfs)]),
3760: 20 5b 0a 09 09 6f 62 73 66 75 63 61 74 65 5f 63 [...obsfucate_c
3770: 76 66 73 3d 24 77 69 74 68 76 61 6c 0a 09 5d 2c vfs=$withval..],
3780: 20 5b 0a 09 09 6f 62 73 66 75 63 61 74 65 5f 63 [...obsfucate_c
3790: 76 66 73 3d 27 6e 6f 27 0a 09 5d 29 0a 0a 09 63 vfs='no'..])...c
37a0: 61 73 65 20 22 24 6f 62 73 66 75 63 61 74 65 5f ase "$obsfucate_
37b0: 63 76 66 73 22 20 69 6e 0a 09 09 79 65 73 29 0a cvfs" in...yes).
37c0: 09 09 09 41 43 5f 4d 53 47 5f 52 45 53 55 4c 54 ...AC_MSG_RESULT
37d0: 28 5b 79 65 73 5d 29 0a 09 09 09 44 49 52 32 43 ([yes])....DIR2C
37e0: 5f 46 4c 41 47 53 3d 27 2d 2d 6f 62 73 66 75 63 _FLAGS='--obsfuc
37f0: 61 74 65 27 0a 09 09 09 3b 3b 0a 09 09 2a 29 0a ate'....;;...*).
3800: 09 09 09 41 43 5f 4d 53 47 5f 52 45 53 55 4c 54 ...AC_MSG_RESULT
3810: 28 5b 6e 6f 5d 29 0a 09 09 09 44 49 52 32 43 5f ([no])....DIR2C_
3820: 46 4c 41 47 53 3d 27 27 0a 09 09 09 3b 3b 0a 09 FLAGS=''....;;..
3830: 65 73 61 63 0a 0a 09 41 43 5f 53 55 42 53 54 28 esac...AC_SUBST(
3840: 44 49 52 32 43 5f 46 4c 41 47 53 29 0a 5d 29 0a DIR2C_FLAGS).]).