From bc5587faab3629fda0712e423cf0110228b15c27 Mon Sep 17 00:00:00 2001 From: Rolf Leggewie Date: Fri, 25 Jul 2008 13:25:10 +0000 Subject: dnsmasq: [SECURITY] update to latest version 2.45 * 2.45 provides some kind of protection against the recently discovered DNS cache poisoning attacks. The protection is not perfect. It is somewhat unclear as to whether dnsmasq is really vulnerable. --- packages/dnsmasq/dnsmasq_2.38.bb | 1 - packages/dnsmasq/dnsmasq_2.45.bb | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) delete mode 100644 packages/dnsmasq/dnsmasq_2.38.bb create mode 100644 packages/dnsmasq/dnsmasq_2.45.bb diff --git a/packages/dnsmasq/dnsmasq_2.38.bb b/packages/dnsmasq/dnsmasq_2.38.bb deleted file mode 100644 index 83aea1d299..0000000000 --- a/packages/dnsmasq/dnsmasq_2.38.bb +++ /dev/null @@ -1 +0,0 @@ -require dnsmasq.inc diff --git a/packages/dnsmasq/dnsmasq_2.45.bb b/packages/dnsmasq/dnsmasq_2.45.bb new file mode 100644 index 0000000000..83aea1d299 --- /dev/null +++ b/packages/dnsmasq/dnsmasq_2.45.bb @@ -0,0 +1 @@ +require dnsmasq.inc -- cgit v1.2.3 From c47bfd68d102add00e80b93190b133c5678f2e35 Mon Sep 17 00:00:00 2001 From: Thomas Kunze Date: Fri, 25 Jul 2008 14:37:15 +0000 Subject: initramfs-kexe: load zImage from the /boot directory --- packages/initrdscripts/initramfs-kexec_1.0.bb | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/initrdscripts/initramfs-kexec_1.0.bb b/packages/initrdscripts/initramfs-kexec_1.0.bb index 6b0bb46de3..1b2ae27cf7 100644 --- a/packages/initrdscripts/initramfs-kexec_1.0.bb +++ b/packages/initrdscripts/initramfs-kexec_1.0.bb @@ -1,12 +1,12 @@ DESCRIPTON = "A init script that mounts a device and kexecs a new kernel from it." -PR = "r5" +PR = "r6" do_compile() { cat > init.sh << EOF #!/bin/sh /bin/mount -t proc proc /proc /bin/mount -t ${ROOTFS} ${ROOTDEV} /mnt -/usr/sbin/kexec -l /mnt/zImage +/usr/sbin/kexec -l /mnt/boot/zImage /usr/sbin/kexec -e EOF } -- cgit v1.2.3 From 921ab6e2dcdd0070fab26fe624e9d778f726bbca Mon Sep 17 00:00:00 2001 From: John Lee Date: Fri, 25 Jul 2008 15:33:59 +0000 Subject: frameworkd: modify frameworkd.conf for om-gta02 to support accelerometer * bump frameworkd_git.bb PR --- packages/freesmartphone/frameworkd/om-gta02/frameworkd.conf | 2 ++ packages/freesmartphone/frameworkd_git.bb | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/freesmartphone/frameworkd/om-gta02/frameworkd.conf b/packages/freesmartphone/frameworkd/om-gta02/frameworkd.conf index 79c06edff2..28a6416729 100644 --- a/packages/freesmartphone/frameworkd/om-gta02/frameworkd.conf +++ b/packages/freesmartphone/frameworkd/om-gta02/frameworkd.conf @@ -5,6 +5,8 @@ ignoreinput=2,3 [input] # don't read from accellerometers for GTA02 ignoreinput=2,3 +# specify accellerometer type +accelerometer_type = gta02 # keys report1 = AUX,key,169,1 report2 = POWER,key,116,1 diff --git a/packages/freesmartphone/frameworkd_git.bb b/packages/freesmartphone/frameworkd_git.bb index f26b0a282d..76e8b78691 100644 --- a/packages/freesmartphone/frameworkd_git.bb +++ b/packages/freesmartphone/frameworkd_git.bb @@ -5,7 +5,7 @@ SECTION = "console/network" DEPENDS = "python-cython-native python-pyrex-native" LICENSE = "GPL" PV = "0.8.1+gitr${SRCREV}" -PR = "r10" +PR = "r11" inherit distutils update-rc.d -- cgit v1.2.3 From 5d9097ba8c817893b2e15bcc5e05e6d3698d30c3 Mon Sep 17 00:00:00 2001 From: John Lee Date: Fri, 25 Jul 2008 15:37:40 +0000 Subject: icecc.bbclass: make it work again. * compiled from scratch cooking fso-image successfully so I can say it works for me (tm). * must bitbake icecc-create-env first. --- classes/icecc.bbclass | 142 +++++++++++++++++++++++--------------------------- 1 file changed, 66 insertions(+), 76 deletions(-) diff --git a/classes/icecc.bbclass b/classes/icecc.bbclass index 56cbd6444f..8c950b0281 100644 --- a/classes/icecc.bbclass +++ b/classes/icecc.bbclass @@ -36,11 +36,11 @@ def icc_determine_gcc_version(gcc): import os return os.popen("%s --version" % gcc ).readline().split()[2] + def create_cross_env(bb,d): """ Create a tar.bz2 of the current toolchain """ - # Constin native-native compilation no environment needed if # host prefix is empty (let us duplicate the query for ease) prefix = bb.data.expand('${HOST_PREFIX}', d) @@ -55,14 +55,14 @@ def create_cross_env(bb,d): target_prefix = bb.data.expand('${TARGET_PREFIX}', d) float = bb.data.getVar('TARGET_FPU', d) or "hard" name = socket.gethostname() - # Stupid check to determine if we have built a libc and a cross # compiler. try: - os.stat(os.path.join(ice_dir, target_sys, 'lib', 'libc.so')) + os.stat(os.path.join(ice_dir, target_sys, 'lib', 'libstdc++.so')) os.stat(os.path.join(ice_dir, target_sys, 'bin', 'g++')) except: # no cross compiler built yet + bb.error('no cross compiler built yet?') return "" VERSION = icc_determine_gcc_version( os.path.join(ice_dir,target_sys,"bin","g++") ) @@ -95,7 +95,6 @@ def create_cross_env(bb,d): def create_native_env(bb,d): - import tarfile, socket, time, os ice_dir = bb.data.expand('${CROSS_DIR}', d) prefix = bb.data.expand('${HOST_PREFIX}' , d) @@ -104,8 +103,7 @@ def create_native_env(bb,d): target_prefix = bb.data.expand('${TARGET_PREFIX}', d) float = bb.data.getVar('TARGET_FPU', d) or "hard" name = socket.gethostname() - - + archive_name = "local-host-env" + "-" + name tar_file = os.path.join(ice_dir, 'ice', archive_name + '.tar.gz') @@ -121,7 +119,6 @@ def create_native_env(bb,d): # directory already exists, continue pass - #check if user has specified a specific icecc-create-env script #if not use the OE provided one cr_env_script = bb.data.getVar('ICECC_ENV_EXEC', d) or bb.data.expand('${STAGING_DIR}', d)+"/ice/icecc-create-env" @@ -134,9 +131,14 @@ def create_native_env(bb,d): return tar_file +def get_cross_kernel_cc(bb,d): + kernel_cc = bb.data.expand('${KERNEL_CC}', d) + kernel_cc = kernel_cc.replace('ccache', '') + kernel_cc = kernel_cc.strip() + return kernel_cc -def create_cross_kernel_env(bb,d): +def create_cross_kernel_env(bb,d): import tarfile, socket, time, os ice_dir = bb.data.expand('${CROSS_DIR}', d) prefix = bb.data.expand('${HOST_PREFIX}' , d) @@ -145,15 +147,14 @@ def create_cross_kernel_env(bb,d): target_prefix = bb.data.expand('${TARGET_PREFIX}', d) float = bb.data.getVar('TARGET_FPU', d) or "hard" name = socket.gethostname() - kernel_cc = bb.data.expand('${KERNEL_CC}', d) - kernel_cc = kernel_cc[:-1] - + kernel_cc = get_cross_kernel_cc(bb, d) # Stupid check to determine if we have built a libc and a cross # compiler. try: - os.stat(os.path.join(ice_dir, 'bin', kernel_cc)) + os.stat(os.path.join(ice_dir, 'bin', kernel_cc)) except: # no cross compiler built yet + bb.error('no cross compiler built yet') return "" VERSION = icc_determine_gcc_version( os.path.join(ice_dir,"bin",kernel_cc) ) @@ -198,8 +199,8 @@ def create_env(bb,d): return create_native_env(bb,d) else: return create_cross_env(bb,d) - - + + def create_path(compilers, type, bb, d): """ Create Symlinks for the icecc in the staging directory @@ -211,7 +212,6 @@ def create_path(compilers, type, bb, d): #check if the icecc path is set by the user icecc = bb.data.getVar('ICECC_PATH', d) or os.popen("%s icecc" % "which").read()[:-1] - # Create the dir if necessary try: os.stat(staging) @@ -228,31 +228,25 @@ def create_path(compilers, type, bb, d): return staging + ":" - - - def use_icc_version(bb,d): - icecc_ver = "yes" system_class_blacklist = [ "none" ] - + for black in system_class_blacklist: if bb.data.inherits_class(black, d): icecc_ver = "no" - user_class_blacklist = bb.data.getVar('ICECC_USER_CLASS_BL', d) or "none" user_class_blacklist = user_class_blacklist.split() - + for black in user_class_blacklist: if bb.data.inherits_class(black, d): icecc_ver = "no" - - return icecc_ver + return icecc_ver -def icc_path(bb,d,compile): +def icc_path(bb,d): package_tmp = bb.data.expand('${PN}', d) #"system" package blacklist contains a list of packages that can not distribute compile tasks @@ -260,79 +254,75 @@ def icc_path(bb,d,compile): system_package_blacklist = [ "uclibc", "glibc-intermediate", "gcc", "qemu", "bind", "u-boot", "dhcp-forwarder", "enchant" ] for black in system_package_blacklist: - if black in package_tmp: - bb.data.setVar("PARALLEL_MAKE" , "", d) - return "" + if black in package_tmp: + bb.note(package_tmp, ' found in blacklist, disable icecc') + bb.data.setVar("PARALLEL_MAKE" , "", d) + return "" #user defined exclusion list - user_package_blacklist = bb.data.getVar('ICECC_USER_PACKAGE_BL', d) or "none" + user_package_blacklist = bb.data.getVar('ICECC_USER_PACKAGE_BL', d) or "" user_package_blacklist = user_package_blacklist.split() for black in user_package_blacklist: - if black in package_tmp: - bb.data.setVar("PARALLEL_MAKE" , "", d) - return "" - + if black in package_tmp: + bb.data.setVar("PARALLEL_MAKE" , "", d) + return "" prefix = bb.data.expand('${HOST_PREFIX}', d) - - if compile and bb.data.inherits_class("cross", d): - return create_path( ["gcc", "g++"], "native", bb, d) + if bb.data.inherits_class("cross", d): + return create_path( ["gcc", "g++"], "native", bb, d) - elif compile and bb.data.inherits_class("native", d): - return create_path( ["gcc", "g++"], "native", bb, d) + elif bb.data.inherits_class("native", d): + return create_path( ["gcc", "g++"], "native", bb, d) - elif compile and bb.data.inherits_class("kernel", d): - return create_path( [get_cross_kernel_ver(bb,d), "foo"], "cross-kernel", bb, d) + elif bb.data.inherits_class("kernel", d): + return create_path( [get_cross_kernel_cc(bb,d), ], "cross-kernel", bb, d) - elif not compile or len(prefix) == 0: - return create_path( ["gcc", "g++"], "native", bb, d) + elif len(prefix) == 0: + return create_path( ["gcc", "g++"], "native", bb, d) else: - return create_path( [prefix+"gcc", prefix+"g++"], "cross", bb, d) - - + return create_path( [prefix+"gcc", prefix+"g++"], "cross", bb, d) def icc_version(bb,d): return create_env(bb,d) -def check_for_kernel(bb,d): - if bb.data.inherits_class("kernel", d): - return "yes" - - return "no" +def check_for_kernel(bb,d): + if bb.data.inherits_class("kernel", d): + return "yes" + return "no" + + +set_icecc_env() { + ICECC_PATH=${@icc_path(bb,d)} + if test x${ICECC_PATH} != x; then + export PATH=${ICECC_PATH}$PATH + export CCACHE_PATH=$PATH + #check if we are building a kernel and select gcc-cross-kernel + if [ "${@check_for_kernel(bb,d)}" = "yes" ]; then + export ICECC_CC="${@get_cross_kernel_cc(bb,d)}" + export ICECC_CXX="${HOST_PREFIX}g++" + else + export ICECC_CC="${HOST_PREFIX}gcc" + export ICECC_CXX="${HOST_PREFIX}g++" + fi + + if [ "${@use_icc_version(bb,d)}" = "yes" ]; then + export ICECC_VERSION="${@icc_version(bb,d)}" + else + export -n ICECC_VERSION + fi + oenote "set the icecream environment variables: PATH=$PATH, CCACHE_PATH=$CCACHE_PATH, ICECC_CC=$ICECC_CC, ICECC_CXX=$ICECC_CXX, ICECC_VERSION=$ICECC_VERSION" + fi +} -def get_cross_kernel_ver(bb,d): - - return bb.data.expand('${KERNEL_CC}', d).strip() or "gcc" - -# set the icecream environment variables do_configure_prepend() { - export PATH=${@icc_path(bb,d,False)}$PATH - export ICECC_CC="gcc" - export ICECC_CXX="g++" + set_icecc_env } do_compile_prepend() { - - export PATH=${@icc_path(bb,d,True)}$PATH - - #check if we are building a kernel and select gcc-cross-kernel - if [ "${@check_for_kernel(bb,d)}" = "yes" ]; then - export ICECC_CC="${@get_cross_kernel_ver(bb,d)}" - export ICECC_CXX="${HOST_PREFIX}g++" - else - export ICECC_CC="${HOST_PREFIX}gcc" - export ICECC_CXX="${HOST_PREFIX}g++" - fi - - if [ "${@use_icc_version(bb,d)}" = "yes" ]; then - export ICECC_VERSION="${@icc_version(bb,d)}" - else - export ICECC_VERSION="NONE" - fi + set_icecc_env } - -- cgit v1.2.3 From bc88960925183e5f432cf0bda737ecf6809b358c Mon Sep 17 00:00:00 2001 From: Henning Heinold Date: Fri, 25 Jul 2008 15:47:14 +0000 Subject: alsa-libs: don't need to define the get_alsa_versym_setting function 3 times --- packages/alsa/alsa-versym.inc | 15 --------------- 1 file changed, 15 deletions(-) diff --git a/packages/alsa/alsa-versym.inc b/packages/alsa/alsa-versym.inc index 6d585ecf4a..07ca89cafb 100644 --- a/packages/alsa/alsa-versym.inc +++ b/packages/alsa/alsa-versym.inc @@ -4,18 +4,3 @@ def get_alsa_versym_setting(bb, d): if bb.data.getVar('TARGET_OS', d, 1).find('uclibc') >= 0: return "--with-versioned=no" return "" - - -def get_alsa_versym_setting(bb, d): - # Versioned symbols don't work propery with uClibc - if bb.data.getVar('TARGET_OS', d, 1).find('uclibc') >= 0: - return "--with-versioned=no" - return "" - - -def get_alsa_versym_setting(bb, d): - # Versioned symbols don't work propery with uClibc - if bb.data.getVar('TARGET_OS', d, 1).find('uclibc') >= 0: - return "--with-versioned=no" - return "" - -- cgit v1.2.3 From c9e89716790b2dcbe761e0df986f6555b9be408c Mon Sep 17 00:00:00 2001 From: Thomas Kunze Date: Fri, 25 Jul 2008 23:08:04 +0000 Subject: glibc.inc RRECOMMEND libgcc if nptl libgcc is needed by glibc ntpl but not in NEEDED because glibc dlopens it. So our shlib code doesn't detect it. --- packages/glibc/glibc.inc | 2 +- packages/glibc/glibc_2.2.5.bb | 2 +- packages/glibc/glibc_2.3.2+cvs20040726.bb | 2 +- packages/glibc/glibc_2.3.2.bb | 2 +- packages/glibc/glibc_2.3.3+cvs20041128.bb | 2 +- packages/glibc/glibc_2.3.3+cvs20050221.bb | 2 +- packages/glibc/glibc_2.3.3+cvs20050420.bb | 2 +- packages/glibc/glibc_2.3.3.bb | 2 +- packages/glibc/glibc_2.3.5+cvs20050627.bb | 2 +- packages/glibc/glibc_2.3.6.bb | 2 +- packages/glibc/glibc_2.4.bb | 2 +- packages/glibc/glibc_2.5.bb | 2 +- packages/glibc/glibc_2.6.1.bb | 2 +- packages/glibc/glibc_2.7.bb | 2 +- packages/glibc/glibc_cvs.bb | 2 +- 15 files changed, 15 insertions(+), 15 deletions(-) diff --git a/packages/glibc/glibc.inc b/packages/glibc/glibc.inc index f677f62eaf..e8d56c2a42 100644 --- a/packages/glibc/glibc.inc +++ b/packages/glibc/glibc.inc @@ -8,7 +8,7 @@ DEPENDS = "virtual/${TARGET_PREFIX}gcc-intermediate linux-libc-headers" #this leads to circular deps, so lets not add it yet #RDEPENDS_ldd += " bash" # nptl needs libgcc but dlopens it, so our shlibs code doesn't detect this -#RDEPENDS += "${@['','libgcc']['nptl' in '${GLIBC_ADDONS}']}" +RRECOMMENDS += "${@['','libgcc']['nptl' in '${GLIBC_ADDONS}']}" PROVIDES = "virtual/libc virtual/${TARGET_PREFIX}libc-for-gcc" PROVIDES += "virtual/libintl virtual/libiconv" diff --git a/packages/glibc/glibc_2.2.5.bb b/packages/glibc/glibc_2.2.5.bb index 5afeb6421b..2d37d5cf7f 100644 --- a/packages/glibc/glibc_2.2.5.bb +++ b/packages/glibc/glibc_2.2.5.bb @@ -1,7 +1,7 @@ require glibc.inc FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glibc-cvs" -PR = "r16" +PR = "r17" DEFAULT_PREFERENCE_sh3 = "-99" diff --git a/packages/glibc/glibc_2.3.2+cvs20040726.bb b/packages/glibc/glibc_2.3.2+cvs20040726.bb index d293d7a52d..7bb7cf5e43 100644 --- a/packages/glibc/glibc_2.3.2+cvs20040726.bb +++ b/packages/glibc/glibc_2.3.2+cvs20040726.bb @@ -3,7 +3,7 @@ require glibc.inc DEFAULT_PREFERENCE_sh3 = "-99" FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glibc-cvs" -PR = "r27" +PR = "r28" GLIBC_ADDONS ?= "linuxthreads" diff --git a/packages/glibc/glibc_2.3.2.bb b/packages/glibc/glibc_2.3.2.bb index 4a417a3c7c..22fa33ec44 100644 --- a/packages/glibc/glibc_2.3.2.bb +++ b/packages/glibc/glibc_2.3.2.bb @@ -1,6 +1,6 @@ require glibc.inc -PR = "r16" +PR = "r17" DEFAULT_PREFERENCE_sh3 = "-99" diff --git a/packages/glibc/glibc_2.3.3+cvs20041128.bb b/packages/glibc/glibc_2.3.3+cvs20041128.bb index 2138599ea9..89dd366c86 100644 --- a/packages/glibc/glibc_2.3.3+cvs20041128.bb +++ b/packages/glibc/glibc_2.3.3+cvs20041128.bb @@ -3,7 +3,7 @@ require glibc.inc DEFAULT_PREFERENCE_sh3 = "-99" FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glibc-cvs" -PR = "r12" +PR = "r13" GLIBC_ADDONS ?= "linuxthreads" diff --git a/packages/glibc/glibc_2.3.3+cvs20050221.bb b/packages/glibc/glibc_2.3.3+cvs20050221.bb index f9b948a58a..3d21504842 100644 --- a/packages/glibc/glibc_2.3.3+cvs20050221.bb +++ b/packages/glibc/glibc_2.3.3+cvs20050221.bb @@ -3,7 +3,7 @@ require glibc.inc DEFAULT_PREFERENCE_sh3 = "-99" FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glibc-cvs" -PR = "r12" +PR = "r13" GLIBC_ADDONS ?= "linuxthreads" diff --git a/packages/glibc/glibc_2.3.3+cvs20050420.bb b/packages/glibc/glibc_2.3.3+cvs20050420.bb index 7d091be292..fdb9ad1519 100644 --- a/packages/glibc/glibc_2.3.3+cvs20050420.bb +++ b/packages/glibc/glibc_2.3.3+cvs20050420.bb @@ -5,7 +5,7 @@ DEFAULT_PREFERENCE_i586 = "0" DEFAULT_PREFERENCE_sh3 = "-99" FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glibc-cvs" -PR = "r10" +PR = "r11" GLIBC_ADDONS ?= "linuxthreads" diff --git a/packages/glibc/glibc_2.3.3.bb b/packages/glibc/glibc_2.3.3.bb index 57d380bc1d..1b527fbc10 100644 --- a/packages/glibc/glibc_2.3.3.bb +++ b/packages/glibc/glibc_2.3.3.bb @@ -1,6 +1,6 @@ require glibc.inc -PR = "r13" +PR = "r14" DEFAULT_PREFERENCE_sh3 = "-99" diff --git a/packages/glibc/glibc_2.3.5+cvs20050627.bb b/packages/glibc/glibc_2.3.5+cvs20050627.bb index 0f3be0a47e..e00836b7be 100644 --- a/packages/glibc/glibc_2.3.5+cvs20050627.bb +++ b/packages/glibc/glibc_2.3.5+cvs20050627.bb @@ -2,7 +2,7 @@ require glibc.inc FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glibc-cvs-2.3.5" SRCDATE = "20050627" -PR = "r19" +PR = "r20" #Doesnt build for sh3 DEFAULT_PREFERENCE_sh3="-1" diff --git a/packages/glibc/glibc_2.3.6.bb b/packages/glibc/glibc_2.3.6.bb index 898108c5d2..31a06de9cd 100644 --- a/packages/glibc/glibc_2.3.6.bb +++ b/packages/glibc/glibc_2.3.6.bb @@ -1,6 +1,6 @@ require glibc.inc -PR = "r1" +PR = "r2" #FILESPATH = "${@base_set_filespath([ '${FILE_DIRNAME}/glibc-2.3.6', '${FILE_DIRNAME}/orig/glibc', '${FILE_DIRNAME}/orig/files', '${FILE_DIRNAME}/orig' ], d)}" diff --git a/packages/glibc/glibc_2.4.bb b/packages/glibc/glibc_2.4.bb index 873fc66c51..62a4e36768 100644 --- a/packages/glibc/glibc_2.4.bb +++ b/packages/glibc/glibc_2.4.bb @@ -1,6 +1,6 @@ require glibc.inc -PR = "r17" +PR = "r18" #add the hosts that are confirmed to be working to COMPATIBLE_HOSTi COMPATIBLE_HOST = '(i.86.*-linux|sh.*-linux)' diff --git a/packages/glibc/glibc_2.5.bb b/packages/glibc/glibc_2.5.bb index 6fa72ff1f6..c58561a679 100644 --- a/packages/glibc/glibc_2.5.bb +++ b/packages/glibc/glibc_2.5.bb @@ -1,5 +1,5 @@ require glibc.inc -PR = "r14" +PR = "r15" ARM_INSTRUCTION_SET = "arm" diff --git a/packages/glibc/glibc_2.6.1.bb b/packages/glibc/glibc_2.6.1.bb index b2fe0f43a6..8d38c4890d 100644 --- a/packages/glibc/glibc_2.6.1.bb +++ b/packages/glibc/glibc_2.6.1.bb @@ -1,5 +1,5 @@ require glibc.inc -PR = "r8" +PR = "r9" ARM_INSTRUCTION_SET = "arm" diff --git a/packages/glibc/glibc_2.7.bb b/packages/glibc/glibc_2.7.bb index f0170a03f5..8c82203024 100644 --- a/packages/glibc/glibc_2.7.bb +++ b/packages/glibc/glibc_2.7.bb @@ -5,7 +5,7 @@ ARM_INSTRUCTION_SET = "arm" PACKAGES_DYNAMIC = "libc6*" RPROVIDES_${PN}-dev = "libc6-dev" -PR = "r4" +PR = "r5" # the -isystem in bitbake.conf screws up glibc do_stage BUILD_CPPFLAGS = "-I${STAGING_INCDIR_NATIVE}" diff --git a/packages/glibc/glibc_cvs.bb b/packages/glibc/glibc_cvs.bb index f5bb921b70..14de0300cf 100644 --- a/packages/glibc/glibc_cvs.bb +++ b/packages/glibc/glibc_cvs.bb @@ -1,7 +1,7 @@ require glibc.inc FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/glibc-cvs-2.3.5" -PR = "r9" +PR = "r10" PV = "2.3.5+cvs${SRCDATE}" GLIBC_ADDONS ?= "ports,linuxthreads" -- cgit v1.2.3 From 31de720064930a076ef2c4521d03b3c066b3a5f9 Mon Sep 17 00:00:00 2001 From: Thomas Kunze Date: Sat, 26 Jul 2008 00:01:44 +0000 Subject: kexec-tools-static: fix build error --- packages/kexec/files/kexec-klibc.patch | 43 +++++++++++++++++++----------- packages/kexec/kexec-tools-static_1.101.bb | 2 +- 2 files changed, 28 insertions(+), 17 deletions(-) diff --git a/packages/kexec/files/kexec-klibc.patch b/packages/kexec/files/kexec-klibc.patch index b8e2c81689..090b6231f1 100644 --- a/packages/kexec/files/kexec-klibc.patch +++ b/packages/kexec/files/kexec-klibc.patch @@ -1,7 +1,7 @@ Index: kexec-tools-1.101/kexec/arch/arm/kexec-elf-rel-arm.c =================================================================== ---- kexec-tools-1.101.orig/kexec/arch/arm/kexec-elf-rel-arm.c 2008-02-22 20:45:15.907610333 +0100 -+++ kexec-tools-1.101/kexec/arch/arm/kexec-elf-rel-arm.c 2008-02-22 20:45:27.508612989 +0100 +--- kexec-tools-1.101.orig/kexec/arch/arm/kexec-elf-rel-arm.c 2008-02-24 14:15:46.934825202 +0100 ++++ kexec-tools-1.101/kexec/arch/arm/kexec-elf-rel-arm.c 2008-02-24 14:15:47.014827381 +0100 @@ -1,5 +1,5 @@ #include -#include @@ -11,9 +11,20 @@ Index: kexec-tools-1.101/kexec/arch/arm/kexec-elf-rel-arm.c Index: kexec-tools-1.101/kexec/arch/arm/kexec-zImage-arm.c =================================================================== ---- kexec-tools-1.101.orig/kexec/arch/arm/kexec-zImage-arm.c 2008-02-22 20:45:15.959611260 +0100 -+++ kexec-tools-1.101/kexec/arch/arm/kexec-zImage-arm.c 2008-02-22 20:45:27.508612989 +0100 -@@ -110,13 +110,13 @@ +--- kexec-tools-1.101.orig/kexec/arch/arm/kexec-zImage-arm.c 2008-02-24 14:15:46.982825391 +0100 ++++ kexec-tools-1.101/kexec/arch/arm/kexec-zImage-arm.c 2008-07-26 01:58:20.838624318 +0200 +@@ -2,6 +2,10 @@ + * - 08/21/2007 ATAG support added by Uli Luckas + * + */ ++ ++/* work around for linux header files */ ++#define __deprecated ++ + #define _GNU_SOURCE + #include + #include +@@ -110,13 +114,13 @@ } fread(buf, sizeof(buf[1]), BOOT_PARAMS_SIZE, fp); @@ -31,8 +42,8 @@ Index: kexec-tools-1.101/kexec/arch/arm/kexec-zImage-arm.c } Index: kexec-tools-1.101/kexec/ifdown.c =================================================================== ---- kexec-tools-1.101.orig/kexec/ifdown.c 2004-06-09 20:55:31.000000000 +0200 -+++ kexec-tools-1.101/kexec/ifdown.c 2008-02-22 20:45:27.508612989 +0100 +--- kexec-tools-1.101.orig/kexec/ifdown.c 2008-02-24 14:15:34.025828340 +0100 ++++ kexec-tools-1.101/kexec/ifdown.c 2008-02-24 14:15:47.014827381 +0100 @@ -14,7 +14,7 @@ #include #include @@ -44,8 +55,8 @@ Index: kexec-tools-1.101/kexec/ifdown.c #include Index: kexec-tools-1.101/purgatory/Makefile =================================================================== ---- kexec-tools-1.101.orig/purgatory/Makefile 2005-01-08 23:36:32.000000000 +0100 -+++ kexec-tools-1.101/purgatory/Makefile 2008-02-22 20:45:27.516611391 +0100 +--- kexec-tools-1.101.orig/purgatory/Makefile 2008-02-24 14:15:34.037827479 +0100 ++++ kexec-tools-1.101/purgatory/Makefile 2008-02-24 14:15:47.022825503 +0100 @@ -13,7 +13,7 @@ PCFLAGS += $(call cc-option, -ffreestanding) @@ -57,8 +68,8 @@ Index: kexec-tools-1.101/purgatory/Makefile PURGATORY_C_SRCS:= Index: kexec-tools-1.101/kexec/kexec-elf-rel.c =================================================================== ---- kexec-tools-1.101.orig/kexec/kexec-elf-rel.c 2005-01-13 14:04:21.000000000 +0100 -+++ kexec-tools-1.101/kexec/kexec-elf-rel.c 2008-02-22 20:45:27.524612027 +0100 +--- kexec-tools-1.101.orig/kexec/kexec-elf-rel.c 2008-02-24 14:15:34.025828340 +0100 ++++ kexec-tools-1.101/kexec/kexec-elf-rel.c 2008-02-24 14:15:47.030825302 +0100 @@ -4,7 +4,7 @@ #include #include @@ -70,8 +81,8 @@ Index: kexec-tools-1.101/kexec/kexec-elf-rel.c #include "kexec-elf.h" Index: kexec-tools-1.101/kexec/kexec-syscall.h =================================================================== ---- kexec-tools-1.101.orig/kexec/kexec-syscall.h 2008-02-22 20:45:15.923611048 +0100 -+++ kexec-tools-1.101/kexec/kexec-syscall.h 2008-02-22 20:45:27.524612027 +0100 +--- kexec-tools-1.101.orig/kexec/kexec-syscall.h 2008-02-24 14:15:46.950825917 +0100 ++++ kexec-tools-1.101/kexec/kexec-syscall.h 2008-02-24 14:15:47.030825302 +0100 @@ -2,7 +2,7 @@ #define KEXEC_SYSCALL_H @@ -116,8 +127,8 @@ Index: kexec-tools-1.101/kexec/kexec-syscall.h Index: kexec-tools-1.101/kexec/kexec.c =================================================================== ---- kexec-tools-1.101.orig/kexec/kexec.c 2008-02-22 20:45:15.923611048 +0100 -+++ kexec-tools-1.101/kexec/kexec.c 2008-02-22 20:45:38.847612035 +0100 +--- kexec-tools-1.101.orig/kexec/kexec.c 2008-02-24 14:15:46.950825917 +0100 ++++ kexec-tools-1.101/kexec/kexec.c 2008-07-26 01:58:53.545624148 +0200 @@ -29,9 +29,7 @@ #include #include @@ -134,7 +145,7 @@ Index: kexec-tools-1.101/kexec/kexec.c } -#if HAVE_ZLIB_H -+#if 1 ++#if 1 char *slurp_decompress_file(const char *filename, off_t *r_size) { gzFile fp; diff --git a/packages/kexec/kexec-tools-static_1.101.bb b/packages/kexec/kexec-tools-static_1.101.bb index 5fa51b2e70..670f055506 100644 --- a/packages/kexec/kexec-tools-static_1.101.bb +++ b/packages/kexec/kexec-tools-static_1.101.bb @@ -1,7 +1,7 @@ # the binaries are statical linked against klibc require kexec-tools.inc -PR = "r3" +PR = "r4" DEPENDS = "klibc" SRC_URI += "file://kexec-klibc.patch;patch=1" -- cgit v1.2.3 From 2fd1bd8160c4a93bb1811aedc2e9061b786ba745 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Sat, 26 Jul 2008 07:20:29 +0000 Subject: 1. Bump up the SVN revision. 2. Recommend libgcc unconditionally for eglibc based images as its all nptl. --- conf/distro/include/sane-srcrevs.inc | 4 ++-- packages/eglibc/eglibc.inc | 5 ++++- packages/eglibc/eglibc_svn.bb | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/conf/distro/include/sane-srcrevs.inc b/conf/distro/include/sane-srcrevs.inc index 4490907774..3840346eb9 100644 --- a/conf/distro/include/sane-srcrevs.inc +++ b/conf/distro/include/sane-srcrevs.inc @@ -26,8 +26,8 @@ SRCREV_pn-dfu-util-native ?= "4160" SRCREV_pn-diversity-daemon ?= "277" SRCREV_pn-diversity-nav ?= "340" SRCREV_pn-eds-dbus ?= "659" -SRCREV_pn-eglibc ?= "6229" -SRCREV_pn-eglibc-initial ?= "6229" +SRCREV_pn-eglibc ?= "6625" +SRCREV_pn-eglibc-initial ?= "6625" SRCREV_pn-enlazar ?= "37" SRCREV_pn-exalt ?= "79" SRCREV_pn-exalt-daemon ?= "78" diff --git a/packages/eglibc/eglibc.inc b/packages/eglibc/eglibc.inc index 5d531a7915..0309a7f1b2 100644 --- a/packages/eglibc/eglibc.inc +++ b/packages/eglibc/eglibc.inc @@ -11,7 +11,10 @@ DEPENDS = "virtual/${TARGET_PREFIX}gcc-intermediate linux-libc-headers" #RDEPENDS += "${@['','libgcc']['nptl' in '${GLIBC_ADDONS}']}" PROVIDES = "virtual/libc virtual/${TARGET_PREFIX}libc-for-gcc" PROVIDES += "virtual/libintl virtual/libiconv" - +# We need this RRECOMMENDS because libc dlopens libgcc +# and shlib mechanism can not detect it because its not +# listed in the NEEDED field. +RRECOMMENDS += "libgcc" inherit autotools LEAD_SONAME = "libc.so" diff --git a/packages/eglibc/eglibc_svn.bb b/packages/eglibc/eglibc_svn.bb index 1be10c13ad..3e8a5a0c99 100644 --- a/packages/eglibc/eglibc_svn.bb +++ b/packages/eglibc/eglibc_svn.bb @@ -3,7 +3,7 @@ require eglibc.inc # DEFAULT_PREFERENCE = "-1" FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/eglibc-svn" PV = "2.8+svnr${SRCREV}" -PR = "r7" +PR = "r8" SRC_URI = "svn://svn.eglibc.org;module=trunk \ file://eglibc-svn-arm-lowlevellock-include-tls.patch;patch=1 \ file://etc/ld.so.conf \ -- cgit v1.2.3 From 996bfb248d59b24e4f3db2269e4128bef4b7bf37 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Sat, 26 Jul 2008 08:54:20 +0000 Subject: Fix horribly broken util-linux-ng 2.14 for uclibc. It also needs a new config option in .config of uclibc to enable UCLIBC_HAS_PROGRAM_INVOCATION_NAME=y UCLIBC_HAS___PROGNAME=y These should be enabled in uclibc.distro files. I will seek permission to add those if not we can always fix util-linux-ng to define __progname. --- .../util-linux-ng-2.14/.mtn2git_empty | 0 .../util-linux-ng-uclibc-versionsort.patch | 3614 ++++++++++++++++++++ packages/util-linux-ng/util-linux-ng_2.14.bb | 10 +- 3 files changed, 3623 insertions(+), 1 deletion(-) create mode 100644 packages/util-linux-ng/util-linux-ng-2.14/.mtn2git_empty create mode 100644 packages/util-linux-ng/util-linux-ng-2.14/util-linux-ng-uclibc-versionsort.patch diff --git a/packages/util-linux-ng/util-linux-ng-2.14/.mtn2git_empty b/packages/util-linux-ng/util-linux-ng-2.14/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/util-linux-ng/util-linux-ng-2.14/util-linux-ng-uclibc-versionsort.patch b/packages/util-linux-ng/util-linux-ng-2.14/util-linux-ng-uclibc-versionsort.patch new file mode 100644 index 0000000000..de8e4a1f6e --- /dev/null +++ b/packages/util-linux-ng/util-linux-ng-2.14/util-linux-ng-uclibc-versionsort.patch @@ -0,0 +1,3614 @@ +Index: util-linux-ng-2.14/aclocal.m4 +=================================================================== +--- util-linux-ng-2.14.orig/aclocal.m4 2008-06-09 03:57:23.000000000 -0700 ++++ util-linux-ng-2.14/aclocal.m4 2008-07-26 01:28:34.000000000 -0700 +@@ -860,11 +860,1985 @@ + AC_SUBST([am__untar]) + ]) # _AM_PROG_TAR + +-m4_include([m4/gettext.m4]) +-m4_include([m4/iconv.m4]) +-m4_include([m4/lib-ld.m4]) +-m4_include([m4/lib-link.m4]) +-m4_include([m4/lib-prefix.m4]) +-m4_include([m4/nls.m4]) +-m4_include([m4/po.m4]) +-m4_include([m4/progtest.m4]) ++# gettext.m4 serial 28 (gettext-0.13) ++dnl Copyright (C) 1995-2003 Free Software Foundation, Inc. ++dnl This file is free software, distributed under the terms of the GNU ++dnl General Public License. As a special exception to the GNU General ++dnl Public License, this file may be distributed as part of a program ++dnl that contains a configuration script generated by Autoconf, under ++dnl the same distribution terms as the rest of that program. ++dnl ++dnl This file can can be used in projects which are not available under ++dnl the GNU General Public License or the GNU Library General Public ++dnl License but which still want to provide support for the GNU gettext ++dnl functionality. ++dnl Please note that the actual code of the GNU gettext library is covered ++dnl by the GNU Library General Public License, and the rest of the GNU ++dnl gettext package package is covered by the GNU General Public License. ++dnl They are *not* in the public domain. ++ ++dnl Authors: ++dnl Ulrich Drepper , 1995-2000. ++dnl Bruno Haible , 2000-2003. ++ ++dnl Macro to add for using GNU gettext. ++ ++dnl Usage: AM_GNU_GETTEXT([INTLSYMBOL], [NEEDSYMBOL], [INTLDIR]). ++dnl INTLSYMBOL can be one of 'external', 'no-libtool', 'use-libtool'. The ++dnl default (if it is not specified or empty) is 'no-libtool'. ++dnl INTLSYMBOL should be 'external' for packages with no intl directory, ++dnl and 'no-libtool' or 'use-libtool' for packages with an intl directory. ++dnl If INTLSYMBOL is 'use-libtool', then a libtool library ++dnl $(top_builddir)/intl/libintl.la will be created (shared and/or static, ++dnl depending on --{enable,disable}-{shared,static} and on the presence of ++dnl AM-DISABLE-SHARED). If INTLSYMBOL is 'no-libtool', a static library ++dnl $(top_builddir)/intl/libintl.a will be created. ++dnl If NEEDSYMBOL is specified and is 'need-ngettext', then GNU gettext ++dnl implementations (in libc or libintl) without the ngettext() function ++dnl will be ignored. If NEEDSYMBOL is specified and is ++dnl 'need-formatstring-macros', then GNU gettext implementations that don't ++dnl support the ISO C 99 formatstring macros will be ignored. ++dnl INTLDIR is used to find the intl libraries. If empty, ++dnl the value `$(top_builddir)/intl/' is used. ++dnl ++dnl The result of the configuration is one of three cases: ++dnl 1) GNU gettext, as included in the intl subdirectory, will be compiled ++dnl and used. ++dnl Catalog format: GNU --> install in $(datadir) ++dnl Catalog extension: .mo after installation, .gmo in source tree ++dnl 2) GNU gettext has been found in the system's C library. ++dnl Catalog format: GNU --> install in $(datadir) ++dnl Catalog extension: .mo after installation, .gmo in source tree ++dnl 3) No internationalization, always use English msgid. ++dnl Catalog format: none ++dnl Catalog extension: none ++dnl If INTLSYMBOL is 'external', only cases 2 and 3 can occur. ++dnl The use of .gmo is historical (it was needed to avoid overwriting the ++dnl GNU format catalogs when building on a platform with an X/Open gettext), ++dnl but we keep it in order not to force irrelevant filename changes on the ++dnl maintainers. ++dnl ++AC_DEFUN([AM_GNU_GETTEXT], ++[ ++ dnl Argument checking. ++ ifelse([$1], [], , [ifelse([$1], [external], , [ifelse([$1], [no-libtool], , [ifelse([$1], [use-libtool], , ++ [errprint([ERROR: invalid first argument to AM_GNU_GETTEXT ++])])])])]) ++ ifelse([$2], [], , [ifelse([$2], [need-ngettext], , [ifelse([$2], [need-formatstring-macros], , ++ [errprint([ERROR: invalid second argument to AM_GNU_GETTEXT ++])])])]) ++ define(gt_included_intl, ifelse([$1], [external], [no], [yes])) ++ define(gt_libtool_suffix_prefix, ifelse([$1], [use-libtool], [l], [])) ++ ++ AC_REQUIRE([AM_PO_SUBDIRS])dnl ++ ifelse(gt_included_intl, yes, [ ++ AC_REQUIRE([AM_INTL_SUBDIR])dnl ++ ]) ++ ++ dnl Prerequisites of AC_LIB_LINKFLAGS_BODY. ++ AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) ++ AC_REQUIRE([AC_LIB_RPATH]) ++ ++ dnl Sometimes libintl requires libiconv, so first search for libiconv. ++ dnl Ideally we would do this search only after the ++ dnl if test "$USE_NLS" = "yes"; then ++ dnl if test "$gt_cv_func_gnugettext_libc" != "yes"; then ++ dnl tests. But if configure.in invokes AM_ICONV after AM_GNU_GETTEXT ++ dnl the configure script would need to contain the same shell code ++ dnl again, outside any 'if'. There are two solutions: ++ dnl - Invoke AM_ICONV_LINKFLAGS_BODY here, outside any 'if'. ++ dnl - Control the expansions in more detail using AC_PROVIDE_IFELSE. ++ dnl Since AC_PROVIDE_IFELSE is only in autoconf >= 2.52 and not ++ dnl documented, we avoid it. ++ ifelse(gt_included_intl, yes, , [ ++ AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY]) ++ ]) ++ ++ dnl Set USE_NLS. ++ AM_NLS ++ ++ ifelse(gt_included_intl, yes, [ ++ BUILD_INCLUDED_LIBINTL=no ++ USE_INCLUDED_LIBINTL=no ++ ]) ++ LIBINTL= ++ LTLIBINTL= ++ POSUB= ++ ++ dnl If we use NLS figure out what method ++ if test "$USE_NLS" = "yes"; then ++ gt_use_preinstalled_gnugettext=no ++ ifelse(gt_included_intl, yes, [ ++ AC_MSG_CHECKING([whether included gettext is requested]) ++ AC_ARG_WITH(included-gettext, ++ [ --with-included-gettext use the GNU gettext library included here], ++ nls_cv_force_use_gnu_gettext=$withval, ++ nls_cv_force_use_gnu_gettext=no) ++ AC_MSG_RESULT($nls_cv_force_use_gnu_gettext) ++ ++ nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext" ++ if test "$nls_cv_force_use_gnu_gettext" != "yes"; then ++ ]) ++ dnl User does not insist on using GNU NLS library. Figure out what ++ dnl to use. If GNU gettext is available we use this. Else we have ++ dnl to fall back to GNU NLS library. ++ ++ dnl Add a version number to the cache macros. ++ define([gt_api_version], ifelse([$2], [need-formatstring-macros], 3, ifelse([$2], [need-ngettext], 2, 1))) ++ define([gt_cv_func_gnugettext_libc], [gt_cv_func_gnugettext]gt_api_version[_libc]) ++ define([gt_cv_func_gnugettext_libintl], [gt_cv_func_gnugettext]gt_api_version[_libintl]) ++ ++ AC_CACHE_CHECK([for GNU gettext in libc], gt_cv_func_gnugettext_libc, ++ [AC_TRY_LINK([#include ++]ifelse([$2], [need-formatstring-macros], ++[#ifndef __GNU_GETTEXT_SUPPORTED_REVISION ++#define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1) ++#endif ++changequote(,)dnl ++typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1]; ++changequote([,])dnl ++], [])[extern int _nl_msg_cat_cntr; ++extern int *_nl_domain_bindings;], ++ [bindtextdomain ("", ""); ++return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_domain_bindings], ++ gt_cv_func_gnugettext_libc=yes, ++ gt_cv_func_gnugettext_libc=no)]) ++ ++ if test "$gt_cv_func_gnugettext_libc" != "yes"; then ++ dnl Sometimes libintl requires libiconv, so first search for libiconv. ++ ifelse(gt_included_intl, yes, , [ ++ AM_ICONV_LINK ++ ]) ++ dnl Search for libintl and define LIBINTL, LTLIBINTL and INCINTL ++ dnl accordingly. Don't use AC_LIB_LINKFLAGS_BODY([intl],[iconv]) ++ dnl because that would add "-liconv" to LIBINTL and LTLIBINTL ++ dnl even if libiconv doesn't exist. ++ AC_LIB_LINKFLAGS_BODY([intl]) ++ AC_CACHE_CHECK([for GNU gettext in libintl], ++ gt_cv_func_gnugettext_libintl, ++ [gt_save_CPPFLAGS="$CPPFLAGS" ++ CPPFLAGS="$CPPFLAGS $INCINTL" ++ gt_save_LIBS="$LIBS" ++ LIBS="$LIBS $LIBINTL" ++ dnl Now see whether libintl exists and does not depend on libiconv. ++ AC_TRY_LINK([#include ++]ifelse([$2], [need-formatstring-macros], ++[#ifndef __GNU_GETTEXT_SUPPORTED_REVISION ++#define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1) ++#endif ++changequote(,)dnl ++typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1]; ++changequote([,])dnl ++], [])[extern int _nl_msg_cat_cntr; ++extern ++#ifdef __cplusplus ++"C" ++#endif ++const char *_nl_expand_alias ();], ++ [bindtextdomain ("", ""); ++return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_expand_alias (0)], ++ gt_cv_func_gnugettext_libintl=yes, ++ gt_cv_func_gnugettext_libintl=no) ++ dnl Now see whether libintl exists and depends on libiconv. ++ if test "$gt_cv_func_gnugettext_libintl" != yes && test -n "$LIBICONV"; then ++ LIBS="$LIBS $LIBICONV" ++ AC_TRY_LINK([#include ++]ifelse([$2], [need-formatstring-macros], ++[#ifndef __GNU_GETTEXT_SUPPORTED_REVISION ++#define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1) ++#endif ++changequote(,)dnl ++typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1]; ++changequote([,])dnl ++], [])[extern int _nl_msg_cat_cntr; ++extern ++#ifdef __cplusplus ++"C" ++#endif ++const char *_nl_expand_alias ();], ++ [bindtextdomain ("", ""); ++return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_expand_alias (0)], ++ [LIBINTL="$LIBINTL $LIBICONV" ++ LTLIBINTL="$LTLIBINTL $LTLIBICONV" ++ gt_cv_func_gnugettext_libintl=yes ++ ]) ++ fi ++ CPPFLAGS="$gt_save_CPPFLAGS" ++ LIBS="$gt_save_LIBS"]) ++ fi ++ ++ dnl If an already present or preinstalled GNU gettext() is found, ++ dnl use it. But if this macro is used in GNU gettext, and GNU ++ dnl gettext is already preinstalled in libintl, we update this ++ dnl libintl. (Cf. the install rule in intl/Makefile.in.) ++ if test "$gt_cv_func_gnugettext_libc" = "yes" \ ++ || { test "$gt_cv_func_gnugettext_libintl" = "yes" \ ++ && test "$PACKAGE" != gettext-runtime \ ++ && test "$PACKAGE" != gettext-tools; }; then ++ gt_use_preinstalled_gnugettext=yes ++ else ++ dnl Reset the values set by searching for libintl. ++ LIBINTL= ++ LTLIBINTL= ++ INCINTL= ++ fi ++ ++ ifelse(gt_included_intl, yes, [ ++ if test "$gt_use_preinstalled_gnugettext" != "yes"; then ++ dnl GNU gettext is not found in the C library. ++ dnl Fall back on included GNU gettext library. ++ nls_cv_use_gnu_gettext=yes ++ fi ++ fi ++ ++ if test "$nls_cv_use_gnu_gettext" = "yes"; then ++ dnl Mark actions used to generate GNU NLS library. ++ BUILD_INCLUDED_LIBINTL=yes ++ USE_INCLUDED_LIBINTL=yes ++ LIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LIBICONV" ++ LTLIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LTLIBICONV" ++ LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'` ++ fi ++ ++ if test "$gt_use_preinstalled_gnugettext" = "yes" \ ++ || test "$nls_cv_use_gnu_gettext" = "yes"; then ++ dnl Mark actions to use GNU gettext tools. ++ CATOBJEXT=.gmo ++ fi ++ ]) ++ ++ if test "$gt_use_preinstalled_gnugettext" = "yes" \ ++ || test "$nls_cv_use_gnu_gettext" = "yes"; then ++ AC_DEFINE(ENABLE_NLS, 1, ++ [Define to 1 if translation of program messages to the user's native language ++ is requested.]) ++ else ++ USE_NLS=no ++ fi ++ fi ++ ++ AC_MSG_CHECKING([whether to use NLS]) ++ AC_MSG_RESULT([$USE_NLS]) ++ if test "$USE_NLS" = "yes"; then ++ AC_MSG_CHECKING([where the gettext function comes from]) ++ if test "$gt_use_preinstalled_gnugettext" = "yes"; then ++ if test "$gt_cv_func_gnugettext_libintl" = "yes"; then ++ gt_source="external libintl" ++ else ++ gt_source="libc" ++ fi ++ else ++ gt_source="included intl directory" ++ fi ++ AC_MSG_RESULT([$gt_source]) ++ fi ++ ++ if test "$USE_NLS" = "yes"; then ++ ++ if test "$gt_use_preinstalled_gnugettext" = "yes"; then ++ if test "$gt_cv_func_gnugettext_libintl" = "yes"; then ++ AC_MSG_CHECKING([how to link with libintl]) ++ AC_MSG_RESULT([$LIBINTL]) ++ AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCINTL]) ++ fi ++ ++ dnl For backward compatibility. Some packages may be using this. ++ AC_DEFINE(HAVE_GETTEXT, 1, ++ [Define if the GNU gettext() function is already present or preinstalled.]) ++ AC_DEFINE(HAVE_DCGETTEXT, 1, ++ [Define if the GNU dcgettext() function is already present or preinstalled.]) ++ fi ++ ++ dnl We need to process the po/ directory. ++ POSUB=po ++ fi ++ ++ ifelse(gt_included_intl, yes, [ ++ dnl If this is used in GNU gettext we have to set BUILD_INCLUDED_LIBINTL ++ dnl to 'yes' because some of the testsuite requires it. ++ if test "$PACKAGE" = gettext-runtime || test "$PACKAGE" = gettext-tools; then ++ BUILD_INCLUDED_LIBINTL=yes ++ fi ++ ++ dnl Make all variables we use known to autoconf. ++ AC_SUBST(BUILD_INCLUDED_LIBINTL) ++ AC_SUBST(USE_INCLUDED_LIBINTL) ++ AC_SUBST(CATOBJEXT) ++ ++ dnl For backward compatibility. Some configure.ins may be using this. ++ nls_cv_header_intl= ++ nls_cv_header_libgt= ++ ++ dnl For backward compatibility. Some Makefiles may be using this. ++ DATADIRNAME=share ++ AC_SUBST(DATADIRNAME) ++ ++ dnl For backward compatibility. Some Makefiles may be using this. ++ INSTOBJEXT=.mo ++ AC_SUBST(INSTOBJEXT) ++ ++ dnl For backward compatibility. Some Makefiles may be using this. ++ GENCAT=gencat ++ AC_SUBST(GENCAT) ++ ++ dnl For backward compatibility. Some Makefiles may be using this. ++ if test "$USE_INCLUDED_LIBINTL" = yes; then ++ INTLOBJS="\$(GETTOBJS)" ++ fi ++ AC_SUBST(INTLOBJS) ++ ++ dnl Enable libtool support if the surrounding package wishes it. ++ INTL_LIBTOOL_SUFFIX_PREFIX=gt_libtool_suffix_prefix ++ AC_SUBST(INTL_LIBTOOL_SUFFIX_PREFIX) ++ ]) ++ ++ dnl For backward compatibility. Some Makefiles may be using this. ++ INTLLIBS="$LIBINTL" ++ AC_SUBST(INTLLIBS) ++ ++ dnl Make all documented variables known to autoconf. ++ AC_SUBST(LIBINTL) ++ AC_SUBST(LTLIBINTL) ++ AC_SUBST(POSUB) ++]) ++ ++ ++dnl Checks for all prerequisites of the intl subdirectory, ++dnl except for INTL_LIBTOOL_SUFFIX_PREFIX (and possibly LIBTOOL), INTLOBJS, ++dnl USE_INCLUDED_LIBINTL, BUILD_INCLUDED_LIBINTL. ++AC_DEFUN([AM_INTL_SUBDIR], ++[ ++ AC_REQUIRE([AC_PROG_INSTALL])dnl ++ AC_REQUIRE([AM_MKINSTALLDIRS])dnl ++ AC_REQUIRE([AC_PROG_CC])dnl ++ AC_REQUIRE([AC_CANONICAL_HOST])dnl ++ AC_REQUIRE([AC_PROG_RANLIB])dnl ++ AC_REQUIRE([AC_ISC_POSIX])dnl ++ AC_REQUIRE([AC_HEADER_STDC])dnl ++ AC_REQUIRE([AC_C_CONST])dnl ++ AC_REQUIRE([bh_C_SIGNED])dnl ++ AC_REQUIRE([AC_C_INLINE])dnl ++ AC_REQUIRE([AC_TYPE_OFF_T])dnl ++ AC_REQUIRE([AC_TYPE_SIZE_T])dnl ++ AC_REQUIRE([jm_AC_TYPE_LONG_LONG])dnl ++ AC_REQUIRE([gt_TYPE_LONGDOUBLE])dnl ++ AC_REQUIRE([gt_TYPE_WCHAR_T])dnl ++ AC_REQUIRE([gt_TYPE_WINT_T])dnl ++ AC_REQUIRE([jm_AC_HEADER_INTTYPES_H]) ++ AC_REQUIRE([jm_AC_HEADER_STDINT_H]) ++ AC_REQUIRE([gt_TYPE_INTMAX_T]) ++ AC_REQUIRE([gt_PRINTF_POSIX]) ++ AC_REQUIRE([AC_FUNC_ALLOCA])dnl ++ AC_REQUIRE([AC_FUNC_MMAP])dnl ++ AC_REQUIRE([jm_GLIBC21])dnl ++ AC_REQUIRE([gt_INTDIV0])dnl ++ AC_REQUIRE([jm_AC_TYPE_UINTMAX_T])dnl ++ AC_REQUIRE([gt_HEADER_INTTYPES_H])dnl ++ AC_REQUIRE([gt_INTTYPES_PRI])dnl ++ AC_REQUIRE([gl_XSIZE])dnl ++ ++ AC_CHECK_TYPE([ptrdiff_t], , ++ [AC_DEFINE([ptrdiff_t], [long], ++ [Define as the type of the result of subtracting two pointers, if the system doesn't define it.]) ++ ]) ++ AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h malloc.h stddef.h \ ++stdlib.h string.h unistd.h sys/param.h]) ++ AC_CHECK_FUNCS([asprintf fwprintf getcwd getegid geteuid getgid getuid \ ++mempcpy munmap putenv setenv setlocale snprintf stpcpy strcasecmp strdup \ ++strtoul tsearch wcslen __argz_count __argz_stringify __argz_next \ ++__fsetlocking]) ++ ++ dnl Use the _snprintf function only if it is declared (because on NetBSD it ++ dnl is defined as a weak alias of snprintf; we prefer to use the latter). ++ gt_CHECK_DECL(_snprintf, [#include ]) ++ gt_CHECK_DECL(_snwprintf, [#include ]) ++ ++ dnl Use the *_unlocked functions only if they are declared. ++ dnl (because some of them were defined without being declared in Solaris ++ dnl 2.5.1 but were removed in Solaris 2.6, whereas we want binaries built ++ dnl on Solaris 2.5.1 to run on Solaris 2.6). ++ dnl Don't use AC_CHECK_DECLS because it isn't supported in autoconf-2.13. ++ gt_CHECK_DECL(feof_unlocked, [#include ]) ++ gt_CHECK_DECL(fgets_unlocked, [#include ]) ++ gt_CHECK_DECL(getc_unlocked, [#include ]) ++ ++ case $gt_cv_func_printf_posix in ++ *yes) HAVE_POSIX_PRINTF=1 ;; ++ *) HAVE_POSIX_PRINTF=0 ;; ++ esac ++ AC_SUBST([HAVE_POSIX_PRINTF]) ++ if test "$ac_cv_func_asprintf" = yes; then ++ HAVE_ASPRINTF=1 ++ else ++ HAVE_ASPRINTF=0 ++ fi ++ AC_SUBST([HAVE_ASPRINTF]) ++ if test "$ac_cv_func_snprintf" = yes; then ++ HAVE_SNPRINTF=1 ++ else ++ HAVE_SNPRINTF=0 ++ fi ++ AC_SUBST([HAVE_SNPRINTF]) ++ if test "$ac_cv_func_wprintf" = yes; then ++ HAVE_WPRINTF=1 ++ else ++ HAVE_WPRINTF=0 ++ fi ++ AC_SUBST([HAVE_WPRINTF]) ++ ++ AM_ICONV ++ AM_LANGINFO_CODESET ++ if test $ac_cv_header_locale_h = yes; then ++ AM_LC_MESSAGES ++ fi ++ ++ dnl intl/plural.c is generated from intl/plural.y. It requires bison, ++ dnl because plural.y uses bison specific features. It requires at least ++ dnl bison-1.26 because earlier versions generate a plural.c that doesn't ++ dnl compile. ++ dnl bison is only needed for the maintainer (who touches plural.y). But in ++ dnl order to avoid separate Makefiles or --enable-maintainer-mode, we put ++ dnl the rule in general Makefile. Now, some people carelessly touch the ++ dnl files or have a broken "make" program, hence the plural.c rule will ++ dnl sometimes fire. To avoid an error, defines BISON to ":" if it is not ++ dnl present or too old. ++ AC_CHECK_PROGS([INTLBISON], [bison]) ++ if test -z "$INTLBISON"; then ++ ac_verc_fail=yes ++ else ++ dnl Found it, now check the version. ++ AC_MSG_CHECKING([version of bison]) ++changequote(<<,>>)dnl ++ ac_prog_version=`$INTLBISON --version 2>&1 | sed -n 's/^.*GNU Bison.* \([0-9]*\.[0-9.]*\).*$/\1/p'` ++ case $ac_prog_version in ++ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; ++ 1.2[6-9]* | 1.[3-9][0-9]* | [2-9].*) ++changequote([,])dnl ++ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; ++ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; ++ esac ++ AC_MSG_RESULT([$ac_prog_version]) ++ fi ++ if test $ac_verc_fail = yes; then ++ INTLBISON=: ++ fi ++]) ++ ++ ++dnl gt_CHECK_DECL(FUNC, INCLUDES) ++dnl Check whether a function is declared. ++AC_DEFUN([gt_CHECK_DECL], ++[ ++ AC_CACHE_CHECK([whether $1 is declared], ac_cv_have_decl_$1, ++ [AC_TRY_COMPILE([$2], [ ++#ifndef $1 ++ char *p = (char *) $1; ++#endif ++], ac_cv_have_decl_$1=yes, ac_cv_have_decl_$1=no)]) ++ if test $ac_cv_have_decl_$1 = yes; then ++ gt_value=1 ++ else ++ gt_value=0 ++ fi ++ AC_DEFINE_UNQUOTED([HAVE_DECL_]translit($1, [a-z], [A-Z]), [$gt_value], ++ [Define to 1 if you have the declaration of `$1', and to 0 if you don't.]) ++]) ++ ++ ++dnl Usage: AM_GNU_GETTEXT_VERSION([gettext-version]) ++AC_DEFUN([AM_GNU_GETTEXT_VERSION], []) ++ ++# iconv.m4 serial AM4 (gettext-0.11.3) ++dnl Copyright (C) 2000-2002 Free Software Foundation, Inc. ++dnl This file is free software, distributed under the terms of the GNU ++dnl General Public License. As a special exception to the GNU General ++dnl Public License, this file may be distributed as part of a program ++dnl that contains a configuration script generated by Autoconf, under ++dnl the same distribution terms as the rest of that program. ++ ++dnl From Bruno Haible. ++ ++AC_DEFUN([AM_ICONV_LINKFLAGS_BODY], ++[ ++ dnl Prerequisites of AC_LIB_LINKFLAGS_BODY. ++ AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) ++ AC_REQUIRE([AC_LIB_RPATH]) ++ ++ dnl Search for libiconv and define LIBICONV, LTLIBICONV and INCICONV ++ dnl accordingly. ++ AC_LIB_LINKFLAGS_BODY([iconv]) ++]) ++ ++AC_DEFUN([AM_ICONV_LINK], ++[ ++ dnl Some systems have iconv in libc, some have it in libiconv (OSF/1 and ++ dnl those with the standalone portable GNU libiconv installed). ++ ++ dnl Search for libiconv and define LIBICONV, LTLIBICONV and INCICONV ++ dnl accordingly. ++ AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY]) ++ ++ dnl Add $INCICONV to CPPFLAGS before performing the following checks, ++ dnl because if the user has installed libiconv and not disabled its use ++ dnl via --without-libiconv-prefix, he wants to use it. The first ++ dnl AC_TRY_LINK will then fail, the second AC_TRY_LINK will succeed. ++ am_save_CPPFLAGS="$CPPFLAGS" ++ AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCICONV]) ++ ++ AC_CACHE_CHECK(for iconv, am_cv_func_iconv, [ ++ am_cv_func_iconv="no, consider installing GNU libiconv" ++ am_cv_lib_iconv=no ++ AC_TRY_LINK([#include ++#include ], ++ [iconv_t cd = iconv_open("",""); ++ iconv(cd,NULL,NULL,NULL,NULL); ++ iconv_close(cd);], ++ am_cv_func_iconv=yes) ++ if test "$am_cv_func_iconv" != yes; then ++ am_save_LIBS="$LIBS" ++ LIBS="$LIBS $LIBICONV" ++ AC_TRY_LINK([#include ++#include ], ++ [iconv_t cd = iconv_open("",""); ++ iconv(cd,NULL,NULL,NULL,NULL); ++ iconv_close(cd);], ++ am_cv_lib_iconv=yes ++ am_cv_func_iconv=yes) ++ LIBS="$am_save_LIBS" ++ fi ++ ]) ++ if test "$am_cv_func_iconv" = yes; then ++ AC_DEFINE(HAVE_ICONV, 1, [Define if you have the iconv() function.]) ++ fi ++ if test "$am_cv_lib_iconv" = yes; then ++ AC_MSG_CHECKING([how to link with libiconv]) ++ AC_MSG_RESULT([$LIBICONV]) ++ else ++ dnl If $LIBICONV didn't lead to a usable library, we don't need $INCICONV ++ dnl either. ++ CPPFLAGS="$am_save_CPPFLAGS" ++ LIBICONV= ++ LTLIBICONV= ++ fi ++ AC_SUBST(LIBICONV) ++ AC_SUBST(LTLIBICONV) ++]) ++ ++AC_DEFUN([AM_ICONV], ++[ ++ AM_ICONV_LINK ++ if test "$am_cv_func_iconv" = yes; then ++ AC_MSG_CHECKING([for iconv declaration]) ++ AC_CACHE_VAL(am_cv_proto_iconv, [ ++ AC_TRY_COMPILE([ ++#include ++#include ++extern ++#ifdef __cplusplus ++"C" ++#endif ++#if defined(__STDC__) || defined(__cplusplus) ++size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft); ++#else ++size_t iconv(); ++#endif ++], [], am_cv_proto_iconv_arg1="", am_cv_proto_iconv_arg1="const") ++ am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"]) ++ am_cv_proto_iconv=`echo "[$]am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'` ++ AC_MSG_RESULT([$]{ac_t:- ++ }[$]am_cv_proto_iconv) ++ AC_DEFINE_UNQUOTED(ICONV_CONST, $am_cv_proto_iconv_arg1, ++ [Define as const if the declaration of iconv() needs const.]) ++ fi ++]) ++ ++# lib-ld.m4 serial 3 (gettext-0.13) ++dnl Copyright (C) 1996-2003 Free Software Foundation, Inc. ++dnl This file is free software, distributed under the terms of the GNU ++dnl General Public License. As a special exception to the GNU General ++dnl Public License, this file may be distributed as part of a program ++dnl that contains a configuration script generated by Autoconf, under ++dnl the same distribution terms as the rest of that program. ++ ++dnl Subroutines of libtool.m4, ++dnl with replacements s/AC_/AC_LIB/ and s/lt_cv/acl_cv/ to avoid collision ++dnl with libtool.m4. ++ ++dnl From libtool-1.4. Sets the variable with_gnu_ld to yes or no. ++AC_DEFUN([AC_LIB_PROG_LD_GNU], ++[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], acl_cv_prog_gnu_ld, ++[# I'd rather use --version here, but apparently some GNU ld's only accept -v. ++case `$LD -v 2>&1 conf$$.sh ++ echo "exit 0" >>conf$$.sh ++ chmod +x conf$$.sh ++ if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then ++ PATH_SEPARATOR=';' ++ else ++ PATH_SEPARATOR=: ++ fi ++ rm -f conf$$.sh ++fi ++ac_prog=ld ++if test "$GCC" = yes; then ++ # Check if gcc -print-prog-name=ld gives a path. ++ AC_MSG_CHECKING([for ld used by GCC]) ++ case $host in ++ *-*-mingw*) ++ # gcc leaves a trailing carriage return which upsets mingw ++ ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; ++ *) ++ ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; ++ esac ++ case $ac_prog in ++ # Accept absolute paths. ++ [[\\/]* | [A-Za-z]:[\\/]*)] ++ [re_direlt='/[^/][^/]*/\.\./'] ++ # Canonicalize the path of ld ++ ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` ++ while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do ++ ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` ++ done ++ test -z "$LD" && LD="$ac_prog" ++ ;; ++ "") ++ # If it fails, then pretend we aren't using GCC. ++ ac_prog=ld ++ ;; ++ *) ++ # If it is relative, then search for the first ld in PATH. ++ with_gnu_ld=unknown ++ ;; ++ esac ++elif test "$with_gnu_ld" = yes; then ++ AC_MSG_CHECKING([for GNU ld]) ++else ++ AC_MSG_CHECKING([for non-GNU ld]) ++fi ++AC_CACHE_VAL(acl_cv_path_LD, ++[if test -z "$LD"; then ++ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" ++ for ac_dir in $PATH; do ++ test -z "$ac_dir" && ac_dir=. ++ if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then ++ acl_cv_path_LD="$ac_dir/$ac_prog" ++ # Check to see if the program is GNU ld. I'd rather use --version, ++ # but apparently some GNU ld's only accept -v. ++ # Break only if it was the GNU/non-GNU ld that we prefer. ++ case `"$acl_cv_path_LD" -v 2>&1 < /dev/null` in ++ *GNU* | *'with BFD'*) ++ test "$with_gnu_ld" != no && break ;; ++ *) ++ test "$with_gnu_ld" != yes && break ;; ++ esac ++ fi ++ done ++ IFS="$ac_save_ifs" ++else ++ acl_cv_path_LD="$LD" # Let the user override the test with a path. ++fi]) ++LD="$acl_cv_path_LD" ++if test -n "$LD"; then ++ AC_MSG_RESULT($LD) ++else ++ AC_MSG_RESULT(no) ++fi ++test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) ++AC_LIB_PROG_LD_GNU ++]) ++ ++# lib-link.m4 serial 4 (gettext-0.12) ++dnl Copyright (C) 2001-2003 Free Software Foundation, Inc. ++dnl This file is free software, distributed under the terms of the GNU ++dnl General Public License. As a special exception to the GNU General ++dnl Public License, this file may be distributed as part of a program ++dnl that contains a configuration script generated by Autoconf, under ++dnl the same distribution terms as the rest of that program. ++ ++dnl From Bruno Haible. ++ ++dnl AC_LIB_LINKFLAGS(name [, dependencies]) searches for libname and ++dnl the libraries corresponding to explicit and implicit dependencies. ++dnl Sets and AC_SUBSTs the LIB${NAME} and LTLIB${NAME} variables and ++dnl augments the CPPFLAGS variable. ++AC_DEFUN([AC_LIB_LINKFLAGS], ++[ ++ AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) ++ AC_REQUIRE([AC_LIB_RPATH]) ++ define([Name],[translit([$1],[./-], [___])]) ++ define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], ++ [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) ++ AC_CACHE_CHECK([how to link with lib[]$1], [ac_cv_lib[]Name[]_libs], [ ++ AC_LIB_LINKFLAGS_BODY([$1], [$2]) ++ ac_cv_lib[]Name[]_libs="$LIB[]NAME" ++ ac_cv_lib[]Name[]_ltlibs="$LTLIB[]NAME" ++ ac_cv_lib[]Name[]_cppflags="$INC[]NAME" ++ ]) ++ LIB[]NAME="$ac_cv_lib[]Name[]_libs" ++ LTLIB[]NAME="$ac_cv_lib[]Name[]_ltlibs" ++ INC[]NAME="$ac_cv_lib[]Name[]_cppflags" ++ AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME) ++ AC_SUBST([LIB]NAME) ++ AC_SUBST([LTLIB]NAME) ++ dnl Also set HAVE_LIB[]NAME so that AC_LIB_HAVE_LINKFLAGS can reuse the ++ dnl results of this search when this library appears as a dependency. ++ HAVE_LIB[]NAME=yes ++ undefine([Name]) ++ undefine([NAME]) ++]) ++ ++dnl AC_LIB_HAVE_LINKFLAGS(name, dependencies, includes, testcode) ++dnl searches for libname and the libraries corresponding to explicit and ++dnl implicit dependencies, together with the specified include files and ++dnl the ability to compile and link the specified testcode. If found, it ++dnl sets and AC_SUBSTs HAVE_LIB${NAME}=yes and the LIB${NAME} and ++dnl LTLIB${NAME} variables and augments the CPPFLAGS variable, and ++dnl #defines HAVE_LIB${NAME} to 1. Otherwise, it sets and AC_SUBSTs ++dnl HAVE_LIB${NAME}=no and LIB${NAME} and LTLIB${NAME} to empty. ++AC_DEFUN([AC_LIB_HAVE_LINKFLAGS], ++[ ++ AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) ++ AC_REQUIRE([AC_LIB_RPATH]) ++ define([Name],[translit([$1],[./-], [___])]) ++ define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], ++ [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) ++ ++ dnl Search for lib[]Name and define LIB[]NAME, LTLIB[]NAME and INC[]NAME ++ dnl accordingly. ++ AC_LIB_LINKFLAGS_BODY([$1], [$2]) ++ ++ dnl Add $INC[]NAME to CPPFLAGS before performing the following checks, ++ dnl because if the user has installed lib[]Name and not disabled its use ++ dnl via --without-lib[]Name-prefix, he wants to use it. ++ ac_save_CPPFLAGS="$CPPFLAGS" ++ AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME) ++ ++ AC_CACHE_CHECK([for lib[]$1], [ac_cv_lib[]Name], [ ++ ac_save_LIBS="$LIBS" ++ LIBS="$LIBS $LIB[]NAME" ++ AC_TRY_LINK([$3], [$4], [ac_cv_lib[]Name=yes], [ac_cv_lib[]Name=no]) ++ LIBS="$ac_save_LIBS" ++ ]) ++ if test "$ac_cv_lib[]Name" = yes; then ++ HAVE_LIB[]NAME=yes ++ AC_DEFINE([HAVE_LIB]NAME, 1, [Define if you have the $1 library.]) ++ AC_MSG_CHECKING([how to link with lib[]$1]) ++ AC_MSG_RESULT([$LIB[]NAME]) ++ else ++ HAVE_LIB[]NAME=no ++ dnl If $LIB[]NAME didn't lead to a usable library, we don't need ++ dnl $INC[]NAME either. ++ CPPFLAGS="$ac_save_CPPFLAGS" ++ LIB[]NAME= ++ LTLIB[]NAME= ++ fi ++ AC_SUBST([HAVE_LIB]NAME) ++ AC_SUBST([LIB]NAME) ++ AC_SUBST([LTLIB]NAME) ++ undefine([Name]) ++ undefine([NAME]) ++]) ++ ++dnl Determine the platform dependent parameters needed to use rpath: ++dnl libext, shlibext, hardcode_libdir_flag_spec, hardcode_libdir_separator, ++dnl hardcode_direct, hardcode_minus_L. ++AC_DEFUN([AC_LIB_RPATH], ++[ ++ AC_REQUIRE([AC_PROG_CC]) dnl we use $CC, $GCC, $LDFLAGS ++ AC_REQUIRE([AC_LIB_PROG_LD]) dnl we use $LD, $with_gnu_ld ++ AC_REQUIRE([AC_CANONICAL_HOST]) dnl we use $host ++ AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT]) dnl we use $ac_aux_dir ++ AC_CACHE_CHECK([for shared library run path origin], acl_cv_rpath, [ ++ CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \ ++ ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh ++ . ./conftest.sh ++ rm -f ./conftest.sh ++ acl_cv_rpath=done ++ ]) ++ wl="$acl_cv_wl" ++ libext="$acl_cv_libext" ++ shlibext="$acl_cv_shlibext" ++ hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec" ++ hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator" ++ hardcode_direct="$acl_cv_hardcode_direct" ++ hardcode_minus_L="$acl_cv_hardcode_minus_L" ++ dnl Determine whether the user wants rpath handling at all. ++ AC_ARG_ENABLE(rpath, ++ [ --disable-rpath do not hardcode runtime library paths], ++ :, enable_rpath=yes) ++]) ++ ++dnl AC_LIB_LINKFLAGS_BODY(name [, dependencies]) searches for libname and ++dnl the libraries corresponding to explicit and implicit dependencies. ++dnl Sets the LIB${NAME}, LTLIB${NAME} and INC${NAME} variables. ++AC_DEFUN([AC_LIB_LINKFLAGS_BODY], ++[ ++ define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], ++ [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) ++ dnl By default, look in $includedir and $libdir. ++ use_additional=yes ++ AC_LIB_WITH_FINAL_PREFIX([ ++ eval additional_includedir=\"$includedir\" ++ eval additional_libdir=\"$libdir\" ++ ]) ++ AC_LIB_ARG_WITH([lib$1-prefix], ++[ --with-lib$1-prefix[=DIR] search for lib$1 in DIR/include and DIR/lib ++ --without-lib$1-prefix don't search for lib$1 in includedir and libdir], ++[ ++ if test "X$withval" = "Xno"; then ++ use_additional=no ++ else ++ if test "X$withval" = "X"; then ++ AC_LIB_WITH_FINAL_PREFIX([ ++ eval additional_includedir=\"$includedir\" ++ eval additional_libdir=\"$libdir\" ++ ]) ++ else ++ additional_includedir="$withval/include" ++ additional_libdir="$withval/lib" ++ fi ++ fi ++]) ++ dnl Search the library and its dependencies in $additional_libdir and ++ dnl $LDFLAGS. Using breadth-first-seach. ++ LIB[]NAME= ++ LTLIB[]NAME= ++ INC[]NAME= ++ rpathdirs= ++ ltrpathdirs= ++ names_already_handled= ++ names_next_round='$1 $2' ++ while test -n "$names_next_round"; do ++ names_this_round="$names_next_round" ++ names_next_round= ++