From d62ee7eaf2ba025c3f64b2d4e10dc7cec4637612 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Wed, 1 Sep 2010 19:09:11 +0100 Subject: packages: Separate out most of the remaining packages into recipes Signed-off-by: Richard Purdie --- meta/packages/apmd/apmd-3.2.2-14/apmd_proxy | 91 - meta/packages/apmd/apmd-3.2.2-14/apmd_proxy.conf | 16 - meta/packages/apmd/apmd-3.2.2-14/default | 8 - meta/packages/apmd/apmd-3.2.2-14/init | 44 - meta/packages/apmd/apmd-3.2.2-14/libtool.patch | 29 - meta/packages/apmd/apmd-3.2.2-14/unlinux.patch | 21 - meta/packages/apmd/apmd-3.2.2-14/workaround.patch | 59 - meta/packages/apmd/apmd_3.2.2-14.bb | 63 - meta/packages/apr/apr-util/configfix.patch | 49 - meta/packages/apr/apr-util/configure_fixes.patch | 27 - .../apr/apr-util/configure_fixes.patch.old | 25 - meta/packages/apr/apr-util_1.3.4.bb | 27 - meta/packages/apr/apr/cleanup.patch | 42 - meta/packages/apr/apr/configfix.patch | 51 - meta/packages/apr/apr/configure_fixes.patch | 66 - meta/packages/apr/apr_1.3.3.bb | 34 - meta/packages/aspell/aspell_0.60.6.bb | 15 - meta/packages/atk/atk.inc | 14 - meta/packages/atk/atk_1.30.0.bb | 10 - meta/packages/attr/acl.inc | 26 - meta/packages/attr/acl_2.2.49.bb | 3 - meta/packages/attr/attr-2.4.44/double-free.patch | 18 - .../attr/attr-2.4.44/memory-leak-in-copy.patch | 50 - meta/packages/attr/attr-2.4.44/memory-leak2.patch | 18 - .../attr/attr-2.4.44/pull-in-string.h.patch | 21 - .../attr/attr-2.4.44/thinko-in-restore.patch | 19 - meta/packages/attr/attr.inc | 20 - meta/packages/attr/attr_2.4.44.bb | 9 - meta/packages/attr/ea-acl.inc | 35 - meta/packages/attr/files/relative-libdir.patch | 23 - .../beecrypt/beecrypt/disable-icu-check.patch | 41 - meta/packages/beecrypt/beecrypt/fix-security.patch | 43 - meta/packages/beecrypt/beecrypt/x64fix.patch | 23 - meta/packages/beecrypt/beecrypt_4.1.2.bb | 21 - meta/packages/blktool/blktool_4-6.bb | 14 - meta/packages/boost/boost-36.inc | 149 - meta/packages/boost/boost-jam-native.inc | 31 - meta/packages/boost/boost-jam-native_3.1.18.bb | 4 - meta/packages/boost/boost_1.44.0.bb | 27 - meta/packages/boost/files/1.34.1-gcc43.patch | 224 - meta/packages/boost/files/arm-intrinsics.patch | 53 - .../boost/files/atomic_count_gcc_atomicity.patch | 13 - meta/packages/boost/files/gcc41.patch | 14 - meta/packages/boost/files/gcc43.patch | 256 - meta/packages/boost/files/linux-uclibc.patch | 10 - meta/packages/boost/files/unit_test_log10f.patch | 20 - meta/packages/bzip2/bzip2-1.0.5/Makefile.am | 41 - meta/packages/bzip2/bzip2-1.0.5/configure.ac | 14 - meta/packages/bzip2/bzip2_1.0.5.bb | 41 - meta/packages/claws-mail/claws-mail.inc | 57 - meta/packages/claws-mail/claws-mail_2.9.1.bb | 1 - .../claws-plugin-gtkhtml2-viewer_0.15.bb | 14 - .../claws-mail/claws-plugin-maildir_0.24.4.bb | 14 - .../claws-mail/claws-plugin-mailmbox_1.13.bb | 14 - .../packages/claws-mail/claws-plugin-rssyl_0.13.bb | 14 - meta/packages/claws-mail/files/desktop.patch | 19 - meta/packages/claws-mail/files/fix-build.patch | 24 - .../claws-mail/files/owl-window-menu.patch | 1009 - meta/packages/claws-mail/files/streamline-ui.patch | 1008 - .../coreutils/coreutils-6.9/futimens.patch | 61 - .../coreutils/coreutils-6.9/gnulib_m4.patch | 19 - .../coreutils/coreutils-6.9/man-touch.patch | 22 - meta/packages/coreutils/coreutils_6.9.bb | 78 - meta/packages/coreutils/coreutils_8.5.bb | 67 - meta/packages/curl/curl/noldlibpath.patch | 74 - meta/packages/curl/curl/pkgconfig_fix.patch | 35 - meta/packages/curl/curl_7.21.0.bb | 54 - meta/packages/db/db/arm-thumb-mutex.patch | 36 - meta/packages/db/db/configure_fixes.patch | 18 - meta/packages/db/db_4.2.52.bb | 97 - meta/packages/db/db_4.3.29.bb | 89 - meta/packages/devicekit/devicekit-power_014.bb | 21 - meta/packages/devicekit/devicekit/volatile | 1 - meta/packages/devicekit/devicekit_003.bb | 16 - meta/packages/devicekit/devicekit_git.bb | 35 - .../dhcp-4.1.1-P1/dhcp-3.0.3-dhclient-dbus.patch | 84 - .../dhcp/dhcp-4.1.1-P1/fix-client-path.patch | 21 - meta/packages/dhcp/dhcp-4.1.1-P1/fixincludes.patch | 10 - meta/packages/dhcp/dhcp-4.1.1-P1/noattrmode.patch | 20 - meta/packages/dhcp/dhcp-4.1.1-P1/site.h | 21 - meta/packages/dhcp/dhcp3.inc | 53 - meta/packages/dhcp/dhcp4.inc | 57 - meta/packages/dhcp/dhcp_4.1.1-P1.bb | 7 - meta/packages/dhcp/files/default-relay | 12 - meta/packages/dhcp/files/default-server | 7 - meta/packages/dhcp/files/dhclient.conf | 50 - meta/packages/dhcp/files/dhcpd.conf | 108 - meta/packages/dhcp/files/init-relay | 44 - meta/packages/dhcp/files/init-server | 44 - meta/packages/diffutils/diffutils_2.8.1.bb | 38 - meta/packages/enchant/enchant_1.6.0.bb | 22 - meta/packages/exmap-console/exmap-console.inc | 59 - meta/packages/exmap-console/exmap-console_0.4.1.bb | 3 - meta/packages/exmap-console/exmap-console_svn.bb | 8 - meta/packages/farsight/farsight2_0.0.9.bb | 24 - meta/packages/farsight/libnice_0.0.6.bb | 23 - .../findutils-4.2.31/gnulib-extension.patch | 54 - .../findutils/findutils-4.4.2/01-27017.patch | 779 - .../findutils/findutils-4.4.2/02-28824.patch | 292 - .../findutils/findutils-4.4.2/03-28872.patch | 56 - meta/packages/findutils/findutils.inc | 19 - meta/packages/findutils/findutils_4.2.31.bb | 37 - meta/packages/findutils/findutils_4.4.2.bb | 27 - meta/packages/fstests/fstests_svn.bb | 18 - .../fuse-2.7.2/not-run-updaterc.d-on-host.patch | 15 - meta/packages/fuse/fuse.inc | 13 - meta/packages/fuse/fuse_2.7.2.bb | 22 - meta/packages/gdbm/gdbm-1.8.3/libtool-mode.patch | 20 - meta/packages/gdbm/gdbm-1.8.3/makefile.patch | 59 - meta/packages/gdbm/gdbm_1.8.3.bb | 16 - .../gnutls/gnutls-2.8.6/configure-fix.patch | 64 - .../gnutls/gnutls-2.8.6/gnutls-openssl.patch | 124 - .../gnutls/gnutls-2.8.6/gnutls-texinfo-euro.patch | 16 - meta/packages/gnutls/gnutls.inc | 44 - meta/packages/gnutls/gnutls_2.8.6.bb | 7 - meta/packages/gnutls/libtasn1_2.7.bb | 21 - meta/packages/gperf/gperf.inc | 22 - meta/packages/gperf/gperf_3.0.3.bb | 7 - meta/packages/gperf/gperf_3.0.4.bb | 3 - .../gpgme/gpgme-1.3.0/disable_gpgconf_check.patch | 38 - meta/packages/gpgme/gpgme_1.3.0.bb | 25 - meta/packages/grep/grep-2.5.1a/uclibc-fix.patch | 53 - meta/packages/grep/grep_2.5.1a.bb | 40 - meta/packages/gsm/files/0001-Introduce-ports.patch | 710 - ...ending-commands-before-restarting-the-mod.patch | 74 - ...-segment-incoming-usock-data-into-packets.patch | 77 - .../0004-Handle-read-and-write-return-values.patch | 176 - .../gsm/files/0005-Add-ask-ds-option-forSMS.patch | 130 - .../gsm/files/024_sms-text-in-bracket.patch | 70 - .../packages/gsm/files/025_sms-status-report.patch | 133 - ...027_phonebook-find-and-read-range-support.patch | 423 - ...ell-phonebook-find-and-read-range-support.patch | 264 - meta/packages/gsm/files/default | 59 - meta/packages/gsm/files/fix_machine_init.patch | 23 - meta/packages/gsm/files/gsmd | 47 - meta/packages/gsm/files/install-ts-headers.patch | 11 - .../gsm/files/lgsm_send_fix_return_value.patch | 11 - meta/packages/gsm/gsmd.inc | 93 - meta/packages/gsm/libgsmd_svn.bb | 5 - meta/packages/gzip/gzip-1.3.12/dup-def-fix.patch | 45 - .../gzip/gzip-1.3.12/m4-extensions-fix.patch | 53 - meta/packages/gzip/gzip.inc | 38 - meta/packages/gzip/gzip_1.3.12.bb | 39 - meta/packages/gzip/gzip_1.4.bb | 5 - meta/packages/hal/files/20hal | 58 - meta/packages/hal/files/autoconf.diff | 11 - meta/packages/hal/files/hal-right-input-h.patch | 29 - meta/packages/hal/files/sg-inhibit.patch | 24 - meta/packages/hal/hal-info.inc | 22 - meta/packages/hal/hal-info_20091130.bb | 1 - meta/packages/hal/hal-info_git.bb | 9 - meta/packages/hal/hal.inc | 85 - meta/packages/hal/hal/configure_fix.patch | 60 - meta/packages/hal/hal_0.5.14.bb | 14 - meta/packages/hal/hal_git.bb | 12 - meta/packages/hdparm/hdparm-6.3/bswap.patch | 36 - meta/packages/hdparm/hdparm-6.3/uclibc.patch | 32 - meta/packages/hdparm/hdparm_6.3.bb | 14 - meta/packages/hostap/files/hostap-fw-load.patch | 20 - meta/packages/hostap/files/hostap_cs.conf | 193 - meta/packages/hostap/files/hostap_cs.conf-upstream | 191 - meta/packages/hostap/files/hostap_cs.modalias | 28 - meta/packages/hostap/hostap-conf_1.0.bb | 29 - meta/packages/hostap/hostap-utils.inc | 25 - meta/packages/hostap/hostap-utils_0.4.7.bb | 1 - meta/packages/icu/files/gccfix.patch | 13 - meta/packages/icu/files/noldlibpath.patch | 47 - meta/packages/icu/files/use-g++-for-linking.patch | 67 - meta/packages/icu/icu-3.6.inc | 55 - meta/packages/icu/icu_3.6.bb | 3 - .../insserv/files/40_segfault_virtprov.dpatch | 89 - .../insserv/files/42_loopnochangemsg.dpatch | 20 - meta/packages/insserv/files/crosscompile_fix.patch | 22 - meta/packages/insserv/files/insserv.conf | 41 - meta/packages/insserv/files/make.patch | 58 - meta/packages/insserv/insserv_1.11.0.bb | 17 - .../intltool-0.40.6/intltool-nowarn-0.40.0.patch | 50 - meta/packages/intltool/intltool.inc | 17 - meta/packages/intltool/intltool_0.40.6.bb | 5 - .../iproute2/iproute2-2.6.34/configure-cross.patch | 61 - meta/packages/iproute2/iproute2.inc | 27 - meta/packages/iproute2/iproute2_2.6.34.bb | 6 - meta/packages/iso-codes/iso-codes_3.3.bb | 14 - meta/packages/js/files/buildcc.patch | 20 - meta/packages/js/files/configure.ac | 28 - meta/packages/js/files/jsautocfg.h | 74 - meta/packages/js/files/link_with_gcc.patch | 13 - meta/packages/js/files/usepic.patch | 24 - meta/packages/js/js_1.7.0+1.8.0rc1.bb | 47 - meta/packages/libassuan/libassuan_2.0.0.bb | 15 - meta/packages/libcap/libcap.inc | 34 - meta/packages/libcap/libcap_2.19.bb | 3 - meta/packages/libcheck/libcheck_0.9.8.bb | 16 - meta/packages/libcroco/files/croco.patch | 13 - meta/packages/libcroco/libcroco_0.6.2.bb | 16 - meta/packages/libdaemon/libdaemon_0.14.bb | 14 - meta/packages/libetpan/files/cxx-is-here.patch | 18 - meta/packages/libetpan/libetpan_0.54.bb | 19 - meta/packages/libevent/libevent_1.4.14b.bb | 15 - meta/packages/libffi/libffi_3.0.8.bb | 5 - meta/packages/libfm/libfm_0.1.12.bb | 17 - .../packages/libfribidi/files/libtool-update.patch | 11 - meta/packages/libfribidi/libfribidi_0.10.4.bb | 23 - .../libgcrypt/files/add-pkgconfig-support.patch | 49 - meta/packages/libgcrypt/libgcrypt.inc | 31 - meta/packages/libgcrypt/libgcrypt_1.4.6.bb | 3 - meta/packages/libgdbus/libgdbus_git.bb | 10 - .../libgpg-error/libgpg-error-1.8/pkgconfig.patch | 53 - meta/packages/libgpg-error/libgpg-error_1.8.bb | 24 - meta/packages/libgsf/libgsf_1.14.5.bb | 20 - meta/packages/libgtkstylus/files/gtkstylus.sh | 5 - meta/packages/libgtkstylus/libgtkstylus_0.5.bb | 24 - meta/packages/libical/libical_0.44.bb | 11 - meta/packages/libiconv/libiconv_1.9.2.bb | 21 - meta/packages/libidl/libidl_0.8.12.bb | 16 - meta/packages/libidn/libidn_0.6.14.bb | 26 - meta/packages/libidn/libidn_1.19.bb | 20 - meta/packages/libmpc/libmpc.inc | 6 - meta/packages/libmpc/libmpc_0.8.2.bb | 14 - meta/packages/libnl/libnl/compilefix.patch | 12 - meta/packages/libnl/libnl/local-includes.patch | 11 - meta/packages/libnl/libnl_1.1.bb | 16 - .../packages/libnss-mdns/files/alignment-fix.patch | 11 - meta/packages/libnss-mdns/libnss-mdns_0.10.bb | 36 - meta/packages/liboil/liboil-0.3.17/no-tests.patch | 22 - meta/packages/liboil/liboil_0.3.17.bb | 20 - meta/packages/libomxil/libomxil_0.3.3.bb | 16 - meta/packages/libpcap/libpcap-1.1.1/aclocal.patch | 165 - .../libpcap/libpcap-1.1.1/ieee80215-arphrd.patch | 22 - meta/packages/libpcap/libpcap.inc | 24 - meta/packages/libpcap/libpcap_1.1.1.bb | 17 - meta/packages/libpcre/files/pcre-cross.patch | 25 - meta/packages/libpcre/libpcre_8.10.bb | 53 - meta/packages/libproxy/libproxy_0.4.3.bb | 26 - meta/packages/librds/librds_0.0.1.bb | 11 - meta/packages/librsvg/librsvg_2.18.2.bb | 31 - meta/packages/librsvg/librsvg_2.22.3.bb | 31 - meta/packages/librsvg/librsvg_2.26.3.bb | 41 - meta/packages/libsdl/files/acinclude.m4 | 189 - meta/packages/libsdl/files/configure_tweak.patch | 1167 - .../libsdl/files/directfb_obsolete_calls.patch | 33 - meta/packages/libsdl/files/extra-keys.patch | 53 - meta/packages/libsdl/files/kernel-asm-page.patch | 13 - meta/packages/libsdl/libsdl-nativesdk_1.2.11.bb | 31 - meta/packages/libsoup/libsoup-2.4_2.31.2.bb | 17 - meta/packages/libsoup/libsoup-2.4_2.4.1.bb | 11 - meta/packages/libsoup/libsoup_2.2.100.bb | 14 - meta/packages/liburcu/liburcu_0.4.6.bb | 24 - .../0.1.0-beta1-gcc3.4-fix.patch | 13 - meta/packages/libusb/libusb-compat_0.1.3.bb | 23 - meta/packages/libusb/libusb1_1.0.8.bb | 14 - meta/packages/libxslt/libxslt/pkgconfig_fix.patch | 22 - meta/packages/libxslt/libxslt_1.1.26.bb | 26 - meta/packages/lrzsz/lrzsz-0.12.20/autotools.patch | 37 - meta/packages/lrzsz/lrzsz-0.12.20/gettext.patch | 21882 ------------------- meta/packages/lrzsz/lrzsz-0.12.20/makefile.patch | 20 - meta/packages/lrzsz/lrzsz_0.12.20.bb | 33 - meta/packages/lsof/lsof_4.83.bb | 41 - meta/packages/lzo/lzo-2.03/acinclude.m4 | 358 - meta/packages/lzo/lzo-2.03/autofoo.patch | 17 - meta/packages/lzo/lzo_2.03.bb | 22 - .../mozilla-headless-services/confighack.patch | 13 - .../mozilla-headless-services_git.bb | 14 - ...ial-Gtk-clipboard-support-to-moz-headless.patch | 1478 -- .../mozilla-headless/autoconffix.patch | 66 - .../mozilla-headless/buildfixhack.patch | 14 - .../configurefix-1a622cb7c384.patch | 764 - .../mozilla-headless/configurefix.patch | 774 - .../mozilla-headless/i386/jsautocfg.h | 21 - .../mozilla-headless/i486/jsautocfg.h | 21 - .../mozilla-headless/i586/jsautocfg.h | 21 - .../mozilla-headless/i686/jsautocfg.h | 21 - .../mozilla-headless/mozilla-headless/mozconfig | 23 - .../mozilla-headless/mozilla-jemalloc.patch | 24 - .../removebadrpath-1a622cb7c384.patch | 26 - .../mozilla-headless/removebadrpath.patch | 44 - .../mozilla-headless/mozilla-headless_hg.bb | 99 - meta/packages/mozilla/files/eabi-fix.patch | 66 - meta/packages/mozilla/files/eabi-fix2.patch | 56 - meta/packages/mozilla/files/eabi-fix3.patch | 15 - meta/packages/mozilla/files/minimo.desktop | 9 - meta/packages/mozilla/files/minimo.png | Bin 4323 -> 0 bytes meta/packages/mozilla/minimo/bug-322806.diff | 13 - meta/packages/mozilla/minimo/minimo | 4 - meta/packages/mozilla/minimo/minimo.patch | 356 - meta/packages/mozilla/minimo/minimo.png | Bin 4323 -> 0 bytes meta/packages/mozilla/minimo/mozconfig | 36 - meta/packages/mozilla/minimo_cvs.bb | 153 - meta/packages/nasm/nasm_2.07.bb | 24 - meta/packages/ncurses/ncurses.inc | 99 - meta/packages/ncurses/ncurses/makefile_tweak.patch | 89 - meta/packages/ncurses/ncurses/visibility.patch | 4904 ----- meta/packages/ncurses/ncurses_5.4.bb | 8 - meta/packages/neon/neon-0.29.3/pkgconfig.patch | 16 - meta/packages/neon/neon_0.29.3.bb | 16 - .../network-suspend-scripts.bb | 22 - .../network-suspend-scripts/ifupdown | 26 - .../network-suspend-scripts/usbnet | 16 - .../files/70NetworkManagerApplet.shbg | 4 - .../networkmanager/files/99_networkmanager | 1 - meta/packages/networkmanager/files/NetworkManager | 43 - .../networkmanager/files/allow-disabling.patch | 45 - .../networkmanager/files/applet-no-animation.patch | 234 - .../networkmanager/files/applet-no-gnome.diff | 59 - meta/packages/networkmanager/files/libnlfix.patch | 29 - .../networkmanager/files/makefile-fix.patch | 17 - .../packages/networkmanager/files/nmutil-fix.patch | 12 - .../packages/networkmanager/files/no-restarts.diff | 21 - meta/packages/networkmanager/files/no_vpn.patch | 13 - .../networkmanager/networkmanager-applet_svn.bb | 33 - meta/packages/networkmanager/networkmanager_svn.bb | 51 - meta/packages/nfs-utils/libnfsidmap_0.23.bb | 13 - .../nfs-utils/nfs-utils-1.0.6-uclibc.patch | 18 - meta/packages/nfs-utils/nfs-utils/nfsserver | 161 - meta/packages/nfs-utils/nfs-utils_1.2.2.bb | 51 - meta/packages/oh/qemu-config.bb | 36 - meta/packages/oh/qemu-config/anjuta-remote-run | 7 - meta/packages/oh/qemu-config/distcc.sh | 4 - meta/packages/oh/qemu-config/exports | 1 - meta/packages/oh/qemu-config/qemu-autostart | 37 - .../oh/qemu-config/qemuarm/shutdown.desktop | 10 - meta/packages/oh/qemu-config/shutdown.desktop | 10 - meta/packages/oh/usbinit.bb | 18 - meta/packages/oh/usbinit/usb-gether | 23 - meta/packages/ohm/ohm/fix_configure.patch | 39 - meta/packages/ohm/ohm_git.bb | 44 - .../openobex/files/disable-cable-test.patch | 16 - .../openobex/files/libusb_crosscompile_check.patch | 13 - meta/packages/openobex/openobex_1.5.bb | 23 - .../openssl/openssl-0.9.8o/configure-targets.patch | 24 - .../openssl/openssl-0.9.8o/debian/ca.patch | 20 - .../openssl-0.9.8o/debian/config-hurd.patch | 15 - .../openssl-0.9.8o/debian/debian-targets.patch | 54 - .../openssl-0.9.8o/debian/engines-path.patch | 47 - .../openssl-0.9.8o/debian/kfreebsd-pipe.patch | 13 - .../openssl-0.9.8o/debian/make-targets.patch | 13 - .../openssl/openssl-0.9.8o/debian/man-dir.patch | 13 - .../openssl-0.9.8o/debian/man-section.patch | 32 - .../openssl/openssl-0.9.8o/debian/no-rpath.patch | 13 - .../openssl-0.9.8o/debian/no-symbolic.patch | 13 - .../openssl/openssl-0.9.8o/debian/perl-path.diff | 760 - .../openssl/openssl-0.9.8o/debian/pic.patch | 301 - .../openssl/openssl-0.9.8o/debian/pkg-config.patch | 34 - .../openssl/openssl-0.9.8o/debian/rc4-amd64.patch | 14 - .../openssl/openssl-0.9.8o/debian/rehash-crt.patch | 33 - .../openssl/openssl-0.9.8o/debian/rehash_pod.patch | 60 - meta/packages/openssl/openssl-0.9.8o/debian/series | 20 - .../openssl-0.9.8o/debian/shared-lib-ext.patch | 14 - .../openssl/openssl-0.9.8o/debian/stddef.patch | 12 - .../openssl/openssl-0.9.8o/debian/valgrind.patch | 15 - .../openssl-0.9.8o/debian/version-script.patch | 33 - .../openssl/openssl-0.9.8o/shared-libs.patch | 48 - meta/packages/openssl/openssl.inc | 100 - meta/packages/openssl/openssl_0.9.8o.bb | 28 - .../openswan/openswan-2.4.7/installflags.patch | 13 - .../openswan-2.4.7/ld-library-path-breakage.patch | 26 - .../openswan-2.4.7/openswan-2.4.7-gentoo.patch | 377 - meta/packages/openswan/openswan_2.4.7.bb | 36 - .../opensync/libopensync-0.37/build-in-src.patch | 18 - .../packages/opensync/libopensync-0.37/cmake.patch | 17 - .../libopensync-0.37/no-python-check.patch | 16 - .../libopensync-plugin-evolution2/0.37-fixes.patch | 23 - .../opensync/libopensync-plugin-evolution2_0.36.bb | 7 - .../opensync/libopensync-plugin-file_0.37.bb | 1 - .../libopensync-plugin-google-calendar_0.36.bb | 1 - .../opensync/libopensync-plugin-irmc_0.36.bb | 3 - .../libopensync-plugin-syncml/fixerror.patch | 13 - .../opensync/libopensync-plugin-syncml_0.38.bb | 7 - .../opensync/libopensync-plugin-vformat_0.37.bb | 3 - meta/packages/opensync/libopensync-plugin_0.36.inc | 9 - meta/packages/opensync/libopensync_0.37.bb | 25 - .../packages/opensync/libsyncml/build-in-src.patch | 19 - meta/packages/opensync/libsyncml_0.5.4.bb | 17 - meta/packages/opensync/msynctool_0.37.bb | 7 - meta/packages/pam/libpam-1.1.1/99_pam | 1 - .../pam/libpam-1.1.1/disable_crossbinary.patch | 34 - .../packages/pam/libpam-1.1.1/pam.d/common-account | 25 - meta/packages/pam/libpam-1.1.1/pam.d/common-auth | 18 - .../pam/libpam-1.1.1/pam.d/common-password | 26 - .../packages/pam/libpam-1.1.1/pam.d/common-session | 19 - .../pam.d/common-session-noninteractive | 19 - meta/packages/pam/libpam-1.1.1/pam.d/other | 27 - meta/packages/pam/libpam_1.1.1.bb | 73 - meta/packages/parted/parted-1.9.0/no_check.patch | 18 - meta/packages/parted/parted-1.9.0/syscalls.patch | 53 - meta/packages/parted/parted_1.9.0.bb | 16 - meta/packages/pm-utils/pm-utils_1.3.0.bb | 16 - meta/packages/polkit/polkit-gnome_0.96.bb | 18 - meta/packages/polkit/polkit_0.96.bb | 14 - .../pong-clock/pong-clock/pong-clock-no-flicker.c | 410 - meta/packages/pong-clock/pong-clock_1.0.bb | 16 - meta/packages/poppler/poppler-data_0.1.bb | 16 - meta/packages/poppler/poppler-fpu.inc | 6 - meta/packages/poppler/poppler.inc | 18 - meta/packages/poppler/poppler_0.9.2.bb | 2 - meta/packages/popt/popt_1.16.bb | 14 - .../portmap/portmap-6.0/destdir-no-strip.patch | 44 - .../packages/portmap/portmap-6.0/tcpd-config.patch | 28 - meta/packages/portmap/portmap.inc | 31 - meta/packages/portmap/portmap/portmap.init | 59 - meta/packages/portmap/portmap_6.0.bb | 20 - meta/packages/ppp-dialin/files/host-peer | 11 - meta/packages/ppp-dialin/files/ppp-dialin | 3 - meta/packages/ppp-dialin/ppp-dialin_0.1.bb | 35 - meta/packages/ppp/ppp-2.4.5/08setupdns | 12 - meta/packages/ppp/ppp-2.4.5/92removedns | 5 - meta/packages/ppp/ppp-2.4.5/cifdefroute.patch | 290 - meta/packages/ppp/ppp-2.4.5/enable-ipv6.patch | 13 - meta/packages/ppp/ppp-2.4.5/init | 50 - meta/packages/ppp/ppp-2.4.5/ip-down | 43 - meta/packages/ppp/ppp-2.4.5/ip-up | 44 - .../makefile-remove-hard-usr-reference.patch | 19 - meta/packages/ppp/ppp-2.4.5/makefile.patch | 93 - meta/packages/ppp/ppp-2.4.5/poff | 26 - meta/packages/ppp/ppp-2.4.5/pon | 9 - .../ppp/ppp-2.4.5/pppd-resolv-varrun.patch | 43 - meta/packages/ppp/ppp_2.4.5.bb | 77 - meta/packages/psmisc/files/libintl-link.patch | 29 - meta/packages/psmisc/psmisc.inc | 55 - meta/packages/psmisc/psmisc_22.2.bb | 2 - meta/packages/pth/pth_2.0.7.bb | 21 - meta/packages/readline/files/acinclude.m4 | 1815 -- meta/packages/readline/files/configure-fix.patch | 24 - meta/packages/readline/readline.inc | 34 - meta/packages/readline/readline_5.2.bb | 35 - meta/packages/readline/readline_6.1.bb | 3 - meta/packages/resolvconf/resolvconf_1.43.bb | 30 - meta/packages/rsync/rsync-2.6.9/rsyncd.conf | 15 - meta/packages/rxvt-unicode/files/makefile.patch | 20 - meta/packages/rxvt-unicode/files/rxvt.desktop | 11 - meta/packages/rxvt-unicode/files/rxvt.png | Bin 2847 -> 0 bytes meta/packages/rxvt-unicode/files/signedchar.patch | 11 - meta/packages/rxvt-unicode/files/xwc.patch | 28 - .../rxvt-unicode/rxvt-unicode-5.6/xwc.patch | 24 - meta/packages/rxvt-unicode/rxvt-unicode_5.6.bb | 72 - meta/packages/sed/sed-4.1.2/fix_return_type.patch | 16 - meta/packages/sed/sed_4.1.2.bb | 32 - meta/packages/setserial/setserial_2.17.bb | 18 - .../packages/shared-mime-info/shared-mime-info.inc | 28 - .../shared-mime-info/shared-mime-info_0.71.bb | 1 - meta/packages/smart/smart_1.1.bb | 29 - meta/packages/speex/speex_1.2rc1.bb | 24 - meta/packages/sqlite/sqlite3.inc | 33 - meta/packages/sqlite/sqlite3/libtool.patch | 25 - meta/packages/sqlite/sqlite3_3.6.23.1.bb | 3 - meta/packages/strace/strace_4.5.20.bb | 11 - meta/packages/sudo/files/autofoo.patch | 143 - meta/packages/sudo/files/noexec-link.patch | 17 - meta/packages/sudo/files/nostrip.patch | 23 - meta/packages/sudo/site/bit-32 | 2 - meta/packages/sudo/site/bit-64 | 2 - meta/packages/sudo/sudo.inc | 36 - meta/packages/sudo/sudo_1.7.2p7.bb | 7 - meta/packages/sync/libsync_svn.bb | 19 - meta/packages/sysfsutils/sysfsutils_2.1.0.bb | 21 - meta/packages/tar/tar-1.17/m4extensions.patch | 28 - meta/packages/tar/tar.inc | 25 - meta/packages/tar/tar_1.17.bb | 14 - meta/packages/tar/tar_1.23.bb | 9 - .../tcf-agent/tcf-agent/fix_tcf-agent.init.patch | 92 - .../tcf-agent/tcf-agent/terminals_agent.patch | 1025 - meta/packages/tcf-agent/tcf-agent_svn.bb | 36 - .../tcp-wrappers-7.6/00_man_quoting.diff | 75 - .../tcp-wrappers-7.6/01_man_portability.patch | 248 - .../tcp-wrappers-7.6/05_wildcard_matching.patch | 103 - .../tcp-wrappers-7.6/06_fix_gethostbyname.patch | 30 - .../tcp-wrappers-7.6/10_usagi-ipv6.patch | 1253 -- .../tcp-wrappers-7.6/11_tcpd_blacklist.patch | 151 - .../tcp-wrappers-7.6/11_usagi_fix.patch | 45 - .../tcp-wrappers-7.6/12_makefile_config.patch | 81 - .../tcp-wrappers-7.6/13_shlib_weaksym.patch | 253 - .../tcp-wrappers-7.6/14_cidr_support.patch | 66 - .../tcp-wrappers-7.6/15_match_clarify.patch | 12 - .../tcp-wrappers-7.6/expand_remote_port.patch | 71 - .../tcp-wrappers-7.6/have_strerror.patch | 19 - .../tcp-wrappers/tcp-wrappers-7.6/ldflags.patch | 43 - .../tcp-wrappers-7.6/man_fromhost.patch | 21 - .../tcp-wrappers-7.6/restore_sigalarm.patch | 37 - .../tcp-wrappers/tcp-wrappers-7.6/rfc931.diff | 39 - .../tcp-wrappers/tcp-wrappers-7.6/safe_finger.8 | 34 - .../tcp-wrappers-7.6/safe_finger.patch | 29 - .../tcp-wrappers/tcp-wrappers-7.6/sig_fix.patch | 34 - .../tcp-wrappers/tcp-wrappers-7.6/siglongjmp.patch | 30 - .../tcp-wrappers/tcp-wrappers-7.6/size_t.patch | 42 - .../tcp-wrappers-7.6/tcpdchk_libwrapped.patch | 39 - .../tcp-wrappers/tcp-wrappers-7.6/try-from.8 | 28 - meta/packages/tcp-wrappers/tcp-wrappers_7.6.bb | 117 - meta/packages/tzcode/tzcode-native_2009r.bb | 17 - meta/packages/tzdata/tzdata_2010j.bb | 160 - meta/packages/uboot/files/fix-arm920t-eabi.patch | 22 - meta/packages/uboot/u-boot-mkimage-native_1.3.2.bb | 23 - meta/packages/uboot/u-boot-mkimage_2009.08.bb | 25 - .../uboot/u-boot-omap3-git/beagleboard/name.patch | 14 - meta/packages/uboot/u-boot-omap3_git.bb | 20 - meta/packages/uboot/u-boot.inc | 38 - meta/packages/ubootchart/files/sysvinit.patch | 12 - meta/packages/ubootchart/files/ubootchart-stop | 3 - meta/packages/ubootchart/files/ubootchart.desktop | 6 - meta/packages/ubootchart/ubootchart_svn.bb | 37 - meta/packages/unzip/unzip_6.0.bb | 25 - meta/packages/usbutils/usbutils_0.86.bb | 24 - meta/packages/util-linux/files/MCONFIG | 223 - .../util-linux/files/debian-bug392236.patch | 203 - meta/packages/util-linux/files/defines.h | 10 - .../util-linux/files/fdiskbsdlabel_thumb.diff | 12 - meta/packages/util-linux/files/fix-make-c.patch | 41 - meta/packages/util-linux/files/gcc34.patch | 23 - meta/packages/util-linux/files/glibc-fix.patch | 22 - meta/packages/util-linux/files/make_include | 17 - meta/packages/util-linux/files/optional-uuid.patch | 55 - meta/packages/util-linux/files/swapargs.h | 3 - meta/packages/util-linux/files/umount.diff | 19 - meta/packages/util-linux/files/uuid.patch | 22 - .../util-linux/util-linux-2.17.2/tls.patch | 70 - .../util-linux-2.17.2/uclibc-compile.patch | 13 - .../util-linux-ng-replace-siginterrupt.patch | 23 - meta/packages/util-linux/util-linux.inc | 237 - meta/packages/util-linux/util-linux_2.17.2.bb | 11 - meta/packages/vte/vte.inc | 14 - meta/packages/vte/vte_0.24.3.bb | 5 - meta/packages/watchdog/watchdog_5.9.bb | 16 - meta/packages/wbxml/files/no-doc-install.patch | 15 - meta/packages/wbxml/wbxml2_0.9.2.bb | 20 - meta/packages/webkit/files/GNUmakefile.am | 856 - meta/packages/webkit/files/Makefile | 17 - meta/packages/webkit/files/Makefile.shared | 18 - meta/packages/webkit/files/WebKit.pri | 107 - meta/packages/webkit/files/WebKit.pro | 21 - meta/packages/webkit/files/autogen.sh | 63 - meta/packages/webkit/files/configure.ac | 983 - meta/packages/webkit/files/fix_im.patch | 0 meta/packages/webkit/files/gtk-doc.make | 173 - meta/packages/webkit/webkit-gtk_svn.bb | 71 - meta/packages/wv/wv-1.2.0/pkgconfig.patch | 13 - meta/packages/wv/wv_1.2.0.bb | 14 - meta/packages/x11vnc/x11vnc_0.9.3.bb | 11 - meta/packages/xournal/files/ldflags.patch | 15 - meta/packages/xournal/files/no-printing.diff | 178 - meta/packages/xournal/xournal_0.2.bb | 12 - meta/packages/xrestop/xrestop_0.4.bb | 16 - meta/packages/xvideo-tests/xvideo-tests_svn.bb | 13 - meta/packages/yaffs2/files/mkyaffs2image.patch | 345 - meta/packages/yaffs2/files/yaffs2-unioob.patch | 216 - meta/packages/yaffs2/yaffs2-utils.inc | 27 - meta/packages/yaffs2/yaffs2-utils_cvs.bb | 3 - meta/packages/zile/files/for_build.patch | 64 - meta/packages/zile/zile_1.7+2.0beta6.bb | 19 - meta/packages/zip/zip.inc | 24 - meta/packages/zip/zip_3.0.bb | 6 - meta/recipes-bsp/apmd/apmd-3.2.2-14/apmd_proxy | 91 + .../recipes-bsp/apmd/apmd-3.2.2-14/apmd_proxy.conf | 16 + meta/recipes-bsp/apmd/apmd-3.2.2-14/default | 8 + meta/recipes-bsp/apmd/apmd-3.2.2-14/init | 44 + meta/recipes-bsp/apmd/apmd-3.2.2-14/libtool.patch | 29 + meta/recipes-bsp/apmd/apmd-3.2.2-14/unlinux.patch | 21 + .../apmd/apmd-3.2.2-14/workaround.patch | 59 + meta/recipes-bsp/apmd/apmd_3.2.2-14.bb | 63 + meta/recipes-bsp/hostap/files/hostap-fw-load.patch | 20 + meta/recipes-bsp/hostap/files/hostap_cs.conf | 193 + .../hostap/files/hostap_cs.conf-upstream | 191 + meta/recipes-bsp/hostap/files/hostap_cs.modalias | 28 + meta/recipes-bsp/hostap/hostap-conf_1.0.bb | 29 + meta/recipes-bsp/hostap/hostap-utils.inc | 25 + meta/recipes-bsp/hostap/hostap-utils_0.4.7.bb | 1 + .../lrzsz/lrzsz-0.12.20/autotools.patch | 37 + meta/recipes-bsp/lrzsz/lrzsz-0.12.20/gettext.patch | 21882 +++++++++++++++++++ .../recipes-bsp/lrzsz/lrzsz-0.12.20/makefile.patch | 20 + meta/recipes-bsp/lrzsz/lrzsz_0.12.20.bb | 33 + meta/recipes-bsp/pm-utils/pm-utils_1.3.0.bb | 16 + meta/recipes-bsp/qemu-config/qemu-config.bb | 36 + .../qemu-config/qemu-config/anjuta-remote-run | 7 + meta/recipes-bsp/qemu-config/qemu-config/distcc.sh | 4 + meta/recipes-bsp/qemu-config/qemu-config/exports | 1 + .../qemu-config/qemu-config/qemu-autostart | 37 + .../qemu-config/qemuarm/shutdown.desktop | 10 + .../qemu-config/qemu-config/shutdown.desktop | 10 + meta/recipes-bsp/setserial/setserial_2.17.bb | 18 + .../recipes-bsp/uboot/files/fix-arm920t-eabi.patch | 22 + .../uboot/u-boot-mkimage-native_1.3.2.bb | 23 + meta/recipes-bsp/uboot/u-boot-mkimage_2009.08.bb | 25 + .../uboot/u-boot-omap3-git/beagleboard/name.patch | 14 + meta/recipes-bsp/uboot/u-boot-omap3_git.bb | 20 + meta/recipes-bsp/uboot/u-boot.inc | 38 + meta/recipes-bsp/usbinit/usbinit.bb | 18 + meta/recipes-bsp/usbinit/usbinit/usb-gether | 23 + meta/recipes-bsp/usbutils/usbutils_0.86.bb | 24 + .../dhcp-4.1.1-P1/dhcp-3.0.3-dhclient-dbus.patch | 84 + .../dhcp/dhcp-4.1.1-P1/fix-client-path.patch | 21 + .../dhcp/dhcp-4.1.1-P1/fixincludes.patch | 10 + .../dhcp/dhcp-4.1.1-P1/noattrmode.patch | 20 + .../recipes-connectivity/dhcp/dhcp-4.1.1-P1/site.h | 21 + meta/recipes-connectivity/dhcp/dhcp3.inc | 53 + meta/recipes-connectivity/dhcp/dhcp4.inc | 57 + meta/recipes-connectivity/dhcp/dhcp_4.1.1-P1.bb | 7 + meta/recipes-connectivity/dhcp/files/default-relay | 12 + .../recipes-connectivity/dhcp/files/default-server | 7 + meta/recipes-connectivity/dhcp/files/dhclient.conf | 50 + meta/recipes-connectivity/dhcp/files/dhcpd.conf | 108 + meta/recipes-connectivity/dhcp/files/init-relay | 44 + meta/recipes-connectivity/dhcp/files/init-server | 44 + .../farsight/farsight2_0.0.9.bb | 24 + .../recipes-connectivity/farsight/libnice_0.0.6.bb | 23 + .../gsm/files/0001-Introduce-ports.patch | 710 + ...ending-commands-before-restarting-the-mod.patch | 74 + ...-segment-incoming-usock-data-into-packets.patch | 77 + .../0004-Handle-read-and-write-return-values.patch | 176 + .../gsm/files/0005-Add-ask-ds-option-forSMS.patch | 130 + .../gsm/files/024_sms-text-in-bracket.patch | 70 + .../gsm/files/025_sms-status-report.patch | 133 + ...027_phonebook-find-and-read-range-support.patch | 423 + ...ell-phonebook-find-and-read-range-support.patch | 264 + meta/recipes-connectivity/gsm/files/default | 59 + .../gsm/files/fix_machine_init.patch | 23 + meta/recipes-connectivity/gsm/files/gsmd | 47 + .../gsm/files/install-ts-headers.patch | 11 + .../gsm/files/lgsm_send_fix_return_value.patch | 11 + meta/recipes-connectivity/gsm/gsmd.inc | 93 + meta/recipes-connectivity/gsm/libgsmd_svn.bb | 5 + .../iproute2/iproute2-2.6.34/configure-cross.patch | 61 + meta/recipes-connectivity/iproute2/iproute2.inc | 27 + .../iproute2/iproute2_2.6.34.bb | 6 + .../libetpan/files/cxx-is-here.patch | 18 + .../recipes-connectivity/libetpan/libetpan_0.54.bb | 19 + .../libnss-mdns/files/alignment-fix.patch | 11 + .../libnss-mdns/libnss-mdns_0.10.bb | 36 + .../libpcap/libpcap-1.1.1/aclocal.patch | 165 + .../libpcap/libpcap-1.1.1/ieee80215-arphrd.patch | 22 + meta/recipes-connectivity/libpcap/libpcap.inc | 24 + meta/recipes-connectivity/libpcap/libpcap_1.1.1.bb | 17 + .../network-suspend-scripts.bb | 22 + .../network-suspend-scripts/ifupdown | 26 + .../network-suspend-scripts/usbnet | 16 + .../nfs-utils/libnfsidmap_0.23.bb | 13 + .../nfs-utils/nfs-utils-1.0.6-uclibc.patch | 18 + .../nfs-utils/nfs-utils/nfsserver | 161 + .../nfs-utils/nfs-utils_1.2.2.bb | 51 + .../openssl/openssl-0.9.8o/configure-targets.patch | 24 + .../openssl/openssl-0.9.8o/debian/ca.patch | 20 + .../openssl-0.9.8o/debian/config-hurd.patch | 15 + .../openssl-0.9.8o/debian/debian-targets.patch | 54 + .../openssl-0.9.8o/debian/engines-path.patch | 47 + .../openssl-0.9.8o/debian/kfreebsd-pipe.patch | 13 + .../openssl-0.9.8o/debian/make-targets.patch | 13 + .../openssl/openssl-0.9.8o/debian/man-dir.patch | 13 + .../openssl-0.9.8o/debian/man-section.patch | 32 + .../openssl/openssl-0.9.8o/debian/no-rpath.patch | 13 + .../openssl-0.9.8o/debian/no-symbolic.patch | 13 + .../openssl/openssl-0.9.8o/debian/perl-path.diff | 760 + .../openssl/openssl-0.9.8o/debian/pic.patch | 301 + .../openssl/openssl-0.9.8o/debian/pkg-config.patch | 34 + .../openssl/openssl-0.9.8o/debian/rc4-amd64.patch | 14 + .../openssl/openssl-0.9.8o/debian/rehash-crt.patch | 33 + .../openssl/openssl-0.9.8o/debian/rehash_pod.patch | 60 + .../openssl/openssl-0.9.8o/debian/series | 20 + .../openssl-0.9.8o/debian/shared-lib-ext.patch | 14 + .../openssl/openssl-0.9.8o/debian/stddef.patch | 12 + .../openssl/openssl-0.9.8o/debian/valgrind.patch | 15 + .../openssl-0.9.8o/debian/version-script.patch | 33 + .../openssl/openssl-0.9.8o/shared-libs.patch | 48 + meta/recipes-connectivity/openssl/openssl.inc | 100 + .../recipes-connectivity/openssl/openssl_0.9.8o.bb | 28 + .../openswan/openswan-2.4.7/installflags.patch | 13 + .../openswan-2.4.7/ld-library-path-breakage.patch | 26 + .../openswan-2.4.7/openswan-2.4.7-gentoo.patch | 377 + .../openswan/openswan_2.4.7.bb | 36 + .../opensync/libopensync-0.37/build-in-src.patch | 18 + .../opensync/libopensync-0.37/cmake.patch | 17 + .../libopensync-0.37/no-python-check.patch | 16 + .../libopensync-plugin-evolution2/0.37-fixes.patch | 23 + .../opensync/libopensync-plugin-evolution2_0.36.bb | 7 + .../opensync/libopensync-plugin-file_0.37.bb | 1 + .../libopensync-plugin-google-calendar_0.36.bb | 1 + .../opensync/libopensync-plugin-irmc_0.36.bb | 3 + .../libopensync-plugin-syncml/fixerror.patch | 13 + .../opensync/libopensync-plugin-syncml_0.38.bb | 7 + .../opensync/libopensync-plugin-vformat_0.37.bb | 3 + .../opensync/libopensync-plugin_0.36.inc | 9 + .../opensync/libopensync_0.37.bb | 25 + meta/recipes-connectivity/opensync/libsync_svn.bb | 19 + .../opensync/libsyncml/build-in-src.patch | 19 + .../opensync/libsyncml_0.5.4.bb | 17 + .../opensync/msynctool_0.37.bb | 7 + .../portmap/portmap-6.0/destdir-no-strip.patch | 44 + .../portmap/portmap-6.0/tcpd-config.patch | 28 + meta/recipes-connectivity/portmap/portmap.inc | 31 + .../portmap/portmap/portmap.init | 59 + meta/recipes-connectivity/portmap/portmap_6.0.bb | 20 + .../ppp-dialin/files/host-peer | 11 + .../ppp-dialin/files/ppp-dialin | 3 + .../ppp-dialin/ppp-dialin_0.1.bb | 35 + meta/recipes-connectivity/ppp/ppp-2.4.5/08setupdns | 12 + .../recipes-connectivity/ppp/ppp-2.4.5/92removedns | 5 + .../ppp/ppp-2.4.5/cifdefroute.patch | 290 + .../ppp/ppp-2.4.5/enable-ipv6.patch | 13 + meta/recipes-connectivity/ppp/ppp-2.4.5/init | 50 + meta/recipes-connectivity/ppp/ppp-2.4.5/ip-down | 43 + meta/recipes-connectivity/ppp/ppp-2.4.5/ip-up | 44 + .../makefile-remove-hard-usr-reference.patch | 19 + .../ppp/ppp-2.4.5/makefile.patch | 93 + meta/recipes-connectivity/ppp/ppp-2.4.5/poff | 26 + meta/recipes-connectivity/ppp/ppp-2.4.5/pon | 9 + .../ppp/ppp-2.4.5/pppd-resolv-varrun.patch | 43 + meta/recipes-connectivity/ppp/ppp_2.4.5.bb | 77 + .../resolvconf/resolvconf_1.43.bb | 30 + .../wbxml/files/no-doc-install.patch | 15 + meta/recipes-connectivity/wbxml/wbxml2_0.9.2.bb | 20 + .../coreutils/coreutils-6.9/futimens.patch | 61 + .../coreutils/coreutils-6.9/gnulib_m4.patch | 19 + .../coreutils/coreutils-6.9/man-touch.patch | 22 + meta/recipes-core/coreutils/coreutils_6.9.bb | 78 + meta/recipes-core/coreutils/coreutils_8.5.bb | 67 + meta/recipes-core/ncurses/ncurses.inc | 99 + .../ncurses/ncurses/makefile_tweak.patch | 89 + meta/recipes-core/ncurses/ncurses/visibility.patch | 4904 +++++ meta/recipes-core/ncurses/ncurses_5.4.bb | 8 + meta/recipes-core/readline/files/acinclude.m4 | 1815 ++ .../readline/files/configure-fix.patch | 24 + meta/recipes-core/readline/readline.inc | 34 + meta/recipes-core/readline/readline_5.2.bb | 35 + meta/recipes-core/readline/readline_6.1.bb | 3 + meta/recipes-core/sysfsutils/sysfsutils_2.1.0.bb | 21 + meta/recipes-core/util-linux/files/MCONFIG | 223 + .../util-linux/files/debian-bug392236.patch | 203 + meta/recipes-core/util-linux/files/defines.h | 10 + .../util-linux/files/fdiskbsdlabel_thumb.diff | 12 + .../recipes-core/util-linux/files/fix-make-c.patch | 41 + meta/recipes-core/util-linux/files/gcc34.patch | 23 + meta/recipes-core/util-linux/files/glibc-fix.patch | 22 + meta/recipes-core/util-linux/files/make_include | 17 + .../util-linux/files/optional-uuid.patch | 55 + meta/recipes-core/util-linux/files/swapargs.h | 3 + meta/recipes-core/util-linux/files/umount.diff | 19 + meta/recipes-core/util-linux/files/uuid.patch | 22 + .../util-linux/util-linux-2.17.2/tls.patch | 70 + .../util-linux-2.17.2/uclibc-compile.patch | 13 + .../util-linux-ng-replace-siginterrupt.patch | 23 + meta/recipes-core/util-linux/util-linux.inc | 237 + meta/recipes-core/util-linux/util-linux_2.17.2.bb | 11 + .../exmap-console/exmap-console.inc | 59 + .../exmap-console/exmap-console_0.4.1.bb | 3 + .../exmap-console/exmap-console_svn.bb | 8 + .../gmp/gmp-4.2.1/disable-stdc.patch | 31 - meta/recipes-devtools/gmp/gmp.inc | 16 - meta/recipes-devtools/gmp/gmp/amd64.patch | 14 - meta/recipes-devtools/gmp/gmp/configure.patch | 195 - meta/recipes-devtools/gmp/gmp/sh4-asmfix.patch | 26 - meta/recipes-devtools/gmp/gmp/use-includedir.patch | 13 - meta/recipes-devtools/gmp/gmp_4.2.1.bb | 14 - meta/recipes-devtools/gmp/gmp_5.0.1.bb | 7 - .../insserv/files/40_segfault_virtprov.dpatch | 89 + .../insserv/files/42_loopnochangemsg.dpatch | 20 + .../insserv/files/crosscompile_fix.patch | 22 + meta/recipes-devtools/insserv/files/insserv.conf | 41 + meta/recipes-devtools/insserv/files/make.patch | 58 + meta/recipes-devtools/insserv/insserv_1.11.0.bb | 17 + .../intltool-0.40.6/intltool-nowarn-0.40.0.patch | 50 + meta/recipes-devtools/intltool/intltool.inc | 17 + meta/recipes-devtools/intltool/intltool_0.40.6.bb | 5 + meta/recipes-devtools/mpfr/mpfr.inc | 6 - meta/recipes-devtools/mpfr/mpfr_3.0.0.bb | 9 - meta/recipes-devtools/nasm/nasm_2.07.bb | 24 + .../recipes-devtools/rsync/rsync-2.6.9/rsyncd.conf | 15 + meta/recipes-devtools/strace/strace_4.5.20.bb | 11 + .../tcf-agent/tcf-agent/fix_tcf-agent.init.patch | 92 + .../tcf-agent/tcf-agent/terminals_agent.patch | 1025 + meta/recipes-devtools/tcf-agent/tcf-agent_svn.bb | 36 + .../ubootchart/files/sysvinit.patch | 12 + .../ubootchart/files/ubootchart-stop | 3 + .../ubootchart/files/ubootchart.desktop | 6 + meta/recipes-devtools/ubootchart/ubootchart_svn.bb | 37 + .../yaffs2/files/mkyaffs2image.patch | 345 + .../yaffs2/files/yaffs2-unioob.patch | 216 + meta/recipes-devtools/yaffs2/yaffs2-utils.inc | 27 + meta/recipes-devtools/yaffs2/yaffs2-utils_cvs.bb | 3 + meta/recipes-extended/blktool/blktool_4-6.bb | 14 + .../recipes-extended/bzip2/bzip2-1.0.5/Makefile.am | 41 + .../bzip2/bzip2-1.0.5/configure.ac | 14 + meta/recipes-extended/bzip2/bzip2_1.0.5.bb | 41 + .../devicekit/devicekit-power_014.bb | 21 + meta/recipes-extended/devicekit/devicekit/volatile | 1 + meta/recipes-extended/devicekit/devicekit_003.bb | 16 + meta/recipes-extended/devicekit/devicekit_git.bb | 35 + meta/recipes-extended/diffutils/diffutils_2.8.1.bb | 38 + .../findutils-4.2.31/gnulib-extension.patch | 54 + .../findutils/findutils-4.4.2/01-27017.patch | 779 + .../findutils/findutils-4.4.2/02-28824.patch | 292 + .../findutils/findutils-4.4.2/03-28872.patch | 56 + meta/recipes-extended/findutils/findutils.inc | 19 + .../recipes-extended/findutils/findutils_4.2.31.bb | 37 + meta/recipes-extended/findutils/findutils_4.4.2.bb | 27 + meta/recipes-extended/gperf/gperf.inc | 22 + meta/recipes-extended/gperf/gperf_3.0.3.bb | 7 + meta/recipes-extended/gperf/gperf_3.0.4.bb | 3 + .../grep/grep-2.5.1a/uclibc-fix.patch | 53 + meta/recipes-extended/grep/grep_2.5.1a.bb | 40 + .../gzip/gzip-1.3.12/dup-def-fix.patch | 45 + .../gzip/gzip-1.3.12/m4-extensions-fix.patch | 53 + meta/recipes-extended/gzip/gzip.inc | 38 + meta/recipes-extended/gzip/gzip_1.3.12.bb | 39 + meta/recipes-extended/gzip/gzip_1.4.bb | 5 + .../recipes-extended/hdparm/hdparm-6.3/bswap.patch | 36 + .../hdparm/hdparm-6.3/uclibc.patch | 32 + meta/recipes-extended/hdparm/hdparm_6.3.bb | 14 + meta/recipes-extended/libidn/libidn_0.6.14.bb | 26 + meta/recipes-extended/libidn/libidn_1.19.bb | 20 + meta/recipes-extended/lsof/lsof_4.83.bb | 41 + meta/recipes-extended/pam/libpam-1.1.1/99_pam | 1 + .../pam/libpam-1.1.1/disable_crossbinary.patch | 34 + .../pam/libpam-1.1.1/pam.d/common-account | 25 + .../pam/libpam-1.1.1/pam.d/common-auth | 18 + .../pam/libpam-1.1.1/pam.d/common-password | 26 + .../pam/libpam-1.1.1/pam.d/common-session | 19 + .../pam.d/common-session-noninteractive | 19 + meta/recipes-extended/pam/libpam-1.1.1/pam.d/other | 27 + meta/recipes-extended/pam/libpam_1.1.1.bb | 73 + .../parted/parted-1.9.0/no_check.patch | 18 + .../parted/parted-1.9.0/syscalls.patch | 53 + meta/recipes-extended/parted/parted_1.9.0.bb | 16 + meta/recipes-extended/polkit/polkit-gnome_0.96.bb | 18 + meta/recipes-extended/polkit/polkit_0.96.bb | 14 + .../psmisc/files/libintl-link.patch | 29 + meta/recipes-extended/psmisc/psmisc.inc | 55 + meta/recipes-extended/psmisc/psmisc_22.2.bb | 2 + .../sed/sed-4.1.2/fix_return_type.patch | 16 + meta/recipes-extended/sed/sed_4.1.2.bb | 32 + meta/recipes-extended/sudo/files/autofoo.patch | 143 + meta/recipes-extended/sudo/files/noexec-link.patch | 17 + meta/recipes-extended/sudo/files/nostrip.patch | 23 + meta/recipes-extended/sudo/site/bit-32 | 2 + meta/recipes-extended/sudo/site/bit-64 | 2 + meta/recipes-extended/sudo/sudo.inc | 36 + meta/recipes-extended/sudo/sudo_1.7.2p7.bb | 7 + .../tcp-wrappers-7.6/00_man_quoting.diff | 75 + .../tcp-wrappers-7.6/01_man_portability.patch | 248 + .../tcp-wrappers-7.6/05_wildcard_matching.patch | 103 + .../tcp-wrappers-7.6/06_fix_gethostbyname.patch | 30 + .../tcp-wrappers-7.6/10_usagi-ipv6.patch | 1253 ++ .../tcp-wrappers-7.6/11_tcpd_blacklist.patch | 151 + .../tcp-wrappers-7.6/11_usagi_fix.patch | 45 + .../tcp-wrappers-7.6/12_makefile_config.patch | 81 + .../tcp-wrappers-7.6/13_shlib_weaksym.patch | 253 + .../tcp-wrappers-7.6/14_cidr_support.patch | 66 + .../tcp-wrappers-7.6/15_match_clarify.patch | 12 + .../tcp-wrappers-7.6/expand_remote_port.patch | 71 + .../tcp-wrappers-7.6/have_strerror.patch | 19 + .../tcp-wrappers/tcp-wrappers-7.6/ldflags.patch | 43 + .../tcp-wrappers-7.6/man_fromhost.patch | 21 + .../tcp-wrappers-7.6/restore_sigalarm.patch | 37 + .../tcp-wrappers/tcp-wrappers-7.6/rfc931.diff | 39 + .../tcp-wrappers/tcp-wrappers-7.6/safe_finger.8 | 34 + .../tcp-wrappers-7.6/safe_finger.patch | 29 + .../tcp-wrappers/tcp-wrappers-7.6/sig_fix.patch | 34 + .../tcp-wrappers/tcp-wrappers-7.6/siglongjmp.patch | 30 + .../tcp-wrappers/tcp-wrappers-7.6/size_t.patch | 42 + .../tcp-wrappers-7.6/tcpdchk_libwrapped.patch | 39 + .../tcp-wrappers/tcp-wrappers-7.6/try-from.8 | 28 + .../tcp-wrappers/tcp-wrappers_7.6.bb | 117 + .../recipes-extended/tzcode/tzcode-native_2009r.bb | 17 + meta/recipes-extended/tzdata/tzdata_2010j.bb | 160 + meta/recipes-extended/unzip/unzip_6.0.bb | 25 + meta/recipes-extended/watchdog/watchdog_5.9.bb | 16 + meta/recipes-extended/zile/files/for_build.patch | 64 + meta/recipes-extended/zile/zile_1.7+2.0beta6.bb | 19 + meta/recipes-extended/zip/zip.inc | 24 + meta/recipes-extended/zip/zip_3.0.bb | 6 + meta/recipes-gnome/libffi/libffi_3.0.8.bb | 5 + meta/recipes-gnome/libgsf/libgsf_1.14.5.bb | 20 + meta/recipes-gnome/libgtkstylus/files/gtkstylus.sh | 5 + .../recipes-gnome/libgtkstylus/libgtkstylus_0.5.bb | 24 + meta/recipes-gnome/librsvg/librsvg_2.18.2.bb | 31 + meta/recipes-gnome/librsvg/librsvg_2.22.3.bb | 31 + meta/recipes-gnome/librsvg/librsvg_2.26.3.bb | 41 + meta/recipes-gnome/wv/wv-1.2.0/pkgconfig.patch | 13 + meta/recipes-gnome/wv/wv_1.2.0.bb | 14 + meta/recipes-graphics/clutter/clutter-helix.inc | 15 - meta/recipes-graphics/clutter/clutter-helix_git.bb | 8 - meta/recipes-graphics/clutter/clutter-mozembed.inc | 14 - .../clutter/clutter-mozembed_git.bb | 14 - meta/recipes-graphics/fstests/fstests_svn.bb | 18 + meta/recipes-graphics/libsdl/files/acinclude.m4 | 189 + .../libsdl/files/configure_tweak.patch | 1167 + .../libsdl/files/directfb_obsolete_calls.patch | 33 + .../recipes-graphics/libsdl/files/extra-keys.patch | 53 + .../libsdl/files/kernel-asm-page.patch | 13 + .../libsdl/libsdl-nativesdk_1.2.11.bb | 31 + .../pong-clock/pong-clock/pong-clock-no-flicker.c | 410 + meta/recipes-graphics/pong-clock/pong-clock_1.0.bb | 16 + meta/recipes-graphics/x11vnc/x11vnc_0.9.3.bb | 11 + meta/recipes-graphics/xrestop/xrestop_0.4.bb | 16 + .../xvideo-tests/xvideo-tests_svn.bb | 13 + .../fuse-2.7.2/not-run-updaterc.d-on-host.patch | 15 + meta/recipes-kernel/fuse/fuse.inc | 13 + meta/recipes-kernel/fuse/fuse_2.7.2.bb | 22 + meta/recipes-multimedia/libomxil/libomxil_0.3.3.bb | 16 + meta/recipes-multimedia/speex/speex_1.2rc1.bb | 24 + .../qmake/qmake2-cross/0001-fix-mkspecs.patch | 120 - .../qmake/qmake2-cross/linux-oe-qmake.conf | 1 - .../qmake/qmake2-cross/use-lflags-last.patch | 22 - meta/recipes-qt/qmake/qmake2-cross_2.10a.bb | 74 - meta/recipes-qt/uicmoc/uicmoc4-native.inc | 67 - meta/recipes-qt/uicmoc/uicmoc4-native_4.3.2.bb | 1 - meta/recipes-sato/claws-mail/claws-mail.inc | 57 + meta/recipes-sato/claws-mail/claws-mail_2.9.1.bb | 1 + .../claws-plugin-gtkhtml2-viewer_0.15.bb | 14 + .../claws-mail/claws-plugin-maildir_0.24.4.bb | 14 + .../claws-mail/claws-plugin-mailmbox_1.13.bb | 14 + .../claws-mail/claws-plugin-rssyl_0.13.bb | 14 + meta/recipes-sato/claws-mail/files/desktop.patch | 19 + meta/recipes-sato/claws-mail/files/fix-build.patch | 24 + .../claws-mail/files/owl-window-menu.patch | 1009 + .../claws-mail/files/streamline-ui.patch | 1008 + meta/recipes-sato/libical/libical_0.44.bb | 11 + .../recipes-sato/rxvt-unicode/files/makefile.patch | 20 + meta/recipes-sato/rxvt-unicode/files/rxvt.desktop | 11 + meta/recipes-sato/rxvt-unicode/files/rxvt.png | Bin 0 -> 2847 bytes .../rxvt-unicode/files/signedchar.patch | 11 + meta/recipes-sato/rxvt-unicode/files/xwc.patch | 28 + .../rxvt-unicode/rxvt-unicode-5.6/xwc.patch | 24 + meta/recipes-sato/rxvt-unicode/rxvt-unicode_5.6.bb | 72 + meta/recipes-sato/webkit/files/GNUmakefile.am | 856 + meta/recipes-sato/webkit/files/Makefile | 17 + meta/recipes-sato/webkit/files/Makefile.shared | 18 + meta/recipes-sato/webkit/files/WebKit.pri | 107 + meta/recipes-sato/webkit/files/WebKit.pro | 21 + meta/recipes-sato/webkit/files/autogen.sh | 63 + meta/recipes-sato/webkit/files/configure.ac | 983 + meta/recipes-sato/webkit/files/fix_im.patch | 0 meta/recipes-sato/webkit/files/gtk-doc.make | 173 + meta/recipes-sato/webkit/webkit-gtk_svn.bb | 71 + meta/recipes-support/apr/apr-util/configfix.patch | 49 + .../apr/apr-util/configure_fixes.patch | 27 + .../apr/apr-util/configure_fixes.patch.old | 25 + meta/recipes-support/apr/apr-util_1.3.4.bb | 27 + meta/recipes-support/apr/apr/cleanup.patch | 42 + meta/recipes-support/apr/apr/configfix.patch | 51 + meta/recipes-support/apr/apr/configure_fixes.patch | 66 + meta/recipes-support/apr/apr_1.3.3.bb | 34 + meta/recipes-support/aspell/aspell_0.60.6.bb | 15 + meta/recipes-support/atk/atk.inc | 14 + meta/recipes-support/atk/atk_1.30.0.bb | 10 + meta/recipes-support/attr/acl.inc | 26 + meta/recipes-support/attr/acl_2.2.49.bb | 3 + .../attr/attr-2.4.44/double-free.patch | 18 + .../attr/attr-2.4.44/memory-leak-in-copy.patch | 50 + .../attr/attr-2.4.44/memory-leak2.patch | 18 + .../attr/attr-2.4.44/pull-in-string.h.patch | 21 + .../attr/attr-2.4.44/thinko-in-restore.patch | 19 + meta/recipes-support/attr/attr.inc | 20 + meta/recipes-support/attr/attr_2.4.44.bb | 9 + meta/recipes-support/attr/ea-acl.inc | 35 + .../attr/files/relative-libdir.patch | 23 + .../beecrypt/beecrypt/disable-icu-check.patch | 41 + .../beecrypt/beecrypt/fix-security.patch | 43 + .../recipes-support/beecrypt/beecrypt/x64fix.patch | 23 + meta/recipes-support/beecrypt/beecrypt_4.1.2.bb | 21 + meta/recipes-support/boost/boost-36.inc | 149 + meta/recipes-support/boost/boost-jam-native.inc | 31 + .../boost/boost-jam-native_3.1.18.bb | 4 + meta/recipes-support/boost/boost_1.44.0.bb | 27 + .../recipes-support/boost/files/1.34.1-gcc43.patch | 224 + .../boost/files/arm-intrinsics.patch | 53 + .../boost/files/atomic_count_gcc_atomicity.patch | 13 + meta/recipes-support/boost/files/gcc41.patch | 14 + meta/recipes-support/boost/files/gcc43.patch | 256 + .../recipes-support/boost/files/linux-uclibc.patch | 10 + .../boost/files/unit_test_log10f.patch | 20 + meta/recipes-support/curl/curl/noldlibpath.patch | 74 + meta/recipes-support/curl/curl/pkgconfig_fix.patch | 35 + meta/recipes-support/curl/curl_7.21.0.bb | 54 + meta/recipes-support/db/db/arm-thumb-mutex.patch | 36 + meta/recipes-support/db/db/configure_fixes.patch | 18 + meta/recipes-support/db/db_4.2.52.bb | 97 + meta/recipes-support/db/db_4.3.29.bb | 89 + meta/recipes-support/enchant/enchant_1.6.0.bb | 22 + .../gdbm/gdbm-1.8.3/libtool-mode.patch | 20 + .../recipes-support/gdbm/gdbm-1.8.3/makefile.patch | 59 + meta/recipes-support/gdbm/gdbm_1.8.3.bb | 16 + .../gmp/gmp-4.2.1/disable-stdc.patch | 31 + meta/recipes-support/gmp/gmp.inc | 16 + meta/recipes-support/gmp/gmp/amd64.patch | 14 + meta/recipes-support/gmp/gmp/configure.patch | 195 + meta/recipes-support/gmp/gmp/sh4-asmfix.patch | 26 + meta/recipes-support/gmp/gmp/use-includedir.patch | 13 + meta/recipes-support/gmp/gmp_4.2.1.bb | 14 + meta/recipes-support/gmp/gmp_5.0.1.bb | 7 + .../gnutls/gnutls-2.8.6/configure-fix.patch | 64 + .../gnutls/gnutls-2.8.6/gnutls-openssl.patch | 124 + .../gnutls/gnutls-2.8.6/gnutls-texinfo-euro.patch | 16 + meta/recipes-support/gnutls/gnutls.inc | 44 + meta/recipes-support/gnutls/gnutls_2.8.6.bb | 7 + meta/recipes-support/gnutls/libtasn1_2.7.bb | 21 + .../gpgme/gpgme-1.3.0/disable_gpgconf_check.patch | 38 + meta/recipes-support/gpgme/gpgme_1.3.0.bb | 25 + meta/recipes-support/hal/files/20hal | 58 + meta/recipes-support/hal/files/autoconf.diff | 11 + .../hal/files/hal-right-input-h.patch | 29 + meta/recipes-support/hal/files/sg-inhibit.patch | 24 + meta/recipes-support/hal/hal-info.inc | 22 + meta/recipes-support/hal/hal-info_20091130.bb | 1 + meta/recipes-support/hal/hal-info_git.bb | 9 + meta/recipes-support/hal/hal.inc | 85 + meta/recipes-support/hal/hal/configure_fix.patch | 60 + meta/recipes-support/hal/hal_0.5.14.bb | 14 + meta/recipes-support/hal/hal_git.bb | 12 + meta/recipes-support/icu/files/gccfix.patch | 13 + meta/recipes-support/icu/files/noldlibpath.patch | 47 + .../icu/files/use-g++-for-linking.patch | 67 + meta/recipes-support/icu/icu-3.6.inc | 55 + meta/recipes-support/icu/icu_3.6.bb | 3 + meta/recipes-support/iso-codes/iso-codes_3.3.bb | 14 + meta/recipes-support/js/files/buildcc.patch | 20 + meta/recipes-support/js/files/configure.ac | 28 + meta/recipes-support/js/files/jsautocfg.h | 74 + meta/recipes-support/js/files/link_with_gcc.patch | 13 + meta/recipes-support/js/files/usepic.patch | 24 + meta/recipes-support/js/js_1.7.0+1.8.0rc1.bb | 47 + meta/recipes-support/libassuan/libassuan_2.0.0.bb | 15 + meta/recipes-support/libcap/libcap.inc | 34 + meta/recipes-support/libcap/libcap_2.19.bb | 3 + meta/recipes-support/libcheck/libcheck_0.9.8.bb | 16 + meta/recipes-support/libcroco/files/croco.patch | 13 + meta/recipes-support/libcroco/libcroco_0.6.2.bb | 16 + meta/recipes-support/libdaemon/libdaemon_0.14.bb | 14 + meta/recipes-support/libevent/libevent_1.4.14b.bb | 15 + meta/recipes-support/libfm/libfm_0.1.12.bb | 17 + .../libfribidi/files/libtool-update.patch | 11 + .../libfribidi/libfribidi_0.10.4.bb | 23 + .../libgcrypt/files/add-pkgconfig-support.patch | 49 + meta/recipes-support/libgcrypt/libgcrypt.inc | 31 + meta/recipes-support/libgcrypt/libgcrypt_1.4.6.bb | 3 + meta/recipes-support/libgdbus/libgdbus_git.bb | 10 + .../libgpg-error/libgpg-error-1.8/pkgconfig.patch | 53 + .../libgpg-error/libgpg-error_1.8.bb | 24 + meta/recipes-support/libiconv/libiconv_1.9.2.bb | 21 + meta/recipes-support/libmpc/libmpc.inc | 6 + meta/recipes-support/libmpc/libmpc_0.8.2.bb | 14 + meta/recipes-support/libnl/libnl/compilefix.patch | 12 + .../libnl/libnl/local-includes.patch | 11 + meta/recipes-support/libnl/libnl_1.1.bb | 16 + .../liboil/liboil-0.3.17/no-tests.patch | 22 + meta/recipes-support/liboil/liboil_0.3.17.bb | 20 + .../recipes-support/libpcre/files/pcre-cross.patch | 25 + meta/recipes-support/libpcre/libpcre_8.10.bb | 53 + meta/recipes-support/libproxy/libproxy_0.4.3.bb | 26 + meta/recipes-support/libsoup/libsoup-2.4_2.31.2.bb | 17 + meta/recipes-support/libsoup/libsoup-2.4_2.4.1.bb | 11 + meta/recipes-support/libsoup/libsoup_2.2.100.bb | 14 + meta/recipes-support/liburcu/liburcu_0.4.6.bb | 24 + .../0.1.0-beta1-gcc3.4-fix.patch | 13 + meta/recipes-support/libusb/libusb-compat_0.1.3.bb | 23 + meta/recipes-support/libusb/libusb1_1.0.8.bb | 14 + .../libxslt/libxslt/pkgconfig_fix.patch | 22 + meta/recipes-support/libxslt/libxslt_1.1.26.bb | 26 + meta/recipes-support/lzo/lzo-2.03/acinclude.m4 | 358 + meta/recipes-support/lzo/lzo-2.03/autofoo.patch | 17 + meta/recipes-support/lzo/lzo_2.03.bb | 22 + meta/recipes-support/mpfr/mpfr.inc | 6 + meta/recipes-support/mpfr/mpfr_3.0.0.bb | 9 + .../neon/neon-0.29.3/pkgconfig.patch | 16 + meta/recipes-support/neon/neon_0.29.3.bb | 16 + meta/recipes-support/ohm/ohm/fix_configure.patch | 39 + meta/recipes-support/ohm/ohm_git.bb | 44 + .../openobex/files/disable-cable-test.patch | 16 + .../openobex/files/libusb_crosscompile_check.patch | 13 + meta/recipes-support/openobex/openobex_1.5.bb | 23 + meta/recipes-support/popt/popt_1.16.bb | 14 + meta/recipes-support/pth/pth_2.0.7.bb | 21 + .../shared-mime-info/shared-mime-info.inc | 28 + .../shared-mime-info/shared-mime-info_0.71.bb | 1 + meta/recipes-support/sqlite/sqlite3.inc | 33 + meta/recipes-support/sqlite/sqlite3/libtool.patch | 25 + meta/recipes-support/sqlite/sqlite3_3.6.23.1.bb | 3 + meta/recipes-support/vte/vte.inc | 14 + meta/recipes-support/vte/vte_0.24.3.bb | 5 + meta/recipes-tbd/poppler/poppler-data_0.1.bb | 16 + meta/recipes-tbd/poppler/poppler-fpu.inc | 6 + meta/recipes-tbd/poppler/poppler.inc | 18 + meta/recipes-tbd/poppler/poppler_0.9.2.bb | 2 + meta/recipes-tbd/xournal/files/ldflags.patch | 15 + meta/recipes-tbd/xournal/files/no-printing.diff | 178 + meta/recipes-tbd/xournal/xournal_0.2.bb | 12 + 1081 files changed, 58632 insertions(+), 63793 deletions(-) delete mode 100644 meta/packages/apmd/apmd-3.2.2-14/apmd_proxy delete mode 100644 meta/packages/apmd/apmd-3.2.2-14/apmd_proxy.conf delete mode 100644 meta/packages/apmd/apmd-3.2.2-14/default delete mode 100755 meta/packages/apmd/apmd-3.2.2-14/init delete mode 100644 meta/packages/apmd/apmd-3.2.2-14/libtool.patch delete mode 100644 meta/packages/apmd/apmd-3.2.2-14/unlinux.patch delete mode 100644 meta/packages/apmd/apmd-3.2.2-14/workaround.patch delete mode 100644 meta/packages/apmd/apmd_3.2.2-14.bb delete mode 100644 meta/packages/apr/apr-util/configfix.patch delete mode 100644 meta/packages/apr/apr-util/configure_fixes.patch delete mode 100644 meta/packages/apr/apr-util/configure_fixes.patch.old delete mode 100644 meta/packages/apr/apr-util_1.3.4.bb delete mode 100644 meta/packages/apr/apr/cleanup.patch delete mode 100644 meta/packages/apr/apr/configfix.patch delete mode 100644 meta/packages/apr/apr/configure_fixes.patch delete mode 100644 meta/packages/apr/apr_1.3.3.bb delete mode 100644 meta/packages/aspell/aspell_0.60.6.bb delete mode 100644 meta/packages/atk/atk.inc delete mode 100644 meta/packages/atk/atk_1.30.0.bb delete mode 100644 meta/packages/attr/acl.inc delete mode 100644 meta/packages/attr/acl_2.2.49.bb delete mode 100644 meta/packages/attr/attr-2.4.44/double-free.patch delete mode 100644 meta/packages/attr/attr-2.4.44/memory-leak-in-copy.patch delete mode 100644 meta/packages/attr/attr-2.4.44/memory-leak2.patch delete mode 100644 meta/packages/attr/attr-2.4.44/pull-in-string.h.patch delete mode 100644 meta/packages/attr/attr-2.4.44/thinko-in-restore.patch delete mode 100644 meta/packages/attr/attr.inc delete mode 100644 meta/packages/attr/attr_2.4.44.bb delete mode 100644 meta/packages/attr/ea-acl.inc delete mode 100644 meta/packages/attr/files/relative-libdir.patch delete mode 100644 meta/packages/beecrypt/beecrypt/disable-icu-check.patch delete mode 100644 meta/packages/beecrypt/beecrypt/fix-security.patch delete mode 100644 meta/packages/beecrypt/beecrypt/x64fix.patch delete mode 100644 meta/packages/beecrypt/beecrypt_4.1.2.bb delete mode 100644 meta/packages/blktool/blktool_4-6.bb delete mode 100644 meta/packages/boost/boost-36.inc delete mode 100644 meta/packages/boost/boost-jam-native.inc delete mode 100644 meta/packages/boost/boost-jam-native_3.1.18.bb delete mode 100644 meta/packages/boost/boost_1.44.0.bb delete mode 100644 meta/packages/boost/files/1.34.1-gcc43.patch delete mode 100644 meta/packages/boost/files/arm-intrinsics.patch delete mode 100644 meta/packages/boost/files/atomic_count_gcc_atomicity.patch delete mode 100644 meta/packages/boost/files/gcc41.patch delete mode 100644 meta/packages/boost/files/gcc43.patch delete mode 100644 meta/packages/boost/files/linux-uclibc.patch delete mode 100644 meta/packages/boost/files/unit_test_log10f.patch delete mode 100644 meta/packages/bzip2/bzip2-1.0.5/Makefile.am delete mode 100644 meta/packages/bzip2/bzip2-1.0.5/configure.ac delete mode 100644 meta/packages/bzip2/bzip2_1.0.5.bb delete mode 100644 meta/packages/claws-mail/claws-mail.inc delete mode 100644 meta/packages/claws-mail/claws-mail_2.9.1.bb delete mode 100644 meta/packages/claws-mail/claws-plugin-gtkhtml2-viewer_0.15.bb delete mode 100644 meta/packages/claws-mail/claws-plugin-maildir_0.24.4.bb delete mode 100644 meta/packages/claws-mail/claws-plugin-mailmbox_1.13.bb delete mode 100644 meta/packages/claws-mail/claws-plugin-rssyl_0.13.bb delete mode 100644 meta/packages/claws-mail/files/desktop.patch delete mode 100644 meta/packages/claws-mail/files/fix-build.patch delete mode 100644 meta/packages/claws-mail/files/owl-window-menu.patch delete mode 100644 meta/packages/claws-mail/files/streamline-ui.patch delete mode 100644 meta/packages/coreutils/coreutils-6.9/futimens.patch delete mode 100644 meta/packages/coreutils/coreutils-6.9/gnulib_m4.patch delete mode 100644 meta/packages/coreutils/coreutils-6.9/man-touch.patch delete mode 100644 meta/packages/coreutils/coreutils_6.9.bb delete mode 100644 meta/packages/coreutils/coreutils_8.5.bb delete mode 100644 meta/packages/curl/curl/noldlibpath.patch delete mode 100644 meta/packages/curl/curl/pkgconfig_fix.patch delete mode 100644 meta/packages/curl/curl_7.21.0.bb delete mode 100644 meta/packages/db/db/arm-thumb-mutex.patch delete mode 100644 meta/packages/db/db/configure_fixes.patch delete mode 100644 meta/packages/db/db_4.2.52.bb delete mode 100644 meta/packages/db/db_4.3.29.bb delete mode 100644 meta/packages/devicekit/devicekit-power_014.bb delete mode 100644 meta/packages/devicekit/devicekit/volatile delete mode 100644 meta/packages/devicekit/devicekit_003.bb delete mode 100644 meta/packages/devicekit/devicekit_git.bb delete mode 100644 meta/packages/dhcp/dhcp-4.1.1-P1/dhcp-3.0.3-dhclient-dbus.patch delete mode 100644 meta/packages/dhcp/dhcp-4.1.1-P1/fix-client-path.patch delete mode 100644 meta/packages/dhcp/dhcp-4.1.1-P1/fixincludes.patch delete mode 100644 meta/packages/dhcp/dhcp-4.1.1-P1/noattrmode.patch delete mode 100644 meta/packages/dhcp/dhcp-4.1.1-P1/site.h delete mode 100644 meta/packages/dhcp/dhcp3.inc delete mode 100644 meta/packages/dhcp/dhcp4.inc delete mode 100644 meta/packages/dhcp/dhcp_4.1.1-P1.bb delete mode 100644 meta/packages/dhcp/files/default-relay delete mode 100644 meta/packages/dhcp/files/default-server delete mode 100644 meta/packages/dhcp/files/dhclient.conf delete mode 100644 meta/packages/dhcp/files/dhcpd.conf delete mode 100644 meta/packages/dhcp/files/init-relay delete mode 100644 meta/packages/dhcp/files/init-server delete mode 100644 meta/packages/diffutils/diffutils_2.8.1.bb delete mode 100644 meta/packages/enchant/enchant_1.6.0.bb delete mode 100644 meta/packages/exmap-console/exmap-console.inc delete mode 100644 meta/packages/exmap-console/exmap-console_0.4.1.bb delete mode 100644 meta/packages/exmap-console/exmap-console_svn.bb delete mode 100644 meta/packages/farsight/farsight2_0.0.9.bb delete mode 100644 meta/packages/farsight/libnice_0.0.6.bb delete mode 100644 meta/packages/findutils/findutils-4.2.31/gnulib-extension.patch delete mode 100644 meta/packages/findutils/findutils-4.4.2/01-27017.patch delete mode 100644 meta/packages/findutils/findutils-4.4.2/02-28824.patch delete mode 100644 meta/packages/findutils/findutils-4.4.2/03-28872.patch delete mode 100644 meta/packages/findutils/findutils.inc delete mode 100644 meta/packages/findutils/findutils_4.2.31.bb delete mode 100644 meta/packages/findutils/findutils_4.4.2.bb delete mode 100644 meta/packages/fstests/fstests_svn.bb delete mode 100644 meta/packages/fuse/fuse-2.7.2/not-run-updaterc.d-on-host.patch delete mode 100644 meta/packages/fuse/fuse.inc delete mode 100644 meta/packages/fuse/fuse_2.7.2.bb delete mode 100644 meta/packages/gdbm/gdbm-1.8.3/libtool-mode.patch delete mode 100644 meta/packages/gdbm/gdbm-1.8.3/makefile.patch delete mode 100644 meta/packages/gdbm/gdbm_1.8.3.bb delete mode 100644 meta/packages/gnutls/gnutls-2.8.6/configure-fix.patch delete mode 100644 meta/packages/gnutls/gnutls-2.8.6/gnutls-openssl.patch delete mode 100644 meta/packages/gnutls/gnutls-2.8.6/gnutls-texinfo-euro.patch delete mode 100644 meta/packages/gnutls/gnutls.inc delete mode 100644 meta/packages/gnutls/gnutls_2.8.6.bb delete mode 100644 meta/packages/gnutls/libtasn1_2.7.bb delete mode 100644 meta/packages/gperf/gperf.inc delete mode 100644 meta/packages/gperf/gperf_3.0.3.bb delete mode 100644 meta/packages/gperf/gperf_3.0.4.bb delete mode 100644 meta/packages/gpgme/gpgme-1.3.0/disable_gpgconf_check.patch delete mode 100644 meta/packages/gpgme/gpgme_1.3.0.bb delete mode 100644 meta/packages/grep/grep-2.5.1a/uclibc-fix.patch delete mode 100644 meta/packages/grep/grep_2.5.1a.bb delete mode 100644 meta/packages/gsm/files/0001-Introduce-ports.patch delete mode 100644 meta/packages/gsm/files/0002-Flush-all-pending-commands-before-restarting-the-mod.patch delete mode 100644 meta/packages/gsm/files/0003-Correctly-segment-incoming-usock-data-into-packets.patch delete mode 100644 meta/packages/gsm/files/0004-Handle-read-and-write-return-values.patch delete mode 100644 meta/packages/gsm/files/0005-Add-ask-ds-option-forSMS.patch delete mode 100644 meta/packages/gsm/files/024_sms-text-in-bracket.patch delete mode 100644 meta/packages/gsm/files/025_sms-status-report.patch delete mode 100644 meta/packages/gsm/files/027_phonebook-find-and-read-range-support.patch delete mode 100644 meta/packages/gsm/files/028_shell-phonebook-find-and-read-range-support.patch delete mode 100644 meta/packages/gsm/files/default delete mode 100644 meta/packages/gsm/files/fix_machine_init.patch delete mode 100644 meta/packages/gsm/files/gsmd delete mode 100644 meta/packages/gsm/files/install-ts-headers.patch delete mode 100644 meta/packages/gsm/files/lgsm_send_fix_return_value.patch delete mode 100644 meta/packages/gsm/gsmd.inc delete mode 100644 meta/packages/gsm/libgsmd_svn.bb delete mode 100644 meta/packages/gzip/gzip-1.3.12/dup-def-fix.patch delete mode 100644 meta/packages/gzip/gzip-1.3.12/m4-extensions-fix.patch delete mode 100644 meta/packages/gzip/gzip.inc delete mode 100644 meta/packages/gzip/gzip_1.3.12.bb delete mode 100644 meta/packages/gzip/gzip_1.4.bb delete mode 100755 meta/packages/hal/files/20hal delete mode 100644 meta/packages/hal/files/autoconf.diff delete mode 100644 meta/packages/hal/files/hal-right-input-h.patch delete mode 100644 meta/packages/hal/files/sg-inhibit.patch delete mode 100644 meta/packages/hal/hal-info.inc delete mode 100644 meta/packages/hal/hal-info_20091130.bb delete mode 100644 meta/packages/hal/hal-info_git.bb delete mode 100644 meta/packages/hal/hal.inc delete mode 100644 meta/packages/hal/hal/configure_fix.patch delete mode 100644 meta/packages/hal/hal_0.5.14.bb delete mode 100644 meta/packages/hal/hal_git.bb delete mode 100644 meta/packages/hdparm/hdparm-6.3/bswap.patch delete mode 100644 meta/packages/hdparm/hdparm-6.3/uclibc.patch delete mode 100644 meta/packages/hdparm/hdparm_6.3.bb delete mode 100644 meta/packages/hostap/files/hostap-fw-load.patch delete mode 100644 meta/packages/hostap/files/hostap_cs.conf delete mode 100644 meta/packages/hostap/files/hostap_cs.conf-upstream delete mode 100644 meta/packages/hostap/files/hostap_cs.modalias delete mode 100644 meta/packages/hostap/hostap-conf_1.0.bb delete mode 100644 meta/packages/hostap/hostap-utils.inc delete mode 100644 meta/packages/hostap/hostap-utils_0.4.7.bb delete mode 100644 meta/packages/icu/files/gccfix.patch delete mode 100644 meta/packages/icu/files/noldlibpath.patch delete mode 100644 meta/packages/icu/files/use-g++-for-linking.patch delete mode 100644 meta/packages/icu/icu-3.6.inc delete mode 100644 meta/packages/icu/icu_3.6.bb delete mode 100644 meta/packages/insserv/files/40_segfault_virtprov.dpatch delete mode 100644 meta/packages/insserv/files/42_loopnochangemsg.dpatch delete mode 100644 meta/packages/insserv/files/crosscompile_fix.patch delete mode 100644 meta/packages/insserv/files/insserv.conf delete mode 100644 meta/packages/insserv/files/make.patch delete mode 100644 meta/packages/insserv/insserv_1.11.0.bb delete mode 100644 meta/packages/intltool/intltool-0.40.6/intltool-nowarn-0.40.0.patch delete mode 100644 meta/packages/intltool/intltool.inc delete mode 100644 meta/packages/intltool/intltool_0.40.6.bb delete mode 100644 meta/packages/iproute2/iproute2-2.6.34/configure-cross.patch delete mode 100644 meta/packages/iproute2/iproute2.inc delete mode 100644 meta/packages/iproute2/iproute2_2.6.34.bb delete mode 100644 meta/packages/iso-codes/iso-codes_3.3.bb delete mode 100644 meta/packages/js/files/buildcc.patch delete mode 100644 meta/packages/js/files/configure.ac delete mode 100644 meta/packages/js/files/jsautocfg.h delete mode 100644 meta/packages/js/files/link_with_gcc.patch delete mode 100644 meta/packages/js/files/usepic.patch delete mode 100644 meta/packages/js/js_1.7.0+1.8.0rc1.bb delete mode 100644 meta/packages/libassuan/libassuan_2.0.0.bb delete mode 100644 meta/packages/libcap/libcap.inc delete mode 100644 meta/packages/libcap/libcap_2.19.bb delete mode 100644 meta/packages/libcheck/libcheck_0.9.8.bb delete mode 100644 meta/packages/libcroco/files/croco.patch delete mode 100644 meta/packages/libcroco/libcroco_0.6.2.bb delete mode 100644 meta/packages/libdaemon/libdaemon_0.14.bb delete mode 100644 meta/packages/libetpan/files/cxx-is-here.patch delete mode 100644 meta/packages/libetpan/libetpan_0.54.bb delete mode 100644 meta/packages/libevent/libevent_1.4.14b.bb delete mode 100644 meta/packages/libffi/libffi_3.0.8.bb delete mode 100644 meta/packages/libfm/libfm_0.1.12.bb delete mode 100644 meta/packages/libfribidi/files/libtool-update.patch delete mode 100644 meta/packages/libfribidi/libfribidi_0.10.4.bb delete mode 100644 meta/packages/libgcrypt/files/add-pkgconfig-support.patch delete mode 100644 meta/packages/libgcrypt/libgcrypt.inc delete mode 100644 meta/packages/libgcrypt/libgcrypt_1.4.6.bb delete mode 100644 meta/packages/libgdbus/libgdbus_git.bb delete mode 100644 meta/packages/libgpg-error/libgpg-error-1.8/pkgconfig.patch delete mode 100644 meta/packages/libgpg-error/libgpg-error_1.8.bb delete mode 100644 meta/packages/libgsf/libgsf_1.14.5.bb delete mode 100644 meta/packages/libgtkstylus/files/gtkstylus.sh delete mode 100644 meta/packages/libgtkstylus/libgtkstylus_0.5.bb delete mode 100644 meta/packages/libical/libical_0.44.bb delete mode 100644 meta/packages/libiconv/libiconv_1.9.2.bb delete mode 100644 meta/packages/libidl/libidl_0.8.12.bb delete mode 100644 meta/packages/libidn/libidn_0.6.14.bb delete mode 100644 meta/packages/libidn/libidn_1.19.bb delete mode 100644 meta/packages/libmpc/libmpc.inc delete mode 100644 meta/packages/libmpc/libmpc_0.8.2.bb delete mode 100644 meta/packages/libnl/libnl/compilefix.patch delete mode 100644 meta/packages/libnl/libnl/local-includes.patch delete mode 100644 meta/packages/libnl/libnl_1.1.bb delete mode 100644 meta/packages/libnss-mdns/files/alignment-fix.patch delete mode 100644 meta/packages/libnss-mdns/libnss-mdns_0.10.bb delete mode 100644 meta/packages/liboil/liboil-0.3.17/no-tests.patch delete mode 100644 meta/packages/liboil/liboil_0.3.17.bb delete mode 100644 meta/packages/libomxil/libomxil_0.3.3.bb delete mode 100644 meta/packages/libpcap/libpcap-1.1.1/aclocal.patch delete mode 100644 meta/packages/libpcap/libpcap-1.1.1/ieee80215-arphrd.patch delete mode 100644 meta/packages/libpcap/libpcap.inc delete mode 100644 meta/packages/libpcap/libpcap_1.1.1.bb delete mode 100644 meta/packages/libpcre/files/pcre-cross.patch delete mode 100644 meta/packages/libpcre/libpcre_8.10.bb delete mode 100644 meta/packages/libproxy/libproxy_0.4.3.bb delete mode 100644 meta/packages/librds/librds_0.0.1.bb delete mode 100644 meta/packages/librsvg/librsvg_2.18.2.bb delete mode 100644 meta/packages/librsvg/librsvg_2.22.3.bb delete mode 100644 meta/packages/librsvg/librsvg_2.26.3.bb delete mode 100644 meta/packages/libsdl/files/acinclude.m4 delete mode 100644 meta/packages/libsdl/files/configure_tweak.patch delete mode 100644 meta/packages/libsdl/files/directfb_obsolete_calls.patch delete mode 100644 meta/packages/libsdl/files/extra-keys.patch delete mode 100644 meta/packages/libsdl/files/kernel-asm-page.patch delete mode 100644 meta/packages/libsdl/libsdl-nativesdk_1.2.11.bb delete mode 100644 meta/packages/libsoup/libsoup-2.4_2.31.2.bb delete mode 100644 meta/packages/libsoup/libsoup-2.4_2.4.1.bb delete mode 100644 meta/packages/libsoup/libsoup_2.2.100.bb delete mode 100644 meta/packages/liburcu/liburcu_0.4.6.bb delete mode 100644 meta/packages/libusb/libusb-compat-0.1.3/0.1.0-beta1-gcc3.4-fix.patch delete mode 100644 meta/packages/libusb/libusb-compat_0.1.3.bb delete mode 100644 meta/packages/libusb/libusb1_1.0.8.bb delete mode 100644 meta/packages/libxslt/libxslt/pkgconfig_fix.patch delete mode 100644 meta/packages/libxslt/libxslt_1.1.26.bb delete mode 100644 meta/packages/lrzsz/lrzsz-0.12.20/autotools.patch delete mode 100644 meta/packages/lrzsz/lrzsz-0.12.20/gettext.patch delete mode 100644 meta/packages/lrzsz/lrzsz-0.12.20/makefile.patch delete mode 100644 meta/packages/lrzsz/lrzsz_0.12.20.bb delete mode 100644 meta/packages/lsof/lsof_4.83.bb delete mode 100644 meta/packages/lzo/lzo-2.03/acinclude.m4 delete mode 100644 meta/packages/lzo/lzo-2.03/autofoo.patch delete mode 100644 meta/packages/lzo/lzo_2.03.bb delete mode 100644 meta/packages/mozilla-headless/mozilla-headless-services/confighack.patch delete mode 100644 meta/packages/mozilla-headless/mozilla-headless-services_git.bb delete mode 100644 meta/packages/mozilla-headless/mozilla-headless/0001-Adds-initial-Gtk-clipboard-support-to-moz-headless.patch delete mode 100644 meta/packages/mozilla-headless/mozilla-headless/autoconffix.patch delete mode 100644 meta/packages/mozilla-headless/mozilla-headless/buildfixhack.patch delete mode 100644 meta/packages/mozilla-headless/mozilla-headless/configurefix-1a622cb7c384.patch delete mode 100644 meta/packages/mozilla-headless/mozilla-headless/configurefix.patch delete mode 100644 meta/packages/mozilla-headless/mozilla-headless/i386/jsautocfg.h delete mode 100644 meta/packages/mozilla-headless/mozilla-headless/i486/jsautocfg.h delete mode 100644 meta/packages/mozilla-headless/mozilla-headless/i586/jsautocfg.h delete mode 100644 meta/packages/mozilla-headless/mozilla-headless/i686/jsautocfg.h delete mode 100644 meta/packages/mozilla-headless/mozilla-headless/mozconfig delete mode 100644 meta/packages/mozilla-headless/mozilla-headless/mozilla-jemalloc.patch delete mode 100644 meta/packages/mozilla-headless/mozilla-headless/removebadrpath-1a622cb7c384.patch delete mode 100644 meta/packages/mozilla-headless/mozilla-headless/removebadrpath.patch delete mode 100644 meta/packages/mozilla-headless/mozilla-headless_hg.bb delete mode 100644 meta/packages/mozilla/files/eabi-fix.patch delete mode 100644 meta/packages/mozilla/files/eabi-fix2.patch delete mode 100644 meta/packages/mozilla/files/eabi-fix3.patch delete mode 100644 meta/packages/mozilla/files/minimo.desktop delete mode 100644 meta/packages/mozilla/files/minimo.png delete mode 100644 meta/packages/mozilla/minimo/bug-322806.diff delete mode 100644 meta/packages/mozilla/minimo/minimo delete mode 100644 meta/packages/mozilla/minimo/minimo.patch delete mode 100644 meta/packages/mozilla/minimo/minimo.png delete mode 100644 meta/packages/mozilla/minimo/mozconfig delete mode 100644 meta/packages/mozilla/minimo_cvs.bb delete mode 100644 meta/packages/nasm/nasm_2.07.bb delete mode 100644 meta/packages/ncurses/ncurses.inc delete mode 100644 meta/packages/ncurses/ncurses/makefile_tweak.patch delete mode 100644 meta/packages/ncurses/ncurses/visibility.patch delete mode 100644 meta/packages/ncurses/ncurses_5.4.bb delete mode 100644 meta/packages/neon/neon-0.29.3/pkgconfig.patch delete mode 100644 meta/packages/neon/neon_0.29.3.bb delete mode 100644 meta/packages/network-suspend-scripts/network-suspend-scripts.bb delete mode 100644 meta/packages/network-suspend-scripts/network-suspend-scripts/ifupdown delete mode 100644 meta/packages/network-suspend-scripts/network-suspend-scripts/usbnet delete mode 100644 meta/packages/networkmanager/files/70NetworkManagerApplet.shbg delete mode 100644 meta/packages/networkmanager/files/99_networkmanager delete mode 100644 meta/packages/networkmanager/files/NetworkManager delete mode 100644 meta/packages/networkmanager/files/allow-disabling.patch delete mode 100644 meta/packages/networkmanager/files/applet-no-animation.patch delete mode 100644 meta/packages/networkmanager/files/applet-no-gnome.diff delete mode 100644 meta/packages/networkmanager/files/libnlfix.patch delete mode 100644 meta/packages/networkmanager/files/makefile-fix.patch delete mode 100644 meta/packages/networkmanager/files/nmutil-fix.patch delete mode 100644 meta/packages/networkmanager/files/no-restarts.diff delete mode 100644 meta/packages/networkmanager/files/no_vpn.patch delete mode 100644 meta/packages/networkmanager/networkmanager-applet_svn.bb delete mode 100644 meta/packages/networkmanager/networkmanager_svn.bb delete mode 100644 meta/packages/nfs-utils/libnfsidmap_0.23.bb delete mode 100644 meta/packages/nfs-utils/nfs-utils/nfs-utils-1.0.6-uclibc.patch delete mode 100644 meta/packages/nfs-utils/nfs-utils/nfsserver delete mode 100644 meta/packages/nfs-utils/nfs-utils_1.2.2.bb delete mode 100644 meta/packages/oh/qemu-config.bb delete mode 100644 meta/packages/oh/qemu-config/anjuta-remote-run delete mode 100644 meta/packages/oh/qemu-config/distcc.sh delete mode 100644 meta/packages/oh/qemu-config/exports delete mode 100755 meta/packages/oh/qemu-config/qemu-autostart delete mode 100644 meta/packages/oh/qemu-config/qemuarm/shutdown.desktop delete mode 100644 meta/packages/oh/qemu-config/shutdown.desktop delete mode 100644 meta/packages/oh/usbinit.bb delete mode 100755 meta/packages/oh/usbinit/usb-gether delete mode 100644 meta/packages/ohm/ohm/fix_configure.patch delete mode 100644 meta/packages/ohm/ohm_git.bb delete mode 100644 meta/packages/openobex/files/disable-cable-test.patch delete mode 100644 meta/packages/openobex/files/libusb_crosscompile_check.patch delete mode 100644 meta/packages/openobex/openobex_1.5.bb delete mode 100644 meta/packages/openssl/openssl-0.9.8o/configure-targets.patch delete mode 100644 meta/packages/openssl/openssl-0.9.8o/debian/ca.patch delete mode 100644 meta/packages/openssl/openssl-0.9.8o/debian/config-hurd.patch delete mode 100644 meta/packages/openssl/openssl-0.9.8o/debian/debian-targets.patch delete mode 100644 meta/packages/openssl/openssl-0.9.8o/debian/engines-path.patch delete mode 100644 meta/packages/openssl/openssl-0.9.8o/debian/kfreebsd-pipe.patch delete mode 100644 meta/packages/openssl/openssl-0.9.8o/debian/make-targets.patch delete mode 100644 meta/packages/openssl/openssl-0.9.8o/debian/man-dir.patch delete mode 100644 meta/packages/openssl/openssl-0.9.8o/debian/man-section.patch delete mode 100644 meta/packages/openssl/openssl-0.9.8o/debian/no-rpath.patch delete mode 100644 meta/packages/openssl/openssl-0.9.8o/debian/no-symbolic.patch delete mode 100644 meta/packages/openssl/openssl-0.9.8o/debian/perl-path.diff delete mode 100644 meta/packages/openssl/openssl-0.9.8o/debian/pic.patch delete mode 100644 meta/packages/openssl/openssl-0.9.8o/debian/pkg-config.patch delete mode 100644 meta/packages/openssl/openssl-0.9.8o/debian/rc4-amd64.patch delete mode 100644 meta/packages/openssl/openssl-0.9.8o/debian/rehash-crt.patch delete mode 100644 meta/packages/openssl/openssl-0.9.8o/debian/rehash_pod.patch delete mode 100644 meta/packages/openssl/openssl-0.9.8o/debian/series delete mode 100644 meta/packages/openssl/openssl-0.9.8o/debian/shared-lib-ext.patch delete mode 100644 meta/packages/openssl/openssl-0.9.8o/debian/stddef.patch delete mode 100644 meta/packages/openssl/openssl-0.9.8o/debian/valgrind.patch delete mode 100644 meta/packages/openssl/openssl-0.9.8o/debian/version-script.patch delete mode 100644 meta/packages/openssl/openssl-0.9.8o/shared-libs.patch delete mode 100644 meta/packages/openssl/openssl.inc delete mode 100644 meta/packages/openssl/openssl_0.9.8o.bb delete mode 100644 meta/packages/openswan/openswan-2.4.7/installflags.patch delete mode 100644 meta/packages/openswan/openswan-2.4.7/ld-library-path-breakage.patch delete mode 100644 meta/packages/openswan/openswan-2.4.7/openswan-2.4.7-gentoo.patch delete mode 100644 meta/packages/openswan/openswan_2.4.7.bb delete mode 100644 meta/packages/opensync/libopensync-0.37/build-in-src.patch delete mode 100644 meta/packages/opensync/libopensync-0.37/cmake.patch delete mode 100644 meta/packages/opensync/libopensync-0.37/no-python-check.patch delete mode 100644 meta/packages/opensync/libopensync-plugin-evolution2/0.37-fixes.patch delete mode 100644 meta/packages/opensync/libopensync-plugin-evolution2_0.36.bb delete mode 100644 meta/packages/opensync/libopensync-plugin-file_0.37.bb delete mode 100644 meta/packages/opensync/libopensync-plugin-google-calendar_0.36.bb delete mode 100644 meta/packages/opensync/libopensync-plugin-irmc_0.36.bb delete mode 100644 meta/packages/opensync/libopensync-plugin-syncml/fixerror.patch delete mode 100644 meta/packages/opensync/libopensync-plugin-syncml_0.38.bb delete mode 100644 meta/packages/opensync/libopensync-plugin-vformat_0.37.bb delete mode 100644 meta/packages/opensync/libopensync-plugin_0.36.inc delete mode 100644 meta/packages/opensync/libopensync_0.37.bb delete mode 100644 meta/packages/opensync/libsyncml/build-in-src.patch delete mode 100644 meta/packages/opensync/libsyncml_0.5.4.bb delete mode 100644 meta/packages/opensync/msynctool_0.37.bb delete mode 100644 meta/packages/pam/libpam-1.1.1/99_pam delete mode 100644 meta/packages/pam/libpam-1.1.1/disable_crossbinary.patch delete mode 100644 meta/packages/pam/libpam-1.1.1/pam.d/common-account delete mode 100644 meta/packages/pam/libpam-1.1.1/pam.d/common-auth delete mode 100644 meta/packages/pam/libpam-1.1.1/pam.d/common-password delete mode 100644 meta/packages/pam/libpam-1.1.1/pam.d/common-session delete mode 100644 meta/packages/pam/libpam-1.1.1/pam.d/common-session-noninteractive delete mode 100644 meta/packages/pam/libpam-1.1.1/pam.d/other delete mode 100644 meta/packages/pam/libpam_1.1.1.bb delete mode 100644 meta/packages/parted/parted-1.9.0/no_check.patch delete mode 100644 meta/packages/parted/parted-1.9.0/syscalls.patch delete mode 100644 meta/packages/parted/parted_1.9.0.bb delete mode 100644 meta/packages/pm-utils/pm-utils_1.3.0.bb delete mode 100644 meta/packages/polkit/polkit-gnome_0.96.bb delete mode 100644 meta/packages/polkit/polkit_0.96.bb delete mode 100644 meta/packages/pong-clock/pong-clock/pong-clock-no-flicker.c delete mode 100644 meta/packages/pong-clock/pong-clock_1.0.bb delete mode 100644 meta/packages/poppler/poppler-data_0.1.bb delete mode 100644 meta/packages/poppler/poppler-fpu.inc delete mode 100644 meta/packages/poppler/poppler.inc delete mode 100644 meta/packages/poppler/poppler_0.9.2.bb delete mode 100644 meta/packages/popt/popt_1.16.bb delete mode 100644 meta/packages/portmap/portmap-6.0/destdir-no-strip.patch delete mode 100644 meta/packages/portmap/portmap-6.0/tcpd-config.patch delete mode 100644 meta/packages/portmap/portmap.inc delete mode 100755 meta/packages/portmap/portmap/portmap.init delete mode 100644 meta/packages/portmap/portmap_6.0.bb delete mode 100644 meta/packages/ppp-dialin/files/host-peer delete mode 100644 meta/packages/ppp-dialin/files/ppp-dialin delete mode 100644 meta/packages/ppp-dialin/ppp-dialin_0.1.bb delete mode 100644 meta/packages/ppp/ppp-2.4.5/08setupdns delete mode 100644 meta/packages/ppp/ppp-2.4.5/92removedns delete mode 100644 meta/packages/ppp/ppp-2.4.5/cifdefroute.patch delete mode 100644 meta/packages/ppp/ppp-2.4.5/enable-ipv6.patch delete mode 100755 meta/packages/ppp/ppp-2.4.5/init delete mode 100755 meta/packages/ppp/ppp-2.4.5/ip-down delete mode 100755 meta/packages/ppp/ppp-2.4.5/ip-up delete mode 100644 meta/packages/ppp/ppp-2.4.5/makefile-remove-hard-usr-reference.patch delete mode 100644 meta/packages/ppp/ppp-2.4.5/makefile.patch delete mode 100644 meta/packages/ppp/ppp-2.4.5/poff delete mode 100644 meta/packages/ppp/ppp-2.4.5/pon delete mode 100644 meta/packages/ppp/ppp-2.4.5/pppd-resolv-varrun.patch delete mode 100644 meta/packages/ppp/ppp_2.4.5.bb delete mode 100644 meta/packages/psmisc/files/libintl-link.patch delete mode 100644 meta/packages/psmisc/psmisc.inc delete mode 100644 meta/packages/psmisc/psmisc_22.2.bb delete mode 100644 meta/packages/pth/pth_2.0.7.bb delete mode 100644 meta/packages/readline/files/acinclude.m4 delete mode 100644 meta/packages/readline/files/configure-fix.patch delete mode 100644 meta/packages/readline/readline.inc delete mode 100644 meta/packages/readline/readline_5.2.bb delete mode 100644 meta/packages/readline/readline_6.1.bb delete mode 100644 meta/packages/resolvconf/resolvconf_1.43.bb delete mode 100644 meta/packages/rsync/rsync-2.6.9/rsyncd.conf delete mode 100644 meta/packages/rxvt-unicode/files/makefile.patch delete mode 100644 meta/packages/rxvt-unicode/files/rxvt.desktop delete mode 100644 meta/packages/rxvt-unicode/files/rxvt.png delete mode 100644 meta/packages/rxvt-unicode/files/signedchar.patch delete mode 100644 meta/packages/rxvt-unicode/files/xwc.patch delete mode 100644 meta/packages/rxvt-unicode/rxvt-unicode-5.6/xwc.patch delete mode 100644 meta/packages/rxvt-unicode/rxvt-unicode_5.6.bb delete mode 100644 meta/packages/sed/sed-4.1.2/fix_return_type.patch delete mode 100644 meta/packages/sed/sed_4.1.2.bb delete mode 100644 meta/packages/setserial/setserial_2.17.bb delete mode 100644 meta/packages/shared-mime-info/shared-mime-info.inc delete mode 100644 meta/packages/shared-mime-info/shared-mime-info_0.71.bb delete mode 100644 meta/packages/smart/smart_1.1.bb delete mode 100644 meta/packages/speex/speex_1.2rc1.bb delete mode 100644 meta/packages/sqlite/sqlite3.inc delete mode 100644 meta/packages/sqlite/sqlite3/libtool.patch delete mode 100644 meta/packages/sqlite/sqlite3_3.6.23.1.bb delete mode 100644 meta/packages/strace/strace_4.5.20.bb delete mode 100644 meta/packages/sudo/files/autofoo.patch delete mode 100644 meta/packages/sudo/files/noexec-link.patch delete mode 100644 meta/packages/sudo/files/nostrip.patch delete mode 100644 meta/packages/sudo/site/bit-32 delete mode 100644 meta/packages/sudo/site/bit-64 delete mode 100644 meta/packages/sudo/sudo.inc delete mode 100644 meta/packages/sudo/sudo_1.7.2p7.bb delete mode 100644 meta/packages/sync/libsync_svn.bb delete mode 100644 meta/packages/sysfsutils/sysfsutils_2.1.0.bb delete mode 100644 meta/packages/tar/tar-1.17/m4extensions.patch delete mode 100644 meta/packages/tar/tar.inc delete mode 100644 meta/packages/tar/tar_1.17.bb delete mode 100644 meta/packages/tar/tar_1.23.bb delete mode 100644 meta/packages/tcf-agent/tcf-agent/fix_tcf-agent.init.patch delete mode 100644 meta/packages/tcf-agent/tcf-agent/terminals_agent.patch delete mode 100644 meta/packages/tcf-agent/tcf-agent_svn.bb delete mode 100644 meta/packages/tcp-wrappers/tcp-wrappers-7.6/00_man_quoting.diff delete mode 100644 meta/packages/tcp-wrappers/tcp-wrappers-7.6/01_man_portability.patch delete mode 100644 meta/packages/tcp-wrappers/tcp-wrappers-7.6/05_wildcard_matching.patch delete mode 100644 meta/packages/tcp-wrappers/tcp-wrappers-7.6/06_fix_gethostbyname.patch delete mode 100644 meta/packages/tcp-wrappers/tcp-wrappers-7.6/10_usagi-ipv6.patch delete mode 100644 meta/packages/tcp-wrappers/tcp-wrappers-7.6/11_tcpd_blacklist.patch delete mode 100644 meta/packages/tcp-wrappers/tcp-wrappers-7.6/11_usagi_fix.patch delete mode 100644 meta/packages/tcp-wrappers/tcp-wrappers-7.6/12_makefile_config.patch delete mode 100644 meta/packages/tcp-wrappers/tcp-wrappers-7.6/13_shlib_weaksym.patch delete mode 100644 meta/packages/tcp-wrappers/tcp-wrappers-7.6/14_cidr_support.patch delete mode 100644 meta/packages/tcp-wrappers/tcp-wrappers-7.6/15_match_clarify.patch delete mode 100644 meta/packages/tcp-wrappers/tcp-wrappers-7.6/expand_remote_port.patch delete mode 100644 meta/packages/tcp-wrappers/tcp-wrappers-7.6/have_strerror.patch delete mode 100644 meta/packages/tcp-wrappers/tcp-wrappers-7.6/ldflags.patch delete mode 100644 meta/packages/tcp-wrappers/tcp-wrappers-7.6/man_fromhost.patch delete mode 100644 meta/packages/tcp-wrappers/tcp-wrappers-7.6/restore_sigalarm.patch delete mode 100644 meta/packages/tcp-wrappers/tcp-wrappers-7.6/rfc931.diff delete mode 100644 meta/packages/tcp-wrappers/tcp-wrappers-7.6/safe_finger.8 delete mode 100644 meta/packages/tcp-wrappers/tcp-wrappers-7.6/safe_finger.patch delete mode 100644 meta/packages/tcp-wrappers/tcp-wrappers-7.6/sig_fix.patch delete mode 100644 meta/packages/tcp-wrappers/tcp-wrappers-7.6/siglongjmp.patch delete mode 100644 meta/packages/tcp-wrappers/tcp-wrappers-7.6/size_t.patch delete mode 100644 meta/packages/tcp-wrappers/tcp-wrappers-7.6/tcpdchk_libwrapped.patch delete mode 100644 meta/packages/tcp-wrappers/tcp-wrappers-7.6/try-from.8 delete mode 100644 meta/packages/tcp-wrappers/tcp-wrappers_7.6.bb delete mode 100644 meta/packages/tzcode/tzcode-native_2009r.bb delete mode 100644 meta/packages/tzdata/tzdata_2010j.bb delete mode 100644 meta/packages/uboot/files/fix-arm920t-eabi.patch delete mode 100644 meta/packages/uboot/u-boot-mkimage-native_1.3.2.bb delete mode 100644 meta/packages/uboot/u-boot-mkimage_2009.08.bb delete mode 100644 meta/packages/uboot/u-boot-omap3-git/beagleboard/name.patch delete mode 100644 meta/packages/uboot/u-boot-omap3_git.bb delete mode 100644 meta/packages/uboot/u-boot.inc delete mode 100644 meta/packages/ubootchart/files/sysvinit.patch delete mode 100644 meta/packages/ubootchart/files/ubootchart-stop delete mode 100644 meta/packages/ubootchart/files/ubootchart.desktop delete mode 100644 meta/packages/ubootchart/ubootchart_svn.bb delete mode 100644 meta/packages/unzip/unzip_6.0.bb delete mode 100644 meta/packages/usbutils/usbutils_0.86.bb delete mode 100644 meta/packages/util-linux/files/MCONFIG delete mode 100644 meta/packages/util-linux/files/debian-bug392236.patch delete mode 100644 meta/packages/util-linux/files/defines.h delete mode 100644 meta/packages/util-linux/files/fdiskbsdlabel_thumb.diff delete mode 100644 meta/packages/util-linux/files/fix-make-c.patch delete mode 100644 meta/packages/util-linux/files/gcc34.patch delete mode 100644 meta/packages/util-linux/files/glibc-fix.patch delete mode 100644 meta/packages/util-linux/files/make_include delete mode 100644 meta/packages/util-linux/files/optional-uuid.patch delete mode 100644 meta/packages/util-linux/files/swapargs.h delete mode 100644 meta/packages/util-linux/files/umount.diff delete mode 100644 meta/packages/util-linux/files/uuid.patch delete mode 100644 meta/packages/util-linux/util-linux-2.17.2/tls.patch delete mode 100644 meta/packages/util-linux/util-linux-2.17.2/uclibc-compile.patch delete mode 100644 meta/packages/util-linux/util-linux-2.17.2/util-linux-ng-replace-siginterrupt.patch delete mode 100644 meta/packages/util-linux/util-linux.inc delete mode 100644 meta/packages/util-linux/util-linux_2.17.2.bb delete mode 100644 meta/packages/vte/vte.inc delete mode 100644 meta/packages/vte/vte_0.24.3.bb delete mode 100644 meta/packages/watchdog/watchdog_5.9.bb delete mode 100644 meta/packages/wbxml/files/no-doc-install.patch delete mode 100644 meta/packages/wbxml/wbxml2_0.9.2.bb delete mode 100644 meta/packages/webkit/files/GNUmakefile.am delete mode 100644 meta/packages/webkit/files/Makefile delete mode 100644 meta/packages/webkit/files/Makefile.shared delete mode 100644 meta/packages/webkit/files/WebKit.pri delete mode 100644 meta/packages/webkit/files/WebKit.pro delete mode 100755 meta/packages/webkit/files/autogen.sh delete mode 100644 meta/packages/webkit/files/configure.ac delete mode 100644 meta/packages/webkit/files/fix_im.patch delete mode 100644 meta/packages/webkit/files/gtk-doc.make delete mode 100644 meta/packages/webkit/webkit-gtk_svn.bb delete mode 100644 meta/packages/wv/wv-1.2.0/pkgconfig.patch delete mode 100644 meta/packages/wv/wv_1.2.0.bb delete mode 100644 meta/packages/x11vnc/x11vnc_0.9.3.bb delete mode 100644 meta/packages/xournal/files/ldflags.patch delete mode 100644 meta/packages/xournal/files/no-printing.diff delete mode 100644 meta/packages/xournal/xournal_0.2.bb delete mode 100644 meta/packages/xrestop/xrestop_0.4.bb delete mode 100644 meta/packages/xvideo-tests/xvideo-tests_svn.bb delete mode 100644 meta/packages/yaffs2/files/mkyaffs2image.patch delete mode 100644 meta/packages/yaffs2/files/yaffs2-unioob.patch delete mode 100644 meta/packages/yaffs2/yaffs2-utils.inc delete mode 100644 meta/packages/yaffs2/yaffs2-utils_cvs.bb delete mode 100644 meta/packages/zile/files/for_build.patch delete mode 100644 meta/packages/zile/zile_1.7+2.0beta6.bb delete mode 100644 meta/packages/zip/zip.inc delete mode 100644 meta/packages/zip/zip_3.0.bb create mode 100644 meta/recipes-bsp/apmd/apmd-3.2.2-14/apmd_proxy create mode 100644 meta/recipes-bsp/apmd/apmd-3.2.2-14/apmd_proxy.conf create mode 100644 meta/recipes-bsp/apmd/apmd-3.2.2-14/default create mode 100755 meta/recipes-bsp/apmd/apmd-3.2.2-14/init create mode 100644 meta/recipes-bsp/apmd/apmd-3.2.2-14/libtool.patch create mode 100644 meta/recipes-bsp/apmd/apmd-3.2.2-14/unlinux.patch create mode 100644 meta/recipes-bsp/apmd/apmd-3.2.2-14/workaround.patch create mode 100644 meta/recipes-bsp/apmd/apmd_3.2.2-14.bb create mode 100644 meta/recipes-bsp/hostap/files/hostap-fw-load.patch create mode 100644 meta/recipes-bsp/hostap/files/hostap_cs.conf create mode 100644 meta/recipes-bsp/hostap/files/hostap_cs.conf-upstream create mode 100644 meta/recipes-bsp/hostap/files/hostap_cs.modalias create mode 100644 meta/recipes-bsp/hostap/hostap-conf_1.0.bb create mode 100644 meta/recipes-bsp/hostap/hostap-utils.inc create mode 100644 meta/recipes-bsp/hostap/hostap-utils_0.4.7.bb create mode 100644 meta/recipes-bsp/lrzsz/lrzsz-0.12.20/autotools.patch create mode 100644 meta/recipes-bsp/lrzsz/lrzsz-0.12.20/gettext.patch create mode 100644 meta/recipes-bsp/lrzsz/lrzsz-0.12.20/makefile.patch create mode 100644 meta/recipes-bsp/lrzsz/lrzsz_0.12.20.bb create mode 100644 meta/recipes-bsp/pm-utils/pm-utils_1.3.0.bb create mode 100644 meta/recipes-bsp/qemu-config/qemu-config.bb create mode 100644 meta/recipes-bsp/qemu-config/qemu-config/anjuta-remote-run create mode 100644 meta/recipes-bsp/qemu-config/qemu-config/distcc.sh create mode 100644 meta/recipes-bsp/qemu-config/qemu-config/exports create mode 100755 meta/recipes-bsp/qemu-config/qemu-config/qemu-autostart create mode 100644 meta/recipes-bsp/qemu-config/qemu-config/qemuarm/shutdown.desktop create mode 100644 meta/recipes-bsp/qemu-config/qemu-config/shutdown.desktop create mode 100644 meta/recipes-bsp/setserial/setserial_2.17.bb create mode 100644 meta/recipes-bsp/uboot/files/fix-arm920t-eabi.patch create mode 100644 meta/recipes-bsp/uboot/u-boot-mkimage-native_1.3.2.bb create mode 100644 meta/recipes-bsp/uboot/u-boot-mkimage_2009.08.bb create mode 100644 meta/recipes-bsp/uboot/u-boot-omap3-git/beagleboard/name.patch create mode 100644 meta/recipes-bsp/uboot/u-boot-omap3_git.bb create mode 100644 meta/recipes-bsp/uboot/u-boot.inc create mode 100644 meta/recipes-bsp/usbinit/usbinit.bb create mode 100755 meta/recipes-bsp/usbinit/usbinit/usb-gether create mode 100644 meta/recipes-bsp/usbutils/usbutils_0.86.bb create mode 100644 meta/recipes-connectivity/dhcp/dhcp-4.1.1-P1/dhcp-3.0.3-dhclient-dbus.patch create mode 100644 meta/recipes-connectivity/dhcp/dhcp-4.1.1-P1/fix-client-path.patch create mode 100644 meta/recipes-connectivity/dhcp/dhcp-4.1.1-P1/fixincludes.patch create mode 100644 meta/recipes-connectivity/dhcp/dhcp-4.1.1-P1/noattrmode.patch create mode 100644 meta/recipes-connectivity/dhcp/dhcp-4.1.1-P1/site.h create mode 100644 meta/recipes-connectivity/dhcp/dhcp3.inc create mode 100644 meta/recipes-connectivity/dhcp/dhcp4.inc create mode 100644 meta/recipes-connectivity/dhcp/dhcp_4.1.1-P1.bb create mode 100644 meta/recipes-connectivity/dhcp/files/default-relay create mode 100644 meta/recipes-connectivity/dhcp/files/default-server create mode 100644 meta/recipes-connectivity/dhcp/files/dhclient.conf create mode 100644 meta/recipes-connectivity/dhcp/files/dhcpd.conf create mode 100644 meta/recipes-connectivity/dhcp/files/init-relay create mode 100644 meta/recipes-connectivity/dhcp/files/init-server create mode 100644 meta/recipes-connectivity/farsight/farsight2_0.0.9.bb create mode 100644 meta/recipes-connectivity/farsight/libnice_0.0.6.bb create mode 100644 meta/recipes-connectivity/gsm/files/0001-Introduce-ports.patch create mode 100644 meta/recipes-connectivity/gsm/files/0002-Flush-all-pending-commands-before-restarting-the-mod.patch create mode 100644 meta/recipes-connectivity/gsm/files/0003-Correctly-segment-incoming-usock-data-into-packets.patch create mode 100644 meta/recipes-connectivity/gsm/files/0004-Handle-read-and-write-return-values.patch create mode 100644 meta/recipes-connectivity/gsm/files/0005-Add-ask-ds-option-forSMS.patch create mode 100644 meta/recipes-connectivity/gsm/files/024_sms-text-in-bracket.patch create mode 100644 meta/recipes-connectivity/gsm/files/025_sms-status-report.patch create mode 100644 meta/recipes-connectivity/gsm/files/027_phonebook-find-and-read-range-support.patch create mode 100644 meta/recipes-connectivity/gsm/files/028_shell-phonebook-find-and-read-range-support.patch create mode 100644 meta/recipes-connectivity/gsm/files/default create mode 100644 meta/recipes-connectivity/gsm/files/fix_machine_init.patch create mode 100644 meta/recipes-connectivity/gsm/files/gsmd create mode 100644 meta/recipes-connectivity/gsm/files/install-ts-headers.patch create mode 100644 meta/recipes-connectivity/gsm/files/lgsm_send_fix_return_value.patch create mode 100644 meta/recipes-connectivity/gsm/gsmd.inc create mode 100644 meta/recipes-connectivity/gsm/libgsmd_svn.bb create mode 100644 meta/recipes-connectivity/iproute2/iproute2-2.6.34/configure-cross.patch create mode 100644 meta/recipes-connectivity/iproute2/iproute2.inc create mode 100644 meta/recipes-connectivity/iproute2/iproute2_2.6.34.bb create mode 100644 meta/recipes-connectivity/libetpan/files/cxx-is-here.patch create mode 100644 meta/recipes-connectivity/libetpan/libetpan_0.54.bb create mode 100644 meta/recipes-connectivity/libnss-mdns/files/alignment-fix.patch create mode 100644 meta/recipes-connectivity/libnss-mdns/libnss-mdns_0.10.bb create mode 100644 meta/recipes-connectivity/libpcap/libpcap-1.1.1/aclocal.patch create mode 100644 meta/recipes-connectivity/libpcap/libpcap-1.1.1/ieee80215-arphrd.patch create mode 100644 meta/recipes-connectivity/libpcap/libpcap.inc create mode 100644 meta/recipes-connectivity/libpcap/libpcap_1.1.1.bb create mode 100644 meta/recipes-connectivity/network-suspend-scripts/network-suspend-scripts.bb create mode 100644 meta/recipes-connectivity/network-suspend-scripts/network-suspend-scripts/ifupdown create mode 100644 meta/recipes-connectivity/network-suspend-scripts/network-suspend-scripts/usbnet create mode 100644 meta/recipes-connectivity/nfs-utils/libnfsidmap_0.23.bb create mode 100644 meta/recipes-connectivity/nfs-utils/nfs-utils/nfs-utils-1.0.6-uclibc.patch create mode 100644 meta/recipes-connectivity/nfs-utils/nfs-utils/nfsserver create mode 100644 meta/recipes-connectivity/nfs-utils/nfs-utils_1.2.2.bb create mode 100644 meta/recipes-connectivity/openssl/openssl-0.9.8o/configure-targets.patch create mode 100644 meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/ca.patch create mode 100644 meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/config-hurd.patch create mode 100644 meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/debian-targets.patch create mode 100644 meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/engines-path.patch create mode 100644 meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/kfreebsd-pipe.patch create mode 100644 meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/make-targets.patch create mode 100644 meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/man-dir.patch create mode 100644 meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/man-section.patch create mode 100644 meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/no-rpath.patch create mode 100644 meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/no-symbolic.patch create mode 100644 meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/perl-path.diff create mode 100644 meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/pic.patch create mode 100644 meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/pkg-config.patch create mode 100644 meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/rc4-amd64.patch create mode 100644 meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/rehash-crt.patch create mode 100644 meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/rehash_pod.patch create mode 100644 meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/series create mode 100644 meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/shared-lib-ext.patch create mode 100644 meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/stddef.patch create mode 100644 meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/valgrind.patch create mode 100644 meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/version-script.patch create mode 100644 meta/recipes-connectivity/openssl/openssl-0.9.8o/shared-libs.patch create mode 100644 meta/recipes-connectivity/openssl/openssl.inc create mode 100644 meta/recipes-connectivity/openssl/openssl_0.9.8o.bb create mode 100644 meta/recipes-connectivity/openswan/openswan-2.4.7/installflags.patch create mode 100644 meta/recipes-connectivity/openswan/openswan-2.4.7/ld-library-path-breakage.patch create mode 100644 meta/recipes-connectivity/openswan/openswan-2.4.7/openswan-2.4.7-gentoo.patch create mode 100644 meta/recipes-connectivity/openswan/openswan_2.4.7.bb create mode 100644 meta/recipes-connectivity/opensync/libopensync-0.37/build-in-src.patch create mode 100644 meta/recipes-connectivity/opensync/libopensync-0.37/cmake.patch create mode 100644 meta/recipes-connectivity/opensync/libopensync-0.37/no-python-check.patch create mode 100644 meta/recipes-connectivity/opensync/libopensync-plugin-evolution2/0.37-fixes.patch create mode 100644 meta/recipes-connectivity/opensync/libopensync-plugin-evolution2_0.36.bb create mode 100644 meta/recipes-connectivity/opensync/libopensync-plugin-file_0.37.bb create mode 100644 meta/recipes-connectivity/opensync/libopensync-plugin-google-calendar_0.36.bb create mode 100644 meta/recipes-connectivity/opensync/libopensync-plugin-irmc_0.36.bb create mode 100644 meta/recipes-connectivity/opensync/libopensync-plugin-syncml/fixerror.patch create mode 100644 meta/recipes-connectivity/opensync/libopensync-plugin-syncml_0.38.bb create mode 100644 meta/recipes-connectivity/opensync/libopensync-plugin-vformat_0.37.bb create mode 100644 meta/recipes-connectivity/opensync/libopensync-plugin_0.36.inc create mode 100644 meta/recipes-connectivity/opensync/libopensync_0.37.bb create mode 100644 meta/recipes-connectivity/opensync/libsync_svn.bb create mode 100644 meta/recipes-connectivity/opensync/libsyncml/build-in-src.patch create mode 100644 meta/recipes-connectivity/opensync/libsyncml_0.5.4.bb create mode 100644 meta/recipes-connectivity/opensync/msynctool_0.37.bb create mode 100644 meta/recipes-connectivity/portmap/portmap-6.0/destdir-no-strip.patch create mode 100644 meta/recipes-connectivity/portmap/portmap-6.0/tcpd-config.patch create mode 100644 meta/recipes-connectivity/portmap/portmap.inc create mode 100755 meta/recipes-connectivity/portmap/portmap/portmap.init create mode 100644 meta/recipes-connectivity/portmap/portmap_6.0.bb create mode 100644 meta/recipes-connectivity/ppp-dialin/files/host-peer create mode 100644 meta/recipes-connectivity/ppp-dialin/files/ppp-dialin create mode 100644 meta/recipes-connectivity/ppp-dialin/ppp-dialin_0.1.bb create mode 100644 meta/recipes-connectivity/ppp/ppp-2.4.5/08setupdns create mode 100644 meta/recipes-connectivity/ppp/ppp-2.4.5/92removedns create mode 100644 meta/recipes-connectivity/ppp/ppp-2.4.5/cifdefroute.patch create mode 100644 meta/recipes-connectivity/ppp/ppp-2.4.5/enable-ipv6.patch create mode 100755 meta/recipes-connectivity/ppp/ppp-2.4.5/init create mode 100755 meta/recipes-connectivity/ppp/ppp-2.4.5/ip-down create mode 100755 meta/recipes-connectivity/ppp/ppp-2.4.5/ip-up create mode 100644 meta/recipes-connectivity/ppp/ppp-2.4.5/makefile-remove-hard-usr-reference.patch create mode 100644 meta/recipes-connectivity/ppp/ppp-2.4.5/makefile.patch create mode 100644 meta/recipes-connectivity/ppp/ppp-2.4.5/poff create mode 100644 meta/recipes-connectivity/ppp/ppp-2.4.5/pon create mode 100644 meta/recipes-connectivity/ppp/ppp-2.4.5/pppd-resolv-varrun.patch create mode 100644 meta/recipes-connectivity/ppp/ppp_2.4.5.bb create mode 100644 meta/recipes-connectivity/resolvconf/resolvconf_1.43.bb create mode 100644 meta/recipes-connectivity/wbxml/files/no-doc-install.patch create mode 100644 meta/recipes-connectivity/wbxml/wbxml2_0.9.2.bb create mode 100644 meta/recipes-core/coreutils/coreutils-6.9/futimens.patch create mode 100644 meta/recipes-core/coreutils/coreutils-6.9/gnulib_m4.patch create mode 100644 meta/recipes-core/coreutils/coreutils-6.9/man-touch.patch create mode 100644 meta/recipes-core/coreutils/coreutils_6.9.bb create mode 100644 meta/recipes-core/coreutils/coreutils_8.5.bb create mode 100644 meta/recipes-core/ncurses/ncurses.inc create mode 100644 meta/recipes-core/ncurses/ncurses/makefile_tweak.patch create mode 100644 meta/recipes-core/ncurses/ncurses/visibility.patch create mode 100644 meta/recipes-core/ncurses/ncurses_5.4.bb create mode 100644 meta/recipes-core/readline/files/acinclude.m4 create mode 100644 meta/recipes-core/readline/files/configure-fix.patch create mode 100644 meta/recipes-core/readline/readline.inc create mode 100644 meta/recipes-core/readline/readline_5.2.bb create mode 100644 meta/recipes-core/readline/readline_6.1.bb create mode 100644 meta/recipes-core/sysfsutils/sysfsutils_2.1.0.bb create mode 100644 meta/recipes-core/util-linux/files/MCONFIG create mode 100644 meta/recipes-core/util-linux/files/debian-bug392236.patch create mode 100644 meta/recipes-core/util-linux/files/defines.h create mode 100644 meta/recipes-core/util-linux/files/fdiskbsdlabel_thumb.diff create mode 100644 meta/recipes-core/util-linux/files/fix-make-c.patch create mode 100644 meta/recipes-core/util-linux/files/gcc34.patch create mode 100644 meta/recipes-core/util-linux/files/glibc-fix.patch create mode 100644 meta/recipes-core/util-linux/files/make_include create mode 100644 meta/recipes-core/util-linux/files/optional-uuid.patch create mode 100644 meta/recipes-core/util-linux/files/swapargs.h create mode 100644 meta/recipes-core/util-linux/files/umount.diff create mode 100644 meta/recipes-core/util-linux/files/uuid.patch create mode 100644 meta/recipes-core/util-linux/util-linux-2.17.2/tls.patch create mode 100644 meta/recipes-core/util-linux/util-linux-2.17.2/uclibc-compile.patch create mode 100644 meta/recipes-core/util-linux/util-linux-2.17.2/util-linux-ng-replace-siginterrupt.patch create mode 100644 meta/recipes-core/util-linux/util-linux.inc create mode 100644 meta/recipes-core/util-linux/util-linux_2.17.2.bb create mode 100644 meta/recipes-devtools/exmap-console/exmap-console.inc create mode 100644 meta/recipes-devtools/exmap-console/exmap-console_0.4.1.bb create mode 100644 meta/recipes-devtools/exmap-console/exmap-console_svn.bb delete mode 100644 meta/recipes-devtools/gmp/gmp-4.2.1/disable-stdc.patch delete mode 100644 meta/recipes-devtools/gmp/gmp.inc delete mode 100644 meta/recipes-devtools/gmp/gmp/amd64.patch delete mode 100644 meta/recipes-devtools/gmp/gmp/configure.patch delete mode 100644 meta/recipes-devtools/gmp/gmp/sh4-asmfix.patch delete mode 100644 meta/recipes-devtools/gmp/gmp/use-includedir.patch delete mode 100644 meta/recipes-devtools/gmp/gmp_4.2.1.bb delete mode 100644 meta/recipes-devtools/gmp/gmp_5.0.1.bb create mode 100644 meta/recipes-devtools/insserv/files/40_segfault_virtprov.dpatch create mode 100644 meta/recipes-devtools/insserv/files/42_loopnochangemsg.dpatch create mode 100644 meta/recipes-devtools/insserv/files/crosscompile_fix.patch create mode 100644 meta/recipes-devtools/insserv/files/insserv.conf create mode 100644 meta/recipes-devtools/insserv/files/make.patch create mode 100644 meta/recipes-devtools/insserv/insserv_1.11.0.bb create mode 100644 meta/recipes-devtools/intltool/intltool-0.40.6/intltool-nowarn-0.40.0.patch create mode 100644 meta/recipes-devtools/intltool/intltool.inc create mode 100644 meta/recipes-devtools/intltool/intltool_0.40.6.bb delete mode 100644 meta/recipes-devtools/mpfr/mpfr.inc delete mode 100644 meta/recipes-devtools/mpfr/mpfr_3.0.0.bb create mode 100644 meta/recipes-devtools/nasm/nasm_2.07.bb create mode 100644 meta/recipes-devtools/rsync/rsync-2.6.9/rsyncd.conf create mode 100644 meta/recipes-devtools/strace/strace_4.5.20.bb create mode 100644 meta/recipes-devtools/tcf-agent/tcf-agent/fix_tcf-agent.init.patch create mode 100644 meta/recipes-devtools/tcf-agent/tcf-agent/terminals_agent.patch create mode 100644 meta/recipes-devtools/tcf-agent/tcf-agent_svn.bb create mode 100644 meta/recipes-devtools/ubootchart/files/sysvinit.patch create mode 100644 meta/recipes-devtools/ubootchart/files/ubootchart-stop create mode 100644 meta/recipes-devtools/ubootchart/files/ubootchart.desktop create mode 100644 meta/recipes-devtools/ubootchart/ubootchart_svn.bb create mode 100644 meta/recipes-devtools/yaffs2/files/mkyaffs2image.patch create mode 100644 meta/recipes-devtools/yaffs2/files/yaffs2-unioob.patch create mode 100644 meta/recipes-devtools/yaffs2/yaffs2-utils.inc create mode 100644 meta/recipes-devtools/yaffs2/yaffs2-utils_cvs.bb create mode 100644 meta/recipes-extended/blktool/blktool_4-6.bb create mode 100644 meta/recipes-extended/bzip2/bzip2-1.0.5/Makefile.am create mode 100644 meta/recipes-extended/bzip2/bzip2-1.0.5/configure.ac create mode 100644 meta/recipes-extended/bzip2/bzip2_1.0.5.bb create mode 100644 meta/recipes-extended/devicekit/devicekit-power_014.bb create mode 100644 meta/recipes-extended/devicekit/devicekit/volatile create mode 100644 meta/recipes-extended/devicekit/devicekit_003.bb create mode 100644 meta/recipes-extended/devicekit/devicekit_git.bb create mode 100644 meta/recipes-extended/diffutils/diffutils_2.8.1.bb create mode 100644 meta/recipes-extended/findutils/findutils-4.2.31/gnulib-extension.patch create mode 100644 meta/recipes-extended/findutils/findutils-4.4.2/01-27017.patch create mode 100644 meta/recipes-extended/findutils/findutils-4.4.2/02-28824.patch create mode 100644 meta/recipes-extended/findutils/findutils-4.4.2/03-28872.patch create mode 100644 meta/recipes-extended/findutils/findutils.inc create mode 100644 meta/recipes-extended/findutils/findutils_4.2.31.bb create mode 100644 meta/recipes-extended/findutils/findutils_4.4.2.bb create mode 100644 meta/recipes-extended/gperf/gperf.inc create mode 100644 meta/recipes-extended/gperf/gperf_3.0.3.bb create mode 100644 meta/recipes-extended/gperf/gperf_3.0.4.bb create mode 100644 meta/recipes-extended/grep/grep-2.5.1a/uclibc-fix.patch create mode 100644 meta/recipes-extended/grep/grep_2.5.1a.bb create mode 100644 meta/recipes-extended/gzip/gzip-1.3.12/dup-def-fix.patch create mode 100644 meta/recipes-extended/gzip/gzip-1.3.12/m4-extensions-fix.patch create mode 100644 meta/recipes-extended/gzip/gzip.inc create mode 100644 meta/recipes-extended/gzip/gzip_1.3.12.bb create mode 100644 meta/recipes-extended/gzip/gzip_1.4.bb create mode 100644 meta/recipes-extended/hdparm/hdparm-6.3/bswap.patch create mode 100644 meta/recipes-extended/hdparm/hdparm-6.3/uclibc.patch create mode 100644 meta/recipes-extended/hdparm/hdparm_6.3.bb create mode 100644 meta/recipes-extended/libidn/libidn_0.6.14.bb create mode 100644 meta/recipes-extended/libidn/libidn_1.19.bb create mode 100644 meta/recipes-extended/lsof/lsof_4.83.bb create mode 100644 meta/recipes-extended/pam/libpam-1.1.1/99_pam create mode 100644 meta/recipes-extended/pam/libpam-1.1.1/disable_crossbinary.patch create mode 100644 meta/recipes-extended/pam/libpam-1.1.1/pam.d/common-account create mode 100644 meta/recipes-extended/pam/libpam-1.1.1/pam.d/common-auth create mode 100644 meta/recipes-extended/pam/libpam-1.1.1/pam.d/common-password create mode 100644 meta/recipes-extended/pam/libpam-1.1.1/pam.d/common-session create mode 100644 meta/recipes-extended/pam/libpam-1.1.1/pam.d/common-session-noninteractive create mode 100644 meta/recipes-extended/pam/libpam-1.1.1/pam.d/other create mode 100644 meta/recipes-extended/pam/libpam_1.1.1.bb create mode 100644 meta/recipes-extended/parted/parted-1.9.0/no_check.patch create mode 100644 meta/recipes-extended/parted/parted-1.9.0/syscalls.patch create mode 100644 meta/recipes-extended/parted/parted_1.9.0.bb create mode 100644 meta/recipes-extended/polkit/polkit-gnome_0.96.bb create mode 100644 meta/recipes-extended/polkit/polkit_0.96.bb create mode 100644 meta/recipes-extended/psmisc/files/libintl-link.patch create mode 100644 meta/recipes-extended/psmisc/psmisc.inc create mode 100644 meta/recipes-extended/psmisc/psmisc_22.2.bb create mode 100644 meta/recipes-extended/sed/sed-4.1.2/fix_return_type.patch create mode 100644 meta/recipes-extended/sed/sed_4.1.2.bb create mode 100644 meta/recipes-extended/sudo/files/autofoo.patch create mode 100644 meta/recipes-extended/sudo/files/noexec-link.patch create mode 100644 meta/recipes-extended/sudo/files/nostrip.patch create mode 100644 meta/recipes-extended/sudo/site/bit-32 create mode 100644 meta/recipes-extended/sudo/site/bit-64 create mode 100644 meta/recipes-extended/sudo/sudo.inc create mode 100644 meta/recipes-extended/sudo/sudo_1.7.2p7.bb create mode 100644 meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/00_man_quoting.diff create mode 100644 meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/01_man_portability.patch create mode 100644 meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/05_wildcard_matching.patch create mode 100644 meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/06_fix_gethostbyname.patch create mode 100644 meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/10_usagi-ipv6.patch create mode 100644 meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/11_tcpd_blacklist.patch create mode 100644 meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/11_usagi_fix.patch create mode 100644 meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/12_makefile_config.patch create mode 100644 meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/13_shlib_weaksym.patch create mode 100644 meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/14_cidr_support.patch create mode 100644 meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/15_match_clarify.patch create mode 100644 meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/expand_remote_port.patch create mode 100644 meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/have_strerror.patch create mode 100644 meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/ldflags.patch create mode 100644 meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/man_fromhost.patch create mode 100644 meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/restore_sigalarm.patch create mode 100644 meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/rfc931.diff create mode 100644 meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/safe_finger.8 create mode 100644 meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/safe_finger.patch create mode 100644 meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/sig_fix.patch create mode 100644 meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/siglongjmp.patch create mode 100644 meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/size_t.patch create mode 100644 meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/tcpdchk_libwrapped.patch create mode 100644 meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/try-from.8 create mode 100644 meta/recipes-extended/tcp-wrappers/tcp-wrappers_7.6.bb create mode 100644 meta/recipes-extended/tzcode/tzcode-native_2009r.bb create mode 100644 meta/recipes-extended/tzdata/tzdata_2010j.bb create mode 100644 meta/recipes-extended/unzip/unzip_6.0.bb create mode 100644 meta/recipes-extended/watchdog/watchdog_5.9.bb create mode 100644 meta/recipes-extended/zile/files/for_build.patch create mode 100644 meta/recipes-extended/zile/zile_1.7+2.0beta6.bb create mode 100644 meta/recipes-extended/zip/zip.inc create mode 100644 meta/recipes-extended/zip/zip_3.0.bb create mode 100644 meta/recipes-gnome/libffi/libffi_3.0.8.bb create mode 100644 meta/recipes-gnome/libgsf/libgsf_1.14.5.bb create mode 100644 meta/recipes-gnome/libgtkstylus/files/gtkstylus.sh create mode 100644 meta/recipes-gnome/libgtkstylus/libgtkstylus_0.5.bb create mode 100644 meta/recipes-gnome/librsvg/librsvg_2.18.2.bb create mode 100644 meta/recipes-gnome/librsvg/librsvg_2.22.3.bb create mode 100644 meta/recipes-gnome/librsvg/librsvg_2.26.3.bb create mode 100644 meta/recipes-gnome/wv/wv-1.2.0/pkgconfig.patch create mode 100644 meta/recipes-gnome/wv/wv_1.2.0.bb delete mode 100644 meta/recipes-graphics/clutter/clutter-helix.inc delete mode 100644 meta/recipes-graphics/clutter/clutter-helix_git.bb delete mode 100644 meta/recipes-graphics/clutter/clutter-mozembed.inc delete mode 100644 meta/recipes-graphics/clutter/clutter-mozembed_git.bb create mode 100644 meta/recipes-graphics/fstests/fstests_svn.bb create mode 100644 meta/recipes-graphics/libsdl/files/acinclude.m4 create mode 100644 meta/recipes-graphics/libsdl/files/configure_tweak.patch create mode 100644 meta/recipes-graphics/libsdl/files/directfb_obsolete_calls.patch create mode 100644 meta/recipes-graphics/libsdl/files/extra-keys.patch create mode 100644 meta/recipes-graphics/libsdl/files/kernel-asm-page.patch create mode 100644 meta/recipes-graphics/libsdl/libsdl-nativesdk_1.2.11.bb create mode 100644 meta/recipes-graphics/pong-clock/pong-clock/pong-clock-no-flicker.c create mode 100644 meta/recipes-graphics/pong-clock/pong-clock_1.0.bb create mode 100644 meta/recipes-graphics/x11vnc/x11vnc_0.9.3.bb create mode 100644 meta/recipes-graphics/xrestop/xrestop_0.4.bb create mode 100644 meta/recipes-graphics/xvideo-tests/xvideo-tests_svn.bb create mode 100644 meta/recipes-kernel/fuse/fuse-2.7.2/not-run-updaterc.d-on-host.patch create mode 100644 meta/recipes-kernel/fuse/fuse.inc create mode 100644 meta/recipes-kernel/fuse/fuse_2.7.2.bb create mode 100644 meta/recipes-multimedia/libomxil/libomxil_0.3.3.bb create mode 100644 meta/recipes-multimedia/speex/speex_1.2rc1.bb delete mode 100644 meta/recipes-qt/qmake/qmake2-cross/0001-fix-mkspecs.patch delete mode 100644 meta/recipes-qt/qmake/qmake2-cross/linux-oe-qmake.conf delete mode 100644 meta/recipes-qt/qmake/qmake2-cross/use-lflags-last.patch delete mode 100644 meta/recipes-qt/qmake/qmake2-cross_2.10a.bb delete mode 100644 meta/recipes-qt/uicmoc/uicmoc4-native.inc delete mode 100644 meta/recipes-qt/uicmoc/uicmoc4-native_4.3.2.bb create mode 100644 meta/recipes-sato/claws-mail/claws-mail.inc create mode 100644 meta/recipes-sato/claws-mail/claws-mail_2.9.1.bb create mode 100644 meta/recipes-sato/claws-mail/claws-plugin-gtkhtml2-viewer_0.15.bb create mode 100644 meta/recipes-sato/claws-mail/claws-plugin-maildir_0.24.4.bb create mode 100644 meta/recipes-sato/claws-mail/claws-plugin-mailmbox_1.13.bb create mode 100644 meta/recipes-sato/claws-mail/claws-plugin-rssyl_0.13.bb create mode 100644 meta/recipes-sato/claws-mail/files/desktop.patch create mode 100644 meta/recipes-sato/claws-mail/files/fix-build.patch create mode 100644 meta/recipes-sato/claws-mail/files/owl-window-menu.patch create mode 100644 meta/recipes-sato/claws-mail/files/streamline-ui.patch create mode 100644 meta/recipes-sato/libical/libical_0.44.bb create mode 100644 meta/recipes-sato/rxvt-unicode/files/makefile.patch create mode 100644 meta/recipes-sato/rxvt-unicode/files/rxvt.desktop create mode 100644 meta/recipes-sato/rxvt-unicode/files/rxvt.png create mode 100644 meta/recipes-sato/rxvt-unicode/files/signedchar.patch create mode 100644 meta/recipes-sato/rxvt-unicode/files/xwc.patch create mode 100644 meta/recipes-sato/rxvt-unicode/rxvt-unicode-5.6/xwc.patch create mode 100644 meta/recipes-sato/rxvt-unicode/rxvt-unicode_5.6.bb create mode 100644 meta/recipes-sato/webkit/files/GNUmakefile.am create mode 100644 meta/recipes-sato/webkit/files/Makefile create mode 100644 meta/recipes-sato/webkit/files/Makefile.shared create mode 100644 meta/recipes-sato/webkit/files/WebKit.pri create mode 100644 meta/recipes-sato/webkit/files/WebKit.pro create mode 100755 meta/recipes-sato/webkit/files/autogen.sh create mode 100644 meta/recipes-sato/webkit/files/configure.ac create mode 100644 meta/recipes-sato/webkit/files/fix_im.patch create mode 100644 meta/recipes-sato/webkit/files/gtk-doc.make create mode 100644 meta/recipes-sato/webkit/webkit-gtk_svn.bb create mode 100644 meta/recipes-support/apr/apr-util/configfix.patch create mode 100644 meta/recipes-support/apr/apr-util/configure_fixes.patch create mode 100644 meta/recipes-support/apr/apr-util/configure_fixes.patch.old create mode 100644 meta/recipes-support/apr/apr-util_1.3.4.bb create mode 100644 meta/recipes-support/apr/apr/cleanup.patch create mode 100644 meta/recipes-support/apr/apr/configfix.patch create mode 100644 meta/recipes-support/apr/apr/configure_fixes.patch create mode 100644 meta/recipes-support/apr/apr_1.3.3.bb create mode 100644 meta/recipes-support/aspell/aspell_0.60.6.bb create mode 100644 meta/recipes-support/atk/atk.inc create mode 100644 meta/recipes-support/atk/atk_1.30.0.bb create mode 100644 meta/recipes-support/attr/acl.inc create mode 100644 meta/recipes-support/attr/acl_2.2.49.bb create mode 100644 meta/recipes-support/attr/attr-2.4.44/double-free.patch create mode 100644 meta/recipes-support/attr/attr-2.4.44/memory-leak-in-copy.patch create mode 100644 meta/recipes-support/attr/attr-2.4.44/memory-leak2.patch create mode 100644 meta/recipes-support/attr/attr-2.4.44/pull-in-string.h.patch create mode 100644 meta/recipes-support/attr/attr-2.4.44/thinko-in-restore.patch create mode 100644 meta/recipes-support/attr/attr.inc create mode 100644 meta/recipes-support/attr/attr_2.4.44.bb create mode 100644 meta/recipes-support/attr/ea-acl.inc create mode 100644 meta/recipes-support/attr/files/relative-libdir.patch create mode 100644 meta/recipes-support/beecrypt/beecrypt/disable-icu-check.patch create mode 100644 meta/recipes-support/beecrypt/beecrypt/fix-security.patch create mode 100644 meta/recipes-support/beecrypt/beecrypt/x64fix.patch create mode 100644 meta/recipes-support/beecrypt/beecrypt_4.1.2.bb create mode 100644 meta/recipes-support/boost/boost-36.inc create mode 100644 meta/recipes-support/boost/boost-jam-native.inc create mode 100644 meta/recipes-support/boost/boost-jam-native_3.1.18.bb create mode 100644 meta/recipes-support/boost/boost_1.44.0.bb create mode 100644 meta/recipes-support/boost/files/1.34.1-gcc43.patch create mode 100644 meta/recipes-support/boost/files/arm-intrinsics.patch create mode 100644 meta/recipes-support/boost/files/atomic_count_gcc_atomicity.patch create mode 100644 meta/recipes-support/boost/files/gcc41.patch create mode 100644 meta/recipes-support/boost/files/gcc43.patch create mode 100644 meta/recipes-support/boost/files/linux-uclibc.patch create mode 100644 meta/recipes-support/boost/files/unit_test_log10f.patch create mode 100644 meta/recipes-support/curl/curl/noldlibpath.patch create mode 100644 meta/recipes-support/curl/curl/pkgconfig_fix.patch create mode 100644 meta/recipes-support/curl/curl_7.21.0.bb create mode 100644 meta/recipes-support/db/db/arm-thumb-mutex.patch create mode 100644 meta/recipes-support/db/db/configure_fixes.patch create mode 100644 meta/recipes-support/db/db_4.2.52.bb create mode 100644 meta/recipes-support/db/db_4.3.29.bb create mode 100644 meta/recipes-support/enchant/enchant_1.6.0.bb create mode 100644 meta/recipes-support/gdbm/gdbm-1.8.3/libtool-mode.patch create mode 100644 meta/recipes-support/gdbm/gdbm-1.8.3/makefile.patch create mode 100644 meta/recipes-support/gdbm/gdbm_1.8.3.bb create mode 100644 meta/recipes-support/gmp/gmp-4.2.1/disable-stdc.patch create mode 100644 meta/recipes-support/gmp/gmp.inc create mode 100644 meta/recipes-support/gmp/gmp/amd64.patch create mode 100644 meta/recipes-support/gmp/gmp/configure.patch create mode 100644 meta/recipes-support/gmp/gmp/sh4-asmfix.patch create mode 100644 meta/recipes-support/gmp/gmp/use-includedir.patch create mode 100644 meta/recipes-support/gmp/gmp_4.2.1.bb create mode 100644 meta/recipes-support/gmp/gmp_5.0.1.bb create mode 100644 meta/recipes-support/gnutls/gnutls-2.8.6/configure-fix.patch create mode 100644 meta/recipes-support/gnutls/gnutls-2.8.6/gnutls-openssl.patch create mode 100644 meta/recipes-support/gnutls/gnutls-2.8.6/gnutls-texinfo-euro.patch create mode 100644 meta/recipes-support/gnutls/gnutls.inc create mode 100644 meta/recipes-support/gnutls/gnutls_2.8.6.bb create mode 100644 meta/recipes-support/gnutls/libtasn1_2.7.bb create mode 100644 meta/recipes-support/gpgme/gpgme-1.3.0/disable_gpgconf_check.patch create mode 100644 meta/recipes-support/gpgme/gpgme_1.3.0.bb create mode 100755 meta/recipes-support/hal/files/20hal create mode 100644 meta/recipes-support/hal/files/autoconf.diff create mode 100644 meta/recipes-support/hal/files/hal-right-input-h.patch create mode 100644 meta/recipes-support/hal/files/sg-inhibit.patch create mode 100644 meta/recipes-support/hal/hal-info.inc create mode 100644 meta/recipes-support/hal/hal-info_20091130.bb create mode 100644 meta/recipes-support/hal/hal-info_git.bb create mode 100644 meta/recipes-support/hal/hal.inc create mode 100644 meta/recipes-support/hal/hal/configure_fix.patch create mode 100644 meta/recipes-support/hal/hal_0.5.14.bb create mode 100644 meta/recipes-support/hal/hal_git.bb create mode 100644 meta/recipes-support/icu/files/gccfix.patch create mode 100644 meta/recipes-support/icu/files/noldlibpath.patch create mode 100644 meta/recipes-support/icu/files/use-g++-for-linking.patch create mode 100644 meta/recipes-support/icu/icu-3.6.inc create mode 100644 meta/recipes-support/icu/icu_3.6.bb create mode 100644 meta/recipes-support/iso-codes/iso-codes_3.3.bb create mode 100644 meta/recipes-support/js/files/buildcc.patch create mode 100644 meta/recipes-support/js/files/configure.ac create mode 100644 meta/recipes-support/js/files/jsautocfg.h create mode 100644 meta/recipes-support/js/files/link_with_gcc.patch create mode 100644 meta/recipes-support/js/files/usepic.patch create mode 100644 meta/recipes-support/js/js_1.7.0+1.8.0rc1.bb create mode 100644 meta/recipes-support/libassuan/libassuan_2.0.0.bb create mode 100644 meta/recipes-support/libcap/libcap.inc create mode 100644 meta/recipes-support/libcap/libcap_2.19.bb create mode 100644 meta/recipes-support/libcheck/libcheck_0.9.8.bb create mode 100644 meta/recipes-support/libcroco/files/croco.patch create mode 100644 meta/recipes-support/libcroco/libcroco_0.6.2.bb create mode 100644 meta/recipes-support/libdaemon/libdaemon_0.14.bb create mode 100644 meta/recipes-support/libevent/libevent_1.4.14b.bb create mode 100644 meta/recipes-support/libfm/libfm_0.1.12.bb create mode 100644 meta/recipes-support/libfribidi/files/libtool-update.patch create mode 100644 meta/recipes-support/libfribidi/libfribidi_0.10.4.bb create mode 100644 meta/recipes-support/libgcrypt/files/add-pkgconfig-support.patch create mode 100644 meta/recipes-support/libgcrypt/libgcrypt.inc create mode 100644 meta/recipes-support/libgcrypt/libgcrypt_1.4.6.bb create mode 100644 meta/recipes-support/libgdbus/libgdbus_git.bb create mode 100644 meta/recipes-support/libgpg-error/libgpg-error-1.8/pkgconfig.patch create mode 100644 meta/recipes-support/libgpg-error/libgpg-error_1.8.bb create mode 100644 meta/recipes-support/libiconv/libiconv_1.9.2.bb create mode 100644 meta/recipes-support/libmpc/libmpc.inc create mode 100644 meta/recipes-support/libmpc/libmpc_0.8.2.bb create mode 100644 meta/recipes-support/libnl/libnl/compilefix.patch create mode 100644 meta/recipes-support/libnl/libnl/local-includes.patch create mode 100644 meta/recipes-support/libnl/libnl_1.1.bb create mode 100644 meta/recipes-support/liboil/liboil-0.3.17/no-tests.patch create mode 100644 meta/recipes-support/liboil/liboil_0.3.17.bb create mode 100644 meta/recipes-support/libpcre/files/pcre-cross.patch create mode 100644 meta/recipes-support/libpcre/libpcre_8.10.bb create mode 100644 meta/recipes-support/libproxy/libproxy_0.4.3.bb create mode 100644 meta/recipes-support/libsoup/libsoup-2.4_2.31.2.bb create mode 100644 meta/recipes-support/libsoup/libsoup-2.4_2.4.1.bb create mode 100644 meta/recipes-support/libsoup/libsoup_2.2.100.bb create mode 100644 meta/recipes-support/liburcu/liburcu_0.4.6.bb create mode 100644 meta/recipes-support/libusb/libusb-compat-0.1.3/0.1.0-beta1-gcc3.4-fix.patch create mode 100644 meta/recipes-support/libusb/libusb-compat_0.1.3.bb create mode 100644 meta/recipes-support/libusb/libusb1_1.0.8.bb create mode 100644 meta/recipes-support/libxslt/libxslt/pkgconfig_fix.patch create mode 100644 meta/recipes-support/libxslt/libxslt_1.1.26.bb create mode 100644 meta/recipes-support/lzo/lzo-2.03/acinclude.m4 create mode 100644 meta/recipes-support/lzo/lzo-2.03/autofoo.patch create mode 100644 meta/recipes-support/lzo/lzo_2.03.bb create mode 100644 meta/recipes-support/mpfr/mpfr.inc create mode 100644 meta/recipes-support/mpfr/mpfr_3.0.0.bb create mode 100644 meta/recipes-support/neon/neon-0.29.3/pkgconfig.patch create mode 100644 meta/recipes-support/neon/neon_0.29.3.bb create mode 100644 meta/recipes-support/ohm/ohm/fix_configure.patch create mode 100644 meta/recipes-support/ohm/ohm_git.bb create mode 100644 meta/recipes-support/openobex/files/disable-cable-test.patch create mode 100644 meta/recipes-support/openobex/files/libusb_crosscompile_check.patch create mode 100644 meta/recipes-support/openobex/openobex_1.5.bb create mode 100644 meta/recipes-support/popt/popt_1.16.bb create mode 100644 meta/recipes-support/pth/pth_2.0.7.bb create mode 100644 meta/recipes-support/shared-mime-info/shared-mime-info.inc create mode 100644 meta/recipes-support/shared-mime-info/shared-mime-info_0.71.bb create mode 100644 meta/recipes-support/sqlite/sqlite3.inc create mode 100644 meta/recipes-support/sqlite/sqlite3/libtool.patch create mode 100644 meta/recipes-support/sqlite/sqlite3_3.6.23.1.bb create mode 100644 meta/recipes-support/vte/vte.inc create mode 100644 meta/recipes-support/vte/vte_0.24.3.bb create mode 100644 meta/recipes-tbd/poppler/poppler-data_0.1.bb create mode 100644 meta/recipes-tbd/poppler/poppler-fpu.inc create mode 100644 meta/recipes-tbd/poppler/poppler.inc create mode 100644 meta/recipes-tbd/poppler/poppler_0.9.2.bb create mode 100644 meta/recipes-tbd/xournal/files/ldflags.patch create mode 100644 meta/recipes-tbd/xournal/files/no-printing.diff create mode 100644 meta/recipes-tbd/xournal/xournal_0.2.bb (limited to 'meta') diff --git a/meta/packages/apmd/apmd-3.2.2-14/apmd_proxy b/meta/packages/apmd/apmd-3.2.2-14/apmd_proxy deleted file mode 100644 index c48ee4e5d5..0000000000 --- a/meta/packages/apmd/apmd-3.2.2-14/apmd_proxy +++ /dev/null @@ -1,91 +0,0 @@ -#!/bin/sh -# -# apmd_proxy - program dispatcher for APM daemon -# -# Written by Craig Markwardt (craigm@lheamail.gsfc.nasa.gov) 21 May 1999 -# Modified for Debian by Avery Pennarun -# -# This shell script is called by the APM daemon (apmd) when a power -# management event occurs. Its first and second arguments describe the -# event. For example, apmd will call "apmd_proxy suspend system" just -# before the system is suspended. -# -# Here are the possible arguments: -# -# start - APM daemon has started -# stop - APM daemon is shutting down -# suspend critical - APM system indicates critical suspend (++) -# suspend system - APM system has requested suspend mode -# suspend user - User has requested suspend mode -# standby system - APM system has requested standby mode -# standby user - User has requested standby mode -# resume suspend - System has resumed from suspend mode -# resume standby - System has resumed from standby mode -# resume critical - System has resumed from critical suspend -# change battery - APM system reported low battery -# change power - APM system reported AC/battery change -# change time - APM system reported time change (*) -# change capability - APM system reported config. change (+) -# -# (*) - APM daemon may be configured to not call these sequences -# (+) - Available if APM kernel supports it. -# (++) - "suspend critical" is never passed to apmd from the kernel, -# so we will never see it here. Scripts that process "resume -# critical" events need to take this into account. -# -# It is the proxy script's responsibility to examine the APM status -# (via /proc/apm) or other status and to take appropriate actions. -# For example, the script might unmount network drives before the -# machine is suspended. -# -# In Debian, the usual way of adding functionality to the proxy is to -# add a script to /etc/apm/event.d. This script will be called by -# apmd_proxy (via run-parts) with the same arguments. -# -# If it is important that a certain set of script be run in a certain -# order on suspend and in a different order on resume, then put all -# the scripts in /etc/apm/scripts.d instead of /etc/apm/event.d and -# symlink to these from /etc/apm/suspend.d, /etc/apm/resume.d and -# /etc/apm/other.d using names whose lexicographical order is the same -# as the desired order of execution. -# -# If the kernel's APM driver supports it, apmd_proxy can return a non-zero -# exit status on suspend and standby events, indicating that the suspend -# or standby event should be rejected. -# -# ******************************************************************* - -set -e - -# The following doesn't yet work, because current kernels (up to at least -# 2.4.20) do not support rejection of APM events. Supporting this would -# require substantial modifications to the APM driver. We will re-enable -# this feature if the driver is ever modified. -- cph@debian.org -# -#SUSPEND_ON_AC=false -#[ -r /etc/apm/apmd_proxy.conf ] && . /etc/apm/apmd_proxy.conf -# -#if [ "${SUSPEND_ON_AC}" = "false" -a "${2}" = "system" ] \ -# && on_ac_power >/dev/null; then -# # Reject system suspends and standbys if we are on AC power -# exit 1 # Reject (NOTE kernel support must be enabled) -#fi - -if [ "${1}" = "suspend" -o "${1}" = "standby" ]; then - run-parts -a "${1}" -a "${2}" /etc/apm/event.d - if [ -d /etc/apm/suspend.d ]; then - run-parts -a "${1}" -a "${2}" /etc/apm/suspend.d - fi -elif [ "${1}" = "resume" ]; then - if [ -d /etc/apm/resume.d ]; then - run-parts -a "${1}" -a "${2}" /etc/apm/resume.d - fi - run-parts -a "${1}" -a "${2}" /etc/apm/event.d -else - run-parts -a "${1}" -a "${2}" /etc/apm/event.d - if [ -d /etc/apm/other.d ]; then - run-parts -a "${1}" -a "${2}" /etc/apm/other.d - fi -fi - -exit 0 diff --git a/meta/packages/apmd/apmd-3.2.2-14/apmd_proxy.conf b/meta/packages/apmd/apmd-3.2.2-14/apmd_proxy.conf deleted file mode 100644 index 751145c522..0000000000 --- a/meta/packages/apmd/apmd-3.2.2-14/apmd_proxy.conf +++ /dev/null @@ -1,16 +0,0 @@ -# /etc/apm/apmd_proxy.conf: configuration file for apmd. -# -# This file is managed by debconf when installing or reconfiguring the -# package. It is generated by merging the answers gathered by debconf -# into the template file "/usr/share/apmd/apmd_proxy.conf". - -# The following doesn't yet work, because current kernels (up to at least -# 2.4.20) do not support rejection of APM events. Supporting this would -# require substantial modifications to the APM driver. We will re-enable -# this feature if the driver is ever modified. -- cph@debian.org -# -# Set the following to "false" if you want to reject system suspend or -# system standby requests when the computer is running on AC power. -# Otherwise set this to "true". Such requests are never rejected when -# the computer is running on battery power. -#SUSPEND_ON_AC=true diff --git a/meta/packages/apmd/apmd-3.2.2-14/default b/meta/packages/apmd/apmd-3.2.2-14/default deleted file mode 100644 index 4b7965abf8..0000000000 --- a/meta/packages/apmd/apmd-3.2.2-14/default +++ /dev/null @@ -1,8 +0,0 @@ -# -# Default for /etc/init.d/apmd -# - -# As apmd can be called with arguments, we use the following variable -# to store them, e.g., APMD="-w 5 -p 2". -# See the manual page apmd(8) for details. -APMD="--proxy-timeout 30" diff --git a/meta/packages/apmd/apmd-3.2.2-14/init b/meta/packages/apmd/apmd-3.2.2-14/init deleted file mode 100755 index 268d4b26b7..0000000000 --- a/meta/packages/apmd/apmd-3.2.2-14/init +++ /dev/null @@ -1,44 +0,0 @@ -#!/bin/sh -### BEGIN INIT INFO -# Provides: apmd -# Required-Start: $remote_fs -# Required-Stop: $remote_fs -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 -# Short-Description: Advanced Power Management daemon -### END INIT INFO - -PATH=/bin:/usr/bin:/sbin:/usr/sbin - -[ -f /etc/default/rcS ] && . /etc/default/rcS -[ -f /etc/default/apmd ] && . /etc/default/apmd - -case "$1" in - start) - echo -n "Starting advanced power management daemon: " - start-stop-daemon -S -x /usr/sbin/apmd -- \ - -P /etc/apm/apmd_proxy $APMD - if [ $? = 0 ]; then - echo "apmd." - else - echo "(failed.)" - fi - ;; - stop) - echo -n "Stopping advanced power management daemon: " - start-stop-daemon -K \ - -x /usr/sbin/apmd - echo "apmd." - ;; - restart|force-reload) - $0 stop - $0 start - exit - ;; - *) - echo "Usage: /etc/init.d/apmd {start|stop|restart|force-reload}" - exit 1 - ;; -esac - -exit 0 diff --git a/meta/packages/apmd/apmd-3.2.2-14/libtool.patch b/meta/packages/apmd/apmd-3.2.2-14/libtool.patch deleted file mode 100644 index 711e777084..0000000000 --- a/meta/packages/apmd/apmd-3.2.2-14/libtool.patch +++ /dev/null @@ -1,29 +0,0 @@ -# Add by RP to address "unable to infer tagged configuration" error: -# commit 35de05e61b88c0808a5e885bb0efdf420555d5ad -# Author: Richard Purdie -# Date: Sun Jun 1 16:13:38 2008 +0000 -# -# apmd: Use libtool --tag options to avoid problems with libtool 2.2.4 (from poky) -# -# However I didn't see same issue with current libtool-2.2.10. Also per my understanding, -# the default tag, if not specified, falls back to CC. So disable it from patching, but -# keep it here. If we encounter similar issue in the future, we could then push upstream -# -# Comment added by Kevin Tian , 2010-07-16 - -Index: apmd-3.2.2.orig/Makefile -=================================================================== ---- apmd-3.2.2.orig.orig/Makefile 2004-01-04 08:13:18.000000000 +0000 -+++ apmd-3.2.2.orig/Makefile 2008-04-21 17:10:03.000000000 +0100 -@@ -58,9 +57,8 @@ - #CFLAGS=-O3 -m486 -fomit-frame-pointer - #LDFLAGS=-s - --LIBTOOL=libtool --quiet --LT_COMPILE = $(LIBTOOL) --mode=compile $(CC) --LT_LINK = $(LIBTOOL) --mode=link $(CC) -+LT_COMPILE = $(LIBTOOL) --tag=CC --mode=compile $(CC) -+LT_LINK = $(LIBTOOL) --tag=CC --mode=link $(CC) - LT_INSTALL = $(LIBTOOL) --mode=install install - LT_CLEAN = $(LIBTOOL) --mode=clean rm - diff --git a/meta/packages/apmd/apmd-3.2.2-14/unlinux.patch b/meta/packages/apmd/apmd-3.2.2-14/unlinux.patch deleted file mode 100644 index c64e7df524..0000000000 --- a/meta/packages/apmd/apmd-3.2.2-14/unlinux.patch +++ /dev/null @@ -1,21 +0,0 @@ -# copy OE commit message here: -# commit 9456cdc1cf43e3ba9e6d88c63560c1b6fdee4359 -# Author: Michael Krelin -# Date: Tue May 29 12:27:45 2007 +0000 -# -# apmd: prevent build from interferring with host kernel headers. Closes #1257 -# -# comment added by Kevin Tian , 2010-07-13 - ---- apmd-3.2.2.orig/Makefile -+++ apmd-3.2.2/Makefile -@@ -43,8 +43,7 @@ - - CC=gcc - CFLAGS=-O -g --XTRACFLAGS=-Wall -pipe -I. -I/usr/src/linux/include -I/usr/X11R6/include \ -- -I/usr/src/linux-2.2/include -I /usr/src/linux-2.0/include \ -+XTRACFLAGS=-Wall -pipe -I. \ - -DVERSION=\"$(VERSION)\" \ - -DDEFAULT_PROXY_NAME=\"$(PROXY_DIR)/apmd_proxy\" - LDFLAGS= diff --git a/meta/packages/apmd/apmd-3.2.2-14/workaround.patch b/meta/packages/apmd/apmd-3.2.2-14/workaround.patch deleted file mode 100644 index d37380397c..0000000000 --- a/meta/packages/apmd/apmd-3.2.2-14/workaround.patch +++ /dev/null @@ -1,59 +0,0 @@ -# this workaround is there in OE since 2003. It looks to provide a workaround -# allowing others sending SIGUSR1 to cause an apm suspend event. Disable it for -# now. -# -# comment added by Kevin Tian , 2010-07-13 -# -# Patch managed by http://www.holgerschurig.de/patcher.html -# - ---- apmd-3.2.2.orig/apmd.c~workaround.patch -+++ apmd-3.2.2.orig/apmd.c -@@ -158,6 +158,7 @@ - static int quiet_bios_batlow; /* = 0 */ - static int verbosity = DEFAULT_VERBOSITY; - static int warn_level = 10; -+static int sleep_now = 0; /* ntp */ - - static uid_t apmd_uid = 0; - static int apmd_fd = -1; -@@ -942,6 +943,12 @@ - exit(0); - } - -+/* ntp */ -+static void sig_usr1(int sig) -+{ -+ sleep_now = 1; -+} -+ - int main(int argc, char **argv) - { - int c; -@@ -1151,6 +1158,8 @@ - openlog("apmd", (verbosity>=LOG_DEBUG)?LOG_PERROR:0 | LOG_PID | LOG_CONS, LOG_DAEMON); - - /* Set up signal handler */ -+ if (signal(SIGUSR1, SIG_IGN) != SIG_IGN) -+ signal(SIGUSR1, sig_usr1); /* ntp */ - if (signal(SIGINT, SIG_IGN) != SIG_IGN) - signal(SIGINT, sig_handler); - if (signal(SIGQUIT, SIG_IGN) != SIG_IGN) -@@ -1230,9 +1239,16 @@ - - for (;;) - { -- int num_events = apm_get_events(apmd_fd, check_interval, events, MAX_EVENTS); -+ int num_events; - int e, a; - -+ /* ntp */ -+ if (sleep_now) { -+ sleep_now = 0; -+ handle_event(APM_USER_SUSPEND, &apminfo); -+ } -+ -+ num_events = apm_get_events(apmd_fd, check_interval, events, MAX_EVENTS); - apm_read(&apminfo); - - if (num_events == 0) { diff --git a/meta/packages/apmd/apmd_3.2.2-14.bb b/meta/packages/apmd/apmd_3.2.2-14.bb deleted file mode 100644 index 2778cc69e8..0000000000 --- a/meta/packages/apmd/apmd_3.2.2-14.bb +++ /dev/null @@ -1,63 +0,0 @@ -DESCRIPTION = "Set of tools for managing notebook power consumption." -SECTION = "base" -PRIORITY = "required" -LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ - file://apm.h;firstline=6;endline=18;md5=c9a1f79036ab14aa157e15ed75ffd769" -DEPENDS = "libtool-cross" -PR = "r1" - -SRC_URI = "${DEBIAN_MIRROR}/main/a/apmd/apmd_3.2.2.orig.tar.gz \ - ${DEBIAN_MIRROR}/main/a/apmd/apmd_${PV}.diff.gz \ - file://libtool.patch \ - file://unlinux.patch \ - file://init \ - file://default \ - file://apmd_proxy \ - file://apmd_proxy.conf" - -S = "${WORKDIR}/apmd-3.2.2.orig" - -inherit update-rc.d - -INITSCRIPT_NAME = "apmd" -INITSCRIPT_PARAMS = "defaults" - -do_compile() { - # apmd doesn't use whole autotools. Just libtool for installation - oe_runmake "LIBTOOL=${STAGING_BINDIR_CROSS}/${TARGET_PREFIX}libtool" apm apmd -} - -do_install() { - install -d ${D}${sysconfdir} - install -d ${D}${sysconfdir}/apm - install -d ${D}${sysconfdir}/apm/event.d - install -d ${D}${sysconfdir}/apm/other.d - install -d ${D}${sysconfdir}/apm/suspend.d - install -d ${D}${sysconfdir}/apm/resume.d - install -d ${D}${sysconfdir}/apm/scripts.d - install -d ${D}${sysconfdir}/default - install -d ${D}${sysconfdir}/init.d - install -d ${D}${sbindir} - install -d ${D}${bindir} - install -d ${D}${libdir} - install -d ${D}${datadir}/apmd - install -d ${D}${includedir} - - install -m 4755 ${S}/.libs/apm ${D}${bindir}/apm - install -m 0755 ${S}/.libs/apmd ${D}${sbindir}/apmd - install -m 0755 ${WORKDIR}/apmd_proxy ${D}${sysconfdir}/apm/ - install -m 0644 ${WORKDIR}/apmd_proxy.conf ${D}${datadir}/apmd/ - install -m 0644 ${WORKDIR}/default ${D}${sysconfdir}/default/apmd - oe_libinstall -so libapm ${D}${libdir} - install -m 0644 apm.h ${D}${includedir} - - cat ${WORKDIR}/init | sed -e 's,/usr/sbin,${sbindir},g; s,/etc,${sysconfdir},g;' > ${D}${sysconfdir}/init.d/apmd - chmod 755 ${D}${sysconfdir}/init.d/apmd -} - -PACKAGES =+ "libapm libapm-dev apm" - -FILES_libapm = "${libdir}/libapm.so.*" -FILES_libapm-dev = "${libdir}/libapm.* ${includedir}" -FILES_apm = "${bindir}/apm*" diff --git a/meta/packages/apr/apr-util/configfix.patch b/meta/packages/apr/apr-util/configfix.patch deleted file mode 100644 index a8953e5244..0000000000 --- a/meta/packages/apr/apr-util/configfix.patch +++ /dev/null @@ -1,49 +0,0 @@ -Index: apr-util-1.3.4/apu-config.in -=================================================================== ---- apr-util-1.3.4.orig/apu-config.in 2009-01-12 17:08:06.000000000 +0000 -+++ apr-util-1.3.4/apu-config.in 2009-01-12 17:09:00.000000000 +0000 -@@ -134,14 +134,7 @@ - exit 0 - ;; - --includes) -- if test "$location" = "installed"; then - flags="$flags -I$includedir $INCLUDES" -- elif test "$location" = "source"; then -- flags="$flags -I$APU_SOURCE_DIR/include $INCLUDES" -- else -- # this is for VPATH builds -- flags="$flags -I$APU_BUILD_DIR/include -I$APU_SOURCE_DIR/include $INCLUDES" -- fi - ;; - --ldflags) - flags="$flags $LDFLAGS" -@@ -155,28 +148,10 @@ - exit 0 - ;; - --link-ld) -- if test "$location" = "installed"; then -- ### avoid using -L if libdir is a "standard" location like /usr/lib - flags="$flags -L$libdir -l$APRUTIL_LIBNAME" -- else -- flags="$flags -L$APU_BUILD_DIR -l$APRUTIL_LIBNAME" -- fi - ;; - --link-libtool) -- # If the LA_FILE exists where we think it should be, use it. If we're -- # installed and the LA_FILE does not exist, assume to use -L/-l -- # (the LA_FILE may not have been installed). If we're building ourselves, -- # we'll assume that at some point the .la file be created. -- if test -f "$LA_FILE"; then -- flags="$flags $LA_FILE" -- elif test "$location" = "installed"; then -- ### avoid using -L if libdir is a "standard" location like /usr/lib -- # Since the user is specifying they are linking with libtool, we -- # *know* that -R will be recognized by libtool. -- flags="$flags -L$libdir -R$libdir -l$APRUTIL_LIBNAME" -- else -- flags="$flags $LA_FILE" -- fi -+ flags="$flags -l$APRUTIL_LIBNAME" - ;; - --apu-la-file) - if test -f "$LA_FILE"; then diff --git a/meta/packages/apr/apr-util/configure_fixes.patch b/meta/packages/apr/apr-util/configure_fixes.patch deleted file mode 100644 index 0b2a0903e1..0000000000 --- a/meta/packages/apr/apr-util/configure_fixes.patch +++ /dev/null @@ -1,27 +0,0 @@ -Index: apr-util-1.3.4/configure.in -=================================================================== ---- apr-util-1.3.4.orig/configure.in -+++ apr-util-1.3.4/configure.in -@@ -8,14 +8,14 @@ AC_INIT(export_vars.sh.in) - AC_CONFIG_HEADER(include/private/apu_config.h) - AC_CONFIG_AUX_DIR(build) - --sinclude(build/apu-conf.m4) --sinclude(build/apu-iconv.m4) --sinclude(build/apu-hints.m4) --sinclude(build/apr_common.m4) --sinclude(build/find_apr.m4) --sinclude(build/dbm.m4) --sinclude(build/dbd.m4) --sinclude(build/dso.m4) -+#sinclude(build/apu-conf.m4) -+#sinclude(build/apu-iconv.m4) -+#sinclude(build/apu-hints.m4) -+#sinclude(build/apr_common.m4) -+#sinclude(build/find_apr.m4) -+#sinclude(build/dbm.m4) -+#sinclude(build/dbd.m4) -+#sinclude(build/dso.m4) - - dnl Generate ./config.nice for reproducing runs of configure - dnl diff --git a/meta/packages/apr/apr-util/configure_fixes.patch.old b/meta/packages/apr/apr-util/configure_fixes.patch.old deleted file mode 100644 index 16f88b3bba..0000000000 --- a/meta/packages/apr/apr-util/configure_fixes.patch.old +++ /dev/null @@ -1,25 +0,0 @@ -Index: apr-util-1.2.12/configure.in -=================================================================== ---- apr-util-1.2.12.orig/configure.in 2008-03-08 19:15:00.000000000 +0000 -+++ apr-util-1.2.12/configure.in 2008-03-08 19:15:13.000000000 +0000 -@@ -8,13 +8,13 @@ - AC_CONFIG_HEADER(include/private/apu_config.h) - AC_CONFIG_AUX_DIR(build) - --sinclude(build/apu-conf.m4) --sinclude(build/apu-iconv.m4) --sinclude(build/apu-hints.m4) --sinclude(build/apr_common.m4) --sinclude(build/find_apr.m4) --sinclude(build/dbm.m4) --sinclude(build/dbd.m4) -+#sinclude(build/apu-conf.m4) -+#sinclude(build/apu-iconv.m4) -+#sinclude(build/apu-hints.m4) -+#sinclude(build/apr_common.m4) -+#sinclude(build/find_apr.m4) -+#sinclude(build/dbm.m4) -+#sinclude(build/dbd.m4) - - dnl Generate ./config.nice for reproducing runs of configure - dnl diff --git a/meta/packages/apr/apr-util_1.3.4.bb b/meta/packages/apr/apr-util_1.3.4.bb deleted file mode 100644 index 2e608e8a5c..0000000000 --- a/meta/packages/apr/apr-util_1.3.4.bb +++ /dev/null @@ -1,27 +0,0 @@ -DESCRIPTION = "Apache Portable Runtime (APR) companion library" -SECTION = "libs" -DEPENDS = "apr expat gdbm" -LICENSE = "Apache License, Version 2.0" - -PR = "r5" - -SRC_URI = "${APACHE_MIRROR}/apr/${P}.tar.gz \ - file://configfix.patch;patch=1 \ - file://configure_fixes.patch;patch=1" - -EXTRA_OECONF = "--with-apr=${STAGING_BINDIR_CROSS}/apr-1-config \ - --with-dbm=gdbm \ - --with-gdbm=${STAGING_DIR_HOST}${prefix} \ - --without-sqlite2 \ - --without-sqlite3 \ - --with-expat=${STAGING_DIR_HOST}${prefix}" - - -inherit autotools lib_package binconfig - -OE_BINCONFIG_EXTRA_MANGLE = " -e 's:location=source:location=installed:'" - -do_configure_prepend() { - cp ${STAGING_DATADIR}/apr/apr_rules.mk ${S}/build/rules.mk -} - diff --git a/meta/packages/apr/apr/cleanup.patch b/meta/packages/apr/apr/cleanup.patch deleted file mode 100644 index fd74826480..0000000000 --- a/meta/packages/apr/apr/cleanup.patch +++ /dev/null @@ -1,42 +0,0 @@ -Index: apr-1.3.3/build/buildcheck.sh -=================================================================== ---- apr-1.3.3.orig/build/buildcheck.sh 2009-01-15 13:32:33.000000000 +0000 -+++ apr-1.3.3/build/buildcheck.sh 2009-01-15 13:33:06.000000000 +0000 -@@ -32,35 +32,4 @@ - echo "buildconf: autoconf version $ac_version (ok)" - fi - --# Sample libtool --version outputs: --# ltmain.sh (GNU libtool) 1.3.3 (1.385.2.181 1999/07/02 15:49:11) --# ltmain.sh (GNU libtool 1.1361 2004/01/02 23:10:52) 1.5a --# output is multiline from 1.5 onwards -- --# Require libtool 1.4 or newer --libtool=`build/PrintPath glibtool libtool libtool15 libtool14` --lt_pversion=`$libtool --version 2>/dev/null|sed -e 's/([^)]*)//g;s/^[^0-9]*//;s/[- ].*//g;q'` --if test -z "$lt_pversion"; then --echo "buildconf: libtool not found." --echo " You need libtool version 1.4 or newer installed" --echo " to build APR from SVN." --exit 1 --fi --lt_version=`echo $lt_pversion|sed -e 's/\([a-z]*\)$/.\1/'` --IFS=.; set $lt_version; IFS=' ' --lt_status="good" --if test "$1" = "1"; then -- if test "$2" -lt "4"; then -- lt_status="bad" -- fi --fi --if test $lt_status = "good"; then -- echo "buildconf: libtool version $lt_pversion (ok)" -- exit 0 --fi -- --echo "buildconf: libtool version $lt_pversion found." --echo " You need libtool version 1.4 or newer installed" --echo " to build APR from SVN." -- --exit 1 -+exit 0 -\ No newline at end of file diff --git a/meta/packages/apr/apr/configfix.patch b/meta/packages/apr/apr/configfix.patch deleted file mode 100644 index 995555e8ba..0000000000 --- a/meta/packages/apr/apr/configfix.patch +++ /dev/null @@ -1,51 +0,0 @@ -Index: apr-1.3.3/apr-config.in -=================================================================== ---- apr-1.3.3.orig/apr-config.in 2009-01-12 15:16:31.000000000 +0000 -+++ apr-1.3.3/apr-config.in 2009-01-12 15:19:25.000000000 +0000 -@@ -152,14 +152,7 @@ - flags="$flags $LDFLAGS" - ;; - --includes) -- if test "$location" = "installed"; then - flags="$flags -I$includedir $EXTRA_INCLUDES" -- elif test "$location" = "source"; then -- flags="$flags -I$APR_SOURCE_DIR/include $EXTRA_INCLUDES" -- else -- # this is for VPATH builds -- flags="$flags -I$APR_BUILD_DIR/include -I$APR_SOURCE_DIR/include $EXTRA_INCLUDES" -- fi - ;; - --srcdir) - echo $APR_SOURCE_DIR -@@ -181,29 +167,14 @@ - exit 0 - ;; - --link-ld) -- if test "$location" = "installed"; then -- ### avoid using -L if libdir is a "standard" location like /usr/lib -- flags="$flags -L$libdir -l${APR_LIBNAME}" -- else -- ### this surely can't work since the library is in .libs? -- flags="$flags -L$APR_BUILD_DIR -l${APR_LIBNAME}" -- fi -+ flags="$flags -l${APR_LIBNAME}" - ;; - --link-libtool) - # If the LA_FILE exists where we think it should be, use it. If we're - # installed and the LA_FILE does not exist, assume to use -L/-l - # (the LA_FILE may not have been installed). If we're building ourselves, - # we'll assume that at some point the .la file be created. -- if test -f "$LA_FILE"; then -- flags="$flags $LA_FILE" -- elif test "$location" = "installed"; then -- ### avoid using -L if libdir is a "standard" location like /usr/lib -- # Since the user is specifying they are linking with libtool, we -- # *know* that -R will be recognized by libtool. -- flags="$flags -L$libdir -R$libdir -l${APR_LIBNAME}" -- else -- flags="$flags $LA_FILE" -- fi -+ flags="$flags -l${APR_LIBNAME}" - ;; - --shlib-path-var) - echo "$SHLIBPATH_VAR" diff --git a/meta/packages/apr/apr/configure_fixes.patch b/meta/packages/apr/apr/configure_fixes.patch deleted file mode 100644 index 86ceb8cf08..0000000000 --- a/meta/packages/apr/apr/configure_fixes.patch +++ /dev/null @@ -1,66 +0,0 @@ -Index: apr-1.3.3/configure.in -=================================================================== ---- apr-1.3.3.orig/configure.in -+++ apr-1.3.3/configure.in -@@ -794,39 +794,6 @@ AC_CHECK_FUNCS([mmap munmap shm_open shm - create_area]) - - APR_CHECK_DEFINE(MAP_ANON, sys/mman.h) --AC_CHECK_FILE(/dev/zero) -- --# Not all systems can mmap /dev/zero (such as HP-UX). Check for that. --if test "$ac_cv_func_mmap" = "yes" && -- test "$ac_cv_file__dev_zero" = "yes"; then -- AC_MSG_CHECKING(for mmap that can map /dev/zero) -- AC_TRY_RUN([ --#include --#include --#include --#ifdef HAVE_SYS_MMAN_H --#include --#endif -- int main() -- { -- int fd; -- void *m; -- fd = open("/dev/zero", O_RDWR); -- if (fd < 0) { -- return 1; -- } -- m = mmap(0, sizeof(void*), PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0); -- if (m == (void *)-1) { /* aka MAP_FAILED */ -- return 2; -- } -- if (munmap(m, sizeof(void*)) < 0) { -- return 3; -- } -- return 0; -- }], [], [ac_cv_file__dev_zero=no], [ac_cv_file__dev_zero=no]) -- -- AC_MSG_RESULT($ac_cv_file__dev_zero) --fi - - # Now we determine which one is our anonymous shmem preference. - haveshmgetanon="0" -@@ -1518,13 +1485,14 @@ else - bigendian=0 - fi - --APR_CHECK_SIZEOF_EXTENDED([#include --#include ],struct iovec,0) --if test "$ac_cv_sizeof_struct_iovec" = "0"; then -- have_iovec=0 --else -- have_iovec=1 --fi -+#APR_CHECK_SIZEOF_EXTENDED([#include -+##include ],struct iovec,0) -+#if test "$ac_cv_sizeof_struct_iovec" = "0"; then -+# have_iovec=0 -+#else -+# have_iovec=1 -+#fi -+have_iovec=1 - - AC_SUBST(voidp_size) - AC_SUBST(short_value) diff --git a/meta/packages/apr/apr_1.3.3.bb b/meta/packages/apr/apr_1.3.3.bb deleted file mode 100644 index a193a18a2e..0000000000 --- a/meta/packages/apr/apr_1.3.3.bb +++ /dev/null @@ -1,34 +0,0 @@ -DESCRIPTION = "Apache Portable Runtime (APR) library" -SECTION = "libs" -LICENSE = "Apache License, Version 2.0" - -PR = "r5" - -SRC_URI = "${APACHE_MIRROR}/apr/${P}.tar.bz2 \ - file://configure_fixes.patch;patch=1 \ - file://cleanup.patch;patch=1 \ - file://configfix.patch;patch=1" - -inherit autotools lib_package binconfig - -OE_BINCONFIG_EXTRA_MANGLE = " -e 's:location=source:location=installed:'" - -do_configure_prepend() { - cd ${S} - ./buildconf -} - -SYSROOT_PREPROCESS_FUNCS += "apr_sysroot_preprocess" - -apr_sysroot_preprocess () { - d=${SYSROOT_DESTDIR}${STAGING_DIR_TARGET}${datadir}/apr - install -d $d/ - cp ${S}/build/apr_rules.mk $d/ - sed -i s,apr_builddir=.*,apr_builddir=,g $d/apr_rules.mk - sed -i s,apr_builders=.*,apr_builders=,g $d/apr_rules.mk - sed -i s,LIBTOOL=.*,LIBTOOL=\$\(SHELL\)\ ${TARGET_PREFIX}libtool,g $d/apr_rules.mk - sed -i s,\$\(apr_builders\),${STAGING_DATADIR}/apr/,g $d/apr_rules.mk - cp ${S}/build/mkdir.sh $d/ - cp ${S}/build/make_exports.awk $d/ - cp ${S}/build/make_var_export.awk $d/ -} diff --git a/meta/packages/aspell/aspell_0.60.6.bb b/meta/packages/aspell/aspell_0.60.6.bb deleted file mode 100644 index 8d43a707d2..0000000000 --- a/meta/packages/aspell/aspell_0.60.6.bb +++ /dev/null @@ -1,15 +0,0 @@ -SRC_URI = "ftp://ftp.gnu.org/gnu/aspell/aspell-${PV}.tar.gz" -DESCRIPTION = "GNU Aspell spell-checker" -SECTION = "console/utils" -LICENSE="LGPL" - -PACKAGES += "libaspell libpspell libpspell-dev aspell-utils" - -FILES_${PN}-dbg += "${libdir}/aspell-0.60/.debu*" -FILES_libaspell = "${libdir}/libaspell.so.* ${libdir}/aspell*" -FILES_aspell-utils = "${bindir}/word-list-compress ${bindir}/aspell-import ${bindir}/run-with-aspell ${bindir}/pre*" -FILES_${PN} = "${bindir}/aspell" -FILES_libpspell = "${libdir}/libpspell.so.*" -FILES_libpspell-dev = "${libdir}/libpspell* ${bindir}/pspell-config ${includedir}/pspell" - -inherit autotools gettext diff --git a/meta/packages/atk/atk.inc b/meta/packages/atk/atk.inc deleted file mode 100644 index 899d360e1a..0000000000 --- a/meta/packages/atk/atk.inc +++ /dev/null @@ -1,14 +0,0 @@ -DESCRIPTION = "An accessibility toolkit for GNOME." -HOMEPAGE = "http://live.gnome.org/GAP/" -BUGTRACKER = "https://bugzilla.gnome.org/" - -LICENSE = "LGPLv2 & LGPLv2+" - -SECTION = "x11/libs" -PRIORITY = "optional" - -DEPENDS = "glib-2.0 gtk-doc-native" - -inherit autotools pkgconfig - -EXTRA_OECONF = "--disable-glibtest" diff --git a/meta/packages/atk/atk_1.30.0.bb b/meta/packages/atk/atk_1.30.0.bb deleted file mode 100644 index e85ef9040c..0000000000 --- a/meta/packages/atk/atk_1.30.0.bb +++ /dev/null @@ -1,10 +0,0 @@ -require atk.inc - -LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7 \ - file://atk/atkutil.c;endline=20;md5=db21b0bdbef9da4dc6eb122debc9f9bc \ - file://atk/atk.h;endline=20;md5=c58238d688c24387376d6c69d06248a7" - -SRC_URI = "http://download.gnome.org/sources/atk/1.30/${PN}-${PV}.tar.bz2" - - - diff --git a/meta/packages/attr/acl.inc b/meta/packages/attr/acl.inc deleted file mode 100644 index 68745dd728..0000000000 --- a/meta/packages/attr/acl.inc +++ /dev/null @@ -1,26 +0,0 @@ -DESCRIPTION = "utilities for access control list" -HOMEPAGE = "http://savannah.nongnu.org/projects/acl/" -SECTION = "libs" - -LICENSE = "LGPLv2.1+ & GPLv2+" -LICENSE_${PN} = "GPLv2+" -LICENSE_lib${PN} = "LGPLv2.1+" -LIC_FILES_CHKSUM = "file://doc/COPYING;md5=c781d70ed2b4d48995b790403217a249 \ - file://doc/COPYING.LGPL;md5=9e9a206917f8af112da634ce3ab41764" - -DEPENDS = "attr" -SRC_URI = "http://mirror.cinquix.com/pub/savannah/acl/${BP}.src.tar.gz" - -require ea-acl.inc - -# avoid RPATH hardcode to staging dir -do_configure_append() { - sed -i ${S}/config.status -e s,^\\\(hardcode_into_libs=\\\).*$,\\1\'no\', - ${S}/config.status -} - -# libdir should point to .la -do_install_append() { - sed -i ${D}${libdir}/libacl.la -e \ - s,^libdir=\'${base_libdir}\'$,libdir=\'${libdir}\', -} diff --git a/meta/packages/attr/acl_2.2.49.bb b/meta/packages/attr/acl_2.2.49.bb deleted file mode 100644 index e5d5509de1..0000000000 --- a/meta/packages/attr/acl_2.2.49.bb +++ /dev/null @@ -1,3 +0,0 @@ -require acl.inc - -PR = "r0" diff --git a/meta/packages/attr/attr-2.4.44/double-free.patch b/meta/packages/attr/attr-2.4.44/double-free.patch deleted file mode 100644 index 6fc684f6c2..0000000000 --- a/meta/packages/attr/attr-2.4.44/double-free.patch +++ /dev/null @@ -1,18 +0,0 @@ -commit 5b28eb3b0e0430ce6af28edc9100ca23299d1218 -Author: Kamil Dudka -Date: Thu Jun 3 15:29:54 2010 +0200 - - attr_parse_attr_conf: eliminate a double free - -diff --git a/libattr/attr_copy_action.c b/libattr/attr_copy_action.c -index 030bbf5..2697328 100644 ---- a/libattr/attr_copy_action.c -+++ b/libattr/attr_copy_action.c -@@ -81,6 +81,7 @@ repeat: - fclose(file); - file = NULL; - free(text); -+ text = NULL; - size_guess *= 2; - goto repeat; - } diff --git a/meta/packages/attr/attr-2.4.44/memory-leak-in-copy.patch b/meta/packages/attr/attr-2.4.44/memory-leak-in-copy.patch deleted file mode 100644 index 966632d87e..0000000000 --- a/meta/packages/attr/attr-2.4.44/memory-leak-in-copy.patch +++ /dev/null @@ -1,50 +0,0 @@ -commit 972b42a67393f762936e74d3ce929914181f5f28 -Author: Brandon Philips -Date: Thu Dec 17 17:15:57 2009 -0800 - - libattr: fix memory leak in attr_copy_action() - - stanse found that attr_copy_action returns before freeing the memory - allocated for text. - - Move fopen() above the malloc so this is not a problem. - - Fixes this bug: - https://bugzilla.novell.com/show_bug.cgi?id=564735 - - Signed-off-by: Brandon Philips - -diff --git a/libattr/attr_copy_action.c b/libattr/attr_copy_action.c -index 0d7aca5..dc94224 100644 ---- a/libattr/attr_copy_action.c -+++ b/libattr/attr_copy_action.c -@@ -53,7 +53,7 @@ free_attr_actions(void) - static int - attr_parse_attr_conf(struct error_context *ctx) - { -- char *text, *t; -+ char *text = NULL, *t; - size_t size_guess = 4096, len; - FILE *file; - char *pattern = NULL; -@@ -64,15 +64,16 @@ attr_parse_attr_conf(struct error_context *ctx) - return 0; - - repeat: -- text = malloc(size_guess + 1); -- if (!text) -- goto fail; -- - if ((file = fopen(ATTR_CONF, "r")) == NULL) { - if (errno == ENOENT) - return 0; - goto fail; - } -+ -+ text = malloc(size_guess + 1); -+ if (!text) -+ goto fail; -+ - len = fread(text, 1, size_guess, file); - if (ferror(file)) - goto fail; diff --git a/meta/packages/attr/attr-2.4.44/memory-leak2.patch b/meta/packages/attr/attr-2.4.44/memory-leak2.patch deleted file mode 100644 index 03395423da..0000000000 --- a/meta/packages/attr/attr-2.4.44/memory-leak2.patch +++ /dev/null @@ -1,18 +0,0 @@ -commit 42f50a130d144ffbc01738f15da9d4f1b57505bd -Author: Kamil Dudka -Date: Thu Jun 3 15:23:04 2010 +0200 - - attr_parse_attr_conf: eliminate a memory leak - -diff --git a/libattr/attr_copy_action.c b/libattr/attr_copy_action.c -index dc94224..030bbf5 100644 ---- a/libattr/attr_copy_action.c -+++ b/libattr/attr_copy_action.c -@@ -129,6 +129,7 @@ repeat: - - t += strcspn(t, "\n"); - } -+ free(text); - return 0; - - parse_error: diff --git a/meta/packages/attr/attr-2.4.44/pull-in-string.h.patch b/meta/packages/attr/attr-2.4.44/pull-in-string.h.patch deleted file mode 100644 index ccbc236284..0000000000 --- a/meta/packages/attr/attr-2.4.44/pull-in-string.h.patch +++ /dev/null @@ -1,21 +0,0 @@ -commit 235cdd2af498d288f1af1142e7a23fbd16dff907 -Author: Mike Frysinger -Date: Fri Jan 8 21:53:19 2010 -0500 - - quote: pull in string.h for strchr prototype - - Signed-off-by: Mike Frysinger - Signed-off-by: Brandon Philips - -diff --git a/libmisc/quote.c b/libmisc/quote.c -index f98c887..bf8f9eb 100644 ---- a/libmisc/quote.c -+++ b/libmisc/quote.c -@@ -20,6 +20,7 @@ - #include - #include - #include -+#include - #include "misc.h" - - const char *quote(const char *str, const char *quote_chars) diff --git a/meta/packages/attr/attr-2.4.44/thinko-in-restore.patch b/meta/packages/attr/attr-2.4.44/thinko-in-restore.patch deleted file mode 100644 index a84de94ed0..0000000000 --- a/meta/packages/attr/attr-2.4.44/thinko-in-restore.patch +++ /dev/null @@ -1,19 +0,0 @@ -commit e8d568c696692eed5c92d5a35498e1c26e13d6b3 -Author: Kamil Dudka -Date: Thu Jun 3 15:30:19 2010 +0200 - - setfattr.c: fix thinko in restore() - -diff --git a/setfattr/setfattr.c b/setfattr/setfattr.c -index 491c25a..0a14cfa 100644 ---- a/setfattr/setfattr.c -+++ b/setfattr/setfattr.c -@@ -120,7 +120,7 @@ int restore(const char *filename) - break; - line++; - if (strncmp(l, "# file: ", 8) != 0) { -- if (filename) { -+ if (file != stdin) { - fprintf(stderr, _("%s: %s: No filename found " - "in line %d, aborting\n"), - progname, filename, backup_line); diff --git a/meta/packages/attr/attr.inc b/meta/packages/attr/attr.inc deleted file mode 100644 index da7924631e..0000000000 --- a/meta/packages/attr/attr.inc +++ /dev/null @@ -1,20 +0,0 @@ -DESCRIPTION = "utilities for manipulating filesystem extended attributes" -HOMEPAGE = "http://savannah.nongnu.org/projects/attr/" -SECTION = "libs" - -LICENSE = "LGPLv2.1+ & GPLv2+" -LICENSE_${PN} = "GPLv2+" -LICENSE_lib${PN} = "LGPLv2.1+" -LIC_FILES_CHKSUM = "file://doc/COPYING;md5=2d0aa14b3fce4694e4f615e30186335f \ - file://attr/attr.c;endline=17;md5=be0403261f0847e5f43ed5b08d19593c \ - file://libattr/libattr.c;endline=17;md5=7970f77049f8fa1199fff62a7ab724fb" - -SRC_URI = "http://nongnu.askapache.com/attr/${BP}.src.tar.gz" - -require ea-acl.inc - -# libdir should point to .la -do_install_append() { - sed -i ${D}${libdir}/libattr.la -e \ - s,^libdir=\'${base_libdir}\'$,libdir=\'${libdir}\', -} diff --git a/meta/packages/attr/attr_2.4.44.bb b/meta/packages/attr/attr_2.4.44.bb deleted file mode 100644 index 0b21b33dcf..0000000000 --- a/meta/packages/attr/attr_2.4.44.bb +++ /dev/null @@ -1,9 +0,0 @@ -require attr.inc - -PR = "r1" - -SRC_URI += "file://memory-leak-in-copy.patch \ - file://memory-leak2.patch \ - file://double-free.patch \ - file://pull-in-string.h.patch \ - file://thinko-in-restore.patch" diff --git a/meta/packages/attr/ea-acl.inc b/meta/packages/attr/ea-acl.inc deleted file mode 100644 index 77fa2b4fd6..0000000000 --- a/meta/packages/attr/ea-acl.inc +++ /dev/null @@ -1,35 +0,0 @@ -# this build system is mostly shared by attr and acl - -DEPENDS =+ "gettext" - -SRC_URI += "file://relative-libdir.patch;striplevel=0" - -inherit autotools - -# the package comes with a custom config.h.in, it cannot be -# overwritten by autoheader -export AUTOHEADER = "true" -EXTRA_OECONF = "INSTALL_USER=root INSTALL_GROUP=root" - -EXTRA_OEMAKE = "PKG_LIB_DIR=${base_libdir} PKG_DEVLIB_DIR=${libdir}" - -do_install () { - oe_runmake install install-lib install-dev DIST_ROOT="${D}" -} - -PACKAGES =+ "lib${PN} lib${PN}-dev lib${PN}-doc" - -FILES_lib${PN} = "${base_libdir}/lib*.so.*" - -FILES_lib${PN}-dev = "${includedir} \ - ${libdir}/lib*.so \ - ${libdir}/lib*.a \ - ${libdir}/lib*.la \ - ${base_libdir}/lib*.so \ - ${base_libdir}/lib*.a \ - ${base_libdir}/lib*.la" - -FILES_lib${PN}-doc = "${mandir}/man2 \ - ${mandir}/man3" - -BBCLASSEXTEND = "native" diff --git a/meta/packages/attr/files/relative-libdir.patch b/meta/packages/attr/files/relative-libdir.patch deleted file mode 100644 index f989dd0ccc..0000000000 --- a/meta/packages/attr/files/relative-libdir.patch +++ /dev/null @@ -1,23 +0,0 @@ -use relative path in symbolic links, or it fails in staging -sed expression from udev - -7/29/2010 - created by Qing He - -diff -u include.orig/buildmacros include/buildmacros ---- include.orig/buildmacros 2010-07-29 17:39:48.000000000 +0800 -+++ include/buildmacros 2010-07-29 18:20:34.000000000 +0800 -@@ -88,9 +88,11 @@ - ../$(INSTALL) -m 755 -d $(PKG_LIB_DIR); \ - ../$(INSTALL) -T so_base $(LIBNAME).lai $(PKG_LIB_DIR); \ - if test "x$(PKG_DEVLIB_DIR)" != "x$(PKG_LIB_DIR)" ; then \ -- ../$(INSTALL) -S $(PKG_DEVLIB_DIR)/$(LIBNAME).a $(PKG_LIB_DIR)/$(LIBNAME).a; \ -- ../$(INSTALL) -S $(PKG_DEVLIB_DIR)/$(LIBNAME).la $(PKG_LIB_DIR)/$(LIBNAME).la; \ -- ../$(INSTALL) -S $(PKG_LIB_DIR)/$(LIBNAME).so $(PKG_DEVLIB_DIR)/$(LIBNAME).so; \ -+ rel_lib_prefix=$$(echo $(PKG_LIB_DIR) | sed 's,\(^/\|\)[^/][^/]*,..,g'); \ -+ ../$(INSTALL) -S $$rel_lib_prefix$(PKG_DEVLIB_DIR)/$(LIBNAME).a $(PKG_LIB_DIR)/$(LIBNAME).a; \ -+ ../$(INSTALL) -S $$rel_lib_prefix$(PKG_DEVLIB_DIR)/$(LIBNAME).la $(PKG_LIB_DIR)/$(LIBNAME).la; \ -+ rel_devlib_prefix=$$(echo $(PKG_DEVLIB_DIR) | sed 's,\(^/\|\)[^/][^/]*,..,g'); \ -+ ../$(INSTALL) -S $$rel_devlib_prefix$(PKG_LIB_DIR)/$(LIBNAME).so $(PKG_DEVLIB_DIR)/$(LIBNAME).so; \ - fi - else - INSTALL_LTLIB_DEV = $(INSTALL_LTLIB_STATIC) diff --git a/meta/packages/beecrypt/beecrypt/disable-icu-check.patch b/meta/packages/beecrypt/beecrypt/disable-icu-check.patch deleted file mode 100644 index 3e18a87c3f..0000000000 --- a/meta/packages/beecrypt/beecrypt/disable-icu-check.patch +++ /dev/null @@ -1,41 +0,0 @@ -We are unable to run code at configure time in a cross environemnt, but as we -control the build we can be fairly certain this dependency is met. - -JL 05/07/10 -Index: beecrypt-4.1.2/configure.ac -=================================================================== ---- beecrypt-4.1.2.orig/configure.ac 2004-12-21 11:37:56.000000000 +0000 -+++ beecrypt-4.1.2/configure.ac 2010-07-05 16:09:50.390083494 +0100 -@@ -243,32 +243,6 @@ - # Predefines and checks for C++ API support - AH_TEMPLATE([CPPGLUE],[Define to 1 if you want to include the C++ code]) - --if test "$ac_with_cplusplus" = yes; then -- AC_MSG_CHECKING([for IBM's ICU library version >= 2.8]) -- AC_LANG_PUSH(C) -- AC_RUN_IFELSE([ -- AC_LANG_PROGRAM([[#include ]],[[ -- #if U_ICU_VERSION_MAJOR_NUM < 2 -- exit(1); -- #elif U_ICU_VERSION_MAJOR_NUM == 2 -- # if U_ICU_VERSION_MINOR_NUM < 8 -- exit(1); -- # else -- exit(0); -- # endif -- #else -- exit(0); -- #endif -- ]])],[ -- AC_MSG_RESULT([yes]) -- ],[ -- AC_MSG_RESULT([no]) -- AC_MSG_WARN([disabling cplusplus]) -- ac_with_cplusplus=no -- ]) -- AC_LANG_POP(C) --fi -- - if test "$ac_with_cplusplus" = yes ; then - AC_DEFINE([CPPGLUE],1) - fi diff --git a/meta/packages/beecrypt/beecrypt/fix-security.patch b/meta/packages/beecrypt/beecrypt/fix-security.patch deleted file mode 100644 index 6103562e0a..0000000000 --- a/meta/packages/beecrypt/beecrypt/fix-security.patch +++ /dev/null @@ -1,43 +0,0 @@ -Fix visibility of various C++ functions, inspired by a similar patch in the Fink -project: -http://www.mail-archive.com/fink-commits@lists.sourceforge.net/msg75742.html - -JL 05/07/10 -Index: beecrypt-4.1.2/c++/security/Security.h -=================================================================== ---- beecrypt-4.1.2.orig/c++/security/Security.h 2010-07-05 17:15:34.811273306 +0100 -+++ beecrypt-4.1.2/c++/security/Security.h 2010-07-05 17:15:38.696388531 +0100 -@@ -75,8 +75,6 @@ - public: - typedef vector provider_vector; - typedef provider_vector::iterator provider_vector_iterator; -- -- private: - struct spi - { - Object* cspi; -@@ -91,6 +89,7 @@ - static spi* getSpi(const String& algo, const String& type, const Provider&) throw (NoSuchAlgorithmException); - static spi* getFirstSpi(const String& type); - -+ private: - static const String& getKeyStoreDefault(); - - static bool _init; -Index: beecrypt-4.1.2/c++/beeyond/BeeCertificate.h -=================================================================== ---- beecrypt-4.1.2.orig/c++/beeyond/BeeCertificate.h 2004-11-03 09:37:27.000000000 +0000 -+++ beecrypt-4.1.2/c++/beeyond/BeeCertificate.h 2010-07-05 17:16:25.216332324 +0100 -@@ -150,11 +150,11 @@ - mutable String* str; - - BeeCertificate(); -- BeeCertificate(InputStream& in) throw (IOException); - - bytearray* encodeTBS() const; - - public: -+ BeeCertificate(InputStream& in) throw (IOException); - BeeCertificate(const BeeCertificate&); - virtual ~BeeCertificate(); - diff --git a/meta/packages/beecrypt/beecrypt/x64fix.patch b/meta/packages/beecrypt/beecrypt/x64fix.patch deleted file mode 100644 index ac02425d51..0000000000 --- a/meta/packages/beecrypt/beecrypt/x64fix.patch +++ /dev/null @@ -1,23 +0,0 @@ -Don't have 64 appended to the libdir for 64bit platforms. - -JL 05/07/10 -Index: beecrypt-4.1.2/configure.ac -=================================================================== ---- beecrypt-4.1.2.orig/configure.ac 2010-07-05 16:39:43.000000000 +0100 -+++ beecrypt-4.1.2/configure.ac 2010-07-05 16:40:27.521082866 +0100 -@@ -585,15 +585,6 @@ - - # Check where to install the libraries - bc_libalt= --case $target_os in --linux*) -- case $bc_target_arch in -- powerpc64 | s390x | x86_64) -- bc_libalt="64" -- ;; -- esac -- ;; --esac - AC_SUBST(LIBALT,$bc_libalt) - - # Generate output files. diff --git a/meta/packages/beecrypt/beecrypt_4.1.2.bb b/meta/packages/beecrypt/beecrypt_4.1.2.bb deleted file mode 100644 index 6eb40e5d5d..0000000000 --- a/meta/packages/beecrypt/beecrypt_4.1.2.bb +++ /dev/null @@ -1,21 +0,0 @@ -# Beecrypt OE build file -# Copyright (C) 2004-2005, Advanced Micro Devices, Inc. All Rights Reserved -# Released under the MIT license (see packages/COPYING) - -DESCRIPTION="Beecrypt is a general-purpose cryptography library." -HOMEPAGE="http://sourceforge.net/projects/beecrypt" -SRC_URI="${SOURCEFORGE_MIRROR}/beecrypt/beecrypt-${PV}.tar.gz \ - file://x64fix.patch \ - file://disable-icu-check.patch \ - file://fix-security.patch" - -DEPENDS = "icu" - -PR = "r0" - -inherit autotools -acpaths="" - -EXTRA_OECONF="--with-arch=${TARGET_ARCH} --without-python --enable-shared --enable-static" - -BBCLASSEXTEND = "native" diff --git a/meta/packages/blktool/blktool_4-6.bb b/meta/packages/blktool/blktool_4-6.bb deleted file mode 100644 index 3313b039ce..0000000000 --- a/meta/packages/blktool/blktool_4-6.bb +++ /dev/null @@ -1,14 +0,0 @@ -DESCRIPTION = "blktool is used for querying and/or changing settings of a block device. It is like hdparm but a more general tool, as it works on SCSI, IDE and SATA devices" -HOMEPAGE = "http://packages.debian.org/unstable/admin/blktool" -LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ - file://blktool.c;beginline=7;endline=8;md5=a5e798ea98fd50972088968a15e5f373" -DEPENDS = "glib-2.0" - -SRC_URI = "${DEBIAN_MIRROR}/main/b/blktool/blktool_4.orig.tar.gz \ - ${DEBIAN_MIRROR}/main/b/blktool/blktool_4-6.diff.gz;apply=yes" - -PR = "r0" -S = "${WORKDIR}/${PN}-4.orig" - -inherit autotools diff --git a/meta/packages/boost/boost-36.inc b/meta/packages/boost/boost-36.inc deleted file mode 100644 index 5d2d1280be..0000000000 --- a/meta/packages/boost/boost-36.inc +++ /dev/null @@ -1,149 +0,0 @@ -# The Boost web site provides free peer-reviewed portable -# C++ source libraries. The emphasis is on libraries which -# work well with the C++ Standard Library. The libraries are -# intended to be widely useful, and are in regular use by -# thousands of programmers across a broad spectrum of applications. -DESCRIPTION = "Free peer-reviewed portable C++ source libraries" -HOMEPAGE = "http://www.boost.org/" -SECTION = "libs" -DEPENDS = "boost-jam-native zlib" -PRIORITY = "optional" -LICENSE = "Boost Software License" -PR = "r3" - -ARM_INSTRUCTION_SET = "arm" -BOOST_VER = "${@"_".join(bb.data.getVar("PV",d,1).split("."))}" -BOOST_MAJ = "${@"_".join(bb.data.getVar("PV",d,1).split(".")[0:2])}" -BOOST_P = "boost_${BOOST_VER}" - -BOOST_LIBS = "\ - date_time \ - filesystem \ - graph \ - iostreams \ - program_options \ - regex \ - signals \ - system \ - test \ - thread \ - " - -# FIXME: for some reason this fails on powerpc -#BOOST_LIBS += "serialization" - -# To enable python, uncomment the following: -#BOOST_LIBS += "python" -#DEPENDS += "python" -#PYTHON_ROOT = "${STAGING_DIR_HOST}/${prefix}" -#PYTHON_VERSION = "2.5" - -S = "${WORKDIR}/${BOOST_P}" - -# Make a package for each library, plus -dev -PACKAGES = "${PN}-dbg ${BOOST_PACKAGES}" -python __anonymous () { - import bb - - packages = [] - extras = [] - for lib in bb.data.getVar('BOOST_LIBS', d, 1).split( ): - pkg = "boost-%s" % lib.replace("_", "-") - extras.append("--with-%s" % lib) - packages.append(pkg) - if not bb.data.getVar("FILES_%s" % pkg, d, 1): - bb.data.setVar("FILES_%s" % pkg, "${libdir}/libboost_%s*.so.*" % lib, d) - bb.data.setVar("BOOST_PACKAGES", " ".join(packages), d) - bb.data.setVar("BJAM_EXTRA", " ".join(extras), d) -} - -# Override the contents of specific packages -FILES_boost-serialization = "${libdir}/libboost_serialization*.so.* \ - ${libdir}/libboost_wserialization*.so.*" -FILES_boost-test = "${libdir}/libboost_prg_exec_monitor*.so.* \ - ${libdir}/libboost_unit_test_framework*.so.*" - -# -dev last to pick up the remaining stuff -PACKAGES += "${PN}-dev" -FILES_${PN}-dev = "${includedir} ${libdir}/libboost_*.so ${libdir}/libboost_*.a" - -# "boost" is a metapackage which pulls in all boost librabries -PACKAGES += "${PN}" -RRECOMMENDS_${PN} += "${BOOST_PACKAGES}" -ALLOW_EMPTY_${PN} = "1" - -# to avoid GNU_HASH QA errors added LDFLAGS to ARCH; a little bit dirty but at least it works -TARGET_CC_ARCH += " ${LDFLAGS}" - -# Oh yippee, a new build system, it's sooo cooool I could eat my own -# foot. inlining=on lets the compiler choose, I think. At least this -# stuff is documented... -# NOTE: if you leave on then in a debug build the build sys -# objcopy will be invoked, and that won't work. Building debug apparently -# requires hacking gcc-tools.jam -# -# Sometimes I wake up screaming. Famous figures are gathered in the nightmare, -# Steve Bourne, Larry Wall, the whole of the ANSI C committee. They're just -# standing there, waiting, but the truely terrifying thing is what they carry -# in their hands. At first sight each seems to bear the same thing, but it is -# not so for the forms in their grasp are ever so slightly different one from -# the other. Each is twisted in some grotesque way from the other to make each -# an unspeakable perversion impossible to perceive without the onset of madness. -# True insanity awaits anyone who perceives all of these horrors together. -# -# Quotation marks, there might be an easier way to do this, but I can't find -# it. The problem is that the user.hpp configuration file must receive a -# pre-processor macro defined as the appropriate string - complete with "'s -# around it. (<> is a possibility here but the danger to that is that the -# failure case interprets the < and > as shell redirections, creating -# random files in the source tree.) -# -#bjam: '-DBOOST_PLATFORM_CONFIG=\"config\"' -#do_compile: '-sGCC=... '"'-DBOOST_PLATFORM_CONFIG=\"config\"'" -SQD = '"' -EQD = '\"' -#boost.bb: "... '-sGCC=... '${SQD}'-DBOOST_PLATFORM_CONFIG=${EQD}config${EQD}'${SQD} ..." -BJAM_CONF = "${SQD}'-DBOOST_PLATFORM_CONFIG=${EQD}boost/config/platform/${TARGET_OS}.hpp${EQD}'${SQD}" - -# bzip2 and zip are disabled because... they're broken - the compilation simply -# isn't working with bjam. I guess they will fix it, but who needs it? This -# only affects the (new in 33) iostream library. -BJAM_TOOLS = "-sTOOLS=gcc \ - '-sGCC=${CC} '${BJAM_CONF} \ - '-sGXX=${CXX} '${BJAM_CONF} \ - '-sGCC_INCLUDE_DIRECTORY=${STAGING_INCDIR}' \ - '-sGCC_STDLIB_DIRECTORY=${STAGING_LIBDIR}' \ - '-sNO_BZIP2=1' \ - '-sNO_ZLIB=1' \ - '-sBUILD=release space on off' \ - '-sPYTHON_VERSION=${PYTHON_VERSION}' \ - '--layout=system' \ - " - -BJAM_OPTS = '${BJAM_TOOLS} \ - --builddir=${S}/${TARGET_SYS} \ - --with-python-root=${PYTHON_ROOT} \ - ${BJAM_EXTRA}' - - -do_configure_prepend() { - cp -f boost/config/platform/linux.hpp boost/config/platform/linux-gnueabi.hpp - - echo 'using gcc : 4.3.1 : ${CXX} : compileflags -DBOOST_SP_USE_PTHREADS -I${includedir} linkflags -L${libdir} ;' >> ${S}/tools/build/v2/user-config.jam -} - -do_compile() { - set -ex - bjam ${BJAM_OPTS} --prefix=${prefix} \ - --exec-prefix=${exec_prefix} \ - --libdir=${libdir} \ - --includedir=${includedir} -} - -do_install() { - set -ex - bjam ${BJAM_OPTS} \ - --libdir=${D}${libdir} \ - --includedir=${D}${includedir} \ - install -} diff --git a/meta/packages/boost/boost-jam-native.inc b/meta/packages/boost/boost-jam-native.inc deleted file mode 100644 index fe181ad00f..0000000000 --- a/meta/packages/boost/boost-jam-native.inc +++ /dev/null @@ -1,31 +0,0 @@ -# The Boost web site provides free peer-reviewed portable -# C++ source libraries. The emphasis is on libraries which -# work well with the C++ Standard Library. The libraries are -# intended to be widely useful, and are in regular use by -# thousands of programmers across a broad spectrum of applications. -DESCRIPTION = "Make system for boost (native)" -HOMEPAGE = "http://www.boost.org/" -SECTION = "devel" -PRIORITY = "optional" -LICENSE = "Boost Software License" -PR = "r0" - -SRC_URI = "${SOURCEFORGE_MIRROR}/boost/boost-jam-${PV}.tgz" -S = "${WORKDIR}/boost-jam-${PV}" - -inherit native - -do_compile() { - set -ex - rm -rf bin.* - ./build.sh gcc -} - -# This is too terrible - the build script doesn't give any good -# way I can see to find out where the binaries are placed, so -# rely on only one bin.foo directory being created. -do_install () { - set -ex - install -d ${D}${bindir}/ - install -c -m 755 bin.*/bjam ${D}${bindir}/ -} diff --git a/meta/packages/boost/boost-jam-native_3.1.18.bb b/meta/packages/boost/boost-jam-native_3.1.18.bb deleted file mode 100644 index 2e92146a83..0000000000 --- a/meta/packages/boost/boost-jam-native_3.1.18.bb +++ /dev/null @@ -1,4 +0,0 @@ -include boost-jam-native.inc - -SRC_URI = "${SOURCEFORGE_MIRROR}/boost/boost-jam-${PV}.tgz" - diff --git a/meta/packages/boost/boost_1.44.0.bb b/meta/packages/boost/boost_1.44.0.bb deleted file mode 100644 index 81a2e53ba3..0000000000 --- a/meta/packages/boost/boost_1.44.0.bb +++ /dev/null @@ -1,27 +0,0 @@ -include boost-36.inc - -LICENSE = "boost" -LIC_FILES_CHKSUM = "file://LICENSE_1_0.txt;md5=e4224ccaecb14d942c71d31bef20d78c" - -PR = "r0" - -SRC_URI = "${SOURCEFORGE_MIRROR}/boost/${BOOST_P}.tar.bz2 \ - file://arm-intrinsics.patch \ - " - -BJAM_OPTS = '${BJAM_TOOLS} \ - --builddir=${S}/${TARGET_SYS} \ - ${BJAM_EXTRA}' - -# build only mt libraries and install symlinks for compatibility -BJAM_EXTRA += "threading=multi" -do_install_append() { - for lib in ${BOOST_LIBS}; do - if [ -e ${D}${libdir}/libboost_${lib}.a ]; then - ln -s libboost_${lib}.a ${D}${libdir}/libboost_${lib}-mt.a - fi - if [ -e ${D}${libdir}/libboost_${lib}.so ]; then - ln -s libboost_${lib}.so ${D}${libdir}/libboost_${lib}-mt.so - fi - done -} diff --git a/meta/packages/boost/files/1.34.1-gcc43.patch b/meta/packages/boost/files/1.34.1-gcc43.patch deleted file mode 100644 index 4670ac4295..0000000000 --- a/meta/packages/boost/files/1.34.1-gcc43.patch +++ /dev/null @@ -1,224 +0,0 @@ -Index: boost_1_34_1/boost/archive/polymorphic_iarchive.hpp -=================================================================== ---- boost_1_34_1.orig/boost/archive/polymorphic_iarchive.hpp 2005-12-11 07:12:51.000000000 +0100 -+++ boost_1_34_1/boost/archive/polymorphic_iarchive.hpp 2008-09-20 20:55:21.000000000 +0200 -@@ -17,6 +17,7 @@ - // See http://www.boost.org for updates, documentation, and revision history. - - #include // std::size_t -+#include - #include - - #if defined(BOOST_NO_STDC_NAMESPACE) -Index: boost_1_34_1/boost/archive/polymorphic_oarchive.hpp -=================================================================== ---- boost_1_34_1.orig/boost/archive/polymorphic_oarchive.hpp 2006-02-12 06:43:06.000000000 +0100 -+++ boost_1_34_1/boost/archive/polymorphic_oarchive.hpp 2008-09-20 20:55:21.000000000 +0200 -@@ -17,6 +17,7 @@ - // See http://www.boost.org for updates, documentation, and revision history. - - #include // size_t -+#include - #include - - #include -Index: boost_1_34_1/boost/date_time/date_facet.hpp -=================================================================== ---- boost_1_34_1.orig/boost/date_time/date_facet.hpp 2005-09-05 23:10:50.000000000 +0200 -+++ boost_1_34_1/boost/date_time/date_facet.hpp 2008-09-20 20:55:21.000000000 +0200 -@@ -429,7 +429,7 @@ - typedef std::basic_string string_type; - typedef CharT char_type; - typedef boost::date_time::period_parser period_parser_type; -- typedef special_values_parser special_values_parser_type; -+ typedef boost::date_time::special_values_parser special_values_parser_type; - typedef std::vector > input_collection_type; - typedef format_date_parser format_date_parser_type; - // date_generators stuff goes here -Index: boost_1_34_1/boost/mpl/zip_view.hpp -=================================================================== ---- boost_1_34_1.orig/boost/mpl/zip_view.hpp 2004-09-02 17:40:42.000000000 +0200 -+++ boost_1_34_1/boost/mpl/zip_view.hpp 2008-09-20 20:55:21.000000000 +0200 -@@ -37,7 +37,7 @@ - typedef zip_iterator< - typename transform1< - IteratorSeq -- , next<_1> -+ , boost::mpl::next<_1> - >::type - > next; - }; -@@ -48,8 +48,8 @@ - struct zip_view - { - private: -- typedef typename transform1< Sequences, begin<_1> >::type first_ones_; -- typedef typename transform1< Sequences, end<_1> >::type last_ones_; -+ typedef typename transform1< Sequences, boost::mpl::begin<_1> >::type first_ones_; -+ typedef typename transform1< Sequences, boost::mpl::end<_1> >::type last_ones_; - - public: - typedef nested_begin_end_tag tag; -Index: boost_1_34_1/boost/python/detail/def_helper.hpp -=================================================================== ---- boost_1_34_1.orig/boost/python/detail/def_helper.hpp 2004-09-16 03:00:28.000000000 +0200 -+++ boost_1_34_1/boost/python/detail/def_helper.hpp 2008-09-20 20:55:21.000000000 +0200 -@@ -155,7 +155,7 @@ - , T3 const& - , T4 const& - , default_call_policies -- , keywords<0> -+ , boost::python::detail::keywords<0> - , char const* - , void(not_specified::*)() // A function pointer type which is never an - // appropriate default implementation -Index: boost_1_34_1/boost/regex/v4/basic_regex_creator.hpp -=================================================================== ---- boost_1_34_1.orig/boost/regex/v4/basic_regex_creator.hpp 2006-07-16 18:06:38.000000000 +0200 -+++ boost_1_34_1/boost/regex/v4/basic_regex_creator.hpp 2008-09-20 20:55:21.000000000 +0200 -@@ -24,6 +24,8 @@ - # include BOOST_ABI_PREFIX - #endif - -+#include -+ - namespace boost{ - - namespace re_detail{ -Index: boost_1_34_1/boost/regex/v4/basic_regex.hpp -=================================================================== ---- boost_1_34_1.orig/boost/regex/v4/basic_regex.hpp 2007-06-05 19:28:18.000000000 +0200 -+++ boost_1_34_1/boost/regex/v4/basic_regex.hpp 2008-09-20 20:55:21.000000000 +0200 -@@ -23,6 +23,8 @@ - # include BOOST_ABI_PREFIX - #endif - -+#include -+ - namespace boost{ - #ifdef BOOST_MSVC - #pragma warning(push) -Index: boost_1_34_1/boost/regex/v4/basic_regex_parser.hpp -=================================================================== ---- boost_1_34_1.orig/boost/regex/v4/basic_regex_parser.hpp 2006-12-20 18:19:05.000000000 +0100 -+++ boost_1_34_1/boost/regex/v4/basic_regex_parser.hpp 2008-09-20 20:55:21.000000000 +0200 -@@ -23,6 +23,8 @@ - # include BOOST_ABI_PREFIX - #endif - -+#include -+ - namespace boost{ - namespace re_detail{ - -Index: boost_1_34_1/boost/regex/v4/cpp_regex_traits.hpp -=================================================================== ---- boost_1_34_1.orig/boost/regex/v4/cpp_regex_traits.hpp 2007-01-15 12:09:44.000000000 +0100 -+++ boost_1_34_1/boost/regex/v4/cpp_regex_traits.hpp 2008-09-20 20:55:21.000000000 +0200 -@@ -41,6 +41,7 @@ - - #include - #include -+#include - - #ifdef BOOST_HAS_ABI_HEADERS - # include BOOST_ABI_PREFIX -Index: boost_1_34_1/boost/regex/v4/perl_matcher.hpp -=================================================================== ---- boost_1_34_1.orig/boost/regex/v4/perl_matcher.hpp 2006-10-18 14:55:30.000000000 +0200 -+++ boost_1_34_1/boost/regex/v4/perl_matcher.hpp 2008-09-20 20:55:21.000000000 +0200 -@@ -18,6 +18,8 @@ - # include BOOST_ABI_PREFIX - #endif - -+#include -+ - namespace boost{ - namespace re_detail{ - -Index: boost_1_34_1/boost/regex/v4/regex_split.hpp -=================================================================== ---- boost_1_34_1.orig/boost/regex/v4/regex_split.hpp 2005-01-21 18:22:38.000000000 +0100 -+++ boost_1_34_1/boost/regex/v4/regex_split.hpp 2008-09-20 20:55:21.000000000 +0200 -@@ -21,6 +21,8 @@ - #ifndef BOOST_REGEX_SPLIT_HPP - #define BOOST_REGEX_SPLIT_HPP - -+#include -+ - namespace boost{ - - #ifdef BOOST_HAS_ABI_HEADERS -Index: boost_1_34_1/boost/regex/v4/states.hpp -=================================================================== ---- boost_1_34_1.orig/boost/regex/v4/states.hpp 2005-09-20 14:01:25.000000000 +0200 -+++ boost_1_34_1/boost/regex/v4/states.hpp 2008-09-20 20:55:21.000000000 +0200 -@@ -23,6 +23,8 @@ - # include BOOST_ABI_PREFIX - #endif - -+#include -+ - namespace boost{ - namespace re_detail{ - -Index: boost_1_34_1/boost/serialization/collection_traits.hpp -=================================================================== ---- boost_1_34_1.orig/boost/serialization/collection_traits.hpp 2005-06-21 07:19:04.000000000 +0200 -+++ boost_1_34_1/boost/serialization/collection_traits.hpp 2008-09-20 20:55:21.000000000 +0200 -@@ -22,6 +22,7 @@ - // compiles recognize the same set of primitive types, the possibility - // exists for archives to be non-portable if class information for primitive - // types is included. This is addressed by the following macros. -+#include - #include - #include - #include -Index: boost_1_34_1/boost/spirit/phoenix/operators.hpp -=================================================================== ---- boost_1_34_1.orig/boost/spirit/phoenix/operators.hpp 2006-08-25 18:27:30.000000000 +0200 -+++ boost_1_34_1/boost/spirit/phoenix/operators.hpp 2008-09-20 20:55:21.000000000 +0200 -@@ -24,6 +24,7 @@ - #include - #include - #include -+#include - - /////////////////////////////////////////////////////////////////////////////// - namespace phoenix { -Index: boost_1_34_1/boost/test/test_tools.hpp -=================================================================== ---- boost_1_34_1.orig/boost/test/test_tools.hpp 2007-02-22 18:57:29.000000000 +0100 -+++ boost_1_34_1/boost/test/test_tools.hpp 2008-09-20 20:55:21.000000000 +0200 -@@ -42,6 +42,7 @@ - #include - - // STL -+#include - #include // for std::size_t - #include - -Index: boost_1_34_1/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp -=================================================================== ---- boost_1_34_1.orig/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp 2006-12-20 17:38:24.000000000 +0100 -+++ boost_1_34_1/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp 2008-09-20 20:55:21.000000000 +0200 -@@ -16,6 +16,7 @@ - #include - #include - #include -+#include - #if defined(BOOST_SPIRIT_DEBUG) - #include - #endif // defined(BOOST_SPIRIT_DEBUG) -Index: boost_1_34_1/boost/wave/util/flex_string.hpp -=================================================================== ---- boost_1_34_1.orig/boost/wave/util/flex_string.hpp 2006-04-25 19:21:01.000000000 +0200 -+++ boost_1_34_1/boost/wave/util/flex_string.hpp 2008-09-20 20:55:21.000000000 +0200 -@@ -94,6 +94,7 @@ - #include - #include - #include -+#include - - // this must occur after all of the includes and before any code appears - #ifdef BOOST_HAS_ABI_HEADERS diff --git a/meta/packages/boost/files/arm-intrinsics.patch b/meta/packages/boost/files/arm-intrinsics.patch deleted file mode 100644 index 3f9c620ebe..0000000000 --- a/meta/packages/boost/files/arm-intrinsics.patch +++ /dev/null @@ -1,53 +0,0 @@ -8/17/2010 - rebased to 1.44 by Qing He - -diff --git a/boost/smart_ptr/detail/atomic_count_sync.hpp b/boost/smart_ptr/detail/atomic_count_sync.hpp -index b6359b5..78b1cc2 100644 ---- a/boost/smart_ptr/detail/atomic_count_sync.hpp -+++ b/boost/smart_ptr/detail/atomic_count_sync.hpp -@@ -33,17 +33,46 @@ public: - - long operator++() - { -+#ifdef __ARM_ARCH_7A__ -+ int v1, tmp; -+ asm volatile ("1: \n\t" -+ "ldrex %0, %1 \n\t" -+ "add %0 ,%0, #1 \n\t" -+ "strex %2, %0, %1 \n\t" -+ "cmp %2, #0 \n\t" -+ "bne 1b \n\t" -+ : "=&r" (v1), "+Q"(value_), "=&r"(tmp) -+ ); -+#else - return __sync_add_and_fetch( &value_, 1 ); -+#endif - } - - long operator--() - { -+#ifdef __ARM_ARCH_7A__ -+ int v1, tmp; -+ asm volatile ("1: \n\t" -+ "ldrex %0, %1 \n\t" -+ "sub %0 ,%0, #1 \n\t" -+ "strex %2, %0, %1 \n\t" -+ "cmp %2, #0 \n\t" -+ "bne 1b \n\t" -+ : "=&r" (v1), "+Q"(value_), "=&r"(tmp) -+ ); -+ return value_; -+#else - return __sync_add_and_fetch( &value_, -1 ); -+#endif - } - - operator long() const - { -+#if __ARM_ARCH_7A__ -+ return value_; -+#else - return __sync_fetch_and_add( &value_, 0 ); -+#endif - } - - private: diff --git a/meta/packages/boost/files/atomic_count_gcc_atomicity.patch b/meta/packages/boost/files/atomic_count_gcc_atomicity.patch deleted file mode 100644 index 7d08e73550..0000000000 --- a/meta/packages/boost/files/atomic_count_gcc_atomicity.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: boost_1_33_1/boost/detail/atomic_count_gcc.hpp -=================================================================== ---- boost_1_33_1.orig/boost/detail/atomic_count_gcc.hpp 2008-05-01 20:43:45.000000000 +0200 -+++ boost_1_33_1/boost/detail/atomic_count_gcc.hpp 2008-05-01 20:43:55.000000000 +0200 -@@ -17,7 +17,7 @@ - // http://www.boost.org/LICENSE_1_0.txt) - // - --#include -+#include - - namespace boost - { diff --git a/meta/packages/boost/files/gcc41.patch b/meta/packages/boost/files/gcc41.patch deleted file mode 100644 index f91d1adf2b..0000000000 --- a/meta/packages/boost/files/gcc41.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -ur boost_1_33_1.orig/boost/bind.hpp boost_1_33_1/boost/bind.hpp ---- boost_1_33_1.orig/boost/bind.hpp 2008-10-11 10:30:03.000000000 +0200 -+++ boost_1_33_1/boost/bind.hpp 2008-10-11 10:41:25.000000000 +0200 -@@ -28,6 +28,10 @@ - #include - #include - -+#if __GNUC__ == 4 && __GNUC_MINOR__ == 1 -+# include -+#endif -+ - // Borland-specific bug, visit_each() silently fails to produce code - - #if defined(__BORLANDC__) diff --git a/meta/packages/boost/files/gcc43.patch b/meta/packages/boost/files/gcc43.patch deleted file mode 100644 index aefe0800c3..0000000000 --- a/meta/packages/boost/files/gcc43.patch +++ /dev/null @@ -1,256 +0,0 @@ -diff -aNru boost_1_34_1-ORIGINAL/boost/archive/polymorphic_iarchive.hpp boost_1_34_1/boost/archive/polymorphic_iarchive.hpp ---- boost_1_34_1-ORIGINAL/boost/archive/polymorphic_iarchive.hpp 2005-12-11 00:12:51.000000000 -0600 -+++ boost_1_34_1/boost/archive/polymorphic_iarchive.hpp 2008-03-03 03:08:59.000000000 -0600 -@@ -17,6 +17,7 @@ - // See http://www.boost.org for updates, documentation, and revision history. - - #include // std::size_t -+#include - #include - - #if defined(BOOST_NO_STDC_NAMESPACE) -diff -aNru boost_1_34_1-ORIGINAL/boost/archive/polymorphic_oarchive.hpp boost_1_34_1/boost/archive/polymorphic_oarchive.hpp ---- boost_1_34_1-ORIGINAL/boost/archive/polymorphic_oarchive.hpp 2006-02-11 23:43:06.000000000 -0600 -+++ boost_1_34_1/boost/archive/polymorphic_oarchive.hpp 2008-03-03 03:08:59.000000000 -0600 -@@ -17,6 +17,7 @@ - // See http://www.boost.org for updates, documentation, and revision history. - - #include // size_t -+#include - #include - - #include -diff -aNru boost_1_34_1-ORIGINAL/boost/date_time/date_facet.hpp boost_1_34_1/boost/date_time/date_facet.hpp ---- boost_1_34_1-ORIGINAL/boost/date_time/date_facet.hpp 2005-09-05 16:10:50.000000000 -0500 -+++ boost_1_34_1/boost/date_time/date_facet.hpp 2008-03-03 03:08:59.000000000 -0600 -@@ -429,7 +429,7 @@ - typedef std::basic_string string_type; - typedef CharT char_type; - typedef boost::date_time::period_parser period_parser_type; -- typedef special_values_parser special_values_parser_type; -+ typedef boost::date_time::special_values_parser special_values_parser_type; - typedef std::vector > input_collection_type; - typedef format_date_parser format_date_parser_type; - // date_generators stuff goes here -diff -aNru boost_1_34_1-ORIGINAL/boost/mpl/zip_view.hpp boost_1_34_1/boost/mpl/zip_view.hpp ---- boost_1_34_1-ORIGINAL/boost/mpl/zip_view.hpp 2004-09-02 10:40:42.000000000 -0500 -+++ boost_1_34_1/boost/mpl/zip_view.hpp 2008-03-03 03:08:59.000000000 -0600 -@@ -37,7 +37,7 @@ - typedef zip_iterator< - typename transform1< - IteratorSeq -- , next<_1> -+ , boost::mpl::next<_1> - >::type - > next; - }; -@@ -48,8 +48,8 @@ - struct zip_view - { - private: -- typedef typename transform1< Sequences, begin<_1> >::type first_ones_; -- typedef typename transform1< Sequences, end<_1> >::type last_ones_; -+ typedef typename transform1< Sequences, boost::mpl::begin<_1> >::type first_ones_; -+ typedef typename transform1< Sequences, boost::mpl::end<_1> >::type last_ones_; - - public: - typedef nested_begin_end_tag tag; -diff -aNru boost_1_34_1-ORIGINAL/boost/python/detail/def_helper.hpp boost_1_34_1/boost/python/detail/def_helper.hpp ---- boost_1_34_1-ORIGINAL/boost/python/detail/def_helper.hpp 2004-09-15 20:00:28.000000000 -0500 -+++ boost_1_34_1/boost/python/detail/def_helper.hpp 2008-03-03 03:08:59.000000000 -0600 -@@ -155,7 +155,7 @@ - , T3 const& - , T4 const& - , default_call_policies -- , keywords<0> -+ , boost::python::detail::keywords<0> - , char const* - , void(not_specified::*)() // A function pointer type which is never an - // appropriate default implementation -diff -aNru boost_1_34_1-ORIGINAL/boost/regex/v4/basic_regex_creator.hpp boost_1_34_1/boost/regex/v4/basic_regex_creator.hpp ---- boost_1_34_1-ORIGINAL/boost/regex/v4/basic_regex_creator.hpp 2006-07-16 11:06:38.000000000 -0500 -+++ boost_1_34_1/boost/regex/v4/basic_regex_creator.hpp 2008-03-03 03:08:59.000000000 -0600 -@@ -24,6 +24,8 @@ - # include BOOST_ABI_PREFIX - #endif - -+#include -+ - namespace boost{ - - namespace re_detail{ -diff -aNru boost_1_34_1-ORIGINAL/boost/regex/v4/basic_regex.hpp boost_1_34_1/boost/regex/v4/basic_regex.hpp ---- boost_1_34_1-ORIGINAL/boost/regex/v4/basic_regex.hpp 2007-06-05 12:28:18.000000000 -0500 -+++ boost_1_34_1/boost/regex/v4/basic_regex.hpp 2008-03-03 03:08:59.000000000 -0600 -@@ -23,6 +23,8 @@ - # include BOOST_ABI_PREFIX - #endif - -+#include -+ - namespace boost{ - #ifdef BOOST_MSVC - #pragma warning(push) -diff -aNru boost_1_34_1-ORIGINAL/boost/regex/v4/basic_regex_parser.hpp boost_1_34_1/boost/regex/v4/basic_regex_parser.hpp ---- boost_1_34_1-ORIGINAL/boost/regex/v4/basic_regex_parser.hpp 2006-12-20 11:19:05.000000000 -0600 -+++ boost_1_34_1/boost/regex/v4/basic_regex_parser.hpp 2008-03-03 03:08:59.000000000 -0600 -@@ -23,6 +23,8 @@ - # include BOOST_ABI_PREFIX - #endif - -+#include -+ - namespace boost{ - namespace re_detail{ - -diff -aNru boost_1_34_1-ORIGINAL/boost/regex/v4/cpp_regex_traits.hpp boost_1_34_1/boost/regex/v4/cpp_regex_traits.hpp ---- boost_1_34_1-ORIGINAL/boost/regex/v4/cpp_regex_traits.hpp 2007-01-15 05:09:44.000000000 -0600 -+++ boost_1_34_1/boost/regex/v4/cpp_regex_traits.hpp 2008-03-03 03:08:59.000000000 -0600 -@@ -41,6 +41,7 @@ - - #include - #include -+#include - - #ifdef BOOST_HAS_ABI_HEADERS - # include BOOST_ABI_PREFIX -diff -aNru boost_1_34_1-ORIGINAL/boost/regex/v4/perl_matcher.hpp boost_1_34_1/boost/regex/v4/perl_matcher.hpp ---- boost_1_34_1-ORIGINAL/boost/regex/v4/perl_matcher.hpp 2006-10-18 07:55:30.000000000 -0500 -+++ boost_1_34_1/boost/regex/v4/perl_matcher.hpp 2008-03-03 03:08:59.000000000 -0600 -@@ -18,6 +18,8 @@ - # include BOOST_ABI_PREFIX - #endif - -+#include -+ - namespace boost{ - namespace re_detail{ - -diff -aNru boost_1_34_1-ORIGINAL/boost/regex/v4/regex_split.hpp boost_1_34_1/boost/regex/v4/regex_split.hpp ---- boost_1_34_1-ORIGINAL/boost/regex/v4/regex_split.hpp 2005-01-21 11:22:38.000000000 -0600 -+++ boost_1_34_1/boost/regex/v4/regex_split.hpp 2008-03-03 03:08:59.000000000 -0600 -@@ -21,6 +21,8 @@ - #ifndef BOOST_REGEX_SPLIT_HPP - #define BOOST_REGEX_SPLIT_HPP - -+#include -+ - namespace boost{ - - #ifdef BOOST_HAS_ABI_HEADERS -diff -aNru boost_1_34_1-ORIGINAL/boost/regex/v4/states.hpp boost_1_34_1/boost/regex/v4/states.hpp ---- boost_1_34_1-ORIGINAL/boost/regex/v4/states.hpp 2005-09-20 07:01:25.000000000 -0500 -+++ boost_1_34_1/boost/regex/v4/states.hpp 2008-03-03 03:08:59.000000000 -0600 -@@ -23,6 +23,8 @@ - # include BOOST_ABI_PREFIX - #endif - -+#include -+ - namespace boost{ - namespace re_detail{ - -diff -aNru boost_1_34_1-ORIGINAL/boost/serialization/collection_traits.hpp boost_1_34_1/boost/serialization/collection_traits.hpp ---- boost_1_34_1-ORIGINAL/boost/serialization/collection_traits.hpp 2005-06-21 00:19:04.000000000 -0500 -+++ boost_1_34_1/boost/serialization/collection_traits.hpp 2008-03-03 03:09:49.000000000 -0600 -@@ -22,6 +22,7 @@ - // compiles recognize the same set of primitive types, the possibility - // exists for archives to be non-portable if class information for primitive - // types is included. This is addressed by the following macros. -+#include - #include - #include - #include -diff -aNru boost_1_34_1-ORIGINAL/boost/spirit/phoenix/operators.hpp boost_1_34_1/boost/spirit/phoenix/operators.hpp ---- boost_1_34_1-ORIGINAL/boost/spirit/phoenix/operators.hpp 2006-08-25 11:27:30.000000000 -0500 -+++ boost_1_34_1/boost/spirit/phoenix/operators.hpp 2008-03-03 03:08:59.000000000 -0600 -@@ -24,6 +24,7 @@ - #include - #include - #include -+#include - - /////////////////////////////////////////////////////////////////////////////// - namespace phoenix { -diff -aNru boost_1_34_1-ORIGINAL/boost/test/test_tools.hpp boost_1_34_1/boost/test/test_tools.hpp ---- boost_1_34_1-ORIGINAL/boost/test/test_tools.hpp 2007-02-22 11:57:29.000000000 -0600 -+++ boost_1_34_1/boost/test/test_tools.hpp 2008-03-03 03:08:59.000000000 -0600 -@@ -42,6 +42,7 @@ - #include - - // STL -+#include - #include // for std::size_t - #include - -diff -aNru boost_1_34_1-ORIGINAL/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp boost_1_34_1/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp ---- boost_1_34_1-ORIGINAL/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp 2006-12-20 10:38:24.000000000 -0600 -+++ boost_1_34_1/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp 2008-03-03 03:08:59.000000000 -0600 -@@ -16,6 +16,7 @@ - #include - #include - #include -+#include - #if defined(BOOST_SPIRIT_DEBUG) - #include - #endif // defined(BOOST_SPIRIT_DEBUG) -diff -aNru boost_1_34_1-ORIGINAL/boost/wave/util/flex_string.hpp boost_1_34_1/boost/wave/util/flex_string.hpp ---- boost_1_34_1-ORIGINAL/boost/wave/util/flex_string.hpp 2006-04-25 12:21:01.000000000 -0500 -+++ boost_1_34_1/boost/wave/util/flex_string.hpp 2008-03-03 03:08:59.000000000 -0600 -@@ -94,6 +94,7 @@ - #include - #include - #include -+#include - - // this must occur after all of the includes and before any code appears - #ifdef BOOST_HAS_ABI_HEADERS - ---- boost_1_33_1/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp 2008-07-05 01:50:04.000000000 +0200 -+++ boost_1_34_1/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp 2006-12-20 17:38:24.000000000 +0100 -@@ -295,17 +325,20 @@ - - lex_functor(IteratorT const &first, IteratorT const &last, - PositionT const &pos, boost::wave::language_support language) -- : lexer(first, last, pos, language) -+ : re2c_lexer(first, last, pos, language) - {} - virtual ~lex_functor() {} - - // get the next token from the input stream -- token_type get() { return lexer.get(); } -- void set_position(PositionT const &pos) -- { lexer.set_position(pos); } -+ token_type get() { return re2c_lexer.get(); } -+ void set_position(PositionT const &pos) { re2c_lexer.set_position(pos); } -+#if BOOST_WAVE_SUPPORT_PRAGMA_ONCE != 0 -+ bool has_include_guards(std::string& guard_name) const -+ { return re2c_lexer.has_include_guards(guard_name); } -+#endif - - private: -- lexer lexer; -+ lexer re2c_lexer; - }; - - /////////////////////////////////////////////////////////////////////////////// -@@ -338,7 +371,7 @@ - // It is coupled to the iterator type to allow to decouple the lexer/iterator - // configurations at compile time. - // --// This function is declared inside the cpp_slex_token.hpp file, which is -+// This function is declared inside the cpp_lex_token.hpp file, which is - // referenced by the source file calling the lexer and the source file, which - // instantiates the lex_functor. But is is defined here, so it will be - // instantiated only while compiling the source file, which instantiates the -@@ -356,8 +389,8 @@ - IteratorT const &last, PositionT const &pos, - boost::wave::language_support language) - { -- return new re2clex::lex_functor(first, last, pos, -- language); -+ using re2clex::lex_functor; -+ return new lex_functor(first, last, pos, language); - } - - #undef BOOST_WAVE_RE2C_NEW_LEXER_INLINE diff --git a/meta/packages/boost/files/linux-uclibc.patch b/meta/packages/boost/files/linux-uclibc.patch deleted file mode 100644 index 79f14dea88..0000000000 --- a/meta/packages/boost/files/linux-uclibc.patch +++ /dev/null @@ -1,10 +0,0 @@ ---- /dev/null 1969-12-31 16:00:00.000000000 -0800 -+++ boost_1_32_0/boost/config/platform/linux-uclibc.hpp 2005-07-05 14:51:56.237294460 -0700 -@@ -0,0 +1,7 @@ -+// Modifications required to support uClibC libc implementation. -+// Default to Linux... -+#include "linux.hpp" -+ -+// Override anything uClibC doesn't support. -+// At present (0.9.27) the nl_types.h header exists but is not implemented -+#undef BOOST_HAS_NL_TYPES_H diff --git a/meta/packages/boost/files/unit_test_log10f.patch b/meta/packages/boost/files/unit_test_log10f.patch deleted file mode 100644 index b235e12446..0000000000 --- a/meta/packages/boost/files/unit_test_log10f.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- boost_1_32_0/libs/test/src/unit_test_result.cpp.orig 2005-07-05 11:00:53.887594850 -0700 -+++ boost_1_32_0/libs/test/src/unit_test_result.cpp 2005-07-05 11:01:20.683533034 -0700 -@@ -144,7 +144,7 @@ - unit_test_counter num_passed, unit_test_counter num_failed ) - { - unit_test_counter total_test_cases = num_passed + num_failed; -- std::size_t width = static_cast( std::log10( (float)(std::max)( num_passed, num_failed ) ) ) + 1; -+ std::size_t width = static_cast( std::log10( (double)(std::max)( num_passed, num_failed ) ) ) + 1; - - where_to << std::setw( indent ) << "" << std::setw( width ) << num_passed - << " test " << ps_name( num_passed != 1, "case" ) << " out of " << total_test_cases << " passed\n" -@@ -158,7 +158,7 @@ - { - unit_test_counter total_assertions = num_passed + num_failed; - std::size_t width = total_assertions > 0 -- ? static_cast( std::log10( (float)(std::max)( num_passed, num_failed ) ) ) + 1 -+ ? static_cast( std::log10( (double)(std::max)( num_passed, num_failed ) ) ) + 1 - : 1; - - where_to << std::setw( indent ) << "" << std::setw( width ) << num_passed diff --git a/meta/packages/bzip2/bzip2-1.0.5/Makefile.am b/meta/packages/bzip2/bzip2-1.0.5/Makefile.am deleted file mode 100644 index 070d57b243..0000000000 --- a/meta/packages/bzip2/bzip2-1.0.5/Makefile.am +++ /dev/null @@ -1,41 +0,0 @@ - -lib_LTLIBRARIES = libbz2.la - -libbz2_la_SOURCES = blocksort.c \ - huffman.c \ - crctable.c \ - randtable.c \ - compress.c \ - decompress.c \ - bzlib.c - -bin_PROGRAMS = bzip2 bzip2recover - -bzip2_SOURCES = bzip2.c -bzip2_LDADD = libbz2.la -bzip2_DEPENDENCIES = libbz2.la - -include_HEADERS = bzlib.h - -bzip2recover_SOURCES = bzip2recover.c -bzip2recover_LDADD = libbz2.la -bzip2recover_DEPENDENCIES = libbz2.la - -bin_SCRIPTS = bzgrep bzmore bzdiff - -man_MANS = bzip2.1 bzgrep.1 bzmore.1 bzdiff.1 -EXTRA_DIST = $(man_MANS) - -install-exec-hook: - ln -s $(bindir)/bzip2$(EXEEXT) $(DESTDIR)$(bindir)/bunzip2$(EXEEXT) - ln -s $(bindir)/bzip2$(EXEEXT) $(DESTDIR)$(bindir)/bzcat$(EXEEXT) - ln -s $(bindir)/bzgrep$(EXEEXT) $(DESTDIR)$(bindir)/bzegrep$(EXEEXT) - ln -s $(bindir)/bzgrep$(EXEEXT) $(DESTDIR)$(bindir)/bzfgrep$(EXEEXT) - ln -s $(bindir)/bzmore$(EXEEXT) $(DESTDIR)$(bindir)/bzless$(EXEEXT) - ln -s $(bindir)/bzdiff$(EXEEXT) $(DESTDIR)$(bindir)/bzcmp$(EXEEXT) - -install-data-hook: - echo ".so man1/bzgrep.1" > $(DESTDIR)$(mandir)/man1/bzegrep.1 - echo ".so man1/bzgrep.1" > $(DESTDIR)$(mandir)/man1/bzfgrep.1 - echo ".so man1/bzmore.1" > $(DESTDIR)$(mandir)/man1/bzless.1 - echo ".so man1/bzdiff.1" > $(DESTDIR)$(mandir)/man1/bzcmp.1 diff --git a/meta/packages/bzip2/bzip2-1.0.5/configure.ac b/meta/packages/bzip2/bzip2-1.0.5/configure.ac deleted file mode 100644 index 14b1d1809d..0000000000 --- a/meta/packages/bzip2/bzip2-1.0.5/configure.ac +++ /dev/null @@ -1,14 +0,0 @@ -AC_PREREQ([2.57]) - -AC_INIT(bzip2, 2.0.5, , libXrender) -AM_INIT_AUTOMAKE() -AM_MAINTAINER_MODE - -#AM_CONFIG_HEADER(config.h) - -# Check for progs -AC_PROG_CC -AC_PROG_LIBTOOL - -AC_OUTPUT([Makefile]) - diff --git a/meta/packages/bzip2/bzip2_1.0.5.bb b/meta/packages/bzip2/bzip2_1.0.5.bb deleted file mode 100644 index c6339c0676..0000000000 --- a/meta/packages/bzip2/bzip2_1.0.5.bb +++ /dev/null @@ -1,41 +0,0 @@ -DESCRIPTION = "Very high-quality data compression program." -HOMEPAGE = "http://www.bzip.org/" -SECTION = "console/utils" -LICENSE = "bzip2" -LIC_FILES_CHKSUM = "file://LICENSE;beginline=8;endline=37;md5=40d9d1eb05736d1bfc86cfdd9106e6b2" -PR = "r2" - -SRC_URI = "http://www.bzip.org/${PV}/${BPN}-${PV}.tar.gz \ - file://configure.ac \ - file://Makefile.am" - -CFLAGS_append = " -fPIC -fpic -Winline -fno-strength-reduce -D_FILE_OFFSET_BITS=64" - -inherit autotools - -do_configure_prepend () { - cp ${WORKDIR}/configure.ac ${S}/ - cp ${WORKDIR}/Makefile.am ${S}/ - cp ${STAGING_DATADIR_NATIVE}/automake*/install-sh ${S}/ -} - -do_install_append () { - if [ "${BUILD_ARCH}" != "${HOST_ARCH}" ]; then - mv ${D}${bindir}/bunzip2 ${D}${bindir}/bunzip2.${PN} - mv ${D}${bindir}/bzcat ${D}${bindir}/bzcat.${PN} - fi -} - -pkg_postinst_${PN} () { - update-alternatives --install ${bindir}/bunzip2 bunzip2 bunzip2.${PN} 100 - update-alternatives --install ${bindir}/bzcat bzcat bzcat.${PN} 100 -} - - -pkg_prerm_${PN} () { - update-alternatives --remove bunzip2 bunzip2.${PN} - update-alternatives --remove bzcat bzcat.${PN} -} - -PROVIDES_append_virtclass-native = " bzip2-full-native" -BBCLASSEXTEND = "native" diff --git a/meta/packages/claws-mail/claws-mail.inc b/meta/packages/claws-mail/claws-mail.inc deleted file mode 100644 index 04401df2f5..0000000000 --- a/meta/packages/claws-mail/claws-mail.inc +++ /dev/null @@ -1,57 +0,0 @@ -SECTION = "x11/network" -DESCRIPTION = "Mail user agent" -#DEPENDS = "gtk+ gpgme libetpan libgnomeprint aspell openssl" -DEPENDS = "gtk+ libetpan openssl libowl" -LICENSE = "GPL" -PR = "r6" - -SRC_URI = "\ - ${SOURCEFORGE_MIRROR}/sylpheed-claws/claws-mail-${PV}.tar.bz2 \ - file://desktop.patch;patch=1 \ - file://streamline-ui.patch;patch=1 \ - file://owl-window-menu.patch;patch=1 \ - file://fix-build.patch;patch=1 \ - " - -FILES_${PN} = "${bindir} ${datadir}/pixmaps ${datadir}/applications" - -#EXTRA_OECONF = "--disable-aspell-test \ -# --disable-dillo-viewer-plugin --with-aspell-prefix=${STAGING_DIR_HOST}${prefix} \ -# --enable-aspell" - -EXTRA_OECONF = "--disable-aspell-test \ - --disable-aspell \ - --disable-manual \ -# --disable-openssl \ - --disable-crash-dialog \ - --disable-jpilot \ - --disable-trayicon-plugin \ - --disable-spamassassin-plugin \ - --disable-bogofilter-plugin \ - --disable-pgpcore-plugin \ - --disable-pgpmime-plugin \ - --disable-pgpinline-plugin \ - --disable-dillo-viewer-plugin \ - --disable-clamav-plugin \ -# --disable-libetpan \ - --disable-gnomeprint \ - --disable-valgrind \ - --disable-static \ - " - -CFLAGS += "-D_GNU_SOURCE" - -inherit autotools pkgconfig gettext - -do_install_append() { - install -d ${D}${datadir}/applications - install -m 0644 claws-mail.desktop ${D}${datadir}/applications/ - install -d ${D}${datadir}/pixmaps - install -m 0644 claws-mail.png ${D}${datadir}/pixmaps/ -} - -#python populate_packages_prepend () { -# abiword_libdir = bb.data.expand('${libdir}/claws-mail/plugins', d) -# -# do_split_packages(d, abiword_libdir, '^(.*)\.so$', 'claws-mail-plugin-%s', 'Claws plugin for %s', extra_depends='') -#} diff --git a/meta/packages/claws-mail/claws-mail_2.9.1.bb b/meta/packages/claws-mail/claws-mail_2.9.1.bb deleted file mode 100644 index f8a8396b95..0000000000 --- a/meta/packages/claws-mail/claws-mail_2.9.1.bb +++ /dev/null @@ -1 +0,0 @@ -require claws-mail.inc diff --git a/meta/packages/claws-mail/claws-plugin-gtkhtml2-viewer_0.15.bb b/meta/packages/claws-mail/claws-plugin-gtkhtml2-viewer_0.15.bb deleted file mode 100644 index 82918173e4..0000000000 --- a/meta/packages/claws-mail/claws-plugin-gtkhtml2-viewer_0.15.bb +++ /dev/null @@ -1,14 +0,0 @@ -SECTION = "x11/network" -DESCRIPTION = "Mail user agent plugins" -DEPENDS = "claws-mail gtkhtml2 curl" -LICENSE = "GPL" -PR = "r1" - -SRC_URI = "http://www.claws-mail.org/downloads/plugins/gtkhtml2_viewer-${PV}.tar.gz" - -inherit autotools pkgconfig gettext - -S = "${WORKDIR}/gtkhtml2_viewer-${PV}" - -FILES_${PN} = "${libdir}/claws-mail/plugins/*.so" - diff --git a/meta/packages/claws-mail/claws-plugin-maildir_0.24.4.bb b/meta/packages/claws-mail/claws-plugin-maildir_0.24.4.bb deleted file mode 100644 index 4351d1e5de..0000000000 --- a/meta/packages/claws-mail/claws-plugin-maildir_0.24.4.bb +++ /dev/null @@ -1,14 +0,0 @@ -SECTION = "x11/network" -DESCRIPTION = "Mail user agent plugins" -DEPENDS = "claws-mail db" -LICENSE = "GPL" -PR = "r1" - -SRC_URI = "http://www.claws-mail.org/downloads/plugins/maildir-${PV}.tar.gz" - -inherit autotools pkgconfig - -S = "${WORKDIR}/maildir-${PV}" - -FILES_${PN} = "${libdir}/claws-mail/plugins/*.so" - diff --git a/meta/packages/claws-mail/claws-plugin-mailmbox_1.13.bb b/meta/packages/claws-mail/claws-plugin-mailmbox_1.13.bb deleted file mode 100644 index fe7041494f..0000000000 --- a/meta/packages/claws-mail/claws-plugin-mailmbox_1.13.bb +++ /dev/null @@ -1,14 +0,0 @@ -SECTION = "x11/network" -DESCRIPTION = "Mail user agent plugins" -DEPENDS = "claws-mail" -LICENSE = "GPL" -PR = "r2" - -SRC_URI = "http://www.claws-mail.org/downloads/plugins/mailmbox-${PV}.tar.gz" - -inherit autotools pkgconfig - -S = "${WORKDIR}/mailmbox-${PV}" - -FILES_${PN} = "${libdir}/claws-mail/plugins/*.so" -FILES_${PN}-dbg = "${libdir}/claws-mail/plugins/.debug" diff --git a/meta/packages/claws-mail/claws-plugin-rssyl_0.13.bb b/meta/packages/claws-mail/claws-plugin-rssyl_0.13.bb deleted file mode 100644 index de0705c7fd..0000000000 --- a/meta/packages/claws-mail/claws-plugin-rssyl_0.13.bb +++ /dev/null @@ -1,14 +0,0 @@ -SECTION = "x11/network" -DESCRIPTION = "Mail user agent plugins" -DEPENDS = "claws-mail libxml2 curl glib-2.0 gtk+" -LICENSE = "GPL" -PR = "r1" - -SRC_URI = "http://www.claws-mail.org/downloads/plugins/rssyl-${PV}.tar.gz" - -inherit autotools pkgconfig gettext - -S = "${WORKDIR}/rssyl-${PV}" - -FILES_${PN} = "${libdir}/claws-mail/plugins/*.so" - diff --git a/meta/packages/claws-mail/files/desktop.patch b/meta/packages/claws-mail/files/desktop.patch deleted file mode 100644 index c5ed7a9c7d..0000000000 --- a/meta/packages/claws-mail/files/desktop.patch +++ /dev/null @@ -1,19 +0,0 @@ -Index: claws-mail-2.9.1/claws-mail.desktop -=================================================================== ---- claws-mail-2.9.1.orig/claws-mail.desktop 2007-04-24 17:40:20.000000000 +0100 -+++ claws-mail-2.9.1/claws-mail.desktop 2007-04-25 07:08:36.000000000 +0100 -@@ -1,11 +1,11 @@ - [Desktop Entry] - Encoding=UTF-8 --Name=Claws Mail -+Name=Mail - Exec=claws-mail - Icon=claws-mail --Info="Claws Mail" -+Info=Email Application - Categories=GTK;Network;Email; --Comment="Gtk+ based Mail Client" -+Comment=Email Application - Terminal=false - Type=Application - StartupNotify=true diff --git a/meta/packages/claws-mail/files/fix-build.patch b/meta/packages/claws-mail/files/fix-build.patch deleted file mode 100644 index 2f30899fe1..0000000000 --- a/meta/packages/claws-mail/files/fix-build.patch +++ /dev/null @@ -1,24 +0,0 @@ -Remove duplicate file entries as this breaks install with new Automake - -JL 19/03/10 - -Index: claws-mail-2.9.1/src/gtk/Makefile.am -=================================================================== ---- claws-mail-2.9.1.orig/src/gtk/Makefile.am 2007-03-22 07:52:47.000000000 +0000 -+++ claws-mail-2.9.1/src/gtk/Makefile.am 2010-03-19 14:54:06.565828281 +0000 -@@ -44,7 +44,6 @@ - filesel.h \ - foldersort.h \ - gtkaspell.h \ -- gtksctree.h \ - gtkshruler.h \ - gtksctree.h \ - gtksourceprintjob.h \ -@@ -57,7 +56,6 @@ - menu.h \ - pluginwindow.h \ - prefswindow.h \ -- gtkvscrollbutton.h \ - progressdialog.h \ - quicksearch.h \ - sslcertwindow.h \ diff --git a/meta/packages/claws-mail/files/owl-window-menu.patch b/meta/packages/claws-mail/files/owl-window-menu.patch deleted file mode 100644 index 54c61668a9..0000000000 --- a/meta/packages/claws-mail/files/owl-window-menu.patch +++ /dev/null @@ -1,1009 +0,0 @@ -Index: claws-mail-2.9.1/src/addressbook.c -=================================================================== ---- claws-mail-2.9.1.orig/src/addressbook.c 2007-04-25 10:18:13.000000000 +0100 -+++ claws-mail-2.9.1/src/addressbook.c 2007-04-25 10:30:23.000000000 +0100 -@@ -941,7 +941,6 @@ - sizeof(addressbook_entries[0]); - menubar = menubar_create(window, addressbook_entries, n_entries, - "", NULL); -- gtk_box_pack_start(GTK_BOX(vbox), menubar, FALSE, TRUE, 0); - menu_factory = gtk_item_factory_from_widget(menubar); - - vbox2 = gtk_vbox_new(FALSE, BORDER_WIDTH); -Index: claws-mail-2.9.1/src/gtk/menu.c -=================================================================== ---- claws-mail-2.9.1.orig/src/gtk/menu.c 2007-04-25 10:18:13.000000000 +0100 -+++ claws-mail-2.9.1/src/gtk/menu.c 2007-04-25 10:30:23.000000000 +0100 -@@ -35,10 +35,7 @@ - #include "menu.h" - #include "utils.h" - --#ifdef MAEMO --#include --#include --#endif -+#include - - static void connect_accel_change_signals(GtkWidget* widget, GtkWidget *wid2) ; - -@@ -49,20 +46,14 @@ - GtkItemFactory *factory; - GtkWidget *menubar; - --#ifdef MAEMO - factory = gtk_item_factory_new(GTK_TYPE_MENU, path, NULL); --#else -- factory = gtk_item_factory_new(GTK_TYPE_MENU_BAR, path, NULL); --#endif - gtk_item_factory_set_translate_func(factory, menu_translate, - NULL, NULL); - gtk_item_factory_create_items(factory, n_entries, entries, data); - gtk_window_add_accel_group (GTK_WINDOW (window), factory->accel_group); - - menubar = gtk_item_factory_get_widget(factory, path); --#ifdef MAEMO -- hildon_window_set_menu(HILDON_WINDOW(window), GTK_MENU(menubar)); --#endif -+ owl_set_window_menu(GTK_WINDOW(window), GTK_MENU(menubar)); - return menubar; - } - -Index: claws-mail-2.9.1/src/mainwindow.c -=================================================================== ---- claws-mail-2.9.1.orig/src/mainwindow.c 2007-04-25 10:26:40.000000000 +0100 -+++ claws-mail-2.9.1/src/mainwindow.c 2007-04-25 10:30:23.000000000 +0100 -@@ -1094,8 +1094,6 @@ - n_menu_entries = sizeof(mainwin_entries) / sizeof(mainwin_entries[0]); - menubar = menubar_create(window, mainwin_entries, - n_menu_entries, "
", mainwin); -- gtk_widget_show(menubar); -- gtk_box_pack_start(GTK_BOX(vbox), menubar, FALSE, TRUE, 0); - ifactory = gtk_item_factory_from_widget(menubar); - - /* gtk_widget_show(gtk_item_factory_get_item(ifactory,"/Message/Mailing-List")); -Index: claws-mail-2.9.1/src/messageview.c -=================================================================== ---- claws-mail-2.9.1.orig/src/messageview.c 2007-04-25 10:18:13.000000000 +0100 -+++ claws-mail-2.9.1/src/messageview.c 2007-04-25 10:30:23.000000000 +0100 -@@ -414,8 +414,6 @@ - n_menu_entries = sizeof(msgview_entries) / sizeof(msgview_entries[0]); - menubar = menubar_create(window, msgview_entries, - n_menu_entries, "", msgview); -- gtk_widget_show(menubar); -- gtk_box_pack_start(GTK_BOX(vbox), menubar, FALSE, TRUE, 0); - - if (prefs_common.toolbar_detachable) { - handlebox = gtk_handle_box_new(); -@@ -478,6 +476,7 @@ - g_signal_connect(G_OBJECT(window), "key_press_event", - G_CALLBACK(key_pressed), msgview); - #endif -+ gtk_widget_realize(window); - messageview_add_toolbar(msgview, window); - - if (show) { -Index: claws-mail-2.9.1/configure.ac -=================================================================== ---- claws-mail-2.9.1.orig/configure.ac 2007-04-25 10:18:13.000000000 +0100 -+++ claws-mail-2.9.1/configure.ac 2007-04-25 10:30:23.000000000 +0100 -@@ -406,6 +406,11 @@ - AC_SUBST(GTK_CFLAGS) - AC_SUBST(GTK_LIBS) - -+OWL_CFLAGS="" -+OWL_LIBS="-lowl" -+AC_SUBST(OWL_CFLAGS) -+AC_SUBST(OWL_LIBS) -+ - dnl GNU/Aspell is used for spell checking - AC_ARG_ENABLE(aspell, - [ --disable-aspell Disable GNU/aspell support [default=yes]], -Index: claws-mail-2.9.1/src/Makefile.am -=================================================================== ---- claws-mail-2.9.1.orig/src/Makefile.am 2007-04-25 10:18:13.000000000 +0100 -+++ claws-mail-2.9.1/src/Makefile.am 2007-04-25 10:30:23.000000000 +0100 -@@ -471,7 +471,8 @@ - $(LIBICONV) \ - $(STARTUP_NOTIFICATION_LIBS) \ - $(LIBETPAN_LIBS) \ -- $(MAEMO_LIBS) -+ $(MAEMO_LIBS) \ -+ $(OWL_LIBS) - - AM_CPPFLAGS = \ - -DG_LOG_DOMAIN=\"Claws-Mail\" \ -@@ -489,6 +490,7 @@ - $(LIBETPAN_CPPFLAGS) \ - $(STARTUP_NOTIFICATION_CFLAGS) \ - $(MAEMO_CFLAGS) \ -+ $(OWL_CFLAGS) \ - -Wno-unused-function - - #no-unused-function is there because of bison stuff -Index: claws-mail-2.9.1/configure -=================================================================== ---- claws-mail-2.9.1.orig/configure 2007-04-25 10:18:13.000000000 +0100 -+++ claws-mail-2.9.1/configure 2007-04-25 10:30:23.000000000 +0100 -@@ -769,7 +769,6 @@ - # include - #endif" - --gt_needs= - ac_subst_vars='SHELL - PATH_SEPARATOR - PACKAGE_NAME -@@ -942,6 +941,8 @@ - PASSCRYPT_KEY - GTK_CFLAGS - GTK_LIBS -+OWL_LIBS -+OWL_CFLAGS - ASPELL - ASPELL_CFLAGS - ASPELL_LIBS -@@ -2063,7 +2064,6 @@ - >$cache_file - fi - --gt_needs="$gt_needs " - # Check that the precious variables saved in the cache have kept the same - # value. - ac_cache_corrupted=false -@@ -3001,9 +3001,7 @@ - # Put the nasty error message in config.log where it belongs - echo "$GNOME2_PKG_ERRORS" >&5 - -- { echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6; } -- ac_enable_gnome2=no -+ ac_enable_gnome2=no - elif test $pkg_failed = untried; then - ac_enable_gnome2=no - else -@@ -4147,14 +4145,12 @@ - - - -- -- { echo "$as_me:$LINENO: checking for strerror in -lcposix" >&5 --echo $ECHO_N "checking for strerror in -lcposix... $ECHO_C" >&6; } --if test "${ac_cv_lib_cposix_strerror+set}" = set; then -+{ echo "$as_me:$LINENO: checking for library containing strerror" >&5 -+echo $ECHO_N "checking for library containing strerror... $ECHO_C" >&6; } -+if test "${ac_cv_search_strerror+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else -- ac_check_lib_save_LIBS=$LIBS --LIBS="-lcposix $LIBS" -+ ac_func_search_save_LIBS=$LIBS - cat >conftest.$ac_ext <<_ACEOF - /* confdefs.h. */ - _ACEOF -@@ -4177,7 +4173,14 @@ - return 0; - } - _ACEOF --rm -f conftest.$ac_objext conftest$ac_exeext -+for ac_lib in '' cposix; do -+ if test -z "$ac_lib"; then -+ ac_res="none required" -+ else -+ ac_res=-l$ac_lib -+ LIBS="-l$ac_lib $ac_func_search_save_LIBS" -+ fi -+ rm -f conftest.$ac_objext conftest$ac_exeext - if { (ac_try="$ac_link" - case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; -@@ -4195,25 +4198,35 @@ - test ! -s conftest.err - } && test -s conftest$ac_exeext && - $as_test_x conftest$ac_exeext; then -- ac_cv_lib_cposix_strerror=yes -+ ac_cv_search_strerror=$ac_res - else - echo "$as_me: failed program was:" >&5 - sed 's/^/| /' conftest.$ac_ext >&5 - -- ac_cv_lib_cposix_strerror=no -+ - fi - - rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ -- conftest$ac_exeext conftest.$ac_ext --LIBS=$ac_check_lib_save_LIBS -+ conftest$ac_exeext -+ if test "${ac_cv_search_strerror+set}" = set; then -+ break -+fi -+done -+if test "${ac_cv_search_strerror+set}" = set; then -+ : -+else -+ ac_cv_search_strerror=no - fi --{ echo "$as_me:$LINENO: result: $ac_cv_lib_cposix_strerror" >&5 --echo "${ECHO_T}$ac_cv_lib_cposix_strerror" >&6; } --if test $ac_cv_lib_cposix_strerror = yes; then -- LIBS="$LIBS -lcposix" -+rm conftest.$ac_ext -+LIBS=$ac_func_search_save_LIBS - fi -+{ echo "$as_me:$LINENO: result: $ac_cv_search_strerror" >&5 -+echo "${ECHO_T}$ac_cv_search_strerror" >&6; } -+ac_res=$ac_cv_search_strerror -+if test "$ac_res" != no; then -+ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" - -- -+fi - - # Find a good install program. We prefer a C program (faster), - # so one script is as good as another. But avoid the broken or -@@ -5769,7 +5782,7 @@ - ;; - *-*-irix6*) - # Find out which ABI we are using. -- echo '#line 5772 "configure"' > conftest.$ac_ext -+ echo '#line 5785 "configure"' > conftest.$ac_ext - if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 - (eval $ac_compile) 2>&5 - ac_status=$? -@@ -8555,11 +8568,11 @@ - -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ - -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ - -e 's:$: $lt_compiler_flag:'` -- (eval echo "\"\$as_me:8558: $lt_compile\"" >&5) -+ (eval echo "\"\$as_me:8571: $lt_compile\"" >&5) - (eval "$lt_compile" 2>conftest.err) - ac_status=$? - cat conftest.err >&5 -- echo "$as_me:8562: \$? = $ac_status" >&5 -+ echo "$as_me:8575: \$? = $ac_status" >&5 - if (exit $ac_status) && test -s "$ac_outfile"; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings other than the usual output. -@@ -8823,11 +8836,11 @@ - -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ - -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ - -e 's:$: $lt_compiler_flag:'` -- (eval echo "\"\$as_me:8826: $lt_compile\"" >&5) -+ (eval echo "\"\$as_me:8839: $lt_compile\"" >&5) - (eval "$lt_compile" 2>conftest.err) - ac_status=$? - cat conftest.err >&5 -- echo "$as_me:8830: \$? = $ac_status" >&5 -+ echo "$as_me:8843: \$? = $ac_status" >&5 - if (exit $ac_status) && test -s "$ac_outfile"; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings other than the usual output. -@@ -8927,11 +8940,11 @@ - -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ - -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ - -e 's:$: $lt_compiler_flag:'` -- (eval echo "\"\$as_me:8930: $lt_compile\"" >&5) -+ (eval echo "\"\$as_me:8943: $lt_compile\"" >&5) - (eval "$lt_compile" 2>out/conftest.err) - ac_status=$? - cat out/conftest.err >&5 -- echo "$as_me:8934: \$? = $ac_status" >&5 -+ echo "$as_me:8947: \$? = $ac_status" >&5 - if (exit $ac_status) && test -s out/conftest2.$ac_objext - then - # The compiler can only warn and ignore the option if not recognized -@@ -11224,7 +11237,7 @@ - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext < conftest.$ac_ext <&5) -+ (eval echo "\"\$as_me:13676: $lt_compile\"" >&5) - (eval "$lt_compile" 2>conftest.err) - ac_status=$? - cat conftest.err >&5 -- echo "$as_me:13667: \$? = $ac_status" >&5 -+ echo "$as_me:13680: \$? = $ac_status" >&5 - if (exit $ac_status) && test -s "$ac_outfile"; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings other than the usual output. -@@ -13764,11 +13777,11 @@ - -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ - -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ - -e 's:$: $lt_compiler_flag:'` -- (eval echo "\"\$as_me:13767: $lt_compile\"" >&5) -+ (eval echo "\"\$as_me:13780: $lt_compile\"" >&5) - (eval "$lt_compile" 2>out/conftest.err) - ac_status=$? - cat out/conftest.err >&5 -- echo "$as_me:13771: \$? = $ac_status" >&5 -+ echo "$as_me:13784: \$? = $ac_status" >&5 - if (exit $ac_status) && test -s out/conftest2.$ac_objext - then - # The compiler can only warn and ignore the option if not recognized -@@ -15325,11 +15338,11 @@ - -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ - -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ - -e 's:$: $lt_compiler_flag:'` -- (eval echo "\"\$as_me:15328: $lt_compile\"" >&5) -+ (eval echo "\"\$as_me:15341: $lt_compile\"" >&5) - (eval "$lt_compile" 2>conftest.err) - ac_status=$? - cat conftest.err >&5 -- echo "$as_me:15332: \$? = $ac_status" >&5 -+ echo "$as_me:15345: \$? = $ac_status" >&5 - if (exit $ac_status) && test -s "$ac_outfile"; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings other than the usual output. -@@ -15429,11 +15442,11 @@ - -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ - -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ - -e 's:$: $lt_compiler_flag:'` -- (eval echo "\"\$as_me:15432: $lt_compile\"" >&5) -+ (eval echo "\"\$as_me:15445: $lt_compile\"" >&5) - (eval "$lt_compile" 2>out/conftest.err) - ac_status=$? - cat out/conftest.err >&5 -- echo "$as_me:15436: \$? = $ac_status" >&5 -+ echo "$as_me:15449: \$? = $ac_status" >&5 - if (exit $ac_status) && test -s out/conftest2.$ac_objext - then - # The compiler can only warn and ignore the option if not recognized -@@ -17616,11 +17629,11 @@ - -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ - -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ - -e 's:$: $lt_compiler_flag:'` -- (eval echo "\"\$as_me:17619: $lt_compile\"" >&5) -+ (eval echo "\"\$as_me:17632: $lt_compile\"" >&5) - (eval "$lt_compile" 2>conftest.err) - ac_status=$? - cat conftest.err >&5 -- echo "$as_me:17623: \$? = $ac_status" >&5 -+ echo "$as_me:17636: \$? = $ac_status" >&5 - if (exit $ac_status) && test -s "$ac_outfile"; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings other than the usual output. -@@ -17884,11 +17897,11 @@ - -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ - -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ - -e 's:$: $lt_compiler_flag:'` -- (eval echo "\"\$as_me:17887: $lt_compile\"" >&5) -+ (eval echo "\"\$as_me:17900: $lt_compile\"" >&5) - (eval "$lt_compile" 2>conftest.err) - ac_status=$? - cat conftest.err >&5 -- echo "$as_me:17891: \$? = $ac_status" >&5 -+ echo "$as_me:17904: \$? = $ac_status" >&5 - if (exit $ac_status) && test -s "$ac_outfile"; then - # The compiler can only warn and ignore the option if not recognized - # So say no if there are warnings other than the usual output. -@@ -17988,11 +18001,11 @@ - -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ - -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ - -e 's:$: $lt_compiler_flag:'` -- (eval echo "\"\$as_me:17991: $lt_compile\"" >&5) -+ (eval echo "\"\$as_me:18004: $lt_compile\"" >&5) - (eval "$lt_compile" 2>out/conftest.err) - ac_status=$? - cat out/conftest.err >&5 -- echo "$as_me:17995: \$? = $ac_status" >&5 -+ echo "$as_me:18008: \$? = $ac_status" >&5 - if (exit $ac_status) && test -s out/conftest2.$ac_objext - then - # The compiler can only warn and ignore the option if not recognized -@@ -20960,16 +20973,9 @@ - found_so= - found_a= - if test $use_additional = yes; then -- if test -n "$shlibext" \ -- && { test -f "$additional_libdir/lib$name.$shlibext" \ -- || { test "$shlibext" = dll \ -- && test -f "$additional_libdir/lib$name.dll.a"; }; }; then -+ if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then - found_dir="$additional_libdir" -- if test -f "$additional_libdir/lib$name.$shlibext"; then -- found_so="$additional_libdir/lib$name.$shlibext" -- else -- found_so="$additional_libdir/lib$name.dll.a" -- fi -+ found_so="$additional_libdir/lib$name.$shlibext" - if test -f "$additional_libdir/lib$name.la"; then - found_la="$additional_libdir/lib$name.la" - fi -@@ -20997,16 +21003,9 @@ - case "$x" in - -L*) - dir=`echo "X$x" | sed -e 's/^X-L//'` -- if test -n "$shlibext" \ -- && { test -f "$dir/lib$name.$shlibext" \ -- || { test "$shlibext" = dll \ -- && test -f "$dir/lib$name.dll.a"; }; }; then -+ if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then - found_dir="$dir" -- if test -f "$dir/lib$name.$shlibext"; then -- found_so="$dir/lib$name.$shlibext" -- else -- found_so="$dir/lib$name.dll.a" -- fi -+ found_so="$dir/lib$name.$shlibext" - if test -f "$dir/lib$name.la"; then - found_la="$dir/lib$name.la" - fi -@@ -21927,13 +21926,6 @@ - - - -- -- -- -- -- -- -- - { echo "$as_me:$LINENO: checking for CFPreferencesCopyAppValue" >&5 - echo $ECHO_N "checking for CFPreferencesCopyAppValue... $ECHO_C" >&6; } - if test "${gt_cv_func_CFPreferencesCopyAppValue+set}" = set; then -@@ -22070,37 +22062,17 @@ - LTLIBINTL= - POSUB= - -- case " $gt_needs " in -- *" need-formatstring-macros "*) gt_api_version=3 ;; -- *" need-ngettext "*) gt_api_version=2 ;; -- *) gt_api_version=1 ;; -- esac -- gt_func_gnugettext_libc="gt_cv_func_gnugettext${gt_api_version}_libc" -- gt_func_gnugettext_libintl="gt_cv_func_gnugettext${gt_api_version}_libintl" -- - if test "$USE_NLS" = "yes"; then - gt_use_preinstalled_gnugettext=no - - -- if test $gt_api_version -ge 3; then -- gt_revision_test_code=' --#ifndef __GNU_GETTEXT_SUPPORTED_REVISION --#define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1) --#endif --typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1]; --' -- else -- gt_revision_test_code= -- fi -- if test $gt_api_version -ge 2; then -- gt_expression_test_code=' + * ngettext ("", "", 0)' -- else -- gt_expression_test_code= -- fi -+ -+ -+ - - { echo "$as_me:$LINENO: checking for GNU gettext in libc" >&5 - echo $ECHO_N "checking for GNU gettext in libc... $ECHO_C" >&6; } --if { as_var=$gt_func_gnugettext_libc; eval "test \"\${$as_var+set}\" = set"; }; then -+if test "${gt_cv_func_gnugettext1_libc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - cat >conftest.$ac_ext <<_ACEOF -@@ -22110,14 +22082,13 @@ - cat >>conftest.$ac_ext <<_ACEOF - /* end confdefs.h. */ - #include --$gt_revision_test_code - extern int _nl_msg_cat_cntr; - extern int *_nl_domain_bindings; - int - main () - { - bindtextdomain ("", ""); --return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_domain_bindings -+return * gettext ("") + _nl_msg_cat_cntr + *_nl_domain_bindings - ; - return 0; - } -@@ -22140,22 +22111,21 @@ - test ! -s conftest.err - } && test -s conftest$ac_exeext && - $as_test_x conftest$ac_exeext; then -- eval "$gt_func_gnugettext_libc=yes" -+ gt_cv_func_gnugettext1_libc=yes - else - echo "$as_me: failed program was:" >&5 - sed 's/^/| /' conftest.$ac_ext >&5 - -- eval "$gt_func_gnugettext_libc=no" -+ gt_cv_func_gnugettext1_libc=no - fi - - rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext - fi --ac_res=`eval echo '${'$gt_func_gnugettext_libc'}'` -- { echo "$as_me:$LINENO: result: $ac_res" >&5 --echo "${ECHO_T}$ac_res" >&6; } -+{ echo "$as_me:$LINENO: result: $gt_cv_func_gnugettext1_libc" >&5 -+echo "${ECHO_T}$gt_cv_func_gnugettext1_libc" >&6; } - -- if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" != "yes"; }; then -+ if test "$gt_cv_func_gnugettext1_libc" != "yes"; then - - - -@@ -22398,16 +22368,9 @@ - found_so= - found_a= - if test $use_additional = yes; then -- if test -n "$shlibext" \ -- && { test -f "$additional_libdir/lib$name.$shlibext" \ -- || { test "$shlibext" = dll \ -- && test -f "$additional_libdir/lib$name.dll.a"; }; }; then -+ if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then - found_dir="$additional_libdir" -- if test -f "$additional_libdir/lib$name.$shlibext"; then -- found_so="$additional_libdir/lib$name.$shlibext" -- else -- found_so="$additional_libdir/lib$name.dll.a" -- fi -+ found_so="$additional_libdir/lib$name.$shlibext" - if test -f "$additional_libdir/lib$name.la"; then - found_la="$additional_libdir/lib$name.la" - fi -@@ -22435,16 +22398,9 @@ - case "$x" in - -L*) - dir=`echo "X$x" | sed -e 's/^X-L//'` -- if test -n "$shlibext" \ -- && { test -f "$dir/lib$name.$shlibext" \ -- || { test "$shlibext" = dll \ -- && test -f "$dir/lib$name.dll.a"; }; }; then -+ if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then - found_dir="$dir" -- if test -f "$dir/lib$name.$shlibext"; then -- found_so="$dir/lib$name.$shlibext" -- else -- found_so="$dir/lib$name.dll.a" -- fi -+ found_so="$dir/lib$name.$shlibext" - if test -f "$dir/lib$name.la"; then - found_la="$dir/lib$name.la" - fi -@@ -22712,7 +22668,7 @@ - - { echo "$as_me:$LINENO: checking for GNU gettext in libintl" >&5 - echo $ECHO_N "checking for GNU gettext in libintl... $ECHO_C" >&6; } --if { as_var=$gt_func_gnugettext_libintl; eval "test \"\${$as_var+set}\" = set"; }; then -+if test "${gt_cv_func_gnugettext1_libintl+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - gt_save_CPPFLAGS="$CPPFLAGS" -@@ -22726,7 +22682,6 @@ - cat >>conftest.$ac_ext <<_ACEOF - /* end confdefs.h. */ - #include --$gt_revision_test_code - extern int _nl_msg_cat_cntr; - extern - #ifdef __cplusplus -@@ -22737,7 +22692,7 @@ - main () - { - bindtextdomain ("", ""); --return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("") -+return * gettext ("") + _nl_msg_cat_cntr + *_nl_expand_alias ("") - ; - return 0; - } -@@ -22760,17 +22715,17 @@ - test ! -s conftest.err - } && test -s conftest$ac_exeext && - $as_test_x conftest$ac_exeext; then -- eval "$gt_func_gnugettext_libintl=yes" -+ gt_cv_func_gnugettext1_libintl=yes - else - echo "$as_me: failed program was:" >&5 - sed 's/^/| /' conftest.$ac_ext >&5 - -- eval "$gt_func_gnugettext_libintl=no" -+ gt_cv_func_gnugettext1_libintl=no - fi - - rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext -- if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" != yes; } && test -n "$LIBICONV"; then -+ if test "$gt_cv_func_gnugettext1_libintl" != yes && test -n "$LIBICONV"; then - LIBS="$LIBS $LIBICONV" - cat >conftest.$ac_ext <<_ACEOF - /* confdefs.h. */ -@@ -22779,7 +22734,6 @@ - cat >>conftest.$ac_ext <<_ACEOF - /* end confdefs.h. */ - #include --$gt_revision_test_code - extern int _nl_msg_cat_cntr; - extern - #ifdef __cplusplus -@@ -22790,7 +22744,7 @@ - main () - { - bindtextdomain ("", ""); --return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("") -+return * gettext ("") + _nl_msg_cat_cntr + *_nl_expand_alias ("") - ; - return 0; - } -@@ -22815,7 +22769,7 @@ - $as_test_x conftest$ac_exeext; then - LIBINTL="$LIBINTL $LIBICONV" - LTLIBINTL="$LTLIBINTL $LTLIBICONV" -- eval "$gt_func_gnugettext_libintl=yes" -+ gt_cv_func_gnugettext1_libintl=yes - - else - echo "$as_me: failed program was:" >&5 -@@ -22830,13 +22784,12 @@ - CPPFLAGS="$gt_save_CPPFLAGS" - LIBS="$gt_save_LIBS" - fi --ac_res=`eval echo '${'$gt_func_gnugettext_libintl'}'` -- { echo "$as_me:$LINENO: result: $ac_res" >&5 --echo "${ECHO_T}$ac_res" >&6; } -+{ echo "$as_me:$LINENO: result: $gt_cv_func_gnugettext1_libintl" >&5 -+echo "${ECHO_T}$gt_cv_func_gnugettext1_libintl" >&6; } - fi - -- if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" = "yes"; } \ -- || { { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; } \ -+ if test "$gt_cv_func_gnugettext1_libc" = "yes" \ -+ || { test "$gt_cv_func_gnugettext1_libintl" = "yes" \ - && test "$PACKAGE" != gettext-runtime \ - && test "$PACKAGE" != gettext-tools; }; then - gt_use_preinstalled_gnugettext=yes -@@ -22876,7 +22829,7 @@ - { echo "$as_me:$LINENO: checking where the gettext function comes from" >&5 - echo $ECHO_N "checking where the gettext function comes from... $ECHO_C" >&6; } - if test "$gt_use_preinstalled_gnugettext" = "yes"; then -- if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then -+ if test "$gt_cv_func_gnugettext1_libintl" = "yes"; then - gt_source="external libintl" - else - gt_source="libc" -@@ -22891,7 +22844,7 @@ - if test "$USE_NLS" = "yes"; then - - if test "$gt_use_preinstalled_gnugettext" = "yes"; then -- if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then -+ if test "$gt_cv_func_gnugettext1_libintl" = "yes"; then - { echo "$as_me:$LINENO: checking how to link with libintl" >&5 - echo $ECHO_N "checking how to link with libintl... $ECHO_C" >&6; } - { echo "$as_me:$LINENO: result: $LIBINTL" >&5 -@@ -26592,12 +26545,8 @@ - esac - done - -- -- --if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then -- if test -n "$ac_tool_prefix"; then -- # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. --set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 -+ # Extract the first word of "pkg-config", so it can be a program name with args. -+set dummy pkg-config; ac_word=$2 - { echo "$as_me:$LINENO: checking for $ac_word" >&5 - echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } - if test "${ac_cv_path_PKG_CONFIG+set}" = set; then -@@ -26623,6 +26572,7 @@ - done - IFS=$as_save_IFS - -+ test -z "$ac_cv_path_PKG_CONFIG" && ac_cv_path_PKG_CONFIG="no" - ;; - esac - fi -@@ -26636,88 +26586,19 @@ - fi - - --fi --if test -z "$ac_cv_path_PKG_CONFIG"; then -- ac_pt_PKG_CONFIG=$PKG_CONFIG -- # Extract the first word of "pkg-config", so it can be a program name with args. --set dummy pkg-config; ac_word=$2 --{ echo "$as_me:$LINENO: checking for $ac_word" >&5 --echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } --if test "${ac_cv_path_ac_pt_PKG_CONFIG+set}" = set; then -- echo $ECHO_N "(cached) $ECHO_C" >&6 --else -- case $ac_pt_PKG_CONFIG in -- [\\/]* | ?:[\\/]*) -- ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path. -- ;; -- *) -- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR --for as_dir in $PATH --do -- IFS=$as_save_IFS -- test -z "$as_dir" && as_dir=. -- for ac_exec_ext in '' $ac_executable_extensions; do -- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then -- ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" -- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -- break 2 -- fi --done --done --IFS=$as_save_IFS -- -- ;; --esac --fi --ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG --if test -n "$ac_pt_PKG_CONFIG"; then -- { echo "$as_me:$LINENO: result: $ac_pt_PKG_CONFIG" >&5 --echo "${ECHO_T}$ac_pt_PKG_CONFIG" >&6; } --else -- { echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6; } --fi -- -- if test "x$ac_pt_PKG_CONFIG" = x; then -- PKG_CONFIG="" -- else -- case $cross_compiling:$ac_tool_warned in --yes:) --{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools --whose name does not start with the host triplet. If you think this --configuration is useful to you, please write to autoconf@gnu.org." >&5 --echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools --whose name does not start with the host triplet. If you think this --configuration is useful to you, please write to autoconf@gnu.org." >&2;} --ac_tool_warned=yes ;; --esac -- PKG_CONFIG=$ac_pt_PKG_CONFIG -- fi --else -- PKG_CONFIG="$ac_cv_path_PKG_CONFIG" --fi -- --fi --if test -n "$PKG_CONFIG"; then -- _pkg_min_version=0.7 -- { echo "$as_me:$LINENO: checking pkg-config is at least version $_pkg_min_version" >&5 --echo $ECHO_N "checking pkg-config is at least version $_pkg_min_version... $ECHO_C" >&6; } -- if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then -- { echo "$as_me:$LINENO: result: yes" >&5 --echo "${ECHO_T}yes" >&6; } -- else -- { echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6; } -- PKG_CONFIG="" -- fi -- --fi - - no_glib="" - -- if test "x$PKG_CONFIG" = x ; then -+ if test x$PKG_CONFIG != xno ; then -+ if $PKG_CONFIG --atleast-pkgconfig-version 0.7 ; then -+ : -+ else -+ echo *** pkg-config too old; version 0.7 or better required. -+ no_glib=yes -+ PKG_CONFIG=no -+ fi -+ else - no_glib=yes -- PKG_CONFIG=no - fi - - min_glib_version=2.6.0 -@@ -27223,9 +27104,7 @@ - # Put the nasty error message in config.log where it belongs - echo "$OPENSSL_PKG_ERRORS" >&5 - -- { echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6; } -- ac_cv_enable_openssl=no -+ ac_cv_enable_openssl=no - elif test $pkg_failed = untried; then - ac_cv_enable_openssl=no - else -@@ -27793,6 +27672,11 @@ - - - -+OWL_LIBS="-lowl" -+OLS_CFLAGS="" -+ -+ -+ - # Check whether --enable-aspell was given. - if test "${enable_aspell+set}" = set; then - enableval=$enable_aspell; ac_cv_enable_aspell=$enableval -@@ -28242,9 +28126,7 @@ - # Put the nasty error message in config.log where it belongs - echo "$MAEMO_PKG_ERRORS" >&5 - -- { echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6; } -- ac_cv_enable_maemo=no -+ ac_cv_enable_maemo=no - elif test $pkg_failed = untried; then - ac_cv_enable_maemo=no - else -@@ -29796,8 +29678,6 @@ - # Put the nasty error message in config.log where it belongs - echo "$STARTUP_NOTIFICATION_PKG_ERRORS" >&5 - -- { echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6; } - - echo "Building without libstartup-notification" - enable_startup_notification=no -@@ -31300,9 +31180,7 @@ - # Put the nasty error message in config.log where it belongs - echo "$CLAMAV_PKG_ERRORS" >&5 - -- { echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6; } -- ac_cv_enable_clamav_plugin=no -+ ac_cv_enable_clamav_plugin=no - elif test $pkg_failed = untried; then - ac_cv_enable_clamav_plugin=no - else -@@ -31684,9 +31562,7 @@ - # Put the nasty error message in config.log where it belongs - echo "$GNOMEPRINT_PKG_ERRORS" >&5 - -- { echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6; } -- ac_cv_enable_gnomeprint=no -+ ac_cv_enable_gnomeprint=no - elif test $pkg_failed = untried; then - ac_cv_enable_gnomeprint=no - else -@@ -31794,9 +31670,7 @@ - # Put the nasty error message in config.log where it belongs - echo "$VALGRIND_PKG_ERRORS" >&5 - -- { echo "$as_me:$LINENO: result: no" >&5 --echo "${ECHO_T}no" >&6; } -- ac_cv_enable_valgrind=no -+ ac_cv_enable_valgrind=no - elif test $pkg_failed = untried; then - ac_cv_enable_valgrind=no - else -@@ -32884,6 +32758,8 @@ - PASSCRYPT_KEY!$PASSCRYPT_KEY$ac_delim - GTK_CFLAGS!$GTK_CFLAGS$ac_delim - GTK_LIBS!$GTK_LIBS$ac_delim -+OWL_LIBS!$OWL_LIBS$ac_delim -+OWL_CFLAGS!$OWL_CFLAGS$ac_delim - ASPELL!$ASPELL$ac_delim - ASPELL_CFLAGS!$ASPELL_CFLAGS$ac_delim - ASPELL_LIBS!$ASPELL_LIBS$ac_delim -@@ -32904,8 +32780,6 @@ - BUILD_SPAMASSASSIN_PLUGIN_FALSE!$BUILD_SPAMASSASSIN_PLUGIN_FALSE$ac_delim - BUILD_BOGOFILTER_PLUGIN_TRUE!$BUILD_BOGOFILTER_PLUGIN_TRUE$ac_delim - BUILD_BOGOFILTER_PLUGIN_FALSE!$BUILD_BOGOFILTER_PLUGIN_FALSE$ac_delim --GPGME_CONFIG!$GPGME_CONFIG$ac_delim --GPGME_CFLAGS!$GPGME_CFLAGS$ac_delim - _ACEOF - - if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then -@@ -32947,6 +32821,8 @@ - ac_delim='%!_!# ' - for ac_last_try in false false false false false :; do - cat >conf$$subs.sed <<_ACEOF -+GPGME_CONFIG!$GPGME_CONFIG$ac_delim -+GPGME_CFLAGS!$GPGME_CFLAGS$ac_delim - GPGME_LIBS!$GPGME_LIBS$ac_delim - BUILD_PGPCORE_PLUGIN_TRUE!$BUILD_PGPCORE_PLUGIN_TRUE$ac_delim - BUILD_PGPCORE_PLUGIN_FALSE!$BUILD_PGPCORE_PLUGIN_FALSE$ac_delim -@@ -32979,7 +32855,7 @@ - LTLIBOBJS!$LTLIBOBJS$ac_delim - _ACEOF - -- if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 30; then -+ if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 32; then - break - elif $ac_last_try; then - { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 -Index: claws-mail-2.9.1/src/Makefile.in -=================================================================== ---- claws-mail-2.9.1.orig/src/Makefile.in 2007-04-25 10:18:13.000000000 +0100 -+++ claws-mail-2.9.1/src/Makefile.in 2007-04-25 10:30:23.000000000 +0100 -@@ -45,8 +45,7 @@ - $(top_srcdir)/m4/aspell.m4 $(top_srcdir)/m4/check-type.m4 \ - $(top_srcdir)/m4/gnupg-check-typedef.m4 \ - $(top_srcdir)/m4/gnupg.m4 $(top_srcdir)/m4/gpgme.m4 \ -- $(top_srcdir)/m4/isc-posix.m4 $(top_srcdir)/m4/spamassassin.m4 \ -- $(top_srcdir)/configure.ac -+ $(top_srcdir)/m4/spamassassin.m4 $(top_srcdir)/configure.ac - am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) - mkinstalldirs = $(SHELL) $(top_srcdir)/config/mkinstalldirs -@@ -122,7 +121,7 @@ - $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_2) \ - $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_2) \ - $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_2) \ -- $(am__DEPENDENCIES_2) -+ $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_2) - claws_mail_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ - $(claws_mail_LDFLAGS) $(LDFLAGS) -o $@ -@@ -272,6 +271,8 @@ - OBJEXT = @OBJEXT@ - OPENSSL_CFLAGS = @OPENSSL_CFLAGS@ - OPENSSL_LIBS = @OPENSSL_LIBS@ -+OWL_CFLAGS = @OWL_CFLAGS@ -+OWL_LIBS = @OWL_LIBS@ - PACKAGE = @PACKAGE@ - PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ - PACKAGE_NAME = @PACKAGE_NAME@ -@@ -815,7 +816,8 @@ - $(LIBICONV) \ - $(STARTUP_NOTIFICATION_LIBS) \ - $(LIBETPAN_LIBS) \ -- $(MAEMO_LIBS) -+ $(MAEMO_LIBS) \ -+ $(OWL_LIBS) - - AM_CPPFLAGS = \ - -DG_LOG_DOMAIN=\"Claws-Mail\" \ -@@ -833,7 +835,7 @@ - $(LIBETPAN_CPPFLAGS) \ - $(STARTUP_NOTIFICATION_CFLAGS) \ - $(MAEMO_CFLAGS) \ -- -Wno-unused-function -+ $(OWL_CFLAGS) - - - #no-unused-function is there because of bison stuff -@@ -1406,6 +1408,7 @@ - install-exec-hook: - @rm -f $(DESTDIR)$(bindir)/sylpheed-claws - @ln -s claws-mail $(DESTDIR)$(bindir)/sylpheed-claws -+ -Wno-unused-function - - @CYGWIN_TRUE@claws-mail$(EXEEXT): $(claws_mail_OBJECTS) $(claws_mail_DEPENDENCIES) - @CYGWIN_TRUE@ @rm -f claws-mail$(EXEEXT) -Index: claws-mail-2.9.1/autogen.sh -=================================================================== ---- claws-mail-2.9.1.orig/autogen.sh 2007-04-25 10:18:13.000000000 +0100 -+++ claws-mail-2.9.1/autogen.sh 2007-04-25 10:30:23.000000000 +0100 -@@ -74,5 +74,4 @@ - && libtoolize --force --copy \ - && autoheader \ - && automake --add-missing --foreign --copy \ -- && autoconf \ -- && ./configure --enable-maintainer-mode $@ -+ && autoconf -Index: claws-mail-2.9.1/src/compose.c -=================================================================== ---- claws-mail-2.9.1.orig/src/compose.c 2007-04-25 10:18:13.000000000 +0100 -+++ claws-mail-2.9.1/src/compose.c 2007-04-25 10:30:23.000000000 +0100 -@@ -6192,7 +6192,6 @@ - n_menu_entries = sizeof(compose_entries) / sizeof(compose_entries[0]); - menubar = menubar_create(window, compose_entries, - n_menu_entries, "", compose); -- gtk_box_pack_start(GTK_BOX(vbox), menubar, FALSE, TRUE, 0); - - handlebox = gtk_hbox_new(FALSE, 0); - gtk_box_pack_start(GTK_BOX(vbox), handlebox, FALSE, FALSE, 0); diff --git a/meta/packages/claws-mail/files/streamline-ui.patch b/meta/packages/claws-mail/files/streamline-ui.patch deleted file mode 100644 index 29a52ff795..0000000000 --- a/meta/packages/claws-mail/files/streamline-ui.patch +++ /dev/null @@ -1,1008 +0,0 @@ -Index: claws-mail-2.9.1/src/mainwindow.c -=================================================================== ---- claws-mail-2.9.1.orig/src/mainwindow.c 2007-04-25 07:40:10.000000000 +0100 -+++ claws-mail-2.9.1/src/mainwindow.c 2007-04-25 10:26:40.000000000 +0100 -@@ -189,9 +189,6 @@ - static void toggle_statusbar_cb (MainWindow *mainwin, - guint action, - GtkWidget *widget); --static void set_layout_cb (MainWindow *mainwin, -- guint action, -- GtkWidget *widget); - - static void addressbook_open_cb (MainWindow *mainwin, - guint action, -@@ -538,94 +535,24 @@ - {N_("/_Edit/_Search folder..."), "F", search_cb, 1, NULL}, - {N_("/_Edit/_Quick search"), "slash", mainwindow_quicksearch, 0, NULL}, - {N_("/_View"), NULL, NULL, 0, ""}, -- {N_("/_View/Show or hi_de"), NULL, NULL, 0, ""}, -- {N_("/_View/Show or hi_de/_Message view"), -- "V", toggle_message_cb, 0, ""}, -- {N_("/_View/Show or hi_de/_Toolbar"), -- NULL, NULL, 0, ""}, -- {N_("/_View/Show or hi_de/_Toolbar/Text _below icons"), -- NULL, toggle_toolbar_cb, TOOLBAR_BOTH, ""}, -- {N_("/_View/Show or hi_de/_Toolbar/Text be_side icons"), -- NULL, toggle_toolbar_cb, TOOLBAR_BOTH_HORIZ, "/View/Show or hide/Toolbar/Text below icons"}, -- {N_("/_View/Show or hi_de/_Toolbar/_Icons only"), -- NULL, toggle_toolbar_cb, TOOLBAR_ICON, "/View/Show or hide/Toolbar/Text below icons"}, -- {N_("/_View/Show or hi_de/_Toolbar/_Text only"), -- NULL, toggle_toolbar_cb, TOOLBAR_TEXT, "/View/Show or hide/Toolbar/Text below icons"}, -- {N_("/_View/Show or hi_de/_Toolbar/_Hide"), -- NULL, toggle_toolbar_cb, TOOLBAR_NONE, "/View/Show or hide/Toolbar/Text below icons"}, -- {N_("/_View/Show or hi_de/Status _bar"), -- NULL, toggle_statusbar_cb, 0, ""}, - {N_("/_View/Set displayed _columns"), NULL, NULL, 0, ""}, - {N_("/_View/Set displayed _columns/in _Folder list..."), NULL, set_folder_display_item_cb, 0, NULL}, - {N_("/_View/Set displayed _columns/in _Message list..."),NULL, set_summary_display_item_cb, 0, NULL}, - - {N_("/_View/---"), NULL, NULL, 0, ""}, -- {N_("/_View/La_yout"), NULL, NULL, 0, ""}, -- {N_("/_View/Layout/_Standard"), NULL, set_layout_cb, NORMAL_LAYOUT, ""}, -- {N_("/_View/Layout/_Three columns"), NULL, set_layout_cb, VERTICAL_LAYOUT, "/View/Layout/Standard"}, -- {N_("/_View/Layout/_Wide message"), NULL, set_layout_cb, WIDE_LAYOUT, "/View/Layout/Standard"}, -- {N_("/_View/Layout/W_ide message list"),NULL, set_layout_cb, WIDE_MSGLIST_LAYOUT, "/View/Layout/Standard"}, -- {N_("/_View/Layout/S_mall screen"), NULL, set_layout_cb, SMALL_LAYOUT, "/View/Layout/Standard"}, -- {N_("/_View/---"), NULL, NULL, 0, ""}, - {N_("/_View/_Sort"), NULL, NULL, 0, ""}, -- {N_("/_View/_Sort/by _number"), NULL, sort_summary_cb, SORT_BY_NUMBER, ""}, -- {N_("/_View/_Sort/by S_ize"), NULL, sort_summary_cb, SORT_BY_SIZE, "/View/Sort/by number"}, -- {N_("/_View/_Sort/by _Date"), NULL, sort_summary_cb, SORT_BY_DATE, "/View/Sort/by number"}, -- {N_("/_View/_Sort/by _From"), NULL, sort_summary_cb, SORT_BY_FROM, "/View/Sort/by number"}, -- {N_("/_View/_Sort/by _To"), NULL, sort_summary_cb, SORT_BY_TO, "/View/Sort/by number"}, -- {N_("/_View/_Sort/by S_ubject"), NULL, sort_summary_cb, SORT_BY_SUBJECT, "/View/Sort/by number"}, -- {N_("/_View/_Sort/by _color label"), -- NULL, sort_summary_cb, SORT_BY_LABEL, "/View/Sort/by number"}, -- {N_("/_View/_Sort/by _mark"), NULL, sort_summary_cb, SORT_BY_MARK, "/View/Sort/by number"}, -- {N_("/_View/_Sort/by _status"), NULL, sort_summary_cb, SORT_BY_STATUS, "/View/Sort/by number"}, -- {N_("/_View/_Sort/by a_ttachment"), -- NULL, sort_summary_cb, SORT_BY_MIME, "/View/Sort/by number"}, -- {N_("/_View/_Sort/by score"), NULL, sort_summary_cb, SORT_BY_SCORE, "/View/Sort/by number"}, -- {N_("/_View/_Sort/by locked"), NULL, sort_summary_cb, SORT_BY_LOCKED, "/View/Sort/by number"}, -- {N_("/_View/_Sort/D_on't sort"), NULL, sort_summary_cb, SORT_BY_NONE, "/View/Sort/by number"}, -+ {N_("/_View/_Sort/by _Date"), NULL, sort_summary_cb, SORT_BY_DATE, ""}, -+ {N_("/_View/_Sort/by _From"), NULL, sort_summary_cb, SORT_BY_FROM, "/View/Sort/by Date"}, -+ {N_("/_View/_Sort/by _To"), NULL, sort_summary_cb, SORT_BY_TO, "/View/Sort/by Date"}, -+ {N_("/_View/_Sort/by S_ubject"), NULL, sort_summary_cb, SORT_BY_SUBJECT, "/View/Sort/by Date"}, - {N_("/_View/_Sort/---"), NULL, NULL, 0, ""}, - {N_("/_View/_Sort/Ascending"), NULL, sort_summary_type_cb, SORT_ASCENDING, ""}, - {N_("/_View/_Sort/Descending"), NULL, sort_summary_type_cb, SORT_DESCENDING, "/View/Sort/Ascending"}, -- {N_("/_View/_Sort/---"), NULL, NULL, 0, ""}, -- {N_("/_View/_Sort/_Attract by subject"), -- NULL, attract_by_subject_cb, 0, NULL}, - {N_("/_View/Th_read view"), "T", thread_cb, 0, ""}, - {N_("/_View/E_xpand all threads"), NULL, expand_threads_cb, 0, NULL}, - {N_("/_View/Co_llapse all threads"), NULL, collapse_threads_cb, 0, NULL}, - {N_("/_View/_Hide read messages"), NULL, hide_read_messages, 0, ""}, - -- {N_("/_View/---"), NULL, NULL, 0, ""}, -- {N_("/_View/_Go to"), NULL, NULL, 0, ""}, -- {N_("/_View/_Go to/_Previous message"), "P", prev_cb, 0, NULL}, -- {N_("/_View/_Go to/_Next message"), "N", next_cb, 0, NULL}, -- {N_("/_View/_Go to/---"), NULL, NULL, 0, ""}, -- {N_("/_View/_Go to/P_revious unread message"), -- "P", prev_unread_cb, 0, NULL}, -- {N_("/_View/_Go to/N_ext unread message"), -- "N", next_unread_cb, 0, NULL}, -- {N_("/_View/_Go to/---"), NULL, NULL, 0, ""}, -- {N_("/_View/_Go to/Previous ne_w message"), NULL, prev_new_cb, 0, NULL}, -- {N_("/_View/_Go to/Ne_xt new message"), NULL, next_new_cb, 0, NULL}, -- {N_("/_View/_Go to/---"), NULL, NULL, 0, ""}, -- {N_("/_View/_Go to/Previous _marked message"), -- NULL, prev_marked_cb, 0, NULL}, -- {N_("/_View/_Go to/Next m_arked message"), -- NULL, next_marked_cb, 0, NULL}, -- {N_("/_View/_Go to/---"), NULL, NULL, 0, ""}, -- {N_("/_View/_Go to/Previous _labeled message"), -- NULL, prev_labeled_cb, 0, NULL}, -- {N_("/_View/_Go to/Next la_beled message"), -- NULL, next_labeled_cb, 0, NULL}, -- {N_("/_View/_Go to/---"), NULL, NULL, 0, ""}, -- {N_("/_View/_Go to/Last read message"), -- NULL, last_read_cb, 0, NULL}, -- {N_("/_View/_Go to/Parent message"), -- "Up", parent_cb, 0, NULL}, -- {N_("/_View/_Go to/---"), NULL, NULL, 0, ""}, -- {N_("/_View/_Go to/Next unread _folder"), "G", goto_unread_folder_cb, 0, NULL}, -- {N_("/_View/_Go to/_Other folder..."), "G", goto_folder_cb, 0, NULL}, -- {N_("/_View/---"), NULL, NULL, 0, ""}, -- - #define ENC_SEPARATOR \ - {N_("/_View/Character _encoding/---"), NULL, NULL, 0, ""} - #define ENC_ACTION(action) \ -@@ -742,7 +669,6 @@ - #undef DEC_ACTION - - {N_("/_View/---"), NULL, NULL, 0, ""}, -- {N_("/_View/Open in new _window"), "N", open_msg_cb, 0, NULL}, - {N_("/_View/Mess_age source"), "U", view_source_cb, 0, NULL}, - {N_("/_View/All headers"), "H", show_all_header_cb, 0, ""}, - {N_("/_View/Quotes"), NULL, NULL, 0, ""}, -@@ -1137,23 +1063,14 @@ - gint i; - guint n_menu_entries; - -- static GdkGeometry geometry; -- - debug_print("Creating main window...\n"); - mainwin = g_new0(MainWindow, 1); - - /* main window */ - window = gtkut_window_new(GTK_WINDOW_TOPLEVEL, "mainwindow"); -- gtk_window_set_title(GTK_WINDOW(window), PROG_VERSION); -+ gtk_window_set_title(GTK_WINDOW(window), _("Mail")); - gtk_window_set_resizable(GTK_WINDOW(window), TRUE); - -- if (!geometry.min_height) { -- geometry.min_width = 320; -- geometry.min_height = 200; -- } -- gtk_window_set_geometry_hints(GTK_WINDOW(window), NULL, &geometry, -- GDK_HINT_MIN_SIZE); -- - g_signal_connect(G_OBJECT(window), "delete_event", - G_CALLBACK(main_window_close_cb), mainwin); - MANAGE_WINDOW_SIGNALS_CONNECT(window); -@@ -1184,21 +1101,9 @@ - /* gtk_widget_show(gtk_item_factory_get_item(ifactory,"/Message/Mailing-List")); - main_create_mailing_list_menu (mainwin, NULL); */ - -- menu_set_sensitive(ifactory, "/Help/Manual", manual_available(MANUAL_MANUAL_LOCAL)); -- -- if (prefs_common.toolbar_detachable) { -- handlebox = gtk_handle_box_new(); -- gtk_widget_show(handlebox); -- gtk_box_pack_start(GTK_BOX(vbox), handlebox, FALSE, FALSE, 0); -- g_signal_connect(G_OBJECT(handlebox), "child_attached", -- G_CALLBACK(toolbar_child_attached), mainwin); -- g_signal_connect(G_OBJECT(handlebox), "child_detached", -- G_CALLBACK(toolbar_child_detached), mainwin); -- } else { -- handlebox = gtk_hbox_new(FALSE, 0); -- gtk_widget_show(handlebox); -- gtk_box_pack_start(GTK_BOX(vbox), handlebox, FALSE, FALSE, 0); -- } -+ handlebox = gtk_hbox_new(FALSE, 0); -+ gtk_widget_show(handlebox); -+ gtk_box_pack_start(GTK_BOX(vbox), handlebox, FALSE, FALSE, 0); - /* link window to mainwin->window to avoid gdk warnings */ - mainwin->window = window; - -@@ -1405,36 +1310,6 @@ - (ifactory, "/View/Character encoding/Auto detect"); - gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), TRUE); - -- switch (prefs_common.toolbar_style) { -- case TOOLBAR_NONE: -- menuitem = gtk_item_factory_get_item -- (ifactory, "/View/Show or hide/Toolbar/Hide"); -- break; -- case TOOLBAR_ICON: -- menuitem = gtk_item_factory_get_item -- (ifactory, "/View/Show or hide/Toolbar/Icons only"); -- break; -- case TOOLBAR_TEXT: -- menuitem = gtk_item_factory_get_item -- (ifactory, "/View/Show or hide/Toolbar/Text only"); -- break; -- case TOOLBAR_BOTH: -- menuitem = gtk_item_factory_get_item -- (ifactory, "/View/Show or hide/Toolbar/Text below icons"); -- break; -- case TOOLBAR_BOTH_HORIZ: -- menuitem = gtk_item_factory_get_item -- (ifactory, -- "/View/Show or hide/Toolbar/Text beside icons"); -- } -- gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), TRUE); -- -- gtk_widget_hide(mainwin->hbox_stat); -- menuitem = gtk_item_factory_get_item -- (ifactory, "/View/Show or hide/Status bar"); -- gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), -- prefs_common.show_statusbar); -- - /* set account selection menu */ - ac_menu = gtk_item_factory_get_widget - (ifactory, "/Configuration/Change current account"); -@@ -2284,16 +2159,6 @@ - {"/View/Expand all threads" , M_MSG_EXIST}, - {"/View/Collapse all threads" , M_MSG_EXIST}, - {"/View/Hide read messages" , M_HIDE_READ_MSG}, -- {"/View/Go to/Previous message" , M_MSG_EXIST}, -- {"/View/Go to/Next message" , M_MSG_EXIST}, -- {"/View/Go to/Previous unread message" , M_MSG_EXIST}, -- {"/View/Go to/Previous new message" , M_MSG_EXIST}, -- {"/View/Go to/Previous marked message" , M_MSG_EXIST}, -- {"/View/Go to/Previous labeled message", M_MSG_EXIST}, -- {"/View/Go to/Next labeled message", M_MSG_EXIST}, -- {"/View/Go to/Last read message" , M_SINGLE_TARGET_EXIST}, -- {"/View/Go to/Parent message" , M_SINGLE_TARGET_EXIST}, -- {"/View/Open in new window" , M_SINGLE_TARGET_EXIST}, - {"/View/Message source" , M_SINGLE_TARGET_EXIST}, - {"/View/All headers" , M_SINGLE_TARGET_EXIST}, - {"/View/Quotes" , M_SINGLE_TARGET_EXIST}, -@@ -2379,40 +2244,20 @@ - gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), active); \ - } - -- SET_CHECK_MENU_ACTIVE("/View/Show or hide/Message view", -- messageview_is_visible(mainwin->messageview)); -- - summaryview = mainwin->summaryview; -- menu_path = "/View/Sort/Don't sort"; -+ menu_path = "/View/Sort/by Date"; - - switch (summaryview->sort_key) { -- case SORT_BY_NUMBER: -- menu_path = "/View/Sort/by number"; break; -- case SORT_BY_SIZE: -- menu_path = "/View/Sort/by Size"; break; -- case SORT_BY_DATE: -- menu_path = "/View/Sort/by Date"; break; - case SORT_BY_FROM: - menu_path = "/View/Sort/by From"; break; - case SORT_BY_TO: - menu_path = "/View/Sort/by To"; break; - case SORT_BY_SUBJECT: - menu_path = "/View/Sort/by Subject"; break; -- case SORT_BY_LABEL: -- menu_path = "/View/Sort/by color label"; break; -- case SORT_BY_MARK: -- menu_path = "/View/Sort/by mark"; break; -- case SORT_BY_STATUS: -- menu_path = "/View/Sort/by status"; break; -- case SORT_BY_MIME: -- menu_path = "/View/Sort/by attachment"; break; -- case SORT_BY_SCORE: -- menu_path = "/View/Sort/by score"; break; -- case SORT_BY_LOCKED: -- menu_path = "/View/Sort/by locked"; break; - case SORT_BY_NONE: -+ case SORT_BY_DATE: - default: -- menu_path = "/View/Sort/Don't sort"; break; -+ menu_path = "/View/Sort/by Date"; break; - } - SET_CHECK_MENU_ACTIVE(menu_path, TRUE); - -@@ -2735,8 +2580,6 @@ - gtk_widget_destroy(mainwin->hpaned); - } - -- menu_set_sensitive(ifactory, "/View/Show or hide/Message view", -- (layout_mode != WIDE_MSGLIST_LAYOUT && layout_mode != SMALL_LAYOUT)); - switch (layout_mode) { - case VERTICAL_LAYOUT: - case NORMAL_LAYOUT: -@@ -2877,37 +2720,6 @@ - - prefs_common.layout_mode = layout_mode; - -- menuitem = gtk_item_factory_get_item -- (ifactory, "/View/Show or hide/Message view"); -- gtk_check_menu_item_set_active -- (GTK_CHECK_MENU_ITEM(menuitem), -- messageview_is_visible(mainwin->messageview)); -- --#define SET_CHECK_MENU_ACTIVE(path, active) \ --{ \ -- menuitem = gtk_item_factory_get_widget(ifactory, path); \ -- gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), active); \ --} -- -- switch (prefs_common.layout_mode) { -- case NORMAL_LAYOUT: -- SET_CHECK_MENU_ACTIVE("/View/Layout/Standard", TRUE); -- break; -- case VERTICAL_LAYOUT: -- SET_CHECK_MENU_ACTIVE("/View/Layout/Three columns", TRUE); -- break; -- case WIDE_LAYOUT: -- SET_CHECK_MENU_ACTIVE("/View/Layout/Wide message", TRUE); -- break; -- case WIDE_MSGLIST_LAYOUT: -- SET_CHECK_MENU_ACTIVE("/View/Layout/Wide message list", TRUE); -- break; -- case SMALL_LAYOUT: -- SET_CHECK_MENU_ACTIVE("/View/Layout/Small screen", TRUE); -- break; -- } --#undef SET_CHECK_MENU_ACTIVE -- - if (folderwin) { - g_signal_connect - (G_OBJECT(folderwin), "size_allocate", -@@ -3116,12 +2928,6 @@ - summary_toggle_view(mainwin->summaryview); - } - --static void toggle_toolbar_cb(MainWindow *mainwin, guint action, -- GtkWidget *widget) --{ -- toolbar_toggle(action, mainwin); --} -- - static void main_window_reply_cb(MainWindow *mainwin, guint action, - GtkWidget *widget) - { -Index: claws-mail-2.9.1/src/prefs_common.c -=================================================================== ---- claws-mail-2.9.1.orig/src/prefs_common.c 2007-04-25 07:40:10.000000000 +0100 -+++ claws-mail-2.9.1/src/prefs_common.c 2007-04-25 07:42:17.000000000 +0100 -@@ -262,7 +262,7 @@ - {"default_reply_list", "TRUE", &prefs_common.default_reply_list, P_BOOL, - NULL, NULL, NULL}, - --#ifndef MAEMO -+#if 0 - {"show_ruler", "TRUE", &prefs_common.show_ruler, P_BOOL, - NULL, NULL, NULL}, - #else -@@ -300,7 +300,7 @@ - &prefs_common.normalfont_gtk1, P_STRING, NULL, NULL, NULL}, - - /* new fonts */ --#ifndef MAEMO -+#if 0 - {"widget_font_gtk2", NULL, - &SPECIFIC_PREFS.widgetfont, P_STRING, NULL, NULL, NULL}, - {"message_font_gtk2", "Monospace 9", -@@ -416,7 +416,7 @@ - - {"enable_thread", "TRUE", &prefs_common.enable_thread, P_BOOL, - NULL, NULL, NULL}, --#ifndef MAEMO -+#if 0 - {"toolbar_style", "3", &prefs_common.toolbar_style, P_ENUM, - NULL, NULL, NULL}, - #else -@@ -544,7 +544,7 @@ - {"folder_col_pos_total", "3", - &prefs_common.folder_col_pos[F_COL_TOTAL], P_INT, NULL, NULL, NULL}, - --#ifndef MAEMO -+#if 0 - {"folder_col_size_folder", "120", - &prefs_common.folder_col_size[F_COL_FOLDER], P_INT, NULL, NULL, NULL}, - {"folder_col_size_new", "32", -@@ -702,7 +702,7 @@ - &SPECIFIC_PREFS.mime_open_cmd, P_STRING, NULL, NULL, NULL}, - - /* Interface */ --#ifndef MAEMO -+#if 0 - {"layout_mode", "0", &prefs_common.layout_mode, P_INT, - NULL, NULL, NULL}, - #else -Index: claws-mail-2.9.1/src/toolbar.c -=================================================================== ---- claws-mail-2.9.1.orig/src/toolbar.c 2007-04-25 07:40:10.000000000 +0100 -+++ claws-mail-2.9.1/src/toolbar.c 2007-04-25 07:42:17.000000000 +0100 -@@ -841,26 +841,17 @@ - gtk_widget_hide(handlebox_wid); - break; - case TOOLBAR_ICON: -- gtk_toolbar_set_style(GTK_TOOLBAR(toolbar_wid), -- GTK_TOOLBAR_ICONS); -- break; - case TOOLBAR_TEXT: -- gtk_toolbar_set_style(GTK_TOOLBAR(toolbar_wid), -- GTK_TOOLBAR_TEXT); -- break; - case TOOLBAR_BOTH: -- gtk_toolbar_set_style(GTK_TOOLBAR(toolbar_wid), -- GTK_TOOLBAR_BOTH); -- break; - case TOOLBAR_BOTH_HORIZ: - gtk_toolbar_set_style(GTK_TOOLBAR(toolbar_wid), -- GTK_TOOLBAR_BOTH_HORIZ); -+ GTK_TOOLBAR_ICONS); - break; - default: - return; - } - -- prefs_common.toolbar_style = (ToolbarStyle)action; -+ prefs_common.toolbar_style = (ToolbarStyle)TOOLBAR_ICON; - gtk_widget_set_size_request(handlebox_wid, 1, -1); - - if (prefs_common.toolbar_style != TOOLBAR_NONE) { -@@ -1594,7 +1585,7 @@ - gtk_container_add(GTK_CONTAINER(container), toolbar); - gtk_container_set_border_width(GTK_CONTAINER(container), 2); - gtk_toolbar_set_orientation(GTK_TOOLBAR(toolbar), GTK_ORIENTATION_HORIZONTAL); -- gtk_toolbar_set_style(GTK_TOOLBAR(toolbar), GTK_TOOLBAR_BOTH); -+ gtk_toolbar_set_style(GTK_TOOLBAR(toolbar), GTK_TOOLBAR_ICONS); - - for (cur = toolbar_list; cur != NULL; cur = cur->next) { - -Index: claws-mail-2.9.1/src/gtk/prefswindow.c -=================================================================== ---- claws-mail-2.9.1.orig/src/gtk/prefswindow.c 2007-04-25 07:40:10.000000000 +0100 -+++ claws-mail-2.9.1/src/gtk/prefswindow.c 2007-04-25 10:30:15.000000000 +0100 -@@ -343,6 +343,10 @@ - gint x = gdk_screen_width(); - gint y = gdk_screen_height(); - static GdkGeometry geometry; -+ gint col_count = g_slist_length (prefs_pages); -+ -+ if (col_count > 1) -+ col_count = 2; - - prefswindow = g_new0(PrefsWindow, 1); - -@@ -360,39 +364,52 @@ - gtk_window_set_resizable (GTK_WINDOW(prefswindow->window), TRUE); - gtk_container_set_border_width(GTK_CONTAINER(prefswindow->window), 4); - -- prefswindow->table1 = gtk_table_new(2, 2, FALSE); -+ prefswindow->table1 = gtk_table_new(col_count, col_count, FALSE); - gtk_widget_show(prefswindow->table1); - gtk_container_add(GTK_CONTAINER(prefswindow->window), prefswindow->table1); - -- prefswindow->scrolledwindow1 = gtk_scrolled_window_new(NULL, NULL); -- gtk_widget_show(prefswindow->scrolledwindow1); -- gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(prefswindow->scrolledwindow1), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); -- gtk_table_attach(GTK_TABLE(prefswindow->table1), prefswindow->scrolledwindow1, 0, 1, 0, 1, GTK_FILL, GTK_FILL | GTK_EXPAND, 2, 2); -- -- prefswindow->tree_view = prefswindow_tree_view_create(prefswindow); -- gtk_widget_show(prefswindow->tree_view); -- gtk_container_add(GTK_CONTAINER(prefswindow->scrolledwindow1), -- prefswindow->tree_view); -- -- prefswindow->frame = gtk_frame_new(NULL); -- gtk_widget_show(prefswindow->frame); -- gtk_frame_set_shadow_type(GTK_FRAME(prefswindow->frame), GTK_SHADOW_IN); -- gtk_table_attach(GTK_TABLE(prefswindow->table1), prefswindow->frame, 1, 2, 0, 1, GTK_FILL | GTK_EXPAND, GTK_FILL | GTK_EXPAND, 2, 2); -- -- prefswindow->table2 = gtk_table_new(1, 2, FALSE); -- gtk_widget_show(prefswindow->table2); -- gtk_container_add(GTK_CONTAINER(prefswindow->frame), prefswindow->table2); -- -- prefswindow->labelframe = gtk_frame_new(NULL); -- gtk_widget_show(prefswindow->labelframe); -- gtk_frame_set_shadow_type(GTK_FRAME(prefswindow->labelframe), GTK_SHADOW_OUT); -- gtk_table_attach(GTK_TABLE(prefswindow->table2), prefswindow->labelframe, 0, 1, 0, 1, GTK_FILL | GTK_EXPAND, GTK_FILL, 1, 1); -- -- prefswindow->pagelabel = gtk_label_new(""); -- gtk_widget_show(prefswindow->pagelabel); -- gtk_label_set_justify(GTK_LABEL(prefswindow->pagelabel), GTK_JUSTIFY_LEFT); -- gtk_misc_set_alignment(GTK_MISC(prefswindow->pagelabel), 0, 0.0); -- gtk_container_add(GTK_CONTAINER(prefswindow->labelframe), prefswindow->pagelabel); -+ if (col_count > 1) -+ { -+ prefswindow->scrolledwindow1 = gtk_scrolled_window_new(NULL, NULL); -+ gtk_widget_show(prefswindow->scrolledwindow1); -+ gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(prefswindow->scrolledwindow1), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); -+ gtk_table_attach(GTK_TABLE(prefswindow->table1), prefswindow->scrolledwindow1, 0, 1, 0, 1, GTK_FILL, GTK_FILL | GTK_EXPAND, 2, 2); -+ -+ prefswindow->tree_view = prefswindow_tree_view_create(prefswindow); -+ gtk_widget_show(prefswindow->tree_view); -+ gtk_container_add(GTK_CONTAINER(prefswindow->scrolledwindow1), -+ prefswindow->tree_view); -+ -+ prefswindow->frame = gtk_frame_new(NULL); -+ gtk_widget_show(prefswindow->frame); -+ gtk_frame_set_shadow_type(GTK_FRAME(prefswindow->frame), GTK_SHADOW_IN); -+ gtk_table_attach(GTK_TABLE(prefswindow->table1), prefswindow->frame, col_count - 1, col_count, 0, 1, GTK_FILL | GTK_EXPAND, GTK_FILL | GTK_EXPAND, 2, 2); -+ -+ prefswindow->table2 = gtk_table_new(1, 2, FALSE); -+ gtk_widget_show(prefswindow->table2); -+ gtk_container_add(GTK_CONTAINER(prefswindow->frame), prefswindow->table2); -+ } -+ else -+ { -+ prefswindow->table2 = gtk_table_new(1, 2, FALSE); -+ gtk_widget_show(prefswindow->table2); -+ gtk_table_attach(GTK_TABLE(prefswindow->table1), prefswindow->table2, 0, 1, 0, 1, GTK_FILL | GTK_EXPAND, GTK_FILL | GTK_EXPAND, 2, 2); -+ } -+ -+ -+ if (col_count > 1) -+ { -+ prefswindow->labelframe = gtk_frame_new(NULL); -+ gtk_widget_show(prefswindow->labelframe); -+ gtk_frame_set_shadow_type(GTK_FRAME(prefswindow->labelframe), GTK_SHADOW_OUT); -+ gtk_table_attach(GTK_TABLE(prefswindow->table2), prefswindow->labelframe, 0, 1, 0, 1, GTK_FILL | GTK_EXPAND, GTK_FILL, 1, 1); -+ -+ prefswindow->pagelabel = gtk_label_new(""); -+ gtk_widget_show(prefswindow->pagelabel); -+ gtk_label_set_justify(GTK_LABEL(prefswindow->pagelabel), GTK_JUSTIFY_LEFT); -+ gtk_misc_set_alignment(GTK_MISC(prefswindow->pagelabel), 0, 0.0); -+ gtk_container_add(GTK_CONTAINER(prefswindow->labelframe), prefswindow->pagelabel); -+ } - - prefswindow->scrolledwindow2 = gtk_scrolled_window_new(NULL, NULL); - gtk_widget_show(prefswindow->scrolledwindow2); -@@ -411,9 +428,38 @@ - gtk_widget_show(prefswindow->empty_page); - gtk_container_add(GTK_CONTAINER(prefswindow->notebook), prefswindow->empty_page); - -- prefswindow_build_tree(prefswindow->tree_view, prefs_pages); -+ if (col_count > 1) -+ { -+ prefswindow_build_tree(prefswindow->tree_view, prefs_pages); -+ -+ gtk_widget_grab_focus(prefswindow->tree_view); -+ } -+ else -+ { -+ PrefsPage * page = prefs_pages->data; -+ gint pagenum; -+ GtkAdjustment *adj; -+ -+ if (!page->page_open) -+ { -+ page->create_widget(page, -+ GTK_WINDOW(prefswindow->window), -+ prefswindow->data); -+ gtk_container_add(GTK_CONTAINER(prefswindow->notebook), -+ page->widget); -+ page->page_open = TRUE; -+ } -+ -+ pagenum = gtk_notebook_page_num(GTK_NOTEBOOK(prefswindow->notebook), -+ page->widget); -+ gtk_notebook_set_current_page(GTK_NOTEBOOK(prefswindow->notebook), -+ pagenum); - -- gtk_widget_grab_focus(prefswindow->tree_view); -+ adj = gtk_scrolled_window_get_vadjustment( -+ GTK_SCROLLED_WINDOW(prefswindow->scrolledwindow2)); -+ gtk_adjustment_set_value(adj, 0); -+ -+ } - - gtkut_stock_button_set_create(&prefswindow->confirm_area, - &prefswindow->apply_btn, GTK_STOCK_APPLY, -@@ -440,28 +486,6 @@ - G_CALLBACK(prefswindow_key_pressed), &(prefswindow->window)); - #endif - -- /* connect to callback only if we hhave non-NULL pointers to store size to */ -- if (prefswindow->save_width && prefswindow->save_height) { -- g_signal_connect(G_OBJECT(prefswindow->window), "size_allocate", -- G_CALLBACK(prefs_size_allocate_cb), prefswindow); -- } -- -- if (!geometry.min_height) { -- -- if (x < 800 && y < 600) { -- geometry.min_width = 600; -- geometry.min_height = 440; -- } else { -- geometry.min_width = 700; -- geometry.min_height = 550; -- } -- } -- gtk_window_set_geometry_hints(GTK_WINDOW(prefswindow->window), NULL, &geometry, -- GDK_HINT_MIN_SIZE); -- if (prefswindow->save_width && prefswindow->save_height) { -- gtk_widget_set_size_request(prefswindow->window, *(prefswindow->save_width), -- *(prefswindow->save_height)); -- } - - gtk_widget_show(prefswindow->window); - #ifdef MAEMO -Index: claws-mail-2.9.1/src/compose.c -=================================================================== ---- claws-mail-2.9.1.orig/src/compose.c 2007-04-25 07:40:10.000000000 +0100 -+++ claws-mail-2.9.1/src/compose.c 2007-04-25 10:18:13.000000000 +0100 -@@ -352,9 +352,6 @@ - - /* callback functions */ - --static gboolean compose_edit_size_alloc (GtkEditable *widget, -- GtkAllocation *allocation, -- GtkSHRuler *shruler); - static void account_activated (GtkComboBox *optmenu, - gpointer data); - static void attach_selected (GtkTreeView *tree_view, -@@ -439,9 +436,6 @@ - guint action, - GtkWidget *widget); - --static void compose_toggle_ruler_cb (gpointer data, -- guint action, -- GtkWidget *widget); - static void compose_toggle_sign_cb (gpointer data, - guint action, - GtkWidget *widget); -@@ -788,7 +782,6 @@ - ENC_ACTION(C_WINDOWS_874)}, - - {N_("/_Tools"), NULL, NULL, 0, ""}, -- {N_("/_Tools/Show _ruler"), NULL, compose_toggle_ruler_cb, 0, ""}, - {N_("/_Tools/_Address book"), "A", compose_address_cb , 0, NULL}, - {N_("/_Tools/_Template"), NULL, NULL, 0, ""}, - {N_("/_Tools/Actio_ns"), NULL, NULL, 0, ""}, -@@ -2067,7 +2060,6 @@ - menu_set_sensitive(ifactory, "/Message/Insert signature", FALSE); - menu_set_sensitive(ifactory, "/Edit", FALSE); - menu_set_sensitive(ifactory, "/Options", FALSE); -- menu_set_sensitive(ifactory, "/Tools/Show ruler", FALSE); - menu_set_sensitive(ifactory, "/Tools/Actions", FALSE); - - if (compose->toolbar->draft_btn) -@@ -5684,7 +5676,7 @@ - g_signal_connect(G_OBJECT(GTK_COMBO(combo)->entry), "grab_focus", - G_CALLBACK(compose_grab_focus_cb), compose); - gtk_widget_show(combo); -- gtk_table_attach(GTK_TABLE(compose->header_table), combo, 0, 1, compose->header_nextrow, compose->header_nextrow+1, GTK_SHRINK, GTK_FILL, 0, 0); -+ gtk_table_attach(GTK_TABLE(compose->header_table), combo, 0, 1, compose->header_nextrow, compose->header_nextrow+1, GTK_FILL, GTK_FILL, 0, 0); - if (compose->header_last) { - const gchar *last_header_entry = gtk_entry_get_text(GTK_ENTRY(GTK_COMBO(compose->header_last->combo)->entry)); - string = headers; -@@ -5778,7 +5770,7 @@ - - static GtkWidget *compose_create_header(Compose *compose) - { -- GtkWidget *from_optmenu_hbox; -+ GtkWidget *from_optmenu; - GtkWidget *header_scrolledwin; - GtkWidget *header_table; - -@@ -5788,18 +5780,20 @@ - header_scrolledwin = gtk_scrolled_window_new(NULL, NULL); - gtk_widget_show(header_scrolledwin); - gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(header_scrolledwin), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); -- - header_table = gtk_table_new(2, 2, FALSE); -+ gtk_table_set_col_spacings (GTK_TABLE (header_table), BORDER_WIDTH); - gtk_widget_show(header_table); - gtk_container_set_border_width(GTK_CONTAINER(header_table), BORDER_WIDTH); - gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(header_scrolledwin), header_table); -- gtk_viewport_set_shadow_type(GTK_VIEWPORT(GTK_BIN(header_scrolledwin)->child), GTK_SHADOW_ETCHED_IN); -+ gtk_viewport_set_shadow_type(GTK_VIEWPORT(GTK_BIN(header_scrolledwin)->child), GTK_SHADOW_NONE); - count = 0; - - /* option menu for selecting accounts */ -- from_optmenu_hbox = compose_account_option_menu_create(compose); -- gtk_table_attach(GTK_TABLE(header_table), from_optmenu_hbox, -- 0, 2, count, count + 1, GTK_EXPAND | GTK_FILL, GTK_SHRINK, 0, 0); -+ from_optmenu = compose_account_option_menu_create(compose); -+ gtk_table_attach(GTK_TABLE(header_table), from_optmenu, -+ 0, 1, count, count + 1, GTK_FILL, GTK_FILL, 0, 0); -+ gtk_table_attach(GTK_TABLE(header_table), compose->from_name, -+ 1, 2, count, count + 1, GTK_EXPAND | GTK_FILL, GTK_FILL, 0, 0); - count++; - - compose->header_table = header_table; -@@ -6140,15 +6134,12 @@ - GtkWidget *vbox2; - - GtkWidget *label; -- GtkWidget *subject_hbox; -- GtkWidget *subject_frame; -+ GtkWidget *edit_frame; - GtkWidget *subject_entry; - GtkWidget *subject; - GtkWidget *paned; - - GtkWidget *edit_vbox; -- GtkWidget *ruler_hbox; -- GtkWidget *ruler; - GtkWidget *scrolledwin; - GtkWidget *text; - GtkTextBuffer *buffer; -@@ -6169,8 +6160,6 @@ - GtkAspell * gtkaspell = NULL; - #endif - -- static GdkGeometry geometry; -- - g_return_val_if_fail(account != NULL, NULL); - - debug_print("Creating compose window...\n"); -@@ -6190,28 +6179,6 @@ - - window = gtkut_window_new(GTK_WINDOW_TOPLEVEL, "compose"); - -- gtk_window_set_resizable(GTK_WINDOW(window), TRUE); -- gtk_widget_set_size_request(window, -1, prefs_common.compose_height); -- -- if (!geometry.max_width) { -- geometry.max_width = gdk_screen_width(); -- geometry.max_height = gdk_screen_height(); -- } -- -- gtk_window_set_geometry_hints(GTK_WINDOW(window), NULL, -- &geometry, GDK_HINT_MAX_SIZE); -- if (!geometry.min_width) { -- geometry.min_width = 600; -- geometry.min_height = 480; -- } -- gtk_window_set_geometry_hints(GTK_WINDOW(window), NULL, -- &geometry, GDK_HINT_MIN_SIZE); -- --#ifndef MAEMO -- if (compose_force_window_origin) -- gtk_widget_set_uposition(window, prefs_common.compose_x, -- prefs_common.compose_y); --#endif - g_signal_connect(G_OBJECT(window), "delete_event", - G_CALLBACK(compose_delete_cb), compose); - MANAGE_WINDOW_SIGNALS_CONNECT(window); -@@ -6227,11 +6194,7 @@ - n_menu_entries, "", compose); - gtk_box_pack_start(GTK_BOX(vbox), menubar, FALSE, TRUE, 0); - -- if (prefs_common.toolbar_detachable) { -- handlebox = gtk_handle_box_new(); -- } else { -- handlebox = gtk_hbox_new(FALSE, 0); -- } -+ handlebox = gtk_hbox_new(FALSE, 0); - gtk_box_pack_start(GTK_BOX(vbox), handlebox, FALSE, FALSE, 0); - - gtk_widget_realize(handlebox); -@@ -6244,7 +6207,6 @@ - - /* Notebook */ - notebook = gtk_notebook_new(); -- gtk_widget_set_size_request(notebook, -1, 130); - gtk_widget_show(notebook); - - /* header labels and entries */ -@@ -6258,18 +6220,10 @@ - /* Others Tab */ - gtk_notebook_append_page(GTK_NOTEBOOK(notebook), - compose_create_others(compose), -- gtk_label_new_with_mnemonic(_("Othe_rs"))); -+ gtk_label_new_with_mnemonic(_("Othe_r"))); - - /* Subject */ -- subject_hbox = gtk_hbox_new(FALSE, 0); -- gtk_widget_show(subject_hbox); -- -- subject_frame = gtk_frame_new(NULL); -- gtk_frame_set_shadow_type(GTK_FRAME(subject_frame), GTK_SHADOW_NONE); -- gtk_box_pack_start(GTK_BOX(subject_hbox), subject_frame, TRUE, TRUE, 0); -- gtk_widget_show(subject_frame); -- -- subject = gtk_hbox_new(FALSE, HSPACING_NARROW); -+ subject = gtk_hbox_new(FALSE, BORDER_WIDTH); - gtk_container_set_border_width(GTK_CONTAINER(subject), 0); - gtk_widget_show(subject); - -@@ -6283,20 +6237,16 @@ - G_CALLBACK(compose_grab_focus_cb), compose); - gtk_widget_show(subject_entry); - compose->subject_entry = subject_entry; -- gtk_container_add(GTK_CONTAINER(subject_frame), subject); - -- edit_vbox = gtk_vbox_new(FALSE, 0); -+ edit_vbox = gtk_vbox_new(FALSE, BORDER_WIDTH); -+ gtk_container_set_border_width(GTK_CONTAINER(edit_vbox), BORDER_WIDTH); - -- gtk_box_pack_start(GTK_BOX(edit_vbox), subject_hbox, FALSE, FALSE, 0); -+ gtk_box_pack_start(GTK_BOX(edit_vbox), subject, FALSE, FALSE, 0); - -- /* ruler */ -- ruler_hbox = gtk_hbox_new(FALSE, 0); -- gtk_box_pack_start(GTK_BOX(edit_vbox), ruler_hbox, FALSE, FALSE, 0); -- -- ruler = gtk_shruler_new(); -- gtk_ruler_set_range(GTK_RULER(ruler), 0.0, 100.0, 1.0, 100.0); -- gtk_box_pack_start(GTK_BOX(ruler_hbox), ruler, TRUE, TRUE, -- BORDER_WIDTH); -+ edit_frame = gtk_frame_new(NULL); -+ gtk_frame_set_shadow_type(GTK_FRAME(edit_frame), GTK_SHADOW_IN); -+ gtk_widget_show(edit_frame); -+ gtk_container_add(GTK_CONTAINER(edit_frame), edit_vbox); - - /* text widget */ - scrolledwin = gtk_scrolled_window_new(NULL, NULL); -@@ -6317,9 +6267,6 @@ - - gtk_container_add(GTK_CONTAINER(scrolledwin), text); - -- g_signal_connect_after(G_OBJECT(text), "size_allocate", -- G_CALLBACK(compose_edit_size_alloc), -- ruler); - g_signal_connect(G_OBJECT(buffer), "changed", - G_CALLBACK(compose_changed_cb), compose); - g_signal_connect(G_OBJECT(text), "grab_focus", -@@ -6363,7 +6310,7 @@ - gtk_widget_set_size_request(edit_vbox, -1, mode == COMPOSE_NEW ? 250 : 230); - #endif - gtk_paned_add1(GTK_PANED(paned), notebook); -- gtk_paned_add2(GTK_PANED(paned), edit_vbox); -+ gtk_paned_add2(GTK_PANED(paned), edit_frame); - gtk_widget_show_all(paned); - - -@@ -6408,8 +6355,6 @@ - - compose->notebook = notebook; - compose->edit_vbox = edit_vbox; -- compose->ruler_hbox = ruler_hbox; -- compose->ruler = ruler; - compose->scrolledwin = scrolledwin; - compose->text = text; - -@@ -6531,13 +6476,6 @@ - - compose_list = g_list_append(compose_list, compose); - -- if (!prefs_common.show_ruler) -- gtk_widget_hide(ruler_hbox); -- -- menuitem = gtk_item_factory_get_item(ifactory, "/Tools/Show ruler"); -- gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), -- prefs_common.show_ruler); -- - /* Priority */ - compose->priority = PRIORITY_NORMAL; - compose_update_priority_menu_item(compose); -@@ -6568,7 +6506,6 @@ - static GtkWidget *compose_account_option_menu_create(Compose *compose) - { - GList *accounts; -- GtkWidget *hbox; - GtkWidget *optmenu; - GtkWidget *optmenubox; - GtkListStore *menu; -@@ -6584,7 +6521,6 @@ - optmenu = gtkut_sc_combobox_create(optmenubox, FALSE); - menu = GTK_LIST_STORE(gtk_combo_box_get_model(GTK_COMBO_BOX(optmenu))); - -- hbox = gtk_hbox_new(FALSE, 6); - from_name = gtk_entry_new(); - - g_signal_connect_after(G_OBJECT(from_name), "grab_focus", -@@ -6623,9 +6559,6 @@ - G_CALLBACK(account_activated), - compose); - -- gtk_box_pack_start(GTK_BOX(hbox), optmenubox, FALSE, FALSE, 0); -- gtk_box_pack_start(GTK_BOX(hbox), from_name, TRUE, TRUE, 0); -- - gtk_tooltips_set_tip(compose->tooltips, optmenubox, - _("Account to use for this email"), NULL); - gtk_tooltips_set_tip(compose->tooltips, from_name, -@@ -6633,7 +6566,7 @@ - - compose->from_name = from_name; - -- return hbox; -+ return optmenubox; - } - - static void compose_set_priority_cb(gpointer data, -@@ -7851,32 +7784,6 @@ - - /* callback functions */ - --/* compose_edit_size_alloc() - called when resized. don't know whether Gtk -- * includes "non-client" (windows-izm) in calculation, so this calculation -- * may not be accurate. -- */ --static gboolean compose_edit_size_alloc(GtkEditable *widget, -- GtkAllocation *allocation, -- GtkSHRuler *shruler) --{ -- if (prefs_common.show_ruler) { -- gint char_width = 0, char_height = 0; -- gint line_width_in_chars; -- -- gtkut_get_font_size(GTK_WIDGET(widget), -- &char_width, &char_height); -- line_width_in_chars = -- (allocation->width - allocation->x) / char_width; -- -- /* got the maximum */ -- gtk_ruler_set_range(GTK_RULER(shruler), -- 0.0, line_width_in_chars, 0, -- /*line_width_in_chars*/ char_width); -- } -- -- return TRUE; --} -- - static void account_activated(GtkComboBox *optmenu, gpointer data) - { - Compose *compose = (Compose *)data; -@@ -9040,21 +8947,6 @@ - compose_update_privacy_system_menu_item(compose, warn); - } - --static void compose_toggle_ruler_cb(gpointer data, guint action, -- GtkWidget *widget) --{ -- Compose *compose = (Compose *)data; -- -- if (GTK_CHECK_MENU_ITEM(widget)->active) { -- gtk_widget_show(compose->ruler_hbox); -- prefs_common.show_ruler = TRUE; -- } else { -- gtk_widget_hide(compose->ruler_hbox); -- gtk_widget_queue_resize(compose->edit_vbox); -- prefs_common.show_ruler = FALSE; -- } --} -- - static void compose_attach_drag_received_cb (GtkWidget *widget, - GdkDragContext *context, - gint x, -Index: claws-mail-2.9.1/src/folderview.c -=================================================================== ---- claws-mail-2.9.1.orig/src/folderview.c 2007-04-03 19:10:25.000000000 +0100 -+++ claws-mail-2.9.1/src/folderview.c 2007-04-25 10:28:00.000000000 +0100 -@@ -73,6 +73,11 @@ - #define COL_FOLDER_WIDTH 150 - #define COL_NUM_WIDTH 32 - -+/* added dummy column to stop the last column from -+ * resizing insanely in small screen view -+ */ -+#define _N_FOLDER_COLS (N_FOLDER_COLS + 1) -+ - static GList *folderview_list = NULL; - - static GtkStyle *normal_style; -@@ -448,7 +453,7 @@ - gint *col_pos; - FolderColumnState *col_state; - FolderColumnType type; -- gchar *titles[N_FOLDER_COLS]; -+ gchar *titles[_N_FOLDER_COLS]; - gint i; - GtkWidget *scrolledwin = folderview->scrolledwin; - -@@ -471,8 +476,9 @@ - titles[col_pos[F_COL_UNREAD]] = _("Unread"); - /* TRANSLATORS: This in Number sign in American style */ - titles[col_pos[F_COL_TOTAL]] = _("#"); -+ titles[F_COL_DUMMY] = ""; - -- ctree = gtk_sctree_new_with_titles(N_FOLDER_COLS, col_pos[F_COL_FOLDER], -+ ctree = gtk_sctree_new_with_titles(_N_FOLDER_COLS, col_pos[F_COL_FOLDER], - titles); - - gtk_clist_set_selection_mode(GTK_CLIST(ctree), GTK_SELECTION_BROWSE); -@@ -510,6 +516,9 @@ - (GTK_CLIST(ctree), i, col_state[i].visible); - } - -+ GTK_WIDGET_UNSET_FLAGS(GTK_CLIST(ctree)->column[i].button, -+ GTK_CAN_FOCUS); -+ - g_signal_connect(G_OBJECT(ctree), "key_press_event", - G_CALLBACK(folderview_key_pressed), - folderview); -@@ -605,9 +614,6 @@ - (GTK_SCROLLED_WINDOW(scrolledwin), - GTK_POLICY_AUTOMATIC, - prefs_common.folderview_vscrollbar_policy); -- gtk_widget_set_size_request(scrolledwin, -- prefs_common.folderview_width, -- prefs_common.folderview_height); - - folderview->scrolledwin = scrolledwin; - ctree = folderview_ctree_create(folderview); -@@ -2268,7 +2274,7 @@ - static void folderview_create_folder_node(FolderView *folderview, FolderItem *item) - { - GtkCTree *ctree = GTK_CTREE(folderview->ctree); -- gchar *text[N_FOLDER_COLS] = {NULL, "0", "0", "0"}; -+ gchar *text[_N_FOLDER_COLS] = {NULL, "0", "0", "0", ""}; - GtkCTreeNode *node, *parent_node; - gint *col_pos = folderview->col_pos; - FolderItemUpdateData hookdata; -Index: claws-mail-2.9.1/src/folderview.h -=================================================================== ---- claws-mail-2.9.1.orig/src/folderview.h 2007-03-22 17:22:52.000000000 +0000 -+++ claws-mail-2.9.1/src/folderview.h 2007-04-25 10:16:55.000000000 +0100 -@@ -37,7 +37,8 @@ - F_COL_FOLDER, - F_COL_NEW, - F_COL_UNREAD, -- F_COL_TOTAL -+ F_COL_TOTAL, -+ F_COL_DUMMY - } FolderColumnType; - - #define N_FOLDER_COLS 4 diff --git a/meta/packages/coreutils/coreutils-6.9/futimens.patch b/meta/packages/coreutils/coreutils-6.9/futimens.patch deleted file mode 100644 index 953c2d17a9..0000000000 --- a/meta/packages/coreutils/coreutils-6.9/futimens.patch +++ /dev/null @@ -1,61 +0,0 @@ -# coreutils uses gnulib which conflicts with newer libc header on futimens -# this patch simply renames coreutils futimes to avoid confliction -# -# Signed-off-by Kevin Tian , 2010-08-18 -# (this patch is licensed under GPLv2) - -diff --git a/lib/utimens.c b/lib/utimens.c -index 71bc510..ae870b8 100644 ---- a/lib/utimens.c -+++ b/lib/utimens.c -@@ -75,7 +75,7 @@ struct utimbuf - Return 0 on success, -1 (setting errno) on failure. */ - - int --futimens (int fd ATTRIBUTE_UNUSED, -+futimens_coreutils (int fd ATTRIBUTE_UNUSED, - char const *file, struct timespec const timespec[2]) - { - /* Some Linux-based NFS clients are buggy, and mishandle time stamps -@@ -185,5 +185,5 @@ futimens (int fd ATTRIBUTE_UNUSED, - int - utimens (char const *file, struct timespec const timespec[2]) - { -- return futimens (-1, file, timespec); -+ return futimens_coreutils (-1, file, timespec); - } -diff --git a/lib/utimens.h b/lib/utimens.h -index 0097aaa..13fc45a 100644 ---- a/lib/utimens.h -+++ b/lib/utimens.h -@@ -1,3 +1,3 @@ - #include --int futimens (int, char const *, struct timespec const [2]); -+int futimens_coreutils (int, char const *, struct timespec const [2]); - int utimens (char const *, struct timespec const [2]); -diff --git a/src/copy.c b/src/copy.c -index 4bdb75c..04634f1 100644 ---- a/src/copy.c -+++ b/src/copy.c -@@ -518,7 +518,7 @@ copy_reg (char const *src_name, char const *dst_name, - timespec[0] = get_stat_atime (src_sb); - timespec[1] = get_stat_mtime (src_sb); - -- if (futimens (dest_desc, dst_name, timespec) != 0) -+ if (futimens_coreutils (dest_desc, dst_name, timespec) != 0) - { - error (0, errno, _("preserving times for %s"), quote (dst_name)); - if (x->require_preserve) -diff --git a/src/touch.c b/src/touch.c -index a79c26d..6ef317d 100644 ---- a/src/touch.c -+++ b/src/touch.c -@@ -182,7 +182,7 @@ touch (const char *file) - t = timespec; - } - -- ok = (futimens (fd, (fd == STDOUT_FILENO ? NULL : file), t) == 0); -+ ok = (futimens_coreutils (fd, (fd == STDOUT_FILENO ? NULL : file), t) == 0); - - if (fd == STDIN_FILENO) - { diff --git a/meta/packages/coreutils/coreutils-6.9/gnulib_m4.patch b/meta/packages/coreutils/coreutils-6.9/gnulib_m4.patch deleted file mode 100644 index b42f5c9faa..0000000000 --- a/meta/packages/coreutils/coreutils-6.9/gnulib_m4.patch +++ /dev/null @@ -1,19 +0,0 @@ -# remove the line to cause recursive inclusion error from autoreconf, sicne -# newer autoconf has included this definition. Simply rename it here. -# -# Signed-off-by Kevin Tian , 2010-08-18 -# (this patch is licensed under GPLv2) - -diff --git a/extensions.m4 b/extensions.m4 -index 143a9e5..f6558f1 100644 ---- a/m4/extensions.m4 -+++ b/m4/extensions.m4 -@@ -16,7 +16,7 @@ - # ------------------------ - # Enable extensions on systems that normally disable them, - # typically due to standards-conformance issues. --AC_DEFUN([AC_USE_SYSTEM_EXTENSIONS], -+AC_DEFUN([AC_USE_SYSTEM_EXTENSIONS_DUMMY], - [ - AC_BEFORE([$0], [AC_COMPILE_IFELSE]) - AC_BEFORE([$0], [AC_RUN_IFELSE]) diff --git a/meta/packages/coreutils/coreutils-6.9/man-touch.patch b/meta/packages/coreutils/coreutils-6.9/man-touch.patch deleted file mode 100644 index 95a9638921..0000000000 --- a/meta/packages/coreutils/coreutils-6.9/man-touch.patch +++ /dev/null @@ -1,22 +0,0 @@ -# man page for 'touch' is generated differently from others. All other utilities -# are provided static man source files, while for 'touch' it requires help2man -# to invoke "touch --help" and then convert the output into the manual. Since touch -# is with target format which can't be invoked on build system, disable building -# 'touch' man page here. -# -# Signed-off-by Kevin Tian , 2010-08-18 -# (this patch is licensed under GPLv2) - -diff --git a/man/Makefile.am b/man/Makefile.am -index 32df9d1..37b09e3 100644 ---- a/man/Makefile.am -+++ b/man/Makefile.am -@@ -27,7 +27,7 @@ dist_man_MANS = \ - paste.1 pathchk.1 pr.1 printenv.1 printf.1 ptx.1 pwd.1 readlink.1 \ - rm.1 rmdir.1 seq.1 sha1sum.1 sha224sum.1 sha256sum.1 sha384sum.1 sha512sum.1 \ - shred.1 shuf.1 sleep.1 sort.1 split.1 stat.1 \ -- su.1 sum.1 sync.1 tac.1 tail.1 tee.1 test.1 touch.1 tr.1 true.1 tsort.1 \ -+ su.1 sum.1 sync.1 tac.1 tail.1 tee.1 test.1 tr.1 true.1 tsort.1 \ - tty.1 unexpand.1 uniq.1 unlink.1 vdir.1 wc.1 \ - whoami.1 yes.1 $(MAN) - optional_mans = \ diff --git a/meta/packages/coreutils/coreutils_6.9.bb b/meta/packages/coreutils/coreutils_6.9.bb deleted file mode 100644 index 6a23f4f65f..0000000000 --- a/meta/packages/coreutils/coreutils_6.9.bb +++ /dev/null @@ -1,78 +0,0 @@ -DESCRIPTION = "The GNU Core Utilities are the basic file, shell and text manipulation utilities of the GNU operating system. These are the core utilities which are expected to exist on every operating system" -HOMEPAGE = "http://www.gnu.org/software/coreutils/" -BUGTRACKER = "http://debbugs.gnu.org/coreutils" -LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe \ - file://src/ls.c;startline=4;endline=16;md5=482a96d4f25010a4e13f8743e0c3685e" -PR = "r0" -DEPENDS = "perl-native" - -inherit autotools gettext - -SRC_URI = "http://ftp.gnu.org/gnu/coreutils/${BP}.tar.bz2 \ - file://gnulib_m4.patch \ - file://futimens.patch \ - file://man-touch.patch" - -# [ gets a special treatment and is not included in this -bindir_progs = "base64 basename cksum comm csplit cut dir dircolors dirname du \ - env expand expr factor fmt fold groups head hostid id install \ - join link logname md5sum mkfifo nice nl nohup od paste pathchk \ - pinky pr printenv printf ptx readlink seq sha1sum sha224sum sha256sum \ - sha384sum sha512sum shred shuf sort split stat sum tac tail tee test \ - tr tsort tty unexpand uniq unlink users vdir wc who whoami yes" - -# hostname gets a special treatment and is not included in this -base_bindir_progs = "cat chgrp chmod chown cp date dd echo false kill ln ls mkdir \ - mknod mv pwd rm rmdir sleep stty sync touch true uname" - -sbindir_progs= "chroot" - -do_install() { - autotools_do_install - - for i in ${bindir_progs}; do mv ${D}${bindir}/$i ${D}${bindir}/$i.${PN}; done - - install -d ${D}${base_bindir} - for i in ${base_bindir_progs}; do mv ${D}${bindir}/$i ${D}${base_bindir}/$i.${PN}; done - - install -d ${D}${sbindir} - for i in ${sbindir_progs}; do mv ${D}${bindir}/$i ${D}${sbindir}/$i.${PN}; done - - # [ requires special handling because [.coreutils will cause the sed stuff - # in update-alternatives to fail, therefore use lbracket - the name used - # for the actual source file. - mv ${D}${bindir}/[ ${D}${bindir}/lbracket.${PN} - - # hostname and uptime separated. busybox's versions are preferred - mv ${D}${bindir}/hostname ${D}${base_bindir}/hostname.${PN} - mv ${D}${bindir}/uptime ${D}${bindir}/uptime.${PN} -} - -pkg_postinst_${PN} () { - for i in ${bindir_progs}; do update-alternatives --install ${bindir}/$i $i $i.${PN} 100; done - - for i in ${base_bindir_progs}; do update-alternatives --install ${base_bindir}/$i $i $i.${PN} 100; done - - for i in ${sbindir_progs}; do update-alternatives --install ${sbindir}/$i $i $i.${PN} 100; done - - # Special cases. uptime and hostname is broken, prefer busybox's version. [ needs to be treated separately. - update-alternatives --install ${bindir}/uptime uptime uptime.${PN} 10 - update-alternatives --install ${base_bindir}/hostname hostname hostname.${PN} 10 - update-alternatives --install '${bindir}/[' '[' 'lbracket.${PN}' 100 -} - -pkg_prerm_${PN} () { - for i in ${bindir_progs}; do update-alternatives --remove $i $i.${PN}; done - - for i in ${base_bindir_progs}; do update-alternatives --remove $i $i.${PN}; done - - for i in ${sbindir_progs}; do update-alternatives --remove $i $i.${PN}; done - - # The special cases - update-alternatives --remove hostname hostname.${PN} - update-alternatives --remove uptime uptime.${PN} - update-alternatives --remove '[' 'lbracket.${PN}' -} - -BBCLASSEXTEND = "native" diff --git a/meta/packages/coreutils/coreutils_8.5.bb b/meta/packages/coreutils/coreutils_8.5.bb deleted file mode 100644 index 5213fa2937..0000000000 --- a/meta/packages/coreutils/coreutils_8.5.bb +++ /dev/null @@ -1,67 +0,0 @@ -DESCRIPTION = "The GNU Core Utilities are the basic file, shell and text manipulation utilities of the GNU operating system. These are the core utilities which are expected to exist on every operating system" -HOMEPAGE = "http://www.gnu.org/software/coreutils/" -BUGTRACKER = "http://debbugs.gnu.org/coreutils" -LICENSE = "GPLv3+" -LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504\ - file://src/ls.c;startline=5;endline=16;md5=bb14ed3c4cda583abc85401304b5cd4e" -PR = "r0" -DEPENDS = "perl-native" - -inherit autotools gettext - -SRC_URI = "http://ftp.gnu.org/gnu/coreutils/${BP}.tar.gz" - -# [ gets a special treatment and is not included in this -bindir_progs = "base64 basename chcon cksum comm csplit cut dir dircolors dirname du \ - env expand expr factor fmt fold groups head hostid id install \ - join link logname md5sum mkfifo mktemp nice nl nohup nproc od paste pathchk \ - pinky pr printenv printf ptx readlink runcon seq sha1sum sha224sum sha256sum \ - sha384sum sha512sum shred shuf sort split stat stdbuf sum tac tail tee test timeout\ - tr truncate tsort tty unexpand uniq unlink uptime users vdir wc who whoami yes" - -# hostname gets a special treatment and is not included in this -base_bindir_progs = "cat chgrp chmod chown cp date dd echo false kill ln ls mkdir \ - mknod mv pwd rm rmdir sleep stty sync touch true uname" - -sbindir_progs= "chroot" - -do_install_append() { - for i in ${bindir_progs}; do mv ${D}${bindir}/$i ${D}${bindir}/$i.${PN}; done - - install -d ${D}${base_bindir} - for i in ${base_bindir_progs}; do mv ${D}${bindir}/$i ${D}${base_bindir}/$i.${PN}; done - - install -d ${D}${sbindir} - for i in ${sbindir_progs}; do mv ${D}${bindir}/$i ${D}${sbindir}/$i.${PN}; done - - # [ requires special handling because [.coreutils will cause the sed stuff - # in update-alternatives to fail, therefore use lbracket - the name used - # for the actual source file. - mv ${D}${bindir}/[ ${D}${bindir}/lbracket.${PN} -} - -pkg_postinst_${PN} () { - for i in ${bindir_progs}; do update-alternatives --install ${bindir}/$i $i $i.${PN} 100; done - - for i in ${base_bindir_progs}; do update-alternatives --install ${base_bindir}/$i $i $i.${PN} 100; done - - for i in ${sbindir_progs}; do update-alternatives --install ${sbindir}/$i $i $i.${PN} 100; done - - # Special cases. [ needs to be treated separately. - update-alternatives --install '${bindir}/[' '[' 'lbracket.${PN}' 100 -} - -pkg_prerm_${PN} () { - for i in ${bindir_progs}; do update-alternatives --remove $i $i.${PN}; done - - for i in ${base_bindir_progs}; do update-alternatives --remove $i $i.${PN}; done - - for i in ${sbindir_progs}; do update-alternatives --remove $i $i.${PN}; done - - # The special cases - update-alternatives --remove hostname hostname.${PN} - update-alternatives --remove uptime uptime.${PN} - update-alternatives --remove '[' 'lbracket.${PN}' -} - -BBCLASSEXTEND = "native" diff --git a/meta/packages/curl/curl/noldlibpath.patch b/meta/packages/curl/curl/noldlibpath.patch deleted file mode 100644 index a3319a23e3..0000000000 --- a/meta/packages/curl/curl/noldlibpath.patch +++ /dev/null @@ -1,74 +0,0 @@ -Manipulating LD_LIBRARY_PATH can totally break builds when cross compiling. -Since we never run compiled binaries for the target, we should *never* need -to change LD_LIBRARY_PATH. - -RP 9/6/2010 - -Index: curl-7.20.0/configure.ac -=================================================================== ---- curl-7.20.0.orig/configure.ac 2010-06-09 11:06:30.000000000 +0100 -+++ curl-7.20.0/configure.ac 2010-06-09 11:04:25.000000000 +0100 -@@ -1461,9 +1461,10 @@ - dnl linker doesn't search through, we need to add it to LD_LIBRARY_PATH - dnl to prevent further configure tests to fail due to this - -- LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$LIB_OPENSSL" -- export LD_LIBRARY_PATH -- AC_MSG_NOTICE([Added $LIB_OPENSSL to LD_LIBRARY_PATH]) -+ #LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$LIB_OPENSSL" -+ #export LD_LIBRARY_PATH -+ #AC_MSG_NOTICE([Added $LIB_OPENSSL to LD_LIBRARY_PATH]) -+ : - fi - fi - -@@ -1684,9 +1686,10 @@ - dnl LD_LIBRARY_PATH to prevent further configure tests to fail - dnl due to this - -- LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$gtlslib" -- export LD_LIBRARY_PATH -- AC_MSG_NOTICE([Added $gtlslib to LD_LIBRARY_PATH]) -+ #LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$gtlslib" -+ #export LD_LIBRARY_PATH -+ #AC_MSG_NOTICE([Added $gtlslib to LD_LIBRARY_PATH]) -+ : - fi - fi - -@@ -1696,6 +1699,8 @@ - - fi dnl OPENSSL != 1 - -+AC_SUBST(GNUTLS_REQUIRED) -+ - dnl ---------------------------------------------------- - dnl NSS. Only check if GnuTLS and OpenSSL are not enabled - dnl ---------------------------------------------------- -@@ -1781,9 +1786,10 @@ - dnl LD_LIBRARY_PATH to prevent further configure tests to fail - dnl due to this - -- LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$nssprefix/lib$libsuff" -- export LD_LIBRARY_PATH -- AC_MSG_NOTICE([Added $nssprefix/lib$libsuff to LD_LIBRARY_PATH]) -+ #LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$nssprefix/lib$libsuff" -+ #export LD_LIBRARY_PATH -+ #AC_MSG_NOTICE([Added $nssprefix/lib$libsuff to LD_LIBRARY_PATH]) -+ : - fi - - fi -@@ -1881,9 +1887,9 @@ - dnl libssh2_version is a post 1.0 addition - AC_CHECK_FUNCS( libssh2_version ) - -- LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$DIR_SSH2" -- export LD_LIBRARY_PATH -- AC_MSG_NOTICE([Added $DIR_SSH2 to LD_LIBRARY_PATH]) -+ #LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$DIR_SSH2" -+ #export LD_LIBRARY_PATH -+ #AC_MSG_NOTICE([Added $DIR_SSH2 to LD_LIBRARY_PATH]) - fi - else - dnl no libssh2, revert back to clean variables diff --git a/meta/packages/curl/curl/pkgconfig_fix.patch b/meta/packages/curl/curl/pkgconfig_fix.patch deleted file mode 100644 index a59d39b8b1..0000000000 --- a/meta/packages/curl/curl/pkgconfig_fix.patch +++ /dev/null @@ -1,35 +0,0 @@ -Index: curl-7.20.0/libcurl.pc.in -=================================================================== ---- curl-7.20.0.orig/libcurl.pc.in 2009-11-17 18:11:07.000000000 +0000 -+++ curl-7.20.0/libcurl.pc.in 2010-03-25 12:13:26.814051066 +0000 -@@ -35,6 +35,7 @@ - URL: http://curl.haxx.se/ - Description: Library to transfer files with ftp, http, etc. - Version: @VERSION@ --Libs: -L${libdir} -lcurl @LIBS@ --Libs.private: @LIBCURL_LIBS@ @LIBS@ -+Requires.private: @GNUTLS_REQUIRED@ -+Libs: -L${libdir} -lcurl -+Libs.private: -ldl -lz - Cflags: -I${includedir} -Index: curl-7.20.0/configure.ac -=================================================================== ---- curl-7.20.0.orig/configure.ac 2010-02-04 21:41:46.000000000 +0000 -+++ curl-7.20.0/configure.ac 2010-03-25 12:12:18.673129001 +0000 -@@ -1668,6 +1668,7 @@ - AC_SUBST(USE_GNUTLS, [1]) - GNUTLS_ENABLED=1 - USE_GNUTLS="yes" -+ GNUTLS_REQUIRED="gnutls" - curl_ssl_msg="enabled (GnuTLS)" - ], - [ -@@ -1696,6 +1697,8 @@ - - fi dnl OPENSSL != 1 - -+AC_SUBST(GNUTLS_REQUIRED) -+ - dnl ---------------------------------------------------- - dnl NSS. Only check if GnuTLS and OpenSSL are not enabled - dnl ---------------------------------------------------- diff --git a/meta/packages/curl/curl_7.21.0.bb b/meta/packages/curl/curl_7.21.0.bb deleted file mode 100644 index 1e11222897..0000000000 --- a/meta/packages/curl/curl_7.21.0.bb +++ /dev/null @@ -1,54 +0,0 @@ -DESCRIPTION = "Command line tool and library for client-side URL transfers." -HOMEPAGE = "http://curl.haxx.se/" -BUGTRACKER = "http://curl.haxx.se/mail/list.cgi?list=curl-tracker" -SECTION = "console/network" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;beginline=7;md5=3a34942f4ae3fbf1a303160714e664ac" - -DEPENDS = "zlib gnutls" -DEPENDS_virtclass-native = "zlib-native" -DEPENDS_virtclass-nativesdk = "zlib-nativesdk" -PR = "r0" - -SRC_URI = "http://curl.haxx.se/download/curl-${PV}.tar.bz2 \ - file://noldlibpath.patch \ - file://pkgconfig_fix.patch" - -inherit autotools pkgconfig binconfig - -EXTRA_OECONF = "--with-zlib=${STAGING_LIBDIR}/../ \ - --with-gnutls=${STAGING_BINDIR_CROSS}/ \ - --without-ssl \ - --without-libssh2 \ - --with-random=/dev/urandom \ - --without-libidn \ - --enable-crypto-auth \ - " - -do_configure_prepend() { - sed -i s:OPT_GNUTLS/bin:OPT_GNUTLS:g configure.ac -} - -PACKAGES += "${PN}-certs libcurl libcurl-dev libcurl-doc" - -FILES_${PN} = "${bindir}/curl" - -FILES_${PN}-certs = "${datadir}/curl/curl-*" -PACKAGE_ARCH_${PN}-certs = "all" - -FILES_${PN}-doc = "${mandir}/man1/curl.1" - -FILES_lib${PN} = "${libdir}/lib*.so.*" -RRECOMMENDS_lib${PN} += "${PN}-certs" -FILES_lib${PN}-dev = "${includedir} \ - ${libdir}/lib*.so \ - ${libdir}/lib*.a \ - ${libdir}/lib*.la \ - ${libdir}/pkgconfig \ - ${datadir}/aclocal \ - ${bindir}/*-config" - -FILES_lib${PN}-doc = "${mandir}/man3 \ - ${mandir}/man1/curl-config.1" - -BBCLASSEXTEND = "native nativesdk" diff --git a/meta/packages/db/db/arm-thumb-mutex.patch b/meta/packages/db/db/arm-thumb-mutex.patch deleted file mode 100644 index acd446fcd8..0000000000 --- a/meta/packages/db/db/arm-thumb-mutex.patch +++ /dev/null @@ -1,36 +0,0 @@ ---- db-4.3.29-dist/../dbinc/mutex.h 2005-11-15 07:33:27.761042518 -0800 -+++ db-4.3.29-dist/../dbinc/mutex.h 2005-11-15 07:55:24.823920060 -0800 -@@ -470,6 +470,25 @@ - #ifdef LOAD_ACTUAL_MUTEX_CODE - #define MUTEX_SET_TEST 1 /* gcc/arm: 0 is clear, 1 is set. */ - -+#if defined __thumb__ -+#define MUTEX_SET(tsl) ({ \ -+ int __r, __p; \ -+ asm volatile( \ -+ ".align 2\n\t" \ -+ "bx pc\n\t" \ -+ "nop\n\t" \ -+ ".arm\n\t" \ -+ "swpb %0, %2, [%3]\n\t" \ -+ "eor %0, %0, #1\n\t" \ -+ "orr %1, pc, #1\n\t" \ -+ "bx %1\n\t" \ -+ ".force_thumb" \ -+ : "=&r" (__r), "=r" (__p) \ -+ : "r" (1), "r" (tsl) \ -+ ); \ -+ __r & 1; \ -+}) -+#else - #define MUTEX_SET(tsl) ({ \ - int __r; \ - asm volatile( \ -@@ -480,6 +499,7 @@ - ); \ - __r & 1; \ - }) -+#endif - - #define MUTEX_UNSET(tsl) (*(volatile tsl_t *)(tsl) = 0) - #define MUTEX_INIT(tsl) MUTEX_UNSET(tsl) diff --git a/meta/packages/db/db/configure_fixes.patch b/meta/packages/db/db/configure_fixes.patch deleted file mode 100644 index 80aa0e7c1c..0000000000 --- a/meta/packages/db/db/configure_fixes.patch +++ /dev/null @@ -1,18 +0,0 @@ -If LD is a binary name + parameters db will fail to work out its GNU ld -and disable shared libraries. We don't want this. - -RP - 22/11/2007 - -Index: dist/configure -=================================================================== ---- dist.orig/configure 2007-11-23 00:47:27.000000000 +0000 -+++ dist/configure 2007-11-23 00:53:22.000000000 +0000 -@@ -5658,7 +5661,7 @@ if test "${lt_cv_prog_gnu_ld+set}" = set - echo $ECHO_N "(cached) $ECHO_C" >&6 - else - # I'd rather use --version here, but apparently some GNU ld's only accept -v. --case `"$LD" -v 2>&1 &1 - #include - - /* diff --git a/meta/packages/dhcp/dhcp-4.1.1-P1/noattrmode.patch b/meta/packages/dhcp/dhcp-4.1.1-P1/noattrmode.patch deleted file mode 100644 index 5c766d6c06..0000000000 --- a/meta/packages/dhcp/dhcp-4.1.1-P1/noattrmode.patch +++ /dev/null @@ -1,20 +0,0 @@ - -# -# Patch managed by http://www.holgerschurig.de/patcher.html -# - ---- dhcp-3.0.1/includes/dhcpd.h~compile -+++ dhcp-3.0.1/includes/dhcpd.h -@@ -306,9 +306,9 @@ - # define EPHEMERAL_FLAGS (MS_NULL_TERMINATION | \ - UNICAST_BROADCAST_HACK) - -- binding_state_t __attribute__ ((mode (__byte__))) binding_state; -- binding_state_t __attribute__ ((mode (__byte__))) next_binding_state; -- binding_state_t __attribute__ ((mode (__byte__))) desired_binding_state; -+ binding_state_t binding_state; -+ binding_state_t next_binding_state; -+ binding_state_t desired_binding_state; - - struct lease_state *state; - diff --git a/meta/packages/dhcp/dhcp-4.1.1-P1/site.h b/meta/packages/dhcp/dhcp-4.1.1-P1/site.h deleted file mode 100644 index 2289554ef3..0000000000 --- a/meta/packages/dhcp/dhcp-4.1.1-P1/site.h +++ /dev/null @@ -1,21 +0,0 @@ -/* - * define config file location in ${S}/includes/site.h - * still need to take care of installation path (${sysconfdir}/dhcpd.conf) - * - * 7/22/2010 - qhe - */ - -/* Define this if you want DNS update functionality to be available. */ - -#define NSUPDATE - -/* Define this if you aren't debugging and you want to save memory - (potentially a _lot_ of memory) by allocating leases in chunks rather - than one at a time. */ - -#define COMPACT_LEASES - - -/* local */ -#define _PATH_DHCPD_CONF "/etc/dhcp/dhcpd.conf" -#define _PATH_DHCLIENT_CONF "/etc/dhcp/dhclient.conf" diff --git a/meta/packages/dhcp/dhcp3.inc b/meta/packages/dhcp/dhcp3.inc deleted file mode 100644 index 3f68f452d2..0000000000 --- a/meta/packages/dhcp/dhcp3.inc +++ /dev/null @@ -1,53 +0,0 @@ -SECTION = "console/network" -DESCRIPTION = "Internet Software Consortium DHCP package" -HOMEPAGE = "http://www.isc.org/" - -LICENSE = "ISC" -LIC_FILES_CHKSUM = "file://LICENSE;beginline=4;md5=bb6fd41f5895b67088ebea61ad365e74" - -SRC_URI = "ftp://ftp.isc.org/isc/dhcp/dhcp-${PV}.tar.gz \ - file://init-relay file://default-relay \ - file://init-server file://default-server \ - file://dhclient.conf file://dhcpd.conf" - -inherit autotools - -TARGET_CFLAGS += "-D_GNU_SOURCE" - -do_compile() { - make RANLIB=${RANLIB} PREDEFINES='-D_PATH_DHCPD_DB=\"/var/lib/dhcp/dhcpd.leases\" \ - -D_PATH_DHCLIENT_DB=\"/var/lib/dhcp/dhclient.leases\" \ - -D_PATH_DHCLIENT_SCRIPT=\"/sbin/dhclient-script\" \ - -D_PATH_DHCPD_CONF=\"/etc/dhcp/dhcpd.conf\" \ - -D_PATH_DHCLIENT_CONF=\"/etc/dhcp/dhclient.conf\"' -} - -do_install() { - make -e DESTDIR=${D} USRMANDIR=${mandir}/man1 ADMMANDIR=${mandir}/man8 FFMANDIR=${mandir}/man5 LIBMANDIR=${mandir}/man3 LIBDIR=${libdir} INCDIR=${includedir} install - install -d ${D}${sysconfdir}/init.d - install -d ${D}${sysconfdir}/default - install -d ${D}${sysconfdir}/dhcp - install -m 0755 ${WORKDIR}/init-relay ${D}${sysconfdir}/init.d/dhcp-relay - install -m 0644 ${WORKDIR}/default-relay ${D}${sysconfdir}/default/dhcp-relay - install -m 0755 ${WORKDIR}/init-server ${D}${sysconfdir}/init.d/dhcp-server - install -m 0644 ${WORKDIR}/default-server ${D}${sysconfdir}/default/dhcp-server - install -m 0644 ${WORKDIR}/dhclient.conf ${D}${sysconfdir}/dhcp/dhclient.conf - install -m 0644 ${WORKDIR}/dhcpd.conf ${D}${sysconfdir}/dhcp/dhcpd.conf - install -d ${D}${base_sbindir}/ - mv ${D}${sbindir}/dhclient ${D}${base_sbindir}/ - install -m 0755 ${S}/client/scripts/linux ${D}${base_sbindir}/dhclient-script -} - -PACKAGES += "dhcp-server dhcp-client dhcp-relay dhcp-omshell" -FILES_${PN} = "" -FILES_dhcp-server = "${sbindir}/dhcpd ${sysconfdir}/init.d/dhcp-server ${sysconfdir}/default/dhcp-server ${sysconfdir}/dhcp/dhcpd.conf" -FILES_dhcp-relay = "${sbindir}/dhcrelay ${sysconfdir}/init.d/dhcp-relay ${sysconfdir}/default/dhcp-relay" - -FILES_dhcp-client = "${base_sbindir}/dhclient ${base_sbindir}/dhclient-script ${sysconfdir}/dhcp/dhclient.conf" -RDEPENDS_dhcp-client = "bash" - -FILES_dhcp-omshell = "${bindir}/omshell" - -CONFFILES_dhcp-server_nylon = "/etc/dhcp/dhcpd.conf" -CONFFILES_dhcp-relay_nylon = "/etc/default/dhcp-relay" -CONFFILES_dhcp-client_nylon = "/etc/dhcp/dhclient.conf" diff --git a/meta/packages/dhcp/dhcp4.inc b/meta/packages/dhcp/dhcp4.inc deleted file mode 100644 index 7652b948f0..0000000000 --- a/meta/packages/dhcp/dhcp4.inc +++ /dev/null @@ -1,57 +0,0 @@ -SECTION = "console/network" -DESCRIPTION = "Internet Software Consortium DHCP package" -HOMEPAGE = "http://www.isc.org/" - -LICENSE = "ISC" -LIC_FILES_CHKSUM = "file://LICENSE;beginline=4;md5=bb6fd41f5895b67088ebea61ad365e74" - -SRC_URI = "ftp://ftp.isc.org/isc/dhcp/dhcp-${PV}.tar.gz \ - file://site.h \ - file://init-relay file://default-relay \ - file://init-server file://default-server \ - file://dhclient.conf file://dhcpd.conf" - -inherit autotools - -TARGET_CFLAGS += "-D_GNU_SOURCE" -EXTRA_OECONF = "--with-srv-lease-file=${localstatedir}/lib/dhcp/dhcpd.leases \ - --with-srv6-lease-file=${localstatedir}/lib/dhcp/dhcpd6.leases \ - --with-cli-lease-file=${localstatedir}/lib/dhcp/dhclient.leases \ - --with-cli6-lease-file=${localstatedir}/lib/dhcp/dhclient6.leases" - -do_compile_prepend () { - cp -f ${WORKDIR}/site.h ${S}/includes -} - -do_install_append () { - install -d ${D}${sysconfdir}/init.d - install -d ${D}${sysconfdir}/default - install -d ${D}${sysconfdir}/dhcp - install -m 0755 ${WORKDIR}/init-relay ${D}${sysconfdir}/init.d/dhcp-relay - install -m 0644 ${WORKDIR}/default-relay ${D}${sysconfdir}/default/dhcp-relay - install -m 0755 ${WORKDIR}/init-server ${D}${sysconfdir}/init.d/dhcp-server - install -m 0644 ${WORKDIR}/default-server ${D}${sysconfdir}/default/dhcp-server - - rm -f ${D}${sysconfdir}/dhclient.conf - rm -f ${D}${sysconfdir}/dhcpd.conf - install -m 0644 ${WORKDIR}/dhclient.conf ${D}${sysconfdir}/dhcp/dhclient.conf - install -m 0644 ${WORKDIR}/dhcpd.conf ${D}${sysconfdir}/dhcp/dhcpd.conf - - install -d ${D}${base_sbindir}/ - mv ${D}${sbindir}/dhclient ${D}${base_sbindir}/ - install -m 0755 ${S}/client/scripts/linux ${D}${base_sbindir}/dhclient-script -} - -PACKAGES += "dhcp-server dhcp-client dhcp-relay dhcp-omshell" -FILES_${PN} = "" -FILES_dhcp-server = "${sbindir}/dhcpd ${sysconfdir}/init.d/dhcp-server ${sysconfdir}/default/dhcp-server ${sysconfdir}/dhcp/dhcpd.conf" -FILES_dhcp-relay = "${sbindir}/dhcrelay ${sysconfdir}/init.d/dhcp-relay ${sysconfdir}/default/dhcp-relay" - -FILES_dhcp-client = "${base_sbindir}/dhclient ${base_sbindir}/dhclient-script ${sysconfdir}/dhcp/dhclient.conf" -RDEPENDS_dhcp-client = "bash" - -FILES_dhcp-omshell = "${bindir}/omshell" - -CONFFILES_dhcp-server_nylon = "/etc/dhcp/dhcpd.conf" -CONFFILES_dhcp-relay_nylon = "/etc/default/dhcp-relay" -CONFFILES_dhcp-client_nylon = "/etc/dhcp/dhclient.conf" diff --git a/meta/packages/dhcp/dhcp_4.1.1-P1.bb b/meta/packages/dhcp/dhcp_4.1.1-P1.bb deleted file mode 100644 index e9759de56f..0000000000 --- a/meta/packages/dhcp/dhcp_4.1.1-P1.bb +++ /dev/null @@ -1,7 +0,0 @@ -require dhcp4.inc - -PR = "r1" - -SRC_URI += "file://fixincludes.patch \ - file://dhcp-3.0.3-dhclient-dbus.patch;striplevel=0 \ - file://fix-client-path.patch" diff --git a/meta/packages/dhcp/files/default-relay b/meta/packages/dhcp/files/default-relay deleted file mode 100644 index 59249db283..0000000000 --- a/meta/packages/dhcp/files/default-relay +++ /dev/null @@ -1,12 +0,0 @@ -# Defaults for dhcp-relay initscript -# sourced by /etc/init.d/dhcp-relay - -# What servers should the DHCP relay forward requests to? -# e.g: SERVERS="192.168.0.1" -SERVERS="" - -# On what interfaces should the DHCP relay (dhrelay) serve DHCP requests? -INTERFACES="" - -# Additional options that are passed to the DHCP relay daemon? -OPTIONS="" \ No newline at end of file diff --git a/meta/packages/dhcp/files/default-server b/meta/packages/dhcp/files/default-server deleted file mode 100644 index 0385d16992..0000000000 --- a/meta/packages/dhcp/files/default-server +++ /dev/null @@ -1,7 +0,0 @@ -# Defaults for dhcp initscript -# sourced by /etc/init.d/dhcp-server -# installed at /etc/default/dhcp-server by the maintainer scripts - -# On what interfaces should the DHCP server (dhcpd) serve DHCP requests? -# Separate multiple interfaces with spaces, e.g. "eth0 eth1". -INTERFACES="" diff --git a/meta/packages/dhcp/files/dhclient.conf b/meta/packages/dhcp/files/dhclient.conf deleted file mode 100644 index 0e6dcf96c2..0000000000 --- a/meta/packages/dhcp/files/dhclient.conf +++ /dev/null @@ -1,50 +0,0 @@ -# Configuration file for /sbin/dhclient, which is included in Debian's -# dhcp3-client package. -# -# This is a sample configuration file for dhclient. See dhclient.conf's -# man page for more information about the syntax of this file -# and a more comprehensive list of the parameters understood by -# dhclient. -# -# Normally, if the DHCP server provides reasonable information and does -# not leave anything out (like the domain name, for example), then -# few changes must be made to this file, if any. -# - -#send host-name "andare.fugue.com"; -#send dhcp-client-identifier 1:0:a0:24:ab:fb:9c; -#send dhcp-lease-time 3600; -#supersede domain-name "fugue.com home.vix.com"; -#prepend domain-name-servers 127.0.0.1; -request subnet-mask, broadcast-address, time-offset, routers, - domain-name, domain-name-servers, host-name, - netbios-name-servers, netbios-scope; -#require subnet-mask, domain-name-servers; -#timeout 60; -#retry 60; -#reboot 10; -#select-timeout 5; -#initial-interval 2; -#script "/etc/dhcp3/dhclient-script"; -#media "-link0 -link1 -link2", "link0 link1"; -#reject 192.33.137.209; - -#alias { -# interface "eth0"; -# fixed-address 192.5.5.213; -# option subnet-mask 255.255.255.255; -#} - -#lease { -# interface "eth0"; -# fixed-address 192.33.137.200; -# medium "link0 link1"; -# option host-name "andare.swiftmedia.com"; -# option subnet-mask 255.255.255.0; -# option broadcast-address 192.33.137.255; -# option routers 192.33.137.250; -# option domain-name-servers 127.0.0.1; -# renew 2 2000/1/12 00:00:01; -# rebind 2 2000/1/12 00:00:01; -# expire 2 2000/1/12 00:00:01; -#} diff --git a/meta/packages/dhcp/files/dhcpd.conf b/meta/packages/dhcp/files/dhcpd.conf deleted file mode 100644 index 0001c0f00e..0000000000 --- a/meta/packages/dhcp/files/dhcpd.conf +++ /dev/null @@ -1,108 +0,0 @@ -# -# Sample configuration file for ISC dhcpd for Debian -# -# $Id: dhcpd.conf,v 1.1.1.1 2002/05/21 00:07:44 peloy Exp $ -# - -# The ddns-updates-style parameter controls whether or not the server will -# attempt to do a DNS update when a lease is confirmed. We default to the -# behavior of the version 2 packages ('none', since DHCP v2 didn't -# have support for DDNS.) -ddns-update-style none; - -# option definitions common to all supported networks... -option domain-name "example.org"; -option domain-name-servers ns1.example.org, ns2.example.org; - -default-lease-time 600; -max-lease-time 7200; - -# If this DHCP server is the official DHCP server for the local -# network, the authoritative directive should be uncommented. -#authoritative; - -# Use this to send dhcp log messages to a different log file (you also -# have to hack syslog.conf to complete the redirection). -log-facility local7; - -# No service will be given on this subnet, but declaring it helps the -# DHCP server to understand the network topology. - -#subnet 10.152.187.0 netmask 255.255.255.0 { -#} - -# This is a very basic subnet declaration. - -#subnet 10.254.239.0 netmask 255.255.255.224 { -# range 10.254.239.10 10.254.239.20; -# option routers rtr-239-0-1.example.org, rtr-239-0-2.example.org; -#} - -# This declaration allows BOOTP clients to get dynamic addresses, -# which we don't really recommend. - -#subnet 10.254.239.32 netmask 255.255.255.224 { -# range dynamic-bootp 10.254.239.40 10.254.239.60; -# option broadcast-address 10.254.239.31; -# option routers rtr-239-32-1.example.org; -#} - -# A slightly different configuration for an internal subnet. -#subnet 10.5.5.0 netmask 255.255.255.224 { -# range 10.5.5.26 10.5.5.30; -# option domain-name-servers ns1.internal.example.org; -# option domain-name "internal.example.org"; -# option routers 10.5.5.1; -# option broadcast-address 10.5.5.31; -# default-lease-time 600; -# max-lease-time 7200; -#} - -# Hosts which require special configuration options can be listed in -# host statements. If no address is specified, the address will be -# allocated dynamically (if possible), but the host-specific information -# will still come from the host declaration. - -#host passacaglia { -# hardware ethernet 0:0:c0:5d:bd:95; -# filename "vmunix.passacaglia"; -# server-name "toccata.fugue.com"; -#} - -# Fixed IP addresses can also be specified for hosts. These addresses -# should not also be listed as being available for dynamic assignment. -# Hosts for which fixed IP addresses have been specified can boot using -# BOOTP or DHCP. Hosts for which no fixed address is specified can only -# be booted with DHCP, unless there is an address range on the subnet -# to which a BOOTP client is connected which has the dynamic-bootp flag -# set. -#host fantasia { -# hardware ethernet 08:00:07:26:c0:a5; -# fixed-address fantasia.fugue.com; -#} - -# You can declare a class of clients and then do address allocation -# based on that. The example below shows a case where all clients -# in a certain class get addresses on the 10.17.224/24 subnet, and all -# other clients get addresses on the 10.0.29/24 subnet. - -#class "foo" { -# match if substring (option vendor-class-identifier, 0, 4) = "SUNW"; -#} - -#shared-network 224-29 { -# subnet 10.17.224.0 netmask 255.255.255.0 { -# option routers rtr-224.example.org; -# } -# subnet 10.0.29.0 netmask 255.255.255.0 { -# option routers rtr-29.example.org; -# } -# pool { -# allow members of "foo"; -# range 10.17.224.10 10.17.224.250; -# } -# pool { -# deny members of "foo"; -# range 10.0.29.10 10.0.29.230; -# } -#} diff --git a/meta/packages/dhcp/files/init-relay b/meta/packages/dhcp/files/init-relay deleted file mode 100644 index 019a7e84cf..0000000000 --- a/meta/packages/dhcp/files/init-relay +++ /dev/null @@ -1,44 +0,0 @@ -#!/bin/sh -# -# $Id: dhcp3-relay,v 1.1 2004/04/16 15:41:08 ml Exp $ -# - -# It is not safe to start if we don't have a default configuration... -if [ ! -f /etc/default/dhcp-relay ]; then - echo "/etc/default/dhcp-relay does not exist! - Aborting..." - echo "create this file to fix the problem." - exit 1 -fi - -# Read init script configuration (interfaces the daemon should listen on -# and the DHCP server we should forward requests to.) -. /etc/default/dhcp-relay - -# Build command line for interfaces (will be passed to dhrelay below.) -IFCMD="" -if test "$INTERFACES" != ""; then - for I in $INTERFACES; do - IFCMD=${IFCMD}"-i "${I}" " - done -fi - -DHCRELAYPID=/var/run/dhcrelay.pid - -case "$1" in - start) - start-stop-daemon -S -x /usr/sbin/dhcrelay -- -q $OPTIONS $IFCMD $SERVERS - ;; - stop) - start-stop-daemon -K -x /usr/sbin/dhcrelay - ;; - restart | force-reload) - $0 stop - sleep 2 - $0 start - ;; - *) - echo "Usage: /etc/init.d/dhcp-relay {start|stop|restart|force-reload}" - exit 1 -esac - -exit 0 diff --git a/meta/packages/dhcp/files/init-server b/meta/packages/dhcp/files/init-server deleted file mode 100644 index 34c20852b9..0000000000 --- a/meta/packages/dhcp/files/init-server +++ /dev/null @@ -1,44 +0,0 @@ -#!/bin/sh -# -# $Id: dhcp3-server.init.d,v 1.4 2003/07/13 19:12:41 mdz Exp $ -# - -test -f /usr/sbin/dhcpd || exit 0 - -# It is not safe to start if we don't have a default configuration... -if [ ! -f /etc/default/dhcp-server ]; then - echo "/etc/default/dhcp-server does not exist! - Aborting..." - exit 0 -fi - -# Read init script configuration (so far only interfaces the daemon -# should listen on.) -. /etc/default/dhcp-server - -case "$1" in - start) - echo -n "Starting DHCP server: " - test -d /var/lib/dhcp/ || mkdir -p /var/lib/dhcp/ - test -f /var/lib/dhcp/dhcpd.leases || touch /var/lib/dhcp/dhcpd.leases - start-stop-daemon -S -x /usr/sbin/dhcpd -- -q $INTERFACES - echo "." - ;; - stop) - echo -n "Stopping DHCP server: dhcpd3" - start-stop-daemon -K -x /usr/sbin/dhcpd - echo "." - ;; - restart | force-reload) - $0 stop - sleep 2 - $0 start - if [ "$?" != "0" ]; then - exit 1 - fi - ;; - *) - echo "Usage: /etc/init.d/dhcp-server {start|stop|restart|force-reload}" - exit 1 -esac - -exit 0 diff --git a/meta/packages/diffutils/diffutils_2.8.1.bb b/meta/packages/diffutils/diffutils_2.8.1.bb deleted file mode 100644 index 86b46aafec..0000000000 --- a/meta/packages/diffutils/diffutils_2.8.1.bb +++ /dev/null @@ -1,38 +0,0 @@ -SECTION = "base" -LICENSE = "GPL" -DESCRIPTION = "Diffutils contains the GNU diff, diff3, \ -sdiff, and cmp utilities. These programs are usually \ -used for creating patch files." -PR = "r3" - -SRC_URI = "${GNU_MIRROR}/diffutils/diffutils-${PV}.tar.gz" - -inherit autotools update-alternatives gettext - -# diffutils assumes non-glibc compilation with uclibc and -# this causes it to generate its own implementations of -# standard functionality. regex.c actually breaks compilation -# because it uses __mempcpy, there are other things (TBD: -# see diffutils.mk in buildroot) -EXTRA_OECONF_linux-uclibc = "--without-included-regex" - -do_install_append () { - mv ${D}${bindir}/diff ${D}${bindir}/diff.${PN} - mv ${D}${bindir}/cmp ${D}${bindir}/cmp.${PN} -} - -ALTERNATIVE_NAME = "diff" -ALTERNATIVE_PATH = "diff.${PN}" -ALTERNATIVE_PRIORITY = "100" - -pkg_postinst_${PN} () { - -update-alternatives --install /usr/bin/cmp cmp cmp.diffutils 100 - -} - -pkg_postrm_${PN} () { - -update-alternatives --remove cmp cmp.diffutils - -} diff --git a/meta/packages/enchant/enchant_1.6.0.bb b/meta/packages/enchant/enchant_1.6.0.bb deleted file mode 100644 index 92b4686545..0000000000 --- a/meta/packages/enchant/enchant_1.6.0.bb +++ /dev/null @@ -1,22 +0,0 @@ -DESCRIPTION = "Enchant Spell checker API Library" -SECTION = "libs" -HOMEPAGE = "http://www.abisource.com/projects/enchant/" -BUGTRACKER = "http://bugzilla.abisource.com/enter_bug.cgi?product=Enchant" -LICENSE = "LGPLv2.1+" -LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=dfcbabf9131dc9a95febef6753a2958b \ - file://src/enchant.h;beginline=1;endline=29;md5=8d881caa1d37523567e1d8f726675a18" -DEPENDS = "aspell glib-2.0" -RDEPENDS = "aspell" - -inherit autotools pkgconfig - -PR = "r0" - -SRC_URI = "http://www.abisource.com/downloads/enchant/${PV}/enchant-${PV}.tar.gz" - -EXTRA_OECONF = "--with-aspell-prefix=${STAGING_DIR_HOST}${prefix} --enable-aspell --disable-binreloc" - -FILES_${PN} = "${bindir} ${libdir}/*${SOLIBS} ${datadir}/${PN} ${libdir}/${PN}/*.so" -FILES_${PN}-dev += "${libdir}/${PN}/*{SOLIBSDEV} ${libdir}/${PN}/*.la ${libdir}/${PN}/*.a" - -export CXXFLAGS += " -L${STAGING_LIBDIR} -lstdc++ " diff --git a/meta/packages/exmap-console/exmap-console.inc b/meta/packages/exmap-console/exmap-console.inc deleted file mode 100644 index efbd79fce1..0000000000 --- a/meta/packages/exmap-console/exmap-console.inc +++ /dev/null @@ -1,59 +0,0 @@ -DESCRIPTION = "Console based version of exmap, a memory usage analysis tool" -HOMEPAGE = "http://projects.o-hand.com/exmap-console" -SECTION = "devel" -LICENSE = "GPL" -DEPENDS = "virtual/kernel readline glib-2.0" - -SRC_URI = "http://projects.o-hand.com/sources/exmap-console/exmap-console-${PV}.tgz" - -TEMPPACKAGE_ARCH := "${PACKAGE_ARCH}" - -inherit module-base -inherit autotools - -PACKAGE_ARCH = "${TEMPPACKAGE_ARCH}" - -PACKAGES =+ "exmap-server kernel-module-exmap" - -FILES_exmap-console = "${bindir}/exmap ${bindir}/exmapd" -RDEPENDS_exmap-console += "kernel-module-exmap" - -FILES_exmap-server = "${bindir}/exmapserver" -RDEPENDS_exmap-server += "kernel-module-exmap" - -FILES_kernel-module-exmap = "${base_libdir}" -PACKAGE_ARCH_kernel-module-exmap = "${MACHINE_ARCH}" -RDEPENDS_kernel-module-exmap += "update-modules kernel-image-${KERNEL_VERSION}" - -S = "${WORKDIR}/exmap-console-${PV}" - -export MODULE_PATH="${D}${base_libdir}/modules/${KERNEL_VERSION}" - -do_compile() { - cd ${S}/src - make - - cd ${S}/kernel - unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS - oe_runmake KERNEL_PATH=${STAGING_KERNEL_DIR} \ - KERNEL_SRC=${STAGING_KERNEL_DIR} \ - KERNEL_VERSION=${KERNEL_VERSION} \ - CC="${KERNEL_CC}" LD="${KERNEL_LD}" \ - ${MAKE_TARGETS} -} - -do_install() { - oe_runmake 'DESTDIR=${D}' 'DEPMOD=/bin/true' install -} - -pkg_postinst_append_kernel-module-exmap () { - if [ -n "$D" ]; then - exit 1 - fi - depmod -a - update-modules || true -} - -pkg_postrm_append_kernel-module-exmap () { - update-modules || true -} diff --git a/meta/packages/exmap-console/exmap-console_0.4.1.bb b/meta/packages/exmap-console/exmap-console_0.4.1.bb deleted file mode 100644 index c76c5c3b4c..0000000000 --- a/meta/packages/exmap-console/exmap-console_0.4.1.bb +++ /dev/null @@ -1,3 +0,0 @@ -require exmap-console.inc - -PR = "r8" diff --git a/meta/packages/exmap-console/exmap-console_svn.bb b/meta/packages/exmap-console/exmap-console_svn.bb deleted file mode 100644 index ce222854e2..0000000000 --- a/meta/packages/exmap-console/exmap-console_svn.bb +++ /dev/null @@ -1,8 +0,0 @@ -require exmap-console.inc - -PV = "0.4+svnr${SRCREV}" -PR = "r5" - -SRC_URI = "svn://svn.o-hand.com/repos/misc/trunk;module=exmap-console;proto=http" - -S = "${WORKDIR}/exmap-console" diff --git a/meta/packages/farsight/farsight2_0.0.9.bb b/meta/packages/farsight/farsight2_0.0.9.bb deleted file mode 100644 index 06c85f1cf0..0000000000 --- a/meta/packages/farsight/farsight2_0.0.9.bb +++ /dev/null @@ -1,24 +0,0 @@ -DESCRIPTION = "FarSight is an audio/video conferencing framework specifically designed for Instant Messengers." -HOMEPAGE = "http://farsight.sf.net" -SRC_URI = "http://farsight.freedesktop.org/releases/farsight2/${P}.tar.gz" - -DEPENDS = "libnice glib-2.0 libxml2 zlib dbus gstreamer gst-plugins-base" - -inherit autotools -AUTOTOOLS_STAGE_PKGCONFIG = "1" - -PR = "r1" - -EXTRA_OECONF = " \ - --disable-debug \ - --disable-gtk-doc \ - --disable-python \ -" - -FILES_${PN} += "${libdir}/*/*.so" -FILES_${PN}-dev += "${libdir}/f*/*a ${libdir}/g*/*a" -FILES_${PN}-dbg += "${libdir}/*/.debug" - - - - diff --git a/meta/packages/farsight/libnice_0.0.6.bb b/meta/packages/farsight/libnice_0.0.6.bb deleted file mode 100644 index 809b691af7..0000000000 --- a/meta/packages/farsight/libnice_0.0.6.bb +++ /dev/null @@ -1,23 +0,0 @@ -DESCRIPTION = "Libnice is an implementation of the IETF's draft Interactice Connectivity Establishment standard (ICE)." -HOMEPAGE = "http://nice.freedesktop.org/wiki/" -SRC_URI = "http://nice.freedesktop.org/releases/libnice-${PV}.tar.gz" - -LICENSE = "LGPL/MPL" -DEPENDS = "glib-2.0 gstreamer" - -inherit autotools -AUTOTOOLS_STAGE_PKGCONFIG = "1" - -FILES_${PN} += "${libdir}/gstreamer-0.10/*.so" -FILES_${PN}-dev += "${libdir}/gstreamer-0.10/*a" -FILES_${PN}-dbg += "${libdir}/gstreamer-0.10/.debug" - -do_compile_append() { - for i in $(find ${S} -name "*.pc") ; do - sed -i -e s:${STAGING_DIR_TARGET}::g \ - -e s:/${TARGET_SYS}::g \ - $i - done -} - - diff --git a/meta/packages/findutils/findutils-4.2.31/gnulib-extension.patch b/meta/packages/findutils/findutils-4.2.31/gnulib-extension.patch deleted file mode 100644 index 2bc54e9290..0000000000 --- a/meta/packages/findutils/findutils-4.2.31/gnulib-extension.patch +++ /dev/null @@ -1,54 +0,0 @@ -the old AC_USE_SYSTEM_EXTENSIONS won't work with AC_GNU_SOURCE - -against 4.2.31 -07/08/2010 - qhe - -diff --git a/gnulib/m4/extensions.m4 b/gnulib/m4/extensions.m4 -index 143a9e5..0f27ceb 100644 ---- a/gnulib/m4/extensions.m4 -+++ b/gnulib/m4/extensions.m4 -@@ -12,44 +12,6 @@ - # enough in this area it's likely we'll need to redefine - # AC_USE_SYSTEM_EXTENSIONS for quite some time. - --# AC_USE_SYSTEM_EXTENSIONS --# ------------------------ --# Enable extensions on systems that normally disable them, --# typically due to standards-conformance issues. --AC_DEFUN([AC_USE_SYSTEM_EXTENSIONS], --[ -- AC_BEFORE([$0], [AC_COMPILE_IFELSE]) -- AC_BEFORE([$0], [AC_RUN_IFELSE]) -- -- AC_REQUIRE([AC_GNU_SOURCE]) -- AC_REQUIRE([AC_AIX]) -- AC_REQUIRE([AC_MINIX]) -- -- AH_VERBATIM([__EXTENSIONS__], --[/* Enable extensions on Solaris. */ --#ifndef __EXTENSIONS__ --# undef __EXTENSIONS__ --#endif --#ifndef _POSIX_PTHREAD_SEMANTICS --# undef _POSIX_PTHREAD_SEMANTICS --#endif --#ifndef _TANDEM_SOURCE --# undef _TANDEM_SOURCE --#endif]) -- AC_CACHE_CHECK([whether it is safe to define __EXTENSIONS__], -- [ac_cv_safe_to_define___extensions__], -- [AC_COMPILE_IFELSE( -- [AC_LANG_PROGRAM([ --# define __EXTENSIONS__ 1 -- AC_INCLUDES_DEFAULT])], -- [ac_cv_safe_to_define___extensions__=yes], -- [ac_cv_safe_to_define___extensions__=no])]) -- test $ac_cv_safe_to_define___extensions__ = yes && -- AC_DEFINE([__EXTENSIONS__]) -- AC_DEFINE([_POSIX_PTHREAD_SEMANTICS]) -- AC_DEFINE([_TANDEM_SOURCE]) --]) -- - # gl_USE_SYSTEM_EXTENSIONS - # ------------------------ - # Enable extensions on systems that normally disable them, diff --git a/meta/packages/findutils/findutils-4.4.2/01-27017.patch b/meta/packages/findutils/findutils-4.4.2/01-27017.patch deleted file mode 100644 index b61f67b12d..0000000000 --- a/meta/packages/findutils/findutils-4.4.2/01-27017.patch +++ /dev/null @@ -1,779 +0,0 @@ -commit af974034b68bf59337c7a384e488a518a77dfecd -Author: James Youngman -Date: Sat Jul 11 19:55:27 2009 +0100 - - Fix Savannah bug #27017: find -D opt / -fstype ext3 -print , -quit coredump. - - Fix Savannah bug #27017: find -D opt / -fstype ext3 -print , -quit - coredumps. - * find/tree.c (set_new_parent): Initialise struct - predicate->arg_text to NULL (instead of leaving it uninitialised). - (get_new_pred_noarg): Likewise. - (get_new_pred): Initialise predicate->arg_text to - "ThisShouldBeSetToSomethingElse" to make it easier to notice - bugs. - (get_new_pred_chk_op): Use get_new_pred_noarg. - (print_predicate): Use an if statement instead of - two ternary operators. - * find/util.c (insert_primary_withpred): Accept new argument, arg, - being the argument (if any) of this predicate. Pass it to - get_new_pred_chk_op. - (insert_primary): Likewise (pass arg to insert_primary_withpred). - (insert_primary_noarg): New function; calls insert_primary with - arg=NULL. - * find/parser.c (collect_arg_stat_info): Add an output parameter; - the filename from which we collected the stat information. - (parse_closeparen, parse_delete, parse_and, parse_or, - parse_comma): Use get_new_pred_noarg. - (parse_cnewer, parse_newer, parse_anewer): Use new - collect_arg_stat_info and insert_primary interface. - (parse_print, parse_prune, parse_nouser, parse_empty): Use - insert_primary_noarg. - (parse_accesscheck, parse_false): Use insert_primary_noarg. - (parse_used, parse_iname, parse_fprint, insert_fprint, - parse_fstype, parse_ilname): Use new collect_arg and - insert_primary interfaces. - (parse_ipath, parse_lname, do_parse_xmin, parse_name, parse_path, - parse_perm, parse_size, parse_user, parse_time): Use new - collect_arg and insert_primary_withpred interface. - (parse_negate, parse_openparen): Use new get_new_pred_chk_op interface. - (parse_newerXY, parse_nogroup): Use new insert_primary interface. - (insert_regex, parse_samefile): Use new insert_primary_withpred - interface. - (insert_type, insert_fprintf, new_insert_exec_ok, insert_num): Use - new insert_primary_withpred interface. - * find/defs.h (struct predicate.arg_text): make const. - Add declarations for new function get_new_pred_noarg and - insert_primary_noarg. Add 'arg' parameter to get_new_pred_chk_op - and insert_primary_withpred. - -diff --git a/ChangeLog b/ChangeLog -index 6e346b8..e8ba0f8 100644 ---- a/ChangeLog -+++ b/ChangeLog -@@ -1,0 +1,45 @@ -+2009-07-11 James Youngman -+ -+ Fix Savannah bug #27017: find -D opt / -fstype ext3 -print , -quit -+ coredumps. -+ * find/tree.c (set_new_parent): Initialise struct -+ predicate->arg_text to NULL (instead of leaving it uninitialised). -+ (get_new_pred_noarg): Likewise. -+ (get_new_pred): Initialise predicate->arg_text to -+ "ThisShouldBeSetToSomethingElse" to make it easier to notice -+ bugs. -+ (get_new_pred_chk_op): Use get_new_pred_noarg. -+ (print_predicate): Use an if statement instead of -+ two ternary operators. -+ * find/util.c (insert_primary_withpred): Accept new argument, arg, -+ being the argument (if any) of this predicate. Pass it to -+ get_new_pred_chk_op. -+ (insert_primary): Likewise (pass arg to insert_primary_withpred). -+ (insert_primary_noarg): New function; calls insert_primary with -+ arg=NULL. -+ * find/parser.c (collect_arg_stat_info): Add an output parameter; -+ the filename from which we collected the stat information. -+ (parse_closeparen, parse_delete, parse_and, parse_or, -+ parse_comma): Use get_new_pred_noarg. -+ (parse_cnewer, parse_newer, parse_anewer): Use new -+ collect_arg_stat_info and insert_primary interface. -+ (parse_print, parse_prune, parse_nouser, parse_empty): Use -+ insert_primary_noarg. -+ (parse_accesscheck, parse_false): Use insert_primary_noarg. -+ (parse_used, parse_iname, parse_fprint, insert_fprint, -+ parse_fstype, parse_ilname): Use new collect_arg and -+ insert_primary interfaces. -+ (parse_ipath, parse_lname, do_parse_xmin, parse_name, parse_path, -+ parse_perm, parse_size, parse_user, parse_time): Use new -+ collect_arg and insert_primary_withpred interface. -+ (parse_negate, parse_openparen): Use new get_new_pred_chk_op interface. -+ (parse_newerXY, parse_nogroup): Use new insert_primary interface. -+ (insert_regex, parse_samefile): Use new insert_primary_withpred -+ interface. -+ (insert_type, insert_fprintf, new_insert_exec_ok, insert_num): Use -+ new insert_primary_withpred interface. -+ * find/defs.h (struct predicate.arg_text): make const. -+ Add declarations for new function get_new_pred_noarg and -+ insert_primary_noarg. Add 'arg' parameter to get_new_pred_chk_op -+ and insert_primary_withpred. -+ -diff --git a/find/defs.h b/find/defs.h -index 1708d83..4539fd9 100644 ---- a/find/defs.h -+++ b/find/defs.h -@@ -297,7 +297,7 @@ struct predicate - boolean artificial; - - /* The raw text of the argument of this predicate. */ -- char *arg_text; -+ const char *arg_text; - - /* Information needed by the predicate processor. - Next to each member are listed the predicates that use it. */ -@@ -480,13 +480,16 @@ void show_success_rates(const struct predicate *node); - /* tree.c */ - struct predicate * build_expression_tree PARAMS((int argc, char *argv[], int end_of_leading_options)); - struct predicate * get_eval_tree PARAMS((void)); -+struct predicate *get_new_pred_noarg (const struct parser_table *entry); - struct predicate *get_new_pred PARAMS((const struct parser_table *entry)); --struct predicate *get_new_pred_chk_op PARAMS((const struct parser_table *entry)); -+struct predicate *get_new_pred_chk_op PARAMS((const struct parser_table *entry, -+ const char *arg)); - float calculate_derived_rates PARAMS((struct predicate *p)); - - /* util.c */ --struct predicate *insert_primary PARAMS((const struct parser_table *entry)); --struct predicate *insert_primary_withpred PARAMS((const struct parser_table *entry, PRED_FUNC fptr)); -+struct predicate *insert_primary PARAMS((const struct parser_table *entry, const char *arg)); -+struct predicate *insert_primary_noarg PARAMS((const struct parser_table *entry)); -+struct predicate *insert_primary_withpred PARAMS((const struct parser_table *entry, PRED_FUNC fptr, const char *arg)); - void usage PARAMS((FILE *fp, int status, char *msg)); - extern boolean check_nofollow(void); - void complete_pending_execs(struct predicate *p); -diff --git a/find/parser.c b/find/parser.c -index 534b670..2e6b989 100644 ---- a/find/parser.c -+++ b/find/parser.c -@@ -640,11 +640,13 @@ collect_arg(char **argv, int *arg_ptr, const char **collected_arg) - } - - static boolean --collect_arg_stat_info(char **argv, int *arg_ptr, struct stat *p) -+collect_arg_stat_info(char **argv, int *arg_ptr, struct stat *p, -+ const char **argument) - { - const char *filename; - if (collect_arg(argv, arg_ptr, &filename)) - { -+ *argument = filename; - if (0 == (options.xstat)(filename, p)) - { - return true; -@@ -656,6 +658,7 @@ collect_arg_stat_info(char **argv, int *arg_ptr, struct stat *p) - } - else - { -+ *argument = NULL; - return false; - } - } -@@ -679,7 +682,7 @@ parse_and (const struct parser_table* entry, char **argv, int *arg_ptr) - (void) argv; - (void) arg_ptr; - -- our_pred = get_new_pred (entry); -+ our_pred = get_new_pred_noarg (entry); - our_pred->pred_func = pred_and; - our_pred->p_type = BI_OP; - our_pred->p_prec = AND_PREC; -@@ -691,11 +694,12 @@ static boolean - parse_anewer (const struct parser_table* entry, char **argv, int *arg_ptr) - { - struct stat stat_newer; -+ const char *arg; - - set_stat_placeholders(&stat_newer); -- if (collect_arg_stat_info(argv, arg_ptr, &stat_newer)) -+ if (collect_arg_stat_info(argv, arg_ptr, &stat_newer, &arg)) - { -- struct predicate *our_pred = insert_primary (entry); -+ struct predicate *our_pred = insert_primary (entry, arg); - our_pred->args.reftime.xval = XVAL_ATIME; - our_pred->args.reftime.ts = get_stat_mtime(&stat_newer); - our_pred->args.reftime.kind = COMP_GT; -@@ -713,7 +717,7 @@ parse_closeparen (const struct parser_table* entry, char **argv, int *arg_ptr) - (void) argv; - (void) arg_ptr; - -- our_pred = get_new_pred (entry); -+ our_pred = get_new_pred_noarg (entry); - our_pred->pred_func = pred_closeparen; - our_pred->p_type = CLOSE_PAREN; - our_pred->p_prec = NO_PREC; -@@ -725,11 +729,12 @@ static boolean - parse_cnewer (const struct parser_table* entry, char **argv, int *arg_ptr) - { - struct stat stat_newer; -+ const char *arg; - - set_stat_placeholders(&stat_newer); -- if (collect_arg_stat_info(argv, arg_ptr, &stat_newer)) -+ if (collect_arg_stat_info(argv, arg_ptr, &stat_newer, &arg)) - { -- struct predicate *our_pred = insert_primary (entry); -+ struct predicate *our_pred = insert_primary (entry, arg); - our_pred->args.reftime.xval = XVAL_CTIME; /* like -newercm */ - our_pred->args.reftime.ts = get_stat_mtime(&stat_newer); - our_pred->args.reftime.kind = COMP_GT; -@@ -747,7 +752,7 @@ parse_comma (const struct parser_table* entry, char **argv, int *arg_ptr) - (void) argv; - (void) arg_ptr; - -- our_pred = get_new_pred (entry); -+ our_pred = get_new_pred_noarg (entry); - our_pred->pred_func = pred_comma; - our_pred->p_type = BI_OP; - our_pred->p_prec = COMMA_PREC; -@@ -786,7 +791,7 @@ parse_delete (const struct parser_table* entry, char *argv[], int *arg_ptr) - (void) argv; - (void) arg_ptr; - -- our_pred = insert_primary (entry); -+ our_pred = insert_primary_noarg (entry); - our_pred->side_effects = our_pred->no_default_print = true; - /* -delete implies -depth */ - options.do_dir_first = false; -@@ -831,7 +836,7 @@ parse_empty (const struct parser_table* entry, char **argv, int *arg_ptr) - (void) argv; - (void) arg_ptr; - -- our_pred = insert_primary (entry); -+ our_pred = insert_primary_noarg (entry); - our_pred->est_success_rate = 0.01f; /* assume 1% of files are empty. */ - return true; - } -@@ -856,7 +861,7 @@ parse_false (const struct parser_table* entry, char **argv, int *arg_ptr) - (void) argv; - (void) arg_ptr; - -- our_pred = insert_primary (entry); -+ our_pred = insert_primary_noarg (entry); - our_pred->need_stat = our_pred->need_type = false; - our_pred->side_effects = our_pred->no_default_print = false; - our_pred->est_success_rate = 0.0f; -@@ -866,7 +871,7 @@ parse_false (const struct parser_table* entry, char **argv, int *arg_ptr) - static boolean - insert_fls (const struct parser_table* entry, const char *filename) - { -- struct predicate *our_pred = insert_primary (entry); -+ struct predicate *our_pred = insert_primary_noarg (entry); - if (filename) - open_output_file (filename, &our_pred->args.printf_vec); - else -@@ -899,7 +904,7 @@ parse_fprint (const struct parser_table* entry, char **argv, int *arg_ptr) - const char *filename; - if (collect_arg(argv, arg_ptr, &filename)) - { -- our_pred = insert_primary (entry); -+ our_pred = insert_primary (entry, filename); - open_output_file (filename, &our_pred->args.printf_vec); - our_pred->side_effects = our_pred->no_default_print = true; - our_pred->need_stat = our_pred->need_type = false; -@@ -915,7 +920,7 @@ parse_fprint (const struct parser_table* entry, char **argv, int *arg_ptr) - static boolean - insert_fprint(const struct parser_table* entry, const char *filename) - { -- struct predicate *our_pred = insert_primary (entry); -+ struct predicate *our_pred = insert_primary (entry, filename); - if (filename) - open_output_file (filename, &our_pred->args.printf_vec); - else -@@ -960,7 +965,7 @@ parse_fstype (const struct parser_table* entry, char **argv, int *arg_ptr) - const char *typename; - if (collect_arg(argv, arg_ptr, &typename)) - { -- struct predicate *our_pred = insert_primary (entry); -+ struct predicate *our_pred = insert_primary (entry, typename); - our_pred->args.str = typename; - - /* This is an expensive operation, so although there are -@@ -1090,7 +1095,7 @@ parse_group (const struct parser_table* entry, char **argv, int *arg_ptr) - return false; - } - } -- our_pred = insert_primary (entry); -+ our_pred = insert_primary (entry, groupname); - our_pred->args.gid = gid; - our_pred->est_success_rate = (our_pred->args.numinfo.l_val < 100) ? 0.99 : 0.2; - return true; -@@ -1160,7 +1165,7 @@ parse_ilname (const struct parser_table* entry, char **argv, int *arg_ptr) - const char *name; - if (collect_arg(argv, arg_ptr, &name)) - { -- struct predicate *our_pred = insert_primary (entry); -+ struct predicate *our_pred = insert_primary (entry, name); - our_pred->args.str = name; - /* Use the generic glob pattern estimator to figure out how many - * links will match, but bear in mind that most files won't be links. -@@ -1227,7 +1232,7 @@ parse_iname (const struct parser_table* entry, char **argv, int *arg_ptr) - { - if (check_name_arg("-iname", name)) - { -- struct predicate *our_pred = insert_primary (entry); -+ struct predicate *our_pred = insert_primary (entry, name); - our_pred->need_stat = our_pred->need_type = false; - our_pred->args.str = name; - our_pred->est_success_rate = estimate_pattern_match_rate(name, 0); -@@ -1268,7 +1273,7 @@ parse_ipath (const struct parser_table* entry, char **argv, int *arg_ptr) - fnmatch_sanitycheck (); - if (collect_arg (argv, arg_ptr, &name)) - { -- struct predicate *our_pred = insert_primary_withpred (entry, pred_ipath); -+ struct predicate *our_pred = insert_primary_withpred (entry, pred_ipath, name); - our_pred->need_stat = our_pred->need_type = false; - our_pred->args.str = name; - our_pred->est_success_rate = estimate_pattern_match_rate (name, 0); -@@ -1316,7 +1321,7 @@ parse_lname (const struct parser_table* entry, char **argv, int *arg_ptr) - fnmatch_sanitycheck(); - if (collect_arg(argv, arg_ptr, &name)) - { -- struct predicate *our_pred = insert_primary (entry); -+ struct predicate *our_pred = insert_primary (entry, name); - our_pred->args.str = name; - our_pred->est_success_rate = 0.1 * estimate_pattern_match_rate(name, 0); - return true; -@@ -1391,7 +1396,7 @@ do_parse_xmin (const struct parser_table* entry, - "arithmetic overflow while converting %s " - "minutes to a number of seconds")) - { -- struct predicate *our_pred = insert_primary (entry); -+ struct predicate *our_pred = insert_primary (entry, minutes); - our_pred->args.reftime = tval; - our_pred->est_success_rate = estimate_timestamp_success_rate(tval.ts.tv_sec); - return true; -@@ -1427,7 +1432,7 @@ parse_name (const struct parser_table* entry, char **argv, int *arg_ptr) - fnmatch_sanitycheck(); - if (check_name_arg("-name", name)) - { -- struct predicate *our_pred = insert_primary (entry); -+ struct predicate *our_pred = insert_primary (entry, name); - our_pred->need_stat = our_pred->need_type = false; - our_pred->args.str = name; - our_pred->est_success_rate = estimate_pattern_match_rate(name, 0); -@@ -1445,7 +1450,7 @@ parse_negate (const struct parser_table* entry, char **argv, int *arg_ptr) - (void) &argv; - (void) &arg_ptr; - -- our_pred = get_new_pred_chk_op (entry); -+ our_pred = get_new_pred_chk_op (entry, NULL); - our_pred->pred_func = pred_negate; - our_pred->p_type = UNI_OP; - our_pred->p_prec = NEGATE_PREC; -@@ -1458,11 +1463,12 @@ parse_newer (const struct parser_table* entry, char **argv, int *arg_ptr) - { - struct predicate *our_pred; - struct stat stat_newer; -+ const char *arg; - - set_stat_placeholders(&stat_newer); -- if (collect_arg_stat_info(argv, arg_ptr, &stat_newer)) -+ if (collect_arg_stat_info(argv, arg_ptr, &stat_newer, &arg)) - { -- our_pred = insert_primary (entry); -+ our_pred = insert_primary (entry, arg); - our_pred->args.reftime.ts = get_stat_mtime(&stat_newer); - our_pred->args.reftime.xval = XVAL_MTIME; - our_pred->args.reftime.kind = COMP_GT; -@@ -1530,7 +1536,7 @@ parse_newerXY (const struct parser_table* entry, char **argv, int *arg_ptr) - (*arg_ptr)++; - } - -- our_pred = insert_primary (entry); -+ our_pred = insert_primary (entry, argv[*arg_ptr]); - - - switch (x) -@@ -1623,7 +1629,7 @@ parse_nogroup (const struct parser_table* entry, char **argv, int *arg_ptr) - (void) &argv; - (void) &arg_ptr; - -- our_pred = insert_primary (entry); -+ our_pred = insert_primary (entry, NULL); - our_pred->est_success_rate = 1e-4; - #ifdef CACHE_IDS - if (gid_unused == NULL) -@@ -1660,7 +1666,7 @@ parse_nouser (const struct parser_table* entry, char **argv, int *arg_ptr) - (void) arg_ptr; - - -- our_pred = insert_primary (entry); -+ our_pred = insert_primary_noarg (entry); - our_pred->est_success_rate = 1e-3; - #ifdef CACHE_IDS - if (uid_unused == NULL) -@@ -1716,7 +1722,7 @@ parse_openparen (const struct parser_table* entry, char **argv, int *arg_ptr) - (void) argv; - (void) arg_ptr; - -- our_pred = get_new_pred_chk_op (entry); -+ our_pred = get_new_pred_chk_op (entry, NULL); - our_pred->pred_func = pred_openparen; - our_pred->p_type = OPEN_PAREN; - our_pred->p_prec = NO_PREC; -@@ -1732,7 +1738,7 @@ parse_or (const struct parser_table* entry, char **argv, int *arg_ptr) - (void) argv; - (void) arg_ptr; - -- our_pred = get_new_pred (entry); -+ our_pred = get_new_pred_noarg (entry); - our_pred->pred_func = pred_or; - our_pred->p_type = BI_OP; - our_pred->p_prec = OR_PREC; -@@ -1756,7 +1762,7 @@ parse_path (const struct parser_table* entry, char **argv, int *arg_ptr) - const char *name; - if (collect_arg(argv, arg_ptr, &name)) - { -- struct predicate *our_pred = insert_primary_withpred (entry, pred_path); -+ struct predicate *our_pred = insert_primary_withpred (entry, pred_path, name); - our_pred->need_stat = our_pred->need_type = false; - our_pred->args.str = name; - our_pred->est_success_rate = estimate_pattern_match_rate (name, 0); -@@ -1894,7 +1900,7 @@ parse_perm (const struct parser_table* entry, char **argv, int *arg_ptr) - rate = 0.9986; /* probably matches anything but a broken symlink */ - } - -- our_pred = insert_primary (entry); -+ our_pred = insert_primary (entry, perm_expr); - our_pred->est_success_rate = rate; - if (havekind) - { -@@ -1928,7 +1934,7 @@ parse_print (const struct parser_table* entry, char **argv, int *arg_ptr) - (void) argv; - (void) arg_ptr; - -- our_pred = insert_primary (entry); -+ our_pred = insert_primary_noarg (entry); - /* -print has the side effect of printing. This prevents us - from doing undesired multiple printing when the user has - already specified -print. */ -@@ -1981,7 +1987,7 @@ parse_prune (const struct parser_table* entry, char **argv, int *arg_ptr) - (void) argv; - (void) arg_ptr; - -- our_pred = insert_primary (entry); -+ our_pred = insert_primary_noarg (entry); - if (options.do_dir_first == false) - our_pred->need_stat = our_pred->need_type = false; - /* -prune has a side effect that it does not descend into -@@ -1994,7 +2000,7 @@ parse_prune (const struct parser_table* entry, char **argv, int *arg_ptr) - static boolean - parse_quit (const struct parser_table* entry, char **argv, int *arg_ptr) - { -- struct predicate *our_pred = insert_primary (entry); -+ struct predicate *our_pred = insert_primary_noarg (entry); - (void) argv; - (void) arg_ptr; - our_pred->need_stat = our_pred->need_type = false; -@@ -2036,7 +2042,7 @@ insert_regex (char **argv, - { - struct re_pattern_buffer *re; - const char *error_message; -- struct predicate *our_pred = insert_primary_withpred (entry, pred_regex); -+ struct predicate *our_pred = insert_primary_withpred (entry, pred_regex, rx); - our_pred->need_stat = our_pred->need_type = false; - re = xmalloc (sizeof (struct re_pattern_buffer)); - our_pred->args.regex = re; -@@ -2061,6 +2067,7 @@ static boolean - parse_size (const struct parser_table* entry, char **argv, int *arg_ptr) - { - struct predicate *our_pred; -+ char *arg; - uintmax_t num; - char suffix; - enum comparison_type c_type; -@@ -2073,42 +2080,43 @@ parse_size (const struct parser_table* entry, char **argv, int *arg_ptr) - */ - if ((argv == NULL) || (argv[*arg_ptr] == NULL)) - return false; -+ arg = argv[*arg_ptr]; - -- len = strlen (argv[*arg_ptr]); -+ len = strlen (arg); - if (len == 0) - error (1, 0, _("invalid null argument to -size")); - -- suffix = argv[*arg_ptr][len - 1]; -+ suffix = arg[len - 1]; - switch (suffix) - { - case 'b': - blksize = 512; -- argv[*arg_ptr][len - 1] = '\0'; -+ arg[len - 1] = '\0'; - break; - - case 'c': - blksize = 1; -- argv[*arg_ptr][len - 1] = '\0'; -+ arg[len - 1] = '\0'; - break; - - case 'k': - blksize = 1024; -- argv[*arg_ptr][len - 1] = '\0'; -+ arg[len - 1] = '\0'; - break; - - case 'M': /* Megabytes */ - blksize = 1024*1024; -- argv[*arg_ptr][len - 1] = '\0'; -+ arg[len - 1] = '\0'; - break; - - case 'G': /* Gigabytes */ - blksize = 1024*1024*1024; -- argv[*arg_ptr][len - 1] = '\0'; -+ arg[len - 1] = '\0'; - break; - - case 'w': - blksize = 2; -- argv[*arg_ptr][len - 1] = '\0'; -+ arg[len - 1] = '\0'; - break; - - case '0': -@@ -2127,14 +2135,14 @@ parse_size (const struct parser_table* entry, char **argv, int *arg_ptr) - error (1, 0, _("invalid -size type `%c'"), argv[*arg_ptr][len - 1]); - } - /* TODO: accept fractional megabytes etc. ? */ -- if (!get_num (argv[*arg_ptr], &num, &c_type)) -+ if (!get_num (arg, &num, &c_type)) - { - error(1, 0, - _("Invalid argument `%s%c' to -size"), -- argv[*arg_ptr], (int)suffix); -+ arg, (int)suffix); - return false; - } -- our_pred = insert_primary (entry); -+our_pred = insert_primary (entry, arg); - our_pred->args.size.kind = c_type; - our_pred->args.size.blocksize = blksize; - our_pred->args.size.size = num; -@@ -2162,9 +2170,10 @@ parse_samefile (const struct parser_table* entry, char **argv, int *arg_ptr) - struct predicate *our_pred; - struct stat st, fst; - int fd, openflags; -+ const char *filename; - - set_stat_placeholders(&st); -- if (!collect_arg_stat_info(argv, arg_ptr, &st)) -+ if (!collect_arg_stat_info(argv, arg_ptr, &st, &filename)) - return false; - - set_stat_placeholders(&fst); -@@ -2289,7 +2298,7 @@ parse_samefile (const struct parser_table* entry, char **argv, int *arg_ptr) - } - } - -- our_pred = insert_primary (entry); -+ our_pred = insert_primary (entry, filename); - our_pred->args.samefileid.ino = st.st_ino; - our_pred->args.samefileid.dev = st.st_dev; - our_pred->args.samefileid.fd = fd; -@@ -2350,7 +2359,7 @@ parse_true (const struct parser_table* entry, char **argv, int *arg_ptr) - (void) argv; - (void) arg_ptr; - -- our_pred = insert_primary (entry); -+ our_pred = insert_primary_noarg (entry); - our_pred->need_stat = our_pred->need_type = false; - our_pred->est_success_rate = 1.0f; - return true; -@@ -2369,7 +2378,7 @@ parse_accesscheck (const struct parser_table* entry, char **argv, int *arg_ptr) - struct predicate *our_pred; - (void) argv; - (void) arg_ptr; -- our_pred = insert_primary (entry); -+ our_pred = insert_primary_noarg (entry); - our_pred->need_stat = our_pred->need_type = false; - our_pred->side_effects = our_pred->no_default_print = false; - if (pred_is(our_pred, pred_executable)) -@@ -2414,7 +2423,7 @@ parse_used (const struct parser_table* entry, char **argv, int *arg_ptr) - struct timespec zero = {0,0}; - if (get_relative_timestamp(offset_str, &tval, zero, DAYSECS, errmsg)) - { -- our_pred = insert_primary (entry); -+ our_pred = insert_primary (entry, offset_str); - our_pred->args.reftime = tval; - our_pred->est_success_rate = estimate_file_age_success_rate(tval.ts.tv_sec / DAYSECS); - return true; -@@ -2472,7 +2481,7 @@ parse_user (const struct parser_table* entry, char **argv, int *arg_ptr) - return false; - } - } -- our_pred = insert_primary (entry); -+ our_pred = insert_primary (entry, username); - our_pred->args.uid = uid; - our_pred->est_success_rate = (our_pred->args.uid < 100) ? 0.99 : 0.2; - return true; -@@ -2650,7 +2659,7 @@ insert_type (char **argv, int *arg_ptr, - error(1, 0, _("Unknown argument to -type: %c"), (*typeletter)); - return false; - } -- our_pred = insert_primary_withpred (entry, which_pred); -+ our_pred = insert_primary_withpred (entry, which_pred, typeletter); - our_pred->est_success_rate = rate; - - /* Figure out if we will need to stat the file, because if we don't -@@ -2706,7 +2715,7 @@ insert_fprintf (struct format_val *vec, - struct segment **segmentp; /* Address of current segment. */ - struct predicate *our_pred; - -- our_pred = insert_primary_withpred (entry, func); -+ our_pred = insert_primary_withpred (entry, func, format_const); - our_pred->side_effects = our_pred->no_default_print = true; - our_pred->args.printf_vec = *vec; - our_pred->need_type = false; -@@ -3045,7 +3054,7 @@ new_insert_exec_ok (const char *action, - if ((argv == NULL) || (argv[*arg_ptr] == NULL)) - return false; - -- our_pred = insert_primary_withpred (entry, func); -+ our_pred = insert_primary_withpred (entry, func, "(some -exec* arguments)"); - our_pred->side_effects = our_pred->no_default_print = true; - our_pred->need_type = our_pred->need_stat = false; - -@@ -3374,7 +3383,7 @@ parse_time (const struct parser_table* entry, char *argv[], int *arg_ptr) - if (!get_relative_timestamp(timearg, &tval, origin, DAYSECS, errmsg)) - return false; - -- our_pred = insert_primary (entry); -+ our_pred = insert_primary (entry, orig_timearg); - our_pred->args.reftime = tval; - our_pred->est_success_rate = estimate_timestamp_success_rate(tval.ts.tv_sec); - -@@ -3487,7 +3496,7 @@ insert_num (char **argv, int *arg_ptr, const struct parser_table *entry) - - if (get_num (numstr, &num, &c_type)) - { -- struct predicate *our_pred = insert_primary (entry); -+ struct predicate *our_pred = insert_primary (entry, numstr); - our_pred->args.numinfo.kind = c_type; - our_pred->args.numinfo.l_val = num; - -diff --git a/find/tree.c b/find/tree.c -index 7420c60..60a0601 100644 ---- a/find/tree.c -+++ b/find/tree.c -@@ -269,10 +269,14 @@ predicate_is_cost_free(const struct predicate *p) - /* Prints a predicate */ - void print_predicate(FILE *fp, const struct predicate *p) - { -- fprintf (fp, "%s%s%s", -- p->p_name, -- p->arg_text ? " " : "", -- p->arg_text ? p->arg_text : ""); -+ if (p->arg_text) -+ { -+ fprintf (fp, "%s %s", p->p_name, p->arg_text); -+ } -+ else -+ { -+ fprintf (fp, "%s", p->p_name); -+ } - } - - -@@ -832,7 +836,8 @@ set_new_parent (struct predicate *curr, enum predicate_precedence high_prec, str - new_parent->need_stat = false; - new_parent->need_type = false; - new_parent->p_cost = NeedsNothing; -- -+ new_parent->arg_text = NULL; -+ - switch (high_prec) - { - case COMMA_PREC: -@@ -1393,6 +1398,18 @@ init_pred_perf(struct predicate *pred) - p->visits = p->successes = 0; - } - -+ -+struct predicate * -+get_new_pred_noarg (const struct parser_table *entry) -+{ -+ struct predicate *p = get_new_pred(entry); -+ if (p) -+ { -+ p->arg_text = NULL; -+ } -+ return p; -+} -+ - - /* Return a pointer to a new predicate structure, which has been - linked in as the last one in the predicates list. -@@ -1433,6 +1450,8 @@ get_new_pred (const struct parser_table *entry) - last_pred->no_default_print = false; - last_pred->need_stat = true; - last_pred->need_type = true; -+ last_pred->p_cost = NeedsUnknown; -+ last_pred->arg_text = "ThisShouldBeSetToSomethingElse"; - last_pred->args.str = NULL; - last_pred->pred_next = NULL; - last_pred->pred_left = NULL; -@@ -1449,7 +1468,8 @@ get_new_pred (const struct parser_table *entry) - predicate is an operator. If it isn't, the AND operator is inserted. */ - - struct predicate * --get_new_pred_chk_op (const struct parser_table *entry) -+get_new_pred_chk_op (const struct parser_table *entry, -+ const char *arg) - { - struct predicate *new_pred; - static const struct parser_table *entry_and = NULL; -@@ -1471,13 +1491,14 @@ get_new_pred_chk_op (const struct parser_table *entry) - case PRIMARY_TYPE: - case CLOSE_PAREN: - /* We need to interpose the and operator. */ -- new_pred = get_new_pred (entry_and); -+ new_pred = get_new_pred_noarg (entry_and); - new_pred->pred_func = pred_and; - new_pred->p_name = "-a"; - new_pred->p_type = BI_OP; - new_pred->p_prec = AND_PREC; - new_pred->need_stat = false; - new_pred->need_type = false; -+ new_pred->arg_text = NULL; - new_pred->args.str = NULL; - new_pred->side_effects = false; - new_pred->no_default_print = false; -@@ -1488,6 +1509,7 @@ get_new_pred_chk_op (const struct parser_table *entry) - } - - new_pred = get_new_pred (entry); -+ new_pred->arg_text = arg; - new_pred->parser_entry = entry; - return new_pred; - } -diff --git a/find/util.c b/find/util.c -index a06eada..cc9a3eb 100644 ---- a/find/util.c -+++ b/find/util.c -@@ -89,11 +89,13 @@ static struct debug_option_assoc debugassoc[] = - operator. */ - - struct predicate * --insert_primary_withpred (const struct parser_table *entry, PRED_FUNC pred_func) -+insert_primary_withpred (const struct parser_table *entry, -+ PRED_FUNC pred_func, -+ const char *arg) - { - struct predicate *new_pred; - -- new_pred = get_new_pred_chk_op (entry); -+ new_pred = get_new_pred_chk_op (entry, arg); - new_pred->pred_func = pred_func; - new_pred->p_name = entry->parser_name; - new_pred->args.str = NULL; -@@ -118,10 +120,16 @@ insert_primary_withpred (const struct parser_table *entry, PRED_FUNC pred_func) - either not there at all (we are the very first node) or is an - operator. */ - struct predicate * --insert_primary (const struct parser_table *entry) -+insert_primary (const struct parser_table *entry, const char *arg) - { - assert (entry->pred_func != NULL); -- return insert_primary_withpred(entry, entry->pred_func); -+ return insert_primary_withpred(entry, entry->pred_func, arg); -+} -+ -+struct predicate * -+insert_primary_noarg (const struct parser_table *entry) -+{ -+ return insert_primary(entry, NULL); - } - - diff --git a/meta/packages/findutils/findutils-4.4.2/02-28824.patch b/meta/packages/findutils/findutils-4.4.2/02-28824.patch deleted file mode 100644 index 3469712d90..0000000000 --- a/meta/packages/findutils/findutils-4.4.2/02-28824.patch +++ /dev/null @@ -1,292 +0,0 @@ -commit 76ed377d6d3e4a83a00cabd401f751b37ecd1e7b -Author: James Youngman -Date: Sat Feb 20 13:11:45 2010 +0000 - - Fix Savannah bug# 28824: "-ctime x" yields "missing argument to `-ctime'". - - * find/parser.c (parse_fls): If the argument is invalid, reverse - the change that collect_arg() made to *arg_ptr (that is, don't - consume the argument). - (parse_fprint0): Likewise. - (parse_gid): Likewise. - (parse_group): Likewise. - (parse_inum): Likewise. - (parse_links): Likewise. - (do_parse_xmin): Likewise. - (parse_name): Likewise. - (parse_printf): Likewise. - (parse_uid): Likewise. - (parse_used): Likewise. - (parse_time): Likewise. - - Signed-off-by: James Youngman - -diff --git a/ChangeLog b/ChangeLog -index d0ce1fe..13539a4 100644 ---- a/ChangeLog -+++ b/ChangeLog -@@ -1,0 +1,19 @@ -+2010-02-20 James Youngman -+ -+ Fix Savannah bug# 28824: "-ctime x" yields "missing argument to -+ `-ctime'". -+ * find/parser.c (parse_fls): If the argument is invalid, reverse -+ the change that collect_arg() made to *arg_ptr (that is, don't -+ consume the argument). -+ (parse_fprint0): Likewise. -+ (parse_gid): Likewise. -+ (parse_group): Likewise. -+ (parse_inum): Likewise. -+ (parse_links): Likewise. -+ (do_parse_xmin): Likewise. -+ (parse_name): Likewise. -+ (parse_printf): Likewise. -+ (parse_uid): Likewise. -+ (parse_used): Likewise. -+ (parse_time): Likewise. -+ -diff --git a/NEWS b/NEWS -index 5394311..4e910df 100644 ---- a/NEWS -+++ b/NEWS -@@ -4,5 +4,8 @@ GNU findutils NEWS - User visible changes. -*- outline -*- (allout) - - ** Bug Fixes - -+#28824: Corrected error message for "-ctime x". -+ Likewise for -gid, -inum, -links, -mmin, -cmin, -amin, -+ -uid, -used, -atime, -mtime, -ctime. - #26537: find -prune now makes sure it has valid stat() information. - -diff --git a/find/parser.c b/find/parser.c -index 2e6b989..08758ee 100644 ---- a/find/parser.c -+++ b/find/parser.c -@@ -886,8 +886,14 @@ static boolean - parse_fls (const struct parser_table* entry, char **argv, int *arg_ptr) - { - const char *filename; -- return collect_arg(argv, arg_ptr, &filename) -- && insert_fls(entry, filename); -+ if (collect_arg(argv, arg_ptr, &filename)) -+ { -+ if (insert_fls(entry, filename)) -+ return true; -+ else -+ --*arg_ptr; /* don't consume the invalid arg. */ -+ } -+ return false; - } - - static boolean -@@ -937,9 +943,13 @@ parse_fprint0 (const struct parser_table* entry, char **argv, int *arg_ptr) - { - const char *filename; - if (collect_arg(argv, arg_ptr, &filename)) -- return insert_fprint(entry, filename); -- else -- return false; -+ { -+ if (insert_fprint(entry, filename)) -+ return true; -+ else -+ --*arg_ptr; /* don't consume the bad arg. */ -+ } -+ return false; - } - - static float estimate_fstype_success_rate(const char *fsname) -@@ -993,6 +1003,7 @@ parse_gid (const struct parser_table* entry, char **argv, int *arg_ptr) - } - else - { -+ --*arg_ptr; /* don't consume the invalid argument. */ - return false; - } - } -@@ -1049,6 +1060,7 @@ static boolean - parse_group (const struct parser_table* entry, char **argv, int *arg_ptr) - { - const char *groupname; -+ const int saved_argc = *arg_ptr; - - if (collect_arg(argv, arg_ptr, &groupname)) - { -@@ -1077,6 +1089,7 @@ parse_group (const struct parser_table* entry, char **argv, int *arg_ptr) - "because it has the unexpected suffix %s"), - quotearg_n_style(0, options.err_quoting_style, groupname), - quotearg_n_style(1, options.err_quoting_style, groupname+gid_len)); -+ *arg_ptr = saved_argc; /* don't consume the invalid argument. */ - return false; - } - } -@@ -1092,6 +1105,7 @@ parse_group (const struct parser_table* entry, char **argv, int *arg_ptr) - { - error(1, 0, _("argument to -group is empty, but should be a group name")); - } -+ *arg_ptr = saved_argc; /* don't consume the invalid argument. */ - return false; - } - } -@@ -1256,6 +1270,7 @@ parse_inum (const struct parser_table* entry, char **argv, int *arg_ptr) - } - else - { -+ --*arg_ptr; /* don't consume the invalid argument. */ - return false; - } - } -@@ -1310,6 +1325,7 @@ parse_links (const struct parser_table* entry, char **argv, int *arg_ptr) - } - else - { -+ --*arg_ptr; /* don't consume the invalid argument. */ - return false; - } - } -@@ -1358,6 +1374,7 @@ insert_depthspec(const struct parser_table* entry, char **argv, int *arg_ptr, - error(1, 0, _("Expected a positive decimal integer argument to %s, but got %s"), - predicate, - quotearg_n_style(0, options.err_quoting_style, depthstr)); -+ /* NOTREACHED */ - return false; - } - /* missing argument */ -@@ -1385,6 +1402,7 @@ do_parse_xmin (const struct parser_table* entry, - enum xval xv) - { - const char *minutes; -+ const int saved_argc = *arg_ptr; - - if (collect_arg(argv, arg_ptr, &minutes)) - { -@@ -1401,6 +1419,11 @@ do_parse_xmin (const struct parser_table* entry, - our_pred->est_success_rate = estimate_timestamp_success_rate(tval.ts.tv_sec); - return true; - } -+ else -+ { -+ /* Don't consume the invalid argument. */ -+ *arg_ptr = saved_argc; -+ } - } - return false; - } -@@ -1427,6 +1450,8 @@ static boolean - parse_name (const struct parser_table* entry, char **argv, int *arg_ptr) - { - const char *name; -+ const int saved_argc = *arg_ptr; -+ - if (collect_arg(argv, arg_ptr, &name)) - { - fnmatch_sanitycheck(); -@@ -1438,6 +1463,10 @@ parse_name (const struct parser_table* entry, char **argv, int *arg_ptr) - our_pred->est_success_rate = estimate_pattern_match_rate(name, 0); - return true; - } -+ else -+ { -+ *arg_ptr = saved_argc; /* don't consume the invalid argument. */ -+ } - } - return false; - } -@@ -1954,11 +1983,21 @@ static boolean - parse_printf (const struct parser_table* entry, char **argv, int *arg_ptr) - { - const char *format; -+ const int saved_argc = *arg_ptr; -+ - if (collect_arg(argv, arg_ptr, &format)) - { - struct format_val fmt; - open_stdout(&fmt); -- return insert_fprintf (&fmt, entry, pred_fprintf, format); -+ if (insert_fprintf (&fmt, entry, pred_fprintf, format)) -+ { -+ return true; -+ } -+ else -+ { -+ *arg_ptr = saved_argc; /* don't consume the invalid argument. */ -+ return false; -+ } - } - return false; - } -@@ -1967,15 +2006,21 @@ static boolean - parse_fprintf (const struct parser_table* entry, char **argv, int *arg_ptr) - { - const char *format, *filename; -+ int saved_argc = *arg_ptr; -+ - if (collect_arg(argv, arg_ptr, &filename)) - { - if (collect_arg(argv, arg_ptr, &format)) - { - struct format_val fmt; - open_output_file (filename, &fmt); -- return insert_fprintf (&fmt, entry, pred_fprintf, format); -+ saved_argc = *arg_ptr; -+ -+ if (insert_fprintf (&fmt, entry, pred_fprintf, format)) -+ return true; - } - } -+ *arg_ptr = saved_argc; /* don't consume the invalid argument. */ - return false; - } - -@@ -2405,6 +2450,7 @@ parse_uid (const struct parser_table* entry, char **argv, int *arg_ptr) - } - else - { -+ --*arg_ptr; /* don't consume the invalid argument. */ - return false; - } - } -@@ -2431,6 +2477,7 @@ parse_used (const struct parser_table* entry, char **argv, int *arg_ptr) - else - { - error(1, 0, _("Invalid argument %s to -used"), offset_str); -+ /*NOTREACHED*/ - return false; - } - } -@@ -2610,6 +2657,7 @@ insert_type (char **argv, int *arg_ptr, - if (strlen(typeletter) != 1u) - { - error(1, 0, _("Arguments to -type should contain only one letter")); -+ /*NOTREACHED*/ - return false; - } - -@@ -2657,6 +2705,7 @@ insert_type (char **argv, int *arg_ptr, - #endif - default: /* None of the above ... nuke 'em. */ - error(1, 0, _("Unknown argument to -type: %c"), (*typeletter)); -+ /*NOTREACHED*/ - return false; - } - our_pred = insert_primary_withpred (entry, which_pred, typeletter); -@@ -3349,6 +3398,7 @@ parse_time (const struct parser_table* entry, char *argv[], int *arg_ptr) - const char *errmsg = "arithmetic overflow while converting %s " - "days to a number of seconds"; - struct timespec origin; -+ const int saved_argc = *arg_ptr; - - if (!collect_arg(argv, arg_ptr, &timearg)) - return false; -@@ -3381,7 +3431,10 @@ parse_time (const struct parser_table* entry, char *argv[], int *arg_ptr) - timearg = orig_timearg; - - if (!get_relative_timestamp(timearg, &tval, origin, DAYSECS, errmsg)) -- return false; -+ { -+ *arg_ptr = saved_argc; /* don't consume the invalid argument */ -+ return false; -+ } - - our_pred = insert_primary (entry, orig_timearg); - our_pred->args.reftime = tval; diff --git a/meta/packages/findutils/findutils-4.4.2/03-28872.patch b/meta/packages/findutils/findutils-4.4.2/03-28872.patch deleted file mode 100644 index 8bede38920..0000000000 --- a/meta/packages/findutils/findutils-4.4.2/03-28872.patch +++ /dev/null @@ -1,56 +0,0 @@ -commit 5f5eb921765794e8fc58c4bdffa2daa2ae34800f -Author: James Youngman -Date: Sat Feb 20 19:53:13 2010 +0000 - - Fix Savannah bug#28872, Mistake in "Problems with -exec and filenames" - - * doc/find.texi (Problems with -exec and filenames): Add missing - $0 argument in example for sh -c 'something "$@" sh ... - * NEWS: Mention this change. - - Signed-off-by: James Youngman - -diff --git a/ChangeLog b/ChangeLog -index 13539a4..e94ba96 100644 ---- a/ChangeLog -+++ b/ChangeLog -@@ -1,5 +1,10 @@ - 2010-02-20 James Youngman - -+ Fix Savannah bug#28872, Mistake in "Problems with -exec and filenames" -+ * doc/find.texi (Problems with -exec and filenames): Add missing -+ $0 argument in example for sh -c 'something "$@" sh ... -+ * NEWS: Mention this change. -+ - Fix Savannah bug# 28824: "-ctime x" yields "missing argument to - `-ctime'". - * find/parser.c (parse_fls): If the argument is invalid, reverse -diff --git a/NEWS b/NEWS -index 4e910df..4c97be9 100644 ---- a/NEWS -+++ b/NEWS -@@ -4,6 +4,9 @@ GNU findutils NEWS - User visible changes. -*- outline -*- (allout) - - ** Bug Fixes - -+#28872: Mistake in "#safer" example in "Problems with -exec and -+ filenames" section of the Texinfo manual. -+ - #28824: Corrected error message for "-ctime x". - Likewise for -gid, -inum, -links, -mmin, -cmin, -amin, - -uid, -used, -atime, -mtime, -ctime. -diff --git a/doc/find.texi b/doc/find.texi -index 2e5958d..391ffa0 100644 ---- a/doc/find.texi -+++ b/doc/find.texi -@@ -4830,8 +4830,8 @@ problem: - - @example - # safer --find -exec sh -c 'something "$@@"' @{@} \; --find -execdir sh -c 'something "$@@"' @{@}\; -+find -exec sh -c 'something "$@@"' sh @{@} \; -+find -execdir sh -c 'something "$@@"' sh @{@}\; - @end example - - This approach is not guaranteed to avoid every problem, but it is much diff --git a/meta/packages/findutils/findutils.inc b/meta/packages/findutils/findutils.inc deleted file mode 100644 index 08ca2022ee..0000000000 --- a/meta/packages/findutils/findutils.inc +++ /dev/null @@ -1,19 +0,0 @@ -DESCRIPTION = "find, locate, and xargs binaries." -HOMEPAGE = "http://www.gnu.org/software/findutils/" -BUGTRACKER = "http://savannah.gnu.org/bugs/?group=findutils" -SECTION = "console/utils" - -# GPLv2+ (<< 4.2.32), GPLv3+ (>= 4.2.32) -LICENSE = "GPLv3+" -LIC_FILES_CHKSUM = "file://COPYING;md5=f27defe1e96c2e1ecd4e0c9be8967949" - -SRC_URI = "${GNU_MIRROR}/findutils/findutils-${PV}.tar.gz" - -inherit autotools gettext - -# diffutils assumes non-glibc compilation with uclibc and -# this causes it to generate its own implementations of -# standard functionality. regex.c actually breaks compilation -# because it uses __mempcpy, there are other things (TBD: -# see diffutils.mk in buildroot) -EXTRA_OECONF_linux-uclibc = "--without-included-regex" diff --git a/meta/packages/findutils/findutils_4.2.31.bb b/meta/packages/findutils/findutils_4.2.31.bb deleted file mode 100644 index 2804a3ba3a..0000000000 --- a/meta/packages/findutils/findutils_4.2.31.bb +++ /dev/null @@ -1,37 +0,0 @@ -DESCRIPTION = "find, locate, and xargs binaries." -HOMEPAGE = "http://www.gnu.org/software/findutils/" -BUGTRACKER = "http://savannah.gnu.org/bugs/?group=findutils" -SECTION = "console/utils" - -LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552" -PR = "r1" - -SRC_URI = "${GNU_MIRROR}/findutils/findutils-${PV}.tar.gz \ - file://gnulib-extension.patch" - -inherit autotools gettext - -# diffutils assumes non-glibc compilation with uclibc and -# this causes it to generate its own implementations of -# standard functionality. regex.c actually breaks compilation -# because it uses __mempcpy, there are other things (TBD: -# see diffutils.mk in buildroot) -EXTRA_OECONF_linux-uclibc = "--without-included-regex" - -do_install_append () { - if [ -e ${D}${bindir}/find ]; then - mv ${D}${bindir}/find ${D}${bindir}/find.${PN} - mv ${D}${bindir}/xargs ${D}${bindir}/xargs.${PN} - fi -} - -pkg_postinst_${PN} () { - for i in find xargs; do update-alternatives --install ${bindir}/$i $i $i.${PN} 100; done -} - -pkg_prerm_${PN} () { - for i in find xargs; do update-alternatives --remove $i $i.${PN}; done -} - -BBCLASSEXTEND = "native" diff --git a/meta/packages/findutils/findutils_4.4.2.bb b/meta/packages/findutils/findutils_4.4.2.bb deleted file mode 100644 index 18514f36ea..0000000000 --- a/meta/packages/findutils/findutils_4.4.2.bb +++ /dev/null @@ -1,27 +0,0 @@ -require findutils.inc - -PR = "r0" - -SRC_URI += "file://01-27017.patch \ - file://02-28824.patch \ - file://03-28872.patch" - -# http://savannah.gnu.org/bugs/?27299 -EXTRA_OECONF += "gl_cv_func_wcwidth_works=yes" - -do_install_append () { - if [ -e ${D}${bindir}/find ]; then - mv ${D}${bindir}/find ${D}${bindir}/find.${PN} - mv ${D}${bindir}/xargs ${D}${bindir}/xargs.${PN} - fi -} - -pkg_postinst_${PN} () { - for i in find xargs; do update-alternatives --install ${bindir}/$i $i $i.${PN} 100; done -} - -pkg_prerm_${PN} () { - for i in find xargs; do update-alternatives --remove $i $i.${PN}; done -} - -BBCLASSEXTEND = "native" diff --git a/meta/packages/fstests/fstests_svn.bb b/meta/packages/fstests/fstests_svn.bb deleted file mode 100644 index b4075212ee..0000000000 --- a/meta/packages/fstests/fstests_svn.bb +++ /dev/null @@ -1,18 +0,0 @@ -DESCRIPTION = "Various benchmarning tests for X" -HOMEPAGE = "http://www.o-hand.com" -SECTION = "devel" -LICENSE = "GPL" -DEPENDS = "pango libxext libxft virtual/libx11 gtk+" -PV = "0.0+svnr${SRCREV}" -PR = "r1" - -inherit autotools - -SRC_URI = "svn://svn.o-hand.com/repos/misc/trunk;module=fstests;proto=http" - -S = "${WORKDIR}/fstests/tests" - -do_install() { - install -d ${D}${bindir} - find . -name "test-*" -type f -perm -755 -exec install -m 0755 {} ${D}${bindir} \; -} diff --git a/meta/packages/fuse/fuse-2.7.2/not-run-updaterc.d-on-host.patch b/meta/packages/fuse/fuse-2.7.2/not-run-updaterc.d-on-host.patch deleted file mode 100644 index 903a8baa9e..0000000000 --- a/meta/packages/fuse/fuse-2.7.2/not-run-updaterc.d-on-host.patch +++ /dev/null @@ -1,15 +0,0 @@ -Index: fuse-2.7.2/util/Makefile.am -=================================================================== ---- fuse-2.7.2.orig/util/Makefile.am 2007-04-26 01:36:47.000000000 +0930 -+++ fuse-2.7.2/util/Makefile.am 2008-02-10 16:43:19.000000000 +1030 -@@ -33,10 +33,6 @@ - $(INSTALL_PROGRAM) $(srcdir)/mount.fuse $(DESTDIR)$(MOUNT_FUSE_PATH)/mount.fuse - $(mkdir_p) $(DESTDIR)$(INIT_D_PATH) - $(INSTALL_PROGRAM) $(srcdir)/init_script $(DESTDIR)$(INIT_D_PATH)/fuse -- @if test -x /usr/sbin/update-rc.d; then \ -- echo "/usr/sbin/update-rc.d fuse start 34 S . start 41 0 6 . || true"; \ -- /usr/sbin/update-rc.d fuse start 34 S . start 41 0 6 . || true; \ -- fi - - install-data-local: - $(mkdir_p) $(DESTDIR)$(UDEV_RULES_PATH) diff --git a/meta/packages/fuse/fuse.inc b/meta/packages/fuse/fuse.inc deleted file mode 100644 index c6755ac7c7..0000000000 --- a/meta/packages/fuse/fuse.inc +++ /dev/null @@ -1,13 +0,0 @@ -DESCRIPTION = "With FUSE it is possible to implement a fully functional filesystem in a userspace program" -HOMEPAGE = "http://fuse.sf.net" -LICENSE = "GPL" -DEPENDS = "virtual/fakeroot-native" -RRECOMMENDS_fuse = "${@base_contains("MACHINE_FEATURES","kernel26","kernel-module-fuse","fuse-module",d)}" - -SRC_URI = "${SOURCEFORGE_MIRROR}/fuse/fuse-${PV}.tar.gz" - -inherit autotools pkgconfig - -fakeroot do_install() { - oe_runmake install DESTDIR=${D} -} diff --git a/meta/packages/fuse/fuse_2.7.2.bb b/meta/packages/fuse/fuse_2.7.2.bb deleted file mode 100644 index d284a25f5f..0000000000 --- a/meta/packages/fuse/fuse_2.7.2.bb +++ /dev/null @@ -1,22 +0,0 @@ -require fuse.inc - -PR = "r0" - -SRC_URI += "file://not-run-updaterc.d-on-host.patch;patch=1" - -EXTRA_OECONF = " --disable-kernel-module" - -#package utils in a sperate package and stop debian.bbclass renaming it to libfuse-utils, we want it to be fuse-utils -PACKAGES =+ "fuse-utils-dbg fuse-utils libulockmgr libulockmgr-dev libulockmgr-dbg" -FILES_${PN} += "${libdir}/libfuse.so.*" -FILES_${PN}-dev += "${libdir}/libfuse*.la" - -FILES_libulockmgr = "${libdir}/libulockmgr.so.*" -FILES_libulockmgr-dev += "${libdir}/libulock*.la" -FILES_libulockmgr-dbg += "${libdir}/.debug/libulock*" - -FILES_fuse-utils = "${bindir} ${base_sbindir}" -FILES_fuse-utils-dbg = "${bindir}/.debug ${base_sbindir}/.debug" -DEBIAN_NOAUTONAME_fuse-utils = "1" -DEBIAN_NOAUTONAME_fuse-utils-dbg = "1" - diff --git a/meta/packages/gdbm/gdbm-1.8.3/libtool-mode.patch b/meta/packages/gdbm/gdbm-1.8.3/libtool-mode.patch deleted file mode 100644 index c56bac2ca9..0000000000 --- a/meta/packages/gdbm/gdbm-1.8.3/libtool-mode.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- gdbm-1.8.3/Makefile.in.orig 2006-02-16 15:17:25.000000000 +0000 -+++ gdbm-1.8.3/Makefile.in 2006-02-16 15:18:08.000000000 +0000 -@@ -131,7 +131,7 @@ - $(srcdir)/mkinstalldirs $(DESTDIR)$(libdir) \ - $(DESTDIR)$(includedir) $(DESTDIR)$(man3dir) \ - $(DESTDIR)$(infodir) -- $(LIBTOOL) $(INSTALL) -c libgdbm.la $(DESTDIR)$(libdir)/libgdbm.la -+ $(LIBTOOL) --mode=install $(INSTALL) -c libgdbm.la $(DESTDIR)$(libdir)/libgdbm.la - $(INSTALL_DATA) gdbm.h \ - $(DESTDIR)$(includedir)/gdbm.h - $(INSTALL_DATA) $(srcdir)/gdbm.3 \ -@@ -142,7 +142,7 @@ - install-compat: - $(srcdir)/mkinstalldirs $(DESTDIR)$(libdir) \ - $(DESTDIR)$(includedir) -- $(LIBTOOL) $(INSTALL) -c libgdbm_compat.la \ -+ $(LIBTOOL) --mode=install $(INSTALL) -c libgdbm_compat.la \ - $(DESTDIR)$(libdir)/libgdbm_compat.la - $(INSTALL_DATA) $(srcdir)/dbm.h \ - $(DESTDIR)$(includedir)/dbm.h diff --git a/meta/packages/gdbm/gdbm-1.8.3/makefile.patch b/meta/packages/gdbm/gdbm-1.8.3/makefile.patch deleted file mode 100644 index 5350c53729..0000000000 --- a/meta/packages/gdbm/gdbm-1.8.3/makefile.patch +++ /dev/null @@ -1,59 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - ---- gdbm-1.8.3/Makefile.in~makefile -+++ gdbm-1.8.3/Makefile.in -@@ -22,6 +22,7 @@ - TEXI2DVI = texi2dvi - - DEFS = -+DESTDIR = - - # Where the system [n]dbm routines are... - LIBS = @LIBS@ -lc -@@ -127,26 +128,26 @@ - progs: $(PROGS) - - install: libgdbm.la gdbm.h gdbm.info -- $(srcdir)/mkinstalldirs $(INSTALL_ROOT)$(libdir) \ -- $(INSTALL_ROOT)$(includedir) $(INSTALL_ROOT)$(man3dir) \ -- $(INSTALL_ROOT)$(infodir) -- $(LIBTOOL) $(INSTALL) -c libgdbm.la $(INSTALL_ROOT)$(libdir)/libgdbm.la -- $(INSTALL_DATA) -o $(BINOWN) -g $(BINGRP) gdbm.h \ -- $(INSTALL_ROOT)$(includedir)/gdbm.h -- $(INSTALL_DATA) -o $(BINOWN) -g $(BINGRP) $(srcdir)/gdbm.3 \ -- $(INSTALL_ROOT)$(man3dir)/gdbm.3 -- $(INSTALL_DATA) -o $(BINOWN) -g $(BINGRP) $(srcdir)/gdbm.info \ -- $(INSTALL_ROOT)$(infodir)/gdbm.info -+ $(srcdir)/mkinstalldirs $(DESTDIR)$(libdir) \ -+ $(DESTDIR)$(includedir) $(DESTDIR)$(man3dir) \ -+ $(DESTDIR)$(infodir) -+ $(LIBTOOL) $(INSTALL) -c libgdbm.la $(DESTDIR)$(libdir)/libgdbm.la -+ $(INSTALL_DATA) gdbm.h \ -+ $(DESTDIR)$(includedir)/gdbm.h -+ $(INSTALL_DATA) $(srcdir)/gdbm.3 \ -+ $(DESTDIR)$(man3dir)/gdbm.3 -+ $(INSTALL_DATA) $(srcdir)/gdbm.info \ -+ $(DESTDIR)$(infodir)/gdbm.info - - install-compat: -- $(srcdir)/mkinstalldirs $(INSTALL_ROOT)$(libdir) \ -- $(INSTALL_ROOT)$(includedir) -+ $(srcdir)/mkinstalldirs $(DESTDIR)$(libdir) \ -+ $(DESTDIR)$(includedir) - $(LIBTOOL) $(INSTALL) -c libgdbm_compat.la \ -- $(INSTALL_ROOT)$(libdir)/libgdbm_compat.la -- $(INSTALL_DATA) -o $(BINOWN) -g $(BINGRP) $(srcdir)/dbm.h \ -- $(INSTALL_ROOT)$(includedir)/dbm.h -- $(INSTALL_DATA) -o $(BINOWN) -g $(BINGRP) $(srcdir)/ndbm.h \ -- $(INSTALL_ROOT)$(includedir)/ndbm.h -+ $(DESTDIR)$(libdir)/libgdbm_compat.la -+ $(INSTALL_DATA) $(srcdir)/dbm.h \ -+ $(DESTDIR)$(includedir)/dbm.h -+ $(INSTALL_DATA) $(srcdir)/ndbm.h \ -+ $(DESTDIR)$(includedir)/ndbm.h - - #libgdbm.a: $(OBJS) gdbm.h - # rm -f libgdbm.a diff --git a/meta/packages/gdbm/gdbm_1.8.3.bb b/meta/packages/gdbm/gdbm_1.8.3.bb deleted file mode 100644 index e8369fd725..0000000000 --- a/meta/packages/gdbm/gdbm_1.8.3.bb +++ /dev/null @@ -1,16 +0,0 @@ -DESCRIPTION = "GNU dbm is a set of database routines that use extensible hashing." -HOMEPAGE = "http://www.gnu.org/software/gdbm/" -SECTION = "libs" -PRIORITY = "optional" -LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=d8e20eece214df8ef953ed5857862150" - -PR = "r4" - -SRC_URI = "${GNU_MIRROR}/gdbm/gdbm-${PV}.tar.gz \ - file://makefile.patch;patch=1 \ - file://libtool-mode.patch;patch=1" - -inherit autotools - -BBCLASSEXTEND = "native" diff --git a/meta/packages/gnutls/gnutls-2.8.6/configure-fix.patch b/meta/packages/gnutls/gnutls-2.8.6/configure-fix.patch deleted file mode 100644 index 247e324564..0000000000 --- a/meta/packages/gnutls/gnutls-2.8.6/configure-fix.patch +++ /dev/null @@ -1,64 +0,0 @@ -rebased from original configure_madness.patch - -libtasn1 provides an .pc file in upstream, -and a libgcrypt.pc is added in libgcrypt recipe, -so use Requires.private for these two. - -against 2.8.6 - -07/02/2010 - qhe - ---- -diff --git a/lib/configure.ac b/lib/configure.ac -index 80d3375..1a486f7 100644 ---- a/lib/configure.ac -+++ b/lib/configure.ac -@@ -81,8 +81,8 @@ fi - - lgl_INIT - --LIBGNUTLS_LIBS="-L${libdir} -lgnutls $LIBS" --LIBGNUTLS_CFLAGS="-I${includedir}" -+LIBGNUTLS_LIBS="-lgnutls $LIBS" -+LIBGNUTLS_CFLAGS="" - AC_SUBST(LIBGNUTLS_LIBS) - AC_SUBST(LIBGNUTLS_CFLAGS) - -diff --git a/lib/gnutls.pc.in b/lib/gnutls.pc.in -index 3b01c17..de31469 100644 ---- a/lib/gnutls.pc.in -+++ b/lib/gnutls.pc.in -@@ -20,6 +20,6 @@ Name: GnuTLS - Description: Transport Security Layer implementation for the GNU system - URL: http://www.gnu.org/software/gnutls/ - Version: @VERSION@ -+Requires.private: libgcrypt, libtasn1 - Libs: -L${libdir} -lgnutls --Libs.private: @LIBGNUTLS_LIBS@ @LTLIBTASN1@ - Cflags: -I${includedir} -diff --git a/libextra/configure.ac b/libextra/configure.ac -index c08e73f..3313886 100644 ---- a/libextra/configure.ac -+++ b/libextra/configure.ac -@@ -40,8 +40,8 @@ LIBGNUTLS_EXTRA_HOOKS - - xgl_INIT - --LIBGNUTLS_EXTRA_LIBS="-L${libdir} -lgnutls-extra $LZO_LIBS $LIBGNUTLS_LIBS" --LIBGNUTLS_EXTRA_CFLAGS="-I${includedir}" -+LIBGNUTLS_EXTRA_LIBS="-lgnutls-extra $LZO_LIBS $LIBGNUTLS_LIBS" -+LIBGNUTLS_EXTRA_CFLAGS="" - AC_SUBST(LIBGNUTLS_EXTRA_LIBS) - AC_SUBST(LIBGNUTLS_EXTRA_CFLAGS) - -diff --git a/libextra/gnutls-extra.pc.in b/libextra/gnutls-extra.pc.in -index 9e7b8f6..e228ec9 100644 ---- a/libextra/gnutls-extra.pc.in -+++ b/libextra/gnutls-extra.pc.in -@@ -21,5 +21,5 @@ URL: http://www.gnu.org/software/gnutls/ - Requires: gnutls - Version: @VERSION@ - Libs: -L${libdir} -lgnutls-extra --Libs.private: @LIBGNUTLS_EXTRA_LIBS@ -+Libs.private: -llzo2 - Cflags: -I${includedir} diff --git a/meta/packages/gnutls/gnutls-2.8.6/gnutls-openssl.patch b/meta/packages/gnutls/gnutls-2.8.6/gnutls-openssl.patch deleted file mode 100644 index 413de06472..0000000000 --- a/meta/packages/gnutls/gnutls-2.8.6/gnutls-openssl.patch +++ /dev/null @@ -1,124 +0,0 @@ -Index: gnutls-1.6.0/libextra/gnutls_openssl.c -=================================================================== ---- gnutls-1.6.0.orig/libextra/gnutls_openssl.c 2006-08-13 22:34:09.000000000 +0200 -+++ gnutls-1.6.0/libextra/gnutls_openssl.c 2006-12-12 15:07:59.002227000 +0100 -@@ -256,12 +256,17 @@ - ssl->rfd = (gnutls_transport_ptr_t) - 1; - ssl->wfd = (gnutls_transport_ptr_t) - 1; - -+ ssl->ssl_peek_buffer = NULL; -+ ssl->ssl_peek_buffer_size = ssl->ssl_peek_avail = 0; -+ - return ssl; - } - - void - SSL_free (SSL * ssl) - { -+ if (ssl->ssl_peek_buffer) -+ free(ssl->ssl_peek_buffer); - gnutls_certificate_free_credentials (ssl->gnutls_cred); - gnutls_deinit (ssl->gnutls_state); - free (ssl); -@@ -285,6 +290,7 @@ - SSL_set_fd (SSL * ssl, int fd) - { - gnutls_transport_set_ptr (ssl->gnutls_state, GNUTLS_INT_TO_POINTER (fd)); -+ ssl->rfd = ssl->wfd = fd; - return 1; - } - -@@ -310,6 +316,17 @@ - return 1; - } - -+int SSL_get_rfd(SSL *ssl) -+{ -+ return ssl->rfd; -+} -+ -+int SSL_get_wfd(SSL *ssl) -+{ -+ return ssl->wfd; -+} -+ -+ - void - SSL_set_bio (SSL * ssl, BIO * rbio, BIO * wbio) - { -@@ -325,6 +342,8 @@ - int - SSL_pending (SSL * ssl) - { -+ if (ssl->ssl_peek_avail) -+ return ssl->ssl_peek_avail; - return gnutls_record_check_pending (ssl->gnutls_state); - } - -@@ -480,11 +499,50 @@ - return 1; - } - -+int SSL_peek(SSL *ssl, void *buf, int len) -+{ -+ if (len > ssl->ssl_peek_buffer_size) { -+ ssl->ssl_peek_buffer = realloc (ssl->ssl_peek_buffer, len); -+ ssl->ssl_peek_buffer_size = len; -+ } -+ -+ if (ssl->ssl_peek_avail == 0) { -+ -+ int ret; -+ -+ ret = gnutls_record_recv(ssl->gnutls_state, ssl->ssl_peek_buffer, len); -+ ssl->last_error = ret; -+ -+ if (ret > 0) -+ ssl->ssl_peek_avail += ret; -+ } -+ -+ if (len > ssl->ssl_peek_avail) -+ len = ssl->ssl_peek_avail; -+ -+ memcpy (buf, ssl->ssl_peek_buffer, len); -+ -+ return len; -+} -+ - int - SSL_read (SSL * ssl, void *buf, int len) - { - int ret; - -+ if (ssl->ssl_peek_avail) { -+ int n = (ssl->ssl_peek_avail > len) ? len : ssl->ssl_peek_avail; -+ -+ memcpy (buf, ssl->ssl_peek_buffer, n); -+ -+ if (ssl->ssl_peek_avail > n) -+ memmove (ssl->ssl_peek_buffer, ssl->ssl_peek_buffer + n, ssl->ssl_peek_avail - n); -+ -+ ssl->ssl_peek_avail -= n; -+ -+ return n; -+ } -+ - ret = gnutls_record_recv (ssl->gnutls_state, buf, len); - ssl->last_error = ret; - -Index: gnutls-1.6.0/includes/gnutls/openssl.h -=================================================================== ---- gnutls-1.6.0.orig/libextra/includes/gnutls/openssl.h 2006-03-08 11:44:58.000000000 +0100 -+++ gnutls-1.6.0/libextra/includes/gnutls/openssl.h 2006-12-12 15:07:26.032227000 +0100 -@@ -164,6 +164,11 @@ - - gnutls_transport_ptr_t rfd; - gnutls_transport_ptr_t wfd; -+ -+ char *ssl_peek_buffer; -+ size_t ssl_peek_buffer_size; -+ size_t ssl_peek_avail; -+ - }; - - #define rbio gnutls_state diff --git a/meta/packages/gnutls/gnutls-2.8.6/gnutls-texinfo-euro.patch b/meta/packages/gnutls/gnutls-2.8.6/gnutls-texinfo-euro.patch deleted file mode 100644 index a2d2f03870..0000000000 --- a/meta/packages/gnutls/gnutls-2.8.6/gnutls-texinfo-euro.patch +++ /dev/null @@ -1,16 +0,0 @@ -The version of texinfo in Debian Sarge does not understand the @euro{} command. -This patch replaces the @euro{} command with the word "euro". - ---- gnutls-1.3.5/doc/gnutls.texi.orig 2006-04-26 08:06:40.918268000 +0930 -+++ gnutls-1.3.5/doc/gnutls.texi 2006-04-26 08:06:52.446515440 +0930 -@@ -11,8 +11,8 @@ - long as it is difficult enough to generate two different messages with - the same hash algorithm output. In that case the same signature could - be used as a proof for both messages. Nobody wants to sign an innocent --message of donating 1 @euro{} to Greenpeace and find out that he --donated 1.000.000 @euro{} to Bad Inc. -+message of donating 1 euro to Greenpeace and find out that he -+donated 1.000.000 euro to Bad Inc. - - For a hash algorithm to be called cryptographic the following three - requirements must hold diff --git a/meta/packages/gnutls/gnutls.inc b/meta/packages/gnutls/gnutls.inc deleted file mode 100644 index 76f4ca63fd..0000000000 --- a/meta/packages/gnutls/gnutls.inc +++ /dev/null @@ -1,44 +0,0 @@ -DESCRIPTION = "GNU Transport Layer Security Library" -HOMEPAGE = "http://www.gnu.org/software/gnutls/" -BUGTRACKER = "https://savannah.gnu.org/support/?group=gnutls" -DEPENDS = "zlib lzo gettext libtasn1 libgcrypt (>= 1.4.2)" - -LICENSE = "GPLv3+ & LGPLv2.1+" -LICENSE_${PN} = "LGPLv2.1+" -LICENSE_${PN}-xx = "GPLv2.1+" -LICENSE_${PN}-bin = "GPLv3+" -LICENSE_${PN}-extra = "GPLv3+" -LICENSE_${PN}-openssl = "GPLv3+" -LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \ - file://lib/COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \ - file://libextra/COPYING;md5=d32239bcb673463ab874e80d47fae504" - -SRC_URI = "ftp://ftp.gnutls.org/pub/gnutls/gnutls-${PV}.tar.bz2" - -inherit autotools binconfig pkgconfig - -EXTRA_OECONF="--with-included-opencdk --with-included-libcfg --disable-rpath \ - --with-libtasn1-prefix=${STAGING_DIR_HOST}${prefix} \ - --with-libgcrypt-prefix=${STAGING_DIR_HOST}${prefix} \ - --with-libz-prefix=${STAGING_DIR_HOST}${prefix} --with-lzo --disable-guile" - -do_configure_prepend() { - for dir in . lib libextra; do - rm ${dir}/aclocal.m4 ${dir}/m4/libtool.m4 ${dir}/m4/lt*.m4 - done -} - -PACKAGES =+ "${PN}-openssl ${PN}-extra ${PN}-bin ${PN}-xx" - -FILES_${PN} = "${libdir}/libgnutls.so.*" -FILES_${PN}-bin = "${bindir}/gnutls-serv \ - ${bindir}/gnutls-cli \ - ${bindir}/srptool \ - ${bindir}/psktool \ - ${bindir}/certtool \ - ${bindir}/gnutls-srpcrypt" - -FILES_${PN}-dev += "${bindir}/*-config ${bindir}/gnutls-cli-debug" -FILES_${PN}-extra = "${libdir}/libgnutls-extra.so.*" -FILES_${PN}-openssl = "${libdir}/libgnutls-openssl.so.*" -FILES_${PN}-xx = "${libdir}/libgnutlsxx.so.*" diff --git a/meta/packages/gnutls/gnutls_2.8.6.bb b/meta/packages/gnutls/gnutls_2.8.6.bb deleted file mode 100644 index d8adc6ba17..0000000000 --- a/meta/packages/gnutls/gnutls_2.8.6.bb +++ /dev/null @@ -1,7 +0,0 @@ -require gnutls.inc - -PR = "r0" - -SRC_URI += "file://gnutls-openssl.patch \ - file://gnutls-texinfo-euro.patch \ - file://configure-fix.patch" diff --git a/meta/packages/gnutls/libtasn1_2.7.bb b/meta/packages/gnutls/libtasn1_2.7.bb deleted file mode 100644 index 11a7dc5055..0000000000 --- a/meta/packages/gnutls/libtasn1_2.7.bb +++ /dev/null @@ -1,21 +0,0 @@ -DESCRIPTION = "Library for ASN.1 and DER manipulation" -HOMEPAGE = "http://www.gnu.org/software/libtasn1/" - -LICENSE = "GPLv3+ & LGPLv2.1+" -LICENSE_${PN}-bin = "GPLv3+" -LICENSE_${PN} = "LGPLv2.1+" -LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \ - file://COPYING.LIB;md5=a6f89e2100d9b6cdffcea4f398e37343 \ - file://README;endline=8;md5=c3803a3e8ca5ab5eb1e5912faa405351" - -RREPLACES_${PN}-bin = "libtasn1 (<< 2.7)" - -PR = "r0" - -SRC_URI = "ftp://ftp.gnutls.org/pub/gnutls/libtasn1/libtasn1-${PV}.tar.gz" - -inherit autotools binconfig lib_package - -AUTOTOOLS_STAGE_PKGCONFIG = "1" - -BBCLASSEXTEND = "native" diff --git a/meta/packages/gperf/gperf.inc b/meta/packages/gperf/gperf.inc deleted file mode 100644 index a521e0943b..0000000000 --- a/meta/packages/gperf/gperf.inc +++ /dev/null @@ -1,22 +0,0 @@ -DESCRIPTION = "GNU gperf is a perfect hash function generator" -HOMEPAGE = "http://www.gnu.org/software/gperf" -SUMMARY = "Generate a perfect hash function from a set of keywords" -LICENSE = "GPLv3+" -LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \ - file://src/main.cc;firstline=8;endline=19;md5=24688d2dff69bcf5cbea4bc3e4174c5a" - -SRC_URI = "${GNU_MIRROR}/gperf/gperf-${PV}.tar.gz" - -inherit autotools - -# autoreconf couldn't find acinclude.m4 when stepping into subdirectory. Instead of -# duplicating acinclude.m4 in every subdirectory, use absolute include path to aclocal -EXTRA_AUTORECONF += " -I ${S}" - -do_configure_prepend() { - if [ ! -e acinclude.m4 ]; then - cat aclocal.m4 > acinclude.m4 - fi -} - -BBCLASSEXTEND = "native" diff --git a/meta/packages/gperf/gperf_3.0.3.bb b/meta/packages/gperf/gperf_3.0.3.bb deleted file mode 100644 index 5cccdf1adb..0000000000 --- a/meta/packages/gperf/gperf_3.0.3.bb +++ /dev/null @@ -1,7 +0,0 @@ -require gperf.inc - -LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=a5f84abb0070adf8a0925d7d534b6e0a \ - file://src/main.cc;firstline=8;endline=19;md5=3eab12ba436c4da725b19b131def6de9" - -PR = "r1" diff --git a/meta/packages/gperf/gperf_3.0.4.bb b/meta/packages/gperf/gperf_3.0.4.bb deleted file mode 100644 index ee532c98d8..0000000000 --- a/meta/packages/gperf/gperf_3.0.4.bb +++ /dev/null @@ -1,3 +0,0 @@ -require gperf.inc - -PR = "r0" diff --git a/meta/packages/gpgme/gpgme-1.3.0/disable_gpgconf_check.patch b/meta/packages/gpgme/gpgme-1.3.0/disable_gpgconf_check.patch deleted file mode 100644 index f56f35b9ed..0000000000 --- a/meta/packages/gpgme/gpgme-1.3.0/disable_gpgconf_check.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 1.2.0, gpgme will check if gpgconf & g13(from 1.3.0) exist, and cause -configure failure if not founding them in cross-compile environment. We can -add the gnupg-native to get them, but still have some issues: - -1. need add new package: libksba, update libassuan(not in sato), and extend - native support in some other packages(libgcrypt, libgpg-error, pth...) -2. Even we have gnupg, the g13 only exist in development branch, so that we - still have the g13 check failure in configure. - -I have searched the compile log, and found gpgconf/g13 are not used. So use a -simple method here, throw a warning mesg rather than an error here just like in -non-cross-compile environment. - -Signed-off-by: Zhai Edwin - - -Index: gpgme-1.3.0/configure.ac -=================================================================== ---- gpgme-1.3.0.orig/configure.ac 2010-07-21 09:38:09.000000000 +0800 -+++ gpgme-1.3.0/configure.ac 2010-07-21 09:39:19.000000000 +0800 -@@ -574,7 +574,7 @@ - *** Could not find gpgconf, install gpgconf or use --with-gpgconf=PATH to enable it - ***]) - else -- AC_MSG_ERROR([ -+ AC_MSG_WARN([ - *** - *** Can not determine path to gpgconf when cross-compiling, use --with-gpgconf=PATH - ***]) -@@ -670,7 +670,7 @@ - *** Could not find g13, install g13 or use --with-g13=PATH to enable it - ***]) - else -- AC_MSG_ERROR([ -+ AC_MSG_WARN([ - *** - *** Can not determine path to g13 when cross-compiling, use --with-g13=PATH - ***]) diff --git a/meta/packages/gpgme/gpgme_1.3.0.bb b/meta/packages/gpgme/gpgme_1.3.0.bb deleted file mode 100644 index 1c665b5ea4..0000000000 --- a/meta/packages/gpgme/gpgme_1.3.0.bb +++ /dev/null @@ -1,25 +0,0 @@ -DESCRIPTION = "GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG easier for applications. It provides a High-Level Crypto API for encryption, decryption, signing, signature verification and key management" -HOMEPAGE = "http://www.gnupg.org/gpgme.html" -BUGTRACKER = "https://bugs.g10code.com/gnupg/index" - -LICENSE = "GPLv2+ & LGPLv2.1+" -LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ - file://COPYING.LESSER;md5=bbb461211a33b134d42ed5ee802b37ff \ - file://src/gpgme.h;endline=23;md5=2775a99d3dd524c4f848ff1c59093038 \ - file://src/engine.h;endline=22;md5=e96acfaab1cff82dd8fbefddd2f5c436" - -SRC_URI = "ftp://ftp.gnupg.org/gcrypt/gpgme/gpgme-${PV}.tar.bz2 \ - file://disable_gpgconf_check.patch;patch=1;pnum=1" -DEPENDS = "libgpg-error libassuan pth" -PR = "r0" - -EXTRA_OECONF = "--with-pth=${STAGING_DIR_HOST} --without-pth-test \ - --with-gpg=${bindir}/gpg --without-gpgsm" - -inherit autotools binconfig - -PACKAGES =+ "${PN}-pth ${PN}-pthread" -FILES_${PN}-pth = "${libdir}/libgpgme-pth.so.*" -FILES_${PN}-pthread = "${libdir}/libgpgme-pthread.so.*" -FILES_${PN} = "${libdir}/libgpgme.so.*" -FILES_${PN}-dev += "${bindir}/gpgme-config" diff --git a/meta/packages/grep/grep-2.5.1a/uclibc-fix.patch b/meta/packages/grep/grep-2.5.1a/uclibc-fix.patch deleted file mode 100644 index 8fc7c4852f..0000000000 --- a/meta/packages/grep/grep-2.5.1a/uclibc-fix.patch +++ /dev/null @@ -1,53 +0,0 @@ -# Fix to use mempcpy instead of __mempcpy. This is needed for uclibc which -# doesn't define __mempcpy, only mempcpy. Since both uclibc and glibc have -# mempcpy, we'll just use that instead. -# Patch source: OpenEmbedded - -Index: grep-2.5.1/intl/localealias.c -=================================================================== ---- grep-2.5.1.orig/intl/localealias.c 2002-03-14 00:39:06.000000000 +1100 -+++ grep-2.5.1/intl/localealias.c 2007-05-17 13:53:58.000000000 +1000 -@@ -65,7 +65,7 @@ - # define strcasecmp __strcasecmp - - # ifndef mempcpy --# define mempcpy __mempcpy -+# error "mempcpy not detected" - # endif - # define HAVE_MEMPCPY 1 - # define HAVE___FSETLOCKING 1 -Index: grep-2.5.1/lib/getopt.c -=================================================================== ---- grep-2.5.1.orig/lib/getopt.c 2001-03-04 16:33:12.000000000 +1100 -+++ grep-2.5.1/lib/getopt.c 2007-05-17 13:51:44.000000000 +1000 -@@ -326,7 +326,7 @@ - nonoption_flags_len = nonoption_flags_max_len = 0; - else - { -- memset (__mempcpy (new_str, __getopt_nonoption_flags, -+ memset (mempcpy (new_str, __getopt_nonoption_flags, - nonoption_flags_max_len), - '\0', top + 1 - nonoption_flags_max_len); - nonoption_flags_max_len = top + 1; -@@ -437,7 +437,7 @@ - if (__getopt_nonoption_flags == NULL) - nonoption_flags_max_len = -1; - else -- memset (__mempcpy (__getopt_nonoption_flags, orig_str, len), -+ memset (mempcpy (__getopt_nonoption_flags, orig_str, len), - '\0', nonoption_flags_max_len - len); - } - } -Index: grep-2.5.1/lib/regex.c -=================================================================== ---- grep-2.5.1.orig/lib/regex.c 2001-04-03 04:04:45.000000000 +1000 -+++ grep-2.5.1/lib/regex.c 2007-05-17 13:51:48.000000000 +1000 -@@ -7842,7 +7842,7 @@ - if (msg_size > errbuf_size) - { - #if defined HAVE_MEMPCPY || defined _LIBC -- *((char *) __mempcpy (errbuf, msg, errbuf_size - 1)) = '\0'; -+ *((char *) mempcpy (errbuf, msg, errbuf_size - 1)) = '\0'; - #else - memcpy (errbuf, msg, errbuf_size - 1); - errbuf[errbuf_size - 1] = 0; diff --git a/meta/packages/grep/grep_2.5.1a.bb b/meta/packages/grep/grep_2.5.1a.bb deleted file mode 100644 index d50d5a374e..0000000000 --- a/meta/packages/grep/grep_2.5.1a.bb +++ /dev/null @@ -1,40 +0,0 @@ -DESCRIPTION = "grep GNU utility" -SECTION = "console/utils" -LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3" - -PR = "r1" - -SRC_URI = "${GNU_MIRROR}/grep/grep-${PV}.tar.bz2 \ - file://uclibc-fix.patch" - -SRC_URI[md5sum] = "52202fe462770fa6be1bb667bd6cf30c" -SRC_URI[sha256sum] = "38c8a2bb9223d1fb1b10bdd607cf44830afc92fd451ac4cd07619bf92bdd3132" - -inherit autotools gettext - -EXTRA_OECONF = "--disable-perl-regexp --disable-ncurses" - -do_configure_prepend () { - rm -f ${S}/m4/init.m4 -} - -do_install () { - autotools_do_install - install -d ${D}${base_bindir} - mv ${D}${bindir}/grep ${D}${base_bindir}/grep.${PN} - mv ${D}${bindir}/egrep ${D}${base_bindir}/egrep.${PN} - mv ${D}${bindir}/fgrep ${D}${base_bindir}/fgrep.${PN} -} - -pkg_postinst_${PN} () { - update-alternatives --install ${base_bindir}/grep grep grep.${PN} 100 - update-alternatives --install ${base_bindir}/egrep egrep egrep.${PN} 100 - update-alternatives --install ${base_bindir}/fgrep fgrep fgrep.${PN} 100 -} - -pkg_prerm_${PN} () { - update-alternatives --remove grep grep.${PN} - update-alternatives --remove egrep egrep.${PN} - update-alternatives --remove fgrep fgrep.${PN} -} diff --git a/meta/packages/gsm/files/0001-Introduce-ports.patch b/meta/packages/gsm/files/0001-Introduce-ports.patch deleted file mode 100644 index b3ba3cb957..0000000000 --- a/meta/packages/gsm/files/0001-Introduce-ports.patch +++ /dev/null @@ -1,710 +0,0 @@ -From 516d67c679101d1503dbd4c0613bcd6ff1b604e4 Mon Sep 17 00:00:00 2001 -From: Andrzej Zaborowski -Date: Wed, 19 Sep 2007 14:03:28 +0200 -Subject: [PATCH] Introduce ports. - ---- - include/gsmd/atcmd.h | 2 +- - include/gsmd/gsmd.h | 7 +- - include/gsmd/uart.h | 28 ++++++ - include/gsmd/vendorplugin.h | 4 +- - src/gsmd/Makefile.am | 2 +- - src/gsmd/atcmd.c | 177 +++++++++++++++++--------------------- - src/gsmd/gsmd.c | 64 ++------------ - src/gsmd/uart.c | 202 +++++++++++++++++++++++++++++++++++++++++++ - 8 files changed, 328 insertions(+), 158 deletions(-) - create mode 100644 include/gsmd/uart.h - create mode 100644 src/gsmd/uart.c - -diff --git a/include/gsmd/atcmd.h b/include/gsmd/atcmd.h -index 0d6c62a..a1af6a0 100644 ---- a/include/gsmd/atcmd.h -+++ b/include/gsmd/atcmd.h -@@ -9,7 +9,7 @@ typedef int atcmd_cb_t(struct gsmd_atcmd *cmd, void *ctx, char *resp); - - extern struct gsmd_atcmd *atcmd_fill(const char *cmd, int rlen, atcmd_cb_t *cb, void *ctx, u_int16_t id); - extern int atcmd_submit(struct gsmd *g, struct gsmd_atcmd *cmd); --extern int atcmd_init(struct gsmd *g, int sockfd); -+extern int atcmd_init(struct gsmd *g, struct gsmd_port *port); - extern void atcmd_drain(int fd); - - #endif /* __GSMD__ */ -diff --git a/include/gsmd/gsmd.h b/include/gsmd/gsmd.h -index ed334f1..4afdf66 100644 ---- a/include/gsmd/gsmd.h -+++ b/include/gsmd/gsmd.h -@@ -10,6 +10,7 @@ - #include - #include - #include -+#include - #include - - void *gsmd_tallocs; -@@ -52,6 +53,7 @@ enum llparse_state { - #define MLPARSE_BUF_SIZE 65535 - - struct llparser { -+ struct gsmd_port *port; - enum llparse_state state; - unsigned int len; - unsigned int flags; -@@ -70,7 +72,7 @@ struct gsmd; - struct gsmd { - unsigned int flags; - int interpreter_ready; -- struct gsmd_fd gfd_uart; -+ struct gsmd_uart uart; - struct gsmd_fd gfd_sock; - struct llparser llp; - struct llist_head users; -@@ -81,9 +83,10 @@ struct gsmd { - struct gsmd_device_state dev_state; - - struct llist_head operators; /* cached list of operator names */ -- unsigned char *mlbuf; /* ml_parse buffer */ -+ char *mlbuf; /* ml_parse buffer */ - unsigned int mlbuf_len; - int mlunsolicited; -+ int clear_to_send; - }; - - struct gsmd_user { -diff --git a/include/gsmd/uart.h b/include/gsmd/uart.h -new file mode 100644 -index 0000000..a006fa7 ---- /dev/null -+++ b/include/gsmd/uart.h -@@ -0,0 +1,28 @@ -+#ifndef __GSMD_UART_H -+#define __GSMD_UART_H -+ -+#ifdef __GSMD__ -+ -+struct gsmd_port { -+ int (*write)(struct gsmd_port *port, const char data[], int len); -+ int (*set_break)(struct gsmd_port *port, int state); -+ /* more parameters here */ -+ int (*newdata_cb)(void *opaque, const char data[], int len); -+ void *newdata_opaque; -+}; -+ -+struct gsmd_uart { -+ struct gsmd_port port; -+ struct gsmd_fd gfd; -+ char txfifo[2048]; -+ int tx_start; -+ int tx_len; -+}; -+ -+extern int set_baudrate(int fd, int baudrate, int hwflow); -+extern void uart_drain(int fd); -+extern int uart_init(struct gsmd_uart *uart, int sockfd); -+ -+#endif /* __GSMD__ */ -+ -+#endif -diff --git a/include/gsmd/vendorplugin.h b/include/gsmd/vendorplugin.h -index 1911fef..1c82790 100644 ---- a/include/gsmd/vendorplugin.h -+++ b/include/gsmd/vendorplugin.h -@@ -11,8 +11,8 @@ struct gsmd_unsolicit; - - struct gsmd_vendor_plugin { - struct llist_head list; -- unsigned char *name; -- unsigned char *ext_chars; -+ char *name; -+ char *ext_chars; - unsigned int num_unsolicit; - const struct gsmd_unsolicit *unsolicit; - int (*detect)(struct gsmd *g); -diff --git a/src/gsmd/Makefile.am b/src/gsmd/Makefile.am -index 9ac45ee..110b757 100644 ---- a/src/gsmd/Makefile.am -+++ b/src/gsmd/Makefile.am -@@ -13,7 +13,7 @@ sbin_PROGRAMS = gsmd - gsmd_CFLAGS = -D PLUGINDIR=\"$(plugindir)\" - gsmd_SOURCES = gsmd.c atcmd.c select.c machine.c vendor.c unsolicited.c log.c \ - usock.c talloc.c timer.c operator_cache.c ext_response.c \ -- sms_cb.c sms_pdu.c -+ sms_cb.c sms_pdu.c uart.c - gsmd_LDADD = -ldl - gsmd_LDFLAGS = -Wl,--export-dynamic - -diff --git a/src/gsmd/atcmd.c b/src/gsmd/atcmd.c -index 2ef6a10..27dfa41 100644 ---- a/src/gsmd/atcmd.c -+++ b/src/gsmd/atcmd.c -@@ -159,7 +159,8 @@ static int llparse_byte(struct llparser *llp, char byte) - return ret; - } - --static int llparse_string(struct llparser *llp, char *buf, unsigned int len) -+static int llparse_string(struct llparser *llp, const char *buf, -+ unsigned int len) - { - while (len--) { - int rc = llparse_byte(llp, *(buf++)); -@@ -187,6 +188,55 @@ static int llparse_init(struct llparser *llp) - return 0; - } - -+/* See if we can now send more commands to the port */ -+static void atcmd_wake_queue(struct gsmd *g) -+{ -+ int len, rc; -+ char *cr; -+ -+ /* write pending commands to UART */ -+ while (g->interpreter_ready && g->clear_to_send) { -+ struct gsmd_atcmd *pos, *pos2; -+ llist_for_each_entry_safe(pos, pos2, &g->pending_atcmds, list) { -+ cr = strchr(pos->cur, '\n'); -+ if (cr) -+ len = cr - pos->cur; -+ else -+ len = pos->buflen; -+ rc = g->llp.port->write(g->llp.port, pos->cur, len); -+ if (rc == 0) { -+ gsmd_log(GSMD_ERROR, -+ "write returns 0, aborting\n"); -+ break; -+ } -+ if (cr && rc == len) -+ rc ++; /* Skip the \n */ -+ pos->buflen -= rc; -+ pos->cur += rc; -+ g->llp.port->write(g->llp.port, "\r", 1); -+ -+ if (!pos->buflen) { -+ /* success: remove from global list of -+ * to-be-sent atcmds */ -+ llist_del(&pos->list); -+ /* append to global list of executing atcmds */ -+ llist_add_tail(&pos->list, &g->busy_atcmds); -+ -+ /* we only send one cmd at the moment */ -+ g->clear_to_send = 0; -+ break; -+ } else { -+ /* The write was short or the atcmd has more -+ * lines to send after a "> ". */ -+ if (rc < len) -+ break; -+ g->clear_to_send = 0; -+ break; -+ } -+ } -+ } -+} -+ - /* mid-level parser */ - - static int parse_final_result(const char *res) -@@ -216,6 +266,7 @@ static int ml_parse(const char *buf, int len, void *ctx) - g->interpreter_ready = 1; - gsmd_initsettings(g); - gmsd_alive_start(g); -+ atcmd_wake_queue(g); - return 0; - } - -@@ -316,6 +367,7 @@ static int ml_parse(const char *buf, int len, void *ctx) - } else { - DEBUGP("Calling cmd->cb()\n"); - cmd->resp = g->mlbuf; -+ g->mlbuf[g->mlbuf_len] = 0; - rc = cmd->cb(cmd, cmd->ctx, cmd->resp); - DEBUGP("Clearing mlbuf\n"); - } -@@ -370,12 +422,15 @@ static int ml_parse(const char *buf, int len, void *ctx) - if (g->mlbuf_len) - g->mlbuf[g->mlbuf_len ++] = '\n'; - DEBUGP("Appending buf to mlbuf\n"); -- if (len > MLPARSE_BUF_SIZE - g->mlbuf_len) -+ if (len > MLPARSE_BUF_SIZE - g->mlbuf_len) { - len = MLPARSE_BUF_SIZE - g->mlbuf_len; -+ gsmd_log(GSMD_NOTICE, "g->mlbuf overrun\n"); -+ } - memcpy(g->mlbuf + g->mlbuf_len, buf, len); - g->mlbuf_len += len; - - if (g->mlunsolicited) { -+ g->mlbuf[g->mlbuf_len] = 0; - rc = unsolicited_parse(g, g->mlbuf, g->mlbuf_len, - strchr(g->mlbuf, ':') + 1); - if (rc == -EAGAIN) { -@@ -422,8 +477,11 @@ final_cb: - - /* if we're finished with current commands, but still have pending - * commands: we want to WRITE again */ -- if (llist_empty(&g->busy_atcmds) && !llist_empty(&g->pending_atcmds)) -- g->gfd_uart.when |= GSMD_FD_WRITE; -+ if (llist_empty(&g->busy_atcmds)) { -+ g->clear_to_send = 1; -+ if (!llist_empty(&g->pending_atcmds)) -+ atcmd_wake_queue(g); -+ } - - return rc; - } -@@ -433,85 +491,23 @@ static int atcmd_prompt(void *data) - { - struct gsmd *g = data; - -- g->gfd_uart.when |= GSMD_FD_WRITE; -+ g->clear_to_send = 1; -+ atcmd_wake_queue(g); - } - - /* callback to be called if [virtual] UART has some data for us */ --static int atcmd_select_cb(int fd, unsigned int what, void *data) -+static int atcmd_newdata_cb(void *opaque, const char data[], int len) - { -- int len, rc; -- static char rxbuf[1024]; -- struct gsmd *g = data; -- char *cr; -- -- if (what & GSMD_FD_READ) { -- memset(rxbuf, 0, sizeof(rxbuf)); -- while ((len = read(fd, rxbuf, sizeof(rxbuf)))) { -- if (len < 0) { -- if (errno == EAGAIN) -- return 0; -- gsmd_log(GSMD_NOTICE, "ERROR reading from fd %u: %d (%s)\n", fd, len, -- strerror(errno)); -- return len; -- } -- rc = llparse_string(&g->llp, rxbuf, len); -- if (rc < 0) { -- gsmd_log(GSMD_ERROR, "ERROR during llparse_string: %d\n", rc); -- return rc; -- } -- } -- } -- -- /* write pending commands to UART */ -- if ((what & GSMD_FD_WRITE) && g->interpreter_ready) { -- struct gsmd_atcmd *pos, *pos2; -- llist_for_each_entry_safe(pos, pos2, &g->pending_atcmds, list) { -- cr = strchr(pos->cur, '\n'); -- if (cr) -- len = cr - pos->cur; -- else -- len = pos->buflen - 1; /* assuming zero-terminated strings */ -- rc = write(fd, pos->cur, len); -- if (rc == 0) { -- gsmd_log(GSMD_ERROR, "write returns 0, aborting\n"); -- break; -- } else if (rc < 0) { -- gsmd_log(GSMD_ERROR, "error during write to fd %d: %d\n", -- fd, rc); -- return rc; -- } -- if (!cr || rc == len) -- rc ++; /* Skip the \n or \0 */ -- pos->buflen -= rc; -- pos->cur += rc; -- write(fd, "\r", 1); -- -- if (!pos->buflen) { -- /* success: remove from global list of -- * to-be-sent atcmds */ -- llist_del(&pos->list); -- /* append to global list of executing atcmds */ -- llist_add_tail(&pos->list, &g->busy_atcmds); -- -- /* we only send one cmd at the moment */ -- break; -- } else { -- /* The write was short or the atcmd has more -- * lines to send after a "> ". */ -- if (rc < len) -- return 0; -- break; -- } -- } -+ struct gsmd *g = opaque; -+ int rc; - -- /* Either pending_atcmds is empty or a command has to wait */ -- g->gfd_uart.when &= ~GSMD_FD_WRITE; -- } -+ rc = llparse_string(&g->llp, data, len); -+ if (rc < 0) -+ gsmd_log(GSMD_ERROR, "ERROR during llparse_string: %d\n", rc); - -- return 0; -+ return rc; - } - -- - struct gsmd_atcmd *atcmd_fill(const char *cmd, int rlen, - atcmd_cb_t cb, void *ctx, u_int16_t id) - { -@@ -544,36 +540,18 @@ int atcmd_submit(struct gsmd *g, struct gsmd_atcmd *cmd) - { - DEBUGP("submitting command `%s'\n", cmd->buf); - -- if (llist_empty(&g->pending_atcmds)) -- g->gfd_uart.when |= GSMD_FD_WRITE; -+ llist_empty(&g->pending_atcmds); - llist_add_tail(&cmd->list, &g->pending_atcmds); -+ atcmd_wake_queue(g); - - return 0; - } - --void atcmd_drain(int fd) --{ -- int rc; -- struct termios t; -- rc = tcflush(fd, TCIOFLUSH); -- rc = tcgetattr(fd, &t); -- DEBUGP("c_iflag = 0x%08x, c_oflag = 0x%08x, c_cflag = 0x%08x, c_lflag = 0x%08x\n", -- t.c_iflag, t.c_oflag, t.c_cflag, t.c_lflag); -- t.c_iflag = t.c_oflag = 0; -- cfmakeraw(&t); -- rc = tcsetattr(fd, TCSANOW, &t); --} -- - /* init atcmd parser */ --int atcmd_init(struct gsmd *g, int sockfd) -+int atcmd_init(struct gsmd *g, struct gsmd_port *port) - { - __atcmd_ctx = talloc_named_const(gsmd_tallocs, 1, "atcmds"); - -- g->gfd_uart.fd = sockfd; -- g->gfd_uart.when = GSMD_FD_READ; -- g->gfd_uart.data = g; -- g->gfd_uart.cb = &atcmd_select_cb; -- - INIT_LLIST_HEAD(&g->pending_atcmds); - INIT_LLIST_HEAD(&g->busy_atcmds); - -@@ -581,7 +559,9 @@ int atcmd_init(struct gsmd *g, int sockfd) - - g->mlbuf_len = 0; - g->mlunsolicited = 0; -+ g->clear_to_send = 1; - -+ g->llp.port = port; - g->llp.cur = g->llp.buf; - g->llp.len = sizeof(g->llp.buf); - g->llp.cb = &ml_parse; -@@ -589,5 +569,8 @@ int atcmd_init(struct gsmd *g, int sockfd) - g->llp.ctx = g; - g->llp.flags = LGSM_ATCMD_F_EXTENDED; - -- return gsmd_register_fd(&g->gfd_uart); -+ port->newdata_opaque = g; -+ port->newdata_cb = atcmd_newdata_cb; -+ -+ return 0; - } -diff --git a/src/gsmd/gsmd.c b/src/gsmd/gsmd.c -index 51b4f2c..846bd17 100644 ---- a/src/gsmd/gsmd.c -+++ b/src/gsmd/gsmd.c -@@ -26,7 +26,6 @@ - #include - #include - #include --#include - #include - - #define _GNU_SOURCE -@@ -247,56 +246,6 @@ int gsmd_initsettings(struct gsmd *gsmd) - return atcmd_submit(gsmd, cmd); - } - --struct bdrt { -- int bps; -- u_int32_t b; --}; -- --static struct bdrt bdrts[] = { -- { 0, B0 }, -- { 9600, B9600 }, -- { 19200, B19200 }, -- { 38400, B38400 }, -- { 57600, B57600 }, -- { 115200, B115200 }, -- { 230400, B230400 }, -- { 460800, B460800 }, -- { 921600, B921600 }, --}; -- --static int set_baudrate(int fd, int baudrate, int hwflow) --{ -- int i; -- u_int32_t bd = 0; -- struct termios ti; -- -- for (i = 0; i < ARRAY_SIZE(bdrts); i++) { -- if (bdrts[i].bps == baudrate) -- bd = bdrts[i].b; -- } -- if (bd == 0) -- return -EINVAL; -- -- i = tcgetattr(fd, &ti); -- if (i < 0) -- return i; -- -- i = cfsetispeed(&ti, B0); -- if (i < 0) -- return i; -- -- i = cfsetospeed(&ti, bd); -- if (i < 0) -- return i; -- -- if (hwflow) -- ti.c_cflag |= CRTSCTS; -- else -- ti.c_cflag &= ~CRTSCTS; -- -- return tcsetattr(fd, 0, &ti); --} -- - static int gsmd_initialize(struct gsmd *g) - { - INIT_LLIST_HEAD(&g->users); -@@ -478,14 +427,19 @@ int main(int argc, char **argv) - if (wait >= 0) - g.interpreter_ready = !wait; - -- if (atcmd_init(&g, fd) < 0) { -+ if (uart_init(&g.uart, fd) < 0) { - fprintf(stderr, "can't initialize UART device\n"); - exit(1); - } - -- write(fd, "\r", 1); -- sleep(1); -- atcmd_drain(fd); -+ if (atcmd_init(&g, &g.uart.port) < 0) { -+ fprintf(stderr, "can't initialize AT parser\n"); -+ exit(1); -+ } -+ write(fd, "\r", 1); -+ sleep(1); -+ -+ uart_drain(fd); - - if (usock_init(&g) < 0) { - fprintf(stderr, "can't open unix socket\n"); -diff --git a/src/gsmd/uart.c b/src/gsmd/uart.c -new file mode 100644 -index 0000000..22a4a5c ---- /dev/null -+++ b/src/gsmd/uart.c -@@ -0,0 +1,202 @@ -+/* Wrapper for the physical UART in a struct gsmd_port abstraction. -+ * -+ * Copyright (C) 2007 OpenMoko, Inc. -+ * Written by Andrzej Zaborowski -+ * -+ * This program is free software; you can redistribute it and/or -+ * modify it under the terms of the GNU General Public License as -+ * published by the Free Software Foundation; either version 2 of -+ * the License, or (at your option) any later version. -+ * -+ * This program is distributed in the hope that it will be useful, -+ * but WITHOUT ANY WARRANTY; without even the implied warranty of -+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ * GNU General Public License for more details. -+ * -+ * You should have received a copy of the GNU General Public License -+ * along with this program; if not, write to the Free Software -+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, -+ * MA 02111-1307 USA -+ */ -+ -+#include -+#include -+#include -+#include -+#include -+ -+#include "gsmd.h" -+ -+#include -+ -+void uart_drain(int fd) -+{ -+ int rc; -+ struct termios t; -+ rc = tcflush(fd, TCIOFLUSH); -+ rc = tcgetattr(fd, &t); -+ DEBUGP( -+ "c_iflag = 0x%08x, c_oflag = 0x%08x, " -+ "c_cflag = 0x%08x, c_lflag = 0x%08x\n", -+ t.c_iflag, t.c_oflag, t.c_cflag, t.c_lflag); -+ t.c_iflag = t.c_oflag = 0; -+ cfmakeraw(&t); -+ rc = tcsetattr(fd, TCSANOW, &t); -+} -+ -+struct bdrt { -+ int bps; -+ u_int32_t b; -+}; -+ -+static struct bdrt bdrts[] = { -+ { 0, B0 }, -+ { 9600, B9600 }, -+ { 19200, B19200 }, -+ { 38400, B38400 }, -+ { 57600, B57600 }, -+ { 115200, B115200 }, -+ { 230400, B230400 }, -+ { 460800, B460800 }, -+ { 921600, B921600 }, -+}; -+ -+int set_baudrate(int fd, int baudrate, int hwflow) -+{ -+ int i; -+ u_int32_t bd = 0; -+ struct termios ti; -+ -+ for (i = 0; i < ARRAY_SIZE(bdrts); i++) { -+ if (bdrts[i].bps == baudrate) -+ bd = bdrts[i].b; -+ } -+ if (bd == 0) -+ return -EINVAL; -+ -+ i = tcgetattr(fd, &ti); -+ if (i < 0) -+ return i; -+ -+ i = cfsetispeed(&ti, B0); -+ if (i < 0) -+ return i; -+ -+ i = cfsetospeed(&ti, bd); -+ if (i < 0) -+ return i; -+ -+ if (hwflow) -+ ti.c_cflag |= CRTSCTS; -+ else -+ ti.c_cflag &= ~CRTSCTS; -+ -+ return tcsetattr(fd, 0, &ti); -+} -+ -+static int uart_select_cb(int fd, unsigned int what, void *data) -+{ -+ struct gsmd_uart *uart = (struct gsmd_uart *) data; -+ static char rxbuf[2048]; -+ int rc, len; -+ -+ if ((what & GSMD_FD_READ) && uart->port.newdata_cb) { -+ while ((len = read(fd, rxbuf, sizeof(rxbuf)))) { -+ if (len < 0) { -+ if (errno == EAGAIN || errno == EINTR) -+ return 0; -+ gsmd_log(GSMD_NOTICE, "ERROR reading from " -+ "fd %u: %d (%s)\n", fd, errno, -+ strerror(errno)); -+ return -errno; -+ } -+ -+ rc = uart->port.newdata_cb( -+ uart->port.newdata_opaque, -+ rxbuf, -+ len); -+ if (rc < 0) -+ return rc; -+ } -+ } -+ -+ /* Write pending data to UART. */ -+ if ((what & GSMD_FD_WRITE) && uart->tx_len) { -+ while (uart->tx_start + uart->tx_len >= sizeof(uart->txfifo)) { -+ len = sizeof(uart->txfifo) - uart->tx_start; -+ rc = write(fd, &uart->txfifo[uart->tx_start], len); -+ if (rc < 0 && errno != EINTR) { -+ if (errno == EAGAIN) -+ return 0; -+ gsmd_log(GSMD_NOTICE, "ERROR writing " -+ "fd %u: %d (%s)\n", fd, errno, -+ strerror(errno)); -+ return -errno; -+ } -+ -+ if (rc > 0) { -+ uart->tx_start += rc; -+ uart->tx_len -= rc; -+ } -+ } -+ uart->tx_start &= sizeof(uart->txfifo) - 1; -+ -+ while (uart->tx_len) { -+ rc = write(fd, &uart->txfifo[uart->tx_start], -+ uart->tx_len); -+ if (rc < 0 && errno != EINTR) { -+ if (errno == EAGAIN) -+ return 0; -+ gsmd_log(GSMD_NOTICE, "ERROR writing " -+ "fd %u: %d (%s)\n", fd, errno, -+ strerror(errno)); -+ return -errno; -+ } -+ -+ if (rc > 0) { -+ uart->tx_start += rc; -+ uart->tx_len -= rc; -+ } -+ } -+ -+ /* If we reached here, there's no more data for the moment. */ -+ uart->gfd.when &= ~GSMD_FD_WRITE; -+ } -+ -+ return 0; -+} -+ -+static int uart_write(struct gsmd_port *port, const char data[], int len) -+{ -+ struct gsmd_uart *uart = (struct gsmd_uart *) port; -+ int start = (uart->tx_start + uart->tx_len) & -+ (sizeof(uart->txfifo) - 1); -+ int space = sizeof(uart->txfifo) - start; -+ -+ if (uart->tx_len + len > sizeof(uart->txfifo)) -+ len = sizeof(uart->txfifo) - uart->tx_len; -+ -+ if (len) -+ uart->gfd.when |= GSMD_FD_WRITE; -+ -+ if (len > space) { -+ memcpy(uart->txfifo + start, data, space); -+ memcpy(uart->txfifo, data + space, len - space); -+ } else -+ memcpy(uart->txfifo + start, data, len); -+ -+ uart->tx_len += len; -+ return len; -+} -+ -+int uart_init(struct gsmd_uart *uart, int sockfd) -+{ -+ uart->gfd.fd = sockfd; -+ uart->gfd.when = GSMD_FD_READ; -+ uart->gfd.data = uart; -+ uart->gfd.cb = &uart_select_cb; -+ -+ uart->port.write = uart_write; -+ -+ return gsmd_register_fd(&uart->gfd); -+} --- -1.5.2.1 - diff --git a/meta/packages/gsm/files/0002-Flush-all-pending-commands-before-restarting-the-mod.patch b/meta/packages/gsm/files/0002-Flush-all-pending-commands-before-restarting-the-mod.patch deleted file mode 100644 index 3683596389..0000000000 --- a/meta/packages/gsm/files/0002-Flush-all-pending-commands-before-restarting-the-mod.patch +++ /dev/null @@ -1,74 +0,0 @@ -From 1078f7aced63c6216bffe649930b97c9ccf9a16e Mon Sep 17 00:00:00 2001 -From: Andrzej Zaborowski -Date: Wed, 19 Sep 2007 14:04:50 +0200 -Subject: [PATCH] Flush all pending commands before restarting the modem initialisation. - ---- - include/gsmd/gsmd.h | 1 + - src/gsmd/atcmd.c | 21 +++++++++++++++++++++ - src/gsmd/timer.c | 8 ++++++++ - 3 files changed, 30 insertions(+), 0 deletions(-) - -diff --git a/include/gsmd/gsmd.h b/include/gsmd/gsmd.h -index 4afdf66..6ac9d8e 100644 ---- a/include/gsmd/gsmd.h -+++ b/include/gsmd/gsmd.h -@@ -131,6 +131,7 @@ struct gsmd_timer { - - int gsmd_timer_init(void); - void gmsd_timer_check_n_run(void); -+void gsmd_timer_reset(void); - - struct gsmd_timer *gsmd_timer_alloc(void); - int gsmd_timer_register(struct gsmd_timer *timer); -diff --git a/src/gsmd/atcmd.c b/src/gsmd/atcmd.c -index 27dfa41..2f6cee2 100644 ---- a/src/gsmd/atcmd.c -+++ b/src/gsmd/atcmd.c -@@ -264,6 +264,27 @@ static int ml_parse(const char *buf, int len, void *ctx) - if (strlen(buf) == 0 || - !strcmp(buf, "AT-Command Interpreter ready")) { - g->interpreter_ready = 1; -+ g->clear_to_send = 1; -+ -+ /* Flush current queue and reinitialise */ -+ while (!llist_empty(&g->busy_atcmds)) { -+ cmd = llist_entry(g->busy_atcmds.next, -+ struct gsmd_atcmd, list); -+ gsmd_log(GSMD_NOTICE, "discarding busy cmd %s\n", -+ cmd->buf); -+ llist_del(&cmd->list); -+ talloc_free(cmd); -+ } -+ while (!llist_empty(&g->pending_atcmds)) { -+ cmd = llist_entry(g->pending_atcmds.next, -+ struct gsmd_atcmd, list); -+ gsmd_log(GSMD_NOTICE, "discarding pending cmd %s\n", -+ cmd->buf); -+ llist_del(&cmd->list); -+ talloc_free(cmd); -+ } -+ -+ gsmd_timer_reset(); - gsmd_initsettings(g); - gmsd_alive_start(g); - atcmd_wake_queue(g); -diff --git a/src/gsmd/timer.c b/src/gsmd/timer.c -index 5200690..8877275 100644 ---- a/src/gsmd/timer.c -+++ b/src/gsmd/timer.c -@@ -215,3 +215,11 @@ void gsmd_timer_unregister(struct gsmd_timer *timer) - /* re-calculate next expiration */ - calc_next_expiration(); - } -+ -+void gsmd_timer_reset(void) -+{ -+ while (!llist_empty(&gsmd_timers)) -+ /* TODO: free associated resources (e.g timer->cancel_cb()) */ -+ llist_del(&llist_entry(gsmd_timers.next, -+ struct gsmd_timer, list)->list); -+} --- -1.5.2.1 - diff --git a/meta/packages/gsm/files/0003-Correctly-segment-incoming-usock-data-into-packets.patch b/meta/packages/gsm/files/0003-Correctly-segment-incoming-usock-data-into-packets.patch deleted file mode 100644 index 984acc9369..0000000000 --- a/meta/packages/gsm/files/0003-Correctly-segment-incoming-usock-data-into-packets.patch +++ /dev/null @@ -1,77 +0,0 @@ -From 8af1bb4a0d0df9baa80859c5f7f56cbd7634aded Mon Sep 17 00:00:00 2001 -From: Andrzej Zaborowski -Date: Wed, 19 Sep 2007 14:06:19 +0200 -Subject: [PATCH] Correctly segment incoming usock data into packets, handler short reads. - ---- - include/gsmd/gsmd.h | 2 ++ - src/gsmd/usock.c | 20 ++++++++++++++++---- - 2 files changed, 18 insertions(+), 4 deletions(-) - -diff --git a/include/gsmd/gsmd.h b/include/gsmd/gsmd.h -index 6ac9d8e..acec02a 100644 ---- a/include/gsmd/gsmd.h -+++ b/include/gsmd/gsmd.h -@@ -95,6 +95,8 @@ struct gsmd_user { - struct gsmd *gsmd; - struct gsmd_fd gfd; /* the socket */ - u_int32_t subscriptions; /* bitmaks of subscribed event groups */ -+ char usock_fifo[1024]; -+ int usock_len; - - struct llist_head pb_readrg_list; /* our READRG phonebook list */ - struct llist_head pb_find_list; /* our FIND phonebook list */ -diff --git a/src/gsmd/usock.c b/src/gsmd/usock.c -index 32e98d0..bac5f0c 100644 ---- a/src/gsmd/usock.c -+++ b/src/gsmd/usock.c -@@ -1529,14 +1529,15 @@ static int usock_rcv_pcmd(struct gsmd_user *gu, char *buf, int len) - static int gsmd_usock_user_cb(int fd, unsigned int what, void *data) - { - struct gsmd_user *gu = data; -+ struct gsmd_msg_hdr *gph; - - /* FIXME: check some kind of backlog and limit it */ - - if (what & GSMD_FD_READ) { -- char buf[1024]; - int rcvlen; - /* read data from socket, determine what he wants */ -- rcvlen = read(fd, buf, sizeof(buf)); -+ rcvlen = read(fd, gu->usock_fifo + gu->usock_len, -+ sizeof(gu->usock_fifo) - gu->usock_len); - if (rcvlen == 0) { - DEBUGP("EOF, this client has just vanished\n"); - /* EOF, this client has just vanished */ -@@ -1549,8 +1550,18 @@ static int gsmd_usock_user_cb(int fd, unsigned int what, void *data) - return 0; - } else if (rcvlen < 0) - return rcvlen; -- else -- return usock_rcv_pcmd(gu, buf, rcvlen); -+ -+ gu->usock_len += rcvlen; -+ gph = (struct gsmd_msg_hdr *) gu->usock_fifo; -+ while (gu->usock_len >= sizeof(*gph) && -+ gu->usock_len >= sizeof(*gph) + gph->len) { -+ usock_rcv_pcmd(gu, gu->usock_fifo, gu->usock_len); -+ gu->usock_len -= sizeof(*gph) + gph->len; -+ memmove(gu->usock_fifo, -+ gu->usock_fifo + sizeof(*gph) + -+ gph->len, -+ gu->usock_len); -+ } - } - - if (what & GSMD_FD_WRITE) { -@@ -1609,6 +1620,7 @@ static int gsmd_usock_cb(int fd, unsigned int what, void *data) - newuser->gfd.cb = &gsmd_usock_user_cb; - newuser->gsmd = g; - newuser->subscriptions = 0xffffffff; -+ newuser->usock_len = 0; - INIT_LLIST_HEAD(&newuser->finished_ucmds); - INIT_LLIST_HEAD(&newuser->pb_readrg_list); - INIT_LLIST_HEAD(&newuser->pb_find_list); --- -1.5.2.1 - diff --git a/meta/packages/gsm/files/0004-Handle-read-and-write-return-values.patch b/meta/packages/gsm/files/0004-Handle-read-and-write-return-values.patch deleted file mode 100644 index f5e7a7902d..0000000000 --- a/meta/packages/gsm/files/0004-Handle-read-and-write-return-values.patch +++ /dev/null @@ -1,176 +0,0 @@ -From 421b0fa14fefbd13a455c20380fecddda616b41a Mon Sep 17 00:00:00 2001 -From: Andrzej Zaborowski -Date: Wed, 19 Sep 2007 18:30:36 +0200 -Subject: [PATCH] Handle read() and write() return values. - ---- - include/libgsmd/libgsmd.h | 3 +- - src/gsmd/usock.c | 38 ++++++++++++++++----------- - src/libgsmd/lgsm_internals.h | 2 + - src/libgsmd/libgsmd.c | 58 ++++++++++++++++++++++++++--------------- - 4 files changed, 63 insertions(+), 38 deletions(-) - -diff --git a/include/libgsmd/libgsmd.h b/include/libgsmd/libgsmd.h -index fc56890..db15aa9 100644 ---- a/include/libgsmd/libgsmd.h -+++ b/include/libgsmd/libgsmd.h -@@ -65,6 +65,7 @@ extern int lgsm_subscriptions(struct lgsm_handle *lh, u_int32_t subscriptions); - - extern struct gsmd_msg_hdr *lgsm_gmh_fill(int type, int subtype, int payload_len); - extern int lgsm_send(struct lgsm_handle *lh, struct gsmd_msg_hdr *gmh); --extern int lgsm_handle_packet(struct lgsm_handle *lh, char *buf, int len); -+extern int lgsm_handle_packet(struct lgsm_handle *lh, -+ const char *buf, int len); - - #endif -diff --git a/src/gsmd/usock.c b/src/gsmd/usock.c -index bac5f0c..2283600 100644 ---- a/src/gsmd/usock.c -+++ b/src/gsmd/usock.c -@@ -1569,23 +1569,29 @@ static int gsmd_usock_user_cb(int fd, unsigned int what, void *data) - struct gsmd_ucmd *ucmd, *uctmp; - llist_for_each_entry_safe(ucmd, uctmp, &gu->finished_ucmds, - list) { -- int rc; -- -- rc = write(fd, &ucmd->hdr, sizeof(ucmd->hdr) + ucmd->hdr.len); -- if (rc < 0) { -- DEBUGP("write return %d\n", rc); -- return rc; -- } -- if (rc == 0) { -- DEBUGP("write returns zero!!\n"); -- break; -+ const void *pos = &ucmd->hdr; -+ size_t len = sizeof(ucmd->hdr) + ucmd->hdr.len; -+ -+ while (len) { -+ ssize_t rc; -+ -+ rc = write(fd, pos, len); -+ if (rc < 0 && errno != EINTR) { -+ DEBUGP("write returned %s\n", -+ strerror(errno)); -+ return rc; -+ } -+ if (rc == 0 && pos == &ucmd->hdr) { -+ DEBUGP("write returns zero!!\n"); -+ return 0; -+ } -+ if (rc > 0) { -+ len -= rc; -+ pos += rc; -+ } - } -- if (rc != sizeof(ucmd->hdr) + ucmd->hdr.len) { -- DEBUGP("short write\n"); -- break; -- } -- -- DEBUGP("successfully sent cmd %p to user %p, freeing\n", ucmd, gu); -+ DEBUGP("successfully sent cmd %p to user %p, " -+ "freeing\n", ucmd, gu); - llist_del(&ucmd->list); - talloc_free(ucmd); - } -diff --git a/src/libgsmd/lgsm_internals.h b/src/libgsmd/lgsm_internals.h -index c826723..f1b1a23 100644 ---- a/src/libgsmd/lgsm_internals.h -+++ b/src/libgsmd/lgsm_internals.h -@@ -8,6 +8,8 @@ struct lgsm_handle { - int fd; - lgsm_msg_handler *handler[__NUM_GSMD_MSGS]; - enum lgsm_netreg_state netreg_state; -+ char usock_fifo[1024]; -+ int usock_len; - }; - - int lgsm_send(struct lgsm_handle *lh, struct gsmd_msg_hdr *gmh); -diff --git a/src/libgsmd/libgsmd.c b/src/libgsmd/libgsmd.c -index 9906ea8..cc804ed 100644 ---- a/src/libgsmd/libgsmd.c -+++ b/src/libgsmd/libgsmd.c -@@ -86,34 +86,37 @@ static int lgsm_open_backend(struct lgsm_handle *lh, const char *device) - } - - /* handle a packet that was received on the gsmd socket */ --int lgsm_handle_packet(struct lgsm_handle *lh, char *buf, int len) -+int lgsm_handle_packet(struct lgsm_handle *lh, const char *buf, int len) - { - struct gsmd_msg_hdr *gmh; - lgsm_msg_handler *handler; - int rc = 0; - -- while (len) { -- if (len < sizeof(*gmh)) -- return -EINVAL; -- gmh = (struct gsmd_msg_hdr *) buf; -- -- if (len - sizeof(*gmh) < gmh->len) -- return -EINVAL; -- len -= sizeof(*gmh) + gmh->len; -- buf += sizeof(*gmh) + gmh->len; -- -- if (gmh->msg_type >= __NUM_GSMD_MSGS) -- return -EINVAL; -- -- handler = lh->handler[gmh->msg_type]; -+ if (lh->usock_len + len > sizeof(lh->usock_fifo)) -+ return -ENOMEM; - -- if (handler) -+ memcpy(lh->usock_fifo + lh->usock_len, buf, len); -+ lh->usock_len += len; -+ gmh = (struct gsmd_msg_hdr *) lh->usock_fifo; -+ while (lh->usock_len >= sizeof(*gmh) && -+ lh->usock_len >= sizeof(*gmh) + gmh->len) { -+ if (gmh->msg_type < __NUM_GSMD_MSGS && -+ (handler = lh->handler[gmh->msg_type])) - rc |= handler(lh, gmh); -- else -- fprintf(stderr, "unable to handle packet type=%u\n", -- gmh->msg_type); -+ else { -+ fprintf(stderr, "unable to handle packet " -+ "type=%u id=%u\n", -+ gmh->msg_type, gmh->id); -+ rc |= EINVAL; -+ } -+ -+ lh->usock_len -= gmh->len + sizeof(*gmh); -+ memmove(lh->usock_fifo, -+ lh->usock_fifo + gmh->len + sizeof(*gmh), -+ lh->usock_len); - } -- return rc; -+ -+ return -rc; - } - - int lgsm_register_handler(struct lgsm_handle *lh, int type, lgsm_msg_handler *handler) -@@ -193,8 +196,21 @@ static u_int16_t next_msg_id; - - int lgsm_send(struct lgsm_handle *lh, struct gsmd_msg_hdr *gmh) - { -+ ssize_t rc; -+ size_t len = sizeof(*gmh) + gmh->len; -+ const void *pos = gmh; -+ - gmh->id = next_msg_id++; -- return send(lh->fd, (char *) gmh, sizeof(*gmh) + gmh->len, 0); -+ while (len) { -+ rc = send(lh->fd, pos, len, 0); -+ if (rc < 0 && errno != EINTR) -+ return -errno; -+ if (rc > 0) { -+ len -= rc; -+ pos += rc; -+ } -+ } -+ return 0; - } - - struct gsmd_msg_hdr *lgsm_gmh_fill(int type, int subtype, int payload_len) --- -1.5.2.1 - diff --git a/meta/packages/gsm/files/0005-Add-ask-ds-option-forSMS.patch b/meta/packages/gsm/files/0005-Add-ask-ds-option-forSMS.patch deleted file mode 100644 index e9f49bd7d2..0000000000 --- a/meta/packages/gsm/files/0005-Add-ask-ds-option-forSMS.patch +++ /dev/null @@ -1,130 +0,0 @@ -diff --git a/include/gsmd/usock.h b/include/gsmd/usock.h -index 236ad78..66cdf48 100644 ---- a/include/gsmd/usock.h -+++ b/include/gsmd/usock.h -@@ -332,6 +332,7 @@ struct gsmd_sms { - struct gsmd_sms_submit { - struct gsmd_addr addr; - struct gsmd_sms payload; -+ int ask_ds; - }; - - /* Refer to GSM 07.05 subclause 4.4 */ -diff --git a/include/libgsmd/sms.h b/include/libgsmd/sms.h -index 3ada62d..9808442 100644 ---- a/include/libgsmd/sms.h -+++ b/include/libgsmd/sms.h -@@ -46,6 +46,7 @@ struct lgsm_sms { - enum gsmd_sms_alphabet alpha; - u_int8_t data[LGSM_SMS_DATA_MAXLEN+1]; - int length; -+ int ask_ds; - }; - - /* GSM 03.40 subclause 9.2.2.2 and GSM 07.05 subclause 4.4 and subclause 3.1 */ -diff --git a/src/gsmd/sms_pdu.c b/src/gsmd/sms_pdu.c -index d1235dd..d461999 100644 ---- a/src/gsmd/sms_pdu.c -+++ b/src/gsmd/sms_pdu.c -@@ -247,7 +247,8 @@ int sms_pdu_make_smssubmit(char *dest, const struct gsmd_sms_submit *src) - GSMD_SMS_TP_MTI_SUBMIT | - (0 << 2) | /* Reject Duplicates: 0 */ - GSMD_SMS_TP_VPF_NOT_PRESENT | -- GSMD_SMS_TP_SRR_STATUS_REQUEST | -+ (src->ask_ds ? GSMD_SMS_TP_SRR_STATUS_REQUEST : -+ GSMD_SMS_TP_SRR_NOT_REQUEST) | - (src->payload.has_header ? GSMD_SMS_TP_UDHI_WITH_HEADER : - GSMD_SMS_TP_UDHI_NO_HEADER) | - GSMD_SMS_TP_RP_NOT_SET; -diff --git a/src/libgsmd/libgsmd_sms.c b/src/libgsmd/libgsmd_sms.c -index 22d7dbf..bbc8689 100644 ---- a/src/libgsmd/libgsmd_sms.c -+++ b/src/libgsmd/libgsmd_sms.c -@@ -126,6 +126,7 @@ int lgsm_sms_send(struct lgsm_handle *lh, - if (lgsm_number2addr(&gss->addr, sms->addr, 1)) - return -EINVAL; - -+ gss->ask_ds = sms->ask_ds; - gss->payload.has_header = 0; - gss->payload.length = sms->length; - gss->payload.coding_scheme = sms->alpha; -@@ -161,6 +162,7 @@ int lgsm_sms_write(struct lgsm_handle *lh, - if (lgsm_number2addr(&gsw->sms.addr, sms_write->sms.addr, 1)) - return -EINVAL; - -+ gsw->sms.ask_ds = sms_write->sms.ask_ds; - gsw->sms.payload.has_header = 0; - gsw->sms.payload.length = sms_write->sms.length; - gsw->sms.payload.coding_scheme = sms_write->sms.alpha; -diff --git a/src/util/shell.c b/src/util/shell.c -index f902126..f26e17e 100644 ---- a/src/util/shell.c -+++ b/src/util/shell.c -@@ -355,7 +355,7 @@ static int shell_help(void) - "\tsd\tSMS Delete (sd=index,delflg)\n" - "\tsl\tSMS List (sl=stat)\n" - "\tsr\tSMS Read (sr=index)\n" -- "\tss\tSMS Send (ss=number,text|[\"text\"])\n" -+ "\tss\tSMS Send (ss=ask_ds,number,text|[\"text\"])\n" - "\tsw\tSMS Write (sw=stat,number,text)\n" - "\tsm\tSMS Storage stats\n" - "\tsM\tSMS Set preferred storage (sM=mem1,mem2,mem3)\n" -@@ -563,33 +563,29 @@ int shell_main(struct lgsm_handle *lgsmh) - struct lgsm_sms sms; - - ptr = strchr(buf, '='); -+ sms.ask_ds = atoi(ptr+1); - fcomma = strchr(buf, ','); -- if (!ptr || !fcomma) { -- printf("Wrong command format\n"); -- } else { -- strncpy(sms.addr, ptr+1, fcomma-ptr-1); -- sms.addr[fcomma-ptr-1] = '\0'; -- -- /* todo define \" to allow " in text */ -- if (fcomma[1] == '"' && -- !strchr(fcomma+2, '"')) { -+ lcomma = strchr(fcomma+1, ','); -+ strncpy(sms.addr, fcomma+1, lcomma-fcomma-1); -+ sms.addr[lcomma-fcomma-1] = '\0'; -+ /* todo define \" to allow " in text */ -+ if (lcomma[1]=='"' && -+ !strchr(lcomma+2, '"')) { - /* read until closing '"' */ - rc = fscanf(stdin, "%[^\"]\"", -- fcomma+strlen(fcomma)); -+ lcomma+strlen(lcomma)); - if (rc == EOF) { - printf("EOF\n"); - return -1; - } - /* remove brackets */ -- fcomma++; -- fcomma[strlen(fcomma)] = '\0'; -- } -- -- printf("Send SMS\n"); -- packing_7bit_character(fcomma+1, &sms); -+ lcomma++; -+ lcomma[strlen(lcomma)] = '\0'; -+ } -+ printf("Send SMS\n"); -+ packing_7bit_character(lcomma+1, &sms); - -- lgsm_sms_send(lgsmh, &sms); -- } -+ lgsm_sms_send(lgsmh, &sms); - } else if ( !strncmp(buf, "sw", 2)) { - printf("Write SMS\n"); - struct lgsm_sms_write sms_write; -@@ -603,6 +599,7 @@ int shell_main(struct lgsm_handle *lgsmh) - sms_write.sms.addr[lcomma-fcomma-1] = '\0'; - packing_7bit_character( - lcomma+1, &sms_write.sms); -+ sms_write.sms.ask_ds = 0; - - lgsm_sms_write(lgsmh, &sms_write); - } else if (!strncmp(buf, "sm", 2)) { --- -1.5.2.1 - diff --git a/meta/packages/gsm/files/024_sms-text-in-bracket.patch b/meta/packages/gsm/files/024_sms-text-in-bracket.patch deleted file mode 100644 index 32a1ca33ff..0000000000 --- a/meta/packages/gsm/files/024_sms-text-in-bracket.patch +++ /dev/null @@ -1,70 +0,0 @@ -http://bugzilla.openmoko.org/cgi-bin/bugzilla/show_bug.cgi?id=834 - -From: Kristian Mueller -Subject: [PATCH] libgsmd-tool does not allow sms with more than one word - -libgsmd-tool only allows for command strings without spaces. -SMS messages with more than one word will be parsed as multible commands. -The patch introduces SMS message text in bracket and fixes a NULL pointer -reference on mailformed "ss" commands. - -Signed-off-by: Jim Huang ---- - src/util/shell.c | 32 ++++++++++++++++++++++++++------ - 1 file changed, 26 insertions(+), 6 deletions(-) - -Index: gsm/src/util/shell.c -=================================================================== ---- gsm.orig/src/util/shell.c 2007-08-31 16:15:30.000000000 +0800 -+++ gsm/src/util/shell.c 2007-09-17 23:35:31.000000000 +0800 -@@ -389,7 +389,7 @@ - "\tsd\tSMS Delete (sd=index,delflg)\n" - "\tsl\tSMS List (sl=stat)\n" - "\tsr\tSMS Read (sr=index)\n" -- "\tss\tSMS Send (ss=number,text)\n" -+ "\tss\tSMS Send (ss=number,text|[\"text\"])\n" - "\tsw\tSMS Write (sw=stat,number,text)\n" - "\tsm\tSMS Storage stats\n" - "\tsM\tSMS Set preferred storage (sM=mem1,mem2,mem3)\n" -@@ -612,16 +612,36 @@ - - lgsm_sms_read(lgsmh, atoi(ptr+1)); - } else if ( !strncmp(buf, "ss", 2)) { -- printf("Send SMS\n"); - struct lgsm_sms sms; - - ptr = strchr(buf, '='); - fcomma = strchr(buf, ','); -- strncpy(sms.addr, ptr+1, fcomma-ptr-1); -- sms.addr[fcomma-ptr-1] = '\0'; -- packing_7bit_character(fcomma+1, &sms); -+ if (!ptr || !fcomma) { -+ printf("Wrong command format\n"); -+ } else { -+ strncpy(sms.addr, ptr+1, fcomma-ptr-1); -+ sms.addr[fcomma-ptr-1] = '\0'; -+ -+ /* todo define \" to allow " in text */ -+ if (fcomma[1] == '"' && -+ !strchr(fcomma+2, '"')) { -+ /* read until closing '"' */ -+ rc = fscanf(stdin, "%[^\"]\"", -+ fcomma+strlen(fcomma)); -+ if (rc == EOF) { -+ printf("EOF\n"); -+ return -1; -+ } -+ /* remove brackets */ -+ fcomma++; -+ fcomma[strlen(fcomma)] = '\0'; -+ } -+ -+ printf("Send SMS\n"); -+ packing_7bit_character(fcomma+1, &sms); - -- lgsm_sms_send(lgsmh, &sms); -+ lgsm_sms_send(lgsmh, &sms); -+ } - } else if ( !strncmp(buf, "sw", 2)) { - printf("Write SMS\n"); - struct lgsm_sms_write sms_write; diff --git a/meta/packages/gsm/files/025_sms-status-report.patch b/meta/packages/gsm/files/025_sms-status-report.patch deleted file mode 100644 index 560e72e380..0000000000 --- a/meta/packages/gsm/files/025_sms-status-report.patch +++ /dev/null @@ -1,133 +0,0 @@ -From: Erin Yueh -Subject: [PATCH] SMS status report - -I made a patch for SMS status report. It can change SMS-Submit messages -and ask for a status report. When the destination address receives our -message, the service center will send a SMS-STATUS-REPORT to us. We can -tell what messages we sent by TP-MR (message reference number) value and -can know the sending result by TP-ST (Status) value from status report -messages. - -PS. if you don't want to ask a status report, you can change this value -back. Replace "GSMD_SMS_TP_SRR_STATUS_REQUEST" with -"GSMD_SMS_TP_SRR_NOT_REQUEST". -header[pos ++] = - GSMD_SMS_TP_MTI_SUBMIT | - (0 << 2) | /* Reject Duplicates: 0 */ - GSMD_SMS_TP_VPF_NOT_PRESENT | -- GSMD_SMS_TP_SRR_NOT_REQUEST | -+ GSMD_SMS_TP_SRR_STATUS_REQUEST | - (src->payload.has_header ? GSMD_SMS_TP_UDHI_WITH_HEADER : - GSMD_SMS_TP_UDHI_NO_HEADER) | - GSMD_SMS_TP_RP_NOT_SET; - -Signed-off-by: Jim Huang ---- - src/gsmd/sms_pdu.c | 54 +++++++++++++++++++++++++++++++++++++++++++----------- - src/util/event.c | 6 +++++- - 2 files changed, 48 insertions(+), 12 deletions(-) - -Index: gsm/src/gsmd/sms_pdu.c -=================================================================== ---- gsm.orig/src/gsmd/sms_pdu.c 2007-09-06 11:14:34.000000000 +0800 -+++ gsm/src/gsmd/sms_pdu.c 2007-09-17 23:39:20.000000000 +0800 -@@ -139,6 +139,17 @@ - /* Skip TP-PID */ - len -= 9; - src += 9; -+ -+ /* TP-UDL */ -+ dst->payload.length = src[0]; -+ i = sms_data_bytelen(dst->payload.coding_scheme, src[0]); -+ -+ /* TP-UD */ -+ if (len < 1 + i || i > GSMD_SMS_DATA_MAXLEN) -+ return 1; -+ memcpy(dst->payload.data, src + 1, i); -+ dst->payload.data[i] = 0; -+ - break; - case GSMD_SMS_TP_MTI_SUBMIT: - if (len < 4) -@@ -179,23 +190,44 @@ - src += vpf ? 3 : 2; - - memset(dst->time_stamp, 0, 7); -+ -+ /* TP-UDL */ -+ dst->payload.length = src[0]; -+ i = sms_data_bytelen(dst->payload.coding_scheme, src[0]); -+ -+ /* TP-UD */ -+ if (len < 1 + i || i > GSMD_SMS_DATA_MAXLEN) -+ return 1; -+ memcpy(dst->payload.data, src + 1, i); -+ dst->payload.data[i] = 0; - break; - case GSMD_SMS_TP_MTI_STATUS_REPORT: -- /* TODO */ -+ if (len < 3) -+ return 1; -+ -+ /* TP-MR set it gsmd_sms_list.index*/ -+ dst->index = (int) src[1]; -+ /* TP-STATUS set it to coding_scheme */ -+ dst->payload.coding_scheme = (int) src[len-1]; -+ /* TP-RA */ -+ i = sms_number_bytelen(src[3], src[2]); -+ if (len < 13 + i) -+ return 1; -+ if (sms_address2ascii(&dst->addr, src + 2)) -+ return 1; -+ len -= 4 + i; -+ src += 4 + i; -+ /* TP-SCTS */ -+ memcpy(dst->time_stamp, src, 7); -+ /* TP-UD */ -+ dst->payload.length = 0; -+ dst->payload.data[0] = 0; -+ break; - default: - /* Unknown PDU type */ - return 1; - } - -- /* TP-UDL */ -- dst->payload.length = src[0]; -- i = sms_data_bytelen(dst->payload.coding_scheme, src[0]); -- -- /* TP-UD */ -- if (len < 1 + i || i > GSMD_SMS_DATA_MAXLEN) -- return 1; -- memcpy(dst->payload.data, src + 1, i); -- dst->payload.data[i] = 0; - - return 0; - } -@@ -215,7 +247,7 @@ - GSMD_SMS_TP_MTI_SUBMIT | - (0 << 2) | /* Reject Duplicates: 0 */ - GSMD_SMS_TP_VPF_NOT_PRESENT | -- GSMD_SMS_TP_SRR_NOT_REQUEST | -+ GSMD_SMS_TP_SRR_STATUS_REQUEST | - (src->payload.has_header ? GSMD_SMS_TP_UDHI_WITH_HEADER : - GSMD_SMS_TP_UDHI_NO_HEADER) | - GSMD_SMS_TP_RP_NOT_SET; -Index: gsm/src/util/event.c -=================================================================== ---- gsm.orig/src/util/event.c 2007-09-06 11:14:34.000000000 +0800 -+++ gsm/src/util/event.c 2007-09-17 23:39:47.000000000 +0800 -@@ -128,8 +128,12 @@ - static int inds_handler(struct lgsm_handle *lh, int evt, - struct gsmd_evt_auxdata *aux) - { -- if (aux->u.ds.inlined) -+ if (aux->u.ds.inlined) { -+ struct gsmd_sms_list *sms; -+ sms = (struct gsmd_sms_list *) aux->data; - printf("EVENT: Incoming Status Report\n"); -+ printf("message ref = %d, status = %d\n", sms->index,sms->payload.coding_scheme); -+ } - else - printf("EVENT: Incoming Status Report stored at location %i\n", - aux->u.ds.index); diff --git a/meta/packages/gsm/files/027_phonebook-find-and-read-range-support.patch b/meta/packages/gsm/files/027_phonebook-find-and-read-range-support.patch deleted file mode 100644 index ea0f12daac..0000000000 --- a/meta/packages/gsm/files/027_phonebook-find-and-read-range-support.patch +++ /dev/null @@ -1,423 +0,0 @@ -From: Sean Chiang -Subject: [PATCH] Improvement for find and read phonebooks in gsmd - -This patch is an improvement for find and read phonebooks. -After clients make a request to find / read phonebooks, then clients -should make a request to retrieve all the records. - -Signed-off-by: Jim Huang ---- - include/gsmd/gsmd.h | 3 - include/gsmd/usock.h | 20 +++- - include/libgsmd/phonebook.h | 6 + - src/gsmd/usock.c | 184 +++++++++++++++++++++++++++++++++++----- - src/libgsmd/libgsmd_phonebook.c | 48 ++++++++++ - 5 files changed, 238 insertions(+), 23 deletions(-) - -Index: gsm/include/libgsmd/phonebook.h -=================================================================== ---- gsm.orig/include/libgsmd/phonebook.h 2007-08-31 16:15:29.000000000 +0800 -+++ gsm/include/libgsmd/phonebook.h 2007-09-17 23:48:41.000000000 +0800 -@@ -106,4 +106,10 @@ - /* Get the location range/nlength/tlength supported */ - extern int lgsm_pb_get_support(struct lgsm_handle *lh); - -+/* Retrieve the records of READRG request */ -+extern int lgsm_pb_retrieve_readrg(struct lgsm_handle *lh, int num); -+ -+/* Retrieve the records of FIND request */ -+extern int lgsm_pb_retrieve_find(struct lgsm_handle *lh, int num); -+ - #endif -Index: gsm/include/gsmd/gsmd.h -=================================================================== ---- gsm.orig/include/gsmd/gsmd.h 2007-08-31 16:15:29.000000000 +0800 -+++ gsm/include/gsmd/gsmd.h 2007-09-17 23:48:41.000000000 +0800 -@@ -92,6 +92,9 @@ - struct gsmd *gsmd; - struct gsmd_fd gfd; /* the socket */ - u_int32_t subscriptions; /* bitmaks of subscribed event groups */ -+ -+ struct llist_head pb_readrg_list; /* our READRG phonebook list */ -+ struct llist_head pb_find_list; /* our FIND phonebook list */ - }; - - #define GSMD_DEBUG 1 /* debugging information */ -Index: gsm/include/gsmd/usock.h -=================================================================== ---- gsm.orig/include/gsmd/usock.h 2007-08-31 16:15:29.000000000 +0800 -+++ gsm/include/gsmd/usock.h 2007-09-17 23:48:56.000000000 +0800 -@@ -194,6 +194,8 @@ - GSMD_PHONEBOOK_GET_SUPPORT = 6, - GSMD_PHONEBOOK_LIST_STORAGE = 7, - GSMD_PHONEBOOK_SET_STORAGE = 8, -+ GSMD_PHONEBOOK_RETRIEVE_READRG = 9, -+ GSMD_PHONEBOOK_RETRIEVE_FIND = 10, - }; - - /* Type-of-Address, Numbering-Plan-Identification field, GSM 03.40, 9.1.2.5 */ -@@ -431,7 +433,6 @@ - char text[GSMD_PB_TEXT_MAXLEN+1]; - } __attribute__ ((packed)); - -- - /* Refer to GSM 07.07 subclause 8.13 */ - /* FIXME: the tlength depends on SIM, use +CPBR=? to get */ - struct gsmd_phonebook_find { -@@ -471,8 +472,18 @@ - char opname_longalpha[16]; - }; - -+/* Refer to GSM 07.07 subclause 8.11 */ -+struct gsmd_phonebook_mem { -+ u_int8_t type[3]; -+ u_int8_t pad; -+ u_int16_t used; -+ u_int16_t total; -+} __attribute__ ((packed)); -+ - struct gsmd_phonebook_storage { -- char storage[3]; -+ /* FIXME the amount of phonebook storage should be dynamic */ -+ u_int8_t num; -+ struct gsmd_phonebook_mem mem[20]; - } __attribute__ ((packed)); - - /* Subscriber number information from 3GPP TS 07.07, Clause 7.1 */ -@@ -517,6 +528,11 @@ - char buf[]; - } __attribute__ ((packed)); - -+struct gsmd_phonebooks { -+ struct llist_head list; -+ struct gsmd_phonebook pb; -+} __attribute__ ((packed)); -+ - extern struct gsmd_ucmd *ucmd_alloc(int extra_size); - extern int usock_init(struct gsmd *g); - extern void usock_cmd_enqueue(struct gsmd_ucmd *ucmd, struct gsmd_user *gu); -Index: gsm/src/libgsmd/libgsmd_phonebook.c -=================================================================== ---- gsm.orig/src/libgsmd/libgsmd_phonebook.c 2007-08-31 16:15:29.000000000 +0800 -+++ gsm/src/libgsmd/libgsmd_phonebook.c 2007-09-17 23:48:41.000000000 +0800 -@@ -33,7 +33,7 @@ - gmh->data[2] = '\0'; - - rc = lgsm_send(lh, gmh); -- if (rc < gmh->len + 3) { -+ if (rc < gmh->len + sizeof(*gmh)) { - lgsm_gmh_free(gmh); - return -EIO; - } -@@ -177,3 +177,49 @@ - { - return lgsm_send_simple(lh, GSMD_MSG_PHONEBOOK, GSMD_PHONEBOOK_GET_SUPPORT); - } -+ -+int lgsm_pb_retrieve_readrg(struct lgsm_handle *lh, int num) -+{ -+ struct gsmd_msg_hdr *gmh; -+ int rc; -+ -+ gmh = lgsm_gmh_fill(GSMD_MSG_PHONEBOOK, -+ GSMD_PHONEBOOK_RETRIEVE_READRG, sizeof(int)); -+ if (!gmh) -+ return -ENOMEM; -+ -+ *(int *)(gmh->data) = num; -+ -+ rc = lgsm_send(lh, gmh); -+ if (rc < gmh->len + sizeof(*gmh)) { -+ lgsm_gmh_free(gmh); -+ return -EIO; -+ } -+ -+ lgsm_gmh_free(gmh); -+ -+ return 0; -+} -+ -+int lgsm_pb_retrieve_find(struct lgsm_handle *lh, int num) -+{ -+ struct gsmd_msg_hdr *gmh; -+ int rc; -+ -+ gmh = lgsm_gmh_fill(GSMD_MSG_PHONEBOOK, -+ GSMD_PHONEBOOK_RETRIEVE_FIND, sizeof(int)); -+ if (!gmh) -+ return -ENOMEM; -+ -+ *(int *)(gmh->data) = num; -+ -+ rc = lgsm_send(lh, gmh); -+ if (rc < gmh->len + sizeof(*gmh)) { -+ lgsm_gmh_free(gmh); -+ return -EIO; -+ } -+ -+ lgsm_gmh_free(gmh); -+ -+ return 0; -+} -Index: gsm/src/gsmd/usock.c -=================================================================== ---- gsm.orig/src/gsmd/usock.c 2007-08-31 16:15:30.000000000 +0800 -+++ gsm/src/gsmd/usock.c 2007-09-17 23:53:34.000000000 +0800 -@@ -1035,21 +1035,56 @@ - - static int phonebook_find_cb(struct gsmd_atcmd *cmd, void *ctx, char *resp) - { -- struct gsmd_user *gu = ctx; -- struct gsmd_ucmd *ucmd; -- -+ struct gsmd_user *gu = ctx; -+ struct gsmd_ucmd *ucmd; -+ struct gsmd_phonebooks *gps; -+ char *fcomma, *lcomma, *ptr1, *ptr2 = NULL; -+ int *num; -+ - DEBUGP("resp: %s\n", resp); - -- /* FIXME: using link list, also we need to handle the case of -- * no query result */ -- ucmd = gsmd_ucmd_fill(strlen(resp) + 1, GSMD_MSG_PHONEBOOK, -+ /* -+ * [+CPBF: ,,,[[...] -+ * +CPBF: ,,,]] -+ */ -+ ucmd = gsmd_ucmd_fill(sizeof(int), GSMD_MSG_PHONEBOOK, - GSMD_PHONEBOOK_FIND, 0); - if (!ucmd) - return -ENOMEM; - -- strcpy(ucmd->buf, resp); -+ num = (int*) ucmd->buf; -+ -+ *num = 0; -+ -+ ptr1 = strtok(resp, "\n"); -+ -+ while (ptr1) { -+ gps = (struct gsmd_phonebooks *) malloc(sizeof(struct gsmd_phonebooks)); -+ ptr2 = strchr(ptr1, ' '); -+ gps->pb.index = atoi(ptr2+1); -+ -+ fcomma = strchr(ptr1, '"'); -+ lcomma = strchr(fcomma+1, '"'); -+ strncpy(gps->pb.numb, fcomma + 1, (lcomma-fcomma-1)); -+ gps->pb.numb[(lcomma - fcomma) - 1] = '\0'; -+ -+ gps->pb.type = atoi(lcomma + 2); -+ -+ ptr2 = strrchr(ptr1, ','); -+ fcomma = ptr2 + 1; -+ lcomma = strchr(fcomma + 1, '"'); -+ strncpy(gps->pb.text, fcomma + 1, (lcomma - fcomma - 1)); -+ gps->pb.text[(lcomma - fcomma) - 1] = '\0'; -+ -+ llist_add_tail(&gps->list, &gu->pb_find_list); -+ -+ (*num)++; -+ -+ ptr1 = strtok(NULL, "\n"); -+ } - - usock_cmd_enqueue(ucmd, gu); -+ - return 0; - } - -@@ -1102,22 +1137,51 @@ - { - struct gsmd_user *gu = ctx; - struct gsmd_ucmd *ucmd; -+ struct gsmd_phonebooks *gps; -+ char *fcomma, *lcomma, *ptr1, *ptr2 = NULL; -+ int *num; - - DEBUGP("resp: %s\n", resp); - - /* -- * +CPBR: 4,"1234",129,"6C5F745E7965" -- * +CPBR: 5,"5678",129,"800062115BB6" -- * +CPBR: 6,"7890",129,"810280AA591A" -- * +CPBR: 8,"36874",129,"005300650061006E" -- * -+ * [+CPBR: ,,,[[...] -+ * +CPBR: ,,,]] - */ -- ucmd = gsmd_ucmd_fill(strlen(resp)+1, GSMD_MSG_PHONEBOOK, -+ ucmd = gsmd_ucmd_fill(sizeof(int), GSMD_MSG_PHONEBOOK, - GSMD_PHONEBOOK_READRG, 0); - if (!ucmd) - return -ENOMEM; - -- strcpy(ucmd->buf, resp); -+ num = (int*) ucmd->buf; -+ -+ *num = 0; -+ -+ ptr1 = strtok(resp, "\n"); -+ -+ while(ptr1) { -+ gps = (struct gsmd_phonebooks *) malloc(sizeof(struct gsmd_phonebooks)); -+ ptr2 = strchr(ptr1, ' '); -+ gps->pb.index = atoi(ptr2+1); -+ -+ fcomma = strchr(ptr1, '"'); -+ lcomma = strchr(fcomma+1, '"'); -+ strncpy(gps->pb.numb, fcomma + 1, (lcomma-fcomma-1)); -+ gps->pb.numb[(lcomma - fcomma) - 1] = '\0'; -+ -+ gps->pb.type = atoi(lcomma + 2); -+ -+ ptr2 = strrchr(ptr1, ','); -+ fcomma = ptr2 + 1; -+ lcomma = strchr(fcomma + 1, '"'); -+ strncpy(gps->pb.text, fcomma + 1, (lcomma - fcomma - 1)); -+ gps->pb.text[(lcomma - fcomma) - 1] = '\0'; -+ -+ llist_add_tail(&gps->list, &gu->pb_readrg_list); -+ -+ (*num)++; -+ -+ ptr1 = strtok(NULL, "\n"); -+ } - - usock_cmd_enqueue(ucmd, gu); - -@@ -1209,22 +1273,38 @@ - static int phonebook_list_storage_cb(struct gsmd_atcmd *cmd, - void *ctx, char *resp) - { -- /* +CPBS: ("EN","BD","FD","DC","LD","RC","LR","MT","AD", -- * "SM","SD","MC","LM","AF","ON","UD") */ - /* TODO; using link list ; need to handle command error */ - struct gsmd_user *gu = ctx; - struct gsmd_ucmd *ucmd; -+ struct gsmd_phonebook_storage *gps; -+ char *ptr; - - DEBUGP("resp: %s\n", resp); - -- ucmd = gsmd_ucmd_fill(strlen(resp) + 1, -+ /* -+ * +CPBS: (s) -+ */ -+ -+ ucmd = gsmd_ucmd_fill(sizeof(*gps), - GSMD_MSG_PHONEBOOK, - GSMD_PHONEBOOK_LIST_STORAGE, 0); - - if (!ucmd) - return -ENOMEM; - -- strcpy(ucmd->buf, resp); -+ gps = (struct gsmd_phonebook_storage *) ucmd->buf; -+ gps->num = 0; -+ -+ if (!strncmp(resp, "+CPBS", 5)) { -+ char* delim = "(,"; -+ ptr = strpbrk(resp, delim); -+ while ( ptr ) { -+ strncpy(gps->mem[gps->num].type, ptr+2, 2); -+ gps->mem[gps->num].type[2] = '\0'; -+ ptr = strpbrk(ptr+2, delim); -+ gps->num++; -+ } -+ } - - usock_cmd_enqueue(ucmd, gu); - -@@ -1235,11 +1315,13 @@ - struct gsmd_msg_hdr *gph,int len) - { - struct gsmd_atcmd *cmd = NULL; -+ struct gsmd_ucmd *ucmd = NULL; - struct gsmd_phonebook_readrg *gpr; - struct gsmd_phonebook *gp; - struct gsmd_phonebook_find *gpf; -- int *index; -- int atcmd_len; -+ struct gsmd_phonebooks *cur, *cur2; -+ int *index, *num; -+ int atcmd_len, i; - char *storage; - char buf[1024]; - -@@ -1343,6 +1425,66 @@ - cmd = atcmd_fill("AT+CPBR=?", 9+1, - &phonebook_get_support_cb, gu, gph->id); - break; -+ case GSMD_PHONEBOOK_RETRIEVE_READRG: -+ if (len < sizeof(*gph) + sizeof(int)) -+ return -EINVAL; -+ -+ num = (int *) ((void *)gph + sizeof(*gph)); -+ -+ ucmd = gsmd_ucmd_fill(sizeof(struct gsmd_phonebook)*(*num), -+ GSMD_MSG_PHONEBOOK, -+ GSMD_PHONEBOOK_RETRIEVE_READRG, 0); -+ if (!ucmd) -+ return -ENOMEM; -+ -+ gp = (struct gsmd_phonebook*) ucmd->buf; -+ -+ if (!llist_empty(&gu->pb_readrg_list)) { -+ -+ llist_for_each_entry_safe(cur, cur2, -+ &gu->pb_readrg_list, list) { -+ gp->index = cur->pb.index; -+ strcpy(gp->numb, cur->pb.numb); -+ gp->type = cur->pb.type; -+ strcpy(gp->text, cur->pb.text); -+ gp++; -+ -+ llist_del(&cur->list); -+ free(cur); -+ } -+ } -+ -+ usock_cmd_enqueue(ucmd, gu); -+ -+ break; -+ case GSMD_PHONEBOOK_RETRIEVE_FIND: -+ if (len < sizeof(*gph) + sizeof(int)) -+ return -EINVAL; -+ -+ num = (int *) ((void *)gph + sizeof(*gph)); -+ -+ ucmd = gsmd_ucmd_fill(sizeof(struct gsmd_phonebook)*(*num), GSMD_MSG_PHONEBOOK, -+ GSMD_PHONEBOOK_RETRIEVE_FIND, 0); -+ if (!ucmd) -+ return -ENOMEM; -+ -+ gp = (struct gsmd_phonebook*) ucmd->buf; -+ -+ if (!llist_empty(&gu->pb_find_list)) { -+ llist_for_each_entry_safe(cur, cur2, &gu->pb_find_list, list) { -+ gp->index = cur->pb.index; -+ strcpy(gp->numb, cur->pb.numb); -+ gp->type = cur->pb.type; -+ strcpy(gp->text, cur->pb.text); -+ gp++; -+ -+ llist_del(&cur->list); -+ free(cur); -+ } -+ } -+ -+ usock_cmd_enqueue(ucmd, gu); -+ break; - default: - return -EINVAL; - } -@@ -1468,6 +1610,8 @@ - newuser->gsmd = g; - newuser->subscriptions = 0xffffffff; - INIT_LLIST_HEAD(&newuser->finished_ucmds); -+ INIT_LLIST_HEAD(&newuser->pb_readrg_list); -+ INIT_LLIST_HEAD(&newuser->pb_find_list); - - llist_add(&newuser->list, &g->users); - gsmd_register_fd(&newuser->gfd); diff --git a/meta/packages/gsm/files/028_shell-phonebook-find-and-read-range-support.patch b/meta/packages/gsm/files/028_shell-phonebook-find-and-read-range-support.patch deleted file mode 100644 index db07a5df35..0000000000 --- a/meta/packages/gsm/files/028_shell-phonebook-find-and-read-range-support.patch +++ /dev/null @@ -1,264 +0,0 @@ -From: Sean Chiang -Subject: [PATCH] improvement for find and read phonebooks in shell - -This patch improves the functions to find and read phonebooks in shell. - -Besides prr and pf, I add two new commands pRr and pRf to retrieve the -phonebook. - -Signed-off-by: Jim Huang - -Index: gsm/src/util/shell.c -=================================================================== ---- gsm.orig/src/util/shell.c 2007-09-17 23:57:51.000000000 +0800 -+++ gsm/src/util/shell.c 2007-09-17 23:59:04.000000000 +0800 -@@ -34,8 +34,6 @@ - #include - #include - --#include -- - #ifndef __GSMD__ - #define __GSMD__ - #include -@@ -43,9 +41,8 @@ - #endif - - #define STDIN_BUF_SIZE 1024 -- --static LLIST_HEAD(storage_list); --static LLIST_HEAD(phonebook_list); -+static int nFIND = 0; -+static int nREADRG = 0; - - /* this is the handler for receiving passthrough responses */ - static int pt_msghandler(struct lgsm_handle *lh, struct gsmd_msg_hdr *gmh) -@@ -62,46 +59,23 @@ - struct gsmd_phonebook_storage *gpst; - char *payload; - char *fcomma, *lcomma, *ptr = NULL; -+ int *num; - char buf[128]; -+ int i; - - switch (gmh->msg_subtype) { --#if 0 - case GSMD_PHONEBOOK_FIND: -+ num = (int *) ((char *)gmh + sizeof(*gmh)); -+ printf("Records:%d\n", *num); -+ -+ nFIND = *num; -+ break; - case GSMD_PHONEBOOK_READRG: -- payload = (char *)gmh + sizeof(*gmh); -+ num = (int *) ((char *)gmh + sizeof(*gmh)); -+ printf("Records:%d\n", *num); - -- if (!strncmp(payload, "+CPBR", 5) || -- !strncmp(payload, "+CPBF", 5)) { -- gp = (struct gsmd_phonebook *) malloc(sizeof(struct gsmd_phonebook)); -- ptr = strchr(payload, ' '); -- gp->index = atoi(ptr+1); -- -- fcomma = strchr(payload, '"'); -- lcomma = strchr(fcomma+1, '"'); -- strncpy(gp->numb, fcomma + 1, (lcomma-fcomma-1)); -- gp->numb[(lcomma - fcomma) - 1] = '\0'; -- -- gp->type = atoi(lcomma + 2); -- -- ptr = strrchr(payload, ','); -- fcomma = ptr + 1; -- lcomma = strchr(fcomma + 1, '"'); -- strncpy(gp->text, fcomma + 1, (lcomma - fcomma - 1)); -- gp->text[(lcomma - fcomma) - 1] = '\0'; -- -- llist_add_tail(&gp->list, &phonebook_list); -- --#if 0 -- llist_for_each_entry(gp, &phonebook_list, list) { -- printf("%d, %s, %d, %s\n", gp->index, gp->numb, gp->type, gp->text); -- } --#endif -- printf("%d, %s, %d, %s\n", gp->index, gp->numb, gp->type, gp->text); -- } -- else -- printf("%s\n", payload); -+ nREADRG = *num; - break; --#endif - case GSMD_PHONEBOOK_READ: - gp = (struct gsmd_phonebook *) ((char *)gmh + sizeof(*gmh)); - if (gp->index) -@@ -115,48 +89,18 @@ - gps = (struct gsmd_phonebook_support *) ((char *)gmh + sizeof(*gmh)); - printf("(1-%d), %d, %d\n", gps->index, gps->nlength, gps->tlength); - break; --#if 0 -- case GSMD_PHONEBOOK_LIST_STORAGE: -- payload = (char *)gmh + sizeof(*gmh); - -- if (!strncmp(payload, "+CPBS", 5)) { -- char* delim = "(,"; -- struct gsmd_phonebook_storage *cur, *cur2; -- -- /* Remove previous record */ -- if (!llist_empty(&storage_list)) { -- llist_for_each_entry_safe(cur, cur2, -- &storage_list, list) { -- llist_del(&cur->list); -- talloc_free(cur); -- } -- } -- -- ptr = strpbrk(payload, delim); -- -- while ( ptr ) { -- gpst = (struct gsmd_phonebook_storage *) malloc(sizeof(struct gsmd_phonebook_storage)); -- strncpy(gpst->storage, ptr+2, 2); -- gpst->storage[2] = '\0'; -- -- ptr = strpbrk(ptr+2, delim); -- -- llist_add_tail(&gpst->list, &storage_list); -- } -+ case GSMD_PHONEBOOK_LIST_STORAGE: -+ gpst = (struct gsmd_phonebook_storage *)((char *)gmh + sizeof(*gmh)); - -- if (llist_empty(&storage_list)) -- return 0; -+ for (i = 0; i < gpst->num; i++) { -+ printf("%s, ", gpst->mem[i].type); -+ } - -- llist_for_each_entry(cur, &storage_list, list) { -- printf("\n%s",cur->storage); -- } -+ printf("\n"); - -- printf("\n"); -- } -- else -- printf("%s\n", payload); - break; --#endif -+ - case GSMD_PHONEBOOK_WRITE: - case GSMD_PHONEBOOK_DELETE: - case GSMD_PHONEBOOK_SET_STORAGE: -@@ -164,6 +108,26 @@ - payload = (char *)gmh + sizeof(*gmh); - printf("%s\n", payload); - break; -+ case GSMD_PHONEBOOK_RETRIEVE_READRG: -+ gp = (struct gsmd_phonebook *) ((char *)gmh + sizeof(*gmh)); -+ -+ for (i=0; iindex, gp->numb, gp->type, gp->text); -+ gp++; -+ } -+ -+ nREADRG = 0; -+ break; -+ case GSMD_PHONEBOOK_RETRIEVE_FIND: -+ gp = (struct gsmd_phonebook *) ((char *)gmh + sizeof(*gmh)); -+ -+ for (i = 0; i < nFIND; i++) { -+ printf("%d,%s,%d,%s\n", gp->index, gp->numb, gp->type, gp->text); -+ gp++; -+ } -+ -+ nFIND = 0; -+ break; - default: - return -EINVAL; - } -@@ -381,11 +345,13 @@ - "\tpd\tPB Delete (pb=index)\n" - "\tpr\tPB Read (pr=index)\n" - "\tprr\tPB Read Range (prr=index1,index2)\n" -- "\tpf\tPB Find (pff=indtext)\n" -+ "\tpf\tPB Find (pf=indtext)\n" - "\tpw\tPB Write (pw=index,number,text)\n" - "\tps\tPB Support\n" - "\tpm\tPB Memory\n" - "\tpp\tPB Set Memory (pp=storage)\n" -+ "\tpRr\tRetrieve Readrg Records\n" -+ "\tpRf\tRetrieve Find Records\n" - "\tsd\tSMS Delete (sd=index,delflg)\n" - "\tsl\tSMS List (sl=stat)\n" - "\tsr\tSMS Read (sr=index)\n" -@@ -509,48 +475,21 @@ - printf("Delete Phonebook Entry\n"); - ptr = strchr(buf, '='); - lgsm_pb_del_entry(lgsmh, atoi(ptr+1)); --#if 0 - } else if ( !strncmp(buf, "prr", 3)) { - printf("Read Phonebook Entries\n"); - struct lgsm_phonebook_readrg pb_readrg; -- struct gsmd_phonebook *gp_cur, *gp_cur2; -- -- /* Remove records */ -- if (!llist_empty(&phonebook_list)) { -- llist_for_each_entry_safe(gp_cur, -- gp_cur2, -- &phonebook_list, -- list) { -- llist_del(&gp_cur->list); -- talloc_free(gp_cur); -- } -- } - - ptr = strchr(buf, '='); - pb_readrg.index1 = atoi(ptr+1); - ptr = strchr(buf, ','); - pb_readrg.index2 = atoi(ptr+1); - lgsm_pb_read_entries(lgsmh, &pb_readrg); --#endif - } else if ( !strncmp(buf, "pr", 2)) { - ptr = strchr(buf, '='); - lgsm_pb_read_entry(lgsmh, atoi(ptr+1)); --#if 0 - } else if ( !strncmp(buf, "pf", 2)) { - printf("Find Phonebook Entry\n"); - struct lgsm_phonebook_find pb_find; -- struct gsmd_phonebook *gp_cur, *gp_cur2; -- -- /* Remove records */ -- if (!llist_empty(&phonebook_list)) { -- llist_for_each_entry_safe(gp_cur, -- gp_cur2, -- &phonebook_list, -- list) { -- llist_del(&gp_cur->list); -- talloc_free(gp_cur); -- } -- } - - ptr = strchr(buf, '='); - strncpy(pb_find.findtext, -@@ -559,7 +498,6 @@ - pb_find.findtext[strlen(ptr+1)] = '\0'; - - lgsm_pb_find_entry(lgsmh, &pb_find); --#endif - } else if ( !strncmp(buf, "pw", 2)) { - printf("Write Phonebook Entry\n"); - struct lgsm_phonebook pb; -@@ -591,6 +529,16 @@ - } else if ( !strncmp(buf, "ps", 2)) { - printf("Get Phonebook Support\n"); - lgsm_pb_get_support(lgsmh); -+ } else if( !strncmp(buf, "pRr", 3) ) { -+ printf("Retrieve Readrg Records\n"); -+ -+ if ( nREADRG ) -+ lgsm_pb_retrieve_readrg(lgsmh, nREADRG); -+ } else if( !strncmp(buf, "pRf", 3) ) { -+ printf("Retrieve Find Records\n"); -+ -+ if ( nFIND ) -+ lgsm_pb_retrieve_find(lgsmh, nFIND); - } else if ( !strncmp(buf, "sd", 2)) { - printf("Delete SMS\n"); - struct lgsm_sms_delete sms_del; diff --git a/meta/packages/gsm/files/default b/meta/packages/gsm/files/default deleted file mode 100644 index 6ef4f6db57..0000000000 --- a/meta/packages/gsm/files/default +++ /dev/null @@ -1,59 +0,0 @@ -# gsmd This shell script configures for the gsmd init script. - -. /etc/init.d/functions - -case `machine_id` in - "gta01"|"gta02") - GSMD_OPTS="-s 115200 -F" - if [ -d '/sys/bus/platform/devices/gta01-pm-gsm.0' ] ; then - GSM_POW="/sys/bus/platform/devices/gta01-pm-gsm.0/power_on" - GSM_RES="/sys/bus/platform/devices/gta01-pm-gsm.0/reset" - else - GSM_POW="/sys/bus/platform/devices/neo1973-pm-gsm.0/power_on" - GSM_RES="/sys/bus/platform/devices/neo1973-pm-gsm.0/reset" - fi - GSM_DEV="/dev/ttySAC0" - GSM_DL="/sys/devices/platform/neo1973-pm-gsm.0/download" - ;; - "htc_apache"|"htc_blueangel"|"htc_universal") - GSMD_OPTS="-s 115200 -F" - GSM_DEV="/dev/ttyS0" - ;; - "htc_himalaya") - GSMD_OPTS="-s 115200 -F" - GSM_DEV="/dev/ttyS2" - ;; - "htc_magician") - GSMD_OPTS="-s 115200 -F" - GSM_DEV="/dev/ttyS1" - ;; - "palm_treo_650") - GSMD_OPTS="-s 460800 -F -w 1" - GSM_DEV="/dev/ttyS0" - ;; - "motorola_ezx_platform") - GSMD_OPTS="-s 115200 -F -v ti" - GSM_DEV="/dev/mux0" - ;; - "omap3430_ldp_board") - # Need a machine for the Zoom modem, but this will do - GSMD_OPTS="-s 460800 -F -v ti -m gta01" - GSM_DEV="/dev/ttyS0" - ;; - *) - # Unknown board - - # If you must specify special options, uncomment and modify the next line - #GSMD_OPTS="-s 115200 -F" - - # If your GSM device needs to be powered up, uncomment and modify the next line - #GSM_POW="/sys/bus/platform/devices/gta01-pm-gsm.0/power_on" - - # If your GSM device then needs to be reset, uncomment and modify the next line - #GSM_RES="/sys/bus/platform/devices/gta01-pm-gsm.0/reset" - - # This should be in a common /etc/default/serial, together with - # BT_DEV and IR_DEV for devices that have those on a serial port - #GSM_DEV="/dev/ttyS1" - ;; -esac diff --git a/meta/packages/gsm/files/fix_machine_init.patch b/meta/packages/gsm/files/fix_machine_init.patch deleted file mode 100644 index 808bb17b42..0000000000 --- a/meta/packages/gsm/files/fix_machine_init.patch +++ /dev/null @@ -1,23 +0,0 @@ -Index: src/gsmd/gsmd.c -=================================================================== ---- a/src/gsmd/gsmd.c (revision 4304) -+++ b/src/gsmd/gsmd.c (working copy) -@@ -196,13 +196,13 @@ - - sms_cb_init(gsmd); - -- if (gsmd->vendorpl && gsmd->vendorpl->initsettings){ -+ if (gsmd->vendorpl && gsmd->vendorpl->initsettings) - rc |= gsmd->vendorpl->initsettings(gsmd); -+ -+ if (gsmd->machinepl && gsmd->machinepl->initsettings) - rc |= gsmd->machinepl->initsettings(gsmd); -- return rc; -- } -- else -- return rc; -+ -+ return rc; - } - - static int firstcmd_response = 0; diff --git a/meta/packages/gsm/files/gsmd b/meta/packages/gsm/files/gsmd deleted file mode 100644 index dc10e63098..0000000000 --- a/meta/packages/gsm/files/gsmd +++ /dev/null @@ -1,47 +0,0 @@ -#! /bin/sh -# -# gsmd This shell script starts and stops gsmd. -# -# chkconfig: 345 90 40 -# description: Gsmd manages access to a serial- or USB-connected GSM -# processname: gsmd - -PATH=/bin:/usr/bin:/sbin:/usr/sbin - -[ -f /etc/default/rcS ] && . /etc/default/rcS -[ -f /etc/default/gsmd ] && . /etc/default/gsmd - -case "$1" in - start) - [ -n "$GSM_POW" ] && ( echo "0" >$GSM_POW; sleep 1 ) - [ -n "$GSM_POW" ] && ( echo "1" >$GSM_POW; sleep 1 ) - [ -n "$GSM_RES" ] && ( echo "1" >$GSM_RES; sleep 1 ) - [ -n "$GSM_RES" ] && ( echo "0" >$GSM_RES; sleep 2 ) - - echo -n "Starting GSM daemon: " - start-stop-daemon -S -x /usr/sbin/gsmd -- gsmd -p $GSM_DEV $GSMD_OPTS -d -l syslog - - if [ $? = 0 ]; then - echo "gsmd." - else - echo "(failed.)" - fi - ;; - stop) - [ -n "$GSM_POW" ] && echo "0" >$GSM_POW - - echo -n "Stopping GSM daemon: " - start-stop-daemon -K -x /usr/sbin/gsmd - echo "gsmd." - ;; - restart|force-reload) - $0 stop - $0 start - ;; - *) - echo "Usage: /etc/init.d/gsmd {start|stop|restart|force-reload}" - exit 1 - ;; -esac - -exit 0 diff --git a/meta/packages/gsm/files/install-ts-headers.patch b/meta/packages/gsm/files/install-ts-headers.patch deleted file mode 100644 index 88e3b6dd1f..0000000000 --- a/meta/packages/gsm/files/install-ts-headers.patch +++ /dev/null @@ -1,11 +0,0 @@ -Index: gsm/include/gsmd/Makefile.am -=================================================================== ---- gsm.orig/include/gsmd/Makefile.am 2007-10-29 21:05:57.000000000 +0100 -+++ gsm/include/gsmd/Makefile.am 2007-10-29 21:06:03.000000000 +0100 -@@ -1,4 +1,4 @@ - --pkginclude_HEADERS = event.h usock.h -+pkginclude_HEADERS = event.h ts0705.h ts0707.h usock.h - --noinst_HEADERS = atcmd.h gsmd.h select.h ts0705.h ts0707.h unsolicited.h usock.h vendorplugin.h -+noinst_HEADERS = atcmd.h gsmd.h select.h unsolicited.h usock.h vendorplugin.h diff --git a/meta/packages/gsm/files/lgsm_send_fix_return_value.patch b/meta/packages/gsm/files/lgsm_send_fix_return_value.patch deleted file mode 100644 index 00ba3a4549..0000000000 --- a/meta/packages/gsm/files/lgsm_send_fix_return_value.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- gsm/src/libgsmd/libgsmd.c.orig 2007-09-25 00:41:56.000000000 -0500 -+++ gsm/src/libgsmd/libgsmd.c 2007-09-25 00:43:44.000000000 -0500 -@@ -210,7 +210,7 @@ - pos += rc; - } - } -- return 0; -+ return (sizeof(*gmh) + gmh->len); - } - - struct gsmd_msg_hdr *lgsm_gmh_fill(int type, int subtype, int payload_len) diff --git a/meta/packages/gsm/gsmd.inc b/meta/packages/gsm/gsmd.inc deleted file mode 100644 index a69fdd90f1..0000000000 --- a/meta/packages/gsm/gsmd.inc +++ /dev/null @@ -1,93 +0,0 @@ -DESCRIPTION = "GSM libraries and daemons implementing the 07.10 specification" -HOMEPAGE = "http://www.openmoko.org" -LICENSE = "GPL LGPL" -SECTION = "libs/gsm" -PROVIDES += "gsmd" -RPROVIDES_${PN} = "libgsmd0 libgsmd gsmd gsmd-devel" -PV = "0.1+svnr${SRCREV}" -PR = "r47" - -SRC_URI = "svn://svn.openmoko.org/trunk/src/target;module=gsm;proto=http \ - file://fix_machine_init.patch;patch=1 \ - file://gsmd \ - file://default" -S = "${WORKDIR}/gsm" - -inherit autotools pkgconfig update-rc.d -# handle update-rc.d RDEPENDS manually, we don't need it on -# anything but gsmd -RDEPENDS_append = "" - -INITSCRIPT_NAME = "gsmd" -INITSCRIPT_PARAMS = "defaults 35" - -do_install_append() { - install -d ${D}/${sysconfdir}/init.d - install -m 0755 ${WORKDIR}/gsmd ${D}/${sysconfdir}/init.d/ - install -d ${D}/${sysconfdir}/default - install ${WORKDIR}/default ${D}/${sysconfdir}/default/gsmd -} - -PACKAGES =+ "\ - ${PN}-tools \ - ${BASEPN}-plugins \ - ${BASEPN}-plugin-machine-generic \ - ${BASEPN}-plugin-machine-tihtc \ - ${BASEPN}-plugin-machine-gta01 \ - ${BASEPN}-plugin-vendor-bcm \ - ${BASEPN}-plugin-vendor-qc \ - ${BASEPN}-plugin-vendor-ti \ - ${BASEPN}-plugin-vendor-tihtc \ -" - -ALLOW_EMPTY_${BASEPN}-plugin-machine-gta01 = "1" - -RDEPENDS_${BASEPN}-plugins = "\ - ${BASEPN}-plugin-machine-generic \ - ${BASEPN}-plugin-machine-tihtc \ - ${BASEPN}-plugin-machine-gta01 \ - ${BASEPN}-plugin-vendor-bcm \ - ${BASEPN}-plugin-vendor-qc \ - ${BASEPN}-plugin-vendor-ti \ - ${BASEPN}-plugin-vendor-tihtc \ -" - -RDEPENDS_${PN} += "update-rc.d initscripts" -RRECOMMENDS_${PN} += "${BASEPN}-plugins" - -FILES_${PN}-dbg += "${libdir}/gsmd/.debug/*" -FILES_${PN}-tools = "${bindir}/*" -FILES_${BASEPN}-plugins = "" -FILES_${BASEPN}-plugin-machine-generic = "${libdir}/gsmd/libgsmd-machine_generic.so*" -FILES_${BASEPN}-plugin-machine-tihtc = "${libdir}/gsmd/libgsmd-machine_tihtc.so*" -FILES_${BASEPN}-plugin-machine-gta01 = "${libdir}/gsmd/libgsmd-machine_gta01.so*" -FILES_${BASEPN}-plugin-vendor-qc = "${libdir}/gsmd/libgsmd-vendor_qc.so*" -FILES_${BASEPN}-plugin-vendor-bcm = "${libdir}/gsmd/libgsmd-vendor_bcm.so*" -FILES_${BASEPN}-plugin-vendor-ti = "${libdir}/gsmd/libgsmd-vendor_ti.so*" -FILES_${BASEPN}-plugin-vendor-tihtc = "${libdir}/gsmd/libgsmd-vendor_tihtc.so*" - -PACKAGES_DYNAMIC = "lib${BASEPN}* ${BASEPN}" - -ALLOW_EMPTY_${BASEPN}-plugins = "1" - -RCONFLICTS_lib${BASEPN} = "lib${CONFLICTNAME}" -RCONFLICTS_${BASEPN} = "${CONFLICTNAME}" -RCONFLICTS_${BASEPN}-plugins = "${CONFLICTNAME}-plugins" -RCONFLICTS_${BASEPN}-plugin-machine-generic = "${CONFLICTNAME}-plugin-machine-generic" -RCONFLICTS_${BASEPN}-plugin-machine-tihtc = "${CONFLICTNAME}-plugin-machine-tihtc" -RCONFLICTS_${BASEPN}-plugin-machine-gta01 = "${CONFLICTNAME}-plugin-machine-gta01" -RCONFLICTS_${BASEPN}-plugin-vendor-qc = "${CONFLICTNAME}-plugin-vendor-qc" -RCONFLICTS_${BASEPN}-plugin-vendor-bcm = "${CONFLICTNAME}-plugin-vendor-bcm" -RCONFLICTS_${BASEPN}-plugin-vendor-ti = "${CONFLICTNAME}-plugin-vendor-ti" -RCONFLICTS_${BASEPN}-plugin-vendor-tihtc = "${CONFLICTNAME}-plugin-vendor-tihtc" - -RPROVIDES_lib${BASEPN} += "lib${CONFLICTNAME}" -RPROVIDES_${BASEPN} = "${CONFLICTNAME}" -RPROVIDES_${BASEPN}-plugins = "${CONFLICTNAME}-plugins" -RPROVIDES_${BASEPN}-plugin-machine-generic = "${CONFLICTNAME}-plugin-machine-generic" -RPROVIDES_${BASEPN}-plugin-machine-tihtc = "${CONFLICTNAME}-plugin-machine-tihtc" -RPROVIDES_${BASEPN}-plugin-machine-gta01 = "${CONFLICTNAME}-plugin-machine-gta01" -RPROVIDES_${BASEPN}-plugin-vendor-qc = "${CONFLICTNAME}-plugin-vendor-qc" -RPROVIDES_${BASEPN}-plugin-vendor-bcm = "${CONFLICTNAME}-plugin-vendor-bcm" -RPROVIDES_${BASEPN}-plugin-vendor-ti = "${CONFLICTNAME}-plugin-vendor-ti" -RPROVIDES_${BASEPN}-plugin-vendor-tihtc = "${CONFLICTNAME}-plugin-vendor-tihtc" diff --git a/meta/packages/gsm/libgsmd_svn.bb b/meta/packages/gsm/libgsmd_svn.bb deleted file mode 100644 index 9d3ca19c04..0000000000 --- a/meta/packages/gsm/libgsmd_svn.bb +++ /dev/null @@ -1,5 +0,0 @@ -BASEPN = "gsmd" -CONFLICTNAME = "gsmd-devel" - -require gsmd.inc - diff --git a/meta/packages/gzip/gzip-1.3.12/dup-def-fix.patch b/meta/packages/gzip/gzip-1.3.12/dup-def-fix.patch deleted file mode 100644 index 8308865a25..0000000000 --- a/meta/packages/gzip/gzip-1.3.12/dup-def-fix.patch +++ /dev/null @@ -1,45 +0,0 @@ -gzip uses gnulib, whose header conflict with glibc. This patch rename some function to avoid conflict. - -Signed-off-by: Zhai Edwin -Index: gzip-1.3.12/gzip.c -=================================================================== ---- gzip-1.3.12.orig/gzip.c 2010-08-13 10:29:38.000000000 +0800 -+++ gzip-1.3.12/gzip.c 2010-08-13 10:29:44.000000000 +0800 -@@ -1637,7 +1637,7 @@ - } - } - -- if (futimens (ofd, ofname, timespec) != 0) -+ if (futimens_gnulib (ofd, ofname, timespec) != 0) - { - int e = errno; - WARN ((stderr, "%s: ", program_name)); -Index: gzip-1.3.12/lib/utimens.c -=================================================================== ---- gzip-1.3.12.orig/lib/utimens.c 2010-08-13 10:33:47.000000000 +0800 -+++ gzip-1.3.12/lib/utimens.c 2010-08-13 10:34:02.000000000 +0800 -@@ -75,7 +75,7 @@ - Return 0 on success, -1 (setting errno) on failure. */ - - int --futimens (int fd ATTRIBUTE_UNUSED, -+futimens_gnulib (int fd ATTRIBUTE_UNUSED, - char const *file, struct timespec const timespec[2]) - { - /* Some Linux-based NFS clients are buggy, and mishandle time stamps -@@ -185,5 +185,5 @@ - int - utimens (char const *file, struct timespec const timespec[2]) - { -- return futimens (-1, file, timespec); -+ return futimens_gnulib (-1, file, timespec); - } -Index: gzip-1.3.12/lib/utimens.h -=================================================================== ---- gzip-1.3.12.orig/lib/utimens.h 2010-08-13 10:14:57.000000000 +0800 -+++ gzip-1.3.12/lib/utimens.h 2010-08-13 10:21:45.000000000 +0800 -@@ -1,3 +1,3 @@ - #include --int futimens (int, char const *, struct timespec const [2]); -+int futimens_gnulib (int, char const *, struct timespec const [2]); - int utimens (char const *, struct timespec const [2]); diff --git a/meta/packages/gzip/gzip-1.3.12/m4-extensions-fix.patch b/meta/packages/gzip/gzip-1.3.12/m4-extensions-fix.patch deleted file mode 100644 index 927377286f..0000000000 --- a/meta/packages/gzip/gzip-1.3.12/m4-extensions-fix.patch +++ /dev/null @@ -1,53 +0,0 @@ -remove AC_USE_SYSTEM_EXTENSIONS to fix the autoconf error "AC_REQUIRE: circular -dependency of AC_GNU_SOURCE" - -Signed-off-by: Zhai Edwin -Index: gzip-1.3.12/m4/extensions.m4 -=================================================================== ---- gzip-1.3.12.orig/m4/extensions.m4 2010-08-16 14:18:16.000000000 +0800 -+++ gzip-1.3.12/m4/extensions.m4 2010-08-16 14:21:54.000000000 +0800 -@@ -12,44 +12,6 @@ - # enough in this area it's likely we'll need to redefine - # AC_USE_SYSTEM_EXTENSIONS for quite some time. - --# AC_USE_SYSTEM_EXTENSIONS --# ------------------------ --# Enable extensions on systems that normally disable them, --# typically due to standards-conformance issues. --AC_DEFUN([AC_USE_SYSTEM_EXTENSIONS], --[ -- AC_BEFORE([$0], [AC_COMPILE_IFELSE]) -- AC_BEFORE([$0], [AC_RUN_IFELSE]) -- -- AC_REQUIRE([AC_GNU_SOURCE]) -- AC_REQUIRE([AC_AIX]) -- AC_REQUIRE([AC_MINIX]) -- -- AH_VERBATIM([__EXTENSIONS__], --[/* Enable extensions on Solaris. */ --#ifndef __EXTENSIONS__ --# undef __EXTENSIONS__ --#endif --#ifndef _POSIX_PTHREAD_SEMANTICS --# undef _POSIX_PTHREAD_SEMANTICS --#endif --#ifndef _TANDEM_SOURCE --# undef _TANDEM_SOURCE --#endif]) -- AC_CACHE_CHECK([whether it is safe to define __EXTENSIONS__], -- [ac_cv_safe_to_define___extensions__], -- [AC_COMPILE_IFELSE( -- [AC_LANG_PROGRAM([ --# define __EXTENSIONS__ 1 -- AC_INCLUDES_DEFAULT])], -- [ac_cv_safe_to_define___extensions__=yes], -- [ac_cv_safe_to_define___extensions__=no])]) -- test $ac_cv_safe_to_define___extensions__ = yes && -- AC_DEFINE([__EXTENSIONS__]) -- AC_DEFINE([_POSIX_PTHREAD_SEMANTICS]) -- AC_DEFINE([_TANDEM_SOURCE]) --]) -- - # gl_USE_SYSTEM_EXTENSIONS - # ------------------------ - # Enable extensions on systems that normally disable them, diff --git a/meta/packages/gzip/gzip.inc b/meta/packages/gzip/gzip.inc deleted file mode 100644 index 28df4d4a5d..0000000000 --- a/meta/packages/gzip/gzip.inc +++ /dev/null @@ -1,38 +0,0 @@ -DESCRIPTION = "GNU Gzip is a popular data compression program originally written by Jean-loup Gailly for the GNU project. Mark Adler wrote the decompression part" -HOMEPAGE = "http://www.gnu.org/software/gzip/" -SECTION = "console/utils" -# change to GPLv3+ in 2007/07. Previous GPLv2 version is 1.3.12 -LICENSE = "GPLv3+" -LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \ - file://gzip.h;firstline=8;endline=20;md5=e2ec6b91fbe43a18f6081f3bbae46a01" - -SRC_URI = "${GNU_MIRROR}/gzip/${BP}.tar.gz" - -inherit autotools - -do_install () { - autotools_do_install - if [ "${PN}" = "${BPN}" ] ; then - # Rename and move files into /bin (FHS), which is typical place for gzip - install -d ${D}${base_bindir} - mv ${D}${bindir}/gunzip ${D}${base_bindir}/gunzip.${PN} - mv ${D}${bindir}/gzip ${D}${base_bindir}/gzip.${PN} - mv ${D}${bindir}/zcat ${D}${base_bindir}/zcat.${PN} - fi -} - -pkg_postinst_${PN} () { - if [ "${PN}" = "${BPN}" ] ; then - update-alternatives --install ${base_bindir}/gunzip gunzip gunzip.${PN} 100 - update-alternatives --install ${base_bindir}/gzip gzip gzip.${PN} 100 - update-alternatives --install ${base_bindir}/zcat zcat zcat.${PN} 100 - fi -} - -pkg_prerm_${PN} () { - if [ "${PN}" = "${BPN}" ] ; then - update-alternatives --remove gunzip gunzip.${PN} - update-alternatives --remove gzip gzip.${PN} - update-alternatives --remove zcat zcat.${PN} - fi -} diff --git a/meta/packages/gzip/gzip_1.3.12.bb b/meta/packages/gzip/gzip_1.3.12.bb deleted file mode 100644 index c111e2e24d..0000000000 --- a/meta/packages/gzip/gzip_1.3.12.bb +++ /dev/null @@ -1,39 +0,0 @@ -DESCRIPTION = "Standard GNU compressor" -HOMEPAGE = "http://www.gnu.org/software/gzip" -SECTION = "base" - -LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe \ - file://gzip.h;endline=22;md5=c0934ad1900d927f86556153d4c76d23 \ - file://lzw.h;endline=19;md5=c273e09a02edd9801cc74d39683049e9 " - -SRC_URI = "${GNU_MIRROR}/gzip/gzip-${PV}.tar.gz \ - file://m4-extensions-fix.patch;patch=1 \ - file://dup-def-fix.patch;patch=1" - -PR = "r0" - -inherit autotools - -do_install () { - autotools_do_install - # move files into /bin (FHS) - install -d ${D}${base_bindir} - mv ${D}${bindir}/gunzip ${D}${base_bindir}/gunzip.${PN} - mv ${D}${bindir}/gzip ${D}${base_bindir}/gzip.${PN} - mv ${D}${bindir}/zcat ${D}${base_bindir}/zcat.${PN} -} - -pkg_postinst_${PN} () { - update-alternatives --install ${base_bindir}/gunzip gunzip gunzip.${PN} 100 - update-alternatives --install ${base_bindir}/gzip gzip gzip.${PN} 100 - update-alternatives --install ${base_bindir}/zcat zcat zcat.${PN} 100 -} - -pkg_prerm_${PN} () { - update-alternatives --remove gunzip gunzip.${PN} - update-alternatives --remove gzip gzip.${PN} - update-alternatives --remove zcat zcat.${PN} -} - -BBCLASSEXTEND = "native" diff --git a/meta/packages/gzip/gzip_1.4.bb b/meta/packages/gzip/gzip_1.4.bb deleted file mode 100644 index 93020ba50b..0000000000 --- a/meta/packages/gzip/gzip_1.4.bb +++ /dev/null @@ -1,5 +0,0 @@ -require gzip.inc - -PR = "r0" - -BBCLASSEXTEND = "native" diff --git a/meta/packages/hal/files/20hal b/meta/packages/hal/files/20hal deleted file mode 100755 index 5b97c4f9e6..0000000000 --- a/meta/packages/hal/files/20hal +++ /dev/null @@ -1,58 +0,0 @@ -#! /bin/sh -# -# hal Start the Daemon that stores device informations -# for the Hardware abstraction layer -# -# Written by Martin Waitz based on skeleton code -# written by Miquel van Smoorenburg . -# Modified for Debian -# by Ian Murdock . -# - -PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin -DAEMON=/usr/sbin/hald -PIDDIR=/var/run/hald -PIDFILE=$PIDDIR/hald.pid -NAME=hald -DAEMONUSER=haldaemon -DESC="Hardware abstraction layer" - -test -x $DAEMON || exit 0 - -set -e - -do_start() { - if [ ! -d $PIDDIR ]; then - mkdir -p $PIDDIR - chown $DAEMONUSER:$DAEMONUSER $PIDDIR - fi - echo "Starting $DESC" "$NAME" - start-stop-daemon --start --pidfile $PIDFILE \ - --exec $DAEMON -- $DAEMON_OPTS -} - -do_stop() { - echo "Stopping $DESC" "$NAME" - start-stop-daemon --stop --quiet --pidfile $PIDFILE \ - --exec $DAEMON -} - -case "$1" in - start) - do_start - ;; - stop) - do_stop - ;; - restart|force-reload) - do_stop - sleep 5 - do_start - ;; - *) - echo "Usage: $0 {start|stop|restart|force-reload}" >&2 - exit 1 - ;; -esac - -exit 0 diff --git a/meta/packages/hal/files/autoconf.diff b/meta/packages/hal/files/autoconf.diff deleted file mode 100644 index eb30cccdbe..0000000000 --- a/meta/packages/hal/files/autoconf.diff +++ /dev/null @@ -1,11 +0,0 @@ ---- hal-0.5.9/configure.in~ 2007-04-03 05:36:44.000000000 +0100 -+++ hal-0.5.9/configure.in 2007-04-03 10:29:39.000000000 +0100 -@@ -6,7 +6,7 @@ - # Patches for that is welcome. - # - --AC_PREREQ(2.59c) -+AC_PREREQ(2.59) - AC_INIT(hal, 0.5.9, david@fubar.dk) - AM_INIT_AUTOMAKE(hal, 0.5.9) - AM_CONFIG_HEADER(config.h) diff --git a/meta/packages/hal/files/hal-right-input-h.patch b/meta/packages/hal/files/hal-right-input-h.patch deleted file mode 100644 index f820b7790a..0000000000 --- a/meta/packages/hal/files/hal-right-input-h.patch +++ /dev/null @@ -1,29 +0,0 @@ -diff --git a/configure.in b/configure.in -index e76ff51..5e8cc21 100644 ---- a/configure.in -+++ b/configure.in -@@ -983,6 +983,11 @@ AC_ARG_WITH([linux-input-header], - [Use an given Linux input.h rather than that installed on the system ()])) - if test "x$with_linux_input_header" != "x"; then - AC_DEFINE_UNQUOTED(HAL_LINUX_INPUT_HEADER_H, "$with_linux_input_header", [If set, the header to use instead of ]) -+ LINUX_INPUT_H=$with_linux_input_header -+ AC_SUBST(LINUX_INPUT_H) -+else -+ LINUX_INPUT_H=/usr/include/linux/input.h -+ AC_SUBST(LINUX_INPUT_H) - fi - - dnl -diff --git a/tools/Makefile.am b/tools/Makefile.am -index ae03edd..7d1cbab 100644 ---- a/tools/Makefile.am -+++ b/tools/Makefile.am -@@ -79,7 +79,7 @@ endif - if BUILD_KEYMAPS - - if HAVE_GPERF --hal-setup-keymap-keys.txt: /usr/include/linux/input.h -+hal-setup-keymap-keys.txt: @LINUX_INPUT_H@ - awk '/^#define.*KEY_/ { if ($$2 != "KEY_MAX") { print substr($$2, 5) } }' < $< > $@ - - hal-setup-keymap-hash-name.gperf: hal-setup-keymap-keys.txt diff --git a/meta/packages/hal/files/sg-inhibit.patch b/meta/packages/hal/files/sg-inhibit.patch deleted file mode 100644 index f0cc41448a..0000000000 --- a/meta/packages/hal/files/sg-inhibit.patch +++ /dev/null @@ -1,24 +0,0 @@ ---- hal-0.5.9.1/hald/linux/probing/linux_dvd_rw_utils.c.old 2007-08-03 17:24:12.000000000 +0100 -+++ hal-0.5.9.1/hald/linux/probing/linux_dvd_rw_utils.c 2007-08-03 17:25:06.000000000 +0100 -@@ -58,6 +58,10 @@ - - #include "linux_dvd_rw_utils.h" - -+#if defined(SG_FLAG_UNUSED_LUN_INHIBIT) -+# define SG_FLAG_LUN_INHIBIT SG_FLAG_UNUSED_LUN_INHIBIT -+#endif -+ - typedef enum { - NONE = CGC_DATA_NONE, // 3 - READ = CGC_DATA_READ, // 2 -@@ -153,8 +153,8 @@ - errno = EIO; - ret = -1; - if (cmd->sg_io.masked_status & CHECK_CONDITION) { -- CREAM_ON_ERRNO (cmd->sg_io.sbp); -- ret = ERRCODE (cmd->sg_io.sbp); -+ CREAM_ON_ERRNO ((char*)cmd->sg_io.sbp); -+ ret = ERRCODE ((char*)cmd->sg_io.sbp); - if (ret == 0) - ret = -1; - } diff --git a/meta/packages/hal/hal-info.inc b/meta/packages/hal/hal-info.inc deleted file mode 100644 index adba83fb28..0000000000 --- a/meta/packages/hal/hal-info.inc +++ /dev/null @@ -1,22 +0,0 @@ -DESCRIPTION = "Hardware Abstraction Layer device information" -HOMEPAGE = "http://hal.freedesktop.org/" -BUGTRACKER = "http://bugs.freedesktop.org/buglist.cgi?product=hal" -SECTION = "unknown" - -LICENSE = "GPLv2 | AFL" -LIC_FILES_CHKSUM = "file://COPYING;md5=ae484909bad0cf11c8e2071cee6bd4dc" - -SRC_URI = "http://hal.freedesktop.org/releases/${PN}-${PV}.tar.gz" - -inherit autotools pkgconfig - -EXTRA_OECONF = "--disable-recall --disable-video" - -do_configure() { - gnu-configize - libtoolize --force - oe_runconf -} - -PACKAGE_ARCH = "all" -FILES_${PN} += "${datadir}/hal/" diff --git a/meta/packages/hal/hal-info_20091130.bb b/meta/packages/hal/hal-info_20091130.bb deleted file mode 100644 index e6d50e3981..0000000000 --- a/meta/packages/hal/hal-info_20091130.bb +++ /dev/null @@ -1 +0,0 @@ -require hal-info.inc diff --git a/meta/packages/hal/hal-info_git.bb b/meta/packages/hal/hal-info_git.bb deleted file mode 100644 index 3fff5e0a7d..0000000000 --- a/meta/packages/hal/hal-info_git.bb +++ /dev/null @@ -1,9 +0,0 @@ -require hal-info.inc - -PV = "${SRCDATE}+git" -PR = "r0" - -SRC_URI = "git://anongit.freedesktop.org/hal-info/;protocol=git;rev=HAL_INFO_20091130" -S = "${WORKDIR}/git" - -DEFAULT_PREFERENCE = "-1" diff --git a/meta/packages/hal/hal.inc b/meta/packages/hal/hal.inc deleted file mode 100644 index 839dfd0652..0000000000 --- a/meta/packages/hal/hal.inc +++ /dev/null @@ -1,85 +0,0 @@ -DESCRIPTION = "Hardware Abstraction Layer" -HOMEPAGE = "http://freedesktop.org/Software/hal" -BUGTRACKER = "http://bugs.freedesktop.org/buglist.cgi?product=hal" -SECTION = "unknown" - -LICENSE = "GPLv2+ | AFL" -LIC_FILES_CHKSUM = "file://COPYING;md5=5b5ffd59fbb7c2fff6de76c94177af31" - -DEPENDS = "virtual/kernel dbus-glib udev util-linux intltool intltool-native expat libusb gperf-native" -RDEPENDS += "udev hal-info" - -SRC_URI = "http://hal.freedesktop.org/releases/hal-${PV}.tar.gz \ - file://20hal" - -inherit autotools pkgconfig - - -LEAD_SONAME = "libhal.so" - -# machines with pci and acpi get a machine dependant hal -EXTRA_OECONF = "--with-hwdata=${datadir}/hwdata \ - --with-expat=${STAGING_LIBDIR}/.. \ - --with-dbus-sys=${sysconfdir}/dbus-1/system.d \ - --with-hotplug=${sysconfdir}/hotplug.d \ - --disable-docbook-docs \ - --disable-policy-kit \ - --disable-pmu \ - --disable-pnp-ids \ - ${@base_contains('COMBINED_FEATURES', 'pci', '--enable-pci --enable-pci-ids', '--disable-pci --disable-pci-ids',d)} \ - ${@base_contains('MACHINE_FEATURES', 'acpi', '--enable-acpi', '--disable-acpi',d)} \ - " - -MY_ARCH := "${PACKAGE_ARCH}" -PACKAGE_ARCH = "${@base_contains('MACHINE_FEATURES', 'acpi', '${MACHINE_ARCH}', '${MY_ARCH}',d)}" -PACKAGE_ARCH = "${@base_contains('MACHINE_FEATURES', 'pci', '${MACHINE_ARCH}', '${MY_ARCH}',d)}" -PACKAGE_ARCH_emenlow := "${PACKAGE_ARCH}" - -do_install_append() { - install -d ${D}/etc/dbus-1/event.d - install -m 0755 ${WORKDIR}/20hal ${D}/etc/dbus-1/event.d -} - -# At the time the postinst runs, dbus might not be setup so only restart if running -pkg_postinst_hal () { - # can't do this offline - if [ "x$D" != "x" ]; then - exit 1 - fi - - grep haldaemon /etc/group || addgroup haldaemon - grep haldaemon /etc/passwd || adduser --disabled-password --system --home /var/run/hald --no-create-home haldaemon --ingroup haldaemon -g HAL - - # add volatile after new user/grp are created - echo "d root root 0700 /var/run/hald none" > /etc/default/volatiles/99_hal - echo "d haldaemon haldaemon 0755 /var/cache/hald none" >> /etc/default/volatiles/99_hal - /etc/init.d/populate-volatile.sh update - - DBUSPID=`pidof dbus-daemon` - - if [ "x$DBUSPID" != "x" ]; then - /etc/init.d/dbus-1 force-reload - fi -} - -pkg_postrm_hal () { - deluser haldaemon || true - delgroup haldaemon || true -} - -FILES_${PN} = "${sysconfdir} \ - ${bindir}/lshal \ - ${bindir}/hal-find-by-capability \ - ${bindir}/hal-find-by-property \ - ${bindir}/hal-device \ - ${bindir}/hal-get-property \ - ${bindir}/hal-set-property \ - ${bindir}/hal-lock \ - ${bindir}/hal-is-caller-locked-out \ - ${sbindir} \ - ${libdir}/libhal.so.* \ - ${libdir}/libhal-storage.so.* \ - ${libdir}/hal \ - ${libexecdir} \ - ${datadir}/hal/fdi \ - ${datadir}/hal/scripts" diff --git a/meta/packages/hal/hal/configure_fix.patch b/meta/packages/hal/hal/configure_fix.patch deleted file mode 100644 index e8417040de..0000000000 --- a/meta/packages/hal/hal/configure_fix.patch +++ /dev/null @@ -1,60 +0,0 @@ -The AC_LANG sections upset libtool 2.2.2, as do .cpp files without a call -to AC_PROG_CXX. Easiest solution is to patch this out for now. - -RP - 14/4/08 - -Index: hal-0.5.9.1/configure.in -=================================================================== ---- hal-0.5.9.1.orig/configure.in 2008-04-14 22:41:49.000000000 +0100 -+++ hal-0.5.9.1/configure.in 2008-04-14 22:43:13.000000000 +0100 -@@ -345,32 +345,8 @@ - fi - - dnl Check for libsmbios --AC_LANG_PUSH([C++]) --AC_CHECK_LIB(smbios, SMBIOSFreeMemory, LIB_SMBIOS=yes , LIB_SMBIOS=no ) --AC_LANG_POP([C++]) --if test "$LIB_SMBIOS" = "yes" ; then -- AC_MSG_CHECKING([for libsmbios >= 0.13.4]) -- AC_TRY_RUN( -- #include -- int main () -- { -- int major ; -- int minor ; -- int micro ; -- -- if ( sscanf( LIBSMBIOS_RELEASE_VERSION , "%d.%d.%d", &major, &minor, µ ) == 3 ) { -- if ((major == 0 && minor == 13 && micro >= 4) || -- (major >= 0 && minor > 13)) { -- return 0; -- } -- } -- return 1; -- } , [USE_SMBIOS=yes; AC_MSG_RESULT(yes); AM_CONDITIONAL(HAVE_SMBIOS,true)], -- [USE_SMBIOS=no; AC_MSG_RESULT(failed); AM_CONDITIONAL(HAVE_SMBIOS,false)]) --else -- USE_SMBIOS=no -- AM_CONDITIONAL(HAVE_SMBIOS,false) --fi -+USE_SMBIOS=no -+AM_CONDITIONAL(HAVE_SMBIOS,false) - - AC_ARG_WITH([libpci], - [AS_HELP_STRING([--without-libpci], -Index: hal-0.5.9.1/hald/linux/addons/Makefile.am -=================================================================== ---- hal-0.5.9.1.orig/hald/linux/addons/Makefile.am 2008-04-14 22:45:18.000000000 +0100 -+++ hal-0.5.9.1/hald/linux/addons/Makefile.am 2008-04-14 22:46:05.000000000 +0100 -@@ -60,11 +60,6 @@ - hald_addon_usb_csr_LDADD = $(top_builddir)/libhal/libhal.la -lusb @GLIB_LIBS@ - endif - --if BUILD_DELL --libexec_PROGRAMS += hald-addon-dell-backlight --hald_addon_dell_backlight_SOURCES = addon-dell-backlight.cpp ../../logger.c --hald_addon_dell_backlight_LDADD = $(top_builddir)/libhal/libhal.la -lsmbios @GLIB_LIBS@ --endif - endif - - hald_addon_acpi_SOURCES = addon-acpi.c ../../logger.c ../../util_helper.c diff --git a/meta/packages/hal/hal_0.5.14.bb b/meta/packages/hal/hal_0.5.14.bb deleted file mode 100644 index a12be729cb..0000000000 --- a/meta/packages/hal/hal_0.5.14.bb +++ /dev/null @@ -1,14 +0,0 @@ -require hal.inc - -PR = "r2" - -EXTRA_OECONF += "--with-linux-input-header=${STAGING_INCDIR}/linux/input.h" -EXTRA_OEMAKE += "-e 'udevrulesdir=$(sysconfdir)/udev/rules.d'" - -PACKAGES =+ "libhal libhal-storage" - -FILES_libhal = "${libdir}/libhal.so.*" -FILES_libhal-storage = "${libdir}/libhal-storage.so.*" - -FILES_${PN} =+ "${bindir}/hal-disable-polling \ - ${bindir}/hal-setup-keymap" diff --git a/meta/packages/hal/hal_git.bb b/meta/packages/hal/hal_git.bb deleted file mode 100644 index baed472375..0000000000 --- a/meta/packages/hal/hal_git.bb +++ /dev/null @@ -1,12 +0,0 @@ -require hal.inc - -PV = "0.5.9.1+git${SRCDATE}" -PR = "r7" - -SRC_URI = "git://anongit.freedesktop.org/hal/;protocol=git \ - file://20hal \ - file://99_hal" - -S = "${WORKDIR}/git" - -DEFAULT_PREFERENCE = "-1" diff --git a/meta/packages/hdparm/hdparm-6.3/bswap.patch b/meta/packages/hdparm/hdparm-6.3/bswap.patch deleted file mode 100644 index 37fbcb7b38..0000000000 --- a/meta/packages/hdparm/hdparm-6.3/bswap.patch +++ /dev/null @@ -1,36 +0,0 @@ - -# -# Patch managed by http://www.holgerschurig.de/patcher.html -# - ---- hdparm-5.8/hdparm.c~bswap -+++ hdparm-5.8/hdparm.c -@@ -20,7 +20,9 @@ - #include - #include - #include --#include -+#include -+ -+#define le16_to_cpus(x) bswap_16(htons(x)) - - #include "hdparm.h" - -@@ -1160,7 +1162,7 @@ - } - } else { - for(i = 0; i < 0x100; ++i) { -- __le16_to_cpus(&id[i]); -+ le16_to_cpus(&id[i]); - } - identify((void *)id, NULL); - } -@@ -1380,7 +1382,7 @@ - } - for (i = 0; count >= 4; ++i) { - sbuf[i] = (fromhex(b[0]) << 12) | (fromhex(b[1]) << 8) | (fromhex(b[2]) << 4) | fromhex(b[3]); -- __le16_to_cpus((__u16 *)(&sbuf[i])); -+ le16_to_cpus((__u16 *)(&sbuf[i])); - b += 5; - count -= 5; - } diff --git a/meta/packages/hdparm/hdparm-6.3/uclibc.patch b/meta/packages/hdparm/hdparm-6.3/uclibc.patch deleted file mode 100644 index 495d7491bb..0000000000 --- a/meta/packages/hdparm/hdparm-6.3/uclibc.patch +++ /dev/null @@ -1,32 +0,0 @@ ---- hdparm-5.8/hdparm.c.ark 2005-05-22 19:48:34.000000000 +0000 -+++ hdparm-5.8/hdparm.c 2005-05-22 19:52:18.000000000 +0000 -@@ -17,7 +17,9 @@ - #include - #include - #include -+#ifndef __UCLIBC__ - #include -+#endif - #include - #include - #include ---- hdparm-5.8/hdparm.h.ark 2005-05-22 19:51:49.000000000 +0000 -+++ hdparm-5.8/hdparm.h 2005-05-22 19:54:54.000000000 +0000 -@@ -1,6 +1,6 @@ - /* Some prototypes for extern functions. */ - --#include /* for __u16 */ -+#include - - #if !defined(__GNUC__) && !defined(__attribute__) - #define __attribute__(x) /* if not using GCC, turn off the __attribute__ -@@ -11,7 +11,7 @@ - others, though, were declared in hdparm.c with global scope; since other - functions in that file have static (file) scope, I assume the difference is - intentional. */ --extern void identify (__u16 *id_supplied, const char *devname); -+extern void identify (uint16_t *id_supplied, const char *devname); - - extern void usage_error(int out) __attribute__((noreturn)); - extern int main(int argc, char **argv) __attribute__((noreturn)); - diff --git a/meta/packages/hdparm/hdparm_6.3.bb b/meta/packages/hdparm/hdparm_6.3.bb deleted file mode 100644 index 94d1e6e9bf..0000000000 --- a/meta/packages/hdparm/hdparm_6.3.bb +++ /dev/null @@ -1,14 +0,0 @@ -DESCRIPTION = "hdparm is a Linux shell utility for viewing \ -and manipulating various IDE drive and driver parameters." -SECTION = "console/utils" -PRIORITY = "optional" -LICENSE = "BSD" - -SRC_URI = "${SOURCEFORGE_MIRROR}/hdparm/hdparm-${PV}.tar.gz \ - file://bswap.patch;patch=1 \ - file://uclibc.patch;patch=1" - -do_install () { - install -d ${D}/${sbindir} ${D}/${mandir}/man8 - oe_runmake 'DESTDIR=${D}' install -} diff --git a/meta/packages/hostap/files/hostap-fw-load.patch b/meta/packages/hostap/files/hostap-fw-load.patch deleted file mode 100644 index 88adee2bc9..0000000000 --- a/meta/packages/hostap/files/hostap-fw-load.patch +++ /dev/null @@ -1,20 +0,0 @@ - -# -# Patch managed by http://www.holgerschurig.de/patcher.html -# - ---- hostap-utils-0.2.4/hostap_fw_load~hostap-fw-load -+++ hostap-utils-0.2.4/hostap_fw_load -@@ -6,9 +6,9 @@ - # Firmware images for the card - # TODO: could try to select correct firmware type automatically - --PRI=/etc/pcmcia/PM010102.HEX --STA=/etc/pcmcia/RF010802.HEX --PRISM2_SREC=/usr/local/bin/prism2_srec -+PRI=/etc/pcmcia/pm010102.hex -+STA=/etc/pcmcia/rf010804.hex -+PRISM2_SREC=/usr/sbin/prism2_srec - - set -e - diff --git a/meta/packages/hostap/files/hostap_cs.conf b/meta/packages/hostap/files/hostap_cs.conf deleted file mode 100644 index 8dda82aad3..0000000000 --- a/meta/packages/hostap/files/hostap_cs.conf +++ /dev/null @@ -1,193 +0,0 @@ -module "hostap_cs" opts "channel=3 iw_mode=2 essid=any ignore_cis_vcc=1" - -card "Actiontec 802CI2" - manfid 0x1668, 0x0101 - bind "hostap_cs" - -card "AirWay 802.11 Adapter (PCMCIA)" - #version "AirWay", "802.11 Adapter (PCMCIA)" - manfid 0x0261, 0x0002 - bind "hostap_cs" - -card "Asus SpaceLink WL110" - manfid 0x02aa,0x0002 - bind "hostap_cs" - -## handhelds.org bug 964 -card "Belkin F5D6060 Ethernet" - #version "PCMCIA", "11M WLAN Card v2.5", "ISL37300P", "RevA" - manfid 0x0274, 0x1612 - bind "hostap_cs" - -card "Compaq 11Mbps Wireless PC Card" - manfid 0x028a, 0x0002 - bind "hostap_cs" - -card "Compaq WL100 11 Mbps Wireless Adapter" - manfid 0x0138, 0x0002 - bind "hostap_cs" - -card "Compaq HNW-100 11 Mbps Wireless Adapter" - manfid 0x028a, 0x0002 - bind "hostap_cs" - -card "D-Link DWL-650" - version "D", "Link DWL-650 11Mbps WLAN Card" - bind "hostap_cs" - -card "D-Link DRC-650" - version "D", "Link DRC-650 11Mbps WLAN Card" - bind "hostap_cs" - -card "D-Link DCF660" - manfid 0xd601, 0x0005 - bind "hostap_cs" - -card "Farallon SkyLINE" - version "INTERSIL", "HFA384x/IEEE" - bind "hostap_cs" - -card "HyperLink Wireless PC Card 11Mbps" - version "HyperLink", "Wireless PC Card 11Mbps" - bind "hostap_cs" - -# card "Intersil PRISM2 11 Mbps Wireless Adapter" -# manfid 0x0156, 0x0002 -# bind "hostap_cs" - -card "LA4111 Spectrum24 Wireless LAN PC Card" - version "Symbol Technologies" - bind "hostap_cs" - -card "Linksys WPC11 11Mbps 802.11b WLAN Card" - version "Instant Wireless ", " Network PC CARD", "Version 01.02" - bind "hostap_cs" - -card "Linksys WCF11 11Mbps 802.11b WLAN Card" - manfid 0x0274, 0x3301 - bind "hostap_cs" - -## handhelds.org bug #790 -card "Linksys Wireless CompactFlash Card WCF12" - manfid 0x028a, 0x0673 - bind "hostap_cs" - -card "Linksys WLAN CF Card" - manfid 0x0274, 0x3301 - bind "hostap_cs" - -card "NETGEAR MA701 Wireless CF Card" - manfid 0xd601, 0x0002 - bind "hostap_cs" - -card "Nortel Networks eMobility 802.11 Wireless Adapter" - manfid 0x01eb, 0x080a - bind "hostap_cs" - -card "PLANEX GeoWave GW-CF110" - version "PLANEX", "GeoWave/GW-CF110" - bind "hostap_cs" - -card "PROXIM LAN PC CARD HARMONY 80211B" - version "PROXIM", "LAN PC CARD HARMONY 80211B" - bind "hostap_cs" - -card "Proxim RangeLAN/DS" - version "PROXIM","RangeLAN-DS/LAN PC CARD" - manfid 0x0126, 0x8000 - bind "hostap_cs" - -card "Safeway 802.11b Wireless Adapter" - manfid 0xd601, 0x0002 - bind "hostap_cs" - -card "SAMSUNG 11Mbps WLAN Card" - version "SAMSUNG", "11Mbps WLAN Card" - bind "hostap_cs" - -# needs firmware upload via hostap_fw_load -card "SanDisk ConnectPlus OEM (0MB)" - manfid 0xd601, 0x0010 - bind "hostap_cs" - -# needs special activation (>=hostap 0.3.2 only) plus firmware upload -card "SanDisk ConnectPlus w/ Memory" - version "SanDisk", "ConnectPlus" - manfid 0xd601, 0x0101 - bind "hostap_cs" to 0 -# bind "ide-cs" to 1 - -card "Senao/Origo 80211b WLAN Card" - manfid 0x000b,0x7100 - bind "hostap_cs" - -card "Sitecom WL-007 WLAN CF Card" - manfid 0xd601, 0x0004 - bind "hostap_cs" - -card "SMC2632 802.11 (prism2) Card" - version "SMC", "SMC2632W", "Version 01.02", "" - bind "hostap_cs" - -card "SpeedStream SS1021 Wireless Adapter" - #version "Siemens", "SpeedStream Wireless PCMCIA" - manfid 0x02ac, 0x0002 - bind "hostap_cs" - -card "ZCOMAX AirRunner/XI-300" - #version "ZCOMAX", "AirRunner/XI-300" - manfid 0xd601, 0x0002 - bind "hostap_cs" - -card "Zonet ZCF1100" - manfid 0x000b, 0x7100 - bind "hostap_cs" - -card "Wireless LAN Adapter Version 01.02" - version "Wireless", "LAN Adapter", "Version 01.02" -# manfid 0x0156, 0x0002 - bind "hostap_cs" - -card "Ambicom WL1100C 11Mbs Card 802.11b" - version "AmbiCom", "WL1100C 802.11b CF-Card", "2.2" - manfid 0xd601,0x0002 - bind "hostap_cs" - -card "Ambicom WL1100C 11Mbs Card 802.11b" - manfid 0xd601,0x0002 - bind "hostap_cs" - -card "Sandisk Connect SDWCFB-000" - manfid 0xd601,0x0005 - bind "hostap_cs" - -# Cards with Intersil firmware (Prism chipset) - -card "Linksys WPC11 11Mbps 802.11b WLAN Card" - version "The Linksys Group, Inc.", "Instant Wireless Network PC Card", "ISL37300P", "RevA" - bind "hostap_cs" - -card "Linksys CompactFlash Wireless Card" - version "Linksys", "Wireless CompactFlash Card" - bind "hostap_cs" - -card "ACTIONTEC PRISM Wireless LAN PC Card" - version "ACTIONTEC", "PRISM Wireless LAN PC Card" - bind "hostap_cs" - -card "Linksys WPC11 Version 3" - manfid 0x0274,0x1613 - bind "hostap_cs" - -card "BENQ AWL100" - version "BENQ", "AWL100 PCMCIA ADAPTER" - bind "hostap_cs" - -card "Pretec WLAN" - version "Pretec", "CompactWLAN Card 802.11b", "2.5" - manfid 0x0156, 0x0002 - bind "hostap_cs" - -card "TrendNet TEW PC16" - manfid 0x0274, 0x1601 - bind "hostap_cs" diff --git a/meta/packages/hostap/files/hostap_cs.conf-upstream b/meta/packages/hostap/files/hostap_cs.conf-upstream deleted file mode 100644 index 5b7385a7cb..0000000000 --- a/meta/packages/hostap/files/hostap_cs.conf-upstream +++ /dev/null @@ -1,191 +0,0 @@ -device "hostap_cs" - class "network" module "hostap", "hostap_cs" - -card "Intersil PRISM2 Reference Design 11Mb/s WLAN Card" - version "INTERSIL", "HFA384x/IEEE" - bind "hostap_cs" - -card "Compaq WL100 11Mb/s WLAN Card" - manfid 0x0138, 0x0002 - bind "hostap_cs" - -card "Compaq WL200" - version "Compaq", "WL200_11Mbps_Wireless_PCI_Card" - bind "hostap_cs" - -card "EMTAC A2424i 11Mbps WLAN Card" - manfid 0xc250, 0x0002 -# cis "cis/Emtac.dat" - bind "hostap_cs" - -card "Linksys WPC11 11Mbps WLAN Card" - version "Instant Wireless ", " Network PC CARD", "Version 01.02" - bind "hostap_cs" - -card "Linksys WPC11 Ver 2.5 11Mbps WLAN Card" - manfid 0x0274, 0x1612 - bind "hostap_cs" - -card "Linksys WPC11 Ver 3 11Mbps WLAN Card" - manfid 0x0274, 0x1613 - bind "hostap_cs" - -card "Linksys WCF12 Wireless CompactFlash Card" - version "Linksys", "Wireless CompactFlash Card" - bind "hostap_cs" - -card "D-Link DWL-650 11Mbps WLAN Card" - version "D", "Link DWL-650 11Mbps WLAN Card", "Version 01.02" - bind "hostap_cs" - -card "D-Link DRC-650 11Mbps WLAN Card" -# version "D", "Link DRC-650 11Mbps WLAN Card", "Version 01.02" - manfid 0x028a, 0x0002 - bind "hostap_cs" - -card "ZoomAir 4100 11Mb/s WLAN Card" - version "ZoomAir 11Mbps High", "Rate wireless Networking" - bind "hostap_cs" - -card "Addtron AWP-100 11Mbps WLAN Card" - version "Addtron", "AWP-100 Wireless PCMCIA", "Version 01.02" - bind "hostap_cs" - -card "Samsung SWL2000-N 11Mb/s WLAN Card" - manfid 0x0250, 0x0002 - bind "hostap_cs" - -card "SMC 2632W 11Mbps WLAN Card" - version "SMC", "SMC2632W", "Version 01.02" - bind "hostap_cs" - -card "BroMax Freeport 11Mbps WLAN Card" - version "Intersil", "PRISM 2_5 PCMCIA ADAPTER", "ISL37300P", "Eval-RevA" - bind "hostap_cs" - -card "Z-Com XI300 11Mb/s WLAN Card" - manfid 0xd601, 0x0002 - bind "hostap_cs" - -card "Zcomax XI-325H 200mW" -# version " ", "IEEE 802.11 Wireless LAN/PC Card" - manfid 0xd601, 0x0005 - bind "hostap_cs" - -card "3Com AirConnect PCI 777A" - manfid 0x0101, 0x0777 - bind "hostap_cs" - -card "U.S. Robotics IEEE 802.11b PC-CARD" - version "U.S. Robotics", "IEEE 802.11b PC-CARD", "Version 01.02" -# manfid 0x0156, 0x0002 - bind "hostap_cs" - -card "Longshine LCR-8531 11Mbps WLAN PCMCIA CARD" - version "OEM", "PRISM2 IEEE 802.11 PC-Card", "Version 01.02" -# manfid 0x0156, 0x0002 - bind "hostap_cs" - -card "Philips 802.11b WLAN PCMCIA" - manfid 0x000b, 0x7300 - bind "hostap_cs" - -card "Proxim RangeLAN" -# version "PROXIM", "RangeLAN-DS/LAN PC CARD" - manfid 0x0126, 0x8000 - bind "hostap_cs" - -card "Buffalo WLI-CF-S11G" - version "BUFFALO", "WLI-CF-S11G" -# manfid 0x026f, 0x030b - bind "hostap_cs" - -card "Level-One WPC-0100" - version "Digital Data Communications", "WPC-0100", "Version 00.00" - manfid 0x0156, 0x0002 - bind "hostap_cs" - -card "Belkin 802.11b WLAN PCMCIA" - version "Belkin", "11Mbps Wireless Notebook Network Adapter", "Version 01.02" - manfid 0x0156, 0x0002 - bind "hostap_cs" - -card "Senao SL-2011CD/SL-2011CDPLUS" - version "INTERSIL", "HFA384x/IEEE", "Version 01.02" - manfid 0x0156, 0x0002 - bind "hostap_cs" - -card "Fulbond Airbond XI-300B" - version " ", "IEEE 802.11 Wireless LAN/PC Card" - manfid 0xd601, 0x0002 - bind "hostap_cs" - -card "Netgear MA401" - version "NETGEAR MA401 Wireless PC", "Card", "Version 01.00" -# manfid 0x0156, 0x0002 - bind "hostap_cs" - -card "D-Link DWL-650 Rev. P1" - version "D-Link", "DWL-650 Wireless PC Card RevP", "ISL37101P-10", "A3" -# manfid 0x000b, 0x7110 - bind "hostap_cs" - -card "SonicWALL Long Range Wireless Card" - version "SonicWALL", "Long Range Wireless Card", "ISL37100P", "1.0" - manfid 0x000b, 0x7100 - bind "hostap_cs" - -card "Senao NL-2011CD PLUS Ext2 Mercury" - version "WLAN", "11Mbps_PC-Card_3.0", "ISL37100P", "Eval-RevA" - manfid 0x000b, 0x7100 - bind "hostap_cs" - -card "Airvast WL100" - version "AIRVAST", "IEEE 802.11b Wireless PCMCIA Card", "HFA3863" - manfid 0x50c2, 0x0001 - bind "hostap_cs" - -card "Microsoft Wireless Notebook Adapter MN-520 1.0.3" - version "Microsoft", "Wireless Notebook Adapter MN-520", "", "1.0.3" - manfid 0x02d2, 0x0001 - bind "hostap_cs" - -card "NETGEAR MA401RA" - version "NETGEAR MA401RA Wireless PC", "Card", "ISL37300P", "Eval-RevA" - manfid 0x000b, 0x7300 - bind "hostap_cs" - -card "Allied Telesyn AT-WCL452" - version "Allied Telesyn", "AT-WCL452 Wireless PCMCIA Radio", "Ver. 1.00" - manfid 0xc00f, 0x0000 - bind "hostap_cs" - -card "corega WL PCCL-11" - version "corega", "WL PCCL-11", "ISL37300P", "RevA" - manfid 0xc00f, 0x0000 - bind "hostap_cs" - -card "SanDisk ConnectPlus" - version "SanDisk", "ConnectPlus" - manfid 0xd601, 0x0101 - bind "hostap_cs" to 0 - bind "ide-cs" to 1 - -card "ASUS WL-100 8011b WLAN PC Card" - version "ASUS", "802_11b_PC_CARD_25", "Version 01.00" - manfid 0x02aa, 0x0002 - bind "hostap_cs" - -card "ZyXel Zyair B-101 802.11b WLAN card" - version " ", "IEEE 802.11 Wireless LAN/PC Card" - manfid 0xd601, 0x0010 - bind "hostap_cs" - -card "WLAN PRISM PCMCIA CARD 37300P RevB6" - version "WLAN", "PRISM PCMCIA CARD", "37300P", "Revision B6" - manfid 0x50c2, 0x7300 - bind "hostap_cs" - - -# Optional configuration parameters for hostap_cs.o -# module "hostap_cs" opts "channel=3 iw_mode=3 essid=test ignore_cis_vcc=0" diff --git a/meta/packages/hostap/files/hostap_cs.modalias b/meta/packages/hostap/files/hostap_cs.modalias deleted file mode 100644 index cb9efab271..0000000000 --- a/meta/packages/hostap/files/hostap_cs.modalias +++ /dev/null @@ -1,28 +0,0 @@ -# product info: "Pretec", "CompactWLAN Card 802.11b", "2.5" -pcmcia:m0156c0002f06fn00pfn00pa1CADD3E5pbE697636Cpc7A5BFCF1pd00000000 hostap_cs - -# manufacturer ID which exist in orinoco_cs AND in hostap_cs -pcmcia:m000Bc7100f06fn00pfn00pa*pb*pc*pd* hostap_cs -pcmcia:m000Bc7300f06fn00pfn00pa*pb*pc*pd* hostap_cs -pcmcia:m0126c8000f06fn00pfn00pa*pb*pc*pd* hostap_cs -pcmcia:m0138c0002f06fn00pfn00pa*pb*pc*pd* hostap_cs -pcmcia:m0250c0002f06fn00pfn00pa*pb*pc*pd* hostap_cs -pcmcia:m0274c1612f06fn00pfn00pa*pb*pc*pd* hostap_cs -pcmcia:m0274c1613f06fn00pfn00pa*pb*pc*pd* hostap_cs -pcmcia:m028Ac0002f06fn00pfn00pa*pb*pc*pd* hostap_cs -pcmcia:m02AAc0002f06fn00pfn00pa*pb*pc*pd* hostap_cs -pcmcia:m50C2c7300f06fn00pfn00pa*pb*pc*pd* hostap_cs -pcmcia:mD601c0002f06fn00pfn00pa*pb*pc*pd* hostap_cs -pcmcia:mD601c0005f06fn00pfn00pa*pb*pc*pd* hostap_cs - -# product info: "Linksys", "Wireless CompactFlash Card", "", "" -pcmcia:m028Ac0673f06fn00pfn00pa0733CC81pb0C52F395pc00000000pd00000000 hostap_cs - -# product info:"PLANEX COMMUNICATION INC","PLANEX GW-CF11X Wireless CF Card", "", "" -pcmcia:mD601c0010f06fn00pfn00pa4703CF68pbFAD7318Dpc00000000pd00000000 hostap_cs - -# 0x0156, 0x0002 and "Version 01.02" only appear for Prism based cards. -pcmcia:m0156c0002f06fn00pfn00pa*pb*pc4B74BAA0pd00000000 hostap_cs - -# "BUFFALO", "WLI-CF-S11G", "", "" -pcmcia:m026Fc030Bf06fn00pfn00pa2DECECE3pb82067C18pc00000000pd00000000 hostap_cs diff --git a/meta/packages/hostap/hostap-conf_1.0.bb b/meta/packages/hostap/hostap-conf_1.0.bb deleted file mode 100644 index ce069662c7..0000000000 --- a/meta/packages/hostap/hostap-conf_1.0.bb +++ /dev/null @@ -1,29 +0,0 @@ -DESCRIPTION = "PCMCIA-cs configuration files for wireless LAN cards based on Intersil's Prism2/2.5/3 chipset" -SECTION = "kernel/modules" -PRIORITY = "optional" -LICENSE = "GPL" -RDEPENDS = "update-modules" -PACKAGE_ARCH = "all" -PR = "r10" - -SRC_URI = "file://hostap_cs.modalias" - -do_compile() { -} - -do_install() { - install -d ${D}${sysconfdir}/modutils - - install -m 0644 ${WORKDIR}/hostap_cs.modalias ${D}${sysconfdir}/modutils/hostap_cs.conf -} - -pkg_postinst () { - if [ -n "$D" ]; then - exit 1 - fi - update-modules || true -} - -pkg_postrm () { - update-modules || true -} diff --git a/meta/packages/hostap/hostap-utils.inc b/meta/packages/hostap/hostap-utils.inc deleted file mode 100644 index 16880f1196..0000000000 --- a/meta/packages/hostap/hostap-utils.inc +++ /dev/null @@ -1,25 +0,0 @@ -DESCRIPTION = "User mode helpers for the hostap driver" -HOMEPAGE = "http://hostap.epitest.fi" -BUGTRACKER = "http://hostap.epitest.fi/bugz/" -LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3 \ - file://util.c;beginline=1;endline=9;md5=d3b9280851302e5ba34e5fb717489b6d" -SECTION = "kernel/userland" -PRIORITY = "optional" -PR = "r4" - -SRC_URI = "http://hostap.epitest.fi/releases/hostap-utils-${PV}.tar.gz \ - file://hostap-fw-load.patch;patch=1" -S = "${WORKDIR}/hostap-utils-${PV}" - -BINARIES = "hostap_crypt_conf hostap_diag hostap_fw_load hostap_io_debug \ - hostap_rid prism2_param prism2_srec split_combined_hex" - -do_install() { - install -d ${D}${sbindir}/ - for f in ${BINARIES} - do - install -m 0755 $f ${D}${sbindir}/ - done -} - diff --git a/meta/packages/hostap/hostap-utils_0.4.7.bb b/meta/packages/hostap/hostap-utils_0.4.7.bb deleted file mode 100644 index 9fe362b19f..0000000000 --- a/meta/packages/hostap/hostap-utils_0.4.7.bb +++ /dev/null @@ -1 +0,0 @@ -require hostap-utils.inc diff --git a/meta/packages/icu/files/gccfix.patch b/meta/packages/icu/files/gccfix.patch deleted file mode 100644 index 9291e921d3..0000000000 --- a/meta/packages/icu/files/gccfix.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: source/layoutex/ParagraphLayout.cpp -=================================================================== ---- source.orig/layoutex/ParagraphLayout.cpp 2009-06-30 11:48:47.000000000 +0100 -+++ source/layoutex/ParagraphLayout.cpp 2009-06-30 11:49:06.000000000 +0100 -@@ -798,7 +798,7 @@ - - return nullLanguageCode; - } --#elif -+#else - - // TODO - dummy implementation for right now... - le_int32 ParagraphLayout::getLanguageCode(const Locale *locale) diff --git a/meta/packages/icu/files/noldlibpath.patch b/meta/packages/icu/files/noldlibpath.patch deleted file mode 100644 index eba3d805d4..0000000000 --- a/meta/packages/icu/files/noldlibpath.patch +++ /dev/null @@ -1,47 +0,0 @@ -Setting LD_LIBRARY_PATH is a really bad idea when cross compiling. Simplest way -to disable this is to rename the variable as per the patch below, then its -harmless. This is a hack. - -RP 10/6/2010 - -Index: source/config/Makefile.inc.in -=================================================================== ---- source.orig/config/Makefile.inc.in 2010-06-10 21:49:19.000000000 +0100 -+++ source/config/Makefile.inc.in 2010-06-10 21:49:46.000000000 +0100 -@@ -126,7 +126,7 @@ - ################################################################## - # Environment variable to set a runtime search path - # (Overridden when necessary in -mh files) --LDLIBRARYPATH_ENVVAR = LD_LIBRARY_PATH -+LDLIBRARYPATH_ENVVAR = LD_LIBRARY_PATH2 - - # Versioned target for a shared library - FINAL_SO_TARGET = $(SO_TARGET).$(SO_TARGET_VERSION) -Index: source/icudefs.mk.in -=================================================================== ---- source.orig/icudefs.mk.in 2010-06-10 21:51:03.000000000 +0100 -+++ source/icudefs.mk.in 2010-06-10 21:51:09.000000000 +0100 -@@ -150,7 +150,7 @@ - SHLIB.cc= $(CXX) $(CXXFLAGS) $(LDFLAGS) -shared - - # Environment variable to set a runtime search path --LDLIBRARYPATH_ENVVAR = LD_LIBRARY_PATH -+LDLIBRARYPATH_ENVVAR = LD_LIBRARY_PATH2 - - # Versioned target for a shared library. - FINAL_SO_TARGET = $(SO_TARGET).$(SO_TARGET_VERSION) -Index: source/tools/genrb/gendtjar.pl -=================================================================== ---- source.orig/tools/genrb/gendtjar.pl 2010-06-10 21:51:36.000000000 +0100 -+++ source/tools/genrb/gendtjar.pl 2010-06-10 21:52:03.000000000 +0100 -@@ -68,8 +68,8 @@ - $icuLibDir = abs_path($icuBinDir."/../lib"); - $path .=":$icuBinDir:$icuLibDir"; - -- $libpath = $ENV{'LD_LIBRARY_PATH'}.":$icuLibDir"; -- $ENV{'LD_LIBRARY_PATH'} = $libpath; -+ $libpath = $ENV{'LD_LIBRARY_PATH2'}.":$icuLibDir"; -+ $ENV{'LD_LIBRARY_PATH2'} = $libpath; - - #print ("##### LD_LIBRARY_PATH = $ENV{'LD_LIBRARY_PATH'}\n"); - diff --git a/meta/packages/icu/files/use-g++-for-linking.patch b/meta/packages/icu/files/use-g++-for-linking.patch deleted file mode 100644 index 4702abc065..0000000000 --- a/meta/packages/icu/files/use-g++-for-linking.patch +++ /dev/null @@ -1,67 +0,0 @@ ---- - tools/genccode/Makefile.in | 2 +- - tools/gencmn/Makefile.in | 2 +- - tools/genrb/Makefile.in | 2 +- - tools/pkgdata/Makefile.in | 2 +- - 4 files changed, 4 insertions(+), 4 deletions(-) - ---- source.orig/tools/genccode/Makefile.in -+++ source/tools/genccode/Makefile.in -@@ -76,11 +76,11 @@ check-local: all-local - Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - cd $(top_builddir) \ - && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status - - $(TARGET) : $(OBJECTS) -- $(LINK.c) $(OUTOPT)$@ $^ $(LIBS) -+ $(LINK.cc) $(OUTOPT)$@ $^ $(LIBS) - - - %.$(SECTION): $(srcdir)/%.$(SECTION).in - cd $(top_builddir) \ - && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status ---- source.orig/tools/gencmn/Makefile.in -+++ source/tools/gencmn/Makefile.in -@@ -76,11 +76,11 @@ check-local: all-local - Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - cd $(top_builddir) \ - && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status - - $(TARGET) : $(OBJECTS) -- $(LINK.c) $(OUTOPT)$@ $^ $(LIBS) -+ $(LINK.cc) $(OUTOPT)$@ $^ $(LIBS) - - %.$(SECTION): $(srcdir)/%.$(SECTION).in - cd $(top_builddir) \ - && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status - ---- source.orig/tools/genrb/Makefile.in -+++ source/tools/genrb/Makefile.in -@@ -84,11 +84,11 @@ Makefile: $(srcdir)/Makefile.in $(top_b - - $(TARGET) : $(OBJECTS) - $(LINK.cc) $(OUTOPT)$@ $^ $(LIBS) - - $(DERB) : $(DERB_OBJ) -- $(LINK.c) $(OUTOPT)$@ $^ $(LIBS) -+ $(LINK.cc) $(OUTOPT)$@ $^ $(LIBS) - - - # This line is needed to serialize builds when the gmake -j option is used. - $(TARGET_STUB_NAME).$(SECTION): $(DERB_STUB_NAME).$(SECTION) - ---- source.orig/tools/pkgdata/Makefile.in -+++ source/tools/pkgdata/Makefile.in -@@ -81,11 +81,11 @@ check-local: all-local - Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - cd $(top_builddir) \ - && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status - - $(TARGET) : $(OBJECTS) -- $(LINK.c) $(OUTOPT)$@ $^ $(LIBS) -+ $(LINK.cc) $(OUTOPT)$@ $^ $(LIBS) - - - %.$(SECTION): $(srcdir)/%.$(SECTION).in - cd $(top_builddir) \ - && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status diff --git a/meta/packages/icu/icu-3.6.inc b/meta/packages/icu/icu-3.6.inc deleted file mode 100644 index 1c611bdf36..0000000000 --- a/meta/packages/icu/icu-3.6.inc +++ /dev/null @@ -1,55 +0,0 @@ -DESCRIPTION = "The International Component for Unicode (ICU) is a mature, portable set of C/C++ and Java libraries for Unicode support, software internationalization (I18N) and globalization (G11N), giving applications the same results on all platforms." -HOMEPAGE = "http://www-01.ibm.com/software/globalization/icu/index.jsp" - -BASE_SRC_URI = "ftp://ftp.software.ibm.com/software/globalization/icu/3.6/icu4c-3_6-src.tgz \ - file://gccfix.patch;apply=yes \ - file://use-g++-for-linking.patch;apply=yes" -SRC_URI = "${BASE_SRC_URI} \ - file://noldlibpath.patch;apply=yes" -SRC_URI_virtclass-native = "${BASE_SRC_URI}" - -LICENSE = "ICU" -LIC_FILES_CHKSUM = "file://../license.html;md5=5c94767cedb5d6987c902ac850ded2c6" -DEPENDS = "icu-native" -DEPENDS_virtclass-native = "" - -S = "${WORKDIR}/icu/source" - -PARALLEL_MAKE = "" -FULL_OPTIMIZATION_arm = "-Os" - -inherit autotools pkgconfig binconfig - -do_configure() { - libtoolize --force - gnu-configize --force - oe_runconf - if [ "${PN}" != "icu-native" ]; then - # In the non-native case we need to make substitutions to use - # the native versions of the tools - for i in */Makefile* */*.inc */*/Makefile* */*/*.inc */*/*.inc.in ; do - sed -i -e 's:$(INVOKE) $(BINDIR)/:$(INVOKE) :g' $i - sed -i -e 's:$(BINDIR)/::g' $i - done - fi -} - -do_compile() { - oe_runmake 'CXX=${CXX}' -} - -do_install_append() { - chmod +x ${D}${libdir}/lib* -} - -PACKAGES =+ "libicudata libicuuc libicui18n libicule libiculx libicutu libicuio" - -FILES_libicudata = "${libdir}/libicudata.so.*" -FILES_libicuuc = "${libdir}/libicuuc.so.*" -FILES_libicui18n = "${libdir}/libicui18n.so.*" -FILES_libicule = "${libdir}/libicule.so.*" -FILES_libiculx = "${libdir}/libiculx.so.*" -FILES_libicutu = "${libdir}/libicutu.so.*" -FILES_libicuio = "${libdir}/libicuio.so.*" - -BBCLASSEXTEND = "native" diff --git a/meta/packages/icu/icu_3.6.bb b/meta/packages/icu/icu_3.6.bb deleted file mode 100644 index 5042116009..0000000000 --- a/meta/packages/icu/icu_3.6.bb +++ /dev/null @@ -1,3 +0,0 @@ -require icu-3.6.inc - -PR = "r6" diff --git a/meta/packages/insserv/files/40_segfault_virtprov.dpatch b/meta/packages/insserv/files/40_segfault_virtprov.dpatch deleted file mode 100644 index 9b0081307a..0000000000 --- a/meta/packages/insserv/files/40_segfault_virtprov.dpatch +++ /dev/null @@ -1,89 +0,0 @@ -#! /bin/sh /usr/share/dpatch/dpatch-run -## 40_segfault_virtprov.dpatch by Petter Reinholdtsen - -Avoid segfault when an enabled service provide a virtual system -facility. - -@DPATCH@ ---- insserv/insserv.c -+++ insserv/insserv.c 2008-02-01 11:43:45.634618329 +0100 -@@ -166,7 +166,7 @@ typedef struct pwd_struct { - - static list_t pwd = { &(pwd), &(pwd) }, * topd = &(pwd); - --static void pushd(const char *const __restrict path); -+static void pushd(const char *const __restrict path) __attribute__((nonnull(1))); - static void pushd(const char *const path) - { - pwd_t * dir; -@@ -305,13 +305,13 @@ out: - return getserv(ptr); - } - --static serv_t * findserv(const char *const __restrict serv) __attribute__((nonnull(1))); -+static serv_t * findserv(const char *const __restrict serv); - static serv_t * findserv(const char *const serv) - { - list_t * ptr; - serv_t * ret = (serv_t*)0; - -- if (!serv) -+ if (serv == (const char*)0) - goto out; - - list_for_each(ptr, serv_start) { -@@ -334,6 +334,9 @@ static void rememberreq(serv_t *serv, ui - list_t * ptr; - uint old = bit; - -+ if (!tmp) -+ error("%s", strerror(errno)); -+ - while ((token = strsep(&tmp, delimeter))) { - boolean found = false; - req_t * this; -@@ -399,6 +402,9 @@ static void reversereq(const serv_t * se - char * rev = strdupa(list); - uint old = bit; - -+ if (!rev) -+ error("%s", strerror(errno)); -+ - while ((dep = strsep(&rev, delimeter)) && *dep) { - serv_t * tmp; - list_t * ptr; -@@ -437,7 +443,7 @@ static void reversereq(const serv_t * se - /* - * Check required services for name - */ --static boolean chkrequired(const char *const __restrict name) __attribute__((nonnull(1))); -+static boolean chkrequired(const char *const __restrict name); - static boolean chkrequired(const char *const name) - { - serv_t * serv = findserv(name); ---- insserv/listing.h -+++ insserv/listing.h 2008-02-01 11:40:45.347748072 +0100 -@@ -97,11 +97,11 @@ extern int makeprov(const char *__restri - extern void setorder(const char *__restrict script, const int order, boolean recursive) __attribute__((nonnull(1))); - extern int getorder(const char *__restrict script) __attribute__((nonnull(1))); - extern boolean notincluded(const char *__restrict script, const int runlevel) __attribute__((nonnull(1))); --extern boolean foreach(const char **__restrict script, int *__restrict order, const int runlevel) __attribute__((nonnull(1,2))); --extern void virtprov(const char *__restrict virt, const char *__restrict real) __attribute__((nonnull(1,2))); -+extern boolean foreach(const char **__restrict script, int *__restrict order, const int runlevel) __attribute__((nonnull(2))); -+extern void virtprov(const char *__restrict virt, const char *__restrict real) __attribute__((nonnull(1))); - extern const char * getscript(const char *__restrict prov) __attribute__((nonnull(1))); - extern const char * getprovides(const char *__restrict script) __attribute__((nonnull(1))); --extern boolean listscripts(const char **__restrict script, const int lvl) __attribute__((nonnull(1))); -+extern boolean listscripts(const char **__restrict script, const int lvl); - extern int maxorder; - extern boolean is_loop_detected(void); - -@@ -116,7 +116,7 @@ extern int map_has_runlevels(void); - extern int map_runlevel_to_lvl (const int runlevel); - extern int map_key_to_lvl(const char key); - --static inline char * xstrdup(const char *__restrict s) __attribute__((always_inline,nonnull(1))); -+static inline char * xstrdup(const char *__restrict s) __attribute__((always_inline)); - static inline char * xstrdup(const char * s) - { - char * r; diff --git a/meta/packages/insserv/files/42_loopnochangemsg.dpatch b/meta/packages/insserv/files/42_loopnochangemsg.dpatch deleted file mode 100644 index 4a15f58312..0000000000 --- a/meta/packages/insserv/files/42_loopnochangemsg.dpatch +++ /dev/null @@ -1,20 +0,0 @@ -#! /bin/sh /usr/share/dpatch/dpatch-run -## 40_loopnochangemsg.dpatch by Petter Reinholdtsen - -Make it more obvious that introducing a loop will not change the -existing boot sequence. Thanks to Frans Pop for the rationale for -this change. - -@DPATCH@ - ---- insserv-1.11.0.orig/insserv.c -+++ insserv-1.11.0/insserv.c -@@ -2647,7 +2647,7 @@ - follow_all(); - - if (is_loop_detected() && !ignore) -- error("exiting now!\n"); -+ error("exiting without changing boot order!\n"); - - /* - * Re-order some well known scripts to get diff --git a/meta/packages/insserv/files/crosscompile_fix.patch b/meta/packages/insserv/files/crosscompile_fix.patch deleted file mode 100644 index 14d8db468f..0000000000 --- a/meta/packages/insserv/files/crosscompile_fix.patch +++ /dev/null @@ -1,22 +0,0 @@ -Index: insserv-1.11.0/Makefile -=================================================================== ---- insserv-1.11.0.orig/Makefile 2008-08-25 16:00:00.000000000 +0100 -+++ insserv-1.11.0/Makefile 2008-08-25 16:00:25.000000000 +0100 -@@ -18,16 +18,7 @@ - # - # Architecture - # --ifdef RPM_OPT_FLAGS -- COPTS = -g $(RPM_OPT_FLAGS) --else -- ARCH = $(shell uname -i) --ifeq ($(ARCH),i386) -- COPTS = -O2 -mcpu=i586 -mtune=i686 --else -- COPTS = -O2 --endif --endif -+COPTS = -O2 - COPTS += -g - - MY_CFLAGS = $(CFLAGS) -Wall $(COPTS) $(DEBUG) $(LOOPS) -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 \ diff --git a/meta/packages/insserv/files/insserv.conf b/meta/packages/insserv/files/insserv.conf deleted file mode 100644 index 4858f85b69..0000000000 --- a/meta/packages/insserv/files/insserv.conf +++ /dev/null @@ -1,41 +0,0 @@ -# -# All local filesystems are mounted (done during boot phase) -# -$local_fs mountall - -# -# Low level networking (ethernet card) -# -$network networking +pcmcia +hotplug - -# -# Named is operational -# -$named +named +dnsmasq +lwresd $network - -# -# All remote filesystems are mounted (note in some cases /usr may -# be remote. Most applications that care will probably require -# both $local_fs and $remote_fs) -# -$remote_fs $local_fs +mountnfs - -# -# System logger is operational -# -$syslog sysklogd - -# -# SunRPC portmapper available -# -$portmap portmap - -# -# The system time has been set correctly -# -$time hwclock - -# -# Services which need to be interactive -# - hostname udev diff --git a/meta/packages/insserv/files/make.patch b/meta/packages/insserv/files/make.patch deleted file mode 100644 index bb3b51a8ca..0000000000 --- a/meta/packages/insserv/files/make.patch +++ /dev/null @@ -1,58 +0,0 @@ -=== modified file 'Makefile' ---- old/Makefile 2008-06-24 14:49:47 +0000 -+++ new/Makefile 2008-06-24 15:56:15 +0000 -@@ -7,10 +7,10 @@ - INITDIR = /etc/init.d - INSCONF = /etc/insserv.conf - #DESTDIR = /tmp/root --#DEBUG = -DDEBUG=1 -Wpacked -+DEBUG = -DDEBUG=1 -Wpacked - #LOOPS = -DIGNORE_LOOPS=1 - DEBUG = --ISSUSE = -DSUSE -+#ISSUSE = -DSUSE - DESTDIR = - VERSION = 1.11.0 - DATE = $(shell date +'%d%b%y' | tr '[:lower:]' '[:upper:]') -@@ -28,7 +28,9 @@ - COPTS = -O2 - endif - endif -- CFLAGS = -Wall $(COPTS) $(DEBUG) $(LOOPS) -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 \ -+COPTS += -g -+ -+ MY_CFLAGS = $(CFLAGS) -Wall $(COPTS) $(DEBUG) $(LOOPS) -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 \ - $(ISSUSE) -DINITDIR=\"$(INITDIR)\" -DINSCONF=\"$(INSCONF)\" -pipe - CLOOP = -falign-loops=0 - CC = gcc -@@ -58,13 +60,13 @@ - all: $(TODO) - - listing.o: listing.c listing.h .system -- $(CC) $(CFLAGS) $(CLOOP) -c $< -+ $(CC) $(MY_CFLAGS) $(CLOOP) -c $< - - insserv.o: insserv.c listing.h .system -- $(CC) $(CFLAGS) $(CLOOP) -c $< -+ $(CC) $(MY_CFLAGS) $(CLOOP) -c $< - - insserv: insserv.o listing.o -- $(CC) $(CFLAGS) -Wl,-O,3,--relax -o $@ $^ -+ $(CC) $(MY_CFLAGS) -Wl,-O,3,--relax -o $@ $^ - - ifeq ($(ISSUSE),-DSUSE) - insserv.8: insserv.8.in .system -@@ -86,10 +88,10 @@ - -include .depend.listing .depend.insserv - - .depend.listing: -- @$(CC) $(CFLAGS) -M listing.c >$@ 2>/dev/null -+ @$(CC) $(MY_CFLAGS) -M listing.c >$@ 2>/dev/null - - .depend.insserv: -- @$(CC) $(CFLAGS) -M insserv.c >$@ 2>/dev/null -+ @$(CC) $(MY_CFLAGS) -M insserv.c >$@ 2>/dev/null - - install: $(TODO) - $(MKDIR) $(SBINDIR) - diff --git a/meta/packages/insserv/insserv_1.11.0.bb b/meta/packages/insserv/insserv_1.11.0.bb deleted file mode 100644 index a45ccda48f..0000000000 --- a/meta/packages/insserv/insserv_1.11.0.bb +++ /dev/null @@ -1,17 +0,0 @@ -LICENSE = "GPL" -SECTION = "base" -PR = "r1" - -SRC_URI = "ftp://ftp.suse.com/pub/projects/init/${BPN}-${PV}.tar.gz \ - file://40_segfault_virtprov.dpatch;patch=1 \ - file://42_loopnochangemsg.dpatch;patch=1 \ - file://make.patch;patch=1 \ - file://crosscompile_fix.patch;patch=1 \ - file://insserv.conf" - -do_install () { - oe_runmake 'DESTDIR=${D}' install - install -m0644 ${WORKDIR}/insserv.conf ${D}${sysconfdir}/insserv.conf -} - -BBCLASSEXTEND = "native" diff --git a/meta/packages/intltool/intltool-0.40.6/intltool-nowarn-0.40.0.patch b/meta/packages/intltool/intltool-0.40.6/intltool-nowarn-0.40.0.patch deleted file mode 100644 index 61ecba266e..0000000000 --- a/meta/packages/intltool/intltool-0.40.6/intltool-nowarn-0.40.0.patch +++ /dev/null @@ -1,50 +0,0 @@ -Index: intltool-0.40.0/intltool-extract.in -=================================================================== ---- intltool-0.40.0.orig/intltool-extract.in 2008-12-17 11:50:19.000000000 +0000 -+++ intltool-0.40.0/intltool-extract.in 2008-12-17 11:50:31.000000000 +0000 -@@ -1,4 +1,4 @@ --#!@INTLTOOL_PERL@ -w -+#!@INTLTOOL_PERL@ - # -*- Mode: perl; indent-tabs-mode: nil; c-basic-offset: 4 -*- - - # -Index: intltool-0.40.0/intltool-merge.in -=================================================================== ---- intltool-0.40.0.orig/intltool-merge.in 2008-12-17 11:50:19.000000000 +0000 -+++ intltool-0.40.0/intltool-merge.in 2008-12-17 11:50:38.000000000 +0000 -@@ -1,4 +1,4 @@ --#!@INTLTOOL_PERL@ -w -+#!@INTLTOOL_PERL@ - # -*- Mode: perl; indent-tabs-mode: nil; c-basic-offset: 4 -*- - - # -Index: intltool-0.40.0/intltool-prepare.in -=================================================================== ---- intltool-0.40.0.orig/intltool-prepare.in 2008-12-17 11:50:19.000000000 +0000 -+++ intltool-0.40.0/intltool-prepare.in 2008-12-17 11:50:42.000000000 +0000 -@@ -1,4 +1,4 @@ --#!@INTLTOOL_PERL@ -w -+#!@INTLTOOL_PERL@ - # -*- Mode: perl; indent-tabs-mode: nil; c-basic-offset: 4 -*- - - # Intltool .desktop, .directory Prepare Tool -Index: intltool-0.40.0/intltool-unicodify.in -=================================================================== ---- intltool-0.40.0.orig/intltool-unicodify.in 2008-12-17 11:50:19.000000000 +0000 -+++ intltool-0.40.0/intltool-unicodify.in 2008-12-17 11:50:46.000000000 +0000 -@@ -1,4 +1,4 @@ --#!@INTLTOOL_PERL@ -w -+#!@INTLTOOL_PERL@ - - # - # The i18n Unicode Encoding Utility -Index: intltool-0.40.0/intltool-update.in -=================================================================== ---- intltool-0.40.0.orig/intltool-update.in 2008-12-17 11:50:19.000000000 +0000 -+++ intltool-0.40.0/intltool-update.in 2008-12-17 11:50:49.000000000 +0000 -@@ -1,4 +1,4 @@ --#!@INTLTOOL_PERL@ -w -+#!@INTLTOOL_PERL@ - # -*- Mode: perl; indent-tabs-mode: nil; c-basic-offset: 4 -*- - - # diff --git a/meta/packages/intltool/intltool.inc b/meta/packages/intltool/intltool.inc deleted file mode 100644 index f9bdf93b7b..0000000000 --- a/meta/packages/intltool/intltool.inc +++ /dev/null @@ -1,17 +0,0 @@ -DESCRIPTION = "Utility scripts for internationalizing XML" -PRIORITY = "optional" -SECTION = "devel" -LICENSE = "GPL" - -URLV="${@'.'.join(bb.data.getVar('PV',d,1).split('.')[0:2])}" -SRC_URI = "${GNOME_MIRROR}/intltool/${URLV}/intltool-${PV}.tar.bz2" -S = "${WORKDIR}/intltool-${PV}" - -DEPENDS = "libxml-parser-perl-native" -#RDEPENDS = "libxml-parser-perl" -RRECOMMENDS = "perl-modules" - -inherit autotools pkgconfig - -export PERL_virtclass-native = "/usr/bin/env perl" -BBCLASSEXTEND = "native" diff --git a/meta/packages/intltool/intltool_0.40.6.bb b/meta/packages/intltool/intltool_0.40.6.bb deleted file mode 100644 index 1f23a41f89..0000000000 --- a/meta/packages/intltool/intltool_0.40.6.bb +++ /dev/null @@ -1,5 +0,0 @@ -require intltool.inc - -PR = "r0" - -SRC_URI_append = " file://intltool-nowarn-0.40.0.patch" diff --git a/meta/packages/iproute2/iproute2-2.6.34/configure-cross.patch b/meta/packages/iproute2/iproute2-2.6.34/configure-cross.patch deleted file mode 100644 index 67dc6f5a30..0000000000 --- a/meta/packages/iproute2/iproute2-2.6.34/configure-cross.patch +++ /dev/null @@ -1,61 +0,0 @@ -# borrow from OE, to handle cross compile mess -# -# ktian1, 06/28/2010 -Index: iproute2-2.6.34/configure -=================================================================== ---- iproute2-2.6.34.orig/configure -+++ iproute2-2.6.34/configure -@@ -4,7 +4,7 @@ - INCLUDE=${1:-"$PWD/include"} - - TABLES= -- -+SYSROOT=$1 - check_atm() - { - cat >/tmp/atmtest.c </dev/null 2>&1 -+$CC -I$INCLUDE -o /tmp/atmtest /tmp/atmtest.c -latm >/dev/null 2>&1 - if [ $? -eq 0 ] - then - echo "TC_CONFIG_ATM:=y" >>Config -@@ -49,7 +49,7 @@ int main(int argc, char **argv) - - EOF - --if gcc -I$INCLUDE $IPTC -o /tmp/ipttest /tmp/ipttest.c $IPTL -ldl -lxtables >/dev/null 2>&1 -+if $CC -I$INCLUDE $IPTC -o /tmp/ipttest /tmp/ipttest.c $IPTL -ldl -lxtables >/dev/null 2>&1 - then - echo "TC_CONFIG_XT:=y" >>Config - echo "using xtables" -@@ -86,7 +86,7 @@ int main(int argc, char **argv) { - } - - EOF --gcc -I$INCLUDE $IPTC -o /tmp/ipttest /tmp/ipttest.c $IPTL -ldl >/dev/null 2>&1 -+$CC -I$INCLUDE $IPTC -o /tmp/ipttest /tmp/ipttest.c $IPTL -ldl >/dev/null 2>&1 - - if [ $? -eq 0 ] - then -@@ -126,7 +126,7 @@ int main(int argc, char **argv) { - } - - EOF --gcc -I$INCLUDE $IPTC -o /tmp/ipttest /tmp/ipttest.c $IPTL -ldl >/dev/null 2>&1 -+$CC -I$INCLUDE $IPTC -o /tmp/ipttest /tmp/ipttest.c $IPTL -ldl >/dev/null 2>&1 - - if [ $? -eq 0 ] - then -@@ -150,7 +150,7 @@ check_ipt() - check_ipt_lib_dir() - { - IPT_LIB_DIR="" -- for dir in /lib /usr/lib /usr/local/lib -+ for dir in $SYSROOT/lib $SYSROOT/usr/lib $SYSROOT/usr/local/lib - do - for file in $dir/$TABLES/lib*t_*so ; do - if [ -f $file ]; then diff --git a/meta/packages/iproute2/iproute2.inc b/meta/packages/iproute2/iproute2.inc deleted file mode 100644 index 7246b87e9b..0000000000 --- a/meta/packages/iproute2/iproute2.inc +++ /dev/null @@ -1,27 +0,0 @@ -DESCRIPTION = "kernel routing and traffic control utilities" -HOMEPAGE = "http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2" -SECTION = "base" -LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a \ - file://ip/ip.c;md5=186731afa4b42e30b9b37efa4ec90b93" -DEPENDS = "flex-native bison-native" - -inherit update-alternatives - -EXTRA_OEMAKE = "CC='${CC}' KERNEL_INCLUDE=${STAGING_KERNEL_DIR}/include DOCDIR=${docdir}/iproute2 SUBDIRS='lib tc ip' SBINDIR=/sbin" - -do_install () { - oe_runmake DESTDIR=${D} install - mv ${D}${base_sbindir}/ip ${D}${base_sbindir}/ip.iproute2 - install -d ${D}${datadir} - mv ${D}/share/* ${D}${datadir}/ || true - rm ${D}/share -rf || true -} - -FILES_${PN} += "/usr/lib/tc/*" -FILES_${PN}-dbg += "/usr/lib/tc/.debug" - -ALTERNATIVE_NAME = "ip" -ALTERNATIVE_PATH = "${base_sbindir}/ip.iproute2" -ALTERNATIVE_LINK = "${base_bindir}/ip" -ALTERNATIVE_PRIORITY = "100" diff --git a/meta/packages/iproute2/iproute2_2.6.34.bb b/meta/packages/iproute2/iproute2_2.6.34.bb deleted file mode 100644 index c5e0ef6e56..0000000000 --- a/meta/packages/iproute2/iproute2_2.6.34.bb +++ /dev/null @@ -1,6 +0,0 @@ -require iproute2.inc - -PR = "r0" - -SRC_URI = "http://developer.osdl.org/dev/iproute2/download/${P}.tar.bz2 \ - file://configure-cross.patch" diff --git a/meta/packages/iso-codes/iso-codes_3.3.bb b/meta/packages/iso-codes/iso-codes_3.3.bb deleted file mode 100644 index 23d025f4d2..0000000000 --- a/meta/packages/iso-codes/iso-codes_3.3.bb +++ /dev/null @@ -1,14 +0,0 @@ -SECTION = "libs" -DESCRIPTION = "ISO language, territory, currency, script codes and their translations" -PRIORITY = "optional" -LICENSE = "LGPL" -SECTION = "libs" -PACKAGE_ARCH = "all" - -SRC_URI = "ftp://pkg-isocodes.alioth.debian.org/pub/pkg-isocodes/iso-codes-${PV}.tar.gz" - -inherit autotools - -FILES_${PN}-dev="${datadir}/pkgconfig/iso-codes.pc" -FILES_${PN}="${datadir}/xml/iso-codes/ \ - ${datadir}/iso-codes/" diff --git a/meta/packages/js/files/buildcc.patch b/meta/packages/js/files/buildcc.patch deleted file mode 100644 index 26eef218d6..0000000000 --- a/meta/packages/js/files/buildcc.patch +++ /dev/null @@ -1,20 +0,0 @@ -jskwgen should be built by BUILD_CC in cross environment - -7/23/2010 - created by Qing He - -diff -uNr js.orig//src/Makefile.ref js/src/Makefile.ref ---- js.orig//src/Makefile.ref 2009-02-25 21:24:29.000000000 +0800 -+++ js/src/Makefile.ref 2010-07-23 13:26:51.000000000 +0800 -@@ -303,10 +303,10 @@ - - $(OBJDIR)/jskwgen.o: jskwgen.c jskeyword.tbl - @$(MAKE_OBJDIR) -- $(CC) -o $@ -c $(CFLAGS) $< -+ $(BUILD_CC) -o $@ -c $(BUILD_CFLAGS) $< - - $(OBJDIR)/jskwgen$(HOST_BIN_SUFFIX): $(OBJDIR)/jskwgen.$(OBJ_SUFFIX) -- $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $^ -+ $(BUILD_CC) -o $@ $(BUILD_CFLAGS) $(BUILD_LDFLAGS) $^ - - endif - diff --git a/meta/packages/js/files/configure.ac b/meta/packages/js/files/configure.ac deleted file mode 100644 index 41af298455..0000000000 --- a/meta/packages/js/files/configure.ac +++ /dev/null @@ -1,28 +0,0 @@ -AC_INIT - -AC_CHECK_SIZEOF([char]) -AC_CHECK_SIZEOF([short]) -AC_CHECK_SIZEOF([int]) -AC_CHECK_SIZEOF([int64_t]) -AC_CHECK_SIZEOF([long]) -AC_CHECK_SIZEOF([long long]) -AC_CHECK_SIZEOF([int *]) -AC_CHECK_SIZEOF([float]) -AC_CHECK_SIZEOF([double]) - -AC_CHECK_ALIGNOF([char]) -AC_CHECK_ALIGNOF([short]) -AC_CHECK_ALIGNOF([int]) -AC_CHECK_ALIGNOF([int64_t]) -AC_CHECK_ALIGNOF([long]) -AC_CHECK_ALIGNOF([long long]) -AC_CHECK_ALIGNOF([int *]) -AC_CHECK_ALIGNOF([float]) -AC_CHECK_ALIGNOF([double]) - -AC_C_BIGENDIAN - -AC_TYPE_LONG_LONG_INT - -AC_CONFIG_HEADER([conf.h]) -AC_OUTPUT diff --git a/meta/packages/js/files/jsautocfg.h b/meta/packages/js/files/jsautocfg.h deleted file mode 100644 index 16e38bf8d6..0000000000 --- a/meta/packages/js/files/jsautocfg.h +++ /dev/null @@ -1,74 +0,0 @@ -#ifndef js_cpucfg___ -#define js_cpucfg___ - -/* AUTOMATICALLY GENERATED - DO NOT EDIT */ - -#include "../conf.h" - -#ifdef WORDS_BIGENDIAN -# undef IS_LITTLE_ENDIAN -# define IS_BIG_ENDIAN 1 -#else -# define IS_LITTLE_ENDIAN 1 -# undef IS_BIG_ENDIAN -#endif - -#define __I_LOG2(n) ( \ - ((n) == 1)? 0: \ - ((n) == 2)? 1: \ - ((n) == 4)? 2: \ - ((n) == 8)? 3: \ - ((n) == 16)? 4: \ - ((n) == 32)? 5: \ - ((n) == 64)? 6: \ - ((n) == 128)? 7: \ - -1) - -#define JS_BYTES_PER_BYTE SIZEOF_CHAR -#define JS_BYTES_PER_SHORT SIZEOF_SHORT -#define JS_BYTES_PER_INT SIZEOF_INT -#define JS_BYTES_PER_INT64 SIZEOF_INT64_T -#define JS_BYTES_PER_LONG SIZEOF_LONG -#define JS_BYTES_PER_FLOAT SIZEOF_FLOAT -#define JS_BYTES_PER_DOUBLE SIZEOF_DOUBLE -#define JS_BYTES_PER_WORD SIZEOF_LONG -#define JS_BYTES_PER_DWORD SIZEOF_LONG_LONG - -#define JS_BITS_PER_BYTE 8L -#define JS_BITS_PER_SHORT (JS_BITS_PER_BYTE * JS_BYTES_PER_SHORT) -#define JS_BITS_PER_INT (JS_BITS_PER_BYTE * JS_BYTES_PER_INT) -#define JS_BITS_PER_INT64 (JS_BITS_PER_BYTE * JS_BYTES_PER_INT64) -#define JS_BITS_PER_LONG (JS_BITS_PER_BYTE * JS_BYTES_PER_LONG) -#define JS_BITS_PER_FLOAT (JS_BITS_PER_BYTE * JS_BYTES_PER_GLOAT) -#define JS_BITS_PER_DOUBLE (JS_BITS_PER_BYTE * JS_BYTES_PER_DOUBLE) -#define JS_BITS_PER_WORD (JS_BITS_PER_BYTE * JS_BYTES_PER_WORD) - -#define JS_BITS_PER_BYTE_LOG2 __I_LOG2(JS_BITS_PER_BYTE) -#define JS_BITS_PER_SHORT_LOG2 __I_LOG2(JS_BITS_PER_BYTE) -#define JS_BITS_PER_INT_LOG2 __I_LOG2(JS_BITS_PER_BYTE) -#define JS_BITS_PER_INT64_LOG2 __I_LOG2(JS_BITS_PER_BYTE) -#define JS_BITS_PER_LONG_LOG2 __I_LOG2(JS_BITS_PER_BYTE) -#define JS_BITS_PER_FLOAT_LOG2 __I_LOG2(JS_BITS_PER_BYTE) -#define JS_BITS_PER_DOUBLE_LOG2 __I_LOG2(JS_BITS_PER_BYTE) -#define JS_BITS_PER_WORD_LOG2 __I_LOG2(JS_BITS_PER_BYTE) - -#define JS_ALIGN_OF_SHORT ALIGNOF_SHORT -#define JS_ALIGN_OF_INT ALIGNOF_INT -#define JS_ALIGN_OF_LONG ALIGNOF_LONG -#define JS_ALIGN_OF_INT64 ALIGNOF_INT64_T -#define JS_ALIGN_OF_FLOAT ALIGNOF_FLOAT -#define JS_ALIGN_OF_DOUBLE ALIGNOF_DOUBLE -#define JS_ALIGN_OF_POINTER ALIGNOF_INT_P -#define JS_ALIGN_OF_WORD ALIGNOF_LONG - -#define JS_BYTES_PER_WORD_LOG2 __I_LOG2(JS_BYTES_PER_WORD) -#define JS_BYTES_PER_DWORD_LOG2 __I_LOG2(JS_BYTES_PER_DWORDS) -#define JS_WORDS_PER_DWORD_LOG2 __I_LOG2(JS_BYTES_PER_DWORDS / JS_BYTES_PER_WORD) - -#define JS_STACK_GROWTH_DIRECTION (-1) - -#ifdef HAVE_LONG_LONG_INT -# define JS_HAVE_LONG_LONG -#endif - -#endif /* js_cpucfg___ */ diff --git a/meta/packages/js/files/link_with_gcc.patch b/meta/packages/js/files/link_with_gcc.patch deleted file mode 100644 index d74b94f378..0000000000 --- a/meta/packages/js/files/link_with_gcc.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: src/config/Linux_All.mk -=================================================================== ---- src.orig/config/Linux_All.mk 2005-05-10 19:53:44.000000000 +0000 -+++ src/config/Linux_All.mk 2007-06-18 17:20:05.000000000 +0000 -@@ -47,7 +47,7 @@ - OS_CFLAGS = -DXP_UNIX -DSVR4 -DSYSV -D_BSD_SOURCE -DPOSIX_SOURCE -DHAVE_LOCALTIME_R - - RANLIB = echo --MKSHLIB = $(LD) -shared $(XMKSHLIBOPTS) -+MKSHLIB = $(CC) -shared $(XMKSHLIBOPTS) - - #.c.o: - # $(CC) -c -MD $*.d $(CFLAGS) $< diff --git a/meta/packages/js/files/usepic.patch b/meta/packages/js/files/usepic.patch deleted file mode 100644 index ddd31be9cb..0000000000 --- a/meta/packages/js/files/usepic.patch +++ /dev/null @@ -1,24 +0,0 @@ -Mips needs -fPIC to compile properly. These tests are broken anyway as they test -the build system architecture, not the target. This is a hack. - -RP 10/6/2010 - -Index: src/config/Linux_All.mk -=================================================================== ---- src.orig/config/Linux_All.mk 2010-06-10 22:09:43.000000000 +0100 -+++ src/config/Linux_All.mk 2010-06-10 22:09:55.000000000 +0100 -@@ -90,14 +90,10 @@ - # Use the editline library to provide line-editing support. - JS_EDITLINE = 1 - --ifeq ($(CPU_ARCH),x86_64) - # Use VA_COPY() standard macro on x86-64 - # FIXME: better use it everywhere - OS_CFLAGS += -DHAVE_VA_COPY -DVA_COPY=va_copy --endif - --ifeq ($(CPU_ARCH),x86_64) - # We need PIC code for shared libraries - # FIXME: better patch rules.mk & fdlibm/Makefile* - OS_CFLAGS += -DPIC -fPIC --endif diff --git a/meta/packages/js/js_1.7.0+1.8.0rc1.bb b/meta/packages/js/js_1.7.0+1.8.0rc1.bb deleted file mode 100644 index 97cba90d03..0000000000 --- a/meta/packages/js/js_1.7.0+1.8.0rc1.bb +++ /dev/null @@ -1,47 +0,0 @@ -DESCRIPTION = "Spidermonkey: a javascript engine written in C" -HOMEPAGE = "http://www.mozilla.org/js/spidermonkey/" -SECTION = "libs" - -# the package is licensed under either of the following -LICENSE = "MPL1.1 | GPLv2+ | LGPLv2.1+" -LIC_FILES_CHKSUM = "file://jsapi.c;beginline=4;endline=39;md5=347c6bbf4fb4547de1fa5ad830030063" -PR = "r1" - -SRC_URI = "http://ftp.mozilla.org/pub/mozilla.org/js/js-1.8.0-rc1.tar.gz \ - file://link_with_gcc.patch \ - file://usepic.patch \ - file://buildcc.patch;striplevel=2 \ - file://jsautocfg.h \ - file://configure.ac" - -S = "${WORKDIR}/js/src" - -# use local autoconf script to generate a usable jsautocfg.h -# don't bother with automake -inherit autotools - -do_configure_prepend() { - cp -f ${WORKDIR}/configure.ac ${S} - cp -f ${WORKDIR}/jsautocfg.h ${S} -} - -EXTRA_OEMAKE = "'CC=${CC}' 'LD=${LD}' 'XCFLAGS=${CFLAGS}' 'XLDFLAGS=${LDFLAGS} -Wl,-soname=libjs' \ - 'BUILD_CC=${BUILD_CC}' 'BUILD_CFLAGS=${BUILD_CFLAGS}' 'BUILD_LDFLAGS=${BUILD_LDFLAGS}'" - -PARALLEL_MAKE = "" - -do_compile() { - oe_runmake -f Makefile.ref JS_EDITLINE=1 PREBUILT_CPUCFG=1 BUILD_OPT=1 -} - -do_install() { - install -d ${D}${libdir} - install -d ${D}${includedir} - install -d ${D}${includedir}/js - oe_libinstall -so -C Linux_All_OPT.OBJ libjs ${D}${libdir} - install -m 0644 ${S}/*.h ${D}${includedir}/js -} - -FILES_${PN} = "${libdir}/lib*.so" -FILES_${PN}-dev = "${includedir} ${libdir}/lib*.a" - diff --git a/meta/packages/libassuan/libassuan_2.0.0.bb b/meta/packages/libassuan/libassuan_2.0.0.bb deleted file mode 100644 index 11934013ce..0000000000 --- a/meta/packages/libassuan/libassuan_2.0.0.bb +++ /dev/null @@ -1,15 +0,0 @@ -DESCRIPTION = "IPC library used by GnuPG and GPGME" -HOMEPAGE = "http://www.gnupg.org/related_software/libassuan/" -BUGTRACKER = "https://bugs.g10code.com/gnupg/index" - -LICENSE = "GPLv3 & LGPLv2.1+" -LIC_FILES_CHKSUM = "file://COPYING;md5=f27defe1e96c2e1ecd4e0c9be8967949 \ - file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \ - file://src/assuan.h;endline=20;md5=8a6f091b9d114f0e06aa91cb3460154c \ - file://src/assuan-defs.h;endline=20;md5=c51ca5e56b000d79d500eee7cd8dc2e5" - -DEPENDS = "libgpg-error" - -SRC_URI = "ftp://ftp.gnupg.org/gcrypt/libassuan/libassuan-${PV}.tar.bz2" - -inherit autotools binconfig diff --git a/meta/packages/libcap/libcap.inc b/meta/packages/libcap/libcap.inc deleted file mode 100644 index 16eaae690c..0000000000 --- a/meta/packages/libcap/libcap.inc +++ /dev/null @@ -1,34 +0,0 @@ -DESCRIPTION = "support for getting/setting POSIX.1e capabilities" -HOMEPAGE = "http://sites.google.com/site/fullycapable/" - -# no specific GPL version required -LICENSE = "BSD | GPL" -LIC_FILES_CHKSUM = "file://License;md5=731de803c1ccbcb05a9b3523279c8d7f" - -DEPENDS = "libpam attr perl-native" - -SRC_URI = "${KERNELORG_MIRROR}/pub/linux/libs/security/linux-privs/libcap2/${BPN}-${PV}.tar.bz2" - -inherit lib_package - -do_configure() { - # libcap uses := for compilers, fortunately, it gives us a hint - # on what should be replaced with ?= - sed -e 's,:=,?=,g' -i Make.Rules - sed -e 's,BUILD_CFLAGS ?=,BUILD_CFLAGS := $(BUILD_CFLAGS),' -i Make.Rules -} - -EXTRA_OEMAKE = "LIBATTR=yes PAM_CAP=yes INDENT= lib=lib" -EXTRA_OEMAKE_virtclass-native = "LIBATTR=no PAM_CAP=no INDENT= lib=lib" - -do_compile() { - oe_runmake -} - -do_install() { - oe_runmake install DESTDIR="${D}" -} - -# pam files -FILES_${PN} += "${libdir}/security/*.so" -FILES_${PN}-dbg += "${libdir}/security/.debug/*.so" diff --git a/meta/packages/libcap/libcap_2.19.bb b/meta/packages/libcap/libcap_2.19.bb deleted file mode 100644 index eb861535e9..0000000000 --- a/meta/packages/libcap/libcap_2.19.bb +++ /dev/null @@ -1,3 +0,0 @@ -require libcap.inc - -PR = "r1" diff --git a/meta/packages/libcheck/libcheck_0.9.8.bb b/meta/packages/libcheck/libcheck_0.9.8.bb deleted file mode 100644 index 048b8ce622..0000000000 --- a/meta/packages/libcheck/libcheck_0.9.8.bb +++ /dev/null @@ -1,16 +0,0 @@ -DESCRIPTION = "Check Test Framework" -HOMEPAGE = "http://gitorious.org/opensuse/zypper" -PRIORITY = "optional" -SECTION = "devel" - -LICENSE = "LGPLv2.1+" -LIC_FILES_CHKSUM = "file://COPYING.LESSER;md5=2d5025d4aa3495befef8f17206a5b0a1" - -PR = "r0" - -SRC_URI = "${SOURCEFORGE_MIRROR}/check/check-${PV}.tar.gz" -S = "${WORKDIR}/check-${PV}" - -inherit autotools pkgconfig - -RREPLACES_${PN} = "check (<= 0.9.5)" diff --git a/meta/packages/libcroco/files/croco.patch b/meta/packages/libcroco/files/croco.patch deleted file mode 100644 index 572f9de59f..0000000000 --- a/meta/packages/libcroco/files/croco.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- opie/configure.in.old 2006-05-19 20:57:30.000000000 +0100 -+++ opie/configure.in 2006-05-19 20:57:56.000000000 +0100 -@@ -131,8 +131,8 @@ - dnl Define the CROCO_LIBS and CROCO_CFLAGS variables. These will be used - dnl by client application to know where to find croco include files and libs. - dnl --CROCO_LIBS="-L${libdir} -lcroco-$LIBCROCO_MAJOR_VERSION.$LIBCROCO_MINOR_VERSION" --CROCO_CFLAGS="-I${includedir}/libcroco-$LIBCROCO_MAJOR_VERSION.$LIBCROCO_MINOR_VERSION" -+CROCO_LIBS='-L${libdir}'" -lcroco-$LIBCROCO_MAJOR_VERSION.$LIBCROCO_MINOR_VERSION" -+CROCO_CFLAGS='-I${includedir}'"/libcroco-$LIBCROCO_MAJOR_VERSION.$LIBCROCO_MINOR_VERSION" - - AC_SUBST(LIBXML2_LIBS) - AC_SUBST(LIBXML2_CFLAGS) diff --git a/meta/packages/libcroco/libcroco_0.6.2.bb b/meta/packages/libcroco/libcroco_0.6.2.bb deleted file mode 100644 index 2ea33b155b..0000000000 --- a/meta/packages/libcroco/libcroco_0.6.2.bb +++ /dev/null @@ -1,16 +0,0 @@ -DESCRIPTION = "The Libcroco project is an effort to build a generic Cascading Style Sheet (CSS) parsing and manipulation toolkit" -HOMEPAGE = "http://www.gnome.org/" -BUGTRACKER = "https://bugzilla.gnome.org/" - -LICENSE = "LGPLv2 & LGPLv2.1" -LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605 \ - file://src/cr-rgb.c;endline=25;md5=1df8189094ba7bbed953225785032826 \ - file://tests/cr-test-utils.c;endline=21;md5=2382c27934cae1d3792fcb17a6142c4e" - -SECTION = "x11/utils" -DEPENDS = "glib-2.0 libxml2 zlib" -PR = "r0" - -inherit autotools pkgconfig gnome - -SRC_URI_append = " file://croco.patch;apply=yes " diff --git a/meta/packages/libdaemon/libdaemon_0.14.bb b/meta/packages/libdaemon/libdaemon_0.14.bb deleted file mode 100644 index b4092fdbb9..0000000000 --- a/meta/packages/libdaemon/libdaemon_0.14.bb +++ /dev/null @@ -1,14 +0,0 @@ -DESCRIPTION = "libdaemon is a lightweight C library which eases the writing of UNIX daemons." -SECTION = "libs" -AUTHOR = "Lennart Poettering " -HOMEPAGE = "http://0pointer.de/lennart/projects/libdaemon/" -LICENSE = "LGPLv2.1+" -LIC_FILES_CHKSUM = "file://LICENSE;md5=2d5025d4aa3495befef8f17206a5b0a1 \ - file://libdaemon/daemon.h;startline=9;endline=21;md5=94c709a83d8251377c322322176d4ffe" -PR = "r0" - -SRC_URI = "http://0pointer.de/lennart/projects/libdaemon/libdaemon-${PV}.tar.gz" - -inherit autotools pkgconfig - -EXTRA_OECONF = "--disable-lynx" diff --git a/meta/packages/libetpan/files/cxx-is-here.patch b/meta/packages/libetpan/files/cxx-is-here.patch deleted file mode 100644 index d910daab17..0000000000 --- a/meta/packages/libetpan/files/cxx-is-here.patch +++ /dev/null @@ -1,18 +0,0 @@ ---- - configure.ac | 1 + - 1 file changed, 1 insertion(+) - ---- libetpan-0.54.orig/configure.ac -+++ libetpan-0.54/configure.ac -@@ -104,10 +104,11 @@ if test "$have_w32_system" = yes; then - fi - AM_CONDITIONAL(HAVE_MINGW32_SYSTEM, test "$have_w32_system" = yes) - - # Check the C compiler. - AC_PROG_CC -+AC_PROG_CXX - - # Compiler flags. - AC_ARG_ENABLE(debug, [ --enable-debug setup flags (gcc) for debugging (default=no)], - if test "x$GCC" = xyes; then - CFLAGS="$CFLAGS -O2 -g" diff --git a/meta/packages/libetpan/libetpan_0.54.bb b/meta/packages/libetpan/libetpan_0.54.bb deleted file mode 100644 index 5666ea0ded..0000000000 --- a/meta/packages/libetpan/libetpan_0.54.bb +++ /dev/null @@ -1,19 +0,0 @@ -DESCRIPTION = "libetpan is a library for communicating with mail and news servers. \ -It supports the protocols SMTP, POP3, IMAP and NNTP." -HOMEPAGE = "http://www.etpan.org" -SECTION = "libs" -DEPENDS = "curl expat gnutls" -LICENSE = "BSD" -PR = "r1" - -SRC_URI = "${SOURCEFORGE_MIRROR}/libetpan/libetpan-${PV}.tar.gz \ - file://cxx-is-here.patch;patch=1" - -inherit autotools pkgconfig gettext binconfig - -EXTRA_OECONF = "--without-openssl --with-gnutls --disable-db" - -PARALLEL_MAKE = "" - -FILES_${PN} = "${libdir}/lib*.so.*" -FILES_${PN}-dev = "${bindir} ${includedir} ${libdir}/lib*.so ${libdir}/*.la ${libdir}/*.a ${libdir}/pkgconfig" diff --git a/meta/packages/libevent/libevent_1.4.14b.bb b/meta/packages/libevent/libevent_1.4.14b.bb deleted file mode 100644 index 4209305512..0000000000 --- a/meta/packages/libevent/libevent_1.4.14b.bb +++ /dev/null @@ -1,15 +0,0 @@ -DESCRIPTION = "an asynchronous event notification library" -HOMEPAGE = "http://www.monkey.org/~provos/libevent/" -SECTION = "libs" - -LICENSE = "BSD" -LIC_FILES_CHKSUM = "file://event.c;endline=26;md5=bc20aa63bf60c36c2d8edb77746f6b7c" - -PR = "r0" - -SRC_URI = "http://www.monkey.org/~provos/${BPN}-${PV}-stable.tar.gz" -S = "${WORKDIR}/${BPN}-${PV}-stable" - -inherit autotools - -LEAD_SONAME = "libevent-1.4.so" diff --git a/meta/packages/libffi/libffi_3.0.8.bb b/meta/packages/libffi/libffi_3.0.8.bb deleted file mode 100644 index 06106279b0..0000000000 --- a/meta/packages/libffi/libffi_3.0.8.bb +++ /dev/null @@ -1,5 +0,0 @@ -SRC_URI = "ftp://sourceware.org/pub/libffi/libffi-3.0.8.tar.gz" - -inherit autotools - -BBCLASSEXTEND = "native" \ No newline at end of file diff --git a/meta/packages/libfm/libfm_0.1.12.bb b/meta/packages/libfm/libfm_0.1.12.bb deleted file mode 100644 index 83e6af8523..0000000000 --- a/meta/packages/libfm/libfm_0.1.12.bb +++ /dev/null @@ -1,17 +0,0 @@ -DESCRIPTION = "Library for file management" -HOMEPAGE = "http://pcmanfm.sourceforge.net/" -BUGTRACKER = "" - -LICENSE = "GPLv2 & GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \ - file://src/fm.h;endline=22;md5=e64555171770a551e3b51cc06fc62f1a \ - file://src/base/fm-config.h;endline=23;md5=ad0fc418c3cf041eea35ddb3daf37f17" - -SECTION = "x11/libs" -DEPENDS = "gtk+ menu-cache intltool" - -PR = "r0" - -SRC_URI = "${SOURCEFORGE_MIRROR}/pcmanfm/libfm-${PV}.tar.gz" - -inherit autotools pkgconfig diff --git a/meta/packages/libfribidi/files/libtool-update.patch b/meta/packages/libfribidi/files/libtool-update.patch deleted file mode 100644 index c7031008fd..0000000000 --- a/meta/packages/libfribidi/files/libtool-update.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- fribidi-0.10.4/configure.in~ 2002-05-19 11:06:48.000000000 +0100 -+++ fribidi-0.10.4/configure.in 2004-08-03 17:42:28.000000000 +0100 -@@ -50,7 +50,7 @@ - AC_PROG_INSTALL - AC_PROG_LN_S - AC_PROG_MAKE_SET --AC_PROG_RANLIB -+#AC_PROG_RANLIB - AC_PATH_PROG(SED, sed, $PATH) - - diff --git a/meta/packages/libfribidi/libfribidi_0.10.4.bb b/meta/packages/libfribidi/libfribidi_0.10.4.bb deleted file mode 100644 index a9850fe52d..0000000000 --- a/meta/packages/libfribidi/libfribidi_0.10.4.bb +++ /dev/null @@ -1,23 +0,0 @@ -DESCRIPTION = "Fribidi library for bidirectional text" -SECTION = "libs" -PRIORITY = "optional" - -inherit autotools pkgconfig - -PR = "r0" - -S = "${WORKDIR}/fribidi-${PV}" - -SRC_URI = "${SOURCEFORGE_MIRROR}/fribidi/fribidi-${PV}.tar.bz2 \ - file://libtool-update.patch;patch=1" - -#PACKAGES += " ${PN}-bin" -FILES_${PN} = "${libdir}/lib*.so.*" -#FILES_${PN}-bin = "${libdir}/uu*" - -do_configure_prepend () { -# this version of libtool is old - we have to nobble this file to get it to litoolize - rm ltconfig - rm aclocal.m4 - rm acinclude.m4 -} diff --git a/meta/packages/libgcrypt/files/add-pkgconfig-support.patch b/meta/packages/libgcrypt/files/add-pkgconfig-support.patch deleted file mode 100644 index 24a59787a2..0000000000 --- a/meta/packages/libgcrypt/files/add-pkgconfig-support.patch +++ /dev/null @@ -1,49 +0,0 @@ -Index: libgcrypt-1.2.4/configure.ac -=================================================================== ---- libgcrypt-1.2.4.orig/configure.ac 2008-03-19 22:14:50.000000000 +0000 -+++ libgcrypt-1.2.4/configure.ac 2008-03-19 22:14:58.000000000 +0000 -@@ -807,6 +807,7 @@ - doc/Makefile - src/Makefile - src/gcrypt.h -+src/libgcrypt.pc - src/libgcrypt-config - tests/Makefile - w32-dll/Makefile -Index: libgcrypt-1.2.4/src/libgcrypt.pc.in -=================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ libgcrypt-1.2.4/src/libgcrypt.pc.in 2008-03-19 22:14:58.000000000 +0000 -@@ -0,0 +1,32 @@ -+# Process this file with autoconf to produce a pkg-config metadata file. -+# Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation -+# Author: Simon Josefsson -+# -+# This file is free software; as a special exception the author gives -+# unlimited permission to copy and/or distribute it, with or without -+# modifications, as long as this notice is preserved. -+# -+# This file is distributed in the hope that it will be useful, but -+# WITHOUT ANY WARRANTY, to the extent permitted by law; without even the -+# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -+ -+prefix=@prefix@ -+exec_prefix=@exec_prefix@ -+libdir=@libdir@ -+includedir=@includedir@ -+ -+# API info -+api_version=@LIBGCRYPT_CONFIG_API_VERSION@ -+ -+# Misc information. -+symmetric_ciphers=@LIBGCRYPT_CIPHERS@ -+asymmetric_ciphers=@LIBGCRYPT_PUBKEY_CIPHERS@ -+digests=@LIBGCRYPT_DIGESTS@ -+ -+Name: libgcrypt -+Description: GNU crypto library -+URL: http://www.gnupg.org -+Version: @VERSION@ -+Libs: -L${libdir} -lgcrypt -+Libs.private: -L${libdir} -lgpg-error -+Cflags: -I${includedir} diff --git a/meta/packages/libgcrypt/libgcrypt.inc b/meta/packages/libgcrypt/libgcrypt.inc deleted file mode 100644 index 08fe7992fa..0000000000 --- a/meta/packages/libgcrypt/libgcrypt.inc +++ /dev/null @@ -1,31 +0,0 @@ -DESCRIPTION = "A general purpose cryptographic library based on the code from GnuPG" -HOMEPAGE = "http://directory.fsf.org/project/libgcrypt/" -BUGTRACKER = "https://bugs.g10code.com/gnupg/index" -SECTION = "libs" -PRIORITY = "optional" - -# helper program gcryptrnd and getrandom are under GPL, rest LGPL -LICENSE = "GPLv2+ & LGPLv2.1+" -LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ - file://COPYING.LIB;md5=bbb461211a33b134d42ed5ee802b37ff" - -DEPENDS = "libgpg-error" - -SRC_URI = "ftp://ftp.gnupg.org/gcrypt/libgcrypt/libgcrypt-${PV}.tar.gz \ - file://add-pkgconfig-support.patch" - -inherit autotools binconfig pkgconfig - -EXTRA_OECONF = "--without-pth --disable-asm --with-capabilities" - -# libgcrypt.pc is added locally and thus installed here -do_install_append() { - install -d ${D}/${libdir}/pkgconfig - install -m 0644 ${S}/src/libgcrypt.pc ${D}/${libdir}/pkgconfig/ -} - -ARM_INSTRUCTION_SET = "arm" - -# move libgcrypt-config into -dev package -FILES_${PN} = "${libdir}/lib*.so.*" -FILES_${PN}-dev += "${bindir} ${libdir}/pkgconfig/*.pc" diff --git a/meta/packages/libgcrypt/libgcrypt_1.4.6.bb b/meta/packages/libgcrypt/libgcrypt_1.4.6.bb deleted file mode 100644 index a592437913..0000000000 --- a/meta/packages/libgcrypt/libgcrypt_1.4.6.bb +++ /dev/null @@ -1,3 +0,0 @@ -require libgcrypt.inc - -PR = "r0" diff --git a/meta/packages/libgdbus/libgdbus_git.bb b/meta/packages/libgdbus/libgdbus_git.bb deleted file mode 100644 index f0101f9925..0000000000 --- a/meta/packages/libgdbus/libgdbus_git.bb +++ /dev/null @@ -1,10 +0,0 @@ -HOMEPAGE = "http://www.moblin.org/projects/projects_connman.php" -SUMMARY = "Moblin Glib D-Bus integration" -LICENSE = "GPL LGPL" -DEPENDS = "glib-2.0 dbus" -PV = "0.0+git${SRCREV}" -S = "${WORKDIR}/git" - -SRC_URI = "git://git.kernel.org/pub/scm/bluetooth/libgdbus.git;protocol=git" - -inherit autotools pkgconfig diff --git a/meta/packages/libgpg-error/libgpg-error-1.8/pkgconfig.patch b/meta/packages/libgpg-error/libgpg-error-1.8/pkgconfig.patch deleted file mode 100644 index 49e47d874e..0000000000 --- a/meta/packages/libgpg-error/libgpg-error-1.8/pkgconfig.patch +++ /dev/null @@ -1,53 +0,0 @@ - -# -# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher -# - -Index: libgpg-error-1.8/configure.ac -=================================================================== ---- libgpg-error-1.8.orig/configure.ac 2010-05-06 06:01:08.000000000 -0700 -+++ libgpg-error-1.8/configure.ac 2010-07-21 02:20:20.923261305 -0700 -@@ -140,6 +140,7 @@ - AC_SUBST(GPG_ERROR_CONFIG_CFLAGS) - AC_SUBST(GPG_ERROR_CONFIG_ISUBDIRAFTER) - AC_CONFIG_FILES([src/gpg-error-config], [chmod +x src/gpg-error-config]) -+AC_CONFIG_FILES([src/gpg-error.pc]) - - - # Special defines for certain platforms -Index: libgpg-error-1.8/src/Makefile.am -=================================================================== ---- libgpg-error-1.8.orig/src/Makefile.am 2010-04-14 02:16:44.000000000 -0700 -+++ libgpg-error-1.8/src/Makefile.am 2010-07-21 02:22:36.655012496 -0700 -@@ -37,13 +37,15 @@ - bin_SCRIPTS = gpg-error-config - m4datadir = $(datadir)/aclocal - m4data_DATA = gpg-error.m4 -+pkgconfigdir = $(libdir)/pkgconfig -+pkgconfig_DATA = gpg-error.pc - - EXTRA_DIST = mkstrtable.awk err-sources.h.in err-codes.h.in \ - mkerrnos.awk errnos.in README \ - mkerrcodes.awk mkerrcodes1.awk mkerrcodes2.awk mkerrcodes.c \ - mkheader.awk gpg-error.h.in mkw32errmap.c w32-add.h w32ce-add.h \ - err-sources.h err-codes.h gpg-error-config.in gpg-error.m4 \ -- gpg-error.def.in versioninfo.rc.in -+ gpg-error.def.in versioninfo.rc.in gpg-error.pc.in - - BUILT_SOURCES = err-sources.h err-codes.h code-to-errno.h code-from-errno.h \ - err-sources-sym.h err-codes-sym.h errnos-sym.h gpg-error.h \ -Index: libgpg-error-1.8/src/gpg-error.pc.in -=================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ libgpg-error-1.8/src/gpg-error.pc.in 2010-07-21 02:20:20.923261305 -0700 -@@ -0,0 +1,10 @@ -+prefix=@prefix@ -+exec_prefix=@exec_prefix@ -+libdir=@libdir@ -+includedir=@includedir@ -+ -+Name: gpg-error -+Description: a library that defines common error values for all GnuPG components -+Version: @VERSION@ -+Libs: -L{libdir} -lgpg-error -+Cflags: -I${includedir} diff --git a/meta/packages/libgpg-error/libgpg-error_1.8.bb b/meta/packages/libgpg-error/libgpg-error_1.8.bb deleted file mode 100644 index 120feecafa..0000000000 --- a/meta/packages/libgpg-error/libgpg-error_1.8.bb +++ /dev/null @@ -1,24 +0,0 @@ -DESCRIPTION = "a small library that defines common error values for all GnuPG components" -HOMEPAGE = "http://www.gnupg.org/related_software/libgpg-error/" -BUGTRACKER = "https://bugs.g10code.com/gnupg/index" - -LICENSE = "GPLv2+ & LGPLv2.1+" -LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \ - file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \ - file://src/gpg-error.h;endline=23;md5=83c16c8f5cea85affa1ff270a6f4fcff \ - file://src/init.c;endline=20;md5=b69742f2a8827d494c6f6a4b1768416c" - - -SECTION = "libs" -LICENSE = "GPLv2+ & LGPLv2.1+" -DEPENDS = "gettext" -PR = "r0" - -SRC_URI = "ftp://ftp.gnupg.org/gcrypt/libgpg-error/libgpg-error-${PV}.tar.bz2 \ - file://pkgconfig.patch;" - -# move libgpg-error-config into -dev package -FILES_${PN} = "${libdir}/lib*.so.*" -FILES_${PN}-dev += "${bindir}/*" - -inherit autotools binconfig pkgconfig diff --git a/meta/packages/libgsf/libgsf_1.14.5.bb b/meta/packages/libgsf/libgsf_1.14.5.bb deleted file mode 100644 index 10b6390722..0000000000 --- a/meta/packages/libgsf/libgsf_1.14.5.bb +++ /dev/null @@ -1,20 +0,0 @@ -LICENSE = "GPL" -SECTION = "libs" -PR = "r0" - -DEPENDS= "libxml2 bzip2 glib-2.0 zlib" -RDEPENDS = "gconf gnome-vfs" - - -PACKAGES =+ "${PN}-gnome ${PN}-gnome-dev " - -FILES_${PN}-gnome = "${libdir}/libgsf-gnome-1.so.*" -FILES_${PN}-gnome-dev = "${libdir}/libgsf-gnome-1.* ${includedir}/libgsf-1/gsf-gnome" - -inherit autotools pkgconfig gnome gconf - -EXTRA_OECONF = "\ - --without-python \ - --without-gnome \ - --disable-gtk-doc \ - --with-bz2" diff --git a/meta/packages/libgtkstylus/files/gtkstylus.sh b/meta/packages/libgtkstylus/files/gtkstylus.sh deleted file mode 100644 index b1302ede0e..0000000000 --- a/meta/packages/libgtkstylus/files/gtkstylus.sh +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/sh - -GTK_MODULES=libgtkstylus.so - -export GTK_MODULES diff --git a/meta/packages/libgtkstylus/libgtkstylus_0.5.bb b/meta/packages/libgtkstylus/libgtkstylus_0.5.bb deleted file mode 100644 index f614048a16..0000000000 --- a/meta/packages/libgtkstylus/libgtkstylus_0.5.bb +++ /dev/null @@ -1,24 +0,0 @@ -DESCRIPTION = "GTK plugin for stylus based systems" -SECTION = "libs" -DEPENDS = "gtk+" -LICENSE = "LGPL" -PR = "r2" - -inherit autotools - -SRC_URI = "http://burtonini.com/temp/${PN}-${PV}.tar.gz \ - file://gtkstylus.sh" - -do_install_append() { - install -d ${D}/${sysconfdir}/X11/Xsession.d - install -m 755 ${WORKDIR}/gtkstylus.sh ${D}/${sysconfdir}/X11/Xsession.d/45gtkstylus -} - -# Horrible but rpm falls over if you use '*' -GTKVER = "2.10.0" - -FILES_${PN} = "${sysconfdir} \ - ${libdir}/gtk-2.0/${GTKVER}/modules/libgtkstylus.so.*" -FILES_${PN}-dbg += "${libdir}/gtk-2.0/${GTKVER}/modules/.debug" -FILES_${PN}-dev += "${libdir}/gtk-2.0/${GTKVER}/modules/libgtkstylus.so \ - ${libdir}/gtk-2.0/${GTKVER}/modules/libgtkstylus.*a" diff --git a/meta/packages/libical/libical_0.44.bb b/meta/packages/libical/libical_0.44.bb deleted file mode 100644 index 0b016a0b8f..0000000000 --- a/meta/packages/libical/libical_0.44.bb +++ /dev/null @@ -1,11 +0,0 @@ -DESCRIPTION = "iCal and scheduling (RFC 2445, 2446, 2447) library" -HOMEPAGE = "http://sourceforge.net/projects/freeassociation/" -BUGTRACKER = "http://sourceforge.net/tracker/?group_id=16077&atid=116077" -LICENSE = "LGPLv2.1 | MPLv1.1" -LIC_FILES_CHKSUM = "file://COPYING;md5=35da21efce2b9f0ca07524c9f844e6ed \ - file://LICENSE;md5=35da21efce2b9f0ca07524c9f844e6ed" -SECTION = "libs" - -SRC_URI = "${SOURCEFORGE_MIRROR}/freeassociation/${P}.tar.gz" - -inherit autotools diff --git a/meta/packages/libiconv/libiconv_1.9.2.bb b/meta/packages/libiconv/libiconv_1.9.2.bb deleted file mode 100644 index d427dcef83..0000000000 --- a/meta/packages/libiconv/libiconv_1.9.2.bb +++ /dev/null @@ -1,21 +0,0 @@ -DESCRIPTION = "GNU libiconv - libiconv is for you if your application needs to support \ -multiple character encodings, but that support lacks from your system." -HOMEPAGE = "http://www.gnu.org/software/libiconv" -SECTION = "libs" -PRIORITY = "optional" -NOTES = "Needs to be stripped down to: ascii iso8859-1 eucjp iso-2022jp gb utf8" -PROVIDES = "virtual/libiconv" -PR = "r4" -LICENSE = "LGPL" -SRC_URI = "ftp://ftp.gnu.org/pub/gnu/libiconv/libiconv-${PV}.tar.gz" - -S = "${WORKDIR}/libiconv-${PV}" - -inherit autotools pkgconfig - -EXTRA_OECONF += "--enable-shared --enable-static" - -do_configure () { - rm -f m4/libtool.m4 libcharset/m4/libtool.m4 - autotools_do_configure -} diff --git a/meta/packages/libidl/libidl_0.8.12.bb b/meta/packages/libidl/libidl_0.8.12.bb deleted file mode 100644 index 9cc9ea2ed8..0000000000 --- a/meta/packages/libidl/libidl_0.8.12.bb +++ /dev/null @@ -1,16 +0,0 @@ -LICENSE = "LGPL" -DESCRIPTION = "Library for parsing CORBA IDL files" -SECTION = "gnome/libs" -DEPENDS = "glib-2.0 flex" -PR = "r4" - -SRC_URI = "http://ftp.gnome.org/pub/GNOME/sources/libIDL/0.8/libIDL-${PV}.tar.bz2" -S = "${WORKDIR}/libIDL-${PV}" - -BINCONFIG_GLOB = "*-config-2" -inherit autotools pkgconfig binconfig - -FILES_${PN} = "${libdir}/*.so.*" -FILES_${PN}-dev += " ${bindir}" - -BBCLASSEXTEND = "native" diff --git a/meta/packages/libidn/libidn_0.6.14.bb b/meta/packages/libidn/libidn_0.6.14.bb deleted file mode 100644 index 17bb103d9e..0000000000 --- a/meta/packages/libidn/libidn_0.6.14.bb +++ /dev/null @@ -1,26 +0,0 @@ -DESCRIPTION = "Implementation of the Stringprep, Punycode and IDNA specifications defined by the IETF Internationalized Domain Names (IDN) working group." -HOMEPAGE = "http://www.gnu.org/software/libidn/" -SECTION = "libs" -LICENSE = "LGPLv2.1+ & GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a \ - file://COPYING.LIB;md5=a6f89e2100d9b6cdffcea4f398e37343 \ - file://lib/idna.h;firstline=6;endline=18;md5=6d9d5532eb28b99e860262281c540d02 \ - file://src/idn.c;firstline=6;endline=18;md5=41b6aec531cc6a9d54a6c4deee251bf5" -PR = "r0" - -inherit pkgconfig autotools gettext - -SRC_URI = "http://alpha.gnu.org/gnu/libidn/${P}.tar.gz" - -EXTRA_OECONF = " --disable-tld" - -do_configure_prepend() { - # this version of libidn copies AC_USE_SYSTEM_EXTENSIONS from - # autoconf CVS because atm the autoconf it uses is a bit old - # now with cross autotool, that macro is already there and this - # local definition causes circular dependency. Actually AC_GNU_SOURCE - # is identical to AC_USE_SYSTEM_EXTENSIONS. So remove all local - # references to the latter here. - sed -i -e "/AC_REQUIRE(\[gl_USE_SYSTEM_EXTENSIONS/d" ${S}/lib/gl/m4/gnulib-comp.m4 - rm -f ${S}/lib/gl/m4/extensions.m4 -} diff --git a/meta/packages/libidn/libidn_1.19.bb b/meta/packages/libidn/libidn_1.19.bb deleted file mode 100644 index 2e29ade14c..0000000000 --- a/meta/packages/libidn/libidn_1.19.bb +++ /dev/null @@ -1,20 +0,0 @@ -DESCRIPTION = "Implementation of the Stringprep, Punycode and IDNA specifications defined by the IETF Internationalized Domain Names (IDN) working group." -HOMEPAGE = "http://www.gnu.org/software/libidn/" -SECTION = "libs" -LICENSE = "LGPLv2.1+ & GPLv3+" -LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \ - file://COPYING.LIB;md5=a6f89e2100d9b6cdffcea4f398e37343 \ - file://lib/idna.h;firstline=6;endline=18;md5=643beb30bf98d8c4aed59a51b86fe9ea \ - file://src/idn.c;firstline=6;endline=18;md5=07a57d46977b38a2557aac446dda35dd" -PR = "r0" - -inherit pkgconfig autotools gettext - -SRC_URI = "http://ftp.gnu.org/gnu/libidn/${P}.tar.gz" - -# command tool is under GPLv3+, while libidn itself is under LGPLv2.1+ -# so package command into a separate package -PACKAGES =+ "idn" -FILES_idn = "${bindir}/*" - -EXTRA_OECONF = " --disable-tld" diff --git a/meta/packages/libmpc/libmpc.inc b/meta/packages/libmpc/libmpc.inc deleted file mode 100644 index 6e18e588be..0000000000 --- a/meta/packages/libmpc/libmpc.inc +++ /dev/null @@ -1,6 +0,0 @@ -DESCRIPTION = "Mpc is a C library for the arithmetic of complex numbers with arbitrarily high precision and correct rounding of the result. It is built upon and follows the same principles as Mpfr" -HOMEPAGE = "http://www.multiprecision.org/" -LICENSE = "LGPLv2" -SECTION = "libs" - -inherit autotools diff --git a/meta/packages/libmpc/libmpc_0.8.2.bb b/meta/packages/libmpc/libmpc_0.8.2.bb deleted file mode 100644 index 1792066e77..0000000000 --- a/meta/packages/libmpc/libmpc_0.8.2.bb +++ /dev/null @@ -1,14 +0,0 @@ -require libmpc.inc - -DEPENDS = "gmp mpfr" - -PR = "r0" - -SRC_URI = "http://www.multiprecision.org/mpc/download/mpc-${PV}.tar.gz" -S = "${WORKDIR}/mpc-${PV}" - -SRC_URI[md5sum] = "5b34aa804d514cc295414a963aedb6bf" -SRC_URI[sha256sum] = "e664603757251fd8a352848276497a4c79b7f8b21fd8aedd5cc0598a38fee3e4" - -BBCLASSEXTEND = "native nativesdk" - diff --git a/meta/packages/libnl/libnl/compilefix.patch b/meta/packages/libnl/libnl/compilefix.patch deleted file mode 100644 index f75ff282af..0000000000 --- a/meta/packages/libnl/libnl/compilefix.patch +++ /dev/null @@ -1,12 +0,0 @@ -Index: libnl-1.1/include/netlink-local.h -=================================================================== ---- libnl-1.1.orig/include/netlink-local.h 2009-09-04 10:10:09.000000000 +0100 -+++ libnl-1.1/include/netlink-local.h 2009-09-04 10:10:15.000000000 +0100 -@@ -26,6 +26,7 @@ - #include - #include - #include -+#include - - #include - #include diff --git a/meta/packages/libnl/libnl/local-includes.patch b/meta/packages/libnl/libnl/local-includes.patch deleted file mode 100644 index 5af463004b..0000000000 --- a/meta/packages/libnl/libnl/local-includes.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- libnl-1.0-pre6/Makefile.opts.in.orig 2006-08-24 14:57:42.000000000 +0200 -+++ libnl-1.0-pre6/Makefile.opts.in 2006-08-24 14:58:20.000000000 +0200 -@@ -10,7 +10,7 @@ - # - - CC := @CC@ --CFLAGS := @CFLAGS@ -+CFLAGS := -I./include -I. -I../include @CFLAGS@ - LDFLAGS := @LDFLAGS@ - CPPFLAGS := @CPPFLAGS@ - PACKAGE_NAME := @PACKAGE_NAME@ diff --git a/meta/packages/libnl/libnl_1.1.bb b/meta/packages/libnl/libnl_1.1.bb deleted file mode 100644 index 683df9159f..0000000000 --- a/meta/packages/libnl/libnl_1.1.bb +++ /dev/null @@ -1,16 +0,0 @@ -DESCRIPTION = "libnl is a library for applications dealing with netlink sockets." -HOMEPAGE = "http://www.infradead.org/~tgr/libnl/" -SECTION = "libs/network" -PRIORITY = "optional" - -LICENSE = "LGPLv2.1" -LIC_FILES_CHKSUM = "file://COPYING;md5=2b41e13261a330ee784153ecbb6a82bc \ - file://src/utils.c;beginline=4;endline=9;md5=6e99dfba5cfd64e92b4eb2c7b31e5e4e" - -PR = "r1" - -SRC_URI= "http://www.infradead.org/~tgr/libnl/files/${PN}-${PV}.tar.gz \ - file://local-includes.patch;apply=yes \ - file://compilefix.patch;apply=yes" - -inherit autotools pkgconfig diff --git a/meta/packages/libnss-mdns/files/alignment-fix.patch b/meta/packages/libnss-mdns/files/alignment-fix.patch deleted file mode 100644 index 11d4655e1f..0000000000 --- a/meta/packages/libnss-mdns/files/alignment-fix.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- nss-mdns-0.6/src/nss.c.orig 2005-09-25 17:27:51 +0200 -+++ nss-mdns-0.6/src/nss.c 2005-09-25 17:28:55 +0200 -@@ -456,6 +456,8 @@ - result->h_addrtype = af; - result->h_length = address_length; - -+ idx+=(sizeof(char*)-idx%sizeof(char*)); /* Align on 32 bit boundary */ -+ - /* Check if there's enough space for the addresses */ - if (buflen < idx+u.data_len+sizeof(char*)*(u.count+1)) { - *errnop = ERANGE; diff --git a/meta/packages/libnss-mdns/libnss-mdns_0.10.bb b/meta/packages/libnss-mdns/libnss-mdns_0.10.bb deleted file mode 100644 index 69eaa33d60..0000000000 --- a/meta/packages/libnss-mdns/libnss-mdns_0.10.bb +++ /dev/null @@ -1,36 +0,0 @@ -DESCRIPTION = "NSS module for Multicast DNS name resolution" -HOMEPAGE = "http://0pointer.de/lennart/projects/nss-mdns/" -SECTION = "libs" -PRIORITY = "optional" - -LICENSE = "LGPLv2.1+" -LIC_FILES_CHKSUM = "file://LICENSE;md5=2d5025d4aa3495befef8f17206a5b0a1" - -DEPENDS = "avahi" -RDEPENDS = "avahi-daemon" -PR = "r0" - -SRC_URI = "http://0pointer.de/lennart/projects/nss-mdns/nss-mdns-${PV}.tar.gz" -S = "${WORKDIR}/nss-mdns-${PV}" - -inherit autotools - -# suppress warning, but don't bother with autonamer -LEAD_SONAME = "libnss_mdns.so" -DEBIANNAME_${PN} = "libnss-mdns" - -EXTRA_OECONF = "--libdir=/lib --disable-lynx --enable-avahi" - -pkg_postinst () { - cat /etc/nsswitch.conf | grep "hosts:\s*files dns$" > /dev/null && { - cat /etc/nsswitch.conf | sed 's/hosts:\s*files dns/& mdns4/' > /tmp/nsswitch.conf - mv /tmp/nsswitch.conf /etc/nsswitch.conf - } -} - -pkg_prerm () { - cat /etc/nsswitch.conf | grep "hosts:\s*files dns mdns$" > /dev/null && { - cat /etc/nsswitch.conf | sed 's/\(hosts:\s*files dns\) mdns4*/\1/' > /tmp/nsswitch.conf - mv /tmp/nsswitch.conf /etc/nsswitch.conf - } -} diff --git a/meta/packages/liboil/liboil-0.3.17/no-tests.patch b/meta/packages/liboil/liboil-0.3.17/no-tests.patch deleted file mode 100644 index 00cf5d7431..0000000000 --- a/meta/packages/liboil/liboil-0.3.17/no-tests.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- liboil-0.3.9/liboil/liboilfunction.c.old 2006-09-18 13:03:20.000000000 +0100 -+++ liboil-0.3.9/liboil/liboilfunction.c 2006-09-18 13:04:10.000000000 +0100 -@@ -345,7 +345,9 @@ - return; - } - -- test = oil_test_new (klass); -+ klass->chosen_impl = klass->reference_impl; -+ klass->func = klass->reference_impl->func; -+/* test = oil_test_new (klass); - if (test == NULL) { - OIL_ERROR ("failed to test function class %s", klass->name); - return; -@@ -385,7 +387,7 @@ - klass->chosen_impl = min_impl; - klass->func = min_impl->func; - -- oil_test_free (test); -+ oil_test_free (test);*/ - } - - static void diff --git a/meta/packages/liboil/liboil_0.3.17.bb b/meta/packages/liboil/liboil_0.3.17.bb deleted file mode 100644 index 8ba303069d..0000000000 --- a/meta/packages/liboil/liboil_0.3.17.bb +++ /dev/null @@ -1,20 +0,0 @@ -DESCRIPTION = "Liboil is a library of simple functions that are optimized for various CPUs." -HOMEPAGE = "http://liboil.freedesktop.org/" -BUGTRACKER = "https://bugs.freedesktop.org/" - -LICENSE = "BSD" -LIC_FILES_CHKSUM = "file://COPYING;md5=ad80780d9c5205d63481a0184e199a15 \ - file://liboil/liboil.h;endline=28;md5=95c794a66b88800d949fed17e437d9fb \ - file://liboil/liboilcpu.c;endline=28;md5=89da69a61d88eedcba066f42353fb75a \ - file://examples/example1.c;endline=29;md5=9d4dad9fcbbdf0441ee063f8af5170c9 \ - file://testsuite/trans.c;endline=29;md5=380ecd43121fe3dcc0d8d7e5984f283d" - -DEPENDS = "glib-2.0" -PR = "r2" - -SRC_URI = "http://liboil.freedesktop.org/download/${P}.tar.gz \ - file://no-tests.patch;patch=1" - -inherit autotools pkgconfig - -ARM_INSTRUCTION_SET = "arm" diff --git a/meta/packages/libomxil/libomxil_0.3.3.bb b/meta/packages/libomxil/libomxil_0.3.3.bb deleted file mode 100644 index 016aed5149..0000000000 --- a/meta/packages/libomxil/libomxil_0.3.3.bb +++ /dev/null @@ -1,16 +0,0 @@ -DESCRIPTION = "Bellagio OpenMAX Integration Layer" -HOMEPAGE = "http://omxil.sourceforge.net/" -LICENSE = "LGPL" -DEPENDS = "libvorbis libogg alsa-lib libmad" - -SRC_URI = "${SOURCEFORGE_MIRROR}/omxil/libomxil-B-${PV}.tar.gz" - -S = "${WORKDIR}/${PN}-B-${PV}" - -inherit autotools - -EXTRA_OECONF += "--disable-ffmpegcomponents" - -FILES_${PN} += "${libdir}/omxilcomponents/*.so*" -FILES_${PN}-dev += "${libdir}/omxilcomponents/*.*a" -FILES_${PN}-dbg += "${libdir}/omxilcomponents/.debug/" diff --git a/meta/packages/libpcap/libpcap-1.1.1/aclocal.patch b/meta/packages/libpcap/libpcap-1.1.1/aclocal.patch deleted file mode 100644 index 71fd8b989b..0000000000 --- a/meta/packages/libpcap/libpcap-1.1.1/aclocal.patch +++ /dev/null @@ -1,165 +0,0 @@ -diff -ruN libpcap-1.1.1-orig/aclocal.m4 libpcap-1.1.1/aclocal.m4 ---- libpcap-1.1.1-orig/aclocal.m4 2010-06-29 10:46:32.815117569 +0800 -+++ libpcap-1.1.1/aclocal.m4 2010-06-29 10:49:17.150149949 +0800 -@@ -37,7 +37,7 @@ - dnl AC_LBL_C_INIT. Now, we run AC_LBL_C_INIT_BEFORE_CC, AC_PROG_CC, - dnl and AC_LBL_C_INIT at the top level. - dnl --AC_DEFUN(AC_LBL_C_INIT_BEFORE_CC, -+AC_DEFUN([AC_LBL_C_INIT_BEFORE_CC], - [AC_PREREQ(2.50) - AC_BEFORE([$0], [AC_LBL_C_INIT]) - AC_BEFORE([$0], [AC_PROG_CC]) -@@ -90,7 +90,7 @@ - dnl ac_cv_lbl_gcc_vers - dnl LBL_CFLAGS - dnl --AC_DEFUN(AC_LBL_C_INIT, -+AC_DEFUN([AC_LBL_C_INIT], - [AC_PREREQ(2.50) - AC_BEFORE([$0], [AC_LBL_FIXINCLUDES]) - AC_BEFORE([$0], [AC_LBL_DEVEL]) -@@ -217,7 +217,7 @@ - dnl V_SONAME_OPT - dnl V_RPATH_OPT - dnl --AC_DEFUN(AC_LBL_SHLIBS_INIT, -+AC_DEFUN([AC_LBL_SHLIBS_INIT], - [AC_PREREQ(2.50) - if test "$GCC" = yes ; then - # -@@ -361,7 +361,7 @@ - # Make sure we use the V_CCOPT flags, because some of those might - # disable inlining. - # --AC_DEFUN(AC_LBL_C_INLINE, -+AC_DEFUN([AC_LBL_C_INLINE], - [AC_MSG_CHECKING(for inline) - save_CFLAGS="$CFLAGS" - CFLAGS="$V_CCOPT" -@@ -407,7 +407,7 @@ - dnl - dnl AC_LBL_FIXINCLUDES - dnl --AC_DEFUN(AC_LBL_FIXINCLUDES, -+AC_DEFUN([AC_LBL_FIXINCLUDES], - [if test "$GCC" = yes ; then - AC_MSG_CHECKING(for ANSI ioctl definitions) - AC_CACHE_VAL(ac_cv_lbl_gcc_fixincludes, -@@ -453,7 +453,7 @@ - dnl $2 (yacc appended) - dnl $3 (optional flex and bison -P prefix) - dnl --AC_DEFUN(AC_LBL_LEX_AND_YACC, -+AC_DEFUN([AC_LBL_LEX_AND_YACC], - [AC_ARG_WITH(flex, [ --without-flex don't use flex]) - AC_ARG_WITH(bison, [ --without-bison don't use bison]) - if test "$with_flex" = no ; then -@@ -506,7 +506,7 @@ - dnl - dnl DECLWAITSTATUS (defined) - dnl --AC_DEFUN(AC_LBL_UNION_WAIT, -+AC_DEFUN([AC_LBL_UNION_WAIT], - [AC_MSG_CHECKING(if union wait is used) - AC_CACHE_VAL(ac_cv_lbl_union_wait, - AC_TRY_COMPILE([ -@@ -535,7 +535,7 @@ - dnl - dnl HAVE_SOCKADDR_SA_LEN (defined) - dnl --AC_DEFUN(AC_LBL_SOCKADDR_SA_LEN, -+AC_DEFUN([AC_LBL_SOCKADDR_SA_LEN], - [AC_MSG_CHECKING(if sockaddr struct has the sa_len member) - AC_CACHE_VAL(ac_cv_lbl_sockaddr_has_sa_len, - AC_TRY_COMPILE([ -@@ -560,7 +560,7 @@ - dnl - dnl HAVE_SOCKADDR_STORAGE (defined) - dnl --AC_DEFUN(AC_LBL_SOCKADDR_STORAGE, -+AC_DEFUN([AC_LBL_SOCKADDR_STORAGE], - [AC_MSG_CHECKING(if sockaddr_storage struct exists) - AC_CACHE_VAL(ac_cv_lbl_has_sockaddr_storage, - AC_TRY_COMPILE([ -@@ -593,7 +593,7 @@ - dnl won't be using code that would use that member, or we wouldn't - dnl compile in any case). - dnl --AC_DEFUN(AC_LBL_HP_PPA_INFO_T_DL_MODULE_ID_1, -+AC_DEFUN([AC_LBL_HP_PPA_INFO_T_DL_MODULE_ID_1], - [AC_MSG_CHECKING(if dl_hp_ppa_info_t struct has dl_module_id_1 member) - AC_CACHE_VAL(ac_cv_lbl_dl_hp_ppa_info_t_has_dl_module_id_1, - AC_TRY_COMPILE([ -@@ -619,7 +619,7 @@ - dnl - dnl ac_cv_lbl_have_run_path (yes or no) - dnl --AC_DEFUN(AC_LBL_HAVE_RUN_PATH, -+AC_DEFUN([AC_LBL_HAVE_RUN_PATH], - [AC_MSG_CHECKING(for ${CC-cc} -R) - AC_CACHE_VAL(ac_cv_lbl_have_run_path, - [echo 'main(){}' > conftest.c -@@ -644,7 +644,7 @@ - dnl - dnl LBL_ALIGN (DEFINED) - dnl --AC_DEFUN(AC_LBL_UNALIGNED_ACCESS, -+AC_DEFUN([AC_LBL_UNALIGNED_ACCESS], - [AC_MSG_CHECKING(if unaligned accesses fail) - AC_CACHE_VAL(ac_cv_lbl_unaligned_fail, - [case "$host_cpu" in -@@ -749,7 +749,7 @@ - dnl HAVE_OS_PROTO_H (defined) - dnl os-proto.h (symlinked) - dnl --AC_DEFUN(AC_LBL_DEVEL, -+AC_DEFUN([AC_LBL_DEVEL], - [rm -f os-proto.h - if test "${LBL_CFLAGS+set}" = set; then - $1="$$1 ${LBL_CFLAGS}" -@@ -886,7 +886,7 @@ - dnl statically and happen to have a libresolv.a lying around (and no - dnl libnsl.a). - dnl --AC_DEFUN(AC_LBL_LIBRARY_NET, [ -+AC_DEFUN([AC_LBL_LIBRARY_NET], [ - # Most operating systems have gethostbyname() in the default searched - # libraries (i.e. libc): - # Some OSes (eg. Solaris) place it in libnsl -@@ -909,7 +909,7 @@ - dnl Test for __attribute__ - dnl - --AC_DEFUN(AC_C___ATTRIBUTE__, [ -+AC_DEFUN([AC_C___ATTRIBUTE__], [ - AC_MSG_CHECKING(for __attribute__) - AC_CACHE_VAL(ac_cv___attribute__, [ - AC_COMPILE_IFELSE( -@@ -947,7 +947,7 @@ - dnl - dnl -Scott Barron - dnl --AC_DEFUN(AC_LBL_TPACKET_STATS, -+AC_DEFUN([AC_LBL_TPACKET_STATS], - [AC_MSG_CHECKING(if if_packet.h has tpacket_stats defined) - AC_CACHE_VAL(ac_cv_lbl_tpacket_stats, - AC_TRY_COMPILE([ -@@ -976,7 +976,7 @@ - dnl doesn't have that member (which is OK, as either we won't be using - dnl code that would use that member, or we wouldn't compile in any case). - dnl --AC_DEFUN(AC_LBL_LINUX_TPACKET_AUXDATA_TP_VLAN_TCI, -+AC_DEFUN([AC_LBL_LINUX_TPACKET_AUXDATA_TP_VLAN_TCI], - [AC_MSG_CHECKING(if tpacket_auxdata struct has tp_vlan_tci member) - AC_CACHE_VAL(ac_cv_lbl_dl_hp_ppa_info_t_has_dl_module_id_1, - AC_TRY_COMPILE([ -@@ -1003,7 +1003,7 @@ - dnl - dnl HAVE_DLPI_PASSIVE (defined) - dnl --AC_DEFUN(AC_LBL_DL_PASSIVE_REQ_T, -+AC_DEFUN([AC_LBL_DL_PASSIVE_REQ_T], - [AC_MSG_CHECKING(if dl_passive_req_t struct exists) - AC_CACHE_VAL(ac_cv_lbl_has_dl_passive_req_t, - AC_TRY_COMPILE([ diff --git a/meta/packages/libpcap/libpcap-1.1.1/ieee80215-arphrd.patch b/meta/packages/libpcap/libpcap-1.1.1/ieee80215-arphrd.patch deleted file mode 100644 index f29c7cb54c..0000000000 --- a/meta/packages/libpcap/libpcap-1.1.1/ieee80215-arphrd.patch +++ /dev/null @@ -1,22 +0,0 @@ -Index: libpcap-1.0.0/pcap-linux.c -=================================================================== ---- libpcap-1.0.0.orig/pcap-linux.c 2009-01-28 11:58:54.000000000 +0300 -+++ libpcap-1.0.0/pcap-linux.c 2009-01-28 11:59:04.000000000 +0300 -@@ -1616,6 +1616,17 @@ - * so let's use "Linux-cooked" mode. Jean II */ - //handle->md.cooked = 1; - break; -+#ifndef ARPHRD_IEEE80215 -+#define ARPHRD_IEEE80215 804 -+#endif -+#ifndef ARPHRD_IEEE80215_PHY -+#define ARPHRD_IEEE80215_PHY 805 -+#endif -+ -+ case ARPHRD_IEEE80215: -+ case ARPHRD_IEEE80215_PHY: -+ handle->linktype = DLT_IEEE802_15_4; -+ break; - - /* ARPHRD_LAPD is unofficial and randomly allocated, if reallocation - * is needed, please report it to */ diff --git a/meta/packages/libpcap/libpcap.inc b/meta/packages/libpcap/libpcap.inc deleted file mode 100644 index 2025d84c0d..0000000000 --- a/meta/packages/libpcap/libpcap.inc +++ /dev/null @@ -1,24 +0,0 @@ -DESCRIPTION = "Libpcap is a tool to capture network packages on Unix/Linux platform" -HOMEPAGE = "http://www.tcpdump.org/" -BUGTRACKER = "http://sourceforge.net/tracker/?group_id=53067&atid=469577" -SECTION = "libs/network" -LICENSE = "BSD" -LIC_FILES_CHKSUM = "file://LICENSE;md5=1d4b0366557951c84a94fabe3529f867 \ - file://pcap.h;beginline=1;endline=34;md5=8d6cf7e17d5745010d633e30bc529ea9" -DEPENDS = "flex-native bison-native" - -SRC_URI = "http://www.tcpdump.org/release/libpcap-${PV}.tar.gz" - -inherit autotools - -EXTRA_OECONF = "--with-pcap=linux" - -CPPFLAGS_prepend = "-I${S} " -CFLAGS_prepend = "-I${S} " -CXXFLAGS_prepend = "-I${S} " - -do_configure_prepend () { - if [ ! -e acinclude.m4 ]; then - cat aclocal.m4 > acinclude.m4 - fi -} diff --git a/meta/packages/libpcap/libpcap_1.1.1.bb b/meta/packages/libpcap/libpcap_1.1.1.bb deleted file mode 100644 index 58ab5e6c95..0000000000 --- a/meta/packages/libpcap/libpcap_1.1.1.bb +++ /dev/null @@ -1,17 +0,0 @@ -require libpcap.inc - -PR = "r0" - -SRC_URI += "file://aclocal.patch \ - file://ieee80215-arphrd.patch" - -# -# make install doesn't cover the shared lib -# make install-shared is just broken (no symlinks) -# -do_install_prepend () { - install -d ${D}${libdir} - install -d ${D}${bindir} - oe_runmake install-shared DESTDIR=${D} - oe_libinstall -a -so libpcap ${D}${libdir} -} diff --git a/meta/packages/libpcre/files/pcre-cross.patch b/meta/packages/libpcre/files/pcre-cross.patch deleted file mode 100644 index 0626fb347a..0000000000 --- a/meta/packages/libpcre/files/pcre-cross.patch +++ /dev/null @@ -1,25 +0,0 @@ -To be upstreamable, this patch requires check for *_FOR_BUILD, otherwise -it needs to pass special variables. - -It would be nice to implement per-target compiler specification to -automake, as it is done for linker. - -Even better it would be nice to implement native build time targets in -automake. - -Index: pcre-7.6/Makefile.am -=================================================================== ---- pcre-7.6.orig/Makefile.am 2008-01-23 17:58:28.000000000 +0000 -+++ pcre-7.6/Makefile.am 2008-04-03 22:32:00.000000000 +0000 -@@ -147,6 +147,11 @@ - - noinst_PROGRAMS += dftables - dftables_SOURCES = dftables.c -+dftables_LINK = $(LINK_FOR_BUILD) -o $@ -+dftables_LDFLAGS = $(LDFLAGS_FOR_BUILD) -+ -+dftables.o: $(srcdir)/dftables.c -+ $(CC_FOR_BUILD) -c $(CFLAGS_FOR_BUILD) -o $@ $(srcdir)/dftables.c - - pcre_chartables.c: dftables$(EXEEXT) - ./dftables$(EXEEXT) $@ diff --git a/meta/packages/libpcre/libpcre_8.10.bb b/meta/packages/libpcre/libpcre_8.10.bb deleted file mode 100644 index 840d74a658..0000000000 --- a/meta/packages/libpcre/libpcre_8.10.bb +++ /dev/null @@ -1,53 +0,0 @@ -DESCRIPTION = "Perl-compatible regular expression library. PCRE has its own native \ -API, but a set of 'wrapper' functions that are based on the POSIX API \ -are also supplied in the library libpcreposix. Note that this just \ -provides a POSIX calling interface to PCRE; the regular expressions \ -themselves still follow Perl syntax and semantics. The header file for \ -the POSIX-style functions is called pcreposix.h." -SECTION = "devel" -PR = "r4" -LICENSE = "BSD" -SRC_URI = "${SOURCEFORGE_MIRROR}/pcre/pcre-${PV}.tar.bz2 \ - file://pcre-cross.patch;patch=1" -S = "${WORKDIR}/pcre-${PV}" - -PROVIDES = "pcre" - -inherit autotools binconfig - -PARALLEL_MAKE = "" - -CFLAGS_append = " -D_REENTRANT" -CXXFLAGS_powerpc += "-lstdc++" -EXTRA_OECONF = " --with-link-size=2 --enable-newline-is-lf --with-match-limit=10000000 --enable-rebuild-chartables --enable-utf8" - -do_compile () { - # stop libtool from trying to link with host libraries - fix from #33 - # this resolve build problem on amd64 - #1015 - if [ -e ${S}/${TARGET_SYS}-libtool ] ; then - sed -i 's:-L\$:-L${STAGING_LIBDIR} -L\$:' ${S}/${TARGET_SYS}-libtool - else - ln -sf ${S}/libtool ${S}/${TARGET_SYS}-libtool - sed -i 's:-L\$:-L${STAGING_LIBDIR} -L\$:' ${S}/${TARGET_SYS}-libtool - fi - - # The generation of dftables can lead to timestamp problems with ccache - # because the generated config.h seems newer. It is sufficient to ensure that the - # attempt to build dftables inside make will actually work (foo_FOR_BUILD is - # only used for this). - oe_runmake CC_FOR_BUILD="${BUILD_CC}" CFLAGS_FOR_BUILD="-DLINK_SIZE=2 -I${S}/include" LINK_FOR_BUILD="${BUILD_CC} -L${S}/lib" -} - -python populate_packages_prepend () { - pcre_libdir = bb.data.expand('${libdir}', d) - pcre_libdir_dbg = bb.data.expand('${libdir}/.debug', d) - do_split_packages(d, pcre_libdir, '^lib(.*)\.so$', 'lib%s-dev', 'libpcre %s development package', extra_depends='${PN}-dev', allow_links=True) - do_split_packages(d, pcre_libdir, '^lib(.*)\.la$', 'lib%s-dev', 'libpcre %s development package', extra_depends='${PN}-dev') - do_split_packages(d, pcre_libdir, '^lib(.*)\.a$', 'lib%s-dev', 'libpcre %s development package', extra_depends='${PN}-dev') - do_split_packages(d, pcre_libdir, '^lib(.*)\.so\.*', 'lib%s', 'libpcre %s library', extra_depends='', allow_links=True) -} - -FILES_${PN} = "${libdir}/libpcre.so.*" -FILES_${PN}-dev += "${bindir}/*" - -BBCLASSEXTEND = "native" diff --git a/meta/packages/libproxy/libproxy_0.4.3.bb b/meta/packages/libproxy/libproxy_0.4.3.bb deleted file mode 100644 index 6c0b7a50c6..0000000000 --- a/meta/packages/libproxy/libproxy_0.4.3.bb +++ /dev/null @@ -1,26 +0,0 @@ -DESCRIPTION = "A library that provides automatic proxy configuration management" -HOMEPAGE = "http://code.google.com/p/libproxy/" -BUGTRACKER = "http://code.google.com/p/libproxy/issues/list" -SECTION = "libs" -LICENSE = "LGPLv2.1+" -LIC_FILES_CHKSUM = "file://COPYING;md5=7d7044444a7b1b116e8783edcdb44ff4 \ - file://utils/proxy.c;beginline=1;endline=18;md5=55152a1006d7dafbef32baf9c30a99c0" - - -DEPENDS = "virtual/libx11 xmu gconf-dbus" - -SRC_URI = "http://libproxy.googlecode.com/files/libproxy-${PV}.tar.gz" - -PR = "r1" - -inherit cmake pkgconfig - -EXTRA_OECMAKE = "-DWITH_WEBKIT=no -DWITH_GNOME=yes -DWITH_KDE4=no \ - -DWITH_PYTHON=no -DWITH_PERL=no -DWITH_MOZJS=no -DWITH_NM=no" - -FILES_${PN}-dbg += "${libdir}/libproxy/0.4.2/plugins/" - -do_configure_prepend() { - export HOST_SYS=${HOST_SYS} - export BUILD_SYS=${BUILD_SYS} -} diff --git a/meta/packages/librds/librds_0.0.1.bb b/meta/packages/librds/librds_0.0.1.bb deleted file mode 100644 index 3c99ec1ba0..0000000000 --- a/meta/packages/librds/librds_0.0.1.bb +++ /dev/null @@ -1,11 +0,0 @@ -DESCRIPTION = "A software library for accessing RDS data" -HOMEPAGE = "http://rdsd.berlios.de/" -SECTION = "libs" -PROVIDES = "librds" -LICENSE = "GPLv2" - -PR = "r1" - -SRC_URI = "http://download.berlios.de/rdsd/librds-${PV}.tar.gz" - -inherit autotools pkgconfig diff --git a/meta/packages/librsvg/librsvg_2.18.2.bb b/meta/packages/librsvg/librsvg_2.18.2.bb deleted file mode 100644 index fb68c8ba70..0000000000 --- a/meta/packages/librsvg/librsvg_2.18.2.bb +++ /dev/null @@ -1,31 +0,0 @@ -DESCRIPTION = "Library for rendering SVG files" -SECTION = "x11/utils" -DEPENDS = "gtk+ libcroco cairo libxml2 popt" -LICENSE = "LGPL" -PR = "r3" - -EXTRA_OECONF = "--disable-mozilla-plugin --without-svgz --without-croco --disable-gnome-vfs" - -inherit autotools pkgconfig gnome - -PACKAGES =+ "librsvg-gtk librsvg-gtk-dbg librsvg-gtk-dev rsvg" -FILES_${PN} = "${libdir}/*.so.*" -FILES_rsvg = "${bindir}/rsvg \ - ${bindir}/rsvg-view \ - ${bindir}/rsvg-convert \ - ${datadir}/pixmaps/svg-viewer.svg" -FILES_librsvg-gtk = "${libdir}/gtk-2.0/*/*/*.so" -FILES_librsvg-gtk-dev += "${libdir}/gtk-2.0/*.*a \ - ${libdir}/gtk-2.0/*/loaders/*.*a \ - ${libdir}/gtk-2.0/*/engines/*.*a" -FILES_librsvg-gtk-dbg += "${libdir}/gtk-2.0/.debug \ - ${libdir}/gtk-2.0/*/*/.debug" - -pkg_postinst_librsvg-gtk() { -if [ "x$D" != "x" ]; then - exit 1 -fi - -test -x ${bindir}/gdk-pixbuf-query-loaders && { gdk-pixbuf-query-loaders > ${sysconfdir}/gtk-2.0/gdk-pixbuf.loaders ; } -test -x ${bindir}/gtk-update-icon-cache && gtk-update-icon-cache -q ${datadir}/icons/hicolor -} diff --git a/meta/packages/librsvg/librsvg_2.22.3.bb b/meta/packages/librsvg/librsvg_2.22.3.bb deleted file mode 100644 index fb68c8ba70..0000000000 --- a/meta/packages/librsvg/librsvg_2.22.3.bb +++ /dev/null @@ -1,31 +0,0 @@ -DESCRIPTION = "Library for rendering SVG files" -SECTION = "x11/utils" -DEPENDS = "gtk+ libcroco cairo libxml2 popt" -LICENSE = "LGPL" -PR = "r3" - -EXTRA_OECONF = "--disable-mozilla-plugin --without-svgz --without-croco --disable-gnome-vfs" - -inherit autotools pkgconfig gnome - -PACKAGES =+ "librsvg-gtk librsvg-gtk-dbg librsvg-gtk-dev rsvg" -FILES_${PN} = "${libdir}/*.so.*" -FILES_rsvg = "${bindir}/rsvg \ - ${bindir}/rsvg-view \ - ${bindir}/rsvg-convert \ - ${datadir}/pixmaps/svg-viewer.svg" -FILES_librsvg-gtk = "${libdir}/gtk-2.0/*/*/*.so" -FILES_librsvg-gtk-dev += "${libdir}/gtk-2.0/*.*a \ - ${libdir}/gtk-2.0/*/loaders/*.*a \ - ${libdir}/gtk-2.0/*/engines/*.*a" -FILES_librsvg-gtk-dbg += "${libdir}/gtk-2.0/.debug \ - ${libdir}/gtk-2.0/*/*/.debug" - -pkg_postinst_librsvg-gtk() { -if [ "x$D" != "x" ]; then - exit 1 -fi - -test -x ${bindir}/gdk-pixbuf-query-loaders && { gdk-pixbuf-query-loaders > ${sysconfdir}/gtk-2.0/gdk-pixbuf.loaders ; } -test -x ${bindir}/gtk-update-icon-cache && gtk-update-icon-cache -q ${datadir}/icons/hicolor -} diff --git a/meta/packages/librsvg/librsvg_2.26.3.bb b/meta/packages/librsvg/librsvg_2.26.3.bb deleted file mode 100644 index 41e23b1d7d..0000000000 --- a/meta/packages/librsvg/librsvg_2.26.3.bb +++ /dev/null @@ -1,41 +0,0 @@ -DESCRIPTION = "Library for rendering SVG files" -HOMEPAGE = "http://ftp.gnome.org/pub/GNOME/sources/librsvg/" -BUGTRACKER = "https://bugzilla.gnome.org/" - -LICENSE = "LGPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ - file://rsvg.h;beginline=3;endline=24;md5=20b4113c4909bbf0d67e006778302bc6" - -SECTION = "x11/utils" -DEPENDS = "gtk+ libcroco cairo libxml2 popt" -PR = "r0" - -EXTRA_OECONF = "--disable-mozilla-plugin --without-svgz --without-croco --disable-gnome-vfs" - -inherit autotools pkgconfig gnome - -do_configure_prepend () { - echo "CLEANFILES=" > gtk-doc.make -} - -PACKAGES =+ "librsvg-gtk librsvg-gtk-dbg librsvg-gtk-dev rsvg" -FILES_${PN} = "${libdir}/*.so.*" -FILES_rsvg = "${bindir}/rsvg \ - ${bindir}/rsvg-view \ - ${bindir}/rsvg-convert \ - ${datadir}/pixmaps/svg-viewer.svg" -FILES_librsvg-gtk = "${libdir}/gtk-2.0/*/*/*.so" -FILES_librsvg-gtk-dev += "${libdir}/gtk-2.0/*.*a \ - ${libdir}/gtk-2.0/*/loaders/*.*a \ - ${libdir}/gtk-2.0/*/engines/*.*a" -FILES_librsvg-gtk-dbg += "${libdir}/gtk-2.0/.debug \ - ${libdir}/gtk-2.0/*/*/.debug" - -pkg_postinst_librsvg-gtk() { -if [ "x$D" != "x" ]; then - exit 1 -fi - -test -x ${bindir}/gdk-pixbuf-query-loaders && { gdk-pixbuf-query-loaders > ${sysconfdir}/gtk-2.0/gdk-pixbuf.loaders ; } -test -x ${bindir}/gtk-update-icon-cache && gtk-update-icon-cache -q ${datadir}/icons/hicolor -} diff --git a/meta/packages/libsdl/files/acinclude.m4 b/meta/packages/libsdl/files/acinclude.m4 deleted file mode 100644 index ca2df9d5e5..0000000000 --- a/meta/packages/libsdl/files/acinclude.m4 +++ /dev/null @@ -1,189 +0,0 @@ -# Local macros for the SDL configure.in script - -dnl Function to link an architecture specific file -dnl LINK_ARCH_SRC(source_dir, arch, source_file) -AC_DEFUN([COPY_ARCH_SRC], -[ - old="$srcdir/$1/$2/$3" - new="$1/$3" - if test ! -d $1; then - echo "Creating directory $1" - mkdir -p $1 - fi - echo "Copying $old -> $new" - cat >$new <<__EOF__ -/* WARNING: This file was automatically generated! - * Original: $old - */ -__EOF__ - cat >>$new <$old -]) - -# -# --- esd.m4 --- -# -# Configure paths for ESD -# Manish Singh 98-9-30 -# stolen back from Frank Belew -# stolen from Manish Singh -# Shamelessly stolen from Owen Taylor - -dnl AM_PATH_ESD([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]]) -dnl Test for ESD, and define ESD_CFLAGS and ESD_LIBS -dnl -AC_DEFUN([AM_PATH_ESD], -[dnl -dnl Get the cflags and libraries from the esd-config script -dnl -AC_ARG_WITH(esd-prefix,[ --with-esd-prefix=PFX Prefix where ESD is installed (optional)], - esd_prefix="$withval", esd_prefix="") -AC_ARG_WITH(esd-exec-prefix,[ --with-esd-exec-prefix=PFX Exec prefix where ESD is installed (optional)], - esd_exec_prefix="$withval", esd_exec_prefix="") -AC_ARG_ENABLE(esdtest, [ --disable-esdtest Do not try to compile and run a test ESD program], - , enable_esdtest=yes) - - if test x$esd_exec_prefix != x ; then - esd_args="$esd_args --exec-prefix=$esd_exec_prefix" - if test x${ESD_CONFIG+set} != xset ; then - ESD_CONFIG=$esd_exec_prefix/bin/esd-config - fi - fi - if test x$esd_prefix != x ; then - esd_args="$esd_args --prefix=$esd_prefix" - if test x${ESD_CONFIG+set} != xset ; then - ESD_CONFIG=$esd_prefix/bin/esd-config - fi - fi - - AC_PATH_PROG(ESD_CONFIG, esd-config, no) - min_esd_version=ifelse([$1], ,0.2.7,$1) - AC_MSG_CHECKING(for ESD - version >= $min_esd_version) - no_esd="" - if test "$ESD_CONFIG" = "no" ; then - no_esd=yes - else - ESD_CFLAGS=`$ESD_CONFIG $esdconf_args --cflags` - ESD_LIBS=`$ESD_CONFIG $esdconf_args --libs` - - esd_major_version=`$ESD_CONFIG $esd_args --version | \ - sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` - esd_minor_version=`$ESD_CONFIG $esd_args --version | \ - sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` - esd_micro_version=`$ESD_CONFIG $esd_config_args --version | \ - sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` - if test "x$enable_esdtest" = "xyes" ; then - ac_save_CFLAGS="$CFLAGS" - ac_save_LIBS="$LIBS" - CFLAGS="$CFLAGS $ESD_CFLAGS" - LIBS="$LIBS $ESD_LIBS" -dnl -dnl Now check if the installed ESD is sufficiently new. (Also sanity -dnl checks the results of esd-config to some extent -dnl - rm -f conf.esdtest - AC_TRY_RUN([ -#include -#include -#include -#include - -char* -my_strdup (char *str) -{ - char *new_str; - - if (str) - { - new_str = malloc ((strlen (str) + 1) * sizeof(char)); - strcpy (new_str, str); - } - else - new_str = NULL; - - return new_str; -} - -int main () -{ - int major, minor, micro; - char *tmp_version; - - system ("touch conf.esdtest"); - - /* HP/UX 9 (%@#!) writes to sscanf strings */ - tmp_version = my_strdup("$min_esd_version"); - if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ) != 3) { - printf("%s, bad version string\n", "$min_esd_version"); - exit(1); - } - - if (($esd_major_version > major) || - (($esd_major_version == major) && ($esd_minor_version > minor)) || - (($esd_major_version == major) && ($esd_minor_version == minor) && ($esd_micro_version >= micro))) - { - return 0; - } - else - { - printf("\n*** 'esd-config --version' returned %d.%d.%d, but the minimum version\n", $esd_major_version, $esd_minor_version, $esd_micro_version); - printf("*** of ESD required is %d.%d.%d. If esd-config is correct, then it is\n", major, minor, micro); - printf("*** best to upgrade to the required version.\n"); - printf("*** If esd-config was wrong, set the environment variable ESD_CONFIG\n"); - printf("*** to point to the correct copy of esd-config, and remove the file\n"); - printf("*** config.cache before re-running configure\n"); - return 1; - } -} - -],, no_esd=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"]) - CFLAGS="$ac_save_CFLAGS" - LIBS="$ac_save_LIBS" - fi - fi - if test "x$no_esd" = x ; then - AC_MSG_RESULT(yes) - ifelse([$2], , :, [$2]) - else - AC_MSG_RESULT(no) - if test "$ESD_CONFIG" = "no" ; then - echo "*** The esd-config script installed by ESD could not be found" - echo "*** If ESD was installed in PREFIX, make sure PREFIX/bin is in" - echo "*** your path, or set the ESD_CONFIG environment variable to the" - echo "*** full path to esd-config." - else - if test -f conf.esdtest ; then - : - else - echo "*** Could not run ESD test program, checking why..." - CFLAGS="$CFLAGS $ESD_CFLAGS" - LIBS="$LIBS $ESD_LIBS" - AC_TRY_LINK([ -#include -#include -], [ return 0; ], - [ echo "*** The test program compiled, but did not run. This usually means" - echo "*** that the run-time linker is not finding ESD or finding the wrong" - echo "*** version of ESD. If it is not finding ESD, you'll need to set your" - echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point" - echo "*** to the installed location Also, make sure you have run ldconfig if that" - echo "*** is required on your system" - echo "***" - echo "*** If you have an old version installed, it is best to remove it, although" - echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"], - [ echo "*** The test program failed to compile or link. See the file config.log for the" - echo "*** exact error that occured. This usually means ESD was incorrectly installed" - echo "*** or that you have moved ESD since it was installed. In the latter case, you" - echo "*** may want to edit the esd-config script: $ESD_CONFIG" ]) - CFLAGS="$ac_save_CFLAGS" - LIBS="$ac_save_LIBS" - fi - fi - ESD_CFLAGS="" - ESD_LIBS="" - ifelse([$3], , :, [$3]) - fi - AC_SUBST(ESD_CFLAGS) - AC_SUBST(ESD_LIBS) - rm -f conf.esdtest -]) - diff --git a/meta/packages/libsdl/files/configure_tweak.patch b/meta/packages/libsdl/files/configure_tweak.patch deleted file mode 100644 index 90a2888e57..0000000000 --- a/meta/packages/libsdl/files/configure_tweak.patch +++ /dev/null @@ -1,1167 +0,0 @@ -Index: SDL-1.2.11/configure.in -=================================================================== ---- SDL-1.2.11.orig/configure.in 2006-06-27 05:48:33.000000000 +0100 -+++ SDL-1.2.11/configure.in 2008-02-21 19:48:47.000000000 +0000 -@@ -40,13 +40,13 @@ - AC_SUBST(LT_AGE) - - dnl Detect the canonical build and host environments --AC_CONFIG_AUX_DIRS($srcdir/build-scripts) -+AC_CONFIG_AUX_DIR(./build-scripts) - AC_CANONICAL_HOST - AC_C_BIGENDIAN - if test x$ac_cv_c_bigendian = xyes; then -- AC_DEFINE(SDL_BYTEORDER, 4321) -+ AC_DEFINE(SDL_BYTEORDER, 4321, "Byte Order") - else -- AC_DEFINE(SDL_BYTEORDER, 1234) -+ AC_DEFINE(SDL_BYTEORDER, 1234, "Byte Order") - fi - - dnl Set up the compiler and linker flags -@@ -107,7 +107,7 @@ - AC_HELP_STRING([--enable-libc], [Use the system C library [[default=yes]]]), - , enable_libc=yes) - if test x$enable_libc = xyes; then -- AC_DEFINE(HAVE_LIBC) -+ AC_DEFINE(HAVE_LIBC,1,"") - - dnl Check for C library headers - AC_HEADER_STDC -@@ -118,7 +118,7 @@ - if test x$ac_cv_header_inttypes_h = xyes -o x$ac_cv_header_stdint_h = xyes; then - AC_CHECK_TYPE(int64_t) - if test x$ac_cv_type_int64_t = xyes; then -- AC_DEFINE(SDL_HAS_64BIT_TYPE) -+ AC_DEFINE(SDL_HAS_64BIT_TYPE,1,"") - fi - have_inttypes=yes - fi -@@ -127,11 +127,11 @@ - AC_FUNC_ALLOCA - AC_FUNC_MEMCMP - if test x$ac_cv_func_memcmp_working = xyes; then -- AC_DEFINE(HAVE_MEMCMP) -+ AC_DEFINE(HAVE_MEMCMP,1,"") - fi - AC_FUNC_STRTOD - if test x$ac_cv_func_strtod = xyes; then -- AC_DEFINE(HAVE_STRTOD) -+ AC_DEFINE(HAVE_STRTOD,1,"") - fi - AC_CHECK_FUNCS(malloc calloc realloc free getenv putenv unsetenv qsort abs bcopy memset memcpy memmove strlen strlcpy strlcat strdup _strrev _strupr _strlwr strchr strrchr strstr itoa _ltoa _uitoa _ultoa strtol strtoul _i64toa _ui64toa strtoll strtoull atoi atof strcmp strncmp _stricmp strcasecmp _strnicmp strncasecmp sscanf snprintf vsnprintf iconv sigaction setjmp nanosleep) - -@@ -146,40 +146,40 @@ - AC_CHECK_SIZEOF(long, 4) - AC_CHECK_SIZEOF(long long, 8) - if test x$ac_cv_sizeof_char = x1; then -- AC_DEFINE(int8_t, signed char) -- AC_DEFINE(uint8_t, unsigned char) -+ AC_DEFINE(int8_t, signed char,"") -+ AC_DEFINE(uint8_t, unsigned char,"") - fi - if test x$ac_cv_sizeof_short = x2; then -- AC_DEFINE(int16_t, signed short) -- AC_DEFINE(uint16_t, unsigned short) -+ AC_DEFINE(int16_t, signed short,"") -+ AC_DEFINE(uint16_t, unsigned short,"") - else - if test x$ac_cv_sizeof_int = x2; then -- AC_DEFINE(int16_t, signed int) -- AC_DEFINE(uint16_t, unsigned int) -+ AC_DEFINE(int16_t, signed int,"") -+ AC_DEFINE(uint16_t, unsigned int,"") - fi - fi - if test x$ac_cv_sizeof_int = x4; then -- AC_DEFINE(int32_t, signed int) -- AC_DEFINE(uint32_t, unsigned int) -+ AC_DEFINE(int32_t, signed int,"") -+ AC_DEFINE(uint32_t, unsigned int,"") - else - if test x$ac_cv_sizeof_long = x4; then -- AC_DEFINE(int32_t, signed long) -- AC_DEFINE(uint32_t, unsigned long) -+ AC_DEFINE(int32_t, signed long,"") -+ AC_DEFINE(uint32_t, unsigned long,"") - fi - fi - if test x$ac_cv_sizeof_long = x8; then -- AC_DEFINE(int64_t, signed long) -- AC_DEFINE(uint64_t, unsigned long) -- AC_DEFINE(SDL_HAS_64BIT_TYPE) -+ AC_DEFINE(int64_t, signed long,"") -+ AC_DEFINE(uint64_t, unsigned long,"") -+ AC_DEFINE(SDL_HAS_64BIT_TYPE,"") - else - if test x$ac_cv_sizeof_long_long = x8; then -- AC_DEFINE(int64_t, signed long long) -- AC_DEFINE(uint64_t, unsigned long long) -- AC_DEFINE(SDL_HAS_64BIT_TYPE) -+ AC_DEFINE(int64_t, signed long long,"") -+ AC_DEFINE(uint64_t, unsigned long long,"") -+ AC_DEFINE(SDL_HAS_64BIT_TYPE,"") - fi - fi -- AC_DEFINE(size_t, unsigned int) -- AC_DEFINE(uintptr_t, unsigned long) -+ AC_DEFINE(size_t, unsigned int,"") -+ AC_DEFINE(uintptr_t, unsigned long,"") - fi - - # Standard C sources -@@ -201,67 +201,67 @@ - AC_HELP_STRING([--enable-audio], [Enable the audio subsystem [[default=yes]]]), - , enable_audio=yes) - if test x$enable_audio != xyes; then -- AC_DEFINE(SDL_AUDIO_DISABLED) -+ AC_DEFINE(SDL_AUDIO_DISABLED,1,"") - fi - AC_ARG_ENABLE(video, - AC_HELP_STRING([--enable-video], [Enable the video subsystem [[default=yes]]]), - , enable_video=yes) - if test x$enable_video != xyes; then -- AC_DEFINE(SDL_VIDEO_DISABLED) -+ AC_DEFINE(SDL_VIDEO_DISABLED,1,"") - fi - AC_ARG_ENABLE(events, - AC_HELP_STRING([--enable-events], [Enable the events subsystem [[default=yes]]]), - , enable_events=yes) - if test x$enable_events != xyes; then -- AC_DEFINE(SDL_EVENTS_DISABLED) -+ AC_DEFINE(SDL_EVENTS_DISABLED,1,"") - fi - AC_ARG_ENABLE(joystick, - AC_HELP_STRING([--enable-joystick], [Enable the joystick subsystem [[default=yes]]]), - , enable_joystick=yes) - if test x$enable_joystick != xyes; then -- AC_DEFINE(SDL_JOYSTICK_DISABLED) -+ AC_DEFINE(SDL_JOYSTICK_DISABLED,1,"") - fi - AC_ARG_ENABLE(cdrom, - AC_HELP_STRING([--enable-cdrom], [Enable the cdrom subsystem [[default=yes]]]), - , enable_cdrom=yes) - if test x$enable_cdrom != xyes; then -- AC_DEFINE(SDL_CDROM_DISABLED) -+ AC_DEFINE(SDL_CDROM_DISABLED,1,"") - fi - AC_ARG_ENABLE(threads, - AC_HELP_STRING([--enable-threads], [Enable the threading subsystem [[default=yes]]]), - , enable_threads=yes) - if test x$enable_threads != xyes; then -- AC_DEFINE(SDL_THREADS_DISABLED) -+ AC_DEFINE(SDL_THREADS_DISABLED,1,"") - fi - AC_ARG_ENABLE(timers, - AC_HELP_STRING([--enable-timers], [Enable the timer subsystem [[default=yes]]]), - , enable_timers=yes) - if test x$enable_timers != xyes; then -- AC_DEFINE(SDL_TIMERS_DISABLED) -+ AC_DEFINE(SDL_TIMERS_DISABLED,1,"") - fi - AC_ARG_ENABLE(file, - AC_HELP_STRING([--enable-file], [Enable the file subsystem [[default=yes]]]), - , enable_file=yes) - if test x$enable_file != xyes; then -- AC_DEFINE(SDL_FILE_DISABLED) -+ AC_DEFINE(SDL_FILE_DISABLED,1,"") - fi - AC_ARG_ENABLE(loadso, - AC_HELP_STRING([--enable-loadso], [Enable the shared object loading subsystem [[default=yes]]]), - , enable_loadso=yes) - if test x$enable_loadso != xyes; then -- AC_DEFINE(SDL_LOADSO_DISABLED) -+ AC_DEFINE(SDL_LOADSO_DISABLED,1,"") - fi - AC_ARG_ENABLE(cpuinfo, - AC_HELP_STRING([--enable-cpuinfo], [Enable the cpuinfo subsystem [[default=yes]]]), - , enable_cpuinfo=yes) - if test x$enable_cpuinfo != xyes; then -- AC_DEFINE(SDL_CPUINFO_DISABLED) -+ AC_DEFINE(SDL_CPUINFO_DISABLED,1,"") - fi - AC_ARG_ENABLE(assembly, - AC_HELP_STRING([--enable-assembly], [Enable assembly routines [[default=yes]]]), - , enable_assembly=yes) - if test x$enable_assembly = xyes; then -- AC_DEFINE(SDL_ASSEMBLY_ROUTINES) -+ AC_DEFINE(SDL_ASSEMBLY_ROUTINES,1,"") - fi - - dnl See if the OSS audio interface is supported -@@ -289,12 +289,12 @@ - int arg = SNDCTL_DSP_SETFRAGMENT; - ],[ - have_oss=yes -- AC_DEFINE(SDL_AUDIO_DRIVER_OSS_SOUNDCARD_H) -+ AC_DEFINE(SDL_AUDIO_DRIVER_OSS_SOUNDCARD_H,1,"") - ]) - fi - AC_MSG_RESULT($have_oss) - if test x$have_oss = xyes; then -- AC_DEFINE(SDL_AUDIO_DRIVER_OSS) -+ AC_DEFINE(SDL_AUDIO_DRIVER_OSS,1,"") - SOURCES="$SOURCES $srcdir/src/audio/dsp/*.c" - SOURCES="$SOURCES $srcdir/src/audio/dma/*.c" - have_audio=yes -@@ -314,45 +314,7 @@ - AC_ARG_ENABLE(alsa, - AC_HELP_STRING([--enable-alsa], [support the ALSA audio API [[default=yes]]]), - , enable_alsa=yes) -- if test x$enable_audio = xyes -a x$enable_alsa = xyes; then -- AM_PATH_ALSA(0.9.0, have_alsa=yes, have_alsa=no) -- # Restore all flags from before the ALSA detection runs -- CFLAGS="$alsa_save_CFLAGS" -- LDFLAGS="$alsa_save_LDFLAGS" -- LIBS="$alsa_save_LIBS" -- if test x$have_alsa = xyes; then -- AC_ARG_ENABLE(alsa-shared, --AC_HELP_STRING([--enable-alsa-shared], [dynamically load ALSA audio support [[default=yes]]]), -- , enable_alsa_shared=yes) -- if test "x`echo $ALSA_LIBS | grep -- -L`" = "x"; then -- if test "x`ls /lib/libasound.so.* 2> /dev/null`" != "x"; then -- ALSA_LIBS="-L/lib $ALSA_LIBS" -- elif test "x`ls /usr/lib/libasound.so.* 2> /dev/null`" != "x"; then -- ALSA_LIBS="-L/usr/lib $ALSA_LIBS" -- elif test "x`ls /usr/local/lib/libasound.so.* 2> /dev/null`" != "x"; then -- ALSA_LIBS="-L/usr/local/lib $ALSA_LIBS" -- fi -- fi -- alsa_lib_spec=`echo $ALSA_LIBS | sed 's/.*-L\([[^ ]]*\).*/\1\/libasound.so.*/'` -- alsa_lib=`ls -- $alsa_lib_spec | sed 's/.*\/\(.*\)/\1/; q'` -- echo "-- $alsa_lib_spec -> $alsa_lib" -- -- AC_DEFINE(SDL_AUDIO_DRIVER_ALSA) -- SOURCES="$SOURCES $srcdir/src/audio/alsa/*.c" -- EXTRA_CFLAGS="$EXTRA_CFLAGS $ALSA_CFLAGS" -- if test x$have_loadso != xyes && \ -- test x$enable_alsa_shared = xyes; then -- AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic ALSA loading]) -- fi -- if test x$have_loadso = xyes && \ -- test x$enable_alsa_shared = xyes && test x$alsa_lib != x; then -- AC_DEFINE_UNQUOTED(SDL_AUDIO_DRIVER_ALSA_DYNAMIC, "$alsa_lib") -- else -- EXTRA_LDFLAGS="$EXTRA_LDFLAGS $ALSA_LIBS" -- fi -- have_audio=yes -- fi -- fi -+ enable_alsa=no - } - - dnl Check whether we want to use IRIX 6.5+ native audio or not -@@ -371,7 +333,7 @@ - AC_MSG_RESULT($have_dmedia) - # Set up files for the audio library - if test x$have_dmedia = xyes; then -- AC_DEFINE(SDL_AUDIO_DRIVER_DMEDIA) -+ AC_DEFINE(SDL_AUDIO_DRIVER_DMEDIA,1,"") - SOURCES="$SOURCES $srcdir/src/audio/dmedia/*.c" - EXTRA_LDFLAGS="$EXTRA_LDFLAGS -laudio" - have_audio=yes -@@ -408,7 +370,7 @@ - AC_MSG_RESULT($have_mme) - # Set up files for the audio library - if test x$have_mme = xyes; then -- AC_DEFINE(SDL_AUDIO_DRIVER_MMEAUDIO) -+ AC_DEFINE(SDL_AUDIO_DRIVER_MMEAUDIO,1,"") - SOURCES="$SOURCES $srcdir/src/audio/mme/*.c" - EXTRA_CFLAGS="$EXTRA_CFLAGS $MME_CFLAGS" - EXTRA_LDFLAGS="$EXTRA_LDFLAGS $MME_LIBS" -@@ -433,7 +395,7 @@ - esd_lib=`ls -- $esd_lib_spec | sed 's/.*\/\(.*\)/\1/; q'` - echo "-- $esd_lib_spec -> $esd_lib" - -- AC_DEFINE(SDL_AUDIO_DRIVER_ESD) -+ AC_DEFINE(SDL_AUDIO_DRIVER_ESD,1,"") - SOURCES="$SOURCES $srcdir/src/audio/esd/*.c" - EXTRA_CFLAGS="$EXTRA_CFLAGS $ESD_CFLAGS" - if test x$have_loadso != xyes && \ -@@ -442,7 +404,7 @@ - fi - if test x$have_loadso = xyes && \ - test x$enable_esd_shared = xyes && test x$esd_lib != x; then -- AC_DEFINE_UNQUOTED(SDL_AUDIO_DRIVER_ESD_DYNAMIC, "$esd_lib") -+ AC_DEFINE_UNQUOTED(SDL_AUDIO_DRIVER_ESD_DYNAMIC, "$esd_lib", "") - else - EXTRA_LDFLAGS="$EXTRA_LDFLAGS $ESD_LIBS" - fi -@@ -485,7 +447,7 @@ - arts_lib=`ls -- $arts_lib_spec | sed 's/.*\/\(.*\)/\1/; q'` - echo "-- $arts_lib_spec -> $arts_lib" - -- AC_DEFINE(SDL_AUDIO_DRIVER_ARTS) -+ AC_DEFINE(SDL_AUDIO_DRIVER_ARTS,, "") - SOURCES="$SOURCES $srcdir/src/audio/arts/*.c" - EXTRA_CFLAGS="$EXTRA_CFLAGS $ARTS_CFLAGS" - if test x$have_loadso != xyes && \ -@@ -494,7 +456,7 @@ - fi - if test x$have_loadso = xyes && \ - test x$enable_arts_shared = xyes && test x$arts_lib != x; then -- AC_DEFINE_UNQUOTED(SDL_AUDIO_DRIVER_ARTS_DYNAMIC, "$arts_lib") -+ AC_DEFINE_UNQUOTED(SDL_AUDIO_DRIVER_ARTS_DYNAMIC, "$arts_lib",1,"") - else - EXTRA_LDFLAGS="$EXTRA_LDFLAGS $ARTS_LIBS" - fi -@@ -527,7 +489,7 @@ - fi - AC_MSG_RESULT($have_nas) - if test x$have_nas = xyes; then -- AC_DEFINE(SDL_AUDIO_DRIVER_NAS) -+ AC_DEFINE(SDL_AUDIO_DRIVER_NAS,1,"") - SOURCES="$SOURCES $srcdir/src/audio/nas/*.c" - EXTRA_CFLAGS="$EXTRA_CFLAGS $NAS_CFLAGS" - EXTRA_LDFLAGS="$EXTRA_LDFLAGS $NAS_LIBS" -@@ -543,7 +505,7 @@ - AC_HELP_STRING([--enable-diskaudio], [support the disk writer audio driver [[default=yes]]]), - , enable_diskaudio=yes) - if test x$enable_audio = xyes -a x$enable_diskaudio = xyes; then -- AC_DEFINE(SDL_AUDIO_DRIVER_DISK) -+ AC_DEFINE(SDL_AUDIO_DRIVER_DISK,1,"") - SOURCES="$SOURCES $srcdir/src/audio/disk/*.c" - fi - } -@@ -555,7 +517,7 @@ - AC_HELP_STRING([--enable-dummyaudio], [support the dummy audio driver [[default=yes]]]), - , enable_dummyaudio=yes) - if test x$enable_audio = xyes -a x$enable_dummyaudio = xyes; then -- AC_DEFINE(SDL_AUDIO_DRIVER_DUMMY) -+ AC_DEFINE(SDL_AUDIO_DRIVER_DUMMY,1,"") - SOURCES="$SOURCES $srcdir/src/audio/dummy/*.c" - fi - } -@@ -571,7 +533,7 @@ - AC_CHECK_HEADER(mint/falcon.h, have_mint_falcon_hdr=yes) - if test x$have_mint_falcon_hdr = xyes; then - mintaudio=yes -- AC_DEFINE(SDL_AUDIO_DRIVER_MINT) -+ AC_DEFINE(SDL_AUDIO_DRIVER_MINT,1,"") - SOURCES="$SOURCES $srcdir/src/audio/mint/*.c" - SOURCES="$SOURCES $srcdir/src/audio/mint/*.S" - have_audio=yes -@@ -602,7 +564,7 @@ - AC_PATH_PROG(NASM, nasm) - fi - if test "x$NASM" != x -a "x$NASM" != x'"$NASM"'; then -- AC_DEFINE(SDL_HERMES_BLITTERS) -+ AC_DEFINE(SDL_HERMES_BLITTERS,1,"") - SOURCES="$SOURCES $srcdir/src/hermes/*.asm" - if test x"$NASMFLAGS" = x; then - case $ARCH in -@@ -713,9 +675,9 @@ - CFLAGS="$save_CFLAGS" - - if test x$have_gcc_altivec = xyes; then -- AC_DEFINE(SDL_ALTIVEC_BLITTERS) -+ AC_DEFINE(SDL_ALTIVEC_BLITTERS,1,"") - if test x$have_altivec_h_hdr = xyes; then -- AC_DEFINE(HAVE_ALTIVEC_H) -+ AC_DEFINE(HAVE_ALTIVEC_H,1,"") - fi - EXTRA_CFLAGS="$EXTRA_CFLAGS $altivec_CFLAGS" - fi -@@ -758,7 +720,7 @@ - - if test x$enable_ipod = xyes; then - EXTRA_CFLAGS="$EXTRA_CFLAGS -DIPOD" -- AC_DEFINE(SDL_VIDEO_DRIVER_IPOD) -+ AC_DEFINE(SDL_VIDEO_DRIVER_IPOD,1,"") - SOURCES="$SOURCES $srcdir/src/video/ipod/*.c" - fi - } -@@ -792,7 +754,7 @@ - EXTRA_CFLAGS="$EXTRA_CFLAGS -DENABLE_NANOX_DIRECT_FB" - fi - -- AC_DEFINE(SDL_VIDEO_DRIVER_NANOX) -+ AC_DEFINE(SDL_VIDEO_DRIVER_NANOX,1,"") - SOURCES="$SOURCES $srcdir/src/video/nanox/*.c" - EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lnano-X" - have_video=yes -@@ -881,7 +843,7 @@ - CFLAGS="$CFLAGS $X_CFLAGS" - LDFLAGS="$LDFLAGS $X_LIBS" - -- AC_DEFINE(SDL_VIDEO_DRIVER_X11) -+ AC_DEFINE(SDL_VIDEO_DRIVER_X11,1,"") - SOURCES="$SOURCES $srcdir/src/video/x11/*.c" - EXTRA_CFLAGS="$EXTRA_CFLAGS $X_CFLAGS" - -@@ -903,8 +865,8 @@ - test x$enable_x11_shared = xyes && test x$x11_lib != x && test x$x11ext_lib != x; then - echo "-- dynamic libX11 -> $x11_lib" - echo "-- dynamic libX11ext -> $x11ext_lib" -- AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_X11_DYNAMIC, "$x11_lib") -- AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT, "$x11ext_lib") -+ AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_X11_DYNAMIC, "$x11_lib","") -+ AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT, "$x11ext_lib","") - else - enable_x11_shared=no - EXTRA_LDFLAGS="$EXTRA_LDFLAGS $X_LIBS -lX11 -lXext" -@@ -921,20 +883,20 @@ - AC_HELP_STRING([--enable-video-dga], [use DGA 2.0 video driver [[default=yes]]]), - , enable_video_dga=yes) - if test x$enable_dga = xyes -a x$enable_video_dga = xyes; then -- AC_DEFINE(SDL_VIDEO_DRIVER_DGA) -+ AC_DEFINE(SDL_VIDEO_DRIVER_DGA,1,"") - SOURCES="$SOURCES $srcdir/src/video/dga/*.c" - fi - AC_ARG_ENABLE(video-x11-dgamouse, - AC_HELP_STRING([--enable-video-x11-dgamouse], [use X11 DGA for mouse events [[default=yes]]]), - , enable_video_x11_dgamouse=yes) - if test x$enable_dga = xyes -a x$enable_video_x11_dgamouse = xyes; then -- AC_DEFINE(SDL_VIDEO_DRIVER_X11_DGAMOUSE) -+ AC_DEFINE(SDL_VIDEO_DRIVER_X11_DGAMOUSE,1,"") - fi - AC_ARG_ENABLE(video-x11-vm, - AC_HELP_STRING([--enable-video-x11-vm], [use X11 VM extension for fullscreen [[default=yes]]]), - , enable_video_x11_vm=yes) - if test x$enable_video_x11_vm = xyes; then -- AC_DEFINE(SDL_VIDEO_DRIVER_X11_VIDMODE) -+ AC_DEFINE(SDL_VIDEO_DRIVER_X11_VIDMODE,1,"") - SOURCES="$SOURCES $srcdir/src/video/Xext/Xxf86vm/*.c" - fi - AC_ARG_ENABLE(video-x11-xv, -@@ -948,14 +910,14 @@ - AC_HELP_STRING([--enable-video-x11-xinerama], [enable X11 Xinerama support [[default=yes]]]), - , enable_video_x11_xinerama=yes) - if test x$enable_video_x11_xinerama = xyes; then -- AC_DEFINE(SDL_VIDEO_DRIVER_X11_XINERAMA) -+ AC_DEFINE(SDL_VIDEO_DRIVER_X11_XINERAMA,1,"") - SOURCES="$SOURCES $srcdir/src/video/Xext/Xinerama/*.c" - fi - AC_ARG_ENABLE(video-x11-xme, - AC_HELP_STRING([--enable-video-x11-xme], [enable Xi Graphics XME for fullscreen [[default=yes]]]), - , enable_video_x11_xme=yes) - if test x$enable_video_x11_xme = xyes; then -- AC_DEFINE(SDL_VIDEO_DRIVER_X11_XME) -+ AC_DEFINE(SDL_VIDEO_DRIVER_X11_XME,1,"") - SOURCES="$SOURCES $srcdir/src/video/Xext/XME/*.c" - fi - AC_ARG_ENABLE(video-x11-xrandr, -@@ -972,8 +934,8 @@ - if test x$enable_x11_shared = xyes && test x$xrandr_lib != x ; then - echo "-- dynamic libXrender -> $xrender_lib" - echo "-- dynamic libXrandr -> $xrandr_lib" -- AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_X11_DYNAMIC_XRENDER, "$xrender_lib") -- AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR, "$xrandr_lib") -+ AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_X11_DYNAMIC_XRENDER, "$xrender_lib","") -+ AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR, "$xrandr_lib","") - definitely_enable_video_x11_xrandr=yes - else - AC_CHECK_LIB(Xrender, XRenderQueryExtension, have_xrender_lib=yes) -@@ -986,7 +948,7 @@ - fi - fi - if test x$definitely_enable_video_x11_xrandr = xyes; then -- AC_DEFINE(SDL_VIDEO_DRIVER_X11_XRANDR) -+ AC_DEFINE(SDL_VIDEO_DRIVER_X11_XRANDR,1,"") - fi - AC_ARG_ENABLE(video-x11-dpms, - AC_HELP_STRING([--enable-video-x11-dpms], [enable X11 DPMS extension [[default=yes]]]), -@@ -998,7 +960,7 @@ - [#include - ]) - if test x$have_dpms_h_hdr = xyes; then -- AC_DEFINE(SDL_VIDEO_DRIVER_X11_DPMS) -+ AC_DEFINE(SDL_VIDEO_DRIVER_X11_DPMS,1,"") - fi - fi - fi -@@ -1026,7 +988,7 @@ - ]) - AC_MSG_RESULT($video_photon) - if test x$video_photon = xyes; then -- AC_DEFINE(SDL_VIDEO_DRIVER_PHOTON) -+ AC_DEFINE(SDL_VIDEO_DRIVER_PHOTON,1,"") - SOURCES="$SOURCES $srcdir/src/video/photon/*.c" - EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lph" - have_video=yes -@@ -1040,7 +1002,7 @@ - CheckBWINDOW() - { - if test x$enable_video = xyes; then -- AC_DEFINE(SDL_VIDEO_DRIVER_BWINDOW) -+ AC_DEFINE(SDL_VIDEO_DRIVER_BWINDOW,1,"") - SOURCES="$SOURCES $srcdir/src/video/bwindow/*.cc" - have_video=yes - fi -@@ -1063,7 +1025,7 @@ - ]) - AC_MSG_RESULT($have_carbon) - if test x$have_carbon = xyes; then -- AC_DEFINE(SDL_VIDEO_DRIVER_TOOLBOX) -+ AC_DEFINE(SDL_VIDEO_DRIVER_TOOLBOX,1,"") - SOURCES="$SOURCES $srcdir/src/video/maccommon/*.c" - SOURCES="$SOURCES $srcdir/src/video/macrom/*.c" - have_video=yes -@@ -1092,7 +1054,7 @@ - AC_MSG_RESULT($have_cocoa) - CFLAGS="$save_CFLAGS" - if test x$have_cocoa = xyes; then -- AC_DEFINE(SDL_VIDEO_DRIVER_QUARTZ) -+ AC_DEFINE(SDL_VIDEO_DRIVER_QUARTZ,1,"") - SOURCES="$SOURCES $srcdir/src/video/quartz/*.m" - have_video=yes - fi -@@ -1118,7 +1080,7 @@ - ]) - AC_MSG_RESULT($video_fbcon) - if test x$video_fbcon = xyes; then -- AC_DEFINE(SDL_VIDEO_DRIVER_FBCON) -+ AC_DEFINE(SDL_VIDEO_DRIVER_FBCON,1,"") - SOURCES="$SOURCES $srcdir/src/video/fbcon/*.c" - have_video=yes - fi -@@ -1163,7 +1125,7 @@ - fi - - if test x$video_directfb = xyes; then -- AC_DEFINE(SDL_VIDEO_DRIVER_DIRECTFB) -+ AC_DEFINE(SDL_VIDEO_DRIVER_DIRECTFB,1,"") - SOURCES="$SOURCES $srcdir/src/video/directfb/*.c" - EXTRA_CFLAGS="$EXTRA_CFLAGS $DIRECTFB_CFLAGS" - EXTRA_LDFLAGS="$EXTRA_LDFLAGS $DIRECTFB_LIBS" -@@ -1190,7 +1152,7 @@ - ]) - AC_MSG_RESULT($video_ps2gs) - if test x$video_ps2gs = xyes; then -- AC_DEFINE(SDL_VIDEO_DRIVER_PS2GS) -+ AC_DEFINE(SDL_VIDEO_DRIVER_PS2GS,1,"") - SOURCES="$SOURCES $srcdir/src/video/ps2gs/*.c" - have_video=yes - fi -@@ -1215,7 +1177,7 @@ - ]) - AC_MSG_RESULT($video_ggi) - if test x$video_ggi = xyes; then -- AC_DEFINE(SDL_VIDEO_DRIVER_GGI) -+ AC_DEFINE(SDL_VIDEO_DRIVER_GGI,1,"") - SOURCES="$SOURCES $srcdir/src/video/ggi/*.c" - EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lggi -lgii -lgg" - have_video=yes -@@ -1245,7 +1207,7 @@ - ]) - AC_MSG_RESULT($video_svga) - if test x$video_svga = xyes; then -- AC_DEFINE(SDL_VIDEO_DRIVER_SVGALIB) -+ AC_DEFINE(SDL_VIDEO_DRIVER_SVGALIB,1,"") - SOURCES="$SOURCES $srcdir/src/video/svga/*.c" - EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lvga" - have_video=yes -@@ -1277,7 +1239,7 @@ - ]) - AC_MSG_RESULT($video_vgl) - if test x$video_vgl = xyes; then -- AC_DEFINE(SDL_VIDEO_DRIVER_VGL) -+ AC_DEFINE(SDL_VIDEO_DRIVER_VGL,1,"") - SOURCES="$SOURCES $srcdir/src/video/vgl/*.c" - EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lvgl" - have_video=yes -@@ -1305,7 +1267,7 @@ - ]) - AC_MSG_RESULT($video_wscons) - if test x$video_wscons = xyes; then -- AC_DEFINE(SDL_VIDEO_DRIVER_WSCONS) -+ AC_DEFINE(SDL_VIDEO_DRIVER_WSCONS,1,"") - SOURCES="$SOURCES $srcdir/src/video/wscons/*.c" - have_video=yes - fi -@@ -1330,7 +1292,7 @@ - ]) - AC_MSG_RESULT($video_aalib) - if test x$video_aalib = xyes; then -- AC_DEFINE(SDL_VIDEO_DRIVER_AALIB) -+ AC_DEFINE(SDL_VIDEO_DRIVER_AALIB,1,"") - SOURCES="$SOURCES $srcdir/src/video/aalib/*.c" - EXTRA_LDFLAGS="$EXTRA_LDFLAGS -laa" - have_video=yes -@@ -1360,7 +1322,7 @@ - CXXFLAGS="$OLD_CXX" - AC_MSG_RESULT($video_qtopia) - if test x$video_qtopia = xyes; then -- AC_DEFINE(SDL_VIDEO_DRIVER_QTOPIA) -+ AC_DEFINE(SDL_VIDEO_DRIVER_QTOPIA,1,"") - SOURCES="$SOURCES $srcdir/src/video/qtopia/*.cc" - SDLMAIN_SOURCES="$srcdir/src/main/qtopia/*.cc" - EXTRA_CFLAGS="$EXTRA_CFLAGS $QTOPIA_FLAGS" -@@ -1389,7 +1351,7 @@ - ]) - AC_MSG_RESULT($video_picogui) - if test x$video_picogui = xyes; then -- AC_DEFINE(SDL_VIDEO_DRIVER_PICOGUI) -+ AC_DEFINE(SDL_VIDEO_DRIVER_PICOGUI,1,"") - SOURCES="$SOURCES $srcdir/src/video/picogui/*.c" - SDL_LIBS="$SDL_LIBS -lpgui" - have_video=yes -@@ -1413,7 +1375,7 @@ - video_xbios=no - if test x$enable_video = xyes -a x$enable_video_xbios = xyes; then - video_xbios=yes -- AC_DEFINE(SDL_VIDEO_DRIVER_XBIOS) -+ AC_DEFINE(SDL_VIDEO_DRIVER_XBIOS,1,"") - SOURCES="$SOURCES $srcdir/src/video/xbios/*.c" - have_video=yes - fi -@@ -1431,7 +1393,7 @@ - AC_CHECK_LIB(gem, appl_init, have_gem_lib=yes) - if test x$have_gem_hdr = xyes -a x$have_gem_lib = xyes; then - video_gem=yes -- AC_DEFINE(SDL_VIDEO_DRIVER_GEM) -+ AC_DEFINE(SDL_VIDEO_DRIVER_GEM,1,"") - SOURCES="$SOURCES $srcdir/src/video/gem/*.c" - SDL_LIBS="$SDL_LIBS -lgem" - have_video=yes -@@ -1446,7 +1408,7 @@ - AC_HELP_STRING([--enable-video-dummy], [use dummy video driver [[default=yes]]]), - , enable_video_dummy=yes) - if test x$enable_video_dummy = xyes; then -- AC_DEFINE(SDL_VIDEO_DRIVER_DUMMY) -+ AC_DEFINE(SDL_VIDEO_DRIVER_DUMMY,1,"") - SOURCES="$SOURCES $srcdir/src/video/dummy/*.c" - have_video=yes - fi -@@ -1472,8 +1434,8 @@ - ]) - AC_MSG_RESULT($video_opengl) - if test x$video_opengl = xyes; then -- AC_DEFINE(SDL_VIDEO_OPENGL) -- AC_DEFINE(SDL_VIDEO_OPENGL_GLX) -+ AC_DEFINE(SDL_VIDEO_OPENGL,1,"") -+ AC_DEFINE(SDL_VIDEO_OPENGL_GLX,1,"") - fi - fi - } -@@ -1492,7 +1454,7 @@ - ]) - AC_MSG_RESULT($video_opengl) - if test x$video_opengl = xyes; then -- AC_DEFINE(SDL_VIDEO_OPENGL) -+ AC_DEFINE(SDL_VIDEO_OPENGL,1,"") - EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lGL" - fi - fi -@@ -1502,8 +1464,8 @@ - CheckWIN32GL() - { - if test x$enable_video = xyes -a x$enable_video_opengl = xyes; then -- AC_DEFINE(SDL_VIDEO_OPENGL) -- AC_DEFINE(SDL_VIDEO_OPENGL_WGL) -+ AC_DEFINE(SDL_VIDEO_OPENGL,1,"") -+ AC_DEFINE(SDL_VIDEO_OPENGL_WGL,1,"") - fi - } - -@@ -1511,7 +1473,7 @@ - CheckBeGL() - { - if test x$enable_video = xyes -a x$enable_video_opengl = xyes; then -- AC_DEFINE(SDL_VIDEO_OPENGL) -+ AC_DEFINE(SDL_VIDEO_OPENGL,1,"") - EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lGL" - fi - } -@@ -1520,7 +1482,7 @@ - CheckMacGL() - { - if test x$enable_video = xyes -a x$enable_video_opengl = xyes; then -- AC_DEFINE(SDL_VIDEO_OPENGL) -+ AC_DEFINE(SDL_VIDEO_OPENGL,1,"") - case "$host" in - *-*-darwin*) - if test x$enable_video_cocoa = xyes; then -@@ -1552,8 +1514,8 @@ - OSMESA_CFLAGS=`$OSMESA_CONFIG --cflags` - OSMESA_LIBS=`$OSMESA_CONFIG --libs` - fi -- AC_DEFINE(SDL_VIDEO_OPENGL) -- AC_DEFINE(SDL_VIDEO_OPENGL_OSMESA) -+ AC_DEFINE(SDL_VIDEO_OPENGL,1,"") -+ AC_DEFINE(SDL_VIDEO_OPENGL_OSMESA,1,"") - SDL_CFLAGS="$SDL_CFLAGS $OSMESA_CFLAGS" - SDL_LIBS="$SDL_LIBS $OSMESA_LIBS" - -@@ -1563,7 +1525,7 @@ - if test "x$enable_osmesa_shared" = "xyes" -a "x$enable_atari_ldg" = "xyes"; then - # Dynamic linking - if test "x$have_osmesa_hdr" = "xyes"; then -- AC_DEFINE(SDL_VIDEO_OPENGL_OSMESA_DYNAMIC) -+ AC_DEFINE(SDL_VIDEO_OPENGL_OSMESA_DYNAMIC,1,"") - fi - fi - fi -@@ -1590,7 +1552,7 @@ - ]) - AC_MSG_RESULT($use_input_events) - if test x$use_input_events = xyes; then -- AC_DEFINE(SDL_INPUT_LINUXEV) -+ AC_DEFINE(SDL_INPUT_LINUXEV,1,"") - fi - fi - } -@@ -1612,7 +1574,7 @@ - ]) - AC_MSG_RESULT($enable_input_tslib) - if test x$enable_input_tslib = xyes; then -- AC_DEFINE(SDL_INPUT_TSLIB) -+ AC_DEFINE(SDL_INPUT_TSLIB,1,"") - EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lts" - fi - fi -@@ -1635,7 +1597,7 @@ - AC_MSG_CHECKING(pth) - AC_MSG_RESULT($use_pth) - if test "x$use_pth" = xyes; then -- AC_DEFINE(SDL_THREAD_PTH) -+ AC_DEFINE(SDL_THREAD_PTH,1,"") - SOURCES="$SOURCES $srcdir/src/thread/pth/*.c" - SOURCES="$SOURCES $srcdir/src/thread/generic/SDL_syssem.c" - SDL_CFLAGS="$SDL_CFLAGS `$PTH_CONFIG --cflags`" -@@ -1741,7 +1703,7 @@ - - # Do futher testing if we have pthread support... - if test x$use_pthreads = xyes; then -- AC_DEFINE(SDL_THREAD_PTHREAD) -+ AC_DEFINE(SDL_THREAD_PTHREAD,1,"") - EXTRA_CFLAGS="$EXTRA_CFLAGS $pthread_cflags" - EXTRA_LDFLAGS="$EXTRA_LDFLAGS $pthread_lib" - SDL_CFLAGS="$SDL_CFLAGS $pthread_cflags" -@@ -1763,7 +1725,7 @@ - pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE); - ],[ - has_recursive_mutexes=yes -- AC_DEFINE(SDL_THREAD_PTHREAD_RECURSIVE_MUTEX) -+ AC_DEFINE(SDL_THREAD_PTHREAD_RECURSIVE_MUTEX,1,"") - ]) - fi - if test x$has_recursive_mutexes = xno; then -@@ -1774,7 +1736,7 @@ - pthread_mutexattr_setkind_np(&attr, PTHREAD_MUTEX_RECURSIVE_NP); - ],[ - has_recursive_mutexes=yes -- AC_DEFINE(SDL_THREAD_PTHREAD_RECURSIVE_MUTEX_NP) -+ AC_DEFINE(SDL_THREAD_PTHREAD_RECURSIVE_MUTEX_NP,1,"") - ]) - fi - AC_MSG_RESULT($has_recursive_mutexes) -@@ -1849,7 +1811,7 @@ - fi - - if test x$enable_video = xyes; then -- AC_DEFINE(SDL_VIDEO_DRIVER_WINDIB) -+ AC_DEFINE(SDL_VIDEO_DRIVER_WINDIB,1,"") - SOURCES="$SOURCES $srcdir/src/video/wincommon/*.c" - SOURCES="$SOURCES $srcdir/src/video/windib/*.c" - have_video=yes -@@ -1871,7 +1833,7 @@ - have_directx=yes - fi - if test x$enable_video = xyes -a x$have_directx = xyes; then -- AC_DEFINE(SDL_VIDEO_DRIVER_DDRAW) -+ AC_DEFINE(SDL_VIDEO_DRIVER_DDRAW,1,"") - SOURCES="$SOURCES $srcdir/src/video/windx5/*.c" - have_video=yes - fi -@@ -1904,9 +1866,9 @@ - AC_CHECK_LIB(ltdl, dlopen, EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lltdl"))) - AC_CHECK_LIB(dl, dlvsym, have_dlvsym=yes) - if test x$have_dlvsym = xyes; then -- AC_DEFINE(HAVE_DLVSYM) -+ AC_DEFINE(HAVE_DLVSYM,1,"") - fi -- AC_DEFINE(SDL_LOADSO_DLOPEN) -+ AC_DEFINE(SDL_LOADSO_DLOPEN,1,"") - SOURCES="$SOURCES $srcdir/src/loadso/dlopen/*.c" - have_loadso=yes - fi -@@ -1923,7 +1885,7 @@ - AC_CHECK_HEADER(ldg.h, have_ldg_hdr=yes) - AC_CHECK_LIB(ldg, ldg_open, have_ldg_lib=yes, have_ldg_lib=no, -lgem) - if test x$have_ldg_hdr = xyes -a x$have_ldg_lib = xyes; then -- AC_DEFINE(SDL_LOADSO_LDG) -+ AC_DEFINE(SDL_LOADSO_LDG,1,"") - SOURCES="$SOURCES $srcdir/src/loadso/mint/*.c" - SDL_LIBS="$SDL_LIBS -lldg -lgem" - have_loadso=yes -@@ -2049,11 +2011,11 @@ - have_machine_joystick=yes - ]) - if test x$have_machine_joystick = xyes; then -- AC_DEFINE(SDL_JOYSTICK_USBHID_MACHINE_JOYSTICK_H) -+ AC_DEFINE(SDL_JOYSTICK_USBHID_MACHINE_JOYSTICK_H,1,"") - fi - AC_MSG_RESULT($have_machine_joystick) - -- AC_DEFINE(SDL_JOYSTICK_USBHID) -+ AC_DEFINE(SDL_JOYSTICK_USBHID,1,"") - SOURCES="$SOURCES $srcdir/src/joystick/bsd/*.c" - EXTRA_CFLAGS="$EXTRA_CFLAGS $USB_CFLAGS" - EXTRA_LDFLAGS="$EXTRA_LDFLAGS $USB_LIBS" -@@ -2072,7 +2034,7 @@ - if test x$enable_clock_gettime = xyes; then - AC_CHECK_LIB(rt, clock_gettime, have_clock_gettime=yes) - if test x$have_clock_gettime = xyes; then -- AC_DEFINE(HAVE_CLOCK_GETTIME) -+ AC_DEFINE(HAVE_CLOCK_GETTIME,1,"") - EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lrt" - fi - fi -@@ -2103,7 +2065,7 @@ - CheckIPod - # Set up files for the timer library - if test x$enable_timers = xyes; then -- AC_DEFINE(SDL_TIMER_UNIX) -+ AC_DEFINE(SDL_TIMER_UNIX,1,"") - SOURCES="$SOURCES $srcdir/src/timer/unix/*.c" - have_timers=yes - fi -@@ -2166,17 +2128,17 @@ - if test x$enable_audio = xyes; then - case $ARCH in - sysv5|solaris|hpux) -- AC_DEFINE(SDL_AUDIO_DRIVER_SUNAUDIO) -+ AC_DEFINE(SDL_AUDIO_DRIVER_SUNAUDIO,1,"") - SOURCES="$SOURCES $srcdir/src/audio/sun/*.c" - have_audio=yes - ;; - netbsd|openbsd) -- AC_DEFINE(SDL_AUDIO_DRIVER_BSD) -+ AC_DEFINE(SDL_AUDIO_DRIVER_BSD,1,"") - SOURCES="$SOURCES $srcdir/src/audio/bsd/*.c" - have_audio=yes - ;; - aix) -- AC_DEFINE(SDL_AUDIO_DRIVER_PAUD) -+ AC_DEFINE(SDL_AUDIO_DRIVER_PAUD,1,"") - SOURCES="$SOURCES $srcdir/src/audio/paudio/*.c" - have_audio=yes - ;; -@@ -2186,7 +2148,7 @@ - if test x$enable_joystick = xyes; then - case $ARCH in - linux) -- AC_DEFINE(SDL_JOYSTICK_LINUX) -+ AC_DEFINE(SDL_JOYSTICK_LINUX,1,"") - SOURCES="$SOURCES $srcdir/src/joystick/linux/*.c" - have_joystick=yes - ;; -@@ -2196,32 +2158,32 @@ - if test x$enable_cdrom = xyes; then - case $ARCH in - linux|solaris) -- AC_DEFINE(SDL_CDROM_LINUX) -+ AC_DEFINE(SDL_CDROM_LINUX,1,"") - SOURCES="$SOURCES $srcdir/src/cdrom/linux/*.c" - have_cdrom=yes - ;; - *freebsd*) -- AC_DEFINE(SDL_CDROM_FREEBSD) -+ AC_DEFINE(SDL_CDROM_FREEBSD,1,"") - SOURCES="$SOURCES $srcdir/src/cdrom/freebsd/*.c" - have_cdrom=yes - ;; - *openbsd*|*netbsd*) -- AC_DEFINE(SDL_CDROM_OPENBSD) -+ AC_DEFINE(SDL_CDROM_OPENBSD,1,"") - SOURCES="$SOURCES $srcdir/src/cdrom/openbsd/*.c" - have_cdrom=yes - ;; - bsdi) -- AC_DEFINE(SDL_CDROM_BSDI) -+ AC_DEFINE(SDL_CDROM_BSDI,1,"") - SOURCES="$SOURCES $srcdir/src/cdrom/bsdi/*.c" - have_cdrom=yes - ;; - aix) -- AC_DEFINE(SDL_CDROM_AIX) -+ AC_DEFINE(SDL_CDROM_AIX,1,"") - SOURCES="$SOURCES $srcdir/src/cdrom/aix/*.c" - have_cdrom=yes - ;; - osf) -- AC_DEFINE(SDL_CDROM_OSF) -+ AC_DEFINE(SDL_CDROM_OSF,1,"") - SOURCES="$SOURCES $srcdir/src/cdrom/osf/*.c" - have_cdrom=yes - ;; -@@ -2229,7 +2191,7 @@ - fi - # Set up files for the thread library - if test x$enable_threads = xyes -a x$use_pthreads != xyes -a x$use_pth != xyes -a x$ARCH = xirix; then -- AC_DEFINE(SDL_THREAD_SPROC) -+ AC_DEFINE(SDL_THREAD_SPROC,1,"") - SOURCES="$SOURCES $srcdir/src/thread/irix/*.c" - SOURCES="$SOURCES $srcdir/src/thread/generic/SDL_sysmutex.c" - SOURCES="$SOURCES $srcdir/src/thread/generic/SDL_syscond.c" -@@ -2237,7 +2199,7 @@ - fi - # Set up files for the timer library - if test x$enable_timers = xyes; then -- AC_DEFINE(SDL_TIMER_UNIX) -+ AC_DEFINE(SDL_TIMER_UNIX,1,"") - SOURCES="$SOURCES $srcdir/src/timer/unix/*.c" - have_timers=yes - fi -@@ -2256,20 +2218,20 @@ - CheckPTHREAD - # Set up files for the audio library - if test x$enable_audio = xyes; then -- AC_DEFINE(SDL_AUDIO_DRIVER_QNXNTO) -+ AC_DEFINE(SDL_AUDIO_DRIVER_QNXNTO,1,"") - SOURCES="$SOURCES $srcdir/src/audio/nto/*.c" - EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lasound" - have_audio=yes - fi - # Set up files for the cdrom library - if test x$enable_cdrom = xyes; then -- AC_DEFINE(SDL_CDROM_QNX) -+ AC_DEFINE(SDL_CDROM_QNX,1,"") - SOURCES="$SOURCES $srcdir/src/cdrom/qnx/*.c" - have_cdrom=yes - fi - # Set up files for the timer library - if test x$enable_timers = xyes; then -- AC_DEFINE(SDL_TIMER_UNIX) -+ AC_DEFINE(SDL_TIMER_UNIX,1,"") - SOURCES="$SOURCES $srcdir/src/timer/unix/*.c" - have_timers=yes - fi -@@ -2294,29 +2256,29 @@ - CheckNASM - # Set up files for the audio library - if test x$enable_audio = xyes; then -- AC_DEFINE(SDL_AUDIO_DRIVER_WAVEOUT) -+ AC_DEFINE(SDL_AUDIO_DRIVER_WAVEOUT,1,"") - SOURCES="$SOURCES $srcdir/src/audio/windib/*.c" - if test x$have_directx = xyes; then -- AC_DEFINE(SDL_AUDIO_DRIVER_DSOUND) -+ AC_DEFINE(SDL_AUDIO_DRIVER_DSOUND,1,"") - SOURCES="$SOURCES $srcdir/src/audio/windx5/*.c" - fi - have_audio=yes - fi - # Set up files for the joystick library - if test x$enable_joystick = xyes; then -- AC_DEFINE(SDL_JOYSTICK_WINMM) -+ AC_DEFINE(SDL_JOYSTICK_WINMM,1,"") - SOURCES="$SOURCES $srcdir/src/joystick/win32/*.c" - have_joystick=yes - fi - # Set up files for the cdrom library - if test x$enable_cdrom = xyes; then -- AC_DEFINE(SDL_CDROM_WIN32) -+ AC_DEFINE(SDL_CDROM_WIN32,1,"") - SOURCES="$SOURCES $srcdir/src/cdrom/win32/*.c" - have_cdrom=yes - fi - # Set up files for the thread library - if test x$enable_threads = xyes; then -- AC_DEFINE(SDL_THREAD_WIN32) -+ AC_DEFINE(SDL_THREAD_WIN32,1,"") - SOURCES="$SOURCES $srcdir/src/thread/win32/SDL_sysmutex.c" - SOURCES="$SOURCES $srcdir/src/thread/win32/SDL_syssem.c" - SOURCES="$SOURCES $srcdir/src/thread/win32/SDL_systhread.c" -@@ -2325,13 +2287,13 @@ - fi - # Set up files for the timer library - if test x$enable_timers = xyes; then -- AC_DEFINE(SDL_TIMER_WIN32) -+ AC_DEFINE(SDL_TIMER_WIN32,1,"") - SOURCES="$SOURCES $srcdir/src/timer/win32/*.c" - have_timers=yes - fi - # Set up files for the shared object loading library - if test x$enable_loadso = xyes; then -- AC_DEFINE(SDL_LOADSO_WIN32) -+ AC_DEFINE(SDL_LOADSO_WIN32,1,"") - SOURCES="$SOURCES $srcdir/src/loadso/win32/*.c" - have_loadso=yes - fi -@@ -2356,25 +2318,25 @@ - CheckBeGL - # Set up files for the audio library - if test x$enable_audio = xyes; then -- AC_DEFINE(SDL_AUDIO_DRIVER_BAUDIO) -+ AC_DEFINE(SDL_AUDIO_DRIVER_BAUDIO,1,"") - SOURCES="$SOURCES $srcdir/src/audio/baudio/*.cc" - have_audio=yes - fi - # Set up files for the joystick library - if test x$enable_joystick = xyes; then -- AC_DEFINE(SDL_JOYSTICK_BEOS) -+ AC_DEFINE(SDL_JOYSTICK_BEOS,1,"") - SOURCES="$SOURCES $srcdir/src/joystick/beos/*.cc" - have_joystick=yes - fi - # Set up files for the cdrom library - if test x$enable_cdrom = xyes; then -- AC_DEFINE(SDL_CDROM_BEOS) -+ AC_DEFINE(SDL_CDROM_BEOS,1,"") - SOURCES="$SOURCES $srcdir/src/cdrom/beos/*.cc" - have_cdrom=yes - fi - # Set up files for the thread library - if test x$enable_threads = xyes; then -- AC_DEFINE(SDL_THREAD_BEOS) -+ AC_DEFINE(SDL_THREAD_BEOS,1,"") - SOURCES="$SOURCES $srcdir/src/thread/beos/*.c" - SOURCES="$SOURCES $srcdir/src/thread/generic/SDL_sysmutex.c" - SOURCES="$SOURCES $srcdir/src/thread/generic/SDL_syscond.c" -@@ -2382,13 +2344,13 @@ - fi - # Set up files for the timer library - if test x$enable_timers = xyes; then -- AC_DEFINE(SDL_TIMER_BEOS) -+ AC_DEFINE(SDL_TIMER_BEOS,1,"") - SOURCES="$SOURCES $srcdir/src/timer/beos/*.c" - have_timers=yes - fi - # Set up files for the shared object loading library - if test x$enable_loadso = xyes; then -- AC_DEFINE(SDL_LOADSO_BEOS) -+ AC_DEFINE(SDL_LOADSO_BEOS,1,"") - SOURCES="$SOURCES $srcdir/src/loadso/beos/*.c" - have_loadso=yes - fi -@@ -2425,7 +2387,7 @@ - # Set up files for the shared object loading library - # (this needs to be done before the dynamic X11 check) - if test x$enable_loadso = xyes -a x$have_dlopen != xyes; then -- AC_DEFINE(SDL_LOADSO_DLCOMPAT) -+ AC_DEFINE(SDL_LOADSO_DLCOMPAT,1,"") - SOURCES="$SOURCES $srcdir/src/loadso/macosx/*.c" - have_loadso=yes - fi -@@ -2443,28 +2405,28 @@ - - # Set up files for the audio library - if test x$enable_audio = xyes; then -- AC_DEFINE(SDL_AUDIO_DRIVER_COREAUDIO) -+ AC_DEFINE(SDL_AUDIO_DRIVER_COREAUDIO,1,"") - SOURCES="$SOURCES $srcdir/src/audio/macosx/*.c" -- AC_DEFINE(SDL_AUDIO_DRIVER_SNDMGR) -+ AC_DEFINE(SDL_AUDIO_DRIVER_SNDMGR,1,"") - SOURCES="$SOURCES $srcdir/src/audio/macrom/*.c" - have_audio=yes - fi - # Set up files for the joystick library - if test x$enable_joystick = xyes; then -- AC_DEFINE(SDL_JOYSTICK_IOKIT) -+ AC_DEFINE(SDL_JOYSTICK_IOKIT,1,"") - SOURCES="$SOURCES $srcdir/src/joystick/darwin/*.c" - EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,IOKit" - have_joystick=yes - fi - # Set up files for the cdrom library - if test x$enable_cdrom = xyes; then -- AC_DEFINE(SDL_CDROM_MACOSX) -+ AC_DEFINE(SDL_CDROM_MACOSX,1,"") - SOURCES="$SOURCES $srcdir/src/cdrom/macosx/*.c" - have_cdrom=yes - fi - # Set up files for the timer library - if test x$enable_timers = xyes; then -- AC_DEFINE(SDL_TIMER_UNIX) -+ AC_DEFINE(SDL_TIMER_UNIX,1,"") - SOURCES="$SOURCES $srcdir/src/timer/unix/*.c" - have_timers=yes - fi -@@ -2500,30 +2462,30 @@ - # Set up files for the audio library - if test x$enable_threads = xyes -a x$enable_pth = xyes; then - if test x$enable_audio = xyes; then -- AC_DEFINE(SDL_AUDIO_DRIVER_SUNAUDIO) -+ AC_DEFINE(SDL_AUDIO_DRIVER_SUNAUDIO,1,"") - SOURCES="$SOURCES $srcdir/src/audio/sun/*.c" - have_audio=yes - fi - fi - # Set up files for the joystick library - if test x$enable_joystick = xyes; then -- AC_DEFINE(SDL_JOYSTICK_MINT) -+ AC_DEFINE(SDL_JOYSTICK_MINT,1,"") - SOURCES="$SOURCES $srcdir/src/joystick/mint/*.c" - have_joystick=yes - fi - # Set up files for the cdrom library - if test x$enable_cdrom = xyes; then -- AC_DEFINE(SDL_CDROM_MINT) -+ AC_DEFINE(SDL_CDROM_MINT,1,"") - SOURCES="$SOURCES $srcdir/src/cdrom/mint/*.c" - have_cdrom=yes - fi - # Set up files for the timer library - if test x$enable_timers = xyes; then - if test x$enable_threads = xyes -a x$enable_pth = xyes; then -- AC_DEFINE(SDL_TIMER_UNIX) -+ AC_DEFINE(SDL_TIMER_UNIX,1,"") - SOURCES="$SOURCES $srcdir/src/timer/unix/*.c" - else -- AC_DEFINE(SDL_TIMER_MINT) -+ AC_DEFINE(SDL_TIMER_MIN,1,""T) - SOURCES="$SOURCES $srcdir/src/timer/mint/*.c" - SOURCES="$SOURCES $srcdir/src/timer/mint/*.S" - fi -@@ -2536,20 +2498,20 @@ - CheckPTHREAD - # Set up files for the video library - if test x$enable_video = xyes; then -- AC_DEFINE(SDL_VIDEO_DRIVER_RISCOS) -+ AC_DEFINE(SDL_VIDEO_DRIVER_RISCOS,1,"") - SOURCES="$SOURCES $srcdir/src/video/riscos/*.c" - SOURCES="$SOURCES $srcdir/src/video/riscos/*.S" - have_video=yes - fi - # Set up files for the joystick library - if test x$enable_joystick = xyes; then -- AC_DEFINE(SDL_JOYSTICK_RISCOS) -+ AC_DEFINE(SDL_JOYSTICK_RISCOS,1,"") - SOURCES="$SOURCES $srcdir/src/joystick/riscos/*.c" - have_joystick=yes - fi - # Set up files for the timer library - if test x$enable_timers = xyes; then -- AC_DEFINE(SDL_TIMER_RISCOS) -+ AC_DEFINE(SDL_TIMER_RISCOS,1,"") - SOURCES="$SOURCES $srcdir/src/timer/riscos/*.c" - have_timers=yes - fi -@@ -2566,31 +2528,31 @@ - # Verify that we have all the platform specific files we need - if test x$have_joystick != xyes; then - if test x$enable_joystick = xyes; then -- AC_DEFINE(SDL_JOYSTICK_DISABLED) -+ AC_DEFINE(SDL_JOYSTICK_DISABLED,1,"") - fi - SOURCES="$SOURCES $srcdir/src/joystick/dummy/*.c" - fi - if test x$have_cdrom != xyes; then - if test x$enable_cdrom = xyes; then -- AC_DEFINE(SDL_CDROM_DISABLED) -+ AC_DEFINE(SDL_CDROM_DISABLED,1,"") - fi - SOURCES="$SOURCES $srcdir/src/cdrom/dummy/*.c" - fi - if test x$have_threads != xyes; then - if test x$enable_threads = xyes; then -- AC_DEFINE(SDL_THREADS_DISABLED) -+ AC_DEFINE(SDL_THREADS_DISABLED,1,"") - fi - SOURCES="$SOURCES $srcdir/src/thread/generic/*.c" - fi - if test x$have_timers != xyes; then - if test x$enable_timers = xyes; then -- AC_DEFINE(SDL_TIMERS_DISABLED) -+ AC_DEFINE(SDL_TIMERS_DISABLED,1,"") - fi - SOURCES="$SOURCES $srcdir/src/timer/dummy/*.c" - fi - if test x$have_loadso != xyes; then - if test x$enable_loadso = xyes; then -- AC_DEFINE(SDL_LOADSO_DISABLED) -+ AC_DEFINE(SDL_LOADSO_DISABLED,1,"") - fi - SOURCES="$SOURCES $srcdir/src/loadso/dummy/*.c" - fi diff --git a/meta/packages/libsdl/files/directfb_obsolete_calls.patch b/meta/packages/libsdl/files/directfb_obsolete_calls.patch deleted file mode 100644 index f3f422cde3..0000000000 --- a/meta/packages/libsdl/files/directfb_obsolete_calls.patch +++ /dev/null @@ -1,33 +0,0 @@ ---- tmp/work/armv5te-angstrom-linux-gnueabi/libsdl-directfb-1.2.9-r1/SDL-1.2.9/src/video/directfb/SDL_DirectFB_video.c 2007-02-18 11:40:38.000000000 -0500 -+++ SDL/src/video/directfb/SDL_DirectFB_video.c 2007-02-18 11:00:07.000000000 -0500 -@@ -376,7 +376,7 @@ - { - int i; - DFBResult ret; -- DFBCardCapabilities caps; -+ DFBGraphicsDeviceDescription caps; - DFBDisplayLayerConfig dlc; - struct DirectFBEnumRect *rect; - IDirectFB *dfb = NULL; -@@ -448,7 +448,7 @@ - - - /* Query card capabilities to get the video memory size */ -- dfb->GetCardCapabilities (dfb, &caps); -+ dfb->GetDeviceDescription (dfb, &caps); - - this->info.wm_available = 1; - this->info.hw_available = 1; -diff -u'rNF^function' tmp/work/armv5te-angstrom-linux-gnueabi/libsdl-directfb-1.2.9-r1/SDL-1.2.9/src/video/directfb/SDL_Direct -/SDL_DirectFB_events.c ---- tmp/work/armv5te-angstrom-linux-gnueabi/libsdl-directfb-1.2.9-r1/SDL-1.2.9/src/video/directfb/SDL_DirectFB_events.c 2004-0 -+++ SDL/src/video/directfb/SDL_DirectFB_events.c 2007-02-18 11:00:07.000000000 -0500 -@@ -161,7 +161,7 @@ - keymap[DIKI_SHIFT_L - DIKI_UNKNOWN] = SDLK_LSHIFT; - keymap[DIKI_SHIFT_R - DIKI_UNKNOWN] = SDLK_RSHIFT; - keymap[DIKI_ALT_L - DIKI_UNKNOWN] = SDLK_LALT; -- keymap[DIKI_ALTGR - DIKI_UNKNOWN] = SDLK_RALT; -+ keymap[DIKI_ALT_R - DIKI_UNKNOWN] = SDLK_RALT; - keymap[DIKI_TAB - DIKI_UNKNOWN] = SDLK_TAB; - keymap[DIKI_ENTER - DIKI_UNKNOWN] = SDLK_RETURN; - keymap[DIKI_SPACE - DIKI_UNKNOWN] = SDLK_SPACE; diff --git a/meta/packages/libsdl/files/extra-keys.patch b/meta/packages/libsdl/files/extra-keys.patch deleted file mode 100644 index f12f0c7efb..0000000000 --- a/meta/packages/libsdl/files/extra-keys.patch +++ /dev/null @@ -1,53 +0,0 @@ -diff -upr --exclude=configure --exclude=Makefile --exclude=Makefile.in libsdl1.2-1.2.4/include/SDL_keysym.h libsdl1.2-1.2.4-arm/include/SDL_keysym.h ---- libsdl1.2-1.2.4/include/SDL_keysym.h 2002-03-06 11:23:01.000000000 +0000 -+++ libsdl1.2-1.2.4-arm/include/SDL_keysym.h 2002-11-08 20:43:09.000000000 +0000 -@@ -286,6 +286,12 @@ typedef enum { - SDLK_EURO = 321, /* Some european keyboards */ - SDLK_UNDO = 322, /* Atari keyboard has Undo */ - -+ SDLK_RECORD = 322, -+ SDLK_CALENDAR = 323, -+ SDLK_TELEPHONE = 324, -+ SDLK_MAIL = 325, -+ SDLK_START = 326, -+ - /* Add any other keys here */ - - SDLK_LAST -diff -upr --exclude=configure --exclude=Makefile --exclude=Makefile.in libsdl1.2-1.2.4/src/video/x11/SDL_x11events.c libsdl1.2-1.2.4-arm/src/video/x11/SDL_x11events.c ---- libsdl1.2-1.2.4/src/video/x11/SDL_x11events.c 2002-03-06 11:23:08.000000000 +0000 -+++ libsdl1.2-1.2.4-arm/src/video/x11/SDL_x11events.c 2002-11-08 21:01:41.000000000 +0000 -@@ -34,6 +34,7 @@ static char rcsid = - #include - #include - #include -+#include - #ifdef __SVR4 - #include - #endif -@@ -655,6 +656,25 @@ SDL_keysym *X11_TranslateKey(Display *di - case 0xFF: - keysym->sym = MISC_keymap[xsym&0xFF]; - break; -+ case 0x1008ff: -+ switch (xsym) { -+ case XF86XK_AudioRecord: -+ keysym->sym = SDLK_RECORD; -+ break; -+ case XF86XK_PowerDown: -+ keysym->sym = SDLK_POWER; -+ break; -+ case XF86XK_Calendar: -+ keysym->sym = SDLK_CALENDAR; -+ break; -+ case XF86XK_Mail: -+ keysym->sym = SDLK_MAIL; -+ break; -+ case XF86XK_Start: -+ keysym->sym = SDLK_START; -+ break; -+ } -+ break; - default: - fprintf(stderr, - "X11: Unknown xsym, sym = 0x%04x\n", diff --git a/meta/packages/libsdl/files/kernel-asm-page.patch b/meta/packages/libsdl/files/kernel-asm-page.patch deleted file mode 100644 index 42bceadfdc..0000000000 --- a/meta/packages/libsdl/files/kernel-asm-page.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/src/video/Xext/Xxf86dga/XF86DGA.c b/src/video/Xext/Xxf86dga/XF86DGA.c -index 4e3d662..de38a3c 100644 ---- a/src/video/Xext/Xxf86dga/XF86DGA.c -+++ b/src/video/Xext/Xxf86dga/XF86DGA.c -@@ -18,7 +18,7 @@ Copyright (c) 1995,1996 The XFree86 Project, Inc - #define HAS_MMAP_ANON - #include - #include --#include /* PAGE_SIZE */ -+#include - #define HAS_SC_PAGESIZE /* _SC_PAGESIZE may be an enum for Linux */ - #define HAS_GETPAGESIZE - #endif /* linux */ diff --git a/meta/packages/libsdl/libsdl-nativesdk_1.2.11.bb b/meta/packages/libsdl/libsdl-nativesdk_1.2.11.bb deleted file mode 100644 index 633a4c284b..0000000000 --- a/meta/packages/libsdl/libsdl-nativesdk_1.2.11.bb +++ /dev/null @@ -1,31 +0,0 @@ -DESCRIPTION = "Simple DirectMedia Layer - native Edition" -HOMEPAGE = "http://www.libsdl.org" -SECTION = "libs" -LICENSE = "LGPL" -DEPENDS = "libx11-nativesdk libxext-nativesdk libxrandr-nativesdk libxrender-nativesdk" -RDEPENDS = "libx11-nativesdk libxrandr-nativesdk libxrender-nativesdk libxext-nativesdk" -PR = "r4" - -SRC_URI = "http://www.libsdl.org/release/SDL-${PV}.tar.gz \ - file://acinclude.m4 \ - file://configure_tweak.patch;patch=1 \ - file://kernel-asm-page.patch;patch=1 " -S = "${WORKDIR}/SDL-${PV}" - -inherit autotools binconfig pkgconfig nativesdk - -EXTRA_OECONF = "--disable-static --disable-debug --disable-cdrom --enable-threads --enable-timers --enable-endian \ - --enable-file --disable-oss --disable-alsa --disable-esd --disable-arts \ - --disable-diskaudio --disable-nas --disable-esd-shared --disable-esdtest \ - --disable-mintaudio --disable-nasm --enable-video-x11 --disable-video-dga \ - --disable-video-fbcon --disable-video-directfb --disable-video-ps2gs \ - --disable-video-xbios --disable-video-gem --disable-video-dummy \ - --disable-video-opengl --enable-input-events --enable-pthreads \ - --disable-video-svga \ - --disable-video-picogui --disable-video-qtopia --enable-dlopen" - -PARALLEL_MAKE = "" - -do_configure_prepend() { - cp ${WORKDIR}/acinclude.m4 ${S}/acinclude.m4 -} diff --git a/meta/packages/libsoup/libsoup-2.4_2.31.2.bb b/meta/packages/libsoup/libsoup-2.4_2.31.2.bb deleted file mode 100644 index 9a00e07da0..0000000000 --- a/meta/packages/libsoup/libsoup-2.4_2.31.2.bb +++ /dev/null @@ -1,17 +0,0 @@ -DESCRIPTION = "An HTTP library implementation in C" -HOMEPAGE = "http://www.gnome.org/" -BUGTRACKER = "https://bugzilla.gnome.org/" - -LICENSE = "LGPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605" - -SECTION = "x11/gnome/libs" -PR = "r0" - -DEPENDS = "glib-2.0 gnutls libxml2 libproxy sqlite3 libgnome-keyring" - -SRC_URI = "http://ftp.gnome.org/pub/GNOME/sources/libsoup/2.31/libsoup-${PV}.tar.bz2" -S = "${WORKDIR}/libsoup-${PV}" - -inherit autotools pkgconfig - diff --git a/meta/packages/libsoup/libsoup-2.4_2.4.1.bb b/meta/packages/libsoup/libsoup-2.4_2.4.1.bb deleted file mode 100644 index f48ac3d6c9..0000000000 --- a/meta/packages/libsoup/libsoup-2.4_2.4.1.bb +++ /dev/null @@ -1,11 +0,0 @@ -DESCRIPTION = "An HTTP library implementation in C" -LICENSE = "GPL" -SECTION = "x11/gnome/libs" - -DEPENDS = "glib-2.0 gnutls libxml2" - -SRC_URI = "http://ftp.gnome.org/pub/GNOME/sources/libsoup/2.4/libsoup-${PV}.tar.bz2" -S = "${WORKDIR}/libsoup-${PV}" - -inherit autotools pkgconfig - diff --git a/meta/packages/libsoup/libsoup_2.2.100.bb b/meta/packages/libsoup/libsoup_2.2.100.bb deleted file mode 100644 index 94efb7f676..0000000000 --- a/meta/packages/libsoup/libsoup_2.2.100.bb +++ /dev/null @@ -1,14 +0,0 @@ -DESCRIPTION = "An HTTP library implementation in C" -LICENSE = "GPL" -SECTION = "x11/gnome/libs" -PR = "r1" - -DEPENDS = "glib-2.0 gnutls libxml2" - -SRC_URI = "http://ftp.gnome.org/pub/GNOME/sources/${PN}/2.2/${PN}-${PV}.tar.bz2" - -inherit autotools pkgconfig - -FILES_${PN} = "${libdir}/lib*.so.*" -FILES_${PN}-dev = "${includedir}/ ${libdir}/" -FILES_${PN}-doc = "${datadir}/" diff --git a/meta/packages/liburcu/liburcu_0.4.6.bb b/meta/packages/liburcu/liburcu_0.4.6.bb deleted file mode 100644 index 503b561d37..0000000000 --- a/meta/packages/liburcu/liburcu_0.4.6.bb +++ /dev/null @@ -1,24 +0,0 @@ -DESCRIPTION = "The userspace read-copy update library by Mathieu Desnoyers" -HOMEPAGE = "http://lttng.org/urcu" -BUGTRACKER = "n/a" - -LICENSE = "LGPLv2.1+ & MIT-style" -LIC_FILES_CHKSUM = "file://LICENSE;md5=b472dc110d38774921e1d5ccb0065fff \ - file://urcu.h;beginline=4;endline=32;md5=4de0d68d3a997643715036d2209ae1d9 \ - file://urcu/uatomic_arch_x86.h;beginline=4;endline=21;md5=220552f72c55b102f2ee35929734ef42" - -PR = "r0" - -SRC_URI = "http://lttng.org/files/urcu/userspace-rcu-${PV}.tar.bz2" - -S = "${WORKDIR}/userspace-rcu-${PV}" - -inherit autotools - -# liburcu, which is only used by lttng-ust, may not build on other -# platforms, e.g., on ARM, liburcu is only supported on ARMv7l while poky -# only supports armv4/armv4t/armv5te. 1 more example: liburcu doesn't support -# MIPS now. -# So here let us first suppport x86/powerpc platforms now. -COMPATIBLE_HOST = '(x86_64.*|i.86.*|powerpc.*)-linux' - diff --git a/meta/packages/libusb/libusb-compat-0.1.3/0.1.0-beta1-gcc3.4-fix.patch b/meta/packages/libusb/libusb-compat-0.1.3/0.1.0-beta1-gcc3.4-fix.patch deleted file mode 100644 index 501ba3fb29..0000000000 --- a/meta/packages/libusb/libusb-compat-0.1.3/0.1.0-beta1-gcc3.4-fix.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: libusb-compat-0.1.0-beta1/configure.ac -=================================================================== ---- libusb-compat-0.1.0-beta1.orig/configure.ac 2008-07-21 13:14:42.000000000 +0200 -+++ libusb-compat-0.1.0-beta1/configure.ac 2008-07-21 13:15:03.000000000 +0200 -@@ -55,7 +55,7 @@ - CFLAGS="$saved_cflags" - - AC_DEFINE([API_EXPORTED], [__attribute__((visibility("default")))], [Default visibility]) --AM_CFLAGS="-std=gnu99 $inline_cflags -Wall -Wundef -Wunused -Wstrict-prototypes -Werror-implicit-function-declaration -Wno-pointer-sign -Wshadow" -+AM_CFLAGS="-std=gnu99 $inline_cflags -Wall -Wundef -Wunused -Wstrict-prototypes -Werror-implicit-function-declaration -Wshadow" - AC_SUBST(AM_CFLAGS) - - AC_CONFIG_FILES([libusb.pc] [libusb-config] [Makefile] [libusb/Makefile] [examples/Makefile]) diff --git a/meta/packages/libusb/libusb-compat_0.1.3.bb b/meta/packages/libusb/libusb-compat_0.1.3.bb deleted file mode 100644 index e8d6338e57..0000000000 --- a/meta/packages/libusb/libusb-compat_0.1.3.bb +++ /dev/null @@ -1,23 +0,0 @@ -DESCRIPTION = "libusb-0.1 compatible layer for libusb1, a drop-in replacement \ -that aims to look, feel and behave exactly like libusb-0.1" -HOMEPAGE = "http://www.libusb.org/" -BUGTRACKER = "http://www.libusb.org/report" -SECTION = "libs" - -LICENSE = "LGPLv2.1+" -LIC_FILES_CHKSUM = "file://LICENSE;md5=f2ac5f3ac4835e8f91324a26a590a423" -DEPENDS = "libusb1" - -# Few packages are known not to work with libusb-compat (e.g. libmtp-1.0.0), -# so here libusb-0.1 is removed completely instead of adding virtual/libusb0. -# Besides, libusb-0.1 uses a per 1ms polling that hurts a lot to power -# consumption. -PROVIDES = "libusb" - -PE = "1" -PR = "r0" - -SRC_URI = "${SOURCEFORGE_MIRROR}/libusb/libusb-compat-${PV}.tar.bz2 \ - file://0.1.0-beta1-gcc3.4-fix.patch" - -inherit autotools pkgconfig binconfig diff --git a/meta/packages/libusb/libusb1_1.0.8.bb b/meta/packages/libusb/libusb1_1.0.8.bb deleted file mode 100644 index 26a535ab4e..0000000000 --- a/meta/packages/libusb/libusb1_1.0.8.bb +++ /dev/null @@ -1,14 +0,0 @@ -DESCRIPTION = "userspace library to access USB (version 1.0)" -HOMEPAGE = "http://libusb.sf.net" -BUGTRACKER = "http://www.libusb.org/report" -SECTION = "libs" - -LICENSE = "LGPLv2.1+" -LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24" - -PR = "r0" - -SRC_URI = "${SOURCEFORGE_MIRROR}/libusb/libusb-${PV}.tar.bz2" -S = "${WORKDIR}/libusb-${PV}" - -inherit autotools pkgconfig diff --git a/meta/packages/libxslt/libxslt/pkgconfig_fix.patch b/meta/packages/libxslt/libxslt/pkgconfig_fix.patch deleted file mode 100644 index d21663896f..0000000000 --- a/meta/packages/libxslt/libxslt/pkgconfig_fix.patch +++ /dev/null @@ -1,22 +0,0 @@ -Index: libxslt-1.1.22/libexslt.pc.in -=================================================================== ---- libxslt-1.1.22.orig/libexslt.pc.in 2008-03-19 16:52:20.000000000 +0000 -+++ libxslt-1.1.22/libexslt.pc.in 2008-03-19 16:55:49.000000000 +0000 -@@ -8,5 +8,5 @@ - Version: @LIBEXSLT_VERSION@ - Description: EXSLT Extension library - Requires: libxml-2.0 --Libs: @EXSLT_LIBDIR@ @EXSLT_LIBS@ -+Libs: -lexslt @EXSLT_LIBDIR@ @M_LIBS@ - Cflags: @EXSLT_INCLUDEDIR@ -Index: libxslt-1.1.22/libxslt.pc.in -=================================================================== ---- libxslt-1.1.22.orig/libxslt.pc.in 2008-03-19 16:52:20.000000000 +0000 -+++ libxslt-1.1.22/libxslt.pc.in 2008-03-19 16:55:38.000000000 +0000 -@@ -8,5 +8,5 @@ - Version: @VERSION@ - Description: XSLT library version 2. - Requires: libxml-2.0 --Libs: @XSLT_LIBDIR@ @XSLT_LIBS@ -+Libs: -lxslt @XSLT_LIBDIR@ @M_LIBS@ - Cflags: @XSLT_INCLUDEDIR@ diff --git a/meta/packages/libxslt/libxslt_1.1.26.bb b/meta/packages/libxslt/libxslt_1.1.26.bb deleted file mode 100644 index b5726974f1..0000000000 --- a/meta/packages/libxslt/libxslt_1.1.26.bb +++ /dev/null @@ -1,26 +0,0 @@ -DESCRIPTION = "GNOME XSLT library" -HOMEPAGE = "http://xmlsoft.org/XSLT/" -BUGTRACKER = "https://bugzilla.gnome.org/" - -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=0cd9a07afbeb24026c9b03aecfeba458" - -SECTION = "libs" -PRIORITY = "optional" -DEPENDS = "libxml2 (>=2.6.27)" -PR = "r0" - -SRC_URI = "ftp://xmlsoft.org/libxslt//libxslt-${PV}.tar.gz \ - file://pkgconfig_fix.patch;patch=1" -S = "${WORKDIR}/libxslt-${PV}" - -inherit autotools pkgconfig - -EXTRA_OECONF = "--without-python --without-debug --without-mem-debug --without-crypto" - -PACKAGES = "${PN}-dbg ${PN}-dev ${PN}-utils ${PN} ${PN}-doc ${PN}-locale" - -FILES_${PN}-dev += "${bindir}/xslt-config" -FILES_${PN}-utils += "${bindir}" - -BBCLASSEXTEND = "native" diff --git a/meta/packages/lrzsz/lrzsz-0.12.20/autotools.patch b/meta/packages/lrzsz/lrzsz-0.12.20/autotools.patch deleted file mode 100644 index 73f5a062ef..0000000000 --- a/meta/packages/lrzsz/lrzsz-0.12.20/autotools.patch +++ /dev/null @@ -1,37 +0,0 @@ ---- lrzsz-0.12.20/acinclude.m4~autotools 1998-12-27 17:08:59.000000000 -0500 -+++ lrzsz-0.12.20/acinclude.m4 2004-05-09 22:26:19.000000000 -0400 -@@ -1,12 +1,11 @@ - dnl AC_REPLACE_GNU_GETOPT --AC_DEFUN(AC_REPLACE_GNU_GETOPT, --[AC_CHECK_FUNC(getopt_long, , [LIBOBJS="$LIBOBJS getopt1.o getopt.o"]) --AC_SUBST(LIBOBJS)dnl --]) -+AC_DEFUN([AC_REPLACE_GNU_GETOPT], -+[AC_CHECK_FUNC(getopt_long, , [AC_LIBOBJ([getopt1]) -+AC_LIBOBJ([getopt])dnl])]) - - dnl - dnl taken from taylor uucp --AC_DEFUN(LRZSZ_ERRNO_DECL,[ -+AC_DEFUN([LRZSZ_ERRNO_DECL],[ - AC_MSG_CHECKING(for errno declaration) - AC_CACHE_VAL(lrzsz_cv_decl_errno, - [AC_TRY_COMPILE([#include ], [int i = errno; errno = 1;], -@@ -23,7 +21,7 @@ - ]) - - dnl LRZSZ_TYPE_SPEED_T --AC_DEFUN(LRZSZ_TYPE_SPEED_T,[ -+AC_DEFUN([LRZSZ_TYPE_SPEED_T],[ - AC_REQUIRE([AC_HEADER_STDC])dnl - AC_REQUIRE([LRZSZ_HEADERS_TERM_IO])dnl - AC_MSG_CHECKING(for speed_t) -@@ -61,7 +59,7 @@ - fi - ]) - --AC_DEFUN(lrzsz_HEADER_SYS_SELECT, -+AC_DEFUN([lrzsz_HEADER_SYS_SELECT], - [AC_CACHE_CHECK([whether sys/time.h and sys/select.h may both be included], - lrzsz_cv_header_sys_select, - [AC_TRY_COMPILE([#include diff --git a/meta/packages/lrzsz/lrzsz-0.12.20/gettext.patch b/meta/packages/lrzsz/lrzsz-0.12.20/gettext.patch deleted file mode 100644 index 241ffd90ba..0000000000 --- a/meta/packages/lrzsz/lrzsz-0.12.20/gettext.patch +++ /dev/null @@ -1,21882 +0,0 @@ ---- lrzsz-0.12.20.safe/ABOUT-NLS 1998-04-26 09:22:30.000000000 -0400 -+++ lrzsz-0.12.20/ABOUT-NLS 2004-09-12 14:40:34.323752952 -0400 -@@ -1,14 +1,14 @@ - Notes on the Free Translation Project - ************************************* - -- Free software is going international! The Free Translation Project --is a way to get maintainers of free software, translators, and users all -+Free software is going international! The Free Translation Project is -+a way to get maintainers of free software, translators, and users all - together, so that will gradually become able to speak many languages. - A few packages already provide translations for their messages. - - If you found this `ABOUT-NLS' file inside a distribution, you may - assume that the distributed package does use GNU `gettext' internally, --itself available at your nearest GNU archive site. But you do *not* -+itself available at your nearest GNU archive site. But you do _not_ - need to install GNU `gettext' prior to configuring, installing or using - this package with messages translated. - -@@ -22,10 +22,10 @@ - `gettext' which is used. The information can be found in the - `intl/VERSION' file, in internationalized packages. - --One advise in advance --===================== -+Quick configuration advice -+========================== - -- If you want to exploit the full power of internationalization, you -+If you want to exploit the full power of internationalization, you - should configure it using - - ./configure --with-included-gettext -@@ -34,42 +34,40 @@ - package, despite the existence of internationalizing capabilities in the - operating system where this package is being installed. So far, only - the `gettext' implementation in the GNU C library version 2 provides as --many features (such as locale alias or message inheritance) as the --implementation here. It is also not possible to offer this additional --functionality on top of a `catgets' implementation. Future versions of --GNU `gettext' will very likely convey even more functionality. So it --might be a good idea to change to GNU `gettext' as soon as possible. -+many features (such as locale alias, message inheritance, automatic -+charset conversion or plural form handling) as the implementation here. -+It is also not possible to offer this additional functionality on top -+of a `catgets' implementation. Future versions of GNU `gettext' will -+very likely convey even more functionality. So it might be a good idea -+to change to GNU `gettext' as soon as possible. - -- So you need not provide this option if you are using GNU libc 2 or -+ So you need _not_ provide this option if you are using GNU libc 2 or - you have installed a recent copy of the GNU gettext package with the - included `libintl'. - - INSTALL Matters - =============== - -- Some packages are "localizable" when properly installed; the --programs they contain can be made to speak your own native language. --Most such packages use GNU `gettext'. Other packages have their own --ways to internationalization, predating GNU `gettext'. -+Some packages are "localizable" when properly installed; the programs -+they contain can be made to speak your own native language. Most such -+packages use GNU `gettext'. Other packages have their own ways to -+internationalization, predating GNU `gettext'. - - By default, this package will be installed to allow translation of --messages. It will automatically detect whether the system provides --usable `catgets' (if using this is selected by the installer) or --`gettext' functions. If neither is available, the GNU `gettext' own -+messages. It will automatically detect whether the system already -+provides the GNU `gettext' functions. If not, the GNU `gettext' own - library will be used. This library is wholly contained within this - package, usually in the `intl/' subdirectory, so prior installation of --the GNU `gettext' package is *not* required. Installers may use -+the GNU `gettext' package is _not_ required. Installers may use - special options at configuration time for changing the default - behaviour. The commands: - - ./configure --with-included-gettext -- ./configure --with-catgets - ./configure --disable-nls - --will respectively bypass any pre-existing `catgets' or `gettext' to use --the internationalizing routines provided within this package, enable --the use of the `catgets' functions (if found on the locale system), or --else, *totally* disable translation of messages. -+will respectively bypass any pre-existing `gettext' to use the -+internationalizing routines provided within this package, or else, -+_totally_ disable translation of messages. - - When you already have GNU `gettext' installed on your system and run - configure without an option for your new package, `configure' will -@@ -83,18 +81,10 @@ - - to prevent auto-detection. - -- By default the configuration process will not test for the `catgets' --function and therefore they will not be used. The reasons are already --given above: the emulation on top of `catgets' cannot provide all the --extensions provided by the GNU `gettext' library. If you nevertheless --want to use the `catgets' functions use -- -- ./configure --with-catgets -- --to enable the test for `catgets' (this causes no harm if `catgets' is --not available on your system). If you really select this option we --would like to hear about the reasons because we cannot think of any --good one ourself. -+ The configuration process will not test for the `catgets' function -+and therefore it will not be used. The reason is that even an -+emulation of `gettext' on top of `catgets' could not provide all the -+extensions of the GNU `gettext' library. - - Internationalized packages have usually many `po/LL.po' files, where - LL gives an ISO 639 two-letter code identifying the language. Unless -@@ -108,57 +98,73 @@ - Using This Package - ================== - -- As a user, if your language has been installed for this package, you -+As a user, if your language has been installed for this package, you - only have to set the `LANG' environment variable to the appropriate --ISO 639 `LL' two-letter code prior to using the programs in the --package. For example, let's suppose that you speak German. At the --shell prompt, merely execute `setenv LANG de' (in `csh'), --`export LANG; LANG=de' (in `sh') or `export LANG=de' (in `bash'). This --can be done from your `.login' or `.profile' file, once and for all. -+`LL_CC' combination. Here `LL' is an ISO 639 two-letter language code, -+and `CC' is an ISO 3166 two-letter country code. For example, let's -+suppose that you speak German and live in Germany. At the shell -+prompt, merely execute `setenv LANG de_DE' (in `csh'), -+`export LANG; LANG=de_DE' (in `sh') or `export LANG=de_DE' (in `bash'). -+This can be done from your `.login' or `.profile' file, once and for -+all. - -- An operating system might already offer message localization for --many of its programs, while other programs have been installed locally --with the full capabilities of GNU `gettext'. Just using `gettext' --extended syntax for `LANG' would break proper localization of already --available operating system programs. In this case, users should set --both `LANGUAGE' and `LANG' variables in their environment, as programs --using GNU `gettext' give preference to `LANGUAGE'. For example, some --Swedish users would rather read translations in German than English for --when Swedish is not available. This is easily accomplished by setting --`LANGUAGE' to `sv:de' while leaving `LANG' to `sv'. -+ You might think that the country code specification is redundant. -+But in fact, some languages have dialects in different countries. For -+example, `de_AT' is used for Austria, and `pt_BR' for Brazil. The -+country code serves to distinguish the dialects. -+ -+ The locale naming convention of `LL_CC', with `LL' denoting the -+language and `CC' denoting the country, is the one use on systems based -+on GNU libc. On other systems, some variations of this scheme are -+used, such as `LL' or `LL_CC.ENCODING'. You can get the list of -+locales supported by your system for your country by running the command -+`locale -a | grep '^LL''. -+ -+ Not all programs have translations for all languages. By default, an -+English message is shown in place of a nonexistent translation. If you -+understand other languages, you can set up a priority list of languages. -+This is done through a different environment variable, called -+`LANGUAGE'. GNU `gettext' gives preference to `LANGUAGE' over `LANG' -+for the purpose of message handling, but you still need to have `LANG' -+set to the primary language; this is required by other parts of the -+system libraries. For example, some Swedish users who would rather -+read translations in German than English for when Swedish is not -+available, set `LANGUAGE' to `sv:de' while leaving `LANG' to `sv_SE'. -+ -+ Special advice for Norwegian users: The language code for Norwegian -+bokma*l changed from `no' to `nb' recently (in 2003). During the -+transition period, while some message catalogs for this language are -+installed under `nb' and some older ones under `no', it's recommended -+for Norwegian users to set `LANGUAGE' to `nb:no' so that both newer and -+older translations are used. -+ -+ In the `LANGUAGE' environment variable, but not in the `LANG' -+environment variable, `LL_CC' combinations can be abbreviated as `LL' -+to denote the language's main dialect. For example, `de' is equivalent -+to `de_DE' (German as spoken in Germany), and `pt' to `pt_PT' -+(Portuguese as spoken in Portugal) in this context. - - Translating Teams - ================= - -- For the Free Translation Project to be a success, we need interested -+For the Free Translation Project to be a success, we need interested - people who like their own language and write it well, and who are also - able to synergize with other translators speaking the same language. --Each translation team has its own mailing list, courtesy of Linux --International. You may reach your translation team at the address --`LL@li.org', replacing LL by the two-letter ISO 639 code for your --language. Language codes are *not* the same as the country codes given --in ISO 3166. The following translation teams exist, as of August 1997: -- -- Chinese `zh', Czech `cs', Danish `da', Dutch `nl', English `en', -- Esperanto `eo', Finnish `fi', French `fr', German `de', Hungarian -- `hu', Irish `ga', Italian `it', Indonesian `id', Japanese `ja', -- Korean `ko', Latin `la', Norwegian `no', Persian `fa', Polish -- `pl', Portuguese `pt', Russian `ru', Slovenian `sl', Spanish `es', -- Swedish `sv', and Turkish `tr'. -- --For example, you may reach the Chinese translation team by writing to --`zh@li.org'. -+Each translation team has its own mailing list. The up-to-date list of -+teams can be found at the Free Translation Project's homepage, -+`http://www.iro.umontreal.ca/contrib/po/HTML/', in the "National teams" -+area. - -- If you'd like to volunteer to *work* at translating messages, you -+ If you'd like to volunteer to _work_ at translating messages, you - should become a member of the translating team for your own language. --The subscribing address is *not* the same as the list itself, it has -+The subscribing address is _not_ the same as the list itself, it has - `-request' appended. For example, speakers of Swedish can send a - message to `sv-request@li.org', having this message body: - - subscribe - - Keep in mind that team members are expected to participate --*actively* in translations, or at solving translational difficulties, -+_actively_ in translations, or at solving translational difficulties, - rather than merely lurking around. If your team does not exist yet and - you want to start one, or if you are unsure about what to do or how to - get started, please write to `translation@iro.umontreal.ca' to reach the -@@ -171,43 +177,559 @@ - Available Packages - ================== - -- Languages are not equally supported in all packages. The following --matrix shows the current state of internationalization, as of August --1997. The matrix shows, in regard of each package, for which languages --PO files have been submitted to translation coordination. -+Languages are not equally supported in all packages. The following -+matrix shows the current state of internationalization, as of January -+2004. The matrix shows, in regard of each package, for which languages -+PO files have been submitted to translation coordination, with a -+translation percentage of at least 50%. - -- Ready PO files cs da de en es fi fr it ja ko nl no pl pt sl sv -- .-------------------------------------------------. -- bash | [] [] [] | 3 -- bison | [] [] [] | 3 -- clisp | [] [] [] [] | 4 -- cpio | [] [] [] [] [] | 5 -- diffutils | [] [] [] [] [] | 5 -- enscript | [] [] [] [] [] [] | 6 -- fileutils | [] [] [] [] [] [] [] [] [] [] | 10 -- findutils | [] [] [] [] [] [] [] [] | 8 -- flex | [] [] [] [] | 4 -- gcal | [] [] [] [] [] | 5 -- gettext | [] [] [] [] [] [] [] [] [] [] | 11 -- grep | [] [] [] [] [] [] [] [] [] | 9 -- hello | [] [] [] [] [] [] [] [] [] [] | 10 -- id-utils | [] [] [] | 3 -- indent | [] [] [] [] | 4 -- libc | [] [] [] [] [] [] [] | 7 -- m4 | [] [] [] [] [] | 5 -- make | [] [] [] [] [] [] | 6 -- music | [] [] | 2 -- ptx | [] [] [] [] [] [] [] [] | 8 -- recode | [] [] [] [] [] [] [] [] [] | 9 -- sh-utils | [] [] [] [] [] [] [] | 7 -- sharutils | [] [] [] [] [] | 5 -- tar | [] [] [] [] [] [] [] [] [] [] | 10 -- texinfo | [] | 1 -- textutils | [] [] [] [] [] [] [] [] [] | 9 -- wdiff | [] [] [] [] [] [] [] [] | 8 -- `-------------------------------------------------' -- 16 languages cs da de en es fi fr it ja ko nl no pl pt sl sv -- 27 packages 3 2 24 1 17 1 26 2 1 11 20 9 19 7 7 17 167 -+ Ready PO files af am ar az be bg bs ca cs da de el en en_GB eo es -+ +----------------------------------------------------+ -+ a2ps | [] [] [] [] | -+ aegis | () | -+ ant-phone | () | -+ anubis | | -+ ap-utils | | -+ aspell | [] | -+ bash | [] [] [] [] | -+ batchelor | | -+ bfd | [] [] | -+ binutils | [] [] | -+ bison | [] [] [] | -+ bluez-pin | [] [] [] | -+ clisp | | -+ clisp | [] [] [] | -+ console-tools | [] [] | -+ coreutils | [] [] [] [] | -+ cpio | [] [] [] | -+ darkstat | [] () [] | -+ diffutils | [] [] [] [] [] [] [] | -+ e2fsprogs | [] [] [] | -+ enscript | [] [] [] [] | -+ error | [] [] [] [] [] | -+ fetchmail | [] () [] [] [] [] | -+ fileutils | [] [] [] | -+ findutils | [] [] [] [] [] [] [] | -+ flex | [] [] [] [] | -+ fslint | | -+ gas | [] | -+ gawk | [] [] [] [] | -+ gbiff | [] | -+ gcal | [] | -+ gcc | [] [] | -+ gettext | [] [] [] [] [] | -+ gettext-examples | [] [] [] [] | -+ gettext-runtime | [] [] [] [] [] | -+ gettext-tools | [] [] [] | -+ gimp-print | [] [] [] [] [] | -+ gliv | | -+ glunarclock | [] [] | -+ gnubiff | [] | -+ gnucash | [] () [] [] | -+ gnucash-glossary | [] () [] | -+ gnupg | [] () [] [] [] [] | -+ gpe-aerial | [] | -+ gpe-beam | [] [] | -+ gpe-calendar | [] [] | -+ gpe-clock | [] [] | -+ gpe-conf | [] [] | -+ gpe-contacts | [] [] | -+ gpe-edit | [] | -+ gpe-go | [] | -+ gpe-login | [] [] | -+ gpe-ownerinfo | [] [] | -+ gpe-sketchbook | [] [] | -+ gpe-su | [] [] | -+ gpe-taskmanager | [] [] | -+ gpe-timesheet | [] | -+ gpe-today | [] [] | -+ gpe-todo | [] [] | -+ gphoto2 | [] [] [] [] | -+ gprof | [] [] [] | -+ gpsdrive | () () () | -+ gramadoir | [] | -+ grep | [] [] [] [] [] [] | -+ gretl | [] | -+ gtick | [] () | -+ hello | [] [] [] [] [] [] | -+ id-utils | [] [] | -+ indent | [] [] [] [] | -+ iso_3166 | [] [] [] [] [] [] [] [] [] [] | -+ iso_3166_1 | [] [] [] [] [] [] | -+ iso_3166_2 | | -+ iso_3166_3 | [] | -+ iso_4217 | [] [] [] [] | -+ iso_639 | | -+ jpilot | [] [] [] | -+ jtag | | -+ jwhois | [] | -+ kbd | [] [] [] [] [] | -+ latrine | () | -+ ld | [] [] | -+ libc | [] [] [] [] [] [] | -+ libgpewidget | [] [] | -+ libiconv | [] [] [] [] [] | -+ lifelines | [] () | -+ lilypond | [] | -+ lingoteach | | -+ lingoteach_lessons | () () | -+ lynx | [] [] [] [] | -+ m4 | [] [] [] [] | -+ mailutils | [] [] | -+ make | [] [] [] | -+ man-db | [] () [] [] () | -+ minicom | [] [] [] | -+ mysecretdiary | [] [] [] | -+ nano | [] () [] [] [] | -+ nano_1_0 | [] () [] [] [] | -+ opcodes | [] | -+ parted | [] [] [] [] [] | -+ ptx | [] [] [] [] [] | -+ python | | -+ radius | [] | -+ recode | [] [] [] [] [] [] [] | -+ rpm | [] [] | -+ screem | | -+ scrollkeeper | [] [] [] [] [] [] | -+ sed | [] [] [] [] [] [] | -+ sh-utils | [] [] [] | -+ shared-mime-info | | -+ sharutils | [] [] [] [] [] [] | -+ silky | () | -+ skencil | [] () [] | -+ sketch | [] () [] | -+ soundtracker | [] [] [] | -+ sp | [] | -+ tar | [] [] [] [] | -+ texinfo | [] [] [] | -+ textutils | [] [] [] [] | -+ tin | () () | -+ tp-robot | | -+ tuxpaint | [] [] [] [] [] [] [] | -+ unicode-han-tra... | | -+ unicode-transla... | | -+ util-linux | [] [] [] [] [] | -+ vorbis-tools | [] [] [] [] | -+ wastesedge | () | -+ wdiff | [] [] [] [] | -+ wget | [] [] [] [] [] [] | -+ xchat | [] [] [] [] | -+ xfree86_xkb_xml | [] [] | -+ xpad | [] | -+ +----------------------------------------------------+ -+ af am ar az be bg bs ca cs da de el en en_GB eo es -+ 4 0 0 1 9 4 1 40 41 60 78 17 1 5 13 68 -+ -+ et eu fa fi fr ga gl he hr hu id is it ja ko lg -+ +-------------------------------------------------+ -+ a2ps | [] [] [] () () | -+ aegis | | -+ ant-phone | [] | -+ anubis | [] | -+ ap-utils | [] | -+ aspell | [] [] | -+ bash | [] [] | -+ batchelor | [] [] | -+ bfd | [] | -+ binutils | [] [] | -+ bison | [] [] [] [] | -+ bluez-pin | [] [] [] [] [] | -+ clisp | | -+ clisp | [] | -+ console-tools | | -+ coreutils | [] [] [] [] [] [] | -+ cpio | [] [] [] [] | -+ darkstat | () [] [] [] | -+ diffutils | [] [] [] [] [] [] [] | -+ e2fsprogs | | -+ enscript | [] [] | -+ error | [] [] [] [] | -+ fetchmail | [] | -+ fileutils | [] [] [] [] [] [] | -+ findutils | [] [] [] [] [] [] [] [] [] [] [] | -+ flex | [] [] [] | -+ fslint | [] | -+ gas | [] | -+ gawk | [] [] [] | -+ gbiff | [] | -+ gcal | [] | -+ gcc | [] | -+ gettext | [] [] [] | -+ gettext-examples | [] [] | -+ gettext-runtime | [] [] [] [] [] | -+ gettext-tools | [] [] [] | -+ gimp-print | [] [] | -+ gliv | () | -+ glunarclock | [] [] [] [] | -+ gnubiff | [] | -+ gnucash | () [] | -+ gnucash-glossary | [] | -+ gnupg | [] [] [] [] [] [] [] | -+ gpe-aerial | [] | -+ gpe-beam | [] | -+ gpe-calendar | [] [] [] | -+ gpe-clock | [] | -+ gpe-conf | [] | -+ gpe-contacts | [] [] | -+ gpe-edit | [] [] | -+ gpe-go | [] | -+ gpe-login | [] [] | -+ gpe-ownerinfo | [] [] [] | -+ gpe-sketchbook | [] | -+ gpe-su | [] | -+ gpe-taskmanager | [] | -+ gpe-timesheet | [] [] [] | -+ gpe-today | [] [] | -+ gpe-todo | [] [] | -+ gphoto2 | [] [] [] | -+ gprof | [] [] | -+ gpsdrive | () () () | -+ gramadoir | [] [] | -+ grep | [] [] [] [] [] [] [] [] [] [] [] | -+ gretl | [] [] | -+ gtick | [] [] [] | -+ hello | [] [] [] [] [] [] [] [] [] [] [] [] [] | -+ id-utils | [] [] [] [] | -+ indent | [] [] [] [] [] [] [] [] [] | -+ iso_3166 | [] [] [] [] [] [] [] | -+ iso_3166_1 | [] [] [] [] [] | -+ iso_3166_2 | | -+ iso_3166_3 | | -+ iso_4217 | [] [] [] [] [] [] | -+ iso_639 | | -+ jpilot | [] () | -+ jtag | [] | -+ jwhois | [] [] [] [] | -+ kbd | [] | -+ latrine | [] | -+ ld | [] | -+ libc | [] [] [] [] [] [] | -+ libgpewidget | [] [] [] [] | -+ libiconv | [] [] [] [] [] [] [] [] [] | -+ lifelines | () | -+ lilypond | [] | -+ lingoteach | [] [] | -+ lingoteach_lessons | | -+ lynx | [] [] [] [] | -+ m4 | [] [] [] [] | -+ mailutils | | -+ make | [] [] [] [] [] [] | -+ man-db | () () | -+ minicom | [] [] [] [] | -+ mysecretdiary | [] [] | -+ nano | [] [] [] [] | -+ nano_1_0 | [] [] [] [] | -+ opcodes | [] | -+ parted | [] [] [] | -+ ptx | [] [] [] [] [] [] [] | -+ python | | -+ radius | [] | -+ recode | [] [] [] [] [] [] | -+ rpm | [] [] | -+ screem | | -+ scrollkeeper | [] | -+ sed | [] [] [] [] [] [] [] [] [] | -+ sh-utils | [] [] [] [] [] [] [] | -+ shared-mime-info | [] [] [] | -+ sharutils | [] [] [] [] [] | -+ silky | () [] () () | -+ skencil | [] | -+ sketch | [] | -+ soundtracker | [] [] | -+ sp | [] () | -+ tar | [] [] [] [] [] [] [] [] [] | -+ texinfo | [] [] [] [] | -+ textutils | [] [] [] [] [] [] | -+ tin | [] () | -+ tp-robot | [] | -+ tuxpaint | [] [] [] [] [] [] [] [] [] | -+ unicode-han-tra... | | -+ unicode-transla... | [] [] | -+ util-linux | [] [] [] [] () [] | -+ vorbis-tools | [] | -+ wastesedge | () | -+ wdiff | [] [] [] [] [] [] | -+ wget | [] [] [] [] [] [] [] | -+ xchat | [] [] [] | -+ xfree86_xkb_xml | [] [] | -+ xpad | [] [] | -+ +-------------------------------------------------+ -+ et eu fa fi fr ga gl he hr hu id is it ja ko lg -+ 22 2 1 26 106 28 24 8 10 41 33 1 26 33 12 0 -+ -+ lt lv mk mn ms mt nb nl nn no nso pl pt pt_BR ro ru -+ +-----------------------------------------------------+ -+ a2ps | [] [] () () [] [] [] | -+ aegis | () () () | -+ ant-phone | [] [] | -+ anubis | [] [] [] [] [] [] | -+ ap-utils | [] () [] | -+ aspell | [] | -+ bash | [] [] [] | -+ batchelor | [] | -+ bfd | [] | -+ binutils | [] | -+ bison | [] [] [] [] [] | -+ bluez-pin | [] [] [] | -+ clisp | | -+ clisp | [] | -+ console-tools | [] | -+ coreutils | [] [] | -+ cpio | [] [] [] [] [] | -+ darkstat | [] [] [] [] | -+ diffutils | [] [] [] [] [] [] | -+ e2fsprogs | [] | -+ enscript | [] [] [] [] | -+ error | [] [] [] | -+ fetchmail | [] [] () [] | -+ fileutils | [] [] [] | -+ findutils | [] [] [] [] [] | -+ flex | [] [] [] [] | -+ fslint | [] [] | -+ gas | | -+ gawk | [] [] [] | -+ gbiff | [] [] | -+ gcal | | -+ gcc | | -+ gettext | [] [] [] | -+ gettext-examples | [] [] [] | -+ gettext-runtime | [] [] [] [] | -+ gettext-tools | [] [] | -+ gimp-print | [] | -+ gliv | [] [] [] | -+ glunarclock | [] [] [] [] | -+ gnubiff | [] | -+ gnucash | [] [] () [] | -+ gnucash-glossary | [] [] | -+ gnupg | [] | -+ gpe-aerial | [] [] [] [] | -+ gpe-beam | [] [] [] [] | -+ gpe-calendar | [] [] [] [] | -+ gpe-clock | [] [] [] [] | -+ gpe-conf | [] [] [] [] | -+ gpe-contacts | [] [] [] [] | -+ gpe-edit | [] [] [] [] | -+ gpe-go | [] [] [] | -+ gpe-login | [] [] [] [] | -+ gpe-ownerinfo | [] [] [] [] | -+ gpe-sketchbook | [] [] [] [] | -+ gpe-su | [] [] [] [] | -+ gpe-taskmanager | [] [] [] [] | -+ gpe-timesheet | [] [] [] [] | -+ gpe-today | [] [] [] [] | -+ gpe-todo | [] [] [] [] | -+ gphoto2 | [] | -+ gprof | [] [] | -+ gpsdrive | () () [] | -+ gramadoir | () [] | -+ grep | [] [] [] [] [] | -+ gretl | | -+ gtick | [] [] [] | -+ hello | [] [] [] [] [] [] [] [] [] [] | -+ id-utils | [] [] [] [] | -+ indent | [] [] [] [] | -+ iso_3166 | [] [] [] | -+ iso_3166_1 | [] [] | -+ iso_3166_2 | | -+ iso_3166_3 | [] | -+ iso_4217 | [] [] [] [] [] [] [] [] | -+ iso_639 | [] | -+ jpilot | () () | -+ jtag | | -+ jwhois | [] [] [] [] () | -+ kbd | [] [] [] | -+ latrine | [] | -+ ld | | -+ libc | [] [] [] [] | -+ libgpewidget | [] [] [] | -+ libiconv | [] [] [] [] [] | -+ lifelines | | -+ lilypond | | -+ lingoteach | | -+ lingoteach_lessons | | -+ lynx | [] [] [] | -+ m4 | [] [] [] [] [] | -+ mailutils | [] [] [] | -+ make | [] [] [] [] | -+ man-db | [] | -+ minicom | [] [] [] [] | -+ mysecretdiary | [] [] [] | -+ nano | [] [] [] [] [] | -+ nano_1_0 | [] [] [] [] [] [] | -+ opcodes | [] [] | -+ parted | [] [] [] [] | -+ ptx | [] [] [] [] [] [] [] [] | -+ python | | -+ radius | [] [] | -+ recode | [] [] [] [] | -+ rpm | [] [] [] | -+ screem | | -+ scrollkeeper | [] [] [] [] [] | -+ sed | [] [] [] | -+ sh-utils | [] [] | -+ shared-mime-info | [] [] | -+ sharutils | [] [] | -+ silky | () | -+ skencil | [] [] | -+ sketch | [] [] | -+ soundtracker | | -+ sp | | -+ tar | [] [] [] [] [] [] | -+ texinfo | [] [] [] [] | -+ textutils | [] [] | -+ tin | | -+ tp-robot | [] | -+ tuxpaint | [] [] [] [] [] [] [] [] | -+ unicode-han-tra... | | -+ unicode-transla... | | -+ util-linux | [] [] [] | -+ vorbis-tools | [] [] [] | -+ wastesedge | | -+ wdiff | [] [] [] [] [] | -+ wget | [] [] [] | -+ xchat | [] [] [] | -+ xfree86_xkb_xml | [] [] | -+ xpad | [] [] | -+ +-----------------------------------------------------+ -+ lt lv mk mn ms mt nb nl nn no nso pl pt pt_BR ro ru -+ 1 2 0 3 12 0 10 69 6 7 1 40 26 36 76 63 -+ -+ sk sl sr sv ta th tr uk ven vi wa xh zh_CN zh_TW zu -+ +-----------------------------------------------------+ -+ a2ps | [] [] [] [] | 16 -+ aegis | | 0 -+ ant-phone | | 3 -+ anubis | [] [] | 9 -+ ap-utils | () | 3 -+ aspell | | 4 -+ bash | | 9 -+ batchelor | | 3 -+ bfd | [] [] | 6 -+ binutils | [] [] [] | 8 -+ bison | [] [] | 14 -+ bluez-pin | [] [] [] | 14 -+ clisp | | 0 -+ clisp | | 5 -+ console-tools | | 3 -+ coreutils | [] [] [] [] | 16 -+ cpio | [] [] | 14 -+ darkstat | [] [] [] () () | 12 -+ diffutils | [] [] [] | 23 -+ e2fsprogs | [] [] | 6 -+ enscript | [] [] | 12 -+ error | [] [] [] | 15 -+ fetchmail | [] [] | 11 -+ fileutils | [] [] [] [] [] | 17 -+ findutils | [] [] [] [] [] [] | 29 -+ flex | [] [] | 13 -+ fslint | | 3 -+ gas | [] | 3 -+ gawk | [] [] | 12 -+ gbiff | | 4 -+ gcal | [] [] | 4 -+ gcc | [] | 4 -+ gettext | [] [] [] [] [] | 16 -+ gettext-examples | [] [] [] [] [] | 14 -+ gettext-runtime | [] [] [] [] [] [] [] [] | 22 -+ gettext-tools | [] [] [] [] [] [] | 14 -+ gimp-print | [] [] | 10 -+ gliv | | 3 -+ glunarclock | [] [] [] | 13 -+ gnubiff | | 3 -+ gnucash | [] [] | 9 -+ gnucash-glossary | [] [] [] | 8 -+ gnupg | [] [] [] [] | 17 -+ gpe-aerial | [] | 7 -+ gpe-beam | [] | 8 -+ gpe-calendar | [] [] [] [] | 13 -+ gpe-clock | [] [] [] | 10 -+ gpe-conf | [] [] | 9 -+ gpe-contacts | [] [] [] | 11 -+ gpe-edit | [] [] [] [] [] | 12 -+ gpe-go | | 5 -+ gpe-login | [] [] [] [] [] | 13 -+ gpe-ownerinfo | [] [] [] [] | 13 -+ gpe-sketchbook | [] [] | 9 -+ gpe-su | [] [] [] | 10 -+ gpe-taskmanager | [] [] [] | 10 -+ gpe-timesheet | [] [] [] [] | 12 -+ gpe-today | [] [] [] [] [] | 13 -+ gpe-todo | [] [] [] [] | 12 -+ gphoto2 | [] [] [] | 11 -+ gprof | [] [] | 9 -+ gpsdrive | [] [] | 3 -+ gramadoir | [] | 5 -+ grep | [] [] [] [] | 26 -+ gretl | | 3 -+ gtick | | 7 -+ hello | [] [] [] [] [] | 34 -+ id-utils | [] [] | 12 -+ indent | [] [] [] [] | 21 -+ iso_3166 | [] [] [] [] [] [] [] | 27 -+ iso_3166_1 | [] [] [] | 16 -+ iso_3166_2 | | 0 -+ iso_3166_3 | | 2 -+ iso_4217 | [] [] [] [] [] [] | 24 -+ iso_639 | | 1 -+ jpilot | [] [] [] [] [] | 9 -+ jtag | [] | 2 -+ jwhois | () [] [] | 11 -+ kbd | [] [] | 11 -+ latrine | | 2 -+ ld | [] [] | 5 -+ libc | [] [] [] [] | 20 -+ libgpewidget | [] [] [] [] | 13 -+ libiconv | [] [] [] [] [] [] [] [] | 27 -+ lifelines | [] | 2 -+ lilypond | [] | 3 -+ lingoteach | | 2 -+ lingoteach_lessons | () | 0 -+ lynx | [] [] [] | 14 -+ m4 | [] [] | 15 -+ mailutils | | 5 -+ make | [] [] [] | 16 -+ man-db | [] | 5 -+ minicom | | 11 -+ mysecretdiary | [] [] | 10 -+ nano | [] [] [] [] | 17 -+ nano_1_0 | [] [] [] | 17 -+ opcodes | [] [] | 6 -+ parted | [] [] [] | 15 -+ ptx | [] [] | 22 -+ python | | 0 -+ radius | | 4 -+ recode | [] [] [] | 20 -+ rpm | [] [] | 9 -+ screem | [] [] | 2 -+ scrollkeeper | [] [] [] | 15 -+ sed | [] [] [] [] [] [] | 24 -+ sh-utils | [] [] | 14 -+ shared-mime-info | [] [] | 7 -+ sharutils | [] [] [] [] | 17 -+ silky | () | 3 -+ skencil | [] | 6 -+ sketch | [] | 6 -+ soundtracker | [] [] | 7 -+ sp | [] | 3 -+ tar | [] [] [] [] [] | 24 -+ texinfo | [] [] [] | 14 -+ textutils | [] [] [] [] | 16 -+ tin | | 1 -+ tp-robot | | 2 -+ tuxpaint | [] [] [] [] [] | 29 -+ unicode-han-tra... | | 0 -+ unicode-transla... | | 2 -+ util-linux | [] [] | 15 -+ vorbis-tools | | 8 -+ wastesedge | | 0 -+ wdiff | [] [] [] | 18 -+ wget | [] [] [] [] [] [] [] [] | 24 -+ xchat | [] [] [] [] [] | 15 -+ xfree86_xkb_xml | [] [] [] [] [] | 11 -+ xpad | | 5 -+ +-----------------------------------------------------+ -+ 63 teams sk sl sr sv ta th tr uk ven vi wa xh zh_CN zh_TW zu -+ 131 domains 47 19 28 83 0 0 59 13 1 1 11 0 22 22 0 1373 - - Some counters in the preceding matrix are higher than the number of - visible blocks let us expect. This is because a few extra PO files are -@@ -220,6 +742,27 @@ - lag between the mere existence a PO file and its wide availability in a - distribution. - -- If August 1997 seems to be old, you may fetch a more recent copy of --this `ABOUT-NLS' file on most GNU archive sites. -+ If January 2004 seems to be old, you may fetch a more recent copy of -+this `ABOUT-NLS' file on most GNU archive sites. The most up-to-date -+matrix with full percentage details can be found at -+`http://www.iro.umontreal.ca/contrib/po/HTML/matrix.html'. -+ -+Using `gettext' in new packages -+=============================== -+ -+If you are writing a freely available program and want to -+internationalize it you are welcome to use GNU `gettext' in your -+package. Of course you have to respect the GNU Library General Public -+License which covers the use of the GNU `gettext' library. This means -+in particular that even non-free programs can use `libintl' as a shared -+library, whereas only free software can use `libintl' as a static -+library or use modified versions of `libintl'. -+ -+ Once the sources are changed appropriately and the setup can handle -+the use of `gettext' the only thing missing are the translations. The -+Free Translation Project is also available for packages which are not -+developed inside the GNU project. Therefore the information given above -+applies also for every other Free Software Project. Contact -+`translation@iro.umontreal.ca' to make the `.pot' files available to -+the translation teams. - ---- lrzsz-0.12.20.safe/ChangeLog 1998-12-29 17:49:56.000000000 -0500 -+++ lrzsz-0.12.20/ChangeLog 2004-09-12 14:40:35.846521456 -0400 -@@ -1,3 +1,11 @@ -+2004-09-12 gettextize -+ -+ * Makefile.am (ACLOCAL_AMFLAGS): New variable. -+ (EXTRA_DIST): Add config.rpath. -+ * configure.in (AC_OUTPUT): Add m4/Makefile. -+ (AC_OUTPUT): Remove command that created po/Makefile. -+ (AC_LINK_FILES): Remove invocation. -+ - 1998-12-29 Uwe Ohse - - * src/lrz.c: removed stpcpy call. ---- lrzsz-0.12.20.safe/config.rpath 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/config.rpath 2004-09-12 14:40:34.329752040 -0400 -@@ -0,0 +1,548 @@ -+#! /bin/sh -+# Output a system dependent set of variables, describing how to set the -+# run time search path of shared libraries in an executable. -+# -+# Copyright 1996-2003 Free Software Foundation, Inc. -+# Taken from GNU libtool, 2001 -+# Originally by Gordon Matzigkeit , 1996 -+# -+# This program is free software; you can redistribute it and/or modify -+# it under the terms of the GNU General Public License as published by -+# the Free Software Foundation; either version 2 of the License, or -+# (at your option) any later version. -+# -+# This program is distributed in the hope that it will be useful, but -+# WITHOUT ANY WARRANTY; without even the implied warranty of -+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+# General Public License for more details. -+# -+# You should have received a copy of the GNU General Public License -+# along with this program; if not, write to the Free Software -+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -+# -+# As a special exception to the GNU General Public License, if you -+# distribute this file as part of a program that contains a -+# configuration script generated by Autoconf, you may include it under -+# the same distribution terms that you use for the rest of that program. -+# -+# The first argument passed to this file is the canonical host specification, -+# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM -+# or -+# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM -+# The environment variables CC, GCC, LDFLAGS, LD, with_gnu_ld -+# should be set by the caller. -+# -+# The set of defined variables is at the end of this script. -+ -+# Known limitations: -+# - On IRIX 6.5 with CC="cc", the run time search patch must not be longer -+# than 256 bytes, otherwise the compiler driver will dump core. The only -+# known workaround is to choose shorter directory names for the build -+# directory and/or the installation directory. -+ -+# All known linkers require a `.a' archive for static linking (except M$VC, -+# which needs '.lib'). -+libext=a -+shrext=.so -+ -+host="$1" -+host_cpu=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -+host_vendor=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -+host_os=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` -+ -+# Code taken from libtool.m4's AC_LIBTOOL_PROG_COMPILER_PIC. -+ -+wl= -+if test "$GCC" = yes; then -+ wl='-Wl,' -+else -+ case "$host_os" in -+ aix*) -+ wl='-Wl,' -+ ;; -+ mingw* | pw32* | os2*) -+ ;; -+ hpux9* | hpux10* | hpux11*) -+ wl='-Wl,' -+ ;; -+ irix5* | irix6* | nonstopux*) -+ wl='-Wl,' -+ ;; -+ newsos6) -+ ;; -+ linux*) -+ case $CC in -+ icc|ecc) -+ wl='-Wl,' -+ ;; -+ ccc) -+ wl='-Wl,' -+ ;; -+ esac -+ ;; -+ osf3* | osf4* | osf5*) -+ wl='-Wl,' -+ ;; -+ sco3.2v5*) -+ ;; -+ solaris*) -+ wl='-Wl,' -+ ;; -+ sunos4*) -+ wl='-Qoption ld ' -+ ;; -+ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) -+ wl='-Wl,' -+ ;; -+ sysv4*MP*) -+ ;; -+ uts4*) -+ ;; -+ esac -+fi -+ -+# Code taken from libtool.m4's AC_LIBTOOL_PROG_LD_SHLIBS. -+ -+hardcode_libdir_flag_spec= -+hardcode_libdir_separator= -+hardcode_direct=no -+hardcode_minus_L=no -+ -+case "$host_os" in -+ cygwin* | mingw* | pw32*) -+ # FIXME: the MSVC++ port hasn't been tested in a loooong time -+ # When not using gcc, we currently assume that we are using -+ # Microsoft Visual C++. -+ if test "$GCC" != yes; then -+ with_gnu_ld=no -+ fi -+ ;; -+ openbsd*) -+ with_gnu_ld=no -+ ;; -+esac -+ -+ld_shlibs=yes -+if test "$with_gnu_ld" = yes; then -+ case "$host_os" in -+ aix3* | aix4* | aix5*) -+ # On AIX/PPC, the GNU linker is very broken -+ if test "$host_cpu" != ia64; then -+ ld_shlibs=no -+ fi -+ ;; -+ amigaos*) -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_minus_L=yes -+ # Samuel A. Falvo II reports -+ # that the semantics of dynamic libraries on AmigaOS, at least up -+ # to version 4, is to share data among multiple programs linked -+ # with the same dynamic library. Since this doesn't match the -+ # behavior of shared libraries on other platforms, we can use -+ # them. -+ ld_shlibs=no -+ ;; -+ beos*) -+ if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then -+ : -+ else -+ ld_shlibs=no -+ fi -+ ;; -+ cygwin* | mingw* | pw32*) -+ # hardcode_libdir_flag_spec is actually meaningless, as there is -+ # no search path for DLLs. -+ hardcode_libdir_flag_spec='-L$libdir' -+ if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then -+ : -+ else -+ ld_shlibs=no -+ fi -+ ;; -+ netbsd*) -+ ;; -+ solaris* | sysv5*) -+ if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then -+ ld_shlibs=no -+ elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then -+ : -+ else -+ ld_shlibs=no -+ fi -+ ;; -+ sunos4*) -+ hardcode_direct=yes -+ ;; -+ *) -+ if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then -+ : -+ else -+ ld_shlibs=no -+ fi -+ ;; -+ esac -+ if test "$ld_shlibs" = yes; then -+ # Unlike libtool, we use -rpath here, not --rpath, since the documented -+ # option of GNU ld is called -rpath, not --rpath. -+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -+ fi -+else -+ case "$host_os" in -+ aix3*) -+ # Note: this linker hardcodes the directories in LIBPATH if there -+ # are no directories specified by -L. -+ hardcode_minus_L=yes -+ if test "$GCC" = yes; then -+ # Neither direct hardcoding nor static linking is supported with a -+ # broken collect2. -+ hardcode_direct=unsupported -+ fi -+ ;; -+ aix4* | aix5*) -+ if test "$host_cpu" = ia64; then -+ # On IA64, the linker does run time linking by default, so we don't -+ # have to do anything special. -+ aix_use_runtimelinking=no -+ else -+ aix_use_runtimelinking=no -+ # Test if we are trying to use run time linking or normal -+ # AIX style linking. If -brtl is somewhere in LDFLAGS, we -+ # need to do runtime linking. -+ case $host_os in aix4.[23]|aix4.[23].*|aix5*) -+ for ld_flag in $LDFLAGS; do -+ if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then -+ aix_use_runtimelinking=yes -+ break -+ fi -+ done -+ esac -+ fi -+ hardcode_direct=yes -+ hardcode_libdir_separator=':' -+ if test "$GCC" = yes; then -+ case $host_os in aix4.[012]|aix4.[012].*) -+ collect2name=`${CC} -print-prog-name=collect2` -+ if test -f "$collect2name" && \ -+ strings "$collect2name" | grep resolve_lib_name >/dev/null -+ then -+ # We have reworked collect2 -+ hardcode_direct=yes -+ else -+ # We have old collect2 -+ hardcode_direct=unsupported -+ hardcode_minus_L=yes -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_libdir_separator= -+ fi -+ esac -+ fi -+ # Begin _LT_AC_SYS_LIBPATH_AIX. -+ echo 'int main () { return 0; }' > conftest.c -+ ${CC} ${LDFLAGS} conftest.c -o conftest -+ aix_libpath=`dump -H conftest 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } -+}'` -+ if test -z "$aix_libpath"; then -+ aix_libpath=`dump -HX64 conftest 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } -+}'` -+ fi -+ if test -z "$aix_libpath"; then -+ aix_libpath="/usr/lib:/lib" -+ fi -+ rm -f conftest.c conftest -+ # End _LT_AC_SYS_LIBPATH_AIX. -+ if test "$aix_use_runtimelinking" = yes; then -+ hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath" -+ else -+ if test "$host_cpu" = ia64; then -+ hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib' -+ else -+ hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath" -+ fi -+ fi -+ ;; -+ amigaos*) -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_minus_L=yes -+ # see comment about different semantics on the GNU ld section -+ ld_shlibs=no -+ ;; -+ bsdi4*) -+ ;; -+ cygwin* | mingw* | pw32*) -+ # When not using gcc, we currently assume that we are using -+ # Microsoft Visual C++. -+ # hardcode_libdir_flag_spec is actually meaningless, as there is -+ # no search path for DLLs. -+ hardcode_libdir_flag_spec=' ' -+ libext=lib -+ ;; -+ darwin* | rhapsody*) -+ if $CC -v 2>&1 | grep 'Apple' >/dev/null ; then -+ hardcode_direct=no -+ fi -+ ;; -+ dgux*) -+ hardcode_libdir_flag_spec='-L$libdir' -+ ;; -+ freebsd1*) -+ ld_shlibs=no -+ ;; -+ freebsd2.2*) -+ hardcode_libdir_flag_spec='-R$libdir' -+ hardcode_direct=yes -+ ;; -+ freebsd2*) -+ hardcode_direct=yes -+ hardcode_minus_L=yes -+ ;; -+ freebsd*) -+ hardcode_libdir_flag_spec='-R$libdir' -+ hardcode_direct=yes -+ ;; -+ hpux9*) -+ hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' -+ hardcode_libdir_separator=: -+ hardcode_direct=yes -+ # hardcode_minus_L: Not really in the search PATH, -+ # but as the default location of the library. -+ hardcode_minus_L=yes -+ ;; -+ hpux10* | hpux11*) -+ if test "$with_gnu_ld" = no; then -+ case "$host_cpu" in -+ hppa*64*) -+ hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' -+ hardcode_libdir_separator=: -+ hardcode_direct=no -+ ;; -+ ia64*) -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_direct=no -+ # hardcode_minus_L: Not really in the search PATH, -+ # but as the default location of the library. -+ hardcode_minus_L=yes -+ ;; -+ *) -+ hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' -+ hardcode_libdir_separator=: -+ hardcode_direct=yes -+ # hardcode_minus_L: Not really in the search PATH, -+ # but as the default location of the library. -+ hardcode_minus_L=yes -+ ;; -+ esac -+ fi -+ ;; -+ irix5* | irix6* | nonstopux*) -+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -+ hardcode_libdir_separator=: -+ ;; -+ netbsd*) -+ hardcode_libdir_flag_spec='-R$libdir' -+ hardcode_direct=yes -+ ;; -+ newsos6) -+ hardcode_direct=yes -+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -+ hardcode_libdir_separator=: -+ ;; -+ openbsd*) -+ hardcode_direct=yes -+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then -+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir' -+ else -+ case "$host_os" in -+ openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*) -+ hardcode_libdir_flag_spec='-R$libdir' -+ ;; -+ *) -+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir' -+ ;; -+ esac -+ fi -+ ;; -+ os2*) -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_minus_L=yes -+ ;; -+ osf3*) -+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -+ hardcode_libdir_separator=: -+ ;; -+ osf4* | osf5*) -+ if test "$GCC" = yes; then -+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -+ else -+ # Both cc and cxx compiler support -rpath directly -+ hardcode_libdir_flag_spec='-rpath $libdir' -+ fi -+ hardcode_libdir_separator=: -+ ;; -+ sco3.2v5*) -+ ;; -+ solaris*) -+ hardcode_libdir_flag_spec='-R$libdir' -+ ;; -+ sunos4*) -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_direct=yes -+ hardcode_minus_L=yes -+ ;; -+ sysv4) -+ case $host_vendor in -+ sni) -+ hardcode_direct=yes # is this really true??? -+ ;; -+ siemens) -+ hardcode_direct=no -+ ;; -+ motorola) -+ hardcode_direct=no #Motorola manual says yes, but my tests say they lie -+ ;; -+ esac -+ ;; -+ sysv4.3*) -+ ;; -+ sysv4*MP*) -+ if test -d /usr/nec; then -+ ld_shlibs=yes -+ fi -+ ;; -+ sysv4.2uw2*) -+ hardcode_direct=yes -+ hardcode_minus_L=no -+ ;; -+ sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[78]* | unixware7*) -+ ;; -+ sysv5*) -+ hardcode_libdir_flag_spec= -+ ;; -+ uts4*) -+ hardcode_libdir_flag_spec='-L$libdir' -+ ;; -+ *) -+ ld_shlibs=no -+ ;; -+ esac -+fi -+ -+# Check dynamic linker characteristics -+# Code taken from libtool.m4's AC_LIBTOOL_SYS_DYNAMIC_LINKER. -+libname_spec='lib$name' -+case "$host_os" in -+ aix3*) -+ ;; -+ aix4* | aix5*) -+ ;; -+ amigaos*) -+ ;; -+ beos*) -+ ;; -+ bsdi4*) -+ ;; -+ cygwin* | mingw* | pw32*) -+ shrext=.dll -+ ;; -+ darwin* | rhapsody*) -+ shrext=.dylib -+ ;; -+ dgux*) -+ ;; -+ freebsd1*) -+ ;; -+ freebsd*) -+ ;; -+ gnu*) -+ ;; -+ hpux9* | hpux10* | hpux11*) -+ case "$host_cpu" in -+ ia64*) -+ shrext=.so -+ ;; -+ hppa*64*) -+ shrext=.sl -+ ;; -+ *) -+ shrext=.sl -+ ;; -+ esac -+ ;; -+ irix5* | irix6* | nonstopux*) -+ case "$host_os" in -+ irix5* | nonstopux*) -+ libsuff= shlibsuff= -+ ;; -+ *) -+ case $LD in -+ *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") libsuff= shlibsuff= ;; -+ *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") libsuff=32 shlibsuff=N32 ;; -+ *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") libsuff=64 shlibsuff=64 ;; -+ *) libsuff= shlibsuff= ;; -+ esac -+ ;; -+ esac -+ ;; -+ linux*oldld* | linux*aout* | linux*coff*) -+ ;; -+ linux*) -+ ;; -+ netbsd*) -+ ;; -+ newsos6) -+ ;; -+ nto-qnx) -+ ;; -+ openbsd*) -+ ;; -+ os2*) -+ libname_spec='$name' -+ shrext=.dll -+ ;; -+ osf3* | osf4* | osf5*) -+ ;; -+ sco3.2v5*) -+ ;; -+ solaris*) -+ ;; -+ sunos4*) -+ ;; -+ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) -+ ;; -+ sysv4*MP*) -+ ;; -+ uts4*) -+ ;; -+esac -+ -+sed_quote_subst='s/\(["`$\\]\)/\\\1/g' -+escaped_wl=`echo "X$wl" | sed -e 's/^X//' -e "$sed_quote_subst"` -+shlibext=`echo "$shrext" | sed -e 's,^\.,,'` -+escaped_hardcode_libdir_flag_spec=`echo "X$hardcode_libdir_flag_spec" | sed -e 's/^X//' -e "$sed_quote_subst"` -+ -+sed -e 's/^\([a-zA-Z0-9_]*\)=/acl_cv_\1=/' < po/Makefile; -+[ - chmod +x debian/rules; - test -z "$CONFIG_HEADERS" || echo timestamp > stamp-h]) ---- lrzsz-0.12.20.safe/intl/bindtextdom.c 1998-04-26 09:22:36.000000000 -0400 -+++ lrzsz-0.12.20/intl/bindtextdom.c 2004-09-12 14:40:34.343749912 -0400 -@@ -1,59 +1,75 @@ - /* Implementation of the bindtextdomain(3) function -- Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. -+ Copyright (C) 1995-1998, 2000-2003 Free Software Foundation, Inc. - -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation; either version 2, or (at your option) -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. - -- You should have received a copy of the GNU General Public License -- along with this program; if not, write to the Free Software Foundation, -- Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ - - #ifdef HAVE_CONFIG_H - # include - #endif - --#if defined STDC_HEADERS || defined _LIBC --# include --#else --# ifdef HAVE_MALLOC_H --# include --# else --void free (); --# endif --#endif -+#include -+#include -+#include - --#if defined HAVE_STRING_H || defined _LIBC --# include -+#ifdef _LIBC -+# include - #else --# include --# ifndef memcpy --# define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num) --# endif -+# include "libgnuintl.h" - #endif -+#include "gettextP.h" - - #ifdef _LIBC --# include -+/* We have to handle multi-threaded applications. */ -+# include - #else --# include "libgettext.h" -+/* Provide dummy implementation if this is outside glibc. */ -+# define __libc_rwlock_define(CLASS, NAME) -+# define __libc_rwlock_wrlock(NAME) -+# define __libc_rwlock_unlock(NAME) -+#endif -+ -+/* The internal variables in the standalone libintl.a must have different -+ names than the internal variables in GNU libc, otherwise programs -+ using libintl.a cannot be linked statically. */ -+#if !defined _LIBC -+# define _nl_default_dirname libintl_nl_default_dirname -+# define _nl_domain_bindings libintl_nl_domain_bindings -+#endif -+ -+/* Some compilers, like SunOS4 cc, don't have offsetof in . */ -+#ifndef offsetof -+# define offsetof(type,ident) ((size_t)&(((type*)0)->ident)) - #endif --#include "gettext.h" --#include "gettextP.h" - - /* @@ end of prolog @@ */ - - /* Contains the default location of the message catalogs. */ - extern const char _nl_default_dirname[]; -+#ifdef _LIBC -+extern const char _nl_default_dirname_internal[] attribute_hidden; -+#else -+# define INTUSE(name) name -+#endif - - /* List with bindings of specific domains. */ - extern struct binding *_nl_domain_bindings; - -+/* Lock variable to protect the global data in the gettext implementation. */ -+__libc_rwlock_define (extern, _nl_state_lock attribute_hidden) -+ - - /* Names for the libintl functions are a problem. They must not clash - with existing names and they should follow ANSI C. But this source -@@ -61,23 +77,41 @@ - prefix. So we have to make a difference here. */ - #ifdef _LIBC - # define BINDTEXTDOMAIN __bindtextdomain --# define strdup(str) __strdup (str) -+# define BIND_TEXTDOMAIN_CODESET __bind_textdomain_codeset -+# ifndef strdup -+# define strdup(str) __strdup (str) -+# endif - #else --# define BINDTEXTDOMAIN bindtextdomain__ -+# define BINDTEXTDOMAIN libintl_bindtextdomain -+# define BIND_TEXTDOMAIN_CODESET libintl_bind_textdomain_codeset - #endif - --/* Specify that the DOMAINNAME message catalog will be found -- in DIRNAME rather than in the system locale data base. */ --char * --BINDTEXTDOMAIN (domainname, dirname) -- const char *domainname; -- const char *dirname; -+/* Specifies the directory name *DIRNAMEP and the output codeset *CODESETP -+ to be used for the DOMAINNAME message catalog. -+ If *DIRNAMEP or *CODESETP is NULL, the corresponding attribute is not -+ modified, only the current value is returned. -+ If DIRNAMEP or CODESETP is NULL, the corresponding attribute is neither -+ modified nor returned. */ -+static void -+set_binding_values (const char *domainname, -+ const char **dirnamep, const char **codesetp) - { - struct binding *binding; -+ int modified; - - /* Some sanity checks. */ - if (domainname == NULL || domainname[0] == '\0') -- return NULL; -+ { -+ if (dirnamep) -+ *dirnamep = NULL; -+ if (codesetp) -+ *codesetp = NULL; -+ return; -+ } -+ -+ __libc_rwlock_wrlock (_nl_state_lock); -+ -+ modified = 0; - - for (binding = _nl_domain_bindings; binding != NULL; binding = binding->next) - { -@@ -93,81 +127,173 @@ - } - } - -- if (dirname == NULL) -- /* The current binding has be to returned. */ -- return binding == NULL ? (char *) _nl_default_dirname : binding->dirname; -- - if (binding != NULL) - { -- /* The domain is already bound. If the new value and the old -- one are equal we simply do nothing. Otherwise replace the -- old binding. */ -- if (strcmp (dirname, binding->dirname) != 0) -+ if (dirnamep) - { -- char *new_dirname; -+ const char *dirname = *dirnamep; - -- if (strcmp (dirname, _nl_default_dirname) == 0) -- new_dirname = (char *) _nl_default_dirname; -+ if (dirname == NULL) -+ /* The current binding has be to returned. */ -+ *dirnamep = binding->dirname; - else - { -+ /* The domain is already bound. If the new value and the old -+ one are equal we simply do nothing. Otherwise replace the -+ old binding. */ -+ char *result = binding->dirname; -+ if (strcmp (dirname, result) != 0) -+ { -+ if (strcmp (dirname, INTUSE(_nl_default_dirname)) == 0) -+ result = (char *) INTUSE(_nl_default_dirname); -+ else -+ { - #if defined _LIBC || defined HAVE_STRDUP -- new_dirname = strdup (dirname); -- if (new_dirname == NULL) -- return NULL; -+ result = strdup (dirname); - #else -- size_t len = strlen (dirname) + 1; -- new_dirname = (char *) malloc (len); -- if (new_dirname == NULL) -- return NULL; -- -- memcpy (new_dirname, dirname, len); -+ size_t len = strlen (dirname) + 1; -+ result = (char *) malloc (len); -+ if (__builtin_expect (result != NULL, 1)) -+ memcpy (result, dirname, len); - #endif -+ } -+ -+ if (__builtin_expect (result != NULL, 1)) -+ { -+ if (binding->dirname != INTUSE(_nl_default_dirname)) -+ free (binding->dirname); -+ -+ binding->dirname = result; -+ modified = 1; -+ } -+ } -+ *dirnamep = result; - } -+ } - -- if (binding->dirname != _nl_default_dirname) -- free (binding->dirname); -+ if (codesetp) -+ { -+ const char *codeset = *codesetp; - -- binding->dirname = new_dirname; -+ if (codeset == NULL) -+ /* The current binding has be to returned. */ -+ *codesetp = binding->codeset; -+ else -+ { -+ /* The domain is already bound. If the new value and the old -+ one are equal we simply do nothing. Otherwise replace the -+ old binding. */ -+ char *result = binding->codeset; -+ if (result == NULL || strcmp (codeset, result) != 0) -+ { -+#if defined _LIBC || defined HAVE_STRDUP -+ result = strdup (codeset); -+#else -+ size_t len = strlen (codeset) + 1; -+ result = (char *) malloc (len); -+ if (__builtin_expect (result != NULL, 1)) -+ memcpy (result, codeset, len); -+#endif -+ -+ if (__builtin_expect (result != NULL, 1)) -+ { -+ if (binding->codeset != NULL) -+ free (binding->codeset); -+ -+ binding->codeset = result; -+ binding->codeset_cntr++; -+ modified = 1; -+ } -+ } -+ *codesetp = result; -+ } - } - } -+ else if ((dirnamep == NULL || *dirnamep == NULL) -+ && (codesetp == NULL || *codesetp == NULL)) -+ { -+ /* Simply return the default values. */ -+ if (dirnamep) -+ *dirnamep = INTUSE(_nl_default_dirname); -+ if (codesetp) -+ *codesetp = NULL; -+ } - else - { - /* We have to create a new binding. */ -- size_t len; -+ size_t len = strlen (domainname) + 1; - struct binding *new_binding = -- (struct binding *) malloc (sizeof (*new_binding)); -+ (struct binding *) malloc (offsetof (struct binding, domainname) + len); - -- if (new_binding == NULL) -- return NULL; -+ if (__builtin_expect (new_binding == NULL, 0)) -+ goto failed; - -+ memcpy (new_binding->domainname, domainname, len); -+ -+ if (dirnamep) -+ { -+ const char *dirname = *dirnamep; -+ -+ if (dirname == NULL) -+ /* The default value. */ -+ dirname = INTUSE(_nl_default_dirname); -+ else -+ { -+ if (strcmp (dirname, INTUSE(_nl_default_dirname)) == 0) -+ dirname = INTUSE(_nl_default_dirname); -+ else -+ { -+ char *result; - #if defined _LIBC || defined HAVE_STRDUP -- new_binding->domainname = strdup (domainname); -- if (new_binding->domainname == NULL) -- return NULL; -+ result = strdup (dirname); -+ if (__builtin_expect (result == NULL, 0)) -+ goto failed_dirname; - #else -- len = strlen (domainname) + 1; -- new_binding->domainname = (char *) malloc (len); -- if (new_binding->domainname == NULL) -- return NULL; -- memcpy (new_binding->domainname, domainname, len); -+ size_t len = strlen (dirname) + 1; -+ result = (char *) malloc (len); -+ if (__builtin_expect (result == NULL, 0)) -+ goto failed_dirname; -+ memcpy (result, dirname, len); - #endif -- -- if (strcmp (dirname, _nl_default_dirname) == 0) -- new_binding->dirname = (char *) _nl_default_dirname; -+ dirname = result; -+ } -+ } -+ *dirnamep = dirname; -+ new_binding->dirname = (char *) dirname; -+ } - else -+ /* The default value. */ -+ new_binding->dirname = (char *) INTUSE(_nl_default_dirname); -+ -+ new_binding->codeset_cntr = 0; -+ -+ if (codesetp) - { -+ const char *codeset = *codesetp; -+ -+ if (codeset != NULL) -+ { -+ char *result; -+ - #if defined _LIBC || defined HAVE_STRDUP -- new_binding->dirname = strdup (dirname); -- if (new_binding->dirname == NULL) -- return NULL; -+ result = strdup (codeset); -+ if (__builtin_expect (result == NULL, 0)) -+ goto failed_codeset; - #else -- len = strlen (dirname) + 1; -- new_binding->dirname = (char *) malloc (len); -- if (new_binding->dirname == NULL) -- return NULL; -- memcpy (new_binding->dirname, dirname, len); -+ size_t len = strlen (codeset) + 1; -+ result = (char *) malloc (len); -+ if (__builtin_expect (result == NULL, 0)) -+ goto failed_codeset; -+ memcpy (result, codeset, len); - #endif -+ codeset = result; -+ new_binding->codeset_cntr++; -+ } -+ *codesetp = codeset; -+ new_binding->codeset = (char *) codeset; - } -+ else -+ new_binding->codeset = NULL; - - /* Now enqueue it. */ - if (_nl_domain_bindings == NULL -@@ -187,13 +313,51 @@ - binding->next = new_binding; - } - -- binding = new_binding; -+ modified = 1; -+ -+ /* Here we deal with memory allocation failures. */ -+ if (0) -+ { -+ failed_codeset: -+ if (new_binding->dirname != INTUSE(_nl_default_dirname)) -+ free (new_binding->dirname); -+ failed_dirname: -+ free (new_binding); -+ failed: -+ if (dirnamep) -+ *dirnamep = NULL; -+ if (codesetp) -+ *codesetp = NULL; -+ } - } - -- return binding->dirname; -+ /* If we modified any binding, we flush the caches. */ -+ if (modified) -+ ++_nl_msg_cat_cntr; -+ -+ __libc_rwlock_unlock (_nl_state_lock); -+} -+ -+/* Specify that the DOMAINNAME message catalog will be found -+ in DIRNAME rather than in the system locale data base. */ -+char * -+BINDTEXTDOMAIN (const char *domainname, const char *dirname) -+{ -+ set_binding_values (domainname, &dirname, NULL); -+ return (char *) dirname; -+} -+ -+/* Specify the character encoding in which the messages from the -+ DOMAINNAME message catalog will be returned. */ -+char * -+BIND_TEXTDOMAIN_CODESET (const char *domainname, const char *codeset) -+{ -+ set_binding_values (domainname, NULL, &codeset); -+ return (char *) codeset; - } - - #ifdef _LIBC --/* Alias for function name in GNU C Library. */ -+/* Aliases for function names in GNU C Library. */ - weak_alias (__bindtextdomain, bindtextdomain); -+weak_alias (__bind_textdomain_codeset, bind_textdomain_codeset); - #endif ---- lrzsz-0.12.20.safe/intl/cat-compat.c 1998-04-26 09:22:37.000000000 -0400 -+++ lrzsz-0.12.20/intl/cat-compat.c 1969-12-31 19:00:00.000000000 -0500 -@@ -1,262 +0,0 @@ --/* Compatibility code for gettext-using-catgets interface. -- Copyright (C) 1995, 1997 Free Software Foundation, Inc. -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation; either version 2, or (at your option) -- any later version. -- -- This program is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -- -- You should have received a copy of the GNU General Public License -- along with this program; if not, write to the Free Software Foundation, -- Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -- --#ifdef HAVE_CONFIG_H --# include --#endif -- --#include -- --#ifdef STDC_HEADERS --# include --# include --#else --char *getenv (); --# ifdef HAVE_MALLOC_H --# include --# endif --#endif -- --#ifdef HAVE_NL_TYPES_H --# include --#endif -- --#include "libgettext.h" -- --/* @@ end of prolog @@ */ -- --/* XPG3 defines the result of `setlocale (category, NULL)' as: -- ``Directs `setlocale()' to query `category' and return the current -- setting of `local'.'' -- However it does not specify the exact format. And even worse: POSIX -- defines this not at all. So we can use this feature only on selected -- system (e.g. those using GNU C Library). */ --#ifdef _LIBC --# define HAVE_LOCALE_NULL --#endif -- --/* The catalog descriptor. */ --static nl_catd catalog = (nl_catd) -1; -- --/* Name of the default catalog. */ --static const char default_catalog_name[] = "messages"; -- --/* Name of currently used catalog. */ --static const char *catalog_name = default_catalog_name; -- --/* Get ID for given string. If not found return -1. */ --static int msg_to_cat_id PARAMS ((const char *msg)); -- --/* Substitution for systems lacking this function in their C library. */ --#if !_LIBC && !HAVE_STPCPY --static char *stpcpy PARAMS ((char *dest, const char *src)); --#endif -- -- --/* Set currently used domain/catalog. */ --char * --textdomain (domainname) -- const char *domainname; --{ -- nl_catd new_catalog; -- char *new_name; -- size_t new_name_len; -- char *lang; -- --#if defined HAVE_SETLOCALE && defined HAVE_LC_MESSAGES \ -- && defined HAVE_LOCALE_NULL -- lang = setlocale (LC_MESSAGES, NULL); --#else -- lang = getenv ("LC_ALL"); -- if (lang == NULL || lang[0] == '\0') -- { -- lang = getenv ("LC_MESSAGES"); -- if (lang == NULL || lang[0] == '\0') -- lang = getenv ("LANG"); -- } --#endif -- if (lang == NULL || lang[0] == '\0') -- lang = "C"; -- -- /* See whether name of currently used domain is asked. */ -- if (domainname == NULL) -- return (char *) catalog_name; -- -- if (domainname[0] == '\0') -- domainname = default_catalog_name; -- -- /* Compute length of added path element. */ -- new_name_len = sizeof (LOCALEDIR) - 1 + 1 + strlen (lang) -- + sizeof ("/LC_MESSAGES/") - 1 + sizeof (PACKAGE) - 1 -- + sizeof (".cat"); -- -- new_name = (char *) malloc (new_name_len); -- if (new_name == NULL) -- return NULL; -- -- strcpy (new_name, PACKAGE); -- new_catalog = catopen (new_name, 0); -- -- if (new_catalog == (nl_catd) -1) -- { -- /* NLSPATH search didn't work, try absolute path */ -- sprintf (new_name, "%s/%s/LC_MESSAGES/%s.cat", LOCALEDIR, lang, -- PACKAGE); -- new_catalog = catopen (new_name, 0); -- -- if (new_catalog == (nl_catd) -1) -- { -- free (new_name); -- return (char *) catalog_name; -- } -- } -- -- /* Close old catalog. */ -- if (catalog != (nl_catd) -1) -- catclose (catalog); -- if (catalog_name != default_catalog_name) -- free ((char *) catalog_name); -- -- catalog = new_catalog; -- catalog_name = new_name; -- -- return (char *) catalog_name; --} -- --char * --bindtextdomain (domainname, dirname) -- const char *domainname; -- const char *dirname; --{ --#if HAVE_SETENV || HAVE_PUTENV -- char *old_val, *new_val, *cp; -- size_t new_val_len; -- -- /* This does not make much sense here but to be compatible do it. */ -- if (domainname == NULL) -- return NULL; -- -- /* Compute length of added path element. If we use setenv we don't need -- the first byts for NLSPATH=, but why complicate the code for this -- peanuts. */ -- new_val_len = sizeof ("NLSPATH=") - 1 + strlen (dirname) -- + sizeof ("/%L/LC_MESSAGES/%N.cat"); -- -- old_val = getenv ("NLSPATH"); -- if (old_val == NULL || old_val[0] == '\0') -- { -- old_val = NULL; -- new_val_len += 1 + sizeof (LOCALEDIR) - 1 -- + sizeof ("/%L/LC_MESSAGES/%N.cat"); -- } -- else -- new_val_len += strlen (old_val); -- -- new_val = (char *) malloc (new_val_len); -- if (new_val == NULL) -- return NULL; -- --# if HAVE_SETENV -- cp = new_val; --# else -- cp = stpcpy (new_val, "NLSPATH="); --# endif -- -- cp = stpcpy (cp, dirname); -- cp = stpcpy (cp, "/%L/LC_MESSAGES/%N.cat:"); -- -- if (old_val == NULL) -- { --# if __STDC__ -- stpcpy (cp, LOCALEDIR "/%L/LC_MESSAGES/%N.cat"); --# else -- -- cp = stpcpy (cp, LOCALEDIR); -- stpcpy (cp, "/%L/LC_MESSAGES/%N.cat"); --# endif -- } -- else -- stpcpy (cp, old_val); -- --# if HAVE_SETENV -- setenv ("NLSPATH", new_val, 1); -- free (new_val); --# else -- putenv (new_val); -- /* Do *not* free the environment entry we just entered. It is used -- from now on. */ --# endif -- --#endif -- -- return (char *) domainname; --} -- --#undef gettext --char * --gettext (msg) -- const char *msg; --{ -- int msgid; -- -- if (msg == NULL || catalog == (nl_catd) -1) -- return (char *) msg; -- -- /* Get the message from the catalog. We always use set number 1. -- The message ID is computed by the function `msg_to_cat_id' -- which works on the table generated by `po-to-tbl'. */ -- msgid = msg_to_cat_id (msg); -- if (msgid == -1) -- return (char *) msg; -- -- return catgets (catalog, 1, msgid, (char *) msg); --} -- --/* Look through the table `_msg_tbl' which has `_msg_tbl_length' entries -- for the one equal to msg. If it is found return the ID. In case when -- the string is not found return -1. */ --static int --msg_to_cat_id (msg) -- const char *msg; --{ -- int cnt; -- -- for (cnt = 0; cnt < _msg_tbl_length; ++cnt) -- if (strcmp (msg, _msg_tbl[cnt]._msg) == 0) -- return _msg_tbl[cnt]._msg_number; -- -- return -1; --} -- -- --/* @@ begin of epilog @@ */ -- --/* We don't want libintl.a to depend on any other library. So we -- avoid the non-standard function stpcpy. In GNU C Library this -- function is available, though. Also allow the symbol HAVE_STPCPY -- to be defined. */ --#if !_LIBC && !HAVE_STPCPY --static char * --stpcpy (dest, src) -- char *dest; -- const char *src; --{ -- while ((*dest++ = *src++) != '\0') -- /* Do nothing. */ ; -- return dest - 1; --} --#endif ---- lrzsz-0.12.20.safe/intl/ChangeLog 1998-04-26 09:22:35.000000000 -0400 -+++ lrzsz-0.12.20/intl/ChangeLog 2004-09-12 14:40:34.349749000 -0400 -@@ -1,1022 +1,4 @@ --1997-09-06 02:10 Ulrich Drepper -- -- * intlh.inst.in: Reformat copyright. -- --1997-08-19 15:22 Ulrich Drepper -- -- * dcgettext.c (DCGETTEXT): Remove wrong comment. -- --1997-08-16 00:13 Ulrich Drepper -- -- * Makefile.in (install-data): Don't change directory to install. -- --1997-08-01 14:30 Ulrich Drepper -- -- * cat-compat.c: Fix copyright. -- -- * localealias.c: Don't define strchr unless !HAVE_STRCHR. -- -- * loadmsgcat.c: Update copyright. Fix typos. -- -- * l10nflist.c: Don't define strchr unless !HAVE_STRCHR. -- (_nl_make_l10nflist): Handle sponsor and revision correctly. -- -- * gettext.c: Update copyright. -- * gettext.h: Likewise. -- * hash-string.h: Likewise. -- -- * finddomain.c: Remoave dead code. Define strchr only if -- !HAVE_STRCHR. -- -- * explodename.c: Include . -- -- * explodename.c: Reformat copyright text. -- (_nl_explode_name): Fix typo. -- -- * dcgettext.c: Define and use __set_errno. -- (guess_category_value): Don't use setlocale if HAVE_LC_MESSAGES is -- not defined. -- -- * bindtextdom.c: Pretty printing. -- --1997-05-01 02:25 Ulrich Drepper -- -- * dcgettext.c (guess_category_value): Don't depend on -- HAVE_LC_MESSAGES. We don't need the macro here. -- Patch by Bruno Haible . -- -- * cat-compat.c (textdomain): DoN't refer to HAVE_SETLOCALE_NULL -- macro. Instead use HAVE_LOCALE_NULL and define it when using -- glibc, as in dcgettext.c. -- Patch by Bruno Haible . -- -- * Makefile.in (CPPFLAGS): New variable. Reported by Franc,ois -- Pinard. -- --Mon Mar 10 06:51:17 1997 Ulrich Drepper -- -- * Makefile.in: Implement handling of libtool. -- -- * gettextP.h: Change data structures for use of generic lowlevel -- i18n file handling. -- --Wed Dec 4 20:21:18 1996 Ulrich Drepper -- -- * textdomain.c: Put parentheses around arguments of memcpy macro -- definition. -- * localealias.c: Likewise. -- * l10nflist.c: Likewise. -- * finddomain.c: Likewise. -- * bindtextdom.c: Likewise. -- Reported by Thomas Esken. -- --Mon Nov 25 22:57:51 1996 Ulrich Drepper -- -- * textdomain.c: Move definition of `memcpy` macro to right -- position. -- --Fri Nov 22 04:01:58 1996 Ulrich Drepper -- -- * finddomain.c [!HAVE_STRING_H && !_LIBC]: Define memcpy using -- bcopy if not already defined. Reported by Thomas Esken. -- * bindtextdom.c: Likewise. -- * l10nflist.c: Likewise. -- * localealias.c: Likewise. -- * textdomain.c: Likewise. -- --Tue Oct 29 11:10:27 1996 Ulrich Drepper -- -- * Makefile.in (libdir): Change to use exec_prefix instead of -- prefix. Reported by Knut-HåvardAksnes . -- --Sat Aug 31 03:07:09 1996 Ulrich Drepper -- -- * l10nflist.c (_nl_normalize_codeset): We convert to lower case, -- so don't prepend uppercase `ISO' for only numeric arg. -- --Fri Jul 19 00:15:46 1996 Ulrich Drepper -- -- * l10nflist.c: Move inclusion of argz.h, ctype.h, stdlib.h after -- definition of _GNU_SOURCE. Patch by Roland McGrath. -- -- * Makefile.in (uninstall): Fix another bug with `for' loop and -- empty arguments. Patch by Jim Meyering. Correct name os -- uninstalled files: no intl- prefix anymore. -- -- * Makefile.in (install-data): Again work around shells which -- cannot handle mpty for list. Reported by Jim Meyering. -- --Sat Jul 13 18:11:35 1996 Ulrich Drepper -- -- * Makefile.in (install): Split goal. Now depend on install-exec -- and install-data. -- (install-exec, install-data): New goals. Created from former -- install goal. -- Reported by Karl Berry. -- --Sat Jun 22 04:58:14 1996 Ulrich Drepper -- -- * Makefile.in (MKINSTALLDIRS): New variable. Path to -- mkinstalldirs script. -- (install): use MKINSTALLDIRS variable or if the script is not present -- try to find it in the $top_scrdir). -- --Wed Jun 19 02:56:56 1996 Ulrich Drepper -- -- * l10nflist.c: Linux libc *partly* includes the argz_* functions. -- Grr. Work around by renaming the static version and use macros -- for renaming. -- --Tue Jun 18 20:11:17 1996 Ulrich Drepper -- -- * l10nflist.c: Correct presence test macros of __argz_* functions. -- -- * l10nflist.c: Include based on test of it instead when -- __argz_* functions are available. -- Reported by Andreas Schwab. -- --Thu Jun 13 15:17:44 1996 Ulrich Drepper -- -- * explodename.c, l10nflist.c: Define NULL for dumb systems. -- --Tue Jun 11 17:05:13 1996 Ulrich Drepper -- -- * intlh.inst.in, libgettext.h (dcgettext): Rename local variable -- result to __result to prevent name clash. -- -- * l10nflist.c, localealias.c, dcgettext.c: Define _GNU_SOURCE to -- get prototype for stpcpy and strcasecmp. -- -- * intlh.inst.in, libgettext.h: Move declaration of -- `_nl_msg_cat_cntr' outside __extension__ block to prevent warning -- from gcc's -Wnested-extern option. -- --Fri Jun 7 01:58:00 1996 Ulrich Drepper -- -- * Makefile.in (install): Remove comment. -- --Thu Jun 6 17:28:17 1996 Ulrich Drepper -- -- * Makefile.in (install): Work around for another Buglix stupidity. -- Always use an `else' close for `if's. Reported by Nelson Beebe. -- -- * Makefile.in (intlh.inst): Correct typo in phony rule. -- Reported by Nelson Beebe. -- --Thu Jun 6 01:49:52 1996 Ulrich Drepper -- -- * dcgettext.c (read_alias_file): Rename variable alloca_list to -- block_list as the macro calls assume. -- Patch by Eric Backus. -- -- * localealias.c [!HAVE_ALLOCA]: Define alloca as macro using -- malloc. -- (read_alias_file): Rename varriabe alloca_list to block_list as the -- macro calls assume. -- Patch by Eric Backus. -- -- * l10nflist.c: Correct conditional for inclusion. -- Reported by Roland McGrath. -- -- * Makefile.in (all): Depend on all-@USE_INCLUDED_LIBINTL@, not -- all-@USE_NLS@. -- -- * Makefile.in (install): intlh.inst comes from local dir, not -- $(srcdir). -- -- * Makefile.in (intlh.inst): Special handling of this goal. If -- used in gettext, this is really a rul to construct this file. If -- used in any other package it is defined as a .PHONY rule with -- empty body. -- -- * finddomain.c: Extract locale file information handling into -- l10nfile.c. Rename local stpcpy__ function to stpcpy. -- -- * dcgettext.c (stpcpy): Add local definition. -- -- * l10nflist.c: Solve some portability problems. Patches partly by -- Thomas Esken. Add local definition of stpcpy. -- --Tue Jun 4 02:47:49 1996 Ulrich Drepper -- -- * intlh.inst.in: Don't depend including on -- HAVE_LOCALE_H. Instead configure must rewrite this fiile -- depending on the result of the configure run. -- -- * Makefile.in (install): libintl.inst is now called intlh.inst. -- Add rules for updating intlh.inst from intlh.inst.in. -- -- * libintl.inst: Renamed to intlh.inst.in. -- -- * localealias.c, dcgettext.c [__GNUC__]: Define HAVE_ALLOCA to 1 -- because gcc has __buitlin_alloca. -- Reported by Roland McGrath. -- --Mon Jun 3 00:32:16 1996 Ulrich Drepper -- -- * Makefile.in (installcheck): New goal to fulfill needs of -- automake's distcheck. -- -- * Makefile.in (install): Reorder commands so that VERSION is -- found. -- -- * Makefile.in (gettextsrcdir): Now use subdirectory intl/ in -- @datadir@/gettext. -- (COMSRCS): Add l10nfile.c. -- (OBJECTS): Add l10nfile.o. -- (DISTFILES): Rename to DISTFILE.normal. Remove $(DISTFILES.common). -- (DISTFILE.gettext): Remove $(DISTFILES.common). -- (all-gettext): Remove goal. -- (install): If $(PACKAGE) = gettext install, otherwose do nothing. No -- package but gettext itself should install libintl.h + headers. -- (dist): Extend goal to work for gettext, too. -- (dist-gettext): Remove goal. -- -- * dcgettext.c [!HAVE_ALLOCA]: Define macro alloca by using malloc. -- --Sun Jun 2 17:33:06 1996 Ulrich Drepper -- -- * loadmsgcat.c (_nl_load_domain): Parameter is now comes from -- find_l10nfile. -- --Sat Jun 1 02:23:03 1996 Ulrich Drepper -- -- * l10nflist.c (__argz_next): Add definition. -- -- * dcgettext.c [!HAVE_ALLOCA]: Add code for handling missing alloca -- code. Use new l10nfile handling. -- -- * localealias.c [!HAVE_ALLOCA]: Add code for handling missing -- alloca code. -- -- * l10nflist.c: Initial revision. -- --Tue Apr 2 18:51:18 1996 Ulrich Drepper -- -- * Makefile.in (all-gettext): New goal. Same as all-yes. -- --Thu Mar 28 23:01:22 1996 Karl Eichwalder -- -- * Makefile.in (gettextsrcdir): Define using @datadir@. -- --Tue Mar 26 12:39:14 1996 Ulrich Drepper -- -- * finddomain.c: Include . Reported by Roland McGrath. -- --Sat Mar 23 02:00:35 1996 Ulrich Drepper -- -- * finddomain.c (stpcpy): Rename to stpcpy__ to prevent clashing -- with external declaration. -- --Sat Mar 2 00:47:09 1996 Ulrich Drepper -- -- * Makefile.in (all-no): Rename from all_no. -- --Sat Feb 17 00:25:59 1996 Ulrich Drepper -- -- * gettextP.h [loaded_domain]: Array `successor' must now contain up -- to 63 elements (because of codeset name normalization). -- -- * finddomain.c: Implement codeset name normalization. -- --Thu Feb 15 04:39:09 1996 Ulrich Drepper -- -- * Makefile.in (all): Define to `all-@USE_NLS@'. -- (all-yes, all_no): New goals. `all-no' is noop, `all-yes' -- is former all. -- --Mon Jan 15 21:46:01 1996 Howard Gayle -- -- * localealias.c (alias_compare): Increment string pointers in loop -- of strcasecmp replacement. -- --Fri Dec 29 21:16:34 1995 Ulrich Drepper -- -- * Makefile.in (install-src): Who commented this goal out ? :-) -- --Fri Dec 29 15:08:16 1995 Ulrich Drepper -- -- * dcgettext.c (DCGETTEXT): Save `errno'. Failing system calls -- should not effect it because a missing catalog is no error. -- Reported by Harald Knig . -- --Tue Dec 19 22:09:13 1995 Ulrich Drepper -- -- * Makefile.in (Makefile): Explicitly use $(SHELL) for running -- shell scripts. -- --Fri Dec 15 17:34:59 1995 Andreas Schwab -- -- * Makefile.in (install-src): Only install library and header when -- we use the own implementation. Don't do it when using the -- system's gettext or catgets functions. -- -- * dcgettext.c (find_msg): Must not swap domain->hash_size here. -- --Sat Dec 9 16:24:37 1995 Ulrich Drepper -- -- * localealias.c, libintl.inst, libgettext.h, hash-string.h, -- gettextP.h, finddomain.c, dcgettext.c, cat-compat.c: -- Use PARAMS instead of __P. Suggested by Roland McGrath. -- --Tue Dec 5 11:39:14 1995 Larry Schwimmer -- -- * libgettext.h: Use `#if !defined (_LIBINTL_H)' instead of `#if -- !_LIBINTL_H' because Solaris defines _LIBINTL_H as empty. -- --Mon Dec 4 15:42:07 1995 Ulrich Drepper -- -- * Makefile.in (install-src): -- Install libintl.inst instead of libintl.h.install. -- --Sat Dec 2 22:51:38 1995 Marcus Daniels -- -- * cat-compat.c (textdomain): -- Reverse order in which files are tried you load. First -- try local file, when this failed absolute path. -- --Wed Nov 29 02:03:53 1995 Nelson H. F. Beebe -- -- * cat-compat.c (bindtextdomain): Add missing { }. -- --Sun Nov 26 18:21:41 1995 Ulrich Drepper -- -- * libintl.inst: Add missing __P definition. Reported by Nelson Beebe. -- -- * Makefile.in: -- Add dummy `all' and `dvi' goals. Reported by Tom Tromey. -- --Sat Nov 25 16:12:01 1995 Franc,ois Pinard -- -- * hash-string.h: Capitalize arguments of macros. -- --Sat Nov 25 12:01:36 1995 Ulrich Drepper -- -- * Makefile.in (DISTFILES): Prevent files names longer than 13 -- characters. libintl.h.glibc->libintl.glibc, -- libintl.h.install->libintl.inst. Reported by Joshua R. Poulson. -- --Sat Nov 25 11:31:12 1995 Eric Backus -- -- * dcgettext.c: Fix bug in preprocessor conditionals. -- --Sat Nov 25 02:35:27 1995 Nelson H. F. Beebe -- -- * libgettext.h: Solaris cc does not understand -- #if !SYMBOL1 && !SYMBOL2. Sad but true. -- --Thu Nov 23 16:22:14 1995 Ulrich Drepper -- -- * hash-string.h (hash_string): -- Fix for machine with >32 bit `unsigned long's. -- -- * dcgettext.c (DCGETTEXT): -- Fix horrible bug in loop for alternative translation. -- --Thu Nov 23 01:45:29 1995 Ulrich Drepper -- -- * po2tbl.sed.in, linux-msg.sed, xopen-msg.sed: -- Some further simplifications in message number generation. -- --Mon Nov 20 21:08:43 1995 Ulrich Drepper -- -- * libintl.h.glibc: Use __const instead of const in prototypes. -- -- * Makefile.in (install-src): -- Install libintl.h.install instead of libintl.h. This -- is a stripped-down version. Suggested by Peter Miller. -- -- * libintl.h.install, libintl.h.glibc: Initial revision. -- -- * localealias.c (_nl_expand_alias, read_alias_file): -- Protect prototypes in type casts by __P. -- --Tue Nov 14 16:43:58 1995 Ulrich Drepper -- -- * hash-string.h: Correct prototype for hash_string. -- --Sun Nov 12 12:42:30 1995 Ulrich Drepper -- -- * hash-string.h (hash_string): Add prototype. -- -- * gettextP.h: Fix copyright. -- (SWAP): Add prototype. -- --Wed Nov 8 22:56:33 1995 Ulrich Drepper -- -- * localealias.c (read_alias_file): Forgot sizeof. -- Avoid calling *printf function. This introduces a big overhead. -- Patch by Roland McGrath. -- --Tue Nov 7 14:21:08 1995 Ulrich Drepper -- -- * finddomain.c, cat-compat.c: Wrong indentation in #if for stpcpy. -- -- * finddomain.c (stpcpy): -- Define substitution function local. The macro was to flaky. -- -- * cat-compat.c: Fix typo. -- -- * xopen-msg.sed, linux-msg.sed: -- While bringing message number to right place only accept digits. -- -- * linux-msg.sed, xopen-msg.sed: Now that the counter does not have -- leading 0s we don't need to remove them. Reported by Marcus -- Daniels. -- -- * Makefile.in (../po/cat-id-tbl.o): Use $(top_srdir) in -- dependency. Reported by Marcus Daniels. -- -- * cat-compat.c: (stpcpy) [!_LIBC && !HAVE_STPCPY]: Define replacement. -- Generally cleanup using #if instead of #ifndef. -- -- * Makefile.in: Correct typos in comment. By Franc,ois Pinard. -- --Mon Nov 6 00:27:02 1995 Ulrich Drepper -- -- * Makefile.in (install-src): Don't install libintl.h and libintl.a -- if we use an available gettext implementation. -- --Sun Nov 5 22:02:08 1995 Ulrich Drepper -- -- * libgettext.h: Fix typo: HAVE_CATGETTS -> HAVE_CATGETS. Reported -- by Franc,ois Pinard. -- -- * libgettext.h: Use #if instead of #ifdef/#ifndef. -- -- * finddomain.c: -- Comments describing what has to be done should start with FIXME. -- --Sun Nov 5 19:38:01 1995 Ulrich Drepper -- -- * Makefile.in (DISTFILES): Split. Use DISTFILES with normal meaning. -- DISTFILES.common names the files common to both dist goals. -- DISTFILES.gettext are the files only distributed in GNU gettext. -- --Sun Nov 5 17:32:54 1995 Ulrich Drepper -- -- * dcgettext.c (DCGETTEXT): Correct searching in derived locales. -- This was necessary since a change in _nl_find_msg several weeks -- ago. I really don't know this is still not fixed. -- --Sun Nov 5 12:43:12 1995 Ulrich Drepper -- -- * loadmsgcat.c (_nl_load_domain): Test for FILENAME == NULL. This -- might mark a special condition. -- -- * finddomain.c (make_entry_rec): Don't make illegal entry as decided. -- -- * Makefile.in (dist): Suppress error message when ln failed. -- Get files from $(srcdir) explicitly. -- -- * libgettext.h (gettext_const): Rename to gettext_noop. -- --Fri Nov 3 07:36:50 1995 Ulrich Drepper -- -- * finddomain.c (make_entry_rec): -- Protect against wrong locale names by testing mask. -- -- * libgettext.h (gettext_const): Add macro definition. -- Capitalize macro arguments. -- --Thu Nov 2 23:15:51 1995 Ulrich Drepper -- -- * finddomain.c (_nl_find_domain): -- Test for pointer != NULL before accessing value. -- Reported by Tom Tromey. -- -- * gettext.c (NULL): -- Define as (void*)0 instad of 0. Reported by Franc,ois Pinard. -- --Mon Oct 30 21:28:52 1995 Ulrich Drepper -- -- * po2tbl.sed.in: Serious typo bug fixed by Jim Meyering. -- --Sat Oct 28 23:20:47 1995 Ulrich Drepper -- -- * libgettext.h: Disable dcgettext optimization for Solaris 2.3. -- -- * localealias.c (alias_compare): -- Peter Miller reported that tolower in some systems is -- even dumber than I thought. Protect call by `isupper'. -- --Fri Oct 27 22:22:51 1995 Ulrich Drepper -- -- * Makefile.in (libdir, includedir): New variables. -- (install-src): Install libintl.a and libintl.h in correct dirs. -- --Fri Oct 27 22:07:29 1995 Ulrich Drepper -- -- * Makefile.in (SOURCES): Fix typo: intrl.compat.c -> intl-compat.c. -- -- * po2tbl.sed.in: Patch for buggy SEDs by Christian von Roques. -- -- * localealias.c: -- Fix typo and superflous test. Reported by Christian von Roques. -- --Fri Oct 6 11:52:05 1995 Ulrich Drepper -- -- * finddomain.c (_nl_find_domain): -- Correct some remainder from the pre-CEN syntax. Now -- we don't have a constant number of successors anymore. -- --Wed Sep 27 21:41:13 1995 Ulrich Drepper -- -- * Makefile.in (DISTFILES): Add libintl.h.glibc. -- -- * Makefile.in (dist-libc): Add goal for packing sources for glibc. -- (COMSRCS, COMHDRS): Splitted to separate sources shared with glibc. -- -- * loadmsgcat.c: Forget to continue #if line. -- -- * localealias.c: -- [_LIBC]: Rename strcasecmp to __strcasecmp to keep ANSI C name -- space clean. -- -- * dcgettext.c, finddomain.c: Better comment to last change. -- -- * loadmsgcat.c: -- [_LIBC]: Rename fstat, open, close, read, mmap, and munmap to -- __fstat, __open, __close, __read, __mmap, and __munmap resp -- to keep ANSI C name space clean. -- -- * finddomain.c: -- [_LIBC]: Rename stpcpy to __stpcpy to keep ANSI C name space clean. -- -- * dcgettext.c: -- [_LIBC]: Rename getced and stpcpy to __getcwd and __stpcpy resp to -- keep ANSI C name space clean. -- -- * libgettext.h: -- Include sys/types.h for those old SysV systems out there. -- Reported by Francesco Potorti`. -- -- * loadmsgcat.c (use_mmap): Define if compiled for glibc. -- -- * bindtextdom.c: Include all those standard headers -- unconditionally if _LIBC is defined. -- -- * finddomain.c: Fix 2 times defiend -> defined. -- -- * textdomain.c: Include libintl.h instead of libgettext.h when -- compiling for glibc. Include all those standard headers -- unconditionally if _LIBC is defined. -- -- * localealias.c, loadmsgcat.c: Prepare to be compiled in glibc. -- -- * gettext.c: -- Include libintl.h instead of libgettext.h when compiling for glibc. -- Get NULL from stddef.h if we compile for glibc. -- -- * finddomain.c: Include libintl.h instead of libgettext.h when -- compiling for glibc. Include all those standard headers -- unconditionally if _LIBC is defined. -- -- * dcgettext.c: Include all those standard headers unconditionally -- if _LIBC is defined. -- -- * dgettext.c: If compiled in glibc include libintl.h instead of -- libgettext.h. -- (locale.h): Don't rely on HAVE_LOCALE_H when compiling for glibc. -- -- * dcgettext.c: If compiled in glibc include libintl.h instead of -- libgettext.h. -- (getcwd): Don't rely on HAVE_GETCWD when compiling for glibc. -- -- * bindtextdom.c: -- If compiled in glibc include libintl.h instead of libgettext.h. -- --Mon Sep 25 22:23:06 1995 Ulrich Drepper -- -- * localealias.c (_nl_expand_alias): Don't call bsearch if NMAP <= 0. -- Reported by Marcus Daniels. -- -- * cat-compat.c (bindtextdomain): -- String used in putenv must not be recycled. -- Reported by Marcus Daniels. -- -- * libgettext.h (__USE_GNU_GETTEXT): -- Additional symbol to signal that we use GNU gettext -- library. -- -- * cat-compat.c (bindtextdomain): -- Fix bug with the strange stpcpy replacement. -- Reported by Nelson Beebe. -- --Sat Sep 23 08:23:51 1995 Ulrich Drepper -- -- * cat-compat.c: Include for stpcpy prototype. -- -- * localealias.c (read_alias_file): -- While expand strdup code temporary variable `cp' hided -- higher level variable with same name. Rename to `tp'. -- -- * textdomain.c (textdomain): -- Avoid warning by using temporary variable in strdup code. -- -- * finddomain.c (_nl_find_domain): Remove unused variable `application'. -- --Thu Sep 21 15:51:44 1995 Ulrich Drepper -- -- * localealias.c (alias_compare): -- Use strcasecmp() only if available. Else use -- implementation in place. -- -- * intl-compat.c: -- Wrapper functions now call *__ functions instead of __*. -- -- * libgettext.h: Declare prototypes for *__ functions instead for __*. -- -- * cat-compat.c, loadmsgcat.c: -- Don't use xmalloc, xstrdup, and stpcpy. These functions are not part -- of the standard libc and so prevent libintl.a from being used -- standalone. -- -- * bindtextdom.c: -- Don't use xmalloc, xstrdup, and stpcpy. These functions are not part -- of the standard libc and so prevent libintl.a from being used -- standalone. -- Rename to bindtextdomain__ if not used in GNU C Library. -- -- * dgettext.c: -- Rename function to dgettext__ if not used in GNU C Library. -- -- * gettext.c: -- Don't use xmalloc, xstrdup, and stpcpy. These functions are not part -- of the standard libc and so prevent libintl.a from being used -- standalone. -- Functions now called gettext__ if not used in GNU C Library. -- -- * dcgettext.c, localealias.c, textdomain.c, finddomain.c: -- Don't use xmalloc, xstrdup, and stpcpy. These functions are not part -- of the standard libc and so prevent libintl.a from being used -- standalone. -- --Sun Sep 17 23:14:49 1995 Ulrich Drepper -- -- * finddomain.c: Correct some bugs in handling of CEN standard -- locale definitions. -- --Thu Sep 7 01:49:28 1995 Ulrich Drepper -- -- * finddomain.c: Implement CEN syntax. -- -- * gettextP.h (loaded_domain): Extend number of successors to 31. -- --Sat Aug 19 19:25:29 1995 Ulrich Drepper -- -- * Makefile.in (aliaspath): Remove path to X11 locale dir. -- -- * Makefile.in: Make install-src depend on install. This helps -- gettext to install the sources and other packages can use the -- install goal. -- --Sat Aug 19 15:19:33 1995 Ulrich Drepper -- -- * Makefile.in (uninstall): Remove stuff installed by install-src. -- --Tue Aug 15 13:13:53 1995 Ulrich Drepper -- -- * VERSION.in: Initial revision. -- -- * Makefile.in (DISTFILES): -- Add VERSION file. This is not necessary for gettext, but -- for other packages using this library. -- --Tue Aug 15 06:16:44 1995 Ulrich Drepper -- -- * gettextP.h (_nl_find_domain): -- New prototype after changing search strategy. -- -- * finddomain.c (_nl_find_domain): -- We now try only to find a specified catalog. Fall back to other -- catalogs listed in the locale list is now done in __dcgettext. -- -- * dcgettext.c (__dcgettext): -- Now we provide message fall back even to different languages. -- I.e. if a message is not available in one language all the other -- in the locale list a tried. Formerly fall back was only possible -- within one language. Implemented by moving one loop from -- _nl_find_domain to here. -- --Mon Aug 14 23:45:50 1995 Ulrich Drepper -- -- * Makefile.in (gettextsrcdir): -- Directory where source of GNU gettext library are made -- available. -- (INSTALL, INSTALL_DATA): Programs used for installing sources. -- (gettext-src): New. Rule to install GNU gettext sources for use in -- gettextize shell script. -- --Sun Aug 13 14:40:48 1995 Ulrich Drepper -- -- * loadmsgcat.c (_nl_load_domain): -- Use mmap for loading only when munmap function is -- also available. -- -- * Makefile.in (install): Depend on `all' goal. -- --Wed Aug 9 11:04:33 1995 Ulrich Drepper -- -- * localealias.c (read_alias_file): -- Do not overwrite '\n' when terminating alias value string. -- -- * localealias.c (read_alias_file): -- Handle long lines. Ignore the rest not fitting in -- the buffer after the initial `fgets' call. -- --Wed Aug 9 00:54:29 1995 Ulrich Drepper -- -- * gettextP.h (_nl_load_domain): -- Add prototype, replacing prototype for _nl_load_msg_cat. -- -- * finddomain.c (_nl_find_domain): -- Remove unneeded variable filename and filename_len. -- (expand_alias): Remove prototype because functions does not -- exist anymore. -- -- * localealias.c (read_alias_file): -- Change type of fname_len parameter to int. -- (xmalloc): Add prototype. -- -- * loadmsgcat.c: Better prototypes for xmalloc. -- --Tue Aug 8 22:30:39 1995 Ulrich Drepper -- -- * finddomain.c (_nl_find_domain): -- Allow alias name to be constructed from the four components. -- -- * Makefile.in (aliaspath): New variable. Set to preliminary value. -- (SOURCES): Add localealias.c. -- (OBJECTS): Add localealias.o. -- -- * gettextP.h: Add prototype for _nl_expand_alias. -- -- * finddomain.c: Aliasing handled in intl/localealias.c. -- -- * localealias.c: Aliasing for locale names. -- -- * bindtextdom.c: Better prototypes for xmalloc and xstrdup. -- --Mon Aug 7 23:47:42 1995 Ulrich Drepper -- -- * Makefile.in (DISTFILES): gettext.perl is now found in misc/. -- -- * cat-compat.c (bindtextdomain): -- Correct implementation. dirname parameter was not used. -- Reported by Marcus Daniels. -- -- * gettextP.h (loaded_domain): -- New fields `successor' and `decided' for oo, lazy -- message handling implementation. -- -- * dcgettext.c: -- Adopt for oo, lazy message handliing. -- Now we can inherit translations from less specific locales. -- (find_msg): New function. -- -- * loadmsgcat.c, finddomain.c: -- Complete rewrite. Implement oo, lazy message handling :-). -- We now have an additional environment variable `LANGUAGE' with -- a higher priority than LC_ALL for the LC_MESSAGE locale. -- Here we can set a colon separated list of specifications each -- of the form `language[_territory[.codeset]][@modifier]'. -- --Sat Aug 5 09:55:42 1995 Ulrich Drepper -- -- * finddomain.c (unistd.h): -- Include to get _PC_PATH_MAX defined on system having it. -- --Fri Aug 4 22:42:00 1995 Ulrich Drepper -- -- * finddomain.c (stpcpy): Include prototype. -- -- * Makefile.in (dist): Remove `copying instead' message. -- --Wed Aug 2 18:52:03 1995 Ulrich Drepper -- -- * Makefile.in (ID, TAGS): Do not use $^. -- --Tue Aug 1 20:07:11 1995 Ulrich Drepper -- -- * Makefile.in (TAGS, ID): Use $^ as command argument. -- (TAGS): Give etags -o option t write to current directory, -- not $(srcdir). -- (ID): Use $(srcdir) instead os $(top_srcdir)/src. -- (distclean): Remove ID. -- --Sun Jul 30 11:51:46 1995 Ulrich Drepper -- -- * Makefile.in (gnulocaledir): -- New variable, always using share/ for data directory. -- (DEFS): Add GNULOCALEDIR, used in finddomain.c. -- -- * finddomain.c (_nl_default_dirname): -- Set to GNULOCALEDIR, because it always has to point -- to the directory where GNU gettext Library writes it to. -- -- * intl-compat.c (textdomain, bindtextdomain): -- Undefine macros before function definition. -- --Sat Jul 22 01:10:02 1995 Ulrich Drepper -- -- * libgettext.h (_LIBINTL_H): -- Protect definition in case where this file is included as -- libgettext.h on Solaris machines. Add comment about this. -- --Wed Jul 19 02:36:42 1995 Ulrich Drepper -- -- * intl-compat.c (textdomain): Correct typo. -- --Wed Jul 19 01:51:35 1995 Ulrich Drepper -- -- * dcgettext.c (dcgettext): Function now called __dcgettext. -- -- * dgettext.c (dgettext): Now called __dgettext and calls -- __dcgettext. -- -- * gettext.c (gettext): -- Function now called __gettext and calls __dgettext. -- -- * textdomain.c (textdomain): Function now called __textdomain. -- -- * bindtextdom.c (bindtextdomain): Function now called -- __bindtextdomain. -- -- * intl-compat.c: Initial revision. -- -- * Makefile.in (SOURCES): Add intl-compat.c. -- (OBJECTS): We always compile the GNU gettext library functions. -- OBJECTS contains all objects but cat-compat.o, ../po/cat-if-tbl.o, -- and intl-compat.o. -- (GETTOBJS): Contains now only intl-compat.o. -- -- * libgettext.h: -- Re-include protection matches dualistic character of libgettext.h. -- For all functions in GNU gettext library define __ counter part. -- -- * finddomain.c (strchr): Define as index if not found in C library. -- (_nl_find_domain): For relative paths paste / in between. -- --Tue Jul 18 16:37:45 1995 Ulrich Drepper -- -- * loadmsgcat.c, finddomain.c: Add inclusion of sys/types.h. -- -- * xopen-msg.sed: Fix bug with `msgstr ""' lines. -- A little bit better comments. -- --Tue Jul 18 01:18:27 1995 Ulrich Drepper -- -- * Makefile.in: -- po-mode.el, makelinks, combine-sh are now found in ../misc. -- -- * po-mode.el, makelinks, combine-sh, elisp-comp: -- Moved to ../misc/. -- -- * libgettext.h, gettextP.h, gettext.h: Uniform test for __STDC__. -- --Sun Jul 16 22:33:02 1995 Ulrich Drepper -- -- * Makefile.in (INSTALL, INSTALL_DATA): New variables. -- (install-data, uninstall): Install/uninstall .elc file. -- -- * po-mode.el (Installation comment): -- Add .pox as possible extension of .po files. -- --Sun Jul 16 13:23:27 1995 Ulrich Drepper -- -- * elisp-comp: Complete new version by Franc,ois: This does not -- fail when not compiling in the source directory. -- --Sun Jul 16 00:12:17 1995 Ulrich Drepper -- -- * Makefile.in (../po/cat-id-tbl.o): -- Use $(MAKE) instead of make for recursive make. -- -- * Makefile.in (.el.elc): Use $(SHELL) instead of /bin/sh. -- (install-exec): Add missing dummy goal. -- (install-data, uninstall): @ in multi-line shell command at -- beginning, not in front of echo. Reported by Eric Backus. -- --Sat Jul 15 00:21:28 1995 Ulrich Drepper -- -- * Makefile.in (DISTFILES): -- Rename libgettext.perl to gettext.perl to fit in 14 chars -- file systems. -- -- * gettext.perl: -- Rename to gettext.perl to fit in 14 chars file systems. -- --Thu Jul 13 23:17:20 1995 Ulrich Drepper -- -- * cat-compat.c: If !STDC_HEADERS try to include malloc.h. -- --Thu Jul 13 20:55:02 1995 Ulrich Drepper -- -- * po2tbl.sed.in: Pretty printing. -- -- * linux-msg.sed, xopen-msg.sed: -- Correct bugs with handling substitute flags in branches. -- -- * hash-string.h (hash_string): -- Old K&R compilers don't under stand `unsigned char'. -- -- * gettext.h (nls_uint32): -- Some old K&R compilers (eg HP) don't understand `unsigned int'. -- -- * cat-compat.c (msg_to_cat_id): De-ANSI-fy prototypes. -- --Thu Jul 13 01:34:33 1995 Ulrich Drepper -- -- * Makefile.in (ELCFILES): New variable. -- (DISTFILES): Add elisp-comp. -- Add implicit rule for .el -> .elc compilation. -- (install-data): install $ELCFILES -- (clean): renamed po-to-tbl and po-to-msg to po2tbl and po2msg resp. -- -- * elisp-comp: Initial revision -- --Wed Jul 12 16:14:52 1995 Ulrich Drepper -- -- * Makefile.in: -- cat-id-tbl.c is now found in po/. This enables us to use an identical -- intl/ directory in all packages. -- -- * dcgettext.c (dcgettext): hashing does not work for table size <= 2. -- -- * textdomain.c: fix typo (#if def -> #if defined) -- --Tue Jul 11 18:44:43 1995 Ulrich Drepper -- -- * Makefile.in (stamp-cat-id): use top_srcdir to address source files -- (DISTFILES,distclean): move tupdate.perl to src/ -- -- * po-to-tbl.sed.in: -- add additional jump to clear change flag to recognize multiline strings -- --Tue Jul 11 01:32:50 1995 Ulrich Drepper -- -- * textdomain.c: Protect inclusion of stdlib.h and string.h. -- -- * loadmsgcat.c: Protect inclusion of stdlib.h. -- -- * libgettext.h: Protect inclusion of locale.h. -- Allow use in C++ programs. -- Define NULL is not happened already. -- -- * Makefile.in (DISTFILES): ship po-to-tbl.sed.in instead of -- po-to-tbl.sed. -- (distclean): remove po-to-tbl.sed and tupdate.perl. -- -- * tupdate.perl.in: Substitute Perl path even in exec line. -- Don't include entries without translation from old .po file. -- --Tue Jul 4 00:41:51 1995 Ulrich Drepper -- -- * tupdate.perl.in: use "Updated: " in msgid "". -- -- * cat-compat.c: Fix typo (LOCALDIR -> LOCALEDIR). -- Define getenv if !__STDC__. -- -- * bindtextdom.c: Protect stdlib.h and string.h inclusion. -- Define free if !__STDC__. -- -- * finddomain.c: Change DEF_MSG_DOM_DIR to LOCALEDIR. -- Define free if !__STDC__. -- -- * cat-compat.c: Change DEF_MSG_DOM_DIR to LOCALEDIR. -- --Mon Jul 3 23:56:30 1995 Ulrich Drepper -- -- * Makefile.in: Use LOCALEDIR instead of DEF_MSG_DOM_DIR. -- Remove unneeded $(srcdir) from Makefile.in dependency. -- -- * makelinks: Add copyright and short description. -- -- * po-mode.el: Last version for 0.7. -- -- * tupdate.perl.in: Fix die message. -- -- * dcgettext.c: Protect include of string.h. -- -- * gettext.c: Protect include of stdlib.h and further tries to get NULL. -- -- * finddomain.c: Some corrections in includes. -- -- * Makefile.in (INCLUDES): Prune list correct path to Makefile.in. -- -- * po-to-tbl.sed: Adopt for new .po file format. -- -- * linux-msg.sed, xopen-msg.sed: Adopt for new .po file format. -- --Sun Jul 2 23:55:03 1995 Ulrich Drepper -- -- * tupdate.perl.in: Complete rewrite for new .po file format. -+2004-01-29 GNU - --Sun Jul 2 02:06:50 1995 Ulrich Drepper -+ * Version 0.14.1 released. - -- * First official release. This directory contains all the code -- needed to internationalize own packages. It provides functions -- which allow to use the X/Open catgets function with an interface -- like the Uniforum gettext function. For system which does not -- have neither of those a complete implementation is provided. ---- lrzsz-0.12.20.safe/intl/config.charset 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/config.charset 2004-09-12 14:40:34.354748240 -0400 -@@ -0,0 +1,608 @@ -+#! /bin/sh -+# Output a system dependent table of character encoding aliases. -+# -+# Copyright (C) 2000-2004 Free Software Foundation, Inc. -+# -+# This program is free software; you can redistribute it and/or modify it -+# under the terms of the GNU Library General Public License as published -+# by the Free Software Foundation; either version 2, or (at your option) -+# any later version. -+# -+# This program is distributed in the hope that it will be useful, -+# but WITHOUT ANY WARRANTY; without even the implied warranty of -+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+# Library General Public License for more details. -+# -+# You should have received a copy of the GNU Library General Public -+# License along with this program; if not, write to the Free Software -+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+# USA. -+# -+# The table consists of lines of the form -+# ALIAS CANONICAL -+# -+# ALIAS is the (system dependent) result of "nl_langinfo (CODESET)". -+# ALIAS is compared in a case sensitive way. -+# -+# CANONICAL is the GNU canonical name for this character encoding. -+# It must be an encoding supported by libiconv. Support by GNU libc is -+# also desirable. CANONICAL is case insensitive. Usually an upper case -+# MIME charset name is preferred. -+# The current list of GNU canonical charset names is as follows. -+# -+# name MIME? used by which systems -+# ASCII, ANSI_X3.4-1968 glibc solaris freebsd darwin -+# ISO-8859-1 Y glibc aix hpux irix osf solaris freebsd darwin -+# ISO-8859-2 Y glibc aix hpux irix osf solaris freebsd darwin -+# ISO-8859-3 Y glibc solaris -+# ISO-8859-4 Y osf solaris freebsd darwin -+# ISO-8859-5 Y glibc aix hpux irix osf solaris freebsd darwin -+# ISO-8859-6 Y glibc aix hpux solaris -+# ISO-8859-7 Y glibc aix hpux irix osf solaris -+# ISO-8859-8 Y glibc aix hpux osf solaris -+# ISO-8859-9 Y glibc aix hpux irix osf solaris -+# ISO-8859-13 glibc -+# ISO-8859-14 glibc -+# ISO-8859-15 glibc aix osf solaris freebsd -+# KOI8-R Y glibc solaris freebsd darwin -+# KOI8-U Y glibc freebsd darwin -+# KOI8-T glibc -+# CP437 dos -+# CP775 dos -+# CP850 aix osf dos -+# CP852 dos -+# CP855 dos -+# CP856 aix -+# CP857 dos -+# CP861 dos -+# CP862 dos -+# CP864 dos -+# CP865 dos -+# CP866 freebsd darwin dos -+# CP869 dos -+# CP874 woe32 dos -+# CP922 aix -+# CP932 aix woe32 dos -+# CP943 aix -+# CP949 osf woe32 dos -+# CP950 woe32 dos -+# CP1046 aix -+# CP1124 aix -+# CP1125 dos -+# CP1129 aix -+# CP1250 woe32 -+# CP1251 glibc solaris darwin woe32 -+# CP1252 aix woe32 -+# CP1253 woe32 -+# CP1254 woe32 -+# CP1255 glibc woe32 -+# CP1256 woe32 -+# CP1257 woe32 -+# GB2312 Y glibc aix hpux irix solaris freebsd darwin -+# EUC-JP Y glibc aix hpux irix osf solaris freebsd darwin -+# EUC-KR Y glibc aix hpux irix osf solaris freebsd darwin -+# EUC-TW glibc aix hpux irix osf solaris -+# BIG5 Y glibc aix hpux osf solaris freebsd darwin -+# BIG5-HKSCS glibc solaris -+# GBK glibc aix osf solaris woe32 dos -+# GB18030 glibc solaris -+# SHIFT_JIS Y hpux osf solaris freebsd darwin -+# JOHAB glibc solaris woe32 -+# TIS-620 glibc aix hpux osf solaris -+# VISCII Y glibc -+# TCVN5712-1 glibc -+# GEORGIAN-PS glibc -+# HP-ROMAN8 hpux -+# HP-ARABIC8 hpux -+# HP-GREEK8 hpux -+# HP-HEBREW8 hpux -+# HP-TURKISH8 hpux -+# HP-KANA8 hpux -+# DEC-KANJI osf -+# DEC-HANYU osf -+# UTF-8 Y glibc aix hpux osf solaris -+# -+# Note: Names which are not marked as being a MIME name should not be used in -+# Internet protocols for information interchange (mail, news, etc.). -+# -+# Note: ASCII and ANSI_X3.4-1968 are synonymous canonical names. Applications -+# must understand both names and treat them as equivalent. -+# -+# The first argument passed to this file is the canonical host specification, -+# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM -+# or -+# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM -+ -+host="$1" -+os=`echo "$host" | sed -e 's/^[^-]*-[^-]*-\(.*\)$/\1/'` -+echo "# This file contains a table of character encoding aliases," -+echo "# suitable for operating system '${os}'." -+echo "# It was automatically generated from config.charset." -+# List of references, updated during installation: -+echo "# Packages using this file: " -+case "$os" in -+ linux-gnulibc1*) -+ # Linux libc5 doesn't have nl_langinfo(CODESET); therefore -+ # localcharset.c falls back to using the full locale name -+ # from the environment variables. -+ echo "C ASCII" -+ echo "POSIX ASCII" -+ for l in af af_ZA ca ca_ES da da_DK de de_AT de_BE de_CH de_DE de_LU \ -+ en en_AU en_BW en_CA en_DK en_GB en_IE en_NZ en_US en_ZA \ -+ en_ZW es es_AR es_BO es_CL es_CO es_DO es_EC es_ES es_GT \ -+ es_HN es_MX es_PA es_PE es_PY es_SV es_US es_UY es_VE et \ -+ et_EE eu eu_ES fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR \ -+ fr_LU ga ga_IE gl gl_ES id id_ID in in_ID is is_IS it it_CH \ -+ it_IT kl kl_GL nl nl_BE nl_NL no no_NO pt pt_BR pt_PT sv \ -+ sv_FI sv_SE; do -+ echo "$l ISO-8859-1" -+ echo "$l.iso-8859-1 ISO-8859-1" -+ echo "$l.iso-8859-15 ISO-8859-15" -+ echo "$l.iso-8859-15@euro ISO-8859-15" -+ echo "$l@euro ISO-8859-15" -+ echo "$l.cp-437 CP437" -+ echo "$l.cp-850 CP850" -+ echo "$l.cp-1252 CP1252" -+ echo "$l.cp-1252@euro CP1252" -+ #echo "$l.atari-st ATARI-ST" # not a commonly used encoding -+ echo "$l.utf-8 UTF-8" -+ echo "$l.utf-8@euro UTF-8" -+ done -+ for l in cs cs_CZ hr hr_HR hu hu_HU pl pl_PL ro ro_RO sk sk_SK sl \ -+ sl_SI sr sr_CS sr_YU; do -+ echo "$l ISO-8859-2" -+ echo "$l.iso-8859-2 ISO-8859-2" -+ echo "$l.cp-852 CP852" -+ echo "$l.cp-1250 CP1250" -+ echo "$l.utf-8 UTF-8" -+ done -+ for l in mk mk_MK ru ru_RU; do -+ echo "$l ISO-8859-5" -+ echo "$l.iso-8859-5 ISO-8859-5" -+ echo "$l.koi8-r KOI8-R" -+ echo "$l.cp-866 CP866" -+ echo "$l.cp-1251 CP1251" -+ echo "$l.utf-8 UTF-8" -+ done -+ for l in ar ar_SA; do -+ echo "$l ISO-8859-6" -+ echo "$l.iso-8859-6 ISO-8859-6" -+ echo "$l.cp-864 CP864" -+ #echo "$l.cp-868 CP868" # not a commonly used encoding -+ echo "$l.cp-1256 CP1256" -+ echo "$l.utf-8 UTF-8" -+ done -+ for l in el el_GR gr gr_GR; do -+ echo "$l ISO-8859-7" -+ echo "$l.iso-8859-7 ISO-8859-7" -+ echo "$l.cp-869 CP869" -+ echo "$l.cp-1253 CP1253" -+ echo "$l.cp-1253@euro CP1253" -+ echo "$l.utf-8 UTF-8" -+ echo "$l.utf-8@euro UTF-8" -+ done -+ for l in he he_IL iw iw_IL; do -+ echo "$l ISO-8859-8" -+ echo "$l.iso-8859-8 ISO-8859-8" -+ echo "$l.cp-862 CP862" -+ echo "$l.cp-1255 CP1255" -+ echo "$l.utf-8 UTF-8" -+ done -+ for l in tr tr_TR; do -+ echo "$l ISO-8859-9" -+ echo "$l.iso-8859-9 ISO-8859-9" -+ echo "$l.cp-857 CP857" -+ echo "$l.cp-1254 CP1254" -+ echo "$l.utf-8 UTF-8" -+ done -+ for l in lt lt_LT lv lv_LV; do -+ #echo "$l BALTIC" # not a commonly used encoding, wrong encoding name -+ echo "$l ISO-8859-13" -+ done -+ for l in ru_UA uk uk_UA; do -+ echo "$l KOI8-U" -+ done -+ for l in zh zh_CN; do -+ #echo "$l GB_2312-80" # not a commonly used encoding, wrong encoding name -+ echo "$l GB2312" -+ done -+ for l in ja ja_JP ja_JP.EUC; do -+ echo "$l EUC-JP" -+ done -+ for l in ko ko_KR; do -+ echo "$l EUC-KR" -+ done -+ for l in th th_TH; do -+ echo "$l TIS-620" -+ done -+ for l in fa fa_IR; do -+ #echo "$l ISIRI-3342" # a broken encoding -+ echo "$l.utf-8 UTF-8" -+ done -+ ;; -+ linux* | *-gnu*) -+ # With glibc-2.1 or newer, we don't need any canonicalization, -+ # because glibc has iconv and both glibc and libiconv support all -+ # GNU canonical names directly. Therefore, the Makefile does not -+ # need to install the alias file at all. -+ # The following applies only to glibc-2.0.x and older libcs. -+ echo "ISO_646.IRV:1983 ASCII" -+ ;; -+ aix*) -+ echo "ISO8859-1 ISO-8859-1" -+ echo "ISO8859-2 ISO-8859-2" -+ echo "ISO8859-5 ISO-8859-5" -+ echo "ISO8859-6 ISO-8859-6" -+ echo "ISO8859-7 ISO-8859-7" -+ echo "ISO8859-8 ISO-8859-8" -+ echo "ISO8859-9 ISO-8859-9" -+ echo "ISO8859-15 ISO-8859-15" -+ echo "IBM-850 CP850" -+ echo "IBM-856 CP856" -+ echo "IBM-921 ISO-8859-13" -+ echo "IBM-922 CP922" -+ echo "IBM-932 CP932" -+ echo "IBM-943 CP943" -+ echo "IBM-1046 CP1046" -+ echo "IBM-1124 CP1124" -+ echo "IBM-1129 CP1129" -+ echo "IBM-1252 CP1252" -+ echo "IBM-eucCN GB2312" -+ echo "IBM-eucJP EUC-JP" -+ echo "IBM-eucKR EUC-KR" -+ echo "IBM-eucTW EUC-TW" -+ echo "big5 BIG5" -+ echo "GBK GBK" -+ echo "TIS-620 TIS-620" -+ echo "UTF-8 UTF-8" -+ ;; -+ hpux*) -+ echo "iso88591 ISO-8859-1" -+ echo "iso88592 ISO-8859-2" -+ echo "iso88595 ISO-8859-5" -+ echo "iso88596 ISO-8859-6" -+ echo "iso88597 ISO-8859-7" -+ echo "iso88598 ISO-8859-8" -+ echo "iso88599 ISO-8859-9" -+ echo "iso885915 ISO-8859-15" -+ echo "roman8 HP-ROMAN8" -+ echo "arabic8 HP-ARABIC8" -+ echo "greek8 HP-GREEK8" -+ echo "hebrew8 HP-HEBREW8" -+ echo "turkish8 HP-TURKISH8" -+ echo "kana8 HP-KANA8" -+ echo "tis620 TIS-620" -+ echo "big5 BIG5" -+ echo "eucJP EUC-JP" -+ echo "eucKR EUC-KR" -+ echo "eucTW EUC-TW" -+ echo "hp15CN GB2312" -+ #echo "ccdc ?" # what is this? -+ echo "SJIS SHIFT_JIS" -+ echo "utf8 UTF-8" -+ ;; -+ irix*) -+ echo "ISO8859-1 ISO-8859-1" -+ echo "ISO8859-2 ISO-8859-2" -+ echo "ISO8859-5 ISO-8859-5" -+ echo "ISO8859-7 ISO-8859-7" -+ echo "ISO8859-9 ISO-8859-9" -+ echo "eucCN GB2312" -+ echo "eucJP EUC-JP" -+ echo "eucKR EUC-KR" -+ echo "eucTW EUC-TW" -+ ;; -+ osf*) -+ echo "ISO8859-1 ISO-8859-1" -+ echo "ISO8859-2 ISO-8859-2" -+ echo "ISO8859-4 ISO-8859-4" -+ echo "ISO8859-5 ISO-8859-5" -+ echo "ISO8859-7 ISO-8859-7" -+ echo "ISO8859-8 ISO-8859-8" -+ echo "ISO8859-9 ISO-8859-9" -+ echo "ISO8859-15 ISO-8859-15" -+ echo "cp850 CP850" -+ echo "big5 BIG5" -+ echo "dechanyu DEC-HANYU" -+ echo "dechanzi GB2312" -+ echo "deckanji DEC-KANJI" -+ echo "deckorean EUC-KR" -+ echo "eucJP EUC-JP" -+ echo "eucKR EUC-KR" -+ echo "eucTW EUC-TW" -+ echo "GBK GBK" -+ echo "KSC5601 CP949" -+ echo "sdeckanji EUC-JP" -+ echo "SJIS SHIFT_JIS" -+ echo "TACTIS TIS-620" -+ echo "UTF-8 UTF-8" -+ ;; -+ solaris*) -+ echo "646 ASCII" -+ echo "ISO8859-1 ISO-8859-1" -+ echo "ISO8859-2 ISO-8859-2" -+ echo "ISO8859-3 ISO-8859-3" -+ echo "ISO8859-4 ISO-8859-4" -+ echo "ISO8859-5 ISO-8859-5" -+ echo "ISO8859-6 ISO-8859-6" -+ echo "ISO8859-7 ISO-8859-7" -+ echo "ISO8859-8 ISO-8859-8" -+ echo "ISO8859-9 ISO-8859-9" -+ echo "ISO8859-15 ISO-8859-15" -+ echo "koi8-r KOI8-R" -+ echo "ansi-1251 CP1251" -+ echo "BIG5 BIG5" -+ echo "Big5-HKSCS BIG5-HKSCS" -+ echo "gb2312 GB2312" -+ echo "GBK GBK" -+ echo "GB18030 GB18030" -+ echo "cns11643 EUC-TW" -+ echo "5601 EUC-KR" -+ echo "ko_KR.johap92 JOHAB" -+ echo "eucJP EUC-JP" -+ echo "PCK SHIFT_JIS" -+ echo "TIS620.2533 TIS-620" -+ #echo "sun_eu_greek ?" # what is this? -+ echo "UTF-8 UTF-8" -+ ;; -+ freebsd* | os2*) -+ # FreeBSD 4.2 doesn't have nl_langinfo(CODESET); therefore -+ # localcharset.c falls back to using the full locale name -+ # from the environment variables. -+ # Likewise for OS/2. OS/2 has XFree86 just like FreeBSD. Just -+ # reuse FreeBSD's locale data for OS/2. -+ echo "C ASCII" -+ echo "US-ASCII ASCII" -+ for l in la_LN lt_LN; do -+ echo "$l.ASCII ASCII" -+ done -+ for l in da_DK de_AT de_CH de_DE en_AU en_CA en_GB en_US es_ES \ -+ fi_FI fr_BE fr_CA fr_CH fr_FR is_IS it_CH it_IT la_LN \ -+ lt_LN nl_BE nl_NL no_NO pt_PT sv_SE; do -+ echo "$l.ISO_8859-1 ISO-8859-1" -+ echo "$l.DIS_8859-15 ISO-8859-15" -+ done -+ for l in cs_CZ hr_HR hu_HU la_LN lt_LN pl_PL sl_SI; do -+ echo "$l.ISO_8859-2 ISO-8859-2" -+ done -+ for l in la_LN lt_LT; do -+ echo "$l.ISO_8859-4 ISO-8859-4" -+ done -+ for l in ru_RU ru_SU; do -+ echo "$l.KOI8-R KOI8-R" -+ echo "$l.ISO_8859-5 ISO-8859-5" -+ echo "$l.CP866 CP866" -+ done -+ echo "uk_UA.KOI8-U KOI8-U" -+ echo "zh_TW.BIG5 BIG5" -+ echo "zh_TW.Big5 BIG5" -+ echo "zh_CN.EUC GB2312" -+ echo "ja_JP.EUC EUC-JP" -+ echo "ja_JP.SJIS SHIFT_JIS" -+ echo "ja_JP.Shift_JIS SHIFT_JIS" -+ echo "ko_KR.EUC EUC-KR" -+ ;; -+ netbsd*) -+ echo "646 ASCII" -+ echo "ISO8859-1 ISO-8859-1" -+ echo "ISO8859-2 ISO-8859-2" -+ echo "ISO8859-4 ISO-8859-4" -+ echo "ISO8859-5 ISO-8859-5" -+ echo "ISO8859-15 ISO-8859-15" -+ echo "eucCN GB2312" -+ echo "eucJP EUC-JP" -+ echo "eucKR EUC-KR" -+ echo "eucTW EUC-TW" -+ echo "BIG5 BIG5" -+ echo "SJIS SHIFT_JIS" -+ ;; -+ darwin*) -+ # Darwin 6.8 doesn't have nl_langinfo(CODESET); therefore -+ # localcharset.c falls back to using the full locale name -+ # from the environment variables. -+ echo "C ASCII" -+ for l in en_AU en_CA en_GB en_US la_LN; do -+ echo "$l.US-ASCII ASCII" -+ done -+ for l in da_DK de_AT de_CH de_DE en_AU en_CA en_GB en_US es_ES \ -+ fi_FI fr_BE fr_CA fr_CH fr_FR is_IS it_CH it_IT nl_BE \ -+ nl_NL no_NO pt_PT sv_SE; do -+ echo "$l ISO-8859-1" -+ echo "$l.ISO8859-1 ISO-8859-1" -+ echo "$l.ISO8859-15 ISO-8859-15" -+ done -+ for l in la_LN; do -+ echo "$l.ISO8859-1 ISO-8859-1" -+ echo "$l.ISO8859-15 ISO-8859-15" -+ done -+ for l in cs_CZ hr_HR hu_HU la_LN pl_PL sl_SI; do -+ echo "$l.ISO8859-2 ISO-8859-2" -+ done -+ for l in la_LN lt_LT; do -+ echo "$l.ISO8859-4 ISO-8859-4" -+ done -+ for l in ru_RU; do -+ echo "$l.KOI8-R KOI8-R" -+ echo "$l.ISO8859-5 ISO-8859-5" -+ echo "$l.CP866 CP866" -+ done -+ for l in bg_BG; do -+ echo "$l.CP1251 CP1251" -+ done -+ echo "uk_UA.KOI8-U KOI8-U" -+ echo "zh_TW.BIG5 BIG5" -+ echo "zh_TW.Big5 BIG5" -+ echo "zh_CN.EUC GB2312" -+ echo "ja_JP.EUC EUC-JP" -+ echo "ja_JP.SJIS SHIFT_JIS" -+ echo "ko_KR.EUC EUC-KR" -+ ;; -+ beos*) -+ # BeOS has a single locale, and it has UTF-8 encoding. -+ echo "* UTF-8" -+ ;; -+ msdosdjgpp*) -+ # DJGPP 2.03 doesn't have nl_langinfo(CODESET); therefore -+ # localcharset.c falls back to using the full locale name -+ # from the environment variables. -+ echo "#" -+ echo "# The encodings given here may not all be correct." -+ echo "# If you find that the encoding given for your language and" -+ echo "# country is not the one your DOS machine actually uses, just" -+ echo "# correct it in this file, and send a mail to" -+ echo "# Juan Manuel Guerrero " -+ echo "# and Bruno Haible ." -+ echo "#" -+ echo "C ASCII" -+ # ISO-8859-1 languages -+ echo "ca CP850" -+ echo "ca_ES CP850" -+ echo "da CP865" # not CP850 ?? -+ echo "da_DK CP865" # not CP850 ?? -+ echo "de CP850" -+ echo "de_AT CP850" -+ echo "de_CH CP850" -+ echo "de_DE CP850" -+ echo "en CP850" -+ echo "en_AU CP850" # not CP437 ?? -+ echo "en_CA CP850" -+ echo "en_GB CP850" -+ echo "en_NZ CP437" -+ echo "en_US CP437" -+ echo "en_ZA CP850" # not CP437 ?? -+ echo "es CP850" -+ echo "es_AR CP850" -+ echo "es_BO CP850" -+ echo "es_CL CP850" -+ echo "es_CO CP850" -+ echo "es_CR CP850" -+ echo "es_CU CP850" -+ echo "es_DO CP850" -+ echo "es_EC CP850" -+ echo "es_ES CP850" -+ echo "es_GT CP850" -+ echo "es_HN CP850" -+ echo "es_MX CP850" -+ echo "es_NI CP850" -+ echo "es_PA CP850" -+ echo "es_PY CP850" -+ echo "es_PE CP850" -+ echo "es_SV CP850" -+ echo "es_UY CP850" -+ echo "es_VE CP850" -+ echo "et CP850" -+ echo "et_EE CP850" -+ echo "eu CP850" -+ echo "eu_ES CP850" -+ echo "fi CP850" -+ echo "fi_FI CP850" -+ echo "fr CP850" -+ echo "fr_BE CP850" -+ echo "fr_CA CP850" -+ echo "fr_CH CP850" -+ echo "fr_FR CP850" -+ echo "ga CP850" -+ echo "ga_IE CP850" -+ echo "gd CP850" -+ echo "gd_GB CP850" -+ echo "gl CP850" -+ echo "gl_ES CP850" -+ echo "id CP850" # not CP437 ?? -+ echo "id_ID CP850" # not CP437 ?? -+ echo "is CP861" # not CP850 ?? -+ echo "is_IS CP861" # not CP850 ?? -+ echo "it CP850" -+ echo "it_CH CP850" -+ echo "it_IT CP850" -+ echo "lt CP775" -+ echo "lt_LT CP775" -+ echo "lv CP775" -+ echo "lv_LV CP775" -+ echo "nb CP865" # not CP850 ?? -+ echo "nb_NO CP865" # not CP850 ?? -+ echo "nl CP850" -+ echo "nl_BE CP850" -+ echo "nl_NL CP850" -+ echo "nn CP865" # not CP850 ?? -+ echo "nn_NO CP865" # not CP850 ?? -+ echo "no CP865" # not CP850 ?? -+ echo "no_NO CP865" # not CP850 ?? -+ echo "pt CP850" -+ echo "pt_BR CP850" -+ echo "pt_PT CP850" -+ echo "sv CP850" -+ echo "sv_SE CP850" -+ # ISO-8859-2 languages -+ echo "cs CP852" -+ echo "cs_CZ CP852" -+ echo "hr CP852" -+ echo "hr_HR CP852" -+ echo "hu CP852" -+ echo "hu_HU CP852" -+ echo "pl CP852" -+ echo "pl_PL CP852" -+ echo "ro CP852" -+ echo "ro_RO CP852" -+ echo "sk CP852" -+ echo "sk_SK CP852" -+ echo "sl CP852" -+ echo "sl_SI CP852" -+ echo "sq CP852" -+ echo "sq_AL CP852" -+ echo "sr CP852" # CP852 or CP866 or CP855 ?? -+ echo "sr_CS CP852" # CP852 or CP866 or CP855 ?? -+ echo "sr_YU CP852" # CP852 or CP866 or CP855 ?? -+ # ISO-8859-3 languages -+ echo "mt CP850" -+ echo "mt_MT CP850" -+ # ISO-8859-5 languages -+ echo "be CP866" -+ echo "be_BE CP866" -+ echo "bg CP866" # not CP855 ?? -+ echo "bg_BG CP866" # not CP855 ?? -+ echo "mk CP866" # not CP855 ?? -+ echo "mk_MK CP866" # not CP855 ?? -+ echo "ru CP866" -+ echo "ru_RU CP866" -+ echo "uk CP1125" -+ echo "uk_UA CP1125" -+ # ISO-8859-6 languages -+ echo "ar CP864" -+ echo "ar_AE CP864" -+ echo "ar_DZ CP864" -+ echo "ar_EG CP864" -+ echo "ar_IQ CP864" -+ echo "ar_IR CP864" -+ echo "ar_JO CP864" -+ echo "ar_KW CP864" -+ echo "ar_MA CP864" -+ echo "ar_OM CP864" -+ echo "ar_QA CP864" -+ echo "ar_SA CP864" -+ echo "ar_SY CP864" -+ # ISO-8859-7 languages -+ echo "el CP869" -+ echo "el_GR CP869" -+ # ISO-8859-8 languages -+ echo "he CP862" -+ echo "he_IL CP862" -+ # ISO-8859-9 languages -+ echo "tr CP857" -+ echo "tr_TR CP857" -+ # Japanese -+ echo "ja CP932" -+ echo "ja_JP CP932" -+ # Chinese -+ echo "zh_CN GBK" -+ echo "zh_TW CP950" # not CP938 ?? -+ # Korean -+ echo "kr CP949" # not CP934 ?? -+ echo "kr_KR CP949" # not CP934 ?? -+ # Thai -+ echo "th CP874" -+ echo "th_TH CP874" -+ # Other -+ echo "eo CP850" -+ echo "eo_EO CP850" -+ ;; -+esac ---- lrzsz-0.12.20.safe/intl/dcgettext.c 1998-04-26 09:22:36.000000000 -0400 -+++ lrzsz-0.12.20/intl/dcgettext.c 2004-09-12 14:40:34.359747480 -0400 -@@ -1,593 +1,56 @@ --/* Implementation of the dcgettext(3) function -- Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. -+/* Implementation of the dcgettext(3) function. -+ Copyright (C) 1995-1999, 2000-2003 Free Software Foundation, Inc. - -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation; either version 2, or (at your option) -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. - -- You should have received a copy of the GNU General Public License -- along with this program; if not, write to the Free Software Foundation, -- Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ - - #ifdef HAVE_CONFIG_H - # include - #endif - --#include -- --#ifdef __GNUC__ --# define alloca __builtin_alloca --# define HAVE_ALLOCA 1 --#else --# if defined HAVE_ALLOCA_H || defined _LIBC --# include --# else --# ifdef _AIX -- #pragma alloca --# else --# ifndef alloca --char *alloca (); --# endif --# endif --# endif --#endif -- --#include --#ifndef errno --extern int errno; --#endif --#ifndef __set_errno --# define __set_errno(val) errno = (val) --#endif -- --#if defined STDC_HEADERS || defined _LIBC --# include --#else --char *getenv (); --# ifdef HAVE_MALLOC_H --# include --# else --void free (); --# endif --#endif -- --#if defined HAVE_STRING_H || defined _LIBC --# ifndef _GNU_SOURCE --# define _GNU_SOURCE 1 --# endif --# include --#else --# include --#endif --#if !HAVE_STRCHR && !defined _LIBC --# ifndef strchr --# define strchr index --# endif --#endif -- --#if defined HAVE_UNISTD_H || defined _LIBC --# include --#endif -- --#include "gettext.h" - #include "gettextP.h" - #ifdef _LIBC - # include - #else --# include "libgettext.h" -+# include "libgnuintl.h" - #endif --#include "hash-string.h" - - /* @@ end of prolog @@ */ - --#ifdef _LIBC --/* Rename the non ANSI C functions. This is required by the standard -- because some ANSI C functions will require linking with this object -- file and the name space must not be polluted. */ --# define getcwd __getcwd --# define stpcpy __stpcpy --#else --# if !defined HAVE_GETCWD --char *getwd (); --# define getcwd(buf, max) getwd (buf) --# else --char *getcwd (); --# endif --# ifndef HAVE_STPCPY --static char *stpcpy PARAMS ((char *dest, const char *src)); --# endif --#endif -- --/* Amount to increase buffer size by in each try. */ --#define PATH_INCR 32 -- --/* The following is from pathmax.h. */ --/* Non-POSIX BSD systems might have gcc's limits.h, which doesn't define -- PATH_MAX but might cause redefinition warnings when sys/param.h is -- later included (as on MORE/BSD 4.3). */ --#if defined(_POSIX_VERSION) || (defined(HAVE_LIMITS_H) && !defined(__GNUC__)) --# include --#endif -- --#ifndef _POSIX_PATH_MAX --# define _POSIX_PATH_MAX 255 --#endif -- --#if !defined(PATH_MAX) && defined(_PC_PATH_MAX) --# define PATH_MAX (pathconf ("/", _PC_PATH_MAX) < 1 ? 1024 : pathconf ("/", _PC_PATH_MAX)) --#endif -- --/* Don't include sys/param.h if it already has been. */ --#if defined(HAVE_SYS_PARAM_H) && !defined(PATH_MAX) && !defined(MAXPATHLEN) --# include --#endif -- --#if !defined(PATH_MAX) && defined(MAXPATHLEN) --# define PATH_MAX MAXPATHLEN --#endif -- --#ifndef PATH_MAX --# define PATH_MAX _POSIX_PATH_MAX --#endif -- --/* XPG3 defines the result of `setlocale (category, NULL)' as: -- ``Directs `setlocale()' to query `category' and return the current -- setting of `local'.'' -- However it does not specify the exact format. And even worse: POSIX -- defines this not at all. So we can use this feature only on selected -- system (e.g. those using GNU C Library). */ --#ifdef _LIBC --# define HAVE_LOCALE_NULL --#endif -- --/* Name of the default domain used for gettext(3) prior any call to -- textdomain(3). The default value for this is "messages". */ --const char _nl_default_default_domain[] = "messages"; -- --/* Value used as the default domain for gettext(3). */ --const char *_nl_current_default_domain = _nl_default_default_domain; -- --/* Contains the default location of the message catalogs. */ --const char _nl_default_dirname[] = GNULOCALEDIR; -- --/* List with bindings of specific domains created by bindtextdomain() -- calls. */ --struct binding *_nl_domain_bindings; -- --/* Prototypes for local functions. */ --static char *find_msg PARAMS ((struct loaded_l10nfile *domain_file, -- const char *msgid)); --static const char *category_to_name PARAMS ((int category)); --static const char *guess_category_value PARAMS ((int category, -- const char *categoryname)); -- -- --/* For those loosing systems which don't have `alloca' we have to add -- some additional code emulating it. */ --#ifdef HAVE_ALLOCA --/* Nothing has to be done. */ --# define ADD_BLOCK(list, address) /* nothing */ --# define FREE_BLOCKS(list) /* nothing */ --#else --struct block_list --{ -- void *address; -- struct block_list *next; --}; --# define ADD_BLOCK(list, addr) \ -- do { \ -- struct block_list *newp = (struct block_list *) malloc (sizeof (*newp)); \ -- /* If we cannot get a free block we cannot add the new element to \ -- the list. */ \ -- if (newp != NULL) { \ -- newp->address = (addr); \ -- newp->next = (list); \ -- (list) = newp; \ -- } \ -- } while (0) --# define FREE_BLOCKS(list) \ -- do { \ -- while (list != NULL) { \ -- struct block_list *old = list; \ -- list = list->next; \ -- free (old); \ -- } \ -- } while (0) --# undef alloca --# define alloca(size) (malloc (size)) --#endif /* have alloca */ -- -- - /* Names for the libintl functions are a problem. They must not clash - with existing names and they should follow ANSI C. But this source - code is also used in GNU C Library where the names have a __ - prefix. So we have to make a difference here. */ - #ifdef _LIBC - # define DCGETTEXT __dcgettext -+# define DCIGETTEXT __dcigettext - #else --# define DCGETTEXT dcgettext__ -+# define DCGETTEXT libintl_dcgettext -+# define DCIGETTEXT libintl_dcigettext - #endif - - /* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY - locale. */ - char * --DCGETTEXT (domainname, msgid, category) -- const char *domainname; -- const char *msgid; -- int category; -+DCGETTEXT (const char *domainname, const char *msgid, int category) - { --#ifndef HAVE_ALLOCA -- struct block_list *block_list = NULL; --#endif -- struct loaded_l10nfile *domain; -- struct binding *binding; -- const char *categoryname; -- const char *categoryvalue; -- char *dirname, *xdomainname; -- char *single_locale; -- char *retval; -- int saved_errno = errno; -- -- /* If no real MSGID is given return NULL. */ -- if (msgid == NULL) -- return NULL; -- -- /* If DOMAINNAME is NULL, we are interested in the default domain. If -- CATEGORY is not LC_MESSAGES this might not make much sense but the -- defintion left this undefined. */ -- if (domainname == NULL) -- domainname = _nl_current_default_domain; -- -- /* First find matching binding. */ -- for (binding = _nl_domain_bindings; binding != NULL; binding = binding->next) -- { -- int compare = strcmp (domainname, binding->domainname); -- if (compare == 0) -- /* We found it! */ -- break; -- if (compare < 0) -- { -- /* It is not in the list. */ -- binding = NULL; -- break; -- } -- } -- -- if (binding == NULL) -- dirname = (char *) _nl_default_dirname; -- else if (binding->dirname[0] == '/') -- dirname = binding->dirname; -- else -- { -- /* We have a relative path. Make it absolute now. */ -- size_t dirname_len = strlen (binding->dirname) + 1; -- size_t path_max; -- char *ret; -- -- path_max = (unsigned) PATH_MAX; -- path_max += 2; /* The getcwd docs say to do this. */ -- -- dirname = (char *) alloca (path_max + dirname_len); -- ADD_BLOCK (block_list, dirname); -- -- __set_errno (0); -- while ((ret = getcwd (dirname, path_max)) == NULL && errno == ERANGE) -- { -- path_max += PATH_INCR; -- dirname = (char *) alloca (path_max + dirname_len); -- ADD_BLOCK (block_list, dirname); -- __set_errno (0); -- } -- -- if (ret == NULL) -- { -- /* We cannot get the current working directory. Don't signal an -- error but simply return the default string. */ -- FREE_BLOCKS (block_list); -- __set_errno (saved_errno); -- return (char *) msgid; -- } -- -- stpcpy (stpcpy (strchr (dirname, '\0'), "/"), binding->dirname); -- } -- -- /* Now determine the symbolic name of CATEGORY and its value. */ -- categoryname = category_to_name (category); -- categoryvalue = guess_category_value (category, categoryname); -- -- xdomainname = (char *) alloca (strlen (categoryname) -- + strlen (domainname) + 5); -- ADD_BLOCK (block_list, xdomainname); -- -- stpcpy (stpcpy (stpcpy (stpcpy (xdomainname, categoryname), "/"), -- domainname), -- ".mo"); -- -- /* Creating working area. */ -- single_locale = (char *) alloca (strlen (categoryvalue) + 1); -- ADD_BLOCK (block_list, single_locale); -- -- -- /* Search for the given string. This is a loop because we perhaps -- got an ordered list of languages to consider for th translation. */ -- while (1) -- { -- /* Make CATEGORYVALUE point to the next element of the list. */ -- while (categoryvalue[0] != '\0' && categoryvalue[0] == ':') -- ++categoryvalue; -- if (categoryvalue[0] == '\0') -- { -- /* The whole contents of CATEGORYVALUE has been searched but -- no valid entry has been found. We solve this situation -- by implicitly appending a "C" entry, i.e. no translation -- will take place. */ -- single_locale[0] = 'C'; -- single_locale[1] = '\0'; -- } -- else -- { -- char *cp = single_locale; -- while (categoryvalue[0] != '\0' && categoryvalue[0] != ':') -- *cp++ = *categoryvalue++; -- *cp = '\0'; -- } -- -- /* If the current locale value is C (or POSIX) we don't load a -- domain. Return the MSGID. */ -- if (strcmp (single_locale, "C") == 0 -- || strcmp (single_locale, "POSIX") == 0) -- { -- FREE_BLOCKS (block_list); -- __set_errno (saved_errno); -- return (char *) msgid; -- } -- -- -- /* Find structure describing the message catalog matching the -- DOMAINNAME and CATEGORY. */ -- domain = _nl_find_domain (dirname, single_locale, xdomainname); -- -- if (domain != NULL) -- { -- retval = find_msg (domain, msgid); -- -- if (retval == NULL) -- { -- int cnt; -- -- for (cnt = 0; domain->successor[cnt] != NULL; ++cnt) -- { -- retval = find_msg (domain->successor[cnt], msgid); -- -- if (retval != NULL) -- break; -- } -- } -- -- if (retval != NULL) -- { -- FREE_BLOCKS (block_list); -- __set_errno (saved_errno); -- return retval; -- } -- } -- } -- /* NOTREACHED */ -+ return DCIGETTEXT (domainname, msgid, NULL, 0, 0, category); - } - - #ifdef _LIBC - /* Alias for function name in GNU C Library. */ -+INTDEF(__dcgettext) - weak_alias (__dcgettext, dcgettext); - #endif -- -- --static char * --find_msg (domain_file, msgid) -- struct loaded_l10nfile *domain_file; -- const char *msgid; --{ -- size_t top, act, bottom; -- struct loaded_domain *domain; -- -- if (domain_file->decided == 0) -- _nl_load_domain (domain_file); -- -- if (domain_file->data == NULL) -- return NULL; -- -- domain = (struct loaded_domain *) domain_file->data; -- -- /* Locate the MSGID and its translation. */ -- if (domain->hash_size > 2 && domain->hash_tab != NULL) -- { -- /* Use the hashing table. */ -- nls_uint32 len = strlen (msgid); -- nls_uint32 hash_val = hash_string (msgid); -- nls_uint32 idx = hash_val % domain->hash_size; -- nls_uint32 incr = 1 + (hash_val % (domain->hash_size - 2)); -- nls_uint32 nstr = W (domain->must_swap, domain->hash_tab[idx]); -- -- if (nstr == 0) -- /* Hash table entry is empty. */ -- return NULL; -- -- if (W (domain->must_swap, domain->orig_tab[nstr - 1].length) == len -- && strcmp (msgid, -- domain->data + W (domain->must_swap, -- domain->orig_tab[nstr - 1].offset)) == 0) -- return (char *) domain->data + W (domain->must_swap, -- domain->trans_tab[nstr - 1].offset); -- -- while (1) -- { -- if (idx >= domain->hash_size - incr) -- idx -= domain->hash_size - incr; -- else -- idx += incr; -- -- nstr = W (domain->must_swap, domain->hash_tab[idx]); -- if (nstr == 0) -- /* Hash table entry is empty. */ -- return NULL; -- -- if (W (domain->must_swap, domain->orig_tab[nstr - 1].length) == len -- && strcmp (msgid, -- domain->data + W (domain->must_swap, -- domain->orig_tab[nstr - 1].offset)) -- == 0) -- return (char *) domain->data -- + W (domain->must_swap, domain->trans_tab[nstr - 1].offset); -- } -- /* NOTREACHED */ -- } -- -- /* Now we try the default method: binary search in the sorted -- array of messages. */ -- bottom = 0; -- top = domain->nstrings; -- while (bottom < top) -- { -- int cmp_val; -- -- act = (bottom + top) / 2; -- cmp_val = strcmp (msgid, domain->data -- + W (domain->must_swap, -- domain->orig_tab[act].offset)); -- if (cmp_val < 0) -- top = act; -- else if (cmp_val > 0) -- bottom = act + 1; -- else -- break; -- } -- -- /* If an translation is found return this. */ -- return bottom >= top ? NULL : (char *) domain->data -- + W (domain->must_swap, -- domain->trans_tab[act].offset); --} -- -- --/* Return string representation of locale CATEGORY. */ --static const char * --category_to_name (category) -- int category; --{ -- const char *retval; -- -- switch (category) -- { --#ifdef LC_COLLATE -- case LC_COLLATE: -- retval = "LC_COLLATE"; -- break; --#endif --#ifdef LC_CTYPE -- case LC_CTYPE: -- retval = "LC_CTYPE"; -- break; --#endif --#ifdef LC_MONETARY -- case LC_MONETARY: -- retval = "LC_MONETARY"; -- break; --#endif --#ifdef LC_NUMERIC -- case LC_NUMERIC: -- retval = "LC_NUMERIC"; -- break; --#endif --#ifdef LC_TIME -- case LC_TIME: -- retval = "LC_TIME"; -- break; --#endif --#ifdef LC_MESSAGES -- case LC_MESSAGES: -- retval = "LC_MESSAGES"; -- break; --#endif --#ifdef LC_RESPONSE -- case LC_RESPONSE: -- retval = "LC_RESPONSE"; -- break; --#endif --#ifdef LC_ALL -- case LC_ALL: -- /* This might not make sense but is perhaps better than any other -- value. */ -- retval = "LC_ALL"; -- break; --#endif -- default: -- /* If you have a better idea for a default value let me know. */ -- retval = "LC_XXX"; -- } -- -- return retval; --} -- --/* Guess value of current locale from value of the environment variables. */ --static const char * --guess_category_value (category, categoryname) -- int category; -- const char *categoryname; --{ -- const char *retval; -- -- /* The highest priority value is the `LANGUAGE' environment -- variable. This is a GNU extension. */ -- retval = getenv ("LANGUAGE"); -- if (retval != NULL && retval[0] != '\0') -- return retval; -- -- /* `LANGUAGE' is not set. So we have to proceed with the POSIX -- methods of looking to `LC_ALL', `LC_xxx', and `LANG'. On some -- systems this can be done by the `setlocale' function itself. */ --#if defined HAVE_SETLOCALE && defined HAVE_LC_MESSAGES && defined HAVE_LOCALE_NULL -- return setlocale (category, NULL); --#else -- /* Setting of LC_ALL overwrites all other. */ -- retval = getenv ("LC_ALL"); -- if (retval != NULL && retval[0] != '\0') -- return retval; -- -- /* Next comes the name of the desired category. */ -- retval = getenv (categoryname); -- if (retval != NULL && retval[0] != '\0') -- return retval; -- -- /* Last possibility is the LANG environment variable. */ -- retval = getenv ("LANG"); -- if (retval != NULL && retval[0] != '\0') -- return retval; -- -- /* We use C as the default domain. POSIX says this is implementation -- defined. */ -- return "C"; --#endif --} -- --/* @@ begin of epilog @@ */ -- --/* We don't want libintl.a to depend on any other library. So we -- avoid the non-standard function stpcpy. In GNU C Library this -- function is available, though. Also allow the symbol HAVE_STPCPY -- to be defined. */ --#if !_LIBC && !HAVE_STPCPY --static char * --stpcpy (dest, src) -- char *dest; -- const char *src; --{ -- while ((*dest++ = *src++) != '\0') -- /* Do nothing. */ ; -- return dest - 1; --} --#endif ---- lrzsz-0.12.20.safe/intl/dcigettext.c 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/dcigettext.c 2004-09-12 14:40:34.369745960 -0400 -@@ -0,0 +1,1219 @@ -+/* Implementation of the internal dcigettext function. -+ Copyright (C) 1995-1999, 2000-2003 Free Software Foundation, Inc. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+/* Tell glibc's to provide a prototype for mempcpy(). -+ This must come before because may include -+ , and once has been included, it's too late. */ -+#ifndef _GNU_SOURCE -+# define _GNU_SOURCE 1 -+#endif -+ -+#ifdef HAVE_CONFIG_H -+# include -+#endif -+ -+#include -+ -+#ifdef __GNUC__ -+# define alloca __builtin_alloca -+# define HAVE_ALLOCA 1 -+#else -+# ifdef _MSC_VER -+# include -+# define alloca _alloca -+# else -+# if defined HAVE_ALLOCA_H || defined _LIBC -+# include -+# else -+# ifdef _AIX -+ #pragma alloca -+# else -+# ifndef alloca -+char *alloca (); -+# endif -+# endif -+# endif -+# endif -+#endif -+ -+#include -+#ifndef errno -+extern int errno; -+#endif -+#ifndef __set_errno -+# define __set_errno(val) errno = (val) -+#endif -+ -+#include -+#include -+#include -+ -+#if defined HAVE_UNISTD_H || defined _LIBC -+# include -+#endif -+ -+#include -+ -+#ifdef _LIBC -+ /* Guess whether integer division by zero raises signal SIGFPE. -+ Set to 1 only if you know for sure. In case of doubt, set to 0. */ -+# if defined __alpha__ || defined __arm__ || defined __i386__ \ -+ || defined __m68k__ || defined __s390__ -+# define INTDIV0_RAISES_SIGFPE 1 -+# else -+# define INTDIV0_RAISES_SIGFPE 0 -+# endif -+#endif -+#if !INTDIV0_RAISES_SIGFPE -+# include -+#endif -+ -+#if defined HAVE_SYS_PARAM_H || defined _LIBC -+# include -+#endif -+ -+#include "gettextP.h" -+#include "plural-exp.h" -+#ifdef _LIBC -+# include -+#else -+# include "libgnuintl.h" -+#endif -+#include "hash-string.h" -+ -+/* Thread safetyness. */ -+#ifdef _LIBC -+# include -+#else -+/* Provide dummy implementation if this is outside glibc. */ -+# define __libc_lock_define_initialized(CLASS, NAME) -+# define __libc_lock_lock(NAME) -+# define __libc_lock_unlock(NAME) -+# define __libc_rwlock_define_initialized(CLASS, NAME) -+# define __libc_rwlock_rdlock(NAME) -+# define __libc_rwlock_unlock(NAME) -+#endif -+ -+/* Alignment of types. */ -+#if defined __GNUC__ && __GNUC__ >= 2 -+# define alignof(TYPE) __alignof__ (TYPE) -+#else -+# define alignof(TYPE) \ -+ ((int) &((struct { char dummy1; TYPE dummy2; } *) 0)->dummy2) -+#endif -+ -+/* The internal variables in the standalone libintl.a must have different -+ names than the internal variables in GNU libc, otherwise programs -+ using libintl.a cannot be linked statically. */ -+#if !defined _LIBC -+# define _nl_default_default_domain libintl_nl_default_default_domain -+# define _nl_current_default_domain libintl_nl_current_default_domain -+# define _nl_default_dirname libintl_nl_default_dirname -+# define _nl_domain_bindings libintl_nl_domain_bindings -+#endif -+ -+/* Some compilers, like SunOS4 cc, don't have offsetof in . */ -+#ifndef offsetof -+# define offsetof(type,ident) ((size_t)&(((type*)0)->ident)) -+#endif -+ -+/* @@ end of prolog @@ */ -+ -+#ifdef _LIBC -+/* Rename the non ANSI C functions. This is required by the standard -+ because some ANSI C functions will require linking with this object -+ file and the name space must not be polluted. */ -+# define getcwd __getcwd -+# ifndef stpcpy -+# define stpcpy __stpcpy -+# endif -+# define tfind __tfind -+#else -+# if !defined HAVE_GETCWD -+char *getwd (); -+# define getcwd(buf, max) getwd (buf) -+# else -+# if VMS -+# define getcwd(buf, max) (getcwd) (buf, max, 0) -+# else -+char *getcwd (); -+# endif -+# endif -+# ifndef HAVE_STPCPY -+static char *stpcpy (char *dest, const char *src); -+# endif -+# ifndef HAVE_MEMPCPY -+static void *mempcpy (void *dest, const void *src, size_t n); -+# endif -+#endif -+ -+/* Amount to increase buffer size by in each try. */ -+#define PATH_INCR 32 -+ -+/* The following is from pathmax.h. */ -+/* Non-POSIX BSD systems might have gcc's limits.h, which doesn't define -+ PATH_MAX but might cause redefinition warnings when sys/param.h is -+ later included (as on MORE/BSD 4.3). */ -+#if defined _POSIX_VERSION || (defined HAVE_LIMITS_H && !defined __GNUC__) -+# include -+#endif -+ -+#ifndef _POSIX_PATH_MAX -+# define _POSIX_PATH_MAX 255 -+#endif -+ -+#if !defined PATH_MAX && defined _PC_PATH_MAX -+# define PATH_MAX (pathconf ("/", _PC_PATH_MAX) < 1 ? 1024 : pathconf ("/", _PC_PATH_MAX)) -+#endif -+ -+/* Don't include sys/param.h if it already has been. */ -+#if defined HAVE_SYS_PARAM_H && !defined PATH_MAX && !defined MAXPATHLEN -+# include -+#endif -+ -+#if !defined PATH_MAX && defined MAXPATHLEN -+# define PATH_MAX MAXPATHLEN -+#endif -+ -+#ifndef PATH_MAX -+# define PATH_MAX _POSIX_PATH_MAX -+#endif -+ -+/* Pathname support. -+ ISSLASH(C) tests whether C is a directory separator character. -+ IS_ABSOLUTE_PATH(P) tests whether P is an absolute path. If it is not, -+ it may be concatenated to a directory pathname. -+ IS_PATH_WITH_DIR(P) tests whether P contains a directory specification. -+ */ -+#if defined _WIN32 || defined __WIN32__ || defined __EMX__ || defined __DJGPP__ -+ /* Win32, OS/2, DOS */ -+# define ISSLASH(C) ((C) == '/' || (C) == '\\') -+# define HAS_DEVICE(P) \ -+ ((((P)[0] >= 'A' && (P)[0] <= 'Z') || ((P)[0] >= 'a' && (P)[0] <= 'z')) \ -+ && (P)[1] == ':') -+# define IS_ABSOLUTE_PATH(P) (ISSLASH ((P)[0]) || HAS_DEVICE (P)) -+# define IS_PATH_WITH_DIR(P) \ -+ (strchr (P, '/') != NULL || strchr (P, '\\') != NULL || HAS_DEVICE (P)) -+#else -+ /* Unix */ -+# define ISSLASH(C) ((C) == '/') -+# define IS_ABSOLUTE_PATH(P) ISSLASH ((P)[0]) -+# define IS_PATH_WITH_DIR(P) (strchr (P, '/') != NULL) -+#endif -+ -+/* This is the type used for the search tree where known translations -+ are stored. */ -+struct known_translation_t -+{ -+ /* Domain in which to search. */ -+ char *domainname; -+ -+ /* The category. */ -+ int category; -+ -+ /* State of the catalog counter at the point the string was found. */ -+ int counter; -+ -+ /* Catalog where the string was found. */ -+ struct loaded_l10nfile *domain; -+ -+ /* And finally the translation. */ -+ const char *translation; -+ size_t translation_length; -+ -+ /* Pointer to the string in question. */ -+ char msgid[ZERO]; -+}; -+ -+/* Root of the search tree with known translations. We can use this -+ only if the system provides the `tsearch' function family. */ -+#if defined HAVE_TSEARCH || defined _LIBC -+# include -+ -+static void *root; -+ -+# ifdef _LIBC -+# define tsearch __tsearch -+# endif -+ -+/* Function to compare two entries in the table of known translations. */ -+static int -+transcmp (const void *p1, const void *p2) -+{ -+ const struct known_translation_t *s1; -+ const struct known_translation_t *s2; -+ int result; -+ -+ s1 = (const struct known_translation_t *) p1; -+ s2 = (const struct known_translation_t *) p2; -+ -+ result = strcmp (s1->msgid, s2->msgid); -+ if (result == 0) -+ { -+ result = strcmp (s1->domainname, s2->domainname); -+ if (result == 0) -+ /* We compare the category last (though this is the cheapest -+ operation) since it is hopefully always the same (namely -+ LC_MESSAGES). */ -+ result = s1->category - s2->category; -+ } -+ -+ return result; -+} -+#endif -+ -+#ifndef INTVARDEF -+# define INTVARDEF(name) -+#endif -+#ifndef INTUSE -+# define INTUSE(name) name -+#endif -+ -+/* Name of the default domain used for gettext(3) prior any call to -+ textdomain(3). The default value for this is "messages". */ -+const char _nl_default_default_domain[] attribute_hidden = "messages"; -+ -+/* Value used as the default domain for gettext(3). */ -+const char *_nl_current_default_domain attribute_hidden -+ = _nl_default_default_domain; -+ -+/* Contains the default location of the message catalogs. */ -+#if defined __EMX__ -+extern const char _nl_default_dirname[]; -+#else -+const char _nl_default_dirname[] = LOCALEDIR; -+INTVARDEF (_nl_default_dirname) -+#endif -+ -+/* List with bindings of specific domains created by bindtextdomain() -+ calls. */ -+struct binding *_nl_domain_bindings; -+ -+/* Prototypes for local functions. */ -+static char *plural_lookup (struct loaded_l10nfile *domain, -+ unsigned long int n, -+ const char *translation, size_t translation_len) -+ internal_function; -+static const char *guess_category_value (int category, -+ const char *categoryname) -+ internal_function; -+#ifdef _LIBC -+# include "../locale/localeinfo.h" -+# define category_to_name(category) _nl_category_names[category] -+#else -+static const char *category_to_name (int category) internal_function; -+#endif -+ -+ -+/* For those loosing systems which don't have `alloca' we have to add -+ some additional code emulating it. */ -+#ifdef HAVE_ALLOCA -+/* Nothing has to be done. */ -+# define freea(p) /* nothing */ -+# define ADD_BLOCK(list, address) /* nothing */ -+# define FREE_BLOCKS(list) /* nothing */ -+#else -+struct block_list -+{ -+ void *address; -+ struct block_list *next; -+}; -+# define ADD_BLOCK(list, addr) \ -+ do { \ -+ struct block_list *newp = (struct block_list *) malloc (sizeof (*newp)); \ -+ /* If we cannot get a free block we cannot add the new element to \ -+ the list. */ \ -+ if (newp != NULL) { \ -+ newp->address = (addr); \ -+ newp->next = (list); \ -+ (list) = newp; \ -+ } \ -+ } while (0) -+# define FREE_BLOCKS(list) \ -+ do { \ -+ while (list != NULL) { \ -+ struct block_list *old = list; \ -+ list = list->next; \ -+ free (old->address); \ -+ free (old); \ -+ } \ -+ } while (0) -+# undef alloca -+# define alloca(size) (malloc (size)) -+# define freea(p) free (p) -+#endif /* have alloca */ -+ -+ -+#ifdef _LIBC -+/* List of blocks allocated for translations. */ -+typedef struct transmem_list -+{ -+ struct transmem_list *next; -+ char data[ZERO]; -+} transmem_block_t; -+static struct transmem_list *transmem_list; -+#else -+typedef unsigned char transmem_block_t; -+#endif -+ -+ -+/* Names for the libintl functions are a problem. They must not clash -+ with existing names and they should follow ANSI C. But this source -+ code is also used in GNU C Library where the names have a __ -+ prefix. So we have to make a difference here. */ -+#ifdef _LIBC -+# define DCIGETTEXT __dcigettext -+#else -+# define DCIGETTEXT libintl_dcigettext -+#endif -+ -+/* Lock variable to protect the global data in the gettext implementation. */ -+#ifdef _LIBC -+__libc_rwlock_define_initialized (, _nl_state_lock attribute_hidden) -+#endif -+ -+/* Checking whether the binaries runs SUID must be done and glibc provides -+ easier methods therefore we make a difference here. */ -+#ifdef _LIBC -+# define ENABLE_SECURE __libc_enable_secure -+# define DETERMINE_SECURE -+#else -+# ifndef HAVE_GETUID -+# define getuid() 0 -+# endif -+# ifndef HAVE_GETGID -+# define getgid() 0 -+# endif -+# ifndef HAVE_GETEUID -+# define geteuid() getuid() -+# endif -+# ifndef HAVE_GETEGID -+# define getegid() getgid() -+# endif -+static int enable_secure; -+# define ENABLE_SECURE (enable_secure == 1) -+# define DETERMINE_SECURE \ -+ if (enable_secure == 0) \ -+ { \ -+ if (getuid () != geteuid () || getgid () != getegid ()) \ -+ enable_secure = 1; \ -+ else \ -+ enable_secure = -1; \ -+ } -+#endif -+ -+/* Get the function to evaluate the plural expression. */ -+#include "eval-plural.h" -+ -+/* Look up MSGID in the DOMAINNAME message catalog for the current -+ CATEGORY locale and, if PLURAL is nonzero, search over string -+ depending on the plural form determined by N. */ -+char * -+DCIGETTEXT (const char *domainname, const char *msgid1, const char *msgid2, -+ int plural, unsigned long int n, int category) -+{ -+#ifndef HAVE_ALLOCA -+ struct block_list *block_list = NULL; -+#endif -+ struct loaded_l10nfile *domain; -+ struct binding *binding; -+ const char *categoryname; -+ const char *categoryvalue; -+ char *dirname, *xdomainname; -+ char *single_locale; -+ char *retval; -+ size_t retlen; -+ int saved_errno; -+#if defined HAVE_TSEARCH || defined _LIBC -+ struct known_translation_t *search; -+ struct known_translation_t **foundp = NULL; -+ size_t msgid_len; -+#endif -+ size_t domainname_len; -+ -+ /* If no real MSGID is given return NULL. */ -+ if (msgid1 == NULL) -+ return NULL; -+ -+#ifdef _LIBC -+ if (category < 0 || category >= __LC_LAST || category == LC_ALL) -+ /* Bogus. */ -+ return (plural == 0 -+ ? (char *) msgid1 -+ /* Use the Germanic plural rule. */ -+ : n == 1 ? (char *) msgid1 : (char *) msgid2); -+#endif -+ -+ __libc_rwlock_rdlock (_nl_state_lock); -+ -+ /* If DOMAINNAME is NULL, we are interested in the default domain. If -+ CATEGORY is not LC_MESSAGES this might not make much sense but the -+ definition left this undefined. */ -+ if (domainname == NULL) -+ domainname = _nl_current_default_domain; -+ -+ /* OS/2 specific: backward compatibility with older libintl versions */ -+#ifdef LC_MESSAGES_COMPAT -+ if (category == LC_MESSAGES_COMPAT) -+ category = LC_MESSAGES; -+#endif -+ -+#if defined HAVE_TSEARCH || defined _LIBC -+ msgid_len = strlen (msgid1) + 1; -+ -+ /* Try to find the translation among those which we found at -+ some time. */ -+ search = (struct known_translation_t *) -+ alloca (offsetof (struct known_translation_t, msgid) + msgid_len); -+ memcpy (search->msgid, msgid1, msgid_len); -+ search->domainname = (char *) domainname; -+ search->category = category; -+ -+ foundp = (struct known_translation_t **) tfind (search, &root, transcmp); -+ freea (search); -+ if (foundp != NULL && (*foundp)->counter == _nl_msg_cat_cntr) -+ { -+ /* Now deal with plural. */ -+ if (plural) -+ retval = plural_lookup ((*foundp)->domain, n, (*foundp)->translation, -+ (*foundp)->translation_length); -+ else -+ retval = (char *) (*foundp)->translation; -+ -+ __libc_rwlock_unlock (_nl_state_lock); -+ return retval; -+ } -+#endif -+ -+ /* Preserve the `errno' value. */ -+ saved_errno = errno; -+ -+ /* See whether this is a SUID binary or not. */ -+ DETERMINE_SECURE; -+ -+ /* First find matching binding. */ -+ for (binding = _nl_domain_bindings; binding != NULL; binding = binding->next) -+ { -+ int compare = strcmp (domainname, binding->domainname); -+ if (compare == 0) -+ /* We found it! */ -+ break; -+ if (compare < 0) -+ { -+ /* It is not in the list. */ -+ binding = NULL; -+ break; -+ } -+ } -+ -+ if (binding == NULL) -+ dirname = (char *) INTUSE(_nl_default_dirname); -+ else if (IS_ABSOLUTE_PATH (binding->dirname)) -+ dirname = binding->dirname; -+ else -+ { -+ /* We have a relative path. Make it absolute now. */ -+ size_t dirname_len = strlen (binding->dirname) + 1; -+ size_t path_max; -+ char *ret; -+ -+ path_max = (unsigned int) PATH_MAX; -+ path_max += 2; /* The getcwd docs say to do this. */ -+ -+ for (;;) -+ { -+ dirname = (char *) alloca (path_max + dirname_len); -+ ADD_BLOCK (block_list, dirname); -+ -+ __set_errno (0); -+ ret = getcwd (dirname, path_max); -+ if (ret != NULL || errno != ERANGE) -+ break; -+ -+ path_max += path_max / 2; -+ path_max += PATH_INCR; -+ } -+ -+ if (ret == NULL) -+ /* We cannot get the current working directory. Don't signal an -+ error but simply return the default string. */ -+ goto return_untranslated; -+ -+ stpcpy (stpcpy (strchr (dirname, '\0'), "/"), binding->dirname); -+ } -+ -+ /* Now determine the symbolic name of CATEGORY and its value. */ -+ categoryname = category_to_name (category); -+ categoryvalue = guess_category_value (category, categoryname); -+ -+ domainname_len = strlen (domainname); -+ xdomainname = (char *) alloca (strlen (categoryname) -+ + domainname_len + 5); -+ ADD_BLOCK (block_list, xdomainname); -+ -+ stpcpy (mempcpy (stpcpy (stpcpy (xdomainname, categoryname), "/"), -+ domainname, domainname_len), -+ ".mo"); -+ -+ /* Creating working area. */ -+ single_locale = (char *) alloca (strlen (categoryvalue) + 1); -+ ADD_BLOCK (block_list, single_locale); -+ -+ -+ /* Search for the given string. This is a loop because we perhaps -+ got an ordered list of languages to consider for the translation. */ -+ while (1) -+ { -+ /* Make CATEGORYVALUE point to the next element of the list. */ -+ while (categoryvalue[0] != '\0' && categoryvalue[0] == ':') -+ ++categoryvalue; -+ if (categoryvalue[0] == '\0') -+ { -+ /* The whole contents of CATEGORYVALUE has been searched but -+ no valid entry has been found. We solve this situation -+ by implicitly appending a "C" entry, i.e. no translation -+ will take place. */ -+ single_locale[0] = 'C'; -+ single_locale[1] = '\0'; -+ } -+ else -+ { -+ char *cp = single_locale; -+ while (categoryvalue[0] != '\0' && categoryvalue[0] != ':') -+ *cp++ = *categoryvalue++; -+ *cp = '\0'; -+ -+ /* When this is a SUID binary we must not allow accessing files -+ outside the dedicated directories. */ -+ if (ENABLE_SECURE && IS_PATH_WITH_DIR (single_locale)) -+ /* Ingore this entry. */ -+ continue; -+ } -+ -+ /* If the current locale value is C (or POSIX) we don't load a -+ domain. Return the MSGID. */ -+ if (strcmp (single_locale, "C") == 0 -+ || strcmp (single_locale, "POSIX") == 0) -+ break; -+ -+ /* Find structure describing the message catalog matching the -+ DOMAINNAME and CATEGORY. */ -+ domain = _nl_find_domain (dirname, single_locale, xdomainname, binding); -+ -+ if (domain != NULL) -+ { -+ retval = _nl_find_msg (domain, binding, msgid1, &retlen); -+ -+ if (retval == NULL) -+ { -+ int cnt; -+ -+ for (cnt = 0; domain->successor[cnt] != NULL; ++cnt) -+ { -+ retval = _nl_find_msg (domain->successor[cnt], binding, -+ msgid1, &retlen); -+ -+ if (retval != NULL) -+ { -+ domain = domain->successor[cnt]; -+ break; -+ } -+ } -+ } -+ -+ if (retval != NULL) -+ { -+ /* Found the translation of MSGID1 in domain DOMAIN: -+ starting at RETVAL, RETLEN bytes. */ -+ FREE_BLOCKS (block_list); -+#if defined HAVE_TSEARCH || defined _LIBC -+ if (foundp == NULL) -+ { -+ /* Create a new entry and add it to the search tree. */ -+ struct known_translation_t *newp; -+ -+ newp = (struct known_translation_t *) -+ malloc (offsetof (struct known_translation_t, msgid) -+ + msgid_len + domainname_len + 1); -+ if (newp != NULL) -+ { -+ newp->domainname = -+ mempcpy (newp->msgid, msgid1, msgid_len); -+ memcpy (newp->domainname, domainname, domainname_len + 1); -+ newp->category = category; -+ newp->counter = _nl_msg_cat_cntr; -+ newp->domain = domain; -+ newp->translation = retval; -+ newp->translation_length = retlen; -+ -+ /* Insert the entry in the search tree. */ -+ foundp = (struct known_translation_t **) -+ tsearch (newp, &root, transcmp); -+ if (foundp == NULL -+ || __builtin_expect (*foundp != newp, 0)) -+ /* The insert failed. */ -+ free (newp); -+ } -+ } -+ else -+ { -+ /* We can update the existing entry. */ -+ (*foundp)->counter = _nl_msg_cat_cntr; -+ (*foundp)->domain = domain; -+ (*foundp)->translation = retval; -+ (*foundp)->translation_length = retlen; -+ } -+#endif -+ __set_errno (saved_errno); -+ -+ /* Now deal with plural. */ -+ if (plural) -+ retval = plural_lookup (domain, n, retval, retlen); -+ -+ __libc_rwlock_unlock (_nl_state_lock); -+ return retval; -+ } -+ } -+ } -+ -+ return_untranslated: -+ /* Return the untranslated MSGID. */ -+ FREE_BLOCKS (block_list); -+ __libc_rwlock_unlock (_nl_state_lock); -+#ifndef _LIBC -+ if (!ENABLE_SECURE) -+ { -+ extern void _nl_log_untranslated (const char *logfilename, -+ const char *domainname, -+ const char *msgid1, const char *msgid2, -+ int plural); -+ const char *logfilename = getenv ("GETTEXT_LOG_UNTRANSLATED"); -+ -+ if (logfilename != NULL && logfilename[0] != '\0') -+ _nl_log_untranslated (logfilename, domainname, msgid1, msgid2, plural); -+ } -+#endif -+ __set_errno (saved_errno); -+ return (plural == 0 -+ ? (char *) msgid1 -+ /* Use the Germanic plural rule. */ -+ : n == 1 ? (char *) msgid1 : (char *) msgid2); -+} -+ -+ -+char * -+internal_function -+_nl_find_msg (struct loaded_l10nfile *domain_file, -+ struct binding *domainbinding, const char *msgid, -+ size_t *lengthp) -+{ -+ struct loaded_domain *domain; -+ nls_uint32 nstrings; -+ size_t act; -+ char *result; -+ size_t resultlen; -+ -+ if (domain_file->decided == 0) -+ _nl_load_domain (domain_file, domainbinding); -+ -+ if (domain_file->data == NULL) -+ return NULL; -+ -+ domain = (struct loaded_domain *) domain_file->data; -+ -+ nstrings = domain->nstrings; -+ -+ /* Locate the MSGID and its translation. */ -+ if (domain->hash_tab != NULL) -+ { -+ /* Use the hashing table. */ -+ nls_uint32 len = strlen (msgid); -+ nls_uint32 hash_val = hash_string (msgid); -+ nls_uint32 idx = hash_val % domain->hash_size; -+ nls_uint32 incr = 1 + (hash_val % (domain->hash_size - 2)); -+ -+ while (1) -+ { -+ nls_uint32 nstr = -+ W (domain->must_swap_hash_tab, domain->hash_tab[idx]); -+ -+ if (nstr == 0) -+ /* Hash table entry is empty. */ -+ return NULL; -+ -+ nstr--; -+ -+ /* Compare msgid with the original string at index nstr. -+ We compare the lengths with >=, not ==, because plural entries -+ are represented by strings with an embedded NUL. */ -+ if (nstr < nstrings -+ ? W (domain->must_swap, domain->orig_tab[nstr].length) >= len -+ && (strcmp (msgid, -+ domain->data + W (domain->must_swap, -+ domain->orig_tab[nstr].offset)) -+ == 0) -+ : domain->orig_sysdep_tab[nstr - nstrings].length > len -+ && (strcmp (msgid, -+ domain->orig_sysdep_tab[nstr - nstrings].pointer) -+ == 0)) -+ { -+ act = nstr; -+ goto found; -+ } -+ -+ if (idx >= domain->hash_size - incr) -+ idx -= domain->hash_size - incr; -+ else -+ idx += incr; -+ } -+ /* NOTREACHED */ -+ } -+ else -+ { -+ /* Try the default method: binary search in the sorted array of -+ messages. */ -+ size_t top, bottom; -+ -+ bottom = 0; -+ top = nstrings; -+ while (bottom < top) -+ { -+ int cmp_val; -+ -+ act = (bottom + top) / 2; -+ cmp_val = strcmp (msgid, (domain->data -+ + W (domain->must_swap, -+ domain->orig_tab[act].offset))); -+ if (cmp_val < 0) -+ top = act; -+ else if (cmp_val > 0) -+ bottom = act + 1; -+ else -+ goto found; -+ } -+ /* No translation was found. */ -+ return NULL; -+ } -+ -+ found: -+ /* The translation was found at index ACT. If we have to convert the -+ string to use a different character set, this is the time. */ -+ if (act < nstrings) -+ { -+ result = (char *) -+ (domain->data + W (domain->must_swap, domain->trans_tab[act].offset)); -+ resultlen = W (domain->must_swap, domain->trans_tab[act].length) + 1; -+ } -+ else -+ { -+ result = (char *) domain->trans_sysdep_tab[act - nstrings].pointer; -+ resultlen = domain->trans_sysdep_tab[act - nstrings].length; -+ } -+ -+#if defined _LIBC || HAVE_ICONV -+ if (domain->codeset_cntr -+ != (domainbinding != NULL ? domainbinding->codeset_cntr : 0)) -+ { -+ /* The domain's codeset has changed through bind_textdomain_codeset() -+ since the message catalog was initialized or last accessed. We -+ have to reinitialize the converter. */ -+ _nl_free_domain_conv (domain); -+ _nl_init_domain_conv (domain_file, domain, domainbinding); -+ } -+ -+ if ( -+# ifdef _LIBC -+ domain->conv != (__gconv_t) -1 -+# else -+# if HAVE_ICONV -+ domain->conv != (iconv_t) -1 -+# endif -+# endif -+ ) -+ { -+ /* We are supposed to do a conversion. First allocate an -+ appropriate table with the same structure as the table -+ of translations in the file, where we can put the pointers -+ to the converted strings in. -+ There is a slight complication with plural entries. They -+ are represented by consecutive NUL terminated strings. We -+ handle this case by converting RESULTLEN bytes, including -+ NULs. */ -+ -+ if (domain->conv_tab == NULL -+ && ((domain->conv_tab = -+ (char **) calloc (nstrings + domain->n_sysdep_strings, -+ sizeof (char *))) -+ == NULL)) -+ /* Mark that we didn't succeed allocating a table. */ -+ domain->conv_tab = (char **) -1; -+ -+ if (__builtin_expect (domain->conv_tab == (char **) -1, 0)) -+ /* Nothing we can do, no more memory. */ -+ goto converted; -+ -+ if (domain->conv_tab[act] == NULL) -+ { -+ /* We haven't used this string so far, so it is not -+ translated yet. Do this now. */ -+ /* We use a bit more efficient memory handling. -+ We allocate always larger blocks which get used over -+ time. This is faster than many small allocations. */ -+ __libc_lock_define_initialized (static, lock) -+# define INITIAL_BLOCK_SIZE 4080 -+ static unsigned char *freemem; -+ static size_t freemem_size; -+ -+ const unsigned char *inbuf; -+ unsigned char *outbuf; -+ int malloc_count; -+# ifndef _LIBC -+ transmem_block_t *transmem_list = NULL; -+# endif -+ -+ __libc_lock_lock (lock); -+ -+ inbuf = (const unsigned char *) result; -+ outbuf = freemem + sizeof (size_t); -+ -+ malloc_count = 0; -+ while (1) -+ { -+ transmem_block_t *newmem; -+# ifdef _LIBC -+ size_t non_reversible; -+ int res; -+ -+ if (freemem_size < sizeof (size_t)) -+ goto resize_freemem; -+ -+ res = __gconv (domain->conv, -+ &inbuf, inbuf + resultlen, -+ &outbuf, -+ outbuf + freemem_size - sizeof (size_t), -+ &non_reversible); -+ -+ if (res == __GCONV_OK || res == __GCONV_EMPTY_INPUT) -+ break; -+ -+ if (res != __GCONV_FULL_OUTPUT) -+ { -+ __libc_lock_unlock (lock); -+ goto converted; -+ } -+ -+ inbuf = result; -+# else -+# if HAVE_ICONV -+ const char *inptr = (const char *) inbuf; -+ size_t inleft = resultlen; -+ char *outptr = (char *) outbuf; -+ size_t outleft; -+ -+ if (freemem_size < sizeof (size_t)) -+ goto resize_freemem; -+ -+ outleft = freemem_size - sizeof (size_t); -+ if (iconv (domain->conv, -+ (ICONV_CONST char **) &inptr, &inleft, -+ &outptr, &outleft) -+ != (size_t) (-1)) -+ { -+ outbuf = (unsigned char *) outptr; -+ break; -+ } -+ if (errno != E2BIG) -+ { -+ __libc_lock_unlock (lock); -+ goto converted; -+ } -+# endif -+# endif -+ -+ resize_freemem: -+ /* We must allocate a new buffer or resize the old one. */ -+ if (malloc_count > 0) -+ { -+ ++malloc_count; -+ freemem_size = malloc_count * INITIAL_BLOCK_SIZE; -+ newmem = (transmem_block_t *) realloc (transmem_list, -+ freemem_size); -+# ifdef _LIBC -+ if (newmem != NULL) -+ transmem_list = transmem_list->next; -+ else -+ { -+ struct transmem_list *old = transmem_list; -+ -+ transmem_list = transmem_list->next; -+ free (old); -+ } -+# endif -+ } -+ else -+ { -+ malloc_count = 1; -+ freemem_size = INITIAL_BLOCK_SIZE; -+ newmem = (transmem_block_t *) malloc (freemem_size); -+ } -+ if (__builtin_expect (newmem == NULL, 0)) -+ { -+ freemem = NULL; -+ freemem_size = 0; -+ __libc_lock_unlock (lock); -+ goto converted; -+ } -+ -+# ifdef _LIBC -+ /* Add the block to the list of blocks we have to free -+ at some point. */ -+ newmem->next = transmem_list; -+ transmem_list = newmem; -+ -+ freemem = newmem->data; -+ freemem_size -= offsetof (struct transmem_list, data); -+# else -+ transmem_list = newmem; -+ freemem = newmem; -+# endif -+ -+ outbuf = freemem + sizeof (size_t); -+ } -+ -+ /* We have now in our buffer a converted string. Put this -+ into the table of conversions. */ -+ *(size_t *) freemem = outbuf - freemem - sizeof (size_t); -+ domain->conv_tab[act] = (char *) freemem; -+ /* Shrink freemem, but keep it aligned. */ -+ freemem_size -= outbuf - freemem; -+ freemem = outbuf; -+ freemem += freemem_size & (alignof (size_t) - 1); -+ freemem_size = freemem_size & ~ (alignof (size_t) - 1); -+ -+ __libc_lock_unlock (lock); -+ } -+ -+ /* Now domain->conv_tab[act] contains the translation of all -+ the plural variants. */ -+ result = domain->conv_tab[act] + sizeof (size_t); -+ resultlen = *(size_t *) domain->conv_tab[act]; -+ } -+ -+ converted: -+ /* The result string is converted. */ -+ -+#endif /* _LIBC || HAVE_ICONV */ -+ -+ *lengthp = resultlen; -+ return result; -+} -+ -+ -+/* Look up a plural variant. */ -+static char * -+internal_function -+plural_lookup (struct loaded_l10nfile *domain, unsigned long int n, -+ const char *translation, size_t translation_len) -+{ -+ struct loaded_domain *domaindata = (struct loaded_domain *) domain->data; -+ unsigned long int index; -+ const char *p; -+ -+ index = plural_eval (domaindata->plural, n); -+ if (index >= domaindata->nplurals) -+ /* This should never happen. It means the plural expression and the -+ given maximum value do not match. */ -+ index = 0; -+ -+ /* Skip INDEX strings at TRANSLATION. */ -+ p = translation; -+ while (index-- > 0) -+ { -+#ifdef _LIBC -+ p = __rawmemchr (p, '\0'); -+#else -+ p = strchr (p, '\0'); -+#endif -+ /* And skip over the NUL byte. */ -+ p++; -+ -+ if (p >= translation + translation_len) -+ /* This should never happen. It means the plural expression -+ evaluated to a value larger than the number of variants -+ available for MSGID1. */ -+ return (char *) translation; -+ } -+ return (char *) p; -+} -+ -+#ifndef _LIBC -+/* Return string representation of locale CATEGORY. */ -+static const char * -+internal_function -+category_to_name (int category) -+{ -+ const char *retval; -+ -+ switch (category) -+ { -+#ifdef LC_COLLATE -+ case LC_COLLATE: -+ retval = "LC_COLLATE"; -+ break; -+#endif -+#ifdef LC_CTYPE -+ case LC_CTYPE: -+ retval = "LC_CTYPE"; -+ break; -+#endif -+#ifdef LC_MONETARY -+ case LC_MONETARY: -+ retval = "LC_MONETARY"; -+ break; -+#endif -+#ifdef LC_NUMERIC -+ case LC_NUMERIC: -+ retval = "LC_NUMERIC"; -+ break; -+#endif -+#ifdef LC_TIME -+ case LC_TIME: -+ retval = "LC_TIME"; -+ break; -+#endif -+#ifdef LC_MESSAGES -+ case LC_MESSAGES: -+ retval = "LC_MESSAGES"; -+ break; -+#endif -+#ifdef LC_RESPONSE -+ case LC_RESPONSE: -+ retval = "LC_RESPONSE"; -+ break; -+#endif -+#ifdef LC_ALL -+ case LC_ALL: -+ /* This might not make sense but is perhaps better than any other -+ value. */ -+ retval = "LC_ALL"; -+ break; -+#endif -+ default: -+ /* If you have a better idea for a default value let me know. */ -+ retval = "LC_XXX"; -+ } -+ -+ return retval; -+} -+#endif -+ -+/* Guess value of current locale from value of the environment variables. */ -+static const char * -+internal_function -+guess_category_value (int category, const char *categoryname) -+{ -+ const char *language; -+ const char *retval; -+ -+ /* The highest priority value is the `LANGUAGE' environment -+ variable. But we don't use the value if the currently selected -+ locale is the C locale. This is a GNU extension. */ -+ language = getenv ("LANGUAGE"); -+ if (language != NULL && language[0] == '\0') -+ language = NULL; -+ -+ /* We have to proceed with the POSIX methods of looking to `LC_ALL', -+ `LC_xxx', and `LANG'. On some systems this can be done by the -+ `setlocale' function itself. */ -+#ifdef _LIBC -+ retval = __current_locale_name (category); -+#else -+ retval = _nl_locale_name (category, categoryname); -+#endif -+ -+ /* Ignore LANGUAGE if the locale is set to "C" because -+ 1. "C" locale usually uses the ASCII encoding, and most international -+ messages use non-ASCII characters. These characters get displayed -+ as question marks (if using glibc's iconv()) or as invalid 8-bit -+ characters (because other iconv()s refuse to convert most non-ASCII -+ characters to ASCII). In any case, the output is ugly. -+ 2. The precise output of some programs in the "C" locale is specified -+ by POSIX and should not depend on environment variables like -+ "LANGUAGE". We allow such programs to use gettext(). */ -+ return language != NULL && strcmp (retval, "C") != 0 ? language : retval; -+} -+ -+/* @@ begin of epilog @@ */ -+ -+/* We don't want libintl.a to depend on any other library. So we -+ avoid the non-standard function stpcpy. In GNU C Library this -+ function is available, though. Also allow the symbol HAVE_STPCPY -+ to be defined. */ -+#if !_LIBC && !HAVE_STPCPY -+static char * -+stpcpy (char *dest, const char *src) -+{ -+ while ((*dest++ = *src++) != '\0') -+ /* Do nothing. */ ; -+ return dest - 1; -+} -+#endif -+ -+#if !_LIBC && !HAVE_MEMPCPY -+static void * -+mempcpy (void *dest, const void *src, size_t n) -+{ -+ return (void *) ((char *) memcpy (dest, src, n) + n); -+} -+#endif -+ -+ -+#ifdef _LIBC -+/* If we want to free all resources we have to do some work at -+ program's end. */ -+libc_freeres_fn (free_mem) -+{ -+ void *old; -+ -+ while (_nl_domain_bindings != NULL) -+ { -+ struct binding *oldp = _nl_domain_bindings; -+ _nl_domain_bindings = _nl_domain_bindings->next; -+ if (oldp->dirname != INTUSE(_nl_default_dirname)) -+ /* Yes, this is a pointer comparison. */ -+ free (oldp->dirname); -+ free (oldp->codeset); -+ free (oldp); -+ } -+ -+ if (_nl_current_default_domain != _nl_default_default_domain) -+ /* Yes, again a pointer comparison. */ -+ free ((char *) _nl_current_default_domain); -+ -+ /* Remove the search tree with the known translations. */ -+ __tdestroy (root, free); -+ root = NULL; -+ -+ while (transmem_list != NULL) -+ { -+ old = transmem_list; -+ transmem_list = transmem_list->next; -+ free (old); -+ } -+} -+#endif ---- lrzsz-0.12.20.safe/intl/dcngettext.c 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/dcngettext.c 2004-09-12 14:40:34.375745048 -0400 -@@ -0,0 +1,57 @@ -+/* Implementation of the dcngettext(3) function. -+ Copyright (C) 1995-1999, 2000-2003 Free Software Foundation, Inc. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+#ifdef HAVE_CONFIG_H -+# include -+#endif -+ -+#include "gettextP.h" -+#ifdef _LIBC -+# include -+#else -+# include "libgnuintl.h" -+#endif -+ -+/* @@ end of prolog @@ */ -+ -+/* Names for the libintl functions are a problem. They must not clash -+ with existing names and they should follow ANSI C. But this source -+ code is also used in GNU C Library where the names have a __ -+ prefix. So we have to make a difference here. */ -+#ifdef _LIBC -+# define DCNGETTEXT __dcngettext -+# define DCIGETTEXT __dcigettext -+#else -+# define DCNGETTEXT libintl_dcngettext -+# define DCIGETTEXT libintl_dcigettext -+#endif -+ -+/* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY -+ locale. */ -+char * -+DCNGETTEXT (const char *domainname, -+ const char *msgid1, const char *msgid2, unsigned long int n, -+ int category) -+{ -+ return DCIGETTEXT (domainname, msgid1, msgid2, 1, n, category); -+} -+ -+#ifdef _LIBC -+/* Alias for function name in GNU C Library. */ -+weak_alias (__dcngettext, dcngettext); -+#endif ---- lrzsz-0.12.20.safe/intl/dgettext.c 1998-04-26 09:20:52.000000000 -0400 -+++ lrzsz-0.12.20/intl/dgettext.c 2004-09-12 14:40:34.380744288 -0400 -@@ -1,32 +1,33 @@ --/* dgettext.c -- implementation of the dgettext(3) function -- Copyright (C) 1995 Software Foundation, Inc. -+/* Implementation of the dgettext(3) function. -+ Copyright (C) 1995-1997, 2000-2003 Free Software Foundation, Inc. - --This program is free software; you can redistribute it and/or modify --it under the terms of the GNU General Public License as published by --the Free Software Foundation; either version 2, or (at your option) --any later version. -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. - --This program is distributed in the hope that it will be useful, --but WITHOUT ANY WARRANTY; without even the implied warranty of --MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the --GNU General Public License for more details. -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. - --You should have received a copy of the GNU General Public License --along with this program; if not, write to the Free Software --Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ - - #ifdef HAVE_CONFIG_H - # include - #endif - --#if defined HAVE_LOCALE_H || defined _LIBC --# include --#endif -+#include "gettextP.h" -+ -+#include - - #ifdef _LIBC - # include - #else --# include "libgettext.h" -+# include "libgnuintl.h" - #endif - - /* @@ end of prolog @@ */ -@@ -37,18 +38,16 @@ - prefix. So we have to make a difference here. */ - #ifdef _LIBC - # define DGETTEXT __dgettext --# define DCGETTEXT __dcgettext -+# define DCGETTEXT INTUSE(__dcgettext) - #else --# define DGETTEXT dgettext__ --# define DCGETTEXT dcgettext__ -+# define DGETTEXT libintl_dgettext -+# define DCGETTEXT libintl_dcgettext - #endif - - /* Look up MSGID in the DOMAINNAME message catalog of the current - LC_MESSAGES locale. */ - char * --DGETTEXT (domainname, msgid) -- const char *domainname; -- const char *msgid; -+DGETTEXT (const char *domainname, const char *msgid) - { - return DCGETTEXT (domainname, msgid, LC_MESSAGES); - } ---- lrzsz-0.12.20.safe/intl/dngettext.c 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/dngettext.c 2004-09-12 14:40:34.385743528 -0400 -@@ -0,0 +1,59 @@ -+/* Implementation of the dngettext(3) function. -+ Copyright (C) 1995-1997, 2000-2003 Free Software Foundation, Inc. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+#ifdef HAVE_CONFIG_H -+# include -+#endif -+ -+#include "gettextP.h" -+ -+#include -+ -+#ifdef _LIBC -+# include -+#else -+# include "libgnuintl.h" -+#endif -+ -+/* @@ end of prolog @@ */ -+ -+/* Names for the libintl functions are a problem. They must not clash -+ with existing names and they should follow ANSI C. But this source -+ code is also used in GNU C Library where the names have a __ -+ prefix. So we have to make a difference here. */ -+#ifdef _LIBC -+# define DNGETTEXT __dngettext -+# define DCNGETTEXT __dcngettext -+#else -+# define DNGETTEXT libintl_dngettext -+# define DCNGETTEXT libintl_dcngettext -+#endif -+ -+/* Look up MSGID in the DOMAINNAME message catalog of the current -+ LC_MESSAGES locale and skip message according to the plural form. */ -+char * -+DNGETTEXT (const char *domainname, -+ const char *msgid1, const char *msgid2, unsigned long int n) -+{ -+ return DCNGETTEXT (domainname, msgid1, msgid2, n, LC_MESSAGES); -+} -+ -+#ifdef _LIBC -+/* Alias for function name in GNU C Library. */ -+weak_alias (__dngettext, dngettext); -+#endif ---- lrzsz-0.12.20.safe/intl/eval-plural.h 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/eval-plural.h 2004-09-12 14:40:34.390742768 -0400 -@@ -0,0 +1,108 @@ -+/* Plural expression evaluation. -+ Copyright (C) 2000-2003 Free Software Foundation, Inc. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+#ifndef STATIC -+#define STATIC static -+#endif -+ -+/* Evaluate the plural expression and return an index value. */ -+STATIC -+unsigned long int -+internal_function -+plural_eval (struct expression *pexp, unsigned long int n) -+{ -+ switch (pexp->nargs) -+ { -+ case 0: -+ switch (pexp->operation) -+ { -+ case var: -+ return n; -+ case num: -+ return pexp->val.num; -+ default: -+ break; -+ } -+ /* NOTREACHED */ -+ break; -+ case 1: -+ { -+ /* pexp->operation must be lnot. */ -+ unsigned long int arg = plural_eval (pexp->val.args[0], n); -+ return ! arg; -+ } -+ case 2: -+ { -+ unsigned long int leftarg = plural_eval (pexp->val.args[0], n); -+ if (pexp->operation == lor) -+ return leftarg || plural_eval (pexp->val.args[1], n); -+ else if (pexp->operation == land) -+ return leftarg && plural_eval (pexp->val.args[1], n); -+ else -+ { -+ unsigned long int rightarg = plural_eval (pexp->val.args[1], n); -+ -+ switch (pexp->operation) -+ { -+ case mult: -+ return leftarg * rightarg; -+ case divide: -+#if !INTDIV0_RAISES_SIGFPE -+ if (rightarg == 0) -+ raise (SIGFPE); -+#endif -+ return leftarg / rightarg; -+ case module: -+#if !INTDIV0_RAISES_SIGFPE -+ if (rightarg == 0) -+ raise (SIGFPE); -+#endif -+ return leftarg % rightarg; -+ case plus: -+ return leftarg + rightarg; -+ case minus: -+ return leftarg - rightarg; -+ case less_than: -+ return leftarg < rightarg; -+ case greater_than: -+ return leftarg > rightarg; -+ case less_or_equal: -+ return leftarg <= rightarg; -+ case greater_or_equal: -+ return leftarg >= rightarg; -+ case equal: -+ return leftarg == rightarg; -+ case not_equal: -+ return leftarg != rightarg; -+ default: -+ break; -+ } -+ } -+ /* NOTREACHED */ -+ break; -+ } -+ case 3: -+ { -+ /* pexp->operation must be qmop. */ -+ unsigned long int boolarg = plural_eval (pexp->val.args[0], n); -+ return plural_eval (pexp->val.args[boolarg ? 1 : 2], n); -+ } -+ } -+ /* NOTREACHED */ -+ return 0; -+} ---- lrzsz-0.12.20.safe/intl/explodename.c 1998-04-26 09:22:37.000000000 -0400 -+++ lrzsz-0.12.20/intl/explodename.c 2004-09-12 14:40:34.395742008 -0400 -@@ -1,19 +1,20 @@ --/* Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. -+/* Copyright (C) 1995-1998, 2000-2001, 2003 Free Software Foundation, Inc. - Contributed by Ulrich Drepper , 1995. - -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation; either version 2, or (at your option) -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. - -- You should have received a copy of the GNU General Public License -- along with this program; if not, write to the Free Software Foundation, -- Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ - - #ifdef HAVE_CONFIG_H - # include -@@ -36,18 +37,23 @@ - - /* @@ end of prolog @@ */ - -+char * -+_nl_find_language (const char *name) -+{ -+ while (name[0] != '\0' && name[0] != '_' && name[0] != '@' -+ && name[0] != '+' && name[0] != ',') -+ ++name; -+ -+ return (char *) name; -+} -+ -+ - int --_nl_explode_name (name, language, modifier, territory, codeset, -- normalized_codeset, special, sponsor, revision) -- char *name; -- const char **language; -- const char **modifier; -- const char **territory; -- const char **codeset; -- const char **normalized_codeset; -- const char **special; -- const char **sponsor; -- const char **revision; -+_nl_explode_name (char *name, -+ const char **language, const char **modifier, -+ const char **territory, const char **codeset, -+ const char **normalized_codeset, const char **special, -+ const char **sponsor, const char **revision) - { - enum { undecided, xpg, cen } syntax; - char *cp; -@@ -67,9 +73,7 @@ - mask = 0; - syntax = undecided; - *language = cp = name; -- while (cp[0] != '\0' && cp[0] != '_' && cp[0] != '@' -- && cp[0] != '+' && cp[0] != ',') -- ++cp; -+ cp = _nl_find_language (*language); - - if (*language == cp) - /* This does not make sense: language has to be specified. Use ---- lrzsz-0.12.20.safe/intl/finddomain.c 1998-04-26 09:22:36.000000000 -0400 -+++ lrzsz-0.12.20/intl/finddomain.c 2004-09-12 14:40:34.415738968 -0400 -@@ -1,64 +1,40 @@ - /* Handle list of needed message catalogs -- Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. -- Written by Ulrich Drepper , 1995. -+ Copyright (C) 1995-1999, 2000-2001, 2003 Free Software Foundation, Inc. -+ Written by Ulrich Drepper , 1995. - -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation; either version 2, or (at your option) -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. - -- You should have received a copy of the GNU General Public License -- along with this program; if not, write to the Free Software Foundation, -- Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ - - #ifdef HAVE_CONFIG_H - # include - #endif - --#include --#include - #include - #include -- --#if defined STDC_HEADERS || defined _LIBC --# include --#else --# ifdef HAVE_MALLOC_H --# include --# else --void free (); --# endif --#endif -- --#if defined HAVE_STRING_H || defined _LIBC --# include --#else --# include --# ifndef memcpy --# define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num) --# endif --#endif --#if !HAVE_STRCHR && !defined _LIBC --# ifndef strchr --# define strchr index --# endif --#endif -+#include -+#include - - #if defined HAVE_UNISTD_H || defined _LIBC - # include - #endif - --#include "gettext.h" - #include "gettextP.h" - #ifdef _LIBC - # include - #else --# include "libgettext.h" -+# include "libgnuintl.h" - #endif - - /* @@ end of prolog @@ */ -@@ -70,10 +46,9 @@ - the DOMAINNAME and CATEGORY parameters with respect to the currently - established bindings. */ - struct loaded_l10nfile * --_nl_find_domain (dirname, locale, domainname) -- const char *dirname; -- char *locale; -- const char *domainname; -+internal_function -+_nl_find_domain (const char *dirname, char *locale, -+ const char *domainname, struct binding *domainbinding) - { - struct loaded_l10nfile *retval; - const char *language; -@@ -95,9 +70,9 @@ - - language[_territory][+audience][+special][,[sponsor][_revision]] - -- Beside the first all of them are allowed to be missing. If the -- full specified locale is not found, the less specific one are -- looked for. The various part will be stripped of according to -+ Beside the first part all of them are allowed to be missing. If -+ the full specified locale is not found, the less specific one are -+ looked for. The various parts will be stripped off according to - the following order: - (1) revision - (2) sponsor -@@ -119,7 +94,7 @@ - int cnt; - - if (retval->decided == 0) -- _nl_load_domain (retval); -+ _nl_load_domain (retval, domainbinding); - - if (retval->data != NULL) - return retval; -@@ -127,7 +102,7 @@ - for (cnt = 0; retval->successor[cnt] != NULL; ++cnt) - { - if (retval->successor[cnt]->decided == 0) -- _nl_load_domain (retval->successor[cnt]); -+ _nl_load_domain (retval->successor[cnt], domainbinding); - - if (retval->successor[cnt]->data != NULL) - break; -@@ -142,12 +117,18 @@ - alias_value = _nl_expand_alias (locale); - if (alias_value != NULL) - { -+#if defined _LIBC || defined HAVE_STRDUP -+ locale = strdup (alias_value); -+ if (locale == NULL) -+ return NULL; -+#else - size_t len = strlen (alias_value) + 1; - locale = (char *) malloc (len); - if (locale == NULL) - return NULL; - - memcpy (locale, alias_value, len); -+#endif - } - - /* Now we determine the single parts of the locale name. First -@@ -168,14 +149,14 @@ - return NULL; - - if (retval->decided == 0) -- _nl_load_domain (retval); -+ _nl_load_domain (retval, domainbinding); - if (retval->data == NULL) - { - int cnt; - for (cnt = 0; retval->successor[cnt] != NULL; ++cnt) - { - if (retval->successor[cnt]->decided == 0) -- _nl_load_domain (retval->successor[cnt]); -+ _nl_load_domain (retval->successor[cnt], domainbinding); - if (retval->successor[cnt]->data != NULL) - break; - } -@@ -185,5 +166,27 @@ - if (alias_value != NULL) - free (locale); - -+ /* The space for normalized_codeset is dynamically allocated. Free it. */ -+ if (mask & XPG_NORM_CODESET) -+ free ((void *) normalized_codeset); -+ - return retval; - } -+ -+ -+#ifdef _LIBC -+libc_freeres_fn (free_mem) -+{ -+ struct loaded_l10nfile *runp = _nl_loaded_domains; -+ -+ while (runp != NULL) -+ { -+ struct loaded_l10nfile *here = runp; -+ if (runp->data != NULL) -+ _nl_unload_domain ((struct loaded_domain *) runp->data); -+ runp = runp->next; -+ free ((char *) here->filename); -+ free (here); -+ } -+} -+#endif ---- lrzsz-0.12.20.safe/intl/gettext.c 1998-04-26 09:22:36.000000000 -0400 -+++ lrzsz-0.12.20/intl/gettext.c 2004-09-12 14:40:34.420738208 -0400 -@@ -1,19 +1,20 @@ --/* Implementation of gettext(3) function -- Copyright (C) 1995, 1997 Free Software Foundation, Inc. -+/* Implementation of gettext(3) function. -+ Copyright (C) 1995, 1997, 2000-2003 Free Software Foundation, Inc. - -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation; either version 2, or (at your option) -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. - -- You should have received a copy of the GNU General Public License -- along with this program; if not, write to the Free Software Foundation, -- Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ - - #ifdef HAVE_CONFIG_H - # include -@@ -23,21 +24,14 @@ - # define __need_NULL - # include - #else --# ifdef STDC_HEADERS --# include /* Just for NULL. */ --# else --# ifdef HAVE_STRING_H --# include --# else --# define NULL ((void *) 0) --# endif --# endif -+# include /* Just for NULL. */ - #endif - -+#include "gettextP.h" - #ifdef _LIBC - # include - #else --# include "libgettext.h" -+# include "libgnuintl.h" - #endif - - /* @@ end of prolog @@ */ -@@ -48,20 +42,19 @@ - prefix. So we have to make a difference here. */ - #ifdef _LIBC - # define GETTEXT __gettext --# define DGETTEXT __dgettext -+# define DCGETTEXT INTUSE(__dcgettext) - #else --# define GETTEXT gettext__ --# define DGETTEXT dgettext__ -+# define GETTEXT libintl_gettext -+# define DCGETTEXT libintl_dcgettext - #endif - - /* Look up MSGID in the current default message catalog for the current - LC_MESSAGES locale. If not found, returns MSGID itself (the default - text). */ - char * --GETTEXT (msgid) -- const char *msgid; -+GETTEXT (const char *msgid) - { -- return DGETTEXT (NULL, msgid); -+ return DCGETTEXT (NULL, msgid, LC_MESSAGES); - } - - #ifdef _LIBC ---- lrzsz-0.12.20.safe/intl/gettext.h 1998-04-26 09:22:35.000000000 -0400 -+++ lrzsz-0.12.20/intl/gettext.h 1969-12-31 19:00:00.000000000 -0500 -@@ -1,105 +0,0 @@ --/* Internal header for GNU gettext internationalization functions -- Copyright (C) 1995, 1997 Free Software Foundation, Inc. -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation; either version 2, or (at your option) -- any later version. -- -- This program is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -- -- You should have received a copy of the GNU Library General Public -- License along with the GNU C Library; see the file COPYING.LIB. If not, -- write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, -- Boston, MA 02111-1307, USA. */ -- --#ifndef _GETTEXT_H --#define _GETTEXT_H 1 -- --#include -- --#if HAVE_LIMITS_H || _LIBC --# include --#endif -- --/* @@ end of prolog @@ */ -- --/* The magic number of the GNU message catalog format. */ --#define _MAGIC 0x950412de --#define _MAGIC_SWAPPED 0xde120495 -- --/* Revision number of the currently used .mo (binary) file format. */ --#define MO_REVISION_NUMBER 0 -- --/* The following contortions are an attempt to use the C preprocessor -- to determine an unsigned integral type that is 32 bits wide. An -- alternative approach is to use autoconf's AC_CHECK_SIZEOF macro, but -- doing that would require that the configure script compile and *run* -- the resulting executable. Locally running cross-compiled executables -- is usually not possible. */ -- --#if __STDC__ --# define UINT_MAX_32_BITS 4294967295U --#else --# define UINT_MAX_32_BITS 0xFFFFFFFF --#endif -- --/* If UINT_MAX isn't defined, assume it's a 32-bit type. -- This should be valid for all systems GNU cares about because -- that doesn't include 16-bit systems, and only modern systems -- (that certainly have ) have 64+-bit integral types. */ -- --#ifndef UINT_MAX --# define UINT_MAX UINT_MAX_32_BITS --#endif -- --#if UINT_MAX == UINT_MAX_32_BITS --typedef unsigned nls_uint32; --#else --# if USHRT_MAX == UINT_MAX_32_BITS --typedef unsigned short nls_uint32; --# else --# if ULONG_MAX == UINT_MAX_32_BITS --typedef unsigned long nls_uint32; --# else -- /* The following line is intended to throw an error. Using #error is -- not portable enough. */ -- "Cannot determine unsigned 32-bit data type." --# endif --# endif --#endif -- -- --/* Header for binary .mo file format. */ --struct mo_file_header --{ -- /* The magic number. */ -- nls_uint32 magic; -- /* The revision number of the file format. */ -- nls_uint32 revision; -- /* The number of strings pairs. */ -- nls_uint32 nstrings; -- /* Offset of table with start offsets of original strings. */ -- nls_uint32 orig_tab_offset; -- /* Offset of table with start offsets of translation strings. */ -- nls_uint32 trans_tab_offset; -- /* Size of hashing table. */ -- nls_uint32 hash_tab_size; -- /* Offset of first hashing entry. */ -- nls_uint32 hash_tab_offset; --}; -- --struct string_desc --{ -- /* Length of addressed string. */ -- nls_uint32 length; -- /* Offset of string in file. */ -- nls_uint32 offset; --}; -- --/* @@ begin of epilog @@ */ -- --#endif /* gettext.h */ ---- lrzsz-0.12.20.safe/intl/gettextP.h 1998-04-26 09:22:35.000000000 -0400 -+++ lrzsz-0.12.20/intl/gettextP.h 2004-09-12 14:40:34.426737296 -0400 -@@ -1,33 +1,53 @@ --/* Header describing internals of gettext library -- Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. -+/* Header describing internals of libintl library. -+ Copyright (C) 1995-1999, 2000-2003 Free Software Foundation, Inc. -+ Written by Ulrich Drepper , 1995. - -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation; either version 2, or (at your option) -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. - -- You should have received a copy of the GNU General Public License -- along with this program; if not, write to the Free Software Foundation, -- Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ - - #ifndef _GETTEXTP_H - #define _GETTEXTP_H - -+#include /* Get size_t. */ -+ -+#ifdef _LIBC -+# include "../iconv/gconv_int.h" -+#else -+# if HAVE_ICONV -+# include -+# endif -+#endif -+ - #include "loadinfo.h" - -+#include "gmo.h" /* Get nls_uint32. */ -+ - /* @@ end of prolog @@ */ - --#ifndef PARAMS --# if __STDC__ --# define PARAMS(args) args --# else --# define PARAMS(args) () --# endif -+#ifndef internal_function -+# define internal_function -+#endif -+ -+#ifndef attribute_hidden -+# define attribute_hidden -+#endif -+ -+/* Tell the compiler when a conditional or integer expression is -+ almost always true or almost always false. */ -+#ifndef HAVE_BUILTIN_EXPECT -+# define __builtin_expect(expr, val) (expr) - #endif - - #ifndef W -@@ -35,38 +55,160 @@ - #endif - - --static nls_uint32 SWAP PARAMS ((nls_uint32 i)); -- -+#ifdef _LIBC -+# include -+# define SWAP(i) bswap_32 (i) -+#else - static inline nls_uint32 - SWAP (i) - nls_uint32 i; - { - return (i << 24) | ((i & 0xff00) << 8) | ((i >> 8) & 0xff00) | (i >> 24); - } -+#endif -+ - -+/* In-memory representation of system dependent string. */ -+struct sysdep_string_desc -+{ -+ /* Length of addressed string, including the trailing NUL. */ -+ size_t length; -+ /* Pointer to addressed string. */ -+ const char *pointer; -+}; - -+/* The representation of an opened message catalog. */ - struct loaded_domain - { -+ /* Pointer to memory containing the .mo file. */ - const char *data; -+ /* 1 if the memory is mmap()ed, 0 if the memory is malloc()ed. */ -+ int use_mmap; -+ /* Size of mmap()ed memory. */ -+ size_t mmap_size; -+ /* 1 if the .mo file uses a different endianness than this machine. */ - int must_swap; -+ /* Pointer to additional malloc()ed memory. */ -+ void *malloced; -+ -+ /* Number of static strings pairs. */ - nls_uint32 nstrings; -- struct string_desc *orig_tab; -- struct string_desc *trans_tab; -+ /* Pointer to descriptors of original strings in the file. */ -+ const struct string_desc *orig_tab; -+ /* Pointer to descriptors of translated strings in the file. */ -+ const struct string_desc *trans_tab; -+ -+ /* Number of system dependent strings pairs. */ -+ nls_uint32 n_sysdep_strings; -+ /* Pointer to descriptors of original sysdep strings. */ -+ const struct sysdep_string_desc *orig_sysdep_tab; -+ /* Pointer to descriptors of translated sysdep strings. */ -+ const struct sysdep_string_desc *trans_sysdep_tab; -+ -+ /* Size of hash table. */ - nls_uint32 hash_size; -- nls_uint32 *hash_tab; -+ /* Pointer to hash table. */ -+ const nls_uint32 *hash_tab; -+ /* 1 if the hash table uses a different endianness than this machine. */ -+ int must_swap_hash_tab; -+ -+ int codeset_cntr; -+#ifdef _LIBC -+ __gconv_t conv; -+#else -+# if HAVE_ICONV -+ iconv_t conv; -+# endif -+#endif -+ char **conv_tab; -+ -+ struct expression *plural; -+ unsigned long int nplurals; - }; - -+/* We want to allocate a string at the end of the struct. But ISO C -+ doesn't allow zero sized arrays. */ -+#ifdef __GNUC__ -+# define ZERO 0 -+#else -+# define ZERO 1 -+#endif -+ -+/* A set of settings bound to a message domain. Used to store settings -+ from bindtextdomain() and bind_textdomain_codeset(). */ - struct binding - { - struct binding *next; -- char *domainname; - char *dirname; -+ int codeset_cntr; /* Incremented each time codeset changes. */ -+ char *codeset; -+ char domainname[ZERO]; - }; - --struct loaded_l10nfile *_nl_find_domain PARAMS ((const char *__dirname, -- char *__locale, -- const char *__domainname)); --void _nl_load_domain PARAMS ((struct loaded_l10nfile *__domain)); -+/* A counter which is incremented each time some previous translations -+ become invalid. -+ This variable is part of the external ABI of the GNU libintl. */ -+extern int _nl_msg_cat_cntr; -+ -+#ifndef _LIBC -+const char *_nl_locale_name (int category, const char *categoryname); -+#endif -+ -+struct loaded_l10nfile *_nl_find_domain (const char *__dirname, char *__locale, -+ const char *__domainname, -+ struct binding *__domainbinding) -+ internal_function; -+void _nl_load_domain (struct loaded_l10nfile *__domain, -+ struct binding *__domainbinding) -+ internal_function; -+void _nl_unload_domain (struct loaded_domain *__domain) -+ internal_function; -+const char *_nl_init_domain_conv (struct loaded_l10nfile *__domain_file, -+ struct loaded_domain *__domain, -+ struct binding *__domainbinding) -+ internal_function; -+void _nl_free_domain_conv (struct loaded_domain *__domain) -+ internal_function; -+ -+char *_nl_find_msg (struct loaded_l10nfile *domain_file, -+ struct binding *domainbinding, const char *msgid, -+ size_t *lengthp) -+ internal_function; -+ -+#ifdef _LIBC -+extern char *__gettext (const char *__msgid); -+extern char *__dgettext (const char *__domainname, const char *__msgid); -+extern char *__dcgettext (const char *__domainname, const char *__msgid, -+ int __category); -+extern char *__ngettext (const char *__msgid1, const char *__msgid2, -+ unsigned long int __n); -+extern char *__dngettext (const char *__domainname, -+ const char *__msgid1, const char *__msgid2, -+ unsigned long int n); -+extern char *__dcngettext (const char *__domainname, -+ const char *__msgid1, const char *__msgid2, -+ unsigned long int __n, int __category); -+extern char *__dcigettext (const char *__domainname, -+ const char *__msgid1, const char *__msgid2, -+ int __plural, unsigned long int __n, -+ int __category); -+extern char *__textdomain (const char *__domainname); -+extern char *__bindtextdomain (const char *__domainname, -+ const char *__dirname); -+extern char *__bind_textdomain_codeset (const char *__domainname, -+ const char *__codeset); -+#else -+/* Declare the exported libintl_* functions, in a way that allows us to -+ call them under their real name. */ -+# undef _INTL_REDIRECT_INLINE -+# undef _INTL_REDIRECT_MACROS -+# define _INTL_REDIRECT_MACROS -+# include "libgnuintl.h" -+extern char *libintl_dcigettext (const char *__domainname, -+ const char *__msgid1, const char *__msgid2, -+ int __plural, unsigned long int __n, -+ int __category); -+#endif - - /* @@ begin of epilog @@ */ - ---- lrzsz-0.12.20.safe/intl/gmo.h 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/gmo.h 2004-09-12 14:40:34.431736536 -0400 -@@ -0,0 +1,149 @@ -+/* Description of GNU message catalog format: general file layout. -+ Copyright (C) 1995, 1997, 2000-2002, 2004 Free Software Foundation, Inc. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+#ifndef _GETTEXT_H -+#define _GETTEXT_H 1 -+ -+#include -+ -+/* @@ end of prolog @@ */ -+ -+/* The magic number of the GNU message catalog format. */ -+#define _MAGIC 0x950412de -+#define _MAGIC_SWAPPED 0xde120495 -+ -+/* Revision number of the currently used .mo (binary) file format. */ -+#define MO_REVISION_NUMBER 0 -+#define MO_REVISION_NUMBER_WITH_SYSDEP_I 1 -+ -+/* The following contortions are an attempt to use the C preprocessor -+ to determine an unsigned integral type that is 32 bits wide. An -+ alternative approach is to use autoconf's AC_CHECK_SIZEOF macro, but -+ as of version autoconf-2.13, the AC_CHECK_SIZEOF macro doesn't work -+ when cross-compiling. */ -+ -+#if __STDC__ -+# define UINT_MAX_32_BITS 4294967295U -+#else -+# define UINT_MAX_32_BITS 0xFFFFFFFF -+#endif -+ -+/* If UINT_MAX isn't defined, assume it's a 32-bit type. -+ This should be valid for all systems GNU cares about because -+ that doesn't include 16-bit systems, and only modern systems -+ (that certainly have ) have 64+-bit integral types. */ -+ -+#ifndef UINT_MAX -+# define UINT_MAX UINT_MAX_32_BITS -+#endif -+ -+#if UINT_MAX == UINT_MAX_32_BITS -+typedef unsigned nls_uint32; -+#else -+# if USHRT_MAX == UINT_MAX_32_BITS -+typedef unsigned short nls_uint32; -+# else -+# if ULONG_MAX == UINT_MAX_32_BITS -+typedef unsigned long nls_uint32; -+# else -+ /* The following line is intended to throw an error. Using #error is -+ not portable enough. */ -+ "Cannot determine unsigned 32-bit data type." -+# endif -+# endif -+#endif -+ -+ -+/* Header for binary .mo file format. */ -+struct mo_file_header -+{ -+ /* The magic number. */ -+ nls_uint32 magic; -+ /* The revision number of the file format. */ -+ nls_uint32 revision; -+ -+ /* The following are only used in .mo files with major revision 0 or 1. */ -+ -+ /* The number of strings pairs. */ -+ nls_uint32 nstrings; -+ /* Offset of table with start offsets of original strings. */ -+ nls_uint32 orig_tab_offset; -+ /* Offset of table with start offsets of translated strings. */ -+ nls_uint32 trans_tab_offset; -+ /* Size of hash table. */ -+ nls_uint32 hash_tab_size; -+ /* Offset of first hash table entry. */ -+ nls_uint32 hash_tab_offset; -+ -+ /* The following are only used in .mo files with minor revision >= 1. */ -+ -+ /* The number of system dependent segments. */ -+ nls_uint32 n_sysdep_segments; -+ /* Offset of table describing system dependent segments. */ -+ nls_uint32 sysdep_segments_offset; -+ /* The number of system dependent strings pairs. */ -+ nls_uint32 n_sysdep_strings; -+ /* Offset of table with start offsets of original sysdep strings. */ -+ nls_uint32 orig_sysdep_tab_offset; -+ /* Offset of table with start offsets of translated sysdep strings. */ -+ nls_uint32 trans_sysdep_tab_offset; -+}; -+ -+/* Descriptor for static string contained in the binary .mo file. */ -+struct string_desc -+{ -+ /* Length of addressed string, not including the trailing NUL. */ -+ nls_uint32 length; -+ /* Offset of string in file. */ -+ nls_uint32 offset; -+}; -+ -+/* The following are only used in .mo files with minor revision >= 1. */ -+ -+/* Descriptor for system dependent string segment. */ -+struct sysdep_segment -+{ -+ /* Length of addressed string, including the trailing NUL. */ -+ nls_uint32 length; -+ /* Offset of string in file. */ -+ nls_uint32 offset; -+}; -+ -+/* Descriptor for system dependent string. */ -+struct sysdep_string -+{ -+ /* Offset of static string segments in file. */ -+ nls_uint32 offset; -+ /* Alternating sequence of static and system dependent segments. -+ The last segment is a static segment, including the trailing NUL. */ -+ struct segment_pair -+ { -+ /* Size of static segment. */ -+ nls_uint32 segsize; -+ /* Reference to system dependent string segment, or ~0 at the end. */ -+ nls_uint32 sysdepref; -+ } segments[1]; -+}; -+ -+/* Marker for the end of the segments[] array. This has the value 0xFFFFFFFF, -+ regardless whether 'int' is 16 bit, 32 bit, or 64 bit. */ -+#define SEGMENTS_END ((nls_uint32) ~0) -+ -+/* @@ begin of epilog @@ */ -+ -+#endif /* gettext.h */ ---- lrzsz-0.12.20.safe/intl/hash-string.h 1998-04-26 09:22:36.000000000 -0400 -+++ lrzsz-0.12.20/intl/hash-string.h 2004-09-12 14:40:34.436735776 -0400 -@@ -1,35 +1,23 @@ --/* Implements a string hashing function. -- Copyright (C) 1995, 1997 Free Software Foundation, Inc. -+/* Description of GNU message catalog format: string hashing function. -+ Copyright (C) 1995, 1997-1998, 2000-2003 Free Software Foundation, Inc. - -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation; either version 2, or (at your option) -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. - - You should have received a copy of the GNU Library General Public -- License along with the GNU C Library; see the file COPYING.LIB. If not, -- write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, -- Boston, MA 02111-1307, USA. */ -- --#ifdef HAVE_VALUES_H --# include --#endif -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ - - /* @@ end of prolog @@ */ - --#ifndef PARAMS --# if __STDC__ --# define PARAMS(Args) Args --# else --# define PARAMS(Args) () --# endif --#endif -- - /* We assume to have `unsigned long int' value with at least 32 bits. */ - #define HASHWORDBITS 32 - -@@ -37,11 +25,8 @@ - /* Defines the so called `hashpjw' function by P.J. Weinberger - [see Aho/Sethi/Ullman, COMPILERS: Principles, Techniques and Tools, - 1986, 1987 Bell Telephone Laboratories, Inc.] */ --static unsigned long hash_string PARAMS ((const char *__str_param)); -- --static inline unsigned long --hash_string (str_param) -- const char *str_param; -+static inline unsigned long int -+hash_string (const char *str_param) - { - unsigned long int hval, g; - const char *str = str_param; -@@ -51,8 +36,8 @@ - while (*str != '\0') - { - hval <<= 4; -- hval += (unsigned long) *str++; -- g = hval & ((unsigned long) 0xf << (HASHWORDBITS - 4)); -+ hval += (unsigned char) *str++; -+ g = hval & ((unsigned long int) 0xf << (HASHWORDBITS - 4)); - if (g != 0) - { - hval ^= g >> (HASHWORDBITS - 8); ---- lrzsz-0.12.20.safe/intl/intl-compat.c 1998-04-26 09:20:52.000000000 -0400 -+++ lrzsz-0.12.20/intl/intl-compat.c 2004-09-12 14:40:34.441735016 -0400 -@@ -1,76 +1,131 @@ - /* intl-compat.c - Stub functions to call gettext functions from GNU gettext - Library. -- Copyright (C) 1995 Software Foundation, Inc. -+ Copyright (C) 1995, 2000-2003 Software Foundation, Inc. - --This program is free software; you can redistribute it and/or modify --it under the terms of the GNU General Public License as published by --the Free Software Foundation; either version 2, or (at your option) --any later version. -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. - --This program is distributed in the hope that it will be useful, --but WITHOUT ANY WARRANTY; without even the implied warranty of --MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the --GNU General Public License for more details. -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. - --You should have received a copy of the GNU General Public License --along with this program; if not, write to the Free Software --Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ - - #ifdef HAVE_CONFIG_H - # include - #endif - --#include "libgettext.h" -+#include "gettextP.h" - - /* @@ end of prolog @@ */ - -+/* This file redirects the gettext functions (without prefix) to those -+ defined in the included GNU libintl library (with "libintl_" prefix). -+ It is compiled into libintl in order to make the AM_GNU_GETTEXT test -+ of gettext <= 0.11.2 work with the libintl library >= 0.11.3 which -+ has the redirections primarily in the include file. -+ It is also compiled into libgnuintl so that libgnuintl.so can be used -+ as LD_PRELOADable library on glibc systems, to provide the extra -+ features that the functions in the libc don't have (namely, logging). */ -+ - - #undef gettext - #undef dgettext - #undef dcgettext -+#undef ngettext -+#undef dngettext -+#undef dcngettext - #undef textdomain - #undef bindtextdomain -+#undef bind_textdomain_codeset -+ -+ -+/* When building a DLL, we must export some functions. Note that because -+ the functions are only defined for binary backward compatibility, we -+ don't need to use __declspec(dllimport) in any case. */ -+#if defined _MSC_VER && BUILDING_DLL -+# define DLL_EXPORTED __declspec(dllexport) -+#else -+# define DLL_EXPORTED -+#endif - - -+DLL_EXPORTED - char * --bindtextdomain (domainname, dirname) -- const char *domainname; -- const char *dirname; -+gettext (const char *msgid) - { -- return bindtextdomain__ (domainname, dirname); -+ return libintl_gettext (msgid); - } - - -+DLL_EXPORTED - char * --dcgettext (domainname, msgid, category) -- const char *domainname; -- const char *msgid; -- int category; -+dgettext (const char *domainname, const char *msgid) - { -- return dcgettext__ (domainname, msgid, category); -+ return libintl_dgettext (domainname, msgid); - } - - -+DLL_EXPORTED - char * --dgettext (domainname, msgid) -- const char *domainname; -- const char *msgid; -+dcgettext (const char *domainname, const char *msgid, int category) - { -- return dgettext__ (domainname, msgid); -+ return libintl_dcgettext (domainname, msgid, category); - } - - -+DLL_EXPORTED - char * --gettext (msgid) -- const char *msgid; -+ngettext (const char *msgid1, const char *msgid2, unsigned long int n) - { -- return gettext__ (msgid); -+ return libintl_ngettext (msgid1, msgid2, n); - } - - -+DLL_EXPORTED - char * --textdomain (domainname) -- const char *domainname; -+dngettext (const char *domainname, -+ const char *msgid1, const char *msgid2, unsigned long int n) - { -- return textdomain__ (domainname); -+ return libintl_dngettext (domainname, msgid1, msgid2, n); -+} -+ -+ -+DLL_EXPORTED -+char * -+dcngettext (const char *domainname, -+ const char *msgid1, const char *msgid2, unsigned long int n, -+ int category) -+{ -+ return libintl_dcngettext (domainname, msgid1, msgid2, n, category); -+} -+ -+ -+DLL_EXPORTED -+char * -+textdomain (const char *domainname) -+{ -+ return libintl_textdomain (domainname); -+} -+ -+ -+DLL_EXPORTED -+char * -+bindtextdomain (const char *domainname, const char *dirname) -+{ -+ return libintl_bindtextdomain (domainname, dirname); -+} -+ -+ -+DLL_EXPORTED -+char * -+bind_textdomain_codeset (const char *domainname, const char *codeset) -+{ -+ return libintl_bind_textdomain_codeset (domainname, codeset); - } ---- lrzsz-0.12.20.safe/intl/l10nflist.c 1998-04-26 09:22:37.000000000 -0400 -+++ lrzsz-0.12.20/intl/l10nflist.c 2004-09-12 14:40:34.457732584 -0400 -@@ -1,52 +1,40 @@ --/* Handle list of needed message catalogs -- Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. -- Written by Ulrich Drepper , 1995. -+/* Copyright (C) 1995-1999, 2000-2003 Free Software Foundation, Inc. -+ Contributed by Ulrich Drepper , 1995. - -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation; either version 2, or (at your option) -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. - -- You should have received a copy of the GNU General Public License -- along with this program; if not, write to the Free Software Foundation, -- Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+/* Tell glibc's to provide a prototype for stpcpy(). -+ This must come before because may include -+ , and once has been included, it's too late. */ -+#ifndef _GNU_SOURCE -+# define _GNU_SOURCE 1 -+#endif - - #ifdef HAVE_CONFIG_H - # include - #endif - -- --#if defined HAVE_STRING_H || defined _LIBC --# ifndef _GNU_SOURCE --# define _GNU_SOURCE 1 --# endif --# include --#else --# include --# ifndef memcpy --# define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num) --# endif --#endif --#if !HAVE_STRCHR && !defined _LIBC --# ifndef strchr --# define strchr index --# endif --#endif -+#include - - #if defined _LIBC || defined HAVE_ARGZ_H - # include - #endif - #include - #include -- --#if defined STDC_HEADERS || defined _LIBC --# include --#endif -+#include - - #include "loadinfo.h" - -@@ -65,23 +53,39 @@ - /* Rename the non ANSI C functions. This is required by the standard - because some ANSI C functions will require linking with this object - file and the name space must not be polluted. */ --# define stpcpy(dest, src) __stpcpy(dest, src) -+# ifndef stpcpy -+# define stpcpy(dest, src) __stpcpy(dest, src) -+# endif - #else - # ifndef HAVE_STPCPY --static char *stpcpy PARAMS ((char *dest, const char *src)); -+static char *stpcpy (char *dest, const char *src); - # endif - #endif - -+/* Pathname support. -+ ISSLASH(C) tests whether C is a directory separator character. -+ IS_ABSOLUTE_PATH(P) tests whether P is an absolute path. If it is not, -+ it may be concatenated to a directory pathname. -+ */ -+#if defined _WIN32 || defined __WIN32__ || defined __EMX__ || defined __DJGPP__ -+ /* Win32, OS/2, DOS */ -+# define ISSLASH(C) ((C) == '/' || (C) == '\\') -+# define HAS_DEVICE(P) \ -+ ((((P)[0] >= 'A' && (P)[0] <= 'Z') || ((P)[0] >= 'a' && (P)[0] <= 'z')) \ -+ && (P)[1] == ':') -+# define IS_ABSOLUTE_PATH(P) (ISSLASH ((P)[0]) || HAS_DEVICE (P)) -+#else -+ /* Unix */ -+# define ISSLASH(C) ((C) == '/') -+# define IS_ABSOLUTE_PATH(P) ISSLASH ((P)[0]) -+#endif -+ - /* Define function which are usually not available. */ - - #if !defined _LIBC && !defined HAVE___ARGZ_COUNT - /* Returns the number of strings in ARGZ. */ --static size_t argz_count__ PARAMS ((const char *argz, size_t len)); -- - static size_t --argz_count__ (argz, len) -- const char *argz; -- size_t len; -+argz_count__ (const char *argz, size_t len) - { - size_t count = 0; - while (len > 0) -@@ -95,18 +99,17 @@ - } - # undef __argz_count - # define __argz_count(argz, len) argz_count__ (argz, len) -+#else -+# ifdef _LIBC -+# define __argz_count(argz, len) INTUSE(__argz_count) (argz, len) -+# endif - #endif /* !_LIBC && !HAVE___ARGZ_COUNT */ - - #if !defined _LIBC && !defined HAVE___ARGZ_STRINGIFY - /* Make '\0' separated arg vector ARGZ printable by converting all the '\0's - except the last into the character SEP. */ --static void argz_stringify__ PARAMS ((char *argz, size_t len, int sep)); -- - static void --argz_stringify__ (argz, len, sep) -- char *argz; -- size_t len; -- int sep; -+argz_stringify__ (char *argz, size_t len, int sep) - { - while (len > 0) - { -@@ -119,17 +122,16 @@ - } - # undef __argz_stringify - # define __argz_stringify(argz, len, sep) argz_stringify__ (argz, len, sep) -+#else -+# ifdef _LIBC -+# define __argz_stringify(argz, len, sep) \ -+ INTUSE(__argz_stringify) (argz, len, sep) -+# endif - #endif /* !_LIBC && !HAVE___ARGZ_STRINGIFY */ - - #if !defined _LIBC && !defined HAVE___ARGZ_NEXT --static char *argz_next__ PARAMS ((char *argz, size_t argz_len, -- const char *entry)); -- - static char * --argz_next__ (argz, argz_len, entry) -- char *argz; -- size_t argz_len; -- const char *entry; -+argz_next__ (char *argz, size_t argz_len, const char *entry) - { - if (entry) - { -@@ -150,11 +152,8 @@ - - - /* Return number of bits set in X. */ --static int pop PARAMS ((int x)); -- - static inline int --pop (x) -- int x; -+pop (int x) - { - /* We assume that no more than 16 bits are used. */ - x = ((x & ~0x5555) >> 1) + (x & 0x5555); -@@ -167,31 +166,27 @@ - - - struct loaded_l10nfile * --_nl_make_l10nflist (l10nfile_list, dirlist, dirlist_len, mask, language, -- territory, codeset, normalized_codeset, modifier, special, -- sponsor, revision, filename, do_allocate) -- struct loaded_l10nfile **l10nfile_list; -- const char *dirlist; -- size_t dirlist_len; -- int mask; -- const char *language; -- const char *territory; -- const char *codeset; -- const char *normalized_codeset; -- const char *modifier; -- const char *special; -- const char *sponsor; -- const char *revision; -- const char *filename; -- int do_allocate; -+_nl_make_l10nflist (struct loaded_l10nfile **l10nfile_list, -+ const char *dirlist, size_t dirlist_len, -+ int mask, const char *language, const char *territory, -+ const char *codeset, const char *normalized_codeset, -+ const char *modifier, const char *special, -+ const char *sponsor, const char *revision, -+ const char *filename, int do_allocate) - { - char *abs_filename; -- struct loaded_l10nfile *last = NULL; -+ struct loaded_l10nfile **lastp; - struct loaded_l10nfile *retval; - char *cp; -+ size_t dirlist_count; - size_t entries; - int cnt; - -+ /* If LANGUAGE contains an absolute directory specification, we ignore -+ DIRLIST. */ -+ if (IS_ABSOLUTE_PATH (language)) -+ dirlist_len = 0; -+ - /* Allocate room for the full file name. */ - abs_filename = (char *) malloc (dirlist_len - + strlen (language) -@@ -209,7 +204,7 @@ - + (((mask & CEN_SPONSOR) != 0 - || (mask & CEN_REVISION) != 0) - ? (1 + ((mask & CEN_SPONSOR) != 0 -- ? strlen (sponsor) + 1 : 0) -+ ? strlen (sponsor) : 0) - + ((mask & CEN_REVISION) != 0 - ? strlen (revision) + 1 : 0)) : 0) - + 1 + strlen (filename) + 1); -@@ -217,14 +212,16 @@ - if (abs_filename == NULL) - return NULL; - -- retval = NULL; -- last = NULL; -- - /* Construct file name. */ -- memcpy (abs_filename, dirlist, dirlist_len); -- __argz_stringify (abs_filename, dirlist_len, ':'); -- cp = abs_filename + (dirlist_len - 1); -- *cp++ = '/'; -+ cp = abs_filename; -+ if (dirlist_len > 0) -+ { -+ memcpy (cp, dirlist, dirlist_len); -+ __argz_stringify (cp, dirlist_len, PATH_SEPARATOR); -+ cp += dirlist_len; -+ cp[-1] = '/'; -+ } -+ - cp = stpcpy (cp, language); - - if ((mask & TERRITORY) != 0) -@@ -271,7 +268,7 @@ - - /* Look in list of already loaded domains whether it is already - available. */ -- last = NULL; -+ lastp = l10nfile_list; - for (retval = *l10nfile_list; retval != NULL; retval = retval->next) - if (retval->filename != NULL) - { -@@ -286,7 +283,7 @@ - break; - } - -- last = retval; -+ lastp = &retval->next; - } - - if (retval != NULL || do_allocate == 0) -@@ -295,48 +292,66 @@ - return retval; - } - -- retval = (struct loaded_l10nfile *) -- malloc (sizeof (*retval) + (__argz_count (dirlist, dirlist_len) -- * (1 << pop (mask)) -- * sizeof (struct loaded_l10nfile *))); -+ dirlist_count = (dirlist_len > 0 ? __argz_count (dirlist, dirlist_len) : 1); -+ -+ /* Allocate a new loaded_l10nfile. */ -+ retval = -+ (struct loaded_l10nfile *) -+ malloc (sizeof (*retval) -+ + (((dirlist_count << pop (mask)) + (dirlist_count > 1 ? 1 : 0)) -+ * sizeof (struct loaded_l10nfile *))); - if (retval == NULL) - return NULL; - - retval->filename = abs_filename; -- retval->decided = (__argz_count (dirlist, dirlist_len) != 1 -+ -+ /* We set retval->data to NULL here; it is filled in later. -+ Setting retval->decided to 1 here means that retval does not -+ correspond to a real file (dirlist_count > 1) or is not worth -+ looking up (if an unnormalized codeset was specified). */ -+ retval->decided = (dirlist_count > 1 - || ((mask & XPG_CODESET) != 0 - && (mask & XPG_NORM_CODESET) != 0)); - retval->data = NULL; - -- if (last == NULL) -- { -- retval->next = *l10nfile_list; -- *l10nfile_list = retval; -- } -- else -- { -- retval->next = last->next; -- last->next = retval; -- } -+ retval->next = *lastp; -+ *lastp = retval; - - entries = 0; -- /* If the DIRLIST is a real list the RETVAL entry corresponds not to -- a real file. So we have to use the DIRLIST separation mechanism -- of the inner loop. */ -- cnt = __argz_count (dirlist, dirlist_len) == 1 ? mask - 1 : mask; -- for (; cnt >= 0; --cnt) -+ /* Recurse to fill the inheritance list of RETVAL. -+ If the DIRLIST is a real list (i.e. DIRLIST_COUNT > 1), the RETVAL -+ entry does not correspond to a real file; retval->filename contains -+ colons. In this case we loop across all elements of DIRLIST and -+ across all bit patterns dominated by MASK. -+ If the DIRLIST is a single directory or entirely redundant (i.e. -+ DIRLIST_COUNT == 1), we loop across all bit patterns dominated by -+ MASK, excluding MASK itself. -+ In either case, we loop down from MASK to 0. This has the effect -+ that the extra bits in the locale name are dropped in this order: -+ first the modifier, then the territory, then the codeset, then the -+ normalized_codeset. */ -+ for (cnt = dirlist_count > 1 ? mask : mask - 1; cnt >= 0; --cnt) - if ((cnt & ~mask) == 0 - && ((cnt & CEN_SPECIFIC) == 0 || (cnt & XPG_SPECIFIC) == 0) - && ((cnt & XPG_CODESET) == 0 || (cnt & XPG_NORM_CODESET) == 0)) - { -- /* Iterate over all elements of the DIRLIST. */ -- char *dir = NULL; -+ if (dirlist_count > 1) -+ { -+ /* Iterate over all elements of the DIRLIST. */ -+ char *dir = NULL; - -- while ((dir = __argz_next ((char *) dirlist, dirlist_len, dir)) -- != NULL) -+ while ((dir = __argz_next ((char *) dirlist, dirlist_len, dir)) -+ != NULL) -+ retval->successor[entries++] -+ = _nl_make_l10nflist (l10nfile_list, dir, strlen (dir) + 1, -+ cnt, language, territory, codeset, -+ normalized_codeset, modifier, special, -+ sponsor, revision, filename, 1); -+ } -+ else - retval->successor[entries++] -- = _nl_make_l10nflist (l10nfile_list, dir, strlen (dir) + 1, cnt, -- language, territory, codeset, -+ = _nl_make_l10nflist (l10nfile_list, dirlist, dirlist_len, -+ cnt, language, territory, codeset, - normalized_codeset, modifier, special, - sponsor, revision, filename, 1); - } -@@ -347,11 +362,10 @@ - - /* Normalize codeset name. There is no standard for the codeset - names. Normalization allows the user to use any of the common -- names. */ -+ names. The return value is dynamically allocated and has to be -+ freed by the caller. */ - const char * --_nl_normalize_codeset (codeset, name_len) -- const char *codeset; -- size_t name_len; -+_nl_normalize_codeset (const char *codeset, size_t name_len) - { - int len = 0; - int only_digit = 1; -@@ -360,11 +374,11 @@ - size_t cnt; - - for (cnt = 0; cnt < name_len; ++cnt) -- if (isalnum (codeset[cnt])) -+ if (isalnum ((unsigned char) codeset[cnt])) - { - ++len; - -- if (isalpha (codeset[cnt])) -+ if (isalpha ((unsigned char) codeset[cnt])) - only_digit = 0; - } - -@@ -378,9 +392,9 @@ - wp = retval; - - for (cnt = 0; cnt < name_len; ++cnt) -- if (isalpha (codeset[cnt])) -- *wp++ = tolower (codeset[cnt]); -- else if (isdigit (codeset[cnt])) -+ if (isalpha ((unsigned char) codeset[cnt])) -+ *wp++ = tolower ((unsigned char) codeset[cnt]); -+ else if (isdigit ((unsigned char) codeset[cnt])) - *wp++ = codeset[cnt]; - - *wp = '\0'; -@@ -398,9 +412,7 @@ - to be defined. */ - #if !_LIBC && !HAVE_STPCPY - static char * --stpcpy (dest, src) -- char *dest; -- const char *src; -+stpcpy (char *dest, const char *src) - { - while ((*dest++ = *src++) != '\0') - /* Do nothing. */ ; ---- lrzsz-0.12.20.safe/intl/libgettext.h 1998-04-26 09:22:36.000000000 -0400 -+++ lrzsz-0.12.20/intl/libgettext.h 1969-12-31 19:00:00.000000000 -0500 -@@ -1,182 +0,0 @@ --/* Message catalogs for internationalization. -- Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. -- -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation; either version 2, or (at your option) -- any later version. -- -- This program is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -- -- You should have received a copy of the GNU General Public License -- along with this program; if not, write to the Free Software Foundation, -- Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -- --/* Because on some systems (e.g. Solaris) we sometimes have to include -- the systems libintl.h as well as this file we have more complex -- include protection above. But the systems header might perhaps also -- define _LIBINTL_H and therefore we have to protect the definition here. */ -- --#if !defined (_LIBINTL_H) || !defined (_LIBGETTEXT_H) --#if !defined (_LIBINTL_H) --# define _LIBINTL_H 1 --#endif --#define _LIBGETTEXT_H 1 -- --/* We define an additional symbol to signal that we use the GNU -- implementation of gettext. */ --#define __USE_GNU_GETTEXT 1 -- --#include -- --#if HAVE_LOCALE_H --# include --#endif -- -- --#ifdef __cplusplus --extern "C" { --#endif -- --/* @@ end of prolog @@ */ -- --#ifndef PARAMS --# if __STDC__ --# define PARAMS(args) args --# else --# define PARAMS(args) () --# endif --#endif -- --#ifndef NULL --# if !defined __cplusplus || defined __GNUC__ --# define NULL ((void *) 0) --# else --# define NULL (0) --# endif --#endif -- --#if !HAVE_LC_MESSAGES --/* This value determines the behaviour of the gettext() and dgettext() -- function. But some system does not have this defined. Define it -- to a default value. */ --# define LC_MESSAGES (-1) --#endif -- -- --/* Declarations for gettext-using-catgets interface. Derived from -- Jim Meyering's libintl.h. */ --struct _msg_ent --{ -- const char *_msg; -- int _msg_number; --}; -- -- --#if HAVE_CATGETS --/* These two variables are defined in the automatically by po-to-tbl.sed -- generated file `cat-id-tbl.c'. */ --extern const struct _msg_ent _msg_tbl[]; --extern int _msg_tbl_length; --#endif -- -- --/* For automatical extraction of messages sometimes no real -- translation is needed. Instead the string itself is the result. */ --#define gettext_noop(Str) (Str) -- --/* Look up MSGID in the current default message catalog for the current -- LC_MESSAGES locale. If not found, returns MSGID itself (the default -- text). */ --extern char *gettext PARAMS ((const char *__msgid)); --extern char *gettext__ PARAMS ((const char *__msgid)); -- --/* Look up MSGID in the DOMAINNAME message catalog for the current -- LC_MESSAGES locale. */ --extern char *dgettext PARAMS ((const char *__domainname, const char *__msgid)); --extern char *dgettext__ PARAMS ((const char *__domainname, -- const char *__msgid)); -- --/* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY -- locale. */ --extern char *dcgettext PARAMS ((const char *__domainname, const char *__msgid, -- int __category)); --extern char *dcgettext__ PARAMS ((const char *__domainname, -- const char *__msgid, int __category)); -- -- --/* Set the current default message catalog to DOMAINNAME. -- If DOMAINNAME is null, return the current default. -- If DOMAINNAME is "", reset to the default of "messages". */ --extern char *textdomain PARAMS ((const char *__domainname)); --extern char *textdomain__ PARAMS ((const char *__domainname)); -- --/* Specify that the DOMAINNAME message catalog will be found -- in DIRNAME rather than in the system locale data base. */ --extern char *bindtextdomain PARAMS ((const char *__domainname, -- const char *__dirname)); --extern char *bindtextdomain__ PARAMS ((const char *__domainname, -- const char *__dirname)); -- --#if ENABLE_NLS -- --/* Solaris 2.3 has the gettext function but dcgettext is missing. -- So we omit this optimization for Solaris 2.3. BTW, Solaris 2.4 -- has dcgettext. */ --# if !HAVE_CATGETS && (!HAVE_GETTEXT || HAVE_DCGETTEXT) -- --# define gettext(Msgid) \ -- dgettext (NULL, Msgid) -- --# define dgettext(Domainname, Msgid) \ -- dcgettext (Domainname, Msgid, LC_MESSAGES) -- --# if defined __GNUC__ && __GNUC__ == 2 && __GNUC_MINOR__ >= 7 --/* This global variable is defined in loadmsgcat.c. We need a sign, -- whether a new catalog was loaded, which can be associated with all -- translations. */ --extern int _nl_msg_cat_cntr; -- --# define dcgettext(Domainname, Msgid, Category) \ -- (__extension__ \ -- ({ \ -- char *__result; \ -- if (__builtin_constant_p (Msgid)) \ -- { \ -- static char *__translation__; \ -- static int __catalog_counter__; \ -- if (! __translation__ || __catalog_counter__ != _nl_msg_cat_cntr) \ -- { \ -- __translation__ = \ -- dcgettext__ (Domainname, Msgid, Category); \ -- __catalog_counter__ = _nl_msg_cat_cntr; \ -- } \ -- __result = __translation__; \ -- } \ -- else \ -- __result = dcgettext__ (Domainname, Msgid, Category); \ -- __result; \ -- })) --# endif --# endif -- --#else -- --# define gettext(Msgid) (Msgid) --# define dgettext(Domainname, Msgid) (Msgid) --# define dcgettext(Domainname, Msgid, Category) (Msgid) --# define textdomain(Domainname) while (0) /* nothing */ --# define bindtextdomain(Domainname, Dirname) while (0) /* nothing */ -- --#endif -- --/* @@ begin of epilog @@ */ -- --#ifdef __cplusplus --} --#endif -- --#endif ---- lrzsz-0.12.20.safe/intl/libgnuintl.h.in 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/libgnuintl.h.in 2004-09-12 14:40:34.462731824 -0400 -@@ -0,0 +1,383 @@ -+/* Message catalogs for internationalization. -+ Copyright (C) 1995-1997, 2000-2003 Free Software Foundation, Inc. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+#ifndef _LIBINTL_H -+#define _LIBINTL_H 1 -+ -+#include -+ -+/* The LC_MESSAGES locale category is the category used by the functions -+ gettext() and dgettext(). It is specified in POSIX, but not in ANSI C. -+ On systems that don't define it, use an arbitrary value instead. -+ On Solaris, defines __LOCALE_H (or _LOCALE_H in Solaris 2.5) -+ then includes (i.e. this file!) and then only defines -+ LC_MESSAGES. To avoid a redefinition warning, don't define LC_MESSAGES -+ in this case. */ -+#if !defined LC_MESSAGES && !(defined __LOCALE_H || (defined _LOCALE_H && defined __sun)) -+# define LC_MESSAGES 1729 -+#endif -+ -+/* We define an additional symbol to signal that we use the GNU -+ implementation of gettext. */ -+#define __USE_GNU_GETTEXT 1 -+ -+/* Provide information about the supported file formats. Returns the -+ maximum minor revision number supported for a given major revision. */ -+#define __GNU_GETTEXT_SUPPORTED_REVISION(major) \ -+ ((major) == 0 ? 1 : -1) -+ -+/* Resolve a platform specific conflict on DJGPP. GNU gettext takes -+ precedence over _conio_gettext. */ -+#ifdef __DJGPP__ -+# undef gettext -+#endif -+ -+#ifdef __cplusplus -+extern "C" { -+#endif -+ -+ -+/* We redirect the functions to those prefixed with "libintl_". This is -+ necessary, because some systems define gettext/textdomain/... in the C -+ library (namely, Solaris 2.4 and newer, and GNU libc 2.0 and newer). -+ If we used the unprefixed names, there would be cases where the -+ definition in the C library would override the one in the libintl.so -+ shared library. Recall that on ELF systems, the symbols are looked -+ up in the following order: -+ 1. in the executable, -+ 2. in the shared libraries specified on the link command line, in order, -+ 3. in the dependencies of the shared libraries specified on the link -+ command line, -+ 4. in the dlopen()ed shared libraries, in the order in which they were -+ dlopen()ed. -+ The definition in the C library would override the one in libintl.so if -+ either -+ * -lc is given on the link command line and -lintl isn't, or -+ * -lc is given on the link command line before -lintl, or -+ * libintl.so is a dependency of a dlopen()ed shared library but not -+ linked to the executable at link time. -+ Since Solaris gettext() behaves differently than GNU gettext(), this -+ would be unacceptable. -+ -+ The redirection happens by default through macros in C, so that &gettext -+ is independent of the compilation unit, but through inline functions in -+ C++, in order not to interfere with the name mangling of class fields or -+ class methods called 'gettext'. */ -+ -+/* The user can define _INTL_REDIRECT_INLINE or _INTL_REDIRECT_MACROS. -+ If he doesn't, we choose the method. A third possible method is -+ _INTL_REDIRECT_ASM, supported only by GCC. */ -+#if !(defined _INTL_REDIRECT_INLINE || defined _INTL_REDIRECT_MACROS) -+# if __GNUC__ >= 2 && !defined __APPLE_CC__ && !defined __MINGW32__ && !(__GNUC__ == 2 && defined _AIX) && (defined __STDC__ || defined __cplusplus) -+# define _INTL_REDIRECT_ASM -+# else -+# ifdef __cplusplus -+# define _INTL_REDIRECT_INLINE -+# else -+# define _INTL_REDIRECT_MACROS -+# endif -+# endif -+#endif -+/* Auxiliary macros. */ -+#ifdef _INTL_REDIRECT_ASM -+# define _INTL_ASM(cname) __asm__ (_INTL_ASMNAME (__USER_LABEL_PREFIX__, #cname)) -+# define _INTL_ASMNAME(prefix,cnamestring) _INTL_STRINGIFY (prefix) cnamestring -+# define _INTL_STRINGIFY(prefix) #prefix -+#else -+# define _INTL_ASM(cname) -+#endif -+ -+/* Look up MSGID in the current default message catalog for the current -+ LC_MESSAGES locale. If not found, returns MSGID itself (the default -+ text). */ -+#ifdef _INTL_REDIRECT_INLINE -+extern char *libintl_gettext (const char *__msgid); -+static inline char *gettext (const char *__msgid) -+{ -+ return libintl_gettext (__msgid); -+} -+#else -+#ifdef _INTL_REDIRECT_MACROS -+# define gettext libintl_gettext -+#endif -+extern char *gettext (const char *__msgid) -+ _INTL_ASM (libintl_gettext); -+#endif -+ -+/* Look up MSGID in the DOMAINNAME message catalog for the current -+ LC_MESSAGES locale. */ -+#ifdef _INTL_REDIRECT_INLINE -+extern char *libintl_dgettext (const char *__domainname, const char *__msgid); -+static inline char *dgettext (const char *__domainname, const char *__msgid) -+{ -+ return libintl_dgettext (__domainname, __msgid); -+} -+#else -+#ifdef _INTL_REDIRECT_MACROS -+# define dgettext libintl_dgettext -+#endif -+extern char *dgettext (const char *__domainname, const char *__msgid) -+ _INTL_ASM (libintl_dgettext); -+#endif -+ -+/* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY -+ locale. */ -+#ifdef _INTL_REDIRECT_INLINE -+extern char *libintl_dcgettext (const char *__domainname, const char *__msgid, -+ int __category); -+static inline char *dcgettext (const char *__domainname, const char *__msgid, -+ int __category) -+{ -+ return libintl_dcgettext (__domainname, __msgid, __category); -+} -+#else -+#ifdef _INTL_REDIRECT_MACROS -+# define dcgettext libintl_dcgettext -+#endif -+extern char *dcgettext (const char *__domainname, const char *__msgid, -+ int __category) -+ _INTL_ASM (libintl_dcgettext); -+#endif -+ -+ -+/* Similar to `gettext' but select the plural form corresponding to the -+ number N. */ -+#ifdef _INTL_REDIRECT_INLINE -+extern char *libintl_ngettext (const char *__msgid1, const char *__msgid2, -+ unsigned long int __n); -+static inline char *ngettext (const char *__msgid1, const char *__msgid2, -+ unsigned long int __n) -+{ -+ return libintl_ngettext (__msgid1, __msgid2, __n); -+} -+#else -+#ifdef _INTL_REDIRECT_MACROS -+# define ngettext libintl_ngettext -+#endif -+extern char *ngettext (const char *__msgid1, const char *__msgid2, -+ unsigned long int __n) -+ _INTL_ASM (libintl_ngettext); -+#endif -+ -+/* Similar to `dgettext' but select the plural form corresponding to the -+ number N. */ -+#ifdef _INTL_REDIRECT_INLINE -+extern char *libintl_dngettext (const char *__domainname, const char *__msgid1, -+ const char *__msgid2, unsigned long int __n); -+static inline char *dngettext (const char *__domainname, const char *__msgid1, -+ const char *__msgid2, unsigned long int __n) -+{ -+ return libintl_dngettext (__domainname, __msgid1, __msgid2, __n); -+} -+#else -+#ifdef _INTL_REDIRECT_MACROS -+# define dngettext libintl_dngettext -+#endif -+extern char *dngettext (const char *__domainname, -+ const char *__msgid1, const char *__msgid2, -+ unsigned long int __n) -+ _INTL_ASM (libintl_dngettext); -+#endif -+ -+/* Similar to `dcgettext' but select the plural form corresponding to the -+ number N. */ -+#ifdef _INTL_REDIRECT_INLINE -+extern char *libintl_dcngettext (const char *__domainname, -+ const char *__msgid1, const char *__msgid2, -+ unsigned long int __n, int __category); -+static inline char *dcngettext (const char *__domainname, -+ const char *__msgid1, const char *__msgid2, -+ unsigned long int __n, int __category) -+{ -+ return libintl_dcngettext (__domainname, __msgid1, __msgid2, __n, __category); -+} -+#else -+#ifdef _INTL_REDIRECT_MACROS -+# define dcngettext libintl_dcngettext -+#endif -+extern char *dcngettext (const char *__domainname, -+ const char *__msgid1, const char *__msgid2, -+ unsigned long int __n, int __category) -+ _INTL_ASM (libintl_dcngettext); -+#endif -+ -+ -+/* Set the current default message catalog to DOMAINNAME. -+ If DOMAINNAME is null, return the current default. -+ If DOMAINNAME is "", reset to the default of "messages". */ -+#ifdef _INTL_REDIRECT_INLINE -+extern char *libintl_textdomain (const char *__domainname); -+static inline char *textdomain (const char *__domainname) -+{ -+ return libintl_textdomain (__domainname); -+} -+#else -+#ifdef _INTL_REDIRECT_MACROS -+# define textdomain libintl_textdomain -+#endif -+extern char *textdomain (const char *__domainname) -+ _INTL_ASM (libintl_textdomain); -+#endif -+ -+/* Specify that the DOMAINNAME message catalog will be found -+ in DIRNAME rather than in the system locale data base. */ -+#ifdef _INTL_REDIRECT_INLINE -+extern char *libintl_bindtextdomain (const char *__domainname, -+ const char *__dirname); -+static inline char *bindtextdomain (const char *__domainname, -+ const char *__dirname) -+{ -+ return libintl_bindtextdomain (__domainname, __dirname); -+} -+#else -+#ifdef _INTL_REDIRECT_MACROS -+# define bindtextdomain libintl_bindtextdomain -+#endif -+extern char *bindtextdomain (const char *__domainname, const char *__dirname) -+ _INTL_ASM (libintl_bindtextdomain); -+#endif -+ -+/* Specify the character encoding in which the messages from the -+ DOMAINNAME message catalog will be returned. */ -+#ifdef _INTL_REDIRECT_INLINE -+extern char *libintl_bind_textdomain_codeset (const char *__domainname, -+ const char *__codeset); -+static inline char *bind_textdomain_codeset (const char *__domainname, -+ const char *__codeset) -+{ -+ return libintl_bind_textdomain_codeset (__domainname, __codeset); -+} -+#else -+#ifdef _INTL_REDIRECT_MACROS -+# define bind_textdomain_codeset libintl_bind_textdomain_codeset -+#endif -+extern char *bind_textdomain_codeset (const char *__domainname, -+ const char *__codeset) -+ _INTL_ASM (libintl_bind_textdomain_codeset); -+#endif -+ -+ -+/* Support for format strings with positions in *printf(), following the -+ POSIX/XSI specification. -+ Note: These replacements for the *printf() functions are visible only -+ in source files that #include or #include "gettext.h". -+ Packages that use *printf() in source files that don't refer to _() -+ or gettext() but for which the format string could be the return value -+ of _() or gettext() need to add this #include. Oh well. */ -+ -+#if !@HAVE_POSIX_PRINTF@ -+ -+#include -+#include -+ -+/* Get va_list. */ -+#if __STDC__ || defined __cplusplus || defined _MSC_VER -+# include -+#else -+# include -+#endif -+ -+#undef fprintf -+#define fprintf libintl_fprintf -+extern int fprintf (FILE *, const char *, ...); -+#undef vfprintf -+#define vfprintf libintl_vfprintf -+extern int vfprintf (FILE *, const char *, va_list); -+ -+#undef printf -+#define printf libintl_printf -+extern int printf (const char *, ...); -+#undef vprintf -+#define vprintf libintl_vprintf -+extern int vprintf (const char *, va_list); -+ -+#undef sprintf -+#define sprintf libintl_sprintf -+extern int sprintf (char *, const char *, ...); -+#undef vsprintf -+#define vsprintf libintl_vsprintf -+extern int vsprintf (char *, const char *, va_list); -+ -+#if @HAVE_SNPRINTF@ -+ -+#undef snprintf -+#define snprintf libintl_snprintf -+extern int snprintf (char *, size_t, const char *, ...); -+#undef vsnprintf -+#define vsnprintf libintl_vsnprintf -+extern int vsnprintf (char *, size_t, const char *, va_list); -+ -+#endif -+ -+#if @HAVE_ASPRINTF@ -+ -+#undef asprintf -+#define asprintf libintl_asprintf -+extern int asprintf (char **, const char *, ...); -+#undef vasprintf -+#define vasprintf libintl_vasprintf -+extern int vasprintf (char **, const char *, va_list); -+ -+#endif -+ -+#if @HAVE_WPRINTF@ -+ -+#undef fwprintf -+#define fwprintf libintl_fwprintf -+extern int fwprintf (FILE *, const wchar_t *, ...); -+#undef vfwprintf -+#define vfwprintf libintl_vfwprintf -+extern int vfwprintf (FILE *, const wchar_t *, va_list); -+ -+#undef wprintf -+#define wprintf libintl_wprintf -+extern int wprintf (const wchar_t *, ...); -+#undef vwprintf -+#define vwprintf libintl_vwprintf -+extern int vwprintf (const wchar_t *, va_list); -+ -+#undef swprintf -+#define swprintf libintl_swprintf -+extern int swprintf (wchar_t *, size_t, const wchar_t *, ...); -+#undef vswprintf -+#define vswprintf libintl_vswprintf -+extern int vswprintf (wchar_t *, size_t, const wchar_t *, va_list); -+ -+#endif -+ -+#endif -+ -+ -+/* Support for relocatable packages. */ -+ -+/* Sets the original and the current installation prefix of the package. -+ Relocation simply replaces a pathname starting with the original prefix -+ by the corresponding pathname with the current prefix instead. Both -+ prefixes should be directory names without trailing slash (i.e. use "" -+ instead of "/"). */ -+#define libintl_set_relocation_prefix libintl_set_relocation_prefix -+extern void -+ libintl_set_relocation_prefix (const char *orig_prefix, -+ const char *curr_prefix); -+ -+ -+#ifdef __cplusplus -+} -+#endif -+ -+#endif /* libintl.h */ ---- lrzsz-0.12.20.safe/intl/linux-msg.sed 1998-04-26 09:20:52.000000000 -0400 -+++ lrzsz-0.12.20/intl/linux-msg.sed 1969-12-31 19:00:00.000000000 -0500 -@@ -1,100 +0,0 @@ --# po2msg.sed - Convert Uniforum style .po file to Linux style .msg file --# Copyright (C) 1995 Free Software Foundation, Inc. --# Ulrich Drepper , 1995. --# --# This program is free software; you can redistribute it and/or modify --# it under the terms of the GNU General Public License as published by --# the Free Software Foundation; either version 2, or (at your option) --# any later version. --# --# This program is distributed in the hope that it will be useful, --# but WITHOUT ANY WARRANTY; without even the implied warranty of --# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the --# GNU General Public License for more details. --# --# You should have received a copy of the GNU General Public License --# along with this program; if not, write to the Free Software --# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. --# --# --# The first directive in the .msg should be the definition of the --# message set number. We use always set number 1. --# --1 { -- i\ --$set 1 # Automatically created by po2msg.sed -- h -- s/.*/0/ -- x --} --# --# Mitch's old catalog format does not allow comments. --# --# We copy the original message as a comment into the .msg file. --# --/^msgid/ { -- s/msgid[ ]*"// --# --# This does not work now with the new format. --# /"$/! { --# s/\\$// --# s/$/ ... (more lines following)"/ --# } -- x --# The following nice solution is by --# Bruno -- td --# Increment a decimal number in pattern space. --# First hide trailing `9' digits. -- :d -- s/9\(_*\)$/_\1/ -- td --# Assure at least one digit is available. -- s/^\(_*\)$/0\1/ --# Increment the last digit. -- s/8\(_*\)$/9\1/ -- s/7\(_*\)$/8\1/ -- s/6\(_*\)$/7\1/ -- s/5\(_*\)$/6\1/ -- s/4\(_*\)$/5\1/ -- s/3\(_*\)$/4\1/ -- s/2\(_*\)$/3\1/ -- s/1\(_*\)$/2\1/ -- s/0\(_*\)$/1\1/ --# Convert the hidden `9' digits to `0's. -- s/_/0/g -- x -- G -- s/\(.*\)"\n\([0-9]*\)/$ #\2 Original Message:(\1)/p --} --# --# The .msg file contains, other then the .po file, only the translations --# but each given a unique ID. Starting from 1 and incrementing by 1 for --# each message we assign them to the messages. --# It is important that the .po file used to generate the cat-id-tbl.c file --# (with po-to-tbl) is the same as the one used here. (At least the order --# of declarations must not be changed.) --# --/^msgstr/ { -- s/msgstr[ ]*"\(.*\)"/# \1/ --# Clear substitution flag. -- tb --# Append the next line. -- :b -- N --# Look whether second part is continuation line. -- s/\(.*\n\)"\(.*\)"/\1\2/ --# Yes, then branch. -- ta -- P -- D --# Note that D includes a jump to the start!! --# We found a continuation line. But before printing insert '\'. -- :a -- s/\(.*\)\(\n.*\)/\1\\\2/ -- P --# We cannot use D here. -- s/.*\n\(.*\)/\1/ -- tb --} --d ---- lrzsz-0.12.20.safe/intl/loadinfo.h 1998-04-26 09:20:52.000000000 -0400 -+++ lrzsz-0.12.20/intl/loadinfo.h 2004-09-12 14:40:34.468730912 -0400 -@@ -1,9 +1,54 @@ --#ifndef PARAMS --# if __STDC__ --# define PARAMS(args) args --# else --# define PARAMS(args) () --# endif -+/* Copyright (C) 1996-1999, 2000-2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ Contributed by Ulrich Drepper , 1996. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+#ifndef _LOADINFO_H -+#define _LOADINFO_H 1 -+ -+/* Declarations of locale dependent catalog lookup functions. -+ Implemented in -+ -+ localealias.c Possibly replace a locale name by another. -+ explodename.c Split a locale name into its various fields. -+ l10nflist.c Generate a list of filenames of possible message catalogs. -+ finddomain.c Find and open the relevant message catalogs. -+ -+ The main function _nl_find_domain() in finddomain.c is declared -+ in gettextP.h. -+ */ -+ -+#ifndef internal_function -+# define internal_function -+#endif -+ -+/* Tell the compiler when a conditional or integer expression is -+ almost always true or almost always false. */ -+#ifndef HAVE_BUILTIN_EXPECT -+# define __builtin_expect(expr, val) (expr) -+#endif -+ -+/* Separator in PATH like lists of pathnames. */ -+#if defined _WIN32 || defined __WIN32__ || defined __EMX__ || defined __DJGPP__ -+ /* Win32, OS/2, DOS */ -+# define PATH_SEPARATOR ';' -+#else -+ /* Unix */ -+# define PATH_SEPARATOR ':' - #endif - - /* Encoding of locale name parts. */ -@@ -32,27 +77,69 @@ - }; - - --extern const char *_nl_normalize_codeset PARAMS ((const char *codeset, -- size_t name_len)); -+/* Normalize codeset name. There is no standard for the codeset -+ names. Normalization allows the user to use any of the common -+ names. The return value is dynamically allocated and has to be -+ freed by the caller. */ -+extern const char *_nl_normalize_codeset (const char *codeset, -+ size_t name_len); - -+/* Lookup a locale dependent file. -+ *L10NFILE_LIST denotes a pool of lookup results of locale dependent -+ files of the same kind, sorted in decreasing order of ->filename. -+ DIRLIST and DIRLIST_LEN are an argz list of directories in which to -+ look, containing at least one directory (i.e. DIRLIST_LEN > 0). -+ MASK, LANGUAGE, TERRITORY, CODESET, NORMALIZED_CODESET, MODIFIER, -+ SPECIAL, SPONSOR, REVISION are the pieces of the locale name, as -+ produced by _nl_explode_name(). FILENAME is the filename suffix. -+ The return value is the lookup result, either found in *L10NFILE_LIST, -+ or - if DO_ALLOCATE is nonzero - freshly allocated, or possibly NULL. -+ If the return value is non-NULL, it is added to *L10NFILE_LIST, and -+ its ->next field denotes the chaining inside *L10NFILE_LIST, and -+ furthermore its ->successor[] field contains a list of other lookup -+ results from which this lookup result inherits. */ - extern struct loaded_l10nfile * --_nl_make_l10nflist PARAMS ((struct loaded_l10nfile **l10nfile_list, -- const char *dirlist, size_t dirlist_len, int mask, -- const char *language, const char *territory, -- const char *codeset, -- const char *normalized_codeset, -- const char *modifier, const char *special, -- const char *sponsor, const char *revision, -- const char *filename, int do_allocate)); -+_nl_make_l10nflist (struct loaded_l10nfile **l10nfile_list, -+ const char *dirlist, size_t dirlist_len, int mask, -+ const char *language, const char *territory, -+ const char *codeset, const char *normalized_codeset, -+ const char *modifier, const char *special, -+ const char *sponsor, const char *revision, -+ const char *filename, int do_allocate); - -+/* Lookup the real locale name for a locale alias NAME, or NULL if -+ NAME is not a locale alias (but possibly a real locale name). -+ The return value is statically allocated and must not be freed. */ -+extern const char *_nl_expand_alias (const char *name); - --extern const char *_nl_expand_alias PARAMS ((const char *name)); -+/* Split a locale name NAME into its pieces: language, modifier, -+ territory, codeset, special, sponsor, revision. -+ NAME gets destructively modified: NUL bytes are inserted here and -+ there. *LANGUAGE gets assigned NAME. Each of *MODIFIER, *TERRITORY, -+ *CODESET, *SPECIAL, *SPONSOR, *REVISION gets assigned either a -+ pointer into the old NAME string, or NULL. *NORMALIZED_CODESET -+ gets assigned the expanded *CODESET, if it is different from *CODESET; -+ this one is dynamically allocated and has to be freed by the caller. -+ The return value is a bitmask, where each bit corresponds to one -+ filled-in value: -+ XPG_MODIFIER, CEN_AUDIENCE for *MODIFIER, -+ TERRITORY for *TERRITORY, -+ XPG_CODESET for *CODESET, -+ XPG_NORM_CODESET for *NORMALIZED_CODESET, -+ CEN_SPECIAL for *SPECIAL, -+ CEN_SPONSOR for *SPONSOR, -+ CEN_REVISION for *REVISION. -+ */ -+extern int _nl_explode_name (char *name, const char **language, -+ const char **modifier, const char **territory, -+ const char **codeset, -+ const char **normalized_codeset, -+ const char **special, const char **sponsor, -+ const char **revision); - --extern int _nl_explode_name PARAMS ((char *name, const char **language, -- const char **modifier, -- const char **territory, -- const char **codeset, -- const char **normalized_codeset, -- const char **special, -- const char **sponsor, -- const char **revision)); -+/* Split a locale name NAME into a leading language part and all the -+ rest. Return a pointer to the first character after the language, -+ i.e. to the first byte of the rest. */ -+extern char *_nl_find_language (const char *name); -+ -+#endif /* loadinfo.h */ ---- lrzsz-0.12.20.safe/intl/loadmsgcat.c 1998-04-26 09:22:37.000000000 -0400 -+++ lrzsz-0.12.20/intl/loadmsgcat.c 2004-09-12 14:40:34.473730152 -0400 -@@ -1,42 +1,455 @@ --/* Load needed message catalogs -- Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. -+/* Load needed message catalogs. -+ Copyright (C) 1995-1999, 2000-2004 Free Software Foundation, Inc. - -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation; either version 2, or (at your option) -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. - -- You should have received a copy of the GNU General Public License -- along with this program; if not, write to the Free Software Foundation, -- Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+/* Tell glibc's to provide a prototype for mempcpy(). -+ This must come before because may include -+ , and once has been included, it's too late. */ -+#ifndef _GNU_SOURCE -+# define _GNU_SOURCE 1 -+#endif - - #ifdef HAVE_CONFIG_H - # include - #endif - -+#include -+#include - #include - #include - #include - --#if defined STDC_HEADERS || defined _LIBC --# include -+#ifdef __GNUC__ -+# undef alloca -+# define alloca __builtin_alloca -+# define HAVE_ALLOCA 1 -+#else -+# ifdef _MSC_VER -+# include -+# define alloca _alloca -+# else -+# if defined HAVE_ALLOCA_H || defined _LIBC -+# include -+# else -+# ifdef _AIX -+ #pragma alloca -+# else -+# ifndef alloca -+char *alloca (); -+# endif -+# endif -+# endif -+# endif - #endif - -+#include -+#include -+ - #if defined HAVE_UNISTD_H || defined _LIBC - # include - #endif - --#if (defined HAVE_MMAP && defined HAVE_MUNMAP) || defined _LIBC -+#ifdef _LIBC -+# include -+# include -+#endif -+ -+#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \ -+ || (defined _LIBC && defined _POSIX_MAPPED_FILES) - # include -+# undef HAVE_MMAP -+# define HAVE_MMAP 1 -+#else -+# undef HAVE_MMAP - #endif - --#include "gettext.h" -+#if defined HAVE_STDINT_H_WITH_UINTMAX || defined _LIBC -+# include -+#endif -+#if defined HAVE_INTTYPES_H || defined _LIBC -+# include -+#endif -+ -+#include "gmo.h" - #include "gettextP.h" -+#include "hash-string.h" -+#include "plural-exp.h" -+ -+#ifdef _LIBC -+# include "../locale/localeinfo.h" -+#endif -+ -+/* Provide fallback values for macros that ought to be defined in . -+ Note that our fallback values need not be literal strings, because we don't -+ use them with preprocessor string concatenation. */ -+#if !defined PRId8 || PRI_MACROS_BROKEN -+# undef PRId8 -+# define PRId8 "d" -+#endif -+#if !defined PRIi8 || PRI_MACROS_BROKEN -+# undef PRIi8 -+# define PRIi8 "i" -+#endif -+#if !defined PRIo8 || PRI_MACROS_BROKEN -+# undef PRIo8 -+# define PRIo8 "o" -+#endif -+#if !defined PRIu8 || PRI_MACROS_BROKEN -+# undef PRIu8 -+# define PRIu8 "u" -+#endif -+#if !defined PRIx8 || PRI_MACROS_BROKEN -+# undef PRIx8 -+# define PRIx8 "x" -+#endif -+#if !defined PRIX8 || PRI_MACROS_BROKEN -+# undef PRIX8 -+# define PRIX8 "X" -+#endif -+#if !defined PRId16 || PRI_MACROS_BROKEN -+# undef PRId16 -+# define PRId16 "d" -+#endif -+#if !defined PRIi16 || PRI_MACROS_BROKEN -+# undef PRIi16 -+# define PRIi16 "i" -+#endif -+#if !defined PRIo16 || PRI_MACROS_BROKEN -+# undef PRIo16 -+# define PRIo16 "o" -+#endif -+#if !defined PRIu16 || PRI_MACROS_BROKEN -+# undef PRIu16 -+# define PRIu16 "u" -+#endif -+#if !defined PRIx16 || PRI_MACROS_BROKEN -+# undef PRIx16 -+# define PRIx16 "x" -+#endif -+#if !defined PRIX16 || PRI_MACROS_BROKEN -+# undef PRIX16 -+# define PRIX16 "X" -+#endif -+#if !defined PRId32 || PRI_MACROS_BROKEN -+# undef PRId32 -+# define PRId32 "d" -+#endif -+#if !defined PRIi32 || PRI_MACROS_BROKEN -+# undef PRIi32 -+# define PRIi32 "i" -+#endif -+#if !defined PRIo32 || PRI_MACROS_BROKEN -+# undef PRIo32 -+# define PRIo32 "o" -+#endif -+#if !defined PRIu32 || PRI_MACROS_BROKEN -+# undef PRIu32 -+# define PRIu32 "u" -+#endif -+#if !defined PRIx32 || PRI_MACROS_BROKEN -+# undef PRIx32 -+# define PRIx32 "x" -+#endif -+#if !defined PRIX32 || PRI_MACROS_BROKEN -+# undef PRIX32 -+# define PRIX32 "X" -+#endif -+#if !defined PRId64 || PRI_MACROS_BROKEN -+# undef PRId64 -+# define PRId64 (sizeof (long) == 8 ? "ld" : "lld") -+#endif -+#if !defined PRIi64 || PRI_MACROS_BROKEN -+# undef PRIi64 -+# define PRIi64 (sizeof (long) == 8 ? "li" : "lli") -+#endif -+#if !defined PRIo64 || PRI_MACROS_BROKEN -+# undef PRIo64 -+# define PRIo64 (sizeof (long) == 8 ? "lo" : "llo") -+#endif -+#if !defined PRIu64 || PRI_MACROS_BROKEN -+# undef PRIu64 -+# define PRIu64 (sizeof (long) == 8 ? "lu" : "llu") -+#endif -+#if !defined PRIx64 || PRI_MACROS_BROKEN -+# undef PRIx64 -+# define PRIx64 (sizeof (long) == 8 ? "lx" : "llx") -+#endif -+#if !defined PRIX64 || PRI_MACROS_BROKEN -+# undef PRIX64 -+# define PRIX64 (sizeof (long) == 8 ? "lX" : "llX") -+#endif -+#if !defined PRIdLEAST8 || PRI_MACROS_BROKEN -+# undef PRIdLEAST8 -+# define PRIdLEAST8 "d" -+#endif -+#if !defined PRIiLEAST8 || PRI_MACROS_BROKEN -+# undef PRIiLEAST8 -+# define PRIiLEAST8 "i" -+#endif -+#if !defined PRIoLEAST8 || PRI_MACROS_BROKEN -+# undef PRIoLEAST8 -+# define PRIoLEAST8 "o" -+#endif -+#if !defined PRIuLEAST8 || PRI_MACROS_BROKEN -+# undef PRIuLEAST8 -+# define PRIuLEAST8 "u" -+#endif -+#if !defined PRIxLEAST8 || PRI_MACROS_BROKEN -+# undef PRIxLEAST8 -+# define PRIxLEAST8 "x" -+#endif -+#if !defined PRIXLEAST8 || PRI_MACROS_BROKEN -+# undef PRIXLEAST8 -+# define PRIXLEAST8 "X" -+#endif -+#if !defined PRIdLEAST16 || PRI_MACROS_BROKEN -+# undef PRIdLEAST16 -+# define PRIdLEAST16 "d" -+#endif -+#if !defined PRIiLEAST16 || PRI_MACROS_BROKEN -+# undef PRIiLEAST16 -+# define PRIiLEAST16 "i" -+#endif -+#if !defined PRIoLEAST16 || PRI_MACROS_BROKEN -+# undef PRIoLEAST16 -+# define PRIoLEAST16 "o" -+#endif -+#if !defined PRIuLEAST16 || PRI_MACROS_BROKEN -+# undef PRIuLEAST16 -+# define PRIuLEAST16 "u" -+#endif -+#if !defined PRIxLEAST16 || PRI_MACROS_BROKEN -+# undef PRIxLEAST16 -+# define PRIxLEAST16 "x" -+#endif -+#if !defined PRIXLEAST16 || PRI_MACROS_BROKEN -+# undef PRIXLEAST16 -+# define PRIXLEAST16 "X" -+#endif -+#if !defined PRIdLEAST32 || PRI_MACROS_BROKEN -+# undef PRIdLEAST32 -+# define PRIdLEAST32 "d" -+#endif -+#if !defined PRIiLEAST32 || PRI_MACROS_BROKEN -+# undef PRIiLEAST32 -+# define PRIiLEAST32 "i" -+#endif -+#if !defined PRIoLEAST32 || PRI_MACROS_BROKEN -+# undef PRIoLEAST32 -+# define PRIoLEAST32 "o" -+#endif -+#if !defined PRIuLEAST32 || PRI_MACROS_BROKEN -+# undef PRIuLEAST32 -+# define PRIuLEAST32 "u" -+#endif -+#if !defined PRIxLEAST32 || PRI_MACROS_BROKEN -+# undef PRIxLEAST32 -+# define PRIxLEAST32 "x" -+#endif -+#if !defined PRIXLEAST32 || PRI_MACROS_BROKEN -+# undef PRIXLEAST32 -+# define PRIXLEAST32 "X" -+#endif -+#if !defined PRIdLEAST64 || PRI_MACROS_BROKEN -+# undef PRIdLEAST64 -+# define PRIdLEAST64 PRId64 -+#endif -+#if !defined PRIiLEAST64 || PRI_MACROS_BROKEN -+# undef PRIiLEAST64 -+# define PRIiLEAST64 PRIi64 -+#endif -+#if !defined PRIoLEAST64 || PRI_MACROS_BROKEN -+# undef PRIoLEAST64 -+# define PRIoLEAST64 PRIo64 -+#endif -+#if !defined PRIuLEAST64 || PRI_MACROS_BROKEN -+# undef PRIuLEAST64 -+# define PRIuLEAST64 PRIu64 -+#endif -+#if !defined PRIxLEAST64 || PRI_MACROS_BROKEN -+# undef PRIxLEAST64 -+# define PRIxLEAST64 PRIx64 -+#endif -+#if !defined PRIXLEAST64 || PRI_MACROS_BROKEN -+# undef PRIXLEAST64 -+# define PRIXLEAST64 PRIX64 -+#endif -+#if !defined PRIdFAST8 || PRI_MACROS_BROKEN -+# undef PRIdFAST8 -+# define PRIdFAST8 "d" -+#endif -+#if !defined PRIiFAST8 || PRI_MACROS_BROKEN -+# undef PRIiFAST8 -+# define PRIiFAST8 "i" -+#endif -+#if !defined PRIoFAST8 || PRI_MACROS_BROKEN -+# undef PRIoFAST8 -+# define PRIoFAST8 "o" -+#endif -+#if !defined PRIuFAST8 || PRI_MACROS_BROKEN -+# undef PRIuFAST8 -+# define PRIuFAST8 "u" -+#endif -+#if !defined PRIxFAST8 || PRI_MACROS_BROKEN -+# undef PRIxFAST8 -+# define PRIxFAST8 "x" -+#endif -+#if !defined PRIXFAST8 || PRI_MACROS_BROKEN -+# undef PRIXFAST8 -+# define PRIXFAST8 "X" -+#endif -+#if !defined PRIdFAST16 || PRI_MACROS_BROKEN -+# undef PRIdFAST16 -+# define PRIdFAST16 "d" -+#endif -+#if !defined PRIiFAST16 || PRI_MACROS_BROKEN -+# undef PRIiFAST16 -+# define PRIiFAST16 "i" -+#endif -+#if !defined PRIoFAST16 || PRI_MACROS_BROKEN -+# undef PRIoFAST16 -+# define PRIoFAST16 "o" -+#endif -+#if !defined PRIuFAST16 || PRI_MACROS_BROKEN -+# undef PRIuFAST16 -+# define PRIuFAST16 "u" -+#endif -+#if !defined PRIxFAST16 || PRI_MACROS_BROKEN -+# undef PRIxFAST16 -+# define PRIxFAST16 "x" -+#endif -+#if !defined PRIXFAST16 || PRI_MACROS_BROKEN -+# undef PRIXFAST16 -+# define PRIXFAST16 "X" -+#endif -+#if !defined PRIdFAST32 || PRI_MACROS_BROKEN -+# undef PRIdFAST32 -+# define PRIdFAST32 "d" -+#endif -+#if !defined PRIiFAST32 || PRI_MACROS_BROKEN -+# undef PRIiFAST32 -+# define PRIiFAST32 "i" -+#endif -+#if !defined PRIoFAST32 || PRI_MACROS_BROKEN -+# undef PRIoFAST32 -+# define PRIoFAST32 "o" -+#endif -+#if !defined PRIuFAST32 || PRI_MACROS_BROKEN -+# undef PRIuFAST32 -+# define PRIuFAST32 "u" -+#endif -+#if !defined PRIxFAST32 || PRI_MACROS_BROKEN -+# undef PRIxFAST32 -+# define PRIxFAST32 "x" -+#endif -+#if !defined PRIXFAST32 || PRI_MACROS_BROKEN -+# undef PRIXFAST32 -+# define PRIXFAST32 "X" -+#endif -+#if !defined PRIdFAST64 || PRI_MACROS_BROKEN -+# undef PRIdFAST64 -+# define PRIdFAST64 PRId64 -+#endif -+#if !defined PRIiFAST64 || PRI_MACROS_BROKEN -+# undef PRIiFAST64 -+# define PRIiFAST64 PRIi64 -+#endif -+#if !defined PRIoFAST64 || PRI_MACROS_BROKEN -+# undef PRIoFAST64 -+# define PRIoFAST64 PRIo64 -+#endif -+#if !defined PRIuFAST64 || PRI_MACROS_BROKEN -+# undef PRIuFAST64 -+# define PRIuFAST64 PRIu64 -+#endif -+#if !defined PRIxFAST64 || PRI_MACROS_BROKEN -+# undef PRIxFAST64 -+# define PRIxFAST64 PRIx64 -+#endif -+#if !defined PRIXFAST64 || PRI_MACROS_BROKEN -+# undef PRIXFAST64 -+# define PRIXFAST64 PRIX64 -+#endif -+#if !defined PRIdMAX || PRI_MACROS_BROKEN -+# undef PRIdMAX -+# define PRIdMAX (sizeof (uintmax_t) == sizeof (long) ? "ld" : "lld") -+#endif -+#if !defined PRIiMAX || PRI_MACROS_BROKEN -+# undef PRIiMAX -+# define PRIiMAX (sizeof (uintmax_t) == sizeof (long) ? "li" : "lli") -+#endif -+#if !defined PRIoMAX || PRI_MACROS_BROKEN -+# undef PRIoMAX -+# define PRIoMAX (sizeof (uintmax_t) == sizeof (long) ? "lo" : "llo") -+#endif -+#if !defined PRIuMAX || PRI_MACROS_BROKEN -+# undef PRIuMAX -+# define PRIuMAX (sizeof (uintmax_t) == sizeof (long) ? "lu" : "llu") -+#endif -+#if !defined PRIxMAX || PRI_MACROS_BROKEN -+# undef PRIxMAX -+# define PRIxMAX (sizeof (uintmax_t) == sizeof (long) ? "lx" : "llx") -+#endif -+#if !defined PRIXMAX || PRI_MACROS_BROKEN -+# undef PRIXMAX -+# define PRIXMAX (sizeof (uintmax_t) == sizeof (long) ? "lX" : "llX") -+#endif -+#if !defined PRIdPTR || PRI_MACROS_BROKEN -+# undef PRIdPTR -+# define PRIdPTR \ -+ (sizeof (void *) == sizeof (long) ? "ld" : \ -+ sizeof (void *) == sizeof (int) ? "d" : \ -+ "lld") -+#endif -+#if !defined PRIiPTR || PRI_MACROS_BROKEN -+# undef PRIiPTR -+# define PRIiPTR \ -+ (sizeof (void *) == sizeof (long) ? "li" : \ -+ sizeof (void *) == sizeof (int) ? "i" : \ -+ "lli") -+#endif -+#if !defined PRIoPTR || PRI_MACROS_BROKEN -+# undef PRIoPTR -+# define PRIoPTR \ -+ (sizeof (void *) == sizeof (long) ? "lo" : \ -+ sizeof (void *) == sizeof (int) ? "o" : \ -+ "llo") -+#endif -+#if !defined PRIuPTR || PRI_MACROS_BROKEN -+# undef PRIuPTR -+# define PRIuPTR \ -+ (sizeof (void *) == sizeof (long) ? "lu" : \ -+ sizeof (void *) == sizeof (int) ? "u" : \ -+ "llu") -+#endif -+#if !defined PRIxPTR || PRI_MACROS_BROKEN -+# undef PRIxPTR -+# define PRIxPTR \ -+ (sizeof (void *) == sizeof (long) ? "lx" : \ -+ sizeof (void *) == sizeof (int) ? "x" : \ -+ "llx") -+#endif -+#if !defined PRIXPTR || PRI_MACROS_BROKEN -+# undef PRIXPTR -+# define PRIXPTR \ -+ (sizeof (void *) == sizeof (long) ? "lX" : \ -+ sizeof (void *) == sizeof (int) ? "X" : \ -+ "llX") -+#endif - - /* @@ end of prolog @@ */ - -@@ -44,7 +457,6 @@ - /* Rename the non ISO C functions. This is required by the standard - because some ISO C functions will require linking with this object - file and the name space must not be polluted. */ --# define fstat __fstat - # define open __open - # define close __close - # define read __read -@@ -52,30 +464,471 @@ - # define munmap __munmap - #endif - -+/* For those losing systems which don't have `alloca' we have to add -+ some additional code emulating it. */ -+#ifdef HAVE_ALLOCA -+# define freea(p) /* nothing */ -+#else -+# define alloca(n) malloc (n) -+# define freea(p) free (p) -+#endif -+ -+/* For systems that distinguish between text and binary I/O. -+ O_BINARY is usually declared in . */ -+#if !defined O_BINARY && defined _O_BINARY -+ /* For MSC-compatible compilers. */ -+# define O_BINARY _O_BINARY -+# define O_TEXT _O_TEXT -+#endif -+#ifdef __BEOS__ -+ /* BeOS 5 has O_BINARY and O_TEXT, but they have no effect. */ -+# undef O_BINARY -+# undef O_TEXT -+#endif -+/* On reasonable systems, binary I/O is the default. */ -+#ifndef O_BINARY -+# define O_BINARY 0 -+#endif -+ -+ - /* We need a sign, whether a new catalog was loaded, which can be associated - with all translations. This is important if the translations are - cached by one of GCC's features. */ --int _nl_msg_cat_cntr = 0; -+int _nl_msg_cat_cntr; - - -+/* Expand a system dependent string segment. Return NULL if unsupported. */ -+static const char * -+get_sysdep_segment_value (const char *name) -+{ -+ /* Test for an ISO C 99 section 7.8.1 format string directive. -+ Syntax: -+ P R I { d | i | o | u | x | X } -+ { { | LEAST | FAST } { 8 | 16 | 32 | 64 } | MAX | PTR } */ -+ /* We don't use a table of 14 times 6 'const char *' strings here, because -+ data relocations cost startup time. */ -+ if (name[0] == 'P' && name[1] == 'R' && name[2] == 'I') -+ { -+ if (name[3] == 'd' || name[3] == 'i' || name[3] == 'o' || name[3] == 'u' -+ || name[3] == 'x' || name[3] == 'X') -+ { -+ if (name[4] == '8' && name[5] == '\0') -+ { -+ if (name[3] == 'd') -+ return PRId8; -+ if (name[3] == 'i') -+ return PRIi8; -+ if (name[3] == 'o') -+ return PRIo8; -+ if (name[3] == 'u') -+ return PRIu8; -+ if (name[3] == 'x') -+ return PRIx8; -+ if (name[3] == 'X') -+ return PRIX8; -+ abort (); -+ } -+ if (name[4] == '1' && name[5] == '6' && name[6] == '\0') -+ { -+ if (name[3] == 'd') -+ return PRId16; -+ if (name[3] == 'i') -+ return PRIi16; -+ if (name[3] == 'o') -+ return PRIo16; -+ if (name[3] == 'u') -+ return PRIu16; -+ if (name[3] == 'x') -+ return PRIx16; -+ if (name[3] == 'X') -+ return PRIX16; -+ abort (); -+ } -+ if (name[4] == '3' && name[5] == '2' && name[6] == '\0') -+ { -+ if (name[3] == 'd') -+ return PRId32; -+ if (name[3] == 'i') -+ return PRIi32; -+ if (name[3] == 'o') -+ return PRIo32; -+ if (name[3] == 'u') -+ return PRIu32; -+ if (name[3] == 'x') -+ return PRIx32; -+ if (name[3] == 'X') -+ return PRIX32; -+ abort (); -+ } -+ if (name[4] == '6' && name[5] == '4' && name[6] == '\0') -+ { -+ if (name[3] == 'd') -+ return PRId64; -+ if (name[3] == 'i') -+ return PRIi64; -+ if (name[3] == 'o') -+ return PRIo64; -+ if (name[3] == 'u') -+ return PRIu64; -+ if (name[3] == 'x') -+ return PRIx64; -+ if (name[3] == 'X') -+ return PRIX64; -+ abort (); -+ } -+ if (name[4] == 'L' && name[5] == 'E' && name[6] == 'A' -+ && name[7] == 'S' && name[8] == 'T') -+ { -+ if (name[9] == '8' && name[10] == '\0') -+ { -+ if (name[3] == 'd') -+ return PRIdLEAST8; -+ if (name[3] == 'i') -+ return PRIiLEAST8; -+ if (name[3] == 'o') -+ return PRIoLEAST8; -+ if (name[3] == 'u') -+ return PRIuLEAST8; -+ if (name[3] == 'x') -+ return PRIxLEAST8; -+ if (name[3] == 'X') -+ return PRIXLEAST8; -+ abort (); -+ } -+ if (name[9] == '1' && name[10] == '6' && name[11] == '\0') -+ { -+ if (name[3] == 'd') -+ return PRIdLEAST16; -+ if (name[3] == 'i') -+ return PRIiLEAST16; -+ if (name[3] == 'o') -+ return PRIoLEAST16; -+ if (name[3] == 'u') -+ return PRIuLEAST16; -+ if (name[3] == 'x') -+ return PRIxLEAST16; -+ if (name[3] == 'X') -+ return PRIXLEAST16; -+ abort (); -+ } -+ if (name[9] == '3' && name[10] == '2' && name[11] == '\0') -+ { -+ if (name[3] == 'd') -+ return PRIdLEAST32; -+ if (name[3] == 'i') -+ return PRIiLEAST32; -+ if (name[3] == 'o') -+ return PRIoLEAST32; -+ if (name[3] == 'u') -+ return PRIuLEAST32; -+ if (name[3] == 'x') -+ return PRIxLEAST32; -+ if (name[3] == 'X') -+ return PRIXLEAST32; -+ abort (); -+ } -+ if (name[9] == '6' && name[10] == '4' && name[11] == '\0') -+ { -+ if (name[3] == 'd') -+ return PRIdLEAST64; -+ if (name[3] == 'i') -+ return PRIiLEAST64; -+ if (name[3] == 'o') -+ return PRIoLEAST64; -+ if (name[3] == 'u') -+ return PRIuLEAST64; -+ if (name[3] == 'x') -+ return PRIxLEAST64; -+ if (name[3] == 'X') -+ return PRIXLEAST64; -+ abort (); -+ } -+ } -+ if (name[4] == 'F' && name[5] == 'A' && name[6] == 'S' -+ && name[7] == 'T') -+ { -+ if (name[8] == '8' && name[9] == '\0') -+ { -+ if (name[3] == 'd') -+ return PRIdFAST8; -+ if (name[3] == 'i') -+ return PRIiFAST8; -+ if (name[3] == 'o') -+ return PRIoFAST8; -+ if (name[3] == 'u') -+ return PRIuFAST8; -+ if (name[3] == 'x') -+ return PRIxFAST8; -+ if (name[3] == 'X') -+ return PRIXFAST8; -+ abort (); -+ } -+ if (name[8] == '1' && name[9] == '6' && name[10] == '\0') -+ { -+ if (name[3] == 'd') -+ return PRIdFAST16; -+ if (name[3] == 'i') -+ return PRIiFAST16; -+ if (name[3] == 'o') -+ return PRIoFAST16; -+ if (name[3] == 'u') -+ return PRIuFAST16; -+ if (name[3] == 'x') -+ return PRIxFAST16; -+ if (name[3] == 'X') -+ return PRIXFAST16; -+ abort (); -+ } -+ if (name[8] == '3' && name[9] == '2' && name[10] == '\0') -+ { -+ if (name[3] == 'd') -+ return PRIdFAST32; -+ if (name[3] == 'i') -+ return PRIiFAST32; -+ if (name[3] == 'o') -+ return PRIoFAST32; -+ if (name[3] == 'u') -+ return PRIuFAST32; -+ if (name[3] == 'x') -+ return PRIxFAST32; -+ if (name[3] == 'X') -+ return PRIXFAST32; -+ abort (); -+ } -+ if (name[8] == '6' && name[9] == '4' && name[10] == '\0') -+ { -+ if (name[3] == 'd') -+ return PRIdFAST64; -+ if (name[3] == 'i') -+ return PRIiFAST64; -+ if (name[3] == 'o') -+ return PRIoFAST64; -+ if (name[3] == 'u') -+ return PRIuFAST64; -+ if (name[3] == 'x') -+ return PRIxFAST64; -+ if (name[3] == 'X') -+ return PRIXFAST64; -+ abort (); -+ } -+ } -+ if (name[4] == 'M' && name[5] == 'A' && name[6] == 'X' -+ && name[7] == '\0') -+ { -+ if (name[3] == 'd') -+ return PRIdMAX; -+ if (name[3] == 'i') -+ return PRIiMAX; -+ if (name[3] == 'o') -+ return PRIoMAX; -+ if (name[3] == 'u') -+ return PRIuMAX; -+ if (name[3] == 'x') -+ return PRIxMAX; -+ if (name[3] == 'X') -+ return PRIXMAX; -+ abort (); -+ } -+ if (name[4] == 'P' && name[5] == 'T' && name[6] == 'R' -+ && name[7] == '\0') -+ { -+ if (name[3] == 'd') -+ return PRIdPTR; -+ if (name[3] == 'i') -+ return PRIiPTR; -+ if (name[3] == 'o') -+ return PRIoPTR; -+ if (name[3] == 'u') -+ return PRIuPTR; -+ if (name[3] == 'x') -+ return PRIxPTR; -+ if (name[3] == 'X') -+ return PRIXPTR; -+ abort (); -+ } -+ } -+ } -+ /* Test for a glibc specific printf() format directive flag. */ -+ if (name[0] == 'I' && name[1] == '\0') -+ { -+#if defined _LIBC || __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 2) -+ /* The 'I' flag, in numeric format directives, replaces ASCII digits -+ with the 'outdigits' defined in the LC_CTYPE locale facet. This is -+ used for Farsi (Persian) and maybe Arabic. */ -+ return "I"; -+#else -+ return ""; -+#endif -+ } -+ /* Other system dependent strings are not valid. */ -+ return NULL; -+} -+ -+/* Initialize the codeset dependent parts of an opened message catalog. -+ Return the header entry. */ -+const char * -+internal_function -+_nl_init_domain_conv (struct loaded_l10nfile *domain_file, -+ struct loaded_domain *domain, -+ struct binding *domainbinding) -+{ -+ /* Find out about the character set the file is encoded with. -+ This can be found (in textual form) in the entry "". If this -+ entry does not exist or if this does not contain the `charset=' -+ information, we will assume the charset matches the one the -+ current locale and we don't have to perform any conversion. */ -+ char *nullentry; -+ size_t nullentrylen; -+ -+ /* Preinitialize fields, to avoid recursion during _nl_find_msg. */ -+ domain->codeset_cntr = -+ (domainbinding != NULL ? domainbinding->codeset_cntr : 0); -+#ifdef _LIBC -+ domain->conv = (__gconv_t) -1; -+#else -+# if HAVE_ICONV -+ domain->conv = (iconv_t) -1; -+# endif -+#endif -+ domain->conv_tab = NULL; -+ -+ /* Get the header entry. */ -+ nullentry = _nl_find_msg (domain_file, domainbinding, "", &nullentrylen); -+ -+ if (nullentry != NULL) -+ { -+#if defined _LIBC || HAVE_ICONV -+ const char *charsetstr; -+ -+ charsetstr = strstr (nullentry, "charset="); -+ if (charsetstr != NULL) -+ { -+ size_t len; -+ char *charset; -+ const char *outcharset; -+ -+ charsetstr += strlen ("charset="); -+ len = strcspn (charsetstr, " \t\n"); -+ -+ charset = (char *) alloca (len + 1); -+# if defined _LIBC || HAVE_MEMPCPY -+ *((char *) mempcpy (charset, charsetstr, len)) = '\0'; -+# else -+ memcpy (charset, charsetstr, len); -+ charset[len] = '\0'; -+# endif -+ -+ /* The output charset should normally be determined by the -+ locale. But sometimes the locale is not used or not correctly -+ set up, so we provide a possibility for the user to override -+ this. Moreover, the value specified through -+ bind_textdomain_codeset overrides both. */ -+ if (domainbinding != NULL && domainbinding->codeset != NULL) -+ outcharset = domainbinding->codeset; -+ else -+ { -+ outcharset = getenv ("OUTPUT_CHARSET"); -+ if (outcharset == NULL || outcharset[0] == '\0') -+ { -+# ifdef _LIBC -+ outcharset = _NL_CURRENT (LC_CTYPE, CODESET); -+# else -+# if HAVE_ICONV -+ extern const char *locale_charset (void); -+ outcharset = locale_charset (); -+# endif -+# endif -+ } -+ } -+ -+# ifdef _LIBC -+ /* We always want to use transliteration. */ -+ outcharset = norm_add_slashes (outcharset, "TRANSLIT"); -+ charset = norm_add_slashes (charset, NULL); -+ if (__gconv_open (outcharset, charset, &domain->conv, -+ GCONV_AVOID_NOCONV) -+ != __GCONV_OK) -+ domain->conv = (__gconv_t) -1; -+# else -+# if HAVE_ICONV -+ /* When using GNU libc >= 2.2 or GNU libiconv >= 1.5, -+ we want to use transliteration. */ -+# if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 2) || __GLIBC__ > 2 \ -+ || _LIBICONV_VERSION >= 0x0105 -+ if (strchr (outcharset, '/') == NULL) -+ { -+ char *tmp; -+ -+ len = strlen (outcharset); -+ tmp = (char *) alloca (len + 10 + 1); -+ memcpy (tmp, outcharset, len); -+ memcpy (tmp + len, "//TRANSLIT", 10 + 1); -+ outcharset = tmp; -+ -+ domain->conv = iconv_open (outcharset, charset); -+ -+ freea (outcharset); -+ } -+ else -+# endif -+ domain->conv = iconv_open (outcharset, charset); -+# endif -+# endif -+ -+ freea (charset); -+ } -+#endif /* _LIBC || HAVE_ICONV */ -+ } -+ -+ return nullentry; -+} -+ -+/* Frees the codeset dependent parts of an opened message catalog. */ -+void -+internal_function -+_nl_free_domain_conv (struct loaded_domain *domain) -+{ -+ if (domain->conv_tab != NULL && domain->conv_tab != (char **) -1) -+ free (domain->conv_tab); -+ -+#ifdef _LIBC -+ if (domain->conv != (__gconv_t) -1) -+ __gconv_close (domain->conv); -+#else -+# if HAVE_ICONV -+ if (domain->conv != (iconv_t) -1) -+ iconv_close (domain->conv); -+# endif -+#endif -+} -+ - /* Load the message catalogs specified by FILENAME. If it is no valid - message catalog do nothing. */ - void --_nl_load_domain (domain_file) -- struct loaded_l10nfile *domain_file; -+internal_function -+_nl_load_domain (struct loaded_l10nfile *domain_file, -+ struct binding *domainbinding) - { - int fd; -+ size_t size; -+#ifdef _LIBC -+ struct stat64 st; -+#else - struct stat st; -+#endif - struct mo_file_header *data = (struct mo_file_header *) -1; --#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \ -- || defined _LIBC - int use_mmap = 0; --#endif - struct loaded_domain *domain; -+ int revision; -+ const char *nullentry; - - domain_file->decided = 1; - domain_file->data = NULL; - -+ /* Note that it would be useless to store domainbinding in domain_file -+ because domainbinding might be == NULL now but != NULL later (after -+ a call to bind_textdomain_codeset). */ -+ - /* If the record does not represent a valid locale the FILENAME - might be NULL. This can happen when according to the given - specification the locale file name is different for XPG and CEN -@@ -84,27 +937,32 @@ - return; - - /* Try to open the addressed file. */ -- fd = open (domain_file->filename, O_RDONLY); -+ fd = open (domain_file->filename, O_RDONLY | O_BINARY); - if (fd == -1) - return; - - /* We must know about the size of the file. */ -- if (fstat (fd, &st) != 0 -- && st.st_size < (off_t) sizeof (struct mo_file_header)) -+ if ( -+#ifdef _LIBC -+ __builtin_expect (fstat64 (fd, &st) != 0, 0) -+#else -+ __builtin_expect (fstat (fd, &st) != 0, 0) -+#endif -+ || __builtin_expect ((size = (size_t) st.st_size) != st.st_size, 0) -+ || __builtin_expect (size < sizeof (struct mo_file_header), 0)) - { - /* Something went wrong. */ - close (fd); - return; - } - --#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \ -- || defined _LIBC -+#ifdef HAVE_MMAP - /* Now we are ready to load the file. If mmap() is available we try - this first. If not available or it failed we try to load it. */ -- data = (struct mo_file_header *) mmap (NULL, st.st_size, PROT_READ, -+ data = (struct mo_file_header *) mmap (NULL, size, PROT_READ, - MAP_PRIVATE, fd, 0); - -- if (data != (struct mo_file_header *) -1) -+ if (__builtin_expect (data != (struct mo_file_header *) -1, 1)) - { - /* mmap() call was successful. */ - close (fd); -@@ -116,24 +974,27 @@ - it manually. */ - if (data == (struct mo_file_header *) -1) - { -- off_t to_read; -+ size_t to_read; - char *read_ptr; - -- data = (struct mo_file_header *) malloc (st.st_size); -+ data = (struct mo_file_header *) malloc (size); - if (data == NULL) - return; - -- to_read = st.st_size; -+ to_read = size; - read_ptr = (char *) data; - do - { - long int nb = (long int) read (fd, read_ptr, to_read); -- if (nb == -1) -+ if (nb <= 0) - { -+#ifdef EINTR -+ if (nb == -1 && errno == EINTR) -+ continue; -+#endif - close (fd); - return; - } -- - read_ptr += nb; - to_read -= nb; - } -@@ -144,47 +1005,378 @@ - - /* Using the magic number we can test whether it really is a message - catalog file. */ -- if (data->magic != _MAGIC && data->magic != _MAGIC_SWAPPED) -+ if (__builtin_expect (data->magic != _MAGIC && data->magic != _MAGIC_SWAPPED, -+ 0)) - { - /* The magic number is wrong: not a message catalog file. */ --#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \ -- || defined _LIBC -+#ifdef HAVE_MMAP - if (use_mmap) -- munmap ((caddr_t) data, st.st_size); -+ munmap ((caddr_t) data, size); - else - #endif - free (data); - return; - } - -- domain_file->data -- = (struct loaded_domain *) malloc (sizeof (struct loaded_domain)); -- if (domain_file->data == NULL) -+ domain = (struct loaded_domain *) malloc (sizeof (struct loaded_domain)); -+ if (domain == NULL) - return; -+ domain_file->data = domain; - -- domain = (struct loaded_domain *) domain_file->data; - domain->data = (char *) data; -+ domain->use_mmap = use_mmap; -+ domain->mmap_size = size; - domain->must_swap = data->magic != _MAGIC; -+ domain->malloced = NULL; - - /* Fill in the information about the available tables. */ -- switch (W (domain->must_swap, data->revision)) -+ revision = W (domain->must_swap, data->revision); -+ /* We support only the major revisions 0 and 1. */ -+ switch (revision >> 16) - { - case 0: -+ case 1: - domain->nstrings = W (domain->must_swap, data->nstrings); -- domain->orig_tab = (struct string_desc *) -+ domain->orig_tab = (const struct string_desc *) - ((char *) data + W (domain->must_swap, data->orig_tab_offset)); -- domain->trans_tab = (struct string_desc *) -+ domain->trans_tab = (const struct string_desc *) - ((char *) data + W (domain->must_swap, data->trans_tab_offset)); - domain->hash_size = W (domain->must_swap, data->hash_tab_size); -- domain->hash_tab = (nls_uint32 *) -- ((char *) data + W (domain->must_swap, data->hash_tab_offset)); -+ domain->hash_tab = -+ (domain->hash_size > 2 -+ ? (const nls_uint32 *) -+ ((char *) data + W (domain->must_swap, data->hash_tab_offset)) -+ : NULL); -+ domain->must_swap_hash_tab = domain->must_swap; -+ -+ /* Now dispatch on the minor revision. */ -+ switch (revision & 0xffff) -+ { -+ case 0: -+ domain->n_sysdep_strings = 0; -+ domain->orig_sysdep_tab = NULL; -+ domain->trans_sysdep_tab = NULL; -+ break; -+ case 1: -+ default: -+ { -+ nls_uint32 n_sysdep_strings; -+ -+ if (domain->hash_tab == NULL) -+ /* This is invalid. These minor revisions need a hash table. */ -+ goto invalid; -+ -+ n_sysdep_strings = -+ W (domain->must_swap, data->n_sysdep_strings); -+ if (n_sysdep_strings > 0) -+ { -+ nls_uint32 n_sysdep_segments; -+ const struct sysdep_segment *sysdep_segments; -+ const char **sysdep_segment_values; -+ const nls_uint32 *orig_sysdep_tab; -+ const nls_uint32 *trans_sysdep_tab; -+ nls_uint32 n_inmem_sysdep_strings; -+ size_t memneed; -+ char *mem; -+ struct sysdep_string_desc *inmem_orig_sysdep_tab; -+ struct sysdep_string_desc *inmem_trans_sysdep_tab; -+ nls_uint32 *inmem_hash_tab; -+ unsigned int i, j; -+ -+ /* Get the values of the system dependent segments. */ -+ n_sysdep_segments = -+ W (domain->must_swap, data->n_sysdep_segments); -+ sysdep_segments = (const struct sysdep_segment *) -+ ((char *) data -+ + W (domain->must_swap, data->sysdep_segments_offset)); -+ sysdep_segment_values = -+ alloca (n_sysdep_segments * sizeof (const char *)); -+ for (i = 0; i < n_sysdep_segments; i++) -+ { -+ const char *name = -+ (char *) data -+ + W (domain->must_swap, sysdep_segments[i].offset); -+ nls_uint32 namelen = -+ W (domain->must_swap, sysdep_segments[i].length); -+ -+ if (!(namelen > 0 && name[namelen - 1] == '\0')) -+ { -+ freea (sysdep_segment_values); -+ goto invalid; -+ } -+ -+ sysdep_segment_values[i] = get_sysdep_segment_value (name); -+ } -+ -+ orig_sysdep_tab = (const nls_uint32 *) -+ ((char *) data -+ + W (domain->must_swap, data->orig_sysdep_tab_offset)); -+ trans_sysdep_tab = (const nls_uint32 *) -+ ((char *) data -+ + W (domain->must_swap, data->trans_sysdep_tab_offset)); -+ -+ /* Compute the amount of additional memory needed for the -+ system dependent strings and the augmented hash table. -+ At the same time, also drop string pairs which refer to -+ an undefined system dependent segment. */ -+ n_inmem_sysdep_strings = 0; -+ memneed = domain->hash_size * sizeof (nls_uint32); -+ for (i = 0; i < n_sysdep_strings; i++) -+ { -+ int valid = 1; -+ size_t needs[2]; -+ -+ for (j = 0; j < 2; j++) -+ { -+ const struct sysdep_string *sysdep_string = -+ (const struct sysdep_string *) -+ ((char *) data -+ + W (domain->must_swap, -+ j == 0 -+ ? orig_sysdep_tab[i] -+ : trans_sysdep_tab[i])); -+ size_t need = 0; -+ const struct segment_pair *p = sysdep_string->segments; -+ -+ if (W (domain->must_swap, p->sysdepref) != SEGMENTS_END) -+ for (p = sysdep_string->segments;; p++) -+ { -+ nls_uint32 sysdepref; -+ -+ need += W (domain->must_swap, p->segsize); -+ -+ sysdepref = W (domain->must_swap, p->sysdepref); -+ if (sysdepref == SEGMENTS_END) -+ break; -+ -+ if (sysdepref >= n_sysdep_segments) -+ { -+ /* Invalid. */ -+ freea (sysdep_segment_values); -+ goto invalid; -+ } -+ -+ if (sysdep_segment_values[sysdepref] == NULL) -+ { -+ /* This particular string pair is invalid. */ -+ valid = 0; -+ break; -+ } -+ -+ need += strlen (sysdep_segment_values[sysdepref]); -+ } -+ -+ needs[j] = need; -+ if (!valid) -+ break; -+ } -+ -+ if (valid) -+ { -+ n_inmem_sysdep_strings++; -+ memneed += needs[0] + needs[1]; -+ } -+ } -+ memneed += 2 * n_inmem_sysdep_strings -+ * sizeof (struct sysdep_string_desc); -+ -+ if (n_inmem_sysdep_strings > 0) -+ { -+ unsigned int k; -+ -+ /* Allocate additional memory. */ -+ mem = (char *) malloc (memneed); -+ if (mem == NULL) -+ goto invalid; -+ -+ domain->malloced = mem; -+ inmem_orig_sysdep_tab = (struct sysdep_string_desc *) mem; -+ mem += n_inmem_sysdep_strings -+ * sizeof (struct sysdep_string_desc); -+ inmem_trans_sysdep_tab = (struct sysdep_string_desc *) mem; -+ mem += n_inmem_sysdep_strings -+ * sizeof (struct sysdep_string_desc); -+ inmem_hash_tab = (nls_uint32 *) mem; -+ mem += domain->hash_size * sizeof (nls_uint32); -+ -+ /* Compute the system dependent strings. */ -+ k = 0; -+ for (i = 0; i < n_sysdep_strings; i++) -+ { -+ int valid = 1; -+ -+ for (j = 0; j < 2; j++) -+ { -+ const struct sysdep_string *sysdep_string = -+ (const struct sysdep_string *) -+ ((char *) data -+ + W (domain->must_swap, -+ j == 0 -+ ? orig_sysdep_tab[i] -+ : trans_sysdep_tab[i])); -+ const struct segment_pair *p = -+ sysdep_string->segments; -+ -+ if (W (domain->must_swap, p->sysdepref) -+ != SEGMENTS_END) -+ for (p = sysdep_string->segments;; p++) -+ { -+ nls_uint32 sysdepref; -+ -+ sysdepref = -+ W (domain->must_swap, p->sysdepref); -+ if (sysdepref == SEGMENTS_END) -+ break; -+ -+ if (sysdep_segment_values[sysdepref] == NULL) -+ { -+ /* This particular string pair is -+ invalid. */ -+ valid = 0; -+ break; -+ } -+ } -+ -+ if (!valid) -+ break; -+ } -+ -+ if (valid) -+ { -+ for (j = 0; j < 2; j++) -+ { -+ const struct sysdep_string *sysdep_string = -+ (const struct sysdep_string *) -+ ((char *) data -+ + W (domain->must_swap, -+ j == 0 -+ ? orig_sysdep_tab[i] -+ : trans_sysdep_tab[i])); -+ const char *static_segments = -+ (char *) data -+ + W (domain->must_swap, sysdep_string->offset); -+ const struct segment_pair *p = -+ sysdep_string->segments; -+ -+ /* Concatenate the segments, and fill -+ inmem_orig_sysdep_tab[k] (for j == 0) and -+ inmem_trans_sysdep_tab[k] (for j == 1). */ -+ -+ struct sysdep_string_desc *inmem_tab_entry = -+ (j == 0 -+ ? inmem_orig_sysdep_tab -+ : inmem_trans_sysdep_tab) -+ + k; -+ -+ if (W (domain->must_swap, p->sysdepref) -+ == SEGMENTS_END) -+ { -+ /* Only one static segment. */ -+ inmem_tab_entry->length = -+ W (domain->must_swap, p->segsize); -+ inmem_tab_entry->pointer = static_segments; -+ } -+ else -+ { -+ inmem_tab_entry->pointer = mem; -+ -+ for (p = sysdep_string->segments;; p++) -+ { -+ nls_uint32 segsize = -+ W (domain->must_swap, p->segsize); -+ nls_uint32 sysdepref = -+ W (domain->must_swap, p->sysdepref); -+ size_t n; -+ -+ if (segsize > 0) -+ { -+ memcpy (mem, static_segments, segsize); -+ mem += segsize; -+ static_segments += segsize; -+ } -+ -+ if (sysdepref == SEGMENTS_END) -+ break; -+ -+ n = strlen (sysdep_segment_values[sysdepref]); -+ memcpy (mem, sysdep_segment_values[sysdepref], n); -+ mem += n; -+ } -+ -+ inmem_tab_entry->length = -+ mem - inmem_tab_entry->pointer; -+ } -+ } -+ -+ k++; -+ } -+ } -+ if (k != n_inmem_sysdep_strings) -+ abort (); -+ -+ /* Compute the augmented hash table. */ -+ for (i = 0; i < domain->hash_size; i++) -+ inmem_hash_tab[i] = -+ W (domain->must_swap_hash_tab, domain->hash_tab[i]); -+ for (i = 0; i < n_inmem_sysdep_strings; i++) -+ { -+ const char *msgid = inmem_orig_sysdep_tab[i].pointer; -+ nls_uint32 hash_val = hash_string (msgid); -+ nls_uint32 idx = hash_val % domain->hash_size; -+ nls_uint32 incr = -+ 1 + (hash_val % (domain->hash_size - 2)); -+ -+ for (;;) -+ { -+ if (inmem_hash_tab[idx] == 0) -+ { -+ /* Hash table entry is empty. Use it. */ -+ inmem_hash_tab[idx] = 1 + domain->nstrings + i; -+ break; -+ } -+ -+ if (idx >= domain->hash_size - incr) -+ idx -= domain->hash_size - incr; -+ else -+ idx += incr; -+ } -+ } -+ -+ domain->n_sysdep_strings = n_inmem_sysdep_strings; -+ domain->orig_sysdep_tab = inmem_orig_sysdep_tab; -+ domain->trans_sysdep_tab = inmem_trans_sysdep_tab; -+ -+ domain->hash_tab = inmem_hash_tab; -+ domain->must_swap_hash_tab = 0; -+ } -+ else -+ { -+ domain->n_sysdep_strings = 0; -+ domain->orig_sysdep_tab = NULL; -+ domain->trans_sysdep_tab = NULL; -+ } -+ -+ freea (sysdep_segment_values); -+ } -+ else -+ { -+ domain->n_sysdep_strings = 0; -+ domain->orig_sysdep_tab = NULL; -+ domain->trans_sysdep_tab = NULL; -+ } -+ } -+ break; -+ } - break; - default: -- /* This is an illegal revision. */ --#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \ -- || defined _LIBC -+ /* This is an invalid revision. */ -+ invalid: -+ /* This is an invalid .mo file. */ -+ if (domain->malloced) -+ free (domain->malloced); -+#ifdef HAVE_MMAP - if (use_mmap) -- munmap ((caddr_t) data, st.st_size); -+ munmap ((caddr_t) data, size); - else - #endif - free (data); -@@ -193,7 +1385,36 @@ - return; - } - -- /* Show that one domain is changed. This might make some cached -- translations invalid. */ -- ++_nl_msg_cat_cntr; -+ /* Now initialize the character set converter from the character set -+ the file is encoded with (found in the header entry) to the domain's -+ specified character set or the locale's character set. */ -+ nullentry = _nl_init_domain_conv (domain_file, domain, domainbinding); -+ -+ /* Also look for a plural specification. */ -+ EXTRACT_PLURAL_EXPRESSION (nullentry, &domain->plural, &domain->nplurals); - } -+ -+ -+#ifdef _LIBC -+void -+internal_function -+_nl_unload_domain (struct loaded_domain *domain) -+{ -+ if (domain->plural != &__gettext_germanic_plural) -+ __gettext_free_exp (domain->plural); -+ -+ _nl_free_domain_conv (domain); -+ -+ if (domain->malloced) -+ free (domain->malloced); -+ -+# ifdef _POSIX_MAPPED_FILES -+ if (domain->use_mmap) -+ munmap ((caddr_t) domain->data, domain->mmap_size); -+ else -+# endif /* _POSIX_MAPPED_FILES */ -+ free ((void *) domain->data); -+ -+ free (domain); -+} -+#endif ---- lrzsz-0.12.20.safe/intl/localcharset.c 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/localcharset.c 2004-09-12 14:40:34.478729392 -0400 -@@ -0,0 +1,398 @@ -+/* Determine a canonical name for the current locale's character encoding. -+ -+ Copyright (C) 2000-2003 Free Software Foundation, Inc. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+/* Written by Bruno Haible . */ -+ -+#ifdef HAVE_CONFIG_H -+# include -+#endif -+ -+/* Specification. */ -+#include "localcharset.h" -+ -+#if HAVE_STDDEF_H -+# include -+#endif -+ -+#include -+#if HAVE_STRING_H -+# include -+#else -+# include -+#endif -+#if HAVE_STDLIB_H -+# include -+#endif -+ -+#if defined _WIN32 || defined __WIN32__ -+# undef WIN32 /* avoid warning on mingw32 */ -+# define WIN32 -+#endif -+ -+#if defined __EMX__ -+/* Assume EMX program runs on OS/2, even if compiled under DOS. */ -+# define OS2 -+#endif -+ -+#if !defined WIN32 -+# if HAVE_LANGINFO_CODESET -+# include -+# else -+# if HAVE_SETLOCALE -+# include -+# endif -+# endif -+#elif defined WIN32 -+# define WIN32_LEAN_AND_MEAN -+# include -+#endif -+#if defined OS2 -+# define INCL_DOS -+# include -+#endif -+ -+#if ENABLE_RELOCATABLE -+# include "relocatable.h" -+#else -+# define relocate(pathname) (pathname) -+#endif -+ -+#if defined _WIN32 || defined __WIN32__ || defined __EMX__ || defined __DJGPP__ -+ /* Win32, OS/2, DOS */ -+# define ISSLASH(C) ((C) == '/' || (C) == '\\') -+#endif -+ -+#ifndef DIRECTORY_SEPARATOR -+# define DIRECTORY_SEPARATOR '/' -+#endif -+ -+#ifndef ISSLASH -+# define ISSLASH(C) ((C) == DIRECTORY_SEPARATOR) -+#endif -+ -+#if HAVE_DECL_GETC_UNLOCKED -+# undef getc -+# define getc getc_unlocked -+#endif -+ -+/* The following static variable is declared 'volatile' to avoid a -+ possible multithread problem in the function get_charset_aliases. If we -+ are running in a threaded environment, and if two threads initialize -+ 'charset_aliases' simultaneously, both will produce the same value, -+ and everything will be ok if the two assignments to 'charset_aliases' -+ are atomic. But I don't know what will happen if the two assignments mix. */ -+#if __STDC__ != 1 -+# define volatile /* empty */ -+#endif -+/* Pointer to the contents of the charset.alias file, if it has already been -+ read, else NULL. Its format is: -+ ALIAS_1 '\0' CANONICAL_1 '\0' ... ALIAS_n '\0' CANONICAL_n '\0' '\0' */ -+static const char * volatile charset_aliases; -+ -+/* Return a pointer to the contents of the charset.alias file. */ -+static const char * -+get_charset_aliases () -+{ -+ const char *cp; -+ -+ cp = charset_aliases; -+ if (cp == NULL) -+ { -+#if !(defined VMS || defined WIN32) -+ FILE *fp; -+ const char *dir = relocate (LIBDIR); -+ const char *base = "charset.alias"; -+ char *file_name; -+ -+ /* Concatenate dir and base into freshly allocated file_name. */ -+ { -+ size_t dir_len = strlen (dir); -+ size_t base_len = strlen (base); -+ int add_slash = (dir_len > 0 && !ISSLASH (dir[dir_len - 1])); -+ file_name = (char *) malloc (dir_len + add_slash + base_len + 1); -+ if (file_name != NULL) -+ { -+ memcpy (file_name, dir, dir_len); -+ if (add_slash) -+ file_name[dir_len] = DIRECTORY_SEPARATOR; -+ memcpy (file_name + dir_len + add_slash, base, base_len + 1); -+ } -+ } -+ -+ if (file_name == NULL || (fp = fopen (file_name, "r")) == NULL) -+ /* Out of memory or file not found, treat it as empty. */ -+ cp = ""; -+ else -+ { -+ /* Parse the file's contents. */ -+ int c; -+ char buf1[50+1]; -+ char buf2[50+1]; -+ char *res_ptr = NULL; -+ size_t res_size = 0; -+ size_t l1, l2; -+ -+ for (;;) -+ { -+ c = getc (fp); -+ if (c == EOF) -+ break; -+ if (c == '\n' || c == ' ' || c == '\t') -+ continue; -+ if (c == '#') -+ { -+ /* Skip comment, to end of line. */ -+ do -+ c = getc (fp); -+ while (!(c == EOF || c == '\n')); -+ if (c == EOF) -+ break; -+ continue; -+ } -+ ungetc (c, fp); -+ if (fscanf (fp, "%50s %50s", buf1, buf2) < 2) -+ break; -+ l1 = strlen (buf1); -+ l2 = strlen (buf2); -+ if (res_size == 0) -+ { -+ res_size = l1 + 1 + l2 + 1; -+ res_ptr = (char *) malloc (res_size + 1); -+ } -+ else -+ { -+ res_size += l1 + 1 + l2 + 1; -+ res_ptr = (char *) realloc (res_ptr, res_size + 1); -+ } -+ if (res_ptr == NULL) -+ { -+ /* Out of memory. */ -+ res_size = 0; -+ break; -+ } -+ strcpy (res_ptr + res_size - (l2 + 1) - (l1 + 1), buf1); -+ strcpy (res_ptr + res_size - (l2 + 1), buf2); -+ } -+ fclose (fp); -+ if (res_size == 0) -+ cp = ""; -+ else -+ { -+ *(res_ptr + res_size) = '\0'; -+ cp = res_ptr; -+ } -+ } -+ -+ if (file_name != NULL) -+ free (file_name); -+ -+#else -+ -+# if defined VMS -+ /* To avoid the troubles of an extra file charset.alias_vms in the -+ sources of many GNU packages, simply inline the aliases here. */ -+ /* The list of encodings is taken from the OpenVMS 7.3-1 documentation -+ "Compaq C Run-Time Library Reference Manual for OpenVMS systems" -+ section 10.7 "Handling Different Character Sets". */ -+ cp = "ISO8859-1" "\0" "ISO-8859-1" "\0" -+ "ISO8859-2" "\0" "ISO-8859-2" "\0" -+ "ISO8859-5" "\0" "ISO-8859-5" "\0" -+ "ISO8859-7" "\0" "ISO-8859-7" "\0" -+ "ISO8859-8" "\0" "ISO-8859-8" "\0" -+ "ISO8859-9" "\0" "ISO-8859-9" "\0" -+ /* Japanese */ -+ "eucJP" "\0" "EUC-JP" "\0" -+ "SJIS" "\0" "SHIFT_JIS" "\0" -+ "DECKANJI" "\0" "DEC-KANJI" "\0" -+ "SDECKANJI" "\0" "EUC-JP" "\0" -+ /* Chinese */ -+ "eucTW" "\0" "EUC-TW" "\0" -+ "DECHANYU" "\0" "DEC-HANYU" "\0" -+ "DECHANZI" "\0" "GB2312" "\0" -+ /* Korean */ -+ "DECKOREAN" "\0" "EUC-KR" "\0"; -+# endif -+ -+# if defined WIN32 -+ /* To avoid the troubles of installing a separate file in the same -+ directory as the DLL and of retrieving the DLL's directory at -+ runtime, simply inline the aliases here. */ -+ -+ cp = "CP936" "\0" "GBK" "\0" -+ "CP1361" "\0" "JOHAB" "\0" -+ "CP20127" "\0" "ASCII" "\0" -+ "CP20866" "\0" "KOI8-R" "\0" -+ "CP21866" "\0" "KOI8-RU" "\0" -+ "CP28591" "\0" "ISO-8859-1" "\0" -+ "CP28592" "\0" "ISO-8859-2" "\0" -+ "CP28593" "\0" "ISO-8859-3" "\0" -+ "CP28594" "\0" "ISO-8859-4" "\0" -+ "CP28595" "\0" "ISO-8859-5" "\0" -+ "CP28596" "\0" "ISO-8859-6" "\0" -+ "CP28597" "\0" "ISO-8859-7" "\0" -+ "CP28598" "\0" "ISO-8859-8" "\0" -+ "CP28599" "\0" "ISO-8859-9" "\0" -+ "CP28605" "\0" "ISO-8859-15" "\0"; -+# endif -+#endif -+ -+ charset_aliases = cp; -+ } -+ -+ return cp; -+} -+ -+/* Determine the current locale's character encoding, and canonicalize it -+ into one of the canonical names listed in config.charset. -+ The result must not be freed; it is statically allocated. -+ If the canonical name cannot be determined, the result is a non-canonical -+ name. */ -+ -+#ifdef STATIC -+STATIC -+#endif -+const char * -+locale_charset () -+{ -+ const char *codeset; -+ const char *aliases; -+ -+#if !(defined WIN32 || defined OS2) -+ -+# if HAVE_LANGINFO_CODESET -+ -+ /* Most systems support nl_langinfo (CODESET) nowadays. */ -+ codeset = nl_langinfo (CODESET); -+ -+# else -+ -+ /* On old systems which lack it, use setlocale or getenv. */ -+ const char *locale = NULL; -+ -+ /* But most old systems don't have a complete set of locales. Some -+ (like SunOS 4 or DJGPP) have only the C locale. Therefore we don't -+ use setlocale here; it would return "C" when it doesn't support the -+ locale name the user has set. */ -+# if HAVE_SETLOCALE && 0 -+ locale = setlocale (LC_CTYPE, NULL); -+# endif -+ if (locale == NULL || locale[0] == '\0') -+ { -+ locale = getenv ("LC_ALL"); -+ if (locale == NULL || locale[0] == '\0') -+ { -+ locale = getenv ("LC_CTYPE"); -+ if (locale == NULL || locale[0] == '\0') -+ locale = getenv ("LANG"); -+ } -+ } -+ -+ /* On some old systems, one used to set locale = "iso8859_1". On others, -+ you set it to "language_COUNTRY.charset". In any case, we resolve it -+ through the charset.alias file. */ -+ codeset = locale; -+ -+# endif -+ -+#elif defined WIN32 -+ -+ static char buf[2 + 10 + 1]; -+ -+ /* Woe32 has a function returning the locale's codepage as a number. */ -+ sprintf (buf, "CP%u", GetACP ()); -+ codeset = buf; -+ -+#elif defined OS2 -+ -+ const char *locale; -+ static char buf[2 + 10 + 1]; -+ ULONG cp[3]; -+ ULONG cplen; -+ -+ /* Allow user to override the codeset, as set in the operating system, -+ with standard language environment variables. */ -+ locale = getenv ("LC_ALL"); -+ if (locale == NULL || locale[0] == '\0') -+ { -+ locale = getenv ("LC_CTYPE"); -+ if (locale == NULL || locale[0] == '\0') -+ locale = getenv ("LANG"); -+ } -+ if (locale != NULL && locale[0] != '\0') -+ { -+ /* If the locale name contains an encoding after the dot, return it. */ -+ const char *dot = strchr (locale, '.'); -+ -+ if (dot != NULL) -+ { -+ const char *modifier; -+ -+ dot++; -+ /* Look for the possible @... trailer and remove it, if any. */ -+ modifier = strchr (dot, '@'); -+ if (modifier == NULL) -+ return dot; -+ if (modifier - dot < sizeof (buf)) -+ { -+ memcpy (buf, dot, modifier - dot); -+ buf [modifier - dot] = '\0'; -+ return buf; -+ } -+ } -+ -+ /* Resolve through the charset.alias file. */ -+ codeset = locale; -+ } -+ else -+ { -+ /* OS/2 has a function returning the locale's codepage as a number. */ -+ if (DosQueryCp (sizeof (cp), cp, &cplen)) -+ codeset = ""; -+ else -+ { -+ sprintf (buf, "CP%u", cp[0]); -+ codeset = buf; -+ } -+ } -+ -+#endif -+ -+ if (codeset == NULL) -+ /* The canonical name cannot be determined. */ -+ codeset = ""; -+ -+ /* Resolve alias. */ -+ for (aliases = get_charset_aliases (); -+ *aliases != '\0'; -+ aliases += strlen (aliases) + 1, aliases += strlen (aliases) + 1) -+ if (strcmp (codeset, aliases) == 0 -+ || (aliases[0] == '*' && aliases[1] == '\0')) -+ { -+ codeset = aliases + strlen (aliases) + 1; -+ break; -+ } -+ -+ /* Don't return an empty string. GNU libc and GNU libiconv interpret -+ the empty string as denoting "the locale's character encoding", -+ thus GNU libiconv would call this function a second time. */ -+ if (codeset[0] == '\0') -+ codeset = "ASCII"; -+ -+ return codeset; -+} ---- lrzsz-0.12.20.safe/intl/localcharset.h 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/localcharset.h 2004-09-12 14:40:34.483728632 -0400 -@@ -0,0 +1,42 @@ -+/* Determine a canonical name for the current locale's character encoding. -+ Copyright (C) 2000-2003 Free Software Foundation, Inc. -+ This file is part of the GNU CHARSET Library. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+#ifndef _LOCALCHARSET_H -+#define _LOCALCHARSET_H -+ -+ -+#ifdef __cplusplus -+extern "C" { -+#endif -+ -+ -+/* Determine the current locale's character encoding, and canonicalize it -+ into one of the canonical names listed in config.charset. -+ The result must not be freed; it is statically allocated. -+ If the canonical name cannot be determined, the result is a non-canonical -+ name. */ -+extern const char * locale_charset (void); -+ -+ -+#ifdef __cplusplus -+} -+#endif -+ -+ -+#endif /* _LOCALCHARSET_H */ ---- lrzsz-0.12.20.safe/intl/locale.alias 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/locale.alias 2004-09-12 14:40:34.499726200 -0400 -@@ -0,0 +1,78 @@ -+# Locale name alias data base. -+# Copyright (C) 1996-2001,2003 Free Software Foundation, Inc. -+# -+# This program is free software; you can redistribute it and/or modify it -+# under the terms of the GNU Library General Public License as published -+# by the Free Software Foundation; either version 2, or (at your option) -+# any later version. -+# -+# This program is distributed in the hope that it will be useful, -+# but WITHOUT ANY WARRANTY; without even the implied warranty of -+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+# Library General Public License for more details. -+# -+# You should have received a copy of the GNU Library General Public -+# License along with this program; if not, write to the Free Software -+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+# USA. -+ -+# The format of this file is the same as for the corresponding file of -+# the X Window System, which normally can be found in -+# /usr/lib/X11/locale/locale.alias -+# A single line contains two fields: an alias and a substitution value. -+# All entries are case independent. -+ -+# Note: This file is far from being complete. If you have a value for -+# your own site which you think might be useful for others too, share -+# it with the rest of us. Send it using the `glibcbug' script to -+# bugs@gnu.org. -+ -+# Packages using this file: -+ -+bokmal nb_NO.ISO-8859-1 -+bokmål nb_NO.ISO-8859-1 -+catalan ca_ES.ISO-8859-1 -+croatian hr_HR.ISO-8859-2 -+czech cs_CZ.ISO-8859-2 -+danish da_DK.ISO-8859-1 -+dansk da_DK.ISO-8859-1 -+deutsch de_DE.ISO-8859-1 -+dutch nl_NL.ISO-8859-1 -+eesti et_EE.ISO-8859-1 -+estonian et_EE.ISO-8859-1 -+finnish fi_FI.ISO-8859-1 -+français fr_FR.ISO-8859-1 -+french fr_FR.ISO-8859-1 -+galego gl_ES.ISO-8859-1 -+galician gl_ES.ISO-8859-1 -+german de_DE.ISO-8859-1 -+greek el_GR.ISO-8859-7 -+hebrew he_IL.ISO-8859-8 -+hrvatski hr_HR.ISO-8859-2 -+hungarian hu_HU.ISO-8859-2 -+icelandic is_IS.ISO-8859-1 -+italian it_IT.ISO-8859-1 -+japanese ja_JP.eucJP -+japanese.euc ja_JP.eucJP -+ja_JP ja_JP.eucJP -+ja_JP.ujis ja_JP.eucJP -+japanese.sjis ja_JP.SJIS -+korean ko_KR.eucKR -+korean.euc ko_KR.eucKR -+ko_KR ko_KR.eucKR -+lithuanian lt_LT.ISO-8859-13 -+no_NO nb_NO.ISO-8859-1 -+no_NO.ISO-8859-1 nb_NO.ISO-8859-1 -+norwegian nb_NO.ISO-8859-1 -+nynorsk nn_NO.ISO-8859-1 -+polish pl_PL.ISO-8859-2 -+portuguese pt_PT.ISO-8859-1 -+romanian ro_RO.ISO-8859-2 -+russian ru_RU.ISO-8859-5 -+slovak sk_SK.ISO-8859-2 -+slovene sl_SI.ISO-8859-2 -+slovenian sl_SI.ISO-8859-2 -+spanish es_ES.ISO-8859-1 -+swedish sv_SE.ISO-8859-1 -+thai th_TH.TIS-620 -+turkish tr_TR.ISO-8859-9 ---- lrzsz-0.12.20.safe/intl/localealias.c 1998-04-26 09:22:37.000000000 -0400 -+++ lrzsz-0.12.20/intl/localealias.c 2004-09-12 14:40:34.505725288 -0400 -@@ -1,20 +1,27 @@ --/* Handle aliases for locale names -- Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. -- Written by Ulrich Drepper , 1995. -+/* Handle aliases for locale names. -+ Copyright (C) 1995-1999, 2000-2001, 2003 Free Software Foundation, Inc. - -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation; either version 2, or (at your option) -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. - -- You should have received a copy of the GNU General Public License -- along with this program; if not, write to the Free Software Foundation, -- Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+/* Tell glibc's to provide a prototype for mempcpy(). -+ This must come before because may include -+ , and once has been included, it's too late. */ -+#ifndef _GNU_SOURCE -+# define _GNU_SOURCE 1 -+#endif - - #ifdef HAVE_CONFIG_H - # include -@@ -22,56 +29,45 @@ - - #include - #include -+#if defined _LIBC || defined HAVE___FSETLOCKING -+# include -+#endif - #include - - #ifdef __GNUC__ -+# undef alloca - # define alloca __builtin_alloca - # define HAVE_ALLOCA 1 - #else --# if defined HAVE_ALLOCA_H || defined _LIBC --# include -+# ifdef _MSC_VER -+# include -+# define alloca _alloca - # else --# ifdef _AIX -- #pragma alloca -+# if defined HAVE_ALLOCA_H || defined _LIBC -+# include - # else --# ifndef alloca -+# ifdef _AIX -+ #pragma alloca -+# else -+# ifndef alloca - char *alloca (); -+# endif - # endif - # endif - # endif - #endif - --#if defined STDC_HEADERS || defined _LIBC --# include --#else --char *getenv (); --# ifdef HAVE_MALLOC_H --# include --# else --void free (); --# endif --#endif -+#include -+#include - --#if defined HAVE_STRING_H || defined _LIBC --# ifndef _GNU_SOURCE --# define _GNU_SOURCE 1 --# endif --# include -+#include "gettextP.h" -+ -+#if ENABLE_RELOCATABLE -+# include "relocatable.h" - #else --# include --# ifndef memcpy --# define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num) --# endif --#endif --#if !HAVE_STRCHR && !defined _LIBC --# ifndef strchr --# define strchr index --# endif -+# define relocate(pathname) (pathname) - #endif - --#include "gettext.h" --#include "gettextP.h" -- - /* @@ end of prolog @@ */ - - #ifdef _LIBC -@@ -79,43 +75,49 @@ - because some ANSI C functions will require linking with this object - file and the name space must not be polluted. */ - # define strcasecmp __strcasecmp -+ -+# ifndef mempcpy -+# define mempcpy __mempcpy -+# endif -+# define HAVE_MEMPCPY 1 -+# define HAVE___FSETLOCKING 1 -+ -+/* We need locking here since we can be called from different places. */ -+# include -+ -+__libc_lock_define_initialized (static, lock); -+#endif -+ -+#ifndef internal_function -+# define internal_function - #endif - -+/* Some optimizations for glibc. */ -+#ifdef _LIBC -+# define FEOF(fp) feof_unlocked (fp) -+# define FGETS(buf, n, fp) fgets_unlocked (buf, n, fp) -+#else -+# define FEOF(fp) feof (fp) -+# define FGETS(buf, n, fp) fgets (buf, n, fp) -+#endif - --/* For those loosing systems which don't have `alloca' we have to add -+/* For those losing systems which don't have `alloca' we have to add - some additional code emulating it. */ - #ifdef HAVE_ALLOCA --/* Nothing has to be done. */ --# define ADD_BLOCK(list, address) /* nothing */ --# define FREE_BLOCKS(list) /* nothing */ -+# define freea(p) /* nothing */ - #else --struct block_list --{ -- void *address; -- struct block_list *next; --}; --# define ADD_BLOCK(list, addr) \ -- do { \ -- struct block_list *newp = (struct block_list *) malloc (sizeof (*newp)); \ -- /* If we cannot get a free block we cannot add the new element to \ -- the list. */ \ -- if (newp != NULL) { \ -- newp->address = (addr); \ -- newp->next = (list); \ -- (list) = newp; \ -- } \ -- } while (0) --# define FREE_BLOCKS(list) \ -- do { \ -- while (list != NULL) { \ -- struct block_list *old = list; \ -- list = list->next; \ -- free (old); \ -- } \ -- } while (0) --# undef alloca --# define alloca(size) (malloc (size)) --#endif /* have alloca */ -+# define alloca(n) malloc (n) -+# define freea(p) free (p) -+#endif -+ -+#if defined _LIBC_REENTRANT || HAVE_DECL_FGETS_UNLOCKED -+# undef fgets -+# define fgets(buf, len, s) fgets_unlocked (buf, len, s) -+#endif -+#if defined _LIBC_REENTRANT || HAVE_DECL_FEOF_UNLOCKED -+# undef feof -+# define feof(s) feof_unlocked (s) -+#endif - - - struct alias_map -@@ -125,26 +127,41 @@ - }; - - --static struct alias_map *map; --static size_t nmap = 0; --static size_t maxmap = 0; -+#ifndef _LIBC -+# define libc_freeres_ptr(decl) decl -+#endif -+ -+libc_freeres_ptr (static char *string_space); -+static size_t string_space_act; -+static size_t string_space_max; -+libc_freeres_ptr (static struct alias_map *map); -+static size_t nmap; -+static size_t maxmap; - - - /* Prototypes for local functions. */ --static size_t read_alias_file PARAMS ((const char *fname, int fname_len)); --static void extend_alias_table PARAMS ((void)); --static int alias_compare PARAMS ((const struct alias_map *map1, -- const struct alias_map *map2)); -+static size_t read_alias_file (const char *fname, int fname_len) -+ internal_function; -+static int extend_alias_table (void); -+static int alias_compare (const struct alias_map *map1, -+ const struct alias_map *map2); - - - const char * --_nl_expand_alias (name) -- const char *name; -+_nl_expand_alias (const char *name) - { -- static const char *locale_alias_path = LOCALE_ALIAS_PATH; -+ static const char *locale_alias_path; - struct alias_map *retval; -+ const char *result = NULL; - size_t added; - -+#ifdef _LIBC -+ __libc_lock_lock (lock); -+#endif -+ -+ if (locale_alias_path == NULL) -+ locale_alias_path = LOCALE_ALIAS_PATH; -+ - do - { - struct alias_map item; -@@ -154,15 +171,18 @@ - if (nmap > 0) - retval = (struct alias_map *) bsearch (&item, map, nmap, - sizeof (struct alias_map), -- (int (*) PARAMS ((const void *, -- const void *)) -+ (int (*) (const void *, -+ const void *) - ) alias_compare); - else - retval = NULL; - - /* We really found an alias. Return the value. */ - if (retval != NULL) -- return retval->value; -+ { -+ result = retval->value; -+ break; -+ } - - /* Perhaps we can find another alias file. */ - added = 0; -@@ -170,11 +190,12 @@ - { - const char *start; - -- while (locale_alias_path[0] == ':') -+ while (locale_alias_path[0] == PATH_SEPARATOR) - ++locale_alias_path; - start = locale_alias_path; - -- while (locale_alias_path[0] != '\0' && locale_alias_path[0] != ':') -+ while (locale_alias_path[0] != '\0' -+ && locale_alias_path[0] != PATH_SEPARATOR) - ++locale_alias_path; - - if (start < locale_alias_path) -@@ -183,78 +204,87 @@ - } - while (added != 0); - -- return NULL; -+#ifdef _LIBC -+ __libc_lock_unlock (lock); -+#endif -+ -+ return result; - } - - - static size_t --read_alias_file (fname, fname_len) -- const char *fname; -- int fname_len; -+internal_function -+read_alias_file (const char *fname, int fname_len) - { --#ifndef HAVE_ALLOCA -- struct block_list *block_list = NULL; --#endif - FILE *fp; - char *full_fname; - size_t added; - static const char aliasfile[] = "/locale.alias"; - - full_fname = (char *) alloca (fname_len + sizeof aliasfile); -- ADD_BLOCK (block_list, full_fname); -+#ifdef HAVE_MEMPCPY -+ mempcpy (mempcpy (full_fname, fname, fname_len), -+ aliasfile, sizeof aliasfile); -+#else - memcpy (full_fname, fname, fname_len); - memcpy (&full_fname[fname_len], aliasfile, sizeof aliasfile); -+#endif - -- fp = fopen (full_fname, "r"); -+ fp = fopen (relocate (full_fname), "r"); -+ freea (full_fname); - if (fp == NULL) -- { -- FREE_BLOCKS (block_list); -- return 0; -- } -+ return 0; -+ -+#ifdef HAVE___FSETLOCKING -+ /* No threads present. */ -+ __fsetlocking (fp, FSETLOCKING_BYCALLER); -+#endif - - added = 0; -- while (!feof (fp)) -+ while (!FEOF (fp)) - { - /* It is a reasonable approach to use a fix buffer here because - a) we are only interested in the first two fields - b) these fields must be usable as file names and so must not - be that long -- */ -- char buf[BUFSIZ]; -+ We avoid a multi-kilobyte buffer here since this would use up -+ stack space which we might not have if the program ran out of -+ memory. */ -+ char buf[400]; - char *alias; - char *value; - char *cp; - -- if (fgets (buf, BUFSIZ, fp) == NULL) -+ if (FGETS (buf, sizeof buf, fp) == NULL) - /* EOF reached. */ - break; - - cp = buf; - /* Ignore leading white space. */ -- while (isspace (cp[0])) -+ while (isspace ((unsigned char) cp[0])) - ++cp; - - /* A leading '#' signals a comment line. */ - if (cp[0] != '\0' && cp[0] != '#') - { - alias = cp++; -- while (cp[0] != '\0' && !isspace (cp[0])) -+ while (cp[0] != '\0' && !isspace ((unsigned char) cp[0])) - ++cp; - /* Terminate alias name. */ - if (cp[0] != '\0') - *cp++ = '\0'; - - /* Now look for the beginning of the value. */ -- while (isspace (cp[0])) -+ while (isspace ((unsigned char) cp[0])) - ++cp; - - if (cp[0] != '\0') - { -- char *tp; -- size_t len; -+ size_t alias_len; -+ size_t value_len; - - value = cp++; -- while (cp[0] != '\0' && !isspace (cp[0])) -+ while (cp[0] != '\0' && !isspace ((unsigned char) cp[0])) - ++cp; - /* Terminate value. */ - if (cp[0] == '\n') -@@ -269,28 +299,44 @@ - *cp++ = '\0'; - - if (nmap >= maxmap) -- extend_alias_table (); -- -- /* We cannot depend on strdup available in the libc. Sigh! */ -- len = strlen (alias) + 1; -- tp = (char *) malloc (len); -- if (tp == NULL) -- { -- FREE_BLOCKS (block_list); -+ if (__builtin_expect (extend_alias_table (), 0)) - return added; -- } -- memcpy (tp, alias, len); -- map[nmap].alias = tp; - -- len = strlen (value) + 1; -- tp = (char *) malloc (len); -- if (tp == NULL) -+ alias_len = strlen (alias) + 1; -+ value_len = strlen (value) + 1; -+ -+ if (string_space_act + alias_len + value_len > string_space_max) - { -- FREE_BLOCKS (block_list); -- return added; -+ /* Increase size of memory pool. */ -+ size_t new_size = (string_space_max -+ + (alias_len + value_len > 1024 -+ ? alias_len + value_len : 1024)); -+ char *new_pool = (char *) realloc (string_space, new_size); -+ if (new_pool == NULL) -+ return added; -+ -+ if (__builtin_expect (string_space != new_pool, 0)) -+ { -+ size_t i; -+ -+ for (i = 0; i < nmap; i++) -+ { -+ map[i].alias += new_pool - string_space; -+ map[i].value += new_pool - string_space; -+ } -+ } -+ -+ string_space = new_pool; -+ string_space_max = new_size; - } -- memcpy (tp, value, len); -- map[nmap].value = tp; -+ -+ map[nmap].alias = memcpy (&string_space[string_space_act], -+ alias, alias_len); -+ string_space_act += alias_len; -+ -+ map[nmap].value = memcpy (&string_space[string_space_act], -+ value, value_len); -+ string_space_act += value_len; - - ++nmap; - ++added; -@@ -299,14 +345,11 @@ - - /* Possibly not the whole line fits into the buffer. Ignore - the rest of the line. */ -- while (strchr (cp, '\n') == NULL) -- { -- cp = buf; -- if (fgets (buf, BUFSIZ, fp) == NULL) -- /* Make sure the inner loop will be left. The outer loop -- will exit at the `feof' test. */ -- *cp = '\n'; -- } -+ while (strchr (buf, '\n') == NULL) -+ if (FGETS (buf, sizeof buf, fp) == NULL) -+ /* Make sure the inner loop will be left. The outer loop -+ will exit at the `feof' test. */ -+ break; - } - - /* Should we test for ferror()? I think we have to silently ignore -@@ -315,40 +358,33 @@ - - if (added > 0) - qsort (map, nmap, sizeof (struct alias_map), -- (int (*) PARAMS ((const void *, const void *))) alias_compare); -+ (int (*) (const void *, const void *)) alias_compare); - -- FREE_BLOCKS (block_list); - return added; - } - - --static void -+static int - extend_alias_table () - { - size_t new_size; - struct alias_map *new_map; - - new_size = maxmap == 0 ? 100 : 2 * maxmap; -- new_map = (struct alias_map *) malloc (new_size -- * sizeof (struct alias_map)); -+ new_map = (struct alias_map *) realloc (map, (new_size -+ * sizeof (struct alias_map))); - if (new_map == NULL) - /* Simply don't extend: we don't have any more core. */ -- return; -- -- memcpy (new_map, map, nmap * sizeof (struct alias_map)); -- -- if (maxmap != 0) -- free (map); -+ return -1; - - map = new_map; - maxmap = new_size; -+ return 0; - } - - - static int --alias_compare (map1, map2) -- const struct alias_map *map1; -- const struct alias_map *map2; -+alias_compare (const struct alias_map *map1, const struct alias_map *map2) - { - #if defined _LIBC || defined HAVE_STRCASECMP - return strcasecmp (map1->alias, map2->alias); ---- lrzsz-0.12.20.safe/intl/localename.c 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/localename.c 2004-09-12 14:40:34.510724528 -0400 -@@ -0,0 +1,1142 @@ -+/* Determine the current selected locale. -+ Copyright (C) 1995-1999, 2000-2004 Free Software Foundation, Inc. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+/* Written by Ulrich Drepper , 1995. */ -+/* Win32 code written by Tor Lillqvist . */ -+ -+#ifdef HAVE_CONFIG_H -+# include -+#endif -+ -+#include -+#include -+ -+#if defined _WIN32 || defined __WIN32__ -+# undef WIN32 /* avoid warning on mingw32 */ -+# define WIN32 -+#endif -+ -+#ifdef WIN32 -+# define WIN32_LEAN_AND_MEAN -+# include -+/* List of language codes, sorted by value: -+ 0x01 LANG_ARABIC -+ 0x02 LANG_BULGARIAN -+ 0x03 LANG_CATALAN -+ 0x04 LANG_CHINESE -+ 0x05 LANG_CZECH -+ 0x06 LANG_DANISH -+ 0x07 LANG_GERMAN -+ 0x08 LANG_GREEK -+ 0x09 LANG_ENGLISH -+ 0x0a LANG_SPANISH -+ 0x0b LANG_FINNISH -+ 0x0c LANG_FRENCH -+ 0x0d LANG_HEBREW -+ 0x0e LANG_HUNGARIAN -+ 0x0f LANG_ICELANDIC -+ 0x10 LANG_ITALIAN -+ 0x11 LANG_JAPANESE -+ 0x12 LANG_KOREAN -+ 0x13 LANG_DUTCH -+ 0x14 LANG_NORWEGIAN -+ 0x15 LANG_POLISH -+ 0x16 LANG_PORTUGUESE -+ 0x17 LANG_RHAETO_ROMANCE -+ 0x18 LANG_ROMANIAN -+ 0x19 LANG_RUSSIAN -+ 0x1a LANG_CROATIAN == LANG_SERBIAN -+ 0x1b LANG_SLOVAK -+ 0x1c LANG_ALBANIAN -+ 0x1d LANG_SWEDISH -+ 0x1e LANG_THAI -+ 0x1f LANG_TURKISH -+ 0x20 LANG_URDU -+ 0x21 LANG_INDONESIAN -+ 0x22 LANG_UKRAINIAN -+ 0x23 LANG_BELARUSIAN -+ 0x24 LANG_SLOVENIAN -+ 0x25 LANG_ESTONIAN -+ 0x26 LANG_LATVIAN -+ 0x27 LANG_LITHUANIAN -+ 0x28 LANG_TAJIK -+ 0x29 LANG_FARSI -+ 0x2a LANG_VIETNAMESE -+ 0x2b LANG_ARMENIAN -+ 0x2c LANG_AZERI -+ 0x2d LANG_BASQUE -+ 0x2e LANG_SORBIAN -+ 0x2f LANG_MACEDONIAN -+ 0x30 LANG_SUTU -+ 0x31 LANG_TSONGA -+ 0x32 LANG_TSWANA -+ 0x33 LANG_VENDA -+ 0x34 LANG_XHOSA -+ 0x35 LANG_ZULU -+ 0x36 LANG_AFRIKAANS -+ 0x37 LANG_GEORGIAN -+ 0x38 LANG_FAEROESE -+ 0x39 LANG_HINDI -+ 0x3a LANG_MALTESE -+ 0x3b LANG_SAAMI -+ 0x3c LANG_GAELIC -+ 0x3d LANG_YIDDISH -+ 0x3e LANG_MALAY -+ 0x3f LANG_KAZAK -+ 0x40 LANG_KYRGYZ -+ 0x41 LANG_SWAHILI -+ 0x42 LANG_TURKMEN -+ 0x43 LANG_UZBEK -+ 0x44 LANG_TATAR -+ 0x45 LANG_BENGALI -+ 0x46 LANG_PUNJABI -+ 0x47 LANG_GUJARATI -+ 0x48 LANG_ORIYA -+ 0x49 LANG_TAMIL -+ 0x4a LANG_TELUGU -+ 0x4b LANG_KANNADA -+ 0x4c LANG_MALAYALAM -+ 0x4d LANG_ASSAMESE -+ 0x4e LANG_MARATHI -+ 0x4f LANG_SANSKRIT -+ 0x50 LANG_MONGOLIAN -+ 0x51 LANG_TIBETAN -+ 0x52 LANG_WELSH -+ 0x53 LANG_CAMBODIAN -+ 0x54 LANG_LAO -+ 0x55 LANG_BURMESE -+ 0x56 LANG_GALICIAN -+ 0x57 LANG_KONKANI -+ 0x58 LANG_MANIPURI -+ 0x59 LANG_SINDHI -+ 0x5a LANG_SYRIAC -+ 0x5b LANG_SINHALESE -+ 0x5c LANG_CHEROKEE -+ 0x5d LANG_INUKTITUT -+ 0x5e LANG_AMHARIC -+ 0x5f LANG_TAMAZIGHT -+ 0x60 LANG_KASHMIRI -+ 0x61 LANG_NEPALI -+ 0x62 LANG_FRISIAN -+ 0x63 LANG_PASHTO -+ 0x64 LANG_TAGALOG -+ 0x65 LANG_DIVEHI -+ 0x66 LANG_EDO -+ 0x67 LANG_FULFULDE -+ 0x68 LANG_HAUSA -+ 0x69 LANG_IBIBIO -+ 0x6a LANG_YORUBA -+ 0x70 LANG_IGBO -+ 0x71 LANG_KANURI -+ 0x72 LANG_OROMO -+ 0x73 LANG_TIGRINYA -+ 0x74 LANG_GUARANI -+ 0x75 LANG_HAWAIIAN -+ 0x76 LANG_LATIN -+ 0x77 LANG_SOMALI -+ 0x78 LANG_YI -+ 0x79 LANG_PAPIAMENTU -+*/ -+/* Mingw headers don't have latest language and sublanguage codes. */ -+# ifndef LANG_AFRIKAANS -+# define LANG_AFRIKAANS 0x36 -+# endif -+# ifndef LANG_ALBANIAN -+# define LANG_ALBANIAN 0x1c -+# endif -+# ifndef LANG_AMHARIC -+# define LANG_AMHARIC 0x5e -+# endif -+# ifndef LANG_ARABIC -+# define LANG_ARABIC 0x01 -+# endif -+# ifndef LANG_ARMENIAN -+# define LANG_ARMENIAN 0x2b -+# endif -+# ifndef LANG_ASSAMESE -+# define LANG_ASSAMESE 0x4d -+# endif -+# ifndef LANG_AZERI -+# define LANG_AZERI 0x2c -+# endif -+# ifndef LANG_BASQUE -+# define LANG_BASQUE 0x2d -+# endif -+# ifndef LANG_BELARUSIAN -+# define LANG_BELARUSIAN 0x23 -+# endif -+# ifndef LANG_BENGALI -+# define LANG_BENGALI 0x45 -+# endif -+# ifndef LANG_BURMESE -+# define LANG_BURMESE 0x55 -+# endif -+# ifndef LANG_CAMBODIAN -+# define LANG_CAMBODIAN 0x53 -+# endif -+# ifndef LANG_CATALAN -+# define LANG_CATALAN 0x03 -+# endif -+# ifndef LANG_CHEROKEE -+# define LANG_CHEROKEE 0x5c -+# endif -+# ifndef LANG_DIVEHI -+# define LANG_DIVEHI 0x65 -+# endif -+# ifndef LANG_EDO -+# define LANG_EDO 0x66 -+# endif -+# ifndef LANG_ESTONIAN -+# define LANG_ESTONIAN 0x25 -+# endif -+# ifndef LANG_FAEROESE -+# define LANG_FAEROESE 0x38 -+# endif -+# ifndef LANG_FARSI -+# define LANG_FARSI 0x29 -+# endif -+# ifndef LANG_FRISIAN -+# define LANG_FRISIAN 0x62 -+# endif -+# ifndef LANG_FULFULDE -+# define LANG_FULFULDE 0x67 -+# endif -+# ifndef LANG_GAELIC -+# define LANG_GAELIC 0x3c -+# endif -+# ifndef LANG_GALICIAN -+# define LANG_GALICIAN 0x56 -+# endif -+# ifndef LANG_GEORGIAN -+# define LANG_GEORGIAN 0x37 -+# endif -+# ifndef LANG_GUARANI -+# define LANG_GUARANI 0x74 -+# endif -+# ifndef LANG_GUJARATI -+# define LANG_GUJARATI 0x47 -+# endif -+# ifndef LANG_HAUSA -+# define LANG_HAUSA 0x68 -+# endif -+# ifndef LANG_HAWAIIAN -+# define LANG_HAWAIIAN 0x75 -+# endif -+# ifndef LANG_HEBREW -+# define LANG_HEBREW 0x0d -+# endif -+# ifndef LANG_HINDI -+# define LANG_HINDI 0x39 -+# endif -+# ifndef LANG_IBIBIO -+# define LANG_IBIBIO 0x69 -+# endif -+# ifndef LANG_IGBO -+# define LANG_IGBO 0x70 -+# endif -+# ifndef LANG_INDONESIAN -+# define LANG_INDONESIAN 0x21 -+# endif -+# ifndef LANG_INUKTITUT -+# define LANG_INUKTITUT 0x5d -+# endif -+# ifndef LANG_KANNADA -+# define LANG_KANNADA 0x4b -+# endif -+# ifndef LANG_KANURI -+# define LANG_KANURI 0x71 -+# endif -+# ifndef LANG_KASHMIRI -+# define LANG_KASHMIRI 0x60 -+# endif -+# ifndef LANG_KAZAK -+# define LANG_KAZAK 0x3f -+# endif -+# ifndef LANG_KONKANI -+# define LANG_KONKANI 0x57 -+# endif -+# ifndef LANG_KYRGYZ -+# define LANG_KYRGYZ 0x40 -+# endif -+# ifndef LANG_LAO -+# define LANG_LAO 0x54 -+# endif -+# ifndef LANG_LATIN -+# define LANG_LATIN 0x76 -+# endif -+# ifndef LANG_LATVIAN -+# define LANG_LATVIAN 0x26 -+# endif -+# ifndef LANG_LITHUANIAN -+# define LANG_LITHUANIAN 0x27 -+# endif -+# ifndef LANG_MACEDONIAN -+# define LANG_MACEDONIAN 0x2f -+# endif -+# ifndef LANG_MALAY -+# define LANG_MALAY 0x3e -+# endif -+# ifndef LANG_MALAYALAM -+# define LANG_MALAYALAM 0x4c -+# endif -+# ifndef LANG_MALTESE -+# define LANG_MALTESE 0x3a -+# endif -+# ifndef LANG_MANIPURI -+# define LANG_MANIPURI 0x58 -+# endif -+# ifndef LANG_MARATHI -+# define LANG_MARATHI 0x4e -+# endif -+# ifndef LANG_MONGOLIAN -+# define LANG_MONGOLIAN 0x50 -+# endif -+# ifndef LANG_NEPALI -+# define LANG_NEPALI 0x61 -+# endif -+# ifndef LANG_ORIYA -+# define LANG_ORIYA 0x48 -+# endif -+# ifndef LANG_OROMO -+# define LANG_OROMO 0x72 -+# endif -+# ifndef LANG_PAPIAMENTU -+# define LANG_PAPIAMENTU 0x79 -+# endif -+# ifndef LANG_PASHTO -+# define LANG_PASHTO 0x63 -+# endif -+# ifndef LANG_PUNJABI -+# define LANG_PUNJABI 0x46 -+# endif -+# ifndef LANG_RHAETO_ROMANCE -+# define LANG_RHAETO_ROMANCE 0x17 -+# endif -+# ifndef LANG_SAAMI -+# define LANG_SAAMI 0x3b -+# endif -+# ifndef LANG_SANSKRIT -+# define LANG_SANSKRIT 0x4f -+# endif -+# ifndef LANG_SERBIAN -+# define LANG_SERBIAN 0x1a -+# endif -+# ifndef LANG_SINDHI -+# define LANG_SINDHI 0x59 -+# endif -+# ifndef LANG_SINHALESE -+# define LANG_SINHALESE 0x5b -+# endif -+# ifndef LANG_SLOVAK -+# define LANG_SLOVAK 0x1b -+# endif -+# ifndef LANG_SOMALI -+# define LANG_SOMALI 0x77 -+# endif -+# ifndef LANG_SORBIAN -+# define LANG_SORBIAN 0x2e -+# endif -+# ifndef LANG_SUTU -+# define LANG_SUTU 0x30 -+# endif -+# ifndef LANG_SWAHILI -+# define LANG_SWAHILI 0x41 -+# endif -+# ifndef LANG_SYRIAC -+# define LANG_SYRIAC 0x5a -+# endif -+# ifndef LANG_TAGALOG -+# define LANG_TAGALOG 0x64 -+# endif -+# ifndef LANG_TAJIK -+# define LANG_TAJIK 0x28 -+# endif -+# ifndef LANG_TAMAZIGHT -+# define LANG_TAMAZIGHT 0x5f -+# endif -+# ifndef LANG_TAMIL -+# define LANG_TAMIL 0x49 -+# endif -+# ifndef LANG_TATAR -+# define LANG_TATAR 0x44 -+# endif -+# ifndef LANG_TELUGU -+# define LANG_TELUGU 0x4a -+# endif -+# ifndef LANG_THAI -+# define LANG_THAI 0x1e -+# endif -+# ifndef LANG_TIBETAN -+# define LANG_TIBETAN 0x51 -+# endif -+# ifndef LANG_TIGRINYA -+# define LANG_TIGRINYA 0x73 -+# endif -+# ifndef LANG_TSONGA -+# define LANG_TSONGA 0x31 -+# endif -+# ifndef LANG_TSWANA -+# define LANG_TSWANA 0x32 -+# endif -+# ifndef LANG_TURKMEN -+# define LANG_TURKMEN 0x42 -+# endif -+# ifndef LANG_UKRAINIAN -+# define LANG_UKRAINIAN 0x22 -+# endif -+# ifndef LANG_URDU -+# define LANG_URDU 0x20 -+# endif -+# ifndef LANG_UZBEK -+# define LANG_UZBEK 0x43 -+# endif -+# ifndef LANG_VENDA -+# define LANG_VENDA 0x33 -+# endif -+# ifndef LANG_VIETNAMESE -+# define LANG_VIETNAMESE 0x2a -+# endif -+# ifndef LANG_WELSH -+# define LANG_WELSH 0x52 -+# endif -+# ifndef LANG_XHOSA -+# define LANG_XHOSA 0x34 -+# endif -+# ifndef LANG_YI -+# define LANG_YI 0x78 -+# endif -+# ifndef LANG_YIDDISH -+# define LANG_YIDDISH 0x3d -+# endif -+# ifndef LANG_YORUBA -+# define LANG_YORUBA 0x6a -+# endif -+# ifndef LANG_ZULU -+# define LANG_ZULU 0x35 -+# endif -+# ifndef SUBLANG_ARABIC_SAUDI_ARABIA -+# define SUBLANG_ARABIC_SAUDI_ARABIA 0x01 -+# endif -+# ifndef SUBLANG_ARABIC_IRAQ -+# define SUBLANG_ARABIC_IRAQ 0x02 -+# endif -+# ifndef SUBLANG_ARABIC_EGYPT -+# define SUBLANG_ARABIC_EGYPT 0x03 -+# endif -+# ifndef SUBLANG_ARABIC_LIBYA -+# define SUBLANG_ARABIC_LIBYA 0x04 -+# endif -+# ifndef SUBLANG_ARABIC_ALGERIA -+# define SUBLANG_ARABIC_ALGERIA 0x05 -+# endif -+# ifndef SUBLANG_ARABIC_MOROCCO -+# define SUBLANG_ARABIC_MOROCCO 0x06 -+# endif -+# ifndef SUBLANG_ARABIC_TUNISIA -+# define SUBLANG_ARABIC_TUNISIA 0x07 -+# endif -+# ifndef SUBLANG_ARABIC_OMAN -+# define SUBLANG_ARABIC_OMAN 0x08 -+# endif -+# ifndef SUBLANG_ARABIC_YEMEN -+# define SUBLANG_ARABIC_YEMEN 0x09 -+# endif -+# ifndef SUBLANG_ARABIC_SYRIA -+# define SUBLANG_ARABIC_SYRIA 0x0a -+# endif -+# ifndef SUBLANG_ARABIC_JORDAN -+# define SUBLANG_ARABIC_JORDAN 0x0b -+# endif -+# ifndef SUBLANG_ARABIC_LEBANON -+# define SUBLANG_ARABIC_LEBANON 0x0c -+# endif -+# ifndef SUBLANG_ARABIC_KUWAIT -+# define SUBLANG_ARABIC_KUWAIT 0x0d -+# endif -+# ifndef SUBLANG_ARABIC_UAE -+# define SUBLANG_ARABIC_UAE 0x0e -+# endif -+# ifndef SUBLANG_ARABIC_BAHRAIN -+# define SUBLANG_ARABIC_BAHRAIN 0x0f -+# endif -+# ifndef SUBLANG_ARABIC_QATAR -+# define SUBLANG_ARABIC_QATAR 0x10 -+# endif -+# ifndef SUBLANG_AZERI_LATIN -+# define SUBLANG_AZERI_LATIN 0x01 -+# endif -+# ifndef SUBLANG_AZERI_CYRILLIC -+# define SUBLANG_AZERI_CYRILLIC 0x02 -+# endif -+# ifndef SUBLANG_BENGALI_INDIA -+# define SUBLANG_BENGALI_INDIA 0x00 -+# endif -+# ifndef SUBLANG_BENGALI_BANGLADESH -+# define SUBLANG_BENGALI_BANGLADESH 0x01 -+# endif -+# ifndef SUBLANG_CHINESE_MACAU -+# define SUBLANG_CHINESE_MACAU 0x05 -+# endif -+# ifndef SUBLANG_ENGLISH_SOUTH_AFRICA -+# define SUBLANG_ENGLISH_SOUTH_AFRICA 0x07 -+# endif -+# ifndef SUBLANG_ENGLISH_JAMAICA -+# define SUBLANG_ENGLISH_JAMAICA 0x08 -+# endif -+# ifndef SUBLANG_ENGLISH_CARIBBEAN -+# define SUBLANG_ENGLISH_CARIBBEAN 0x09 -+# endif -+# ifndef SUBLANG_ENGLISH_BELIZE -+# define SUBLANG_ENGLISH_BELIZE 0x0a -+# endif -+# ifndef SUBLANG_ENGLISH_TRINIDAD -+# define SUBLANG_ENGLISH_TRINIDAD 0x0b -+# endif -+# ifndef SUBLANG_ENGLISH_ZIMBABWE -+# define SUBLANG_ENGLISH_ZIMBABWE 0x0c -+# endif -+# ifndef SUBLANG_ENGLISH_PHILIPPINES -+# define SUBLANG_ENGLISH_PHILIPPINES 0x0d -+# endif -+# ifndef SUBLANG_ENGLISH_INDONESIA -+# define SUBLANG_ENGLISH_INDONESIA 0x0e -+# endif -+# ifndef SUBLANG_ENGLISH_HONGKONG -+# define SUBLANG_ENGLISH_HONGKONG 0x0f -+# endif -+# ifndef SUBLANG_ENGLISH_INDIA -+# define SUBLANG_ENGLISH_INDIA 0x10 -+# endif -+# ifndef SUBLANG_ENGLISH_MALAYSIA -+# define SUBLANG_ENGLISH_MALAYSIA 0x11 -+# endif -+# ifndef SUBLANG_ENGLISH_SINGAPORE -+# define SUBLANG_ENGLISH_SINGAPORE 0x12 -+# endif -+# ifndef SUBLANG_FRENCH_LUXEMBOURG -+# define SUBLANG_FRENCH_LUXEMBOURG 0x05 -+# endif -+# ifndef SUBLANG_FRENCH_MONACO -+# define SUBLANG_FRENCH_MONACO 0x06 -+# endif -+# ifndef SUBLANG_FRENCH_WESTINDIES -+# define SUBLANG_FRENCH_WESTINDIES 0x07 -+# endif -+# ifndef SUBLANG_FRENCH_REUNION -+# define SUBLANG_FRENCH_REUNION 0x08 -+# endif -+# ifndef SUBLANG_FRENCH_CONGO -+# define SUBLANG_FRENCH_CONGO 0x09 -+# endif -+# ifndef SUBLANG_FRENCH_SENEGAL -+# define SUBLANG_FRENCH_SENEGAL 0x0a -+# endif -+# ifndef SUBLANG_FRENCH_CAMEROON -+# define SUBLANG_FRENCH_CAMEROON 0x0b -+# endif -+# ifndef SUBLANG_FRENCH_COTEDIVOIRE -+# define SUBLANG_FRENCH_COTEDIVOIRE 0x0c -+# endif -+# ifndef SUBLANG_FRENCH_MALI -+# define SUBLANG_FRENCH_MALI 0x0d -+# endif -+# ifndef SUBLANG_FRENCH_MOROCCO -+# define SUBLANG_FRENCH_MOROCCO 0x0e -+# endif -+# ifndef SUBLANG_FRENCH_HAITI -+# define SUBLANG_FRENCH_HAITI 0x0f -+# endif -+# ifndef SUBLANG_GERMAN_LUXEMBOURG -+# define SUBLANG_GERMAN_LUXEMBOURG 0x04 -+# endif -+# ifndef SUBLANG_GERMAN_LIECHTENSTEIN -+# define SUBLANG_GERMAN_LIECHTENSTEIN 0x05 -+# endif -+# ifndef SUBLANG_KASHMIRI_INDIA -+# define SUBLANG_KASHMIRI_INDIA 0x02 -+# endif -+# ifndef SUBLANG_MALAY_MALAYSIA -+# define SUBLANG_MALAY_MALAYSIA 0x01 -+# endif -+# ifndef SUBLANG_MALAY_BRUNEI_DARUSSALAM -+# define SUBLANG_MALAY_BRUNEI_DARUSSALAM 0x02 -+# endif -+# ifndef SUBLANG_NEPALI_INDIA -+# define SUBLANG_NEPALI_INDIA 0x02 -+# endif -+# ifndef SUBLANG_PUNJABI_INDIA -+# define SUBLANG_PUNJABI_INDIA 0x00 -+# endif -+# ifndef SUBLANG_PUNJABI_PAKISTAN -+# define SUBLANG_PUNJABI_PAKISTAN 0x01 -+# endif -+# ifndef SUBLANG_ROMANIAN_ROMANIA -+# define SUBLANG_ROMANIAN_ROMANIA 0x00 -+# endif -+# ifndef SUBLANG_ROMANIAN_MOLDOVA -+# define SUBLANG_ROMANIAN_MOLDOVA 0x01 -+# endif -+# ifndef SUBLANG_SERBIAN_LATIN -+# define SUBLANG_SERBIAN_LATIN 0x02 -+# endif -+# ifndef SUBLANG_SERBIAN_CYRILLIC -+# define SUBLANG_SERBIAN_CYRILLIC 0x03 -+# endif -+# ifndef SUBLANG_SINDHI_INDIA -+# define SUBLANG_SINDHI_INDIA 0x00 -+# endif -+# ifndef SUBLANG_SINDHI_PAKISTAN -+# define SUBLANG_SINDHI_PAKISTAN 0x01 -+# endif -+# ifndef SUBLANG_SPANISH_GUATEMALA -+# define SUBLANG_SPANISH_GUATEMALA 0x04 -+# endif -+# ifndef SUBLANG_SPANISH_COSTA_RICA -+# define SUBLANG_SPANISH_COSTA_RICA 0x05 -+# endif -+# ifndef SUBLANG_SPANISH_PANAMA -+# define SUBLANG_SPANISH_PANAMA 0x06 -+# endif -+# ifndef SUBLANG_SPANISH_DOMINICAN_REPUBLIC -+# define SUBLANG_SPANISH_DOMINICAN_REPUBLIC 0x07 -+# endif -+# ifndef SUBLANG_SPANISH_VENEZUELA -+# define SUBLANG_SPANISH_VENEZUELA 0x08 -+# endif -+# ifndef SUBLANG_SPANISH_COLOMBIA -+# define SUBLANG_SPANISH_COLOMBIA 0x09 -+# endif -+# ifndef SUBLANG_SPANISH_PERU -+# define SUBLANG_SPANISH_PERU 0x0a -+# endif -+# ifndef SUBLANG_SPANISH_ARGENTINA -+# define SUBLANG_SPANISH_ARGENTINA 0x0b -+# endif -+# ifndef SUBLANG_SPANISH_ECUADOR -+# define SUBLANG_SPANISH_ECUADOR 0x0c -+# endif -+# ifndef SUBLANG_SPANISH_CHILE -+# define SUBLANG_SPANISH_CHILE 0x0d -+# endif -+# ifndef SUBLANG_SPANISH_URUGUAY -+# define SUBLANG_SPANISH_URUGUAY 0x0e -+# endif -+# ifndef SUBLANG_SPANISH_PARAGUAY -+# define SUBLANG_SPANISH_PARAGUAY 0x0f -+# endif -+# ifndef SUBLANG_SPANISH_BOLIVIA -+# define SUBLANG_SPANISH_BOLIVIA 0x10 -+# endif -+# ifndef SUBLANG_SPANISH_EL_SALVADOR -+# define SUBLANG_SPANISH_EL_SALVADOR 0x11 -+# endif -+# ifndef SUBLANG_SPANISH_HONDURAS -+# define SUBLANG_SPANISH_HONDURAS 0x12 -+# endif -+# ifndef SUBLANG_SPANISH_NICARAGUA -+# define SUBLANG_SPANISH_NICARAGUA 0x13 -+# endif -+# ifndef SUBLANG_SPANISH_PUERTO_RICO -+# define SUBLANG_SPANISH_PUERTO_RICO 0x14 -+# endif -+# ifndef SUBLANG_SWEDISH_FINLAND -+# define SUBLANG_SWEDISH_FINLAND 0x02 -+# endif -+# ifndef SUBLANG_TAMAZIGHT_ARABIC -+# define SUBLANG_TAMAZIGHT_ARABIC 0x01 -+# endif -+# ifndef SUBLANG_TAMAZIGHT_LATIN -+# define SUBLANG_TAMAZIGHT_LATIN 0x02 -+# endif -+# ifndef SUBLANG_TIGRINYA_ETHIOPIA -+# define SUBLANG_TIGRINYA_ETHIOPIA 0x00 -+# endif -+# ifndef SUBLANG_TIGRINYA_ERITREA -+# define SUBLANG_TIGRINYA_ERITREA 0x01 -+# endif -+# ifndef SUBLANG_URDU_PAKISTAN -+# define SUBLANG_URDU_PAKISTAN 0x01 -+# endif -+# ifndef SUBLANG_URDU_INDIA -+# define SUBLANG_URDU_INDIA 0x02 -+# endif -+# ifndef SUBLANG_UZBEK_LATIN -+# define SUBLANG_UZBEK_LATIN 0x01 -+# endif -+# ifndef SUBLANG_UZBEK_CYRILLIC -+# define SUBLANG_UZBEK_CYRILLIC 0x02 -+# endif -+#endif -+ -+/* XPG3 defines the result of 'setlocale (category, NULL)' as: -+ "Directs 'setlocale()' to query 'category' and return the current -+ setting of 'local'." -+ However it does not specify the exact format. Neither do SUSV2 and -+ ISO C 99. So we can use this feature only on selected systems (e.g. -+ those using GNU C Library). */ -+#if defined _LIBC || (defined __GNU_LIBRARY__ && __GNU_LIBRARY__ >= 2) -+# define HAVE_LOCALE_NULL -+#endif -+ -+/* Determine the current locale's name, and canonicalize it into XPG syntax -+ language[_territory[.codeset]][@modifier] -+ The codeset part in the result is not reliable; the locale_charset() -+ should be used for codeset information instead. -+ The result must not be freed; it is statically allocated. */ -+ -+const char * -+_nl_locale_name (int category, const char *categoryname) -+{ -+ const char *retval; -+ -+#ifndef WIN32 -+ -+ /* Use the POSIX methods of looking to 'LC_ALL', 'LC_xxx', and 'LANG'. -+ On some systems this can be done by the 'setlocale' function itself. */ -+# if defined HAVE_SETLOCALE && defined HAVE_LC_MESSAGES && defined HAVE_LOCALE_NULL -+ retval = setlocale (category, NULL); -+# else -+ /* Setting of LC_ALL overwrites all other. */ -+ retval = getenv ("LC_ALL"); -+ if (retval == NULL || retval[0] == '\0') -+ { -+ /* Next comes the name of the desired category. */ -+ retval = getenv (categoryname); -+ if (retval == NULL || retval[0] == '\0') -+ { -+ /* Last possibility is the LANG environment variable. */ -+ retval = getenv ("LANG"); -+ if (retval == NULL || retval[0] == '\0') -+ /* We use C as the default domain. POSIX says this is -+ implementation defined. */ -+ retval = "C"; -+ } -+ } -+# endif -+ -+ return retval; -+ -+#else /* WIN32 */ -+ -+ /* Return an XPG style locale name language[_territory][@modifier]. -+ Don't even bother determining the codeset; it's not useful in this -+ context, because message catalogs are not specific to a single -+ codeset. */ -+ -+ LCID lcid; -+ LANGID langid; -+ int primary, sub; -+ -+ /* Let the user override the system settings through environment -+ variables, as on POSIX systems. */ -+ retval = getenv ("LC_ALL"); -+ if (retval != NULL && retval[0] != '\0') -+ return retval; -+ retval = getenv (categoryname); -+ if (retval != NULL && retval[0] != '\0') -+ return retval; -+ retval = getenv ("LANG"); -+ if (retval != NULL && retval[0] != '\0') -+ return retval; -+ -+ /* Use native Win32 API locale ID. */ -+ lcid = GetThreadLocale (); -+ -+ /* Strip off the sorting rules, keep only the language part. */ -+ langid = LANGIDFROMLCID (lcid); -+ -+ /* Split into language and territory part. */ -+ primary = PRIMARYLANGID (langid); -+ sub = SUBLANGID (langid); -+ -+ /* Dispatch on language. -+ See also http://www.unicode.org/unicode/onlinedat/languages.html . -+ For details about languages, see http://www.ethnologue.com/ . */ -+ switch (primary) -+ { -+ case LANG_AFRIKAANS: return "af_ZA"; -+ case LANG_ALBANIAN: return "sq_AL"; -+ case LANG_AMHARIC: return "am_ET"; -+ case LANG_ARABIC: -+ switch (sub) -+ { -+ case SUBLANG_ARABIC_SAUDI_ARABIA: return "ar_SA"; -+ case SUBLANG_ARABIC_IRAQ: return "ar_IQ"; -+ case SUBLANG_ARABIC_EGYPT: return "ar_EG"; -+ case SUBLANG_ARABIC_LIBYA: return "ar_LY"; -+ case SUBLANG_ARABIC_ALGERIA: return "ar_DZ"; -+ case SUBLANG_ARABIC_MOROCCO: return "ar_MA"; -+ case SUBLANG_ARABIC_TUNISIA: return "ar_TN"; -+ case SUBLANG_ARABIC_OMAN: return "ar_OM"; -+ case SUBLANG_ARABIC_YEMEN: return "ar_YE"; -+ case SUBLANG_ARABIC_SYRIA: return "ar_SY"; -+ case SUBLANG_ARABIC_JORDAN: return "ar_JO"; -+ case SUBLANG_ARABIC_LEBANON: return "ar_LB"; -+ case SUBLANG_ARABIC_KUWAIT: return "ar_KW"; -+ case SUBLANG_ARABIC_UAE: return "ar_AE"; -+ case SUBLANG_ARABIC_BAHRAIN: return "ar_BH"; -+ case SUBLANG_ARABIC_QATAR: return "ar_QA"; -+ } -+ return "ar"; -+ case LANG_ARMENIAN: return "hy_AM"; -+ case LANG_ASSAMESE: return "as_IN"; -+ case LANG_AZERI: -+ switch (sub) -+ { -+ /* FIXME: Adjust this when Azerbaijani locales appear on Unix. */ -+ case SUBLANG_AZERI_LATIN: return "az_AZ@latin"; -+ case SUBLANG_AZERI_CYRILLIC: return "az_AZ@cyrillic"; -+ } -+ return "az"; -+ case LANG_BASQUE: -+ return "eu"; /* Ambiguous: could be "eu_ES" or "eu_FR". */ -+ case LANG_BELARUSIAN: return "be_BY"; -+ case LANG_BENGALI: -+ switch (sub) -+ { -+ case SUBLANG_BENGALI_INDIA: return "bn_IN"; -+ case SUBLANG_BENGALI_BANGLADESH: return "bn_BD"; -+ } -+ return "bn"; -+ case LANG_BULGARIAN: return "bg_BG"; -+ case LANG_BURMESE: return "my_MM"; -+ case LANG_CAMBODIAN: return "km_KH"; -+ case LANG_CATALAN: return "ca_ES"; -+ case LANG_CHEROKEE: return "chr_US"; -+ case LANG_CHINESE: -+ switch (sub) -+ { -+ case SUBLANG_CHINESE_TRADITIONAL: return "zh_TW"; -+ case SUBLANG_CHINESE_SIMPLIFIED: return "zh_CN"; -+ case SUBLANG_CHINESE_HONGKONG: return "zh_HK"; -+ case SUBLANG_CHINESE_SINGAPORE: return "zh_SG"; -+ case SUBLANG_CHINESE_MACAU: return "zh_MO"; -+ } -+ return "zh"; -+ case LANG_CROATIAN: /* LANG_CROATIAN == LANG_SERBIAN -+ * What used to be called Serbo-Croatian -+ * should really now be two separate -+ * languages because of political reasons. -+ * (Says tml, who knows nothing about Serbian -+ * or Croatian.) -+ * (I can feel those flames coming already.) -+ */ -+ switch (sub) -+ { -+ case SUBLANG_DEFAULT: return "hr_HR"; -+ case SUBLANG_SERBIAN_LATIN: return "sr_CS"; -+ case SUBLANG_SERBIAN_CYRILLIC: return "sr_CS@cyrillic"; -+ } -+ return "hr"; -+ case LANG_CZECH: return "cs_CZ"; -+ case LANG_DANISH: return "da_DK"; -+ case LANG_DIVEHI: return "dv_MV"; -+ case LANG_DUTCH: -+ switch (sub) -+ { -+ case SUBLANG_DUTCH: return "nl_NL"; -+ case SUBLANG_DUTCH_BELGIAN: /* FLEMISH, VLAAMS */ return "nl_BE"; -+ } -+ return "nl"; -+ case LANG_EDO: return "bin_NG"; -+ case LANG_ENGLISH: -+ switch (sub) -+ { -+ /* SUBLANG_ENGLISH_US == SUBLANG_DEFAULT. Heh. I thought -+ * English was the language spoken in England. -+ * Oh well. -+ */ -+ case SUBLANG_ENGLISH_US: return "en_US"; -+ case SUBLANG_ENGLISH_UK: return "en_GB"; -+ case SUBLANG_ENGLISH_AUS: return "en_AU"; -+ case SUBLANG_ENGLISH_CAN: return "en_CA"; -+ case SUBLANG_ENGLISH_NZ: return "en_NZ"; -+ case SUBLANG_ENGLISH_EIRE: return "en_IE"; -+ case SUBLANG_ENGLISH_SOUTH_AFRICA: return "en_ZA"; -+ case SUBLANG_ENGLISH_JAMAICA: return "en_JM"; -+ case SUBLANG_ENGLISH_CARIBBEAN: return "en_GD"; /* Grenada? */ -+ case SUBLANG_ENGLISH_BELIZE: return "en_BZ"; -+ case SUBLANG_ENGLISH_TRINIDAD: return "en_TT"; -+ case SUBLANG_ENGLISH_ZIMBABWE: return "en_ZW"; -+ case SUBLANG_ENGLISH_PHILIPPINES: return "en_PH"; -+ case SUBLANG_ENGLISH_INDONESIA: return "en_ID"; -+ case SUBLANG_ENGLISH_HONGKONG: return "en_HK"; -+ case SUBLANG_ENGLISH_INDIA: return "en_IN"; -+ case SUBLANG_ENGLISH_MALAYSIA: return "en_MY"; -+ case SUBLANG_ENGLISH_SINGAPORE: return "en_SG"; -+ } -+ return "en"; -+ case LANG_ESTONIAN: return "et_EE"; -+ case LANG_FAEROESE: return "fo_FO"; -+ case LANG_FARSI: return "fa_IR"; -+ case LANG_FINNISH: return "fi_FI"; -+ case LANG_FRENCH: -+ switch (sub) -+ { -+ case SUBLANG_FRENCH: return "fr_FR"; -+ case SUBLANG_FRENCH_BELGIAN: /* WALLOON */ return "fr_BE"; -+ case SUBLANG_FRENCH_CANADIAN: return "fr_CA"; -+ case SUBLANG_FRENCH_SWISS: return "fr_CH"; -+ case SUBLANG_FRENCH_LUXEMBOURG: return "fr_LU"; -+ case SUBLANG_FRENCH_MONACO: return "fr_MC"; -+ case SUBLANG_FRENCH_WESTINDIES: return "fr"; /* Caribbean? */ -+ case SUBLANG_FRENCH_REUNION: return "fr_RE"; -+ case SUBLANG_FRENCH_CONGO: return "fr_CG"; -+ case SUBLANG_FRENCH_SENEGAL: return "fr_SN"; -+ case SUBLANG_FRENCH_CAMEROON: return "fr_CM"; -+ case SUBLANG_FRENCH_COTEDIVOIRE: return "fr_CI"; -+ case SUBLANG_FRENCH_MALI: return "fr_ML"; -+ case SUBLANG_FRENCH_MOROCCO: return "fr_MA"; -+ case SUBLANG_FRENCH_HAITI: return "fr_HT"; -+ } -+ return "fr"; -+ case LANG_FRISIAN: return "fy_NL"; -+ case LANG_FULFULDE: -+ /* Spoken in Nigeria, Guinea, Senegal, Mali, Niger, Cameroon, Benin. */ -+ return "ff_NG"; -+ case LANG_GAELIC: -+ switch (sub) -+ { -+ case 0x01: /* SCOTTISH */ return "gd_GB"; -+ case 0x02: /* IRISH */ return "ga_IE"; -+ } -+ return "C"; -+ case LANG_GALICIAN: return "gl_ES"; -+ case LANG_GEORGIAN: return "ka_GE"; -+ case LANG_GERMAN: -+ switch (sub) -+ { -+ case SUBLANG_GERMAN: return "de_DE"; -+ case SUBLANG_GERMAN_SWISS: return "de_CH"; -+ case SUBLANG_GERMAN_AUSTRIAN: return "de_AT"; -+ case SUBLANG_GERMAN_LUXEMBOURG: return "de_LU"; -+ case SUBLANG_GERMAN_LIECHTENSTEIN: return "de_LI"; -+ } -+ return "de"; -+ case LANG_GREEK: return "el_GR"; -+ case LANG_GUARANI: return "gn_PY"; -+ case LANG_GUJARATI: return "gu_IN"; -+ case LANG_HAUSA: return "ha_NG"; -+ case LANG_HAWAIIAN: -+ /* FIXME: Do they mean Hawaiian ("haw_US", 1000 speakers) -+ or Hawaii Creole English ("cpe_US", 600000 speakers)? */ -+ return "cpe_US"; -+ case LANG_HEBREW: return "he_IL"; -+ case LANG_HINDI: return "hi_IN"; -+ case LANG_HUNGARIAN: return "hu_HU"; -+ case LANG_IBIBIO: return "nic_NG"; -+ case LANG_ICELANDIC: return "is_IS"; -+ case LANG_IGBO: return "ig_NG"; -+ case LANG_INDONESIAN: return "id_ID"; -+ case LANG_INUKTITUT: return "iu_CA"; -+ case LANG_ITALIAN: -+ switch (sub) -+ { -+ case SUBLANG_ITALIAN: return "it_IT"; -+ case SUBLANG_ITALIAN_SWISS: return "it_CH"; -+ } -+ return "it"; -+ case LANG_JAPANESE: return "ja_JP"; -+ case LANG_KANNADA: return "kn_IN"; -+ case LANG_KANURI: return "kr_NG"; -+ case LANG_KASHMIRI: -+ switch (sub) -+ { -+ case SUBLANG_DEFAULT: return "ks_PK"; -+ case SUBLANG_KASHMIRI_INDIA: return "ks_IN"; -+ } -+ return "ks"; -+ case LANG_KAZAK: return "kk_KZ"; -+ case LANG_KONKANI: -+ /* FIXME: Adjust this when such locales appear on Unix. */ -+ return "kok_IN"; -+ case LANG_KOREAN: return "ko_KR"; -+ case LANG_KYRGYZ: return "ky_KG"; -+ case LANG_LAO: return "lo_LA"; -+ case LANG_LATIN: return "la_VA"; -+ case LANG_LATVIAN: return "lv_LV"; -+ case LANG_LITHUANIAN: return "lt_LT"; -+ case LANG_MACEDONIAN: return "mk_MK"; -+ case LANG_MALAY: -+ switch (sub) -+ { -+ case SUBLANG_MALAY_MALAYSIA: return "ms_MY"; -+ case SUBLANG_MALAY_BRUNEI_DARUSSALAM: return "ms_BN"; -+ } -+ return "ms"; -+ case LANG_MALAYALAM: return "ml_IN"; -+ case LANG_MALTESE: return "mt_MT"; -+ case LANG_MANIPURI: -+ /* FIXME: Adjust this when such locales appear on Unix. */ -+ return "mni_IN"; -+ case LANG_MARATHI: return "mr_IN"; -+ case LANG_MONGOLIAN: -+ return "mn"; /* Ambiguous: could be "mn_CN" or "mn_MN". */ -+ case LANG_NEPALI: -+ switch (sub) -+ { -+ case SUBLANG_DEFAULT: return "ne_NP"; -+ case SUBLANG_NEPALI_INDIA: return "ne_IN"; -+ } -+ return "ne"; -+ case LANG_NORWEGIAN: -+ switch (sub) -+ { -+ case SUBLANG_NORWEGIAN_BOKMAL: return "no_NO"; -+ case SUBLANG_NORWEGIAN_NYNORSK: return "nn_NO"; -+ } -+ return "no"; -+ case LANG_ORIYA: return "or_IN"; -+ case LANG_OROMO: return "om_ET"; -+ case LANG_PAPIAMENTU: return "pap_AN"; -+ case LANG_PASHTO: -+ return "ps"; /* Ambiguous: could be "ps_PK" or "ps_AF". */ -+ case LANG_POLISH: return "pl_PL"; -+ case LANG_PORTUGUESE: -+ switch (sub) -+ { -+ case SUBLANG_PORTUGUESE: return "pt_PT"; -+ /* Hmm. SUBLANG_PORTUGUESE_BRAZILIAN == SUBLANG_DEFAULT. -+ Same phenomenon as SUBLANG_ENGLISH_US == SUBLANG_DEFAULT. */ -+ case SUBLANG_PORTUGUESE_BRAZILIAN: return "pt_BR"; -+ } -+ return "pt"; -+ case LANG_PUNJABI: -+ switch (sub) -+ { -+ case SUBLANG_PUNJABI_INDIA: return "pa_IN"; /* Gurmukhi script */ -+ case SUBLANG_PUNJABI_PAKISTAN: return "pa_PK"; /* Arabic script */ -+ } -+ return "pa"; -+ case LANG_RHAETO_ROMANCE: return "rm_CH"; -+ case LANG_ROMANIAN: -+ switch (sub) -+ { -+ case SUBLANG_ROMANIAN_ROMANIA: return "ro_RO"; -+ case SUBLANG_ROMANIAN_MOLDOVA: return "ro_MD"; -+ } -+ return "ro"; -+ case LANG_RUSSIAN: -+ return "ru"; /* Ambiguous: could be "ru_RU" or "ru_UA" or "ru_MD". */ -+ case LANG_SAAMI: /* actually Northern Sami */ return "se_NO"; -+ case LANG_SANSKRIT: return "sa_IN"; -+ case LANG_SINDHI: -+ switch (sub) -+ { -+ case SUBLANG_SINDHI_INDIA: return "sd_IN"; -+ case SUBLANG_SINDHI_PAKISTAN: return "sd_PK"; -+ } -+ return "sd"; -+ case LANG_SINHALESE: return "si_LK"; -+ case LANG_SLOVAK: return "sk_SK"; -+ case LANG_SLOVENIAN: return "sl_SI"; -+ case LANG_SOMALI: return "so_SO"; -+ case LANG_SORBIAN: -+ /* FIXME: Adjust this when such locales appear on Unix. */ -+ return "wen_DE"; -+ case LANG_SPANISH: -+ switch (sub) -+ { -+ case SUBLANG_SPANISH: return "es_ES"; -+ case SUBLANG_SPANISH_MEXICAN: return "es_MX"; -+ case SUBLANG_SPANISH_MODERN: -+ return "es_ES@modern"; /* not seen on Unix */ -+ case SUBLANG_SPANISH_GUATEMALA: return "es_GT"; -+ case SUBLANG_SPANISH_COSTA_RICA: return "es_CR"; -+ case SUBLANG_SPANISH_PANAMA: return "es_PA"; -+ case SUBLANG_SPANISH_DOMINICAN_REPUBLIC: return "es_DO"; -+ case SUBLANG_SPANISH_VENEZUELA: return "es_VE"; -+ case SUBLANG_SPANISH_COLOMBIA: return "es_CO"; -+ case SUBLANG_SPANISH_PERU: return "es_PE"; -+ case SUBLANG_SPANISH_ARGENTINA: return "es_AR"; -+ case SUBLANG_SPANISH_ECUADOR: return "es_EC"; -+ case SUBLANG_SPANISH_CHILE: return "es_CL"; -+ case SUBLANG_SPANISH_URUGUAY: return "es_UY"; -+ case SUBLANG_SPANISH_PARAGUAY: return "es_PY"; -+ case SUBLANG_SPANISH_BOLIVIA: return "es_BO"; -+ case SUBLANG_SPANISH_EL_SALVADOR: return "es_SV"; -+ case SUBLANG_SPANISH_HONDURAS: return "es_HN"; -+ case SUBLANG_SPANISH_NICARAGUA: return "es_NI"; -+ case SUBLANG_SPANISH_PUERTO_RICO: return "es_PR"; -+ } -+ return "es"; -+ case LANG_SUTU: return "bnt_TZ"; /* or "st_LS" or "nso_ZA"? */ -+ case LANG_SWAHILI: return "sw_KE"; -+ case LANG_SWEDISH: -+ switch (sub) -+ { -+ case SUBLANG_DEFAULT: return "sv_SE"; -+ case SUBLANG_SWEDISH_FINLAND: return "sv_FI"; -+ } -+ return "sv"; -+ case LANG_SYRIAC: return "syr_TR"; /* An extinct language. */ -+ case LANG_TAGALOG: return "tl_PH"; -+ case LANG_TAJIK: return "tg_TJ"; -+ case LANG_TAMAZIGHT: -+ switch (sub) -+ { -+ /* FIXME: Adjust this when Tamazight locales appear on Unix. */ -+ case SUBLANG_TAMAZIGHT_ARABIC: return "ber_MA@arabic"; -+ case SUBLANG_TAMAZIGHT_LATIN: return "ber_MA@latin"; -+ } -+ return "ber_MA"; -+ case LANG_TAMIL: -+ return "ta"; /* Ambiguous: could be "ta_IN" or "ta_LK" or "ta_SG". */ -+ case LANG_TATAR: return "tt_RU"; -+ case LANG_TELUGU: return "te_IN"; -+ case LANG_THAI: return "th_TH"; -+ case LANG_TIBETAN: return "bo_CN"; -+ case LANG_TIGRINYA: -+ switch (sub) -+ { -+ case SUBLANG_TIGRINYA_ETHIOPIA: return "ti_ET"; -+ case SUBLANG_TIGRINYA_ERITREA: return "ti_ER"; -+ } -+ return "ti"; -+ case LANG_TSONGA: return "ts_ZA"; -+ case LANG_TSWANA: return "tn_BW"; -+ case LANG_TURKISH: return "tr_TR"; -+ case LANG_TURKMEN: return "tk_TM"; -+ case LANG_UKRAINIAN: return "uk_UA"; -+ case LANG_URDU: -+ switch (sub) -+ { -+ case SUBLANG_URDU_PAKISTAN: return "ur_PK"; -+ case SUBLANG_URDU_INDIA: return "ur_IN"; -+ } -+ return "ur"; -+ case LANG_UZBEK: -+ switch (sub) -+ { -+ case SUBLANG_UZBEK_LATIN: return "uz_UZ"; -+ case SUBLANG_UZBEK_CYRILLIC: return "uz_UZ@cyrillic"; -+ } -+ return "uz"; -+ case LANG_VENDA: return "ve_ZA"; -+ case LANG_VIETNAMESE: return "vi_VN"; -+ case LANG_WELSH: return "cy_GB"; -+ case LANG_XHOSA: return "xh_ZA"; -+ case LANG_YI: return "sit_CN"; -+ case LANG_YIDDISH: return "yi_IL"; -+ case LANG_YORUBA: return "yo_NG"; -+ case LANG_ZULU: return "zu_ZA"; -+ default: return "C"; -+ } -+ -+#endif -+} ---- lrzsz-0.12.20.safe/intl/log.c 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/log.c 2004-09-12 14:40:34.515723768 -0400 -@@ -0,0 +1,98 @@ -+/* Log file output. -+ Copyright (C) 2003 Free Software Foundation, Inc. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+/* Written by Bruno Haible . */ -+ -+#ifdef HAVE_CONFIG_H -+# include -+#endif -+ -+#include -+#include -+#include -+ -+/* Print an ASCII string with quotes and escape sequences where needed. */ -+static void -+print_escaped (FILE *stream, const char *str) -+{ -+ putc ('"', stream); -+ for (; *str != '\0'; str++) -+ if (*str == '\n') -+ { -+ fputs ("\\n\"", stream); -+ if (str[1] == '\0') -+ return; -+ fputs ("\n\"", stream); -+ } -+ else -+ { -+ if (*str == '"' || *str == '\\') -+ putc ('\\', stream); -+ putc (*str, stream); -+ } -+ putc ('"', stream); -+} -+ -+/* Add to the log file an entry denoting a failed translation. */ -+void -+_nl_log_untranslated (const char *logfilename, const char *domainname, -+ const char *msgid1, const char *msgid2, int plural) -+{ -+ static char *last_logfilename = NULL; -+ static FILE *last_logfile = NULL; -+ FILE *logfile; -+ -+ /* Can we reuse the last opened logfile? */ -+ if (last_logfilename == NULL || strcmp (logfilename, last_logfilename) != 0) -+ { -+ /* Close the last used logfile. */ -+ if (last_logfilename != NULL) -+ { -+ if (last_logfile != NULL) -+ { -+ fclose (last_logfile); -+ last_logfile = NULL; -+ } -+ free (last_logfilename); -+ last_logfilename = NULL; -+ } -+ /* Open the logfile. */ -+ last_logfilename = (char *) malloc (strlen (logfilename) + 1); -+ if (last_logfilename == NULL) -+ return; -+ strcpy (last_logfilename, logfilename); -+ last_logfile = fopen (logfilename, "a"); -+ if (last_logfile == NULL) -+ return; -+ } -+ logfile = last_logfile; -+ -+ fprintf (logfile, "domain "); -+ print_escaped (logfile, domainname); -+ fprintf (logfile, "\nmsgid "); -+ print_escaped (logfile, msgid1); -+ if (plural) -+ { -+ fprintf (logfile, "\nmsgid_plural "); -+ print_escaped (logfile, msgid2); -+ fprintf (logfile, "\nmsgstr[0] \"\"\n"); -+ } -+ else -+ fprintf (logfile, "\nmsgstr \"\"\n"); -+ putc ('\n', logfile); -+} ---- lrzsz-0.12.20.safe/intl/Makefile.in 1998-04-26 09:22:35.000000000 -0400 -+++ lrzsz-0.12.20/intl/Makefile.in 2004-09-12 14:40:34.521722856 -0400 -@@ -1,19 +1,20 @@ --# Makefile for directory with message catalog handling in GNU NLS Utilities. --# Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. -+# Makefile for directory with message catalog handling library of GNU gettext -+# Copyright (C) 1995-1998, 2000-2003 Free Software Foundation, Inc. - # --# This program is free software; you can redistribute it and/or modify --# it under the terms of the GNU General Public License as published by --# the Free Software Foundation; either version 2, or (at your option) -+# This program is free software; you can redistribute it and/or modify it -+# under the terms of the GNU Library General Public License as published -+# by the Free Software Foundation; either version 2, or (at your option) - # any later version. - # - # This program is distributed in the hope that it will be useful, - # but WITHOUT ANY WARRANTY; without even the implied warranty of --# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the --# GNU General Public License for more details. -+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+# Library General Public License for more details. - # --# You should have received a copy of the GNU General Public License --# along with this program; if not, write to the Free Software --# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -+# You should have received a copy of the GNU Library General Public -+# License along with this program; if not, write to the Free Software -+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+# USA. - - PACKAGE = @PACKAGE@ - VERSION = @VERSION@ -@@ -23,118 +24,341 @@ - srcdir = @srcdir@ - top_srcdir = @top_srcdir@ - top_builddir = .. --VPATH = @srcdir@ -+#VPATH = $(srcdir) - - prefix = @prefix@ - exec_prefix = @exec_prefix@ - transform = @program_transform_name@ --libdir = $(exec_prefix)/lib --includedir = $(prefix)/include --datadir = $(prefix)/@DATADIRNAME@ -+libdir = @libdir@ -+includedir = @includedir@ -+datadir = @datadir@ - localedir = $(datadir)/locale --gnulocaledir = $(prefix)/share/locale --gettextsrcdir = @datadir@/gettext/intl --aliaspath = $(localedir):. -+gettextsrcdir = $(datadir)/gettext/intl -+aliaspath = $(localedir) - subdir = intl - - INSTALL = @INSTALL@ - INSTALL_DATA = @INSTALL_DATA@ - MKINSTALLDIRS = @MKINSTALLDIRS@ -+mkinstalldirs = $(SHELL) $(MKINSTALLDIRS) - --l = @l@ -+l = @INTL_LIBTOOL_SUFFIX_PREFIX@ - - AR = ar - CC = @CC@ - LIBTOOL = @LIBTOOL@ - RANLIB = @RANLIB@ -+YACC = @INTLBISON@ -y -d -+YFLAGS = --name-prefix=__gettext - --DEFS = -DLOCALEDIR=\"$(localedir)\" -DGNULOCALEDIR=\"$(gnulocaledir)\" \ ---DLOCALE_ALIAS_PATH=\"$(aliaspath)\" @DEFS@ -+DEFS = -DLOCALEDIR=\"$(localedir)\" -DLOCALE_ALIAS_PATH=\"$(aliaspath)\" \ -+-DLIBDIR=\"$(libdir)\" -DIN_LIBINTL \ -+-DENABLE_RELOCATABLE=1 -DIN_LIBRARY -DINSTALLDIR=\"$(libdir)\" -DNO_XMALLOC \ -+-Dset_relocation_prefix=libintl_set_relocation_prefix \ -+-Drelocate=libintl_relocate \ -+-DDEPENDS_ON_LIBICONV=1 @DEFS@ - CPPFLAGS = @CPPFLAGS@ - CFLAGS = @CFLAGS@ - LDFLAGS = @LDFLAGS@ -+LIBS = @LIBS@ - - COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS) - --HEADERS = $(COMHDRS) libgettext.h loadinfo.h --COMHDRS = gettext.h gettextP.h hash-string.h --SOURCES = $(COMSRCS) intl-compat.c cat-compat.c --COMSRCS = bindtextdom.c dcgettext.c dgettext.c gettext.c \ --finddomain.c loadmsgcat.c localealias.c textdomain.c l10nflist.c \ --explodename.c --OBJECTS = @INTLOBJS@ bindtextdom.$lo dcgettext.$lo dgettext.$lo gettext.$lo \ --finddomain.$lo loadmsgcat.$lo localealias.$lo textdomain.$lo l10nflist.$lo \ --explodename.$lo --CATOBJS = cat-compat.$lo ../po/cat-id-tbl.$lo --GETTOBJS = intl-compat.$lo --DISTFILES.common = ChangeLog Makefile.in linux-msg.sed po2tbl.sed.in \ --xopen-msg.sed $(HEADERS) $(SOURCES) -+HEADERS = \ -+ gmo.h \ -+ gettextP.h \ -+ hash-string.h \ -+ loadinfo.h \ -+ plural-exp.h \ -+ eval-plural.h \ -+ localcharset.h \ -+ relocatable.h \ -+ xsize.h \ -+ printf-args.h printf-args.c \ -+ printf-parse.h wprintf-parse.h printf-parse.c \ -+ vasnprintf.h vasnwprintf.h vasnprintf.c \ -+ os2compat.h \ -+ libgnuintl.h.in -+SOURCES = \ -+ bindtextdom.c \ -+ dcgettext.c \ -+ dgettext.c \ -+ gettext.c \ -+ finddomain.c \ -+ loadmsgcat.c \ -+ localealias.c \ -+ textdomain.c \ -+ l10nflist.c \ -+ explodename.c \ -+ dcigettext.c \ -+ dcngettext.c \ -+ dngettext.c \ -+ ngettext.c \ -+ plural.y \ -+ plural-exp.c \ -+ localcharset.c \ -+ relocatable.c \ -+ localename.c \ -+ log.c \ -+ printf.c \ -+ osdep.c \ -+ os2compat.c \ -+ intl-compat.c -+OBJECTS = \ -+ bindtextdom.$lo \ -+ dcgettext.$lo \ -+ dgettext.$lo \ -+ gettext.$lo \ -+ finddomain.$lo \ -+ loadmsgcat.$lo \ -+ localealias.$lo \ -+ textdomain.$lo \ -+ l10nflist.$lo \ -+ explodename.$lo \ -+ dcigettext.$lo \ -+ dcngettext.$lo \ -+ dngettext.$lo \ -+ ngettext.$lo \ -+ plural.$lo \ -+ plural-exp.$lo \ -+ localcharset.$lo \ -+ relocatable.$lo \ -+ localename.$lo \ -+ log.$lo \ -+ printf.$lo \ -+ osdep.$lo \ -+ intl-compat.$lo -+DISTFILES.common = Makefile.in \ -+config.charset locale.alias ref-add.sin ref-del.sin $(HEADERS) $(SOURCES) -+DISTFILES.generated = plural.c - DISTFILES.normal = VERSION --DISTFILES.gettext = libintl.glibc intlh.inst.in -+DISTFILES.gettext = COPYING.LIB-2.0 COPYING.LIB-2.1 libintl.glibc \ -+libgnuintl.h_vms Makefile.vms \ -+libgnuintl.h.msvc-static libgnuintl.h.msvc-shared README.woe32 Makefile.msvc -+DISTFILES.obsolete = xopen-msg.sed linux-msg.sed po2tbl.sed.in cat-compat.c \ -+COPYING.LIB-2 gettext.h libgettext.h plural-eval.c libgnuintl.h -+ -+all: all-@USE_INCLUDED_LIBINTL@ -+all-yes: libintl.$la libintl.h charset.alias ref-add.sed ref-del.sed -+all-no: all-no-@BUILD_INCLUDED_LIBINTL@ -+all-no-yes: libgnuintl.$la -+all-no-no: -+ -+libintl.a libgnuintl.a: $(OBJECTS) -+ rm -f $@ -+ $(AR) cru $@ $(OBJECTS) -+ $(RANLIB) $@ -+ -+libintl.la libgnuintl.la: $(OBJECTS) -+ $(LIBTOOL) --mode=link \ -+ $(CC) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS) $(LDFLAGS) -o $@ \ -+ $(OBJECTS) @LTLIBICONV@ $(LIBS) -lc \ -+ -version-info $(LTV_CURRENT):$(LTV_REVISION):$(LTV_AGE) \ -+ -rpath $(libdir) \ -+ -no-undefined -+ -+# Libtool's library version information for libintl. -+# Before making a gettext release, the gettext maintainer must change this -+# according to the libtool documentation, section "Library interface versions". -+# Maintainers of other packages that include the intl directory must *not* -+# change these values. -+LTV_CURRENT=7 -+LTV_REVISION=0 -+LTV_AGE=4 - - .SUFFIXES: --.SUFFIXES: .c .o .lo -+.SUFFIXES: .c .y .o .lo .sin .sed -+ - .c.o: - $(COMPILE) $< --.c.lo: -- $(LIBTOOL) --mode=compile $(COMPILE) $< - --INCLUDES = -I.. -I. -I$(top_srcdir)/intl -I$(top_srcdir)/lib -+.y.c: -+ $(YACC) $(YFLAGS) --output $@ $< -+ rm -f $*.h - --all: all-@USE_INCLUDED_LIBINTL@ -+bindtextdom.lo: $(srcdir)/bindtextdom.c -+ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/bindtextdom.c -+dcgettext.lo: $(srcdir)/dcgettext.c -+ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/dcgettext.c -+dgettext.lo: $(srcdir)/dgettext.c -+ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/dgettext.c -+gettext.lo: $(srcdir)/gettext.c -+ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/gettext.c -+finddomain.lo: $(srcdir)/finddomain.c -+ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/finddomain.c -+loadmsgcat.lo: $(srcdir)/loadmsgcat.c -+ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/loadmsgcat.c -+localealias.lo: $(srcdir)/localealias.c -+ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/localealias.c -+textdomain.lo: $(srcdir)/textdomain.c -+ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/textdomain.c -+l10nflist.lo: $(srcdir)/l10nflist.c -+ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/l10nflist.c -+explodename.lo: $(srcdir)/explodename.c -+ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/explodename.c -+dcigettext.lo: $(srcdir)/dcigettext.c -+ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/dcigettext.c -+dcngettext.lo: $(srcdir)/dcngettext.c -+ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/dcngettext.c -+dngettext.lo: $(srcdir)/dngettext.c -+ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/dngettext.c -+ngettext.lo: $(srcdir)/ngettext.c -+ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/ngettext.c -+plural.lo: $(srcdir)/plural.c -+ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/plural.c -+plural-exp.lo: $(srcdir)/plural-exp.c -+ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/plural-exp.c -+localcharset.lo: $(srcdir)/localcharset.c -+ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/localcharset.c -+relocatable.lo: $(srcdir)/relocatable.c -+ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/relocatable.c -+localename.lo: $(srcdir)/localename.c -+ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/localename.c -+log.lo: $(srcdir)/log.c -+ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/log.c -+printf.lo: $(srcdir)/printf.c -+ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/printf.c -+osdep.lo: $(srcdir)/osdep.c -+ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/osdep.c -+intl-compat.lo: $(srcdir)/intl-compat.c -+ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/intl-compat.c - --all-yes: libintl.$la intlh.inst --all-no: -+ref-add.sed: $(srcdir)/ref-add.sin -+ sed -e '/^#/d' -e 's/@''PACKAGE''@/@PACKAGE@/g' $(srcdir)/ref-add.sin > t-ref-add.sed -+ mv t-ref-add.sed ref-add.sed -+ref-del.sed: $(srcdir)/ref-del.sin -+ sed -e '/^#/d' -e 's/@''PACKAGE''@/@PACKAGE@/g' $(srcdir)/ref-del.sin > t-ref-del.sed -+ mv t-ref-del.sed ref-del.sed - --libintl.a: $(OBJECTS) -- rm -f $@ -- $(AR) cru $@ $(OBJECTS) -- $(RANLIB) $@ -+INCLUDES = -I. -I$(srcdir) -I.. - --libintl.la: $(OBJECTS) -- $(LIBTOOL) --mode=link $(CC) $(LDFLAGS) -o $@ $(OBJECTS) \ -- -version-info 1:0 -rpath $(libdir) -+libgnuintl.h: $(srcdir)/libgnuintl.h.in -+ sed -e 's,@''HAVE_POSIX_PRINTF''@,@HAVE_POSIX_PRINTF@,g' \ -+ -e 's,@''HAVE_ASPRINTF''@,@HAVE_ASPRINTF@,g' \ -+ -e 's,@''HAVE_SNPRINTF''@,@HAVE_SNPRINTF@,g' \ -+ -e 's,@''HAVE_WPRINTF''@,@HAVE_WPRINTF@,g' \ -+ < $(srcdir)/libgnuintl.h.in > libgnuintl.h - --../po/cat-id-tbl.$lo: ../po/cat-id-tbl.c $(top_srcdir)/po/$(PACKAGE).pot -- cd ../po && $(MAKE) cat-id-tbl.$lo -+libintl.h: libgnuintl.h -+ cp libgnuintl.h libintl.h - --check: all -+charset.alias: $(srcdir)/config.charset -+ $(SHELL) $(srcdir)/config.charset '@host@' > t-$@ -+ mv t-$@ $@ - --# This installation goal is only used in GNU gettext. Packages which --# only use the library should use install instead. -+check: all - - # We must not install the libintl.h/libintl.a files if we are on a --# system which has the gettext() function in its C library or in a --# separate library or use the catgets interface. A special case is --# where configure found a previously installed GNU gettext library. -+# system which has the GNU gettext() function in its C library or in a -+# separate library. - # If you want to use the one which comes with this version of the - # package, you have to use `configure --with-included-gettext'. - install: install-exec install-data - install-exec: all -- if test "$(PACKAGE)" = "gettext" \ -- && test '@INTLOBJS@' = '$(GETTOBJS)'; then \ -- if test -r $(MKINSTALLDIRS); then \ -- $(MKINSTALLDIRS) $(libdir) $(includedir); \ -- else \ -- $(top_srcdir)/mkinstalldirs $(libdir) $(includedir); \ -+ if { test "$(PACKAGE)" = "gettext-runtime" || test "$(PACKAGE)" = "gettext-tools"; } \ -+ && test '@USE_INCLUDED_LIBINTL@' = yes; then \ -+ $(mkinstalldirs) $(DESTDIR)$(libdir) $(DESTDIR)$(includedir); \ -+ $(INSTALL_DATA) libintl.h $(DESTDIR)$(includedir)/libintl.h; \ -+ $(LIBTOOL) --mode=install \ -+ $(INSTALL_DATA) libintl.$la $(DESTDIR)$(libdir)/libintl.$la; \ -+ if test "@RELOCATABLE@" = yes; then \ -+ dependencies=`sed -n -e 's,^dependency_libs=\(.*\),\1,p' < $(DESTDIR)$(libdir)/libintl.la | sed -e "s,^',," -e "s,'\$$,,"`; \ -+ if test -n "$$dependencies"; then \ -+ rm -f $(DESTDIR)$(libdir)/libintl.la; \ -+ fi; \ - fi; \ -- $(INSTALL_DATA) intlh.inst $(includedir)/libintl.h; \ -- $(INSTALL_DATA) libintl.a $(libdir)/libintl.a; \ - else \ - : ; \ - fi --install-data: all -- if test "$(PACKAGE)" = "gettext"; then \ -- if test -r $(MKINSTALLDIRS); then \ -- $(MKINSTALLDIRS) $(gettextsrcdir); \ -+ if test "$(PACKAGE)" = "gettext-tools" \ -+ && test '@USE_INCLUDED_LIBINTL@' = no; then \ -+ $(mkinstalldirs) $(DESTDIR)$(libdir); \ -+ $(LIBTOOL) --mode=install \ -+ $(INSTALL_DATA) libgnuintl.$la $(DESTDIR)$(libdir)/libgnuintl.$la; \ -+ rm -f $(DESTDIR)$(libdir)/preloadable_libintl.so; \ -+ $(INSTALL_DATA) $(DESTDIR)$(libdir)/libgnuintl.so $(DESTDIR)$(libdir)/preloadable_libintl.so; \ -+ $(LIBTOOL) --mode=uninstall \ -+ rm -f $(DESTDIR)$(libdir)/libgnuintl.$la; \ -+ else \ -+ : ; \ -+ fi -+ if test '@USE_INCLUDED_LIBINTL@' = yes; then \ -+ test @GLIBC21@ != no || $(mkinstalldirs) $(DESTDIR)$(libdir); \ -+ temp=$(DESTDIR)$(libdir)/t-charset.alias; \ -+ dest=$(DESTDIR)$(libdir)/charset.alias; \ -+ if test -f $(DESTDIR)$(libdir)/charset.alias; then \ -+ orig=$(DESTDIR)$(libdir)/charset.alias; \ -+ sed -f ref-add.sed $$orig > $$temp; \ -+ $(INSTALL_DATA) $$temp $$dest; \ -+ rm -f $$temp; \ - else \ -- $(top_srcdir)/mkinstalldirs $(gettextsrcdir); \ -+ if test @GLIBC21@ = no; then \ -+ orig=charset.alias; \ -+ sed -f ref-add.sed $$orig > $$temp; \ -+ $(INSTALL_DATA) $$temp $$dest; \ -+ rm -f $$temp; \ -+ fi; \ - fi; \ -- $(INSTALL_DATA) VERSION $(gettextsrcdir)/VERSION; \ -- dists="$(DISTFILES.common)"; \ -+ $(mkinstalldirs) $(DESTDIR)$(localedir); \ -+ test -f $(DESTDIR)$(localedir)/locale.alias \ -+ && orig=$(DESTDIR)$(localedir)/locale.alias \ -+ || orig=$(srcdir)/locale.alias; \ -+ temp=$(DESTDIR)$(localedir)/t-locale.alias; \ -+ dest=$(DESTDIR)$(localedir)/locale.alias; \ -+ sed -f ref-add.sed $$orig > $$temp; \ -+ $(INSTALL_DATA) $$temp $$dest; \ -+ rm -f $$temp; \ -+ else \ -+ : ; \ -+ fi -+install-data: all -+ if test "$(PACKAGE)" = "gettext-tools"; then \ -+ $(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \ -+ $(INSTALL_DATA) VERSION $(DESTDIR)$(gettextsrcdir)/VERSION; \ -+ $(INSTALL_DATA) ChangeLog.inst $(DESTDIR)$(gettextsrcdir)/ChangeLog; \ -+ dists="COPYING.LIB-2.0 COPYING.LIB-2.1 $(DISTFILES.common)"; \ - for file in $$dists; do \ -- $(INSTALL_DATA) $(srcdir)/$$file $(gettextsrcdir)/$$file; \ -+ $(INSTALL_DATA) $(srcdir)/$$file \ -+ $(DESTDIR)$(gettextsrcdir)/$$file; \ - done; \ -+ chmod a+x $(DESTDIR)$(gettextsrcdir)/config.charset; \ -+ dists="$(DISTFILES.generated)"; \ -+ for file in $$dists; do \ -+ if test -f $$file; then dir=.; else dir=$(srcdir); fi; \ -+ $(INSTALL_DATA) $$dir/$$file \ -+ $(DESTDIR)$(gettextsrcdir)/$$file; \ -+ done; \ -+ dists="$(DISTFILES.obsolete)"; \ -+ for file in $$dists; do \ -+ rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \ -+ done; \ -+ else \ -+ : ; \ -+ fi -+ -+install-strip: install -+ -+installdirs: -+ if { test "$(PACKAGE)" = "gettext-runtime" || test "$(PACKAGE)" = "gettext-tools"; } \ -+ && test '@USE_INCLUDED_LIBINTL@' = yes; then \ -+ $(mkinstalldirs) $(DESTDIR)$(libdir) $(DESTDIR)$(includedir); \ -+ else \ -+ : ; \ -+ fi -+ if test "$(PACKAGE)" = "gettext-tools" \ -+ && test '@USE_INCLUDED_LIBINTL@' = no; then \ -+ $(mkinstalldirs) $(DESTDIR)$(libdir); \ -+ else \ -+ : ; \ -+ fi -+ if test '@USE_INCLUDED_LIBINTL@' = yes; then \ -+ test @GLIBC21@ != no || $(mkinstalldirs) $(DESTDIR)$(libdir); \ -+ $(mkinstalldirs) $(DESTDIR)$(localedir); \ -+ else \ -+ : ; \ -+ fi -+ if test "$(PACKAGE)" = "gettext-tools"; then \ -+ $(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \ - else \ - : ; \ - fi -@@ -143,22 +367,76 @@ - installcheck: - - uninstall: -- dists="$(DISTFILES.common)"; \ -- for file in $$dists; do \ -- rm -f $(gettextsrcdir)/$$file; \ -- done -+ if { test "$(PACKAGE)" = "gettext-runtime" || test "$(PACKAGE)" = "gettext-tools"; } \ -+ && test '@USE_INCLUDED_LIBINTL@' = yes; then \ -+ rm -f $(DESTDIR)$(includedir)/libintl.h; \ -+ $(LIBTOOL) --mode=uninstall \ -+ rm -f $(DESTDIR)$(libdir)/libintl.$la; \ -+ else \ -+ : ; \ -+ fi -+ if test "$(PACKAGE)" = "gettext-tools" \ -+ && test '@USE_INCLUDED_LIBINTL@' = no; then \ -+ rm -f $(DESTDIR)$(libdir)/preloadable_libintl.so; \ -+ else \ -+ : ; \ -+ fi -+ if test '@USE_INCLUDED_LIBINTL@' = yes; then \ -+ if test -f $(DESTDIR)$(libdir)/charset.alias; then \ -+ temp=$(DESTDIR)$(libdir)/t-charset.alias; \ -+ dest=$(DESTDIR)$(libdir)/charset.alias; \ -+ sed -f ref-del.sed $$dest > $$temp; \ -+ if grep '^# Packages using this file: $$' $$temp > /dev/null; then \ -+ rm -f $$dest; \ -+ else \ -+ $(INSTALL_DATA) $$temp $$dest; \ -+ fi; \ -+ rm -f $$temp; \ -+ fi; \ -+ if test -f $(DESTDIR)$(localedir)/locale.alias; then \ -+ temp=$(DESTDIR)$(localedir)/t-locale.alias; \ -+ dest=$(DESTDIR)$(localedir)/locale.alias; \ -+ sed -f ref-del.sed $$dest > $$temp; \ -+ if grep '^# Packages using this file: $$' $$temp > /dev/null; then \ -+ rm -f $$dest; \ -+ else \ -+ $(INSTALL_DATA) $$temp $$dest; \ -+ fi; \ -+ rm -f $$temp; \ -+ fi; \ -+ else \ -+ : ; \ -+ fi -+ if test "$(PACKAGE)" = "gettext-tools"; then \ -+ for file in VERSION ChangeLog COPYING.LIB-2.0 COPYING.LIB-2.1 $(DISTFILES.common) $(DISTFILES.generated); do \ -+ rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \ -+ done; \ -+ else \ -+ : ; \ -+ fi - --info dvi: -+info dvi ps pdf html: - --$(OBJECTS): ../config.h libgettext.h --bindtextdom.$lo finddomain.$lo loadmsgcat.$lo: gettextP.h gettext.h loadinfo.h --dcgettext.$lo: gettextP.h gettext.h hash-string.h loadinfo.h -+$(OBJECTS): ../config.h libgnuintl.h -+bindtextdom.$lo dcgettext.$lo dcigettext.$lo dcngettext.$lo dgettext.$lo dngettext.$lo finddomain.$lo gettext.$lo intl-compat.$lo loadmsgcat.$lo localealias.$lo ngettext.$lo textdomain.$lo: $(srcdir)/gettextP.h $(srcdir)/gmo.h $(srcdir)/loadinfo.h -+dcigettext.$lo loadmsgcat.$lo: $(srcdir)/hash-string.h -+explodename.$lo l10nflist.$lo: $(srcdir)/loadinfo.h -+dcigettext.$lo loadmsgcat.$lo plural.$lo plural-exp.$lo: $(srcdir)/plural-exp.h -+dcigettext.$lo: $(srcdir)/eval-plural.h -+localcharset.$lo: $(srcdir)/localcharset.h -+localealias.$lo localcharset.$lo relocatable.$lo: $(srcdir)/relocatable.h -+printf.$lo: $(srcdir)/printf-args.h $(srcdir)/printf-args.c $(srcdir)/printf-parse.h $(srcdir)/wprintf-parse.h $(srcdir)/xsize.h $(srcdir)/printf-parse.c $(srcdir)/vasnprintf.h $(srcdir)/vasnwprintf.h $(srcdir)/vasnprintf.c - - tags: TAGS - - TAGS: $(HEADERS) $(SOURCES) - here=`pwd`; cd $(srcdir) && etags -o $$here/TAGS $(HEADERS) $(SOURCES) - -+ctags: CTAGS -+ -+CTAGS: $(HEADERS) $(SOURCES) -+ here=`pwd`; cd $(srcdir) && ctags -o $$here/CTAGS $(HEADERS) $(SOURCES) -+ - id: ID - - ID: $(HEADERS) $(SOURCES) -@@ -166,12 +444,19 @@ - - - mostlyclean: -- rm -f *.a *.o *.lo core core.* -+ rm -f *.a *.la *.o *.obj *.lo core core.* -+ rm -f libgnuintl.h libintl.h charset.alias ref-add.sed ref-del.sed -+ rm -f -r .libs _libs - - clean: mostlyclean - - distclean: clean -- rm -f Makefile ID TAGS po2msg.sed po2tbl.sed libintl.h -+ rm -f Makefile ID TAGS -+ if test "$(PACKAGE)" = "gettext-runtime" || test "$(PACKAGE)" = "gettext-tools"; then \ -+ rm -f ChangeLog.inst $(DISTFILES.normal); \ -+ else \ -+ : ; \ -+ fi - - maintainer-clean: distclean - @echo "This command is intended for maintainers to use;" -@@ -181,33 +466,27 @@ - # GNU gettext needs not contain the file `VERSION' but contains some - # other files which should not be distributed in other packages. - distdir = ../$(PACKAGE)-$(VERSION)/$(subdir) --dist distdir: Makefile $(DISTFILES) -- if test "$(PACKAGE)" = gettext; then \ -- additional="$(DISTFILES.gettext)"; \ -+dist distdir: Makefile -+ if test "$(PACKAGE)" = "gettext-tools"; then \ -+ : ; \ - else \ -- additional="$(DISTFILES.normal)"; \ -- fi; \ -- for file in $(DISTFILES.common) $$additional; do \ -- ln $(srcdir)/$$file $(distdir) 2> /dev/null \ -- || cp -p $(srcdir)/$$file $(distdir); \ -- done -- --dist-libc: -- tar zcvf intl-glibc.tar.gz $(COMSRCS) $(COMHDRS) libintl.h.glibc -- --Makefile: Makefile.in ../config.status -- cd .. \ -- && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status -+ if test "$(PACKAGE)" = "gettext-runtime"; then \ -+ additional="$(DISTFILES.gettext)"; \ -+ else \ -+ additional="$(DISTFILES.normal)"; \ -+ fi; \ -+ $(MAKE) $(DISTFILES.common) $(DISTFILES.generated) $$additional; \ -+ for file in ChangeLog $(DISTFILES.common) $(DISTFILES.generated) $$additional; do \ -+ if test -f $$file; then dir=.; else dir=$(srcdir); fi; \ -+ cp -p $$dir/$$file $(distdir); \ -+ done; \ -+ fi - --# The dependency for intlh.inst is different in gettext and all other --# packages. Because we cannot you GNU make features we have to solve --# the problem while rewriting Makefile.in. --@GT_YES@intlh.inst: intlh.inst.in ../config.status --@GT_YES@ cd .. \ --@GT_YES@ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= \ --@GT_YES@ $(SHELL) ./config.status --@GT_NO@.PHONY: intlh.inst --@GT_NO@intlh.inst: -+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status -+ cd $(top_builddir) && $(SHELL) ./config.status -+# This would be more efficient, but doesn't work any more with autoconf-2.57, -+# when AC_CONFIG_FILES([intl/Makefile:somedir/Makefile.in]) is used. -+# cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status - - # Tell versions [3.59,3.63) of GNU make not to export all variables. - # Otherwise a system limit (for SysV at least) may be exceeded. ---- lrzsz-0.12.20.safe/intl/ngettext.c 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/ngettext.c 2004-09-12 14:40:34.533721032 -0400 -@@ -0,0 +1,65 @@ -+/* Implementation of ngettext(3) function. -+ Copyright (C) 1995, 1997, 2000-2003 Free Software Foundation, Inc. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+#ifdef HAVE_CONFIG_H -+# include -+#endif -+ -+#ifdef _LIBC -+# define __need_NULL -+# include -+#else -+# include /* Just for NULL. */ -+#endif -+ -+#include "gettextP.h" -+#ifdef _LIBC -+# include -+#else -+# include "libgnuintl.h" -+#endif -+ -+#include -+ -+/* @@ end of prolog @@ */ -+ -+/* Names for the libintl functions are a problem. They must not clash -+ with existing names and they should follow ANSI C. But this source -+ code is also used in GNU C Library where the names have a __ -+ prefix. So we have to make a difference here. */ -+#ifdef _LIBC -+# define NGETTEXT __ngettext -+# define DCNGETTEXT __dcngettext -+#else -+# define NGETTEXT libintl_ngettext -+# define DCNGETTEXT libintl_dcngettext -+#endif -+ -+/* Look up MSGID in the current default message catalog for the current -+ LC_MESSAGES locale. If not found, returns MSGID itself (the default -+ text). */ -+char * -+NGETTEXT (const char *msgid1, const char *msgid2, unsigned long int n) -+{ -+ return DCNGETTEXT (NULL, msgid1, msgid2, n, LC_MESSAGES); -+} -+ -+#ifdef _LIBC -+/* Alias for function name in GNU C Library. */ -+weak_alias (__ngettext, ngettext); -+#endif ---- lrzsz-0.12.20.safe/intl/os2compat.c 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/os2compat.c 2004-09-12 14:40:34.539720120 -0400 -@@ -0,0 +1,98 @@ -+/* OS/2 compatibility functions. -+ Copyright (C) 2001-2002 Free Software Foundation, Inc. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+#define OS2_AWARE -+#ifdef HAVE_CONFIG_H -+#include -+#endif -+ -+#include -+#include -+#include -+ -+/* A version of getenv() that works from DLLs */ -+extern unsigned long DosScanEnv (const unsigned char *pszName, unsigned char **ppszValue); -+ -+char * -+_nl_getenv (const char *name) -+{ -+ unsigned char *value; -+ if (DosScanEnv (name, &value)) -+ return NULL; -+ else -+ return value; -+} -+ -+/* A fixed size buffer. */ -+char libintl_nl_default_dirname[MAXPATHLEN+1]; -+ -+char *_nlos2_libdir = NULL; -+char *_nlos2_localealiaspath = NULL; -+char *_nlos2_localedir = NULL; -+ -+static __attribute__((constructor)) void -+nlos2_initialize () -+{ -+ char *root = getenv ("UNIXROOT"); -+ char *gnulocaledir = getenv ("GNULOCALEDIR"); -+ -+ _nlos2_libdir = gnulocaledir; -+ if (!_nlos2_libdir) -+ { -+ if (root) -+ { -+ size_t sl = strlen (root); -+ _nlos2_libdir = (char *) malloc (sl + strlen (LIBDIR) + 1); -+ memcpy (_nlos2_libdir, root, sl); -+ memcpy (_nlos2_libdir + sl, LIBDIR, strlen (LIBDIR) + 1); -+ } -+ else -+ _nlos2_libdir = LIBDIR; -+ } -+ -+ _nlos2_localealiaspath = gnulocaledir; -+ if (!_nlos2_localealiaspath) -+ { -+ if (root) -+ { -+ size_t sl = strlen (root); -+ _nlos2_localealiaspath = (char *) malloc (sl + strlen (LOCALE_ALIAS_PATH) + 1); -+ memcpy (_nlos2_localealiaspath, root, sl); -+ memcpy (_nlos2_localealiaspath + sl, LOCALE_ALIAS_PATH, strlen (LOCALE_ALIAS_PATH) + 1); -+ } -+ else -+ _nlos2_localealiaspath = LOCALE_ALIAS_PATH; -+ } -+ -+ _nlos2_localedir = gnulocaledir; -+ if (!_nlos2_localedir) -+ { -+ if (root) -+ { -+ size_t sl = strlen (root); -+ _nlos2_localedir = (char *) malloc (sl + strlen (LOCALEDIR) + 1); -+ memcpy (_nlos2_localedir, root, sl); -+ memcpy (_nlos2_localedir + sl, LOCALEDIR, strlen (LOCALEDIR) + 1); -+ } -+ else -+ _nlos2_localedir = LOCALEDIR; -+ } -+ -+ if (strlen (_nlos2_localedir) <= MAXPATHLEN) -+ strcpy (libintl_nl_default_dirname, _nlos2_localedir); -+} ---- lrzsz-0.12.20.safe/intl/os2compat.h 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/os2compat.h 2004-09-12 14:40:34.544719360 -0400 -@@ -0,0 +1,46 @@ -+/* OS/2 compatibility defines. -+ This file is intended to be included from config.h -+ Copyright (C) 2001-2002 Free Software Foundation, Inc. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+/* When included from os2compat.h we need all the original definitions */ -+#ifndef OS2_AWARE -+ -+#undef LIBDIR -+#define LIBDIR _nlos2_libdir -+extern char *_nlos2_libdir; -+ -+#undef LOCALEDIR -+#define LOCALEDIR _nlos2_localedir -+extern char *_nlos2_localedir; -+ -+#undef LOCALE_ALIAS_PATH -+#define LOCALE_ALIAS_PATH _nlos2_localealiaspath -+extern char *_nlos2_localealiaspath; -+ -+#endif -+ -+#undef HAVE_STRCASECMP -+#define HAVE_STRCASECMP 1 -+#define strcasecmp stricmp -+#define strncasecmp strnicmp -+ -+/* We have our own getenv() which works even if library is compiled as DLL */ -+#define getenv _nl_getenv -+ -+/* Older versions of gettext used -1 as the value of LC_MESSAGES */ -+#define LC_MESSAGES_COMPAT (-1) ---- lrzsz-0.12.20.safe/intl/osdep.c 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/osdep.c 2004-09-12 14:40:34.550718448 -0400 -@@ -0,0 +1,24 @@ -+/* OS dependent parts of libintl. -+ Copyright (C) 2001-2002 Free Software Foundation, Inc. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+#if defined __EMX__ -+# include "os2compat.c" -+#else -+/* Avoid AIX compiler warning. */ -+typedef int dummy; -+#endif ---- lrzsz-0.12.20.safe/intl/plural.c 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/plural.c 2004-09-12 14:40:36.571411256 -0400 -@@ -0,0 +1,1490 @@ -+/* A Bison parser, made from plural.y -+ by GNU bison 1.35. */ -+ -+#define YYBISON 1 /* Identify Bison output. */ -+ -+#define yyparse __gettextparse -+#define yylex __gettextlex -+#define yyerror __gettexterror -+#define yylval __gettextlval -+#define yychar __gettextchar -+#define yydebug __gettextdebug -+#define yynerrs __gettextnerrs -+# define EQUOP2 257 -+# define CMPOP2 258 -+# define ADDOP2 259 -+# define MULOP2 260 -+# define NUMBER 261 -+ -+#line 1 "plural.y" -+ -+/* Expression parsing for plural form selection. -+ Copyright (C) 2000-2001, 2003 Free Software Foundation, Inc. -+ Written by Ulrich Drepper , 2000. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+/* The bison generated parser uses alloca. AIX 3 forces us to put this -+ declaration at the beginning of the file. The declaration in bison's -+ skeleton file comes too late. This must come before -+ because may include arbitrary system headers. */ -+#if defined _AIX && !defined __GNUC__ -+ #pragma alloca -+#endif -+ -+#ifdef HAVE_CONFIG_H -+# include -+#endif -+ -+#include -+#include -+#include "plural-exp.h" -+ -+/* The main function generated by the parser is called __gettextparse, -+ but we want it to be called PLURAL_PARSE. */ -+#ifndef _LIBC -+# define __gettextparse PLURAL_PARSE -+#endif -+ -+#define YYLEX_PARAM &((struct parse_args *) arg)->cp -+#define YYPARSE_PARAM arg -+ -+#line 49 "plural.y" -+#ifndef YYSTYPE -+typedef union { -+ unsigned long int num; -+ enum operator op; -+ struct expression *exp; -+} yystype; -+# define YYSTYPE yystype -+# define YYSTYPE_IS_TRIVIAL 1 -+#endif -+#line 55 "plural.y" -+ -+/* Prototypes for local functions. */ -+static int yylex (YYSTYPE *lval, const char **pexp); -+static void yyerror (const char *str); -+ -+/* Allocation of expressions. */ -+ -+static struct expression * -+new_exp (int nargs, enum operator op, struct expression * const *args) -+{ -+ int i; -+ struct expression *newp; -+ -+ /* If any of the argument could not be malloc'ed, just return NULL. */ -+ for (i = nargs - 1; i >= 0; i--) -+ if (args[i] == NULL) -+ goto fail; -+ -+ /* Allocate a new expression. */ -+ newp = (struct expression *) malloc (sizeof (*newp)); -+ if (newp != NULL) -+ { -+ newp->nargs = nargs; -+ newp->operation = op; -+ for (i = nargs - 1; i >= 0; i--) -+ newp->val.args[i] = args[i]; -+ return newp; -+ } -+ -+ fail: -+ for (i = nargs - 1; i >= 0; i--) -+ FREE_EXPRESSION (args[i]); -+ -+ return NULL; -+} -+ -+static inline struct expression * -+new_exp_0 (enum operator op) -+{ -+ return new_exp (0, op, NULL); -+} -+ -+static inline struct expression * -+new_exp_1 (enum operator op, struct expression *right) -+{ -+ struct expression *args[1]; -+ -+ args[0] = right; -+ return new_exp (1, op, args); -+} -+ -+static struct expression * -+new_exp_2 (enum operator op, struct expression *left, struct expression *right) -+{ -+ struct expression *args[2]; -+ -+ args[0] = left; -+ args[1] = right; -+ return new_exp (2, op, args); -+} -+ -+static inline struct expression * -+new_exp_3 (enum operator op, struct expression *bexp, -+ struct expression *tbranch, struct expression *fbranch) -+{ -+ struct expression *args[3]; -+ -+ args[0] = bexp; -+ args[1] = tbranch; -+ args[2] = fbranch; -+ return new_exp (3, op, args); -+} -+ -+#ifndef YYDEBUG -+# define YYDEBUG 0 -+#endif -+ -+ -+ -+#define YYFINAL 27 -+#define YYFLAG -32768 -+#define YYNTBASE 16 -+ -+/* YYTRANSLATE(YYLEX) -- Bison token number corresponding to YYLEX. */ -+#define YYTRANSLATE(x) ((unsigned)(x) <= 261 ? yytranslate[x] : 18) -+ -+/* YYTRANSLATE[YYLEX] -- Bison token number corresponding to YYLEX. */ -+static const char yytranslate[] = -+{ -+ 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, -+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, -+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, -+ 2, 2, 2, 10, 2, 2, 2, 2, 5, 2, -+ 14, 15, 2, 2, 2, 2, 2, 2, 2, 2, -+ 2, 2, 2, 2, 2, 2, 2, 2, 12, 2, -+ 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, -+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, -+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, -+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, -+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, -+ 13, 2, 2, 2, 2, 2, 2, 2, 2, 2, -+ 2, 2, 2, 2, 4, 2, 2, 2, 2, 2, -+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, -+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, -+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, -+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, -+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, -+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, -+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, -+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, -+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, -+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, -+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, -+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, -+ 2, 2, 2, 2, 2, 2, 1, 6, 7, 8, -+ 9, 11 -+}; -+ -+#if YYDEBUG -+static const short yyprhs[] = -+{ -+ 0, 0, 2, 8, 12, 16, 20, 24, 28, 32, -+ 35, 37, 39 -+}; -+static const short yyrhs[] = -+{ -+ 17, 0, 17, 3, 17, 12, 17, 0, 17, 4, -+ 17, 0, 17, 5, 17, 0, 17, 6, 17, 0, -+ 17, 7, 17, 0, 17, 8, 17, 0, 17, 9, -+ 17, 0, 10, 17, 0, 13, 0, 11, 0, 14, -+ 17, 15, 0 -+}; -+ -+#endif -+ -+#if YYDEBUG -+/* YYRLINE[YYN] -- source line where rule number YYN was defined. */ -+static const short yyrline[] = -+{ -+ 0, 150, 158, 162, 166, 170, 174, 178, 182, 186, -+ 190, 194, 199 -+}; -+#endif -+ -+ -+#if (YYDEBUG) || defined YYERROR_VERBOSE -+ -+/* YYTNAME[TOKEN_NUM] -- String name of the token TOKEN_NUM. */ -+static const char *const yytname[] = -+{ -+ "$", "error", "$undefined.", "'?'", "'|'", "'&'", "EQUOP2", "CMPOP2", -+ "ADDOP2", "MULOP2", "'!'", "NUMBER", "':'", "'n'", "'('", "')'", -+ "start", "exp", 0 -+}; -+#endif -+ -+/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ -+static const short yyr1[] = -+{ -+ 0, 16, 17, 17, 17, 17, 17, 17, 17, 17, -+ 17, 17, 17 -+}; -+ -+/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ -+static const short yyr2[] = -+{ -+ 0, 1, 5, 3, 3, 3, 3, 3, 3, 2, -+ 1, 1, 3 -+}; -+ -+/* YYDEFACT[S] -- default rule to reduce with in state S when YYTABLE -+ doesn't specify something else to do. Zero means the default is an -+ error. */ -+static const short yydefact[] = -+{ -+ 0, 0, 11, 10, 0, 1, 9, 0, 0, 0, -+ 0, 0, 0, 0, 0, 12, 0, 3, 4, 5, -+ 6, 7, 8, 0, 2, 0, 0, 0 -+}; -+ -+static const short yydefgoto[] = -+{ -+ 25, 5 -+}; -+ -+static const short yypact[] = -+{ -+ -9, -9,-32768,-32768, -9, 34,-32768, 11, -9, -9, -+ -9, -9, -9, -9, -9,-32768, 24, 39, 43, 16, -+ 26, -3,-32768, -9, 34, 21, 53,-32768 -+}; -+ -+static const short yypgoto[] = -+{ -+ -32768, -1 -+}; -+ -+ -+#define YYLAST 53 -+ -+ -+static const short yytable[] = -+{ -+ 6, 1, 2, 7, 3, 4, 14, 16, 17, 18, -+ 19, 20, 21, 22, 8, 9, 10, 11, 12, 13, -+ 14, 26, 24, 12, 13, 14, 15, 8, 9, 10, -+ 11, 12, 13, 14, 13, 14, 23, 8, 9, 10, -+ 11, 12, 13, 14, 10, 11, 12, 13, 14, 11, -+ 12, 13, 14, 27 -+}; -+ -+static const short yycheck[] = -+{ -+ 1, 10, 11, 4, 13, 14, 9, 8, 9, 10, -+ 11, 12, 13, 14, 3, 4, 5, 6, 7, 8, -+ 9, 0, 23, 7, 8, 9, 15, 3, 4, 5, -+ 6, 7, 8, 9, 8, 9, 12, 3, 4, 5, -+ 6, 7, 8, 9, 5, 6, 7, 8, 9, 6, -+ 7, 8, 9, 0 -+}; -+#define YYPURE 1 -+ -+/* -*-C-*- Note some compilers choke on comments on `#line' lines. */ -+#line 3 "/usr/local/share/bison/bison.simple" -+ -+/* Skeleton output parser for bison, -+ -+ Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002 Free Software -+ Foundation, Inc. -+ -+ This program is free software; you can redistribute it and/or modify -+ it under the terms of the GNU General Public License as published by -+ the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+ GNU General Public License for more details. -+ -+ You should have received a copy of the GNU General Public License -+ along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, -+ Boston, MA 02111-1307, USA. */ -+ -+/* As a special exception, when this file is copied by Bison into a -+ Bison output file, you may use that output file without restriction. -+ This special exception was added by the Free Software Foundation -+ in version 1.24 of Bison. */ -+ -+/* This is the parser code that is written into each bison parser when -+ the %semantic_parser declaration is not specified in the grammar. -+ It was written by Richard Stallman by simplifying the hairy parser -+ used when %semantic_parser is specified. */ -+ -+/* All symbols defined below should begin with yy or YY, to avoid -+ infringing on user name space. This should be done even for local -+ variables, as they might otherwise be expanded by user macros. -+ There are some unavoidable exceptions within include files to -+ define necessary library symbols; they are noted "INFRINGES ON -+ USER NAME SPACE" below. */ -+ -+#if ! defined (yyoverflow) || defined (YYERROR_VERBOSE) -+ -+/* The parser invokes alloca or malloc; define the necessary symbols. */ -+ -+# if YYSTACK_USE_ALLOCA -+# define YYSTACK_ALLOC alloca -+# else -+# ifndef YYSTACK_USE_ALLOCA -+# if defined (alloca) || defined (_ALLOCA_H) -+# define YYSTACK_ALLOC alloca -+# else -+# ifdef __GNUC__ -+# define YYSTACK_ALLOC __builtin_alloca -+# endif -+# endif -+# endif -+# endif -+ -+# ifdef YYSTACK_ALLOC -+ /* Pacify GCC's `empty if-body' warning. */ -+# define YYSTACK_FREE(Ptr) do { /* empty */; } while (0) -+# else -+# if defined (__STDC__) || defined (__cplusplus) -+# include /* INFRINGES ON USER NAME SPACE */ -+# define YYSIZE_T size_t -+# endif -+# define YYSTACK_ALLOC malloc -+# define YYSTACK_FREE free -+# endif -+#endif /* ! defined (yyoverflow) || defined (YYERROR_VERBOSE) */ -+ -+ -+#if (! defined (yyoverflow) \ -+ && (! defined (__cplusplus) \ -+ || (YYLTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL))) -+ -+/* A type that is properly aligned for any stack member. */ -+union yyalloc -+{ -+ short yyss; -+ YYSTYPE yyvs; -+# if YYLSP_NEEDED -+ YYLTYPE yyls; -+# endif -+}; -+ -+/* The size of the maximum gap between one aligned stack and the next. */ -+# define YYSTACK_GAP_MAX (sizeof (union yyalloc) - 1) -+ -+/* The size of an array large to enough to hold all stacks, each with -+ N elements. */ -+# if YYLSP_NEEDED -+# define YYSTACK_BYTES(N) \ -+ ((N) * (sizeof (short) + sizeof (YYSTYPE) + sizeof (YYLTYPE)) \ -+ + 2 * YYSTACK_GAP_MAX) -+# else -+# define YYSTACK_BYTES(N) \ -+ ((N) * (sizeof (short) + sizeof (YYSTYPE)) \ -+ + YYSTACK_GAP_MAX) -+# endif -+ -+/* Copy COUNT objects from FROM to TO. The source and destination do -+ not overlap. */ -+# ifndef YYCOPY -+# if 1 < __GNUC__ -+# define YYCOPY(To, From, Count) \ -+ __builtin_memcpy (To, From, (Count) * sizeof (*(From))) -+# else -+# define YYCOPY(To, From, Count) \ -+ do \ -+ { \ -+ register YYSIZE_T yyi; \ -+ for (yyi = 0; yyi < (Count); yyi++) \ -+ (To)[yyi] = (From)[yyi]; \ -+ } \ -+ while (0) -+# endif -+# endif -+ -+/* Relocate STACK from its old location to the new one. The -+ local variables YYSIZE and YYSTACKSIZE give the old and new number of -+ elements in the stack, and YYPTR gives the new location of the -+ stack. Advance YYPTR to a properly aligned location for the next -+ stack. */ -+# define YYSTACK_RELOCATE(Stack) \ -+ do \ -+ { \ -+ YYSIZE_T yynewbytes; \ -+ YYCOPY (&yyptr->Stack, Stack, yysize); \ -+ Stack = &yyptr->Stack; \ -+ yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAX; \ -+ yyptr += yynewbytes / sizeof (*yyptr); \ -+ } \ -+ while (0) -+ -+#endif -+ -+ -+#if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__) -+# define YYSIZE_T __SIZE_TYPE__ -+#endif -+#if ! defined (YYSIZE_T) && defined (size_t) -+# define YYSIZE_T size_t -+#endif -+#if ! defined (YYSIZE_T) -+# if defined (__STDC__) || defined (__cplusplus) -+# include /* INFRINGES ON USER NAME SPACE */ -+# define YYSIZE_T size_t -+# endif -+#endif -+#if ! defined (YYSIZE_T) -+# define YYSIZE_T unsigned int -+#endif -+ -+#define yyerrok (yyerrstatus = 0) -+#define yyclearin (yychar = YYEMPTY) -+#define YYEMPTY -2 -+#define YYEOF 0 -+#define YYACCEPT goto yyacceptlab -+#define YYABORT goto yyabortlab -+#define YYERROR goto yyerrlab1 -+/* Like YYERROR except do call yyerror. This remains here temporarily -+ to ease the transition to the new meaning of YYERROR, for GCC. -+ Once GCC version 2 has supplanted version 1, this can go. */ -+#define YYFAIL goto yyerrlab -+#define YYRECOVERING() (!!yyerrstatus) -+#define YYBACKUP(Token, Value) \ -+do \ -+ if (yychar == YYEMPTY && yylen == 1) \ -+ { \ -+ yychar = (Token); \ -+ yylval = (Value); \ -+ yychar1 = YYTRANSLATE (yychar); \ -+ YYPOPSTACK; \ -+ goto yybackup; \ -+ } \ -+ else \ -+ { \ -+ yyerror ("syntax error: cannot back up"); \ -+ YYERROR; \ -+ } \ -+while (0) -+ -+#define YYTERROR 1 -+#define YYERRCODE 256 -+ -+ -+/* YYLLOC_DEFAULT -- Compute the default location (before the actions -+ are run). -+ -+ When YYLLOC_DEFAULT is run, CURRENT is set the location of the -+ first token. By default, to implement support for ranges, extend -+ its range to the last symbol. */ -+ -+#ifndef YYLLOC_DEFAULT -+# define YYLLOC_DEFAULT(Current, Rhs, N) \ -+ Current.last_line = Rhs[N].last_line; \ -+ Current.last_column = Rhs[N].last_column; -+#endif -+ -+ -+/* YYLEX -- calling `yylex' with the right arguments. */ -+ -+#if YYPURE -+# if YYLSP_NEEDED -+# ifdef YYLEX_PARAM -+# define YYLEX yylex (&yylval, &yylloc, YYLEX_PARAM) -+# else -+# define YYLEX yylex (&yylval, &yylloc) -+# endif -+# else /* !YYLSP_NEEDED */ -+# ifdef YYLEX_PARAM -+# define YYLEX yylex (&yylval, YYLEX_PARAM) -+# else -+# define YYLEX yylex (&yylval) -+# endif -+# endif /* !YYLSP_NEEDED */ -+#else /* !YYPURE */ -+# define YYLEX yylex () -+#endif /* !YYPURE */ -+ -+ -+/* Enable debugging if requested. */ -+#if YYDEBUG -+ -+# ifndef YYFPRINTF -+# include /* INFRINGES ON USER NAME SPACE */ -+# define YYFPRINTF fprintf -+# endif -+ -+# define YYDPRINTF(Args) \ -+do { \ -+ if (yydebug) \ -+ YYFPRINTF Args; \ -+} while (0) -+/* Nonzero means print parse trace. It is left uninitialized so that -+ multiple parsers can coexist. */ -+int yydebug; -+#else /* !YYDEBUG */ -+# define YYDPRINTF(Args) -+#endif /* !YYDEBUG */ -+ -+/* YYINITDEPTH -- initial size of the parser's stacks. */ -+#ifndef YYINITDEPTH -+# define YYINITDEPTH 200 -+#endif -+ -+/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only -+ if the built-in stack extension method is used). -+ -+ Do not make this value too large; the results are undefined if -+ SIZE_MAX < YYSTACK_BYTES (YYMAXDEPTH) -+ evaluated with infinite-precision integer arithmetic. */ -+ -+#if YYMAXDEPTH == 0 -+# undef YYMAXDEPTH -+#endif -+ -+#ifndef YYMAXDEPTH -+# define YYMAXDEPTH 10000 -+#endif -+ -+#ifdef YYERROR_VERBOSE -+ -+# ifndef yystrlen -+# if defined (__GLIBC__) && defined (_STRING_H) -+# define yystrlen strlen -+# else -+/* Return the length of YYSTR. */ -+static YYSIZE_T -+# if defined (__STDC__) || defined (__cplusplus) -+yystrlen (const char *yystr) -+# else -+yystrlen (yystr) -+ const char *yystr; -+# endif -+{ -+ register const char *yys = yystr; -+ -+ while (*yys++ != '\0') -+ continue; -+ -+ return yys - yystr - 1; -+} -+# endif -+# endif -+ -+# ifndef yystpcpy -+# if defined (__GLIBC__) && defined (_STRING_H) && defined (_GNU_SOURCE) -+# define yystpcpy stpcpy -+# else -+/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in -+ YYDEST. */ -+static char * -+# if defined (__STDC__) || defined (__cplusplus) -+yystpcpy (char *yydest, const char *yysrc) -+# else -+yystpcpy (yydest, yysrc) -+ char *yydest; -+ const char *yysrc; -+# endif -+{ -+ register char *yyd = yydest; -+ register const char *yys = yysrc; -+ -+ while ((*yyd++ = *yys++) != '\0') -+ continue; -+ -+ return yyd - 1; -+} -+# endif -+# endif -+#endif -+ -+#line 315 "/usr/local/share/bison/bison.simple" -+ -+ -+/* The user can define YYPARSE_PARAM as the name of an argument to be passed -+ into yyparse. The argument should have type void *. -+ It should actually point to an object. -+ Grammar actions can access the variable by casting it -+ to the proper pointer type. */ -+ -+#ifdef YYPARSE_PARAM -+# if defined (__STDC__) || defined (__cplusplus) -+# define YYPARSE_PARAM_ARG void *YYPARSE_PARAM -+# define YYPARSE_PARAM_DECL -+# else -+# define YYPARSE_PARAM_ARG YYPARSE_PARAM -+# define YYPARSE_PARAM_DECL void *YYPARSE_PARAM; -+# endif -+#else /* !YYPARSE_PARAM */ -+# define YYPARSE_PARAM_ARG -+# define YYPARSE_PARAM_DECL -+#endif /* !YYPARSE_PARAM */ -+ -+/* Prevent warning if -Wstrict-prototypes. */ -+#ifdef __GNUC__ -+# ifdef YYPARSE_PARAM -+int yyparse (void *); -+# else -+int yyparse (void); -+# endif -+#endif -+ -+/* YY_DECL_VARIABLES -- depending whether we use a pure parser, -+ variables are global, or local to YYPARSE. */ -+ -+#define YY_DECL_NON_LSP_VARIABLES \ -+/* The lookahead symbol. */ \ -+int yychar; \ -+ \ -+/* The semantic value of the lookahead symbol. */ \ -+YYSTYPE yylval; \ -+ \ -+/* Number of parse errors so far. */ \ -+int yynerrs; -+ -+#if YYLSP_NEEDED -+# define YY_DECL_VARIABLES \ -+YY_DECL_NON_LSP_VARIABLES \ -+ \ -+/* Location data for the lookahead symbol. */ \ -+YYLTYPE yylloc; -+#else -+# define YY_DECL_VARIABLES \ -+YY_DECL_NON_LSP_VARIABLES -+#endif -+ -+ -+/* If nonreentrant, generate the variables here. */ -+ -+#if !YYPURE -+YY_DECL_VARIABLES -+#endif /* !YYPURE */ -+ -+int -+yyparse (YYPARSE_PARAM_ARG) -+ YYPARSE_PARAM_DECL -+{ -+ /* If reentrant, generate the variables here. */ -+#if YYPURE -+ YY_DECL_VARIABLES -+#endif /* !YYPURE */ -+ -+ register int yystate; -+ register int yyn; -+ int yyresult; -+ /* Number of tokens to shift before error messages enabled. */ -+ int yyerrstatus; -+ /* Lookahead token as an internal (translated) token number. */ -+ int yychar1 = 0; -+ -+ /* Three stacks and their tools: -+ `yyss': related to states, -+ `yyvs': related to semantic values, -+ `yyls': related to locations. -+ -+ Refer to the stacks thru separate pointers, to allow yyoverflow -+ to reallocate them elsewhere. */ -+ -+ /* The state stack. */ -+ short yyssa[YYINITDEPTH]; -+ short *yyss = yyssa; -+ register short *yyssp; -+ -+ /* The semantic value stack. */ -+ YYSTYPE yyvsa[YYINITDEPTH]; -+ YYSTYPE *yyvs = yyvsa; -+ register YYSTYPE *yyvsp; -+ -+#if YYLSP_NEEDED -+ /* The location stack. */ -+ YYLTYPE yylsa[YYINITDEPTH]; -+ YYLTYPE *yyls = yylsa; -+ YYLTYPE *yylsp; -+#endif -+ -+#if YYLSP_NEEDED -+# define YYPOPSTACK (yyvsp--, yyssp--, yylsp--) -+#else -+# define YYPOPSTACK (yyvsp--, yyssp--) -+#endif -+ -+ YYSIZE_T yystacksize = YYINITDEPTH; -+ -+ -+ /* The variables used to return semantic value and location from the -+ action routines. */ -+ YYSTYPE yyval; -+#if YYLSP_NEEDED -+ YYLTYPE yyloc; -+#endif -+ -+ /* When reducing, the number of symbols on the RHS of the reduced -+ rule. */ -+ int yylen; -+ -+ YYDPRINTF ((stderr, "Starting parse\n")); -+ -+ yystate = 0; -+ yyerrstatus = 0; -+ yynerrs = 0; -+ yychar = YYEMPTY; /* Cause a token to be read. */ -+ -+ /* Initialize stack pointers. -+ Waste one element of value and location stack -+ so that they stay on the same level as the state stack. -+ The wasted elements are never initialized. */ -+ -+ yyssp = yyss; -+ yyvsp = yyvs; -+#if YYLSP_NEEDED -+ yylsp = yyls; -+#endif -+ goto yysetstate; -+ -+/*------------------------------------------------------------. -+| yynewstate -- Push a new state, which is found in yystate. | -+`------------------------------------------------------------*/ -+ yynewstate: -+ /* In all cases, when you get here, the value and location stacks -+ have just been pushed. so pushing a state here evens the stacks. -+ */ -+ yyssp++; -+ -+ yysetstate: -+ *yyssp = yystate; -+ -+ if (yyssp >= yyss + yystacksize - 1) -+ { -+ /* Get the current used size of the three stacks, in elements. */ -+ YYSIZE_T yysize = yyssp - yyss + 1; -+ -+#ifdef yyoverflow -+ { -+ /* Give user a chance to reallocate the stack. Use copies of -+ these so that the &'s don't force the real ones into -+ memory. */ -+ YYSTYPE *yyvs1 = yyvs; -+ short *yyss1 = yyss; -+ -+ /* Each stack pointer address is followed by the size of the -+ data in use in that stack, in bytes. */ -+# if YYLSP_NEEDED -+ YYLTYPE *yyls1 = yyls; -+ /* This used to be a conditional around just the two extra args, -+ but that might be undefined if yyoverflow is a macro. */ -+ yyoverflow ("parser stack overflow", -+ &yyss1, yysize * sizeof (*yyssp), -+ &yyvs1, yysize * sizeof (*yyvsp), -+ &yyls1, yysize * sizeof (*yylsp), -+ &yystacksize); -+ yyls = yyls1; -+# else -+ yyoverflow ("parser stack overflow", -+ &yyss1, yysize * sizeof (*yyssp), -+ &yyvs1, yysize * sizeof (*yyvsp), -+ &yystacksize); -+# endif -+ yyss = yyss1; -+ yyvs = yyvs1; -+ } -+#else /* no yyoverflow */ -+# ifndef YYSTACK_RELOCATE -+ goto yyoverflowlab; -+# else -+ /* Extend the stack our own way. */ -+ if (yystacksize >= YYMAXDEPTH) -+ goto yyoverflowlab; -+ yystacksize *= 2; -+ if (yystacksize > YYMAXDEPTH) -+ yystacksize = YYMAXDEPTH; -+ -+ { -+ short *yyss1 = yyss; -+ union yyalloc *yyptr = -+ (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize)); -+ if (! yyptr) -+ goto yyoverflowlab; -+ YYSTACK_RELOCATE (yyss); -+ YYSTACK_RELOCATE (yyvs); -+# if YYLSP_NEEDED -+ YYSTACK_RELOCATE (yyls); -+# endif -+# undef YYSTACK_RELOCATE -+ if (yyss1 != yyssa) -+ YYSTACK_FREE (yyss1); -+ } -+# endif -+#endif /* no yyoverflow */ -+ -+ yyssp = yyss + yysize - 1; -+ yyvsp = yyvs + yysize - 1; -+#if YYLSP_NEEDED -+ yylsp = yyls + yysize - 1; -+#endif -+ -+ YYDPRINTF ((stderr, "Stack size increased to %lu\n", -+ (unsigned long int) yystacksize)); -+ -+ if (yyssp >= yyss + yystacksize - 1) -+ YYABORT; -+ } -+ -+ YYDPRINTF ((stderr, "Entering state %d\n", yystate)); -+ -+ goto yybackup; -+ -+ -+/*-----------. -+| yybackup. | -+`-----------*/ -+yybackup: -+ -+/* Do appropriate processing given the current state. */ -+/* Read a lookahead token if we need one and don't already have one. */ -+/* yyresume: */ -+ -+ /* First try to decide what to do without reference to lookahead token. */ -+ -+ yyn = yypact[yystate]; -+ if (yyn == YYFLAG) -+ goto yydefault; -+ -+ /* Not known => get a lookahead token if don't already have one. */ -+ -+ /* yychar is either YYEMPTY or YYEOF -+ or a valid token in external form. */ -+ -+ if (yychar == YYEMPTY) -+ { -+ YYDPRINTF ((stderr, "Reading a token: ")); -+ yychar = YYLEX; -+ } -+ -+ /* Convert token to internal form (in yychar1) for indexing tables with */ -+ -+ if (yychar <= 0) /* This means end of input. */ -+ { -+ yychar1 = 0; -+ yychar = YYEOF; /* Don't call YYLEX any more */ -+ -+ YYDPRINTF ((stderr, "Now at end of input.\n")); -+ } -+ else -+ { -+ yychar1 = YYTRANSLATE (yychar); -+ -+#if YYDEBUG -+ /* We have to keep this `#if YYDEBUG', since we use variables -+ which are defined only if `YYDEBUG' is set. */ -+ if (yydebug) -+ { -+ YYFPRINTF (stderr, "Next token is %d (%s", -+ yychar, yytname[yychar1]); -+ /* Give the individual parser a way to print the precise -+ meaning of a token, for further debugging info. */ -+# ifdef YYPRINT -+ YYPRINT (stderr, yychar, yylval); -+# endif -+ YYFPRINTF (stderr, ")\n"); -+ } -+#endif -+ } -+ -+ yyn += yychar1; -+ if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != yychar1) -+ goto yydefault; -+ -+ yyn = yytable[yyn]; -+ -+ /* yyn is what to do for this token type in this state. -+ Negative => reduce, -yyn is rule number. -+ Positive => shift, yyn is new state. -+ New state is final state => don't bother to shift, -+ just return success. -+ 0, or most negative number => error. */ -+ -+ if (yyn < 0) -+ { -+ if (yyn == YYFLAG) -+ goto yyerrlab; -+ yyn = -yyn; -+ goto yyreduce; -+ } -+ else if (yyn == 0) -+ goto yyerrlab; -+ -+ if (yyn == YYFINAL) -+ YYACCEPT; -+ -+ /* Shift the lookahead token. */ -+ YYDPRINTF ((stderr, "Shifting token %d (%s), ", -+ yychar, yytname[yychar1])); -+ -+ /* Discard the token being shifted unless it is eof. */ -+ if (yychar != YYEOF) -+ yychar = YYEMPTY; -+ -+ *++yyvsp = yylval; -+#if YYLSP_NEEDED -+ *++yylsp = yylloc; -+#endif -+ -+ /* Count tokens shifted since error; after three, turn off error -+ status. */ -+ if (yyerrstatus) -+ yyerrstatus--; -+ -+ yystate = yyn; -+ goto yynewstate; -+ -+ -+/*-----------------------------------------------------------. -+| yydefault -- do the default action for the current state. | -+`-----------------------------------------------------------*/ -+yydefault: -+ yyn = yydefact[yystate]; -+ if (yyn == 0) -+ goto yyerrlab; -+ goto yyreduce; -+ -+ -+/*-----------------------------. -+| yyreduce -- Do a reduction. | -+`-----------------------------*/ -+yyreduce: -+ /* yyn is the number of a rule to reduce with. */ -+ yylen = yyr2[yyn]; -+ -+ /* If YYLEN is nonzero, implement the default value of the action: -+ `$$ = $1'. -+ -+ Otherwise, the following line sets YYVAL to the semantic value of -+ the lookahead token. This behavior is undocumented and Bison -+ users should not rely upon it. Assigning to YYVAL -+ unconditionally makes the parser a bit smaller, and it avoids a -+ GCC warning that YYVAL may be used uninitialized. */ -+ yyval = yyvsp[1-yylen]; -+ -+#if YYLSP_NEEDED -+ /* Similarly for the default location. Let the user run additional -+ commands if for instance locations are ranges. */ -+ yyloc = yylsp[1-yylen]; -+ YYLLOC_DEFAULT (yyloc, (yylsp - yylen), yylen); -+#endif -+ -+#if YYDEBUG -+ /* We have to keep this `#if YYDEBUG', since we use variables which -+ are defined only if `YYDEBUG' is set. */ -+ if (yydebug) -+ { -+ int yyi; -+ -+ YYFPRINTF (stderr, "Reducing via rule %d (line %d), ", -+ yyn, yyrline[yyn]); -+ -+ /* Print the symbols being reduced, and their result. */ -+ for (yyi = yyprhs[yyn]; yyrhs[yyi] > 0; yyi++) -+ YYFPRINTF (stderr, "%s ", yytname[yyrhs[yyi]]); -+ YYFPRINTF (stderr, " -> %s\n", yytname[yyr1[yyn]]); -+ } -+#endif -+ -+ switch (yyn) { -+ -+case 1: -+#line 151 "plural.y" -+{ -+ if (yyvsp[0].exp == NULL) -+ YYABORT; -+ ((struct parse_args *) arg)->res = yyvsp[0].exp; -+ } -+ break; -+case 2: -+#line 159 "plural.y" -+{ -+ yyval.exp = new_exp_3 (qmop, yyvsp[-4].exp, yyvsp[-2].exp, yyvsp[0].exp); -+ } -+ break; -+case 3: -+#line 163 "plural.y" -+{ -+ yyval.exp = new_exp_2 (lor, yyvsp[-2].exp, yyvsp[0].exp); -+ } -+ break; -+case 4: -+#line 167 "plural.y" -+{ -+ yyval.exp = new_exp_2 (land, yyvsp[-2].exp, yyvsp[0].exp); -+ } -+ break; -+case 5: -+#line 171 "plural.y" -+{ -+ yyval.exp = new_exp_2 (yyvsp[-1].op, yyvsp[-2].exp, yyvsp[0].exp); -+ } -+ break; -+case 6: -+#line 175 "plural.y" -+{ -+ yyval.exp = new_exp_2 (yyvsp[-1].op, yyvsp[-2].exp, yyvsp[0].exp); -+ } -+ break; -+case 7: -+#line 179 "plural.y" -+{ -+ yyval.exp = new_exp_2 (yyvsp[-1].op, yyvsp[-2].exp, yyvsp[0].exp); -+ } -+ break; -+case 8: -+#line 183 "plural.y" -+{ -+ yyval.exp = new_exp_2 (yyvsp[-1].op, yyvsp[-2].exp, yyvsp[0].exp); -+ } -+ break; -+case 9: -+#line 187 "plural.y" -+{ -+ yyval.exp = new_exp_1 (lnot, yyvsp[0].exp); -+ } -+ break; -+case 10: -+#line 191 "plural.y" -+{ -+ yyval.exp = new_exp_0 (var); -+ } -+ break; -+case 11: -+#line 195 "plural.y" -+{ -+ if ((yyval.exp = new_exp_0 (num)) != NULL) -+ yyval.exp->val.num = yyvsp[0].num; -+ } -+ break; -+case 12: -+#line 200 "plural.y" -+{ -+ yyval.exp = yyvsp[-1].exp; -+ } -+ break; -+} -+ -+#line 705 "/usr/local/share/bison/bison.simple" -+ -+ -+ yyvsp -= yylen; -+ yyssp -= yylen; -+#if YYLSP_NEEDED -+ yylsp -= yylen; -+#endif -+ -+#if YYDEBUG -+ if (yydebug) -+ { -+ short *yyssp1 = yyss - 1; -+ YYFPRINTF (stderr, "state stack now"); -+ while (yyssp1 != yyssp) -+ YYFPRINTF (stderr, " %d", *++yyssp1); -+ YYFPRINTF (stderr, "\n"); -+ } -+#endif -+ -+ *++yyvsp = yyval; -+#if YYLSP_NEEDED -+ *++yylsp = yyloc; -+#endif -+ -+ /* Now `shift' the result of the reduction. Determine what state -+ that goes to, based on the state we popped back to and the rule -+ number reduced by. */ -+ -+ yyn = yyr1[yyn]; -+ -+ yystate = yypgoto[yyn - YYNTBASE] + *yyssp; -+ if (yystate >= 0 && yystate <= YYLAST && yycheck[yystate] == *yyssp) -+ yystate = yytable[yystate]; -+ else -+ yystate = yydefgoto[yyn - YYNTBASE]; -+ -+ goto yynewstate; -+ -+ -+/*------------------------------------. -+| yyerrlab -- here on detecting error | -+`------------------------------------*/ -+yyerrlab: -+ /* If not already recovering from an error, report this error. */ -+ if (!yyerrstatus) -+ { -+ ++yynerrs; -+ -+#ifdef YYERROR_VERBOSE -+ yyn = yypact[yystate]; -+ -+ if (yyn > YYFLAG && yyn < YYLAST) -+ { -+ YYSIZE_T yysize = 0; -+ char *yymsg; -+ int yyx, yycount; -+ -+ yycount = 0; -+ /* Start YYX at -YYN if negative to avoid negative indexes in -+ YYCHECK. */ -+ for (yyx = yyn < 0 ? -yyn : 0; -+ yyx < (int) (sizeof (yytname) / sizeof (char *)); yyx++) -+ if (yycheck[yyx + yyn] == yyx) -+ yysize += yystrlen (yytname[yyx]) + 15, yycount++; -+ yysize += yystrlen ("parse error, unexpected ") + 1; -+ yysize += yystrlen (yytname[YYTRANSLATE (yychar)]); -+ yymsg = (char *) YYSTACK_ALLOC (yysize); -+ if (yymsg != 0) -+ { -+ char *yyp = yystpcpy (yymsg, "parse error, unexpected "); -+ yyp = yystpcpy (yyp, yytname[YYTRANSLATE (yychar)]); -+ -+ if (yycount < 5) -+ { -+ yycount = 0; -+ for (yyx = yyn < 0 ? -yyn : 0; -+ yyx < (int) (sizeof (yytname) / sizeof (char *)); -+ yyx++) -+ if (yycheck[yyx + yyn] == yyx) -+ { -+ const char *yyq = ! yycount ? ", expecting " : " or "; -+ yyp = yystpcpy (yyp, yyq); -+ yyp = yystpcpy (yyp, yytname[yyx]); -+ yycount++; -+ } -+ } -+ yyerror (yymsg); -+ YYSTACK_FREE (yymsg); -+ } -+ else -+ yyerror ("parse error; also virtual memory exhausted"); -+ } -+ else -+#endif /* defined (YYERROR_VERBOSE) */ -+ yyerror ("parse error"); -+ } -+ goto yyerrlab1; -+ -+ -+/*--------------------------------------------------. -+| yyerrlab1 -- error raised explicitly by an action | -+`--------------------------------------------------*/ -+yyerrlab1: -+ if (yyerrstatus == 3) -+ { -+ /* If just tried and failed to reuse lookahead token after an -+ error, discard it. */ -+ -+ /* return failure if at end of input */ -+ if (yychar == YYEOF) -+ YYABORT; -+ YYDPRINTF ((stderr, "Discarding token %d (%s).\n", -+ yychar, yytname[yychar1])); -+ yychar = YYEMPTY; -+ } -+ -+ /* Else will try to reuse lookahead token after shifting the error -+ token. */ -+ -+ yyerrstatus = 3; /* Each real token shifted decrements this */ -+ -+ goto yyerrhandle; -+ -+ -+/*-------------------------------------------------------------------. -+| yyerrdefault -- current state does not do anything special for the | -+| error token. | -+`-------------------------------------------------------------------*/ -+yyerrdefault: -+#if 0 -+ /* This is wrong; only states that explicitly want error tokens -+ should shift them. */ -+ -+ /* If its default is to accept any token, ok. Otherwise pop it. */ -+ yyn = yydefact[yystate]; -+ if (yyn) -+ goto yydefault; -+#endif -+ -+ -+/*---------------------------------------------------------------. -+| yyerrpop -- pop the current state because it cannot handle the | -+| error token | -+`---------------------------------------------------------------*/ -+yyerrpop: -+ if (yyssp == yyss) -+ YYABORT; -+ yyvsp--; -+ yystate = *--yyssp; -+#if YYLSP_NEEDED -+ yylsp--; -+#endif -+ -+#if YYDEBUG -+ if (yydebug) -+ { -+ short *yyssp1 = yyss - 1; -+ YYFPRINTF (stderr, "Error: state stack now"); -+ while (yyssp1 != yyssp) -+ YYFPRINTF (stderr, " %d", *++yyssp1); -+ YYFPRINTF (stderr, "\n"); -+ } -+#endif -+ -+/*--------------. -+| yyerrhandle. | -+`--------------*/ -+yyerrhandle: -+ yyn = yypact[yystate]; -+ if (yyn == YYFLAG) -+ goto yyerrdefault; -+ -+ yyn += YYTERROR; -+ if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != YYTERROR) -+ goto yyerrdefault; -+ -+ yyn = yytable[yyn]; -+ if (yyn < 0) -+ { -+ if (yyn == YYFLAG) -+ goto yyerrpop; -+ yyn = -yyn; -+ goto yyreduce; -+ } -+ else if (yyn == 0) -+ goto yyerrpop; -+ -+ if (yyn == YYFINAL) -+ YYACCEPT; -+ -+ YYDPRINTF ((stderr, "Shifting error token, ")); -+ -+ *++yyvsp = yylval; -+#if YYLSP_NEEDED -+ *++yylsp = yylloc; -+#endif -+ -+ yystate = yyn; -+ goto yynewstate; -+ -+ -+/*-------------------------------------. -+| yyacceptlab -- YYACCEPT comes here. | -+`-------------------------------------*/ -+yyacceptlab: -+ yyresult = 0; -+ goto yyreturn; -+ -+/*-----------------------------------. -+| yyabortlab -- YYABORT comes here. | -+`-----------------------------------*/ -+yyabortlab: -+ yyresult = 1; -+ goto yyreturn; -+ -+/*---------------------------------------------. -+| yyoverflowab -- parser overflow comes here. | -+`---------------------------------------------*/ -+yyoverflowlab: -+ yyerror ("parser stack overflow"); -+ yyresult = 2; -+ /* Fall through. */ -+ -+yyreturn: -+#ifndef yyoverflow -+ if (yyss != yyssa) -+ YYSTACK_FREE (yyss); -+#endif -+ return yyresult; -+} -+#line 205 "plural.y" -+ -+ -+void -+internal_function -+FREE_EXPRESSION (struct expression *exp) -+{ -+ if (exp == NULL) -+ return; -+ -+ /* Handle the recursive case. */ -+ switch (exp->nargs) -+ { -+ case 3: -+ FREE_EXPRESSION (exp->val.args[2]); -+ /* FALLTHROUGH */ -+ case 2: -+ FREE_EXPRESSION (exp->val.args[1]); -+ /* FALLTHROUGH */ -+ case 1: -+ FREE_EXPRESSION (exp->val.args[0]); -+ /* FALLTHROUGH */ -+ default: -+ break; -+ } -+ -+ free (exp); -+} -+ -+ -+static int -+yylex (YYSTYPE *lval, const char **pexp) -+{ -+ const char *exp = *pexp; -+ int result; -+ -+ while (1) -+ { -+ if (exp[0] == '\0') -+ { -+ *pexp = exp; -+ return YYEOF; -+ } -+ -+ if (exp[0] != ' ' && exp[0] != '\t') -+ break; -+ -+ ++exp; -+ } -+ -+ result = *exp++; -+ switch (result) -+ { -+ case '0': case '1': case '2': case '3': case '4': -+ case '5': case '6': case '7': case '8': case '9': -+ { -+ unsigned long int n = result - '0'; -+ while (exp[0] >= '0' && exp[0] <= '9') -+ { -+ n *= 10; -+ n += exp[0] - '0'; -+ ++exp; -+ } -+ lval->num = n; -+ result = NUMBER; -+ } -+ break; -+ -+ case '=': -+ if (exp[0] == '=') -+ { -+ ++exp; -+ lval->op = equal; -+ result = EQUOP2; -+ } -+ else -+ result = YYERRCODE; -+ break; -+ -+ case '!': -+ if (exp[0] == '=') -+ { -+ ++exp; -+ lval->op = not_equal; -+ result = EQUOP2; -+ } -+ break; -+ -+ case '&': -+ case '|': -+ if (exp[0] == result) -+ ++exp; -+ else -+ result = YYERRCODE; -+ break; -+ -+ case '<': -+ if (exp[0] == '=') -+ { -+ ++exp; -+ lval->op = less_or_equal; -+ } -+ else -+ lval->op = less_than; -+ result = CMPOP2; -+ break; -+ -+ case '>': -+ if (exp[0] == '=') -+ { -+ ++exp; -+ lval->op = greater_or_equal; -+ } -+ else -+ lval->op = greater_than; -+ result = CMPOP2; -+ break; -+ -+ case '*': -+ lval->op = mult; -+ result = MULOP2; -+ break; -+ -+ case '/': -+ lval->op = divide; -+ result = MULOP2; -+ break; -+ -+ case '%': -+ lval->op = module; -+ result = MULOP2; -+ break; -+ -+ case '+': -+ lval->op = plus; -+ result = ADDOP2; -+ break; -+ -+ case '-': -+ lval->op = minus; -+ result = ADDOP2; -+ break; -+ -+ case 'n': -+ case '?': -+ case ':': -+ case '(': -+ case ')': -+ /* Nothing, just return the character. */ -+ break; -+ -+ case ';': -+ case '\n': -+ case '\0': -+ /* Be safe and let the user call this function again. */ -+ --exp; -+ result = YYEOF; -+ break; -+ -+ default: -+ result = YYERRCODE; -+#if YYDEBUG != 0 -+ --exp; -+#endif -+ break; -+ } -+ -+ *pexp = exp; -+ -+ return result; -+} -+ -+ -+static void -+yyerror (const char *str) -+{ -+ /* Do nothing. We don't print error messages here. */ -+} ---- lrzsz-0.12.20.safe/intl/plural-exp.c 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/plural-exp.c 2004-09-12 14:40:34.578714192 -0400 -@@ -0,0 +1,154 @@ -+/* Expression parsing for plural form selection. -+ Copyright (C) 2000-2001, 2003 Free Software Foundation, Inc. -+ Written by Ulrich Drepper , 2000. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+#ifdef HAVE_CONFIG_H -+# include -+#endif -+ -+#include -+#include -+#include -+ -+#include "plural-exp.h" -+ -+#if (defined __GNUC__ && !defined __APPLE_CC__) \ -+ || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L) -+ -+/* These structs are the constant expression for the germanic plural -+ form determination. It represents the expression "n != 1". */ -+static const struct expression plvar = -+{ -+ .nargs = 0, -+ .operation = var, -+}; -+static const struct expression plone = -+{ -+ .nargs = 0, -+ .operation = num, -+ .val = -+ { -+ .num = 1 -+ } -+}; -+struct expression GERMANIC_PLURAL = -+{ -+ .nargs = 2, -+ .operation = not_equal, -+ .val = -+ { -+ .args = -+ { -+ [0] = (struct expression *) &plvar, -+ [1] = (struct expression *) &plone -+ } -+ } -+}; -+ -+# define INIT_GERMANIC_PLURAL() -+ -+#else -+ -+/* For compilers without support for ISO C 99 struct/union initializers: -+ Initialization at run-time. */ -+ -+static struct expression plvar; -+static struct expression plone; -+struct expression GERMANIC_PLURAL; -+ -+static void -+init_germanic_plural () -+{ -+ if (plone.val.num == 0) -+ { -+ plvar.nargs = 0; -+ plvar.operation = var; -+ -+ plone.nargs = 0; -+ plone.operation = num; -+ plone.val.num = 1; -+ -+ GERMANIC_PLURAL.nargs = 2; -+ GERMANIC_PLURAL.operation = not_equal; -+ GERMANIC_PLURAL.val.args[0] = &plvar; -+ GERMANIC_PLURAL.val.args[1] = &plone; -+ } -+} -+ -+# define INIT_GERMANIC_PLURAL() init_germanic_plural () -+ -+#endif -+ -+void -+internal_function -+EXTRACT_PLURAL_EXPRESSION (const char *nullentry, struct expression **pluralp, -+ unsigned long int *npluralsp) -+{ -+ if (nullentry != NULL) -+ { -+ const char *plural; -+ const char *nplurals; -+ -+ plural = strstr (nullentry, "plural="); -+ nplurals = strstr (nullentry, "nplurals="); -+ if (plural == NULL || nplurals == NULL) -+ goto no_plural; -+ else -+ { -+ char *endp; -+ unsigned long int n; -+ struct parse_args args; -+ -+ /* First get the number. */ -+ nplurals += 9; -+ while (*nplurals != '\0' && isspace ((unsigned char) *nplurals)) -+ ++nplurals; -+ if (!(*nplurals >= '0' && *nplurals <= '9')) -+ goto no_plural; -+#if defined HAVE_STRTOUL || defined _LIBC -+ n = strtoul (nplurals, &endp, 10); -+#else -+ for (endp = nplurals, n = 0; *endp >= '0' && *endp <= '9'; endp++) -+ n = n * 10 + (*endp - '0'); -+#endif -+ if (nplurals == endp) -+ goto no_plural; -+ *npluralsp = n; -+ -+ /* Due to the restrictions bison imposes onto the interface of the -+ scanner function we have to put the input string and the result -+ passed up from the parser into the same structure which address -+ is passed down to the parser. */ -+ plural += 7; -+ args.cp = plural; -+ if (PLURAL_PARSE (&args) != 0) -+ goto no_plural; -+ *pluralp = args.res; -+ } -+ } -+ else -+ { -+ /* By default we are using the Germanic form: singular form only -+ for `one', the plural form otherwise. Yes, this is also what -+ English is using since English is a Germanic language. */ -+ no_plural: -+ INIT_GERMANIC_PLURAL (); -+ *pluralp = &GERMANIC_PLURAL; -+ *npluralsp = 2; -+ } -+} ---- lrzsz-0.12.20.safe/intl/plural-exp.h 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/plural-exp.h 2004-09-12 14:40:34.584713280 -0400 -@@ -0,0 +1,118 @@ -+/* Expression parsing and evaluation for plural form selection. -+ Copyright (C) 2000-2003 Free Software Foundation, Inc. -+ Written by Ulrich Drepper , 2000. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+#ifndef _PLURAL_EXP_H -+#define _PLURAL_EXP_H -+ -+#ifndef internal_function -+# define internal_function -+#endif -+ -+#ifndef attribute_hidden -+# define attribute_hidden -+#endif -+ -+ -+/* This is the representation of the expressions to determine the -+ plural form. */ -+struct expression -+{ -+ int nargs; /* Number of arguments. */ -+ enum operator -+ { -+ /* Without arguments: */ -+ var, /* The variable "n". */ -+ num, /* Decimal number. */ -+ /* Unary operators: */ -+ lnot, /* Logical NOT. */ -+ /* Binary operators: */ -+ mult, /* Multiplication. */ -+ divide, /* Division. */ -+ module, /* Modulo operation. */ -+ plus, /* Addition. */ -+ minus, /* Subtraction. */ -+ less_than, /* Comparison. */ -+ greater_than, /* Comparison. */ -+ less_or_equal, /* Comparison. */ -+ greater_or_equal, /* Comparison. */ -+ equal, /* Comparison for equality. */ -+ not_equal, /* Comparison for inequality. */ -+ land, /* Logical AND. */ -+ lor, /* Logical OR. */ -+ /* Ternary operators: */ -+ qmop /* Question mark operator. */ -+ } operation; -+ union -+ { -+ unsigned long int num; /* Number value for `num'. */ -+ struct expression *args[3]; /* Up to three arguments. */ -+ } val; -+}; -+ -+/* This is the data structure to pass information to the parser and get -+ the result in a thread-safe way. */ -+struct parse_args -+{ -+ const char *cp; -+ struct expression *res; -+}; -+ -+ -+/* Names for the libintl functions are a problem. This source code is used -+ 1. in the GNU C Library library, -+ 2. in the GNU libintl library, -+ 3. in the GNU gettext tools. -+ The function names in each situation must be different, to allow for -+ binary incompatible changes in 'struct expression'. Furthermore, -+ 1. in the GNU C Library library, the names have a __ prefix, -+ 2.+3. in the GNU libintl library and in the GNU gettext tools, the names -+ must follow ANSI C and not start with __. -+ So we have to distinguish the three cases. */ -+#ifdef _LIBC -+# define FREE_EXPRESSION __gettext_free_exp -+# define PLURAL_PARSE __gettextparse -+# define GERMANIC_PLURAL __gettext_germanic_plural -+# define EXTRACT_PLURAL_EXPRESSION __gettext_extract_plural -+#elif defined (IN_LIBINTL) -+# define FREE_EXPRESSION libintl_gettext_free_exp -+# define PLURAL_PARSE libintl_gettextparse -+# define GERMANIC_PLURAL libintl_gettext_germanic_plural -+# define EXTRACT_PLURAL_EXPRESSION libintl_gettext_extract_plural -+#else -+# define FREE_EXPRESSION free_plural_expression -+# define PLURAL_PARSE parse_plural_expression -+# define GERMANIC_PLURAL germanic_plural -+# define EXTRACT_PLURAL_EXPRESSION extract_plural_expression -+#endif -+ -+extern void FREE_EXPRESSION (struct expression *exp) -+ internal_function; -+extern int PLURAL_PARSE (void *arg); -+extern struct expression GERMANIC_PLURAL attribute_hidden; -+extern void EXTRACT_PLURAL_EXPRESSION (const char *nullentry, -+ struct expression **pluralp, -+ unsigned long int *npluralsp) -+ internal_function; -+ -+#if !defined (_LIBC) && !defined (IN_LIBINTL) -+extern unsigned long int plural_eval (struct expression *pexp, -+ unsigned long int n); -+#endif -+ -+#endif /* _PLURAL_EXP_H */ ---- lrzsz-0.12.20.safe/intl/plural.y 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/plural.y 2004-09-12 14:40:34.589712520 -0400 -@@ -0,0 +1,381 @@ -+%{ -+/* Expression parsing for plural form selection. -+ Copyright (C) 2000-2001, 2003 Free Software Foundation, Inc. -+ Written by Ulrich Drepper , 2000. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+/* The bison generated parser uses alloca. AIX 3 forces us to put this -+ declaration at the beginning of the file. The declaration in bison's -+ skeleton file comes too late. This must come before -+ because may include arbitrary system headers. */ -+#if defined _AIX && !defined __GNUC__ -+ #pragma alloca -+#endif -+ -+#ifdef HAVE_CONFIG_H -+# include -+#endif -+ -+#include -+#include -+#include "plural-exp.h" -+ -+/* The main function generated by the parser is called __gettextparse, -+ but we want it to be called PLURAL_PARSE. */ -+#ifndef _LIBC -+# define __gettextparse PLURAL_PARSE -+#endif -+ -+#define YYLEX_PARAM &((struct parse_args *) arg)->cp -+#define YYPARSE_PARAM arg -+%} -+%pure_parser -+%expect 7 -+ -+%union { -+ unsigned long int num; -+ enum operator op; -+ struct expression *exp; -+} -+ -+%{ -+/* Prototypes for local functions. */ -+static int yylex (YYSTYPE *lval, const char **pexp); -+static void yyerror (const char *str); -+ -+/* Allocation of expressions. */ -+ -+static struct expression * -+new_exp (int nargs, enum operator op, struct expression * const *args) -+{ -+ int i; -+ struct expression *newp; -+ -+ /* If any of the argument could not be malloc'ed, just return NULL. */ -+ for (i = nargs - 1; i >= 0; i--) -+ if (args[i] == NULL) -+ goto fail; -+ -+ /* Allocate a new expression. */ -+ newp = (struct expression *) malloc (sizeof (*newp)); -+ if (newp != NULL) -+ { -+ newp->nargs = nargs; -+ newp->operation = op; -+ for (i = nargs - 1; i >= 0; i--) -+ newp->val.args[i] = args[i]; -+ return newp; -+ } -+ -+ fail: -+ for (i = nargs - 1; i >= 0; i--) -+ FREE_EXPRESSION (args[i]); -+ -+ return NULL; -+} -+ -+static inline struct expression * -+new_exp_0 (enum operator op) -+{ -+ return new_exp (0, op, NULL); -+} -+ -+static inline struct expression * -+new_exp_1 (enum operator op, struct expression *right) -+{ -+ struct expression *args[1]; -+ -+ args[0] = right; -+ return new_exp (1, op, args); -+} -+ -+static struct expression * -+new_exp_2 (enum operator op, struct expression *left, struct expression *right) -+{ -+ struct expression *args[2]; -+ -+ args[0] = left; -+ args[1] = right; -+ return new_exp (2, op, args); -+} -+ -+static inline struct expression * -+new_exp_3 (enum operator op, struct expression *bexp, -+ struct expression *tbranch, struct expression *fbranch) -+{ -+ struct expression *args[3]; -+ -+ args[0] = bexp; -+ args[1] = tbranch; -+ args[2] = fbranch; -+ return new_exp (3, op, args); -+} -+ -+%} -+ -+/* This declares that all operators have the same associativity and the -+ precedence order as in C. See [Harbison, Steele: C, A Reference Manual]. -+ There is no unary minus and no bitwise operators. -+ Operators with the same syntactic behaviour have been merged into a single -+ token, to save space in the array generated by bison. */ -+%right '?' /* ? */ -+%left '|' /* || */ -+%left '&' /* && */ -+%left EQUOP2 /* == != */ -+%left CMPOP2 /* < > <= >= */ -+%left ADDOP2 /* + - */ -+%left MULOP2 /* * / % */ -+%right '!' /* ! */ -+ -+%token EQUOP2 CMPOP2 ADDOP2 MULOP2 -+%token NUMBER -+%type exp -+ -+%% -+ -+start: exp -+ { -+ if ($1 == NULL) -+ YYABORT; -+ ((struct parse_args *) arg)->res = $1; -+ } -+ ; -+ -+exp: exp '?' exp ':' exp -+ { -+ $$ = new_exp_3 (qmop, $1, $3, $5); -+ } -+ | exp '|' exp -+ { -+ $$ = new_exp_2 (lor, $1, $3); -+ } -+ | exp '&' exp -+ { -+ $$ = new_exp_2 (land, $1, $3); -+ } -+ | exp EQUOP2 exp -+ { -+ $$ = new_exp_2 ($2, $1, $3); -+ } -+ | exp CMPOP2 exp -+ { -+ $$ = new_exp_2 ($2, $1, $3); -+ } -+ | exp ADDOP2 exp -+ { -+ $$ = new_exp_2 ($2, $1, $3); -+ } -+ | exp MULOP2 exp -+ { -+ $$ = new_exp_2 ($2, $1, $3); -+ } -+ | '!' exp -+ { -+ $$ = new_exp_1 (lnot, $2); -+ } -+ | 'n' -+ { -+ $$ = new_exp_0 (var); -+ } -+ | NUMBER -+ { -+ if (($$ = new_exp_0 (num)) != NULL) -+ $$->val.num = $1; -+ } -+ | '(' exp ')' -+ { -+ $$ = $2; -+ } -+ ; -+ -+%% -+ -+void -+internal_function -+FREE_EXPRESSION (struct expression *exp) -+{ -+ if (exp == NULL) -+ return; -+ -+ /* Handle the recursive case. */ -+ switch (exp->nargs) -+ { -+ case 3: -+ FREE_EXPRESSION (exp->val.args[2]); -+ /* FALLTHROUGH */ -+ case 2: -+ FREE_EXPRESSION (exp->val.args[1]); -+ /* FALLTHROUGH */ -+ case 1: -+ FREE_EXPRESSION (exp->val.args[0]); -+ /* FALLTHROUGH */ -+ default: -+ break; -+ } -+ -+ free (exp); -+} -+ -+ -+static int -+yylex (YYSTYPE *lval, const char **pexp) -+{ -+ const char *exp = *pexp; -+ int result; -+ -+ while (1) -+ { -+ if (exp[0] == '\0') -+ { -+ *pexp = exp; -+ return YYEOF; -+ } -+ -+ if (exp[0] != ' ' && exp[0] != '\t') -+ break; -+ -+ ++exp; -+ } -+ -+ result = *exp++; -+ switch (result) -+ { -+ case '0': case '1': case '2': case '3': case '4': -+ case '5': case '6': case '7': case '8': case '9': -+ { -+ unsigned long int n = result - '0'; -+ while (exp[0] >= '0' && exp[0] <= '9') -+ { -+ n *= 10; -+ n += exp[0] - '0'; -+ ++exp; -+ } -+ lval->num = n; -+ result = NUMBER; -+ } -+ break; -+ -+ case '=': -+ if (exp[0] == '=') -+ { -+ ++exp; -+ lval->op = equal; -+ result = EQUOP2; -+ } -+ else -+ result = YYERRCODE; -+ break; -+ -+ case '!': -+ if (exp[0] == '=') -+ { -+ ++exp; -+ lval->op = not_equal; -+ result = EQUOP2; -+ } -+ break; -+ -+ case '&': -+ case '|': -+ if (exp[0] == result) -+ ++exp; -+ else -+ result = YYERRCODE; -+ break; -+ -+ case '<': -+ if (exp[0] == '=') -+ { -+ ++exp; -+ lval->op = less_or_equal; -+ } -+ else -+ lval->op = less_than; -+ result = CMPOP2; -+ break; -+ -+ case '>': -+ if (exp[0] == '=') -+ { -+ ++exp; -+ lval->op = greater_or_equal; -+ } -+ else -+ lval->op = greater_than; -+ result = CMPOP2; -+ break; -+ -+ case '*': -+ lval->op = mult; -+ result = MULOP2; -+ break; -+ -+ case '/': -+ lval->op = divide; -+ result = MULOP2; -+ break; -+ -+ case '%': -+ lval->op = module; -+ result = MULOP2; -+ break; -+ -+ case '+': -+ lval->op = plus; -+ result = ADDOP2; -+ break; -+ -+ case '-': -+ lval->op = minus; -+ result = ADDOP2; -+ break; -+ -+ case 'n': -+ case '?': -+ case ':': -+ case '(': -+ case ')': -+ /* Nothing, just return the character. */ -+ break; -+ -+ case ';': -+ case '\n': -+ case '\0': -+ /* Be safe and let the user call this function again. */ -+ --exp; -+ result = YYEOF; -+ break; -+ -+ default: -+ result = YYERRCODE; -+#if YYDEBUG != 0 -+ --exp; -+#endif -+ break; -+ } -+ -+ *pexp = exp; -+ -+ return result; -+} -+ -+ -+static void -+yyerror (const char *str) -+{ -+ /* Do nothing. We don't print error messages here. */ -+} ---- lrzsz-0.12.20.safe/intl/po2tbl.sed.in 1998-04-26 09:20:52.000000000 -0400 -+++ lrzsz-0.12.20/intl/po2tbl.sed.in 1969-12-31 19:00:00.000000000 -0500 -@@ -1,102 +0,0 @@ --# po2tbl.sed - Convert Uniforum style .po file to lookup table for catgets --# Copyright (C) 1995 Free Software Foundation, Inc. --# Ulrich Drepper , 1995. --# --# This program is free software; you can redistribute it and/or modify --# it under the terms of the GNU General Public License as published by --# the Free Software Foundation; either version 2, or (at your option) --# any later version. --# --# This program is distributed in the hope that it will be useful, --# but WITHOUT ANY WARRANTY; without even the implied warranty of --# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the --# GNU General Public License for more details. --# --# You should have received a copy of the GNU General Public License --# along with this program; if not, write to the Free Software --# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. --# --1 { -- i\ --/* Automatically generated by po2tbl.sed from @PACKAGE NAME@.pot. */\ --\ --#if HAVE_CONFIG_H\ --# include \ --#endif\ --\ --#include "libgettext.h"\ --\ --const struct _msg_ent _msg_tbl[] = { -- h -- s/.*/0/ -- x --} --# --# Write msgid entries in C array form. --# --/^msgid/ { -- s/msgid[ ]*\(".*"\)/ {\1/ -- tb --# Append the next line -- :b -- N --# Look whether second part is continuation line. -- s/\(.*\)"\(\n\)"\(.*"\)/\1\2\3/ --# Yes, then branch. -- ta --# Because we assume that the input file correctly formed the line --# just read cannot be again be a msgid line. So it's safe to ignore --# it. -- s/\(.*\)\n.*/\1/ -- bc --# We found a continuation line. But before printing insert '\'. -- :a -- s/\(.*\)\(\n.*\)/\1\\\2/ -- P --# We cannot use D here. -- s/.*\n\(.*\)/\1/ --# Some buggy seds do not clear the `successful substitution since last ``t''' --# flag on `N', so we do a `t' here to clear it. -- tb --# Not reached -- :c -- x --# The following nice solution is by --# Bruno -- td --# Increment a decimal number in pattern space. --# First hide trailing `9' digits. -- :d -- s/9\(_*\)$/_\1/ -- td --# Assure at least one digit is available. -- s/^\(_*\)$/0\1/ --# Increment the last digit. -- s/8\(_*\)$/9\1/ -- s/7\(_*\)$/8\1/ -- s/6\(_*\)$/7\1/ -- s/5\(_*\)$/6\1/ -- s/4\(_*\)$/5\1/ -- s/3\(_*\)$/4\1/ -- s/2\(_*\)$/3\1/ -- s/1\(_*\)$/2\1/ -- s/0\(_*\)$/1\1/ --# Convert the hidden `9' digits to `0's. -- s/_/0/g -- x -- G -- s/\(.*\)\n\([0-9]*\)/\1, \2},/ -- s/\(.*\)"$/\1/ -- p --} --# --# Last line. --# --$ { -- i\ --};\ -- -- g -- s/0*\(.*\)/int _msg_tbl_length = \1;/p --} --d ---- lrzsz-0.12.20.safe/intl/printf-args.c 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/printf-args.c 2004-09-12 14:40:34.595711608 -0400 -@@ -0,0 +1,119 @@ -+/* Decomposed printf argument list. -+ Copyright (C) 1999, 2002-2003 Free Software Foundation, Inc. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+#ifdef HAVE_CONFIG_H -+# include -+#endif -+ -+/* Specification. */ -+#include "printf-args.h" -+ -+#ifdef STATIC -+STATIC -+#endif -+int -+printf_fetchargs (va_list args, arguments *a) -+{ -+ size_t i; -+ argument *ap; -+ -+ for (i = 0, ap = &a->arg[0]; i < a->count; i++, ap++) -+ switch (ap->type) -+ { -+ case TYPE_SCHAR: -+ ap->a.a_schar = va_arg (args, /*signed char*/ int); -+ break; -+ case TYPE_UCHAR: -+ ap->a.a_uchar = va_arg (args, /*unsigned char*/ int); -+ break; -+ case TYPE_SHORT: -+ ap->a.a_short = va_arg (args, /*short*/ int); -+ break; -+ case TYPE_USHORT: -+ ap->a.a_ushort = va_arg (args, /*unsigned short*/ int); -+ break; -+ case TYPE_INT: -+ ap->a.a_int = va_arg (args, int); -+ break; -+ case TYPE_UINT: -+ ap->a.a_uint = va_arg (args, unsigned int); -+ break; -+ case TYPE_LONGINT: -+ ap->a.a_longint = va_arg (args, long int); -+ break; -+ case TYPE_ULONGINT: -+ ap->a.a_ulongint = va_arg (args, unsigned long int); -+ break; -+#ifdef HAVE_LONG_LONG -+ case TYPE_LONGLONGINT: -+ ap->a.a_longlongint = va_arg (args, long long int); -+ break; -+ case TYPE_ULONGLONGINT: -+ ap->a.a_ulonglongint = va_arg (args, unsigned long long int); -+ break; -+#endif -+ case TYPE_DOUBLE: -+ ap->a.a_double = va_arg (args, double); -+ break; -+#ifdef HAVE_LONG_DOUBLE -+ case TYPE_LONGDOUBLE: -+ ap->a.a_longdouble = va_arg (args, long double); -+ break; -+#endif -+ case TYPE_CHAR: -+ ap->a.a_char = va_arg (args, int); -+ break; -+#ifdef HAVE_WINT_T -+ case TYPE_WIDE_CHAR: -+ ap->a.a_wide_char = va_arg (args, wint_t); -+ break; -+#endif -+ case TYPE_STRING: -+ ap->a.a_string = va_arg (args, const char *); -+ break; -+#ifdef HAVE_WCHAR_T -+ case TYPE_WIDE_STRING: -+ ap->a.a_wide_string = va_arg (args, const wchar_t *); -+ break; -+#endif -+ case TYPE_POINTER: -+ ap->a.a_pointer = va_arg (args, void *); -+ break; -+ case TYPE_COUNT_SCHAR_POINTER: -+ ap->a.a_count_schar_pointer = va_arg (args, signed char *); -+ break; -+ case TYPE_COUNT_SHORT_POINTER: -+ ap->a.a_count_short_pointer = va_arg (args, short *); -+ break; -+ case TYPE_COUNT_INT_POINTER: -+ ap->a.a_count_int_pointer = va_arg (args, int *); -+ break; -+ case TYPE_COUNT_LONGINT_POINTER: -+ ap->a.a_count_longint_pointer = va_arg (args, long int *); -+ break; -+#ifdef HAVE_LONG_LONG -+ case TYPE_COUNT_LONGLONGINT_POINTER: -+ ap->a.a_count_longlongint_pointer = va_arg (args, long long int *); -+ break; -+#endif -+ default: -+ /* Unknown type. */ -+ return -1; -+ } -+ return 0; -+} ---- lrzsz-0.12.20.safe/intl/printf-args.h 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/printf-args.h 2004-09-12 14:40:34.601710696 -0400 -@@ -0,0 +1,137 @@ -+/* Decomposed printf argument list. -+ Copyright (C) 1999, 2002-2003 Free Software Foundation, Inc. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+#ifndef _PRINTF_ARGS_H -+#define _PRINTF_ARGS_H -+ -+/* Get size_t. */ -+#include -+ -+/* Get wchar_t. */ -+#ifdef HAVE_WCHAR_T -+# include -+#endif -+ -+/* Get wint_t. */ -+#ifdef HAVE_WINT_T -+# include -+#endif -+ -+/* Get va_list. */ -+#include -+ -+ -+/* Argument types */ -+typedef enum -+{ -+ TYPE_NONE, -+ TYPE_SCHAR, -+ TYPE_UCHAR, -+ TYPE_SHORT, -+ TYPE_USHORT, -+ TYPE_INT, -+ TYPE_UINT, -+ TYPE_LONGINT, -+ TYPE_ULONGINT, -+#ifdef HAVE_LONG_LONG -+ TYPE_LONGLONGINT, -+ TYPE_ULONGLONGINT, -+#endif -+ TYPE_DOUBLE, -+#ifdef HAVE_LONG_DOUBLE -+ TYPE_LONGDOUBLE, -+#endif -+ TYPE_CHAR, -+#ifdef HAVE_WINT_T -+ TYPE_WIDE_CHAR, -+#endif -+ TYPE_STRING, -+#ifdef HAVE_WCHAR_T -+ TYPE_WIDE_STRING, -+#endif -+ TYPE_POINTER, -+ TYPE_COUNT_SCHAR_POINTER, -+ TYPE_COUNT_SHORT_POINTER, -+ TYPE_COUNT_INT_POINTER, -+ TYPE_COUNT_LONGINT_POINTER -+#ifdef HAVE_LONG_LONG -+, TYPE_COUNT_LONGLONGINT_POINTER -+#endif -+} arg_type; -+ -+/* Polymorphic argument */ -+typedef struct -+{ -+ arg_type type; -+ union -+ { -+ signed char a_schar; -+ unsigned char a_uchar; -+ short a_short; -+ unsigned short a_ushort; -+ int a_int; -+ unsigned int a_uint; -+ long int a_longint; -+ unsigned long int a_ulongint; -+#ifdef HAVE_LONG_LONG -+ long long int a_longlongint; -+ unsigned long long int a_ulonglongint; -+#endif -+ float a_float; -+ double a_double; -+#ifdef HAVE_LONG_DOUBLE -+ long double a_longdouble; -+#endif -+ int a_char; -+#ifdef HAVE_WINT_T -+ wint_t a_wide_char; -+#endif -+ const char* a_string; -+#ifdef HAVE_WCHAR_T -+ const wchar_t* a_wide_string; -+#endif -+ void* a_pointer; -+ signed char * a_count_schar_pointer; -+ short * a_count_short_pointer; -+ int * a_count_int_pointer; -+ long int * a_count_longint_pointer; -+#ifdef HAVE_LONG_LONG -+ long long int * a_count_longlongint_pointer; -+#endif -+ } -+ a; -+} -+argument; -+ -+typedef struct -+{ -+ size_t count; -+ argument *arg; -+} -+arguments; -+ -+ -+/* Fetch the arguments, putting them into a. */ -+#ifdef STATIC -+STATIC -+#else -+extern -+#endif -+int printf_fetchargs (va_list args, arguments *a); -+ -+#endif /* _PRINTF_ARGS_H */ ---- lrzsz-0.12.20.safe/intl/printf.c 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/printf.c 2004-09-12 14:40:34.607709784 -0400 -@@ -0,0 +1,371 @@ -+/* Formatted output to strings, using POSIX/XSI format strings with positions. -+ Copyright (C) 2003 Free Software Foundation, Inc. -+ Written by Bruno Haible , 2003. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+#ifdef HAVE_CONFIG_H -+# include -+#endif -+ -+#ifdef __GNUC__ -+# define alloca __builtin_alloca -+# define HAVE_ALLOCA 1 -+#else -+# ifdef _MSC_VER -+# include -+# define alloca _alloca -+# else -+# if defined HAVE_ALLOCA_H || defined _LIBC -+# include -+# else -+# ifdef _AIX -+ #pragma alloca -+# else -+# ifndef alloca -+char *alloca (); -+# endif -+# endif -+# endif -+# endif -+#endif -+ -+#include -+ -+#if !HAVE_POSIX_PRINTF -+ -+#include -+#include -+ -+/* When building a DLL, we must export some functions. Note that because -+ the functions are only defined for binary backward compatibility, we -+ don't need to use __declspec(dllimport) in any case. */ -+#if defined _MSC_VER && BUILDING_DLL -+# define DLL_EXPORTED __declspec(dllexport) -+#else -+# define DLL_EXPORTED -+#endif -+ -+#define STATIC static -+ -+/* Define auxiliary functions declared in "printf-args.h". */ -+#include "printf-args.c" -+ -+/* Define auxiliary functions declared in "printf-parse.h". */ -+#include "printf-parse.c" -+ -+/* Define functions declared in "vasnprintf.h". */ -+#define vasnprintf libintl_vasnprintf -+#include "vasnprintf.c" -+#if 0 /* not needed */ -+#define asnprintf libintl_asnprintf -+#include "asnprintf.c" -+#endif -+ -+DLL_EXPORTED -+int -+libintl_vfprintf (FILE *stream, const char *format, va_list args) -+{ -+ if (strchr (format, '$') == NULL) -+ return vfprintf (stream, format, args); -+ else -+ { -+ size_t length; -+ char *result = libintl_vasnprintf (NULL, &length, format, args); -+ int retval = -1; -+ if (result != NULL) -+ { -+ if (fwrite (result, 1, length, stream) == length) -+ retval = length; -+ free (result); -+ } -+ return retval; -+ } -+} -+ -+DLL_EXPORTED -+int -+libintl_fprintf (FILE *stream, const char *format, ...) -+{ -+ va_list args; -+ int retval; -+ -+ va_start (args, format); -+ retval = libintl_vfprintf (stream, format, args); -+ va_end (args); -+ return retval; -+} -+ -+DLL_EXPORTED -+int -+libintl_vprintf (const char *format, va_list args) -+{ -+ return libintl_vfprintf (stdout, format, args); -+} -+ -+DLL_EXPORTED -+int -+libintl_printf (const char *format, ...) -+{ -+ va_list args; -+ int retval; -+ -+ va_start (args, format); -+ retval = libintl_vprintf (format, args); -+ va_end (args); -+ return retval; -+} -+ -+DLL_EXPORTED -+int -+libintl_vsprintf (char *resultbuf, const char *format, va_list args) -+{ -+ if (strchr (format, '$') == NULL) -+ return vsprintf (resultbuf, format, args); -+ else -+ { -+ size_t length = (size_t) ~0 / (4 * sizeof (char)); -+ char *result = libintl_vasnprintf (resultbuf, &length, format, args); -+ if (result != resultbuf) -+ { -+ free (result); -+ return -1; -+ } -+ else -+ return length; -+ } -+} -+ -+DLL_EXPORTED -+int -+libintl_sprintf (char *resultbuf, const char *format, ...) -+{ -+ va_list args; -+ int retval; -+ -+ va_start (args, format); -+ retval = libintl_vsprintf (resultbuf, format, args); -+ va_end (args); -+ return retval; -+} -+ -+#if HAVE_SNPRINTF -+ -+# if HAVE_DECL__SNPRINTF -+ /* Windows. */ -+# define system_vsnprintf _vsnprintf -+# else -+ /* Unix. */ -+# define system_vsnprintf vsnprintf -+# endif -+ -+DLL_EXPORTED -+int -+libintl_vsnprintf (char *resultbuf, size_t length, const char *format, va_list args) -+{ -+ if (strchr (format, '$') == NULL) -+ return system_vsnprintf (resultbuf, length, format, args); -+ else -+ { -+ size_t maxlength = length; -+ char *result = libintl_vasnprintf (resultbuf, &length, format, args); -+ if (result != resultbuf) -+ { -+ if (maxlength > 0) -+ { -+ if (length < maxlength) -+ abort (); -+ memcpy (resultbuf, result, maxlength - 1); -+ resultbuf[maxlength - 1] = '\0'; -+ } -+ free (result); -+ return -1; -+ } -+ else -+ return length; -+ } -+} -+ -+DLL_EXPORTED -+int -+libintl_snprintf (char *resultbuf, size_t length, const char *format, ...) -+{ -+ va_list args; -+ int retval; -+ -+ va_start (args, format); -+ retval = libintl_vsnprintf (resultbuf, length, format, args); -+ va_end (args); -+ return retval; -+} -+ -+#endif -+ -+#if HAVE_ASPRINTF -+ -+DLL_EXPORTED -+int -+libintl_vasprintf (char **resultp, const char *format, va_list args) -+{ -+ size_t length; -+ char *result = libintl_vasnprintf (NULL, &length, format, args); -+ if (result == NULL) -+ return -1; -+ *resultp = result; -+ return length; -+} -+ -+DLL_EXPORTED -+int -+libintl_asprintf (char **resultp, const char *format, ...) -+{ -+ va_list args; -+ int retval; -+ -+ va_start (args, format); -+ retval = libintl_vasprintf (resultp, format, args); -+ va_end (args); -+ return retval; -+} -+ -+#endif -+ -+#if HAVE_FWPRINTF -+ -+#include -+ -+#define WIDE_CHAR_VERSION 1 -+ -+/* Define auxiliary functions declared in "wprintf-parse.h". */ -+#include "printf-parse.c" -+ -+/* Define functions declared in "vasnprintf.h". */ -+#define vasnwprintf libintl_vasnwprintf -+#include "vasnprintf.c" -+#if 0 /* not needed */ -+#define asnwprintf libintl_asnwprintf -+#include "asnprintf.c" -+#endif -+ -+# if HAVE_DECL__SNWPRINTF -+ /* Windows. */ -+# define system_vswprintf _vsnwprintf -+# else -+ /* Unix. */ -+# define system_vswprintf vswprintf -+# endif -+ -+DLL_EXPORTED -+int -+libintl_vfwprintf (FILE *stream, const wchar_t *format, va_list args) -+{ -+ if (wcschr (format, '$') == NULL) -+ return vfwprintf (stream, format, args); -+ else -+ { -+ size_t length; -+ wchar_t *result = libintl_vasnwprintf (NULL, &length, format, args); -+ int retval = -1; -+ if (result != NULL) -+ { -+ size_t i; -+ for (i = 0; i < length; i++) -+ if (fputwc (result[i], stream) == WEOF) -+ break; -+ if (i == length) -+ retval = length; -+ free (result); -+ } -+ return retval; -+ } -+} -+ -+DLL_EXPORTED -+int -+libintl_fwprintf (FILE *stream, const wchar_t *format, ...) -+{ -+ va_list args; -+ int retval; -+ -+ va_start (args, format); -+ retval = libintl_vfwprintf (stream, format, args); -+ va_end (args); -+ return retval; -+} -+ -+DLL_EXPORTED -+int -+libintl_vwprintf (const wchar_t *format, va_list args) -+{ -+ return libintl_vfwprintf (stdout, format, args); -+} -+ -+DLL_EXPORTED -+int -+libintl_wprintf (const wchar_t *format, ...) -+{ -+ va_list args; -+ int retval; -+ -+ va_start (args, format); -+ retval = libintl_vwprintf (format, args); -+ va_end (args); -+ return retval; -+} -+ -+DLL_EXPORTED -+int -+libintl_vswprintf (wchar_t *resultbuf, size_t length, const wchar_t *format, va_list args) -+{ -+ if (wcschr (format, '$') == NULL) -+ return system_vswprintf (resultbuf, length, format, args); -+ else -+ { -+ size_t maxlength = length; -+ wchar_t *result = libintl_vasnwprintf (resultbuf, &length, format, args); -+ if (result != resultbuf) -+ { -+ if (maxlength > 0) -+ { -+ if (length < maxlength) -+ abort (); -+ memcpy (resultbuf, result, (maxlength - 1) * sizeof (wchar_t)); -+ resultbuf[maxlength - 1] = 0; -+ } -+ free (result); -+ return -1; -+ } -+ else -+ return length; -+ } -+} -+ -+DLL_EXPORTED -+int -+libintl_swprintf (wchar_t *resultbuf, size_t length, const wchar_t *format, ...) -+{ -+ va_list args; -+ int retval; -+ -+ va_start (args, format); -+ retval = libintl_vswprintf (resultbuf, length, format, args); -+ va_end (args); -+ return retval; -+} -+ -+#endif -+ -+#endif ---- lrzsz-0.12.20.safe/intl/printf-parse.c 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/printf-parse.c 2004-09-12 14:40:34.622707504 -0400 -@@ -0,0 +1,537 @@ -+/* Formatted output to strings. -+ Copyright (C) 1999-2000, 2002-2003 Free Software Foundation, Inc. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+#ifdef HAVE_CONFIG_H -+# include -+#endif -+ -+/* Specification. */ -+#if WIDE_CHAR_VERSION -+# include "wprintf-parse.h" -+#else -+# include "printf-parse.h" -+#endif -+ -+/* Get size_t, NULL. */ -+#include -+ -+/* Get intmax_t. */ -+#if HAVE_STDINT_H_WITH_UINTMAX -+# include -+#endif -+#if HAVE_INTTYPES_H_WITH_UINTMAX -+# include -+#endif -+ -+/* malloc(), realloc(), free(). */ -+#include -+ -+/* Checked size_t computations. */ -+#include "xsize.h" -+ -+#if WIDE_CHAR_VERSION -+# define PRINTF_PARSE wprintf_parse -+# define CHAR_T wchar_t -+# define DIRECTIVE wchar_t_directive -+# define DIRECTIVES wchar_t_directives -+#else -+# define PRINTF_PARSE printf_parse -+# define CHAR_T char -+# define DIRECTIVE char_directive -+# define DIRECTIVES char_directives -+#endif -+ -+#ifdef STATIC -+STATIC -+#endif -+int -+PRINTF_PARSE (const CHAR_T *format, DIRECTIVES *d, arguments *a) -+{ -+ const CHAR_T *cp = format; /* pointer into format */ -+ size_t arg_posn = 0; /* number of regular arguments consumed */ -+ size_t d_allocated; /* allocated elements of d->dir */ -+ size_t a_allocated; /* allocated elements of a->arg */ -+ size_t max_width_length = 0; -+ size_t max_precision_length = 0; -+ -+ d->count = 0; -+ d_allocated = 1; -+ d->dir = malloc (d_allocated * sizeof (DIRECTIVE)); -+ if (d->dir == NULL) -+ /* Out of memory. */ -+ return -1; -+ -+ a->count = 0; -+ a_allocated = 0; -+ a->arg = NULL; -+ -+#define REGISTER_ARG(_index_,_type_) \ -+ { \ -+ size_t n = (_index_); \ -+ if (n >= a_allocated) \ -+ { \ -+ size_t memory_size; \ -+ argument *memory; \ -+ \ -+ a_allocated = xtimes (a_allocated, 2); \ -+ if (a_allocated <= n) \ -+ a_allocated = xsum (n, 1); \ -+ memory_size = xtimes (a_allocated, sizeof (argument)); \ -+ if (size_overflow_p (memory_size)) \ -+ /* Overflow, would lead to out of memory. */ \ -+ goto error; \ -+ memory = (a->arg \ -+ ? realloc (a->arg, memory_size) \ -+ : malloc (memory_size)); \ -+ if (memory == NULL) \ -+ /* Out of memory. */ \ -+ goto error; \ -+ a->arg = memory; \ -+ } \ -+ while (a->count <= n) \ -+ a->arg[a->count++].type = TYPE_NONE; \ -+ if (a->arg[n].type == TYPE_NONE) \ -+ a->arg[n].type = (_type_); \ -+ else if (a->arg[n].type != (_type_)) \ -+ /* Ambiguous type for positional argument. */ \ -+ goto error; \ -+ } -+ -+ while (*cp != '\0') -+ { -+ CHAR_T c = *cp++; -+ if (c == '%') -+ { -+ size_t arg_index = ARG_NONE; -+ DIRECTIVE *dp = &d->dir[d->count];/* pointer to next directive */ -+ -+ /* Initialize the next directive. */ -+ dp->dir_start = cp - 1; -+ dp->flags = 0; -+ dp->width_start = NULL; -+ dp->width_end = NULL; -+ dp->width_arg_index = ARG_NONE; -+ dp->precision_start = NULL; -+ dp->precision_end = NULL; -+ dp->precision_arg_index = ARG_NONE; -+ dp->arg_index = ARG_NONE; -+ -+ /* Test for positional argument. */ -+ if (*cp >= '0' && *cp <= '9') -+ { -+ const CHAR_T *np; -+ -+ for (np = cp; *np >= '0' && *np <= '9'; np++) -+ ; -+ if (*np == '$') -+ { -+ size_t n = 0; -+ -+ for (np = cp; *np >= '0' && *np <= '9'; np++) -+ n = xsum (xtimes (n, 10), *np - '0'); -+ if (n == 0) -+ /* Positional argument 0. */ -+ goto error; -+ if (size_overflow_p (n)) -+ /* n too large, would lead to out of memory later. */ -+ goto error; -+ arg_index = n - 1; -+ cp = np + 1; -+ } -+ } -+ -+ /* Read the flags. */ -+ for (;;) -+ { -+ if (*cp == '\'') -+ { -+ dp->flags |= FLAG_GROUP; -+ cp++; -+ } -+ else if (*cp == '-') -+ { -+ dp->flags |= FLAG_LEFT; -+ cp++; -+ } -+ else if (*cp == '+') -+ { -+ dp->flags |= FLAG_SHOWSIGN; -+ cp++; -+ } -+ else if (*cp == ' ') -+ { -+ dp->flags |= FLAG_SPACE; -+ cp++; -+ } -+ else if (*cp == '#') -+ { -+ dp->flags |= FLAG_ALT; -+ cp++; -+ } -+ else if (*cp == '0') -+ { -+ dp->flags |= FLAG_ZERO; -+ cp++; -+ } -+ else -+ break; -+ } -+ -+ /* Parse the field width. */ -+ if (*cp == '*') -+ { -+ dp->width_start = cp; -+ cp++; -+ dp->width_end = cp; -+ if (max_width_length < 1) -+ max_width_length = 1; -+ -+ /* Test for positional argument. */ -+ if (*cp >= '0' && *cp <= '9') -+ { -+ const CHAR_T *np; -+ -+ for (np = cp; *np >= '0' && *np <= '9'; np++) -+ ; -+ if (*np == '$') -+ { -+ size_t n = 0; -+ -+ for (np = cp; *np >= '0' && *np <= '9'; np++) -+ n = xsum (xtimes (n, 10), *np - '0'); -+ if (n == 0) -+ /* Positional argument 0. */ -+ goto error; -+ if (size_overflow_p (n)) -+ /* n too large, would lead to out of memory later. */ -+ goto error; -+ dp->width_arg_index = n - 1; -+ cp = np + 1; -+ } -+ } -+ if (dp->width_arg_index == ARG_NONE) -+ { -+ dp->width_arg_index = arg_posn++; -+ if (dp->width_arg_index == ARG_NONE) -+ /* arg_posn wrapped around. */ -+ goto error; -+ } -+ REGISTER_ARG (dp->width_arg_index, TYPE_INT); -+ } -+ else if (*cp >= '0' && *cp <= '9') -+ { -+ size_t width_length; -+ -+ dp->width_start = cp; -+ for (; *cp >= '0' && *cp <= '9'; cp++) -+ ; -+ dp->width_end = cp; -+ width_length = dp->width_end - dp->width_start; -+ if (max_width_length < width_length) -+ max_width_length = width_length; -+ } -+ -+ /* Parse the precision. */ -+ if (*cp == '.') -+ { -+ cp++; -+ if (*cp == '*') -+ { -+ dp->precision_start = cp - 1; -+ cp++; -+ dp->precision_end = cp; -+ if (max_precision_length < 2) -+ max_precision_length = 2; -+ -+ /* Test for positional argument. */ -+ if (*cp >= '0' && *cp <= '9') -+ { -+ const CHAR_T *np; -+ -+ for (np = cp; *np >= '0' && *np <= '9'; np++) -+ ; -+ if (*np == '$') -+ { -+ size_t n = 0; -+ -+ for (np = cp; *np >= '0' && *np <= '9'; np++) -+ n = xsum (xtimes (n, 10), *np - '0'); -+ if (n == 0) -+ /* Positional argument 0. */ -+ goto error; -+ if (size_overflow_p (n)) -+ /* n too large, would lead to out of memory -+ later. */ -+ goto error; -+ dp->precision_arg_index = n - 1; -+ cp = np + 1; -+ } -+ } -+ if (dp->precision_arg_index == ARG_NONE) -+ { -+ dp->precision_arg_index = arg_posn++; -+ if (dp->precision_arg_index == ARG_NONE) -+ /* arg_posn wrapped around. */ -+ goto error; -+ } -+ REGISTER_ARG (dp->precision_arg_index, TYPE_INT); -+ } -+ else -+ { -+ size_t precision_length; -+ -+ dp->precision_start = cp - 1; -+ for (; *cp >= '0' && *cp <= '9'; cp++) -+ ; -+ dp->precision_end = cp; -+ precision_length = dp->precision_end - dp->precision_start; -+ if (max_precision_length < precision_length) -+ max_precision_length = precision_length; -+ } -+ } -+ -+ { -+ arg_type type; -+ -+ /* Parse argument type/size specifiers. */ -+ { -+ int flags = 0; -+ -+ for (;;) -+ { -+ if (*cp == 'h') -+ { -+ flags |= (1 << (flags & 1)); -+ cp++; -+ } -+ else if (*cp == 'L') -+ { -+ flags |= 4; -+ cp++; -+ } -+ else if (*cp == 'l') -+ { -+ flags += 8; -+ cp++; -+ } -+#ifdef HAVE_INTMAX_T -+ else if (*cp == 'j') -+ { -+ if (sizeof (intmax_t) > sizeof (long)) -+ { -+ /* intmax_t = long long */ -+ flags += 16; -+ } -+ else if (sizeof (intmax_t) > sizeof (int)) -+ { -+ /* intmax_t = long */ -+ flags += 8; -+ } -+ cp++; -+ } -+#endif -+ else if (*cp == 'z' || *cp == 'Z') -+ { -+ /* 'z' is standardized in ISO C 99, but glibc uses 'Z' -+ because the warning facility in gcc-2.95.2 understands -+ only 'Z' (see gcc-2.95.2/gcc/c-common.c:1784). */ -+ if (sizeof (size_t) > sizeof (long)) -+ { -+ /* size_t = long long */ -+ flags += 16; -+ } -+ else if (sizeof (size_t) > sizeof (int)) -+ { -+ /* size_t = long */ -+ flags += 8; -+ } -+ cp++; -+ } -+ else if (*cp == 't') -+ { -+ if (sizeof (ptrdiff_t) > sizeof (long)) -+ { -+ /* ptrdiff_t = long long */ -+ flags += 16; -+ } -+ else if (sizeof (ptrdiff_t) > sizeof (int)) -+ { -+ /* ptrdiff_t = long */ -+ flags += 8; -+ } -+ cp++; -+ } -+ else -+ break; -+ } -+ -+ /* Read the conversion character. */ -+ c = *cp++; -+ switch (c) -+ { -+ case 'd': case 'i': -+#ifdef HAVE_LONG_LONG -+ if (flags >= 16 || (flags & 4)) -+ type = TYPE_LONGLONGINT; -+ else -+#endif -+ if (flags >= 8) -+ type = TYPE_LONGINT; -+ else if (flags & 2) -+ type = TYPE_SCHAR; -+ else if (flags & 1) -+ type = TYPE_SHORT; -+ else -+ type = TYPE_INT; -+ break; -+ case 'o': case 'u': case 'x': case 'X': -+#ifdef HAVE_LONG_LONG -+ if (flags >= 16 || (flags & 4)) -+ type = TYPE_ULONGLONGINT; -+ else -+#endif -+ if (flags >= 8) -+ type = TYPE_ULONGINT; -+ else if (flags & 2) -+ type = TYPE_UCHAR; -+ else if (flags & 1) -+ type = TYPE_USHORT; -+ else -+ type = TYPE_UINT; -+ break; -+ case 'f': case 'F': case 'e': case 'E': case 'g': case 'G': -+ case 'a': case 'A': -+#ifdef HAVE_LONG_DOUBLE -+ if (flags >= 16 || (flags & 4)) -+ type = TYPE_LONGDOUBLE; -+ else -+#endif -+ type = TYPE_DOUBLE; -+ break; -+ case 'c': -+ if (flags >= 8) -+#ifdef HAVE_WINT_T -+ type = TYPE_WIDE_CHAR; -+#else -+ goto error; -+#endif -+ else -+ type = TYPE_CHAR; -+ break; -+#ifdef HAVE_WINT_T -+ case 'C': -+ type = TYPE_WIDE_CHAR; -+ c = 'c'; -+ break; -+#endif -+ case 's': -+ if (flags >= 8) -+#ifdef HAVE_WCHAR_T -+ type = TYPE_WIDE_STRING; -+#else -+ goto error; -+#endif -+ else -+ type = TYPE_STRING; -+ break; -+#ifdef HAVE_WCHAR_T -+ case 'S': -+ type = TYPE_WIDE_STRING; -+ c = 's'; -+ break; -+#endif -+ case 'p': -+ type = TYPE_POINTER; -+ break; -+ case 'n': -+#ifdef HAVE_LONG_LONG -+ if (flags >= 16 || (flags & 4)) -+ type = TYPE_COUNT_LONGLONGINT_POINTER; -+ else -+#endif -+ if (flags >= 8) -+ type = TYPE_COUNT_LONGINT_POINTER; -+ else if (flags & 2) -+ type = TYPE_COUNT_SCHAR_POINTER; -+ else if (flags & 1) -+ type = TYPE_COUNT_SHORT_POINTER; -+ else -+ type = TYPE_COUNT_INT_POINTER; -+ break; -+ case '%': -+ type = TYPE_NONE; -+ break; -+ default: -+ /* Unknown conversion character. */ -+ goto error; -+ } -+ } -+ -+ if (type != TYPE_NONE) -+ { -+ dp->arg_index = arg_index; -+ if (dp->arg_index == ARG_NONE) -+ { -+ dp->arg_index = arg_posn++; -+ if (dp->arg_index == ARG_NONE) -+ /* arg_posn wrapped around. */ -+ goto error; -+ } -+ REGISTER_ARG (dp->arg_index, type); -+ } -+ dp->conversion = c; -+ dp->dir_end = cp; -+ } -+ -+ d->count++; -+ if (d->count >= d_allocated) -+ { -+ size_t memory_size; -+ DIRECTIVE *memory; -+ -+ d_allocated = xtimes (d_allocated, 2); -+ memory_size = xtimes (d_allocated, sizeof (DIRECTIVE)); -+ if (size_overflow_p (memory_size)) -+ /* Overflow, would lead to out of memory. */ -+ goto error; -+ memory = realloc (d->dir, memory_size); -+ if (memory == NULL) -+ /* Out of memory. */ -+ goto error; -+ d->dir = memory; -+ } -+ } -+ } -+ d->dir[d->count].dir_start = cp; -+ -+ d->max_width_length = max_width_length; -+ d->max_precision_length = max_precision_length; -+ return 0; -+ -+error: -+ if (a->arg) -+ free (a->arg); -+ if (d->dir) -+ free (d->dir); -+ return -1; -+} -+ -+#undef DIRECTIVES -+#undef DIRECTIVE -+#undef CHAR_T -+#undef PRINTF_PARSE ---- lrzsz-0.12.20.safe/intl/printf-parse.h 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/printf-parse.h 2004-09-12 14:40:34.628706592 -0400 -@@ -0,0 +1,75 @@ -+/* Parse printf format string. -+ Copyright (C) 1999, 2002-2003 Free Software Foundation, Inc. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+#ifndef _PRINTF_PARSE_H -+#define _PRINTF_PARSE_H -+ -+#include "printf-args.h" -+ -+ -+/* Flags */ -+#define FLAG_GROUP 1 /* ' flag */ -+#define FLAG_LEFT 2 /* - flag */ -+#define FLAG_SHOWSIGN 4 /* + flag */ -+#define FLAG_SPACE 8 /* space flag */ -+#define FLAG_ALT 16 /* # flag */ -+#define FLAG_ZERO 32 -+ -+/* arg_index value indicating that no argument is consumed. */ -+#define ARG_NONE (~(size_t)0) -+ -+/* A parsed directive. */ -+typedef struct -+{ -+ const char* dir_start; -+ const char* dir_end; -+ int flags; -+ const char* width_start; -+ const char* width_end; -+ size_t width_arg_index; -+ const char* precision_start; -+ const char* precision_end; -+ size_t precision_arg_index; -+ char conversion; /* d i o u x X f e E g G c s p n U % but not C S */ -+ size_t arg_index; -+} -+char_directive; -+ -+/* A parsed format string. */ -+typedef struct -+{ -+ size_t count; -+ char_directive *dir; -+ size_t max_width_length; -+ size_t max_precision_length; -+} -+char_directives; -+ -+ -+/* Parses the format string. Fills in the number N of directives, and fills -+ in directives[0], ..., directives[N-1], and sets directives[N].dir_start -+ to the end of the format string. Also fills in the arg_type fields of the -+ arguments and the needed count of arguments. */ -+#ifdef STATIC -+STATIC -+#else -+extern -+#endif -+int printf_parse (const char *format, char_directives *d, arguments *a); -+ -+#endif /* _PRINTF_PARSE_H */ ---- lrzsz-0.12.20.safe/intl/ref-add.sin 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/ref-add.sin 2004-09-12 14:40:34.633705832 -0400 -@@ -0,0 +1,31 @@ -+# Add this package to a list of references stored in a text file. -+# -+# Copyright (C) 2000 Free Software Foundation, Inc. -+# -+# This program is free software; you can redistribute it and/or modify it -+# under the terms of the GNU Library General Public License as published -+# by the Free Software Foundation; either version 2, or (at your option) -+# any later version. -+# -+# This program is distributed in the hope that it will be useful, -+# but WITHOUT ANY WARRANTY; without even the implied warranty of -+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+# Library General Public License for more details. -+# -+# You should have received a copy of the GNU Library General Public -+# License along with this program; if not, write to the Free Software -+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+# USA. -+# -+# Written by Bruno Haible . -+# -+/^# Packages using this file: / { -+ s/# Packages using this file:// -+ ta -+ :a -+ s/ @PACKAGE@ / @PACKAGE@ / -+ tb -+ s/ $/ @PACKAGE@ / -+ :b -+ s/^/# Packages using this file:/ -+} ---- lrzsz-0.12.20.safe/intl/ref-del.sin 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/ref-del.sin 2004-09-12 14:40:34.638705072 -0400 -@@ -0,0 +1,26 @@ -+# Remove this package from a list of references stored in a text file. -+# -+# Copyright (C) 2000 Free Software Foundation, Inc. -+# -+# This program is free software; you can redistribute it and/or modify it -+# under the terms of the GNU Library General Public License as published -+# by the Free Software Foundation; either version 2, or (at your option) -+# any later version. -+# -+# This program is distributed in the hope that it will be useful, -+# but WITHOUT ANY WARRANTY; without even the implied warranty of -+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+# Library General Public License for more details. -+# -+# You should have received a copy of the GNU Library General Public -+# License along with this program; if not, write to the Free Software -+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+# USA. -+# -+# Written by Bruno Haible . -+# -+/^# Packages using this file: / { -+ s/# Packages using this file:// -+ s/ @PACKAGE@ / / -+ s/^/# Packages using this file:/ -+} ---- lrzsz-0.12.20.safe/intl/relocatable.c 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/relocatable.c 2004-09-12 14:40:34.644704160 -0400 -@@ -0,0 +1,449 @@ -+/* Provide relocatable packages. -+ Copyright (C) 2003 Free Software Foundation, Inc. -+ Written by Bruno Haible , 2003. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+ -+/* Tell glibc's to provide a prototype for getline(). -+ This must come before because may include -+ , and once has been included, it's too late. */ -+#ifndef _GNU_SOURCE -+# define _GNU_SOURCE 1 -+#endif -+ -+#ifdef HAVE_CONFIG_H -+# include "config.h" -+#endif -+ -+/* Specification. */ -+#include "relocatable.h" -+ -+#if ENABLE_RELOCATABLE -+ -+#include -+#include -+#include -+#include -+ -+#ifdef NO_XMALLOC -+# define xmalloc malloc -+#else -+# include "xalloc.h" -+#endif -+ -+#if defined _WIN32 || defined __WIN32__ -+# define WIN32_LEAN_AND_MEAN -+# include -+#endif -+ -+#if DEPENDS_ON_LIBCHARSET -+# include -+#endif -+#if DEPENDS_ON_LIBICONV && HAVE_ICONV -+# include -+#endif -+#if DEPENDS_ON_LIBINTL && ENABLE_NLS -+# include -+#endif -+ -+/* Faked cheap 'bool'. */ -+#undef bool -+#undef false -+#undef true -+#define bool int -+#define false 0 -+#define true 1 -+ -+/* Pathname support. -+ ISSLASH(C) tests whether C is a directory separator character. -+ IS_PATH_WITH_DIR(P) tests whether P contains a directory specification. -+ */ -+#if defined _WIN32 || defined __WIN32__ || defined __EMX__ || defined __DJGPP__ -+ /* Win32, OS/2, DOS */ -+# define ISSLASH(C) ((C) == '/' || (C) == '\\') -+# define HAS_DEVICE(P) \ -+ ((((P)[0] >= 'A' && (P)[0] <= 'Z') || ((P)[0] >= 'a' && (P)[0] <= 'z')) \ -+ && (P)[1] == ':') -+# define IS_PATH_WITH_DIR(P) \ -+ (strchr (P, '/') != NULL || strchr (P, '\\') != NULL || HAS_DEVICE (P)) -+# define FILESYSTEM_PREFIX_LEN(P) (HAS_DEVICE (P) ? 2 : 0) -+#else -+ /* Unix */ -+# define ISSLASH(C) ((C) == '/') -+# define IS_PATH_WITH_DIR(P) (strchr (P, '/') != NULL) -+# define FILESYSTEM_PREFIX_LEN(P) 0 -+#endif -+ -+/* Original installation prefix. */ -+static char *orig_prefix; -+static size_t orig_prefix_len; -+/* Current installation prefix. */ -+static char *curr_prefix; -+static size_t curr_prefix_len; -+/* These prefixes do not end in a slash. Anything that will be concatenated -+ to them must start with a slash. */ -+ -+/* Sets the original and the current installation prefix of this module. -+ Relocation simply replaces a pathname starting with the original prefix -+ by the corresponding pathname with the current prefix instead. Both -+ prefixes should be directory names without trailing slash (i.e. use "" -+ instead of "/"). */ -+static void -+set_this_relocation_prefix (const char *orig_prefix_arg, -+ const char *curr_prefix_arg) -+{ -+ if (orig_prefix_arg != NULL && curr_prefix_arg != NULL -+ /* Optimization: if orig_prefix and curr_prefix are equal, the -+ relocation is a nop. */ -+ && strcmp (orig_prefix_arg, curr_prefix_arg) != 0) -+ { -+ /* Duplicate the argument strings. */ -+ char *memory; -+ -+ orig_prefix_len = strlen (orig_prefix_arg); -+ curr_prefix_len = strlen (curr_prefix_arg); -+ memory = (char *) xmalloc (orig_prefix_len + 1 + curr_prefix_len + 1); -+#ifdef NO_XMALLOC -+ if (memory != NULL) -+#endif -+ { -+ memcpy (memory, orig_prefix_arg, orig_prefix_len + 1); -+ orig_prefix = memory; -+ memory += orig_prefix_len + 1; -+ memcpy (memory, curr_prefix_arg, curr_prefix_len + 1); -+ curr_prefix = memory; -+ return; -+ } -+ } -+ orig_prefix = NULL; -+ curr_prefix = NULL; -+ /* Don't worry about wasted memory here - this function is usually only -+ called once. */ -+} -+ -+/* Sets the original and the current installation prefix of the package. -+ Relocation simply replaces a pathname starting with the original prefix -+ by the corresponding pathname with the current prefix instead. Both -+ prefixes should be directory names without trailing slash (i.e. use "" -+ instead of "/"). */ -+void -+set_relocation_prefix (const char *orig_prefix_arg, const char *curr_prefix_arg) -+{ -+ set_this_relocation_prefix (orig_prefix_arg, curr_prefix_arg); -+ -+ /* Now notify all dependent libraries. */ -+#if DEPENDS_ON_LIBCHARSET -+ libcharset_set_relocation_prefix (orig_prefix_arg, curr_prefix_arg); -+#endif -+#if DEPENDS_ON_LIBICONV && HAVE_ICONV && _LIBICONV_VERSION >= 0x0109 -+ libiconv_set_relocation_prefix (orig_prefix_arg, curr_prefix_arg); -+#endif -+#if DEPENDS_ON_LIBINTL && ENABLE_NLS && defined libintl_set_relocation_prefix -+ libintl_set_relocation_prefix (orig_prefix_arg, curr_prefix_arg); -+#endif -+} -+ -+#if !defined IN_LIBRARY || (defined PIC && defined INSTALLDIR) -+ -+/* Convenience function: -+ Computes the current installation prefix, based on the original -+ installation prefix, the original installation directory of a particular -+ file, and the current pathname of this file. Returns NULL upon failure. */ -+#ifdef IN_LIBRARY -+#define compute_curr_prefix local_compute_curr_prefix -+static -+#endif -+const char * -+compute_curr_prefix (const char *orig_installprefix, -+ const char *orig_installdir, -+ const char *curr_pathname) -+{ -+ const char *curr_installdir; -+ const char *rel_installdir; -+ -+ if (curr_pathname == NULL) -+ return NULL; -+ -+ /* Determine the relative installation directory, relative to the prefix. -+ This is simply the difference between orig_installprefix and -+ orig_installdir. */ -+ if (strncmp (orig_installprefix, orig_installdir, strlen (orig_installprefix)) -+ != 0) -+ /* Shouldn't happen - nothing should be installed outside $(prefix). */ -+ return NULL; -+ rel_installdir = orig_installdir + strlen (orig_installprefix); -+ -+ /* Determine the current installation directory. */ -+ { -+ const char *p_base = curr_pathname + FILESYSTEM_PREFIX_LEN (curr_pathname); -+ const char *p = curr_pathname + strlen (curr_pathname); -+ char *q; -+ -+ while (p > p_base) -+ { -+ p--; -+ if (ISSLASH (*p)) -+ break; -+ } -+ -+ q = (char *) xmalloc (p - curr_pathname + 1); -+#ifdef NO_XMALLOC -+ if (q == NULL) -+ return NULL; -+#endif -+ memcpy (q, curr_pathname, p - curr_pathname); -+ q[p - curr_pathname] = '\0'; -+ curr_installdir = q; -+ } -+ -+ /* Compute the current installation prefix by removing the trailing -+ rel_installdir from it. */ -+ { -+ const char *rp = rel_installdir + strlen (rel_installdir); -+ const char *cp = curr_installdir + strlen (curr_installdir); -+ const char *cp_base = -+ curr_installdir + FILESYSTEM_PREFIX_LEN (curr_installdir); -+ -+ while (rp > rel_installdir && cp > cp_base) -+ { -+ bool same = false; -+ const char *rpi = rp; -+ const char *cpi = cp; -+ -+ while (rpi > rel_installdir && cpi > cp_base) -+ { -+ rpi--; -+ cpi--; -+ if (ISSLASH (*rpi) || ISSLASH (*cpi)) -+ { -+ if (ISSLASH (*rpi) && ISSLASH (*cpi)) -+ same = true; -+ break; -+ } -+#if defined _WIN32 || defined __WIN32__ || defined __EMX__ || defined __DJGPP__ -+ /* Win32, OS/2, DOS - case insignificant filesystem */ -+ if ((*rpi >= 'a' && *rpi <= 'z' ? *rpi - 'a' + 'A' : *rpi) -+ != (*cpi >= 'a' && *cpi <= 'z' ? *cpi - 'a' + 'A' : *cpi)) -+ break; -+#else -+ if (*rpi != *cpi) -+ break; -+#endif -+ } -+ if (!same) -+ break; -+ /* The last pathname component was the same. opi and cpi now point -+ to the slash before it. */ -+ rp = rpi; -+ cp = cpi; -+ } -+ -+ if (rp > rel_installdir) -+ /* Unexpected: The curr_installdir does not end with rel_installdir. */ -+ return NULL; -+ -+ { -+ size_t curr_prefix_len = cp - curr_installdir; -+ char *curr_prefix; -+ -+ curr_prefix = (char *) xmalloc (curr_prefix_len + 1); -+#ifdef NO_XMALLOC -+ if (curr_prefix == NULL) -+ return NULL; -+#endif -+ memcpy (curr_prefix, curr_installdir, curr_prefix_len); -+ curr_prefix[curr_prefix_len] = '\0'; -+ -+ return curr_prefix; -+ } -+ } -+} -+ -+#endif /* !IN_LIBRARY || PIC */ -+ -+#if defined PIC && defined INSTALLDIR -+ -+/* Full pathname of shared library, or NULL. */ -+static char *shared_library_fullname; -+ -+#if defined _WIN32 || defined __WIN32__ -+ -+/* Determine the full pathname of the shared library when it is loaded. */ -+ -+BOOL WINAPI -+DllMain (HINSTANCE module_handle, DWORD event, LPVOID reserved) -+{ -+ (void) reserved; -+ -+ if (event == DLL_PROCESS_ATTACH) -+ { -+ /* The DLL is being loaded into an application's address range. */ -+ static char location[MAX_PATH]; -+ -+ if (!GetModuleFileName (module_handle, location, sizeof (location))) -+ /* Shouldn't happen. */ -+ return FALSE; -+ -+ if (!IS_PATH_WITH_DIR (location)) -+ /* Shouldn't happen. */ -+ return FALSE; -+ -+ shared_library_fullname = strdup (location); -+ } -+ -+ return TRUE; -+} -+ -+#else /* Unix */ -+ -+static void -+find_shared_library_fullname () -+{ -+#if defined __linux__ && __GLIBC__ >= 2 -+ /* Linux has /proc/self/maps. glibc 2 has the getline() function. */ -+ FILE *fp; -+ -+ /* Open the current process' maps file. It describes one VMA per line. */ -+ fp = fopen ("/proc/self/maps", "r"); -+ if (fp) -+ { -+ unsigned long address = (unsigned long) &find_shared_library_fullname; -+ for (;;) -+ { -+ unsigned long start, end; -+ int c; -+ -+ if (fscanf (fp, "%lx-%lx", &start, &end) != 2) -+ break; -+ if (address >= start && address <= end - 1) -+ { -+ /* Found it. Now see if this line contains a filename. */ -+ while (c = getc (fp), c != EOF && c != '\n' && c != '/') -+ continue; -+ if (c == '/') -+ { -+ size_t size; -+ int len; -+ -+ ungetc (c, fp); -+ shared_library_fullname = NULL; size = 0; -+ len = getline (&shared_library_fullname, &size, fp); -+ if (len >= 0) -+ { -+ /* Success: filled shared_library_fullname. */ -+ if (len > 0 && shared_library_fullname[len - 1] == '\n') -+ shared_library_fullname[len - 1] = '\0'; -+ } -+ } -+ break; -+ } -+ while (c = getc (fp), c != EOF && c != '\n') -+ continue; -+ } -+ fclose (fp); -+ } -+#endif -+} -+ -+#endif /* WIN32 / Unix */ -+ -+/* Return the full pathname of the current shared library. -+ Return NULL if unknown. -+ Guaranteed to work only on Linux and Woe32. */ -+static char * -+get_shared_library_fullname () -+{ -+#if !(defined _WIN32 || defined __WIN32__) -+ static bool tried_find_shared_library_fullname; -+ if (!tried_find_shared_library_fullname) -+ { -+ find_shared_library_fullname (); -+ tried_find_shared_library_fullname = true; -+ } -+#endif -+ return shared_library_fullname; -+} -+ -+#endif /* PIC */ -+ -+/* Returns the pathname, relocated according to the current installation -+ directory. */ -+const char * -+relocate (const char *pathname) -+{ -+#if defined PIC && defined INSTALLDIR -+ static int initialized; -+ -+ /* Initialization code for a shared library. */ -+ if (!initialized) -+ { -+ /* At this point, orig_prefix and curr_prefix likely have already been -+ set through the main program's set_program_name_and_installdir -+ function. This is sufficient in the case that the library has -+ initially been installed in the same orig_prefix. But we can do -+ better, to also cover the cases that 1. it has been installed -+ in a different prefix before being moved to orig_prefix and (later) -+ to curr_prefix, 2. unlike the program, it has not moved away from -+ orig_prefix. */ -+ const char *orig_installprefix = INSTALLPREFIX; -+ const char *orig_installdir = INSTALLDIR; -+ const char *curr_prefix_better; -+ -+ curr_prefix_better = -+ compute_curr_prefix (orig_installprefix, orig_installdir, -+ get_shared_library_fullname ()); -+ if (curr_prefix_better == NULL) -+ curr_prefix_better = curr_prefix; -+ -+ set_relocation_prefix (orig_installprefix, curr_prefix_better); -+ -+ initialized = 1; -+ } -+#endif -+ -+ /* Note: It is not necessary to perform case insensitive comparison here, -+ even for DOS-like filesystems, because the pathname argument was -+ typically created from the same Makefile variable as orig_prefix came -+ from. */ -+ if (orig_prefix != NULL && curr_prefix != NULL -+ && strncmp (pathname, orig_prefix, orig_prefix_len) == 0) -+ { -+ if (pathname[orig_prefix_len] == '\0') -+ /* pathname equals orig_prefix. */ -+ return curr_prefix; -+ if (ISSLASH (pathname[orig_prefix_len])) -+ { -+ /* pathname starts with orig_prefix. */ -+ const char *pathname_tail = &pathname[orig_prefix_len]; -+ char *result = -+ (char *) xmalloc (curr_prefix_len + strlen (pathname_tail) + 1); -+ -+#ifdef NO_XMALLOC -+ if (result != NULL) -+#endif -+ { -+ memcpy (result, curr_prefix, curr_prefix_len); -+ strcpy (result + curr_prefix_len, pathname_tail); -+ return result; -+ } -+ } -+ } -+ /* Nothing to relocate. */ -+ return pathname; -+} -+ -+#endif ---- lrzsz-0.12.20.safe/intl/relocatable.h 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/relocatable.h 2004-09-12 14:40:34.651703096 -0400 -@@ -0,0 +1,77 @@ -+/* Provide relocatable packages. -+ Copyright (C) 2003 Free Software Foundation, Inc. -+ Written by Bruno Haible , 2003. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+#ifndef _RELOCATABLE_H -+#define _RELOCATABLE_H -+ -+#ifdef __cplusplus -+extern "C" { -+#endif -+ -+ -+/* This can be enabled through the configure --enable-relocatable option. */ -+#if ENABLE_RELOCATABLE -+ -+/* When building a DLL, we must export some functions. Note that because -+ this is a private .h file, we don't need to use __declspec(dllimport) -+ in any case. */ -+#if defined _MSC_VER && BUILDING_DLL -+# define RELOCATABLE_DLL_EXPORTED __declspec(dllexport) -+#else -+# define RELOCATABLE_DLL_EXPORTED -+#endif -+ -+/* Sets the original and the current installation prefix of the package. -+ Relocation simply replaces a pathname starting with the original prefix -+ by the corresponding pathname with the current prefix instead. Both -+ prefixes should be directory names without trailing slash (i.e. use "" -+ instead of "/"). */ -+extern RELOCATABLE_DLL_EXPORTED void -+ set_relocation_prefix (const char *orig_prefix, -+ const char *curr_prefix); -+ -+/* Returns the pathname, relocated according to the current installation -+ directory. */ -+extern const char * relocate (const char *pathname); -+ -+/* Memory management: relocate() leaks memory, because it has to construct -+ a fresh pathname. If this is a problem because your program calls -+ relocate() frequently, think about caching the result. */ -+ -+/* Convenience function: -+ Computes the current installation prefix, based on the original -+ installation prefix, the original installation directory of a particular -+ file, and the current pathname of this file. Returns NULL upon failure. */ -+extern const char * compute_curr_prefix (const char *orig_installprefix, -+ const char *orig_installdir, -+ const char *curr_pathname); -+ -+#else -+ -+/* By default, we use the hardwired pathnames. */ -+#define relocate(pathname) (pathname) -+ -+#endif -+ -+ -+#ifdef __cplusplus -+} -+#endif -+ -+#endif /* _RELOCATABLE_H */ ---- lrzsz-0.12.20.safe/intl/textdomain.c 1998-04-26 09:22:37.000000000 -0400 -+++ lrzsz-0.12.20/intl/textdomain.c 2004-09-12 14:40:34.656702336 -0400 -@@ -1,51 +1,60 @@ --/* Implementation of the textdomain(3) function -- Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. -- Written by Ulrich Drepper , 1995. -+/* Implementation of the textdomain(3) function. -+ Copyright (C) 1995-1998, 2000-2003 Free Software Foundation, Inc. - -- This program is free software; you can redistribute it and/or modify -- it under the terms of the GNU General Public License as published by -- the Free Software Foundation; either version 2, or (at your option) -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- GNU General Public License for more details. -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. - -- You should have received a copy of the GNU General Public License -- along with this program; if not, write to the Free Software Foundation, -- Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ - - #ifdef HAVE_CONFIG_H - # include - #endif - --#if defined STDC_HEADERS || defined _LIBC --# include --#endif -+#include -+#include - --#if defined STDC_HEADERS || defined HAVE_STRING_H || defined _LIBC --# include -+#ifdef _LIBC -+# include - #else --# include --# ifndef memcpy --# define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num) --# endif -+# include "libgnuintl.h" - #endif -+#include "gettextP.h" - - #ifdef _LIBC --# include -+/* We have to handle multi-threaded applications. */ -+# include - #else --# include "libgettext.h" -+/* Provide dummy implementation if this is outside glibc. */ -+# define __libc_rwlock_define(CLASS, NAME) -+# define __libc_rwlock_wrlock(NAME) -+# define __libc_rwlock_unlock(NAME) -+#endif -+ -+/* The internal variables in the standalone libintl.a must have different -+ names than the internal variables in GNU libc, otherwise programs -+ using libintl.a cannot be linked statically. */ -+#if !defined _LIBC -+# define _nl_default_default_domain libintl_nl_default_default_domain -+# define _nl_current_default_domain libintl_nl_current_default_domain - #endif - - /* @@ end of prolog @@ */ - - /* Name of the default text domain. */ --extern const char _nl_default_default_domain[]; -+extern const char _nl_default_default_domain[] attribute_hidden; - - /* Default text domain in which entries for gettext(3) are to be found. */ --extern const char *_nl_current_default_domain; -+extern const char *_nl_current_default_domain attribute_hidden; - - - /* Names for the libintl functions are a problem. They must not clash -@@ -54,50 +63,76 @@ - prefix. So we have to make a difference here. */ - #ifdef _LIBC - # define TEXTDOMAIN __textdomain --# define strdup(str) __strdup (str) -+# ifndef strdup -+# define strdup(str) __strdup (str) -+# endif - #else --# define TEXTDOMAIN textdomain__ -+# define TEXTDOMAIN libintl_textdomain - #endif - -+/* Lock variable to protect the global data in the gettext implementation. */ -+__libc_rwlock_define (extern, _nl_state_lock attribute_hidden) -+ - /* Set the current default message catalog to DOMAINNAME. - If DOMAINNAME is null, return the current default. - If DOMAINNAME is "", reset to the default of "messages". */ - char * --TEXTDOMAIN (domainname) -- const char *domainname; -+TEXTDOMAIN (const char *domainname) - { -- char *old; -+ char *new_domain; -+ char *old_domain; - - /* A NULL pointer requests the current setting. */ - if (domainname == NULL) - return (char *) _nl_current_default_domain; - -- old = (char *) _nl_current_default_domain; -+ __libc_rwlock_wrlock (_nl_state_lock); -+ -+ old_domain = (char *) _nl_current_default_domain; - - /* If domain name is the null string set to default domain "messages". */ - if (domainname[0] == '\0' - || strcmp (domainname, _nl_default_default_domain) == 0) -- _nl_current_default_domain = _nl_default_default_domain; -+ { -+ _nl_current_default_domain = _nl_default_default_domain; -+ new_domain = (char *) _nl_current_default_domain; -+ } -+ else if (strcmp (domainname, old_domain) == 0) -+ /* This can happen and people will use it to signal that some -+ environment variable changed. */ -+ new_domain = old_domain; - else - { - /* If the following malloc fails `_nl_current_default_domain' - will be NULL. This value will be returned and so signals we - are out of core. */ - #if defined _LIBC || defined HAVE_STRDUP -- _nl_current_default_domain = strdup (domainname); -+ new_domain = strdup (domainname); - #else - size_t len = strlen (domainname) + 1; -- char *cp = (char *) malloc (len); -- if (cp != NULL) -- memcpy (cp, domainname, len); -- _nl_current_default_domain = cp; -+ new_domain = (char *) malloc (len); -+ if (new_domain != NULL) -+ memcpy (new_domain, domainname, len); - #endif -+ -+ if (new_domain != NULL) -+ _nl_current_default_domain = new_domain; - } - -- if (old != _nl_default_default_domain) -- free (old); -+ /* We use this possibility to signal a change of the loaded catalogs -+ since this is most likely the case and there is no other easy we -+ to do it. Do it only when the call was successful. */ -+ if (new_domain != NULL) -+ { -+ ++_nl_msg_cat_cntr; - -- return (char *) _nl_current_default_domain; -+ if (old_domain != new_domain && old_domain != _nl_default_default_domain) -+ free (old_domain); -+ } -+ -+ __libc_rwlock_unlock (_nl_state_lock); -+ -+ return new_domain; - } - - #ifdef _LIBC ---- lrzsz-0.12.20.safe/intl/vasnprintf.c 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/vasnprintf.c 2004-09-12 14:40:34.662701424 -0400 -@@ -0,0 +1,887 @@ -+/* vsprintf with automatic memory allocation. -+ Copyright (C) 1999, 2002-2003 Free Software Foundation, Inc. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+/* Tell glibc's to provide a prototype for snprintf(). -+ This must come before because may include -+ , and once has been included, it's too late. */ -+#ifndef _GNU_SOURCE -+# define _GNU_SOURCE 1 -+#endif -+ -+#ifdef HAVE_CONFIG_H -+# include -+#endif -+#ifndef IN_LIBINTL -+# include -+#endif -+ -+/* Specification. */ -+#if WIDE_CHAR_VERSION -+# include "vasnwprintf.h" -+#else -+# include "vasnprintf.h" -+#endif -+ -+#include /* snprintf(), sprintf() */ -+#include /* abort(), malloc(), realloc(), free() */ -+#include /* memcpy(), strlen() */ -+#include /* errno */ -+#include /* CHAR_BIT */ -+#include /* DBL_MAX_EXP, LDBL_MAX_EXP */ -+#if WIDE_CHAR_VERSION -+# include "wprintf-parse.h" -+#else -+# include "printf-parse.h" -+#endif -+ -+/* Checked size_t computations. */ -+#include "xsize.h" -+ -+#ifdef HAVE_WCHAR_T -+# ifdef HAVE_WCSLEN -+# define local_wcslen wcslen -+# else -+ /* Solaris 2.5.1 has wcslen() in a separate library libw.so. To avoid -+ a dependency towards this library, here is a local substitute. -+ Define this substitute only once, even if this file is included -+ twice in the same compilation unit. */ -+# ifndef local_wcslen_defined -+# define local_wcslen_defined 1 -+static size_t -+local_wcslen (const wchar_t *s) -+{ -+ const wchar_t *ptr; -+ -+ for (ptr = s; *ptr != (wchar_t) 0; ptr++) -+ ; -+ return ptr - s; -+} -+# endif -+# endif -+#endif -+ -+#if WIDE_CHAR_VERSION -+# define VASNPRINTF vasnwprintf -+# define CHAR_T wchar_t -+# define DIRECTIVE wchar_t_directive -+# define DIRECTIVES wchar_t_directives -+# define PRINTF_PARSE wprintf_parse -+# define USE_SNPRINTF 1 -+# if HAVE_DECL__SNWPRINTF -+ /* On Windows, the function swprintf() has a different signature than -+ on Unix; we use the _snwprintf() function instead. */ -+# define SNPRINTF _snwprintf -+# else -+ /* Unix. */ -+# define SNPRINTF swprintf -+# endif -+#else -+# define VASNPRINTF vasnprintf -+# define CHAR_T char -+# define DIRECTIVE char_directive -+# define DIRECTIVES char_directives -+# define PRINTF_PARSE printf_parse -+# define USE_SNPRINTF (HAVE_DECL__SNPRINTF || HAVE_SNPRINTF) -+# if HAVE_DECL__SNPRINTF -+ /* Windows. */ -+# define SNPRINTF _snprintf -+# else -+ /* Unix. */ -+# define SNPRINTF snprintf -+# endif -+#endif -+ -+CHAR_T * -+VASNPRINTF (CHAR_T *resultbuf, size_t *lengthp, const CHAR_T *format, va_list args) -+{ -+ DIRECTIVES d; -+ arguments a; -+ -+ if (PRINTF_PARSE (format, &d, &a) < 0) -+ { -+ errno = EINVAL; -+ return NULL; -+ } -+ -+#define CLEANUP() \ -+ free (d.dir); \ -+ if (a.arg) \ -+ free (a.arg); -+ -+ if (printf_fetchargs (args, &a) < 0) -+ { -+ CLEANUP (); -+ errno = EINVAL; -+ return NULL; -+ } -+ -+ { -+ size_t buf_neededlength; -+ CHAR_T *buf; -+ CHAR_T *buf_malloced; -+ const CHAR_T *cp; -+ size_t i; -+ DIRECTIVE *dp; -+ /* Output string accumulator. */ -+ CHAR_T *result; -+ size_t allocated; -+ size_t length; -+ -+ /* Allocate a small buffer that will hold a directive passed to -+ sprintf or snprintf. */ -+ buf_neededlength = -+ xsum4 (7, d.max_width_length, d.max_precision_length, 6); -+#if HAVE_ALLOCA -+ if (buf_neededlength < 4000 / sizeof (CHAR_T)) -+ { -+ buf = (CHAR_T *) alloca (buf_neededlength * sizeof (CHAR_T)); -+ buf_malloced = NULL; -+ } -+ else -+#endif -+ { -+ size_t buf_memsize = xtimes (buf_neededlength, sizeof (CHAR_T)); -+ if (size_overflow_p (buf_memsize)) -+ goto out_of_memory_1; -+ buf = (CHAR_T *) malloc (buf_memsize); -+ if (buf == NULL) -+ goto out_of_memory_1; -+ buf_malloced = buf; -+ } -+ -+ if (resultbuf != NULL) -+ { -+ result = resultbuf; -+ allocated = *lengthp; -+ } -+ else -+ { -+ result = NULL; -+ allocated = 0; -+ } -+ length = 0; -+ /* Invariants: -+ result is either == resultbuf or == NULL or malloc-allocated. -+ If length > 0, then result != NULL. */ -+ -+ /* Ensures that allocated >= needed. Aborts through a jump to -+ out_of_memory if needed is SIZE_MAX or otherwise too big. */ -+#define ENSURE_ALLOCATION(needed) \ -+ if ((needed) > allocated) \ -+ { \ -+ size_t memory_size; \ -+ CHAR_T *memory; \ -+ \ -+ allocated = (allocated > 0 ? xtimes (allocated, 2) : 12); \ -+ if ((needed) > allocated) \ -+ allocated = (needed); \ -+ memory_size = xtimes (allocated, sizeof (CHAR_T)); \ -+ if (size_overflow_p (memory_size)) \ -+ goto out_of_memory; \ -+ if (result == resultbuf || result == NULL) \ -+ memory = (CHAR_T *) malloc (memory_size); \ -+ else \ -+ memory = (CHAR_T *) realloc (result, memory_size); \ -+ if (memory == NULL) \ -+ goto out_of_memory; \ -+ if (result == resultbuf && length > 0) \ -+ memcpy (memory, result, length * sizeof (CHAR_T)); \ -+ result = memory; \ -+ } -+ -+ for (cp = format, i = 0, dp = &d.dir[0]; ; cp = dp->dir_end, i++, dp++) -+ { -+ if (cp != dp->dir_start) -+ { -+ size_t n = dp->dir_start - cp; -+ size_t augmented_length = xsum (length, n); -+ -+ ENSURE_ALLOCATION (augmented_length); -+ memcpy (result + length, cp, n * sizeof (CHAR_T)); -+ length = augmented_length; -+ } -+ if (i == d.count) -+ break; -+ -+ /* Execute a single directive. */ -+ if (dp->conversion == '%') -+ { -+ size_t augmented_length; -+ -+ if (!(dp->arg_index == ARG_NONE)) -+ abort (); -+ augmented_length = xsum (length, 1); -+ ENSURE_ALLOCATION (augmented_length); -+ result[length] = '%'; -+ length = augmented_length; -+ } -+ else -+ { -+ if (!(dp->arg_index != ARG_NONE)) -+ abort (); -+ -+ if (dp->conversion == 'n') -+ { -+ switch (a.arg[dp->arg_index].type) -+ { -+ case TYPE_COUNT_SCHAR_POINTER: -+ *a.arg[dp->arg_index].a.a_count_schar_pointer = length; -+ break; -+ case TYPE_COUNT_SHORT_POINTER: -+ *a.arg[dp->arg_index].a.a_count_short_pointer = length; -+ break; -+ case TYPE_COUNT_INT_POINTER: -+ *a.arg[dp->arg_index].a.a_count_int_pointer = length; -+ break; -+ case TYPE_COUNT_LONGINT_POINTER: -+ *a.arg[dp->arg_index].a.a_count_longint_pointer = length; -+ break; -+#ifdef HAVE_LONG_LONG -+ case TYPE_COUNT_LONGLONGINT_POINTER: -+ *a.arg[dp->arg_index].a.a_count_longlongint_pointer = length; -+ break; -+#endif -+ default: -+ abort (); -+ } -+ } -+ else -+ { -+ arg_type type = a.arg[dp->arg_index].type; -+ CHAR_T *p; -+ unsigned int prefix_count; -+ int prefixes[2]; -+#if !USE_SNPRINTF -+ size_t tmp_length; -+ CHAR_T tmpbuf[700]; -+ CHAR_T *tmp; -+ -+ /* Allocate a temporary buffer of sufficient size for calling -+ sprintf. */ -+ { -+ size_t width; -+ size_t precision; -+ -+ width = 0; -+ if (dp->width_start != dp->width_end) -+ { -+ if (dp->width_arg_index != ARG_NONE) -+ { -+ int arg; -+ -+ if (!(a.arg[dp->width_arg_index].type == TYPE_INT)) -+ abort (); -+ arg = a.arg[dp->width_arg_index].a.a_int; -+ width = (arg < 0 ? (unsigned int) (-arg) : arg); -+ } -+ else -+ { -+ const CHAR_T *digitp = dp->width_start; -+ -+ do -+ width = xsum (xtimes (width, 10), *digitp++ - '0'); -+ while (digitp != dp->width_end); -+ } -+ } -+ -+ precision = 6; -+ if (dp->precision_start != dp->precision_end) -+ { -+ if (dp->precision_arg_index != ARG_NONE) -+ { -+ int arg; -+ -+ if (!(a.arg[dp->precision_arg_index].type == TYPE_INT)) -+ abort (); -+ arg = a.arg[dp->precision_arg_index].a.a_int; -+ precision = (arg < 0 ? 0 : arg); -+ } -+ else -+ { -+ const CHAR_T *digitp = dp->precision_start + 1; -+ -+ precision = 0; -+ do -+ precision = xsum (xtimes (precision, 10), *digitp++ - '0'); -+ while (digitp != dp->precision_end); -+ } -+ } -+ -+ switch (dp->conversion) -+ { -+ -+ case 'd': case 'i': case 'u': -+# ifdef HAVE_LONG_LONG -+ if (type == TYPE_LONGLONGINT || type == TYPE_ULONGLONGINT) -+ tmp_length = -+ (unsigned int) (sizeof (unsigned long long) * CHAR_BIT -+ * 0.30103 /* binary -> decimal */ -+ * 2 /* estimate for FLAG_GROUP */ -+ ) -+ + 1 /* turn floor into ceil */ -+ + 1; /* account for leading sign */ -+ else -+# endif -+ if (type == TYPE_LONGINT || type == TYPE_ULONGINT) -+ tmp_length = -+ (unsigned int) (sizeof (unsigned long) * CHAR_BIT -+ * 0.30103 /* binary -> decimal */ -+ * 2 /* estimate for FLAG_GROUP */ -+ ) -+ + 1 /* turn floor into ceil */ -+ + 1; /* account for leading sign */ -+ else -+ tmp_length = -+ (unsigned int) (sizeof (unsigned int) * CHAR_BIT -+ * 0.30103 /* binary -> decimal */ -+ * 2 /* estimate for FLAG_GROUP */ -+ ) -+ + 1 /* turn floor into ceil */ -+ + 1; /* account for leading sign */ -+ break; -+ -+ case 'o': -+# ifdef HAVE_LONG_LONG -+ if (type == TYPE_LONGLONGINT || type == TYPE_ULONGLONGINT) -+ tmp_length = -+ (unsigned int) (sizeof (unsigned long long) * CHAR_BIT -+ * 0.333334 /* binary -> octal */ -+ ) -+ + 1 /* turn floor into ceil */ -+ + 1; /* account for leading sign */ -+ else -+# endif -+ if (type == TYPE_LONGINT || type == TYPE_ULONGINT) -+ tmp_length = -+ (unsigned int) (sizeof (unsigned long) * CHAR_BIT -+ * 0.333334 /* binary -> octal */ -+ ) -+ + 1 /* turn floor into ceil */ -+ + 1; /* account for leading sign */ -+ else -+ tmp_length = -+ (unsigned int) (sizeof (unsigned int) * CHAR_BIT -+ * 0.333334 /* binary -> octal */ -+ ) -+ + 1 /* turn floor into ceil */ -+ + 1; /* account for leading sign */ -+ break; -+ -+ case 'x': case 'X': -+# ifdef HAVE_LONG_LONG -+ if (type == TYPE_LONGLONGINT || type == TYPE_ULONGLONGINT) -+ tmp_length = -+ (unsigned int) (sizeof (unsigned long long) * CHAR_BIT -+ * 0.25 /* binary -> hexadecimal */ -+ ) -+ + 1 /* turn floor into ceil */ -+ + 2; /* account for leading sign or alternate form */ -+ else -+# endif -+ if (type == TYPE_LONGINT || type == TYPE_ULONGINT) -+ tmp_length = -+ (unsigned int) (sizeof (unsigned long) * CHAR_BIT -+ * 0.25 /* binary -> hexadecimal */ -+ ) -+ + 1 /* turn floor into ceil */ -+ + 2; /* account for leading sign or alternate form */ -+ else -+ tmp_length = -+ (unsigned int) (sizeof (unsigned int) * CHAR_BIT -+ * 0.25 /* binary -> hexadecimal */ -+ ) -+ + 1 /* turn floor into ceil */ -+ + 2; /* account for leading sign or alternate form */ -+ break; -+ -+ case 'f': case 'F': -+# ifdef HAVE_LONG_DOUBLE -+ if (type == TYPE_LONGDOUBLE) -+ tmp_length = -+ (unsigned int) (LDBL_MAX_EXP -+ * 0.30103 /* binary -> decimal */ -+ * 2 /* estimate for FLAG_GROUP */ -+ ) -+ + 1 /* turn floor into ceil */ -+ + 10; /* sign, decimal point etc. */ -+ else -+# endif -+ tmp_length = -+ (unsigned int) (DBL_MAX_EXP -+ * 0.30103 /* binary -> decimal */ -+ * 2 /* estimate for FLAG_GROUP */ -+ ) -+ + 1 /* turn floor into ceil */ -+ + 10; /* sign, decimal point etc. */ -+ tmp_length = xsum (tmp_length, precision); -+ break; -+ -+ case 'e': case 'E': case 'g': case 'G': -+ case 'a': case 'A': -+ tmp_length = -+ 12; /* sign, decimal point, exponent etc. */ -+ tmp_length = xsum (tmp_length, precision); -+ break; -+ -+ case 'c': -+# if defined HAVE_WINT_T && !WIDE_CHAR_VERSION -+ if (type == TYPE_WIDE_CHAR) -+ tmp_length = MB_CUR_MAX; -+ else -+# endif -+ tmp_length = 1; -+ break; -+ -+ case 's': -+# ifdef HAVE_WCHAR_T -+ if (type == TYPE_WIDE_STRING) -+ { -+ tmp_length = -+ local_wcslen (a.arg[dp->arg_index].a.a_wide_string); -+ -+# if !WIDE_CHAR_VERSION -+ tmp_length = xtimes (tmp_length, MB_CUR_MAX); -+# endif -+ } -+ else -+# endif -+ tmp_length = strlen (a.arg[dp->arg_index].a.a_string); -+ break; -+ -+ case 'p': -+ tmp_length = -+ (unsigned int) (sizeof (void *) * CHAR_BIT -+ * 0.25 /* binary -> hexadecimal */ -+ ) -+ + 1 /* turn floor into ceil */ -+ + 2; /* account for leading 0x */ -+ break; -+ -+ default: -+ abort (); -+ } -+ -+ if (tmp_length < width) -+ tmp_length = width; -+ -+ tmp_length = xsum (tmp_length, 1); /* account for trailing NUL */ -+ } -+ -+ if (tmp_length <= sizeof (tmpbuf) / sizeof (CHAR_T)) -+ tmp = tmpbuf; -+ else -+ { -+ size_t tmp_memsize = xtimes (tmp_length, sizeof (CHAR_T)); -+ -+ if (size_overflow_p (tmp_memsize)) -+ /* Overflow, would lead to out of memory. */ -+ goto out_of_memory; -+ tmp = (CHAR_T *) malloc (tmp_memsize); -+ if (tmp == NULL) -+ /* Out of memory. */ -+ goto out_of_memory; -+ } -+#endif -+ -+ /* Construct the format string for calling snprintf or -+ sprintf. */ -+ p = buf; -+ *p++ = '%'; -+ if (dp->flags & FLAG_GROUP) -+ *p++ = '\''; -+ if (dp->flags & FLAG_LEFT) -+ *p++ = '-'; -+ if (dp->flags & FLAG_SHOWSIGN) -+ *p++ = '+'; -+ if (dp->flags & FLAG_SPACE) -+ *p++ = ' '; -+ if (dp->flags & FLAG_ALT) -+ *p++ = '#'; -+ if (dp->flags & FLAG_ZERO) -+ *p++ = '0'; -+ if (dp->width_start != dp->width_end) -+ { -+ size_t n = dp->width_end - dp->width_start; -+ memcpy (p, dp->width_start, n * sizeof (CHAR_T)); -+ p += n; -+ } -+ if (dp->precision_start != dp->precision_end) -+ { -+ size_t n = dp->precision_end - dp->precision_start; -+ memcpy (p, dp->precision_start, n * sizeof (CHAR_T)); -+ p += n; -+ } -+ -+ switch (type) -+ { -+#ifdef HAVE_LONG_LONG -+ case TYPE_LONGLONGINT: -+ case TYPE_ULONGLONGINT: -+ *p++ = 'l'; -+ /*FALLTHROUGH*/ -+#endif -+ case TYPE_LONGINT: -+ case TYPE_ULONGINT: -+#ifdef HAVE_WINT_T -+ case TYPE_WIDE_CHAR: -+#endif -+#ifdef HAVE_WCHAR_T -+ case TYPE_WIDE_STRING: -+#endif -+ *p++ = 'l'; -+ break; -+#ifdef HAVE_LONG_DOUBLE -+ case TYPE_LONGDOUBLE: -+ *p++ = 'L'; -+ break; -+#endif -+ default: -+ break; -+ } -+ *p = dp->conversion; -+#if USE_SNPRINTF -+ p[1] = '%'; -+ p[2] = 'n'; -+ p[3] = '\0'; -+#else -+ p[1] = '\0'; -+#endif -+ -+ /* Construct the arguments for calling snprintf or sprintf. */ -+ prefix_count = 0; -+ if (dp->width_arg_index != ARG_NONE) -+ { -+ if (!(a.arg[dp->width_arg_index].type == TYPE_INT)) -+ abort (); -+ prefixes[prefix_count++] = a.arg[dp->width_arg_index].a.a_int; -+ } -+ if (dp->precision_arg_index != ARG_NONE) -+ { -+ if (!(a.arg[dp->precision_arg_index].type == TYPE_INT)) -+ abort (); -+ prefixes[prefix_count++] = a.arg[dp->precision_arg_index].a.a_int; -+ } -+ -+#if USE_SNPRINTF -+ /* Prepare checking whether snprintf returns the count -+ via %n. */ -+ ENSURE_ALLOCATION (xsum (length, 1)); -+ result[length] = '\0'; -+#endif -+ -+ for (;;) -+ { -+ size_t maxlen; -+ int count; -+ int retcount; -+ -+ maxlen = allocated - length; -+ count = -1; -+ retcount = 0; -+ -+#if USE_SNPRINTF -+# define SNPRINTF_BUF(arg) \ -+ switch (prefix_count) \ -+ { \ -+ case 0: \ -+ retcount = SNPRINTF (result + length, maxlen, buf, \ -+ arg, &count); \ -+ break; \ -+ case 1: \ -+ retcount = SNPRINTF (result + length, maxlen, buf, \ -+ prefixes[0], arg, &count); \ -+ break; \ -+ case 2: \ -+ retcount = SNPRINTF (result + length, maxlen, buf, \ -+ prefixes[0], prefixes[1], arg, \ -+ &count); \ -+ break; \ -+ default: \ -+ abort (); \ -+ } -+#else -+# define SNPRINTF_BUF(arg) \ -+ switch (prefix_count) \ -+ { \ -+ case 0: \ -+ count = sprintf (tmp, buf, arg); \ -+ break; \ -+ case 1: \ -+ count = sprintf (tmp, buf, prefixes[0], arg); \ -+ break; \ -+ case 2: \ -+ count = sprintf (tmp, buf, prefixes[0], prefixes[1],\ -+ arg); \ -+ break; \ -+ default: \ -+ abort (); \ -+ } -+#endif -+ -+ switch (type) -+ { -+ case TYPE_SCHAR: -+ { -+ int arg = a.arg[dp->arg_index].a.a_schar; -+ SNPRINTF_BUF (arg); -+ } -+ break; -+ case TYPE_UCHAR: -+ { -+ unsigned int arg = a.arg[dp->arg_index].a.a_uchar; -+ SNPRINTF_BUF (arg); -+ } -+ break; -+ case TYPE_SHORT: -+ { -+ int arg = a.arg[dp->arg_index].a.a_short; -+ SNPRINTF_BUF (arg); -+ } -+ break; -+ case TYPE_USHORT: -+ { -+ unsigned int arg = a.arg[dp->arg_index].a.a_ushort; -+ SNPRINTF_BUF (arg); -+ } -+ break; -+ case TYPE_INT: -+ { -+ int arg = a.arg[dp->arg_index].a.a_int; -+ SNPRINTF_BUF (arg); -+ } -+ break; -+ case TYPE_UINT: -+ { -+ unsigned int arg = a.arg[dp->arg_index].a.a_uint; -+ SNPRINTF_BUF (arg); -+ } -+ break; -+ case TYPE_LONGINT: -+ { -+ long int arg = a.arg[dp->arg_index].a.a_longint; -+ SNPRINTF_BUF (arg); -+ } -+ break; -+ case TYPE_ULONGINT: -+ { -+ unsigned long int arg = a.arg[dp->arg_index].a.a_ulongint; -+ SNPRINTF_BUF (arg); -+ } -+ break; -+#ifdef HAVE_LONG_LONG -+ case TYPE_LONGLONGINT: -+ { -+ long long int arg = a.arg[dp->arg_index].a.a_longlongint; -+ SNPRINTF_BUF (arg); -+ } -+ break; -+ case TYPE_ULONGLONGINT: -+ { -+ unsigned long long int arg = a.arg[dp->arg_index].a.a_ulonglongint; -+ SNPRINTF_BUF (arg); -+ } -+ break; -+#endif -+ case TYPE_DOUBLE: -+ { -+ double arg = a.arg[dp->arg_index].a.a_double; -+ SNPRINTF_BUF (arg); -+ } -+ break; -+#ifdef HAVE_LONG_DOUBLE -+ case TYPE_LONGDOUBLE: -+ { -+ long double arg = a.arg[dp->arg_index].a.a_longdouble; -+ SNPRINTF_BUF (arg); -+ } -+ break; -+#endif -+ case TYPE_CHAR: -+ { -+ int arg = a.arg[dp->arg_index].a.a_char; -+ SNPRINTF_BUF (arg); -+ } -+ break; -+#ifdef HAVE_WINT_T -+ case TYPE_WIDE_CHAR: -+ { -+ wint_t arg = a.arg[dp->arg_index].a.a_wide_char; -+ SNPRINTF_BUF (arg); -+ } -+ break; -+#endif -+ case TYPE_STRING: -+ { -+ const char *arg = a.arg[dp->arg_index].a.a_string; -+ SNPRINTF_BUF (arg); -+ } -+ break; -+#ifdef HAVE_WCHAR_T -+ case TYPE_WIDE_STRING: -+ { -+ const wchar_t *arg = a.arg[dp->arg_index].a.a_wide_string; -+ SNPRINTF_BUF (arg); -+ } -+ break; -+#endif -+ case TYPE_POINTER: -+ { -+ void *arg = a.arg[dp->arg_index].a.a_pointer; -+ SNPRINTF_BUF (arg); -+ } -+ break; -+ default: -+ abort (); -+ } -+ -+#if USE_SNPRINTF -+ /* Portability: Not all implementations of snprintf() -+ are ISO C 99 compliant. Determine the number of -+ bytes that snprintf() has produced or would have -+ produced. */ -+ if (count >= 0) -+ { -+ /* Verify that snprintf() has NUL-terminated its -+ result. */ -+ if (count < maxlen && result[length + count] != '\0') -+ abort (); -+ /* Portability hack. */ -+ if (retcount > count) -+ count = retcount; -+ } -+ else -+ { -+ /* snprintf() doesn't understand the '%n' -+ directive. */ -+ if (p[1] != '\0') -+ { -+ /* Don't use the '%n' directive; instead, look -+ at the snprintf() return value. */ -+ p[1] = '\0'; -+ continue; -+ } -+ else -+ { -+ /* Look at the snprintf() return value. */ -+ if (retcount < 0) -+ { -+ /* HP-UX 10.20 snprintf() is doubly deficient: -+ It doesn't understand the '%n' directive, -+ *and* it returns -1 (rather than the length -+ that would have been required) when the -+ buffer is too small. */ -+ size_t bigger_need = -+ xsum (xtimes (allocated, 2), 12); -+ ENSURE_ALLOCATION (bigger_need); -+ continue; -+ } -+ else -+ count = retcount; -+ } -+ } -+#endif -+ -+ /* Attempt to handle failure. */ -+ if (count < 0) -+ { -+ if (!(result == resultbuf || result == NULL)) -+ free (result); -+ if (buf_malloced != NULL) -+ free (buf_malloced); -+ CLEANUP (); -+ errno = EINVAL; -+ return NULL; -+ } -+ -+#if !USE_SNPRINTF -+ if (count >= tmp_length) -+ /* tmp_length was incorrectly calculated - fix the -+ code above! */ -+ abort (); -+#endif -+ -+ /* Make room for the result. */ -+ if (count >= maxlen) -+ { -+ /* Need at least count bytes. But allocate -+ proportionally, to avoid looping eternally if -+ snprintf() reports a too small count. */ -+ size_t n = -+ xmax (xsum (length, count), xtimes (allocated, 2)); -+ -+ ENSURE_ALLOCATION (n); -+#if USE_SNPRINTF -+ continue; -+#endif -+ } -+ -+#if USE_SNPRINTF -+ /* The snprintf() result did fit. */ -+#else -+ /* Append the sprintf() result. */ -+ memcpy (result + length, tmp, count * sizeof (CHAR_T)); -+ if (tmp != tmpbuf) -+ free (tmp); -+#endif -+ -+ length += count; -+ break; -+ } -+ } -+ } -+ } -+ -+ /* Add the final NUL. */ -+ ENSURE_ALLOCATION (xsum (length, 1)); -+ result[length] = '\0'; -+ -+ if (result != resultbuf && length + 1 < allocated) -+ { -+ /* Shrink the allocated memory if possible. */ -+ CHAR_T *memory; -+ -+ memory = (CHAR_T *) realloc (result, (length + 1) * sizeof (CHAR_T)); -+ if (memory != NULL) -+ result = memory; -+ } -+ -+ if (buf_malloced != NULL) -+ free (buf_malloced); -+ CLEANUP (); -+ *lengthp = length; -+ return result; -+ -+ out_of_memory: -+ if (!(result == resultbuf || result == NULL)) -+ free (result); -+ if (buf_malloced != NULL) -+ free (buf_malloced); -+ out_of_memory_1: -+ CLEANUP (); -+ errno = ENOMEM; -+ return NULL; -+ } -+} -+ -+#undef SNPRINTF -+#undef USE_SNPRINTF -+#undef PRINTF_PARSE -+#undef DIRECTIVES -+#undef DIRECTIVE -+#undef CHAR_T -+#undef VASNPRINTF ---- lrzsz-0.12.20.safe/intl/vasnprintf.h 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/vasnprintf.h 2004-09-12 14:40:34.667700664 -0400 -@@ -0,0 +1,61 @@ -+/* vsprintf with automatic memory allocation. -+ Copyright (C) 2002-2003 Free Software Foundation, Inc. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+#ifndef _VASNPRINTF_H -+#define _VASNPRINTF_H -+ -+/* Get va_list. */ -+#include -+ -+/* Get size_t. */ -+#include -+ -+#ifndef __attribute__ -+/* This feature is available in gcc versions 2.5 and later. */ -+# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 5) || __STRICT_ANSI__ -+# define __attribute__(Spec) /* empty */ -+# endif -+/* The __-protected variants of `format' and `printf' attributes -+ are accepted by gcc versions 2.6.4 (effectively 2.7) and later. */ -+# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 7) -+# define __format__ format -+# define __printf__ printf -+# endif -+#endif -+ -+#ifdef __cplusplus -+extern "C" { -+#endif -+ -+/* Write formatted output to a string dynamically allocated with malloc(). -+ You can pass a preallocated buffer for the result in RESULTBUF and its -+ size in *LENGTHP; otherwise you pass RESULTBUF = NULL. -+ If successful, return the address of the string (this may be = RESULTBUF -+ if no dynamic memory allocation was necessary) and set *LENGTHP to the -+ number of resulting bytes, excluding the trailing NUL. Upon error, set -+ errno and return NULL. */ -+extern char * asnprintf (char *resultbuf, size_t *lengthp, const char *format, ...) -+ __attribute__ ((__format__ (__printf__, 3, 4))); -+extern char * vasnprintf (char *resultbuf, size_t *lengthp, const char *format, va_list args) -+ __attribute__ ((__format__ (__printf__, 3, 0))); -+ -+#ifdef __cplusplus -+} -+#endif -+ -+#endif /* _VASNPRINTF_H */ ---- lrzsz-0.12.20.safe/intl/vasnwprintf.h 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/vasnwprintf.h 2004-09-12 14:40:34.673699752 -0400 -@@ -0,0 +1,46 @@ -+/* vswprintf with automatic memory allocation. -+ Copyright (C) 2002-2003 Free Software Foundation, Inc. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+#ifndef _VASNWPRINTF_H -+#define _VASNWPRINTF_H -+ -+/* Get va_list. */ -+#include -+ -+/* Get wchar_t, size_t. */ -+#include -+ -+#ifdef __cplusplus -+extern "C" { -+#endif -+ -+/* Write formatted output to a string dynamically allocated with malloc(). -+ You can pass a preallocated buffer for the result in RESULTBUF and its -+ size in *LENGTHP; otherwise you pass RESULTBUF = NULL. -+ If successful, return the address of the string (this may be = RESULTBUF -+ if no dynamic memory allocation was necessary) and set *LENGTHP to the -+ number of resulting bytes, excluding the trailing NUL. Upon error, set -+ errno and return NULL. */ -+extern wchar_t * asnwprintf (wchar_t *resultbuf, size_t *lengthp, const wchar_t *format, ...); -+extern wchar_t * vasnwprintf (wchar_t *resultbuf, size_t *lengthp, const wchar_t *format, va_list args); -+ -+#ifdef __cplusplus -+} -+#endif -+ -+#endif /* _VASNWPRINTF_H */ ---- lrzsz-0.12.20.safe/intl/VERSION 1998-04-26 09:22:37.000000000 -0400 -+++ lrzsz-0.12.20/intl/VERSION 2004-09-12 14:40:34.679698840 -0400 -@@ -1 +1 @@ --GNU gettext library from gettext-0.10.32 -+GNU gettext library from gettext-0.14.1 ---- lrzsz-0.12.20.safe/intl/wprintf-parse.h 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/wprintf-parse.h 2004-09-12 14:40:34.695696408 -0400 -@@ -0,0 +1,75 @@ -+/* Parse printf format string. -+ Copyright (C) 1999, 2002-2003 Free Software Foundation, Inc. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+#ifndef _WPRINTF_PARSE_H -+#define _WPRINTF_PARSE_H -+ -+#include "printf-args.h" -+ -+ -+/* Flags */ -+#define FLAG_GROUP 1 /* ' flag */ -+#define FLAG_LEFT 2 /* - flag */ -+#define FLAG_SHOWSIGN 4 /* + flag */ -+#define FLAG_SPACE 8 /* space flag */ -+#define FLAG_ALT 16 /* # flag */ -+#define FLAG_ZERO 32 -+ -+/* arg_index value indicating that no argument is consumed. */ -+#define ARG_NONE (~(size_t)0) -+ -+/* A parsed directive. */ -+typedef struct -+{ -+ const wchar_t* dir_start; -+ const wchar_t* dir_end; -+ int flags; -+ const wchar_t* width_start; -+ const wchar_t* width_end; -+ size_t width_arg_index; -+ const wchar_t* precision_start; -+ const wchar_t* precision_end; -+ size_t precision_arg_index; -+ wchar_t conversion; /* d i o u x X f e E g G c s p n U % but not C S */ -+ size_t arg_index; -+} -+wchar_t_directive; -+ -+/* A parsed format string. */ -+typedef struct -+{ -+ size_t count; -+ wchar_t_directive *dir; -+ size_t max_width_length; -+ size_t max_precision_length; -+} -+wchar_t_directives; -+ -+ -+/* Parses the format string. Fills in the number N of directives, and fills -+ in directives[0], ..., directives[N-1], and sets directives[N].dir_start -+ to the end of the format string. Also fills in the arg_type fields of the -+ arguments and the needed count of arguments. */ -+#ifdef STATIC -+STATIC -+#else -+extern -+#endif -+int wprintf_parse (const wchar_t *format, wchar_t_directives *d, arguments *a); -+ -+#endif /* _WPRINTF_PARSE_H */ ---- lrzsz-0.12.20.safe/intl/xopen-msg.sed 1998-04-26 09:20:52.000000000 -0400 -+++ lrzsz-0.12.20/intl/xopen-msg.sed 1969-12-31 19:00:00.000000000 -0500 -@@ -1,104 +0,0 @@ --# po2msg.sed - Convert Uniforum style .po file to X/Open style .msg file --# Copyright (C) 1995 Free Software Foundation, Inc. --# Ulrich Drepper , 1995. --# --# This program is free software; you can redistribute it and/or modify --# it under the terms of the GNU General Public License as published by --# the Free Software Foundation; either version 2, or (at your option) --# any later version. --# --# This program is distributed in the hope that it will be useful, --# but WITHOUT ANY WARRANTY; without even the implied warranty of --# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the --# GNU General Public License for more details. --# --# You should have received a copy of the GNU General Public License --# along with this program; if not, write to the Free Software --# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. --# --# --# The first directive in the .msg should be the definition of the --# message set number. We use always set number 1. --# --1 { -- i\ --$set 1 # Automatically created by po2msg.sed -- h -- s/.*/0/ -- x --} --# --# We copy all comments into the .msg file. Perhaps they can help. --# --/^#/ s/^#[ ]*/$ /p --# --# We copy the original message as a comment into the .msg file. --# --/^msgid/ { --# Does not work now --# /"$/! { --# s/\\$// --# s/$/ ... (more lines following)"/ --# } -- s/^msgid[ ]*"\(.*\)"$/$ Original Message: \1/ -- p --} --# --# The .msg file contains, other then the .po file, only the translations --# but each given a unique ID. Starting from 1 and incrementing by 1 for --# each message we assign them to the messages. --# It is important that the .po file used to generate the cat-id-tbl.c file --# (with po-to-tbl) is the same as the one used here. (At least the order --# of declarations must not be changed.) --# --/^msgstr/ { -- s/msgstr[ ]*"\(.*\)"/\1/ -- x --# The following nice solution is by --# Bruno -- td --# Increment a decimal number in pattern space. --# First hide trailing `9' digits. -- :d -- s/9\(_*\)$/_\1/ -- td --# Assure at least one digit is available. -- s/^\(_*\)$/0\1/ --# Increment the last digit. -- s/8\(_*\)$/9\1/ -- s/7\(_*\)$/8\1/ -- s/6\(_*\)$/7\1/ -- s/5\(_*\)$/6\1/ -- s/4\(_*\)$/5\1/ -- s/3\(_*\)$/4\1/ -- s/2\(_*\)$/3\1/ -- s/1\(_*\)$/2\1/ -- s/0\(_*\)$/1\1/ --# Convert the hidden `9' digits to `0's. -- s/_/0/g -- x --# Bring the line in the format ` ' -- G -- s/^[^\n]*$/& / -- s/\(.*\)\n\([0-9]*\)/\2 \1/ --# Clear flag from last substitution. -- tb --# Append the next line. -- :b -- N --# Look whether second part is a continuation line. -- s/\(.*\n\)"\(.*\)"/\1\2/ --# Yes, then branch. -- ta -- P -- D --# Note that `D' includes a jump to the start!! --# We found a continuation line. But before printing insert '\'. -- :a -- s/\(.*\)\(\n.*\)/\1\\\2/ -- P --# We cannot use the sed command `D' here -- s/.*\n\(.*\)/\1/ -- tb --} --d ---- lrzsz-0.12.20.safe/intl/xsize.h 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/intl/xsize.h 2004-09-12 14:40:34.700695648 -0400 -@@ -0,0 +1,109 @@ -+/* xsize.h -- Checked size_t computations. -+ -+ Copyright (C) 2003 Free Software Foundation, Inc. -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU Library General Public License as published -+ by the Free Software Foundation; either version 2, or (at your option) -+ any later version. -+ -+ This program is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public -+ License along with this program; if not, write to the Free Software -+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -+ USA. */ -+ -+#ifndef _XSIZE_H -+#define _XSIZE_H -+ -+/* Get size_t. */ -+#include -+ -+/* Get SIZE_MAX. */ -+#include -+#if HAVE_STDINT_H -+# include -+#endif -+ -+/* The size of memory objects is often computed through expressions of -+ type size_t. Example: -+ void* p = malloc (header_size + n * element_size). -+ These computations can lead to overflow. When this happens, malloc() -+ returns a piece of memory that is way too small, and the program then -+ crashes while attempting to fill the memory. -+ To avoid this, the functions and macros in this file check for overflow. -+ The convention is that SIZE_MAX represents overflow. -+ malloc (SIZE_MAX) is not guaranteed to fail -- think of a malloc -+ implementation that uses mmap --, it's recommended to use size_overflow_p() -+ or size_in_bounds_p() before invoking malloc(). -+ The example thus becomes: -+ size_t size = xsum (header_size, xtimes (n, element_size)); -+ void *p = (size_in_bounds_p (size) ? malloc (size) : NULL); -+*/ -+ -+/* Convert an arbitrary value >= 0 to type size_t. */ -+#define xcast_size_t(N) \ -+ ((N) <= SIZE_MAX ? (size_t) (N) : SIZE_MAX) -+ -+/* Sum of two sizes, with overflow check. */ -+static inline size_t -+#if __GNUC__ >= 3 -+__attribute__ ((__pure__)) -+#endif -+xsum (size_t size1, size_t size2) -+{ -+ size_t sum = size1 + size2; -+ return (sum >= size1 ? sum : SIZE_MAX); -+} -+ -+/* Sum of three sizes, with overflow check. */ -+static inline size_t -+#if __GNUC__ >= 3 -+__attribute__ ((__pure__)) -+#endif -+xsum3 (size_t size1, size_t size2, size_t size3) -+{ -+ return xsum (xsum (size1, size2), size3); -+} -+ -+/* Sum of four sizes, with overflow check. */ -+static inline size_t -+#if __GNUC__ >= 3 -+__attribute__ ((__pure__)) -+#endif -+xsum4 (size_t size1, size_t size2, size_t size3, size_t size4) -+{ -+ return xsum (xsum (xsum (size1, size2), size3), size4); -+} -+ -+/* Maximum of two sizes, with overflow check. */ -+static inline size_t -+#if __GNUC__ >= 3 -+__attribute__ ((__pure__)) -+#endif -+xmax (size_t size1, size_t size2) -+{ -+ /* No explicit check is needed here, because for any n: -+ max (SIZE_MAX, n) == SIZE_MAX and max (n, SIZE_MAX) == SIZE_MAX. */ -+ return (size1 >= size2 ? size1 : size2); -+} -+ -+/* Multiplication of a count with an element size, with overflow check. -+ The count must be >= 0 and the element size must be > 0. -+ This is a macro, not an inline function, so that it works correctly even -+ when N is of a wider tupe and N > SIZE_MAX. */ -+#define xtimes(N, ELSIZE) \ -+ ((N) <= SIZE_MAX / (ELSIZE) ? (size_t) (N) * (ELSIZE) : SIZE_MAX) -+ -+/* Check for overflow. */ -+#define size_overflow_p(SIZE) \ -+ ((SIZE) == SIZE_MAX) -+/* Check against overflow. */ -+#define size_in_bounds_p(SIZE) \ -+ ((SIZE) != SIZE_MAX) -+ -+#endif /* _XSIZE_H */ ---- lrzsz-0.12.20.safe/m4/ChangeLog 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/ChangeLog 2004-09-12 14:40:35.054641840 -0400 -@@ -0,0 +1,32 @@ -+2004-09-12 gettextize -+ -+ * codeset.m4: New file, from gettext-0.14.1. -+ * gettext.m4: New file, from gettext-0.14.1. -+ * glibc21.m4: New file, from gettext-0.14.1. -+ * iconv.m4: New file, from gettext-0.14.1. -+ * intdiv0.m4: New file, from gettext-0.14.1. -+ * intmax.m4: New file, from gettext-0.14.1. -+ * inttypes.m4: New file, from gettext-0.14.1. -+ * inttypes_h.m4: New file, from gettext-0.14.1. -+ * inttypes-pri.m4: New file, from gettext-0.14.1. -+ * isc-posix.m4: New file, from gettext-0.14.1. -+ * lcmessage.m4: New file, from gettext-0.14.1. -+ * lib-ld.m4: New file, from gettext-0.14.1. -+ * lib-link.m4: New file, from gettext-0.14.1. -+ * lib-prefix.m4: New file, from gettext-0.14.1. -+ * longdouble.m4: New file, from gettext-0.14.1. -+ * longlong.m4: New file, from gettext-0.14.1. -+ * nls.m4: New file, from gettext-0.14.1. -+ * po.m4: New file, from gettext-0.14.1. -+ * printf-posix.m4: New file, from gettext-0.14.1. -+ * progtest.m4: New file, from gettext-0.14.1. -+ * signed.m4: New file, from gettext-0.14.1. -+ * size_max.m4: New file, from gettext-0.14.1. -+ * stdint_h.m4: New file, from gettext-0.14.1. -+ * uintmax_t.m4: New file, from gettext-0.14.1. -+ * ulonglong.m4: New file, from gettext-0.14.1. -+ * wchar_t.m4: New file, from gettext-0.14.1. -+ * wint_t.m4: New file, from gettext-0.14.1. -+ * xsize.m4: New file, from gettext-0.14.1. -+ * Makefile.am: New file. -+ ---- lrzsz-0.12.20.safe/m4/codeset.m4 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/codeset.m4 2004-09-12 14:40:34.820677408 -0400 -@@ -0,0 +1,23 @@ -+# codeset.m4 serial AM1 (gettext-0.10.40) -+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_LANGINFO_CODESET], -+[ -+ AC_CACHE_CHECK([for nl_langinfo and CODESET], am_cv_langinfo_codeset, -+ [AC_TRY_LINK([#include ], -+ [char* cs = nl_langinfo(CODESET);], -+ am_cv_langinfo_codeset=yes, -+ am_cv_langinfo_codeset=no) -+ ]) -+ if test $am_cv_langinfo_codeset = yes; then -+ AC_DEFINE(HAVE_LANGINFO_CODESET, 1, -+ [Define if you have and nl_langinfo(CODESET).]) -+ fi -+]) ---- lrzsz-0.12.20.safe/m4/gettext.m4 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/gettext.m4 2004-09-12 14:40:34.826676496 -0400 -@@ -0,0 +1,487 @@ -+# 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], []) ---- lrzsz-0.12.20.safe/m4/glibc21.m4 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/glibc21.m4 2004-09-12 14:40:34.833675432 -0400 -@@ -0,0 +1,32 @@ -+# glibc21.m4 serial 2 (fileutils-4.1.3, gettext-0.10.40) -+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. -+ -+# Test for the GNU C Library, version 2.1 or newer. -+# From Bruno Haible. -+ -+AC_DEFUN([jm_GLIBC21], -+ [ -+ AC_CACHE_CHECK(whether we are using the GNU C Library 2.1 or newer, -+ ac_cv_gnu_library_2_1, -+ [AC_EGREP_CPP([Lucky GNU user], -+ [ -+#include -+#ifdef __GNU_LIBRARY__ -+ #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) || (__GLIBC__ > 2) -+ Lucky GNU user -+ #endif -+#endif -+ ], -+ ac_cv_gnu_library_2_1=yes, -+ ac_cv_gnu_library_2_1=no) -+ ] -+ ) -+ AC_SUBST(GLIBC21) -+ GLIBC21="$ac_cv_gnu_library_2_1" -+ ] -+) ---- lrzsz-0.12.20.safe/m4/iconv.m4 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/iconv.m4 2004-09-12 14:40:34.839674520 -0400 -@@ -0,0 +1,103 @@ -+# 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 -+]) ---- lrzsz-0.12.20.safe/m4/intdiv0.m4 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/intdiv0.m4 2004-09-12 14:40:34.845673608 -0400 -@@ -0,0 +1,72 @@ -+# intdiv0.m4 serial 1 (gettext-0.11.3) -+dnl Copyright (C) 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([gt_INTDIV0], -+[ -+ AC_REQUIRE([AC_PROG_CC])dnl -+ AC_REQUIRE([AC_CANONICAL_HOST])dnl -+ -+ AC_CACHE_CHECK([whether integer division by zero raises SIGFPE], -+ gt_cv_int_divbyzero_sigfpe, -+ [ -+ AC_TRY_RUN([ -+#include -+#include -+ -+static void -+#ifdef __cplusplus -+sigfpe_handler (int sig) -+#else -+sigfpe_handler (sig) int sig; -+#endif -+{ -+ /* Exit with code 0 if SIGFPE, with code 1 if any other signal. */ -+ exit (sig != SIGFPE); -+} -+ -+int x = 1; -+int y = 0; -+int z; -+int nan; -+ -+int main () -+{ -+ signal (SIGFPE, sigfpe_handler); -+/* IRIX and AIX (when "xlc -qcheck" is used) yield signal SIGTRAP. */ -+#if (defined (__sgi) || defined (_AIX)) && defined (SIGTRAP) -+ signal (SIGTRAP, sigfpe_handler); -+#endif -+/* Linux/SPARC yields signal SIGILL. */ -+#if defined (__sparc__) && defined (__linux__) -+ signal (SIGILL, sigfpe_handler); -+#endif -+ -+ z = x / y; -+ nan = y / y; -+ exit (1); -+} -+], gt_cv_int_divbyzero_sigfpe=yes, gt_cv_int_divbyzero_sigfpe=no, -+ [ -+ # Guess based on the CPU. -+ case "$host_cpu" in -+ alpha* | i[34567]86 | m68k | s390*) -+ gt_cv_int_divbyzero_sigfpe="guessing yes";; -+ *) -+ gt_cv_int_divbyzero_sigfpe="guessing no";; -+ esac -+ ]) -+ ]) -+ case "$gt_cv_int_divbyzero_sigfpe" in -+ *yes) value=1;; -+ *) value=0;; -+ esac -+ AC_DEFINE_UNQUOTED(INTDIV0_RAISES_SIGFPE, $value, -+ [Define if integer division by zero raises signal SIGFPE.]) -+]) ---- lrzsz-0.12.20.safe/m4/intmax.m4 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/intmax.m4 2004-09-12 14:40:34.855672088 -0400 -@@ -0,0 +1,32 @@ -+# intmax.m4 serial 1 (gettext-0.12) -+dnl Copyright (C) 2002-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 Test whether the system has the 'intmax_t' type, but don't attempt to -+dnl find a replacement if it is lacking. -+ -+AC_DEFUN([gt_TYPE_INTMAX_T], -+[ -+ AC_REQUIRE([jm_AC_HEADER_INTTYPES_H]) -+ AC_REQUIRE([jm_AC_HEADER_STDINT_H]) -+ AC_CACHE_CHECK(for intmax_t, gt_cv_c_intmax_t, -+ [AC_TRY_COMPILE([ -+#include -+#include -+#if HAVE_STDINT_H_WITH_UINTMAX -+#include -+#endif -+#if HAVE_INTTYPES_H_WITH_UINTMAX -+#include -+#endif -+], [intmax_t x = -1;], gt_cv_c_intmax_t=yes, gt_cv_c_intmax_t=no)]) -+ if test $gt_cv_c_intmax_t = yes; then -+ AC_DEFINE(HAVE_INTMAX_T, 1, -+ [Define if you have the 'intmax_t' type in or .]) -+ fi -+]) ---- lrzsz-0.12.20.safe/m4/inttypes_h.m4 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/inttypes_h.m4 2004-09-12 14:40:34.868670112 -0400 -@@ -0,0 +1,28 @@ -+# inttypes_h.m4 serial 5 (gettext-0.12) -+dnl Copyright (C) 1997-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 Paul Eggert. -+ -+# Define HAVE_INTTYPES_H_WITH_UINTMAX if exists, -+# doesn't clash with , and declares uintmax_t. -+ -+AC_DEFUN([jm_AC_HEADER_INTTYPES_H], -+[ -+ AC_CACHE_CHECK([for inttypes.h], jm_ac_cv_header_inttypes_h, -+ [AC_TRY_COMPILE( -+ [#include -+#include ], -+ [uintmax_t i = (uintmax_t) -1;], -+ jm_ac_cv_header_inttypes_h=yes, -+ jm_ac_cv_header_inttypes_h=no)]) -+ if test $jm_ac_cv_header_inttypes_h = yes; then -+ AC_DEFINE_UNQUOTED(HAVE_INTTYPES_H_WITH_UINTMAX, 1, -+ [Define if exists, doesn't clash with , -+ and declares uintmax_t. ]) -+ fi -+]) ---- lrzsz-0.12.20.safe/m4/inttypes.m4 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/inttypes.m4 2004-09-12 14:40:34.861671176 -0400 -@@ -0,0 +1,27 @@ -+# inttypes.m4 serial 1 (gettext-0.11.4) -+dnl Copyright (C) 1997-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 Paul Eggert. -+ -+# Define HAVE_INTTYPES_H if exists and doesn't clash with -+# . -+ -+AC_DEFUN([gt_HEADER_INTTYPES_H], -+[ -+ AC_CACHE_CHECK([for inttypes.h], gt_cv_header_inttypes_h, -+ [ -+ AC_TRY_COMPILE( -+ [#include -+#include ], -+ [], gt_cv_header_inttypes_h=yes, gt_cv_header_inttypes_h=no) -+ ]) -+ if test $gt_cv_header_inttypes_h = yes; then -+ AC_DEFINE_UNQUOTED(HAVE_INTTYPES_H, 1, -+ [Define if exists and doesn't clash with .]) -+ fi -+]) ---- lrzsz-0.12.20.safe/m4/inttypes-pri.m4 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/inttypes-pri.m4 2004-09-12 14:40:34.874669200 -0400 -@@ -0,0 +1,32 @@ -+# inttypes-pri.m4 serial 1 (gettext-0.11.4) -+dnl Copyright (C) 1997-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. -+ -+# Define PRI_MACROS_BROKEN if exists and defines the PRI* -+# macros to non-string values. This is the case on AIX 4.3.3. -+ -+AC_DEFUN([gt_INTTYPES_PRI], -+[ -+ AC_REQUIRE([gt_HEADER_INTTYPES_H]) -+ if test $gt_cv_header_inttypes_h = yes; then -+ AC_CACHE_CHECK([whether the inttypes.h PRIxNN macros are broken], -+ gt_cv_inttypes_pri_broken, -+ [ -+ AC_TRY_COMPILE([#include -+#ifdef PRId32 -+char *p = PRId32; -+#endif -+], [], gt_cv_inttypes_pri_broken=no, gt_cv_inttypes_pri_broken=yes) -+ ]) -+ fi -+ if test "$gt_cv_inttypes_pri_broken" = yes; then -+ AC_DEFINE_UNQUOTED(PRI_MACROS_BROKEN, 1, -+ [Define if exists and defines unusable PRI* macros.]) -+ fi -+]) ---- lrzsz-0.12.20.safe/m4/isc-posix.m4 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/isc-posix.m4 2004-09-12 14:40:34.885667528 -0400 -@@ -0,0 +1,26 @@ -+# isc-posix.m4 serial 2 (gettext-0.11.2) -+dnl Copyright (C) 1995-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. -+ -+# This file is not needed with autoconf-2.53 and newer. Remove it in 2005. -+ -+# This test replaces the one in autoconf. -+# Currently this macro should have the same name as the autoconf macro -+# because gettext's gettext.m4 (distributed in the automake package) -+# still uses it. Otherwise, the use in gettext.m4 makes autoheader -+# give these diagnostics: -+# configure.in:556: AC_TRY_COMPILE was called before AC_ISC_POSIX -+# configure.in:556: AC_TRY_RUN was called before AC_ISC_POSIX -+ -+undefine([AC_ISC_POSIX]) -+ -+AC_DEFUN([AC_ISC_POSIX], -+ [ -+ dnl This test replaces the obsolescent AC_ISC_POSIX kludge. -+ AC_CHECK_LIB(cposix, strerror, [LIBS="$LIBS -lcposix"]) -+ ] -+) ---- lrzsz-0.12.20.safe/m4/lcmessage.m4 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/lcmessage.m4 2004-09-12 14:40:34.902664944 -0400 -@@ -0,0 +1,32 @@ -+# lcmessage.m4 serial 3 (gettext-0.11.3) -+dnl Copyright (C) 1995-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 -+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. -+ -+# Check whether LC_MESSAGES is available in . -+ -+AC_DEFUN([AM_LC_MESSAGES], -+[ -+ AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES, -+ [AC_TRY_LINK([#include ], [return LC_MESSAGES], -+ am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)]) -+ if test $am_cv_val_LC_MESSAGES = yes; then -+ AC_DEFINE(HAVE_LC_MESSAGES, 1, -+ [Define if your file defines LC_MESSAGES.]) -+ fi -+]) ---- lrzsz-0.12.20.safe/m4/lib-ld.m4 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/lib-ld.m4 2004-09-12 14:40:34.908664032 -0400 -@@ -0,0 +1,112 @@ -+# 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 -+]) ---- lrzsz-0.12.20.safe/m4/lib-link.m4 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/lib-link.m4 2004-09-12 14:40:34.914663120 -0400 -@@ -0,0 +1,551 @@ -+# 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= -+ for name in $names_this_round; do -+ already_handled= -+ for n in $names_already_handled; do -+ if test "$n" = "$name"; then -+ already_handled=yes -+ break -+ fi -+ done -+ if test -z "$already_handled"; then -+ names_already_handled="$names_already_handled $name" -+ dnl See if it was already located by an earlier AC_LIB_LINKFLAGS -+ dnl or AC_LIB_HAVE_LINKFLAGS call. -+ uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'` -+ eval value=\"\$HAVE_LIB$uppername\" -+ if test -n "$value"; then -+ if test "$value" = yes; then -+ eval value=\"\$LIB$uppername\" -+ test -z "$value" || LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$value" -+ eval value=\"\$LTLIB$uppername\" -+ test -z "$value" || LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$value" -+ else -+ dnl An earlier call to AC_LIB_HAVE_LINKFLAGS has determined -+ dnl that this library doesn't exist. So just drop it. -+ : -+ fi -+ else -+ dnl Search the library lib$name in $additional_libdir and $LDFLAGS -+ dnl and the already constructed $LIBNAME/$LTLIBNAME. -+ found_dir= -+ found_la= -+ found_so= -+ found_a= -+ if test $use_additional = yes; then -+ if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then -+ found_dir="$additional_libdir" -+ found_so="$additional_libdir/lib$name.$shlibext" -+ if test -f "$additional_libdir/lib$name.la"; then -+ found_la="$additional_libdir/lib$name.la" -+ fi -+ else -+ if test -f "$additional_libdir/lib$name.$libext"; then -+ found_dir="$additional_libdir" -+ found_a="$additional_libdir/lib$name.$libext" -+ if test -f "$additional_libdir/lib$name.la"; then -+ found_la="$additional_libdir/lib$name.la" -+ fi -+ fi -+ fi -+ fi -+ if test "X$found_dir" = "X"; then -+ for x in $LDFLAGS $LTLIB[]NAME; do -+ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) -+ case "$x" in -+ -L*) -+ dir=`echo "X$x" | sed -e 's/^X-L//'` -+ if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then -+ found_dir="$dir" -+ found_so="$dir/lib$name.$shlibext" -+ if test -f "$dir/lib$name.la"; then -+ found_la="$dir/lib$name.la" -+ fi -+ else -+ if test -f "$dir/lib$name.$libext"; then -+ found_dir="$dir" -+ found_a="$dir/lib$name.$libext" -+ if test -f "$dir/lib$name.la"; then -+ found_la="$dir/lib$name.la" -+ fi -+ fi -+ fi -+ ;; -+ esac -+ if test "X$found_dir" != "X"; then -+ break -+ fi -+ done -+ fi -+ if test "X$found_dir" != "X"; then -+ dnl Found the library. -+ LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$found_dir -l$name" -+ if test "X$found_so" != "X"; then -+ dnl Linking with a shared library. We attempt to hardcode its -+ dnl directory into the executable's runpath, unless it's the -+ dnl standard /usr/lib. -+ if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then -+ dnl No hardcoding is needed. -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" -+ else -+ dnl Use an explicit option to hardcode DIR into the resulting -+ dnl binary. -+ dnl Potentially add DIR to ltrpathdirs. -+ dnl The ltrpathdirs will be appended to $LTLIBNAME at the end. -+ haveit= -+ for x in $ltrpathdirs; do -+ if test "X$x" = "X$found_dir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ ltrpathdirs="$ltrpathdirs $found_dir" -+ fi -+ dnl The hardcoding into $LIBNAME is system dependent. -+ if test "$hardcode_direct" = yes; then -+ dnl Using DIR/libNAME.so during linking hardcodes DIR into the -+ dnl resulting binary. -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" -+ else -+ if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then -+ dnl Use an explicit option to hardcode DIR into the resulting -+ dnl binary. -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" -+ dnl Potentially add DIR to rpathdirs. -+ dnl The rpathdirs will be appended to $LIBNAME at the end. -+ haveit= -+ for x in $rpathdirs; do -+ if test "X$x" = "X$found_dir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ rpathdirs="$rpathdirs $found_dir" -+ fi -+ else -+ dnl Rely on "-L$found_dir". -+ dnl But don't add it if it's already contained in the LDFLAGS -+ dnl or the already constructed $LIBNAME -+ haveit= -+ for x in $LDFLAGS $LIB[]NAME; do -+ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) -+ if test "X$x" = "X-L$found_dir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir" -+ fi -+ if test "$hardcode_minus_L" != no; then -+ dnl FIXME: Not sure whether we should use -+ dnl "-L$found_dir -l$name" or "-L$found_dir $found_so" -+ dnl here. -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" -+ else -+ dnl We cannot use $hardcode_runpath_var and LD_RUN_PATH -+ dnl here, because this doesn't fit in flags passed to the -+ dnl compiler. So give up. No hardcoding. This affects only -+ dnl very old systems. -+ dnl FIXME: Not sure whether we should use -+ dnl "-L$found_dir -l$name" or "-L$found_dir $found_so" -+ dnl here. -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name" -+ fi -+ fi -+ fi -+ fi -+ else -+ if test "X$found_a" != "X"; then -+ dnl Linking with a static library. -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_a" -+ else -+ dnl We shouldn't come here, but anyway it's good to have a -+ dnl fallback. -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir -l$name" -+ fi -+ fi -+ dnl Assume the include files are nearby. -+ additional_includedir= -+ case "$found_dir" in -+ */lib | */lib/) -+ basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'` -+ additional_includedir="$basedir/include" -+ ;; -+ esac -+ if test "X$additional_includedir" != "X"; then -+ dnl Potentially add $additional_includedir to $INCNAME. -+ dnl But don't add it -+ dnl 1. if it's the standard /usr/include, -+ dnl 2. if it's /usr/local/include and we are using GCC on Linux, -+ dnl 3. if it's already present in $CPPFLAGS or the already -+ dnl constructed $INCNAME, -+ dnl 4. if it doesn't exist as a directory. -+ if test "X$additional_includedir" != "X/usr/include"; then -+ haveit= -+ if test "X$additional_includedir" = "X/usr/local/include"; then -+ if test -n "$GCC"; then -+ case $host_os in -+ linux*) haveit=yes;; -+ esac -+ fi -+ fi -+ if test -z "$haveit"; then -+ for x in $CPPFLAGS $INC[]NAME; do -+ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) -+ if test "X$x" = "X-I$additional_includedir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ if test -d "$additional_includedir"; then -+ dnl Really add $additional_includedir to $INCNAME. -+ INC[]NAME="${INC[]NAME}${INC[]NAME:+ }-I$additional_includedir" -+ fi -+ fi -+ fi -+ fi -+ fi -+ dnl Look for dependencies. -+ if test -n "$found_la"; then -+ dnl Read the .la file. It defines the variables -+ dnl dlname, library_names, old_library, dependency_libs, current, -+ dnl age, revision, installed, dlopen, dlpreopen, libdir. -+ save_libdir="$libdir" -+ case "$found_la" in -+ */* | *\\*) . "$found_la" ;; -+ *) . "./$found_la" ;; -+ esac -+ libdir="$save_libdir" -+ dnl We use only dependency_libs. -+ for dep in $dependency_libs; do -+ case "$dep" in -+ -L*) -+ additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` -+ dnl Potentially add $additional_libdir to $LIBNAME and $LTLIBNAME. -+ dnl But don't add it -+ dnl 1. if it's the standard /usr/lib, -+ dnl 2. if it's /usr/local/lib and we are using GCC on Linux, -+ dnl 3. if it's already present in $LDFLAGS or the already -+ dnl constructed $LIBNAME, -+ dnl 4. if it doesn't exist as a directory. -+ if test "X$additional_libdir" != "X/usr/lib"; then -+ haveit= -+ if test "X$additional_libdir" = "X/usr/local/lib"; then -+ if test -n "$GCC"; then -+ case $host_os in -+ linux*) haveit=yes;; -+ esac -+ fi -+ fi -+ if test -z "$haveit"; then -+ haveit= -+ for x in $LDFLAGS $LIB[]NAME; do -+ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) -+ if test "X$x" = "X-L$additional_libdir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ if test -d "$additional_libdir"; then -+ dnl Really add $additional_libdir to $LIBNAME. -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$additional_libdir" -+ fi -+ fi -+ haveit= -+ for x in $LDFLAGS $LTLIB[]NAME; do -+ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) -+ if test "X$x" = "X-L$additional_libdir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ if test -d "$additional_libdir"; then -+ dnl Really add $additional_libdir to $LTLIBNAME. -+ LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$additional_libdir" -+ fi -+ fi -+ fi -+ fi -+ ;; -+ -R*) -+ dir=`echo "X$dep" | sed -e 's/^X-R//'` -+ if test "$enable_rpath" != no; then -+ dnl Potentially add DIR to rpathdirs. -+ dnl The rpathdirs will be appended to $LIBNAME at the end. -+ haveit= -+ for x in $rpathdirs; do -+ if test "X$x" = "X$dir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ rpathdirs="$rpathdirs $dir" -+ fi -+ dnl Potentially add DIR to ltrpathdirs. -+ dnl The ltrpathdirs will be appended to $LTLIBNAME at the end. -+ haveit= -+ for x in $ltrpathdirs; do -+ if test "X$x" = "X$dir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ ltrpathdirs="$ltrpathdirs $dir" -+ fi -+ fi -+ ;; -+ -l*) -+ dnl Handle this in the next round. -+ names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` -+ ;; -+ *.la) -+ dnl Handle this in the next round. Throw away the .la's -+ dnl directory; it is already contained in a preceding -L -+ dnl option. -+ names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` -+ ;; -+ *) -+ dnl Most likely an immediate library name. -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$dep" -+ LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$dep" -+ ;; -+ esac -+ done -+ fi -+ else -+ dnl Didn't find the library; assume it is in the system directories -+ dnl known to the linker and runtime loader. (All the system -+ dnl directories known to the linker should also be known to the -+ dnl runtime loader, otherwise the system is severely misconfigured.) -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name" -+ LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-l$name" -+ fi -+ fi -+ fi -+ done -+ done -+ if test "X$rpathdirs" != "X"; then -+ if test -n "$hardcode_libdir_separator"; then -+ dnl Weird platform: only the last -rpath option counts, the user must -+ dnl pass all path elements in one option. We can arrange that for a -+ dnl single library, but not when more than one $LIBNAMEs are used. -+ alldirs= -+ for found_dir in $rpathdirs; do -+ alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir" -+ done -+ dnl Note: hardcode_libdir_flag_spec uses $libdir and $wl. -+ acl_save_libdir="$libdir" -+ libdir="$alldirs" -+ eval flag=\"$hardcode_libdir_flag_spec\" -+ libdir="$acl_save_libdir" -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag" -+ else -+ dnl The -rpath options are cumulative. -+ for found_dir in $rpathdirs; do -+ acl_save_libdir="$libdir" -+ libdir="$found_dir" -+ eval flag=\"$hardcode_libdir_flag_spec\" -+ libdir="$acl_save_libdir" -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag" -+ done -+ fi -+ fi -+ if test "X$ltrpathdirs" != "X"; then -+ dnl When using libtool, the option that works for both libraries and -+ dnl executables is -R. The -R options are cumulative. -+ for found_dir in $ltrpathdirs; do -+ LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-R$found_dir" -+ done -+ fi -+]) -+ -+dnl AC_LIB_APPENDTOVAR(VAR, CONTENTS) appends the elements of CONTENTS to VAR, -+dnl unless already present in VAR. -+dnl Works only for CPPFLAGS, not for LIB* variables because that sometimes -+dnl contains two or three consecutive elements that belong together. -+AC_DEFUN([AC_LIB_APPENDTOVAR], -+[ -+ for element in [$2]; do -+ haveit= -+ for x in $[$1]; do -+ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) -+ if test "X$x" = "X$element"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ [$1]="${[$1]}${[$1]:+ }$element" -+ fi -+ done -+]) ---- lrzsz-0.12.20.safe/m4/lib-prefix.m4 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/lib-prefix.m4 2004-09-12 14:40:34.921662056 -0400 -@@ -0,0 +1,155 @@ -+# lib-prefix.m4 serial 3 (gettext-0.13) -+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_ARG_WITH is synonymous to AC_ARG_WITH in autoconf-2.13, and -+dnl similar to AC_ARG_WITH in autoconf 2.52...2.57 except that is doesn't -+dnl require excessive bracketing. -+ifdef([AC_HELP_STRING], -+[AC_DEFUN([AC_LIB_ARG_WITH], [AC_ARG_WITH([$1],[[$2]],[$3],[$4])])], -+[AC_DEFUN([AC_][LIB_ARG_WITH], [AC_ARG_WITH([$1],[$2],[$3],[$4])])]) -+ -+dnl AC_LIB_PREFIX adds to the CPPFLAGS and LDFLAGS the flags that are needed -+dnl to access previously installed libraries. The basic assumption is that -+dnl a user will want packages to use other packages he previously installed -+dnl with the same --prefix option. -+dnl This macro is not needed if only AC_LIB_LINKFLAGS is used to locate -+dnl libraries, but is otherwise very convenient. -+AC_DEFUN([AC_LIB_PREFIX], -+[ -+ AC_BEFORE([$0], [AC_LIB_LINKFLAGS]) -+ AC_REQUIRE([AC_PROG_CC]) -+ AC_REQUIRE([AC_CANONICAL_HOST]) -+ AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) -+ 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-prefix], -+[ --with-lib-prefix[=DIR] search for libraries in DIR/include and DIR/lib -+ --without-lib-prefix don't search for libraries 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 -+]) -+ if test $use_additional = yes; then -+ dnl Potentially add $additional_includedir to $CPPFLAGS. -+ dnl But don't add it -+ dnl 1. if it's the standard /usr/include, -+ dnl 2. if it's already present in $CPPFLAGS, -+ dnl 3. if it's /usr/local/include and we are using GCC on Linux, -+ dnl 4. if it doesn't exist as a directory. -+ if test "X$additional_includedir" != "X/usr/include"; then -+ haveit= -+ for x in $CPPFLAGS; do -+ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) -+ if test "X$x" = "X-I$additional_includedir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ if test "X$additional_includedir" = "X/usr/local/include"; then -+ if test -n "$GCC"; then -+ case $host_os in -+ linux*) haveit=yes;; -+ esac -+ fi -+ fi -+ if test -z "$haveit"; then -+ if test -d "$additional_includedir"; then -+ dnl Really add $additional_includedir to $CPPFLAGS. -+ CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }-I$additional_includedir" -+ fi -+ fi -+ fi -+ fi -+ dnl Potentially add $additional_libdir to $LDFLAGS. -+ dnl But don't add it -+ dnl 1. if it's the standard /usr/lib, -+ dnl 2. if it's already present in $LDFLAGS, -+ dnl 3. if it's /usr/local/lib and we are using GCC on Linux, -+ dnl 4. if it doesn't exist as a directory. -+ if test "X$additional_libdir" != "X/usr/lib"; then -+ haveit= -+ for x in $LDFLAGS; do -+ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) -+ if test "X$x" = "X-L$additional_libdir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ if test "X$additional_libdir" = "X/usr/local/lib"; then -+ if test -n "$GCC"; then -+ case $host_os in -+ linux*) haveit=yes;; -+ esac -+ fi -+ fi -+ if test -z "$haveit"; then -+ if test -d "$additional_libdir"; then -+ dnl Really add $additional_libdir to $LDFLAGS. -+ LDFLAGS="${LDFLAGS}${LDFLAGS:+ }-L$additional_libdir" -+ fi -+ fi -+ fi -+ fi -+ fi -+]) -+ -+dnl AC_LIB_PREPARE_PREFIX creates variables acl_final_prefix, -+dnl acl_final_exec_prefix, containing the values to which $prefix and -+dnl $exec_prefix will expand at the end of the configure script. -+AC_DEFUN([AC_LIB_PREPARE_PREFIX], -+[ -+ dnl Unfortunately, prefix and exec_prefix get only finally determined -+ dnl at the end of configure. -+ if test "X$prefix" = "XNONE"; then -+ acl_final_prefix="$ac_default_prefix" -+ else -+ acl_final_prefix="$prefix" -+ fi -+ if test "X$exec_prefix" = "XNONE"; then -+ acl_final_exec_prefix='${prefix}' -+ else -+ acl_final_exec_prefix="$exec_prefix" -+ fi -+ acl_save_prefix="$prefix" -+ prefix="$acl_final_prefix" -+ eval acl_final_exec_prefix=\"$acl_final_exec_prefix\" -+ prefix="$acl_save_prefix" -+]) -+ -+dnl AC_LIB_WITH_FINAL_PREFIX([statement]) evaluates statement, with the -+dnl variables prefix and exec_prefix bound to the values they will have -+dnl at the end of the configure script. -+AC_DEFUN([AC_LIB_WITH_FINAL_PREFIX], -+[ -+ acl_save_prefix="$prefix" -+ prefix="$acl_final_prefix" -+ acl_save_exec_prefix="$exec_prefix" -+ exec_prefix="$acl_final_exec_prefix" -+ $1 -+ exec_prefix="$acl_save_exec_prefix" -+ prefix="$acl_save_prefix" -+]) ---- lrzsz-0.12.20.safe/m4/longdouble.m4 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/longdouble.m4 2004-09-12 14:40:34.942658864 -0400 -@@ -0,0 +1,30 @@ -+# longdouble.m4 serial 1 (gettext-0.12) -+dnl Copyright (C) 2002-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 Test whether the compiler supports the 'long double' type. -+dnl Prerequisite: AC_PROG_CC -+ -+AC_DEFUN([gt_TYPE_LONGDOUBLE], -+[ -+ AC_CACHE_CHECK([for long double], gt_cv_c_long_double, -+ [if test "$GCC" = yes; then -+ gt_cv_c_long_double=yes -+ else -+ AC_TRY_COMPILE([ -+ /* The Stardent Vistra knows sizeof(long double), but does not support it. */ -+ long double foo = 0.0; -+ /* On Ultrix 4.3 cc, long double is 4 and double is 8. */ -+ int array [2*(sizeof(long double) >= sizeof(double)) - 1]; -+ ], , -+ gt_cv_c_long_double=yes, gt_cv_c_long_double=no) -+ fi]) -+ if test $gt_cv_c_long_double = yes; then -+ AC_DEFINE(HAVE_LONG_DOUBLE, 1, [Define if you have the 'long double' type.]) -+ fi -+]) ---- lrzsz-0.12.20.safe/m4/longlong.m4 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/longlong.m4 2004-09-12 14:40:34.949657800 -0400 -@@ -0,0 +1,25 @@ -+# longlong.m4 serial 4 -+dnl Copyright (C) 1999-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 Paul Eggert. -+ -+# Define HAVE_LONG_LONG if 'long long' works. -+ -+AC_DEFUN([jm_AC_TYPE_LONG_LONG], -+[ -+ AC_CACHE_CHECK([for long long], ac_cv_type_long_long, -+ [AC_TRY_LINK([long long ll = 1LL; int i = 63;], -+ [long long llmax = (long long) -1; -+ return ll << i | ll >> i | llmax / ll | llmax % ll;], -+ ac_cv_type_long_long=yes, -+ ac_cv_type_long_long=no)]) -+ if test $ac_cv_type_long_long = yes; then -+ AC_DEFINE(HAVE_LONG_LONG, 1, -+ [Define if you have the 'long long' type.]) -+ fi -+]) ---- lrzsz-0.12.20.safe/m4/Makefile.am 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/Makefile.am 2004-09-12 14:40:35.048642752 -0400 -@@ -0,0 +1 @@ -+EXTRA_DIST = codeset.m4 gettext.m4 glibc21.m4 iconv.m4 intdiv0.m4 intmax.m4 inttypes.m4 inttypes_h.m4 inttypes-pri.m4 isc-posix.m4 lcmessage.m4 lib-ld.m4 lib-link.m4 lib-prefix.m4 longdouble.m4 longlong.m4 nls.m4 po.m4 printf-posix.m4 progtest.m4 signed.m4 size_max.m4 stdint_h.m4 uintmax_t.m4 ulonglong.m4 wchar_t.m4 wint_t.m4 xsize.m4 ---- lrzsz-0.12.20.safe/m4/nls.m4 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/nls.m4 2004-09-12 14:40:34.955656888 -0400 -@@ -0,0 +1,49 @@ -+# nls.m4 serial 1 (gettext-0.12) -+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. -+ -+AC_DEFUN([AM_NLS], -+[ -+ AC_MSG_CHECKING([whether NLS is requested]) -+ dnl Default is enabled NLS -+ AC_ARG_ENABLE(nls, -+ [ --disable-nls do not use Native Language Support], -+ USE_NLS=$enableval, USE_NLS=yes) -+ AC_MSG_RESULT($USE_NLS) -+ AC_SUBST(USE_NLS) -+]) -+ -+AC_DEFUN([AM_MKINSTALLDIRS], -+[ -+ dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly -+ dnl find the mkinstalldirs script in another subdir but $(top_srcdir). -+ dnl Try to locate it. -+ MKINSTALLDIRS= -+ if test -n "$ac_aux_dir"; then -+ case "$ac_aux_dir" in -+ /*) MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs" ;; -+ *) MKINSTALLDIRS="\$(top_builddir)/$ac_aux_dir/mkinstalldirs" ;; -+ esac -+ fi -+ if test -z "$MKINSTALLDIRS"; then -+ MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs" -+ fi -+ AC_SUBST(MKINSTALLDIRS) -+]) ---- lrzsz-0.12.20.safe/m4/po.m4 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/po.m4 2004-09-12 14:40:34.961655976 -0400 -@@ -0,0 +1,426 @@ -+# po.m4 serial 3 (gettext-0.14) -+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 Checks for all prerequisites of the po subdirectory. -+AC_DEFUN([AM_PO_SUBDIRS], -+[ -+ AC_REQUIRE([AC_PROG_MAKE_SET])dnl -+ AC_REQUIRE([AC_PROG_INSTALL])dnl -+ AC_REQUIRE([AM_MKINSTALLDIRS])dnl -+ AC_REQUIRE([AM_NLS])dnl -+ -+ dnl Perform the following tests also if --disable-nls has been given, -+ dnl because they are needed for "make dist" to work. -+ -+ dnl Search for GNU msgfmt in the PATH. -+ dnl The first test excludes Solaris msgfmt and early GNU msgfmt versions. -+ dnl The second test excludes FreeBSD msgfmt. -+ AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt, -+ [$ac_dir/$ac_word --statistics /dev/null >/dev/null 2>&1 && -+ (if $ac_dir/$ac_word --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi)], -+ :) -+ AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) -+ -+ dnl Search for GNU xgettext 0.12 or newer in the PATH. -+ dnl The first test excludes Solaris xgettext and early GNU xgettext versions. -+ dnl The second test excludes FreeBSD xgettext. -+ AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext, -+ [$ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >/dev/null 2>&1 && -+ (if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi)], -+ :) -+ dnl Remove leftover from FreeBSD xgettext call. -+ rm -f messages.po -+ -+ dnl Search for GNU msgmerge 0.11 or newer in the PATH. -+ AM_PATH_PROG_WITH_TEST(MSGMERGE, msgmerge, -+ [$ac_dir/$ac_word --update -q /dev/null /dev/null >/dev/null 2>&1], :) -+ -+ dnl This could go away some day; the PATH_PROG_WITH_TEST already does it. -+ dnl Test whether we really found GNU msgfmt. -+ if test "$GMSGFMT" != ":"; then -+ dnl If it is no GNU msgfmt we define it as : so that the -+ dnl Makefiles still can work. -+ if $GMSGFMT --statistics /dev/null >/dev/null 2>&1 && -+ (if $GMSGFMT --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then -+ : ; -+ else -+ GMSGFMT=`echo "$GMSGFMT" | sed -e 's,^.*/,,'` -+ AC_MSG_RESULT( -+ [found $GMSGFMT program is not GNU msgfmt; ignore it]) -+ GMSGFMT=":" -+ fi -+ fi -+ -+ dnl This could go away some day; the PATH_PROG_WITH_TEST already does it. -+ dnl Test whether we really found GNU xgettext. -+ if test "$XGETTEXT" != ":"; then -+ dnl If it is no GNU xgettext we define it as : so that the -+ dnl Makefiles still can work. -+ if $XGETTEXT --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >/dev/null 2>&1 && -+ (if $XGETTEXT --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then -+ : ; -+ else -+ AC_MSG_RESULT( -+ [found xgettext program is not GNU xgettext; ignore it]) -+ XGETTEXT=":" -+ fi -+ dnl Remove leftover from FreeBSD xgettext call. -+ rm -f messages.po -+ fi -+ -+ AC_OUTPUT_COMMANDS([ -+ for ac_file in $CONFIG_FILES; do -+ # Support "outfile[:infile[:infile...]]" -+ case "$ac_file" in -+ *:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; -+ esac -+ # PO directories have a Makefile.in generated from Makefile.in.in. -+ case "$ac_file" in */Makefile.in) -+ # Adjust a relative srcdir. -+ ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'` -+ ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`" -+ ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'` -+ # In autoconf-2.13 it is called $ac_given_srcdir. -+ # In autoconf-2.50 it is called $srcdir. -+ test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir" -+ case "$ac_given_srcdir" in -+ .) top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;; -+ /*) top_srcdir="$ac_given_srcdir" ;; -+ *) top_srcdir="$ac_dots$ac_given_srcdir" ;; -+ esac -+ if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then -+ rm -f "$ac_dir/POTFILES" -+ test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES" -+ cat "$ac_given_srcdir/$ac_dir/POTFILES.in" | sed -e "/^#/d" -e "/^[ ]*\$/d" -e "s,.*, $top_srcdir/& \\\\," | sed -e "\$s/\(.*\) \\\\/\1/" > "$ac_dir/POTFILES" -+ POMAKEFILEDEPS="POTFILES.in" -+ # ALL_LINGUAS, POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES depend -+ # on $ac_dir but don't depend on user-specified configuration -+ # parameters. -+ if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then -+ # The LINGUAS file contains the set of available languages. -+ if test -n "$OBSOLETE_ALL_LINGUAS"; then -+ test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete" -+ fi -+ ALL_LINGUAS_=`sed -e "/^#/d" "$ac_given_srcdir/$ac_dir/LINGUAS"` -+ # Hide the ALL_LINGUAS assigment from automake. -+ eval 'ALL_LINGUAS''=$ALL_LINGUAS_' -+ POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS" -+ else -+ # The set of available languages was given in configure.in. -+ eval 'ALL_LINGUAS''=$OBSOLETE_ALL_LINGUAS' -+ fi -+ # Compute POFILES -+ # as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).po) -+ # Compute UPDATEPOFILES -+ # as $(foreach lang, $(ALL_LINGUAS), $(lang).po-update) -+ # Compute DUMMYPOFILES -+ # as $(foreach lang, $(ALL_LINGUAS), $(lang).nop) -+ # Compute GMOFILES -+ # as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).gmo) -+ case "$ac_given_srcdir" in -+ .) srcdirpre= ;; -+ *) srcdirpre='$(srcdir)/' ;; -+ esac -+ POFILES= -+ UPDATEPOFILES= -+ DUMMYPOFILES= -+ GMOFILES= -+ for lang in $ALL_LINGUAS; do -+ POFILES="$POFILES $srcdirpre$lang.po" -+ UPDATEPOFILES="$UPDATEPOFILES $lang.po-update" -+ DUMMYPOFILES="$DUMMYPOFILES $lang.nop" -+ GMOFILES="$GMOFILES $srcdirpre$lang.gmo" -+ done -+ # CATALOGS depends on both $ac_dir and the user's LINGUAS -+ # environment variable. -+ INST_LINGUAS= -+ if test -n "$ALL_LINGUAS"; then -+ for presentlang in $ALL_LINGUAS; do -+ useit=no -+ if test "%UNSET%" != "$LINGUAS"; then -+ desiredlanguages="$LINGUAS" -+ else -+ desiredlanguages="$ALL_LINGUAS" -+ fi -+ for desiredlang in $desiredlanguages; do -+ # Use the presentlang catalog if desiredlang is -+ # a. equal to presentlang, or -+ # b. a variant of presentlang (because in this case, -+ # presentlang can be used as a fallback for messages -+ # which are not translated in the desiredlang catalog). -+ case "$desiredlang" in -+ "$presentlang"*) useit=yes;; -+ esac -+ done -+ if test $useit = yes; then -+ INST_LINGUAS="$INST_LINGUAS $presentlang" -+ fi -+ done -+ fi -+ CATALOGS= -+ if test -n "$INST_LINGUAS"; then -+ for lang in $INST_LINGUAS; do -+ CATALOGS="$CATALOGS $lang.gmo" -+ done -+ fi -+ test -n "$as_me" && echo "$as_me: creating $ac_dir/Makefile" || echo "creating $ac_dir/Makefile" -+ sed -e "/^POTFILES =/r $ac_dir/POTFILES" -e "/^# Makevars/r $ac_given_srcdir/$ac_dir/Makevars" -e "s|@POFILES@|$POFILES|g" -e "s|@UPDATEPOFILES@|$UPDATEPOFILES|g" -e "s|@DUMMYPOFILES@|$DUMMYPOFILES|g" -e "s|@GMOFILES@|$GMOFILES|g" -e "s|@CATALOGS@|$CATALOGS|g" -e "s|@POMAKEFILEDEPS@|$POMAKEFILEDEPS|g" "$ac_dir/Makefile.in" > "$ac_dir/Makefile" -+ for f in "$ac_given_srcdir/$ac_dir"/Rules-*; do -+ if test -f "$f"; then -+ case "$f" in -+ *.orig | *.bak | *~) ;; -+ *) cat "$f" >> "$ac_dir/Makefile" ;; -+ esac -+ fi -+ done -+ fi -+ ;; -+ esac -+ done], -+ [# Capture the value of obsolete ALL_LINGUAS because we need it to compute -+ # POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES, CATALOGS. But hide it -+ # from automake. -+ eval 'OBSOLETE_ALL_LINGUAS''="$ALL_LINGUAS"' -+ # Capture the value of LINGUAS because we need it to compute CATALOGS. -+ LINGUAS="${LINGUAS-%UNSET%}" -+ ]) -+]) -+ -+dnl Postprocesses a Makefile in a directory containing PO files. -+AC_DEFUN([AM_POSTPROCESS_PO_MAKEFILE], -+[ -+ # When this code is run, in config.status, two variables have already been -+ # set: -+ # - OBSOLETE_ALL_LINGUAS is the value of LINGUAS set in configure.in, -+ # - LINGUAS is the value of the environment variable LINGUAS at configure -+ # time. -+ -+changequote(,)dnl -+ # Adjust a relative srcdir. -+ ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'` -+ ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`" -+ ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'` -+ # In autoconf-2.13 it is called $ac_given_srcdir. -+ # In autoconf-2.50 it is called $srcdir. -+ test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir" -+ case "$ac_given_srcdir" in -+ .) top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;; -+ /*) top_srcdir="$ac_given_srcdir" ;; -+ *) top_srcdir="$ac_dots$ac_given_srcdir" ;; -+ esac -+ -+ # Find a way to echo strings without interpreting backslash. -+ if test "X`(echo '\t') 2>/dev/null`" = 'X\t'; then -+ gt_echo='echo' -+ else -+ if test "X`(printf '%s\n' '\t') 2>/dev/null`" = 'X\t'; then -+ gt_echo='printf %s\n' -+ else -+ echo_func () { -+ cat < "$ac_file.tmp" -+ if grep -l '@TCLCATALOGS@' "$ac_file" > /dev/null; then -+ # Add dependencies that cannot be formulated as a simple suffix rule. -+ for lang in $ALL_LINGUAS; do -+ frobbedlang=`echo $lang | sed -e 's/\..*$//' -e 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'` -+ cat >> "$ac_file.tmp" < /dev/null; then -+ # Add dependencies that cannot be formulated as a simple suffix rule. -+ for lang in $ALL_LINGUAS; do -+ frobbedlang=`echo $lang | sed -e 's/_/-/g'` -+ cat >> "$ac_file.tmp" <> "$ac_file.tmp" < -+#include -+/* The string "%2$d %1$d", with dollar characters protected from the shell's -+ dollar expansion (possibly an autoconf bug). */ -+static char format[] = { '%', '2', '$', 'd', ' ', '%', '1', '$', 'd', '\0' }; -+static char buf[100]; -+int main () -+{ -+ sprintf (buf, format, 33, 55); -+ return (strcmp (buf, "55 33") != 0); -+}], gt_cv_func_printf_posix=yes, gt_cv_func_printf_posix=no, -+ [ -+ AC_EGREP_CPP(notposix, [ -+#if defined __NetBSD__ || defined _MSC_VER || defined __MINGW32__ || defined __CYGWIN__ -+ notposix -+#endif -+ ], gt_cv_func_printf_posix="guessing no", -+ gt_cv_func_printf_posix="guessing yes") -+ ]) -+ ]) -+ case $gt_cv_func_printf_posix in -+ *yes) -+ AC_DEFINE(HAVE_POSIX_PRINTF, 1, -+ [Define if your printf() function supports format strings with positions.]) -+ ;; -+ esac -+]) ---- lrzsz-0.12.20.safe/m4/progtest.m4 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/progtest.m4 2004-09-12 14:40:34.990651568 -0400 -@@ -0,0 +1,91 @@ -+# progtest.m4 serial 3 (gettext-0.12) -+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 -+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 , 1996. -+ -+# Search path for a program which passes the given test. -+ -+dnl AM_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR, -+dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]]) -+AC_DEFUN([AM_PATH_PROG_WITH_TEST], -+[ -+# Prepare PATH_SEPARATOR. -+# The user is always right. -+if test "${PATH_SEPARATOR+set}" != set; then -+ echo "#! /bin/sh" >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 -+ -+# Find out how to test for executable files. Don't use a zero-byte file, -+# as systems may use methods other than mode bits to determine executability. -+cat >conf$$.file <<_ASEOF -+#! /bin/sh -+exit 0 -+_ASEOF -+chmod +x conf$$.file -+if test -x conf$$.file >/dev/null 2>&1; then -+ ac_executable_p="test -x" -+else -+ ac_executable_p="test -f" -+fi -+rm -f conf$$.file -+ -+# Extract the first word of "$2", so it can be a program name with args. -+set dummy $2; ac_word=[$]2 -+AC_MSG_CHECKING([for $ac_word]) -+AC_CACHE_VAL(ac_cv_path_$1, -+[case "[$]$1" in -+ [[\\/]]* | ?:[[\\/]]*) -+ ac_cv_path_$1="[$]$1" # Let the user override the test with a path. -+ ;; -+ *) -+ ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR -+ for ac_dir in ifelse([$5], , $PATH, [$5]); do -+ IFS="$ac_save_IFS" -+ test -z "$ac_dir" && ac_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then -+ if [$3]; then -+ ac_cv_path_$1="$ac_dir/$ac_word$ac_exec_ext" -+ break 2 -+ fi -+ fi -+ done -+ done -+ IFS="$ac_save_IFS" -+dnl If no 4th arg is given, leave the cache variable unset, -+dnl so AC_PATH_PROGS will keep looking. -+ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4" -+])dnl -+ ;; -+esac])dnl -+$1="$ac_cv_path_$1" -+if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then -+ AC_MSG_RESULT([$]$1) -+else -+ AC_MSG_RESULT(no) -+fi -+AC_SUBST($1)dnl -+]) ---- lrzsz-0.12.20.safe/m4/signed.m4 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/signed.m4 2004-09-12 14:40:34.996650656 -0400 -@@ -0,0 +1,19 @@ -+# signed.m4 serial 1 (gettext-0.10.40) -+dnl Copyright (C) 2001-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([bh_C_SIGNED], -+[ -+ AC_CACHE_CHECK([for signed], bh_cv_c_signed, -+ [AC_TRY_COMPILE(, [signed char x;], bh_cv_c_signed=yes, bh_cv_c_signed=no)]) -+ if test $bh_cv_c_signed = no; then -+ AC_DEFINE(signed, , -+ [Define to empty if the C compiler doesn't support this keyword.]) -+ fi -+]) ---- lrzsz-0.12.20.safe/m4/size_max.m4 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/size_max.m4 2004-09-12 14:40:35.003649592 -0400 -@@ -0,0 +1,61 @@ -+# size_max.m4 serial 2 -+dnl Copyright (C) 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. -+ -+AC_DEFUN([gl_SIZE_MAX], -+[ -+ AC_CHECK_HEADERS(stdint.h) -+ dnl First test whether the system already has SIZE_MAX. -+ AC_MSG_CHECKING([for SIZE_MAX]) -+ result= -+ AC_EGREP_CPP([Found it], [ -+#include -+#if HAVE_STDINT_H -+#include -+#endif -+#ifdef SIZE_MAX -+Found it -+#endif -+], result=yes) -+ if test -z "$result"; then -+ dnl Define it ourselves. Here we assume that the type 'size_t' is not wider -+ dnl than the type 'unsigned long'. -+ dnl The _AC_COMPUTE_INT macro works up to LONG_MAX, since it uses 'expr', -+ dnl which is guaranteed to work from LONG_MIN to LONG_MAX. -+ _AC_COMPUTE_INT([~(size_t)0 / 10], res_hi, -+ [#include ], result=?) -+ _AC_COMPUTE_INT([~(size_t)0 % 10], res_lo, -+ [#include ], result=?) -+ _AC_COMPUTE_INT([sizeof (size_t) <= sizeof (unsigned int)], fits_in_uint, -+ [#include ], result=?) -+ if test "$fits_in_uint" = 1; then -+ dnl Even though SIZE_MAX fits in an unsigned int, it must be of type -+ dnl 'unsigned long' if the type 'size_t' is the same as 'unsigned long'. -+ AC_TRY_COMPILE([#include -+ extern size_t foo; -+ extern unsigned long foo; -+ ], [], fits_in_uint=0) -+ fi -+ if test -z "$result"; then -+ if test "$fits_in_uint" = 1; then -+ result="$res_hi$res_lo"U -+ else -+ result="$res_hi$res_lo"UL -+ fi -+ else -+ dnl Shouldn't happen, but who knows... -+ result='~(size_t)0' -+ fi -+ fi -+ AC_MSG_RESULT([$result]) -+ if test "$result" != yes; then -+ AC_DEFINE_UNQUOTED([SIZE_MAX], [$result], -+ [Define as the maximum value of type 'size_t', if the system doesn't define it.]) -+ fi -+]) ---- lrzsz-0.12.20.safe/m4/stdint_h.m4 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/stdint_h.m4 2004-09-12 14:40:35.009648680 -0400 -@@ -0,0 +1,28 @@ -+# stdint_h.m4 serial 3 (gettext-0.12) -+dnl Copyright (C) 1997-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 Paul Eggert. -+ -+# Define HAVE_STDINT_H_WITH_UINTMAX if exists, -+# doesn't clash with , and declares uintmax_t. -+ -+AC_DEFUN([jm_AC_HEADER_STDINT_H], -+[ -+ AC_CACHE_CHECK([for stdint.h], jm_ac_cv_header_stdint_h, -+ [AC_TRY_COMPILE( -+ [#include -+#include ], -+ [uintmax_t i = (uintmax_t) -1;], -+ jm_ac_cv_header_stdint_h=yes, -+ jm_ac_cv_header_stdint_h=no)]) -+ if test $jm_ac_cv_header_stdint_h = yes; then -+ AC_DEFINE_UNQUOTED(HAVE_STDINT_H_WITH_UINTMAX, 1, -+ [Define if exists, doesn't clash with , -+ and declares uintmax_t. ]) -+ fi -+]) ---- lrzsz-0.12.20.safe/m4/uintmax_t.m4 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/uintmax_t.m4 2004-09-12 14:40:35.021646856 -0400 -@@ -0,0 +1,32 @@ -+# uintmax_t.m4 serial 7 (gettext-0.12) -+dnl Copyright (C) 1997-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 Paul Eggert. -+ -+AC_PREREQ(2.13) -+ -+# Define uintmax_t to 'unsigned long' or 'unsigned long long' -+# if it is not already defined in or . -+ -+AC_DEFUN([jm_AC_TYPE_UINTMAX_T], -+[ -+ AC_REQUIRE([jm_AC_HEADER_INTTYPES_H]) -+ AC_REQUIRE([jm_AC_HEADER_STDINT_H]) -+ if test $jm_ac_cv_header_inttypes_h = no && test $jm_ac_cv_header_stdint_h = no; then -+ AC_REQUIRE([jm_AC_TYPE_UNSIGNED_LONG_LONG]) -+ test $ac_cv_type_unsigned_long_long = yes \ -+ && ac_type='unsigned long long' \ -+ || ac_type='unsigned long' -+ AC_DEFINE_UNQUOTED(uintmax_t, $ac_type, -+ [Define to unsigned long or unsigned long long -+ if and don't define.]) -+ else -+ AC_DEFINE(HAVE_UINTMAX_T, 1, -+ [Define if you have the 'uintmax_t' type in or .]) -+ fi -+]) ---- lrzsz-0.12.20.safe/m4/ulonglong.m4 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/ulonglong.m4 2004-09-12 14:40:35.028645792 -0400 -@@ -0,0 +1,25 @@ -+# ulonglong.m4 serial 3 -+dnl Copyright (C) 1999-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 Paul Eggert. -+ -+# Define HAVE_UNSIGNED_LONG_LONG if 'unsigned long long' works. -+ -+AC_DEFUN([jm_AC_TYPE_UNSIGNED_LONG_LONG], -+[ -+ AC_CACHE_CHECK([for unsigned long long], ac_cv_type_unsigned_long_long, -+ [AC_TRY_LINK([unsigned long long ull = 1ULL; int i = 63;], -+ [unsigned long long ullmax = (unsigned long long) -1; -+ return ull << i | ull >> i | ullmax / ull | ullmax % ull;], -+ ac_cv_type_unsigned_long_long=yes, -+ ac_cv_type_unsigned_long_long=no)]) -+ if test $ac_cv_type_unsigned_long_long = yes; then -+ AC_DEFINE(HAVE_UNSIGNED_LONG_LONG, 1, -+ [Define if you have the 'unsigned long long' type.]) -+ fi -+]) ---- lrzsz-0.12.20.safe/m4/wchar_t.m4 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/wchar_t.m4 2004-09-12 14:40:35.034644880 -0400 -@@ -0,0 +1,22 @@ -+# wchar_t.m4 serial 1 (gettext-0.12) -+dnl Copyright (C) 2002-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 Test whether has the 'wchar_t' type. -+dnl Prerequisite: AC_PROG_CC -+ -+AC_DEFUN([gt_TYPE_WCHAR_T], -+[ -+ AC_CACHE_CHECK([for wchar_t], gt_cv_c_wchar_t, -+ [AC_TRY_COMPILE([#include -+ wchar_t foo = (wchar_t)'\0';], , -+ gt_cv_c_wchar_t=yes, gt_cv_c_wchar_t=no)]) -+ if test $gt_cv_c_wchar_t = yes; then -+ AC_DEFINE(HAVE_WCHAR_T, 1, [Define if you have the 'wchar_t' type.]) -+ fi -+]) ---- lrzsz-0.12.20.safe/m4/wint_t.m4 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/wint_t.m4 2004-09-12 14:40:35.040643968 -0400 -@@ -0,0 +1,22 @@ -+# wint_t.m4 serial 1 (gettext-0.12) -+dnl Copyright (C) 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 Test whether has the 'wint_t' type. -+dnl Prerequisite: AC_PROG_CC -+ -+AC_DEFUN([gt_TYPE_WINT_T], -+[ -+ AC_CACHE_CHECK([for wint_t], gt_cv_c_wint_t, -+ [AC_TRY_COMPILE([#include -+ wint_t foo = (wchar_t)'\0';], , -+ gt_cv_c_wint_t=yes, gt_cv_c_wint_t=no)]) -+ if test $gt_cv_c_wint_t = yes; then -+ AC_DEFINE(HAVE_WINT_T, 1, [Define if you have the 'wint_t' type.]) -+ fi -+]) ---- lrzsz-0.12.20.safe/m4/xsize.m4 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/m4/xsize.m4 2004-09-12 14:40:35.047642904 -0400 -@@ -0,0 +1,14 @@ -+# xsize.m4 serial 2 -+dnl Copyright (C) 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. -+ -+AC_DEFUN([gl_XSIZE], -+[ -+ dnl Prerequisites of lib/xsize.h. -+ AC_REQUIRE([gl_SIZE_MAX]) -+ AC_CHECK_HEADERS(stdint.h) -+]) ---- lrzsz-0.12.20.safe/Makefile.am 1998-12-30 06:19:40.000000000 -0500 -+++ lrzsz-0.12.20/Makefile.am 2004-09-12 14:40:35.121631656 -0400 -@@ -1,5 +1,5 @@ - SUBDIRS = lib intl src po man testsuite --EXTRA_DIST = check.lrzsz COMPATABILITY README.cvs README.isdn4linux \ -+EXTRA_DIST = config.rpath check.lrzsz COMPATABILITY README.cvs README.isdn4linux \ - README.gettext rpmrc buildrpm systype.in fastcheck.sh README.tests \ - beos-runpiped.c fastcheck.beos - noinst_SCRIPTS=systype -@@ -83,3 +83,5 @@ - rpm: $(PR).tar.gz Specfile - $(srcdir)/buildrpm $(srcdir) - -+ -+ACLOCAL_AMFLAGS = -I m4 ---- lrzsz-0.12.20.safe/Makefile.in 1998-12-30 11:31:40.000000000 -0500 -+++ lrzsz-0.12.20/Makefile.in 2004-09-12 14:40:35.109633480 -0400 -@@ -125,7 +125,7 @@ - && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status - - $(ACLOCAL_M4): configure.in acinclude.m4 -- cd $(srcdir) && $(ACLOCAL) -+ cd $(srcdir) && $(ACLOCAL) -I m4 - - config.status: $(srcdir)/configure - $(SHELL) ./config.status --recheck ---- lrzsz-0.12.20.safe/mkinstalldirs 1998-04-26 09:20:52.000000000 -0400 -+++ lrzsz-0.12.20/mkinstalldirs 2004-09-12 14:40:34.337750824 -0400 -@@ -1,34 +1,150 @@ - #! /bin/sh - # mkinstalldirs --- make directory hierarchy --# Author: Noah Friedman -+ -+scriptversion=2004-02-15.20 -+ -+# Original author: Noah Friedman - # Created: 1993-05-16 --# Last modified: 1995-03-05 --# Public domain -+# Public domain. -+# -+# This file is maintained in Automake, please report -+# bugs to or send patches to -+# . - - errstatus=0 -+dirmode="" - --for file in ${1+"$@"} ; do -- set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'` -- shift -+usage="\ -+Usage: mkinstalldirs [-h] [--help] [--version] [-m MODE] DIR ... - -- pathcomp= -- for d in ${1+"$@"} ; do -- pathcomp="$pathcomp$d" -- case "$pathcomp" in -- -* ) pathcomp=./$pathcomp ;; -- esac -+Create each directory DIR (with mode MODE, if specified), including all -+leading file name components. - -- if test ! -d "$pathcomp"; then -- echo "mkdir $pathcomp" 1>&2 -- mkdir "$pathcomp" > /dev/null 2>&1 || lasterr=$? -- fi -+Report bugs to ." - -- if test ! -d "$pathcomp"; then -+# process command line arguments -+while test $# -gt 0 ; do -+ case $1 in -+ -h | --help | --h*) # -h for help -+ echo "$usage" -+ exit 0 -+ ;; -+ -m) # -m PERM arg -+ shift -+ test $# -eq 0 && { echo "$usage" 1>&2; exit 1; } -+ dirmode=$1 -+ shift -+ ;; -+ --version) -+ echo "$0 $scriptversion" -+ exit 0 -+ ;; -+ --) # stop option processing -+ shift -+ break -+ ;; -+ -*) # unknown option -+ echo "$usage" 1>&2 -+ exit 1 -+ ;; -+ *) # first non-opt arg -+ break -+ ;; -+ esac -+done -+ -+for file -+do -+ if test -d "$file"; then -+ shift -+ else -+ break -+ fi -+done -+ -+case $# in -+ 0) exit 0 ;; -+esac -+ -+# Solaris 8's mkdir -p isn't thread-safe. If you mkdir -p a/b and -+# mkdir -p a/c at the same time, both will detect that a is missing, -+# one will create a, then the other will try to create a and die with -+# a "File exists" error. This is a problem when calling mkinstalldirs -+# from a parallel make. We use --version in the probe to restrict -+# ourselves to GNU mkdir, which is thread-safe. -+case $dirmode in -+ '') -+ if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then -+ echo "mkdir -p -- $*" -+ exec mkdir -p -- "$@" -+ else -+ # On NextStep and OpenStep, the `mkdir' command does not -+ # recognize any option. It will interpret all options as -+ # directories to create, and then abort because `.' already -+ # exists. -+ test -d ./-p && rmdir ./-p -+ test -d ./--version && rmdir ./--version -+ fi -+ ;; -+ *) -+ if mkdir -m "$dirmode" -p --version . >/dev/null 2>&1 && -+ test ! -d ./--version; then -+ echo "mkdir -m $dirmode -p -- $*" -+ exec mkdir -m "$dirmode" -p -- "$@" -+ else -+ # Clean up after NextStep and OpenStep mkdir. -+ for d in ./-m ./-p ./--version "./$dirmode"; -+ do -+ test -d $d && rmdir $d -+ done -+ fi -+ ;; -+esac -+ -+for file -+do -+ set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'` -+ shift -+ -+ pathcomp= -+ for d -+ do -+ pathcomp="$pathcomp$d" -+ case $pathcomp in -+ -*) pathcomp=./$pathcomp ;; -+ esac -+ -+ if test ! -d "$pathcomp"; then -+ echo "mkdir $pathcomp" -+ -+ mkdir "$pathcomp" || lasterr=$? -+ -+ if test ! -d "$pathcomp"; then - errstatus=$lasterr -- fi -+ else -+ if test ! -z "$dirmode"; then -+ echo "chmod $dirmode $pathcomp" -+ lasterr="" -+ chmod "$dirmode" "$pathcomp" || lasterr=$? - -- pathcomp="$pathcomp/" -- done -+ if test ! -z "$lasterr"; then -+ errstatus=$lasterr -+ fi -+ fi -+ fi -+ fi -+ -+ pathcomp="$pathcomp/" -+ done - done - - exit $errstatus -+ -+# Local Variables: -+# mode: shell-script -+# sh-indentation: 2 -+# eval: (add-hook 'write-file-hooks 'time-stamp) -+# time-stamp-start: "scriptversion=" -+# time-stamp-format: "%:y-%02m-%02d.%02H" -+# time-stamp-end: "$" -+# End: ---- lrzsz-0.12.20.safe/po/boldquot.sed 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/po/boldquot.sed 2004-09-12 14:40:34.723692152 -0400 -@@ -0,0 +1,10 @@ -+s/"\([^"]*\)"/“\1â€/g -+s/`\([^`']*\)'/‘\1’/g -+s/ '\([^`']*\)' / ‘\1’ /g -+s/ '\([^`']*\)'$/ ‘\1’/g -+s/^'\([^`']*\)' /‘\1’ /g -+s/“â€/""/g -+s/“/“/g -+s/â€/â€/g -+s/‘/‘/g -+s/’/’/g ---- lrzsz-0.12.20.safe/po/cat-id-tbl.c 1998-12-29 04:24:24.000000000 -0500 -+++ lrzsz-0.12.20/po/cat-id-tbl.c 1969-12-31 19:00:00.000000000 -0500 -@@ -1,234 +0,0 @@ --/* Automatically generated by po2tbl.sed from lrzsz.pot. */ -- --#if HAVE_CONFIG_H --# include --#endif -- --#include "libgettext.h" -- --const struct _msg_ent _msg_tbl[] = { -- {"", 1}, -- {"io_mode(,2) in rbsb.c not implemented\n", 2}, -- {"caught signal %d; exiting", 3}, -- {"command tries", 4}, -- {"packetlength", 5}, -- {"packetlength out of range 24..%ld", 6}, -- {"framelength", 7}, -- {"framelength out of range 32..%ld", 8}, -- {"min_bps", 9}, -- {"min_bps must be >= 0", 10}, -- {"min_bps_time", 11}, -- {"min_bps_time must be > 1", 12}, -- {"hour to large (0..23)", 13}, -- {"unparsable stop time\n", 14}, -- {"minute to large (0..59)", 15}, -- {"stop time to small", 16}, -- {"stop-at", 17}, -- {"timeout", 18}, -- {"timeout out of range 10..1000", 19}, -- {"security violation: can't do that under restricted shell\n", 20}, -- {"window size", 21}, -- {"cannot turnoff syslog", 22}, -- {"startup delay", 23}, -- {"out of memory", 24}, -- {"this program was never intended to be used setuid\n", 25}, -- {"need at least one file to send", 26}, -- {"Can't send command in restricted mode\n", 27}, -- {"hostname too long\n", 28}, -- {"illegal server address\n", 29}, -- {"can read only one file from stdin", 30}, -- {"Transfer incomplete\n", 31}, -- {"Transfer complete\n", 32}, -- {"send_pseudo %s: cannot open tmpfile %s: %s", 33}, -- {"send_pseudo %s: cannot lstat tmpfile %s: %s", 34}, -- {"send_pseudo %s: avoiding symlink trap", 35}, -- {"send_pseudo %s: cannot write to tmpfile %s: %s", 36}, -- {"send_pseudo %s: failed", 37}, -- {"send_pseudo %s: ok", 38}, -- {"tcp protocol init failed\n", 39}, -- {"Answering TIMESYNC at %s", 40}, -- {"timezone", 41}, -- {"timezone unknown", 42}, -- {"Can't open any requested files.", 43}, -- {"security violation: not allowed to upload from %s", 44}, -- {"cannot open %s", 45}, -- {"is not a file: %s", 46}, -- {"%s/%s: error occured", 47}, -- {"skipped: %s", 48}, -- {"%s/%s: skipped", 49}, -- {"Bytes Sent:%7ld BPS:%-8ld \n", 50}, -- {"Sending %s, %ld blocks: ", 51}, -- {"Give your local XMODEM receive command now.", 52}, -- {"Sending: %s\n", 53}, -- {"Timeout on pathname", 54}, -- {"Receiver Cancelled", 55}, -- {"No ACK on EOT", 56}, -- {"Xmodem sectors/kbytes sent: %3d/%2dk", 57}, -- {"Ymodem sectors/kbytes sent: %3d/%2dk", 58}, -- {"Cancelled", 59}, -- {"Timeout on sector ACK", 60}, -- {"NAK on sector", 61}, -- {"Got burst for sector ACK", 62}, -- {"Got %02x for sector ACK", 63}, -- {"Retry Count Exceeded", 64}, -- {"Try `%s --help' for more information.\n", 65}, -- {"%s version %s\n", 66}, -- {"Usage: %s [options] file ...\n", 67}, -- {" or: %s [options] -{c|i} COMMAND\n", 68}, -- {"Send file(s) with ZMODEM/YMODEM/XMODEM protocol\n", 69}, -- {"\ -- (X) = option applies to XMODEM only\n\ -- (Y) = option applies to YMODEM only\n\ -- (Z) = option applies to ZMODEM only\n", 70}, -- {"\ -- -+, --append append to existing destination file (Z)\n\ -- -2, --twostop use 2 stop bits\n\ -- -4, --try-4k go up to 4K blocksize\n\ -- --start-4k start with 4K blocksize (doesn't try 8)\n\ -- -8, --try-8k go up to 8K blocksize\n\ -- --start-8k start with 8K blocksize\n\ -- -a, --ascii ASCII transfer (change CR/LF to LF)\n\ -- -b, --binary binary transfer\n\ -- -B, --bufsize N buffer N bytes (N==auto: buffer whole file)\n\ -- -c, --command COMMAND execute remote command COMMAND (Z)\n\ -- -C, --command-tries N try N times to execute a command (Z)\n\ -- -d, --dot-to-slash change '.' to '/' in pathnames (Y/Z)\n\ -- --delay-startup N sleep N seconds before doing anything\n\ -- -e, --escape escape all control characters (Z)\n\ -- -E, --rename force receiver to rename files it already has\n\ -- -f, --full-path send full pathname (Y/Z)\n\ -- -i, --immediate-command CMD send remote CMD, return immediately (Z)\n\ -- -h, --help print this usage message\n\ -- -k, --1k send 1024 byte packets (X)\n\ -- -L, --packetlen N limit subpacket length to N bytes (Z)\n\ -- -l, --framelen N limit frame length to N bytes (l>=L) (Z)\n\ -- -m, --min-bps N stop transmission if BPS below N\n\ -- -M, --min-bps-time N for at least N seconds (default: 120)\n", 71}, -- {"\ -- -n, --newer send file if source newer (Z)\n\ -- -N, --newer-or-longer send file if source newer or longer (Z)\n\ -- -o, --16-bit-crc use 16 bit CRC instead of 32 bit CRC (Z)\n\ -- -O, --disable-timeouts disable timeout code, wait forever\n\ -- -p, --protect protect existing destination file (Z)\n\ -- -r, --resume resume interrupted file transfer (Z)\n\ -- -R, --restricted restricted, more secure mode\n\ -- -q, --quiet quiet (no progress reports)\n\ -- -s, --stop-at {HH:MM|+N} stop transmission at HH:MM or in N seconds\n\ -- --tcp build a TCP connection to transmit files\n\ -- --tcp-server open socket, wait for connection\n\ -- -u, --unlink unlink file after transmission\n\ -- -U, --unrestrict turn off restricted mode (if allowed to)\n\ -- -v, --verbose be verbose, provide debugging information\n\ -- -w, --windowsize N Window is N bytes (Z)\n\ -- -X, --xmodem use XMODEM protocol\n\ -- -y, --overwrite overwrite existing files\n\ -- -Y, --overwrite-or-skip overwrite existing files, else skip\n\ -- --ymodem use YMODEM protocol\n\ -- -Z, --zmodem use ZMODEM protocol\n\ --\n\ --short options use the same arguments as the long ones\n", 72}, -- {"got ZRQINIT", 73}, -- {"got ZCAN", 74}, -- {"blklen now %d\n", 75}, -- {"zsendfdata: bps rate %ld below min %ld", 76}, -- {"zsendfdata: reached stop time", 77}, -- {"Bytes Sent:%7ld/%7ld BPS:%-8ld ETA %02d:%02d ", 78}, -- {"calc_blklen: reduced to %d due to error\n", 79}, -- {"calc_blklen: returned old value %d due to low bpe diff\n", 80}, -- {"calc_blklen: old %ld, new %ld, d %ld\n", 81}, -- {"calc_blklen: calc total_bytes=%ld, bpe=%ld, ec=%ld\n", 82}, -- {"calc_blklen: blklen %d, ok %ld, failed %ld -> %lu\n", 83}, -- {"calc_blklen: returned %d as best\n", 84}, -- {"\ --\n\ --countem: Total %d %ld\n", 85}, -- {"Bad escape sequence %x", 86}, -- {"Sender Canceled", 87}, -- {"TIMEOUT", 88}, -- {"Bad data subpacket", 89}, -- {"Data subpacket too long", 90}, -- {"Garbage count exceeded", 91}, -- {"Got %s", 92}, -- {"Retry %d: ", 93}, -- {"don't have settimeofday, will not set time\n", 94}, -- {"not running as root (this is good!), can not set time\n", 95}, -- {"bytes_per_error", 96}, -- {"bytes-per-error should be >100", 97}, -- {"O_SYNC not supported by the kernel", 98}, -- {"garbage on commandline", 99}, -- {"Usage: %s [options] [filename.if.xmodem]\n", 100}, -- {"Receive files with ZMODEM/YMODEM/XMODEM protocol\n", 101}, -- {"\ -- -+, --append append to existing files\n\ -- -a, --ascii ASCII transfer (change CR/LF to LF)\n\ -- -b, --binary binary transfer\n\ -- -B, --bufsize N buffer N bytes (N==auto: buffer whole file)\n\ -- -c, --with-crc Use 16 bit CRC (X)\n\ -- -C, --allow-remote-commands allow execution of remote commands (Z)\n\ -- -D, --null write all received data to /dev/null\n\ -- --delay-startup N sleep N seconds before doing anything\n\ -- -e, --escape Escape control characters (Z)\n\ -- -E, --rename rename any files already existing\n\ -- --errors N generate CRC error every N bytes (debugging)\n\ -- -h, --help Help, print this usage message\n\ -- -m, --min-bps N stop transmission if BPS below N\n\ -- -M, --min-bps-time N for at least N seconds (default: 120)\n\ -- -O, --disable-timeouts disable timeout code, wait forever for data\n\ -- --o-sync open output file(s) in synchronous write mode\n\ -- -p, --protect protect existing files\n\ -- -q, --quiet quiet, no progress reports\n\ -- -r, --resume try to resume interrupted file transfer (Z)\n\ -- -R, --restricted restricted, more secure mode\n\ -- -s, --stop-at {HH:MM|+N} stop transmission at HH:MM or in N seconds\n\ -- -S, --timesync request remote time (twice: set local time)\n\ -- --syslog[=off] turn syslog on or off, if possible\n\ -- -t, --timeout N set timeout to N tenths of a second\n\ -- -u, --keep-uppercase keep upper case filenames\n\ -- -U, --unrestrict disable restricted mode (if allowed to)\n\ -- -v, --verbose be verbose, provide debugging information\n\ -- -w, --windowsize N Window is N bytes (Z)\n\ -- -X --xmodem use XMODEM protocol\n\ -- -y, --overwrite Yes, clobber existing file if any\n\ -- --ymodem use YMODEM protocol\n\ -- -Z, --zmodem use ZMODEM protocol\n\ --\n\ --short options use the same arguments as the long ones\n", 102}, -- {"%s waiting to receive.", 103}, -- {"\rBytes received: %7ld/%7ld BPS:%-6ld \r\n", 104}, -- {"%s: ready to receive %s", 105}, -- {"\rBytes received: %7ld BPS:%-6ld \r\n", 106}, -- {"\ --\r\n\ --%s: %s removed.\r\n", 107}, -- {"Pathname fetch returned EOT", 108}, -- {"Received dup Sector", 109}, -- {"Sync Error", 110}, -- {"CRC", 111}, -- {"Checksum", 112}, -- {"Sector number garbled", 113}, -- {"Sender Cancelled", 114}, -- {"Got 0%o sector header", 115}, -- {"file name ends with a /, skipped: %s\n", 116}, -- {"zmanag=%d, Lzmanag=%d\n", 117}, -- {"zconv=%d\n", 118}, -- {"file exists, skipped: %s\n", 119}, -- {"TIMESYNC: here %ld, remote %ld, diff %ld seconds\n", 120}, -- {"TIMESYNC: cannot set time: %s\n", 121}, -- {"cannot tmpfile() for tcp protocol synchronization", 122}, -- {"Topipe", 123}, -- {"Receiving: %s\n", 124}, -- {"Blocks received: %d", 125}, -- {"%s: %s exists\n", 126}, -- {"%s:\tSecurity Violation", 127}, -- {"remote command execution requested", 128}, -- {"not executed", 129}, -- {"got ZRINIT", 130}, -- {"Skipped", 131}, -- {"rzfile: bps rate %ld below min %ld", 132}, -- {"rzfile: reached stop time", 133}, -- {"\rBytes received: %7ld/%7ld BPS:%-6ld ETA %02d:%02d ", 134}, -- {"fgets for tcp protocol synchronization failed: ", 135}, -- {"file close error", 136}, --}; -- --int _msg_tbl_length = 136; ---- lrzsz-0.12.20.safe/po/ChangeLog 1998-04-26 09:20:52.000000000 -0400 -+++ lrzsz-0.12.20/po/ChangeLog 2004-09-12 14:40:34.793681512 -0400 -@@ -1,3 +1,15 @@ -+2004-09-12 gettextize -+ -+ * boldquot.sed: New file, from gettext-0.14.1. -+ * en@boldquot.header: New file, from gettext-0.14.1. -+ * en@quot.header: New file, from gettext-0.14.1. -+ * insert-header.sin: New file, from gettext-0.14.1. -+ * quot.sed: New file, from gettext-0.14.1. -+ * remove-potcdate.sin: New file, from gettext-0.14.1. -+ * Rules-quot: New file, from gettext-0.14.1. -+ * cat-id-tbl.c: Remove file. -+ * stamp-cat-id: Remove file. -+ - /* Automatically generated by po2tbl.sed from lrzsz.pot. */ - - #if HAVE_CONFIG_H ---- lrzsz-0.12.20.safe/po/en@boldquot.header 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/po/en@boldquot.header 2004-09-12 14:40:34.731690936 -0400 -@@ -0,0 +1,25 @@ -+# All this catalog "translates" are quotation characters. -+# The msgids must be ASCII and therefore cannot contain real quotation -+# characters, only substitutes like grave accent (0x60), apostrophe (0x27) -+# and double quote (0x22). These substitutes look strange; see -+# http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html -+# -+# This catalog translates grave accent (0x60) and apostrophe (0x27) to -+# left single quotation mark (U+2018) and right single quotation mark (U+2019). -+# It also translates pairs of apostrophe (0x27) to -+# left single quotation mark (U+2018) and right single quotation mark (U+2019) -+# and pairs of quotation mark (0x22) to -+# left double quotation mark (U+201C) and right double quotation mark (U+201D). -+# -+# When output to an UTF-8 terminal, the quotation characters appear perfectly. -+# When output to an ISO-8859-1 terminal, the single quotation marks are -+# transliterated to apostrophes (by iconv in glibc 2.2 or newer) or to -+# grave/acute accent (by libiconv), and the double quotation marks are -+# transliterated to 0x22. -+# When output to an ASCII terminal, the single quotation marks are -+# transliterated to apostrophes, and the double quotation marks are -+# transliterated to 0x22. -+# -+# This catalog furthermore displays the text between the quotation marks in -+# bold face, assuming the VT100/XTerm escape sequences. -+# ---- lrzsz-0.12.20.safe/po/en@quot.header 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/po/en@quot.header 2004-09-12 14:40:34.737690024 -0400 -@@ -0,0 +1,22 @@ -+# All this catalog "translates" are quotation characters. -+# The msgids must be ASCII and therefore cannot contain real quotation -+# characters, only substitutes like grave accent (0x60), apostrophe (0x27) -+# and double quote (0x22). These substitutes look strange; see -+# http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html -+# -+# This catalog translates grave accent (0x60) and apostrophe (0x27) to -+# left single quotation mark (U+2018) and right single quotation mark (U+2019). -+# It also translates pairs of apostrophe (0x27) to -+# left single quotation mark (U+2018) and right single quotation mark (U+2019) -+# and pairs of quotation mark (0x22) to -+# left double quotation mark (U+201C) and right double quotation mark (U+201D). -+# -+# When output to an UTF-8 terminal, the quotation characters appear perfectly. -+# When output to an ISO-8859-1 terminal, the single quotation marks are -+# transliterated to apostrophes (by iconv in glibc 2.2 or newer) or to -+# grave/acute accent (by libiconv), and the double quotation marks are -+# transliterated to 0x22. -+# When output to an ASCII terminal, the single quotation marks are -+# transliterated to apostrophes, and the double quotation marks are -+# transliterated to 0x22. -+# ---- lrzsz-0.12.20.safe/po/insert-header.sin 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/po/insert-header.sin 2004-09-12 14:40:34.743689112 -0400 -@@ -0,0 +1,23 @@ -+# Sed script that inserts the file called HEADER before the header entry. -+# -+# At each occurrence of a line starting with "msgid ", we execute the following -+# commands. At the first occurrence, insert the file. At the following -+# occurrences, do nothing. The distinction between the first and the following -+# occurrences is achieved by looking at the hold space. -+/^msgid /{ -+x -+# Test if the hold space is empty. -+s/m/m/ -+ta -+# Yes it was empty. First occurrence. Read the file. -+r HEADER -+# Output the file's contents by reading the next line. But don't lose the -+# current line while doing this. -+g -+N -+bb -+:a -+# The hold space was nonempty. Following occurrences. Do nothing. -+x -+:b -+} ---- lrzsz-0.12.20.safe/po/Makevars 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/po/Makevars 2004-09-12 14:40:34.748688352 -0400 -@@ -0,0 +1,41 @@ -+# Makefile variables for PO directory in any package using GNU gettext. -+ -+# Usually the message domain is the same as the package name. -+DOMAIN = $(PACKAGE) -+ -+# These two variables depend on the location of this directory. -+subdir = po -+top_builddir = .. -+ -+# These options get passed to xgettext. -+XGETTEXT_OPTIONS = --keyword=_ --keyword=N_ -+ -+# This is the copyright holder that gets inserted into the header of the -+# $(DOMAIN).pot file. Set this to the copyright holder of the surrounding -+# package. (Note that the msgstr strings, extracted from the package's -+# sources, belong to the copyright holder of the package.) Translators are -+# expected to transfer the copyright for their translations to this person -+# or entity, or to disclaim their copyright. The empty string stands for -+# the public domain; in this case the translators are expected to disclaim -+# their copyright. -+COPYRIGHT_HOLDER = Free Software Foundation, Inc. -+ -+# This is the email address or URL to which the translators shall report -+# bugs in the untranslated strings: -+# - Strings which are not entire sentences, see the maintainer guidelines -+# in the GNU gettext documentation, section 'Preparing Strings'. -+# - Strings which use unclear terms or require additional context to be -+# understood. -+# - Strings which make invalid assumptions about notation of date, time or -+# money. -+# - Pluralisation problems. -+# - Incorrect English spelling. -+# - Incorrect formatting. -+# It can be your email address, or a mailing list address where translators -+# can write to without being subscribed, or the URL of a web page through -+# which the translators can contact you. -+MSGID_BUGS_ADDRESS = -+ -+# This is the list of locale categories, beyond LC_MESSAGES, for which the -+# message catalogs shall be used. It is usually empty. -+EXTRA_LOCALE_CATEGORIES = ---- lrzsz-0.12.20.safe/po/quot.sed 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/po/quot.sed 2004-09-12 14:40:34.754687440 -0400 -@@ -0,0 +1,6 @@ -+s/"\([^"]*\)"/“\1â€/g -+s/`\([^`']*\)'/‘\1’/g -+s/ '\([^`']*\)' / ‘\1’ /g -+s/ '\([^`']*\)'$/ ‘\1’/g -+s/^'\([^`']*\)' /‘\1’ /g -+s/“â€/""/g ---- lrzsz-0.12.20.safe/po/remove-potcdate.sin 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/po/remove-potcdate.sin 2004-09-12 14:40:34.762686224 -0400 -@@ -0,0 +1,19 @@ -+# Sed script that remove the POT-Creation-Date line in the header entry -+# from a POT file. -+# -+# The distinction between the first and the following occurrences of the -+# pattern is achieved by looking at the hold space. -+/^"POT-Creation-Date: .*"$/{ -+x -+# Test if the hold space is empty. -+s/P/P/ -+ta -+# Yes it was empty. First occurrence. Remove the line. -+g -+d -+bb -+:a -+# The hold space was nonempty. Following occurrences. Do nothing. -+x -+:b -+} ---- lrzsz-0.12.20.safe/po/Rules-quot 1969-12-31 19:00:00.000000000 -0500 -+++ lrzsz-0.12.20/po/Rules-quot 2004-09-12 14:40:34.778683792 -0400 -@@ -0,0 +1,47 @@ -+# Special Makefile rules for English message catalogs with quotation marks. -+ -+DISTFILES.common.extra1 = quot.sed boldquot.sed en@quot.header en@boldquot.header insert-header.sin Rules-quot -+ -+.SUFFIXES: .insert-header .po-update-en -+ -+en@quot.po-create: -+ $(MAKE) en@quot.po-update -+en@boldquot.po-create: -+ $(MAKE) en@boldquot.po-update -+ -+en@quot.po-update: en@quot.po-update-en -+en@boldquot.po-update: en@boldquot.po-update-en -+ -+.insert-header.po-update-en: -+ @lang=`echo $@ | sed -e 's/\.po-update-en$$//'`; \ -+ if test "$(PACKAGE)" = "gettext"; then PATH=`pwd`/../src:$$PATH; GETTEXTLIBDIR=`cd $(top_srcdir)/src && pwd`; export GETTEXTLIBDIR; fi; \ -+ tmpdir=`pwd`; \ -+ echo "$$lang:"; \ -+ ll=`echo $$lang | sed -e 's/@.*//'`; \ -+ LC_ALL=C; export LC_ALL; \ -+ cd $(srcdir); \ -+ if $(MSGINIT) -i $(DOMAIN).pot --no-translator -l $$ll -o - 2>/dev/null | sed -f $$tmpdir/$$lang.insert-header | $(MSGCONV) -t UTF-8 | $(MSGFILTER) sed -f `echo $$lang | sed -e 's/.*@//'`.sed 2>/dev/null > $$tmpdir/$$lang.new.po; then \ -+ if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \ -+ rm -f $$tmpdir/$$lang.new.po; \ -+ else \ -+ if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \ -+ :; \ -+ else \ -+ echo "creation of $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \ -+ exit 1; \ -+ fi; \ -+ fi; \ -+ else \ -+ echo "creation of $$lang.po failed!" 1>&2; \ -+ rm -f $$tmpdir/$$lang.new.po; \ -+ fi -+ -+en@quot.insert-header: insert-header.sin -+ sed -e '/^#/d' -e 's/HEADER/en@quot.header/g' $(srcdir)/insert-header.sin > en@quot.insert-header -+ -+en@boldquot.insert-header: insert-header.sin -+ sed -e '/^#/d' -e 's/HEADER/en@boldquot.header/g' $(srcdir)/insert-header.sin > en@boldquot.insert-header -+ -+mostlyclean: mostlyclean-quot -+mostlyclean-quot: -+ rm -f *.insert-header ---- lrzsz-0.12.20.safe/po/stamp-cat-id 1998-12-30 02:50:01.000000000 -0500 -+++ lrzsz-0.12.20/po/stamp-cat-id 1969-12-31 19:00:00.000000000 -0500 -@@ -1 +0,0 @@ --timestamp ---- lrzsz-0.12.20.safe/src/Makefile.am 1998-12-28 03:38:47.000000000 -0500 -+++ lrzsz-0.12.20/src/Makefile.am 2004-09-12 14:40:53.665812512 -0400 -@@ -2,12 +2,12 @@ - lrz_SOURCES=lrz.c timing.c zperr.c zreadline.c crctab.c rbsb.c zm.c protname.c tcp.c lsyslog.c canit.c - lsz_SOURCES=lsz.c timing.c zperr.c zreadline.c crctab.c rbsb.c zm.c protname.c tcp.c lsyslog.c canit.c - noinst_HEADERS = timing.h zglobal.h zmodem.h --datadir = $(prefix)/@DATADIRNAME@ -+datadir = $(prefix)/share - localedir = $(datadir)/locale - CFLAGS=@CFLAGS@ - DISTCLEAN_FILES=lrzszbug - --LDADD = ../lib/libzmodem.a @INTLLIBS@ -+LDADD = ../lib/libzmodem.a @LIBINTL@ - AUTOMAKE_OPTIONS=ansi2knr - EXTRA_DIST = ansi2knr.1 ansi2knr.c lrzszbug.in - INCLUDES = -I.. -I$(srcdir) -I$(top_srcdir)/src -I../intl -I$(top_srcdir)/lib diff --git a/meta/packages/lrzsz/lrzsz-0.12.20/makefile.patch b/meta/packages/lrzsz/lrzsz-0.12.20/makefile.patch deleted file mode 100644 index c553c8bf34..0000000000 --- a/meta/packages/lrzsz/lrzsz-0.12.20/makefile.patch +++ /dev/null @@ -1,20 +0,0 @@ -diff -ruN lrzsz-0.12.20_org/src/Makefile.in lrzsz-0.12.20_patch/src/Makefile.in ---- lrzsz-0.12.20_org/src/Makefile.in 1998-12-30 17:31:46.000000000 +0100 -+++ lrzsz-0.12.20_patch/src/Makefile.in 2004-04-29 13:57:33.434909656 +0200 -@@ -372,13 +372,13 @@ - rm -f $(DESTDIR)/$(bindir)/`echo lsb | sed -e '$(transform)'` - ln $(DESTDIR)/$(bindir)/`echo lsz |sed -e '$(transform)'` \ - $(DESTDIR)/$(bindir)/`echo lsb |sed -e '$(transform)'` -- rm -f $(bindir)/`echo lsx | sed -e '$(transform)'` -+ rm -f $(DESTDIR)/$(bindir)/`echo lsx | sed -e '$(transform)'` - ln $(DESTDIR)/$(bindir)/`echo lsz |sed -e '$(transform)'` \ - $(DESTDIR)/$(bindir)/`echo lsx |sed -e '$(transform)'` -- rm -f $(bindir)/`echo lrb | sed -e '$(transform)'` -+ rm -f $(DESTDIR)/$(bindir)/`echo lrb | sed -e '$(transform)'` - ln $(DESTDIR)/$(bindir)/`echo lrz |sed -e '$(transform)'` \ - $(DESTDIR)/$(bindir)/`echo lrb |sed -e '$(transform)'` -- rm -f $(bindir)/`echo lrx | sed -e '$(transform)'` -+ rm -f $(DESTDIR)/$(bindir)/`echo lrx | sed -e '$(transform)'` - ln $(DESTDIR)/$(bindir)/`echo lrz |sed -e '$(transform)'` \ - $(DESTDIR)/$(bindir)/`echo lrx |sed -e '$(transform)'` - # rm -f $(bindir)/`echo lrzszbug | sed -e '$(transform)'` diff --git a/meta/packages/lrzsz/lrzsz_0.12.20.bb b/meta/packages/lrzsz/lrzsz_0.12.20.bb deleted file mode 100644 index af2db23102..0000000000 --- a/meta/packages/lrzsz/lrzsz_0.12.20.bb +++ /dev/null @@ -1,33 +0,0 @@ -DESCRIPTION = "Tools for zmodem/xmodem/ymodem file transfer" -HOMEPAGE = "http://www.ohse.de/uwe/software/lrzsz.html" -LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3 \ - file://src/lrz.c;beginline=1;endline=10;md5=5276956373ff7d8758837f6399a1045f" -SECTION = "console/network" -PRIORITY = "standard" -DEPENDS = "" -PR = "r3" - -SRC_URI = "http://www.ohse.de/uwe/releases/lrzsz-${PV}.tar.gz \ - file://autotools.patch;patch=1 \ - file://makefile.patch;patch=1 \ - file://gettext.patch;patch=1" - -inherit autotools gettext - -do_install() { - install -d ${D}${bindir}/ - install -m 0755 src/lrz src/lsz ${D}${bindir}/ -} - -pkg_postinst() { - for util in rz rx rb sz sx sb; do - update-alternatives --install ${bindir}/$util $util lrz 100 - done -} - -pkg_postrm() { - for util in rz rx rb sz sx sb; do - update-alternatives --remove $util ${bindir}/lrz - done -} \ No newline at end of file diff --git a/meta/packages/lsof/lsof_4.83.bb b/meta/packages/lsof/lsof_4.83.bb deleted file mode 100644 index 078da64305..0000000000 --- a/meta/packages/lsof/lsof_4.83.bb +++ /dev/null @@ -1,41 +0,0 @@ -DESCRIPTION = "Lsof is a Unix-specific diagnostic tool. \ -Its name stands for LiSt Open Files, and it does just that." -SECTION = "devel" -LICENSE = "BSD" - -PR = "r0" - -SRC_URI = "ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/lsof_${PV}.tar.bz2" -LOCALSRC = "file://${WORKDIR}/lsof_${PV}/lsof_${PV}_src.tar" -S = "${WORKDIR}/lsof_${PV}_src" - -python do_unpack () { - bb.build.exec_func('base_do_unpack', d) - src_uri = bb.data.getVar('SRC_URI', d) - bb.data.setVar('SRC_URI', '${LOCALSRC}', d) - bb.build.exec_func('base_do_unpack', d) - bb.data.setVar('SRC_URI', src_uri, d) -} - -export LSOF_OS = "${TARGET_OS}" -LSOF_OS_linux-uclibc = "linux" -LSOF_OS_linux-gnueabi = "linux" -export LSOF_INCLUDE = "${STAGING_INCDIR}" - -do_configure () { - yes | ./Configure ${LSOF_OS} -} - -export I = "${STAGING_INCDIR}" -export L = "${STAGING_INCDIR}" -export EXTRA_OEMAKE = "" - -do_compile () { - oe_runmake 'CC=${CC}' 'CFGL=${LDFLAGS} -L./lib -llsof' 'DEBUG=' 'INCL=${CFLAGS}' -} - -do_install () { - install -d ${D}${sbindir} ${D}${mandir}/man8 - install -m 4755 lsof ${D}${sbindir}/lsof - install -m 0644 lsof.8 ${D}${mandir}/man8/lsof.8 -} diff --git a/meta/packages/lzo/lzo-2.03/acinclude.m4 b/meta/packages/lzo/lzo-2.03/acinclude.m4 deleted file mode 100644 index c4d2ccd5b5..0000000000 --- a/meta/packages/lzo/lzo-2.03/acinclude.m4 +++ /dev/null @@ -1,358 +0,0 @@ - -AC_DEFUN([mfx_ACC_CHECK_ENDIAN], [ -AC_C_BIGENDIAN([AC_DEFINE(ACC_ABI_BIG_ENDIAN,1,[Define to 1 if your machine is big endian.])],[AC_DEFINE(ACC_ABI_LITTLE_ENDIAN,1,[Define to 1 if your machine is little endian.])]) -])# - -AC_DEFUN([mfx_ACC_CHECK_HEADERS], [ -AC_HEADER_TIME -AC_CHECK_HEADERS([assert.h ctype.h dirent.h errno.h fcntl.h float.h limits.h malloc.h memory.h setjmp.h signal.h stdarg.h stddef.h stdint.h stdio.h stdlib.h string.h strings.h time.h unistd.h utime.h sys/stat.h sys/time.h sys/types.h sys/wait.h]) -])# - -AC_DEFUN([mfx_ACC_CHECK_FUNCS], [ -AC_CHECK_FUNCS(access alloca atexit atoi atol chmod chown ctime difftime fstat gettimeofday gmtime localtime longjmp lstat memcmp memcpy memmove memset mktime qsort raise setjmp signal snprintf strcasecmp strchr strdup strerror strftime stricmp strncasecmp strnicmp strrchr strstr time umask utime vsnprintf) -])# - - -AC_DEFUN([mfx_ACC_CHECK_SIZEOF], [ -AC_CHECK_SIZEOF(short) -AC_CHECK_SIZEOF(int) -AC_CHECK_SIZEOF(long) - -AC_CHECK_SIZEOF(long long) -AC_CHECK_SIZEOF(__int16) -AC_CHECK_SIZEOF(__int32) -AC_CHECK_SIZEOF(__int64) - -AC_CHECK_SIZEOF(void *) -AC_CHECK_SIZEOF(size_t) -AC_CHECK_SIZEOF(ptrdiff_t) -])# - - -# /*********************************************************************** -# // Check for ACC_conformance -# ************************************************************************/ - -AC_DEFUN([mfx_ACC_ACCCHK], [ -mfx_tmp=$1 -mfx_save_CPPFLAGS=$CPPFLAGS -dnl in Makefile.in $(INCLUDES) will be before $(CPPFLAGS), so we mimic this here -test "X$mfx_tmp" = "X" || CPPFLAGS="$mfx_tmp $CPPFLAGS" - -AC_MSG_CHECKING([whether your compiler passes the ACC conformance test]) - -AC_LANG_CONFTEST([AC_LANG_PROGRAM( -[[#define ACC_CONFIG_NO_HEADER 1 -#include "acc/acc.h" -#include "acc/acc_incd.h" -#undef ACCCHK_ASSERT -#define ACCCHK_ASSERT(expr) ACC_COMPILE_TIME_ASSERT_HEADER(expr) -#include "acc/acc_chk.ch" -#undef ACCCHK_ASSERT -static void test_acc_compile_time_assert(void) { -#define ACCCHK_ASSERT(expr) ACC_COMPILE_TIME_ASSERT(expr) -#include "acc/acc_chk.ch" -#undef ACCCHK_ASSERT -} -#undef NDEBUG -#include -static int test_acc_run_time_assert(int r) { -#define ACCCHK_ASSERT(expr) assert(expr); -#include "acc/acc_chk.ch" -#undef ACCCHK_ASSERT -return r; -} -]], [[ -test_acc_compile_time_assert(); -if (test_acc_run_time_assert(1) != 1) return 1; -]] -)]) - -mfx_tmp=FAILED -_AC_COMPILE_IFELSE([], [mfx_tmp=yes]) -rm -f conftest.$ac_ext conftest.$ac_objext - -CPPFLAGS=$mfx_save_CPPFLAGS - -AC_MSG_RESULT([$mfx_tmp]) -case x$mfx_tmp in - xpassed | xyes) ;; - *) - AC_MSG_NOTICE([]) - AC_MSG_NOTICE([Your compiler failed the ACC conformance test - for details see ]) - AC_MSG_NOTICE([`config.log'. Please check that log file and consider sending]) - AC_MSG_NOTICE([a patch or bug-report to <${PACKAGE_BUGREPORT}>.]) - AC_MSG_NOTICE([Thanks for your support.]) - AC_MSG_NOTICE([]) - AC_MSG_ERROR([ACC conformance test failed. Stop.]) -dnl AS_EXIT - ;; -esac -])# mfx_ACC_ACCCHK - - -# /*********************************************************************** -# // Check for ACC_conformance -# ************************************************************************/ - -AC_DEFUN([mfx_MINIACC_ACCCHK], [ -mfx_tmp=$1 -mfx_save_CPPFLAGS=$CPPFLAGS -dnl in Makefile.in $(INCLUDES) will be before $(CPPFLAGS), so we mimic this here -test "X$mfx_tmp" = "X" || CPPFLAGS="$mfx_tmp $CPPFLAGS" - -AC_MSG_CHECKING([whether your compiler passes the ACC conformance test]) - -AC_LANG_CONFTEST([AC_LANG_PROGRAM( -[[#define ACC_CONFIG_NO_HEADER 1 -#define ACC_WANT_ACC_INCD_H 1 -#include $2 - -#define ACC_WANT_ACC_CHK_CH 1 -#undef ACCCHK_ASSERT -#define ACCCHK_ASSERT(expr) ACC_COMPILE_TIME_ASSERT_HEADER(expr) -#include $2 - -#define ACC_WANT_ACC_CHK_CH 1 -#undef ACCCHK_ASSERT -#define ACCCHK_ASSERT(expr) ACC_COMPILE_TIME_ASSERT(expr) -static void test_acc_compile_time_assert(void) { -#include $2 -} - -#undef NDEBUG -#include -#define ACC_WANT_ACC_CHK_CH 1 -#undef ACCCHK_ASSERT -#define ACCCHK_ASSERT(expr) assert(expr); -static int test_acc_run_time_assert(int r) { -#include $2 -return r; -} -]], [[ -test_acc_compile_time_assert(); -if (test_acc_run_time_assert(1) != 1) return 1; -]] -)]) - -mfx_tmp=FAILED -_AC_COMPILE_IFELSE([], [mfx_tmp=yes]) -rm -f conftest.$ac_ext conftest.$ac_objext - -CPPFLAGS=$mfx_save_CPPFLAGS - -AC_MSG_RESULT([$mfx_tmp]) -case x$mfx_tmp in - xpassed | xyes) ;; - *) - AC_MSG_NOTICE([]) - AC_MSG_NOTICE([Your compiler failed the ACC conformance test - for details see ]) - AC_MSG_NOTICE([`config.log'. Please check that log file and consider sending]) - AC_MSG_NOTICE([a patch or bug-report to <${PACKAGE_BUGREPORT}>.]) - AC_MSG_NOTICE([Thanks for your support.]) - AC_MSG_NOTICE([]) - AC_MSG_ERROR([ACC conformance test failed. Stop.]) -dnl AS_EXIT - ;; -esac -])# mfx_MINIACC_ACCCHK - - - -# serial 1 - -AC_DEFUN([mfx_PROG_CPPFLAGS], [ -AC_MSG_CHECKING([whether the C preprocessor needs special flags]) - -AC_LANG_CONFTEST([AC_LANG_PROGRAM( -[[#include -#if (32767 >= 4294967295ul) || (65535u >= 4294967295ul) -# include "your C preprocessor is broken 1" -#elif (0xffffu == 0xfffffffful) -# include "your C preprocessor is broken 2" -#elif (32767 >= ULONG_MAX) || (65535u >= ULONG_MAX) -# include "your C preprocessor is broken 3" -#endif -]], [[ ]] -)]) - -mfx_save_CPPFLAGS=$CPPFLAGS -mfx_tmp=ERROR -for mfx_arg in "" -no-cpp-precomp -do - CPPFLAGS="$mfx_arg $mfx_save_CPPFLAGS" - _AC_COMPILE_IFELSE([], -[mfx_tmp=$mfx_arg -break]) -done -CPPFLAGS=$mfx_save_CPPFLAGS -rm -f conftest.$ac_ext conftest.$ac_objext -case x$mfx_tmp in - x) - AC_MSG_RESULT([none needed]) ;; - xERROR) - AC_MSG_RESULT([ERROR]) - AC_MSG_ERROR([your C preprocessor is broken - for details see config.log]) - ;; - *) - AC_MSG_RESULT([$mfx_tmp]) - CPPFLAGS="$mfx_tmp $CPPFLAGS" - ;; -esac -])# mfx_PROG_CPPFLAGS - - - -# serial 3 - -AC_DEFUN([mfx_CHECK_HEADER_SANE_LIMITS_H], [ -AC_CACHE_CHECK([whether limits.h is sane], -mfx_cv_header_sane_limits_h, -[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include -#if (32767 >= 4294967295ul) || (65535u >= 4294967295ul) -# if defined(__APPLE__) && defined(__GNUC__) -# error "your preprocessor is broken - use compiler option -no-cpp-precomp" -# else -# include "your preprocessor is broken" -# endif -#endif -#define MFX_0xffff 0xffff -#define MFX_0xffffffffL 4294967295ul -#if !defined(CHAR_BIT) || (CHAR_BIT != 8) -# include "error CHAR_BIT" -#endif -#if !defined(UCHAR_MAX) -# include "error UCHAR_MAX 1" -#endif -#if !defined(USHRT_MAX) -# include "error USHRT_MAX 1" -#endif -#if !defined(UINT_MAX) -# include "error UINT_MAX 1" -#endif -#if !defined(ULONG_MAX) -# include "error ULONG_MAX 1" -#endif -#if !defined(SHRT_MAX) -# include "error SHRT_MAX 1" -#endif -#if !defined(INT_MAX) -# include "error INT_MAX 1" -#endif -#if !defined(LONG_MAX) -# include "error LONG_MAX 1" -#endif -#if (UCHAR_MAX < 1) -# include "error UCHAR_MAX 2" -#endif -#if (USHRT_MAX < 1) -# include "error USHRT_MAX 2" -#endif -#if (UINT_MAX < 1) -# include "error UINT_MAX 2" -#endif -#if (ULONG_MAX < 1) -# include "error ULONG_MAX 2" -#endif -#if (UCHAR_MAX < 0xff) -# include "error UCHAR_MAX 3" -#endif -#if (USHRT_MAX < MFX_0xffff) -# include "error USHRT_MAX 3" -#endif -#if (UINT_MAX < MFX_0xffff) -# include "error UINT_MAX 3" -#endif -#if (ULONG_MAX < MFX_0xffffffffL) -# include "error ULONG_MAX 3" -#endif -#if (USHRT_MAX > UINT_MAX) -# include "error USHRT_MAX vs UINT_MAX" -#endif -#if (UINT_MAX > ULONG_MAX) -# include "error UINT_MAX vs ULONG_MAX" -#endif -]], [[ -#if (USHRT_MAX == MFX_0xffff) -{ typedef char a_short2a[1 - 2 * !(sizeof(short) == 2)]; } -#elif (USHRT_MAX >= MFX_0xffff) -{ typedef char a_short2b[1 - 2 * !(sizeof(short) > 2)]; } -#endif -#if (UINT_MAX == MFX_0xffff) -{ typedef char a_int2a[1 - 2 * !(sizeof(int) == 2)]; } -#elif (UINT_MAX >= MFX_0xffff) -{ typedef char a_int2b[1 - 2 * !(sizeof(int) > 2)]; } -#endif -#if (ULONG_MAX == MFX_0xffff) -{ typedef char a_long2a[1 - 2 * !(sizeof(long) == 2)]; } -#elif (ULONG_MAX >= MFX_0xffff) -{ typedef char a_long2b[1 - 2 * !(sizeof(long) > 2)]; } -#endif -#if (USHRT_MAX == MFX_0xffffffffL) -{ typedef char a_short4a[1 - 2 * !(sizeof(short) == 4)]; } -#elif (USHRT_MAX >= MFX_0xffffffffL) -{ typedef char a_short4b[1 - 2 * !(sizeof(short) > 4)]; } -#endif -#if (UINT_MAX == MFX_0xffffffffL) -{ typedef char a_int4a[1 - 2 * !(sizeof(int) == 4)]; } -#elif (UINT_MAX >= MFX_0xffffffffL) -{ typedef char a_int4b[1 - 2 * !(sizeof(int) > 4)]; } -#endif -#if (ULONG_MAX == MFX_0xffffffffL) -{ typedef char a_long4a[1 - 2 * !(sizeof(long) == 4)]; } -#elif (ULONG_MAX >= MFX_0xffffffffL) -{ typedef char a_long4b[1 - 2 * !(sizeof(long) > 4)]; } -#endif -]])], -[mfx_cv_header_sane_limits_h=yes], -[mfx_cv_header_sane_limits_h=no])]) -]) - -# /*********************************************************************** -# // standard -# ************************************************************************/ - -AC_DEFUN([mfx_LZO_CHECK_ENDIAN], [ -AC_C_BIGENDIAN([AC_DEFINE(LZO_ABI_BIG_ENDIAN,1,[Define to 1 if your machine is big endian.])],[AC_DEFINE(LZO_ABI_LITTLE_ENDIAN,1,[Define to 1 if your machine is little endian.])]) -])# - - -# /*********************************************************************** -# // -# ************************************************************************/ - -dnl more types which are not yet covered by ACC - -AC_DEFUN([mfx_CHECK_SIZEOF], [ -AC_CHECK_SIZEOF(__int32) -AC_CHECK_SIZEOF(intmax_t) -AC_CHECK_SIZEOF(uintmax_t) -AC_CHECK_SIZEOF(intptr_t) -AC_CHECK_SIZEOF(uintptr_t) - -AC_CHECK_SIZEOF(float) -AC_CHECK_SIZEOF(double) -AC_CHECK_SIZEOF(long double) - -AC_CHECK_SIZEOF(dev_t) -AC_CHECK_SIZEOF(fpos_t) -AC_CHECK_SIZEOF(mode_t) -AC_CHECK_SIZEOF(off_t) -AC_CHECK_SIZEOF(ssize_t) -AC_CHECK_SIZEOF(time_t) -])# - - - -AC_DEFUN([mfx_CHECK_LIB_WINMM], [ -if test "X$GCC" = Xyes; then -case $host_os in -cygwin* | mingw* | pw32*) - test "X$LIBS" != "X" && LIBS="$LIBS " - LIBS="${LIBS}-lwinmm" ;; -*) - ;; -esac -fi -])# - diff --git a/meta/packages/lzo/lzo-2.03/autofoo.patch b/meta/packages/lzo/lzo-2.03/autofoo.patch deleted file mode 100644 index 5762f4c6e2..0000000000 --- a/meta/packages/lzo/lzo-2.03/autofoo.patch +++ /dev/null @@ -1,17 +0,0 @@ ---- - configure.ac | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -Index: lzo-2.02/configure.ac -=================================================================== ---- lzo-2.02.orig/configure.ac 2007-08-08 15:28:14.000000000 +0100 -+++ lzo-2.02/configure.ac 2007-08-08 15:28:21.000000000 +0100 -@@ -47,7 +47,7 @@ AC_CANONICAL_TARGET - AM_MAINTAINER_MODE - - if test -z "$ac_abs_top_srcdir"; then -- _AC_SRCPATHS(.) -+ _AC_SRCDIRS(.) - fi - if test -r .Conf.settings1; then - . ./.Conf.settings1 diff --git a/meta/packages/lzo/lzo_2.03.bb b/meta/packages/lzo/lzo_2.03.bb deleted file mode 100644 index 9657d97e59..0000000000 --- a/meta/packages/lzo/lzo_2.03.bb +++ /dev/null @@ -1,22 +0,0 @@ -DESCRIPTION = "Lossless data compression library" -HOMEPAGE = "http://www.oberhumer.com/opensource/lzo/" -SECTION = "libs" -PRIORITY = "optional" -LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=8cad52263e636e25377bc18420118101 \ - file://src/lzo_init.c;beginline=5;endline=33;md5=094776237523b2e93124cf09b9c76aef" -PR = "r0" - -SRC_URI = "http://www.oberhumer.com/opensource/lzo/download/lzo-${PV}.tar.gz \ - file://autofoo.patch \ - file://acinclude.m4" - -inherit autotools - -EXTRA_OECONF = "--enable-shared" - -do_configure_prepend () { - cp ${WORKDIR}/acinclude.m4 ${S}/ -} - -BBCLASSEXTEND = "native" diff --git a/meta/packages/mozilla-headless/mozilla-headless-services/confighack.patch b/meta/packages/mozilla-headless/mozilla-headless-services/confighack.patch deleted file mode 100644 index dcfe11e0ff..0000000000 --- a/meta/packages/mozilla-headless/mozilla-headless-services/confighack.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: places-glib/configure.ac -=================================================================== ---- places-glib.orig/configure.ac 2009-04-17 10:29:15.000000000 +0100 -+++ places-glib/configure.ac 2009-04-17 10:29:44.000000000 +0100 -@@ -99,6 +99,8 @@ - PKG_CHECK_MODULES(GLIB, [glib-2.0]) - PKG_CHECK_MODULES(DBUS, [dbus-glib-1]) - -+XUL_LIBS="$XUL_LIBS -lmozjs" -+ - MOZHOME=`${PKG_CONFIG} --variable=prefix mozilla-headless`"/lib/xulrunner-"`${PKG_CONFIG} --modversion mozilla-headless` - AC_SUBST([MOZHOME]) - diff --git a/meta/packages/mozilla-headless/mozilla-headless-services_git.bb b/meta/packages/mozilla-headless/mozilla-headless-services_git.bb deleted file mode 100644 index 14d64fa8c3..0000000000 --- a/meta/packages/mozilla-headless/mozilla-headless-services_git.bb +++ /dev/null @@ -1,14 +0,0 @@ -SRC_URI = "git://git.moblin.org/mozilla-headless-services.git;protocol=git \ - file://confighack.patch;patch=1" -PV = "0.1+git${SRCPV}" -PR = "r1" - -DEPENDS = "glib-2.0 dbus mozilla-headless json-glib" - -EXTRA_OECONF = "--enable-gnome-proxy" - -S = "${WORKDIR}/git" - -FILES_${PN} += "${datadir}/dbus-1/services" - -inherit autotools diff --git a/meta/packages/mozilla-headless/mozilla-headless/0001-Adds-initial-Gtk-clipboard-support-to-moz-headless.patch b/meta/packages/mozilla-headless/mozilla-headless/0001-Adds-initial-Gtk-clipboard-support-to-moz-headless.patch deleted file mode 100644 index db9e147990..0000000000 --- a/meta/packages/mozilla-headless/mozilla-headless/0001-Adds-initial-Gtk-clipboard-support-to-moz-headless.patch +++ /dev/null @@ -1,1478 +0,0 @@ -From fb41f028badb4dfddfc47fb2a1a68c1aa90dcef5 Mon Sep 17 00:00:00 2001 -From: Robert Bragg -Date: Fri, 8 May 2009 13:57:22 +0100 -Subject: [PATCH] Adds initial Gtk clipboard support to moz-headless - -If build with MOZ_X11 enabled then this now builds the clipboard code taken -from the gtk2 backend. This doesn't provide any embedding API yet to expose -the clipboard. ---- - widget/src/headless/Makefile.in | 6 + - widget/src/headless/nsClipboard.cpp | 948 +++++++++++++++++++++++++++++++ - widget/src/headless/nsClipboard.h | 93 +++ - widget/src/headless/nsIImageToPixbuf.h | 62 ++ - widget/src/headless/nsImageToPixbuf.cpp | 196 +++++++ - widget/src/headless/nsImageToPixbuf.h | 71 +++ - widget/src/headless/nsWidgetFactory.cpp | 18 + - 7 files changed, 1394 insertions(+), 0 deletions(-) - create mode 100644 widget/src/headless/nsClipboard.cpp - create mode 100644 widget/src/headless/nsClipboard.h - create mode 100644 widget/src/headless/nsIImageToPixbuf.h - create mode 100644 widget/src/headless/nsImageToPixbuf.cpp - create mode 100644 widget/src/headless/nsImageToPixbuf.h - -Index: offscreen/widget/src/headless/Makefile.in -=================================================================== ---- offscreen.orig/widget/src/headless/Makefile.in 2009-05-16 18:23:25.000000000 +0100 -+++ offscreen/widget/src/headless/Makefile.in 2009-06-12 14:14:05.000000000 +0100 -@@ -95,6 +95,12 @@ - nsScreenManagerHeadless.cpp \ - $(NULL) - -+ifdef MOZ_X11 -+CPPSRCS += nsClipboard.cpp \ -+ nsImageToPixbuf.cpp \ -+ $(NULL) -+endif -+ - # build our subdirs, too - SHARED_LIBRARY_LIBS = ../xpwidgets/libxpwidgets_s.a - -Index: offscreen/widget/src/headless/nsClipboard.cpp -=================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ offscreen/widget/src/headless/nsClipboard.cpp 2009-06-12 14:14:05.000000000 +0100 -@@ -0,0 +1,948 @@ -+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -+/* vim:expandtab:shiftwidth=4:tabstop=4: -+ */ -+/* ***** BEGIN LICENSE BLOCK ***** -+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1 -+ * -+ * The contents of this file are subject to the Mozilla Public License Version -+ * 1.1 (the "License"); you may not use this file except in compliance with -+ * the License. You may obtain a copy of the License at -+ * http://www.mozilla.org/MPL/ -+ * -+ * Software distributed under the License is distributed on an "AS IS" basis, -+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License -+ * for the specific language governing rights and limitations under the -+ * License. -+ * -+ * The Original Code is mozilla.org code. -+ * -+ * The Initial Developer of the Original Code is Christopher Blizzard -+ * . Portions created by the Initial Developer -+ * are Copyright (C) 2001 the Initial Developer. All Rights Reserved. -+ * -+ * Contributor(s): -+ * -+ * Alternatively, the contents of this file may be used under the terms of -+ * either the GNU General Public License Version 2 or later (the "GPL"), or -+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), -+ * in which case the provisions of the GPL or the LGPL are applicable instead -+ * of those above. If you wish to allow use of your version of this file only -+ * under the terms of either the GPL or the LGPL, and not to allow others to -+ * use your version of this file under the terms of the MPL, indicate your -+ * decision by deleting the provisions above and replace them with the notice -+ * and other provisions required by the GPL or the LGPL. If you do not delete -+ * the provisions above, a recipient may use your version of this file under -+ * the terms of any one of the MPL, the GPL or the LGPL. -+ * -+ * ***** END LICENSE BLOCK ***** */ -+ -+#include "nsClipboard.h" -+#include "nsSupportsPrimitives.h" -+#include "nsString.h" -+#include "nsReadableUtils.h" -+#include "nsXPIDLString.h" -+#include "nsPrimitiveHelpers.h" -+#include "nsICharsetConverterManager.h" -+#include "nsIServiceManager.h" -+#include "nsIImage.h" -+#include "nsImageToPixbuf.h" -+#include "nsStringStream.h" -+ -+#include -+ -+// For manipulation of the X event queue -+#include -+#include -+#include -+#include -+#include -+ -+#ifdef POLL_WITH_XCONNECTIONNUMBER -+#include -+#endif -+ -+// Callback when someone asks us for the selection -+void -+invisible_selection_get_cb (GtkWidget *aWidget, -+ GtkSelectionData *aSelectionData, -+ guint aTime, -+ guint aInfo, -+ nsClipboard *aClipboard); -+ -+gboolean -+selection_clear_event_cb (GtkWidget *aWidget, -+ GdkEventSelection *aEvent, -+ nsClipboard *aClipboard); -+ -+static void -+ConvertHTMLtoUCS2 (guchar *data, -+ PRInt32 dataLength, -+ PRUnichar **unicodeData, -+ PRInt32 &outUnicodeLen); -+ -+static void -+GetHTMLCharset (guchar * data, PRInt32 dataLength, nsCString& str); -+ -+ -+// Our own versions of gtk_clipboard_wait_for_contents and -+// gtk_clipboard_wait_for_text, which don't run the event loop while -+// waiting for the data. This prevents a lot of problems related to -+// dispatching events at unexpected times. -+ -+static GtkSelectionData * -+wait_for_contents (GtkClipboard *clipboard, GdkAtom target); -+ -+static gchar * -+wait_for_text (GtkClipboard *clipboard); -+ -+static Bool -+checkEventProc(Display *display, XEvent *event, XPointer arg); -+ -+struct retrieval_context -+{ -+ PRBool completed; -+ void *data; -+ -+ retrieval_context() : completed(PR_FALSE), data(nsnull) { } -+}; -+ -+static void -+wait_for_retrieval(GtkClipboard *clipboard, retrieval_context *transferData); -+ -+static void -+clipboard_contents_received(GtkClipboard *clipboard, -+ GtkSelectionData *selection_data, -+ gpointer data); -+ -+static void -+clipboard_text_received(GtkClipboard *clipboard, -+ const gchar *text, -+ gpointer data); -+ -+nsClipboard::nsClipboard() -+{ -+ mWidget = nsnull; -+} -+ -+nsClipboard::~nsClipboard() -+{ -+ if (mWidget) -+ gtk_widget_destroy(mWidget); -+} -+ -+NS_IMPL_ISUPPORTS1(nsClipboard, nsIClipboard) -+ -+nsresult -+nsClipboard::Init(void) -+{ -+ mWidget = gtk_invisible_new(); -+ if (!mWidget) -+ return NS_ERROR_FAILURE; -+ -+ g_signal_connect(G_OBJECT(mWidget), "selection_get", -+ G_CALLBACK(invisible_selection_get_cb), this); -+ -+ g_signal_connect(G_OBJECT(mWidget), "selection_clear_event", -+ G_CALLBACK(selection_clear_event_cb), this); -+ -+ // XXX make sure to set up the selection_clear event -+ -+ return NS_OK; -+} -+ -+NS_IMETHODIMP -+nsClipboard::SetData(nsITransferable *aTransferable, -+ nsIClipboardOwner *aOwner, PRInt32 aWhichClipboard) -+{ -+ // See if we can short cut -+ if ((aWhichClipboard == kGlobalClipboard && -+ aTransferable == mGlobalTransferable.get() && -+ aOwner == mGlobalOwner.get()) || -+ (aWhichClipboard == kSelectionClipboard && -+ aTransferable == mSelectionTransferable.get() && -+ aOwner == mSelectionOwner.get())) { -+ return NS_OK; -+ } -+ -+ nsresult rv; -+ if (!mPrivacyHandler) { -+ rv = NS_NewClipboardPrivacyHandler(getter_AddRefs(mPrivacyHandler)); -+ NS_ENSURE_SUCCESS(rv, rv); -+ } -+ rv = mPrivacyHandler->PrepareDataForClipboard(aTransferable); -+ NS_ENSURE_SUCCESS(rv, rv); -+ -+ // Clear out the clipboard in order to set the new data -+ EmptyClipboard(aWhichClipboard); -+ -+ if (aWhichClipboard == kSelectionClipboard) { -+ mSelectionOwner = aOwner; -+ mSelectionTransferable = aTransferable; -+ } -+ else { -+ mGlobalOwner = aOwner; -+ mGlobalTransferable = aTransferable; -+ } -+ -+ // Which selection are we about to claim, CLIPBOARD or PRIMARY? -+ GdkAtom selectionAtom = GetSelectionAtom(aWhichClipboard); -+ -+ // Make ourselves the owner. If we fail to, return. -+ if (!gtk_selection_owner_set(mWidget, selectionAtom, GDK_CURRENT_TIME)) -+ return NS_ERROR_FAILURE; -+ -+ // Clear the old selection target list. -+ gtk_selection_clear_targets(mWidget, selectionAtom); -+ -+ // Get the types of supported flavors -+ nsCOMPtr flavors; -+ -+ rv = aTransferable->FlavorsTransferableCanExport(getter_AddRefs(flavors)); -+ if (!flavors || NS_FAILED(rv)) -+ return NS_ERROR_FAILURE; -+ -+ // Add all the flavors to this widget's supported type. -+ PRUint32 count; -+ flavors->Count(&count); -+ for (PRUint32 i=0; i < count; i++) { -+ nsCOMPtr tastesLike; -+ flavors->GetElementAt(i, getter_AddRefs(tastesLike)); -+ nsCOMPtr flavor = do_QueryInterface(tastesLike); -+ -+ if (flavor) { -+ nsXPIDLCString flavorStr; -+ flavor->ToString(getter_Copies(flavorStr)); -+ -+ // special case text/unicode since we can handle all of -+ // the string types -+ if (!strcmp(flavorStr, kUnicodeMime)) { -+ AddTarget(gdk_atom_intern("UTF8_STRING", FALSE), -+ selectionAtom); -+ AddTarget(gdk_atom_intern("COMPOUND_TEXT", FALSE), -+ selectionAtom); -+ AddTarget(gdk_atom_intern("TEXT", FALSE), selectionAtom); -+ AddTarget(GDK_SELECTION_TYPE_STRING, selectionAtom); -+ // next loop iteration -+ continue; -+ } -+ -+ // very special case for this one. since our selection mechanism doesn't work for images, -+ // we must use GTK's clipboard utility functions -+ if (!strcmp(flavorStr, kNativeImageMime) || !strcmp(flavorStr, kPNGImageMime) || -+ !strcmp(flavorStr, kJPEGImageMime) || !strcmp(flavorStr, kGIFImageMime)) { -+ nsCOMPtr item; -+ PRUint32 len; -+ rv = aTransferable->GetTransferData(flavorStr, getter_AddRefs(item), &len); -+ nsCOMPtr ptrPrimitive(do_QueryInterface(item)); -+ if (!ptrPrimitive) -+ continue; -+ -+ nsCOMPtr primitiveData; -+ ptrPrimitive->GetData(getter_AddRefs(primitiveData)); -+ nsCOMPtr image(do_QueryInterface(primitiveData)); -+ if (!image) // Not getting an image for an image mime type!? -+ continue; -+ -+ if (NS_FAILED(image->LockImagePixels(PR_FALSE))) -+ continue; -+ GdkPixbuf* pixbuf = nsImageToPixbuf::ImageToPixbuf(image); -+ if (!pixbuf) { -+ image->UnlockImagePixels(PR_FALSE); -+ continue; -+ } -+ -+ GtkClipboard *aClipboard = gtk_clipboard_get(GetSelectionAtom(aWhichClipboard)); -+ gtk_clipboard_set_image(aClipboard, pixbuf); -+ g_object_unref(pixbuf); -+ image->UnlockImagePixels(PR_FALSE); -+ continue; -+ } -+ -+ // Add this to our list of valid targets -+ GdkAtom atom = gdk_atom_intern(flavorStr, FALSE); -+ AddTarget(atom, selectionAtom); -+ } -+ } -+ -+ return NS_OK; -+} -+ -+NS_IMETHODIMP -+nsClipboard::GetData(nsITransferable *aTransferable, PRInt32 aWhichClipboard) -+{ -+ if (!aTransferable) -+ return NS_ERROR_FAILURE; -+ -+ GtkClipboard *clipboard; -+ clipboard = gtk_clipboard_get(GetSelectionAtom(aWhichClipboard)); -+ -+ guchar *data = NULL; -+ gint length = 0; -+ PRBool foundData = PR_FALSE; -+ nsCAutoString foundFlavor; -+ -+ // Get a list of flavors this transferable can import -+ nsCOMPtr flavors; -+ nsresult rv; -+ rv = aTransferable->FlavorsTransferableCanImport(getter_AddRefs(flavors)); -+ if (!flavors || NS_FAILED(rv)) -+ return NS_ERROR_FAILURE; -+ -+ PRUint32 count; -+ flavors->Count(&count); -+ for (PRUint32 i=0; i < count; i++) { -+ nsCOMPtr genericFlavor; -+ flavors->GetElementAt(i, getter_AddRefs(genericFlavor)); -+ -+ nsCOMPtr currentFlavor; -+ currentFlavor = do_QueryInterface(genericFlavor); -+ -+ if (currentFlavor) { -+ nsXPIDLCString flavorStr; -+ currentFlavor->ToString(getter_Copies(flavorStr)); -+ -+ // Special case text/unicode since we can convert any -+ // string into text/unicode -+ if (!strcmp(flavorStr, kUnicodeMime)) { -+ gchar* new_text = wait_for_text(clipboard); -+ if (new_text) { -+ // Convert utf-8 into our unicode format. -+ NS_ConvertUTF8toUTF16 ucs2string(new_text); -+ data = (guchar *)ToNewUnicode(ucs2string); -+ length = ucs2string.Length() * 2; -+ g_free(new_text); -+ foundData = PR_TRUE; -+ foundFlavor = kUnicodeMime; -+ break; -+ } -+ // If the type was text/unicode and we couldn't get -+ // text off the clipboard, run the next loop -+ // iteration. -+ continue; -+ } -+ -+ // For images, we must wrap the data in an nsIInputStream then return instead of break, -+ // because that code below won't help us. -+ if (!strcmp(flavorStr, kJPEGImageMime) || !strcmp(flavorStr, kPNGImageMime) || !strcmp(flavorStr, kGIFImageMime)) { -+ GdkAtom atom; -+ if (!strcmp(flavorStr, kJPEGImageMime)) // This is image/jpg, but X only understands image/jpeg -+ atom = gdk_atom_intern("image/jpeg", FALSE); -+ else -+ atom = gdk_atom_intern(flavorStr, FALSE); -+ -+ GtkSelectionData *selectionData = wait_for_contents(clipboard, atom); -+ if (!selectionData) -+ continue; -+ -+ nsCOMPtr byteStream; -+ NS_NewByteInputStream(getter_AddRefs(byteStream), (const char*)selectionData->data, -+ selectionData->length, NS_ASSIGNMENT_COPY); -+ aTransferable->SetTransferData(flavorStr, byteStream, sizeof(nsIInputStream*)); -+ gtk_selection_data_free(selectionData); -+ return NS_OK; -+ } -+ -+ // Get the atom for this type and try to request it off -+ // the clipboard. -+ GdkAtom atom = gdk_atom_intern(flavorStr, FALSE); -+ GtkSelectionData *selectionData; -+ selectionData = wait_for_contents(clipboard, atom); -+ if (selectionData) { -+ length = selectionData->length; -+ // Special case text/html since we can convert into UCS2 -+ if (!strcmp(flavorStr, kHTMLMime)) { -+ PRUnichar* htmlBody= nsnull; -+ PRInt32 htmlBodyLen = 0; -+ // Convert text/html into our unicode format -+ ConvertHTMLtoUCS2((guchar *)selectionData->data, length, -+ &htmlBody, htmlBodyLen); -+ if (!htmlBodyLen) -+ break; -+ data = (guchar *)htmlBody; -+ length = htmlBodyLen * 2; -+ } else { -+ data = (guchar *)nsMemory::Alloc(length); -+ if (!data) -+ break; -+ memcpy(data, selectionData->data, length); -+ } -+ foundData = PR_TRUE; -+ foundFlavor = flavorStr; -+ break; -+ } -+ } -+ } -+ -+ if (foundData) { -+ nsCOMPtr wrapper; -+ nsPrimitiveHelpers::CreatePrimitiveForData(foundFlavor.get(), -+ data, length, -+ getter_AddRefs(wrapper)); -+ aTransferable->SetTransferData(foundFlavor.get(), -+ wrapper, length); -+ } -+ -+ if (data) -+ nsMemory::Free(data); -+ -+ return NS_OK; -+} -+ -+NS_IMETHODIMP -+nsClipboard::EmptyClipboard(PRInt32 aWhichClipboard) -+{ -+ if (aWhichClipboard == kSelectionClipboard) { -+ if (mSelectionOwner) { -+ mSelectionOwner->LosingOwnership(mSelectionTransferable); -+ mSelectionOwner = nsnull; -+ } -+ mSelectionTransferable = nsnull; -+ } -+ else { -+ if (mGlobalOwner) { -+ mGlobalOwner->LosingOwnership(mGlobalTransferable); -+ mGlobalOwner = nsnull; -+ } -+ mGlobalTransferable = nsnull; -+ } -+ -+ return NS_OK; -+} -+ -+NS_IMETHODIMP -+nsClipboard::HasDataMatchingFlavors(const char** aFlavorList, PRUint32 aLength, -+ PRInt32 aWhichClipboard, PRBool *_retval) -+{ -+ if (!aFlavorList || !_retval) -+ return NS_ERROR_NULL_POINTER; -+ -+ *_retval = PR_FALSE; -+ -+ GtkSelectionData *selection_data = -+ GetTargets(GetSelectionAtom(aWhichClipboard)); -+ if (!selection_data) -+ return NS_OK; -+ -+ gint n_targets = 0; -+ GdkAtom *targets = NULL; -+ -+ if (!gtk_selection_data_get_targets(selection_data, -+ &targets, &n_targets) || -+ !n_targets) -+ return NS_OK; -+ -+ // Walk through the provided types and try to match it to a -+ // provided type. -+ for (PRUint32 i = 0; i < aLength && !*_retval; i++) { -+ // We special case text/unicode here. -+ if (!strcmp(aFlavorList[i], kUnicodeMime) && -+ gtk_selection_data_targets_include_text(selection_data)) { -+ *_retval = PR_TRUE; -+ break; -+ } -+ -+ for (PRInt32 j = 0; j < n_targets; j++) { -+ gchar *atom_name = gdk_atom_name(targets[j]); -+ if (!strcmp(atom_name, aFlavorList[i])) -+ *_retval = PR_TRUE; -+ -+ // X clipboard wants image/jpeg, not image/jpg -+ if (!strcmp(aFlavorList[i], kJPEGImageMime) && !strcmp(atom_name, "image/jpeg")) -+ *_retval = PR_TRUE; -+ -+ g_free(atom_name); -+ -+ if (*_retval) -+ break; -+ } -+ } -+ gtk_selection_data_free(selection_data); -+ g_free(targets); -+ -+ return NS_OK; -+} -+ -+NS_IMETHODIMP -+nsClipboard::SupportsSelectionClipboard(PRBool *_retval) -+{ -+ *_retval = PR_TRUE; // yeah, unix supports the selection clipboard -+ return NS_OK; -+} -+ -+/* static */ -+GdkAtom -+nsClipboard::GetSelectionAtom(PRInt32 aWhichClipboard) -+{ -+ if (aWhichClipboard == kGlobalClipboard) -+ return GDK_SELECTION_CLIPBOARD; -+ -+ return GDK_SELECTION_PRIMARY; -+} -+ -+/* static */ -+GtkSelectionData * -+nsClipboard::GetTargets(GdkAtom aWhichClipboard) -+{ -+ GtkClipboard *clipboard = gtk_clipboard_get(aWhichClipboard); -+ return wait_for_contents(clipboard, gdk_atom_intern("TARGETS", FALSE)); -+} -+ -+nsITransferable * -+nsClipboard::GetTransferable(PRInt32 aWhichClipboard) -+{ -+ nsITransferable *retval; -+ -+ if (aWhichClipboard == kSelectionClipboard) -+ retval = mSelectionTransferable.get(); -+ else -+ retval = mGlobalTransferable.get(); -+ -+ return retval; -+} -+ -+void -+nsClipboard::AddTarget(GdkAtom aName, GdkAtom aClipboard) -+{ -+ gtk_selection_add_target(mWidget, aClipboard, aName, 0); -+} -+ -+void -+nsClipboard::SelectionGetEvent (GtkWidget *aWidget, -+ GtkSelectionData *aSelectionData, -+ guint aTime) -+{ -+ // Someone has asked us to hand them something. The first thing -+ // that we want to do is see if that something includes text. If -+ // it does, try to give it text/unicode after converting it to -+ // utf-8. -+ -+ PRInt32 whichClipboard; -+ -+ // which clipboard? -+ if (aSelectionData->selection == GDK_SELECTION_PRIMARY) -+ whichClipboard = kSelectionClipboard; -+ else if (aSelectionData->selection == GDK_SELECTION_CLIPBOARD) -+ whichClipboard = kGlobalClipboard; -+ else -+ return; // THAT AIN'T NO CLIPBOARD I EVER HEARD OF -+ -+ nsCOMPtr trans = GetTransferable(whichClipboard); -+ -+ nsresult rv; -+ nsCOMPtr item; -+ PRUint32 len; -+ -+ // Check to see if the selection data includes any of the string -+ // types that we support. -+ if (aSelectionData->target == gdk_atom_intern ("STRING", FALSE) || -+ aSelectionData->target == gdk_atom_intern ("TEXT", FALSE) || -+ aSelectionData->target == gdk_atom_intern ("COMPOUND_TEXT", FALSE) || -+ aSelectionData->target == gdk_atom_intern ("UTF8_STRING", FALSE)) { -+ // Try to convert our internal type into a text string. Get -+ // the transferable for this clipboard and try to get the -+ // text/unicode type for it. -+ rv = trans->GetTransferData("text/unicode", getter_AddRefs(item), -+ &len); -+ if (!item || NS_FAILED(rv)) -+ return; -+ -+ nsCOMPtr wideString; -+ wideString = do_QueryInterface(item); -+ if (!wideString) -+ return; -+ -+ nsAutoString ucs2string; -+ wideString->GetData(ucs2string); -+ char *utf8string = ToNewUTF8String(ucs2string); -+ if (!utf8string) -+ return; -+ -+ gtk_selection_data_set_text (aSelectionData, utf8string, -+ strlen(utf8string)); -+ -+ nsMemory::Free(utf8string); -+ return; -+ } -+ -+ // Try to match up the selection data target to something our -+ // transferable provides. -+ gchar *target_name = gdk_atom_name(aSelectionData->target); -+ if (!target_name) -+ return; -+ -+ rv = trans->GetTransferData(target_name, getter_AddRefs(item), &len); -+ // nothing found? -+ if (!item || NS_FAILED(rv)) { -+ g_free(target_name); -+ return; -+ } -+ -+ void *primitive_data = nsnull; -+ nsPrimitiveHelpers::CreateDataFromPrimitive(target_name, item, -+ &primitive_data, len); -+ -+ if (primitive_data) { -+ // Check to see if the selection data is text/html -+ if (aSelectionData->target == gdk_atom_intern (kHTMLMime, FALSE)) { -+ /* -+ * "text/html" can be encoded UCS2. It is recommended that -+ * documents transmitted as UCS2 always begin with a ZERO-WIDTH -+ * NON-BREAKING SPACE character (hexadecimal FEFF, also called -+ * Byte Order Mark (BOM)). Adding BOM can help other app to -+ * detect mozilla use UCS2 encoding when copy-paste. -+ */ -+ guchar *buffer = (guchar *) -+ nsMemory::Alloc((len * sizeof(guchar)) + sizeof(PRUnichar)); -+ if (!buffer) -+ return; -+ PRUnichar prefix = 0xFEFF; -+ memcpy(buffer, &prefix, sizeof(prefix)); -+ memcpy(buffer + sizeof(prefix), primitive_data, len); -+ nsMemory::Free((guchar *)primitive_data); -+ primitive_data = (guchar *)buffer; -+ len += sizeof(prefix); -+ } -+ -+ gtk_selection_data_set(aSelectionData, aSelectionData->target, -+ 8, /* 8 bits in a unit */ -+ (const guchar *)primitive_data, len); -+ nsMemory::Free(primitive_data); -+ } -+ -+ g_free(target_name); -+ -+} -+ -+void -+nsClipboard::SelectionClearEvent (GtkWidget *aWidget, -+ GdkEventSelection *aEvent) -+{ -+ PRInt32 whichClipboard; -+ -+ // which clipboard? -+ if (aEvent->selection == GDK_SELECTION_PRIMARY) -+ whichClipboard = kSelectionClipboard; -+ else if (aEvent->selection == GDK_SELECTION_CLIPBOARD) -+ whichClipboard = kGlobalClipboard; -+ else -+ return; // THAT AIN'T NO CLIPBOARD I EVER HEARD OF -+ -+ EmptyClipboard(whichClipboard); -+} -+ -+void -+invisible_selection_get_cb (GtkWidget *aWidget, -+ GtkSelectionData *aSelectionData, -+ guint aTime, -+ guint aInfo, -+ nsClipboard *aClipboard) -+{ -+ aClipboard->SelectionGetEvent(aWidget, aSelectionData, aTime); -+} -+ -+gboolean -+selection_clear_event_cb (GtkWidget *aWidget, -+ GdkEventSelection *aEvent, -+ nsClipboard *aClipboard) -+{ -+ aClipboard->SelectionClearEvent(aWidget, aEvent); -+ return TRUE; -+} -+ -+/* -+ * when copy-paste, mozilla wants data encoded using UCS2, -+ * other app such as StarOffice use "text/html"(RFC2854). -+ * This function convert data(got from GTK clipboard) -+ * to data mozilla wanted. -+ * -+ * data from GTK clipboard can be 3 forms: -+ * 1. From current mozilla -+ * "text/html", charset = utf-16 -+ * 2. From old version mozilla or mozilla-based app -+ * content("body" only), charset = utf-16 -+ * 3. From other app who use "text/html" when copy-paste -+ * "text/html", has "charset" info -+ * -+ * data : got from GTK clipboard -+ * dataLength: got from GTK clipboard -+ * body : pass to Mozilla -+ * bodyLength: pass to Mozilla -+ */ -+void ConvertHTMLtoUCS2(guchar * data, PRInt32 dataLength, -+ PRUnichar** unicodeData, PRInt32& outUnicodeLen) -+{ -+ nsCAutoString charset; -+ GetHTMLCharset(data, dataLength, charset);// get charset of HTML -+ if (charset.EqualsLiteral("UTF-16")) {//current mozilla -+ outUnicodeLen = (dataLength / 2) - 1; -+ *unicodeData = reinterpret_cast -+ (nsMemory::Alloc((outUnicodeLen + sizeof('\0')) * -+ sizeof(PRUnichar))); -+ if (*unicodeData) { -+ memcpy(*unicodeData, data + sizeof(PRUnichar), -+ outUnicodeLen * sizeof(PRUnichar)); -+ (*unicodeData)[outUnicodeLen] = '\0'; -+ } -+ } else if (charset.EqualsLiteral("UNKNOWN")) { -+ outUnicodeLen = 0; -+ return; -+ } else { -+ // app which use "text/html" to copy&paste -+ nsCOMPtr decoder; -+ nsresult rv; -+ // get the decoder -+ nsCOMPtr ccm = -+ do_GetService(NS_CHARSETCONVERTERMANAGER_CONTRACTID, &rv); -+ if (NS_FAILED(rv)) { -+#ifdef DEBUG_CLIPBOARD -+ g_print(" can't get CHARSET CONVERTER MANAGER service\n"); -+#endif -+ outUnicodeLen = 0; -+ return; -+ } -+ rv = ccm->GetUnicodeDecoder(charset.get(), getter_AddRefs(decoder)); -+ if (NS_FAILED(rv)) { -+#ifdef DEBUG_CLIPBOARD -+ g_print(" get unicode decoder error\n"); -+#endif -+ outUnicodeLen = 0; -+ return; -+ } -+ // converting -+ decoder->GetMaxLength((const char *)data, dataLength, &outUnicodeLen); -+ // |outUnicodeLen| is number of chars -+ if (outUnicodeLen) { -+ *unicodeData = reinterpret_cast -+ (nsMemory::Alloc((outUnicodeLen + sizeof('\0')) * -+ sizeof(PRUnichar))); -+ if (*unicodeData) { -+ PRInt32 numberTmp = dataLength; -+ decoder->Convert((const char *)data, &numberTmp, -+ *unicodeData, &outUnicodeLen); -+#ifdef DEBUG_CLIPBOARD -+ if (numberTmp != dataLength) -+ printf("didn't consume all the bytes\n"); -+#endif -+ // null terminate. Convert() doesn't do it for us -+ (*unicodeData)[outUnicodeLen] = '\0'; -+ } -+ } // if valid length -+ } -+} -+ -+/* -+ * get "charset" information from clipboard data -+ * return value can be: -+ * 1. "UTF-16": mozilla or "text/html" with "charset=utf-16" -+ * 2. "UNKNOWN": mozilla can't detect what encode it use -+ * 3. other: "text/html" with other charset than utf-16 -+ */ -+void GetHTMLCharset(guchar * data, PRInt32 dataLength, nsCString& str) -+{ -+ // if detect "FFFE" or "FEFF", assume UTF-16 -+ PRUnichar* beginChar = (PRUnichar*)data; -+ if ((beginChar[0] == 0xFFFE) || (beginChar[0] == 0xFEFF)) { -+ str.AssignLiteral("UTF-16"); -+ return; -+ } -+ // no "FFFE" and "FEFF", assume ASCII first to find "charset" info -+ const nsDependentCString htmlStr((const char *)data, dataLength); -+ nsACString::const_iterator start, end; -+ htmlStr.BeginReading(start); -+ htmlStr.EndReading(end); -+ nsACString::const_iterator valueStart(start), valueEnd(start); -+ -+ if (CaseInsensitiveFindInReadable( -+ NS_LITERAL_CSTRING("CONTENT=\"text/html;"), -+ start, end)) { -+ start = end; -+ htmlStr.EndReading(end); -+ -+ if (CaseInsensitiveFindInReadable( -+ NS_LITERAL_CSTRING("charset="), -+ start, end)) { -+ valueStart = end; -+ start = end; -+ htmlStr.EndReading(end); -+ -+ if (FindCharInReadable('"', start, end)) -+ valueEnd = start; -+ } -+ } -+ // find "charset" in HTML -+ if (valueStart != valueEnd) { -+ str = Substring(valueStart, valueEnd); -+ ToUpperCase(str); -+#ifdef DEBUG_CLIPBOARD -+ printf("Charset of HTML = %s\n", charsetUpperStr.get()); -+#endif -+ return; -+ } -+ str.AssignLiteral("UNKNOWN"); -+} -+ -+static void -+DispatchSelectionNotifyEvent(GtkWidget *widget, XEvent *xevent) -+{ -+ GdkEvent event; -+ event.selection.type = GDK_SELECTION_NOTIFY; -+ event.selection.window = widget->window; -+ event.selection.selection = gdk_x11_xatom_to_atom(xevent->xselection.selection); -+ event.selection.target = gdk_x11_xatom_to_atom(xevent->xselection.target); -+ event.selection.property = gdk_x11_xatom_to_atom(xevent->xselection.property); -+ event.selection.time = xevent->xselection.time; -+ -+ gtk_widget_event(widget, &event); -+} -+ -+static void -+DispatchPropertyNotifyEvent(GtkWidget *widget, XEvent *xevent) -+{ -+ if (((GdkWindowObject *) widget->window)->event_mask & GDK_PROPERTY_CHANGE_MASK) { -+ GdkEvent event; -+ event.property.type = GDK_PROPERTY_NOTIFY; -+ event.property.window = widget->window; -+ event.property.atom = gdk_x11_xatom_to_atom(xevent->xproperty.atom); -+ event.property.time = xevent->xproperty.time; -+ event.property.state = xevent->xproperty.state; -+ -+ gtk_widget_event(widget, &event); -+ } -+} -+ -+struct checkEventContext -+{ -+ GtkWidget *cbWidget; -+ Atom selAtom; -+}; -+ -+static Bool -+checkEventProc(Display *display, XEvent *event, XPointer arg) -+{ -+ checkEventContext *context = (checkEventContext *) arg; -+ -+ if (event->xany.type == SelectionNotify || -+ (event->xany.type == PropertyNotify && -+ event->xproperty.atom == context->selAtom)) { -+ -+ GdkWindow *cbWindow = gdk_window_lookup(event->xany.window); -+ if (cbWindow) { -+ GtkWidget *cbWidget = NULL; -+ gdk_window_get_user_data(cbWindow, (gpointer *)&cbWidget); -+ if (cbWidget && GTK_IS_WIDGET(cbWidget)) { -+ context->cbWidget = cbWidget; -+ return True; -+ } -+ } -+ } -+ -+ return False; -+} -+ -+// Idle timeout for receiving selection and property notify events (microsec) -+static const int kClipboardTimeout = 500000; -+ -+static void -+wait_for_retrieval(GtkClipboard *clipboard, retrieval_context *r_context) -+{ -+ if (r_context->completed) // the request completed synchronously -+ return; -+ -+ Display *xDisplay = GDK_DISPLAY(); -+ checkEventContext context; -+ context.cbWidget = NULL; -+ context.selAtom = gdk_x11_atom_to_xatom(gdk_atom_intern("GDK_SELECTION", -+ FALSE)); -+ -+ // Send X events which are relevant to the ongoing selection retrieval -+ // to the clipboard widget. Wait until either the operation completes, or -+ // we hit our timeout. All other X events remain queued. -+ -+ int select_result; -+ -+#ifdef POLL_WITH_XCONNECTIONNUMBER -+ struct pollfd fds[1]; -+ fds[0].fd = XConnectionNumber(xDisplay); -+ fds[0].events = POLLIN; -+#else -+ int cnumber = ConnectionNumber(xDisplay); -+ fd_set select_set; -+ FD_ZERO(&select_set); -+ FD_SET(cnumber, &select_set); -+ ++cnumber; -+ struct timeval tv; -+#endif -+ -+ do { -+ XEvent xevent; -+ -+ while (XCheckIfEvent(xDisplay, &xevent, checkEventProc, -+ (XPointer) &context)) { -+ -+ if (xevent.xany.type == SelectionNotify) -+ DispatchSelectionNotifyEvent(context.cbWidget, &xevent); -+ else -+ DispatchPropertyNotifyEvent(context.cbWidget, &xevent); -+ -+ if (r_context->completed) -+ return; -+ } -+ -+#ifdef POLL_WITH_XCONNECTIONNUMBER -+ select_result = poll(fds, 1, kClipboardTimeout / 1000); -+#else -+ tv.tv_sec = 0; -+ tv.tv_usec = kClipboardTimeout; -+ select_result = select(cnumber, &select_set, NULL, NULL, &tv); -+#endif -+ } while (select_result == 1); -+ -+#ifdef DEBUG_CLIPBOARD -+ printf("exceeded clipboard timeout\n"); -+#endif -+} -+ -+static void -+clipboard_contents_received(GtkClipboard *clipboard, -+ GtkSelectionData *selection_data, -+ gpointer data) -+{ -+ retrieval_context *context = static_cast(data); -+ context->completed = PR_TRUE; -+ -+ if (selection_data->length >= 0) -+ context->data = gtk_selection_data_copy(selection_data); -+} -+ -+ -+static GtkSelectionData * -+wait_for_contents(GtkClipboard *clipboard, GdkAtom target) -+{ -+ retrieval_context context; -+ gtk_clipboard_request_contents(clipboard, target, -+ clipboard_contents_received, -+ &context); -+ -+ wait_for_retrieval(clipboard, &context); -+ return static_cast(context.data); -+} -+ -+static void -+clipboard_text_received(GtkClipboard *clipboard, -+ const gchar *text, -+ gpointer data) -+{ -+ retrieval_context *context = static_cast(data); -+ context->completed = PR_TRUE; -+ context->data = g_strdup(text); -+} -+ -+static gchar * -+wait_for_text(GtkClipboard *clipboard) -+{ -+ retrieval_context context; -+ gtk_clipboard_request_text(clipboard, clipboard_text_received, &context); -+ -+ wait_for_retrieval(clipboard, &context); -+ return static_cast(context.data); -+} -Index: offscreen/widget/src/headless/nsClipboard.h -=================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ offscreen/widget/src/headless/nsClipboard.h 2009-06-12 14:14:05.000000000 +0100 -@@ -0,0 +1,93 @@ -+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -+/* vim:expandtab:shiftwidth=4:tabstop=4: -+ */ -+/* ***** BEGIN LICENSE BLOCK ***** -+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1 -+ * -+ * The contents of this file are subject to the Mozilla Public License Version -+ * 1.1 (the "License"); you may not use this file except in compliance with -+ * the License. You may obtain a copy of the License at -+ * http://www.mozilla.org/MPL/ -+ * -+ * Software distributed under the License is distributed on an "AS IS" basis, -+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License -+ * for the specific language governing rights and limitations under the -+ * License. -+ * -+ * The Original Code is mozilla.org code. -+ * -+ * The Initial Developer of the Original Code is Christopher Blizzard -+ * . Portions created by the Initial Developer -+ * are Copyright (C) 2001 the Initial Developer. All Rights Reserved. -+ * -+ * Contributor(s): -+ * -+ * Alternatively, the contents of this file may be used under the terms of -+ * either the GNU General Public License Version 2 or later (the "GPL"), or -+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), -+ * in which case the provisions of the GPL or the LGPL are applicable instead -+ * of those above. If you wish to allow use of your version of this file only -+ * under the terms of either the GPL or the LGPL, and not to allow others to -+ * use your version of this file under the terms of the MPL, indicate your -+ * decision by deleting the provisions above and replace them with the notice -+ * and other provisions required by the GPL or the LGPL. If you do not delete -+ * the provisions above, a recipient may use your version of this file under -+ * the terms of any one of the MPL, the GPL or the LGPL. -+ * -+ * ***** END LICENSE BLOCK ***** */ -+ -+#ifndef __nsClipboard_h_ -+#define __nsClipboard_h_ -+ -+#include "nsIClipboard.h" -+#include "nsClipboardPrivacyHandler.h" -+#include "nsAutoPtr.h" -+#include -+ -+class nsClipboard : public nsIClipboard -+{ -+public: -+ nsClipboard(); -+ virtual ~nsClipboard(); -+ -+ NS_DECL_ISUPPORTS -+ -+ NS_DECL_NSICLIPBOARD -+ -+ // Make sure we are initialized, called from the factory -+ // constructor -+ nsresult Init (void); -+ // Someone requested the selection from the hidden widget -+ void SelectionGetEvent (GtkWidget *aWidget, -+ GtkSelectionData *aSelectionData, -+ guint aTime); -+ void SelectionClearEvent (GtkWidget *aWidget, -+ GdkEventSelection *aEvent); -+ -+ -+private: -+ // Utility methods -+ static GdkAtom GetSelectionAtom (PRInt32 aWhichClipboard); -+ static GtkSelectionData *GetTargets (GdkAtom aWhichClipboard); -+ -+ // Get our hands on the correct transferable, given a specific -+ // clipboard -+ nsITransferable *GetTransferable (PRInt32 aWhichClipboard); -+ -+ // Add a target type to the hidden widget -+ void AddTarget (GdkAtom aName, -+ GdkAtom aClipboard); -+ -+ // The hidden widget where we do all of our operations -+ GtkWidget *mWidget; -+ // Hang on to our owners and transferables so we can transfer data -+ // when asked. -+ nsCOMPtr mSelectionOwner; -+ nsCOMPtr mGlobalOwner; -+ nsCOMPtr mSelectionTransferable; -+ nsCOMPtr mGlobalTransferable; -+ nsRefPtr mPrivacyHandler; -+ -+}; -+ -+#endif /* __nsClipboard_h_ */ -Index: offscreen/widget/src/headless/nsIImageToPixbuf.h -=================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ offscreen/widget/src/headless/nsIImageToPixbuf.h 2009-06-12 14:14:05.000000000 +0100 -@@ -0,0 +1,62 @@ -+/* ***** BEGIN LICENSE BLOCK ***** -+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1 -+ * -+ * The contents of this file are subject to the Mozilla Public License Version -+ * 1.1 (the "License"); you may not use this file except in compliance with -+ * the License. You may obtain a copy of the License at -+ * http://www.mozilla.org/MPL/ -+ * -+ * Software distributed under the License is distributed on an "AS IS" basis, -+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License -+ * for the specific language governing rights and limitations under the -+ * License. -+ * -+ * The Original Code is mozilla.org widget code. -+ * -+ * The Initial Developer of the Original Code is -+ * Christian Biesinger . -+ * Portions created by the Initial Developer are Copyright (C) 2006 -+ * the Initial Developer. All Rights Reserved. -+ * -+ * Contributor(s): -+ * -+ * Alternatively, the contents of this file may be used under the terms of -+ * either the GNU General Public License Version 2 or later (the "GPL"), or -+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), -+ * in which case the provisions of the GPL or the LGPL are applicable instead -+ * of those above. If you wish to allow use of your version of this file only -+ * under the terms of either the GPL or the LGPL, and not to allow others to -+ * use your version of this file under the terms of the MPL, indicate your -+ * decision by deleting the provisions above and replace them with the notice -+ * and other provisions required by the GPL or the LGPL. If you do not delete -+ * the provisions above, a recipient may use your version of this file under -+ * the terms of any one of the MPL, the GPL or the LGPL. -+ * -+ * ***** END LICENSE BLOCK ***** */ -+ -+#ifndef NSIIMAGETOPIXBUF_H_ -+#define NSIIMAGETOPIXBUF_H_ -+ -+#include "nsISupports.h" -+ -+// dfa4ac93-83f2-4ab8-9b2a-0ff7022aebe2 -+#define NSIIMAGETOPIXBUF_IID \ -+{ 0xdfa4ac93, 0x83f2, 0x4ab8, \ -+ { 0x9b, 0x2a, 0x0f, 0xf7, 0x02, 0x2a, 0xeb, 0xe2 } } -+ -+class nsIImage; -+typedef struct _GdkPixbuf GdkPixbuf; -+ -+/** -+ * An interface that allows converting an nsIImage to a GdkPixbuf*. -+ */ -+class nsIImageToPixbuf : public nsISupports { -+ public: -+ NS_DECLARE_STATIC_IID_ACCESSOR(NSIIMAGETOPIXBUF_IID) -+ -+ NS_IMETHOD_(GdkPixbuf*) ConvertImageToPixbuf(nsIImage* aImage) = 0; -+}; -+ -+NS_DEFINE_STATIC_IID_ACCESSOR(nsIImageToPixbuf, NSIIMAGETOPIXBUF_IID) -+ -+#endif -Index: offscreen/widget/src/headless/nsImageToPixbuf.cpp -=================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ offscreen/widget/src/headless/nsImageToPixbuf.cpp 2009-06-12 14:14:05.000000000 +0100 -@@ -0,0 +1,196 @@ -+/* vim:set sw=4 sts=4 et cin: */ -+/* ***** BEGIN LICENSE BLOCK ***** -+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1 -+ * -+ * The contents of this file are subject to the Mozilla Public License Version -+ * 1.1 (the "License"); you may not use this file except in compliance with -+ * the License. You may obtain a copy of the License at -+ * http://www.mozilla.org/MPL/ -+ * -+ * Software distributed under the License is distributed on an "AS IS" basis, -+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License -+ * for the specific language governing rights and limitations under the -+ * License. -+ * -+ * The Original Code is mozilla.org widget code. -+ * -+ * The Initial Developer of the Original Code is -+ * Christian Biesinger . -+ * Portions created by the Initial Developer are Copyright (C) 2006 -+ * the Initial Developer. All Rights Reserved. -+ * -+ * Contributor(s): -+ * -+ * Alternatively, the contents of this file may be used under the terms of -+ * either the GNU General Public License Version 2 or later (the "GPL"), or -+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), -+ * in which case the provisions of the GPL or the LGPL are applicable instead -+ * of those above. If you wish to allow use of your version of this file only -+ * under the terms of either the GPL or the LGPL, and not to allow others to -+ * use your version of this file under the terms of the MPL, indicate your -+ * decision by deleting the provisions above and replace them with the notice -+ * and other provisions required by the GPL or the LGPL. If you do not delete -+ * the provisions above, a recipient may use your version of this file under -+ * the terms of any one of the MPL, the GPL or the LGPL. -+ * -+ * ***** END LICENSE BLOCK ***** */ -+ -+#include -+ -+#include "gfxASurface.h" -+#include "gfxImageSurface.h" -+#include "gfxContext.h" -+ -+#include "nsIImage.h" -+ -+#include "nsAutoPtr.h" -+ -+#include "nsImageToPixbuf.h" -+ -+NS_IMPL_ISUPPORTS1(nsImageToPixbuf, nsIImageToPixbuf) -+ -+inline unsigned char -+unpremultiply (unsigned char color, -+ unsigned char alpha) -+{ -+ if (alpha == 0) -+ return 0; -+ // plus alpha/2 to round instead of truncate -+ return (color * 255 + alpha / 2) / alpha; -+} -+ -+NS_IMETHODIMP_(GdkPixbuf*) -+nsImageToPixbuf::ConvertImageToPixbuf(nsIImage* aImage) -+{ -+ return ImageToPixbuf(aImage); -+} -+ -+GdkPixbuf* -+nsImageToPixbuf::ImageToPixbuf(nsIImage* aImage) -+{ -+ PRInt32 width = aImage->GetWidth(), -+ height = aImage->GetHeight(); -+ -+ nsRefPtr pattern; -+ aImage->GetPattern(getter_AddRefs(pattern)); -+ -+ return PatternToPixbuf(pattern, width, height); -+} -+ -+GdkPixbuf* -+nsImageToPixbuf::ImgSurfaceToPixbuf(gfxImageSurface* aImgSurface, PRInt32 aWidth, PRInt32 aHeight) -+{ -+ GdkPixbuf* pixbuf = gdk_pixbuf_new(GDK_COLORSPACE_RGB, PR_TRUE, 8, -+ aWidth, aHeight); -+ if (!pixbuf) -+ return nsnull; -+ -+ PRUint32 rowstride = gdk_pixbuf_get_rowstride (pixbuf); -+ guchar* pixels = gdk_pixbuf_get_pixels (pixbuf); -+ -+ long cairoStride = aImgSurface->Stride(); -+ unsigned char* cairoData = aImgSurface->Data(); -+ -+ gfxASurface::gfxImageFormat format = aImgSurface->Format(); -+ -+ for (PRInt32 row = 0; row < aHeight; ++row) { -+ for (PRInt32 col = 0; col < aWidth; ++col) { -+ guchar* pixel = pixels + row * rowstride + 4 * col; -+ -+ PRUint32* cairoPixel = reinterpret_cast -+ ((cairoData + row * cairoStride + 4 * col)); -+ -+ if (format == gfxASurface::ImageFormatARGB32) { -+ const PRUint8 a = (*cairoPixel >> 24) & 0xFF; -+ const PRUint8 r = unpremultiply((*cairoPixel >> 16) & 0xFF, a); -+ const PRUint8 g = unpremultiply((*cairoPixel >> 8) & 0xFF, a); -+ const PRUint8 b = unpremultiply((*cairoPixel >> 0) & 0xFF, a); -+ -+ *pixel++ = r; -+ *pixel++ = g; -+ *pixel++ = b; -+ *pixel++ = a; -+ } else { -+ NS_ASSERTION(format == gfxASurface::ImageFormatRGB24, -+ "unexpected format"); -+ const PRUint8 r = (*cairoPixel >> 16) & 0xFF; -+ const PRUint8 g = (*cairoPixel >> 8) & 0xFF; -+ const PRUint8 b = (*cairoPixel >> 0) & 0xFF; -+ -+ *pixel++ = r; -+ *pixel++ = g; -+ *pixel++ = b; -+ *pixel++ = 0xFF; // A -+ } -+ } -+ } -+ -+ return pixbuf; -+} -+ -+GdkPixbuf* -+nsImageToPixbuf::SurfaceToPixbuf(gfxASurface* aSurface, PRInt32 aWidth, PRInt32 aHeight) -+{ -+ if (aSurface->CairoStatus()) { -+ NS_ERROR("invalid surface"); -+ return nsnull; -+ } -+ -+ nsRefPtr imgSurface; -+ if (aSurface->GetType() == gfxASurface::SurfaceTypeImage) { -+ imgSurface = static_cast -+ (static_cast(aSurface)); -+ } else { -+ imgSurface = new gfxImageSurface(gfxIntSize(aWidth, aHeight), -+ gfxImageSurface::ImageFormatARGB32); -+ -+ if (!imgSurface) -+ return nsnull; -+ -+ nsRefPtr context = new gfxContext(imgSurface); -+ if (!context) -+ return nsnull; -+ -+ context->SetOperator(gfxContext::OPERATOR_SOURCE); -+ context->SetSource(aSurface); -+ context->Paint(); -+ } -+ -+ return ImgSurfaceToPixbuf(imgSurface, aWidth, aHeight); -+} -+ -+GdkPixbuf* -+nsImageToPixbuf::PatternToPixbuf(gfxPattern* aPattern, PRInt32 aWidth, PRInt32 aHeight) -+{ -+ if (aPattern->CairoStatus()) { -+ NS_ERROR("invalid pattern"); -+ return nsnull; -+ } -+ -+ nsRefPtr imgSurface; -+ if (aPattern->GetType() == gfxPattern::PATTERN_SURFACE) { -+ nsRefPtr surface = aPattern->GetSurface(); -+ if (surface->GetType() == gfxASurface::SurfaceTypeImage) { -+ imgSurface = static_cast -+ (static_cast(surface.get())); -+ } -+ } -+ -+ if (!imgSurface) { -+ imgSurface = new gfxImageSurface(gfxIntSize(aWidth, aHeight), -+ gfxImageSurface::ImageFormatARGB32); -+ -+ if (!imgSurface) -+ return nsnull; -+ -+ nsRefPtr context = new gfxContext(imgSurface); -+ if (!context) -+ return nsnull; -+ -+ context->SetOperator(gfxContext::OPERATOR_SOURCE); -+ context->SetPattern(aPattern); -+ context->Paint(); -+ } -+ -+ return ImgSurfaceToPixbuf(imgSurface, aWidth, aHeight); -+} -Index: offscreen/widget/src/headless/nsImageToPixbuf.h -=================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ offscreen/widget/src/headless/nsImageToPixbuf.h 2009-06-12 14:14:05.000000000 +0100 -@@ -0,0 +1,71 @@ -+/* vim:set sw=4 sts=4 et cin: */ -+/* ***** BEGIN LICENSE BLOCK ***** -+ * Version: MPL 1.1/GPL 2.0/LGPL 2.1 -+ * -+ * The contents of this file are subject to the Mozilla Public License Version -+ * 1.1 (the "License"); you may not use this file except in compliance with -+ * the License. You may obtain a copy of the License at -+ * http://www.mozilla.org/MPL/ -+ * -+ * Software distributed under the License is distributed on an "AS IS" basis, -+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License -+ * for the specific language governing rights and limitations under the -+ * License. -+ * -+ * The Original Code is mozilla.org widget code. -+ * -+ * The Initial Developer of the Original Code is -+ * Christian Biesinger . -+ * Portions created by the Initial Developer are Copyright (C) 2006 -+ * the Initial Developer. All Rights Reserved. -+ * -+ * Contributor(s): -+ * -+ * Alternatively, the contents of this file may be used under the terms of -+ * either the GNU General Public License Version 2 or later (the "GPL"), or -+ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), -+ * in which case the provisions of the GPL or the LGPL are applicable instead -+ * of those above. If you wish to allow use of your version of this file only -+ * under the terms of either the GPL or the LGPL, and not to allow others to -+ * use your version of this file under the terms of the MPL, indicate your -+ * decision by deleting the provisions above and replace them with the notice -+ * and other provisions required by the GPL or the LGPL. If you do not delete -+ * the provisions above, a recipient may use your version of this file under -+ * the terms of any one of the MPL, the GPL or the LGPL. -+ * -+ * ***** END LICENSE BLOCK ***** */ -+ -+#ifndef NSIMAGETOPIXBUF_H_ -+#define NSIMAGETOPIXBUF_H_ -+ -+#include "nsIImageToPixbuf.h" -+ -+class gfxASurface; -+class gfxPattern; -+class gfxImageSurface; -+ -+class nsImageToPixbuf : public nsIImageToPixbuf { -+ public: -+ NS_DECL_ISUPPORTS -+ NS_IMETHOD_(GdkPixbuf*) ConvertImageToPixbuf(nsIImage* aImage); -+ -+ // Friendlier version of ConvertImageToPixbuf for callers inside of -+ // widget -+ static GdkPixbuf* ImageToPixbuf(nsIImage* aImage); -+ static GdkPixbuf* SurfaceToPixbuf(gfxASurface* aSurface, -+ PRInt32 aWidth, PRInt32 aHeight); -+ static GdkPixbuf* PatternToPixbuf(gfxPattern* aPattern, -+ PRInt32 aWidth, PRInt32 aHeight); -+ private: -+ static GdkPixbuf* ImgSurfaceToPixbuf(gfxImageSurface* aImgSurface, -+ PRInt32 aWidth, PRInt32 aHeight); -+ ~nsImageToPixbuf() {} -+}; -+ -+ -+// fc2389b8-c650-4093-9e42-b05e5f0685b7 -+#define NS_IMAGE_TO_PIXBUF_CID \ -+{ 0xfc2389b8, 0xc650, 0x4093, \ -+ { 0x9e, 0x42, 0xb0, 0x5e, 0x5f, 0x06, 0x85, 0xb7 } } -+ -+#endif -Index: offscreen/widget/src/headless/nsWidgetFactory.cpp -=================================================================== ---- offscreen.orig/widget/src/headless/nsWidgetFactory.cpp 2009-06-12 14:08:56.000000000 +0100 -+++ offscreen/widget/src/headless/nsWidgetFactory.cpp 2009-06-12 14:15:24.000000000 +0100 -@@ -46,6 +46,10 @@ - #include "nsWindow.h" - #include "nsTransferable.h" - #include "nsHTMLFormatConverter.h" -+#ifdef MOZ_X11 -+#include "nsClipboardHelper.h" -+#include "nsClipboard.h" -+#endif - #include "nsSound.h" - #include "nsBidiKeyboard.h" - #include "nsScreenManagerHeadless.h" -@@ -66,6 +70,10 @@ - NS_GENERIC_FACTORY_CONSTRUCTOR(nsTransferable) - NS_GENERIC_FACTORY_CONSTRUCTOR(nsBidiKeyboard) - NS_GENERIC_FACTORY_CONSTRUCTOR(nsHTMLFormatConverter) -+#ifdef MOZ_X11 -+NS_GENERIC_FACTORY_CONSTRUCTOR(nsClipboardHelper) -+NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsClipboard, Init) -+#endif - NS_GENERIC_FACTORY_CONSTRUCTOR(nsSound) - NS_GENERIC_FACTORY_CONSTRUCTOR(nsScreenManagerHeadless) - //NS_GENERIC_FACTORY_CONSTRUCTOR(nsImageToPixbuf) -@@ -142,6 +150,16 @@ - NS_TRANSFERABLE_CID, - "@mozilla.org/widget/transferable;1", - nsTransferableConstructor }, -+#ifdef MOZ_X11 -+ { "Gtk Clipboard", -+ NS_CLIPBOARD_CID, -+ "@mozilla.org/widget/clipboard;1", -+ nsClipboardConstructor }, -+ { "Clipboard Helper", -+ NS_CLIPBOARDHELPER_CID, -+ "@mozilla.org/widget/clipboardhelper;1", -+ nsClipboardHelperConstructor }, -+#endif - { "HTML Format Converter", - NS_HTMLFORMATCONVERTER_CID, - "@mozilla.org/widget/htmlformatconverter;1", diff --git a/meta/packages/mozilla-headless/mozilla-headless/autoconffix.patch b/meta/packages/mozilla-headless/mozilla-headless/autoconffix.patch deleted file mode 100644 index 2874b0d832..0000000000 --- a/meta/packages/mozilla-headless/mozilla-headless/autoconffix.patch +++ /dev/null @@ -1,66 +0,0 @@ -Fixes to enable building with latest autoconf and automake - -RP 2/2/10 - -Index: offscreen/js/ctypes/libffi/configure.ac -=================================================================== ---- offscreen.orig/js/ctypes/libffi/configure.ac 2010-02-02 19:53:16.753906134 +0000 -+++ offscreen/js/ctypes/libffi/configure.ac 2010-02-02 19:53:21.895155509 +0000 -@@ -17,10 +17,10 @@ - # the wrong, non-multilib-adjusted value will be used in multilibs. - # As a side effect, we have to subst CFLAGS ourselves. - --m4_rename([_AC_ARG_VAR_PRECIOUS],[real_PRECIOUS]) -+m4_rename_force([_AC_ARG_VAR_PRECIOUS],[real_PRECIOUS]) - m4_define([_AC_ARG_VAR_PRECIOUS],[]) - AC_PROG_CC --m4_rename([real_PRECIOUS],[_AC_ARG_VAR_PRECIOUS]) -+m4_rename_force([real_PRECIOUS],[_AC_ARG_VAR_PRECIOUS]) - - AC_SUBST(CFLAGS) - -Index: offscreen/modules/libpr0n/build/Makefile.in -=================================================================== ---- offscreen.orig/modules/libpr0n/build/Makefile.in 2010-02-02 19:53:16.783906873 +0000 -+++ offscreen/modules/libpr0n/build/Makefile.in 2010-02-02 19:53:21.895155509 +0000 -@@ -92,6 +92,7 @@ - - export:: - @{ \ -+ \ - $(foreach d,$(filter-out icon,$(MOZ_IMG_DECODERS)), \ - echo "#define IMG_BUILD_DECODER_${d}";) \ - $(foreach d,$(MOZ_IMG_ENCODERS), \ -Index: offscreen/configure.in -=================================================================== ---- offscreen.orig/configure.in 2010-02-02 19:53:28.493904163 +0000 -+++ offscreen/configure.in 2010-02-02 16:33:09.000000000 +0000 -@@ -3250,11 +3250,7 @@ - dnl ======================================================== - AC_CHECK_LIB(Xext, XShmCreateImage, _HAVE_XSHM_XEXT=1,, - $XLIBS $XEXT_LIBS) -- AC_CHECK_HEADER(X11/extensions/XShm.h) -- if test "$ac_cv_header_X11_extensions_XShm_h" = "yes" && -- test -n "$_HAVE_XSHM_XEXT"; then -- AC_DEFINE(HAVE_XSHM) -- fi -+ AC_DEFINE(HAVE_XSHM) - - dnl ======================================================== - dnl = Check for XIE -@@ -8120,15 +8116,7 @@ - fi # COMPILE_ENVIRONMENT - - if test "$USE_FC_FREETYPE"; then -- if test "$COMPILE_ENVIRONMENT"; then -- _SAVE_CPPFLAGS="$CPPFLAGS" -- CPPFLAGS="$CPPFLAGS $FT2_CFLAGS" -- AC_CHECK_HEADERS(fontconfig/fcfreetype.h, , -- [AC_MSG_ERROR(Can't find header fontconfig/fcfreetype.h.)]) -- CPPFLAGS="$_SAVE_CPPFLAGS" -- else - AC_DEFINE(HAVE_FONTCONFIG_FCFREETYPE_H) -- fi - fi - - dnl Set various defines and substitutions diff --git a/meta/packages/mozilla-headless/mozilla-headless/buildfixhack.patch b/meta/packages/mozilla-headless/mozilla-headless/buildfixhack.patch deleted file mode 100644 index 31fc40f28b..0000000000 --- a/meta/packages/mozilla-headless/mozilla-headless/buildfixhack.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -r ad8be5166ccd layout/generic/nsFrame.h ---- a/layout/generic/nsFrame.h Tue Nov 17 19:24:56 2009 +0000 -+++ b/layout/generic/nsFrame.h Thu Nov 19 12:33:38 2009 +0000 -@@ -151,7 +151,7 @@ - // Left undefined; nsFrame objects are never allocated from the heap. - void* operator new(size_t sz) CPP_THROW_NEW; - --protected: -+public: - // Overridden to prevent the global delete from being called, since - // the memory came out of an arena instead of the heap. - // - - diff --git a/meta/packages/mozilla-headless/mozilla-headless/configurefix-1a622cb7c384.patch b/meta/packages/mozilla-headless/mozilla-headless/configurefix-1a622cb7c384.patch deleted file mode 100644 index d31f91a42d..0000000000 --- a/meta/packages/mozilla-headless/mozilla-headless/configurefix-1a622cb7c384.patch +++ /dev/null @@ -1,764 +0,0 @@ -Index: offscreen/configure.in -=================================================================== ---- offscreen.orig/configure.in 2009-06-12 14:15:55.000000000 +0100 -+++ offscreen/configure.in 2009-06-12 14:15:55.000000000 +0100 -@@ -62,7 +62,6 @@ - - AC_PREREQ(2.13) - AC_INIT(config/config.mk) --AC_CONFIG_AUX_DIR(${srcdir}/build/autoconf) - AC_CANONICAL_SYSTEM - TARGET_CPU="${target_cpu}" - TARGET_VENDOR="${target_vendor}" -@@ -103,7 +102,6 @@ - _SUBDIR_HOST_CFLAGS="$HOST_CFLAGS" - _SUBDIR_HOST_CXXFLAGS="$HOST_CXXFLAGS" - _SUBDIR_HOST_LDFLAGS="$HOST_LDFLAGS" --_SUBDIR_CONFIG_ARGS="$ac_configure_args" - - dnl Set the version number of the libs included with mozilla - dnl ======================================================== -@@ -135,6 +133,9 @@ - - MSMANIFEST_TOOL= - -+ac_cv_have_usable_wchar_v2=no -+ac_cv_have_usable_wchar_option_v2=no -+ - dnl Set various checks - dnl ======================================================== - MISSING_X= -@@ -285,7 +286,7 @@ - ;; - esac - --if test -n "$CROSS_COMPILE" && test "$target" != "$host"; then -+ - echo "cross compiling from $host to $target" - cross_compiling=yes - -@@ -323,7 +324,7 @@ - - AC_MSG_CHECKING([whether the host c compiler ($HOST_CC $HOST_CFLAGS $HOST_LDFLAGS) works]) - AC_TRY_COMPILE([], [return(0);], -- [ac_cv_prog_hostcc_works=1 AC_MSG_RESULT([yes])], -+ [ac_cv_prog_hostcc_works=1; AC_MSG_RESULT([yes])], - AC_MSG_ERROR([installation or configuration problem: host compiler $HOST_CC cannot create executables.]) ) - - CC="$HOST_CXX" -@@ -331,7 +332,7 @@ - - AC_MSG_CHECKING([whether the host c++ compiler ($HOST_CXX $HOST_CXXFLAGS $HOST_LDFLAGS) works]) - AC_TRY_COMPILE([], [return(0);], -- [ac_cv_prog_hostcxx_works=1 AC_MSG_RESULT([yes])], -+ [ac_cv_prog_hostcxx_works=1; AC_MSG_RESULT([yes])], - AC_MSG_ERROR([installation or configuration problem: host compiler $HOST_CXX cannot create executables.]) ) - - CC=$_SAVE_CC -@@ -352,7 +353,7 @@ - ;; - esac - -- AC_CHECK_PROGS(CC, $CC "${target_alias}-gcc" "${target}-gcc", :) -+ CC="${target_alias}-gcc" - unset ac_cv_prog_CC - AC_PROG_CC - AC_CHECK_PROGS(CXX, $CXX "${target_alias}-g++" "${target}-g++", :) -@@ -376,37 +377,6 @@ - AC_CHECK_PROGS(STRIP, $STRIP "${target_alias}-strip" "${target}-strip", :) - AC_CHECK_PROGS(WINDRES, $WINDRES "${target_alias}-windres" "${target}-windres", :) - AC_DEFINE(CROSS_COMPILE) --else -- AC_PROG_CC -- AC_PROG_CXX -- AC_PROG_RANLIB -- MOZ_PATH_PROGS(AS, $AS as, $CC) -- AC_CHECK_PROGS(AR, ar, :) -- AC_CHECK_PROGS(LD, ld, :) -- AC_CHECK_PROGS(STRIP, strip, :) -- AC_CHECK_PROGS(WINDRES, windres, :) -- if test -z "$HOST_CC"; then -- HOST_CC="$CC" -- fi -- if test -z "$HOST_CFLAGS"; then -- HOST_CFLAGS="$CFLAGS" -- fi -- if test -z "$HOST_CXX"; then -- HOST_CXX="$CXX" -- fi -- if test -z "$HOST_CXXFLAGS"; then -- HOST_CXXFLAGS="$CXXFLAGS" -- fi -- if test -z "$HOST_LDFLAGS"; then -- HOST_LDFLAGS="$LDFLAGS" -- fi -- if test -z "$HOST_RANLIB"; then -- HOST_RANLIB="$RANLIB" -- fi -- if test -z "$HOST_AR"; then -- HOST_AR="$AR" -- fi --fi - - GNU_AS= - GNU_LD= -@@ -1606,6 +1576,7 @@ - ' - - dnl test that the macros actually work: -+ac_cv_static_assertion_macros_work="yes" - AC_MSG_CHECKING(that static assertion macros used in autoconf tests work) - AC_CACHE_VAL(ac_cv_static_assertion_macros_work, - [AC_LANG_SAVE -@@ -2767,9 +2738,13 @@ - AC_LANG_C - AC_HEADER_STDC - AC_C_CONST -+ac_cv_type_mode_t=yes - AC_TYPE_MODE_T -+ac_cv_type_off_t=yes - AC_TYPE_OFF_T -+ac_cv_type_pid_t=yes - AC_TYPE_PID_T -+ac_cv_type_size_t=yes - AC_TYPE_SIZE_T - AC_STRUCT_ST_BLKSIZE - AC_MSG_CHECKING(for siginfo_t) -@@ -3152,19 +3127,9 @@ - dnl We don't want to link against libm or libpthread on Darwin since - dnl they both are just symlinks to libSystem and explicitly linking - dnl against libSystem causes issues when debugging (see bug 299601). --case $target in --*-darwin*) -- ;; --*-beos*) -- ;; --*) - AC_CHECK_LIB(m, atan) - AC_CHECK_LIB(dl, dlopen, -- AC_CHECK_HEADER(dlfcn.h, -- LIBS="-ldl $LIBS" -- AC_DEFINE(HAVE_LIBDL))) -- ;; --esac -+ AC_DEFINE(HAVE_LIBDL)) - - _SAVE_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -D_GNU_SOURCE" -@@ -7007,18 +6972,13 @@ - - # Demangle only for debug or trace-malloc builds - MOZ_DEMANGLE_SYMBOLS= --if test "$HAVE_DEMANGLE" -a "$HAVE_GCC3_ABI" && test "$MOZ_DEBUG" -o "$NS_TRACE_MALLOC"; then -- MOZ_DEMANGLE_SYMBOLS=1 -- AC_DEFINE(MOZ_DEMANGLE_SYMBOLS) --fi -+ - AC_SUBST(MOZ_DEMANGLE_SYMBOLS) - - dnl ======================================================== - dnl = Support for gcc stack unwinding (from gcc 3.3) - dnl ======================================================== --if test "$HAVE_GCC3_ABI" && test -z "$SKIP_LIBRARY_CHECKS"; then -- AC_CHECK_HEADER(unwind.h, AC_CHECK_FUNCS(_Unwind_Backtrace)) --fi -+ - - dnl ======================================================== - dnl = -@@ -7530,10 +7490,7 @@ - dnl if no gtk/libIDL1 or gtk2/libIDL2 combination was found, fall back - dnl to either libIDL1 or libIDL2. - if test -z "$_LIBIDL_FOUND"; then -- AM_PATH_LIBIDL($LIBIDL_VERSION,_LIBIDL_FOUND=1) -- if test -z "$_LIBIDL_FOUND"; then - PKG_CHECK_MODULES(LIBIDL, libIDL-2.0 >= 0.8.0,_LIBIDL_FOUND=1) -- fi - fi - dnl - dnl If we don't have a libIDL config program & not cross-compiling, -@@ -7605,13 +7562,7 @@ - fi - - if test -z "$SKIP_PATH_CHECKS"; then --if test -z "${GLIB_CFLAGS}" || test -z "${GLIB_LIBS}" ; then -- if test "$MOZ_ENABLE_GTK2" || test "$USE_ELF_DYNSTR_GC" || test "$MOZ_ENABLE_HEADLESS"; then - PKG_CHECK_MODULES(GLIB, glib-2.0 >= 1.3.7 gobject-2.0) -- else -- AM_PATH_GLIB(${GLIB_VERSION}) -- fi --fi - fi - - if test -z "${GLIB_GMODULE_LIBS}" -a -n "${GLIB_CONFIG}"; then -@@ -8457,10 +8408,7 @@ - HAVE_WCRTOMB - " - --AC_CONFIG_HEADER( --netwerk/necko-config.h --xpcom/xpcom-config.h --xpcom/xpcom-private.h -+AC_CONFIG_HEADER(netwerk/necko-config.h xpcom/xpcom-config.h xpcom/xpcom-private.h - ) - - # Save the defines header file before autoconf removes it. -@@ -8519,31 +8467,11 @@ - dnl To add new Makefiles, edit allmakefiles.sh. - dnl allmakefiles.sh sets the variable, MAKEFILES. - . ${srcdir}/allmakefiles.sh --dnl --dnl Run a perl script to quickly create the makefiles. --dnl If it succeeds, it outputs a shell command to set CONFIG_FILES --dnl for the files it cannot handle correctly. This way, config.status --dnl will handle these files. --dnl If it fails, nothing is set and config.status will run as usual. --dnl --dnl This does not change the $MAKEFILES variable. --dnl --dnl OpenVMS gets a line overflow on the long eval command, so use a temp file. --dnl --if test -z "${AS_PERL}"; then --echo $MAKEFILES | ${PERL} $srcdir/build/autoconf/acoutput-fast.pl > conftest.sh --else --echo $MAKEFILES | ${PERL} $srcdir/build/autoconf/acoutput-fast.pl -nowrap --cygwin-srcdir=$srcdir > conftest.sh --fi --. ./conftest.sh --rm conftest.sh - - echo $MAKEFILES > unallmakefiles - - mv -f config/autoconf.mk config/autoconf.mk.orig 2> /dev/null - --AC_OUTPUT($MAKEFILES) -- - dnl Prevent the regeneration of cairo-features.h forcing rebuilds of gfx stuff - if test "$CAIRO_FEATURES_H"; then - if cmp -s $CAIRO_FEATURES_H "$CAIRO_FEATURES_H".orig; then -@@ -8569,14 +8497,14 @@ - HOST_LDFLAGS="$_SUBDIR_HOST_LDFLAGS" - RC= - --unset MAKEFILES --unset CONFIG_FILES -+#unset MAKEFILES -+#unset CONFIG_FILES - - # No need to run subconfigures when building with LIBXUL_SDK_DIR - if test "$COMPILE_ENVIRONMENT" -a -z "$LIBXUL_SDK_DIR"; then - - if test -z "$MOZ_NATIVE_NSPR"; then -- ac_configure_args="$_SUBDIR_CONFIG_ARGS --with-dist-prefix=$MOZ_BUILD_ROOT/dist --with-mozilla" -+ ac_configure_args="$ac_configure_args --with-dist-prefix=$MOZ_BUILD_ROOT/dist --with-mozilla" - if test -z "$MOZ_DEBUG"; then - ac_configure_args="$ac_configure_args --disable-debug" - fi -@@ -8592,8 +8520,7 @@ - if test -n "$USE_ARM_KUSER"; then - ac_configure_args="$ac_configure_args --with-arm-kuser" - fi -- AC_OUTPUT_SUBDIRS(nsprpub) -- ac_configure_args="$_SUBDIR_CONFIG_ARGS" -+ AC_CONFIG_SUBDIRS(nsprpub) - fi - - if test -z "$MOZ_NATIVE_NSPR"; then -@@ -8610,7 +8537,6 @@ - - # Run the SpiderMonkey 'configure' script. - dist=$MOZ_BUILD_ROOT/dist --ac_configure_args="$_SUBDIR_CONFIG_ARGS" - ac_configure_args="$ac_configure_args --enable-threadsafe" - if test -z "$MOZ_NATIVE_NSPR"; then - ac_configure_args="$ac_configure_args --with-nspr-cflags='$NSPR_CFLAGS'" -@@ -8627,11 +8553,14 @@ - export MOZ_MEMORY_LDFLAGS - fi - fi --AC_OUTPUT_SUBDIRS(js/src) --ac_configure_args="$_SUBDIR_CONFIG_ARGS" -+AC_CONFIG_SUBDIRS(js/src) - - fi # COMPILE_ENVIRONMENT && !LIBXUL_SDK_DIR - -+m4_pattern_allow(AS_BIN) -+ -+AC_OUTPUT($MAKEFILES) -+ - dnl Prevent the regeneration of autoconf.mk forcing rebuilds of the world - dnl Needs to be at the end to respect possible changes from NSPR configure - if cmp -s config/autoconf.mk config/autoconf.mk.orig; then -Index: offscreen/js/src/configure.in -=================================================================== ---- offscreen.orig/js/src/configure.in 2009-06-12 14:15:55.000000000 +0100 -+++ offscreen/js/src/configure.in 2009-06-12 14:15:55.000000000 +0100 -@@ -62,7 +62,6 @@ - - AC_PREREQ(2.13) - AC_INIT(jsapi.h) --AC_CONFIG_AUX_DIR(${srcdir}/build/autoconf) - AC_CONFIG_HEADER(js-config.h) - AC_CANONICAL_SYSTEM - TARGET_CPU="${target_cpu}" -@@ -101,6 +100,9 @@ - _SUBDIR_HOST_LDFLAGS="$HOST_LDFLAGS" - _SUBDIR_CONFIG_ARGS="$ac_configure_args" - -+ac_cv_have_usable_wchar_v2=no -+ac_cv_have_usable_wchar_option_v2=no -+ - dnl Set the version number of the libs included with mozilla - dnl ======================================================== - NSPR_VERSION=4 -@@ -113,6 +115,8 @@ - - MSMANIFEST_TOOL= - -+m4_pattern_allow(AS_BIN) -+ - dnl Set various checks - dnl ======================================================== - MISSING_X= -@@ -198,7 +202,7 @@ - - if test "$COMPILE_ENVIRONMENT"; then - --if test "$target" != "$host"; then -+ - echo "cross compiling from $host to $target" - - _SAVE_CC="$CC" -@@ -235,7 +239,7 @@ - - AC_MSG_CHECKING([whether the host c compiler ($HOST_CC $HOST_CFLAGS $HOST_LDFLAGS) works]) - AC_TRY_COMPILE([], [return(0);], -- [ac_cv_prog_hostcc_works=1 AC_MSG_RESULT([yes])], -+ [ac_cv_prog_hostcc_works=1; AC_MSG_RESULT([yes])], - AC_MSG_ERROR([installation or configuration problem: host compiler $HOST_CC cannot create executables.]) ) - - CC="$HOST_CXX" -@@ -243,7 +247,7 @@ - - AC_MSG_CHECKING([whether the host c++ compiler ($HOST_CXX $HOST_CXXFLAGS $HOST_LDFLAGS) works]) - AC_TRY_COMPILE([], [return(0);], -- [ac_cv_prog_hostcxx_works=1 AC_MSG_RESULT([yes])], -+ [ac_cv_prog_hostcxx_works=1; AC_MSG_RESULT([yes])], - AC_MSG_ERROR([installation or configuration problem: host compiler $HOST_CXX cannot create executables.]) ) - - CC=$_SAVE_CC -@@ -298,7 +302,7 @@ - ;; - esac - -- AC_CHECK_PROGS(CC, $CC "${target_alias}-gcc" "${target}-gcc", :) -+ CC="${target_alias}-gcc" - unset ac_cv_prog_CC - AC_PROG_CC - AC_CHECK_PROGS(CXX, $CXX "${target_alias}-g++" "${target}-g++", :) -@@ -328,37 +332,6 @@ - dnl able to run ppc code in a translated environment, making a cross - dnl compiler appear native. So we override that here. - cross_compiling=yes --else -- AC_PROG_CC -- AC_PROG_CXX -- AC_PROG_RANLIB -- MOZ_PATH_PROGS(AS, $AS as, $CC) -- AC_CHECK_PROGS(AR, ar, :) -- AC_CHECK_PROGS(LD, ld, :) -- AC_CHECK_PROGS(STRIP, strip, :) -- AC_CHECK_PROGS(WINDRES, windres, :) -- if test -z "$HOST_CC"; then -- HOST_CC="$CC" -- fi -- if test -z "$HOST_CFLAGS"; then -- HOST_CFLAGS="$CFLAGS" -- fi -- if test -z "$HOST_CXX"; then -- HOST_CXX="$CXX" -- fi -- if test -z "$HOST_CXXFLAGS"; then -- HOST_CXXFLAGS="$CXXFLAGS" -- fi -- if test -z "$HOST_LDFLAGS"; then -- HOST_LDFLAGS="$LDFLAGS" -- fi -- if test -z "$HOST_RANLIB"; then -- HOST_RANLIB="$RANLIB" -- fi -- if test -z "$HOST_AR"; then -- HOST_AR="$AR" -- fi --fi - - GNU_AS= - GNU_LD= -@@ -1424,6 +1397,8 @@ - fi # GNU_CC - fi # COMPILE_ENVIRONMENT - -+ac_cv_static_assertion_macros_work=yes -+ - dnl ================================================================= - dnl Set up and test static assertion macros used to avoid AC_TRY_RUN, - dnl which is bad when cross compiling. -@@ -2579,9 +2554,13 @@ - AC_LANG_C - AC_HEADER_STDC - AC_C_CONST -+ac_cv_type_mode_t=yes - AC_TYPE_MODE_T -+ac_cv_type_off_t=yes - AC_TYPE_OFF_T -+ac_cv_type_pid_t=yes - AC_TYPE_PID_T -+ac_cv_type_size_t=yes - AC_TYPE_SIZE_T - AC_STRUCT_ST_BLKSIZE - AC_MSG_CHECKING(for siginfo_t) -@@ -2606,7 +2585,8 @@ - - AC_CHECK_HEADER(stdint.h) - if test "$ac_cv_header_stdint_h" = yes; then -- AC_DEFINE(JS_HAVE_STDINT_H) -+ AC_DEFINE(JS_HAVE_STDINT_H, 1, [have stdint.h]) -+ AC_DEFINE(HAVE_STDINT_H) - else - dnl We'll figure them out for ourselves. List more likely types - dnl earlier. If we ever really encounter a size for which none of -@@ -3004,10 +2984,7 @@ - ;; - *) - AC_CHECK_LIB(m, atan) -- AC_CHECK_LIB(dl, dlopen, -- AC_CHECK_HEADER(dlfcn.h, -- LIBS="-ldl $LIBS" -- AC_DEFINE(HAVE_LIBDL))) -+ AC_CHECK_LIB(dl, dlopen, AC_DEFINE(HAVE_LIBDL)) - ;; - esac - -@@ -3903,6 +3880,7 @@ - [ --with-nspr-libs=LIBS Pass LIBS to LD when linking code that uses NSPR. - See --with-nspr-cflags for more details.], - NSPR_LIBS=$withval) -+$NSPR_LIBS="$NSPR_LIBS -L$(LIBXUL_DIST)/sdk/lib" - AC_SUBST(NSPR_CFLAGS) - AC_SUBST(NSPR_LIBS) - -@@ -4512,18 +4490,11 @@ - - # Demangle only for debug or trace-malloc builds - MOZ_DEMANGLE_SYMBOLS= --if test "$HAVE_DEMANGLE" -a "$HAVE_GCC3_ABI" && test "$MOZ_DEBUG" -o "$NS_TRACE_MALLOC"; then -- MOZ_DEMANGLE_SYMBOLS=1 -- AC_DEFINE(MOZ_DEMANGLE_SYMBOLS) --fi - AC_SUBST(MOZ_DEMANGLE_SYMBOLS) - - dnl ======================================================== - dnl = Support for gcc stack unwinding (from gcc 3.3) - dnl ======================================================== --if test "$HAVE_GCC3_ABI" && test -z "$SKIP_LIBRARY_CHECKS"; then -- AC_CHECK_HEADER(unwind.h, AC_CHECK_FUNCS(_Unwind_Backtrace)) --fi - - dnl ======================================================== - dnl = -@@ -5231,6 +5202,8 @@ - done - AC_SUBST(LIBS_PATH) - -+ -+ - dnl ======================================================== - dnl JavaScript shell - dnl ======================================================== -@@ -5371,3 +5344,4 @@ - # 'js-config' in Makefile.in. - AC_MSG_RESULT(invoking make to create js-config script) - $MAKE js-config -+ -Index: offscreen/nsprpub/configure.in -=================================================================== ---- offscreen.orig/nsprpub/configure.in 2009-06-12 14:15:55.000000000 +0100 -+++ offscreen/nsprpub/configure.in 2009-06-12 14:15:55.000000000 +0100 -@@ -42,7 +42,6 @@ - AC_PREREQ(2.12) - AC_INIT(config/libc_r.h) - --AC_CONFIG_AUX_DIR(${srcdir}/build/autoconf) - AC_CANONICAL_SYSTEM - - dnl ======================================================== -@@ -396,7 +395,7 @@ - dnl ======================================================== - dnl Checks for compilers. - dnl ======================================================== --if test "$target" != "$host"; then -+ - echo "cross compiling from $host to $target" - cross_compiling=yes - -@@ -423,7 +422,7 @@ - - AC_MSG_CHECKING([whether the $host compiler ($HOST_CC $HOST_CFLAGS $HOST_LDFLAGS) works]) - AC_TRY_COMPILE([], [return(0);], -- [ac_cv_prog_host_cc_works=1 AC_MSG_RESULT([yes])], -+ [ac_cv_prog_host_cc_works=1; AC_MSG_RESULT([yes])], - AC_MSG_ERROR([installation or configuration problem: $host compiler $HOST_CC cannot create executables.]) ) - - CC=$_SAVE_CC -@@ -444,7 +443,7 @@ - ;; - esac - -- AC_CHECK_PROGS(CC, $CC "${target_alias}-gcc" "${target}-gcc", echo) -+ CC="${target_alias}-gcc" - unset ac_cv_prog_CC - AC_PROG_CC - if test -n "$USE_CPLUS"; then -@@ -470,30 +469,6 @@ - AC_CHECK_PROGS(STRIP, $STRIP "${target_alias}-strip" "${target}-strip", echo) - AC_CHECK_PROGS(WINDRES, $WINDRES "${target_alias}-windres" "${target}-windres", echo) - --else -- AC_PROG_CC -- if test -n "$USE_CPLUS"; then -- if test "$CC" = "cl" -a -z "$CXX"; then -- CXX=$CC -- else -- AC_PROG_CXX -- fi -- fi -- AC_PROG_CPP -- AC_PROG_RANLIB -- AC_PATH_PROGS(AS, as, $CC) -- AC_PATH_PROGS(AR, ar, echo not_ar) -- AC_PATH_PROGS(LD, ld link, echo not_ld) -- AC_PATH_PROGS(STRIP, strip, echo not_strip) -- AC_PATH_PROGS(WINDRES, windres, echo not_windres) -- if test -z "$HOST_CC"; then -- HOST_CC="$CC" -- fi -- if test -z "$HOST_CFLAGS"; then -- HOST_CFLAGS="$CFLAGS" -- fi --fi -- - if test "$GCC" = "yes"; then - GNU_CC=1 - fi -@@ -514,11 +489,8 @@ - ;; - esac - --if test "$cross_compiling" = "yes"; then -+ - CROSS_COMPILE=1 --else -- CROSS_COMPILE= --fi - - dnl ======================================================== - dnl Check for gcc -pipe support -@@ -2283,10 +2255,7 @@ - *-darwin*|*-beos*) - ;; - *) -- AC_CHECK_LIB(dl, dlopen, -- AC_CHECK_HEADER(dlfcn.h, -- OS_LIBS="-ldl $OS_LIBS")) -- ;; -+ AC_CHECK_LIB(dl, dlopen) - esac - - -@@ -2904,6 +2873,8 @@ - dnl pr/tests/w16gui/Makefile - dnl tools/Makefile - -+m4_pattern_allow(AS_BIN) -+ - if test -z "$USE_PTHREADS" && test -z "$USE_BTHREADS"; then - MAKEFILES="$MAKEFILES pr/src/threads/combined/Makefile" - elif test -n "$USE_PTHREADS"; then -@@ -2919,3 +2890,5 @@ - echo $MAKEFILES > unallmakefiles - - AC_OUTPUT([$MAKEFILES], [chmod +x config/nspr-config]) -+ -+ -Index: offscreen/js/src/Makefile.in -=================================================================== ---- offscreen.orig/js/src/Makefile.in 2009-06-12 14:15:55.000000000 +0100 -+++ offscreen/js/src/Makefile.in 2009-06-12 14:15:55.000000000 +0100 -@@ -514,20 +514,8 @@ - - export:: jsautocfg.h - --ifeq (,$(CROSS_COMPILE)$(GNU_CC)$(filter-out WINNT,$(OS_ARCH))) - jsautocfg.h: - touch $@ --else --ifeq ($(OS_ARCH),WINCE) --jsautocfg.h: -- touch $@ --else --jsautocfg.h: jscpucfg$(HOST_BIN_SUFFIX) -- @rm -f $@ jsautocfg.tmp -- ./jscpucfg > jsautocfg.tmp -- mv jsautocfg.tmp $@ --endif --endif - - # jscpucfg is a strange target - # Needs to be built with the host compiler but needs to include -@@ -557,7 +545,7 @@ - echo no need to build jscpucfg $< - else - jscpucfg$(HOST_BIN_SUFFIX): jscpucfg.cpp Makefile.in -- $(HOST_CXX) $(HOST_CXXFLAGS) $(JSCPUCFG_DEFINES) $(DEFINES) $(NSPR_CFLAGS) $(HOST_OUTOPTION)$@ $< -+ $(HOST_CXX) $(HOST_CXXFLAGS) $(JSCPUCFG_DEFINES) $(DEFINES) -I$(DIST)/sdk/include $(NSPR_CFLAGS) $(HOST_OUTOPTION)$@ $< - endif - endif - -Index: offscreen/js/src/xpconnect/loader/mozJSComponentLoader.cpp -=================================================================== ---- offscreen.orig/js/src/xpconnect/loader/mozJSComponentLoader.cpp 2009-06-12 14:15:55.000000000 +0100 -+++ offscreen/js/src/xpconnect/loader/mozJSComponentLoader.cpp 2009-06-12 14:15:55.000000000 +0100 -@@ -47,6 +47,8 @@ - - #include - -+#include "mozilla-config.h" -+ - #include "prlog.h" - - #include "nsCOMPtr.h" -Index: offscreen/js/src/xpconnect/loader/mozJSSubScriptLoader.cpp -=================================================================== ---- offscreen.orig/js/src/xpconnect/loader/mozJSSubScriptLoader.cpp 2009-06-12 14:15:55.000000000 +0100 -+++ offscreen/js/src/xpconnect/loader/mozJSSubScriptLoader.cpp 2009-06-12 14:15:55.000000000 +0100 -@@ -39,6 +39,8 @@ - * - * ***** END LICENSE BLOCK ***** */ - -+#include "mozilla-config.h" -+ - #if !defined(XPCONNECT_STANDALONE) && !defined(NO_SUBSCRIPT_LOADER) - - #include "mozJSSubScriptLoader.h" -Index: offscreen/modules/lcms/include/icc34.h -=================================================================== ---- offscreen.orig/modules/lcms/include/icc34.h 2009-06-12 14:15:55.000000000 +0100 -+++ offscreen/modules/lcms/include/icc34.h 2009-06-12 14:15:55.000000000 +0100 -@@ -144,7 +144,7 @@ - */ - - --#ifdef PACKAGE_NAME -+#if 0 - /* - June 9, 2003, Adapted for use with configure by Bob Friesenhahn - Added the stupid check for autoconf by Marti Maria. -Index: offscreen/toolkit/mozapps/update/src/updater/Makefile.in -=================================================================== ---- offscreen.orig/toolkit/mozapps/update/src/updater/Makefile.in 2009-06-12 14:15:55.000000000 +0100 -+++ offscreen/toolkit/mozapps/update/src/updater/Makefile.in 2009-06-12 14:15:55.000000000 +0100 -@@ -60,7 +60,7 @@ - - LIBS += \ - $(DEPTH)/modules/libmar/src/$(LIB_PREFIX)mar.$(LIB_SUFFIX) \ -- $(BZ2_LIBS) \ -+ $(BZ2_LIBS) -lpthread \ - $(NULL) - - ifeq ($(OS_ARCH),WINNT) -Index: offscreen/xpcom/sample/program/Makefile.in -=================================================================== ---- offscreen.orig/xpcom/sample/program/Makefile.in 2009-06-12 14:15:55.000000000 +0100 -+++ offscreen/xpcom/sample/program/Makefile.in 2009-06-12 14:15:55.000000000 +0100 -@@ -57,7 +57,7 @@ - # that the application be linked against the XPCOM dynamic library or the NSPR - # dynamic libraries. - LIBS = \ -- $(XPCOM_STANDALONE_GLUE_LDOPTS) \ -+ $(XPCOM_STANDALONE_GLUE_LDOPTS) -ldl \ - $(NULL) - - # Need to link with CoreFoundation on Mac -Index: offscreen/xpcom/tools/registry/Makefile.in -=================================================================== ---- offscreen.orig/xpcom/tools/registry/Makefile.in 2009-06-12 14:15:55.000000000 +0100 -+++ offscreen/xpcom/tools/registry/Makefile.in 2009-06-12 14:15:55.000000000 +0100 -@@ -54,7 +54,7 @@ - SIMPLE_PROGRAMS = $(CPPSRCS:.cpp=$(BIN_SUFFIX)) - - LIBS = \ -- $(XPCOM_STANDALONE_GLUE_LDOPTS) \ -+ $(XPCOM_STANDALONE_GLUE_LDOPTS) -ldl \ - $(NULL) - - # Need to link with CoreFoundation on Mac -Index: offscreen/xulrunner/app/Makefile.in -=================================================================== ---- offscreen.orig/xulrunner/app/Makefile.in 2009-06-12 14:15:55.000000000 +0100 -+++ offscreen/xulrunner/app/Makefile.in 2009-06-12 14:15:55.000000000 +0100 -@@ -184,7 +184,7 @@ - RCFLAGS += -DXULRUNNER_ICO=\"$(DIST)/branding/xulrunner.ico\" -DDOCUMENT_ICO=\"$(DIST)/branding/document.ico\" - endif - --LIBS += $(JEMALLOC_LIBS) -+LIBS += $(JEMALLOC_LIBS) -lpthread -ldl - - include $(topsrcdir)/config/rules.mk - -Index: offscreen/xulrunner/stub/Makefile.in -=================================================================== ---- offscreen.orig/xulrunner/stub/Makefile.in 2009-06-12 14:15:55.000000000 +0100 -+++ offscreen/xulrunner/stub/Makefile.in 2009-06-12 14:15:55.000000000 +0100 -@@ -101,7 +101,7 @@ - endif - endif - --LIBS += $(JEMALLOC_LIBS) -+LIBS += $(JEMALLOC_LIBS) -lpthread -ldl - - include $(topsrcdir)/config/rules.mk - -Index: offscreen/modules/plugin/test/testplugin/Makefile.in -=================================================================== ---- offscreen.orig/modules/plugin/test/testplugin/Makefile.in 2009-06-12 14:15:55.000000000 +0100 -+++ offscreen/modules/plugin/test/testplugin/Makefile.in 2009-06-12 14:15:55.000000000 +0100 -@@ -63,9 +63,7 @@ - CMMSRCS = nptest_macosx.mm - endif - --ifeq ($(MOZ_WIDGET_TOOLKIT),gtk2) - CPPSRCS += nptest_gtk2.cpp --endif - - ifeq ($(MOZ_WIDGET_TOOLKIT),os2) - CPPSRCS += nptest_os2.cpp -Index: offscreen/js/src/aclocal.m4 -=================================================================== ---- offscreen.orig/js/src/aclocal.m4 2009-06-12 14:15:55.000000000 +0100 -+++ offscreen/js/src/aclocal.m4 2009-06-12 14:15:55.000000000 +0100 -@@ -9,4 +9,3 @@ - builtin(include, build/autoconf/moznbytetype.m4)dnl - builtin(include, build/autoconf/mozprog.m4)dnl - --MOZ_PROG_CHECKMSYS() -Index: offscreen/toolkit/toolkit-makefiles.sh -=================================================================== ---- offscreen.orig/toolkit/toolkit-makefiles.sh 2009-06-12 14:19:59.000000000 +0100 -+++ offscreen/toolkit/toolkit-makefiles.sh 2009-06-12 14:20:09.000000000 +0100 -@@ -342,7 +342,6 @@ - modules/plugin/sdk/samples/Makefile - modules/plugin/sdk/samples/common/Makefile - modules/plugin/sdk/samples/basic/windows/Makefile -- modules/plugin/sdk/samples/basic/unix/Makefile - modules/plugin/sdk/samples/winless/windows/Makefile - " - diff --git a/meta/packages/mozilla-headless/mozilla-headless/configurefix.patch b/meta/packages/mozilla-headless/mozilla-headless/configurefix.patch deleted file mode 100644 index 7ee1211f1a..0000000000 --- a/meta/packages/mozilla-headless/mozilla-headless/configurefix.patch +++ /dev/null @@ -1,774 +0,0 @@ -Index: offscreen/configure.in -=================================================================== ---- offscreen.orig/configure.in 2009-12-09 13:10:12.000000000 +0000 -+++ offscreen/configure.in 2009-12-09 13:38:51.000000000 +0000 -@@ -64,7 +64,6 @@ - - AC_PREREQ(2.13) - AC_INIT(config/config.mk) --AC_CONFIG_AUX_DIR(${srcdir}/build/autoconf) - AC_CANONICAL_SYSTEM - TARGET_CPU="${target_cpu}" - TARGET_VENDOR="${target_vendor}" -@@ -106,7 +105,6 @@ - _SUBDIR_HOST_CFLAGS="$HOST_CFLAGS" - _SUBDIR_HOST_CXXFLAGS="$HOST_CXXFLAGS" - _SUBDIR_HOST_LDFLAGS="$HOST_LDFLAGS" --_SUBDIR_CONFIG_ARGS="$ac_configure_args" - - dnl Set the version number of the libs included with mozilla - dnl ======================================================== -@@ -139,6 +137,9 @@ - - MSMANIFEST_TOOL= - -+ac_cv_have_usable_wchar_v2=no -+ac_cv_have_usable_wchar_option_v2=no -+ - dnl Set various checks - dnl ======================================================== - MISSING_X= -@@ -308,7 +309,7 @@ - ;; - esac - --if test -n "$CROSS_COMPILE" && test "$target" != "$host"; then -+ - echo "cross compiling from $host to $target" - cross_compiling=yes - -@@ -346,7 +347,7 @@ - - AC_MSG_CHECKING([whether the host c compiler ($HOST_CC $HOST_CFLAGS $HOST_LDFLAGS) works]) - AC_TRY_COMPILE([], [return(0);], -- [ac_cv_prog_hostcc_works=1 AC_MSG_RESULT([yes])], -+ [ac_cv_prog_hostcc_works=1; AC_MSG_RESULT([yes])], - AC_MSG_ERROR([installation or configuration problem: host compiler $HOST_CC cannot create executables.]) ) - - CC="$HOST_CXX" -@@ -354,7 +355,7 @@ - - AC_MSG_CHECKING([whether the host c++ compiler ($HOST_CXX $HOST_CXXFLAGS $HOST_LDFLAGS) works]) - AC_TRY_COMPILE([], [return(0);], -- [ac_cv_prog_hostcxx_works=1 AC_MSG_RESULT([yes])], -+ [ac_cv_prog_hostcxx_works=1; AC_MSG_RESULT([yes])], - AC_MSG_ERROR([installation or configuration problem: host compiler $HOST_CXX cannot create executables.]) ) - - CC=$_SAVE_CC -@@ -375,7 +376,7 @@ - ;; - esac - -- AC_CHECK_PROGS(CC, $CC "${target_alias}-gcc" "${target}-gcc", :) -+ CC="${target_alias}-gcc" - unset ac_cv_prog_CC - AC_PROG_CC - AC_CHECK_PROGS(CXX, $CXX "${target_alias}-g++" "${target}-g++", :) -@@ -399,37 +400,6 @@ - AC_CHECK_PROGS(STRIP, $STRIP "${target_alias}-strip" "${target}-strip", :) - AC_CHECK_PROGS(WINDRES, $WINDRES "${target_alias}-windres" "${target}-windres", :) - AC_DEFINE(CROSS_COMPILE) --else -- AC_PROG_CC -- AC_PROG_CXX -- AC_PROG_RANLIB -- MOZ_PATH_PROGS(AS, $AS as, $CC) -- AC_CHECK_PROGS(AR, ar, :) -- AC_CHECK_PROGS(LD, ld, :) -- AC_CHECK_PROGS(STRIP, strip, :) -- AC_CHECK_PROGS(WINDRES, windres, :) -- if test -z "$HOST_CC"; then -- HOST_CC="$CC" -- fi -- if test -z "$HOST_CFLAGS"; then -- HOST_CFLAGS="$CFLAGS" -- fi -- if test -z "$HOST_CXX"; then -- HOST_CXX="$CXX" -- fi -- if test -z "$HOST_CXXFLAGS"; then -- HOST_CXXFLAGS="$CXXFLAGS" -- fi -- if test -z "$HOST_LDFLAGS"; then -- HOST_LDFLAGS="$LDFLAGS" -- fi -- if test -z "$HOST_RANLIB"; then -- HOST_RANLIB="$RANLIB" -- fi -- if test -z "$HOST_AR"; then -- HOST_AR="$AR" -- fi --fi - - GNU_AS= - GNU_LD= -@@ -1586,6 +1556,7 @@ - ' - - dnl test that the macros actually work: -+ac_cv_static_assertion_macros_work="yes" - AC_MSG_CHECKING(that static assertion macros used in autoconf tests work) - AC_CACHE_VAL(ac_cv_static_assertion_macros_work, - [AC_LANG_SAVE -@@ -2770,9 +2741,13 @@ - AC_LANG_C - AC_HEADER_STDC - AC_C_CONST -+ac_cv_type_mode_t=yes - AC_TYPE_MODE_T -+ac_cv_type_off_t=yes - AC_TYPE_OFF_T -+ac_cv_type_pid_t=yes - AC_TYPE_PID_T -+ac_cv_type_size_t=yes - AC_TYPE_SIZE_T - AC_STRUCT_ST_BLKSIZE - AC_MSG_CHECKING(for siginfo_t) -@@ -3174,21 +3149,9 @@ - dnl We don't want to link against libm or libpthread on Darwin since - dnl they both are just symlinks to libSystem and explicitly linking - dnl against libSystem causes issues when debugging (see bug 299601). --case $target in --*-darwin*) -- ;; --*-beos*) -- ;; --*-os2*) -- ;; --*) - AC_CHECK_LIB(m, atan) - AC_CHECK_LIB(dl, dlopen, -- AC_CHECK_HEADER(dlfcn.h, -- LIBS="-ldl $LIBS" -- AC_DEFINE(HAVE_LIBDL))) -- ;; --esac -+ AC_DEFINE(HAVE_LIBDL)) - - _SAVE_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -D_GNU_SOURCE" -@@ -6889,18 +6852,13 @@ - - # Demangle only for debug or trace-malloc builds - MOZ_DEMANGLE_SYMBOLS= --if test "$HAVE_DEMANGLE" -a "$HAVE_GCC3_ABI" && test "$MOZ_DEBUG" -o "$NS_TRACE_MALLOC"; then -- MOZ_DEMANGLE_SYMBOLS=1 -- AC_DEFINE(MOZ_DEMANGLE_SYMBOLS) --fi -+ - AC_SUBST(MOZ_DEMANGLE_SYMBOLS) - - dnl ======================================================== - dnl = Support for gcc stack unwinding (from gcc 3.3) - dnl ======================================================== --if test "$HAVE_GCC3_ABI" && test -z "$SKIP_LIBRARY_CHECKS"; then -- AC_CHECK_HEADER(unwind.h, AC_CHECK_FUNCS(_Unwind_Backtrace)) --fi -+ - - dnl ======================================================== - dnl = -@@ -7420,10 +7378,7 @@ - dnl if no gtk/libIDL1 or gtk2/libIDL2 combination was found, fall back - dnl to either libIDL1 or libIDL2. - if test -z "$_LIBIDL_FOUND"; then -- AM_PATH_LIBIDL($LIBIDL_VERSION,_LIBIDL_FOUND=1) -- if test -z "$_LIBIDL_FOUND"; then - PKG_CHECK_MODULES(LIBIDL, libIDL-2.0 >= 0.8.0,_LIBIDL_FOUND=1) -- fi - fi - dnl - dnl If we don't have a libIDL config program & not cross-compiling, -@@ -7495,13 +7450,7 @@ - fi - - if test -z "$SKIP_PATH_CHECKS"; then --if test -z "${GLIB_CFLAGS}" || test -z "${GLIB_LIBS}" ; then -- if test "$MOZ_ENABLE_GTK2" || test "$USE_ELF_DYNSTR_GC" || test "$MOZ_ENABLE_HEADLESS"; then - PKG_CHECK_MODULES(GLIB, glib-2.0 >= 1.3.7 gobject-2.0) -- else -- AM_PATH_GLIB(${GLIB_VERSION}) -- fi --fi - fi - - if test -z "${GLIB_GMODULE_LIBS}" -a -n "${GLIB_CONFIG}"; then -@@ -8278,10 +8227,7 @@ - HAVE_WCRTOMB - " - --AC_CONFIG_HEADER( --netwerk/necko-config.h --xpcom/xpcom-config.h --xpcom/xpcom-private.h -+AC_CONFIG_HEADER(netwerk/necko-config.h xpcom/xpcom-config.h xpcom/xpcom-private.h - ) - - # Save the defines header file before autoconf removes it. -@@ -8340,31 +8286,11 @@ - dnl To add new Makefiles, edit allmakefiles.sh. - dnl allmakefiles.sh sets the variable, MAKEFILES. - . ${srcdir}/allmakefiles.sh --dnl --dnl Run a perl script to quickly create the makefiles. --dnl If it succeeds, it outputs a shell command to set CONFIG_FILES --dnl for the files it cannot handle correctly. This way, config.status --dnl will handle these files. --dnl If it fails, nothing is set and config.status will run as usual. --dnl --dnl This does not change the $MAKEFILES variable. --dnl --dnl OpenVMS gets a line overflow on the long eval command, so use a temp file. --dnl --if test -z "${AS_PERL}"; then --echo $MAKEFILES | ${PERL} $srcdir/build/autoconf/acoutput-fast.pl > conftest.sh --else --echo $MAKEFILES | ${PERL} $srcdir/build/autoconf/acoutput-fast.pl -nowrap --cygwin-srcdir=$srcdir > conftest.sh --fi --. ./conftest.sh --rm conftest.sh - - echo $MAKEFILES > unallmakefiles - - mv -f config/autoconf.mk config/autoconf.mk.orig 2> /dev/null - --AC_OUTPUT($MAKEFILES) -- - dnl Prevent the regeneration of cairo-features.h forcing rebuilds of gfx stuff - if test "$CAIRO_FEATURES_H"; then - if cmp -s $CAIRO_FEATURES_H "$CAIRO_FEATURES_H".orig; then -@@ -8390,14 +8316,14 @@ - HOST_LDFLAGS="$_SUBDIR_HOST_LDFLAGS" - RC= - --unset MAKEFILES --unset CONFIG_FILES -+#unset MAKEFILES -+#unset CONFIG_FILES - - # No need to run subconfigures when building with LIBXUL_SDK_DIR - if test "$COMPILE_ENVIRONMENT" -a -z "$LIBXUL_SDK_DIR"; then - - if test -z "$MOZ_NATIVE_NSPR"; then -- ac_configure_args="$_SUBDIR_CONFIG_ARGS --with-dist-prefix=$MOZ_BUILD_ROOT/dist --with-mozilla" -+ ac_configure_args="$ac_configure_args --with-dist-prefix=$MOZ_BUILD_ROOT/dist --with-mozilla" - if test -z "$MOZ_DEBUG"; then - ac_configure_args="$ac_configure_args --disable-debug" - fi -@@ -8413,8 +8339,7 @@ - if test -n "$USE_ARM_KUSER"; then - ac_configure_args="$ac_configure_args --with-arm-kuser" - fi -- AC_OUTPUT_SUBDIRS(nsprpub) -- ac_configure_args="$_SUBDIR_CONFIG_ARGS" -+ AC_CONFIG_SUBDIRS(nsprpub) - fi - - if test -z "$MOZ_NATIVE_NSPR"; then -@@ -8431,7 +8356,6 @@ - - # Run the SpiderMonkey 'configure' script. - dist=$MOZ_BUILD_ROOT/dist --ac_configure_args="$_SUBDIR_CONFIG_ARGS" - ac_configure_args="$ac_configure_args --enable-threadsafe" - if test -z "$MOZ_NATIVE_NSPR"; then - ac_configure_args="$ac_configure_args --with-nspr-cflags='$NSPR_CFLAGS'" -@@ -8448,8 +8372,7 @@ - export MOZ_MEMORY_LDFLAGS - fi - fi --AC_OUTPUT_SUBDIRS(js/src) --ac_configure_args="$_SUBDIR_CONFIG_ARGS" -+AC_CONFIG_SUBDIRS(js/src) - - # Build jsctypes on the platforms we can. - if test "$BUILD_CTYPES"; then -@@ -8465,20 +8388,14 @@ - if test -n "$CROSS_COMPILE"; then - ac_configure_args="$ac_configure_args --build=$build --host=$target" - fi -- if test "$SOLARIS_SUNPRO_CC"; then -- # Always use gcc for libffi on Solaris -- old_cache_file=$cache_file -- cache_file=js/ctypes/libffi/config.cache -- ac_configure_args="$ac_configure_args CC=gcc" -- AC_OUTPUT_SUBDIRS(js/ctypes/libffi) -- cache_file=$old_cache_file -- else -- AC_OUTPUT_SUBDIRS(js/ctypes/libffi) -- fi -- ac_configure_args="$_SUBDIR_CONFIG_ARGS" -+ AC_CONFIG_SUBDIRS(js/ctypes/libffi) - fi - fi - -+m4_pattern_allow(AS_BIN) -+ -+AC_OUTPUT($MAKEFILES) -+ - fi # COMPILE_ENVIRONMENT && !LIBXUL_SDK_DIR - - dnl Prevent the regeneration of autoconf.mk forcing rebuilds of the world -Index: offscreen/js/src/configure.in -=================================================================== ---- offscreen.orig/js/src/configure.in 2009-12-09 13:10:12.000000000 +0000 -+++ offscreen/js/src/configure.in 2009-12-09 13:38:51.000000000 +0000 -@@ -62,7 +62,6 @@ - - AC_PREREQ(2.13) - AC_INIT(jsapi.h) --AC_CONFIG_AUX_DIR(${srcdir}/build/autoconf) - AC_CONFIG_HEADER(js-config.h) - AC_CANONICAL_SYSTEM - TARGET_CPU="${target_cpu}" -@@ -101,6 +100,9 @@ - _SUBDIR_HOST_LDFLAGS="$HOST_LDFLAGS" - _SUBDIR_CONFIG_ARGS="$ac_configure_args" - -+ac_cv_have_usable_wchar_v2=no -+ac_cv_have_usable_wchar_option_v2=no -+ - dnl Set the version number of the libs included with mozilla - dnl ======================================================== - NSPR_VERSION=4 -@@ -113,6 +115,8 @@ - - MSMANIFEST_TOOL= - -+m4_pattern_allow(AS_BIN) -+ - dnl Set various checks - dnl ======================================================== - MISSING_X= -@@ -212,7 +216,7 @@ - - if test "$COMPILE_ENVIRONMENT"; then - --if test "$target" != "$host"; then -+ - echo "cross compiling from $host to $target" - - _SAVE_CC="$CC" -@@ -249,7 +253,7 @@ - - AC_MSG_CHECKING([whether the host c compiler ($HOST_CC $HOST_CFLAGS $HOST_LDFLAGS) works]) - AC_TRY_COMPILE([], [return(0);], -- [ac_cv_prog_hostcc_works=1 AC_MSG_RESULT([yes])], -+ [ac_cv_prog_hostcc_works=1; AC_MSG_RESULT([yes])], - AC_MSG_ERROR([installation or configuration problem: host compiler $HOST_CC cannot create executables.]) ) - - CC="$HOST_CXX" -@@ -257,7 +261,7 @@ - - AC_MSG_CHECKING([whether the host c++ compiler ($HOST_CXX $HOST_CXXFLAGS $HOST_LDFLAGS) works]) - AC_TRY_COMPILE([], [return(0);], -- [ac_cv_prog_hostcxx_works=1 AC_MSG_RESULT([yes])], -+ [ac_cv_prog_hostcxx_works=1; AC_MSG_RESULT([yes])], - AC_MSG_ERROR([installation or configuration problem: host compiler $HOST_CXX cannot create executables.]) ) - - CC=$_SAVE_CC -@@ -312,7 +316,7 @@ - ;; - esac - -- AC_CHECK_PROGS(CC, $CC "${target_alias}-gcc" "${target}-gcc", :) -+ CC="${target_alias}-gcc" - unset ac_cv_prog_CC - AC_PROG_CC - AC_CHECK_PROGS(CXX, $CXX "${target_alias}-g++" "${target}-g++", :) -@@ -342,37 +346,6 @@ - dnl able to run ppc code in a translated environment, making a cross - dnl compiler appear native. So we override that here. - cross_compiling=yes --else -- AC_PROG_CC -- AC_PROG_CXX -- AC_PROG_RANLIB -- MOZ_PATH_PROGS(AS, $AS as, $CC) -- AC_CHECK_PROGS(AR, ar, :) -- AC_CHECK_PROGS(LD, ld, :) -- AC_CHECK_PROGS(STRIP, strip, :) -- AC_CHECK_PROGS(WINDRES, windres, :) -- if test -z "$HOST_CC"; then -- HOST_CC="$CC" -- fi -- if test -z "$HOST_CFLAGS"; then -- HOST_CFLAGS="$CFLAGS" -- fi -- if test -z "$HOST_CXX"; then -- HOST_CXX="$CXX" -- fi -- if test -z "$HOST_CXXFLAGS"; then -- HOST_CXXFLAGS="$CXXFLAGS" -- fi -- if test -z "$HOST_LDFLAGS"; then -- HOST_LDFLAGS="$LDFLAGS" -- fi -- if test -z "$HOST_RANLIB"; then -- HOST_RANLIB="$RANLIB" -- fi -- if test -z "$HOST_AR"; then -- HOST_AR="$AR" -- fi --fi - - GNU_AS= - GNU_LD= -@@ -1370,6 +1343,8 @@ - fi # GNU_CC - fi # COMPILE_ENVIRONMENT - -+ac_cv_static_assertion_macros_work=yes -+ - dnl ================================================================= - dnl Set up and test static assertion macros used to avoid AC_TRY_RUN, - dnl which is bad when cross compiling. -@@ -2557,9 +2532,13 @@ - AC_LANG_C - AC_HEADER_STDC - AC_C_CONST -+ac_cv_type_mode_t=yes - AC_TYPE_MODE_T -+ac_cv_type_off_t=yes - AC_TYPE_OFF_T -+ac_cv_type_pid_t=yes - AC_TYPE_PID_T -+ac_cv_type_size_t=yes - AC_TYPE_SIZE_T - AC_STRUCT_ST_BLKSIZE - AC_MSG_CHECKING(for siginfo_t) -@@ -2584,7 +2563,8 @@ - - AC_CHECK_HEADER(stdint.h) - if test "$ac_cv_header_stdint_h" = yes; then -- AC_DEFINE(JS_HAVE_STDINT_H) -+ AC_DEFINE(JS_HAVE_STDINT_H, 1, [have stdint.h]) -+ AC_DEFINE(HAVE_STDINT_H) - else - dnl We'll figure them out for ourselves. List more likely types - dnl earlier. If we ever really encounter a size for which none of -@@ -2938,10 +2918,7 @@ - ;; - *) - AC_CHECK_LIB(m, atan) -- AC_CHECK_LIB(dl, dlopen, -- AC_CHECK_HEADER(dlfcn.h, -- LIBS="-ldl $LIBS" -- AC_DEFINE(HAVE_LIBDL))) -+ AC_CHECK_LIB(dl, dlopen, AC_DEFINE(HAVE_LIBDL)) - ;; - esac - -@@ -3847,6 +3824,7 @@ - [ --with-nspr-libs=LIBS Pass LIBS to LD when linking code that uses NSPR. - See --with-nspr-cflags for more details.], - NSPR_LIBS=$withval) -+$NSPR_LIBS="$NSPR_LIBS -L$(LIBXUL_DIST)/sdk/lib" - AC_SUBST(NSPR_CFLAGS) - AC_SUBST(NSPR_LIBS) - -@@ -4386,18 +4364,11 @@ - - # Demangle only for debug or trace-malloc builds - MOZ_DEMANGLE_SYMBOLS= --if test "$HAVE_DEMANGLE" -a "$HAVE_GCC3_ABI" && test "$MOZ_DEBUG" -o "$NS_TRACE_MALLOC"; then -- MOZ_DEMANGLE_SYMBOLS=1 -- AC_DEFINE(MOZ_DEMANGLE_SYMBOLS) --fi - AC_SUBST(MOZ_DEMANGLE_SYMBOLS) - - dnl ======================================================== - dnl = Support for gcc stack unwinding (from gcc 3.3) - dnl ======================================================== --if test "$HAVE_GCC3_ABI" && test -z "$SKIP_LIBRARY_CHECKS"; then -- AC_CHECK_HEADER(unwind.h, AC_CHECK_FUNCS(_Unwind_Backtrace)) --fi - - dnl ======================================================== - dnl = -@@ -5097,6 +5068,8 @@ - - AC_HAVE_FUNCS(setlocale) - -+ -+ - dnl ======================================================== - dnl Use cygwin wrapper for win32 builds, except MSYS/MinGW - dnl ======================================================== -@@ -5234,3 +5207,4 @@ - # 'js-config' in Makefile.in. - AC_MSG_RESULT(invoking make to create js-config script) - $MAKE js-config -+ -Index: offscreen/nsprpub/configure.in -=================================================================== ---- offscreen.orig/nsprpub/configure.in 2009-12-09 13:10:12.000000000 +0000 -+++ offscreen/nsprpub/configure.in 2009-12-09 13:10:12.000000000 +0000 -@@ -42,7 +42,6 @@ - AC_PREREQ(2.12) - AC_INIT(config/libc_r.h) - --AC_CONFIG_AUX_DIR(${srcdir}/build/autoconf) - AC_CANONICAL_SYSTEM - - dnl ======================================================== -@@ -396,7 +395,7 @@ - dnl ======================================================== - dnl Checks for compilers. - dnl ======================================================== --if test "$target" != "$host"; then -+ - echo "cross compiling from $host to $target" - cross_compiling=yes - -@@ -423,7 +422,7 @@ - - AC_MSG_CHECKING([whether the $host compiler ($HOST_CC $HOST_CFLAGS $HOST_LDFLAGS) works]) - AC_TRY_COMPILE([], [return(0);], -- [ac_cv_prog_host_cc_works=1 AC_MSG_RESULT([yes])], -+ [ac_cv_prog_host_cc_works=1; AC_MSG_RESULT([yes])], - AC_MSG_ERROR([installation or configuration problem: $host compiler $HOST_CC cannot create executables.]) ) - - CC=$_SAVE_CC -@@ -444,7 +443,7 @@ - ;; - esac - -- AC_CHECK_PROGS(CC, $CC "${target_alias}-gcc" "${target}-gcc", echo) -+ CC="${target_alias}-gcc" - unset ac_cv_prog_CC - AC_PROG_CC - if test -n "$USE_CPLUS"; then -@@ -470,30 +469,6 @@ - AC_CHECK_PROGS(STRIP, $STRIP "${target_alias}-strip" "${target}-strip", echo) - AC_CHECK_PROGS(WINDRES, $WINDRES "${target_alias}-windres" "${target}-windres", echo) - --else -- AC_PROG_CC -- if test -n "$USE_CPLUS"; then -- if test "$CC" = "cl" -a -z "$CXX"; then -- CXX=$CC -- else -- AC_PROG_CXX -- fi -- fi -- AC_PROG_CPP -- AC_PROG_RANLIB -- AC_PATH_PROGS(AS, as, $CC) -- AC_PATH_PROGS(AR, ar, echo not_ar) -- AC_PATH_PROGS(LD, ld link, echo not_ld) -- AC_PATH_PROGS(STRIP, strip, echo not_strip) -- AC_PATH_PROGS(WINDRES, windres, echo not_windres) -- if test -z "$HOST_CC"; then -- HOST_CC="$CC" -- fi -- if test -z "$HOST_CFLAGS"; then -- HOST_CFLAGS="$CFLAGS" -- fi --fi -- - if test "$GCC" = "yes"; then - GNU_CC=1 - fi -@@ -514,11 +489,8 @@ - ;; - esac - --if test "$cross_compiling" = "yes"; then -+ - CROSS_COMPILE=1 --else -- CROSS_COMPILE= --fi - - dnl ======================================================== - dnl Check for gcc -pipe support -@@ -2286,10 +2258,7 @@ - *-darwin*|*-beos*|*-os2*) - ;; - *) -- AC_CHECK_LIB(dl, dlopen, -- AC_CHECK_HEADER(dlfcn.h, -- OS_LIBS="-ldl $OS_LIBS")) -- ;; -+ AC_CHECK_LIB(dl, dlopen) - esac - - -@@ -2907,6 +2876,8 @@ - dnl pr/tests/w16gui/Makefile - dnl tools/Makefile - -+m4_pattern_allow(AS_BIN) -+ - if test -z "$USE_PTHREADS" && test -z "$USE_BTHREADS"; then - MAKEFILES="$MAKEFILES pr/src/threads/combined/Makefile" - elif test -n "$USE_PTHREADS"; then -@@ -2922,3 +2893,5 @@ - echo $MAKEFILES > unallmakefiles - - AC_OUTPUT([$MAKEFILES], [chmod +x config/nspr-config]) -+ -+ -Index: offscreen/js/src/Makefile.in -=================================================================== ---- offscreen.orig/js/src/Makefile.in 2009-12-09 13:10:12.000000000 +0000 -+++ offscreen/js/src/Makefile.in 2009-12-09 13:10:12.000000000 +0000 -@@ -513,20 +513,8 @@ - - export:: jsautocfg.h - --ifeq (,$(CROSS_COMPILE)$(GNU_CC)$(filter-out WINNT,$(OS_ARCH))) - jsautocfg.h: - touch $@ --else --ifeq ($(OS_ARCH),WINCE) --jsautocfg.h: -- touch $@ --else --jsautocfg.h: jscpucfg$(HOST_BIN_SUFFIX) -- @rm -f $@ jsautocfg.tmp -- ./jscpucfg > jsautocfg.tmp -- mv jsautocfg.tmp $@ --endif --endif - - # jscpucfg is a strange target - # Needs to be built with the host compiler but needs to include -@@ -556,7 +544,7 @@ - echo no need to build jscpucfg $< - else - jscpucfg$(HOST_BIN_SUFFIX): jscpucfg.cpp Makefile.in -- $(HOST_CXX) $(HOST_CXXFLAGS) $(JSCPUCFG_DEFINES) $(DEFINES) $(NSPR_CFLAGS) $(HOST_OUTOPTION)$@ $< -+ $(HOST_CXX) $(HOST_CXXFLAGS) $(JSCPUCFG_DEFINES) $(DEFINES) -I$(DIST)/sdk/include $(NSPR_CFLAGS) $(HOST_OUTOPTION)$@ $< - endif - endif - -Index: offscreen/js/src/xpconnect/loader/mozJSComponentLoader.cpp -=================================================================== ---- offscreen.orig/js/src/xpconnect/loader/mozJSComponentLoader.cpp 2009-12-09 13:10:12.000000000 +0000 -+++ offscreen/js/src/xpconnect/loader/mozJSComponentLoader.cpp 2009-12-09 13:10:12.000000000 +0000 -@@ -47,6 +47,8 @@ - - #include - -+#include "mozilla-config.h" -+ - #include "prlog.h" - - #include "nsCOMPtr.h" -Index: offscreen/js/src/xpconnect/loader/mozJSSubScriptLoader.cpp -=================================================================== ---- offscreen.orig/js/src/xpconnect/loader/mozJSSubScriptLoader.cpp 2009-12-09 13:10:12.000000000 +0000 -+++ offscreen/js/src/xpconnect/loader/mozJSSubScriptLoader.cpp 2009-12-09 13:10:12.000000000 +0000 -@@ -39,6 +39,8 @@ - * - * ***** END LICENSE BLOCK ***** */ - -+#include "mozilla-config.h" -+ - #if !defined(XPCONNECT_STANDALONE) && !defined(NO_SUBSCRIPT_LOADER) - - #include "mozJSSubScriptLoader.h" -Index: offscreen/toolkit/mozapps/update/src/updater/Makefile.in -=================================================================== ---- offscreen.orig/toolkit/mozapps/update/src/updater/Makefile.in 2009-12-09 13:10:12.000000000 +0000 -+++ offscreen/toolkit/mozapps/update/src/updater/Makefile.in 2009-12-09 13:10:12.000000000 +0000 -@@ -56,7 +56,7 @@ - - LIBS += \ - $(DEPTH)/modules/libmar/src/$(LIB_PREFIX)mar.$(LIB_SUFFIX) \ -- $(BZ2_LIBS) \ -+ $(BZ2_LIBS) -lpthread \ - $(NULL) - - ifeq ($(OS_ARCH),WINNT) -Index: offscreen/xpcom/sample/program/Makefile.in -=================================================================== ---- offscreen.orig/xpcom/sample/program/Makefile.in 2009-12-09 13:10:12.000000000 +0000 -+++ offscreen/xpcom/sample/program/Makefile.in 2009-12-09 13:10:12.000000000 +0000 -@@ -57,7 +57,7 @@ - # that the application be linked against the XPCOM dynamic library or the NSPR - # dynamic libraries. - LIBS = \ -- $(XPCOM_STANDALONE_GLUE_LDOPTS) \ -+ $(XPCOM_STANDALONE_GLUE_LDOPTS) -ldl \ - $(NULL) - - # Need to link with CoreFoundation on Mac -Index: offscreen/xpcom/tools/registry/Makefile.in -=================================================================== ---- offscreen.orig/xpcom/tools/registry/Makefile.in 2009-12-09 13:10:12.000000000 +0000 -+++ offscreen/xpcom/tools/registry/Makefile.in 2009-12-09 13:10:12.000000000 +0000 -@@ -54,7 +54,7 @@ - SIMPLE_PROGRAMS = $(CPPSRCS:.cpp=$(BIN_SUFFIX)) - - LIBS = \ -- $(XPCOM_STANDALONE_GLUE_LDOPTS) \ -+ $(XPCOM_STANDALONE_GLUE_LDOPTS) -ldl \ - $(NULL) - - # Need to link with CoreFoundation on Mac -Index: offscreen/xulrunner/app/Makefile.in -=================================================================== ---- offscreen.orig/xulrunner/app/Makefile.in 2009-12-09 13:10:12.000000000 +0000 -+++ offscreen/xulrunner/app/Makefile.in 2009-12-09 13:10:12.000000000 +0000 -@@ -173,7 +173,7 @@ - RCFLAGS += -DXULRUNNER_ICO=\"$(DIST)/branding/xulrunner.ico\" -DDOCUMENT_ICO=\"$(DIST)/branding/document.ico\" - endif - --LIBS += $(JEMALLOC_LIBS) -+LIBS += $(JEMALLOC_LIBS) -lpthread -ldl - - include $(topsrcdir)/config/rules.mk - -Index: offscreen/xulrunner/stub/Makefile.in -=================================================================== ---- offscreen.orig/xulrunner/stub/Makefile.in 2009-12-09 13:10:12.000000000 +0000 -+++ offscreen/xulrunner/stub/Makefile.in 2009-12-09 13:10:12.000000000 +0000 -@@ -100,7 +100,7 @@ - endif - endif - --LIBS += $(JEMALLOC_LIBS) -+LIBS += $(JEMALLOC_LIBS) -lpthread -ldl - - include $(topsrcdir)/config/rules.mk - -Index: offscreen/modules/plugin/test/testplugin/Makefile.in -=================================================================== ---- offscreen.orig/modules/plugin/test/testplugin/Makefile.in 2009-12-09 13:10:12.000000000 +0000 -+++ offscreen/modules/plugin/test/testplugin/Makefile.in 2009-12-09 13:10:12.000000000 +0000 -@@ -60,9 +60,7 @@ - CMMSRCS = nptest_macosx.mm - endif - --ifeq ($(MOZ_WIDGET_TOOLKIT),gtk2) - CPPSRCS += nptest_gtk2.cpp --endif - - ifeq ($(MOZ_WIDGET_TOOLKIT),os2) - CPPSRCS += nptest_os2.cpp -Index: offscreen/js/src/aclocal.m4 -=================================================================== ---- offscreen.orig/js/src/aclocal.m4 2009-12-09 13:10:12.000000000 +0000 -+++ offscreen/js/src/aclocal.m4 2009-12-09 13:39:01.000000000 +0000 -@@ -8,6 +8,4 @@ - builtin(include, build/autoconf/altoptions.m4)dnl - builtin(include, build/autoconf/moznbytetype.m4)dnl - builtin(include, build/autoconf/mozprog.m4)dnl --builtin(include, build/autoconf/acwinpaths.m4)dnl - --MOZ_PROG_CHECKMSYS() -Index: offscreen/toolkit/toolkit-makefiles.sh -=================================================================== ---- offscreen.orig/toolkit/toolkit-makefiles.sh 2009-12-09 13:10:12.000000000 +0000 -+++ offscreen/toolkit/toolkit-makefiles.sh 2009-12-09 13:10:12.000000000 +0000 -@@ -369,7 +369,6 @@ - modules/plugin/sdk/samples/Makefile - modules/plugin/sdk/samples/common/Makefile - modules/plugin/sdk/samples/basic/windows/Makefile -- modules/plugin/sdk/samples/basic/unix/Makefile - modules/plugin/sdk/samples/winless/windows/Makefile - " - diff --git a/meta/packages/mozilla-headless/mozilla-headless/i386/jsautocfg.h b/meta/packages/mozilla-headless/mozilla-headless/i386/jsautocfg.h deleted file mode 100644 index 94b44f8e14..0000000000 --- a/meta/packages/mozilla-headless/mozilla-headless/i386/jsautocfg.h +++ /dev/null @@ -1,21 +0,0 @@ -#ifndef js_cpucfg___ -#define js_cpucfg___ - -/* AUTOMATICALLY GENERATED - DO NOT EDIT */ - -#define IS_LITTLE_ENDIAN 1 -#undef IS_BIG_ENDIAN - - -#define JS_BYTES_PER_WORD 4L -#define JS_BYTES_PER_DOUBLE 8L -#define JS_BITS_PER_WORD_LOG2 5L -#define JS_ALIGN_OF_POINTER 4L - -#define JS_THREADSAFE 1 - -#define JS_STACK_GROWTH_DIRECTION (-1) - -#define JS_HAVE_LONG_LONG - -#endif /* js_cpucfg___ */ diff --git a/meta/packages/mozilla-headless/mozilla-headless/i486/jsautocfg.h b/meta/packages/mozilla-headless/mozilla-headless/i486/jsautocfg.h deleted file mode 100644 index 94b44f8e14..0000000000 --- a/meta/packages/mozilla-headless/mozilla-headless/i486/jsautocfg.h +++ /dev/null @@ -1,21 +0,0 @@ -#ifndef js_cpucfg___ -#define js_cpucfg___ - -/* AUTOMATICALLY GENERATED - DO NOT EDIT */ - -#define IS_LITTLE_ENDIAN 1 -#undef IS_BIG_ENDIAN - - -#define JS_BYTES_PER_WORD 4L -#define JS_BYTES_PER_DOUBLE 8L -#define JS_BITS_PER_WORD_LOG2 5L -#define JS_ALIGN_OF_POINTER 4L - -#define JS_THREADSAFE 1 - -#define JS_STACK_GROWTH_DIRECTION (-1) - -#define JS_HAVE_LONG_LONG - -#endif /* js_cpucfg___ */ diff --git a/meta/packages/mozilla-headless/mozilla-headless/i586/jsautocfg.h b/meta/packages/mozilla-headless/mozilla-headless/i586/jsautocfg.h deleted file mode 100644 index 94b44f8e14..0000000000 --- a/meta/packages/mozilla-headless/mozilla-headless/i586/jsautocfg.h +++ /dev/null @@ -1,21 +0,0 @@ -#ifndef js_cpucfg___ -#define js_cpucfg___ - -/* AUTOMATICALLY GENERATED - DO NOT EDIT */ - -#define IS_LITTLE_ENDIAN 1 -#undef IS_BIG_ENDIAN - - -#define JS_BYTES_PER_WORD 4L -#define JS_BYTES_PER_DOUBLE 8L -#define JS_BITS_PER_WORD_LOG2 5L -#define JS_ALIGN_OF_POINTER 4L - -#define JS_THREADSAFE 1 - -#define JS_STACK_GROWTH_DIRECTION (-1) - -#define JS_HAVE_LONG_LONG - -#endif /* js_cpucfg___ */ diff --git a/meta/packages/mozilla-headless/mozilla-headless/i686/jsautocfg.h b/meta/packages/mozilla-headless/mozilla-headless/i686/jsautocfg.h deleted file mode 100644 index 94b44f8e14..0000000000 --- a/meta/packages/mozilla-headless/mozilla-headless/i686/jsautocfg.h +++ /dev/null @@ -1,21 +0,0 @@ -#ifndef js_cpucfg___ -#define js_cpucfg___ - -/* AUTOMATICALLY GENERATED - DO NOT EDIT */ - -#define IS_LITTLE_ENDIAN 1 -#undef IS_BIG_ENDIAN - - -#define JS_BYTES_PER_WORD 4L -#define JS_BYTES_PER_DOUBLE 8L -#define JS_BITS_PER_WORD_LOG2 5L -#define JS_ALIGN_OF_POINTER 4L - -#define JS_THREADSAFE 1 - -#define JS_STACK_GROWTH_DIRECTION (-1) - -#define JS_HAVE_LONG_LONG - -#endif /* js_cpucfg___ */ diff --git a/meta/packages/mozilla-headless/mozilla-headless/mozconfig b/meta/packages/mozilla-headless/mozilla-headless/mozconfig deleted file mode 100644 index 6123d11d27..0000000000 --- a/meta/packages/mozilla-headless/mozilla-headless/mozconfig +++ /dev/null @@ -1,23 +0,0 @@ -# this line sets the directory for all build output -mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../obj-headless-release - -# comment out the previous line and uncomment these two for a debug build -#mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../obj-headless-debug -#ac_add_options --disable-optimize --enable-debug - -# this is the line that enables the headless implementation -ac_add_options --enable-default-toolkit=cairo-headless - -# comment out the previous line and uncomment these two for a GTK build -#ac_add_options --enable-system-cairo -#ac_add_options --enable-default-toolkit=cairo-gtk2 - -ac_add_options --disable-tests -ac_add_options --disable-javaxpcom -ac_add_options --enable-application=xulrunner -ac_add_options --enable-pango -ac_add_options --disable-printing -ac_add_options --disable-crashreporter -ac_add_options --enable-plugins -ac_add_options --disable-accessibility -mk_add_options MOZ_CO_PROJECT=xulrunner diff --git a/meta/packages/mozilla-headless/mozilla-headless/mozilla-jemalloc.patch b/meta/packages/mozilla-headless/mozilla-headless/mozilla-jemalloc.patch deleted file mode 100644 index aabd6906e8..0000000000 --- a/meta/packages/mozilla-headless/mozilla-headless/mozilla-jemalloc.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -r f1af606531f5 memory/jemalloc/jemalloc.h ---- a/memory/jemalloc/jemalloc.h Sat Nov 22 20:22:22 2008 +0100 -+++ b/memory/jemalloc/jemalloc.h Mon Dec 01 16:53:06 2008 -0500 -@@ -45,14 +45,14 @@ - } jemalloc_stats_t; - - #ifndef MOZ_MEMORY_DARWIN --void *malloc(size_t size); --void *valloc(size_t size); --void *calloc(size_t num, size_t size); --void *realloc(void *ptr, size_t size); --void free(void *ptr); -+void *malloc(size_t size) __THROW __attribute_malloc__ __wur; -+void *valloc(size_t size) __THROW __attribute_malloc__ __wur; -+void *calloc(size_t num, size_t size) __THROW __attribute_malloc__ __wur; -+void *realloc(void *ptr, size_t size) __THROW __attribute_malloc__ __wur; -+void free(void *ptr) __THROW __attribute_malloc__ __wur; - #endif - --int posix_memalign(void **memptr, size_t alignment, size_t size); -+int posix_memalign(void **memptr, size_t alignment, size_t size) __THROW __attribute_malloc__ __wur; - void *memalign(size_t alignment, size_t size); - size_t malloc_usable_size(const void *ptr); - void jemalloc_stats(jemalloc_stats_t *stats); diff --git a/meta/packages/mozilla-headless/mozilla-headless/removebadrpath-1a622cb7c384.patch b/meta/packages/mozilla-headless/mozilla-headless/removebadrpath-1a622cb7c384.patch deleted file mode 100644 index 9409105780..0000000000 --- a/meta/packages/mozilla-headless/mozilla-headless/removebadrpath-1a622cb7c384.patch +++ /dev/null @@ -1,26 +0,0 @@ -Index: offscreen/js/src/configure.in -=================================================================== ---- offscreen.orig/js/src/configure.in 2009-06-17 14:31:40.000000000 +0100 -+++ offscreen/js/src/configure.in 2009-06-17 14:31:40.000000000 +0100 -@@ -880,7 +880,7 @@ - HOST_AR_FLAGS='$(AR_FLAGS)' - - MOZ_JS_LIBS='-L$(libdir) -lmozjs' --MOZ_FIX_LINK_PATHS='-Wl,-rpath-link,$(LIBXUL_DIST)/bin -Wl,-rpath-link,$(PREFIX)/lib' -+MOZ_FIX_LINK_PATHS='-Wl,-rpath-link,$(LIBXUL_DIST)/bin' - - MOZ_COMPONENT_NSPR_LIBS='-L$(LIBXUL_DIST)/bin $(NSPR_LIBS)' - MOZ_XPCOM_OBSOLETE_LIBS='-L$(LIBXUL_DIST)/lib -lxpcom_compat' -Index: offscreen/configure.in -=================================================================== ---- offscreen.orig/configure.in 2009-06-17 15:09:44.000000000 +0100 -+++ offscreen/configure.in 2009-06-17 15:10:00.000000000 +0100 -@@ -1060,7 +1060,7 @@ - - MOZ_JS_LIBS='-L$(LIBXUL_DIST)/bin -lmozjs' - DYNAMIC_XPCOM_LIBS='-L$(LIBXUL_DIST)/bin -lxpcom -lxpcom_core' --MOZ_FIX_LINK_PATHS='-Wl,-rpath-link,$(LIBXUL_DIST)/bin -Wl,-rpath-link,$(prefix)/lib' -+MOZ_FIX_LINK_PATHS='-Wl,-rpath-link,$(LIBXUL_DIST)/bin' - XPCOM_FROZEN_LDOPTS='-L$(LIBXUL_DIST)/bin -lxpcom' - LIBXUL_LIBS='$(XPCOM_FROZEN_LDOPTS) -lxul' - XPCOM_GLUE_LDOPTS='$(LIBXUL_DIST)/lib/$(LIB_PREFIX)xpcomglue_s.$(LIB_SUFFIX) $(XPCOM_FROZEN_LDOPTS)' diff --git a/meta/packages/mozilla-headless/mozilla-headless/removebadrpath.patch b/meta/packages/mozilla-headless/mozilla-headless/removebadrpath.patch deleted file mode 100644 index 53ae6d3251..0000000000 --- a/meta/packages/mozilla-headless/mozilla-headless/removebadrpath.patch +++ /dev/null @@ -1,44 +0,0 @@ -Index: offscreen/js/src/configure.in -=================================================================== ---- offscreen.orig/js/src/configure.in 2009-12-09 13:38:51.000000000 +0000 -+++ offscreen/js/src/configure.in 2009-12-09 14:14:08.000000000 +0000 -@@ -858,7 +858,7 @@ - HOST_AR_FLAGS='$(AR_FLAGS)' - - MOZ_JS_LIBS='-L$(libdir) -lmozjs' --MOZ_FIX_LINK_PATHS='-Wl,-rpath-link,$(LIBXUL_DIST)/bin -Wl,-rpath-link,$(PREFIX)/lib' -+MOZ_FIX_LINK_PATHS='-Wl,-rpath-link,$(LIBXUL_DIST)/bin' - - MOZ_COMPONENT_NSPR_LIBS='-L$(LIBXUL_DIST)/bin $(NSPR_LIBS)' - -@@ -3824,7 +3824,7 @@ - [ --with-nspr-libs=LIBS Pass LIBS to LD when linking code that uses NSPR. - See --with-nspr-cflags for more details.], - NSPR_LIBS=$withval) --$NSPR_LIBS="$NSPR_LIBS -L$(LIBXUL_DIST)/sdk/lib" -+NSPR_LIBS="$NSPR_LIBS -L$(LIBXUL_DIST)/sdk/lib" - AC_SUBST(NSPR_CFLAGS) - AC_SUBST(NSPR_LIBS) - -Index: offscreen/configure.in -=================================================================== ---- offscreen.orig/configure.in 2009-12-09 13:38:51.000000000 +0000 -+++ offscreen/configure.in 2009-12-09 14:31:33.000000000 +0000 -@@ -1041,7 +1041,7 @@ - - MOZ_JS_LIBS='-L$(LIBXUL_DIST)/bin -lmozjs' - DYNAMIC_XPCOM_LIBS='-L$(LIBXUL_DIST)/bin -lxpcom -lxpcom_core' --MOZ_FIX_LINK_PATHS='-Wl,-rpath-link,$(LIBXUL_DIST)/bin -Wl,-rpath-link,$(prefix)/lib' -+MOZ_FIX_LINK_PATHS='-Wl,-rpath-link,$(LIBXUL_DIST)/bin' - XPCOM_FROZEN_LDOPTS='-L$(LIBXUL_DIST)/bin -lxpcom' - LIBXUL_LIBS='$(XPCOM_FROZEN_LDOPTS) -lxul' - XPCOM_GLUE_LDOPTS='$(LIBXUL_DIST)/lib/$(LIB_PREFIX)xpcomglue_s.$(LIB_SUFFIX) $(XPCOM_FROZEN_LDOPTS)' -@@ -8378,7 +8378,7 @@ - if test "$BUILD_CTYPES"; then - # Run the libffi 'configure' script on platforms that it supports. - if test -z "$_MSC_VER"; then -- ac_configure_args="--disable-shared --enable-static --disable-raw-api" -+ ac_configure_args="$ac_configure_args --disable-shared --enable-static --disable-raw-api" - if test "$MOZ_DEBUG"; then - ac_configure_args="$ac_configure_args --enable-debug" - fi diff --git a/meta/packages/mozilla-headless/mozilla-headless_hg.bb b/meta/packages/mozilla-headless/mozilla-headless_hg.bb deleted file mode 100644 index 669c526163..0000000000 --- a/meta/packages/mozilla-headless/mozilla-headless_hg.bb +++ /dev/null @@ -1,99 +0,0 @@ - -#file://0001-Adds-initial-Gtk-clipboard-support-to-moz-headless.patch;patch=1 \ -SRC_URI = "hg://hg.mozilla.org/incubator;protocol=http;module=offscreen \ - file://configurefix-1a622cb7c384.patch;patch=1;rev=1a622cb7c384 \ - file://configurefix.patch;patch=1;notrev=1a622cb7c384 \ - file://mozilla-jemalloc.patch;patch=1 \ - file://removebadrpath-1a622cb7c384.patch;patch=1;rev=1a622cb7c384 \ - file://removebadrpath.patch;patch=1;notrev=1a622cb7c384 \ - file://buildfixhack.patch;patch=1;notrev=1a622cb7c384 \ - file://autoconffix.patch;patch=1 \ - file://jsautocfg.h \ - file://mozconfig" -PV = "0.2+hg-1.0+${SRCPV}" -PR = "r10" - -S = "${WORKDIR}/offscreen" - -DEPENDS = "gconf gnome-vfs pango dbus-glib alsa-lib libidl-native sqlite3 libidl" - -FILES_${PN} += "${libdir}/xulrunner-${XULVERSION} ${libdir}/xulrunner-devel-${XULVERSION}/sdk/lib/*.so" -FILES_${PN}-dev += "${libdir}/xulrunner-devel-${XULVERSION}" -FILES_${PN}-dbg += "${libdir}/xulrunner-devel-${XULVERSION}/sdk/lib/.debug" - -# Mozilla's build rules search for -L paths to find libraries. Its -# not clever enough to know where the sysroot is and hence finds host -# object files which is bad. We therefore tell pkg-config not to hide -# paths. See config/rules.mk and the LIBS_DEPS and _LIBDIRS variables. -export PKG_CONFIG_ALLOW_SYSTEM_LIBS = "1" - -TARGET_CC_ARCH = "" - -CFLAGS = "${TARGET_CFLAGS}" -TARGET_CFLAGS = "-Os -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=core2 -msse3 -mtune=generic -mfpmath=sse -fasynchronous-unwind-tables" - -LDFLAGS = "${TARGET_LDFLAGS}" -TARGET_LDFLAGS = "-Wl,-rpath,${libdir}/xulrunner-${XULVERSION}" - -export target_alias=${TARGET_PREFIX} - -inherit autotools mozilla - -acpaths = "-I ${S}/build/autoconf " - -export topsrcdir = "${S}" - -do_configure () { - if [ "${SRCREV}" != "1a622cb7c384" ]; then - rm -rf ${S}/build/autoconf/acwinpaths.m4 - rm -rf ${S}/js/src/build/autoconf/acwinpaths.m4 - rm -rf ${S}/nsprpub/build/autoconf/acwinpaths.m4 - mkdir -p ${S}/js/src/dist/include - ln -fs ../../../../nsprpub/dist/include/nspr ${S}/js/src/dist/include/nsprpub - fi - cp ${S}/build/autoconf/install-sh ${S} - autotools_do_configure - # Yes, we run this twice. The first pass sets up npsrpub-config which then - # sets the values correctly on the second try. Ick. - autotools_do_configure -} - -do_compile () { - cp ${WORKDIR}/jsautocfg.h ${S}/js/src/ - #oe_runmake -f client.mk build_all - base_do_compile -} - -XULVERSION = "1.9.3a1pre" - -do_install_append () { - install -d ${D}${sysconfdir}/ld.so.conf.d/ - echo ${libdir}/xulrunner-${XULVERSION}/ > ${D}${sysconfdir}/ld.so.conf.d/mozilla-headless -} - -EXTRA_OECONF =+ "--enable-application=xulrunner --enable-default-toolkit=cairo-headless --with-pthreads \ - --enable-pango --enable-optimize --disable-debug --disable-tests \ - --disable-printing --disable-crashreporter --disable-accessibility \ - --disable-javaxpcom --enable-plugins --enable-system-sqlite --disable-necko-wifi" - -export LIBXUL_DIST="${S}/dist" - -SYSROOT_PREPROCESS_FUNCS += "mozilla_sysroot_preprocess" - -mozilla_sysroot_preprocess () { - autotools_stage_dir ${D}/${libdir}/xulrunner-${XULVERSION} ${SYSROOT_DESTDIR}${STAGING_DIR_HOST}${libdir}/xulrunner-${XULVERSION}/ - autotools_stage_dir ${D}/${libdir}/xulrunner-devel-${XULVERSION} ${SYSROOT_DESTDIR}${STAGING_DIR_HOST}${libdir}/xulrunner-devel-${XULVERSION}/ - - ln -fs ${STAGING_DIR_HOST}${libdir}/xulrunner-${XULVERSION}/ ${SYSROOT_DESTDIR}${STAGING_DIR_HOST}${libdir}/xulrunner-devel-${XULVERSION}/bin - ln -fs ${STAGING_DIR_HOST}${datadir}/xulrunner-${XULVERSION}/unstable/ ${SYSROOT_DESTDIR}${STAGING_DIR_HOST}${libdir}/xulrunner-devel-${XULVERSION}/idl - ln -fs ${STAGING_DIR_HOST}${includedir}/xulrunner-${XULVERSION}/unstable/ ${SYSROOT_DESTDIR}${STAGING_DIR_HOST}${libdir}/xulrunner-devel-${XULVERSION}/include - ln -fs ${STAGING_DIR_HOST}${libdir}/xulrunner-devel-${XULVERSION}/sdk/lib/ ${SYSROOT_DESTDIR}${STAGING_DIR_HOST}${libdir}/xulrunner-devel-${XULVERSION}/lib - - install -d ${SYSROOT_DESTDIR}${STAGING_BINDIR_CROSS} - install -m 755 ${S}/dist/host/bin/host_xpidl ${SYSROOT_DESTDIR}${STAGING_BINDIR_CROSS}/xpidl -} - -__anonymous () { - if bb.data.getVar("SRCREV", d, True) == "1a622cb7c384": - bb.data.setVar("XULVERSION", "1.9.2a1pre", d) -} diff --git a/meta/packages/mozilla/files/eabi-fix.patch b/meta/packages/mozilla/files/eabi-fix.patch deleted file mode 100644 index fd3bb88683..0000000000 --- a/meta/packages/mozilla/files/eabi-fix.patch +++ /dev/null @@ -1,66 +0,0 @@ -http://lists.debian.org/debian-arm/2007/05/msg00039.html - -From: Lennert Buytenhek - -Hi, - -The reason that building nss (i.e., firefox) would segfault on ARM EABI -systems is an assumption about the layout of the jmp_buf structure in -the nspr library (which nss depends on) that does hold on old-ABI but -no longer holds on EABI. The attached patch fixes this assumption, -and fixes the shlibsign segfault during the building of nss (it also -fixes a floating point byte order assumption.) - -Looks sane? - -It's of course a stupid idea to depend on a particular layout of the -jmp_buf structure in application programs, but oh well. People write -ugly buggy code, film at 11. - - ---- mozilla/nsprpub/pr/src/misc/prdtoa.c.orig 2007-05-06 02:39:00.000000000 +0200 -+++ mozilla/nsprpub/pr/src/misc/prdtoa.c 2007-05-06 02:39:22.000000000 +0200 -@@ -59,8 +59,8 @@ - /* FIXME: deal with freelist and p5s. */ - } - --#if defined(__arm) || defined(__arm__) || defined(__arm26__) \ -- || defined(__arm32__) -+#if (defined(__arm) || defined(__arm__) || defined(__arm26__) \ -+ || defined(__arm32__)) && !defined(__ARM_EABI__) && !defined(__ARMEB__) - #define IEEE_ARM - #elif defined(IS_LITTLE_ENDIAN) - #define IEEE_8087 ---- mozilla/nsprpub/pr/include/md/_linux.h.orig 2007-05-06 02:39:45.000000000 +0200 -+++ mozilla/nsprpub/pr/include/md/_linux.h 2007-05-06 02:40:57.000000000 +0200 -@@ -346,7 +346,7 @@ - #error "Linux/MIPS pre-glibc2 not supported yet" - #endif /* defined(__GLIBC__) && __GLIBC__ >= 2 */ - --#elif defined(__arm__) -+#elif defined(__arm__) && !defined(__ARM_EABI__) - /* ARM/Linux */ - #if defined(__GLIBC__) && __GLIBC__ >= 2 - #define _MD_GET_SP(_t) (_t)->md.context[0].__jmpbuf[20] -@@ -358,6 +358,18 @@ - #error "ARM/Linux pre-glibc2 not supported yet" - #endif /* defined(__GLIBC__) && __GLIBC__ >= 2 */ - -+#elif defined(__arm__) && defined(__ARM_EABI__) -+/* ARM/Linux */ -+#if defined(__GLIBC__) && __GLIBC__ >= 2 -+#define _MD_GET_SP(_t) (_t)->md.context[0].__jmpbuf[8] -+#define _MD_SET_FP(_t, val) ((_t)->md.context[0].__jmpbuf[7] = (val)) -+#define _MD_GET_SP_PTR(_t) &(_MD_GET_SP(_t)) -+#define _MD_GET_FP_PTR(_t) (&(_t)->md.context[0].__jmpbuf[7]) -+#define _MD_SP_TYPE __ptr_t -+#else -+#error "ARM/Linux pre-glibc2 not supported yet" -+#endif /* defined(__GLIBC__) && __GLIBC__ >= 2 */ -+ - #else - - #error "Unknown CPU architecture" - - - diff --git a/meta/packages/mozilla/files/eabi-fix2.patch b/meta/packages/mozilla/files/eabi-fix2.patch deleted file mode 100644 index 5f64e7f796..0000000000 --- a/meta/packages/mozilla/files/eabi-fix2.patch +++ /dev/null @@ -1,56 +0,0 @@ -https://bugzilla.mozilla.org/show_bug.cgi?id=369722 - -Index: js/src/jsnum.h -=================================================================== -RCS file: /cvsroot/mozilla/js/src/jsnum.h,v -retrieving revision 3.27 -diff -p -u -8 -r3.27 jsnum.h ---- mozilla/js/src/jsnum.h 21 Dec 2006 01:00:32 -0000 3.27 -+++ mozilla/js/src/jsnum.h 8 Feb 2007 12:13:01 -0000 -@@ -52,23 +52,24 @@ JS_BEGIN_EXTERN_C - - /* - * Stefan Hanske reports: - * ARM is a little endian architecture but 64 bit double words are stored - * differently: the 32 bit words are in little endian byte order, the two words - * are stored in big endian`s way. - */ - --#if defined(__arm) || defined(__arm32__) || defined(__arm26__) || defined(__arm__) --#define CPU_IS_ARM -+#if !defined(__ARM_EABI__) && \ -+ (defined(__arm) || defined(__arm32__) || defined(__arm26__) || defined(__arm__)) -+#define IEEE_ARM - #endif - - typedef union jsdpun { - struct { --#if defined(IS_LITTLE_ENDIAN) && !defined(CPU_IS_ARM) -+#if defined(IS_LITTLE_ENDIAN) && !defined(IEEE_ARM) - uint32 lo, hi; - #else - uint32 hi, lo; - #endif - } s; - jsdouble d; - } jsdpun; - -@@ -87,17 +88,17 @@ typedef union jsdpun { - - #else /* not or old GNUC */ - - /* - * We don't know of any non-gcc compilers that perform alias optimization, - * so this code should work. - */ - --#if defined(IS_LITTLE_ENDIAN) && !defined(CPU_IS_ARM) -+#if defined(IS_LITTLE_ENDIAN) && !defined(IEEE_ARM) - #define JSDOUBLE_HI32(x) (((uint32 *)&(x))[1]) - #define JSDOUBLE_LO32(x) (((uint32 *)&(x))[0]) - #else - #define JSDOUBLE_HI32(x) (((uint32 *)&(x))[0]) - #define JSDOUBLE_LO32(x) (((uint32 *)&(x))[1]) - #endif - - #define JSDOUBLE_SET_HI32(x, y) (JSDOUBLE_HI32(x)=(y)) diff --git a/meta/packages/mozilla/files/eabi-fix3.patch b/meta/packages/mozilla/files/eabi-fix3.patch deleted file mode 100644 index 8bf8c2f4da..0000000000 --- a/meta/packages/mozilla/files/eabi-fix3.patch +++ /dev/null @@ -1,15 +0,0 @@ -From: Marcin Juszkiewicz - -Index: mozilla/extensions/transformiix/source/base/Double.cpp -=================================================================== ---- mozilla.orig/extensions/transformiix/source/base/Double.cpp 2007-05-09 11:21:34.000000000 +0200 -+++ mozilla/extensions/transformiix/source/base/Double.cpp 2007-05-09 11:23:59.000000000 +0200 -@@ -71,7 +71,7 @@ - * are stored in big endian`s way. - */ - --#if defined(__arm) || defined(__arm32__) || defined(_arm26__) || defined(__arm__) -+#if !defined(__ARM_EABI__) && defined(__arm) || defined(__arm32__) || defined(_arm26__) || defined(__arm__) - #define CPU_IS_ARM - #endif - diff --git a/meta/packages/mozilla/files/minimo.desktop b/meta/packages/mozilla/files/minimo.desktop deleted file mode 100644 index 5ef0f2075a..0000000000 --- a/meta/packages/mozilla/files/minimo.desktop +++ /dev/null @@ -1,9 +0,0 @@ -[Desktop Entry] -Name=Minimo -Comment=Minimo web browser -Exec=minimo http://www.mozilla.org/projects/minimo/home.html -Terminal=0 -Type=Application -Icon=minimo.png -Categories=Application;Network; -StartupNotify=True diff --git a/meta/packages/mozilla/files/minimo.png b/meta/packages/mozilla/files/minimo.png deleted file mode 100644 index f8b2e2192b..0000000000 Binary files a/meta/packages/mozilla/files/minimo.png and /dev/null differ diff --git a/meta/packages/mozilla/minimo/bug-322806.diff b/meta/packages/mozilla/minimo/bug-322806.diff deleted file mode 100644 index e001e3fc67..0000000000 --- a/meta/packages/mozilla/minimo/bug-322806.diff +++ /dev/null @@ -1,13 +0,0 @@ -See https://bugzilla.mozilla.org/show_bug.cgi?id=322806 and http://bugs.openembedded.org/show_bug.cgi?id=1600 - ---- /tmp/xptcinvoke_arm.cpp 2006-12-10 20:02:57.000000000 +0100 -+++ mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_arm.cpp 2006-12-10 20:03:54.592227000 +0100 -@@ -212,7 +212,7 @@ - "add sp, sp, r4 \n\t" /* restore stack pointer */ - "mov %0, r0 \n\t" /* the result... */ - : "=r" (result) -- : "r" (&my_params) -+ : "r" (&my_params), "m" (my_params) - : "r0", "r1", "r2", "r3", "r4", "ip", "lr", "sp" - ); - diff --git a/meta/packages/mozilla/minimo/minimo b/meta/packages/mozilla/minimo/minimo deleted file mode 100644 index d130173adf..0000000000 --- a/meta/packages/mozilla/minimo/minimo +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/sh -export MOZILLA_FIVE_HOME=/usr/lib/mozilla-minimo -export LD_LIBRARY_PATH=${MOZILLA_FIVE_HOME} -exec ${MOZILLA_FIVE_HOME}/minimo "$@" diff --git a/meta/packages/mozilla/minimo/minimo.patch b/meta/packages/mozilla/minimo/minimo.patch deleted file mode 100644 index 8894ee7f45..0000000000 --- a/meta/packages/mozilla/minimo/minimo.patch +++ /dev/null @@ -1,356 +0,0 @@ -Index: mozilla/content/html/content/src/nsFormSubmission.cpp -=================================================================== ---- mozilla.orig/content/html/content/src/nsFormSubmission.cpp 2005-07-13 18:55:59.000000000 +0200 -+++ mozilla/content/html/content/src/nsFormSubmission.cpp 2007-05-10 12:11:20.000000000 +0200 -@@ -1315,11 +1315,6 @@ - nsresult rv = NS_OK; - - nsCAutoString charset(aCharset); -- // canonical name is passed so that we just have to check against -- // *our* canonical names listed in charsetaliases.properties -- if (charset.EqualsLiteral("ISO-8859-1")) { -- charset.AssignLiteral("windows-1252"); -- } - - // use UTF-8 for UTF-16* and UTF-32* (per WHATWG and existing practice of - // MS IE/Opera). -Index: mozilla/embedding/base/Makefile.in -=================================================================== ---- mozilla.orig/embedding/base/Makefile.in 2006-02-14 06:28:31.000000000 +0100 -+++ mozilla/embedding/base/Makefile.in 2007-05-10 12:11:20.000000000 +0200 -@@ -43,6 +43,7 @@ - - MODULE = embed_base - LIBRARY_NAME = embed_base_s -+EXPORT_LIBRARY = 1 - XPIDL_MODULE = embed_base - - include $(DEPTH)/config/autoconf.mk -Index: mozilla/js/src/Makefile.in -=================================================================== ---- mozilla.orig/js/src/Makefile.in 2006-07-28 00:56:20.000000000 +0200 -+++ mozilla/js/src/Makefile.in 2007-05-10 12:11:21.000000000 +0200 -@@ -46,6 +46,7 @@ - - MODULE = js - LIBRARY_NAME = mozjs -+EXPORT_LIBRARY = 1 - LIB_IS_C_ONLY = 1 - GRE_MODULE = 1 - -Index: mozilla/minimo/Makefile.in -=================================================================== ---- mozilla.orig/minimo/Makefile.in 2006-07-24 21:40:53.000000000 +0200 -+++ mozilla/minimo/Makefile.in 2007-05-10 12:13:46.000000000 +0200 -@@ -41,6 +41,6 @@ - - include $(DEPTH)/config/autoconf.mk - --DIRS = config components chrome locales customization base extensions -+DIRS = config chrome locales customization base extensions - - include $(topsrcdir)/config/rules.mk -Index: mozilla/minimo/base/Makefile.in -=================================================================== ---- mozilla.orig/minimo/base/Makefile.in 2006-08-09 17:42:26.000000000 +0200 -+++ mozilla/minimo/base/Makefile.in 2007-05-10 12:11:21.000000000 +0200 -@@ -96,7 +96,6 @@ - - # this should move into the toolkit! - LOCAL_INCLUDES = -I$(srcdir) -I$(topsrcdir)/xpfe/browser/src/ --CPPSRCS += nsBrowserStatusFilter.cpp nsBrowserInstance.cpp - - ifdef WINCE - RCINCLUDE = wince/SplashScreen.rc -@@ -143,10 +142,6 @@ - endif - - --FINAL_LINK_COMPS=$(topsrcdir)/minimo/base/$(FINAL_PLATFORM)/minimo-link-comps --FINAL_LINK_COMP_NAMES=$(topsrcdir)/minimo/base/$(FINAL_PLATFORM)/minimo-link-names --FINAL_LINK_LIBS=$(topsrcdir)/minimo/base/$(FINAL_PLATFORM)/minimo-link-libs -- - include $(topsrcdir)/config/static-config.mk - - EXTRA_DEPS += $(STATIC_EXTRA_DEPS) -@@ -180,14 +175,11 @@ - # (same as in mozilla/js/src/Makefile.in) - ifdef WINCE - LDFLAGS += -OPT:NOICF -+else -+# Hack to work around libxpcom_core.a / libunicharutil_s.a link order problem. -+LDFLAGS += -u NS_StringGetData_P -u NS_StringGetMutableData_P - endif - --export:: -- $(NSINSTALL) $(topsrcdir)/xpfe/browser/src/nsBrowserStatusFilter.cpp . -- $(NSINSTALL) $(topsrcdir)/xpfe/browser/src/nsBrowserInstance.cpp . -- -- --GARBAGE += nsBrowserStatusFilter.cpp nsBrowserInstance.cpp - - ifdef WINCE - package:: -Index: mozilla/minimo/base/Minimo.cpp -=================================================================== ---- mozilla.orig/minimo/base/Minimo.cpp 2006-10-27 22:30:36.000000000 +0200 -+++ mozilla/minimo/base/Minimo.cpp 2007-05-10 12:13:21.000000000 +0200 -@@ -813,6 +813,8 @@ - #ifdef MOZ_WIDGET_GTK2 - gtk_set_locale(); - gtk_init(&argc, &argv); -+ gtk_widget_set_default_visual(gdk_rgb_get_visual()); -+ gtk_widget_set_default_colormap(gdk_rgb_get_cmap()); - #endif - - #ifdef HACKY_PRE_LOAD_LIBRARY -Index: mozilla/minimo/base/SplashScreen.cpp -=================================================================== ---- mozilla.orig/minimo/base/SplashScreen.cpp 2006-08-21 21:00:24.000000000 +0200 -+++ mozilla/minimo/base/SplashScreen.cpp 2007-05-10 12:11:22.000000000 +0200 -@@ -202,9 +202,24 @@ - void KillSplashScreen() {} - void GetScreenSize(unsigned long* x, unsigned long* y) - { -+#ifdef MOZ_WIDGET_GTK2 -+ GdkDisplay* display = gdk_display_get_default(); -+ if (display != NULL) -+ { -+ GdkScreen *screen; -+ screen = gdk_display_get_default_screen(display); -+ *x = gdk_screen_get_width(screen); -+ *y = gdk_screen_get_height(screen); -+ } -+ else -+ { -+#endif - // we need to figure this out. - *x = 240; - *y = 320; -+#ifdef MOZ_WIDGET_GTK2 -+ } -+#endif - } - - -Index: mozilla/minimo/config/linux_package.sh -=================================================================== ---- mozilla.orig/minimo/config/linux_package.sh 2006-06-30 18:35:19.000000000 +0200 -+++ mozilla/minimo/config/linux_package.sh 2007-05-10 12:11:22.000000000 +0200 -@@ -29,9 +29,7 @@ - cp -pRL bin/libnssckbi.so minimo - cp -pRL bin/libsmime3.so minimo - cp -pRL bin/libsoftokn3.so minimo --cp -pRL bin/libsoftokn3.chk minimo - cp -pRL bin/libfreebl3.so minimo --cp -pRL bin/libfreebl3.chk minimo - cp -pRL bin/libssl3.so minimo - - mkdir -p minimo/chrome -@@ -62,8 +60,6 @@ - cp -pRL bin/components/nsHelperAppDlg.js minimo/components - cp -pRL bin/components/nsProgressDialog.js minimo/components - --cp -pRL bin/extensions/spatial-navigation@extensions.mozilla.org/components/* minimo/components -- - mkdir -p minimo/greprefs - cp -pRL bin/greprefs/* minimo/greprefs - -@@ -80,7 +76,7 @@ - - echo Linking XPT files. - --bin/xpt_link minimo/components/all.xpt bin/components/*.xpt -+host/bin/host_xpt_link minimo/components/all.xpt bin/components/*.xpt - - echo Chewing on chrome - -Index: mozilla/profile/dirserviceprovider/src/Makefile.in -=================================================================== ---- mozilla.orig/profile/dirserviceprovider/src/Makefile.in 2005-04-06 05:35:21.000000000 +0200 -+++ mozilla/profile/dirserviceprovider/src/Makefile.in 2007-05-10 12:11:23.000000000 +0200 -@@ -44,6 +44,7 @@ - - MODULE = profdirserviceprovider - LIBRARY_NAME = profdirserviceprovider_s -+EXPORT_LIBRARY = 1 - MOZILLA_INTERNAL_API = 1 - - REQUIRES = xpcom \ -Index: mozilla/security/coreconf/Linux.mk -=================================================================== ---- mozilla.orig/security/coreconf/Linux.mk 2006-02-03 23:26:36.000000000 +0100 -+++ mozilla/security/coreconf/Linux.mk 2007-05-10 12:11:23.000000000 +0200 -@@ -117,6 +117,10 @@ - OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE - CPU_ARCH = mips - else -+ifeq ($(OS_TEST),arm) -+ OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE -+ CPU_ARCH = arm -+else - OS_REL_CFLAGS = -DLINUX1_2 -Di386 -D_XOPEN_SOURCE - CPU_ARCH = x86 - endif -@@ -133,6 +137,7 @@ - endif - endif - endif -+endif - - - LIBC_TAG = _glibc -Index: mozilla/security/coreconf/arch.mk -=================================================================== ---- mozilla.orig/security/coreconf/arch.mk 2006-02-03 23:26:36.000000000 +0100 -+++ mozilla/security/coreconf/arch.mk 2007-05-10 12:11:24.000000000 +0200 -@@ -60,18 +60,14 @@ - 64BIT_TAG= - endif - --OS_ARCH := $(subst /,_,$(shell uname -s)) -+OS_ARCH := Linux - - # - # Attempt to differentiate between sparc and x86 Solaris - # - --OS_TEST := $(shell uname -m) --ifeq ($(OS_TEST),i86pc) -- OS_RELEASE := $(shell uname -r)_$(OS_TEST) --else -- OS_RELEASE := $(shell uname -r) --endif -+OS_TEST := arm -+OS_RELEASE := 2.6 - - # - # Force the IRIX64 machines to use IRIX. -Index: mozilla/toolkit/components/build/Makefile.in -=================================================================== ---- mozilla.orig/toolkit/components/build/Makefile.in 2006-07-13 22:08:29.000000000 +0200 -+++ mozilla/toolkit/components/build/Makefile.in 2007-05-10 12:11:27.000000000 +0200 -@@ -112,7 +112,6 @@ - $(NULL) - - SHARED_LIBRARY_LIBS = \ -- ../startup/src/$(LIB_PREFIX)appstartup_s.$(LIB_SUFFIX) \ - $(NULL) - - ifdef MOZ_XPINSTALL -Index: mozilla/toolkit/components/startup/src/Makefile.in -=================================================================== ---- mozilla.orig/toolkit/components/startup/src/Makefile.in 2005-07-27 22:42:44.000000000 +0200 -+++ mozilla/toolkit/components/startup/src/Makefile.in 2007-05-10 12:11:27.000000000 +0200 -@@ -43,6 +43,7 @@ - - MODULE = toolkitcomps - LIBRARY_NAME = appstartup_s -+EXPORT_LIBRARY = 1 - FORCE_STATIC_LIB = 1 - LIBXUL_LIBRARY = 1 - -Index: mozilla/toolkit/xre/Makefile.in -=================================================================== ---- mozilla.orig/toolkit/xre/Makefile.in 2007-02-06 08:13:20.000000000 +0100 -+++ mozilla/toolkit/xre/Makefile.in 2007-05-10 12:11:27.000000000 +0200 -@@ -45,7 +45,6 @@ - - MODULE = xulapp - LIBRARY_NAME = xulapp_s --EXPORT_LIBRARY = 1 - LIBXUL_LIBRARY = 1 - - REQUIRES = \ -@@ -180,14 +179,6 @@ - - include $(topsrcdir)/config/rules.mk - --ifdef BUILD_STATIC_LIBS --export:: -- @$(PERL) -I$(MOZILLA_DIR)/config $(MOZILLA_DIR)/config/build-list.pl $(FINAL_LINK_COMP_NAMES) Apprunner --# embedding/browser/gtk/src/Makefile.in sucks! we need to add an empty line to --# FINAL_LINK_COMPS to keep the two lists in sync :-( -- @$(PERL) -I$(MOZILLA_DIR)/config $(MOZILLA_DIR)/config/build-list.pl $(FINAL_LINK_COMPS) "" --endif -- - LOCAL_INCLUDES += \ - -I$(srcdir) \ - -I$(topsrcdir)/xpfe/bootstrap \ -Index: mozilla/xpcom/build/Makefile.in -=================================================================== ---- mozilla.orig/xpcom/build/Makefile.in 2006-01-29 17:51:02.000000000 +0100 -+++ mozilla/xpcom/build/Makefile.in 2007-05-10 12:11:27.000000000 +0200 -@@ -61,7 +61,7 @@ - endif - - # Do not set EXPORT_LIBRARY as we do not want xpcom in the static libs list --#EXPORT_LIBRARY = 1 -+EXPORT_LIBRARY = 1 - GRE_MODULE = 1 - MOZILLA_INTERNAL_API = 1 - -Index: mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm.cpp -=================================================================== ---- mozilla.orig/xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm.cpp 2004-04-18 16:18:18.000000000 +0200 -+++ mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_arm.cpp 2007-05-10 12:11:27.000000000 +0200 -@@ -45,9 +45,9 @@ - #endif - - /* Specify explicitly a symbol for this function, don't try to guess the c++ mangled symbol. */ --static nsresult PrepareAndDispatch(nsXPTCStubBase* self, uint32 methodIndex, PRUint32* args) asm("_PrepareAndDispatch"); -+nsresult PrepareAndDispatch(nsXPTCStubBase* self, uint32 methodIndex, PRUint32* args) asm("_PrepareAndDispatch"); - --static nsresult -+nsresult - PrepareAndDispatch(nsXPTCStubBase* self, uint32 methodIndex, PRUint32* args) - { - #define PARAM_BUFFER_COUNT 16 -Index: mozilla/xpfe/browser/src/Makefile.in -=================================================================== ---- mozilla.orig/xpfe/browser/src/Makefile.in 2005-03-18 22:23:45.000000000 +0100 -+++ mozilla/xpfe/browser/src/Makefile.in 2007-05-10 12:11:27.000000000 +0200 -@@ -44,6 +44,7 @@ - - MODULE = browser - LIBRARY_NAME = mozbrwsr_s -+EXPORT_LIBRARY = 1 - FORCE_STATIC_LIB = 1 - LIBXUL_LIBRARY = 1 - MODULE_NAME = nsBrowserModule -Index: mozilla/xpfe/components/build/Makefile.in -=================================================================== ---- mozilla.orig/xpfe/components/build/Makefile.in 2005-09-27 02:15:25.000000000 +0200 -+++ mozilla/xpfe/components/build/Makefile.in 2007-05-10 12:11:27.000000000 +0200 -@@ -44,7 +44,6 @@ - - MODULE = appcomps - LIBRARY_NAME = appcomps --EXPORT_LIBRARY = 1 - IS_COMPONENT = 1 - MODULE_NAME = application - LIBXUL_LIBRARY = 1 -Index: mozilla/xpfe/components/filepicker/src/Makefile.in -=================================================================== ---- mozilla.orig/xpfe/components/filepicker/src/Makefile.in 2006-05-22 18:29:32.000000000 +0200 -+++ mozilla/xpfe/components/filepicker/src/Makefile.in 2007-05-10 12:11:27.000000000 +0200 -@@ -47,7 +47,6 @@ - MODULE = filepicker - LIBRARY_NAME = fileview - SHORT_LIBNAME = fileview --EXPORT_LIBRARY = 1 - IS_COMPONENT = 1 - MODULE_NAME = nsFileViewModule - MOZILLA_INTERNAL_API = 1 -Index: mozilla/xpfe/components/find/src/Makefile.in -=================================================================== ---- mozilla.orig/xpfe/components/find/src/Makefile.in 2005-03-18 22:23:46.000000000 +0100 -+++ mozilla/xpfe/components/find/src/Makefile.in 2007-05-10 12:11:27.000000000 +0200 -@@ -45,7 +45,6 @@ - MODULE = appcomps - XPIDL_MODULE = mozfind - LIBRARY_NAME = mozfind --EXPORT_LIBRARY = 1 - IS_COMPONENT = 1 - MODULE_NAME = nsFindComponent - LIBXUL_LIBRARY = 1 diff --git a/meta/packages/mozilla/minimo/minimo.png b/meta/packages/mozilla/minimo/minimo.png deleted file mode 100644 index f8b2e2192b..0000000000 Binary files a/meta/packages/mozilla/minimo/minimo.png and /dev/null differ diff --git a/meta/packages/mozilla/minimo/mozconfig b/meta/packages/mozilla/minimo/mozconfig deleted file mode 100644 index 393981e9fa..0000000000 --- a/meta/packages/mozilla/minimo/mozconfig +++ /dev/null @@ -1,36 +0,0 @@ -# mozilla/configure: Features and packages: - -ac_add_options --enable-application=minimo -ac_add_options --enable-default-toolkit=gtk2 -ac_add_options --disable-freetype2 -ac_add_options --enable-xft -ac_add_options --disable-postscript -ac_add_options --disable-xprint -ac_add_options --disable-gnomevfs -ac_add_options --disable-gnomeui -ac_add_options --disable-jsd -ac_add_options --disable-plugins -ac_add_options --disable-view-source -ac_add_options --disable-accessibility -ac_add_options --disable-xpinstall -ac_add_options --enable-single-profile -ac_add_options --disable-jsloader -ac_add_options --disable-printing -ac_add_options --enable-native-uconv -ac_add_options --enable-plaintext-editor-only -ac_add_options --disable-xpcom-obsolete -ac_add_options --disable-pref-extensions -ac_add_options --disable-extensions -ac_add_options --enable-image-decoders=png,gif,jpeg -ac_add_options --disable-mathml -ac_add_options --disable-installer -ac_add_options --disable-updater -ac_add_options --disable-tests -ac_add_options --enable-optimize=-Os -ac_add_options --disable-logging -ac_add_options --enable-strip -ac_add_options --enable-elf-dynstr-gc -ac_add_options --disable-shared -ac_add_options --enable-static -ac_add_options --disable-profilesharing -ac_add_options --disable-profilelocking diff --git a/meta/packages/mozilla/minimo_cvs.bb b/meta/packages/mozilla/minimo_cvs.bb deleted file mode 100644 index 5eec96d143..0000000000 --- a/meta/packages/mozilla/minimo_cvs.bb +++ /dev/null @@ -1,153 +0,0 @@ -DESCRIPTION = "A minimal version of the Mozilla web browser for mobile devices" -SECTION = "x11/network" -LICENSE = "MPL/GPL/LGPL" -HOMEPAGE = "http://www.mozilla.org/projects/minimo/" -PRIORITY = "optional" - -DEPENDS = "libxrender xt xft fontconfig freetype libidl dbus-glib pango atk gtk+ libidl-native" - -CVSSVR = "cvs-mirror.mozilla.org" -BRTAG = "MOZILLA_1_8_BRANCH" -MOZDATE = "20070510" - -PV = "0.02+cvs${MOZDATE}" -PR = "r3" - -SRC_URI = "cvs://anonymous@${CVSSVR}/cvsroot;module=mozilla;tag=${BRTAG};date=${MOZDATE} \ - file://minimo.patch;patch=1 \ - file://bug-322806.diff;patch=1 \ - file://mozconfig \ - file://minimo \ - file://eabi-fix.patch;patch=1 \ - file://eabi-fix2.patch;patch=1 \ - file://eabi-fix3.patch;patch=1 \ - file://minimo.desktop \ - file://minimo.png" - -inherit autotools - -S = "${WORKDIR}/mozilla" - -export MOZCONFIG = "${WORKDIR}/mozconfig" - -export CROSS_COMPILE="1" -export ac_cv_prog_HOST_CC="${BUILD_CC}" -export ac_cv_prog_HOST_CFLAGS="${BUILD_CFLAGS}" -export ac_cv_prog_HOST_CXX="${BUILD_CXX}" -export ac_cv_prog_HOST_CXXFLAGS="${BUILD_CXXFLAGS}" -export HOST_LIBIDL_CONFIG = "${STAGING_BINDIR_NATIVE}/libIDL-config-2" - -mozdir="${libdir}/mozilla-minimo" - -EXTRA_OECONF += "--build=${BUILD_SYS} --host=${BUILD_SYS} --target=${TARGET_SYS} " - -do_configure() { - cd ${S} - oe_runmake -f client.mk CONFIGURE_ARGS="${EXTRA_OECONF}" configure - sed -i s:${TARGET_PREFIX}strip:echo:g config/autoconf.mk -} - -do_compile() { - cd ${S} - oe_runmake -f client.mk build -} - -do_install() { - cd ${WORKDIR} - - install -d ${D}${bindir} - install -m 0755 minimo ${D}${bindir} - - install -d ${D}${datadir}/applications - install -m 0644 minimo.desktop ${D}${datadir}/applications - - install -d ${D}/${datadir}/pixmaps - install -m 0644 minimo.png ${D}${datadir}/pixmaps - - cd ${S} - - ./minimo/config/linux_package.sh ${S} ${S}/minimo/config - - cd dist/minimo - - install -d ${D}${mozdir} - install -m 0755 minimo ${D}${mozdir} - install -m 0755 libfreebl3.so ${D}${mozdir} - install -m 0755 libnspr4.so ${D}${mozdir} - install -m 0755 libnss3.so ${D}${mozdir} - install -m 0755 libnssckbi.so ${D}${mozdir} - install -m 0755 libplc4.so ${D}${mozdir} - install -m 0755 libplds4.so ${D}${mozdir} - install -m 0755 libsmime3.so ${D}${mozdir} - install -m 0755 libsoftokn3.so ${D}${mozdir} - install -m 0755 libssl3.so ${D}${mozdir} - - install -d ${D}${mozdir}/chrome - install -m 0644 chrome/classic.jar ${D}${mozdir}/chrome - install -m 0644 chrome/classic.manifest ${D}${mozdir}/chrome - install -m 0644 chrome/en-US.jar ${D}${mozdir}/chrome - install -m 0644 chrome/en-US.manifest ${D}${mozdir}/chrome - install -m 0644 chrome/minimo-skin-vga.jar ${D}${mozdir}/chrome - install -m 0644 chrome/minimo-skin-vga.manifest ${D}${mozdir}/chrome - install -m 0644 chrome/minimo-skin.jar ${D}${mozdir}/chrome - install -m 0644 chrome/minimo-skin.manifest ${D}${mozdir}/chrome - install -m 0644 chrome/minimo.jar ${D}${mozdir}/chrome - install -m 0644 chrome/minimo.manifest ${D}${mozdir}/chrome - install -m 0644 chrome/pippki.jar ${D}${mozdir}/chrome - install -m 0644 chrome/pippki.manifest ${D}${mozdir}/chrome - install -m 0644 chrome/toolkit.jar ${D}${mozdir}/chrome - install -m 0644 chrome/toolkit.manifest ${D}${mozdir}/chrome - - install -d ${D}${mozdir}/components - install -m 0644 components/all.xpt ${D}${mozdir}/components - install -m 0644 components/nsHelperAppDlg.js ${D}${mozdir}/components - install -m 0644 components/nsProgressDialog.js ${D}${mozdir}/components - - install -d ${D}${mozdir}/greprefs - install -m 0644 greprefs/all.js ${D}${mozdir}/greprefs - install -m 0644 greprefs/security-prefs.js ${D}${mozdir}/greprefs - - install -d ${D}${mozdir}/res - install -m 0644 res/forms.css ${D}${mozdir}/res - install -m 0644 res/html.css ${D}${mozdir}/res - install -m 0644 res/quirk.css ${D}${mozdir}/res - install -m 0644 res/ua.css ${D}${mozdir}/res - install -m 0644 res/arrow.gif ${D}${mozdir}/res - install -m 0644 res/arrowd.gif ${D}${mozdir}/res - install -m 0644 res/broken-image.gif ${D}${mozdir}/res - install -m 0644 res/loading-image.gif ${D}${mozdir}/res - install -m 0644 res/charsetData.properties ${D}${mozdir}/res - install -m 0644 res/charsetalias.properties ${D}${mozdir}/res - install -m 0644 res/langGroups.properties ${D}${mozdir}/res - install -m 0644 res/language.properties ${D}${mozdir}/res - install -m 0644 res/unixcharset.properties ${D}${mozdir}/res - - install -d ${D}${mozdir}/res/dtd - install -m 0644 res/dtd/xhtml11.dtd ${D}${mozdir}/res/dtd - - install -d ${D}${mozdir}/res/entityTables - install -m 0644 res/entityTables/html40Latin1.properties ${D}${mozdir}/res/entityTables - install -m 0644 res/entityTables/html40Special.properties ${D}${mozdir}/res/entityTables - install -m 0644 res/entityTables/html40Symbols.properties ${D}${mozdir}/res/entityTables - install -m 0644 res/entityTables/htmlEntityVersions.properties ${D}${mozdir}/res/entityTables - install -m 0644 res/entityTables/transliterate.properties ${D}${mozdir}/res/entityTables - - install -d ${D}${mozdir}/res/fonts - install -m 0644 res/fonts/fontEncoding.properties ${D}${mozdir}/res/fonts - install -m 0644 res/fonts/pangoFontEncoding.properties ${D}${mozdir}/res/fonts - - install -d ${D}${mozdir}/res/html - install -m 0644 res/html/gopher-audio.gif ${D}${mozdir}/res/html - install -m 0644 res/html/gopher-binary.gif ${D}${mozdir}/res/html - install -m 0644 res/html/gopher-find.gif ${D}${mozdir}/res/html - install -m 0644 res/html/gopher-image.gif ${D}${mozdir}/res/html - install -m 0644 res/html/gopher-menu.gif ${D}${mozdir}/res/html - install -m 0644 res/html/gopher-movie.gif ${D}${mozdir}/res/html - install -m 0644 res/html/gopher-sound.gif ${D}${mozdir}/res/html - install -m 0644 res/html/gopher-telnet.gif ${D}${mozdir}/res/html - install -m 0644 res/html/gopher-text.gif ${D}${mozdir}/res/html - install -m 0644 res/html/gopher-unknown.gif ${D}${mozdir}/res/html -} - -FILES_${PN}-dbg += "${libdir}/mozilla-minimo/.debug*" -FILES_${PN} += "${mozdir}" diff --git a/meta/packages/nasm/nasm_2.07.bb b/meta/packages/nasm/nasm_2.07.bb deleted file mode 100644 index 4e482a04d6..0000000000 --- a/meta/packages/nasm/nasm_2.07.bb +++ /dev/null @@ -1,24 +0,0 @@ -DESCRIPTION = "General-purpose x86 assembler" -SECTION = "devel" -LICENSE = "simplifiedBSD" -LIC_CHKSUM_FILES = "file://LICENSE;md5=d89d124974e487e5d64da6f1cd8acfbb" -COMPATIBLE_HOST = '(x86_64|i.86.*)-(linux|freebsd.*)' - -PR = "r0" - -SRC_URI = "${SOURCEFORGE_MIRROR}/nasm/nasm-${PV}.tar.bz2 " - -inherit autotools - -do_configure_prepend () { - mv aclocal.m4 acinclude.m4 -} - -do_install() { - install -d ${D}${bindir} - install -d ${D}${mandir}/man1 - - oe_runmake 'INSTALLROOT=${D}' install -} - -BBCLASSEXTEND = "native" diff --git a/meta/packages/ncurses/ncurses.inc b/meta/packages/ncurses/ncurses.inc deleted file mode 100644 index 259750cb46..0000000000 --- a/meta/packages/ncurses/ncurses.inc +++ /dev/null @@ -1,99 +0,0 @@ -DESCRIPTION = "Ncurses library" -HOMEPAGE = "http://www.gnu.org/software/ncurses/ncurses.html" -LICENSE = "MIT" -SECTION = "libs" -DEPENDS = "ncurses-native" -DEPENDS_virtclass-native = "" -PACKAGES_prepend = "ncurses-tools " -PACKAGES_append = " ncurses-terminfo" -FILES_ncurses_append = " ${datadir}/tabset" -RSUGGESTS_${PN} = "ncurses-terminfo" -RPROVIDES = "libncurses5" - -inherit autotools - -# This keeps only tput/tset in ncurses -# clear/reset are in already busybox -FILES_ncurses-tools = "${bindir}/tic ${bindir}/toe ${bindir}/infotocap ${bindir}/captoinfo ${bindir}/infocmp ${bindir}/clear.${PN} ${bindir}/reset.${PN} ${bindir}/tack " -FILES_ncurses-terminfo = "${datadir}/terminfo" -FILES_${PN} = "${bindir}/tput ${bindir}/tset ${libdir}/lib*.so.* /usr/share/tabset /etc/terminfo" - -PARALLEL_MAKE="" - -FILESPATH = "${FILE_DIRNAME}/local:${FILE_DIRNAME}/ncurses-${PV}-${PR}:${FILE_DIRNAME}/ncurses-${PV}:${FILE_DIRNAME}/ncurses:${FILE_DIRNAME}" - -EXTRA_OECONF = "--with-shared \ - --with-libtool \ - --without-profile \ - --without-debug \ - --disable-rpath \ - --enable-echo \ - --enable-const \ - --without-ada \ - --enable-termcap \ - --without-cxx-binding \ - --with-terminfo-dirs=${sysconfdir}/terminfo:${datadir}/terminfo \ - --enable-overwrite \ - --with-build-ldflags='' \ - --with-build-ccflags='' " -export BUILD_CCFLAGS = "-I${S}/ncurses -I${S}/include ${BUILD_CFLAGS}" -export BUILD_LDFLAGS = "" -export EXTRA_OEMAKE = '"BUILD_LDFLAGS=" "BUILD_CCFLAGS=${BUILD_CCFLAGS}"' - -# This is necessary so that the "tic" command executed during the install can -# link with the correct libary in staging. -export LD_LIBRARY_PATH = "${STAGING_LIBDIR_NATIVE}" - -do_install() { - autotools_do_install - - ln -sf curses.h ${D}${includedir}/ncurses.h - - # our ncurses has termcap support - ln -sf libncurses.so ${D}${libdir}/libtermcap.so - ln -sf libncurses.a ${D}${libdir}/libtermcap.a - - # include some basic terminfo files - # stolen ;) from gentoo and modified a bit - for x in ansi console dumb linux rxvt screen sun vt{52,100,102,200,220} xterm-color xterm-xfree86 - do - local termfile="$(find "${D}${datadir}/terminfo/" -name "${x}" 2>/dev/null)" - local basedir="$(basename $(dirname "${termfile}"))" - - if [ -n "${termfile}" ] - then - install -d ${D}${sysconfdir}/terminfo/${basedir} - mv ${termfile} ${D}${sysconfdir}/terminfo/${basedir}/ - ln -s /etc/terminfo/${basedir}/${x} \ - ${D}${datadir}/terminfo/${basedir}/${x} - fi - done - # i think we can use xterm-color as default xterm - if [ -e ${D}${sysconfdir}/terminfo/x/xterm-color ] - then - ln -sf xterm-color ${D}${sysconfdir}/terminfo/x/xterm - fi - - if [ "${PN}" = "ncurses" ]; then - mv ${D}${bindir}/clear ${D}${bindir}/clear.${PN} - mv ${D}${bindir}/reset ${D}${bindir}/reset.${PN} - fi -} - - -pkg_postinst_ncurses-tools () { - if [ "${PN}" = "ncurses" ]; then - update-alternatives --install ${bindir}/clear clear clear.${PN} 100 - update-alternatives --install ${bindir}/reset reset reset.${PN} 100 - fi -} - - -pkg_prerm_ncurses-tools () { - if [ "${PN}" = "ncurses" ]; then - update-alternatives --remove clear clear.${PN} - update-alternatives --remove reset reset.${PN} - fi -} - -BBCLASSEXTEND = "native nativesdk" diff --git a/meta/packages/ncurses/ncurses/makefile_tweak.patch b/meta/packages/ncurses/ncurses/makefile_tweak.patch deleted file mode 100644 index 480855bcc6..0000000000 --- a/meta/packages/ncurses/ncurses/makefile_tweak.patch +++ /dev/null @@ -1,89 +0,0 @@ -Libtool 2.2.2 needs to be able to use top_builddir. Automake usually exports -this but ncurses doesn't use automake. - -RP 14/4/08 - -Index: ncurses-5.4/ncurses/Makefile.in -=================================================================== ---- ncurses-5.4.orig/ncurses/Makefile.in 2008-04-14 12:22:34.000000000 +0100 -+++ ncurses-5.4/ncurses/Makefile.in 2008-04-14 12:22:53.000000000 +0100 -@@ -57,6 +57,7 @@ - MODEL = @DFT_LWR_MODEL@ - DESTDIR = @DESTDIR@ - top_srcdir = @top_srcdir@ -+top_builddir = @top_srcdir@ - srcdir = @srcdir@ - prefix = @prefix@ - exec_prefix = @exec_prefix@ -Index: ncurses-5.4/form/Makefile.in -=================================================================== ---- ncurses-5.4.orig/form/Makefile.in 2008-04-14 12:30:35.000000000 +0100 -+++ ncurses-5.4/form/Makefile.in 2008-04-14 12:30:59.000000000 +0100 -@@ -51,6 +51,7 @@ - MODEL = @DFT_LWR_MODEL@ - DESTDIR = @DESTDIR@ - srcdir = @srcdir@ -+top_builddir = @top_srcdir@ - prefix = @prefix@ - exec_prefix = @exec_prefix@ - bindir = @bindir@ -Index: ncurses-5.4/menu/Makefile.in -=================================================================== ---- ncurses-5.4.orig/menu/Makefile.in 2008-04-14 12:29:00.000000000 +0100 -+++ ncurses-5.4/menu/Makefile.in 2008-04-14 12:29:13.000000000 +0100 -@@ -51,6 +51,7 @@ - MODEL = @DFT_LWR_MODEL@ - DESTDIR = @DESTDIR@ - srcdir = @srcdir@ -+top_builddir = @top_srcdir@ - prefix = @prefix@ - exec_prefix = @exec_prefix@ - bindir = @bindir@ -Index: ncurses-5.4/panel/Makefile.in -=================================================================== ---- ncurses-5.4.orig/panel/Makefile.in 2008-04-14 12:27:40.000000000 +0100 -+++ ncurses-5.4/panel/Makefile.in 2008-04-14 12:27:59.000000000 +0100 -@@ -51,6 +51,7 @@ - MODEL = @DFT_LWR_MODEL@ - DESTDIR = @DESTDIR@ - srcdir = @srcdir@ -+top_builddir = @top_srcdir@ - prefix = @prefix@ - exec_prefix = @exec_prefix@ - bindir = @bindir@ -Index: ncurses-5.4/progs/Makefile.in -=================================================================== ---- ncurses-5.4.orig/progs/Makefile.in 2008-04-14 12:24:37.000000000 +0100 -+++ ncurses-5.4/progs/Makefile.in 2008-04-14 12:25:06.000000000 +0100 -@@ -54,6 +54,7 @@ - MODEL = ../@DFT_OBJ_SUBDIR@ - DESTDIR = @DESTDIR@ - srcdir = @srcdir@ -+top_builddir = @top_srcdir@ - prefix = @prefix@ - exec_prefix = @exec_prefix@ - bindir = @bindir@ -Index: ncurses-5.4/tack/Makefile.in -=================================================================== ---- ncurses-5.4.orig/tack/Makefile.in 2008-04-14 12:26:05.000000000 +0100 -+++ ncurses-5.4/tack/Makefile.in 2008-04-14 12:26:26.000000000 +0100 -@@ -22,6 +22,7 @@ - MODEL = ../@DFT_OBJ_SUBDIR@ - DESTDIR = @DESTDIR@ - srcdir = @srcdir@ -+top_builddir = @top_srcdir@ - prefix = @prefix@ - exec_prefix = @exec_prefix@ - bindir = @bindir@ -Index: ncurses-5.4/test/Makefile.in -=================================================================== ---- ncurses-5.4.orig/test/Makefile.in 2008-04-14 12:32:37.000000000 +0100 -+++ ncurses-5.4/test/Makefile.in 2008-04-14 12:32:56.000000000 +0100 -@@ -43,6 +43,7 @@ - - MODEL = ../@DFT_OBJ_SUBDIR@ - srcdir = @srcdir@ -+top_builddir = @top_srcdir@ - prefix = @prefix@ - exec_prefix = @exec_prefix@ - libdir = @libdir@ diff --git a/meta/packages/ncurses/ncurses/visibility.patch b/meta/packages/ncurses/ncurses/visibility.patch deleted file mode 100644 index 29cac5f1b8..0000000000 --- a/meta/packages/ncurses/ncurses/visibility.patch +++ /dev/null @@ -1,4904 +0,0 @@ - -# -# Patch managed by http://www.holgerschurig.de/patcher.html -# - ---- ncurses-5.4/ncurses/Makefile.in~visibility.patch -+++ ncurses-5.4/ncurses/Makefile.in -@@ -107,7 +107,7 @@ - CFLAGS_NORMAL = $(CCFLAGS) - CFLAGS_DEBUG = $(CCFLAGS) @CC_G_OPT@ -DTRACE - CFLAGS_PROFILE = $(CCFLAGS) -pg --CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ -+CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ @LIBOPTS@ - - CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@) - ---- ncurses-5.4/panel/Makefile.in~visibility.patch -+++ ncurses-5.4/panel/Makefile.in -@@ -88,7 +88,7 @@ - CFLAGS_NORMAL = $(CCFLAGS) - CFLAGS_DEBUG = $(CCFLAGS) @CC_G_OPT@ -DTRACE - CFLAGS_PROFILE = $(CCFLAGS) -pg --CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ -+CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ @LIBOPTS@ - - CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@) - ---- ncurses-5.4/menu/Makefile.in~visibility.patch -+++ ncurses-5.4/menu/Makefile.in -@@ -87,7 +87,7 @@ - CFLAGS_NORMAL = $(CCFLAGS) - CFLAGS_DEBUG = $(CCFLAGS) @CC_G_OPT@ -DTRACE - CFLAGS_PROFILE = $(CCFLAGS) -pg --CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ -+CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ @LIBOPTS@ - - CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@) - ---- ncurses-5.4/c++/Makefile.in~visibility.patch -+++ ncurses-5.4/c++/Makefile.in -@@ -80,7 +80,7 @@ - CFLAGS_NORMAL = $(CCFLAGS) - CFLAGS_DEBUG = $(CCFLAGS) @CXX_G_OPT@ -DTRACE - CFLAGS_PROFILE = $(CCFLAGS) -pg --CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ -+CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ @LIBOPTS@ - - CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@) - ---- ncurses-5.4/form/Makefile.in~visibility.patch -+++ ncurses-5.4/form/Makefile.in -@@ -88,7 +88,7 @@ - CFLAGS_NORMAL = $(CCFLAGS) - CFLAGS_DEBUG = $(CCFLAGS) @CC_G_OPT@ -DTRACE - CFLAGS_PROFILE = $(CCFLAGS) -pg --CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ -+CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ @LIBOPTS@ - - CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@) - ---- ncurses-5.4/configure.in~visibility.patch -+++ ncurses-5.4/configure.in -@@ -34,17 +34,20 @@ - dnl See http://invisible-island.net/autoconf/ for additional information. - dnl - dnl --------------------------------------------------------------------------- --AC_PREREQ(2.13.20020210) -+AC_PREREQ(2.59) - AC_REVISION($Revision: 1.312 $) --AC_INIT(ncurses/base/lib_initscr.c) -+AC_INIT -+AC_CONFIG_SRCDIR([ncurses/base/lib_initscr.c]) - AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin) - -+m4_include([m4/templates.m4]) -+ - CF_SUBST_NCURSES_VERSION - - CF_WITH_REL_VERSION(NCURSES) - CF_WITH_ABI_VERSION - --CF_CHECK_CACHE([AC_CANONICAL_SYSTEM]) -+CF_CHECK_CACHE([AC_CANONICAL_TARGET([])]) - AC_ARG_WITH(system-type, - [ --with-system-type=XXX test: override derived host system-type], - [AC_MSG_WARN(overriding system type to $withval) -@@ -100,7 +103,7 @@ - CF_GXX_VERSION - case $GXX_VERSION in - 1*|2.[[0-6]]*) -- GXX=""; CXX=""; ac_cv_prog_gxx=no -+ GXX=""; CXX=""; ac_cv_cxx_compiler_gnu=no - cf_cxx_library=no - AC_MSG_WARN(templates do not work) - ;; -@@ -176,7 +179,6 @@ - AC_SUBST(DESTDIR) - - ############################################################################### --CF_HELP_MESSAGE(Build-Tools Needed to Compile Temporary Applications for Cross-compiling:) - # If we're cross-compiling, allow the user to override the tools and their - # options. The configure script is oriented toward identifying the host - # compiler, etc., but we need a build compiler to generate parts of the source. -@@ -213,7 +215,6 @@ - AC_SUBST(BUILD_EXEEXT) - - ############################################################################### --CF_HELP_MESSAGE(Options to Specify the Libraries Built/Used:) - - ### Options to allow the user to specify the set of libraries which are used. - ### Use "--without-normal --with-shared" to allow the default model to be -@@ -343,11 +344,11 @@ - - AC_MSG_CHECKING(for default loader flags) - case $DFT_LWR_MODEL in --libtool) LD_MODEL='' ;; -+libtool) LD_MODEL=''; LIBOPTS="-DNCURSES_DLL" ;; - normal) LD_MODEL='' ;; - debug) LD_MODEL=$CC_G_OPT ;; - profile) LD_MODEL='-pg';; --shared) LD_MODEL='' ;; -+shared) LD_MODEL=''; LIBOPTS="-DNCURSES_DLL" ;; - esac - AC_SUBST(LD_MODEL)dnl the type of link (e.g., -g or -pg) - AC_MSG_RESULT($LD_MODEL) -@@ -363,14 +364,14 @@ - if test "$CC_SHARED_OPTS" = "unknown"; then - for model in $cf_list_models; do - if test "$model" = "shared"; then -- AC_ERROR(Shared libraries are not supported in this version) -+ AC_MSG_ERROR([Shared libraries are not supported in this version]) - fi - done - fi - --############################################################################### --CF_HELP_MESSAGE(Fine-Tuning Your Configuration:) -+AC_SUBST(LIBOPTS) - -+############################################################################### - ### use option --disable-overwrite to leave out the link to -lcurses - AC_MSG_CHECKING(if you wish to install ncurses overwriting curses) - AC_ARG_ENABLE(overwrite, -@@ -450,7 +451,7 @@ - AC_ARG_ENABLE(big-core, - [ --disable-big-core assume machine has little memory], - [with_big_core=$enableval], -- [AC_TRY_RUN([ -+ [AC_RUN_IFELSE([AC_LANG_SOURCE([[ - #include - #include - int main() { -@@ -459,10 +460,7 @@ - if (s != 0) - s[0] = s[n-1] = 0; - exit(s == 0); --}], -- [with_big_core=yes], -- [with_big_core=no], -- [with_big_core=no])]) -+}]])],[with_big_core=yes],[with_big_core=no],[with_big_core=no])]) - AC_MSG_RESULT($with_big_core) - test "$with_big_core" = "yes" && AC_DEFINE(HAVE_BIG_CORE) - -@@ -477,7 +475,7 @@ - if test "$with_termcap" != "yes" ; then - if test "$use_database" = no ; then - if test -z "$with_fallback" ; then -- AC_ERROR(You have disabled the database w/o specifying fallbacks) -+ AC_MSG_ERROR([You have disabled the database w/o specifying fallbacks]) - fi - fi - AC_DEFINE(PURE_TERMINFO) -@@ -614,10 +612,10 @@ - test "$with_rcs_ids" = yes && AC_DEFINE(USE_RCS_IDS) - - ############################################################################### -+ - CF_MAN_PAGES([ captoinfo clear infocmp infotocap tic toe tput ]) - - ############################################################################### --CF_HELP_MESSAGE(Extensions:) - - ### Note that some functions (such as const) are normally disabled anyway. - AC_MSG_CHECKING(if you want to build with function extensions) -@@ -683,7 +681,6 @@ - - ############################################################################### - # These options are relatively safe to experiment with. --CF_HELP_MESSAGE(Development Code:) - AC_MSG_CHECKING(if you want all development code) - AC_ARG_WITH(develop, - [ --with-develop enable all development options], -@@ -719,7 +716,6 @@ - - ############################################################################### - # These are just experimental, probably should not be in a package: --CF_HELP_MESSAGE(Experimental Code:) - - AC_MSG_CHECKING(if you do not want to assume colors are white-on-black) - AC_ARG_ENABLE(assumed-color, -@@ -828,7 +824,6 @@ - AC_SUBST(TERMINFO_CAPS) - - ############################################################################### --CF_HELP_MESSAGE(Testing/development Options:) - - ### use option --disable-echo to suppress full display compiling commands - AC_MSG_CHECKING(if you want to display full commands during build) -@@ -931,7 +926,7 @@ - AC_SUBST(MATH_LIB) - - ### Checks for header files. --AC_STDC_HEADERS -+AC_HEADER_STDC([]) - AC_HEADER_DIRENT - AC_HEADER_TIME - CF_REGEX -@@ -965,7 +960,7 @@ - CF_SYS_TIME_SELECT - - ### checks for compiler characteristics --AC_LANG_C -+AC_LANG([C]) - AC_C_CONST - AC_C_INLINE - test "$ac_cv_c_inline" != no && AC_DEFINE(CC_HAS_INLINE_FUNCS) -@@ -1040,7 +1035,7 @@ - - # Check for C++ compiler characteristics (and ensure that it's there!) - if test -n "$CXX" ; then -- AC_LANG_CPLUSPLUS -+ AC_LANG([C++]) - CF_STDCPP_LIBRARY - - case $GXX_VERSION in -@@ -1135,7 +1130,6 @@ - fi - AC_SUBST(USE_CXX_BOOL) - --CF_HELP_MESSAGE(Ada95 Binding Options:) - - dnl Check for availability of GNU Ada Translator (GNAT). - dnl At the moment we support no other Ada95 compiler. -@@ -1309,15 +1303,16 @@ - - ################################################################################ - test "$use_database" = yes && SUB_MAKEFILES="$SUB_MAKEFILES misc/run_tic.sh:misc/run_tic.in" --AC_OUTPUT( \ -+AC_CONFIG_FILES([\ - include/MKterm.h.awk \ - include/curses.head:include/curses.h.in \ - include/termcap.h \ - include/unctrl.h \ - $SUB_MAKEFILES \ -- Makefile,[ -+ Makefile]) -+AC_CONFIG_COMMANDS([default],[ - CF_LIB_RULES --],[ -+],[[ - ### Special initialization commands, used to pass information from the - ### configuration-run into config.status - -@@ -1348,5 +1343,6 @@ - host="$host" - target="$target" - --],cat)dnl -+]]) -+AC_OUTPUT - ${MAKE-make} preinstall ---- ncurses-5.4/include/ncurses_dll.h~visibility.patch -+++ ncurses-5.4/include/ncurses_dll.h -@@ -7,8 +7,8 @@ - /* but this structure may be useful at some point for an MSVC build */ - /* so, for now unconditionally define the important flags */ - /* "the right way" for proper static and dll+auto-import behavior */ --#undef NCURSES_DLL --#define NCURSES_STATIC -+//#undef NCURSES_DLL -+//#define NCURSES_STATIC - - #if defined(__CYGWIN__) - # if defined(NCURSES_DLL) -@@ -32,12 +32,20 @@ - # endif - # define NCURSES_API __cdecl - # define NCURSES_EXPORT(type) NCURSES_IMPEXP type NCURSES_API --# define NCURSES_EXPORT_VAR(type) NCURSES_IMPEXP type -+# define NCURSES_EXPORT_VAR(var) var NCURSES_IMPEXP - #endif - - /* Take care of non-cygwin platforms */ - #if !defined(NCURSES_IMPEXP) --# define NCURSES_IMPEXP /* nothing */ -+# if defined(GCC_HASCLASSVISIBILITY) -+# if defined(NCURSES_DLL) -+# define NCURSES_IMPEXP __attribute__ ((visibility("default"))) -+# else -+# define NCURSES_IMPEXP /* nothing */ -+# endif -+# else -+# define NCURSES_IMPEXP /* nothing */ -+# endif - #endif - #if !defined(NCURSES_API) - # define NCURSES_API /* nothing */ -@@ -46,7 +54,7 @@ - # define NCURSES_EXPORT(type) NCURSES_IMPEXP type NCURSES_API - #endif - #if !defined(NCURSES_EXPORT_VAR) --# define NCURSES_EXPORT_VAR(type) NCURSES_IMPEXP type -+# define NCURSES_EXPORT_VAR(var) var NCURSES_IMPEXP - #endif - - #endif /* NCURSES_DLL_H_incl */ ---- ncurses-5.4/form/fty_alnum.c~visibility.patch -+++ ncurses-5.4/form/fty_alnum.c -@@ -132,6 +132,6 @@ - NULL - }; - --NCURSES_EXPORT_VAR(FIELDTYPE*) TYPE_ALNUM = &typeALNUM; -+FIELDTYPE* NCURSES_EXPORT_VAR(TYPE_ALNUM) = &typeALNUM; - - /* fty_alnum.c ends here */ ---- ncurses-5.4/form/fty_alpha.c~visibility.patch -+++ ncurses-5.4/form/fty_alpha.c -@@ -133,6 +133,6 @@ - NULL - }; - --NCURSES_EXPORT_VAR(FIELDTYPE*) TYPE_ALPHA = &typeALPHA; -+FIELDTYPE* NCURSES_EXPORT_VAR(TYPE_ALPHA) = &typeALPHA; - - /* fty_alpha.c ends here */ ---- ncurses-5.4/form/fld_newftyp.c~visibility.patch -+++ ncurses-5.4/form/fld_newftyp.c -@@ -48,7 +48,7 @@ - NULL /* enumerate previous function */ - }; - --NCURSES_EXPORT_VAR(const FIELDTYPE*) _nc_Default_FieldType = &default_fieldtype; -+const FIELDTYPE* NCURSES_EXPORT_VAR(_nc_Default_FieldType) = &default_fieldtype; - - /*--------------------------------------------------------------------------- - | Facility : libnform ---- ncurses-5.4/form/form.h~visibility.patch -+++ ncurses-5.4/form/form.h -@@ -248,24 +248,24 @@ - /************************* - * standard field types * - *************************/ --extern NCURSES_EXPORT_VAR(FIELDTYPE *) TYPE_ALPHA; --extern NCURSES_EXPORT_VAR(FIELDTYPE *) TYPE_ALNUM; --extern NCURSES_EXPORT_VAR(FIELDTYPE *) TYPE_ENUM; --extern NCURSES_EXPORT_VAR(FIELDTYPE *) TYPE_INTEGER; --extern NCURSES_EXPORT_VAR(FIELDTYPE *) TYPE_NUMERIC; --extern NCURSES_EXPORT_VAR(FIELDTYPE *) TYPE_REGEXP; -+extern FIELDTYPE * NCURSES_EXPORT_VAR(TYPE_ALPHA); -+extern FIELDTYPE * NCURSES_EXPORT_VAR(TYPE_ALNUM); -+extern FIELDTYPE * NCURSES_EXPORT_VAR(TYPE_ENUM); -+extern FIELDTYPE * NCURSES_EXPORT_VAR(TYPE_INTEGER); -+extern FIELDTYPE * NCURSES_EXPORT_VAR(TYPE_NUMERIC); -+extern FIELDTYPE * NCURSES_EXPORT_VAR(TYPE_REGEXP); - - /************************************ - * built-in additional field types * - * They are not defined in SVr4 * - ************************************/ --extern NCURSES_EXPORT_VAR(FIELDTYPE *) TYPE_IPV4; /* Internet IP Version 4 address */ -+extern FIELDTYPE * NCURSES_EXPORT_VAR(TYPE_IPV4); /* Internet IP Version 4 address */ - - /*********************** - * Default objects * - ***********************/ --extern NCURSES_EXPORT_VAR(FORM *) _nc_Default_Form; --extern NCURSES_EXPORT_VAR(FIELD *) _nc_Default_Field; -+extern FORM * NCURSES_EXPORT_VAR(_nc_Default_Form); -+extern FIELD * NCURSES_EXPORT_VAR(_nc_Default_Field); - - - /*********************** ---- ncurses-5.4/form/fty_int.c~visibility.patch -+++ ncurses-5.4/form/fty_int.c -@@ -155,6 +155,6 @@ - NULL - }; - --NCURSES_EXPORT_VAR(FIELDTYPE*) TYPE_INTEGER = &typeINTEGER; -+FIELDTYPE* NCURSES_EXPORT_VAR(TYPE_INTEGER) = &typeINTEGER; - - /* fty_int.c ends here */ ---- ncurses-5.4/form/fty_num.c~visibility.patch -+++ ncurses-5.4/form/fty_num.c -@@ -190,6 +190,6 @@ - NULL - }; - --NCURSES_EXPORT_VAR(FIELDTYPE*) TYPE_NUMERIC = &typeNUMERIC; -+FIELDTYPE* NCURSES_EXPORT_VAR(TYPE_NUMERIC) = &typeNUMERIC; - - /* fty_num.c ends here */ ---- ncurses-5.4/form/fty_regex.c~visibility.patch -+++ ncurses-5.4/form/fty_regex.c -@@ -252,6 +252,6 @@ - NULL - }; - --NCURSES_EXPORT_VAR(FIELDTYPE*) TYPE_REGEXP = &typeREGEXP; -+FIELDTYPE* NCURSES_EXPORT_VAR(TYPE_REGEXP) = &typeREGEXP; - - /* fty_regex.c ends here */ ---- ncurses-5.4/form/frm_def.c~visibility.patch -+++ ncurses-5.4/form/frm_def.c -@@ -60,7 +60,7 @@ - NULL /* fieldterm */ - }; - --NCURSES_EXPORT_VAR(FORM *) _nc_Default_Form = &default_form; -+FORM * NCURSES_EXPORT_VAR(_nc_Default_Form) = &default_form; - - /*--------------------------------------------------------------------------- - | Facility : libnform ---- ncurses-5.4/form/fld_def.c~visibility.patch -+++ ncurses-5.4/form/fld_def.c -@@ -63,7 +63,7 @@ - (char *)0 /* usrptr */ - }; - --NCURSES_EXPORT_VAR(FIELD *) _nc_Default_Field = &default_field; -+FIELD * NCURSES_EXPORT_VAR(_nc_Default_Field) = &default_field; - - /*--------------------------------------------------------------------------- - | Facility : libnform ---- ncurses-5.4/form/fty_enum.c~visibility.patch -+++ ncurses-5.4/form/fty_enum.c -@@ -290,6 +290,6 @@ - Previous_Enum - }; - --NCURSES_EXPORT_VAR(FIELDTYPE*) TYPE_ENUM = &typeENUM; -+FIELDTYPE* NCURSES_EXPORT_VAR(TYPE_ENUM) = &typeENUM; - - /* fty_enum.c ends here */ ---- ncurses-5.4/form/fty_ipv4.c~visibility.patch -+++ ncurses-5.4/form/fty_ipv4.c -@@ -76,6 +76,6 @@ - NULL - }; - --NCURSES_EXPORT_VAR(FIELDTYPE*) TYPE_IPV4 = &typeIPV4; -+FIELDTYPE* NCURSES_EXPORT_VAR(TYPE_IPV4) = &typeIPV4; - - /* fty_ipv4.c ends here */ ---- ncurses-5.4/form/form.priv.h~visibility.patch -+++ ncurses-5.4/form/form.priv.h -@@ -112,7 +112,7 @@ - #define C_BLANK ' ' - #define is_blank(c) ((c)==C_BLANK) - --extern NCURSES_EXPORT_VAR(const FIELDTYPE *) _nc_Default_FieldType; -+extern const FIELDTYPE * NCURSES_EXPORT_VAR(_nc_Default_FieldType); - - extern NCURSES_EXPORT(TypeArgument *) _nc_Make_Argument (const FIELDTYPE*,va_list*,int*); - extern NCURSES_EXPORT(TypeArgument *) _nc_Copy_Argument (const FIELDTYPE*,const TypeArgument*, int*); ---- ncurses-5.4/include/tic.h~visibility.patch -+++ ncurses-5.4/include/tic.h -@@ -117,7 +117,7 @@ - #define DEBUG(n, a) /*nothing*/ - #endif - --extern NCURSES_EXPORT_VAR(unsigned) _nc_tracing; -+extern unsigned NCURSES_EXPORT_VAR(_nc_tracing); - extern NCURSES_EXPORT(void) _nc_tracef (char *, ...) GCC_PRINTFLIKE(1,2); - extern NCURSES_EXPORT(const char *) _nc_visbuf (const char *); - extern NCURSES_EXPORT(const char *) _nc_visbuf2 (int, const char *); -@@ -151,7 +151,7 @@ - char *tk_valstring; /* value of capability (if a string) */ - }; - --extern NCURSES_EXPORT_VAR(struct token) _nc_curr_token; -+extern struct token NCURSES_EXPORT_VAR(_nc_curr_token); - - /* - * List of keynames with their corresponding code. -@@ -161,7 +161,7 @@ - int code; - }; - --extern NCURSES_EXPORT_VAR(const struct kn) _nc_key_names[]; -+extern const struct kn NCURSES_EXPORT_VAR(_nc_key_names[]); - - /* - * Offsets to string capabilities, with the corresponding functionkey -@@ -179,7 +179,7 @@ - - #else - --extern NCURSES_EXPORT_VAR(struct tinfo_fkeys) _nc_tinfo_fkeys[]; -+extern struct tinfo_fkeys NCURSES_EXPORT_VAR(_nc_tinfo_fkeys[]); - - #endif - -@@ -204,11 +204,11 @@ - const char *source; - }; - --extern NCURSES_EXPORT_VAR(const struct name_table_entry * const) _nc_info_hash_table[]; --extern NCURSES_EXPORT_VAR(const struct name_table_entry * const) _nc_cap_hash_table[]; -+extern const struct name_table_entry * const NCURSES_EXPORT_VAR(_nc_info_hash_table[]); -+extern const struct name_table_entry * const NCURSES_EXPORT_VAR(_nc_cap_hash_table[]); - --extern NCURSES_EXPORT_VAR(const struct alias) _nc_capalias_table[]; --extern NCURSES_EXPORT_VAR(const struct alias) _nc_infoalias_table[]; -+extern const struct alias NCURSES_EXPORT_VAR(_nc_capalias_table[]); -+extern const struct alias NCURSES_EXPORT_VAR(_nc_infoalias_table[]); - - extern NCURSES_EXPORT(const struct name_table_entry *) _nc_get_table (bool); - extern NCURSES_EXPORT(const struct name_table_entry * const *) _nc_get_hash_table (bool); -@@ -255,13 +255,13 @@ - extern NCURSES_EXPORT(void) _nc_panic_mode (char); - extern NCURSES_EXPORT(void) _nc_push_token (int); - extern NCURSES_EXPORT(void) _nc_reset_input (FILE *, char *); --extern NCURSES_EXPORT_VAR(int) _nc_curr_col; --extern NCURSES_EXPORT_VAR(int) _nc_curr_line; --extern NCURSES_EXPORT_VAR(int) _nc_syntax; --extern NCURSES_EXPORT_VAR(long) _nc_comment_end; --extern NCURSES_EXPORT_VAR(long) _nc_comment_start; --extern NCURSES_EXPORT_VAR(long) _nc_curr_file_pos; --extern NCURSES_EXPORT_VAR(long) _nc_start_line; -+extern int NCURSES_EXPORT_VAR(_nc_curr_col); -+extern int NCURSES_EXPORT_VAR(_nc_curr_line); -+extern int NCURSES_EXPORT_VAR(_nc_syntax); -+extern long NCURSES_EXPORT_VAR(_nc_comment_end); -+extern long NCURSES_EXPORT_VAR(_nc_comment_start); -+extern long NCURSES_EXPORT_VAR(_nc_curr_file_pos); -+extern long NCURSES_EXPORT_VAR(_nc_start_line); - #define SYN_TERMINFO 0 - #define SYN_TERMCAP 1 - -@@ -272,7 +272,7 @@ - extern NCURSES_EXPORT(void) _nc_syserr_abort (const char *const,...) GCC_PRINTFLIKE(1,2) GCC_NORETURN; - extern NCURSES_EXPORT(void) _nc_err_abort (const char *const,...) GCC_PRINTFLIKE(1,2) GCC_NORETURN; - extern NCURSES_EXPORT(void) _nc_warning (const char *const,...) GCC_PRINTFLIKE(1,2); --extern NCURSES_EXPORT_VAR(bool) _nc_suppress_warnings; -+extern bool NCURSES_EXPORT_VAR(_nc_suppress_warnings); - - /* comp_expand.c: expand string into readable form */ - extern NCURSES_EXPORT(char *) _nc_tic_expand (const char *, bool, int); -@@ -287,12 +287,12 @@ - /* lib_tparm.c */ - #define NUM_PARM 9 - --extern NCURSES_EXPORT_VAR(int) _nc_tparm_err; -+extern int NCURSES_EXPORT_VAR(_nc_tparm_err); - - extern NCURSES_EXPORT(int) _nc_tparm_analyze(const char *string, char *p_is_s[NUM_PARM], int *popcount); - - /* lib_tputs.c */ --extern NCURSES_EXPORT_VAR(int) _nc_nulls_sent; /* Add one for every null sent */ -+extern int NCURSES_EXPORT_VAR(_nc_nulls_sent); /* Add one for every null sent */ - - /* comp_main.c: compiler main */ - extern const char * _nc_progname; ---- ncurses-5.4/include/MKterm.h.awk.in~visibility.patch -+++ ncurses-5.4/include/MKterm.h.awk.in -@@ -228,9 +228,9 @@ - print " char * _termname; /* used for termname() */" - print "} TERMINAL;" - print "" -- print "extern NCURSES_EXPORT_VAR(TERMINAL *) cur_term;" -+ print "extern TERMINAL * NCURSES_EXPORT_VAR(cur_term);" - print "" -- print "#if BROKEN_LINKER" -+ print "#if defined(BROKEN_LINKER)" - print "#define boolnames _nc_boolnames()" - print "#define boolcodes _nc_boolcodes()" - print "#define boolfnames _nc_boolfnames()" -@@ -253,15 +253,15 @@ - print "" - print "#else" - print "" -- print "extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) boolnames[];" -- print "extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) boolcodes[];" -- print "extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) boolfnames[];" -- print "extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) numnames[];" -- print "extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) numcodes[];" -- print "extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) numfnames[];" -- print "extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) strnames[];" -- print "extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) strcodes[];" -- print "extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) strfnames[];" -+ print "extern NCURSES_CONST char * const NCURSES_EXPORT_VAR(boolnames[]);" -+ print "extern NCURSES_CONST char * const NCURSES_EXPORT_VAR(boolcodes[]);" -+ print "extern NCURSES_CONST char * const NCURSES_EXPORT_VAR(boolfnames[]);" -+ print "extern NCURSES_CONST char * const NCURSES_EXPORT_VAR(numnames[]);" -+ print "extern NCURSES_CONST char * const NCURSES_EXPORT_VAR(numcodes[]);" -+ print "extern NCURSES_CONST char * const NCURSES_EXPORT_VAR(numfnames[]);" -+ print "extern NCURSES_CONST char * const NCURSES_EXPORT_VAR(strnames[]);" -+ print "extern NCURSES_CONST char * const NCURSES_EXPORT_VAR(strcodes[]);" -+ print "extern NCURSES_CONST char * const NCURSES_EXPORT_VAR(strfnames[]);" - print "" - print "#endif" - print "" -@@ -287,7 +287,7 @@ - print "#if !defined(__NCURSES_H)" - print "extern NCURSES_EXPORT(char *) tigetstr (NCURSES_CONST char *);" - print "extern NCURSES_EXPORT(char *) tparm (NCURSES_CONST char *, ...);" -- print "extern NCURSES_EXPORT_VAR(char) ttytype[];" -+ print "extern char NCURSES_EXPORT_VAR(ttytype[]);" - print "extern NCURSES_EXPORT(int) putp (const char *);" - print "extern NCURSES_EXPORT(int) tigetflag (NCURSES_CONST char *);" - print "extern NCURSES_EXPORT(int) tigetnum (NCURSES_CONST char *);" ---- ncurses-5.4/include/termcap.h.in~visibility.patch -+++ ncurses-5.4/include/termcap.h.in -@@ -54,10 +54,10 @@ - #undef NCURSES_OSPEED - #define NCURSES_OSPEED @NCURSES_OSPEED@ - --extern NCURSES_EXPORT_VAR(char) PC; --extern NCURSES_EXPORT_VAR(char *) UP; --extern NCURSES_EXPORT_VAR(char *) BC; --extern NCURSES_EXPORT_VAR(NCURSES_OSPEED) ospeed; -+extern char NCURSES_EXPORT_VAR(PC); -+extern char * NCURSES_EXPORT_VAR(UP); -+extern char * NCURSES_EXPORT_VAR(BC); -+extern NCURSES_OSPEED NCURSES_EXPORT_VAR(ospeed); - - #if !defined(NCURSES_TERM_H_incl) - extern NCURSES_EXPORT(char *) tgetstr (NCURSES_CONST char *, char **); ---- ncurses-5.4/include/term_entry.h~visibility.patch -+++ ncurses-5.4/include/term_entry.h -@@ -90,8 +90,8 @@ - #define ExtNumname(tp,i,names) EXT_NAMES(tp, i, NUMCOUNT, (i - (tp->num_Numbers - tp->ext_Numbers)) + tp->ext_Booleans, names) - #define ExtStrname(tp,i,names) EXT_NAMES(tp, i, STRCOUNT, (i - (tp->num_Strings - tp->ext_Strings)) + (tp->ext_Numbers + tp->ext_Booleans), names) - --extern NCURSES_EXPORT_VAR(ENTRY *) _nc_head; --extern NCURSES_EXPORT_VAR(ENTRY *) _nc_tail; -+extern ENTRY * NCURSES_EXPORT_VAR(_nc_head); -+extern ENTRY * NCURSES_EXPORT_VAR(_nc_tail); - #define for_entry_list(qp) for (qp = _nc_head; qp; qp = qp->next) - - #define MAX_LINE 132 -@@ -135,8 +135,8 @@ - - /* parse_entry.c: entry-parsing code */ - #if NCURSES_XNAMES --extern NCURSES_EXPORT_VAR(bool) _nc_user_definable; --extern NCURSES_EXPORT_VAR(bool) _nc_disable_period; -+extern bool NCURSES_EXPORT_VAR(_nc_user_definable); -+extern bool NCURSES_EXPORT_VAR(_nc_disable_period); - #endif - extern NCURSES_EXPORT(int) _nc_parse_entry (ENTRY *, int, bool); - extern NCURSES_EXPORT(int) _nc_capcmp (const char *, const char *); ---- ncurses-5.4/include/curses.h.in~visibility.patch -+++ ncurses-5.4/include/curses.h.in -@@ -171,8 +171,8 @@ - #define WA_VERTICAL A_VERTICAL - - /* colors */ --extern NCURSES_EXPORT_VAR(int) COLORS; --extern NCURSES_EXPORT_VAR(int) COLOR_PAIRS; -+extern int NCURSES_EXPORT_VAR(COLORS); -+extern int NCURSES_EXPORT_VAR(COLOR_PAIRS); - - #define COLOR_BLACK 0 - #define COLOR_RED 1 -@@ -186,10 +186,10 @@ - /* line graphics */ - - #if @BROKEN_LINKER@ --extern NCURSES_EXPORT_VAR(chtype*) _nc_acs_map(void); -+extern chtype* NCURSES_EXPORT_VAR(_nc_acs_map)(void); - #define acs_map (_nc_acs_map()) - #else --extern NCURSES_EXPORT_VAR(chtype) acs_map[]; -+extern chtype NCURSES_EXPORT_VAR(acs_map[]); - #endif - - #define NCURSES_ACS(c) (acs_map[(unsigned char)c]) -@@ -369,20 +369,20 @@ - #endif - }; - --extern NCURSES_EXPORT_VAR(WINDOW *) stdscr; --extern NCURSES_EXPORT_VAR(WINDOW *) curscr; --extern NCURSES_EXPORT_VAR(WINDOW *) newscr; -+extern WINDOW * NCURSES_EXPORT_VAR(stdscr); -+extern WINDOW * NCURSES_EXPORT_VAR(curscr); -+extern WINDOW * NCURSES_EXPORT_VAR(newscr); - --extern NCURSES_EXPORT_VAR(int) LINES; --extern NCURSES_EXPORT_VAR(int) COLS; --extern NCURSES_EXPORT_VAR(int) TABSIZE; -+extern int NCURSES_EXPORT_VAR(LINES); -+extern int NCURSES_EXPORT_VAR(COLS); -+extern int NCURSES_EXPORT_VAR(TABSIZE); - - /* - * This global was an undocumented feature under AIX curses. - */ --extern NCURSES_EXPORT_VAR(int) ESCDELAY; /* ESC expire time in milliseconds */ -+extern int NCURSES_EXPORT_VAR(ESCDELAY); /* ESC expire time in milliseconds */ - --extern NCURSES_EXPORT_VAR(char) ttytype[]; /* needed for backward compatibility */ -+extern char NCURSES_EXPORT_VAR(ttytype[]); /* needed for backward compatibility */ - - /* - * These functions are extensions - not in XSI Curses. ---- ncurses-5.4/include/curses.tail~visibility.patch -+++ ncurses-5.4/include/curses.tail -@@ -110,7 +110,7 @@ - #define TRACE_MAXIMUM ((1 << TRACE_SHIFT) - 1) /* maximum trace level */ - - #if defined(TRACE) || defined(NCURSES_TEST) --extern NCURSES_EXPORT_VAR(int) _nc_optimize_enable; /* enable optimizations */ -+extern int NCURSES_EXPORT_VAR(_nc_optimize_enable); /* enable optimizations */ - #ifdef _XOPEN_SOURCE_EXTENDED - extern NCURSES_EXPORT(const char *) _nc_viswbuf(const wchar_t *); - #endif ---- ncurses-5.4/include/curses.wide~visibility.patch -+++ ncurses-5.4/include/curses.wide -@@ -3,7 +3,7 @@ - - /* $Id: curses.wide,v 1.28 2004/01/03 20:35:14 tom Exp $ */ - --extern NCURSES_EXPORT_VAR(cchar_t *) _nc_wacs; -+extern cchar_t * NCURSES_EXPORT_VAR(_nc_wacs); - - #define NCURSES_WACS(c) (&_nc_wacs[(unsigned char)c]) - ---- ncurses-5.4/menu/menu.priv.h~visibility.patch -+++ ncurses-5.4/menu/menu.priv.h -@@ -49,8 +49,8 @@ - /* Backspace code */ - #define BS (8) - --extern NCURSES_EXPORT_VAR(ITEM) _nc_Default_Item; --extern NCURSES_EXPORT_VAR(MENU) _nc_Default_Menu; -+extern ITEM NCURSES_EXPORT_VAR(_nc_Default_Item); -+extern MENU NCURSES_EXPORT_VAR(_nc_Default_Menu); - - /* Normalize item to default if none was given */ - #define Normalize_Item( item ) ((item)=(item)?(item):&_nc_Default_Item) ---- ncurses-5.4/menu/m_global.c~visibility.patch -+++ ncurses-5.4/menu/m_global.c -@@ -41,7 +41,7 @@ - - static char mark[] = "-"; - --NCURSES_EXPORT_VAR(MENU) _nc_Default_Menu = { -+MENU NCURSES_EXPORT_VAR(_nc_Default_Menu) = { - 16, /* Nr. of chars high */ - 1, /* Nr. of chars wide */ - 16, /* Nr. of items high */ -@@ -80,7 +80,7 @@ - 0 /* status */ - }; - --NCURSES_EXPORT_VAR(ITEM) _nc_Default_Item = { -+ITEM NCURSES_EXPORT_VAR(_nc_Default_Item) = { - { (char *)0, 0 }, /* name */ - { (char *)0, 0 }, /* description */ - (MENU *)0, /* Pointer to parent menu */ ---- ncurses-5.4/ncurses/tty/lib_mvcur.c~visibility.patch -+++ ncurses-5.4/ncurses/tty/lib_mvcur.c -@@ -937,7 +937,7 @@ - } - - #if defined(TRACE) || defined(NCURSES_TEST) --NCURSES_EXPORT_VAR(int) _nc_optimize_enable = OPTIMIZE_ALL; -+int NCURSES_EXPORT_VAR(_nc_optimize_enable) = OPTIMIZE_ALL; - #endif - - #if defined(MAIN) || defined(NCURSES_TEST) -@@ -950,7 +950,7 @@ - #include - #include - --NCURSES_EXPORT_VAR(const char *) _nc_progname = "mvcur"; -+const char * NCURSES_EXPORT_VAR(_nc_progname) = "mvcur"; - - static unsigned long xmits; - ---- ncurses-5.4/ncurses/tty/hardscroll.c~visibility.patch -+++ ncurses-5.4/ncurses/tty/hardscroll.c -@@ -151,8 +151,7 @@ - - # undef screen_lines - # define screen_lines MAXLINES --NCURSES_EXPORT_VAR(int) --oldnums[MAXLINES]; -+int NCURSES_EXPORT_VAR(oldnums[MAXLINES]); - # define OLDNUM(n) oldnums[n] - # define _tracef printf - # undef TR -@@ -163,8 +162,7 @@ - /* OLDNUM(n) indicates which line will be shifted to the position n. - if OLDNUM(n) == _NEWINDEX, then the line n in new, not shifted from - somewhere. */ --NCURSES_EXPORT_VAR(int *) --_nc_oldnums = 0; -+int * NCURSES_EXPORT_VAR(_nc_oldnums) = 0; - - # if USE_HASHMAP - static int oldnums_allocated = 0; ---- ncurses-5.4/ncurses/base/lib_getch.c~visibility.patch -+++ ncurses-5.4/ncurses/base/lib_getch.c -@@ -44,8 +44,7 @@ - - #include - --NCURSES_EXPORT_VAR(int) --ESCDELAY = 1000; /* max interval betw. chars in funkeys, in millisecs */ -+int NCURSES_EXPORT_VAR(ESCDELAY) = 1000; /* max interval betw. chars in funkeys, in millisecs */ - - #ifdef NCURSES_WGETCH_EVENTS - #define TWAIT_MASK 7 ---- ncurses-5.4/ncurses/base/lib_slk.c~visibility.patch -+++ ncurses-5.4/ncurses/base/lib_slk.c -@@ -47,8 +47,7 @@ - * We'd like to move these into the screen context structure, but cannot, - * because slk_init() is called before initscr()/newterm(). - */ --NCURSES_EXPORT_VAR(int) --_nc_slk_format = 0; /* one more than format specified in slk_init() */ -+int NCURSES_EXPORT_VAR(_nc_slk_format) = 0; /* one more than format specified in slk_init() */ - - /* - * Paint the info line for the PC style SLK emulation. ---- ncurses-5.4/ncurses/base/lib_color.c~visibility.patch -+++ ncurses-5.4/ncurses/base/lib_color.c -@@ -48,8 +48,8 @@ - * historical reasons. So we assign them in start_color() and also in - * set_term()'s screen-switching logic. - */ --NCURSES_EXPORT_VAR(int) COLOR_PAIRS = 0; --NCURSES_EXPORT_VAR(int) COLORS = 0; -+int NCURSES_EXPORT_VAR(COLOR_PAIRS) = 0; -+int NCURSES_EXPORT_VAR(COLORS) = 0; - - #define DATA(r,g,b) {r,g,b, 0,0,0, 0} - ---- ncurses-5.4/ncurses/tinfo/lib_termcap.c~visibility.patch -+++ ncurses-5.4/ncurses/tinfo/lib_termcap.c -@@ -50,8 +50,8 @@ - #define L_BRACK '[' - #define SHIFT_OUT 017 /* ^N */ - --NCURSES_EXPORT_VAR(char *) UP = 0; --NCURSES_EXPORT_VAR(char *) BC = 0; -+char * NCURSES_EXPORT_VAR(UP) = 0; -+char * NCURSES_EXPORT_VAR(BC) = 0; - - static char *fix_me = 0; - ---- ncurses-5.4/ncurses/tinfo/lib_cur_term.c~visibility.patch -+++ ncurses-5.4/ncurses/tinfo/lib_cur_term.c -@@ -42,7 +42,7 @@ - - MODULE_ID("$Id: lib_cur_term.c,v 1.13 2003/12/27 18:21:30 tom Exp $") - --NCURSES_EXPORT_VAR(TERMINAL *) cur_term = 0; -+TERMINAL * NCURSES_EXPORT_VAR(cur_term) = 0; - - NCURSES_EXPORT(TERMINAL *) - set_curterm(TERMINAL * termp) ---- ncurses-5.4/ncurses/tinfo/lib_setup.c~visibility.patch -+++ ncurses-5.4/ncurses/tinfo/lib_setup.c -@@ -91,10 +91,10 @@ - # endif - #endif - --NCURSES_EXPORT_VAR(char) ttytype[NAMESIZE] = ""; --NCURSES_EXPORT_VAR(int) LINES = 0; --NCURSES_EXPORT_VAR(int) COLS = 0; --NCURSES_EXPORT_VAR(int) TABSIZE = 0; -+char NCURSES_EXPORT_VAR(ttytype[NAMESIZE]) = ""; -+int NCURSES_EXPORT_VAR(LINES) = 0; -+int NCURSES_EXPORT_VAR(COLS) = 0; -+int NCURSES_EXPORT_VAR(TABSIZE) = 0; - - static int _use_env = TRUE; - ---- ncurses-5.4/ncurses/tinfo/MKnames.awk~visibility.patch -+++ ncurses-5.4/ncurses/tinfo/MKnames.awk -@@ -10,7 +10,7 @@ - print "#include " > "namehdr" - print "#define DCL(it) static IT data##it[]" > "namehdr" - print "#else" > "namehdr" -- print "#define DCL(it) NCURSES_EXPORT_VAR(IT) it[]" > "namehdr" -+ print "#define DCL(it) IT NCURSES_EXPORT_VAR(it[])" > "namehdr" - print "#endif" > "namehdr" - print "" > "namehdr" - print "/*" > "boolnames" ---- ncurses-5.4/ncurses/tinfo/lib_tparm.c~visibility.patch -+++ ncurses-5.4/ncurses/tinfo/lib_tparm.c -@@ -115,7 +115,7 @@ - bool num_type; - } stack_frame; - --NCURSES_EXPORT_VAR(int) _nc_tparm_err = 0; -+int NCURSES_EXPORT_VAR(_nc_tparm_err) = 0; - - static stack_frame stack[STACKSIZE]; - static int stack_ptr; ---- ncurses-5.4/ncurses/tinfo/lib_tputs.c~visibility.patch -+++ ncurses-5.4/ncurses/tinfo/lib_tputs.c -@@ -47,10 +47,10 @@ - - MODULE_ID("$Id: lib_tputs.c,v 1.62 2003/08/23 21:39:20 tom Exp $") - --NCURSES_EXPORT_VAR(char) PC = 0; /* used by termcap library */ --NCURSES_EXPORT_VAR(NCURSES_OSPEED) ospeed = 0; /* used by termcap library */ -+char NCURSES_EXPORT_VAR(PC) = 0; /* used by termcap library */ -+NCURSES_OSPEED NCURSES_EXPORT_VAR(ospeed) = 0; /* used by termcap library */ - --NCURSES_EXPORT_VAR(int) _nc_nulls_sent = 0; /* used by 'tack' program */ -+int NCURSES_EXPORT_VAR(_nc_nulls_sent) = 0; /* used by 'tack' program */ - - static int (*my_outch) (int c) = _nc_outch; - ---- ncurses-5.4/ncurses/tinfo/comp_error.c~visibility.patch -+++ ncurses-5.4/ncurses/tinfo/comp_error.c -@@ -42,9 +42,9 @@ - - MODULE_ID("$Id: comp_error.c,v 1.25 2002/09/07 20:05:07 tom Exp $") - --NCURSES_EXPORT_VAR(bool) _nc_suppress_warnings = FALSE; --NCURSES_EXPORT_VAR(int) _nc_curr_line = 0; /* current line # in input */ --NCURSES_EXPORT_VAR(int) _nc_curr_col = 0; /* current column # in input */ -+bool NCURSES_EXPORT_VAR(_nc_suppress_warnings) = FALSE; -+int NCURSES_EXPORT_VAR(_nc_curr_line) = 0; /* current line # in input */ -+int NCURSES_EXPORT_VAR(_nc_curr_col) = 0; /* current column # in input */ - - static const char *sourcename; - static char *termtype; ---- ncurses-5.4/ncurses/tinfo/free_ttype.c~visibility.patch -+++ ncurses-5.4/ncurses/tinfo/free_ttype.c -@@ -92,7 +92,7 @@ - } - - #if NCURSES_XNAMES --NCURSES_EXPORT_VAR(bool) _nc_user_definable = TRUE; -+bool NCURSES_EXPORT_VAR(_nc_user_definable) = TRUE; - - NCURSES_EXPORT(int) - use_extended_names(bool flag) ---- ncurses-5.4/ncurses/tinfo/comp_parse.c~visibility.patch -+++ ncurses-5.4/ncurses/tinfo/comp_parse.c -@@ -78,8 +78,8 @@ - * _nc_head _nc_tail - */ - --NCURSES_EXPORT_VAR(ENTRY *) _nc_head = 0; --NCURSES_EXPORT_VAR(ENTRY *) _nc_tail = 0; -+ENTRY * NCURSES_EXPORT_VAR(_nc_head) = 0; -+ENTRY * NCURSES_EXPORT_VAR(_nc_tail) = 0; - - static void - enqueue(ENTRY * ep) ---- ncurses-5.4/ncurses/tinfo/comp_scan.c~visibility.patch -+++ ncurses-5.4/ncurses/tinfo/comp_scan.c -@@ -60,19 +60,13 @@ - - #define iswhite(ch) (ch == ' ' || ch == '\t') - --NCURSES_EXPORT_VAR(int) --_nc_syntax = 0; /* termcap or terminfo? */ --NCURSES_EXPORT_VAR(long) --_nc_curr_file_pos = 0; /* file offset of current line */ --NCURSES_EXPORT_VAR(long) --_nc_comment_start = 0; /* start of comment range before name */ --NCURSES_EXPORT_VAR(long) --_nc_comment_end = 0; /* end of comment range before name */ --NCURSES_EXPORT_VAR(long) --_nc_start_line = 0; /* start line of current entry */ -+int NCURSES_EXPORT_VAR(_nc_syntax) = 0; /* termcap or terminfo? */ -+long NCURSES_EXPORT_VAR(_nc_curr_file_pos) = 0; /* file offset of current line */ -+long NCURSES_EXPORT_VAR(_nc_comment_start) = 0; /* start of comment range before name */ -+long NCURSES_EXPORT_VAR(_nc_comment_end) = 0; /* end of comment range before name */ -+long NCURSES_EXPORT_VAR(_nc_start_line) = 0; /* start line of current entry */ - --NCURSES_EXPORT_VAR(struct token) --_nc_curr_token = -+struct token NCURSES_EXPORT_VAR(_nc_curr_token) = - { - 0, 0, 0 - }; -@@ -90,8 +84,7 @@ - static char *pushname; - - #if NCURSES_EXT_FUNCS --NCURSES_EXPORT_VAR(bool) --_nc_disable_period = FALSE; /* used by tic -a option */ -+bool NCURSES_EXPORT_VAR(_nc_disable_period) = FALSE; /* used by tic -a option */ - #endif - - static bool end_of_stream(void); ---- ncurses-5.4/ncurses/tinfo/lib_acs.c~visibility.patch -+++ ncurses-5.4/ncurses/tinfo/lib_acs.c -@@ -37,8 +37,7 @@ - MODULE_ID("$Id: lib_acs.c,v 1.25 2002/12/28 16:26:46 tom Exp $") - - #if BROKEN_LINKER --NCURSES_EXPORT_VAR(chtype *) --_nc_acs_map(void) -+chtype * NCURSES_EXPORT_VAR(_nc_acs_map)(void) - { - static chtype *the_map = 0; - if (the_map == 0) -@@ -46,7 +45,7 @@ - return the_map; - } - #else --NCURSES_EXPORT_VAR(chtype) acs_map[ACS_LEN] = -+chtype NCURSES_EXPORT_VAR(acs_map[ACS_LEN]) = - { - 0 - }; ---- ncurses-5.4/ncurses/tinfo/lib_data.c~visibility.patch -+++ ncurses-5.4/ncurses/tinfo/lib_data.c -@@ -46,14 +46,11 @@ - * OS/2's native linker complains if we don't initialize public data when - * constructing a dll (reported by J.J.G.Ripoll). - */ --NCURSES_EXPORT_VAR(WINDOW *) --stdscr = 0; --NCURSES_EXPORT_VAR(WINDOW *) --curscr = 0; --NCURSES_EXPORT_VAR(WINDOW *) --newscr = 0; -+WINDOW * NCURSES_EXPORT_VAR(stdscr) = 0; -+WINDOW * NCURSES_EXPORT_VAR(curscr) = 0; -+WINDOW * NCURSES_EXPORT_VAR(newscr) = 0; - --NCURSES_EXPORT_VAR(SCREEN *) _nc_screen_chain = 0; -+SCREEN * NCURSES_EXPORT_VAR(_nc_screen_chain) = 0; - - /* - * The variable 'SP' will be defined as a function on systems that cannot link -@@ -87,5 +84,5 @@ - } - - #else --NCURSES_EXPORT_VAR(SCREEN *) SP = NULL; /* Some linkers require initialized data... */ -+SCREEN * NCURSES_EXPORT_VAR(SP) = NULL; /* Some linkers require initialized data... */ - #endif ---- ncurses-5.4/ncurses/trace/lib_trace.c~visibility.patch -+++ ncurses-5.4/ncurses/trace/lib_trace.c -@@ -42,11 +42,11 @@ - - MODULE_ID("$Id: lib_trace.c,v 1.53 2003/11/23 00:39:30 tom Exp $") - --NCURSES_EXPORT_VAR(unsigned) _nc_tracing = 0; /* always define this */ -+unsigned NCURSES_EXPORT_VAR(_nc_tracing) = 0; /* always define this */ - - #ifdef TRACE --NCURSES_EXPORT_VAR(const char *) _nc_tputs_trace = ""; --NCURSES_EXPORT_VAR(long) _nc_outchars = 0; -+const char * NCURSES_EXPORT_VAR(_nc_tputs_trace) = ""; -+long NCURSES_EXPORT_VAR(_nc_outchars) = 0; - - static FILE *tracefp = 0; /* default to writing to stderr */ - ---- ncurses-5.4/ncurses/curses.priv.h~visibility.patch -+++ ncurses-5.4/ncurses/curses.priv.h -@@ -498,7 +498,7 @@ - #endif - }; - --extern NCURSES_EXPORT_VAR(SCREEN *) _nc_screen_chain; -+extern SCREEN * NCURSES_EXPORT_VAR(_nc_screen_chain); - - #if NCURSES_NOMACROS - #include -@@ -752,9 +752,9 @@ - extern NCURSES_EXPORT(int) _nc_retrace_int (int); - extern NCURSES_EXPORT(unsigned) _nc_retrace_unsigned (unsigned); - extern NCURSES_EXPORT(void) _nc_fifo_dump (void); --extern NCURSES_EXPORT_VAR(const char *) _nc_tputs_trace; --extern NCURSES_EXPORT_VAR(long) _nc_outchars; --extern NCURSES_EXPORT_VAR(unsigned) _nc_tracing; -+extern const char * NCURSES_EXPORT_VAR(_nc_tputs_trace); -+extern long NCURSES_EXPORT_VAR(_nc_outchars); -+extern unsigned NCURSES_EXPORT_VAR(_nc_tracing); - - #if USE_WIDEC_SUPPORT - extern NCURSES_EXPORT(const char *) _nc_viswbuf2 (int, const wchar_t *); -@@ -1055,7 +1055,7 @@ - #endif - - /* scroll indices */ --extern NCURSES_EXPORT_VAR(int *) _nc_oldnums; -+extern int * NCURSES_EXPORT_VAR(_nc_oldnums); - - #define USE_SETBUF_0 0 - -@@ -1074,7 +1074,7 @@ - extern NCURSES_EXPORT(void) _nc_set_screen (SCREEN *); - #else - /* current screen is private data; avoid possible linking conflicts too */ --extern NCURSES_EXPORT_VAR(SCREEN *) SP; -+extern SCREEN * NCURSES_EXPORT_VAR(SP); - #define _nc_alloc_screen() ((SP = typeCalloc(SCREEN, 1)) != 0) - #define _nc_set_screen(sp) SP = sp - #endif -@@ -1087,7 +1087,7 @@ - #define screen_lines SP->_lines - #define screen_columns SP->_columns - --extern NCURSES_EXPORT_VAR(int) _nc_slk_format; /* != 0 if slk_init() called */ -+extern int NCURSES_EXPORT_VAR(_nc_slk_format); /* != 0 if slk_init() called */ - extern NCURSES_EXPORT(int) _nc_slk_initialize (WINDOW *, int); - - /* ---- /dev/null -+++ ncurses-5.4/m4/cf.m4 -@@ -0,0 +1,3703 @@ -+dnl*************************************************************************** -+dnl Copyright (c) 1998-2003,2004 Free Software Foundation, Inc. * -+dnl * -+dnl Permission is hereby granted, free of charge, to any person obtaining a * -+dnl copy of this software and associated documentation files (the * -+dnl "Software"), to deal in the Software without restriction, including * -+dnl without limitation the rights to use, copy, modify, merge, publish, * -+dnl distribute, distribute with modifications, sublicense, and/or sell * -+dnl copies of the Software, and to permit persons to whom the Software is * -+dnl furnished to do so, subject to the following conditions: * -+dnl * -+dnl The above copyright notice and this permission notice shall be included * -+dnl in all copies or substantial portions of the Software. * -+dnl * -+dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * -+dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * -+dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * -+dnl IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * -+dnl DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * -+dnl OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * -+dnl THE USE OR OTHER DEALINGS IN THE SOFTWARE. * -+dnl * -+dnl Except as contained in this notice, the name(s) of the above copyright * -+dnl holders shall not be used in advertising or otherwise to promote the * -+dnl sale, use or other dealings in this Software without prior written * -+dnl authorization. * -+dnl*************************************************************************** -+dnl -+dnl Author: Thomas E. Dickey 1995-2003 -+dnl -+dnl $Id: aclocal.m4,v 1.333 2004/01/30 20:59:56 tom Exp $ -+dnl Macros used in NCURSES auto-configuration script. -+dnl -+dnl See http://invisible-island.net/autoconf/ for additional information. -+dnl -+dnl --------------------------------------------------------------------------- -+dnl --------------------------------------------------------------------------- -+dnl CF_ADA_INCLUDE_DIRS version: 4 updated: 2002/12/01 00:12:15 -+dnl ------------------- -+dnl Construct the list of include-options for the C programs in the Ada95 -+dnl binding. -+AC_DEFUN([CF_ADA_INCLUDE_DIRS], -+[ -+ACPPFLAGS="-I. -I../../include $ACPPFLAGS" -+if test "$srcdir" != "."; then -+ ACPPFLAGS="-I\$(srcdir)/../../include $ACPPFLAGS" -+fi -+if test "$GCC" != yes; then -+ ACPPFLAGS="$ACPPFLAGS -I\$(includedir)" -+elif test "$includedir" != "/usr/include"; then -+ if test "$includedir" = '${prefix}/include' ; then -+ if test $prefix != /usr ; then -+ ACPPFLAGS="$ACPPFLAGS -I\$(includedir)" -+ fi -+ else -+ ACPPFLAGS="$ACPPFLAGS -I\$(includedir)" -+ fi -+fi -+AC_SUBST(ACPPFLAGS) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_ADD_CFLAGS version: 5 updated: 2002/12/01 00:12:15 -+dnl ------------- -+dnl Copy non-preprocessor flags to $CFLAGS, preprocessor flags to $CPPFLAGS -+dnl The second parameter if given makes this macro verbose. -+AC_DEFUN([CF_ADD_CFLAGS], -+[ -+cf_new_cflags= -+cf_new_cppflags= -+for cf_add_cflags in $1 -+do -+ case $cf_add_cflags in #(vi -+ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi -+ case "$CPPFLAGS" in -+ *$cf_add_cflags) #(vi -+ ;; -+ *) #(vi -+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" -+ ;; -+ esac -+ ;; -+ *) -+ cf_new_cflags="$cf_new_cflags $cf_add_cflags" -+ ;; -+ esac -+done -+ -+if test -n "$cf_new_cflags" ; then -+ ifelse($2,,,[CF_VERBOSE(add to \$CFLAGS $cf_new_cflags)]) -+ CFLAGS="$CFLAGS $cf_new_cflags" -+fi -+ -+if test -n "$cf_new_cppflags" ; then -+ ifelse($2,,,[CF_VERBOSE(add to \$CPPFLAGS $cf_new_cppflags)]) -+ CPPFLAGS="$cf_new_cppflags $CPPFLAGS" -+fi -+ -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_ANSI_CC_CHECK version: 9 updated: 2001/12/30 17:53:34 -+dnl ---------------- -+dnl This is adapted from the macros 'fp_PROG_CC_STDC' and 'fp_C_PROTOTYPES' -+dnl in the sharutils 4.2 distribution. -+AC_DEFUN([CF_ANSI_CC_CHECK], -+[ -+AC_CACHE_CHECK(for ${CC-cc} option to accept ANSI C, cf_cv_ansi_cc,[ -+cf_cv_ansi_cc=no -+cf_save_CFLAGS="$CFLAGS" -+cf_save_CPPFLAGS="$CPPFLAGS" -+# Don't try gcc -ansi; that turns off useful extensions and -+# breaks some systems' header files. -+# AIX -qlanglvl=ansi -+# Ultrix and OSF/1 -std1 -+# HP-UX -Aa -D_HPUX_SOURCE -+# SVR4 -Xc -+# UnixWare 1.2 (cannot use -Xc, since ANSI/POSIX clashes) -+for cf_arg in "-DCC_HAS_PROTOS" \ -+ "" \ -+ -qlanglvl=ansi \ -+ -std1 \ -+ -Ae \ -+ "-Aa -D_HPUX_SOURCE" \ -+ -Xc -+do -+ CF_ADD_CFLAGS($cf_arg) -+ AC_TRY_COMPILE( -+[ -+#ifndef CC_HAS_PROTOS -+#if !defined(__STDC__) || (__STDC__ != 1) -+choke me -+#endif -+#endif -+],[ -+ int test (int i, double x); -+ struct s1 {int (*f) (int a);}; -+ struct s2 {int (*f) (double a);};], -+ [cf_cv_ansi_cc="$cf_arg"; break]) -+done -+CFLAGS="$cf_save_CFLAGS" -+CPPFLAGS="$cf_save_CPPFLAGS" -+]) -+ -+if test "$cf_cv_ansi_cc" != "no"; then -+if test ".$cf_cv_ansi_cc" != ".-DCC_HAS_PROTOS"; then -+ CF_ADD_CFLAGS($cf_cv_ansi_cc) -+else -+ AC_DEFINE(CC_HAS_PROTOS) -+fi -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_ANSI_CC_REQD version: 3 updated: 1997/09/06 13:40:44 -+dnl --------------- -+dnl For programs that must use an ANSI compiler, obtain compiler options that -+dnl will make it recognize prototypes. We'll do preprocessor checks in other -+dnl macros, since tools such as unproto can fake prototypes, but only part of -+dnl the preprocessor. -+AC_DEFUN([CF_ANSI_CC_REQD], -+[AC_REQUIRE([CF_ANSI_CC_CHECK]) -+if test "$cf_cv_ansi_cc" = "no"; then -+ AC_ERROR( -+[Your compiler does not appear to recognize prototypes. -+You have the following choices: -+ a. adjust your compiler options -+ b. get an up-to-date compiler -+ c. use a wrapper such as unproto]) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_BOOL_DECL version: 8 updated: 2004/01/30 15:51:18 -+dnl ------------ -+dnl Test if 'bool' is a builtin type in the configured C++ compiler. Some -+dnl older compilers (e.g., gcc 2.5.8) don't support 'bool' directly; gcc -+dnl 2.6.3 does, in anticipation of the ANSI C++ standard. -+dnl -+dnl Treat the configuration-variable specially here, since we're directly -+dnl substituting its value (i.e., 1/0). -+dnl -+dnl $1 is the shell variable to store the result in, if not $cv_cv_builtin_bool -+AC_DEFUN([CF_BOOL_DECL], -+[ -+AC_MSG_CHECKING(if we should include stdbool.h) -+ -+AC_CACHE_VAL(cf_cv_header_stdbool_h,[ -+ AC_TRY_COMPILE([],[bool foo = false], -+ [cf_cv_header_stdbool_h=0], -+ [AC_TRY_COMPILE([ -+#ifndef __BEOS__ -+#include -+#endif -+],[bool foo = false], -+ [cf_cv_header_stdbool_h=1], -+ [cf_cv_header_stdbool_h=0])])]) -+ -+if test "$cf_cv_header_stdbool_h" = 1 -+then AC_MSG_RESULT(yes) -+else AC_MSG_RESULT(no) -+fi -+ -+AC_MSG_CHECKING([for builtin bool type]) -+ -+AC_CACHE_VAL(ifelse($1,,cf_cv_builtin_bool,[$1]),[ -+ AC_TRY_COMPILE([ -+#include -+#include -+],[bool x = false], -+ [ifelse($1,,cf_cv_builtin_bool,[$1])=1], -+ [ifelse($1,,cf_cv_builtin_bool,[$1])=0]) -+ ]) -+ -+if test "$ifelse($1,,cf_cv_builtin_bool,[$1])" = 1 -+then AC_MSG_RESULT(yes) -+else AC_MSG_RESULT(no) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_BOOL_SIZE version: 10 updated: 2002/02/23 20:38:31 -+dnl ------------ -+dnl Test for the size of 'bool' in the configured C++ compiler (e.g., a type). -+dnl Don't bother looking for bool.h, since it's been deprecated. -+dnl -+dnl If the current compiler is C rather than C++, we get the bool definition -+dnl from . -+AC_DEFUN([CF_BOOL_SIZE], -+[ -+AC_MSG_CHECKING([for size of bool]) -+AC_CACHE_VAL(cf_cv_type_of_bool,[ -+ rm -f cf_test.out -+ AC_TRY_RUN([ -+#include -+#include -+ -+#if defined(__cplusplus) -+ -+#ifdef HAVE_GXX_BUILTIN_H -+#include -+#elif HAVE_GPP_BUILTIN_H -+#include -+#elif HAVE_BUILTIN_H -+#include -+#endif -+ -+#else -+ -+#if $cf_cv_header_stdbool_h -+#include -+#endif -+ -+#endif -+ -+main() -+{ -+ FILE *fp = fopen("cf_test.out", "w"); -+ if (fp != 0) { -+ bool x = true; -+ if ((bool)(-x) >= 0) -+ fputs("unsigned ", fp); -+ if (sizeof(x) == sizeof(int)) fputs("int", fp); -+ else if (sizeof(x) == sizeof(char)) fputs("char", fp); -+ else if (sizeof(x) == sizeof(short))fputs("short",fp); -+ else if (sizeof(x) == sizeof(long)) fputs("long", fp); -+ fclose(fp); -+ } -+ exit(0); -+} -+ ], -+ [cf_cv_type_of_bool=`cat cf_test.out` -+ if test -z "$cf_cv_type_of_bool"; then -+ cf_cv_type_of_bool=unknown -+ fi], -+ [cf_cv_type_of_bool=unknown], -+ [cf_cv_type_of_bool=unknown]) -+ ]) -+ rm -f cf_test.out -+AC_MSG_RESULT($cf_cv_type_of_bool) -+if test "$cf_cv_type_of_bool" = unknown ; then -+ case .$NCURSES_BOOL in #(vi -+ .auto|.) NCURSES_BOOL=unsigned;; -+ esac -+ AC_MSG_WARN(Assuming $NCURSES_BOOL for type of bool) -+ cf_cv_type_of_bool=$NCURSES_BOOL -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_CFG_DEFAULTS version: 6 updated: 2003/07/12 15:15:19 -+dnl --------------- -+dnl Determine the default configuration into which we'll install ncurses. This -+dnl can be overridden by the user's command-line options. There's two items to -+dnl look for: -+dnl 1. the prefix (e.g., /usr) -+dnl 2. the header files (e.g., /usr/include/ncurses) -+dnl We'll look for a previous installation of ncurses and use the same defaults. -+dnl -+dnl We don't use AC_PREFIX_DEFAULT, because it gets evaluated too soon, and -+dnl we don't use AC_PREFIX_PROGRAM, because we cannot distinguish ncurses's -+dnl programs from a vendor's. -+AC_DEFUN([CF_CFG_DEFAULTS], -+[ -+AC_MSG_CHECKING(for prefix) -+if test "x$prefix" = "xNONE" ; then -+ case "$cf_cv_system_name" in -+ # non-vendor systems don't have a conflict -+ openbsd*|netbsd*|freebsd*|linux*|cygwin*|k*bsd*-gnu) -+ prefix=/usr -+ ;; -+ *) prefix=$ac_default_prefix -+ ;; -+ esac -+fi -+AC_MSG_RESULT($prefix) -+ -+if test "x$prefix" = "xNONE" ; then -+AC_MSG_CHECKING(for default include-directory) -+test -n "$verbose" && echo 1>&AC_FD_MSG -+for cf_symbol in \ -+ $includedir \ -+ $includedir/ncurses \ -+ $prefix/include \ -+ $prefix/include/ncurses \ -+ /usr/local/include \ -+ /usr/local/include/ncurses \ -+ /usr/include \ -+ /usr/include/ncurses -+do -+ cf_dir=`eval echo $cf_symbol` -+ if test -f $cf_dir/curses.h ; then -+ if ( fgrep NCURSES_VERSION $cf_dir/curses.h 2>&1 >/dev/null ) ; then -+ includedir="$cf_symbol" -+ test -n "$verbose" && echo $ac_n " found " 1>&AC_FD_MSG -+ break -+ fi -+ fi -+ test -n "$verbose" && echo " tested $cf_dir" 1>&AC_FD_MSG -+done -+AC_MSG_RESULT($includedir) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_CGETENT version: 3 updated: 2000/08/12 23:18:52 -+dnl ---------- -+dnl Check if the terminal-capability database functions are available. If not, -+dnl ncurses has a much-reduced version. -+AC_DEFUN([CF_CGETENT],[ -+AC_MSG_CHECKING(for terminal-capability database functions) -+AC_CACHE_VAL(cf_cv_cgetent,[ -+AC_TRY_LINK([ -+#include ],[ -+ char temp[128]; -+ char *buf = temp; -+ char *db_array = temp; -+ cgetent(&buf, /* int *, */ &db_array, "vt100"); -+ cgetcap(buf, "tc", '='); -+ cgetmatch(buf, "tc"); -+ ], -+ [cf_cv_cgetent=yes], -+ [cf_cv_cgetent=no]) -+]) -+AC_MSG_RESULT($cf_cv_cgetent) -+test "$cf_cv_cgetent" = yes && AC_DEFINE(HAVE_BSD_CGETENT) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_CHECK_CACHE version: 9 updated: 2004/01/30 15:59:13 -+dnl -------------- -+dnl Check if we're accidentally using a cache from a different machine. -+dnl Derive the system name, as a check for reusing the autoconf cache. -+dnl -+dnl If we've packaged config.guess and config.sub, run that (since it does a -+dnl better job than uname). Normally we'll use AC_CANONICAL_HOST, but allow -+dnl an extra parameter that we may override, e.g., for AC_CANONICAL_SYSTEM -+dnl which is useful in cross-compiles. -+dnl -+dnl Note: we would use $ac_config_sub, but that is one of the places where -+dnl autoconf 2.5x broke compatibility with autoconf 2.13 -+AC_DEFUN([CF_CHECK_CACHE], -+[ -+if test -f $srcdir/config.guess ; then -+ ifelse([$1],,[AC_CANONICAL_HOST],[$1]) -+ system_name="$host_os" -+else -+ system_name="`(uname -s -r) 2>/dev/null`" -+ if test -z "$system_name" ; then -+ system_name="`(hostname) 2>/dev/null`" -+ fi -+fi -+test -n "$system_name" && AC_DEFINE_UNQUOTED(SYSTEM_NAME,"$system_name") -+AC_CACHE_VAL(cf_cv_system_name,[cf_cv_system_name="$system_name"]) -+ -+test -z "$system_name" && system_name="$cf_cv_system_name" -+test -n "$cf_cv_system_name" && AC_MSG_RESULT(Configuring for $cf_cv_system_name) -+ -+if test ".$system_name" != ".$cf_cv_system_name" ; then -+ AC_MSG_RESULT(Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)) -+ AC_ERROR("Please remove config.cache and try again.") -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_CHECK_ERRNO version: 9 updated: 2001/12/30 18:03:23 -+dnl -------------- -+dnl Check for data that is usually declared in or , e.g., -+dnl the 'errno' variable. Define a DECL_xxx symbol if we must declare it -+dnl ourselves. -+dnl -+dnl $1 = the name to check -+AC_DEFUN([CF_CHECK_ERRNO], -+[ -+AC_CACHE_CHECK(if external $1 is declared, cf_cv_dcl_$1,[ -+ AC_TRY_COMPILE([ -+#ifdef HAVE_STDLIB_H -+#include -+#endif -+#include -+#include -+#include ], -+ [long x = (long) $1], -+ [cf_cv_dcl_$1=yes], -+ [cf_cv_dcl_$1=no]) -+]) -+ -+if test "$cf_cv_dcl_$1" = no ; then -+ CF_UPPER(cf_result,decl_$1) -+ AC_DEFINE_UNQUOTED($cf_result) -+fi -+ -+# It's possible (for near-UNIX clones) that the data doesn't exist -+CF_CHECK_EXTERN_DATA($1,int) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_CHECK_EXTERN_DATA version: 3 updated: 2001/12/30 18:03:23 -+dnl -------------------- -+dnl Check for existence of external data in the current set of libraries. If -+dnl we can modify it, it's real enough. -+dnl $1 = the name to check -+dnl $2 = its type -+AC_DEFUN([CF_CHECK_EXTERN_DATA], -+[ -+AC_CACHE_CHECK(if external $1 exists, cf_cv_have_$1,[ -+ AC_TRY_LINK([ -+#undef $1 -+extern $2 $1; -+], -+ [$1 = 2], -+ [cf_cv_have_$1=yes], -+ [cf_cv_have_$1=no]) -+]) -+ -+if test "$cf_cv_have_$1" = yes ; then -+ CF_UPPER(cf_result,have_$1) -+ AC_DEFINE_UNQUOTED($cf_result) -+fi -+ -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_CPP_PARAM_INIT version: 4 updated: 2001/04/07 22:31:18 -+dnl ----------------- -+dnl Check if the C++ compiler accepts duplicate parameter initialization. This -+dnl is a late feature for the standard and is not in some recent compilers -+dnl (1999/9/11). -+AC_DEFUN([CF_CPP_PARAM_INIT], -+[ -+if test -n "$CXX"; then -+AC_CACHE_CHECK(if $CXX accepts parameter initialization,cf_cv_cpp_param_init,[ -+ AC_LANG_SAVE -+ AC_LANG_CPLUSPLUS -+ AC_TRY_RUN([ -+class TEST { -+private: -+ int value; -+public: -+ TEST(int x = 1); -+ ~TEST(); -+}; -+ -+TEST::TEST(int x = 1) // some compilers do not like second initializer -+{ -+ value = x; -+} -+void main() { } -+], -+ [cf_cv_cpp_param_init=yes], -+ [cf_cv_cpp_param_init=no], -+ [cf_cv_cpp_param_init=unknown]) -+ AC_LANG_RESTORE -+]) -+fi -+test "$cf_cv_cpp_param_init" = yes && AC_DEFINE(CPP_HAS_PARAM_INIT) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_CPP_VSCAN_FUNC version: 5 updated: 2001/12/02 01:39:28 -+dnl ----------------- -+dnl Check if the g++ compiler supports vscan function (not a standard feature). -+AC_DEFUN([CF_CPP_VSCAN_FUNC], -+[ -+if test -n "$CXX"; then -+ -+AC_LANG_SAVE -+AC_LANG_CPLUSPLUS -+AC_CHECK_HEADERS(strstream.h) -+ -+AC_CACHE_CHECK(if $CXX supports vscan function,cf_cv_cpp_vscan_func,[ -+ for cf_vscan_func in strstream strstream_cast stdio -+ do -+ case $cf_vscan_func in #(vi -+ stdio) cf_vscan_defs=USE_STDIO_VSCAN ;; #(vi -+ strstream) cf_vscan_defs=USE_STRSTREAM_VSCAN ;; -+ strstream_cast) cf_vscan_defs=USE_STRSTREAM_VSCAN_CAST ;; -+ esac -+ AC_TRY_LINK([ -+#include -+#include -+#define $cf_vscan_defs 1 -+#if defined(USE_STDIO_VSCAN) -+#elif defined(HAVE_STRSTREAM_H) && defined(USE_STRSTREAM_VSCAN) -+#include -+#endif -+ -+int scanw(const char* fmt, ...) -+{ -+ int result = -1; -+ char buf[BUFSIZ]; -+ -+ va_list args; -+ va_start(args, fmt); -+#if defined(USE_STDIO_VSCAN) -+ if (::vsscanf(buf, fmt, args) != -1) -+ result = 0; -+#elif defined(USE_STRSTREAM_VSCAN) -+ strstreambuf ss(buf, sizeof(buf)); -+ if (ss.vscan(fmt, args) != -1) -+ result = 0; -+#elif defined(USE_STRSTREAM_VSCAN_CAST) -+ strstreambuf ss(buf, sizeof(buf)); -+ if (ss.vscan(fmt, (_IO_va_list)args) != -1) -+ result = 0; -+#else -+#error case $cf_vscan_func failed -+#endif -+ va_end(args); -+ return result; -+} -+],[int tmp, foo = scanw("%d", &tmp)], -+ [cf_cv_cpp_vscan_func=$cf_vscan_func; break], -+ [cf_cv_cpp_vscan_func=no]) -+ test "$cf_cv_cpp_vscan_func" != no && break -+ done -+]) -+ -+AC_LANG_RESTORE -+fi -+ -+case $cf_cv_cpp_vscan_func in #(vi -+stdio) #(vi -+ AC_DEFINE(CPP_HAS_VSCAN_FUNC) -+ AC_DEFINE(USE_STDIO_VSCAN) -+ ;; -+strstream) -+ AC_DEFINE(CPP_HAS_VSCAN_FUNC) -+ AC_DEFINE(USE_STRSTREAM_VSCAN) -+ ;; -+strstream_cast) -+ AC_DEFINE(CPP_HAS_VSCAN_FUNC) -+ AC_DEFINE(USE_STRSTREAM_VSCAN_CAST) -+ ;; -+esac -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_DIRNAME version: 4 updated: 2002/12/21 19:25:52 -+dnl ---------- -+dnl "dirname" is not portable, so we fake it with a shell script. -+AC_DEFUN([CF_DIRNAME],[$1=`echo $2 | sed -e 's%/[[^/]]*$%%'`])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_DIRS_TO_MAKE version: 3 updated: 2002/02/23 20:38:31 -+dnl --------------- -+AC_DEFUN([CF_DIRS_TO_MAKE], -+[ -+DIRS_TO_MAKE="lib" -+for cf_item in $cf_list_models -+do -+ CF_OBJ_SUBDIR($cf_item,cf_subdir) -+ for cf_item2 in $DIRS_TO_MAKE -+ do -+ test $cf_item2 = $cf_subdir && break -+ done -+ test ".$cf_item2" != ".$cf_subdir" && DIRS_TO_MAKE="$DIRS_TO_MAKE $cf_subdir" -+done -+for cf_dir in $DIRS_TO_MAKE -+do -+ test ! -d $cf_dir && mkdir $cf_dir -+done -+AC_SUBST(DIRS_TO_MAKE) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_ERRNO version: 5 updated: 1997/11/30 12:44:39 -+dnl -------- -+dnl Check if 'errno' is declared in -+AC_DEFUN([CF_ERRNO], -+[ -+CF_CHECK_ERRNO(errno) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_ETIP_DEFINES version: 3 updated: 2003/03/22 19:13:43 -+dnl --------------- -+dnl Test for conflicting definitions of exception in gcc 2.8.0, etc., between -+dnl math.h and builtin.h, only for ncurses -+AC_DEFUN([CF_ETIP_DEFINES], -+[ -+AC_MSG_CHECKING(for special defines needed for etip.h) -+cf_save_CXXFLAGS="$CXXFLAGS" -+cf_result="none" -+for cf_math in "" MATH_H -+do -+for cf_excp in "" MATH_EXCEPTION -+do -+ CXXFLAGS="$cf_save_CXXFLAGS -I${srcdir}/c++ -I${srcdir}/menu -I${srcdir}/include" -+ test -n "$cf_math" && CXXFLAGS="$CXXFLAGS -DETIP_NEEDS_${cf_math}" -+ test -n "$cf_excp" && CXXFLAGS="$CXXFLAGS -DETIP_NEEDS_${cf_excp}" -+AC_TRY_COMPILE([ -+#include -+],[],[ -+ test -n "$cf_math" && AC_DEFINE_UNQUOTED(ETIP_NEEDS_${cf_math}) -+ test -n "$cf_excp" && AC_DEFINE_UNQUOTED(ETIP_NEEDS_${cf_excp}) -+ cf_result="$cf_math $cf_excp" -+ break -+],[]) -+done -+done -+AC_MSG_RESULT($cf_result) -+CXXFLAGS="$cf_save_CXXFLAGS" -+]) -+dnl --------------------------------------------------------------------------- -+dnl CF_FUNC_MEMMOVE version: 5 updated: 2000/08/12 23:18:52 -+dnl --------------- -+dnl Check for memmove, or a bcopy that can handle overlapping copy. If neither -+dnl is found, add our own version of memmove to the list of objects. -+AC_DEFUN([CF_FUNC_MEMMOVE], -+[ -+AC_CHECK_FUNC(memmove,,[ -+AC_CHECK_FUNC(bcopy,[ -+ AC_CACHE_CHECK(if bcopy does overlapping moves,cf_cv_good_bcopy,[ -+ AC_TRY_RUN([ -+int main() { -+ static char data[] = "abcdefghijklmnopqrstuwwxyz"; -+ char temp[40]; -+ bcopy(data, temp, sizeof(data)); -+ bcopy(temp+10, temp, 15); -+ bcopy(temp+5, temp+15, 10); -+ exit (strcmp(temp, "klmnopqrstuwwxypqrstuwwxyz")); -+} -+ ], -+ [cf_cv_good_bcopy=yes], -+ [cf_cv_good_bcopy=no], -+ [cf_cv_good_bcopy=unknown]) -+ ]) -+ ],[cf_cv_good_bcopy=no]) -+ if test "$cf_cv_good_bcopy" = yes ; then -+ AC_DEFINE(USE_OK_BCOPY) -+ else -+ AC_DEFINE(USE_MY_MEMMOVE) -+ fi -+])])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_FUNC_POLL version: 2 updated: 2000/02/06 01:38:04 -+dnl ------------ -+dnl See if the poll function really works. Some platforms have poll(), but -+dnl it does not work for terminals or files. -+AC_DEFUN([CF_FUNC_POLL],[ -+AC_CACHE_CHECK(if poll really works,cf_cv_working_poll,[ -+AC_TRY_RUN([ -+#include -+#ifdef HAVE_POLL_H -+#include -+#else -+#include -+#endif -+int main() { -+ struct pollfd myfds; -+ int ret; -+ -+ myfds.fd = 0; -+ myfds.events = POLLIN; -+ -+ ret = poll(&myfds, 1, 100); -+ exit(ret != 0); -+}], -+ [cf_cv_working_poll=yes], -+ [cf_cv_working_poll=no], -+ [cf_cv_working_poll=unknown])]) -+test "$cf_cv_working_poll" = "yes" && AC_DEFINE(HAVE_WORKING_POLL) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_FUNC_TERMIOS version: 2 updated: 2000/07/22 23:37:24 -+dnl --------------- -+dnl Some old/broken variations define tcgetattr() only as a macro in -+dnl termio(s).h -+AC_DEFUN([CF_FUNC_TERMIOS],[ -+AC_REQUIRE([CF_STRUCT_TERMIOS]) -+AC_CACHE_CHECK(for tcgetattr, cf_cv_have_tcgetattr,[ -+AC_TRY_LINK([ -+#include -+#ifdef HAVE_UNISTD_H -+#include -+#endif -+#ifdef HAVE_TERMIOS_H -+#include -+#define TTY struct termios -+#else -+#ifdef HAVE_TERMIO_H -+#include -+#define TTY struct termio -+#endif -+#endif -+],[ -+TTY foo; -+tcgetattr(1, &foo);], -+[cf_cv_have_tcgetattr=yes], -+[cf_cv_have_tcgetattr=no])]) -+test "$cf_cv_have_tcgetattr" = yes && AC_DEFINE(HAVE_TCGETATTR) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_FUNC_VSSCANF version: 3 updated: 2001/12/19 00:50:10 -+dnl --------------- -+dnl Check for vsscanf() function, which is in c9x but generally not in earlier -+dnl versions of C. It is in the GNU C library, and can often be simulated by -+dnl other functions. -+AC_DEFUN([CF_FUNC_VSSCANF], -+[ -+AC_CACHE_CHECK(for vsscanf function or workaround,cf_cv_func_vsscanf,[ -+AC_TRY_LINK([ -+#include -+#include ],[ -+ va_list ap; -+ vsscanf("from", "%d", ap)],[cf_cv_func_vsscanf=vsscanf],[ -+AC_TRY_LINK([ -+#include -+#include ],[ -+ FILE strbuf; -+ char *str = "from"; -+ -+ strbuf._flag = _IOREAD; -+ strbuf._ptr = strbuf._base = (unsigned char *) str; -+ strbuf._cnt = strlen(str); -+ strbuf._file = _NFILE; -+ return (vfscanf(&strbuf, "%d", ap))],[cf_cv_func_vsscanf=vfscanf],[ -+AC_TRY_LINK([ -+#include -+#include ],[ -+ FILE strbuf; -+ char *str = "from"; -+ -+ strbuf._flag = _IOREAD; -+ strbuf._ptr = strbuf._base = (unsigned char *) str; -+ strbuf._cnt = strlen(str); -+ strbuf._file = _NFILE; -+ return (_doscan(&strbuf, "%d", ap))],[cf_cv_func_vsscanf=_doscan],[ -+cf_cv_func_vsscanf=no])])])]) -+ -+case $cf_cv_func_vsscanf in #(vi -+vsscanf) AC_DEFINE(HAVE_VSSCANF);; #(vi -+vfscanf) AC_DEFINE(HAVE_VFSCANF);; #(vi -+_doscan) AC_DEFINE(HAVE__DOSCAN);; -+esac -+ -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_GCC_ATTRIBUTES version: 9 updated: 2002/12/21 19:25:52 -+dnl ----------------- -+dnl Test for availability of useful gcc __attribute__ directives to quiet -+dnl compiler warnings. Though useful, not all are supported -- and contrary -+dnl to documentation, unrecognized directives cause older compilers to barf. -+AC_DEFUN([CF_GCC_ATTRIBUTES], -+[ -+if test "$GCC" = yes -+then -+cat > conftest.i < conftest.$ac_ext <&AC_FD_CC -+ case $cf_attribute in -+ scanf|printf) -+ cat >conftest.h <conftest.h <>confdefs.h -+ fi -+ done -+else -+ fgrep define conftest.i >>confdefs.h -+fi -+rm -rf conftest* -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_GCC_VERSION version: 3 updated: 2003/09/06 19:16:57 -+dnl -------------- -+dnl Find version of gcc -+AC_DEFUN([CF_GCC_VERSION],[ -+AC_REQUIRE([AC_PROG_CC]) -+GCC_VERSION=none -+if test "$GCC" = yes ; then -+ AC_MSG_CHECKING(version of $CC) -+ GCC_VERSION="`${CC} --version|sed -e '2,$d' -e 's/^[[^0-9.]]*//' -e 's/[[^0-9.]].*//'`" -+ test -z "$GCC_VERSION" && GCC_VERSION=unknown -+ AC_MSG_RESULT($GCC_VERSION) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_GCC_WARNINGS version: 15 updated: 2003/07/05 18:42:30 -+dnl --------------- -+dnl Check if the compiler supports useful warning options. There's a few that -+dnl we don't use, simply because they're too noisy: -+dnl -+dnl -Wconversion (useful in older versions of gcc, but not in gcc 2.7.x) -+dnl -Wredundant-decls (system headers make this too noisy) -+dnl -Wtraditional (combines too many unrelated messages, only a few useful) -+dnl -Wwrite-strings (too noisy, but should review occasionally). This -+dnl is enabled for ncurses using "--enable-const". -+dnl -pedantic -+dnl -+AC_DEFUN([CF_GCC_WARNINGS], -+[ -+AC_REQUIRE([CF_GCC_VERSION]) -+if test "$GCC" = yes -+then -+ cat > conftest.$ac_ext <>conftest.ads <>conftest.adb <&AC_FD_CC 2>&1 ) ; then -+ if ( ./conftest 1>&AC_FD_CC 2>&1 ) ; then -+ifelse($3,, :,[ $3]) -+ifelse($4,,,[ else -+ $4]) -+ fi -+ifelse($4,,,[else -+ $4]) -+fi -+rm -f conftest* -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_GNAT_VERSION version: 11 updated: 2003/09/06 19:42:09 -+dnl --------------- -+dnl Verify version of GNAT. -+AC_DEFUN([CF_GNAT_VERSION], -+[ -+AC_MSG_CHECKING(for gnat version) -+cf_gnat_version=`${cf_ada_make-gnatmake} -v 2>&1 | grep '[[0-9]].[[0-9]][[0-9]]*' |\ -+ sed -e '2,$d' -e 's/[[^0-9 \.]]//g' -e 's/^[[ ]]*//' -e 's/ .*//'` -+AC_MSG_RESULT($cf_gnat_version) -+ -+case $cf_gnat_version in -+ 3.1[[1-9]]*|3.[[2-9]]*|[[4-9]].*) -+ cf_cv_prog_gnat_correct=yes -+ ;; -+ *) echo Unsupported GNAT version $cf_gnat_version. Required is 3.11 or better. Disabling Ada95 binding. -+ cf_cv_prog_gnat_correct=no -+ ;; -+esac -+case $cf_gnat_version in -+ 3.[[1-9]]*|[[4-9]].*) -+ cf_compile_generics=generics -+ cf_generic_objects="\$(GENOBJS)" -+ ;; -+ *) cf_compile_generics= -+ cf_generic_objects= -+ ;; -+esac -+]) -+dnl --------------------------------------------------------------------------- -+dnl CF_GNU_SOURCE version: 3 updated: 2000/10/29 23:30:53 -+dnl ------------- -+dnl Check if we must define _GNU_SOURCE to get a reasonable value for -+dnl _XOPEN_SOURCE, upon which many POSIX definitions depend. This is a defect -+dnl (or misfeature) of glibc2, which breaks portability of many applications, -+dnl since it is interwoven with GNU extensions. -+dnl -+dnl Well, yes we could work around it... -+AC_DEFUN([CF_GNU_SOURCE], -+[ -+AC_CACHE_CHECK(if we must define _GNU_SOURCE,cf_cv_gnu_source,[ -+AC_TRY_COMPILE([#include ],[ -+#ifndef _XOPEN_SOURCE -+make an error -+#endif], -+ [cf_cv_gnu_source=no], -+ [cf_save="$CPPFLAGS" -+ CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" -+ AC_TRY_COMPILE([#include ],[ -+#ifdef _XOPEN_SOURCE -+make an error -+#endif], -+ [cf_cv_gnu_source=no], -+ [cf_cv_gnu_source=yes]) -+ CPPFLAGS="$cf_save" -+ ]) -+]) -+test "$cf_cv_gnu_source" = yes && CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_GPP_LIBRARY version: 8 updated: 2003/02/02 01:41:46 -+dnl -------------- -+dnl If we're trying to use g++, test if libg++ is installed (a rather common -+dnl problem :-). If we have the compiler but no library, we'll be able to -+dnl configure, but won't be able to build the c++ demo program. -+AC_DEFUN([CF_GPP_LIBRARY], -+[ -+cf_cxx_library=unknown -+case $cf_cv_system_name in #(vi -+os2*) #(vi -+ cf_gpp_libname=gpp -+ ;; -+*) -+ cf_gpp_libname=g++ -+ ;; -+esac -+if test "$GXX" = yes; then -+ AC_MSG_CHECKING([for lib$cf_gpp_libname]) -+ cf_save="$LIBS" -+ LIBS="$LIBS -l$cf_gpp_libname" -+ AC_TRY_LINK([ -+#include <$cf_gpp_libname/builtin.h> -+ ], -+ [two_arg_error_handler_t foo2 = lib_error_handler], -+ [cf_cxx_library=yes -+ CXXLIBS="$CXXLIBS -l$cf_gpp_libname" -+ if test "$cf_gpp_libname" = cpp ; then -+ AC_DEFINE(HAVE_GPP_BUILTIN_H) -+ else -+ AC_DEFINE(HAVE_GXX_BUILTIN_H) -+ fi], -+ [AC_TRY_LINK([ -+#include -+ ], -+ [two_arg_error_handler_t foo2 = lib_error_handler], -+ [cf_cxx_library=yes -+ CXXLIBS="$CXXLIBS -l$cf_gpp_libname" -+ AC_DEFINE(HAVE_BUILTIN_H)], -+ [cf_cxx_library=no])]) -+ LIBS="$cf_save" -+ AC_MSG_RESULT($cf_cxx_library) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_GXX_VERSION version: 3 updated: 2003/09/06 19:16:21 -+dnl -------------- -+dnl Check for version of g++ -+AC_DEFUN([CF_GXX_VERSION],[ -+AC_REQUIRE([AC_PROG_CPP]) -+GXX_VERSION=none -+if test "$GXX" = yes; then -+ AC_MSG_CHECKING(version of g++) -+ GXX_VERSION="`${CXX-g++} --version|sed -e '2,$d'`" -+ AC_MSG_RESULT($GXX_VERSION) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_INCLUDE_DIRS version: 4 updated: 2002/12/01 00:12:15 -+dnl --------------- -+dnl Construct the list of include-options according to whether we're building -+dnl in the source directory or using '--srcdir=DIR' option. If we're building -+dnl with gcc, don't append the includedir if it happens to be /usr/include, -+dnl since that usually breaks gcc's shadow-includes. -+AC_DEFUN([CF_INCLUDE_DIRS], -+[ -+CPPFLAGS="-I. -I../include $CPPFLAGS" -+if test "$srcdir" != "."; then -+ CPPFLAGS="-I\$(srcdir)/../include $CPPFLAGS" -+fi -+if test "$GCC" != yes; then -+ CPPFLAGS="$CPPFLAGS -I\$(includedir)" -+elif test "$includedir" != "/usr/include"; then -+ if test "$includedir" = '${prefix}/include' ; then -+ if test $prefix != /usr ; then -+ CPPFLAGS="$CPPFLAGS -I\$(includedir)" -+ fi -+ else -+ CPPFLAGS="$CPPFLAGS -I\$(includedir)" -+ fi -+fi -+AC_SUBST(CPPFLAGS) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_ISASCII version: 3 updated: 2000/08/12 23:18:52 -+dnl ---------- -+dnl Check if we have either a function or macro for 'isascii()'. -+AC_DEFUN([CF_ISASCII], -+[ -+AC_MSG_CHECKING(for isascii) -+AC_CACHE_VAL(cf_cv_have_isascii,[ -+ AC_TRY_LINK([#include ],[int x = isascii(' ')], -+ [cf_cv_have_isascii=yes], -+ [cf_cv_have_isascii=no]) -+])dnl -+AC_MSG_RESULT($cf_cv_have_isascii) -+test "$cf_cv_have_isascii" = yes && AC_DEFINE(HAVE_ISASCII) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_LIBUTF8 version: 2 updated: 2002/01/19 22:51:32 -+dnl ---------- -+dnl Check for libutf8 -+AC_DEFUN([CF_LIBUTF8], -+[ -+AC_CACHE_CHECK(for putwc in libutf8,cf_cv_libutf8,[ -+ cf_save_LIBS="$LIBS" -+ LIBS="-lutf8 $LIBS" -+AC_TRY_LINK([ -+#include ],[putwc(0,0);], -+ [cf_cv_libutf8=yes], -+ [cf_cv_libutf8=no]) -+ LIBS="$cf_save_LIBS" -+]) -+ -+if test "$cf_cv_libutf8" = yes ; then -+ AC_DEFINE(HAVE_LIBUTF8_H) -+ LIBS="-lutf8 $LIBS" -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_LIB_PREFIX version: 7 updated: 2001/01/12 01:23:48 -+dnl ------------- -+dnl Compute the library-prefix for the given host system -+dnl $1 = variable to set -+AC_DEFUN([CF_LIB_PREFIX], -+[ -+ case $cf_cv_system_name in -+ OS/2*) LIB_PREFIX='' ;; -+ os2*) LIB_PREFIX='' ;; -+ *) LIB_PREFIX='lib' ;; -+ esac -+ifelse($1,,,[$1=$LIB_PREFIX]) -+ AC_SUBST(LIB_PREFIX) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_LIB_RULES version: 30 updated: 2004/01/10 15:50:50 -+dnl ------------ -+dnl Append definitions and rules for the given models to the subdirectory -+dnl Makefiles, and the recursion rule for the top-level Makefile. If the -+dnl subdirectory is a library-source directory, modify the LIBRARIES list in -+dnl the corresponding makefile to list the models that we'll generate. -+dnl -+dnl For shared libraries, make a list of symbolic links to construct when -+dnl generating each library. The convention used for Linux is the simplest -+dnl one: -+dnl lib.so -> -+dnl lib.so. -> -+dnl lib.so.. -+AC_DEFUN([CF_LIB_RULES], -+[ -+CF_LIB_PREFIX(cf_prefix) -+AC_REQUIRE([CF_SUBST_NCURSES_VERSION]) -+for cf_dir in $SRC_SUBDIRS -+do -+ if test -f $srcdir/$cf_dir/modules; then -+ -+ IMPORT_LIB= -+ SHARED_LIB= -+ LIBS_TO_MAKE= -+ for cf_item in $CF_LIST_MODELS -+ do -+ CF_LIB_SUFFIX($cf_item,cf_suffix) -+ if test $cf_item = shared ; then -+ if test "$cf_cv_do_symlinks" = yes ; then -+ case "$cf_cv_shlib_version" in #(vi -+ rel) #(vi -+ case "$cf_cv_system_name" in #(vi -+ darwin*) cf_suffix='.$(REL_VERSION)'"$cf_suffix" ;; #(vi -+ *) cf_suffix="$cf_suffix"'.$(REL_VERSION)' ;; -+ esac -+ ;; -+ abi) -+ case "$cf_cv_system_name" in #(vi -+ darwin*) cf_suffix='.$(ABI_VERSION)'"$cf_suffix" ;; #(vi -+ *) cf_suffix="$cf_suffix"'.$(ABI_VERSION)' ;; -+ esac -+ ;; -+ esac -+ fi -+ # cygwin needs import library, and has unique naming convention -+ # use autodetected ${cf_prefix} for import lib and static lib, but -+ # use 'cyg' prefix for shared lib. -+ if test $cf_cv_shlib_version = cygdll ; then -+ SHARED_LIB="../lib/cyg${cf_dir}\$(ABI_VERSION).dll" -+ IMPORT_LIB="../lib/${cf_prefix}${cf_dir}.dll.a" -+ LIBS_TO_MAKE="$LIBS_TO_MAKE \$(SHARED_LIB) \$(IMPORT_LIB)" -+ continue -+ fi -+ fi -+ LIBS_TO_MAKE="$LIBS_TO_MAKE ../lib/${cf_prefix}${cf_dir}${cf_suffix}" -+ done -+ -+ if test $cf_dir = ncurses ; then -+ cf_subsets="$LIB_SUBSETS" -+ cf_termlib=`echo "$cf_subsets" |sed -e 's/ .*$//'` -+ if test "$cf_termlib" != "$cf_subsets" ; then -+ cf_item=`echo $LIBS_TO_MAKE |sed -e s%$LIB_NAME%$TINFO_NAME%g` -+ LIBS_TO_MAKE="$cf_item $LIBS_TO_MAKE" -+ fi -+ else -+ cf_subsets=`echo "$LIB_SUBSETS" | sed -e 's/^termlib.* //'` -+ fi -+ -+ sed -e "s%@LIBS_TO_MAKE@%$LIBS_TO_MAKE%" \ -+ -e "s%@IMPORT_LIB@%$IMPORT_LIB%" \ -+ -e "s%@SHARED_LIB@%$SHARED_LIB%" \ -+ $cf_dir/Makefile >$cf_dir/Makefile.out -+ mv $cf_dir/Makefile.out $cf_dir/Makefile -+ -+ $AWK -f $srcdir/mk-0th.awk \ -+ libname="${cf_dir}${LIB_SUFFIX}" subsets="$LIB_SUBSETS" \ -+ $srcdir/$cf_dir/modules >>$cf_dir/Makefile -+ -+ for cf_subset in $cf_subsets -+ do -+ cf_subdirs= -+ for cf_item in $CF_LIST_MODELS -+ do -+ echo "Appending rules for ${cf_item} model (${cf_dir}: ${cf_subset})" -+ CF_UPPER(CF_ITEM,$cf_item) -+ CF_LIB_SUFFIX($cf_item,cf_suffix) -+ CF_OBJ_SUBDIR($cf_item,cf_subdir) -+ -+ # These dependencies really are for development, not -+ # builds, but they are useful in porting, too. -+ cf_depend="../include/ncurses_cfg.h" -+ if test "$srcdir" = "."; then -+ cf_reldir="." -+ else -+ cf_reldir="\$(srcdir)" -+ fi -+ -+ if test -f $srcdir/$cf_dir/$cf_dir.priv.h; then -+ cf_depend="$cf_depend $cf_reldir/$cf_dir.priv.h" -+ elif test -f $srcdir/$cf_dir/curses.priv.h; then -+ cf_depend="$cf_depend $cf_reldir/curses.priv.h" -+ fi -+ -+ $AWK -f $srcdir/mk-1st.awk \ -+ name=$cf_dir \ -+ traces=$LIB_TRACING \ -+ MODEL=$CF_ITEM \ -+ model=$cf_subdir \ -+ prefix=$cf_prefix \ -+ suffix=$cf_suffix \ -+ subset=$cf_subset \ -+ ShlibVer=$cf_cv_shlib_version \ -+ ShlibVerInfix=$cf_cv_shlib_version_infix \ -+ DoLinks=$cf_cv_do_symlinks \ -+ rmSoLocs=$cf_cv_rm_so_locs \ -+ ldconfig="$LDCONFIG" \ -+ overwrite=$WITH_OVERWRITE \ -+ depend="$cf_depend" \ -+ host="$host" \ -+ $srcdir/$cf_dir/modules >>$cf_dir/Makefile -+ for cf_subdir2 in $cf_subdirs lib -+ do -+ test $cf_subdir = $cf_subdir2 && break -+ done -+ test "${cf_subset}.${cf_subdir2}" != "${cf_subset}.${cf_subdir}" && \ -+ $AWK -f $srcdir/mk-2nd.awk \ -+ name=$cf_dir \ -+ traces=$LIB_TRACING \ -+ MODEL=$CF_ITEM \ -+ model=$cf_subdir \ -+ subset=$cf_subset \ -+ srcdir=$srcdir \ -+ echo=$WITH_ECHO \ -+ $srcdir/$cf_dir/modules >>$cf_dir/Makefile -+ cf_subdirs="$cf_subdirs $cf_subdir" -+ done -+ done -+ fi -+ -+ echo ' cd '$cf_dir' && $(MAKE) $(CF_MFLAGS) [$]@' >>Makefile -+done -+ -+for cf_dir in $SRC_SUBDIRS -+do -+ if test -f $cf_dir/Makefile ; then -+ case "$cf_dir" in -+ Ada95) #(vi -+ echo 'libs \' >> Makefile -+ echo 'install.libs \' >> Makefile -+ echo 'uninstall.libs ::' >> Makefile -+ echo ' cd '$cf_dir' && $(MAKE) $(CF_MFLAGS) [$]@' >> Makefile -+ ;; -+ esac -+ fi -+ -+ if test -f $srcdir/$cf_dir/modules; then -+ echo >> Makefile -+ if test -f $srcdir/$cf_dir/headers; then -+cat >> Makefile <> Makefile -+fi -+cat >> Makefile <> Makefile <> Makefile <> Makefile <headers.sh <>headers.sh </<\$END\/\$NAME>/" >> \$TMPSED -+ done -+ ;; -+*) -+ echo "" >> \$TMPSED -+ ;; -+esac -+CF_EOF -+else -+ cat >>headers.sh <//" >> \$TMPSED -+ NAME=ncurses.h -+ fi -+ echo "s/<\$NAME>/<\$END\/\$NAME>/" >> \$TMPSED -+ done -+ ;; -+*) -+ echo "s///" >> \$TMPSED -+ ;; -+esac -+CF_EOF -+fi -+cat >>headers.sh < \$TMPSRC -+NAME=\`basename \$SRC\` -+CF_EOF -+if test $WITH_CURSES_H != yes; then -+ cat >>headers.sh <>headers.sh <>$cf_dir/Makefile <>$cf_dir/Makefile -+ j=$i -+ done -+ echo " $j" >>$cf_dir/Makefile -+ for i in `cat $srcdir/$cf_dir/headers |fgrep -v "#"` -+ do -+ echo " @ (cd \$(DESTDIR)\$(includedir) && rm -f `basename $i`) ; ../headers.sh \$(INSTALL_DATA) \$(DESTDIR)\$(includedir) \$(srcdir) $i" >>$cf_dir/Makefile -+ test $i = curses.h && test $WITH_CURSES_H = yes && echo " @ (cd \$(DESTDIR)\$(includedir) && rm -f ncurses.h && \$(LN_S) curses.h ncurses.h)" >>$cf_dir/Makefile -+ done -+ -+ cat >>$cf_dir/Makefile <>$cf_dir/Makefile -+ test $i = curses.h && echo " -@ (cd \$(DESTDIR)\$(includedir) && rm -f ncurses.h)" >>$cf_dir/Makefile -+ done -+ fi -+ -+ if test -f $srcdir/$cf_dir/modules; then -+ if test "$cf_dir" != "c++" ; then -+ cat >>$cf_dir/Makefile <<"CF_EOF" -+depend : $(AUTO_SRC) -+ makedepend -- $(CPPFLAGS) -- $(C_SRC) -+ -+# DO NOT DELETE THIS LINE -- make depend depends on it. -+CF_EOF -+ fi -+ fi -+done -+ -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_LIB_SUFFIX version: 13 updated: 2003/11/01 16:09:07 -+dnl ------------- -+dnl Compute the library file-suffix from the given model name -+dnl $1 = model name -+dnl $2 = variable to set -+dnl The variable $LIB_SUFFIX, if set, prepends the variable to set. -+AC_DEFUN([CF_LIB_SUFFIX], -+[ -+ AC_REQUIRE([CF_SUBST_NCURSES_VERSION]) -+ case $1 in -+ libtool) $2='.la' ;; -+ normal) $2='.a' ;; -+ debug) $2='_g.a' ;; -+ profile) $2='_p.a' ;; -+ shared) -+ case $cf_cv_system_name in -+ cygwin*) $2='.dll' ;; -+ darwin*) $2='.dylib' ;; -+ hpux*) -+ case $target in -+ ia64*) $2='.so' ;; -+ *) $2='.sl' ;; -+ esac -+ ;; -+ *) $2='.so' ;; -+ esac -+ esac -+ test -n "$LIB_SUFFIX" && $2="${LIB_SUFFIX}[$]{$2}" -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_LIB_TYPE version: 4 updated: 2000/10/20 22:57:49 -+dnl ----------- -+dnl Compute the string to append to -library from the given model name -+dnl $1 = model name -+dnl $2 = variable to set -+dnl The variable $LIB_SUFFIX, if set, prepends the variable to set. -+AC_DEFUN([CF_LIB_TYPE], -+[ -+ case $1 in -+ libtool) $2='' ;; -+ normal) $2='' ;; -+ debug) $2='_g' ;; -+ profile) $2='_p' ;; -+ shared) $2='' ;; -+ esac -+ test -n "$LIB_SUFFIX" && $2="${LIB_SUFFIX}[$]{$2}" -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_LINK_DATAONLY version: 6 updated: 2003/02/02 01:41:46 -+dnl ---------------- -+dnl Some systems have a non-ANSI linker that doesn't pull in modules that have -+dnl only data (i.e., no functions), for example NeXT. On those systems we'll -+dnl have to provide wrappers for global tables to ensure they're linked -+dnl properly. -+AC_DEFUN([CF_LINK_DATAONLY], -+[ -+AC_MSG_CHECKING([if data-only library module links]) -+AC_CACHE_VAL(cf_cv_link_dataonly,[ -+ rm -f conftest.a -+ cat >conftest.$ac_ext <&AC_FD_CC 1>/dev/null -+ fi -+ rm -f conftest.$ac_ext data.o -+ cat >conftest.$ac_ext <&AC_FD_CC 1>/dev/null -+ fi -+ rm -f conftest.$ac_ext func.o -+ ( eval $RANLIB conftest.a ) 2>&AC_FD_CC >/dev/null -+ cf_saveLIBS="$LIBS" -+ LIBS="conftest.a $LIBS" -+ AC_TRY_RUN([ -+ int main() -+ { -+ extern int testfunc(); -+ exit (!testfunc()); -+ } -+ ], -+ [cf_cv_link_dataonly=yes], -+ [cf_cv_link_dataonly=no], -+ [cf_cv_link_dataonly=unknown]) -+ LIBS="$cf_saveLIBS" -+ ]) -+AC_MSG_RESULT($cf_cv_link_dataonly) -+ -+if test "$cf_cv_link_dataonly" = no ; then -+ AC_DEFINE(BROKEN_LINKER) -+ BROKEN_LINKER=1 -+fi -+ -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_LINK_FUNCS version: 5 updated: 2003/02/02 01:41:46 -+dnl ------------- -+dnl Most Unix systems have both link and symlink, a few don't have symlink. -+dnl A few non-Unix systems implement symlink, but not link. -+dnl A few non-systems implement neither (or have nonfunctional versions). -+AC_DEFUN([CF_LINK_FUNCS], -+[ -+AC_CHECK_FUNCS( \ -+ remove \ -+ unlink ) -+ -+if test "$cross_compiling" = yes ; then -+ AC_CHECK_FUNCS( \ -+ link \ -+ symlink ) -+else -+ AC_CACHE_CHECK(if link/symlink functions work,cf_cv_link_funcs,[ -+ cf_cv_link_funcs= -+ for cf_func in link symlink ; do -+ AC_TRY_RUN([ -+#include -+#include -+#ifdef HAVE_UNISTD_H -+#include -+#endif -+int main() -+{ -+ int fail = 0; -+ char *src = "config.log"; -+ char *dst = "conftest.chk"; -+ struct stat src_sb; -+ struct stat dst_sb; -+ -+ stat(src, &src_sb); -+ fail = ($cf_func("config.log", "conftest.chk") < 0) -+ || (stat(dst, &dst_sb) < 0) -+ || (dst_sb.st_mtime != src_sb.st_mtime); -+#ifdef HAVE_UNLINK -+ unlink(dst); -+#else -+ remove(dst); -+#endif -+ exit (fail); -+} -+ ],[ -+ cf_cv_link_funcs="$cf_cv_link_funcs $cf_func" -+ eval 'ac_cv_func_'$cf_func'=yes'],[ -+ eval 'ac_cv_func_'$cf_func'=no'],[ -+ eval 'ac_cv_func_'$cf_func'=error']) -+ done -+ test -z "$cf_cv_link_funcs" && cf_cv_link_funcs=no -+ ]) -+ test "$ac_cv_func_link" = yes && AC_DEFINE(HAVE_LINK) -+ test "$ac_cv_func_symlink" = yes && AC_DEFINE(HAVE_SYMLINK) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_MAKEFLAGS version: 9 updated: 2001/12/30 18:17:27 -+dnl ------------ -+dnl Some 'make' programs support $(MAKEFLAGS), some $(MFLAGS), to pass 'make' -+dnl options to lower-levels. It's very useful for "make -n" -- if we have it. -+dnl (GNU 'make' does both, something POSIX 'make', which happens to make the -+dnl $(MAKEFLAGS) variable incompatible because it adds the assignments :-) -+AC_DEFUN([CF_MAKEFLAGS], -+[ -+AC_CACHE_CHECK(for makeflags variable, cf_cv_makeflags,[ -+ cf_cv_makeflags='' -+ for cf_option in '-$(MAKEFLAGS)' '$(MFLAGS)' -+ do -+ cat >cf_makeflags.tmp </dev/null` -+ case "$cf_result" in -+ .*k) -+ cf_result=`${MAKE-make} -k -f cf_makeflags.tmp CC=cc 2>/dev/null` -+ case "$cf_result" in -+ .*CC=*) cf_cv_makeflags= -+ ;; -+ *) cf_cv_makeflags=$cf_option -+ ;; -+ esac -+ break -+ ;; -+ *) echo no match "$cf_result" -+ ;; -+ esac -+ done -+ rm -f cf_makeflags.tmp -+]) -+ -+AC_SUBST(cf_cv_makeflags) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_MAKE_TAGS version: 2 updated: 2000/10/04 09:18:40 -+dnl ------------ -+dnl Generate tags/TAGS targets for makefiles. Do not generate TAGS if we have -+dnl a monocase filesystem. -+AC_DEFUN([CF_MAKE_TAGS],[ -+AC_REQUIRE([CF_MIXEDCASE_FILENAMES]) -+AC_CHECK_PROG(MAKE_LOWER_TAGS, ctags, yes, no) -+ -+if test "$cf_cv_mixedcase" = yes ; then -+ AC_CHECK_PROG(MAKE_UPPER_TAGS, etags, yes, no) -+else -+ MAKE_UPPER_TAGS=no -+fi -+ -+if test "$MAKE_UPPER_TAGS" = yes ; then -+ MAKE_UPPER_TAGS= -+else -+ MAKE_UPPER_TAGS="#" -+fi -+AC_SUBST(MAKE_UPPER_TAGS) -+ -+if test "$MAKE_LOWER_TAGS" = yes ; then -+ MAKE_LOWER_TAGS= -+else -+ MAKE_LOWER_TAGS="#" -+fi -+AC_SUBST(MAKE_LOWER_TAGS) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_MANPAGE_FORMAT version: 7 updated: 2003/12/20 19:30:34 -+dnl ----------------- -+dnl Option to allow user to override automatic configuration of manpage format. -+dnl There are several special cases: -+dnl -+dnl gzip - man checks for, can display gzip'd files -+dnl compress - man checks for, can display compressed files -+dnl BSDI - files in the cat-directories are suffixed ".0" -+dnl formatted - installer should format (put files in cat-directory) -+dnl catonly - installer should only format, e.g., for a turnkey system. -+dnl -+dnl There are other configurations which this macro does not test, e.g., HPUX's -+dnl compressed manpages (but uncompressed manpages are fine, and HPUX's naming -+dnl convention would not match our use). -+AC_DEFUN([CF_MANPAGE_FORMAT], -+[ -+AC_REQUIRE([CF_PATHSEP]) -+AC_MSG_CHECKING(format of man-pages) -+ -+AC_ARG_WITH(manpage-format, -+ [ --with-manpage-format specify manpage-format: gzip/compress/BSDI/normal and -+ optionally formatted/catonly, e.g., gzip,formatted], -+ [MANPAGE_FORMAT=$withval], -+ [MANPAGE_FORMAT=unknown]) -+ -+test -z "$MANPAGE_FORMAT" && MANPAGE_FORMAT=unknown -+MANPAGE_FORMAT=`echo "$MANPAGE_FORMAT" | sed -e 's/,/ /g'` -+ -+cf_unknown= -+ -+case $MANPAGE_FORMAT in -+unknown) -+ if test -z "$MANPATH" ; then -+ MANPATH="/usr/man:/usr/share/man" -+ fi -+ -+ # look for the 'date' man-page (it's most likely to be installed!) -+ MANPAGE_FORMAT= -+ cf_preform=no -+ cf_catonly=yes -+ cf_example=date -+ -+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATHSEP}" -+ for cf_dir in $MANPATH; do -+ test -z "$cf_dir" && cf_dir=/usr/man -+ for cf_name in $cf_dir/man*/$cf_example.[[01]]* $cf_dir/cat*/$cf_example.[[01]]* $cf_dir/man*/$cf_example $cf_dir/cat*/$cf_example -+ do -+ cf_test=`echo $cf_name | sed -e 's/*//'` -+ if test "x$cf_test" = "x$cf_name" ; then -+ -+ case "$cf_name" in -+ *.gz) MANPAGE_FORMAT="$MANPAGE_FORMAT gzip";; -+ *.Z) MANPAGE_FORMAT="$MANPAGE_FORMAT compress";; -+ *.0) MANPAGE_FORMAT="$MANPAGE_FORMAT BSDI";; -+ *) MANPAGE_FORMAT="$MANPAGE_FORMAT normal";; -+ esac -+ -+ case "$cf_name" in -+ $cf_dir/man*) -+ cf_catonly=no -+ ;; -+ $cf_dir/cat*) -+ cf_preform=yes -+ ;; -+ esac -+ break -+ fi -+ -+ # if we found a match in either man* or cat*, stop looking -+ if test -n "$MANPAGE_FORMAT" ; then -+ cf_found=no -+ test "$cf_preform" = yes && MANPAGE_FORMAT="$MANPAGE_FORMAT formatted" -+ test "$cf_catonly" = yes && MANPAGE_FORMAT="$MANPAGE_FORMAT catonly" -+ case "$cf_name" in -+ $cf_dir/cat*) -+ cf_found=yes -+ ;; -+ esac -+ test $cf_found=yes && break -+ fi -+ done -+ # only check the first directory in $MANPATH where we find manpages -+ if test -n "$MANPAGE_FORMAT" ; then -+ break -+ fi -+ done -+ # if we did not find the example, just assume it is normal -+ test -z "$MANPAGE_FORMAT" && MANPAGE_FORMAT=normal -+ IFS="$ac_save_ifs" -+ ;; -+*) -+ for cf_option in $MANPAGE_FORMAT; do -+ case $cf_option in #(vi -+ gzip|compress|BSDI|normal|formatted|catonly) -+ ;; -+ *) -+ cf_unknown="$cf_unknown $cf_option" -+ ;; -+ esac -+ done -+ ;; -+esac -+ -+AC_MSG_RESULT($MANPAGE_FORMAT) -+if test -n "$cf_unknown" ; then -+ AC_MSG_WARN(Unexpected manpage-format $cf_unknown) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_MANPAGE_RENAMES version: 6 updated: 2002/01/19 22:51:32 -+dnl ------------------ -+dnl The Debian people have their own naming convention for manpages. This -+dnl option lets us override the name of the file containing renaming, or -+dnl disable it altogether. -+AC_DEFUN([CF_MANPAGE_RENAMES], -+[ -+AC_MSG_CHECKING(for manpage renaming) -+ -+AC_ARG_WITH(manpage-renames, -+ [ --with-manpage-renames specify manpage-renaming], -+ [MANPAGE_RENAMES=$withval], -+ [MANPAGE_RENAMES=yes]) -+ -+case ".$MANPAGE_RENAMES" in #(vi -+.no) #(vi -+ ;; -+.|.yes) -+ # Debian 'man' program? -+ if test -f /etc/debian_version ; then -+ MANPAGE_RENAMES=`cd $srcdir && pwd`/man/man_db.renames -+ else -+ MANPAGE_RENAMES=no -+ fi -+ ;; -+esac -+ -+if test "$MANPAGE_RENAMES" != no ; then -+ if test -f $srcdir/man/$MANPAGE_RENAMES ; then -+ MANPAGE_RENAMES=`cd $srcdir/man && pwd`/$MANPAGE_RENAMES -+ elif test ! -f $MANPAGE_RENAMES ; then -+ AC_MSG_ERROR(not a filename: $MANPAGE_RENAMES) -+ fi -+ -+ test ! -d man && mkdir man -+ -+ # Construct a sed-script to perform renaming within man-pages -+ if test -n "$MANPAGE_RENAMES" ; then -+ test ! -d man && mkdir man -+ sh $srcdir/man/make_sed.sh $MANPAGE_RENAMES >man/edit_man.sed -+ fi -+fi -+ -+AC_MSG_RESULT($MANPAGE_RENAMES) -+AC_SUBST(MANPAGE_RENAMES) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_MANPAGE_SYMLINKS version: 4 updated: 2003/12/13 18:01:58 -+dnl ------------------- -+dnl Some people expect each tool to make all aliases for manpages in the -+dnl man-directory. This accommodates the older, less-capable implementations -+dnl of 'man', and is optional. -+AC_DEFUN([CF_MANPAGE_SYMLINKS], -+[ -+AC_MSG_CHECKING(if manpage aliases will be installed) -+ -+AC_ARG_WITH(manpage-aliases, -+ [ --with-manpage-aliases specify manpage-aliases using .so], -+ [MANPAGE_ALIASES=$withval], -+ [MANPAGE_ALIASES=yes]) -+ -+AC_MSG_RESULT($MANPAGE_ALIASES) -+ -+if test "$LN_S" = "ln -s"; then -+ cf_use_symlinks=yes -+else -+ cf_use_symlinks=no -+fi -+ -+MANPAGE_SYMLINKS=no -+if test "$MANPAGE_ALIASES" = yes ; then -+AC_MSG_CHECKING(if manpage symlinks should be used) -+ -+AC_ARG_WITH(manpage-symlinks, -+ [ --with-manpage-symlinks specify manpage-aliases using symlinks], -+ [MANPAGE_SYMLINKS=$withval], -+ [MANPAGE_SYMLINKS=$cf_use_symlinks]) -+ -+if test "$$cf_use_symlinks" = no; then -+if test "$MANPAGE_SYMLINKS" = yes ; then -+ AC_MSG_WARN(cannot make symlinks, will use .so files) -+ MANPAGE_SYMLINKS=no -+fi -+fi -+ -+AC_MSG_RESULT($MANPAGE_SYMLINKS) -+fi -+ -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_MANPAGE_TBL version: 3 updated: 2002/01/19 22:51:32 -+dnl -------------- -+dnl This option causes manpages to be run through tbl(1) to generate tables -+dnl correctly. -+AC_DEFUN([CF_MANPAGE_TBL], -+[ -+AC_MSG_CHECKING(for manpage tbl) -+ -+AC_ARG_WITH(manpage-tbl, -+ [ --with-manpage-tbl specify manpage processing with tbl], -+ [MANPAGE_TBL=$withval], -+ [MANPAGE_TBL=no]) -+ -+AC_MSG_RESULT($MANPAGE_TBL) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_MAN_PAGES version: 27 updated: 2003/12/20 20:39:45 -+dnl ------------ -+dnl Try to determine if the man-pages on the system are compressed, and if -+dnl so, what format is used. Use this information to construct a script that -+dnl will install man-pages. -+AC_DEFUN([CF_MAN_PAGES], -+[ -+CF_MANPAGE_FORMAT -+CF_MANPAGE_RENAMES -+CF_MANPAGE_SYMLINKS -+CF_MANPAGE_TBL -+ -+ if test "$prefix" = "NONE" ; then -+ cf_prefix="$ac_default_prefix" -+ else -+ cf_prefix="$prefix" -+ fi -+ -+ case "$MANPAGE_FORMAT" in # (vi -+ *catonly*) # (vi -+ cf_format=yes -+ cf_inboth=no -+ ;; -+ *formatted*) # (vi -+ cf_format=yes -+ cf_inboth=yes -+ ;; -+ *) -+ cf_format=no -+ cf_inboth=no -+ ;; -+ esac -+ -+test ! -d man && mkdir man -+ -+cf_so_strip= -+cf_compress= -+case "$MANPAGE_FORMAT" in #(vi -+*compress*) #(vi -+ cf_so_strip="Z" -+ cf_compress=compress -+ ;; -+*gzip*) #(vi -+ cf_so_strip="gz" -+ cf_compress=gzip -+ ;; -+esac -+ -+cf_edit_man=man/edit_man.sh -+ -+cat >$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <\$TMP -+CF_EOF -+else -+cat >>$cf_edit_man <\$TMP -+CF_EOF -+fi -+ -+cat >>$cf_edit_man <\$TMP.out -+ mv \$TMP.out \$TMP -+fi -+CF_EOF -+ -+if test $with_curses_h != yes ; then -+cat >>$cf_edit_man <\$TMP.out -+ mv \$TMP.out \$TMP -+CF_EOF -+fi -+ -+cat >>$cf_edit_man <\$TMP.out -+ mv \$TMP.out \$TMP -+ fi -+CF_EOF -+ -+if test -n "$cf_compress" ; then -+cat >>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <\$TMP -+CF_EOF -+if test -n "$cf_compress" ; then -+cat >>$cf_edit_man <>$cf_edit_man < -+ #include -+ ], -+ [double x = rand(); printf("result = %g\n", ]ifelse($2,,sin(x),$2)[)], -+ [cf_cv_need_libm=no], -+ [cf_cv_need_libm=yes])]) -+if test "$cf_cv_need_libm" = yes -+then -+ifelse($1,,[ -+ LIBS="$LIBS -lm" -+],[$1=-lm]) -+fi -+]) -+dnl --------------------------------------------------------------------------- -+dnl CF_MIXEDCASE_FILENAMES version: 3 updated: 2003/09/20 17:07:55 -+dnl ---------------------- -+dnl Check if the file-system supports mixed-case filenames. If we're able to -+dnl create a lowercase name and see it as uppercase, it doesn't support that. -+AC_DEFUN([CF_MIXEDCASE_FILENAMES], -+[ -+AC_CACHE_CHECK(if filesystem supports mixed-case filenames,cf_cv_mixedcase,[ -+if test "$cross_compiling" = yes ; then -+ case $target_alias in #(vi -+ *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-mingw32*|*-uwin*) #(vi -+ cf_cv_mixedcase=no -+ ;; -+ *) -+ cf_cv_mixedcase=yes -+ ;; -+ esac -+else -+ rm -f conftest CONFTEST -+ echo test >conftest -+ if test -f CONFTEST ; then -+ cf_cv_mixedcase=no -+ else -+ cf_cv_mixedcase=yes -+ fi -+ rm -f conftest CONFTEST -+fi -+]) -+test "$cf_cv_mixedcase" = yes && AC_DEFINE(MIXEDCASE_FILENAMES) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_MKSTEMP version: 3 updated: 2001/11/08 20:59:59 -+dnl ---------- -+dnl Check for a working mkstemp. This creates two files, checks that they are -+dnl successfully created and distinct (AmigaOS apparently fails on the last). -+AC_DEFUN([CF_MKSTEMP],[ -+AC_CACHE_CHECK(for working mkstemp, cf_cv_func_mkstemp,[ -+rm -f conftest* -+AC_TRY_RUN([ -+#include -+#include -+#include -+#include -+#include -+int main() -+{ -+ char *tmpl = "conftestXXXXXX"; -+ char name[2][80]; -+ int n; -+ int result = 0; -+ int fd; -+ struct stat sb; -+ -+ umask(077); -+ for (n = 0; n < 2; ++n) { -+ strcpy(name[n], tmpl); -+ if ((fd = mkstemp(name[n])) >= 0) { -+ if (!strcmp(name[n], tmpl) -+ || stat(name[n], &sb) != 0 -+ || (sb.st_mode & S_IFMT) != S_IFREG -+ || (sb.st_mode & 077) != 0) { -+ result = 1; -+ } -+ close(fd); -+ } -+ } -+ if (result == 0 -+ && !strcmp(name[0], name[1])) -+ result = 1; -+ exit(result); -+} -+],[cf_cv_func_mkstemp=yes -+],[cf_cv_func_mkstemp=no -+],[AC_CHECK_FUNC(mkstemp) -+]) -+]) -+if test "$cf_cv_func_mkstemp" = yes ; then -+ AC_DEFINE(HAVE_MKSTEMP) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_NUMBER_SYNTAX version: 1 updated: 2003/09/20 18:12:49 -+dnl ---------------- -+dnl Check if the given variable is a number. If not, report an error. -+dnl $1 is the variable -+dnl $2 is the message -+AC_DEFUN([CF_NUMBER_SYNTAX],[ -+if test -n "$1" ; then -+ case $1 in #(vi -+ [[0-9]]*) #(vi -+ ;; -+ *) -+ AC_MSG_ERROR($2 is not a number: $1) -+ ;; -+ esac -+else -+ AC_MSG_ERROR($2 value is empty) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_OBJ_SUBDIR version: 4 updated: 2002/02/23 20:38:31 -+dnl ------------- -+dnl Compute the object-directory name from the given model name -+AC_DEFUN([CF_OBJ_SUBDIR], -+[ -+ case $1 in -+ libtool) $2='obj_lo' ;; -+ normal) $2='objects' ;; -+ debug) $2='obj_g' ;; -+ profile) $2='obj_p' ;; -+ shared) -+ case $cf_cv_system_name in #(vi -+ cygwin) #(vi -+ $2='objects' ;; -+ *) -+ $2='obj_s' ;; -+ esac -+ esac -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_PATHSEP version: 3 updated: 2001/01/12 01:23:53 -+dnl ---------- -+dnl Provide a value for the $PATH and similar separator -+AC_DEFUN([CF_PATHSEP], -+[ -+ case $cf_cv_system_name in -+ os2*) PATHSEP=';' ;; -+ *) PATHSEP=':' ;; -+ esac -+ifelse($1,,,[$1=$PATHSEP]) -+ AC_SUBST(PATHSEP) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_PATH_SYNTAX version: 9 updated: 2002/09/17 23:03:38 -+dnl -------------- -+dnl Check the argument to see that it looks like a pathname. Rewrite it if it -+dnl begins with one of the prefix/exec_prefix variables, and then again if the -+dnl result begins with 'NONE'. This is necessary to work around autoconf's -+dnl delayed evaluation of those symbols. -+AC_DEFUN([CF_PATH_SYNTAX],[ -+case ".[$]$1" in #(vi -+.\[$]\(*\)*|.\'*\'*) #(vi -+ ;; -+..|./*|.\\*) #(vi -+ ;; -+.[[a-zA-Z]]:[[\\/]]*) #(vi OS/2 EMX -+ ;; -+.\[$]{*prefix}*) #(vi -+ eval $1="[$]$1" -+ case ".[$]$1" in #(vi -+ .NONE/*) -+ $1=`echo [$]$1 | sed -e s%NONE%$ac_default_prefix%` -+ ;; -+ esac -+ ;; #(vi -+.NONE/*) -+ $1=`echo [$]$1 | sed -e s%NONE%$ac_default_prefix%` -+ ;; -+*) -+ ifelse($2,,[AC_ERROR([expected a pathname, not \"[$]$1\"])],$2) -+ ;; -+esac -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_PREDEFINE version: 1 updated: 2003/07/26 17:53:56 -+dnl ------------ -+dnl Add definitions to CPPFLAGS to ensure they're predefined for all compiles. -+dnl -+dnl $1 = symbol to test -+dnl $2 = value (if any) to use for a predefinition -+AC_DEFUN([CF_PREDEFINE], -+[ -+AC_MSG_CHECKING(if we must define $1) -+AC_TRY_COMPILE([#include -+],[ -+#ifndef $1 -+make an error -+#endif],[cf_result=no],[cf_result=yes]) -+AC_MSG_RESULT($cf_result) -+ -+if test "$cf_result" = yes ; then -+ CPPFLAGS="$CPPFLAGS ifelse($2,,-D$1,[-D$1=$2])" -+elif test "x$2" != "x" ; then -+ AC_MSG_CHECKING(checking for compatible value versus $2) -+ AC_TRY_COMPILE([#include -+],[ -+#if $1-$2 < 0 -+make an error -+#endif],[cf_result=yes],[cf_result=no]) -+ AC_MSG_RESULT($cf_result) -+ if test "$cf_result" = no ; then -+ # perhaps we can override it - try... -+ CPPFLAGS="$CPPFLAGS -D$1=$2" -+ fi -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_PROG_EXT version: 10 updated: 2004/01/03 19:28:18 -+dnl ----------- -+dnl Compute $PROG_EXT, used for non-Unix ports, such as OS/2 EMX. -+AC_DEFUN([CF_PROG_EXT], -+[ -+AC_REQUIRE([CF_CHECK_CACHE]) -+case $cf_cv_system_name in -+os2*) -+ CFLAGS="$CFLAGS -Zmt" -+ CPPFLAGS="$CPPFLAGS -D__ST_MT_ERRNO__" -+ CXXFLAGS="$CXXFLAGS -Zmt" -+ # autoconf's macro sets -Zexe and suffix both, which conflict:w -+ LDFLAGS="$LDFLAGS -Zmt -Zcrtdll" -+ ac_cv_exeext=.exe -+ ;; -+esac -+ -+AC_EXEEXT -+AC_OBJEXT -+ -+PROG_EXT="$EXEEXT" -+AC_SUBST(PROG_EXT) -+test -n "$PROG_EXT" && AC_DEFINE_UNQUOTED(PROG_EXT,"$PROG_EXT") -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_PROG_INSTALL version: 5 updated: 2002/12/21 22:46:07 -+dnl --------------- -+dnl Force $INSTALL to be an absolute-path. Otherwise, edit_man.sh and the -+dnl misc/tabset install won't work properly. Usually this happens only when -+dnl using the fallback mkinstalldirs script -+AC_DEFUN([CF_PROG_INSTALL], -+[AC_PROG_INSTALL -+case $INSTALL in -+/*) -+ ;; -+*) -+ CF_DIRNAME(cf_dir,$INSTALL) -+ test -z "$cf_dir" && cf_dir=. -+ INSTALL=`cd $cf_dir && pwd`/`echo $INSTALL | sed -e 's%^.*/%%'` -+ ;; -+esac -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_PROG_LDCONFIG version: 1 updated: 2003/09/20 17:07:55 -+dnl ---------------- -+dnl Check for ldconfig, needed to fixup shared libraries that would be built -+dnl and then used in the install. -+AC_DEFUN([CF_PROG_LDCONFIG],[ -+if test "$cross_compiling" = yes ; then -+ LDCONFIG=: -+else -+case "$cf_cv_system_name" in #(vi -+freebsd*) #(vi -+ test -z "$LDCONFIG" && LDCONFIG="/sbin/ldconfig -R" -+ ;; -+*) LDPATH=$PATH:/sbin:/usr/sbin -+ AC_PATH_PROG(LDCONFIG,ldconfig,,$LDPATH) -+ ;; -+esac -+fi -+AC_SUBST(LDCONFIG) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_REGEX version: 3 updated: 1997/11/01 14:26:01 -+dnl -------- -+dnl Attempt to determine if we've got one of the flavors of regular-expression -+dnl code that we can support. -+AC_DEFUN([CF_REGEX], -+[ -+AC_MSG_CHECKING([for regular-expression headers]) -+AC_CACHE_VAL(cf_cv_regex,[ -+AC_TRY_LINK([#include -+#include ],[ -+ regex_t *p; -+ int x = regcomp(p, "", 0); -+ int y = regexec(p, "", 0, 0, 0); -+ regfree(p); -+ ],[cf_cv_regex="regex.h"],[ -+ AC_TRY_LINK([#include ],[ -+ char *p = compile("", "", "", 0); -+ int x = step("", ""); -+ ],[cf_cv_regex="regexp.h"],[ -+ cf_save_LIBS="$LIBS" -+ LIBS="-lgen $LIBS" -+ AC_TRY_LINK([#include ],[ -+ char *p = compile("", "", ""); -+ int x = step("", ""); -+ ],[cf_cv_regex="regexpr.h"],[LIBS="$cf_save_LIBS"])])]) -+]) -+AC_MSG_RESULT($cf_cv_regex) -+case $cf_cv_regex in -+ regex.h) AC_DEFINE(HAVE_REGEX_H_FUNCS) ;; -+ regexp.h) AC_DEFINE(HAVE_REGEXP_H_FUNCS) ;; -+ regexpr.h) AC_DEFINE(HAVE_REGEXPR_H_FUNCS) ;; -+esac -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_SHARED_OPTS version: 30 updated: 2003/12/27 20:48:07 -+dnl -------------- -+dnl Attempt to determine the appropriate CC/LD options for creating a shared -+dnl library. -+dnl -+dnl Note: $(LOCAL_LDFLAGS) is used to link executables that will run within the -+dnl build-tree, i.e., by making use of the libraries that are compiled in ../lib -+dnl We avoid compiling-in a ../lib path for the shared library since that can -+dnl lead to unexpected results at runtime. -+dnl $(LOCAL_LDFLAGS2) has the same intention but assumes that the shared libraries -+dnl are compiled in ../../lib -+dnl -+dnl The variable 'cf_cv_do_symlinks' is used to control whether we configure -+dnl to install symbolic links to the rel/abi versions of shared libraries. -+dnl -+dnl The variable 'cf_cv_shlib_version' controls whether we use the rel or abi -+dnl version when making symbolic links. -+dnl -+dnl The variable 'cf_cv_shlib_version_infix' controls whether shared library -+dnl version numbers are infix (ex: libncurses..dylib) or postfix -+dnl (ex: libncurses.so.). -+dnl -+dnl Some loaders leave 'so_locations' lying around. It's nice to clean up. -+AC_DEFUN([CF_SHARED_OPTS], -+[ -+ AC_REQUIRE([CF_SUBST_NCURSES_VERSION]) -+ LOCAL_LDFLAGS= -+ LOCAL_LDFLAGS2= -+ LD_SHARED_OPTS= -+ INSTALL_LIB="-m 644" -+ -+ cf_cv_do_symlinks=no -+ -+ AC_MSG_CHECKING(if release/abi version should be used for shared libs) -+ AC_ARG_WITH(shlib-version, -+ [ --with-shlib-version=X Specify rel or abi version for shared libs], -+ [test -z "$withval" && withval=auto -+ case $withval in #(vi -+ yes) #(vi -+ cf_cv_shlib_version=auto -+ ;; -+ rel|abi|auto|no) #(vi -+ cf_cv_shlib_version=$withval -+ ;; -+ *) -+ AC_ERROR([option value must be one of: rel, abi, auto or no]) -+ ;; -+ esac -+ ],[cf_cv_shlib_version=auto]) -+ AC_MSG_RESULT($cf_cv_shlib_version) -+ -+ cf_cv_rm_so_locs=no -+ -+ # Some less-capable ports of gcc support only -fpic -+ CC_SHARED_OPTS= -+ if test "$GCC" = yes -+ then -+ AC_MSG_CHECKING(which $CC option to use) -+ cf_save_CFLAGS="$CFLAGS" -+ for CC_SHARED_OPTS in -fPIC -fpic '' -+ do -+ CFLAGS="$cf_save_CFLAGS $CC_SHARED_OPTS" -+ AC_TRY_COMPILE([#include ],[int x = 1],[break],[]) -+ done -+ AC_MSG_RESULT($CC_SHARED_OPTS) -+ CFLAGS="$cf_save_CFLAGS" -+ fi -+ -+ cf_cv_shlib_version_infix=no -+ -+ case $cf_cv_system_name in -+ beos*) -+ MK_SHARED_LIB='$(CC) -o $[@] -Xlinker -soname=`basename $[@]` -nostart -e 0' -+ ;; -+ cygwin*) -+ CC_SHARED_OPTS= -+ MK_SHARED_LIB='$(CC) -shared -Wl,--out-implib=$(IMPORT_LIB) -Wl,--export-all-symbols -o $(SHARED_LIB)' -+ cf_cv_shlib_version=cygdll -+ cf_cv_shlib_version_infix=cygdll -+ ;; -+ darwin*) -+ EXTRA_CFLAGS="-no-cpp-precomp" -+ CC_SHARED_OPTS="-dynamic" -+ MK_SHARED_LIB='$(CC) -dynamiclib -install_name $(DESTDIR)$(libdir)/`basename $[@]` -compatibility_version $(ABI_VERSION) -current_version $(ABI_VERSION) -o $[@]' -+ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=abi -+ cf_cv_shlib_version_infix=yes -+ ;; -+ hpux*) -+ # (tested with gcc 2.7.2 -- I don't have c89) -+ if test "$GCC" = yes; then -+ LD_SHARED_OPTS='-Xlinker +b -Xlinker $(libdir)' -+ else -+ CC_SHARED_OPTS='+Z' -+ LD_SHARED_OPTS='-Wl,+b,$(libdir)' -+ fi -+ MK_SHARED_LIB='$(LD) +b $(libdir) -b -o $[@]' -+ # HP-UX shared libraries must be executable, and should be -+ # readonly to exploit a quirk in the memory manager. -+ INSTALL_LIB="-m 555" -+ ;; -+ irix*) -+ if test "$cf_cv_ld_rpath" = yes ; then -+ cf_ld_rpath_opt="-Wl,-rpath," -+ EXTRA_LDFLAGS="-Wl,-rpath,\$(libdir) $EXTRA_LDFLAGS" -+ fi -+ # tested with IRIX 5.2 and 'cc'. -+ if test "$GCC" != yes; then -+ CC_SHARED_OPTS='-KPIC' -+ fi -+ MK_SHARED_LIB='$(LD) -shared -rdata_shared -soname `basename $[@]` -o $[@]' -+ cf_cv_rm_so_locs=yes -+ ;; -+ linux*|gnu*|k*bsd*-gnu) -+ if test "$DFT_LWR_MODEL" = "shared" ; then -+ LOCAL_LDFLAGS="-Wl,-rpath,`pwd`/lib" -+ LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" -+ fi -+ if test "$cf_cv_ld_rpath" = yes ; then -+ cf_ld_rpath_opt="-Wl,-rpath," -+ EXTRA_LDFLAGS="$LOCAL_LDFLAGS $EXTRA_LDFLAGS" -+ fi -+ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel -+ MK_SHARED_LIB='$(CC) -shared -Wl,-soname,`basename $[@] .$(REL_VERSION)`.$(ABI_VERSION),-stats,-lc -o $[@]' -+ ;; -+ openbsd2*) -+ CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC" -+ MK_SHARED_LIB='$(LD) -Bshareable -soname,`basename $[@].$(ABI_VERSION)` -o $[@]' -+ ;; -+ freebsd[[45]]*) -+ CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC" -+ MK_SHARED_LIB='$(LD) -Bshareable -soname=`basename $[@]` -o $[@]' -+ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel -+ -+# This doesn't work - I keep getting spurious references to needing -+# libncurses.so.5.3 when ldd says it's resolved. LOCAL_LDFLAGS2 seems to be -+# no longer used anyway. And the rpath logic isn't relative - so I have to -+# add the local and install lib-directories: -+# -+# if test "$DFT_LWR_MODEL" = "shared" && test "$cf_cv_ld_rpath" = yes ; then -+# LOCAL_LDFLAGS="-rpath `pwd`/lib" -+# LOCAL_LDFLAGS2="-rpath \$(libdir) $LOCAL_LDFLAGS" -+# cf_ld_rpath_opt="-rpath " -+# EXTRA_LDFLAGS="$LOCAL_LDFLAGS $EXTRA_LDFLAGS" -+# fi -+ ;; -+ openbsd*|freebsd*) -+ CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC" -+ MK_SHARED_LIB='$(LD) -Bshareable -o $[@]' -+ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel -+ ;; -+ netbsd*) -+ CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC" -+ test "$cf_cv_ld_rpath" = yes && cf_ld_rpath_opt="-Wl,-rpath," -+ if test "$DFT_LWR_MODEL" = "shared" && test "$cf_cv_ld_rpath" = yes ; then -+ LOCAL_LDFLAGS="-Wl,-rpath,`pwd`/lib" -+ LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" -+ EXTRA_LDFLAGS="-Wl,-rpath,\$(libdir) $EXTRA_LDFLAGS" -+ MK_SHARED_LIB='$(CC) -shared -Wl,-soname,`basename $[@] .$(REL_VERSION)`.$(ABI_VERSION) -o $[@]' -+ if test "$cf_cv_shlib_version" = auto; then -+ if test ! -f /usr/libexec/ld.elf_so; then -+ cf_cv_shlib_version=rel -+ fi -+ fi -+ else -+ MK_SHARED_LIB='$(LD) -Bshareable -o $[@]' -+ fi -+ ;; -+ osf*|mls+*) -+ # tested with OSF/1 V3.2 and 'cc' -+ # tested with OSF/1 V3.2 and gcc 2.6.3 (but the c++ demo didn't -+ # link with shared libs). -+ MK_SHARED_LIB='$(LD) -set_version $(REL_VERSION):$(ABI_VERSION) -expect_unresolved "*" -shared -soname `basename $[@]`' -+ case $host_os in -+ osf4*) -+ MK_SHARED_LIB="${MK_SHARED_LIB} -msym" -+ ;; -+ esac -+ MK_SHARED_LIB="${MK_SHARED_LIB}"' -o $[@]' -+ if test "$DFT_LWR_MODEL" = "shared" ; then -+ LOCAL_LDFLAGS="-Wl,-rpath,`pwd`/lib" -+ LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" -+ fi -+ if test "$cf_cv_ld_rpath" = yes ; then -+ cf_ld_rpath_opt="-rpath" -+ # EXTRA_LDFLAGS="$LOCAL_LDFLAGS $EXTRA_LDFLAGS" -+ fi -+ cf_cv_rm_so_locs=yes -+ ;; -+ sco3.2v5*) # (also uw2* and UW7) hops 13-Apr-98 -+ # tested with osr5.0.5 -+ if test "$GCC" != yes; then -+ CC_SHARED_OPTS='-belf -KPIC' -+ fi -+ MK_SHARED_LIB='$(LD) -dy -G -h `basename $[@] .$(REL_VERSION)`.$(ABI_VERSION) -o [$]@' -+ if test "$cf_cv_ld_rpath" = yes ; then -+ # only way is to set LD_RUN_PATH but no switch for it -+ RUN_PATH=$libdir -+ fi -+ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel -+ LINK_PROGS='LD_RUN_PATH=$(libdir)' -+ LINK_TESTS='Pwd=`pwd`;LD_RUN_PATH=`dirname $${Pwd}`/lib' -+ ;; -+ sunos4*) -+ # tested with SunOS 4.1.1 and gcc 2.7.0 -+ if test "$GCC" != yes; then -+ CC_SHARED_OPTS='-KPIC' -+ fi -+ MK_SHARED_LIB='$(LD) -assert pure-text -o $[@]' -+ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel -+ ;; -+ solaris2*) -+ # tested with SunOS 5.5.1 (solaris 2.5.1) and gcc 2.7.2 -+ if test "$GCC" != yes; then -+ CC_SHARED_OPTS='-KPIC' -+ fi -+ MK_SHARED_LIB='$(LD) -dy -G -h `basename $[@] .$(REL_VERSION)`.$(ABI_VERSION) -o $[@]' -+ if test "$DFT_LWR_MODEL" = "shared" ; then -+ LOCAL_LDFLAGS="-R `pwd`/lib:\$(libdir)" -+ LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" -+ fi -+ if test "$cf_cv_ld_rpath" = yes ; then -+ cf_ld_rpath_opt="-R" -+ EXTRA_LDFLAGS="$LOCAL_LDFLAGS $EXTRA_LDFLAGS" -+ fi -+ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel -+ ;; -+ sysv5uw7*|unix_sv*) -+ # tested with UnixWare 7.1.0 (gcc 2.95.2 and cc) -+ if test "$GCC" != yes; then -+ CC_SHARED_OPTS='-KPIC' -+ fi -+ MK_SHARED_LIB='$(LD) -d y -G -o [$]@' -+ ;; -+ *) -+ CC_SHARED_OPTS='unknown' -+ MK_SHARED_LIB='echo unknown' -+ ;; -+ esac -+ -+ # This works if the last tokens in $MK_SHARED_LIB are the -o target. -+ case "$cf_cv_shlib_version" in #(vi -+ rel|abi) -+ case "$MK_SHARED_LIB" in #(vi -+ *'-o $[@]') -+ test "$cf_cv_do_symlinks" = no && cf_cv_do_symlinks=yes -+ ;; -+ *) -+ AC_MSG_WARN(ignored --with-shlib-version) -+ ;; -+ esac -+ ;; -+ esac -+ -+ if test -n "$cf_ld_rpath_opt" ; then -+ AC_MSG_CHECKING(if we need a space after rpath option) -+ cf_save_LIBS="$LIBS" -+ LIBS="$LIBS ${cf_ld_rpath_opt}$libdir" -+ AC_TRY_LINK(, , cf_rpath_space=no, cf_rpath_space=yes) -+ LIBS="$cf_save_LIBS" -+ AC_MSG_RESULT($cf_rpath_space) -+ test "$cf_rpath_space" = yes && cf_ld_rpath_opt="$cf_ld_rpath_opt " -+ MK_SHARED_LIB="$MK_SHARED_LIB $cf_ld_rpath_opt\$(libdir)" -+ fi -+ -+ AC_SUBST(CC_SHARED_OPTS) -+ AC_SUBST(LD_SHARED_OPTS) -+ AC_SUBST(MK_SHARED_LIB) -+ AC_SUBST(LINK_PROGS) -+ AC_SUBST(LINK_TESTS) -+ AC_SUBST(EXTRA_LDFLAGS) -+ AC_SUBST(LOCAL_LDFLAGS) -+ AC_SUBST(LOCAL_LDFLAGS2) -+ AC_SUBST(INSTALL_LIB) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_SIZECHANGE version: 8 updated: 2000/11/04 12:22:16 -+dnl ------------- -+dnl Check for definitions & structures needed for window size-changing -+dnl FIXME: check that this works with "snake" (HP-UX 10.x) -+AC_DEFUN([CF_SIZECHANGE], -+[ -+AC_REQUIRE([CF_STRUCT_TERMIOS]) -+AC_CACHE_CHECK(declaration of size-change, cf_cv_sizechange,[ -+ cf_cv_sizechange=unknown -+ cf_save_CPPFLAGS="$CPPFLAGS" -+ -+for cf_opts in "" "NEED_PTEM_H" -+do -+ -+ CPPFLAGS="$cf_save_CPPFLAGS" -+ test -n "$cf_opts" && CPPFLAGS="$CPPFLAGS -D$cf_opts" -+ AC_TRY_COMPILE([#include -+#ifdef HAVE_TERMIOS_H -+#include -+#else -+#ifdef HAVE_TERMIO_H -+#include -+#endif -+#endif -+#ifdef NEED_PTEM_H -+/* This is a workaround for SCO: they neglected to define struct winsize in -+ * termios.h -- it's only in termio.h and ptem.h -+ */ -+#include -+#include -+#endif -+#if !defined(sun) || !defined(HAVE_TERMIOS_H) -+#include -+#endif -+],[ -+#ifdef TIOCGSIZE -+ struct ttysize win; /* FIXME: what system is this? */ -+ int y = win.ts_lines; -+ int x = win.ts_cols; -+#else -+#ifdef TIOCGWINSZ -+ struct winsize win; -+ int y = win.ws_row; -+ int x = win.ws_col; -+#else -+ no TIOCGSIZE or TIOCGWINSZ -+#endif /* TIOCGWINSZ */ -+#endif /* TIOCGSIZE */ -+ ], -+ [cf_cv_sizechange=yes], -+ [cf_cv_sizechange=no]) -+ -+ CPPFLAGS="$cf_save_CPPFLAGS" -+ if test "$cf_cv_sizechange" = yes ; then -+ echo "size-change succeeded ($cf_opts)" >&AC_FD_CC -+ test -n "$cf_opts" && cf_cv_sizechange="$cf_opts" -+ break -+ fi -+done -+]) -+if test "$cf_cv_sizechange" != no ; then -+ AC_DEFINE(HAVE_SIZECHANGE) -+ case $cf_cv_sizechange in #(vi -+ NEED*) -+ AC_DEFINE_UNQUOTED($cf_cv_sizechange ) -+ ;; -+ esac -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_SRC_MODULES version: 15 updated: 2004/01/10 16:05:16 -+dnl -------------- -+dnl For each parameter, test if the source-directory exists, and if it contains -+dnl a 'modules' file. If so, add to the list $cf_cv_src_modules which we'll -+dnl use in CF_LIB_RULES. -+dnl -+dnl This uses the configured value to make the lists SRC_SUBDIRS and -+dnl SUB_MAKEFILES which are used in the makefile-generation scheme. -+AC_DEFUN([CF_SRC_MODULES], -+[ -+AC_MSG_CHECKING(for src modules) -+ -+# dependencies and linker-arguments for test-programs -+TEST_DEPS="${LIB_DIR}/${LIB_PREFIX}${LIB_NAME}${DFT_DEP_SUFFIX} $TEST_DEPS" -+if test "$DFT_LWR_MODEL" = "libtool"; then -+ TEST_ARGS="${TEST_DEPS}" -+else -+ TEST_ARGS="-l${LIB_NAME}${DFT_ARG_SUFFIX} $TEST_ARGS" -+fi -+ -+# dependencies and linker-arguments for utility-programs -+test "$with_termlib" != yes && PROG_ARGS="$TEST_ARGS" -+ -+cf_cv_src_modules= -+for cf_dir in $1 -+do -+ if test -f $srcdir/$cf_dir/modules; then -+ -+ # We may/may not have tack in the distribution, though the -+ # makefile is. -+ if test $cf_dir = tack ; then -+ if test ! -f $srcdir/${cf_dir}/${cf_dir}.h; then -+ continue -+ fi -+ fi -+ -+ if test -z "$cf_cv_src_modules"; then -+ cf_cv_src_modules=$cf_dir -+ else -+ cf_cv_src_modules="$cf_cv_src_modules $cf_dir" -+ fi -+ -+ # Make the ncurses_cfg.h file record the library interface files as -+ # well. These are header files that are the same name as their -+ # directory. Ncurses is the only library that does not follow -+ # that pattern. -+ if test $cf_dir = tack ; then -+ continue -+ elif test -f $srcdir/${cf_dir}/${cf_dir}.h; then -+ CF_UPPER(cf_have_include,$cf_dir) -+ AC_DEFINE_UNQUOTED(HAVE_${cf_have_include}_H) -+ AC_DEFINE_UNQUOTED(HAVE_LIB${cf_have_include}) -+ TEST_DEPS="${LIB_DIR}/${LIB_PREFIX}${cf_dir}${DFT_DEP_SUFFIX} $TEST_DEPS" -+ if test "$DFT_LWR_MODEL" = "libtool"; then -+ TEST_ARGS="${TEST_DEPS}" -+ else -+ TEST_ARGS="-l${cf_dir}${DFT_ARG_SUFFIX} $TEST_ARGS" -+ fi -+ fi -+ fi -+done -+AC_MSG_RESULT($cf_cv_src_modules) -+TEST_ARGS="-L${LIB_DIR} $TEST_ARGS" -+AC_SUBST(TEST_DEPS) -+AC_SUBST(TEST_ARGS) -+ -+PROG_ARGS="-L${LIB_DIR} $PROG_ARGS" -+AC_SUBST(PROG_ARGS) -+ -+SRC_SUBDIRS="man include" -+for cf_dir in $cf_cv_src_modules -+do -+ SRC_SUBDIRS="$SRC_SUBDIRS $cf_dir" -+done -+SRC_SUBDIRS="$SRC_SUBDIRS test" -+test -z "$MAKE_TERMINFO" && SRC_SUBDIRS="$SRC_SUBDIRS misc" -+test "$cf_with_cxx_binding" != no && SRC_SUBDIRS="$SRC_SUBDIRS c++" -+ -+ADA_SUBDIRS= -+if test "$cf_cv_prog_gnat_correct" = yes && test -f $srcdir/Ada95/Makefile.in; then -+ SRC_SUBDIRS="$SRC_SUBDIRS Ada95" -+ ADA_SUBDIRS="gen src samples" -+fi -+ -+SUB_MAKEFILES= -+for cf_dir in $SRC_SUBDIRS -+do -+ SUB_MAKEFILES="$SUB_MAKEFILES $cf_dir/Makefile" -+done -+ -+if test -n "$ADA_SUBDIRS"; then -+ for cf_dir in $ADA_SUBDIRS -+ do -+ SUB_MAKEFILES="$SUB_MAKEFILES Ada95/$cf_dir/Makefile" -+ done -+ AC_SUBST(ADA_SUBDIRS) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_STDCPP_LIBRARY version: 5 updated: 2000/08/12 23:18:52 -+dnl ----------------- -+dnl Check for -lstdc++, which is GNU's standard C++ library. -+AC_DEFUN([CF_STDCPP_LIBRARY], -+[ -+if test -n "$GXX" ; then -+case $cf_cv_system_name in #(vi -+os2*) #(vi -+ cf_stdcpp_libname=stdcpp -+ ;; -+*) -+ cf_stdcpp_libname=stdc++ -+ ;; -+esac -+AC_CACHE_CHECK(for library $cf_stdcpp_libname,cf_cv_libstdcpp,[ -+ cf_save="$LIBS" -+ LIBS="$LIBS -l$cf_stdcpp_libname" -+AC_TRY_LINK([ -+#include ],[ -+char buf[80]; -+strstreambuf foo(buf, sizeof(buf)) -+], -+ [cf_cv_libstdcpp=yes], -+ [cf_cv_libstdcpp=no]) -+ LIBS="$cf_save" -+]) -+test "$cf_cv_libstdcpp" = yes && CXXLIBS="$CXXLIBS -l$cf_stdcpp_libname" -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_STRIP_G_OPT version: 3 updated: 2002/12/21 19:25:52 -+dnl -------------- -+dnl Remove "-g" option from the compiler options -+AC_DEFUN([CF_STRIP_G_OPT], -+[$1=`echo ${$1} | sed -e 's%-g %%' -e 's%-g$%%'`])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_STRUCT_SIGACTION version: 3 updated: 2000/08/12 23:18:52 -+dnl ------------------- -+dnl Check if we need _POSIX_SOURCE defined to use struct sigaction. We'll only -+dnl do this if we've found the sigaction function. -+dnl -+dnl If needed, define SVR4_ACTION. -+AC_DEFUN([CF_STRUCT_SIGACTION],[ -+if test "$ac_cv_func_sigaction" = yes; then -+AC_MSG_CHECKING(whether sigaction needs _POSIX_SOURCE) -+AC_TRY_COMPILE([ -+#include -+#include ], -+ [struct sigaction act], -+ [sigact_bad=no], -+ [ -+AC_TRY_COMPILE([ -+#define _POSIX_SOURCE -+#include -+#include ], -+ [struct sigaction act], -+ [sigact_bad=yes -+ AC_DEFINE(SVR4_ACTION)], -+ [sigact_bad=unknown])]) -+AC_MSG_RESULT($sigact_bad) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_STRUCT_TERMIOS version: 5 updated: 2000/11/04 12:22:46 -+dnl ----------------- -+dnl Some machines require _POSIX_SOURCE to completely define struct termios. -+dnl If so, define SVR4_TERMIO -+AC_DEFUN([CF_STRUCT_TERMIOS],[ -+AC_CHECK_HEADERS( \ -+termio.h \ -+termios.h \ -+unistd.h \ -+) -+if test "$ISC" = yes ; then -+ AC_CHECK_HEADERS( sys/termio.h ) -+fi -+if test "$ac_cv_header_termios_h" = yes ; then -+ case "$CFLAGS $CPPFLAGS" in -+ *-D_POSIX_SOURCE*) -+ termios_bad=dunno ;; -+ *) termios_bad=maybe ;; -+ esac -+ if test "$termios_bad" = maybe ; then -+ AC_MSG_CHECKING(whether termios.h needs _POSIX_SOURCE) -+ AC_TRY_COMPILE([#include ], -+ [struct termios foo; int x = foo.c_iflag], -+ termios_bad=no, [ -+ AC_TRY_COMPILE([ -+#define _POSIX_SOURCE -+#include ], -+ [struct termios foo; int x = foo.c_iflag], -+ termios_bad=unknown, -+ termios_bad=yes AC_DEFINE(SVR4_TERMIO)) -+ ]) -+ AC_MSG_RESULT($termios_bad) -+ fi -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_SUBST version: 2 updated: 1997/09/06 23:41:28 -+dnl -------- -+dnl Shorthand macro for substituting things that the user may override -+dnl with an environment variable. -+dnl -+dnl $1 = long/descriptive name -+dnl $2 = environment variable -+dnl $3 = default value -+AC_DEFUN([CF_SUBST], -+[AC_CACHE_VAL(cf_cv_subst_$2,[ -+AC_MSG_CHECKING(for $1 (symbol $2)) -+test -z "[$]$2" && $2=$3 -+AC_MSG_RESULT([$]$2) -+AC_SUBST($2) -+cf_cv_subst_$2=[$]$2]) -+$2=${cf_cv_subst_$2} -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_SUBST_NCURSES_VERSION version: 7 updated: 2003/06/07 16:22:51 -+dnl ------------------------ -+dnl Get the version-number for use in shared-library naming, etc. -+AC_DEFUN([CF_SUBST_NCURSES_VERSION], -+[ -+NCURSES_MAJOR="`egrep '^NCURSES_MAJOR[[ ]]*=' $srcdir/dist.mk | sed -e 's/^[[^0-9]]*//'`" -+NCURSES_MINOR="`egrep '^NCURSES_MINOR[[ ]]*=' $srcdir/dist.mk | sed -e 's/^[[^0-9]]*//'`" -+NCURSES_PATCH="`egrep '^NCURSES_PATCH[[ ]]*=' $srcdir/dist.mk | sed -e 's/^[[^0-9]]*//'`" -+cf_cv_abi_version=${NCURSES_MAJOR} -+cf_cv_rel_version=${NCURSES_MAJOR}.${NCURSES_MINOR} -+dnl Show the computed version, for logging -+cf_cv_timestamp=`date` -+AC_MSG_RESULT(Configuring NCURSES $cf_cv_rel_version ABI $cf_cv_abi_version ($cf_cv_timestamp)) -+dnl We need these values in the generated headers -+AC_SUBST(NCURSES_MAJOR) -+AC_SUBST(NCURSES_MINOR) -+AC_SUBST(NCURSES_PATCH) -+dnl We need these values in the generated makefiles -+AC_SUBST(cf_cv_rel_version) -+AC_SUBST(cf_cv_abi_version) -+AC_SUBST(cf_cv_builtin_bool) -+AC_SUBST(cf_cv_header_stdbool_h) -+AC_SUBST(cf_cv_type_of_bool)dnl -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_SYS_TIME_SELECT version: 4 updated: 2000/10/04 09:18:40 -+dnl ------------------ -+dnl Check if we can include with ; this breaks on -+dnl older SCO configurations. -+AC_DEFUN([CF_SYS_TIME_SELECT], -+[ -+AC_MSG_CHECKING(if sys/time.h works with sys/select.h) -+AC_CACHE_VAL(cf_cv_sys_time_select,[ -+AC_TRY_COMPILE([ -+#include -+#ifdef HAVE_SYS_TIME_H -+#include -+#endif -+#ifdef HAVE_SYS_SELECT_H -+#include -+#endif -+],[],[cf_cv_sys_time_select=yes], -+ [cf_cv_sys_time_select=no]) -+ ]) -+AC_MSG_RESULT($cf_cv_sys_time_select) -+test "$cf_cv_sys_time_select" = yes && AC_DEFINE(HAVE_SYS_TIME_SELECT) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_TYPEOF_CHTYPE version: 4 updated: 2000/10/04 09:18:40 -+dnl ---------------- -+dnl Determine the type we should use for chtype (and attr_t, which is treated -+dnl as the same thing). We want around 32 bits, so on most machines want a -+dnl long, but on newer 64-bit machines, probably want an int. If we're using -+dnl wide characters, we have to have a type compatible with that, as well. -+AC_DEFUN([CF_TYPEOF_CHTYPE], -+[ -+AC_REQUIRE([CF_UNSIGNED_LITERALS]) -+AC_MSG_CHECKING([for type of chtype]) -+AC_CACHE_VAL(cf_cv_typeof_chtype,[ -+ AC_TRY_RUN([ -+#ifdef USE_WIDEC_SUPPORT -+#include /* we want wchar_t */ -+#define WANT_BITS 39 -+#else -+#define WANT_BITS 31 -+#endif -+#include -+int main() -+{ -+ FILE *fp = fopen("cf_test.out", "w"); -+ if (fp != 0) { -+ char *result = "long"; -+#ifdef USE_WIDEC_SUPPORT -+ /* -+ * If wchar_t is smaller than a long, it must be an int or a -+ * short. We prefer not to use a short anyway. -+ */ -+ if (sizeof(unsigned long) > sizeof(wchar_t)) -+ result = "int"; -+#endif -+ if (sizeof(unsigned long) > sizeof(unsigned int)) { -+ int n; -+ unsigned int x; -+ for (n = 0; n < WANT_BITS; n++) { -+ unsigned int y = (x >> n); -+ if (y != 1 || x == 0) { -+ x = 0; -+ break; -+ } -+ } -+ /* -+ * If x is nonzero, an int is big enough for the bits -+ * that we want. -+ */ -+ result = (x != 0) ? "int" : "long"; -+ } -+ fputs(result, fp); -+ fclose(fp); -+ } -+ exit(0); -+} -+ ], -+ [cf_cv_typeof_chtype=`cat cf_test.out`], -+ [cf_cv_typeof_chtype=long], -+ [cf_cv_typeof_chtype=long]) -+ rm -f cf_test.out -+ ]) -+AC_MSG_RESULT($cf_cv_typeof_chtype) -+ -+AC_SUBST(cf_cv_typeof_chtype) -+AC_DEFINE_UNQUOTED(TYPEOF_CHTYPE,$cf_cv_typeof_chtype) -+ -+cf_cv_1UL="1" -+test "$cf_cv_unsigned_literals" = yes && cf_cv_1UL="${cf_cv_1UL}U" -+test "$cf_cv_typeof_chtype" = long && cf_cv_1UL="${cf_cv_1UL}L" -+AC_SUBST(cf_cv_1UL) -+ -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_TYPE_SIGACTION version: 3 updated: 2000/08/12 23:18:52 -+dnl ----------------- -+dnl -+AC_DEFUN([CF_TYPE_SIGACTION], -+[ -+AC_MSG_CHECKING([for type sigaction_t]) -+AC_CACHE_VAL(cf_cv_type_sigaction,[ -+ AC_TRY_COMPILE([ -+#include ], -+ [sigaction_t x], -+ [cf_cv_type_sigaction=yes], -+ [cf_cv_type_sigaction=no])]) -+AC_MSG_RESULT($cf_cv_type_sigaction) -+test "$cf_cv_type_sigaction" = yes && AC_DEFINE(HAVE_TYPE_SIGACTION) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_UNSIGNED_LITERALS version: 2 updated: 1998/02/07 22:10:16 -+dnl -------------------- -+dnl Test if the compiler supports 'U' and 'L' suffixes. Only old compilers -+dnl won't, but they're still there. -+AC_DEFUN([CF_UNSIGNED_LITERALS], -+[ -+AC_MSG_CHECKING([if unsigned literals are legal]) -+AC_CACHE_VAL(cf_cv_unsigned_literals,[ -+ AC_TRY_COMPILE([],[long x = 1L + 1UL + 1U + 1], -+ [cf_cv_unsigned_literals=yes], -+ [cf_cv_unsigned_literals=no]) -+ ]) -+AC_MSG_RESULT($cf_cv_unsigned_literals) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_UPPER version: 5 updated: 2001/01/29 23:40:59 -+dnl -------- -+dnl Make an uppercase version of a variable -+dnl $1=uppercase($2) -+AC_DEFUN([CF_UPPER], -+[ -+$1=`echo "$2" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_VERBOSE version: 2 updated: 1997/09/05 10:45:14 -+dnl ---------- -+dnl Use AC_VERBOSE w/o the warnings -+AC_DEFUN([CF_VERBOSE], -+[test -n "$verbose" && echo " $1" 1>&AC_FD_MSG -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_WCHAR_TYPE version: 2 updated: 2004/01/17 19:18:20 -+dnl ------------- -+dnl Check if type wide-character type $1 is declared, and if so, which header -+dnl file is needed. The second parameter is used to set a shell variable when -+dnl the type is not found. The first parameter sets a shell variable for the -+dnl opposite sense. -+AC_DEFUN([CF_WCHAR_TYPE], -+[ -+# This is needed on Tru64 5.0 to declare $1 -+AC_CACHE_CHECK(if we must include wchar.h to declare $1,cf_cv_$1,[ -+AC_TRY_COMPILE([ -+#include -+#include -+#include -+#ifdef HAVE_LIBUTF8_H -+#include -+#endif], -+ [$1 state], -+ [cf_cv_$1=no], -+ [AC_TRY_COMPILE([ -+#include -+#include -+#include -+#include -+#ifdef HAVE_LIBUTF8_H -+#include -+#endif], -+ [$1 value], -+ [cf_cv_$1=yes], -+ [cf_cv_$1=unknown])])]) -+ -+if test "$cf_cv_$1" = yes ; then -+ AC_DEFINE(NEED_WCHAR_H) -+ NEED_WCHAR_H=1 -+fi -+ -+ifelse($2,,,[ -+# if we do not find $1 in either place, use substitution to provide a fallback. -+if test "$cf_cv_$1" = unknown ; then -+ $2=1 -+fi -+]) -+ifelse($3,,,[ -+# if we find $1 in either place, use substitution to provide a fallback. -+if test "$cf_cv_$1" != unknown ; then -+ $3=1 -+fi -+]) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_WITH_ABI_VERSION version: 1 updated: 2003/09/20 18:12:49 -+dnl ------------------- -+dnl Allow library's ABI to be overridden. Generally this happens when a -+dnl packager has incremented the ABI past that used in the original package, -+dnl and wishes to keep doing this. -+dnl -+dnl $1 is the package name, if any, to derive a corresponding {package}_ABI -+dnl symbol. -+AC_DEFUN([CF_WITH_ABI_VERSION],[ -+test -z "$cf_cv_abi_version" && cf_cv_abi_version=0 -+AC_ARG_WITH(abi-version, -+[ --with-abi-version=XXX override derived ABI version], -+[AC_MSG_WARN(overriding ABI version $cf_cv_abi_version to $withval) -+ cf_cv_abi_version=$withval]) -+ CF_NUMBER_SYNTAX($cf_cv_abi_version,ABI version) -+ifelse($1,,,[ -+$1_ABI=$cf_cv_abi_version -+]) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_WITH_DBMALLOC version: 2 updated: 2002/12/29 21:11:45 -+dnl ---------------- -+dnl Configure-option for dbmalloc -+AC_DEFUN([CF_WITH_DBMALLOC],[ -+AC_MSG_CHECKING(if you want to link with dbmalloc for testing) -+AC_ARG_WITH(dbmalloc, -+ [ --with-dbmalloc test: use Conor Cahill's dbmalloc library], -+ [with_dbmalloc=$withval], -+ [with_dbmalloc=no]) -+AC_MSG_RESULT($with_dbmalloc) -+if test $with_dbmalloc = yes ; then -+ AC_CHECK_LIB(dbmalloc,debug_malloc) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_WITH_DMALLOC version: 2 updated: 2002/12/29 21:11:45 -+dnl --------------- -+dnl Configure-option for dmalloc -+AC_DEFUN([CF_WITH_DMALLOC],[ -+AC_MSG_CHECKING(if you want to link with dmalloc for testing) -+AC_ARG_WITH(dmalloc, -+ [ --with-dmalloc test: use Gray Watson's dmalloc library], -+ [with_dmalloc=$withval], -+ [with_dmalloc=no]) -+AC_MSG_RESULT($with_dmalloc) -+if test $with_dmalloc = yes ; then -+ AC_CHECK_LIB(dmalloc,dmalloc_debug) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_WITH_LIBTOOL version: 9 updated: 2004/01/16 14:55:37 -+dnl --------------- -+dnl Provide a configure option to incorporate libtool. Define several useful -+dnl symbols for the makefile rules. -+dnl -+dnl The reference to AC_PROG_LIBTOOL does not normally work, since it uses -+dnl macros from libtool.m4 which is in the aclocal directory of automake. -+dnl Following is a simple script which turns on the AC_PROG_LIBTOOL macro. -+dnl But that still does not work properly since the macro is expanded outside -+dnl the CF_WITH_LIBTOOL macro: -+dnl -+dnl #!/bin/sh -+dnl ACLOCAL=`aclocal --print-ac-dir` -+dnl if test -z "$ACLOCAL" ; then -+dnl echo cannot find aclocal directory -+dnl exit 1 -+dnl elif test ! -f $ACLOCAL/libtool.m4 ; then -+dnl echo cannot find libtool.m4 file -+dnl exit 1 -+dnl fi -+dnl -+dnl LOCAL=aclocal.m4 -+dnl ORIG=aclocal.m4.orig -+dnl -+dnl trap "mv $ORIG $LOCAL" 0 1 2 5 15 -+dnl rm -f $ORIG -+dnl mv $LOCAL $ORIG -+dnl -+dnl # sed the LIBTOOL= assignment to omit the current directory? -+dnl sed -e 's/^LIBTOOL=.*/LIBTOOL=${LIBTOOL-libtool}/' $ACLOCAL/libtool.m4 >>$LOCAL -+dnl cat $ORIG >>$LOCAL -+dnl -+dnl autoconf-257 $* -+dnl -+AC_DEFUN([CF_WITH_LIBTOOL], -+[ -+ifdef([AC_PROG_LIBTOOL],,[ -+LIBTOOL= -+]) -+# common library maintenance symbols that are convenient for libtool scripts: -+LIB_CREATE='$(AR) -cr' -+LIB_OBJECT='$(OBJECTS)' -+LIB_SUFFIX=.a -+LIB_PREP="$RANLIB" -+ -+# symbols used to prop libtool up to enable it to determine what it should be -+# doing: -+LIB_CLEAN= -+LIB_COMPILE= -+LIB_LINK= -+LIB_INSTALL= -+LIB_UNINSTALL= -+ -+AC_MSG_CHECKING(if you want to build libraries with libtool) -+AC_ARG_WITH(libtool, -+ [ --with-libtool generate libraries with libtool], -+ [with_libtool=$withval], -+ [with_libtool=no]) -+AC_MSG_RESULT($with_libtool) -+if test "$with_libtool" != "no"; then -+ifdef([AC_PROG_LIBTOOL],[ -+ # missing_content_AC_PROG_LIBTOOL{{ -+ AC_PROG_LIBTOOL -+ # missing_content_AC_PROG_LIBTOOL}} -+],[ -+ if test "$with_libtool" != "yes" ; then -+ CF_PATH_SYNTAX(with_libtool) -+ LIBTOOL=$with_libtool -+ else -+ AC_PATH_PROG(LIBTOOL,libtool) -+ fi -+ if test -z "$LIBTOOL" ; then -+ AC_MSG_ERROR(Cannot find libtool) -+ fi -+])dnl -+ LIB_CREATE='$(LIBTOOL) --mode=link $(CC) -rpath $(DESTDIR)$(libdir) -version-info `cut -f1 $(srcdir)/VERSION` -o' -+ LIB_OBJECT='$(OBJECTS:.o=.lo)' -+ LIB_SUFFIX=.la -+ LIB_CLEAN='$(LIBTOOL) --mode=clean' -+ LIB_COMPILE='$(LIBTOOL) --mode=compile' -+ LIB_LINK='$(LIBTOOL) --mode=link' -+ LIB_INSTALL='$(LIBTOOL) --mode=install' -+ LIB_UNINSTALL='$(LIBTOOL) --mode=uninstall' -+ LIB_PREP=: -+ -+ # Show the version of libtool -+ AC_MSG_CHECKING(version of libtool) -+ -+ # Save the version in a cache variable - this is not entirely a good -+ # thing, but the version string from libtool is very ugly, and for -+ # bug reports it might be useful to have the original string. -+ cf_cv_libtool_version=`$LIBTOOL --version 2>&1 | sed -e '2,$d' -e 's/([[^)]]*)//g' -e 's/^[[^1-9]]*//' -e 's/[[^0-9.]].*//'` -+ AC_MSG_RESULT($cf_cv_libtool_version) -+ if test -z "$cf_cv_libtool_version" ; then -+ AC_MSG_ERROR(This is not libtool) -+ fi -+ -+ # special hack to add --tag option for C++ compiler -+ case $cf_cv_libtool_version in -+ 1.[[5-9]]*|[[2-9]]*) -+ LIBTOOL_CXX="$LIBTOOL --tag=CXX" -+ ;; -+ *) -+ LIBTOOL_CXX="$LIBTOOL" -+ ;; -+ esac -+else -+ LIBTOOL="" -+ LIBTOOL_CXX="" -+fi -+ -+test -z "$LIBTOOL" && ECHO_LT= -+ -+AC_SUBST(LIBTOOL) -+AC_SUBST(LIBTOOL_CXX) -+ -+AC_SUBST(LIB_CREATE) -+AC_SUBST(LIB_OBJECT) -+AC_SUBST(LIB_SUFFIX) -+AC_SUBST(LIB_PREP) -+ -+AC_SUBST(LIB_CLEAN) -+AC_SUBST(LIB_COMPILE) -+AC_SUBST(LIB_LINK) -+AC_SUBST(LIB_INSTALL) -+AC_SUBST(LIB_UNINSTALL) -+ -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_WITH_PATH version: 6 updated: 1998/10/11 00:40:17 -+dnl ------------ -+dnl Wrapper for AC_ARG_WITH to ensure that user supplies a pathname, not just -+dnl defaulting to yes/no. -+dnl -+dnl $1 = option name -+dnl $2 = help-text -+dnl $3 = environment variable to set -+dnl $4 = default value, shown in the help-message, must be a constant -+dnl $5 = default value, if it's an expression & cannot be in the help-message -+dnl -+AC_DEFUN([CF_WITH_PATH], -+[AC_ARG_WITH($1,[$2 ](default: ifelse($4,,empty,$4)),, -+ifelse($4,,[withval="${$3}"],[withval="${$3-ifelse($5,,$4,$5)}"]))dnl -+CF_PATH_SYNTAX(withval) -+eval $3="$withval" -+AC_SUBST($3)dnl -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_WITH_PATHLIST version: 5 updated: 2001/12/10 01:28:30 -+dnl ---------------- -+dnl Process an option specifying a list of colon-separated paths. -+dnl -+dnl $1 = option name -+dnl $2 = help-text -+dnl $3 = environment variable to set -+dnl $4 = default value, shown in the help-message, must be a constant -+dnl $5 = default value, if it's an expression & cannot be in the help-message -+dnl $6 = flag to tell if we want to define or substitute -+dnl -+AC_DEFUN([CF_WITH_PATHLIST],[ -+AC_REQUIRE([CF_PATHSEP]) -+AC_ARG_WITH($1,[$2 ](default: ifelse($4,,empty,$4)),, -+ifelse($4,,[withval=${$3}],[withval=${$3-ifelse($5,,$4,$5)}]))dnl -+ -+IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${PATHSEP}" -+cf_dst_path= -+for cf_src_path in $withval -+do -+ CF_PATH_SYNTAX(cf_src_path) -+ test -n "$cf_dst_path" && cf_dst_path="${cf_dst_path}:" -+ cf_dst_path="${cf_dst_path}${cf_src_path}" -+done -+IFS="$ac_save_ifs" -+ -+ifelse($6,define,[ -+# Strip single quotes from the value, e.g., when it was supplied as a literal -+# for $4 or $5. -+case $cf_dst_path in #(vi -+\'*) -+ cf_dst_path=`echo $cf_dst_path |sed -e s/\'// -e s/\'\$//` -+ ;; -+esac -+cf_dst_path=`echo "$cf_dst_path" | sed -e 's/\\\\/\\\\\\\\/g'` -+]) -+ -+eval '$3="$cf_dst_path"' -+AC_SUBST($3)dnl -+ -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_WITH_REL_VERSION version: 1 updated: 2003/09/20 18:12:49 -+dnl ------------------- -+dnl Allow library's release-version to be overridden. Generally this happens when a -+dnl packager has incremented the release-version past that used in the original package, -+dnl and wishes to keep doing this. -+dnl -+dnl $1 is the package name, if any, to derive corresponding {package}_MAJOR -+dnl and {package}_MINOR symbols -+dnl symbol. -+AC_DEFUN([CF_WITH_REL_VERSION],[ -+test -z "$cf_cv_rel_version" && cf_cv_rel_version=0.0 -+AC_ARG_WITH(rel-version, -+[ --with-rel-version=XXX override derived release version], -+[AC_MSG_WARN(overriding release version $cf_cv_rel_version to $withval) -+ cf_cv_rel_version=$withval]) -+ifelse($1,,[ -+ CF_NUMBER_SYNTAX($cf_cv_rel_version,Release version) -+],[ -+ $1_MAJOR=`echo "$cf_cv_rel_version" | sed -e 's/\..*//'` -+ $1_MINOR=`echo "$cf_cv_rel_version" | sed -e 's/^[[^.]]*//' -e 's/^\.//' -e 's/\..*//'` -+ CF_NUMBER_SYNTAX([$]$1_MAJOR,Release major-version) -+ CF_NUMBER_SYNTAX([$]$1_MINOR,Release minor-version) -+]) -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_WITH_SYSMOUSE version: 2 updated: 2003/03/22 19:13:43 -+dnl ---------------- -+dnl If we can compile with sysmouse, make it available unless it is not wanted. -+AC_DEFUN([CF_WITH_SYSMOUSE],[ -+# not everyone has "test -c" -+if test -c /dev/sysmouse 2>/dev/null ; then -+AC_MSG_CHECKING(if you want to use sysmouse) -+AC_ARG_WITH(sysmouse, -+ [ --with-sysmouse use sysmouse (FreeBSD console)], -+ [cf_with_sysmouse=$withval], -+ [cf_with_sysmouse=maybe]) -+ if test "$cf_with_sysmouse" != no ; then -+ AC_TRY_COMPILE([ -+#include -+#if (__FreeBSD_version >= 400017) -+#include -+#include -+#else -+#include -+#endif -+],[ -+ struct mouse_info the_mouse; -+ ioctl(0, CONS_MOUSECTL, &the_mouse); -+],[cf_with_sysmouse=yes],[cf_with_sysmouse=no]) -+ fi -+AC_MSG_RESULT($cf_with_sysmouse) -+test "$cf_with_sysmouse" = yes && AC_DEFINE(USE_SYSMOUSE) -+fi -+])dnl -+dnl --------------------------------------------------------------------------- -+dnl CF_XOPEN_SOURCE version: 11 updated: 2004/01/26 20:58:41 -+dnl --------------- -+dnl Try to get _XOPEN_SOURCE defined properly that we can use POSIX functions, -+dnl or adapt to the vendor's definitions to get equivalent functionality. -+AC_DEFUN([CF_XOPEN_SOURCE],[ -+case $host_os in #(vi -+freebsd*) #(vi -+ CPPFLAGS="$CPPFLAGS -D_BSD_TYPES -D__BSD_VISIBLE -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600" -+ ;; -+hpux*) #(vi -+ CPPFLAGS="$CPPFLAGS -D_HPUX_SOURCE" -+ ;; -+irix6.*) #(vi -+ CPPFLAGS="$CPPFLAGS -D_SGI_SOURCE" -+ ;; -+linux*) #(vi -+ CF_GNU_SOURCE -+ ;; -+mirbsd*) #(vi -+ # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks -+ ;; -+netbsd*) #(vi -+ # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw -+ ;; -+openbsd*) #(vi -+ # setting _XOPEN_SOURCE breaks xterm on OpenBSD 2.8, is not needed for ncursesw -+ ;; -+osf[[45]]*) #(vi -+ CPPFLAGS="$CPPFLAGS -D_OSF_SOURCE" -+ ;; -+sco*) #(vi -+ # setting _XOPEN_SOURCE breaks Lynx on SCO Unix / OpenServer -+ ;; -+solaris*) #(vi -+ CPPFLAGS="$CPPFLAGS -D__EXTENSIONS__" -+ ;; -+*) -+ AC_CACHE_CHECK(if we should define _XOPEN_SOURCE,cf_cv_xopen_source,[ -+ AC_TRY_COMPILE([#include ],[ -+#ifndef _XOPEN_SOURCE -+make an error -+#endif], -+ [cf_cv_xopen_source=no], -+ [cf_save="$CPPFLAGS" -+ CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=500" -+ AC_TRY_COMPILE([#include ],[ -+#ifdef _XOPEN_SOURCE -+make an error -+#endif], -+ [cf_cv_xopen_source=no], -+ [cf_cv_xopen_source=yes]) -+ CPPFLAGS="$cf_save" -+ ]) -+]) -+test "$cf_cv_xopen_source" = yes && CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=500" -+ -+ # FreeBSD 5.x headers demand this... -+ AC_CACHE_CHECK(if we should define _POSIX_C_SOURCE,cf_cv_xopen_source,[ -+ AC_TRY_COMPILE([#include ],[ -+#ifndef _POSIX_C_SOURCE -+make an error -+#endif], -+ [cf_cv_xopen_source=no], -+ [cf_save="$CPPFLAGS" -+ CPPFLAGS="$CPPFLAGS -D_POSIX_C_SOURCE" -+ AC_TRY_COMPILE([#include ],[ -+#ifdef _POSIX_C_SOURCE -+make an error -+#endif], -+ [cf_cv_xopen_source=no], -+ [cf_cv_xopen_source=yes]) -+ CPPFLAGS="$cf_save" -+ ]) -+]) -+test "$cf_cv_xopen_source" = yes && CPPFLAGS="$CPPFLAGS -D_POSIX_C_SOURCE" -+ ;; -+esac -+]) ---- /dev/null -+++ ncurses-5.4/m4/templates.m4 -@@ -0,0 +1,78 @@ -+AH_TEMPLATE([BROKEN_LINKER], [too lazy to enter descriptions]) -+AH_TEMPLATE([BSD_TPUTS], [too lazy to enter descriptions]) -+AH_TEMPLATE([CC_HAS_INLINE_FUNCS], [too lazy to enter descriptions]) -+AH_TEMPLATE([CC_HAS_PROTOS], [too lazy to enter descriptions]) -+AH_TEMPLATE([CPP_HAS_PARAM_INIT], [too lazy to enter descriptions]) -+AH_TEMPLATE([CPP_HAS_VSCAN_FUNC], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_BIG_CORE], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_BSD_CGETENT], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_BUILTIN_H], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_CURSES_VERSION], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_GETTIMEOFDAY], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_GPP_BUILTIN_H], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_GXX_BUILTIN_H], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_HAS_KEY], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_ISASCII], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_LIBGPM], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_LIBUTF8_H], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_MKSTEMP], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_NC_ALLOC_H], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_REGEXPR_H_FUNCS], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_REGEXP_H_FUNCS], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_REGEX_H_FUNCS], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_RESIZETERM], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_RESIZE_TERM], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_SIZECHANGE], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_SLK_COLOR], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_SYS_TIME_SELECT], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_TCGETATTR], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_TYPE_SIGACTION], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_USE_DEFAULT_COLORS], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_VFSCANF], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_VSSCANF], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_WORKING_POLL], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE_WRESIZE], [too lazy to enter descriptions]) -+AH_TEMPLATE([HAVE__DOSCAN], [too lazy to enter descriptions]) -+AH_TEMPLATE([MIXEDCASE_FILENAMES], [too lazy to enter descriptions]) -+AH_TEMPLATE([NCURSES_EXPANDED], [too lazy to enter descriptions]) -+AH_TEMPLATE([NCURSES_EXT_FUNCS], [too lazy to enter descriptions]) -+AH_TEMPLATE([NCURSES_NOMACROS], [too lazy to enter descriptions]) -+AH_TEMPLATE([NCURSES_NO_PADDING], [too lazy to enter descriptions]) -+AH_TEMPLATE([NCURSES_PATHSEP], [too lazy to enter descriptions]) -+AH_TEMPLATE([NCURSES_VERSION_STRING], [too lazy to enter descriptions]) -+AH_TEMPLATE([NDEBUG], [too lazy to enter descriptions]) -+AH_TEMPLATE([NEED_WCHAR_H], [too lazy to enter descriptions]) -+AH_TEMPLATE([NO_LEAKS], [too lazy to enter descriptions]) -+AH_TEMPLATE([PROG_EXT], [too lazy to enter descriptions]) -+AH_TEMPLATE([PURE_TERMINFO], [too lazy to enter descriptions]) -+AH_TEMPLATE([SVR4_ACTION], [too lazy to enter descriptions]) -+AH_TEMPLATE([SVR4_TERMIO], [too lazy to enter descriptions]) -+AH_TEMPLATE([SYSTEM_NAME], [too lazy to enter descriptions]) -+AH_TEMPLATE([TERMINFO], [too lazy to enter descriptions]) -+AH_TEMPLATE([TERMINFO_DIRS], [too lazy to enter descriptions]) -+AH_TEMPLATE([TERMPATH], [too lazy to enter descriptions]) -+AH_TEMPLATE([TYPEOF_CHTYPE], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_ASSUMED_COLOR], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_COLORFGBG], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_DATABASE], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_GETCAP], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_GETCAP_CACHE], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_HARD_TABS], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_HASHMAP], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_HOME_TERMINFO], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_LINKS], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_MY_MEMMOVE], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_OK_BCOPY], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_RCS_IDS], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_ROOT_ENVIRON], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_SAFE_SPRINTF], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_SCROLL_HINTS], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_SIGWINCH], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_STDIO_VSCAN], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_STRSTREAM_VSCAN], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_STRSTREAM_VSCAN_CAST], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_SYMLINKS], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_SYSMOUSE], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_TERMCAP], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_WIDEC_SUPPORT], [too lazy to enter descriptions]) -+AH_TEMPLATE([USE_XMC_SUPPORT], [too lazy to enter descriptions]) diff --git a/meta/packages/ncurses/ncurses_5.4.bb b/meta/packages/ncurses/ncurses_5.4.bb deleted file mode 100644 index e69c1c0673..0000000000 --- a/meta/packages/ncurses/ncurses_5.4.bb +++ /dev/null @@ -1,8 +0,0 @@ -PR = "r14" - -SRC_URI = "${GNU_MIRROR}/ncurses/ncurses-${PV}.tar.gz \ - file://makefile_tweak.patch;patch=1 \ - file://visibility.patch;patch=1" -S = "${WORKDIR}/ncurses-${PV}" - -require ncurses.inc diff --git a/meta/packages/neon/neon-0.29.3/pkgconfig.patch b/meta/packages/neon/neon-0.29.3/pkgconfig.patch deleted file mode 100644 index 6256d9ab2b..0000000000 --- a/meta/packages/neon/neon-0.29.3/pkgconfig.patch +++ /dev/null @@ -1,16 +0,0 @@ ---- - neon.pc.in | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- neon-0.28.1.orig/neon.pc.in -+++ neon-0.28.1/neon.pc.in -@@ -4,8 +4,8 @@ libdir=@libdir@ - includedir=@includedir@ - - Name: neon - Description: HTTP/WebDAV client library - Version: @NEON_VERSION@ --Libs.private: @NEON_LIBS@ -+Libs.private: -L${libdir} -lz -lgcrypt -lgpg-error -lexpat -lgnutls - Libs: -L${libdir} -lneon @NEON_PC_LIBS@ - Cflags: -I${includedir}/neon @NEON_CFLAGS@ diff --git a/meta/packages/neon/neon_0.29.3.bb b/meta/packages/neon/neon_0.29.3.bb deleted file mode 100644 index bb18893f9e..0000000000 --- a/meta/packages/neon/neon_0.29.3.bb +++ /dev/null @@ -1,16 +0,0 @@ -DESCRIPTION = "neon is an HTTP and WebDAV client library, with a C interface." -HOMEPAGE = "http://www.webdav.org/neon/" -SECTION = "libs" -LICENSE = "LGPLv2+" -LIC_FILES_CHKSUM = "file://src/COPYING.LIB;md5=f30a9716ef3762e3467a2f62bf790f0a \ - file://src/ne_utils.h;beginline=1;endline=20;md5=2caca609538eddaa6f6adf120a218037" -DEPENDS = "zlib libxml2 expat time gnutls" - -PR = "r0" - -SRC_URI = "http://www.webdav.org/${PN}/${P}.tar.gz \ - file://pkgconfig.patch;patch=1" - -inherit autotools binconfig lib_package pkgconfig - -EXTRA_OECONF = "--with-ssl=gnutls --with-libxml2 --with-expat --enable-shared" diff --git a/meta/packages/network-suspend-scripts/network-suspend-scripts.bb b/meta/packages/network-suspend-scripts/network-suspend-scripts.bb deleted file mode 100644 index dc22ed85f6..0000000000 --- a/meta/packages/network-suspend-scripts/network-suspend-scripts.bb +++ /dev/null @@ -1,22 +0,0 @@ -DESCRIPTION = "Network suspend/resume scripts" -SECTION = "base" -LICENSE = "GPLv2" -PV = "1.1" -PR = "r2" - -SRC_URI = "file://ifupdown \ - file://usbnet" - -do_install() { - install -d ${D}${sysconfdir}/apm/scripts.d - install -m 0755 ${WORKDIR}/ifupdown ${D}${sysconfdir}/apm/scripts.d - install -m 0755 ${WORKDIR}/usbnet ${D}${sysconfdir}/apm/scripts.d - install -d ${D}${sysconfdir}/apm/suspend.d - ln -s ../scripts.d/ifupdown ${D}${sysconfdir}/apm/suspend.d/05ifupdown - ln -s ../scripts.d/usbnet ${D}${sysconfdir}/apm/suspend.d/10usbnet - install -d ${D}${sysconfdir}/apm/resume.d - ln -sf ../scripts.d/ifupdown ${D}${sysconfdir}/apm/resume.d/30ifupdown - ln -sf ../scripts.d/usbnet ${D}${sysconfdir}/apm/resume.d/20usbnet -} - -FILES = "${sysconfdir}/apm" diff --git a/meta/packages/network-suspend-scripts/network-suspend-scripts/ifupdown b/meta/packages/network-suspend-scripts/network-suspend-scripts/ifupdown deleted file mode 100644 index d458da6866..0000000000 --- a/meta/packages/network-suspend-scripts/network-suspend-scripts/ifupdown +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/sh -# Unloads/loads all interface that are up at time of suspend - -if [ "$1" = suspend ]; then - rm -f /var/run/ifstate-suspend - rm -f /var/run/ifstate-old - cp /var/run/ifstate /var/run/ifstate-old - cat /var/run/ifstate-old | ( - IFS="=" - while read IFACE LOGICAL; do - ifdown $IFACE - echo "$IFACE=$LOGICAL" >>/var/run/ifstate-suspend - done - rm -f /var/run/ifstate-old - ) -elif [ "$1" = resume ] && [ "$2" != standby ] && [ -f /var/run/ifstate-suspend ]; then - cat /var/run/ifstate-suspend | ( - while read LINE; do - ifup $LINE - done - ) - rm -f /var/run/ifstate-suspend -fi - -: exit 0 - diff --git a/meta/packages/network-suspend-scripts/network-suspend-scripts/usbnet b/meta/packages/network-suspend-scripts/network-suspend-scripts/usbnet deleted file mode 100644 index 3731f6339f..0000000000 --- a/meta/packages/network-suspend-scripts/network-suspend-scripts/usbnet +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/sh -# Unloads/loads usb-eth so it always works - -. /etc/default/usbd - -if [ "$1" = suspend ]; then - rmmod usb-eth - rmmod sa1100usb_core -elif [ "$1" = resume ] && [ "$2" != standby ]; then - modprobe usb-eth - modprobe -r $usbdmodule - modprobe $usbdmodule -fi - -: exit 0 - diff --git a/meta/packages/networkmanager/files/70NetworkManagerApplet.shbg b/meta/packages/networkmanager/files/70NetworkManagerApplet.shbg deleted file mode 100644 index 8858b3e7c2..0000000000 --- a/meta/packages/networkmanager/files/70NetworkManagerApplet.shbg +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/sh -# Wait for the desktop to say its finished loading -dbus-wait org.matchbox_project.desktop Loaded -exec /usr/bin/nm-applet diff --git a/meta/packages/networkmanager/files/99_networkmanager b/meta/packages/networkmanager/files/99_networkmanager deleted file mode 100644 index 20cbcc1bca..0000000000 --- a/meta/packages/networkmanager/files/99_networkmanager +++ /dev/null @@ -1 +0,0 @@ -d root root 0700 /var/run/NetworkManager none diff --git a/meta/packages/networkmanager/files/NetworkManager b/meta/packages/networkmanager/files/NetworkManager deleted file mode 100644 index 4522e0107b..0000000000 --- a/meta/packages/networkmanager/files/NetworkManager +++ /dev/null @@ -1,43 +0,0 @@ -#!/bin/sh -# -### BEGIN INIT INFO -# Provides: NetworkManager -# Required-Start: $remote_fs dbus hal -# Required-Stop: $remote_fs dbus hal -# Should-Start: $syslog -# Should-Stop: $syslog -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 -# Short-Description: network connection manager -# Description: Daemon for automatically switching network -# connections to the best available connection. -### END INIT INFO - -. /etc/profile - -case $1 in - 'start') - echo -n "Starting NetworkManager daemon: NetworkManager" - /usr/sbin/NetworkManager - /usr/sbin/NetworkManagerDispatcher - /usr/sbin/wpa_supplicant -u & - echo "." - ;; - - 'stop') - echo -n "Stopping NetworkManager daemon: NetworkManager" - kill `ps |grep /usr/sbin/NetworkManagerDispatcher | grep -v grep | cut "-d " -f2` - kill `ps |grep /usr/sbin/NetworkManager | grep -v grep | cut "-d " -f2` - kill `ps |grep /usr/sbin/wpa_supplicant | grep -v grep | cut "-d " -f2` - echo "." - ;; - - 'restart') - $0 stop - $0 start - ;; - - *) - echo "Usage: $0 { start | stop | restart }" - ;; -esac diff --git a/meta/packages/networkmanager/files/allow-disabling.patch b/meta/packages/networkmanager/files/allow-disabling.patch deleted file mode 100644 index 10730e9fe5..0000000000 --- a/meta/packages/networkmanager/files/allow-disabling.patch +++ /dev/null @@ -1,45 +0,0 @@ -Allow interfaces to be ignored by networkmanager by creation of a -/etc/network/nm-disabled-INTERFACENAME file. - -RP - 16/7/2008 - -Index: trunk/src/backends/NetworkManagerDebian.c -=================================================================== ---- trunk.orig/src/backends/NetworkManagerDebian.c 2008-07-15 19:23:11.000000000 +0100 -+++ trunk/src/backends/NetworkManagerDebian.c 2008-07-15 19:37:05.000000000 +0100 -@@ -29,6 +29,7 @@ - - #include - #include -+#include - #include - #include - #include "NetworkManagerGeneric.h" -@@ -374,12 +375,25 @@ - /* - * nm_system_device_get_disabled - * -- * Return whether the distro-specific system config tells us to use -- * dhcp for this device. -+ * Return whether the distro-specific system config tells us to interact -+ * with this device. - * - */ - gboolean nm_system_device_get_disabled (NMDevice *dev) - { -+ struct stat statbuf; -+ gchar *filepath; -+ -+ g_return_val_if_fail (dev != NULL, FALSE); -+ -+ filepath = g_strdup_printf (SYSCONFDIR"/network/nm-disabled-%s", nm_device_get_iface (dev)); -+ -+ if (stat(filepath, &statbuf) == 0) { -+ g_free(filepath); -+ return TRUE; -+ } -+ -+ g_free(filepath); - return FALSE; - } - diff --git a/meta/packages/networkmanager/files/applet-no-animation.patch b/meta/packages/networkmanager/files/applet-no-animation.patch deleted file mode 100644 index d437fd0fc9..0000000000 --- a/meta/packages/networkmanager/files/applet-no-animation.patch +++ /dev/null @@ -1,234 +0,0 @@ -Index: trunk/src/applet.c -=================================================================== ---- trunk.orig/src/applet.c 2008-02-06 20:30:04.000000000 +0000 -+++ trunk/src/applet.c 2008-02-06 20:46:59.000000000 +0000 -@@ -111,8 +111,6 @@ - - static void nma_init (NMApplet *applet) - { -- applet->animation_id = 0; -- applet->animation_step = 0; - applet->passphrase_dialog = NULL; - applet->icon_theme = NULL; - #ifdef ENABLE_NOTIFY -@@ -1006,20 +1004,6 @@ - } - } - --static gboolean --vpn_animation_timeout (gpointer data) --{ -- NMApplet *applet = NM_APPLET (data); -- -- foo_set_icon (applet, applet->vpn_connecting_icons[applet->animation_step], ICON_LAYER_VPN); -- -- applet->animation_step++; -- if (applet->animation_step >= NUM_VPN_CONNECTING_FRAMES) -- applet->animation_step = 0; -- -- return TRUE; --} -- - static void - vpn_connection_state_changed (NMVPNConnection *connection, - NMVPNConnectionState state, -@@ -1030,10 +1014,6 @@ - - switch (state) { - case NM_VPN_CONNECTION_STATE_ACTIVATED: -- if (applet->animation_id) { -- g_source_remove (applet->animation_id); -- applet->animation_id = 0; -- } - foo_set_icon (applet, applet->vpn_lock_icon, ICON_LAYER_VPN); - // vpn_connection_info_set_last_attempt_success (info, TRUE); - break; -@@ -1041,10 +1021,7 @@ - case NM_VPN_CONNECTION_STATE_NEED_AUTH: - case NM_VPN_CONNECTION_STATE_CONNECT: - case NM_VPN_CONNECTION_STATE_IP_CONFIG_GET: -- if (applet->animation_id == 0) { -- applet->animation_step = 0; -- applet->animation_id = g_timeout_add (100, vpn_animation_timeout, applet); -- } -+ foo_set_icon (applet, applet->network_connecting_icon, ICON_LAYER_VPN); - break; - case NM_VPN_CONNECTION_STATE_FAILED: - // vpn_connection_info_set_last_attempt_success (info, FALSE); -@@ -1053,10 +1030,6 @@ - g_hash_table_remove (applet->vpn_connections, nm_vpn_connection_get_name (connection)); - /* Fall through */ - default: -- if (applet->animation_id) { -- g_source_remove (applet->animation_id); -- applet->animation_id = 0; -- } - foo_set_icon (applet, NULL, ICON_LAYER_VPN); - break; - } -@@ -2295,45 +2268,6 @@ - } FooAnimationTimeoutInfo; - - static void --foo_animation_timeout_info_destroy (gpointer data) --{ -- g_slice_free (FooAnimationTimeoutInfo, data); --} -- --static gboolean --foo_animation_timeout (gpointer data) --{ -- FooAnimationTimeoutInfo *info = (FooAnimationTimeoutInfo *) data; -- NMApplet *applet = info->applet; -- int stage = -1; -- -- switch (info->state) { -- case NM_DEVICE_STATE_PREPARE: -- stage = 0; -- break; -- case NM_DEVICE_STATE_CONFIG: -- stage = 1; -- break; -- case NM_DEVICE_STATE_IP_CONFIG: -- stage = 2; -- break; -- default: -- break; -- } -- -- if (stage >= 0) -- foo_set_icon (applet, -- applet->network_connecting_icons[stage][applet->animation_step], -- ICON_LAYER_LINK); -- -- applet->animation_step++; -- if (applet->animation_step >= NUM_CONNECTING_FRAMES) -- applet->animation_step = 0; -- -- return TRUE; --} -- --static void - foo_common_state_change (NMDevice *device, NMDeviceState state, NMApplet *applet) - { - FooAnimationTimeoutInfo *info; -@@ -2345,11 +2279,7 @@ - info = g_slice_new (FooAnimationTimeoutInfo); - info->applet = applet; - info->state = state; -- applet->animation_step = 0; -- applet->animation_id = g_timeout_add_full (G_PRIORITY_DEFAULT_IDLE, -- 100, foo_animation_timeout, -- info, -- foo_animation_timeout_info_destroy); -+ foo_set_icon (applet, applet->network_connecting_icon, ICON_LAYER_LINK); - break; - case NM_DEVICE_STATE_ACTIVATED: - break; -@@ -2602,12 +2532,6 @@ - NMApplet *applet = NM_APPLET (user_data); - gboolean handled = FALSE; - -- applet->animation_step = 0; -- if (applet->animation_id) { -- g_source_remove (applet->animation_id); -- applet->animation_id = 0; -- } -- - clear_active_connections (applet); - applet->active_connections = nm_client_get_active_connections (applet->nm_client); - -@@ -3166,17 +3090,8 @@ - if (applet->wireless_100_icon) - g_object_unref (applet->wireless_100_icon); - -- for (i = 0; i < NUM_CONNECTING_STAGES; i++) { -- int j; -- -- for (j = 0; j < NUM_CONNECTING_FRAMES; j++) -- if (applet->network_connecting_icons[i][j]) -- g_object_unref (applet->network_connecting_icons[i][j]); -- } -- -- for (i = 0; i < NUM_VPN_CONNECTING_FRAMES; i++) -- if (applet->vpn_connecting_icons[i]) -- g_object_unref (applet->vpn_connecting_icons[i]); -+ if (applet->network_connecting_icon) -+ g_object_unref (applet->network_connecting_icon); - - nma_icons_zero (applet); - } -@@ -3196,16 +3111,7 @@ - applet->wireless_75_icon = NULL; - applet->wireless_100_icon = NULL; - -- for (i = 0; i < NUM_CONNECTING_STAGES; i++) -- { -- int j; -- -- for (j = 0; j < NUM_CONNECTING_FRAMES; j++) -- applet->network_connecting_icons[i][j] = NULL; -- } -- -- for (i = 0; i < NUM_VPN_CONNECTING_FRAMES; i++) -- applet->vpn_connecting_icons[i] = NULL; -+ applet->network_connecting_icon = NULL; - - applet->icons_loaded = FALSE; - } -@@ -3257,28 +3163,7 @@ - ICON_LOAD(applet->wireless_75_icon, "nm-signal-75"); - ICON_LOAD(applet->wireless_100_icon, "nm-signal-100"); - -- for (i = 0; i < NUM_CONNECTING_STAGES; i++) -- { -- int j; -- -- for (j = 0; j < NUM_CONNECTING_FRAMES; j++) -- { -- char *name; -- -- name = g_strdup_printf ("nm-stage%02d-connecting%02d", i+1, j+1); -- ICON_LOAD(applet->network_connecting_icons[i][j], name); -- g_free (name); -- } -- } -- -- for (i = 0; i < NUM_VPN_CONNECTING_FRAMES; i++) -- { -- char *name; -- -- name = g_strdup_printf ("nm-vpn-connecting%02d", i+1); -- ICON_LOAD(applet->vpn_connecting_icons[i], name); -- g_free (name); -- } -+ ICON_LOAD(applet->network_connecting_icon, "nm-connecting"); - - success = TRUE; - -Index: trunk/src/applet.h -=================================================================== ---- trunk.orig/src/applet.h 2008-02-06 20:30:06.000000000 +0000 -+++ trunk/src/applet.h 2008-02-06 20:46:05.000000000 +0000 -@@ -111,20 +111,12 @@ - GdkPixbuf * wireless_50_icon; - GdkPixbuf * wireless_75_icon; - GdkPixbuf * wireless_100_icon; --#define NUM_CONNECTING_STAGES 3 --#define NUM_CONNECTING_FRAMES 11 -- GdkPixbuf * network_connecting_icons[NUM_CONNECTING_STAGES][NUM_CONNECTING_FRAMES]; --#define NUM_VPN_CONNECTING_FRAMES 14 -- GdkPixbuf * vpn_connecting_icons[NUM_VPN_CONNECTING_FRAMES]; -+ GdkPixbuf * network_connecting_icon; - GdkPixbuf * vpn_lock_icon; - - /* Active status icon pixbufs */ - GdkPixbuf * icon_layers[ICON_LAYER_MAX + 1]; - -- /* Animation stuff */ -- int animation_step; -- guint animation_id; -- - /* Direct UI elements */ - #ifdef HAVE_STATUS_ICON - GtkStatusIcon * status_icon; diff --git a/meta/packages/networkmanager/files/applet-no-gnome.diff b/meta/packages/networkmanager/files/applet-no-gnome.diff deleted file mode 100644 index e098e8c9ed..0000000000 --- a/meta/packages/networkmanager/files/applet-no-gnome.diff +++ /dev/null @@ -1,59 +0,0 @@ ---- - configure.ac | 3 +-- - src/main.c | 8 ++++++++ - 2 files changed, 9 insertions(+), 2 deletions(-) - -Index: src/main.c -=================================================================== ---- src/main.c.orig 2007-09-26 10:39:16.000000000 +0100 -+++ src/main.c 2007-09-26 10:39:37.000000000 +0100 -@@ -27,7 +27,9 @@ - - #include - #include -+#if 0 - #include -+#endif - #include - - #include "applet.h" -@@ -36,11 +38,15 @@ - int main (int argc, char *argv[]) - { - NMApplet * applet; -+#if 0 - GnomeProgram * program; - - program = gnome_program_init ("nm-applet", VERSION, LIBGNOMEUI_MODULE, - argc, argv, - GNOME_PARAM_NONE, GNOME_PARAM_NONE); -+#else -+ gtk_init (&argc, &argv); -+#endif - - bindtextdomain (GETTEXT_PACKAGE, GNOMELOCALEDIR); - bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); -@@ -53,7 +59,9 @@ int main (int argc, char *argv[]) - gtk_main (); - - g_object_unref (applet); -+#if 0 - g_object_unref (program); -+#endif - - exit (0); - } -Index: configure.ac -=================================================================== ---- configure.ac.orig 2007-09-26 10:39:30.000000000 +0100 -+++ configure.ac 2007-09-26 10:39:37.000000000 +0100 -@@ -65,8 +65,7 @@ PKG_CHECK_MODULES(NMA, - gtk+-2.0 >= 2.6 - libglade-2.0 - gconf-2.0 -- gnome-keyring-1 -- libgnomeui-2.0]) -+ gnome-keyring-1]) - - ##### Find out the version of DBUS we're using - dbus_version=`pkg-config --modversion dbus-1` diff --git a/meta/packages/networkmanager/files/libnlfix.patch b/meta/packages/networkmanager/files/libnlfix.patch deleted file mode 100644 index 69f4922ea0..0000000000 --- a/meta/packages/networkmanager/files/libnlfix.patch +++ /dev/null @@ -1,29 +0,0 @@ -Index: trunk/src/nm-netlink.c -=================================================================== ---- trunk.orig/src/nm-netlink.c 2007-09-25 22:37:50.000000000 +0100 -+++ trunk/src/nm-netlink.c 2009-05-16 12:44:26.000000000 +0100 -@@ -52,16 +52,20 @@ - struct nl_handle * - nm_netlink_get_default_handle (void) - { -+ struct nl_cb *cb; -+ - if (def_nl_handle) - return def_nl_handle; - -- def_nl_handle = nl_handle_alloc_nondefault (NL_CB_VERBOSE); -- g_assert (def_nl_handle); -+ cb = nl_cb_alloc(NL_CB_VERBOSE); -+ def_nl_handle = nl_handle_alloc_cb (cb); -+ if (!def_nl_handle) { -+ nm_warning ("couldn't allocate netlink handle."); -+ return NULL; -+ } - -- nl_handle_set_pid (def_nl_handle, (pthread_self () << 16 | getpid ())); - if (nl_connect (def_nl_handle, NETLINK_ROUTE) < 0) { - nm_error ("couldn't connect to netlink: %s", nl_geterror ()); -- nl_handle_destroy (def_nl_handle); - return NULL; - } - diff --git a/meta/packages/networkmanager/files/makefile-fix.patch b/meta/packages/networkmanager/files/makefile-fix.patch deleted file mode 100644 index 5fbbf3a74a..0000000000 --- a/meta/packages/networkmanager/files/makefile-fix.patch +++ /dev/null @@ -1,17 +0,0 @@ -This line causes libtool to try and create a program which fails since there is no -main(). This is hidden with libtool 1.5.10 but appears with 2.2.2. - -RP - 14/4/08 - -Index: trunk/src/ppp-manager/Makefile.am -=================================================================== ---- trunk.orig/src/ppp-manager/Makefile.am 2008-04-14 23:00:54.000000000 +0100 -+++ trunk/src/ppp-manager/Makefile.am 2008-04-14 23:01:24.000000000 +0100 -@@ -25,7 +25,6 @@ - $(top_builddir)/src/marshallers/libmarshallers.la - - nm_pppd_plugindir = $(libdir) --nm_pppd_plugin_PROGRAMS = nm-pppd-plugin.so - - nm_pppd_plugin_so_SOURCES = \ - nm-pppd-plugin.c \ diff --git a/meta/packages/networkmanager/files/nmutil-fix.patch b/meta/packages/networkmanager/files/nmutil-fix.patch deleted file mode 100644 index d8495bac40..0000000000 --- a/meta/packages/networkmanager/files/nmutil-fix.patch +++ /dev/null @@ -1,12 +0,0 @@ -Index: trunk/configure.ac -=================================================================== ---- trunk.orig/configure.ac 2009-01-08 10:49:26.000000000 -0600 -+++ trunk/configure.ac 2009-01-08 12:00:34.000000000 -0600 -@@ -62,6 +62,7 @@ - glib-2.0 >= 2.10 - NetworkManager >= 0.7.0 - libnm_glib -+ libnm-util - gtk+-2.0 >= 2.6 - libglade-2.0 - gconf-2.0 diff --git a/meta/packages/networkmanager/files/no-restarts.diff b/meta/packages/networkmanager/files/no-restarts.diff deleted file mode 100644 index 20bdf82aab..0000000000 --- a/meta/packages/networkmanager/files/no-restarts.diff +++ /dev/null @@ -1,21 +0,0 @@ -Index: src/backends/NetworkManagerDebian.c -=================================================================== ---- src/backends/NetworkManagerDebian.c (revision 2881) -+++ src/backends/NetworkManagerDebian.c (working copy) -@@ -204,8 +204,6 @@ - */ - void nm_system_update_dns (void) - { -- nm_spawn_process ("/usr/sbin/invoke-rc.d nscd restart"); -- - } - - -@@ -218,7 +216,6 @@ - */ - void nm_system_restart_mdns_responder (void) - { -- nm_spawn_process ("/usr/bin/killall -q -USR1 mDNSResponder"); - } - - diff --git a/meta/packages/networkmanager/files/no_vpn.patch b/meta/packages/networkmanager/files/no_vpn.patch deleted file mode 100644 index 49423e879f..0000000000 --- a/meta/packages/networkmanager/files/no_vpn.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: trunk/src/applet.c -=================================================================== ---- trunk.orig/src/applet.c 2008-02-29 17:47:39.000000000 +0000 -+++ trunk/src/applet.c 2008-02-29 17:48:38.000000000 +0000 -@@ -1783,7 +1783,7 @@ - } - - nma_menu_add_devices (menu, applet); -- nma_menu_add_vpn_submenu (menu, applet); -+ //nma_menu_add_vpn_submenu (menu, applet); - - gtk_widget_show_all (applet->menu); - diff --git a/meta/packages/networkmanager/networkmanager-applet_svn.bb b/meta/packages/networkmanager/networkmanager-applet_svn.bb deleted file mode 100644 index 1f0987011f..0000000000 --- a/meta/packages/networkmanager/networkmanager-applet_svn.bb +++ /dev/null @@ -1,33 +0,0 @@ -DESCRIPTION = "GTK+ applet for NetworkManager" -HOMEPAGE = "http://projects.gnome.org/NetworkManager/" -BUGTRACKER = "https://bugzilla.gnome.org/buglist.cgi?query_format=specific&order=relevance+desc&bug_status=__open__&product=NetworkManager&content=" -LICENSE = "GPLv2+ & LGPLv2.1+" -DEPENDS = "networkmanager dbus-glib libglade gconf gnome-keyring" -#TODO DEPENDS libnotify -RDEPENDS = "networkmanager dbus-wait" -PR = "r7" - -inherit gnome gtk-icon-cache - -SRC_URI = "svn://svn.gnome.org/svn/network-manager-applet/;module=trunk;proto=http \ - file://applet-no-gnome.diff;patch=1;pnum=0 \ - file://applet-no-animation.patch;patch=1 \ - file://no_vpn.patch;patch=1 \ - file://nmutil-fix.patch;patch=1 \ - file://70NetworkManagerApplet.shbg" - -PV = "0.0+svnr${SRCREV}" - -S = "${WORKDIR}/trunk" - -FILES_${PN} += "${datadir}/nm-applet/ \ - ${datadir}/gnome-vpn-properties/ \ - ${datadir}/gnome/autostart/" - -do_install_append () { - install -d ${D}${sysconfdir}/X11/Xsession.d/ - install -m 755 ${WORKDIR}/70NetworkManagerApplet.shbg ${D}${sysconfdir}/X11/Xsession.d/ -} - -#TODO: remove if libnotify in DEPENDS -EXTRA_OECONF += "--without-libnotify" diff --git a/meta/packages/networkmanager/networkmanager_svn.bb b/meta/packages/networkmanager/networkmanager_svn.bb deleted file mode 100644 index 40f04e497c..0000000000 --- a/meta/packages/networkmanager/networkmanager_svn.bb +++ /dev/null @@ -1,51 +0,0 @@ -DESCRIPTION = "NetworkManager" -HOMEPAGE = "http://projects.gnome.org/NetworkManager/" -BUGTRACKER = "https://bugzilla.gnome.org/buglist.cgi?query_format=specific&order=relevance+desc&bug_status=__open__&product=NetworkManager&content=" -SECTION = "net/misc" -LICENSE = "GPLv2+ & LGPLv2+" -PRIORITY = "optional" -DEPENDS = "libnl dbus dbus-glib hal gconf-dbus wireless-tools ppp gnome-common polkit" -RDEPENDS = "hal wpa-supplicant iproute2 dhcp-client" - -PV = "0.7+svnr${SRCREV}" -PR = "r10" - -SRC_URI="svn://svn.gnome.org/svn/NetworkManager/;module=trunk;proto=http \ - file://no-restarts.diff;patch=1;pnum=0 \ - file://libnlfix.patch;patch=1 \ - file://makefile-fix.patch;patch=1 \ - file://allow-disabling.patch;patch=1 \ - file://NetworkManager \ - file://99_networkmanager" - -EXTRA_OECONF = "--with-distro=debian \ - --with-ip=/sbin/ip" -# TODO: will /bin/ip from busybox do? - -S = "${WORKDIR}/trunk" - -inherit autotools pkgconfig update-rc.d - -INITSCRIPT_NAME = "NetworkManager" -INITSCRIPT_PARAMS = "defaults 22" - -do_install_append () { - install -d ${D}/etc/default/volatiles - install -m 0644 ${WORKDIR}/99_networkmanager ${D}/etc/default/volatiles - # This overwrites the provided init script - install -m 0755 ${WORKDIR}/NetworkManager ${D}/etc/init.d/ - rmdir ${D}/var/run/NetworkManager - rmdir ${D}/var/run -} - -PACKAGES =+ "libnmutil libnmglib" - -FILES_libnmutil += "${libdir}/libnm-util.so.*" - -FILES_libnmglib += "${libdir}/libnm_glib.so.*" - -FILES_${PN}-dev = "${includedir}/* \ - ${libdir}/*.so \ - ${libdir}/*.a \ - ${libdir}/pkgconfig/*.pc \ - ${datadir}/NetworkManager/gdb-cmd" diff --git a/meta/packages/nfs-utils/libnfsidmap_0.23.bb b/meta/packages/nfs-utils/libnfsidmap_0.23.bb deleted file mode 100644 index c6b02fe19a..0000000000 --- a/meta/packages/nfs-utils/libnfsidmap_0.23.bb +++ /dev/null @@ -1,13 +0,0 @@ -DESCRIPTION = "nfs idmapping library" -HOMEPAGE = "http://www.citi.umich.edu/projects/nfsv4/linux/" -SECTION = "libs" - -LICENSE = "BSD" -LIC_FILES_CHKSUM = "file://COPYING;md5=d9c6a2a0ca6017fda7cd905ed2739b37" -PR = "r0" - -SRC_URI = "http://www.citi.umich.edu/projects/nfsv4/linux/libnfsidmap/${BPN}-${PV}.tar.gz" - -inherit autotools - -EXTRA_OECONF = "--disable-ldap" diff --git a/meta/packages/nfs-utils/nfs-utils/nfs-utils-1.0.6-uclibc.patch b/meta/packages/nfs-utils/nfs-utils/nfs-utils-1.0.6-uclibc.patch deleted file mode 100644 index 336dc0e267..0000000000 --- a/meta/packages/nfs-utils/nfs-utils/nfs-utils-1.0.6-uclibc.patch +++ /dev/null @@ -1,18 +0,0 @@ ---- ./support/nfs/svc_socket.c.orig 2004-12-12 06:43:52.000000000 +0000 -+++ ./support/nfs/svc_socket.c 2004-12-12 06:50:04.000000000 +0000 -@@ -66,6 +66,7 @@ - memset ((char *) &addr, sizeof (addr)); - addr.sin_family = AF_INET; - -+#ifndef __UCLIBC__ /* neither getrpcbynumber() nor getrpcbynumber_r() is SuSv3 */ - ret = getrpcbynumber_r (number, &rpcbuf, rpcdata, sizeof rpcdata, - &rpcp); - if (ret == 0 && rpcp != NULL) -@@ -99,6 +100,7 @@ - } - } - else -+#endif - { - if (bindresvport (sock, &addr)) - { diff --git a/meta/packages/nfs-utils/nfs-utils/nfsserver b/meta/packages/nfs-utils/nfs-utils/nfsserver deleted file mode 100644 index 9d02e85848..0000000000 --- a/meta/packages/nfs-utils/nfs-utils/nfsserver +++ /dev/null @@ -1,161 +0,0 @@ -#!/bin/sh -### BEGIN INIT INFO -# Provides: nfs-kernel-server -# Required-Start: $remote_fs $portmap hwclock -# Required-Stop: $remote_fs $portmap hwclock -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 -# Short-Description: Kernel NFS server support -# Description: NFS is a popular protocol for file sharing across -# TCP/IP networks. This service provides NFS server -# functionality, which is configured via the -# /etc/exports file. -### END INIT INFO -# -# Startup script for nfs-utils -# -# -# The environment variable NFS_SERVERS may be set in /etc/default/nfsd -# Other control variables may be overridden here too -test -r /etc/default/nfsd && . /etc/default/nfsd -# -# Location of executables: -test -x "$NFS_MOUNTD" || NFS_MOUNTD=/usr/sbin/mountd -test -x "$NFS_NFSD" || NFS_NFSD=/usr/sbin/nfsd -test -x "$NFS_STATD" || NFS_STATD=/usr/sbin/statd -# -# The user mode program must also exist (it just starts the kernel -# threads using the kernel module code). -test -x "$NFS_MOUNTD" || exit 0 -test -x "$NFS_NFSD" || exit 0 -# -# Default is 8 threads, value is settable between 1 and the truely -# ridiculous 99 -test "$NFS_SERVERS" -gt 0 && test "$NFS_SERVERS" -lt 100 || NFS_SERVERS=8 -# -# The default state directory is /var/lib/nfs -test -n "$NFS_STATEDIR" || NFS_STATEDIR=/var/lib/nfs -# -#---------------------------------------------------------------------- -# Startup and shutdown functions. -# Actual startup/shutdown is at the end of this file. -#directories -create_directories(){ - echo -n 'creating NFS state directory: ' - mkdir -p "$NFS_STATEDIR" - ( cd "$NFS_STATEDIR" - umask 077 - mkdir -p sm sm.bak - test -w sm/state || { - rm -f sm/state - :>sm/state - } - umask 022 - for file in xtab etab smtab rmtab - do - test -w "$file" || { - rm -f "$file" - :>"$file" - } - done - ) - echo done -} -#mountd -start_mountd(){ - echo -n 'starting mountd: ' - start-stop-daemon --start --exec "$NFS_MOUNTD" -- "-f /etc/exports $@" - echo done -} -stop_mountd(){ - echo -n 'stopping mountd: ' - start-stop-daemon --stop --quiet --exec "$NFS_MOUNTD" - echo done -} -# -#nfsd -start_nfsd(){ - echo -n "starting $1 nfsd kernel threads: " - start-stop-daemon --start --exec "$NFS_NFSD" -- "$@" - echo done -} -delay_nfsd(){ - for delay in 0 1 2 3 4 5 6 7 8 9 - do - if pidof nfsd >/dev/null - then - echo -n . - sleep 1 - else - return 0 - fi - done - return 1 -} -stop_nfsd(){ - # WARNING: this kills any process with the executable - # name 'nfsd'. - echo -n 'stopping nfsd: ' - start-stop-daemon --stop --quiet --signal 1 --name nfsd - if delay_nfsd || { - echo failed - echo ' using signal 9: ' - start-stop-daemon --stop --quiet --signal 9 --name nfsd - delay_nfsd - } - then - echo done - # This will remove, recursively, dependencies - echo -n 'removing nfsd kernel module: ' - if modprobe -r nfsd - then - echo done - else - echo failed - fi - else - echo failed - fi -} - -#statd -start_statd(){ - echo -n "starting statd: " - start-stop-daemon --start --exec "$NFS_STATD" - echo done -} -stop_statd(){ - # WARNING: this kills any process with the executable - # name 'statd'. - echo -n 'stopping statd: ' - start-stop-daemon --stop --quiet --signal 1 --name statd - echo done -} -#---------------------------------------------------------------------- -# -# supported options: -# start -# stop -# reload: reloads the exports file -# restart: stops and starts mountd -#FIXME: need to create the /var/lib/nfs/... directories -case "$1" in -start) create_directories - start_nfsd "$NFS_SERVERS" - start_mountd - start_statd - test -r /etc/exports && exportfs -a;; -stop) exportfs -ua - stop_statd - stop_mountd - stop_nfsd;; -reload) test -r /etc/exports && exportfs -r;; -restart)exportfs -ua - stop_mountd - stop_statd - # restart does not restart the kernel threads, - # only the user mode processes - start_mountd - start_statd - test -r /etc/exports && exportfs -a;; -esac diff --git a/meta/packages/nfs-utils/nfs-utils_1.2.2.bb b/meta/packages/nfs-utils/nfs-utils_1.2.2.bb deleted file mode 100644 index fafedd17b5..0000000000 --- a/meta/packages/nfs-utils/nfs-utils_1.2.2.bb +++ /dev/null @@ -1,51 +0,0 @@ -DESCRIPTION = "userspace utilities for kernel nfs" -HOMEPAGE = "http://nfs.sourceforge.net/" -SECTION = "console/network" -PRIORITY = "optional" - -LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3" - -# util-linux for libblkid -DEPENDS = "libcap libnfsidmap libevent util-linux tcp-wrappers" -RDEPENDS = "portmap" -RRECOMMENDS = "kernel-module-nfsd" - -PR = "r1" - -SRC_URI = "${SOURCEFORGE_MIRROR}/nfs/nfs-utils-${PV}.tar.bz2 \ - file://nfs-utils-1.0.6-uclibc.patch \ - file://nfsserver" - -PARALLEL_MAKE = "" - -# Only kernel-module-nfsd is required here (but can be built-in) - the nfsd module will -# pull in the remainder of the dependencies. - -INITSCRIPT_NAME = "nfsserver" -# The server has no dependencies at the user run levels, so just put -# it in at the default levels. It must be terminated before the network -# in the shutdown levels, but that works fine. -INITSCRIPT_PARAMS = "defaults" - -inherit autotools update-rc.d - -# --enable-uuid is need for cross-compiling -EXTRA_OECONF = "--with-statduser=nobody \ - --enable-nfsv41 \ - --enable-uuid \ - --disable-gss \ - --disable-tirpc \ - --with-statedir=/var/lib/nfs" - -INHIBIT_AUTO_STAGE = "1" - -do_install_append () { - install -d ${D}${sysconfdir}/init.d - install -m 0755 ${WORKDIR}/nfsserver ${D}${sysconfdir}/init.d/nfsserver - - # the following are built by CC_FOR_BUILD - rm -f ${D}${sbindir}/rpcdebug - rm -f ${D}${sbindir}/rpcgen - rm -f ${D}${sbindir}/locktest -} diff --git a/meta/packages/oh/qemu-config.bb b/meta/packages/oh/qemu-config.bb deleted file mode 100644 index fc59320282..0000000000 --- a/meta/packages/oh/qemu-config.bb +++ /dev/null @@ -1,36 +0,0 @@ -DESCRIPTION = "Adds scripts to use distcc on the host system under qemu" -LICENSE = "GPL" -RDEPENDS = "distcc task-poky-nfs-server oprofileui-server rsync bash" -PR = "r17" - -SRC_URI = "file://distcc.sh \ - file://anjuta-remote-run \ - file://exports \ - file://shutdown.desktop \ - file://qemu-autostart" - -S = "${WORKDIR}" - -COMPATIBLE_MACHINE = "(qemuarm|qemux86)" -PACKAGE_ARCH = "all" - -do_install() { - install -d ${D}${sysconfdir}/profile.d - - install -m 0755 distcc.sh ${D}${sysconfdir}/profile.d/ - install -m 0644 exports ${D}${sysconfdir}/ - - install -d ${D}${bindir} - install -m 0755 anjuta-remote-run ${D}${bindir}/ - - install -d ${D}${datadir}/applications - install -m 0644 shutdown.desktop ${D}${datadir}/applications/ - - install -d ${D}/etc/init.d - install qemu-autostart ${D}/etc/init.d/ -} - -inherit update-rc.d - -INITSCRIPT_NAME = "qemu-autostart" -INITSCRIPT_PARAMS = "start 999 5 2 . stop 20 0 1 6 ." diff --git a/meta/packages/oh/qemu-config/anjuta-remote-run b/meta/packages/oh/qemu-config/anjuta-remote-run deleted file mode 100644 index 620e3a705b..0000000000 --- a/meta/packages/oh/qemu-config/anjuta-remote-run +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/sh - -. /etc/profile -export DISPLAY=:0 -dbus-launch $@ - - diff --git a/meta/packages/oh/qemu-config/distcc.sh b/meta/packages/oh/qemu-config/distcc.sh deleted file mode 100644 index a2b543d6b8..0000000000 --- a/meta/packages/oh/qemu-config/distcc.sh +++ /dev/null @@ -1,4 +0,0 @@ -DISTCC_HOSTS="192.168.7.1" -#DISTCC_VERBOSE="1" - -export DISTCC_HOSTS diff --git a/meta/packages/oh/qemu-config/exports b/meta/packages/oh/qemu-config/exports deleted file mode 100644 index b7257aa008..0000000000 --- a/meta/packages/oh/qemu-config/exports +++ /dev/null @@ -1 +0,0 @@ -/ *(rw,no_root_squash,async) diff --git a/meta/packages/oh/qemu-config/qemu-autostart b/meta/packages/oh/qemu-config/qemu-autostart deleted file mode 100755 index db2668eb4e..0000000000 --- a/meta/packages/oh/qemu-config/qemu-autostart +++ /dev/null @@ -1,37 +0,0 @@ -#!/bin/sh -### BEGIN INIT INFO -# Provides: hddtemp -# Required-Start: $network -# Required-Stop: $network -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 -# Short-Description: OProfile server -# Description: -### END INIT INFO - -. /etc/init.d/functions - -case "$1" in - start) - echo "Starting automatic qemu services" - . /etc/profile - /usr/bin/oprofile-server & - ;; - - stop) - echo "Stopping qemu services" - killproc oprofile-server - ;; - - restart) - $0 stop - sleep 1 - $0 start - ;; - - *) - echo "usage: $0 { start | stop | restart }" - ;; -esac - -exit 0 diff --git a/meta/packages/oh/qemu-config/qemuarm/shutdown.desktop b/meta/packages/oh/qemu-config/qemuarm/shutdown.desktop deleted file mode 100644 index b973d4318e..0000000000 --- a/meta/packages/oh/qemu-config/qemuarm/shutdown.desktop +++ /dev/null @@ -1,10 +0,0 @@ -[Desktop Entry] -Encoding=UTF-8 -Type=Application -Name=Shutdown -Comment=Close down the machine safely -Exec=reboot -Icon=system-shutdown -Terminal=false -Categories=Utility; -StartupNotify=true \ No newline at end of file diff --git a/meta/packages/oh/qemu-config/shutdown.desktop b/meta/packages/oh/qemu-config/shutdown.desktop deleted file mode 100644 index 272688922c..0000000000 --- a/meta/packages/oh/qemu-config/shutdown.desktop +++ /dev/null @@ -1,10 +0,0 @@ -[Desktop Entry] -Encoding=UTF-8 -Type=Application -Name=Shutdown -Comment=Close down the machine safely -Exec=halt -Icon=system-shutdown -Terminal=false -Categories=Utility; -StartupNotify=true \ No newline at end of file diff --git a/meta/packages/oh/usbinit.bb b/meta/packages/oh/usbinit.bb deleted file mode 100644 index 1d4575bddb..0000000000 --- a/meta/packages/oh/usbinit.bb +++ /dev/null @@ -1,18 +0,0 @@ -DESCRIPTION = "Initscript to manage gadget Ethernet" -LICENSE = "GPL" -PRIORITY = "optional" -PR = "r1" - -SRC_URI = "file://usb-gether" -S = "${WORKDIR}" - -do_install() { - install -d ${D}/etc - install -d ${D}/etc/init.d - install usb-gether ${D}/etc/init.d -} - -inherit update-rc.d - -INITSCRIPT_NAME = "usb-gether" -INITSCRIPT_PARAMS = "start 99 5 2 . stop 20 0 1 6 ." diff --git a/meta/packages/oh/usbinit/usb-gether b/meta/packages/oh/usbinit/usb-gether deleted file mode 100755 index e80a0bb30e..0000000000 --- a/meta/packages/oh/usbinit/usb-gether +++ /dev/null @@ -1,23 +0,0 @@ -#! /bin/sh -# -# usb-ether Start up the gadget usb ethernet interface. -# - -case "$1" in - start|"") - test "$VERBOSE" != no && echo "Initializing g_ether gadget..." - modprobe g_ether - ifup usb0 - ;; - stop) - test "$VERBOSE" != no && echo "Disabling g_ether..." - ifdown usb0 - rmmod g_ether - ;; - *) - echo "Usage: usb-ether {start|stop}" >&2 - exit 1 - ;; -esac - -exit 0 diff --git a/meta/packages/ohm/ohm/fix_configure.patch b/meta/packages/ohm/ohm/fix_configure.patch deleted file mode 100644 index e4b774e785..0000000000 --- a/meta/packages/ohm/ohm/fix_configure.patch +++ /dev/null @@ -1,39 +0,0 @@ -Index: git/configure.in -=================================================================== ---- git.orig/configure.in 2007-12-19 13:43:52.000000000 +0000 -+++ git/configure.in 2008-03-06 23:59:57.000000000 +0000 -@@ -201,9 +201,6 @@ - # Like AC_CHECK_HEADER, but it uses the already-computed -I directories. - AC_DEFUN(AC_CHECK_X_HEADER, [ - ac_save_CPPFLAGS="$CPPFLAGS" -- if test \! -z "$includedir" ; then -- CPPFLAGS="$CPPFLAGS -I$includedir" -- fi - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - AC_CHECK_HEADER([$1],[$2],[$3],[$4]) - CPPFLAGS="$ac_save_CPPFLAGS"]) -@@ -211,9 +208,6 @@ - # Like AC_TRY_COMPILE, but it uses the already-computed -I directories. - AC_DEFUN(AC_TRY_X_COMPILE, [ - ac_save_CPPFLAGS="$CPPFLAGS" -- if test \! -z "$includedir" ; then -- CPPFLAGS="$CPPFLAGS -I$includedir" -- fi - CPPFLAGS="$CPPFLAGS $X_CFLAGS" - AC_TRY_COMPILE([$1], [$2], [$3], [$4]) - CPPFLAGS="$ac_save_CPPFLAGS"]) -@@ -224,14 +218,8 @@ - ac_save_CPPFLAGS="$CPPFLAGS" - ac_save_LDFLAGS="$LDFLAGS" - # ac_save_LIBS="$LIBS" -- if test \! -z "$includedir" ; then -- CPPFLAGS="$CPPFLAGS -I$includedir" -- fi - # note: $X_CFLAGS includes $x_includes - CPPFLAGS="$CPPFLAGS $X_CFLAGS" -- if test \! -z "$libdir" ; then -- LDFLAGS="$LDFLAGS -L$libdir" -- fi - # note: $X_LIBS includes $x_libraries - LDFLAGS="$LDFLAGS $ALL_X_LIBS" - AC_CHECK_LIB([$1], [$2], [$3], [$4], [$5]) diff --git a/meta/packages/ohm/ohm_git.bb b/meta/packages/ohm/ohm_git.bb deleted file mode 100644 index 2ba78b35ab..0000000000 --- a/meta/packages/ohm/ohm_git.bb +++ /dev/null @@ -1,44 +0,0 @@ -DESCRIPTION = "Open Hardware Manager" -HOMEPAGE = "http://freedesktop.org/Software/ohm" -LICENSE = "LGPL" - -DEPENDS = "gtk+ dbus-glib intltool-native hal" -RDEPENDS_${PN} += "udev hal-info" -SRC_URI = "git://anongit.freedesktop.org/git/ohm/;protocol=git \ - file://fix_configure.patch;patch=1" - -PV = "0.1.2+git-locrev${SRCREV}" -PR = "r1" - -S = "${WORKDIR}/git" - -inherit autotools pkgconfig - -EXTRA_OECONF = "--with-distro=debian \ - --without-xauth \ - --disable-gtk-doc \ - --disable-docbook-docs" - -do_configure_prepend() { - touch gtk-doc.make -} - -OE_LT_RPATH_ALLOW=":${libdir}/libohm:" -OE_LT_RPATH_ALLOW[export]="1" - -PACKAGES =+ "libohm ohm-plugin-x11" - -FILES_${PN}-dev += "${libdir}/ohm/*.a" - -FILES_${PN} = "${sysconfdir} \ - ${bindir}/* \ - ${sbindir}/* \ - ${libdir}/ohm/*.so \ - " - -FILES_libohm = "${libdir}/libohm.so.*" -FILES_ohm-plugin-x11 = "${libdir}/ohm/libohm_x*.so \ - ${libdir}/ohm/libohm_idle.so \ - ${sysconfdir}/ohm/plugins.d/x* \ - ${sysconfdir}/ohm/plugins.d/idle* \ - " diff --git a/meta/packages/openobex/files/disable-cable-test.patch b/meta/packages/openobex/files/disable-cable-test.patch deleted file mode 100644 index 95b636dd8f..0000000000 --- a/meta/packages/openobex/files/disable-cable-test.patch +++ /dev/null @@ -1,16 +0,0 @@ - -# -# Patch managed by http://www.holgerschurig.de/patcher.html -# - ---- openobex-1.2/apps/Makefile.am~disable-cable-test -+++ openobex-1.2/apps/Makefile.am -@@ -6,7 +6,7 @@ - obex_io.c obex_io.h \ - obex_put_common.c obex_put_common.h - --bin_PROGRAMS = irxfer obex_tcp irobex_palm3 obex_test -+bin_PROGRAMS = irxfer obex_tcp irobex_palm3 - - obex_test_SOURCES = \ - obex_test.c obex_test.h \ diff --git a/meta/packages/openobex/files/libusb_crosscompile_check.patch b/meta/packages/openobex/files/libusb_crosscompile_check.patch deleted file mode 100644 index 20ac70bd1e..0000000000 --- a/meta/packages/openobex/files/libusb_crosscompile_check.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: openobex-1.5/acinclude.m4 -=================================================================== ---- openobex-1.5.orig/acinclude.m4 2009-02-08 18:30:22.000000000 +0000 -+++ openobex-1.5/acinclude.m4 2009-07-31 09:55:46.000000000 +0100 -@@ -158,7 +158,7 @@ - ;; - *) - PKG_CHECK_MODULES(USB, libusb, usb_lib_found=yes, AC_MSG_RESULT(no)) -- AC_CHECK_FILE(${prefix}/lib/pkgconfig/libusb.pc, REQUIRES="libusb") -+ REQUIRES="libusb" - ;; - esac - AC_SUBST(USB_CFLAGS) diff --git a/meta/packages/openobex/openobex_1.5.bb b/meta/packages/openobex/openobex_1.5.bb deleted file mode 100644 index dc07ae1353..0000000000 --- a/meta/packages/openobex/openobex_1.5.bb +++ /dev/null @@ -1,23 +0,0 @@ -DESCRIPTION = "The Openobex project is an open source implementation of the \ -Object Exchange (OBEX) protocol." -HOMEPAGE = "http://openobex.triq.net" -SECTION = "libs" -PROVIDES = "openobex-apps" -DEPENDS = "libusb bluez4" -LICENSE = "GPL" -PR = "r4" - -SRC_URI = "${KERNELORG_MIRROR}/pub/linux/bluetooth/openobex-${PV}.tar.gz \ - file://disable-cable-test.patch;patch=1 \ - file://libusb_crosscompile_check.patch;patch=1" - -inherit autotools binconfig pkgconfig - -EXTRA_OECONF = "--enable-apps --enable-syslog --enable-dump \ - --with-usb=${STAGING_LIBDIR}/.. --with-bluez=${STAGING_LIBDIR}/.." - -# how to stop shlibrename from renaming -apps? -PACKAGES += "openobex-apps" -FILES_${PN} = "${libdir}/lib*.so.*" -FILES_${PN}-dev += "${bindir}/openobex-config" -FILES_${PN}-apps = "${bindir}/*" diff --git a/meta/packages/openssl/openssl-0.9.8o/configure-targets.patch b/meta/packages/openssl/openssl-0.9.8o/configure-targets.patch deleted file mode 100644 index b68123a233..0000000000 --- a/meta/packages/openssl/openssl-0.9.8o/configure-targets.patch +++ /dev/null @@ -1,24 +0,0 @@ - -The number of colons are important :) - -Index: openssl-0.9.8g/Configure -=================================================================== ---- openssl-0.9.8g.orig/Configure 2008-04-12 04:27:22.000000000 +0200 -+++ openssl-0.9.8g/Configure 2008-04-12 04:38:56.000000000 +0200 -@@ -395,6 +395,16 @@ - "linux-alpha-ccc","ccc:-fast -readonly_strings -DL_ENDIAN -DTERMIO::-D_REENTRANT:::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL:${no_asm}", - "linux-alpha+bwx-ccc","ccc:-fast -readonly_strings -DL_ENDIAN -DTERMIO::-D_REENTRANT:::SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL:${no_asm}", - -+ # Linux on ARM -+"linux-elf-arm","$ENV{'CC'}:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"linux-elf-armeb","$ENV{'CC'}:-DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"linux-gnueabi-arm","$ENV{'CC'}:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"linux-gnueabi-armeb","$ENV{'CC'}:-DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"linux-uclibcgnueabi-arm","$ENV{'CC'}:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"linux-uclibcgnueabi-armeb","$ENV{'CC'}:-DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+ -+"linux-avr32","$ENV{'CC'}:-DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).", -+ - #### *BSD [do see comment about ${BSDthreads} above!] - "BSD-generic32","gcc:-DTERMIOS -O3 -fomit-frame-pointer -Wall::${BSDthreads}:::BN_LLONG RC2_CHAR RC4_INDEX DES_INT DES_UNROLL:${no_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", - "BSD-x86", "gcc:-DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -Wall::${BSDthreads}:::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_out_asm}:dlfcn:bsd-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", diff --git a/meta/packages/openssl/openssl-0.9.8o/debian/ca.patch b/meta/packages/openssl/openssl-0.9.8o/debian/ca.patch deleted file mode 100644 index 761eebe510..0000000000 --- a/meta/packages/openssl/openssl-0.9.8o/debian/ca.patch +++ /dev/null @@ -1,20 +0,0 @@ -Index: openssl-0.9.8m/apps/CA.pl.in -=================================================================== ---- openssl-0.9.8m.orig/apps/CA.pl.in 2006-04-28 00:28:51.000000000 +0000 -+++ openssl-0.9.8m/apps/CA.pl.in 2010-02-27 00:36:51.000000000 +0000 -@@ -65,6 +65,7 @@ - foreach (@ARGV) { - if ( /^(-\?|-h|-help)$/ ) { - print STDERR "usage: CA -newcert|-newreq|-newreq-nodes|-newca|-sign|-verify\n"; -+ print STDERR "usage: CA -signcert certfile keyfile|-newcert|-newreq|-newca|-sign|-verify\n"; - exit 0; - } elsif (/^-newcert$/) { - # create a certificate -@@ -165,6 +166,7 @@ - } else { - print STDERR "Unknown arg $_\n"; - print STDERR "usage: CA -newcert|-newreq|-newreq-nodes|-newca|-sign|-verify\n"; -+ print STDERR "usage: CA -signcert certfile keyfile|-newcert|-newreq|-newca|-sign|-verify\n"; - exit 1; - } - } diff --git a/meta/packages/openssl/openssl-0.9.8o/debian/config-hurd.patch b/meta/packages/openssl/openssl-0.9.8o/debian/config-hurd.patch deleted file mode 100644 index 21b7935dde..0000000000 --- a/meta/packages/openssl/openssl-0.9.8o/debian/config-hurd.patch +++ /dev/null @@ -1,15 +0,0 @@ -Index: openssl-0.9.8k/config -=================================================================== ---- openssl-0.9.8k.orig/config 2009-02-16 09:43:41.000000000 +0100 -+++ openssl-0.9.8k/config 2009-07-19 11:32:41.000000000 +0200 -@@ -162,8 +162,8 @@ - echo "${MACHINE}-whatever-linux1"; exit 0 - ;; - -- GNU*) -- echo "hurd-x86"; exit 0; -+ GNU:*|GNU/*:*) -+ echo "${MACHINE}-gnuish"; exit 0; - ;; - - LynxOS:*) diff --git a/meta/packages/openssl/openssl-0.9.8o/debian/debian-targets.patch b/meta/packages/openssl/openssl-0.9.8o/debian/debian-targets.patch deleted file mode 100644 index fed47341ea..0000000000 --- a/meta/packages/openssl/openssl-0.9.8o/debian/debian-targets.patch +++ /dev/null @@ -1,54 +0,0 @@ -Index: openssl-0.9.8k/Configure -=================================================================== ---- openssl-0.9.8k.orig/Configure 2009-12-09 16:09:41.000000000 +0000 -+++ openssl-0.9.8k/Configure 2009-12-09 16:09:55.000000000 +0000 -@@ -320,6 +320,49 @@ - "osf1-alpha-cc", "cc:-std1 -tune host -O4 -readonly_strings::(unknown):::SIXTY_FOUR_BIT_LONG RC4_CHUNK:${no_asm}:dlfcn:alpha-osf1-shared:::.so", - "tru64-alpha-cc", "cc:-std1 -tune host -fast -readonly_strings::-pthread:::SIXTY_FOUR_BIT_LONG RC4_CHUNK:${no_asm}:dlfcn:alpha-osf1-shared::-msym:.so", - -+# Debian GNU/* (various architectures) -+"debian-alpha","gcc:-DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_UNROLL:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-alpha-ev4","gcc:-DTERMIO -O3 -Wa,--noexecstack -mcpu=ev4 -g -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_UNROLL:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-alpha-ev5","gcc:-DTERMIO -O3 -Wa,--noexecstack -mcpu=ev5 -g -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_UNROLL:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-arm","gcc:-DL_ENDIAN -DTERMIO -O2 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-armeb","gcc:-DB_ENDIAN -DTERMIO -O2 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-armel","gcc:-DL_ENDIAN -DTERMIO -O2 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+#"debian-amd64","gcc:-DL_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-amd64", "gcc:-m64 -DL_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall -DMD32_REG_T=int::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK RC4_CHAR BF_PTR2 DES_INT DES_UNROLL:${x86_64_asm_linux}:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-avr32", "gcc:-DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG_BF_PTR::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-kfreebsd-amd64","gcc:-m64 -DL_ENDIAN -DTERMIOS -O3 -Wa,--noexecstack -Wall -DMD32_REG_T=int::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK BF_PTR2 DES_INT DES_UNROLL:${x86_64_asm}:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+#"debian-freebsd-alpha","gcc:-DTERMIOS -O -Wa,--noexecstack -fomit-frame-pointer::(unknown):::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_PTR DES_RISC2::::::::::dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-kfreebsd-i386","gcc:-DL_ENDIAN -DTERMIOS -O3 -Wa,--noexecstack -g -march=i486 -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-hppa","gcc:-DB_ENDIAN -DTERMIO -O2 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG MD2_CHAR RC4_INDEX::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-hurd-i386","gcc:-DL_ENDIAN -DTERMIOS -O3 -Wa,--noexecstack -g -mtune=i486 -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-ia64","gcc:-DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK RC4_CHAR:${ia64_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+#"debian-i386","gcc:-DL_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -fomit-frame-pointer -m486 -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}::::::::::dlfcn:linux-shared:-fPIC", -+"debian-i386","gcc:-DL_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-i386-i486","gcc:-DL_ENDIAN -DTERMIO -O3 -march=i486 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-i386-i586","gcc:-DL_ENDIAN -DTERMIO -O3 -march=i586 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-i386-i686/cmov","gcc:-DL_ENDIAN -DTERMIO -O3 -march=i686 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-m68k","gcc:-DB_ENDIAN -DTERMIO -O2 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG MD2_CHAR RC4_INDEX::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-mips", "gcc:-DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG RC2_CHAR RC4_INDEX DES_INT DES_UNROLL DES_RISC2::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-mipsel", "gcc:-DL_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG RC2_CHAR RC4_INDEX DES_INT DES_UNROLL DES_RISC2::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-netbsd-i386", "gcc:-DL_ENDIAN -DTERMIOS -O3 -Wa,--noexecstack -g -m486 -Wall::(unknown):::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}::::::::::::dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-netbsd-m68k", "gcc:-DB_ENDIAN -DTERMIOS -O3 -Wa,--noexecstack -g -Wall::(unknown):::BN_LLONG MD2_CHAR RC4_INDEX DES_UNROLL::::::::::::dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-netbsd-sparc", "gcc:-DB_ENDIAN -DTERMIOS -O3 -Wa,--noexecstack -g -mv8 -Wall::(unknown):::BN_LLONG MD2_CHAR RC4_INDEX DES_UNROLL::::::::::::dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-openbsd-alpha","gcc:-DTERMIOS -O3 -Wa,--noexecstack -g::(unknown):::SIXTY_FOUR_BIT_LONG DES_INT DES_PTR DES_RISC2::::::::::::dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-openbsd-i386", "gcc:-DL_ENDIAN -DTERMIOS -O3 -Wa,--noexecstack -g -m486::(unknown):::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_out_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-openbsd-mips","gcc:-O2 -Wa,--noexecstack -g -DL_ENDIAN::(unknown)::BN_LLONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC2 DES_PTR BF_PTR:::::::::::::dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-powerpc","gcc:-DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_UNROLL DES_RISC2 DES_PTR MD2_CHAR RC4_INDEX::linux_ppc32.o::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-ppc64","gcc:-m64 -DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL::linux_ppc64.o::::::::::dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-s390","gcc:-DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-sh3", "gcc:-DL_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-sh4", "gcc:-DL_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-sh3eb", "gcc:-DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-sh4eb", "gcc:-DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-m32r","gcc:-DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-sparc","gcc:-DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-sparc-v8","gcc:-DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -mcpu=v8 -g -Wall -DBN_DIV2W::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::sparcv8.o:des_enc-sparc.o fcrypt_b.o:::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-sparc-v9","gcc:-DB_ENDIAN -DTERMIO -O3 -mcpu=v9 -Wa,--noexecstack -Wa,-Av8plus -g -Wall -DULTRASPARC -DBN_DIV2W::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::sparcv8plus.o:des_enc-sparc.o fcrypt_b.o:::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+"debian-sparc64","gcc:-m64 -DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall -DULTRASPARC -DBN_DIV2W::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL BF_PTR:::des_enc-sparc.o fcrypt_b.o:::::::::dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -+ - #### - #### Variety of LINUX:-) - #### diff --git a/meta/packages/openssl/openssl-0.9.8o/debian/engines-path.patch b/meta/packages/openssl/openssl-0.9.8o/debian/engines-path.patch deleted file mode 100644 index 49400ff6e1..0000000000 --- a/meta/packages/openssl/openssl-0.9.8o/debian/engines-path.patch +++ /dev/null @@ -1,47 +0,0 @@ -Index: openssl-0.9.8m/Makefile.org -=================================================================== ---- openssl-0.9.8m.orig/Makefile.org 2010-01-27 16:06:36.000000000 +0000 -+++ openssl-0.9.8m/Makefile.org 2010-02-27 00:43:04.000000000 +0000 -@@ -620,7 +620,7 @@ - install_sw: - @$(PERL) $(TOP)/util/mkdir-p.pl $(INSTALL_PREFIX)$(INSTALLTOP)/bin \ - $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR) \ -- $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines \ -+ $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines \ - $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/pkgconfig \ - $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl \ - $(INSTALL_PREFIX)$(OPENSSLDIR)/misc \ -Index: openssl-0.9.8m/engines/Makefile -=================================================================== ---- openssl-0.9.8m.orig/engines/Makefile 2009-11-10 01:53:02.000000000 +0000 -+++ openssl-0.9.8m/engines/Makefile 2010-02-27 00:45:03.000000000 +0000 -@@ -101,13 +101,13 @@ - *DSO_DL*) sfx="sl";; \ - *) sfx="bad";; \ - esac; \ -- cp lib$$l.$$sfx $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/lib$$l.$$sfx.new; \ -+ cp lib$$l.$$sfx $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/lib$$l.$$sfx.new; \ - else \ - sfx="so"; \ - cp cyg$$l.dll $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/lib$$l.$$sfx.new; \ - fi; \ -- chmod 555 $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/lib$$l.$$sfx.new; \ -- mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/lib$$l.$$sfx.new $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/lib$$l.$$sfx ); \ -+ chmod 555 $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/lib$$l.$$sfx.new; \ -+ mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/lib$$l.$$sfx.new $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/lib$$l.$$sfx ); \ - done; \ - fi - -Index: openssl-0.9.8m/Configure -=================================================================== ---- openssl-0.9.8m.orig/Configure 2010-02-27 00:40:42.000000000 +0000 -+++ openssl-0.9.8m/Configure 2010-02-27 00:46:47.000000000 +0000 -@@ -1738,7 +1738,7 @@ - # $foo is to become "$prefix/lib$multilib/engines"; - # as Makefile.org and engines/Makefile are adapted for - # $multilib suffix. -- my $foo = "$prefix/lib/engines"; -+ my $foo = "$prefix/lib/ssl/engines"; - $foo =~ s/\\/\\\\/g; - print OUT "#define ENGINESDIR \"$foo\"\n"; - } diff --git a/meta/packages/openssl/openssl-0.9.8o/debian/kfreebsd-pipe.patch b/meta/packages/openssl/openssl-0.9.8o/debian/kfreebsd-pipe.patch deleted file mode 100644 index da97186886..0000000000 --- a/meta/packages/openssl/openssl-0.9.8o/debian/kfreebsd-pipe.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: openssl-0.9.8k/crypto/perlasm/x86_64-xlate.pl -=================================================================== ---- openssl-0.9.8k.orig/crypto/perlasm/x86_64-xlate.pl 2008-02-13 21:01:48.000000000 +0100 -+++ openssl-0.9.8k/crypto/perlasm/x86_64-xlate.pl 2009-07-19 11:37:23.000000000 +0200 -@@ -62,7 +62,7 @@ - my ($outdev,$outino,@junk)=stat($output); - - open STDOUT,">$output" || die "can't open $output: $!" -- if ($stddev!=$outdev || $stdino!=$outino); -+# if ($stddev!=$outdev || $stdino!=$outino); - } - - my $masmref=8 + 50727*2**-32; # 8.00.50727 shipped with VS2005 diff --git a/meta/packages/openssl/openssl-0.9.8o/debian/make-targets.patch b/meta/packages/openssl/openssl-0.9.8o/debian/make-targets.patch deleted file mode 100644 index b1239728e7..0000000000 --- a/meta/packages/openssl/openssl-0.9.8o/debian/make-targets.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: openssl-0.9.8k/Makefile.org -=================================================================== ---- openssl-0.9.8k.orig/Makefile.org 2009-07-19 11:32:41.000000000 +0200 -+++ openssl-0.9.8k/Makefile.org 2009-07-19 11:37:31.000000000 +0200 -@@ -131,7 +131,7 @@ - - BASEADDR= - --DIRS= crypto fips ssl engines apps test tools -+DIRS= crypto fips ssl engines apps tools - SHLIBDIRS= crypto ssl fips - - # dirs in crypto to build diff --git a/meta/packages/openssl/openssl-0.9.8o/debian/man-dir.patch b/meta/packages/openssl/openssl-0.9.8o/debian/man-dir.patch deleted file mode 100644 index 29563ecf59..0000000000 --- a/meta/packages/openssl/openssl-0.9.8o/debian/man-dir.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: openssl-0.9.8k/Makefile.org -=================================================================== ---- openssl-0.9.8k.orig/Makefile.org 2009-07-19 11:32:41.000000000 +0200 -+++ openssl-0.9.8k/Makefile.org 2009-07-19 11:37:29.000000000 +0200 -@@ -152,7 +152,7 @@ - - MAKEFILE= Makefile - --MANDIR=$(OPENSSLDIR)/man -+MANDIR=/usr/share/man - MAN1=1 - MAN3=3 - MANSUFFIX= diff --git a/meta/packages/openssl/openssl-0.9.8o/debian/man-section.patch b/meta/packages/openssl/openssl-0.9.8o/debian/man-section.patch deleted file mode 100644 index fe20ab0444..0000000000 --- a/meta/packages/openssl/openssl-0.9.8o/debian/man-section.patch +++ /dev/null @@ -1,32 +0,0 @@ -Index: openssl-0.9.8k/Makefile.org -=================================================================== ---- openssl-0.9.8k.orig/Makefile.org 2009-07-19 11:34:06.000000000 +0200 -+++ openssl-0.9.8k/Makefile.org 2009-07-19 11:37:21.000000000 +0200 -@@ -155,7 +155,8 @@ - MANDIR=/usr/share/man - MAN1=1 - MAN3=3 --MANSUFFIX= -+MANSUFFIX=ssl -+MANSECTION=SSL - SHELL=/bin/sh - - TOP= . -@@ -694,7 +695,7 @@ - echo "installing man$$sec/$$fn.$${sec}$(MANSUFFIX)"; \ - (cd `$(PERL) util/dirname.pl $$i`; \ - sh -c "$$pod2man \ -- --section=$$sec --center=OpenSSL \ -+ --section=$${sec}$(MANSECTION) --center=OpenSSL \ - --release=$(VERSION) `basename $$i`") \ - > $(INSTALL_PREFIX)$(MANDIR)/man$$sec/$$fn.$${sec}$(MANSUFFIX); \ - $(PERL) util/extract-names.pl < $$i | \ -@@ -711,7 +712,7 @@ - echo "installing man$$sec/$$fn.$${sec}$(MANSUFFIX)"; \ - (cd `$(PERL) util/dirname.pl $$i`; \ - sh -c "$$pod2man \ -- --section=$$sec --center=OpenSSL \ -+ --section=$${sec}$(MANSECTION) --center=OpenSSL \ - --release=$(VERSION) `basename $$i`") \ - > $(INSTALL_PREFIX)$(MANDIR)/man$$sec/$$fn.$${sec}$(MANSUFFIX); \ - $(PERL) util/extract-names.pl < $$i | \ diff --git a/meta/packages/openssl/openssl-0.9.8o/debian/no-rpath.patch b/meta/packages/openssl/openssl-0.9.8o/debian/no-rpath.patch deleted file mode 100644 index 3ebc9accca..0000000000 --- a/meta/packages/openssl/openssl-0.9.8o/debian/no-rpath.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: openssl-0.9.8k/Makefile.shared -=================================================================== ---- openssl-0.9.8k.orig/Makefile.shared 2008-09-17 17:56:40.000000000 +0200 -+++ openssl-0.9.8k/Makefile.shared 2009-07-19 11:37:25.000000000 +0200 -@@ -151,7 +151,7 @@ - NOALLSYMSFLAGS='-Wl,--no-whole-archive'; \ - SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -Wl,-Bsymbolic -Wl,-soname=$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX" - --DO_GNU_APP=LDFLAGS="$(CFLAGS) -Wl,-rpath,$(LIBRPATH)" -+DO_GNU_APP=LDFLAGS="$(CFLAGS)" - - #This is rather special. It's a special target with which one can link - #applications without bothering with any features that have anything to diff --git a/meta/packages/openssl/openssl-0.9.8o/debian/no-symbolic.patch b/meta/packages/openssl/openssl-0.9.8o/debian/no-symbolic.patch deleted file mode 100644 index 2504fa791e..0000000000 --- a/meta/packages/openssl/openssl-0.9.8o/debian/no-symbolic.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: openssl-0.9.8k/Makefile.shared -=================================================================== ---- openssl-0.9.8k.orig/Makefile.shared 2009-07-19 11:35:02.000000000 +0200 -+++ openssl-0.9.8k/Makefile.shared 2009-07-19 11:35:48.000000000 +0200 -@@ -149,7 +149,7 @@ - SHLIB_SUFFIX=; \ - ALLSYMSFLAGS='-Wl,--whole-archive'; \ - NOALLSYMSFLAGS='-Wl,--no-whole-archive'; \ -- SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -Wl,-Bsymbolic -Wl,-soname=$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX" -+ SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -Wl,-soname=$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX" - - DO_GNU_APP=LDFLAGS="$(CFLAGS)" - diff --git a/meta/packages/openssl/openssl-0.9.8o/debian/perl-path.diff b/meta/packages/openssl/openssl-0.9.8o/debian/perl-path.diff deleted file mode 100644 index a72f938d82..0000000000 --- a/meta/packages/openssl/openssl-0.9.8o/debian/perl-path.diff +++ /dev/null @@ -1,760 +0,0 @@ -From: Kurt Roeckx -Subject: Change the perl path's to /usr/bin/perl - -This is the result of running: -perl util/perlpath.pl /usr/bin - -The upstream sources have this set to various different paths. - ---- openssl-0.9.8m.orig/Configure -+++ openssl-0.9.8m/Configure -@@ -1,4 +1,4 @@ --: -+#!/usr/bin/perl - eval 'exec perl -S $0 ${1+"$@"}' - if $running_under_some_shell; - ## ---- openssl-0.9.8m.orig/VMS/VMSify-conf.pl -+++ openssl-0.9.8m/VMS/VMSify-conf.pl -@@ -1,4 +1,4 @@ --#! /usr/bin/perl -+#!/usr/bin/perl - - use strict; - use warnings; ---- openssl-0.9.8m.orig/Netware/do_tests.pl -+++ openssl-0.9.8m/Netware/do_tests.pl -@@ -1,4 +1,4 @@ --# perl script to run OpenSSL tests -+#!/usr/bin/perl - - - my $base_path = "\\openssl"; ---- openssl-0.9.8m.orig/apps/progs.pl -+++ openssl-0.9.8m/apps/progs.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - print "/* apps/progs.h */\n"; - print "/* automatically generated by progs.pl for openssl.c */\n\n"; ---- openssl-0.9.8m.orig/os2/backwardify.pl -+++ openssl-0.9.8m/os2/backwardify.pl -@@ -1,4 +1,4 @@ --#!/usr/bin/perl -w -+#!/usr/bin/perl - use strict; - - # Use as $0 ---- openssl-0.9.8m.orig/times/091/mips-rel.pl -+++ openssl-0.9.8m/times/091/mips-rel.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - &doit(100,"Pentium 100 32",0.0195,0.1000,0.6406,4.6100); # pentium-100 - &doit(200,"PPro 200 32",0.0070,0.0340,0.2087,1.4700); # pentium-100 ---- openssl-0.9.8m.orig/fips/mkfipsscr.pl -+++ openssl-0.9.8m/fips/mkfipsscr.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -w -+#!/usr/bin/perl - # Quick & dirty utility to generate a script for executing the - # FIPS 140-2 CMVP algorithm tests based on the pathnames of - # input algorithm test files actually present (the unqualified ---- openssl-0.9.8m.orig/fips/fipsalgtest.pl -+++ openssl-0.9.8m/fips/fipsalgtest.pl -@@ -1,4 +1,4 @@ --#!/usr/bin/perl -w -+#!/usr/bin/perl - # Perl utility to run or verify FIPS 140-2 CMVP algorithm tests based on the - # pathnames of input algorithm test files actually present (the unqualified - # file names are consistent but the pathnames are not). ---- openssl-0.9.8m.orig/ms/uplink.pl -+++ openssl-0.9.8m/ms/uplink.pl -@@ -1,4 +1,4 @@ --#!/usr/bin/env perl -+#!/usr/bin/perl - # - # For Microsoft CL this is implemented as inline assembler. So that - # even though this script can generate even Win32 code, we'll be ---- openssl-0.9.8m.orig/ms/segrenam.pl -+++ openssl-0.9.8m/ms/segrenam.pl -@@ -1,4 +1,4 @@ --#!/usr/bin/env perl -+#!/usr/bin/perl - - my $quiet = 1; - ---- openssl-0.9.8m.orig/ms/cmp.pl -+++ openssl-0.9.8m/ms/cmp.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - ($#ARGV == 1) || die "usage: cmp.pl \n"; - ---- openssl-0.9.8m.orig/test/cms-test.pl -+++ openssl-0.9.8m/test/cms-test.pl -@@ -1,4 +1,4 @@ --# test/cms-test.pl -+#!/usr/bin/perl - # Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL - # project. - # ---- openssl-0.9.8m.orig/test/cms-examples.pl -+++ openssl-0.9.8m/test/cms-examples.pl -@@ -1,4 +1,4 @@ --# test/cms-examples.pl -+#!/usr/bin/perl - # Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL - # project. - # ---- openssl-0.9.8m.orig/demos/b64.pl -+++ openssl-0.9.8m/demos/b64.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - # - # Make PEM encoded data have lines of 64 bytes of data ---- openssl-0.9.8m.orig/demos/tunala/configure.in -+++ openssl-0.9.8m/demos/tunala/configure.in -@@ -1,4 +1,4 @@ --dnl Process this file with autoconf to produce a configure script. -+#!/usr/bin/perl - AC_INIT(tunala.c) - AM_CONFIG_HEADER(config.h) - AM_INIT_AUTOMAKE(tunala, 0.0.1-dev) ---- openssl-0.9.8m.orig/crypto/x86cpuid.pl -+++ openssl-0.9.8m/crypto/x86cpuid.pl -@@ -1,4 +1,4 @@ --#!/usr/bin/env perl -+#!/usr/bin/perl - - push(@INC,"perlasm"); - require "x86asm.pl"; ---- openssl-0.9.8m.orig/crypto/x86_64cpuid.pl -+++ openssl-0.9.8m/crypto/x86_64cpuid.pl -@@ -1,4 +1,4 @@ --#!/usr/bin/env perl -+#!/usr/bin/perl - - $output=shift; - $masm=1 if ($output =~ /\.asm/); ---- openssl-0.9.8m.orig/crypto/md5/asm/md5-586.pl -+++ openssl-0.9.8m/crypto/md5/asm/md5-586.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - # Normal is the - # md5_block_x86(MD5_CTX *c, ULONG *X); ---- openssl-0.9.8m.orig/crypto/md5/asm/md5-x86_64.pl -+++ openssl-0.9.8m/crypto/md5/asm/md5-x86_64.pl -@@ -1,4 +1,4 @@ --#!/usr/bin/perl -w -+#!/usr/bin/perl - # - # MD5 optimized for AMD64. - # ---- openssl-0.9.8m.orig/crypto/sha/asm/sha1-ia64.pl -+++ openssl-0.9.8m/crypto/sha/asm/sha1-ia64.pl -@@ -1,4 +1,4 @@ --#!/usr/bin/env perl -+#!/usr/bin/perl - # - # ==================================================================== - # Written by Andy Polyakov for the OpenSSL ---- openssl-0.9.8m.orig/crypto/sha/asm/sha1-x86_64.pl -+++ openssl-0.9.8m/crypto/sha/asm/sha1-x86_64.pl -@@ -1,4 +1,4 @@ --#!/usr/bin/env perl -+#!/usr/bin/perl - # - # ==================================================================== - # Written by Andy Polyakov for the OpenSSL ---- openssl-0.9.8m.orig/crypto/sha/asm/sha512-sse2.pl -+++ openssl-0.9.8m/crypto/sha/asm/sha512-sse2.pl -@@ -1,4 +1,4 @@ --#!/usr/bin/env perl -+#!/usr/bin/perl - # - # ==================================================================== - # Written by Andy Polyakov for the OpenSSL ---- openssl-0.9.8m.orig/crypto/sha/asm/sha512-ia64.pl -+++ openssl-0.9.8m/crypto/sha/asm/sha512-ia64.pl -@@ -1,4 +1,4 @@ --#!/usr/bin/env perl -+#!/usr/bin/perl - # - # ==================================================================== - # Written by Andy Polyakov for the OpenSSL ---- openssl-0.9.8m.orig/crypto/sha/asm/sha512-x86_64.pl -+++ openssl-0.9.8m/crypto/sha/asm/sha512-x86_64.pl -@@ -1,4 +1,4 @@ --#!/usr/bin/env perl -+#!/usr/bin/perl - # - # ==================================================================== - # Written by Andy Polyakov for the OpenSSL ---- openssl-0.9.8m.orig/crypto/sha/asm/sha1-586.pl -+++ openssl-0.9.8m/crypto/sha/asm/sha1-586.pl -@@ -1,4 +1,4 @@ --#!/usr/bin/env perl -+#!/usr/bin/perl - - # ==================================================================== - # [Re]written by Andy Polyakov for the OpenSSL ---- openssl-0.9.8m.orig/crypto/des/asm/des-586.pl -+++ openssl-0.9.8m/crypto/des/asm/des-586.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - # - # The inner loop instruction sequence and the IP/FP modifications are from - # Svend Olaf Mikkelsen ---- openssl-0.9.8m.orig/crypto/des/asm/desboth.pl -+++ openssl-0.9.8m/crypto/des/asm/desboth.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - $L="edi"; - $R="esi"; ---- openssl-0.9.8m.orig/crypto/des/asm/des686.pl -+++ openssl-0.9.8m/crypto/des/asm/des686.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - $prog="des686.pl"; - ---- openssl-0.9.8m.orig/crypto/des/asm/crypt586.pl -+++ openssl-0.9.8m/crypto/des/asm/crypt586.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - # - # The inner loop instruction sequence and the IP/FP modifications are from - # Svend Olaf Mikkelsen ---- openssl-0.9.8m.orig/crypto/lhash/num.pl -+++ openssl-0.9.8m/crypto/lhash/num.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - #node 10 -> 4 - ---- openssl-0.9.8m.orig/crypto/ripemd/asm/rmd-586.pl -+++ openssl-0.9.8m/crypto/ripemd/asm/rmd-586.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - # Normal is the - # ripemd160_block_asm_data_order(RIPEMD160_CTX *c, ULONG *X,int blocks); ---- openssl-0.9.8m.orig/crypto/rc4/asm/rc4-586.pl -+++ openssl-0.9.8m/crypto/rc4/asm/rc4-586.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - # At some point it became apparent that the original SSLeay RC4 - # assembler implementation performs suboptimaly on latest IA-32 ---- openssl-0.9.8m.orig/crypto/rc4/asm/rc4-x86_64.pl -+++ openssl-0.9.8m/crypto/rc4/asm/rc4-x86_64.pl -@@ -1,4 +1,4 @@ --#!/usr/bin/env perl -+#!/usr/bin/perl - # - # ==================================================================== - # Written by Andy Polyakov for the OpenSSL ---- openssl-0.9.8m.orig/crypto/cast/asm/cast-586.pl -+++ openssl-0.9.8m/crypto/cast/asm/cast-586.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - # define for pentium pro friendly version - $ppro=1; ---- openssl-0.9.8m.orig/crypto/rc5/asm/rc5-586.pl -+++ openssl-0.9.8m/crypto/rc5/asm/rc5-586.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - push(@INC,"perlasm","../../perlasm"); - require "x86asm.pl"; ---- openssl-0.9.8m.orig/crypto/perlasm/x86ms.pl -+++ openssl-0.9.8m/crypto/perlasm/x86ms.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - package x86ms; - ---- openssl-0.9.8m.orig/crypto/perlasm/x86asm.pl -+++ openssl-0.9.8m/crypto/perlasm/x86asm.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - # require 'x86asm.pl'; - # &asm_init("cpp","des-586.pl"); ---- openssl-0.9.8m.orig/crypto/perlasm/x86nasm.pl -+++ openssl-0.9.8m/crypto/perlasm/x86nasm.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - package x86nasm; - ---- openssl-0.9.8m.orig/crypto/perlasm/x86unix.pl -+++ openssl-0.9.8m/crypto/perlasm/x86unix.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - package x86unix; # GAS actually... - ---- openssl-0.9.8m.orig/crypto/perlasm/cbc.pl -+++ openssl-0.9.8m/crypto/perlasm/cbc.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - # void des_ncbc_encrypt(input, output, length, schedule, ivec, enc) - # des_cblock (*input); ---- openssl-0.9.8m.orig/crypto/perlasm/x86_64-xlate.pl -+++ openssl-0.9.8m/crypto/perlasm/x86_64-xlate.pl -@@ -1,4 +1,4 @@ --#!/usr/bin/env perl -+#!/usr/bin/perl - - # Ascetic x86_64 AT&T to MASM assembler translator by . - # ---- openssl-0.9.8m.orig/crypto/bf/asm/bf-686.pl -+++ openssl-0.9.8m/crypto/bf/asm/bf-686.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - push(@INC,"perlasm","../../perlasm"); - require "x86asm.pl"; ---- openssl-0.9.8m.orig/crypto/bf/asm/bf-586.pl -+++ openssl-0.9.8m/crypto/bf/asm/bf-586.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - push(@INC,"perlasm","../../perlasm"); - require "x86asm.pl"; ---- openssl-0.9.8m.orig/crypto/objects/objects.pl -+++ openssl-0.9.8m/crypto/objects/objects.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - open (NUMIN,"$ARGV[1]") || die "Can't open number file $ARGV[1]"; - $max_nid=0; ---- openssl-0.9.8m.orig/crypto/objects/obj_dat.pl -+++ openssl-0.9.8m/crypto/objects/obj_dat.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - # fixes bug in floating point emulation on sparc64 when - # this script produces off-by-one output on sparc64 ---- openssl-0.9.8m.orig/crypto/conf/keysets.pl -+++ openssl-0.9.8m/crypto/conf/keysets.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - $NUMBER=0x01; - $UPPER=0x02; ---- openssl-0.9.8m.orig/crypto/bn/bn_prime.pl -+++ openssl-0.9.8m/crypto/bn/bn_prime.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - # bn_prime.pl - - $num=2048; ---- openssl-0.9.8m.orig/crypto/bn/asm/x86.pl -+++ openssl-0.9.8m/crypto/bn/asm/x86.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - push(@INC,"perlasm","../../perlasm"); - require "x86asm.pl"; ---- openssl-0.9.8m.orig/crypto/bn/asm/ppc.pl -+++ openssl-0.9.8m/crypto/bn/asm/ppc.pl -@@ -1,4 +1,4 @@ --#!/usr/bin/env perl -+#!/usr/bin/perl - # - # Implemented as a Perl wrapper as we want to support several different - # architectures with single file. We pick up the target based on the ---- openssl-0.9.8m.orig/crypto/bn/asm/co-586.pl -+++ openssl-0.9.8m/crypto/bn/asm/co-586.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - push(@INC,"perlasm","../../perlasm"); - require "x86asm.pl"; ---- openssl-0.9.8m.orig/crypto/bn/asm/bn-586.pl -+++ openssl-0.9.8m/crypto/bn/asm/bn-586.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - push(@INC,"perlasm","../../perlasm"); - require "x86asm.pl"; ---- openssl-0.9.8m.orig/crypto/bn/asm/mo-586.pl -+++ openssl-0.9.8m/crypto/bn/asm/mo-586.pl -@@ -1,4 +1,4 @@ --#!/usr/bin/env perl -+#!/usr/bin/perl - - # This is crypto/bn/asm/x86-mont.pl (with asciz from crypto/perlasm/x86asm.pl) - # from OpenSSL 0.9.9-dev ---- openssl-0.9.8m.orig/crypto/bn/asm/x86_64-mont.pl -+++ openssl-0.9.8m/crypto/bn/asm/x86_64-mont.pl -@@ -1,4 +1,4 @@ --#!/usr/bin/env perl -+#!/usr/bin/perl - - # ==================================================================== - # Written by Andy Polyakov for the OpenSSL ---- openssl-0.9.8m.orig/crypto/bn/asm/x86/comba.pl -+++ openssl-0.9.8m/crypto/bn/asm/x86/comba.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - # x86 assember - - sub mul_add_c ---- openssl-0.9.8m.orig/crypto/bn/asm/x86/add.pl -+++ openssl-0.9.8m/crypto/bn/asm/x86/add.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - # x86 assember - - sub bn_add_words ---- openssl-0.9.8m.orig/crypto/bn/asm/x86/mul.pl -+++ openssl-0.9.8m/crypto/bn/asm/x86/mul.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - # x86 assember - - sub bn_mul_words ---- openssl-0.9.8m.orig/crypto/bn/asm/x86/mul_add.pl -+++ openssl-0.9.8m/crypto/bn/asm/x86/mul_add.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - # x86 assember - - sub bn_mul_add_words ---- openssl-0.9.8m.orig/crypto/bn/asm/x86/sqr.pl -+++ openssl-0.9.8m/crypto/bn/asm/x86/sqr.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - # x86 assember - - sub bn_sqr_words ---- openssl-0.9.8m.orig/crypto/bn/asm/x86/sub.pl -+++ openssl-0.9.8m/crypto/bn/asm/x86/sub.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - # x86 assember - - sub bn_sub_words ---- openssl-0.9.8m.orig/crypto/bn/asm/x86/div.pl -+++ openssl-0.9.8m/crypto/bn/asm/x86/div.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - # x86 assember - - sub bn_div_words ---- openssl-0.9.8m.orig/crypto/aes/asm/aes-586.pl -+++ openssl-0.9.8m/crypto/aes/asm/aes-586.pl -@@ -1,4 +1,4 @@ --#!/usr/bin/env perl -+#!/usr/bin/perl - # - # ==================================================================== - # Written by Andy Polyakov for the OpenSSL ---- openssl-0.9.8m.orig/crypto/aes/asm/aes-x86_64.pl -+++ openssl-0.9.8m/crypto/aes/asm/aes-x86_64.pl -@@ -1,4 +1,4 @@ --#!/usr/bin/env perl -+#!/usr/bin/perl - # - # ==================================================================== - # Written by Andy Polyakov for the OpenSSL ---- openssl-0.9.8m.orig/crypto/asn1/charmap.pl -+++ openssl-0.9.8m/crypto/asn1/charmap.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -w -+#!/usr/bin/perl - - use strict; - ---- openssl-0.9.8m.orig/util/mksdef.pl -+++ openssl-0.9.8m/util/mksdef.pl -@@ -1,4 +1,4 @@ -- -+#!/usr/bin/perl - # Perl script to split libeay32.def into two distinct DEF files for use in - # fipdso mode. It works out symbols in each case by running "link" command and - # parsing the output to find the list of missing symbols then splitting ---- openssl-0.9.8m.orig/util/dirname.pl -+++ openssl-0.9.8m/util/dirname.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - if ($#ARGV < 0) { - die "dirname.pl: too few arguments\n"; ---- openssl-0.9.8m.orig/util/tab_num.pl -+++ openssl-0.9.8m/util/tab_num.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - $num=1; - $width=40; ---- openssl-0.9.8m.orig/util/sp-diff.pl -+++ openssl-0.9.8m/util/sp-diff.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - # - # This file takes as input, the files that have been output from - # ssleay speed. ---- openssl-0.9.8m.orig/util/mkerr.pl -+++ openssl-0.9.8m/util/mkerr.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -w -+#!/usr/bin/perl - - my $config = "crypto/err/openssl.ec"; - my $debug = 0; ---- openssl-0.9.8m.orig/util/clean-depend.pl -+++ openssl-0.9.8m/util/clean-depend.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -w -+#!/usr/bin/perl - # Clean the dependency list in a makefile of standard includes... - # Written by Ben Laurie 19 Jan 1999 - ---- openssl-0.9.8m.orig/util/add_cr.pl -+++ openssl-0.9.8m/util/add_cr.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - # - # This adds a copyright message to a souce code file. - # It also gets the file name correct. ---- openssl-0.9.8m.orig/util/pod2man.pl -+++ openssl-0.9.8m/util/pod2man.pl -@@ -1,4 +1,4 @@ --: #!/usr/bin/perl-5.005 -+#!/usr/bin/perl - eval 'exec /usr/bin/perl -S $0 ${1+"$@"}' - if $running_under_some_shell; - ---- openssl-0.9.8m.orig/util/mkstack.pl -+++ openssl-0.9.8m/util/mkstack.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -w -+#!/usr/bin/perl - - # This is a utility that searches out "DECLARE_STACK_OF()" - # declarations in .h and .c files, and updates/creates/replaces ---- openssl-0.9.8m.orig/util/selftest.pl -+++ openssl-0.9.8m/util/selftest.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -w -+#!/usr/bin/perl - # - # Run the test suite and generate a report - # ---- openssl-0.9.8m.orig/util/ck_errf.pl -+++ openssl-0.9.8m/util/ck_errf.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - # - # This is just a quick script to scan for cases where the 'error' - # function name in a XXXerr() macro is wrong. ---- openssl-0.9.8m.orig/util/mklink.pl -+++ openssl-0.9.8m/util/mklink.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - # mklink.pl - ---- openssl-0.9.8m.orig/util/src-dep.pl -+++ openssl-0.9.8m/util/src-dep.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - # we make up an array of - # $file{function_name}=filename; ---- openssl-0.9.8m.orig/util/deleof.pl -+++ openssl-0.9.8m/util/deleof.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - while (<>) - { ---- openssl-0.9.8m.orig/util/arx.pl -+++ openssl-0.9.8m/util/arx.pl -@@ -1,4 +1,4 @@ --#!/bin/perl -+#!/usr/bin/perl - - # Simple perl script to wrap round "ar" program and exclude any - # object files in the environment variable EXCL_OBJ ---- openssl-0.9.8m.orig/util/copy.pl -+++ openssl-0.9.8m/util/copy.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - use Fcntl; - ---- openssl-0.9.8m.orig/util/mkdir-p.pl -+++ openssl-0.9.8m/util/mkdir-p.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - # mkdir-p.pl - ---- openssl-0.9.8m.orig/util/mkdef.pl -+++ openssl-0.9.8m/util/mkdef.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -w -+#!/usr/bin/perl - # - # generate a .def file - # ---- openssl-0.9.8m.orig/util/files.pl -+++ openssl-0.9.8m/util/files.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - # - # used to generate the file MINFO for use by util/mk1mf.pl - # It is basically a list of all variables from the passed makefile ---- openssl-0.9.8m.orig/util/mkfiles.pl -+++ openssl-0.9.8m/util/mkfiles.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - # - # This is a hacked version of files.pl for systems that can't do a 'make files'. - # Do a perl util/mkminfo.pl >MINFO to build MINFO ---- openssl-0.9.8m.orig/util/perlpath.pl -+++ openssl-0.9.8m/util/perlpath.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - # - # modify the '#!/usr/local/bin/perl' - # line in all scripts that rely on perl. ---- openssl-0.9.8m.orig/util/mk1mf.pl -+++ openssl-0.9.8m/util/mk1mf.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - # A bit of an evil hack but it post processes the file ../MINFO which - # is generated by `make files` in the top directory. - # This script outputs one mega makefile that has no shell stuff or any ---- openssl-0.9.8m.orig/util/err-ins.pl -+++ openssl-0.9.8m/util/err-ins.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - # - # tack error codes onto the end of a file - # ---- openssl-0.9.8m.orig/util/pl/Mingw32.pl -+++ openssl-0.9.8m/util/pl/Mingw32.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - # - # Mingw32.pl -- Mingw - # ---- openssl-0.9.8m.orig/util/pl/unix.pl -+++ openssl-0.9.8m/util/pl/unix.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - # - # unix.pl - the standard unix makefile stuff. - # ---- openssl-0.9.8m.orig/util/pl/netware.pl -+++ openssl-0.9.8m/util/pl/netware.pl -@@ -1,4 +1,4 @@ --# Metrowerks Codewarrior or gcc / nlmconv for NetWare -+#!/usr/bin/perl - # - - $version_header = "crypto/opensslv.h"; ---- openssl-0.9.8m.orig/util/pl/VC-32.pl -+++ openssl-0.9.8m/util/pl/VC-32.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - # VC-32.pl - unified script for Microsoft Visual C++, covering Win32, - # Win64 and WinCE [follow $FLAVOR variable to trace the differences]. - # ---- openssl-0.9.8m.orig/util/pl/OS2-EMX.pl -+++ openssl-0.9.8m/util/pl/OS2-EMX.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - # - # OS2-EMX.pl - for EMX GCC on OS/2 - # ---- openssl-0.9.8m.orig/util/pl/ultrix.pl -+++ openssl-0.9.8m/util/pl/ultrix.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - # - # linux.pl - the standard unix makefile stuff. - # ---- openssl-0.9.8m.orig/util/pl/linux.pl -+++ openssl-0.9.8m/util/pl/linux.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - # - # linux.pl - the standard unix makefile stuff. - # ---- openssl-0.9.8m.orig/util/pl/BC-32.pl -+++ openssl-0.9.8m/util/pl/BC-32.pl -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - # Borland C++ builder 3 and 4 -- Janez Jere - # - diff --git a/meta/packages/openssl/openssl-0.9.8o/debian/pic.patch b/meta/packages/openssl/openssl-0.9.8o/debian/pic.patch deleted file mode 100644 index b534afa66c..0000000000 --- a/meta/packages/openssl/openssl-0.9.8o/debian/pic.patch +++ /dev/null @@ -1,301 +0,0 @@ -Index: openssl-0.9.8o/crypto/Makefile -=================================================================== ---- openssl-0.9.8o.orig/crypto/Makefile 2008-09-17 17:10:55.000000000 +0000 -+++ openssl-0.9.8o/crypto/Makefile 2010-06-06 13:09:28.000000000 +0000 -@@ -57,7 +57,7 @@ - echo " #define DATE \"`LC_ALL=C LC_TIME=C date`\""; \ - echo '#endif' ) >buildinf.h - --x86cpuid-elf.s: x86cpuid.pl perlasm/x86asm.pl -+x86cpuid-elf.S: x86cpuid.pl perlasm/x86asm.pl - $(PERL) x86cpuid.pl elf $(CFLAGS) $(PROCESSOR) > $@ - x86cpuid-cof.s: x86cpuid.pl perlasm/x86asm.pl - $(PERL) x86cpuid.pl coff $(CFLAGS) $(PROCESSOR) > $@ -@@ -70,7 +70,7 @@ - uplink-cof.s: ../ms/uplink.pl - $(PERL) ../ms/uplink.pl coff > $@ - --x86_64cpuid.s: x86_64cpuid.pl -+x86_64cpuid.S: x86_64cpuid.pl - $(PERL) x86_64cpuid.pl $@ - ia64cpuid.s: ia64cpuid.S - $(CC) $(CFLAGS) -E ia64cpuid.S > $@ -Index: openssl-0.9.8o/crypto/x86_64cpuid.pl -=================================================================== ---- openssl-0.9.8o.orig/crypto/x86_64cpuid.pl 2007-11-11 16:25:00.000000000 +0000 -+++ openssl-0.9.8o/crypto/x86_64cpuid.pl 2010-06-06 13:09:28.000000000 +0000 -@@ -95,7 +95,11 @@ - .size OPENSSL_wipe_cpu,.-OPENSSL_wipe_cpu - - .section .init -+#ifdef OPENSSL_PIC -+ call OPENSSL_cpuid_setup\@PLT -+#else - call OPENSSL_cpuid_setup -+#endif - - ___ - -Index: openssl-0.9.8o/crypto/md5/Makefile -=================================================================== ---- openssl-0.9.8o.orig/crypto/md5/Makefile 2008-09-17 17:11:02.000000000 +0000 -+++ openssl-0.9.8o/crypto/md5/Makefile 2010-06-06 13:09:28.000000000 +0000 -@@ -52,7 +52,8 @@ - mx86-out.s: asm/md5-586.pl ../perlasm/x86asm.pl - (cd asm; $(PERL) md5-586.pl a.out $(CFLAGS) > ../$@) - --md5-x86_64.s: asm/md5-x86_64.pl; $(PERL) asm/md5-x86_64.pl $@ -+md5-x86_64.s: asm/md5-x86_64.pl -+ $(PERL) asm/md5-x86_64.pl $@ - - files: - $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO -Index: openssl-0.9.8o/crypto/des/asm/desboth.pl -=================================================================== ---- openssl-0.9.8o.orig/crypto/des/asm/desboth.pl 2001-10-24 21:20:56.000000000 +0000 -+++ openssl-0.9.8o/crypto/des/asm/desboth.pl 2010-06-06 13:09:28.000000000 +0000 -@@ -16,6 +16,11 @@ - - &push("edi"); - -+ &call (&label("pic_point0")); -+ &set_label("pic_point0"); -+ &blindpop("ebp"); -+ &add ("ebp", "\$_GLOBAL_OFFSET_TABLE_+[.-" . &label("pic_point0") . "]"); -+ - &comment(""); - &comment("Load the data words"); - &mov($L,&DWP(0,"ebx","",0)); -@@ -47,15 +52,21 @@ - &mov(&swtmp(2), (DWC(($enc)?"1":"0"))); - &mov(&swtmp(1), "eax"); - &mov(&swtmp(0), "ebx"); -- &call("DES_encrypt2"); -+ &exch("ebx", "ebp"); -+ &call("DES_encrypt2\@PLT"); -+ &exch("ebx", "ebp"); - &mov(&swtmp(2), (DWC(($enc)?"0":"1"))); - &mov(&swtmp(1), "edi"); - &mov(&swtmp(0), "ebx"); -- &call("DES_encrypt2"); -+ &exch("ebx", "ebp"); -+ &call("DES_encrypt2\@PLT"); -+ &exch("ebx", "ebp"); - &mov(&swtmp(2), (DWC(($enc)?"1":"0"))); - &mov(&swtmp(1), "esi"); - &mov(&swtmp(0), "ebx"); -- &call("DES_encrypt2"); -+ &exch("ebx", "ebp"); -+ &call("DES_encrypt2\@PLT"); -+ &exch("ebx", "ebp"); - - &stack_pop(3); - &mov($L,&DWP(0,"ebx","",0)); -Index: openssl-0.9.8o/crypto/rc4/Makefile -=================================================================== ---- openssl-0.9.8o.orig/crypto/rc4/Makefile 2008-11-19 16:03:50.000000000 +0000 -+++ openssl-0.9.8o/crypto/rc4/Makefile 2010-06-06 13:09:28.000000000 +0000 -@@ -51,7 +51,7 @@ - rx86-out.s: asm/rc4-586.pl ../perlasm/x86asm.pl - (cd asm; $(PERL) rc4-586.pl a.out $(CFLAGS) > ../$@) - --rc4-x86_64.s: asm/rc4-x86_64.pl; $(PERL) asm/rc4-x86_64.pl $@ -+rc4-x86_64.S: asm/rc4-x86_64.pl; $(PERL) asm/rc4-x86_64.pl $@ - - rc4-ia64.s: asm/rc4-ia64.S - @case `awk '/^#define RC4_INT/{print$$NF}' $(TOP)/include/openssl/opensslconf.h` in \ -Index: openssl-0.9.8o/crypto/rc4/asm/rc4-x86_64.pl -=================================================================== ---- openssl-0.9.8o.orig/crypto/rc4/asm/rc4-x86_64.pl 2008-09-16 10:47:27.000000000 +0000 -+++ openssl-0.9.8o/crypto/rc4/asm/rc4-x86_64.pl 2010-06-06 13:09:28.000000000 +0000 -@@ -270,7 +270,11 @@ - xor %r10,%r10 - xor %r11,%r11 - -+#ifdef OPENSSL_PIC -+ mov OPENSSL_ia32cap_P\@GOTPCREL(%rip),$idx#d -+#else - mov OPENSSL_ia32cap_P(%rip),$idx#d -+#endif - bt \$20,$idx#d - jnc .Lw1stloop - bt \$30,$idx#d -@@ -338,7 +342,11 @@ - RC4_options: - .picmeup %rax - lea .Lopts-.(%rax),%rax -+#ifdef OPENSSL_PIC -+ mov OPENSSL_ia32cap_P\@GOTPCREL(%rip),%edx -+#else - mov OPENSSL_ia32cap_P(%rip),%edx -+#endif - bt \$20,%edx - jnc .Ldone - add \$12,%rax -Index: openssl-0.9.8o/crypto/perlasm/x86unix.pl -=================================================================== ---- openssl-0.9.8o.orig/crypto/perlasm/x86unix.pl 2008-05-01 23:11:32.000000000 +0000 -+++ openssl-0.9.8o/crypto/perlasm/x86unix.pl 2010-06-06 13:09:28.000000000 +0000 -@@ -400,6 +400,29 @@ - $stack=4; - } - -+sub main'function_begin_B_static -+ { -+ local($func,$extra)=@_; -+ -+ &main'external_label($func); -+ $func=$under.$func; -+ -+ local($tmp)=<<"EOF"; -+.text -+EOF -+ push(@out,$tmp); -+ if ($main'cpp) -+ { push(@out,"TYPE($func,\@function)\n"); } -+ elsif ($main'coff) -+ { $tmp=push(@out,".def\t$func;\t.scl\t2;\t.type\t32;\t.endef\n"); } -+ elsif ($main'aout and !$main'pic) -+ { } -+ else { push(@out,".type $func,\@function\n"); } -+ push(@out,".align\t$align\n"); -+ push(@out,"$func:\n"); -+ $stack=4; -+ } -+ - sub main'function_end - { - local($func)=@_; -@@ -694,7 +717,17 @@ - { - $tmp=<<___; - .section .init -+#ifdef OPENSSL_PIC -+ pushl %ebx -+ call .pic_point0 -+.pic_point0: -+ popl %ebx -+ addl \$_GLOBAL_OFFSET_TABLE_+[.-.pic_point0],%ebx -+ call $under$f\@PLT -+ popl %ebx -+#else - call $under$f -+#endif - jmp .Linitalign - .align $align - .Linitalign: -Index: openssl-0.9.8o/crypto/perlasm/cbc.pl -=================================================================== ---- openssl-0.9.8o.orig/crypto/perlasm/cbc.pl 2005-05-09 21:48:00.000000000 +0000 -+++ openssl-0.9.8o/crypto/perlasm/cbc.pl 2010-06-06 13:09:28.000000000 +0000 -@@ -122,7 +122,11 @@ - &mov(&DWP($data_off,"esp","",0), "eax"); # put in array for call - &mov(&DWP($data_off+4,"esp","",0), "ebx"); # - -- &call($enc_func); -+ &call (&label("pic_point0")); -+ &set_label("pic_point0"); -+ &blindpop("ebx"); -+ &add ("ebx", "\$_GLOBAL_OFFSET_TABLE_+[.-" . &label("pic_point0") . "]"); -+ &call("$enc_func\@PLT"); - - &mov("eax", &DWP($data_off,"esp","",0)); - &mov("ebx", &DWP($data_off+4,"esp","",0)); -@@ -187,7 +191,11 @@ - &mov(&DWP($data_off,"esp","",0), "eax"); # put in array for call - &mov(&DWP($data_off+4,"esp","",0), "ebx"); # - -- &call($enc_func); -+ &call (&label("pic_point1")); -+ &set_label("pic_point1"); -+ &blindpop("ebx"); -+ &add ("ebx", "\$_GLOBAL_OFFSET_TABLE_+[.-" . &label("pic_point1") . "]"); -+ &call("$enc_func\@PLT"); - - &mov("eax", &DWP($data_off,"esp","",0)); - &mov("ebx", &DWP($data_off+4,"esp","",0)); -@@ -220,7 +228,11 @@ - &mov(&DWP($data_off,"esp","",0), "eax"); # put back - &mov(&DWP($data_off+4,"esp","",0), "ebx"); # - -- &call($dec_func); -+ &call (&label("pic_point2")); -+ &set_label("pic_point2"); -+ &blindpop("ebx"); -+ &add ("ebx", "\$_GLOBAL_OFFSET_TABLE_+[.-" . &label("pic_point2") . "]"); -+ &call("$dec_func\@PLT"); - - &mov("eax", &DWP($data_off,"esp","",0)); # get return - &mov("ebx", &DWP($data_off+4,"esp","",0)); # -@@ -263,7 +275,11 @@ - &mov(&DWP($data_off,"esp","",0), "eax"); # put back - &mov(&DWP($data_off+4,"esp","",0), "ebx"); # - -- &call($dec_func); -+ &call (&label("pic_point3")); -+ &set_label("pic_point3"); -+ &blindpop("ebx"); -+ &add ("ebx", "\$_GLOBAL_OFFSET_TABLE_+[.-" . &label("pic_point3") . "]"); -+ &call("$dec_func\@PLT"); - - &mov("eax", &DWP($data_off,"esp","",0)); # get return - &mov("ebx", &DWP($data_off+4,"esp","",0)); # -Index: openssl-0.9.8o/crypto/perlasm/x86_64-xlate.pl -=================================================================== ---- openssl-0.9.8o.orig/crypto/perlasm/x86_64-xlate.pl 2010-06-06 13:09:00.000000000 +0000 -+++ openssl-0.9.8o/crypto/perlasm/x86_64-xlate.pl 2010-06-06 13:09:28.000000000 +0000 -@@ -435,7 +435,7 @@ - - chomp($line); - -- $line =~ s|[#!].*$||; # get rid of asm-style comments... -+# $line =~ s|[#!].*$||; # get rid of asm-style comments... - $line =~ s|/\*.*\*/||; # ... and C-style comments... - $line =~ s|^\s+||; # ... and skip white spaces in beginning - -Index: openssl-0.9.8o/crypto/aes/asm/aes-586.pl -=================================================================== ---- openssl-0.9.8o.orig/crypto/aes/asm/aes-586.pl 2008-12-17 14:14:51.000000000 +0000 -+++ openssl-0.9.8o/crypto/aes/asm/aes-586.pl 2010-06-06 13:09:28.000000000 +0000 -@@ -250,7 +250,7 @@ - sub _data_word() { my $i; while(defined($i=shift)) { &data_word($i,$i); } } - - &public_label("AES_Te"); --&function_begin_B("_x86_AES_encrypt"); -+&function_begin_B_static("_x86_AES_encrypt"); - if ($vertical_spin) { - # I need high parts of volatile registers to be accessible... - &exch ($s1="edi",$key="ebx"); -@@ -539,7 +539,7 @@ - } - - &public_label("AES_Td"); --&function_begin_B("_x86_AES_decrypt"); -+&function_begin_B_static("_x86_AES_decrypt"); - # note that caller is expected to allocate stack frame for me! - &mov (&DWP(12,"esp"),$key); # save key - -@@ -1461,15 +1461,22 @@ - &public_label("AES_Td"); - &public_label("AES_Te"); - &function_begin_B("AES_set_decrypt_key"); -+ &push ("ebx"); - &mov ("eax",&wparam(0)); - &mov ("ecx",&wparam(1)); - &mov ("edx",&wparam(2)); - &sub ("esp",12); -+ -+ &call (&label("pic_point0")); -+ &set_label("pic_point0"); -+ &blindpop("ebx"); -+ &add ("ebx", "\$_GLOBAL_OFFSET_TABLE_+[.-" . &label("pic_point0") . "]"); - &mov (&DWP(0,"esp"),"eax"); - &mov (&DWP(4,"esp"),"ecx"); - &mov (&DWP(8,"esp"),"edx"); -- &call ("AES_set_encrypt_key"); -+ &call ("AES_set_encrypt_key\@PLT"); - &add ("esp",12); -+ &pop ("ebx"); - &cmp ("eax",0); - &je (&label("proceed")); - &ret (); diff --git a/meta/packages/openssl/openssl-0.9.8o/debian/pkg-config.patch b/meta/packages/openssl/openssl-0.9.8o/debian/pkg-config.patch deleted file mode 100644 index 38923b08bf..0000000000 --- a/meta/packages/openssl/openssl-0.9.8o/debian/pkg-config.patch +++ /dev/null @@ -1,34 +0,0 @@ -Index: openssl-0.9.8k/Makefile.org -=================================================================== ---- openssl-0.9.8k.orig/Makefile.org 2009-07-19 11:34:56.000000000 +0200 -+++ openssl-0.9.8k/Makefile.org 2009-07-19 11:36:02.000000000 +0200 -@@ -444,7 +444,8 @@ - echo 'Description: OpenSSL cryptography library'; \ - echo 'Version: '$(VERSION); \ - echo 'Requires: '; \ -- echo 'Libs: -L$${libdir} -lcrypto $(EX_LIBS)'; \ -+ echo 'Libs: -L$${libdir} -lcrypto'; \ -+ echo 'Libs.private: $(EX_LIBS)'; \ - echo 'Cflags: -I$${includedir} $(KRB5_INCLUDES)' ) > libcrypto.pc - - libssl.pc: Makefile -@@ -457,7 +458,8 @@ - echo 'Description: Secure Sockets Layer and cryptography libraries'; \ - echo 'Version: '$(VERSION); \ - echo 'Requires: '; \ -- echo 'Libs: -L$${libdir} -lssl -lcrypto $(EX_LIBS)'; \ -+ echo 'Libs: -L$${libdir} -lssl'; \ -+ echo 'Libs.private: -lcrypto $(EX_LIBS)'; \ - echo 'Cflags: -I$${includedir} $(KRB5_INCLUDES)' ) > libssl.pc - - openssl.pc: Makefile -@@ -470,7 +472,8 @@ - echo 'Description: Secure Sockets Layer and cryptography libraries and tools'; \ - echo 'Version: '$(VERSION); \ - echo 'Requires: '; \ -- echo 'Libs: -L$${libdir} -lssl -lcrypto $(EX_LIBS)'; \ -+ echo 'Libs: -L$${libdir} -lssl -lcrypto'; \ -+ echo 'Libs.private: $(EX_LIBS)'; \ - echo 'Cflags: -I$${includedir} $(KRB5_INCLUDES)' ) > openssl.pc - - Makefile: Makefile.org Configure config diff --git a/meta/packages/openssl/openssl-0.9.8o/debian/rc4-amd64.patch b/meta/packages/openssl/openssl-0.9.8o/debian/rc4-amd64.patch deleted file mode 100644 index 6f0421a014..0000000000 --- a/meta/packages/openssl/openssl-0.9.8o/debian/rc4-amd64.patch +++ /dev/null @@ -1,14 +0,0 @@ -Index: openssl-0.9.8k/Configure -=================================================================== ---- openssl-0.9.8k.orig/Configure 2009-07-19 11:32:41.000000000 +0200 -+++ openssl-0.9.8k/Configure 2009-07-19 11:37:10.000000000 +0200 -@@ -128,6 +128,9 @@ - my $x86_out_asm="x86cpuid-out.o:bn86-out.o co86-out.o MAYBE-MO86-out.o:dx86-out.o yx86-out.o:ax86-out.o:bx86-out.o:mx86-out.o:sx86-out.o s512sse2-out.o:cx86-out.o:rx86-out.o rc4_skey.o:rm86-out.o:r586-out.o"; - - my $x86_64_asm="x86_64cpuid.o:x86_64-gcc.o x86_64-mont.o::aes-x86_64.o::md5-x86_64.o:sha1-x86_64.o sha256-x86_64.o sha512-x86_64.o::rc4-x86_64.o::"; -+# rc4 asm is disabled on amd64 because we configured it with RC4_CHAR while -+# the assembler only works with int -+my $x86_64_asm_linux="x86_64cpuid.o:x86_64-gcc.o x86_64-mont.o::aes-x86_64.o::md5-x86_64.o:sha1-x86_64.o sha256-x86_64.o sha512-x86_64.o::::"; - my $ia64_asm=":bn-ia64.o::aes_core.o aes_cbc.o aes-ia64.o:::sha1-ia64.o sha256-ia64.o sha512-ia64.o::rc4-ia64.o rc4_skey.o::"; - - my $no_asm="::::::::::"; diff --git a/meta/packages/openssl/openssl-0.9.8o/debian/rehash-crt.patch b/meta/packages/openssl/openssl-0.9.8o/debian/rehash-crt.patch deleted file mode 100644 index a8ff28c6f3..0000000000 --- a/meta/packages/openssl/openssl-0.9.8o/debian/rehash-crt.patch +++ /dev/null @@ -1,33 +0,0 @@ -Index: openssl-0.9.8k/tools/c_rehash.in -=================================================================== ---- openssl-0.9.8k.orig/tools/c_rehash.in 2002-10-11 22:31:27.000000000 +0200 -+++ openssl-0.9.8k/tools/c_rehash.in 2009-07-19 11:36:26.000000000 +0200 -@@ -59,12 +59,15 @@ - } - } - closedir DIR; -- FILE: foreach $fname (grep {/\.pem$/} @flist) { -+ FILE: foreach $fname (grep {/\.pem$|\.crt$/} @flist) { - # Check to see if certificates and/or CRLs present. - my ($cert, $crl) = check_file($fname); - if(!$cert && !$crl) { -- print STDERR "WARNING: $fname does not contain a certificate or CRL: skipping\n"; -- next; -+ ($cert, $crl) = check_file("$openssl x509 -in \"$fname\" -inform der -outform pem | "); -+ if(!$cert && !$crl) { -+ print STDERR "WARNING: $fname does not contain a certificate or CRL: skipping\n"; -+ next; -+ } - } - link_hash_cert($fname) if($cert); - link_hash_crl($fname) if($crl); -@@ -102,6 +105,9 @@ - my $fname = $_[0]; - $fname =~ s/'/'\\''/g; - my ($hash, $fprint) = `"$openssl" x509 -hash -fingerprint -noout -in '$fname'`; -+ if(!$hash || !fprint) { -+ ($hash, $fprint) = `"$openssl" x509 -hash -fingerprint -noout -in '$fname' -inform der`; -+ } - chomp $hash; - chomp $fprint; - $fprint =~ s/^.*=//; diff --git a/meta/packages/openssl/openssl-0.9.8o/debian/rehash_pod.patch b/meta/packages/openssl/openssl-0.9.8o/debian/rehash_pod.patch deleted file mode 100644 index 94792c48e5..0000000000 --- a/meta/packages/openssl/openssl-0.9.8o/debian/rehash_pod.patch +++ /dev/null @@ -1,60 +0,0 @@ -Index: openssl-0.9.8k/doc/apps/c_rehash.pod -=================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ openssl-0.9.8k/doc/apps/c_rehash.pod 2009-07-19 11:36:27.000000000 +0200 -@@ -0,0 +1,55 @@ -+ -+=pod -+ -+=head1 NAME -+ -+c_rehash - Create symbolic links to files named by the hash values -+ -+=head1 SYNOPSIS -+ -+B -+[directory] ... -+ -+=head1 DESCRIPTION -+ -+c_rehash scans directories and takes a hash value of each .pem and .crt file in the directory. It then creates symbolic links for each of the files named by the hash value. This is useful as many programs require directories to be set up like this in order to find the certificates they require. -+ -+If any directories are named on the command line then these directories are processed in turn. If not then and the environment variable SSL_CERT_DIR is defined then that is consulted. This variable should be a colon (:) separated list of directories, all of which will be processed. If neither of these conditions are true then /usr/lib/ssl/certs is processed. -+ -+For each directory that is to be processed he user must have write permissions on the directory, if they do not then nothing will be printed for that directory. -+ -+Note that this program deletes all the symbolic links that look like ones that it creates before processing a directory. Beware that if you run the program on a directory that contains symbolic links for other purposes that are named in the same format as those created by this program they will be lost. -+ -+The hashes for certificate files are of the form . where n is an integer. If the hash value already exists then n will be incremented, unless the file is a duplicate. Duplicates are detected using the fingerprint of the certificate. A warning will be printed if a duplicate is detected. The hashes for CRL files are of the form .r and have the same behavior. -+ -+The program will also warn if there are files with extension .pem which are not certificate or CRL files. -+ -+The program uses the openssl program to compute the hashes and fingerprints. It expects the executable to be named openssl and be on the PATH, or in the /usr/lib/ssl/bin directory. If the OPENSSL environment variable is defined then this is used instead as the executable that provides the hashes and fingerprints. When called as $OPENSSL x509 -hash -fingerprint -noout -in $file it must output the hash of $file on the first line followed by the fingerprint on the second line, optionally prefixed with some text and an equals sign (=). -+ -+=head1 OPTIONS -+ -+None -+ -+=head1 ENVIRONMENT -+ -+=over 4 -+ -+=item B -+ -+The name (and path) of an executable to use to generate hashes and fingerprints (see above). -+ -+=item B -+ -+Colon separated list of directories to operate on. Ignored if directories are listed on the command line. -+ -+=head1 SEE ALSO -+ -+L, L -+ -+=back -+ -+=head1 BUGS -+ -+No known bugs -+ -+=cut diff --git a/meta/packages/openssl/openssl-0.9.8o/debian/series b/meta/packages/openssl/openssl-0.9.8o/debian/series deleted file mode 100644 index b764c0414d..0000000000 --- a/meta/packages/openssl/openssl-0.9.8o/debian/series +++ /dev/null @@ -1,20 +0,0 @@ -ca.patch -config-hurd.patch -debian-targets.patch -engines-path.patch -kfreebsd-pipe.patch -make-targets.patch -man-dir.patch -man-section.patch -no-rpath.patch -no-symbolic.patch -pic.patch -pkg-config.patch -valgrind.patch -rc4-amd64.patch -rehash-crt.patch -rehash_pod.patch -shared-lib-ext.patch -stddef.patch -version-script.patch -perl-path.diff diff --git a/meta/packages/openssl/openssl-0.9.8o/debian/shared-lib-ext.patch b/meta/packages/openssl/openssl-0.9.8o/debian/shared-lib-ext.patch deleted file mode 100644 index d27e9b2398..0000000000 --- a/meta/packages/openssl/openssl-0.9.8o/debian/shared-lib-ext.patch +++ /dev/null @@ -1,14 +0,0 @@ -Index: openssl-0.9.8k/Configure -=================================================================== ---- openssl-0.9.8k.orig/Configure 2009-07-19 11:36:24.000000000 +0200 -+++ openssl-0.9.8k/Configure 2009-07-19 11:37:03.000000000 +0200 -@@ -1568,7 +1568,8 @@ - elsif ($shared_extension ne "" && $shared_extension =~ /^\.s([ol])\.[^\.]*\.[^\.]*$/) - { - my $sotmp = $1; -- s/^SHARED_LIBS_LINK_EXTS=.*/SHARED_LIBS_LINK_EXTS=.s$sotmp.\$(SHLIB_MAJOR) .s$sotmp/; -+# s/^SHARED_LIBS_LINK_EXTS=.*/SHARED_LIBS_LINK_EXTS=.s$sotmp.\$(SHLIB_MAJOR) .s$sotmp/; -+ s/^SHARED_LIBS_LINK_EXTS=.*/SHARED_LIBS_LINK_EXTS=.s$sotmp/; - } - elsif ($shared_extension ne "" && $shared_extension =~ /^\.[^\.]*\.[^\.]*\.dylib$/) - { diff --git a/meta/packages/openssl/openssl-0.9.8o/debian/stddef.patch b/meta/packages/openssl/openssl-0.9.8o/debian/stddef.patch deleted file mode 100644 index bb65b23319..0000000000 --- a/meta/packages/openssl/openssl-0.9.8o/debian/stddef.patch +++ /dev/null @@ -1,12 +0,0 @@ -Index: openssl-0.9.8k/crypto/sha/sha.h -=================================================================== ---- openssl-0.9.8k.orig/crypto/sha/sha.h 2008-09-16 12:47:28.000000000 +0200 -+++ openssl-0.9.8k/crypto/sha/sha.h 2009-07-19 11:36:28.000000000 +0200 -@@ -59,6 +59,7 @@ - #ifndef HEADER_SHA_H - #define HEADER_SHA_H - -+#include - #include - #include - diff --git a/meta/packages/openssl/openssl-0.9.8o/debian/valgrind.patch b/meta/packages/openssl/openssl-0.9.8o/debian/valgrind.patch deleted file mode 100644 index e9f86eabbf..0000000000 --- a/meta/packages/openssl/openssl-0.9.8o/debian/valgrind.patch +++ /dev/null @@ -1,15 +0,0 @@ -Index: openssl-0.9.8k/crypto/rand/md_rand.c -=================================================================== ---- openssl-0.9.8k.orig/crypto/rand/md_rand.c 2008-09-16 13:50:05.000000000 +0200 -+++ openssl-0.9.8k/crypto/rand/md_rand.c 2009-07-19 11:36:05.000000000 +0200 -@@ -477,8 +477,10 @@ - MD_Update(&m,local_md,MD_DIGEST_LENGTH); - MD_Update(&m,(unsigned char *)&(md_c[0]),sizeof(md_c)); - #ifndef PURIFY -+#if 0 /* Don't add uninitialised data. */ - MD_Update(&m,buf,j); /* purify complains */ - #endif -+#endif - k=(st_idx+MD_DIGEST_LENGTH/2)-st_num; - if (k > 0) - { diff --git a/meta/packages/openssl/openssl-0.9.8o/debian/version-script.patch b/meta/packages/openssl/openssl-0.9.8o/debian/version-script.patch deleted file mode 100644 index 64d8fc7fa2..0000000000 --- a/meta/packages/openssl/openssl-0.9.8o/debian/version-script.patch +++ /dev/null @@ -1,33 +0,0 @@ -Index: openssl-0.9.8m/Configure -=================================================================== ---- openssl-0.9.8m.orig/Configure 2010-02-27 12:28:32.000000000 +0100 -+++ openssl-0.9.8m/Configure 2010-02-27 12:28:35.000000000 +0100 -@@ -1512,6 +1512,8 @@ - } - } - -+$shared_ldflag .= " -Wl,--version-script=openssl.ld"; -+ - open(IN,'$Makefile.new") || die "unable to create $Makefile.new:$!\n"; -Index: openssl-0.9.8m/openssl.ld -=================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ openssl-0.9.8m/openssl.ld 2010-02-27 12:28:35.000000000 +0100 -@@ -0,0 +1,5 @@ -+OPENSSL_0.9.8 { -+ global: -+ *; -+}; -+ -Index: openssl-0.9.8m/engines/openssl.ld -=================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ openssl-0.9.8m/engines/openssl.ld 2010-02-27 12:28:35.000000000 +0100 -@@ -0,0 +1,5 @@ -+OPENSSL_0.9.8 { -+ global: -+ *; -+}; -+ diff --git a/meta/packages/openssl/openssl-0.9.8o/shared-libs.patch b/meta/packages/openssl/openssl-0.9.8o/shared-libs.patch deleted file mode 100644 index 10d9146dc9..0000000000 --- a/meta/packages/openssl/openssl-0.9.8o/shared-libs.patch +++ /dev/null @@ -1,48 +0,0 @@ -diff --git a/Makefile.org b/Makefile.org -index e87d623..25ff367 100644 ---- a/Makefile.org -+++ b/Makefile.org -@@ -355,7 +355,7 @@ libcrypto$(SHLIB_EXT): libcrypto.a $(SHARED_FIPS) - @if [ "$(SHLIB_TARGET)" != "" ]; then \ - if [ "$(FIPSCANLIB)" = "libfips" ]; then \ - $(ARD) libcrypto.a fipscanister.o ; \ -- $(MAKE) SHLIBDIRS='crypto' SHLIBDEPS='-lfips' build-shared; \ -+ $(MAKE) -e SHLIBDIRS='crypto' SHLIBDEPS='-lfips' build-shared; \ - $(AR) libcrypto.a fips/fipscanister.o ; \ - else \ - if [ "$(FIPSCANLIB)" = "libcrypto" ]; then \ -@@ -373,7 +373,7 @@ libssl$(SHLIB_EXT): libcrypto$(SHLIB_EXT) libssl.a - @if [ "$(SHLIB_TARGET)" != "" ]; then \ - shlibdeps=-lcrypto; \ - [ "$(FIPSCANLIB)" = "libfips" ] && shlibdeps="$$shlibdeps -lfips"; \ -- $(MAKE) SHLIBDIRS=ssl SHLIBDEPS="$$shlibdeps" build-shared; \ -+ $(MAKE) -e SHLIBDIRS=ssl SHLIBDEPS="$$shlibdeps" build-shared; \ - else \ - echo "There's no support for shared libraries on this platform" >&2 ; \ - exit 1; \ -diff --git a/crypto/Makefile b/crypto/Makefile -index 6557f2b..a69bf7c 100644 ---- a/crypto/Makefile -+++ b/crypto/Makefile -@@ -103,7 +103,7 @@ $(LIB): $(LIBOBJ) - - shared: buildinf.h lib subdirs - if [ -n "$(SHARED_LIBS)" ]; then \ -- (cd ..; $(MAKE) $(SHARED_LIB)); \ -+ (cd ..; $(MAKE) -e $(SHARED_LIB)); \ - fi - - libs: -diff --git a/ssl/Makefile b/ssl/Makefile -index 5ac3507..77ea2bd 100644 ---- a/ssl/Makefile -+++ b/ssl/Makefile -@@ -62,7 +62,7 @@ lib: $(LIBOBJ) - - shared: lib - if [ -n "$(SHARED_LIBS)" ]; then \ -- (cd ..; $(MAKE) $(SHARED_LIB)); \ -+ (cd ..; $(MAKE) -e $(SHARED_LIB)); \ - fi - - files: diff --git a/meta/packages/openssl/openssl.inc b/meta/packages/openssl/openssl.inc deleted file mode 100644 index 2482585c64..0000000000 --- a/meta/packages/openssl/openssl.inc +++ /dev/null @@ -1,100 +0,0 @@ -DESCRIPTION = "Secure Socket Layer (SSL) binary and related cryptographic tools." -HOMEPAGE = "http://www.openssl.org/" -BUGTRACKER = "http://www.openssl.org/news/vulnerabilities.html" -SECTION = "libs/network" - -# "openssl | SSLeay" dual license -LICENSE = "openssl" -LIC_FILES_CHKSUM = "file://LICENSE;md5=83d26c69f6f0172ee7f795790424b453" - -DEPENDS = "perl-native" - -SRC_URI = "http://www.openssl.org/source/openssl-${PV}.tar.gz" -S = "${WORKDIR}/openssl-${PV}" - -AR_append = " r" -CFLAG = "${@base_conditional('SITEINFO_ENDIANESS', 'le', '-DL_ENDIAN', '-DB_ENDIAN', d)} \ - -DTERMIO ${FULL_OPTIMIZATION} -Wall" - -# -02 does not work on mipsel: ssh hangs when it tries to read /dev/urandom -CFLAG_mtx-1 := "${@'${CFLAG}'.replace('-O2', '')}" -CFLAG_mtx-2 := "${@'${CFLAG}'.replace('-O2', '')}" - -export DIRS = "crypto ssl apps" -export EX_LIBS = "-lgcc -ldl" -export AS = "${CC} -c" - -PARALLEL_MAKE = "" - -inherit pkgconfig siteinfo - -PACKAGES =+ "libcrypto libssl" -FILES_libcrypto = "${libdir}/libcrypto.so.*" -FILES_libssl = "${libdir}/libssl.so.*" -FILES_${PN} =+ " ${libdir}/ssl/*" - -do_configure () { - cd util - perl perlpath.pl ${bindir} - cd .. - ln -sf apps/openssl.pod crypto/crypto.pod ssl/ssl.pod doc/ - - os=${HOST_OS} - if [ "x$os" = "xlinux-uclibc" ]; then - os=linux - fi - target="$os-${HOST_ARCH}" - case $target in - linux-arm) - target=linux-elf-arm - ;; - linux-armeb) - target=linux-elf-armeb - ;; - linux-sh3) - target=debian-sh3 - ;; - linux-sh4) - target=debian-sh4 - ;; - linux-i486) - target=debian-i386-i486 - ;; - linux-i586) - target=debian-i386-i586 - ;; - linux-i686) - target=debian-i386-i686/cmov - ;; - linux-mips) - target=debian-mips - ;; - linux-mipsel) - target=debian-mipsel - ;; - linux-powerpc) - target=linux-ppc - ;; - linux-supersparc) - target=linux-sparcv8 - ;; - linux-sparc) - target=linux-sparcv8 - ;; - esac - # inject machine-specific flags - sed -i -e "s|^\(\"$target\",\s*\"[^:]\+\):\([^:]\+\)|\1:${CFLAG}|g" Configure - perl ./Configure shared --prefix=${prefix} --openssldir=${libdir}/ssl $target -} - -do_compile () { - oe_runmake -} - -do_install () { - install -m 0755 -d ${D}${libdir}/pkgconfig - oe_runmake INSTALL_PREFIX="${D}" install - chmod 644 ${D}${libdir}/pkgconfig/openssl.pc - oe_libinstall -so libcrypto ${D}${libdir} - oe_libinstall -so libssl ${D}${libdir} -} diff --git a/meta/packages/openssl/openssl_0.9.8o.bb b/meta/packages/openssl/openssl_0.9.8o.bb deleted file mode 100644 index 31c5568ba1..0000000000 --- a/meta/packages/openssl/openssl_0.9.8o.bb +++ /dev/null @@ -1,28 +0,0 @@ -require openssl.inc - -PR = "r0" -SRC_URI += "file://debian/ca.patch \ - file://debian/config-hurd.patch;apply=no \ - file://debian/debian-targets.patch \ - file://debian/engines-path.patch \ - file://debian/kfreebsd-pipe.patch;apply=no \ - file://debian/make-targets.patch \ - file://debian/man-dir.patch \ - file://debian/man-section.patch \ - file://debian/no-rpath.patch \ - file://debian/no-symbolic.patch \ - file://debian/pic.patch \ - file://debian/pkg-config.patch \ - file://debian/valgrind.patch \ - file://debian/rc4-amd64.patch \ - file://debian/rehash-crt.patch \ - file://debian/rehash_pod.patch \ - file://debian/shared-lib-ext.patch \ - file://debian/stddef.patch \ - file://debian/version-script.patch \ - file://debian/perl-path.diff" - -SRC_URI += "file://configure-targets.patch \ - file://shared-libs.patch" - -BBCLASSEXTEND = "native" diff --git a/meta/packages/openswan/openswan-2.4.7/installflags.patch b/meta/packages/openswan/openswan-2.4.7/installflags.patch deleted file mode 100644 index e6da2eaa5f..0000000000 --- a/meta/packages/openswan/openswan-2.4.7/installflags.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: openswan-2.4.7/Makefile.inc -=================================================================== ---- openswan-2.4.7.orig/Makefile.inc 2006-12-25 18:05:40.608503250 +0100 -+++ openswan-2.4.7/Makefile.inc 2006-12-25 18:06:39.028154250 +0100 -@@ -158,7 +158,7 @@ - # how backup names are composed. - # Note that the install procedures will never overwrite an existing config - # file, which is why -b is not specified for them. --INSTBINFLAGS=-b --suffix=.old -+INSTBINFLAGS= - INSTSUIDFLAGS=--mode=u+rxs,g+rx,o+rx --group=root -b --suffix=.old - INSTMANFLAGS= - INSTCONFFLAGS= diff --git a/meta/packages/openswan/openswan-2.4.7/ld-library-path-breakage.patch b/meta/packages/openswan/openswan-2.4.7/ld-library-path-breakage.patch deleted file mode 100644 index e3cc8762cc..0000000000 --- a/meta/packages/openswan/openswan-2.4.7/ld-library-path-breakage.patch +++ /dev/null @@ -1,26 +0,0 @@ ---- openswan-2.2.0.orig/programs/Makefile.program 2004-06-03 03:06:27.000000000 +0200 -+++ openswan-2.2.0/programs/Makefile.program 2005-03-05 13:50:19.000000000 +0100 -@@ -30,10 +30,6 @@ - - CFLAGS+= ${WERROR} - --ifneq ($(LD_LIBRARY_PATH),) --LDFLAGS=-L$(LD_LIBRARY_PATH) --endif -- - MANDIR8=$(MANTREE)/man8 - MANDIR5=$(MANTREE)/man5 - ---- openswan-2.2.0.orig/programs/pluto/Makefile 2005-01-03 20:40:45.000000000 +0100 -+++ openswan-2.2.0/programs/pluto/Makefile 2005-03-05 13:51:21.000000000 +0100 -@@ -234,10 +234,6 @@ - LIBSPLUTO+=${CURL_LIBS} - LIBSPLUTO+= -lgmp -lresolv # -lefence - --ifneq ($(LD_LIBRARY_PATH),) --LDFLAGS=-L$(LD_LIBRARY_PATH) --endif -- - LIBSADNS = $(OPENSWANLIB) - LIBSADNS += -lresolv # -lefence - diff --git a/meta/packages/openswan/openswan-2.4.7/openswan-2.4.7-gentoo.patch b/meta/packages/openswan/openswan-2.4.7/openswan-2.4.7-gentoo.patch deleted file mode 100644 index b3863a584b..0000000000 --- a/meta/packages/openswan/openswan-2.4.7/openswan-2.4.7-gentoo.patch +++ /dev/null @@ -1,377 +0,0 @@ -diff -Nru openswan-2.4.7.orig/doc/Makefile openswan-2.4.7/doc/Makefile ---- openswan-2.4.7.orig/doc/Makefile 2005-11-08 23:32:45.000000000 +0200 -+++ openswan-2.4.7/doc/Makefile 2006-12-06 22:46:54.732830840 +0200 -@@ -1,6 +1,6 @@ - # Makefile to generate various formats from HTML source - # --# Assumes the htmldoc utility is available. -+# No longer cares if the htmldoc utility is available. - # This can be downloaded from www.easysw.com - # - # Also needs lynx(1) for HTML-to-text conversion -diff -Nru openswan-2.4.7.orig/lib/libcrypto/libdes/asm/crypt586.pl openswan-2.4.7/lib/libcrypto/libdes/asm/crypt586.pl ---- openswan-2.4.7.orig/lib/libcrypto/libdes/asm/crypt586.pl 2004-07-16 03:24:45.000000000 +0300 -+++ openswan-2.4.7/lib/libcrypto/libdes/asm/crypt586.pl 2006-12-06 22:46:54.732830840 +0200 -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - # - # The inner loop instruction sequence and the IP/FP modifications are from - # Svend Olaf Mikkelsen -diff -Nru openswan-2.4.7.orig/lib/libcrypto/libdes/asm/perlasm/cbc.pl openswan-2.4.7/lib/libcrypto/libdes/asm/perlasm/cbc.pl ---- openswan-2.4.7.orig/lib/libcrypto/libdes/asm/perlasm/cbc.pl 2004-07-10 11:07:06.000000000 +0300 -+++ openswan-2.4.7/lib/libcrypto/libdes/asm/perlasm/cbc.pl 2006-12-06 22:46:54.736831090 +0200 -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - # void des_ncbc_encrypt(input, output, length, schedule, ivec, enc) - # des_cblock (*input); -diff -Nru openswan-2.4.7.orig/lib/libcrypto/libdes/asm/perlasm/x86asm.pl openswan-2.4.7/lib/libcrypto/libdes/asm/perlasm/x86asm.pl ---- openswan-2.4.7.orig/lib/libcrypto/libdes/asm/perlasm/x86asm.pl 2004-07-10 11:07:06.000000000 +0300 -+++ openswan-2.4.7/lib/libcrypto/libdes/asm/perlasm/x86asm.pl 2006-12-06 22:46:54.736831090 +0200 -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - # require 'x86asm.pl'; - # &asm_init("cpp","des-586.pl"); -diff -Nru openswan-2.4.7.orig/lib/libcrypto/libdes/asm/perlasm/x86ms.pl openswan-2.4.7/lib/libcrypto/libdes/asm/perlasm/x86ms.pl ---- openswan-2.4.7.orig/lib/libcrypto/libdes/asm/perlasm/x86ms.pl 2004-07-10 11:07:07.000000000 +0300 -+++ openswan-2.4.7/lib/libcrypto/libdes/asm/perlasm/x86ms.pl 2006-12-06 22:46:54.736831090 +0200 -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - package x86ms; - -diff -Nru openswan-2.4.7.orig/lib/libcrypto/libdes/asm/perlasm/x86unix.pl openswan-2.4.7/lib/libcrypto/libdes/asm/perlasm/x86unix.pl ---- openswan-2.4.7.orig/lib/libcrypto/libdes/asm/perlasm/x86unix.pl 2004-07-10 11:07:07.000000000 +0300 -+++ openswan-2.4.7/lib/libcrypto/libdes/asm/perlasm/x86unix.pl 2006-12-06 22:46:54.736831090 +0200 -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - package x86unix; - -diff -Nru openswan-2.4.7.orig/lib/liblwres/Makefile openswan-2.4.7/lib/liblwres/Makefile ---- openswan-2.4.7.orig/lib/liblwres/Makefile 2004-12-18 20:13:34.000000000 +0200 -+++ openswan-2.4.7/lib/liblwres/Makefile 2006-12-06 22:46:54.736831090 +0200 -@@ -20,7 +20,7 @@ - CDEFINES = -g - CWARNINGS = -Werror - --CFLAGS=${CINCLUDES} ${CDEFINES} ${CWARNINGS} -+CFLAGS=${CINCLUDES} ${CDEFINES} ${CWARNINGS} $(USERCOMPILE) - - VERSION="@(\#) openswan-hacking-9.3-for-osw2" - LIBINTERFACE=2 -diff -Nru openswan-2.4.7.orig/linux/net/ipsec/des/asm/des-586.pl openswan-2.4.7/linux/net/ipsec/des/asm/des-586.pl ---- openswan-2.4.7.orig/linux/net/ipsec/des/asm/des-586.pl 2004-07-10 11:06:50.000000000 +0300 -+++ openswan-2.4.7/linux/net/ipsec/des/asm/des-586.pl 2006-12-06 22:46:54.736831090 +0200 -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - # - # The inner loop instruction sequence and the IP/FP modifications are from - # Svend Olaf Mikkelsen -diff -Nru openswan-2.4.7.orig/linux/net/ipsec/des/asm/des686.pl openswan-2.4.7/linux/net/ipsec/des/asm/des686.pl ---- openswan-2.4.7.orig/linux/net/ipsec/des/asm/des686.pl 2004-07-10 11:06:50.000000000 +0300 -+++ openswan-2.4.7/linux/net/ipsec/des/asm/des686.pl 2006-12-06 22:46:54.740831340 +0200 -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - $prog="des686.pl"; - -diff -Nru openswan-2.4.7.orig/linux/net/ipsec/des/asm/desboth.pl openswan-2.4.7/linux/net/ipsec/des/asm/desboth.pl ---- openswan-2.4.7.orig/linux/net/ipsec/des/asm/desboth.pl 2004-07-10 11:06:50.000000000 +0300 -+++ openswan-2.4.7/linux/net/ipsec/des/asm/desboth.pl 2006-12-06 22:46:54.740831340 +0200 -@@ -1,4 +1,4 @@ --#!/usr/local/bin/perl -+#!/usr/bin/perl - - $L="edi"; - $R="esi"; -diff -Nru openswan-2.4.7.orig/Makefile.inc openswan-2.4.7/Makefile.inc ---- openswan-2.4.7.orig/Makefile.inc 2006-11-14 19:56:09.000000000 +0200 -+++ openswan-2.4.7/Makefile.inc 2006-12-06 22:48:32.534943089 +0200 -@@ -46,7 +46,7 @@ - DESTDIR?= - - # "local" part of tree, used in building other pathnames --INC_USRLOCAL=/usr/local -+INC_USRLOCAL?=/usr - - # PUBDIR is where the "ipsec" command goes; beware, many things define PATH - # settings which are assumed to include it (or at least, to include *some* -@@ -80,7 +80,7 @@ - MANPLACES=man3 man5 man8 - - # where configuration files go --FINALCONFFILE?=/etc/ipsec.conf -+FINALCONFFILE?=/etc/ipsec/ipsec.conf - CONFFILE=$(DESTDIR)$(FINALCONFFILE) - - FINALCONFDIR?=/etc -@@ -91,7 +91,7 @@ - - # sample configuration files go into - INC_DOCDIR?=share/doc --FINALEXAMPLECONFDIR=${INC_USRLOCAL}/${INC_DOCDIR}/openswan -+FINALEXAMPLECONFDIR?=${INC_USRLOCAL}/${INC_DOCDIR}/openswan - EXAMPLECONFDIR=${DESTDIR}${FINALEXAMPLECONFDIR} - - FINALDOCDIR?=${INC_USRLOCAL}/${INC_DOCDIR}/openswan -@@ -239,7 +239,7 @@ - # installed one in RH 7.2, won't work - you wind up depending upon - # openssl. - --BIND9STATICLIBDIR?=/usr/local/lib -+BIND9STATICLIBDIR?=/usr/lib - - # if you install elsewere, you may need to point the include files to it. - #BIND9STATICLIBDIR?=/sandel/lib -diff -Nru openswan-2.4.7.orig/programs/barf/barf.in openswan-2.4.7/programs/barf/barf.in ---- openswan-2.4.7.orig/programs/barf/barf.in 2006-11-07 05:49:18.000000000 +0200 -+++ openswan-2.4.7/programs/barf/barf.in 2006-12-06 22:46:54.740831340 +0200 -@@ -16,7 +16,7 @@ - - LOGS=${LOGS-/var/log} - CONFS=${IPSEC_CONFS-/etc} --CONFDDIR=${IPSEC_CONFDDIR-/etc/ipsec.d} -+CONFDDIR=${IPSEC_CONFDDIR-/etc/ipsec/ipsec.d} - me="ipsec barf" - # Max lines to use for things like 'route -n' - maxlines=100 -@@ -238,13 +238,13 @@ - done - fi - _________________________ ipsec/ls-libdir --ls -l ${IPSEC_LIBDIR-/usr/local/lib/ipsec} -+ls -l ${IPSEC_LIBDIR-/usr/lib/ipsec} - _________________________ ipsec/ls-execdir --ls -l ${IPSEC_EXECDIR-/usr/local/libexec/ipsec} -+ls -l ${IPSEC_EXECDIR-/usr/libexec/ipsec} - _________________________ ipsec/updowns --for f in `ls ${IPSEC_EXECDIR-/usr/local/libexec/ipsec} | egrep updown` -+for f in `ls ${IPSEC_EXECDIR-/usr/libexec/ipsec} | egrep updown` - do -- cat ${IPSEC_EXECDIR-/usr/local/libexec/ipsec}/$f -+ cat ${IPSEC_EXECDIR-/usr/libexec/ipsec}/$f - done - _________________________ /proc/net/dev - cat /proc/net/dev -diff -Nru openswan-2.4.7.orig/programs/eroute/eroute.5 openswan-2.4.7/programs/eroute/eroute.5 ---- openswan-2.4.7.orig/programs/eroute/eroute.5 2006-10-26 23:40:43.000000000 +0300 -+++ openswan-2.4.7/programs/eroute/eroute.5 2006-12-06 22:57:19.307864340 +0200 -@@ -168,7 +168,7 @@ - .SH "FILES" - - .PP --/proc/net/ipsec_eroute, /usr/local/bin/ipsec -+/proc/net/ipsec_eroute, /usr/bin/ipsec - - .SH "SEE ALSO" - -diff -Nru openswan-2.4.7.orig/programs/eroute/eroute.8 openswan-2.4.7/programs/eroute/eroute.8 ---- openswan-2.4.7.orig/programs/eroute/eroute.8 2003-10-31 04:32:27.000000000 +0200 -+++ openswan-2.4.7/programs/eroute/eroute.8 2006-12-06 22:46:54.740831340 +0200 -@@ -308,7 +308,7 @@ - .br - .LP - .SH FILES --/proc/net/ipsec_eroute, /usr/local/bin/ipsec -+/proc/net/ipsec_eroute, /usr/bin/ipsec - .SH "SEE ALSO" - ipsec(8), ipsec_manual(8), ipsec_tncfg(8), ipsec_spi(8), - ipsec_spigrp(8), ipsec_klipsdebug(8), ipsec_eroute(5) -diff -Nru openswan-2.4.7.orig/programs/_include/_include.in openswan-2.4.7/programs/_include/_include.in ---- openswan-2.4.7.orig/programs/_include/_include.in 2003-01-06 23:44:04.000000000 +0200 -+++ openswan-2.4.7/programs/_include/_include.in 2006-12-06 22:46:54.740831340 +0200 -@@ -47,10 +47,10 @@ - do - if test ! -r "$f" - then -- if test ! "$f" = "/etc/ipsec.conf" -+ if test ! "$f" = "/etc/ipsec/ipsec.conf" - then - echo "#:cannot open configuration file \'$f\'" -- if test "$f" = "/etc/ipsec.secrets" -+ if test "$f" = "/etc/ipsec/ipsec.secrets" - then - echo "#:Your secrets file will be created when you start FreeS/WAN for the first time." - fi -diff -Nru openswan-2.4.7.orig/programs/ipsec/ipsec.8 openswan-2.4.7/programs/ipsec/ipsec.8 ---- openswan-2.4.7.orig/programs/ipsec/ipsec.8 2003-02-27 18:51:54.000000000 +0200 -+++ openswan-2.4.7/programs/ipsec/ipsec.8 2006-12-06 22:46:54.744831590 +0200 -@@ -81,7 +81,7 @@ - .I ipsec - thinks the IPsec configuration files are stored. - .SH FILES --/usr/local/lib/ipsec usual utilities directory -+/usr/lib/ipsec usual utilities directory - .SH ENVIRONMENT - .PP - The following environment variables control where FreeS/WAN finds its -diff -Nru openswan-2.4.7.orig/programs/klipsdebug/klipsdebug.5 openswan-2.4.7/programs/klipsdebug/klipsdebug.5 ---- openswan-2.4.7.orig/programs/klipsdebug/klipsdebug.5 2006-10-27 01:21:25.000000000 +0300 -+++ openswan-2.4.7/programs/klipsdebug/klipsdebug.5 2006-12-06 22:58:04.150666840 +0200 -@@ -114,7 +114,7 @@ - .SH "FILES" - - .PP --/proc/net/ipsec_klipsdebug, /usr/local/bin/ipsec -+/proc/net/ipsec_klipsdebug, /usr/bin/ipsec - - .SH "SEE ALSO" - -diff -Nru openswan-2.4.7.orig/programs/klipsdebug/klipsdebug.8 openswan-2.4.7/programs/klipsdebug/klipsdebug.8 ---- openswan-2.4.7.orig/programs/klipsdebug/klipsdebug.8 2006-10-27 01:21:25.000000000 +0300 -+++ openswan-2.4.7/programs/klipsdebug/klipsdebug.8 2006-12-06 22:58:22.295800840 +0200 -@@ -111,7 +111,7 @@ - .SH "FILES" - - .PP --/proc/net/ipsec_klipsdebug, /usr/local/bin/ipsec -+/proc/net/ipsec_klipsdebug, /usr/bin/ipsec - - .SH "SEE ALSO" - -diff -Nru openswan-2.4.7.orig/programs/mailkey/mailkey.in openswan-2.4.7/programs/mailkey/mailkey.in ---- openswan-2.4.7.orig/programs/mailkey/mailkey.in 2006-10-29 02:49:23.000000000 +0300 -+++ openswan-2.4.7/programs/mailkey/mailkey.in 2006-12-06 22:46:54.828836839 +0200 -@@ -60,7 +60,7 @@ - - "$test1st" - --Common concerns: This account must be able to read /etc/ipsec.secrets. -+Common concerns: This account must be able to read /etc/ipsec/ipsec.secrets. - If you haven't generated your key yet, please run 'ipsec newhostkey'." - exit 0 - } -diff -Nru openswan-2.4.7.orig/programs/pluto/Makefile openswan-2.4.7/programs/pluto/Makefile ---- openswan-2.4.7.orig/programs/pluto/Makefile 2006-11-07 17:55:52.000000000 +0200 -+++ openswan-2.4.7/programs/pluto/Makefile 2006-12-06 22:46:54.832837088 +0200 -@@ -256,7 +256,7 @@ - -DPOLICYGROUPSDIR=\"${FINALCONFDDIR}/policies\" \ - -DPERPEERLOGDIR=\"${FINALLOGDIR}/pluto/peer\" - --ALLFLAGS = $(CPPFLAGS) $(CFLAGS) -+ALLFLAGS = $(CPPFLAGS) $(CFLAGS) $(USERCOMPILE) - - # libefence is a free memory allocation debugger - # Solaris 2 needs -lsocket -lnsl -diff -Nru openswan-2.4.7.orig/programs/setup/Makefile openswan-2.4.7/programs/setup/Makefile ---- openswan-2.4.7.orig/programs/setup/Makefile 2004-12-18 20:13:43.000000000 +0200 -+++ openswan-2.4.7/programs/setup/Makefile 2006-12-06 22:46:54.832837088 +0200 -@@ -33,25 +33,10 @@ - @rm -f $(BINDIR)/setup - @$(INSTALL) $(INSTBINFLAGS) setup $(RCDIR)/ipsec - @ln -s $(FINALRCDIR)/ipsec $(BINDIR)/setup -- -@for i in 0 1 2 3 4 5 6; do mkdir -p $(RCDIR)/../rc$$i.d; done -- -@cd $(RCDIR)/../rc0.d && ln -f -s ../init.d/ipsec K76ipsec -- -@cd $(RCDIR)/../rc1.d && ln -f -s ../init.d/ipsec K76ipsec -- -@cd $(RCDIR)/../rc2.d && ln -f -s ../init.d/ipsec S47ipsec -- -@cd $(RCDIR)/../rc3.d && ln -f -s ../init.d/ipsec S47ipsec -- -@cd $(RCDIR)/../rc4.d && ln -f -s ../init.d/ipsec S47ipsec -- -@cd $(RCDIR)/../rc5.d && ln -f -s ../init.d/ipsec S47ipsec -- -@cd $(RCDIR)/../rc6.d && ln -f -s ../init.d/ipsec K76ipsec - - install_file_list:: - @echo $(RCDIR)/ipsec - @echo $(BINDIR)/setup -- @echo $(RCDIR)/../rc0.d/K76ipsec -- @echo $(RCDIR)/../rc1.d/K76ipsec -- @echo $(RCDIR)/../rc2.d/S47ipsec -- @echo $(RCDIR)/../rc3.d/S47ipsec -- @echo $(RCDIR)/../rc4.d/S47ipsec -- @echo $(RCDIR)/../rc5.d/S47ipsec -- @echo $(RCDIR)/../rc6.d/K76ipsec - - clean:: - @rm -f setup -diff -Nru openswan-2.4.7.orig/programs/showhostkey/showhostkey.in openswan-2.4.7/programs/showhostkey/showhostkey.in ---- openswan-2.4.7.orig/programs/showhostkey/showhostkey.in 2004-11-14 15:40:41.000000000 +0200 -+++ openswan-2.4.7/programs/showhostkey/showhostkey.in 2006-12-06 22:46:54.844837840 +0200 -@@ -18,7 +18,7 @@ - usage="Usage: $me [--file secrets] [--left] [--right] [--txt gateway] [--id id] - [--dhclient] [--ipseckey]" - --file=/etc/ipsec.secrets -+file=/etc/ipsec/ipsec.secrets - fmt="" - gw= - id= -diff -Nru openswan-2.4.7.orig/programs/spi/spi.5 openswan-2.4.7/programs/spi/spi.5 ---- openswan-2.4.7.orig/programs/spi/spi.5 2006-10-26 23:53:59.000000000 +0300 -+++ openswan-2.4.7/programs/spi/spi.5 2006-12-06 23:00:11.910340779 +0200 -@@ -157,7 +157,7 @@ - .SH "FILES" - - .PP --/proc/net/ipsec_spi, /usr/local/bin/ipsec -+/proc/net/ipsec_spi, /usr/bin/ipsec - - .SH "SEE ALSO" - -diff -Nru openswan-2.4.7.orig/programs/spi/spi.8 openswan-2.4.7/programs/spi/spi.8 ---- openswan-2.4.7.orig/programs/spi/spi.8 2006-10-30 22:00:04.000000000 +0200 -+++ openswan-2.4.7/programs/spi/spi.8 2006-12-06 23:00:27.043286530 +0200 -@@ -215,7 +215,7 @@ - .SH "FILES" - - .PP --/proc/net/ipsec_spi, /usr/local/bin/ipsec -+/proc/net/ipsec_spi, /usr/bin/ipsec - - .SH "SEE ALSO" - -diff -Nru openswan-2.4.7.orig/programs/spigrp/spigrp.5 openswan-2.4.7/programs/spigrp/spigrp.5 ---- openswan-2.4.7.orig/programs/spigrp/spigrp.5 2006-10-26 23:50:29.000000000 +0300 -+++ openswan-2.4.7/programs/spigrp/spigrp.5 2006-12-06 23:01:25.650949280 +0200 -@@ -67,7 +67,7 @@ - .SH "FILES" - - .PP --/proc/net/ipsec_spigrp, /usr/local/bin/ipsec -+/proc/net/ipsec_spigrp, /usr/bin/ipsec - - .SH "SEE ALSO" - -diff -Nru openswan-2.4.7.orig/programs/spigrp/spigrp.8 openswan-2.4.7/programs/spigrp/spigrp.8 ---- openswan-2.4.7.orig/programs/spigrp/spigrp.8 2006-10-26 23:50:29.000000000 +0300 -+++ openswan-2.4.7/programs/spigrp/spigrp.8 2006-12-06 23:01:39.079788532 +0200 -@@ -87,7 +87,7 @@ - .SH "FILES" - - .PP --/proc/net/ipsec_spigrp, /usr/local/bin/ipsec -+/proc/net/ipsec_spigrp, /usr/bin/ipsec - - .SH "SEE ALSO" - -diff -Nru openswan-2.4.7.orig/programs/tncfg/tncfg.5 openswan-2.4.7/programs/tncfg/tncfg.5 ---- openswan-2.4.7.orig/programs/tncfg/tncfg.5 2006-10-26 23:58:11.000000000 +0300 -+++ openswan-2.4.7/programs/tncfg/tncfg.5 2006-12-06 23:01:59.385057530 +0200 -@@ -101,7 +101,7 @@ - .SH "FILES" - - .PP --/proc/net/ipsec_tncfg, /usr/local/bin/ipsec -+/proc/net/ipsec_tncfg, /usr/bin/ipsec - - .SH "SEE ALSO" - -diff -Nru openswan-2.4.7.orig/programs/tncfg/tncfg.8 openswan-2.4.7/programs/tncfg/tncfg.8 ---- openswan-2.4.7.orig/programs/tncfg/tncfg.8 2006-10-26 23:58:11.000000000 +0300 -+++ openswan-2.4.7/programs/tncfg/tncfg.8 2006-12-06 23:02:09.245673780 +0200 -@@ -63,7 +63,7 @@ - .SH "FILES" - - .PP --/proc/net/ipsec_tncfg, /usr/local/bin/ipsec -+/proc/net/ipsec_tncfg, /usr/bin/ipsec - - .SH "SEE ALSO" - diff --git a/meta/packages/openswan/openswan_2.4.7.bb b/meta/packages/openswan/openswan_2.4.7.bb deleted file mode 100644 index 4ebb9c7a45..0000000000 --- a/meta/packages/openswan/openswan_2.4.7.bb +++ /dev/null @@ -1,36 +0,0 @@ -SECTION = "console/network" -DESCRIPTION = "Openswan is an Open Source implementation of IPsec for the \ -Linux operating system." -HOMEPAGE = "http://www.openswan.org" -LICENSE = "GPLv2" -DEPENDS = "gmp flex-native" -RRECOMMENDS = "kernel-module-ipsec" -RDEPENDS_nylon = "perl" -PR = "r0" - -SRC_URI = "http://www.openswan.org/download/old/openswan-${PV}.tar.gz \ - file://openswan-2.4.7-gentoo.patch;patch=1 \ - file://installflags.patch;patch=1 \ - file://ld-library-path-breakage.patch;patch=1" -S = "${WORKDIR}/openswan-${PV}" - -PARALLEL_MAKE = "" -EXTRA_OEMAKE = "DESTDIR=${D} \ - USERCOMPILE="${CFLAGS}" \ - FINALCONFDIR=${sysconfdir}/ipsec \ - INC_RCDEFAULT=${sysconfdir}/init.d \ - INC_USRLOCAL=${prefix} \ - INC_MANDIR=share/man WERROR=''" - -do_compile () { - oe_runmake programs -} - -do_install () { - oe_runmake install -} - -FILES_${PN} = "${sysconfdir} ${libdir}/ipsec/* ${sbindir}/* ${libexecdir}/ipsec/*" -FILES_${PN}-dbg += "${libdir}/ipsec/.debug ${libexecdir}/ipsec/.debug" - -CONFFILES_${PN} = "${sysconfdir}/ipsec/ipsec.conf" diff --git a/meta/packages/opensync/libopensync-0.37/build-in-src.patch b/meta/packages/opensync/libopensync-0.37/build-in-src.patch deleted file mode 100644 index 1810b339a6..0000000000 --- a/meta/packages/opensync/libopensync-0.37/build-in-src.patch +++ /dev/null @@ -1,18 +0,0 @@ ---- - cmake/OpenSyncInternal.cmake.in | 1 - - 1 file changed, 1 deletion(-) - ---- libopensync-0.36.orig/cmake/OpenSyncInternal.cmake.in -+++ libopensync-0.36/cmake/OpenSyncInternal.cmake.in -@@ -5,11 +5,10 @@ INCLUDE( OpenSyncTesting ) - INCLUDE( OpenSyncPackaging ) - INCLUDE( OpenSyncPlugin ) - INCLUDE( OpenSyncPlatforms ) - INCLUDE( MacroEnsureOutOfSourceBuild ) - --MACRO_ENSURE_OUT_OF_SOURCE_BUILD("${CMAKE_PROJECT_NAME} doesn't allow to build within the source directory. Please, create a seperate build directory and run 'cmake ${PROJECT_SOURCE_DIR} [options]'!") - - - SET( OPENSYNC_PLUGINDIR "@OPENSYNC_PLUGINDIR@" ) - SET( OPENSYNC_FORMATSDIR "@OPENSYNC_FORMATSDIR@" ) - SET( OPENSYNC_PYTHON_PLUGINDIR "@OPENSYNC_PYTHON_PLUGINDIR@" ) diff --git a/meta/packages/opensync/libopensync-0.37/cmake.patch b/meta/packages/opensync/libopensync-0.37/cmake.patch deleted file mode 100644 index 7ea4613548..0000000000 --- a/meta/packages/opensync/libopensync-0.37/cmake.patch +++ /dev/null @@ -1,17 +0,0 @@ ---- - opensync/CMakeLists.txt | 1 - - 1 file changed, 1 deletion(-) - -Index: libopensync-0.37/opensync/CMakeLists.txt -=================================================================== ---- libopensync-0.37.orig/opensync/CMakeLists.txt 2008-10-15 13:56:45.000000000 +0100 -+++ libopensync-0.37/opensync/CMakeLists.txt 2008-10-15 13:59:03.000000000 +0100 -@@ -67,8 +67,6 @@ - SET_TARGET_PROPERTIES( opensync PROPERTIES VERSION ${OPENSYNC_LIBVERSION_VERSION} ) - SET_TARGET_PROPERTIES( opensync PROPERTIES SOVERSION ${OPENSYNC_LIBVERSION_SOVERSION} ) - --SET_TARGET_PROPERTIES( opensync PROPERTIES COMPILE_FLAGS ${SYMBOLS_VISIBILITY} ) -- - IF ( OPENSYNC_UNITTESTS ) - ADD_LIBRARY( opensync-testing SHARED ${libopensync_LIB_SRCS} ) - TARGET_LINK_LIBRARIES( opensync-testing ${GLIB2_LIBRARIES} ${GTHREAD2_LIBRARIES} ${GMODULE2_LIBRARIES} ${LIBXML2_LIBRARIES} ${LIBXSLT_LIBRARIES} ${LIBEXSLT_LIBRARIES} ${SQLITE3_LIBRARIES} ) diff --git a/meta/packages/opensync/libopensync-0.37/no-python-check.patch b/meta/packages/opensync/libopensync-0.37/no-python-check.patch deleted file mode 100644 index 04257bc623..0000000000 --- a/meta/packages/opensync/libopensync-0.37/no-python-check.patch +++ /dev/null @@ -1,16 +0,0 @@ ---- - CMakeLists.txt | 1 - - 1 file changed, 1 deletion(-) - -Index: libopensync-0.37/CMakeLists.txt -=================================================================== ---- libopensync-0.37.orig/CMakeLists.txt 2008-08-18 16:14:24.000000000 +0100 -+++ libopensync-0.37/CMakeLists.txt 2008-10-15 14:00:12.000000000 +0100 -@@ -65,7 +65,6 @@ - FIND_PACKAGE( LibXslt REQUIRED ) - FIND_PACKAGE( LibExslt REQUIRED ) - FIND_PACKAGE( SWIG ) --FIND_PACKAGE( PythonLibs ) - FIND_PACKAGE( Check ) - - ADD_SUBDIRECTORY( opensync ) diff --git a/meta/packages/opensync/libopensync-plugin-evolution2/0.37-fixes.patch b/meta/packages/opensync/libopensync-plugin-evolution2/0.37-fixes.patch deleted file mode 100644 index 4a1802ce17..0000000000 --- a/meta/packages/opensync/libopensync-plugin-evolution2/0.37-fixes.patch +++ /dev/null @@ -1,23 +0,0 @@ -Index: libopensync-plugin-evolution2-0.36/cmake/modules/FindOpenSync.cmake -=================================================================== ---- libopensync-plugin-evolution2-0.36.orig/cmake/modules/FindOpenSync.cmake 2008-10-20 13:07:14.000000000 +0100 -+++ libopensync-plugin-evolution2-0.36/cmake/modules/FindOpenSync.cmake 2008-10-20 13:08:09.000000000 +0100 -@@ -23,15 +23,15 @@ - ENDIF ( OpenSync_FIND_REQUIRED ) - - IF ( OPENSYNC_MIN_VERSION ) -- PKG_SEARCH_MODULE( OPENSYNC ${_pkgconfig_REQUIRED} opensync-1.0>=${OPENSYNC_MIN_VERSION} ) -+ PKG_SEARCH_MODULE( OPENSYNC ${_pkgconfig_REQUIRED} libopensync>=${OPENSYNC_MIN_VERSION} ) - ELSE ( OPENSYNC_MIN_VERSION ) -- PKG_SEARCH_MODULE( OPENSYNC ${_pkgconfig_REQUIRED} opensync-1.0 ) -+ PKG_SEARCH_MODULE( OPENSYNC ${_pkgconfig_REQUIRED} libopensync ) - ENDIF ( OPENSYNC_MIN_VERSION ) - - FIND_PROGRAM( PKGCONFIG_EXECUTABLE NAMES pkg-config ) - - IF ( PKGCONFIG_EXECUTABLE ) -- EXEC_PROGRAM( ${PKGCONFIG_EXECUTABLE} ARGS opensync-1.0 --variable=datadir OUTPUT_VARIABLE _opensync_data_DIR ) -+ EXEC_PROGRAM( ${PKGCONFIG_EXECUTABLE} ARGS libopensync --variable=datadir OUTPUT_VARIABLE _opensync_data_DIR ) - STRING( REGEX REPLACE "[\r\n]" " " _opensync_data_DIR "${_opensync_data_DIR}" ) - ENDIF ( PKGCONFIG_EXECUTABLE ) - diff --git a/meta/packages/opensync/libopensync-plugin-evolution2_0.36.bb b/meta/packages/opensync/libopensync-plugin-evolution2_0.36.bb deleted file mode 100644 index a1c4cb1887..0000000000 --- a/meta/packages/opensync/libopensync-plugin-evolution2_0.36.bb +++ /dev/null @@ -1,7 +0,0 @@ -require libopensync-plugin_0.36.inc - -DEPENDS += " eds-dbus" - -SRC_URI += "file://0.37-fixes.patch;patch=1" - -PR = "r1" diff --git a/meta/packages/opensync/libopensync-plugin-file_0.37.bb b/meta/packages/opensync/libopensync-plugin-file_0.37.bb deleted file mode 100644 index 33a049b7d6..0000000000 --- a/meta/packages/opensync/libopensync-plugin-file_0.37.bb +++ /dev/null @@ -1 +0,0 @@ -require libopensync-plugin_0.36.inc diff --git a/meta/packages/opensync/libopensync-plugin-google-calendar_0.36.bb b/meta/packages/opensync/libopensync-plugin-google-calendar_0.36.bb deleted file mode 100644 index 33a049b7d6..0000000000 --- a/meta/packages/opensync/libopensync-plugin-google-calendar_0.36.bb +++ /dev/null @@ -1 +0,0 @@ -require libopensync-plugin_0.36.inc diff --git a/meta/packages/opensync/libopensync-plugin-irmc_0.36.bb b/meta/packages/opensync/libopensync-plugin-irmc_0.36.bb deleted file mode 100644 index c06de2fde8..0000000000 --- a/meta/packages/opensync/libopensync-plugin-irmc_0.36.bb +++ /dev/null @@ -1,3 +0,0 @@ -require libopensync-plugin_0.36.inc - -DEPENDS += "openobex bluez4" diff --git a/meta/packages/opensync/libopensync-plugin-syncml/fixerror.patch b/meta/packages/opensync/libopensync-plugin-syncml/fixerror.patch deleted file mode 100644 index 7dad889422..0000000000 --- a/meta/packages/opensync/libopensync-plugin-syncml/fixerror.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: libopensync-plugin-syncml-0.38/src/syncml_callbacks.c -=================================================================== ---- libopensync-plugin-syncml-0.38.orig/src/syncml_callbacks.c 2009-07-31 10:30:33.000000000 +0100 -+++ libopensync-plugin-syncml-0.38/src/syncml_callbacks.c 2009-07-31 10:30:39.000000000 +0100 -@@ -405,7 +405,7 @@ - } else { - /* This problem should be fixed with the next SLOW-SYNC. */ - osync_trace(TRACE_EXIT_ERROR, "%s - unexpected Add or Replace command", __func__); -- smlErrorSet(error, SML_ERROR_TEMPORARY, "Unwanted Add or Replace command on second OMA DS session."); -+ smlErrorSet(error, SML_ERROR_GENERIC, "Unwanted Add or Replace command on second OMA DS session."); - return FALSE; - } - } diff --git a/meta/packages/opensync/libopensync-plugin-syncml_0.38.bb b/meta/packages/opensync/libopensync-plugin-syncml_0.38.bb deleted file mode 100644 index d32d62de47..0000000000 --- a/meta/packages/opensync/libopensync-plugin-syncml_0.38.bb +++ /dev/null @@ -1,7 +0,0 @@ -require libopensync-plugin_0.36.inc - -DEPENDS += " libsyncml (>= 0.4.7)" - -SRC_URI += "file://fixerror.patch;patch=1" - -PR = "r1" \ No newline at end of file diff --git a/meta/packages/opensync/libopensync-plugin-vformat_0.37.bb b/meta/packages/opensync/libopensync-plugin-vformat_0.37.bb deleted file mode 100644 index 84a48f21fe..0000000000 --- a/meta/packages/opensync/libopensync-plugin-vformat_0.37.bb +++ /dev/null @@ -1,3 +0,0 @@ -require libopensync-plugin_0.36.inc - -DEPENDS += " check" diff --git a/meta/packages/opensync/libopensync-plugin_0.36.inc b/meta/packages/opensync/libopensync-plugin_0.36.inc deleted file mode 100644 index db6b1fa73a..0000000000 --- a/meta/packages/opensync/libopensync-plugin_0.36.inc +++ /dev/null @@ -1,9 +0,0 @@ -DEPENDS = "libopensync (>= 0.36)" - -SRC_URI = "http://opensync.org/download/releases/${PV}/${P}.tar.bz2" - -inherit cmake - -FILES_${PN} += "${libdir}/opensync*/plugins/*.so \ - ${libdir}/opensync*/formats/*.so \ - ${datadir}/opensync*/defaults/" diff --git a/meta/packages/opensync/libopensync_0.37.bb b/meta/packages/opensync/libopensync_0.37.bb deleted file mode 100644 index e9b8ce202e..0000000000 --- a/meta/packages/opensync/libopensync_0.37.bb +++ /dev/null @@ -1,25 +0,0 @@ -LICENSE = "LGPL" -HOMEPAGE = "http://www.opensync.org/" - -DEPENDS = "sqlite3 libxml2 glib-2.0 check zlib libxslt" - -PR = "r1" - -SRC_URI = "http://opensync.org/download/releases/${PV}/libopensync-${PV}.tar.bz2\ - file://cmake.patch;patch=1 \ - file://build-in-src.patch;patch=1 \ - file://no-python-check.patch;patch=1" - -inherit cmake pkgconfig - -LEAD_SONAME = "libopensync.so" - -FILES_${PN} += " ${libdir}/opensync*/formats/*.so \ - ${libdir}/opensync*/osplugin \ - ${datadir}/opensync*/schemas \ - ${datadir}/opensync*/capabilities \ - ${datadir}/opensync*/descriptions \ - " -FILES_${PN}-dbg += " ${libdir}/opensync*/formats/.debug/*.so \ - ${libdir}/opensync*/.debug/osplugin " - diff --git a/meta/packages/opensync/libsyncml/build-in-src.patch b/meta/packages/opensync/libsyncml/build-in-src.patch deleted file mode 100644 index d8106bdfc7..0000000000 --- a/meta/packages/opensync/libsyncml/build-in-src.patch +++ /dev/null @@ -1,19 +0,0 @@ ---- - CMakeLists.txt | 4 ---- - 1 file changed, 4 deletions(-) - -Index: libsyncml-0.5.4/CMakeLists.txt -=================================================================== ---- libsyncml-0.5.4.orig/CMakeLists.txt 2009-07-31 09:56:16.000000000 +0100 -+++ libsyncml-0.5.4/CMakeLists.txt 2009-07-31 09:57:33.000000000 +0100 -@@ -72,10 +72,6 @@ - CHECK_TYPE_SIZE( uint32_t UINT32_T ) - CHECK_TYPE_SIZE( uint8_t UINT8_T ) - --# ensure out od source build --INCLUDE( MacroEnsureOutOfSourceBuild ) --MACRO_ENSURE_OUT_OF_SOURCE_BUILD("${CMAKE_PROJECT_NAME} doesn't allow to build within the source directory. Please, create a seperate build directory and run 'cmake ${PROJECT_SOURCE_DIR} [options]'!") -- - # find requirements - SET ( GLIB2_MIN_VERSION "2.12" ) - SET ( OPENOBEX_MIN_VERSION "1.1" ) diff --git a/meta/packages/opensync/libsyncml_0.5.4.bb b/meta/packages/opensync/libsyncml_0.5.4.bb deleted file mode 100644 index 7feb5e0f18..0000000000 --- a/meta/packages/opensync/libsyncml_0.5.4.bb +++ /dev/null @@ -1,17 +0,0 @@ -DESCRIPTION = "Libsyncml is a implementation of the SyncML protocol." -HOMEPAGE = "http://libsyncml.opensync.org/" -LICENSE = "LGPL" -DEPENDS = "sed-native wbxml2 libsoup libxml2 bluez4 openobex check" -PR = "r1" - -SRC_URI = "${SOURCEFORGE_MIRROR}/libsyncml/0.5.4/libsyncml-0.5.4.tar.bz2 \ - file://build-in-src.patch;patch=1" - -inherit cmake pkgconfig - -PACKAGES += "${PN}-tools" - -FILES_${PN}-tools = "${bindir}" -FILES_${PN} = "${libdir}/*.so.*" - -export VERBOSE=1 \ No newline at end of file diff --git a/meta/packages/opensync/msynctool_0.37.bb b/meta/packages/opensync/msynctool_0.37.bb deleted file mode 100644 index 773166b3be..0000000000 --- a/meta/packages/opensync/msynctool_0.37.bb +++ /dev/null @@ -1,7 +0,0 @@ -SRC_URI = "http://www.opensync.org/download/releases/${PV}/msynctool-${PV}.tar.bz2" - -LICENSE = "GPL" -DEPENDS = "libopensync glib-2.0" -HOMEPAGE = "http://www.opensync.org/" - -inherit cmake pkgconfig diff --git a/meta/packages/pam/libpam-1.1.1/99_pam b/meta/packages/pam/libpam-1.1.1/99_pam deleted file mode 100644 index 97e990d10b..0000000000 --- a/meta/packages/pam/libpam-1.1.1/99_pam +++ /dev/null @@ -1 +0,0 @@ -d root root 0755 /var/run/sepermit none diff --git a/meta/packages/pam/libpam-1.1.1/disable_crossbinary.patch b/meta/packages/pam/libpam-1.1.1/disable_crossbinary.patch deleted file mode 100644 index 43359b08fe..0000000000 --- a/meta/packages/pam/libpam-1.1.1/disable_crossbinary.patch +++ /dev/null @@ -1,34 +0,0 @@ -padout should be compiled using the native compiler but isn't. -Disable this piece of documentation for now. - -RP - -Index: Linux-PAM-1.0.2/doc/specs/Makefile.am -=================================================================== ---- Linux-PAM-1.0.2.orig/doc/specs/Makefile.am 2008-11-04 21:06:23.000000000 +0000 -+++ Linux-PAM-1.0.2/doc/specs/Makefile.am 2008-11-04 21:07:06.000000000 +0000 -@@ -2,21 +2,8 @@ - # Copyright (c) 2005, 2006 Thorsten Kukuk - # - --CLEANFILES = draft-morgan-pam-current.txt *~ -+CLEANFILES = *~ - --EXTRA_DIST = draft-morgan-pam.raw std-agent-id.raw rfc86.0.txt -+EXTRA_DIST = std-agent-id.raw rfc86.0.txt - --draft-morgan-pam-current.txt: padout draft-morgan-pam.raw -- ./padout < $(srcdir)/draft-morgan-pam.raw > draft-morgan-pam-current.txt -- --AM_YFLAGS = -d -- --BUILT_SOURCES = parse_y.h -- --noinst_PROGRAMS = padout -- --padout_SOURCES = parse_l.l parse_y.y -- --padout_LDADD = @LEXLIB@ -- --doc_DATA = draft-morgan-pam-current.txt rfc86.0.txt -+doc_DATA = rfc86.0.txt diff --git a/meta/packages/pam/libpam-1.1.1/pam.d/common-account b/meta/packages/pam/libpam-1.1.1/pam.d/common-account deleted file mode 100644 index 316b17337b..0000000000 --- a/meta/packages/pam/libpam-1.1.1/pam.d/common-account +++ /dev/null @@ -1,25 +0,0 @@ -# -# /etc/pam.d/common-account - authorization settings common to all services -# -# This file is included from other service-specific PAM config files, -# and should contain a list of the authorization modules that define -# the central access policy for use on the system. The default is to -# only deny service to users whose accounts are expired in /etc/shadow. -# -# As of pam 1.0.1-6, this file is managed by pam-auth-update by default. -# To take advantage of this, it is recommended that you configure any -# local modules either before or after the default block, and use -# pam-auth-update to manage selection of other modules. See -# pam-auth-update(8) for details. -# - -# here are the per-package modules (the "Primary" block) -account [success=1 new_authtok_reqd=done default=ignore] pam_unix.so -# here's the fallback if no module succeeds -account requisite pam_deny.so -# prime the stack with a positive return value if there isn't one already; -# this avoids us returning an error just because nothing sets a success code -# since the modules above will each just jump around -account required pam_permit.so -# and here are more per-package modules (the "Additional" block) -# end of pam-auth-update config diff --git a/meta/packages/pam/libpam-1.1.1/pam.d/common-auth b/meta/packages/pam/libpam-1.1.1/pam.d/common-auth deleted file mode 100644 index 460b69f198..0000000000 --- a/meta/packages/pam/libpam-1.1.1/pam.d/common-auth +++ /dev/null @@ -1,18 +0,0 @@ -# -# /etc/pam.d/common-auth - authentication settings common to all services -# -# This file is included from other service-specific PAM config files, -# and should contain a list of the authentication modules that define -# the central authentication scheme for use on the system -# (e.g., /etc/shadow, LDAP, Kerberos, etc.). The default is to use the -# traditional Unix authentication mechanisms. - -# here are the per-package modules (the "Primary" block) -auth [success=1 default=ignore] pam_unix.so nullok_secure -# here's the fallback if no module succeeds -auth requisite pam_deny.so -# prime the stack with a positive return value if there isn't one already; -# this avoids us returning an error just because nothing sets a success code -# since the modules above will each just jump around -auth required pam_permit.so -# and here are more per-package modules (the "Additional" block) diff --git a/meta/packages/pam/libpam-1.1.1/pam.d/common-password b/meta/packages/pam/libpam-1.1.1/pam.d/common-password deleted file mode 100644 index 3896057328..0000000000 --- a/meta/packages/pam/libpam-1.1.1/pam.d/common-password +++ /dev/null @@ -1,26 +0,0 @@ -# -# /etc/pam.d/common-password - password-related modules common to all services -# -# This file is included from other service-specific PAM config files, -# and should contain a list of modules that define the services to be -# used to change user passwords. The default is pam_unix. - -# Explanation of pam_unix options: -# -# The "sha512" option enables salted SHA512 passwords. Without this option, -# the default is Unix crypt. Prior releases used the option "md5". -# -# The "obscure" option replaces the old `OBSCURE_CHECKS_ENAB' option in -# login.defs. -# -# See the pam_unix manpage for other options. - -# here are the per-package modules (the "Primary" block) -password [success=1 default=ignore] pam_unix.so obscure sha512 -# here's the fallback if no module succeeds -password requisite pam_deny.so -# prime the stack with a positive return value if there isn't one already; -# this avoids us returning an error just because nothing sets a success code -# since the modules above will each just jump around -password required pam_permit.so -# and here are more per-package modules (the "Additional" block) diff --git a/meta/packages/pam/libpam-1.1.1/pam.d/common-session b/meta/packages/pam/libpam-1.1.1/pam.d/common-session deleted file mode 100644 index a594dd9d90..0000000000 --- a/meta/packages/pam/libpam-1.1.1/pam.d/common-session +++ /dev/null @@ -1,19 +0,0 @@ -# -# /etc/pam.d/common-session - session-related modules common to all services -# -# This file is included from other service-specific PAM config files, -# and should contain a list of modules that define tasks to be performed -# at the start and end of sessions of *any* kind (both interactive and -# non-interactive). -# - -# here are the per-package modules (the "Primary" block) -session [default=1] pam_permit.so -# here's the fallback if no module succeeds -session requisite pam_deny.so -# prime the stack with a positive return value if there isn't one already; -# this avoids us returning an error just because nothing sets a success code -# since the modules above will each just jump around -session required pam_permit.so -# and here are more per-package modules (the "Additional" block) -session required pam_unix.so diff --git a/meta/packages/pam/libpam-1.1.1/pam.d/common-session-noninteractive b/meta/packages/pam/libpam-1.1.1/pam.d/common-session-noninteractive deleted file mode 100644 index b110bb2b49..0000000000 --- a/meta/packages/pam/libpam-1.1.1/pam.d/common-session-noninteractive +++ /dev/null @@ -1,19 +0,0 @@ -# -# /etc/pam.d/common-session-noninteractive - session-related modules -# common to all non-interactive services -# -# This file is included from other service-specific PAM config files, -# and should contain a list of modules that define tasks to be performed -# at the start and end of all non-interactive sessions. -# - -# here are the per-package modules (the "Primary" block) -session [default=1] pam_permit.so -# here's the fallback if no module succeeds -session requisite pam_deny.so -# prime the stack with a positive return value if there isn't one already; -# this avoids us returning an error just because nothing sets a success code -# since the modules above will each just jump around -session required pam_permit.so -# and here are more per-package modules (the "Additional" block) -session required pam_unix.so diff --git a/meta/packages/pam/libpam-1.1.1/pam.d/other b/meta/packages/pam/libpam-1.1.1/pam.d/other deleted file mode 100644 index 6e40cd0c02..0000000000 --- a/meta/packages/pam/libpam-1.1.1/pam.d/other +++ /dev/null @@ -1,27 +0,0 @@ -# -# /etc/pam.d/other - specify the PAM fallback behaviour -# -# Note that this file is used for any unspecified service; for example -#if /etc/pam.d/cron specifies no session modules but cron calls -#pam_open_session, the session module out of /etc/pam.d/other is -#used. - -#If you really want nothing to happen then use pam_permit.so or -#pam_deny.so as appropriate. - -# We use pam_warn.so to generate syslog notes that the 'other' -#fallback rules are being used (as a hint to suggest you should setup -#specific PAM rules for the service and aid to debugging). We then -#fall back to the system default in /etc/pam.d/common-* - -auth required pam_warn.so -auth include common-auth - -account required pam_warn.so -account include common-account - -password required pam_warn.so -password include common-password - -session required pam_warn.so -session include common-session diff --git a/meta/packages/pam/libpam_1.1.1.bb b/meta/packages/pam/libpam_1.1.1.bb deleted file mode 100644 index 536a0f5ce9..0000000000 --- a/meta/packages/pam/libpam_1.1.1.bb +++ /dev/null @@ -1,73 +0,0 @@ -DESCRIPTION = "Linux-PAM (Pluggable Authentication Modules for Linux), Basically, it is a flexible mechanism for authenticating users" -HOMEPAGE = "http://www.kernel.org/pub/linux/libs/pam/" -BUGTRACKER = "http://sourceforge.net/projects/pam/support" -# PAM allows dual licensed under GPL and BSD. -# /etc/pam.d comes from Debian libpam-runtime in 2009-11 (at that time -# libpam-runtime-1.0.1 is GPLv2+), by openembedded -LICENSE = "GPLv2+ | BSD" -PR = "r1" - -DEPENDS = "bison flex" -RDEPENDS_${PN}-runtime = "libpam pam-plugin-deny pam-plugin-permit pam-plugin-warn pam-plugin-unix" -RRECOMMENDS_${PN} = "libpam-runtime" - -SRC_URI = "http://www.kernel.org/pub/linux/libs/pam/library/Linux-PAM-${PV}.tar.bz2 \ - file://disable_crossbinary.patch \ - file://99_pam \ - file://pam.d/*" - -EXTRA_OECONF = "--with-db-uniquename=_pam \ - --includedir=${includedir}/security \ - --libdir=${base_libdir} \ - --disable-regenerate-docu" -CFLAGS_append = " -fPIC " - -S = "${WORKDIR}/Linux-PAM-${PV}" - -inherit autotools gettext - -PACKAGES += "${PN}-runtime" -FILES_${PN} = "${base_libdir}/lib*${SOLIBS}" -FILES_${PN}-dbg += "${base_libdir}/security/.debug \ - ${base_libdir}/security/pam_filter/.debug" -FILES_${PN}-dev += "${base_libdir}/security/*.la ${base_libdir}/*.la ${base_libdir}/lib*${SOLIBSDEV}" -FILES_${PN}-runtime = "${sysconfdir}" - -PACKAGES_DYNAMIC += " pam-plugin-*" - -python populate_packages_prepend () { - import os.path - - def pam_plugin_append_file(pn, dir, file): - nf = os.path.join(dir, file) - of = bb.data.getVar('FILES_' + pn, d, True) - if of: - nf = of + " " + nf - bb.data.setVar('FILES_' + pn, nf, d) - - dvar = bb.data.expand('${WORKDIR}/package', d, True) - pam_libdir = bb.data.expand('${base_libdir}/security', d) - pam_sbindir = bb.data.expand('${sbindir}', d) - pam_filterdir = bb.data.expand('${base_libdir}/security/pam_filter', d) - - do_split_packages(d, pam_libdir, '^pam(.*)\.so$', 'pam-plugin%s', 'PAM plugin for %s', extra_depends='') - pam_plugin_append_file('pam-plugin-unix', pam_sbindir, 'unix_chkpwd') - pam_plugin_append_file('pam-plugin-unix', pam_sbindir, 'unix_update') - pam_plugin_append_file('pam-plugin-tally', pam_sbindir, 'pam_tally') - pam_plugin_append_file('pam-plugin-tally2', pam_sbindir, 'pam_tally2') - pam_plugin_append_file('pam-plugin-timestamp', pam_sbindir, 'pam_timestamp_check') - pam_plugin_append_file('pam-plugin-mkhomedir', pam_sbindir, 'mkhomedir_helper') - do_split_packages(d, pam_filterdir, '^(.*)$', 'pam-filter-%s', 'PAM filter for %s', extra_depends='') -} - -do_install() { - autotools_do_install - - # don't install /var/run when populating rootfs. Do it through volatile - rm -rf ${D}/var - install -d ${D}${sysconfdir}/default/volatiles - install -m 0644 ${WORKDIR}/99_pam ${D}/etc/default/volatiles - - install -d ${D}${sysconfdir}/pam.d/ - install -m 0644 ${WORKDIR}/pam.d/* ${D}${sysconfdir}/pam.d/ -} diff --git a/meta/packages/parted/parted-1.9.0/no_check.patch b/meta/packages/parted/parted-1.9.0/no_check.patch deleted file mode 100644 index 24a328ceea..0000000000 --- a/meta/packages/parted/parted-1.9.0/no_check.patch +++ /dev/null @@ -1,18 +0,0 @@ -If check is detected, it makes the builds non-determinstic so just force -it to be disabled. - -RP - 4/11/08 - -Index: parted-1.9.0/configure.ac -=================================================================== ---- parted-1.9.0.orig/configure.ac 2009-07-23 18:52:08.000000000 +0100 -+++ parted-1.9.0/configure.ac 2010-02-02 14:13:56.013905093 +0000 -@@ -477,7 +477,7 @@ - AM_CONDITIONAL([BUILD_LINUX], [test "$OS" = linux]) - - dnl check for "check", unit testing library/header --PKG_CHECK_MODULES([CHECK], [check >= 0.9.3], have_check=yes, have_check=no) -+have_check=no - if test "$have_check" != "yes"; then - AC_MSG_RESULT([Unable to locate check version 0.9.3 or higher: not building]) - fi diff --git a/meta/packages/parted/parted-1.9.0/syscalls.patch b/meta/packages/parted/parted-1.9.0/syscalls.patch deleted file mode 100644 index 6be49968f3..0000000000 --- a/meta/packages/parted/parted-1.9.0/syscalls.patch +++ /dev/null @@ -1,53 +0,0 @@ ---- - libparted/arch/linux.c | 13 +++++++++++++ - 1 file changed, 13 insertions(+) - -Index: parted-1.9.0/libparted/arch/linux.c -=================================================================== ---- parted-1.9.0.orig/libparted/arch/linux.c 2009-07-23 18:52:08.000000000 +0100 -+++ parted-1.9.0/libparted/arch/linux.c 2010-02-02 14:14:16.523904768 +0000 -@@ -17,6 +17,8 @@ - - #define PROC_DEVICES_BUFSIZ 16384 - -+#include -+ - #include - #include - -@@ -1477,12 +1479,14 @@ - - #if SIZEOF_OFF_T < 8 - -+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20) - static _syscall5(int,_llseek, - unsigned int, fd, - unsigned long, offset_high, - unsigned long, offset_low, - loff_t*, result, - unsigned int, origin) -+#endif - - loff_t - llseek (unsigned int fd, loff_t offset, unsigned int whence) -@@ -1490,11 +1494,20 @@ - loff_t result; - int retval; - -+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20) - retval = _llseek(fd, - ((unsigned long long)offset) >> 32, - ((unsigned long long)offset) & 0xffffffff, - &result, - whence); -+#else -+ retval = syscall(__NR__llseek, fd, -+ ((unsigned long long)offset) >> 32, -+ ((unsigned long long)offset) & 0xffffffff, -+ &result, -+ whence); -+#endif -+ - return (retval==-1 ? (loff_t) retval : result); - } - diff --git a/meta/packages/parted/parted_1.9.0.bb b/meta/packages/parted/parted_1.9.0.bb deleted file mode 100644 index f2a265187f..0000000000 --- a/meta/packages/parted/parted_1.9.0.bb +++ /dev/null @@ -1,16 +0,0 @@ -DESCRIPTION = "parted, the GNU partition resizing program" -HOMEPAGE = "http://www.gnu.org/software/parted/parted.html" -LICENSE = "GPLv2" -SECTION = "console/tools" -DEPENDS = "readline e2fsprogs" -PR = "r3" - -SRC_URI = "${GNU_MIRROR}/parted/parted-${PV}.tar.gz \ - file://no_check.patch;patch=1 \ - file://syscalls.patch;patch=1 " - -EXTRA_OECONF = "--disable-Werror --disable-device-mapper" - -inherit autotools pkgconfig gettext - -BBCLASSEXTEND = "native" diff --git a/meta/packages/pm-utils/pm-utils_1.3.0.bb b/meta/packages/pm-utils/pm-utils_1.3.0.bb deleted file mode 100644 index cb90f87acc..0000000000 --- a/meta/packages/pm-utils/pm-utils_1.3.0.bb +++ /dev/null @@ -1,16 +0,0 @@ -SECTION = "base" -DESCRIPTION = "PM hooks" -LICENSE="GPL" - -PR = "r0" - -SRC_URI = "http://pm-utils.freedesktop.org/releases/pm-utils-${PV}.tar.gz" - -inherit pkgconfig autotools - -FILES_${PN}-dbg += "${libdir}/pm-utils/bin/.debug \ - ${datadir}/doc/pm-utils/README.debugging" - -do_configure_prepend () { - autoreconf -f -i -s -} diff --git a/meta/packages/polkit/polkit-gnome_0.96.bb b/meta/packages/polkit/polkit-gnome_0.96.bb deleted file mode 100644 index e103e631c8..0000000000 --- a/meta/packages/polkit/polkit-gnome_0.96.bb +++ /dev/null @@ -1,18 +0,0 @@ -HOMEPAGE = "http://www.packagekit.org/" -DEPENDS = "polkit dbus-glib gconf gtk+" - -SRC_URI = "http://hal.freedesktop.org/releases/polkit-gnome-${PV}.tar.bz2 \ - " - -EXTRA_OECONF = " --disable-scrollkeeper \ - --disable-man-pages \ - --disable-examples \ - --disable-gtk-doc \ - --disable-introspection " - -inherit autotools pkgconfig - -FILES_${PN} += " ${datadir}/dbus-1 \ - ${datadir}/PolicyKit \ - " - diff --git a/meta/packages/polkit/polkit_0.96.bb b/meta/packages/polkit/polkit_0.96.bb deleted file mode 100644 index e6e030b19a..0000000000 --- a/meta/packages/polkit/polkit_0.96.bb +++ /dev/null @@ -1,14 +0,0 @@ -DESCRIPTION = "The polkit package is an application-level toolkit for defining and handling the policy that allows unprivileged processes to speak to privileged processes." -HOMEPAGE = "http://code.google.com/p/polkit/" -LICENSE = "LGPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=155db86cdbafa7532b41f390409283eb \ - file://src/polkit/polkit.h;md5=8aa8924570fc5570d20e4a4ad5d2db51 \ - file://docs/polkit/html/license.html;md5=4c17ef1587e0f096c82157160d4e340e" - -SRC_URI = "http://hal.freedesktop.org/releases/polkit-${PV}.tar.gz" -PR = "r2" -DEPENDS = "libpam expat dbus-glib eggdbus intltool" -RDEPENDS = "libpam" -EXTRA_OECONF = "--with-authfw=pam --with-os-type=moblin --disable-man-pages --disable-gtk-doc --disable-introspection" - -inherit autotools pkgconfig diff --git a/meta/packages/pong-clock/pong-clock/pong-clock-no-flicker.c b/meta/packages/pong-clock/pong-clock/pong-clock-no-flicker.c deleted file mode 100644 index 41cebc58a7..0000000000 --- a/meta/packages/pong-clock/pong-clock/pong-clock-no-flicker.c +++ /dev/null @@ -1,410 +0,0 @@ -/* - * Pong Clock - A clock that plays pong. - * See http://mocoloco.com/archives/001766.php for the inspiration. - * - * Copyright (C) 2005 Matthew Allum - * - * Author: Matthew Allum mallum@openedhand.com - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - * - */ - -#include -#include -#include -#include -#include -#include -#include -#include - -#include -#include -#include - -/* Tweak values for different hw setups */ - -#define FPS 50 -#define RESX 40 -#define RESY 40 -#define TO_MISS_SECS 55 -#define BALLDX 16 -#define BALLDY 4 - - -typedef struct PongClock -{ - Display *xdpy; - int xscreen; - Window xwin, xwin_root; - Pixmap backbuffer; - GC xgc; - int xwin_width, xwin_height; - int pixelw, pixelh; - - int ball_x, ball_y, ball_dx, ball_dy; - int bata_y, batb_y; - Bool bata_to_miss, batb_to_miss; - -} -PongClock; - -void -get_time(int *hour, int *min, int *sec) -{ - struct timeval tv; - struct tm *localTime = NULL; - time_t actualTime; - - gettimeofday(&tv, 0); - actualTime = tv.tv_sec; - localTime = localtime(&actualTime); - - if (hour) - *hour = localTime->tm_hour; - - if (min) - *min = localTime->tm_min; - - if (sec) - *sec = localTime->tm_sec; -} - -void -draw_rect (PongClock *pong_clock, - int x, - int y, - int width, - int height) -{ - XFillRectangle (pong_clock->xdpy, - pong_clock->backbuffer, - pong_clock->xgc, - x * pong_clock->pixelw, - y * pong_clock->pixelh, - width * pong_clock->pixelw, - height * pong_clock->pixelh); -} - -void -draw_field (PongClock *pong_clock) -{ - int i; - - draw_rect (pong_clock, 0, 0, RESX+1, 1); - draw_rect (pong_clock, 0, RESY-1, RESX+1, 1); - - for (i=0; i < RESY/2; i++) - draw_rect (pong_clock, (RESX/2)-1, i*2, 2, 1); -} - -void -draw_digit (PongClock *pong_clock, - int x, - int y, - int digit) -{ - int digits[] = { 0x1f8c63f, 0x1f21086, 0x1f0fe1f, 0x1f87e1f, 0x1087e31, - 0x1f87c3f, 0x1f8fc3f, 0x84421f, 0x1f8fe3f, 0x1087e3f }; - - XRectangle rects[5*5]; - int i,j,k; - - i = 0; - - for (k=0; k<5; k++) - for (j=0; j<5; j++) - if (digits[digit] & (1 << ((k*5)+j))) - { - rects[i].x = (x + j) * pong_clock->pixelw; - rects[i].y = (y + k) * pong_clock->pixelh; - rects[i].width = pong_clock->pixelw; - rects[i].height = pong_clock->pixelh; - i++; - } - - XFillRectangles (pong_clock->xdpy, - pong_clock->backbuffer, - pong_clock->xgc, - rects, i); -} - -void -draw_time (PongClock *pong_clock) -{ - int hour, min; - - get_time(&hour, &min, NULL); - - draw_digit (pong_clock, - (RESX/2) - 14, - 5, - hour / 10 ); - - draw_digit (pong_clock, - (RESX/2) - 8, - 5, - hour % 10 ); - - draw_digit (pong_clock, - (RESX/2) + 3, - 5, - min / 10 ); - - draw_digit (pong_clock, - (RESX/2) + 9, - 5, - min % 10 ); -} - -void -draw_bat_and_ball (PongClock *pong_clock) -{ - /* ball */ - - XFillRectangle (pong_clock->xdpy, - pong_clock->backbuffer, - pong_clock->xgc, - pong_clock->ball_x, - pong_clock->ball_y, - pong_clock->pixelw, - pong_clock->pixelh); - - /* bat a */ - - XFillRectangle (pong_clock->xdpy, - pong_clock->backbuffer, - pong_clock->xgc, - 0, - pong_clock->bata_y - (2 * pong_clock->pixelh), - pong_clock->pixelw, - pong_clock->pixelh * 5); - - /* bat b */ - - XFillRectangle (pong_clock->xdpy, - pong_clock->backbuffer, - pong_clock->xgc, - (pong_clock->xwin_width - pong_clock->pixelw), - pong_clock->batb_y - (2 * pong_clock->pixelh), - pong_clock->pixelw, - pong_clock->pixelh * 5); - -} - -void -update_state (PongClock *pong_clock) -{ - int sec, min, hour; - - get_time(&hour, &min, &sec); - - /* Check ball is on field and no ones dues to miss a shot. - */ - if ( (pong_clock->ball_x < 0 && !pong_clock->bata_to_miss) - || (pong_clock->ball_x > (pong_clock->xwin_width - pong_clock->pixelw) - && !pong_clock->batb_to_miss) ) - pong_clock->ball_dx *= -1; - - if ((pong_clock->ball_y < pong_clock->pixelh) - || pong_clock->ball_y > (pong_clock->xwin_height - (2*pong_clock->pixelh))) - pong_clock->ball_dy *= -1; - - pong_clock->ball_x += pong_clock->ball_dx; - pong_clock->ball_y += pong_clock->ball_dy; - - /* Set up someone to miss if we getting close to an hour or min. - */ - if (sec > TO_MISS_SECS) - { - if (min == 59) - pong_clock->batb_to_miss = True; - else - pong_clock->bata_to_miss = True; - } - else - { - /* Reset the game */ - if (pong_clock->bata_to_miss) - { - pong_clock->bata_to_miss = False; - pong_clock->ball_y = pong_clock->bata_y; - pong_clock->ball_x = pong_clock->pixelw; - pong_clock->ball_dx *= -1; - } - - if (pong_clock->batb_to_miss) - { - pong_clock->batb_to_miss = False; - pong_clock->ball_y = pong_clock->batb_y; - pong_clock->ball_x = pong_clock->xwin_width - pong_clock->pixelw; - pong_clock->ball_dx *= -1; - } - } - - /* Keep bats on field and only move in not setup to miss */ - if (pong_clock->ball_y >= (3*pong_clock->pixelh) - && pong_clock->ball_y <= (pong_clock->xwin_height - (5*pong_clock->pixelh))) - { - if (!pong_clock->batb_to_miss) - pong_clock->batb_y = pong_clock->ball_y; - - if (!pong_clock->bata_to_miss) - pong_clock->bata_y = pong_clock->ball_y; - } -} - -void -draw_frame (PongClock *pong_clock) -{ - update_state (pong_clock); - - /* Clear playfield */ - XSetForeground (pong_clock->xdpy, - pong_clock->xgc, - BlackPixel(pong_clock->xdpy, - pong_clock->xscreen)); - - XFillRectangle (pong_clock->xdpy, - pong_clock->backbuffer, - pong_clock->xgc, - 0, 0, - pong_clock->xwin_width, - pong_clock->xwin_height); - - XSetForeground (pong_clock->xdpy, - pong_clock->xgc, - WhitePixel(pong_clock->xdpy, - pong_clock->xscreen)); - - draw_field (pong_clock); - - draw_time (pong_clock); - - draw_bat_and_ball (pong_clock); - - /* flip 'backbuffer' */ - XSetWindowBackgroundPixmap (pong_clock->xdpy, - pong_clock->xwin, - pong_clock->backbuffer); - XClearWindow(pong_clock->xdpy, pong_clock->xwin); - - XSync(pong_clock->xdpy, False); -} - -int -main (int argc, char **argv) -{ - XGCValues gcv; - Atom atoms_WINDOW_STATE, atoms_WINDOW_STATE_FULLSCREEN; - PongClock *pong_clock; - - pong_clock = malloc(sizeof(PongClock)); - memset(pong_clock, 0, sizeof(PongClock)); - - if ((pong_clock->xdpy = XOpenDisplay(getenv("DISPLAY"))) == NULL) { - fprintf(stderr, "Cannot connect to X server on display %s.", - getenv("DISPLAY")); - exit(-1); - } - - pong_clock->xscreen = DefaultScreen(pong_clock->xdpy); - pong_clock->xwin_root = DefaultRootWindow(pong_clock->xdpy); - pong_clock->xwin_width = DisplayWidth(pong_clock->xdpy, - pong_clock->xscreen); - pong_clock->xwin_height = DisplayHeight(pong_clock->xdpy, - pong_clock->xscreen); - - pong_clock->pixelw = pong_clock->xwin_width / RESX; - pong_clock->pixelh = pong_clock->xwin_height / RESY; - - pong_clock->ball_x = 0; - pong_clock->ball_y = pong_clock->xwin_height / 2; - - pong_clock->ball_dx = BALLDX; - pong_clock->ball_dy = BALLDY; - - pong_clock->batb_y = pong_clock->bata_y = pong_clock->ball_y; - - gcv.background = BlackPixel(pong_clock->xdpy, - pong_clock->xscreen); - gcv.foreground = WhitePixel(pong_clock->xdpy, - pong_clock->xscreen); - gcv.graphics_exposures = False; - - pong_clock->xgc = XCreateGC (pong_clock->xdpy, pong_clock->xwin_root, - GCForeground|GCBackground|GCGraphicsExposures, - &gcv); - - atoms_WINDOW_STATE - = XInternAtom(pong_clock->xdpy, "_NET_WM_STATE",False); - atoms_WINDOW_STATE_FULLSCREEN - = XInternAtom(pong_clock->xdpy, "_NET_WM_STATE_FULLSCREEN",False); - - pong_clock->xwin = XCreateSimpleWindow(pong_clock->xdpy, - pong_clock->xwin_root, - 0, 0, - pong_clock->xwin_width, - pong_clock->xwin_height, - 0, - WhitePixel(pong_clock->xdpy, - pong_clock->xscreen), - BlackPixel(pong_clock->xdpy, - pong_clock->xscreen)); - - pong_clock->backbuffer = XCreatePixmap(pong_clock->xdpy, - pong_clock->xwin_root, - pong_clock->xwin_width, - pong_clock->xwin_height, - DefaultDepth(pong_clock->xdpy, - pong_clock->xscreen)); - - XSelectInput(pong_clock->xdpy, pong_clock->xwin, KeyPressMask); - - - /* Set the hints for fullscreen */ - XChangeProperty(pong_clock->xdpy, - pong_clock->xwin, - atoms_WINDOW_STATE, - XA_ATOM, - 32, - PropModeReplace, - (unsigned char *) &atoms_WINDOW_STATE_FULLSCREEN, 1); - - XMapWindow(pong_clock->xdpy, pong_clock->xwin); - - while (True) - { - struct timeval timeout; - XEvent xev; - - timeout.tv_sec = 0; - timeout.tv_usec = 1000000 / FPS; - select (0, NULL, NULL, NULL, &timeout); - - draw_frame (pong_clock); - - XFlush(pong_clock->xdpy); - - if (XPending(pong_clock->xdpy)) - { - if (XCheckMaskEvent(pong_clock->xdpy, - KeyPressMask, - &xev)) - exit(-1); - } - } -} diff --git a/meta/packages/pong-clock/pong-clock_1.0.bb b/meta/packages/pong-clock/pong-clock_1.0.bb deleted file mode 100644 index 571a90dbd3..0000000000 --- a/meta/packages/pong-clock/pong-clock_1.0.bb +++ /dev/null @@ -1,16 +0,0 @@ -DESCRIPTION = "A clock combined with a game of pong" -LICENCE = "GPLv2" -DEPENDS = "virtual/libx11 xdmcp xau" - -SRC_URI = "file://pong-clock-no-flicker.c" - -S = "${WORKDIR}" - -do_compile () { - ${CC} -o pong-clock pong-clock-no-flicker.c `pkg-config --cflags --libs x11 xau xdmcp` -} - -do_install () { - install -d ${D}${bindir} - install -m 0755 pong-clock ${D}${bindir} -} \ No newline at end of file diff --git a/meta/packages/poppler/poppler-data_0.1.bb b/meta/packages/poppler/poppler-data_0.1.bb deleted file mode 100644 index ca22e4dba0..0000000000 --- a/meta/packages/poppler/poppler-data_0.1.bb +++ /dev/null @@ -1,16 +0,0 @@ -DESCRIPTION = "Poppler is a PDF rendering library based on the xpdf-3.0 code base." -LICENSE = "Adobe" -PR = "r0" - -SRC_URI = "http://poppler.freedesktop.org/${PN}-${PV}.tar.gz" - -do_compile() { -} - -do_install() { - oe_runmake install DESTDIR=${D} -} - -FILES_${PN} += "${datadir}" -PACKAGE_ARCH = "all" - diff --git a/meta/packages/poppler/poppler-fpu.inc b/meta/packages/poppler/poppler-fpu.inc deleted file mode 100644 index a26273020a..0000000000 --- a/meta/packages/poppler/poppler-fpu.inc +++ /dev/null @@ -1,6 +0,0 @@ - -def get_poppler_fpu_setting(bb, d): - if bb.data.getVar('TARGET_FPU', d, 1) in [ 'soft' ]: - return "--enable-fixedpoint" - return "" - diff --git a/meta/packages/poppler/poppler.inc b/meta/packages/poppler/poppler.inc deleted file mode 100644 index 645e734e8b..0000000000 --- a/meta/packages/poppler/poppler.inc +++ /dev/null @@ -1,18 +0,0 @@ -DESCRIPTION = "Poppler is a PDF rendering library based on the xpdf-3.0 code base." -DEPENDS = "fontconfig jpeg zlib gtk+ cairo" -LICENSE = "GPL" -PR = "r1" - -SRC_URI = "http://poppler.freedesktop.org/${PN}-${PV}.tar.gz" - -inherit autotools pkgconfig - -EXTRA_OECONF = " --enable-xpdf-headers \ - --disable-gtk-test \ - --disable-poppler-qt --disable-poppler-qt4 \ - --enable-zlib \ - " - -#check for TARGET_FPU=soft and inform configure of the result so it can disable some floating points -require poppler-fpu.inc -EXTRA_OECONF += "${@get_poppler_fpu_setting(bb, d)}" diff --git a/meta/packages/poppler/poppler_0.9.2.bb b/meta/packages/poppler/poppler_0.9.2.bb deleted file mode 100644 index 92c25bc0ac..0000000000 --- a/meta/packages/poppler/poppler_0.9.2.bb +++ /dev/null @@ -1,2 +0,0 @@ -require poppler.inc -PR = "r2" diff --git a/meta/packages/popt/popt_1.16.bb b/meta/packages/popt/popt_1.16.bb deleted file mode 100644 index 347c0fc4a4..0000000000 --- a/meta/packages/popt/popt_1.16.bb +++ /dev/null @@ -1,14 +0,0 @@ -DESCRIPTION = "The popt library for parsing command line options." -HOMEPAGE = "http://rpm5.org/" -SECTION = "libs" -DEPENDS = "gettext" - -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=cb0613c30af2a8249b8dcc67d3edb06d" -PR = "r0" - -SRC_URI = "http://rpm5.org/files/popt/popt-${PV}.tar.gz" - -inherit autotools - -BBCLASSEXTEND = "native" diff --git a/meta/packages/portmap/portmap-6.0/destdir-no-strip.patch b/meta/packages/portmap/portmap-6.0/destdir-no-strip.patch deleted file mode 100644 index a1563c7141..0000000000 --- a/meta/packages/portmap/portmap-6.0/destdir-no-strip.patch +++ /dev/null @@ -1,44 +0,0 @@ -From: Mike Frysinger -Date: Sun, 13 May 2007 21:15:12 +0000 (-0400) -Subject: respect DESTDIR and dont use -s with install -X-Git-Url: http://neil.brown.name/git?p=portmap;a=commitdiff_plain;h=603c59b978c04df2354f68d4a2dc676a758ff46d - -respect DESTDIR and dont use -s with install - -$(DESTDIR) is the standard for installing into other trees, not $(BASEDIR) ... -so I've converted the Makefile to use that. I've also left in $(BASEDIR) as a -default to support old installs; not sure if you'd just cut it. - -Stripping should be left to the person to handle, not automatically done by -the install step. Also, `install -s` always calls `strip` which is -wrong/undesired in cross-compiling scenarios. - -Signed-off-by: Mike Frysinger -Signed-off-by: Neil Brown ---- - -diff --git a/Makefile b/Makefile -index 9e9a4b4..5343428 100644 ---- a/Makefile -+++ b/Makefile -@@ -135,13 +135,14 @@ from_local: CPPFLAGS += -DTEST - portmap.man : portmap.8 - sed $(MAN_SED) < portmap.8 > portmap.man - -+DESTDIR = $(BASEDIR) - install: all -- install -o root -g root -m 0755 -s portmap ${BASEDIR}/sbin -- install -o root -g root -m 0755 -s pmap_dump ${BASEDIR}/sbin -- install -o root -g root -m 0755 -s pmap_set ${BASEDIR}/sbin -- install -o root -g root -m 0644 portmap.man ${BASEDIR}/usr/share/man/man8/portmap.8 -- install -o root -g root -m 0644 pmap_dump.8 ${BASEDIR}/usr/share/man/man8 -- install -o root -g root -m 0644 pmap_set.8 ${BASEDIR}/usr/share/man/man8 -+ install -o root -g root -m 0755 portmap $(DESTDIR)/sbin -+ install -o root -g root -m 0755 pmap_dump $(DESTDIR)/sbin -+ install -o root -g root -m 0755 pmap_set $(DESTDIR)/sbin -+ install -o root -g root -m 0644 portmap.man $(DESTDIR)/usr/share/man/man8/portmap.8 -+ install -o root -g root -m 0644 pmap_dump.8 $(DESTDIR)/usr/share/man/man8 -+ install -o root -g root -m 0644 pmap_set.8 $(DESTDIR)/usr/share/man/man8 - - clean: - rm -f *.o portmap pmap_dump pmap_set from_local \ diff --git a/meta/packages/portmap/portmap-6.0/tcpd-config.patch b/meta/packages/portmap/portmap-6.0/tcpd-config.patch deleted file mode 100644 index da55f3799d..0000000000 --- a/meta/packages/portmap/portmap-6.0/tcpd-config.patch +++ /dev/null @@ -1,28 +0,0 @@ -From: Mike Frysinger -Date: Sun, 13 May 2007 21:17:32 +0000 (-0400) -Subject: fix building with tcpd support disabled -X-Git-Url: http://neil.brown.name/git?p=portmap;a=commitdiff_plain;h=7847207aed1b44faf077eed14a9ac9c68244eba5 - -fix building with tcpd support disabled - -Make sure pmap_check.c only includes tcpd.h when HOSTS_ACCESS is defined. - -Signed-off-by: Timothy Redaelli -Signed-off-by: Mike Frysinger -Signed-off-by: Neil Brown ---- - -diff --git a/pmap_check.c b/pmap_check.c -index 84f2c12..443a822 100644 ---- a/pmap_check.c -+++ b/pmap_check.c -@@ -44,7 +44,9 @@ - #include - #include - #endif -+#ifdef HOSTS_ACCESS - #include -+#endif - #include - #include - diff --git a/meta/packages/portmap/portmap.inc b/meta/packages/portmap/portmap.inc deleted file mode 100644 index d563ad5b5a..0000000000 --- a/meta/packages/portmap/portmap.inc +++ /dev/null @@ -1,31 +0,0 @@ -DESCRIPTION = "RPC program number mapper." -HOMEPAGE = "http://neil.brown.name/portmap/" -SECTION = "console/network" -LICENSE = "BSD" -LIC_FILES_CHKSUM = "file://portmap.c;beginline=2;endline=31;md5=51ff67e66ec84b2009b017b1f94afbf4 \ - file://from_local.c;beginline=9;endline=35;md5=1bec938a2268b8b423c58801ace3adc1" -DEPENDS = "virtual/fakeroot-native" - -SRC_URI = "${DEBIAN_MIRROR}/main/p/portmap/portmap_5.orig.tar.gz \ - ${DEBIAN_MIRROR}/main/p/portmap/portmap_${PV}.diff.gz;patch=1 \ - file://portmap.init \ - file://make.patch;apply=yes" -S = "${WORKDIR}/portmap_5beta" - -INITSCRIPT_NAME = "portmap" -INITSCRIPT_PARAMS = "start 43 S . start 32 0 6 . stop 81 1 ." - -inherit update-rc.d - -sbindir = "/sbin" - -fakeroot do_install() { - install -d ${D}${sysconfdir}/init.d - install -d ${D}${base_sbindir} - install -m 0755 ${WORKDIR}/portmap.init ${D}${sysconfdir}/init.d/portmap - oe_runmake 'docdir=${docdir}/portmap' 'DESTDIR=${D}' install -} - -PACKAGES =+ "portmap-utils" -FILES_portmap-utils = "/sbin/pmap_set /sbin/pmap_dump" -FILES_${PN}-doc += "${docdir}" diff --git a/meta/packages/portmap/portmap/portmap.init b/meta/packages/portmap/portmap/portmap.init deleted file mode 100755 index e46513e115..0000000000 --- a/meta/packages/portmap/portmap/portmap.init +++ /dev/null @@ -1,59 +0,0 @@ -#!/bin/sh -# -### BEGIN INIT INFO -# Provides: portmap -# Required-Start: $network -# Required-Stop: $network -# Default-Start: S 2 3 4 5 -# Default-Stop: 0 1 6 -# Short-Description: The RPC portmapper -# Description: Portmap is a server that converts RPC (Remote -# Procedure Call) program numbers into DARPA -# protocol port numbers. It must be running in -# order to make RPC calls. Services that use -# RPC include NFS and NIS. -### END INIT INFO - -test -f /sbin/portmap || exit 0 - -case "$1" in - start) - echo "Starting portmap daemon..." - start-stop-daemon --start --quiet --exec /sbin/portmap - - if [ -f /var/run/portmap.upgrade-state ]; then - echo "Restoring old RPC service information..." - sleep 1 # needs a short pause or pmap_set won't work. :( - pmap_set /var/run/portmap.state - $0 stop - $0 start - if [ ! -f /var/run/portmap.upgrade-state ]; then - sleep 1 - pmap_set &1`" = "$PPPCONF" ] ; then - mv $ACTUALCONF $ACTUALCONF.ppporig - fi - fi - - ln -sf $PPPCONF $ACTUALCONF -fi diff --git a/meta/packages/ppp/ppp-2.4.5/92removedns b/meta/packages/ppp/ppp-2.4.5/92removedns deleted file mode 100644 index 2eadec6899..0000000000 --- a/meta/packages/ppp/ppp-2.4.5/92removedns +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/sh -ACTUALCONF=/var/run/resolv.conf -if [ -f $ACTUALCONF.ppporig ] ; then - mv $ACTUALCONF.ppporig $ACTUALCONF -fi diff --git a/meta/packages/ppp/ppp-2.4.5/cifdefroute.patch b/meta/packages/ppp/ppp-2.4.5/cifdefroute.patch deleted file mode 100644 index 6473a08bc7..0000000000 --- a/meta/packages/ppp/ppp-2.4.5/cifdefroute.patch +++ /dev/null @@ -1,290 +0,0 @@ -This patch comes from OpenEmbedded. -The original patch is from Debian / SuSE to implement replacedefaultroute -Rebased it to fit ppp-2.4.5. Dongxiao Xu - -diff -urN ppp-2.4.5-orig/pppd/ipcp.c ppp-2.4.5/pppd/ipcp.c ---- ppp-2.4.5-orig/pppd/ipcp.c 2010-06-30 15:51:12.050166398 +0800 -+++ ppp-2.4.5/pppd/ipcp.c 2010-06-30 16:40:00.478716855 +0800 -@@ -198,6 +198,16 @@ - "disable defaultroute option", OPT_ALIAS | OPT_A2CLR, - &ipcp_wantoptions[0].default_route }, - -+#ifdef __linux__ -+ { "replacedefaultroute", o_bool, -+ &ipcp_wantoptions[0].replace_default_route, -+ "Replace default route", 1 -+ }, -+ { "noreplacedefaultroute", o_bool, -+ &ipcp_allowoptions[0].replace_default_route, -+ "Never replace default route", OPT_A2COPY, -+ &ipcp_wantoptions[0].replace_default_route }, -+#endif - { "proxyarp", o_bool, &ipcp_wantoptions[0].proxy_arp, - "Add proxy ARP entry", OPT_ENABLE|1, &ipcp_allowoptions[0].proxy_arp }, - { "noproxyarp", o_bool, &ipcp_allowoptions[0].proxy_arp, -@@ -271,7 +281,7 @@ - ip_active_pkt - }; - --static void ipcp_clear_addrs __P((int, u_int32_t, u_int32_t)); -+static void ipcp_clear_addrs __P((int, u_int32_t, u_int32_t, bool)); - static void ipcp_script __P((char *, int)); /* Run an up/down script */ - static void ipcp_script_done __P((void *)); - -@@ -1742,7 +1752,12 @@ - if (!sifnpmode(u, PPP_IP, NPMODE_QUEUE)) - return 0; - if (wo->default_route) -+#ifndef __linux__ - if (sifdefaultroute(u, wo->ouraddr, wo->hisaddr)) -+#else -+ if (sifdefaultroute(u, wo->ouraddr, wo->hisaddr, -+ wo->replace_default_route)) -+#endif - default_route_set[u] = 1; - if (wo->proxy_arp) - if (sifproxyarp(u, wo->hisaddr)) -@@ -1830,7 +1845,8 @@ - */ - if (demand) { - if (go->ouraddr != wo->ouraddr || ho->hisaddr != wo->hisaddr) { -- ipcp_clear_addrs(f->unit, wo->ouraddr, wo->hisaddr); -+ ipcp_clear_addrs(f->unit, wo->ouraddr, wo->hisaddr, -+ wo->replace_default_route); - if (go->ouraddr != wo->ouraddr) { - warn("Local IP address changed to %I", go->ouraddr); - script_setenv("OLDIPLOCAL", ip_ntoa(wo->ouraddr), 0); -@@ -1855,7 +1871,12 @@ - - /* assign a default route through the interface if required */ - if (ipcp_wantoptions[f->unit].default_route) -+#ifndef __linux__ - if (sifdefaultroute(f->unit, go->ouraddr, ho->hisaddr)) -+#else -+ if (sifdefaultroute(f->unit, go->ouraddr, ho->hisaddr, -+ wo->replace_default_route)) -+#endif - default_route_set[f->unit] = 1; - - /* Make a proxy ARP entry if requested. */ -@@ -1905,7 +1926,12 @@ - - /* assign a default route through the interface if required */ - if (ipcp_wantoptions[f->unit].default_route) -+#ifndef __linux__ - if (sifdefaultroute(f->unit, go->ouraddr, ho->hisaddr)) -+#else -+ if (sifdefaultroute(f->unit, go->ouraddr, ho->hisaddr, -+ wo->replace_default_route)) -+#endif - default_route_set[f->unit] = 1; - - /* Make a proxy ARP entry if requested. */ -@@ -1983,7 +2009,7 @@ - sifnpmode(f->unit, PPP_IP, NPMODE_DROP); - sifdown(f->unit); - ipcp_clear_addrs(f->unit, ipcp_gotoptions[f->unit].ouraddr, -- ipcp_hisoptions[f->unit].hisaddr); -+ ipcp_hisoptions[f->unit].hisaddr, 0); - } - - /* Execute the ip-down script */ -@@ -1999,12 +2025,21 @@ - * proxy arp entries, etc. - */ - static void --ipcp_clear_addrs(unit, ouraddr, hisaddr) -+ipcp_clear_addrs(unit, ouraddr, hisaddr, replacedefaultroute) - int unit; - u_int32_t ouraddr; /* local address */ - u_int32_t hisaddr; /* remote address */ -+ bool replacedefaultroute; - { -- if (proxy_arp_set[unit]) { -+ /* If replacedefaultroute, sifdefaultroute will be called soon -+ * with replacedefaultroute set and that will overwrite the current -+ * default route. This is the case only when doing demand, otherwise -+ * during demand, this cifdefaultroute would restore the old default -+ * route which is not what we want in this case. In the non-demand -+ * case, we'll delete the default route and restore the old if there -+ * is one saved by an sifdefaultroute with replacedefaultroute. -+ */ -+ if (!replacedefaultroute && default_route_set[unit]) { - cifproxyarp(unit, hisaddr); - proxy_arp_set[unit] = 0; - } -diff -urN ppp-2.4.5-orig/pppd/ipcp.h ppp-2.4.5/pppd/ipcp.h ---- ppp-2.4.5-orig/pppd/ipcp.h 2010-06-30 15:51:12.043682063 +0800 -+++ ppp-2.4.5/pppd/ipcp.h 2010-06-30 16:40:49.586203129 +0800 -@@ -70,6 +70,7 @@ - bool old_addrs; /* Use old (IP-Addresses) option? */ - bool req_addr; /* Ask peer to send IP address? */ - bool default_route; /* Assign default route through interface? */ -+ bool replace_default_route; /* Replace default route through interface? */ - bool proxy_arp; /* Make proxy ARP entry for peer? */ - bool neg_vj; /* Van Jacobson Compression? */ - bool old_vj; /* use old (short) form of VJ option? */ -diff -urN ppp-2.4.5-orig/pppd/pppd.8 ppp-2.4.5/pppd/pppd.8 ---- ppp-2.4.5-orig/pppd/pppd.8 2010-06-30 15:51:12.043682063 +0800 -+++ ppp-2.4.5/pppd/pppd.8 2010-06-30 16:42:47.102413859 +0800 -@@ -121,6 +121,13 @@ - This entry is removed when the PPP connection is broken. This option - is privileged if the \fInodefaultroute\fR option has been specified. - .TP -+.B replacedefaultroute -+This option is a flag to the defaultroute option. If defaultroute is -+set and this flag is also set, pppd replaces an existing default route -+with the new default route. -+ -+ -+.TP - .B disconnect \fIscript - Execute the command specified by \fIscript\fR, by passing it to a - shell, after -@@ -717,7 +724,12 @@ - .TP - .B nodefaultroute - Disable the \fIdefaultroute\fR option. The system administrator who --wishes to prevent users from creating default routes with pppd -+wishes to prevent users from adding a default route with pppd -+can do so by placing this option in the /etc/ppp/options file. -+.TP -+.B noreplacedefaultroute -+Disable the \fIreplacedefaultroute\fR option. The system administrator who -+wishes to prevent users from replacing a default route with pppd - can do so by placing this option in the /etc/ppp/options file. - .TP - .B nodeflate -diff -urN ppp-2.4.5-orig/pppd/pppd.h ppp-2.4.5/pppd/pppd.h ---- ppp-2.4.5-orig/pppd/pppd.h 2010-06-30 15:51:12.050166398 +0800 -+++ ppp-2.4.5/pppd/pppd.h 2010-06-30 16:43:36.514148327 +0800 -@@ -643,7 +643,11 @@ - int cif6addr __P((int, eui64_t, eui64_t)); - /* Remove an IPv6 address from i/f */ - #endif -+#ifndef __linux__ - int sifdefaultroute __P((int, u_int32_t, u_int32_t)); -+#else -+int sifdefaultroute __P((int, u_int32_t, u_int32_t, bool replace_default_rt)); -+#endif - /* Create default route through i/f */ - int cifdefaultroute __P((int, u_int32_t, u_int32_t)); - /* Delete default route through i/f */ -diff -urN ppp-2.4.5-orig/pppd/sys-linux.c ppp-2.4.5/pppd/sys-linux.c ---- ppp-2.4.5-orig/pppd/sys-linux.c 2010-06-30 15:51:12.050166398 +0800 -+++ ppp-2.4.5/pppd/sys-linux.c 2010-06-30 16:54:00.362716231 +0800 -@@ -206,6 +206,8 @@ - - static int if_is_up; /* Interface has been marked up */ - static int have_default_route; /* Gateway for default route added */ -+static struct rtentry old_def_rt; /* Old default route */ -+static int default_rt_repl_rest; /* replace and restore old default rt */ - static u_int32_t proxy_arp_addr; /* Addr for proxy arp entry added */ - static char proxy_arp_dev[16]; /* Device for proxy arp entry */ - static u_int32_t our_old_addr; /* for detecting address changes */ -@@ -1537,6 +1539,9 @@ - p = NULL; - } - -+ SET_SA_FAMILY (rt->rt_dst, AF_INET); -+ SET_SA_FAMILY (rt->rt_gateway, AF_INET); -+ - SIN_ADDR(rt->rt_dst) = strtoul(cols[route_dest_col], NULL, 16); - SIN_ADDR(rt->rt_gateway) = strtoul(cols[route_gw_col], NULL, 16); - SIN_ADDR(rt->rt_genmask) = strtoul(cols[route_mask_col], NULL, 16); -@@ -1606,20 +1611,51 @@ - /******************************************************************** - * - * sifdefaultroute - assign a default route through the address given. -- */ -- --int sifdefaultroute (int unit, u_int32_t ouraddr, u_int32_t gateway) --{ -- struct rtentry rt; -- -- if (defaultroute_exists(&rt) && strcmp(rt.rt_dev, ifname) != 0) { -- if (rt.rt_flags & RTF_GATEWAY) -- error("not replacing existing default route via %I", -- SIN_ADDR(rt.rt_gateway)); -- else -- error("not replacing existing default route through %s", -- rt.rt_dev); -- return 0; -+ * -+ * If the global default_rt_repl_rest flag is set, then this function -+ * already replaced the original system defaultroute with some other -+ * route and it should just replace the current defaultroute with -+ * another one, without saving the current route. Use: demand mode, -+ * when pppd sets first a defaultroute it it's temporary ppp0 addresses -+ * and then changes the temporary addresses to the addresses for the real -+ * ppp connection when it has come up. -+ */ -+ -+int sifdefaultroute (int unit, u_int32_t ouraddr, u_int32_t gateway, bool replace) -+{ -+ struct rtentry rt, tmp_rt; -+ struct rtentry *del_rt = NULL; -+ -+ if (default_rt_repl_rest) { -+ /* We have already reclaced the original defaultroute, if we -+ * are called again, we will delete the current default route -+ * and set the new default route in this function. -+ * - this is normally only the case the doing demand: */ -+ if (defaultroute_exists( &tmp_rt )) -+ del_rt = &tmp_rt; -+ } else if ( defaultroute_exists( &old_def_rt ) && -+ strcmp( old_def_rt.rt_dev, ifname ) != 0) { -+ /* We did not yet replace an existing default route, let's -+ * check if we should save and replace a default route: -+ */ -+ u_int32_t old_gateway = SIN_ADDR(old_def_rt.rt_gateway); -+ if (old_gateway != gateway) { -+ if (!replace) { -+ error("not replacing default route to %s [%I]", -+ old_def_rt.rt_dev, old_gateway); -+ return 0; -+ } else { -+ // we need to copy rt_dev because we need it permanent too: -+ char * tmp_dev = malloc(strlen(old_def_rt.rt_dev)+1); -+ strcpy(tmp_dev, old_def_rt.rt_dev); -+ old_def_rt.rt_dev = tmp_dev; -+ -+ notice("replacing old default route to %s [%I]", -+ old_def_rt.rt_dev, old_gateway); -+ default_rt_repl_rest = 1; -+ del_rt = &old_def_rt; -+ } -+ } - } - - memset (&rt, 0, sizeof (rt)); -@@ -1638,6 +1674,12 @@ - error("default route ioctl(SIOCADDRT): %m"); - return 0; - } -+ if (default_rt_repl_rest && del_rt) -+ if (ioctl(sock_fd, SIOCDELRT, del_rt) < 0) { -+ if ( ! ok_error ( errno )) -+ error("del old default route ioctl(SIOCDELRT): %m(%d)", errno); -+ return 0; -+ } - - have_default_route = 1; - return 1; -@@ -1673,6 +1715,16 @@ - return 0; - } - } -+ if (default_rt_repl_rest) { -+ notice("restoring old default route to %s [%I]", -+ old_def_rt.rt_dev, SIN_ADDR(old_def_rt.rt_gateway)); -+ if (ioctl(sock_fd, SIOCADDRT, &old_def_rt) < 0) { -+ if ( ! ok_error ( errno )) -+ error("restore default route ioctl(SIOCADDRT): %m(%d)", errno); -+ return 0; -+ } -+ default_rt_repl_rest = 0; -+ } - - return 1; - } diff --git a/meta/packages/ppp/ppp-2.4.5/enable-ipv6.patch b/meta/packages/ppp/ppp-2.4.5/enable-ipv6.patch deleted file mode 100644 index daa7f2ecc6..0000000000 --- a/meta/packages/ppp/ppp-2.4.5/enable-ipv6.patch +++ /dev/null @@ -1,13 +0,0 @@ -The patch comes from OpenEmbedded - ---- ppp-2.4.3/pppd/Makefile.linux.orig 2005-10-28 21:07:40.396359250 +0100 -+++ ppp-2.4.3/pppd/Makefile.linux 2005-10-28 21:07:54.217223000 +0100 -@@ -62,7 +62,7 @@ - - HAS_SHADOW=y - #USE_PAM=y --#HAVE_INET6=y -+HAVE_INET6=y - - # Enable plugins - PLUGIN=y diff --git a/meta/packages/ppp/ppp-2.4.5/init b/meta/packages/ppp/ppp-2.4.5/init deleted file mode 100755 index 5b3b7abe2f..0000000000 --- a/meta/packages/ppp/ppp-2.4.5/init +++ /dev/null @@ -1,50 +0,0 @@ -#!/bin/sh -# -# /etc/init.d/ppp: start or stop PPP link. -# -# If you want PPP started on boot time (most dialup systems won't need it) -# rename the /etc/ppp/no_ppp_on_boot file to /etc/ppp/ppp_on_boot, and -# follow the instructions in the comments in that file. - -test -x /usr/sbin/pppd -a -f /etc/ppp/ppp_on_boot || exit 0 -if [ -x /etc/ppp/ppp_on_boot ]; then RUNFILE=1; fi - -case "$1" in - start) - echo -n "Starting up PPP link: pppd" - if [ "$RUNFILE" = "1" ]; then - /etc/ppp/ppp_on_boot - else - pppd call provider - fi - echo "." - ;; - stop) - echo -n "Shutting down PPP link: pppd" - if [ "$RUNFILE" = "1" ]; then - poff - else - poff provider - fi - echo "." - ;; - restart|force-reload) - echo -n "Restarting PPP link: pppd" - if [ "$RUNFILE" = "1" ]; then - poff - sleep 5 - /etc/ppp/ppp_on_boot - else - poff provider - sleep 5 - pppd call provider - fi - echo "." - ;; - *) - echo "Usage: /etc/init.d/ppp {start|stop|restart|force-reload}" - exit 1 - ;; -esac - -exit 0 diff --git a/meta/packages/ppp/ppp-2.4.5/ip-down b/meta/packages/ppp/ppp-2.4.5/ip-down deleted file mode 100755 index 06d35487a5..0000000000 --- a/meta/packages/ppp/ppp-2.4.5/ip-down +++ /dev/null @@ -1,43 +0,0 @@ -#!/bin/sh -# -# $Id: ip-down,v 1.2 1998/02/10 21:21:55 phil Exp $ -# -# This script is run by the pppd _after_ the link is brought down. -# It uses run-parts to run scripts in /etc/ppp/ip-down.d, so to delete -# routes, unset IP addresses etc. you should create script(s) there. -# -# Be aware that other packages may include /etc/ppp/ip-down.d scripts (named -# after that package), so choose local script names with that in mind. -# -# This script is called with the following arguments: -# Arg Name Example -# $1 Interface name ppp0 -# $2 The tty ttyS1 -# $3 The link speed 38400 -# $4 Local IP number 12.34.56.78 -# $5 Peer IP number 12.34.56.99 -# $6 Optional ``ipparam'' value foo - -# The environment is cleared before executing this script -# so the path must be reset -PATH=/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin -export PATH -# These variables are for the use of the scripts run by run-parts -PPP_IFACE="$1" -PPP_TTY="$2" -PPP_SPEED="$3" -PPP_LOCAL="$4" -PPP_REMOTE="$5" -PPP_IPPARAM="$6" -export PPP_IFACE PPP_TTY PPP_SPEED PPP_LOCAL PPP_REMOTE PPP_IPPARAM - -# as an additional convenience, $PPP_TTYNAME is set to the tty name, -# stripped of /dev/ (if present) for easier matching. -PPP_TTYNAME=`/usr/bin/basename "$2"` -export PPP_TTYNAME - -# Main Script starts here - -run-parts /etc/ppp/ip-down.d - -# last line diff --git a/meta/packages/ppp/ppp-2.4.5/ip-up b/meta/packages/ppp/ppp-2.4.5/ip-up deleted file mode 100755 index fc2fae9fe0..0000000000 --- a/meta/packages/ppp/ppp-2.4.5/ip-up +++ /dev/null @@ -1,44 +0,0 @@ -#!/bin/sh -# -# $Id: ip-up,v 1.2 1998/02/10 21:25:34 phil Exp $ -# -# This script is run by the pppd after the link is established. -# It uses run-parts to run scripts in /etc/ppp/ip-up.d, so to add routes, -# set IP address, run the mailq etc. you should create script(s) there. -# -# Be aware that other packages may include /etc/ppp/ip-up.d scripts (named -# after that package), so choose local script names with that in mind. -# -# This script is called with the following arguments: -# Arg Name Example -# $1 Interface name ppp0 -# $2 The tty ttyS1 -# $3 The link speed 38400 -# $4 Local IP number 12.34.56.78 -# $5 Peer IP number 12.34.56.99 -# $6 Optional ``ipparam'' value foo - -# The environment is cleared before executing this script -# so the path must be reset -PATH=/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin -export PATH -# These variables are for the use of the scripts run by run-parts -PPP_IFACE="$1" -PPP_TTY="$2" -PPP_SPEED="$3" -PPP_LOCAL="$4" -PPP_REMOTE="$5" -PPP_IPPARAM="$6" -export PPP_IFACE PPP_TTY PPP_SPEED PPP_LOCAL PPP_REMOTE PPP_IPPARAM - - -# as an additional convenience, $PPP_TTYNAME is set to the tty name, -# stripped of /dev/ (if present) for easier matching. -PPP_TTYNAME=`/usr/bin/basename "$2"` -export PPP_TTYNAME - -# Main Script starts here - -run-parts /etc/ppp/ip-up.d - -# last line diff --git a/meta/packages/ppp/ppp-2.4.5/makefile-remove-hard-usr-reference.patch b/meta/packages/ppp/ppp-2.4.5/makefile-remove-hard-usr-reference.patch deleted file mode 100644 index 9ba868839e..0000000000 --- a/meta/packages/ppp/ppp-2.4.5/makefile-remove-hard-usr-reference.patch +++ /dev/null @@ -1,19 +0,0 @@ -The patch comes from OpenEmbedded. -Rebased for ppp-2.4.5. Dongxiao Xu - -diff -urN ppp-2.4.5-orig/pppd/Makefile.linux ppp-2.4.5/pppd/Makefile.linux ---- ppp-2.4.5-orig/pppd/Makefile.linux 2010-06-30 15:51:12.043682063 +0800 -+++ ppp-2.4.5/pppd/Makefile.linux 2010-06-30 17:08:21.806363042 +0800 -@@ -117,10 +117,10 @@ - #LIBS += -lshadow $(LIBS) - endif - --ifneq ($(wildcard /usr/include/crypt.h),) -+#ifneq ($(wildcard /usr/include/crypt.h),) - CFLAGS += -DHAVE_CRYPT_H=1 - LIBS += -lcrypt --endif -+#endif - - ifdef NEEDDES - ifndef USE_CRYPT diff --git a/meta/packages/ppp/ppp-2.4.5/makefile.patch b/meta/packages/ppp/ppp-2.4.5/makefile.patch deleted file mode 100644 index 94af5af6de..0000000000 --- a/meta/packages/ppp/ppp-2.4.5/makefile.patch +++ /dev/null @@ -1,93 +0,0 @@ -The patch comes from OpenEmbedded -Rebased for ppp-2.4.5. Dongxiao Xu - -diff -ruN ppp-2.4.5-orig/chat/Makefile.linux ppp-2.4.5/chat/Makefile.linux ---- ppp-2.4.5-orig/chat/Makefile.linux 2010-06-30 15:51:12.050166398 +0800 -+++ ppp-2.4.5/chat/Makefile.linux 2010-06-30 15:51:30.450118446 +0800 -@@ -25,7 +25,7 @@ - - install: chat - mkdir -p $(BINDIR) $(MANDIR) -- $(INSTALL) -s -c chat $(BINDIR) -+ $(INSTALL) -c chat $(BINDIR) - $(INSTALL) -c -m 644 chat.8 $(MANDIR) - - clean: -diff -ruN ppp-2.4.5-orig/pppd/Makefile.linux ppp-2.4.5/pppd/Makefile.linux ---- ppp-2.4.5-orig/pppd/Makefile.linux 2010-06-30 15:51:12.043682063 +0800 -+++ ppp-2.4.5/pppd/Makefile.linux 2010-06-30 15:52:11.214170607 +0800 -@@ -99,7 +99,7 @@ - CFLAGS += -DUSE_SRP -DOPENSSL -I/usr/local/ssl/include - LIBS += -lsrp -L/usr/local/ssl/lib -lcrypto - TARGETS += srp-entry --EXTRAINSTALL = $(INSTALL) -s -c -m 555 srp-entry $(BINDIR)/srp-entry -+EXTRAINSTALL = $(INSTALL) -c -m 555 srp-entry $(BINDIR)/srp-entry - MANPAGES += srp-entry.8 - EXTRACLEAN += srp-entry.o - NEEDDES=y -@@ -200,7 +200,7 @@ - install: pppd - mkdir -p $(BINDIR) $(MANDIR) - $(EXTRAINSTALL) -- $(INSTALL) -s -c -m 555 pppd $(BINDIR)/pppd -+ $(INSTALL) -c -m 555 pppd $(BINDIR)/pppd - if chgrp pppusers $(BINDIR)/pppd 2>/dev/null; then \ - chmod o-rx,u+s $(BINDIR)/pppd; fi - $(INSTALL) -c -m 444 pppd.8 $(MANDIR) -diff -ruN ppp-2.4.5-orig/pppd/plugins/radius/Makefile.linux ppp-2.4.5/pppd/plugins/radius/Makefile.linux ---- ppp-2.4.5-orig/pppd/plugins/radius/Makefile.linux 2010-06-30 15:51:12.047676187 +0800 -+++ ppp-2.4.5/pppd/plugins/radius/Makefile.linux 2010-06-30 15:53:47.750182267 +0800 -@@ -36,11 +36,11 @@ - - install: all - $(INSTALL) -d -m 755 $(LIBDIR) -- $(INSTALL) -s -c -m 755 radius.so $(LIBDIR) -- $(INSTALL) -s -c -m 755 radattr.so $(LIBDIR) -- $(INSTALL) -s -c -m 755 radrealms.so $(LIBDIR) -- $(INSTALL) -c -m 444 pppd-radius.8 $(MANDIR) -- $(INSTALL) -c -m 444 pppd-radattr.8 $(MANDIR) -+ $(INSTALL) -c -m 755 radius.so $(LIBDIR) -+ $(INSTALL) -c -m 755 radattr.so $(LIBDIR) -+ $(INSTALL) -c -m 755 radrealms.so $(LIBDIR) -+ $(INSTALL) -m 444 pppd-radius.8 $(MANDIR) -+ $(INSTALL) -m 444 pppd-radattr.8 $(MANDIR) - - radius.so: radius.o libradiusclient.a - $(CC) -o radius.so -shared radius.o libradiusclient.a -diff -ruN ppp-2.4.5-orig/pppd/plugins/rp-pppoe/Makefile.linux ppp-2.4.5/pppd/plugins/rp-pppoe/Makefile.linux ---- ppp-2.4.5-orig/pppd/plugins/rp-pppoe/Makefile.linux 2010-06-30 15:51:12.047676187 +0800 -+++ ppp-2.4.5/pppd/plugins/rp-pppoe/Makefile.linux 2010-06-30 15:53:15.454486877 +0800 -@@ -43,9 +43,9 @@ - - install: all - $(INSTALL) -d -m 755 $(LIBDIR) -- $(INSTALL) -s -c -m 4550 rp-pppoe.so $(LIBDIR) -+ $(INSTALL) -c -m 4550 rp-pppoe.so $(LIBDIR) - $(INSTALL) -d -m 755 $(BINDIR) -- $(INSTALL) -s -c -m 555 pppoe-discovery $(BINDIR) -+ $(INSTALL) -c -m 555 pppoe-discovery $(BINDIR) - - clean: - rm -f *.o *.so pppoe-discovery -diff -ruN ppp-2.4.5-orig/pppdump/Makefile.linux ppp-2.4.5/pppdump/Makefile.linux ---- ppp-2.4.5-orig/pppdump/Makefile.linux 2010-06-30 15:51:12.058183383 +0800 -+++ ppp-2.4.5/pppdump/Makefile.linux 2010-06-30 15:52:25.762183537 +0800 -@@ -17,5 +17,5 @@ - - install: - mkdir -p $(BINDIR) $(MANDIR) -- $(INSTALL) -s -c pppdump $(BINDIR) -+ $(INSTALL) -c pppdump $(BINDIR) - $(INSTALL) -c -m 444 pppdump.8 $(MANDIR) -diff -ruN ppp-2.4.5-orig/pppstats/Makefile.linux ppp-2.4.5/pppstats/Makefile.linux ---- ppp-2.4.5-orig/pppstats/Makefile.linux 2010-06-30 15:51:12.058183383 +0800 -+++ ppp-2.4.5/pppstats/Makefile.linux 2010-06-30 15:52:42.486341081 +0800 -@@ -22,7 +22,7 @@ - - install: pppstats - -mkdir -p $(MANDIR) -- $(INSTALL) -s -c pppstats $(BINDIR) -+ $(INSTALL) -c pppstats $(BINDIR) - $(INSTALL) -c -m 444 pppstats.8 $(MANDIR) - - pppstats: $(PPPSTATSRCS) diff --git a/meta/packages/ppp/ppp-2.4.5/poff b/meta/packages/ppp/ppp-2.4.5/poff deleted file mode 100644 index 0521a9406a..0000000000 --- a/meta/packages/ppp/ppp-2.4.5/poff +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/sh - -# Lets see how many pppds are running.... -set -- `cat /var/run/ppp*.pid 2>/dev/null` - -case $# in - 0) # pppd only creates a pid file once ppp is up, so let's try killing pppd - # on the assumption that we've not got that far yet. - killall pppd - ;; - 1) # If only one was running then it can be killed (apparently killall - # caused problems for some, so lets try killing the pid from the file) - kill $1 - ;; - *) # More than one! Aieehh.. Dont know which one to kill. - echo "More than one pppd running. None stopped" - exit 1 - ;; -esac - -if [ -r /var/run/ppp-quick ] -then - rm -f /var/run/ppp-quick -fi - -exit 0 diff --git a/meta/packages/ppp/ppp-2.4.5/pon b/meta/packages/ppp/ppp-2.4.5/pon deleted file mode 100644 index 91c059501a..0000000000 --- a/meta/packages/ppp/ppp-2.4.5/pon +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/sh - -if [ "$1" = "quick" ] -then - touch /var/run/ppp-quick - shift -fi - -/usr/sbin/pppd call ${1:-provider} diff --git a/meta/packages/ppp/ppp-2.4.5/pppd-resolv-varrun.patch b/meta/packages/ppp/ppp-2.4.5/pppd-resolv-varrun.patch deleted file mode 100644 index c4e61fdd28..0000000000 --- a/meta/packages/ppp/ppp-2.4.5/pppd-resolv-varrun.patch +++ /dev/null @@ -1,43 +0,0 @@ -The patch comes from OpenEmbedded -Rebased for ppp-2.4.5. Dongxiao Xu - -diff -ruN ppp-2.4.5-orig/pppd/ipcp.c ppp-2.4.5/pppd/ipcp.c ---- ppp-2.4.5-orig/pppd/ipcp.c 2010-06-30 15:51:12.050166398 +0800 -+++ ppp-2.4.5/pppd/ipcp.c 2010-06-30 17:02:33.930393283 +0800 -@@ -55,6 +55,8 @@ - #include - #include - #include -+#include -+#include - - #include "pppd.h" - #include "fsm.h" -@@ -2095,6 +2097,14 @@ - u_int32_t peerdns1, peerdns2; - { - FILE *f; -+ struct stat dirinfo; -+ -+ if(stat(_PATH_OUTDIR, &dirinfo)) { -+ if(mkdir(_PATH_OUTDIR, 0775)) { -+ error("Failed to create directory %s: %m", _PATH_OUTDIR); -+ return; -+ } -+ } - - f = fopen(_PATH_RESOLV, "w"); - if (f == NULL) { -diff -ruN ppp-2.4.5-orig/pppd/pathnames.h ppp-2.4.5/pppd/pathnames.h ---- ppp-2.4.5-orig/pppd/pathnames.h 2010-06-30 15:51:12.043682063 +0800 -+++ ppp-2.4.5/pppd/pathnames.h 2010-06-30 17:03:20.594371055 +0800 -@@ -30,7 +30,8 @@ - #define _PATH_TTYOPT _ROOT_PATH "/etc/ppp/options." - #define _PATH_CONNERRS _ROOT_PATH "/etc/ppp/connect-errors" - #define _PATH_PEERFILES _ROOT_PATH "/etc/ppp/peers/" --#define _PATH_RESOLV _ROOT_PATH "/etc/ppp/resolv.conf" -+#define _PATH_OUTDIR _ROOT_PATH _PATH_VARRUN "/ppp" -+#define _PATH_RESOLV _PATH_OUTDIR "/resolv.conf" - - #define _PATH_USEROPT ".ppprc" - #define _PATH_PSEUDONYM ".ppp_pseudonym" diff --git a/meta/packages/ppp/ppp_2.4.5.bb b/meta/packages/ppp/ppp_2.4.5.bb deleted file mode 100644 index e9caf3d13e..0000000000 --- a/meta/packages/ppp/ppp_2.4.5.bb +++ /dev/null @@ -1,77 +0,0 @@ -DESCRIPTION = "ppp (Paul's PPP Package) is an open source package which implements \ -the Point-to-Point Protocol (PPP) on Linux and Solaris systems." -SECTION = "console/network" -HOMEPAGE = "http://samba.org/ppp/" -BUGTRACKER = "http://ppp.samba.org/cgi-bin/ppp-bugs" -DEPENDS = "libpcap" -LICENSE = "BSD & GPLv2+ & LGPLv2+ & public domain" -LIC_FILES_CHKSUM = "file://pppd/ccp.c;beginline=1;endline=29;md5=e2c43fe6e81ff77d87dc9c290a424dea \ - file://pppd/plugins/passprompt.c;beginline=1;endline=10;md5=3bcbcdbf0e369c9a3e0b8c8275b065d8 \ - file://pppd/tdb.c;beginline=1;endline=27;md5=4ca3a9991b011038d085d6675ae7c4e6 \ - file://chat/chat.c;beginline=1;endline=15;md5=0d374b8545ee5c62d7aff1acbd38add2" -PR = "r0" - -SRC_URI = "http://ppp.samba.org/ftp/ppp/ppp-${PV}.tar.gz \ - file://makefile.patch \ - file://cifdefroute.patch \ - file://pppd-resolv-varrun.patch \ - file://enable-ipv6.patch \ - file://makefile-remove-hard-usr-reference.patch \ - file://pon \ - file://poff \ - file://init \ - file://ip-up \ - file://ip-down \ - file://08setupdns \ - file://92removedns" - -SRC_URI_append_nylon = " file://ppp-tdbread.patch;patch=1" - -inherit autotools - -EXTRA_OEMAKE = "STRIPPROG=${STRIP} MANDIR=${D}${datadir}/man/man8 INCDIR=${D}/usr/include LIBDIR=${D}/usr/lib/pppd/${PV} BINDIR=${D}/usr/sbin" -EXTRA_OECONF = "--disable-strip" - -do_install_append () { - make install-etcppp ETCDIR=${D}/${sysconfdir}/ppp - mkdir -p ${D}${bindir}/ ${D}${sysconfdir}/init.d - mkdir -p ${D}${sysconfdir}/ppp/ip-up.d/ - mkdir -p ${D}${sysconfdir}/ppp/ip-down.d/ - install -m 0755 ${WORKDIR}/pon ${D}${bindir}/pon - install -m 0755 ${WORKDIR}/poff ${D}${bindir}/poff - install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/ppp - install -m 0755 ${WORKDIR}/ip-up ${D}${sysconfdir}/ppp/ - install -m 0755 ${WORKDIR}/ip-down ${D}${sysconfdir}/ppp/ - install -m 0755 ${WORKDIR}/08setupdns ${D}${sysconfdir}/ppp/ip-up.d/ - install -m 0755 ${WORKDIR}/92removedns ${D}${sysconfdir}/ppp/ip-down.d/ - rm -rf ${D}/${mandir}/man8/man8 -} - -CONFFILES_${PN} = "${sysconfdir}/ppp/pap-secrets ${sysconfdir}/ppp/chap-secrets ${sysconfdir}/ppp/options" -PACKAGES += "ppp-oa ppp-oe ppp-radius ppp-winbind ppp-minconn ppp-password ppp-tools" -FILES_${PN} = "/etc /usr/bin /usr/sbin/chat /usr/sbin/pppd" -FILES_${PN}_nylon = "/etc /usr/bin /usr/sbin/chat /usr/sbin/pppd /usr/sbin/tdbread" -FILES_${PN}-dbg += "${libdir}/pppd/2.4.3/.debug" -FILES_ppp-oa = "/usr/lib/pppd/2.4.3/pppoatm.so" -FILES_ppp-oe = "/usr/sbin/pppoe-discovery /usr/lib/pppd/2.4.3/rp-pppoe.so" -FILES_ppp-radius = "/usr/lib/pppd/2.4.3/radius.so /usr/lib/pppd/2.4.3/radattr.so /usr/lib/pppd/2.4.3/radrealms.so" -FILES_ppp-winbind = "/usr/lib/pppd/2.4.3/winbind.so" -FILES_ppp-minconn = "/usr/lib/pppd/2.4.3/minconn.so" -FILES_ppp-password = "/usr/lib/pppd/2.4.3/pass*.so" -FILES_ppp-tools = "/usr/sbin/pppstats /usr/sbin/pppdump" -DESCRIPTION_ppp-oa = "Plugin for PPP needed for PPP-over-ATM" -DESCRIPTION_ppp-oe = "Plugin for PPP needed for PPP-over-Ethernet" -DESCRIPTION_ppp-radius = "Plugin for PPP that are related to RADIUS" -DESCRIPTION_ppp-winbind = "Plugin for PPP to authenticate against Samba or Windows" -DESCRIPTION_ppp-minconn = "Plugin for PPP to specify a minimum connect time before the idle timeout applies" -DESCRIPTION_ppp-password = "Plugin for PPP to get passwords via a pipe" -DESCRIPTION_ppp-tools = "The pppdump and pppstats utitilities" -RDEPENDS_ppp_minconn += "libpcap0.8" - -pkg_postinst_${PN}() { -if test "x$D" != "x"; then - exit 1 -else - chmod u+s ${sbindir}/pppd -fi -} diff --git a/meta/packages/psmisc/files/libintl-link.patch b/meta/packages/psmisc/files/libintl-link.patch deleted file mode 100644 index d9cdd90d71..0000000000 --- a/meta/packages/psmisc/files/libintl-link.patch +++ /dev/null @@ -1,29 +0,0 @@ -uClibc needs to link against an external libintl but it doesn't do this by -default. The configure script correctly figures out if this is needed, but -doesn't actually link to the libraries it decides on. This makes it link to -them if they are needed: - ---- psmisc-22.2/src/Makefile.am 2006/06/28 00:14:07 1.1 -+++ psmisc-22.2/src/Makefile.am 2006/06/28 00:14:24 -@@ -5,15 +5,19 @@ - - oldfuser_SOURCES = oldfuser.c comm.h signals.c signals.h loop.h i18n.h - -+oldfuser_LDADD = @INTLLIBS@ -+ - fuser_SOURCES = fuser.c comm.h signals.c signals.h i18n.h fuser.h - -+fuser_LDADD = @INTLLIBS@ -+ - killall_SOURCES = killall.c comm.h signals.c signals.h i18n.h - --killall_LDADD = @SELINUX_LIB@ -+killall_LDADD = @SELINUX_LIB@ @INTLLIBS@ - - pstree_SOURCES = pstree.c comm.h i18n.h - --pstree_LDADD = @TERMCAP_LIB@ @SELINUX_LIB@ -+pstree_LDADD = @TERMCAP_LIB@ @SELINUX_LIB@ @INTLLIBS@ - - BUILT_SOURCES = signames.h - diff --git a/meta/packages/psmisc/psmisc.inc b/meta/packages/psmisc/psmisc.inc deleted file mode 100644 index d489891d64..0000000000 --- a/meta/packages/psmisc/psmisc.inc +++ /dev/null @@ -1,55 +0,0 @@ -LICENSE = "GPL" -DESCRIPTION = "procfs tools" -SECTION = "base" -PRIORITY = "required" -DEPENDS = "ncurses virtual/libintl" - -SRC_URI = "${SOURCEFORGE_MIRROR}/psmisc/psmisc-${PV}.tar.gz \ - file://libintl-link.patch;patch=1" -S = "${WORKDIR}/psmisc-${PV}" - -inherit autotools gettext - -ALLOW_EMPTY = "1" - -PACKAGES = "${PN} \ - fuser-dbg fuser fuser-doc \ - killall-dbg killall killall-doc \ - pstree-dbg pstree pstree-doc" - -FILES_${PN} = "" -RDEPENDS_${PN} = "fuser killall pstree" - -FILES_fuser = "${bindir}/fuser.${PN}" -FILES_fuser-doc = "${mandir}/man1/fuser*" -FILES_fuser-dbg = "${bindir}/.debug/fuser" - -FILES_killall = "${bindir}/killall.${PN}" -FILES_killall-doc = "${mandir}/man1/killall*" -FILES_killall-dbg = "${bindir}/.debug/killall*" - -FILES_pstree = "${bindir}/pstree" -FILES_pstree-doc = "${mandir}/man1/pstree*" -FILES_pstree-dbg = "${bindir}/.debug/pstree" - -do_install_append() { - mv ${D}${bindir}/killall ${D}${bindir}/killall.${PN} - mv ${D}${bindir}/fuser ${D}${bindir}/fuser.${PN} -} - -pkg_postinst_killall() { - update-alternatives --install ${bindir}/killall killall killall.${PN} 90 -} - -pkg_postrm_killall() { - update-alternatives --remove ${bindir}/killall killall.${PN} -} - -pkg_postinst_fuser() { - update-alternatives --install ${bindir}/fuser fuser fuser.${PN} 90 -} - -pkg_postrm_fuser() { - update-alternatives --remove ${bindir}/fuser fuser.${PN} -} - diff --git a/meta/packages/psmisc/psmisc_22.2.bb b/meta/packages/psmisc/psmisc_22.2.bb deleted file mode 100644 index 62327fa4d6..0000000000 --- a/meta/packages/psmisc/psmisc_22.2.bb +++ /dev/null @@ -1,2 +0,0 @@ -require psmisc.inc -PR = "r1" diff --git a/meta/packages/pth/pth_2.0.7.bb b/meta/packages/pth/pth_2.0.7.bb deleted file mode 100644 index 8ee3cd4cd1..0000000000 --- a/meta/packages/pth/pth_2.0.7.bb +++ /dev/null @@ -1,21 +0,0 @@ -DESCRIPTION = "GNU Portable Threads" -HOMEPAGE = "http://www.gnu.org/software/pth/" -SECTION = "libs" -PRIORITY = "optional" -LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;beginline=12;endline=15;md5=a48af114a80c222cafd37f24370a77b1" -PR = "r1" - -SRC_URI = "${GNU_MIRROR}/pth/pth-${PV}.tar.gz" - -PARALLEL_MAKE="" - -inherit autotools binconfig - -do_configure() { - gnu-configize - oe_runconf -} - -FILES_${PN} = "${libdir}/libpth.so.*" -FILES_${PN}-dev += "${bindir}/pth-config" diff --git a/meta/packages/readline/files/acinclude.m4 b/meta/packages/readline/files/acinclude.m4 deleted file mode 100644 index 8a45f99084..0000000000 --- a/meta/packages/readline/files/acinclude.m4 +++ /dev/null @@ -1,1815 +0,0 @@ -dnl -dnl Bash specific tests -dnl -dnl Some derived from PDKSH 5.1.3 autoconf tests -dnl - -AC_DEFUN([BASH_C_LONG_LONG], -[AC_CACHE_CHECK(for long long, ac_cv_c_long_long, -[if test "$GCC" = yes; then - ac_cv_c_long_long=yes -else -AC_TRY_RUN([ -int -main() -{ -long long foo = 0; -exit(sizeof(long long) < sizeof(long)); -} -], ac_cv_c_long_long=yes, ac_cv_c_long_long=no) -fi]) -if test $ac_cv_c_long_long = yes; then - AC_DEFINE(HAVE_LONG_LONG, 1, [Define if the `long long' type works.]) -fi -]) - -dnl -dnl This is very similar to AC_C_LONG_DOUBLE, with the fix for IRIX -dnl (< changed to <=) added. -dnl -AC_DEFUN([BASH_C_LONG_DOUBLE], -[AC_CACHE_CHECK(for long double, ac_cv_c_long_double, -[if test "$GCC" = yes; then - ac_cv_c_long_double=yes -else -AC_TRY_RUN([ -int -main() -{ - /* The Stardent Vistra knows sizeof(long double), but does not - support it. */ - long double foo = 0.0; - /* On Ultrix 4.3 cc, long double is 4 and double is 8. */ - /* On IRIX 5.3, the compiler converts long double to double with a warning, - but compiles this successfully. */ - exit(sizeof(long double) <= sizeof(double)); -} -], ac_cv_c_long_double=yes, ac_cv_c_long_double=no) -fi]) -if test $ac_cv_c_long_double = yes; then - AC_DEFINE(HAVE_LONG_DOUBLE, 1, [Define if the `long double' type works.]) -fi -]) - -dnl -dnl Check for . This is separated out so that it can be -dnl AC_REQUIREd. -dnl -dnl BASH_HEADER_INTTYPES -AC_DEFUN([BASH_HEADER_INTTYPES], -[ - AC_CHECK_HEADERS(inttypes.h) -]) - -dnl -dnl check for typedef'd symbols in header files, but allow the caller to -dnl specify the include files to be checked in addition to the default -dnl -dnl BASH_CHECK_TYPE(TYPE, HEADERS, DEFAULT[, VALUE-IF-FOUND]) -AC_DEFUN([BASH_CHECK_TYPE], -[ -AC_REQUIRE([AC_HEADER_STDC])dnl -AC_REQUIRE([BASH_HEADER_INTTYPES]) -AC_MSG_CHECKING(for $1) -AC_CACHE_VAL(bash_cv_type_$1, -[AC_EGREP_CPP($1, [#include -#if STDC_HEADERS -#include -#include -#endif -#if HAVE_INTTYPES_H -#include -#endif -$2 -], bash_cv_type_$1=yes, bash_cv_type_$1=no)]) -AC_MSG_RESULT($bash_cv_type_$1) -ifelse($#, 4, [if test $bash_cv_type_$1 = yes; then - AC_DEFINE($4) - fi]) -if test $bash_cv_type_$1 = no; then - AC_DEFINE_UNQUOTED($1, $3) -fi -]) - -dnl -dnl BASH_CHECK_DECL(FUNC) -dnl -dnl Check for a declaration of FUNC in stdlib.h and inttypes.h like -dnl AC_CHECK_DECL -dnl -AC_DEFUN([BASH_CHECK_DECL], -[ -AC_REQUIRE([AC_HEADER_STDC]) -AC_REQUIRE([BASH_HEADER_INTTYPES]) -AC_CACHE_CHECK([for declaration of $1], bash_cv_decl_$1, -[AC_TRY_LINK( -[ -#if STDC_HEADERS -# include -#endif -#if HAVE_INTTYPES_H -# include -#endif -], -[return !$1;], -bash_cv_decl_$1=yes, bash_cv_decl_$1=no)]) -bash_tr_func=HAVE_DECL_`echo $1 | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` -if test $bash_cv_decl_$1 = yes; then - AC_DEFINE_UNQUOTED($bash_tr_func, 1) -else - AC_DEFINE_UNQUOTED($bash_tr_func, 0) -fi -]) - -AC_DEFUN([BASH_DECL_PRINTF], -[AC_MSG_CHECKING(for declaration of printf in ) -AC_CACHE_VAL(bash_cv_printf_declared, -[AC_TRY_RUN([ -#include -#ifdef __STDC__ -typedef int (*_bashfunc)(const char *, ...); -#else -typedef int (*_bashfunc)(); -#endif -main() -{ -_bashfunc pf; -pf = (_bashfunc) printf; -exit(pf == 0); -} -], bash_cv_printf_declared=yes, bash_cv_printf_declared=no, - [AC_MSG_WARN(cannot check printf declaration if cross compiling -- defaulting to yes) - bash_cv_printf_declared=yes] -)]) -AC_MSG_RESULT($bash_cv_printf_declared) -if test $bash_cv_printf_declared = yes; then -AC_DEFINE(PRINTF_DECLARED) -fi -]) - -AC_DEFUN([BASH_DECL_SBRK], -[AC_MSG_CHECKING(for declaration of sbrk in ) -AC_CACHE_VAL(bash_cv_sbrk_declared, -[AC_EGREP_HEADER(sbrk, unistd.h, - bash_cv_sbrk_declared=yes, bash_cv_sbrk_declared=no)]) -AC_MSG_RESULT($bash_cv_sbrk_declared) -if test $bash_cv_sbrk_declared = yes; then -AC_DEFINE(SBRK_DECLARED) -fi -]) - -dnl -dnl Check for sys_siglist[] or _sys_siglist[] -dnl -AC_DEFUN([BASH_DECL_UNDER_SYS_SIGLIST], -[AC_MSG_CHECKING([for _sys_siglist in signal.h or unistd.h]) -AC_CACHE_VAL(bash_cv_decl_under_sys_siglist, -[AC_TRY_COMPILE([ -#include -#include -#ifdef HAVE_UNISTD_H -#include -#endif], [ char *msg = _sys_siglist[2]; ], - bash_cv_decl_under_sys_siglist=yes, bash_cv_decl_under_sys_siglist=no, - [AC_MSG_WARN(cannot check for _sys_siglist[] if cross compiling -- defaulting to no)])])dnl -AC_MSG_RESULT($bash_cv_decl_under_sys_siglist) -if test $bash_cv_decl_under_sys_siglist = yes; then -AC_DEFINE(UNDER_SYS_SIGLIST_DECLARED) -fi -]) - -AC_DEFUN([BASH_UNDER_SYS_SIGLIST], -[AC_REQUIRE([BASH_DECL_UNDER_SYS_SIGLIST]) -AC_MSG_CHECKING([for _sys_siglist in system C library]) -AC_CACHE_VAL(bash_cv_under_sys_siglist, -[AC_TRY_RUN([ -#include -#include -#ifdef HAVE_UNISTD_H -#include -#endif -#ifndef UNDER_SYS_SIGLIST_DECLARED -extern char *_sys_siglist[]; -#endif -main() -{ -char *msg = (char *)_sys_siglist[2]; -exit(msg == 0); -}], - bash_cv_under_sys_siglist=yes, bash_cv_under_sys_siglist=no, - [AC_MSG_WARN(cannot check for _sys_siglist[] if cross compiling -- defaulting to no) - bash_cv_under_sys_siglist=no])]) -AC_MSG_RESULT($bash_cv_under_sys_siglist) -if test $bash_cv_under_sys_siglist = yes; then -AC_DEFINE(HAVE_UNDER_SYS_SIGLIST) -fi -]) - -AC_DEFUN([BASH_SYS_SIGLIST], -[ -AC_CHECK_DECLS([sys_siglist]) -AC_MSG_CHECKING([for sys_siglist in system C library]) -AC_CACHE_VAL(bash_cv_sys_siglist, -[AC_TRY_RUN([ -#include -#include -#ifdef HAVE_UNISTD_H -#include -#endif -#ifndef HAVE_DECL_SYS_SIGLIST -extern char *sys_siglist[]; -#endif -main() -{ -char *msg = sys_siglist[2]; -exit(msg == 0); -}], - bash_cv_sys_siglist=yes, bash_cv_sys_siglist=no, - [AC_MSG_WARN(cannot check for sys_siglist if cross compiling -- defaulting to no) - bash_cv_sys_siglist=no])]) -AC_MSG_RESULT($bash_cv_sys_siglist) -if test $bash_cv_sys_siglist = yes; then -AC_DEFINE(HAVE_SYS_SIGLIST) -fi -]) - -dnl Check for the various permutations of sys_siglist and make sure we -dnl compile in siglist.o if they're not defined -AC_DEFUN([BASH_CHECK_SYS_SIGLIST], [ -AC_REQUIRE([BASH_SYS_SIGLIST]) -AC_REQUIRE([BASH_DECL_UNDER_SYS_SIGLIST]) -AC_REQUIRE([BASH_FUNC_STRSIGNAL]) -if test "$bash_cv_sys_siglist" = no && test "$bash_cv_under_sys_siglist" = no && test "$bash_cv_have_strsignal" = no; then - SIGLIST_O=siglist.o -else - SIGLIST_O= -fi -AC_SUBST([SIGLIST_O]) -]) - -dnl Check for sys_errlist[] and sys_nerr, check for declaration -AC_DEFUN([BASH_SYS_ERRLIST], -[AC_MSG_CHECKING([for sys_errlist and sys_nerr]) -AC_CACHE_VAL(bash_cv_sys_errlist, -[AC_TRY_LINK([#include ], -[extern char *sys_errlist[]; - extern int sys_nerr; - char *msg = sys_errlist[sys_nerr - 1];], - bash_cv_sys_errlist=yes, bash_cv_sys_errlist=no)])dnl -AC_MSG_RESULT($bash_cv_sys_errlist) -if test $bash_cv_sys_errlist = yes; then -AC_DEFINE(HAVE_SYS_ERRLIST) -fi -]) - -dnl -dnl Check if dup2() does not clear the close on exec flag -dnl -AC_DEFUN([BASH_FUNC_DUP2_CLOEXEC_CHECK], -[AC_MSG_CHECKING(if dup2 fails to clear the close-on-exec flag) -AC_CACHE_VAL(bash_cv_dup2_broken, -[AC_TRY_RUN([ -#include -#include -main() -{ - int fd1, fd2, fl; - fd1 = open("/dev/null", 2); - if (fcntl(fd1, 2, 1) < 0) - exit(1); - fd2 = dup2(fd1, 1); - if (fd2 < 0) - exit(2); - fl = fcntl(fd2, 1, 0); - /* fl will be 1 if dup2 did not reset the close-on-exec flag. */ - exit(fl != 1); -} -], bash_cv_dup2_broken=yes, bash_cv_dup2_broken=no, - [AC_MSG_WARN(cannot check dup2 if cross compiling -- defaulting to no) - bash_cv_dup2_broken=no]) -]) -AC_MSG_RESULT($bash_cv_dup2_broken) -if test $bash_cv_dup2_broken = yes; then -AC_DEFINE(DUP2_BROKEN) -fi -]) - -AC_DEFUN([BASH_FUNC_STRSIGNAL], -[AC_MSG_CHECKING([for the existence of strsignal]) -AC_CACHE_VAL(bash_cv_have_strsignal, -[AC_TRY_LINK([#include -#include ], -[char *s = (char *)strsignal(2);], - bash_cv_have_strsignal=yes, bash_cv_have_strsignal=no)]) -AC_MSG_RESULT($bash_cv_have_strsignal) -if test $bash_cv_have_strsignal = yes; then -AC_DEFINE(HAVE_STRSIGNAL) -fi -]) - -dnl Check to see if opendir will open non-directories (not a nice thing) -AC_DEFUN([BASH_FUNC_OPENDIR_CHECK], -[AC_REQUIRE([AC_HEADER_DIRENT])dnl -AC_MSG_CHECKING(if opendir() opens non-directories) -AC_CACHE_VAL(bash_cv_opendir_not_robust, -[AC_TRY_RUN([ -#include -#include -#include -#ifdef HAVE_UNISTD_H -# include -#endif /* HAVE_UNISTD_H */ -#if defined(HAVE_DIRENT_H) -# include -#else -# define dirent direct -# ifdef HAVE_SYS_NDIR_H -# include -# endif /* SYSNDIR */ -# ifdef HAVE_SYS_DIR_H -# include -# endif /* SYSDIR */ -# ifdef HAVE_NDIR_H -# include -# endif -#endif /* HAVE_DIRENT_H */ -main() -{ -DIR *dir; -int fd, err; -err = mkdir("/tmp/bash-aclocal", 0700); -if (err < 0) { - perror("mkdir"); - exit(1); -} -unlink("/tmp/bash-aclocal/not_a_directory"); -fd = open("/tmp/bash-aclocal/not_a_directory", O_WRONLY|O_CREAT|O_EXCL, 0666); -write(fd, "\n", 1); -close(fd); -dir = opendir("/tmp/bash-aclocal/not_a_directory"); -unlink("/tmp/bash-aclocal/not_a_directory"); -rmdir("/tmp/bash-aclocal"); -exit (dir == 0); -}], bash_cv_opendir_not_robust=yes,bash_cv_opendir_not_robust=no, - [AC_MSG_WARN(cannot check opendir if cross compiling -- defaulting to no) - bash_cv_opendir_not_robust=no] -)]) -AC_MSG_RESULT($bash_cv_opendir_not_robust) -if test $bash_cv_opendir_not_robust = yes; then -AC_DEFINE(OPENDIR_NOT_ROBUST) -fi -]) - -dnl -AH_TEMPLATE([VOID_SIGHANDLER], [Define if signal handlers return type void]) -AC_DEFUN([BASH_TYPE_SIGHANDLER], -[AC_MSG_CHECKING([whether signal handlers are of type void]) -AC_CACHE_VAL(bash_cv_void_sighandler, -[AC_TRY_COMPILE([#include -#include -#ifdef signal -#undef signal -#endif -#ifdef __cplusplus -extern "C" -#endif -void (*signal ()) ();], -[int i;], bash_cv_void_sighandler=yes, bash_cv_void_sighandler=no)])dnl -AC_MSG_RESULT($bash_cv_void_sighandler) -if test $bash_cv_void_sighandler = yes; then -AC_DEFINE(VOID_SIGHANDLER) -fi -]) - -dnl -dnl A signed 16-bit integer quantity -dnl -AC_DEFUN([BASH_TYPE_BITS16_T], -[ -if test "$ac_cv_sizeof_short" = 2; then - AC_CHECK_TYPE(bits16_t, short) -elif test "$ac_cv_sizeof_char" = 2; then - AC_CHECK_TYPE(bits16_t, char) -else - AC_CHECK_TYPE(bits16_t, short) -fi -]) - -dnl -dnl An unsigned 16-bit integer quantity -dnl -AC_DEFUN([BASH_TYPE_U_BITS16_T], -[ -if test "$ac_cv_sizeof_short" = 2; then - AC_CHECK_TYPE(u_bits16_t, unsigned short) -elif test "$ac_cv_sizeof_char" = 2; then - AC_CHECK_TYPE(u_bits16_t, unsigned char) -else - AC_CHECK_TYPE(u_bits16_t, unsigned short) -fi -]) - -dnl -dnl A signed 32-bit integer quantity -dnl -AC_DEFUN([BASH_TYPE_BITS32_T], -[ -if test "$ac_cv_sizeof_int" = 4; then - AC_CHECK_TYPE(bits32_t, int) -elif test "$ac_cv_sizeof_long" = 4; then - AC_CHECK_TYPE(bits32_t, long) -else - AC_CHECK_TYPE(bits32_t, int) -fi -]) - -dnl -dnl An unsigned 32-bit integer quantity -dnl -AC_DEFUN([BASH_TYPE_U_BITS32_T], -[ -if test "$ac_cv_sizeof_int" = 4; then - AC_CHECK_TYPE(u_bits32_t, unsigned int) -elif test "$ac_cv_sizeof_long" = 4; then - AC_CHECK_TYPE(u_bits32_t, unsigned long) -else - AC_CHECK_TYPE(u_bits32_t, unsigned int) -fi -]) - -AC_DEFUN([BASH_TYPE_PTRDIFF_T], -[ -if test "$ac_cv_sizeof_int" = "$ac_cv_sizeof_char_p"; then - AC_CHECK_TYPE(ptrdiff_t, int) -elif test "$ac_cv_sizeof_long" = "$ac_cv_sizeof_char_p"; then - AC_CHECK_TYPE(ptrdiff_t, long) -elif test "$ac_cv_type_long_long" = yes && test "$ac_cv_sizeof_long_long" = "$ac_cv_sizeof_char_p"; then - AC_CHECK_TYPE(ptrdiff_t, [long long]) -else - AC_CHECK_TYPE(ptrdiff_t, int) -fi -]) - -dnl -dnl A signed 64-bit quantity -dnl -AC_DEFUN([BASH_TYPE_BITS64_T], -[ -if test "$ac_cv_sizeof_char_p" = 8; then - AC_CHECK_TYPE(bits64_t, char *) -elif test "$ac_cv_sizeof_double" = 8; then - AC_CHECK_TYPE(bits64_t, double) -elif test -n "$ac_cv_type_long_long" && test "$ac_cv_sizeof_long_long" = 8; then - AC_CHECK_TYPE(bits64_t, [long long]) -elif test "$ac_cv_sizeof_long" = 8; then - AC_CHECK_TYPE(bits64_t, long) -else - AC_CHECK_TYPE(bits64_t, double) -fi -]) - -AC_DEFUN([BASH_TYPE_LONG_LONG], -[ -AC_CACHE_CHECK([for long long], bash_cv_type_long_long, -[AC_TRY_LINK([ -long long ll = 1; int i = 63;], -[ -long long llm = (long long) -1; -return ll << i | ll >> i | llm / ll | llm % ll; -], bash_cv_type_long_long='long long', bash_cv_type_long_long='long')]) -if test "$bash_cv_type_long_long" = 'long long'; then - AC_DEFINE(HAVE_LONG_LONG, 1) -fi -]) - -AC_DEFUN([BASH_TYPE_UNSIGNED_LONG_LONG], -[ -AC_CACHE_CHECK([for unsigned long long], bash_cv_type_unsigned_long_long, -[AC_TRY_LINK([ -unsigned long long ull = 1; int i = 63;], -[ -unsigned long long ullmax = (unsigned long long) -1; -return ull << i | ull >> i | ullmax / ull | ullmax % ull; -], bash_cv_type_unsigned_long_long='unsigned long long', - bash_cv_type_unsigned_long_long='unsigned long')]) -if test "$bash_cv_type_unsigned_long_long" = 'unsigned long long'; then - AC_DEFINE(HAVE_UNSIGNED_LONG_LONG, 1) -fi -]) - -dnl -dnl Type of struct rlimit fields: some systems (OSF/1, NetBSD, RISC/os 5.0) -dnl have a rlim_t, others (4.4BSD based systems) use quad_t, others use -dnl long and still others use int (HP-UX 9.01, SunOS 4.1.3). To simplify -dnl matters, this just checks for rlim_t, quad_t, or long. -dnl -AC_DEFUN([BASH_TYPE_RLIMIT], -[AC_MSG_CHECKING(for size and type of struct rlimit fields) -AC_CACHE_VAL(bash_cv_type_rlimit, -[AC_TRY_COMPILE([#include -#include ], -[rlim_t xxx;], bash_cv_type_rlimit=rlim_t,[ -AC_TRY_RUN([ -#include -#include -#include -main() -{ -#ifdef HAVE_QUAD_T - struct rlimit rl; - if (sizeof(rl.rlim_cur) == sizeof(quad_t)) - exit(0); -#endif - exit(1); -}], bash_cv_type_rlimit=quad_t, bash_cv_type_rlimit=long, - [AC_MSG_WARN(cannot check quad_t if cross compiling -- defaulting to long) - bash_cv_type_rlimit=long])]) -]) -AC_MSG_RESULT($bash_cv_type_rlimit) -if test $bash_cv_type_rlimit = quad_t; then -AC_DEFINE(RLIMTYPE, quad_t) -elif test $bash_cv_type_rlimit = rlim_t; then -AC_DEFINE(RLIMTYPE, rlim_t) -fi -]) - -AC_DEFUN([BASH_FUNC_LSTAT], -[dnl Cannot use AC_CHECK_FUNCS(lstat) because Linux defines lstat() as an -dnl inline function in . -AC_CACHE_CHECK([for lstat], bash_cv_func_lstat, -[AC_TRY_LINK([ -#include -#include -],[ lstat(".",(struct stat *)0); ], -bash_cv_func_lstat=yes, bash_cv_func_lstat=no)]) -if test $bash_cv_func_lstat = yes; then - AC_DEFINE(HAVE_LSTAT) -fi -]) - -AC_DEFUN([BASH_FUNC_INET_ATON], -[ -AC_CACHE_CHECK([for inet_aton], bash_cv_func_inet_aton, -[AC_TRY_LINK([ -#include -#include -#include -struct in_addr ap;], [ inet_aton("127.0.0.1", &ap); ], -bash_cv_func_inet_aton=yes, bash_cv_func_inet_aton=no)]) -if test $bash_cv_func_inet_aton = yes; then - AC_DEFINE(HAVE_INET_ATON) -else - AC_LIBOBJ(inet_aton) -fi -]) - -AC_DEFUN([BASH_FUNC_GETENV], -[AC_MSG_CHECKING(to see if getenv can be redefined) -AC_CACHE_VAL(bash_cv_getenv_redef, -[AC_TRY_RUN([ -#ifdef HAVE_UNISTD_H -# include -#endif -#ifndef __STDC__ -# ifndef const -# define const -# endif -#endif -char * -getenv (name) -#if defined (__linux__) || defined (__bsdi__) || defined (convex) - const char *name; -#else - char const *name; -#endif /* !__linux__ && !__bsdi__ && !convex */ -{ -return "42"; -} -main() -{ -char *s; -/* The next allows this program to run, but does not allow bash to link - when it redefines getenv. I'm not really interested in figuring out - why not. */ -#if defined (NeXT) -exit(1); -#endif -s = getenv("ABCDE"); -exit(s == 0); /* force optimizer to leave getenv in */ -} -], bash_cv_getenv_redef=yes, bash_cv_getenv_redef=no, - [AC_MSG_WARN(cannot check getenv redefinition if cross compiling -- defaulting to yes) - bash_cv_getenv_redef=yes] -)]) -AC_MSG_RESULT($bash_cv_getenv_redef) -if test $bash_cv_getenv_redef = yes; then -AC_DEFINE(CAN_REDEFINE_GETENV) -fi -]) - -# We should check for putenv before calling this -AC_DEFUN([BASH_FUNC_STD_PUTENV], -[ -AC_REQUIRE([AC_HEADER_STDC]) -AC_REQUIRE([AC_C_PROTOTYPES]) -AC_CACHE_CHECK([for standard-conformant putenv declaration], bash_cv_std_putenv, -[AC_TRY_LINK([ -#if STDC_HEADERS -#include -#include -#endif -#ifndef __STDC__ -# ifndef const -# define const -# endif -#endif -#ifdef PROTOTYPES -extern int putenv (char *); -#else -extern int putenv (); -#endif -], -[return (putenv == 0);], -bash_cv_std_putenv=yes, bash_cv_std_putenv=no -)]) -if test $bash_cv_std_putenv = yes; then -AC_DEFINE(HAVE_STD_PUTENV) -fi -]) - -# We should check for unsetenv before calling this -AC_DEFUN([BASH_FUNC_STD_UNSETENV], -[ -AC_REQUIRE([AC_HEADER_STDC]) -AC_REQUIRE([AC_C_PROTOTYPES]) -AC_CACHE_CHECK([for standard-conformant unsetenv declaration], bash_cv_std_unsetenv, -[AC_TRY_LINK([ -#if STDC_HEADERS -#include -#include -#endif -#ifndef __STDC__ -# ifndef const -# define const -# endif -#endif -#ifdef PROTOTYPES -extern int unsetenv (const char *); -#else -extern int unsetenv (); -#endif -], -[return (unsetenv == 0);], -bash_cv_std_unsetenv=yes, bash_cv_std_unsetenv=no -)]) -if test $bash_cv_std_unsetenv = yes; then -AC_DEFINE(HAVE_STD_UNSETENV) -fi -]) - -AC_DEFUN([BASH_FUNC_ULIMIT_MAXFDS], -[AC_MSG_CHECKING(whether ulimit can substitute for getdtablesize) -AC_CACHE_VAL(bash_cv_ulimit_maxfds, -[AC_TRY_RUN([ -main() -{ -long maxfds = ulimit(4, 0L); -exit (maxfds == -1L); -} -], bash_cv_ulimit_maxfds=yes, bash_cv_ulimit_maxfds=no, - [AC_MSG_WARN(cannot check ulimit if cross compiling -- defaulting to no) - bash_cv_ulimit_maxfds=no] -)]) -AC_MSG_RESULT($bash_cv_ulimit_maxfds) -if test $bash_cv_ulimit_maxfds = yes; then -AC_DEFINE(ULIMIT_MAXFDS) -fi -]) - -AC_DEFUN([BASH_FUNC_GETCWD], -[AC_MSG_CHECKING([if getcwd() calls popen()]) -AC_CACHE_VAL(bash_cv_getcwd_calls_popen, -[AC_TRY_RUN([ -#include -#ifdef HAVE_UNISTD_H -#include -#endif - -#ifndef __STDC__ -#ifndef const -#define const -#endif -#endif - -int popen_called; - -FILE * -popen(command, type) - const char *command; - const char *type; -{ - popen_called = 1; - return (FILE *)NULL; -} - -FILE *_popen(command, type) - const char *command; - const char *type; -{ - return (popen (command, type)); -} - -int -pclose(stream) -FILE *stream; -{ - return 0; -} - -int -_pclose(stream) -FILE *stream; -{ - return 0; -} - -main() -{ - char lbuf[32]; - popen_called = 0; - getcwd(lbuf, 32); - exit (popen_called); -} -], bash_cv_getcwd_calls_popen=no, bash_cv_getcwd_calls_popen=yes, - [AC_MSG_WARN(cannot check whether getcwd calls popen if cross compiling -- defaulting to no) - bash_cv_getcwd_calls_popen=no] -)]) -AC_MSG_RESULT($bash_cv_getcwd_calls_popen) -if test $bash_cv_getcwd_calls_popen = yes; then -AC_DEFINE(GETCWD_BROKEN) -AC_LIBOBJ(getcwd) -fi -]) - -dnl -dnl This needs BASH_CHECK_SOCKLIB, but since that's not called on every -dnl system, we can't use AC_PREREQ -dnl -AC_DEFUN([BASH_FUNC_GETHOSTBYNAME], -[if test "X$bash_cv_have_gethostbyname" = "X"; then -_bash_needmsg=yes -else -AC_MSG_CHECKING(for gethostbyname in socket library) -_bash_needmsg= -fi -AC_CACHE_VAL(bash_cv_have_gethostbyname, -[AC_TRY_LINK([#include ], -[ struct hostent *hp; - hp = gethostbyname("localhost"); -], bash_cv_have_gethostbyname=yes, bash_cv_have_gethostbyname=no)] -) -if test "X$_bash_needmsg" = Xyes; then - AC_MSG_CHECKING(for gethostbyname in socket library) -fi -AC_MSG_RESULT($bash_cv_have_gethostbyname) -if test "$bash_cv_have_gethostbyname" = yes; then -AC_DEFINE(HAVE_GETHOSTBYNAME) -fi -]) - -AC_DEFUN([BASH_FUNC_FNMATCH_EXTMATCH], -[AC_MSG_CHECKING(if fnmatch does extended pattern matching with FNM_EXTMATCH) -AC_CACHE_VAL(bash_cv_fnm_extmatch, -[AC_TRY_RUN([ -#include - -main() -{ -#ifdef FNM_EXTMATCH - exit (0); -#else - exit (1); -#endif -} -], bash_cv_fnm_extmatch=yes, bash_cv_fnm_extmatch=no, - [AC_MSG_WARN(cannot check FNM_EXTMATCH if cross compiling -- defaulting to no) - bash_cv_fnm_extmatch=no]) -]) -AC_MSG_RESULT($bash_cv_fnm_extmatch) -if test $bash_cv_fnm_extmatch = yes; then -AC_DEFINE(HAVE_LIBC_FNM_EXTMATCH) -fi -]) - -AH_TEMPLATE([HAVE_POSIX_SIGSETJMP], [Define if we POSIX-style sigsetjmp/siglongjmp are available]) -AC_DEFUN([BASH_FUNC_POSIX_SETJMP], -[AC_REQUIRE([BASH_SYS_SIGNAL_VINTAGE]) -AC_MSG_CHECKING(for presence of POSIX-style sigsetjmp/siglongjmp) -AC_CACHE_VAL(bash_cv_func_sigsetjmp, -[AC_TRY_RUN([ -#ifdef HAVE_UNISTD_H -#include -#endif -#include -#include -#include - -main() -{ -#if !defined (_POSIX_VERSION) || !defined (HAVE_POSIX_SIGNALS) -exit (1); -#else - -int code; -sigset_t set, oset; -sigjmp_buf xx; - -/* get the mask */ -sigemptyset(&set); -sigemptyset(&oset); -sigprocmask(SIG_BLOCK, (sigset_t *)NULL, &set); -sigprocmask(SIG_BLOCK, (sigset_t *)NULL, &oset); - -/* save it */ -code = sigsetjmp(xx, 1); -if (code) - exit(0); /* could get sigmask and compare to oset here. */ - -/* change it */ -sigaddset(&set, SIGINT); -sigprocmask(SIG_BLOCK, &set, (sigset_t *)NULL); - -/* and siglongjmp */ -siglongjmp(xx, 10); -exit(1); -#endif -}], bash_cv_func_sigsetjmp=present, bash_cv_func_sigsetjmp=missing, - [AC_MSG_WARN(cannot check for sigsetjmp/siglongjmp if cross-compiling -- defaulting to missing) - bash_cv_func_sigsetjmp=missing] -)]) -AC_MSG_RESULT($bash_cv_func_sigsetjmp) -if test $bash_cv_func_sigsetjmp = present; then -AC_DEFINE(HAVE_POSIX_SIGSETJMP) -fi -]) - -AH_TEMPLATE([STRCOLL_BROKEN], [Define if strcoll is broken with respect to strcmp in the default locale.]) -AC_DEFUN([BASH_FUNC_STRCOLL], -[ -AC_MSG_CHECKING(whether or not strcoll and strcmp differ) -AC_CACHE_VAL(bash_cv_func_strcoll_broken, -[AC_TRY_RUN([ -#include -#if defined (HAVE_LOCALE_H) -#include -#endif - -main(c, v) -int c; -char *v[]; -{ - int r1, r2; - char *deflocale, *defcoll; - -#ifdef HAVE_SETLOCALE - deflocale = setlocale(LC_ALL, ""); - defcoll = setlocale(LC_COLLATE, ""); -#endif - -#ifdef HAVE_STRCOLL - /* These two values are taken from tests/glob-test. */ - r1 = strcoll("abd", "aXd"); -#else - r1 = 0; -#endif - r2 = strcmp("abd", "aXd"); - - /* These two should both be greater than 0. It is permissible for - a system to return different values, as long as the sign is the - same. */ - - /* Exit with 1 (failure) if these two values are both > 0, since - this tests whether strcoll(3) is broken with respect to strcmp(3) - in the default locale. */ - exit (r1 > 0 && r2 > 0); -} -], bash_cv_func_strcoll_broken=yes, bash_cv_func_strcoll_broken=no, - [AC_MSG_WARN(cannot check strcoll if cross compiling -- defaulting to no) - bash_cv_func_strcoll_broken=no] -)]) -AC_MSG_RESULT($bash_cv_func_strcoll_broken) -if test $bash_cv_func_strcoll_broken = yes; then -AC_DEFINE(STRCOLL_BROKEN) -fi -]) - -AC_DEFUN([BASH_FUNC_PRINTF_A_FORMAT], -[AC_MSG_CHECKING([for printf floating point output in hex notation]) -AC_CACHE_VAL(bash_cv_printf_a_format, -[AC_TRY_RUN([ -#include -#include - -int -main() -{ - double y = 0.0; - char abuf[1024]; - - sprintf(abuf, "%A", y); - exit(strchr(abuf, 'P') == (char *)0); -} -], bash_cv_printf_a_format=yes, bash_cv_printf_a_format=no, - [AC_MSG_WARN(cannot check printf if cross compiling -- defaulting to no) - bash_cv_printf_a_format=no] -)]) -AC_MSG_RESULT($bash_cv_printf_a_format) -if test $bash_cv_printf_a_format = yes; then -AC_DEFINE(HAVE_PRINTF_A_FORMAT) -fi -]) - -AC_DEFUN([BASH_STRUCT_TERMIOS_LDISC], -[ -AC_CHECK_MEMBER(struct termios.c_line, AC_DEFINE(TERMIOS_LDISC), ,[ -#include -#include -]) -]) - -AC_DEFUN([BASH_STRUCT_TERMIO_LDISC], -[ -AC_CHECK_MEMBER(struct termio.c_line, AC_DEFINE(TERMIO_LDISC), ,[ -#include -#include -]) -]) - -dnl -dnl Like AC_STRUCT_ST_BLOCKS, but doesn't muck with LIBOBJS -dnl -dnl sets bash_cv_struct_stat_st_blocks -dnl -dnl unused for now; we'll see how AC_CHECK_MEMBERS works -dnl -AC_DEFUN([BASH_STRUCT_ST_BLOCKS], -[ -AC_MSG_CHECKING([for struct stat.st_blocks]) -AC_CACHE_VAL(bash_cv_struct_stat_st_blocks, -[AC_TRY_COMPILE( -[ -#include -#include -], -[ -main() -{ -static struct stat a; -if (a.st_blocks) return 0; -return 0; -} -], bash_cv_struct_stat_st_blocks=yes, bash_cv_struct_stat_st_blocks=no) -]) -AC_MSG_RESULT($bash_cv_struct_stat_st_blocks) -if test "$bash_cv_struct_stat_st_blocks" = "yes"; then -AC_DEFINE(HAVE_STRUCT_STAT_ST_BLOCKS) -fi -]) - -AC_DEFUN([BASH_CHECK_LIB_TERMCAP], -[ -if test "X$bash_cv_termcap_lib" = "X"; then -_bash_needmsg=yes -else -AC_MSG_CHECKING(which library has the termcap functions) -_bash_needmsg= -fi -AC_CACHE_VAL(bash_cv_termcap_lib, -[AC_CHECK_LIB(termcap, tgetent, bash_cv_termcap_lib=libtermcap, - [AC_CHECK_LIB(tinfo, tgetent, bash_cv_termcap_lib=libtinfo, - [AC_CHECK_LIB(curses, tgetent, bash_cv_termcap_lib=libcurses, - [AC_CHECK_LIB(ncurses, tgetent, bash_cv_termcap_lib=libncurses, - bash_cv_termcap_lib=gnutermcap)])])])]) -if test "X$_bash_needmsg" = "Xyes"; then -AC_MSG_CHECKING(which library has the termcap functions) -fi -AC_MSG_RESULT(using $bash_cv_termcap_lib) -if test $bash_cv_termcap_lib = gnutermcap && test -z "$prefer_curses"; then -LDFLAGS="$LDFLAGS -L./lib/termcap" -TERMCAP_LIB="./lib/termcap/libtermcap.a" -TERMCAP_DEP="./lib/termcap/libtermcap.a" -elif test $bash_cv_termcap_lib = libtermcap && test -z "$prefer_curses"; then -TERMCAP_LIB=-ltermcap -TERMCAP_DEP= -elif test $bash_cv_termcap_lib = libtinfo; then -TERMCAP_LIB=-ltinfo -TERMCAP_DEP= -elif test $bash_cv_termcap_lib = libncurses; then -TERMCAP_LIB=-lncurses -TERMCAP_DEP= -else -TERMCAP_LIB=-lcurses -TERMCAP_DEP= -fi -]) - -dnl -dnl Check for the presence of getpeername in libsocket. -dnl If libsocket is present, check for libnsl and add it to LIBS if -dnl it's there, since most systems with libsocket require linking -dnl with libnsl as well. This should only be called if getpeername -dnl was not found in libc. -dnl -dnl NOTE: IF WE FIND GETPEERNAME, WE ASSUME THAT WE HAVE BIND/CONNECT -dnl AS WELL -dnl -AC_DEFUN([BASH_CHECK_LIB_SOCKET], -[ -if test "X$bash_cv_have_socklib" = "X"; then -_bash_needmsg= -else -AC_MSG_CHECKING(for socket library) -_bash_needmsg=yes -fi -AC_CACHE_VAL(bash_cv_have_socklib, -[AC_CHECK_LIB(socket, getpeername, - bash_cv_have_socklib=yes, bash_cv_have_socklib=no, -lnsl)]) -if test "X$_bash_needmsg" = Xyes; then - AC_MSG_RESULT($bash_cv_have_socklib) - _bash_needmsg= -fi -if test $bash_cv_have_socklib = yes; then - # check for libnsl, add it to LIBS if present - if test "X$bash_cv_have_libnsl" = "X"; then - _bash_needmsg= - else - AC_MSG_CHECKING(for libnsl) - _bash_needmsg=yes - fi - AC_CACHE_VAL(bash_cv_have_libnsl, - [AC_CHECK_LIB(nsl, t_open, - bash_cv_have_libnsl=yes, bash_cv_have_libnsl=no)]) - if test "X$_bash_needmsg" = Xyes; then - AC_MSG_RESULT($bash_cv_have_libnsl) - _bash_needmsg= - fi - if test $bash_cv_have_libnsl = yes; then - LIBS="-lsocket -lnsl $LIBS" - else - LIBS="-lsocket $LIBS" - fi - AC_DEFINE(HAVE_LIBSOCKET) - AC_DEFINE(HAVE_GETPEERNAME) -fi -]) - -AH_TEMPLATE([STRUCT_DIRENT_HAS_D_INO], [Define if struct dirent has a d_ino member]) -AC_DEFUN([BASH_STRUCT_DIRENT_D_INO], -[AC_REQUIRE([AC_HEADER_DIRENT]) -AC_MSG_CHECKING(if struct dirent has a d_ino member) -AC_CACHE_VAL(bash_cv_dirent_has_dino, -[AC_TRY_COMPILE([ -#include -#include -#ifdef HAVE_UNISTD_H -# include -#endif /* HAVE_UNISTD_H */ -#if defined(HAVE_DIRENT_H) -# include -#else -# define dirent direct -# ifdef HAVE_SYS_NDIR_H -# include -# endif /* SYSNDIR */ -# ifdef HAVE_SYS_DIR_H -# include -# endif /* SYSDIR */ -# ifdef HAVE_NDIR_H -# include -# endif -#endif /* HAVE_DIRENT_H */ -],[ -struct dirent d; int z; z = d.d_ino; -], bash_cv_dirent_has_dino=yes, bash_cv_dirent_has_dino=no)]) -AC_MSG_RESULT($bash_cv_dirent_has_dino) -if test $bash_cv_dirent_has_dino = yes; then -AC_DEFINE(STRUCT_DIRENT_HAS_D_INO) -fi -]) - -AH_TEMPLATE([STRUCT_DIRENT_HAS_D_FILENO], [Define if struct dirent has a d_fileno member]) -AC_DEFUN([BASH_STRUCT_DIRENT_D_FILENO], -[AC_REQUIRE([AC_HEADER_DIRENT]) -AC_MSG_CHECKING(if struct dirent has a d_fileno member) -AC_CACHE_VAL(bash_cv_dirent_has_d_fileno, -[AC_TRY_COMPILE([ -#include -#include -#ifdef HAVE_UNISTD_H -# include -#endif /* HAVE_UNISTD_H */ -#if defined(HAVE_DIRENT_H) -# include -#else -# define dirent direct -# ifdef HAVE_SYS_NDIR_H -# include -# endif /* SYSNDIR */ -# ifdef HAVE_SYS_DIR_H -# include -# endif /* SYSDIR */ -# ifdef HAVE_NDIR_H -# include -# endif -#endif /* HAVE_DIRENT_H */ -],[ -struct dirent d; int z; z = d.d_fileno; -], bash_cv_dirent_has_d_fileno=yes, bash_cv_dirent_has_d_fileno=no)]) -AC_MSG_RESULT($bash_cv_dirent_has_d_fileno) -if test $bash_cv_dirent_has_d_fileno = yes; then -AC_DEFINE(STRUCT_DIRENT_HAS_D_FILENO) -fi -]) - -AC_DEFUN([BASH_STRUCT_TIMEVAL], -[AC_MSG_CHECKING(for struct timeval in sys/time.h and time.h) -AC_CACHE_VAL(bash_cv_struct_timeval, -[ -AC_EGREP_HEADER(struct timeval, sys/time.h, - bash_cv_struct_timeval=yes, - AC_EGREP_HEADER(struct timeval, time.h, - bash_cv_struct_timeval=yes, - bash_cv_struct_timeval=no)) -]) -AC_MSG_RESULT($bash_cv_struct_timeval) -if test $bash_cv_struct_timeval = yes; then - AC_DEFINE(HAVE_TIMEVAL) -fi -]) - -AH_TEMPLATE([STRUCT_WINSIZE_IN_SYS_IOCTL], [Define if struct winsize is in sys/ioctl.h]) -AH_TEMPLATE([STRUCT_WINSIZE_IN_TERMIOS], [Define if struct winsize is in termios.h]) -AC_DEFUN([BASH_STRUCT_WINSIZE], -[AC_MSG_CHECKING(for struct winsize in sys/ioctl.h and termios.h) -AC_CACHE_VAL(bash_cv_struct_winsize_header, -[AC_TRY_COMPILE([#include -#include ], [struct winsize x;], - bash_cv_struct_winsize_header=ioctl_h, - [AC_TRY_COMPILE([#include -#include ], [struct winsize x;], - bash_cv_struct_winsize_header=termios_h, bash_cv_struct_winsize_header=other) -])]) -if test $bash_cv_struct_winsize_header = ioctl_h; then - AC_MSG_RESULT(sys/ioctl.h) - AC_DEFINE(STRUCT_WINSIZE_IN_SYS_IOCTL) -elif test $bash_cv_struct_winsize_header = termios_h; then - AC_MSG_RESULT(termios.h) - AC_DEFINE(STRUCT_WINSIZE_IN_TERMIOS) -else - AC_MSG_RESULT(not found) -fi -]) - -dnl Check type of signal routines (posix, 4.2bsd, 4.1bsd or v7) -AH_TEMPLATE([HAVE_POSIX_SIGNALS], [Define if we have the POSIX signal routines]) -AH_TEMPLATE([HAVE_BSD_SIGNALS], [Define if we have the BSD signal routines]) -AH_TEMPLATE([HAVE_USG_SIGHOLD], [Define if we have the USG signal routines]) -AC_DEFUN([BASH_SYS_SIGNAL_VINTAGE], -[AC_REQUIRE([AC_TYPE_SIGNAL]) -AC_MSG_CHECKING(for type of signal functions) -AC_CACHE_VAL(bash_cv_signal_vintage, -[ - AC_MSG_WARN([checking for posix...]) - AC_TRY_LINK([#include ],[ - sigset_t ss; - struct sigaction sa; - sigemptyset(&ss); sigsuspend(&ss); - sigaction(SIGINT, &sa, (struct sigaction *) 0); - sigprocmask(SIG_BLOCK, &ss, (sigset_t *) 0); - ], bash_cv_signal_vintage="posix", - [ - AC_MSG_WARN([checking for 4.2bsd...]) - AC_TRY_LINK([#include ], [ - int mask = sigmask(SIGINT); - sigsetmask(mask); sigblock(mask); sigpause(mask); - ], bash_cv_signal_vintage="4.2bsd", - [ - AC_MSG_WARN([checking for svr3...]) - AC_TRY_LINK([ - #include - RETSIGTYPE foo() { }], [ - int mask = sigmask(SIGINT); - sigset(SIGINT, foo); sigrelse(SIGINT); - sighold(SIGINT); sigpause(SIGINT); - ], bash_cv_signal_vintage="svr3", bash_cv_signal_vintage="v7" - )] - )] -) -]) -AC_MSG_RESULT($bash_cv_signal_vintage) -if test "$bash_cv_signal_vintage" = "posix"; then -AC_DEFINE(HAVE_POSIX_SIGNALS) -elif test "$bash_cv_signal_vintage" = "4.2bsd"; then -AC_DEFINE(HAVE_BSD_SIGNALS) -elif test "$bash_cv_signal_vintage" = "svr3"; then -AC_DEFINE(HAVE_USG_SIGHOLD) -fi -]) - -dnl Check if the pgrp of setpgrp() can't be the pid of a zombie process. -AC_DEFUN([BASH_SYS_PGRP_SYNC], -[AC_REQUIRE([AC_FUNC_GETPGRP]) -AC_MSG_CHECKING(whether pgrps need synchronization) -AC_CACHE_VAL(bash_cv_pgrp_pipe, -[AC_TRY_RUN([ -#ifdef HAVE_UNISTD_H -# include -#endif -main() -{ -# ifdef GETPGRP_VOID -# define getpgID() getpgrp() -# else -# define getpgID() getpgrp(0) -# define setpgid(x,y) setpgrp(x,y) -# endif - int pid1, pid2, fds[2]; - int status; - char ok; - - switch (pid1 = fork()) { - case -1: - exit(1); - case 0: - setpgid(0, getpid()); - exit(0); - } - setpgid(pid1, pid1); - - sleep(2); /* let first child die */ - - if (pipe(fds) < 0) - exit(2); - - switch (pid2 = fork()) { - case -1: - exit(3); - case 0: - setpgid(0, pid1); - ok = getpgID() == pid1; - write(fds[1], &ok, 1); - exit(0); - } - setpgid(pid2, pid1); - - close(fds[1]); - if (read(fds[0], &ok, 1) != 1) - exit(4); - wait(&status); - wait(&status); - exit(ok ? 0 : 5); -} -], bash_cv_pgrp_pipe=no,bash_cv_pgrp_pipe=yes, - [AC_MSG_WARN(cannot check pgrp synchronization if cross compiling -- defaulting to no) - bash_cv_pgrp_pipe=no]) -]) -AC_MSG_RESULT($bash_cv_pgrp_pipe) -if test $bash_cv_pgrp_pipe = yes; then -AC_DEFINE(PGRP_PIPE) -fi -]) - -AH_TEMPLATE([MUST_REINSTALL_SIGHANDLERS], [Define if signal handlers must be reinstalled when invoked.]) -AC_DEFUN([BASH_SYS_REINSTALL_SIGHANDLERS], -[AC_REQUIRE([AC_TYPE_SIGNAL]) -AC_REQUIRE([BASH_SYS_SIGNAL_VINTAGE]) -AC_MSG_CHECKING([if signal handlers must be reinstalled when invoked]) -AC_CACHE_VAL(bash_cv_must_reinstall_sighandlers, -[AC_TRY_RUN([ -#include -#ifdef HAVE_UNISTD_H -#include -#endif - -typedef RETSIGTYPE sigfunc(); - -int nsigint; - -#ifdef HAVE_POSIX_SIGNALS -sigfunc * -set_signal_handler(sig, handler) - int sig; - sigfunc *handler; -{ - struct sigaction act, oact; - act.sa_handler = handler; - act.sa_flags = 0; - sigemptyset (&act.sa_mask); - sigemptyset (&oact.sa_mask); - sigaction (sig, &act, &oact); - return (oact.sa_handler); -} -#else -#define set_signal_handler(s, h) signal(s, h) -#endif - -RETSIGTYPE -sigint(s) -int s; -{ - nsigint++; -} - -main() -{ - nsigint = 0; - set_signal_handler(SIGINT, sigint); - kill((int)getpid(), SIGINT); - kill((int)getpid(), SIGINT); - exit(nsigint != 2); -} -], bash_cv_must_reinstall_sighandlers=no, bash_cv_must_reinstall_sighandlers=yes, - [AC_MSG_WARN(cannot check signal handling if cross compiling -- defaulting to no) - bash_cv_must_reinstall_sighandlers=no] -)]) -AC_MSG_RESULT($bash_cv_must_reinstall_sighandlers) -if test $bash_cv_must_reinstall_sighandlers = yes; then -AC_DEFINE(MUST_REINSTALL_SIGHANDLERS) -fi -]) - -dnl check that some necessary job control definitions are present -AC_DEFUN([BASH_SYS_JOB_CONTROL_MISSING], -[AC_REQUIRE([BASH_SYS_SIGNAL_VINTAGE]) -AC_MSG_CHECKING(for presence of necessary job control definitions) -AC_CACHE_VAL(bash_cv_job_control_missing, -[AC_TRY_RUN([ -#include -#ifdef HAVE_SYS_WAIT_H -#include -#endif -#ifdef HAVE_UNISTD_H -#include -#endif -#include - -/* Add more tests in here as appropriate. */ -main() -{ -/* signal type */ -#if !defined (HAVE_POSIX_SIGNALS) && !defined (HAVE_BSD_SIGNALS) -exit(1); -#endif - -/* signals and tty control. */ -#if !defined (SIGTSTP) || !defined (SIGSTOP) || !defined (SIGCONT) -exit (1); -#endif - -/* process control */ -#if !defined (WNOHANG) || !defined (WUNTRACED) -exit(1); -#endif - -/* Posix systems have tcgetpgrp and waitpid. */ -#if defined (_POSIX_VERSION) && !defined (HAVE_TCGETPGRP) -exit(1); -#endif - -#if defined (_POSIX_VERSION) && !defined (HAVE_WAITPID) -exit(1); -#endif - -/* Other systems have TIOCSPGRP/TIOCGPRGP and wait3. */ -#if !defined (_POSIX_VERSION) && !defined (HAVE_WAIT3) -exit(1); -#endif - -exit(0); -}], bash_cv_job_control_missing=present, bash_cv_job_control_missing=missing, - [AC_MSG_WARN(cannot check job control if cross-compiling -- defaulting to missing) - bash_cv_job_control_missing=missing] -)]) -AC_MSG_RESULT($bash_cv_job_control_missing) -if test $bash_cv_job_control_missing = missing; then -AC_DEFINE(JOB_CONTROL_MISSING) -fi -]) - -dnl check whether named pipes are present -dnl this requires a previous check for mkfifo, but that is awkward to specify -AC_DEFUN([BASH_SYS_NAMED_PIPES], -[AC_MSG_CHECKING(for presence of named pipes) -AC_CACHE_VAL(bash_cv_sys_named_pipes, -[AC_TRY_RUN([ -#include -#include -#ifdef HAVE_UNISTD_H -#include -#endif - -/* Add more tests in here as appropriate. */ -main() -{ -int fd, err; - -#if defined (HAVE_MKFIFO) -exit (0); -#endif - -#if !defined (S_IFIFO) && (defined (_POSIX_VERSION) && !defined (S_ISFIFO)) -exit (1); -#endif - -#if defined (NeXT) -exit (1); -#endif -err = mkdir("/tmp/bash-aclocal", 0700); -if (err < 0) { - perror ("mkdir"); - exit(1); -} -fd = mknod ("/tmp/bash-aclocal/sh-np-autoconf", 0666 | S_IFIFO, 0); -if (fd == -1) { - rmdir ("/tmp/bash-aclocal"); - exit (1); -} -close(fd); -unlink ("/tmp/bash-aclocal/sh-np-autoconf"); -rmdir ("/tmp/bash-aclocal"); -exit(0); -}], bash_cv_sys_named_pipes=present, bash_cv_sys_named_pipes=missing, - [AC_MSG_WARN(cannot check for named pipes if cross-compiling -- defaulting to missing) - bash_cv_sys_named_pipes=missing] -)]) -AC_MSG_RESULT($bash_cv_sys_named_pipes) -if test $bash_cv_sys_named_pipes = missing; then -AC_DEFINE(NAMED_PIPES_MISSING) -fi -]) - -AC_DEFUN([BASH_SYS_DEFAULT_MAIL_DIR], -[AC_MSG_CHECKING(for default mail directory) -AC_CACHE_VAL(bash_cv_mail_dir, -[if test -d /var/mail; then - bash_cv_mail_dir=/var/mail - elif test -d /var/spool/mail; then - bash_cv_mail_dir=/var/spool/mail - elif test -d /usr/mail; then - bash_cv_mail_dir=/usr/mail - elif test -d /usr/spool/mail; then - bash_cv_mail_dir=/usr/spool/mail - else - bash_cv_mail_dir=unknown - fi -]) -AC_MSG_RESULT($bash_cv_mail_dir) -AC_DEFINE_UNQUOTED(DEFAULT_MAIL_DIRECTORY, "$bash_cv_mail_dir") -]) - -AC_DEFUN([BASH_HAVE_TIOCGWINSZ], -[AC_MSG_CHECKING(for TIOCGWINSZ in sys/ioctl.h) -AC_CACHE_VAL(bash_cv_tiocgwinsz_in_ioctl, -[AC_TRY_COMPILE([#include -#include ], [int x = TIOCGWINSZ;], - bash_cv_tiocgwinsz_in_ioctl=yes,bash_cv_tiocgwinsz_in_ioctl=no)]) -AC_MSG_RESULT($bash_cv_tiocgwinsz_in_ioctl) -if test $bash_cv_tiocgwinsz_in_ioctl = yes; then -AC_DEFINE(GWINSZ_IN_SYS_IOCTL) -fi -]) - -AH_TEMPLATE([TIOCSTAT_IN_SYS_IOCTL], [Define if TIOCSTAT is in sys/ioctl.h]) -AC_DEFUN([BASH_HAVE_TIOCSTAT], -[AC_MSG_CHECKING(for TIOCSTAT in sys/ioctl.h) -AC_CACHE_VAL(bash_cv_tiocstat_in_ioctl, -[AC_TRY_COMPILE([#include -#include ], [int x = TIOCSTAT;], - bash_cv_tiocstat_in_ioctl=yes,bash_cv_tiocstat_in_ioctl=no)]) -AC_MSG_RESULT($bash_cv_tiocstat_in_ioctl) -if test $bash_cv_tiocstat_in_ioctl = yes; then -AC_DEFINE(TIOCSTAT_IN_SYS_IOCTL) -fi -]) - -AH_TEMPLATE([FIONREAD_IN_SYS_IOCTL], [Define if FIONREAD is in sys/ioctl.h]) -AC_DEFUN([BASH_HAVE_FIONREAD], -[AC_MSG_CHECKING(for FIONREAD in sys/ioctl.h) -AC_CACHE_VAL(bash_cv_fionread_in_ioctl, -[AC_TRY_COMPILE([#include -#include ], [int x = FIONREAD;], - bash_cv_fionread_in_ioctl=yes,bash_cv_fionread_in_ioctl=no)]) -AC_MSG_RESULT($bash_cv_fionread_in_ioctl) -if test $bash_cv_fionread_in_ioctl = yes; then -AC_DEFINE(FIONREAD_IN_SYS_IOCTL) -fi -]) - -dnl -dnl See if speed_t is declared in . Some versions of linux -dnl require a definition of speed_t each time is included, -dnl but you can only get speed_t if you include (on some -dnl versions) or (on others). -dnl -AH_TEMPLATE([SPEED_T_IN_SYS_TYPES], [Define if speed_t is in sys/types.h]) -AC_DEFUN([BASH_CHECK_SPEED_T], -[AC_MSG_CHECKING(for speed_t in sys/types.h) -AC_CACHE_VAL(bash_cv_speed_t_in_sys_types, -[AC_TRY_COMPILE([#include ], [speed_t x;], - bash_cv_speed_t_in_sys_types=yes,bash_cv_speed_t_in_sys_types=no)]) -AC_MSG_RESULT($bash_cv_speed_t_in_sys_types) -if test $bash_cv_speed_t_in_sys_types = yes; then -AC_DEFINE(SPEED_T_IN_SYS_TYPES) -fi -]) - -AH_TEMPLATE([HAVE_GETPW_DECLS], [Define if getpw functions are declared in pwd.h]) -AC_DEFUN([BASH_CHECK_GETPW_FUNCS], -[AC_MSG_CHECKING(whether getpw functions are declared in pwd.h) -AC_CACHE_VAL(bash_cv_getpw_declared, -[AC_EGREP_CPP(getpwuid, -[ -#include -#ifdef HAVE_UNISTD_H -# include -#endif -#include -], -bash_cv_getpw_declared=yes,bash_cv_getpw_declared=no)]) -AC_MSG_RESULT($bash_cv_getpw_declared) -if test $bash_cv_getpw_declared = yes; then -AC_DEFINE(HAVE_GETPW_DECLS) -fi -]) - -AC_DEFUN([BASH_CHECK_DEV_FD], -[AC_MSG_CHECKING(whether /dev/fd is available) -AC_CACHE_VAL(bash_cv_dev_fd, -[if test -d /dev/fd && test -r /dev/fd/0; then - bash_cv_dev_fd=standard - elif test -d /proc/self/fd && test -r /proc/self/fd/0; then - bash_cv_dev_fd=whacky - else - bash_cv_dev_fd=absent - fi -]) -AC_MSG_RESULT($bash_cv_dev_fd) -if test $bash_cv_dev_fd = "standard"; then - AC_DEFINE(HAVE_DEV_FD) - AC_DEFINE(DEV_FD_PREFIX, "/dev/fd/") -elif test $bash_cv_dev_fd = "whacky"; then - AC_DEFINE(HAVE_DEV_FD) - AC_DEFINE(DEV_FD_PREFIX, "/proc/self/fd/") -fi -]) - -AC_DEFUN([BASH_CHECK_DEV_STDIN], -[AC_MSG_CHECKING(whether /dev/stdin stdout stderr are available) -AC_CACHE_VAL(bash_cv_dev_stdin, -[if test -d /dev/fd && test -r /dev/stdin; then - bash_cv_dev_stdin=present - elif test -d /proc/self/fd && test -r /dev/stdin; then - bash_cv_dev_stdin=present - else - bash_cv_dev_stdin=absent - fi -]) -AC_MSG_RESULT($bash_cv_dev_stdin) -if test $bash_cv_dev_stdin = "present"; then - AC_DEFINE(HAVE_DEV_STDIN) -fi -]) - -dnl -dnl Check if HPUX needs _KERNEL defined for RLIMIT_* definitions -dnl -AC_DEFUN([BASH_CHECK_KERNEL_RLIMIT], -[AC_MSG_CHECKING([whether $host_os needs _KERNEL for RLIMIT defines]) -AC_CACHE_VAL(bash_cv_kernel_rlimit, -[AC_TRY_COMPILE([ -#include -#include -], -[ - int f; - f = RLIMIT_DATA; -], bash_cv_kernel_rlimit=no, -[AC_TRY_COMPILE([ -#include -#define _KERNEL -#include -#undef _KERNEL -], -[ - int f; - f = RLIMIT_DATA; -], bash_cv_kernel_rlimit=yes, bash_cv_kernel_rlimit=no)] -)]) -AC_MSG_RESULT($bash_cv_kernel_rlimit) -if test $bash_cv_kernel_rlimit = yes; then -AC_DEFINE(RLIMIT_NEEDS_KERNEL) -fi -]) - -dnl -dnl Check for 64-bit off_t -- used for malloc alignment -dnl -dnl C does not allow duplicate case labels, so the compile will fail if -dnl sizeof(off_t) is > 4. -dnl -AC_DEFUN([BASH_CHECK_OFF_T_64], -[AC_CACHE_CHECK(for 64-bit off_t, bash_cv_off_t_64, -AC_TRY_COMPILE([ -#ifdef HAVE_UNISTD_H -#include -#endif -#include -],[ -switch (0) case 0: case (sizeof (off_t) <= 4):; -], bash_cv_off_t_64=no, bash_cv_off_t_64=yes)) -if test $bash_cv_off_t_64 = yes; then - AC_DEFINE(HAVE_OFF_T_64) -fi]) - -AC_DEFUN([BASH_CHECK_RTSIGS], -[AC_MSG_CHECKING(for unusable real-time signals due to large values) -AC_CACHE_VAL(bash_cv_unusable_rtsigs, -[AC_TRY_RUN([ -#include -#include - -#ifndef NSIG -# define NSIG 64 -#endif - -main () -{ - int n_sigs = 2 * NSIG; -#ifdef SIGRTMIN - int rtmin = SIGRTMIN; -#else - int rtmin = 0; -#endif - - exit(rtmin < n_sigs); -}], bash_cv_unusable_rtsigs=yes, bash_cv_unusable_rtsigs=no, - [AC_MSG_WARN(cannot check real-time signals if cross compiling -- defaulting to yes) - bash_cv_unusable_rtsigs=yes] -)]) -AC_MSG_RESULT($bash_cv_unusable_rtsigs) -if test $bash_cv_unusable_rtsigs = yes; then -AC_DEFINE(UNUSABLE_RT_SIGNALS) -fi -]) - -dnl -dnl check for availability of multibyte characters and functions -dnl -AH_TEMPLATE([HAVE_MBSRTOWCS], [Define if we have the mbsrtowcs function]) -AH_TEMPLATE([HAVE_WCWIDTH], [Define if we have the wcwidth function]) -AH_TEMPLATE([HAVE_MBSTATE_T], [Define if we have mbstate_t]) -AH_TEMPLATE([HAVE_LANGINFO_CODESET], [Define if we have nl_langinfo and CODESET]) -AC_DEFUN([BASH_CHECK_MULTIBYTE], -[ -AC_CHECK_HEADERS(wctype.h) -AC_CHECK_HEADERS(wchar.h) -AC_CHECK_HEADERS(langinfo.h) - -AC_CHECK_FUNC(mbsrtowcs, AC_DEFINE(HAVE_MBSRTOWCS)) -AC_CHECK_FUNC(wcwidth, AC_DEFINE(HAVE_WCWIDTH)) - -AC_CACHE_CHECK([for mbstate_t], bash_cv_have_mbstate_t, -[AC_TRY_RUN([ -#include -int -main () -{ - mbstate_t ps; - return 0; -}], bash_cv_have_mbstate_t=yes, bash_cv_have_mbstate_t=no)]) -if test $bash_cv_have_mbstate_t = yes; then - AC_DEFINE(HAVE_MBSTATE_T) -fi - -AC_CACHE_CHECK([for nl_langinfo and CODESET], bash_cv_langinfo_codeset, -[AC_TRY_LINK( -[#include ], -[char* cs = nl_langinfo(CODESET);], -bash_cv_langinfo_codeset=yes, bash_cv_langinfo_codeset=no)]) -if test $bash_cv_langinfo_codeset = yes; then - AC_DEFINE(HAVE_LANGINFO_CODESET) -fi - -]) - -dnl need: prefix exec_prefix libdir includedir CC TERMCAP_LIB -dnl require: -dnl AC_PROG_CC -dnl BASH_CHECK_LIB_TERMCAP - -AC_DEFUN([RL_LIB_READLINE_VERSION], -[ -AC_REQUIRE([BASH_CHECK_LIB_TERMCAP]) - -AC_MSG_CHECKING([version of installed readline library]) - -# What a pain in the ass this is. - -# save cpp and ld options -_save_CFLAGS="$CFLAGS" -_save_LDFLAGS="$LDFLAGS" -_save_LIBS="$LIBS" - -# Don't set ac_cv_rl_prefix if the caller has already assigned a value. This -# allows the caller to do something like $_rl_prefix=$withval if the user -# specifies --with-installed-readline=PREFIX as an argument to configure - -if test -z "$ac_cv_rl_prefix"; then -test "x$prefix" = xNONE && ac_cv_rl_prefix=$ac_default_prefix || ac_cv_rl_prefix=${prefix} -fi - -eval ac_cv_rl_includedir=${ac_cv_rl_prefix}/include -eval ac_cv_rl_libdir=${ac_cv_rl_prefix}/lib - -LIBS="$LIBS -lreadline ${TERMCAP_LIB}" -CFLAGS="$CFLAGS -I${ac_cv_rl_includedir}" -LDFLAGS="$LDFLAGS -L${ac_cv_rl_libdir}" - -AC_TRY_RUN([ -#include -#include - -main() -{ - FILE *fp; - fp = fopen("conftest.rlv", "w"); - if (fp == 0) exit(1); - fprintf(fp, "%s\n", rl_library_version ? rl_library_version : "0.0"); - fclose(fp); - exit(0); -} -], -ac_cv_rl_version=`cat conftest.rlv`, -ac_cv_rl_version='0.0', -ac_cv_rl_version='4.2') - -CFLAGS="$_save_CFLAGS" -LDFLAGS="$_save_LDFLAGS" -LIBS="$_save_LIBS" - -RL_MAJOR=0 -RL_MINOR=0 - -# ( -case "$ac_cv_rl_version" in -2*|3*|4*|5*|6*|7*|8*|9*) - RL_MAJOR=`echo $ac_cv_rl_version | sed 's:\..*$::'` - RL_MINOR=`echo $ac_cv_rl_version | sed -e 's:^.*\.::' -e 's:[[a-zA-Z]]*$::'` - ;; -esac - -# ((( -case $RL_MAJOR in -[[0-9][0-9]]) _RL_MAJOR=$RL_MAJOR ;; -[[0-9]]) _RL_MAJOR=0$RL_MAJOR ;; -*) _RL_MAJOR=00 ;; -esac - -# ((( -case $RL_MINOR in -[[0-9][0-9]]) _RL_MINOR=$RL_MINOR ;; -[[0-9]]) _RL_MINOR=0$RL_MINOR ;; -*) _RL_MINOR=00 ;; -esac - -RL_VERSION="0x${_RL_MAJOR}${_RL_MINOR}" - -# Readline versions greater than 4.2 have these defines in readline.h - -if test $ac_cv_rl_version = '0.0' ; then - AC_MSG_WARN([Could not test version of installed readline library.]) -elif test $RL_MAJOR -gt 4 || { test $RL_MAJOR = 4 && test $RL_MINOR -gt 2 ; } ; then - # set these for use by the caller - RL_PREFIX=$ac_cv_rl_prefix - RL_LIBDIR=$ac_cv_rl_libdir - RL_INCLUDEDIR=$ac_cv_rl_includedir - AC_MSG_RESULT($ac_cv_rl_version) -else - -AC_DEFINE_UNQUOTED(RL_READLINE_VERSION, $RL_VERSION, [encoded version of the installed readline library]) -AC_DEFINE_UNQUOTED(RL_VERSION_MAJOR, $RL_MAJOR, [major version of installed readline library]) -AC_DEFINE_UNQUOTED(RL_VERSION_MINOR, $RL_MINOR, [minor version of installed readline library]) - -AC_SUBST(RL_VERSION) -AC_SUBST(RL_MAJOR) -AC_SUBST(RL_MINOR) - -# set these for use by the caller -RL_PREFIX=$ac_cv_rl_prefix -RL_LIBDIR=$ac_cv_rl_libdir -RL_INCLUDEDIR=$ac_cv_rl_includedir - -AC_MSG_RESULT($ac_cv_rl_version) - -fi -]) diff --git a/meta/packages/readline/files/configure-fix.patch b/meta/packages/readline/files/configure-fix.patch deleted file mode 100644 index 4100fe42a7..0000000000 --- a/meta/packages/readline/files/configure-fix.patch +++ /dev/null @@ -1,24 +0,0 @@ -Without this it fails to link against libtermcap causing various missing symbols -issues. - -RP - 8/10/08 - -Index: readline-5.2/configure.in -=================================================================== ---- readline-5.2.orig/configure.in 2008-10-08 09:58:52.000000000 +0100 -+++ readline-5.2/configure.in 2008-10-08 09:59:03.000000000 +0100 -@@ -211,10 +211,10 @@ - AC_MSG_CHECKING(configuration for building shared libraries) - eval `TERMCAP_LIB=$TERMCAP_LIB ${CONFIG_SHELL-/bin/sh} ${srcdir}/support/shobj-conf -C "${CC}" -c ${host_cpu} -o ${host_os} -v ${host_vendor}` - --# case "$SHLIB_LIBS" in --# *curses*|*termcap*|*termlib*) ;; --# *) SHLIB_LIBS="$SHLIB_LIBS $TERMCAP_LIB" ;; --# esac -+ case "$SHLIB_LIBS" in -+ *curses*|*termcap*|*termlib*) ;; -+ *) SHLIB_LIBS="$SHLIB_LIBS $TERMCAP_LIB" ;; -+ esac - - AC_SUBST(SHOBJ_CC) - AC_SUBST(SHOBJ_CFLAGS) diff --git a/meta/packages/readline/readline.inc b/meta/packages/readline/readline.inc deleted file mode 100644 index 35bc7ed946..0000000000 --- a/meta/packages/readline/readline.inc +++ /dev/null @@ -1,34 +0,0 @@ -DESCRIPTION = "The GNU Readline library provides a set of functions for use by applications that allow users to edit \ -command lines as they are typed in. Both Emacs and vi editing modes are available. The Readline library includes \ -additional functions to maintain a list of previously-entered command lines, to recall and perhaps reedit those \ -lines, and perform csh-like history expansion on previous commands." -SECTION = "libs" -PRIORITY = "optional" - -# GPLv2+ (< 6.0), GPLv3+ (>= 6.0) -LICENSE = "GPLv3+" -LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" - -DEPENDS += "ncurses" - -SRC_URI = "${GNU_MIRROR}/readline/${BPN}-${PV}.tar.gz \ - file://configure-fix.patch \ - file://acinclude.m4" - -S = "${WORKDIR}/${BPN}-${PV}" - -inherit autotools - -LEAD_SONAME = "libreadline.so" - -do_configure_prepend () { - install -m 0644 ${WORKDIR}/acinclude.m4 ${S}/ -} - -do_install_append () { - # Make install doesn't properly install these - oe_libinstall -so -C shlib libhistory ${D}${libdir} - oe_libinstall -so -C shlib libreadline ${D}${libdir} -} - -BBCLASSEXTEND = "native nativesdk" diff --git a/meta/packages/readline/readline_5.2.bb b/meta/packages/readline/readline_5.2.bb deleted file mode 100644 index a62345c45e..0000000000 --- a/meta/packages/readline/readline_5.2.bb +++ /dev/null @@ -1,35 +0,0 @@ -DESCRIPTION = "The GNU Readline library provides a set of functions for use by applications that allow users to edit \ -command lines as they are typed in. Both Emacs and vi editing modes are available. The Readline library includes \ -additional functions to maintain a list of previously-entered command lines, to recall and perhaps reedit those \ -lines, and perform csh-like history expansion on previous commands." -SECTION = "libs" - -LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=03b36fdd84f74b8d8189a202b980b67f" - -DEPENDS += "ncurses" -PRIORITY = "optional" - -PR = "r6" - -SRC_URI = "${GNU_MIRROR}/readline/${BPN}-${PV}.tar.gz \ - file://configure-fix.patch \ - file://acinclude.m4" - -S = "${WORKDIR}/${BPN}-${PV}" - -inherit autotools - -LEAD_SONAME = "libreadline.so" - -do_configure_prepend () { - install -m 0644 ${WORKDIR}/acinclude.m4 ${S}/ -} - -do_install_append () { - # Make install doesn't properly install these - oe_libinstall -so -C shlib libhistory ${D}${libdir} - oe_libinstall -so -C shlib libreadline ${D}${libdir} -} - -BBCLASSEXTEND = "native nativesdk" diff --git a/meta/packages/readline/readline_6.1.bb b/meta/packages/readline/readline_6.1.bb deleted file mode 100644 index c32755669c..0000000000 --- a/meta/packages/readline/readline_6.1.bb +++ /dev/null @@ -1,3 +0,0 @@ -require readline.inc - -PR = "r0" diff --git a/meta/packages/resolvconf/resolvconf_1.43.bb b/meta/packages/resolvconf/resolvconf_1.43.bb deleted file mode 100644 index f751f17e0e..0000000000 --- a/meta/packages/resolvconf/resolvconf_1.43.bb +++ /dev/null @@ -1,30 +0,0 @@ -DESCRIPTION = "Resolvconf is a framework for keeping track of the system's \ -information about currently available nameservers. It sets \ -itself up as the intermediary between programs that supply \ -nameserver information and programs that need nameserver \ -information." -SECTION = "console/network" -LICENSE = "GPL" -AUTHOR = "Thomas Hood" -HOMEPAGE = "http://packages.debian.org/resolvconf" -DEPENDS = "bash" -RDEPENDS = "bash" -PR = "r1" - -SRC_URI = "${DEBIAN_MIRROR}/main/r/resolvconf/resolvconf_${PV}.tar.gz" - -do_compile () { - : -} - -do_install () { - install -d ${D}${sysconfdir} ${D}${sbindir} ${D}${base_sbindir} ${D}${localstatedir}/volatile/run/resolvconf/interface - install -d ${D}${mandir}/man8 ${D}${docdir}/${P} - cp -pPR etc/* ${D}${sysconfdir}/ - install -m 0755 bin/resolvconf ${D}${base_sbindir}/ - install -m 0644 README ${D}${docdir}/${P}/ - install -m 0644 man/resolvconf.8 ${D}${mandir}/man8/ -} - -PACKAGE_ARCH = "all" - diff --git a/meta/packages/rsync/rsync-2.6.9/rsyncd.conf b/meta/packages/rsync/rsync-2.6.9/rsyncd.conf deleted file mode 100644 index 845f5b33f5..0000000000 --- a/meta/packages/rsync/rsync-2.6.9/rsyncd.conf +++ /dev/null @@ -1,15 +0,0 @@ -# /etc/rsyncd.conf - -# Minimal configuration file for rsync daemon -# See rsync(1) and rsyncd.conf(5) man pages for help - -# This file is required by rsync --daemon -pid file = /var/run/rsyncd.pid -use chroot = yes -read only = yes - -# Simple example for enabling your own local rsync server -#[everything] -# path = / -# comment = Everything except /etc exposed -# exclude = /etc diff --git a/meta/packages/rxvt-unicode/files/makefile.patch b/meta/packages/rxvt-unicode/files/makefile.patch deleted file mode 100644 index 86f82eeb4c..0000000000 --- a/meta/packages/rxvt-unicode/files/makefile.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- ../rxvt-unicode-cvs-r0/rxvt-unicode/Makefile.in 2004-08-12 22:32:40 +01:00 -+++ rxvt-unicode/Makefile.in 2004-12-24 03:09:00 +00:00 -@@ -9,7 +9,7 @@ - first_rule: all - dummy: - --subdirs = src doc src/test -+subdirs = src src/test - allsubdirs = W11 $(subdirs) - - DIST = INSTALL README.configure configure Makefile Makefile.in ChangeLog -@@ -24,7 +24,7 @@ - - #------------------------------------------------------------------------- - --all allbin alldoc tags: -+all allbin tags: - @if test x@host_os@ = xcygwin; then (cd W11; ${MAKE} $@) || exit 1; fi - @for I in ${subdirs}; do (cd $$I; ${MAKE} $@) || exit 1; done - diff --git a/meta/packages/rxvt-unicode/files/rxvt.desktop b/meta/packages/rxvt-unicode/files/rxvt.desktop deleted file mode 100644 index a419c98a13..0000000000 --- a/meta/packages/rxvt-unicode/files/rxvt.desktop +++ /dev/null @@ -1,11 +0,0 @@ -[Desktop Entry] -Encoding=UTF-8 -Name=Terminal -Comment=When all else fails. -Exec=/usr/bin/rxvt -Icon=utilities-terminal.png -Terminal=false -Type=Application -Categories=Utility -StartupNotify=false - diff --git a/meta/packages/rxvt-unicode/files/rxvt.png b/meta/packages/rxvt-unicode/files/rxvt.png deleted file mode 100644 index e56fa2e9cd..0000000000 Binary files a/meta/packages/rxvt-unicode/files/rxvt.png and /dev/null differ diff --git a/meta/packages/rxvt-unicode/files/signedchar.patch b/meta/packages/rxvt-unicode/files/signedchar.patch deleted file mode 100644 index 6faa175143..0000000000 --- a/meta/packages/rxvt-unicode/files/signedchar.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- ../rxvt-unicode-cvs-r0/rxvt-unicode/src/command.C 2004-12-21 06:43:00 +00:00 -+++ rxvt-unicode/src/command.C 2004-12-24 02:31:36 +00:00 -@@ -1862,7 +1862,7 @@ - #endif /* NO_SCROLLBAR_REPORT */ - - { -- char upordown = 0; -+ signed char upordown = 0; - - if (scrollBar.style == R_SB_NEXT) - { diff --git a/meta/packages/rxvt-unicode/files/xwc.patch b/meta/packages/rxvt-unicode/files/xwc.patch deleted file mode 100644 index 7cf59656ce..0000000000 --- a/meta/packages/rxvt-unicode/files/xwc.patch +++ /dev/null @@ -1,28 +0,0 @@ - -# -# Patch managed by http://www.holgerschurig.de/patcher.html -# - ---- rxvt-unicode-4.8/src/screen.C~xwc.c -+++ rxvt-unicode-4.8/src/screen.C -@@ -3058,7 +3058,7 @@ - else - rxvt_warn ("can't get primary selection, ignoring.\n"); - --#if 0 -+#ifdef HAVE_XWC - XTextProperty ct; - - if (XwcTextListToTextProperty (display->display, &selection.text, 1, XStringStyle, &ct) >= 0) -@@ -3632,9 +3632,11 @@ - } - else - #endif -+#ifdef HAVE_XWC - if (XwcTextListToTextProperty (display->display, &cl, 1, (XICCEncodingStyle) style, &ct) >= 0) - freect = 1; - else -+#endif - { - /* if we failed to convert then send it raw */ - ct.value = (unsigned char *)cl; diff --git a/meta/packages/rxvt-unicode/rxvt-unicode-5.6/xwc.patch b/meta/packages/rxvt-unicode/rxvt-unicode-5.6/xwc.patch deleted file mode 100644 index eb87b84b25..0000000000 --- a/meta/packages/rxvt-unicode/rxvt-unicode-5.6/xwc.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -urNd ../rxvt-unicode-5.3-r2/rxvt-unicode-5.3/src/screen.C rxvt-unicode-5.3/src/screen.C ---- ../rxvt-unicode-5.3-r2/rxvt-unicode-5.3/src/screen.C 2005-02-22 21:39:10 +00:00 -+++ rxvt-unicode-5.3/src/screen.C 2005-04-05 22:12:45 +01:00 -@@ -3064,7 +3064,7 @@ - else - rxvt_warn ("can't get primary selection, ignoring.\n"); - --#if 0 -+#ifdef HAVE_XWC - XTextProperty ct; - - if (XwcTextListToTextProperty (display->display, &selection.text, 1, XStringStyle, &ct) >= 0) -@@ -3648,9 +3648,11 @@ - } - else - #endif -+#ifdef HAVE_XWC - if (XwcTextListToTextProperty (disp, &cl, 1, (XICCEncodingStyle) style, &ct) >= 0) - freect = 1; - else -+#endif - { - /* if we failed to convert then send it raw */ - ct.value = (unsigned char *)cl; diff --git a/meta/packages/rxvt-unicode/rxvt-unicode_5.6.bb b/meta/packages/rxvt-unicode/rxvt-unicode_5.6.bb deleted file mode 100644 index d13089501f..0000000000 --- a/meta/packages/rxvt-unicode/rxvt-unicode_5.6.bb +++ /dev/null @@ -1,72 +0,0 @@ -SECTION = "x11/utils" -DEPENDS = "virtual/libx11 libxt libxft" -DESCRIPTION = "rxvt-unicode is a clone of the well known \ -terminal emulator rxvt, modified to store text in Unicode \ -(either UCS-2 or UCS-4) and to use locale-correct input and \ -output. It also supports mixing multiple fonts at the \ -same time, including Xft fonts." -LICENSE = "GPL" -SRC_URI = "http://dist.schmorp.de/rxvt-unicode/Attic/rxvt-unicode-${PV}.tar.bz2 \ - file://xwc.patch;patch=1 \ - file://signedchar.patch;patch=1 \ - file://rxvt.desktop \ - file://rxvt.png" -PR = "r5" - -inherit autotools update-alternatives - -PROVIDES = "virtual/x-terminal-emulator" -ALTERNATIVE_NAME = "x-terminal-emulator" -ALTERNATIVE_PATH = "${bindir}/rxvt" - -CFLAGS_append = " -fpermissive" - -# This is necessary so that the "tic" command executed during the install can -# link with the correct libary in staging. -export LD_LIBRARY_PATH = "${STAGING_LIBDIR_NATIVE}" - -EXTRA_OECONF = "--enable-menubar --enable-xim \ - --enable-utmp --enable-wtmp --enable-lastlog \ - --disable-strings --with-term=rxvt --enable-keepscrolling \ - --enable-xft --with-name=rxvt --enable-frills \ - --enable-swapscreen --enable-transparency \ - --with-codesets=eu \ - --enable-cursor-blink --enable-pointer-blank \ - --enable-text-blink --enable-rxvt-scroll \ - --enable-combining --enable-shared \ - --enable-xgetdefault \ - --with-x=${STAGING_DIR_HOST}${prefix}" -EXTRA_OEMAKE = "'XINC=-I${STAGING_INCDIR}' \ - 'XLIB=-L${STAGING_LIBDIR} -lX11'" - -do_configure () { - mv autoconf/configure.in . || true - rm autoconf/libtool.m4 - libtoolize --force - autotools_do_configure - echo '#define RXVT_UTMP_FILE "${localstatedir}/run/utmp"' >> config.h - echo '#define RXVT_WTMP_FILE "${localstatedir}/log/wtmp"' >> config.h - echo '#define RXVT_LASTLOG_FILE "${localstatedir}/log/lastlog"' >> config.h - echo '#define HAVE_XLOCALE 1' >> config.h -} - -do_compile () { - if test -e ${S}/${HOST_SYS}-libtool; then - LIBTOOL=${S}/${HOST_SYS}-libtool - else - LIBTOOL=${S}/libtool - fi - # docs need "yodl" and I have no idea what that is - oe_runmake -C src "LIBTOOL=$LIBTOOL" -} - -do_install_append () { - install -d ${D}/${datadir} - install -d ${D}/${datadir}/applications - install -d ${D}/${datadir}/pixmaps/ - - install -m 0644 ${WORKDIR}/rxvt.png ${D}/${datadir}/pixmaps - install -m 0644 ${WORKDIR}/rxvt.desktop ${D}/${datadir}/applications -} - -FILES_${PN} += "${datadir}/applications/rxvt.desktop ${datadir}/pixmaps/rxvt.png" diff --git a/meta/packages/sed/sed-4.1.2/fix_return_type.patch b/meta/packages/sed/sed-4.1.2/fix_return_type.patch deleted file mode 100644 index d91960b3ee..0000000000 --- a/meta/packages/sed/sed-4.1.2/fix_return_type.patch +++ /dev/null @@ -1,16 +0,0 @@ -Change the getline return type to match its declaration. - -Signed-off-by: Dongxiao Xu - -diff -urN sed-4.1.2-orig/lib/getline.c sed-4.1.2/lib/getline.c ---- sed-4.1.2-orig/lib/getline.c 2010-08-31 08:47:50.070094024 +0800 -+++ sed-4.1.2/lib/getline.c 2010-08-31 08:48:50.982178172 +0800 -@@ -30,7 +30,7 @@ - necessary. Returns the number of characters read (not including the - null terminator), or -1 on error or EOF. */ - --size_t -+ssize_t - getline (lineptr, n, stream) - char **lineptr; - size_t *n; diff --git a/meta/packages/sed/sed_4.1.2.bb b/meta/packages/sed/sed_4.1.2.bb deleted file mode 100644 index 09bd3e18cc..0000000000 --- a/meta/packages/sed/sed_4.1.2.bb +++ /dev/null @@ -1,32 +0,0 @@ -DESCRIPTION = "sed is a Stream EDitor." -HOMEPAGE = "http://www.gnu.org/software/sed/" -LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ - file://sed/sed.h;beginline=1;endline=17;md5=e00ffd1837f298439a214fd197f6a407" -SECTION = "console/utils" -PR = "r3" - -DEPENDS = "gettext" - -SRC_URI = "${GNU_MIRROR}/sed/sed-${PV}.tar.gz \ - file://fix_return_type.patch" - -inherit autotools - -do_install () { - autotools_do_install - install -d ${D}${base_bindir} - mv ${D}${bindir}/sed ${D}${base_bindir}/sed.${PN} -} - - -pkg_postinst_${PN} () { - update-alternatives --install ${base_bindir}/sed sed sed.${PN} 100 -} - - -pkg_prerm_${PN} () { - update-alternatives --remove sed sed.${PN} -} - -BBCLASSEXTEND = "native" diff --git a/meta/packages/setserial/setserial_2.17.bb b/meta/packages/setserial/setserial_2.17.bb deleted file mode 100644 index 4e0d1b66e4..0000000000 --- a/meta/packages/setserial/setserial_2.17.bb +++ /dev/null @@ -1,18 +0,0 @@ -DESCRIPTION = "setserial is a program designed to set and/or report the configuration information associated with a serial port" -HOMEPAGE = "http://setserial.sourceforge.net" -AUTHOR = "Theodore Ts'o " -SECTION = "console/utils" -LICENSE = "GPL" -PR = "r2" - -inherit autotools - -SRC_URI = "${SOURCEFORGE_MIRROR}/setserial/${PN}-${PV}.tar.gz" - -do_install() { - install -d ${D}${bindir} - install -d ${D}${mandir}/man8 - - install -m 0755 ${S}/setserial ${D}${bindir} - install -m 0644 ${S}/setserial.8 ${D}${mandir}/man8 -} diff --git a/meta/packages/shared-mime-info/shared-mime-info.inc b/meta/packages/shared-mime-info/shared-mime-info.inc deleted file mode 100644 index c2e5487019..0000000000 --- a/meta/packages/shared-mime-info/shared-mime-info.inc +++ /dev/null @@ -1,28 +0,0 @@ -DESCRIPTION = "shared MIME database and spec" -HOMEPAGE = "http://freedesktop.org/wiki/Software/shared-mime-info" -SECTION = "base" - -LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3" - -DEPENDS = "libxml2 intltool-native glib-2.0 shared-mime-info-native" -DEPENDS_virtclass-native = "libxml2-native intltool-native glib-2.0-native" -PR = "r0" - -SRC_URI = "http://freedesktop.org/~hadess/shared-mime-info-${PV}.tar.bz2" - -inherit autotools pkgconfig gettext - -EXTRA_OECONF = "--disable-update-mimedb" - -FILES_${PN} += "${datadir}/mime" -FILES_${PN}-dev += "${datadir}/pkgconfig/shared-mime-info.pc" - -do_install_append() { - update-mime-database ${D}${datadir}/mime - - # we do not need it on device and it is huge - rm ${D}${datadir}/mime/packages/freedesktop.org.xml -} - -BBCLASSEXTEND = "native" diff --git a/meta/packages/shared-mime-info/shared-mime-info_0.71.bb b/meta/packages/shared-mime-info/shared-mime-info_0.71.bb deleted file mode 100644 index fc64c2b0e0..0000000000 --- a/meta/packages/shared-mime-info/shared-mime-info_0.71.bb +++ /dev/null @@ -1 +0,0 @@ -require shared-mime-info.inc diff --git a/meta/packages/smart/smart_1.1.bb b/meta/packages/smart/smart_1.1.bb deleted file mode 100644 index 8f89eb3e00..0000000000 --- a/meta/packages/smart/smart_1.1.bb +++ /dev/null @@ -1,29 +0,0 @@ -DESCRIPTION = "Next generation package handling tool." -HOMEPAGE = "http://labix.org/smart/" -LICENSE = "GPL v2+" -DEPENDS = "zlib python desktop-file-utils-native python-pygtk rpm" - -SRC_URI = "http://labix.org/download/smart/smart-1.1.tar.bz2" - -S = "${WORKDIR}/smart-${PV}" - -inherit distutils - -FILES_${PN} += "/usr/share/lib/${PYTHON_DIR}/site-packages/smart/interfaces/images/*.png \ - /usr/share/lib/${PYTHON_DIR/site-packages/smart/backends/" - -FILES_${PN}-doc += "/usr/share/share/man/man8/smart.8" - -FILES_${PN}-locale += "/usr/share/share/locale/es_ES/LC_MESSAGES/smart.mo \ - /usr/share/share/locale/it/LC_MESSAGES/smart.mo \ - /usr/share/share/locale/de/LC_MESSAGES/smart.mo \ - /usr/share/share/locale/ru/LC_MESSAGES/smart.mo \ - /usr/share/share/locale/sv/LC_MESSAGES/smart.mo \ - /usr/share/share/locale/fr/LC_MESSAGES/smart.mo \ - /usr/share/share/locale/hu/LC_MESSAGES/smart.mo \ - /usr/share/share/locale/zh_TW/LC_MESSAGES/smart.mo \ - /usr/share/share/locale/pt_BR/LC_MESSAGES/smart.mo \ - /usr/share/share/locale/zh_CN/LC_MESSAGES/smart.mo" - -FILES_${PN}-dbg += "/usr/lib/${PYTHON_DIR}/site-packages/smart/backends/rpm/.debug \ - /usr/lib/${PYTHON_DIR}/site-packages/smart/backends/deb/.debug \" \ No newline at end of file diff --git a/meta/packages/speex/speex_1.2rc1.bb b/meta/packages/speex/speex_1.2rc1.bb deleted file mode 100644 index 6f1b133f24..0000000000 --- a/meta/packages/speex/speex_1.2rc1.bb +++ /dev/null @@ -1,24 +0,0 @@ -DESCRIPTION = "Speex is an Open Source/Free Software patent-free audio compression format designed for speech." -HOMEPAGE = "http://www.speex.org" -SECTION = "libs" -LICENSE = "BSD" -LIC_FILES_CHKSUM = "file://COPYING;md5=314649d8ba9dd7045dfb6683f298d0a8 \ - file://include/speex/speex.h;beginline=1;endline=34;md5=a68129f78d7fe66e07163f73aba143b3" -DEPENDS = "libogg" - -PR = "r0" - -SRC_URI = "http://downloads.us.xiph.org/releases/speex/speex-1.2rc1.tar.gz" - -PARALLEL_MAKE = "" - -inherit autotools pkgconfig - -EXTRA_OECONF = " --enable-fixed-point --with-ogg-libraries=${STAGING_LIBDIR} \ - --disable-float-api --disable-vbr \ - --with-ogg-includes=${STAGING_INCDIR} --disable-oggtest" - -PACKAGES += "${PN}-bin" -FILES_${PN} = "${libdir}/lib*.so.*" -FILES_${PN}-dev += "${libdir}/lib*.so.*" -FILES_${PN}-bin = "${bindir}" diff --git a/meta/packages/sqlite/sqlite3.inc b/meta/packages/sqlite/sqlite3.inc deleted file mode 100644 index 709e3016b8..0000000000 --- a/meta/packages/sqlite/sqlite3.inc +++ /dev/null @@ -1,33 +0,0 @@ -DESCRIPTION = "An Embeddable SQL Database Engine" -HOMEPAGE = "http://www.sqlite.org" -SECTION = "libs" -PRIORITY = "optional" -DEPENDS = "readline ncurses tcl-native" -LICENSE = "PD" - -SRC_URI = "http://www.sqlite.org/sqlite-${PV}.tar.gz \ - file://libtool.patch" - -S = "${WORKDIR}/sqlite-${PV}" - -inherit autotools pkgconfig - -EXTRA_OECONF = "--disable-tcl --enable-shared \ - --enable-threadsafe" -export config_BUILD_CC = "${BUILD_CC}" -export config_BUILD_CFLAGS = "${BUILD_CFLAGS}" -export config_BUILD_LIBS = "${BUILD_LDFLAGS}" -export config_TARGET_CC = "${CC}" -export config_TARGET_LINK = "${CCLD}" -export config_TARGET_CFLAGS = "${CFLAGS}" -export config_TARGET_LFLAGS = "${LDFLAGS}" - -PACKAGES = "lib${PN} lib${PN}-dev lib${PN}-doc ${PN} ${PN}-dbg" -FILES_${PN} = "${bindir}/*" -FILES_lib${PN} = "${libdir}/*.so.*" -FILES_lib${PN}-dev = "${libdir}/*.a ${libdir}/*.la ${libdir}/*.so \ - ${libdir}/pkgconfig ${includedir}" -FILES_lib${PN}-doc = "${docdir} ${mandir} ${infodir}" -AUTO_LIBNAME_PKGS = "lib${PN}" - -BBCLASSEXTEND = "native nativesdk" diff --git a/meta/packages/sqlite/sqlite3/libtool.patch b/meta/packages/sqlite/sqlite3/libtool.patch deleted file mode 100644 index ccf9993ed2..0000000000 --- a/meta/packages/sqlite/sqlite3/libtool.patch +++ /dev/null @@ -1,25 +0,0 @@ -Index: sqlite-3.2.1/Makefile.in -=================================================================== ---- sqlite-3.2.1.orig/Makefile.in 2005-03-23 17:09:39.000000000 +0100 -+++ sqlite-3.2.1/Makefile.in 2005-04-25 23:11:20.000000000 +0200 -@@ -15,7 +15,10 @@ - # The toplevel directory of the source tree. This is the directory - # that contains this "Makefile.in" and the "configure.in" script. - # --TOP = @srcdir@ -+TOP = $(srcdir) -+srcdir = @srcdir@ -+top_srcdir = @top_srcdir@ -+top_builddir = . - - # C Compiler and options for use in building executables that - # will run on the platform that is doing the build. -@@ -96,7 +99,7 @@ - exec_prefix = @exec_prefix@ - libdir = @libdir@ - INSTALL = @INSTALL@ --LIBTOOL = ./libtool -+LIBTOOL = @LIBTOOL@ - ALLOWRELEASE = @ALLOWRELEASE@ - - # libtool compile/link/install diff --git a/meta/packages/sqlite/sqlite3_3.6.23.1.bb b/meta/packages/sqlite/sqlite3_3.6.23.1.bb deleted file mode 100644 index 5075dd35b7..0000000000 --- a/meta/packages/sqlite/sqlite3_3.6.23.1.bb +++ /dev/null @@ -1,3 +0,0 @@ -require sqlite3.inc - -PR = "r1" diff --git a/meta/packages/strace/strace_4.5.20.bb b/meta/packages/strace/strace_4.5.20.bb deleted file mode 100644 index cc2ae1a964..0000000000 --- a/meta/packages/strace/strace_4.5.20.bb +++ /dev/null @@ -1,11 +0,0 @@ -DESCRIPTION = "strace is a system call tracing tool." -HOMEPAGE = "http://sourceforge.net/projects/strace/" -SECTION = "console/utils" -LICENSE = "BSD" -LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=4535377ede62550fdeaf39f595fd550a" -PR = "r0" - -SRC_URI = "${SOURCEFORGE_MIRROR}/strace/strace-${PV}.tar.bz2" -inherit autotools - -export INCLUDES = "-I. -I./linux" diff --git a/meta/packages/sudo/files/autofoo.patch b/meta/packages/sudo/files/autofoo.patch deleted file mode 100644 index 4f24737610..0000000000 --- a/meta/packages/sudo/files/autofoo.patch +++ /dev/null @@ -1,143 +0,0 @@ -# fix underquotes, rebased to 1.7.2p7 -# -# by Kevin Tian , 06/23/2010 -Index: sudo-1.7.2p7/aclocal.m4 -=================================================================== ---- sudo-1.7.2p7.orig/aclocal.m4 2010-06-23 13:33:57.000000000 +0800 -+++ sudo-1.7.2p7/aclocal.m4 2010-06-23 13:36:41.000000000 +0800 -@@ -10,7 +10,7 @@ - dnl - dnl check for sendmail - dnl --AC_DEFUN(SUDO_PROG_SENDMAIL, [AC_MSG_CHECKING(for sendmail) -+AC_DEFUN([SUDO_PROG_SENDMAIL], [AC_MSG_CHECKING(for sendmail) - if test -f "/usr/sbin/sendmail"; then - AC_MSG_RESULT(/usr/sbin/sendmail) - SUDO_DEFINE(_PATH_SUDO_SENDMAIL, "/usr/sbin/sendmail") -@@ -37,7 +37,7 @@ - dnl - dnl check for vi - dnl --AC_DEFUN(SUDO_PROG_VI, [AC_MSG_CHECKING(for vi) -+AC_DEFUN([SUDO_PROG_VI], [AC_MSG_CHECKING(for vi) - if test -f "/usr/bin/vi"; then - AC_MSG_RESULT(/usr/bin/vi) - SUDO_DEFINE(_PATH_VI, "/usr/bin/vi") -@@ -61,7 +61,7 @@ - dnl - dnl check for mv - dnl --AC_DEFUN(SUDO_PROG_MV, [AC_MSG_CHECKING(for mv) -+AC_DEFUN([SUDO_PROG_MV], [AC_MSG_CHECKING(for mv) - if test -f "/usr/bin/mv"; then - AC_MSG_RESULT(/usr/bin/mv) - SUDO_DEFINE(_PATH_MV, "/usr/bin/mv") -@@ -82,7 +82,7 @@ - dnl - dnl check for bourne shell - dnl --AC_DEFUN(SUDO_PROG_BSHELL, [AC_MSG_CHECKING(for bourne shell) -+AC_DEFUN([SUDO_PROG_BSHELL], [AC_MSG_CHECKING(for bourne shell) - if test -f "/bin/sh"; then - AC_MSG_RESULT(/bin/sh) - SUDO_DEFINE(_PATH_BSHELL, "/bin/sh") -@@ -115,7 +115,7 @@ - dnl - dnl Where the log file goes, use /var/log if it exists, else /{var,usr}/adm - dnl --AC_DEFUN(SUDO_LOGFILE, [AC_MSG_CHECKING(for log file location) -+AC_DEFUN([SUDO_LOGFILE], [AC_MSG_CHECKING(for log file location) - if test -n "$with_logpath"; then - AC_MSG_RESULT($with_logpath) - SUDO_DEFINE_UNQUOTED(_PATH_SUDO_LOGFILE, "$with_logpath") -@@ -136,7 +136,7 @@ - dnl - dnl Where the log file goes, use /var/log if it exists, else /{var,usr}/adm - dnl --AC_DEFUN(SUDO_TIMEDIR, [AC_MSG_CHECKING(for timestamp file location) -+AC_DEFUN([SUDO_TIMEDIR], [AC_MSG_CHECKING(for timestamp file location) - if test -n "$with_timedir"; then - AC_MSG_RESULT($with_timedir) - SUDO_DEFINE_UNQUOTED(_PATH_SUDO_TIMEDIR, "$with_timedir") -@@ -160,7 +160,7 @@ - dnl SUDO_CHECK_TYPE(TYPE, DEFAULT) - dnl XXX - should require the check for unistd.h... - dnl --AC_DEFUN(SUDO_CHECK_TYPE, -+AC_DEFUN([SUDO_CHECK_TYPE], - [AC_REQUIRE([AC_HEADER_STDC])dnl - AC_MSG_CHECKING(for $1) - AC_CACHE_VAL(sudo_cv_type_$1, -@@ -181,31 +181,31 @@ - dnl - dnl Check for size_t declation - dnl --AC_DEFUN(SUDO_TYPE_SIZE_T, -+AC_DEFUN([SUDO_TYPE_SIZE_T], - [SUDO_CHECK_TYPE(size_t, int)]) - - dnl - dnl Check for ssize_t declation - dnl --AC_DEFUN(SUDO_TYPE_SSIZE_T, -+AC_DEFUN([SUDO_TYPE_SSIZE_T], - [SUDO_CHECK_TYPE(ssize_t, int)]) - - dnl - dnl Check for dev_t declation - dnl --AC_DEFUN(SUDO_TYPE_DEV_T, -+AC_DEFUN([SUDO_TYPE_DEV_T], - [SUDO_CHECK_TYPE(dev_t, int)]) - - dnl - dnl Check for ino_t declation - dnl --AC_DEFUN(SUDO_TYPE_INO_T, -+AC_DEFUN([SUDO_TYPE_INO_T], - [SUDO_CHECK_TYPE(ino_t, unsigned int)]) - - dnl - dnl check for working fnmatch(3) - dnl --AC_DEFUN(SUDO_FUNC_FNMATCH, -+AC_DEFUN([SUDO_FUNC_FNMATCH], - [AC_MSG_CHECKING([for working fnmatch with FNM_CASEFOLD]) - AC_CACHE_VAL(sudo_cv_func_fnmatch, - [rm -f conftestdata; > conftestdata -@@ -271,7 +271,7 @@ - dnl - dnl check for sa_len field in struct sockaddr - dnl --AC_DEFUN(SUDO_SOCK_SA_LEN, -+AC_DEFUN([SUDO_SOCK_SA_LEN], - [AC_MSG_CHECKING(for sa_len field in struct sockaddr) - AC_CACHE_VAL(sudo_cv_sock_sa_len, - [AC_TRY_RUN([#include -@@ -294,7 +294,7 @@ - dnl we can't really trust UID_MAX or MAXUID since they may exist - dnl only for backwards compatibility. - dnl --AC_DEFUN(SUDO_UID_T_LEN, -+AC_DEFUN([SUDO_UID_T_LEN], - [AC_REQUIRE([AC_TYPE_UID_T]) - AC_MSG_CHECKING(max length of uid_t) - AC_CACHE_VAL(sudo_cv_uid_t_len, -@@ -327,7 +327,7 @@ - dnl - dnl Check for presence of long long and for sizeof(long long) == sizeof(long) - dnl --AC_DEFUN(SUDO_TYPE_LONG_LONG, -+AC_DEFUN([SUDO_TYPE_LONG_LONG], - [AC_CHECK_TYPES(long long, [AC_DEFINE(HAVE_LONG_LONG, 1, [Define if your compiler supports the "long long" type.])] - [AC_MSG_CHECKING(for long and long long equivalence) - AC_CACHE_VAL(sudo_cv_type_long_is_quad, -@@ -347,7 +347,7 @@ - dnl - dnl append a libpath to an LDFLAGS style variable - dnl --AC_DEFUN(SUDO_APPEND_LIBPATH, [ -+AC_DEFUN([SUDO_APPEND_LIBPATH], [ - if test X"$with_rpath" = X"yes"; then - case "$host" in - *-*-hpux*) $1="${$1} -L$2 -Wl,+b,$2" diff --git a/meta/packages/sudo/files/noexec-link.patch b/meta/packages/sudo/files/noexec-link.patch deleted file mode 100644 index e0d35d0e25..0000000000 --- a/meta/packages/sudo/files/noexec-link.patch +++ /dev/null @@ -1,17 +0,0 @@ -# libtool requires library's name to start with 'lib', or else error is reported. with "-module" option -# that check is skipped -# -# comments added by Kevin Tian , 06/23/2010 -Index: sudo-1.6.8p6/Makefile.in -=================================================================== ---- sudo-1.6.8p6.orig/Makefile.in 2005-01-21 19:09:26.963276656 -0500 -+++ sudo-1.6.8p6/Makefile.in 2005-01-21 19:16:11.918714072 -0500 -@@ -187,7 +187,7 @@ - $(CC) -o $@ $(TESTOBJS) $(LIBOBJS) $(LDFLAGS) $(LIBS) $(NET_LIBS) - - sudo_noexec.la: sudo_noexec.lo -- $(LIBTOOL) --mode=link $(CC) $(LDFLAGS) -o $@ sudo_noexec.lo -avoid-version -rpath $(noexecdir) -+ $(LIBTOOL) --mode=link $(CC) $(LDFLAGS) -o $@ sudo_noexec.lo -avoid-version -module -rpath $(noexecdir) - - # Uncomment the following if you want "make distclean" to clean the parser - @DEV@PARSESRCS = sudo.tab.h sudo.tab.c lex.yy.c def_data.c def_data.h diff --git a/meta/packages/sudo/files/nostrip.patch b/meta/packages/sudo/files/nostrip.patch deleted file mode 100644 index 3c71b4fd86..0000000000 --- a/meta/packages/sudo/files/nostrip.patch +++ /dev/null @@ -1,23 +0,0 @@ -# this could be pushed upstream to allowing conditional strip. Now it's not applied. -# we use sed in recipe for same purpose. Keep here as reminder for upstream -# -# comment added by Kevin Tian , 07/01/2010 -# -# Patch managed by http://www.holgerschurig.de/patcher.html -# - -Index: sudo-1.6.8p5/Makefile.in -=================================================================== ---- sudo-1.6.8p5.orig/Makefile.in 2005-01-21 18:19:05.762568976 -0500 -+++ sudo-1.6.8p5/Makefile.in 2005-01-21 18:19:34.701169640 -0500 -@@ -307,8 +307,8 @@ - $(DESTDIR)$(noexecdir) - - install-binaries: $(PROGS) -- $(INSTALL) $(install_owncmd) -m 4555 -s sudo $(DESTDIR)$(sudodir)/sudo -- $(INSTALL) $(install_owncmd) -m 0555 -s visudo $(DESTDIR)$(visudodir)/visudo -+ $(INSTALL) $(install_owncmd) -m 4555 sudo $(DESTDIR)$(sudodir)/sudo -+ $(INSTALL) $(install_owncmd) -m 0555 visudo $(DESTDIR)$(visudodir)/visudo - rm -f $(DESTDIR)$(sudodir)/sudoedit - ln $(DESTDIR)$(sudodir)/sudo $(DESTDIR)$(sudodir)/sudoedit - diff --git a/meta/packages/sudo/site/bit-32 b/meta/packages/sudo/site/bit-32 deleted file mode 100644 index 9b7ca5c81b..0000000000 --- a/meta/packages/sudo/site/bit-32 +++ /dev/null @@ -1,2 +0,0 @@ -# is sizeof(long long) == sizeof(long) -sudo_cv_type_long_is_quad=${sudo_cv_type_long_is_quad=no} diff --git a/meta/packages/sudo/site/bit-64 b/meta/packages/sudo/site/bit-64 deleted file mode 100644 index 05846ff0aa..0000000000 --- a/meta/packages/sudo/site/bit-64 +++ /dev/null @@ -1,2 +0,0 @@ -# is sizeof(long long) == sizeof(long) -sudo_cv_type_long_is_quad=${sudo_cv_type_long_is_quad=yes} diff --git a/meta/packages/sudo/sudo.inc b/meta/packages/sudo/sudo.inc deleted file mode 100644 index 2add94bef4..0000000000 --- a/meta/packages/sudo/sudo.inc +++ /dev/null @@ -1,36 +0,0 @@ -DESCRIPTION = "Sudo (superuser do) allows a system administrator to give certain users (or groups of users) the ability to run some (or all) commands as root while logging all commands and arguments." -HOMEPAGE = "http://www.courtesan.com/sudo/" -BUGTRACKER = "http://www.sudo.ws/bugs/" -PRIORITY = "optional" -SECTION = "admin" -LICENSE = "ISC & UCB & MIT" -LIC_FILES_CHKSUM = "file://LICENSE;md5=a7dfe8895011d65d0c2e24aaf5ad0843 \ - file://nonunix.h;startline=4;endline=28;md5=1e70feedac93a3fd7f5254e3fec52677 \ - file://vasgroups.c;startline=4;endline=28;md5=1e70feedac93a3fd7f5254e3fec52677 \ - file://fnmatch.c;startline=6;endline=31;md5=0779058eafd6e23b966585b45bfa54f3 \ - file://getcwd.c;startline=5;endline=27;md5=08d82914995224a0ca42116d7ca2a218 \ - file://glob.c;startline=6;endline=31;md5=299cb38ec8d56e89118ce57fb83b4f78 \ - file://snprintf.c;startline=6;endline=31;md5=dabd56a89a7a773850dc06ee4f1ecde2" - -inherit autotools - -EXTRA_OECONF = "--with-editor=/bin/vi --with-env-editor" - -do_configure_prepend () { - # Prevent binaries from being stripped on the host - sed -i 's/\($(INSTALL).*\) -s \(.*[(sudo|visudo)]\)/\1 \2/g' Makefile.in - - rm -f acsite.m4 - if [ ! -e acinclude.m4 ]; then - cat aclocal.m4 > acinclude.m4 - fi -} - -pkg_postinst() { - if [ "x$D" != "x" ]; then - exit 1 - fi - - chmod 4111 /usr/bin/sudo - chmod 0440 /etc/sudoers -} diff --git a/meta/packages/sudo/sudo_1.7.2p7.bb b/meta/packages/sudo/sudo_1.7.2p7.bb deleted file mode 100644 index 3dd6cdf059..0000000000 --- a/meta/packages/sudo/sudo_1.7.2p7.bb +++ /dev/null @@ -1,7 +0,0 @@ -PR = "r0" - -SRC_URI = "http://ftp.sudo.ws/sudo/dist/sudo-1.7.2p7.tar.gz \ - file://noexec-link.patch" - -require sudo.inc -EXTRA_OECONF += " --with-pam=no" diff --git a/meta/packages/sync/libsync_svn.bb b/meta/packages/sync/libsync_svn.bb deleted file mode 100644 index 660b39aa42..0000000000 --- a/meta/packages/sync/libsync_svn.bb +++ /dev/null @@ -1,19 +0,0 @@ -DESCRIPTION = "LibSync is a GObject-based framework for more convenient use of \ -OpenSync in GLib applications." -LICENSE = "LGPL" -SECTION = "x11" -DEPENDS = "glib-2.0 gtk+ libglade libopensync avahi" -RRECOMMENDS = "\ - libopensync-plugin-file \ - " -PV = "0.0+svnr${SRCREV}" - -SRC_URI = "svn://svn.o-hand.com/repos/sync/trunk;module=sync;proto=http" - -inherit autotools pkgconfig - -S = "${WORKDIR}/sync" - -PACKAGES += "synctool" -FILES_${PN} = "${libdir}/lib*.so.*" -FILES_synctool = "${bindir} ${datadir}" diff --git a/meta/packages/sysfsutils/sysfsutils_2.1.0.bb b/meta/packages/sysfsutils/sysfsutils_2.1.0.bb deleted file mode 100644 index 5b513211dc..0000000000 --- a/meta/packages/sysfsutils/sysfsutils_2.1.0.bb +++ /dev/null @@ -1,21 +0,0 @@ -DESCRIPTION = "system utilities based on sysfs." -HOMEPAGE = "http://linux-diag.sourceforge.net/Sysfsutils.html" - -LICENSE = "GPLv2 & LGPLv2.1" -LICENSE_${PN} = "GPLv2" -LICENSE_libsysfs = "LGPLv2.1" -LIC_FILES_CHKSUM = "file://COPYING;md5=3d06403ea54c7574a9e581c6478cc393 \ - file://cmd/GPL;md5=d41d4e2e1e108554e0388ea4aecd8d27 \ - file://lib/LGPL;md5=b75d069791103ffe1c0d6435deeff72e" -PR = "r0" - -SRC_URI = "${SOURCEFORGE_MIRROR}/linux-diag/sysfsutils-${PV}.tar.gz" -S = "${WORKDIR}/sysfsutils-${PV}" - -inherit autotools - -PACKAGES_prepend = "libsysfs libsysfs-dbg libsysfs-dev " -FILES_libsysfs = "${libdir}/*.so.*" -FILES_libsysfs-dev = "${libdir}/* ${includedir}" -FILES_libsysfs-dbg = "${libdir}/.debug" -FILES_${PN}-dbg = "${bindir}/.debug" diff --git a/meta/packages/tar/tar-1.17/m4extensions.patch b/meta/packages/tar/tar-1.17/m4extensions.patch deleted file mode 100644 index 11b981aa92..0000000000 --- a/meta/packages/tar/tar-1.17/m4extensions.patch +++ /dev/null @@ -1,28 +0,0 @@ -# Define AC_USE_SYSTEM_EXTENSIONS only if it was previously undefined. -# This is needed to configure correctly with newer versions of autoconf. - ---- tar-1.17/m4/extensions.m4.orig 2010-07-22 22:21:35.000000000 -0700 -+++ tar-1.17/m4/extensions.m4 2010-07-22 22:23:41.000000000 -0700 -@@ -1,4 +1,4 @@ --# serial 4 -*- Autoconf -*- -+# serial 5 -*- Autoconf -*- - # Enable extensions on systems that normally disable them. - - # Copyright (C) 2003, 2006 Free Software Foundation, Inc. -@@ -16,6 +16,7 @@ - # ------------------------ - # Enable extensions on systems that normally disable them, - # typically due to standards-conformance issues. -+m4_ifdef([AC_USE_SYSTEM_EXTENSIONS], [], [ - AC_DEFUN([AC_USE_SYSTEM_EXTENSIONS], - [ - AC_BEFORE([$0], [AC_COMPILE_IFELSE]) -@@ -48,7 +49,7 @@ - AC_DEFINE([__EXTENSIONS__]) - AC_DEFINE([_POSIX_PTHREAD_SEMANTICS]) - AC_DEFINE([_TANDEM_SOURCE]) --]) -+])]) - - # gl_USE_SYSTEM_EXTENSIONS - # ------------------------ diff --git a/meta/packages/tar/tar.inc b/meta/packages/tar/tar.inc deleted file mode 100644 index cf72d4893b..0000000000 --- a/meta/packages/tar/tar.inc +++ /dev/null @@ -1,25 +0,0 @@ -DESCRIPTION = "GNU tar saves many files together into a single tape \ -or disk archive, and can restore individual files from the archive." -HOMEPAGE = "http://www.gnu.org/software/tar/" -SECTION = "base" - -SRC_URI = "${GNU_MIRROR}/tar/tar-${PV}.tar.bz2" - -inherit autotools gettext - -do_install () { - autotools_do_install - install -d ${D}${base_bindir} - mv ${D}${bindir}/tar ${D}${base_bindir}/tar.${PN} - mv ${D}${libexecdir}/rmt ${D}${libexecdir}/rmt.${PN} -} - -pkg_postinst_${PN} () { - update-alternatives --install ${base_bindir}/tar tar tar.${PN} 100 - update-alternatives --install ${libexecdir}/rmt rmt rmt.${PN} 100 -} - -pkg_prerm_${PN} () { - update-alternatives --remove tar tar.${PN} - update-alternatives --remove rmt rmt.${PN} -} diff --git a/meta/packages/tar/tar_1.17.bb b/meta/packages/tar/tar_1.17.bb deleted file mode 100644 index 729aecc984..0000000000 --- a/meta/packages/tar/tar_1.17.bb +++ /dev/null @@ -1,14 +0,0 @@ -require tar.inc - -LICENSE = "GPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552" - -PR = "r0" - -SRC_URI += "file://m4extensions.patch" - -SRC_URI[md5sum] = "c6c4f1c075dbf0f75c29737faa58f290" -SRC_URI[sha256sum] = "19f9021dda51a16295e4706e80870e71f87107675e51c176a491eba0fc4ca492" - -# Required to build with gcc 4.3 and later: -CFLAGS += "-fgnu89-inline" diff --git a/meta/packages/tar/tar_1.23.bb b/meta/packages/tar/tar_1.23.bb deleted file mode 100644 index 093c0b43ce..0000000000 --- a/meta/packages/tar/tar_1.23.bb +++ /dev/null @@ -1,9 +0,0 @@ -require tar.inc - -LICENSE = "GPLv3" -LIC_FILES_CHKSUM = "file://COPYING;md5=f27defe1e96c2e1ecd4e0c9be8967949" - -PR = "r0" - -SRC_URI[md5sum] = "41e2ca4b924ec7860e51b43ad06cdb7e" -SRC_URI[sha256sum] = "c9328372db62fbb1d94c9e4e3cefc961111af46de47085b635359c00a0eebe36" diff --git a/meta/packages/tcf-agent/tcf-agent/fix_tcf-agent.init.patch b/meta/packages/tcf-agent/tcf-agent/fix_tcf-agent.init.patch deleted file mode 100644 index fa9e458714..0000000000 --- a/meta/packages/tcf-agent/tcf-agent/fix_tcf-agent.init.patch +++ /dev/null @@ -1,92 +0,0 @@ ---- a/Makefile -+++ b/Makefile -@@ -32,7 +32,7 @@ - install -d -m 755 $(INSTALLROOT)$(SBIN) - install -d -m 755 $(INSTALLROOT)$(INIT) - install -c $(BINDIR)/agent -m 755 $(INSTALLROOT)$(SBIN)/tcf-agent -- install -c $(TCF_AGENT_DIR)/main/tcf-agent.init -m 755 $(INSTALLROOT)$(INIT)/tcf-agent -+ install -c tcf-agent.init -m 755 $(INSTALLROOT)$(INIT)/tcf-agent - - clean: - rm -rf $(BINDIR) ---- /dev/null -+++ b/tcf-agent.init -@@ -0,0 +1,78 @@ -+#!/bin/sh -+### BEGIN INIT INFO -+# Provides: tcf-agent -+# Default-Start: 3 5 -+# Default-Stop: 0 1 2 6 -+# Short-Description: Target Communication Framework agent -+### END INIT INFO -+ -+DAEMON_PATH=/usr/sbin/tcf-agent -+DAEMON_NAME=`basename $DAEMON_PATH` -+ -+. /etc/init.d/functions -+ -+test -x $DAEMON_PATH || exit 0 -+ -+PATH=/sbin:/usr/sbin:/bin:/usr/bin -+export PATH -+ -+RETVAL=0 -+ -+case "$1" in -+ start) -+ echo -n "Starting $DAEMON_NAME: " -+ $DAEMON_PATH -d -L- -l0 -+ RETVAL=$? -+ if [ $RETVAL -eq 0 ] ; then -+ echo "OK" -+ touch /var/lock/subsys/$DAEMON_NAME -+ else -+ echo "FAIL" -+ fi -+ ;; -+ -+ stop) -+ echo -n "Stopping $DAEMON_NAME: " -+ count=0 -+ while [ -n "`/bin/pidof $DAEMON_PATH`" -a $count -lt 10 ] ; do -+ killproc $DAEMON_PATH >& /dev/null -+ sleep 1 -+ RETVAL=$? -+ if [ $RETVAL != 0 -o -n "`/bin/pidof $DAEMON_PATH`" ] ; then -+ sleep 3 -+ fi -+ count=`expr $count + 1` -+ done -+ rm -f /var/lock/subsys/$DAEMON_NAME -+ if [ -n "`/bin/pidof $DAEMON_PATH`" ] ; then -+ echo "FAIL" -+ else -+ echo "OK" -+ fi -+ ;; -+ -+ restart) -+ $0 stop -+ sleep 1 -+ $0 start -+ ;; -+ -+ status) -+ if [ -n "`/bin/pidof $DAEMON_PATH`" ] ; then -+ echo "$DAEMON_NAME is running" -+ else -+ echo "$DAEMON_NAME is not running" -+ fi -+ ;; -+ -+ condrestart) -+ [ -f /var/lock/subsys/$DAEMON_NAME ] && $0 restart -+ ;; -+ -+ *) -+ echo "usage: $0 { start | stop | restart | condrestart | status }" -+ ;; -+esac -+ -+exit $RETVAL -+ diff --git a/meta/packages/tcf-agent/tcf-agent/terminals_agent.patch b/meta/packages/tcf-agent/tcf-agent/terminals_agent.patch deleted file mode 100644 index b88b5e70cd..0000000000 --- a/meta/packages/tcf-agent/tcf-agent/terminals_agent.patch +++ /dev/null @@ -1,1025 +0,0 @@ -Index: org.eclipse.tm.tcf.terminals.agent/terminals.c -=================================================================== ---- org.eclipse.tm.tcf.terminals.agent/terminals.c (revision 0) -+++ org.eclipse.tm.tcf.terminals.agent/terminals.c (revision 0) -@@ -0,0 +1,846 @@ -+/******************************************************************************* -+ * Copyright (c) 2008 Wind River Systems, Inc. and others. -+ * All rights reserved. This program and the accompanying materials -+ * are made available under the terms of the Eclipse Public License v1.0 -+ * and Eclipse Distribution License v1.0 which accompany this distribution. -+ * The Eclipse Public License is available at -+ * http://www.eclipse.org/legal/epl-v10.html -+ * and the Eclipse Distribution License is available at -+ * http://www.eclipse.org/org/documents/edl-v10.php. -+ * -+ * Contributors: -+ * Wind River Systems - initial API and implementation -+ *******************************************************************************/ -+ -+/* -+ * Sample TCF service implementation. -+ */ -+ -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#ifndef TIOCGWINSZ -+#include -+#endif -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+#define TERMINALS_DEBUG 1 -+ -+#define TERMINALS_NO_LOGIN 0 -+ -+static const char * TERMINALS = "Terminals"; -+ -+#if defined(WIN32) -+# include -+# ifdef _MSC_VER -+# pragma warning(disable:4201) /* nonstandard extension used : nameless struct/union (in winternl.h) */ -+# include -+# else -+# include -+# endif -+# ifndef STATUS_INFO_LENGTH_MISMATCH -+# define STATUS_INFO_LENGTH_MISMATCH ((NTSTATUS)0xC0000004L) -+# endif -+# ifndef SystemHandleInformation -+# define SystemHandleInformation 16 -+# endif -+# error("unsupported WIN32!") -+#elif defined(_WRS_KERNEL) -+# include -+# include -+# include -+# include -+# include -+# error("unsupported WRS!") -+#else -+# include -+# include -+# include -+# if TERMINALS_NO_LOGIN -+# define TERM_LAUNCH_EXEC "/bin/bash" -+# define TERM_LAUNCH_ARGS {TERM_LAUNCH_EXEC, NULL} -+# else -+# define TERM_LAUNCH_EXEC "/bin/login" -+# define TERM_LAUNCH_ARGS {TERM_LAUNCH_EXEC, "-p", NULL} -+# endif -+#endif -+ -+#define PIPE_SIZE 0x1000 -+#define TERM_PROP_DEF_SIZE 256 -+ -+typedef struct Terminal -+{ -+ LINK link; -+ int pid; /*pid of the login process of the terminal*/ -+ TCFBroadcastGroup * bcg; -+ int inp; -+ int out; -+ int err; -+ struct TerminalInput * inp_struct; -+ struct TerminalOutput * out_struct; -+ struct TerminalOutput * err_struct; -+ char inp_id[256]; -+ char out_id[256]; -+ char err_id[256]; -+ -+ char pty_type[TERM_PROP_DEF_SIZE]; -+ char encoding[TERM_PROP_DEF_SIZE]; -+ unsigned long width; -+ unsigned long height; -+ long exit_code; -+ -+ Channel *channel; -+} Terminal; -+ -+typedef struct TerminalOutput -+{ -+ Terminal * prs; -+ AsyncReqInfo req; -+ int req_posted; -+ char buf[PIPE_SIZE]; -+ size_t buf_pos; -+ int eos; -+ VirtualStream * vstream; -+} TerminalOutput; -+ -+typedef struct TerminalInput -+{ -+ Terminal * prs; -+ AsyncReqInfo req; -+ int req_posted; -+ char buf[PIPE_SIZE]; -+ size_t buf_pos; -+ size_t buf_len; -+ int eos; -+ VirtualStream * vstream; -+} TerminalInput; -+ -+#define link2term(A) ((Terminal *)((char *)(A) - offsetof(Terminal, link))) -+ -+static LINK terms_list; -+#if defined(_WRS_KERNEL) -+static SEM_ID prs_list_lock = NULL; -+#endif -+ -+static Terminal * find_terminal(int pid) -+{ -+ LINK * qhp = &terms_list; -+ LINK * qp = qhp->next; -+ -+ while (qp != qhp) { -+ Terminal * prs = link2term(qp); -+ if (prs->pid == pid) -+ return prs; -+ qp = qp->next; -+ } -+ return NULL; -+} -+ -+static char * tid2id(int tid) -+{ -+ static char s[64]; -+ char * p = s + sizeof(s); -+ unsigned long n = (long) tid; -+ *(--p) = 0; -+ do { -+ *(--p) = (char) (n % 10 + '0'); -+ n = n / 10; -+ } while (n != 0); -+ -+ *(--p) = 'T'; -+ return p; -+} -+ -+static int id2tid(const char * id) -+{ -+ int tid = 0; -+ if (id == NULL) -+ return 0; -+ if (id[0] != 'T') -+ return 0; -+ if (id[1] == 0) -+ return 0; -+ tid = (unsigned) strtol(id + 1, (char **) &id, 10); -+ if (id[0] != 0) -+ return 0; -+ return tid; -+} -+ -+static void write_context(OutputStream * out, int tid) -+{ -+ Terminal * prs = find_terminal(tid); -+ -+ write_stream(out, '{'); -+ -+ if (prs != NULL) { -+ if (*prs->pty_type) { -+ json_write_string(out, "PtyType"); -+ write_stream(out, ':'); -+ json_write_string(out, prs->pty_type); -+ write_stream(out, ','); -+ } -+ -+ if (*prs->encoding) { -+ json_write_string(out, "Encoding"); -+ write_stream(out, ':'); -+ json_write_string(out, prs->encoding); -+ write_stream(out, ','); -+ } -+ -+ json_write_string(out, "Width"); -+ write_stream(out, ':'); -+ json_write_ulong(out, prs->width); -+ write_stream(out, ','); -+ -+ json_write_string(out, "Height"); -+ write_stream(out, ':'); -+ json_write_ulong(out, prs->height); -+ write_stream(out, ','); -+ -+ if (*prs->inp_id) { -+ json_write_string(out, "StdInID"); -+ write_stream(out, ':'); -+ json_write_string(out, prs->inp_id); -+ write_stream(out, ','); -+ } -+ if (*prs->out_id) { -+ json_write_string(out, "StdOutID"); -+ write_stream(out, ':'); -+ json_write_string(out, prs->out_id); -+ write_stream(out, ','); -+ } -+ if (*prs->err_id) { -+ json_write_string(out, "StdErrID"); -+ write_stream(out, ':'); -+ json_write_string(out, prs->err_id); -+ write_stream(out, ','); -+ } -+ } -+ -+ json_write_string(out, "ID"); -+ write_stream(out, ':'); -+ json_write_string(out, tid2id(tid)); -+ -+ write_stream(out, '}'); -+} -+ -+static void send_event_terminal_exited(OutputStream * out, Terminal * prs) -+{ -+ write_stringz(out, "E"); -+ write_stringz(out, TERMINALS); -+ write_stringz(out, "exited"); -+ -+ json_write_string(out, tid2id(prs->pid)); -+ write_stream(out, 0); -+ -+ json_write_ulong(out, prs->exit_code); -+ write_stream(out, 0); -+ -+ write_stream(out, MARKER_EOM); -+} -+ -+static void send_event_terminal_win_size_changed(OutputStream * out, -+ Terminal * prs) -+{ -+ write_stringz(out, "E"); -+ write_stringz(out, TERMINALS); -+ write_stringz(out, "winSizeChanged"); -+ -+ json_write_string(out, tid2id(prs->pid)); -+ write_stream(out, 0); -+ -+ json_write_long(out, prs->width); -+ write_stream(out, 0); -+ -+ json_write_long(out, prs->height); -+ write_stream(out, 0); -+ -+ write_stream(out, MARKER_EOM); -+} -+ -+static int kill_term(Terminal *term) -+{ -+ int err = 0; -+ -+#if defined(WIN32) -+ HANDLE h = OpenProcess(PROCESS_TERMINATE, FALSE, term->pid); -+ if (h == NULL) -+ { -+ err = set_win32_errno(GetLastError()); -+ } -+ else -+ { -+ if (!TerminateProcess(h, 1)) err = set_win32_errno(GetLastError()); -+ if (!CloseHandle(h) && !err) err = set_win32_errno(GetLastError()); -+ } -+#else -+ if (kill(term->pid, SIGTERM) < 0) -+ err = errno; -+#endif -+ return err; -+} -+ -+static void command_exit(char * token, Channel * c) -+{ -+ int err = 0; -+ char id[256]; -+ unsigned tid; -+ Terminal *term = NULL; -+ -+ json_read_string(&c->inp, id, sizeof(id)); -+ if (read_stream(&c->inp) != 0) -+ exception(ERR_JSON_SYNTAX); -+ if (read_stream(&c->inp) != MARKER_EOM) -+ exception(ERR_JSON_SYNTAX); -+ -+ tid = id2tid(id); -+ write_stringz(&c->out, "R"); -+ write_stringz(&c->out, token); -+ -+ if (tid == 0) { -+ err = ERR_INV_CONTEXT; -+ } else { -+ term = find_terminal(tid); -+ if (term == NULL) { -+ err = ERR_INV_CONTEXT; -+ } else { -+ err = kill_term(term); -+ } -+ } -+ -+ write_errno(&c->out, err); -+ write_stream(&c->out, MARKER_EOM); -+} -+ -+static void terminal_exited(Terminal * prs) -+{ -+ Trap trap; -+ -+ if (set_trap(&trap)) { -+ send_event_terminal_exited(&prs->bcg->out, prs); -+ clear_trap(&trap); -+ } else { -+ trace(LOG_ALWAYS, "Exception sending terminal exited event: %d %s", -+ trap.error, errno_to_str(trap.error)); -+ } -+ -+#if defined(_WRS_KERNEL) -+ semTake(prs_list_lock, WAIT_FOREVER); -+#endif -+ list_remove(&prs->link); -+ close(prs->inp); -+ close(prs->out); -+ if (prs->out != prs->err) -+ close(prs->err); -+ if (prs->inp_struct) { -+ TerminalInput * inp = prs->inp_struct; -+ if (!inp->req_posted) { -+ virtual_stream_delete(inp->vstream); -+ loc_free(inp); -+ } else { -+ inp->prs = NULL; -+ } -+ } -+ if (prs->out_struct) -+ prs->out_struct->prs = NULL; -+ if (prs->err_struct) -+ prs->err_struct->prs = NULL; -+ loc_free(prs); -+#if defined(_WRS_KERNEL) -+ semGive(prs_list_lock); -+#endif -+} -+ -+static void terminal_input_streams_callback(VirtualStream * stream, -+ int event_code, void * args) -+{ -+ TerminalInput * inp = (TerminalInput *) args; -+ -+ assert(inp->vstream == stream); -+ if (!inp->req_posted) { -+ if (inp->buf_pos >= inp->buf_len && !inp->eos) { -+ inp->buf_pos = inp->buf_len = 0; -+ virtual_stream_get_data(stream, inp->buf, sizeof(inp->buf), -+ &inp->buf_len, &inp->eos); -+ } -+ if (inp->buf_pos < inp->buf_len) { -+ inp->req.u.fio.bufp = inp->buf + inp->buf_pos; -+ inp->req.u.fio.bufsz = inp->buf_len - inp->buf_pos; -+ inp->req_posted = 1; -+ async_req_post(&inp->req); -+ } -+ } -+} -+ -+static void write_terminal_input_done(void * x) -+{ -+ AsyncReqInfo * req = (AsyncReqInfo *) x; -+ TerminalInput * inp = (TerminalInput *) req->client_data; -+ -+ inp->req_posted = 0; -+ if (inp->prs == NULL) { -+ /* Process has exited */ -+ virtual_stream_delete(inp->vstream); -+ loc_free(inp); -+ } else { -+ int wr = inp->req.u.fio.rval; -+ -+ if (wr < 0) { -+ int err = inp->req.error; -+ trace(LOG_ALWAYS, "Can't write terminal input stream: %d %s", err, -+ errno_to_str(err)); -+ inp->buf_pos = inp->buf_len = 0; -+ } else { -+ inp->buf_pos += wr; -+ } -+ -+ terminal_input_streams_callback(inp->vstream, 0, inp); -+ } -+} -+ -+static void write_terminal_input(Terminal * prs) -+{ -+ TerminalInput * inp = prs->inp_struct = (TerminalInput *) loc_alloc_zero( -+ sizeof(TerminalInput)); -+ inp->prs = prs; -+ inp->req.client_data = inp; -+ inp->req.done = write_terminal_input_done; -+ inp->req.type = AsyncReqWrite; -+ inp->req.u.fio.fd = prs->inp; -+ virtual_stream_create(TERMINALS, tid2id(prs->pid), PIPE_SIZE, -+ VS_ENABLE_REMOTE_WRITE, terminal_input_streams_callback, inp, -+ &inp->vstream); -+ virtual_stream_get_id(inp->vstream, prs->inp_id, sizeof(prs->inp_id)); -+} -+ -+static void terminal_output_streams_callback(VirtualStream * stream, -+ int event_code, void * args) -+{ -+ TerminalOutput * out = (TerminalOutput *) args; -+ -+ assert(out->vstream == stream); -+ if (!out->req_posted) { -+ int buf_len = out->req.u.fio.rval; -+ int err = 0; -+ int eos = 0; -+ -+ if (buf_len < 0) { -+ buf_len = 0; -+ err = out->req.error; -+ } -+ if (buf_len == 0) -+ eos = 1; -+ if (out->prs == NULL) { -+ eos = 1; -+ err = 0; -+ } -+ -+ assert(buf_len <= (int)sizeof(out->buf)); -+ assert(out->buf_pos <= (size_t)buf_len); -+ assert(out->req.u.fio.bufp == out->buf); -+#ifdef __linux__ -+ if (err == EIO) -+ err = 0; -+#endif -+ if (err) -+ trace(LOG_ALWAYS, "Can't read terminal output stream: %d %s", err, -+ errno_to_str(err)); -+ -+ if (out->buf_pos < (size_t) buf_len || out->eos != eos) { -+ size_t done = 0; -+ virtual_stream_add_data(stream, out->buf + out->buf_pos, buf_len -+ - out->buf_pos, &done, eos); -+ out->buf_pos += done; -+ if (eos) -+ out->eos = 1; -+ } -+ -+ if (out->buf_pos >= (size_t) buf_len) { -+ if (!eos) { -+ out->req_posted = 1; -+ async_req_post(&out->req); -+ } else if (virtual_stream_is_empty(stream)) { -+ if (out->prs != NULL) { -+ if (out == out->prs->out_struct) -+ out->prs->out_struct = NULL; -+ if (out == out->prs->err_struct) -+ out->prs->err_struct = NULL; -+ } -+ virtual_stream_delete(stream); -+ loc_free(out); -+ } -+ } -+ } // end if(!out->req_posted) -+} -+ -+static void read_terminal_output_done(void * x) -+{ -+ AsyncReqInfo * req = (AsyncReqInfo *) x; -+ TerminalOutput * out = (TerminalOutput *) req->client_data; -+ -+ out->buf_pos = 0; -+ out->req_posted = 0; -+ terminal_output_streams_callback(out->vstream, 0, out); -+} -+ -+static TerminalOutput * read_terminal_output(Terminal * prs, int fd, char * id, -+ size_t id_size) -+{ -+ TerminalOutput * out = (TerminalOutput *) loc_alloc_zero( -+ sizeof(TerminalOutput)); -+ out->prs = prs; -+ out->req.client_data = out; -+ out->req.done = read_terminal_output_done; -+ out->req.type = AsyncReqRead; -+ out->req.u.fio.bufp = out->buf; -+ out->req.u.fio.bufsz = sizeof(out->buf); -+ out->req.u.fio.fd = fd; -+ virtual_stream_create(TERMINALS, tid2id(prs->pid), PIPE_SIZE, -+ VS_ENABLE_REMOTE_READ, terminal_output_streams_callback, out, -+ &out->vstream); -+ virtual_stream_get_id(out->vstream, id, id_size); -+ out->req_posted = 1; -+ async_req_post(&out->req); -+ return out; -+} -+ -+static char **envp_add(char **old_envp, int old_envp_len, char *env) -+{ -+ char **new_envp = NULL; -+ int i; -+ int env_size; -+ int old_envp_size; -+ -+ assert(old_envp || (old_envp==NULL && old_envp_len==0)); -+ assert(env); -+ assert(*env); -+ -+ for (i = 0, old_envp_size = 0; i < old_envp_len; i++) { -+ old_envp_size += sizeof(char *); //size of env pointer -+ old_envp_size += strlen(old_envp[i]) + 1; //size of env string, including trailing '\0' -+ } -+ assert((old_envp && old_envp[i]==NULL) || (old_envp==NULL)); -+ old_envp_size += sizeof(char *);//last null pointer -+ -+ env_size = strlen(env); //new env string size -+ -+ new_envp = loc_alloc(old_envp_size + sizeof(char *) + env_size + 1); -+ if (new_envp != NULL) { -+ new_envp[0] = (char *) new_envp + old_envp_size + sizeof(char *); //setting new env ptr -+ strcpy(new_envp[0], env); //copy new env string -+ if (old_envp) { -+ memcpy(&new_envp[1], old_envp, old_envp_size); //copy old envp -+ } else { -+ new_envp[1] = NULL; -+ } -+ } -+ return new_envp; -+} -+ -+static int start_terminal(Channel * c, char *pty_type, char *encoding, -+ char ** envp, int envp_len, char * exe, char ** args, int *pid, -+ Terminal ** prs) -+{ -+ int err = 0; -+ int fd_tty_master = -1; -+ char * tty_slave_name = NULL; -+ struct winsize size; -+ char **newenvp = envp; -+ -+ memset(&size, 0, sizeof(struct winsize)); -+ fd_tty_master = posix_openpt(O_RDWR | O_NOCTTY); -+ if (fd_tty_master < 0 || grantpt(fd_tty_master) < 0 || unlockpt( -+ fd_tty_master) < 0) -+ err = errno; -+ if (!err) { -+ tty_slave_name = ptsname(fd_tty_master); -+ if (tty_slave_name == NULL) -+ err = EINVAL; -+ } -+ -+ if (ioctl(fd_tty_master, TIOCGWINSZ, (char *) &size) < 0) -+ err = errno; -+ -+ if (!err && fd_tty_master < 3) { -+ int fd0 = fd_tty_master; -+ if ((fd_tty_master = dup(fd_tty_master)) < 0 || close(fd0)) -+ err = errno; -+ } -+ -+ if (!err) { -+ *pid = fork(); -+ if (*pid < 0) -+ err = errno; -+ if (*pid == 0) { -+ int fd = -1; -+ int fd_tty_slave = -1; -+ -+ if (*pty_type) { -+ char env_term[TERM_PROP_DEF_SIZE]; -+ snprintf(env_term, sizeof(env_term), "TERM=%s", pty_type); -+ newenvp = envp_add(envp, envp_len, env_term); -+ if (newenvp == NULL) { -+ err = ENOMEM; -+ } else if (envp) { -+ loc_free(envp); -+ envp = NULL; -+ } -+ } -+ -+ setsid(); -+ -+ if (!err && (fd = sysconf(_SC_OPEN_MAX)) < 0) -+ err = errno; -+ if (!err && (fd_tty_slave = open(tty_slave_name, O_RDWR)) < 0) -+ err = errno; -+#if defined(TIOCSCTTY) -+ if (!err && (ioctl(fd_tty_slave, TIOCSCTTY, (char *) 0)) < 0) -+ err = errno; -+#endif -+ if (!err && dup2(fd_tty_slave, 0) < 0) -+ err = errno; -+ if (!err && dup2(fd_tty_slave, 1) < 0) -+ err = errno; -+ if (!err && dup2(fd_tty_slave, 2) < 0) -+ err = errno; -+ while (!err && fd > 3) -+ close(--fd); -+ if (!err) { -+ execve(exe, args, newenvp); -+ err = errno; -+ } -+ if (newenvp) -+ loc_free(newenvp); -+ err = 1; -+ if (err < 1) -+ err = EINVAL; -+ else if (err > 0xff) -+ err = EINVAL; -+ exit(err); -+ } -+ } -+ -+ if (!err) { -+ *prs = (Terminal *) loc_alloc_zero(sizeof(Terminal)); -+ (*prs)->inp = fd_tty_master; -+ (*prs)->out = fd_tty_master; -+ (*prs)->err = fd_tty_master; -+ (*prs)->pid = *pid; -+ (*prs)->bcg = c->bcg; -+ (*prs)->channel = c; -+ if (*pty_type) -+ snprintf((*prs)->pty_type, sizeof((*prs)->pty_type), "%s", pty_type); -+ if (*encoding) -+ snprintf((*prs)->encoding, sizeof((*prs)->encoding), "%s", encoding); -+ (*prs)->width = size.ws_row; -+ (*prs)->height = size.ws_col; -+ list_add_first(&(*prs)->link, &terms_list); -+ } -+ -+ if (!err) -+ return 0; -+ errno = err; -+ return -1; -+} -+ -+static void command_get_context(char * token, Channel * c) -+{ -+ int err = 0; -+ char id[256]; -+ int tid; -+ Terminal *term; -+ -+ json_read_string(&c->inp, id, sizeof(id)); -+ if (read_stream(&c->inp) != 0) -+ exception(ERR_JSON_SYNTAX); -+ if (read_stream(&c->inp) != MARKER_EOM) -+ exception(ERR_JSON_SYNTAX); -+ -+ tid = id2tid(id); -+ write_stringz(&c->out, "R"); -+ write_stringz(&c->out, token); -+ -+ if (tid == 0) { -+ err = ERR_INV_CONTEXT; -+ } else { -+ term = find_terminal(tid); -+ if (term == NULL) { -+ err = ERR_INV_CONTEXT; -+ } else { -+ write_context(&c->out, tid); -+ write_stream(&c->out, 0); -+ } -+ } -+ -+ write_errno(&c->out, err); -+ write_stream(&c->out, MARKER_EOM); -+} -+ -+static void command_launch(char * token, Channel * c) -+{ -+ int pid = 0; -+ int err = 0; -+ char encoding[TERM_PROP_DEF_SIZE]; -+ char pty_type[TERM_PROP_DEF_SIZE]; -+ char *args[] = TERM_LAUNCH_ARGS; -+ -+ char ** envp = NULL; -+ int envp_len = 0; -+ -+ Terminal * prs = NULL; -+ Trap trap; -+ -+ if (set_trap(&trap)) { -+ json_read_string(&c->inp, pty_type, sizeof(pty_type)); -+ if (read_stream(&c->inp) != 0) -+ exception(ERR_JSON_SYNTAX); -+ json_read_string(&c->inp, encoding, sizeof(encoding)); -+ if (read_stream(&c->inp) != 0) -+ exception(ERR_JSON_SYNTAX); -+ envp = json_read_alloc_string_array(&c->inp, &envp_len); -+ if (read_stream(&c->inp) != 0) -+ exception(ERR_JSON_SYNTAX); -+ if (read_stream(&c->inp) != MARKER_EOM) -+ exception(ERR_JSON_SYNTAX); -+ -+ if (err == 0 && start_terminal(c, pty_type, encoding, envp, envp_len, -+ TERM_LAUNCH_EXEC, args, &pid, &prs) < 0) -+ err = errno; -+ if (prs != NULL) { -+ write_terminal_input(prs); -+ prs->out_struct = read_terminal_output(prs, prs->out, prs->out_id, -+ sizeof(prs->out_id)); -+ if (prs->out != prs->err) -+ prs->err_struct = read_terminal_output(prs, prs->err, -+ prs->err_id, sizeof(prs->err_id)); -+ } -+ if (!err) { -+ add_waitpid_process(pid); -+ } -+ //write result back -+ { -+ write_stringz(&c->out, "R"); -+ write_stringz(&c->out, token); -+ write_errno(&c->out, err); -+ if (err || pid == 0) { -+ write_stringz(&c->out, "null"); -+ } else { -+ write_context(&c->out, pid); -+ write_stream(&c->out, 0); -+ } -+ write_stream(&c->out, MARKER_EOM); -+ } -+ clear_trap(&trap); -+ } -+ -+ loc_free(envp); -+ -+ if (trap.error) -+ exception(trap.error); -+} -+ -+static void command_set_win_size(char * token, Channel * c) -+{ -+ int err = 0; -+ struct winsize size; -+ char id[256]; -+ unsigned tid; -+ Terminal *term = NULL; -+ -+ json_read_string(&c->inp, id, sizeof(id)); -+ if (read_stream(&c->inp) != 0) -+ exception(ERR_JSON_SYNTAX); -+ size.ws_col=json_read_ulong(&c->inp); -+ if (read_stream(&c->inp) != 0) -+ exception(ERR_JSON_SYNTAX); -+ size.ws_row=json_read_ulong(&c->inp); -+ if (read_stream(&c->inp) != 0) -+ exception(ERR_JSON_SYNTAX); -+ if (read_stream(&c->inp) != MARKER_EOM) -+ exception(ERR_JSON_SYNTAX); -+ -+ tid = id2tid(id); -+ -+ if(tid==0 || (term=find_terminal(tid))==NULL) { -+ err=ERR_INV_CONTEXT; -+ }else if (term->width != size.ws_col || term->height != size.ws_row) { -+ if(ioctl(term->inp,TIOCSWINSZ,&size)<0) { -+ err=errno; -+ } -+ if(!err) { -+ term->width=size.ws_col; -+ term->height=size.ws_row; -+ send_event_terminal_win_size_changed(&term->channel->out,term); -+ } -+ } -+ -+ write_stringz(&c->out, "R"); -+ write_stringz(&c->out, token); -+ write_errno(&c->out, err); -+ write_stream(&c->out, MARKER_EOM); -+ -+} -+ -+static void waitpid_listener(int pid, int exited, int exit_code, int signal, -+ int event_code, int syscall, void * args) -+{ -+ if (exited) { -+ Terminal * prs = find_terminal(pid); -+ if (prs) { -+ if (signal != 0) -+ prs->exit_code = -signal; -+ else -+ prs->exit_code = exit_code; -+ terminal_exited(prs); -+ } -+ } -+} -+ -+static void channel_close_listener(Channel * c) -+{ -+ LINK * l = NULL; -+ -+ for (l = terms_list.next; l != &terms_list;) { -+ Terminal * term = link2term(l); -+ l = l->next; -+ if (term->channel == c) { -+ trace(LOG_ALWAYS, "Terminal is left launched: T%d", term->pid); -+ kill_term(term); -+ } -+ } -+} -+ -+void ini_terminals_service(Protocol * proto) -+{ -+#if defined(_WRS_KERNEL) -+ prs_list_lock = semMCreate(SEM_Q_PRIORITY); -+ if (prs_list_lock == NULL) check_error(errno); -+ if (taskCreateHookAdd((FUNCPTR)task_create_hook) != OK) check_error(errno); -+ if (taskDeleteHookAdd((FUNCPTR)task_delete_hook) != OK) check_error(errno); -+#endif -+ list_init(&terms_list); -+ -+ add_waitpid_listener(waitpid_listener, NULL); -+ add_channel_close_listener(channel_close_listener); -+ -+ add_command_handler(proto, TERMINALS, "getContext", command_get_context); -+ add_command_handler(proto, TERMINALS, "launch", command_launch); -+ add_command_handler(proto, TERMINALS, "exit", command_exit); -+ add_command_handler(proto, TERMINALS, "setWinSize", command_set_win_size); -+} -Index: org.eclipse.tm.tcf.terminals.agent/main/services-ext.h -=================================================================== ---- org.eclipse.tm.tcf.terminals.agent/main/services-ext.h (revision 0) -+++ org.eclipse.tm.tcf.terminals.agent/main/services-ext.h (revision 0) -@@ -0,0 +1,25 @@ -+/******************************************************************************* -+ * Copyright (c) 2007, 2010 Wind River Systems, Inc. and others. -+ * All rights reserved. This program and the accompanying materials -+ * are made available under the terms of the Eclipse Public License v1.0 -+ * and Eclipse Distribution License v1.0 which accompany this distribution. -+ * The Eclipse Public License is available at -+ * http://www.eclipse.org/legal/epl-v10.html -+ * and the Eclipse Distribution License is available at -+ * http://www.eclipse.org/org/documents/edl-v10.php. -+ * -+ * Contributors: -+ * Wind River Systems - initial API and implementation -+ *******************************************************************************/ -+ -+/* -+ * Services initialization code extension point. -+ * If the agent is built with additional user-defined services, -+ * a customized version of services-ext.h file can be added to compiler headers search paths. -+ */ -+ -+#include "terminals.h" -+ -+static void ini_ext_services(Protocol * proto, TCFBroadcastGroup * bcg) { -+ ini_terminals_service(proto); -+} -Index: org.eclipse.tm.tcf.terminals.agent/terminals.h -=================================================================== ---- org.eclipse.tm.tcf.terminals.agent/terminals.h (revision 0) -+++ org.eclipse.tm.tcf.terminals.agent/terminals.h (revision 0) -@@ -0,0 +1,27 @@ -+/******************************************************************************* -+ * Copyright (c) 2008 Wind River Systems, Inc. and others. -+ * All rights reserved. This program and the accompanying materials -+ * are made available under the terms of the Eclipse Public License v1.0 -+ * and Eclipse Distribution License v1.0 which accompany this distribution. -+ * The Eclipse Public License is available at -+ * http://www.eclipse.org/legal/epl-v10.html -+ * and the Eclipse Distribution License is available at -+ * http://www.eclipse.org/org/documents/edl-v10.php. -+ * -+ * Contributors: -+ * Wind River Systems - initial API and implementation -+ *******************************************************************************/ -+ -+/* -+ * Sample TCF service header file. -+ */ -+ -+#ifndef TERMINALS_H_ -+#define TERMINALS_H_ -+ -+#include -+#include -+ -+extern void ini_terminals_service(Protocol * proto); -+ -+#endif /*TERMINALS_H_*/ -Index: org.eclipse.tm.tcf.terminals.agent/config.h -=================================================================== ---- org.eclipse.tm.tcf.terminals.agent/config.h (revision 0) -+++ org.eclipse.tm.tcf.terminals.agent/config.h (revision 0) -@@ -0,0 +1,63 @@ -+/******************************************************************************* -+ * Copyright (c) 2008 Wind River Systems, Inc. and others. -+ * All rights reserved. This program and the accompanying materials -+ * are made available under the terms of the Eclipse Public License v1.0 -+ * and Eclipse Distribution License v1.0 which accompany this distribution. -+ * The Eclipse Public License is available at -+ * http://www.eclipse.org/legal/epl-v10.html -+ * and the Eclipse Distribution License is available at -+ * http://www.eclipse.org/org/documents/edl-v10.php. -+ * -+ * Contributors: -+ * Wind River Systems - initial API and implementation -+ *******************************************************************************/ -+ -+/* -+ * This file contains "define" statements that control agent configuration. -+ * SERVICE_* definitions control which service implementations are included into the agent. -+ * -+ * This is example agent configuration. It includes only few standard services, -+ * and one example service: Day Time. -+ */ -+ -+#ifndef D_config -+#define D_config -+ -+#include -+ -+#if defined(WIN32) || defined(__CYGWIN__) -+# define TARGET_UNIX 0 -+#elif defined(_WRS_KERNEL) -+# define TARGET_UNIX 0 -+#else -+# define TARGET_UNIX 1 -+#endif -+ -+#define SERVICE_Locator 1 -+#define SERVICE_Processes 1 -+#define SERVICE_Streams 1 -+#define SERVICE_FileSystem 1 -+#define SERVICE_SysMonitor TARGET_UNIX -+ -+#define ENABLE_ZeroCopy 1 -+ -+#if !defined(ENABLE_Splice) -+# if ENABLE_ZeroCopy -+# include -+# if defined(SPLICE_F_MOVE) -+# define ENABLE_Splice 1 -+# else -+# define ENABLE_Splice 0 -+# endif -+# else -+# define ENABLE_Splice 0 -+# endif -+#endif -+ -+#define ENABLE_SSL 0 -+ -+#define ENABLE_Trace 1 -+#define ENABLE_Discovery 1 -+ -+ -+#endif /* D_config */ -Index: org.eclipse.tm.tcf.terminals.agent/Makefile -=================================================================== ---- org.eclipse.tm.tcf.terminals.agent/Makefile (revision 0) -+++ org.eclipse.tm.tcf.terminals.agent/Makefile (revision 0) -@@ -0,0 +1,39 @@ -+TCF_AGENT_DIR=../agent -+ -+include $(TCF_AGENT_DIR)/Makefile.inc -+ -+override CFLAGS += $(foreach dir,$(INCDIRS),-I$(dir)) $(OPTS) -+ -+HFILES := $(foreach dir,$(SRCDIRS),$(wildcard $(dir)/*.h)) $(HFILES) -+CFILES := $(sort $(foreach dir,$(SRCDIRS),$(wildcard $(dir)/*.c)) $(CFILES)) -+ -+#no using SSL -+LIBS = -lpthread -lrt -+ -+EXECS = $(BINDIR)/agent$(EXTEXE) -+ -+all: $(EXECS) -+ -+$(BINDIR)/libtcf$(EXTLIB) : $(OFILES) -+ $(AR) rcs $@ $^ -+ -+$(BINDIR)/agent$(EXTEXE): $(BINDIR)/main/main$(EXTOBJ) $(BINDIR)/libtcf$(EXTLIB) -+ $(CC) $(CFLAGS) -o $@ $(BINDIR)/main/main$(EXTOBJ) $(BINDIR)/libtcf$(EXTLIB) $(LIBS) -+ -+$(BINDIR)/%$(EXTOBJ): %.c $(HFILES) Makefile -+ @mkdir -p $(dir $@) -+ $(CC) $(CFLAGS) -c -o $@ $< -+ -+$(BINDIR)/%$(EXTOBJ): $(TCF_AGENT_DIR)/%.c $(HFILES) Makefile -+ @mkdir -p $(dir $@) -+ $(CC) $(CFLAGS) -c -o $@ $< -+ -+install: all -+ install -d -m 755 $(INSTALLROOT)$(SBIN) -+ install -d -m 755 $(INSTALLROOT)$(INIT) -+ install -c $(BINDIR)/agent -m 755 $(INSTALLROOT)$(SBIN)/tcf-agent -+ install -c $(TCF_AGENT_DIR)/main/tcf-agent.init -m 755 $(INSTALLROOT)$(INIT)/tcf-agent -+ -+clean: -+ rm -rf $(BINDIR) -+ diff --git a/meta/packages/tcf-agent/tcf-agent_svn.bb b/meta/packages/tcf-agent/tcf-agent_svn.bb deleted file mode 100644 index b4c70ec8b8..0000000000 --- a/meta/packages/tcf-agent/tcf-agent_svn.bb +++ /dev/null @@ -1,36 +0,0 @@ -DESCRIPTION = "Target Communication Framework" -HOMEPAGE = "http://dsdp.eclipse.org/dsdp/tm/" -BUGTRACKER = "https://bugs.eclipse.org/bugs/" - -LICENSE = "EPLv1.0 | EDLv1.0" -LIC_FILES_CHKSUM = "file://../epl-v10.html;md5=7aa4215a330a0a4f6a1cbf8da1a0879f \ - file://../agent/edl-v10.html;md5=522a390a83dc186513f0500543ad3679" - -PV = "0.3.0+svnr${SRCREV}" -PR = "r0" - -SRC_URI = "svn://dev.eclipse.org/svnroot/dsdp/org.eclipse.tm.tcf/;module=tags/0.3.0/;proto=http \ - file://terminals_agent.patch \ - file://fix_tcf-agent.init.patch" - -S = "${WORKDIR}/tags/0.3.0/tcf-agent" - -inherit update-rc.d - -INITSCRIPT_NAME = "tcf-agent" -INITSCRIPT_PARAMS = "start 999 3 5 . stop 20 0 1 2 6 ." - -# mangling needed for make -MAKE_ARCH = `echo ${TARGET_ARCH} | sed s,i.86,i686,` -MAKE_OS = `echo ${TARGET_OS} | sed s,linux,GNU/Linux,` - -EXTRA_OEMAKE = "MACHINE=${MAKE_ARCH} OPSYS=${MAKE_OS} 'CC=${CC}' 'AR=${AR}'" - -do_compile() { - oe_runmake -} - -do_install() { - oe_runmake install INSTALLROOT=${D} -} - diff --git a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/00_man_quoting.diff b/meta/packages/tcp-wrappers/tcp-wrappers-7.6/00_man_quoting.diff deleted file mode 100644 index ff60a843e4..0000000000 --- a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/00_man_quoting.diff +++ /dev/null @@ -1,75 +0,0 @@ -diff -ruN tcp_wrappers_7.6.orig/hosts_access.5 tcp_wrappers_7.6/hosts_access.5 ---- tcp_wrappers_7.6.orig/hosts_access.5 1995-01-30 19:51:47.000000000 +0100 -+++ tcp_wrappers_7.6/hosts_access.5 2004-04-09 16:59:45.000000000 +0200 -@@ -173,7 +173,7 @@ - Patterns like these can be used when the machine has different internet - addresses with different internet hostnames. Service providers can use - this facility to offer FTP, GOPHER or WWW archives with internet names --that may even belong to different organizations. See also the `twist' -+that may even belong to different organizations. See also the `twist\' - option in the hosts_options(5) document. Some systems (Solaris, - FreeBSD) can have more than one internet address on one physical - interface; with other systems you may have to resort to SLIP or PPP -@@ -236,10 +236,10 @@ - Before accepting a client request, the wrappers can use the IDENT - service to find out that the client did not send the request at all. - When the client host provides IDENT service, a negative IDENT lookup --result (the client matches `UNKNOWN@host') is strong evidence of a host -+result (the client matches `UNKNOWN@host\') is strong evidence of a host - spoofing attack. - .PP --A positive IDENT lookup result (the client matches `KNOWN@host') is -+A positive IDENT lookup result (the client matches `KNOWN@host\') is - less trustworthy. It is possible for an intruder to spoof both the - client connection and the IDENT lookup, although doing so is much - harder than spoofing just a client connection. It may also be that -diff -ruN tcp_wrappers_7.6.orig/hosts_options.5 tcp_wrappers_7.6/hosts_options.5 ---- tcp_wrappers_7.6.orig/hosts_options.5 1994-12-28 17:42:29.000000000 +0100 -+++ tcp_wrappers_7.6/hosts_options.5 2004-04-09 16:59:49.000000000 +0200 -@@ -124,7 +124,7 @@ - value is taken. - .SH MISCELLANEOUS - .IP "banners /some/directory" --Look for a file in `/some/directory' with the same name as the daemon -+Look for a file in `/some/directory\' with the same name as the daemon - process (for example in.telnetd for the telnet service), and copy its - contents to the client. Newline characters are replaced by - carriage-return newline, and % sequences are expanded (see -diff -ruN tcp_wrappers_7.6.orig/tcpdmatch.8 tcp_wrappers_7.6/tcpdmatch.8 ---- tcp_wrappers_7.6.orig/tcpdmatch.8 1996-02-11 17:01:36.000000000 +0100 -+++ tcp_wrappers_7.6/tcpdmatch.8 2004-04-09 17:00:49.000000000 +0200 -@@ -26,7 +26,7 @@ - A daemon process name. Typically, the last component of a daemon - executable pathname. - .IP client --A host name or network address, or one of the `unknown' or `paranoid' -+A host name or network address, or one of the `unknown\' or `paranoid\' - wildcard patterns. - .sp - When a client host name is specified, \fItcpdmatch\fR gives a -@@ -37,13 +37,13 @@ - .PP - Optional information specified with the \fIdaemon@server\fR form: - .IP server --A host name or network address, or one of the `unknown' or `paranoid' --wildcard patterns. The default server name is `unknown'. -+A host name or network address, or one of the `unknown\' or `paranoid\' -+wildcard patterns. The default server name is `unknown\'. - .PP - Optional information specified with the \fIuser@client\fR form: - .IP user - A client user identifier. Typically, a login name or a numeric userid. --The default user name is `unknown'. -+The default user name is `unknown\'. - .SH OPTIONS - .IP -d - Examine \fIhosts.allow\fR and \fIhosts.deny\fR files in the current -@@ -70,7 +70,7 @@ - .ti +5 - tcpdmatch in.telnetd paranoid - .PP --On some systems, daemon names have no `in.' prefix, or \fItcpdmatch\fR -+On some systems, daemon names have no `in.\' prefix, or \fItcpdmatch\fR - may need some help to locate the inetd configuration file. - .SH FILES - .PP diff --git a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/01_man_portability.patch b/meta/packages/tcp-wrappers/tcp-wrappers-7.6/01_man_portability.patch deleted file mode 100644 index 4963f82eb8..0000000000 --- a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/01_man_portability.patch +++ /dev/null @@ -1,248 +0,0 @@ -diff -ruNp tcp_wrappers_7.6.orig/hosts_access.3 tcp_wrappers_7.6/hosts_access.3 ---- tcp_wrappers_7.6.orig/hosts_access.3 2005-03-09 18:30:25.000000000 +0100 -+++ tcp_wrappers_7.6/hosts_access.3 2005-03-09 18:27:03.000000000 +0100 -@@ -3,7 +3,7 @@ - hosts_access, hosts_ctl, request_init, request_set \- access control library - .SH SYNOPSIS - .nf --#include "tcpd.h" -+#include - - extern int allow_severity; - extern int deny_severity; -diff -ruNp tcp_wrappers_7.6.orig/hosts_access.5 tcp_wrappers_7.6/hosts_access.5 ---- tcp_wrappers_7.6.orig/hosts_access.5 2005-03-09 18:30:25.000000000 +0100 -+++ tcp_wrappers_7.6/hosts_access.5 2005-03-09 18:30:18.000000000 +0100 -@@ -8,9 +8,9 @@ name, host name/address) patterns. Exam - impatient reader is encouraged to skip to the EXAMPLES section for a - quick introduction. - .PP --An extended version of the access control language is described in the --\fIhosts_options\fR(5) document. The extensions are turned on at --program build time by building with -DPROCESS_OPTIONS. -+The extended version of the access control language is described in the -+\fIhosts_options\fR(5) document. \fBNote that this language supersedes -+the meaning of \fIshell_command\fB as documented below.\fR - .PP - In the following text, \fIdaemon\fR is the the process name of a - network daemon process, and \fIclient\fR is the name and/or address of -@@ -346,8 +346,8 @@ in.tftpd: LOCAL, .my.domain - /etc/hosts.deny: - .in +3 - .nf --in.tftpd: ALL: (/some/where/safe_finger -l @%h | \\ -- /usr/ucb/mail -s %d-%h root) & -+in.tftpd: ALL: (/usr/sbin/safe_finger -l @%h | \\ -+ /usr/bin/mail -s %d-%h root) & - .fi - .PP - The safe_finger command comes with the tcpd wrapper and should be -@@ -383,6 +383,7 @@ that shouldn\'t. All problems are repor - .fi - .SH SEE ALSO - .nf -+hosts_options(5) extended syntax. - tcpd(8) tcp/ip daemon wrapper program. - tcpdchk(8), tcpdmatch(8), test programs. - .SH BUGS -diff -ruNp tcp_wrappers_7.6.orig/hosts_options.5 tcp_wrappers_7.6/hosts_options.5 ---- tcp_wrappers_7.6.orig/hosts_options.5 2005-03-09 18:30:24.000000000 +0100 -+++ tcp_wrappers_7.6/hosts_options.5 2005-03-09 18:27:03.000000000 +0100 -@@ -2,10 +2,8 @@ - .SH NAME - hosts_options \- host access control language extensions - .SH DESCRIPTION --This document describes optional extensions to the language described --in the hosts_access(5) document. The extensions are enabled at program --build time. For example, by editing the Makefile and turning on the --PROCESS_OPTIONS compile-time option. -+This document describes extensions to the language described -+in the hosts_access(5) document. - .PP - The extensible language uses the following format: - .sp -@@ -58,12 +56,12 @@ Notice the leading dot on the domain nam - Execute, in a child process, the specified shell command, after - performing the % expansions described in the hosts_access(5) - manual page. The command is executed with stdin, stdout and stderr --connected to the null device, so that it won\'t mess up the -+connected to the null device, so that it won't mess up the - conversation with the client host. Example: - .sp - .nf - .ti +3 --spawn (/some/where/safe_finger -l @%h | /usr/ucb/mail root) & -+spawn (/usr/sbin/safe_finger -l @%h | /usr/bin/mail root) & - .fi - .sp - executes, in a background child process, the shell command "safe_finger -diff -ruNp tcp_wrappers_7.6.orig/inetcf.c tcp_wrappers_7.6/inetcf.c ---- tcp_wrappers_7.6.orig/inetcf.c 1997-02-12 02:13:24.000000000 +0100 -+++ tcp_wrappers_7.6/inetcf.c 2005-03-09 18:27:03.000000000 +0100 -@@ -26,13 +26,17 @@ extern void exit(); - * guesses. Shorter names follow longer ones. - */ - char *inet_files[] = { -+#if 0 - "/private/etc/inetd.conf", /* NEXT */ - "/etc/inet/inetd.conf", /* SYSV4 */ - "/usr/etc/inetd.conf", /* IRIX?? */ -+#endif - "/etc/inetd.conf", /* BSD */ -+#if 0 - "/etc/net/tlid.conf", /* SYSV4?? */ - "/etc/saf/tlid.conf", /* SYSV4?? */ - "/etc/tlid.conf", /* SYSV4?? */ -+#endif - 0, - }; - -diff -ruNp tcp_wrappers_7.6.orig/tcpd.8 tcp_wrappers_7.6/tcpd.8 ---- tcp_wrappers_7.6.orig/tcpd.8 1996-02-21 16:39:16.000000000 +0100 -+++ tcp_wrappers_7.6/tcpd.8 2005-03-09 18:27:03.000000000 +0100 -@@ -12,7 +12,11 @@ The program supports both 4.3BSD-style s - TLI. Functionality may be limited when the protocol underneath TLI is - not an internet protocol. - .PP --Operation is as follows: whenever a request for service arrives, the -+There are two possible modes of operation: execution of \fItcpd\fP -+before a service started by \fIinetd\fP, or linking a daemon with -+the \fIlibwrap\fP shared library as documented in the \fIhosts_access\fR(3) -+manual page. Operation when started by \fIinetd\fP -+is as follows: whenever a request for service arrives, the - \fIinetd\fP daemon is tricked into running the \fItcpd\fP program - instead of the desired server. \fItcpd\fP logs the request and does - some additional checks. When all is well, \fItcpd\fP runs the -@@ -88,11 +92,11 @@ configuration files. - .sp - .in +5 - # mkdir /other/place --# mv /usr/etc/in.fingerd /other/place --# cp tcpd /usr/etc/in.fingerd -+# mv /usr/sbin/in.fingerd /other/place -+# cp tcpd /usr/sbin/in.fingerd - .fi - .PP --The example assumes that the network daemons live in /usr/etc. On some -+The example assumes that the network daemons live in /usr/sbin. On some - systems, network daemons live in /usr/sbin or in /usr/libexec, or have - no `in.\' prefix to their name. - .SH EXAMPLE 2 -@@ -101,35 +105,34 @@ are left in their original place. - .PP - In order to monitor access to the \fIfinger\fR service, perform the - following edits on the \fIinetd\fR configuration file (usually --\fI/etc/inetd.conf\fR or \fI/etc/inet/inetd.conf\fR): -+\fI/etc/inetd.conf\fR): - .nf - .sp - .ti +5 --finger stream tcp nowait nobody /usr/etc/in.fingerd in.fingerd -+finger stream tcp nowait nobody /usr/sbin/in.fingerd in.fingerd - .sp - becomes: - .sp - .ti +5 --finger stream tcp nowait nobody /some/where/tcpd in.fingerd -+finger stream tcp nowait nobody /usr/sbin/tcpd in.fingerd - .sp - .fi - .PP --The example assumes that the network daemons live in /usr/etc. On some -+The example assumes that the network daemons live in /usr/sbin. On some - systems, network daemons live in /usr/sbin or in /usr/libexec, the - daemons have no `in.\' prefix to their name, or there is no userid - field in the inetd configuration file. - .PP - Similar changes will be needed for the other services that are to be - covered by \fItcpd\fR. Send a `kill -HUP\' to the \fIinetd\fR(8) --process to make the changes effective. AIX users may also have to --execute the `inetimp\' command. -+process to make the changes effective. - .SH EXAMPLE 3 - In the case of daemons that do not live in a common directory ("secret" - or otherwise), edit the \fIinetd\fR configuration file so that it - specifies an absolute path name for the process name field. For example: - .nf - .sp -- ntalk dgram udp wait root /some/where/tcpd /usr/local/lib/ntalkd -+ ntalk dgram udp wait root /usr/sbin/tcpd /usr/local/lib/ntalkd - .sp - .fi - .PP -@@ -164,6 +167,7 @@ The default locations of the host access - .SH SEE ALSO - .na - .nf -+hosts_access(3), functions provided by the libwrap library. - hosts_access(5), format of the tcpd access control tables. - syslog.conf(5), format of the syslogd control file. - inetd.conf(5), format of the inetd control file. -diff -ruNp tcp_wrappers_7.6.orig/tcpdchk.8 tcp_wrappers_7.6/tcpdchk.8 ---- tcp_wrappers_7.6.orig/tcpdchk.8 1995-01-08 17:00:31.000000000 +0100 -+++ tcp_wrappers_7.6/tcpdchk.8 2005-03-09 18:27:03.000000000 +0100 -@@ -9,8 +9,8 @@ tcpdchk [-a] [-d] [-i inet_conf] [-v] - potential and real problems it can find. The program examines the - \fItcpd\fR access control files (by default, these are - \fI/etc/hosts.allow\fR and \fI/etc/hosts.deny\fR), and compares the --entries in these files against entries in the \fIinetd\fR or \fItlid\fR --network configuration files. -+entries in these files against entries in the \fIinetd\fR -+network configuration file. - .PP - \fItcpdchk\fR reports problems such as non-existent pathnames; services - that appear in \fItcpd\fR access control rules, but are not controlled -@@ -26,14 +26,13 @@ problem. - .SH OPTIONS - .IP -a - Report access control rules that permit access without an explicit --ALLOW keyword. This applies only when the extended access control --language is enabled (build with -DPROCESS_OPTIONS). -+ALLOW keyword. - .IP -d - Examine \fIhosts.allow\fR and \fIhosts.deny\fR files in the current - directory instead of the default ones. - .IP "-i inet_conf" - Specify this option when \fItcpdchk\fR is unable to find your --\fIinetd.conf\fR or \fItlid.conf\fR network configuration file, or when -+\fIinetd.conf\fR network configuration file, or when - you suspect that the program uses the wrong one. - .IP -v - Display the contents of each access control rule. Daemon lists, client -@@ -54,7 +53,6 @@ tcpdmatch(8), explain what tcpd would do - hosts_access(5), format of the tcpd access control tables. - hosts_options(5), format of the language extensions. - inetd.conf(5), format of the inetd control file. --tlid.conf(5), format of the tlid control file. - .SH AUTHORS - .na - .nf -diff -ruNp tcp_wrappers_7.6.orig/tcpdmatch.8 tcp_wrappers_7.6/tcpdmatch.8 ---- tcp_wrappers_7.6.orig/tcpdmatch.8 2005-03-09 18:30:24.000000000 +0100 -+++ tcp_wrappers_7.6/tcpdmatch.8 2005-03-09 18:27:03.000000000 +0100 -@@ -13,7 +13,7 @@ request for service. Examples are given - The program examines the \fItcpd\fR access control tables (default - \fI/etc/hosts.allow\fR and \fI/etc/hosts.deny\fR) and prints its - conclusion. For maximal accuracy, it extracts additional information --from your \fIinetd\fR or \fItlid\fR network configuration file. -+from your \fIinetd\fR network configuration file. - .PP - When \fItcpdmatch\fR finds a match in the access control tables, it - identifies the matched rule. In addition, it displays the optional -@@ -50,7 +50,7 @@ Examine \fIhosts.allow\fR and \fIhosts.d - directory instead of the default ones. - .IP "-i inet_conf" - Specify this option when \fItcpdmatch\fR is unable to find your --\fIinetd.conf\fR or \fItlid.conf\fR network configuration file, or when -+\fIinetd.conf\fR network configuration file, or when - you suspect that the program uses the wrong one. - .SH EXAMPLES - To predict how \fItcpd\fR would handle a telnet request from the local -@@ -86,7 +86,6 @@ tcpdchk(8), tcpd configuration checker - hosts_access(5), format of the tcpd access control tables. - hosts_options(5), format of the language extensions. - inetd.conf(5), format of the inetd control file. --tlid.conf(5), format of the tlid control file. - .SH AUTHORS - .na - .nf diff --git a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/05_wildcard_matching.patch b/meta/packages/tcp-wrappers/tcp-wrappers-7.6/05_wildcard_matching.patch deleted file mode 100644 index a168f6d5a5..0000000000 --- a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/05_wildcard_matching.patch +++ /dev/null @@ -1,103 +0,0 @@ -See https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=17847 - -diff -ruN tcp_wrappers_7.6.orig/hosts_access.5 tcp_wrappers_7.6/hosts_access.5 ---- tcp_wrappers_7.6.orig/hosts_access.5 2004-04-10 18:54:33.000000000 +0200 -+++ tcp_wrappers_7.6/hosts_access.5 2004-04-10 18:54:27.000000000 +0200 -@@ -89,6 +89,10 @@ - bitwise AND of the address and the `mask\'. For example, the net/mask - pattern `131.155.72.0/255.255.254.0\' matches every address in the - range `131.155.72.0\' through `131.155.73.255\'. -+.IP \(bu -+Wildcards `*\' and `?\' can be used to match hostnames or IP addresses. This -+method of matching cannot be used in conjunction with `net/mask\' matching, -+hostname matching beginning with `.\' or IP address matching ending with `.\'. - .SH WILDCARDS - The access control language supports explicit wildcards: - .IP ALL -diff -ruN tcp_wrappers_7.6.orig/hosts_access.c tcp_wrappers_7.6/hosts_access.c ---- tcp_wrappers_7.6.orig/hosts_access.c 1997-02-12 02:13:23.000000000 +0100 -+++ tcp_wrappers_7.6/hosts_access.c 2004-04-10 18:52:21.000000000 +0200 -@@ -289,6 +289,11 @@ - { - int n; - -+#ifndef DISABLE_WILDCARD_MATCHING -+ if (strchr(tok, '*') || strchr(tok,'?')) { /* contains '*' or '?' */ -+ return (match_pattern_ylo(string,tok)); -+ } else -+#endif - if (tok[0] == '.') { /* suffix */ - n = strlen(string) - strlen(tok); - return (n > 0 && STR_EQ(tok, string + n)); -@@ -329,3 +334,71 @@ - } - return ((addr & mask) == net); - } -+ -+#ifndef DISABLE_WILDCARD_MATCHING -+/* Note: this feature has been adapted in a pretty straightforward way -+ from Tatu Ylonen's last SSH version under free license by -+ Pekka Savola . -+ -+ Copyright (c) 1995 Tatu Ylonen , Espoo, Finland -+*/ -+ -+/* Returns true if the given string matches the pattern (which may contain -+ ? and * as wildcards), and zero if it does not match. */ -+ -+int match_pattern_ylo(const char *s, const char *pattern) -+{ -+ while (1) -+ { -+ /* If at end of pattern, accept if also at end of string. */ -+ if (!*pattern) -+ return !*s; -+ -+ /* Process '*'. */ -+ if (*pattern == '*') -+ { -+ /* Skip the asterisk. */ -+ pattern++; -+ -+ /* If at end of pattern, accept immediately. */ -+ if (!*pattern) -+ return 1; -+ -+ /* If next character in pattern is known, optimize. */ -+ if (*pattern != '?' && *pattern != '*') -+ { -+ /* Look instances of the next character in pattern, and try -+ to match starting from those. */ -+ for (; *s; s++) -+ if (*s == *pattern && -+ match_pattern_ylo(s + 1, pattern + 1)) -+ return 1; -+ /* Failed. */ -+ return 0; -+ } -+ -+ /* Move ahead one character at a time and try to match at each -+ position. */ -+ for (; *s; s++) -+ if (match_pattern_ylo(s, pattern)) -+ return 1; -+ /* Failed. */ -+ return 0; -+ } -+ -+ /* There must be at least one more character in the string. If we are -+ at the end, fail. */ -+ if (!*s) -+ return 0; -+ -+ /* Check if the next character of the string is acceptable. */ -+ if (*pattern != '?' && *pattern != *s) -+ return 0; -+ -+ /* Move to the next character, both in string and in pattern. */ -+ s++; -+ pattern++; -+ } -+ /*NOTREACHED*/ -+} -+#endif /* DISABLE_WILDCARD_MATCHING */ diff --git a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/06_fix_gethostbyname.patch b/meta/packages/tcp-wrappers/tcp-wrappers-7.6/06_fix_gethostbyname.patch deleted file mode 100644 index d06aaef13b..0000000000 --- a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/06_fix_gethostbyname.patch +++ /dev/null @@ -1,30 +0,0 @@ -* Mon Feb 5 2001 Preston Brown -- fix gethostbyname to work better with dot "." notation (#16949) - ---- tcp_wrappers_7.6/socket.c.fixgethostbyname Fri Mar 21 13:27:25 1997 -+++ tcp_wrappers_7.6/socket.c Mon Feb 5 14:09:40 2001 -@@ -52,7 +52,8 @@ - char *name; - { - char dot_name[MAXHOSTNAMELEN + 1]; -- -+ struct hostent *hp; -+ - /* - * Don't append dots to unqualified names. Such names are likely to come - * from local hosts files or from NIS. -@@ -61,8 +62,12 @@ - if (strchr(name, '.') == 0 || strlen(name) >= MAXHOSTNAMELEN - 1) { - return (gethostbyname(name)); - } else { -- sprintf(dot_name, "%s.", name); -- return (gethostbyname(dot_name)); -+ sprintf(dot_name, "%s.", name); -+ hp = gethostbyname(dot_name); -+ if (hp) -+ return hp; -+ else -+ return (gethostbyname(name)); - } - } - diff --git a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/10_usagi-ipv6.patch b/meta/packages/tcp-wrappers/tcp-wrappers-7.6/10_usagi-ipv6.patch deleted file mode 100644 index 5c8be5c27c..0000000000 --- a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/10_usagi-ipv6.patch +++ /dev/null @@ -1,1253 +0,0 @@ -diff -ruN tcp_wrappers_7.6.orig/fix_options.c tcp_wrappers_7.6/fix_options.c ---- tcp_wrappers_7.6.orig/fix_options.c 1997-04-08 02:29:19.000000000 +0200 -+++ tcp_wrappers_7.6/fix_options.c 2004-04-10 19:07:43.000000000 +0200 -@@ -11,6 +11,9 @@ - - #include - #include -+#ifdef INET6 -+#include -+#endif - #include - #include - #include -@@ -41,6 +44,22 @@ - unsigned int opt; - int optlen; - struct in_addr dummy; -+#ifdef INET6 -+ struct sockaddr_storage ss; -+ int sslen; -+ -+ /* -+ * check if this is AF_INET socket -+ * XXX IPv6 support? -+ */ -+ sslen = sizeof(ss); -+ if (getsockname(fd, (struct sockaddr *)&ss, &sslen) < 0) { -+ syslog(LOG_ERR, "getpeername: %m"); -+ clean_exit(request); -+ } -+ if (ss.ss_family != AF_INET) -+ return; -+#endif - - if ((ip = getprotobyname("ip")) != 0) - ipproto = ip->p_proto; -diff -ruN tcp_wrappers_7.6.orig/hosts_access.5 tcp_wrappers_7.6/hosts_access.5 ---- tcp_wrappers_7.6.orig/hosts_access.5 2004-04-10 19:22:58.000000000 +0200 -+++ tcp_wrappers_7.6/hosts_access.5 2004-04-10 19:07:43.000000000 +0200 -@@ -85,11 +85,18 @@ - for daemon process names or for client user names. - .IP \(bu - An expression of the form `n.n.n.n/m.m.m.m\' is interpreted as a --`net/mask\' pair. A host address is matched if `net\' is equal to the -+`net/mask\' pair. An IPv4 host address is matched if `net\' is equal to the - bitwise AND of the address and the `mask\'. For example, the net/mask - pattern `131.155.72.0/255.255.254.0\' matches every address in the - range `131.155.72.0\' through `131.155.73.255\'. - .IP \(bu -+An expression of the form `[n:n:n:n:n:n:n:n]/m\' is interpreted as a -+`[net]/prefixlen\' pair. An IPv6 host address is matched if -+`prefixlen\' bits of `net\' is equal to the `prefixlen\' bits of the -+address. For example, the [net]/prefixlen pattern -+`[3ffe:505:2:1::]/64\' matches every address in the range -+`3ffe:505:2:1::\' through `3ffe:505:2:1:ffff:ffff:ffff:ffff\'. -+.IP \(bu - Wildcards `*\' and `?\' can be used to match hostnames or IP addresses. This - method of matching cannot be used in conjunction with `net/mask\' matching, - hostname matching beginning with `.\' or IP address matching ending with `.\'. -diff -ruN tcp_wrappers_7.6.orig/hosts_access.c tcp_wrappers_7.6/hosts_access.c ---- tcp_wrappers_7.6.orig/hosts_access.c 2004-04-10 19:22:58.000000000 +0200 -+++ tcp_wrappers_7.6/hosts_access.c 2004-04-10 19:07:43.000000000 +0200 -@@ -24,7 +24,13 @@ - /* System libraries. */ - - #include -+#ifdef INT32_T -+ typedef uint32_t u_int32_t; -+#endif - #include -+#ifdef INET6 -+#include -+#endif - #include - #include - #include -@@ -33,6 +39,9 @@ - #include - #include - #include -+#ifdef INET6 -+#include -+#endif - - extern char *fgets(); - extern int errno; -@@ -82,6 +91,10 @@ - static int host_match(); - static int string_match(); - static int masked_match(); -+#ifdef INET6 -+static int masked_match4(); -+static int masked_match6(); -+#endif - - /* Size of logical line buffer. */ - -@@ -289,6 +302,13 @@ - { - int n; - -+#ifdef INET6 -+ /* convert IPv4 mapped IPv6 address to IPv4 address */ -+ if (STRN_EQ(string, "::ffff:", 7) -+ && dot_quad_addr(string + 7) != INADDR_NONE) { -+ string += 7; -+ } -+#endif - #ifndef DISABLE_WILDCARD_MATCHING - if (strchr(tok, '*') || strchr(tok,'?')) { /* contains '*' or '?' */ - return (match_pattern_ylo(string,tok)); -@@ -304,20 +324,72 @@ - } else if (tok[(n = strlen(tok)) - 1] == '.') { /* prefix */ - return (STRN_EQ(tok, string, n)); - } else { /* exact match */ -+#ifdef INET6 -+ struct addrinfo hints, *res; -+ struct sockaddr_in6 pat, addr; -+ int len, ret; -+ char ch; -+ -+ len = strlen(tok); -+ if (*tok == '[' && tok[len - 1] == ']') { -+ ch = tok[len - 1]; -+ tok[len - 1] = '\0'; -+ memset(&hints, 0, sizeof(hints)); -+ hints.ai_family = AF_INET6; -+ hints.ai_socktype = SOCK_STREAM; -+ hints.ai_flags = AI_PASSIVE | AI_NUMERICHOST; -+ if ((ret = getaddrinfo(tok + 1, NULL, &hints, &res)) == 0) { -+ memcpy(&pat, res->ai_addr, sizeof(pat)); -+ freeaddrinfo(res); -+ } -+ tok[len - 1] = ch; -+ if (ret != 0 || getaddrinfo(string, NULL, &hints, &res) != 0) -+ return NO; -+ memcpy(&addr, res->ai_addr, sizeof(addr)); -+ freeaddrinfo(res); -+#ifdef NI_WITHSCOPEID -+ if (pat.sin6_scope_id != 0 && -+ addr.sin6_scope_id != pat.sin6_scope_id) -+ return NO; -+#endif -+ return (!memcmp(&pat.sin6_addr, &addr.sin6_addr, -+ sizeof(struct in6_addr))); -+ return (ret); -+ } -+#endif - return (STR_EQ(tok, string)); - } - } - - /* masked_match - match address against netnumber/netmask */ - -+#ifdef INET6 - static int masked_match(net_tok, mask_tok, string) - char *net_tok; - char *mask_tok; - char *string; - { -+ return (masked_match4(net_tok, mask_tok, string) || -+ masked_match6(net_tok, mask_tok, string)); -+} -+ -+static int masked_match4(net_tok, mask_tok, string) -+#else -+static int masked_match(net_tok, mask_tok, string) -+#endif -+char *net_tok; -+char *mask_tok; -+char *string; -+{ -+#ifdef INET6 -+ u_int32_t net; -+ u_int32_t mask; -+ u_int32_t addr; -+#else - unsigned long net; - unsigned long mask; - unsigned long addr; -+#endif - - /* - * Disallow forms other than dotted quad: the treatment that inet_addr() -@@ -329,12 +401,78 @@ - return (NO); - if ((net = dot_quad_addr(net_tok)) == INADDR_NONE - || (mask = dot_quad_addr(mask_tok)) == INADDR_NONE) { -+#ifndef INET6 - tcpd_warn("bad net/mask expression: %s/%s", net_tok, mask_tok); -+#endif - return (NO); /* not tcpd_jump() */ - } - return ((addr & mask) == net); - } - -+#ifdef INET6 -+static int masked_match6(net_tok, mask_tok, string) -+char *net_tok; -+char *mask_tok; -+char *string; -+{ -+ struct addrinfo hints, *res; -+ struct sockaddr_in6 net, addr; -+ u_int32_t mask; -+ int len, mask_len, i = 0; -+ char ch; -+ -+ memset(&hints, 0, sizeof(hints)); -+ hints.ai_family = AF_INET6; -+ hints.ai_socktype = SOCK_STREAM; -+ hints.ai_flags = AI_PASSIVE | AI_NUMERICHOST; -+ if (getaddrinfo(string, NULL, &hints, &res) != 0) -+ return NO; -+ memcpy(&addr, res->ai_addr, sizeof(addr)); -+ freeaddrinfo(res); -+ -+ if (IN6_IS_ADDR_V4MAPPED(&addr.sin6_addr)) { -+ if ((*(u_int32_t *)&net.sin6_addr.s6_addr[12] = dot_quad_addr(net_tok)) == INADDR_NONE -+ || (mask = dot_quad_addr(mask_tok)) == INADDR_NONE) -+ return (NO); -+ return ((*(u_int32_t *)&addr.sin6_addr.s6_addr[12] & mask) == *(u_int32_t *)&net.sin6_addr.s6_addr[12]); -+ } -+ -+ /* match IPv6 address against netnumber/prefixlen */ -+ len = strlen(net_tok); -+ if (*net_tok != '[' || net_tok[len - 1] != ']') -+ return NO; -+ ch = net_tok[len - 1]; -+ net_tok[len - 1] = '\0'; -+ if (getaddrinfo(net_tok + 1, NULL, &hints, &res) != 0) { -+ net_tok[len - 1] = ch; -+ return NO; -+ } -+ memcpy(&net, res->ai_addr, sizeof(net)); -+ freeaddrinfo(res); -+ net_tok[len - 1] = ch; -+ if ((mask_len = atoi(mask_tok)) < 0 || mask_len > 128) -+ return NO; -+ -+#ifdef NI_WITHSCOPEID -+ if (net.sin6_scope_id != 0 && addr.sin6_scope_id != net.sin6_scope_id) -+ return NO; -+#endif -+ while (mask_len > 0) { -+ if (mask_len < 32) { -+ mask = htonl(~(0xffffffff >> mask_len)); -+ if ((*(u_int32_t *)&addr.sin6_addr.s6_addr[i] & mask) != (*(u_int32_t *)&net.sin6_addr.s6_addr[i] & mask)) -+ return NO; -+ break; -+ } -+ if (*(u_int32_t *)&addr.sin6_addr.s6_addr[i] != *(u_int32_t *)&net.sin6_addr.s6_addr[i]) -+ return NO; -+ i += 4; -+ mask_len -= 32; -+ } -+ return YES; -+} -+#endif /* INET6 */ -+ - #ifndef DISABLE_WILDCARD_MATCHING - /* Note: this feature has been adapted in a pretty straightforward way - from Tatu Ylonen's last SSH version under free license by -diff -ruN tcp_wrappers_7.6.orig/Makefile tcp_wrappers_7.6/Makefile ---- tcp_wrappers_7.6.orig/Makefile 1997-03-21 19:27:21.000000000 +0100 -+++ tcp_wrappers_7.6/Makefile 2004-04-10 19:22:44.000000000 +0200 -@@ -21,7 +21,7 @@ - @echo " dynix epix esix freebsd hpux irix4 irix5 irix6 isc iunix" - @echo " linux machten mips(untested) ncrsvr4 netbsd next osf power_unix_211" - @echo " ptx-2.x ptx-generic pyramid sco sco-nis sco-od2 sco-os5 sinix sunos4" -- @echo " sunos40 sunos5 sysv4 tandem ultrix unicos7 unicos8 unixware1 unixware2" -+ @echo " sunos40 sunos5 solaris8 sysv4 tandem ultrix unicos7 unicos8 unixware1 unixware2" - @echo " uts215 uxp" - @echo - @echo "If none of these match your environment, edit the system" -@@ -131,20 +131,34 @@ - NETGROUP=-DNETGROUP TLI= SYSTYPE="-systype bsd43" all - - # Freebsd and linux by default have no NIS. --386bsd netbsd bsdos: -+386bsd bsdos: - @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ - LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ= NETGROUP= TLI= \ - EXTRA_CFLAGS=-DSYS_ERRLIST_DEFINED VSYSLOG= all - - freebsd: - @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ -+ LIBS="-L/usr/local/v6/lib -linet6" \ - LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ= NETGROUP= TLI= \ -- EXTRA_CFLAGS=-DSYS_ERRLIST_DEFINED VSYSLOG= all -+ EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DINET6 -Dss_family=__ss_family -Dss_len=__ss_len" \ -+ VSYSLOG= all -+ -+netbsd: -+ @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ -+ LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ= NETGROUP= TLI= \ -+ EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DINET6 -Dss_family=__ss_family -Dss_len=__ss_len" VSYSLOG= all - - linux: - @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ -- LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ=setenv.o \ -- NETGROUP= TLI= EXTRA_CFLAGS="-DBROKEN_SO_LINGER" all -+ LIBS=-lnsl RANLIB=ranlib ARFLAGS=rv AUX_OBJ= \ -+ NETGROUP="-DNETGROUP" TLI= VSYSLOG= BUGS= \ -+ EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DHAVE_STRERROR -DINET6=1 -Dss_family=__ss_family -Dss_len=__ss_len" all -+ -+gnu: -+ @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ -+ LIBS=-lnsl RANLIB=ranlib ARFLAGS=rv AUX_OBJ= \ -+ NETGROUP=-DNETGROUP TLI= VSYSLOG= BUGS= \ -+ EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DHAVE_STRERROR" all - - # This is good for many SYSV+BSD hybrids with NIS, probably also for HP-UX 7.x. - hpux hpux8 hpux9 hpux10: -@@ -196,6 +210,13 @@ - NETGROUP=-DNETGROUP AUX_OBJ=setenv.o TLI=-DTLI \ - BUGS="$(BUGS) -DSOLARIS_24_GETHOSTBYNAME_BUG" all - -+# SunOS 5.8 is another SYSV4 variant, but has IPv6 support -+solaris8: -+ @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ -+ LIBS="-lsocket -lnsl" RANLIB=echo ARFLAGS=rv VSYSLOG= \ -+ NETGROUP=-DNETGROUP AUX_OBJ=setenv.o TLI=-DTLI \ -+ EXTRA_CFLAGS="-DINET6 -DNO_CLONE_DEVICE -DINT32_T" all -+ - # Generic SYSV40 - esix sysv4: - @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ -diff -ruN tcp_wrappers_7.6.orig/misc.c tcp_wrappers_7.6/misc.c ---- tcp_wrappers_7.6.orig/misc.c 1996-02-11 17:01:30.000000000 +0100 -+++ tcp_wrappers_7.6/misc.c 2004-04-10 19:07:43.000000000 +0200 -@@ -58,9 +58,31 @@ - { - char *cp; - -+#ifdef INET6 -+ int bracket = 0; -+ -+ for (cp = string; cp && *cp; cp++) { -+ switch (*cp) { -+ case '[': -+ bracket++; -+ break; -+ case ']': -+ bracket--; -+ break; -+ default: -+ if (bracket == 0 && *cp == delimiter) { -+ *cp++ = 0; -+ return cp; -+ } -+ break; -+ } -+ } -+ return (NULL); -+#else - if ((cp = strchr(string, delimiter)) != 0) - *cp++ = 0; - return (cp); -+#endif - } - - /* dot_quad_addr - convert dotted quad to internal form */ -diff -ruN tcp_wrappers_7.6.orig/refuse.c tcp_wrappers_7.6/refuse.c ---- tcp_wrappers_7.6.orig/refuse.c 1994-12-28 17:42:40.000000000 +0100 -+++ tcp_wrappers_7.6/refuse.c 2004-04-10 19:07:43.000000000 +0200 -@@ -25,7 +25,12 @@ - void refuse(request) - struct request_info *request; - { -+#ifdef INET6 -+ syslog(deny_severity, "refused connect from %s (%s)", -+ eval_client(request), eval_hostaddr(request->client)); -+#else - syslog(deny_severity, "refused connect from %s", eval_client(request)); -+#endif - clean_exit(request); - /* NOTREACHED */ - } -diff -ruN tcp_wrappers_7.6.orig/rfc931.c tcp_wrappers_7.6/rfc931.c ---- tcp_wrappers_7.6.orig/rfc931.c 1995-01-02 16:11:34.000000000 +0100 -+++ tcp_wrappers_7.6/rfc931.c 2004-04-10 19:07:43.000000000 +0200 -@@ -68,20 +68,50 @@ - /* rfc931 - return remote user name, given socket structures */ - - void rfc931(rmt_sin, our_sin, dest) -+#ifdef INET6 -+struct sockaddr *rmt_sin; -+struct sockaddr *our_sin; -+#else - struct sockaddr_in *rmt_sin; - struct sockaddr_in *our_sin; -+#endif - char *dest; - { - unsigned rmt_port; - unsigned our_port; -+#ifdef INET6 -+ struct sockaddr_storage rmt_query_sin; -+ struct sockaddr_storage our_query_sin; -+ int alen; -+#else - struct sockaddr_in rmt_query_sin; - struct sockaddr_in our_query_sin; -+#endif - char user[256]; /* XXX */ - char buffer[512]; /* XXX */ - char *cp; - char *result = unknown; - FILE *fp; - -+#ifdef INET6 -+ /* address family must be the same */ -+ if (rmt_sin->sa_family != our_sin->sa_family) { -+ STRN_CPY(dest, result, STRING_LENGTH); -+ return; -+ } -+ switch (our_sin->sa_family) { -+ case AF_INET: -+ alen = sizeof(struct sockaddr_in); -+ break; -+ case AF_INET6: -+ alen = sizeof(struct sockaddr_in6); -+ break; -+ default: -+ STRN_CPY(dest, result, STRING_LENGTH); -+ return; -+ } -+#endif -+ - /* - * Use one unbuffered stdio stream for writing to and for reading from - * the RFC931 etc. server. This is done because of a bug in the SunOS -@@ -92,7 +122,11 @@ - * sockets. - */ - -+#ifdef INET6 -+ if ((fp = fsocket(our_sin->sa_family, SOCK_STREAM, 0)) != 0) { -+#else - if ((fp = fsocket(AF_INET, SOCK_STREAM, 0)) != 0) { -+#endif - setbuf(fp, (char *) 0); - - /* -@@ -112,6 +146,25 @@ - * addresses from the query socket. - */ - -+#ifdef INET6 -+ memcpy(&our_query_sin, our_sin, alen); -+ memcpy(&rmt_query_sin, rmt_sin, alen); -+ switch (our_sin->sa_family) { -+ case AF_INET: -+ ((struct sockaddr_in *)&our_query_sin)->sin_port = htons(ANY_PORT); -+ ((struct sockaddr_in *)&rmt_query_sin)->sin_port = htons(RFC931_PORT); -+ break; -+ case AF_INET6: -+ ((struct sockaddr_in6 *)&our_query_sin)->sin6_port = htons(ANY_PORT); -+ ((struct sockaddr_in6 *)&rmt_query_sin)->sin6_port = htons(RFC931_PORT); -+ break; -+ } -+ -+ if (bind(fileno(fp), (struct sockaddr *) & our_query_sin, -+ alen) >= 0 && -+ connect(fileno(fp), (struct sockaddr *) & rmt_query_sin, -+ alen) >= 0) { -+#else - our_query_sin = *our_sin; - our_query_sin.sin_port = htons(ANY_PORT); - rmt_query_sin = *rmt_sin; -@@ -121,6 +174,7 @@ - sizeof(our_query_sin)) >= 0 && - connect(fileno(fp), (struct sockaddr *) & rmt_query_sin, - sizeof(rmt_query_sin)) >= 0) { -+#endif - - /* - * Send query to server. Neglect the risk that a 13-byte -@@ -129,8 +183,13 @@ - */ - - fprintf(fp, "%u,%u\r\n", -+#ifdef INET6 -+ ntohs(((struct sockaddr_in *)rmt_sin)->sin_port), -+ ntohs(((struct sockaddr_in *)our_sin)->sin_port)); -+#else - ntohs(rmt_sin->sin_port), - ntohs(our_sin->sin_port)); -+#endif - fflush(fp); - - /* -@@ -144,8 +203,13 @@ - && ferror(fp) == 0 && feof(fp) == 0 - && sscanf(buffer, "%u , %u : USERID :%*[^:]:%255s", - &rmt_port, &our_port, user) == 3 -+#ifdef INET6 -+ && ntohs(((struct sockaddr_in *)rmt_sin)->sin_port) == rmt_port -+ && ntohs(((struct sockaddr_in *)our_sin)->sin_port) == our_port) { -+#else - && ntohs(rmt_sin->sin_port) == rmt_port - && ntohs(our_sin->sin_port) == our_port) { -+#endif - - /* - * Strip trailing carriage return. It is part of the -diff -ruN tcp_wrappers_7.6.orig/scaffold.c tcp_wrappers_7.6/scaffold.c ---- tcp_wrappers_7.6.orig/scaffold.c 1997-03-21 19:27:24.000000000 +0100 -+++ tcp_wrappers_7.6/scaffold.c 2004-04-10 19:07:43.000000000 +0200 -@@ -25,7 +25,9 @@ - #define INADDR_NONE (-1) /* XXX should be 0xffffffff */ - #endif - -+#ifndef INET6 - extern char *malloc(); -+#endif - - /* Application-specific. */ - -@@ -39,6 +41,7 @@ - int deny_severity = LOG_WARNING; - int rfc931_timeout = RFC931_TIMEOUT; - -+#ifndef INET6 - /* dup_hostent - create hostent in one memory block */ - - static struct hostent *dup_hostent(hp) -@@ -73,9 +76,46 @@ - } - return (&hb->host); - } -+#endif - - /* find_inet_addr - find all addresses for this host, result to free() */ - -+#ifdef INET6 -+struct addrinfo *find_inet_addr(host) -+char *host; -+{ -+ struct addrinfo hints, *res; -+ -+ memset(&hints, 0, sizeof(hints)); -+ hints.ai_family = PF_UNSPEC; -+ hints.ai_socktype = SOCK_STREAM; -+ hints.ai_flags = AI_PASSIVE | AI_NUMERICHOST; -+ if (getaddrinfo(host, NULL, &hints, &res) == 0) -+ return (res); -+ -+ memset(&hints, 0, sizeof(hints)); -+ hints.ai_family = PF_UNSPEC; -+ hints.ai_socktype = SOCK_STREAM; -+ hints.ai_flags = AI_PASSIVE | AI_CANONNAME; -+ if (getaddrinfo(host, NULL, &hints, &res) != 0) { -+ tcpd_warn("%s: host not found", host); -+ return (0); -+ } -+ if (res->ai_family != AF_INET6 && res->ai_family != AF_INET) { -+ tcpd_warn("%d: not an internet host", res->ai_family); -+ freeaddrinfo(res); -+ return (0); -+ } -+ if (!res->ai_canonname) { -+ tcpd_warn("%s: hostname alias", host); -+ tcpd_warn("(cannot obtain official name)", res->ai_canonname); -+ } else if (STR_NE(host, res->ai_canonname)) { -+ tcpd_warn("%s: hostname alias", host); -+ tcpd_warn("(official name: %.*s)", STRING_LENGTH, res->ai_canonname); -+ } -+ return (res); -+} -+#else - struct hostent *find_inet_addr(host) - char *host; - { -@@ -118,6 +158,7 @@ - } - return (dup_hostent(hp)); - } -+#endif - - /* check_dns - give each address thorough workout, return address count */ - -@@ -125,8 +166,13 @@ - char *host; - { - struct request_info request; -+#ifdef INET6 -+ struct sockaddr_storage sin; -+ struct addrinfo *hp, *res; -+#else - struct sockaddr_in sin; - struct hostent *hp; -+#endif - int count; - char *addr; - -@@ -134,11 +180,18 @@ - return (0); - request_init(&request, RQ_CLIENT_SIN, &sin, 0); - sock_methods(&request); -+#ifndef INET6 - memset((char *) &sin, 0, sizeof(sin)); - sin.sin_family = AF_INET; -+#endif - -+#ifdef INET6 -+ for (res = hp, count = 0; res; res = res->ai_next, count++) { -+ memcpy(&sin, res->ai_addr, res->ai_addrlen); -+#else - for (count = 0; (addr = hp->h_addr_list[count]) != 0; count++) { - memcpy((char *) &sin.sin_addr, addr, sizeof(sin.sin_addr)); -+#endif - - /* - * Force host name and address conversions. Use the request structure -@@ -151,7 +204,11 @@ - tcpd_warn("host address %s->name lookup failed", - eval_hostaddr(request.client)); - } -+#ifdef INET6 -+ freeaddrinfo(hp); -+#else - free((char *) hp); -+#endif - return (count); - } - -diff -ruN tcp_wrappers_7.6.orig/scaffold.h tcp_wrappers_7.6/scaffold.h ---- tcp_wrappers_7.6.orig/scaffold.h 1994-12-31 18:19:20.000000000 +0100 -+++ tcp_wrappers_7.6/scaffold.h 2004-04-10 19:07:43.000000000 +0200 -@@ -4,6 +4,10 @@ - * Author: Wietse Venema, Eindhoven University of Technology, The Netherlands. - */ - -+#ifdef INET6 -+extern struct addrinfo *find_inet_addr(); -+#else - extern struct hostent *find_inet_addr(); -+#endif - extern int check_dns(); - extern int check_path(); -diff -ruN tcp_wrappers_7.6.orig/socket.c tcp_wrappers_7.6/socket.c ---- tcp_wrappers_7.6.orig/socket.c 2004-04-10 19:22:58.000000000 +0200 -+++ tcp_wrappers_7.6/socket.c 2004-04-10 19:07:43.000000000 +0200 -@@ -24,13 +24,22 @@ - #include - #include - #include -+#ifdef INT32_T -+typedef uint32_t u_int32_t; -+#endif - #include - #include - #include - #include - #include - -+#ifdef INET6 -+#ifndef NI_WITHSCOPEID -+#define NI_WITHSCOPEID 0 -+#endif -+#else - extern char *inet_ntoa(); -+#endif - - /* Local stuff. */ - -@@ -79,8 +88,13 @@ - void sock_host(request) - struct request_info *request; - { -+#ifdef INET6 -+ static struct sockaddr_storage client; -+ static struct sockaddr_storage server; -+#else - static struct sockaddr_in client; - static struct sockaddr_in server; -+#endif - int len; - char buf[BUFSIZ]; - int fd = request->fd; -@@ -109,7 +123,11 @@ - memset(buf, 0 sizeof(buf)); - #endif - } -+#ifdef INET6 -+ request->client->sin = (struct sockaddr *)&client; -+#else - request->client->sin = &client; -+#endif - - /* - * Determine the server binding. This is used for client username -@@ -122,7 +140,11 @@ - tcpd_warn("getsockname: %m"); - return; - } -+#ifdef INET6 -+ request->server->sin = (struct sockaddr *)&server; -+#else - request->server->sin = &server; -+#endif - } - - /* sock_hostaddr - map endpoint address to printable form */ -@@ -130,10 +152,26 @@ - void sock_hostaddr(host) - struct host_info *host; - { -+#ifdef INET6 -+ struct sockaddr *sin = host->sin; -+ int salen; -+ -+ if (!sin) -+ return; -+#ifdef SIN6_LEN -+ salen = sin->sa_len; -+#else -+ salen = (sin->sa_family == AF_INET) ? sizeof(struct sockaddr_in) -+ : sizeof(struct sockaddr_in6); -+#endif -+ getnameinfo(sin, salen, host->addr, sizeof(host->addr), -+ NULL, 0, NI_NUMERICHOST | NI_WITHSCOPEID); -+#else - struct sockaddr_in *sin = host->sin; - - if (sin != 0) - STRN_CPY(host->addr, inet_ntoa(sin->sin_addr), sizeof(host->addr)); -+#endif - } - - /* sock_hostname - map endpoint address to host name */ -@@ -141,6 +179,160 @@ - void sock_hostname(host) - struct host_info *host; - { -+#ifdef INET6 -+ struct sockaddr *sin = host->sin; -+ struct sockaddr_in sin4; -+ struct addrinfo hints, *res, *res0 = NULL; -+ int salen, alen, err = 1; -+ char *ap = NULL, *rap, hname[NI_MAXHOST]; -+ -+ if (sin != NULL) { -+ if (sin->sa_family == AF_INET6) { -+ struct sockaddr_in6 *sin6 = (struct sockaddr_in6 *)sin; -+ -+ if (IN6_IS_ADDR_V4MAPPED(&sin6->sin6_addr)) { -+ memset(&sin4, 0, sizeof(sin4)); -+#ifdef SIN6_LEN -+ sin4.sin_len = sizeof(sin4); -+#endif -+ sin4.sin_family = AF_INET; -+ sin4.sin_port = sin6->sin6_port; -+ sin4.sin_addr.s_addr = *(u_int32_t *)&sin6->sin6_addr.s6_addr[12]; -+ sin = (struct sockaddr *)&sin4; -+ } -+ } -+ switch (sin->sa_family) { -+ case AF_INET: -+ ap = (char *)&((struct sockaddr_in *)sin)->sin_addr; -+ alen = sizeof(struct in_addr); -+ salen = sizeof(struct sockaddr_in); -+ break; -+ case AF_INET6: -+ ap = (char *)&((struct sockaddr_in6 *)sin)->sin6_addr; -+ alen = sizeof(struct in6_addr); -+ salen = sizeof(struct sockaddr_in6); -+ break; -+ default: -+ break; -+ } -+ if (ap) -+ err = getnameinfo(sin, salen, hname, sizeof(hname), -+ NULL, 0, NI_WITHSCOPEID | NI_NAMEREQD); -+ } -+ if (!err) { -+ -+ STRN_CPY(host->name, hname, sizeof(host->name)); -+ -+ /* reject numeric addresses */ -+ memset(&hints, 0, sizeof(hints)); -+ hints.ai_family = sin->sa_family; -+ hints.ai_socktype = SOCK_STREAM; -+ hints.ai_flags = AI_PASSIVE | AI_CANONNAME | AI_NUMERICHOST; -+ if ((err = getaddrinfo(host->name, NULL, &hints, &res0) == 0)) { -+ freeaddrinfo(res0); -+ res0 = NULL; -+ tcpd_warn("host name/name mismatch: " -+ "reverse lookup results in non-FQDN %s", -+ host->name); -+ strcpy(host->name, paranoid); /* name is bad, clobber it */ -+ } -+ err = !err; -+ } -+ if (!err) { -+ /* we are now sure that this is non-numeric */ -+ -+ /* -+ * Verify that the address is a member of the address list returned -+ * by gethostbyname(hostname). -+ * -+ * Verify also that gethostbyaddr() and gethostbyname() return the same -+ * hostname, or rshd and rlogind may still end up being spoofed. -+ * -+ * On some sites, gethostbyname("localhost") returns "localhost.domain". -+ * This is a DNS artefact. We treat it as a special case. When we -+ * can't believe the address list from gethostbyname("localhost") -+ * we're in big trouble anyway. -+ */ -+ -+ memset(&hints, 0, sizeof(hints)); -+ hints.ai_family = sin->sa_family; -+ hints.ai_socktype = SOCK_STREAM; -+ hints.ai_flags = AI_PASSIVE | AI_CANONNAME; -+ if (getaddrinfo(host->name, NULL, &hints, &res0) != 0) { -+ -+ /* -+ * Unable to verify that the host name matches the address. This -+ * may be a transient problem or a botched name server setup. -+ */ -+ -+ tcpd_warn("can't verify hostname: getaddrinfo(%s, %s) failed", -+ host->name, -+ (sin->sa_family == AF_INET) ? "AF_INET" : "AF_INET6"); -+ -+ } else if ((res0->ai_canonname == NULL -+ || STR_NE(host->name, res0->ai_canonname)) -+ && STR_NE(host->name, "localhost")) { -+ -+ /* -+ * The gethostbyaddr() and gethostbyname() calls did not return -+ * the same hostname. This could be a nameserver configuration -+ * problem. It could also be that someone is trying to spoof us. -+ */ -+ -+ tcpd_warn("host name/name mismatch: %s != %.*s", -+ host->name, STRING_LENGTH, -+ (res0->ai_canonname == NULL) ? "" : res0->ai_canonname); -+ -+ } else { -+ -+ /* -+ * The address should be a member of the address list returned by -+ * gethostbyname(). We should first verify that the h_addrtype -+ * field is AF_INET, but this program has already caused too much -+ * grief on systems with broken library code. -+ */ -+ -+ for (res = res0; res; res = res->ai_next) { -+ if (res->ai_family != sin->sa_family) -+ continue; -+ switch (res->ai_family) { -+ case AF_INET: -+ rap = (char *)&((struct sockaddr_in *)res->ai_addr)->sin_addr; -+ break; -+ case AF_INET6: -+ /* need to check scope_id */ -+ if (((struct sockaddr_in6 *)sin)->sin6_scope_id != -+ ((struct sockaddr_in6 *)res->ai_addr)->sin6_scope_id) { -+ continue; -+ } -+ rap = (char *)&((struct sockaddr_in6 *)res->ai_addr)->sin6_addr; -+ break; -+ default: -+ continue; -+ } -+ if (memcmp(rap, ap, alen) == 0) { -+ freeaddrinfo(res0); -+ return; /* name is good, keep it */ -+ } -+ } -+ -+ /* -+ * The host name does not map to the initial address. Perhaps -+ * someone has messed up. Perhaps someone compromised a name -+ * server. -+ */ -+ -+ getnameinfo(sin, salen, hname, sizeof(hname), -+ NULL, 0, NI_NUMERICHOST | NI_WITHSCOPEID); -+ tcpd_warn("host name/address mismatch: %s != %.*s", -+ hname, STRING_LENGTH, -+ (res0->ai_canonname == NULL) ? "" : res0->ai_canonname); -+ } -+ strcpy(host->name, paranoid); /* name is bad, clobber it */ -+ if (res0) -+ freeaddrinfo(res0); -+ } -+#else /* INET6 */ - struct sockaddr_in *sin = host->sin; - struct hostent *hp; - int i; -@@ -220,6 +412,7 @@ - } - strcpy(host->name, paranoid); /* name is bad, clobber it */ - } -+#endif /* INET6 */ - } - - /* sock_sink - absorb unreceived IP datagram */ -@@ -228,7 +421,11 @@ - int fd; - { - char buf[BUFSIZ]; -+#ifdef INET6 -+ struct sockaddr_storage sin; -+#else - struct sockaddr_in sin; -+#endif - int size = sizeof(sin); - - /* -diff -ruN tcp_wrappers_7.6.orig/tcpd.c tcp_wrappers_7.6/tcpd.c ---- tcp_wrappers_7.6.orig/tcpd.c 1996-02-11 17:01:33.000000000 +0100 -+++ tcp_wrappers_7.6/tcpd.c 2004-04-10 19:07:43.000000000 +0200 -@@ -120,7 +120,12 @@ - - /* Report request and invoke the real daemon program. */ - -+#ifdef INET6 -+ syslog(allow_severity, "connect from %s (%s)", -+ eval_client(&request), eval_hostaddr(request.client)); -+#else - syslog(allow_severity, "connect from %s", eval_client(&request)); -+#endif - closelog(); - (void) execv(path, argv); - syslog(LOG_ERR, "error: cannot execute %s: %m", path); -diff -ruN tcp_wrappers_7.6.orig/tcpdchk.c tcp_wrappers_7.6/tcpdchk.c ---- tcp_wrappers_7.6.orig/tcpdchk.c 1997-02-12 02:13:25.000000000 +0100 -+++ tcp_wrappers_7.6/tcpdchk.c 2004-04-10 19:07:43.000000000 +0200 -@@ -22,6 +22,9 @@ - - #include - #include -+#ifdef INET6 -+#include -+#endif - #include - #include - #include -@@ -397,6 +400,31 @@ - } - } - -+#ifdef INET6 -+static int is_inet6_addr(pat) -+ char *pat; -+{ -+ struct addrinfo hints, *res; -+ int len, ret; -+ char ch; -+ -+ if (*pat != '[') -+ return (0); -+ len = strlen(pat); -+ if ((ch = pat[len - 1]) != ']') -+ return (0); -+ pat[len - 1] = '\0'; -+ memset(&hints, 0, sizeof(hints)); -+ hints.ai_family = AF_INET6; -+ hints.ai_socktype = SOCK_STREAM; -+ hints.ai_flags = AI_PASSIVE | AI_NUMERICHOST; -+ if ((ret = getaddrinfo(pat + 1, NULL, &hints, &res)) == 0) -+ freeaddrinfo(res); -+ pat[len - 1] = ch; -+ return (ret == 0); -+} -+#endif -+ - /* check_host - criticize host pattern */ - - static int check_host(pat) -@@ -423,14 +451,27 @@ - #endif - #endif - } else if (mask = split_at(pat, '/')) { /* network/netmask */ -+#ifdef INET6 -+ int mask_len; -+ -+ if ((dot_quad_addr(pat) == INADDR_NONE -+ || dot_quad_addr(mask) == INADDR_NONE) -+ && (!is_inet6_addr(pat) -+ || ((mask_len = atoi(mask)) < 0 || mask_len > 128))) -+#else - if (dot_quad_addr(pat) == INADDR_NONE - || dot_quad_addr(mask) == INADDR_NONE) -+#endif - tcpd_warn("%s/%s: bad net/mask pattern", pat, mask); - } else if (STR_EQ(pat, "FAIL")) { /* obsolete */ - tcpd_warn("FAIL is no longer recognized"); - tcpd_warn("(use EXCEPT or DENY instead)"); - } else if (reserved_name(pat)) { /* other reserved */ - /* void */ ; -+#ifdef INET6 -+ } else if (is_inet6_addr(pat)) { /* IPv6 address */ -+ addr_count = 1; -+#endif - } else if (NOT_INADDR(pat)) { /* internet name */ - if (pat[strlen(pat) - 1] == '.') { - tcpd_warn("%s: domain or host name ends in dot", pat); -diff -ruN tcp_wrappers_7.6.orig/tcpd.h tcp_wrappers_7.6/tcpd.h ---- tcp_wrappers_7.6.orig/tcpd.h 1996-03-19 16:22:25.000000000 +0100 -+++ tcp_wrappers_7.6/tcpd.h 2004-04-10 19:07:43.000000000 +0200 -@@ -11,7 +11,11 @@ - struct host_info { - char name[STRING_LENGTH]; /* access via eval_hostname(host) */ - char addr[STRING_LENGTH]; /* access via eval_hostaddr(host) */ -+#ifdef INET6 -+ struct sockaddr *sin; /* socket address or 0 */ -+#else - struct sockaddr_in *sin; /* socket address or 0 */ -+#endif - struct t_unitdata *unit; /* TLI transport address or 0 */ - struct request_info *request; /* for shared information */ - }; -diff -ruN tcp_wrappers_7.6.orig/tcpdmatch.c tcp_wrappers_7.6/tcpdmatch.c ---- tcp_wrappers_7.6.orig/tcpdmatch.c 1996-02-11 17:01:36.000000000 +0100 -+++ tcp_wrappers_7.6/tcpdmatch.c 2004-04-10 19:07:43.000000000 +0200 -@@ -57,7 +57,11 @@ - int argc; - char **argv; - { -+#ifdef INET6 -+ struct addrinfo hints, *hp, *res; -+#else - struct hostent *hp; -+#endif - char *myname = argv[0]; - char *client; - char *server; -@@ -68,8 +72,13 @@ - int ch; - char *inetcf = 0; - int count; -+#ifdef INET6 -+ struct sockaddr_storage server_sin; -+ struct sockaddr_storage client_sin; -+#else - struct sockaddr_in server_sin; - struct sockaddr_in client_sin; -+#endif - struct stat st; - - /* -@@ -172,13 +181,20 @@ - if (NOT_INADDR(server) == 0 || HOSTNAME_KNOWN(server)) { - if ((hp = find_inet_addr(server)) == 0) - exit(1); -+#ifndef INET6 - memset((char *) &server_sin, 0, sizeof(server_sin)); - server_sin.sin_family = AF_INET; -+#endif - request_set(&request, RQ_SERVER_SIN, &server_sin, 0); - -+#ifdef INET6 -+ for (res = hp, count = 0; res; res = res->ai_next, count++) { -+ memcpy(&server_sin, res->ai_addr, res->ai_addrlen); -+#else - for (count = 0; (addr = hp->h_addr_list[count]) != 0; count++) { - memcpy((char *) &server_sin.sin_addr, addr, - sizeof(server_sin.sin_addr)); -+#endif - - /* - * Force evaluation of server host name and address. Host name -@@ -194,7 +210,11 @@ - fprintf(stderr, "Please specify an address instead\n"); - exit(1); - } -+#ifdef INET6 -+ freeaddrinfo(hp); -+#else - free((char *) hp); -+#endif - } else { - request_set(&request, RQ_SERVER_NAME, server, 0); - } -@@ -208,6 +228,18 @@ - tcpdmatch(&request); - exit(0); - } -+#ifdef INET6 -+ memset(&hints, 0, sizeof(hints)); -+ hints.ai_family = AF_INET6; -+ hints.ai_socktype = SOCK_STREAM; -+ hints.ai_flags = AI_PASSIVE | AI_NUMERICHOST; -+ if (getaddrinfo(client, NULL, &hints, &res) == 0) { -+ freeaddrinfo(res); -+ request_set(&request, RQ_CLIENT_ADDR, client, 0); -+ tcpdmatch(&request); -+ exit(0); -+ } -+#endif - - /* - * Perhaps they are testing special client hostname patterns that aren't -@@ -229,6 +261,34 @@ - */ - if ((hp = find_inet_addr(client)) == 0) - exit(1); -+#ifdef INET6 -+ request_set(&request, RQ_CLIENT_SIN, &client_sin, 0); -+ -+ for (res = hp, count = 0; res; res = res->ai_next, count++) { -+ memcpy(&client_sin, res->ai_addr, res->ai_addrlen); -+ -+ /* -+ * getnameinfo() doesn't do reverse lookup against link-local -+ * address. So, we pass through host name evaluation against -+ * such addresses. -+ */ -+ if (res->ai_family != AF_INET6 || -+ !IN6_IS_ADDR_LINKLOCAL(&((struct sockaddr_in6 *)res->ai_addr)->sin6_addr)) { -+ /* -+ * Force evaluation of client host name and address. Host name -+ * conflicts will be reported while eval_hostname() does its job. -+ */ -+ request_set(&request, RQ_CLIENT_NAME, "", RQ_CLIENT_ADDR, "", 0); -+ if (STR_EQ(eval_hostname(request.client), unknown)) -+ tcpd_warn("host address %s->name lookup failed", -+ eval_hostaddr(request.client)); -+ } -+ tcpdmatch(&request); -+ if (res->ai_next) -+ printf("\n"); -+ } -+ freeaddrinfo(hp); -+#else - memset((char *) &client_sin, 0, sizeof(client_sin)); - client_sin.sin_family = AF_INET; - request_set(&request, RQ_CLIENT_SIN, &client_sin, 0); -@@ -250,6 +310,7 @@ - printf("\n"); - } - free((char *) hp); -+#endif - exit(0); - } - -diff -ruN tcp_wrappers_7.6.orig/tli.c tcp_wrappers_7.6/tli.c ---- tcp_wrappers_7.6.orig/tli.c 1997-03-21 19:27:26.000000000 +0100 -+++ tcp_wrappers_7.6/tli.c 2004-04-10 19:07:43.000000000 +0200 -@@ -65,8 +65,13 @@ - void tli_host(request) - struct request_info *request; - { -+#ifdef INET6 -+ static struct sockaddr_storage client; -+ static struct sockaddr_storage server; -+#else - static struct sockaddr_in client; - static struct sockaddr_in server; -+#endif - - /* - * If we discover that we are using an IP transport, pretend we never -@@ -76,14 +81,29 @@ - - tli_endpoints(request); - if ((request->config = tli_transport(request->fd)) != 0 -+#ifdef INET6 -+ && (STR_EQ(request->config->nc_protofmly, "inet") || -+ STR_EQ(request->config->nc_protofmly, "inet6"))) { -+#else - && STR_EQ(request->config->nc_protofmly, "inet")) { -+#endif - if (request->client->unit != 0) { -+#ifdef INET6 -+ client = *(struct sockaddr_storage *) request->client->unit->addr.buf; -+ request->client->sin = (struct sockaddr *) &client; -+#else - client = *(struct sockaddr_in *) request->client->unit->addr.buf; - request->client->sin = &client; -+#endif - } - if (request->server->unit != 0) { -+#ifdef INET6 -+ server = *(struct sockaddr_storage *) request->server->unit->addr.buf; -+ request->server->sin = (struct sockaddr *) &server; -+#else - server = *(struct sockaddr_in *) request->server->unit->addr.buf; - request->server->sin = &server; -+#endif - } - tli_cleanup(request); - sock_methods(request); -@@ -187,7 +207,15 @@ - } - while (config = getnetconfig(handlep)) { - if (stat(config->nc_device, &from_config) == 0) { -+#ifdef NO_CLONE_DEVICE -+ /* -+ * If the network devices are not cloned (as is the case for -+ * Solaris 8 Beta), we must compare the major device numbers. -+ */ -+ if (major(from_config.st_rdev) == major(from_client.st_rdev)) -+#else - if (minor(from_config.st_rdev) == major(from_client.st_rdev)) -+#endif - break; - } - } -diff -ruN tcp_wrappers_7.6.orig/update.c tcp_wrappers_7.6/update.c ---- tcp_wrappers_7.6.orig/update.c 1994-12-28 17:42:56.000000000 +0100 -+++ tcp_wrappers_7.6/update.c 2004-04-10 19:07:43.000000000 +0200 -@@ -46,10 +46,18 @@ - request->fd = va_arg(ap, int); - continue; - case RQ_CLIENT_SIN: -+#ifdef INET6 -+ request->client->sin = va_arg(ap, struct sockaddr *); -+#else - request->client->sin = va_arg(ap, struct sockaddr_in *); -+#endif - continue; - case RQ_SERVER_SIN: -+#ifdef INET6 -+ request->server->sin = va_arg(ap, struct sockaddr *); -+#else - request->server->sin = va_arg(ap, struct sockaddr_in *); -+#endif - continue; - - /* -diff -ruN tcp_wrappers_7.6.orig/workarounds.c tcp_wrappers_7.6/workarounds.c ---- tcp_wrappers_7.6.orig/workarounds.c 1996-03-19 16:22:26.000000000 +0100 -+++ tcp_wrappers_7.6/workarounds.c 2004-04-10 19:07:43.000000000 +0200 -@@ -166,11 +166,22 @@ - int *len; - { - int ret; -+#ifdef INET6 -+ struct sockaddr *sin = sa; -+#else - struct sockaddr_in *sin = (struct sockaddr_in *) sa; -+#endif - - if ((ret = getpeername(sock, sa, len)) >= 0 -+#ifdef INET6 -+ && ((sin->su_si.si_family == AF_INET6 -+ && IN6_IS_ADDR_UNSPECIFIED(&sin->su_sin6.sin6_addr)) -+ || (sin->su_si.si_family == AF_INET -+ && sin->su_sin.sin_addr.s_addr == 0))) { -+#else - && sa->sa_family == AF_INET - && sin->sin_addr.s_addr == 0) { -+#endif - errno = ENOTCONN; - return (-1); - } else { diff --git a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/11_tcpd_blacklist.patch b/meta/packages/tcp-wrappers/tcp-wrappers-7.6/11_tcpd_blacklist.patch deleted file mode 100644 index 0238e35208..0000000000 --- a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/11_tcpd_blacklist.patch +++ /dev/null @@ -1,151 +0,0 @@ -Path: news.porcupine.org!news.porcupine.org!not-for-mail -From: Wietse Venema -Newsgroups: comp.mail.sendmail,comp.security.unix -Subject: TCP Wrapper Blacklist Extension -Followup-To: poster -Date: 8 Sep 1997 18:53:13 -0400 -Organization: Wietse's hangout while on sabattical in the USA -Lines: 147 -Sender: wietse@spike.porcupine.org -Message-ID: <5v1vkp$h4f$1@spike.porcupine.org> -NNTP-Posting-Host: spike.porcupine.org -Xref: news.porcupine.org comp.mail.sendmail:3541 comp.security.unix:7158 - -The patch below adds a new host pattern to the TCP Wrapper access -control language. Instead of a host name or address pattern, you -can specify an external /file/name with host name or address -patterns. The feature can be used recursively. - -The /file/name extension makes it easy to blacklist bad sites, for -example, to block unwanted electronic mail when libwrap is linked -into sendmail. Adding hosts to a simple text file is much easier -than having to edit a more complex hosts.allow/deny file. - -I developed this a year or so ago as a substitute for NIS netgroups. -At that time, I did not consider it of sufficient interest for -inclusion in the TCP Wrapper distribution. How times have changed. - -The patch is relative to TCP Wrappers version 7.6. The main archive -site is ftp://ftp.win.tue.nl/pub/security/tcp_wrappers_7.6.tar.gz - -Thanks to the Debian LINUX folks for expressing their interest in -this patch. - - Wietse - - -[diff updated by Md] - -diff -ruN tcp_wrappers_7.6.orig/hosts_access.5 tcp_wrappers_7.6/hosts_access.5 ---- tcp_wrappers_7.6.orig/hosts_access.5 2004-04-10 19:28:09.000000000 +0200 -+++ tcp_wrappers_7.6/hosts_access.5 2004-04-10 19:28:01.000000000 +0200 -@@ -97,6 +97,13 @@ - `[3ffe:505:2:1::]/64\' matches every address in the range - `3ffe:505:2:1::\' through `3ffe:505:2:1:ffff:ffff:ffff:ffff\'. - .IP \(bu -+A string that begins with a `/\' character is treated as a file -+name. A host name or address is matched if it matches any host name -+or address pattern listed in the named file. The file format is -+zero or more lines with zero or more host name or address patterns -+separated by whitespace. A file name pattern can be used anywhere -+a host name or address pattern can be used. -+.IP \(bu - Wildcards `*\' and `?\' can be used to match hostnames or IP addresses. This - method of matching cannot be used in conjunction with `net/mask\' matching, - hostname matching beginning with `.\' or IP address matching ending with `.\'. -diff -ruN tcp_wrappers_7.6.orig/hosts_access.c tcp_wrappers_7.6/hosts_access.c ---- tcp_wrappers_7.6.orig/hosts_access.c 2004-04-10 19:28:09.000000000 +0200 -+++ tcp_wrappers_7.6/hosts_access.c 2004-04-10 19:27:05.000000000 +0200 -@@ -253,6 +253,26 @@ - } - } - -+/* hostfile_match - look up host patterns from file */ -+ -+static int hostfile_match(path, host) -+char *path; -+struct hosts_info *host; -+{ -+ char tok[BUFSIZ]; -+ int match = NO; -+ FILE *fp; -+ -+ if ((fp = fopen(path, "r")) != 0) { -+ while (fscanf(fp, "%s", tok) == 1 && !(match = host_match(tok, host))) -+ /* void */ ; -+ fclose(fp); -+ } else if (errno != ENOENT) { -+ tcpd_warn("open %s: %m", path); -+ } -+ return (match); -+} -+ - /* host_match - match host name and/or address against pattern */ - - static int host_match(tok, host) -@@ -280,6 +300,8 @@ - tcpd_warn("netgroup support is disabled"); /* not tcpd_jump() */ - return (NO); - #endif -+ } else if (tok[0] == '/') { /* /file hack */ -+ return (hostfile_match(tok, host)); - } else if (STR_EQ(tok, "KNOWN")) { /* check address and name */ - char *name = eval_hostname(host); - return (STR_NE(eval_hostaddr(host), unknown) && HOSTNAME_KNOWN(name)); -diff -ruN tcp_wrappers_7.6.orig/tcpdchk.c tcp_wrappers_7.6/tcpdchk.c ---- tcp_wrappers_7.6.orig/tcpdchk.c 2004-04-10 19:28:09.000000000 +0200 -+++ tcp_wrappers_7.6/tcpdchk.c 2004-04-10 19:27:05.000000000 +0200 -@@ -353,6 +353,8 @@ - { - if (pat[0] == '@') { - tcpd_warn("%s: daemon name begins with \"@\"", pat); -+ } else if (pat[0] == '/') { -+ tcpd_warn("%s: daemon name begins with \"/\"", pat); - } else if (pat[0] == '.') { - tcpd_warn("%s: daemon name begins with dot", pat); - } else if (pat[strlen(pat) - 1] == '.') { -@@ -385,6 +387,8 @@ - { - if (pat[0] == '@') { /* @netgroup */ - tcpd_warn("%s: user name begins with \"@\"", pat); -+ } else if (pat[0] == '/') { -+ tcpd_warn("%s: user name begins with \"/\"", pat); - } else if (pat[0] == '.') { - tcpd_warn("%s: user name begins with dot", pat); - } else if (pat[strlen(pat) - 1] == '.') { -@@ -430,8 +434,13 @@ - static int check_host(pat) - char *pat; - { -+ char buf[BUFSIZ]; - char *mask; - int addr_count = 1; -+ FILE *fp; -+ struct tcpd_context saved_context; -+ char *cp; -+ char *wsp = " \t\r\n"; - - if (pat[0] == '@') { /* @netgroup */ - #ifdef NO_NETGRENT -@@ -450,6 +459,21 @@ - tcpd_warn("netgroup support disabled"); - #endif - #endif -+ } else if (pat[0] == '/') { /* /path/name */ -+ if ((fp = fopen(pat, "r")) != 0) { -+ saved_context = tcpd_context; -+ tcpd_context.file = pat; -+ tcpd_context.line = 0; -+ while (fgets(buf, sizeof(buf), fp)) { -+ tcpd_context.line++; -+ for (cp = strtok(buf, wsp); cp; cp = strtok((char *) 0, wsp)) -+ check_host(cp); -+ } -+ tcpd_context = saved_context; -+ fclose(fp); -+ } else if (errno != ENOENT) { -+ tcpd_warn("open %s: %m", pat); -+ } - } else if (mask = split_at(pat, '/')) { /* network/netmask */ - #ifdef INET6 - int mask_len; diff --git a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/11_usagi_fix.patch b/meta/packages/tcp-wrappers/tcp-wrappers-7.6/11_usagi_fix.patch deleted file mode 100644 index 88a2b5e43b..0000000000 --- a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/11_usagi_fix.patch +++ /dev/null @@ -1,45 +0,0 @@ -diff -uN tcp_wrappers_7.6/hosts_access.c tcp_wrappers_7.6.new/hosts_access.c ---- tcp_wrappers_7.6/hosts_access.c Mon May 20 14:00:56 2002 -+++ tcp_wrappers_7.6.new/hosts_access.c Mon May 20 14:25:05 2002 -@@ -448,6 +448,15 @@ - int len, mask_len, i = 0; - char ch; - -+ /* -+ * Behavior of getaddrinfo() against IPv4-mapped IPv6 address is -+ * different between KAME and Solaris8. While KAME returns -+ * AF_INET6, Solaris8 returns AF_INET. So, we avoid this here. -+ */ -+ if (STRN_EQ(string, "::ffff:", 7) -+ && dot_quad_addr(string + 7) != INADDR_NONE) -+ return (masked_match4(net_tok, mask_tok, string + 7)); -+ - memset(&hints, 0, sizeof(hints)); - hints.ai_family = AF_INET6; - hints.ai_socktype = SOCK_STREAM; -@@ -457,13 +466,6 @@ - memcpy(&addr, res->ai_addr, sizeof(addr)); - freeaddrinfo(res); - -- if (IN6_IS_ADDR_V4MAPPED(&addr.sin6_addr)) { -- if ((*(u_int32_t *)&net.sin6_addr.s6_addr[12] = dot_quad_addr(net_tok)) == INADDR_NONE -- || (mask = dot_quad_addr(mask_tok)) == INADDR_NONE) -- return (NO); -- return ((*(u_int32_t *)&addr.sin6_addr.s6_addr[12] & mask) == *(u_int32_t *)&net.sin6_addr.s6_addr[12]); -- } -- - /* match IPv6 address against netnumber/prefixlen */ - len = strlen(net_tok); - if (*net_tok != '[' || net_tok[len - 1] != ']') -diff -uN tcp_wrappers_7.6/socket.c tcp_wrappers_7.6.new/socket.c ---- tcp_wrappers_7.6/socket.c Mon May 20 13:48:35 2002 -+++ tcp_wrappers_7.6.new/socket.c Mon May 20 14:22:27 2002 -@@ -228,7 +228,7 @@ - hints.ai_family = sin->sa_family; - hints.ai_socktype = SOCK_STREAM; - hints.ai_flags = AI_PASSIVE | AI_CANONNAME | AI_NUMERICHOST; -- if ((err = getaddrinfo(host->name, NULL, &hints, &res0) == 0)) { -+ if ((err = getaddrinfo(host->name, NULL, &hints, &res0)) == 0) { - freeaddrinfo(res0); - res0 = NULL; - tcpd_warn("host name/name mismatch: " diff --git a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/12_makefile_config.patch b/meta/packages/tcp-wrappers/tcp-wrappers-7.6/12_makefile_config.patch deleted file mode 100644 index 60ca594bee..0000000000 --- a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/12_makefile_config.patch +++ /dev/null @@ -1,81 +0,0 @@ -diff -ruN tcp_wrappers_7.6.orig/Makefile tcp_wrappers_7.6/Makefile ---- tcp_wrappers_7.6.orig/Makefile 2003-08-21 01:43:39.000000000 +0200 -+++ tcp_wrappers_7.6/Makefile 2003-08-21 01:43:35.000000000 +0200 -@@ -45,7 +45,7 @@ - # - # SysV.4 Solaris 2.x OSF AIX - #REAL_DAEMON_DIR=/usr/sbin --# -+REAL_DAEMON_DIR=/usr/sbin - # BSD 4.4 - #REAL_DAEMON_DIR=/usr/libexec - # -@@ -512,6 +519,7 @@ - # (examples: allow, deny, banners, twist and spawn). - # - #STYLE = -DPROCESS_OPTIONS # Enable language extensions. -+STYLE = -DPROCESS_OPTIONS - - ################################################################ - # Optional: Changing the default disposition of logfile records -@@ -535,6 +543,7 @@ - # The LOG_XXX names below are taken from the /usr/include/syslog.h file. - - FACILITY= LOG_MAIL # LOG_MAIL is what most sendmail daemons use -+FACILITY= LOG_DAEMON - - # The syslog priority at which successful connections are logged. - -@@ -631,6 +640,7 @@ - # lookups altogether, see the next section. - - PARANOID= -DPARANOID -+PARANOID= - - ######################################## - # Optional: turning off hostname lookups -@@ -644,6 +654,7 @@ - # mode (see previous section) and comment out the following definition. - - HOSTNAME= -DALWAYS_HOSTNAME -+HOSTNAME= - - ############################################# - # Optional: Turning on host ADDRESS checking -@@ -670,6 +681,7 @@ - # Solaris 2.x, and Linux. See your system documentation for details. - # - # KILL_OPT= -DKILL_IP_OPTIONS -+KILL_OPT= -DKILL_IP_OPTIONS - - ## End configuration options - ############################ -@@ -677,9 +689,10 @@ - # Protection against weird shells or weird make programs. - - SHELL = /bin/sh --.c.o:; $(CC) $(CFLAGS) -c $*.c -+.c.o:; $(CC) $(CFLAGS) -o $*.o -c $*.c - --CFLAGS = -O -DFACILITY=$(FACILITY) $(ACCESS) $(PARANOID) $(NETGROUP) \ -+COPTS = -O2 -g -+CFLAGS = $(COPTS) -DFACILITY=$(FACILITY) $(ACCESS) $(PARANOID) $(NETGROUP) \ - $(BUGS) $(SYSTYPE) $(AUTH) $(UMASK) \ - -DREAL_DAEMON_DIR=\"$(REAL_DAEMON_DIR)\" $(STYLE) $(KILL_OPT) \ - -DSEVERITY=$(SEVERITY) -DRFC931_TIMEOUT=$(RFC931_TIMEOUT) \ -@@ -712,10 +725,11 @@ - - config-check: - @set +e; test -n "$(REAL_DAEMON_DIR)" || { make; exit 1; } -- @set +e; echo $(CFLAGS) >/tmp/cflags.$$$$ ; \ -- if cmp cflags /tmp/cflags.$$$$ ; \ -- then rm /tmp/cflags.$$$$ ; \ -- else mv /tmp/cflags.$$$$ cflags ; \ -+ @set +e; echo $(CFLAGS) >cflags.new ; \ -+ if cmp cflags cflags.new ; \ -+ then rm cflags.new ; \ -+ else mv cflags.new cflags ; \ - fi >/dev/null 2>/dev/null -+ @if [ ! -d shared ]; then mkdir shared; fi - - $(LIB): $(LIB_OBJ) diff --git a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/13_shlib_weaksym.patch b/meta/packages/tcp-wrappers/tcp-wrappers-7.6/13_shlib_weaksym.patch deleted file mode 100644 index c089b33257..0000000000 --- a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/13_shlib_weaksym.patch +++ /dev/null @@ -1,253 +0,0 @@ -diff -ruN tcp_wrappers_7.6.orig/Makefile tcp_wrappers_7.6/Makefile ---- tcp_wrappers_7.6.orig/Makefile 2004-05-02 15:37:59.000000000 +0200 -+++ tcp_wrappers_7.6/Makefile 2004-05-02 15:31:09.000000000 +0200 -@@ -150,15 +150,15 @@ - - linux: - @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ -- LIBS=-lnsl RANLIB=ranlib ARFLAGS=rv AUX_OBJ= \ -+ LIBS=-lnsl RANLIB=ranlib ARFLAGS=rv AUX_OBJ=weak_symbols.o \ - NETGROUP="-DNETGROUP" TLI= VSYSLOG= BUGS= \ -- EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DHAVE_STRERROR -DINET6=1 -Dss_family=__ss_family -Dss_len=__ss_len" all -+ EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DHAVE_STRERROR -DHAVE_WEAKSYMS -D_REENTRANT -DINET6=1 -Dss_family=__ss_family -Dss_len=__ss_len" all - - gnu: - @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ -- LIBS=-lnsl RANLIB=ranlib ARFLAGS=rv AUX_OBJ= \ -+ LIBS=-lnsl RANLIB=ranlib ARFLAGS=rv AUX_OBJ=weak_symbols.o \ - NETGROUP=-DNETGROUP TLI= VSYSLOG= BUGS= \ -- EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DHAVE_STRERROR" all -+ EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DHAVE_STRERROR -DHAVE_WEAKSYMS -D_REENTRANT" all - - # This is good for many SYSV+BSD hybrids with NIS, probably also for HP-UX 7.x. - hpux hpux8 hpux9 hpux10: -@@ -713,7 +713,22 @@ - - LIB = libwrap.a - --all other: config-check tcpd tcpdmatch try-from safe_finger tcpdchk -+shared/%.o: %.c -+ $(CC) $(CFLAGS) $(SHCFLAGS) -c $< -o $@ -+ -+SOMAJOR = 0 -+SOMINOR = 7.6 -+ -+SHLIB = shared/libwrap.so.$(SOMAJOR).$(SOMINOR) -+SHLIBSOMAJ = shared/libwrap.so.$(SOMAJOR) -+SHLIBSO = shared/libwrap.so -+SHLIBFLAGS = -Lshared -lwrap -+ -+SHLINKFLAGS = -shared -Xlinker -soname -Xlinker libwrap.so.$(SOMAJOR) -lc $(LIBS) -+SHCFLAGS = -fPIC -shared -D_REENTRANT -+SHLIB_OBJ= $(addprefix shared/, $(LIB_OBJ)); -+ -+all other: config-check tcpd tcpdmatch try-from safe_finger tcpdchk $(LIB) - - # Invalidate all object files when the compiler options (CFLAGS) have changed. - -@@ -731,27 +746,33 @@ - $(AR) $(ARFLAGS) $(LIB) $(LIB_OBJ) - -$(RANLIB) $(LIB) - --tcpd: tcpd.o $(LIB) -- $(CC) $(CFLAGS) -o $@ tcpd.o $(LIB) $(LIBS) -+$(SHLIB): $(SHLIB_OBJ) -+ rm -f $(SHLIB) -+ $(CC) -o $(SHLIB) $(SHLINKFLAGS) $(SHLIB_OBJ) -+ ln -sf $(notdir $(SHLIB)) $(SHLIBSOMAJ) -+ ln -sf $(notdir $(SHLIBSOMAJ)) $(SHLIBSO) -+ -+tcpd: tcpd.o $(SHLIB) -+ $(CC) $(CFLAGS) -o $@ tcpd.o $(SHLIBFLAGS) - - miscd: miscd.o $(LIB) - $(CC) $(CFLAGS) -o $@ miscd.o $(LIB) $(LIBS) - --safe_finger: safe_finger.o $(LIB) -- $(CC) $(CFLAGS) -o $@ safe_finger.o $(LIB) $(LIBS) -+safe_finger: safe_finger.o $(SHLIB) -+ $(CC) $(CFLAGS) -o $@ safe_finger.o $(SHLIBFLAGS) - - TCPDMATCH_OBJ = tcpdmatch.o fakelog.o inetcf.o scaffold.o - --tcpdmatch: $(TCPDMATCH_OBJ) $(LIB) -- $(CC) $(CFLAGS) -o $@ $(TCPDMATCH_OBJ) $(LIB) $(LIBS) -+tcpdmatch: $(TCPDMATCH_OBJ) $(SHLIB) -+ $(CC) $(CFLAGS) -o $@ $(TCPDMATCH_OBJ) $(SHLIBFLAGS) - --try-from: try-from.o fakelog.o $(LIB) -- $(CC) $(CFLAGS) -o $@ try-from.o fakelog.o $(LIB) $(LIBS) -+try-from: try-from.o fakelog.o $(SHLIB) -+ $(CC) $(CFLAGS) -o $@ try-from.o fakelog.o $(SHLIBFLAGS) - - TCPDCHK_OBJ = tcpdchk.o fakelog.o inetcf.o scaffold.o - --tcpdchk: $(TCPDCHK_OBJ) $(LIB) -- $(CC) $(CFLAGS) -o $@ $(TCPDCHK_OBJ) $(LIB) $(LIBS) -+tcpdchk: $(TCPDCHK_OBJ) $(SHLIB) -+ $(CC) $(CFLAGS) -o $@ $(TCPDCHK_OBJ) $(SHLIBFLAGS) - - shar: $(KIT) - @shar $(KIT) -@@ -767,7 +788,9 @@ - - clean: - rm -f tcpd miscd safe_finger tcpdmatch tcpdchk try-from *.[oa] core \ -+ libwrap*.so* \ - cflags -+ rm -rf shared/ - - tidy: clean - chmod -R a+r . -@@ -913,5 +936,6 @@ - update.o: mystdarg.h - update.o: tcpd.h - vfprintf.o: cflags -+weak_symbols.o: tcpd.h - workarounds.o: cflags - workarounds.o: tcpd.h -diff -ruN tcp_wrappers_7.6.orig/tcpd.h tcp_wrappers_7.6/tcpd.h ---- tcp_wrappers_7.6.orig/tcpd.h 2004-05-02 15:37:59.000000000 +0200 -+++ tcp_wrappers_7.6/tcpd.h 2004-05-02 15:37:49.000000000 +0200 -@@ -4,6 +4,15 @@ - * Author: Wietse Venema, Eindhoven University of Technology, The Netherlands. - */ - -+#ifndef _TCPWRAPPERS_TCPD_H -+#define _TCPWRAPPERS_TCPD_H -+ -+/* Need definitions of struct sockaddr_in and FILE. */ -+#include -+#include -+ -+__BEGIN_DECLS -+ - /* Structure to describe one communications endpoint. */ - - #define STRING_LENGTH 128 /* hosts, users, processes */ -@@ -29,10 +38,10 @@ - char pid[10]; /* access via eval_pid(request) */ - struct host_info client[1]; /* client endpoint info */ - struct host_info server[1]; /* server endpoint info */ -- void (*sink) (); /* datagram sink function or 0 */ -- void (*hostname) (); /* address to printable hostname */ -- void (*hostaddr) (); /* address to printable address */ -- void (*cleanup) (); /* cleanup function or 0 */ -+ void (*sink) (int); /* datagram sink function or 0 */ -+ void (*hostname) (struct host_info *); /* address to printable hostname */ -+ void (*hostaddr) (struct host_info *); /* address to printable address */ -+ void (*cleanup) (struct request_info *); /* cleanup function or 0 */ - struct netconfig *config; /* netdir handle */ - }; - -@@ -70,20 +79,27 @@ - #define fromhost sock_host /* no TLI support needed */ - #endif - --extern int hosts_access(); /* access control */ --extern void shell_cmd(); /* execute shell command */ --extern char *percent_x(); /* do % expansion */ --extern void rfc931(); /* client name from RFC 931 daemon */ --extern void clean_exit(); /* clean up and exit */ --extern void refuse(); /* clean up and exit */ --extern char *xgets(); /* fgets() on steroids */ --extern char *split_at(); /* strchr() and split */ --extern unsigned long dot_quad_addr(); /* restricted inet_addr() */ -+extern int hosts_access(struct request_info *request); /* access control */ -+extern void shell_cmd(char *); /* execute shell command */ -+extern char *percent_x(char *, int, char *, struct request_info *); -+ /* do % expansion */ -+extern void rfc931(struct sockaddr *, struct sockaddr *, char *); -+ /* client name from RFC 931 daemon */ -+extern void clean_exit(struct request_info *); /* clean up and exit */ -+extern void refuse(struct request_info *); /* clean up and exit */ -+extern char *xgets(char *, int, FILE *); /* fgets() on steroids */ -+extern char *split_at(char *, int); /* strchr() and split */ -+extern unsigned long dot_quad_addr(char *); /* restricted inet_addr() */ - - /* Global variables. */ - -+#ifdef HAVE_WEAKSYMS -+extern int allow_severity __attribute__ ((weak)); /* for connection logging */ -+extern int deny_severity __attribute__ ((weak)); /* for connection logging */ -+#else - extern int allow_severity; /* for connection logging */ - extern int deny_severity; /* for connection logging */ -+#endif - extern char *hosts_allow_table; /* for verification mode redirection */ - extern char *hosts_deny_table; /* for verification mode redirection */ - extern int hosts_access_verbose; /* for verbose matching mode */ -@@ -98,6 +114,8 @@ - #ifdef __STDC__ - extern struct request_info *request_init(struct request_info *,...); - extern struct request_info *request_set(struct request_info *,...); -+extern int hosts_ctl(char *daemon, char *client_name, char *client_addr, -+ char *client_user); - #else - extern struct request_info *request_init(); /* initialize request */ - extern struct request_info *request_set(); /* update request structure */ -@@ -121,20 +139,23 @@ - * host_info structures serve as caches for the lookup results. - */ - --extern char *eval_user(); /* client user */ --extern char *eval_hostname(); /* printable hostname */ --extern char *eval_hostaddr(); /* printable host address */ --extern char *eval_hostinfo(); /* host name or address */ --extern char *eval_client(); /* whatever is available */ --extern char *eval_server(); /* whatever is available */ -+extern char *eval_user(struct request_info *); /* client user */ -+extern char *eval_hostname(struct host_info *); /* printable hostname */ -+extern char *eval_hostaddr(struct host_info *); /* printable host address */ -+extern char *eval_hostinfo(struct host_info *); /* host name or address */ -+extern char *eval_client(struct request_info *);/* whatever is available */ -+extern char *eval_server(struct request_info *);/* whatever is available */ - #define eval_daemon(r) ((r)->daemon) /* daemon process name */ - #define eval_pid(r) ((r)->pid) /* process id */ - - /* Socket-specific methods, including DNS hostname lookups. */ - --extern void sock_host(); /* look up endpoint addresses */ --extern void sock_hostname(); /* translate address to hostname */ --extern void sock_hostaddr(); /* address to printable address */ -+/* look up endpoint addresses */ -+extern void sock_host(struct request_info *); -+/* translate address to hostname */ -+extern void sock_hostname(struct host_info *); -+/* address to printable address */ -+extern void sock_hostaddr(struct host_info *); - #define sock_methods(r) \ - { (r)->hostname = sock_hostname; (r)->hostaddr = sock_hostaddr; } - -@@ -182,7 +203,7 @@ - * behavior. - */ - --extern void process_options(); /* execute options */ -+extern void process_options(char *, struct request_info *);/* execute options */ - extern int dry_run; /* verification flag */ - - /* Bug workarounds. */ -@@ -221,3 +242,7 @@ - #define strtok my_strtok - extern char *my_strtok(); - #endif -+ -+__END_DECLS -+ -+#endif -diff -ruN tcp_wrappers_7.6.orig/weak_symbols.c tcp_wrappers_7.6/weak_symbols.c ---- tcp_wrappers_7.6.orig/weak_symbols.c 1970-01-01 01:00:00.000000000 +0100 -+++ tcp_wrappers_7.6/weak_symbols.c 2004-05-02 15:31:09.000000000 +0200 -@@ -0,0 +1,11 @@ -+ /* -+ * @(#) weak_symbols.h 1.5 99/12/29 23:50 -+ * -+ * Author: Anthony Towns -+ */ -+ -+#ifdef HAVE_WEAKSYMS -+#include -+int deny_severity = LOG_WARNING; -+int allow_severity = SEVERITY; -+#endif diff --git a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/14_cidr_support.patch b/meta/packages/tcp-wrappers/tcp-wrappers-7.6/14_cidr_support.patch deleted file mode 100644 index 0e1ecf5b4a..0000000000 --- a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/14_cidr_support.patch +++ /dev/null @@ -1,66 +0,0 @@ -diff -ruN tcp_wrappers_7.6.orig/hosts_access.5 tcp_wrappers_7.6/hosts_access.5 ---- tcp_wrappers_7.6.orig/hosts_access.5 2003-08-21 03:15:36.000000000 +0200 -+++ tcp_wrappers_7.6/hosts_access.5 2003-08-21 03:15:31.000000000 +0200 -@@ -90,6 +90,10 @@ - pattern `131.155.72.0/255.255.254.0\' matches every address in the - range `131.155.72.0\' through `131.155.73.255\'. - .IP \(bu -+An expression of the form `n.n.n.n/mm' is interpreted as a -+`net/masklength' pair, where `mm' is the number of consecutive `1' -+bits in the netmask applied to the `n.n.n.n' address. -+.IP \(bu - An expression of the form `[n:n:n:n:n:n:n:n]/m\' is interpreted as a - `[net]/prefixlen\' pair. An IPv6 host address is matched if - `prefixlen\' bits of `net\' is equal to the `prefixlen\' bits of the -diff -ruN tcp_wrappers_7.6.orig/hosts_access.c tcp_wrappers_7.6/hosts_access.c ---- tcp_wrappers_7.6.orig/hosts_access.c 2003-08-21 03:15:36.000000000 +0200 -+++ tcp_wrappers_7.6/hosts_access.c 2003-08-21 03:09:30.000000000 +0200 -@@ -417,7 +417,8 @@ - if ((addr = dot_quad_addr(string)) == INADDR_NONE) - return (NO); - if ((net = dot_quad_addr(net_tok)) == INADDR_NONE -- || (mask = dot_quad_addr(mask_tok)) == INADDR_NONE) { -+ || ((mask = dot_quad_addr(mask_tok)) == INADDR_NONE -+ && (mask = cidr_mask_addr(mask_tok)) == 0)) { - #ifndef INET6 - tcpd_warn("bad net/mask expression: %s/%s", net_tok, mask_tok); - #endif -diff -ruN tcp_wrappers_7.6.orig/misc.c tcp_wrappers_7.6/misc.c ---- tcp_wrappers_7.6.orig/misc.c 2003-08-21 03:15:36.000000000 +0200 -+++ tcp_wrappers_7.6/misc.c 2003-08-21 03:09:30.000000000 +0200 -@@ -107,3 +107,17 @@ - } - return (runs == 4 ? inet_addr(str) : INADDR_NONE); - } -+ -+/* cidr_mask_addr - convert cidr netmask length to internal form */ -+ -+unsigned long cidr_mask_addr(str) -+char *str; -+{ -+ int maskbits; -+ -+ maskbits = atoi(str); -+ if (maskbits < 1 || maskbits > 32) -+ return (0); -+ return htonl(0xFFFFFFFF << (32 - maskbits)); -+} -+ -diff -ruN tcp_wrappers_7.6.orig/tcpdchk.c tcp_wrappers_7.6/tcpdchk.c ---- tcp_wrappers_7.6.orig/tcpdchk.c 2003-08-21 03:15:36.000000000 +0200 -+++ tcp_wrappers_7.6/tcpdchk.c 2003-08-21 03:09:30.000000000 +0200 -@@ -497,12 +497,12 @@ - int mask_len; - - if ((dot_quad_addr(pat) == INADDR_NONE -- || dot_quad_addr(mask) == INADDR_NONE) -+ || dot_quad_addr(mask) == INADDR_NONE && cidr_mask_addr(mask) == 0) - && (!is_inet6_addr(pat) - || ((mask_len = atoi(mask)) < 0 || mask_len > 128))) - #else - if (dot_quad_addr(pat) == INADDR_NONE -- || dot_quad_addr(mask) == INADDR_NONE) -+ || dot_quad_addr(mask) == INADDR_NONE && cidr_mask_addr(mask) == 0) - #endif - tcpd_warn("%s/%s: bad net/mask pattern", pat, mask); - } else if (STR_EQ(pat, "FAIL")) { /* obsolete */ diff --git a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/15_match_clarify.patch b/meta/packages/tcp-wrappers/tcp-wrappers-7.6/15_match_clarify.patch deleted file mode 100644 index 913ed987d6..0000000000 --- a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/15_match_clarify.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -ruN tcp_wrappers_7.6.orig/hosts_access.5 tcp_wrappers_7.6/hosts_access.5 ---- tcp_wrappers_7.6.orig/hosts_access.5 2004-04-25 12:17:59.000000000 +0200 -+++ tcp_wrappers_7.6/hosts_access.5 2004-04-25 12:17:53.000000000 +0200 -@@ -89,6 +89,8 @@ - bitwise AND of the address and the `mask\'. For example, the net/mask - pattern `131.155.72.0/255.255.254.0\' matches every address in the - range `131.155.72.0\' through `131.155.73.255\'. -+`255.255.255.255\' is not a valid mask value, so a single host can be -+matched just by its IP. - .IP \(bu - An expression of the form `n.n.n.n/mm' is interpreted as a - `net/masklength' pair, where `mm' is the number of consecutive `1' diff --git a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/expand_remote_port.patch b/meta/packages/tcp-wrappers/tcp-wrappers-7.6/expand_remote_port.patch deleted file mode 100644 index e35fc7ecd9..0000000000 --- a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/expand_remote_port.patch +++ /dev/null @@ -1,71 +0,0 @@ -diff -ruN tcp_wrappers_7.6.orig/eval.c tcp_wrappers_7.6/eval.c ---- tcp_wrappers_7.6.orig/eval.c 1995-01-30 19:51:46.000000000 +0100 -+++ tcp_wrappers_7.6/eval.c 2004-11-04 13:59:01.000000000 +0100 -@@ -98,6 +98,28 @@ - } - } - -+/* eval_port - return string with the port */ -+char *eval_port(saddr) -+#ifdef INET6 -+struct sockaddr *saddr; -+#else -+struct sockaddr_in *saddr; -+#endif -+{ -+ static char port[16]; -+ if (saddr != 0) { -+ sprintf(port, "%u", -+#ifdef INET6 -+ ntohs(((struct sockaddr_in *)saddr)->sin_port)); -+#else -+ ntohs(saddr->sin_port)); -+#endif -+ } else { -+ strcpy(port, "0"); -+ } -+ return (port); -+} -+ - /* eval_client - return string with as much about the client as we know */ - - char *eval_client(request) -diff -ruN tcp_wrappers_7.6.orig/hosts_access.5 tcp_wrappers_7.6/hosts_access.5 ---- tcp_wrappers_7.6.orig/hosts_access.5 2004-11-04 13:17:45.000000000 +0100 -+++ tcp_wrappers_7.6/hosts_access.5 2004-11-04 13:55:32.000000000 +0100 -@@ -175,6 +175,8 @@ - unavailable. - .IP "%n (%N)" - The client (server) host name (or "unknown" or "paranoid"). -+.IP "%r (%R)" -+The clients (servers) port number (or "0"). - .IP %p - The daemon process id. - .IP %s -diff -ruN tcp_wrappers_7.6.orig/percent_x.c tcp_wrappers_7.6/percent_x.c ---- tcp_wrappers_7.6.orig/percent_x.c 1994-12-28 17:42:38.000000000 +0100 -+++ tcp_wrappers_7.6/percent_x.c 2004-11-04 13:19:29.000000000 +0100 -@@ -63,6 +63,8 @@ - ch == 'n' ? eval_hostname(request->client) : - ch == 'N' ? eval_hostname(request->server) : - ch == 'p' ? eval_pid(request) : -+ ch == 'r' ? eval_port(request->client->sin) : -+ ch == 'R' ? eval_port(request->server->sin) : - ch == 's' ? eval_server(request) : - ch == 'u' ? eval_user(request) : - ch == '%' ? "%" : (tcpd_warn("unrecognized %%%c", ch), ""); -diff -ruN tcp_wrappers_7.6.orig/tcpd.h tcp_wrappers_7.6/tcpd.h ---- tcp_wrappers_7.6.orig/tcpd.h 2004-11-04 13:17:45.000000000 +0100 -+++ tcp_wrappers_7.6/tcpd.h 2004-11-04 13:19:13.000000000 +0100 -@@ -145,6 +145,11 @@ - extern char *eval_hostinfo(struct host_info *); /* host name or address */ - extern char *eval_client(struct request_info *);/* whatever is available */ - extern char *eval_server(struct request_info *);/* whatever is available */ -+#ifdef INET6 -+extern char *eval_port(struct sockaddr *); -+#else -+extern char *eval_port(struct sockaddr_in *); -+#endif - #define eval_daemon(r) ((r)->daemon) /* daemon process name */ - #define eval_pid(r) ((r)->pid) /* process id */ - diff --git a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/have_strerror.patch b/meta/packages/tcp-wrappers/tcp-wrappers-7.6/have_strerror.patch deleted file mode 100644 index 31c2b92278..0000000000 --- a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/have_strerror.patch +++ /dev/null @@ -1,19 +0,0 @@ -diff -ruN tcp_wrappers_7.6.orig/percent_m.c tcp_wrappers_7.6/percent_m.c ---- tcp_wrappers_7.6.orig/percent_m.c 1994-12-28 17:42:37.000000000 +0100 -+++ tcp_wrappers_7.6/percent_m.c 2003-08-21 02:45:31.000000000 +0200 -@@ -29,11 +29,15 @@ - - while (*bp = *cp) - if (*cp == '%' && cp[1] == 'm') { -+#ifdef HAVE_STRERROR -+ strcpy(bp, strerror(errno)); -+#else - if (errno < sys_nerr && errno > 0) { - strcpy(bp, sys_errlist[errno]); - } else { - sprintf(bp, "Unknown error %d", errno); - } -+#endif - bp += strlen(bp); - cp += 2; - } else { diff --git a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/ldflags.patch b/meta/packages/tcp-wrappers/tcp-wrappers-7.6/ldflags.patch deleted file mode 100644 index 2e897650e0..0000000000 --- a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/ldflags.patch +++ /dev/null @@ -1,43 +0,0 @@ -Index: tcp_wrappers_7.6.orig/Makefile -=================================================================== ---- tcp_wrappers_7.6.orig.orig/Makefile 2009-04-06 10:55:47.000000000 +0000 -+++ tcp_wrappers_7.6.orig/Makefile 2009-04-06 10:57:04.000000000 +0000 -@@ -748,31 +748,31 @@ - - $(SHLIB): $(SHLIB_OBJ) - rm -f $(SHLIB) -- $(CC) -o $(SHLIB) $(SHLINKFLAGS) $(SHLIB_OBJ) -+ $(CC) $(LDFLAGS) -o $(SHLIB) $(SHLINKFLAGS) $(SHLIB_OBJ) - ln -sf $(notdir $(SHLIB)) $(SHLIBSOMAJ) - ln -sf $(notdir $(SHLIBSOMAJ)) $(SHLIBSO) - - tcpd: tcpd.o $(SHLIB) -- $(CC) $(CFLAGS) -o $@ tcpd.o $(SHLIBFLAGS) -+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ tcpd.o $(SHLIBFLAGS) - - miscd: miscd.o $(LIB) -- $(CC) $(CFLAGS) -o $@ miscd.o $(LIB) $(LIBS) -+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ miscd.o $(LIB) $(LIBS) - - safe_finger: safe_finger.o $(SHLIB) -- $(CC) $(CFLAGS) -o $@ safe_finger.o $(SHLIBFLAGS) -+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ safe_finger.o $(SHLIBFLAGS) - - TCPDMATCH_OBJ = tcpdmatch.o fakelog.o inetcf.o scaffold.o - - tcpdmatch: $(TCPDMATCH_OBJ) $(SHLIB) -- $(CC) $(CFLAGS) -o $@ $(TCPDMATCH_OBJ) $(SHLIBFLAGS) -+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(TCPDMATCH_OBJ) $(SHLIBFLAGS) - - try-from: try-from.o fakelog.o $(SHLIB) -- $(CC) $(CFLAGS) -o $@ try-from.o fakelog.o $(SHLIBFLAGS) -+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ try-from.o fakelog.o $(SHLIBFLAGS) - - TCPDCHK_OBJ = tcpdchk.o fakelog.o inetcf.o scaffold.o - - tcpdchk: $(TCPDCHK_OBJ) $(SHLIB) -- $(CC) $(CFLAGS) -o $@ $(TCPDCHK_OBJ) $(SHLIBFLAGS) -+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(TCPDCHK_OBJ) $(SHLIBFLAGS) - - shar: $(KIT) - @shar $(KIT) diff --git a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/man_fromhost.patch b/meta/packages/tcp-wrappers/tcp-wrappers-7.6/man_fromhost.patch deleted file mode 100644 index afaa9c8ac3..0000000000 --- a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/man_fromhost.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -ruN tcp_wrappers_7.6.orig/hosts_access.3 tcp_wrappers_7.6/hosts_access.3 ---- tcp_wrappers_7.6.orig/hosts_access.3 2004-04-25 00:10:48.000000000 +0200 -+++ tcp_wrappers_7.6/hosts_access.3 2004-04-25 00:09:36.000000000 +0200 -@@ -14,6 +14,9 @@ - struct request_info *request_set(request, key, value, ..., 0) - struct request_info *request; - -+void fromhost(request) -+struct request_info *request; -+ - int hosts_access(request) - struct request_info *request; - -@@ -60,6 +63,7 @@ - is available, host names and client user names are looked up on demand, - using the request structure as a cache. hosts_access() returns zero if - access should be denied. -+fromhost() must be called before hosts_access(). - .PP - hosts_ctl() is a wrapper around the request_init() and hosts_access() - routines with a perhaps more convenient interface (though it does not diff --git a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/restore_sigalarm.patch b/meta/packages/tcp-wrappers/tcp-wrappers-7.6/restore_sigalarm.patch deleted file mode 100644 index ece7da35fe..0000000000 --- a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/restore_sigalarm.patch +++ /dev/null @@ -1,37 +0,0 @@ -diff -ruN tcp_wrappers_7.6.orig/rfc931.c tcp_wrappers_7.6/rfc931.c ---- tcp_wrappers_7.6.orig/rfc931.c 2004-08-29 18:40:08.000000000 +0200 -+++ tcp_wrappers_7.6/rfc931.c 2004-08-29 18:40:02.000000000 +0200 -@@ -92,6 +92,8 @@ - char *cp; - char *result = unknown; - FILE *fp; -+ unsigned saved_timeout; -+ struct sigaction nact, oact; - - #ifdef INET6 - /* address family must be the same */ -@@ -134,7 +136,12 @@ - */ - - if (setjmp(timebuf) == 0) { -- signal(SIGALRM, timeout); -+ /* Save SIGALRM timer and handler. Sudheer Abdul-Salam, SUN. */ -+ saved_timeout = alarm(0); -+ nact.sa_handler = timeout; -+ nact.sa_flags = 0; -+ (void) sigemptyset(&nact.sa_mask); -+ (void) sigaction(SIGALRM, &nact, &oact); - alarm(rfc931_timeout); - - /* -@@ -223,6 +230,10 @@ - } - alarm(0); - } -+ /* Restore SIGALRM timer and handler. Sudheer Abdul-Salam, SUN. */ -+ (void) sigaction(SIGALRM, &oact, NULL); -+ if (saved_timeout > 0) -+ alarm(saved_timeout); - fclose(fp); - } - STRN_CPY(dest, result, STRING_LENGTH); diff --git a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/rfc931.diff b/meta/packages/tcp-wrappers/tcp-wrappers-7.6/rfc931.diff deleted file mode 100644 index a926d0edfd..0000000000 --- a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/rfc931.diff +++ /dev/null @@ -1,39 +0,0 @@ -diff -ruNp tcp_wrappers_7.6.orig/scaffold.c tcp_wrappers_7.6/scaffold.c ---- tcp_wrappers_7.6.orig/scaffold.c 2005-03-09 18:22:04.000000000 +0100 -+++ tcp_wrappers_7.6/scaffold.c 2005-03-09 18:20:47.000000000 +0100 -@@ -237,10 +237,17 @@ struct request_info *request; - - /* ARGSUSED */ - --void rfc931(request) --struct request_info *request; -+void rfc931(rmt_sin, our_sin, dest) -+#ifdef INET6 -+struct sockaddr *rmt_sin; -+struct sockaddr *our_sin; -+#else -+struct sockaddr_in *rmt_sin; -+struct sockaddr_in *our_sin; -+#endif -+char *dest; - { -- strcpy(request->user, unknown); -+ strcpy(dest, unknown); - } - - /* check_path - examine accessibility */ -diff -ruNp tcp_wrappers_7.6.orig/tcpd.h tcp_wrappers_7.6/tcpd.h ---- tcp_wrappers_7.6.orig/tcpd.h 2005-03-09 18:22:04.000000000 +0100 -+++ tcp_wrappers_7.6/tcpd.h 2005-03-09 18:21:23.000000000 +0100 -@@ -83,7 +83,11 @@ extern int hosts_access(struct request_i - extern void shell_cmd(char *); /* execute shell command */ - extern char *percent_x(char *, int, char *, struct request_info *); - /* do % expansion */ -+#ifdef INET6 - extern void rfc931(struct sockaddr *, struct sockaddr *, char *); -+#else -+extern void rfc931(struct sockaddr_in *, struct sockaddr_in *, char *); -+#endif - /* client name from RFC 931 daemon */ - extern void clean_exit(struct request_info *); /* clean up and exit */ - extern void refuse(struct request_info *); /* clean up and exit */ diff --git a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/safe_finger.8 b/meta/packages/tcp-wrappers/tcp-wrappers-7.6/safe_finger.8 deleted file mode 100644 index 875616b9ea..0000000000 --- a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/safe_finger.8 +++ /dev/null @@ -1,34 +0,0 @@ -.TH SAFE_FINGER 8 "21th June 1997" Linux "Linux Programmer's Manual" -.SH NAME -safe_finger \- finger client wrapper that protects against nasty stuff -from finger servers -.SH SYNOPSIS -.B safe_finger [finger_options] -.SH DESCRIPTION -The -.B safe_finger -command protects against nasty stuff from finger servers. Use this -program for automatic reverse finger probes from the -.B tcp_wrapper -.B (tcpd) -, not the raw finger command. The -.B safe_finger -command makes sure that the finger client is not run with root -privileges. It also runs the finger client with a defined PATH -environment. -.B safe_finger -will also protect you from problems caused by the output of some -finger servers. The problem: some programs may react to stuff in -the first column. Other programs may get upset by thrash anywhere -on a line. File systems may fill up as the finger server keeps -sending data. Text editors may bomb out on extremely long lines. -The finger server may take forever because it is somehow wedged. -.B safe_finger -takes care of all this badness. -.SH SEE ALSO -.BR hosts_access (5), -.BR hosts_options (5), -.BR tcpd (8) -.SH AUTHOR -Wietse Venema, Eindhoven University of Technology, The Netherlands. - diff --git a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/safe_finger.patch b/meta/packages/tcp-wrappers/tcp-wrappers-7.6/safe_finger.patch deleted file mode 100644 index 5c8c9a1548..0000000000 --- a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/safe_finger.patch +++ /dev/null @@ -1,29 +0,0 @@ ---- tcp-wrappers-7.6-ipv6.1.orig/safe_finger.c -+++ tcp-wrappers-7.6-ipv6.1/safe_finger.c -@@ -26,21 +26,24 @@ - #include - #include - #include -+#include - - extern void exit(); - - /* Local stuff */ - --char path[] = "PATH=/bin:/usr/bin:/usr/ucb:/usr/bsd:/etc:/usr/etc:/usr/sbin"; -+char path[] = "PATH=/bin:/usr/bin:/sbin:/usr/sbin"; - - #define TIME_LIMIT 60 /* Do not keep listinging forever */ - #define INPUT_LENGTH 100000 /* Do not keep listinging forever */ - #define LINE_LENGTH 128 /* Editors can choke on long lines */ - #define FINGER_PROGRAM "finger" /* Most, if not all, UNIX systems */ - #define UNPRIV_NAME "nobody" /* Preferred privilege level */ --#define UNPRIV_UGID 32767 /* Default uid and gid */ -+#define UNPRIV_UGID 65534 /* Default uid and gid */ - - int finger_pid; -+int allow_severity = SEVERITY; -+int deny_severity = LOG_WARNING; - - void cleanup(sig) - int sig; diff --git a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/sig_fix.patch b/meta/packages/tcp-wrappers/tcp-wrappers-7.6/sig_fix.patch deleted file mode 100644 index f286605bfd..0000000000 --- a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/sig_fix.patch +++ /dev/null @@ -1,34 +0,0 @@ -* Mon Feb 10 2003 Harald Hoyer 7.6-29 -- added security patch tcp_wrappers-7.6-sig.patch - ---- tcp_wrappers_7.6/hosts_access.c.sig 2003-02-10 16:18:31.000000000 +0100 -+++ tcp_wrappers_7.6/hosts_access.c 2003-02-10 16:50:38.000000000 +0100 -@@ -66,6 +66,7 @@ - - #define YES 1 - #define NO 0 -+#define ERR -1 - - /* - * These variables are globally visible so that they can be redirected in -@@ -129,9 +129,9 @@ - return (verdict == AC_PERMIT); - if (table_match(hosts_allow_table, request)) - return (YES); -- if (table_match(hosts_deny_table, request)) -- return (NO); -- return (YES); -+ if (table_match(hosts_deny_table, request) == NO) -+ return (YES); -+ return (NO); - } - - /* table_match - match table entries with (daemon, client) pair */ -@@ -175,6 +175,7 @@ - (void) fclose(fp); - } else if (errno != ENOENT) { - tcpd_warn("cannot open %s: %m", table); -+ match = ERR; - } - if (match) { - if (hosts_access_verbose > 1) diff --git a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/siglongjmp.patch b/meta/packages/tcp-wrappers/tcp-wrappers-7.6/siglongjmp.patch deleted file mode 100644 index 71be340a07..0000000000 --- a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/siglongjmp.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff -ruNp tcp_wrappers_7.6.orig/rfc931.c tcp_wrappers_7.6/rfc931.c ---- tcp_wrappers_7.6.orig/rfc931.c 2004-08-29 18:42:25.000000000 +0200 -+++ tcp_wrappers_7.6/rfc931.c 2004-08-29 18:41:04.000000000 +0200 -@@ -33,7 +33,7 @@ static char sccsid[] = "@(#) rfc931.c 1. - - int rfc931_timeout = RFC931_TIMEOUT;/* Global so it can be changed */ - --static jmp_buf timebuf; -+static sigjmp_buf timebuf; - - /* fsocket - open stdio stream on top of socket */ - -@@ -62,7 +62,7 @@ int protocol; - static void timeout(sig) - int sig; - { -- longjmp(timebuf, sig); -+ siglongjmp(timebuf, sig); - } - - /* rfc931 - return remote user name, given socket structures */ -@@ -135,7 +135,7 @@ char *dest; - * Set up a timer so we won't get stuck while waiting for the server. - */ - -- if (setjmp(timebuf) == 0) { -+ if (sigsetjmp(timebuf, 0) == 0) { - /* Save SIGALRM timer and handler. Sudheer Abdul-Salam, SUN. */ - saved_timeout = alarm(0); - nact.sa_handler = timeout; diff --git a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/size_t.patch b/meta/packages/tcp-wrappers/tcp-wrappers-7.6/size_t.patch deleted file mode 100644 index 4db40f4c7b..0000000000 --- a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/size_t.patch +++ /dev/null @@ -1,42 +0,0 @@ -diff -ruN tcp_wrappers_7.6.orig/fix_options.c tcp_wrappers_7.6/fix_options.c ---- tcp_wrappers_7.6.orig/fix_options.c 2003-08-21 03:41:33.000000000 +0200 -+++ tcp_wrappers_7.6/fix_options.c 2003-08-21 03:41:27.000000000 +0200 -@@ -38,7 +38,11 @@ - #ifdef IP_OPTIONS - unsigned char optbuf[BUFFER_SIZE / 3], *cp; - char lbuf[BUFFER_SIZE], *lp; -+#ifdef __GLIBC__ -+ size_t optsize = sizeof(optbuf), ipproto; -+#else - int optsize = sizeof(optbuf), ipproto; -+#endif - struct protoent *ip; - int fd = request->fd; - unsigned int opt; -diff -ruN tcp_wrappers_7.6.orig/socket.c tcp_wrappers_7.6/socket.c ---- tcp_wrappers_7.6.orig/socket.c 2003-08-21 03:41:33.000000000 +0200 -+++ tcp_wrappers_7.6/socket.c 2003-08-21 03:40:51.000000000 +0200 -@@ -90,7 +90,11 @@ - static struct sockaddr_in client; - static struct sockaddr_in server; - #endif -+#ifdef __GLIBC__ -+ size_t len; -+#else - int len; -+#endif - char buf[BUFSIZ]; - int fd = request->fd; - -@@ -421,7 +425,11 @@ - #else - struct sockaddr_in sin; - #endif -+#ifdef __GLIBC__ -+ size_t size = sizeof(sin); -+#else - int size = sizeof(sin); -+#endif - - /* - * Eat up the not-yet received datagram. Some systems insist on a diff --git a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/tcpdchk_libwrapped.patch b/meta/packages/tcp-wrappers/tcp-wrappers-7.6/tcpdchk_libwrapped.patch deleted file mode 100644 index 3beae39306..0000000000 --- a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/tcpdchk_libwrapped.patch +++ /dev/null @@ -1,39 +0,0 @@ -diff -ruN tcp_wrappers_7.6.orig/tcpdchk.c tcp_wrappers_7.6/tcpdchk.c ---- tcp_wrappers_7.6.orig/tcpdchk.c 2003-08-21 02:50:37.000000000 +0200 -+++ tcp_wrappers_7.6/tcpdchk.c 2003-08-21 02:50:33.000000000 +0200 -@@ -53,6 +53,24 @@ - #include "inetcf.h" - #include "scaffold.h" - -+/* list of programs which are known to be linked with libwrap in debian */ -+static const char *const libwrap_programs[] = { -+ "portmap", "mountd", "statd", "ugidd", -+ "redir", "rlinetd", -+ "sshd", -+ "atftpd", -+ "diald", -+ "esound", -+ "gdm", "gnome-session", -+ "icecast", "icecast_admin", "icecast_client", "icecast_source", -+ "mysqld", -+ "ntop", -+ "pptpd", -+ "rquotad", -+ "sendmail", "smail", -+ NULL -+}; -+ - /* - * Stolen from hosts_access.c... - */ -@@ -147,8 +165,8 @@ - /* - * These are not run from inetd but may have built-in access control. - */ -- inet_set("portmap", WR_NOT); -- inet_set("rpcbind", WR_NOT); -+ for (c = 0; libwrap_programs[c]; c++) -+ inet_set(libwrap_programs[c], WR_YES); - - /* - * Check accessibility of access control files. diff --git a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/try-from.8 b/meta/packages/tcp-wrappers/tcp-wrappers-7.6/try-from.8 deleted file mode 100644 index 9c8f30543e..0000000000 --- a/meta/packages/tcp-wrappers/tcp-wrappers-7.6/try-from.8 +++ /dev/null @@ -1,28 +0,0 @@ -.TH TRY-FROM 8 "21th June 1997" Linux "Linux Programmer's Manual" -.SH NAME -try-from \- test program for the tcp_wrapper -.SH SYNOPSIS -.B try-from -.SH DESCRIPTION -The -.B try-from -command can be called via a remote shell command to find out -if the hostname and address are properly recognized -by the -.B tcp_wrapper -library, if username lookup works, and (SysV only) if the TLI -on top of IP heuristics work. Diagnostics are reported through -.BR syslog (3) -and redirected to stderr. - -Example: - -rsh host /some/where/try-from - -.SH SEE ALSO -.BR hosts_access (5), -.BR hosts_options (5), -.BR tcpd (8) -.SH AUTHOR -Wietse Venema, Eindhoven University of Technology, The Netherlands. - diff --git a/meta/packages/tcp-wrappers/tcp-wrappers_7.6.bb b/meta/packages/tcp-wrappers/tcp-wrappers_7.6.bb deleted file mode 100644 index 308a8b63b4..0000000000 --- a/meta/packages/tcp-wrappers/tcp-wrappers_7.6.bb +++ /dev/null @@ -1,117 +0,0 @@ -DESCRIPTION = "Tools for monitoring and filtering incoming requests for tcp \ - services." -PRIORITY = "optional" -SECTION = "console/network" - -LICENSE = "tcp-wrappers" -LIC_FILES_CHKSUM = "file://DISCLAIMER;md5=071bd69cb78b18888ea5e3da5c3127fa" -PR ="r0" - - -PACKAGES = "${PN}-dbg libwrap libwrap-doc libwrap-dev tcp-wrappers tcp-wrappers-doc" -FILES_libwrap = "${base_libdir}/lib*.so.*" -FILES_libwrap-doc = "${mandir}/man3 ${mandir}/man5" -FILES_libwrap-dev = "${libdir}/lib*.so ${libdir}/lib*.a ${includedir}" -FILES_tcp-wrappers = "${bindir}" -FILES_tcp-wrappers-doc = "${mandir}/man8" - -SRC_URI = "ftp://ftp.porcupine.org/pub/security/tcp_wrappers_${PV}.tar.gz \ - file://00_man_quoting.diff \ - file://01_man_portability.patch \ - file://05_wildcard_matching.patch \ - file://06_fix_gethostbyname.patch \ - file://10_usagi-ipv6.patch \ - file://11_tcpd_blacklist.patch \ - file://11_usagi_fix.patch \ - file://12_makefile_config.patch \ - file://13_shlib_weaksym.patch \ - file://14_cidr_support.patch \ - file://15_match_clarify.patch \ - file://expand_remote_port.patch \ - file://have_strerror.patch \ - file://man_fromhost.patch \ - file://restore_sigalarm.patch \ - file://rfc931.diff \ - file://safe_finger.patch \ - file://sig_fix.patch \ - file://siglongjmp.patch \ - file://size_t.patch \ - file://tcpdchk_libwrapped.patch \ - file://ldflags.patch \ - \ - file://try-from.8 \ - file://safe_finger.8" - -S = "${WORKDIR}/tcp_wrappers_${PV}" - -PARALLEL_MAKE = "" -EXTRA_OEMAKE = "'CC=${CC}' \ - 'AR=${AR}' \ - 'RANLIB=${RANLIB}' \ - 'REAL_DAEMON_DIR=${sbindir}' \ - 'STYLE=-DPROCESS_OPTIONS' \ - 'FACILITY=LOG_DAEMON' \ - 'SEVERITY=LOG_INFO' \ - 'BUGS=' \ - 'VSYSLOG=' \ - 'RFC931_TIMEOUT=10' \ - 'ACCESS=-DHOSTS_ACCESS' \ - 'KILL_OPT=-DKILL_IP_OPTIONS' \ - 'UMASK=-DDAEMON_UMASK=022' \ - 'NETGROUP=${EXTRA_OEMAKE_NETGROUP}' \ - 'LIBS=-lnsl' \ - 'ARFLAGS=rv' \ - 'AUX_OBJ=weak_symbols.o' \ - 'TLI=' \ - 'COPTS=' \ - 'EXTRA_CFLAGS=${CFLAGS} -DSYS_ERRLIST_DEFINED -DHAVE_STRERROR -DHAVE_WEAKSYMS -D_REENTRANT -DINET6=1 -Dss_family=__ss_family -Dss_len=__ss_len'" - -EXTRA_OEMAKE_NETGROUP = "-DNETGROUP -DUSE_GETDOMAIN" -EXTRA_OEMAKE_NETGROUP_linux-uclibc = "-DUSE_GETDOMAIN" -EXTRA_OEMAKE_NETGROUP_linux-uclibceabi = "-DUSE_GETDOMAIN" - -do_compile () { - oe_runmake 'TABLES=-DHOSTS_DENY=\"${sysconfdir}/hosts.deny\" -DHOSTS_ALLOW=\"${sysconfdir}/hosts.allow\"' \ - all -} - -BINS = "safe_finger tcpd tcpdchk try-from tcpdmatch" -MANS3 = "hosts_access" -MANS5 = "hosts_options" -MANS8 = "tcpd tcpdchk tcpdmatch" -do_install () { - oe_libinstall -a libwrap ${D}${libdir} - oe_libinstall -C shared -so libwrap ${D}${base_libdir} - - rel_lib_prefix=`echo ${libdir} | sed 's,\(^/\|\)[^/][^/]*,..,g'` - libname=`readlink ${D}${base_libdir}/libwrap.so | xargs basename` - ln -s ${rel_lib_prefix}${base_libdir}/${libname} ${D}${libdir}/libwrap.so - rm -f ${D}${base_libdir}/libwrap.so - - install -d ${D}${sbindir} - for b in ${BINS}; do - install -m 0755 $b ${D}${sbindir}/ || exit 1 - done - - install -d ${D}${mandir}/man3 - for m in ${MANS3}; do - install -m 0644 $m.3 ${D}${mandir}/man3/ || exit 1 - done - - install -d ${D}${mandir}/man5 - for m in ${MANS5}; do - install -m 0644 $m.5 ${D}${mandir}/man5/ || exit 1 - done - - install -d ${D}${mandir}/man8 - for m in ${MANS8}; do - install -m 0644 $m.8 ${D}${mandir}/man8/ || exit 1 - done - - install -m 0644 ${WORKDIR}/try-from.8 ${D}${mandir}/man8/ - install -m 0644 ${WORKDIR}/safe_finger.8 ${D}${mandir}/man8/ - - install -d ${D}${includedir} - install -m 0644 tcpd.h ${D}${includedir}/ -} - diff --git a/meta/packages/tzcode/tzcode-native_2009r.bb b/meta/packages/tzcode/tzcode-native_2009r.bb deleted file mode 100644 index c9a213b4f8..0000000000 --- a/meta/packages/tzcode/tzcode-native_2009r.bb +++ /dev/null @@ -1,17 +0,0 @@ -DESCRIPTION = "tzcode, timezone zoneinfo utils -- zic, zdump, tzselect" - -PR = "r0" - -SRC_URI = "ftp://elsie.nci.nih.gov/pub/tzcode${PV}.tar.gz \ - ftp://elsie.nci.nih.gov/pub/tzdata2009s.tar.gz" - -S = "${WORKDIR}" - -inherit native - -do_install () { - install -d ${D}${bindir}/ - install -m 755 zic ${D}${bindir}/ - install -m 755 zdump ${D}${bindir}/ - install -m 755 tzselect ${D}${bindir}/ -} diff --git a/meta/packages/tzdata/tzdata_2010j.bb b/meta/packages/tzdata/tzdata_2010j.bb deleted file mode 100644 index 97eb1173c1..0000000000 --- a/meta/packages/tzdata/tzdata_2010j.bb +++ /dev/null @@ -1,160 +0,0 @@ -DESCRIPTION = "Timezone data" -HOMEPAGE = "ftp://elsie.nci.nih.gov/pub/" -SECTION = "base" -PRIORITY = "optional" -LICENSE = "PD" -LIC_FILES_CHKSUM = "file://asia;beginline=2;endline=3;md5=06468c0e84ef4d4c97045a4a29b08234" -DEPENDS = "tzcode-native" - -PR = "r0" - -RCONFLICTS= "timezones timezone-africa timezone-america timezone-antarctica \ - timezone-arctic timezone-asia timezone-atlantic \ - timezone-australia timezone-europe timezone-indian \ - timezone-iso3166.tab timezone-pacific timezone-zone.tab" - -SRC_URI = "ftp://elsie.nci.nih.gov/pub/tzdata${PV}.tar.gz" - -S = "${WORKDIR}" - -TZONES= "africa antarctica asia australasia europe northamerica southamerica \ - factory solar87 solar88 solar89 etcetera backward systemv \ -# pacificnew \ - " - -do_compile () { - for zone in ${TZONES}; do \ - ${STAGING_BINDIR_NATIVE}/zic -d ${WORKDIR}${datadir}/zoneinfo -L /dev/null \ - -y ${S}/yearistype.sh ${S}/${zone} ; \ - ${STAGING_BINDIR_NATIVE}/zic -d ${WORKDIR}${datadir}/zoneinfo/posix -L /dev/null \ - -y ${S}/yearistype.sh ${S}/${zone} ; \ - ${STAGING_BINDIR_NATIVE}/zic -d ${WORKDIR}${datadir}/zoneinfo/right -L ${S}/leapseconds \ - -y ${S}/yearistype.sh ${S}/${zone} ; \ - done -} - -do_install () { - install -d ${D}/usr ${D}${datadir}/zoneinfo - cp -pPR ${S}/usr ${D}/ -} - -# Packages primarily organized by directory with a major city -# in most time zones in the base package - -PACKAGES = "tzdata tzdata-misc tzdata-posix tzdata-right tzdata-africa \ - tzdata-americas tzdata-antarctica tzdata-arctic tzdata-asia \ - tzdata-atlantic tzdata-australia tzdata-europe tzdata-pacific" - -FILES_tzdata-africa += "${datadir}/zoneinfo/Africa/*" -RPROVIDES_tzdata-africa = "tzdata-africa" - -FILES_tzdata-americas += "${datadir}/zoneinfo/America/* \ - ${datadir}/zoneinfo/US/* \ - ${datadir}/zoneinfo/Brazil/* \ - ${datadir}/zoneinfo/Canada/* \ - ${datadir}/zoneinfo/Mexico/* \ - ${datadir}/zoneinfo/Chile/*" -RPROVIDES_tzdata-americas = "tzdata-americas" - -FILES_tzdata-antarctica += "${datadir}/zoneinfo/Antarctica/*" -RPROVIDES_tzdata-antarctica = "tzdata-antarctica" - -FILES_tzdata-arctic += "${datadir}/zoneinfo/Arctic/*" -RPROVIDES_tzdata-arctic = "tzdata-arctic" - -FILES_tzdata-asia += "${datadir}/zoneinfo/Asia/* \ - ${datadir}/zoneinfo/Indian/* \ - ${datadir}/zoneinfo/Mideast/*" -RPROVIDES_tzdata-asia = "tzdata-asia" - -FILES_tzdata-atlantic += "${datadir}/zoneinfo/Atlantic/*" -RPROVIDES_tzdata-atlantic = "tzdata-atlantic" - -FILES_tzdata-australia += "${datadir}/zoneinfo/Australia/*" -RPROVIDES_tzdata-australia = "tzdata-australia" - -FILES_tzdata-europe += "${datadir}/zoneinfo/Europe/*" -RPROVIDES_tzdata-europe = "tzdata-europe" - -FILES_tzdata-pacific += "${datadir}/zoneinfo/Pacific/*" -RPROVIDES_tzdata-pacific = "tzdata-pacific" - -FILES_tzdata-posix += "${datadir}/zoneinfo/posix/*" -RPROVIDES_tzdata-posix = "tzdata-posix" - -FILES_tzdata-right += "${datadir}/zoneinfo/right/*" -RPROVIDES_tzdata-right = "tzdata-right" - - -FILES_tzdata-misc += "${datadir}/zoneinfo/Cuba \ - ${datadir}/zoneinfo/Egypt \ - ${datadir}/zoneinfo/Eire \ - ${datadir}/zoneinfo/Factory \ - ${datadir}/zoneinfo/GB-Eire \ - ${datadir}/zoneinfo/Hongkong \ - ${datadir}/zoneinfo/Iceland \ - ${datadir}/zoneinfo/Iran \ - ${datadir}/zoneinfo/Israel \ - ${datadir}/zoneinfo/Jamaica \ - ${datadir}/zoneinfo/Japan \ - ${datadir}/zoneinfo/Kwajalein \ - ${datadir}/zoneinfo/Libya \ - ${datadir}/zoneinfo/Navajo \ - ${datadir}/zoneinfo/Poland \ - ${datadir}/zoneinfo/Portugal \ - ${datadir}/zoneinfo/Singapore \ - ${datadir}/zoneinfo/Turkey" -RPROVIDES_tzdata-misc = "tzdata-misc" - - -FILES_${PN} += "${datadir}/zoneinfo/Pacific/Honolulu \ - ${datadir}/zoneinfo/America/Anchorage \ - ${datadir}/zoneinfo/America/Los_Angeles \ - ${datadir}/zoneinfo/America/Denver \ - ${datadir}/zoneinfo/America/Chicago \ - ${datadir}/zoneinfo/America/New_York \ - ${datadir}/zoneinfo/America/Caracas \ - ${datadir}/zoneinfo/America/Sao_Paulo \ - ${datadir}/zoneinfo/Europe/London \ - ${datadir}/zoneinfo/Europe/Paris \ - ${datadir}/zoneinfo/Africa/Cairo \ - ${datadir}/zoneinfo/Europe/Moscow \ - ${datadir}/zoneinfo/Asia/Dubai \ - ${datadir}/zoneinfo/Asia/Karachi \ - ${datadir}/zoneinfo/Asia/Dhaka \ - ${datadir}/zoneinfo/Asia/Bankok \ - ${datadir}/zoneinfo/Asia/Hong_Kong \ - ${datadir}/zoneinfo/Asia/Tokyo \ - ${datadir}/zoneinfo/Australia/Darwin \ - ${datadir}/zoneinfo/Australia/Adelaide \ - ${datadir}/zoneinfo/Australia/Brisbane \ - ${datadir}/zoneinfo/Australia/Sydney \ - ${datadir}/zoneinfo/Pacific/Noumea \ - ${datadir}/zoneinfo/CET \ - ${datadir}/zoneinfo/CST6CDT \ - ${datadir}/zoneinfo/EET \ - ${datadir}/zoneinfo/EST \ - ${datadir}/zoneinfo/EST5EDT \ - ${datadir}/zoneinfo/GB \ - ${datadir}/zoneinfo/GMT \ - ${datadir}/zoneinfo/GMT+0 \ - ${datadir}/zoneinfo/GMT-0 \ - ${datadir}/zoneinfo/GMT0 \ - ${datadir}/zoneinfo/Greenwich \ - ${datadir}/zoneinfo/HST \ - ${datadir}/zoneinfo/MET \ - ${datadir}/zoneinfo/MST \ - ${datadir}/zoneinfo/MST7MDT \ - ${datadir}/zoneinfo/NZ \ - ${datadir}/zoneinfo/NZ-CHAT \ - ${datadir}/zoneinfo/PRC \ - ${datadir}/zoneinfo/PST8PDT \ - ${datadir}/zoneinfo/ROC \ - ${datadir}/zoneinfo/ROK \ - ${datadir}/zoneinfo/UCT \ - ${datadir}/zoneinfo/UTC \ - ${datadir}/zoneinfo/Universal \ - ${datadir}/zoneinfo/W-SU \ - ${datadir}/zoneinfo/WET \ - ${datadir}/zoneinfo/Zulu \ - ${datadir}/zoneinfo/Etc/*" diff --git a/meta/packages/uboot/files/fix-arm920t-eabi.patch b/meta/packages/uboot/files/fix-arm920t-eabi.patch deleted file mode 100644 index 69cb75891d..0000000000 --- a/meta/packages/uboot/files/fix-arm920t-eabi.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- - cpu/arm920t/config.mk | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - ---- u-boot-1.3.2.orig/cpu/arm920t/config.mk -+++ u-boot-1.3.2/cpu/arm920t/config.mk -@@ -22,13 +22,13 @@ - # - - PLATFORM_RELFLAGS += -fno-strict-aliasing -fno-common -ffixed-r8 \ - -msoft-float - --PLATFORM_CPPFLAGS += -march=armv4 -+#PLATFORM_CPPFLAGS += -march=armv4 - # ========================================================================= - # - # Supply options according to compiler version - # - # ========================================================================= --PLATFORM_CPPFLAGS +=$(call cc-option,-mapcs-32,-mabi=apcs-gnu) -+PLATFORM_CPPFLAGS +=$(call cc-option) - PLATFORM_RELFLAGS +=$(call cc-option,-mshort-load-bytes,$(call cc-option,-malignment-traps,)) diff --git a/meta/packages/uboot/u-boot-mkimage-native_1.3.2.bb b/meta/packages/uboot/u-boot-mkimage-native_1.3.2.bb deleted file mode 100644 index fcba0d5662..0000000000 --- a/meta/packages/uboot/u-boot-mkimage-native_1.3.2.bb +++ /dev/null @@ -1,23 +0,0 @@ -DESCRIPTION = "U-boot bootloader mkimage tool" -LICENSE = "GPL" -SECTION = "bootloader" - -SRC_URI = "ftp://ftp.denx.de/pub/u-boot/u-boot-${PV}.tar.bz2 \ - file://fix-arm920t-eabi.patch;patch=1" - -S = "${WORKDIR}/u-boot-${PV}" - -inherit native - -EXTRA_OEMAKE = "CROSS_COMPILE=${TARGET_PREFIX}" - -do_compile () { - oe_runmake smdk2410_config - oe_runmake tools -} - -do_install () { - install -d ${D}${bindir}/ - install -m 0755 tools/mkimage ${D}${bindir}/uboot-mkimage - ln -sf uboot-mkimage ${D}${bindir}/mkimage -} diff --git a/meta/packages/uboot/u-boot-mkimage_2009.08.bb b/meta/packages/uboot/u-boot-mkimage_2009.08.bb deleted file mode 100644 index bf07198beb..0000000000 --- a/meta/packages/uboot/u-boot-mkimage_2009.08.bb +++ /dev/null @@ -1,25 +0,0 @@ -DESCRIPTION = "U-boot bootloader mkimage tool" -LICENSE = "GPL" -SECTION = "bootloader" - -PR = "r1" - -SRC_URI = "ftp://ftp.denx.de/pub/u-boot/u-boot-${PV}.tar.bz2" - -S = "${WORKDIR}/u-boot-${PV}" - -EXTRA_OEMAKE = "CROSS_COMPILE=${TARGET_PREFIX}" - -BBCLASSEXTEND = "native nativesdk" - -do_compile () { - oe_runmake smdk2410_config - oe_runmake tools -} - -do_install () { - install -d ${D}${bindir} - install -m 0755 tools/mkimage ${D}${bindir}/uboot-mkimage - ln -sf uboot-mkimage ${D}${bindir}/mkimage -} - diff --git a/meta/packages/uboot/u-boot-omap3-git/beagleboard/name.patch b/meta/packages/uboot/u-boot-omap3-git/beagleboard/name.patch deleted file mode 100644 index ac03e47774..0000000000 --- a/meta/packages/uboot/u-boot-omap3-git/beagleboard/name.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- git/Makefile.orig 2008-07-25 16:21:22.000000000 -0700 -+++ git/Makefile 2008-07-27 06:49:08.000000000 -0700 -@@ -2582,8 +2582,8 @@ SMN42_config : unconfig - ######################################################################### - ## ARM CORTEX Systems - ######################################################################### --omap3530beagle_config : unconfig -- @$(MKCONFIG) $(@:_config=) arm omap3 omap3530beagle -+beagleboard_config : unconfig -+ @$(MKCONFIG) omap3530beagle arm omap3 omap3530beagle - - overo_config : unconfig - @$(MKCONFIG) $(@:_config=) arm omap3 overo - diff --git a/meta/packages/uboot/u-boot-omap3_git.bb b/meta/packages/uboot/u-boot-omap3_git.bb deleted file mode 100644 index 480780ebfc..0000000000 --- a/meta/packages/uboot/u-boot-omap3_git.bb +++ /dev/null @@ -1,20 +0,0 @@ -require u-boot.inc - -FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/u-boot-omap3-git/${MACHINE}" - -SRCREV = "f40f6db278f602b55820693634a7256b0b4e4b80" - -PV = "2008.10-rc2+${PR}+git${SRCREV}" -PR="r2" - -SRC_URI = "git://gitorious.org/u-boot-omap3/mainline.git;branch=master;protocol=git" - -UBOOT_MACHINE_beagleboard = "omap3_beagle_config" -UBOOT_MACHINE_omap3evm = "omap3_evm_config" -UBOOT_MACHINE_overo = "omap3_overo_config" - -S = "${WORKDIR}/git" - -PACKAGE_ARCH = "${MACHINE_ARCH}" - -COMPATIBLE_MACHINE = "(beagleboard|omap3evm|overo)" diff --git a/meta/packages/uboot/u-boot.inc b/meta/packages/uboot/u-boot.inc deleted file mode 100644 index 889f6215ed..0000000000 --- a/meta/packages/uboot/u-boot.inc +++ /dev/null @@ -1,38 +0,0 @@ -DESCRIPTION = "U-boot bootloader" -HOMEPAGE = "http://u-boot.sf.net" -SECTION = "bootloaders" -PRIORITY = "optional" -LICENSE = "GPL" -PROVIDES = "virtual/bootloader" - -inherit deploy - -PARALLEL_MAKE="" - -EXTRA_OEMAKE = "CROSS_COMPILE=${TARGET_PREFIX}" - -UBOOT_MACHINE ?= "${MACHINE}_config" -UBOOT_IMAGE ?= "u-boot-${MACHINE}-${PV}-${PR}.bin" -UBOOT_SYMLINK ?= "u-boot-${MACHINE}.bin" - -do_compile () { - unset LDFLAGS - unset CFLAGS - unset CPPFLAGS - oe_runmake ${UBOOT_MACHINE} - oe_runmake all -} - -do_deploy () { - install ${S}/u-boot.bin ${DEPLOYDIR}/${UBOOT_IMAGE} - - cd ${DEPLOYDIR} - rm -f ${UBOOT_SYMLINK} - ln -sf ${UBOOT_IMAGE} ${UBOOT_SYMLINK} -} -addtask deploy before do_build after do_compile - -do_install() { - install -d ${D}${bindir} - install -m 755 tools/mkimage ${D}${bindir}/ -} diff --git a/meta/packages/ubootchart/files/sysvinit.patch b/meta/packages/ubootchart/files/sysvinit.patch deleted file mode 100644 index de9fb0b17d..0000000000 --- a/meta/packages/ubootchart/files/sysvinit.patch +++ /dev/null @@ -1,12 +0,0 @@ -Index: ubootchart.conf -=================================================================== ---- ubootchart.conf (revision 9) -+++ ubootchart.conf (working copy) -@@ -1,6 +1,6 @@ - - # If you want to chain on and run somthing other than /sbin/init... --export init_prog=/sbin/init -+export init_prog=/sbin/init.sysvinit - - # On startup ubootchart will mount a tmpfs filesystem at this - # location and chdir here. This is only used for the logging of diff --git a/meta/packages/ubootchart/files/ubootchart-stop b/meta/packages/ubootchart/files/ubootchart-stop deleted file mode 100644 index 3444069c9a..0000000000 --- a/meta/packages/ubootchart/files/ubootchart-stop +++ /dev/null @@ -1,3 +0,0 @@ -#! /bin/sh - -kill -USR1 $(pidof ubootchartd_bin) diff --git a/meta/packages/ubootchart/files/ubootchart.desktop b/meta/packages/ubootchart/files/ubootchart.desktop deleted file mode 100644 index 5552b3bc6f..0000000000 --- a/meta/packages/ubootchart/files/ubootchart.desktop +++ /dev/null @@ -1,6 +0,0 @@ -[Desktop Entry] -Encoding=UTF-8 -Exec=/sbin/ubootchart-stop -Name=Stop Bootchart -Type=Application -Categories=Programming; diff --git a/meta/packages/ubootchart/ubootchart_svn.bb b/meta/packages/ubootchart/ubootchart_svn.bb deleted file mode 100644 index cd292b6943..0000000000 --- a/meta/packages/ubootchart/ubootchart_svn.bb +++ /dev/null @@ -1,37 +0,0 @@ -DESCRIPTION = "A boot profiling tool" -HOMEPAGE = "http://code.google.com/p/ubootchart/" -LICENSE = "GPLv3" -PV = "0.0+r${SRCREV}" -PR = "r4" - -#RRECOMMENDS = "acct" - -SRC_URI = "svn://ubootchart.googlecode.com/svn/;proto=http;module=trunk \ - file://sysvinit.patch;patch=1;pnum=0 \ - file://ubootchart-stop \ - file://ubootchart.desktop" - -S = "${WORKDIR}/trunk" - -inherit update-alternatives - -ALTERNATIVE_NAME = "init" -ALTERNATIVE_LINK = "${base_sbindir}/init" -ALTERNATIVE_PATH = "${base_sbindir}/ubootchartd" -ALTERNATIVE_PRIORITY = "70" - -do_compile() { - ${CC} ${CFLAGS} ${LDFLAGS} ${LIBS} ${INCLUDES} ${S}/ubootchartd_bin.c -o ubootchartd_bin -} - -do_install() { - install -m 0755 -d ${D}/sbin ${D}/etc/ubootchart ${D}/usr/share/applications - install -m 0755 ${S}/ubootchartd_bin ${D}/sbin - install -m 0755 ${S}/ubootchartd ${D}/sbin - install -m 0644 ${S}/ubootchart.conf ${D}/etc/ubootchart - install -m 0755 ${S}/start.sh ${D}/etc/ubootchart - install -m 0755 ${S}/finish.sh ${D}/etc/ubootchart - - install -m 0755 ${WORKDIR}/ubootchart-stop ${D}/sbin - install -m 0644 ${WORKDIR}/ubootchart.desktop ${D}/usr/share/applications -} diff --git a/meta/packages/unzip/unzip_6.0.bb b/meta/packages/unzip/unzip_6.0.bb deleted file mode 100644 index 069dfb8781..0000000000 --- a/meta/packages/unzip/unzip_6.0.bb +++ /dev/null @@ -1,25 +0,0 @@ -DESCRIPTION = "A (de)compression library for the ZIP format" -HOMEPAGE = "http://www.info-zip.org" -SECTION = "console/utils" -LICENSE = "Info-ZIP" -LIC_FILES_CHKSUM = "file://LICENSE;md5=94caec5a51ef55ef711ee4e8b1c69e29" -PE = "1" -PR = "r0" - -SRC_URI = "ftp://ftp.info-zip.org/pub/infozip/src/unzip60.tgz" -S = "${WORKDIR}/unzip60" - -export LD = "${CC}" -LD_virtclass-native = "${CC}" - -do_compile() { - oe_runmake -f unix/Makefile generic -} - -do_install() { - oe_runmake -f unix/Makefile install prefix=${D}${prefix} - install -d ${D}${mandir} - mv ${D}${prefix}/man/* ${D}${mandir} -} - -BBCLASSEXTEND = "native" diff --git a/meta/packages/usbutils/usbutils_0.86.bb b/meta/packages/usbutils/usbutils_0.86.bb deleted file mode 100644 index 8e4a3da453..0000000000 --- a/meta/packages/usbutils/usbutils_0.86.bb +++ /dev/null @@ -1,24 +0,0 @@ -DESCRIPTION = "Host side USB console utilities." -HOMEPAGE = "http://www.linux-usb.org" -SECTION = "base" -PRIORITY = "optional" - -LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f" - -DEPENDS = "libusb zlib" -RDEPENDS_${PN} = "${PN}-ids" -PR = "r0" - -SRC_URI = "${SOURCEFORGE_MIRROR}/linux-usb/usbutils-${PV}.tar.gz" - -inherit autotools - -do_install_append() { - ln -s ../sbin/lsusb ${D}${bindir}/lsusb -} - -PACKAGES += "${PN}-ids" - -FILES_${PN} += "${datadir}/pkgconfig" -FILES_${PN}-ids = "${datadir}/usb*" diff --git a/meta/packages/util-linux/files/MCONFIG b/meta/packages/util-linux/files/MCONFIG deleted file mode 100644 index 3fea2c02d7..0000000000 --- a/meta/packages/util-linux/files/MCONFIG +++ /dev/null @@ -1,223 +0,0 @@ -# MCONFIG -- Configuration stuff for util-linux -# Created: Sat Feb 4 15:50:30 1995 -# Copyright 1995 Rickard E. Faith (faith@cs.unc.edu) - -# For a user-mode install, make (at least) three changes: -# - remove the `-o root' part in INSTALLSUID -# - set USE_TTY_GROUP=no -# - define DESTDIR - -# Select for ARCH one of intel, alpha, sparc, arm, m68k, mips -# Select for CPU i386 if the binaries must be able to run on an intel 386 -# (by default i486 code is generated, see below) -CPU=$(shell uname -m) -ARCH=$(shell echo $(CPU) | sed 's/i.86/intel/;s/arm.*/arm/') - -# If HAVE_PAM is set to "yes", then login, chfn, chsh, and newgrp -# will use PAM for authentication. Additionally, passwd will not be -# installed as it is not PAM aware. -HAVE_PAM=no - -# If HAVE_SHADOW is set to "yes", then login, chfn, chsh, newgrp, passwd, -# and vipw will not be built or installed from the login-utils -# subdirectory. -HAVE_SHADOW=yes - -# If HAVE_PASSWD is set to "yes", then passwd will not be built or -# installed from the login-utils subdirectory (but login, chfn, chsh, -# newgrp, and vipw *will* be installed). -HAVE_PASSWD=no - -# If you use chfn and chsh from this package, REQUIRE_PASSWORD will require -# non-root users to enter the account password before updating /etc/passwd. -REQUIRE_PASSWORD=yes -#REQUIRE_PASSWORD=no - -# If you use chsh from this package, ONLY_LISTED_SHELLS will require that -# the selected shell be listed in /etc/shells -- otherwise only a warning is -# printed. This prevents someone from setting their shell to /bin/false. -ONLY_LISTED_SHELLS=yes -#ONLY_LISTED_SHELLS=no - - -# If HAVE_SYSVINIT is set to "yes", then simpleinit and shutdown will not -# be built or installed from the login-utils subdirectory. (The shutdown -# and halt that come with the SysVinit package should be used with the init -# found in that package.) -HAVE_SYSVINIT=no - -# If HAVE_SYSVINIT_UTILS is set to "yes", then last, mesg, and wall will -# not be built or installed from the login-utils subdirectory. (The -# shutdown and init from the SysVinit package do not depend on the last, -# mesg, and wall from that package.) -HAVE_SYSVINIT_UTILS=no - -# If HAVE_WRITE is set to "yes", then write will not be built or -# installed from the misc-utils subdirectory. -# (There is a network aware write in netwrite from NetKit 0.16 or later.) -HAVE_WRITE=no - -# If HAVE_GETTY is set to "yes", then agetty will not be built or -# installed from the login-utils subdirectory. Note that agetty can -# co-exist with other gettys, so this option should never be used. -HAVE_GETTY=no - -# If USE_TTY_GROUP is set to "yes", then wall and write will be installed -# setgid to the "tty" group, and mesg will only set the group write bit. -# Note that this is only useful if login/xterm/etc. change the group of the -# user's tty to "tty" [The login in util-linux does this correctly, and -# xterm will do it correctly if X is compiled with USE_TTY_GROUP set -# properly.] -USE_TTY_GROUP=no - -# If HAVE_KILL is set to "yes", then kill will not be built or -# installed from the misc-utils subdirectory. -# (There is also a kill in the procps package.) -HAVE_KILL=no - -# If ALLOW_VCS_USE is set to "yes", then login will chown /dev/vcsN -# to the current user, allowing her to make a screendump and do other -# nifty things on the console, but also allowing him to keep an open -# file descriptor after logging out to trick the next user. -ALLOW_VCS_USE=yes - -# If HAVE_RESET is set to "yes", then reset won't be installed. The version -# of reset that comes with the ncurses package is less aggressive. -HAVE_RESET=yes - -# If HAVE_SLN is set to "yes", then sln won't be installed -# (but the man page sln.8 will be installed anyway). -# sln also comes with libc and glibc. -HAVE_SLN=no - -# If HAVE_FDUTILS is set to "yes", then setfdprm won't be installed. -HAVE_FDUTILS=no - -# If SILENT_PG is set to "yes", then pg will not ring the bell -# when an invalid key is pressed -SILENT_PG=no - -# If configure decides that Native Language Support (NLS) is available, -# it sets MAY_ENABLE_NLS in defines.h. If you don't want NLS, set -# DISABLE_NLS to "yes". -DISABLE_NLS=no - -# Different optimizations for different cpus. -# gcc 3.0 likes options -mcpu=i486 instead of -m486 -ifeq "$(ARCH)" "intel" - ifeq "$(HAVE_OLD_GCC)" "yes" - CPUHEAD=-m - else - CPUHEAD=-mcpu=i - endif - ifeq "$(CPU)" "i386" - CPUTAIL=386 - else - CPUTAIL=486 - endif - CPUOPT= $(CPUHEAD)$(CPUTAIL) - OPT= -pipe -O2 $(CPUOPT) -fomit-frame-pointer -else - ifeq "$(ARCH)" "arm" - OPT= -pipe -O2 -fsigned-char -fomit-frame-pointer - else - OPT= -O2 -fomit-frame-pointer - endif -endif - -WARNFLAGS = -Wall -Wmissing-prototypes -Wstrict-prototypes - -LIB=../lib - -ERR_O=$(LIB)/err.o - -# Set HAVE_SLANG to yes if you have slang (and prefer to use that for cfdisk) -# (If neither HAVE_NCURSES nor HAVE_SLANG is defined, cfdisk is not made.) -# HAVE_SLANG=yes -# There is a subdirectory /usr/include/slang containing slcurses.h -# SLANGFLAGS=-I/usr/include/slang -# No such subdirectory - slcurses.h lives in /usr/include -# (no extra definition required). -LIBSLANG=-lslang - -# -# Paths used for compilation (not all are actually used, see CFLAGS below) -# -DEV_DIR= /dev -ETC_DIR= /etc -SBIN_DIR= /sbin -USRSBIN_DIR= /usr/sbin -USRLIB_DIR= /usr/lib -USRBIN_DIR= /usr/bin -USRGAMES_DIR= /usr/games -USRSHAREMISC_DIR=/usr/share/misc -LOCALE_DIR= /usr/share/locale -BIN_DIR= /bin -VAR_PATH= /var -LOG_DIR= /var/log -MAN_DIR= /usr/share/man -INFO_DIR= /usr/share/info - -# -# Paths used for install -# -DEVDIR= $(DESTDIR)$(DEV_DIR) -ETCDIR= $(DESTDIR)$(ETC_DIR) -SBINDIR= $(DESTDIR)$(SBIN_DIR) -USRSBINDIR= $(DESTDIR)$(USRSBIN_DIR) -USRLIBDIR= $(DESTDIR)$(USRLIB_DIR) -USRBINDIR= $(DESTDIR)$(USRBIN_DIR) -USRGAMESDIR= $(DESTDIR)$(USRGAMES_DIR) -USRSHAREMISCDIR=$(DESTDIR)$(USRSHAREMISC_DIR) -LOCALEDIR= $(DESTDIR)$(LOCALE_DIR) -BINDIR= $(DESTDIR)$(BIN_DIR) -VARPATH= $(DESTDIR)$(VAR_PATH) -LOGDIR= $(DESTDIR)$(LOG_DIR) -MANDIR= $(DESTDIR)$(MAN_DIR) -MAN1DIR= $(MANDIR)/man1 -MAN3DIR= $(MANDIR)/man3 -MAN5DIR= $(MANDIR)/man5 -MAN6DIR= $(MANDIR)/man6 -MAN8DIR= $(MANDIR)/man8 -INFODIR= $(DESTDIR)$(INFO_DIR) - -# Directory for shutdown, halt, reboot, etc. -SHUTDOWNDIR= $(SBINDIR) - -# Modes -DIRMODE= 755 -BINMODE= 755 -MANMODE= 644 -DATMODE= 644 -INFOMODE= 644 -SUIDMODE= 4755 - -CHMOD= chmod -INSTALL= install -INSTALLDIR= $(INSTALL) -d -m $(DIRMODE) -INSTALLBIN= $(INSTALL) -m $(BINMODE) -INSTALLMAN= $(INSTALL) -m $(MANMODE) -INSTALLDAT= $(INSTALL) -m $(DATMODE) -INSTALLSUID= $(INSTALL) -m $(SUIDMODE) - -ifeq "$(DISABLE_NLS)" "yes" -NLSFLAGS = -DDISABLE_NLS -endif - -CFLAGS := $(OPT) -I$(LIB) $(WARNFLAGS) \ - $(CURSESFLAGS) $(SLANGFLAGS) $(NLSFLAGS) \ - -D_FILE_OFFSET_BITS=64 \ - -DSBINDIR=\"$(SBIN_DIR)\" \ - -DUSRSBINDIR=\"$(USRSBIN_DIR)\" \ - -DLOGDIR=\"$(LOG_DIR)\" \ - -DVARPATH=\"$(VAR_PATH)\" \ - -DLOCALEDIR=\"$(LOCALE_DIR)\" \ - $(CFLAGS) - - -%.o: %.c - $(CC) -c $(CFLAGS) $< -o $@ - -%: %.cc - $(CXX) $(CFLAGS) $< -o $@ - diff --git a/meta/packages/util-linux/files/debian-bug392236.patch b/meta/packages/util-linux/files/debian-bug392236.patch deleted file mode 100644 index fcd2046e34..0000000000 --- a/meta/packages/util-linux/files/debian-bug392236.patch +++ /dev/null @@ -1,203 +0,0 @@ -Index: util-linux-2.12r/fdisk/llseek.c -=================================================================== ---- util-linux-2.12r.orig/fdisk/llseek.c 2003-07-13 23:13:33.000000000 +0200 -+++ util-linux-2.12r/fdisk/llseek.c 2007-04-04 19:01:14.000000000 +0200 -@@ -14,30 +14,23 @@ - - #ifdef __linux__ - --#ifdef HAVE_LLSEEK --#include -- --#else /* HAVE_LLSEEK */ -+#include -+#ifndef HAVE_LLSEEK - - #if defined(__alpha__) || defined(__ia64__) || defined(__s390x__) - - #define my_llseek lseek - - #else --#include /* for __NR__llseek */ -- --static int _llseek (unsigned int, unsigned long, -- unsigned long, long long *, unsigned int); - --#ifdef __NR__llseek -+#ifdef SYS__llseek - --static _syscall5(int,_llseek,unsigned int,fd,unsigned long,offset_high, -- unsigned long, offset_low,long long *,result, -- unsigned int, origin) -+#define _llseek(fd, offset_high, offset_low, result, origin) \ -+ syscall(SYS__llseek, fd, offset_high, offset_low, result, origin) - - #else - --/* no __NR__llseek on compilation machine - might give it explicitly */ -+/* no SYS__llseek on compilation machine - might give it explicitly */ - static int _llseek (unsigned int fd, unsigned long oh, - unsigned long ol, long long *result, - unsigned int origin) { -Index: util-linux-2.12r/fdisk/sfdisk.c -=================================================================== ---- util-linux-2.12r.orig/fdisk/sfdisk.c 2005-01-04 23:31:57.000000000 +0100 -+++ util-linux-2.12r/fdisk/sfdisk.c 2007-04-04 19:01:14.000000000 +0200 -@@ -48,7 +48,7 @@ - #include - #include - #include --#include /* _syscall */ -+#include - #include "nls.h" - #include "common.h" - -@@ -177,9 +177,8 @@ - #endif - - #ifndef use_lseek --static __attribute__used --_syscall5(int, _llseek, unsigned int, fd, ulong, hi, ulong, lo, -- loff_t *, res, unsigned int, wh); -+#define _llseek(fd, hi, lo, res, wh) \ -+ syscall(SYS__llseek, fd, hi, lo, res, wh) - #endif - - static int -Index: util-linux-2.12r/lib/my_reboot.c -=================================================================== ---- util-linux-2.12r.orig/lib/my_reboot.c 1999-07-09 04:56:36.000000000 +0200 -+++ util-linux-2.12r/lib/my_reboot.c 2007-04-04 19:01:14.000000000 +0200 -@@ -23,10 +23,11 @@ - #else /* no USE_LIBC */ - - /* direct syscall version */ --#include -+#include - --#ifdef _syscall3 --_syscall3(int, reboot, int, magic, int, magic_too, int, cmd); -+#ifdef SYS_reboot -+#define reboot(magic, magic2, cmd) \ -+ syscall(SYS_reboot, magic, magic2, cmd) - #else - /* Let us hope we have a 3-argument reboot here */ - extern int reboot(int, int, int); -Index: util-linux-2.12r/misc-utils/setterm.c -=================================================================== ---- util-linux-2.12r.orig/misc-utils/setterm.c 2003-10-17 18:17:51.000000000 +0200 -+++ util-linux-2.12r/misc-utils/setterm.c 2007-04-04 19:01:14.000000000 +0200 -@@ -119,14 +119,13 @@ - - #if __GNU_LIBRARY__ < 5 - #ifndef __alpha__ --# include --#define __NR_klogctl __NR_syslog --_syscall3(int, klogctl, int, type, char*, buf, int, len); -+# include -+#define klogctl(type, buf, len) \ -+ syscall(SYS_syslog, type, buf, len) - #else /* __alpha__ */ - #define klogctl syslog - #endif - #endif --extern int klogctl(int type, char *buf, int len); - - /* Constants. */ - -Index: util-linux-2.12r/mount/swapon.c -=================================================================== ---- util-linux-2.12r.orig/mount/swapon.c 2004-12-22 10:50:19.000000000 +0100 -+++ util-linux-2.12r/mount/swapon.c 2007-04-04 19:01:14.000000000 +0200 -@@ -82,11 +82,11 @@ - #else - /* We want a swapon with two args, but have an old libc. - Build the kernel call by hand. */ --#include --static --_syscall2(int, swapon, const char *, path, int, flags); --static --_syscall1(int, swapoff, const char *, path); -+#include -+#define swapon(path, flags) \ -+ syscall(SYS_swapon, path, flags) -+#define swapoff(path) \ -+ syscall(SYS_swapoff, path) - #endif - #else - /* just do as libc says */ -Index: util-linux-2.12r/mount/umount.c -=================================================================== ---- util-linux-2.12r.orig/mount/umount.c 2007-04-04 19:01:14.000000000 +0200 -+++ util-linux-2.12r/mount/umount.c 2007-04-04 19:02:22.000000000 +0200 -@@ -37,14 +37,13 @@ - #else /* MNT_FORCE */ - - /* Does the present kernel source know about umount2? */ --#include --#ifdef __NR_umount2 -+#include -+#ifdef SYS_umount2 - --int umount2(const char *path, int flags); -+#define umount2(path, flags) \ -+ syscall(SYS_umount2, path, flags) - --_syscall2(int, umount2, const char *, path, int, flags); -- --#else /* __NR_umount2 */ -+#else /* SYS_umount2 */ - - static int - umount2(const char *path, int flags) { -@@ -52,7 +51,7 @@ - errno = ENOSYS; - return -1; - } --#endif /* __NR_umount2 */ -+#endif /* SYS_umount2 */ - - #if !defined(MNT_FORCE) - /* dare not try to include -- lots of errors */ -Index: util-linux-2.12r/partx/partx.c -=================================================================== ---- util-linux-2.12r.orig/partx/partx.c 2004-08-23 22:13:27.000000000 +0200 -+++ util-linux-2.12r/partx/partx.c 2007-04-04 19:01:14.000000000 +0200 -@@ -338,10 +338,9 @@ - #endif - - #ifdef NEED__llseek --#include /* _syscall */ --static --_syscall5(int, _llseek, uint, fd, ulong, hi, ulong, lo, -- long long *, res, uint, wh); -+#include -+#define _llseek(fd, hi, lo, res, wh) \ -+ syscall(SYS__llseek, fd, hi, lo, res, wh) - #endif - - static int -Index: util-linux-2.12r/sys-utils/dmesg.c -=================================================================== ---- util-linux-2.12r.orig/sys-utils/dmesg.c 2004-05-04 18:38:12.000000000 +0200 -+++ util-linux-2.12r/sys-utils/dmesg.c 2007-04-04 19:01:14.000000000 +0200 -@@ -29,7 +29,7 @@ - * Only function 3 is allowed to non-root processes. - */ - --#include -+#include - #include - #include - #include -@@ -38,8 +38,8 @@ - #if __GNU_LIBRARY__ < 5 - - #ifndef __alpha__ --# define __NR_klogctl __NR_syslog -- static inline _syscall3(int, klogctl, int, type, char *, b, int, len); -+# define klogctl(type, b, len) \ -+ syscall(SYS_syslog, type, b, len) - #else /* __alpha__ */ - #define klogctl syslog - #endif diff --git a/meta/packages/util-linux/files/defines.h b/meta/packages/util-linux/files/defines.h deleted file mode 100644 index 6ce6b86df5..0000000000 --- a/meta/packages/util-linux/files/defines.h +++ /dev/null @@ -1,10 +0,0 @@ -#define UTIL_LINUX_VERSION "2.12" -#define util_linux_version "util-linux-2.12" - -#define HAVE_blkpg_h -#define HAVE_kd_h -#define HAVE_locale_h -#define HAVE_langinfo_h -#define HAVE_sys_user_h -#define HAVE_asm_types_h -//#define NEED_tqueue_h diff --git a/meta/packages/util-linux/files/fdiskbsdlabel_thumb.diff b/meta/packages/util-linux/files/fdiskbsdlabel_thumb.diff deleted file mode 100644 index e6f82b5b46..0000000000 --- a/meta/packages/util-linux/files/fdiskbsdlabel_thumb.diff +++ /dev/null @@ -1,12 +0,0 @@ ---- util-linux-2.12r/fdisk/fdiskbsdlabel.h.orig 2006-01-21 23:53:51.000000000 +0100 -+++ util-linux-2.12r/fdisk/fdiskbsdlabel.h 2006-01-21 23:54:35.000000000 +0100 -@@ -52,6 +52,9 @@ - #elif defined (__s390__) || defined (__s390x__) - #define BSD_LABELSECTOR 1 - #define BSD_LABELOFFSET 0 -+#elif defined (__thumb__) -+#define BSD_LABELSECTOR 1 -+#define BSD_LABELOFFSET 0 - #else - #error unknown architecture - #endif diff --git a/meta/packages/util-linux/files/fix-make-c.patch b/meta/packages/util-linux/files/fix-make-c.patch deleted file mode 100644 index bf1082e85c..0000000000 --- a/meta/packages/util-linux/files/fix-make-c.patch +++ /dev/null @@ -1,41 +0,0 @@ -From: Karel Zak -Date: Mon, 11 May 2009 09:49:00 +0000 (+0200) -Subject: build-sys: fix "make -C" bug -X-Git-Url: http://git.kernel.org/?p=utils%2Futil-linux-ng%2Futil-linux-ng.git;a=commitdiff_plain;h=2ef7d41e6bbb7c842c06e911ffc562335a467b5d - -build-sys: fix "make -C" bug - -Running: - -./configure --with-fsprobe=builtin -make -C mount mount - -causes the following error: - -gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -include ../config.h --I../include -DLOCALEDIR=\"/home/matthew/util-linux-ng/share/locale\" --fsigned-char -I../libs/blkid/src -g -O2 -MT mount-setproctitle.o --MD -MP -MF .deps/mount-setproctitle.Tpo -c -o mount-setproctitle.o -`test -f '../lib/setproctitle.c' || echo './'`../lib/setproctitle.c mv --f .deps/mount-setproctitle.Tpo .deps/mount-setproctitle.Po -make -C -make: option requires an argument -- 'C' -Usage: make [options] [target] ... -... - -Reported-by: Matthew Burgess -Signed-off-by: Karel Zak ---- - -diff --git a/config/include-Makefile.am b/config/include-Makefile.am -index b42a0c3..d5da619 100644 ---- a/config/include-Makefile.am -+++ b/config/include-Makefile.am -@@ -17,6 +17,7 @@ dist_noinst_DATA = $(dist_man_MANS) - # Paths to in-tree libraries (use ul_ prefix to avoid possible collisions) - # - ul_libblkid_srcdir = $(top_srcdir)/libs/blkid/src -+ul_libblkid_builddir = $(top_builddir)/libs/blkid/src - ul_libblkid_la = $(top_builddir)/libs/blkid/src/libblkid.la - - $(ul_libblkid_la): diff --git a/meta/packages/util-linux/files/gcc34.patch b/meta/packages/util-linux/files/gcc34.patch deleted file mode 100644 index 8c4a20cdca..0000000000 --- a/meta/packages/util-linux/files/gcc34.patch +++ /dev/null @@ -1,23 +0,0 @@ - -# -# Patch managed by http://www.holgerschurig.de/patcher.html -# - ---- util-linux-2.12o/disk-utils/fsck.cramfs.c~gcc34 -+++ util-linux-2.12o/disk-utils/fsck.cramfs.c -@@ -77,15 +77,7 @@ - #define PAD_SIZE 512 - - #include --#ifdef PAGE_SIZE --#define PAGE_CACHE_SIZE ((int) PAGE_SIZE) --#elif defined __ia64__ --#define PAGE_CACHE_SIZE (16384) --#elif defined __alpha__ --#define PAGE_CACHE_SIZE (8192) --#else - #define PAGE_CACHE_SIZE (4096) --#endif - - /* Guarantee access to at least 8kB at a time */ - #define ROMBUFFER_BITS 13 diff --git a/meta/packages/util-linux/files/glibc-fix.patch b/meta/packages/util-linux/files/glibc-fix.patch deleted file mode 100644 index 6d0c2fcefa..0000000000 --- a/meta/packages/util-linux/files/glibc-fix.patch +++ /dev/null @@ -1,22 +0,0 @@ ---- /tmp/cmos.c 2006-11-21 11:38:55.000000000 +0100 -+++ util-linux-2.12r/hwclock/cmos.c 2006-11-21 11:41:45.458554000 +0100 -@@ -46,15 +46,16 @@ - - #include /* for geteuid() */ - #include /* for O_RDWR */ -+#include - #include - #include "../defines.h" /* for HAVE_sys_io_h */ - #include "nls.h" - - #if defined(__i386__) --#ifdef HAVE_sys_io_h --#include -+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 0) -+#include - #else --#include /* for inb, outb */ -+#include /* for inb, outb */ - #endif - #elif defined(__alpha__) - /* fails to compile, probably because of u8 etc */ diff --git a/meta/packages/util-linux/files/make_include b/meta/packages/util-linux/files/make_include deleted file mode 100644 index e6abcd91f7..0000000000 --- a/meta/packages/util-linux/files/make_include +++ /dev/null @@ -1,17 +0,0 @@ -VERSION=2.12 -CC=gcc -CFLAGS= -LDFLAGS= -HAVE_OLD_GCC=yes -HAVE_RAW_H=yes -HAVE_NCURSES=yes -CURSESFLAGS=-DNCH=1 -LIBCURSES=-lncurses -HAVE_TERMCAP=no -NEED_LIBCRYPT=yes -FOREIGN = --foreign-user -HAVE_XGETTEXT=yes -HAVE_OPENPTY=yes -HAVE_PIVOT_ROOT=yes -HAVE_GOOD_RPC=yes -HAVE_ZLIB=yes diff --git a/meta/packages/util-linux/files/optional-uuid.patch b/meta/packages/util-linux/files/optional-uuid.patch deleted file mode 100644 index 2d0ea43cd2..0000000000 --- a/meta/packages/util-linux/files/optional-uuid.patch +++ /dev/null @@ -1,55 +0,0 @@ -From: Karel Zak -Date: Tue, 12 May 2009 19:22:19 +0000 (+0200) -Subject: blkid: make libuuid optional -X-Git-Url: http://git.kernel.org/?p=utils%2Futil-linux-ng%2Futil-linux-ng.git;a=commitdiff_plain;h=cdd17c7a73cab10a34bf80616225b8215ac4e2ed - -blkid: make libuuid optional - -read.c:28:23: error: uuid/uuid.h: No such file or directory -make[3]: *** [read.lo] Error 1 -make[3]: *** Waiting for unfinished jobs.... - -Reported-by: Olaf -Signed-off-by: Karel Zak ---- - -diff --git a/libs/blkid/src/config.c b/libs/blkid/src/config.c -index 2e59218..9091736 100644 ---- a/libs/blkid/src/config.c -+++ b/libs/blkid/src/config.c -@@ -24,9 +24,6 @@ - #include - #endif - #include --#ifdef HAVE_LIBUUID --#include --#endif - #include - - #include "blkdev.h" -diff --git a/libs/blkid/src/evaluate.c b/libs/blkid/src/evaluate.c -index a9c9fba..f0ae126 100644 ---- a/libs/blkid/src/evaluate.c -+++ b/libs/blkid/src/evaluate.c -@@ -27,9 +27,6 @@ - #include - #endif - #include --#ifdef HAVE_LIBUUID --#include --#endif - #include - - #include "pathnames.h" -diff --git a/libs/blkid/src/read.c b/libs/blkid/src/read.c -index 4163874..b5e9cd0 100644 ---- a/libs/blkid/src/read.c -+++ b/libs/blkid/src/read.c -@@ -25,7 +25,6 @@ - #endif - - #include "blkidP.h" --#include "uuid/uuid.h" - - #ifdef HAVE_STRTOULL - #define STRTOULL strtoull /* defined in stdlib.h if you try hard enough */ diff --git a/meta/packages/util-linux/files/swapargs.h b/meta/packages/util-linux/files/swapargs.h deleted file mode 100644 index e960eef05f..0000000000 --- a/meta/packages/util-linux/files/swapargs.h +++ /dev/null @@ -1,3 +0,0 @@ -#define SWAPON_HAS_TWO_ARGS -#include -#include diff --git a/meta/packages/util-linux/files/umount.diff b/meta/packages/util-linux/files/umount.diff deleted file mode 100644 index 78330789ef..0000000000 --- a/meta/packages/util-linux/files/umount.diff +++ /dev/null @@ -1,19 +0,0 @@ -*** util-linux-2.12r/mount/umount.c.orig 2005-09-10 20:07:38.000000000 +0200 ---- util-linux-2.12r/mount/umount.c 2006-06-07 21:14:04.000000000 +0200 -*************** -*** 40,46 **** - #include - #ifdef __NR_umount2 - -! static int umount2(const char *path, int flags); - - _syscall2(int, umount2, const char *, path, int, flags); - ---- 40,46 ---- - #include - #ifdef __NR_umount2 - -! int umount2(const char *path, int flags); - - _syscall2(int, umount2, const char *, path, int, flags); - diff --git a/meta/packages/util-linux/files/uuid.patch b/meta/packages/util-linux/files/uuid.patch deleted file mode 100644 index 3208e0a865..0000000000 --- a/meta/packages/util-linux/files/uuid.patch +++ /dev/null @@ -1,22 +0,0 @@ -Index: util-linux-ng-2.15/libs/blkid/src/Makefile.am -=================================================================== ---- util-linux-ng-2.15.orig/libs/blkid/src/Makefile.am 2009-05-19 17:01:15.000000000 +0100 -+++ util-linux-ng-2.15/libs/blkid/src/Makefile.am 2009-05-19 17:08:11.000000000 +0100 -@@ -7,7 +7,7 @@ - common_ldadd = - - if HAVE_UUID --common_ldadd += -luuid #TODO $(UUID_LIBS) -+common_ldadd += -luuid - endif - - # includes -@@ -26,7 +26,7 @@ - $(top_srcdir)/lib/md5.c - - libblkid_la_LIBADD = probers/libblkid_probers.la $(common_ldadd) --libblkid_la_DEPENDENCIES = $(libblkid_la_LIBADD) blkid.sym -+libblkid_la_DEPENDENCIES = probers/libblkid_probers.la blkid.sym - - # TODO: for unknown reason "make distcheck" requires - # full path to the version script diff --git a/meta/packages/util-linux/util-linux-2.17.2/tls.patch b/meta/packages/util-linux/util-linux-2.17.2/tls.patch deleted file mode 100644 index bdb29cae1f..0000000000 --- a/meta/packages/util-linux/util-linux-2.17.2/tls.patch +++ /dev/null @@ -1,70 +0,0 @@ -Index: util-linux-ng-2.16/m4/tls.m4 -=================================================================== ---- util-linux-ng-2.16.orig/m4/tls.m4 2009-07-04 01:20:03.000000000 +0200 -+++ util-linux-ng-2.16/m4/tls.m4 2009-07-30 01:57:30.151697033 +0200 -@@ -18,31 +18,26 @@ - # version as well. - # - AC_DEFUN([AX_TLS], [ -- AC_MSG_CHECKING(for thread local storage (TLS) class) -- AC_CACHE_VAL(ac_cv_tls, [ -- ax_tls_keywords="__thread __declspec(thread) none" -- for ax_tls_keyword in $ax_tls_keywords; do -- case $ax_tls_keyword in -- none) ac_cv_tls=none ; break ;; -- *) -- AC_TRY_COMPILE( -- [#include -- static void -- foo(void) { -- static ] $ax_tls_keyword [ int bar; -- exit(1); -- }], -- [], -- [ac_cv_tls=$ax_tls_keyword ; break], -- ac_cv_tls=none -- ) -- esac -- done --]) -+ AC_CACHE_CHECK([for thread local storage (TLS) class], -+ ac_cv_tls, -+ [AC_LINK_IFELSE([__thread int a; int b; int main() { return a = b; }], -+ [chktls_save_LDFLAGS="$LDFLAGS" -+ LDFLAGS="-shared -Wl,--no-undefined $LDFLAGS" -+ chktls_save_CFLAGS="$CFLAGS" -+ CFLAGS="-fPIC $CFLAGS" -+ dnl If -shared works, test if TLS works in a shared library. -+ AC_LINK_IFELSE([int f() { return 0; }], -+ AC_LINK_IFELSE([__thread int a; int b; int f() { return a = b; }], -+ [ac_cv_tls=yes], -+ [ac_cv_tls=no]), -+ [ac_cv_tls=yes]) -+ CFLAGS="$chktls_save_CFLAGS" -+ LDFLAGS="$chktls_save_LDFLAGS"], [ac_cv_tls=no]) -+ ]) - -- if test "$ac_cv_tls" != "none"; then -- dnl AC_DEFINE([TLS], [], [If the compiler supports a TLS storage class define it to that here]) -- AC_DEFINE_UNQUOTED([TLS], $ac_cv_tls, [If the compiler supports a TLS storage class define it to that here]) -- fi -- AC_MSG_RESULT($ac_cv_tls) -+ AS_IF([test "x$ac_cv_tls" = "xyes"], -+ [AC_DEFINE([TLS], 1, -+ [Define this if the compiler supports __thread for Thread-Local Storage]) -+ $1], -+ [$2]) - ]) -Index: util-linux-ng-2.16/shlibs/uuid/src/gen_uuid.c -=================================================================== ---- util-linux-ng-2.16.orig/shlibs/uuid/src/gen_uuid.c 2009-07-30 02:31:48.518159459 +0200 -+++ util-linux-ng-2.16/shlibs/uuid/src/gen_uuid.c 2009-07-30 02:32:04.867871183 +0200 -@@ -99,7 +99,7 @@ - #endif - - #ifdef TLS --#define THREAD_LOCAL static TLS -+#define THREAD_LOCAL static __thread - #else - #define THREAD_LOCAL static - #endif diff --git a/meta/packages/util-linux/util-linux-2.17.2/uclibc-compile.patch b/meta/packages/util-linux/util-linux-2.17.2/uclibc-compile.patch deleted file mode 100644 index b2e8a8b95a..0000000000 --- a/meta/packages/util-linux/util-linux-2.17.2/uclibc-compile.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: util-linux-ng-2.16/misc-utils/cal.c -=================================================================== ---- util-linux-ng-2.16.orig/misc-utils/cal.c 2009-07-03 16:20:01.000000000 -0700 -+++ util-linux-ng-2.16/misc-utils/cal.c 2009-07-18 23:21:37.000000000 -0700 -@@ -407,7 +407,7 @@ - strcpy(day_headings,""); - strcpy(j_day_headings,""); - --#ifdef HAVE_LANGINFO_H -+#ifdef HAVE_LANGINFO_H && !defined(__UCLIBC__) - # define weekday(wd) nl_langinfo(ABDAY_1+wd) - #else - # define weekday(wd) _time_info->abbrev_wkday[wd] diff --git a/meta/packages/util-linux/util-linux-2.17.2/util-linux-ng-replace-siginterrupt.patch b/meta/packages/util-linux/util-linux-2.17.2/util-linux-ng-replace-siginterrupt.patch deleted file mode 100644 index 4b5eb73760..0000000000 --- a/meta/packages/util-linux/util-linux-2.17.2/util-linux-ng-replace-siginterrupt.patch +++ /dev/null @@ -1,23 +0,0 @@ -Index: util-linux-ng-2.14/login-utils/login.c -=================================================================== ---- util-linux-ng-2.14.orig/login-utils/login.c 2008-05-28 16:01:02.000000000 -0700 -+++ util-linux-ng-2.14/login-utils/login.c 2009-03-04 18:31:42.000000000 -0800 -@@ -358,6 +358,7 @@ - char *childArgv[10]; - char *buff; - int childArgc = 0; -+ struct sigaction act; - #ifdef HAVE_SECURITY_PAM_MISC_H - int retcode; - pam_handle_t *pamh = NULL; -@@ -373,7 +374,9 @@ - pid = getpid(); - - signal(SIGALRM, timedout); -- siginterrupt(SIGALRM,1); /* we have to interrupt syscalls like ioclt() */ -+ (void) sigaction(SIGALRM, NULL, &act); -+ act.sa_flags &= ~SA_RESTART; -+ sigaction(SIGALRM, &act, NULL); - alarm((unsigned int)timeout); - signal(SIGQUIT, SIG_IGN); - signal(SIGINT, SIG_IGN); diff --git a/meta/packages/util-linux/util-linux.inc b/meta/packages/util-linux/util-linux.inc deleted file mode 100644 index 571b53c99c..0000000000 --- a/meta/packages/util-linux/util-linux.inc +++ /dev/null @@ -1,237 +0,0 @@ -DESCRIPTION = "Util-linux is a suite of essential utilities for any Linux system." -SECTION = "base" - -# note that `lscpu' is under GPLv3+ -LICENSE = "GPLv2+ & LGPLv2.1+ & BSD" -LICENSE_util-linux-lscpu = "GPLv3+" - -LIC_FILES_CHKSUM = "file://README.licensing;md5=1530e36fe1304d4535513de90a290df9 \ - file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \ - file://licenses/COPYING.GPL;md5=8ca43cbc842c2336e835926c2166c28b \ - file://licenses/COPYING.UCB;md5=263860f8968d8bafa5392cab74285262 \ - file://getopt/COPYING;md5=8ca43cbc842c2336e835926c2166c28b" - -DEPENDS = "udev zlib ncurses virtual/libintl gettext" -DEPENDS_virtclass-native = "zlib-native ncurses-native lzo-native gettext-native" - -inherit autotools - -SRC_URI = "${KERNELORG_MIRROR}/pub/linux/utils/util-linux-ng/v${MAJOR_VERSION}/util-linux-ng-${PV}.tar.bz2 \ - file://MCONFIG \ - file://swapargs.h \ - file://defines.h \ - file://make_include \ - " - -PACKAGES_prepend = "util-linux-fdisk util-linux-cfdisk util-linux-sfdisk util-linux-swaponoff util-linux-losetup util-linux-umount util-linux-mount util-linux-readprofile " - -PACKAGES_virtclass-native = "" - -S = "${WORKDIR}/util-linux-ng-${PV}" - -EXTRA_OECONF = "--disable-use-tty-group --disable-makeinstall-chown --enable-elvtune --enable-init --enable-kill --enable-last \ - --enable-mesg --enable-partx --enable-raw --enable-rdev --enable-reset \ - --disable-login-utils --enable-write --enable-arch --enable-mount --with-fsprobe=builtin --enable-libuuid --enable-libblkid --enable-fsck" - -FILES_${PN}-doc += "/usr/share/getopt/getopt-*.*" - -FILES_util-linux-fdisk = "/sbin/fdisk.${PN}" -FILES_util-linux-cfdisk = "/sbin/cfdisk" -FILES_util-linux-sfdisk = "/sbin/sfdisk" -FILES_util-linux-swaponoff = "/sbin/swapon.${PN} /sbin/swapoff.${PN}" -FILES_util-linux-losetup = "/sbin/losetup.${PN}" -FILES_util-linux-mount = "/bin/mount.${PN}" -FILES_util-linux-umount = "/bin/umount.${PN}" -FILES_util-linux-readprofile = "/usr/sbin/readprofile" - -RRECOMMENDS_${PN} = "util-linux-fdisk util-linux-cfdisk util-linux-sfdisk util-linux-mount util-linux-readprofile " -RDEPENDS_${PN} = "util-linux-umount util-linux-swaponoff util-linux-losetup" - -RRECOMMENDS_${PN}_virtclass-native = "" -RDEPENDS_${PN}_virtclass-native = "" - -do_compile () { - set -e - install ${WORKDIR}/MCONFIG ${S}/MCONFIG - install ${WORKDIR}/make_include ${S}/make_include - install ${WORKDIR}/swapargs.h ${S}/mount/swapargs.h - install ${WORKDIR}/defines.h ${S}/defines.h - oe_runmake ARCH=${TARGET_ARCH} CPU= CPUOPT= \ - 'OPT=${CFLAGS}' 'CC=${CC}' 'LD=${LD}' \ - 'LDFLAGS=${LDFLAGS}' -} - -checklink() { - local targ link value - targ="$1" - link="$2" - ext="$3" - if test -h "$link" - then - value="$(readlink "$link")" - if test "$value" = "$targ" - then - rm "$link" - ln -s "$targ"."${PN}" "$link$ext" - return 0 - else - echo "$link: '$value' found '$targ' expected" >&2 - return 1 - fi - else - echo "$link: not a symbolic link" >&2 - return 1 - fi -} - -do_install () { - # with ccache the timestamps on compiled files may - # end up earlier than on their inputs, this allows - # for the resultant compilation in the install step. - oe_runmake ARCH=${TARGET_ARCH} CPU= CPUOPT= \ - 'OPT=${CFLAGS}' 'CC=${CC}' 'LD=${LD}' \ - 'LDFLAGS=${LDFLAGS}' 'DESTDIR=${D}' install - - mkdir -p ${D}${base_bindir} - - sbinprogs="agetty blockdev ctrlaltdel cfdisk vipw vigr" - sbinprogs_a="pivot_root hwclock mkswap shutdown mkfs.minix fsck.minix losetup swapon fdisk readprofile fsck blkid sln" - usrbinprogs_a="chfn chsh hexdump last logger mesg newgrp renice wall setsid chrt" - binprogs_a="dmesg kill more umount mount login reset" - - if [ "${base_sbindir}" != "${sbindir}" ]; then - mkdir -p ${D}${base_sbindir} - for p in $sbinprogs $sbinprogs_a; do - if [ -f "${D}${sbindir}/$p" ]; then - mv "${D}${sbindir}/$p" "${D}${base_sbindir}/$p" - fi - done - fi - - if [ "${base_bindir}" != "${bindir}" ]; then - mkdir -p ${D}${base_bindir} - for p in $binprogs_a; do - if [ -f "${D}${bindir}/$p" ]; then - mv "${D}${bindir}/$p" "${D}${base_bindir}/$p" - fi - done - fi - - for p in $usrbinprogs_a; do - if [ -f "${D}${bindir}/$p" ]; then - mv "${D}${bindir}/$p" "${D}${bindir}/$p.${PN}" - fi - done - - for p in $binprogs_a; do - if [ -f "${D}${base_bindir}/$p" ]; then - mv "${D}${base_bindir}/$p" "${D}${base_bindir}/$p.${PN}" - fi - done - - for p in $sbinprogs_a; do - if [ -f "${D}${base_sbindir}/$p" ]; then - mv "${D}${base_sbindir}/$p" "${D}${base_sbindir}/$p.${PN}" - fi - done - - install -d ${D}${sysconfdir}/default/ - echo 'MOUNTALL="-t nonfs,nosmbfs,noncpfs"' > ${D}${sysconfdir}/default/mountall - - ln -sf ${sbindir}/swapon ${D}${sbindir}/swapoff.${PN} - ln -sf ${sbindir}/shutdown ${D}${sbindir}/reboot.${PN} - ln -sf ${sbindir}/shutdown ${D}${sbindir}/halt.${PN} - ln -sf ${sbindir}/shutdown ${D}${sbindir}/fastboot - ln -sf ${sbindir}/shutdown ${D}${sbindir}/fasthalt -} - -pkg_postinst_${PN} () { - update-alternatives --install ${base_bindir}/dmesg dmesg dmesg.${PN} 100 - update-alternatives --install ${base_bindir}/kill kill kill.${PN} 100 - update-alternatives --install ${base_bindir}/more more more.${PN} 100 - update-alternatives --install ${base_sbindir}/mkswap mkswap mkswap.${PN} 100 - test -x ${base_sbindir}/pivot_root.${PN} && \ - update-alternatives --install ${base_sbindir}/pivot_root pivot_root pivot_root.${PN} 100 -# update-alternatives --install ${base_sbindir}/sln sln sln.${PN} 100 - update-alternatives --install ${base_sbindir}/mkfs.minix mkfs.minix mkfs.minix.${PN} 100 - update-alternatives --install ${base_sbindir}/fsck.minix fsck.minix fsck.minix.${PN} 100 - update-alternatives --install ${bindir}/hexdump hexdump hexdump.${PN} 100 - update-alternatives --install ${bindir}/last last last.${PN} 100 - update-alternatives --install ${bindir}/logger logger logger.${PN} 100 - update-alternatives --install ${bindir}/mesg mesg mesg.${PN} 100 - update-alternatives --install ${bindir}/renice renice renice.${PN} 100 - update-alternatives --install ${bindir}/wall wall wall.${PN} 100 - - # There seems to be problem, atleast on nslu2, with these, untill they are - # fixed the busybox ones have higher priority - update-alternatives --install ${base_sbindir}/hwclock hwclock hwclock.${PN} 10 - update-alternatives --install ${base_sbindir}/shutdown shutdown shutdown.${PN} 10 - update-alternatives --install ${base_sbindir}/reboot reboot reboot.${PN} 10 - update-alternatives --install ${base_sbindir}/halt halt halt.${PN} 10 -} - -pkg_prerm_${PN} () { - test -x ${base_sbindir}/pivot_root.${PN} && \ - update-alternatives --remove pivot_root pivot_root.${PN} - update-alternatives --remove dmesg dmesg.${PN} - update-alternatives --remove kill kill.${PN} - update-alternatives --remove more more.${PN} - update-alternatives --remove halt halt.${PN} - update-alternatives --remove hwclock hwclock.${PN} - update-alternatives --remove mkswap mkswap.${PN} - update-alternatives --remove reboot reboot.${PN} - update-alternatives --remove shutdown shutdown.${PN} -# update-alternatives --remove sln sln.${PN} - update-alternatives --remove mkfs.minix mkfs.minix.${PN} - update-alternatives --remove fsck.minix fsck.minix.${PN} - update-alternatives --remove hexdump hexdump.${PN} - update-alternatives --remove last last.${PN} - update-alternatives --remove logger logger.${PN} - update-alternatives --remove mesg mesg.${PN} - update-alternatives --remove renice renice.${PN} - update-alternatives --remove wall wall.${PN} -} - -pkg_postinst_util-linux-fdisk () { - update-alternatives --install ${base_sbindir}/fdisk fdisk fdisk.${PN} 100 -} - -pkg_prerm_util-linux-fdisk () { - update-alternatives --remove fdisk fdisk.${PN} -} - -pkg_postinst_util-linux-mount () { - update-alternatives --install ${base_bindir}/mount mount mount.${PN} 100 -} - -pkg_prerm_util-linux-mount () { - update-alternatives --remove mount mount.${PN} -} - -pkg_postinst_util-linux-umount () { - update-alternatives --install ${base_bindir}/umount umount umount.${PN} 100 -} - -pkg_prerm_util-linux-umount () { - update-alternatives --remove umount umount.${PN} -} - -pkg_postinst_util-linux-losetup () { - update-alternatives --install ${base_sbindir}/losetup losetup losetup.${PN} 100 -} - -pkg_prerm_util-linux-losetup () { - update-alternatives --remove losetup losetup.${PN} -} - -pkg_postinst_util-linux-swaponoff () { - update-alternatives --install ${base_sbindir}/swapoff swapoff swapoff.${PN} 100 - update-alternatives --install ${base_sbindir}/swapon swapon swapon.${PN} 100 -} - -pkg_prerm_util-linux-swaponoff () { - update-alternatives --remove swapoff swapoff.${PN} - update-alternatives --remove swapon swapon.${PN} -} - -BBCLASSEXTEND = "native" diff --git a/meta/packages/util-linux/util-linux_2.17.2.bb b/meta/packages/util-linux/util-linux_2.17.2.bb deleted file mode 100644 index 9efe64a6c6..0000000000 --- a/meta/packages/util-linux/util-linux_2.17.2.bb +++ /dev/null @@ -1,11 +0,0 @@ -MAJOR_VERSION = "2.17" -require util-linux.inc -PR="r0" - -SRC_URI += "file://uclibc-compile.patch \ - file://util-linux-ng-replace-siginterrupt.patch" - -# fallocate is glibc 2.10, fallocate64 is glibc 2.11 -# we need to disable it for older versions -EXTRA_OECONF += "ac_cv_func_fallocate=no" -EXTRA_OECONF_virtclass-native += "--disable-fallocate --disable-use-tty-group" diff --git a/meta/packages/vte/vte.inc b/meta/packages/vte/vte.inc deleted file mode 100644 index 6138f8ca01..0000000000 --- a/meta/packages/vte/vte.inc +++ /dev/null @@ -1,14 +0,0 @@ -DESCRIPTION = "vte is a virtual terminal emulator" -BUGTRACKER = "https://bugzilla.gnome.org/buglist.cgi?product=vte" -LICENSE = "LGPLv2.1+" -DEPENDS = " glib-2.0 gtk+ intltool-native ncurses" -RDEPENDS_libvte = "vte-termcap" - -inherit gnome - -EXTRA_OECONF = "--disable-gtk-doc --disable-python" - -PACKAGES =+ "libvte vte-termcap" -FILES_libvte = "${libdir}/*.so.* ${libexecdir}/gnome-pty-helper" -FILES_vte-dbg =+ ${libexecdir}/.debug" -FILES_vte-termcap = "${datadir}/vte/termcap" diff --git a/meta/packages/vte/vte_0.24.3.bb b/meta/packages/vte/vte_0.24.3.bb deleted file mode 100644 index 1953101f82..0000000000 --- a/meta/packages/vte/vte_0.24.3.bb +++ /dev/null @@ -1,5 +0,0 @@ -require vte.inc - -LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7" - -PR = "r0" diff --git a/meta/packages/watchdog/watchdog_5.9.bb b/meta/packages/watchdog/watchdog_5.9.bb deleted file mode 100644 index c768077f1d..0000000000 --- a/meta/packages/watchdog/watchdog_5.9.bb +++ /dev/null @@ -1,16 +0,0 @@ -DESCRIPTION = "Watchdog is a daemon that checks if your system is still \ -working. If programs in user space are not longer executed \ -it will reboot the system." -HOMEPAGE = "http://watchdog.sourceforge.net/" -BUGTRACKER = "http://sourceforge.net/tracker/?group_id=172030&atid=860194" - -LICENSE = "GPLv1+" -LIC_FILES_CHKSUM = "file://COPYING;md5=8a7258c60a71a2f04b67fb01f495889c" - -PR = "r0" - -SRC_URI = "${SOURCEFORGE_MIRROR}/watchdog/watchdog-${PV}.tar.gz" - -inherit autotools - -RRECOMMENDS_${PN} = "kernel-module-softdog" diff --git a/meta/packages/wbxml/files/no-doc-install.patch b/meta/packages/wbxml/files/no-doc-install.patch deleted file mode 100644 index 16084e60e6..0000000000 --- a/meta/packages/wbxml/files/no-doc-install.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- wbxml2-0.9.2/Makefile.am.old 2007-01-03 19:50:24.000000000 +0000 -+++ wbxml2-0.9.2/Makefile.am 2007-01-03 19:50:39.000000000 +0000 -@@ -24,9 +24,9 @@ - TODO\ - doxygen.h - --install-data-local: -- $(mkinstalldirs) $(DESTDIR)$(wbxmldocdir)/manual -- cp -Rp doc/* $(DESTDIR)$(wbxmldocdir)/manual -+#install-data-local: -+# $(mkinstalldirs) $(DESTDIR)$(wbxmldocdir)/manual -+# cp -Rp doc/* $(DESTDIR)$(wbxmldocdir)/manual - - dist-bz2: distdir - sed -e "s/tar.gz/tar.bz2/g" $(distdir)/wbxml2.spec > $(distdir)/wbxml2.spec.aux diff --git a/meta/packages/wbxml/wbxml2_0.9.2.bb b/meta/packages/wbxml/wbxml2_0.9.2.bb deleted file mode 100644 index b8ba8c747f..0000000000 --- a/meta/packages/wbxml/wbxml2_0.9.2.bb +++ /dev/null @@ -1,20 +0,0 @@ -DESCRIPTION = "parser for wbxml" -LICENSE = "GPLv2" - -DEPENDS = "libxml2 sed-native expat" - -SRC_URI = "${SOURCEFORGE_MIRROR}/wbxmllib/${P}.tar.gz \ - file://no-doc-install.patch;patch=1" - -inherit autotools pkgconfig - -do_configure_append() { - sed -i s:-I/usr/include::g Makefile - sed -i s:-I/usr/include::g */Makefile -} - -PACKAGES += "${PN}-tools" - -FILES_${PN}-tools = "${bindir}" -FILES_${PN} = "${libdir}/*.so.*" - diff --git a/meta/packages/webkit/files/GNUmakefile.am b/meta/packages/webkit/files/GNUmakefile.am deleted file mode 100644 index 39817f1dd5..0000000000 --- a/meta/packages/webkit/files/GNUmakefile.am +++ /dev/null @@ -1,856 +0,0 @@ -# Top-level Makefile rule for automake -# -# Variable conventions: -# -# _h_api = API headers that will be installed and included in the distribution -# _cppflags = flags that will be passed to the C/CXX Preprocessor -# _sources = sources that will be compiled and included in the distribution -# _built_sources = files that will be autogenerated by the build system and -# will be part of the _SOURCES primary -# _built_nosources = files that are autogenerated but are not part of the -# _SOURCES primary -# _cleanfiles = files that will be removed by the clean target -# -# Sources, headers, flags, etc... should be added to the respective variables -# with the above suffix, e.g, webcore-specific sources should go to -# webcore_sources, gtk port API and WebCoreSupport parts to webkitgtk_sources, -# etc... The only exceptions are the global variables. See Global Variables -# below. -# -# Global Variables -# -# global_cppflags = CPPFLAGS that apply to JSC, WebCore, and to any -# specific port -# global_cflags = CFLAGS that apply to JSC, WebCore, and to -# any specific port -# global_cxxflags = CXXFLAGS that apply to JSC, WebCore, and to any -# specific port - -srcdir = @srcdir@ -VPATH = @srcdir@ - -DISTCHECK_CONFIGURE_FLAGS = \ - --enable-introspection \ - --enable-gtk-doc - -# Directory for autogenerated sources -GENSOURCES := $(top_builddir)/DerivedSources -GENSOURCESWEBKITDOM := $(top_builddir)/DerivedSources/webkit -GENPROGRAMS := $(top_builddir)/Programs - -# Script for creating hash tables -CREATE_HASH_TABLE = $(srcdir)/JavaScriptCore/create_hash_table - -# Script for creating regexp tables -CREATE_REGEXP_TABLES = $(srcdir)/JavaScriptCore/create_regex_tables - -# Programs to run the WebKitGtk unit tests -GTESTER = gtester -GTESTER_REPORT = gtester-report - -# Libraries and support components -bin_PROGRAMS := -noinst_PROGRAMS := -noinst_HEADERS := -noinst_LTLIBRARIES := -lib_LTLIBRARIES := -IDL_BINDINGS := -TEST_PROGS := -POFILES := -MOFILES := -javascriptcore_h_api := -javascriptcore_cppflags:= -javascriptcore_sources := -javascriptcore_built_sources := -javascriptcore_built_nosources := -javascriptcore_dist := -webcore_cppflags := -webcore_sources := -webcore_libadd := -webcore_built_sources := -webcore_built_nosources := -webcore_dist := -webcoregtk_cppflags := -webcoregtk_sources := -IDL_BINDINGS_GDOM := -GDOM_AUTO_CLASSES := -GDOM_FIXED_CLASSES := -GDOM_CLASSES := -GDOM_HEADERS_BUILT := -GDOM_HEADERS_FIXED := -libgdom_h_api := -libgdom_cleanfiles := -webkitgtk_h_api := -webkitgtk_sources := -webkitgtk_cppflags := -webkitgtk_built_sources := -webkitgtk_built_nosources := -webkitgtk_cleanfiles := -global_cppflags := -global_cflags := -global_cxxflags := -corekit_cflags := -corekit_cppflags := -JSCORE_GIRSOURCES := -WEBKIT_GIRSOURCES := -typelibsdir := -typelibs_DATA := -EXTRA_DIST := -BUILT_SOURCES := -CLEANFILES := -DISTCLEANFILES := -MAINTAINERCLEANFILES := - -webcoregtk_cppflags += \ - -I$(top_builddir)/DerivedSources/webkit \ - -I$(srcdir)/WebCore/bindings \ - -I$(srcdir)/WebCore/bindings/gobject - -# CFLAGS/CXXFLAGS used by WebCore and WebKit -# -# gtk+.pc already include glib, cairo, freetype and pango CFLAGS -# Don't include them for now to reduce the noise when compiling -# $(GLIB_CFLAGS) $(CAIRO_CFLAGS) $(PANGO_CFLAGS) $(FREETYPE_CFLAGS) -corekit_cflags += \ - -fno-strict-aliasing \ - $(COVERAGE_CFLAGS) \ - $(ENCHANT_CFLAGS) \ - $(GAIL_CFLAGS) \ - $(GEOCLUE_CFLAGS) \ - $(GLIB_CFLAGS) \ - $(GSTREAMER_CFLAGS) \ - $(GTK_CFLAGS) \ - $(HILDON_CFLAGS) \ - $(LIBSOUP_CFLAGS) \ - $(LIBXML_CFLAGS) \ - $(LIBXSLT_CFLAGS) \ - $(SQLITE3_CFLAGS) \ - $(UNICODE_CFLAGS) \ - $(XT_CFLAGS) - -# When building webcore/webkit, we want WebCore/config.h and NOT -# JavaScriptCore/config.h, hence, it's important that WebCore/ should come first -# before JavaScriptCore in the include path. -corekit_cppflags += \ - $(global_cppflags) \ - $(webcore_cppflags) \ - $(webcoregtk_cppflags) \ - $(javascriptcore_cppflags) - -# For the Gtk port we want to use XP_UNIX both in X11 and Mac -if !TARGET_WIN32 -corekit_cppflags += -DXP_UNIX -endif - -# Default compiler flags -global_cflags += \ - -Wall -W -Wcast-align -Wchar-subscripts -Wreturn-type \ - -Wformat -Wformat-security -Wno-format-y2k -Wundef \ - -Wmissing-format-attribute -Wpointer-arith -Wwrite-strings \ - -Wno-unused-parameter -Wno-parentheses \ - -fno-exceptions - -global_cxxflags += \ - $(global_cflags) \ - $(SYMBOL_VISIBILITY_INLINES) \ - -fno-rtti - -# -no-undefined required for building DLLs on Windows -# It breaks the build on other platforms, so we use it conditionally -if OS_WIN32 -no_undefined = -no-undefined -version_script = -export-symbols-regex "^(webkit_|JS).*" -endif - -if OS_GNU -version_script = -Wl,--version-script,$(srcdir)/autotools/symbols.filter -endif - -# Shared libraries -lib_LTLIBRARIES += \ - libwebkitgtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la - -# Convenience libraries -noinst_LTLIBRARIES += \ - libJavaScriptCore.la - -# JavaScriptCore -javascriptcore_cppflags += \ - -I$(srcdir)/JavaScriptCore/ForwardingHeaders \ - -I$(srcdir)/JavaScriptCore/parser \ - -I$(srcdir)/JavaScriptCore/wtf \ - -I$(srcdir)/JavaScriptCore/wtf/gtk \ - -I$(srcdir)/JavaScriptCore/wtf/gobject \ - -I$(top_builddir)/DerivedSources - -nodist_EXTRA_libJavaScriptCore_la_SOURCES = \ - $(javascriptcore_built_nosources) - -nodist_libJavaScriptCore_la_SOURCES = \ - $(javascriptcore_built_sources) - -libJavaScriptCore_ladir = $(prefix)/include/webkit-@WEBKITGTK_API_VERSION@/JavaScriptCore -libJavaScriptCore_la_HEADERS = $(javascriptcore_h_api) - -libJavaScriptCore_la_SOURCES = \ - $(javascriptcore_sources) - -libJavaScriptCore_la_LIBADD = \ - $(UNICODE_LIBS) \ - $(GLIB_LIBS) \ - -lpthread - -libJavaScriptCore_la_CXXFLAGS = \ - $(global_cxxflags) \ - $(libJavaScriptCore_la_CFLAGS) - -libJavaScriptCore_la_CFLAGS = \ - -fstrict-aliasing \ - -O3 \ - $(global_cflags) \ - $(GLIB_CFLAGS) \ - $(UNICODE_CFLAGS) - -libJavaScriptCore_la_CPPFLAGS = \ - $(global_cppflags) \ - $(javascriptcore_cppflags) - -# WebKit -nodist_EXTRA_libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_SOURCES = \ - $(webcore_built_nosources) - -nodist_libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_SOURCES = \ - $(webcore_built_sources) \ - $(webkitgtk_built_sources) - -libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_ladir = $(prefix)/include/webkit-@WEBKITGTK_API_VERSION@/webkit -libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_HEADERS = \ - $(webkitgtk_h_api) \ - WebKit/gtk/webkit/webkitenumtypes.h - -libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_SOURCES = \ - $(webcore_sources) \ - $(webcoregtk_sources) \ - $(webkitgtk_sources) - -libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_CXXFLAGS = \ - $(global_cxxflags) \ - $(corekit_cflags) - -libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_CFLAGS = \ - $(global_cflags) \ - $(corekit_cflags) - -libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_CPPFLAGS = \ - $(corekit_cppflags) \ - $(webkitgtk_cppflags) \ - $(HILDON_CPPFLAGS) - -libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_LDFLAGS = \ - -version-info @LIBWEBKITGTK_VERSION@ \ - $(version_script) \ - $(no_undefined) - -libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_LIBADD = \ - -lpthread \ - libJavaScriptCore.la \ - libWebCoreJS.la \ - libgdom.la \ - $(webcore_ldflags) \ - $(CAIRO_LIBS) \ - $(COVERAGE_LDFLAGS) \ - $(ENCHANT_LIBS) \ - $(FREETYPE_LIBS) \ - $(GAIL_LIBS) \ - $(GEOCLUE_LIBS) \ - $(GLIB_LIBS) \ - $(GSTREAMER_LIBS) \ - $(GTK_LIBS) \ - $(HILDON_LIBS) \ - $(JPEG_LIBS) \ - $(LIBSOUP_LIBS) \ - $(LIBXML_LIBS) \ - $(LIBXSLT_LIBS) \ - $(PANGO_LIBS) \ - $(PNG_LIBS) \ - $(SQLITE3_LIBS) \ - $(UNICODE_LIBS) \ - $(XT_LIBS) - -libgdom_ladir = $(prefix)/include/webkit-@WEBKITGTK_API_VERSION@/webkit -nodist_libgdom_la_HEADERS = \ - $(libgdom_h_api) - -libgdom_cleanfiles += \ - $(top_builddir)/WebKit/gtk/webkit/webkitdomenumtypes.h \ - $(top_builddir)/libgdom.la \ - $(top_builddir)/stamp-webkitdomenumtypes.h - -# -# Extra checks and flags -global_cppflags += \ - -DBUILDING_CAIRO__=1 \ - -DBUILDING_GTK__=1 \ - -DWTF_CHANGES - -if USE_ICU_UNICODE -global_cppflags += \ - -DWTF_USE_ICU_UNICODE=1 -endif - -if USE_GLIB_UNICODE -global_cppflags += \ - -DWTF_USE_GLIB_UNICODE=1 -endif - -if !ENABLE_FAST_MALLOC -global_cppflags += \ - -DUSE_SYSTEM_MALLOC -endif - -if !ENABLE_DEBUG -global_cppflags += -DNDEBUG -global_cflags += $(SYMBOL_VISIBILITY) -else -webcoregtk_cppflags += \ - -DG_DISABLE_DEPRECATED \ - -DGDK_PIXBUF_DISABLE_DEPRECATED \ - -DGDK_DISABLE_DEPRECATED \ - -DGTK_DISABLE_DEPRECATED \ - -DPANGO_DISABLE_DEPRECATED - -# Might be useful in the future -# -DGDK_MULTIHEAD_SAFE \ -# -DGTK_MULTIHEAD_SAFE -endif - -if ENABLE_COVERAGE -global_cppflags += \ - -DGCC_GENERATE_TEST_COVERAGE_FILES \ - -DGCC_INSTRUMENT_PROGRAM_FLOW_ARCS -endif - -webkitgtk_h_api += \ - $(srcdir)/WebKit/gtk/webkit/webkit.h \ - $(srcdir)/WebKit/gtk/webkit/webkitdefines.h \ - $(srcdir)/WebKit/gtk/webkit/webkitdownload.h \ - $(srcdir)/WebKit/gtk/webkit/webkiterror.h \ - $(srcdir)/WebKit/gtk/webkit/webkithittestresult.h \ - $(srcdir)/WebKit/gtk/webkit/webkitnetworkrequest.h \ - $(srcdir)/WebKit/gtk/webkit/webkitnetworkresponse.h \ - $(srcdir)/WebKit/gtk/webkit/webkitsoupauthdialog.h \ - $(srcdir)/WebKit/gtk/webkit/webkitwebbackforwardlist.h \ - $(srcdir)/WebKit/gtk/webkit/webkitwebdatasource.h \ - $(srcdir)/WebKit/gtk/webkit/webkitwebframe.h \ - $(srcdir)/WebKit/gtk/webkit/webkitwebhistoryitem.h \ - $(srcdir)/WebKit/gtk/webkit/webkitwebinspector.h \ - $(srcdir)/WebKit/gtk/webkit/webkitwebnavigationaction.h \ - $(srcdir)/WebKit/gtk/webkit/webkitwebpolicydecision.h \ - $(srcdir)/WebKit/gtk/webkit/webkitgeolocationpolicydecision.h \ - $(srcdir)/WebKit/gtk/webkit/webkitwebresource.h \ - $(srcdir)/WebKit/gtk/webkit/webkitwebsettings.h \ - $(srcdir)/WebKit/gtk/webkit/webkitwebwindowfeatures.h \ - $(srcdir)/WebKit/gtk/webkit/webkitwebview.h \ - $(srcdir)/WebKit/gtk/webkit/webkitwebdatabase.h \ - $(srcdir)/WebKit/gtk/webkit/webkitsecurityorigin.h \ - $(top_builddir)/WebKit/gtk/webkit/webkitversion.h - -webkitgtk_built_sources += \ - DerivedSources/webkitenumtypes.cpp \ - DerivedSources/webkitdomenumtypes.cpp \ - DerivedSources/webkitmarshal.cpp \ - DerivedSources/webkitmarshal.h \ - WebKit/gtk/webkit/webkitenumtypes.h - -webkitgtk_sources += \ - WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp \ - WebKit/gtk/WebCoreSupport/ChromeClientGtk.h \ - WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp \ - WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.h \ - WebKit/gtk/WebCoreSupport/DocumentLoaderGtk.cpp \ - WebKit/gtk/WebCoreSupport/DocumentLoaderGtk.h \ - WebKit/gtk/WebCoreSupport/DragClientGtk.cpp \ - WebKit/gtk/WebCoreSupport/DragClientGtk.h \ - WebKit/gtk/WebCoreSupport/EditorClientGtk.cpp \ - WebKit/gtk/WebCoreSupport/EditorClientGtk.h \ - WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.cpp \ - WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.h \ - WebKit/gtk/WebCoreSupport/InspectorClientGtk.cpp \ - WebKit/gtk/WebCoreSupport/InspectorClientGtk.h \ - WebKit/gtk/WebCoreSupport/PasteboardHelperGtk.cpp \ - WebKit/gtk/WebCoreSupport/PasteboardHelperGtk.h \ - WebKit/gtk/webkit/webkitapplicationcache.cpp \ - WebKit/gtk/webkit/webkitdownload.cpp \ - WebKit/gtk/webkit/webkiterror.cpp \ - WebKit/gtk/webkit/webkithittestresult.cpp \ - WebKit/gtk/webkit/webkitnetworkrequest.cpp \ - WebKit/gtk/webkit/webkitnetworkresponse.cpp \ - WebKit/gtk/webkit/webkitprivate.cpp \ - WebKit/gtk/webkit/webkitprivate.h \ - WebKit/gtk/webkit/webkitsoupauthdialog.c \ - WebKit/gtk/webkit/webkitversion.cpp \ - WebKit/gtk/webkit/webkitwebbackforwardlist.cpp \ - WebKit/gtk/webkit/webkitwebdatasource.cpp \ - WebKit/gtk/webkit/webkitwebframe.cpp \ - WebKit/gtk/webkit/webkitwebhistoryitem.cpp \ - WebKit/gtk/webkit/webkitwebinspector.cpp \ - WebKit/gtk/webkit/webkitwebnavigationaction.cpp \ - WebKit/gtk/webkit/webkitwebpolicydecision.cpp \ - WebKit/gtk/webkit/webkitgeolocationpolicydecision.cpp \ - WebKit/gtk/webkit/webkitwebresource.cpp \ - WebKit/gtk/webkit/webkitwebdatabase.cpp \ - WebKit/gtk/webkit/webkitsecurityorigin.cpp \ - WebKit/gtk/webkit/webkitwebsettings.cpp \ - WebKit/gtk/webkit/webkitwebview.cpp \ - WebKit/gtk/webkit/webkitwebwindowfeatures.cpp \ - WebKit/gtk/webkit/webkitworkers.cpp - -webkitgtk_cppflags += \ - -DBUILDING_WEBKIT \ - -DPACKAGE_LOCALE_DIR=\"$(localedir)\" \ - -DDATA_DIR=\"${datadir}\" \ - -I$(srcdir)/WebKit/gtk \ - -I$(srcdir)/WebKit/gtk/WebCoreSupport \ - -I$(srcdir)/WebKit/gtk/webkit \ - -I$(top_builddir)/WebKit/gtk \ - -I$(top_builddir)/WebKit/gtk/webkit \ - -I$(GENSOURCESWEBKITDOM) - -webkitgtk_cleanfiles += \ - $(top_builddir)/stamp-webkitmarshal.cpp \ - $(top_builddir)/stamp-webkitmarshal.h \ - $(top_builddir)/stamp-webkitenumtypes.cpp \ - $(top_builddir)/stamp-webkitenumtypes.h \ - $(top_builddir)/Programs/GtkLauncher \ - $(top_builddir)/WebKit/gtk/docs/version.xml \ - $(top_builddir)/WebKit/gtk/docs/GNUmakefile \ - $(top_builddir)/WebKit/gtk/@WEBKITGTK_PC_NAME@-@WEBKITGTK_API_VERSION@.pc \ - $(top_builddir)/WebKit/gtk/webkit/webkitenumtypes.h \ - $(top_builddir)/WebKit/gtk/webkit/webkitversion.h - -pkgconfigdir = $(libdir)/pkgconfig -pkgconfig_DATA = WebKit/gtk/@WEBKITGTK_PC_NAME@-@WEBKITGTK_API_VERSION@.pc - -if ENABLE_INTROSPECTION - -JSCore-@WEBKITGTK_API_VERSION@.gir: $(builddir)/WebKit/gtk/JSCore-@WEBKITGTK_API_VERSION@.gir - cp $(builddir)/WebKit/gtk/JSCore-@WEBKITGTK_API_VERSION@.gir $(builddir)/ - -JSCORE_GIRSOURCES += JSCore-@WEBKITGTK_API_VERSION@.gir -WEBKIT_GIRSOURCES += WebKit-@WEBKITGTK_API_VERSION@.gir - -$(WEBKIT_GIRSOURCES): $(G_IR_SCANNER) $(JSCORE_GIRSOURCES) libwebkitgtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la - $(AM_V_GEN)$(G_IR_SCANNER) -v --namespace WebKit --nsversion=@WEBKITGTK_API_VERSION@ \ - --include=GObject-2.0 \ - --include=Gtk-@GTK_API_VERSION@ \ - --include=JSCore-@WEBKITGTK_API_VERSION@ \ - --include=Soup-2.4 \ - --library=webkitgtk-@WEBKITGTK_API_VERSION@ \ - --libtool="$(LIBTOOL)" \ - --pkg gobject-2.0 \ - --pkg gtk+-@GTK_API_VERSION@ \ - --pkg libsoup-2.4 \ - --output $@ \ - --add-include-path $(top_srcdir)/WebKit/gtk \ - --add-include-path $(builddir) \ - -I$(top_srcdir)/WebKit/gtk \ - -I$(top_builddir)/WebKit/gtk \ - -I$(top_builddir)/DerivedSources \ - -I$(top_srcdir)/JavaScriptCore/ForwardingHeaders \ - -I$(top_srcdir) \ - $(webkitgtk_h_api) \ - $(libgdom_h_api) - -girdir = $(datadir)/gir-1.0 -gir_DATA = $(WEBKIT_GIRSOURCES) $(JSCORE_GIRSOURCES) - -typelibsdir += $(libdir)/girepository-1.0 -typelibs_DATA += $(JSCORE_GIRSOURCES:.gir=.typelib) $(WEBKIT_GIRSOURCES:.gir=.typelib) - -%.typelib: %.gir $(G_IR_COMPILER) - $(AM_V_GEN)$(G_IR_COMPILER) --includedir $(top_srcdir)/WebKit/gtk --includedir $(builddir) $< -o $@ - -CLEANFILES += $(JSCORE_GIRSOURCES) $(WEBKIT_GIRSOURCES) $(typelibs_DATA) - -endif - -EXTRA_DIST += $(builddir)/WebKit/gtk/JSCore-@WEBKITGTK_API_VERSION@.gir - -WEBKIT_MARSHAL = $(GENSOURCES)/webkitmarshal -WEBKIT_MARSHAL_LIST = $(top_srcdir)/WebKit/gtk/webkitmarshal.list - -$(WEBKIT_MARSHAL).cpp: stamp-webkitmarshal.cpp - @true - -$(WEBKIT_MARSHAL).h: stamp-webkitmarshal.h - @true - -stamp-webkitmarshal.cpp: $(WEBKIT_MARSHAL_LIST) - $(AM_V_GEN) echo "extern \"C\" {" > $(WEBKIT_MARSHAL).cpp && \ - $(GLIB_GENMARSHAL) --prefix=webkit_marshal $(WEBKIT_MARSHAL_LIST) --body >> $(WEBKIT_MARSHAL).cpp && echo '}' >> $(WEBKIT_MARSHAL).cpp && \ - echo timestamp > $(@F) - -stamp-webkitmarshal.h: $(WEBKIT_MARSHAL_LIST) - $(AM_V_GEN)$(GLIB_GENMARSHAL) --prefix=webkit_marshal $(WEBKIT_MARSHAL_LIST) --header > $(WEBKIT_MARSHAL).h && \ - echo timestamp > $(@F) - -WebKit/gtk/webkit/webkitenumtypes.h: stamp-webkitenumtypes.h - @true -stamp-webkitenumtypes.h: $(webkitgtk_h_api) GNUmakefile - $(AM_V_GEN)glib-mkenums \ - --fhead "#ifndef WEBKIT_ENUM_TYPES_H\n" \ - --fhead "#define WEBKIT_ENUM_TYPES_H\n\n" \ - --fhead "#include \n\n" \ - --fhead "#include \n\n" \ - --fhead "G_BEGIN_DECLS\n\n" \ - --ftail "G_END_DECLS\n\n" \ - --ftail "#endif\n" \ - --fprod "#include \n\n" \ - --eprod "#define WEBKIT_TYPE_@ENUMSHORT@ @enum_name@_get_type()\n\n" \ - --eprod "WEBKIT_API GType\n@enum_name@_get_type(void);\n\n" \ - $(webkitgtk_h_api) | \ - sed 's,web_kit,webkit,' | \ - sed 's,WEBKIT_TYPE_KIT,WEBKIT_TYPE,' \ - > xgen-gth \ - && (cmp -s xgen-gth WebKit/gtk/webkit/webkitenumtypes.h || cp xgen-gth WebKit/gtk/webkit/webkitenumtypes.h) \ - && rm -f xgen-gth \ - && echo timestamp > $(@F) - -DerivedSources/webkitenumtypes.cpp: $(webkitgtk_h_api) GNUmakefile - $(AM_V_GEN)glib-mkenums \ - --fhead "#include \n" \ - --fhead "#include \n" \ - --fhead "#include \"$(top_builddir)/WebKit/gtk/webkit/webkitenumtypes.h\"\n\n" \ - --fhead "extern \"C\" {\n\n" \ - --fprod "\n/* enumerations from \"@filename@\" */" \ - --vhead "static const G@Type@Value _@enum_name@_values[] = {" \ - --vprod " { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \ - --vtail " { 0, NULL, NULL }\n};\n\n" \ - --vtail "GType @enum_name@_get_type(void)\n{\n" \ - --vtail " static GType type = 0;\n\n" \ - --vtail " if (!type)\n" \ - --vtail " type = g_@type@_register_static(\"@EnumName@\", _@enum_name@_values);\n\n" \ - --vtail " return type;\n}\n\n" \ - --ftail "}\n" \ - $(webkitgtk_h_api) | \ - sed 's,web_kit,webkit,' \ - > xgen-gtc \ - && cp xgen-gtc $@ \ - && rm -f xgen-gtc - -WebKit/gtk/webkit/webkitdomenumtypes.h: stamp-webkitdomenumtypes.h - @true -stamp-webkitdomenumtypes.h: $(libgdom_h_api) GNUmakefile - $(AM_V_GEN)glib-mkenums \ - --fhead "#ifndef WEBKIT_DOM_ENUM_TYPES_H\n" \ - --fhead "#define WEBKIT_DOM_ENUM_TYPES_H\n\n" \ - --fhead "#include \n\n" \ - --fhead "G_BEGIN_DECLS\n\n" \ - --ftail "G_END_DECLS\n\n" \ - --ftail "#endif\n" \ - --fprod "#include \n\n" \ - --eprod "#define WEBKIT_DOM_TYPE_@ENUMSHORT@ @enum_name@_get_type()\n\n" \ - --eprod "WEBKIT_API GType\n@enum_name@_get_type(void);n\n" \ - $(libgdom_h_api) | \ - sed 's,web_kit,webkit_dom,' | \ - sed 's,WEBKIT_DOM_TYPE_KIT,WEBKIT_DOM_TYPE,' \ - > xgen-cgth \ - && (cmp -s xgen-cgth WebKit/gtk/webkit/webkitdomenumtypes.h || cp xgen-cgth WebKit/gtk/webkit/webkitdomenumtypes.h) \ - && rm -f xgen-cgth \ - && echo timestamp > $(@F) - -DerivedSources/webkitdomenumtypes.cpp: $(top_builddir)/WebKit/gtk/webkit/webkitdomenumtypes.h $(libgdom_h_api) GNUmakefile - $(AM_V_GEN)glib-mkenums \ - --fhead "#include \n" \ - --fhead "#include \n" \ - --fhead "#include \"$(top_builddir)/WebKit/gtk/webkit/webkitdomenumtypes.h\"\n\n" \ - --fhead "extern \"C\" {\n\n" \ - --fprod "\n/* enumerations from \"@filename@\" */" \ - --vhead "static const G@Type@Value _@enum_name@_values] = {" \ - --vprod " { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \ - --vtail " { 0, NULL, NULL }\n};\n\n" \ - --vtail "GType @enum_name@_get_type(void)\n{\n" \ - --vtail " static GType type = 0;\n\n" \ - --vtail " if (!type)\n" \ - --vtail " type = g_@type@_register_static(\"@EnumName@\", _@enum_name@_values);\n\n" \ - --vtail " return type;\n}\n\n" \ - --ftail "}\n" \ - $(libgdom_h_api) | \ - sed 's,web_kit,webkitdom,' \ - > xgen-cgtc \ - && cp xgen-cgtc $@ \ - && rm -f xgen-cgtc - -# Files that will be distributed -EXTRA_DIST += \ - $(srcdir)/gtk-doc.make \ - WebKit/LICENSE \ - $(javascriptcore_dist) \ - $(webcore_dist) \ - $(srcdir)/autotools/symbols.filter \ - $(srcdir)/WebKit/gtk/ChangeLog \ - $(srcdir)/WebKit/gtk/NEWS \ - $(srcdir)/WebKit/gtk/webkitmarshal.list \ - $(srcdir)/WebKit/gtk/docs/GNUmakefile.* \ - $(srcdir)/WebKit/gtk/docs/webkitenvironment.xml \ - $(srcdir)/WebKit/gtk/docs/webkitgtk-docs.sgml \ - $(srcdir)/WebKit/gtk/docs/webkitgtk-sections.txt \ - $(srcdir)/WebKit/gtk/docs/version.xml.in \ - $(srcdir)/WebKit/gtk/po/* \ - $(srcdir)/WebKit/gtk/resources/* \ - $(srcdir)/WebKit/gtk/tests/resources/* \ - $(srcdir)/WebKit/gtk/tests/test_utils.h - -# extra resource files -resourcesdir = ${datadir}/webkit-@WEBKITGTK_API_VERSION@/resources -dist_resources_DATA = \ - $(shell ls $(srcdir)/WebKit/gtk/resources/*.html) - -# END WEBKIT GTK+ - -# Include module makefiles -include JavaScriptCore/GNUmakefile.am -include WebCore/GNUmakefile.am -include WebKitTools/GNUmakefile.am -include WebKit/gtk/po/GNUmakefile.am - -# Build unit tests -noinst_PROGRAMS += $(TEST_PROGS) - -webkit_tests_cflags = \ - -fno-strict-aliasing \ - -I$(srcdir)/JavaScriptCore/ForwardingHeaders \ - -I$(srcdir)/WebKit/gtk \ - -I$(top_builddir)/WebKit/gtk \ - -I$(top_builddir)/DerivedSources \ - -I$(top_srcdir)/WebCore/bindings \ - -I$(top_srcdir)/WebCore/bindings/gobject \ - $(global_cflags) \ - $(GLIB_CFLAGS) \ - $(GTK_CFLAGS) \ - $(LIBSOUP_CFLAGS) - -webkit_tests_ldadd = \ - libwebkitgtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la \ - $(GTK_LIBS) \ - $(GLIB_LIBS) \ - $(LIBSOUP_LIBS) - -webkit_tests_ldflags = \ - -no-install \ - -no-fast-install - -TEST_PROGS += \ - Programs/unittests/testdomdocument \ - Programs/unittests/testdomdomwindow \ - Programs/unittests/testdomnode \ - Programs/unittests/testhttpbackend \ - Programs/unittests/testloading \ - Programs/unittests/testglobals \ - Programs/unittests/testmimehandling \ - Programs/unittests/testnetworkrequest \ - Programs/unittests/testnetworkresponse \ - Programs/unittests/testwebframe \ - Programs/unittests/testwebbackforwardlist \ - Programs/unittests/testwebhistoryitem \ - Programs/unittests/testwindow \ - Programs/unittests/testdownload \ - Programs/unittests/testatk \ - Programs/unittests/testatkroles \ - Programs/unittests/testhittestresult \ - Programs/unittests/testwebsettings \ - Programs/unittests/testwebresource \ - Programs/unittests/testwebdatasource \ - Programs/unittests/testwebview \ - Programs/unittests/testkeyevents \ - Programs/unittests/testcopyandpaste - -# Add additional tests here -Programs_unittests_testdomdocument_SOURCES = WebKit/gtk/tests/testdomdocument.c -Programs_unittests_testdomdocument_CFLAGS = $(webkit_tests_cflags) -Programs_unittests_testdomdocument_LDADD = $(webkit_tests_ldadd) -Programs_unittests_testdomdocument_LDFLAGS = $(webkit_tests_ldflags) - -Programs_unittests_testdomdomwindow_SOURCES = WebKit/gtk/tests/testdomdomwindow.c -Programs_unittests_testdomdomwindow_CFLAGS = $(webkit_tests_cflags) -Programs_unittests_testdomdomwindow_LDADD = $(webkit_tests_ldadd) -Programs_unittests_testdomdomwindow_LDFLAGS = $(webkit_tests_ldflags) - -Programs_unittests_testdomnode_SOURCES = WebKit/gtk/tests/testdomnode.c -Programs_unittests_testdomnode_CFLAGS = $(webkit_tests_cflags) -Programs_unittests_testdomnode_LDADD = $(webkit_tests_ldadd) -Programs_unittests_testdomnode_LDFLAGS = $(webkit_tests_ldflags) - -Programs_unittests_testhttpbackend_SOURCES = WebKit/gtk/tests/testhttpbackend.c -Programs_unittests_testhttpbackend_CFLAGS = $(webkit_tests_cflags) -Programs_unittests_testhttpbackend_LDADD = $(webkit_tests_ldadd) -Programs_unittests_testhttpbackend_LDFLAGS = $(webkit_tests_ldflags) - -Programs_unittests_testglobals_SOURCES = WebKit/gtk/tests/testglobals.c -Programs_unittests_testglobals_CFLAGS = $(webkit_tests_cflags) -Programs_unittests_testglobals_LDADD = $(webkit_tests_ldadd) -Programs_unittests_testglobals_LDFLAGS = $(webkit_tests_ldflags) - -Programs_unittests_testloading_SOURCES = WebKit/gtk/tests/testloading.c -Programs_unittests_testloading_CFLAGS = $(webkit_tests_cflags) -Programs_unittests_testloading_LDADD = $(webkit_tests_ldadd) -Programs_unittests_testloading_LDFLAGS = $(webkit_tests_ldflags) - -Programs_unittests_testmimehandling_SOURCES = WebKit/gtk/tests/testmimehandling.c WebKit/gtk/tests/test_utils.c -Programs_unittests_testmimehandling_CFLAGS = $(webkit_tests_cflags) -Programs_unittests_testmimehandling_LDADD = $(webkit_tests_ldadd) -Programs_unittests_testmimehandling_LDFLAGS = $(webkit_tests_ldflags) - -Programs_unittests_testnetworkrequest_SOURCES = WebKit/gtk/tests/testnetworkrequest.c -Programs_unittests_testnetworkrequest_CFLAGS = $(webkit_tests_cflags) -Programs_unittests_testnetworkrequest_LDADD = $(webkit_tests_ldadd) -Programs_unittests_testnetworkrequest_LDFLAGS = $(webkit_tests_ldflags) - -Programs_unittests_testnetworkresponse_SOURCES = WebKit/gtk/tests/testnetworkresponse.c -Programs_unittests_testnetworkresponse_CFLAGS = $(webkit_tests_cflags) -Programs_unittests_testnetworkresponse_LDADD = $(webkit_tests_ldadd) -Programs_unittests_testnetworkresponse_LDFLAGS = $(webkit_tests_ldflags) - -Programs_unittests_testwebframe_SOURCES = WebKit/gtk/tests/testwebframe.c -Programs_unittests_testwebframe_CFLAGS = $(webkit_tests_cflags) -Programs_unittests_testwebframe_LDADD = $(webkit_tests_ldadd) -Programs_unittests_testwebframe_LDFLAGS = $(webkit_tests_ldflags) - -Programs_unittests_testwebbackforwardlist_SOURCES = WebKit/gtk/tests/testwebbackforwardlist.c -Programs_unittests_testwebbackforwardlist_CFLAGS = $(webkit_tests_cflags) -Programs_unittests_testwebbackforwardlist_LDADD = $(webkit_tests_ldadd) -Programs_unittests_testwebbackforwardlist_LDFLAGS = $(webkit_tests_ldflags) - -Programs_unittests_testwebhistoryitem_SOURCES = WebKit/gtk/tests/testwebhistoryitem.c -Programs_unittests_testwebhistoryitem_CFLAGS = $(webkit_tests_cflags) -Programs_unittests_testwebhistoryitem_LDADD = $(webkit_tests_ldadd) -Programs_unittests_testwebhistoryitem_LDFLAGS = $(webkit_tests_ldflags) - -Programs_unittests_testwindow_SOURCES = WebKit/gtk/tests/testwindow.c -Programs_unittests_testwindow_CFLAGS = $(webkit_tests_cflags) -Programs_unittests_testwindow_LDADD = $(webkit_tests_ldadd) -Programs_unittests_testwindow_LDFLAGS = $(webkit_tests_ldflags) - -Programs_unittests_testdownload_SOURCES = WebKit/gtk/tests/testdownload.c -Programs_unittests_testdownload_CFLAGS = $(webkit_tests_cflags) -Programs_unittests_testdownload_LDADD = $(webkit_tests_ldadd) -Programs_unittests_testdownload_LDFLAGS = $(webkit_tests_ldflags) - -Programs_unittests_testatk_SOURCES = WebKit/gtk/tests/testatk.c -Programs_unittests_testatk_CFLAGS = $(webkit_tests_cflags) -Programs_unittests_testatk_LDADD = $(webkit_tests_ldadd) -Programs_unittests_testatk_LDFLAGS = $(webkit_tests_ldflags) - -Programs_unittests_testatkroles_SOURCES = WebKit/gtk/tests/testatkroles.c -Programs_unittests_testatkroles_CFLAGS = $(webkit_tests_cflags) -Programs_unittests_testatkroles_LDADD = $(webkit_tests_ldadd) -Programs_unittests_testatkroles_LDFLAGS = $(webkit_tests_ldflags) - -Programs_unittests_testwebsettings_SOURCES = WebKit/gtk/tests/testwebsettings.c -Programs_unittests_testwebsettings_CFLAGS = $(webkit_tests_cflags) -Programs_unittests_testwebsettings_LDADD = $(webkit_tests_ldadd) -Programs_unittests_testwebsettings_LDFLAGS = $(webkit_tests_ldflags) - -Programs_unittests_testwebresource_SOURCES = WebKit/gtk/tests/testwebresource.c -Programs_unittests_testwebresource_CFLAGS = $(webkit_tests_cflags) -Programs_unittests_testwebresource_LDADD = $(webkit_tests_ldadd) - -Programs_unittests_testwebdatasource_SOURCES = WebKit/gtk/tests/testwebdatasource.c -Programs_unittests_testwebdatasource_CFLAGS = $(webkit_tests_cflags) -Programs_unittests_testwebdatasource_LDADD = $(webkit_tests_ldadd) - -Programs_unittests_testwebview_SOURCES = WebKit/gtk/tests/testwebview.c WebKit/gtk/tests/test_utils.c -Programs_unittests_testwebview_CFLAGS = $(webkit_tests_cflags) -Programs_unittests_testwebview_LDADD = $(webkit_tests_ldadd) -Programs_unittests_testwebview_LDFLAGS = $(webkit_tests_ldflags) - -Programs_unittests_testhittestresult_SOURCES = WebKit/gtk/tests/testhittestresult.c -Programs_unittests_testhittestresult_CFLAGS = $(webkit_tests_cflags) -Programs_unittests_testhittestresult_LDADD = $(webkit_tests_ldadd) - -Programs_unittests_testkeyevents_SOURCES = WebKit/gtk/tests/testkeyevents.c -Programs_unittests_testkeyevents_CFLAGS = $(webkit_tests_cflags) -Programs_unittests_testkeyevents_LDADD = $(webkit_tests_ldadd) -Programs_unittests_testkeyevents_LDFLAGS = $(webkit_tests_ldflags) - -Programs_unittests_testcopyandpaste_SOURCES = WebKit/gtk/tests/testcopyandpaste.c -Programs_unittests_testcopyandpaste_CFLAGS = $(webkit_tests_cflags) -Programs_unittests_testcopyandpaste_LDADD = $(webkit_tests_ldadd) -Programs_unittests_testcopyandpaste_LDFLAGS = $(webkit_tests_ldflags) - -# Autogenerated sources -BUILT_SOURCES += \ - $(javascriptcore_built_sources) \ - $(javascriptcore_built_nosources) \ - $(webcore_built_sources) \ - $(webcore_built_nosources) \ - $(webkitgtk_built_sources) \ - $(webkitgtk_built_nosources) \ - $(gdom_built_nosources) - -# Project-wide clean rules -# Files that will be cleaned -CLEANFILES += \ - $(BUILT_SOURCES) \ - $(webkitgtk_cleanfiles) \ - $(libgdom_cleanfiles) - -DISTCLEANFILES += \ - $(CLEANFILES) - -MAINTAINERCLEANFILES += \ - $(CLEANFILES) \ - $(srcdir)/aconfig.h.in \ - $(srcdir)/autotools/config.* \ - $(srcdir)/autotools/compile \ - $(srcdir)/autotools/depcomp \ - $(srcdir)/autotools/install-sh \ - $(srcdir)/autotools/missing \ - $(srcdir)/configure \ - $(srcdir)/GNUmakefile.in \ - $(srcdir)/INSTALL \ - $(srcdir)/README \ - $(top_builddir)/config.* - -# Older automake versions (1.7) place Plo files in a different place so we need -# to create the output directory manually. -all-local: stamp-po - $(mkdir_p) $(top_builddir)/$(DEPDIR)/DerivedSources - -# remove built sources and program directories -clean-local: - -rm -rf $(GENPROGRAMS) - -maintainer-clean-local: distclean-local - -distclean-local: - -rm -rf $(GENSOURCES) $(GENPROGRAMS) - -dist-hook: - cp $(srcdir)/WebKit/gtk/NEWS $(distdir)/ - -install-data-local: po-install-data-local - -installdirs-data-local: po-installdirs-data-local - -uninstall-local: po-uninstall-local - -# Run all tests in cwd -# FIXME: we should run this under xvfb -test: $(TEST_PROGS) - $(GTESTER) --verbose $(TEST_PROGS); - -# test-report: run tests in cwd and generate report -# full-report: run tests in cwd with -m perf and -m slow and generate report -# perf-report: run tests in cwd with -m perf and generate report -test-report full-report perf-report: $(TEST_PROGS) - @ case $@ in \ - test-report) test_options="-k";; \ - full-report) test_options="-k -m=perf";; \ - perf-report) test_options="-k -m=perf -m=slow";; \ - esac ; \ - $(GTESTER) --verbose $$test_options -o test-report.xml $(TEST_PROGS); \ - $(GTESTER_REPORT) test-report.xml > test-report.html ; - -.PHONY: test test-report perf-report full-report -check-local: test diff --git a/meta/packages/webkit/files/Makefile b/meta/packages/webkit/files/Makefile deleted file mode 100644 index 1e50d1d358..0000000000 --- a/meta/packages/webkit/files/Makefile +++ /dev/null @@ -1,17 +0,0 @@ -MODULES = JavaScriptCore JavaScriptGlue WebCore WebKit WebKit2 WebKitTools - -all: - @for dir in $(MODULES); do ${MAKE} $@ -C $$dir; exit_status=$$?; \ - if [ $$exit_status -ne 0 ]; then exit $$exit_status; fi; done - -debug d development dev develop: - @for dir in $(MODULES); do ${MAKE} $@ -C $$dir; exit_status=$$?; \ - if [ $$exit_status -ne 0 ]; then exit $$exit_status; fi; done - -release r deployment dep deploy: - @for dir in $(MODULES); do ${MAKE} $@ -C $$dir; exit_status=$$?; \ - if [ $$exit_status -ne 0 ]; then exit $$exit_status; fi; done - -clean: - @for dir in $(MODULES); do ${MAKE} $@ -C $$dir; exit_status=$$?; \ - if [ $$exit_status -ne 0 ]; then exit $$exit_status; fi; done diff --git a/meta/packages/webkit/files/Makefile.shared b/meta/packages/webkit/files/Makefile.shared deleted file mode 100644 index aa9fa728d6..0000000000 --- a/meta/packages/webkit/files/Makefile.shared +++ /dev/null @@ -1,18 +0,0 @@ -SCRIPTS_PATH ?= ../WebKitTools/Scripts -XCODE_OPTIONS = `perl -I$(SCRIPTS_PATH) -Mwebkitdirs -e 'print XcodeOptionString()'` $(ARGS) - -all: - ( xcodebuild $(OTHER_OPTIONS) $(XCODE_OPTIONS) | grep -v setenv && exit $${PIPESTATUS[0]} ) - -debug d development dev develop: force - $(SCRIPTS_PATH)/set-webkit-configuration --debug - ( xcodebuild $(OTHER_OPTIONS) $(XCODE_OPTIONS) | grep -v setenv && exit $${PIPESTATUS[0]} ) - -release r deployment dep deploy: force - $(SCRIPTS_PATH)/set-webkit-configuration --release - ( xcodebuild $(OTHER_OPTIONS) $(XCODE_OPTIONS) | grep -v setenv && exit $${PIPESTATUS[0]} ) - -clean: - ( xcodebuild $(OTHER_OPTIONS) -alltargets clean $(XCODE_OPTIONS) | grep -v setenv && exit $${PIPESTATUS[0]} ) - -force: ; diff --git a/meta/packages/webkit/files/WebKit.pri b/meta/packages/webkit/files/WebKit.pri deleted file mode 100644 index d12423beb2..0000000000 --- a/meta/packages/webkit/files/WebKit.pri +++ /dev/null @@ -1,107 +0,0 @@ -# Include file to make it easy to include WebKit into Qt projects - - -isEmpty(OUTPUT_DIR) { - CONFIG(release):OUTPUT_DIR=$$PWD/WebKitBuild/Release - CONFIG(debug):OUTPUT_DIR=$$PWD/WebKitBuild/Debug -} - -!gtk-port:CONFIG += qt-port -qt-port:DEFINES += BUILDING_QT__=1 -qt-port:!building-libs { - QMAKE_LIBDIR = $$OUTPUT_DIR/lib $$QMAKE_LIBDIR - LIBS += -lQtWebKit - DEPENDPATH += $$PWD/WebKit/qt/Api -} - -gtk-port:!building-libs { - QMAKE_LIBDIR = $$OUTPUT_DIR/lib $$QMAKE_LIBDIR - LIBS += -lWebKitGtk - DEPENDPATH += $$PWD/WebKit/gtk $$PWD/WebKit/gtk/WebCoreSupport $$PWD/WebKit/gtk/webkit -} - -gtk-port { - CONFIG += link_pkgconfig - - DEFINES += BUILDING_CAIRO__=1 BUILDING_GTK__=1 - - # We use FreeType directly with Cairo - PKGCONFIG += cairo-ft - - directfb: PKGCONFIG += cairo-directfb gtk+-directfb-2.0 - else: PKGCONFIG += cairo gtk+-2.0 - - # Set a CONFIG flag for the GTK+ target (x11, quartz, win32, directfb) - CONFIG += $$system(pkg-config --variable=target $$PKGCONFIG) - - # We use the curl http backend on all platforms - PKGCONFIG += libcurl - DEFINES += WTF_USE_CURL=1 - - LIBS += -lWebKitGtk -ljpeg -lpng - - QMAKE_CXXFLAGS += $$system(icu-config --cppflags) - QMAKE_LIBS += $$system(icu-config --ldflags) - - # This set of warnings is borrowed from the Mac build - QMAKE_CXXFLAGS += -Wall -W -Wcast-align -Wchar-subscripts -Wformat-security -Wmissing-format-attribute -Wpointer-arith -Wwrite-strings -Wno-format-y2k -Wno-unused-parameter -Wundef - - # These flags are based on optimization experience from the Mac port: - # Helps code size significantly and speed a little - QMAKE_CXXFLAGS += -fno-exceptions -fno-rtti - - DEPENDPATH += $$PWD/JavaScriptCore/API - INCLUDEPATH += $$PWD -} - -DEFINES += USE_SYSTEM_MALLOC -CONFIG(release) { - DEFINES += NDEBUG -} - -gtk-port:CONFIG(debug) { - DEFINES += G_DISABLE_DEPRECATED GDK_PIXBUF_DISABLE_DEPRECATED GDK_DISABLE_DEPRECATED GTK_DISABLE_DEPRECATED PANGO_DISABLE_DEPRECATED -# maybe useful for debugging DEFINES += GDK_MULTIHEAD_SAFE GTK_MULTIHEAD_SAFE -} - -BASE_DIR = $$PWD -qt-port:INCLUDEPATH += \ - $$PWD/WebKit/qt/Api -gtk-port:INCLUDEPATH += \ - $$BASE_DIR/WebCore/platform/gtk \ - $$BASE_DIR/WebCore/platform/network/curl \ - $$BASE_DIR/WebCore/platform/graphics/cairo \ - $$BASE_DIR/WebCore/loader/gtk \ - $$BASE_DIR/WebCore/page/gtk \ - $$BASE_DIR/WebKit/gtk \ - $$BASE_DIR/WebKit/gtk/WebCoreSupport \ - $$BASE_DIR/WebKit/gtk/webkit -INCLUDEPATH += \ - $$BASE_DIR/JavaScriptCore/ \ - $$BASE_DIR/JavaScriptCore/kjs \ - $$BASE_DIR/JavaScriptCore/bindings \ - $$BASE_DIR/JavaScriptCore/bindings/c \ - $$BASE_DIR/JavaScriptCore/wtf \ - $$BASE_DIR/JavaScriptCore/ForwardingHeaders \ - $$BASE_DIR/WebCore \ - $$BASE_DIR/WebCore/ForwardingHeaders \ - $$BASE_DIR/WebCore/platform \ - $$BASE_DIR/WebCore/platform/network \ - $$BASE_DIR/WebCore/platform/graphics \ - $$BASE_DIR/WebCore/loader \ - $$BASE_DIR/WebCore/page \ - $$BASE_DIR/WebCore/css \ - $$BASE_DIR/WebCore/dom \ - $$BASE_DIR/WebCore/bridge \ - $$BASE_DIR/WebCore/editing \ - $$BASE_DIR/WebCore/rendering \ - $$BASE_DIR/WebCore/history \ - $$BASE_DIR/WebCore/xml \ - $$BASE_DIR/WebCore/html \ - $$BASE_DIR/WebCore/plugins - - -macx { - INCLUDEPATH += /usr/include/libxml2 - LIBS += -lxml2 -lxslt -} diff --git a/meta/packages/webkit/files/WebKit.pro b/meta/packages/webkit/files/WebKit.pro deleted file mode 100644 index bc14feb5f6..0000000000 --- a/meta/packages/webkit/files/WebKit.pro +++ /dev/null @@ -1,21 +0,0 @@ -TEMPLATE = subdirs -CONFIG += ordered -!gtk-port:CONFIG += qt-port -qt-port { - lessThan(QT_MINOR_VERSION, 4) { - !win32-*:SUBDIRS += WebKit/qt/Plugins - } -} -SUBDIRS += \ - WebCore \ - JavaScriptCore/kjs/testkjs.pro - -qt-port { - SUBDIRS += WebKit/qt/QtLauncher - - !win32-*: SUBDIRS += WebKitTools/DumpRenderTree/qt/DumpRenderTree.pro -} - -gtk-port:SUBDIRS += \ - WebKitTools/GtkLauncher \ - WebKitTools/DumpRenderTree/gtk/DumpRenderTree.pro diff --git a/meta/packages/webkit/files/autogen.sh b/meta/packages/webkit/files/autogen.sh deleted file mode 100755 index 97beb209d2..0000000000 --- a/meta/packages/webkit/files/autogen.sh +++ /dev/null @@ -1,63 +0,0 @@ -#! /bin/sh - -# Allow invocation from a separate build directory; in that case, we change -# to the source directory to run the auto*, then change back before running configure -srcdir=`dirname $0` -test -z "$srcdir" && srcdir=. - -ORIGDIR=`pwd` -cd $srcdir - -GTKDOCIZE_FLAGS="--copy" -LIBTOOLIZE_FLAGS="--force --automake" -ACLOCAL_FLAGS="-I autotools" -AUTOMAKE_FLAGS="--foreign --add-missing" - -DIE=0 - -(autoconf --version) < /dev/null > /dev/null 2>&1 || { - echo - echo "You must have autoconf installed to compile $PROJECT." - echo "Install the appropriate package for your distribution," - echo "or get the source tarball at http://ftp.gnu.org/gnu/autoconf/" - DIE=1 -} - -(automake --version) < /dev/null > /dev/null 2>&1 || { - echo - echo "You must have automake installed to compile $PROJECT." - echo "Install the appropriate package for your distribution," - echo "or get the source tarball at http://ftp.gnu.org/gnu/automake/" - DIE=1 -} - -LIBTOOLIZE=libtoolize -($LIBTOOLIZE --version) < /dev/null > /dev/null 2>&1 || { - LIBTOOLIZE=glibtoolize - ($LIBTOOLIZE --version) < /dev/null > /dev/null 2>&1 || { - echo - echo "You must have libtool installed to compile $PROJECT." - echo "Install the appropriate package for your distribution," - echo "or get the source tarball at http://ftp.gnu.org/gnu/libtool/" - DIE=1 - } -} - -if test "$DIE" -eq 1; then - exit 1 -fi - -rm -rf $top_srcdir/autom4te.cache - -touch README INSTALL - -gtkdocize $GTKDOCIZE_FLAGS > /dev/null 2>&1 || echo "Warning: not running gtk-docize." -aclocal $ACLOCAL_FLAGS || exit $? -$LIBTOOLIZE $LIBTOOLIZE_FLAGS || exit $? -autoheader || exit $? -automake $AUTOMAKE_FLAGS || exit $? -autoconf || exit $? - -cd $ORIGDIR || exit 1 - -$srcdir/configure $AUTOGEN_CONFIGURE_ARGS "$@" || exit $? diff --git a/meta/packages/webkit/files/configure.ac b/meta/packages/webkit/files/configure.ac deleted file mode 100644 index d4f3e749fc..0000000000 --- a/meta/packages/webkit/files/configure.ac +++ /dev/null @@ -1,983 +0,0 @@ -AC_PREREQ(2.59) - -m4_define([webkit_major_version], [1]) -m4_define([webkit_minor_version], [3]) -m4_define([webkit_micro_version], [2]) - -# This is the version we'll be using as part of our User-Agent string -# e.g., AppleWebKit/$(webkit_user_agent_version) ... -# -# Sourced from WebCore/Configurations/Version.xcconfig -m4_define([webkit_user_agent_major_version], [531]) -m4_define([webkit_user_agent_minor_version], [2]) - -AC_INIT([WebKit],[webkit_major_version.webkit_minor_version.webkit_micro_version],[http://bugs.webkit.org/]) - -AC_CONFIG_MACRO_DIR([autotools]) -AC_CONFIG_AUX_DIR([autotools]) -AC_SUBST(ACLOCAL_AMFLAGS, "-I autotools") - -AC_CONFIG_HEADERS([autotoolsconfig.h]) -AC_CANONICAL_HOST - -WEBKIT_MAJOR_VERSION=webkit_major_version -WEBKIT_MINOR_VERSION=webkit_minor_version -WEBKIT_MICRO_VERSION=webkit_micro_version -WEBKIT_USER_AGENT_MAJOR_VERSION=webkit_user_agent_major_version -WEBKIT_USER_AGENT_MINOR_VERSION=webkit_user_agent_minor_version -AC_SUBST(WEBKIT_MAJOR_VERSION) -AC_SUBST(WEBKIT_MINOR_VERSION) -AC_SUBST(WEBKIT_MICRO_VERSION) -AC_SUBST(WEBKIT_USER_AGENT_MAJOR_VERSION) -AC_SUBST(WEBKIT_USER_AGENT_MINOR_VERSION) - -AC_CONFIG_SRCDIR([WebCore/config.h]) - -dnl # Libtool library version, not to confuse with API version -dnl # see http://www.gnu.org/software/libtool/manual/html_node/Libtool-versioning.html#Libtool-versioning -LIBWEBKITGTK_VERSION=0:0:0 -AC_SUBST([LIBWEBKITGTK_VERSION]) - -AM_INIT_AUTOMAKE([foreign subdir-objects tar-ustar]) - -# Use AM_SILENT_RULES if present -m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) - -# host checking - inspired by the GTK+ configure.in -# TODO: move these to webkit.m4? -AC_MSG_CHECKING([for native Win32]) -case "$host" in - *-*-mingw*) - os_win32=yes - ;; - *) - os_win32=no - ;; -esac -AC_MSG_RESULT([$os_win32]) - -case "$host" in - *-*-linux*) - os_linux=yes - ;; - *-*-freebsd*) - os_freebsd=yes - ;; - *-*-darwin*) - os_darwin=yes - ;; -esac - -case "$host_os" in - gnu* | linux* | k*bsd*-gnu) - os_gnu=yes - ;; - *) - os_gnu=no - ;; -esac - -# initialize webkit options -WEBKIT_INIT -AC_DISABLE_STATIC -AC_LIBTOOL_WIN32_DLL -AC_PROG_LIBTOOL - -AC_PATH_PROG(FLEX, flex) -if test -z "$FLEX"; then - AC_MSG_ERROR([You need the 'flex' lexer generator to compile WebKit]) -else - FLEX_VERSION=`$FLEX --version | sed 's,.*\ \([0-9]*\.[0-9]*\.[0-9]*\)$,\1,'` - AX_COMPARE_VERSION([2.5.33],[gt],[$FLEX_VERSION], - AC_MSG_WARN([You need at least version 2.5.33 of the 'flex' lexer generator to compile WebKit correctly])) -fi - -AC_PATH_PROG(GPERF, gperf) -if test -z "$GPERF"; then - AC_MSG_ERROR([You need the 'gperf' hash function generator to compile WebKit]) -fi - -# pthread (not needed on Windows) -if test "$os_win32" = "no"; then -AC_CHECK_HEADERS([pthread.h], - AC_DEFINE([HAVE_PTHREAD_H],[1],[Define if pthread exists]), - AC_MSG_ERROR([pthread support is required to build WebKit])) -fi - -# check for libjpeg the way Gtk does it. -AC_CHECK_LIB(jpeg, jpeg_destroy_decompress, - jpeg_ok=yes, jpeg_ok=no - AC_MSG_ERROR([JPEG library (libjpeg) not found])) -if test "$jpeg_ok" = yes; then - AC_MSG_CHECKING([for jpeglib]) - AC_TRY_CPP( -[#include -#undef PACKAGE -#undef VERSION -#undef HAVE_STDLIB_H -#include ], - jpeg_ok=yes, - jpeg_ok=no) - AC_MSG_RESULT($jpeg_ok) - if test "$jpeg_ok" = yes; then - JPEG_LIBS="-ljpeg" - # should we check for progressive JPEG like GTK+ as well? - else - AC_MSG_ERROR([JPEG library (libjpeg) not found]) - fi -fi -AC_SUBST([JPEG_LIBS]) - -# Check for libpng the way Gtk+ does it -for l in libpng libpng14 libpng12; do - AC_MSG_CHECKING(for $l) - if $PKG_CONFIG --exists $l ; then - AC_MSG_RESULT(yes) - PNG_LIBS=`$PKG_CONFIG --libs $l` - png_ok=yes - break - else - AC_MSG_RESULT(no) - png_ok=no - fi -done -if test "$png_ok" != yes; then - AC_CHECK_LIB(png, png_read_info, - [AC_CHECK_HEADER(png.h, - png_ok=yes, - png_ok=no)], - AC_MSG_ERROR([PNG library (libpng) not found]), -lz -lm) - if test "$png_ok" = yes; then - AC_MSG_CHECKING([for png_structp in png.h]) - AC_TRY_COMPILE([#include ], - [png_structp pp; png_infop info; png_colorp cmap; png_create_read_struct;], - png_ok=yes, - png_ok=no) - AC_MSG_RESULT($png_ok) - if test "$png_ok" = yes; then - PNG_LIBS='-lpng -lz' - else - AC_MSG_ERROR([PNG library (libpng) not found]) - fi - else - AC_MSG_ERROR([PNG library (libpng) not found]) - fi -fi -AC_SUBST([PNG_LIBS]) - -# determine the GTK+ version to use -AC_MSG_CHECKING([the GTK+ version to use]) -AC_ARG_WITH([gtk], - [AS_HELP_STRING([--with-gtk=2.0|3.0], [the GTK+ version to use (default: 2.0)])], - [case "$with_gtk" in - 2.0|3.0) ;; - *) AC_MSG_ERROR([invalid GTK+ version specified]) ;; - esac], - [with_gtk=2.0]) -AC_MSG_RESULT([$with_gtk]) - -case "$with_gtk" in - 2.0) GTK_REQUIRED_VERSION=2.10 - GTK_API_VERSION=2.0 - WEBKITGTK_API_MAJOR_VERSION=1 - WEBKITGTK_API_MINOR_VERSION=0 - WEBKITGTK_API_VERSION=1.0 - WEBKITGTK_PC_NAME=webkit - GAIL_PC_NAME=gail - GAIL_REQUIRED_VERSION=1.8 - ;; - 3.0) GTK_REQUIRED_VERSION=2.90 - GTK_API_VERSION=3.0 - WEBKITGTK_API_MAJOR_VERSION=3 - WEBKITGTK_API_MINOR_VERSION=0 - WEBKITGTK_API_VERSION=3.0 - WEBKITGTK_PC_NAME=webkitgtk - GAIL_PC_NAME=gail-3.0 - GAIL_REQUIRED_VERSION=2.90.4 - ;; -esac - -AC_SUBST([WEBKITGTK_API_MAJOR_VERSION]) -AC_SUBST([WEBKITGTK_API_MINOR_VERSION]) -AC_SUBST([WEBKITGTK_API_VERSION]) -AC_SUBST([WEBKITGTK_PC_NAME]) -AC_SUBST([GTK_API_VERSION]) -AM_CONDITIONAL([GTK_API_VERSION_2],[test "$GTK_API_VERSION" = "2.0"]) - -# determine the GDK/GTK+ target -AC_MSG_CHECKING([the target windowing system]) -AC_ARG_WITH(target, - AC_HELP_STRING([--with-target=@<:@x11/win32/quartz/directfb@:>@], - [Select webkit target [default=x11]]), - [],[with_target="x11"]) - -case "$with_target" in - x11|win32|quartz|directfb) ;; - *) AC_MSG_ERROR([Invalid target: must be x11, quartz, win32, or directfb.]) ;; -esac - -AC_MSG_RESULT([$with_target]) - -AC_MSG_CHECKING([for Hildon UI extensions]) -AC_ARG_WITH(hildon, - AC_HELP_STRING([--with-hildon], - [Use Hildon UI extensions [default=no]]), - [],[with_hildon="no"]) -AC_MSG_RESULT([$with_hildon]) - -if test "$with_hildon" = "yes"; then - HILDON_CPPFLAGS="-DMAEMO_CHANGES" - PKG_CHECK_MODULES([HILDON], [hildon-1]) - AC_SUBST([HILDON_CPPFLAGS]) - AC_SUBST([HILDON_CFLAGS]) - AC_SUBST([HILDON_LIBS]) -fi - -# minimum base dependencies -LIBSOUP_REQUIRED_VERSION=2.28.2 -CAIRO_REQUIRED_VERSION=1.6 -FONTCONFIG_REQUIRED_VERSION=2.4 -FREETYPE2_REQUIRED_VERSION=9.0 -LIBXML_REQUIRED_VERSION=2.6 - -# minimum GTK+ base dependencies -PANGO_REQUIRED_VERSION=1.12 - -# optional modules -LIBXSLT_REQUIRED_VERSION=1.1.7 -SQLITE_REQUIRED_VERSION=3.0 -GSTREAMER_REQUIRED_VERSION=0.10 -GSTREAMER_PLUGINS_BASE_REQUIRED_VERSION=0.10.25 -ENCHANT_REQUIRED_VERSION=0.22 - -# Available modules -# -# glib - glib and includes gthread -# unicode - check and identify which unicode backend to use -# -# todo: webcore gtk -WEBKIT_CHECK_DEPENDENCIES([glib unicode]) - -GETTEXT_PACKAGE=$PACKAGE -AC_SUBST(GETTEXT_PACKAGE) -AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", - [The gettext catalog name]) - -PKG_CHECK_MODULES(LIBXML, libxml-2.0 >= $LIBXML_REQUIRED_VERSION) -AC_SUBST(LIBXML_CFLAGS) -AC_SUBST(LIBXML_LIBS) - -PKG_CHECK_MODULES(PANGO, - [pango >= $PANGO_REQUIRED_VERSION - pangoft2]) -AC_SUBST(PANGO_CFLAGS) -AC_SUBST(PANGO_LIBS) - -PKG_CHECK_MODULES(ENCHANT, enchant >= $ENCHANT_REQUIRED_VERSION) -AC_SUBST(ENCHANT_CFLAGS) -AC_SUBST(ENCHANT_LIBS) - -PKG_CHECK_MODULES(GAIL, $GAIL_PC_NAME >= $GAIL_REQUIRED_VERSION) -AC_SUBST(GAIL_CFLAGS) -AC_SUBST(GAIL_LIBS) - -# check for target-specific dependencies -if test "$with_target" = "directfb"; then - PKG_CHECK_MODULES(CAIRO, cairo-directfb >= $CAIRO_REQUIRED_VERSION) - PKG_CHECK_MODULES(GTK, gtk+-directfb-2.0 >= $GTK_REQUIRED_VERSION) - AC_DEFINE([WTF_PLATFORM_DIRECTFB],[1],[Define if target is DirectFB]) -else - PKG_CHECK_MODULES(CAIRO, cairo >= $CAIRO_REQUIRED_VERSION) - PKG_CHECK_MODULES(GTK, gtk+-$GTK_API_VERSION >= $GTK_REQUIRED_VERSION) - - if test "$with_target" = "x11" && test "$os_win32" = "no"; then - # check for XT - PKG_CHECK_MODULES([XT], - [xt], - [xt_has_pkg_config=yes], - [xt_has_pkg_config=no]) - # some old versions of Xt do not provide xt.pc, so try to link against Xt - # and if it's installed fall back to just adding -lXt - if test "$xt_has_pkg_config" = "no"; then - # using AC_CHECK_LIB instead of AC_SEARCH_LIB is fine in this case as - # we don't care about the XtOpenDisplay symbol but only about the - # existence of libXt - AC_CHECK_LIB([Xt], [XtOpenDisplay], - [XT_CFLAGS=""; XT_LIBS="-lXt"], - [AC_MSG_ERROR([X Toolkit Intrinsics library (libXt) not found])]) - fi - AC_SUBST([XT_CFLAGS]) - AC_SUBST([XT_LIBS]) - AC_DEFINE([WTF_PLATFORM_X11],[1],[Define if target is X11]) - fi -fi -AC_SUBST(GTK_CFLAGS) -AC_SUBST(GTK_LIBS) -AC_SUBST(CAIRO_CFLAGS) -AC_SUBST(CAIRO_LIBS) - -# check whether to build with debugging enabled -AC_MSG_CHECKING([whether to do a debug build]) -AC_ARG_ENABLE(debug, - AC_HELP_STRING([--enable-debug], - [turn on debugging [default=no]]), - [],[enable_debug="no"]) -AC_MSG_RESULT([$enable_debug]) - -# check whether to enable optimized builds -AC_MSG_CHECKING([whether to enable optimized builds]) -AC_ARG_ENABLE(optimizations, - AC_HELP_STRING([--enable-optimizations], - [turn on optimize builds (GCC only) - [default=yes]]), - [enable_optimizations=$enableval], - [if test "$enable_debug" = "yes"; then enable_optimizations="no"; else enable_optimizations="yes"; fi]) -AC_MSG_RESULT([$enable_optimizations]) - -# check whether to enable 3D transforms support -AC_MSG_CHECKING([whether to enable support for 3D Transforms]) -AC_ARG_ENABLE(3D_transforms, - AC_HELP_STRING([--enable-3D-transforms], - [enable support for 3D transforms [default=no]]), - [],[enable_3D_transforms="no"]) -AC_MSG_RESULT([$enable_3D_transforms]) - -# check whether to enable channel messaging support -AC_MSG_CHECKING([whether to enable HTML5 Channel Messaging support]) -AC_ARG_ENABLE(channel_messaging, - AC_HELP_STRING([--enable-channel-messaging], - [enable HTML5 channel messaging support [default=yes]]), - [],[enable_channel_messaging="yes"]) -AC_MSG_RESULT([$enable_channel_messaging]) - -# check whether to enable JavaScript debugger/profiler support -AC_MSG_CHECKING([whether to enable JavaScript debugger/profiler support]) -AC_ARG_ENABLE(javascript_debugger, - AC_HELP_STRING([--enable-javascript-debugger], - [enable JavaScript debugger/profiler support [default=yes]]), - [],[enable_javascript_debugger="yes"]) -AC_MSG_RESULT([$enable_javascript_debugger]) - -# check whether to enable HTML5 Offline Web Applications support -AC_MSG_CHECKING([whether to enable HTML5 offline web applications support]) -AC_ARG_ENABLE(offline_web_applications, - AC_HELP_STRING([--enable-offline-web-applications], - [enable HTML5 offline web applications support [default=yes]]), - [],[enable_offline_web_applications="yes"]) -AC_MSG_RESULT([$enable_offline_web_applications]) - -# check whether to enable HTML5 client-side session and persitent storage support -AC_MSG_CHECKING([whether to enable HTML5 client-side session and persistent storage support]) -AC_ARG_ENABLE(dom_storage, - AC_HELP_STRING([--enable-dom-storage], - [enable HTML5 client-side session and persistent storage support [default=yes]]), - [],[enable_dom_storage="yes"]) -AC_MSG_RESULT([$enable_dom_storage]) - -# check whether to enable the indexed database API -AC_MSG_CHECKING([whether to enable the indexed database API]) -AC_ARG_ENABLE(indexed_database, - AC_HELP_STRING([--enable-indexeddb], - [enable the indexed database API [default=no]]), - [],[enable_indexed_database="no"]) -AC_MSG_RESULT([$enable_indexed_database]) - -# check whether to enable the speech input API -AC_MSG_CHECKING([whether to enable the speech input API]) -AC_ARG_ENABLE(input_speech, - AC_HELP_STRING([--enable-input-speech], - [enable the speech input API [default=no]]), - [],[enable_input_speech="no"]) -AC_MSG_RESULT([$enable_input_speech]) - -# check whether to build with database support -AC_MSG_CHECKING([whether to enable HTML5 client-side database storage support]) -AC_ARG_ENABLE(database, - AC_HELP_STRING([--enable-database], - [enable HTML5 client-side database storage support [default=yes]]), - [],[enable_database="yes"]) -AC_MSG_RESULT([$enable_database]) - -# check whether to build with server-sent events support -AC_MSG_CHECKING([whether to enable HTML5 server-sent events support]) -AC_ARG_ENABLE(eventsource, - AC_HELP_STRING([--enable-eventsource], - [enable HTML5 server-sent events support [default=yes]]), - [],[enable_eventsource="yes"]) -AC_MSG_RESULT([$enable_eventsource]) - -# check whether to build with icon database support -AC_MSG_CHECKING([whether to enable icon database support]) -AC_ARG_ENABLE(icon_database, - AC_HELP_STRING([--enable-icon-database], - [enable icon database [default=yes]]), - [],[enable_icon_database="yes"]) -AC_MSG_RESULT([$enable_icon_database]) - -# check whether to build with image resizer API support -AC_MSG_CHECKING([whether to enable image resizer API support]) -AC_ARG_ENABLE(image_resizer, - AC_HELP_STRING([--enable-image-resizer], - [enable image resizer [default=no]]), - [],[enable_image_resizer="no"]) -AC_MSG_RESULT([$enable_image_resizer]) - -# check whether to enable HTML5 datalist support -AC_MSG_CHECKING([whether to enable HTML5 datalist support]) -AC_ARG_ENABLE(datalist, - AC_HELP_STRING([--enable-datalist], - [enable HTML5 datalist support [default=yes]]), - [],[enable_datalist="yes"]) -AC_MSG_RESULT([$enable_datalist]) - -# check whether to enable HTML5 ruby support -AC_MSG_CHECKING([whether to enable HTML5 ruby support]) -AC_ARG_ENABLE(ruby, - AC_HELP_STRING([--enable-ruby], - [enable HTML5 ruby support [default=yes]]), - [],[enable_ruby="yes"]) -AC_MSG_RESULT([$enable_ruby]) - -# check whether to enable HTML5 sandbox iframe support -AC_MSG_CHECKING([whether to enable HTML5 sandboxed iframe support]) -AC_ARG_ENABLE(sandbox, - AC_HELP_STRING([--enable-sandbox], - [enable HTML5 sandboxed iframe support [default=yes]]), - [],[enable_sandbox="yes"]) -AC_MSG_RESULT([$enable_sandbox]) - -# check whether to enable HTML5 audio/video support -AC_MSG_CHECKING([whether to enable HTML5 video support]) -AC_ARG_ENABLE(video, - AC_HELP_STRING([--enable-video], - [enable HTML5 video support [default=yes]]), - [],[enable_video="yes"]) -AC_MSG_RESULT([$enable_video]) - -# check whether to enable XHTML-MP support -AC_MSG_CHECKING([whether to enable XHTML-MP support]) -AC_ARG_ENABLE(xhtmlmp, - AC_HELP_STRING([--enable-xhtmlmp], - [enable support for XHTML-MP [default=no]]), - [],[enable_xhtmlmp="no"]) -AC_MSG_RESULT([$enable_xhtmlmp]) - -# check whether to enable XPath support -AC_MSG_CHECKING([whether to enable XPath support]) -AC_ARG_ENABLE(xpath, - AC_HELP_STRING([--enable-xpath], - [enable support for XPath [default=yes]]), - [],[enable_xpath="yes"]) -AC_MSG_RESULT([$enable_xpath]) - -# check whether to enable XSLT support -AC_MSG_CHECKING([whether to enable XSLT support]) -AC_ARG_ENABLE(xslt, - AC_HELP_STRING([--enable-xslt], - [enable support for XSLT [default=yes]]), - [],[enable_xslt="yes"]) -AC_MSG_RESULT([$enable_xslt]) - -# check whether to enable geolocation support -AC_MSG_CHECKING([whether to enable geolocation support]) -AC_ARG_ENABLE(geolocation, - AC_HELP_STRING([--enable-geolocation], - [enable support for geolocation [default=no]]), - [],[enable_geolocation="no"]) -AC_MSG_RESULT([$enable_geolocation]) - -# check whether to enable MathML support -AC_MSG_CHECKING([whether to enable MathML support]) -AC_ARG_ENABLE(mathml, - AC_HELP_STRING([--enable-mathml], - [enable support for MathML [default=no]]), - [],[enable_mathml="no"]) -AC_MSG_RESULT([$enable_mathml]) - -# check whether to enable SVG support -AC_MSG_CHECKING([whether to enable SVG support]) -AC_ARG_ENABLE(svg, - AC_HELP_STRING([--enable-svg], - [enable support for SVG [default=yes]]), - [],[enable_svg="yes"]) -AC_MSG_RESULT([$enable_svg]) - -# check whether to enable WML support -AC_MSG_CHECKING([whether to enable WML support]) -AC_ARG_ENABLE(wml, - AC_HELP_STRING([--enable-wml], - [enable support for WML [default=no]]), - [],[enable_wml="no"]) -AC_MSG_RESULT([$enable_wml]) - -# check whether to enable SharedWorkers support -AC_MSG_CHECKING([whether to enable SharedWorkers support]) -AC_ARG_ENABLE(shared_workers, - AC_HELP_STRING([--enable-shared-workers], - [enable support for SharedWorkers [default=yes]]), - [],[enable_shared_workers="yes"]) -AC_MSG_RESULT([$enable_shared_workers]) - -# check whether to enable Web Workers support -AC_MSG_CHECKING([whether to enable Web Workers support]) -AC_ARG_ENABLE(workers, - AC_HELP_STRING([--enable-workers], - [enable support for Web Workers [default=yes]]), - [],[enable_workers="yes"]) -AC_MSG_RESULT([$enable_workers]) - -# turn off svg features if --disable-svg is requested -if test "$enable_svg" = "no"; then - enable_svg_animation=no - enable_svg_fonts=no - enable_svg_foreign_object=no - enable_svg_as_image=no - enable_svg_use=no -fi - -# check whether to enable support for SVG animation -AC_MSG_CHECKING([whether to enable support for SVG animation]) -AC_ARG_ENABLE(svg_animation, - AC_HELP_STRING([--enable-svg-animation], - [enable support for SVG animation (experimental) [default=yes]]), - [],[enable_svg_animation="yes"]) -AC_MSG_RESULT([$enable_svg_animation]) - -# check whether to enable support for filters -AC_MSG_CHECKING([whether to enable support for filters]) -AC_ARG_ENABLE(filters, - AC_HELP_STRING([--enable-filters], - [enable support for filters (experimental) [default=yes]]), - [],[enable_filters="yes"]) -AC_MSG_RESULT([$enable_filters]) - -# check whether to enable support for SVG fonts -AC_MSG_CHECKING([whether to enable support for SVG fonts]) -AC_ARG_ENABLE(svg_fonts, - AC_HELP_STRING([--enable-svg-fonts], - [enable support for SVG fonts (experimental) [default=yes]]), - [],[enable_svg_fonts="yes"]) -AC_MSG_RESULT([$enable_svg_fonts]) - -# check whether to enable foreign objects support for SVG -AC_MSG_CHECKING([whether to enable support for SVG foreign objects]) -AC_ARG_ENABLE(svg_foreign_object, - AC_HELP_STRING([--enable-svg-foreign-object], - [enable support for SVG foreign objects (experimental) [default=yes]]), - [],[enable_svg_foreign_object="yes"]) -AC_MSG_RESULT([$enable_svg_foreign_object]) - -# check whether to enable SVG As Image support -AC_MSG_CHECKING([whether to enable SVG as Image support]) -AC_ARG_ENABLE(svg_as_image, - AC_HELP_STRING([--enable-svg-as-image], - [enable SVG as Image support (experimental) [default=yes]]), - [],[enable_svg_as_image="yes"]) -AC_MSG_RESULT([$enable_svg_as_image]) - -# check whether to enable SVG USE element support -AC_MSG_CHECKING([whether to enable support for SVG use element]) -AC_ARG_ENABLE(svg_use, - AC_HELP_STRING([--enable-svg-use], - [enable SVG use element support (experimental) [default=yes]]), - [],[enable_svg_use="yes"]) -AC_MSG_RESULT([$enable_svg_use]) - -# check for SVG features, enabling SVG if necessary -if test "$enable_svg_animation" = "yes" || \ - test "$enable_svg_fonts" = "yes" || \ - test "$enable_svg_foreign_object" = "yes" || \ - test "$enable_svg_as_image" = "yes" || \ - test "$enable_svg_use" = "yes"; then - svg_flags=yes - if test "$enable_svg" = "no"; then - AC_MSG_WARN([SVG feature(s) requested but SVG is disabled.. Enabling SVG support]) - enable_svg=yes - fi -fi - -# check whether to enable Web Socket support -AC_MSG_CHECKING([whether to enable Web Sockets support]) -AC_ARG_ENABLE(web_sockets, - AC_HELP_STRING([--enable-web-sockets], - [enable support for Web Sockets [default=no]]), - [],[enable_web_sockets="no"]) -AC_MSG_RESULT([$enable_web_sockets]) - -# check whether to enable Web Timing support -AC_MSG_CHECKING([whether to enable Web Timing support]) -AC_ARG_ENABLE(web_timing, - AC_HELP_STRING([--enable-web-timing], - [enable support for Web Timing [default=no]]), - [],[enable_web_timing="no"]) -AC_MSG_RESULT([$enable_web_timing]) - -# check whether to enable Blob.slice support -AC_MSG_CHECKING([whether to enable Blob.slice support]) -AC_ARG_ENABLE(blob_slice, - AC_HELP_STRING([--enable-blob-slice], - [enable support for Blob.slice [default=no]]), - [],[enable_blob_slice="no"]) -AC_MSG_RESULT([$enable_blob_slice]) - -# check whether to enable Fast Mobile Scrolling support -AC_MSG_CHECKING([whether to enable Fast Mobile Scrolling]) -AC_ARG_ENABLE(fast_mobile_scrolling, - AC_HELP_STRING([--enable-fast-mobile-scrolling], - [enable support for Fast Mobile Scrolling [default=no]]), - [],[enable_fast_mobile_scrolling="no"]) -AC_MSG_RESULT([$enable_fast_mobile_scrolling]) - -# check whether to enable FileReader support -AC_MSG_CHECKING([whether to enable FileReader support]) -AC_ARG_ENABLE(file_reader, - AC_HELP_STRING([--enable-file-reader], - [enable support for FileReader [default=no]]), - [],[enable_file_reader="no"]) -AC_MSG_RESULT([$enable_file_reader]) - -# check whether to enable FileWriter support -AC_MSG_CHECKING([whether to enable FileWriter support]) -AC_ARG_ENABLE(file_writer, - AC_HELP_STRING([--enable-file-writer], - [enable support for FileWriter [default=no]]), - [],[enable_file_writer="no"]) -AC_MSG_RESULT([$enable_file_writer]) - -# check whether to enable code coverage -AC_MSG_CHECKING([whether to enable code coverage support]) -AC_ARG_ENABLE(coverage, - AC_HELP_STRING([--enable-coverage], - [enable code coverage support [default=no]]), - [],[enable_coverage="no"]) -AC_MSG_RESULT([$enable_coverage]) - -# check whether to enable FastMalloc -AC_MSG_CHECKING([whether to enable optimized memory allocator]) -AC_ARG_ENABLE(fast_malloc, - AC_HELP_STRING([--enable-fast-malloc], - [enable optimized memory allocator default=yes, default=no for debug builds]), - [],[if test "$enable_debug" = "yes"; then enable_fast_malloc="no"; else enable_fast_malloc="yes"; fi]) -AC_MSG_RESULT([$enable_fast_malloc]) - -AC_MSG_CHECKING([whether to enable JIT compilation]) -AC_ARG_ENABLE([jit], - AC_HELP_STRING([--enable-jit], - [Enable JIT compilation default=yes]), - [],[enable_jit="yes"]) -if test "$enable_jit" = "yes"; then - case "$host_cpu" in - i*86|x86_64) - AC_DEFINE([ENABLE_JIT], [1], [Define to enable JIT]) - AC_DEFINE([ENABLE_YARR], [1], [Define to enable YARR]) - AC_DEFINE([ENABLE_YARR_JIT], [1], [Define to enable YARR JIT]) - AC_DEFINE([ENABLE_JIT_OPTIMIZE_CALL], [1], [Define to enable optimizing calls]) - AC_DEFINE([ENABLE_JIT_OPTIMIZE_PROPERTY_ACCESS], [1], [Define to enable optimized property access]) - AC_DEFINE([ENABLE_JIT_OPTIMIZE_ARITHMETIC], [1], [Define to enable optimized arithmetic]) - case "$host_cpu" in - i*86) - AC_DEFINE([WTF_USE_JIT_STUB_ARGUMENT_VA_LIST], [1], [Use stub va_list]) - ;; - x86_64) - AC_DEFINE([WTF_USE_JIT_STUB_ARGUMENT_REGISTER], [1], [Use stub register]) - AC_DEFINE([WTF_USE_ALTERNATE_JSIMMEDIATE], [1], [Use alternate JSImmediate]) - ;; - esac - ;; - *) - enable_jit="no (CPU '$host_cpu' not supported)" - ;; - esac -fi -AC_MSG_RESULT([$enable_jit]) - -# GObject Introspection -AC_MSG_CHECKING([whether to enable GObject introspection support]) -AC_ARG_ENABLE([introspection], - [AS_HELP_STRING([--enable-introspection],[Enable GObject introspection (default: disabled)])], - [],[enable_introspection=no]) -AC_MSG_RESULT([$enable_introspection]) - -G_IR_SCANNER= -G_IR_COMPILER= -G_IR_GENERATE= -GIRDIR= -GIRTYPELIBDIR= - -if test "$enable_introspection" = "yes"; then - GOBJECT_INTROSPECTION_REQUIRED=0.6.15 - PKG_CHECK_MODULES([INTROSPECTION],[gobject-introspection-1.0 >= $GOBJECT_INTROSPECTION_REQUIRED]) - - G_IR_SCANNER="$($PKG_CONFIG --variable=g_ir_scanner gobject-introspection-1.0)" - G_IR_COMPILER="$($PKG_CONFIG --variable=g_ir_compiler gobject-introspection-1.0)" - G_IR_GENERATE="$($PKG_CONFIG --variable=g_ir_generate gobject-introspection-1.0)" - AC_DEFINE([ENABLE_INTROSPECTION],[1],[Define to enable GObject introspection support]) -fi - -AC_SUBST([G_IR_SCANNER]) -AC_SUBST([G_IR_COMPILER]) -AC_SUBST([G_IR_GENERATE]) - -# determine the font backend -AC_MSG_CHECKING([the font backend to use]) -AC_ARG_WITH(font_backend, - AC_HELP_STRING([--with-font-backend=@<:@freetype/pango@:>@], - [Select font backend [default=freetype]]), - [],[with_font_backend="freetype"]) - -case "$with_font_backend" in - freetype|pango) ;; - *) AC_MSG_ERROR([Invalid font backend: must be freetype or pango.]) ;; -esac -AC_MSG_RESULT([$with_font_backend]) - -# Add '-g' flag to gcc if it's debug build -if test "$enable_debug" = "yes"; then - CXXFLAGS="$CXXFLAGS -g" - CFLAGS="$CFLAGS -g" -else - AC_DEFINE([NDEBUG], [1], [Define to disable debugging features]) -fi - -# Add the appropriate 'O' level for optimized builds -if test "$enable_optimizations" = "yes"; then - CXXFLAGS="$CXXFLAGS -O2" - CFLAGS="$CFLAGS -O2" -else - CXXFLAGS="$CXXFLAGS -O0" - CFLAGS="$CFLAGS -O0" -fi - -PKG_CHECK_MODULES([LIBSOUP], - [libsoup-2.4 >= $LIBSOUP_REQUIRED_VERSION]) -AC_SUBST([LIBSOUP_CFLAGS]) -AC_SUBST([LIBSOUP_LIBS]) - -# check if we can use libSoup 2.29.90 features -PKG_CHECK_MODULES([LIBSOUP_2_29_90], - [libsoup-2.4 >= 2.29.90], - [have_libsoup_2_29_90=yes], - [have_libsoup_2_29_90=no]) -if test "$have_libsoup_2_29_90" = "yes"; then - AC_DEFINE([HAVE_LIBSOUP_2_29_90], 1, [Whether libSoup 2.29.90 features are available]) -fi - -# check if FreeType/FontConfig are available -if test "$with_font_backend" = "freetype"; then - if test "$with_target" = "directfb"; then - PKG_CHECK_MODULES([FREETYPE], - [fontconfig >= $FONTCONFIG_REQUIRED_VERSION - freetype2 >= $FREETYPE2_REQUIRED_VERSION]) - else - PKG_CHECK_MODULES([FREETYPE], - [cairo-ft - fontconfig >= $FONTCONFIG_REQUIRED_VERSION - freetype2 >= $FREETYPE2_REQUIRED_VERSION]) - fi - AC_SUBST([FREETYPE_CFLAGS]) - AC_SUBST([FREETYPE_LIBS]) -fi - -# check if sqlite 3 is available -if test "$enable_icon_database" = "yes" || \ - test "$enable_database" = "yes" || \ - test "$enable_offline_web_applications" = "yes" || \ - test "$enable_dom_storage" = "yes"; then - PKG_CHECK_MODULES([SQLITE3], - [sqlite3 >= $SQLITE_REQUIRED_VERSION], - [sqlite3_has_pkg_config=yes], - [sqlite3_has_pkg_config=no]) - if test "$sqlite3_has_pkg_config" = "no"; then - AC_SEARCH_LIBS([sqlite3_open16], [sqlite3], - [SQLITE3_LIBS="$LIBS";SQLITE3_CFLAGS="-I $srcdir/WebKitLibraries/WebCoreSQLite3"], - [AC_MSG_ERROR([SQLite3 is required to enable Database support])]) - fi - AC_SUBST([SQLITE3_CFLAGS]) - AC_SUBST([SQLITE3_LIBS]) -fi - -# check if libxslt is available -if test "$enable_xslt" = "yes"; then - PKG_CHECK_MODULES([LIBXSLT],[libxslt >= $LIBXSLT_REQUIRED_VERSION]) - AC_SUBST([LIBXSLT_CFLAGS]) - AC_SUBST([LIBXSLT_LIBS]) -fi - -# check if geoclue is available -if test "$enable_geolocation" = "yes"; then - PKG_CHECK_MODULES([GEOCLUE], [geoclue]) - AC_SUBST([GEOCLUE_CFLAGS]) - AC_SUBST([GEOCLUE_LIBS]) -fi - -# check if gstreamer is available -if test "$enable_video" = "yes"; then - PKG_CHECK_MODULES([GSTREAMER], - [gstreamer-0.10 >= $GSTREAMER_REQUIRED_VERSION - gstreamer-app-0.10 - gstreamer-base-0.10 - gstreamer-pbutils-0.10 - gstreamer-plugins-base-0.10 >= $GSTREAMER_PLUGINS_BASE_REQUIRED_VERSION - gstreamer-video-0.10]) - AC_SUBST([GSTREAMER_CFLAGS]) - AC_SUBST([GSTREAMER_LIBS]) -fi - -# check for code coverage support -if test "$enable_coverage" = "yes"; then - COVERAGE_CFLAGS="-MD" - COVERAGE_LDFLAGS="-ftest-coverage -fprofile-arcs" - AC_SUBST([COVERAGE_CFLAGS]) - AC_SUBST([COVERAGE_LDFLAGS]) -fi - -# check for HTML features -if test "$enable_video" = "yes"; then - html_flags=yes -fi - -GTK_DOC_CHECK([1.10]) - -# OS conditionals -AM_CONDITIONAL([OS_WIN32],[test "$os_win32" = "yes"]) -AM_CONDITIONAL([OS_UNIX],[test "$os_win32" = "no"]) -AM_CONDITIONAL([OS_LINUX],[test "$os_linux" = "yes"]) -AM_CONDITIONAL([OS_GNU],[test "$os_gnu" = "yes"]) -AM_CONDITIONAL([OS_FREEBSD],[test "$os_freebsd" = "yes"]) - -# target conditionals -AM_CONDITIONAL([TARGET_X11], [test "$with_target" = "x11"]) -AM_CONDITIONAL([TARGET_WIN32], [test "$with_target" = "win32"]) -AM_CONDITIONAL([TARGET_QUARTZ], [test "$with_target" = "quartz"]) -AM_CONDITIONAL([TARGET_DIRECTFB], [test "$with_target" = "directfb"]) - -# Unicode backend conditionals -AM_CONDITIONAL([USE_ICU_UNICODE], [test "$with_unicode_backend" = "icu"]) -AM_CONDITIONAL([USE_GLIB_UNICODE], [test "$with_unicode_backend" = "glib"]) - -# Font backend conditionals -AM_CONDITIONAL([USE_FREETYPE], [test "$with_font_backend" = "freetype"]) -AM_CONDITIONAL([USE_PANGO], [test "$with_font_backend" = "pango"]) - -# WebKit feature conditionals -AM_CONDITIONAL([ENABLE_DEBUG],[test "$enable_debug" = "yes"]) -AM_CONDITIONAL([ENABLE_3D_TRANSFORMS],[test "$enable_3D_transforms" = "yes"]) -AM_CONDITIONAL([ENABLE_BLOB_SLICE],[test "$enable_blob_slice" = "yes"]) -AM_CONDITIONAL([ENABLE_CHANNEL_MESSAGING],[test "$enable_channel_messaging" = "yes"]) -AM_CONDITIONAL([ENABLE_JAVASCRIPT_DEBUGGER],[test "$enable_javascript_debugger" = "yes"]) -AM_CONDITIONAL([ENABLE_OFFLINE_WEB_APPLICATIONS],[test "$enable_offline_web_applications" = "yes"]) -AM_CONDITIONAL([ENABLE_DOM_STORAGE],[test "$enable_dom_storage" = "yes"]) -AM_CONDITIONAL([ENABLE_DATABASE],[test "$enable_database" = "yes"]) -AM_CONDITIONAL([ENABLE_DATALIST],[test "$enable_datalist" = "yes"]) -AM_CONDITIONAL([ENABLE_EVENTSOURCE],[test "$enable_eventsource" = "yes"]) -AM_CONDITIONAL([ENABLE_FAST_MOBILE_SCROLLING],[test "$enable_fast_mobile_scrolling" = "yes"]) -AM_CONDITIONAL([ENABLE_ICONDATABASE],[test "$enable_icon_database" = "yes"]) -AM_CONDITIONAL([ENABLE_IMAGE_RESIZER],[test "$enable_image_resizer" = "yes"]) -AM_CONDITIONAL([ENABLE_INDEXED_DATABASE],[test "$enable_indexed_database" = "yes"]) -AM_CONDITIONAL([ENABLE_INPUT_SPEECH],[test "$enable_input_speech" = "yes"]) -AM_CONDITIONAL([ENABLE_XHTMLMP],[test "$enable_xhtmlmp" = "yes"]) -AM_CONDITIONAL([ENABLE_XPATH],[test "$enable_xpath" = "yes"]) -AM_CONDITIONAL([ENABLE_XSLT],[test "$enable_xslt" = "yes"]) -AM_CONDITIONAL([ENABLE_FILTERS],[test "$enable_filters" = "yes"]) -AM_CONDITIONAL([ENABLE_FILE_READER],[test "$enable_file_reader" = "yes"]) -AM_CONDITIONAL([ENABLE_FILE_WRITER],[test "$enable_file_writer" = "yes"]) -AM_CONDITIONAL([ENABLE_GEOLOCATION], [test "$enable_geolocation" = "yes"]) -AM_CONDITIONAL([ENABLE_MATHML], [test "$enable_mathml" = "yes"]) -AM_CONDITIONAL([ENABLE_RUBY],[test "$enable_ruby" = "yes"]) -AM_CONDITIONAL([ENABLE_SANDBOX],[test "$enable_sandbox" = "yes"]) -AM_CONDITIONAL([ENABLE_VIDEO],[test "$enable_video" = "yes"]) -AM_CONDITIONAL([ENABLE_NOTIFICATIONS],[test "$enable_notifications" = "yes"]) -AM_CONDITIONAL([ENABLE_ORIENTATION_EVENTS],[test "$enable_orientation_events" = "yes"]) -AM_CONDITIONAL([ENABLE_SVG],[test "$enable_svg" = "yes"]) -AM_CONDITIONAL([ENABLE_SVG_ANIMATION],[test "$enable_svg_animation" = "yes"]) -AM_CONDITIONAL([ENABLE_SVG_FONTS],[test "$enable_svg_fonts" = "yes"]) -AM_CONDITIONAL([ENABLE_SVG_FOREIGN_OBJECT],[test "$enable_svg_foreign_object" = "yes"]) -AM_CONDITIONAL([ENABLE_SVG_AS_IMAGE],[test "$enable_svg_as_image" = "yes"]) -AM_CONDITIONAL([ENABLE_SVG_USE],[test "$enable_svg_use" = "yes"]) -AM_CONDITIONAL([ENABLE_COVERAGE],[test "$enable_coverage" = "yes"]) -AM_CONDITIONAL([ENABLE_FAST_MALLOC],[test "$enable_fast_malloc" = "yes"]) -AM_CONDITIONAL([ENABLE_WML],[test "$enable_wml" = "yes"]) -AM_CONDITIONAL([ENABLE_WORKERS],[test "$enable_workers" = "yes"]) -AM_CONDITIONAL([ENABLE_SHARED_WORKERS],[test "$enable_shared_workers" = "yes"]) -AM_CONDITIONAL([SVG_FLAGS],[test "$svg_flags" = "yes"]) -AM_CONDITIONAL([HTML_FLAGS],[test "$html_flags" = "yes"]) -AM_CONDITIONAL([ENABLE_WEB_SOCKETS],[test "$enable_web_sockets" = "yes"]) -AM_CONDITIONAL([ENABLE_WEB_TIMING],[test "$enable_web_timing" = "yes"]) - -# Gtk conditionals -AM_CONDITIONAL([ENABLE_INTROSPECTION],[test "$enable_introspection" = "yes"]) - - -AC_CONFIG_FILES([ -GNUmakefile -WebKit/gtk/webkit/webkitversion.h -WebKit/gtk/docs/GNUmakefile -WebKit/gtk/docs/version.xml -] -) - -AC_CONFIG_FILES([ -WebKit/gtk/${WEBKITGTK_PC_NAME}-${WEBKITGTK_API_VERSION}.pc:WebKit/gtk/webkit.pc.in -WebKit/gtk/JSCore-${WEBKITGTK_API_VERSION}.gir:WebKit/gtk/JSCore.gir.in] -,[WEBKITGTK_API_VERSION=$WEBKITGTK_API_VERSION,WEBKITGTK_PC_NAME=$WEBKITGTK_PC_NAME] -) - -AC_OUTPUT - -echo " -WebKit was configured with the following options: - -Build configuration: - Enable debugging (slow) : $enable_debug - Enable GCC build optimization : $enable_optimizations - Code coverage support : $enable_coverage - Unicode backend : $with_unicode_backend - Font backend : $with_font_backend - Optimized memory allocator : $enable_fast_malloc -Features: - 3D Transforms : $enable_3D_transforms - Blob.slice support : $enable_blob_slice - Fast Mobile Scrolling : $enable_fast_mobile_scrolling - JIT compilation : $enable_jit - Filters support : $enable_filters - FileReader support : $enable_file_reader - FileWriter support : $enable_file_writer - Geolocation support : $enable_geolocation - JavaScript debugger/profiler support : $enable_javascript_debugger - MathML support : $enable_mathml - HTML5 offline web applications support : $enable_offline_web_applications - HTML5 channel messaging support : $enable_channel_messaging - HTML5 client-side session and persistent storage support : $enable_dom_storage - HTML5 client-side database storage support : $enable_database - HTML5 ruby support : $enable_ruby - HTML5 sandboxed iframe support : $enable_sandbox - HTML5 server-sent events support : $enable_eventsource - HTML5 video element support : $enable_video - Icon database support : $enable_icon_database - Image resizer support : $enable_image_resizer - SharedWorkers support : $enable_shared_workers - Speech input support : $enable_input_speech - SVG support : $enable_svg - SVG animation support : $enable_svg_animation - SVG fonts support : $enable_svg_fonts - SVG foreign object support : $enable_svg_foreign_object - SVG as image support : $enable_svg_as_image - SVG use element support : $enable_svg_use - WML support : $enable_wml - Web Sockets support : $enable_web_sockets - Web Timing support : $enable_web_timing - Web Workers support : $enable_workers - XHTML-MP support : $enable_xhtmlmp - XPATH support : $enable_xpath - XSLT support : $enable_xslt -GTK+ configuration: - GTK+ version : $with_gtk - GDK target : $with_target - Hildon UI extensions : $with_hildon - Introspection support : $enable_introspection -" -if test "$with_unicode_backend" = "glib"; then - echo " >> WARNING: the glib-based unicode backend is slow and incomplete <<" - echo - echo -fi diff --git a/meta/packages/webkit/files/fix_im.patch b/meta/packages/webkit/files/fix_im.patch deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/meta/packages/webkit/files/gtk-doc.make b/meta/packages/webkit/files/gtk-doc.make deleted file mode 100644 index 354ffb7c66..0000000000 --- a/meta/packages/webkit/files/gtk-doc.make +++ /dev/null @@ -1,173 +0,0 @@ -# -*- mode: makefile -*- - -#################################### -# Everything below here is generic # -#################################### - -if GTK_DOC_USE_LIBTOOL -GTKDOC_CC = $(LIBTOOL) --mode=compile $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -GTKDOC_LD = $(LIBTOOL) --mode=link $(CC) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -else -GTKDOC_CC = $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -GTKDOC_LD = $(CC) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -endif - -# We set GPATH here; this gives us semantics for GNU make -# which are more like other make's VPATH, when it comes to -# whether a source that is a target of one rule is then -# searched for in VPATH/GPATH. -# -GPATH = $(srcdir) - -TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE) - -EXTRA_DIST = \ - $(content_files) \ - $(HTML_IMAGES) \ - $(DOC_MAIN_SGML_FILE) \ - $(DOC_MODULE)-sections.txt \ - $(DOC_MODULE)-overrides.txt - -DOC_STAMPS=scan-build.stamp tmpl-build.stamp sgml-build.stamp html-build.stamp \ - $(srcdir)/tmpl.stamp $(srcdir)/sgml.stamp $(srcdir)/html.stamp - -SCANOBJ_FILES = \ - $(DOC_MODULE).args \ - $(DOC_MODULE).hierarchy \ - $(DOC_MODULE).interfaces \ - $(DOC_MODULE).prerequisites \ - $(DOC_MODULE).signals - -REPORT_FILES = \ - $(DOC_MODULE)-undocumented.txt \ - $(DOC_MODULE)-undeclared.txt \ - $(DOC_MODULE)-unused.txt - -CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS) - -if ENABLE_GTK_DOC -all-local: html-build.stamp -else -all-local: -endif - -docs: html-build.stamp - -#### scan #### - -scan-build.stamp: $(HFILE_GLOB) $(CFILE_GLOB) - @echo 'gtk-doc: Scanning header files' - @-chmod -R u+w $(srcdir) - cd $(srcdir) && \ - gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --ignore-headers="$(IGNORE_HFILES)" $(SCAN_OPTIONS) $(EXTRA_HFILES) - if grep -l '^..*$$' $(srcdir)/$(DOC_MODULE).types > /dev/null 2>&1 ; then \ - CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" CFLAGS="$(GTKDOC_CFLAGS)" LDFLAGS="$(GTKDOC_LIBS)" gtkdoc-scangobj $(SCANGOBJ_OPTIONS) --module=$(DOC_MODULE) --output-dir=$(srcdir) ; \ - else \ - cd $(srcdir) ; \ - for i in $(SCANOBJ_FILES) ; do \ - test -f $$i || touch $$i ; \ - done \ - fi - touch scan-build.stamp - -$(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt: scan-build.stamp - @true - -#### templates #### - -tmpl-build.stamp: $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt - @echo 'gtk-doc: Rebuilding template files' - @-chmod -R u+w $(srcdir) - cd $(srcdir) && gtkdoc-mktmpl --module=$(DOC_MODULE) $(MKTMPL_OPTIONS) - touch tmpl-build.stamp - -tmpl.stamp: tmpl-build.stamp - @true - -tmpl/*.sgml: - @true - - -#### xml #### - -sgml-build.stamp: tmpl.stamp $(HFILE_GLOB) $(CFILE_GLOB) $(DOC_MODULE)-sections.txt $(srcdir)/tmpl/*.sgml $(expand_content_files) - @echo 'gtk-doc: Building XML' - @-chmod -R u+w $(srcdir) - cd $(srcdir) && \ - gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --output-format=xml --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) $(MKDB_OPTIONS) - touch sgml-build.stamp - -sgml.stamp: sgml-build.stamp - @true - -#### html #### - -html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) - @echo 'gtk-doc: Building HTML' - @-chmod -R u+w $(srcdir) - rm -rf $(srcdir)/html - mkdir $(srcdir)/html - cd $(srcdir)/html && gtkdoc-mkhtml $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE) - test "x$(HTML_IMAGES)" = "x" || ( cd $(srcdir) && cp $(HTML_IMAGES) html ) - @echo 'gtk-doc: Fixing cross-references' - cd $(srcdir) && gtkdoc-fixxref --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS) - touch html-build.stamp - -############## - -clean-local: - rm -f *~ *.bak - rm -rf .libs - -distclean-local: - cd $(srcdir) && \ - rm -rf xml $(REPORT_FILES) \ - $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt - -maintainer-clean-local: clean - cd $(srcdir) && rm -rf xml html - -install-data-local: - -installfiles=`echo $(srcdir)/html/*`; \ - if test "$$installfiles" = '$(srcdir)/html/*'; \ - then echo '-- Nothing to install' ; \ - else \ - $(mkinstalldirs) $(DESTDIR)$(TARGET_DIR); \ - for i in $$installfiles; do \ - echo '-- Installing '$$i ; \ - $(INSTALL_DATA) $$i $(DESTDIR)$(TARGET_DIR); \ - done; \ - echo '-- Installing $(srcdir)/html/index.sgml' ; \ - $(INSTALL_DATA) $(srcdir)/html/index.sgml $(DESTDIR)$(TARGET_DIR) || :; \ - which gtkdoc-rebase >/dev/null && \ - gtkdoc-rebase --relative --dest-dir=$(DESTDIR) --html-dir=$(DESTDIR)$(TARGET_DIR) ; \ - fi - - -uninstall-local: - rm -f $(DESTDIR)$(TARGET_DIR)/* - -# -# Require gtk-doc when making dist -# -if ENABLE_GTK_DOC -dist-check-gtkdoc: -else -dist-check-gtkdoc: - @echo "*** gtk-doc must be installed and enabled in order to make dist" - @false -endif - -dist-hook: dist-check-gtkdoc dist-hook-local - mkdir $(distdir)/tmpl - mkdir $(distdir)/xml - mkdir $(distdir)/html - -cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl - -cp $(srcdir)/xml/*.xml $(distdir)/xml - cp $(srcdir)/html/* $(distdir)/html - -cp $(srcdir)/$(DOC_MODULE).types $(distdir)/ - -cp $(srcdir)/$(DOC_MODULE)-sections.txt $(distdir)/ - cd $(distdir) && rm -f $(DISTCLEANFILES) - -gtkdoc-rebase --online --relative --html-dir=$(distdir)/html - -.PHONY : dist-hook-local docs diff --git a/meta/packages/webkit/webkit-gtk_svn.bb b/meta/packages/webkit/webkit-gtk_svn.bb deleted file mode 100644 index fe31b9c24c..0000000000 --- a/meta/packages/webkit/webkit-gtk_svn.bb +++ /dev/null @@ -1,71 +0,0 @@ -DESCRIPTION = "WebKitGTK+ is the port of the portable web rendering engine WebKitK to the GTK+ platform." -HOMEPAGE = "http://www.webkitgtk.org/" -BUGTRACKER = "http://bugs.webkit.org/" - -LICENSE = "BSD & LGPLv2+" -LIC_FILES_CHKSUM = "file://WebCore/rendering/RenderApplet.h;endline=22;md5=fb9694013ad71b78f8913af7a5959680 \ - file://WebKit/gtk/webkit/webkit.h;endline=21;md5=b4fbe9f4a944f1d071dba1d2c76b3351 \ - file://JavaScriptCore/parser/Parser.h;endline=23;md5=2f3cff0ad0a9c486da5a376928973a90" - -DEPENDS = "enchant gnome-keyring libsoup-2.4 curl icu libxml2 cairo libxslt libxt libidn gnutls gtk+ gstreamer gst-plugins-base gnome-vfs flex-native gperf-native perl-native sqlite3" -DEPENDS_darwin8 = "curl icu libxml2 cairo libxslt libidn gnutls gtk+ gstreamer flex-native gperf-native perl-native sqlite3" - -SRCREV_FORMAT = "webcore-rwebkit" - -PV = "1.3.2+svnr${SRCREV}" -PR = "r0" - -SRC_URI = "\ - svn://svn.webkit.org/repository/webkit/trunk/;module=JavaScriptCore;proto=http \ - svn://svn.webkit.org/repository/webkit/trunk/;module=JavaScriptGlue;proto=http \ - svn://svn.webkit.org/repository/webkit/trunk/;module=WebCore;proto=http;name=webcore \ - svn://svn.webkit.org/repository/webkit/trunk/;module=WebKit;proto=http;name=webkit \ - svn://svn.webkit.org/repository/webkit/trunk/;module=WebKitLibraries;proto=http \ - svn://svn.webkit.org/repository/webkit/trunk/;module=WebKitTools;proto=http \ - svn://svn.webkit.org/repository/webkit/trunk/;module=autotools;proto=http \ - file://Makefile \ - file://Makefile.shared \ - file://autogen.sh \ - file://configure.ac \ - file://GNUmakefile.am \ - file://gtk-doc.make \ - " - -S = "${WORKDIR}/" - -inherit autotools lib_package pkgconfig - -EXTRA_OECONF = "\ - --enable-debug=no \ - --enable-svg \ - --enable-icon-database=yes \ - --disable-fast-malloc \ - " - -EXTRA_AUTORECONF = " -I autotools " - -do_compile_prepend() { - mkdir -p ${S}/WebKitBuilds/Debug/JavaScriptCore/pcre/tmp/ - mkdir -p ${S}/Programs/ - cd ${S}/JavaScriptCore/pcre - if test -e dftables.c - then - ${BUILD_CC} dftables.c -o dftables -I. -I../wtf - elif test -e dftables.cpp - then - ${BUILD_CXX} dftables.cpp -o dftables -I. -I../wtf - fi - cp dftables ${S}/WebKitBuilds/Debug/JavaScriptCore/pcre/tmp/ - cp dftables ${S}/Programs/ - cd ${S} -} - -PACKAGES =+ "${PN}-webinspector ${PN}launcher-dbg ${PN}launcher libjavascriptcore" -FILES_${PN}launcher = "${bindir}/GtkLauncher" -FILES_${PN}launcher-dbg = "${bindir}/.debug/GtkLauncher" -FILES_libjavascriptcore = "${libdir}/libJavaScriptCore.so.*" -FILES_${PN}-webinspector = "${datadir}/webkit-1.0/webinspector/" -FILES_${PN} += "${datadir}/webkit-1.0/resources/error.html ${datadir}/webkit-1.0/images" - - - diff --git a/meta/packages/wv/wv-1.2.0/pkgconfig.patch b/meta/packages/wv/wv-1.2.0/pkgconfig.patch deleted file mode 100644 index 136d89341f..0000000000 --- a/meta/packages/wv/wv-1.2.0/pkgconfig.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: wv-1.2.0/wv-1.0.pc.in -=================================================================== ---- wv-1.2.0.orig/wv-1.0.pc.in 2008-03-19 22:25:18.000000000 +0000 -+++ wv-1.2.0/wv-1.0.pc.in 2008-03-19 22:26:32.000000000 +0000 -@@ -6,5 +6,6 @@ - Name: wvWare - Description: Word Document Filter library and utilities - Version: @VERSION@ --Libs: -L${libdir} -lwv @WMF_LIBS@ @XML_LIBS@ @GLIB_LIBS@ @GSF_LIBS@ @PNG_LIBS@ @ZLIB_LIBS@ @LIBS@ -lm --Cflags: -I${includedir}/wv @GSF_CFLAGS@ -+Requires: libgsf-1 -+Libs: -L${libdir} -lwv @WMF_LIBS@ @XML_LIBS@ @PNG_LIBS@ @ZLIB_LIBS@ @LIBS@ -lm -+Cflags: -I${includedir}/wv diff --git a/meta/packages/wv/wv_1.2.0.bb b/meta/packages/wv/wv_1.2.0.bb deleted file mode 100644 index c4c115b90e..0000000000 --- a/meta/packages/wv/wv_1.2.0.bb +++ /dev/null @@ -1,14 +0,0 @@ -DESCRIPTION = "Programs for accessing Microsoft Word documents" -HOMEPAGE = "http://wvware.sourceforge.net/" -LICENSE = "GPLv2" -DEPENDS = "libgsf glib-2.0" -PR = "r3" - -SRC_URI = "${SOURCEFORGE_MIRROR}/wvware/wv-${PV}.tar.gz \ - file://pkgconfig.patch;patch=1" - -inherit autotools pkgconfig - -S = "${WORKDIR}/${PN}-${PV}" - -EXTRA_OECONF = "" diff --git a/meta/packages/x11vnc/x11vnc_0.9.3.bb b/meta/packages/x11vnc/x11vnc_0.9.3.bb deleted file mode 100644 index 5269ff3091..0000000000 --- a/meta/packages/x11vnc/x11vnc_0.9.3.bb +++ /dev/null @@ -1,11 +0,0 @@ -DESCRIPTION = "Export your X session on-the-fly via VNC" -SECTION = "x11/utils" -HOMEPAGE = "http://www.karlrunge.com/x11vnc/" -AUTHOR = "Karl Runge" -LICENSE = "GPL" -DEPENDS = "openssl virtual/libx11 libxext avahi jpeg zlib" - -SRC_URI = "${SOURCEFORGE_MIRROR}/libvncserver/x11vnc-${PV}.tar.gz" - -inherit autotools - diff --git a/meta/packages/xournal/files/ldflags.patch b/meta/packages/xournal/files/ldflags.patch deleted file mode 100644 index 7f6585befb..0000000000 --- a/meta/packages/xournal/files/ldflags.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- - src/Makefile.am | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -Index: xournal-0.2/src/Makefile.am -=================================================================== ---- xournal-0.2.orig/src/Makefile.am 2007-05-09 15:06:26.000000000 +0100 -+++ xournal-0.2/src/Makefile.am 2007-05-09 15:06:35.000000000 +0100 -@@ -21,5 +21,5 @@ xournal_SOURCES = \ - xo-interface.c xo-interface.h \ - xo-callbacks.c xo-callbacks.h - --xournal_LDADD = @PACKAGE_LIBS@ -+xournal_LDADD = @PACKAGE_LIBS@ -lz - diff --git a/meta/packages/xournal/files/no-printing.diff b/meta/packages/xournal/files/no-printing.diff deleted file mode 100644 index 7a4724e696..0000000000 --- a/meta/packages/xournal/files/no-printing.diff +++ /dev/null @@ -1,178 +0,0 @@ -diff -ru xournal-0.2/configure.in xournal-0.2.noprint/configure.in ---- xournal-0.2/configure.in 2006-01-29 22:25:10.000000000 +0000 -+++ xournal-0.2.noprint/configure.in 2006-03-17 13:08:01.000000000 +0000 -@@ -10,11 +10,16 @@ - AM_PROG_CC_STDC - AC_HEADER_STDC - --pkg_modules="gtk+-2.0 >= 2.4.0 libgnomecanvas-2.0 >= 2.4.0 libgnomeprintui-2.2 >= 2.0.0" -+pkg_modules="gtk+-2.0 >= 2.4.0 libgnomecanvas-2.0 >= 2.4.0" - PKG_CHECK_MODULES(PACKAGE, [$pkg_modules]) - AC_SUBST(PACKAGE_CFLAGS) - AC_SUBST(PACKAGE_LIBS) - -+#PKG_CHECK_MODULES(GNOMEPRINT, libgnomeprintui-2.2 >= 2.0.0 -+#AC_SUBST(GNOMEPRINT_CFLAGS) -+#AC_SUBST(GNOMEPRINT_LIBS) -+AM_CONDITIONAL(ENABLE_PRINTING, false) -+ - AC_OUTPUT([ - Makefile - src/Makefile -diff -ru xournal-0.2/src/main.c xournal-0.2.noprint/src/main.c ---- xournal-0.2/src/main.c 2006-01-29 22:22:52.000000000 +0000 -+++ xournal-0.2.noprint/src/main.c 2006-03-17 13:14:50.000000000 +0000 -@@ -28,7 +28,9 @@ - - void hide_unimplemented(void) - { -+#if ENABLE_PRINTING - gtk_widget_hide(GET_COMPONENT("filePrintOptions")); -+#endif - gtk_widget_hide(GET_COMPONENT("journalFlatten")); - gtk_widget_hide(GET_COMPONENT("papercolorOther")); - gtk_widget_hide(GET_COMPONENT("journalApplyAllPages")); -diff -ru xournal-0.2/src/Makefile.am xournal-0.2.noprint/src/Makefile.am ---- xournal-0.2/src/Makefile.am 2005-12-14 20:54:42.000000000 +0000 -+++ xournal-0.2.noprint/src/Makefile.am 2006-03-17 13:07:47.000000000 +0000 -@@ -7,12 +7,16 @@ - - bin_PROGRAMS = xournal - -+if ENABLE_PRINTING -+PRINT_SOURCE = xo-print.c xo-print.h -+endif -+ - xournal_SOURCES = \ - main.c xournal.h \ - xo-misc.c xo-misc.h \ - xo-file.c xo-file.h \ - xo-paint.c xo-paint.h \ -- xo-print.c xo-print.h \ -+ $(PRINT_SOURCE) \ - xo-support.c xo-support.h \ - xo-interface.c xo-interface.h \ - xo-callbacks.c xo-callbacks.h -diff -ru xournal-0.2/src/xo-callbacks.c xournal-0.2.noprint/src/xo-callbacks.c ---- xournal-0.2/src/xo-callbacks.c 2006-01-29 19:39:22.000000000 +0000 -+++ xournal-0.2.noprint/src/xo-callbacks.c 2006-03-17 13:12:01.000000000 +0000 -@@ -7,7 +7,9 @@ - #include - #include - #include -+#if ENABLE_PRINTING - #include -+#endif - #include - - #include "xournal.h" -@@ -17,7 +19,9 @@ - #include "xo-misc.h" - #include "xo-file.h" - #include "xo-paint.h" -+#if ENABLE_PRINTING - #include "xo-print.h" -+#endif - - void - on_fileNew_activate (GtkMenuItem *menuitem, -@@ -261,7 +265,7 @@ - - } - -- -+#if ENABLE_PRINTING - void - on_filePrint_activate (GtkMenuItem *menuitem, - gpointer user_data) -@@ -407,7 +411,7 @@ - - g_free(filename); - } -- -+#endif - - void - on_fileQuit_activate (GtkMenuItem *menuitem, -diff -ru xournal-0.2/src/xo-callbacks.h xournal-0.2.noprint/src/xo-callbacks.h ---- xournal-0.2/src/xo-callbacks.h 2006-01-26 20:47:00.000000000 +0000 -+++ xournal-0.2.noprint/src/xo-callbacks.h 2006-03-17 13:08:45.000000000 +0000 -@@ -24,6 +24,7 @@ - on_filePrintOptions_activate (GtkMenuItem *menuitem, - gpointer user_data); - -+#if ENABLE_PRINTING - void - on_filePrint_activate (GtkMenuItem *menuitem, - gpointer user_data); -@@ -32,6 +33,8 @@ - on_filePrintPDF_activate (GtkMenuItem *menuitem, - gpointer user_data); - -+#endif -+ - void - on_fileQuit_activate (GtkMenuItem *menuitem, - gpointer user_data); -diff -ru xournal-0.2/src/xo-interface.c xournal-0.2.noprint/src/xo-interface.c ---- xournal-0.2/src/xo-interface.c 2006-01-29 18:58:25.000000000 +0000 -+++ xournal-0.2.noprint/src/xo-interface.c 2006-03-17 13:11:31.000000000 +0000 -@@ -41,10 +41,12 @@ - GtkWidget *fileSave; - GtkWidget *fileSaveAs; - GtkWidget *separator1; -+#if ENABLE_PRINTING - GtkWidget *filePrintOptions; - GtkWidget *image501; - GtkWidget *filePrint; - GtkWidget *filePrintPDF; -+#endif - GtkWidget *separator2; - GtkWidget *fileQuit; - GtkWidget *menuEdit; -@@ -327,6 +329,7 @@ - gtk_container_add (GTK_CONTAINER (menuFile_menu), separator1); - gtk_widget_set_sensitive (separator1, FALSE); - -+#if ENABLE_PRINTING - filePrintOptions = gtk_image_menu_item_new_with_mnemonic ("Print Options"); - gtk_widget_show (filePrintOptions); - gtk_container_add (GTK_CONTAINER (menuFile_menu), filePrintOptions); -@@ -347,6 +350,7 @@ - gtk_widget_show (separator2); - gtk_container_add (GTK_CONTAINER (menuFile_menu), separator2); - gtk_widget_set_sensitive (separator2, FALSE); -+#endif - - fileQuit = gtk_image_menu_item_new_from_stock ("gtk-quit", accel_group); - gtk_widget_show (fileQuit); -@@ -1522,6 +1526,7 @@ - g_signal_connect ((gpointer) fileSaveAs, "activate", - G_CALLBACK (on_fileSaveAs_activate), - NULL); -+#if ENABLE_PRINTING - g_signal_connect ((gpointer) filePrintOptions, "activate", - G_CALLBACK (on_filePrintOptions_activate), - NULL); -@@ -1531,6 +1536,7 @@ - g_signal_connect ((gpointer) filePrintPDF, "activate", - G_CALLBACK (on_filePrintPDF_activate), - NULL); -+#endif - g_signal_connect ((gpointer) fileQuit, "activate", - G_CALLBACK (on_fileQuit_activate), - NULL); -@@ -1941,11 +1947,13 @@ - GLADE_HOOKUP_OBJECT (winMain, fileSave, "fileSave"); - GLADE_HOOKUP_OBJECT (winMain, fileSaveAs, "fileSaveAs"); - GLADE_HOOKUP_OBJECT (winMain, separator1, "separator1"); -+#if ENABLE_PRINTING - GLADE_HOOKUP_OBJECT (winMain, filePrintOptions, "filePrintOptions"); - GLADE_HOOKUP_OBJECT (winMain, image501, "image501"); - GLADE_HOOKUP_OBJECT (winMain, filePrint, "filePrint"); - GLADE_HOOKUP_OBJECT (winMain, filePrintPDF, "filePrintPDF"); - GLADE_HOOKUP_OBJECT (winMain, separator2, "separator2"); -+#endif - GLADE_HOOKUP_OBJECT (winMain, fileQuit, "fileQuit"); - GLADE_HOOKUP_OBJECT (winMain, menuEdit, "menuEdit"); - GLADE_HOOKUP_OBJECT (winMain, menuEdit_menu, "menuEdit_menu"); diff --git a/meta/packages/xournal/xournal_0.2.bb b/meta/packages/xournal/xournal_0.2.bb deleted file mode 100644 index 1ca6e1ed7c..0000000000 --- a/meta/packages/xournal/xournal_0.2.bb +++ /dev/null @@ -1,12 +0,0 @@ -HOMEPAGE = "http://www-math.mit.edu/~auroux/software/xournal/" -DESCRIPTION = "Xournal is an application for notetaking, sketching, keeping a journal using a stylus." -DEPENDS = "gtk+ libgnomecanvas zlib" -SECTION = "x11" -LICENSE = "GPL" -PR = "r2" - -SRC_URI = "http://math.mit.edu/~auroux/software/xournal/xournal-0.2.tar.gz \ - file://ldflags.patch;patch=1 \ - file://no-printing.diff;patch=1" - -inherit autotools pkgconfig diff --git a/meta/packages/xrestop/xrestop_0.4.bb b/meta/packages/xrestop/xrestop_0.4.bb deleted file mode 100644 index 1fd24503a7..0000000000 --- a/meta/packages/xrestop/xrestop_0.4.bb +++ /dev/null @@ -1,16 +0,0 @@ -DESCRIPTION = "top-like statistics of X11 server resource usage by clients" -HOMEPAGE = "http://www.freedesktop.org/wiki/Software/xrestop" -BUGTRACKER = "https://bugs.freedesktop.org/" - -LICENSE = "GPLv2 + GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ - file://xrestop.c;endline=18;md5=730876c30f0d8a928676bcd1242a3b35" - -SECTION = "x11/utils" -PR = "r2" - -DEPENDS = "libxres libxext virtual/libx11" - -SRC_URI = "http://projects.o-hand.com/sources/xrestop/xrestop-${PV}.tar.gz" - -inherit autotools diff --git a/meta/packages/xvideo-tests/xvideo-tests_svn.bb b/meta/packages/xvideo-tests/xvideo-tests_svn.bb deleted file mode 100644 index 0aa861f688..0000000000 --- a/meta/packages/xvideo-tests/xvideo-tests_svn.bb +++ /dev/null @@ -1,13 +0,0 @@ -DESCRIPTION = "Simple XVideo test application" -LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \ - file://src/test-xvideo.c;beginline=1;endline=20;md5=6ae3b4c3c2ff9e51dbbc35bb237afa00" -DEPENDS = "libxv" -PV = "0.0+svnr${SRCREV}" -PR = "r0" - -SRC_URI="svn://svn.o-hand.com/repos/misc/trunk;module=test-xvideo;proto=http" - -S = "${WORKDIR}/test-xvideo" - -inherit autotools diff --git a/meta/packages/yaffs2/files/mkyaffs2image.patch b/meta/packages/yaffs2/files/mkyaffs2image.patch deleted file mode 100644 index 521f1ba9a0..0000000000 --- a/meta/packages/yaffs2/files/mkyaffs2image.patch +++ /dev/null @@ -1,345 +0,0 @@ - * - * mkyaffs2image hacks by NCB - * - * Changes by Sergey Kubushin flagged KSI - * - */ - -/* KSI: - * All this nightmare should be rewritten from ground up. Why save return - * values if nobody checks them? The read/write function returns only one - * error, -1. Positive return value does NOT mean read/write operation has - * been completed successfully. If somebody opens files, he MUST close them - * when they are not longer needed. Only those brave enough can write 64 - * bytes from a yaffs_PackedTags2 structure. The list is too long, there is - * enough bugs here to write a couple of thick books on how NOT to write - * programs... - * - * And BTW, what was one supposed to do with that file that this horror - * occasionally managed to generate? - */ -diff -urN yaffs2.orig/utils/mkyaffs2image.c yaffs2/utils/mkyaffs2image.c ---- yaffs2.orig/utils/mkyaffs2image.c 2005-12-12 16:34:58.000000000 -0800 -+++ yaffs2/utils/mkyaffs2image.c 2006-02-10 16:56:13.000000000 -0800 -@@ -31,10 +47,10 @@ - #include - #include - #include -+#include - #include "yaffs_ecc.h" - #include "yaffs_guts.h" - --#include "yaffs_tagsvalidity.h" - #include "yaffs_packedtags2.h" - - unsigned yaffs_traceMask=0; -@@ -43,9 +59,45 @@ - - #define chunkSize 2048 - #define spareSize 64 -+#define PT2_BYTES 25 - - const char * mkyaffsimage_c_version = "$Id: mkyaffs2image.c,v 1.4 2007-02-14 01:09:06 wookey Exp $"; - -+static int layout_no; -+ -+static struct nand_oobinfo oob_layout[] = { -+ /* KSI: -+ * Dummy "raw" layout - no ECC, all the bytes are free. Does NOT -+ * really work, only used for compatibility with CVS YAFFS2 that -+ * never ever worked with any stock MTD. -+ */ -+ { -+ .useecc = MTD_NANDECC_AUTOPLACE, -+ .eccbytes = 0, -+ .eccpos = {}, -+ .oobfree = { {0, 64} } -+ }, -+ /* KSI: -+ * Regular MTD AUTOPLACED ECC for large page NAND devices, the -+ * only one existing in stock MTD so far. It corresponds to layout# 1 -+ * in command line arguments. Any other layouts could be added to -+ * the list when they made their way in kernel's MTD. The structure -+ * is simply copied from kernel's drivers/mtd/nand/nand_base.c as-is. -+ */ -+ { -+ .useecc = MTD_NANDECC_AUTOPLACE, -+ .eccbytes = 24, -+ .eccpos = { -+ 40, 41, 42, 43, 44, 45, 46, 47, -+ 48, 49, 50, 51, 52, 53, 54, 55, -+ 56, 57, 58, 59, 60, 61, 62, 63}, -+ .oobfree = { {2, 38} } -+ }, -+ /* End-of-list marker */ -+ { -+ .useecc = -1, -+ } -+}; - - typedef struct - { -@@ -59,7 +111,7 @@ - static int n_obj = 0; - static int obj_id = YAFFS_NOBJECT_BUCKETS + 1; - --static int nObjects, nDirectories, nPages; -+static int nObjects = 0, nDirectories = 0, nPages = 0; - - static int outFile; - -@@ -123,6 +175,11 @@ - return -1; - } - -+/* KSI: -+ * No big endian for now. This is left for a later time. The existing code -+ * is FUBAR. -+ */ -+#if 0 - /* This little function converts a little endian tag to a big endian tag. - * NOTE: The tag is not usable after this other than calculating the CRC - * with. -@@ -155,11 +212,56 @@ - tags->asBytes[7] = temp.asBytes[7]; - #endif - } -+#endif -+ -+void nandmtd2_pt2buf(unsigned char *buf, yaffs_PackedTags2 *pt) -+{ -+ int i, j = 0, k, n; -+ unsigned char pt2_byte_buf[PT2_BYTES]; -+ -+ *((unsigned int *) &pt2_byte_buf[0]) = pt->t.sequenceNumber; -+ *((unsigned int *) &pt2_byte_buf[4]) = pt->t.objectId; -+ *((unsigned int *) &pt2_byte_buf[8]) = pt->t.chunkId; -+ *((unsigned int *) &pt2_byte_buf[12]) = pt->t.byteCount; -+ pt2_byte_buf[16] = pt->ecc.colParity; -+ pt2_byte_buf[17] = pt->ecc.lineParity & 0xff; -+ pt2_byte_buf[18] = (pt->ecc.lineParity >> 8) & 0xff; -+ pt2_byte_buf[19] = (pt->ecc.lineParity >> 16) & 0xff; -+ pt2_byte_buf[20] = (pt->ecc.lineParity >> 24) & 0xff; -+ pt2_byte_buf[21] = pt->ecc.lineParityPrime & 0xff; -+ pt2_byte_buf[22] = (pt->ecc.lineParityPrime >> 8) & 0xff; -+ pt2_byte_buf[23] = (pt->ecc.lineParityPrime >> 16) & 0xff; -+ pt2_byte_buf[24] = (pt->ecc.lineParityPrime >> 24) & 0xff; -+ -+ k = oob_layout[layout_no].oobfree[j][0]; -+ n = oob_layout[layout_no].oobfree[j][1]; -+ -+ if (n == 0) { -+ fprintf(stderr, "No OOB space for tags"); -+ exit(-1); -+ } -+ -+ for (i = 0; i < PT2_BYTES; i++) { -+ if (n == 0) { -+ j++; -+ k = oob_layout[layout_no].oobfree[j][0]; -+ n = oob_layout[layout_no].oobfree[j][1]; -+ if (n == 0) { -+ fprintf(stderr, "No OOB space for tags"); -+ exit(-1); -+ } -+ } -+ buf[k++] = pt2_byte_buf[i]; -+ n--; -+ } -+} - - static int write_chunk(__u8 *data, __u32 objId, __u32 chunkId, __u32 nBytes) - { - yaffs_ExtendedTags t; - yaffs_PackedTags2 pt; -+ unsigned char spare_buf[spareSize]; -+ - - error = write(outFile,data,chunkSize); - if(error < 0) return error; -@@ -177,18 +279,27 @@ - // added NCB **CHECK** - t.chunkUsed = 1; - -+/* KSI: Broken anyway -- e.g. &t is pointer to a wrong type... */ -+#if 0 - if (convert_endian) - { - little_to_big_endian(&t); - } -+#endif - - nPages++; - - yaffs_PackTags2(&pt,&t); -- --// return write(outFile,&pt,sizeof(yaffs_PackedTags2)); -- return write(outFile,&pt,spareSize); -- -+ -+ memset(spare_buf, 0xff, sizeof(spare_buf)); -+ -+ if (layout_no == 0) { -+ memcpy(spare_buf, &pt, sizeof(yaffs_PackedTags2)); -+ } else { -+ nandmtd2_pt2buf(spare_buf, &pt); -+ } -+ -+ return write(outFile,spare_buf,spareSize); - } - - #define SWAP32(x) ((((x) & 0x000000FF) << 24) | \ -@@ -199,6 +310,8 @@ - #define SWAP16(x) ((((x) & 0x00FF) << 8) | \ - (((x) & 0xFF00) >> 8)) - -+/* KSI: Removed for now. TBD later when the proper util (from scratch) is written */ -+#if 0 - // This one is easier, since the types are more standard. No funky shifts here. - static void object_header_little_to_big_endian(yaffs_ObjectHeader* oh) - { -@@ -256,6 +369,7 @@ - oh->roomToGrow[11] = SWAP32(oh->roomToGrow[11]); - #endif - } -+#endif - - static int write_object_header(int objId, yaffs_ObjectType t, struct stat *s, int parent, const char *name, int equivalentObj, const char * alias) - { -@@ -300,10 +414,13 @@ - strncpy(oh->alias,alias,YAFFS_MAX_ALIAS_LENGTH); - } - -+/* KSI: FUBAR. Left for a leter time. */ -+#if 0 - if (convert_endian) - { - object_header_little_to_big_endian(oh); - } -+#endif - - return write_chunk(bytes,objId,0,0xffff); - -@@ -319,7 +436,7 @@ - nDirectories++; - - dir = opendir(path); -- -+ - if(dir) - { - while((entry = readdir(dir)) != NULL) -@@ -403,12 +520,12 @@ - error = nBytes; - - printf("%d data chunks written\n",chunk); -+ close(h); - } - else - { - perror("Error opening file"); - } -- close(h); - - } - -@@ -448,58 +565,82 @@ - } - } - } -+ /* KSI: -+ * Who is supposed to close those open directories in this -+ * recursive function, lord Byron? Stock "ulimit -n" is 1024 -+ * and e.g. stock Fedora /etc directory has more that 1024 -+ * directories... -+ */ -+ closedir(dir); - } - - return 0; - - } - -+void usage(void) -+{ -+ printf("usage: mkyaffs2image layout# dir image_file [convert]\n"); -+ printf(" layout# NAND OOB layout # (0 - raw, 1 - nand_oob_64)\n"); -+ printf(" dir the directory tree to be converted\n"); -+ printf(" image_file the output file to hold the image\n"); -+ printf(" 'convert' make a big-endian img on a little-endian machine. BROKEN !\n"); -+ exit(1); -+} - - int main(int argc, char *argv[]) - { - struct stat stats; -+ int i; - - printf("mkyaffs2image: image building tool for YAFFS2 built "__DATE__"\n"); - -- if(argc < 3) -+ if ((argc < 4) || (sscanf(argv[1], "%u", &layout_no) != 1)) - { -- printf("usage: mkyaffs2image dir image_file [convert]\n"); -- printf(" dir the directory tree to be converted\n"); -- printf(" image_file the output file to hold the image\n"); -- printf(" 'convert' produce a big-endian image from a little-endian machine\n"); -- exit(1); -+ usage(); - } - -- if ((argc == 4) && (!strncmp(argv[3], "convert", strlen("convert")))) -- { -- convert_endian = 1; -- } -+ i = 0; -+ -+ while (oob_layout[i].useecc != -1) -+ i++; -+ -+ if (layout_no >= i) -+ usage(); -+ -+ if ((argc == 5) && (!strncmp(argv[4], "convert", strlen("convert")))) -+ { -+ /* KSI: Broken as of now. TBD. Fail. */ -+ usage(); -+ convert_endian = 1; -+ } - -- if(stat(argv[1],&stats) < 0) -+ if(stat(argv[2],&stats) < 0) - { -- printf("Could not stat %s\n",argv[1]); -+ printf("Could not stat %s\n",argv[2]); - exit(1); - } - - if(!S_ISDIR(stats.st_mode)) - { -- printf(" %s is not a directory\n",argv[1]); -+ printf(" %s is not a directory\n",argv[2]); - exit(1); - } - -- outFile = open(argv[2],O_CREAT | O_TRUNC | O_WRONLY, S_IREAD | S_IWRITE); -+ outFile = open(argv[3],O_CREAT | O_TRUNC | O_WRONLY, S_IREAD | S_IWRITE); - - - if(outFile < 0) - { -- printf("Could not open output file %s\n",argv[2]); -+ printf("Could not open output file %s\n",argv[3]); - exit(1); - } - -- printf("Processing directory %s into image file %s\n",argv[1],argv[2]); -+ printf("Processing directory %s into image file %s\n",argv[2],argv[3]); - error = write_object_header(1, YAFFS_OBJECT_TYPE_DIRECTORY, &stats, 1,"", -1, NULL); -+ - if(error) -- error = process_directory(YAFFS_OBJECTID_ROOT,argv[1]); -+ error = process_directory(YAFFS_OBJECTID_ROOT,argv[2]); - - close(outFile); - diff --git a/meta/packages/yaffs2/files/yaffs2-unioob.patch b/meta/packages/yaffs2/files/yaffs2-unioob.patch deleted file mode 100644 index c894528ca1..0000000000 --- a/meta/packages/yaffs2/files/yaffs2-unioob.patch +++ /dev/null @@ -1,216 +0,0 @@ -diff -urN yaffs2.orig/yaffs_mtdif2.c yaffs2/yaffs_mtdif2.c ---- yaffs2.orig/yaffs_mtdif2.c 2005-12-07 14:00:38.000000000 -0800 -+++ yaffs2/yaffs_mtdif2.c 2006-02-10 17:13:58.000000000 -0800 -@@ -29,6 +29,130 @@ - - #include "yaffs_packedtags2.h" - -+#define PT2_BYTES 25 -+ -+void nandmtd2_pt2buf(yaffs_Device *dev, yaffs_PackedTags2 *pt, int is_raw) -+{ -+ struct mtd_info *mtd = (struct mtd_info *)(dev->genericDevice); -+ int i, j = 0, k, n; -+ __u8 pt2_byte_buf[PT2_BYTES]; -+ -+ /* Pack buffer with 0xff */ -+ for (i = 0; i < mtd->oobsize; i++) -+ dev->spareBuffer[i] = 0xff; -+ -+ if (!is_raw) { -+ *((unsigned int *) &dev->spareBuffer[0]) = pt->t.sequenceNumber; -+ *((unsigned int *) &dev->spareBuffer[4]) = pt->t.objectId; -+ *((unsigned int *) &dev->spareBuffer[8]) = pt->t.chunkId; -+ *((unsigned int *) &dev->spareBuffer[12]) = pt->t.byteCount; -+ dev->spareBuffer[16] = pt->ecc.colParity; -+ dev->spareBuffer[17] = pt->ecc.lineParity & 0xff; -+ dev->spareBuffer[18] = (pt->ecc.lineParity >> 8) & 0xff; -+ dev->spareBuffer[19] = (pt->ecc.lineParity >> 16) & 0xff; -+ dev->spareBuffer[20] = (pt->ecc.lineParity >> 24) & 0xff; -+ dev->spareBuffer[21] = pt->ecc.lineParityPrime & 0xff; -+ dev->spareBuffer[22] = (pt->ecc.lineParityPrime >> 8) & 0xff; -+ dev->spareBuffer[23] = (pt->ecc.lineParityPrime >> 16) & 0xff; -+ dev->spareBuffer[24] = (pt->ecc.lineParityPrime >> 24) & 0xff; -+ } else { -+ *((unsigned int *) &pt2_byte_buf[0]) = pt->t.sequenceNumber; -+ *((unsigned int *) &pt2_byte_buf[4]) = pt->t.objectId; -+ *((unsigned int *) &pt2_byte_buf[8]) = pt->t.chunkId; -+ *((unsigned int *) &pt2_byte_buf[12]) = pt->t.byteCount; -+ pt2_byte_buf[16] = pt->ecc.colParity; -+ pt2_byte_buf[17] = pt->ecc.lineParity & 0xff; -+ pt2_byte_buf[18] = (pt->ecc.lineParity >> 8) & 0xff; -+ pt2_byte_buf[19] = (pt->ecc.lineParity >> 16) & 0xff; -+ pt2_byte_buf[20] = (pt->ecc.lineParity >> 24) & 0xff; -+ pt2_byte_buf[21] = pt->ecc.lineParityPrime & 0xff; -+ pt2_byte_buf[22] = (pt->ecc.lineParityPrime >> 8) & 0xff; -+ pt2_byte_buf[23] = (pt->ecc.lineParityPrime >> 16) & 0xff; -+ pt2_byte_buf[24] = (pt->ecc.lineParityPrime >> 24) & 0xff; -+ -+ k = mtd->oobinfo.oobfree[j][0]; -+ n = mtd->oobinfo.oobfree[j][1]; -+ -+ if (n == 0) { -+ T(YAFFS_TRACE_ERROR, (TSTR("No OOB space for tags" TENDSTR))); -+ YBUG(); -+ } -+ -+ for (i = 0; i < PT2_BYTES; i++) { -+ if (n == 0) { -+ j++; -+ k = mtd->oobinfo.oobfree[j][0]; -+ n = mtd->oobinfo.oobfree[j][1]; -+ if (n == 0) { -+ T(YAFFS_TRACE_ERROR, (TSTR("No OOB space for tags" TENDSTR))); -+ YBUG(); -+ } -+ } -+ dev->spareBuffer[k++] = pt2_byte_buf[i]; -+ n--; -+ } -+ } -+} -+ -+void nandmtd2_buf2pt(yaffs_Device *dev, yaffs_PackedTags2 *pt, int is_raw) -+{ -+ struct mtd_info *mtd = (struct mtd_info *)(dev->genericDevice); -+ int i, j = 0, k, n; -+ __u8 pt2_byte_buf[PT2_BYTES]; -+ -+ -+ if (!is_raw) { -+ pt->t.sequenceNumber = *((unsigned int *) &dev->spareBuffer[0]); -+ pt->t.objectId = *((unsigned int *) &dev->spareBuffer[4]); -+ pt->t.chunkId = *((unsigned int *) &dev->spareBuffer[8]); -+ pt->t.byteCount = *((unsigned int *) &dev->spareBuffer[12]); -+ pt->ecc.colParity = dev->spareBuffer[16]; -+ pt->ecc.lineParity = (dev->spareBuffer[17] & 0x000000ff) | -+ ((dev->spareBuffer[18] << 8) & 0x0000ff00) | -+ ((dev->spareBuffer[19] << 16) & 0x00ff0000) | -+ ((dev->spareBuffer[20] << 24) & 0xff000000); -+ pt->ecc.lineParityPrime = (dev->spareBuffer[21] & 0x000000ff) | -+ ((dev->spareBuffer[22] << 8) & 0x0000ff00) | -+ ((dev->spareBuffer[23] << 16) & 0x00ff0000) | -+ ((dev->spareBuffer[24] << 24) & 0xff000000); -+ } else { -+ k = mtd->oobinfo.oobfree[j][0]; -+ n = mtd->oobinfo.oobfree[j][1]; -+ -+ if (n == 0) { -+ T(YAFFS_TRACE_ERROR, (TSTR("No space in OOB for tags" TENDSTR))); -+ YBUG(); -+ } -+ -+ for (i = 0; i < PT2_BYTES; i++) { -+ if (n == 0) { -+ j++; -+ k = mtd->oobinfo.oobfree[j][0]; -+ n = mtd->oobinfo.oobfree[j][1]; -+ if (n == 0) { -+ T(YAFFS_TRACE_ERROR, (TSTR("No space in OOB for tags" TENDSTR))); -+ YBUG(); -+ } -+ } -+ pt2_byte_buf[i] = dev->spareBuffer[k++]; -+ n--; -+ } -+ pt->t.sequenceNumber = *((unsigned int *) &pt2_byte_buf[0]); -+ pt->t.objectId = *((unsigned int *) &pt2_byte_buf[4]); -+ pt->t.chunkId = *((unsigned int *) &pt2_byte_buf[8]); -+ pt->t.byteCount = *((unsigned int *) &pt2_byte_buf[12]); -+ pt->ecc.colParity = pt2_byte_buf[16]; -+ pt->ecc.lineParity = (pt2_byte_buf[17] & 0x000000ff) | -+ ((pt2_byte_buf[18] << 8) & 0x0000ff00) | -+ ((pt2_byte_buf[19] << 16) & 0x00ff0000) | -+ ((pt2_byte_buf[20] << 24) & 0xff000000); -+ pt->ecc.lineParityPrime = (pt2_byte_buf[21] & 0x000000ff) | -+ ((pt2_byte_buf[22] << 8) & 0x0000ff00) | -+ ((pt2_byte_buf[23] << 16) & 0x00ff0000) | -+ ((pt2_byte_buf[24] << 24) & 0xff000000); -+ } -+} -+ - int nandmtd2_WriteChunkWithTagsToNAND(yaffs_Device * dev, int chunkInNAND, - const __u8 * data, - const yaffs_ExtendedTags * tags) -@@ -51,24 +175,22 @@ - } - - if (data && tags) { -- if (dev->useNANDECC) -- retval = -- mtd->write_ecc(mtd, addr, dev->nBytesPerChunk, -- &dummy, data, (__u8 *) & pt, NULL); -- else -+ nandmtd2_pt2buf(dev, &pt, 0); - retval = - mtd->write_ecc(mtd, addr, dev->nBytesPerChunk, -- &dummy, data, (__u8 *) & pt, NULL); -+ &dummy, data, dev->spareBuffer, -+ NULL); - } else { - if (data) - retval = - mtd->write(mtd, addr, dev->nBytesPerChunk, &dummy, - data); -- if (tags) -+ if (tags) { -+ nandmtd2_pt2buf(dev, &pt, 1); - retval = - mtd->write_oob(mtd, addr, mtd->oobsize, &dummy, -- (__u8 *) & pt); -- -+ dev->spareBuffer); -+ } - } - - if (retval == 0) -@@ -94,30 +216,24 @@ - TENDSTR), chunkInNAND, data, tags)); - - if (data && tags) { -- if (dev->useNANDECC) { - retval = - mtd->read_ecc(mtd, addr, dev->nBytesPerChunk, - &dummy, data, dev->spareBuffer, - NULL); -- } else { -- retval = -- mtd->read_ecc(mtd, addr, dev->nBytesPerChunk, -- &dummy, data, dev->spareBuffer, -- NULL); -- } -+ nandmtd2_buf2pt(dev, &pt, 0); - } else { - if (data) - retval = - mtd->read(mtd, addr, dev->nBytesPerChunk, &dummy, - data); -- if (tags) -+ if (tags) { - retval = - mtd->read_oob(mtd, addr, mtd->oobsize, &dummy, - dev->spareBuffer); -+ nandmtd2_buf2pt(dev, &pt, 1); -+ } - } - -- memcpy(&pt, dev->spareBuffer, sizeof(pt)); -- - if (tags) - yaffs_UnpackTags2(tags, &pt); - -@@ -178,10 +294,11 @@ - *sequenceNumber = 0; - *state = YAFFS_BLOCK_STATE_EMPTY; - } -+ -+ T(YAFFS_TRACE_MTD, -+ (TSTR("block is OK seq %d state %d" TENDSTR), *sequenceNumber, -+ *state)); - } -- T(YAFFS_TRACE_MTD, -- (TSTR("block is bad seq %d state %d" TENDSTR), *sequenceNumber, -- *state)); - - if (retval == 0) - return YAFFS_OK; diff --git a/meta/packages/yaffs2/yaffs2-utils.inc b/meta/packages/yaffs2/yaffs2-utils.inc deleted file mode 100644 index b25cc3b590..0000000000 --- a/meta/packages/yaffs2/yaffs2-utils.inc +++ /dev/null @@ -1,27 +0,0 @@ -DESCRIPTION = "Tools for managing 'yaffs2' file systems." -SECTION = "base" -HOMEPAGE = "http://www.yaffs.net" -LICENSE = "GPLv2" -PV = "0.0.0+cvs${SRCDATE}" -PR = "r0" -DEPENDS = "mtd-utils" - -SRC_URI = "cvs://anonymous@cvs.aleph1.co.uk/home/aleph1/cvs;module=yaffs2 \ - file://mkyaffs2image.patch;patch=1" -S = "${WORKDIR}/yaffs2" - -CFLAGS += "-I.. -DCONFIG_YAFFS_UTIL" -CFLAGS_append_virtclass-native = " -I.. -DCONFIG_YAFFS_UTIL" - -do_compile() { - cd utils && oe_runmake -} - -do_install() { - install -d ${D}${sbindir}/ - for i in mkyaffsimage mkyaffs2image; do - install -m 0755 utils/$i ${D}${sbindir}/ - done -} - -BBCLASSEXTEND = "native" diff --git a/meta/packages/yaffs2/yaffs2-utils_cvs.bb b/meta/packages/yaffs2/yaffs2-utils_cvs.bb deleted file mode 100644 index 6171fe55bd..0000000000 --- a/meta/packages/yaffs2/yaffs2-utils_cvs.bb +++ /dev/null @@ -1,3 +0,0 @@ -require yaffs2-utils.inc -PR = "r1" - diff --git a/meta/packages/zile/files/for_build.patch b/meta/packages/zile/files/for_build.patch deleted file mode 100644 index 96380fa220..0000000000 --- a/meta/packages/zile/files/for_build.patch +++ /dev/null @@ -1,64 +0,0 @@ -Index: zile-2.0beta6/acinclude.m4 -=================================================================== ---- zile-2.0beta6.orig/acinclude.m4 2004-12-20 19:13:07.000000000 -0500 -+++ zile-2.0beta6/acinclude.m4 2005-01-21 20:38:28.982166344 -0500 -@@ -35,3 +35,29 @@ - t} - fi - AC_SUBST(EXEEXT_FOR_BUILD)])dnl -+ -+dnl Get a default for CFLAGS_FOR_BUILD to put into Makefile. -+AC_DEFUN([BFD_CFLAGS_FOR_BUILD], -+[ac_test_CFLAGS=${CFLAGS+set} -+# Put a plausible default for CFLAGS_FOR_BUILD in Makefile. -+if test -z "$CFLAGS_FOR_BUILD"; then -+ if test "x$cross_compiling" = "xyes"; then -+ CFLAGS_FOR_BUILD="-O2" -+ else -+ CFLAGS_FOR_BUILD='$(CFLAGS)' -+ fi -+fi -+AC_SUBST(CFLAGS_FOR_BUILD)])dnl -+ -+dnl Get a default for LDFLAGS_FOR_BUILD to put into Makefile. -+AC_DEFUN([BFD_LDFLAGS_FOR_BUILD], -+[ac_test_LDFLAGS=${LDFLAGS+set} -+# Put a plausible default for LDFLAGS_FOR_BUILD in Makefile. -+if test -z "$LDFLAGS_FOR_BUILD"; then -+ if test "x$cross_compiling" = "xyes"; then -+ LDFLAGS_FOR_BUILD="" -+ else -+ LDFLAGS_FOR_BUILD='$(LDFLAGS)' -+ fi -+fi -+AC_SUBST(LDFLAGS_FOR_BUILD)])dnl -Index: zile-2.0beta6/configure.ac -=================================================================== ---- zile-2.0beta6.orig/configure.ac 2005-01-12 07:56:19.000000000 -0500 -+++ zile-2.0beta6/configure.ac 2005-01-21 20:26:58.178184512 -0500 -@@ -19,6 +19,8 @@ - - AC_PROG_CC - BFD_CC_FOR_BUILD -+BFD_CFLAGS_FOR_BUILD -+BFD_LDFLAGS_FOR_BUILD - AC_C_INLINE - AC_PROG_INSTALL - AC_PROG_RANLIB -Index: zile-2.0beta6/doc/Makefile.am -=================================================================== ---- zile-2.0beta6.orig/doc/Makefile.am 2005-01-03 06:11:32.000000000 -0500 -+++ zile-2.0beta6/doc/Makefile.am 2005-01-21 20:27:17.271281920 -0500 -@@ -27,10 +27,10 @@ - AM_CFLAGS = -I$(top_srcdir) -I$(top_srcdir)/lib -I$(top_srcdir)/src - - mkdoc$(EXEEXT_FOR_BUILD): mkdoc.o config.h -- $(CC_FOR_BUILD) $(CFLAGS) $(LDFLAGS) -o $@ mkdoc.o -+ $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) -o $@ mkdoc.o - - mkdoc.o: mkdoc.c -- $(CC_FOR_BUILD) -c -I$(top_srcdir)/doc -I$(top_srcdir) -I$(top_srcdir)/src $(CFLAGS) $(srcdir)/mkdoc.c -+ $(CC_FOR_BUILD) -c -I$(top_srcdir)/doc -I$(top_srcdir) -I$(top_srcdir)/src $(CFLAGS_FOR_BUILD) $(srcdir)/mkdoc.c - - AUTODOC: $(AUTODOCSRCS) mkdoc - ./mkdoc $(AUTODOCSRCS) >AUTODOC diff --git a/meta/packages/zile/zile_1.7+2.0beta6.bb b/meta/packages/zile/zile_1.7+2.0beta6.bb deleted file mode 100644 index 74d832eef3..0000000000 --- a/meta/packages/zile/zile_1.7+2.0beta6.bb +++ /dev/null @@ -1,19 +0,0 @@ -DESCRIPTION = "Zile is a very small emacs-like editor." -HOMEPAGE = "http://zile.sourceforge.net/" -LICENSE = "GPL" -DEPENDS = "ncurses" -PRIORITY = "optional" -SECTION = "console/editors" -PR = "r1" - -UV = "${@bb.data.getVar('PV', d, 1).split('+')[1]}" - -SRC_URI = "${SOURCEFORGE_MIRROR}/zile/zile-${UV}.tar.gz \ - file://for_build.patch;patch=1" -S = "${WORKDIR}/zile-${UV}" - -inherit autotools - -export CC_FOR_BUILD = "${BUILD_CC}" -export CFLAGS_FOR_BUILD = "${BUILD_CFLAGS} -DHAVE_VASPRINTF" -export LDFLAGS_FOR_BUILD = "${BUILD_LDFLAGS}" diff --git a/meta/packages/zip/zip.inc b/meta/packages/zip/zip.inc deleted file mode 100644 index 9550447264..0000000000 --- a/meta/packages/zip/zip.inc +++ /dev/null @@ -1,24 +0,0 @@ -DESCRIPTION = "Archiver for .zip files" -HOMEPAGE = "http://www.info-zip.org" -SECTION = "console/utils" - -LICENSE = "Info-ZIP" -LIC_FILES_CHKSUM = "file://LICENSE;md5=04d43c5d70b496c032308106e26ae17d" - -SRC_URI = "ftp://ftp.info-zip.org/pub/infozip/src/zip${@bb.data.getVar('PV',d,1).replace('.', '')}.tgz" - -EXTRA_OEMAKE = "'CC=${CC}' 'BIND=${CC}' 'AS=${CC} -c' 'CPP=${CPP}' \ - 'CFLAGS=-I. -DUNIX ${CFLAGS}' 'INSTALL=install' \ - 'BINFLAGS=0755' 'INSTALL_D=install -d'" - -do_compile() { - oe_runmake -f unix/Makefile generic -} - -do_install() { - oe_runmake -f unix/Makefile prefix=${D}${prefix} \ - BINDIR=${D}${bindir} MANDIR=${D}${mandir}/man1 \ - install -} - -BBCLASSEXTEND = "native" diff --git a/meta/packages/zip/zip_3.0.bb b/meta/packages/zip/zip_3.0.bb deleted file mode 100644 index c5df637a38..0000000000 --- a/meta/packages/zip/zip_3.0.bb +++ /dev/null @@ -1,6 +0,0 @@ -require zip.inc - -PR="r0" - -# zip-2.32 still uses directory name of zip-2.30 -S = "${WORKDIR}/zip30" diff --git a/meta/recipes-bsp/apmd/apmd-3.2.2-14/apmd_proxy b/meta/recipes-bsp/apmd/apmd-3.2.2-14/apmd_proxy new file mode 100644 index 0000000000..c48ee4e5d5 --- /dev/null +++ b/meta/recipes-bsp/apmd/apmd-3.2.2-14/apmd_proxy @@ -0,0 +1,91 @@ +#!/bin/sh +# +# apmd_proxy - program dispatcher for APM daemon +# +# Written by Craig Markwardt (craigm@lheamail.gsfc.nasa.gov) 21 May 1999 +# Modified for Debian by Avery Pennarun +# +# This shell script is called by the APM daemon (apmd) when a power +# management event occurs. Its first and second arguments describe the +# event. For example, apmd will call "apmd_proxy suspend system" just +# before the system is suspended. +# +# Here are the possible arguments: +# +# start - APM daemon has started +# stop - APM daemon is shutting down +# suspend critical - APM system indicates critical suspend (++) +# suspend system - APM system has requested suspend mode +# suspend user - User has requested suspend mode +# standby system - APM system has requested standby mode +# standby user - User has requested standby mode +# resume suspend - System has resumed from suspend mode +# resume standby - System has resumed from standby mode +# resume critical - System has resumed from critical suspend +# change battery - APM system reported low battery +# change power - APM system reported AC/battery change +# change time - APM system reported time change (*) +# change capability - APM system reported config. change (+) +# +# (*) - APM daemon may be configured to not call these sequences +# (+) - Available if APM kernel supports it. +# (++) - "suspend critical" is never passed to apmd from the kernel, +# so we will never see it here. Scripts that process "resume +# critical" events need to take this into account. +# +# It is the proxy script's responsibility to examine the APM status +# (via /proc/apm) or other status and to take appropriate actions. +# For example, the script might unmount network drives before the +# machine is suspended. +# +# In Debian, the usual way of adding functionality to the proxy is to +# add a script to /etc/apm/event.d. This script will be called by +# apmd_proxy (via run-parts) with the same arguments. +# +# If it is important that a certain set of script be run in a certain +# order on suspend and in a different order on resume, then put all +# the scripts in /etc/apm/scripts.d instead of /etc/apm/event.d and +# symlink to these from /etc/apm/suspend.d, /etc/apm/resume.d and +# /etc/apm/other.d using names whose lexicographical order is the same +# as the desired order of execution. +# +# If the kernel's APM driver supports it, apmd_proxy can return a non-zero +# exit status on suspend and standby events, indicating that the suspend +# or standby event should be rejected. +# +# ******************************************************************* + +set -e + +# The following doesn't yet work, because current kernels (up to at least +# 2.4.20) do not support rejection of APM events. Supporting this would +# require substantial modifications to the APM driver. We will re-enable +# this feature if the driver is ever modified. -- cph@debian.org +# +#SUSPEND_ON_AC=false +#[ -r /etc/apm/apmd_proxy.conf ] && . /etc/apm/apmd_proxy.conf +# +#if [ "${SUSPEND_ON_AC}" = "false" -a "${2}" = "system" ] \ +# && on_ac_power >/dev/null; then +# # Reject system suspends and standbys if we are on AC power +# exit 1 # Reject (NOTE kernel support must be enabled) +#fi + +if [ "${1}" = "suspend" -o "${1}" = "standby" ]; then + run-parts -a "${1}" -a "${2}" /etc/apm/event.d + if [ -d /etc/apm/suspend.d ]; then + run-parts -a "${1}" -a "${2}" /etc/apm/suspend.d + fi +elif [ "${1}" = "resume" ]; then + if [ -d /etc/apm/resume.d ]; then + run-parts -a "${1}" -a "${2}" /etc/apm/resume.d + fi + run-parts -a "${1}" -a "${2}" /etc/apm/event.d +else + run-parts -a "${1}" -a "${2}" /etc/apm/event.d + if [ -d /etc/apm/other.d ]; then + run-parts -a "${1}" -a "${2}" /etc/apm/other.d + fi +fi + +exit 0 diff --git a/meta/recipes-bsp/apmd/apmd-3.2.2-14/apmd_proxy.conf b/meta/recipes-bsp/apmd/apmd-3.2.2-14/apmd_proxy.conf new file mode 100644 index 0000000000..751145c522 --- /dev/null +++ b/meta/recipes-bsp/apmd/apmd-3.2.2-14/apmd_proxy.conf @@ -0,0 +1,16 @@ +# /etc/apm/apmd_proxy.conf: configuration file for apmd. +# +# This file is managed by debconf when installing or reconfiguring the +# package. It is generated by merging the answers gathered by debconf +# into the template file "/usr/share/apmd/apmd_proxy.conf". + +# The following doesn't yet work, because current kernels (up to at least +# 2.4.20) do not support rejection of APM events. Supporting this would +# require substantial modifications to the APM driver. We will re-enable +# this feature if the driver is ever modified. -- cph@debian.org +# +# Set the following to "false" if you want to reject system suspend or +# system standby requests when the computer is running on AC power. +# Otherwise set this to "true". Such requests are never rejected when +# the computer is running on battery power. +#SUSPEND_ON_AC=true diff --git a/meta/recipes-bsp/apmd/apmd-3.2.2-14/default b/meta/recipes-bsp/apmd/apmd-3.2.2-14/default new file mode 100644 index 0000000000..4b7965abf8 --- /dev/null +++ b/meta/recipes-bsp/apmd/apmd-3.2.2-14/default @@ -0,0 +1,8 @@ +# +# Default for /etc/init.d/apmd +# + +# As apmd can be called with arguments, we use the following variable +# to store them, e.g., APMD="-w 5 -p 2". +# See the manual page apmd(8) for details. +APMD="--proxy-timeout 30" diff --git a/meta/recipes-bsp/apmd/apmd-3.2.2-14/init b/meta/recipes-bsp/apmd/apmd-3.2.2-14/init new file mode 100755 index 0000000000..268d4b26b7 --- /dev/null +++ b/meta/recipes-bsp/apmd/apmd-3.2.2-14/init @@ -0,0 +1,44 @@ +#!/bin/sh +### BEGIN INIT INFO +# Provides: apmd +# Required-Start: $remote_fs +# Required-Stop: $remote_fs +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: Advanced Power Management daemon +### END INIT INFO + +PATH=/bin:/usr/bin:/sbin:/usr/sbin + +[ -f /etc/default/rcS ] && . /etc/default/rcS +[ -f /etc/default/apmd ] && . /etc/default/apmd + +case "$1" in + start) + echo -n "Starting advanced power management daemon: " + start-stop-daemon -S -x /usr/sbin/apmd -- \ + -P /etc/apm/apmd_proxy $APMD + if [ $? = 0 ]; then + echo "apmd." + else + echo "(failed.)" + fi + ;; + stop) + echo -n "Stopping advanced power management daemon: " + start-stop-daemon -K \ + -x /usr/sbin/apmd + echo "apmd." + ;; + restart|force-reload) + $0 stop + $0 start + exit + ;; + *) + echo "Usage: /etc/init.d/apmd {start|stop|restart|force-reload}" + exit 1 + ;; +esac + +exit 0 diff --git a/meta/recipes-bsp/apmd/apmd-3.2.2-14/libtool.patch b/meta/recipes-bsp/apmd/apmd-3.2.2-14/libtool.patch new file mode 100644 index 0000000000..711e777084 --- /dev/null +++ b/meta/recipes-bsp/apmd/apmd-3.2.2-14/libtool.patch @@ -0,0 +1,29 @@ +# Add by RP to address "unable to infer tagged configuration" error: +# commit 35de05e61b88c0808a5e885bb0efdf420555d5ad +# Author: Richard Purdie +# Date: Sun Jun 1 16:13:38 2008 +0000 +# +# apmd: Use libtool --tag options to avoid problems with libtool 2.2.4 (from poky) +# +# However I didn't see same issue with current libtool-2.2.10. Also per my understanding, +# the default tag, if not specified, falls back to CC. So disable it from patching, but +# keep it here. If we encounter similar issue in the future, we could then push upstream +# +# Comment added by Kevin Tian , 2010-07-16 + +Index: apmd-3.2.2.orig/Makefile +=================================================================== +--- apmd-3.2.2.orig.orig/Makefile 2004-01-04 08:13:18.000000000 +0000 ++++ apmd-3.2.2.orig/Makefile 2008-04-21 17:10:03.000000000 +0100 +@@ -58,9 +57,8 @@ + #CFLAGS=-O3 -m486 -fomit-frame-pointer + #LDFLAGS=-s + +-LIBTOOL=libtool --quiet +-LT_COMPILE = $(LIBTOOL) --mode=compile $(CC) +-LT_LINK = $(LIBTOOL) --mode=link $(CC) ++LT_COMPILE = $(LIBTOOL) --tag=CC --mode=compile $(CC) ++LT_LINK = $(LIBTOOL) --tag=CC --mode=link $(CC) + LT_INSTALL = $(LIBTOOL) --mode=install install + LT_CLEAN = $(LIBTOOL) --mode=clean rm + diff --git a/meta/recipes-bsp/apmd/apmd-3.2.2-14/unlinux.patch b/meta/recipes-bsp/apmd/apmd-3.2.2-14/unlinux.patch new file mode 100644 index 0000000000..c64e7df524 --- /dev/null +++ b/meta/recipes-bsp/apmd/apmd-3.2.2-14/unlinux.patch @@ -0,0 +1,21 @@ +# copy OE commit message here: +# commit 9456cdc1cf43e3ba9e6d88c63560c1b6fdee4359 +# Author: Michael Krelin +# Date: Tue May 29 12:27:45 2007 +0000 +# +# apmd: prevent build from interferring with host kernel headers. Closes #1257 +# +# comment added by Kevin Tian , 2010-07-13 + +--- apmd-3.2.2.orig/Makefile ++++ apmd-3.2.2/Makefile +@@ -43,8 +43,7 @@ + + CC=gcc + CFLAGS=-O -g +-XTRACFLAGS=-Wall -pipe -I. -I/usr/src/linux/include -I/usr/X11R6/include \ +- -I/usr/src/linux-2.2/include -I /usr/src/linux-2.0/include \ ++XTRACFLAGS=-Wall -pipe -I. \ + -DVERSION=\"$(VERSION)\" \ + -DDEFAULT_PROXY_NAME=\"$(PROXY_DIR)/apmd_proxy\" + LDFLAGS= diff --git a/meta/recipes-bsp/apmd/apmd-3.2.2-14/workaround.patch b/meta/recipes-bsp/apmd/apmd-3.2.2-14/workaround.patch new file mode 100644 index 0000000000..d37380397c --- /dev/null +++ b/meta/recipes-bsp/apmd/apmd-3.2.2-14/workaround.patch @@ -0,0 +1,59 @@ +# this workaround is there in OE since 2003. It looks to provide a workaround +# allowing others sending SIGUSR1 to cause an apm suspend event. Disable it for +# now. +# +# comment added by Kevin Tian , 2010-07-13 +# +# Patch managed by http://www.holgerschurig.de/patcher.html +# + +--- apmd-3.2.2.orig/apmd.c~workaround.patch ++++ apmd-3.2.2.orig/apmd.c +@@ -158,6 +158,7 @@ + static int quiet_bios_batlow; /* = 0 */ + static int verbosity = DEFAULT_VERBOSITY; + static int warn_level = 10; ++static int sleep_now = 0; /* ntp */ + + static uid_t apmd_uid = 0; + static int apmd_fd = -1; +@@ -942,6 +943,12 @@ + exit(0); + } + ++/* ntp */ ++static void sig_usr1(int sig) ++{ ++ sleep_now = 1; ++} ++ + int main(int argc, char **argv) + { + int c; +@@ -1151,6 +1158,8 @@ + openlog("apmd", (verbosity>=LOG_DEBUG)?LOG_PERROR:0 | LOG_PID | LOG_CONS, LOG_DAEMON); + + /* Set up signal handler */ ++ if (signal(SIGUSR1, SIG_IGN) != SIG_IGN) ++ signal(SIGUSR1, sig_usr1); /* ntp */ + if (signal(SIGINT, SIG_IGN) != SIG_IGN) + signal(SIGINT, sig_handler); + if (signal(SIGQUIT, SIG_IGN) != SIG_IGN) +@@ -1230,9 +1239,16 @@ + + for (;;) + { +- int num_events = apm_get_events(apmd_fd, check_interval, events, MAX_EVENTS); ++ int num_events; + int e, a; + ++ /* ntp */ ++ if (sleep_now) { ++ sleep_now = 0; ++ handle_event(APM_USER_SUSPEND, &apminfo); ++ } ++ ++ num_events = apm_get_events(apmd_fd, check_interval, events, MAX_EVENTS); + apm_read(&apminfo); + + if (num_events == 0) { diff --git a/meta/recipes-bsp/apmd/apmd_3.2.2-14.bb b/meta/recipes-bsp/apmd/apmd_3.2.2-14.bb new file mode 100644 index 0000000000..2778cc69e8 --- /dev/null +++ b/meta/recipes-bsp/apmd/apmd_3.2.2-14.bb @@ -0,0 +1,63 @@ +DESCRIPTION = "Set of tools for managing notebook power consumption." +SECTION = "base" +PRIORITY = "required" +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ + file://apm.h;firstline=6;endline=18;md5=c9a1f79036ab14aa157e15ed75ffd769" +DEPENDS = "libtool-cross" +PR = "r1" + +SRC_URI = "${DEBIAN_MIRROR}/main/a/apmd/apmd_3.2.2.orig.tar.gz \ + ${DEBIAN_MIRROR}/main/a/apmd/apmd_${PV}.diff.gz \ + file://libtool.patch \ + file://unlinux.patch \ + file://init \ + file://default \ + file://apmd_proxy \ + file://apmd_proxy.conf" + +S = "${WORKDIR}/apmd-3.2.2.orig" + +inherit update-rc.d + +INITSCRIPT_NAME = "apmd" +INITSCRIPT_PARAMS = "defaults" + +do_compile() { + # apmd doesn't use whole autotools. Just libtool for installation + oe_runmake "LIBTOOL=${STAGING_BINDIR_CROSS}/${TARGET_PREFIX}libtool" apm apmd +} + +do_install() { + install -d ${D}${sysconfdir} + install -d ${D}${sysconfdir}/apm + install -d ${D}${sysconfdir}/apm/event.d + install -d ${D}${sysconfdir}/apm/other.d + install -d ${D}${sysconfdir}/apm/suspend.d + install -d ${D}${sysconfdir}/apm/resume.d + install -d ${D}${sysconfdir}/apm/scripts.d + install -d ${D}${sysconfdir}/default + install -d ${D}${sysconfdir}/init.d + install -d ${D}${sbindir} + install -d ${D}${bindir} + install -d ${D}${libdir} + install -d ${D}${datadir}/apmd + install -d ${D}${includedir} + + install -m 4755 ${S}/.libs/apm ${D}${bindir}/apm + install -m 0755 ${S}/.libs/apmd ${D}${sbindir}/apmd + install -m 0755 ${WORKDIR}/apmd_proxy ${D}${sysconfdir}/apm/ + install -m 0644 ${WORKDIR}/apmd_proxy.conf ${D}${datadir}/apmd/ + install -m 0644 ${WORKDIR}/default ${D}${sysconfdir}/default/apmd + oe_libinstall -so libapm ${D}${libdir} + install -m 0644 apm.h ${D}${includedir} + + cat ${WORKDIR}/init | sed -e 's,/usr/sbin,${sbindir},g; s,/etc,${sysconfdir},g;' > ${D}${sysconfdir}/init.d/apmd + chmod 755 ${D}${sysconfdir}/init.d/apmd +} + +PACKAGES =+ "libapm libapm-dev apm" + +FILES_libapm = "${libdir}/libapm.so.*" +FILES_libapm-dev = "${libdir}/libapm.* ${includedir}" +FILES_apm = "${bindir}/apm*" diff --git a/meta/recipes-bsp/hostap/files/hostap-fw-load.patch b/meta/recipes-bsp/hostap/files/hostap-fw-load.patch new file mode 100644 index 0000000000..88adee2bc9 --- /dev/null +++ b/meta/recipes-bsp/hostap/files/hostap-fw-load.patch @@ -0,0 +1,20 @@ + +# +# Patch managed by http://www.holgerschurig.de/patcher.html +# + +--- hostap-utils-0.2.4/hostap_fw_load~hostap-fw-load ++++ hostap-utils-0.2.4/hostap_fw_load +@@ -6,9 +6,9 @@ + # Firmware images for the card + # TODO: could try to select correct firmware type automatically + +-PRI=/etc/pcmcia/PM010102.HEX +-STA=/etc/pcmcia/RF010802.HEX +-PRISM2_SREC=/usr/local/bin/prism2_srec ++PRI=/etc/pcmcia/pm010102.hex ++STA=/etc/pcmcia/rf010804.hex ++PRISM2_SREC=/usr/sbin/prism2_srec + + set -e + diff --git a/meta/recipes-bsp/hostap/files/hostap_cs.conf b/meta/recipes-bsp/hostap/files/hostap_cs.conf new file mode 100644 index 0000000000..8dda82aad3 --- /dev/null +++ b/meta/recipes-bsp/hostap/files/hostap_cs.conf @@ -0,0 +1,193 @@ +module "hostap_cs" opts "channel=3 iw_mode=2 essid=any ignore_cis_vcc=1" + +card "Actiontec 802CI2" + manfid 0x1668, 0x0101 + bind "hostap_cs" + +card "AirWay 802.11 Adapter (PCMCIA)" + #version "AirWay", "802.11 Adapter (PCMCIA)" + manfid 0x0261, 0x0002 + bind "hostap_cs" + +card "Asus SpaceLink WL110" + manfid 0x02aa,0x0002 + bind "hostap_cs" + +## handhelds.org bug 964 +card "Belkin F5D6060 Ethernet" + #version "PCMCIA", "11M WLAN Card v2.5", "ISL37300P", "RevA" + manfid 0x0274, 0x1612 + bind "hostap_cs" + +card "Compaq 11Mbps Wireless PC Card" + manfid 0x028a, 0x0002 + bind "hostap_cs" + +card "Compaq WL100 11 Mbps Wireless Adapter" + manfid 0x0138, 0x0002 + bind "hostap_cs" + +card "Compaq HNW-100 11 Mbps Wireless Adapter" + manfid 0x028a, 0x0002 + bind "hostap_cs" + +card "D-Link DWL-650" + version "D", "Link DWL-650 11Mbps WLAN Card" + bind "hostap_cs" + +card "D-Link DRC-650" + version "D", "Link DRC-650 11Mbps WLAN Card" + bind "hostap_cs" + +card "D-Link DCF660" + manfid 0xd601, 0x0005 + bind "hostap_cs" + +card "Farallon SkyLINE" + version "INTERSIL", "HFA384x/IEEE" + bind "hostap_cs" + +card "HyperLink Wireless PC Card 11Mbps" + version "HyperLink", "Wireless PC Card 11Mbps" + bind "hostap_cs" + +# card "Intersil PRISM2 11 Mbps Wireless Adapter" +# manfid 0x0156, 0x0002 +# bind "hostap_cs" + +card "LA4111 Spectrum24 Wireless LAN PC Card" + version "Symbol Technologies" + bind "hostap_cs" + +card "Linksys WPC11 11Mbps 802.11b WLAN Card" + version "Instant Wireless ", " Network PC CARD", "Version 01.02" + bind "hostap_cs" + +card "Linksys WCF11 11Mbps 802.11b WLAN Card" + manfid 0x0274, 0x3301 + bind "hostap_cs" + +## handhelds.org bug #790 +card "Linksys Wireless CompactFlash Card WCF12" + manfid 0x028a, 0x0673 + bind "hostap_cs" + +card "Linksys WLAN CF Card" + manfid 0x0274, 0x3301 + bind "hostap_cs" + +card "NETGEAR MA701 Wireless CF Card" + manfid 0xd601, 0x0002 + bind "hostap_cs" + +card "Nortel Networks eMobility 802.11 Wireless Adapter" + manfid 0x01eb, 0x080a + bind "hostap_cs" + +card "PLANEX GeoWave GW-CF110" + version "PLANEX", "GeoWave/GW-CF110" + bind "hostap_cs" + +card "PROXIM LAN PC CARD HARMONY 80211B" + version "PROXIM", "LAN PC CARD HARMONY 80211B" + bind "hostap_cs" + +card "Proxim RangeLAN/DS" + version "PROXIM","RangeLAN-DS/LAN PC CARD" + manfid 0x0126, 0x8000 + bind "hostap_cs" + +card "Safeway 802.11b Wireless Adapter" + manfid 0xd601, 0x0002 + bind "hostap_cs" + +card "SAMSUNG 11Mbps WLAN Card" + version "SAMSUNG", "11Mbps WLAN Card" + bind "hostap_cs" + +# needs firmware upload via hostap_fw_load +card "SanDisk ConnectPlus OEM (0MB)" + manfid 0xd601, 0x0010 + bind "hostap_cs" + +# needs special activation (>=hostap 0.3.2 only) plus firmware upload +card "SanDisk ConnectPlus w/ Memory" + version "SanDisk", "ConnectPlus" + manfid 0xd601, 0x0101 + bind "hostap_cs" to 0 +# bind "ide-cs" to 1 + +card "Senao/Origo 80211b WLAN Card" + manfid 0x000b,0x7100 + bind "hostap_cs" + +card "Sitecom WL-007 WLAN CF Card" + manfid 0xd601, 0x0004 + bind "hostap_cs" + +card "SMC2632 802.11 (prism2) Card" + version "SMC", "SMC2632W", "Version 01.02", "" + bind "hostap_cs" + +card "SpeedStream SS1021 Wireless Adapter" + #version "Siemens", "SpeedStream Wireless PCMCIA" + manfid 0x02ac, 0x0002 + bind "hostap_cs" + +card "ZCOMAX AirRunner/XI-300" + #version "ZCOMAX", "AirRunner/XI-300" + manfid 0xd601, 0x0002 + bind "hostap_cs" + +card "Zonet ZCF1100" + manfid 0x000b, 0x7100 + bind "hostap_cs" + +card "Wireless LAN Adapter Version 01.02" + version "Wireless", "LAN Adapter", "Version 01.02" +# manfid 0x0156, 0x0002 + bind "hostap_cs" + +card "Ambicom WL1100C 11Mbs Card 802.11b" + version "AmbiCom", "WL1100C 802.11b CF-Card", "2.2" + manfid 0xd601,0x0002 + bind "hostap_cs" + +card "Ambicom WL1100C 11Mbs Card 802.11b" + manfid 0xd601,0x0002 + bind "hostap_cs" + +card "Sandisk Connect SDWCFB-000" + manfid 0xd601,0x0005 + bind "hostap_cs" + +# Cards with Intersil firmware (Prism chipset) + +card "Linksys WPC11 11Mbps 802.11b WLAN Card" + version "The Linksys Group, Inc.", "Instant Wireless Network PC Card", "ISL37300P", "RevA" + bind "hostap_cs" + +card "Linksys CompactFlash Wireless Card" + version "Linksys", "Wireless CompactFlash Card" + bind "hostap_cs" + +card "ACTIONTEC PRISM Wireless LAN PC Card" + version "ACTIONTEC", "PRISM Wireless LAN PC Card" + bind "hostap_cs" + +card "Linksys WPC11 Version 3" + manfid 0x0274,0x1613 + bind "hostap_cs" + +card "BENQ AWL100" + version "BENQ", "AWL100 PCMCIA ADAPTER" + bind "hostap_cs" + +card "Pretec WLAN" + version "Pretec", "CompactWLAN Card 802.11b", "2.5" + manfid 0x0156, 0x0002 + bind "hostap_cs" + +card "TrendNet TEW PC16" + manfid 0x0274, 0x1601 + bind "hostap_cs" diff --git a/meta/recipes-bsp/hostap/files/hostap_cs.conf-upstream b/meta/recipes-bsp/hostap/files/hostap_cs.conf-upstream new file mode 100644 index 0000000000..5b7385a7cb --- /dev/null +++ b/meta/recipes-bsp/hostap/files/hostap_cs.conf-upstream @@ -0,0 +1,191 @@ +device "hostap_cs" + class "network" module "hostap", "hostap_cs" + +card "Intersil PRISM2 Reference Design 11Mb/s WLAN Card" + version "INTERSIL", "HFA384x/IEEE" + bind "hostap_cs" + +card "Compaq WL100 11Mb/s WLAN Card" + manfid 0x0138, 0x0002 + bind "hostap_cs" + +card "Compaq WL200" + version "Compaq", "WL200_11Mbps_Wireless_PCI_Card" + bind "hostap_cs" + +card "EMTAC A2424i 11Mbps WLAN Card" + manfid 0xc250, 0x0002 +# cis "cis/Emtac.dat" + bind "hostap_cs" + +card "Linksys WPC11 11Mbps WLAN Card" + version "Instant Wireless ", " Network PC CARD", "Version 01.02" + bind "hostap_cs" + +card "Linksys WPC11 Ver 2.5 11Mbps WLAN Card" + manfid 0x0274, 0x1612 + bind "hostap_cs" + +card "Linksys WPC11 Ver 3 11Mbps WLAN Card" + manfid 0x0274, 0x1613 + bind "hostap_cs" + +card "Linksys WCF12 Wireless CompactFlash Card" + version "Linksys", "Wireless CompactFlash Card" + bind "hostap_cs" + +card "D-Link DWL-650 11Mbps WLAN Card" + version "D", "Link DWL-650 11Mbps WLAN Card", "Version 01.02" + bind "hostap_cs" + +card "D-Link DRC-650 11Mbps WLAN Card" +# version "D", "Link DRC-650 11Mbps WLAN Card", "Version 01.02" + manfid 0x028a, 0x0002 + bind "hostap_cs" + +card "ZoomAir 4100 11Mb/s WLAN Card" + version "ZoomAir 11Mbps High", "Rate wireless Networking" + bind "hostap_cs" + +card "Addtron AWP-100 11Mbps WLAN Card" + version "Addtron", "AWP-100 Wireless PCMCIA", "Version 01.02" + bind "hostap_cs" + +card "Samsung SWL2000-N 11Mb/s WLAN Card" + manfid 0x0250, 0x0002 + bind "hostap_cs" + +card "SMC 2632W 11Mbps WLAN Card" + version "SMC", "SMC2632W", "Version 01.02" + bind "hostap_cs" + +card "BroMax Freeport 11Mbps WLAN Card" + version "Intersil", "PRISM 2_5 PCMCIA ADAPTER", "ISL37300P", "Eval-RevA" + bind "hostap_cs" + +card "Z-Com XI300 11Mb/s WLAN Card" + manfid 0xd601, 0x0002 + bind "hostap_cs" + +card "Zcomax XI-325H 200mW" +# version " ", "IEEE 802.11 Wireless LAN/PC Card" + manfid 0xd601, 0x0005 + bind "hostap_cs" + +card "3Com AirConnect PCI 777A" + manfid 0x0101, 0x0777 + bind "hostap_cs" + +card "U.S. Robotics IEEE 802.11b PC-CARD" + version "U.S. Robotics", "IEEE 802.11b PC-CARD", "Version 01.02" +# manfid 0x0156, 0x0002 + bind "hostap_cs" + +card "Longshine LCR-8531 11Mbps WLAN PCMCIA CARD" + version "OEM", "PRISM2 IEEE 802.11 PC-Card", "Version 01.02" +# manfid 0x0156, 0x0002 + bind "hostap_cs" + +card "Philips 802.11b WLAN PCMCIA" + manfid 0x000b, 0x7300 + bind "hostap_cs" + +card "Proxim RangeLAN" +# version "PROXIM", "RangeLAN-DS/LAN PC CARD" + manfid 0x0126, 0x8000 + bind "hostap_cs" + +card "Buffalo WLI-CF-S11G" + version "BUFFALO", "WLI-CF-S11G" +# manfid 0x026f, 0x030b + bind "hostap_cs" + +card "Level-One WPC-0100" + version "Digital Data Communications", "WPC-0100", "Version 00.00" + manfid 0x0156, 0x0002 + bind "hostap_cs" + +card "Belkin 802.11b WLAN PCMCIA" + version "Belkin", "11Mbps Wireless Notebook Network Adapter", "Version 01.02" + manfid 0x0156, 0x0002 + bind "hostap_cs" + +card "Senao SL-2011CD/SL-2011CDPLUS" + version "INTERSIL", "HFA384x/IEEE", "Version 01.02" + manfid 0x0156, 0x0002 + bind "hostap_cs" + +card "Fulbond Airbond XI-300B" + version " ", "IEEE 802.11 Wireless LAN/PC Card" + manfid 0xd601, 0x0002 + bind "hostap_cs" + +card "Netgear MA401" + version "NETGEAR MA401 Wireless PC", "Card", "Version 01.00" +# manfid 0x0156, 0x0002 + bind "hostap_cs" + +card "D-Link DWL-650 Rev. P1" + version "D-Link", "DWL-650 Wireless PC Card RevP", "ISL37101P-10", "A3" +# manfid 0x000b, 0x7110 + bind "hostap_cs" + +card "SonicWALL Long Range Wireless Card" + version "SonicWALL", "Long Range Wireless Card", "ISL37100P", "1.0" + manfid 0x000b, 0x7100 + bind "hostap_cs" + +card "Senao NL-2011CD PLUS Ext2 Mercury" + version "WLAN", "11Mbps_PC-Card_3.0", "ISL37100P", "Eval-RevA" + manfid 0x000b, 0x7100 + bind "hostap_cs" + +card "Airvast WL100" + version "AIRVAST", "IEEE 802.11b Wireless PCMCIA Card", "HFA3863" + manfid 0x50c2, 0x0001 + bind "hostap_cs" + +card "Microsoft Wireless Notebook Adapter MN-520 1.0.3" + version "Microsoft", "Wireless Notebook Adapter MN-520", "", "1.0.3" + manfid 0x02d2, 0x0001 + bind "hostap_cs" + +card "NETGEAR MA401RA" + version "NETGEAR MA401RA Wireless PC", "Card", "ISL37300P", "Eval-RevA" + manfid 0x000b, 0x7300 + bind "hostap_cs" + +card "Allied Telesyn AT-WCL452" + version "Allied Telesyn", "AT-WCL452 Wireless PCMCIA Radio", "Ver. 1.00" + manfid 0xc00f, 0x0000 + bind "hostap_cs" + +card "corega WL PCCL-11" + version "corega", "WL PCCL-11", "ISL37300P", "RevA" + manfid 0xc00f, 0x0000 + bind "hostap_cs" + +card "SanDisk ConnectPlus" + version "SanDisk", "ConnectPlus" + manfid 0xd601, 0x0101 + bind "hostap_cs" to 0 + bind "ide-cs" to 1 + +card "ASUS WL-100 8011b WLAN PC Card" + version "ASUS", "802_11b_PC_CARD_25", "Version 01.00" + manfid 0x02aa, 0x0002 + bind "hostap_cs" + +card "ZyXel Zyair B-101 802.11b WLAN card" + version " ", "IEEE 802.11 Wireless LAN/PC Card" + manfid 0xd601, 0x0010 + bind "hostap_cs" + +card "WLAN PRISM PCMCIA CARD 37300P RevB6" + version "WLAN", "PRISM PCMCIA CARD", "37300P", "Revision B6" + manfid 0x50c2, 0x7300 + bind "hostap_cs" + + +# Optional configuration parameters for hostap_cs.o +# module "hostap_cs" opts "channel=3 iw_mode=3 essid=test ignore_cis_vcc=0" diff --git a/meta/recipes-bsp/hostap/files/hostap_cs.modalias b/meta/recipes-bsp/hostap/files/hostap_cs.modalias new file mode 100644 index 0000000000..cb9efab271 --- /dev/null +++ b/meta/recipes-bsp/hostap/files/hostap_cs.modalias @@ -0,0 +1,28 @@ +# product info: "Pretec", "CompactWLAN Card 802.11b", "2.5" +pcmcia:m0156c0002f06fn00pfn00pa1CADD3E5pbE697636Cpc7A5BFCF1pd00000000 hostap_cs + +# manufacturer ID which exist in orinoco_cs AND in hostap_cs +pcmcia:m000Bc7100f06fn00pfn00pa*pb*pc*pd* hostap_cs +pcmcia:m000Bc7300f06fn00pfn00pa*pb*pc*pd* hostap_cs +pcmcia:m0126c8000f06fn00pfn00pa*pb*pc*pd* hostap_cs +pcmcia:m0138c0002f06fn00pfn00pa*pb*pc*pd* hostap_cs +pcmcia:m0250c0002f06fn00pfn00pa*pb*pc*pd* hostap_cs +pcmcia:m0274c1612f06fn00pfn00pa*pb*pc*pd* hostap_cs +pcmcia:m0274c1613f06fn00pfn00pa*pb*pc*pd* hostap_cs +pcmcia:m028Ac0002f06fn00pfn00pa*pb*pc*pd* hostap_cs +pcmcia:m02AAc0002f06fn00pfn00pa*pb*pc*pd* hostap_cs +pcmcia:m50C2c7300f06fn00pfn00pa*pb*pc*pd* hostap_cs +pcmcia:mD601c0002f06fn00pfn00pa*pb*pc*pd* hostap_cs +pcmcia:mD601c0005f06fn00pfn00pa*pb*pc*pd* hostap_cs + +# product info: "Linksys", "Wireless CompactFlash Card", "", "" +pcmcia:m028Ac0673f06fn00pfn00pa0733CC81pb0C52F395pc00000000pd00000000 hostap_cs + +# product info:"PLANEX COMMUNICATION INC","PLANEX GW-CF11X Wireless CF Card", "", "" +pcmcia:mD601c0010f06fn00pfn00pa4703CF68pbFAD7318Dpc00000000pd00000000 hostap_cs + +# 0x0156, 0x0002 and "Version 01.02" only appear for Prism based cards. +pcmcia:m0156c0002f06fn00pfn00pa*pb*pc4B74BAA0pd00000000 hostap_cs + +# "BUFFALO", "WLI-CF-S11G", "", "" +pcmcia:m026Fc030Bf06fn00pfn00pa2DECECE3pb82067C18pc00000000pd00000000 hostap_cs diff --git a/meta/recipes-bsp/hostap/hostap-conf_1.0.bb b/meta/recipes-bsp/hostap/hostap-conf_1.0.bb new file mode 100644 index 0000000000..ce069662c7 --- /dev/null +++ b/meta/recipes-bsp/hostap/hostap-conf_1.0.bb @@ -0,0 +1,29 @@ +DESCRIPTION = "PCMCIA-cs configuration files for wireless LAN cards based on Intersil's Prism2/2.5/3 chipset" +SECTION = "kernel/modules" +PRIORITY = "optional" +LICENSE = "GPL" +RDEPENDS = "update-modules" +PACKAGE_ARCH = "all" +PR = "r10" + +SRC_URI = "file://hostap_cs.modalias" + +do_compile() { +} + +do_install() { + install -d ${D}${sysconfdir}/modutils + + install -m 0644 ${WORKDIR}/hostap_cs.modalias ${D}${sysconfdir}/modutils/hostap_cs.conf +} + +pkg_postinst () { + if [ -n "$D" ]; then + exit 1 + fi + update-modules || true +} + +pkg_postrm () { + update-modules || true +} diff --git a/meta/recipes-bsp/hostap/hostap-utils.inc b/meta/recipes-bsp/hostap/hostap-utils.inc new file mode 100644 index 0000000000..16880f1196 --- /dev/null +++ b/meta/recipes-bsp/hostap/hostap-utils.inc @@ -0,0 +1,25 @@ +DESCRIPTION = "User mode helpers for the hostap driver" +HOMEPAGE = "http://hostap.epitest.fi" +BUGTRACKER = "http://hostap.epitest.fi/bugz/" +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3 \ + file://util.c;beginline=1;endline=9;md5=d3b9280851302e5ba34e5fb717489b6d" +SECTION = "kernel/userland" +PRIORITY = "optional" +PR = "r4" + +SRC_URI = "http://hostap.epitest.fi/releases/hostap-utils-${PV}.tar.gz \ + file://hostap-fw-load.patch;patch=1" +S = "${WORKDIR}/hostap-utils-${PV}" + +BINARIES = "hostap_crypt_conf hostap_diag hostap_fw_load hostap_io_debug \ + hostap_rid prism2_param prism2_srec split_combined_hex" + +do_install() { + install -d ${D}${sbindir}/ + for f in ${BINARIES} + do + install -m 0755 $f ${D}${sbindir}/ + done +} + diff --git a/meta/recipes-bsp/hostap/hostap-utils_0.4.7.bb b/meta/recipes-bsp/hostap/hostap-utils_0.4.7.bb new file mode 100644 index 0000000000..9fe362b19f --- /dev/null +++ b/meta/recipes-bsp/hostap/hostap-utils_0.4.7.bb @@ -0,0 +1 @@ +require hostap-utils.inc diff --git a/meta/recipes-bsp/lrzsz/lrzsz-0.12.20/autotools.patch b/meta/recipes-bsp/lrzsz/lrzsz-0.12.20/autotools.patch new file mode 100644 index 0000000000..73f5a062ef --- /dev/null +++ b/meta/recipes-bsp/lrzsz/lrzsz-0.12.20/autotools.patch @@ -0,0 +1,37 @@ +--- lrzsz-0.12.20/acinclude.m4~autotools 1998-12-27 17:08:59.000000000 -0500 ++++ lrzsz-0.12.20/acinclude.m4 2004-05-09 22:26:19.000000000 -0400 +@@ -1,12 +1,11 @@ + dnl AC_REPLACE_GNU_GETOPT +-AC_DEFUN(AC_REPLACE_GNU_GETOPT, +-[AC_CHECK_FUNC(getopt_long, , [LIBOBJS="$LIBOBJS getopt1.o getopt.o"]) +-AC_SUBST(LIBOBJS)dnl +-]) ++AC_DEFUN([AC_REPLACE_GNU_GETOPT], ++[AC_CHECK_FUNC(getopt_long, , [AC_LIBOBJ([getopt1]) ++AC_LIBOBJ([getopt])dnl])]) + + dnl + dnl taken from taylor uucp +-AC_DEFUN(LRZSZ_ERRNO_DECL,[ ++AC_DEFUN([LRZSZ_ERRNO_DECL],[ + AC_MSG_CHECKING(for errno declaration) + AC_CACHE_VAL(lrzsz_cv_decl_errno, + [AC_TRY_COMPILE([#include ], [int i = errno; errno = 1;], +@@ -23,7 +21,7 @@ + ]) + + dnl LRZSZ_TYPE_SPEED_T +-AC_DEFUN(LRZSZ_TYPE_SPEED_T,[ ++AC_DEFUN([LRZSZ_TYPE_SPEED_T],[ + AC_REQUIRE([AC_HEADER_STDC])dnl + AC_REQUIRE([LRZSZ_HEADERS_TERM_IO])dnl + AC_MSG_CHECKING(for speed_t) +@@ -61,7 +59,7 @@ + fi + ]) + +-AC_DEFUN(lrzsz_HEADER_SYS_SELECT, ++AC_DEFUN([lrzsz_HEADER_SYS_SELECT], + [AC_CACHE_CHECK([whether sys/time.h and sys/select.h may both be included], + lrzsz_cv_header_sys_select, + [AC_TRY_COMPILE([#include diff --git a/meta/recipes-bsp/lrzsz/lrzsz-0.12.20/gettext.patch b/meta/recipes-bsp/lrzsz/lrzsz-0.12.20/gettext.patch new file mode 100644 index 0000000000..241ffd90ba --- /dev/null +++ b/meta/recipes-bsp/lrzsz/lrzsz-0.12.20/gettext.patch @@ -0,0 +1,21882 @@ +--- lrzsz-0.12.20.safe/ABOUT-NLS 1998-04-26 09:22:30.000000000 -0400 ++++ lrzsz-0.12.20/ABOUT-NLS 2004-09-12 14:40:34.323752952 -0400 +@@ -1,14 +1,14 @@ + Notes on the Free Translation Project + ************************************* + +- Free software is going international! The Free Translation Project +-is a way to get maintainers of free software, translators, and users all ++Free software is going international! The Free Translation Project is ++a way to get maintainers of free software, translators, and users all + together, so that will gradually become able to speak many languages. + A few packages already provide translations for their messages. + + If you found this `ABOUT-NLS' file inside a distribution, you may + assume that the distributed package does use GNU `gettext' internally, +-itself available at your nearest GNU archive site. But you do *not* ++itself available at your nearest GNU archive site. But you do _not_ + need to install GNU `gettext' prior to configuring, installing or using + this package with messages translated. + +@@ -22,10 +22,10 @@ + `gettext' which is used. The information can be found in the + `intl/VERSION' file, in internationalized packages. + +-One advise in advance +-===================== ++Quick configuration advice ++========================== + +- If you want to exploit the full power of internationalization, you ++If you want to exploit the full power of internationalization, you + should configure it using + + ./configure --with-included-gettext +@@ -34,42 +34,40 @@ + package, despite the existence of internationalizing capabilities in the + operating system where this package is being installed. So far, only + the `gettext' implementation in the GNU C library version 2 provides as +-many features (such as locale alias or message inheritance) as the +-implementation here. It is also not possible to offer this additional +-functionality on top of a `catgets' implementation. Future versions of +-GNU `gettext' will very likely convey even more functionality. So it +-might be a good idea to change to GNU `gettext' as soon as possible. ++many features (such as locale alias, message inheritance, automatic ++charset conversion or plural form handling) as the implementation here. ++It is also not possible to offer this additional functionality on top ++of a `catgets' implementation. Future versions of GNU `gettext' will ++very likely convey even more functionality. So it might be a good idea ++to change to GNU `gettext' as soon as possible. + +- So you need not provide this option if you are using GNU libc 2 or ++ So you need _not_ provide this option if you are using GNU libc 2 or + you have installed a recent copy of the GNU gettext package with the + included `libintl'. + + INSTALL Matters + =============== + +- Some packages are "localizable" when properly installed; the +-programs they contain can be made to speak your own native language. +-Most such packages use GNU `gettext'. Other packages have their own +-ways to internationalization, predating GNU `gettext'. ++Some packages are "localizable" when properly installed; the programs ++they contain can be made to speak your own native language. Most such ++packages use GNU `gettext'. Other packages have their own ways to ++internationalization, predating GNU `gettext'. + + By default, this package will be installed to allow translation of +-messages. It will automatically detect whether the system provides +-usable `catgets' (if using this is selected by the installer) or +-`gettext' functions. If neither is available, the GNU `gettext' own ++messages. It will automatically detect whether the system already ++provides the GNU `gettext' functions. If not, the GNU `gettext' own + library will be used. This library is wholly contained within this + package, usually in the `intl/' subdirectory, so prior installation of +-the GNU `gettext' package is *not* required. Installers may use ++the GNU `gettext' package is _not_ required. Installers may use + special options at configuration time for changing the default + behaviour. The commands: + + ./configure --with-included-gettext +- ./configure --with-catgets + ./configure --disable-nls + +-will respectively bypass any pre-existing `catgets' or `gettext' to use +-the internationalizing routines provided within this package, enable +-the use of the `catgets' functions (if found on the locale system), or +-else, *totally* disable translation of messages. ++will respectively bypass any pre-existing `gettext' to use the ++internationalizing routines provided within this package, or else, ++_totally_ disable translation of messages. + + When you already have GNU `gettext' installed on your system and run + configure without an option for your new package, `configure' will +@@ -83,18 +81,10 @@ + + to prevent auto-detection. + +- By default the configuration process will not test for the `catgets' +-function and therefore they will not be used. The reasons are already +-given above: the emulation on top of `catgets' cannot provide all the +-extensions provided by the GNU `gettext' library. If you nevertheless +-want to use the `catgets' functions use +- +- ./configure --with-catgets +- +-to enable the test for `catgets' (this causes no harm if `catgets' is +-not available on your system). If you really select this option we +-would like to hear about the reasons because we cannot think of any +-good one ourself. ++ The configuration process will not test for the `catgets' function ++and therefore it will not be used. The reason is that even an ++emulation of `gettext' on top of `catgets' could not provide all the ++extensions of the GNU `gettext' library. + + Internationalized packages have usually many `po/LL.po' files, where + LL gives an ISO 639 two-letter code identifying the language. Unless +@@ -108,57 +98,73 @@ + Using This Package + ================== + +- As a user, if your language has been installed for this package, you ++As a user, if your language has been installed for this package, you + only have to set the `LANG' environment variable to the appropriate +-ISO 639 `LL' two-letter code prior to using the programs in the +-package. For example, let's suppose that you speak German. At the +-shell prompt, merely execute `setenv LANG de' (in `csh'), +-`export LANG; LANG=de' (in `sh') or `export LANG=de' (in `bash'). This +-can be done from your `.login' or `.profile' file, once and for all. ++`LL_CC' combination. Here `LL' is an ISO 639 two-letter language code, ++and `CC' is an ISO 3166 two-letter country code. For example, let's ++suppose that you speak German and live in Germany. At the shell ++prompt, merely execute `setenv LANG de_DE' (in `csh'), ++`export LANG; LANG=de_DE' (in `sh') or `export LANG=de_DE' (in `bash'). ++This can be done from your `.login' or `.profile' file, once and for ++all. + +- An operating system might already offer message localization for +-many of its programs, while other programs have been installed locally +-with the full capabilities of GNU `gettext'. Just using `gettext' +-extended syntax for `LANG' would break proper localization of already +-available operating system programs. In this case, users should set +-both `LANGUAGE' and `LANG' variables in their environment, as programs +-using GNU `gettext' give preference to `LANGUAGE'. For example, some +-Swedish users would rather read translations in German than English for +-when Swedish is not available. This is easily accomplished by setting +-`LANGUAGE' to `sv:de' while leaving `LANG' to `sv'. ++ You might think that the country code specification is redundant. ++But in fact, some languages have dialects in different countries. For ++example, `de_AT' is used for Austria, and `pt_BR' for Brazil. The ++country code serves to distinguish the dialects. ++ ++ The locale naming convention of `LL_CC', with `LL' denoting the ++language and `CC' denoting the country, is the one use on systems based ++on GNU libc. On other systems, some variations of this scheme are ++used, such as `LL' or `LL_CC.ENCODING'. You can get the list of ++locales supported by your system for your country by running the command ++`locale -a | grep '^LL''. ++ ++ Not all programs have translations for all languages. By default, an ++English message is shown in place of a nonexistent translation. If you ++understand other languages, you can set up a priority list of languages. ++This is done through a different environment variable, called ++`LANGUAGE'. GNU `gettext' gives preference to `LANGUAGE' over `LANG' ++for the purpose of message handling, but you still need to have `LANG' ++set to the primary language; this is required by other parts of the ++system libraries. For example, some Swedish users who would rather ++read translations in German than English for when Swedish is not ++available, set `LANGUAGE' to `sv:de' while leaving `LANG' to `sv_SE'. ++ ++ Special advice for Norwegian users: The language code for Norwegian ++bokma*l changed from `no' to `nb' recently (in 2003). During the ++transition period, while some message catalogs for this language are ++installed under `nb' and some older ones under `no', it's recommended ++for Norwegian users to set `LANGUAGE' to `nb:no' so that both newer and ++older translations are used. ++ ++ In the `LANGUAGE' environment variable, but not in the `LANG' ++environment variable, `LL_CC' combinations can be abbreviated as `LL' ++to denote the language's main dialect. For example, `de' is equivalent ++to `de_DE' (German as spoken in Germany), and `pt' to `pt_PT' ++(Portuguese as spoken in Portugal) in this context. + + Translating Teams + ================= + +- For the Free Translation Project to be a success, we need interested ++For the Free Translation Project to be a success, we need interested + people who like their own language and write it well, and who are also + able to synergize with other translators speaking the same language. +-Each translation team has its own mailing list, courtesy of Linux +-International. You may reach your translation team at the address +-`LL@li.org', replacing LL by the two-letter ISO 639 code for your +-language. Language codes are *not* the same as the country codes given +-in ISO 3166. The following translation teams exist, as of August 1997: +- +- Chinese `zh', Czech `cs', Danish `da', Dutch `nl', English `en', +- Esperanto `eo', Finnish `fi', French `fr', German `de', Hungarian +- `hu', Irish `ga', Italian `it', Indonesian `id', Japanese `ja', +- Korean `ko', Latin `la', Norwegian `no', Persian `fa', Polish +- `pl', Portuguese `pt', Russian `ru', Slovenian `sl', Spanish `es', +- Swedish `sv', and Turkish `tr'. +- +-For example, you may reach the Chinese translation team by writing to +-`zh@li.org'. ++Each translation team has its own mailing list. The up-to-date list of ++teams can be found at the Free Translation Project's homepage, ++`http://www.iro.umontreal.ca/contrib/po/HTML/', in the "National teams" ++area. + +- If you'd like to volunteer to *work* at translating messages, you ++ If you'd like to volunteer to _work_ at translating messages, you + should become a member of the translating team for your own language. +-The subscribing address is *not* the same as the list itself, it has ++The subscribing address is _not_ the same as the list itself, it has + `-request' appended. For example, speakers of Swedish can send a + message to `sv-request@li.org', having this message body: + + subscribe + + Keep in mind that team members are expected to participate +-*actively* in translations, or at solving translational difficulties, ++_actively_ in translations, or at solving translational difficulties, + rather than merely lurking around. If your team does not exist yet and + you want to start one, or if you are unsure about what to do or how to + get started, please write to `translation@iro.umontreal.ca' to reach the +@@ -171,43 +177,559 @@ + Available Packages + ================== + +- Languages are not equally supported in all packages. The following +-matrix shows the current state of internationalization, as of August +-1997. The matrix shows, in regard of each package, for which languages +-PO files have been submitted to translation coordination. ++Languages are not equally supported in all packages. The following ++matrix shows the current state of internationalization, as of January ++2004. The matrix shows, in regard of each package, for which languages ++PO files have been submitted to translation coordination, with a ++translation percentage of at least 50%. + +- Ready PO files cs da de en es fi fr it ja ko nl no pl pt sl sv +- .-------------------------------------------------. +- bash | [] [] [] | 3 +- bison | [] [] [] | 3 +- clisp | [] [] [] [] | 4 +- cpio | [] [] [] [] [] | 5 +- diffutils | [] [] [] [] [] | 5 +- enscript | [] [] [] [] [] [] | 6 +- fileutils | [] [] [] [] [] [] [] [] [] [] | 10 +- findutils | [] [] [] [] [] [] [] [] | 8 +- flex | [] [] [] [] | 4 +- gcal | [] [] [] [] [] | 5 +- gettext | [] [] [] [] [] [] [] [] [] [] | 11 +- grep | [] [] [] [] [] [] [] [] [] | 9 +- hello | [] [] [] [] [] [] [] [] [] [] | 10 +- id-utils | [] [] [] | 3 +- indent | [] [] [] [] | 4 +- libc | [] [] [] [] [] [] [] | 7 +- m4 | [] [] [] [] [] | 5 +- make | [] [] [] [] [] [] | 6 +- music | [] [] | 2 +- ptx | [] [] [] [] [] [] [] [] | 8 +- recode | [] [] [] [] [] [] [] [] [] | 9 +- sh-utils | [] [] [] [] [] [] [] | 7 +- sharutils | [] [] [] [] [] | 5 +- tar | [] [] [] [] [] [] [] [] [] [] | 10 +- texinfo | [] | 1 +- textutils | [] [] [] [] [] [] [] [] [] | 9 +- wdiff | [] [] [] [] [] [] [] [] | 8 +- `-------------------------------------------------' +- 16 languages cs da de en es fi fr it ja ko nl no pl pt sl sv +- 27 packages 3 2 24 1 17 1 26 2 1 11 20 9 19 7 7 17 167 ++ Ready PO files af am ar az be bg bs ca cs da de el en en_GB eo es ++ +----------------------------------------------------+ ++ a2ps | [] [] [] [] | ++ aegis | () | ++ ant-phone | () | ++ anubis | | ++ ap-utils | | ++ aspell | [] | ++ bash | [] [] [] [] | ++ batchelor | | ++ bfd | [] [] | ++ binutils | [] [] | ++ bison | [] [] [] | ++ bluez-pin | [] [] [] | ++ clisp | | ++ clisp | [] [] [] | ++ console-tools | [] [] | ++ coreutils | [] [] [] [] | ++ cpio | [] [] [] | ++ darkstat | [] () [] | ++ diffutils | [] [] [] [] [] [] [] | ++ e2fsprogs | [] [] [] | ++ enscript | [] [] [] [] | ++ error | [] [] [] [] [] | ++ fetchmail | [] () [] [] [] [] | ++ fileutils | [] [] [] | ++ findutils | [] [] [] [] [] [] [] | ++ flex | [] [] [] [] | ++ fslint | | ++ gas | [] | ++ gawk | [] [] [] [] | ++ gbiff | [] | ++ gcal | [] | ++ gcc | [] [] | ++ gettext | [] [] [] [] [] | ++ gettext-examples | [] [] [] [] | ++ gettext-runtime | [] [] [] [] [] | ++ gettext-tools | [] [] [] | ++ gimp-print | [] [] [] [] [] | ++ gliv | | ++ glunarclock | [] [] | ++ gnubiff | [] | ++ gnucash | [] () [] [] | ++ gnucash-glossary | [] () [] | ++ gnupg | [] () [] [] [] [] | ++ gpe-aerial | [] | ++ gpe-beam | [] [] | ++ gpe-calendar | [] [] | ++ gpe-clock | [] [] | ++ gpe-conf | [] [] | ++ gpe-contacts | [] [] | ++ gpe-edit | [] | ++ gpe-go | [] | ++ gpe-login | [] [] | ++ gpe-ownerinfo | [] [] | ++ gpe-sketchbook | [] [] | ++ gpe-su | [] [] | ++ gpe-taskmanager | [] [] | ++ gpe-timesheet | [] | ++ gpe-today | [] [] | ++ gpe-todo | [] [] | ++ gphoto2 | [] [] [] [] | ++ gprof | [] [] [] | ++ gpsdrive | () () () | ++ gramadoir | [] | ++ grep | [] [] [] [] [] [] | ++ gretl | [] | ++ gtick | [] () | ++ hello | [] [] [] [] [] [] | ++ id-utils | [] [] | ++ indent | [] [] [] [] | ++ iso_3166 | [] [] [] [] [] [] [] [] [] [] | ++ iso_3166_1 | [] [] [] [] [] [] | ++ iso_3166_2 | | ++ iso_3166_3 | [] | ++ iso_4217 | [] [] [] [] | ++ iso_639 | | ++ jpilot | [] [] [] | ++ jtag | | ++ jwhois | [] | ++ kbd | [] [] [] [] [] | ++ latrine | () | ++ ld | [] [] | ++ libc | [] [] [] [] [] [] | ++ libgpewidget | [] [] | ++ libiconv | [] [] [] [] [] | ++ lifelines | [] () | ++ lilypond | [] | ++ lingoteach | | ++ lingoteach_lessons | () () | ++ lynx | [] [] [] [] | ++ m4 | [] [] [] [] | ++ mailutils | [] [] | ++ make | [] [] [] | ++ man-db | [] () [] [] () | ++ minicom | [] [] [] | ++ mysecretdiary | [] [] [] | ++ nano | [] () [] [] [] | ++ nano_1_0 | [] () [] [] [] | ++ opcodes | [] | ++ parted | [] [] [] [] [] | ++ ptx | [] [] [] [] [] | ++ python | | ++ radius | [] | ++ recode | [] [] [] [] [] [] [] | ++ rpm | [] [] | ++ screem | | ++ scrollkeeper | [] [] [] [] [] [] | ++ sed | [] [] [] [] [] [] | ++ sh-utils | [] [] [] | ++ shared-mime-info | | ++ sharutils | [] [] [] [] [] [] | ++ silky | () | ++ skencil | [] () [] | ++ sketch | [] () [] | ++ soundtracker | [] [] [] | ++ sp | [] | ++ tar | [] [] [] [] | ++ texinfo | [] [] [] | ++ textutils | [] [] [] [] | ++ tin | () () | ++ tp-robot | | ++ tuxpaint | [] [] [] [] [] [] [] | ++ unicode-han-tra... | | ++ unicode-transla... | | ++ util-linux | [] [] [] [] [] | ++ vorbis-tools | [] [] [] [] | ++ wastesedge | () | ++ wdiff | [] [] [] [] | ++ wget | [] [] [] [] [] [] | ++ xchat | [] [] [] [] | ++ xfree86_xkb_xml | [] [] | ++ xpad | [] | ++ +----------------------------------------------------+ ++ af am ar az be bg bs ca cs da de el en en_GB eo es ++ 4 0 0 1 9 4 1 40 41 60 78 17 1 5 13 68 ++ ++ et eu fa fi fr ga gl he hr hu id is it ja ko lg ++ +-------------------------------------------------+ ++ a2ps | [] [] [] () () | ++ aegis | | ++ ant-phone | [] | ++ anubis | [] | ++ ap-utils | [] | ++ aspell | [] [] | ++ bash | [] [] | ++ batchelor | [] [] | ++ bfd | [] | ++ binutils | [] [] | ++ bison | [] [] [] [] | ++ bluez-pin | [] [] [] [] [] | ++ clisp | | ++ clisp | [] | ++ console-tools | | ++ coreutils | [] [] [] [] [] [] | ++ cpio | [] [] [] [] | ++ darkstat | () [] [] [] | ++ diffutils | [] [] [] [] [] [] [] | ++ e2fsprogs | | ++ enscript | [] [] | ++ error | [] [] [] [] | ++ fetchmail | [] | ++ fileutils | [] [] [] [] [] [] | ++ findutils | [] [] [] [] [] [] [] [] [] [] [] | ++ flex | [] [] [] | ++ fslint | [] | ++ gas | [] | ++ gawk | [] [] [] | ++ gbiff | [] | ++ gcal | [] | ++ gcc | [] | ++ gettext | [] [] [] | ++ gettext-examples | [] [] | ++ gettext-runtime | [] [] [] [] [] | ++ gettext-tools | [] [] [] | ++ gimp-print | [] [] | ++ gliv | () | ++ glunarclock | [] [] [] [] | ++ gnubiff | [] | ++ gnucash | () [] | ++ gnucash-glossary | [] | ++ gnupg | [] [] [] [] [] [] [] | ++ gpe-aerial | [] | ++ gpe-beam | [] | ++ gpe-calendar | [] [] [] | ++ gpe-clock | [] | ++ gpe-conf | [] | ++ gpe-contacts | [] [] | ++ gpe-edit | [] [] | ++ gpe-go | [] | ++ gpe-login | [] [] | ++ gpe-ownerinfo | [] [] [] | ++ gpe-sketchbook | [] | ++ gpe-su | [] | ++ gpe-taskmanager | [] | ++ gpe-timesheet | [] [] [] | ++ gpe-today | [] [] | ++ gpe-todo | [] [] | ++ gphoto2 | [] [] [] | ++ gprof | [] [] | ++ gpsdrive | () () () | ++ gramadoir | [] [] | ++ grep | [] [] [] [] [] [] [] [] [] [] [] | ++ gretl | [] [] | ++ gtick | [] [] [] | ++ hello | [] [] [] [] [] [] [] [] [] [] [] [] [] | ++ id-utils | [] [] [] [] | ++ indent | [] [] [] [] [] [] [] [] [] | ++ iso_3166 | [] [] [] [] [] [] [] | ++ iso_3166_1 | [] [] [] [] [] | ++ iso_3166_2 | | ++ iso_3166_3 | | ++ iso_4217 | [] [] [] [] [] [] | ++ iso_639 | | ++ jpilot | [] () | ++ jtag | [] | ++ jwhois | [] [] [] [] | ++ kbd | [] | ++ latrine | [] | ++ ld | [] | ++ libc | [] [] [] [] [] [] | ++ libgpewidget | [] [] [] [] | ++ libiconv | [] [] [] [] [] [] [] [] [] | ++ lifelines | () | ++ lilypond | [] | ++ lingoteach | [] [] | ++ lingoteach_lessons | | ++ lynx | [] [] [] [] | ++ m4 | [] [] [] [] | ++ mailutils | | ++ make | [] [] [] [] [] [] | ++ man-db | () () | ++ minicom | [] [] [] [] | ++ mysecretdiary | [] [] | ++ nano | [] [] [] [] | ++ nano_1_0 | [] [] [] [] | ++ opcodes | [] | ++ parted | [] [] [] | ++ ptx | [] [] [] [] [] [] [] | ++ python | | ++ radius | [] | ++ recode | [] [] [] [] [] [] | ++ rpm | [] [] | ++ screem | | ++ scrollkeeper | [] | ++ sed | [] [] [] [] [] [] [] [] [] | ++ sh-utils | [] [] [] [] [] [] [] | ++ shared-mime-info | [] [] [] | ++ sharutils | [] [] [] [] [] | ++ silky | () [] () () | ++ skencil | [] | ++ sketch | [] | ++ soundtracker | [] [] | ++ sp | [] () | ++ tar | [] [] [] [] [] [] [] [] [] | ++ texinfo | [] [] [] [] | ++ textutils | [] [] [] [] [] [] | ++ tin | [] () | ++ tp-robot | [] | ++ tuxpaint | [] [] [] [] [] [] [] [] [] | ++ unicode-han-tra... | | ++ unicode-transla... | [] [] | ++ util-linux | [] [] [] [] () [] | ++ vorbis-tools | [] | ++ wastesedge | () | ++ wdiff | [] [] [] [] [] [] | ++ wget | [] [] [] [] [] [] [] | ++ xchat | [] [] [] | ++ xfree86_xkb_xml | [] [] | ++ xpad | [] [] | ++ +-------------------------------------------------+ ++ et eu fa fi fr ga gl he hr hu id is it ja ko lg ++ 22 2 1 26 106 28 24 8 10 41 33 1 26 33 12 0 ++ ++ lt lv mk mn ms mt nb nl nn no nso pl pt pt_BR ro ru ++ +-----------------------------------------------------+ ++ a2ps | [] [] () () [] [] [] | ++ aegis | () () () | ++ ant-phone | [] [] | ++ anubis | [] [] [] [] [] [] | ++ ap-utils | [] () [] | ++ aspell | [] | ++ bash | [] [] [] | ++ batchelor | [] | ++ bfd | [] | ++ binutils | [] | ++ bison | [] [] [] [] [] | ++ bluez-pin | [] [] [] | ++ clisp | | ++ clisp | [] | ++ console-tools | [] | ++ coreutils | [] [] | ++ cpio | [] [] [] [] [] | ++ darkstat | [] [] [] [] | ++ diffutils | [] [] [] [] [] [] | ++ e2fsprogs | [] | ++ enscript | [] [] [] [] | ++ error | [] [] [] | ++ fetchmail | [] [] () [] | ++ fileutils | [] [] [] | ++ findutils | [] [] [] [] [] | ++ flex | [] [] [] [] | ++ fslint | [] [] | ++ gas | | ++ gawk | [] [] [] | ++ gbiff | [] [] | ++ gcal | | ++ gcc | | ++ gettext | [] [] [] | ++ gettext-examples | [] [] [] | ++ gettext-runtime | [] [] [] [] | ++ gettext-tools | [] [] | ++ gimp-print | [] | ++ gliv | [] [] [] | ++ glunarclock | [] [] [] [] | ++ gnubiff | [] | ++ gnucash | [] [] () [] | ++ gnucash-glossary | [] [] | ++ gnupg | [] | ++ gpe-aerial | [] [] [] [] | ++ gpe-beam | [] [] [] [] | ++ gpe-calendar | [] [] [] [] | ++ gpe-clock | [] [] [] [] | ++ gpe-conf | [] [] [] [] | ++ gpe-contacts | [] [] [] [] | ++ gpe-edit | [] [] [] [] | ++ gpe-go | [] [] [] | ++ gpe-login | [] [] [] [] | ++ gpe-ownerinfo | [] [] [] [] | ++ gpe-sketchbook | [] [] [] [] | ++ gpe-su | [] [] [] [] | ++ gpe-taskmanager | [] [] [] [] | ++ gpe-timesheet | [] [] [] [] | ++ gpe-today | [] [] [] [] | ++ gpe-todo | [] [] [] [] | ++ gphoto2 | [] | ++ gprof | [] [] | ++ gpsdrive | () () [] | ++ gramadoir | () [] | ++ grep | [] [] [] [] [] | ++ gretl | | ++ gtick | [] [] [] | ++ hello | [] [] [] [] [] [] [] [] [] [] | ++ id-utils | [] [] [] [] | ++ indent | [] [] [] [] | ++ iso_3166 | [] [] [] | ++ iso_3166_1 | [] [] | ++ iso_3166_2 | | ++ iso_3166_3 | [] | ++ iso_4217 | [] [] [] [] [] [] [] [] | ++ iso_639 | [] | ++ jpilot | () () | ++ jtag | | ++ jwhois | [] [] [] [] () | ++ kbd | [] [] [] | ++ latrine | [] | ++ ld | | ++ libc | [] [] [] [] | ++ libgpewidget | [] [] [] | ++ libiconv | [] [] [] [] [] | ++ lifelines | | ++ lilypond | | ++ lingoteach | | ++ lingoteach_lessons | | ++ lynx | [] [] [] | ++ m4 | [] [] [] [] [] | ++ mailutils | [] [] [] | ++ make | [] [] [] [] | ++ man-db | [] | ++ minicom | [] [] [] [] | ++ mysecretdiary | [] [] [] | ++ nano | [] [] [] [] [] | ++ nano_1_0 | [] [] [] [] [] [] | ++ opcodes | [] [] | ++ parted | [] [] [] [] | ++ ptx | [] [] [] [] [] [] [] [] | ++ python | | ++ radius | [] [] | ++ recode | [] [] [] [] | ++ rpm | [] [] [] | ++ screem | | ++ scrollkeeper | [] [] [] [] [] | ++ sed | [] [] [] | ++ sh-utils | [] [] | ++ shared-mime-info | [] [] | ++ sharutils | [] [] | ++ silky | () | ++ skencil | [] [] | ++ sketch | [] [] | ++ soundtracker | | ++ sp | | ++ tar | [] [] [] [] [] [] | ++ texinfo | [] [] [] [] | ++ textutils | [] [] | ++ tin | | ++ tp-robot | [] | ++ tuxpaint | [] [] [] [] [] [] [] [] | ++ unicode-han-tra... | | ++ unicode-transla... | | ++ util-linux | [] [] [] | ++ vorbis-tools | [] [] [] | ++ wastesedge | | ++ wdiff | [] [] [] [] [] | ++ wget | [] [] [] | ++ xchat | [] [] [] | ++ xfree86_xkb_xml | [] [] | ++ xpad | [] [] | ++ +-----------------------------------------------------+ ++ lt lv mk mn ms mt nb nl nn no nso pl pt pt_BR ro ru ++ 1 2 0 3 12 0 10 69 6 7 1 40 26 36 76 63 ++ ++ sk sl sr sv ta th tr uk ven vi wa xh zh_CN zh_TW zu ++ +-----------------------------------------------------+ ++ a2ps | [] [] [] [] | 16 ++ aegis | | 0 ++ ant-phone | | 3 ++ anubis | [] [] | 9 ++ ap-utils | () | 3 ++ aspell | | 4 ++ bash | | 9 ++ batchelor | | 3 ++ bfd | [] [] | 6 ++ binutils | [] [] [] | 8 ++ bison | [] [] | 14 ++ bluez-pin | [] [] [] | 14 ++ clisp | | 0 ++ clisp | | 5 ++ console-tools | | 3 ++ coreutils | [] [] [] [] | 16 ++ cpio | [] [] | 14 ++ darkstat | [] [] [] () () | 12 ++ diffutils | [] [] [] | 23 ++ e2fsprogs | [] [] | 6 ++ enscript | [] [] | 12 ++ error | [] [] [] | 15 ++ fetchmail | [] [] | 11 ++ fileutils | [] [] [] [] [] | 17 ++ findutils | [] [] [] [] [] [] | 29 ++ flex | [] [] | 13 ++ fslint | | 3 ++ gas | [] | 3 ++ gawk | [] [] | 12 ++ gbiff | | 4 ++ gcal | [] [] | 4 ++ gcc | [] | 4 ++ gettext | [] [] [] [] [] | 16 ++ gettext-examples | [] [] [] [] [] | 14 ++ gettext-runtime | [] [] [] [] [] [] [] [] | 22 ++ gettext-tools | [] [] [] [] [] [] | 14 ++ gimp-print | [] [] | 10 ++ gliv | | 3 ++ glunarclock | [] [] [] | 13 ++ gnubiff | | 3 ++ gnucash | [] [] | 9 ++ gnucash-glossary | [] [] [] | 8 ++ gnupg | [] [] [] [] | 17 ++ gpe-aerial | [] | 7 ++ gpe-beam | [] | 8 ++ gpe-calendar | [] [] [] [] | 13 ++ gpe-clock | [] [] [] | 10 ++ gpe-conf | [] [] | 9 ++ gpe-contacts | [] [] [] | 11 ++ gpe-edit | [] [] [] [] [] | 12 ++ gpe-go | | 5 ++ gpe-login | [] [] [] [] [] | 13 ++ gpe-ownerinfo | [] [] [] [] | 13 ++ gpe-sketchbook | [] [] | 9 ++ gpe-su | [] [] [] | 10 ++ gpe-taskmanager | [] [] [] | 10 ++ gpe-timesheet | [] [] [] [] | 12 ++ gpe-today | [] [] [] [] [] | 13 ++ gpe-todo | [] [] [] [] | 12 ++ gphoto2 | [] [] [] | 11 ++ gprof | [] [] | 9 ++ gpsdrive | [] [] | 3 ++ gramadoir | [] | 5 ++ grep | [] [] [] [] | 26 ++ gretl | | 3 ++ gtick | | 7 ++ hello | [] [] [] [] [] | 34 ++ id-utils | [] [] | 12 ++ indent | [] [] [] [] | 21 ++ iso_3166 | [] [] [] [] [] [] [] | 27 ++ iso_3166_1 | [] [] [] | 16 ++ iso_3166_2 | | 0 ++ iso_3166_3 | | 2 ++ iso_4217 | [] [] [] [] [] [] | 24 ++ iso_639 | | 1 ++ jpilot | [] [] [] [] [] | 9 ++ jtag | [] | 2 ++ jwhois | () [] [] | 11 ++ kbd | [] [] | 11 ++ latrine | | 2 ++ ld | [] [] | 5 ++ libc | [] [] [] [] | 20 ++ libgpewidget | [] [] [] [] | 13 ++ libiconv | [] [] [] [] [] [] [] [] | 27 ++ lifelines | [] | 2 ++ lilypond | [] | 3 ++ lingoteach | | 2 ++ lingoteach_lessons | () | 0 ++ lynx | [] [] [] | 14 ++ m4 | [] [] | 15 ++ mailutils | | 5 ++ make | [] [] [] | 16 ++ man-db | [] | 5 ++ minicom | | 11 ++ mysecretdiary | [] [] | 10 ++ nano | [] [] [] [] | 17 ++ nano_1_0 | [] [] [] | 17 ++ opcodes | [] [] | 6 ++ parted | [] [] [] | 15 ++ ptx | [] [] | 22 ++ python | | 0 ++ radius | | 4 ++ recode | [] [] [] | 20 ++ rpm | [] [] | 9 ++ screem | [] [] | 2 ++ scrollkeeper | [] [] [] | 15 ++ sed | [] [] [] [] [] [] | 24 ++ sh-utils | [] [] | 14 ++ shared-mime-info | [] [] | 7 ++ sharutils | [] [] [] [] | 17 ++ silky | () | 3 ++ skencil | [] | 6 ++ sketch | [] | 6 ++ soundtracker | [] [] | 7 ++ sp | [] | 3 ++ tar | [] [] [] [] [] | 24 ++ texinfo | [] [] [] | 14 ++ textutils | [] [] [] [] | 16 ++ tin | | 1 ++ tp-robot | | 2 ++ tuxpaint | [] [] [] [] [] | 29 ++ unicode-han-tra... | | 0 ++ unicode-transla... | | 2 ++ util-linux | [] [] | 15 ++ vorbis-tools | | 8 ++ wastesedge | | 0 ++ wdiff | [] [] [] | 18 ++ wget | [] [] [] [] [] [] [] [] | 24 ++ xchat | [] [] [] [] [] | 15 ++ xfree86_xkb_xml | [] [] [] [] [] | 11 ++ xpad | | 5 ++ +-----------------------------------------------------+ ++ 63 teams sk sl sr sv ta th tr uk ven vi wa xh zh_CN zh_TW zu ++ 131 domains 47 19 28 83 0 0 59 13 1 1 11 0 22 22 0 1373 + + Some counters in the preceding matrix are higher than the number of + visible blocks let us expect. This is because a few extra PO files are +@@ -220,6 +742,27 @@ + lag between the mere existence a PO file and its wide availability in a + distribution. + +- If August 1997 seems to be old, you may fetch a more recent copy of +-this `ABOUT-NLS' file on most GNU archive sites. ++ If January 2004 seems to be old, you may fetch a more recent copy of ++this `ABOUT-NLS' file on most GNU archive sites. The most up-to-date ++matrix with full percentage details can be found at ++`http://www.iro.umontreal.ca/contrib/po/HTML/matrix.html'. ++ ++Using `gettext' in new packages ++=============================== ++ ++If you are writing a freely available program and want to ++internationalize it you are welcome to use GNU `gettext' in your ++package. Of course you have to respect the GNU Library General Public ++License which covers the use of the GNU `gettext' library. This means ++in particular that even non-free programs can use `libintl' as a shared ++library, whereas only free software can use `libintl' as a static ++library or use modified versions of `libintl'. ++ ++ Once the sources are changed appropriately and the setup can handle ++the use of `gettext' the only thing missing are the translations. The ++Free Translation Project is also available for packages which are not ++developed inside the GNU project. Therefore the information given above ++applies also for every other Free Software Project. Contact ++`translation@iro.umontreal.ca' to make the `.pot' files available to ++the translation teams. + +--- lrzsz-0.12.20.safe/ChangeLog 1998-12-29 17:49:56.000000000 -0500 ++++ lrzsz-0.12.20/ChangeLog 2004-09-12 14:40:35.846521456 -0400 +@@ -1,3 +1,11 @@ ++2004-09-12 gettextize ++ ++ * Makefile.am (ACLOCAL_AMFLAGS): New variable. ++ (EXTRA_DIST): Add config.rpath. ++ * configure.in (AC_OUTPUT): Add m4/Makefile. ++ (AC_OUTPUT): Remove command that created po/Makefile. ++ (AC_LINK_FILES): Remove invocation. ++ + 1998-12-29 Uwe Ohse + + * src/lrz.c: removed stpcpy call. +--- lrzsz-0.12.20.safe/config.rpath 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/config.rpath 2004-09-12 14:40:34.329752040 -0400 +@@ -0,0 +1,548 @@ ++#! /bin/sh ++# Output a system dependent set of variables, describing how to set the ++# run time search path of shared libraries in an executable. ++# ++# Copyright 1996-2003 Free Software Foundation, Inc. ++# Taken from GNU libtool, 2001 ++# Originally by Gordon Matzigkeit , 1996 ++# ++# This program is free software; you can redistribute it and/or modify ++# it under the terms of the GNU General Public License as published by ++# the Free Software Foundation; either version 2 of the License, or ++# (at your option) any later version. ++# ++# This program is distributed in the hope that it will be useful, but ++# WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++# General Public License for more details. ++# ++# You should have received a copy of the GNU General Public License ++# along with this program; if not, write to the Free Software ++# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. ++# ++# As a special exception to the GNU General Public License, if you ++# distribute this file as part of a program that contains a ++# configuration script generated by Autoconf, you may include it under ++# the same distribution terms that you use for the rest of that program. ++# ++# The first argument passed to this file is the canonical host specification, ++# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM ++# or ++# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM ++# The environment variables CC, GCC, LDFLAGS, LD, with_gnu_ld ++# should be set by the caller. ++# ++# The set of defined variables is at the end of this script. ++ ++# Known limitations: ++# - On IRIX 6.5 with CC="cc", the run time search patch must not be longer ++# than 256 bytes, otherwise the compiler driver will dump core. The only ++# known workaround is to choose shorter directory names for the build ++# directory and/or the installation directory. ++ ++# All known linkers require a `.a' archive for static linking (except M$VC, ++# which needs '.lib'). ++libext=a ++shrext=.so ++ ++host="$1" ++host_cpu=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` ++host_vendor=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` ++host_os=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` ++ ++# Code taken from libtool.m4's AC_LIBTOOL_PROG_COMPILER_PIC. ++ ++wl= ++if test "$GCC" = yes; then ++ wl='-Wl,' ++else ++ case "$host_os" in ++ aix*) ++ wl='-Wl,' ++ ;; ++ mingw* | pw32* | os2*) ++ ;; ++ hpux9* | hpux10* | hpux11*) ++ wl='-Wl,' ++ ;; ++ irix5* | irix6* | nonstopux*) ++ wl='-Wl,' ++ ;; ++ newsos6) ++ ;; ++ linux*) ++ case $CC in ++ icc|ecc) ++ wl='-Wl,' ++ ;; ++ ccc) ++ wl='-Wl,' ++ ;; ++ esac ++ ;; ++ osf3* | osf4* | osf5*) ++ wl='-Wl,' ++ ;; ++ sco3.2v5*) ++ ;; ++ solaris*) ++ wl='-Wl,' ++ ;; ++ sunos4*) ++ wl='-Qoption ld ' ++ ;; ++ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) ++ wl='-Wl,' ++ ;; ++ sysv4*MP*) ++ ;; ++ uts4*) ++ ;; ++ esac ++fi ++ ++# Code taken from libtool.m4's AC_LIBTOOL_PROG_LD_SHLIBS. ++ ++hardcode_libdir_flag_spec= ++hardcode_libdir_separator= ++hardcode_direct=no ++hardcode_minus_L=no ++ ++case "$host_os" in ++ cygwin* | mingw* | pw32*) ++ # FIXME: the MSVC++ port hasn't been tested in a loooong time ++ # When not using gcc, we currently assume that we are using ++ # Microsoft Visual C++. ++ if test "$GCC" != yes; then ++ with_gnu_ld=no ++ fi ++ ;; ++ openbsd*) ++ with_gnu_ld=no ++ ;; ++esac ++ ++ld_shlibs=yes ++if test "$with_gnu_ld" = yes; then ++ case "$host_os" in ++ aix3* | aix4* | aix5*) ++ # On AIX/PPC, the GNU linker is very broken ++ if test "$host_cpu" != ia64; then ++ ld_shlibs=no ++ fi ++ ;; ++ amigaos*) ++ hardcode_libdir_flag_spec='-L$libdir' ++ hardcode_minus_L=yes ++ # Samuel A. Falvo II reports ++ # that the semantics of dynamic libraries on AmigaOS, at least up ++ # to version 4, is to share data among multiple programs linked ++ # with the same dynamic library. Since this doesn't match the ++ # behavior of shared libraries on other platforms, we can use ++ # them. ++ ld_shlibs=no ++ ;; ++ beos*) ++ if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then ++ : ++ else ++ ld_shlibs=no ++ fi ++ ;; ++ cygwin* | mingw* | pw32*) ++ # hardcode_libdir_flag_spec is actually meaningless, as there is ++ # no search path for DLLs. ++ hardcode_libdir_flag_spec='-L$libdir' ++ if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then ++ : ++ else ++ ld_shlibs=no ++ fi ++ ;; ++ netbsd*) ++ ;; ++ solaris* | sysv5*) ++ if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then ++ ld_shlibs=no ++ elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then ++ : ++ else ++ ld_shlibs=no ++ fi ++ ;; ++ sunos4*) ++ hardcode_direct=yes ++ ;; ++ *) ++ if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then ++ : ++ else ++ ld_shlibs=no ++ fi ++ ;; ++ esac ++ if test "$ld_shlibs" = yes; then ++ # Unlike libtool, we use -rpath here, not --rpath, since the documented ++ # option of GNU ld is called -rpath, not --rpath. ++ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' ++ fi ++else ++ case "$host_os" in ++ aix3*) ++ # Note: this linker hardcodes the directories in LIBPATH if there ++ # are no directories specified by -L. ++ hardcode_minus_L=yes ++ if test "$GCC" = yes; then ++ # Neither direct hardcoding nor static linking is supported with a ++ # broken collect2. ++ hardcode_direct=unsupported ++ fi ++ ;; ++ aix4* | aix5*) ++ if test "$host_cpu" = ia64; then ++ # On IA64, the linker does run time linking by default, so we don't ++ # have to do anything special. ++ aix_use_runtimelinking=no ++ else ++ aix_use_runtimelinking=no ++ # Test if we are trying to use run time linking or normal ++ # AIX style linking. If -brtl is somewhere in LDFLAGS, we ++ # need to do runtime linking. ++ case $host_os in aix4.[23]|aix4.[23].*|aix5*) ++ for ld_flag in $LDFLAGS; do ++ if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then ++ aix_use_runtimelinking=yes ++ break ++ fi ++ done ++ esac ++ fi ++ hardcode_direct=yes ++ hardcode_libdir_separator=':' ++ if test "$GCC" = yes; then ++ case $host_os in aix4.[012]|aix4.[012].*) ++ collect2name=`${CC} -print-prog-name=collect2` ++ if test -f "$collect2name" && \ ++ strings "$collect2name" | grep resolve_lib_name >/dev/null ++ then ++ # We have reworked collect2 ++ hardcode_direct=yes ++ else ++ # We have old collect2 ++ hardcode_direct=unsupported ++ hardcode_minus_L=yes ++ hardcode_libdir_flag_spec='-L$libdir' ++ hardcode_libdir_separator= ++ fi ++ esac ++ fi ++ # Begin _LT_AC_SYS_LIBPATH_AIX. ++ echo 'int main () { return 0; }' > conftest.c ++ ${CC} ${LDFLAGS} conftest.c -o conftest ++ aix_libpath=`dump -H conftest 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } ++}'` ++ if test -z "$aix_libpath"; then ++ aix_libpath=`dump -HX64 conftest 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } ++}'` ++ fi ++ if test -z "$aix_libpath"; then ++ aix_libpath="/usr/lib:/lib" ++ fi ++ rm -f conftest.c conftest ++ # End _LT_AC_SYS_LIBPATH_AIX. ++ if test "$aix_use_runtimelinking" = yes; then ++ hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath" ++ else ++ if test "$host_cpu" = ia64; then ++ hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib' ++ else ++ hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath" ++ fi ++ fi ++ ;; ++ amigaos*) ++ hardcode_libdir_flag_spec='-L$libdir' ++ hardcode_minus_L=yes ++ # see comment about different semantics on the GNU ld section ++ ld_shlibs=no ++ ;; ++ bsdi4*) ++ ;; ++ cygwin* | mingw* | pw32*) ++ # When not using gcc, we currently assume that we are using ++ # Microsoft Visual C++. ++ # hardcode_libdir_flag_spec is actually meaningless, as there is ++ # no search path for DLLs. ++ hardcode_libdir_flag_spec=' ' ++ libext=lib ++ ;; ++ darwin* | rhapsody*) ++ if $CC -v 2>&1 | grep 'Apple' >/dev/null ; then ++ hardcode_direct=no ++ fi ++ ;; ++ dgux*) ++ hardcode_libdir_flag_spec='-L$libdir' ++ ;; ++ freebsd1*) ++ ld_shlibs=no ++ ;; ++ freebsd2.2*) ++ hardcode_libdir_flag_spec='-R$libdir' ++ hardcode_direct=yes ++ ;; ++ freebsd2*) ++ hardcode_direct=yes ++ hardcode_minus_L=yes ++ ;; ++ freebsd*) ++ hardcode_libdir_flag_spec='-R$libdir' ++ hardcode_direct=yes ++ ;; ++ hpux9*) ++ hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' ++ hardcode_libdir_separator=: ++ hardcode_direct=yes ++ # hardcode_minus_L: Not really in the search PATH, ++ # but as the default location of the library. ++ hardcode_minus_L=yes ++ ;; ++ hpux10* | hpux11*) ++ if test "$with_gnu_ld" = no; then ++ case "$host_cpu" in ++ hppa*64*) ++ hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' ++ hardcode_libdir_separator=: ++ hardcode_direct=no ++ ;; ++ ia64*) ++ hardcode_libdir_flag_spec='-L$libdir' ++ hardcode_direct=no ++ # hardcode_minus_L: Not really in the search PATH, ++ # but as the default location of the library. ++ hardcode_minus_L=yes ++ ;; ++ *) ++ hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' ++ hardcode_libdir_separator=: ++ hardcode_direct=yes ++ # hardcode_minus_L: Not really in the search PATH, ++ # but as the default location of the library. ++ hardcode_minus_L=yes ++ ;; ++ esac ++ fi ++ ;; ++ irix5* | irix6* | nonstopux*) ++ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' ++ hardcode_libdir_separator=: ++ ;; ++ netbsd*) ++ hardcode_libdir_flag_spec='-R$libdir' ++ hardcode_direct=yes ++ ;; ++ newsos6) ++ hardcode_direct=yes ++ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' ++ hardcode_libdir_separator=: ++ ;; ++ openbsd*) ++ hardcode_direct=yes ++ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then ++ hardcode_libdir_flag_spec='${wl}-rpath,$libdir' ++ else ++ case "$host_os" in ++ openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*) ++ hardcode_libdir_flag_spec='-R$libdir' ++ ;; ++ *) ++ hardcode_libdir_flag_spec='${wl}-rpath,$libdir' ++ ;; ++ esac ++ fi ++ ;; ++ os2*) ++ hardcode_libdir_flag_spec='-L$libdir' ++ hardcode_minus_L=yes ++ ;; ++ osf3*) ++ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' ++ hardcode_libdir_separator=: ++ ;; ++ osf4* | osf5*) ++ if test "$GCC" = yes; then ++ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' ++ else ++ # Both cc and cxx compiler support -rpath directly ++ hardcode_libdir_flag_spec='-rpath $libdir' ++ fi ++ hardcode_libdir_separator=: ++ ;; ++ sco3.2v5*) ++ ;; ++ solaris*) ++ hardcode_libdir_flag_spec='-R$libdir' ++ ;; ++ sunos4*) ++ hardcode_libdir_flag_spec='-L$libdir' ++ hardcode_direct=yes ++ hardcode_minus_L=yes ++ ;; ++ sysv4) ++ case $host_vendor in ++ sni) ++ hardcode_direct=yes # is this really true??? ++ ;; ++ siemens) ++ hardcode_direct=no ++ ;; ++ motorola) ++ hardcode_direct=no #Motorola manual says yes, but my tests say they lie ++ ;; ++ esac ++ ;; ++ sysv4.3*) ++ ;; ++ sysv4*MP*) ++ if test -d /usr/nec; then ++ ld_shlibs=yes ++ fi ++ ;; ++ sysv4.2uw2*) ++ hardcode_direct=yes ++ hardcode_minus_L=no ++ ;; ++ sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[78]* | unixware7*) ++ ;; ++ sysv5*) ++ hardcode_libdir_flag_spec= ++ ;; ++ uts4*) ++ hardcode_libdir_flag_spec='-L$libdir' ++ ;; ++ *) ++ ld_shlibs=no ++ ;; ++ esac ++fi ++ ++# Check dynamic linker characteristics ++# Code taken from libtool.m4's AC_LIBTOOL_SYS_DYNAMIC_LINKER. ++libname_spec='lib$name' ++case "$host_os" in ++ aix3*) ++ ;; ++ aix4* | aix5*) ++ ;; ++ amigaos*) ++ ;; ++ beos*) ++ ;; ++ bsdi4*) ++ ;; ++ cygwin* | mingw* | pw32*) ++ shrext=.dll ++ ;; ++ darwin* | rhapsody*) ++ shrext=.dylib ++ ;; ++ dgux*) ++ ;; ++ freebsd1*) ++ ;; ++ freebsd*) ++ ;; ++ gnu*) ++ ;; ++ hpux9* | hpux10* | hpux11*) ++ case "$host_cpu" in ++ ia64*) ++ shrext=.so ++ ;; ++ hppa*64*) ++ shrext=.sl ++ ;; ++ *) ++ shrext=.sl ++ ;; ++ esac ++ ;; ++ irix5* | irix6* | nonstopux*) ++ case "$host_os" in ++ irix5* | nonstopux*) ++ libsuff= shlibsuff= ++ ;; ++ *) ++ case $LD in ++ *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") libsuff= shlibsuff= ;; ++ *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") libsuff=32 shlibsuff=N32 ;; ++ *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") libsuff=64 shlibsuff=64 ;; ++ *) libsuff= shlibsuff= ;; ++ esac ++ ;; ++ esac ++ ;; ++ linux*oldld* | linux*aout* | linux*coff*) ++ ;; ++ linux*) ++ ;; ++ netbsd*) ++ ;; ++ newsos6) ++ ;; ++ nto-qnx) ++ ;; ++ openbsd*) ++ ;; ++ os2*) ++ libname_spec='$name' ++ shrext=.dll ++ ;; ++ osf3* | osf4* | osf5*) ++ ;; ++ sco3.2v5*) ++ ;; ++ solaris*) ++ ;; ++ sunos4*) ++ ;; ++ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) ++ ;; ++ sysv4*MP*) ++ ;; ++ uts4*) ++ ;; ++esac ++ ++sed_quote_subst='s/\(["`$\\]\)/\\\1/g' ++escaped_wl=`echo "X$wl" | sed -e 's/^X//' -e "$sed_quote_subst"` ++shlibext=`echo "$shrext" | sed -e 's,^\.,,'` ++escaped_hardcode_libdir_flag_spec=`echo "X$hardcode_libdir_flag_spec" | sed -e 's/^X//' -e "$sed_quote_subst"` ++ ++sed -e 's/^\([a-zA-Z0-9_]*\)=/acl_cv_\1=/' < po/Makefile; ++[ + chmod +x debian/rules; + test -z "$CONFIG_HEADERS" || echo timestamp > stamp-h]) +--- lrzsz-0.12.20.safe/intl/bindtextdom.c 1998-04-26 09:22:36.000000000 -0400 ++++ lrzsz-0.12.20/intl/bindtextdom.c 2004-09-12 14:40:34.343749912 -0400 +@@ -1,59 +1,75 @@ + /* Implementation of the bindtextdomain(3) function +- Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. ++ Copyright (C) 1995-1998, 2000-2003 Free Software Foundation, Inc. + +- This program is free software; you can redistribute it and/or modify +- it under the terms of the GNU General Public License as published by +- the Free Software Foundation; either version 2, or (at your option) ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +- GNU General Public License for more details. ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. + +- You should have received a copy of the GNU General Public License +- along with this program; if not, write to the Free Software Foundation, +- Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ + + #ifdef HAVE_CONFIG_H + # include + #endif + +-#if defined STDC_HEADERS || defined _LIBC +-# include +-#else +-# ifdef HAVE_MALLOC_H +-# include +-# else +-void free (); +-# endif +-#endif ++#include ++#include ++#include + +-#if defined HAVE_STRING_H || defined _LIBC +-# include ++#ifdef _LIBC ++# include + #else +-# include +-# ifndef memcpy +-# define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num) +-# endif ++# include "libgnuintl.h" + #endif ++#include "gettextP.h" + + #ifdef _LIBC +-# include ++/* We have to handle multi-threaded applications. */ ++# include + #else +-# include "libgettext.h" ++/* Provide dummy implementation if this is outside glibc. */ ++# define __libc_rwlock_define(CLASS, NAME) ++# define __libc_rwlock_wrlock(NAME) ++# define __libc_rwlock_unlock(NAME) ++#endif ++ ++/* The internal variables in the standalone libintl.a must have different ++ names than the internal variables in GNU libc, otherwise programs ++ using libintl.a cannot be linked statically. */ ++#if !defined _LIBC ++# define _nl_default_dirname libintl_nl_default_dirname ++# define _nl_domain_bindings libintl_nl_domain_bindings ++#endif ++ ++/* Some compilers, like SunOS4 cc, don't have offsetof in . */ ++#ifndef offsetof ++# define offsetof(type,ident) ((size_t)&(((type*)0)->ident)) + #endif +-#include "gettext.h" +-#include "gettextP.h" + + /* @@ end of prolog @@ */ + + /* Contains the default location of the message catalogs. */ + extern const char _nl_default_dirname[]; ++#ifdef _LIBC ++extern const char _nl_default_dirname_internal[] attribute_hidden; ++#else ++# define INTUSE(name) name ++#endif + + /* List with bindings of specific domains. */ + extern struct binding *_nl_domain_bindings; + ++/* Lock variable to protect the global data in the gettext implementation. */ ++__libc_rwlock_define (extern, _nl_state_lock attribute_hidden) ++ + + /* Names for the libintl functions are a problem. They must not clash + with existing names and they should follow ANSI C. But this source +@@ -61,23 +77,41 @@ + prefix. So we have to make a difference here. */ + #ifdef _LIBC + # define BINDTEXTDOMAIN __bindtextdomain +-# define strdup(str) __strdup (str) ++# define BIND_TEXTDOMAIN_CODESET __bind_textdomain_codeset ++# ifndef strdup ++# define strdup(str) __strdup (str) ++# endif + #else +-# define BINDTEXTDOMAIN bindtextdomain__ ++# define BINDTEXTDOMAIN libintl_bindtextdomain ++# define BIND_TEXTDOMAIN_CODESET libintl_bind_textdomain_codeset + #endif + +-/* Specify that the DOMAINNAME message catalog will be found +- in DIRNAME rather than in the system locale data base. */ +-char * +-BINDTEXTDOMAIN (domainname, dirname) +- const char *domainname; +- const char *dirname; ++/* Specifies the directory name *DIRNAMEP and the output codeset *CODESETP ++ to be used for the DOMAINNAME message catalog. ++ If *DIRNAMEP or *CODESETP is NULL, the corresponding attribute is not ++ modified, only the current value is returned. ++ If DIRNAMEP or CODESETP is NULL, the corresponding attribute is neither ++ modified nor returned. */ ++static void ++set_binding_values (const char *domainname, ++ const char **dirnamep, const char **codesetp) + { + struct binding *binding; ++ int modified; + + /* Some sanity checks. */ + if (domainname == NULL || domainname[0] == '\0') +- return NULL; ++ { ++ if (dirnamep) ++ *dirnamep = NULL; ++ if (codesetp) ++ *codesetp = NULL; ++ return; ++ } ++ ++ __libc_rwlock_wrlock (_nl_state_lock); ++ ++ modified = 0; + + for (binding = _nl_domain_bindings; binding != NULL; binding = binding->next) + { +@@ -93,81 +127,173 @@ + } + } + +- if (dirname == NULL) +- /* The current binding has be to returned. */ +- return binding == NULL ? (char *) _nl_default_dirname : binding->dirname; +- + if (binding != NULL) + { +- /* The domain is already bound. If the new value and the old +- one are equal we simply do nothing. Otherwise replace the +- old binding. */ +- if (strcmp (dirname, binding->dirname) != 0) ++ if (dirnamep) + { +- char *new_dirname; ++ const char *dirname = *dirnamep; + +- if (strcmp (dirname, _nl_default_dirname) == 0) +- new_dirname = (char *) _nl_default_dirname; ++ if (dirname == NULL) ++ /* The current binding has be to returned. */ ++ *dirnamep = binding->dirname; + else + { ++ /* The domain is already bound. If the new value and the old ++ one are equal we simply do nothing. Otherwise replace the ++ old binding. */ ++ char *result = binding->dirname; ++ if (strcmp (dirname, result) != 0) ++ { ++ if (strcmp (dirname, INTUSE(_nl_default_dirname)) == 0) ++ result = (char *) INTUSE(_nl_default_dirname); ++ else ++ { + #if defined _LIBC || defined HAVE_STRDUP +- new_dirname = strdup (dirname); +- if (new_dirname == NULL) +- return NULL; ++ result = strdup (dirname); + #else +- size_t len = strlen (dirname) + 1; +- new_dirname = (char *) malloc (len); +- if (new_dirname == NULL) +- return NULL; +- +- memcpy (new_dirname, dirname, len); ++ size_t len = strlen (dirname) + 1; ++ result = (char *) malloc (len); ++ if (__builtin_expect (result != NULL, 1)) ++ memcpy (result, dirname, len); + #endif ++ } ++ ++ if (__builtin_expect (result != NULL, 1)) ++ { ++ if (binding->dirname != INTUSE(_nl_default_dirname)) ++ free (binding->dirname); ++ ++ binding->dirname = result; ++ modified = 1; ++ } ++ } ++ *dirnamep = result; + } ++ } + +- if (binding->dirname != _nl_default_dirname) +- free (binding->dirname); ++ if (codesetp) ++ { ++ const char *codeset = *codesetp; + +- binding->dirname = new_dirname; ++ if (codeset == NULL) ++ /* The current binding has be to returned. */ ++ *codesetp = binding->codeset; ++ else ++ { ++ /* The domain is already bound. If the new value and the old ++ one are equal we simply do nothing. Otherwise replace the ++ old binding. */ ++ char *result = binding->codeset; ++ if (result == NULL || strcmp (codeset, result) != 0) ++ { ++#if defined _LIBC || defined HAVE_STRDUP ++ result = strdup (codeset); ++#else ++ size_t len = strlen (codeset) + 1; ++ result = (char *) malloc (len); ++ if (__builtin_expect (result != NULL, 1)) ++ memcpy (result, codeset, len); ++#endif ++ ++ if (__builtin_expect (result != NULL, 1)) ++ { ++ if (binding->codeset != NULL) ++ free (binding->codeset); ++ ++ binding->codeset = result; ++ binding->codeset_cntr++; ++ modified = 1; ++ } ++ } ++ *codesetp = result; ++ } + } + } ++ else if ((dirnamep == NULL || *dirnamep == NULL) ++ && (codesetp == NULL || *codesetp == NULL)) ++ { ++ /* Simply return the default values. */ ++ if (dirnamep) ++ *dirnamep = INTUSE(_nl_default_dirname); ++ if (codesetp) ++ *codesetp = NULL; ++ } + else + { + /* We have to create a new binding. */ +- size_t len; ++ size_t len = strlen (domainname) + 1; + struct binding *new_binding = +- (struct binding *) malloc (sizeof (*new_binding)); ++ (struct binding *) malloc (offsetof (struct binding, domainname) + len); + +- if (new_binding == NULL) +- return NULL; ++ if (__builtin_expect (new_binding == NULL, 0)) ++ goto failed; + ++ memcpy (new_binding->domainname, domainname, len); ++ ++ if (dirnamep) ++ { ++ const char *dirname = *dirnamep; ++ ++ if (dirname == NULL) ++ /* The default value. */ ++ dirname = INTUSE(_nl_default_dirname); ++ else ++ { ++ if (strcmp (dirname, INTUSE(_nl_default_dirname)) == 0) ++ dirname = INTUSE(_nl_default_dirname); ++ else ++ { ++ char *result; + #if defined _LIBC || defined HAVE_STRDUP +- new_binding->domainname = strdup (domainname); +- if (new_binding->domainname == NULL) +- return NULL; ++ result = strdup (dirname); ++ if (__builtin_expect (result == NULL, 0)) ++ goto failed_dirname; + #else +- len = strlen (domainname) + 1; +- new_binding->domainname = (char *) malloc (len); +- if (new_binding->domainname == NULL) +- return NULL; +- memcpy (new_binding->domainname, domainname, len); ++ size_t len = strlen (dirname) + 1; ++ result = (char *) malloc (len); ++ if (__builtin_expect (result == NULL, 0)) ++ goto failed_dirname; ++ memcpy (result, dirname, len); + #endif +- +- if (strcmp (dirname, _nl_default_dirname) == 0) +- new_binding->dirname = (char *) _nl_default_dirname; ++ dirname = result; ++ } ++ } ++ *dirnamep = dirname; ++ new_binding->dirname = (char *) dirname; ++ } + else ++ /* The default value. */ ++ new_binding->dirname = (char *) INTUSE(_nl_default_dirname); ++ ++ new_binding->codeset_cntr = 0; ++ ++ if (codesetp) + { ++ const char *codeset = *codesetp; ++ ++ if (codeset != NULL) ++ { ++ char *result; ++ + #if defined _LIBC || defined HAVE_STRDUP +- new_binding->dirname = strdup (dirname); +- if (new_binding->dirname == NULL) +- return NULL; ++ result = strdup (codeset); ++ if (__builtin_expect (result == NULL, 0)) ++ goto failed_codeset; + #else +- len = strlen (dirname) + 1; +- new_binding->dirname = (char *) malloc (len); +- if (new_binding->dirname == NULL) +- return NULL; +- memcpy (new_binding->dirname, dirname, len); ++ size_t len = strlen (codeset) + 1; ++ result = (char *) malloc (len); ++ if (__builtin_expect (result == NULL, 0)) ++ goto failed_codeset; ++ memcpy (result, codeset, len); + #endif ++ codeset = result; ++ new_binding->codeset_cntr++; ++ } ++ *codesetp = codeset; ++ new_binding->codeset = (char *) codeset; + } ++ else ++ new_binding->codeset = NULL; + + /* Now enqueue it. */ + if (_nl_domain_bindings == NULL +@@ -187,13 +313,51 @@ + binding->next = new_binding; + } + +- binding = new_binding; ++ modified = 1; ++ ++ /* Here we deal with memory allocation failures. */ ++ if (0) ++ { ++ failed_codeset: ++ if (new_binding->dirname != INTUSE(_nl_default_dirname)) ++ free (new_binding->dirname); ++ failed_dirname: ++ free (new_binding); ++ failed: ++ if (dirnamep) ++ *dirnamep = NULL; ++ if (codesetp) ++ *codesetp = NULL; ++ } + } + +- return binding->dirname; ++ /* If we modified any binding, we flush the caches. */ ++ if (modified) ++ ++_nl_msg_cat_cntr; ++ ++ __libc_rwlock_unlock (_nl_state_lock); ++} ++ ++/* Specify that the DOMAINNAME message catalog will be found ++ in DIRNAME rather than in the system locale data base. */ ++char * ++BINDTEXTDOMAIN (const char *domainname, const char *dirname) ++{ ++ set_binding_values (domainname, &dirname, NULL); ++ return (char *) dirname; ++} ++ ++/* Specify the character encoding in which the messages from the ++ DOMAINNAME message catalog will be returned. */ ++char * ++BIND_TEXTDOMAIN_CODESET (const char *domainname, const char *codeset) ++{ ++ set_binding_values (domainname, NULL, &codeset); ++ return (char *) codeset; + } + + #ifdef _LIBC +-/* Alias for function name in GNU C Library. */ ++/* Aliases for function names in GNU C Library. */ + weak_alias (__bindtextdomain, bindtextdomain); ++weak_alias (__bind_textdomain_codeset, bind_textdomain_codeset); + #endif +--- lrzsz-0.12.20.safe/intl/cat-compat.c 1998-04-26 09:22:37.000000000 -0400 ++++ lrzsz-0.12.20/intl/cat-compat.c 1969-12-31 19:00:00.000000000 -0500 +@@ -1,262 +0,0 @@ +-/* Compatibility code for gettext-using-catgets interface. +- Copyright (C) 1995, 1997 Free Software Foundation, Inc. +- +- This program is free software; you can redistribute it and/or modify +- it under the terms of the GNU General Public License as published by +- the Free Software Foundation; either version 2, or (at your option) +- any later version. +- +- This program is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +- GNU General Public License for more details. +- +- You should have received a copy of the GNU General Public License +- along with this program; if not, write to the Free Software Foundation, +- Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ +- +-#ifdef HAVE_CONFIG_H +-# include +-#endif +- +-#include +- +-#ifdef STDC_HEADERS +-# include +-# include +-#else +-char *getenv (); +-# ifdef HAVE_MALLOC_H +-# include +-# endif +-#endif +- +-#ifdef HAVE_NL_TYPES_H +-# include +-#endif +- +-#include "libgettext.h" +- +-/* @@ end of prolog @@ */ +- +-/* XPG3 defines the result of `setlocale (category, NULL)' as: +- ``Directs `setlocale()' to query `category' and return the current +- setting of `local'.'' +- However it does not specify the exact format. And even worse: POSIX +- defines this not at all. So we can use this feature only on selected +- system (e.g. those using GNU C Library). */ +-#ifdef _LIBC +-# define HAVE_LOCALE_NULL +-#endif +- +-/* The catalog descriptor. */ +-static nl_catd catalog = (nl_catd) -1; +- +-/* Name of the default catalog. */ +-static const char default_catalog_name[] = "messages"; +- +-/* Name of currently used catalog. */ +-static const char *catalog_name = default_catalog_name; +- +-/* Get ID for given string. If not found return -1. */ +-static int msg_to_cat_id PARAMS ((const char *msg)); +- +-/* Substitution for systems lacking this function in their C library. */ +-#if !_LIBC && !HAVE_STPCPY +-static char *stpcpy PARAMS ((char *dest, const char *src)); +-#endif +- +- +-/* Set currently used domain/catalog. */ +-char * +-textdomain (domainname) +- const char *domainname; +-{ +- nl_catd new_catalog; +- char *new_name; +- size_t new_name_len; +- char *lang; +- +-#if defined HAVE_SETLOCALE && defined HAVE_LC_MESSAGES \ +- && defined HAVE_LOCALE_NULL +- lang = setlocale (LC_MESSAGES, NULL); +-#else +- lang = getenv ("LC_ALL"); +- if (lang == NULL || lang[0] == '\0') +- { +- lang = getenv ("LC_MESSAGES"); +- if (lang == NULL || lang[0] == '\0') +- lang = getenv ("LANG"); +- } +-#endif +- if (lang == NULL || lang[0] == '\0') +- lang = "C"; +- +- /* See whether name of currently used domain is asked. */ +- if (domainname == NULL) +- return (char *) catalog_name; +- +- if (domainname[0] == '\0') +- domainname = default_catalog_name; +- +- /* Compute length of added path element. */ +- new_name_len = sizeof (LOCALEDIR) - 1 + 1 + strlen (lang) +- + sizeof ("/LC_MESSAGES/") - 1 + sizeof (PACKAGE) - 1 +- + sizeof (".cat"); +- +- new_name = (char *) malloc (new_name_len); +- if (new_name == NULL) +- return NULL; +- +- strcpy (new_name, PACKAGE); +- new_catalog = catopen (new_name, 0); +- +- if (new_catalog == (nl_catd) -1) +- { +- /* NLSPATH search didn't work, try absolute path */ +- sprintf (new_name, "%s/%s/LC_MESSAGES/%s.cat", LOCALEDIR, lang, +- PACKAGE); +- new_catalog = catopen (new_name, 0); +- +- if (new_catalog == (nl_catd) -1) +- { +- free (new_name); +- return (char *) catalog_name; +- } +- } +- +- /* Close old catalog. */ +- if (catalog != (nl_catd) -1) +- catclose (catalog); +- if (catalog_name != default_catalog_name) +- free ((char *) catalog_name); +- +- catalog = new_catalog; +- catalog_name = new_name; +- +- return (char *) catalog_name; +-} +- +-char * +-bindtextdomain (domainname, dirname) +- const char *domainname; +- const char *dirname; +-{ +-#if HAVE_SETENV || HAVE_PUTENV +- char *old_val, *new_val, *cp; +- size_t new_val_len; +- +- /* This does not make much sense here but to be compatible do it. */ +- if (domainname == NULL) +- return NULL; +- +- /* Compute length of added path element. If we use setenv we don't need +- the first byts for NLSPATH=, but why complicate the code for this +- peanuts. */ +- new_val_len = sizeof ("NLSPATH=") - 1 + strlen (dirname) +- + sizeof ("/%L/LC_MESSAGES/%N.cat"); +- +- old_val = getenv ("NLSPATH"); +- if (old_val == NULL || old_val[0] == '\0') +- { +- old_val = NULL; +- new_val_len += 1 + sizeof (LOCALEDIR) - 1 +- + sizeof ("/%L/LC_MESSAGES/%N.cat"); +- } +- else +- new_val_len += strlen (old_val); +- +- new_val = (char *) malloc (new_val_len); +- if (new_val == NULL) +- return NULL; +- +-# if HAVE_SETENV +- cp = new_val; +-# else +- cp = stpcpy (new_val, "NLSPATH="); +-# endif +- +- cp = stpcpy (cp, dirname); +- cp = stpcpy (cp, "/%L/LC_MESSAGES/%N.cat:"); +- +- if (old_val == NULL) +- { +-# if __STDC__ +- stpcpy (cp, LOCALEDIR "/%L/LC_MESSAGES/%N.cat"); +-# else +- +- cp = stpcpy (cp, LOCALEDIR); +- stpcpy (cp, "/%L/LC_MESSAGES/%N.cat"); +-# endif +- } +- else +- stpcpy (cp, old_val); +- +-# if HAVE_SETENV +- setenv ("NLSPATH", new_val, 1); +- free (new_val); +-# else +- putenv (new_val); +- /* Do *not* free the environment entry we just entered. It is used +- from now on. */ +-# endif +- +-#endif +- +- return (char *) domainname; +-} +- +-#undef gettext +-char * +-gettext (msg) +- const char *msg; +-{ +- int msgid; +- +- if (msg == NULL || catalog == (nl_catd) -1) +- return (char *) msg; +- +- /* Get the message from the catalog. We always use set number 1. +- The message ID is computed by the function `msg_to_cat_id' +- which works on the table generated by `po-to-tbl'. */ +- msgid = msg_to_cat_id (msg); +- if (msgid == -1) +- return (char *) msg; +- +- return catgets (catalog, 1, msgid, (char *) msg); +-} +- +-/* Look through the table `_msg_tbl' which has `_msg_tbl_length' entries +- for the one equal to msg. If it is found return the ID. In case when +- the string is not found return -1. */ +-static int +-msg_to_cat_id (msg) +- const char *msg; +-{ +- int cnt; +- +- for (cnt = 0; cnt < _msg_tbl_length; ++cnt) +- if (strcmp (msg, _msg_tbl[cnt]._msg) == 0) +- return _msg_tbl[cnt]._msg_number; +- +- return -1; +-} +- +- +-/* @@ begin of epilog @@ */ +- +-/* We don't want libintl.a to depend on any other library. So we +- avoid the non-standard function stpcpy. In GNU C Library this +- function is available, though. Also allow the symbol HAVE_STPCPY +- to be defined. */ +-#if !_LIBC && !HAVE_STPCPY +-static char * +-stpcpy (dest, src) +- char *dest; +- const char *src; +-{ +- while ((*dest++ = *src++) != '\0') +- /* Do nothing. */ ; +- return dest - 1; +-} +-#endif +--- lrzsz-0.12.20.safe/intl/ChangeLog 1998-04-26 09:22:35.000000000 -0400 ++++ lrzsz-0.12.20/intl/ChangeLog 2004-09-12 14:40:34.349749000 -0400 +@@ -1,1022 +1,4 @@ +-1997-09-06 02:10 Ulrich Drepper +- +- * intlh.inst.in: Reformat copyright. +- +-1997-08-19 15:22 Ulrich Drepper +- +- * dcgettext.c (DCGETTEXT): Remove wrong comment. +- +-1997-08-16 00:13 Ulrich Drepper +- +- * Makefile.in (install-data): Don't change directory to install. +- +-1997-08-01 14:30 Ulrich Drepper +- +- * cat-compat.c: Fix copyright. +- +- * localealias.c: Don't define strchr unless !HAVE_STRCHR. +- +- * loadmsgcat.c: Update copyright. Fix typos. +- +- * l10nflist.c: Don't define strchr unless !HAVE_STRCHR. +- (_nl_make_l10nflist): Handle sponsor and revision correctly. +- +- * gettext.c: Update copyright. +- * gettext.h: Likewise. +- * hash-string.h: Likewise. +- +- * finddomain.c: Remoave dead code. Define strchr only if +- !HAVE_STRCHR. +- +- * explodename.c: Include . +- +- * explodename.c: Reformat copyright text. +- (_nl_explode_name): Fix typo. +- +- * dcgettext.c: Define and use __set_errno. +- (guess_category_value): Don't use setlocale if HAVE_LC_MESSAGES is +- not defined. +- +- * bindtextdom.c: Pretty printing. +- +-1997-05-01 02:25 Ulrich Drepper +- +- * dcgettext.c (guess_category_value): Don't depend on +- HAVE_LC_MESSAGES. We don't need the macro here. +- Patch by Bruno Haible . +- +- * cat-compat.c (textdomain): DoN't refer to HAVE_SETLOCALE_NULL +- macro. Instead use HAVE_LOCALE_NULL and define it when using +- glibc, as in dcgettext.c. +- Patch by Bruno Haible . +- +- * Makefile.in (CPPFLAGS): New variable. Reported by Franc,ois +- Pinard. +- +-Mon Mar 10 06:51:17 1997 Ulrich Drepper +- +- * Makefile.in: Implement handling of libtool. +- +- * gettextP.h: Change data structures for use of generic lowlevel +- i18n file handling. +- +-Wed Dec 4 20:21:18 1996 Ulrich Drepper +- +- * textdomain.c: Put parentheses around arguments of memcpy macro +- definition. +- * localealias.c: Likewise. +- * l10nflist.c: Likewise. +- * finddomain.c: Likewise. +- * bindtextdom.c: Likewise. +- Reported by Thomas Esken. +- +-Mon Nov 25 22:57:51 1996 Ulrich Drepper +- +- * textdomain.c: Move definition of `memcpy` macro to right +- position. +- +-Fri Nov 22 04:01:58 1996 Ulrich Drepper +- +- * finddomain.c [!HAVE_STRING_H && !_LIBC]: Define memcpy using +- bcopy if not already defined. Reported by Thomas Esken. +- * bindtextdom.c: Likewise. +- * l10nflist.c: Likewise. +- * localealias.c: Likewise. +- * textdomain.c: Likewise. +- +-Tue Oct 29 11:10:27 1996 Ulrich Drepper +- +- * Makefile.in (libdir): Change to use exec_prefix instead of +- prefix. Reported by Knut-HåvardAksnes . +- +-Sat Aug 31 03:07:09 1996 Ulrich Drepper +- +- * l10nflist.c (_nl_normalize_codeset): We convert to lower case, +- so don't prepend uppercase `ISO' for only numeric arg. +- +-Fri Jul 19 00:15:46 1996 Ulrich Drepper +- +- * l10nflist.c: Move inclusion of argz.h, ctype.h, stdlib.h after +- definition of _GNU_SOURCE. Patch by Roland McGrath. +- +- * Makefile.in (uninstall): Fix another bug with `for' loop and +- empty arguments. Patch by Jim Meyering. Correct name os +- uninstalled files: no intl- prefix anymore. +- +- * Makefile.in (install-data): Again work around shells which +- cannot handle mpty for list. Reported by Jim Meyering. +- +-Sat Jul 13 18:11:35 1996 Ulrich Drepper +- +- * Makefile.in (install): Split goal. Now depend on install-exec +- and install-data. +- (install-exec, install-data): New goals. Created from former +- install goal. +- Reported by Karl Berry. +- +-Sat Jun 22 04:58:14 1996 Ulrich Drepper +- +- * Makefile.in (MKINSTALLDIRS): New variable. Path to +- mkinstalldirs script. +- (install): use MKINSTALLDIRS variable or if the script is not present +- try to find it in the $top_scrdir). +- +-Wed Jun 19 02:56:56 1996 Ulrich Drepper +- +- * l10nflist.c: Linux libc *partly* includes the argz_* functions. +- Grr. Work around by renaming the static version and use macros +- for renaming. +- +-Tue Jun 18 20:11:17 1996 Ulrich Drepper +- +- * l10nflist.c: Correct presence test macros of __argz_* functions. +- +- * l10nflist.c: Include based on test of it instead when +- __argz_* functions are available. +- Reported by Andreas Schwab. +- +-Thu Jun 13 15:17:44 1996 Ulrich Drepper +- +- * explodename.c, l10nflist.c: Define NULL for dumb systems. +- +-Tue Jun 11 17:05:13 1996 Ulrich Drepper +- +- * intlh.inst.in, libgettext.h (dcgettext): Rename local variable +- result to __result to prevent name clash. +- +- * l10nflist.c, localealias.c, dcgettext.c: Define _GNU_SOURCE to +- get prototype for stpcpy and strcasecmp. +- +- * intlh.inst.in, libgettext.h: Move declaration of +- `_nl_msg_cat_cntr' outside __extension__ block to prevent warning +- from gcc's -Wnested-extern option. +- +-Fri Jun 7 01:58:00 1996 Ulrich Drepper +- +- * Makefile.in (install): Remove comment. +- +-Thu Jun 6 17:28:17 1996 Ulrich Drepper +- +- * Makefile.in (install): Work around for another Buglix stupidity. +- Always use an `else' close for `if's. Reported by Nelson Beebe. +- +- * Makefile.in (intlh.inst): Correct typo in phony rule. +- Reported by Nelson Beebe. +- +-Thu Jun 6 01:49:52 1996 Ulrich Drepper +- +- * dcgettext.c (read_alias_file): Rename variable alloca_list to +- block_list as the macro calls assume. +- Patch by Eric Backus. +- +- * localealias.c [!HAVE_ALLOCA]: Define alloca as macro using +- malloc. +- (read_alias_file): Rename varriabe alloca_list to block_list as the +- macro calls assume. +- Patch by Eric Backus. +- +- * l10nflist.c: Correct conditional for inclusion. +- Reported by Roland McGrath. +- +- * Makefile.in (all): Depend on all-@USE_INCLUDED_LIBINTL@, not +- all-@USE_NLS@. +- +- * Makefile.in (install): intlh.inst comes from local dir, not +- $(srcdir). +- +- * Makefile.in (intlh.inst): Special handling of this goal. If +- used in gettext, this is really a rul to construct this file. If +- used in any other package it is defined as a .PHONY rule with +- empty body. +- +- * finddomain.c: Extract locale file information handling into +- l10nfile.c. Rename local stpcpy__ function to stpcpy. +- +- * dcgettext.c (stpcpy): Add local definition. +- +- * l10nflist.c: Solve some portability problems. Patches partly by +- Thomas Esken. Add local definition of stpcpy. +- +-Tue Jun 4 02:47:49 1996 Ulrich Drepper +- +- * intlh.inst.in: Don't depend including on +- HAVE_LOCALE_H. Instead configure must rewrite this fiile +- depending on the result of the configure run. +- +- * Makefile.in (install): libintl.inst is now called intlh.inst. +- Add rules for updating intlh.inst from intlh.inst.in. +- +- * libintl.inst: Renamed to intlh.inst.in. +- +- * localealias.c, dcgettext.c [__GNUC__]: Define HAVE_ALLOCA to 1 +- because gcc has __buitlin_alloca. +- Reported by Roland McGrath. +- +-Mon Jun 3 00:32:16 1996 Ulrich Drepper +- +- * Makefile.in (installcheck): New goal to fulfill needs of +- automake's distcheck. +- +- * Makefile.in (install): Reorder commands so that VERSION is +- found. +- +- * Makefile.in (gettextsrcdir): Now use subdirectory intl/ in +- @datadir@/gettext. +- (COMSRCS): Add l10nfile.c. +- (OBJECTS): Add l10nfile.o. +- (DISTFILES): Rename to DISTFILE.normal. Remove $(DISTFILES.common). +- (DISTFILE.gettext): Remove $(DISTFILES.common). +- (all-gettext): Remove goal. +- (install): If $(PACKAGE) = gettext install, otherwose do nothing. No +- package but gettext itself should install libintl.h + headers. +- (dist): Extend goal to work for gettext, too. +- (dist-gettext): Remove goal. +- +- * dcgettext.c [!HAVE_ALLOCA]: Define macro alloca by using malloc. +- +-Sun Jun 2 17:33:06 1996 Ulrich Drepper +- +- * loadmsgcat.c (_nl_load_domain): Parameter is now comes from +- find_l10nfile. +- +-Sat Jun 1 02:23:03 1996 Ulrich Drepper +- +- * l10nflist.c (__argz_next): Add definition. +- +- * dcgettext.c [!HAVE_ALLOCA]: Add code for handling missing alloca +- code. Use new l10nfile handling. +- +- * localealias.c [!HAVE_ALLOCA]: Add code for handling missing +- alloca code. +- +- * l10nflist.c: Initial revision. +- +-Tue Apr 2 18:51:18 1996 Ulrich Drepper +- +- * Makefile.in (all-gettext): New goal. Same as all-yes. +- +-Thu Mar 28 23:01:22 1996 Karl Eichwalder +- +- * Makefile.in (gettextsrcdir): Define using @datadir@. +- +-Tue Mar 26 12:39:14 1996 Ulrich Drepper +- +- * finddomain.c: Include . Reported by Roland McGrath. +- +-Sat Mar 23 02:00:35 1996 Ulrich Drepper +- +- * finddomain.c (stpcpy): Rename to stpcpy__ to prevent clashing +- with external declaration. +- +-Sat Mar 2 00:47:09 1996 Ulrich Drepper +- +- * Makefile.in (all-no): Rename from all_no. +- +-Sat Feb 17 00:25:59 1996 Ulrich Drepper +- +- * gettextP.h [loaded_domain]: Array `successor' must now contain up +- to 63 elements (because of codeset name normalization). +- +- * finddomain.c: Implement codeset name normalization. +- +-Thu Feb 15 04:39:09 1996 Ulrich Drepper +- +- * Makefile.in (all): Define to `all-@USE_NLS@'. +- (all-yes, all_no): New goals. `all-no' is noop, `all-yes' +- is former all. +- +-Mon Jan 15 21:46:01 1996 Howard Gayle +- +- * localealias.c (alias_compare): Increment string pointers in loop +- of strcasecmp replacement. +- +-Fri Dec 29 21:16:34 1995 Ulrich Drepper +- +- * Makefile.in (install-src): Who commented this goal out ? :-) +- +-Fri Dec 29 15:08:16 1995 Ulrich Drepper +- +- * dcgettext.c (DCGETTEXT): Save `errno'. Failing system calls +- should not effect it because a missing catalog is no error. +- Reported by Harald Knig . +- +-Tue Dec 19 22:09:13 1995 Ulrich Drepper +- +- * Makefile.in (Makefile): Explicitly use $(SHELL) for running +- shell scripts. +- +-Fri Dec 15 17:34:59 1995 Andreas Schwab +- +- * Makefile.in (install-src): Only install library and header when +- we use the own implementation. Don't do it when using the +- system's gettext or catgets functions. +- +- * dcgettext.c (find_msg): Must not swap domain->hash_size here. +- +-Sat Dec 9 16:24:37 1995 Ulrich Drepper +- +- * localealias.c, libintl.inst, libgettext.h, hash-string.h, +- gettextP.h, finddomain.c, dcgettext.c, cat-compat.c: +- Use PARAMS instead of __P. Suggested by Roland McGrath. +- +-Tue Dec 5 11:39:14 1995 Larry Schwimmer +- +- * libgettext.h: Use `#if !defined (_LIBINTL_H)' instead of `#if +- !_LIBINTL_H' because Solaris defines _LIBINTL_H as empty. +- +-Mon Dec 4 15:42:07 1995 Ulrich Drepper +- +- * Makefile.in (install-src): +- Install libintl.inst instead of libintl.h.install. +- +-Sat Dec 2 22:51:38 1995 Marcus Daniels +- +- * cat-compat.c (textdomain): +- Reverse order in which files are tried you load. First +- try local file, when this failed absolute path. +- +-Wed Nov 29 02:03:53 1995 Nelson H. F. Beebe +- +- * cat-compat.c (bindtextdomain): Add missing { }. +- +-Sun Nov 26 18:21:41 1995 Ulrich Drepper +- +- * libintl.inst: Add missing __P definition. Reported by Nelson Beebe. +- +- * Makefile.in: +- Add dummy `all' and `dvi' goals. Reported by Tom Tromey. +- +-Sat Nov 25 16:12:01 1995 Franc,ois Pinard +- +- * hash-string.h: Capitalize arguments of macros. +- +-Sat Nov 25 12:01:36 1995 Ulrich Drepper +- +- * Makefile.in (DISTFILES): Prevent files names longer than 13 +- characters. libintl.h.glibc->libintl.glibc, +- libintl.h.install->libintl.inst. Reported by Joshua R. Poulson. +- +-Sat Nov 25 11:31:12 1995 Eric Backus +- +- * dcgettext.c: Fix bug in preprocessor conditionals. +- +-Sat Nov 25 02:35:27 1995 Nelson H. F. Beebe +- +- * libgettext.h: Solaris cc does not understand +- #if !SYMBOL1 && !SYMBOL2. Sad but true. +- +-Thu Nov 23 16:22:14 1995 Ulrich Drepper +- +- * hash-string.h (hash_string): +- Fix for machine with >32 bit `unsigned long's. +- +- * dcgettext.c (DCGETTEXT): +- Fix horrible bug in loop for alternative translation. +- +-Thu Nov 23 01:45:29 1995 Ulrich Drepper +- +- * po2tbl.sed.in, linux-msg.sed, xopen-msg.sed: +- Some further simplifications in message number generation. +- +-Mon Nov 20 21:08:43 1995 Ulrich Drepper +- +- * libintl.h.glibc: Use __const instead of const in prototypes. +- +- * Makefile.in (install-src): +- Install libintl.h.install instead of libintl.h. This +- is a stripped-down version. Suggested by Peter Miller. +- +- * libintl.h.install, libintl.h.glibc: Initial revision. +- +- * localealias.c (_nl_expand_alias, read_alias_file): +- Protect prototypes in type casts by __P. +- +-Tue Nov 14 16:43:58 1995 Ulrich Drepper +- +- * hash-string.h: Correct prototype for hash_string. +- +-Sun Nov 12 12:42:30 1995 Ulrich Drepper +- +- * hash-string.h (hash_string): Add prototype. +- +- * gettextP.h: Fix copyright. +- (SWAP): Add prototype. +- +-Wed Nov 8 22:56:33 1995 Ulrich Drepper +- +- * localealias.c (read_alias_file): Forgot sizeof. +- Avoid calling *printf function. This introduces a big overhead. +- Patch by Roland McGrath. +- +-Tue Nov 7 14:21:08 1995 Ulrich Drepper +- +- * finddomain.c, cat-compat.c: Wrong indentation in #if for stpcpy. +- +- * finddomain.c (stpcpy): +- Define substitution function local. The macro was to flaky. +- +- * cat-compat.c: Fix typo. +- +- * xopen-msg.sed, linux-msg.sed: +- While bringing message number to right place only accept digits. +- +- * linux-msg.sed, xopen-msg.sed: Now that the counter does not have +- leading 0s we don't need to remove them. Reported by Marcus +- Daniels. +- +- * Makefile.in (../po/cat-id-tbl.o): Use $(top_srdir) in +- dependency. Reported by Marcus Daniels. +- +- * cat-compat.c: (stpcpy) [!_LIBC && !HAVE_STPCPY]: Define replacement. +- Generally cleanup using #if instead of #ifndef. +- +- * Makefile.in: Correct typos in comment. By Franc,ois Pinard. +- +-Mon Nov 6 00:27:02 1995 Ulrich Drepper +- +- * Makefile.in (install-src): Don't install libintl.h and libintl.a +- if we use an available gettext implementation. +- +-Sun Nov 5 22:02:08 1995 Ulrich Drepper +- +- * libgettext.h: Fix typo: HAVE_CATGETTS -> HAVE_CATGETS. Reported +- by Franc,ois Pinard. +- +- * libgettext.h: Use #if instead of #ifdef/#ifndef. +- +- * finddomain.c: +- Comments describing what has to be done should start with FIXME. +- +-Sun Nov 5 19:38:01 1995 Ulrich Drepper +- +- * Makefile.in (DISTFILES): Split. Use DISTFILES with normal meaning. +- DISTFILES.common names the files common to both dist goals. +- DISTFILES.gettext are the files only distributed in GNU gettext. +- +-Sun Nov 5 17:32:54 1995 Ulrich Drepper +- +- * dcgettext.c (DCGETTEXT): Correct searching in derived locales. +- This was necessary since a change in _nl_find_msg several weeks +- ago. I really don't know this is still not fixed. +- +-Sun Nov 5 12:43:12 1995 Ulrich Drepper +- +- * loadmsgcat.c (_nl_load_domain): Test for FILENAME == NULL. This +- might mark a special condition. +- +- * finddomain.c (make_entry_rec): Don't make illegal entry as decided. +- +- * Makefile.in (dist): Suppress error message when ln failed. +- Get files from $(srcdir) explicitly. +- +- * libgettext.h (gettext_const): Rename to gettext_noop. +- +-Fri Nov 3 07:36:50 1995 Ulrich Drepper +- +- * finddomain.c (make_entry_rec): +- Protect against wrong locale names by testing mask. +- +- * libgettext.h (gettext_const): Add macro definition. +- Capitalize macro arguments. +- +-Thu Nov 2 23:15:51 1995 Ulrich Drepper +- +- * finddomain.c (_nl_find_domain): +- Test for pointer != NULL before accessing value. +- Reported by Tom Tromey. +- +- * gettext.c (NULL): +- Define as (void*)0 instad of 0. Reported by Franc,ois Pinard. +- +-Mon Oct 30 21:28:52 1995 Ulrich Drepper +- +- * po2tbl.sed.in: Serious typo bug fixed by Jim Meyering. +- +-Sat Oct 28 23:20:47 1995 Ulrich Drepper +- +- * libgettext.h: Disable dcgettext optimization for Solaris 2.3. +- +- * localealias.c (alias_compare): +- Peter Miller reported that tolower in some systems is +- even dumber than I thought. Protect call by `isupper'. +- +-Fri Oct 27 22:22:51 1995 Ulrich Drepper +- +- * Makefile.in (libdir, includedir): New variables. +- (install-src): Install libintl.a and libintl.h in correct dirs. +- +-Fri Oct 27 22:07:29 1995 Ulrich Drepper +- +- * Makefile.in (SOURCES): Fix typo: intrl.compat.c -> intl-compat.c. +- +- * po2tbl.sed.in: Patch for buggy SEDs by Christian von Roques. +- +- * localealias.c: +- Fix typo and superflous test. Reported by Christian von Roques. +- +-Fri Oct 6 11:52:05 1995 Ulrich Drepper +- +- * finddomain.c (_nl_find_domain): +- Correct some remainder from the pre-CEN syntax. Now +- we don't have a constant number of successors anymore. +- +-Wed Sep 27 21:41:13 1995 Ulrich Drepper +- +- * Makefile.in (DISTFILES): Add libintl.h.glibc. +- +- * Makefile.in (dist-libc): Add goal for packing sources for glibc. +- (COMSRCS, COMHDRS): Splitted to separate sources shared with glibc. +- +- * loadmsgcat.c: Forget to continue #if line. +- +- * localealias.c: +- [_LIBC]: Rename strcasecmp to __strcasecmp to keep ANSI C name +- space clean. +- +- * dcgettext.c, finddomain.c: Better comment to last change. +- +- * loadmsgcat.c: +- [_LIBC]: Rename fstat, open, close, read, mmap, and munmap to +- __fstat, __open, __close, __read, __mmap, and __munmap resp +- to keep ANSI C name space clean. +- +- * finddomain.c: +- [_LIBC]: Rename stpcpy to __stpcpy to keep ANSI C name space clean. +- +- * dcgettext.c: +- [_LIBC]: Rename getced and stpcpy to __getcwd and __stpcpy resp to +- keep ANSI C name space clean. +- +- * libgettext.h: +- Include sys/types.h for those old SysV systems out there. +- Reported by Francesco Potorti`. +- +- * loadmsgcat.c (use_mmap): Define if compiled for glibc. +- +- * bindtextdom.c: Include all those standard headers +- unconditionally if _LIBC is defined. +- +- * finddomain.c: Fix 2 times defiend -> defined. +- +- * textdomain.c: Include libintl.h instead of libgettext.h when +- compiling for glibc. Include all those standard headers +- unconditionally if _LIBC is defined. +- +- * localealias.c, loadmsgcat.c: Prepare to be compiled in glibc. +- +- * gettext.c: +- Include libintl.h instead of libgettext.h when compiling for glibc. +- Get NULL from stddef.h if we compile for glibc. +- +- * finddomain.c: Include libintl.h instead of libgettext.h when +- compiling for glibc. Include all those standard headers +- unconditionally if _LIBC is defined. +- +- * dcgettext.c: Include all those standard headers unconditionally +- if _LIBC is defined. +- +- * dgettext.c: If compiled in glibc include libintl.h instead of +- libgettext.h. +- (locale.h): Don't rely on HAVE_LOCALE_H when compiling for glibc. +- +- * dcgettext.c: If compiled in glibc include libintl.h instead of +- libgettext.h. +- (getcwd): Don't rely on HAVE_GETCWD when compiling for glibc. +- +- * bindtextdom.c: +- If compiled in glibc include libintl.h instead of libgettext.h. +- +-Mon Sep 25 22:23:06 1995 Ulrich Drepper +- +- * localealias.c (_nl_expand_alias): Don't call bsearch if NMAP <= 0. +- Reported by Marcus Daniels. +- +- * cat-compat.c (bindtextdomain): +- String used in putenv must not be recycled. +- Reported by Marcus Daniels. +- +- * libgettext.h (__USE_GNU_GETTEXT): +- Additional symbol to signal that we use GNU gettext +- library. +- +- * cat-compat.c (bindtextdomain): +- Fix bug with the strange stpcpy replacement. +- Reported by Nelson Beebe. +- +-Sat Sep 23 08:23:51 1995 Ulrich Drepper +- +- * cat-compat.c: Include for stpcpy prototype. +- +- * localealias.c (read_alias_file): +- While expand strdup code temporary variable `cp' hided +- higher level variable with same name. Rename to `tp'. +- +- * textdomain.c (textdomain): +- Avoid warning by using temporary variable in strdup code. +- +- * finddomain.c (_nl_find_domain): Remove unused variable `application'. +- +-Thu Sep 21 15:51:44 1995 Ulrich Drepper +- +- * localealias.c (alias_compare): +- Use strcasecmp() only if available. Else use +- implementation in place. +- +- * intl-compat.c: +- Wrapper functions now call *__ functions instead of __*. +- +- * libgettext.h: Declare prototypes for *__ functions instead for __*. +- +- * cat-compat.c, loadmsgcat.c: +- Don't use xmalloc, xstrdup, and stpcpy. These functions are not part +- of the standard libc and so prevent libintl.a from being used +- standalone. +- +- * bindtextdom.c: +- Don't use xmalloc, xstrdup, and stpcpy. These functions are not part +- of the standard libc and so prevent libintl.a from being used +- standalone. +- Rename to bindtextdomain__ if not used in GNU C Library. +- +- * dgettext.c: +- Rename function to dgettext__ if not used in GNU C Library. +- +- * gettext.c: +- Don't use xmalloc, xstrdup, and stpcpy. These functions are not part +- of the standard libc and so prevent libintl.a from being used +- standalone. +- Functions now called gettext__ if not used in GNU C Library. +- +- * dcgettext.c, localealias.c, textdomain.c, finddomain.c: +- Don't use xmalloc, xstrdup, and stpcpy. These functions are not part +- of the standard libc and so prevent libintl.a from being used +- standalone. +- +-Sun Sep 17 23:14:49 1995 Ulrich Drepper +- +- * finddomain.c: Correct some bugs in handling of CEN standard +- locale definitions. +- +-Thu Sep 7 01:49:28 1995 Ulrich Drepper +- +- * finddomain.c: Implement CEN syntax. +- +- * gettextP.h (loaded_domain): Extend number of successors to 31. +- +-Sat Aug 19 19:25:29 1995 Ulrich Drepper +- +- * Makefile.in (aliaspath): Remove path to X11 locale dir. +- +- * Makefile.in: Make install-src depend on install. This helps +- gettext to install the sources and other packages can use the +- install goal. +- +-Sat Aug 19 15:19:33 1995 Ulrich Drepper +- +- * Makefile.in (uninstall): Remove stuff installed by install-src. +- +-Tue Aug 15 13:13:53 1995 Ulrich Drepper +- +- * VERSION.in: Initial revision. +- +- * Makefile.in (DISTFILES): +- Add VERSION file. This is not necessary for gettext, but +- for other packages using this library. +- +-Tue Aug 15 06:16:44 1995 Ulrich Drepper +- +- * gettextP.h (_nl_find_domain): +- New prototype after changing search strategy. +- +- * finddomain.c (_nl_find_domain): +- We now try only to find a specified catalog. Fall back to other +- catalogs listed in the locale list is now done in __dcgettext. +- +- * dcgettext.c (__dcgettext): +- Now we provide message fall back even to different languages. +- I.e. if a message is not available in one language all the other +- in the locale list a tried. Formerly fall back was only possible +- within one language. Implemented by moving one loop from +- _nl_find_domain to here. +- +-Mon Aug 14 23:45:50 1995 Ulrich Drepper +- +- * Makefile.in (gettextsrcdir): +- Directory where source of GNU gettext library are made +- available. +- (INSTALL, INSTALL_DATA): Programs used for installing sources. +- (gettext-src): New. Rule to install GNU gettext sources for use in +- gettextize shell script. +- +-Sun Aug 13 14:40:48 1995 Ulrich Drepper +- +- * loadmsgcat.c (_nl_load_domain): +- Use mmap for loading only when munmap function is +- also available. +- +- * Makefile.in (install): Depend on `all' goal. +- +-Wed Aug 9 11:04:33 1995 Ulrich Drepper +- +- * localealias.c (read_alias_file): +- Do not overwrite '\n' when terminating alias value string. +- +- * localealias.c (read_alias_file): +- Handle long lines. Ignore the rest not fitting in +- the buffer after the initial `fgets' call. +- +-Wed Aug 9 00:54:29 1995 Ulrich Drepper +- +- * gettextP.h (_nl_load_domain): +- Add prototype, replacing prototype for _nl_load_msg_cat. +- +- * finddomain.c (_nl_find_domain): +- Remove unneeded variable filename and filename_len. +- (expand_alias): Remove prototype because functions does not +- exist anymore. +- +- * localealias.c (read_alias_file): +- Change type of fname_len parameter to int. +- (xmalloc): Add prototype. +- +- * loadmsgcat.c: Better prototypes for xmalloc. +- +-Tue Aug 8 22:30:39 1995 Ulrich Drepper +- +- * finddomain.c (_nl_find_domain): +- Allow alias name to be constructed from the four components. +- +- * Makefile.in (aliaspath): New variable. Set to preliminary value. +- (SOURCES): Add localealias.c. +- (OBJECTS): Add localealias.o. +- +- * gettextP.h: Add prototype for _nl_expand_alias. +- +- * finddomain.c: Aliasing handled in intl/localealias.c. +- +- * localealias.c: Aliasing for locale names. +- +- * bindtextdom.c: Better prototypes for xmalloc and xstrdup. +- +-Mon Aug 7 23:47:42 1995 Ulrich Drepper +- +- * Makefile.in (DISTFILES): gettext.perl is now found in misc/. +- +- * cat-compat.c (bindtextdomain): +- Correct implementation. dirname parameter was not used. +- Reported by Marcus Daniels. +- +- * gettextP.h (loaded_domain): +- New fields `successor' and `decided' for oo, lazy +- message handling implementation. +- +- * dcgettext.c: +- Adopt for oo, lazy message handliing. +- Now we can inherit translations from less specific locales. +- (find_msg): New function. +- +- * loadmsgcat.c, finddomain.c: +- Complete rewrite. Implement oo, lazy message handling :-). +- We now have an additional environment variable `LANGUAGE' with +- a higher priority than LC_ALL for the LC_MESSAGE locale. +- Here we can set a colon separated list of specifications each +- of the form `language[_territory[.codeset]][@modifier]'. +- +-Sat Aug 5 09:55:42 1995 Ulrich Drepper +- +- * finddomain.c (unistd.h): +- Include to get _PC_PATH_MAX defined on system having it. +- +-Fri Aug 4 22:42:00 1995 Ulrich Drepper +- +- * finddomain.c (stpcpy): Include prototype. +- +- * Makefile.in (dist): Remove `copying instead' message. +- +-Wed Aug 2 18:52:03 1995 Ulrich Drepper +- +- * Makefile.in (ID, TAGS): Do not use $^. +- +-Tue Aug 1 20:07:11 1995 Ulrich Drepper +- +- * Makefile.in (TAGS, ID): Use $^ as command argument. +- (TAGS): Give etags -o option t write to current directory, +- not $(srcdir). +- (ID): Use $(srcdir) instead os $(top_srcdir)/src. +- (distclean): Remove ID. +- +-Sun Jul 30 11:51:46 1995 Ulrich Drepper +- +- * Makefile.in (gnulocaledir): +- New variable, always using share/ for data directory. +- (DEFS): Add GNULOCALEDIR, used in finddomain.c. +- +- * finddomain.c (_nl_default_dirname): +- Set to GNULOCALEDIR, because it always has to point +- to the directory where GNU gettext Library writes it to. +- +- * intl-compat.c (textdomain, bindtextdomain): +- Undefine macros before function definition. +- +-Sat Jul 22 01:10:02 1995 Ulrich Drepper +- +- * libgettext.h (_LIBINTL_H): +- Protect definition in case where this file is included as +- libgettext.h on Solaris machines. Add comment about this. +- +-Wed Jul 19 02:36:42 1995 Ulrich Drepper +- +- * intl-compat.c (textdomain): Correct typo. +- +-Wed Jul 19 01:51:35 1995 Ulrich Drepper +- +- * dcgettext.c (dcgettext): Function now called __dcgettext. +- +- * dgettext.c (dgettext): Now called __dgettext and calls +- __dcgettext. +- +- * gettext.c (gettext): +- Function now called __gettext and calls __dgettext. +- +- * textdomain.c (textdomain): Function now called __textdomain. +- +- * bindtextdom.c (bindtextdomain): Function now called +- __bindtextdomain. +- +- * intl-compat.c: Initial revision. +- +- * Makefile.in (SOURCES): Add intl-compat.c. +- (OBJECTS): We always compile the GNU gettext library functions. +- OBJECTS contains all objects but cat-compat.o, ../po/cat-if-tbl.o, +- and intl-compat.o. +- (GETTOBJS): Contains now only intl-compat.o. +- +- * libgettext.h: +- Re-include protection matches dualistic character of libgettext.h. +- For all functions in GNU gettext library define __ counter part. +- +- * finddomain.c (strchr): Define as index if not found in C library. +- (_nl_find_domain): For relative paths paste / in between. +- +-Tue Jul 18 16:37:45 1995 Ulrich Drepper +- +- * loadmsgcat.c, finddomain.c: Add inclusion of sys/types.h. +- +- * xopen-msg.sed: Fix bug with `msgstr ""' lines. +- A little bit better comments. +- +-Tue Jul 18 01:18:27 1995 Ulrich Drepper +- +- * Makefile.in: +- po-mode.el, makelinks, combine-sh are now found in ../misc. +- +- * po-mode.el, makelinks, combine-sh, elisp-comp: +- Moved to ../misc/. +- +- * libgettext.h, gettextP.h, gettext.h: Uniform test for __STDC__. +- +-Sun Jul 16 22:33:02 1995 Ulrich Drepper +- +- * Makefile.in (INSTALL, INSTALL_DATA): New variables. +- (install-data, uninstall): Install/uninstall .elc file. +- +- * po-mode.el (Installation comment): +- Add .pox as possible extension of .po files. +- +-Sun Jul 16 13:23:27 1995 Ulrich Drepper +- +- * elisp-comp: Complete new version by Franc,ois: This does not +- fail when not compiling in the source directory. +- +-Sun Jul 16 00:12:17 1995 Ulrich Drepper +- +- * Makefile.in (../po/cat-id-tbl.o): +- Use $(MAKE) instead of make for recursive make. +- +- * Makefile.in (.el.elc): Use $(SHELL) instead of /bin/sh. +- (install-exec): Add missing dummy goal. +- (install-data, uninstall): @ in multi-line shell command at +- beginning, not in front of echo. Reported by Eric Backus. +- +-Sat Jul 15 00:21:28 1995 Ulrich Drepper +- +- * Makefile.in (DISTFILES): +- Rename libgettext.perl to gettext.perl to fit in 14 chars +- file systems. +- +- * gettext.perl: +- Rename to gettext.perl to fit in 14 chars file systems. +- +-Thu Jul 13 23:17:20 1995 Ulrich Drepper +- +- * cat-compat.c: If !STDC_HEADERS try to include malloc.h. +- +-Thu Jul 13 20:55:02 1995 Ulrich Drepper +- +- * po2tbl.sed.in: Pretty printing. +- +- * linux-msg.sed, xopen-msg.sed: +- Correct bugs with handling substitute flags in branches. +- +- * hash-string.h (hash_string): +- Old K&R compilers don't under stand `unsigned char'. +- +- * gettext.h (nls_uint32): +- Some old K&R compilers (eg HP) don't understand `unsigned int'. +- +- * cat-compat.c (msg_to_cat_id): De-ANSI-fy prototypes. +- +-Thu Jul 13 01:34:33 1995 Ulrich Drepper +- +- * Makefile.in (ELCFILES): New variable. +- (DISTFILES): Add elisp-comp. +- Add implicit rule for .el -> .elc compilation. +- (install-data): install $ELCFILES +- (clean): renamed po-to-tbl and po-to-msg to po2tbl and po2msg resp. +- +- * elisp-comp: Initial revision +- +-Wed Jul 12 16:14:52 1995 Ulrich Drepper +- +- * Makefile.in: +- cat-id-tbl.c is now found in po/. This enables us to use an identical +- intl/ directory in all packages. +- +- * dcgettext.c (dcgettext): hashing does not work for table size <= 2. +- +- * textdomain.c: fix typo (#if def -> #if defined) +- +-Tue Jul 11 18:44:43 1995 Ulrich Drepper +- +- * Makefile.in (stamp-cat-id): use top_srcdir to address source files +- (DISTFILES,distclean): move tupdate.perl to src/ +- +- * po-to-tbl.sed.in: +- add additional jump to clear change flag to recognize multiline strings +- +-Tue Jul 11 01:32:50 1995 Ulrich Drepper +- +- * textdomain.c: Protect inclusion of stdlib.h and string.h. +- +- * loadmsgcat.c: Protect inclusion of stdlib.h. +- +- * libgettext.h: Protect inclusion of locale.h. +- Allow use in C++ programs. +- Define NULL is not happened already. +- +- * Makefile.in (DISTFILES): ship po-to-tbl.sed.in instead of +- po-to-tbl.sed. +- (distclean): remove po-to-tbl.sed and tupdate.perl. +- +- * tupdate.perl.in: Substitute Perl path even in exec line. +- Don't include entries without translation from old .po file. +- +-Tue Jul 4 00:41:51 1995 Ulrich Drepper +- +- * tupdate.perl.in: use "Updated: " in msgid "". +- +- * cat-compat.c: Fix typo (LOCALDIR -> LOCALEDIR). +- Define getenv if !__STDC__. +- +- * bindtextdom.c: Protect stdlib.h and string.h inclusion. +- Define free if !__STDC__. +- +- * finddomain.c: Change DEF_MSG_DOM_DIR to LOCALEDIR. +- Define free if !__STDC__. +- +- * cat-compat.c: Change DEF_MSG_DOM_DIR to LOCALEDIR. +- +-Mon Jul 3 23:56:30 1995 Ulrich Drepper +- +- * Makefile.in: Use LOCALEDIR instead of DEF_MSG_DOM_DIR. +- Remove unneeded $(srcdir) from Makefile.in dependency. +- +- * makelinks: Add copyright and short description. +- +- * po-mode.el: Last version for 0.7. +- +- * tupdate.perl.in: Fix die message. +- +- * dcgettext.c: Protect include of string.h. +- +- * gettext.c: Protect include of stdlib.h and further tries to get NULL. +- +- * finddomain.c: Some corrections in includes. +- +- * Makefile.in (INCLUDES): Prune list correct path to Makefile.in. +- +- * po-to-tbl.sed: Adopt for new .po file format. +- +- * linux-msg.sed, xopen-msg.sed: Adopt for new .po file format. +- +-Sun Jul 2 23:55:03 1995 Ulrich Drepper +- +- * tupdate.perl.in: Complete rewrite for new .po file format. ++2004-01-29 GNU + +-Sun Jul 2 02:06:50 1995 Ulrich Drepper ++ * Version 0.14.1 released. + +- * First official release. This directory contains all the code +- needed to internationalize own packages. It provides functions +- which allow to use the X/Open catgets function with an interface +- like the Uniforum gettext function. For system which does not +- have neither of those a complete implementation is provided. +--- lrzsz-0.12.20.safe/intl/config.charset 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/config.charset 2004-09-12 14:40:34.354748240 -0400 +@@ -0,0 +1,608 @@ ++#! /bin/sh ++# Output a system dependent table of character encoding aliases. ++# ++# Copyright (C) 2000-2004 Free Software Foundation, Inc. ++# ++# This program is free software; you can redistribute it and/or modify it ++# under the terms of the GNU Library General Public License as published ++# by the Free Software Foundation; either version 2, or (at your option) ++# any later version. ++# ++# This program is distributed in the hope that it will be useful, ++# but WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++# Library General Public License for more details. ++# ++# You should have received a copy of the GNU Library General Public ++# License along with this program; if not, write to the Free Software ++# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++# USA. ++# ++# The table consists of lines of the form ++# ALIAS CANONICAL ++# ++# ALIAS is the (system dependent) result of "nl_langinfo (CODESET)". ++# ALIAS is compared in a case sensitive way. ++# ++# CANONICAL is the GNU canonical name for this character encoding. ++# It must be an encoding supported by libiconv. Support by GNU libc is ++# also desirable. CANONICAL is case insensitive. Usually an upper case ++# MIME charset name is preferred. ++# The current list of GNU canonical charset names is as follows. ++# ++# name MIME? used by which systems ++# ASCII, ANSI_X3.4-1968 glibc solaris freebsd darwin ++# ISO-8859-1 Y glibc aix hpux irix osf solaris freebsd darwin ++# ISO-8859-2 Y glibc aix hpux irix osf solaris freebsd darwin ++# ISO-8859-3 Y glibc solaris ++# ISO-8859-4 Y osf solaris freebsd darwin ++# ISO-8859-5 Y glibc aix hpux irix osf solaris freebsd darwin ++# ISO-8859-6 Y glibc aix hpux solaris ++# ISO-8859-7 Y glibc aix hpux irix osf solaris ++# ISO-8859-8 Y glibc aix hpux osf solaris ++# ISO-8859-9 Y glibc aix hpux irix osf solaris ++# ISO-8859-13 glibc ++# ISO-8859-14 glibc ++# ISO-8859-15 glibc aix osf solaris freebsd ++# KOI8-R Y glibc solaris freebsd darwin ++# KOI8-U Y glibc freebsd darwin ++# KOI8-T glibc ++# CP437 dos ++# CP775 dos ++# CP850 aix osf dos ++# CP852 dos ++# CP855 dos ++# CP856 aix ++# CP857 dos ++# CP861 dos ++# CP862 dos ++# CP864 dos ++# CP865 dos ++# CP866 freebsd darwin dos ++# CP869 dos ++# CP874 woe32 dos ++# CP922 aix ++# CP932 aix woe32 dos ++# CP943 aix ++# CP949 osf woe32 dos ++# CP950 woe32 dos ++# CP1046 aix ++# CP1124 aix ++# CP1125 dos ++# CP1129 aix ++# CP1250 woe32 ++# CP1251 glibc solaris darwin woe32 ++# CP1252 aix woe32 ++# CP1253 woe32 ++# CP1254 woe32 ++# CP1255 glibc woe32 ++# CP1256 woe32 ++# CP1257 woe32 ++# GB2312 Y glibc aix hpux irix solaris freebsd darwin ++# EUC-JP Y glibc aix hpux irix osf solaris freebsd darwin ++# EUC-KR Y glibc aix hpux irix osf solaris freebsd darwin ++# EUC-TW glibc aix hpux irix osf solaris ++# BIG5 Y glibc aix hpux osf solaris freebsd darwin ++# BIG5-HKSCS glibc solaris ++# GBK glibc aix osf solaris woe32 dos ++# GB18030 glibc solaris ++# SHIFT_JIS Y hpux osf solaris freebsd darwin ++# JOHAB glibc solaris woe32 ++# TIS-620 glibc aix hpux osf solaris ++# VISCII Y glibc ++# TCVN5712-1 glibc ++# GEORGIAN-PS glibc ++# HP-ROMAN8 hpux ++# HP-ARABIC8 hpux ++# HP-GREEK8 hpux ++# HP-HEBREW8 hpux ++# HP-TURKISH8 hpux ++# HP-KANA8 hpux ++# DEC-KANJI osf ++# DEC-HANYU osf ++# UTF-8 Y glibc aix hpux osf solaris ++# ++# Note: Names which are not marked as being a MIME name should not be used in ++# Internet protocols for information interchange (mail, news, etc.). ++# ++# Note: ASCII and ANSI_X3.4-1968 are synonymous canonical names. Applications ++# must understand both names and treat them as equivalent. ++# ++# The first argument passed to this file is the canonical host specification, ++# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM ++# or ++# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM ++ ++host="$1" ++os=`echo "$host" | sed -e 's/^[^-]*-[^-]*-\(.*\)$/\1/'` ++echo "# This file contains a table of character encoding aliases," ++echo "# suitable for operating system '${os}'." ++echo "# It was automatically generated from config.charset." ++# List of references, updated during installation: ++echo "# Packages using this file: " ++case "$os" in ++ linux-gnulibc1*) ++ # Linux libc5 doesn't have nl_langinfo(CODESET); therefore ++ # localcharset.c falls back to using the full locale name ++ # from the environment variables. ++ echo "C ASCII" ++ echo "POSIX ASCII" ++ for l in af af_ZA ca ca_ES da da_DK de de_AT de_BE de_CH de_DE de_LU \ ++ en en_AU en_BW en_CA en_DK en_GB en_IE en_NZ en_US en_ZA \ ++ en_ZW es es_AR es_BO es_CL es_CO es_DO es_EC es_ES es_GT \ ++ es_HN es_MX es_PA es_PE es_PY es_SV es_US es_UY es_VE et \ ++ et_EE eu eu_ES fi fi_FI fo fo_FO fr fr_BE fr_CA fr_CH fr_FR \ ++ fr_LU ga ga_IE gl gl_ES id id_ID in in_ID is is_IS it it_CH \ ++ it_IT kl kl_GL nl nl_BE nl_NL no no_NO pt pt_BR pt_PT sv \ ++ sv_FI sv_SE; do ++ echo "$l ISO-8859-1" ++ echo "$l.iso-8859-1 ISO-8859-1" ++ echo "$l.iso-8859-15 ISO-8859-15" ++ echo "$l.iso-8859-15@euro ISO-8859-15" ++ echo "$l@euro ISO-8859-15" ++ echo "$l.cp-437 CP437" ++ echo "$l.cp-850 CP850" ++ echo "$l.cp-1252 CP1252" ++ echo "$l.cp-1252@euro CP1252" ++ #echo "$l.atari-st ATARI-ST" # not a commonly used encoding ++ echo "$l.utf-8 UTF-8" ++ echo "$l.utf-8@euro UTF-8" ++ done ++ for l in cs cs_CZ hr hr_HR hu hu_HU pl pl_PL ro ro_RO sk sk_SK sl \ ++ sl_SI sr sr_CS sr_YU; do ++ echo "$l ISO-8859-2" ++ echo "$l.iso-8859-2 ISO-8859-2" ++ echo "$l.cp-852 CP852" ++ echo "$l.cp-1250 CP1250" ++ echo "$l.utf-8 UTF-8" ++ done ++ for l in mk mk_MK ru ru_RU; do ++ echo "$l ISO-8859-5" ++ echo "$l.iso-8859-5 ISO-8859-5" ++ echo "$l.koi8-r KOI8-R" ++ echo "$l.cp-866 CP866" ++ echo "$l.cp-1251 CP1251" ++ echo "$l.utf-8 UTF-8" ++ done ++ for l in ar ar_SA; do ++ echo "$l ISO-8859-6" ++ echo "$l.iso-8859-6 ISO-8859-6" ++ echo "$l.cp-864 CP864" ++ #echo "$l.cp-868 CP868" # not a commonly used encoding ++ echo "$l.cp-1256 CP1256" ++ echo "$l.utf-8 UTF-8" ++ done ++ for l in el el_GR gr gr_GR; do ++ echo "$l ISO-8859-7" ++ echo "$l.iso-8859-7 ISO-8859-7" ++ echo "$l.cp-869 CP869" ++ echo "$l.cp-1253 CP1253" ++ echo "$l.cp-1253@euro CP1253" ++ echo "$l.utf-8 UTF-8" ++ echo "$l.utf-8@euro UTF-8" ++ done ++ for l in he he_IL iw iw_IL; do ++ echo "$l ISO-8859-8" ++ echo "$l.iso-8859-8 ISO-8859-8" ++ echo "$l.cp-862 CP862" ++ echo "$l.cp-1255 CP1255" ++ echo "$l.utf-8 UTF-8" ++ done ++ for l in tr tr_TR; do ++ echo "$l ISO-8859-9" ++ echo "$l.iso-8859-9 ISO-8859-9" ++ echo "$l.cp-857 CP857" ++ echo "$l.cp-1254 CP1254" ++ echo "$l.utf-8 UTF-8" ++ done ++ for l in lt lt_LT lv lv_LV; do ++ #echo "$l BALTIC" # not a commonly used encoding, wrong encoding name ++ echo "$l ISO-8859-13" ++ done ++ for l in ru_UA uk uk_UA; do ++ echo "$l KOI8-U" ++ done ++ for l in zh zh_CN; do ++ #echo "$l GB_2312-80" # not a commonly used encoding, wrong encoding name ++ echo "$l GB2312" ++ done ++ for l in ja ja_JP ja_JP.EUC; do ++ echo "$l EUC-JP" ++ done ++ for l in ko ko_KR; do ++ echo "$l EUC-KR" ++ done ++ for l in th th_TH; do ++ echo "$l TIS-620" ++ done ++ for l in fa fa_IR; do ++ #echo "$l ISIRI-3342" # a broken encoding ++ echo "$l.utf-8 UTF-8" ++ done ++ ;; ++ linux* | *-gnu*) ++ # With glibc-2.1 or newer, we don't need any canonicalization, ++ # because glibc has iconv and both glibc and libiconv support all ++ # GNU canonical names directly. Therefore, the Makefile does not ++ # need to install the alias file at all. ++ # The following applies only to glibc-2.0.x and older libcs. ++ echo "ISO_646.IRV:1983 ASCII" ++ ;; ++ aix*) ++ echo "ISO8859-1 ISO-8859-1" ++ echo "ISO8859-2 ISO-8859-2" ++ echo "ISO8859-5 ISO-8859-5" ++ echo "ISO8859-6 ISO-8859-6" ++ echo "ISO8859-7 ISO-8859-7" ++ echo "ISO8859-8 ISO-8859-8" ++ echo "ISO8859-9 ISO-8859-9" ++ echo "ISO8859-15 ISO-8859-15" ++ echo "IBM-850 CP850" ++ echo "IBM-856 CP856" ++ echo "IBM-921 ISO-8859-13" ++ echo "IBM-922 CP922" ++ echo "IBM-932 CP932" ++ echo "IBM-943 CP943" ++ echo "IBM-1046 CP1046" ++ echo "IBM-1124 CP1124" ++ echo "IBM-1129 CP1129" ++ echo "IBM-1252 CP1252" ++ echo "IBM-eucCN GB2312" ++ echo "IBM-eucJP EUC-JP" ++ echo "IBM-eucKR EUC-KR" ++ echo "IBM-eucTW EUC-TW" ++ echo "big5 BIG5" ++ echo "GBK GBK" ++ echo "TIS-620 TIS-620" ++ echo "UTF-8 UTF-8" ++ ;; ++ hpux*) ++ echo "iso88591 ISO-8859-1" ++ echo "iso88592 ISO-8859-2" ++ echo "iso88595 ISO-8859-5" ++ echo "iso88596 ISO-8859-6" ++ echo "iso88597 ISO-8859-7" ++ echo "iso88598 ISO-8859-8" ++ echo "iso88599 ISO-8859-9" ++ echo "iso885915 ISO-8859-15" ++ echo "roman8 HP-ROMAN8" ++ echo "arabic8 HP-ARABIC8" ++ echo "greek8 HP-GREEK8" ++ echo "hebrew8 HP-HEBREW8" ++ echo "turkish8 HP-TURKISH8" ++ echo "kana8 HP-KANA8" ++ echo "tis620 TIS-620" ++ echo "big5 BIG5" ++ echo "eucJP EUC-JP" ++ echo "eucKR EUC-KR" ++ echo "eucTW EUC-TW" ++ echo "hp15CN GB2312" ++ #echo "ccdc ?" # what is this? ++ echo "SJIS SHIFT_JIS" ++ echo "utf8 UTF-8" ++ ;; ++ irix*) ++ echo "ISO8859-1 ISO-8859-1" ++ echo "ISO8859-2 ISO-8859-2" ++ echo "ISO8859-5 ISO-8859-5" ++ echo "ISO8859-7 ISO-8859-7" ++ echo "ISO8859-9 ISO-8859-9" ++ echo "eucCN GB2312" ++ echo "eucJP EUC-JP" ++ echo "eucKR EUC-KR" ++ echo "eucTW EUC-TW" ++ ;; ++ osf*) ++ echo "ISO8859-1 ISO-8859-1" ++ echo "ISO8859-2 ISO-8859-2" ++ echo "ISO8859-4 ISO-8859-4" ++ echo "ISO8859-5 ISO-8859-5" ++ echo "ISO8859-7 ISO-8859-7" ++ echo "ISO8859-8 ISO-8859-8" ++ echo "ISO8859-9 ISO-8859-9" ++ echo "ISO8859-15 ISO-8859-15" ++ echo "cp850 CP850" ++ echo "big5 BIG5" ++ echo "dechanyu DEC-HANYU" ++ echo "dechanzi GB2312" ++ echo "deckanji DEC-KANJI" ++ echo "deckorean EUC-KR" ++ echo "eucJP EUC-JP" ++ echo "eucKR EUC-KR" ++ echo "eucTW EUC-TW" ++ echo "GBK GBK" ++ echo "KSC5601 CP949" ++ echo "sdeckanji EUC-JP" ++ echo "SJIS SHIFT_JIS" ++ echo "TACTIS TIS-620" ++ echo "UTF-8 UTF-8" ++ ;; ++ solaris*) ++ echo "646 ASCII" ++ echo "ISO8859-1 ISO-8859-1" ++ echo "ISO8859-2 ISO-8859-2" ++ echo "ISO8859-3 ISO-8859-3" ++ echo "ISO8859-4 ISO-8859-4" ++ echo "ISO8859-5 ISO-8859-5" ++ echo "ISO8859-6 ISO-8859-6" ++ echo "ISO8859-7 ISO-8859-7" ++ echo "ISO8859-8 ISO-8859-8" ++ echo "ISO8859-9 ISO-8859-9" ++ echo "ISO8859-15 ISO-8859-15" ++ echo "koi8-r KOI8-R" ++ echo "ansi-1251 CP1251" ++ echo "BIG5 BIG5" ++ echo "Big5-HKSCS BIG5-HKSCS" ++ echo "gb2312 GB2312" ++ echo "GBK GBK" ++ echo "GB18030 GB18030" ++ echo "cns11643 EUC-TW" ++ echo "5601 EUC-KR" ++ echo "ko_KR.johap92 JOHAB" ++ echo "eucJP EUC-JP" ++ echo "PCK SHIFT_JIS" ++ echo "TIS620.2533 TIS-620" ++ #echo "sun_eu_greek ?" # what is this? ++ echo "UTF-8 UTF-8" ++ ;; ++ freebsd* | os2*) ++ # FreeBSD 4.2 doesn't have nl_langinfo(CODESET); therefore ++ # localcharset.c falls back to using the full locale name ++ # from the environment variables. ++ # Likewise for OS/2. OS/2 has XFree86 just like FreeBSD. Just ++ # reuse FreeBSD's locale data for OS/2. ++ echo "C ASCII" ++ echo "US-ASCII ASCII" ++ for l in la_LN lt_LN; do ++ echo "$l.ASCII ASCII" ++ done ++ for l in da_DK de_AT de_CH de_DE en_AU en_CA en_GB en_US es_ES \ ++ fi_FI fr_BE fr_CA fr_CH fr_FR is_IS it_CH it_IT la_LN \ ++ lt_LN nl_BE nl_NL no_NO pt_PT sv_SE; do ++ echo "$l.ISO_8859-1 ISO-8859-1" ++ echo "$l.DIS_8859-15 ISO-8859-15" ++ done ++ for l in cs_CZ hr_HR hu_HU la_LN lt_LN pl_PL sl_SI; do ++ echo "$l.ISO_8859-2 ISO-8859-2" ++ done ++ for l in la_LN lt_LT; do ++ echo "$l.ISO_8859-4 ISO-8859-4" ++ done ++ for l in ru_RU ru_SU; do ++ echo "$l.KOI8-R KOI8-R" ++ echo "$l.ISO_8859-5 ISO-8859-5" ++ echo "$l.CP866 CP866" ++ done ++ echo "uk_UA.KOI8-U KOI8-U" ++ echo "zh_TW.BIG5 BIG5" ++ echo "zh_TW.Big5 BIG5" ++ echo "zh_CN.EUC GB2312" ++ echo "ja_JP.EUC EUC-JP" ++ echo "ja_JP.SJIS SHIFT_JIS" ++ echo "ja_JP.Shift_JIS SHIFT_JIS" ++ echo "ko_KR.EUC EUC-KR" ++ ;; ++ netbsd*) ++ echo "646 ASCII" ++ echo "ISO8859-1 ISO-8859-1" ++ echo "ISO8859-2 ISO-8859-2" ++ echo "ISO8859-4 ISO-8859-4" ++ echo "ISO8859-5 ISO-8859-5" ++ echo "ISO8859-15 ISO-8859-15" ++ echo "eucCN GB2312" ++ echo "eucJP EUC-JP" ++ echo "eucKR EUC-KR" ++ echo "eucTW EUC-TW" ++ echo "BIG5 BIG5" ++ echo "SJIS SHIFT_JIS" ++ ;; ++ darwin*) ++ # Darwin 6.8 doesn't have nl_langinfo(CODESET); therefore ++ # localcharset.c falls back to using the full locale name ++ # from the environment variables. ++ echo "C ASCII" ++ for l in en_AU en_CA en_GB en_US la_LN; do ++ echo "$l.US-ASCII ASCII" ++ done ++ for l in da_DK de_AT de_CH de_DE en_AU en_CA en_GB en_US es_ES \ ++ fi_FI fr_BE fr_CA fr_CH fr_FR is_IS it_CH it_IT nl_BE \ ++ nl_NL no_NO pt_PT sv_SE; do ++ echo "$l ISO-8859-1" ++ echo "$l.ISO8859-1 ISO-8859-1" ++ echo "$l.ISO8859-15 ISO-8859-15" ++ done ++ for l in la_LN; do ++ echo "$l.ISO8859-1 ISO-8859-1" ++ echo "$l.ISO8859-15 ISO-8859-15" ++ done ++ for l in cs_CZ hr_HR hu_HU la_LN pl_PL sl_SI; do ++ echo "$l.ISO8859-2 ISO-8859-2" ++ done ++ for l in la_LN lt_LT; do ++ echo "$l.ISO8859-4 ISO-8859-4" ++ done ++ for l in ru_RU; do ++ echo "$l.KOI8-R KOI8-R" ++ echo "$l.ISO8859-5 ISO-8859-5" ++ echo "$l.CP866 CP866" ++ done ++ for l in bg_BG; do ++ echo "$l.CP1251 CP1251" ++ done ++ echo "uk_UA.KOI8-U KOI8-U" ++ echo "zh_TW.BIG5 BIG5" ++ echo "zh_TW.Big5 BIG5" ++ echo "zh_CN.EUC GB2312" ++ echo "ja_JP.EUC EUC-JP" ++ echo "ja_JP.SJIS SHIFT_JIS" ++ echo "ko_KR.EUC EUC-KR" ++ ;; ++ beos*) ++ # BeOS has a single locale, and it has UTF-8 encoding. ++ echo "* UTF-8" ++ ;; ++ msdosdjgpp*) ++ # DJGPP 2.03 doesn't have nl_langinfo(CODESET); therefore ++ # localcharset.c falls back to using the full locale name ++ # from the environment variables. ++ echo "#" ++ echo "# The encodings given here may not all be correct." ++ echo "# If you find that the encoding given for your language and" ++ echo "# country is not the one your DOS machine actually uses, just" ++ echo "# correct it in this file, and send a mail to" ++ echo "# Juan Manuel Guerrero " ++ echo "# and Bruno Haible ." ++ echo "#" ++ echo "C ASCII" ++ # ISO-8859-1 languages ++ echo "ca CP850" ++ echo "ca_ES CP850" ++ echo "da CP865" # not CP850 ?? ++ echo "da_DK CP865" # not CP850 ?? ++ echo "de CP850" ++ echo "de_AT CP850" ++ echo "de_CH CP850" ++ echo "de_DE CP850" ++ echo "en CP850" ++ echo "en_AU CP850" # not CP437 ?? ++ echo "en_CA CP850" ++ echo "en_GB CP850" ++ echo "en_NZ CP437" ++ echo "en_US CP437" ++ echo "en_ZA CP850" # not CP437 ?? ++ echo "es CP850" ++ echo "es_AR CP850" ++ echo "es_BO CP850" ++ echo "es_CL CP850" ++ echo "es_CO CP850" ++ echo "es_CR CP850" ++ echo "es_CU CP850" ++ echo "es_DO CP850" ++ echo "es_EC CP850" ++ echo "es_ES CP850" ++ echo "es_GT CP850" ++ echo "es_HN CP850" ++ echo "es_MX CP850" ++ echo "es_NI CP850" ++ echo "es_PA CP850" ++ echo "es_PY CP850" ++ echo "es_PE CP850" ++ echo "es_SV CP850" ++ echo "es_UY CP850" ++ echo "es_VE CP850" ++ echo "et CP850" ++ echo "et_EE CP850" ++ echo "eu CP850" ++ echo "eu_ES CP850" ++ echo "fi CP850" ++ echo "fi_FI CP850" ++ echo "fr CP850" ++ echo "fr_BE CP850" ++ echo "fr_CA CP850" ++ echo "fr_CH CP850" ++ echo "fr_FR CP850" ++ echo "ga CP850" ++ echo "ga_IE CP850" ++ echo "gd CP850" ++ echo "gd_GB CP850" ++ echo "gl CP850" ++ echo "gl_ES CP850" ++ echo "id CP850" # not CP437 ?? ++ echo "id_ID CP850" # not CP437 ?? ++ echo "is CP861" # not CP850 ?? ++ echo "is_IS CP861" # not CP850 ?? ++ echo "it CP850" ++ echo "it_CH CP850" ++ echo "it_IT CP850" ++ echo "lt CP775" ++ echo "lt_LT CP775" ++ echo "lv CP775" ++ echo "lv_LV CP775" ++ echo "nb CP865" # not CP850 ?? ++ echo "nb_NO CP865" # not CP850 ?? ++ echo "nl CP850" ++ echo "nl_BE CP850" ++ echo "nl_NL CP850" ++ echo "nn CP865" # not CP850 ?? ++ echo "nn_NO CP865" # not CP850 ?? ++ echo "no CP865" # not CP850 ?? ++ echo "no_NO CP865" # not CP850 ?? ++ echo "pt CP850" ++ echo "pt_BR CP850" ++ echo "pt_PT CP850" ++ echo "sv CP850" ++ echo "sv_SE CP850" ++ # ISO-8859-2 languages ++ echo "cs CP852" ++ echo "cs_CZ CP852" ++ echo "hr CP852" ++ echo "hr_HR CP852" ++ echo "hu CP852" ++ echo "hu_HU CP852" ++ echo "pl CP852" ++ echo "pl_PL CP852" ++ echo "ro CP852" ++ echo "ro_RO CP852" ++ echo "sk CP852" ++ echo "sk_SK CP852" ++ echo "sl CP852" ++ echo "sl_SI CP852" ++ echo "sq CP852" ++ echo "sq_AL CP852" ++ echo "sr CP852" # CP852 or CP866 or CP855 ?? ++ echo "sr_CS CP852" # CP852 or CP866 or CP855 ?? ++ echo "sr_YU CP852" # CP852 or CP866 or CP855 ?? ++ # ISO-8859-3 languages ++ echo "mt CP850" ++ echo "mt_MT CP850" ++ # ISO-8859-5 languages ++ echo "be CP866" ++ echo "be_BE CP866" ++ echo "bg CP866" # not CP855 ?? ++ echo "bg_BG CP866" # not CP855 ?? ++ echo "mk CP866" # not CP855 ?? ++ echo "mk_MK CP866" # not CP855 ?? ++ echo "ru CP866" ++ echo "ru_RU CP866" ++ echo "uk CP1125" ++ echo "uk_UA CP1125" ++ # ISO-8859-6 languages ++ echo "ar CP864" ++ echo "ar_AE CP864" ++ echo "ar_DZ CP864" ++ echo "ar_EG CP864" ++ echo "ar_IQ CP864" ++ echo "ar_IR CP864" ++ echo "ar_JO CP864" ++ echo "ar_KW CP864" ++ echo "ar_MA CP864" ++ echo "ar_OM CP864" ++ echo "ar_QA CP864" ++ echo "ar_SA CP864" ++ echo "ar_SY CP864" ++ # ISO-8859-7 languages ++ echo "el CP869" ++ echo "el_GR CP869" ++ # ISO-8859-8 languages ++ echo "he CP862" ++ echo "he_IL CP862" ++ # ISO-8859-9 languages ++ echo "tr CP857" ++ echo "tr_TR CP857" ++ # Japanese ++ echo "ja CP932" ++ echo "ja_JP CP932" ++ # Chinese ++ echo "zh_CN GBK" ++ echo "zh_TW CP950" # not CP938 ?? ++ # Korean ++ echo "kr CP949" # not CP934 ?? ++ echo "kr_KR CP949" # not CP934 ?? ++ # Thai ++ echo "th CP874" ++ echo "th_TH CP874" ++ # Other ++ echo "eo CP850" ++ echo "eo_EO CP850" ++ ;; ++esac +--- lrzsz-0.12.20.safe/intl/dcgettext.c 1998-04-26 09:22:36.000000000 -0400 ++++ lrzsz-0.12.20/intl/dcgettext.c 2004-09-12 14:40:34.359747480 -0400 +@@ -1,593 +1,56 @@ +-/* Implementation of the dcgettext(3) function +- Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. ++/* Implementation of the dcgettext(3) function. ++ Copyright (C) 1995-1999, 2000-2003 Free Software Foundation, Inc. + +- This program is free software; you can redistribute it and/or modify +- it under the terms of the GNU General Public License as published by +- the Free Software Foundation; either version 2, or (at your option) ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +- GNU General Public License for more details. ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. + +- You should have received a copy of the GNU General Public License +- along with this program; if not, write to the Free Software Foundation, +- Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ + + #ifdef HAVE_CONFIG_H + # include + #endif + +-#include +- +-#ifdef __GNUC__ +-# define alloca __builtin_alloca +-# define HAVE_ALLOCA 1 +-#else +-# if defined HAVE_ALLOCA_H || defined _LIBC +-# include +-# else +-# ifdef _AIX +- #pragma alloca +-# else +-# ifndef alloca +-char *alloca (); +-# endif +-# endif +-# endif +-#endif +- +-#include +-#ifndef errno +-extern int errno; +-#endif +-#ifndef __set_errno +-# define __set_errno(val) errno = (val) +-#endif +- +-#if defined STDC_HEADERS || defined _LIBC +-# include +-#else +-char *getenv (); +-# ifdef HAVE_MALLOC_H +-# include +-# else +-void free (); +-# endif +-#endif +- +-#if defined HAVE_STRING_H || defined _LIBC +-# ifndef _GNU_SOURCE +-# define _GNU_SOURCE 1 +-# endif +-# include +-#else +-# include +-#endif +-#if !HAVE_STRCHR && !defined _LIBC +-# ifndef strchr +-# define strchr index +-# endif +-#endif +- +-#if defined HAVE_UNISTD_H || defined _LIBC +-# include +-#endif +- +-#include "gettext.h" + #include "gettextP.h" + #ifdef _LIBC + # include + #else +-# include "libgettext.h" ++# include "libgnuintl.h" + #endif +-#include "hash-string.h" + + /* @@ end of prolog @@ */ + +-#ifdef _LIBC +-/* Rename the non ANSI C functions. This is required by the standard +- because some ANSI C functions will require linking with this object +- file and the name space must not be polluted. */ +-# define getcwd __getcwd +-# define stpcpy __stpcpy +-#else +-# if !defined HAVE_GETCWD +-char *getwd (); +-# define getcwd(buf, max) getwd (buf) +-# else +-char *getcwd (); +-# endif +-# ifndef HAVE_STPCPY +-static char *stpcpy PARAMS ((char *dest, const char *src)); +-# endif +-#endif +- +-/* Amount to increase buffer size by in each try. */ +-#define PATH_INCR 32 +- +-/* The following is from pathmax.h. */ +-/* Non-POSIX BSD systems might have gcc's limits.h, which doesn't define +- PATH_MAX but might cause redefinition warnings when sys/param.h is +- later included (as on MORE/BSD 4.3). */ +-#if defined(_POSIX_VERSION) || (defined(HAVE_LIMITS_H) && !defined(__GNUC__)) +-# include +-#endif +- +-#ifndef _POSIX_PATH_MAX +-# define _POSIX_PATH_MAX 255 +-#endif +- +-#if !defined(PATH_MAX) && defined(_PC_PATH_MAX) +-# define PATH_MAX (pathconf ("/", _PC_PATH_MAX) < 1 ? 1024 : pathconf ("/", _PC_PATH_MAX)) +-#endif +- +-/* Don't include sys/param.h if it already has been. */ +-#if defined(HAVE_SYS_PARAM_H) && !defined(PATH_MAX) && !defined(MAXPATHLEN) +-# include +-#endif +- +-#if !defined(PATH_MAX) && defined(MAXPATHLEN) +-# define PATH_MAX MAXPATHLEN +-#endif +- +-#ifndef PATH_MAX +-# define PATH_MAX _POSIX_PATH_MAX +-#endif +- +-/* XPG3 defines the result of `setlocale (category, NULL)' as: +- ``Directs `setlocale()' to query `category' and return the current +- setting of `local'.'' +- However it does not specify the exact format. And even worse: POSIX +- defines this not at all. So we can use this feature only on selected +- system (e.g. those using GNU C Library). */ +-#ifdef _LIBC +-# define HAVE_LOCALE_NULL +-#endif +- +-/* Name of the default domain used for gettext(3) prior any call to +- textdomain(3). The default value for this is "messages". */ +-const char _nl_default_default_domain[] = "messages"; +- +-/* Value used as the default domain for gettext(3). */ +-const char *_nl_current_default_domain = _nl_default_default_domain; +- +-/* Contains the default location of the message catalogs. */ +-const char _nl_default_dirname[] = GNULOCALEDIR; +- +-/* List with bindings of specific domains created by bindtextdomain() +- calls. */ +-struct binding *_nl_domain_bindings; +- +-/* Prototypes for local functions. */ +-static char *find_msg PARAMS ((struct loaded_l10nfile *domain_file, +- const char *msgid)); +-static const char *category_to_name PARAMS ((int category)); +-static const char *guess_category_value PARAMS ((int category, +- const char *categoryname)); +- +- +-/* For those loosing systems which don't have `alloca' we have to add +- some additional code emulating it. */ +-#ifdef HAVE_ALLOCA +-/* Nothing has to be done. */ +-# define ADD_BLOCK(list, address) /* nothing */ +-# define FREE_BLOCKS(list) /* nothing */ +-#else +-struct block_list +-{ +- void *address; +- struct block_list *next; +-}; +-# define ADD_BLOCK(list, addr) \ +- do { \ +- struct block_list *newp = (struct block_list *) malloc (sizeof (*newp)); \ +- /* If we cannot get a free block we cannot add the new element to \ +- the list. */ \ +- if (newp != NULL) { \ +- newp->address = (addr); \ +- newp->next = (list); \ +- (list) = newp; \ +- } \ +- } while (0) +-# define FREE_BLOCKS(list) \ +- do { \ +- while (list != NULL) { \ +- struct block_list *old = list; \ +- list = list->next; \ +- free (old); \ +- } \ +- } while (0) +-# undef alloca +-# define alloca(size) (malloc (size)) +-#endif /* have alloca */ +- +- + /* Names for the libintl functions are a problem. They must not clash + with existing names and they should follow ANSI C. But this source + code is also used in GNU C Library where the names have a __ + prefix. So we have to make a difference here. */ + #ifdef _LIBC + # define DCGETTEXT __dcgettext ++# define DCIGETTEXT __dcigettext + #else +-# define DCGETTEXT dcgettext__ ++# define DCGETTEXT libintl_dcgettext ++# define DCIGETTEXT libintl_dcigettext + #endif + + /* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY + locale. */ + char * +-DCGETTEXT (domainname, msgid, category) +- const char *domainname; +- const char *msgid; +- int category; ++DCGETTEXT (const char *domainname, const char *msgid, int category) + { +-#ifndef HAVE_ALLOCA +- struct block_list *block_list = NULL; +-#endif +- struct loaded_l10nfile *domain; +- struct binding *binding; +- const char *categoryname; +- const char *categoryvalue; +- char *dirname, *xdomainname; +- char *single_locale; +- char *retval; +- int saved_errno = errno; +- +- /* If no real MSGID is given return NULL. */ +- if (msgid == NULL) +- return NULL; +- +- /* If DOMAINNAME is NULL, we are interested in the default domain. If +- CATEGORY is not LC_MESSAGES this might not make much sense but the +- defintion left this undefined. */ +- if (domainname == NULL) +- domainname = _nl_current_default_domain; +- +- /* First find matching binding. */ +- for (binding = _nl_domain_bindings; binding != NULL; binding = binding->next) +- { +- int compare = strcmp (domainname, binding->domainname); +- if (compare == 0) +- /* We found it! */ +- break; +- if (compare < 0) +- { +- /* It is not in the list. */ +- binding = NULL; +- break; +- } +- } +- +- if (binding == NULL) +- dirname = (char *) _nl_default_dirname; +- else if (binding->dirname[0] == '/') +- dirname = binding->dirname; +- else +- { +- /* We have a relative path. Make it absolute now. */ +- size_t dirname_len = strlen (binding->dirname) + 1; +- size_t path_max; +- char *ret; +- +- path_max = (unsigned) PATH_MAX; +- path_max += 2; /* The getcwd docs say to do this. */ +- +- dirname = (char *) alloca (path_max + dirname_len); +- ADD_BLOCK (block_list, dirname); +- +- __set_errno (0); +- while ((ret = getcwd (dirname, path_max)) == NULL && errno == ERANGE) +- { +- path_max += PATH_INCR; +- dirname = (char *) alloca (path_max + dirname_len); +- ADD_BLOCK (block_list, dirname); +- __set_errno (0); +- } +- +- if (ret == NULL) +- { +- /* We cannot get the current working directory. Don't signal an +- error but simply return the default string. */ +- FREE_BLOCKS (block_list); +- __set_errno (saved_errno); +- return (char *) msgid; +- } +- +- stpcpy (stpcpy (strchr (dirname, '\0'), "/"), binding->dirname); +- } +- +- /* Now determine the symbolic name of CATEGORY and its value. */ +- categoryname = category_to_name (category); +- categoryvalue = guess_category_value (category, categoryname); +- +- xdomainname = (char *) alloca (strlen (categoryname) +- + strlen (domainname) + 5); +- ADD_BLOCK (block_list, xdomainname); +- +- stpcpy (stpcpy (stpcpy (stpcpy (xdomainname, categoryname), "/"), +- domainname), +- ".mo"); +- +- /* Creating working area. */ +- single_locale = (char *) alloca (strlen (categoryvalue) + 1); +- ADD_BLOCK (block_list, single_locale); +- +- +- /* Search for the given string. This is a loop because we perhaps +- got an ordered list of languages to consider for th translation. */ +- while (1) +- { +- /* Make CATEGORYVALUE point to the next element of the list. */ +- while (categoryvalue[0] != '\0' && categoryvalue[0] == ':') +- ++categoryvalue; +- if (categoryvalue[0] == '\0') +- { +- /* The whole contents of CATEGORYVALUE has been searched but +- no valid entry has been found. We solve this situation +- by implicitly appending a "C" entry, i.e. no translation +- will take place. */ +- single_locale[0] = 'C'; +- single_locale[1] = '\0'; +- } +- else +- { +- char *cp = single_locale; +- while (categoryvalue[0] != '\0' && categoryvalue[0] != ':') +- *cp++ = *categoryvalue++; +- *cp = '\0'; +- } +- +- /* If the current locale value is C (or POSIX) we don't load a +- domain. Return the MSGID. */ +- if (strcmp (single_locale, "C") == 0 +- || strcmp (single_locale, "POSIX") == 0) +- { +- FREE_BLOCKS (block_list); +- __set_errno (saved_errno); +- return (char *) msgid; +- } +- +- +- /* Find structure describing the message catalog matching the +- DOMAINNAME and CATEGORY. */ +- domain = _nl_find_domain (dirname, single_locale, xdomainname); +- +- if (domain != NULL) +- { +- retval = find_msg (domain, msgid); +- +- if (retval == NULL) +- { +- int cnt; +- +- for (cnt = 0; domain->successor[cnt] != NULL; ++cnt) +- { +- retval = find_msg (domain->successor[cnt], msgid); +- +- if (retval != NULL) +- break; +- } +- } +- +- if (retval != NULL) +- { +- FREE_BLOCKS (block_list); +- __set_errno (saved_errno); +- return retval; +- } +- } +- } +- /* NOTREACHED */ ++ return DCIGETTEXT (domainname, msgid, NULL, 0, 0, category); + } + + #ifdef _LIBC + /* Alias for function name in GNU C Library. */ ++INTDEF(__dcgettext) + weak_alias (__dcgettext, dcgettext); + #endif +- +- +-static char * +-find_msg (domain_file, msgid) +- struct loaded_l10nfile *domain_file; +- const char *msgid; +-{ +- size_t top, act, bottom; +- struct loaded_domain *domain; +- +- if (domain_file->decided == 0) +- _nl_load_domain (domain_file); +- +- if (domain_file->data == NULL) +- return NULL; +- +- domain = (struct loaded_domain *) domain_file->data; +- +- /* Locate the MSGID and its translation. */ +- if (domain->hash_size > 2 && domain->hash_tab != NULL) +- { +- /* Use the hashing table. */ +- nls_uint32 len = strlen (msgid); +- nls_uint32 hash_val = hash_string (msgid); +- nls_uint32 idx = hash_val % domain->hash_size; +- nls_uint32 incr = 1 + (hash_val % (domain->hash_size - 2)); +- nls_uint32 nstr = W (domain->must_swap, domain->hash_tab[idx]); +- +- if (nstr == 0) +- /* Hash table entry is empty. */ +- return NULL; +- +- if (W (domain->must_swap, domain->orig_tab[nstr - 1].length) == len +- && strcmp (msgid, +- domain->data + W (domain->must_swap, +- domain->orig_tab[nstr - 1].offset)) == 0) +- return (char *) domain->data + W (domain->must_swap, +- domain->trans_tab[nstr - 1].offset); +- +- while (1) +- { +- if (idx >= domain->hash_size - incr) +- idx -= domain->hash_size - incr; +- else +- idx += incr; +- +- nstr = W (domain->must_swap, domain->hash_tab[idx]); +- if (nstr == 0) +- /* Hash table entry is empty. */ +- return NULL; +- +- if (W (domain->must_swap, domain->orig_tab[nstr - 1].length) == len +- && strcmp (msgid, +- domain->data + W (domain->must_swap, +- domain->orig_tab[nstr - 1].offset)) +- == 0) +- return (char *) domain->data +- + W (domain->must_swap, domain->trans_tab[nstr - 1].offset); +- } +- /* NOTREACHED */ +- } +- +- /* Now we try the default method: binary search in the sorted +- array of messages. */ +- bottom = 0; +- top = domain->nstrings; +- while (bottom < top) +- { +- int cmp_val; +- +- act = (bottom + top) / 2; +- cmp_val = strcmp (msgid, domain->data +- + W (domain->must_swap, +- domain->orig_tab[act].offset)); +- if (cmp_val < 0) +- top = act; +- else if (cmp_val > 0) +- bottom = act + 1; +- else +- break; +- } +- +- /* If an translation is found return this. */ +- return bottom >= top ? NULL : (char *) domain->data +- + W (domain->must_swap, +- domain->trans_tab[act].offset); +-} +- +- +-/* Return string representation of locale CATEGORY. */ +-static const char * +-category_to_name (category) +- int category; +-{ +- const char *retval; +- +- switch (category) +- { +-#ifdef LC_COLLATE +- case LC_COLLATE: +- retval = "LC_COLLATE"; +- break; +-#endif +-#ifdef LC_CTYPE +- case LC_CTYPE: +- retval = "LC_CTYPE"; +- break; +-#endif +-#ifdef LC_MONETARY +- case LC_MONETARY: +- retval = "LC_MONETARY"; +- break; +-#endif +-#ifdef LC_NUMERIC +- case LC_NUMERIC: +- retval = "LC_NUMERIC"; +- break; +-#endif +-#ifdef LC_TIME +- case LC_TIME: +- retval = "LC_TIME"; +- break; +-#endif +-#ifdef LC_MESSAGES +- case LC_MESSAGES: +- retval = "LC_MESSAGES"; +- break; +-#endif +-#ifdef LC_RESPONSE +- case LC_RESPONSE: +- retval = "LC_RESPONSE"; +- break; +-#endif +-#ifdef LC_ALL +- case LC_ALL: +- /* This might not make sense but is perhaps better than any other +- value. */ +- retval = "LC_ALL"; +- break; +-#endif +- default: +- /* If you have a better idea for a default value let me know. */ +- retval = "LC_XXX"; +- } +- +- return retval; +-} +- +-/* Guess value of current locale from value of the environment variables. */ +-static const char * +-guess_category_value (category, categoryname) +- int category; +- const char *categoryname; +-{ +- const char *retval; +- +- /* The highest priority value is the `LANGUAGE' environment +- variable. This is a GNU extension. */ +- retval = getenv ("LANGUAGE"); +- if (retval != NULL && retval[0] != '\0') +- return retval; +- +- /* `LANGUAGE' is not set. So we have to proceed with the POSIX +- methods of looking to `LC_ALL', `LC_xxx', and `LANG'. On some +- systems this can be done by the `setlocale' function itself. */ +-#if defined HAVE_SETLOCALE && defined HAVE_LC_MESSAGES && defined HAVE_LOCALE_NULL +- return setlocale (category, NULL); +-#else +- /* Setting of LC_ALL overwrites all other. */ +- retval = getenv ("LC_ALL"); +- if (retval != NULL && retval[0] != '\0') +- return retval; +- +- /* Next comes the name of the desired category. */ +- retval = getenv (categoryname); +- if (retval != NULL && retval[0] != '\0') +- return retval; +- +- /* Last possibility is the LANG environment variable. */ +- retval = getenv ("LANG"); +- if (retval != NULL && retval[0] != '\0') +- return retval; +- +- /* We use C as the default domain. POSIX says this is implementation +- defined. */ +- return "C"; +-#endif +-} +- +-/* @@ begin of epilog @@ */ +- +-/* We don't want libintl.a to depend on any other library. So we +- avoid the non-standard function stpcpy. In GNU C Library this +- function is available, though. Also allow the symbol HAVE_STPCPY +- to be defined. */ +-#if !_LIBC && !HAVE_STPCPY +-static char * +-stpcpy (dest, src) +- char *dest; +- const char *src; +-{ +- while ((*dest++ = *src++) != '\0') +- /* Do nothing. */ ; +- return dest - 1; +-} +-#endif +--- lrzsz-0.12.20.safe/intl/dcigettext.c 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/dcigettext.c 2004-09-12 14:40:34.369745960 -0400 +@@ -0,0 +1,1219 @@ ++/* Implementation of the internal dcigettext function. ++ Copyright (C) 1995-1999, 2000-2003 Free Software Foundation, Inc. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++/* Tell glibc's to provide a prototype for mempcpy(). ++ This must come before because may include ++ , and once has been included, it's too late. */ ++#ifndef _GNU_SOURCE ++# define _GNU_SOURCE 1 ++#endif ++ ++#ifdef HAVE_CONFIG_H ++# include ++#endif ++ ++#include ++ ++#ifdef __GNUC__ ++# define alloca __builtin_alloca ++# define HAVE_ALLOCA 1 ++#else ++# ifdef _MSC_VER ++# include ++# define alloca _alloca ++# else ++# if defined HAVE_ALLOCA_H || defined _LIBC ++# include ++# else ++# ifdef _AIX ++ #pragma alloca ++# else ++# ifndef alloca ++char *alloca (); ++# endif ++# endif ++# endif ++# endif ++#endif ++ ++#include ++#ifndef errno ++extern int errno; ++#endif ++#ifndef __set_errno ++# define __set_errno(val) errno = (val) ++#endif ++ ++#include ++#include ++#include ++ ++#if defined HAVE_UNISTD_H || defined _LIBC ++# include ++#endif ++ ++#include ++ ++#ifdef _LIBC ++ /* Guess whether integer division by zero raises signal SIGFPE. ++ Set to 1 only if you know for sure. In case of doubt, set to 0. */ ++# if defined __alpha__ || defined __arm__ || defined __i386__ \ ++ || defined __m68k__ || defined __s390__ ++# define INTDIV0_RAISES_SIGFPE 1 ++# else ++# define INTDIV0_RAISES_SIGFPE 0 ++# endif ++#endif ++#if !INTDIV0_RAISES_SIGFPE ++# include ++#endif ++ ++#if defined HAVE_SYS_PARAM_H || defined _LIBC ++# include ++#endif ++ ++#include "gettextP.h" ++#include "plural-exp.h" ++#ifdef _LIBC ++# include ++#else ++# include "libgnuintl.h" ++#endif ++#include "hash-string.h" ++ ++/* Thread safetyness. */ ++#ifdef _LIBC ++# include ++#else ++/* Provide dummy implementation if this is outside glibc. */ ++# define __libc_lock_define_initialized(CLASS, NAME) ++# define __libc_lock_lock(NAME) ++# define __libc_lock_unlock(NAME) ++# define __libc_rwlock_define_initialized(CLASS, NAME) ++# define __libc_rwlock_rdlock(NAME) ++# define __libc_rwlock_unlock(NAME) ++#endif ++ ++/* Alignment of types. */ ++#if defined __GNUC__ && __GNUC__ >= 2 ++# define alignof(TYPE) __alignof__ (TYPE) ++#else ++# define alignof(TYPE) \ ++ ((int) &((struct { char dummy1; TYPE dummy2; } *) 0)->dummy2) ++#endif ++ ++/* The internal variables in the standalone libintl.a must have different ++ names than the internal variables in GNU libc, otherwise programs ++ using libintl.a cannot be linked statically. */ ++#if !defined _LIBC ++# define _nl_default_default_domain libintl_nl_default_default_domain ++# define _nl_current_default_domain libintl_nl_current_default_domain ++# define _nl_default_dirname libintl_nl_default_dirname ++# define _nl_domain_bindings libintl_nl_domain_bindings ++#endif ++ ++/* Some compilers, like SunOS4 cc, don't have offsetof in . */ ++#ifndef offsetof ++# define offsetof(type,ident) ((size_t)&(((type*)0)->ident)) ++#endif ++ ++/* @@ end of prolog @@ */ ++ ++#ifdef _LIBC ++/* Rename the non ANSI C functions. This is required by the standard ++ because some ANSI C functions will require linking with this object ++ file and the name space must not be polluted. */ ++# define getcwd __getcwd ++# ifndef stpcpy ++# define stpcpy __stpcpy ++# endif ++# define tfind __tfind ++#else ++# if !defined HAVE_GETCWD ++char *getwd (); ++# define getcwd(buf, max) getwd (buf) ++# else ++# if VMS ++# define getcwd(buf, max) (getcwd) (buf, max, 0) ++# else ++char *getcwd (); ++# endif ++# endif ++# ifndef HAVE_STPCPY ++static char *stpcpy (char *dest, const char *src); ++# endif ++# ifndef HAVE_MEMPCPY ++static void *mempcpy (void *dest, const void *src, size_t n); ++# endif ++#endif ++ ++/* Amount to increase buffer size by in each try. */ ++#define PATH_INCR 32 ++ ++/* The following is from pathmax.h. */ ++/* Non-POSIX BSD systems might have gcc's limits.h, which doesn't define ++ PATH_MAX but might cause redefinition warnings when sys/param.h is ++ later included (as on MORE/BSD 4.3). */ ++#if defined _POSIX_VERSION || (defined HAVE_LIMITS_H && !defined __GNUC__) ++# include ++#endif ++ ++#ifndef _POSIX_PATH_MAX ++# define _POSIX_PATH_MAX 255 ++#endif ++ ++#if !defined PATH_MAX && defined _PC_PATH_MAX ++# define PATH_MAX (pathconf ("/", _PC_PATH_MAX) < 1 ? 1024 : pathconf ("/", _PC_PATH_MAX)) ++#endif ++ ++/* Don't include sys/param.h if it already has been. */ ++#if defined HAVE_SYS_PARAM_H && !defined PATH_MAX && !defined MAXPATHLEN ++# include ++#endif ++ ++#if !defined PATH_MAX && defined MAXPATHLEN ++# define PATH_MAX MAXPATHLEN ++#endif ++ ++#ifndef PATH_MAX ++# define PATH_MAX _POSIX_PATH_MAX ++#endif ++ ++/* Pathname support. ++ ISSLASH(C) tests whether C is a directory separator character. ++ IS_ABSOLUTE_PATH(P) tests whether P is an absolute path. If it is not, ++ it may be concatenated to a directory pathname. ++ IS_PATH_WITH_DIR(P) tests whether P contains a directory specification. ++ */ ++#if defined _WIN32 || defined __WIN32__ || defined __EMX__ || defined __DJGPP__ ++ /* Win32, OS/2, DOS */ ++# define ISSLASH(C) ((C) == '/' || (C) == '\\') ++# define HAS_DEVICE(P) \ ++ ((((P)[0] >= 'A' && (P)[0] <= 'Z') || ((P)[0] >= 'a' && (P)[0] <= 'z')) \ ++ && (P)[1] == ':') ++# define IS_ABSOLUTE_PATH(P) (ISSLASH ((P)[0]) || HAS_DEVICE (P)) ++# define IS_PATH_WITH_DIR(P) \ ++ (strchr (P, '/') != NULL || strchr (P, '\\') != NULL || HAS_DEVICE (P)) ++#else ++ /* Unix */ ++# define ISSLASH(C) ((C) == '/') ++# define IS_ABSOLUTE_PATH(P) ISSLASH ((P)[0]) ++# define IS_PATH_WITH_DIR(P) (strchr (P, '/') != NULL) ++#endif ++ ++/* This is the type used for the search tree where known translations ++ are stored. */ ++struct known_translation_t ++{ ++ /* Domain in which to search. */ ++ char *domainname; ++ ++ /* The category. */ ++ int category; ++ ++ /* State of the catalog counter at the point the string was found. */ ++ int counter; ++ ++ /* Catalog where the string was found. */ ++ struct loaded_l10nfile *domain; ++ ++ /* And finally the translation. */ ++ const char *translation; ++ size_t translation_length; ++ ++ /* Pointer to the string in question. */ ++ char msgid[ZERO]; ++}; ++ ++/* Root of the search tree with known translations. We can use this ++ only if the system provides the `tsearch' function family. */ ++#if defined HAVE_TSEARCH || defined _LIBC ++# include ++ ++static void *root; ++ ++# ifdef _LIBC ++# define tsearch __tsearch ++# endif ++ ++/* Function to compare two entries in the table of known translations. */ ++static int ++transcmp (const void *p1, const void *p2) ++{ ++ const struct known_translation_t *s1; ++ const struct known_translation_t *s2; ++ int result; ++ ++ s1 = (const struct known_translation_t *) p1; ++ s2 = (const struct known_translation_t *) p2; ++ ++ result = strcmp (s1->msgid, s2->msgid); ++ if (result == 0) ++ { ++ result = strcmp (s1->domainname, s2->domainname); ++ if (result == 0) ++ /* We compare the category last (though this is the cheapest ++ operation) since it is hopefully always the same (namely ++ LC_MESSAGES). */ ++ result = s1->category - s2->category; ++ } ++ ++ return result; ++} ++#endif ++ ++#ifndef INTVARDEF ++# define INTVARDEF(name) ++#endif ++#ifndef INTUSE ++# define INTUSE(name) name ++#endif ++ ++/* Name of the default domain used for gettext(3) prior any call to ++ textdomain(3). The default value for this is "messages". */ ++const char _nl_default_default_domain[] attribute_hidden = "messages"; ++ ++/* Value used as the default domain for gettext(3). */ ++const char *_nl_current_default_domain attribute_hidden ++ = _nl_default_default_domain; ++ ++/* Contains the default location of the message catalogs. */ ++#if defined __EMX__ ++extern const char _nl_default_dirname[]; ++#else ++const char _nl_default_dirname[] = LOCALEDIR; ++INTVARDEF (_nl_default_dirname) ++#endif ++ ++/* List with bindings of specific domains created by bindtextdomain() ++ calls. */ ++struct binding *_nl_domain_bindings; ++ ++/* Prototypes for local functions. */ ++static char *plural_lookup (struct loaded_l10nfile *domain, ++ unsigned long int n, ++ const char *translation, size_t translation_len) ++ internal_function; ++static const char *guess_category_value (int category, ++ const char *categoryname) ++ internal_function; ++#ifdef _LIBC ++# include "../locale/localeinfo.h" ++# define category_to_name(category) _nl_category_names[category] ++#else ++static const char *category_to_name (int category) internal_function; ++#endif ++ ++ ++/* For those loosing systems which don't have `alloca' we have to add ++ some additional code emulating it. */ ++#ifdef HAVE_ALLOCA ++/* Nothing has to be done. */ ++# define freea(p) /* nothing */ ++# define ADD_BLOCK(list, address) /* nothing */ ++# define FREE_BLOCKS(list) /* nothing */ ++#else ++struct block_list ++{ ++ void *address; ++ struct block_list *next; ++}; ++# define ADD_BLOCK(list, addr) \ ++ do { \ ++ struct block_list *newp = (struct block_list *) malloc (sizeof (*newp)); \ ++ /* If we cannot get a free block we cannot add the new element to \ ++ the list. */ \ ++ if (newp != NULL) { \ ++ newp->address = (addr); \ ++ newp->next = (list); \ ++ (list) = newp; \ ++ } \ ++ } while (0) ++# define FREE_BLOCKS(list) \ ++ do { \ ++ while (list != NULL) { \ ++ struct block_list *old = list; \ ++ list = list->next; \ ++ free (old->address); \ ++ free (old); \ ++ } \ ++ } while (0) ++# undef alloca ++# define alloca(size) (malloc (size)) ++# define freea(p) free (p) ++#endif /* have alloca */ ++ ++ ++#ifdef _LIBC ++/* List of blocks allocated for translations. */ ++typedef struct transmem_list ++{ ++ struct transmem_list *next; ++ char data[ZERO]; ++} transmem_block_t; ++static struct transmem_list *transmem_list; ++#else ++typedef unsigned char transmem_block_t; ++#endif ++ ++ ++/* Names for the libintl functions are a problem. They must not clash ++ with existing names and they should follow ANSI C. But this source ++ code is also used in GNU C Library where the names have a __ ++ prefix. So we have to make a difference here. */ ++#ifdef _LIBC ++# define DCIGETTEXT __dcigettext ++#else ++# define DCIGETTEXT libintl_dcigettext ++#endif ++ ++/* Lock variable to protect the global data in the gettext implementation. */ ++#ifdef _LIBC ++__libc_rwlock_define_initialized (, _nl_state_lock attribute_hidden) ++#endif ++ ++/* Checking whether the binaries runs SUID must be done and glibc provides ++ easier methods therefore we make a difference here. */ ++#ifdef _LIBC ++# define ENABLE_SECURE __libc_enable_secure ++# define DETERMINE_SECURE ++#else ++# ifndef HAVE_GETUID ++# define getuid() 0 ++# endif ++# ifndef HAVE_GETGID ++# define getgid() 0 ++# endif ++# ifndef HAVE_GETEUID ++# define geteuid() getuid() ++# endif ++# ifndef HAVE_GETEGID ++# define getegid() getgid() ++# endif ++static int enable_secure; ++# define ENABLE_SECURE (enable_secure == 1) ++# define DETERMINE_SECURE \ ++ if (enable_secure == 0) \ ++ { \ ++ if (getuid () != geteuid () || getgid () != getegid ()) \ ++ enable_secure = 1; \ ++ else \ ++ enable_secure = -1; \ ++ } ++#endif ++ ++/* Get the function to evaluate the plural expression. */ ++#include "eval-plural.h" ++ ++/* Look up MSGID in the DOMAINNAME message catalog for the current ++ CATEGORY locale and, if PLURAL is nonzero, search over string ++ depending on the plural form determined by N. */ ++char * ++DCIGETTEXT (const char *domainname, const char *msgid1, const char *msgid2, ++ int plural, unsigned long int n, int category) ++{ ++#ifndef HAVE_ALLOCA ++ struct block_list *block_list = NULL; ++#endif ++ struct loaded_l10nfile *domain; ++ struct binding *binding; ++ const char *categoryname; ++ const char *categoryvalue; ++ char *dirname, *xdomainname; ++ char *single_locale; ++ char *retval; ++ size_t retlen; ++ int saved_errno; ++#if defined HAVE_TSEARCH || defined _LIBC ++ struct known_translation_t *search; ++ struct known_translation_t **foundp = NULL; ++ size_t msgid_len; ++#endif ++ size_t domainname_len; ++ ++ /* If no real MSGID is given return NULL. */ ++ if (msgid1 == NULL) ++ return NULL; ++ ++#ifdef _LIBC ++ if (category < 0 || category >= __LC_LAST || category == LC_ALL) ++ /* Bogus. */ ++ return (plural == 0 ++ ? (char *) msgid1 ++ /* Use the Germanic plural rule. */ ++ : n == 1 ? (char *) msgid1 : (char *) msgid2); ++#endif ++ ++ __libc_rwlock_rdlock (_nl_state_lock); ++ ++ /* If DOMAINNAME is NULL, we are interested in the default domain. If ++ CATEGORY is not LC_MESSAGES this might not make much sense but the ++ definition left this undefined. */ ++ if (domainname == NULL) ++ domainname = _nl_current_default_domain; ++ ++ /* OS/2 specific: backward compatibility with older libintl versions */ ++#ifdef LC_MESSAGES_COMPAT ++ if (category == LC_MESSAGES_COMPAT) ++ category = LC_MESSAGES; ++#endif ++ ++#if defined HAVE_TSEARCH || defined _LIBC ++ msgid_len = strlen (msgid1) + 1; ++ ++ /* Try to find the translation among those which we found at ++ some time. */ ++ search = (struct known_translation_t *) ++ alloca (offsetof (struct known_translation_t, msgid) + msgid_len); ++ memcpy (search->msgid, msgid1, msgid_len); ++ search->domainname = (char *) domainname; ++ search->category = category; ++ ++ foundp = (struct known_translation_t **) tfind (search, &root, transcmp); ++ freea (search); ++ if (foundp != NULL && (*foundp)->counter == _nl_msg_cat_cntr) ++ { ++ /* Now deal with plural. */ ++ if (plural) ++ retval = plural_lookup ((*foundp)->domain, n, (*foundp)->translation, ++ (*foundp)->translation_length); ++ else ++ retval = (char *) (*foundp)->translation; ++ ++ __libc_rwlock_unlock (_nl_state_lock); ++ return retval; ++ } ++#endif ++ ++ /* Preserve the `errno' value. */ ++ saved_errno = errno; ++ ++ /* See whether this is a SUID binary or not. */ ++ DETERMINE_SECURE; ++ ++ /* First find matching binding. */ ++ for (binding = _nl_domain_bindings; binding != NULL; binding = binding->next) ++ { ++ int compare = strcmp (domainname, binding->domainname); ++ if (compare == 0) ++ /* We found it! */ ++ break; ++ if (compare < 0) ++ { ++ /* It is not in the list. */ ++ binding = NULL; ++ break; ++ } ++ } ++ ++ if (binding == NULL) ++ dirname = (char *) INTUSE(_nl_default_dirname); ++ else if (IS_ABSOLUTE_PATH (binding->dirname)) ++ dirname = binding->dirname; ++ else ++ { ++ /* We have a relative path. Make it absolute now. */ ++ size_t dirname_len = strlen (binding->dirname) + 1; ++ size_t path_max; ++ char *ret; ++ ++ path_max = (unsigned int) PATH_MAX; ++ path_max += 2; /* The getcwd docs say to do this. */ ++ ++ for (;;) ++ { ++ dirname = (char *) alloca (path_max + dirname_len); ++ ADD_BLOCK (block_list, dirname); ++ ++ __set_errno (0); ++ ret = getcwd (dirname, path_max); ++ if (ret != NULL || errno != ERANGE) ++ break; ++ ++ path_max += path_max / 2; ++ path_max += PATH_INCR; ++ } ++ ++ if (ret == NULL) ++ /* We cannot get the current working directory. Don't signal an ++ error but simply return the default string. */ ++ goto return_untranslated; ++ ++ stpcpy (stpcpy (strchr (dirname, '\0'), "/"), binding->dirname); ++ } ++ ++ /* Now determine the symbolic name of CATEGORY and its value. */ ++ categoryname = category_to_name (category); ++ categoryvalue = guess_category_value (category, categoryname); ++ ++ domainname_len = strlen (domainname); ++ xdomainname = (char *) alloca (strlen (categoryname) ++ + domainname_len + 5); ++ ADD_BLOCK (block_list, xdomainname); ++ ++ stpcpy (mempcpy (stpcpy (stpcpy (xdomainname, categoryname), "/"), ++ domainname, domainname_len), ++ ".mo"); ++ ++ /* Creating working area. */ ++ single_locale = (char *) alloca (strlen (categoryvalue) + 1); ++ ADD_BLOCK (block_list, single_locale); ++ ++ ++ /* Search for the given string. This is a loop because we perhaps ++ got an ordered list of languages to consider for the translation. */ ++ while (1) ++ { ++ /* Make CATEGORYVALUE point to the next element of the list. */ ++ while (categoryvalue[0] != '\0' && categoryvalue[0] == ':') ++ ++categoryvalue; ++ if (categoryvalue[0] == '\0') ++ { ++ /* The whole contents of CATEGORYVALUE has been searched but ++ no valid entry has been found. We solve this situation ++ by implicitly appending a "C" entry, i.e. no translation ++ will take place. */ ++ single_locale[0] = 'C'; ++ single_locale[1] = '\0'; ++ } ++ else ++ { ++ char *cp = single_locale; ++ while (categoryvalue[0] != '\0' && categoryvalue[0] != ':') ++ *cp++ = *categoryvalue++; ++ *cp = '\0'; ++ ++ /* When this is a SUID binary we must not allow accessing files ++ outside the dedicated directories. */ ++ if (ENABLE_SECURE && IS_PATH_WITH_DIR (single_locale)) ++ /* Ingore this entry. */ ++ continue; ++ } ++ ++ /* If the current locale value is C (or POSIX) we don't load a ++ domain. Return the MSGID. */ ++ if (strcmp (single_locale, "C") == 0 ++ || strcmp (single_locale, "POSIX") == 0) ++ break; ++ ++ /* Find structure describing the message catalog matching the ++ DOMAINNAME and CATEGORY. */ ++ domain = _nl_find_domain (dirname, single_locale, xdomainname, binding); ++ ++ if (domain != NULL) ++ { ++ retval = _nl_find_msg (domain, binding, msgid1, &retlen); ++ ++ if (retval == NULL) ++ { ++ int cnt; ++ ++ for (cnt = 0; domain->successor[cnt] != NULL; ++cnt) ++ { ++ retval = _nl_find_msg (domain->successor[cnt], binding, ++ msgid1, &retlen); ++ ++ if (retval != NULL) ++ { ++ domain = domain->successor[cnt]; ++ break; ++ } ++ } ++ } ++ ++ if (retval != NULL) ++ { ++ /* Found the translation of MSGID1 in domain DOMAIN: ++ starting at RETVAL, RETLEN bytes. */ ++ FREE_BLOCKS (block_list); ++#if defined HAVE_TSEARCH || defined _LIBC ++ if (foundp == NULL) ++ { ++ /* Create a new entry and add it to the search tree. */ ++ struct known_translation_t *newp; ++ ++ newp = (struct known_translation_t *) ++ malloc (offsetof (struct known_translation_t, msgid) ++ + msgid_len + domainname_len + 1); ++ if (newp != NULL) ++ { ++ newp->domainname = ++ mempcpy (newp->msgid, msgid1, msgid_len); ++ memcpy (newp->domainname, domainname, domainname_len + 1); ++ newp->category = category; ++ newp->counter = _nl_msg_cat_cntr; ++ newp->domain = domain; ++ newp->translation = retval; ++ newp->translation_length = retlen; ++ ++ /* Insert the entry in the search tree. */ ++ foundp = (struct known_translation_t **) ++ tsearch (newp, &root, transcmp); ++ if (foundp == NULL ++ || __builtin_expect (*foundp != newp, 0)) ++ /* The insert failed. */ ++ free (newp); ++ } ++ } ++ else ++ { ++ /* We can update the existing entry. */ ++ (*foundp)->counter = _nl_msg_cat_cntr; ++ (*foundp)->domain = domain; ++ (*foundp)->translation = retval; ++ (*foundp)->translation_length = retlen; ++ } ++#endif ++ __set_errno (saved_errno); ++ ++ /* Now deal with plural. */ ++ if (plural) ++ retval = plural_lookup (domain, n, retval, retlen); ++ ++ __libc_rwlock_unlock (_nl_state_lock); ++ return retval; ++ } ++ } ++ } ++ ++ return_untranslated: ++ /* Return the untranslated MSGID. */ ++ FREE_BLOCKS (block_list); ++ __libc_rwlock_unlock (_nl_state_lock); ++#ifndef _LIBC ++ if (!ENABLE_SECURE) ++ { ++ extern void _nl_log_untranslated (const char *logfilename, ++ const char *domainname, ++ const char *msgid1, const char *msgid2, ++ int plural); ++ const char *logfilename = getenv ("GETTEXT_LOG_UNTRANSLATED"); ++ ++ if (logfilename != NULL && logfilename[0] != '\0') ++ _nl_log_untranslated (logfilename, domainname, msgid1, msgid2, plural); ++ } ++#endif ++ __set_errno (saved_errno); ++ return (plural == 0 ++ ? (char *) msgid1 ++ /* Use the Germanic plural rule. */ ++ : n == 1 ? (char *) msgid1 : (char *) msgid2); ++} ++ ++ ++char * ++internal_function ++_nl_find_msg (struct loaded_l10nfile *domain_file, ++ struct binding *domainbinding, const char *msgid, ++ size_t *lengthp) ++{ ++ struct loaded_domain *domain; ++ nls_uint32 nstrings; ++ size_t act; ++ char *result; ++ size_t resultlen; ++ ++ if (domain_file->decided == 0) ++ _nl_load_domain (domain_file, domainbinding); ++ ++ if (domain_file->data == NULL) ++ return NULL; ++ ++ domain = (struct loaded_domain *) domain_file->data; ++ ++ nstrings = domain->nstrings; ++ ++ /* Locate the MSGID and its translation. */ ++ if (domain->hash_tab != NULL) ++ { ++ /* Use the hashing table. */ ++ nls_uint32 len = strlen (msgid); ++ nls_uint32 hash_val = hash_string (msgid); ++ nls_uint32 idx = hash_val % domain->hash_size; ++ nls_uint32 incr = 1 + (hash_val % (domain->hash_size - 2)); ++ ++ while (1) ++ { ++ nls_uint32 nstr = ++ W (domain->must_swap_hash_tab, domain->hash_tab[idx]); ++ ++ if (nstr == 0) ++ /* Hash table entry is empty. */ ++ return NULL; ++ ++ nstr--; ++ ++ /* Compare msgid with the original string at index nstr. ++ We compare the lengths with >=, not ==, because plural entries ++ are represented by strings with an embedded NUL. */ ++ if (nstr < nstrings ++ ? W (domain->must_swap, domain->orig_tab[nstr].length) >= len ++ && (strcmp (msgid, ++ domain->data + W (domain->must_swap, ++ domain->orig_tab[nstr].offset)) ++ == 0) ++ : domain->orig_sysdep_tab[nstr - nstrings].length > len ++ && (strcmp (msgid, ++ domain->orig_sysdep_tab[nstr - nstrings].pointer) ++ == 0)) ++ { ++ act = nstr; ++ goto found; ++ } ++ ++ if (idx >= domain->hash_size - incr) ++ idx -= domain->hash_size - incr; ++ else ++ idx += incr; ++ } ++ /* NOTREACHED */ ++ } ++ else ++ { ++ /* Try the default method: binary search in the sorted array of ++ messages. */ ++ size_t top, bottom; ++ ++ bottom = 0; ++ top = nstrings; ++ while (bottom < top) ++ { ++ int cmp_val; ++ ++ act = (bottom + top) / 2; ++ cmp_val = strcmp (msgid, (domain->data ++ + W (domain->must_swap, ++ domain->orig_tab[act].offset))); ++ if (cmp_val < 0) ++ top = act; ++ else if (cmp_val > 0) ++ bottom = act + 1; ++ else ++ goto found; ++ } ++ /* No translation was found. */ ++ return NULL; ++ } ++ ++ found: ++ /* The translation was found at index ACT. If we have to convert the ++ string to use a different character set, this is the time. */ ++ if (act < nstrings) ++ { ++ result = (char *) ++ (domain->data + W (domain->must_swap, domain->trans_tab[act].offset)); ++ resultlen = W (domain->must_swap, domain->trans_tab[act].length) + 1; ++ } ++ else ++ { ++ result = (char *) domain->trans_sysdep_tab[act - nstrings].pointer; ++ resultlen = domain->trans_sysdep_tab[act - nstrings].length; ++ } ++ ++#if defined _LIBC || HAVE_ICONV ++ if (domain->codeset_cntr ++ != (domainbinding != NULL ? domainbinding->codeset_cntr : 0)) ++ { ++ /* The domain's codeset has changed through bind_textdomain_codeset() ++ since the message catalog was initialized or last accessed. We ++ have to reinitialize the converter. */ ++ _nl_free_domain_conv (domain); ++ _nl_init_domain_conv (domain_file, domain, domainbinding); ++ } ++ ++ if ( ++# ifdef _LIBC ++ domain->conv != (__gconv_t) -1 ++# else ++# if HAVE_ICONV ++ domain->conv != (iconv_t) -1 ++# endif ++# endif ++ ) ++ { ++ /* We are supposed to do a conversion. First allocate an ++ appropriate table with the same structure as the table ++ of translations in the file, where we can put the pointers ++ to the converted strings in. ++ There is a slight complication with plural entries. They ++ are represented by consecutive NUL terminated strings. We ++ handle this case by converting RESULTLEN bytes, including ++ NULs. */ ++ ++ if (domain->conv_tab == NULL ++ && ((domain->conv_tab = ++ (char **) calloc (nstrings + domain->n_sysdep_strings, ++ sizeof (char *))) ++ == NULL)) ++ /* Mark that we didn't succeed allocating a table. */ ++ domain->conv_tab = (char **) -1; ++ ++ if (__builtin_expect (domain->conv_tab == (char **) -1, 0)) ++ /* Nothing we can do, no more memory. */ ++ goto converted; ++ ++ if (domain->conv_tab[act] == NULL) ++ { ++ /* We haven't used this string so far, so it is not ++ translated yet. Do this now. */ ++ /* We use a bit more efficient memory handling. ++ We allocate always larger blocks which get used over ++ time. This is faster than many small allocations. */ ++ __libc_lock_define_initialized (static, lock) ++# define INITIAL_BLOCK_SIZE 4080 ++ static unsigned char *freemem; ++ static size_t freemem_size; ++ ++ const unsigned char *inbuf; ++ unsigned char *outbuf; ++ int malloc_count; ++# ifndef _LIBC ++ transmem_block_t *transmem_list = NULL; ++# endif ++ ++ __libc_lock_lock (lock); ++ ++ inbuf = (const unsigned char *) result; ++ outbuf = freemem + sizeof (size_t); ++ ++ malloc_count = 0; ++ while (1) ++ { ++ transmem_block_t *newmem; ++# ifdef _LIBC ++ size_t non_reversible; ++ int res; ++ ++ if (freemem_size < sizeof (size_t)) ++ goto resize_freemem; ++ ++ res = __gconv (domain->conv, ++ &inbuf, inbuf + resultlen, ++ &outbuf, ++ outbuf + freemem_size - sizeof (size_t), ++ &non_reversible); ++ ++ if (res == __GCONV_OK || res == __GCONV_EMPTY_INPUT) ++ break; ++ ++ if (res != __GCONV_FULL_OUTPUT) ++ { ++ __libc_lock_unlock (lock); ++ goto converted; ++ } ++ ++ inbuf = result; ++# else ++# if HAVE_ICONV ++ const char *inptr = (const char *) inbuf; ++ size_t inleft = resultlen; ++ char *outptr = (char *) outbuf; ++ size_t outleft; ++ ++ if (freemem_size < sizeof (size_t)) ++ goto resize_freemem; ++ ++ outleft = freemem_size - sizeof (size_t); ++ if (iconv (domain->conv, ++ (ICONV_CONST char **) &inptr, &inleft, ++ &outptr, &outleft) ++ != (size_t) (-1)) ++ { ++ outbuf = (unsigned char *) outptr; ++ break; ++ } ++ if (errno != E2BIG) ++ { ++ __libc_lock_unlock (lock); ++ goto converted; ++ } ++# endif ++# endif ++ ++ resize_freemem: ++ /* We must allocate a new buffer or resize the old one. */ ++ if (malloc_count > 0) ++ { ++ ++malloc_count; ++ freemem_size = malloc_count * INITIAL_BLOCK_SIZE; ++ newmem = (transmem_block_t *) realloc (transmem_list, ++ freemem_size); ++# ifdef _LIBC ++ if (newmem != NULL) ++ transmem_list = transmem_list->next; ++ else ++ { ++ struct transmem_list *old = transmem_list; ++ ++ transmem_list = transmem_list->next; ++ free (old); ++ } ++# endif ++ } ++ else ++ { ++ malloc_count = 1; ++ freemem_size = INITIAL_BLOCK_SIZE; ++ newmem = (transmem_block_t *) malloc (freemem_size); ++ } ++ if (__builtin_expect (newmem == NULL, 0)) ++ { ++ freemem = NULL; ++ freemem_size = 0; ++ __libc_lock_unlock (lock); ++ goto converted; ++ } ++ ++# ifdef _LIBC ++ /* Add the block to the list of blocks we have to free ++ at some point. */ ++ newmem->next = transmem_list; ++ transmem_list = newmem; ++ ++ freemem = newmem->data; ++ freemem_size -= offsetof (struct transmem_list, data); ++# else ++ transmem_list = newmem; ++ freemem = newmem; ++# endif ++ ++ outbuf = freemem + sizeof (size_t); ++ } ++ ++ /* We have now in our buffer a converted string. Put this ++ into the table of conversions. */ ++ *(size_t *) freemem = outbuf - freemem - sizeof (size_t); ++ domain->conv_tab[act] = (char *) freemem; ++ /* Shrink freemem, but keep it aligned. */ ++ freemem_size -= outbuf - freemem; ++ freemem = outbuf; ++ freemem += freemem_size & (alignof (size_t) - 1); ++ freemem_size = freemem_size & ~ (alignof (size_t) - 1); ++ ++ __libc_lock_unlock (lock); ++ } ++ ++ /* Now domain->conv_tab[act] contains the translation of all ++ the plural variants. */ ++ result = domain->conv_tab[act] + sizeof (size_t); ++ resultlen = *(size_t *) domain->conv_tab[act]; ++ } ++ ++ converted: ++ /* The result string is converted. */ ++ ++#endif /* _LIBC || HAVE_ICONV */ ++ ++ *lengthp = resultlen; ++ return result; ++} ++ ++ ++/* Look up a plural variant. */ ++static char * ++internal_function ++plural_lookup (struct loaded_l10nfile *domain, unsigned long int n, ++ const char *translation, size_t translation_len) ++{ ++ struct loaded_domain *domaindata = (struct loaded_domain *) domain->data; ++ unsigned long int index; ++ const char *p; ++ ++ index = plural_eval (domaindata->plural, n); ++ if (index >= domaindata->nplurals) ++ /* This should never happen. It means the plural expression and the ++ given maximum value do not match. */ ++ index = 0; ++ ++ /* Skip INDEX strings at TRANSLATION. */ ++ p = translation; ++ while (index-- > 0) ++ { ++#ifdef _LIBC ++ p = __rawmemchr (p, '\0'); ++#else ++ p = strchr (p, '\0'); ++#endif ++ /* And skip over the NUL byte. */ ++ p++; ++ ++ if (p >= translation + translation_len) ++ /* This should never happen. It means the plural expression ++ evaluated to a value larger than the number of variants ++ available for MSGID1. */ ++ return (char *) translation; ++ } ++ return (char *) p; ++} ++ ++#ifndef _LIBC ++/* Return string representation of locale CATEGORY. */ ++static const char * ++internal_function ++category_to_name (int category) ++{ ++ const char *retval; ++ ++ switch (category) ++ { ++#ifdef LC_COLLATE ++ case LC_COLLATE: ++ retval = "LC_COLLATE"; ++ break; ++#endif ++#ifdef LC_CTYPE ++ case LC_CTYPE: ++ retval = "LC_CTYPE"; ++ break; ++#endif ++#ifdef LC_MONETARY ++ case LC_MONETARY: ++ retval = "LC_MONETARY"; ++ break; ++#endif ++#ifdef LC_NUMERIC ++ case LC_NUMERIC: ++ retval = "LC_NUMERIC"; ++ break; ++#endif ++#ifdef LC_TIME ++ case LC_TIME: ++ retval = "LC_TIME"; ++ break; ++#endif ++#ifdef LC_MESSAGES ++ case LC_MESSAGES: ++ retval = "LC_MESSAGES"; ++ break; ++#endif ++#ifdef LC_RESPONSE ++ case LC_RESPONSE: ++ retval = "LC_RESPONSE"; ++ break; ++#endif ++#ifdef LC_ALL ++ case LC_ALL: ++ /* This might not make sense but is perhaps better than any other ++ value. */ ++ retval = "LC_ALL"; ++ break; ++#endif ++ default: ++ /* If you have a better idea for a default value let me know. */ ++ retval = "LC_XXX"; ++ } ++ ++ return retval; ++} ++#endif ++ ++/* Guess value of current locale from value of the environment variables. */ ++static const char * ++internal_function ++guess_category_value (int category, const char *categoryname) ++{ ++ const char *language; ++ const char *retval; ++ ++ /* The highest priority value is the `LANGUAGE' environment ++ variable. But we don't use the value if the currently selected ++ locale is the C locale. This is a GNU extension. */ ++ language = getenv ("LANGUAGE"); ++ if (language != NULL && language[0] == '\0') ++ language = NULL; ++ ++ /* We have to proceed with the POSIX methods of looking to `LC_ALL', ++ `LC_xxx', and `LANG'. On some systems this can be done by the ++ `setlocale' function itself. */ ++#ifdef _LIBC ++ retval = __current_locale_name (category); ++#else ++ retval = _nl_locale_name (category, categoryname); ++#endif ++ ++ /* Ignore LANGUAGE if the locale is set to "C" because ++ 1. "C" locale usually uses the ASCII encoding, and most international ++ messages use non-ASCII characters. These characters get displayed ++ as question marks (if using glibc's iconv()) or as invalid 8-bit ++ characters (because other iconv()s refuse to convert most non-ASCII ++ characters to ASCII). In any case, the output is ugly. ++ 2. The precise output of some programs in the "C" locale is specified ++ by POSIX and should not depend on environment variables like ++ "LANGUAGE". We allow such programs to use gettext(). */ ++ return language != NULL && strcmp (retval, "C") != 0 ? language : retval; ++} ++ ++/* @@ begin of epilog @@ */ ++ ++/* We don't want libintl.a to depend on any other library. So we ++ avoid the non-standard function stpcpy. In GNU C Library this ++ function is available, though. Also allow the symbol HAVE_STPCPY ++ to be defined. */ ++#if !_LIBC && !HAVE_STPCPY ++static char * ++stpcpy (char *dest, const char *src) ++{ ++ while ((*dest++ = *src++) != '\0') ++ /* Do nothing. */ ; ++ return dest - 1; ++} ++#endif ++ ++#if !_LIBC && !HAVE_MEMPCPY ++static void * ++mempcpy (void *dest, const void *src, size_t n) ++{ ++ return (void *) ((char *) memcpy (dest, src, n) + n); ++} ++#endif ++ ++ ++#ifdef _LIBC ++/* If we want to free all resources we have to do some work at ++ program's end. */ ++libc_freeres_fn (free_mem) ++{ ++ void *old; ++ ++ while (_nl_domain_bindings != NULL) ++ { ++ struct binding *oldp = _nl_domain_bindings; ++ _nl_domain_bindings = _nl_domain_bindings->next; ++ if (oldp->dirname != INTUSE(_nl_default_dirname)) ++ /* Yes, this is a pointer comparison. */ ++ free (oldp->dirname); ++ free (oldp->codeset); ++ free (oldp); ++ } ++ ++ if (_nl_current_default_domain != _nl_default_default_domain) ++ /* Yes, again a pointer comparison. */ ++ free ((char *) _nl_current_default_domain); ++ ++ /* Remove the search tree with the known translations. */ ++ __tdestroy (root, free); ++ root = NULL; ++ ++ while (transmem_list != NULL) ++ { ++ old = transmem_list; ++ transmem_list = transmem_list->next; ++ free (old); ++ } ++} ++#endif +--- lrzsz-0.12.20.safe/intl/dcngettext.c 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/dcngettext.c 2004-09-12 14:40:34.375745048 -0400 +@@ -0,0 +1,57 @@ ++/* Implementation of the dcngettext(3) function. ++ Copyright (C) 1995-1999, 2000-2003 Free Software Foundation, Inc. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++#ifdef HAVE_CONFIG_H ++# include ++#endif ++ ++#include "gettextP.h" ++#ifdef _LIBC ++# include ++#else ++# include "libgnuintl.h" ++#endif ++ ++/* @@ end of prolog @@ */ ++ ++/* Names for the libintl functions are a problem. They must not clash ++ with existing names and they should follow ANSI C. But this source ++ code is also used in GNU C Library where the names have a __ ++ prefix. So we have to make a difference here. */ ++#ifdef _LIBC ++# define DCNGETTEXT __dcngettext ++# define DCIGETTEXT __dcigettext ++#else ++# define DCNGETTEXT libintl_dcngettext ++# define DCIGETTEXT libintl_dcigettext ++#endif ++ ++/* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY ++ locale. */ ++char * ++DCNGETTEXT (const char *domainname, ++ const char *msgid1, const char *msgid2, unsigned long int n, ++ int category) ++{ ++ return DCIGETTEXT (domainname, msgid1, msgid2, 1, n, category); ++} ++ ++#ifdef _LIBC ++/* Alias for function name in GNU C Library. */ ++weak_alias (__dcngettext, dcngettext); ++#endif +--- lrzsz-0.12.20.safe/intl/dgettext.c 1998-04-26 09:20:52.000000000 -0400 ++++ lrzsz-0.12.20/intl/dgettext.c 2004-09-12 14:40:34.380744288 -0400 +@@ -1,32 +1,33 @@ +-/* dgettext.c -- implementation of the dgettext(3) function +- Copyright (C) 1995 Software Foundation, Inc. ++/* Implementation of the dgettext(3) function. ++ Copyright (C) 1995-1997, 2000-2003 Free Software Foundation, Inc. + +-This program is free software; you can redistribute it and/or modify +-it under the terms of the GNU General Public License as published by +-the Free Software Foundation; either version 2, or (at your option) +-any later version. ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. + +-This program is distributed in the hope that it will be useful, +-but WITHOUT ANY WARRANTY; without even the implied warranty of +-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-GNU General Public License for more details. ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. + +-You should have received a copy of the GNU General Public License +-along with this program; if not, write to the Free Software +-Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ + + #ifdef HAVE_CONFIG_H + # include + #endif + +-#if defined HAVE_LOCALE_H || defined _LIBC +-# include +-#endif ++#include "gettextP.h" ++ ++#include + + #ifdef _LIBC + # include + #else +-# include "libgettext.h" ++# include "libgnuintl.h" + #endif + + /* @@ end of prolog @@ */ +@@ -37,18 +38,16 @@ + prefix. So we have to make a difference here. */ + #ifdef _LIBC + # define DGETTEXT __dgettext +-# define DCGETTEXT __dcgettext ++# define DCGETTEXT INTUSE(__dcgettext) + #else +-# define DGETTEXT dgettext__ +-# define DCGETTEXT dcgettext__ ++# define DGETTEXT libintl_dgettext ++# define DCGETTEXT libintl_dcgettext + #endif + + /* Look up MSGID in the DOMAINNAME message catalog of the current + LC_MESSAGES locale. */ + char * +-DGETTEXT (domainname, msgid) +- const char *domainname; +- const char *msgid; ++DGETTEXT (const char *domainname, const char *msgid) + { + return DCGETTEXT (domainname, msgid, LC_MESSAGES); + } +--- lrzsz-0.12.20.safe/intl/dngettext.c 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/dngettext.c 2004-09-12 14:40:34.385743528 -0400 +@@ -0,0 +1,59 @@ ++/* Implementation of the dngettext(3) function. ++ Copyright (C) 1995-1997, 2000-2003 Free Software Foundation, Inc. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++#ifdef HAVE_CONFIG_H ++# include ++#endif ++ ++#include "gettextP.h" ++ ++#include ++ ++#ifdef _LIBC ++# include ++#else ++# include "libgnuintl.h" ++#endif ++ ++/* @@ end of prolog @@ */ ++ ++/* Names for the libintl functions are a problem. They must not clash ++ with existing names and they should follow ANSI C. But this source ++ code is also used in GNU C Library where the names have a __ ++ prefix. So we have to make a difference here. */ ++#ifdef _LIBC ++# define DNGETTEXT __dngettext ++# define DCNGETTEXT __dcngettext ++#else ++# define DNGETTEXT libintl_dngettext ++# define DCNGETTEXT libintl_dcngettext ++#endif ++ ++/* Look up MSGID in the DOMAINNAME message catalog of the current ++ LC_MESSAGES locale and skip message according to the plural form. */ ++char * ++DNGETTEXT (const char *domainname, ++ const char *msgid1, const char *msgid2, unsigned long int n) ++{ ++ return DCNGETTEXT (domainname, msgid1, msgid2, n, LC_MESSAGES); ++} ++ ++#ifdef _LIBC ++/* Alias for function name in GNU C Library. */ ++weak_alias (__dngettext, dngettext); ++#endif +--- lrzsz-0.12.20.safe/intl/eval-plural.h 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/eval-plural.h 2004-09-12 14:40:34.390742768 -0400 +@@ -0,0 +1,108 @@ ++/* Plural expression evaluation. ++ Copyright (C) 2000-2003 Free Software Foundation, Inc. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++#ifndef STATIC ++#define STATIC static ++#endif ++ ++/* Evaluate the plural expression and return an index value. */ ++STATIC ++unsigned long int ++internal_function ++plural_eval (struct expression *pexp, unsigned long int n) ++{ ++ switch (pexp->nargs) ++ { ++ case 0: ++ switch (pexp->operation) ++ { ++ case var: ++ return n; ++ case num: ++ return pexp->val.num; ++ default: ++ break; ++ } ++ /* NOTREACHED */ ++ break; ++ case 1: ++ { ++ /* pexp->operation must be lnot. */ ++ unsigned long int arg = plural_eval (pexp->val.args[0], n); ++ return ! arg; ++ } ++ case 2: ++ { ++ unsigned long int leftarg = plural_eval (pexp->val.args[0], n); ++ if (pexp->operation == lor) ++ return leftarg || plural_eval (pexp->val.args[1], n); ++ else if (pexp->operation == land) ++ return leftarg && plural_eval (pexp->val.args[1], n); ++ else ++ { ++ unsigned long int rightarg = plural_eval (pexp->val.args[1], n); ++ ++ switch (pexp->operation) ++ { ++ case mult: ++ return leftarg * rightarg; ++ case divide: ++#if !INTDIV0_RAISES_SIGFPE ++ if (rightarg == 0) ++ raise (SIGFPE); ++#endif ++ return leftarg / rightarg; ++ case module: ++#if !INTDIV0_RAISES_SIGFPE ++ if (rightarg == 0) ++ raise (SIGFPE); ++#endif ++ return leftarg % rightarg; ++ case plus: ++ return leftarg + rightarg; ++ case minus: ++ return leftarg - rightarg; ++ case less_than: ++ return leftarg < rightarg; ++ case greater_than: ++ return leftarg > rightarg; ++ case less_or_equal: ++ return leftarg <= rightarg; ++ case greater_or_equal: ++ return leftarg >= rightarg; ++ case equal: ++ return leftarg == rightarg; ++ case not_equal: ++ return leftarg != rightarg; ++ default: ++ break; ++ } ++ } ++ /* NOTREACHED */ ++ break; ++ } ++ case 3: ++ { ++ /* pexp->operation must be qmop. */ ++ unsigned long int boolarg = plural_eval (pexp->val.args[0], n); ++ return plural_eval (pexp->val.args[boolarg ? 1 : 2], n); ++ } ++ } ++ /* NOTREACHED */ ++ return 0; ++} +--- lrzsz-0.12.20.safe/intl/explodename.c 1998-04-26 09:22:37.000000000 -0400 ++++ lrzsz-0.12.20/intl/explodename.c 2004-09-12 14:40:34.395742008 -0400 +@@ -1,19 +1,20 @@ +-/* Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. ++/* Copyright (C) 1995-1998, 2000-2001, 2003 Free Software Foundation, Inc. + Contributed by Ulrich Drepper , 1995. + +- This program is free software; you can redistribute it and/or modify +- it under the terms of the GNU General Public License as published by +- the Free Software Foundation; either version 2, or (at your option) ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +- GNU General Public License for more details. ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. + +- You should have received a copy of the GNU General Public License +- along with this program; if not, write to the Free Software Foundation, +- Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ + + #ifdef HAVE_CONFIG_H + # include +@@ -36,18 +37,23 @@ + + /* @@ end of prolog @@ */ + ++char * ++_nl_find_language (const char *name) ++{ ++ while (name[0] != '\0' && name[0] != '_' && name[0] != '@' ++ && name[0] != '+' && name[0] != ',') ++ ++name; ++ ++ return (char *) name; ++} ++ ++ + int +-_nl_explode_name (name, language, modifier, territory, codeset, +- normalized_codeset, special, sponsor, revision) +- char *name; +- const char **language; +- const char **modifier; +- const char **territory; +- const char **codeset; +- const char **normalized_codeset; +- const char **special; +- const char **sponsor; +- const char **revision; ++_nl_explode_name (char *name, ++ const char **language, const char **modifier, ++ const char **territory, const char **codeset, ++ const char **normalized_codeset, const char **special, ++ const char **sponsor, const char **revision) + { + enum { undecided, xpg, cen } syntax; + char *cp; +@@ -67,9 +73,7 @@ + mask = 0; + syntax = undecided; + *language = cp = name; +- while (cp[0] != '\0' && cp[0] != '_' && cp[0] != '@' +- && cp[0] != '+' && cp[0] != ',') +- ++cp; ++ cp = _nl_find_language (*language); + + if (*language == cp) + /* This does not make sense: language has to be specified. Use +--- lrzsz-0.12.20.safe/intl/finddomain.c 1998-04-26 09:22:36.000000000 -0400 ++++ lrzsz-0.12.20/intl/finddomain.c 2004-09-12 14:40:34.415738968 -0400 +@@ -1,64 +1,40 @@ + /* Handle list of needed message catalogs +- Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. +- Written by Ulrich Drepper , 1995. ++ Copyright (C) 1995-1999, 2000-2001, 2003 Free Software Foundation, Inc. ++ Written by Ulrich Drepper , 1995. + +- This program is free software; you can redistribute it and/or modify +- it under the terms of the GNU General Public License as published by +- the Free Software Foundation; either version 2, or (at your option) ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +- GNU General Public License for more details. ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. + +- You should have received a copy of the GNU General Public License +- along with this program; if not, write to the Free Software Foundation, +- Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ + + #ifdef HAVE_CONFIG_H + # include + #endif + +-#include +-#include + #include + #include +- +-#if defined STDC_HEADERS || defined _LIBC +-# include +-#else +-# ifdef HAVE_MALLOC_H +-# include +-# else +-void free (); +-# endif +-#endif +- +-#if defined HAVE_STRING_H || defined _LIBC +-# include +-#else +-# include +-# ifndef memcpy +-# define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num) +-# endif +-#endif +-#if !HAVE_STRCHR && !defined _LIBC +-# ifndef strchr +-# define strchr index +-# endif +-#endif ++#include ++#include + + #if defined HAVE_UNISTD_H || defined _LIBC + # include + #endif + +-#include "gettext.h" + #include "gettextP.h" + #ifdef _LIBC + # include + #else +-# include "libgettext.h" ++# include "libgnuintl.h" + #endif + + /* @@ end of prolog @@ */ +@@ -70,10 +46,9 @@ + the DOMAINNAME and CATEGORY parameters with respect to the currently + established bindings. */ + struct loaded_l10nfile * +-_nl_find_domain (dirname, locale, domainname) +- const char *dirname; +- char *locale; +- const char *domainname; ++internal_function ++_nl_find_domain (const char *dirname, char *locale, ++ const char *domainname, struct binding *domainbinding) + { + struct loaded_l10nfile *retval; + const char *language; +@@ -95,9 +70,9 @@ + + language[_territory][+audience][+special][,[sponsor][_revision]] + +- Beside the first all of them are allowed to be missing. If the +- full specified locale is not found, the less specific one are +- looked for. The various part will be stripped of according to ++ Beside the first part all of them are allowed to be missing. If ++ the full specified locale is not found, the less specific one are ++ looked for. The various parts will be stripped off according to + the following order: + (1) revision + (2) sponsor +@@ -119,7 +94,7 @@ + int cnt; + + if (retval->decided == 0) +- _nl_load_domain (retval); ++ _nl_load_domain (retval, domainbinding); + + if (retval->data != NULL) + return retval; +@@ -127,7 +102,7 @@ + for (cnt = 0; retval->successor[cnt] != NULL; ++cnt) + { + if (retval->successor[cnt]->decided == 0) +- _nl_load_domain (retval->successor[cnt]); ++ _nl_load_domain (retval->successor[cnt], domainbinding); + + if (retval->successor[cnt]->data != NULL) + break; +@@ -142,12 +117,18 @@ + alias_value = _nl_expand_alias (locale); + if (alias_value != NULL) + { ++#if defined _LIBC || defined HAVE_STRDUP ++ locale = strdup (alias_value); ++ if (locale == NULL) ++ return NULL; ++#else + size_t len = strlen (alias_value) + 1; + locale = (char *) malloc (len); + if (locale == NULL) + return NULL; + + memcpy (locale, alias_value, len); ++#endif + } + + /* Now we determine the single parts of the locale name. First +@@ -168,14 +149,14 @@ + return NULL; + + if (retval->decided == 0) +- _nl_load_domain (retval); ++ _nl_load_domain (retval, domainbinding); + if (retval->data == NULL) + { + int cnt; + for (cnt = 0; retval->successor[cnt] != NULL; ++cnt) + { + if (retval->successor[cnt]->decided == 0) +- _nl_load_domain (retval->successor[cnt]); ++ _nl_load_domain (retval->successor[cnt], domainbinding); + if (retval->successor[cnt]->data != NULL) + break; + } +@@ -185,5 +166,27 @@ + if (alias_value != NULL) + free (locale); + ++ /* The space for normalized_codeset is dynamically allocated. Free it. */ ++ if (mask & XPG_NORM_CODESET) ++ free ((void *) normalized_codeset); ++ + return retval; + } ++ ++ ++#ifdef _LIBC ++libc_freeres_fn (free_mem) ++{ ++ struct loaded_l10nfile *runp = _nl_loaded_domains; ++ ++ while (runp != NULL) ++ { ++ struct loaded_l10nfile *here = runp; ++ if (runp->data != NULL) ++ _nl_unload_domain ((struct loaded_domain *) runp->data); ++ runp = runp->next; ++ free ((char *) here->filename); ++ free (here); ++ } ++} ++#endif +--- lrzsz-0.12.20.safe/intl/gettext.c 1998-04-26 09:22:36.000000000 -0400 ++++ lrzsz-0.12.20/intl/gettext.c 2004-09-12 14:40:34.420738208 -0400 +@@ -1,19 +1,20 @@ +-/* Implementation of gettext(3) function +- Copyright (C) 1995, 1997 Free Software Foundation, Inc. ++/* Implementation of gettext(3) function. ++ Copyright (C) 1995, 1997, 2000-2003 Free Software Foundation, Inc. + +- This program is free software; you can redistribute it and/or modify +- it under the terms of the GNU General Public License as published by +- the Free Software Foundation; either version 2, or (at your option) ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +- GNU General Public License for more details. ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. + +- You should have received a copy of the GNU General Public License +- along with this program; if not, write to the Free Software Foundation, +- Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ + + #ifdef HAVE_CONFIG_H + # include +@@ -23,21 +24,14 @@ + # define __need_NULL + # include + #else +-# ifdef STDC_HEADERS +-# include /* Just for NULL. */ +-# else +-# ifdef HAVE_STRING_H +-# include +-# else +-# define NULL ((void *) 0) +-# endif +-# endif ++# include /* Just for NULL. */ + #endif + ++#include "gettextP.h" + #ifdef _LIBC + # include + #else +-# include "libgettext.h" ++# include "libgnuintl.h" + #endif + + /* @@ end of prolog @@ */ +@@ -48,20 +42,19 @@ + prefix. So we have to make a difference here. */ + #ifdef _LIBC + # define GETTEXT __gettext +-# define DGETTEXT __dgettext ++# define DCGETTEXT INTUSE(__dcgettext) + #else +-# define GETTEXT gettext__ +-# define DGETTEXT dgettext__ ++# define GETTEXT libintl_gettext ++# define DCGETTEXT libintl_dcgettext + #endif + + /* Look up MSGID in the current default message catalog for the current + LC_MESSAGES locale. If not found, returns MSGID itself (the default + text). */ + char * +-GETTEXT (msgid) +- const char *msgid; ++GETTEXT (const char *msgid) + { +- return DGETTEXT (NULL, msgid); ++ return DCGETTEXT (NULL, msgid, LC_MESSAGES); + } + + #ifdef _LIBC +--- lrzsz-0.12.20.safe/intl/gettext.h 1998-04-26 09:22:35.000000000 -0400 ++++ lrzsz-0.12.20/intl/gettext.h 1969-12-31 19:00:00.000000000 -0500 +@@ -1,105 +0,0 @@ +-/* Internal header for GNU gettext internationalization functions +- Copyright (C) 1995, 1997 Free Software Foundation, Inc. +- +- This program is free software; you can redistribute it and/or modify +- it under the terms of the GNU General Public License as published by +- the Free Software Foundation; either version 2, or (at your option) +- any later version. +- +- This program is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +- GNU General Public License for more details. +- +- You should have received a copy of the GNU Library General Public +- License along with the GNU C Library; see the file COPYING.LIB. If not, +- write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +- Boston, MA 02111-1307, USA. */ +- +-#ifndef _GETTEXT_H +-#define _GETTEXT_H 1 +- +-#include +- +-#if HAVE_LIMITS_H || _LIBC +-# include +-#endif +- +-/* @@ end of prolog @@ */ +- +-/* The magic number of the GNU message catalog format. */ +-#define _MAGIC 0x950412de +-#define _MAGIC_SWAPPED 0xde120495 +- +-/* Revision number of the currently used .mo (binary) file format. */ +-#define MO_REVISION_NUMBER 0 +- +-/* The following contortions are an attempt to use the C preprocessor +- to determine an unsigned integral type that is 32 bits wide. An +- alternative approach is to use autoconf's AC_CHECK_SIZEOF macro, but +- doing that would require that the configure script compile and *run* +- the resulting executable. Locally running cross-compiled executables +- is usually not possible. */ +- +-#if __STDC__ +-# define UINT_MAX_32_BITS 4294967295U +-#else +-# define UINT_MAX_32_BITS 0xFFFFFFFF +-#endif +- +-/* If UINT_MAX isn't defined, assume it's a 32-bit type. +- This should be valid for all systems GNU cares about because +- that doesn't include 16-bit systems, and only modern systems +- (that certainly have ) have 64+-bit integral types. */ +- +-#ifndef UINT_MAX +-# define UINT_MAX UINT_MAX_32_BITS +-#endif +- +-#if UINT_MAX == UINT_MAX_32_BITS +-typedef unsigned nls_uint32; +-#else +-# if USHRT_MAX == UINT_MAX_32_BITS +-typedef unsigned short nls_uint32; +-# else +-# if ULONG_MAX == UINT_MAX_32_BITS +-typedef unsigned long nls_uint32; +-# else +- /* The following line is intended to throw an error. Using #error is +- not portable enough. */ +- "Cannot determine unsigned 32-bit data type." +-# endif +-# endif +-#endif +- +- +-/* Header for binary .mo file format. */ +-struct mo_file_header +-{ +- /* The magic number. */ +- nls_uint32 magic; +- /* The revision number of the file format. */ +- nls_uint32 revision; +- /* The number of strings pairs. */ +- nls_uint32 nstrings; +- /* Offset of table with start offsets of original strings. */ +- nls_uint32 orig_tab_offset; +- /* Offset of table with start offsets of translation strings. */ +- nls_uint32 trans_tab_offset; +- /* Size of hashing table. */ +- nls_uint32 hash_tab_size; +- /* Offset of first hashing entry. */ +- nls_uint32 hash_tab_offset; +-}; +- +-struct string_desc +-{ +- /* Length of addressed string. */ +- nls_uint32 length; +- /* Offset of string in file. */ +- nls_uint32 offset; +-}; +- +-/* @@ begin of epilog @@ */ +- +-#endif /* gettext.h */ +--- lrzsz-0.12.20.safe/intl/gettextP.h 1998-04-26 09:22:35.000000000 -0400 ++++ lrzsz-0.12.20/intl/gettextP.h 2004-09-12 14:40:34.426737296 -0400 +@@ -1,33 +1,53 @@ +-/* Header describing internals of gettext library +- Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. ++/* Header describing internals of libintl library. ++ Copyright (C) 1995-1999, 2000-2003 Free Software Foundation, Inc. ++ Written by Ulrich Drepper , 1995. + +- This program is free software; you can redistribute it and/or modify +- it under the terms of the GNU General Public License as published by +- the Free Software Foundation; either version 2, or (at your option) ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +- GNU General Public License for more details. ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. + +- You should have received a copy of the GNU General Public License +- along with this program; if not, write to the Free Software Foundation, +- Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ + + #ifndef _GETTEXTP_H + #define _GETTEXTP_H + ++#include /* Get size_t. */ ++ ++#ifdef _LIBC ++# include "../iconv/gconv_int.h" ++#else ++# if HAVE_ICONV ++# include ++# endif ++#endif ++ + #include "loadinfo.h" + ++#include "gmo.h" /* Get nls_uint32. */ ++ + /* @@ end of prolog @@ */ + +-#ifndef PARAMS +-# if __STDC__ +-# define PARAMS(args) args +-# else +-# define PARAMS(args) () +-# endif ++#ifndef internal_function ++# define internal_function ++#endif ++ ++#ifndef attribute_hidden ++# define attribute_hidden ++#endif ++ ++/* Tell the compiler when a conditional or integer expression is ++ almost always true or almost always false. */ ++#ifndef HAVE_BUILTIN_EXPECT ++# define __builtin_expect(expr, val) (expr) + #endif + + #ifndef W +@@ -35,38 +55,160 @@ + #endif + + +-static nls_uint32 SWAP PARAMS ((nls_uint32 i)); +- ++#ifdef _LIBC ++# include ++# define SWAP(i) bswap_32 (i) ++#else + static inline nls_uint32 + SWAP (i) + nls_uint32 i; + { + return (i << 24) | ((i & 0xff00) << 8) | ((i >> 8) & 0xff00) | (i >> 24); + } ++#endif ++ + ++/* In-memory representation of system dependent string. */ ++struct sysdep_string_desc ++{ ++ /* Length of addressed string, including the trailing NUL. */ ++ size_t length; ++ /* Pointer to addressed string. */ ++ const char *pointer; ++}; + ++/* The representation of an opened message catalog. */ + struct loaded_domain + { ++ /* Pointer to memory containing the .mo file. */ + const char *data; ++ /* 1 if the memory is mmap()ed, 0 if the memory is malloc()ed. */ ++ int use_mmap; ++ /* Size of mmap()ed memory. */ ++ size_t mmap_size; ++ /* 1 if the .mo file uses a different endianness than this machine. */ + int must_swap; ++ /* Pointer to additional malloc()ed memory. */ ++ void *malloced; ++ ++ /* Number of static strings pairs. */ + nls_uint32 nstrings; +- struct string_desc *orig_tab; +- struct string_desc *trans_tab; ++ /* Pointer to descriptors of original strings in the file. */ ++ const struct string_desc *orig_tab; ++ /* Pointer to descriptors of translated strings in the file. */ ++ const struct string_desc *trans_tab; ++ ++ /* Number of system dependent strings pairs. */ ++ nls_uint32 n_sysdep_strings; ++ /* Pointer to descriptors of original sysdep strings. */ ++ const struct sysdep_string_desc *orig_sysdep_tab; ++ /* Pointer to descriptors of translated sysdep strings. */ ++ const struct sysdep_string_desc *trans_sysdep_tab; ++ ++ /* Size of hash table. */ + nls_uint32 hash_size; +- nls_uint32 *hash_tab; ++ /* Pointer to hash table. */ ++ const nls_uint32 *hash_tab; ++ /* 1 if the hash table uses a different endianness than this machine. */ ++ int must_swap_hash_tab; ++ ++ int codeset_cntr; ++#ifdef _LIBC ++ __gconv_t conv; ++#else ++# if HAVE_ICONV ++ iconv_t conv; ++# endif ++#endif ++ char **conv_tab; ++ ++ struct expression *plural; ++ unsigned long int nplurals; + }; + ++/* We want to allocate a string at the end of the struct. But ISO C ++ doesn't allow zero sized arrays. */ ++#ifdef __GNUC__ ++# define ZERO 0 ++#else ++# define ZERO 1 ++#endif ++ ++/* A set of settings bound to a message domain. Used to store settings ++ from bindtextdomain() and bind_textdomain_codeset(). */ + struct binding + { + struct binding *next; +- char *domainname; + char *dirname; ++ int codeset_cntr; /* Incremented each time codeset changes. */ ++ char *codeset; ++ char domainname[ZERO]; + }; + +-struct loaded_l10nfile *_nl_find_domain PARAMS ((const char *__dirname, +- char *__locale, +- const char *__domainname)); +-void _nl_load_domain PARAMS ((struct loaded_l10nfile *__domain)); ++/* A counter which is incremented each time some previous translations ++ become invalid. ++ This variable is part of the external ABI of the GNU libintl. */ ++extern int _nl_msg_cat_cntr; ++ ++#ifndef _LIBC ++const char *_nl_locale_name (int category, const char *categoryname); ++#endif ++ ++struct loaded_l10nfile *_nl_find_domain (const char *__dirname, char *__locale, ++ const char *__domainname, ++ struct binding *__domainbinding) ++ internal_function; ++void _nl_load_domain (struct loaded_l10nfile *__domain, ++ struct binding *__domainbinding) ++ internal_function; ++void _nl_unload_domain (struct loaded_domain *__domain) ++ internal_function; ++const char *_nl_init_domain_conv (struct loaded_l10nfile *__domain_file, ++ struct loaded_domain *__domain, ++ struct binding *__domainbinding) ++ internal_function; ++void _nl_free_domain_conv (struct loaded_domain *__domain) ++ internal_function; ++ ++char *_nl_find_msg (struct loaded_l10nfile *domain_file, ++ struct binding *domainbinding, const char *msgid, ++ size_t *lengthp) ++ internal_function; ++ ++#ifdef _LIBC ++extern char *__gettext (const char *__msgid); ++extern char *__dgettext (const char *__domainname, const char *__msgid); ++extern char *__dcgettext (const char *__domainname, const char *__msgid, ++ int __category); ++extern char *__ngettext (const char *__msgid1, const char *__msgid2, ++ unsigned long int __n); ++extern char *__dngettext (const char *__domainname, ++ const char *__msgid1, const char *__msgid2, ++ unsigned long int n); ++extern char *__dcngettext (const char *__domainname, ++ const char *__msgid1, const char *__msgid2, ++ unsigned long int __n, int __category); ++extern char *__dcigettext (const char *__domainname, ++ const char *__msgid1, const char *__msgid2, ++ int __plural, unsigned long int __n, ++ int __category); ++extern char *__textdomain (const char *__domainname); ++extern char *__bindtextdomain (const char *__domainname, ++ const char *__dirname); ++extern char *__bind_textdomain_codeset (const char *__domainname, ++ const char *__codeset); ++#else ++/* Declare the exported libintl_* functions, in a way that allows us to ++ call them under their real name. */ ++# undef _INTL_REDIRECT_INLINE ++# undef _INTL_REDIRECT_MACROS ++# define _INTL_REDIRECT_MACROS ++# include "libgnuintl.h" ++extern char *libintl_dcigettext (const char *__domainname, ++ const char *__msgid1, const char *__msgid2, ++ int __plural, unsigned long int __n, ++ int __category); ++#endif + + /* @@ begin of epilog @@ */ + +--- lrzsz-0.12.20.safe/intl/gmo.h 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/gmo.h 2004-09-12 14:40:34.431736536 -0400 +@@ -0,0 +1,149 @@ ++/* Description of GNU message catalog format: general file layout. ++ Copyright (C) 1995, 1997, 2000-2002, 2004 Free Software Foundation, Inc. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++#ifndef _GETTEXT_H ++#define _GETTEXT_H 1 ++ ++#include ++ ++/* @@ end of prolog @@ */ ++ ++/* The magic number of the GNU message catalog format. */ ++#define _MAGIC 0x950412de ++#define _MAGIC_SWAPPED 0xde120495 ++ ++/* Revision number of the currently used .mo (binary) file format. */ ++#define MO_REVISION_NUMBER 0 ++#define MO_REVISION_NUMBER_WITH_SYSDEP_I 1 ++ ++/* The following contortions are an attempt to use the C preprocessor ++ to determine an unsigned integral type that is 32 bits wide. An ++ alternative approach is to use autoconf's AC_CHECK_SIZEOF macro, but ++ as of version autoconf-2.13, the AC_CHECK_SIZEOF macro doesn't work ++ when cross-compiling. */ ++ ++#if __STDC__ ++# define UINT_MAX_32_BITS 4294967295U ++#else ++# define UINT_MAX_32_BITS 0xFFFFFFFF ++#endif ++ ++/* If UINT_MAX isn't defined, assume it's a 32-bit type. ++ This should be valid for all systems GNU cares about because ++ that doesn't include 16-bit systems, and only modern systems ++ (that certainly have ) have 64+-bit integral types. */ ++ ++#ifndef UINT_MAX ++# define UINT_MAX UINT_MAX_32_BITS ++#endif ++ ++#if UINT_MAX == UINT_MAX_32_BITS ++typedef unsigned nls_uint32; ++#else ++# if USHRT_MAX == UINT_MAX_32_BITS ++typedef unsigned short nls_uint32; ++# else ++# if ULONG_MAX == UINT_MAX_32_BITS ++typedef unsigned long nls_uint32; ++# else ++ /* The following line is intended to throw an error. Using #error is ++ not portable enough. */ ++ "Cannot determine unsigned 32-bit data type." ++# endif ++# endif ++#endif ++ ++ ++/* Header for binary .mo file format. */ ++struct mo_file_header ++{ ++ /* The magic number. */ ++ nls_uint32 magic; ++ /* The revision number of the file format. */ ++ nls_uint32 revision; ++ ++ /* The following are only used in .mo files with major revision 0 or 1. */ ++ ++ /* The number of strings pairs. */ ++ nls_uint32 nstrings; ++ /* Offset of table with start offsets of original strings. */ ++ nls_uint32 orig_tab_offset; ++ /* Offset of table with start offsets of translated strings. */ ++ nls_uint32 trans_tab_offset; ++ /* Size of hash table. */ ++ nls_uint32 hash_tab_size; ++ /* Offset of first hash table entry. */ ++ nls_uint32 hash_tab_offset; ++ ++ /* The following are only used in .mo files with minor revision >= 1. */ ++ ++ /* The number of system dependent segments. */ ++ nls_uint32 n_sysdep_segments; ++ /* Offset of table describing system dependent segments. */ ++ nls_uint32 sysdep_segments_offset; ++ /* The number of system dependent strings pairs. */ ++ nls_uint32 n_sysdep_strings; ++ /* Offset of table with start offsets of original sysdep strings. */ ++ nls_uint32 orig_sysdep_tab_offset; ++ /* Offset of table with start offsets of translated sysdep strings. */ ++ nls_uint32 trans_sysdep_tab_offset; ++}; ++ ++/* Descriptor for static string contained in the binary .mo file. */ ++struct string_desc ++{ ++ /* Length of addressed string, not including the trailing NUL. */ ++ nls_uint32 length; ++ /* Offset of string in file. */ ++ nls_uint32 offset; ++}; ++ ++/* The following are only used in .mo files with minor revision >= 1. */ ++ ++/* Descriptor for system dependent string segment. */ ++struct sysdep_segment ++{ ++ /* Length of addressed string, including the trailing NUL. */ ++ nls_uint32 length; ++ /* Offset of string in file. */ ++ nls_uint32 offset; ++}; ++ ++/* Descriptor for system dependent string. */ ++struct sysdep_string ++{ ++ /* Offset of static string segments in file. */ ++ nls_uint32 offset; ++ /* Alternating sequence of static and system dependent segments. ++ The last segment is a static segment, including the trailing NUL. */ ++ struct segment_pair ++ { ++ /* Size of static segment. */ ++ nls_uint32 segsize; ++ /* Reference to system dependent string segment, or ~0 at the end. */ ++ nls_uint32 sysdepref; ++ } segments[1]; ++}; ++ ++/* Marker for the end of the segments[] array. This has the value 0xFFFFFFFF, ++ regardless whether 'int' is 16 bit, 32 bit, or 64 bit. */ ++#define SEGMENTS_END ((nls_uint32) ~0) ++ ++/* @@ begin of epilog @@ */ ++ ++#endif /* gettext.h */ +--- lrzsz-0.12.20.safe/intl/hash-string.h 1998-04-26 09:22:36.000000000 -0400 ++++ lrzsz-0.12.20/intl/hash-string.h 2004-09-12 14:40:34.436735776 -0400 +@@ -1,35 +1,23 @@ +-/* Implements a string hashing function. +- Copyright (C) 1995, 1997 Free Software Foundation, Inc. ++/* Description of GNU message catalog format: string hashing function. ++ Copyright (C) 1995, 1997-1998, 2000-2003 Free Software Foundation, Inc. + +- This program is free software; you can redistribute it and/or modify +- it under the terms of the GNU General Public License as published by +- the Free Software Foundation; either version 2, or (at your option) ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +- GNU General Public License for more details. ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. + + You should have received a copy of the GNU Library General Public +- License along with the GNU C Library; see the file COPYING.LIB. If not, +- write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, +- Boston, MA 02111-1307, USA. */ +- +-#ifdef HAVE_VALUES_H +-# include +-#endif ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ + + /* @@ end of prolog @@ */ + +-#ifndef PARAMS +-# if __STDC__ +-# define PARAMS(Args) Args +-# else +-# define PARAMS(Args) () +-# endif +-#endif +- + /* We assume to have `unsigned long int' value with at least 32 bits. */ + #define HASHWORDBITS 32 + +@@ -37,11 +25,8 @@ + /* Defines the so called `hashpjw' function by P.J. Weinberger + [see Aho/Sethi/Ullman, COMPILERS: Principles, Techniques and Tools, + 1986, 1987 Bell Telephone Laboratories, Inc.] */ +-static unsigned long hash_string PARAMS ((const char *__str_param)); +- +-static inline unsigned long +-hash_string (str_param) +- const char *str_param; ++static inline unsigned long int ++hash_string (const char *str_param) + { + unsigned long int hval, g; + const char *str = str_param; +@@ -51,8 +36,8 @@ + while (*str != '\0') + { + hval <<= 4; +- hval += (unsigned long) *str++; +- g = hval & ((unsigned long) 0xf << (HASHWORDBITS - 4)); ++ hval += (unsigned char) *str++; ++ g = hval & ((unsigned long int) 0xf << (HASHWORDBITS - 4)); + if (g != 0) + { + hval ^= g >> (HASHWORDBITS - 8); +--- lrzsz-0.12.20.safe/intl/intl-compat.c 1998-04-26 09:20:52.000000000 -0400 ++++ lrzsz-0.12.20/intl/intl-compat.c 2004-09-12 14:40:34.441735016 -0400 +@@ -1,76 +1,131 @@ + /* intl-compat.c - Stub functions to call gettext functions from GNU gettext + Library. +- Copyright (C) 1995 Software Foundation, Inc. ++ Copyright (C) 1995, 2000-2003 Software Foundation, Inc. + +-This program is free software; you can redistribute it and/or modify +-it under the terms of the GNU General Public License as published by +-the Free Software Foundation; either version 2, or (at your option) +-any later version. ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. + +-This program is distributed in the hope that it will be useful, +-but WITHOUT ANY WARRANTY; without even the implied warranty of +-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-GNU General Public License for more details. ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. + +-You should have received a copy of the GNU General Public License +-along with this program; if not, write to the Free Software +-Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ + + #ifdef HAVE_CONFIG_H + # include + #endif + +-#include "libgettext.h" ++#include "gettextP.h" + + /* @@ end of prolog @@ */ + ++/* This file redirects the gettext functions (without prefix) to those ++ defined in the included GNU libintl library (with "libintl_" prefix). ++ It is compiled into libintl in order to make the AM_GNU_GETTEXT test ++ of gettext <= 0.11.2 work with the libintl library >= 0.11.3 which ++ has the redirections primarily in the include file. ++ It is also compiled into libgnuintl so that libgnuintl.so can be used ++ as LD_PRELOADable library on glibc systems, to provide the extra ++ features that the functions in the libc don't have (namely, logging). */ ++ + + #undef gettext + #undef dgettext + #undef dcgettext ++#undef ngettext ++#undef dngettext ++#undef dcngettext + #undef textdomain + #undef bindtextdomain ++#undef bind_textdomain_codeset ++ ++ ++/* When building a DLL, we must export some functions. Note that because ++ the functions are only defined for binary backward compatibility, we ++ don't need to use __declspec(dllimport) in any case. */ ++#if defined _MSC_VER && BUILDING_DLL ++# define DLL_EXPORTED __declspec(dllexport) ++#else ++# define DLL_EXPORTED ++#endif + + ++DLL_EXPORTED + char * +-bindtextdomain (domainname, dirname) +- const char *domainname; +- const char *dirname; ++gettext (const char *msgid) + { +- return bindtextdomain__ (domainname, dirname); ++ return libintl_gettext (msgid); + } + + ++DLL_EXPORTED + char * +-dcgettext (domainname, msgid, category) +- const char *domainname; +- const char *msgid; +- int category; ++dgettext (const char *domainname, const char *msgid) + { +- return dcgettext__ (domainname, msgid, category); ++ return libintl_dgettext (domainname, msgid); + } + + ++DLL_EXPORTED + char * +-dgettext (domainname, msgid) +- const char *domainname; +- const char *msgid; ++dcgettext (const char *domainname, const char *msgid, int category) + { +- return dgettext__ (domainname, msgid); ++ return libintl_dcgettext (domainname, msgid, category); + } + + ++DLL_EXPORTED + char * +-gettext (msgid) +- const char *msgid; ++ngettext (const char *msgid1, const char *msgid2, unsigned long int n) + { +- return gettext__ (msgid); ++ return libintl_ngettext (msgid1, msgid2, n); + } + + ++DLL_EXPORTED + char * +-textdomain (domainname) +- const char *domainname; ++dngettext (const char *domainname, ++ const char *msgid1, const char *msgid2, unsigned long int n) + { +- return textdomain__ (domainname); ++ return libintl_dngettext (domainname, msgid1, msgid2, n); ++} ++ ++ ++DLL_EXPORTED ++char * ++dcngettext (const char *domainname, ++ const char *msgid1, const char *msgid2, unsigned long int n, ++ int category) ++{ ++ return libintl_dcngettext (domainname, msgid1, msgid2, n, category); ++} ++ ++ ++DLL_EXPORTED ++char * ++textdomain (const char *domainname) ++{ ++ return libintl_textdomain (domainname); ++} ++ ++ ++DLL_EXPORTED ++char * ++bindtextdomain (const char *domainname, const char *dirname) ++{ ++ return libintl_bindtextdomain (domainname, dirname); ++} ++ ++ ++DLL_EXPORTED ++char * ++bind_textdomain_codeset (const char *domainname, const char *codeset) ++{ ++ return libintl_bind_textdomain_codeset (domainname, codeset); + } +--- lrzsz-0.12.20.safe/intl/l10nflist.c 1998-04-26 09:22:37.000000000 -0400 ++++ lrzsz-0.12.20/intl/l10nflist.c 2004-09-12 14:40:34.457732584 -0400 +@@ -1,52 +1,40 @@ +-/* Handle list of needed message catalogs +- Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. +- Written by Ulrich Drepper , 1995. ++/* Copyright (C) 1995-1999, 2000-2003 Free Software Foundation, Inc. ++ Contributed by Ulrich Drepper , 1995. + +- This program is free software; you can redistribute it and/or modify +- it under the terms of the GNU General Public License as published by +- the Free Software Foundation; either version 2, or (at your option) ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +- GNU General Public License for more details. ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. + +- You should have received a copy of the GNU General Public License +- along with this program; if not, write to the Free Software Foundation, +- Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++/* Tell glibc's to provide a prototype for stpcpy(). ++ This must come before because may include ++ , and once has been included, it's too late. */ ++#ifndef _GNU_SOURCE ++# define _GNU_SOURCE 1 ++#endif + + #ifdef HAVE_CONFIG_H + # include + #endif + +- +-#if defined HAVE_STRING_H || defined _LIBC +-# ifndef _GNU_SOURCE +-# define _GNU_SOURCE 1 +-# endif +-# include +-#else +-# include +-# ifndef memcpy +-# define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num) +-# endif +-#endif +-#if !HAVE_STRCHR && !defined _LIBC +-# ifndef strchr +-# define strchr index +-# endif +-#endif ++#include + + #if defined _LIBC || defined HAVE_ARGZ_H + # include + #endif + #include + #include +- +-#if defined STDC_HEADERS || defined _LIBC +-# include +-#endif ++#include + + #include "loadinfo.h" + +@@ -65,23 +53,39 @@ + /* Rename the non ANSI C functions. This is required by the standard + because some ANSI C functions will require linking with this object + file and the name space must not be polluted. */ +-# define stpcpy(dest, src) __stpcpy(dest, src) ++# ifndef stpcpy ++# define stpcpy(dest, src) __stpcpy(dest, src) ++# endif + #else + # ifndef HAVE_STPCPY +-static char *stpcpy PARAMS ((char *dest, const char *src)); ++static char *stpcpy (char *dest, const char *src); + # endif + #endif + ++/* Pathname support. ++ ISSLASH(C) tests whether C is a directory separator character. ++ IS_ABSOLUTE_PATH(P) tests whether P is an absolute path. If it is not, ++ it may be concatenated to a directory pathname. ++ */ ++#if defined _WIN32 || defined __WIN32__ || defined __EMX__ || defined __DJGPP__ ++ /* Win32, OS/2, DOS */ ++# define ISSLASH(C) ((C) == '/' || (C) == '\\') ++# define HAS_DEVICE(P) \ ++ ((((P)[0] >= 'A' && (P)[0] <= 'Z') || ((P)[0] >= 'a' && (P)[0] <= 'z')) \ ++ && (P)[1] == ':') ++# define IS_ABSOLUTE_PATH(P) (ISSLASH ((P)[0]) || HAS_DEVICE (P)) ++#else ++ /* Unix */ ++# define ISSLASH(C) ((C) == '/') ++# define IS_ABSOLUTE_PATH(P) ISSLASH ((P)[0]) ++#endif ++ + /* Define function which are usually not available. */ + + #if !defined _LIBC && !defined HAVE___ARGZ_COUNT + /* Returns the number of strings in ARGZ. */ +-static size_t argz_count__ PARAMS ((const char *argz, size_t len)); +- + static size_t +-argz_count__ (argz, len) +- const char *argz; +- size_t len; ++argz_count__ (const char *argz, size_t len) + { + size_t count = 0; + while (len > 0) +@@ -95,18 +99,17 @@ + } + # undef __argz_count + # define __argz_count(argz, len) argz_count__ (argz, len) ++#else ++# ifdef _LIBC ++# define __argz_count(argz, len) INTUSE(__argz_count) (argz, len) ++# endif + #endif /* !_LIBC && !HAVE___ARGZ_COUNT */ + + #if !defined _LIBC && !defined HAVE___ARGZ_STRINGIFY + /* Make '\0' separated arg vector ARGZ printable by converting all the '\0's + except the last into the character SEP. */ +-static void argz_stringify__ PARAMS ((char *argz, size_t len, int sep)); +- + static void +-argz_stringify__ (argz, len, sep) +- char *argz; +- size_t len; +- int sep; ++argz_stringify__ (char *argz, size_t len, int sep) + { + while (len > 0) + { +@@ -119,17 +122,16 @@ + } + # undef __argz_stringify + # define __argz_stringify(argz, len, sep) argz_stringify__ (argz, len, sep) ++#else ++# ifdef _LIBC ++# define __argz_stringify(argz, len, sep) \ ++ INTUSE(__argz_stringify) (argz, len, sep) ++# endif + #endif /* !_LIBC && !HAVE___ARGZ_STRINGIFY */ + + #if !defined _LIBC && !defined HAVE___ARGZ_NEXT +-static char *argz_next__ PARAMS ((char *argz, size_t argz_len, +- const char *entry)); +- + static char * +-argz_next__ (argz, argz_len, entry) +- char *argz; +- size_t argz_len; +- const char *entry; ++argz_next__ (char *argz, size_t argz_len, const char *entry) + { + if (entry) + { +@@ -150,11 +152,8 @@ + + + /* Return number of bits set in X. */ +-static int pop PARAMS ((int x)); +- + static inline int +-pop (x) +- int x; ++pop (int x) + { + /* We assume that no more than 16 bits are used. */ + x = ((x & ~0x5555) >> 1) + (x & 0x5555); +@@ -167,31 +166,27 @@ + + + struct loaded_l10nfile * +-_nl_make_l10nflist (l10nfile_list, dirlist, dirlist_len, mask, language, +- territory, codeset, normalized_codeset, modifier, special, +- sponsor, revision, filename, do_allocate) +- struct loaded_l10nfile **l10nfile_list; +- const char *dirlist; +- size_t dirlist_len; +- int mask; +- const char *language; +- const char *territory; +- const char *codeset; +- const char *normalized_codeset; +- const char *modifier; +- const char *special; +- const char *sponsor; +- const char *revision; +- const char *filename; +- int do_allocate; ++_nl_make_l10nflist (struct loaded_l10nfile **l10nfile_list, ++ const char *dirlist, size_t dirlist_len, ++ int mask, const char *language, const char *territory, ++ const char *codeset, const char *normalized_codeset, ++ const char *modifier, const char *special, ++ const char *sponsor, const char *revision, ++ const char *filename, int do_allocate) + { + char *abs_filename; +- struct loaded_l10nfile *last = NULL; ++ struct loaded_l10nfile **lastp; + struct loaded_l10nfile *retval; + char *cp; ++ size_t dirlist_count; + size_t entries; + int cnt; + ++ /* If LANGUAGE contains an absolute directory specification, we ignore ++ DIRLIST. */ ++ if (IS_ABSOLUTE_PATH (language)) ++ dirlist_len = 0; ++ + /* Allocate room for the full file name. */ + abs_filename = (char *) malloc (dirlist_len + + strlen (language) +@@ -209,7 +204,7 @@ + + (((mask & CEN_SPONSOR) != 0 + || (mask & CEN_REVISION) != 0) + ? (1 + ((mask & CEN_SPONSOR) != 0 +- ? strlen (sponsor) + 1 : 0) ++ ? strlen (sponsor) : 0) + + ((mask & CEN_REVISION) != 0 + ? strlen (revision) + 1 : 0)) : 0) + + 1 + strlen (filename) + 1); +@@ -217,14 +212,16 @@ + if (abs_filename == NULL) + return NULL; + +- retval = NULL; +- last = NULL; +- + /* Construct file name. */ +- memcpy (abs_filename, dirlist, dirlist_len); +- __argz_stringify (abs_filename, dirlist_len, ':'); +- cp = abs_filename + (dirlist_len - 1); +- *cp++ = '/'; ++ cp = abs_filename; ++ if (dirlist_len > 0) ++ { ++ memcpy (cp, dirlist, dirlist_len); ++ __argz_stringify (cp, dirlist_len, PATH_SEPARATOR); ++ cp += dirlist_len; ++ cp[-1] = '/'; ++ } ++ + cp = stpcpy (cp, language); + + if ((mask & TERRITORY) != 0) +@@ -271,7 +268,7 @@ + + /* Look in list of already loaded domains whether it is already + available. */ +- last = NULL; ++ lastp = l10nfile_list; + for (retval = *l10nfile_list; retval != NULL; retval = retval->next) + if (retval->filename != NULL) + { +@@ -286,7 +283,7 @@ + break; + } + +- last = retval; ++ lastp = &retval->next; + } + + if (retval != NULL || do_allocate == 0) +@@ -295,48 +292,66 @@ + return retval; + } + +- retval = (struct loaded_l10nfile *) +- malloc (sizeof (*retval) + (__argz_count (dirlist, dirlist_len) +- * (1 << pop (mask)) +- * sizeof (struct loaded_l10nfile *))); ++ dirlist_count = (dirlist_len > 0 ? __argz_count (dirlist, dirlist_len) : 1); ++ ++ /* Allocate a new loaded_l10nfile. */ ++ retval = ++ (struct loaded_l10nfile *) ++ malloc (sizeof (*retval) ++ + (((dirlist_count << pop (mask)) + (dirlist_count > 1 ? 1 : 0)) ++ * sizeof (struct loaded_l10nfile *))); + if (retval == NULL) + return NULL; + + retval->filename = abs_filename; +- retval->decided = (__argz_count (dirlist, dirlist_len) != 1 ++ ++ /* We set retval->data to NULL here; it is filled in later. ++ Setting retval->decided to 1 here means that retval does not ++ correspond to a real file (dirlist_count > 1) or is not worth ++ looking up (if an unnormalized codeset was specified). */ ++ retval->decided = (dirlist_count > 1 + || ((mask & XPG_CODESET) != 0 + && (mask & XPG_NORM_CODESET) != 0)); + retval->data = NULL; + +- if (last == NULL) +- { +- retval->next = *l10nfile_list; +- *l10nfile_list = retval; +- } +- else +- { +- retval->next = last->next; +- last->next = retval; +- } ++ retval->next = *lastp; ++ *lastp = retval; + + entries = 0; +- /* If the DIRLIST is a real list the RETVAL entry corresponds not to +- a real file. So we have to use the DIRLIST separation mechanism +- of the inner loop. */ +- cnt = __argz_count (dirlist, dirlist_len) == 1 ? mask - 1 : mask; +- for (; cnt >= 0; --cnt) ++ /* Recurse to fill the inheritance list of RETVAL. ++ If the DIRLIST is a real list (i.e. DIRLIST_COUNT > 1), the RETVAL ++ entry does not correspond to a real file; retval->filename contains ++ colons. In this case we loop across all elements of DIRLIST and ++ across all bit patterns dominated by MASK. ++ If the DIRLIST is a single directory or entirely redundant (i.e. ++ DIRLIST_COUNT == 1), we loop across all bit patterns dominated by ++ MASK, excluding MASK itself. ++ In either case, we loop down from MASK to 0. This has the effect ++ that the extra bits in the locale name are dropped in this order: ++ first the modifier, then the territory, then the codeset, then the ++ normalized_codeset. */ ++ for (cnt = dirlist_count > 1 ? mask : mask - 1; cnt >= 0; --cnt) + if ((cnt & ~mask) == 0 + && ((cnt & CEN_SPECIFIC) == 0 || (cnt & XPG_SPECIFIC) == 0) + && ((cnt & XPG_CODESET) == 0 || (cnt & XPG_NORM_CODESET) == 0)) + { +- /* Iterate over all elements of the DIRLIST. */ +- char *dir = NULL; ++ if (dirlist_count > 1) ++ { ++ /* Iterate over all elements of the DIRLIST. */ ++ char *dir = NULL; + +- while ((dir = __argz_next ((char *) dirlist, dirlist_len, dir)) +- != NULL) ++ while ((dir = __argz_next ((char *) dirlist, dirlist_len, dir)) ++ != NULL) ++ retval->successor[entries++] ++ = _nl_make_l10nflist (l10nfile_list, dir, strlen (dir) + 1, ++ cnt, language, territory, codeset, ++ normalized_codeset, modifier, special, ++ sponsor, revision, filename, 1); ++ } ++ else + retval->successor[entries++] +- = _nl_make_l10nflist (l10nfile_list, dir, strlen (dir) + 1, cnt, +- language, territory, codeset, ++ = _nl_make_l10nflist (l10nfile_list, dirlist, dirlist_len, ++ cnt, language, territory, codeset, + normalized_codeset, modifier, special, + sponsor, revision, filename, 1); + } +@@ -347,11 +362,10 @@ + + /* Normalize codeset name. There is no standard for the codeset + names. Normalization allows the user to use any of the common +- names. */ ++ names. The return value is dynamically allocated and has to be ++ freed by the caller. */ + const char * +-_nl_normalize_codeset (codeset, name_len) +- const char *codeset; +- size_t name_len; ++_nl_normalize_codeset (const char *codeset, size_t name_len) + { + int len = 0; + int only_digit = 1; +@@ -360,11 +374,11 @@ + size_t cnt; + + for (cnt = 0; cnt < name_len; ++cnt) +- if (isalnum (codeset[cnt])) ++ if (isalnum ((unsigned char) codeset[cnt])) + { + ++len; + +- if (isalpha (codeset[cnt])) ++ if (isalpha ((unsigned char) codeset[cnt])) + only_digit = 0; + } + +@@ -378,9 +392,9 @@ + wp = retval; + + for (cnt = 0; cnt < name_len; ++cnt) +- if (isalpha (codeset[cnt])) +- *wp++ = tolower (codeset[cnt]); +- else if (isdigit (codeset[cnt])) ++ if (isalpha ((unsigned char) codeset[cnt])) ++ *wp++ = tolower ((unsigned char) codeset[cnt]); ++ else if (isdigit ((unsigned char) codeset[cnt])) + *wp++ = codeset[cnt]; + + *wp = '\0'; +@@ -398,9 +412,7 @@ + to be defined. */ + #if !_LIBC && !HAVE_STPCPY + static char * +-stpcpy (dest, src) +- char *dest; +- const char *src; ++stpcpy (char *dest, const char *src) + { + while ((*dest++ = *src++) != '\0') + /* Do nothing. */ ; +--- lrzsz-0.12.20.safe/intl/libgettext.h 1998-04-26 09:22:36.000000000 -0400 ++++ lrzsz-0.12.20/intl/libgettext.h 1969-12-31 19:00:00.000000000 -0500 +@@ -1,182 +0,0 @@ +-/* Message catalogs for internationalization. +- Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. +- +- This program is free software; you can redistribute it and/or modify +- it under the terms of the GNU General Public License as published by +- the Free Software Foundation; either version 2, or (at your option) +- any later version. +- +- This program is distributed in the hope that it will be useful, +- but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +- GNU General Public License for more details. +- +- You should have received a copy of the GNU General Public License +- along with this program; if not, write to the Free Software Foundation, +- Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ +- +-/* Because on some systems (e.g. Solaris) we sometimes have to include +- the systems libintl.h as well as this file we have more complex +- include protection above. But the systems header might perhaps also +- define _LIBINTL_H and therefore we have to protect the definition here. */ +- +-#if !defined (_LIBINTL_H) || !defined (_LIBGETTEXT_H) +-#if !defined (_LIBINTL_H) +-# define _LIBINTL_H 1 +-#endif +-#define _LIBGETTEXT_H 1 +- +-/* We define an additional symbol to signal that we use the GNU +- implementation of gettext. */ +-#define __USE_GNU_GETTEXT 1 +- +-#include +- +-#if HAVE_LOCALE_H +-# include +-#endif +- +- +-#ifdef __cplusplus +-extern "C" { +-#endif +- +-/* @@ end of prolog @@ */ +- +-#ifndef PARAMS +-# if __STDC__ +-# define PARAMS(args) args +-# else +-# define PARAMS(args) () +-# endif +-#endif +- +-#ifndef NULL +-# if !defined __cplusplus || defined __GNUC__ +-# define NULL ((void *) 0) +-# else +-# define NULL (0) +-# endif +-#endif +- +-#if !HAVE_LC_MESSAGES +-/* This value determines the behaviour of the gettext() and dgettext() +- function. But some system does not have this defined. Define it +- to a default value. */ +-# define LC_MESSAGES (-1) +-#endif +- +- +-/* Declarations for gettext-using-catgets interface. Derived from +- Jim Meyering's libintl.h. */ +-struct _msg_ent +-{ +- const char *_msg; +- int _msg_number; +-}; +- +- +-#if HAVE_CATGETS +-/* These two variables are defined in the automatically by po-to-tbl.sed +- generated file `cat-id-tbl.c'. */ +-extern const struct _msg_ent _msg_tbl[]; +-extern int _msg_tbl_length; +-#endif +- +- +-/* For automatical extraction of messages sometimes no real +- translation is needed. Instead the string itself is the result. */ +-#define gettext_noop(Str) (Str) +- +-/* Look up MSGID in the current default message catalog for the current +- LC_MESSAGES locale. If not found, returns MSGID itself (the default +- text). */ +-extern char *gettext PARAMS ((const char *__msgid)); +-extern char *gettext__ PARAMS ((const char *__msgid)); +- +-/* Look up MSGID in the DOMAINNAME message catalog for the current +- LC_MESSAGES locale. */ +-extern char *dgettext PARAMS ((const char *__domainname, const char *__msgid)); +-extern char *dgettext__ PARAMS ((const char *__domainname, +- const char *__msgid)); +- +-/* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY +- locale. */ +-extern char *dcgettext PARAMS ((const char *__domainname, const char *__msgid, +- int __category)); +-extern char *dcgettext__ PARAMS ((const char *__domainname, +- const char *__msgid, int __category)); +- +- +-/* Set the current default message catalog to DOMAINNAME. +- If DOMAINNAME is null, return the current default. +- If DOMAINNAME is "", reset to the default of "messages". */ +-extern char *textdomain PARAMS ((const char *__domainname)); +-extern char *textdomain__ PARAMS ((const char *__domainname)); +- +-/* Specify that the DOMAINNAME message catalog will be found +- in DIRNAME rather than in the system locale data base. */ +-extern char *bindtextdomain PARAMS ((const char *__domainname, +- const char *__dirname)); +-extern char *bindtextdomain__ PARAMS ((const char *__domainname, +- const char *__dirname)); +- +-#if ENABLE_NLS +- +-/* Solaris 2.3 has the gettext function but dcgettext is missing. +- So we omit this optimization for Solaris 2.3. BTW, Solaris 2.4 +- has dcgettext. */ +-# if !HAVE_CATGETS && (!HAVE_GETTEXT || HAVE_DCGETTEXT) +- +-# define gettext(Msgid) \ +- dgettext (NULL, Msgid) +- +-# define dgettext(Domainname, Msgid) \ +- dcgettext (Domainname, Msgid, LC_MESSAGES) +- +-# if defined __GNUC__ && __GNUC__ == 2 && __GNUC_MINOR__ >= 7 +-/* This global variable is defined in loadmsgcat.c. We need a sign, +- whether a new catalog was loaded, which can be associated with all +- translations. */ +-extern int _nl_msg_cat_cntr; +- +-# define dcgettext(Domainname, Msgid, Category) \ +- (__extension__ \ +- ({ \ +- char *__result; \ +- if (__builtin_constant_p (Msgid)) \ +- { \ +- static char *__translation__; \ +- static int __catalog_counter__; \ +- if (! __translation__ || __catalog_counter__ != _nl_msg_cat_cntr) \ +- { \ +- __translation__ = \ +- dcgettext__ (Domainname, Msgid, Category); \ +- __catalog_counter__ = _nl_msg_cat_cntr; \ +- } \ +- __result = __translation__; \ +- } \ +- else \ +- __result = dcgettext__ (Domainname, Msgid, Category); \ +- __result; \ +- })) +-# endif +-# endif +- +-#else +- +-# define gettext(Msgid) (Msgid) +-# define dgettext(Domainname, Msgid) (Msgid) +-# define dcgettext(Domainname, Msgid, Category) (Msgid) +-# define textdomain(Domainname) while (0) /* nothing */ +-# define bindtextdomain(Domainname, Dirname) while (0) /* nothing */ +- +-#endif +- +-/* @@ begin of epilog @@ */ +- +-#ifdef __cplusplus +-} +-#endif +- +-#endif +--- lrzsz-0.12.20.safe/intl/libgnuintl.h.in 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/libgnuintl.h.in 2004-09-12 14:40:34.462731824 -0400 +@@ -0,0 +1,383 @@ ++/* Message catalogs for internationalization. ++ Copyright (C) 1995-1997, 2000-2003 Free Software Foundation, Inc. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++#ifndef _LIBINTL_H ++#define _LIBINTL_H 1 ++ ++#include ++ ++/* The LC_MESSAGES locale category is the category used by the functions ++ gettext() and dgettext(). It is specified in POSIX, but not in ANSI C. ++ On systems that don't define it, use an arbitrary value instead. ++ On Solaris, defines __LOCALE_H (or _LOCALE_H in Solaris 2.5) ++ then includes (i.e. this file!) and then only defines ++ LC_MESSAGES. To avoid a redefinition warning, don't define LC_MESSAGES ++ in this case. */ ++#if !defined LC_MESSAGES && !(defined __LOCALE_H || (defined _LOCALE_H && defined __sun)) ++# define LC_MESSAGES 1729 ++#endif ++ ++/* We define an additional symbol to signal that we use the GNU ++ implementation of gettext. */ ++#define __USE_GNU_GETTEXT 1 ++ ++/* Provide information about the supported file formats. Returns the ++ maximum minor revision number supported for a given major revision. */ ++#define __GNU_GETTEXT_SUPPORTED_REVISION(major) \ ++ ((major) == 0 ? 1 : -1) ++ ++/* Resolve a platform specific conflict on DJGPP. GNU gettext takes ++ precedence over _conio_gettext. */ ++#ifdef __DJGPP__ ++# undef gettext ++#endif ++ ++#ifdef __cplusplus ++extern "C" { ++#endif ++ ++ ++/* We redirect the functions to those prefixed with "libintl_". This is ++ necessary, because some systems define gettext/textdomain/... in the C ++ library (namely, Solaris 2.4 and newer, and GNU libc 2.0 and newer). ++ If we used the unprefixed names, there would be cases where the ++ definition in the C library would override the one in the libintl.so ++ shared library. Recall that on ELF systems, the symbols are looked ++ up in the following order: ++ 1. in the executable, ++ 2. in the shared libraries specified on the link command line, in order, ++ 3. in the dependencies of the shared libraries specified on the link ++ command line, ++ 4. in the dlopen()ed shared libraries, in the order in which they were ++ dlopen()ed. ++ The definition in the C library would override the one in libintl.so if ++ either ++ * -lc is given on the link command line and -lintl isn't, or ++ * -lc is given on the link command line before -lintl, or ++ * libintl.so is a dependency of a dlopen()ed shared library but not ++ linked to the executable at link time. ++ Since Solaris gettext() behaves differently than GNU gettext(), this ++ would be unacceptable. ++ ++ The redirection happens by default through macros in C, so that &gettext ++ is independent of the compilation unit, but through inline functions in ++ C++, in order not to interfere with the name mangling of class fields or ++ class methods called 'gettext'. */ ++ ++/* The user can define _INTL_REDIRECT_INLINE or _INTL_REDIRECT_MACROS. ++ If he doesn't, we choose the method. A third possible method is ++ _INTL_REDIRECT_ASM, supported only by GCC. */ ++#if !(defined _INTL_REDIRECT_INLINE || defined _INTL_REDIRECT_MACROS) ++# if __GNUC__ >= 2 && !defined __APPLE_CC__ && !defined __MINGW32__ && !(__GNUC__ == 2 && defined _AIX) && (defined __STDC__ || defined __cplusplus) ++# define _INTL_REDIRECT_ASM ++# else ++# ifdef __cplusplus ++# define _INTL_REDIRECT_INLINE ++# else ++# define _INTL_REDIRECT_MACROS ++# endif ++# endif ++#endif ++/* Auxiliary macros. */ ++#ifdef _INTL_REDIRECT_ASM ++# define _INTL_ASM(cname) __asm__ (_INTL_ASMNAME (__USER_LABEL_PREFIX__, #cname)) ++# define _INTL_ASMNAME(prefix,cnamestring) _INTL_STRINGIFY (prefix) cnamestring ++# define _INTL_STRINGIFY(prefix) #prefix ++#else ++# define _INTL_ASM(cname) ++#endif ++ ++/* Look up MSGID in the current default message catalog for the current ++ LC_MESSAGES locale. If not found, returns MSGID itself (the default ++ text). */ ++#ifdef _INTL_REDIRECT_INLINE ++extern char *libintl_gettext (const char *__msgid); ++static inline char *gettext (const char *__msgid) ++{ ++ return libintl_gettext (__msgid); ++} ++#else ++#ifdef _INTL_REDIRECT_MACROS ++# define gettext libintl_gettext ++#endif ++extern char *gettext (const char *__msgid) ++ _INTL_ASM (libintl_gettext); ++#endif ++ ++/* Look up MSGID in the DOMAINNAME message catalog for the current ++ LC_MESSAGES locale. */ ++#ifdef _INTL_REDIRECT_INLINE ++extern char *libintl_dgettext (const char *__domainname, const char *__msgid); ++static inline char *dgettext (const char *__domainname, const char *__msgid) ++{ ++ return libintl_dgettext (__domainname, __msgid); ++} ++#else ++#ifdef _INTL_REDIRECT_MACROS ++# define dgettext libintl_dgettext ++#endif ++extern char *dgettext (const char *__domainname, const char *__msgid) ++ _INTL_ASM (libintl_dgettext); ++#endif ++ ++/* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY ++ locale. */ ++#ifdef _INTL_REDIRECT_INLINE ++extern char *libintl_dcgettext (const char *__domainname, const char *__msgid, ++ int __category); ++static inline char *dcgettext (const char *__domainname, const char *__msgid, ++ int __category) ++{ ++ return libintl_dcgettext (__domainname, __msgid, __category); ++} ++#else ++#ifdef _INTL_REDIRECT_MACROS ++# define dcgettext libintl_dcgettext ++#endif ++extern char *dcgettext (const char *__domainname, const char *__msgid, ++ int __category) ++ _INTL_ASM (libintl_dcgettext); ++#endif ++ ++ ++/* Similar to `gettext' but select the plural form corresponding to the ++ number N. */ ++#ifdef _INTL_REDIRECT_INLINE ++extern char *libintl_ngettext (const char *__msgid1, const char *__msgid2, ++ unsigned long int __n); ++static inline char *ngettext (const char *__msgid1, const char *__msgid2, ++ unsigned long int __n) ++{ ++ return libintl_ngettext (__msgid1, __msgid2, __n); ++} ++#else ++#ifdef _INTL_REDIRECT_MACROS ++# define ngettext libintl_ngettext ++#endif ++extern char *ngettext (const char *__msgid1, const char *__msgid2, ++ unsigned long int __n) ++ _INTL_ASM (libintl_ngettext); ++#endif ++ ++/* Similar to `dgettext' but select the plural form corresponding to the ++ number N. */ ++#ifdef _INTL_REDIRECT_INLINE ++extern char *libintl_dngettext (const char *__domainname, const char *__msgid1, ++ const char *__msgid2, unsigned long int __n); ++static inline char *dngettext (const char *__domainname, const char *__msgid1, ++ const char *__msgid2, unsigned long int __n) ++{ ++ return libintl_dngettext (__domainname, __msgid1, __msgid2, __n); ++} ++#else ++#ifdef _INTL_REDIRECT_MACROS ++# define dngettext libintl_dngettext ++#endif ++extern char *dngettext (const char *__domainname, ++ const char *__msgid1, const char *__msgid2, ++ unsigned long int __n) ++ _INTL_ASM (libintl_dngettext); ++#endif ++ ++/* Similar to `dcgettext' but select the plural form corresponding to the ++ number N. */ ++#ifdef _INTL_REDIRECT_INLINE ++extern char *libintl_dcngettext (const char *__domainname, ++ const char *__msgid1, const char *__msgid2, ++ unsigned long int __n, int __category); ++static inline char *dcngettext (const char *__domainname, ++ const char *__msgid1, const char *__msgid2, ++ unsigned long int __n, int __category) ++{ ++ return libintl_dcngettext (__domainname, __msgid1, __msgid2, __n, __category); ++} ++#else ++#ifdef _INTL_REDIRECT_MACROS ++# define dcngettext libintl_dcngettext ++#endif ++extern char *dcngettext (const char *__domainname, ++ const char *__msgid1, const char *__msgid2, ++ unsigned long int __n, int __category) ++ _INTL_ASM (libintl_dcngettext); ++#endif ++ ++ ++/* Set the current default message catalog to DOMAINNAME. ++ If DOMAINNAME is null, return the current default. ++ If DOMAINNAME is "", reset to the default of "messages". */ ++#ifdef _INTL_REDIRECT_INLINE ++extern char *libintl_textdomain (const char *__domainname); ++static inline char *textdomain (const char *__domainname) ++{ ++ return libintl_textdomain (__domainname); ++} ++#else ++#ifdef _INTL_REDIRECT_MACROS ++# define textdomain libintl_textdomain ++#endif ++extern char *textdomain (const char *__domainname) ++ _INTL_ASM (libintl_textdomain); ++#endif ++ ++/* Specify that the DOMAINNAME message catalog will be found ++ in DIRNAME rather than in the system locale data base. */ ++#ifdef _INTL_REDIRECT_INLINE ++extern char *libintl_bindtextdomain (const char *__domainname, ++ const char *__dirname); ++static inline char *bindtextdomain (const char *__domainname, ++ const char *__dirname) ++{ ++ return libintl_bindtextdomain (__domainname, __dirname); ++} ++#else ++#ifdef _INTL_REDIRECT_MACROS ++# define bindtextdomain libintl_bindtextdomain ++#endif ++extern char *bindtextdomain (const char *__domainname, const char *__dirname) ++ _INTL_ASM (libintl_bindtextdomain); ++#endif ++ ++/* Specify the character encoding in which the messages from the ++ DOMAINNAME message catalog will be returned. */ ++#ifdef _INTL_REDIRECT_INLINE ++extern char *libintl_bind_textdomain_codeset (const char *__domainname, ++ const char *__codeset); ++static inline char *bind_textdomain_codeset (const char *__domainname, ++ const char *__codeset) ++{ ++ return libintl_bind_textdomain_codeset (__domainname, __codeset); ++} ++#else ++#ifdef _INTL_REDIRECT_MACROS ++# define bind_textdomain_codeset libintl_bind_textdomain_codeset ++#endif ++extern char *bind_textdomain_codeset (const char *__domainname, ++ const char *__codeset) ++ _INTL_ASM (libintl_bind_textdomain_codeset); ++#endif ++ ++ ++/* Support for format strings with positions in *printf(), following the ++ POSIX/XSI specification. ++ Note: These replacements for the *printf() functions are visible only ++ in source files that #include or #include "gettext.h". ++ Packages that use *printf() in source files that don't refer to _() ++ or gettext() but for which the format string could be the return value ++ of _() or gettext() need to add this #include. Oh well. */ ++ ++#if !@HAVE_POSIX_PRINTF@ ++ ++#include ++#include ++ ++/* Get va_list. */ ++#if __STDC__ || defined __cplusplus || defined _MSC_VER ++# include ++#else ++# include ++#endif ++ ++#undef fprintf ++#define fprintf libintl_fprintf ++extern int fprintf (FILE *, const char *, ...); ++#undef vfprintf ++#define vfprintf libintl_vfprintf ++extern int vfprintf (FILE *, const char *, va_list); ++ ++#undef printf ++#define printf libintl_printf ++extern int printf (const char *, ...); ++#undef vprintf ++#define vprintf libintl_vprintf ++extern int vprintf (const char *, va_list); ++ ++#undef sprintf ++#define sprintf libintl_sprintf ++extern int sprintf (char *, const char *, ...); ++#undef vsprintf ++#define vsprintf libintl_vsprintf ++extern int vsprintf (char *, const char *, va_list); ++ ++#if @HAVE_SNPRINTF@ ++ ++#undef snprintf ++#define snprintf libintl_snprintf ++extern int snprintf (char *, size_t, const char *, ...); ++#undef vsnprintf ++#define vsnprintf libintl_vsnprintf ++extern int vsnprintf (char *, size_t, const char *, va_list); ++ ++#endif ++ ++#if @HAVE_ASPRINTF@ ++ ++#undef asprintf ++#define asprintf libintl_asprintf ++extern int asprintf (char **, const char *, ...); ++#undef vasprintf ++#define vasprintf libintl_vasprintf ++extern int vasprintf (char **, const char *, va_list); ++ ++#endif ++ ++#if @HAVE_WPRINTF@ ++ ++#undef fwprintf ++#define fwprintf libintl_fwprintf ++extern int fwprintf (FILE *, const wchar_t *, ...); ++#undef vfwprintf ++#define vfwprintf libintl_vfwprintf ++extern int vfwprintf (FILE *, const wchar_t *, va_list); ++ ++#undef wprintf ++#define wprintf libintl_wprintf ++extern int wprintf (const wchar_t *, ...); ++#undef vwprintf ++#define vwprintf libintl_vwprintf ++extern int vwprintf (const wchar_t *, va_list); ++ ++#undef swprintf ++#define swprintf libintl_swprintf ++extern int swprintf (wchar_t *, size_t, const wchar_t *, ...); ++#undef vswprintf ++#define vswprintf libintl_vswprintf ++extern int vswprintf (wchar_t *, size_t, const wchar_t *, va_list); ++ ++#endif ++ ++#endif ++ ++ ++/* Support for relocatable packages. */ ++ ++/* Sets the original and the current installation prefix of the package. ++ Relocation simply replaces a pathname starting with the original prefix ++ by the corresponding pathname with the current prefix instead. Both ++ prefixes should be directory names without trailing slash (i.e. use "" ++ instead of "/"). */ ++#define libintl_set_relocation_prefix libintl_set_relocation_prefix ++extern void ++ libintl_set_relocation_prefix (const char *orig_prefix, ++ const char *curr_prefix); ++ ++ ++#ifdef __cplusplus ++} ++#endif ++ ++#endif /* libintl.h */ +--- lrzsz-0.12.20.safe/intl/linux-msg.sed 1998-04-26 09:20:52.000000000 -0400 ++++ lrzsz-0.12.20/intl/linux-msg.sed 1969-12-31 19:00:00.000000000 -0500 +@@ -1,100 +0,0 @@ +-# po2msg.sed - Convert Uniforum style .po file to Linux style .msg file +-# Copyright (C) 1995 Free Software Foundation, Inc. +-# Ulrich Drepper , 1995. +-# +-# This program is free software; you can redistribute it and/or modify +-# it under the terms of the GNU General Public License as published by +-# the Free Software Foundation; either version 2, or (at your option) +-# any later version. +-# +-# This program is distributed in the hope that it will be useful, +-# but WITHOUT ANY WARRANTY; without even the implied warranty of +-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-# GNU General Public License for more details. +-# +-# You should have received a copy of the GNU General Public License +-# along with this program; if not, write to the Free Software +-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +-# +-# +-# The first directive in the .msg should be the definition of the +-# message set number. We use always set number 1. +-# +-1 { +- i\ +-$set 1 # Automatically created by po2msg.sed +- h +- s/.*/0/ +- x +-} +-# +-# Mitch's old catalog format does not allow comments. +-# +-# We copy the original message as a comment into the .msg file. +-# +-/^msgid/ { +- s/msgid[ ]*"// +-# +-# This does not work now with the new format. +-# /"$/! { +-# s/\\$// +-# s/$/ ... (more lines following)"/ +-# } +- x +-# The following nice solution is by +-# Bruno +- td +-# Increment a decimal number in pattern space. +-# First hide trailing `9' digits. +- :d +- s/9\(_*\)$/_\1/ +- td +-# Assure at least one digit is available. +- s/^\(_*\)$/0\1/ +-# Increment the last digit. +- s/8\(_*\)$/9\1/ +- s/7\(_*\)$/8\1/ +- s/6\(_*\)$/7\1/ +- s/5\(_*\)$/6\1/ +- s/4\(_*\)$/5\1/ +- s/3\(_*\)$/4\1/ +- s/2\(_*\)$/3\1/ +- s/1\(_*\)$/2\1/ +- s/0\(_*\)$/1\1/ +-# Convert the hidden `9' digits to `0's. +- s/_/0/g +- x +- G +- s/\(.*\)"\n\([0-9]*\)/$ #\2 Original Message:(\1)/p +-} +-# +-# The .msg file contains, other then the .po file, only the translations +-# but each given a unique ID. Starting from 1 and incrementing by 1 for +-# each message we assign them to the messages. +-# It is important that the .po file used to generate the cat-id-tbl.c file +-# (with po-to-tbl) is the same as the one used here. (At least the order +-# of declarations must not be changed.) +-# +-/^msgstr/ { +- s/msgstr[ ]*"\(.*\)"/# \1/ +-# Clear substitution flag. +- tb +-# Append the next line. +- :b +- N +-# Look whether second part is continuation line. +- s/\(.*\n\)"\(.*\)"/\1\2/ +-# Yes, then branch. +- ta +- P +- D +-# Note that D includes a jump to the start!! +-# We found a continuation line. But before printing insert '\'. +- :a +- s/\(.*\)\(\n.*\)/\1\\\2/ +- P +-# We cannot use D here. +- s/.*\n\(.*\)/\1/ +- tb +-} +-d +--- lrzsz-0.12.20.safe/intl/loadinfo.h 1998-04-26 09:20:52.000000000 -0400 ++++ lrzsz-0.12.20/intl/loadinfo.h 2004-09-12 14:40:34.468730912 -0400 +@@ -1,9 +1,54 @@ +-#ifndef PARAMS +-# if __STDC__ +-# define PARAMS(args) args +-# else +-# define PARAMS(args) () +-# endif ++/* Copyright (C) 1996-1999, 2000-2003 Free Software Foundation, Inc. ++ This file is part of the GNU C Library. ++ Contributed by Ulrich Drepper , 1996. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++#ifndef _LOADINFO_H ++#define _LOADINFO_H 1 ++ ++/* Declarations of locale dependent catalog lookup functions. ++ Implemented in ++ ++ localealias.c Possibly replace a locale name by another. ++ explodename.c Split a locale name into its various fields. ++ l10nflist.c Generate a list of filenames of possible message catalogs. ++ finddomain.c Find and open the relevant message catalogs. ++ ++ The main function _nl_find_domain() in finddomain.c is declared ++ in gettextP.h. ++ */ ++ ++#ifndef internal_function ++# define internal_function ++#endif ++ ++/* Tell the compiler when a conditional or integer expression is ++ almost always true or almost always false. */ ++#ifndef HAVE_BUILTIN_EXPECT ++# define __builtin_expect(expr, val) (expr) ++#endif ++ ++/* Separator in PATH like lists of pathnames. */ ++#if defined _WIN32 || defined __WIN32__ || defined __EMX__ || defined __DJGPP__ ++ /* Win32, OS/2, DOS */ ++# define PATH_SEPARATOR ';' ++#else ++ /* Unix */ ++# define PATH_SEPARATOR ':' + #endif + + /* Encoding of locale name parts. */ +@@ -32,27 +77,69 @@ + }; + + +-extern const char *_nl_normalize_codeset PARAMS ((const char *codeset, +- size_t name_len)); ++/* Normalize codeset name. There is no standard for the codeset ++ names. Normalization allows the user to use any of the common ++ names. The return value is dynamically allocated and has to be ++ freed by the caller. */ ++extern const char *_nl_normalize_codeset (const char *codeset, ++ size_t name_len); + ++/* Lookup a locale dependent file. ++ *L10NFILE_LIST denotes a pool of lookup results of locale dependent ++ files of the same kind, sorted in decreasing order of ->filename. ++ DIRLIST and DIRLIST_LEN are an argz list of directories in which to ++ look, containing at least one directory (i.e. DIRLIST_LEN > 0). ++ MASK, LANGUAGE, TERRITORY, CODESET, NORMALIZED_CODESET, MODIFIER, ++ SPECIAL, SPONSOR, REVISION are the pieces of the locale name, as ++ produced by _nl_explode_name(). FILENAME is the filename suffix. ++ The return value is the lookup result, either found in *L10NFILE_LIST, ++ or - if DO_ALLOCATE is nonzero - freshly allocated, or possibly NULL. ++ If the return value is non-NULL, it is added to *L10NFILE_LIST, and ++ its ->next field denotes the chaining inside *L10NFILE_LIST, and ++ furthermore its ->successor[] field contains a list of other lookup ++ results from which this lookup result inherits. */ + extern struct loaded_l10nfile * +-_nl_make_l10nflist PARAMS ((struct loaded_l10nfile **l10nfile_list, +- const char *dirlist, size_t dirlist_len, int mask, +- const char *language, const char *territory, +- const char *codeset, +- const char *normalized_codeset, +- const char *modifier, const char *special, +- const char *sponsor, const char *revision, +- const char *filename, int do_allocate)); ++_nl_make_l10nflist (struct loaded_l10nfile **l10nfile_list, ++ const char *dirlist, size_t dirlist_len, int mask, ++ const char *language, const char *territory, ++ const char *codeset, const char *normalized_codeset, ++ const char *modifier, const char *special, ++ const char *sponsor, const char *revision, ++ const char *filename, int do_allocate); + ++/* Lookup the real locale name for a locale alias NAME, or NULL if ++ NAME is not a locale alias (but possibly a real locale name). ++ The return value is statically allocated and must not be freed. */ ++extern const char *_nl_expand_alias (const char *name); + +-extern const char *_nl_expand_alias PARAMS ((const char *name)); ++/* Split a locale name NAME into its pieces: language, modifier, ++ territory, codeset, special, sponsor, revision. ++ NAME gets destructively modified: NUL bytes are inserted here and ++ there. *LANGUAGE gets assigned NAME. Each of *MODIFIER, *TERRITORY, ++ *CODESET, *SPECIAL, *SPONSOR, *REVISION gets assigned either a ++ pointer into the old NAME string, or NULL. *NORMALIZED_CODESET ++ gets assigned the expanded *CODESET, if it is different from *CODESET; ++ this one is dynamically allocated and has to be freed by the caller. ++ The return value is a bitmask, where each bit corresponds to one ++ filled-in value: ++ XPG_MODIFIER, CEN_AUDIENCE for *MODIFIER, ++ TERRITORY for *TERRITORY, ++ XPG_CODESET for *CODESET, ++ XPG_NORM_CODESET for *NORMALIZED_CODESET, ++ CEN_SPECIAL for *SPECIAL, ++ CEN_SPONSOR for *SPONSOR, ++ CEN_REVISION for *REVISION. ++ */ ++extern int _nl_explode_name (char *name, const char **language, ++ const char **modifier, const char **territory, ++ const char **codeset, ++ const char **normalized_codeset, ++ const char **special, const char **sponsor, ++ const char **revision); + +-extern int _nl_explode_name PARAMS ((char *name, const char **language, +- const char **modifier, +- const char **territory, +- const char **codeset, +- const char **normalized_codeset, +- const char **special, +- const char **sponsor, +- const char **revision)); ++/* Split a locale name NAME into a leading language part and all the ++ rest. Return a pointer to the first character after the language, ++ i.e. to the first byte of the rest. */ ++extern char *_nl_find_language (const char *name); ++ ++#endif /* loadinfo.h */ +--- lrzsz-0.12.20.safe/intl/loadmsgcat.c 1998-04-26 09:22:37.000000000 -0400 ++++ lrzsz-0.12.20/intl/loadmsgcat.c 2004-09-12 14:40:34.473730152 -0400 +@@ -1,42 +1,455 @@ +-/* Load needed message catalogs +- Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. ++/* Load needed message catalogs. ++ Copyright (C) 1995-1999, 2000-2004 Free Software Foundation, Inc. + +- This program is free software; you can redistribute it and/or modify +- it under the terms of the GNU General Public License as published by +- the Free Software Foundation; either version 2, or (at your option) ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +- GNU General Public License for more details. ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. + +- You should have received a copy of the GNU General Public License +- along with this program; if not, write to the Free Software Foundation, +- Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++/* Tell glibc's to provide a prototype for mempcpy(). ++ This must come before because may include ++ , and once has been included, it's too late. */ ++#ifndef _GNU_SOURCE ++# define _GNU_SOURCE 1 ++#endif + + #ifdef HAVE_CONFIG_H + # include + #endif + ++#include ++#include + #include + #include + #include + +-#if defined STDC_HEADERS || defined _LIBC +-# include ++#ifdef __GNUC__ ++# undef alloca ++# define alloca __builtin_alloca ++# define HAVE_ALLOCA 1 ++#else ++# ifdef _MSC_VER ++# include ++# define alloca _alloca ++# else ++# if defined HAVE_ALLOCA_H || defined _LIBC ++# include ++# else ++# ifdef _AIX ++ #pragma alloca ++# else ++# ifndef alloca ++char *alloca (); ++# endif ++# endif ++# endif ++# endif + #endif + ++#include ++#include ++ + #if defined HAVE_UNISTD_H || defined _LIBC + # include + #endif + +-#if (defined HAVE_MMAP && defined HAVE_MUNMAP) || defined _LIBC ++#ifdef _LIBC ++# include ++# include ++#endif ++ ++#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \ ++ || (defined _LIBC && defined _POSIX_MAPPED_FILES) + # include ++# undef HAVE_MMAP ++# define HAVE_MMAP 1 ++#else ++# undef HAVE_MMAP + #endif + +-#include "gettext.h" ++#if defined HAVE_STDINT_H_WITH_UINTMAX || defined _LIBC ++# include ++#endif ++#if defined HAVE_INTTYPES_H || defined _LIBC ++# include ++#endif ++ ++#include "gmo.h" + #include "gettextP.h" ++#include "hash-string.h" ++#include "plural-exp.h" ++ ++#ifdef _LIBC ++# include "../locale/localeinfo.h" ++#endif ++ ++/* Provide fallback values for macros that ought to be defined in . ++ Note that our fallback values need not be literal strings, because we don't ++ use them with preprocessor string concatenation. */ ++#if !defined PRId8 || PRI_MACROS_BROKEN ++# undef PRId8 ++# define PRId8 "d" ++#endif ++#if !defined PRIi8 || PRI_MACROS_BROKEN ++# undef PRIi8 ++# define PRIi8 "i" ++#endif ++#if !defined PRIo8 || PRI_MACROS_BROKEN ++# undef PRIo8 ++# define PRIo8 "o" ++#endif ++#if !defined PRIu8 || PRI_MACROS_BROKEN ++# undef PRIu8 ++# define PRIu8 "u" ++#endif ++#if !defined PRIx8 || PRI_MACROS_BROKEN ++# undef PRIx8 ++# define PRIx8 "x" ++#endif ++#if !defined PRIX8 || PRI_MACROS_BROKEN ++# undef PRIX8 ++# define PRIX8 "X" ++#endif ++#if !defined PRId16 || PRI_MACROS_BROKEN ++# undef PRId16 ++# define PRId16 "d" ++#endif ++#if !defined PRIi16 || PRI_MACROS_BROKEN ++# undef PRIi16 ++# define PRIi16 "i" ++#endif ++#if !defined PRIo16 || PRI_MACROS_BROKEN ++# undef PRIo16 ++# define PRIo16 "o" ++#endif ++#if !defined PRIu16 || PRI_MACROS_BROKEN ++# undef PRIu16 ++# define PRIu16 "u" ++#endif ++#if !defined PRIx16 || PRI_MACROS_BROKEN ++# undef PRIx16 ++# define PRIx16 "x" ++#endif ++#if !defined PRIX16 || PRI_MACROS_BROKEN ++# undef PRIX16 ++# define PRIX16 "X" ++#endif ++#if !defined PRId32 || PRI_MACROS_BROKEN ++# undef PRId32 ++# define PRId32 "d" ++#endif ++#if !defined PRIi32 || PRI_MACROS_BROKEN ++# undef PRIi32 ++# define PRIi32 "i" ++#endif ++#if !defined PRIo32 || PRI_MACROS_BROKEN ++# undef PRIo32 ++# define PRIo32 "o" ++#endif ++#if !defined PRIu32 || PRI_MACROS_BROKEN ++# undef PRIu32 ++# define PRIu32 "u" ++#endif ++#if !defined PRIx32 || PRI_MACROS_BROKEN ++# undef PRIx32 ++# define PRIx32 "x" ++#endif ++#if !defined PRIX32 || PRI_MACROS_BROKEN ++# undef PRIX32 ++# define PRIX32 "X" ++#endif ++#if !defined PRId64 || PRI_MACROS_BROKEN ++# undef PRId64 ++# define PRId64 (sizeof (long) == 8 ? "ld" : "lld") ++#endif ++#if !defined PRIi64 || PRI_MACROS_BROKEN ++# undef PRIi64 ++# define PRIi64 (sizeof (long) == 8 ? "li" : "lli") ++#endif ++#if !defined PRIo64 || PRI_MACROS_BROKEN ++# undef PRIo64 ++# define PRIo64 (sizeof (long) == 8 ? "lo" : "llo") ++#endif ++#if !defined PRIu64 || PRI_MACROS_BROKEN ++# undef PRIu64 ++# define PRIu64 (sizeof (long) == 8 ? "lu" : "llu") ++#endif ++#if !defined PRIx64 || PRI_MACROS_BROKEN ++# undef PRIx64 ++# define PRIx64 (sizeof (long) == 8 ? "lx" : "llx") ++#endif ++#if !defined PRIX64 || PRI_MACROS_BROKEN ++# undef PRIX64 ++# define PRIX64 (sizeof (long) == 8 ? "lX" : "llX") ++#endif ++#if !defined PRIdLEAST8 || PRI_MACROS_BROKEN ++# undef PRIdLEAST8 ++# define PRIdLEAST8 "d" ++#endif ++#if !defined PRIiLEAST8 || PRI_MACROS_BROKEN ++# undef PRIiLEAST8 ++# define PRIiLEAST8 "i" ++#endif ++#if !defined PRIoLEAST8 || PRI_MACROS_BROKEN ++# undef PRIoLEAST8 ++# define PRIoLEAST8 "o" ++#endif ++#if !defined PRIuLEAST8 || PRI_MACROS_BROKEN ++# undef PRIuLEAST8 ++# define PRIuLEAST8 "u" ++#endif ++#if !defined PRIxLEAST8 || PRI_MACROS_BROKEN ++# undef PRIxLEAST8 ++# define PRIxLEAST8 "x" ++#endif ++#if !defined PRIXLEAST8 || PRI_MACROS_BROKEN ++# undef PRIXLEAST8 ++# define PRIXLEAST8 "X" ++#endif ++#if !defined PRIdLEAST16 || PRI_MACROS_BROKEN ++# undef PRIdLEAST16 ++# define PRIdLEAST16 "d" ++#endif ++#if !defined PRIiLEAST16 || PRI_MACROS_BROKEN ++# undef PRIiLEAST16 ++# define PRIiLEAST16 "i" ++#endif ++#if !defined PRIoLEAST16 || PRI_MACROS_BROKEN ++# undef PRIoLEAST16 ++# define PRIoLEAST16 "o" ++#endif ++#if !defined PRIuLEAST16 || PRI_MACROS_BROKEN ++# undef PRIuLEAST16 ++# define PRIuLEAST16 "u" ++#endif ++#if !defined PRIxLEAST16 || PRI_MACROS_BROKEN ++# undef PRIxLEAST16 ++# define PRIxLEAST16 "x" ++#endif ++#if !defined PRIXLEAST16 || PRI_MACROS_BROKEN ++# undef PRIXLEAST16 ++# define PRIXLEAST16 "X" ++#endif ++#if !defined PRIdLEAST32 || PRI_MACROS_BROKEN ++# undef PRIdLEAST32 ++# define PRIdLEAST32 "d" ++#endif ++#if !defined PRIiLEAST32 || PRI_MACROS_BROKEN ++# undef PRIiLEAST32 ++# define PRIiLEAST32 "i" ++#endif ++#if !defined PRIoLEAST32 || PRI_MACROS_BROKEN ++# undef PRIoLEAST32 ++# define PRIoLEAST32 "o" ++#endif ++#if !defined PRIuLEAST32 || PRI_MACROS_BROKEN ++# undef PRIuLEAST32 ++# define PRIuLEAST32 "u" ++#endif ++#if !defined PRIxLEAST32 || PRI_MACROS_BROKEN ++# undef PRIxLEAST32 ++# define PRIxLEAST32 "x" ++#endif ++#if !defined PRIXLEAST32 || PRI_MACROS_BROKEN ++# undef PRIXLEAST32 ++# define PRIXLEAST32 "X" ++#endif ++#if !defined PRIdLEAST64 || PRI_MACROS_BROKEN ++# undef PRIdLEAST64 ++# define PRIdLEAST64 PRId64 ++#endif ++#if !defined PRIiLEAST64 || PRI_MACROS_BROKEN ++# undef PRIiLEAST64 ++# define PRIiLEAST64 PRIi64 ++#endif ++#if !defined PRIoLEAST64 || PRI_MACROS_BROKEN ++# undef PRIoLEAST64 ++# define PRIoLEAST64 PRIo64 ++#endif ++#if !defined PRIuLEAST64 || PRI_MACROS_BROKEN ++# undef PRIuLEAST64 ++# define PRIuLEAST64 PRIu64 ++#endif ++#if !defined PRIxLEAST64 || PRI_MACROS_BROKEN ++# undef PRIxLEAST64 ++# define PRIxLEAST64 PRIx64 ++#endif ++#if !defined PRIXLEAST64 || PRI_MACROS_BROKEN ++# undef PRIXLEAST64 ++# define PRIXLEAST64 PRIX64 ++#endif ++#if !defined PRIdFAST8 || PRI_MACROS_BROKEN ++# undef PRIdFAST8 ++# define PRIdFAST8 "d" ++#endif ++#if !defined PRIiFAST8 || PRI_MACROS_BROKEN ++# undef PRIiFAST8 ++# define PRIiFAST8 "i" ++#endif ++#if !defined PRIoFAST8 || PRI_MACROS_BROKEN ++# undef PRIoFAST8 ++# define PRIoFAST8 "o" ++#endif ++#if !defined PRIuFAST8 || PRI_MACROS_BROKEN ++# undef PRIuFAST8 ++# define PRIuFAST8 "u" ++#endif ++#if !defined PRIxFAST8 || PRI_MACROS_BROKEN ++# undef PRIxFAST8 ++# define PRIxFAST8 "x" ++#endif ++#if !defined PRIXFAST8 || PRI_MACROS_BROKEN ++# undef PRIXFAST8 ++# define PRIXFAST8 "X" ++#endif ++#if !defined PRIdFAST16 || PRI_MACROS_BROKEN ++# undef PRIdFAST16 ++# define PRIdFAST16 "d" ++#endif ++#if !defined PRIiFAST16 || PRI_MACROS_BROKEN ++# undef PRIiFAST16 ++# define PRIiFAST16 "i" ++#endif ++#if !defined PRIoFAST16 || PRI_MACROS_BROKEN ++# undef PRIoFAST16 ++# define PRIoFAST16 "o" ++#endif ++#if !defined PRIuFAST16 || PRI_MACROS_BROKEN ++# undef PRIuFAST16 ++# define PRIuFAST16 "u" ++#endif ++#if !defined PRIxFAST16 || PRI_MACROS_BROKEN ++# undef PRIxFAST16 ++# define PRIxFAST16 "x" ++#endif ++#if !defined PRIXFAST16 || PRI_MACROS_BROKEN ++# undef PRIXFAST16 ++# define PRIXFAST16 "X" ++#endif ++#if !defined PRIdFAST32 || PRI_MACROS_BROKEN ++# undef PRIdFAST32 ++# define PRIdFAST32 "d" ++#endif ++#if !defined PRIiFAST32 || PRI_MACROS_BROKEN ++# undef PRIiFAST32 ++# define PRIiFAST32 "i" ++#endif ++#if !defined PRIoFAST32 || PRI_MACROS_BROKEN ++# undef PRIoFAST32 ++# define PRIoFAST32 "o" ++#endif ++#if !defined PRIuFAST32 || PRI_MACROS_BROKEN ++# undef PRIuFAST32 ++# define PRIuFAST32 "u" ++#endif ++#if !defined PRIxFAST32 || PRI_MACROS_BROKEN ++# undef PRIxFAST32 ++# define PRIxFAST32 "x" ++#endif ++#if !defined PRIXFAST32 || PRI_MACROS_BROKEN ++# undef PRIXFAST32 ++# define PRIXFAST32 "X" ++#endif ++#if !defined PRIdFAST64 || PRI_MACROS_BROKEN ++# undef PRIdFAST64 ++# define PRIdFAST64 PRId64 ++#endif ++#if !defined PRIiFAST64 || PRI_MACROS_BROKEN ++# undef PRIiFAST64 ++# define PRIiFAST64 PRIi64 ++#endif ++#if !defined PRIoFAST64 || PRI_MACROS_BROKEN ++# undef PRIoFAST64 ++# define PRIoFAST64 PRIo64 ++#endif ++#if !defined PRIuFAST64 || PRI_MACROS_BROKEN ++# undef PRIuFAST64 ++# define PRIuFAST64 PRIu64 ++#endif ++#if !defined PRIxFAST64 || PRI_MACROS_BROKEN ++# undef PRIxFAST64 ++# define PRIxFAST64 PRIx64 ++#endif ++#if !defined PRIXFAST64 || PRI_MACROS_BROKEN ++# undef PRIXFAST64 ++# define PRIXFAST64 PRIX64 ++#endif ++#if !defined PRIdMAX || PRI_MACROS_BROKEN ++# undef PRIdMAX ++# define PRIdMAX (sizeof (uintmax_t) == sizeof (long) ? "ld" : "lld") ++#endif ++#if !defined PRIiMAX || PRI_MACROS_BROKEN ++# undef PRIiMAX ++# define PRIiMAX (sizeof (uintmax_t) == sizeof (long) ? "li" : "lli") ++#endif ++#if !defined PRIoMAX || PRI_MACROS_BROKEN ++# undef PRIoMAX ++# define PRIoMAX (sizeof (uintmax_t) == sizeof (long) ? "lo" : "llo") ++#endif ++#if !defined PRIuMAX || PRI_MACROS_BROKEN ++# undef PRIuMAX ++# define PRIuMAX (sizeof (uintmax_t) == sizeof (long) ? "lu" : "llu") ++#endif ++#if !defined PRIxMAX || PRI_MACROS_BROKEN ++# undef PRIxMAX ++# define PRIxMAX (sizeof (uintmax_t) == sizeof (long) ? "lx" : "llx") ++#endif ++#if !defined PRIXMAX || PRI_MACROS_BROKEN ++# undef PRIXMAX ++# define PRIXMAX (sizeof (uintmax_t) == sizeof (long) ? "lX" : "llX") ++#endif ++#if !defined PRIdPTR || PRI_MACROS_BROKEN ++# undef PRIdPTR ++# define PRIdPTR \ ++ (sizeof (void *) == sizeof (long) ? "ld" : \ ++ sizeof (void *) == sizeof (int) ? "d" : \ ++ "lld") ++#endif ++#if !defined PRIiPTR || PRI_MACROS_BROKEN ++# undef PRIiPTR ++# define PRIiPTR \ ++ (sizeof (void *) == sizeof (long) ? "li" : \ ++ sizeof (void *) == sizeof (int) ? "i" : \ ++ "lli") ++#endif ++#if !defined PRIoPTR || PRI_MACROS_BROKEN ++# undef PRIoPTR ++# define PRIoPTR \ ++ (sizeof (void *) == sizeof (long) ? "lo" : \ ++ sizeof (void *) == sizeof (int) ? "o" : \ ++ "llo") ++#endif ++#if !defined PRIuPTR || PRI_MACROS_BROKEN ++# undef PRIuPTR ++# define PRIuPTR \ ++ (sizeof (void *) == sizeof (long) ? "lu" : \ ++ sizeof (void *) == sizeof (int) ? "u" : \ ++ "llu") ++#endif ++#if !defined PRIxPTR || PRI_MACROS_BROKEN ++# undef PRIxPTR ++# define PRIxPTR \ ++ (sizeof (void *) == sizeof (long) ? "lx" : \ ++ sizeof (void *) == sizeof (int) ? "x" : \ ++ "llx") ++#endif ++#if !defined PRIXPTR || PRI_MACROS_BROKEN ++# undef PRIXPTR ++# define PRIXPTR \ ++ (sizeof (void *) == sizeof (long) ? "lX" : \ ++ sizeof (void *) == sizeof (int) ? "X" : \ ++ "llX") ++#endif + + /* @@ end of prolog @@ */ + +@@ -44,7 +457,6 @@ + /* Rename the non ISO C functions. This is required by the standard + because some ISO C functions will require linking with this object + file and the name space must not be polluted. */ +-# define fstat __fstat + # define open __open + # define close __close + # define read __read +@@ -52,30 +464,471 @@ + # define munmap __munmap + #endif + ++/* For those losing systems which don't have `alloca' we have to add ++ some additional code emulating it. */ ++#ifdef HAVE_ALLOCA ++# define freea(p) /* nothing */ ++#else ++# define alloca(n) malloc (n) ++# define freea(p) free (p) ++#endif ++ ++/* For systems that distinguish between text and binary I/O. ++ O_BINARY is usually declared in . */ ++#if !defined O_BINARY && defined _O_BINARY ++ /* For MSC-compatible compilers. */ ++# define O_BINARY _O_BINARY ++# define O_TEXT _O_TEXT ++#endif ++#ifdef __BEOS__ ++ /* BeOS 5 has O_BINARY and O_TEXT, but they have no effect. */ ++# undef O_BINARY ++# undef O_TEXT ++#endif ++/* On reasonable systems, binary I/O is the default. */ ++#ifndef O_BINARY ++# define O_BINARY 0 ++#endif ++ ++ + /* We need a sign, whether a new catalog was loaded, which can be associated + with all translations. This is important if the translations are + cached by one of GCC's features. */ +-int _nl_msg_cat_cntr = 0; ++int _nl_msg_cat_cntr; + + ++/* Expand a system dependent string segment. Return NULL if unsupported. */ ++static const char * ++get_sysdep_segment_value (const char *name) ++{ ++ /* Test for an ISO C 99 section 7.8.1 format string directive. ++ Syntax: ++ P R I { d | i | o | u | x | X } ++ { { | LEAST | FAST } { 8 | 16 | 32 | 64 } | MAX | PTR } */ ++ /* We don't use a table of 14 times 6 'const char *' strings here, because ++ data relocations cost startup time. */ ++ if (name[0] == 'P' && name[1] == 'R' && name[2] == 'I') ++ { ++ if (name[3] == 'd' || name[3] == 'i' || name[3] == 'o' || name[3] == 'u' ++ || name[3] == 'x' || name[3] == 'X') ++ { ++ if (name[4] == '8' && name[5] == '\0') ++ { ++ if (name[3] == 'd') ++ return PRId8; ++ if (name[3] == 'i') ++ return PRIi8; ++ if (name[3] == 'o') ++ return PRIo8; ++ if (name[3] == 'u') ++ return PRIu8; ++ if (name[3] == 'x') ++ return PRIx8; ++ if (name[3] == 'X') ++ return PRIX8; ++ abort (); ++ } ++ if (name[4] == '1' && name[5] == '6' && name[6] == '\0') ++ { ++ if (name[3] == 'd') ++ return PRId16; ++ if (name[3] == 'i') ++ return PRIi16; ++ if (name[3] == 'o') ++ return PRIo16; ++ if (name[3] == 'u') ++ return PRIu16; ++ if (name[3] == 'x') ++ return PRIx16; ++ if (name[3] == 'X') ++ return PRIX16; ++ abort (); ++ } ++ if (name[4] == '3' && name[5] == '2' && name[6] == '\0') ++ { ++ if (name[3] == 'd') ++ return PRId32; ++ if (name[3] == 'i') ++ return PRIi32; ++ if (name[3] == 'o') ++ return PRIo32; ++ if (name[3] == 'u') ++ return PRIu32; ++ if (name[3] == 'x') ++ return PRIx32; ++ if (name[3] == 'X') ++ return PRIX32; ++ abort (); ++ } ++ if (name[4] == '6' && name[5] == '4' && name[6] == '\0') ++ { ++ if (name[3] == 'd') ++ return PRId64; ++ if (name[3] == 'i') ++ return PRIi64; ++ if (name[3] == 'o') ++ return PRIo64; ++ if (name[3] == 'u') ++ return PRIu64; ++ if (name[3] == 'x') ++ return PRIx64; ++ if (name[3] == 'X') ++ return PRIX64; ++ abort (); ++ } ++ if (name[4] == 'L' && name[5] == 'E' && name[6] == 'A' ++ && name[7] == 'S' && name[8] == 'T') ++ { ++ if (name[9] == '8' && name[10] == '\0') ++ { ++ if (name[3] == 'd') ++ return PRIdLEAST8; ++ if (name[3] == 'i') ++ return PRIiLEAST8; ++ if (name[3] == 'o') ++ return PRIoLEAST8; ++ if (name[3] == 'u') ++ return PRIuLEAST8; ++ if (name[3] == 'x') ++ return PRIxLEAST8; ++ if (name[3] == 'X') ++ return PRIXLEAST8; ++ abort (); ++ } ++ if (name[9] == '1' && name[10] == '6' && name[11] == '\0') ++ { ++ if (name[3] == 'd') ++ return PRIdLEAST16; ++ if (name[3] == 'i') ++ return PRIiLEAST16; ++ if (name[3] == 'o') ++ return PRIoLEAST16; ++ if (name[3] == 'u') ++ return PRIuLEAST16; ++ if (name[3] == 'x') ++ return PRIxLEAST16; ++ if (name[3] == 'X') ++ return PRIXLEAST16; ++ abort (); ++ } ++ if (name[9] == '3' && name[10] == '2' && name[11] == '\0') ++ { ++ if (name[3] == 'd') ++ return PRIdLEAST32; ++ if (name[3] == 'i') ++ return PRIiLEAST32; ++ if (name[3] == 'o') ++ return PRIoLEAST32; ++ if (name[3] == 'u') ++ return PRIuLEAST32; ++ if (name[3] == 'x') ++ return PRIxLEAST32; ++ if (name[3] == 'X') ++ return PRIXLEAST32; ++ abort (); ++ } ++ if (name[9] == '6' && name[10] == '4' && name[11] == '\0') ++ { ++ if (name[3] == 'd') ++ return PRIdLEAST64; ++ if (name[3] == 'i') ++ return PRIiLEAST64; ++ if (name[3] == 'o') ++ return PRIoLEAST64; ++ if (name[3] == 'u') ++ return PRIuLEAST64; ++ if (name[3] == 'x') ++ return PRIxLEAST64; ++ if (name[3] == 'X') ++ return PRIXLEAST64; ++ abort (); ++ } ++ } ++ if (name[4] == 'F' && name[5] == 'A' && name[6] == 'S' ++ && name[7] == 'T') ++ { ++ if (name[8] == '8' && name[9] == '\0') ++ { ++ if (name[3] == 'd') ++ return PRIdFAST8; ++ if (name[3] == 'i') ++ return PRIiFAST8; ++ if (name[3] == 'o') ++ return PRIoFAST8; ++ if (name[3] == 'u') ++ return PRIuFAST8; ++ if (name[3] == 'x') ++ return PRIxFAST8; ++ if (name[3] == 'X') ++ return PRIXFAST8; ++ abort (); ++ } ++ if (name[8] == '1' && name[9] == '6' && name[10] == '\0') ++ { ++ if (name[3] == 'd') ++ return PRIdFAST16; ++ if (name[3] == 'i') ++ return PRIiFAST16; ++ if (name[3] == 'o') ++ return PRIoFAST16; ++ if (name[3] == 'u') ++ return PRIuFAST16; ++ if (name[3] == 'x') ++ return PRIxFAST16; ++ if (name[3] == 'X') ++ return PRIXFAST16; ++ abort (); ++ } ++ if (name[8] == '3' && name[9] == '2' && name[10] == '\0') ++ { ++ if (name[3] == 'd') ++ return PRIdFAST32; ++ if (name[3] == 'i') ++ return PRIiFAST32; ++ if (name[3] == 'o') ++ return PRIoFAST32; ++ if (name[3] == 'u') ++ return PRIuFAST32; ++ if (name[3] == 'x') ++ return PRIxFAST32; ++ if (name[3] == 'X') ++ return PRIXFAST32; ++ abort (); ++ } ++ if (name[8] == '6' && name[9] == '4' && name[10] == '\0') ++ { ++ if (name[3] == 'd') ++ return PRIdFAST64; ++ if (name[3] == 'i') ++ return PRIiFAST64; ++ if (name[3] == 'o') ++ return PRIoFAST64; ++ if (name[3] == 'u') ++ return PRIuFAST64; ++ if (name[3] == 'x') ++ return PRIxFAST64; ++ if (name[3] == 'X') ++ return PRIXFAST64; ++ abort (); ++ } ++ } ++ if (name[4] == 'M' && name[5] == 'A' && name[6] == 'X' ++ && name[7] == '\0') ++ { ++ if (name[3] == 'd') ++ return PRIdMAX; ++ if (name[3] == 'i') ++ return PRIiMAX; ++ if (name[3] == 'o') ++ return PRIoMAX; ++ if (name[3] == 'u') ++ return PRIuMAX; ++ if (name[3] == 'x') ++ return PRIxMAX; ++ if (name[3] == 'X') ++ return PRIXMAX; ++ abort (); ++ } ++ if (name[4] == 'P' && name[5] == 'T' && name[6] == 'R' ++ && name[7] == '\0') ++ { ++ if (name[3] == 'd') ++ return PRIdPTR; ++ if (name[3] == 'i') ++ return PRIiPTR; ++ if (name[3] == 'o') ++ return PRIoPTR; ++ if (name[3] == 'u') ++ return PRIuPTR; ++ if (name[3] == 'x') ++ return PRIxPTR; ++ if (name[3] == 'X') ++ return PRIXPTR; ++ abort (); ++ } ++ } ++ } ++ /* Test for a glibc specific printf() format directive flag. */ ++ if (name[0] == 'I' && name[1] == '\0') ++ { ++#if defined _LIBC || __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 2) ++ /* The 'I' flag, in numeric format directives, replaces ASCII digits ++ with the 'outdigits' defined in the LC_CTYPE locale facet. This is ++ used for Farsi (Persian) and maybe Arabic. */ ++ return "I"; ++#else ++ return ""; ++#endif ++ } ++ /* Other system dependent strings are not valid. */ ++ return NULL; ++} ++ ++/* Initialize the codeset dependent parts of an opened message catalog. ++ Return the header entry. */ ++const char * ++internal_function ++_nl_init_domain_conv (struct loaded_l10nfile *domain_file, ++ struct loaded_domain *domain, ++ struct binding *domainbinding) ++{ ++ /* Find out about the character set the file is encoded with. ++ This can be found (in textual form) in the entry "". If this ++ entry does not exist or if this does not contain the `charset=' ++ information, we will assume the charset matches the one the ++ current locale and we don't have to perform any conversion. */ ++ char *nullentry; ++ size_t nullentrylen; ++ ++ /* Preinitialize fields, to avoid recursion during _nl_find_msg. */ ++ domain->codeset_cntr = ++ (domainbinding != NULL ? domainbinding->codeset_cntr : 0); ++#ifdef _LIBC ++ domain->conv = (__gconv_t) -1; ++#else ++# if HAVE_ICONV ++ domain->conv = (iconv_t) -1; ++# endif ++#endif ++ domain->conv_tab = NULL; ++ ++ /* Get the header entry. */ ++ nullentry = _nl_find_msg (domain_file, domainbinding, "", &nullentrylen); ++ ++ if (nullentry != NULL) ++ { ++#if defined _LIBC || HAVE_ICONV ++ const char *charsetstr; ++ ++ charsetstr = strstr (nullentry, "charset="); ++ if (charsetstr != NULL) ++ { ++ size_t len; ++ char *charset; ++ const char *outcharset; ++ ++ charsetstr += strlen ("charset="); ++ len = strcspn (charsetstr, " \t\n"); ++ ++ charset = (char *) alloca (len + 1); ++# if defined _LIBC || HAVE_MEMPCPY ++ *((char *) mempcpy (charset, charsetstr, len)) = '\0'; ++# else ++ memcpy (charset, charsetstr, len); ++ charset[len] = '\0'; ++# endif ++ ++ /* The output charset should normally be determined by the ++ locale. But sometimes the locale is not used or not correctly ++ set up, so we provide a possibility for the user to override ++ this. Moreover, the value specified through ++ bind_textdomain_codeset overrides both. */ ++ if (domainbinding != NULL && domainbinding->codeset != NULL) ++ outcharset = domainbinding->codeset; ++ else ++ { ++ outcharset = getenv ("OUTPUT_CHARSET"); ++ if (outcharset == NULL || outcharset[0] == '\0') ++ { ++# ifdef _LIBC ++ outcharset = _NL_CURRENT (LC_CTYPE, CODESET); ++# else ++# if HAVE_ICONV ++ extern const char *locale_charset (void); ++ outcharset = locale_charset (); ++# endif ++# endif ++ } ++ } ++ ++# ifdef _LIBC ++ /* We always want to use transliteration. */ ++ outcharset = norm_add_slashes (outcharset, "TRANSLIT"); ++ charset = norm_add_slashes (charset, NULL); ++ if (__gconv_open (outcharset, charset, &domain->conv, ++ GCONV_AVOID_NOCONV) ++ != __GCONV_OK) ++ domain->conv = (__gconv_t) -1; ++# else ++# if HAVE_ICONV ++ /* When using GNU libc >= 2.2 or GNU libiconv >= 1.5, ++ we want to use transliteration. */ ++# if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 2) || __GLIBC__ > 2 \ ++ || _LIBICONV_VERSION >= 0x0105 ++ if (strchr (outcharset, '/') == NULL) ++ { ++ char *tmp; ++ ++ len = strlen (outcharset); ++ tmp = (char *) alloca (len + 10 + 1); ++ memcpy (tmp, outcharset, len); ++ memcpy (tmp + len, "//TRANSLIT", 10 + 1); ++ outcharset = tmp; ++ ++ domain->conv = iconv_open (outcharset, charset); ++ ++ freea (outcharset); ++ } ++ else ++# endif ++ domain->conv = iconv_open (outcharset, charset); ++# endif ++# endif ++ ++ freea (charset); ++ } ++#endif /* _LIBC || HAVE_ICONV */ ++ } ++ ++ return nullentry; ++} ++ ++/* Frees the codeset dependent parts of an opened message catalog. */ ++void ++internal_function ++_nl_free_domain_conv (struct loaded_domain *domain) ++{ ++ if (domain->conv_tab != NULL && domain->conv_tab != (char **) -1) ++ free (domain->conv_tab); ++ ++#ifdef _LIBC ++ if (domain->conv != (__gconv_t) -1) ++ __gconv_close (domain->conv); ++#else ++# if HAVE_ICONV ++ if (domain->conv != (iconv_t) -1) ++ iconv_close (domain->conv); ++# endif ++#endif ++} ++ + /* Load the message catalogs specified by FILENAME. If it is no valid + message catalog do nothing. */ + void +-_nl_load_domain (domain_file) +- struct loaded_l10nfile *domain_file; ++internal_function ++_nl_load_domain (struct loaded_l10nfile *domain_file, ++ struct binding *domainbinding) + { + int fd; ++ size_t size; ++#ifdef _LIBC ++ struct stat64 st; ++#else + struct stat st; ++#endif + struct mo_file_header *data = (struct mo_file_header *) -1; +-#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \ +- || defined _LIBC + int use_mmap = 0; +-#endif + struct loaded_domain *domain; ++ int revision; ++ const char *nullentry; + + domain_file->decided = 1; + domain_file->data = NULL; + ++ /* Note that it would be useless to store domainbinding in domain_file ++ because domainbinding might be == NULL now but != NULL later (after ++ a call to bind_textdomain_codeset). */ ++ + /* If the record does not represent a valid locale the FILENAME + might be NULL. This can happen when according to the given + specification the locale file name is different for XPG and CEN +@@ -84,27 +937,32 @@ + return; + + /* Try to open the addressed file. */ +- fd = open (domain_file->filename, O_RDONLY); ++ fd = open (domain_file->filename, O_RDONLY | O_BINARY); + if (fd == -1) + return; + + /* We must know about the size of the file. */ +- if (fstat (fd, &st) != 0 +- && st.st_size < (off_t) sizeof (struct mo_file_header)) ++ if ( ++#ifdef _LIBC ++ __builtin_expect (fstat64 (fd, &st) != 0, 0) ++#else ++ __builtin_expect (fstat (fd, &st) != 0, 0) ++#endif ++ || __builtin_expect ((size = (size_t) st.st_size) != st.st_size, 0) ++ || __builtin_expect (size < sizeof (struct mo_file_header), 0)) + { + /* Something went wrong. */ + close (fd); + return; + } + +-#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \ +- || defined _LIBC ++#ifdef HAVE_MMAP + /* Now we are ready to load the file. If mmap() is available we try + this first. If not available or it failed we try to load it. */ +- data = (struct mo_file_header *) mmap (NULL, st.st_size, PROT_READ, ++ data = (struct mo_file_header *) mmap (NULL, size, PROT_READ, + MAP_PRIVATE, fd, 0); + +- if (data != (struct mo_file_header *) -1) ++ if (__builtin_expect (data != (struct mo_file_header *) -1, 1)) + { + /* mmap() call was successful. */ + close (fd); +@@ -116,24 +974,27 @@ + it manually. */ + if (data == (struct mo_file_header *) -1) + { +- off_t to_read; ++ size_t to_read; + char *read_ptr; + +- data = (struct mo_file_header *) malloc (st.st_size); ++ data = (struct mo_file_header *) malloc (size); + if (data == NULL) + return; + +- to_read = st.st_size; ++ to_read = size; + read_ptr = (char *) data; + do + { + long int nb = (long int) read (fd, read_ptr, to_read); +- if (nb == -1) ++ if (nb <= 0) + { ++#ifdef EINTR ++ if (nb == -1 && errno == EINTR) ++ continue; ++#endif + close (fd); + return; + } +- + read_ptr += nb; + to_read -= nb; + } +@@ -144,47 +1005,378 @@ + + /* Using the magic number we can test whether it really is a message + catalog file. */ +- if (data->magic != _MAGIC && data->magic != _MAGIC_SWAPPED) ++ if (__builtin_expect (data->magic != _MAGIC && data->magic != _MAGIC_SWAPPED, ++ 0)) + { + /* The magic number is wrong: not a message catalog file. */ +-#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \ +- || defined _LIBC ++#ifdef HAVE_MMAP + if (use_mmap) +- munmap ((caddr_t) data, st.st_size); ++ munmap ((caddr_t) data, size); + else + #endif + free (data); + return; + } + +- domain_file->data +- = (struct loaded_domain *) malloc (sizeof (struct loaded_domain)); +- if (domain_file->data == NULL) ++ domain = (struct loaded_domain *) malloc (sizeof (struct loaded_domain)); ++ if (domain == NULL) + return; ++ domain_file->data = domain; + +- domain = (struct loaded_domain *) domain_file->data; + domain->data = (char *) data; ++ domain->use_mmap = use_mmap; ++ domain->mmap_size = size; + domain->must_swap = data->magic != _MAGIC; ++ domain->malloced = NULL; + + /* Fill in the information about the available tables. */ +- switch (W (domain->must_swap, data->revision)) ++ revision = W (domain->must_swap, data->revision); ++ /* We support only the major revisions 0 and 1. */ ++ switch (revision >> 16) + { + case 0: ++ case 1: + domain->nstrings = W (domain->must_swap, data->nstrings); +- domain->orig_tab = (struct string_desc *) ++ domain->orig_tab = (const struct string_desc *) + ((char *) data + W (domain->must_swap, data->orig_tab_offset)); +- domain->trans_tab = (struct string_desc *) ++ domain->trans_tab = (const struct string_desc *) + ((char *) data + W (domain->must_swap, data->trans_tab_offset)); + domain->hash_size = W (domain->must_swap, data->hash_tab_size); +- domain->hash_tab = (nls_uint32 *) +- ((char *) data + W (domain->must_swap, data->hash_tab_offset)); ++ domain->hash_tab = ++ (domain->hash_size > 2 ++ ? (const nls_uint32 *) ++ ((char *) data + W (domain->must_swap, data->hash_tab_offset)) ++ : NULL); ++ domain->must_swap_hash_tab = domain->must_swap; ++ ++ /* Now dispatch on the minor revision. */ ++ switch (revision & 0xffff) ++ { ++ case 0: ++ domain->n_sysdep_strings = 0; ++ domain->orig_sysdep_tab = NULL; ++ domain->trans_sysdep_tab = NULL; ++ break; ++ case 1: ++ default: ++ { ++ nls_uint32 n_sysdep_strings; ++ ++ if (domain->hash_tab == NULL) ++ /* This is invalid. These minor revisions need a hash table. */ ++ goto invalid; ++ ++ n_sysdep_strings = ++ W (domain->must_swap, data->n_sysdep_strings); ++ if (n_sysdep_strings > 0) ++ { ++ nls_uint32 n_sysdep_segments; ++ const struct sysdep_segment *sysdep_segments; ++ const char **sysdep_segment_values; ++ const nls_uint32 *orig_sysdep_tab; ++ const nls_uint32 *trans_sysdep_tab; ++ nls_uint32 n_inmem_sysdep_strings; ++ size_t memneed; ++ char *mem; ++ struct sysdep_string_desc *inmem_orig_sysdep_tab; ++ struct sysdep_string_desc *inmem_trans_sysdep_tab; ++ nls_uint32 *inmem_hash_tab; ++ unsigned int i, j; ++ ++ /* Get the values of the system dependent segments. */ ++ n_sysdep_segments = ++ W (domain->must_swap, data->n_sysdep_segments); ++ sysdep_segments = (const struct sysdep_segment *) ++ ((char *) data ++ + W (domain->must_swap, data->sysdep_segments_offset)); ++ sysdep_segment_values = ++ alloca (n_sysdep_segments * sizeof (const char *)); ++ for (i = 0; i < n_sysdep_segments; i++) ++ { ++ const char *name = ++ (char *) data ++ + W (domain->must_swap, sysdep_segments[i].offset); ++ nls_uint32 namelen = ++ W (domain->must_swap, sysdep_segments[i].length); ++ ++ if (!(namelen > 0 && name[namelen - 1] == '\0')) ++ { ++ freea (sysdep_segment_values); ++ goto invalid; ++ } ++ ++ sysdep_segment_values[i] = get_sysdep_segment_value (name); ++ } ++ ++ orig_sysdep_tab = (const nls_uint32 *) ++ ((char *) data ++ + W (domain->must_swap, data->orig_sysdep_tab_offset)); ++ trans_sysdep_tab = (const nls_uint32 *) ++ ((char *) data ++ + W (domain->must_swap, data->trans_sysdep_tab_offset)); ++ ++ /* Compute the amount of additional memory needed for the ++ system dependent strings and the augmented hash table. ++ At the same time, also drop string pairs which refer to ++ an undefined system dependent segment. */ ++ n_inmem_sysdep_strings = 0; ++ memneed = domain->hash_size * sizeof (nls_uint32); ++ for (i = 0; i < n_sysdep_strings; i++) ++ { ++ int valid = 1; ++ size_t needs[2]; ++ ++ for (j = 0; j < 2; j++) ++ { ++ const struct sysdep_string *sysdep_string = ++ (const struct sysdep_string *) ++ ((char *) data ++ + W (domain->must_swap, ++ j == 0 ++ ? orig_sysdep_tab[i] ++ : trans_sysdep_tab[i])); ++ size_t need = 0; ++ const struct segment_pair *p = sysdep_string->segments; ++ ++ if (W (domain->must_swap, p->sysdepref) != SEGMENTS_END) ++ for (p = sysdep_string->segments;; p++) ++ { ++ nls_uint32 sysdepref; ++ ++ need += W (domain->must_swap, p->segsize); ++ ++ sysdepref = W (domain->must_swap, p->sysdepref); ++ if (sysdepref == SEGMENTS_END) ++ break; ++ ++ if (sysdepref >= n_sysdep_segments) ++ { ++ /* Invalid. */ ++ freea (sysdep_segment_values); ++ goto invalid; ++ } ++ ++ if (sysdep_segment_values[sysdepref] == NULL) ++ { ++ /* This particular string pair is invalid. */ ++ valid = 0; ++ break; ++ } ++ ++ need += strlen (sysdep_segment_values[sysdepref]); ++ } ++ ++ needs[j] = need; ++ if (!valid) ++ break; ++ } ++ ++ if (valid) ++ { ++ n_inmem_sysdep_strings++; ++ memneed += needs[0] + needs[1]; ++ } ++ } ++ memneed += 2 * n_inmem_sysdep_strings ++ * sizeof (struct sysdep_string_desc); ++ ++ if (n_inmem_sysdep_strings > 0) ++ { ++ unsigned int k; ++ ++ /* Allocate additional memory. */ ++ mem = (char *) malloc (memneed); ++ if (mem == NULL) ++ goto invalid; ++ ++ domain->malloced = mem; ++ inmem_orig_sysdep_tab = (struct sysdep_string_desc *) mem; ++ mem += n_inmem_sysdep_strings ++ * sizeof (struct sysdep_string_desc); ++ inmem_trans_sysdep_tab = (struct sysdep_string_desc *) mem; ++ mem += n_inmem_sysdep_strings ++ * sizeof (struct sysdep_string_desc); ++ inmem_hash_tab = (nls_uint32 *) mem; ++ mem += domain->hash_size * sizeof (nls_uint32); ++ ++ /* Compute the system dependent strings. */ ++ k = 0; ++ for (i = 0; i < n_sysdep_strings; i++) ++ { ++ int valid = 1; ++ ++ for (j = 0; j < 2; j++) ++ { ++ const struct sysdep_string *sysdep_string = ++ (const struct sysdep_string *) ++ ((char *) data ++ + W (domain->must_swap, ++ j == 0 ++ ? orig_sysdep_tab[i] ++ : trans_sysdep_tab[i])); ++ const struct segment_pair *p = ++ sysdep_string->segments; ++ ++ if (W (domain->must_swap, p->sysdepref) ++ != SEGMENTS_END) ++ for (p = sysdep_string->segments;; p++) ++ { ++ nls_uint32 sysdepref; ++ ++ sysdepref = ++ W (domain->must_swap, p->sysdepref); ++ if (sysdepref == SEGMENTS_END) ++ break; ++ ++ if (sysdep_segment_values[sysdepref] == NULL) ++ { ++ /* This particular string pair is ++ invalid. */ ++ valid = 0; ++ break; ++ } ++ } ++ ++ if (!valid) ++ break; ++ } ++ ++ if (valid) ++ { ++ for (j = 0; j < 2; j++) ++ { ++ const struct sysdep_string *sysdep_string = ++ (const struct sysdep_string *) ++ ((char *) data ++ + W (domain->must_swap, ++ j == 0 ++ ? orig_sysdep_tab[i] ++ : trans_sysdep_tab[i])); ++ const char *static_segments = ++ (char *) data ++ + W (domain->must_swap, sysdep_string->offset); ++ const struct segment_pair *p = ++ sysdep_string->segments; ++ ++ /* Concatenate the segments, and fill ++ inmem_orig_sysdep_tab[k] (for j == 0) and ++ inmem_trans_sysdep_tab[k] (for j == 1). */ ++ ++ struct sysdep_string_desc *inmem_tab_entry = ++ (j == 0 ++ ? inmem_orig_sysdep_tab ++ : inmem_trans_sysdep_tab) ++ + k; ++ ++ if (W (domain->must_swap, p->sysdepref) ++ == SEGMENTS_END) ++ { ++ /* Only one static segment. */ ++ inmem_tab_entry->length = ++ W (domain->must_swap, p->segsize); ++ inmem_tab_entry->pointer = static_segments; ++ } ++ else ++ { ++ inmem_tab_entry->pointer = mem; ++ ++ for (p = sysdep_string->segments;; p++) ++ { ++ nls_uint32 segsize = ++ W (domain->must_swap, p->segsize); ++ nls_uint32 sysdepref = ++ W (domain->must_swap, p->sysdepref); ++ size_t n; ++ ++ if (segsize > 0) ++ { ++ memcpy (mem, static_segments, segsize); ++ mem += segsize; ++ static_segments += segsize; ++ } ++ ++ if (sysdepref == SEGMENTS_END) ++ break; ++ ++ n = strlen (sysdep_segment_values[sysdepref]); ++ memcpy (mem, sysdep_segment_values[sysdepref], n); ++ mem += n; ++ } ++ ++ inmem_tab_entry->length = ++ mem - inmem_tab_entry->pointer; ++ } ++ } ++ ++ k++; ++ } ++ } ++ if (k != n_inmem_sysdep_strings) ++ abort (); ++ ++ /* Compute the augmented hash table. */ ++ for (i = 0; i < domain->hash_size; i++) ++ inmem_hash_tab[i] = ++ W (domain->must_swap_hash_tab, domain->hash_tab[i]); ++ for (i = 0; i < n_inmem_sysdep_strings; i++) ++ { ++ const char *msgid = inmem_orig_sysdep_tab[i].pointer; ++ nls_uint32 hash_val = hash_string (msgid); ++ nls_uint32 idx = hash_val % domain->hash_size; ++ nls_uint32 incr = ++ 1 + (hash_val % (domain->hash_size - 2)); ++ ++ for (;;) ++ { ++ if (inmem_hash_tab[idx] == 0) ++ { ++ /* Hash table entry is empty. Use it. */ ++ inmem_hash_tab[idx] = 1 + domain->nstrings + i; ++ break; ++ } ++ ++ if (idx >= domain->hash_size - incr) ++ idx -= domain->hash_size - incr; ++ else ++ idx += incr; ++ } ++ } ++ ++ domain->n_sysdep_strings = n_inmem_sysdep_strings; ++ domain->orig_sysdep_tab = inmem_orig_sysdep_tab; ++ domain->trans_sysdep_tab = inmem_trans_sysdep_tab; ++ ++ domain->hash_tab = inmem_hash_tab; ++ domain->must_swap_hash_tab = 0; ++ } ++ else ++ { ++ domain->n_sysdep_strings = 0; ++ domain->orig_sysdep_tab = NULL; ++ domain->trans_sysdep_tab = NULL; ++ } ++ ++ freea (sysdep_segment_values); ++ } ++ else ++ { ++ domain->n_sysdep_strings = 0; ++ domain->orig_sysdep_tab = NULL; ++ domain->trans_sysdep_tab = NULL; ++ } ++ } ++ break; ++ } + break; + default: +- /* This is an illegal revision. */ +-#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \ +- || defined _LIBC ++ /* This is an invalid revision. */ ++ invalid: ++ /* This is an invalid .mo file. */ ++ if (domain->malloced) ++ free (domain->malloced); ++#ifdef HAVE_MMAP + if (use_mmap) +- munmap ((caddr_t) data, st.st_size); ++ munmap ((caddr_t) data, size); + else + #endif + free (data); +@@ -193,7 +1385,36 @@ + return; + } + +- /* Show that one domain is changed. This might make some cached +- translations invalid. */ +- ++_nl_msg_cat_cntr; ++ /* Now initialize the character set converter from the character set ++ the file is encoded with (found in the header entry) to the domain's ++ specified character set or the locale's character set. */ ++ nullentry = _nl_init_domain_conv (domain_file, domain, domainbinding); ++ ++ /* Also look for a plural specification. */ ++ EXTRACT_PLURAL_EXPRESSION (nullentry, &domain->plural, &domain->nplurals); + } ++ ++ ++#ifdef _LIBC ++void ++internal_function ++_nl_unload_domain (struct loaded_domain *domain) ++{ ++ if (domain->plural != &__gettext_germanic_plural) ++ __gettext_free_exp (domain->plural); ++ ++ _nl_free_domain_conv (domain); ++ ++ if (domain->malloced) ++ free (domain->malloced); ++ ++# ifdef _POSIX_MAPPED_FILES ++ if (domain->use_mmap) ++ munmap ((caddr_t) domain->data, domain->mmap_size); ++ else ++# endif /* _POSIX_MAPPED_FILES */ ++ free ((void *) domain->data); ++ ++ free (domain); ++} ++#endif +--- lrzsz-0.12.20.safe/intl/localcharset.c 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/localcharset.c 2004-09-12 14:40:34.478729392 -0400 +@@ -0,0 +1,398 @@ ++/* Determine a canonical name for the current locale's character encoding. ++ ++ Copyright (C) 2000-2003 Free Software Foundation, Inc. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++/* Written by Bruno Haible . */ ++ ++#ifdef HAVE_CONFIG_H ++# include ++#endif ++ ++/* Specification. */ ++#include "localcharset.h" ++ ++#if HAVE_STDDEF_H ++# include ++#endif ++ ++#include ++#if HAVE_STRING_H ++# include ++#else ++# include ++#endif ++#if HAVE_STDLIB_H ++# include ++#endif ++ ++#if defined _WIN32 || defined __WIN32__ ++# undef WIN32 /* avoid warning on mingw32 */ ++# define WIN32 ++#endif ++ ++#if defined __EMX__ ++/* Assume EMX program runs on OS/2, even if compiled under DOS. */ ++# define OS2 ++#endif ++ ++#if !defined WIN32 ++# if HAVE_LANGINFO_CODESET ++# include ++# else ++# if HAVE_SETLOCALE ++# include ++# endif ++# endif ++#elif defined WIN32 ++# define WIN32_LEAN_AND_MEAN ++# include ++#endif ++#if defined OS2 ++# define INCL_DOS ++# include ++#endif ++ ++#if ENABLE_RELOCATABLE ++# include "relocatable.h" ++#else ++# define relocate(pathname) (pathname) ++#endif ++ ++#if defined _WIN32 || defined __WIN32__ || defined __EMX__ || defined __DJGPP__ ++ /* Win32, OS/2, DOS */ ++# define ISSLASH(C) ((C) == '/' || (C) == '\\') ++#endif ++ ++#ifndef DIRECTORY_SEPARATOR ++# define DIRECTORY_SEPARATOR '/' ++#endif ++ ++#ifndef ISSLASH ++# define ISSLASH(C) ((C) == DIRECTORY_SEPARATOR) ++#endif ++ ++#if HAVE_DECL_GETC_UNLOCKED ++# undef getc ++# define getc getc_unlocked ++#endif ++ ++/* The following static variable is declared 'volatile' to avoid a ++ possible multithread problem in the function get_charset_aliases. If we ++ are running in a threaded environment, and if two threads initialize ++ 'charset_aliases' simultaneously, both will produce the same value, ++ and everything will be ok if the two assignments to 'charset_aliases' ++ are atomic. But I don't know what will happen if the two assignments mix. */ ++#if __STDC__ != 1 ++# define volatile /* empty */ ++#endif ++/* Pointer to the contents of the charset.alias file, if it has already been ++ read, else NULL. Its format is: ++ ALIAS_1 '\0' CANONICAL_1 '\0' ... ALIAS_n '\0' CANONICAL_n '\0' '\0' */ ++static const char * volatile charset_aliases; ++ ++/* Return a pointer to the contents of the charset.alias file. */ ++static const char * ++get_charset_aliases () ++{ ++ const char *cp; ++ ++ cp = charset_aliases; ++ if (cp == NULL) ++ { ++#if !(defined VMS || defined WIN32) ++ FILE *fp; ++ const char *dir = relocate (LIBDIR); ++ const char *base = "charset.alias"; ++ char *file_name; ++ ++ /* Concatenate dir and base into freshly allocated file_name. */ ++ { ++ size_t dir_len = strlen (dir); ++ size_t base_len = strlen (base); ++ int add_slash = (dir_len > 0 && !ISSLASH (dir[dir_len - 1])); ++ file_name = (char *) malloc (dir_len + add_slash + base_len + 1); ++ if (file_name != NULL) ++ { ++ memcpy (file_name, dir, dir_len); ++ if (add_slash) ++ file_name[dir_len] = DIRECTORY_SEPARATOR; ++ memcpy (file_name + dir_len + add_slash, base, base_len + 1); ++ } ++ } ++ ++ if (file_name == NULL || (fp = fopen (file_name, "r")) == NULL) ++ /* Out of memory or file not found, treat it as empty. */ ++ cp = ""; ++ else ++ { ++ /* Parse the file's contents. */ ++ int c; ++ char buf1[50+1]; ++ char buf2[50+1]; ++ char *res_ptr = NULL; ++ size_t res_size = 0; ++ size_t l1, l2; ++ ++ for (;;) ++ { ++ c = getc (fp); ++ if (c == EOF) ++ break; ++ if (c == '\n' || c == ' ' || c == '\t') ++ continue; ++ if (c == '#') ++ { ++ /* Skip comment, to end of line. */ ++ do ++ c = getc (fp); ++ while (!(c == EOF || c == '\n')); ++ if (c == EOF) ++ break; ++ continue; ++ } ++ ungetc (c, fp); ++ if (fscanf (fp, "%50s %50s", buf1, buf2) < 2) ++ break; ++ l1 = strlen (buf1); ++ l2 = strlen (buf2); ++ if (res_size == 0) ++ { ++ res_size = l1 + 1 + l2 + 1; ++ res_ptr = (char *) malloc (res_size + 1); ++ } ++ else ++ { ++ res_size += l1 + 1 + l2 + 1; ++ res_ptr = (char *) realloc (res_ptr, res_size + 1); ++ } ++ if (res_ptr == NULL) ++ { ++ /* Out of memory. */ ++ res_size = 0; ++ break; ++ } ++ strcpy (res_ptr + res_size - (l2 + 1) - (l1 + 1), buf1); ++ strcpy (res_ptr + res_size - (l2 + 1), buf2); ++ } ++ fclose (fp); ++ if (res_size == 0) ++ cp = ""; ++ else ++ { ++ *(res_ptr + res_size) = '\0'; ++ cp = res_ptr; ++ } ++ } ++ ++ if (file_name != NULL) ++ free (file_name); ++ ++#else ++ ++# if defined VMS ++ /* To avoid the troubles of an extra file charset.alias_vms in the ++ sources of many GNU packages, simply inline the aliases here. */ ++ /* The list of encodings is taken from the OpenVMS 7.3-1 documentation ++ "Compaq C Run-Time Library Reference Manual for OpenVMS systems" ++ section 10.7 "Handling Different Character Sets". */ ++ cp = "ISO8859-1" "\0" "ISO-8859-1" "\0" ++ "ISO8859-2" "\0" "ISO-8859-2" "\0" ++ "ISO8859-5" "\0" "ISO-8859-5" "\0" ++ "ISO8859-7" "\0" "ISO-8859-7" "\0" ++ "ISO8859-8" "\0" "ISO-8859-8" "\0" ++ "ISO8859-9" "\0" "ISO-8859-9" "\0" ++ /* Japanese */ ++ "eucJP" "\0" "EUC-JP" "\0" ++ "SJIS" "\0" "SHIFT_JIS" "\0" ++ "DECKANJI" "\0" "DEC-KANJI" "\0" ++ "SDECKANJI" "\0" "EUC-JP" "\0" ++ /* Chinese */ ++ "eucTW" "\0" "EUC-TW" "\0" ++ "DECHANYU" "\0" "DEC-HANYU" "\0" ++ "DECHANZI" "\0" "GB2312" "\0" ++ /* Korean */ ++ "DECKOREAN" "\0" "EUC-KR" "\0"; ++# endif ++ ++# if defined WIN32 ++ /* To avoid the troubles of installing a separate file in the same ++ directory as the DLL and of retrieving the DLL's directory at ++ runtime, simply inline the aliases here. */ ++ ++ cp = "CP936" "\0" "GBK" "\0" ++ "CP1361" "\0" "JOHAB" "\0" ++ "CP20127" "\0" "ASCII" "\0" ++ "CP20866" "\0" "KOI8-R" "\0" ++ "CP21866" "\0" "KOI8-RU" "\0" ++ "CP28591" "\0" "ISO-8859-1" "\0" ++ "CP28592" "\0" "ISO-8859-2" "\0" ++ "CP28593" "\0" "ISO-8859-3" "\0" ++ "CP28594" "\0" "ISO-8859-4" "\0" ++ "CP28595" "\0" "ISO-8859-5" "\0" ++ "CP28596" "\0" "ISO-8859-6" "\0" ++ "CP28597" "\0" "ISO-8859-7" "\0" ++ "CP28598" "\0" "ISO-8859-8" "\0" ++ "CP28599" "\0" "ISO-8859-9" "\0" ++ "CP28605" "\0" "ISO-8859-15" "\0"; ++# endif ++#endif ++ ++ charset_aliases = cp; ++ } ++ ++ return cp; ++} ++ ++/* Determine the current locale's character encoding, and canonicalize it ++ into one of the canonical names listed in config.charset. ++ The result must not be freed; it is statically allocated. ++ If the canonical name cannot be determined, the result is a non-canonical ++ name. */ ++ ++#ifdef STATIC ++STATIC ++#endif ++const char * ++locale_charset () ++{ ++ const char *codeset; ++ const char *aliases; ++ ++#if !(defined WIN32 || defined OS2) ++ ++# if HAVE_LANGINFO_CODESET ++ ++ /* Most systems support nl_langinfo (CODESET) nowadays. */ ++ codeset = nl_langinfo (CODESET); ++ ++# else ++ ++ /* On old systems which lack it, use setlocale or getenv. */ ++ const char *locale = NULL; ++ ++ /* But most old systems don't have a complete set of locales. Some ++ (like SunOS 4 or DJGPP) have only the C locale. Therefore we don't ++ use setlocale here; it would return "C" when it doesn't support the ++ locale name the user has set. */ ++# if HAVE_SETLOCALE && 0 ++ locale = setlocale (LC_CTYPE, NULL); ++# endif ++ if (locale == NULL || locale[0] == '\0') ++ { ++ locale = getenv ("LC_ALL"); ++ if (locale == NULL || locale[0] == '\0') ++ { ++ locale = getenv ("LC_CTYPE"); ++ if (locale == NULL || locale[0] == '\0') ++ locale = getenv ("LANG"); ++ } ++ } ++ ++ /* On some old systems, one used to set locale = "iso8859_1". On others, ++ you set it to "language_COUNTRY.charset". In any case, we resolve it ++ through the charset.alias file. */ ++ codeset = locale; ++ ++# endif ++ ++#elif defined WIN32 ++ ++ static char buf[2 + 10 + 1]; ++ ++ /* Woe32 has a function returning the locale's codepage as a number. */ ++ sprintf (buf, "CP%u", GetACP ()); ++ codeset = buf; ++ ++#elif defined OS2 ++ ++ const char *locale; ++ static char buf[2 + 10 + 1]; ++ ULONG cp[3]; ++ ULONG cplen; ++ ++ /* Allow user to override the codeset, as set in the operating system, ++ with standard language environment variables. */ ++ locale = getenv ("LC_ALL"); ++ if (locale == NULL || locale[0] == '\0') ++ { ++ locale = getenv ("LC_CTYPE"); ++ if (locale == NULL || locale[0] == '\0') ++ locale = getenv ("LANG"); ++ } ++ if (locale != NULL && locale[0] != '\0') ++ { ++ /* If the locale name contains an encoding after the dot, return it. */ ++ const char *dot = strchr (locale, '.'); ++ ++ if (dot != NULL) ++ { ++ const char *modifier; ++ ++ dot++; ++ /* Look for the possible @... trailer and remove it, if any. */ ++ modifier = strchr (dot, '@'); ++ if (modifier == NULL) ++ return dot; ++ if (modifier - dot < sizeof (buf)) ++ { ++ memcpy (buf, dot, modifier - dot); ++ buf [modifier - dot] = '\0'; ++ return buf; ++ } ++ } ++ ++ /* Resolve through the charset.alias file. */ ++ codeset = locale; ++ } ++ else ++ { ++ /* OS/2 has a function returning the locale's codepage as a number. */ ++ if (DosQueryCp (sizeof (cp), cp, &cplen)) ++ codeset = ""; ++ else ++ { ++ sprintf (buf, "CP%u", cp[0]); ++ codeset = buf; ++ } ++ } ++ ++#endif ++ ++ if (codeset == NULL) ++ /* The canonical name cannot be determined. */ ++ codeset = ""; ++ ++ /* Resolve alias. */ ++ for (aliases = get_charset_aliases (); ++ *aliases != '\0'; ++ aliases += strlen (aliases) + 1, aliases += strlen (aliases) + 1) ++ if (strcmp (codeset, aliases) == 0 ++ || (aliases[0] == '*' && aliases[1] == '\0')) ++ { ++ codeset = aliases + strlen (aliases) + 1; ++ break; ++ } ++ ++ /* Don't return an empty string. GNU libc and GNU libiconv interpret ++ the empty string as denoting "the locale's character encoding", ++ thus GNU libiconv would call this function a second time. */ ++ if (codeset[0] == '\0') ++ codeset = "ASCII"; ++ ++ return codeset; ++} +--- lrzsz-0.12.20.safe/intl/localcharset.h 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/localcharset.h 2004-09-12 14:40:34.483728632 -0400 +@@ -0,0 +1,42 @@ ++/* Determine a canonical name for the current locale's character encoding. ++ Copyright (C) 2000-2003 Free Software Foundation, Inc. ++ This file is part of the GNU CHARSET Library. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++#ifndef _LOCALCHARSET_H ++#define _LOCALCHARSET_H ++ ++ ++#ifdef __cplusplus ++extern "C" { ++#endif ++ ++ ++/* Determine the current locale's character encoding, and canonicalize it ++ into one of the canonical names listed in config.charset. ++ The result must not be freed; it is statically allocated. ++ If the canonical name cannot be determined, the result is a non-canonical ++ name. */ ++extern const char * locale_charset (void); ++ ++ ++#ifdef __cplusplus ++} ++#endif ++ ++ ++#endif /* _LOCALCHARSET_H */ +--- lrzsz-0.12.20.safe/intl/locale.alias 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/locale.alias 2004-09-12 14:40:34.499726200 -0400 +@@ -0,0 +1,78 @@ ++# Locale name alias data base. ++# Copyright (C) 1996-2001,2003 Free Software Foundation, Inc. ++# ++# This program is free software; you can redistribute it and/or modify it ++# under the terms of the GNU Library General Public License as published ++# by the Free Software Foundation; either version 2, or (at your option) ++# any later version. ++# ++# This program is distributed in the hope that it will be useful, ++# but WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++# Library General Public License for more details. ++# ++# You should have received a copy of the GNU Library General Public ++# License along with this program; if not, write to the Free Software ++# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++# USA. ++ ++# The format of this file is the same as for the corresponding file of ++# the X Window System, which normally can be found in ++# /usr/lib/X11/locale/locale.alias ++# A single line contains two fields: an alias and a substitution value. ++# All entries are case independent. ++ ++# Note: This file is far from being complete. If you have a value for ++# your own site which you think might be useful for others too, share ++# it with the rest of us. Send it using the `glibcbug' script to ++# bugs@gnu.org. ++ ++# Packages using this file: ++ ++bokmal nb_NO.ISO-8859-1 ++bokmål nb_NO.ISO-8859-1 ++catalan ca_ES.ISO-8859-1 ++croatian hr_HR.ISO-8859-2 ++czech cs_CZ.ISO-8859-2 ++danish da_DK.ISO-8859-1 ++dansk da_DK.ISO-8859-1 ++deutsch de_DE.ISO-8859-1 ++dutch nl_NL.ISO-8859-1 ++eesti et_EE.ISO-8859-1 ++estonian et_EE.ISO-8859-1 ++finnish fi_FI.ISO-8859-1 ++français fr_FR.ISO-8859-1 ++french fr_FR.ISO-8859-1 ++galego gl_ES.ISO-8859-1 ++galician gl_ES.ISO-8859-1 ++german de_DE.ISO-8859-1 ++greek el_GR.ISO-8859-7 ++hebrew he_IL.ISO-8859-8 ++hrvatski hr_HR.ISO-8859-2 ++hungarian hu_HU.ISO-8859-2 ++icelandic is_IS.ISO-8859-1 ++italian it_IT.ISO-8859-1 ++japanese ja_JP.eucJP ++japanese.euc ja_JP.eucJP ++ja_JP ja_JP.eucJP ++ja_JP.ujis ja_JP.eucJP ++japanese.sjis ja_JP.SJIS ++korean ko_KR.eucKR ++korean.euc ko_KR.eucKR ++ko_KR ko_KR.eucKR ++lithuanian lt_LT.ISO-8859-13 ++no_NO nb_NO.ISO-8859-1 ++no_NO.ISO-8859-1 nb_NO.ISO-8859-1 ++norwegian nb_NO.ISO-8859-1 ++nynorsk nn_NO.ISO-8859-1 ++polish pl_PL.ISO-8859-2 ++portuguese pt_PT.ISO-8859-1 ++romanian ro_RO.ISO-8859-2 ++russian ru_RU.ISO-8859-5 ++slovak sk_SK.ISO-8859-2 ++slovene sl_SI.ISO-8859-2 ++slovenian sl_SI.ISO-8859-2 ++spanish es_ES.ISO-8859-1 ++swedish sv_SE.ISO-8859-1 ++thai th_TH.TIS-620 ++turkish tr_TR.ISO-8859-9 +--- lrzsz-0.12.20.safe/intl/localealias.c 1998-04-26 09:22:37.000000000 -0400 ++++ lrzsz-0.12.20/intl/localealias.c 2004-09-12 14:40:34.505725288 -0400 +@@ -1,20 +1,27 @@ +-/* Handle aliases for locale names +- Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. +- Written by Ulrich Drepper , 1995. ++/* Handle aliases for locale names. ++ Copyright (C) 1995-1999, 2000-2001, 2003 Free Software Foundation, Inc. + +- This program is free software; you can redistribute it and/or modify +- it under the terms of the GNU General Public License as published by +- the Free Software Foundation; either version 2, or (at your option) ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +- GNU General Public License for more details. ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. + +- You should have received a copy of the GNU General Public License +- along with this program; if not, write to the Free Software Foundation, +- Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++/* Tell glibc's to provide a prototype for mempcpy(). ++ This must come before because may include ++ , and once has been included, it's too late. */ ++#ifndef _GNU_SOURCE ++# define _GNU_SOURCE 1 ++#endif + + #ifdef HAVE_CONFIG_H + # include +@@ -22,56 +29,45 @@ + + #include + #include ++#if defined _LIBC || defined HAVE___FSETLOCKING ++# include ++#endif + #include + + #ifdef __GNUC__ ++# undef alloca + # define alloca __builtin_alloca + # define HAVE_ALLOCA 1 + #else +-# if defined HAVE_ALLOCA_H || defined _LIBC +-# include ++# ifdef _MSC_VER ++# include ++# define alloca _alloca + # else +-# ifdef _AIX +- #pragma alloca ++# if defined HAVE_ALLOCA_H || defined _LIBC ++# include + # else +-# ifndef alloca ++# ifdef _AIX ++ #pragma alloca ++# else ++# ifndef alloca + char *alloca (); ++# endif + # endif + # endif + # endif + #endif + +-#if defined STDC_HEADERS || defined _LIBC +-# include +-#else +-char *getenv (); +-# ifdef HAVE_MALLOC_H +-# include +-# else +-void free (); +-# endif +-#endif ++#include ++#include + +-#if defined HAVE_STRING_H || defined _LIBC +-# ifndef _GNU_SOURCE +-# define _GNU_SOURCE 1 +-# endif +-# include ++#include "gettextP.h" ++ ++#if ENABLE_RELOCATABLE ++# include "relocatable.h" + #else +-# include +-# ifndef memcpy +-# define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num) +-# endif +-#endif +-#if !HAVE_STRCHR && !defined _LIBC +-# ifndef strchr +-# define strchr index +-# endif ++# define relocate(pathname) (pathname) + #endif + +-#include "gettext.h" +-#include "gettextP.h" +- + /* @@ end of prolog @@ */ + + #ifdef _LIBC +@@ -79,43 +75,49 @@ + because some ANSI C functions will require linking with this object + file and the name space must not be polluted. */ + # define strcasecmp __strcasecmp ++ ++# ifndef mempcpy ++# define mempcpy __mempcpy ++# endif ++# define HAVE_MEMPCPY 1 ++# define HAVE___FSETLOCKING 1 ++ ++/* We need locking here since we can be called from different places. */ ++# include ++ ++__libc_lock_define_initialized (static, lock); ++#endif ++ ++#ifndef internal_function ++# define internal_function + #endif + ++/* Some optimizations for glibc. */ ++#ifdef _LIBC ++# define FEOF(fp) feof_unlocked (fp) ++# define FGETS(buf, n, fp) fgets_unlocked (buf, n, fp) ++#else ++# define FEOF(fp) feof (fp) ++# define FGETS(buf, n, fp) fgets (buf, n, fp) ++#endif + +-/* For those loosing systems which don't have `alloca' we have to add ++/* For those losing systems which don't have `alloca' we have to add + some additional code emulating it. */ + #ifdef HAVE_ALLOCA +-/* Nothing has to be done. */ +-# define ADD_BLOCK(list, address) /* nothing */ +-# define FREE_BLOCKS(list) /* nothing */ ++# define freea(p) /* nothing */ + #else +-struct block_list +-{ +- void *address; +- struct block_list *next; +-}; +-# define ADD_BLOCK(list, addr) \ +- do { \ +- struct block_list *newp = (struct block_list *) malloc (sizeof (*newp)); \ +- /* If we cannot get a free block we cannot add the new element to \ +- the list. */ \ +- if (newp != NULL) { \ +- newp->address = (addr); \ +- newp->next = (list); \ +- (list) = newp; \ +- } \ +- } while (0) +-# define FREE_BLOCKS(list) \ +- do { \ +- while (list != NULL) { \ +- struct block_list *old = list; \ +- list = list->next; \ +- free (old); \ +- } \ +- } while (0) +-# undef alloca +-# define alloca(size) (malloc (size)) +-#endif /* have alloca */ ++# define alloca(n) malloc (n) ++# define freea(p) free (p) ++#endif ++ ++#if defined _LIBC_REENTRANT || HAVE_DECL_FGETS_UNLOCKED ++# undef fgets ++# define fgets(buf, len, s) fgets_unlocked (buf, len, s) ++#endif ++#if defined _LIBC_REENTRANT || HAVE_DECL_FEOF_UNLOCKED ++# undef feof ++# define feof(s) feof_unlocked (s) ++#endif + + + struct alias_map +@@ -125,26 +127,41 @@ + }; + + +-static struct alias_map *map; +-static size_t nmap = 0; +-static size_t maxmap = 0; ++#ifndef _LIBC ++# define libc_freeres_ptr(decl) decl ++#endif ++ ++libc_freeres_ptr (static char *string_space); ++static size_t string_space_act; ++static size_t string_space_max; ++libc_freeres_ptr (static struct alias_map *map); ++static size_t nmap; ++static size_t maxmap; + + + /* Prototypes for local functions. */ +-static size_t read_alias_file PARAMS ((const char *fname, int fname_len)); +-static void extend_alias_table PARAMS ((void)); +-static int alias_compare PARAMS ((const struct alias_map *map1, +- const struct alias_map *map2)); ++static size_t read_alias_file (const char *fname, int fname_len) ++ internal_function; ++static int extend_alias_table (void); ++static int alias_compare (const struct alias_map *map1, ++ const struct alias_map *map2); + + + const char * +-_nl_expand_alias (name) +- const char *name; ++_nl_expand_alias (const char *name) + { +- static const char *locale_alias_path = LOCALE_ALIAS_PATH; ++ static const char *locale_alias_path; + struct alias_map *retval; ++ const char *result = NULL; + size_t added; + ++#ifdef _LIBC ++ __libc_lock_lock (lock); ++#endif ++ ++ if (locale_alias_path == NULL) ++ locale_alias_path = LOCALE_ALIAS_PATH; ++ + do + { + struct alias_map item; +@@ -154,15 +171,18 @@ + if (nmap > 0) + retval = (struct alias_map *) bsearch (&item, map, nmap, + sizeof (struct alias_map), +- (int (*) PARAMS ((const void *, +- const void *)) ++ (int (*) (const void *, ++ const void *) + ) alias_compare); + else + retval = NULL; + + /* We really found an alias. Return the value. */ + if (retval != NULL) +- return retval->value; ++ { ++ result = retval->value; ++ break; ++ } + + /* Perhaps we can find another alias file. */ + added = 0; +@@ -170,11 +190,12 @@ + { + const char *start; + +- while (locale_alias_path[0] == ':') ++ while (locale_alias_path[0] == PATH_SEPARATOR) + ++locale_alias_path; + start = locale_alias_path; + +- while (locale_alias_path[0] != '\0' && locale_alias_path[0] != ':') ++ while (locale_alias_path[0] != '\0' ++ && locale_alias_path[0] != PATH_SEPARATOR) + ++locale_alias_path; + + if (start < locale_alias_path) +@@ -183,78 +204,87 @@ + } + while (added != 0); + +- return NULL; ++#ifdef _LIBC ++ __libc_lock_unlock (lock); ++#endif ++ ++ return result; + } + + + static size_t +-read_alias_file (fname, fname_len) +- const char *fname; +- int fname_len; ++internal_function ++read_alias_file (const char *fname, int fname_len) + { +-#ifndef HAVE_ALLOCA +- struct block_list *block_list = NULL; +-#endif + FILE *fp; + char *full_fname; + size_t added; + static const char aliasfile[] = "/locale.alias"; + + full_fname = (char *) alloca (fname_len + sizeof aliasfile); +- ADD_BLOCK (block_list, full_fname); ++#ifdef HAVE_MEMPCPY ++ mempcpy (mempcpy (full_fname, fname, fname_len), ++ aliasfile, sizeof aliasfile); ++#else + memcpy (full_fname, fname, fname_len); + memcpy (&full_fname[fname_len], aliasfile, sizeof aliasfile); ++#endif + +- fp = fopen (full_fname, "r"); ++ fp = fopen (relocate (full_fname), "r"); ++ freea (full_fname); + if (fp == NULL) +- { +- FREE_BLOCKS (block_list); +- return 0; +- } ++ return 0; ++ ++#ifdef HAVE___FSETLOCKING ++ /* No threads present. */ ++ __fsetlocking (fp, FSETLOCKING_BYCALLER); ++#endif + + added = 0; +- while (!feof (fp)) ++ while (!FEOF (fp)) + { + /* It is a reasonable approach to use a fix buffer here because + a) we are only interested in the first two fields + b) these fields must be usable as file names and so must not + be that long +- */ +- char buf[BUFSIZ]; ++ We avoid a multi-kilobyte buffer here since this would use up ++ stack space which we might not have if the program ran out of ++ memory. */ ++ char buf[400]; + char *alias; + char *value; + char *cp; + +- if (fgets (buf, BUFSIZ, fp) == NULL) ++ if (FGETS (buf, sizeof buf, fp) == NULL) + /* EOF reached. */ + break; + + cp = buf; + /* Ignore leading white space. */ +- while (isspace (cp[0])) ++ while (isspace ((unsigned char) cp[0])) + ++cp; + + /* A leading '#' signals a comment line. */ + if (cp[0] != '\0' && cp[0] != '#') + { + alias = cp++; +- while (cp[0] != '\0' && !isspace (cp[0])) ++ while (cp[0] != '\0' && !isspace ((unsigned char) cp[0])) + ++cp; + /* Terminate alias name. */ + if (cp[0] != '\0') + *cp++ = '\0'; + + /* Now look for the beginning of the value. */ +- while (isspace (cp[0])) ++ while (isspace ((unsigned char) cp[0])) + ++cp; + + if (cp[0] != '\0') + { +- char *tp; +- size_t len; ++ size_t alias_len; ++ size_t value_len; + + value = cp++; +- while (cp[0] != '\0' && !isspace (cp[0])) ++ while (cp[0] != '\0' && !isspace ((unsigned char) cp[0])) + ++cp; + /* Terminate value. */ + if (cp[0] == '\n') +@@ -269,28 +299,44 @@ + *cp++ = '\0'; + + if (nmap >= maxmap) +- extend_alias_table (); +- +- /* We cannot depend on strdup available in the libc. Sigh! */ +- len = strlen (alias) + 1; +- tp = (char *) malloc (len); +- if (tp == NULL) +- { +- FREE_BLOCKS (block_list); ++ if (__builtin_expect (extend_alias_table (), 0)) + return added; +- } +- memcpy (tp, alias, len); +- map[nmap].alias = tp; + +- len = strlen (value) + 1; +- tp = (char *) malloc (len); +- if (tp == NULL) ++ alias_len = strlen (alias) + 1; ++ value_len = strlen (value) + 1; ++ ++ if (string_space_act + alias_len + value_len > string_space_max) + { +- FREE_BLOCKS (block_list); +- return added; ++ /* Increase size of memory pool. */ ++ size_t new_size = (string_space_max ++ + (alias_len + value_len > 1024 ++ ? alias_len + value_len : 1024)); ++ char *new_pool = (char *) realloc (string_space, new_size); ++ if (new_pool == NULL) ++ return added; ++ ++ if (__builtin_expect (string_space != new_pool, 0)) ++ { ++ size_t i; ++ ++ for (i = 0; i < nmap; i++) ++ { ++ map[i].alias += new_pool - string_space; ++ map[i].value += new_pool - string_space; ++ } ++ } ++ ++ string_space = new_pool; ++ string_space_max = new_size; + } +- memcpy (tp, value, len); +- map[nmap].value = tp; ++ ++ map[nmap].alias = memcpy (&string_space[string_space_act], ++ alias, alias_len); ++ string_space_act += alias_len; ++ ++ map[nmap].value = memcpy (&string_space[string_space_act], ++ value, value_len); ++ string_space_act += value_len; + + ++nmap; + ++added; +@@ -299,14 +345,11 @@ + + /* Possibly not the whole line fits into the buffer. Ignore + the rest of the line. */ +- while (strchr (cp, '\n') == NULL) +- { +- cp = buf; +- if (fgets (buf, BUFSIZ, fp) == NULL) +- /* Make sure the inner loop will be left. The outer loop +- will exit at the `feof' test. */ +- *cp = '\n'; +- } ++ while (strchr (buf, '\n') == NULL) ++ if (FGETS (buf, sizeof buf, fp) == NULL) ++ /* Make sure the inner loop will be left. The outer loop ++ will exit at the `feof' test. */ ++ break; + } + + /* Should we test for ferror()? I think we have to silently ignore +@@ -315,40 +358,33 @@ + + if (added > 0) + qsort (map, nmap, sizeof (struct alias_map), +- (int (*) PARAMS ((const void *, const void *))) alias_compare); ++ (int (*) (const void *, const void *)) alias_compare); + +- FREE_BLOCKS (block_list); + return added; + } + + +-static void ++static int + extend_alias_table () + { + size_t new_size; + struct alias_map *new_map; + + new_size = maxmap == 0 ? 100 : 2 * maxmap; +- new_map = (struct alias_map *) malloc (new_size +- * sizeof (struct alias_map)); ++ new_map = (struct alias_map *) realloc (map, (new_size ++ * sizeof (struct alias_map))); + if (new_map == NULL) + /* Simply don't extend: we don't have any more core. */ +- return; +- +- memcpy (new_map, map, nmap * sizeof (struct alias_map)); +- +- if (maxmap != 0) +- free (map); ++ return -1; + + map = new_map; + maxmap = new_size; ++ return 0; + } + + + static int +-alias_compare (map1, map2) +- const struct alias_map *map1; +- const struct alias_map *map2; ++alias_compare (const struct alias_map *map1, const struct alias_map *map2) + { + #if defined _LIBC || defined HAVE_STRCASECMP + return strcasecmp (map1->alias, map2->alias); +--- lrzsz-0.12.20.safe/intl/localename.c 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/localename.c 2004-09-12 14:40:34.510724528 -0400 +@@ -0,0 +1,1142 @@ ++/* Determine the current selected locale. ++ Copyright (C) 1995-1999, 2000-2004 Free Software Foundation, Inc. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++/* Written by Ulrich Drepper , 1995. */ ++/* Win32 code written by Tor Lillqvist . */ ++ ++#ifdef HAVE_CONFIG_H ++# include ++#endif ++ ++#include ++#include ++ ++#if defined _WIN32 || defined __WIN32__ ++# undef WIN32 /* avoid warning on mingw32 */ ++# define WIN32 ++#endif ++ ++#ifdef WIN32 ++# define WIN32_LEAN_AND_MEAN ++# include ++/* List of language codes, sorted by value: ++ 0x01 LANG_ARABIC ++ 0x02 LANG_BULGARIAN ++ 0x03 LANG_CATALAN ++ 0x04 LANG_CHINESE ++ 0x05 LANG_CZECH ++ 0x06 LANG_DANISH ++ 0x07 LANG_GERMAN ++ 0x08 LANG_GREEK ++ 0x09 LANG_ENGLISH ++ 0x0a LANG_SPANISH ++ 0x0b LANG_FINNISH ++ 0x0c LANG_FRENCH ++ 0x0d LANG_HEBREW ++ 0x0e LANG_HUNGARIAN ++ 0x0f LANG_ICELANDIC ++ 0x10 LANG_ITALIAN ++ 0x11 LANG_JAPANESE ++ 0x12 LANG_KOREAN ++ 0x13 LANG_DUTCH ++ 0x14 LANG_NORWEGIAN ++ 0x15 LANG_POLISH ++ 0x16 LANG_PORTUGUESE ++ 0x17 LANG_RHAETO_ROMANCE ++ 0x18 LANG_ROMANIAN ++ 0x19 LANG_RUSSIAN ++ 0x1a LANG_CROATIAN == LANG_SERBIAN ++ 0x1b LANG_SLOVAK ++ 0x1c LANG_ALBANIAN ++ 0x1d LANG_SWEDISH ++ 0x1e LANG_THAI ++ 0x1f LANG_TURKISH ++ 0x20 LANG_URDU ++ 0x21 LANG_INDONESIAN ++ 0x22 LANG_UKRAINIAN ++ 0x23 LANG_BELARUSIAN ++ 0x24 LANG_SLOVENIAN ++ 0x25 LANG_ESTONIAN ++ 0x26 LANG_LATVIAN ++ 0x27 LANG_LITHUANIAN ++ 0x28 LANG_TAJIK ++ 0x29 LANG_FARSI ++ 0x2a LANG_VIETNAMESE ++ 0x2b LANG_ARMENIAN ++ 0x2c LANG_AZERI ++ 0x2d LANG_BASQUE ++ 0x2e LANG_SORBIAN ++ 0x2f LANG_MACEDONIAN ++ 0x30 LANG_SUTU ++ 0x31 LANG_TSONGA ++ 0x32 LANG_TSWANA ++ 0x33 LANG_VENDA ++ 0x34 LANG_XHOSA ++ 0x35 LANG_ZULU ++ 0x36 LANG_AFRIKAANS ++ 0x37 LANG_GEORGIAN ++ 0x38 LANG_FAEROESE ++ 0x39 LANG_HINDI ++ 0x3a LANG_MALTESE ++ 0x3b LANG_SAAMI ++ 0x3c LANG_GAELIC ++ 0x3d LANG_YIDDISH ++ 0x3e LANG_MALAY ++ 0x3f LANG_KAZAK ++ 0x40 LANG_KYRGYZ ++ 0x41 LANG_SWAHILI ++ 0x42 LANG_TURKMEN ++ 0x43 LANG_UZBEK ++ 0x44 LANG_TATAR ++ 0x45 LANG_BENGALI ++ 0x46 LANG_PUNJABI ++ 0x47 LANG_GUJARATI ++ 0x48 LANG_ORIYA ++ 0x49 LANG_TAMIL ++ 0x4a LANG_TELUGU ++ 0x4b LANG_KANNADA ++ 0x4c LANG_MALAYALAM ++ 0x4d LANG_ASSAMESE ++ 0x4e LANG_MARATHI ++ 0x4f LANG_SANSKRIT ++ 0x50 LANG_MONGOLIAN ++ 0x51 LANG_TIBETAN ++ 0x52 LANG_WELSH ++ 0x53 LANG_CAMBODIAN ++ 0x54 LANG_LAO ++ 0x55 LANG_BURMESE ++ 0x56 LANG_GALICIAN ++ 0x57 LANG_KONKANI ++ 0x58 LANG_MANIPURI ++ 0x59 LANG_SINDHI ++ 0x5a LANG_SYRIAC ++ 0x5b LANG_SINHALESE ++ 0x5c LANG_CHEROKEE ++ 0x5d LANG_INUKTITUT ++ 0x5e LANG_AMHARIC ++ 0x5f LANG_TAMAZIGHT ++ 0x60 LANG_KASHMIRI ++ 0x61 LANG_NEPALI ++ 0x62 LANG_FRISIAN ++ 0x63 LANG_PASHTO ++ 0x64 LANG_TAGALOG ++ 0x65 LANG_DIVEHI ++ 0x66 LANG_EDO ++ 0x67 LANG_FULFULDE ++ 0x68 LANG_HAUSA ++ 0x69 LANG_IBIBIO ++ 0x6a LANG_YORUBA ++ 0x70 LANG_IGBO ++ 0x71 LANG_KANURI ++ 0x72 LANG_OROMO ++ 0x73 LANG_TIGRINYA ++ 0x74 LANG_GUARANI ++ 0x75 LANG_HAWAIIAN ++ 0x76 LANG_LATIN ++ 0x77 LANG_SOMALI ++ 0x78 LANG_YI ++ 0x79 LANG_PAPIAMENTU ++*/ ++/* Mingw headers don't have latest language and sublanguage codes. */ ++# ifndef LANG_AFRIKAANS ++# define LANG_AFRIKAANS 0x36 ++# endif ++# ifndef LANG_ALBANIAN ++# define LANG_ALBANIAN 0x1c ++# endif ++# ifndef LANG_AMHARIC ++# define LANG_AMHARIC 0x5e ++# endif ++# ifndef LANG_ARABIC ++# define LANG_ARABIC 0x01 ++# endif ++# ifndef LANG_ARMENIAN ++# define LANG_ARMENIAN 0x2b ++# endif ++# ifndef LANG_ASSAMESE ++# define LANG_ASSAMESE 0x4d ++# endif ++# ifndef LANG_AZERI ++# define LANG_AZERI 0x2c ++# endif ++# ifndef LANG_BASQUE ++# define LANG_BASQUE 0x2d ++# endif ++# ifndef LANG_BELARUSIAN ++# define LANG_BELARUSIAN 0x23 ++# endif ++# ifndef LANG_BENGALI ++# define LANG_BENGALI 0x45 ++# endif ++# ifndef LANG_BURMESE ++# define LANG_BURMESE 0x55 ++# endif ++# ifndef LANG_CAMBODIAN ++# define LANG_CAMBODIAN 0x53 ++# endif ++# ifndef LANG_CATALAN ++# define LANG_CATALAN 0x03 ++# endif ++# ifndef LANG_CHEROKEE ++# define LANG_CHEROKEE 0x5c ++# endif ++# ifndef LANG_DIVEHI ++# define LANG_DIVEHI 0x65 ++# endif ++# ifndef LANG_EDO ++# define LANG_EDO 0x66 ++# endif ++# ifndef LANG_ESTONIAN ++# define LANG_ESTONIAN 0x25 ++# endif ++# ifndef LANG_FAEROESE ++# define LANG_FAEROESE 0x38 ++# endif ++# ifndef LANG_FARSI ++# define LANG_FARSI 0x29 ++# endif ++# ifndef LANG_FRISIAN ++# define LANG_FRISIAN 0x62 ++# endif ++# ifndef LANG_FULFULDE ++# define LANG_FULFULDE 0x67 ++# endif ++# ifndef LANG_GAELIC ++# define LANG_GAELIC 0x3c ++# endif ++# ifndef LANG_GALICIAN ++# define LANG_GALICIAN 0x56 ++# endif ++# ifndef LANG_GEORGIAN ++# define LANG_GEORGIAN 0x37 ++# endif ++# ifndef LANG_GUARANI ++# define LANG_GUARANI 0x74 ++# endif ++# ifndef LANG_GUJARATI ++# define LANG_GUJARATI 0x47 ++# endif ++# ifndef LANG_HAUSA ++# define LANG_HAUSA 0x68 ++# endif ++# ifndef LANG_HAWAIIAN ++# define LANG_HAWAIIAN 0x75 ++# endif ++# ifndef LANG_HEBREW ++# define LANG_HEBREW 0x0d ++# endif ++# ifndef LANG_HINDI ++# define LANG_HINDI 0x39 ++# endif ++# ifndef LANG_IBIBIO ++# define LANG_IBIBIO 0x69 ++# endif ++# ifndef LANG_IGBO ++# define LANG_IGBO 0x70 ++# endif ++# ifndef LANG_INDONESIAN ++# define LANG_INDONESIAN 0x21 ++# endif ++# ifndef LANG_INUKTITUT ++# define LANG_INUKTITUT 0x5d ++# endif ++# ifndef LANG_KANNADA ++# define LANG_KANNADA 0x4b ++# endif ++# ifndef LANG_KANURI ++# define LANG_KANURI 0x71 ++# endif ++# ifndef LANG_KASHMIRI ++# define LANG_KASHMIRI 0x60 ++# endif ++# ifndef LANG_KAZAK ++# define LANG_KAZAK 0x3f ++# endif ++# ifndef LANG_KONKANI ++# define LANG_KONKANI 0x57 ++# endif ++# ifndef LANG_KYRGYZ ++# define LANG_KYRGYZ 0x40 ++# endif ++# ifndef LANG_LAO ++# define LANG_LAO 0x54 ++# endif ++# ifndef LANG_LATIN ++# define LANG_LATIN 0x76 ++# endif ++# ifndef LANG_LATVIAN ++# define LANG_LATVIAN 0x26 ++# endif ++# ifndef LANG_LITHUANIAN ++# define LANG_LITHUANIAN 0x27 ++# endif ++# ifndef LANG_MACEDONIAN ++# define LANG_MACEDONIAN 0x2f ++# endif ++# ifndef LANG_MALAY ++# define LANG_MALAY 0x3e ++# endif ++# ifndef LANG_MALAYALAM ++# define LANG_MALAYALAM 0x4c ++# endif ++# ifndef LANG_MALTESE ++# define LANG_MALTESE 0x3a ++# endif ++# ifndef LANG_MANIPURI ++# define LANG_MANIPURI 0x58 ++# endif ++# ifndef LANG_MARATHI ++# define LANG_MARATHI 0x4e ++# endif ++# ifndef LANG_MONGOLIAN ++# define LANG_MONGOLIAN 0x50 ++# endif ++# ifndef LANG_NEPALI ++# define LANG_NEPALI 0x61 ++# endif ++# ifndef LANG_ORIYA ++# define LANG_ORIYA 0x48 ++# endif ++# ifndef LANG_OROMO ++# define LANG_OROMO 0x72 ++# endif ++# ifndef LANG_PAPIAMENTU ++# define LANG_PAPIAMENTU 0x79 ++# endif ++# ifndef LANG_PASHTO ++# define LANG_PASHTO 0x63 ++# endif ++# ifndef LANG_PUNJABI ++# define LANG_PUNJABI 0x46 ++# endif ++# ifndef LANG_RHAETO_ROMANCE ++# define LANG_RHAETO_ROMANCE 0x17 ++# endif ++# ifndef LANG_SAAMI ++# define LANG_SAAMI 0x3b ++# endif ++# ifndef LANG_SANSKRIT ++# define LANG_SANSKRIT 0x4f ++# endif ++# ifndef LANG_SERBIAN ++# define LANG_SERBIAN 0x1a ++# endif ++# ifndef LANG_SINDHI ++# define LANG_SINDHI 0x59 ++# endif ++# ifndef LANG_SINHALESE ++# define LANG_SINHALESE 0x5b ++# endif ++# ifndef LANG_SLOVAK ++# define LANG_SLOVAK 0x1b ++# endif ++# ifndef LANG_SOMALI ++# define LANG_SOMALI 0x77 ++# endif ++# ifndef LANG_SORBIAN ++# define LANG_SORBIAN 0x2e ++# endif ++# ifndef LANG_SUTU ++# define LANG_SUTU 0x30 ++# endif ++# ifndef LANG_SWAHILI ++# define LANG_SWAHILI 0x41 ++# endif ++# ifndef LANG_SYRIAC ++# define LANG_SYRIAC 0x5a ++# endif ++# ifndef LANG_TAGALOG ++# define LANG_TAGALOG 0x64 ++# endif ++# ifndef LANG_TAJIK ++# define LANG_TAJIK 0x28 ++# endif ++# ifndef LANG_TAMAZIGHT ++# define LANG_TAMAZIGHT 0x5f ++# endif ++# ifndef LANG_TAMIL ++# define LANG_TAMIL 0x49 ++# endif ++# ifndef LANG_TATAR ++# define LANG_TATAR 0x44 ++# endif ++# ifndef LANG_TELUGU ++# define LANG_TELUGU 0x4a ++# endif ++# ifndef LANG_THAI ++# define LANG_THAI 0x1e ++# endif ++# ifndef LANG_TIBETAN ++# define LANG_TIBETAN 0x51 ++# endif ++# ifndef LANG_TIGRINYA ++# define LANG_TIGRINYA 0x73 ++# endif ++# ifndef LANG_TSONGA ++# define LANG_TSONGA 0x31 ++# endif ++# ifndef LANG_TSWANA ++# define LANG_TSWANA 0x32 ++# endif ++# ifndef LANG_TURKMEN ++# define LANG_TURKMEN 0x42 ++# endif ++# ifndef LANG_UKRAINIAN ++# define LANG_UKRAINIAN 0x22 ++# endif ++# ifndef LANG_URDU ++# define LANG_URDU 0x20 ++# endif ++# ifndef LANG_UZBEK ++# define LANG_UZBEK 0x43 ++# endif ++# ifndef LANG_VENDA ++# define LANG_VENDA 0x33 ++# endif ++# ifndef LANG_VIETNAMESE ++# define LANG_VIETNAMESE 0x2a ++# endif ++# ifndef LANG_WELSH ++# define LANG_WELSH 0x52 ++# endif ++# ifndef LANG_XHOSA ++# define LANG_XHOSA 0x34 ++# endif ++# ifndef LANG_YI ++# define LANG_YI 0x78 ++# endif ++# ifndef LANG_YIDDISH ++# define LANG_YIDDISH 0x3d ++# endif ++# ifndef LANG_YORUBA ++# define LANG_YORUBA 0x6a ++# endif ++# ifndef LANG_ZULU ++# define LANG_ZULU 0x35 ++# endif ++# ifndef SUBLANG_ARABIC_SAUDI_ARABIA ++# define SUBLANG_ARABIC_SAUDI_ARABIA 0x01 ++# endif ++# ifndef SUBLANG_ARABIC_IRAQ ++# define SUBLANG_ARABIC_IRAQ 0x02 ++# endif ++# ifndef SUBLANG_ARABIC_EGYPT ++# define SUBLANG_ARABIC_EGYPT 0x03 ++# endif ++# ifndef SUBLANG_ARABIC_LIBYA ++# define SUBLANG_ARABIC_LIBYA 0x04 ++# endif ++# ifndef SUBLANG_ARABIC_ALGERIA ++# define SUBLANG_ARABIC_ALGERIA 0x05 ++# endif ++# ifndef SUBLANG_ARABIC_MOROCCO ++# define SUBLANG_ARABIC_MOROCCO 0x06 ++# endif ++# ifndef SUBLANG_ARABIC_TUNISIA ++# define SUBLANG_ARABIC_TUNISIA 0x07 ++# endif ++# ifndef SUBLANG_ARABIC_OMAN ++# define SUBLANG_ARABIC_OMAN 0x08 ++# endif ++# ifndef SUBLANG_ARABIC_YEMEN ++# define SUBLANG_ARABIC_YEMEN 0x09 ++# endif ++# ifndef SUBLANG_ARABIC_SYRIA ++# define SUBLANG_ARABIC_SYRIA 0x0a ++# endif ++# ifndef SUBLANG_ARABIC_JORDAN ++# define SUBLANG_ARABIC_JORDAN 0x0b ++# endif ++# ifndef SUBLANG_ARABIC_LEBANON ++# define SUBLANG_ARABIC_LEBANON 0x0c ++# endif ++# ifndef SUBLANG_ARABIC_KUWAIT ++# define SUBLANG_ARABIC_KUWAIT 0x0d ++# endif ++# ifndef SUBLANG_ARABIC_UAE ++# define SUBLANG_ARABIC_UAE 0x0e ++# endif ++# ifndef SUBLANG_ARABIC_BAHRAIN ++# define SUBLANG_ARABIC_BAHRAIN 0x0f ++# endif ++# ifndef SUBLANG_ARABIC_QATAR ++# define SUBLANG_ARABIC_QATAR 0x10 ++# endif ++# ifndef SUBLANG_AZERI_LATIN ++# define SUBLANG_AZERI_LATIN 0x01 ++# endif ++# ifndef SUBLANG_AZERI_CYRILLIC ++# define SUBLANG_AZERI_CYRILLIC 0x02 ++# endif ++# ifndef SUBLANG_BENGALI_INDIA ++# define SUBLANG_BENGALI_INDIA 0x00 ++# endif ++# ifndef SUBLANG_BENGALI_BANGLADESH ++# define SUBLANG_BENGALI_BANGLADESH 0x01 ++# endif ++# ifndef SUBLANG_CHINESE_MACAU ++# define SUBLANG_CHINESE_MACAU 0x05 ++# endif ++# ifndef SUBLANG_ENGLISH_SOUTH_AFRICA ++# define SUBLANG_ENGLISH_SOUTH_AFRICA 0x07 ++# endif ++# ifndef SUBLANG_ENGLISH_JAMAICA ++# define SUBLANG_ENGLISH_JAMAICA 0x08 ++# endif ++# ifndef SUBLANG_ENGLISH_CARIBBEAN ++# define SUBLANG_ENGLISH_CARIBBEAN 0x09 ++# endif ++# ifndef SUBLANG_ENGLISH_BELIZE ++# define SUBLANG_ENGLISH_BELIZE 0x0a ++# endif ++# ifndef SUBLANG_ENGLISH_TRINIDAD ++# define SUBLANG_ENGLISH_TRINIDAD 0x0b ++# endif ++# ifndef SUBLANG_ENGLISH_ZIMBABWE ++# define SUBLANG_ENGLISH_ZIMBABWE 0x0c ++# endif ++# ifndef SUBLANG_ENGLISH_PHILIPPINES ++# define SUBLANG_ENGLISH_PHILIPPINES 0x0d ++# endif ++# ifndef SUBLANG_ENGLISH_INDONESIA ++# define SUBLANG_ENGLISH_INDONESIA 0x0e ++# endif ++# ifndef SUBLANG_ENGLISH_HONGKONG ++# define SUBLANG_ENGLISH_HONGKONG 0x0f ++# endif ++# ifndef SUBLANG_ENGLISH_INDIA ++# define SUBLANG_ENGLISH_INDIA 0x10 ++# endif ++# ifndef SUBLANG_ENGLISH_MALAYSIA ++# define SUBLANG_ENGLISH_MALAYSIA 0x11 ++# endif ++# ifndef SUBLANG_ENGLISH_SINGAPORE ++# define SUBLANG_ENGLISH_SINGAPORE 0x12 ++# endif ++# ifndef SUBLANG_FRENCH_LUXEMBOURG ++# define SUBLANG_FRENCH_LUXEMBOURG 0x05 ++# endif ++# ifndef SUBLANG_FRENCH_MONACO ++# define SUBLANG_FRENCH_MONACO 0x06 ++# endif ++# ifndef SUBLANG_FRENCH_WESTINDIES ++# define SUBLANG_FRENCH_WESTINDIES 0x07 ++# endif ++# ifndef SUBLANG_FRENCH_REUNION ++# define SUBLANG_FRENCH_REUNION 0x08 ++# endif ++# ifndef SUBLANG_FRENCH_CONGO ++# define SUBLANG_FRENCH_CONGO 0x09 ++# endif ++# ifndef SUBLANG_FRENCH_SENEGAL ++# define SUBLANG_FRENCH_SENEGAL 0x0a ++# endif ++# ifndef SUBLANG_FRENCH_CAMEROON ++# define SUBLANG_FRENCH_CAMEROON 0x0b ++# endif ++# ifndef SUBLANG_FRENCH_COTEDIVOIRE ++# define SUBLANG_FRENCH_COTEDIVOIRE 0x0c ++# endif ++# ifndef SUBLANG_FRENCH_MALI ++# define SUBLANG_FRENCH_MALI 0x0d ++# endif ++# ifndef SUBLANG_FRENCH_MOROCCO ++# define SUBLANG_FRENCH_MOROCCO 0x0e ++# endif ++# ifndef SUBLANG_FRENCH_HAITI ++# define SUBLANG_FRENCH_HAITI 0x0f ++# endif ++# ifndef SUBLANG_GERMAN_LUXEMBOURG ++# define SUBLANG_GERMAN_LUXEMBOURG 0x04 ++# endif ++# ifndef SUBLANG_GERMAN_LIECHTENSTEIN ++# define SUBLANG_GERMAN_LIECHTENSTEIN 0x05 ++# endif ++# ifndef SUBLANG_KASHMIRI_INDIA ++# define SUBLANG_KASHMIRI_INDIA 0x02 ++# endif ++# ifndef SUBLANG_MALAY_MALAYSIA ++# define SUBLANG_MALAY_MALAYSIA 0x01 ++# endif ++# ifndef SUBLANG_MALAY_BRUNEI_DARUSSALAM ++# define SUBLANG_MALAY_BRUNEI_DARUSSALAM 0x02 ++# endif ++# ifndef SUBLANG_NEPALI_INDIA ++# define SUBLANG_NEPALI_INDIA 0x02 ++# endif ++# ifndef SUBLANG_PUNJABI_INDIA ++# define SUBLANG_PUNJABI_INDIA 0x00 ++# endif ++# ifndef SUBLANG_PUNJABI_PAKISTAN ++# define SUBLANG_PUNJABI_PAKISTAN 0x01 ++# endif ++# ifndef SUBLANG_ROMANIAN_ROMANIA ++# define SUBLANG_ROMANIAN_ROMANIA 0x00 ++# endif ++# ifndef SUBLANG_ROMANIAN_MOLDOVA ++# define SUBLANG_ROMANIAN_MOLDOVA 0x01 ++# endif ++# ifndef SUBLANG_SERBIAN_LATIN ++# define SUBLANG_SERBIAN_LATIN 0x02 ++# endif ++# ifndef SUBLANG_SERBIAN_CYRILLIC ++# define SUBLANG_SERBIAN_CYRILLIC 0x03 ++# endif ++# ifndef SUBLANG_SINDHI_INDIA ++# define SUBLANG_SINDHI_INDIA 0x00 ++# endif ++# ifndef SUBLANG_SINDHI_PAKISTAN ++# define SUBLANG_SINDHI_PAKISTAN 0x01 ++# endif ++# ifndef SUBLANG_SPANISH_GUATEMALA ++# define SUBLANG_SPANISH_GUATEMALA 0x04 ++# endif ++# ifndef SUBLANG_SPANISH_COSTA_RICA ++# define SUBLANG_SPANISH_COSTA_RICA 0x05 ++# endif ++# ifndef SUBLANG_SPANISH_PANAMA ++# define SUBLANG_SPANISH_PANAMA 0x06 ++# endif ++# ifndef SUBLANG_SPANISH_DOMINICAN_REPUBLIC ++# define SUBLANG_SPANISH_DOMINICAN_REPUBLIC 0x07 ++# endif ++# ifndef SUBLANG_SPANISH_VENEZUELA ++# define SUBLANG_SPANISH_VENEZUELA 0x08 ++# endif ++# ifndef SUBLANG_SPANISH_COLOMBIA ++# define SUBLANG_SPANISH_COLOMBIA 0x09 ++# endif ++# ifndef SUBLANG_SPANISH_PERU ++# define SUBLANG_SPANISH_PERU 0x0a ++# endif ++# ifndef SUBLANG_SPANISH_ARGENTINA ++# define SUBLANG_SPANISH_ARGENTINA 0x0b ++# endif ++# ifndef SUBLANG_SPANISH_ECUADOR ++# define SUBLANG_SPANISH_ECUADOR 0x0c ++# endif ++# ifndef SUBLANG_SPANISH_CHILE ++# define SUBLANG_SPANISH_CHILE 0x0d ++# endif ++# ifndef SUBLANG_SPANISH_URUGUAY ++# define SUBLANG_SPANISH_URUGUAY 0x0e ++# endif ++# ifndef SUBLANG_SPANISH_PARAGUAY ++# define SUBLANG_SPANISH_PARAGUAY 0x0f ++# endif ++# ifndef SUBLANG_SPANISH_BOLIVIA ++# define SUBLANG_SPANISH_BOLIVIA 0x10 ++# endif ++# ifndef SUBLANG_SPANISH_EL_SALVADOR ++# define SUBLANG_SPANISH_EL_SALVADOR 0x11 ++# endif ++# ifndef SUBLANG_SPANISH_HONDURAS ++# define SUBLANG_SPANISH_HONDURAS 0x12 ++# endif ++# ifndef SUBLANG_SPANISH_NICARAGUA ++# define SUBLANG_SPANISH_NICARAGUA 0x13 ++# endif ++# ifndef SUBLANG_SPANISH_PUERTO_RICO ++# define SUBLANG_SPANISH_PUERTO_RICO 0x14 ++# endif ++# ifndef SUBLANG_SWEDISH_FINLAND ++# define SUBLANG_SWEDISH_FINLAND 0x02 ++# endif ++# ifndef SUBLANG_TAMAZIGHT_ARABIC ++# define SUBLANG_TAMAZIGHT_ARABIC 0x01 ++# endif ++# ifndef SUBLANG_TAMAZIGHT_LATIN ++# define SUBLANG_TAMAZIGHT_LATIN 0x02 ++# endif ++# ifndef SUBLANG_TIGRINYA_ETHIOPIA ++# define SUBLANG_TIGRINYA_ETHIOPIA 0x00 ++# endif ++# ifndef SUBLANG_TIGRINYA_ERITREA ++# define SUBLANG_TIGRINYA_ERITREA 0x01 ++# endif ++# ifndef SUBLANG_URDU_PAKISTAN ++# define SUBLANG_URDU_PAKISTAN 0x01 ++# endif ++# ifndef SUBLANG_URDU_INDIA ++# define SUBLANG_URDU_INDIA 0x02 ++# endif ++# ifndef SUBLANG_UZBEK_LATIN ++# define SUBLANG_UZBEK_LATIN 0x01 ++# endif ++# ifndef SUBLANG_UZBEK_CYRILLIC ++# define SUBLANG_UZBEK_CYRILLIC 0x02 ++# endif ++#endif ++ ++/* XPG3 defines the result of 'setlocale (category, NULL)' as: ++ "Directs 'setlocale()' to query 'category' and return the current ++ setting of 'local'." ++ However it does not specify the exact format. Neither do SUSV2 and ++ ISO C 99. So we can use this feature only on selected systems (e.g. ++ those using GNU C Library). */ ++#if defined _LIBC || (defined __GNU_LIBRARY__ && __GNU_LIBRARY__ >= 2) ++# define HAVE_LOCALE_NULL ++#endif ++ ++/* Determine the current locale's name, and canonicalize it into XPG syntax ++ language[_territory[.codeset]][@modifier] ++ The codeset part in the result is not reliable; the locale_charset() ++ should be used for codeset information instead. ++ The result must not be freed; it is statically allocated. */ ++ ++const char * ++_nl_locale_name (int category, const char *categoryname) ++{ ++ const char *retval; ++ ++#ifndef WIN32 ++ ++ /* Use the POSIX methods of looking to 'LC_ALL', 'LC_xxx', and 'LANG'. ++ On some systems this can be done by the 'setlocale' function itself. */ ++# if defined HAVE_SETLOCALE && defined HAVE_LC_MESSAGES && defined HAVE_LOCALE_NULL ++ retval = setlocale (category, NULL); ++# else ++ /* Setting of LC_ALL overwrites all other. */ ++ retval = getenv ("LC_ALL"); ++ if (retval == NULL || retval[0] == '\0') ++ { ++ /* Next comes the name of the desired category. */ ++ retval = getenv (categoryname); ++ if (retval == NULL || retval[0] == '\0') ++ { ++ /* Last possibility is the LANG environment variable. */ ++ retval = getenv ("LANG"); ++ if (retval == NULL || retval[0] == '\0') ++ /* We use C as the default domain. POSIX says this is ++ implementation defined. */ ++ retval = "C"; ++ } ++ } ++# endif ++ ++ return retval; ++ ++#else /* WIN32 */ ++ ++ /* Return an XPG style locale name language[_territory][@modifier]. ++ Don't even bother determining the codeset; it's not useful in this ++ context, because message catalogs are not specific to a single ++ codeset. */ ++ ++ LCID lcid; ++ LANGID langid; ++ int primary, sub; ++ ++ /* Let the user override the system settings through environment ++ variables, as on POSIX systems. */ ++ retval = getenv ("LC_ALL"); ++ if (retval != NULL && retval[0] != '\0') ++ return retval; ++ retval = getenv (categoryname); ++ if (retval != NULL && retval[0] != '\0') ++ return retval; ++ retval = getenv ("LANG"); ++ if (retval != NULL && retval[0] != '\0') ++ return retval; ++ ++ /* Use native Win32 API locale ID. */ ++ lcid = GetThreadLocale (); ++ ++ /* Strip off the sorting rules, keep only the language part. */ ++ langid = LANGIDFROMLCID (lcid); ++ ++ /* Split into language and territory part. */ ++ primary = PRIMARYLANGID (langid); ++ sub = SUBLANGID (langid); ++ ++ /* Dispatch on language. ++ See also http://www.unicode.org/unicode/onlinedat/languages.html . ++ For details about languages, see http://www.ethnologue.com/ . */ ++ switch (primary) ++ { ++ case LANG_AFRIKAANS: return "af_ZA"; ++ case LANG_ALBANIAN: return "sq_AL"; ++ case LANG_AMHARIC: return "am_ET"; ++ case LANG_ARABIC: ++ switch (sub) ++ { ++ case SUBLANG_ARABIC_SAUDI_ARABIA: return "ar_SA"; ++ case SUBLANG_ARABIC_IRAQ: return "ar_IQ"; ++ case SUBLANG_ARABIC_EGYPT: return "ar_EG"; ++ case SUBLANG_ARABIC_LIBYA: return "ar_LY"; ++ case SUBLANG_ARABIC_ALGERIA: return "ar_DZ"; ++ case SUBLANG_ARABIC_MOROCCO: return "ar_MA"; ++ case SUBLANG_ARABIC_TUNISIA: return "ar_TN"; ++ case SUBLANG_ARABIC_OMAN: return "ar_OM"; ++ case SUBLANG_ARABIC_YEMEN: return "ar_YE"; ++ case SUBLANG_ARABIC_SYRIA: return "ar_SY"; ++ case SUBLANG_ARABIC_JORDAN: return "ar_JO"; ++ case SUBLANG_ARABIC_LEBANON: return "ar_LB"; ++ case SUBLANG_ARABIC_KUWAIT: return "ar_KW"; ++ case SUBLANG_ARABIC_UAE: return "ar_AE"; ++ case SUBLANG_ARABIC_BAHRAIN: return "ar_BH"; ++ case SUBLANG_ARABIC_QATAR: return "ar_QA"; ++ } ++ return "ar"; ++ case LANG_ARMENIAN: return "hy_AM"; ++ case LANG_ASSAMESE: return "as_IN"; ++ case LANG_AZERI: ++ switch (sub) ++ { ++ /* FIXME: Adjust this when Azerbaijani locales appear on Unix. */ ++ case SUBLANG_AZERI_LATIN: return "az_AZ@latin"; ++ case SUBLANG_AZERI_CYRILLIC: return "az_AZ@cyrillic"; ++ } ++ return "az"; ++ case LANG_BASQUE: ++ return "eu"; /* Ambiguous: could be "eu_ES" or "eu_FR". */ ++ case LANG_BELARUSIAN: return "be_BY"; ++ case LANG_BENGALI: ++ switch (sub) ++ { ++ case SUBLANG_BENGALI_INDIA: return "bn_IN"; ++ case SUBLANG_BENGALI_BANGLADESH: return "bn_BD"; ++ } ++ return "bn"; ++ case LANG_BULGARIAN: return "bg_BG"; ++ case LANG_BURMESE: return "my_MM"; ++ case LANG_CAMBODIAN: return "km_KH"; ++ case LANG_CATALAN: return "ca_ES"; ++ case LANG_CHEROKEE: return "chr_US"; ++ case LANG_CHINESE: ++ switch (sub) ++ { ++ case SUBLANG_CHINESE_TRADITIONAL: return "zh_TW"; ++ case SUBLANG_CHINESE_SIMPLIFIED: return "zh_CN"; ++ case SUBLANG_CHINESE_HONGKONG: return "zh_HK"; ++ case SUBLANG_CHINESE_SINGAPORE: return "zh_SG"; ++ case SUBLANG_CHINESE_MACAU: return "zh_MO"; ++ } ++ return "zh"; ++ case LANG_CROATIAN: /* LANG_CROATIAN == LANG_SERBIAN ++ * What used to be called Serbo-Croatian ++ * should really now be two separate ++ * languages because of political reasons. ++ * (Says tml, who knows nothing about Serbian ++ * or Croatian.) ++ * (I can feel those flames coming already.) ++ */ ++ switch (sub) ++ { ++ case SUBLANG_DEFAULT: return "hr_HR"; ++ case SUBLANG_SERBIAN_LATIN: return "sr_CS"; ++ case SUBLANG_SERBIAN_CYRILLIC: return "sr_CS@cyrillic"; ++ } ++ return "hr"; ++ case LANG_CZECH: return "cs_CZ"; ++ case LANG_DANISH: return "da_DK"; ++ case LANG_DIVEHI: return "dv_MV"; ++ case LANG_DUTCH: ++ switch (sub) ++ { ++ case SUBLANG_DUTCH: return "nl_NL"; ++ case SUBLANG_DUTCH_BELGIAN: /* FLEMISH, VLAAMS */ return "nl_BE"; ++ } ++ return "nl"; ++ case LANG_EDO: return "bin_NG"; ++ case LANG_ENGLISH: ++ switch (sub) ++ { ++ /* SUBLANG_ENGLISH_US == SUBLANG_DEFAULT. Heh. I thought ++ * English was the language spoken in England. ++ * Oh well. ++ */ ++ case SUBLANG_ENGLISH_US: return "en_US"; ++ case SUBLANG_ENGLISH_UK: return "en_GB"; ++ case SUBLANG_ENGLISH_AUS: return "en_AU"; ++ case SUBLANG_ENGLISH_CAN: return "en_CA"; ++ case SUBLANG_ENGLISH_NZ: return "en_NZ"; ++ case SUBLANG_ENGLISH_EIRE: return "en_IE"; ++ case SUBLANG_ENGLISH_SOUTH_AFRICA: return "en_ZA"; ++ case SUBLANG_ENGLISH_JAMAICA: return "en_JM"; ++ case SUBLANG_ENGLISH_CARIBBEAN: return "en_GD"; /* Grenada? */ ++ case SUBLANG_ENGLISH_BELIZE: return "en_BZ"; ++ case SUBLANG_ENGLISH_TRINIDAD: return "en_TT"; ++ case SUBLANG_ENGLISH_ZIMBABWE: return "en_ZW"; ++ case SUBLANG_ENGLISH_PHILIPPINES: return "en_PH"; ++ case SUBLANG_ENGLISH_INDONESIA: return "en_ID"; ++ case SUBLANG_ENGLISH_HONGKONG: return "en_HK"; ++ case SUBLANG_ENGLISH_INDIA: return "en_IN"; ++ case SUBLANG_ENGLISH_MALAYSIA: return "en_MY"; ++ case SUBLANG_ENGLISH_SINGAPORE: return "en_SG"; ++ } ++ return "en"; ++ case LANG_ESTONIAN: return "et_EE"; ++ case LANG_FAEROESE: return "fo_FO"; ++ case LANG_FARSI: return "fa_IR"; ++ case LANG_FINNISH: return "fi_FI"; ++ case LANG_FRENCH: ++ switch (sub) ++ { ++ case SUBLANG_FRENCH: return "fr_FR"; ++ case SUBLANG_FRENCH_BELGIAN: /* WALLOON */ return "fr_BE"; ++ case SUBLANG_FRENCH_CANADIAN: return "fr_CA"; ++ case SUBLANG_FRENCH_SWISS: return "fr_CH"; ++ case SUBLANG_FRENCH_LUXEMBOURG: return "fr_LU"; ++ case SUBLANG_FRENCH_MONACO: return "fr_MC"; ++ case SUBLANG_FRENCH_WESTINDIES: return "fr"; /* Caribbean? */ ++ case SUBLANG_FRENCH_REUNION: return "fr_RE"; ++ case SUBLANG_FRENCH_CONGO: return "fr_CG"; ++ case SUBLANG_FRENCH_SENEGAL: return "fr_SN"; ++ case SUBLANG_FRENCH_CAMEROON: return "fr_CM"; ++ case SUBLANG_FRENCH_COTEDIVOIRE: return "fr_CI"; ++ case SUBLANG_FRENCH_MALI: return "fr_ML"; ++ case SUBLANG_FRENCH_MOROCCO: return "fr_MA"; ++ case SUBLANG_FRENCH_HAITI: return "fr_HT"; ++ } ++ return "fr"; ++ case LANG_FRISIAN: return "fy_NL"; ++ case LANG_FULFULDE: ++ /* Spoken in Nigeria, Guinea, Senegal, Mali, Niger, Cameroon, Benin. */ ++ return "ff_NG"; ++ case LANG_GAELIC: ++ switch (sub) ++ { ++ case 0x01: /* SCOTTISH */ return "gd_GB"; ++ case 0x02: /* IRISH */ return "ga_IE"; ++ } ++ return "C"; ++ case LANG_GALICIAN: return "gl_ES"; ++ case LANG_GEORGIAN: return "ka_GE"; ++ case LANG_GERMAN: ++ switch (sub) ++ { ++ case SUBLANG_GERMAN: return "de_DE"; ++ case SUBLANG_GERMAN_SWISS: return "de_CH"; ++ case SUBLANG_GERMAN_AUSTRIAN: return "de_AT"; ++ case SUBLANG_GERMAN_LUXEMBOURG: return "de_LU"; ++ case SUBLANG_GERMAN_LIECHTENSTEIN: return "de_LI"; ++ } ++ return "de"; ++ case LANG_GREEK: return "el_GR"; ++ case LANG_GUARANI: return "gn_PY"; ++ case LANG_GUJARATI: return "gu_IN"; ++ case LANG_HAUSA: return "ha_NG"; ++ case LANG_HAWAIIAN: ++ /* FIXME: Do they mean Hawaiian ("haw_US", 1000 speakers) ++ or Hawaii Creole English ("cpe_US", 600000 speakers)? */ ++ return "cpe_US"; ++ case LANG_HEBREW: return "he_IL"; ++ case LANG_HINDI: return "hi_IN"; ++ case LANG_HUNGARIAN: return "hu_HU"; ++ case LANG_IBIBIO: return "nic_NG"; ++ case LANG_ICELANDIC: return "is_IS"; ++ case LANG_IGBO: return "ig_NG"; ++ case LANG_INDONESIAN: return "id_ID"; ++ case LANG_INUKTITUT: return "iu_CA"; ++ case LANG_ITALIAN: ++ switch (sub) ++ { ++ case SUBLANG_ITALIAN: return "it_IT"; ++ case SUBLANG_ITALIAN_SWISS: return "it_CH"; ++ } ++ return "it"; ++ case LANG_JAPANESE: return "ja_JP"; ++ case LANG_KANNADA: return "kn_IN"; ++ case LANG_KANURI: return "kr_NG"; ++ case LANG_KASHMIRI: ++ switch (sub) ++ { ++ case SUBLANG_DEFAULT: return "ks_PK"; ++ case SUBLANG_KASHMIRI_INDIA: return "ks_IN"; ++ } ++ return "ks"; ++ case LANG_KAZAK: return "kk_KZ"; ++ case LANG_KONKANI: ++ /* FIXME: Adjust this when such locales appear on Unix. */ ++ return "kok_IN"; ++ case LANG_KOREAN: return "ko_KR"; ++ case LANG_KYRGYZ: return "ky_KG"; ++ case LANG_LAO: return "lo_LA"; ++ case LANG_LATIN: return "la_VA"; ++ case LANG_LATVIAN: return "lv_LV"; ++ case LANG_LITHUANIAN: return "lt_LT"; ++ case LANG_MACEDONIAN: return "mk_MK"; ++ case LANG_MALAY: ++ switch (sub) ++ { ++ case SUBLANG_MALAY_MALAYSIA: return "ms_MY"; ++ case SUBLANG_MALAY_BRUNEI_DARUSSALAM: return "ms_BN"; ++ } ++ return "ms"; ++ case LANG_MALAYALAM: return "ml_IN"; ++ case LANG_MALTESE: return "mt_MT"; ++ case LANG_MANIPURI: ++ /* FIXME: Adjust this when such locales appear on Unix. */ ++ return "mni_IN"; ++ case LANG_MARATHI: return "mr_IN"; ++ case LANG_MONGOLIAN: ++ return "mn"; /* Ambiguous: could be "mn_CN" or "mn_MN". */ ++ case LANG_NEPALI: ++ switch (sub) ++ { ++ case SUBLANG_DEFAULT: return "ne_NP"; ++ case SUBLANG_NEPALI_INDIA: return "ne_IN"; ++ } ++ return "ne"; ++ case LANG_NORWEGIAN: ++ switch (sub) ++ { ++ case SUBLANG_NORWEGIAN_BOKMAL: return "no_NO"; ++ case SUBLANG_NORWEGIAN_NYNORSK: return "nn_NO"; ++ } ++ return "no"; ++ case LANG_ORIYA: return "or_IN"; ++ case LANG_OROMO: return "om_ET"; ++ case LANG_PAPIAMENTU: return "pap_AN"; ++ case LANG_PASHTO: ++ return "ps"; /* Ambiguous: could be "ps_PK" or "ps_AF". */ ++ case LANG_POLISH: return "pl_PL"; ++ case LANG_PORTUGUESE: ++ switch (sub) ++ { ++ case SUBLANG_PORTUGUESE: return "pt_PT"; ++ /* Hmm. SUBLANG_PORTUGUESE_BRAZILIAN == SUBLANG_DEFAULT. ++ Same phenomenon as SUBLANG_ENGLISH_US == SUBLANG_DEFAULT. */ ++ case SUBLANG_PORTUGUESE_BRAZILIAN: return "pt_BR"; ++ } ++ return "pt"; ++ case LANG_PUNJABI: ++ switch (sub) ++ { ++ case SUBLANG_PUNJABI_INDIA: return "pa_IN"; /* Gurmukhi script */ ++ case SUBLANG_PUNJABI_PAKISTAN: return "pa_PK"; /* Arabic script */ ++ } ++ return "pa"; ++ case LANG_RHAETO_ROMANCE: return "rm_CH"; ++ case LANG_ROMANIAN: ++ switch (sub) ++ { ++ case SUBLANG_ROMANIAN_ROMANIA: return "ro_RO"; ++ case SUBLANG_ROMANIAN_MOLDOVA: return "ro_MD"; ++ } ++ return "ro"; ++ case LANG_RUSSIAN: ++ return "ru"; /* Ambiguous: could be "ru_RU" or "ru_UA" or "ru_MD". */ ++ case LANG_SAAMI: /* actually Northern Sami */ return "se_NO"; ++ case LANG_SANSKRIT: return "sa_IN"; ++ case LANG_SINDHI: ++ switch (sub) ++ { ++ case SUBLANG_SINDHI_INDIA: return "sd_IN"; ++ case SUBLANG_SINDHI_PAKISTAN: return "sd_PK"; ++ } ++ return "sd"; ++ case LANG_SINHALESE: return "si_LK"; ++ case LANG_SLOVAK: return "sk_SK"; ++ case LANG_SLOVENIAN: return "sl_SI"; ++ case LANG_SOMALI: return "so_SO"; ++ case LANG_SORBIAN: ++ /* FIXME: Adjust this when such locales appear on Unix. */ ++ return "wen_DE"; ++ case LANG_SPANISH: ++ switch (sub) ++ { ++ case SUBLANG_SPANISH: return "es_ES"; ++ case SUBLANG_SPANISH_MEXICAN: return "es_MX"; ++ case SUBLANG_SPANISH_MODERN: ++ return "es_ES@modern"; /* not seen on Unix */ ++ case SUBLANG_SPANISH_GUATEMALA: return "es_GT"; ++ case SUBLANG_SPANISH_COSTA_RICA: return "es_CR"; ++ case SUBLANG_SPANISH_PANAMA: return "es_PA"; ++ case SUBLANG_SPANISH_DOMINICAN_REPUBLIC: return "es_DO"; ++ case SUBLANG_SPANISH_VENEZUELA: return "es_VE"; ++ case SUBLANG_SPANISH_COLOMBIA: return "es_CO"; ++ case SUBLANG_SPANISH_PERU: return "es_PE"; ++ case SUBLANG_SPANISH_ARGENTINA: return "es_AR"; ++ case SUBLANG_SPANISH_ECUADOR: return "es_EC"; ++ case SUBLANG_SPANISH_CHILE: return "es_CL"; ++ case SUBLANG_SPANISH_URUGUAY: return "es_UY"; ++ case SUBLANG_SPANISH_PARAGUAY: return "es_PY"; ++ case SUBLANG_SPANISH_BOLIVIA: return "es_BO"; ++ case SUBLANG_SPANISH_EL_SALVADOR: return "es_SV"; ++ case SUBLANG_SPANISH_HONDURAS: return "es_HN"; ++ case SUBLANG_SPANISH_NICARAGUA: return "es_NI"; ++ case SUBLANG_SPANISH_PUERTO_RICO: return "es_PR"; ++ } ++ return "es"; ++ case LANG_SUTU: return "bnt_TZ"; /* or "st_LS" or "nso_ZA"? */ ++ case LANG_SWAHILI: return "sw_KE"; ++ case LANG_SWEDISH: ++ switch (sub) ++ { ++ case SUBLANG_DEFAULT: return "sv_SE"; ++ case SUBLANG_SWEDISH_FINLAND: return "sv_FI"; ++ } ++ return "sv"; ++ case LANG_SYRIAC: return "syr_TR"; /* An extinct language. */ ++ case LANG_TAGALOG: return "tl_PH"; ++ case LANG_TAJIK: return "tg_TJ"; ++ case LANG_TAMAZIGHT: ++ switch (sub) ++ { ++ /* FIXME: Adjust this when Tamazight locales appear on Unix. */ ++ case SUBLANG_TAMAZIGHT_ARABIC: return "ber_MA@arabic"; ++ case SUBLANG_TAMAZIGHT_LATIN: return "ber_MA@latin"; ++ } ++ return "ber_MA"; ++ case LANG_TAMIL: ++ return "ta"; /* Ambiguous: could be "ta_IN" or "ta_LK" or "ta_SG". */ ++ case LANG_TATAR: return "tt_RU"; ++ case LANG_TELUGU: return "te_IN"; ++ case LANG_THAI: return "th_TH"; ++ case LANG_TIBETAN: return "bo_CN"; ++ case LANG_TIGRINYA: ++ switch (sub) ++ { ++ case SUBLANG_TIGRINYA_ETHIOPIA: return "ti_ET"; ++ case SUBLANG_TIGRINYA_ERITREA: return "ti_ER"; ++ } ++ return "ti"; ++ case LANG_TSONGA: return "ts_ZA"; ++ case LANG_TSWANA: return "tn_BW"; ++ case LANG_TURKISH: return "tr_TR"; ++ case LANG_TURKMEN: return "tk_TM"; ++ case LANG_UKRAINIAN: return "uk_UA"; ++ case LANG_URDU: ++ switch (sub) ++ { ++ case SUBLANG_URDU_PAKISTAN: return "ur_PK"; ++ case SUBLANG_URDU_INDIA: return "ur_IN"; ++ } ++ return "ur"; ++ case LANG_UZBEK: ++ switch (sub) ++ { ++ case SUBLANG_UZBEK_LATIN: return "uz_UZ"; ++ case SUBLANG_UZBEK_CYRILLIC: return "uz_UZ@cyrillic"; ++ } ++ return "uz"; ++ case LANG_VENDA: return "ve_ZA"; ++ case LANG_VIETNAMESE: return "vi_VN"; ++ case LANG_WELSH: return "cy_GB"; ++ case LANG_XHOSA: return "xh_ZA"; ++ case LANG_YI: return "sit_CN"; ++ case LANG_YIDDISH: return "yi_IL"; ++ case LANG_YORUBA: return "yo_NG"; ++ case LANG_ZULU: return "zu_ZA"; ++ default: return "C"; ++ } ++ ++#endif ++} +--- lrzsz-0.12.20.safe/intl/log.c 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/log.c 2004-09-12 14:40:34.515723768 -0400 +@@ -0,0 +1,98 @@ ++/* Log file output. ++ Copyright (C) 2003 Free Software Foundation, Inc. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++/* Written by Bruno Haible . */ ++ ++#ifdef HAVE_CONFIG_H ++# include ++#endif ++ ++#include ++#include ++#include ++ ++/* Print an ASCII string with quotes and escape sequences where needed. */ ++static void ++print_escaped (FILE *stream, const char *str) ++{ ++ putc ('"', stream); ++ for (; *str != '\0'; str++) ++ if (*str == '\n') ++ { ++ fputs ("\\n\"", stream); ++ if (str[1] == '\0') ++ return; ++ fputs ("\n\"", stream); ++ } ++ else ++ { ++ if (*str == '"' || *str == '\\') ++ putc ('\\', stream); ++ putc (*str, stream); ++ } ++ putc ('"', stream); ++} ++ ++/* Add to the log file an entry denoting a failed translation. */ ++void ++_nl_log_untranslated (const char *logfilename, const char *domainname, ++ const char *msgid1, const char *msgid2, int plural) ++{ ++ static char *last_logfilename = NULL; ++ static FILE *last_logfile = NULL; ++ FILE *logfile; ++ ++ /* Can we reuse the last opened logfile? */ ++ if (last_logfilename == NULL || strcmp (logfilename, last_logfilename) != 0) ++ { ++ /* Close the last used logfile. */ ++ if (last_logfilename != NULL) ++ { ++ if (last_logfile != NULL) ++ { ++ fclose (last_logfile); ++ last_logfile = NULL; ++ } ++ free (last_logfilename); ++ last_logfilename = NULL; ++ } ++ /* Open the logfile. */ ++ last_logfilename = (char *) malloc (strlen (logfilename) + 1); ++ if (last_logfilename == NULL) ++ return; ++ strcpy (last_logfilename, logfilename); ++ last_logfile = fopen (logfilename, "a"); ++ if (last_logfile == NULL) ++ return; ++ } ++ logfile = last_logfile; ++ ++ fprintf (logfile, "domain "); ++ print_escaped (logfile, domainname); ++ fprintf (logfile, "\nmsgid "); ++ print_escaped (logfile, msgid1); ++ if (plural) ++ { ++ fprintf (logfile, "\nmsgid_plural "); ++ print_escaped (logfile, msgid2); ++ fprintf (logfile, "\nmsgstr[0] \"\"\n"); ++ } ++ else ++ fprintf (logfile, "\nmsgstr \"\"\n"); ++ putc ('\n', logfile); ++} +--- lrzsz-0.12.20.safe/intl/Makefile.in 1998-04-26 09:22:35.000000000 -0400 ++++ lrzsz-0.12.20/intl/Makefile.in 2004-09-12 14:40:34.521722856 -0400 +@@ -1,19 +1,20 @@ +-# Makefile for directory with message catalog handling in GNU NLS Utilities. +-# Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. ++# Makefile for directory with message catalog handling library of GNU gettext ++# Copyright (C) 1995-1998, 2000-2003 Free Software Foundation, Inc. + # +-# This program is free software; you can redistribute it and/or modify +-# it under the terms of the GNU General Public License as published by +-# the Free Software Foundation; either version 2, or (at your option) ++# This program is free software; you can redistribute it and/or modify it ++# under the terms of the GNU Library General Public License as published ++# by the Free Software Foundation; either version 2, or (at your option) + # any later version. + # + # This program is distributed in the hope that it will be useful, + # but WITHOUT ANY WARRANTY; without even the implied warranty of +-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-# GNU General Public License for more details. ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++# Library General Public License for more details. + # +-# You should have received a copy of the GNU General Public License +-# along with this program; if not, write to the Free Software +-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. ++# You should have received a copy of the GNU Library General Public ++# License along with this program; if not, write to the Free Software ++# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++# USA. + + PACKAGE = @PACKAGE@ + VERSION = @VERSION@ +@@ -23,118 +24,341 @@ + srcdir = @srcdir@ + top_srcdir = @top_srcdir@ + top_builddir = .. +-VPATH = @srcdir@ ++#VPATH = $(srcdir) + + prefix = @prefix@ + exec_prefix = @exec_prefix@ + transform = @program_transform_name@ +-libdir = $(exec_prefix)/lib +-includedir = $(prefix)/include +-datadir = $(prefix)/@DATADIRNAME@ ++libdir = @libdir@ ++includedir = @includedir@ ++datadir = @datadir@ + localedir = $(datadir)/locale +-gnulocaledir = $(prefix)/share/locale +-gettextsrcdir = @datadir@/gettext/intl +-aliaspath = $(localedir):. ++gettextsrcdir = $(datadir)/gettext/intl ++aliaspath = $(localedir) + subdir = intl + + INSTALL = @INSTALL@ + INSTALL_DATA = @INSTALL_DATA@ + MKINSTALLDIRS = @MKINSTALLDIRS@ ++mkinstalldirs = $(SHELL) $(MKINSTALLDIRS) + +-l = @l@ ++l = @INTL_LIBTOOL_SUFFIX_PREFIX@ + + AR = ar + CC = @CC@ + LIBTOOL = @LIBTOOL@ + RANLIB = @RANLIB@ ++YACC = @INTLBISON@ -y -d ++YFLAGS = --name-prefix=__gettext + +-DEFS = -DLOCALEDIR=\"$(localedir)\" -DGNULOCALEDIR=\"$(gnulocaledir)\" \ +--DLOCALE_ALIAS_PATH=\"$(aliaspath)\" @DEFS@ ++DEFS = -DLOCALEDIR=\"$(localedir)\" -DLOCALE_ALIAS_PATH=\"$(aliaspath)\" \ ++-DLIBDIR=\"$(libdir)\" -DIN_LIBINTL \ ++-DENABLE_RELOCATABLE=1 -DIN_LIBRARY -DINSTALLDIR=\"$(libdir)\" -DNO_XMALLOC \ ++-Dset_relocation_prefix=libintl_set_relocation_prefix \ ++-Drelocate=libintl_relocate \ ++-DDEPENDS_ON_LIBICONV=1 @DEFS@ + CPPFLAGS = @CPPFLAGS@ + CFLAGS = @CFLAGS@ + LDFLAGS = @LDFLAGS@ ++LIBS = @LIBS@ + + COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS) + +-HEADERS = $(COMHDRS) libgettext.h loadinfo.h +-COMHDRS = gettext.h gettextP.h hash-string.h +-SOURCES = $(COMSRCS) intl-compat.c cat-compat.c +-COMSRCS = bindtextdom.c dcgettext.c dgettext.c gettext.c \ +-finddomain.c loadmsgcat.c localealias.c textdomain.c l10nflist.c \ +-explodename.c +-OBJECTS = @INTLOBJS@ bindtextdom.$lo dcgettext.$lo dgettext.$lo gettext.$lo \ +-finddomain.$lo loadmsgcat.$lo localealias.$lo textdomain.$lo l10nflist.$lo \ +-explodename.$lo +-CATOBJS = cat-compat.$lo ../po/cat-id-tbl.$lo +-GETTOBJS = intl-compat.$lo +-DISTFILES.common = ChangeLog Makefile.in linux-msg.sed po2tbl.sed.in \ +-xopen-msg.sed $(HEADERS) $(SOURCES) ++HEADERS = \ ++ gmo.h \ ++ gettextP.h \ ++ hash-string.h \ ++ loadinfo.h \ ++ plural-exp.h \ ++ eval-plural.h \ ++ localcharset.h \ ++ relocatable.h \ ++ xsize.h \ ++ printf-args.h printf-args.c \ ++ printf-parse.h wprintf-parse.h printf-parse.c \ ++ vasnprintf.h vasnwprintf.h vasnprintf.c \ ++ os2compat.h \ ++ libgnuintl.h.in ++SOURCES = \ ++ bindtextdom.c \ ++ dcgettext.c \ ++ dgettext.c \ ++ gettext.c \ ++ finddomain.c \ ++ loadmsgcat.c \ ++ localealias.c \ ++ textdomain.c \ ++ l10nflist.c \ ++ explodename.c \ ++ dcigettext.c \ ++ dcngettext.c \ ++ dngettext.c \ ++ ngettext.c \ ++ plural.y \ ++ plural-exp.c \ ++ localcharset.c \ ++ relocatable.c \ ++ localename.c \ ++ log.c \ ++ printf.c \ ++ osdep.c \ ++ os2compat.c \ ++ intl-compat.c ++OBJECTS = \ ++ bindtextdom.$lo \ ++ dcgettext.$lo \ ++ dgettext.$lo \ ++ gettext.$lo \ ++ finddomain.$lo \ ++ loadmsgcat.$lo \ ++ localealias.$lo \ ++ textdomain.$lo \ ++ l10nflist.$lo \ ++ explodename.$lo \ ++ dcigettext.$lo \ ++ dcngettext.$lo \ ++ dngettext.$lo \ ++ ngettext.$lo \ ++ plural.$lo \ ++ plural-exp.$lo \ ++ localcharset.$lo \ ++ relocatable.$lo \ ++ localename.$lo \ ++ log.$lo \ ++ printf.$lo \ ++ osdep.$lo \ ++ intl-compat.$lo ++DISTFILES.common = Makefile.in \ ++config.charset locale.alias ref-add.sin ref-del.sin $(HEADERS) $(SOURCES) ++DISTFILES.generated = plural.c + DISTFILES.normal = VERSION +-DISTFILES.gettext = libintl.glibc intlh.inst.in ++DISTFILES.gettext = COPYING.LIB-2.0 COPYING.LIB-2.1 libintl.glibc \ ++libgnuintl.h_vms Makefile.vms \ ++libgnuintl.h.msvc-static libgnuintl.h.msvc-shared README.woe32 Makefile.msvc ++DISTFILES.obsolete = xopen-msg.sed linux-msg.sed po2tbl.sed.in cat-compat.c \ ++COPYING.LIB-2 gettext.h libgettext.h plural-eval.c libgnuintl.h ++ ++all: all-@USE_INCLUDED_LIBINTL@ ++all-yes: libintl.$la libintl.h charset.alias ref-add.sed ref-del.sed ++all-no: all-no-@BUILD_INCLUDED_LIBINTL@ ++all-no-yes: libgnuintl.$la ++all-no-no: ++ ++libintl.a libgnuintl.a: $(OBJECTS) ++ rm -f $@ ++ $(AR) cru $@ $(OBJECTS) ++ $(RANLIB) $@ ++ ++libintl.la libgnuintl.la: $(OBJECTS) ++ $(LIBTOOL) --mode=link \ ++ $(CC) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS) $(LDFLAGS) -o $@ \ ++ $(OBJECTS) @LTLIBICONV@ $(LIBS) -lc \ ++ -version-info $(LTV_CURRENT):$(LTV_REVISION):$(LTV_AGE) \ ++ -rpath $(libdir) \ ++ -no-undefined ++ ++# Libtool's library version information for libintl. ++# Before making a gettext release, the gettext maintainer must change this ++# according to the libtool documentation, section "Library interface versions". ++# Maintainers of other packages that include the intl directory must *not* ++# change these values. ++LTV_CURRENT=7 ++LTV_REVISION=0 ++LTV_AGE=4 + + .SUFFIXES: +-.SUFFIXES: .c .o .lo ++.SUFFIXES: .c .y .o .lo .sin .sed ++ + .c.o: + $(COMPILE) $< +-.c.lo: +- $(LIBTOOL) --mode=compile $(COMPILE) $< + +-INCLUDES = -I.. -I. -I$(top_srcdir)/intl -I$(top_srcdir)/lib ++.y.c: ++ $(YACC) $(YFLAGS) --output $@ $< ++ rm -f $*.h + +-all: all-@USE_INCLUDED_LIBINTL@ ++bindtextdom.lo: $(srcdir)/bindtextdom.c ++ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/bindtextdom.c ++dcgettext.lo: $(srcdir)/dcgettext.c ++ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/dcgettext.c ++dgettext.lo: $(srcdir)/dgettext.c ++ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/dgettext.c ++gettext.lo: $(srcdir)/gettext.c ++ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/gettext.c ++finddomain.lo: $(srcdir)/finddomain.c ++ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/finddomain.c ++loadmsgcat.lo: $(srcdir)/loadmsgcat.c ++ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/loadmsgcat.c ++localealias.lo: $(srcdir)/localealias.c ++ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/localealias.c ++textdomain.lo: $(srcdir)/textdomain.c ++ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/textdomain.c ++l10nflist.lo: $(srcdir)/l10nflist.c ++ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/l10nflist.c ++explodename.lo: $(srcdir)/explodename.c ++ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/explodename.c ++dcigettext.lo: $(srcdir)/dcigettext.c ++ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/dcigettext.c ++dcngettext.lo: $(srcdir)/dcngettext.c ++ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/dcngettext.c ++dngettext.lo: $(srcdir)/dngettext.c ++ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/dngettext.c ++ngettext.lo: $(srcdir)/ngettext.c ++ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/ngettext.c ++plural.lo: $(srcdir)/plural.c ++ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/plural.c ++plural-exp.lo: $(srcdir)/plural-exp.c ++ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/plural-exp.c ++localcharset.lo: $(srcdir)/localcharset.c ++ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/localcharset.c ++relocatable.lo: $(srcdir)/relocatable.c ++ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/relocatable.c ++localename.lo: $(srcdir)/localename.c ++ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/localename.c ++log.lo: $(srcdir)/log.c ++ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/log.c ++printf.lo: $(srcdir)/printf.c ++ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/printf.c ++osdep.lo: $(srcdir)/osdep.c ++ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/osdep.c ++intl-compat.lo: $(srcdir)/intl-compat.c ++ $(LIBTOOL) --mode=compile $(COMPILE) $(srcdir)/intl-compat.c + +-all-yes: libintl.$la intlh.inst +-all-no: ++ref-add.sed: $(srcdir)/ref-add.sin ++ sed -e '/^#/d' -e 's/@''PACKAGE''@/@PACKAGE@/g' $(srcdir)/ref-add.sin > t-ref-add.sed ++ mv t-ref-add.sed ref-add.sed ++ref-del.sed: $(srcdir)/ref-del.sin ++ sed -e '/^#/d' -e 's/@''PACKAGE''@/@PACKAGE@/g' $(srcdir)/ref-del.sin > t-ref-del.sed ++ mv t-ref-del.sed ref-del.sed + +-libintl.a: $(OBJECTS) +- rm -f $@ +- $(AR) cru $@ $(OBJECTS) +- $(RANLIB) $@ ++INCLUDES = -I. -I$(srcdir) -I.. + +-libintl.la: $(OBJECTS) +- $(LIBTOOL) --mode=link $(CC) $(LDFLAGS) -o $@ $(OBJECTS) \ +- -version-info 1:0 -rpath $(libdir) ++libgnuintl.h: $(srcdir)/libgnuintl.h.in ++ sed -e 's,@''HAVE_POSIX_PRINTF''@,@HAVE_POSIX_PRINTF@,g' \ ++ -e 's,@''HAVE_ASPRINTF''@,@HAVE_ASPRINTF@,g' \ ++ -e 's,@''HAVE_SNPRINTF''@,@HAVE_SNPRINTF@,g' \ ++ -e 's,@''HAVE_WPRINTF''@,@HAVE_WPRINTF@,g' \ ++ < $(srcdir)/libgnuintl.h.in > libgnuintl.h + +-../po/cat-id-tbl.$lo: ../po/cat-id-tbl.c $(top_srcdir)/po/$(PACKAGE).pot +- cd ../po && $(MAKE) cat-id-tbl.$lo ++libintl.h: libgnuintl.h ++ cp libgnuintl.h libintl.h + +-check: all ++charset.alias: $(srcdir)/config.charset ++ $(SHELL) $(srcdir)/config.charset '@host@' > t-$@ ++ mv t-$@ $@ + +-# This installation goal is only used in GNU gettext. Packages which +-# only use the library should use install instead. ++check: all + + # We must not install the libintl.h/libintl.a files if we are on a +-# system which has the gettext() function in its C library or in a +-# separate library or use the catgets interface. A special case is +-# where configure found a previously installed GNU gettext library. ++# system which has the GNU gettext() function in its C library or in a ++# separate library. + # If you want to use the one which comes with this version of the + # package, you have to use `configure --with-included-gettext'. + install: install-exec install-data + install-exec: all +- if test "$(PACKAGE)" = "gettext" \ +- && test '@INTLOBJS@' = '$(GETTOBJS)'; then \ +- if test -r $(MKINSTALLDIRS); then \ +- $(MKINSTALLDIRS) $(libdir) $(includedir); \ +- else \ +- $(top_srcdir)/mkinstalldirs $(libdir) $(includedir); \ ++ if { test "$(PACKAGE)" = "gettext-runtime" || test "$(PACKAGE)" = "gettext-tools"; } \ ++ && test '@USE_INCLUDED_LIBINTL@' = yes; then \ ++ $(mkinstalldirs) $(DESTDIR)$(libdir) $(DESTDIR)$(includedir); \ ++ $(INSTALL_DATA) libintl.h $(DESTDIR)$(includedir)/libintl.h; \ ++ $(LIBTOOL) --mode=install \ ++ $(INSTALL_DATA) libintl.$la $(DESTDIR)$(libdir)/libintl.$la; \ ++ if test "@RELOCATABLE@" = yes; then \ ++ dependencies=`sed -n -e 's,^dependency_libs=\(.*\),\1,p' < $(DESTDIR)$(libdir)/libintl.la | sed -e "s,^',," -e "s,'\$$,,"`; \ ++ if test -n "$$dependencies"; then \ ++ rm -f $(DESTDIR)$(libdir)/libintl.la; \ ++ fi; \ + fi; \ +- $(INSTALL_DATA) intlh.inst $(includedir)/libintl.h; \ +- $(INSTALL_DATA) libintl.a $(libdir)/libintl.a; \ + else \ + : ; \ + fi +-install-data: all +- if test "$(PACKAGE)" = "gettext"; then \ +- if test -r $(MKINSTALLDIRS); then \ +- $(MKINSTALLDIRS) $(gettextsrcdir); \ ++ if test "$(PACKAGE)" = "gettext-tools" \ ++ && test '@USE_INCLUDED_LIBINTL@' = no; then \ ++ $(mkinstalldirs) $(DESTDIR)$(libdir); \ ++ $(LIBTOOL) --mode=install \ ++ $(INSTALL_DATA) libgnuintl.$la $(DESTDIR)$(libdir)/libgnuintl.$la; \ ++ rm -f $(DESTDIR)$(libdir)/preloadable_libintl.so; \ ++ $(INSTALL_DATA) $(DESTDIR)$(libdir)/libgnuintl.so $(DESTDIR)$(libdir)/preloadable_libintl.so; \ ++ $(LIBTOOL) --mode=uninstall \ ++ rm -f $(DESTDIR)$(libdir)/libgnuintl.$la; \ ++ else \ ++ : ; \ ++ fi ++ if test '@USE_INCLUDED_LIBINTL@' = yes; then \ ++ test @GLIBC21@ != no || $(mkinstalldirs) $(DESTDIR)$(libdir); \ ++ temp=$(DESTDIR)$(libdir)/t-charset.alias; \ ++ dest=$(DESTDIR)$(libdir)/charset.alias; \ ++ if test -f $(DESTDIR)$(libdir)/charset.alias; then \ ++ orig=$(DESTDIR)$(libdir)/charset.alias; \ ++ sed -f ref-add.sed $$orig > $$temp; \ ++ $(INSTALL_DATA) $$temp $$dest; \ ++ rm -f $$temp; \ + else \ +- $(top_srcdir)/mkinstalldirs $(gettextsrcdir); \ ++ if test @GLIBC21@ = no; then \ ++ orig=charset.alias; \ ++ sed -f ref-add.sed $$orig > $$temp; \ ++ $(INSTALL_DATA) $$temp $$dest; \ ++ rm -f $$temp; \ ++ fi; \ + fi; \ +- $(INSTALL_DATA) VERSION $(gettextsrcdir)/VERSION; \ +- dists="$(DISTFILES.common)"; \ ++ $(mkinstalldirs) $(DESTDIR)$(localedir); \ ++ test -f $(DESTDIR)$(localedir)/locale.alias \ ++ && orig=$(DESTDIR)$(localedir)/locale.alias \ ++ || orig=$(srcdir)/locale.alias; \ ++ temp=$(DESTDIR)$(localedir)/t-locale.alias; \ ++ dest=$(DESTDIR)$(localedir)/locale.alias; \ ++ sed -f ref-add.sed $$orig > $$temp; \ ++ $(INSTALL_DATA) $$temp $$dest; \ ++ rm -f $$temp; \ ++ else \ ++ : ; \ ++ fi ++install-data: all ++ if test "$(PACKAGE)" = "gettext-tools"; then \ ++ $(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \ ++ $(INSTALL_DATA) VERSION $(DESTDIR)$(gettextsrcdir)/VERSION; \ ++ $(INSTALL_DATA) ChangeLog.inst $(DESTDIR)$(gettextsrcdir)/ChangeLog; \ ++ dists="COPYING.LIB-2.0 COPYING.LIB-2.1 $(DISTFILES.common)"; \ + for file in $$dists; do \ +- $(INSTALL_DATA) $(srcdir)/$$file $(gettextsrcdir)/$$file; \ ++ $(INSTALL_DATA) $(srcdir)/$$file \ ++ $(DESTDIR)$(gettextsrcdir)/$$file; \ + done; \ ++ chmod a+x $(DESTDIR)$(gettextsrcdir)/config.charset; \ ++ dists="$(DISTFILES.generated)"; \ ++ for file in $$dists; do \ ++ if test -f $$file; then dir=.; else dir=$(srcdir); fi; \ ++ $(INSTALL_DATA) $$dir/$$file \ ++ $(DESTDIR)$(gettextsrcdir)/$$file; \ ++ done; \ ++ dists="$(DISTFILES.obsolete)"; \ ++ for file in $$dists; do \ ++ rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \ ++ done; \ ++ else \ ++ : ; \ ++ fi ++ ++install-strip: install ++ ++installdirs: ++ if { test "$(PACKAGE)" = "gettext-runtime" || test "$(PACKAGE)" = "gettext-tools"; } \ ++ && test '@USE_INCLUDED_LIBINTL@' = yes; then \ ++ $(mkinstalldirs) $(DESTDIR)$(libdir) $(DESTDIR)$(includedir); \ ++ else \ ++ : ; \ ++ fi ++ if test "$(PACKAGE)" = "gettext-tools" \ ++ && test '@USE_INCLUDED_LIBINTL@' = no; then \ ++ $(mkinstalldirs) $(DESTDIR)$(libdir); \ ++ else \ ++ : ; \ ++ fi ++ if test '@USE_INCLUDED_LIBINTL@' = yes; then \ ++ test @GLIBC21@ != no || $(mkinstalldirs) $(DESTDIR)$(libdir); \ ++ $(mkinstalldirs) $(DESTDIR)$(localedir); \ ++ else \ ++ : ; \ ++ fi ++ if test "$(PACKAGE)" = "gettext-tools"; then \ ++ $(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \ + else \ + : ; \ + fi +@@ -143,22 +367,76 @@ + installcheck: + + uninstall: +- dists="$(DISTFILES.common)"; \ +- for file in $$dists; do \ +- rm -f $(gettextsrcdir)/$$file; \ +- done ++ if { test "$(PACKAGE)" = "gettext-runtime" || test "$(PACKAGE)" = "gettext-tools"; } \ ++ && test '@USE_INCLUDED_LIBINTL@' = yes; then \ ++ rm -f $(DESTDIR)$(includedir)/libintl.h; \ ++ $(LIBTOOL) --mode=uninstall \ ++ rm -f $(DESTDIR)$(libdir)/libintl.$la; \ ++ else \ ++ : ; \ ++ fi ++ if test "$(PACKAGE)" = "gettext-tools" \ ++ && test '@USE_INCLUDED_LIBINTL@' = no; then \ ++ rm -f $(DESTDIR)$(libdir)/preloadable_libintl.so; \ ++ else \ ++ : ; \ ++ fi ++ if test '@USE_INCLUDED_LIBINTL@' = yes; then \ ++ if test -f $(DESTDIR)$(libdir)/charset.alias; then \ ++ temp=$(DESTDIR)$(libdir)/t-charset.alias; \ ++ dest=$(DESTDIR)$(libdir)/charset.alias; \ ++ sed -f ref-del.sed $$dest > $$temp; \ ++ if grep '^# Packages using this file: $$' $$temp > /dev/null; then \ ++ rm -f $$dest; \ ++ else \ ++ $(INSTALL_DATA) $$temp $$dest; \ ++ fi; \ ++ rm -f $$temp; \ ++ fi; \ ++ if test -f $(DESTDIR)$(localedir)/locale.alias; then \ ++ temp=$(DESTDIR)$(localedir)/t-locale.alias; \ ++ dest=$(DESTDIR)$(localedir)/locale.alias; \ ++ sed -f ref-del.sed $$dest > $$temp; \ ++ if grep '^# Packages using this file: $$' $$temp > /dev/null; then \ ++ rm -f $$dest; \ ++ else \ ++ $(INSTALL_DATA) $$temp $$dest; \ ++ fi; \ ++ rm -f $$temp; \ ++ fi; \ ++ else \ ++ : ; \ ++ fi ++ if test "$(PACKAGE)" = "gettext-tools"; then \ ++ for file in VERSION ChangeLog COPYING.LIB-2.0 COPYING.LIB-2.1 $(DISTFILES.common) $(DISTFILES.generated); do \ ++ rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \ ++ done; \ ++ else \ ++ : ; \ ++ fi + +-info dvi: ++info dvi ps pdf html: + +-$(OBJECTS): ../config.h libgettext.h +-bindtextdom.$lo finddomain.$lo loadmsgcat.$lo: gettextP.h gettext.h loadinfo.h +-dcgettext.$lo: gettextP.h gettext.h hash-string.h loadinfo.h ++$(OBJECTS): ../config.h libgnuintl.h ++bindtextdom.$lo dcgettext.$lo dcigettext.$lo dcngettext.$lo dgettext.$lo dngettext.$lo finddomain.$lo gettext.$lo intl-compat.$lo loadmsgcat.$lo localealias.$lo ngettext.$lo textdomain.$lo: $(srcdir)/gettextP.h $(srcdir)/gmo.h $(srcdir)/loadinfo.h ++dcigettext.$lo loadmsgcat.$lo: $(srcdir)/hash-string.h ++explodename.$lo l10nflist.$lo: $(srcdir)/loadinfo.h ++dcigettext.$lo loadmsgcat.$lo plural.$lo plural-exp.$lo: $(srcdir)/plural-exp.h ++dcigettext.$lo: $(srcdir)/eval-plural.h ++localcharset.$lo: $(srcdir)/localcharset.h ++localealias.$lo localcharset.$lo relocatable.$lo: $(srcdir)/relocatable.h ++printf.$lo: $(srcdir)/printf-args.h $(srcdir)/printf-args.c $(srcdir)/printf-parse.h $(srcdir)/wprintf-parse.h $(srcdir)/xsize.h $(srcdir)/printf-parse.c $(srcdir)/vasnprintf.h $(srcdir)/vasnwprintf.h $(srcdir)/vasnprintf.c + + tags: TAGS + + TAGS: $(HEADERS) $(SOURCES) + here=`pwd`; cd $(srcdir) && etags -o $$here/TAGS $(HEADERS) $(SOURCES) + ++ctags: CTAGS ++ ++CTAGS: $(HEADERS) $(SOURCES) ++ here=`pwd`; cd $(srcdir) && ctags -o $$here/CTAGS $(HEADERS) $(SOURCES) ++ + id: ID + + ID: $(HEADERS) $(SOURCES) +@@ -166,12 +444,19 @@ + + + mostlyclean: +- rm -f *.a *.o *.lo core core.* ++ rm -f *.a *.la *.o *.obj *.lo core core.* ++ rm -f libgnuintl.h libintl.h charset.alias ref-add.sed ref-del.sed ++ rm -f -r .libs _libs + + clean: mostlyclean + + distclean: clean +- rm -f Makefile ID TAGS po2msg.sed po2tbl.sed libintl.h ++ rm -f Makefile ID TAGS ++ if test "$(PACKAGE)" = "gettext-runtime" || test "$(PACKAGE)" = "gettext-tools"; then \ ++ rm -f ChangeLog.inst $(DISTFILES.normal); \ ++ else \ ++ : ; \ ++ fi + + maintainer-clean: distclean + @echo "This command is intended for maintainers to use;" +@@ -181,33 +466,27 @@ + # GNU gettext needs not contain the file `VERSION' but contains some + # other files which should not be distributed in other packages. + distdir = ../$(PACKAGE)-$(VERSION)/$(subdir) +-dist distdir: Makefile $(DISTFILES) +- if test "$(PACKAGE)" = gettext; then \ +- additional="$(DISTFILES.gettext)"; \ ++dist distdir: Makefile ++ if test "$(PACKAGE)" = "gettext-tools"; then \ ++ : ; \ + else \ +- additional="$(DISTFILES.normal)"; \ +- fi; \ +- for file in $(DISTFILES.common) $$additional; do \ +- ln $(srcdir)/$$file $(distdir) 2> /dev/null \ +- || cp -p $(srcdir)/$$file $(distdir); \ +- done +- +-dist-libc: +- tar zcvf intl-glibc.tar.gz $(COMSRCS) $(COMHDRS) libintl.h.glibc +- +-Makefile: Makefile.in ../config.status +- cd .. \ +- && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status ++ if test "$(PACKAGE)" = "gettext-runtime"; then \ ++ additional="$(DISTFILES.gettext)"; \ ++ else \ ++ additional="$(DISTFILES.normal)"; \ ++ fi; \ ++ $(MAKE) $(DISTFILES.common) $(DISTFILES.generated) $$additional; \ ++ for file in ChangeLog $(DISTFILES.common) $(DISTFILES.generated) $$additional; do \ ++ if test -f $$file; then dir=.; else dir=$(srcdir); fi; \ ++ cp -p $$dir/$$file $(distdir); \ ++ done; \ ++ fi + +-# The dependency for intlh.inst is different in gettext and all other +-# packages. Because we cannot you GNU make features we have to solve +-# the problem while rewriting Makefile.in. +-@GT_YES@intlh.inst: intlh.inst.in ../config.status +-@GT_YES@ cd .. \ +-@GT_YES@ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= \ +-@GT_YES@ $(SHELL) ./config.status +-@GT_NO@.PHONY: intlh.inst +-@GT_NO@intlh.inst: ++Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status ++ cd $(top_builddir) && $(SHELL) ./config.status ++# This would be more efficient, but doesn't work any more with autoconf-2.57, ++# when AC_CONFIG_FILES([intl/Makefile:somedir/Makefile.in]) is used. ++# cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + # Tell versions [3.59,3.63) of GNU make not to export all variables. + # Otherwise a system limit (for SysV at least) may be exceeded. +--- lrzsz-0.12.20.safe/intl/ngettext.c 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/ngettext.c 2004-09-12 14:40:34.533721032 -0400 +@@ -0,0 +1,65 @@ ++/* Implementation of ngettext(3) function. ++ Copyright (C) 1995, 1997, 2000-2003 Free Software Foundation, Inc. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++#ifdef HAVE_CONFIG_H ++# include ++#endif ++ ++#ifdef _LIBC ++# define __need_NULL ++# include ++#else ++# include /* Just for NULL. */ ++#endif ++ ++#include "gettextP.h" ++#ifdef _LIBC ++# include ++#else ++# include "libgnuintl.h" ++#endif ++ ++#include ++ ++/* @@ end of prolog @@ */ ++ ++/* Names for the libintl functions are a problem. They must not clash ++ with existing names and they should follow ANSI C. But this source ++ code is also used in GNU C Library where the names have a __ ++ prefix. So we have to make a difference here. */ ++#ifdef _LIBC ++# define NGETTEXT __ngettext ++# define DCNGETTEXT __dcngettext ++#else ++# define NGETTEXT libintl_ngettext ++# define DCNGETTEXT libintl_dcngettext ++#endif ++ ++/* Look up MSGID in the current default message catalog for the current ++ LC_MESSAGES locale. If not found, returns MSGID itself (the default ++ text). */ ++char * ++NGETTEXT (const char *msgid1, const char *msgid2, unsigned long int n) ++{ ++ return DCNGETTEXT (NULL, msgid1, msgid2, n, LC_MESSAGES); ++} ++ ++#ifdef _LIBC ++/* Alias for function name in GNU C Library. */ ++weak_alias (__ngettext, ngettext); ++#endif +--- lrzsz-0.12.20.safe/intl/os2compat.c 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/os2compat.c 2004-09-12 14:40:34.539720120 -0400 +@@ -0,0 +1,98 @@ ++/* OS/2 compatibility functions. ++ Copyright (C) 2001-2002 Free Software Foundation, Inc. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++#define OS2_AWARE ++#ifdef HAVE_CONFIG_H ++#include ++#endif ++ ++#include ++#include ++#include ++ ++/* A version of getenv() that works from DLLs */ ++extern unsigned long DosScanEnv (const unsigned char *pszName, unsigned char **ppszValue); ++ ++char * ++_nl_getenv (const char *name) ++{ ++ unsigned char *value; ++ if (DosScanEnv (name, &value)) ++ return NULL; ++ else ++ return value; ++} ++ ++/* A fixed size buffer. */ ++char libintl_nl_default_dirname[MAXPATHLEN+1]; ++ ++char *_nlos2_libdir = NULL; ++char *_nlos2_localealiaspath = NULL; ++char *_nlos2_localedir = NULL; ++ ++static __attribute__((constructor)) void ++nlos2_initialize () ++{ ++ char *root = getenv ("UNIXROOT"); ++ char *gnulocaledir = getenv ("GNULOCALEDIR"); ++ ++ _nlos2_libdir = gnulocaledir; ++ if (!_nlos2_libdir) ++ { ++ if (root) ++ { ++ size_t sl = strlen (root); ++ _nlos2_libdir = (char *) malloc (sl + strlen (LIBDIR) + 1); ++ memcpy (_nlos2_libdir, root, sl); ++ memcpy (_nlos2_libdir + sl, LIBDIR, strlen (LIBDIR) + 1); ++ } ++ else ++ _nlos2_libdir = LIBDIR; ++ } ++ ++ _nlos2_localealiaspath = gnulocaledir; ++ if (!_nlos2_localealiaspath) ++ { ++ if (root) ++ { ++ size_t sl = strlen (root); ++ _nlos2_localealiaspath = (char *) malloc (sl + strlen (LOCALE_ALIAS_PATH) + 1); ++ memcpy (_nlos2_localealiaspath, root, sl); ++ memcpy (_nlos2_localealiaspath + sl, LOCALE_ALIAS_PATH, strlen (LOCALE_ALIAS_PATH) + 1); ++ } ++ else ++ _nlos2_localealiaspath = LOCALE_ALIAS_PATH; ++ } ++ ++ _nlos2_localedir = gnulocaledir; ++ if (!_nlos2_localedir) ++ { ++ if (root) ++ { ++ size_t sl = strlen (root); ++ _nlos2_localedir = (char *) malloc (sl + strlen (LOCALEDIR) + 1); ++ memcpy (_nlos2_localedir, root, sl); ++ memcpy (_nlos2_localedir + sl, LOCALEDIR, strlen (LOCALEDIR) + 1); ++ } ++ else ++ _nlos2_localedir = LOCALEDIR; ++ } ++ ++ if (strlen (_nlos2_localedir) <= MAXPATHLEN) ++ strcpy (libintl_nl_default_dirname, _nlos2_localedir); ++} +--- lrzsz-0.12.20.safe/intl/os2compat.h 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/os2compat.h 2004-09-12 14:40:34.544719360 -0400 +@@ -0,0 +1,46 @@ ++/* OS/2 compatibility defines. ++ This file is intended to be included from config.h ++ Copyright (C) 2001-2002 Free Software Foundation, Inc. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++/* When included from os2compat.h we need all the original definitions */ ++#ifndef OS2_AWARE ++ ++#undef LIBDIR ++#define LIBDIR _nlos2_libdir ++extern char *_nlos2_libdir; ++ ++#undef LOCALEDIR ++#define LOCALEDIR _nlos2_localedir ++extern char *_nlos2_localedir; ++ ++#undef LOCALE_ALIAS_PATH ++#define LOCALE_ALIAS_PATH _nlos2_localealiaspath ++extern char *_nlos2_localealiaspath; ++ ++#endif ++ ++#undef HAVE_STRCASECMP ++#define HAVE_STRCASECMP 1 ++#define strcasecmp stricmp ++#define strncasecmp strnicmp ++ ++/* We have our own getenv() which works even if library is compiled as DLL */ ++#define getenv _nl_getenv ++ ++/* Older versions of gettext used -1 as the value of LC_MESSAGES */ ++#define LC_MESSAGES_COMPAT (-1) +--- lrzsz-0.12.20.safe/intl/osdep.c 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/osdep.c 2004-09-12 14:40:34.550718448 -0400 +@@ -0,0 +1,24 @@ ++/* OS dependent parts of libintl. ++ Copyright (C) 2001-2002 Free Software Foundation, Inc. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++#if defined __EMX__ ++# include "os2compat.c" ++#else ++/* Avoid AIX compiler warning. */ ++typedef int dummy; ++#endif +--- lrzsz-0.12.20.safe/intl/plural.c 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/plural.c 2004-09-12 14:40:36.571411256 -0400 +@@ -0,0 +1,1490 @@ ++/* A Bison parser, made from plural.y ++ by GNU bison 1.35. */ ++ ++#define YYBISON 1 /* Identify Bison output. */ ++ ++#define yyparse __gettextparse ++#define yylex __gettextlex ++#define yyerror __gettexterror ++#define yylval __gettextlval ++#define yychar __gettextchar ++#define yydebug __gettextdebug ++#define yynerrs __gettextnerrs ++# define EQUOP2 257 ++# define CMPOP2 258 ++# define ADDOP2 259 ++# define MULOP2 260 ++# define NUMBER 261 ++ ++#line 1 "plural.y" ++ ++/* Expression parsing for plural form selection. ++ Copyright (C) 2000-2001, 2003 Free Software Foundation, Inc. ++ Written by Ulrich Drepper , 2000. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++/* The bison generated parser uses alloca. AIX 3 forces us to put this ++ declaration at the beginning of the file. The declaration in bison's ++ skeleton file comes too late. This must come before ++ because may include arbitrary system headers. */ ++#if defined _AIX && !defined __GNUC__ ++ #pragma alloca ++#endif ++ ++#ifdef HAVE_CONFIG_H ++# include ++#endif ++ ++#include ++#include ++#include "plural-exp.h" ++ ++/* The main function generated by the parser is called __gettextparse, ++ but we want it to be called PLURAL_PARSE. */ ++#ifndef _LIBC ++# define __gettextparse PLURAL_PARSE ++#endif ++ ++#define YYLEX_PARAM &((struct parse_args *) arg)->cp ++#define YYPARSE_PARAM arg ++ ++#line 49 "plural.y" ++#ifndef YYSTYPE ++typedef union { ++ unsigned long int num; ++ enum operator op; ++ struct expression *exp; ++} yystype; ++# define YYSTYPE yystype ++# define YYSTYPE_IS_TRIVIAL 1 ++#endif ++#line 55 "plural.y" ++ ++/* Prototypes for local functions. */ ++static int yylex (YYSTYPE *lval, const char **pexp); ++static void yyerror (const char *str); ++ ++/* Allocation of expressions. */ ++ ++static struct expression * ++new_exp (int nargs, enum operator op, struct expression * const *args) ++{ ++ int i; ++ struct expression *newp; ++ ++ /* If any of the argument could not be malloc'ed, just return NULL. */ ++ for (i = nargs - 1; i >= 0; i--) ++ if (args[i] == NULL) ++ goto fail; ++ ++ /* Allocate a new expression. */ ++ newp = (struct expression *) malloc (sizeof (*newp)); ++ if (newp != NULL) ++ { ++ newp->nargs = nargs; ++ newp->operation = op; ++ for (i = nargs - 1; i >= 0; i--) ++ newp->val.args[i] = args[i]; ++ return newp; ++ } ++ ++ fail: ++ for (i = nargs - 1; i >= 0; i--) ++ FREE_EXPRESSION (args[i]); ++ ++ return NULL; ++} ++ ++static inline struct expression * ++new_exp_0 (enum operator op) ++{ ++ return new_exp (0, op, NULL); ++} ++ ++static inline struct expression * ++new_exp_1 (enum operator op, struct expression *right) ++{ ++ struct expression *args[1]; ++ ++ args[0] = right; ++ return new_exp (1, op, args); ++} ++ ++static struct expression * ++new_exp_2 (enum operator op, struct expression *left, struct expression *right) ++{ ++ struct expression *args[2]; ++ ++ args[0] = left; ++ args[1] = right; ++ return new_exp (2, op, args); ++} ++ ++static inline struct expression * ++new_exp_3 (enum operator op, struct expression *bexp, ++ struct expression *tbranch, struct expression *fbranch) ++{ ++ struct expression *args[3]; ++ ++ args[0] = bexp; ++ args[1] = tbranch; ++ args[2] = fbranch; ++ return new_exp (3, op, args); ++} ++ ++#ifndef YYDEBUG ++# define YYDEBUG 0 ++#endif ++ ++ ++ ++#define YYFINAL 27 ++#define YYFLAG -32768 ++#define YYNTBASE 16 ++ ++/* YYTRANSLATE(YYLEX) -- Bison token number corresponding to YYLEX. */ ++#define YYTRANSLATE(x) ((unsigned)(x) <= 261 ? yytranslate[x] : 18) ++ ++/* YYTRANSLATE[YYLEX] -- Bison token number corresponding to YYLEX. */ ++static const char yytranslate[] = ++{ ++ 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, ++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, ++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, ++ 2, 2, 2, 10, 2, 2, 2, 2, 5, 2, ++ 14, 15, 2, 2, 2, 2, 2, 2, 2, 2, ++ 2, 2, 2, 2, 2, 2, 2, 2, 12, 2, ++ 2, 2, 2, 3, 2, 2, 2, 2, 2, 2, ++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, ++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, ++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, ++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, ++ 13, 2, 2, 2, 2, 2, 2, 2, 2, 2, ++ 2, 2, 2, 2, 4, 2, 2, 2, 2, 2, ++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, ++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, ++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, ++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, ++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, ++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, ++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, ++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, ++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, ++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, ++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, ++ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, ++ 2, 2, 2, 2, 2, 2, 1, 6, 7, 8, ++ 9, 11 ++}; ++ ++#if YYDEBUG ++static const short yyprhs[] = ++{ ++ 0, 0, 2, 8, 12, 16, 20, 24, 28, 32, ++ 35, 37, 39 ++}; ++static const short yyrhs[] = ++{ ++ 17, 0, 17, 3, 17, 12, 17, 0, 17, 4, ++ 17, 0, 17, 5, 17, 0, 17, 6, 17, 0, ++ 17, 7, 17, 0, 17, 8, 17, 0, 17, 9, ++ 17, 0, 10, 17, 0, 13, 0, 11, 0, 14, ++ 17, 15, 0 ++}; ++ ++#endif ++ ++#if YYDEBUG ++/* YYRLINE[YYN] -- source line where rule number YYN was defined. */ ++static const short yyrline[] = ++{ ++ 0, 150, 158, 162, 166, 170, 174, 178, 182, 186, ++ 190, 194, 199 ++}; ++#endif ++ ++ ++#if (YYDEBUG) || defined YYERROR_VERBOSE ++ ++/* YYTNAME[TOKEN_NUM] -- String name of the token TOKEN_NUM. */ ++static const char *const yytname[] = ++{ ++ "$", "error", "$undefined.", "'?'", "'|'", "'&'", "EQUOP2", "CMPOP2", ++ "ADDOP2", "MULOP2", "'!'", "NUMBER", "':'", "'n'", "'('", "')'", ++ "start", "exp", 0 ++}; ++#endif ++ ++/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ ++static const short yyr1[] = ++{ ++ 0, 16, 17, 17, 17, 17, 17, 17, 17, 17, ++ 17, 17, 17 ++}; ++ ++/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ ++static const short yyr2[] = ++{ ++ 0, 1, 5, 3, 3, 3, 3, 3, 3, 2, ++ 1, 1, 3 ++}; ++ ++/* YYDEFACT[S] -- default rule to reduce with in state S when YYTABLE ++ doesn't specify something else to do. Zero means the default is an ++ error. */ ++static const short yydefact[] = ++{ ++ 0, 0, 11, 10, 0, 1, 9, 0, 0, 0, ++ 0, 0, 0, 0, 0, 12, 0, 3, 4, 5, ++ 6, 7, 8, 0, 2, 0, 0, 0 ++}; ++ ++static const short yydefgoto[] = ++{ ++ 25, 5 ++}; ++ ++static const short yypact[] = ++{ ++ -9, -9,-32768,-32768, -9, 34,-32768, 11, -9, -9, ++ -9, -9, -9, -9, -9,-32768, 24, 39, 43, 16, ++ 26, -3,-32768, -9, 34, 21, 53,-32768 ++}; ++ ++static const short yypgoto[] = ++{ ++ -32768, -1 ++}; ++ ++ ++#define YYLAST 53 ++ ++ ++static const short yytable[] = ++{ ++ 6, 1, 2, 7, 3, 4, 14, 16, 17, 18, ++ 19, 20, 21, 22, 8, 9, 10, 11, 12, 13, ++ 14, 26, 24, 12, 13, 14, 15, 8, 9, 10, ++ 11, 12, 13, 14, 13, 14, 23, 8, 9, 10, ++ 11, 12, 13, 14, 10, 11, 12, 13, 14, 11, ++ 12, 13, 14, 27 ++}; ++ ++static const short yycheck[] = ++{ ++ 1, 10, 11, 4, 13, 14, 9, 8, 9, 10, ++ 11, 12, 13, 14, 3, 4, 5, 6, 7, 8, ++ 9, 0, 23, 7, 8, 9, 15, 3, 4, 5, ++ 6, 7, 8, 9, 8, 9, 12, 3, 4, 5, ++ 6, 7, 8, 9, 5, 6, 7, 8, 9, 6, ++ 7, 8, 9, 0 ++}; ++#define YYPURE 1 ++ ++/* -*-C-*- Note some compilers choke on comments on `#line' lines. */ ++#line 3 "/usr/local/share/bison/bison.simple" ++ ++/* Skeleton output parser for bison, ++ ++ Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002 Free Software ++ Foundation, Inc. ++ ++ This program is free software; you can redistribute it and/or modify ++ it under the terms of the GNU General Public License as published by ++ the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ GNU General Public License for more details. ++ ++ You should have received a copy of the GNU General Public License ++ along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, ++ Boston, MA 02111-1307, USA. */ ++ ++/* As a special exception, when this file is copied by Bison into a ++ Bison output file, you may use that output file without restriction. ++ This special exception was added by the Free Software Foundation ++ in version 1.24 of Bison. */ ++ ++/* This is the parser code that is written into each bison parser when ++ the %semantic_parser declaration is not specified in the grammar. ++ It was written by Richard Stallman by simplifying the hairy parser ++ used when %semantic_parser is specified. */ ++ ++/* All symbols defined below should begin with yy or YY, to avoid ++ infringing on user name space. This should be done even for local ++ variables, as they might otherwise be expanded by user macros. ++ There are some unavoidable exceptions within include files to ++ define necessary library symbols; they are noted "INFRINGES ON ++ USER NAME SPACE" below. */ ++ ++#if ! defined (yyoverflow) || defined (YYERROR_VERBOSE) ++ ++/* The parser invokes alloca or malloc; define the necessary symbols. */ ++ ++# if YYSTACK_USE_ALLOCA ++# define YYSTACK_ALLOC alloca ++# else ++# ifndef YYSTACK_USE_ALLOCA ++# if defined (alloca) || defined (_ALLOCA_H) ++# define YYSTACK_ALLOC alloca ++# else ++# ifdef __GNUC__ ++# define YYSTACK_ALLOC __builtin_alloca ++# endif ++# endif ++# endif ++# endif ++ ++# ifdef YYSTACK_ALLOC ++ /* Pacify GCC's `empty if-body' warning. */ ++# define YYSTACK_FREE(Ptr) do { /* empty */; } while (0) ++# else ++# if defined (__STDC__) || defined (__cplusplus) ++# include /* INFRINGES ON USER NAME SPACE */ ++# define YYSIZE_T size_t ++# endif ++# define YYSTACK_ALLOC malloc ++# define YYSTACK_FREE free ++# endif ++#endif /* ! defined (yyoverflow) || defined (YYERROR_VERBOSE) */ ++ ++ ++#if (! defined (yyoverflow) \ ++ && (! defined (__cplusplus) \ ++ || (YYLTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL))) ++ ++/* A type that is properly aligned for any stack member. */ ++union yyalloc ++{ ++ short yyss; ++ YYSTYPE yyvs; ++# if YYLSP_NEEDED ++ YYLTYPE yyls; ++# endif ++}; ++ ++/* The size of the maximum gap between one aligned stack and the next. */ ++# define YYSTACK_GAP_MAX (sizeof (union yyalloc) - 1) ++ ++/* The size of an array large to enough to hold all stacks, each with ++ N elements. */ ++# if YYLSP_NEEDED ++# define YYSTACK_BYTES(N) \ ++ ((N) * (sizeof (short) + sizeof (YYSTYPE) + sizeof (YYLTYPE)) \ ++ + 2 * YYSTACK_GAP_MAX) ++# else ++# define YYSTACK_BYTES(N) \ ++ ((N) * (sizeof (short) + sizeof (YYSTYPE)) \ ++ + YYSTACK_GAP_MAX) ++# endif ++ ++/* Copy COUNT objects from FROM to TO. The source and destination do ++ not overlap. */ ++# ifndef YYCOPY ++# if 1 < __GNUC__ ++# define YYCOPY(To, From, Count) \ ++ __builtin_memcpy (To, From, (Count) * sizeof (*(From))) ++# else ++# define YYCOPY(To, From, Count) \ ++ do \ ++ { \ ++ register YYSIZE_T yyi; \ ++ for (yyi = 0; yyi < (Count); yyi++) \ ++ (To)[yyi] = (From)[yyi]; \ ++ } \ ++ while (0) ++# endif ++# endif ++ ++/* Relocate STACK from its old location to the new one. The ++ local variables YYSIZE and YYSTACKSIZE give the old and new number of ++ elements in the stack, and YYPTR gives the new location of the ++ stack. Advance YYPTR to a properly aligned location for the next ++ stack. */ ++# define YYSTACK_RELOCATE(Stack) \ ++ do \ ++ { \ ++ YYSIZE_T yynewbytes; \ ++ YYCOPY (&yyptr->Stack, Stack, yysize); \ ++ Stack = &yyptr->Stack; \ ++ yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAX; \ ++ yyptr += yynewbytes / sizeof (*yyptr); \ ++ } \ ++ while (0) ++ ++#endif ++ ++ ++#if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__) ++# define YYSIZE_T __SIZE_TYPE__ ++#endif ++#if ! defined (YYSIZE_T) && defined (size_t) ++# define YYSIZE_T size_t ++#endif ++#if ! defined (YYSIZE_T) ++# if defined (__STDC__) || defined (__cplusplus) ++# include /* INFRINGES ON USER NAME SPACE */ ++# define YYSIZE_T size_t ++# endif ++#endif ++#if ! defined (YYSIZE_T) ++# define YYSIZE_T unsigned int ++#endif ++ ++#define yyerrok (yyerrstatus = 0) ++#define yyclearin (yychar = YYEMPTY) ++#define YYEMPTY -2 ++#define YYEOF 0 ++#define YYACCEPT goto yyacceptlab ++#define YYABORT goto yyabortlab ++#define YYERROR goto yyerrlab1 ++/* Like YYERROR except do call yyerror. This remains here temporarily ++ to ease the transition to the new meaning of YYERROR, for GCC. ++ Once GCC version 2 has supplanted version 1, this can go. */ ++#define YYFAIL goto yyerrlab ++#define YYRECOVERING() (!!yyerrstatus) ++#define YYBACKUP(Token, Value) \ ++do \ ++ if (yychar == YYEMPTY && yylen == 1) \ ++ { \ ++ yychar = (Token); \ ++ yylval = (Value); \ ++ yychar1 = YYTRANSLATE (yychar); \ ++ YYPOPSTACK; \ ++ goto yybackup; \ ++ } \ ++ else \ ++ { \ ++ yyerror ("syntax error: cannot back up"); \ ++ YYERROR; \ ++ } \ ++while (0) ++ ++#define YYTERROR 1 ++#define YYERRCODE 256 ++ ++ ++/* YYLLOC_DEFAULT -- Compute the default location (before the actions ++ are run). ++ ++ When YYLLOC_DEFAULT is run, CURRENT is set the location of the ++ first token. By default, to implement support for ranges, extend ++ its range to the last symbol. */ ++ ++#ifndef YYLLOC_DEFAULT ++# define YYLLOC_DEFAULT(Current, Rhs, N) \ ++ Current.last_line = Rhs[N].last_line; \ ++ Current.last_column = Rhs[N].last_column; ++#endif ++ ++ ++/* YYLEX -- calling `yylex' with the right arguments. */ ++ ++#if YYPURE ++# if YYLSP_NEEDED ++# ifdef YYLEX_PARAM ++# define YYLEX yylex (&yylval, &yylloc, YYLEX_PARAM) ++# else ++# define YYLEX yylex (&yylval, &yylloc) ++# endif ++# else /* !YYLSP_NEEDED */ ++# ifdef YYLEX_PARAM ++# define YYLEX yylex (&yylval, YYLEX_PARAM) ++# else ++# define YYLEX yylex (&yylval) ++# endif ++# endif /* !YYLSP_NEEDED */ ++#else /* !YYPURE */ ++# define YYLEX yylex () ++#endif /* !YYPURE */ ++ ++ ++/* Enable debugging if requested. */ ++#if YYDEBUG ++ ++# ifndef YYFPRINTF ++# include /* INFRINGES ON USER NAME SPACE */ ++# define YYFPRINTF fprintf ++# endif ++ ++# define YYDPRINTF(Args) \ ++do { \ ++ if (yydebug) \ ++ YYFPRINTF Args; \ ++} while (0) ++/* Nonzero means print parse trace. It is left uninitialized so that ++ multiple parsers can coexist. */ ++int yydebug; ++#else /* !YYDEBUG */ ++# define YYDPRINTF(Args) ++#endif /* !YYDEBUG */ ++ ++/* YYINITDEPTH -- initial size of the parser's stacks. */ ++#ifndef YYINITDEPTH ++# define YYINITDEPTH 200 ++#endif ++ ++/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only ++ if the built-in stack extension method is used). ++ ++ Do not make this value too large; the results are undefined if ++ SIZE_MAX < YYSTACK_BYTES (YYMAXDEPTH) ++ evaluated with infinite-precision integer arithmetic. */ ++ ++#if YYMAXDEPTH == 0 ++# undef YYMAXDEPTH ++#endif ++ ++#ifndef YYMAXDEPTH ++# define YYMAXDEPTH 10000 ++#endif ++ ++#ifdef YYERROR_VERBOSE ++ ++# ifndef yystrlen ++# if defined (__GLIBC__) && defined (_STRING_H) ++# define yystrlen strlen ++# else ++/* Return the length of YYSTR. */ ++static YYSIZE_T ++# if defined (__STDC__) || defined (__cplusplus) ++yystrlen (const char *yystr) ++# else ++yystrlen (yystr) ++ const char *yystr; ++# endif ++{ ++ register const char *yys = yystr; ++ ++ while (*yys++ != '\0') ++ continue; ++ ++ return yys - yystr - 1; ++} ++# endif ++# endif ++ ++# ifndef yystpcpy ++# if defined (__GLIBC__) && defined (_STRING_H) && defined (_GNU_SOURCE) ++# define yystpcpy stpcpy ++# else ++/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in ++ YYDEST. */ ++static char * ++# if defined (__STDC__) || defined (__cplusplus) ++yystpcpy (char *yydest, const char *yysrc) ++# else ++yystpcpy (yydest, yysrc) ++ char *yydest; ++ const char *yysrc; ++# endif ++{ ++ register char *yyd = yydest; ++ register const char *yys = yysrc; ++ ++ while ((*yyd++ = *yys++) != '\0') ++ continue; ++ ++ return yyd - 1; ++} ++# endif ++# endif ++#endif ++ ++#line 315 "/usr/local/share/bison/bison.simple" ++ ++ ++/* The user can define YYPARSE_PARAM as the name of an argument to be passed ++ into yyparse. The argument should have type void *. ++ It should actually point to an object. ++ Grammar actions can access the variable by casting it ++ to the proper pointer type. */ ++ ++#ifdef YYPARSE_PARAM ++# if defined (__STDC__) || defined (__cplusplus) ++# define YYPARSE_PARAM_ARG void *YYPARSE_PARAM ++# define YYPARSE_PARAM_DECL ++# else ++# define YYPARSE_PARAM_ARG YYPARSE_PARAM ++# define YYPARSE_PARAM_DECL void *YYPARSE_PARAM; ++# endif ++#else /* !YYPARSE_PARAM */ ++# define YYPARSE_PARAM_ARG ++# define YYPARSE_PARAM_DECL ++#endif /* !YYPARSE_PARAM */ ++ ++/* Prevent warning if -Wstrict-prototypes. */ ++#ifdef __GNUC__ ++# ifdef YYPARSE_PARAM ++int yyparse (void *); ++# else ++int yyparse (void); ++# endif ++#endif ++ ++/* YY_DECL_VARIABLES -- depending whether we use a pure parser, ++ variables are global, or local to YYPARSE. */ ++ ++#define YY_DECL_NON_LSP_VARIABLES \ ++/* The lookahead symbol. */ \ ++int yychar; \ ++ \ ++/* The semantic value of the lookahead symbol. */ \ ++YYSTYPE yylval; \ ++ \ ++/* Number of parse errors so far. */ \ ++int yynerrs; ++ ++#if YYLSP_NEEDED ++# define YY_DECL_VARIABLES \ ++YY_DECL_NON_LSP_VARIABLES \ ++ \ ++/* Location data for the lookahead symbol. */ \ ++YYLTYPE yylloc; ++#else ++# define YY_DECL_VARIABLES \ ++YY_DECL_NON_LSP_VARIABLES ++#endif ++ ++ ++/* If nonreentrant, generate the variables here. */ ++ ++#if !YYPURE ++YY_DECL_VARIABLES ++#endif /* !YYPURE */ ++ ++int ++yyparse (YYPARSE_PARAM_ARG) ++ YYPARSE_PARAM_DECL ++{ ++ /* If reentrant, generate the variables here. */ ++#if YYPURE ++ YY_DECL_VARIABLES ++#endif /* !YYPURE */ ++ ++ register int yystate; ++ register int yyn; ++ int yyresult; ++ /* Number of tokens to shift before error messages enabled. */ ++ int yyerrstatus; ++ /* Lookahead token as an internal (translated) token number. */ ++ int yychar1 = 0; ++ ++ /* Three stacks and their tools: ++ `yyss': related to states, ++ `yyvs': related to semantic values, ++ `yyls': related to locations. ++ ++ Refer to the stacks thru separate pointers, to allow yyoverflow ++ to reallocate them elsewhere. */ ++ ++ /* The state stack. */ ++ short yyssa[YYINITDEPTH]; ++ short *yyss = yyssa; ++ register short *yyssp; ++ ++ /* The semantic value stack. */ ++ YYSTYPE yyvsa[YYINITDEPTH]; ++ YYSTYPE *yyvs = yyvsa; ++ register YYSTYPE *yyvsp; ++ ++#if YYLSP_NEEDED ++ /* The location stack. */ ++ YYLTYPE yylsa[YYINITDEPTH]; ++ YYLTYPE *yyls = yylsa; ++ YYLTYPE *yylsp; ++#endif ++ ++#if YYLSP_NEEDED ++# define YYPOPSTACK (yyvsp--, yyssp--, yylsp--) ++#else ++# define YYPOPSTACK (yyvsp--, yyssp--) ++#endif ++ ++ YYSIZE_T yystacksize = YYINITDEPTH; ++ ++ ++ /* The variables used to return semantic value and location from the ++ action routines. */ ++ YYSTYPE yyval; ++#if YYLSP_NEEDED ++ YYLTYPE yyloc; ++#endif ++ ++ /* When reducing, the number of symbols on the RHS of the reduced ++ rule. */ ++ int yylen; ++ ++ YYDPRINTF ((stderr, "Starting parse\n")); ++ ++ yystate = 0; ++ yyerrstatus = 0; ++ yynerrs = 0; ++ yychar = YYEMPTY; /* Cause a token to be read. */ ++ ++ /* Initialize stack pointers. ++ Waste one element of value and location stack ++ so that they stay on the same level as the state stack. ++ The wasted elements are never initialized. */ ++ ++ yyssp = yyss; ++ yyvsp = yyvs; ++#if YYLSP_NEEDED ++ yylsp = yyls; ++#endif ++ goto yysetstate; ++ ++/*------------------------------------------------------------. ++| yynewstate -- Push a new state, which is found in yystate. | ++`------------------------------------------------------------*/ ++ yynewstate: ++ /* In all cases, when you get here, the value and location stacks ++ have just been pushed. so pushing a state here evens the stacks. ++ */ ++ yyssp++; ++ ++ yysetstate: ++ *yyssp = yystate; ++ ++ if (yyssp >= yyss + yystacksize - 1) ++ { ++ /* Get the current used size of the three stacks, in elements. */ ++ YYSIZE_T yysize = yyssp - yyss + 1; ++ ++#ifdef yyoverflow ++ { ++ /* Give user a chance to reallocate the stack. Use copies of ++ these so that the &'s don't force the real ones into ++ memory. */ ++ YYSTYPE *yyvs1 = yyvs; ++ short *yyss1 = yyss; ++ ++ /* Each stack pointer address is followed by the size of the ++ data in use in that stack, in bytes. */ ++# if YYLSP_NEEDED ++ YYLTYPE *yyls1 = yyls; ++ /* This used to be a conditional around just the two extra args, ++ but that might be undefined if yyoverflow is a macro. */ ++ yyoverflow ("parser stack overflow", ++ &yyss1, yysize * sizeof (*yyssp), ++ &yyvs1, yysize * sizeof (*yyvsp), ++ &yyls1, yysize * sizeof (*yylsp), ++ &yystacksize); ++ yyls = yyls1; ++# else ++ yyoverflow ("parser stack overflow", ++ &yyss1, yysize * sizeof (*yyssp), ++ &yyvs1, yysize * sizeof (*yyvsp), ++ &yystacksize); ++# endif ++ yyss = yyss1; ++ yyvs = yyvs1; ++ } ++#else /* no yyoverflow */ ++# ifndef YYSTACK_RELOCATE ++ goto yyoverflowlab; ++# else ++ /* Extend the stack our own way. */ ++ if (yystacksize >= YYMAXDEPTH) ++ goto yyoverflowlab; ++ yystacksize *= 2; ++ if (yystacksize > YYMAXDEPTH) ++ yystacksize = YYMAXDEPTH; ++ ++ { ++ short *yyss1 = yyss; ++ union yyalloc *yyptr = ++ (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize)); ++ if (! yyptr) ++ goto yyoverflowlab; ++ YYSTACK_RELOCATE (yyss); ++ YYSTACK_RELOCATE (yyvs); ++# if YYLSP_NEEDED ++ YYSTACK_RELOCATE (yyls); ++# endif ++# undef YYSTACK_RELOCATE ++ if (yyss1 != yyssa) ++ YYSTACK_FREE (yyss1); ++ } ++# endif ++#endif /* no yyoverflow */ ++ ++ yyssp = yyss + yysize - 1; ++ yyvsp = yyvs + yysize - 1; ++#if YYLSP_NEEDED ++ yylsp = yyls + yysize - 1; ++#endif ++ ++ YYDPRINTF ((stderr, "Stack size increased to %lu\n", ++ (unsigned long int) yystacksize)); ++ ++ if (yyssp >= yyss + yystacksize - 1) ++ YYABORT; ++ } ++ ++ YYDPRINTF ((stderr, "Entering state %d\n", yystate)); ++ ++ goto yybackup; ++ ++ ++/*-----------. ++| yybackup. | ++`-----------*/ ++yybackup: ++ ++/* Do appropriate processing given the current state. */ ++/* Read a lookahead token if we need one and don't already have one. */ ++/* yyresume: */ ++ ++ /* First try to decide what to do without reference to lookahead token. */ ++ ++ yyn = yypact[yystate]; ++ if (yyn == YYFLAG) ++ goto yydefault; ++ ++ /* Not known => get a lookahead token if don't already have one. */ ++ ++ /* yychar is either YYEMPTY or YYEOF ++ or a valid token in external form. */ ++ ++ if (yychar == YYEMPTY) ++ { ++ YYDPRINTF ((stderr, "Reading a token: ")); ++ yychar = YYLEX; ++ } ++ ++ /* Convert token to internal form (in yychar1) for indexing tables with */ ++ ++ if (yychar <= 0) /* This means end of input. */ ++ { ++ yychar1 = 0; ++ yychar = YYEOF; /* Don't call YYLEX any more */ ++ ++ YYDPRINTF ((stderr, "Now at end of input.\n")); ++ } ++ else ++ { ++ yychar1 = YYTRANSLATE (yychar); ++ ++#if YYDEBUG ++ /* We have to keep this `#if YYDEBUG', since we use variables ++ which are defined only if `YYDEBUG' is set. */ ++ if (yydebug) ++ { ++ YYFPRINTF (stderr, "Next token is %d (%s", ++ yychar, yytname[yychar1]); ++ /* Give the individual parser a way to print the precise ++ meaning of a token, for further debugging info. */ ++# ifdef YYPRINT ++ YYPRINT (stderr, yychar, yylval); ++# endif ++ YYFPRINTF (stderr, ")\n"); ++ } ++#endif ++ } ++ ++ yyn += yychar1; ++ if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != yychar1) ++ goto yydefault; ++ ++ yyn = yytable[yyn]; ++ ++ /* yyn is what to do for this token type in this state. ++ Negative => reduce, -yyn is rule number. ++ Positive => shift, yyn is new state. ++ New state is final state => don't bother to shift, ++ just return success. ++ 0, or most negative number => error. */ ++ ++ if (yyn < 0) ++ { ++ if (yyn == YYFLAG) ++ goto yyerrlab; ++ yyn = -yyn; ++ goto yyreduce; ++ } ++ else if (yyn == 0) ++ goto yyerrlab; ++ ++ if (yyn == YYFINAL) ++ YYACCEPT; ++ ++ /* Shift the lookahead token. */ ++ YYDPRINTF ((stderr, "Shifting token %d (%s), ", ++ yychar, yytname[yychar1])); ++ ++ /* Discard the token being shifted unless it is eof. */ ++ if (yychar != YYEOF) ++ yychar = YYEMPTY; ++ ++ *++yyvsp = yylval; ++#if YYLSP_NEEDED ++ *++yylsp = yylloc; ++#endif ++ ++ /* Count tokens shifted since error; after three, turn off error ++ status. */ ++ if (yyerrstatus) ++ yyerrstatus--; ++ ++ yystate = yyn; ++ goto yynewstate; ++ ++ ++/*-----------------------------------------------------------. ++| yydefault -- do the default action for the current state. | ++`-----------------------------------------------------------*/ ++yydefault: ++ yyn = yydefact[yystate]; ++ if (yyn == 0) ++ goto yyerrlab; ++ goto yyreduce; ++ ++ ++/*-----------------------------. ++| yyreduce -- Do a reduction. | ++`-----------------------------*/ ++yyreduce: ++ /* yyn is the number of a rule to reduce with. */ ++ yylen = yyr2[yyn]; ++ ++ /* If YYLEN is nonzero, implement the default value of the action: ++ `$$ = $1'. ++ ++ Otherwise, the following line sets YYVAL to the semantic value of ++ the lookahead token. This behavior is undocumented and Bison ++ users should not rely upon it. Assigning to YYVAL ++ unconditionally makes the parser a bit smaller, and it avoids a ++ GCC warning that YYVAL may be used uninitialized. */ ++ yyval = yyvsp[1-yylen]; ++ ++#if YYLSP_NEEDED ++ /* Similarly for the default location. Let the user run additional ++ commands if for instance locations are ranges. */ ++ yyloc = yylsp[1-yylen]; ++ YYLLOC_DEFAULT (yyloc, (yylsp - yylen), yylen); ++#endif ++ ++#if YYDEBUG ++ /* We have to keep this `#if YYDEBUG', since we use variables which ++ are defined only if `YYDEBUG' is set. */ ++ if (yydebug) ++ { ++ int yyi; ++ ++ YYFPRINTF (stderr, "Reducing via rule %d (line %d), ", ++ yyn, yyrline[yyn]); ++ ++ /* Print the symbols being reduced, and their result. */ ++ for (yyi = yyprhs[yyn]; yyrhs[yyi] > 0; yyi++) ++ YYFPRINTF (stderr, "%s ", yytname[yyrhs[yyi]]); ++ YYFPRINTF (stderr, " -> %s\n", yytname[yyr1[yyn]]); ++ } ++#endif ++ ++ switch (yyn) { ++ ++case 1: ++#line 151 "plural.y" ++{ ++ if (yyvsp[0].exp == NULL) ++ YYABORT; ++ ((struct parse_args *) arg)->res = yyvsp[0].exp; ++ } ++ break; ++case 2: ++#line 159 "plural.y" ++{ ++ yyval.exp = new_exp_3 (qmop, yyvsp[-4].exp, yyvsp[-2].exp, yyvsp[0].exp); ++ } ++ break; ++case 3: ++#line 163 "plural.y" ++{ ++ yyval.exp = new_exp_2 (lor, yyvsp[-2].exp, yyvsp[0].exp); ++ } ++ break; ++case 4: ++#line 167 "plural.y" ++{ ++ yyval.exp = new_exp_2 (land, yyvsp[-2].exp, yyvsp[0].exp); ++ } ++ break; ++case 5: ++#line 171 "plural.y" ++{ ++ yyval.exp = new_exp_2 (yyvsp[-1].op, yyvsp[-2].exp, yyvsp[0].exp); ++ } ++ break; ++case 6: ++#line 175 "plural.y" ++{ ++ yyval.exp = new_exp_2 (yyvsp[-1].op, yyvsp[-2].exp, yyvsp[0].exp); ++ } ++ break; ++case 7: ++#line 179 "plural.y" ++{ ++ yyval.exp = new_exp_2 (yyvsp[-1].op, yyvsp[-2].exp, yyvsp[0].exp); ++ } ++ break; ++case 8: ++#line 183 "plural.y" ++{ ++ yyval.exp = new_exp_2 (yyvsp[-1].op, yyvsp[-2].exp, yyvsp[0].exp); ++ } ++ break; ++case 9: ++#line 187 "plural.y" ++{ ++ yyval.exp = new_exp_1 (lnot, yyvsp[0].exp); ++ } ++ break; ++case 10: ++#line 191 "plural.y" ++{ ++ yyval.exp = new_exp_0 (var); ++ } ++ break; ++case 11: ++#line 195 "plural.y" ++{ ++ if ((yyval.exp = new_exp_0 (num)) != NULL) ++ yyval.exp->val.num = yyvsp[0].num; ++ } ++ break; ++case 12: ++#line 200 "plural.y" ++{ ++ yyval.exp = yyvsp[-1].exp; ++ } ++ break; ++} ++ ++#line 705 "/usr/local/share/bison/bison.simple" ++ ++ ++ yyvsp -= yylen; ++ yyssp -= yylen; ++#if YYLSP_NEEDED ++ yylsp -= yylen; ++#endif ++ ++#if YYDEBUG ++ if (yydebug) ++ { ++ short *yyssp1 = yyss - 1; ++ YYFPRINTF (stderr, "state stack now"); ++ while (yyssp1 != yyssp) ++ YYFPRINTF (stderr, " %d", *++yyssp1); ++ YYFPRINTF (stderr, "\n"); ++ } ++#endif ++ ++ *++yyvsp = yyval; ++#if YYLSP_NEEDED ++ *++yylsp = yyloc; ++#endif ++ ++ /* Now `shift' the result of the reduction. Determine what state ++ that goes to, based on the state we popped back to and the rule ++ number reduced by. */ ++ ++ yyn = yyr1[yyn]; ++ ++ yystate = yypgoto[yyn - YYNTBASE] + *yyssp; ++ if (yystate >= 0 && yystate <= YYLAST && yycheck[yystate] == *yyssp) ++ yystate = yytable[yystate]; ++ else ++ yystate = yydefgoto[yyn - YYNTBASE]; ++ ++ goto yynewstate; ++ ++ ++/*------------------------------------. ++| yyerrlab -- here on detecting error | ++`------------------------------------*/ ++yyerrlab: ++ /* If not already recovering from an error, report this error. */ ++ if (!yyerrstatus) ++ { ++ ++yynerrs; ++ ++#ifdef YYERROR_VERBOSE ++ yyn = yypact[yystate]; ++ ++ if (yyn > YYFLAG && yyn < YYLAST) ++ { ++ YYSIZE_T yysize = 0; ++ char *yymsg; ++ int yyx, yycount; ++ ++ yycount = 0; ++ /* Start YYX at -YYN if negative to avoid negative indexes in ++ YYCHECK. */ ++ for (yyx = yyn < 0 ? -yyn : 0; ++ yyx < (int) (sizeof (yytname) / sizeof (char *)); yyx++) ++ if (yycheck[yyx + yyn] == yyx) ++ yysize += yystrlen (yytname[yyx]) + 15, yycount++; ++ yysize += yystrlen ("parse error, unexpected ") + 1; ++ yysize += yystrlen (yytname[YYTRANSLATE (yychar)]); ++ yymsg = (char *) YYSTACK_ALLOC (yysize); ++ if (yymsg != 0) ++ { ++ char *yyp = yystpcpy (yymsg, "parse error, unexpected "); ++ yyp = yystpcpy (yyp, yytname[YYTRANSLATE (yychar)]); ++ ++ if (yycount < 5) ++ { ++ yycount = 0; ++ for (yyx = yyn < 0 ? -yyn : 0; ++ yyx < (int) (sizeof (yytname) / sizeof (char *)); ++ yyx++) ++ if (yycheck[yyx + yyn] == yyx) ++ { ++ const char *yyq = ! yycount ? ", expecting " : " or "; ++ yyp = yystpcpy (yyp, yyq); ++ yyp = yystpcpy (yyp, yytname[yyx]); ++ yycount++; ++ } ++ } ++ yyerror (yymsg); ++ YYSTACK_FREE (yymsg); ++ } ++ else ++ yyerror ("parse error; also virtual memory exhausted"); ++ } ++ else ++#endif /* defined (YYERROR_VERBOSE) */ ++ yyerror ("parse error"); ++ } ++ goto yyerrlab1; ++ ++ ++/*--------------------------------------------------. ++| yyerrlab1 -- error raised explicitly by an action | ++`--------------------------------------------------*/ ++yyerrlab1: ++ if (yyerrstatus == 3) ++ { ++ /* If just tried and failed to reuse lookahead token after an ++ error, discard it. */ ++ ++ /* return failure if at end of input */ ++ if (yychar == YYEOF) ++ YYABORT; ++ YYDPRINTF ((stderr, "Discarding token %d (%s).\n", ++ yychar, yytname[yychar1])); ++ yychar = YYEMPTY; ++ } ++ ++ /* Else will try to reuse lookahead token after shifting the error ++ token. */ ++ ++ yyerrstatus = 3; /* Each real token shifted decrements this */ ++ ++ goto yyerrhandle; ++ ++ ++/*-------------------------------------------------------------------. ++| yyerrdefault -- current state does not do anything special for the | ++| error token. | ++`-------------------------------------------------------------------*/ ++yyerrdefault: ++#if 0 ++ /* This is wrong; only states that explicitly want error tokens ++ should shift them. */ ++ ++ /* If its default is to accept any token, ok. Otherwise pop it. */ ++ yyn = yydefact[yystate]; ++ if (yyn) ++ goto yydefault; ++#endif ++ ++ ++/*---------------------------------------------------------------. ++| yyerrpop -- pop the current state because it cannot handle the | ++| error token | ++`---------------------------------------------------------------*/ ++yyerrpop: ++ if (yyssp == yyss) ++ YYABORT; ++ yyvsp--; ++ yystate = *--yyssp; ++#if YYLSP_NEEDED ++ yylsp--; ++#endif ++ ++#if YYDEBUG ++ if (yydebug) ++ { ++ short *yyssp1 = yyss - 1; ++ YYFPRINTF (stderr, "Error: state stack now"); ++ while (yyssp1 != yyssp) ++ YYFPRINTF (stderr, " %d", *++yyssp1); ++ YYFPRINTF (stderr, "\n"); ++ } ++#endif ++ ++/*--------------. ++| yyerrhandle. | ++`--------------*/ ++yyerrhandle: ++ yyn = yypact[yystate]; ++ if (yyn == YYFLAG) ++ goto yyerrdefault; ++ ++ yyn += YYTERROR; ++ if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != YYTERROR) ++ goto yyerrdefault; ++ ++ yyn = yytable[yyn]; ++ if (yyn < 0) ++ { ++ if (yyn == YYFLAG) ++ goto yyerrpop; ++ yyn = -yyn; ++ goto yyreduce; ++ } ++ else if (yyn == 0) ++ goto yyerrpop; ++ ++ if (yyn == YYFINAL) ++ YYACCEPT; ++ ++ YYDPRINTF ((stderr, "Shifting error token, ")); ++ ++ *++yyvsp = yylval; ++#if YYLSP_NEEDED ++ *++yylsp = yylloc; ++#endif ++ ++ yystate = yyn; ++ goto yynewstate; ++ ++ ++/*-------------------------------------. ++| yyacceptlab -- YYACCEPT comes here. | ++`-------------------------------------*/ ++yyacceptlab: ++ yyresult = 0; ++ goto yyreturn; ++ ++/*-----------------------------------. ++| yyabortlab -- YYABORT comes here. | ++`-----------------------------------*/ ++yyabortlab: ++ yyresult = 1; ++ goto yyreturn; ++ ++/*---------------------------------------------. ++| yyoverflowab -- parser overflow comes here. | ++`---------------------------------------------*/ ++yyoverflowlab: ++ yyerror ("parser stack overflow"); ++ yyresult = 2; ++ /* Fall through. */ ++ ++yyreturn: ++#ifndef yyoverflow ++ if (yyss != yyssa) ++ YYSTACK_FREE (yyss); ++#endif ++ return yyresult; ++} ++#line 205 "plural.y" ++ ++ ++void ++internal_function ++FREE_EXPRESSION (struct expression *exp) ++{ ++ if (exp == NULL) ++ return; ++ ++ /* Handle the recursive case. */ ++ switch (exp->nargs) ++ { ++ case 3: ++ FREE_EXPRESSION (exp->val.args[2]); ++ /* FALLTHROUGH */ ++ case 2: ++ FREE_EXPRESSION (exp->val.args[1]); ++ /* FALLTHROUGH */ ++ case 1: ++ FREE_EXPRESSION (exp->val.args[0]); ++ /* FALLTHROUGH */ ++ default: ++ break; ++ } ++ ++ free (exp); ++} ++ ++ ++static int ++yylex (YYSTYPE *lval, const char **pexp) ++{ ++ const char *exp = *pexp; ++ int result; ++ ++ while (1) ++ { ++ if (exp[0] == '\0') ++ { ++ *pexp = exp; ++ return YYEOF; ++ } ++ ++ if (exp[0] != ' ' && exp[0] != '\t') ++ break; ++ ++ ++exp; ++ } ++ ++ result = *exp++; ++ switch (result) ++ { ++ case '0': case '1': case '2': case '3': case '4': ++ case '5': case '6': case '7': case '8': case '9': ++ { ++ unsigned long int n = result - '0'; ++ while (exp[0] >= '0' && exp[0] <= '9') ++ { ++ n *= 10; ++ n += exp[0] - '0'; ++ ++exp; ++ } ++ lval->num = n; ++ result = NUMBER; ++ } ++ break; ++ ++ case '=': ++ if (exp[0] == '=') ++ { ++ ++exp; ++ lval->op = equal; ++ result = EQUOP2; ++ } ++ else ++ result = YYERRCODE; ++ break; ++ ++ case '!': ++ if (exp[0] == '=') ++ { ++ ++exp; ++ lval->op = not_equal; ++ result = EQUOP2; ++ } ++ break; ++ ++ case '&': ++ case '|': ++ if (exp[0] == result) ++ ++exp; ++ else ++ result = YYERRCODE; ++ break; ++ ++ case '<': ++ if (exp[0] == '=') ++ { ++ ++exp; ++ lval->op = less_or_equal; ++ } ++ else ++ lval->op = less_than; ++ result = CMPOP2; ++ break; ++ ++ case '>': ++ if (exp[0] == '=') ++ { ++ ++exp; ++ lval->op = greater_or_equal; ++ } ++ else ++ lval->op = greater_than; ++ result = CMPOP2; ++ break; ++ ++ case '*': ++ lval->op = mult; ++ result = MULOP2; ++ break; ++ ++ case '/': ++ lval->op = divide; ++ result = MULOP2; ++ break; ++ ++ case '%': ++ lval->op = module; ++ result = MULOP2; ++ break; ++ ++ case '+': ++ lval->op = plus; ++ result = ADDOP2; ++ break; ++ ++ case '-': ++ lval->op = minus; ++ result = ADDOP2; ++ break; ++ ++ case 'n': ++ case '?': ++ case ':': ++ case '(': ++ case ')': ++ /* Nothing, just return the character. */ ++ break; ++ ++ case ';': ++ case '\n': ++ case '\0': ++ /* Be safe and let the user call this function again. */ ++ --exp; ++ result = YYEOF; ++ break; ++ ++ default: ++ result = YYERRCODE; ++#if YYDEBUG != 0 ++ --exp; ++#endif ++ break; ++ } ++ ++ *pexp = exp; ++ ++ return result; ++} ++ ++ ++static void ++yyerror (const char *str) ++{ ++ /* Do nothing. We don't print error messages here. */ ++} +--- lrzsz-0.12.20.safe/intl/plural-exp.c 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/plural-exp.c 2004-09-12 14:40:34.578714192 -0400 +@@ -0,0 +1,154 @@ ++/* Expression parsing for plural form selection. ++ Copyright (C) 2000-2001, 2003 Free Software Foundation, Inc. ++ Written by Ulrich Drepper , 2000. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++#ifdef HAVE_CONFIG_H ++# include ++#endif ++ ++#include ++#include ++#include ++ ++#include "plural-exp.h" ++ ++#if (defined __GNUC__ && !defined __APPLE_CC__) \ ++ || (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L) ++ ++/* These structs are the constant expression for the germanic plural ++ form determination. It represents the expression "n != 1". */ ++static const struct expression plvar = ++{ ++ .nargs = 0, ++ .operation = var, ++}; ++static const struct expression plone = ++{ ++ .nargs = 0, ++ .operation = num, ++ .val = ++ { ++ .num = 1 ++ } ++}; ++struct expression GERMANIC_PLURAL = ++{ ++ .nargs = 2, ++ .operation = not_equal, ++ .val = ++ { ++ .args = ++ { ++ [0] = (struct expression *) &plvar, ++ [1] = (struct expression *) &plone ++ } ++ } ++}; ++ ++# define INIT_GERMANIC_PLURAL() ++ ++#else ++ ++/* For compilers without support for ISO C 99 struct/union initializers: ++ Initialization at run-time. */ ++ ++static struct expression plvar; ++static struct expression plone; ++struct expression GERMANIC_PLURAL; ++ ++static void ++init_germanic_plural () ++{ ++ if (plone.val.num == 0) ++ { ++ plvar.nargs = 0; ++ plvar.operation = var; ++ ++ plone.nargs = 0; ++ plone.operation = num; ++ plone.val.num = 1; ++ ++ GERMANIC_PLURAL.nargs = 2; ++ GERMANIC_PLURAL.operation = not_equal; ++ GERMANIC_PLURAL.val.args[0] = &plvar; ++ GERMANIC_PLURAL.val.args[1] = &plone; ++ } ++} ++ ++# define INIT_GERMANIC_PLURAL() init_germanic_plural () ++ ++#endif ++ ++void ++internal_function ++EXTRACT_PLURAL_EXPRESSION (const char *nullentry, struct expression **pluralp, ++ unsigned long int *npluralsp) ++{ ++ if (nullentry != NULL) ++ { ++ const char *plural; ++ const char *nplurals; ++ ++ plural = strstr (nullentry, "plural="); ++ nplurals = strstr (nullentry, "nplurals="); ++ if (plural == NULL || nplurals == NULL) ++ goto no_plural; ++ else ++ { ++ char *endp; ++ unsigned long int n; ++ struct parse_args args; ++ ++ /* First get the number. */ ++ nplurals += 9; ++ while (*nplurals != '\0' && isspace ((unsigned char) *nplurals)) ++ ++nplurals; ++ if (!(*nplurals >= '0' && *nplurals <= '9')) ++ goto no_plural; ++#if defined HAVE_STRTOUL || defined _LIBC ++ n = strtoul (nplurals, &endp, 10); ++#else ++ for (endp = nplurals, n = 0; *endp >= '0' && *endp <= '9'; endp++) ++ n = n * 10 + (*endp - '0'); ++#endif ++ if (nplurals == endp) ++ goto no_plural; ++ *npluralsp = n; ++ ++ /* Due to the restrictions bison imposes onto the interface of the ++ scanner function we have to put the input string and the result ++ passed up from the parser into the same structure which address ++ is passed down to the parser. */ ++ plural += 7; ++ args.cp = plural; ++ if (PLURAL_PARSE (&args) != 0) ++ goto no_plural; ++ *pluralp = args.res; ++ } ++ } ++ else ++ { ++ /* By default we are using the Germanic form: singular form only ++ for `one', the plural form otherwise. Yes, this is also what ++ English is using since English is a Germanic language. */ ++ no_plural: ++ INIT_GERMANIC_PLURAL (); ++ *pluralp = &GERMANIC_PLURAL; ++ *npluralsp = 2; ++ } ++} +--- lrzsz-0.12.20.safe/intl/plural-exp.h 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/plural-exp.h 2004-09-12 14:40:34.584713280 -0400 +@@ -0,0 +1,118 @@ ++/* Expression parsing and evaluation for plural form selection. ++ Copyright (C) 2000-2003 Free Software Foundation, Inc. ++ Written by Ulrich Drepper , 2000. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++#ifndef _PLURAL_EXP_H ++#define _PLURAL_EXP_H ++ ++#ifndef internal_function ++# define internal_function ++#endif ++ ++#ifndef attribute_hidden ++# define attribute_hidden ++#endif ++ ++ ++/* This is the representation of the expressions to determine the ++ plural form. */ ++struct expression ++{ ++ int nargs; /* Number of arguments. */ ++ enum operator ++ { ++ /* Without arguments: */ ++ var, /* The variable "n". */ ++ num, /* Decimal number. */ ++ /* Unary operators: */ ++ lnot, /* Logical NOT. */ ++ /* Binary operators: */ ++ mult, /* Multiplication. */ ++ divide, /* Division. */ ++ module, /* Modulo operation. */ ++ plus, /* Addition. */ ++ minus, /* Subtraction. */ ++ less_than, /* Comparison. */ ++ greater_than, /* Comparison. */ ++ less_or_equal, /* Comparison. */ ++ greater_or_equal, /* Comparison. */ ++ equal, /* Comparison for equality. */ ++ not_equal, /* Comparison for inequality. */ ++ land, /* Logical AND. */ ++ lor, /* Logical OR. */ ++ /* Ternary operators: */ ++ qmop /* Question mark operator. */ ++ } operation; ++ union ++ { ++ unsigned long int num; /* Number value for `num'. */ ++ struct expression *args[3]; /* Up to three arguments. */ ++ } val; ++}; ++ ++/* This is the data structure to pass information to the parser and get ++ the result in a thread-safe way. */ ++struct parse_args ++{ ++ const char *cp; ++ struct expression *res; ++}; ++ ++ ++/* Names for the libintl functions are a problem. This source code is used ++ 1. in the GNU C Library library, ++ 2. in the GNU libintl library, ++ 3. in the GNU gettext tools. ++ The function names in each situation must be different, to allow for ++ binary incompatible changes in 'struct expression'. Furthermore, ++ 1. in the GNU C Library library, the names have a __ prefix, ++ 2.+3. in the GNU libintl library and in the GNU gettext tools, the names ++ must follow ANSI C and not start with __. ++ So we have to distinguish the three cases. */ ++#ifdef _LIBC ++# define FREE_EXPRESSION __gettext_free_exp ++# define PLURAL_PARSE __gettextparse ++# define GERMANIC_PLURAL __gettext_germanic_plural ++# define EXTRACT_PLURAL_EXPRESSION __gettext_extract_plural ++#elif defined (IN_LIBINTL) ++# define FREE_EXPRESSION libintl_gettext_free_exp ++# define PLURAL_PARSE libintl_gettextparse ++# define GERMANIC_PLURAL libintl_gettext_germanic_plural ++# define EXTRACT_PLURAL_EXPRESSION libintl_gettext_extract_plural ++#else ++# define FREE_EXPRESSION free_plural_expression ++# define PLURAL_PARSE parse_plural_expression ++# define GERMANIC_PLURAL germanic_plural ++# define EXTRACT_PLURAL_EXPRESSION extract_plural_expression ++#endif ++ ++extern void FREE_EXPRESSION (struct expression *exp) ++ internal_function; ++extern int PLURAL_PARSE (void *arg); ++extern struct expression GERMANIC_PLURAL attribute_hidden; ++extern void EXTRACT_PLURAL_EXPRESSION (const char *nullentry, ++ struct expression **pluralp, ++ unsigned long int *npluralsp) ++ internal_function; ++ ++#if !defined (_LIBC) && !defined (IN_LIBINTL) ++extern unsigned long int plural_eval (struct expression *pexp, ++ unsigned long int n); ++#endif ++ ++#endif /* _PLURAL_EXP_H */ +--- lrzsz-0.12.20.safe/intl/plural.y 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/plural.y 2004-09-12 14:40:34.589712520 -0400 +@@ -0,0 +1,381 @@ ++%{ ++/* Expression parsing for plural form selection. ++ Copyright (C) 2000-2001, 2003 Free Software Foundation, Inc. ++ Written by Ulrich Drepper , 2000. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++/* The bison generated parser uses alloca. AIX 3 forces us to put this ++ declaration at the beginning of the file. The declaration in bison's ++ skeleton file comes too late. This must come before ++ because may include arbitrary system headers. */ ++#if defined _AIX && !defined __GNUC__ ++ #pragma alloca ++#endif ++ ++#ifdef HAVE_CONFIG_H ++# include ++#endif ++ ++#include ++#include ++#include "plural-exp.h" ++ ++/* The main function generated by the parser is called __gettextparse, ++ but we want it to be called PLURAL_PARSE. */ ++#ifndef _LIBC ++# define __gettextparse PLURAL_PARSE ++#endif ++ ++#define YYLEX_PARAM &((struct parse_args *) arg)->cp ++#define YYPARSE_PARAM arg ++%} ++%pure_parser ++%expect 7 ++ ++%union { ++ unsigned long int num; ++ enum operator op; ++ struct expression *exp; ++} ++ ++%{ ++/* Prototypes for local functions. */ ++static int yylex (YYSTYPE *lval, const char **pexp); ++static void yyerror (const char *str); ++ ++/* Allocation of expressions. */ ++ ++static struct expression * ++new_exp (int nargs, enum operator op, struct expression * const *args) ++{ ++ int i; ++ struct expression *newp; ++ ++ /* If any of the argument could not be malloc'ed, just return NULL. */ ++ for (i = nargs - 1; i >= 0; i--) ++ if (args[i] == NULL) ++ goto fail; ++ ++ /* Allocate a new expression. */ ++ newp = (struct expression *) malloc (sizeof (*newp)); ++ if (newp != NULL) ++ { ++ newp->nargs = nargs; ++ newp->operation = op; ++ for (i = nargs - 1; i >= 0; i--) ++ newp->val.args[i] = args[i]; ++ return newp; ++ } ++ ++ fail: ++ for (i = nargs - 1; i >= 0; i--) ++ FREE_EXPRESSION (args[i]); ++ ++ return NULL; ++} ++ ++static inline struct expression * ++new_exp_0 (enum operator op) ++{ ++ return new_exp (0, op, NULL); ++} ++ ++static inline struct expression * ++new_exp_1 (enum operator op, struct expression *right) ++{ ++ struct expression *args[1]; ++ ++ args[0] = right; ++ return new_exp (1, op, args); ++} ++ ++static struct expression * ++new_exp_2 (enum operator op, struct expression *left, struct expression *right) ++{ ++ struct expression *args[2]; ++ ++ args[0] = left; ++ args[1] = right; ++ return new_exp (2, op, args); ++} ++ ++static inline struct expression * ++new_exp_3 (enum operator op, struct expression *bexp, ++ struct expression *tbranch, struct expression *fbranch) ++{ ++ struct expression *args[3]; ++ ++ args[0] = bexp; ++ args[1] = tbranch; ++ args[2] = fbranch; ++ return new_exp (3, op, args); ++} ++ ++%} ++ ++/* This declares that all operators have the same associativity and the ++ precedence order as in C. See [Harbison, Steele: C, A Reference Manual]. ++ There is no unary minus and no bitwise operators. ++ Operators with the same syntactic behaviour have been merged into a single ++ token, to save space in the array generated by bison. */ ++%right '?' /* ? */ ++%left '|' /* || */ ++%left '&' /* && */ ++%left EQUOP2 /* == != */ ++%left CMPOP2 /* < > <= >= */ ++%left ADDOP2 /* + - */ ++%left MULOP2 /* * / % */ ++%right '!' /* ! */ ++ ++%token EQUOP2 CMPOP2 ADDOP2 MULOP2 ++%token NUMBER ++%type exp ++ ++%% ++ ++start: exp ++ { ++ if ($1 == NULL) ++ YYABORT; ++ ((struct parse_args *) arg)->res = $1; ++ } ++ ; ++ ++exp: exp '?' exp ':' exp ++ { ++ $$ = new_exp_3 (qmop, $1, $3, $5); ++ } ++ | exp '|' exp ++ { ++ $$ = new_exp_2 (lor, $1, $3); ++ } ++ | exp '&' exp ++ { ++ $$ = new_exp_2 (land, $1, $3); ++ } ++ | exp EQUOP2 exp ++ { ++ $$ = new_exp_2 ($2, $1, $3); ++ } ++ | exp CMPOP2 exp ++ { ++ $$ = new_exp_2 ($2, $1, $3); ++ } ++ | exp ADDOP2 exp ++ { ++ $$ = new_exp_2 ($2, $1, $3); ++ } ++ | exp MULOP2 exp ++ { ++ $$ = new_exp_2 ($2, $1, $3); ++ } ++ | '!' exp ++ { ++ $$ = new_exp_1 (lnot, $2); ++ } ++ | 'n' ++ { ++ $$ = new_exp_0 (var); ++ } ++ | NUMBER ++ { ++ if (($$ = new_exp_0 (num)) != NULL) ++ $$->val.num = $1; ++ } ++ | '(' exp ')' ++ { ++ $$ = $2; ++ } ++ ; ++ ++%% ++ ++void ++internal_function ++FREE_EXPRESSION (struct expression *exp) ++{ ++ if (exp == NULL) ++ return; ++ ++ /* Handle the recursive case. */ ++ switch (exp->nargs) ++ { ++ case 3: ++ FREE_EXPRESSION (exp->val.args[2]); ++ /* FALLTHROUGH */ ++ case 2: ++ FREE_EXPRESSION (exp->val.args[1]); ++ /* FALLTHROUGH */ ++ case 1: ++ FREE_EXPRESSION (exp->val.args[0]); ++ /* FALLTHROUGH */ ++ default: ++ break; ++ } ++ ++ free (exp); ++} ++ ++ ++static int ++yylex (YYSTYPE *lval, const char **pexp) ++{ ++ const char *exp = *pexp; ++ int result; ++ ++ while (1) ++ { ++ if (exp[0] == '\0') ++ { ++ *pexp = exp; ++ return YYEOF; ++ } ++ ++ if (exp[0] != ' ' && exp[0] != '\t') ++ break; ++ ++ ++exp; ++ } ++ ++ result = *exp++; ++ switch (result) ++ { ++ case '0': case '1': case '2': case '3': case '4': ++ case '5': case '6': case '7': case '8': case '9': ++ { ++ unsigned long int n = result - '0'; ++ while (exp[0] >= '0' && exp[0] <= '9') ++ { ++ n *= 10; ++ n += exp[0] - '0'; ++ ++exp; ++ } ++ lval->num = n; ++ result = NUMBER; ++ } ++ break; ++ ++ case '=': ++ if (exp[0] == '=') ++ { ++ ++exp; ++ lval->op = equal; ++ result = EQUOP2; ++ } ++ else ++ result = YYERRCODE; ++ break; ++ ++ case '!': ++ if (exp[0] == '=') ++ { ++ ++exp; ++ lval->op = not_equal; ++ result = EQUOP2; ++ } ++ break; ++ ++ case '&': ++ case '|': ++ if (exp[0] == result) ++ ++exp; ++ else ++ result = YYERRCODE; ++ break; ++ ++ case '<': ++ if (exp[0] == '=') ++ { ++ ++exp; ++ lval->op = less_or_equal; ++ } ++ else ++ lval->op = less_than; ++ result = CMPOP2; ++ break; ++ ++ case '>': ++ if (exp[0] == '=') ++ { ++ ++exp; ++ lval->op = greater_or_equal; ++ } ++ else ++ lval->op = greater_than; ++ result = CMPOP2; ++ break; ++ ++ case '*': ++ lval->op = mult; ++ result = MULOP2; ++ break; ++ ++ case '/': ++ lval->op = divide; ++ result = MULOP2; ++ break; ++ ++ case '%': ++ lval->op = module; ++ result = MULOP2; ++ break; ++ ++ case '+': ++ lval->op = plus; ++ result = ADDOP2; ++ break; ++ ++ case '-': ++ lval->op = minus; ++ result = ADDOP2; ++ break; ++ ++ case 'n': ++ case '?': ++ case ':': ++ case '(': ++ case ')': ++ /* Nothing, just return the character. */ ++ break; ++ ++ case ';': ++ case '\n': ++ case '\0': ++ /* Be safe and let the user call this function again. */ ++ --exp; ++ result = YYEOF; ++ break; ++ ++ default: ++ result = YYERRCODE; ++#if YYDEBUG != 0 ++ --exp; ++#endif ++ break; ++ } ++ ++ *pexp = exp; ++ ++ return result; ++} ++ ++ ++static void ++yyerror (const char *str) ++{ ++ /* Do nothing. We don't print error messages here. */ ++} +--- lrzsz-0.12.20.safe/intl/po2tbl.sed.in 1998-04-26 09:20:52.000000000 -0400 ++++ lrzsz-0.12.20/intl/po2tbl.sed.in 1969-12-31 19:00:00.000000000 -0500 +@@ -1,102 +0,0 @@ +-# po2tbl.sed - Convert Uniforum style .po file to lookup table for catgets +-# Copyright (C) 1995 Free Software Foundation, Inc. +-# Ulrich Drepper , 1995. +-# +-# This program is free software; you can redistribute it and/or modify +-# it under the terms of the GNU General Public License as published by +-# the Free Software Foundation; either version 2, or (at your option) +-# any later version. +-# +-# This program is distributed in the hope that it will be useful, +-# but WITHOUT ANY WARRANTY; without even the implied warranty of +-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-# GNU General Public License for more details. +-# +-# You should have received a copy of the GNU General Public License +-# along with this program; if not, write to the Free Software +-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +-# +-1 { +- i\ +-/* Automatically generated by po2tbl.sed from @PACKAGE NAME@.pot. */\ +-\ +-#if HAVE_CONFIG_H\ +-# include \ +-#endif\ +-\ +-#include "libgettext.h"\ +-\ +-const struct _msg_ent _msg_tbl[] = { +- h +- s/.*/0/ +- x +-} +-# +-# Write msgid entries in C array form. +-# +-/^msgid/ { +- s/msgid[ ]*\(".*"\)/ {\1/ +- tb +-# Append the next line +- :b +- N +-# Look whether second part is continuation line. +- s/\(.*\)"\(\n\)"\(.*"\)/\1\2\3/ +-# Yes, then branch. +- ta +-# Because we assume that the input file correctly formed the line +-# just read cannot be again be a msgid line. So it's safe to ignore +-# it. +- s/\(.*\)\n.*/\1/ +- bc +-# We found a continuation line. But before printing insert '\'. +- :a +- s/\(.*\)\(\n.*\)/\1\\\2/ +- P +-# We cannot use D here. +- s/.*\n\(.*\)/\1/ +-# Some buggy seds do not clear the `successful substitution since last ``t''' +-# flag on `N', so we do a `t' here to clear it. +- tb +-# Not reached +- :c +- x +-# The following nice solution is by +-# Bruno +- td +-# Increment a decimal number in pattern space. +-# First hide trailing `9' digits. +- :d +- s/9\(_*\)$/_\1/ +- td +-# Assure at least one digit is available. +- s/^\(_*\)$/0\1/ +-# Increment the last digit. +- s/8\(_*\)$/9\1/ +- s/7\(_*\)$/8\1/ +- s/6\(_*\)$/7\1/ +- s/5\(_*\)$/6\1/ +- s/4\(_*\)$/5\1/ +- s/3\(_*\)$/4\1/ +- s/2\(_*\)$/3\1/ +- s/1\(_*\)$/2\1/ +- s/0\(_*\)$/1\1/ +-# Convert the hidden `9' digits to `0's. +- s/_/0/g +- x +- G +- s/\(.*\)\n\([0-9]*\)/\1, \2},/ +- s/\(.*\)"$/\1/ +- p +-} +-# +-# Last line. +-# +-$ { +- i\ +-};\ +- +- g +- s/0*\(.*\)/int _msg_tbl_length = \1;/p +-} +-d +--- lrzsz-0.12.20.safe/intl/printf-args.c 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/printf-args.c 2004-09-12 14:40:34.595711608 -0400 +@@ -0,0 +1,119 @@ ++/* Decomposed printf argument list. ++ Copyright (C) 1999, 2002-2003 Free Software Foundation, Inc. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++#ifdef HAVE_CONFIG_H ++# include ++#endif ++ ++/* Specification. */ ++#include "printf-args.h" ++ ++#ifdef STATIC ++STATIC ++#endif ++int ++printf_fetchargs (va_list args, arguments *a) ++{ ++ size_t i; ++ argument *ap; ++ ++ for (i = 0, ap = &a->arg[0]; i < a->count; i++, ap++) ++ switch (ap->type) ++ { ++ case TYPE_SCHAR: ++ ap->a.a_schar = va_arg (args, /*signed char*/ int); ++ break; ++ case TYPE_UCHAR: ++ ap->a.a_uchar = va_arg (args, /*unsigned char*/ int); ++ break; ++ case TYPE_SHORT: ++ ap->a.a_short = va_arg (args, /*short*/ int); ++ break; ++ case TYPE_USHORT: ++ ap->a.a_ushort = va_arg (args, /*unsigned short*/ int); ++ break; ++ case TYPE_INT: ++ ap->a.a_int = va_arg (args, int); ++ break; ++ case TYPE_UINT: ++ ap->a.a_uint = va_arg (args, unsigned int); ++ break; ++ case TYPE_LONGINT: ++ ap->a.a_longint = va_arg (args, long int); ++ break; ++ case TYPE_ULONGINT: ++ ap->a.a_ulongint = va_arg (args, unsigned long int); ++ break; ++#ifdef HAVE_LONG_LONG ++ case TYPE_LONGLONGINT: ++ ap->a.a_longlongint = va_arg (args, long long int); ++ break; ++ case TYPE_ULONGLONGINT: ++ ap->a.a_ulonglongint = va_arg (args, unsigned long long int); ++ break; ++#endif ++ case TYPE_DOUBLE: ++ ap->a.a_double = va_arg (args, double); ++ break; ++#ifdef HAVE_LONG_DOUBLE ++ case TYPE_LONGDOUBLE: ++ ap->a.a_longdouble = va_arg (args, long double); ++ break; ++#endif ++ case TYPE_CHAR: ++ ap->a.a_char = va_arg (args, int); ++ break; ++#ifdef HAVE_WINT_T ++ case TYPE_WIDE_CHAR: ++ ap->a.a_wide_char = va_arg (args, wint_t); ++ break; ++#endif ++ case TYPE_STRING: ++ ap->a.a_string = va_arg (args, const char *); ++ break; ++#ifdef HAVE_WCHAR_T ++ case TYPE_WIDE_STRING: ++ ap->a.a_wide_string = va_arg (args, const wchar_t *); ++ break; ++#endif ++ case TYPE_POINTER: ++ ap->a.a_pointer = va_arg (args, void *); ++ break; ++ case TYPE_COUNT_SCHAR_POINTER: ++ ap->a.a_count_schar_pointer = va_arg (args, signed char *); ++ break; ++ case TYPE_COUNT_SHORT_POINTER: ++ ap->a.a_count_short_pointer = va_arg (args, short *); ++ break; ++ case TYPE_COUNT_INT_POINTER: ++ ap->a.a_count_int_pointer = va_arg (args, int *); ++ break; ++ case TYPE_COUNT_LONGINT_POINTER: ++ ap->a.a_count_longint_pointer = va_arg (args, long int *); ++ break; ++#ifdef HAVE_LONG_LONG ++ case TYPE_COUNT_LONGLONGINT_POINTER: ++ ap->a.a_count_longlongint_pointer = va_arg (args, long long int *); ++ break; ++#endif ++ default: ++ /* Unknown type. */ ++ return -1; ++ } ++ return 0; ++} +--- lrzsz-0.12.20.safe/intl/printf-args.h 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/printf-args.h 2004-09-12 14:40:34.601710696 -0400 +@@ -0,0 +1,137 @@ ++/* Decomposed printf argument list. ++ Copyright (C) 1999, 2002-2003 Free Software Foundation, Inc. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++#ifndef _PRINTF_ARGS_H ++#define _PRINTF_ARGS_H ++ ++/* Get size_t. */ ++#include ++ ++/* Get wchar_t. */ ++#ifdef HAVE_WCHAR_T ++# include ++#endif ++ ++/* Get wint_t. */ ++#ifdef HAVE_WINT_T ++# include ++#endif ++ ++/* Get va_list. */ ++#include ++ ++ ++/* Argument types */ ++typedef enum ++{ ++ TYPE_NONE, ++ TYPE_SCHAR, ++ TYPE_UCHAR, ++ TYPE_SHORT, ++ TYPE_USHORT, ++ TYPE_INT, ++ TYPE_UINT, ++ TYPE_LONGINT, ++ TYPE_ULONGINT, ++#ifdef HAVE_LONG_LONG ++ TYPE_LONGLONGINT, ++ TYPE_ULONGLONGINT, ++#endif ++ TYPE_DOUBLE, ++#ifdef HAVE_LONG_DOUBLE ++ TYPE_LONGDOUBLE, ++#endif ++ TYPE_CHAR, ++#ifdef HAVE_WINT_T ++ TYPE_WIDE_CHAR, ++#endif ++ TYPE_STRING, ++#ifdef HAVE_WCHAR_T ++ TYPE_WIDE_STRING, ++#endif ++ TYPE_POINTER, ++ TYPE_COUNT_SCHAR_POINTER, ++ TYPE_COUNT_SHORT_POINTER, ++ TYPE_COUNT_INT_POINTER, ++ TYPE_COUNT_LONGINT_POINTER ++#ifdef HAVE_LONG_LONG ++, TYPE_COUNT_LONGLONGINT_POINTER ++#endif ++} arg_type; ++ ++/* Polymorphic argument */ ++typedef struct ++{ ++ arg_type type; ++ union ++ { ++ signed char a_schar; ++ unsigned char a_uchar; ++ short a_short; ++ unsigned short a_ushort; ++ int a_int; ++ unsigned int a_uint; ++ long int a_longint; ++ unsigned long int a_ulongint; ++#ifdef HAVE_LONG_LONG ++ long long int a_longlongint; ++ unsigned long long int a_ulonglongint; ++#endif ++ float a_float; ++ double a_double; ++#ifdef HAVE_LONG_DOUBLE ++ long double a_longdouble; ++#endif ++ int a_char; ++#ifdef HAVE_WINT_T ++ wint_t a_wide_char; ++#endif ++ const char* a_string; ++#ifdef HAVE_WCHAR_T ++ const wchar_t* a_wide_string; ++#endif ++ void* a_pointer; ++ signed char * a_count_schar_pointer; ++ short * a_count_short_pointer; ++ int * a_count_int_pointer; ++ long int * a_count_longint_pointer; ++#ifdef HAVE_LONG_LONG ++ long long int * a_count_longlongint_pointer; ++#endif ++ } ++ a; ++} ++argument; ++ ++typedef struct ++{ ++ size_t count; ++ argument *arg; ++} ++arguments; ++ ++ ++/* Fetch the arguments, putting them into a. */ ++#ifdef STATIC ++STATIC ++#else ++extern ++#endif ++int printf_fetchargs (va_list args, arguments *a); ++ ++#endif /* _PRINTF_ARGS_H */ +--- lrzsz-0.12.20.safe/intl/printf.c 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/printf.c 2004-09-12 14:40:34.607709784 -0400 +@@ -0,0 +1,371 @@ ++/* Formatted output to strings, using POSIX/XSI format strings with positions. ++ Copyright (C) 2003 Free Software Foundation, Inc. ++ Written by Bruno Haible , 2003. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++#ifdef HAVE_CONFIG_H ++# include ++#endif ++ ++#ifdef __GNUC__ ++# define alloca __builtin_alloca ++# define HAVE_ALLOCA 1 ++#else ++# ifdef _MSC_VER ++# include ++# define alloca _alloca ++# else ++# if defined HAVE_ALLOCA_H || defined _LIBC ++# include ++# else ++# ifdef _AIX ++ #pragma alloca ++# else ++# ifndef alloca ++char *alloca (); ++# endif ++# endif ++# endif ++# endif ++#endif ++ ++#include ++ ++#if !HAVE_POSIX_PRINTF ++ ++#include ++#include ++ ++/* When building a DLL, we must export some functions. Note that because ++ the functions are only defined for binary backward compatibility, we ++ don't need to use __declspec(dllimport) in any case. */ ++#if defined _MSC_VER && BUILDING_DLL ++# define DLL_EXPORTED __declspec(dllexport) ++#else ++# define DLL_EXPORTED ++#endif ++ ++#define STATIC static ++ ++/* Define auxiliary functions declared in "printf-args.h". */ ++#include "printf-args.c" ++ ++/* Define auxiliary functions declared in "printf-parse.h". */ ++#include "printf-parse.c" ++ ++/* Define functions declared in "vasnprintf.h". */ ++#define vasnprintf libintl_vasnprintf ++#include "vasnprintf.c" ++#if 0 /* not needed */ ++#define asnprintf libintl_asnprintf ++#include "asnprintf.c" ++#endif ++ ++DLL_EXPORTED ++int ++libintl_vfprintf (FILE *stream, const char *format, va_list args) ++{ ++ if (strchr (format, '$') == NULL) ++ return vfprintf (stream, format, args); ++ else ++ { ++ size_t length; ++ char *result = libintl_vasnprintf (NULL, &length, format, args); ++ int retval = -1; ++ if (result != NULL) ++ { ++ if (fwrite (result, 1, length, stream) == length) ++ retval = length; ++ free (result); ++ } ++ return retval; ++ } ++} ++ ++DLL_EXPORTED ++int ++libintl_fprintf (FILE *stream, const char *format, ...) ++{ ++ va_list args; ++ int retval; ++ ++ va_start (args, format); ++ retval = libintl_vfprintf (stream, format, args); ++ va_end (args); ++ return retval; ++} ++ ++DLL_EXPORTED ++int ++libintl_vprintf (const char *format, va_list args) ++{ ++ return libintl_vfprintf (stdout, format, args); ++} ++ ++DLL_EXPORTED ++int ++libintl_printf (const char *format, ...) ++{ ++ va_list args; ++ int retval; ++ ++ va_start (args, format); ++ retval = libintl_vprintf (format, args); ++ va_end (args); ++ return retval; ++} ++ ++DLL_EXPORTED ++int ++libintl_vsprintf (char *resultbuf, const char *format, va_list args) ++{ ++ if (strchr (format, '$') == NULL) ++ return vsprintf (resultbuf, format, args); ++ else ++ { ++ size_t length = (size_t) ~0 / (4 * sizeof (char)); ++ char *result = libintl_vasnprintf (resultbuf, &length, format, args); ++ if (result != resultbuf) ++ { ++ free (result); ++ return -1; ++ } ++ else ++ return length; ++ } ++} ++ ++DLL_EXPORTED ++int ++libintl_sprintf (char *resultbuf, const char *format, ...) ++{ ++ va_list args; ++ int retval; ++ ++ va_start (args, format); ++ retval = libintl_vsprintf (resultbuf, format, args); ++ va_end (args); ++ return retval; ++} ++ ++#if HAVE_SNPRINTF ++ ++# if HAVE_DECL__SNPRINTF ++ /* Windows. */ ++# define system_vsnprintf _vsnprintf ++# else ++ /* Unix. */ ++# define system_vsnprintf vsnprintf ++# endif ++ ++DLL_EXPORTED ++int ++libintl_vsnprintf (char *resultbuf, size_t length, const char *format, va_list args) ++{ ++ if (strchr (format, '$') == NULL) ++ return system_vsnprintf (resultbuf, length, format, args); ++ else ++ { ++ size_t maxlength = length; ++ char *result = libintl_vasnprintf (resultbuf, &length, format, args); ++ if (result != resultbuf) ++ { ++ if (maxlength > 0) ++ { ++ if (length < maxlength) ++ abort (); ++ memcpy (resultbuf, result, maxlength - 1); ++ resultbuf[maxlength - 1] = '\0'; ++ } ++ free (result); ++ return -1; ++ } ++ else ++ return length; ++ } ++} ++ ++DLL_EXPORTED ++int ++libintl_snprintf (char *resultbuf, size_t length, const char *format, ...) ++{ ++ va_list args; ++ int retval; ++ ++ va_start (args, format); ++ retval = libintl_vsnprintf (resultbuf, length, format, args); ++ va_end (args); ++ return retval; ++} ++ ++#endif ++ ++#if HAVE_ASPRINTF ++ ++DLL_EXPORTED ++int ++libintl_vasprintf (char **resultp, const char *format, va_list args) ++{ ++ size_t length; ++ char *result = libintl_vasnprintf (NULL, &length, format, args); ++ if (result == NULL) ++ return -1; ++ *resultp = result; ++ return length; ++} ++ ++DLL_EXPORTED ++int ++libintl_asprintf (char **resultp, const char *format, ...) ++{ ++ va_list args; ++ int retval; ++ ++ va_start (args, format); ++ retval = libintl_vasprintf (resultp, format, args); ++ va_end (args); ++ return retval; ++} ++ ++#endif ++ ++#if HAVE_FWPRINTF ++ ++#include ++ ++#define WIDE_CHAR_VERSION 1 ++ ++/* Define auxiliary functions declared in "wprintf-parse.h". */ ++#include "printf-parse.c" ++ ++/* Define functions declared in "vasnprintf.h". */ ++#define vasnwprintf libintl_vasnwprintf ++#include "vasnprintf.c" ++#if 0 /* not needed */ ++#define asnwprintf libintl_asnwprintf ++#include "asnprintf.c" ++#endif ++ ++# if HAVE_DECL__SNWPRINTF ++ /* Windows. */ ++# define system_vswprintf _vsnwprintf ++# else ++ /* Unix. */ ++# define system_vswprintf vswprintf ++# endif ++ ++DLL_EXPORTED ++int ++libintl_vfwprintf (FILE *stream, const wchar_t *format, va_list args) ++{ ++ if (wcschr (format, '$') == NULL) ++ return vfwprintf (stream, format, args); ++ else ++ { ++ size_t length; ++ wchar_t *result = libintl_vasnwprintf (NULL, &length, format, args); ++ int retval = -1; ++ if (result != NULL) ++ { ++ size_t i; ++ for (i = 0; i < length; i++) ++ if (fputwc (result[i], stream) == WEOF) ++ break; ++ if (i == length) ++ retval = length; ++ free (result); ++ } ++ return retval; ++ } ++} ++ ++DLL_EXPORTED ++int ++libintl_fwprintf (FILE *stream, const wchar_t *format, ...) ++{ ++ va_list args; ++ int retval; ++ ++ va_start (args, format); ++ retval = libintl_vfwprintf (stream, format, args); ++ va_end (args); ++ return retval; ++} ++ ++DLL_EXPORTED ++int ++libintl_vwprintf (const wchar_t *format, va_list args) ++{ ++ return libintl_vfwprintf (stdout, format, args); ++} ++ ++DLL_EXPORTED ++int ++libintl_wprintf (const wchar_t *format, ...) ++{ ++ va_list args; ++ int retval; ++ ++ va_start (args, format); ++ retval = libintl_vwprintf (format, args); ++ va_end (args); ++ return retval; ++} ++ ++DLL_EXPORTED ++int ++libintl_vswprintf (wchar_t *resultbuf, size_t length, const wchar_t *format, va_list args) ++{ ++ if (wcschr (format, '$') == NULL) ++ return system_vswprintf (resultbuf, length, format, args); ++ else ++ { ++ size_t maxlength = length; ++ wchar_t *result = libintl_vasnwprintf (resultbuf, &length, format, args); ++ if (result != resultbuf) ++ { ++ if (maxlength > 0) ++ { ++ if (length < maxlength) ++ abort (); ++ memcpy (resultbuf, result, (maxlength - 1) * sizeof (wchar_t)); ++ resultbuf[maxlength - 1] = 0; ++ } ++ free (result); ++ return -1; ++ } ++ else ++ return length; ++ } ++} ++ ++DLL_EXPORTED ++int ++libintl_swprintf (wchar_t *resultbuf, size_t length, const wchar_t *format, ...) ++{ ++ va_list args; ++ int retval; ++ ++ va_start (args, format); ++ retval = libintl_vswprintf (resultbuf, length, format, args); ++ va_end (args); ++ return retval; ++} ++ ++#endif ++ ++#endif +--- lrzsz-0.12.20.safe/intl/printf-parse.c 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/printf-parse.c 2004-09-12 14:40:34.622707504 -0400 +@@ -0,0 +1,537 @@ ++/* Formatted output to strings. ++ Copyright (C) 1999-2000, 2002-2003 Free Software Foundation, Inc. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++#ifdef HAVE_CONFIG_H ++# include ++#endif ++ ++/* Specification. */ ++#if WIDE_CHAR_VERSION ++# include "wprintf-parse.h" ++#else ++# include "printf-parse.h" ++#endif ++ ++/* Get size_t, NULL. */ ++#include ++ ++/* Get intmax_t. */ ++#if HAVE_STDINT_H_WITH_UINTMAX ++# include ++#endif ++#if HAVE_INTTYPES_H_WITH_UINTMAX ++# include ++#endif ++ ++/* malloc(), realloc(), free(). */ ++#include ++ ++/* Checked size_t computations. */ ++#include "xsize.h" ++ ++#if WIDE_CHAR_VERSION ++# define PRINTF_PARSE wprintf_parse ++# define CHAR_T wchar_t ++# define DIRECTIVE wchar_t_directive ++# define DIRECTIVES wchar_t_directives ++#else ++# define PRINTF_PARSE printf_parse ++# define CHAR_T char ++# define DIRECTIVE char_directive ++# define DIRECTIVES char_directives ++#endif ++ ++#ifdef STATIC ++STATIC ++#endif ++int ++PRINTF_PARSE (const CHAR_T *format, DIRECTIVES *d, arguments *a) ++{ ++ const CHAR_T *cp = format; /* pointer into format */ ++ size_t arg_posn = 0; /* number of regular arguments consumed */ ++ size_t d_allocated; /* allocated elements of d->dir */ ++ size_t a_allocated; /* allocated elements of a->arg */ ++ size_t max_width_length = 0; ++ size_t max_precision_length = 0; ++ ++ d->count = 0; ++ d_allocated = 1; ++ d->dir = malloc (d_allocated * sizeof (DIRECTIVE)); ++ if (d->dir == NULL) ++ /* Out of memory. */ ++ return -1; ++ ++ a->count = 0; ++ a_allocated = 0; ++ a->arg = NULL; ++ ++#define REGISTER_ARG(_index_,_type_) \ ++ { \ ++ size_t n = (_index_); \ ++ if (n >= a_allocated) \ ++ { \ ++ size_t memory_size; \ ++ argument *memory; \ ++ \ ++ a_allocated = xtimes (a_allocated, 2); \ ++ if (a_allocated <= n) \ ++ a_allocated = xsum (n, 1); \ ++ memory_size = xtimes (a_allocated, sizeof (argument)); \ ++ if (size_overflow_p (memory_size)) \ ++ /* Overflow, would lead to out of memory. */ \ ++ goto error; \ ++ memory = (a->arg \ ++ ? realloc (a->arg, memory_size) \ ++ : malloc (memory_size)); \ ++ if (memory == NULL) \ ++ /* Out of memory. */ \ ++ goto error; \ ++ a->arg = memory; \ ++ } \ ++ while (a->count <= n) \ ++ a->arg[a->count++].type = TYPE_NONE; \ ++ if (a->arg[n].type == TYPE_NONE) \ ++ a->arg[n].type = (_type_); \ ++ else if (a->arg[n].type != (_type_)) \ ++ /* Ambiguous type for positional argument. */ \ ++ goto error; \ ++ } ++ ++ while (*cp != '\0') ++ { ++ CHAR_T c = *cp++; ++ if (c == '%') ++ { ++ size_t arg_index = ARG_NONE; ++ DIRECTIVE *dp = &d->dir[d->count];/* pointer to next directive */ ++ ++ /* Initialize the next directive. */ ++ dp->dir_start = cp - 1; ++ dp->flags = 0; ++ dp->width_start = NULL; ++ dp->width_end = NULL; ++ dp->width_arg_index = ARG_NONE; ++ dp->precision_start = NULL; ++ dp->precision_end = NULL; ++ dp->precision_arg_index = ARG_NONE; ++ dp->arg_index = ARG_NONE; ++ ++ /* Test for positional argument. */ ++ if (*cp >= '0' && *cp <= '9') ++ { ++ const CHAR_T *np; ++ ++ for (np = cp; *np >= '0' && *np <= '9'; np++) ++ ; ++ if (*np == '$') ++ { ++ size_t n = 0; ++ ++ for (np = cp; *np >= '0' && *np <= '9'; np++) ++ n = xsum (xtimes (n, 10), *np - '0'); ++ if (n == 0) ++ /* Positional argument 0. */ ++ goto error; ++ if (size_overflow_p (n)) ++ /* n too large, would lead to out of memory later. */ ++ goto error; ++ arg_index = n - 1; ++ cp = np + 1; ++ } ++ } ++ ++ /* Read the flags. */ ++ for (;;) ++ { ++ if (*cp == '\'') ++ { ++ dp->flags |= FLAG_GROUP; ++ cp++; ++ } ++ else if (*cp == '-') ++ { ++ dp->flags |= FLAG_LEFT; ++ cp++; ++ } ++ else if (*cp == '+') ++ { ++ dp->flags |= FLAG_SHOWSIGN; ++ cp++; ++ } ++ else if (*cp == ' ') ++ { ++ dp->flags |= FLAG_SPACE; ++ cp++; ++ } ++ else if (*cp == '#') ++ { ++ dp->flags |= FLAG_ALT; ++ cp++; ++ } ++ else if (*cp == '0') ++ { ++ dp->flags |= FLAG_ZERO; ++ cp++; ++ } ++ else ++ break; ++ } ++ ++ /* Parse the field width. */ ++ if (*cp == '*') ++ { ++ dp->width_start = cp; ++ cp++; ++ dp->width_end = cp; ++ if (max_width_length < 1) ++ max_width_length = 1; ++ ++ /* Test for positional argument. */ ++ if (*cp >= '0' && *cp <= '9') ++ { ++ const CHAR_T *np; ++ ++ for (np = cp; *np >= '0' && *np <= '9'; np++) ++ ; ++ if (*np == '$') ++ { ++ size_t n = 0; ++ ++ for (np = cp; *np >= '0' && *np <= '9'; np++) ++ n = xsum (xtimes (n, 10), *np - '0'); ++ if (n == 0) ++ /* Positional argument 0. */ ++ goto error; ++ if (size_overflow_p (n)) ++ /* n too large, would lead to out of memory later. */ ++ goto error; ++ dp->width_arg_index = n - 1; ++ cp = np + 1; ++ } ++ } ++ if (dp->width_arg_index == ARG_NONE) ++ { ++ dp->width_arg_index = arg_posn++; ++ if (dp->width_arg_index == ARG_NONE) ++ /* arg_posn wrapped around. */ ++ goto error; ++ } ++ REGISTER_ARG (dp->width_arg_index, TYPE_INT); ++ } ++ else if (*cp >= '0' && *cp <= '9') ++ { ++ size_t width_length; ++ ++ dp->width_start = cp; ++ for (; *cp >= '0' && *cp <= '9'; cp++) ++ ; ++ dp->width_end = cp; ++ width_length = dp->width_end - dp->width_start; ++ if (max_width_length < width_length) ++ max_width_length = width_length; ++ } ++ ++ /* Parse the precision. */ ++ if (*cp == '.') ++ { ++ cp++; ++ if (*cp == '*') ++ { ++ dp->precision_start = cp - 1; ++ cp++; ++ dp->precision_end = cp; ++ if (max_precision_length < 2) ++ max_precision_length = 2; ++ ++ /* Test for positional argument. */ ++ if (*cp >= '0' && *cp <= '9') ++ { ++ const CHAR_T *np; ++ ++ for (np = cp; *np >= '0' && *np <= '9'; np++) ++ ; ++ if (*np == '$') ++ { ++ size_t n = 0; ++ ++ for (np = cp; *np >= '0' && *np <= '9'; np++) ++ n = xsum (xtimes (n, 10), *np - '0'); ++ if (n == 0) ++ /* Positional argument 0. */ ++ goto error; ++ if (size_overflow_p (n)) ++ /* n too large, would lead to out of memory ++ later. */ ++ goto error; ++ dp->precision_arg_index = n - 1; ++ cp = np + 1; ++ } ++ } ++ if (dp->precision_arg_index == ARG_NONE) ++ { ++ dp->precision_arg_index = arg_posn++; ++ if (dp->precision_arg_index == ARG_NONE) ++ /* arg_posn wrapped around. */ ++ goto error; ++ } ++ REGISTER_ARG (dp->precision_arg_index, TYPE_INT); ++ } ++ else ++ { ++ size_t precision_length; ++ ++ dp->precision_start = cp - 1; ++ for (; *cp >= '0' && *cp <= '9'; cp++) ++ ; ++ dp->precision_end = cp; ++ precision_length = dp->precision_end - dp->precision_start; ++ if (max_precision_length < precision_length) ++ max_precision_length = precision_length; ++ } ++ } ++ ++ { ++ arg_type type; ++ ++ /* Parse argument type/size specifiers. */ ++ { ++ int flags = 0; ++ ++ for (;;) ++ { ++ if (*cp == 'h') ++ { ++ flags |= (1 << (flags & 1)); ++ cp++; ++ } ++ else if (*cp == 'L') ++ { ++ flags |= 4; ++ cp++; ++ } ++ else if (*cp == 'l') ++ { ++ flags += 8; ++ cp++; ++ } ++#ifdef HAVE_INTMAX_T ++ else if (*cp == 'j') ++ { ++ if (sizeof (intmax_t) > sizeof (long)) ++ { ++ /* intmax_t = long long */ ++ flags += 16; ++ } ++ else if (sizeof (intmax_t) > sizeof (int)) ++ { ++ /* intmax_t = long */ ++ flags += 8; ++ } ++ cp++; ++ } ++#endif ++ else if (*cp == 'z' || *cp == 'Z') ++ { ++ /* 'z' is standardized in ISO C 99, but glibc uses 'Z' ++ because the warning facility in gcc-2.95.2 understands ++ only 'Z' (see gcc-2.95.2/gcc/c-common.c:1784). */ ++ if (sizeof (size_t) > sizeof (long)) ++ { ++ /* size_t = long long */ ++ flags += 16; ++ } ++ else if (sizeof (size_t) > sizeof (int)) ++ { ++ /* size_t = long */ ++ flags += 8; ++ } ++ cp++; ++ } ++ else if (*cp == 't') ++ { ++ if (sizeof (ptrdiff_t) > sizeof (long)) ++ { ++ /* ptrdiff_t = long long */ ++ flags += 16; ++ } ++ else if (sizeof (ptrdiff_t) > sizeof (int)) ++ { ++ /* ptrdiff_t = long */ ++ flags += 8; ++ } ++ cp++; ++ } ++ else ++ break; ++ } ++ ++ /* Read the conversion character. */ ++ c = *cp++; ++ switch (c) ++ { ++ case 'd': case 'i': ++#ifdef HAVE_LONG_LONG ++ if (flags >= 16 || (flags & 4)) ++ type = TYPE_LONGLONGINT; ++ else ++#endif ++ if (flags >= 8) ++ type = TYPE_LONGINT; ++ else if (flags & 2) ++ type = TYPE_SCHAR; ++ else if (flags & 1) ++ type = TYPE_SHORT; ++ else ++ type = TYPE_INT; ++ break; ++ case 'o': case 'u': case 'x': case 'X': ++#ifdef HAVE_LONG_LONG ++ if (flags >= 16 || (flags & 4)) ++ type = TYPE_ULONGLONGINT; ++ else ++#endif ++ if (flags >= 8) ++ type = TYPE_ULONGINT; ++ else if (flags & 2) ++ type = TYPE_UCHAR; ++ else if (flags & 1) ++ type = TYPE_USHORT; ++ else ++ type = TYPE_UINT; ++ break; ++ case 'f': case 'F': case 'e': case 'E': case 'g': case 'G': ++ case 'a': case 'A': ++#ifdef HAVE_LONG_DOUBLE ++ if (flags >= 16 || (flags & 4)) ++ type = TYPE_LONGDOUBLE; ++ else ++#endif ++ type = TYPE_DOUBLE; ++ break; ++ case 'c': ++ if (flags >= 8) ++#ifdef HAVE_WINT_T ++ type = TYPE_WIDE_CHAR; ++#else ++ goto error; ++#endif ++ else ++ type = TYPE_CHAR; ++ break; ++#ifdef HAVE_WINT_T ++ case 'C': ++ type = TYPE_WIDE_CHAR; ++ c = 'c'; ++ break; ++#endif ++ case 's': ++ if (flags >= 8) ++#ifdef HAVE_WCHAR_T ++ type = TYPE_WIDE_STRING; ++#else ++ goto error; ++#endif ++ else ++ type = TYPE_STRING; ++ break; ++#ifdef HAVE_WCHAR_T ++ case 'S': ++ type = TYPE_WIDE_STRING; ++ c = 's'; ++ break; ++#endif ++ case 'p': ++ type = TYPE_POINTER; ++ break; ++ case 'n': ++#ifdef HAVE_LONG_LONG ++ if (flags >= 16 || (flags & 4)) ++ type = TYPE_COUNT_LONGLONGINT_POINTER; ++ else ++#endif ++ if (flags >= 8) ++ type = TYPE_COUNT_LONGINT_POINTER; ++ else if (flags & 2) ++ type = TYPE_COUNT_SCHAR_POINTER; ++ else if (flags & 1) ++ type = TYPE_COUNT_SHORT_POINTER; ++ else ++ type = TYPE_COUNT_INT_POINTER; ++ break; ++ case '%': ++ type = TYPE_NONE; ++ break; ++ default: ++ /* Unknown conversion character. */ ++ goto error; ++ } ++ } ++ ++ if (type != TYPE_NONE) ++ { ++ dp->arg_index = arg_index; ++ if (dp->arg_index == ARG_NONE) ++ { ++ dp->arg_index = arg_posn++; ++ if (dp->arg_index == ARG_NONE) ++ /* arg_posn wrapped around. */ ++ goto error; ++ } ++ REGISTER_ARG (dp->arg_index, type); ++ } ++ dp->conversion = c; ++ dp->dir_end = cp; ++ } ++ ++ d->count++; ++ if (d->count >= d_allocated) ++ { ++ size_t memory_size; ++ DIRECTIVE *memory; ++ ++ d_allocated = xtimes (d_allocated, 2); ++ memory_size = xtimes (d_allocated, sizeof (DIRECTIVE)); ++ if (size_overflow_p (memory_size)) ++ /* Overflow, would lead to out of memory. */ ++ goto error; ++ memory = realloc (d->dir, memory_size); ++ if (memory == NULL) ++ /* Out of memory. */ ++ goto error; ++ d->dir = memory; ++ } ++ } ++ } ++ d->dir[d->count].dir_start = cp; ++ ++ d->max_width_length = max_width_length; ++ d->max_precision_length = max_precision_length; ++ return 0; ++ ++error: ++ if (a->arg) ++ free (a->arg); ++ if (d->dir) ++ free (d->dir); ++ return -1; ++} ++ ++#undef DIRECTIVES ++#undef DIRECTIVE ++#undef CHAR_T ++#undef PRINTF_PARSE +--- lrzsz-0.12.20.safe/intl/printf-parse.h 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/printf-parse.h 2004-09-12 14:40:34.628706592 -0400 +@@ -0,0 +1,75 @@ ++/* Parse printf format string. ++ Copyright (C) 1999, 2002-2003 Free Software Foundation, Inc. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++#ifndef _PRINTF_PARSE_H ++#define _PRINTF_PARSE_H ++ ++#include "printf-args.h" ++ ++ ++/* Flags */ ++#define FLAG_GROUP 1 /* ' flag */ ++#define FLAG_LEFT 2 /* - flag */ ++#define FLAG_SHOWSIGN 4 /* + flag */ ++#define FLAG_SPACE 8 /* space flag */ ++#define FLAG_ALT 16 /* # flag */ ++#define FLAG_ZERO 32 ++ ++/* arg_index value indicating that no argument is consumed. */ ++#define ARG_NONE (~(size_t)0) ++ ++/* A parsed directive. */ ++typedef struct ++{ ++ const char* dir_start; ++ const char* dir_end; ++ int flags; ++ const char* width_start; ++ const char* width_end; ++ size_t width_arg_index; ++ const char* precision_start; ++ const char* precision_end; ++ size_t precision_arg_index; ++ char conversion; /* d i o u x X f e E g G c s p n U % but not C S */ ++ size_t arg_index; ++} ++char_directive; ++ ++/* A parsed format string. */ ++typedef struct ++{ ++ size_t count; ++ char_directive *dir; ++ size_t max_width_length; ++ size_t max_precision_length; ++} ++char_directives; ++ ++ ++/* Parses the format string. Fills in the number N of directives, and fills ++ in directives[0], ..., directives[N-1], and sets directives[N].dir_start ++ to the end of the format string. Also fills in the arg_type fields of the ++ arguments and the needed count of arguments. */ ++#ifdef STATIC ++STATIC ++#else ++extern ++#endif ++int printf_parse (const char *format, char_directives *d, arguments *a); ++ ++#endif /* _PRINTF_PARSE_H */ +--- lrzsz-0.12.20.safe/intl/ref-add.sin 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/ref-add.sin 2004-09-12 14:40:34.633705832 -0400 +@@ -0,0 +1,31 @@ ++# Add this package to a list of references stored in a text file. ++# ++# Copyright (C) 2000 Free Software Foundation, Inc. ++# ++# This program is free software; you can redistribute it and/or modify it ++# under the terms of the GNU Library General Public License as published ++# by the Free Software Foundation; either version 2, or (at your option) ++# any later version. ++# ++# This program is distributed in the hope that it will be useful, ++# but WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++# Library General Public License for more details. ++# ++# You should have received a copy of the GNU Library General Public ++# License along with this program; if not, write to the Free Software ++# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++# USA. ++# ++# Written by Bruno Haible . ++# ++/^# Packages using this file: / { ++ s/# Packages using this file:// ++ ta ++ :a ++ s/ @PACKAGE@ / @PACKAGE@ / ++ tb ++ s/ $/ @PACKAGE@ / ++ :b ++ s/^/# Packages using this file:/ ++} +--- lrzsz-0.12.20.safe/intl/ref-del.sin 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/ref-del.sin 2004-09-12 14:40:34.638705072 -0400 +@@ -0,0 +1,26 @@ ++# Remove this package from a list of references stored in a text file. ++# ++# Copyright (C) 2000 Free Software Foundation, Inc. ++# ++# This program is free software; you can redistribute it and/or modify it ++# under the terms of the GNU Library General Public License as published ++# by the Free Software Foundation; either version 2, or (at your option) ++# any later version. ++# ++# This program is distributed in the hope that it will be useful, ++# but WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++# Library General Public License for more details. ++# ++# You should have received a copy of the GNU Library General Public ++# License along with this program; if not, write to the Free Software ++# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++# USA. ++# ++# Written by Bruno Haible . ++# ++/^# Packages using this file: / { ++ s/# Packages using this file:// ++ s/ @PACKAGE@ / / ++ s/^/# Packages using this file:/ ++} +--- lrzsz-0.12.20.safe/intl/relocatable.c 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/relocatable.c 2004-09-12 14:40:34.644704160 -0400 +@@ -0,0 +1,449 @@ ++/* Provide relocatable packages. ++ Copyright (C) 2003 Free Software Foundation, Inc. ++ Written by Bruno Haible , 2003. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++ ++/* Tell glibc's to provide a prototype for getline(). ++ This must come before because may include ++ , and once has been included, it's too late. */ ++#ifndef _GNU_SOURCE ++# define _GNU_SOURCE 1 ++#endif ++ ++#ifdef HAVE_CONFIG_H ++# include "config.h" ++#endif ++ ++/* Specification. */ ++#include "relocatable.h" ++ ++#if ENABLE_RELOCATABLE ++ ++#include ++#include ++#include ++#include ++ ++#ifdef NO_XMALLOC ++# define xmalloc malloc ++#else ++# include "xalloc.h" ++#endif ++ ++#if defined _WIN32 || defined __WIN32__ ++# define WIN32_LEAN_AND_MEAN ++# include ++#endif ++ ++#if DEPENDS_ON_LIBCHARSET ++# include ++#endif ++#if DEPENDS_ON_LIBICONV && HAVE_ICONV ++# include ++#endif ++#if DEPENDS_ON_LIBINTL && ENABLE_NLS ++# include ++#endif ++ ++/* Faked cheap 'bool'. */ ++#undef bool ++#undef false ++#undef true ++#define bool int ++#define false 0 ++#define true 1 ++ ++/* Pathname support. ++ ISSLASH(C) tests whether C is a directory separator character. ++ IS_PATH_WITH_DIR(P) tests whether P contains a directory specification. ++ */ ++#if defined _WIN32 || defined __WIN32__ || defined __EMX__ || defined __DJGPP__ ++ /* Win32, OS/2, DOS */ ++# define ISSLASH(C) ((C) == '/' || (C) == '\\') ++# define HAS_DEVICE(P) \ ++ ((((P)[0] >= 'A' && (P)[0] <= 'Z') || ((P)[0] >= 'a' && (P)[0] <= 'z')) \ ++ && (P)[1] == ':') ++# define IS_PATH_WITH_DIR(P) \ ++ (strchr (P, '/') != NULL || strchr (P, '\\') != NULL || HAS_DEVICE (P)) ++# define FILESYSTEM_PREFIX_LEN(P) (HAS_DEVICE (P) ? 2 : 0) ++#else ++ /* Unix */ ++# define ISSLASH(C) ((C) == '/') ++# define IS_PATH_WITH_DIR(P) (strchr (P, '/') != NULL) ++# define FILESYSTEM_PREFIX_LEN(P) 0 ++#endif ++ ++/* Original installation prefix. */ ++static char *orig_prefix; ++static size_t orig_prefix_len; ++/* Current installation prefix. */ ++static char *curr_prefix; ++static size_t curr_prefix_len; ++/* These prefixes do not end in a slash. Anything that will be concatenated ++ to them must start with a slash. */ ++ ++/* Sets the original and the current installation prefix of this module. ++ Relocation simply replaces a pathname starting with the original prefix ++ by the corresponding pathname with the current prefix instead. Both ++ prefixes should be directory names without trailing slash (i.e. use "" ++ instead of "/"). */ ++static void ++set_this_relocation_prefix (const char *orig_prefix_arg, ++ const char *curr_prefix_arg) ++{ ++ if (orig_prefix_arg != NULL && curr_prefix_arg != NULL ++ /* Optimization: if orig_prefix and curr_prefix are equal, the ++ relocation is a nop. */ ++ && strcmp (orig_prefix_arg, curr_prefix_arg) != 0) ++ { ++ /* Duplicate the argument strings. */ ++ char *memory; ++ ++ orig_prefix_len = strlen (orig_prefix_arg); ++ curr_prefix_len = strlen (curr_prefix_arg); ++ memory = (char *) xmalloc (orig_prefix_len + 1 + curr_prefix_len + 1); ++#ifdef NO_XMALLOC ++ if (memory != NULL) ++#endif ++ { ++ memcpy (memory, orig_prefix_arg, orig_prefix_len + 1); ++ orig_prefix = memory; ++ memory += orig_prefix_len + 1; ++ memcpy (memory, curr_prefix_arg, curr_prefix_len + 1); ++ curr_prefix = memory; ++ return; ++ } ++ } ++ orig_prefix = NULL; ++ curr_prefix = NULL; ++ /* Don't worry about wasted memory here - this function is usually only ++ called once. */ ++} ++ ++/* Sets the original and the current installation prefix of the package. ++ Relocation simply replaces a pathname starting with the original prefix ++ by the corresponding pathname with the current prefix instead. Both ++ prefixes should be directory names without trailing slash (i.e. use "" ++ instead of "/"). */ ++void ++set_relocation_prefix (const char *orig_prefix_arg, const char *curr_prefix_arg) ++{ ++ set_this_relocation_prefix (orig_prefix_arg, curr_prefix_arg); ++ ++ /* Now notify all dependent libraries. */ ++#if DEPENDS_ON_LIBCHARSET ++ libcharset_set_relocation_prefix (orig_prefix_arg, curr_prefix_arg); ++#endif ++#if DEPENDS_ON_LIBICONV && HAVE_ICONV && _LIBICONV_VERSION >= 0x0109 ++ libiconv_set_relocation_prefix (orig_prefix_arg, curr_prefix_arg); ++#endif ++#if DEPENDS_ON_LIBINTL && ENABLE_NLS && defined libintl_set_relocation_prefix ++ libintl_set_relocation_prefix (orig_prefix_arg, curr_prefix_arg); ++#endif ++} ++ ++#if !defined IN_LIBRARY || (defined PIC && defined INSTALLDIR) ++ ++/* Convenience function: ++ Computes the current installation prefix, based on the original ++ installation prefix, the original installation directory of a particular ++ file, and the current pathname of this file. Returns NULL upon failure. */ ++#ifdef IN_LIBRARY ++#define compute_curr_prefix local_compute_curr_prefix ++static ++#endif ++const char * ++compute_curr_prefix (const char *orig_installprefix, ++ const char *orig_installdir, ++ const char *curr_pathname) ++{ ++ const char *curr_installdir; ++ const char *rel_installdir; ++ ++ if (curr_pathname == NULL) ++ return NULL; ++ ++ /* Determine the relative installation directory, relative to the prefix. ++ This is simply the difference between orig_installprefix and ++ orig_installdir. */ ++ if (strncmp (orig_installprefix, orig_installdir, strlen (orig_installprefix)) ++ != 0) ++ /* Shouldn't happen - nothing should be installed outside $(prefix). */ ++ return NULL; ++ rel_installdir = orig_installdir + strlen (orig_installprefix); ++ ++ /* Determine the current installation directory. */ ++ { ++ const char *p_base = curr_pathname + FILESYSTEM_PREFIX_LEN (curr_pathname); ++ const char *p = curr_pathname + strlen (curr_pathname); ++ char *q; ++ ++ while (p > p_base) ++ { ++ p--; ++ if (ISSLASH (*p)) ++ break; ++ } ++ ++ q = (char *) xmalloc (p - curr_pathname + 1); ++#ifdef NO_XMALLOC ++ if (q == NULL) ++ return NULL; ++#endif ++ memcpy (q, curr_pathname, p - curr_pathname); ++ q[p - curr_pathname] = '\0'; ++ curr_installdir = q; ++ } ++ ++ /* Compute the current installation prefix by removing the trailing ++ rel_installdir from it. */ ++ { ++ const char *rp = rel_installdir + strlen (rel_installdir); ++ const char *cp = curr_installdir + strlen (curr_installdir); ++ const char *cp_base = ++ curr_installdir + FILESYSTEM_PREFIX_LEN (curr_installdir); ++ ++ while (rp > rel_installdir && cp > cp_base) ++ { ++ bool same = false; ++ const char *rpi = rp; ++ const char *cpi = cp; ++ ++ while (rpi > rel_installdir && cpi > cp_base) ++ { ++ rpi--; ++ cpi--; ++ if (ISSLASH (*rpi) || ISSLASH (*cpi)) ++ { ++ if (ISSLASH (*rpi) && ISSLASH (*cpi)) ++ same = true; ++ break; ++ } ++#if defined _WIN32 || defined __WIN32__ || defined __EMX__ || defined __DJGPP__ ++ /* Win32, OS/2, DOS - case insignificant filesystem */ ++ if ((*rpi >= 'a' && *rpi <= 'z' ? *rpi - 'a' + 'A' : *rpi) ++ != (*cpi >= 'a' && *cpi <= 'z' ? *cpi - 'a' + 'A' : *cpi)) ++ break; ++#else ++ if (*rpi != *cpi) ++ break; ++#endif ++ } ++ if (!same) ++ break; ++ /* The last pathname component was the same. opi and cpi now point ++ to the slash before it. */ ++ rp = rpi; ++ cp = cpi; ++ } ++ ++ if (rp > rel_installdir) ++ /* Unexpected: The curr_installdir does not end with rel_installdir. */ ++ return NULL; ++ ++ { ++ size_t curr_prefix_len = cp - curr_installdir; ++ char *curr_prefix; ++ ++ curr_prefix = (char *) xmalloc (curr_prefix_len + 1); ++#ifdef NO_XMALLOC ++ if (curr_prefix == NULL) ++ return NULL; ++#endif ++ memcpy (curr_prefix, curr_installdir, curr_prefix_len); ++ curr_prefix[curr_prefix_len] = '\0'; ++ ++ return curr_prefix; ++ } ++ } ++} ++ ++#endif /* !IN_LIBRARY || PIC */ ++ ++#if defined PIC && defined INSTALLDIR ++ ++/* Full pathname of shared library, or NULL. */ ++static char *shared_library_fullname; ++ ++#if defined _WIN32 || defined __WIN32__ ++ ++/* Determine the full pathname of the shared library when it is loaded. */ ++ ++BOOL WINAPI ++DllMain (HINSTANCE module_handle, DWORD event, LPVOID reserved) ++{ ++ (void) reserved; ++ ++ if (event == DLL_PROCESS_ATTACH) ++ { ++ /* The DLL is being loaded into an application's address range. */ ++ static char location[MAX_PATH]; ++ ++ if (!GetModuleFileName (module_handle, location, sizeof (location))) ++ /* Shouldn't happen. */ ++ return FALSE; ++ ++ if (!IS_PATH_WITH_DIR (location)) ++ /* Shouldn't happen. */ ++ return FALSE; ++ ++ shared_library_fullname = strdup (location); ++ } ++ ++ return TRUE; ++} ++ ++#else /* Unix */ ++ ++static void ++find_shared_library_fullname () ++{ ++#if defined __linux__ && __GLIBC__ >= 2 ++ /* Linux has /proc/self/maps. glibc 2 has the getline() function. */ ++ FILE *fp; ++ ++ /* Open the current process' maps file. It describes one VMA per line. */ ++ fp = fopen ("/proc/self/maps", "r"); ++ if (fp) ++ { ++ unsigned long address = (unsigned long) &find_shared_library_fullname; ++ for (;;) ++ { ++ unsigned long start, end; ++ int c; ++ ++ if (fscanf (fp, "%lx-%lx", &start, &end) != 2) ++ break; ++ if (address >= start && address <= end - 1) ++ { ++ /* Found it. Now see if this line contains a filename. */ ++ while (c = getc (fp), c != EOF && c != '\n' && c != '/') ++ continue; ++ if (c == '/') ++ { ++ size_t size; ++ int len; ++ ++ ungetc (c, fp); ++ shared_library_fullname = NULL; size = 0; ++ len = getline (&shared_library_fullname, &size, fp); ++ if (len >= 0) ++ { ++ /* Success: filled shared_library_fullname. */ ++ if (len > 0 && shared_library_fullname[len - 1] == '\n') ++ shared_library_fullname[len - 1] = '\0'; ++ } ++ } ++ break; ++ } ++ while (c = getc (fp), c != EOF && c != '\n') ++ continue; ++ } ++ fclose (fp); ++ } ++#endif ++} ++ ++#endif /* WIN32 / Unix */ ++ ++/* Return the full pathname of the current shared library. ++ Return NULL if unknown. ++ Guaranteed to work only on Linux and Woe32. */ ++static char * ++get_shared_library_fullname () ++{ ++#if !(defined _WIN32 || defined __WIN32__) ++ static bool tried_find_shared_library_fullname; ++ if (!tried_find_shared_library_fullname) ++ { ++ find_shared_library_fullname (); ++ tried_find_shared_library_fullname = true; ++ } ++#endif ++ return shared_library_fullname; ++} ++ ++#endif /* PIC */ ++ ++/* Returns the pathname, relocated according to the current installation ++ directory. */ ++const char * ++relocate (const char *pathname) ++{ ++#if defined PIC && defined INSTALLDIR ++ static int initialized; ++ ++ /* Initialization code for a shared library. */ ++ if (!initialized) ++ { ++ /* At this point, orig_prefix and curr_prefix likely have already been ++ set through the main program's set_program_name_and_installdir ++ function. This is sufficient in the case that the library has ++ initially been installed in the same orig_prefix. But we can do ++ better, to also cover the cases that 1. it has been installed ++ in a different prefix before being moved to orig_prefix and (later) ++ to curr_prefix, 2. unlike the program, it has not moved away from ++ orig_prefix. */ ++ const char *orig_installprefix = INSTALLPREFIX; ++ const char *orig_installdir = INSTALLDIR; ++ const char *curr_prefix_better; ++ ++ curr_prefix_better = ++ compute_curr_prefix (orig_installprefix, orig_installdir, ++ get_shared_library_fullname ()); ++ if (curr_prefix_better == NULL) ++ curr_prefix_better = curr_prefix; ++ ++ set_relocation_prefix (orig_installprefix, curr_prefix_better); ++ ++ initialized = 1; ++ } ++#endif ++ ++ /* Note: It is not necessary to perform case insensitive comparison here, ++ even for DOS-like filesystems, because the pathname argument was ++ typically created from the same Makefile variable as orig_prefix came ++ from. */ ++ if (orig_prefix != NULL && curr_prefix != NULL ++ && strncmp (pathname, orig_prefix, orig_prefix_len) == 0) ++ { ++ if (pathname[orig_prefix_len] == '\0') ++ /* pathname equals orig_prefix. */ ++ return curr_prefix; ++ if (ISSLASH (pathname[orig_prefix_len])) ++ { ++ /* pathname starts with orig_prefix. */ ++ const char *pathname_tail = &pathname[orig_prefix_len]; ++ char *result = ++ (char *) xmalloc (curr_prefix_len + strlen (pathname_tail) + 1); ++ ++#ifdef NO_XMALLOC ++ if (result != NULL) ++#endif ++ { ++ memcpy (result, curr_prefix, curr_prefix_len); ++ strcpy (result + curr_prefix_len, pathname_tail); ++ return result; ++ } ++ } ++ } ++ /* Nothing to relocate. */ ++ return pathname; ++} ++ ++#endif +--- lrzsz-0.12.20.safe/intl/relocatable.h 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/relocatable.h 2004-09-12 14:40:34.651703096 -0400 +@@ -0,0 +1,77 @@ ++/* Provide relocatable packages. ++ Copyright (C) 2003 Free Software Foundation, Inc. ++ Written by Bruno Haible , 2003. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++#ifndef _RELOCATABLE_H ++#define _RELOCATABLE_H ++ ++#ifdef __cplusplus ++extern "C" { ++#endif ++ ++ ++/* This can be enabled through the configure --enable-relocatable option. */ ++#if ENABLE_RELOCATABLE ++ ++/* When building a DLL, we must export some functions. Note that because ++ this is a private .h file, we don't need to use __declspec(dllimport) ++ in any case. */ ++#if defined _MSC_VER && BUILDING_DLL ++# define RELOCATABLE_DLL_EXPORTED __declspec(dllexport) ++#else ++# define RELOCATABLE_DLL_EXPORTED ++#endif ++ ++/* Sets the original and the current installation prefix of the package. ++ Relocation simply replaces a pathname starting with the original prefix ++ by the corresponding pathname with the current prefix instead. Both ++ prefixes should be directory names without trailing slash (i.e. use "" ++ instead of "/"). */ ++extern RELOCATABLE_DLL_EXPORTED void ++ set_relocation_prefix (const char *orig_prefix, ++ const char *curr_prefix); ++ ++/* Returns the pathname, relocated according to the current installation ++ directory. */ ++extern const char * relocate (const char *pathname); ++ ++/* Memory management: relocate() leaks memory, because it has to construct ++ a fresh pathname. If this is a problem because your program calls ++ relocate() frequently, think about caching the result. */ ++ ++/* Convenience function: ++ Computes the current installation prefix, based on the original ++ installation prefix, the original installation directory of a particular ++ file, and the current pathname of this file. Returns NULL upon failure. */ ++extern const char * compute_curr_prefix (const char *orig_installprefix, ++ const char *orig_installdir, ++ const char *curr_pathname); ++ ++#else ++ ++/* By default, we use the hardwired pathnames. */ ++#define relocate(pathname) (pathname) ++ ++#endif ++ ++ ++#ifdef __cplusplus ++} ++#endif ++ ++#endif /* _RELOCATABLE_H */ +--- lrzsz-0.12.20.safe/intl/textdomain.c 1998-04-26 09:22:37.000000000 -0400 ++++ lrzsz-0.12.20/intl/textdomain.c 2004-09-12 14:40:34.656702336 -0400 +@@ -1,51 +1,60 @@ +-/* Implementation of the textdomain(3) function +- Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. +- Written by Ulrich Drepper , 1995. ++/* Implementation of the textdomain(3) function. ++ Copyright (C) 1995-1998, 2000-2003 Free Software Foundation, Inc. + +- This program is free software; you can redistribute it and/or modify +- it under the terms of the GNU General Public License as published by +- the Free Software Foundation; either version 2, or (at your option) ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of +- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +- GNU General Public License for more details. ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. + +- You should have received a copy of the GNU General Public License +- along with this program; if not, write to the Free Software Foundation, +- Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ + + #ifdef HAVE_CONFIG_H + # include + #endif + +-#if defined STDC_HEADERS || defined _LIBC +-# include +-#endif ++#include ++#include + +-#if defined STDC_HEADERS || defined HAVE_STRING_H || defined _LIBC +-# include ++#ifdef _LIBC ++# include + #else +-# include +-# ifndef memcpy +-# define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num) +-# endif ++# include "libgnuintl.h" + #endif ++#include "gettextP.h" + + #ifdef _LIBC +-# include ++/* We have to handle multi-threaded applications. */ ++# include + #else +-# include "libgettext.h" ++/* Provide dummy implementation if this is outside glibc. */ ++# define __libc_rwlock_define(CLASS, NAME) ++# define __libc_rwlock_wrlock(NAME) ++# define __libc_rwlock_unlock(NAME) ++#endif ++ ++/* The internal variables in the standalone libintl.a must have different ++ names than the internal variables in GNU libc, otherwise programs ++ using libintl.a cannot be linked statically. */ ++#if !defined _LIBC ++# define _nl_default_default_domain libintl_nl_default_default_domain ++# define _nl_current_default_domain libintl_nl_current_default_domain + #endif + + /* @@ end of prolog @@ */ + + /* Name of the default text domain. */ +-extern const char _nl_default_default_domain[]; ++extern const char _nl_default_default_domain[] attribute_hidden; + + /* Default text domain in which entries for gettext(3) are to be found. */ +-extern const char *_nl_current_default_domain; ++extern const char *_nl_current_default_domain attribute_hidden; + + + /* Names for the libintl functions are a problem. They must not clash +@@ -54,50 +63,76 @@ + prefix. So we have to make a difference here. */ + #ifdef _LIBC + # define TEXTDOMAIN __textdomain +-# define strdup(str) __strdup (str) ++# ifndef strdup ++# define strdup(str) __strdup (str) ++# endif + #else +-# define TEXTDOMAIN textdomain__ ++# define TEXTDOMAIN libintl_textdomain + #endif + ++/* Lock variable to protect the global data in the gettext implementation. */ ++__libc_rwlock_define (extern, _nl_state_lock attribute_hidden) ++ + /* Set the current default message catalog to DOMAINNAME. + If DOMAINNAME is null, return the current default. + If DOMAINNAME is "", reset to the default of "messages". */ + char * +-TEXTDOMAIN (domainname) +- const char *domainname; ++TEXTDOMAIN (const char *domainname) + { +- char *old; ++ char *new_domain; ++ char *old_domain; + + /* A NULL pointer requests the current setting. */ + if (domainname == NULL) + return (char *) _nl_current_default_domain; + +- old = (char *) _nl_current_default_domain; ++ __libc_rwlock_wrlock (_nl_state_lock); ++ ++ old_domain = (char *) _nl_current_default_domain; + + /* If domain name is the null string set to default domain "messages". */ + if (domainname[0] == '\0' + || strcmp (domainname, _nl_default_default_domain) == 0) +- _nl_current_default_domain = _nl_default_default_domain; ++ { ++ _nl_current_default_domain = _nl_default_default_domain; ++ new_domain = (char *) _nl_current_default_domain; ++ } ++ else if (strcmp (domainname, old_domain) == 0) ++ /* This can happen and people will use it to signal that some ++ environment variable changed. */ ++ new_domain = old_domain; + else + { + /* If the following malloc fails `_nl_current_default_domain' + will be NULL. This value will be returned and so signals we + are out of core. */ + #if defined _LIBC || defined HAVE_STRDUP +- _nl_current_default_domain = strdup (domainname); ++ new_domain = strdup (domainname); + #else + size_t len = strlen (domainname) + 1; +- char *cp = (char *) malloc (len); +- if (cp != NULL) +- memcpy (cp, domainname, len); +- _nl_current_default_domain = cp; ++ new_domain = (char *) malloc (len); ++ if (new_domain != NULL) ++ memcpy (new_domain, domainname, len); + #endif ++ ++ if (new_domain != NULL) ++ _nl_current_default_domain = new_domain; + } + +- if (old != _nl_default_default_domain) +- free (old); ++ /* We use this possibility to signal a change of the loaded catalogs ++ since this is most likely the case and there is no other easy we ++ to do it. Do it only when the call was successful. */ ++ if (new_domain != NULL) ++ { ++ ++_nl_msg_cat_cntr; + +- return (char *) _nl_current_default_domain; ++ if (old_domain != new_domain && old_domain != _nl_default_default_domain) ++ free (old_domain); ++ } ++ ++ __libc_rwlock_unlock (_nl_state_lock); ++ ++ return new_domain; + } + + #ifdef _LIBC +--- lrzsz-0.12.20.safe/intl/vasnprintf.c 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/vasnprintf.c 2004-09-12 14:40:34.662701424 -0400 +@@ -0,0 +1,887 @@ ++/* vsprintf with automatic memory allocation. ++ Copyright (C) 1999, 2002-2003 Free Software Foundation, Inc. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++/* Tell glibc's to provide a prototype for snprintf(). ++ This must come before because may include ++ , and once has been included, it's too late. */ ++#ifndef _GNU_SOURCE ++# define _GNU_SOURCE 1 ++#endif ++ ++#ifdef HAVE_CONFIG_H ++# include ++#endif ++#ifndef IN_LIBINTL ++# include ++#endif ++ ++/* Specification. */ ++#if WIDE_CHAR_VERSION ++# include "vasnwprintf.h" ++#else ++# include "vasnprintf.h" ++#endif ++ ++#include /* snprintf(), sprintf() */ ++#include /* abort(), malloc(), realloc(), free() */ ++#include /* memcpy(), strlen() */ ++#include /* errno */ ++#include /* CHAR_BIT */ ++#include /* DBL_MAX_EXP, LDBL_MAX_EXP */ ++#if WIDE_CHAR_VERSION ++# include "wprintf-parse.h" ++#else ++# include "printf-parse.h" ++#endif ++ ++/* Checked size_t computations. */ ++#include "xsize.h" ++ ++#ifdef HAVE_WCHAR_T ++# ifdef HAVE_WCSLEN ++# define local_wcslen wcslen ++# else ++ /* Solaris 2.5.1 has wcslen() in a separate library libw.so. To avoid ++ a dependency towards this library, here is a local substitute. ++ Define this substitute only once, even if this file is included ++ twice in the same compilation unit. */ ++# ifndef local_wcslen_defined ++# define local_wcslen_defined 1 ++static size_t ++local_wcslen (const wchar_t *s) ++{ ++ const wchar_t *ptr; ++ ++ for (ptr = s; *ptr != (wchar_t) 0; ptr++) ++ ; ++ return ptr - s; ++} ++# endif ++# endif ++#endif ++ ++#if WIDE_CHAR_VERSION ++# define VASNPRINTF vasnwprintf ++# define CHAR_T wchar_t ++# define DIRECTIVE wchar_t_directive ++# define DIRECTIVES wchar_t_directives ++# define PRINTF_PARSE wprintf_parse ++# define USE_SNPRINTF 1 ++# if HAVE_DECL__SNWPRINTF ++ /* On Windows, the function swprintf() has a different signature than ++ on Unix; we use the _snwprintf() function instead. */ ++# define SNPRINTF _snwprintf ++# else ++ /* Unix. */ ++# define SNPRINTF swprintf ++# endif ++#else ++# define VASNPRINTF vasnprintf ++# define CHAR_T char ++# define DIRECTIVE char_directive ++# define DIRECTIVES char_directives ++# define PRINTF_PARSE printf_parse ++# define USE_SNPRINTF (HAVE_DECL__SNPRINTF || HAVE_SNPRINTF) ++# if HAVE_DECL__SNPRINTF ++ /* Windows. */ ++# define SNPRINTF _snprintf ++# else ++ /* Unix. */ ++# define SNPRINTF snprintf ++# endif ++#endif ++ ++CHAR_T * ++VASNPRINTF (CHAR_T *resultbuf, size_t *lengthp, const CHAR_T *format, va_list args) ++{ ++ DIRECTIVES d; ++ arguments a; ++ ++ if (PRINTF_PARSE (format, &d, &a) < 0) ++ { ++ errno = EINVAL; ++ return NULL; ++ } ++ ++#define CLEANUP() \ ++ free (d.dir); \ ++ if (a.arg) \ ++ free (a.arg); ++ ++ if (printf_fetchargs (args, &a) < 0) ++ { ++ CLEANUP (); ++ errno = EINVAL; ++ return NULL; ++ } ++ ++ { ++ size_t buf_neededlength; ++ CHAR_T *buf; ++ CHAR_T *buf_malloced; ++ const CHAR_T *cp; ++ size_t i; ++ DIRECTIVE *dp; ++ /* Output string accumulator. */ ++ CHAR_T *result; ++ size_t allocated; ++ size_t length; ++ ++ /* Allocate a small buffer that will hold a directive passed to ++ sprintf or snprintf. */ ++ buf_neededlength = ++ xsum4 (7, d.max_width_length, d.max_precision_length, 6); ++#if HAVE_ALLOCA ++ if (buf_neededlength < 4000 / sizeof (CHAR_T)) ++ { ++ buf = (CHAR_T *) alloca (buf_neededlength * sizeof (CHAR_T)); ++ buf_malloced = NULL; ++ } ++ else ++#endif ++ { ++ size_t buf_memsize = xtimes (buf_neededlength, sizeof (CHAR_T)); ++ if (size_overflow_p (buf_memsize)) ++ goto out_of_memory_1; ++ buf = (CHAR_T *) malloc (buf_memsize); ++ if (buf == NULL) ++ goto out_of_memory_1; ++ buf_malloced = buf; ++ } ++ ++ if (resultbuf != NULL) ++ { ++ result = resultbuf; ++ allocated = *lengthp; ++ } ++ else ++ { ++ result = NULL; ++ allocated = 0; ++ } ++ length = 0; ++ /* Invariants: ++ result is either == resultbuf or == NULL or malloc-allocated. ++ If length > 0, then result != NULL. */ ++ ++ /* Ensures that allocated >= needed. Aborts through a jump to ++ out_of_memory if needed is SIZE_MAX or otherwise too big. */ ++#define ENSURE_ALLOCATION(needed) \ ++ if ((needed) > allocated) \ ++ { \ ++ size_t memory_size; \ ++ CHAR_T *memory; \ ++ \ ++ allocated = (allocated > 0 ? xtimes (allocated, 2) : 12); \ ++ if ((needed) > allocated) \ ++ allocated = (needed); \ ++ memory_size = xtimes (allocated, sizeof (CHAR_T)); \ ++ if (size_overflow_p (memory_size)) \ ++ goto out_of_memory; \ ++ if (result == resultbuf || result == NULL) \ ++ memory = (CHAR_T *) malloc (memory_size); \ ++ else \ ++ memory = (CHAR_T *) realloc (result, memory_size); \ ++ if (memory == NULL) \ ++ goto out_of_memory; \ ++ if (result == resultbuf && length > 0) \ ++ memcpy (memory, result, length * sizeof (CHAR_T)); \ ++ result = memory; \ ++ } ++ ++ for (cp = format, i = 0, dp = &d.dir[0]; ; cp = dp->dir_end, i++, dp++) ++ { ++ if (cp != dp->dir_start) ++ { ++ size_t n = dp->dir_start - cp; ++ size_t augmented_length = xsum (length, n); ++ ++ ENSURE_ALLOCATION (augmented_length); ++ memcpy (result + length, cp, n * sizeof (CHAR_T)); ++ length = augmented_length; ++ } ++ if (i == d.count) ++ break; ++ ++ /* Execute a single directive. */ ++ if (dp->conversion == '%') ++ { ++ size_t augmented_length; ++ ++ if (!(dp->arg_index == ARG_NONE)) ++ abort (); ++ augmented_length = xsum (length, 1); ++ ENSURE_ALLOCATION (augmented_length); ++ result[length] = '%'; ++ length = augmented_length; ++ } ++ else ++ { ++ if (!(dp->arg_index != ARG_NONE)) ++ abort (); ++ ++ if (dp->conversion == 'n') ++ { ++ switch (a.arg[dp->arg_index].type) ++ { ++ case TYPE_COUNT_SCHAR_POINTER: ++ *a.arg[dp->arg_index].a.a_count_schar_pointer = length; ++ break; ++ case TYPE_COUNT_SHORT_POINTER: ++ *a.arg[dp->arg_index].a.a_count_short_pointer = length; ++ break; ++ case TYPE_COUNT_INT_POINTER: ++ *a.arg[dp->arg_index].a.a_count_int_pointer = length; ++ break; ++ case TYPE_COUNT_LONGINT_POINTER: ++ *a.arg[dp->arg_index].a.a_count_longint_pointer = length; ++ break; ++#ifdef HAVE_LONG_LONG ++ case TYPE_COUNT_LONGLONGINT_POINTER: ++ *a.arg[dp->arg_index].a.a_count_longlongint_pointer = length; ++ break; ++#endif ++ default: ++ abort (); ++ } ++ } ++ else ++ { ++ arg_type type = a.arg[dp->arg_index].type; ++ CHAR_T *p; ++ unsigned int prefix_count; ++ int prefixes[2]; ++#if !USE_SNPRINTF ++ size_t tmp_length; ++ CHAR_T tmpbuf[700]; ++ CHAR_T *tmp; ++ ++ /* Allocate a temporary buffer of sufficient size for calling ++ sprintf. */ ++ { ++ size_t width; ++ size_t precision; ++ ++ width = 0; ++ if (dp->width_start != dp->width_end) ++ { ++ if (dp->width_arg_index != ARG_NONE) ++ { ++ int arg; ++ ++ if (!(a.arg[dp->width_arg_index].type == TYPE_INT)) ++ abort (); ++ arg = a.arg[dp->width_arg_index].a.a_int; ++ width = (arg < 0 ? (unsigned int) (-arg) : arg); ++ } ++ else ++ { ++ const CHAR_T *digitp = dp->width_start; ++ ++ do ++ width = xsum (xtimes (width, 10), *digitp++ - '0'); ++ while (digitp != dp->width_end); ++ } ++ } ++ ++ precision = 6; ++ if (dp->precision_start != dp->precision_end) ++ { ++ if (dp->precision_arg_index != ARG_NONE) ++ { ++ int arg; ++ ++ if (!(a.arg[dp->precision_arg_index].type == TYPE_INT)) ++ abort (); ++ arg = a.arg[dp->precision_arg_index].a.a_int; ++ precision = (arg < 0 ? 0 : arg); ++ } ++ else ++ { ++ const CHAR_T *digitp = dp->precision_start + 1; ++ ++ precision = 0; ++ do ++ precision = xsum (xtimes (precision, 10), *digitp++ - '0'); ++ while (digitp != dp->precision_end); ++ } ++ } ++ ++ switch (dp->conversion) ++ { ++ ++ case 'd': case 'i': case 'u': ++# ifdef HAVE_LONG_LONG ++ if (type == TYPE_LONGLONGINT || type == TYPE_ULONGLONGINT) ++ tmp_length = ++ (unsigned int) (sizeof (unsigned long long) * CHAR_BIT ++ * 0.30103 /* binary -> decimal */ ++ * 2 /* estimate for FLAG_GROUP */ ++ ) ++ + 1 /* turn floor into ceil */ ++ + 1; /* account for leading sign */ ++ else ++# endif ++ if (type == TYPE_LONGINT || type == TYPE_ULONGINT) ++ tmp_length = ++ (unsigned int) (sizeof (unsigned long) * CHAR_BIT ++ * 0.30103 /* binary -> decimal */ ++ * 2 /* estimate for FLAG_GROUP */ ++ ) ++ + 1 /* turn floor into ceil */ ++ + 1; /* account for leading sign */ ++ else ++ tmp_length = ++ (unsigned int) (sizeof (unsigned int) * CHAR_BIT ++ * 0.30103 /* binary -> decimal */ ++ * 2 /* estimate for FLAG_GROUP */ ++ ) ++ + 1 /* turn floor into ceil */ ++ + 1; /* account for leading sign */ ++ break; ++ ++ case 'o': ++# ifdef HAVE_LONG_LONG ++ if (type == TYPE_LONGLONGINT || type == TYPE_ULONGLONGINT) ++ tmp_length = ++ (unsigned int) (sizeof (unsigned long long) * CHAR_BIT ++ * 0.333334 /* binary -> octal */ ++ ) ++ + 1 /* turn floor into ceil */ ++ + 1; /* account for leading sign */ ++ else ++# endif ++ if (type == TYPE_LONGINT || type == TYPE_ULONGINT) ++ tmp_length = ++ (unsigned int) (sizeof (unsigned long) * CHAR_BIT ++ * 0.333334 /* binary -> octal */ ++ ) ++ + 1 /* turn floor into ceil */ ++ + 1; /* account for leading sign */ ++ else ++ tmp_length = ++ (unsigned int) (sizeof (unsigned int) * CHAR_BIT ++ * 0.333334 /* binary -> octal */ ++ ) ++ + 1 /* turn floor into ceil */ ++ + 1; /* account for leading sign */ ++ break; ++ ++ case 'x': case 'X': ++# ifdef HAVE_LONG_LONG ++ if (type == TYPE_LONGLONGINT || type == TYPE_ULONGLONGINT) ++ tmp_length = ++ (unsigned int) (sizeof (unsigned long long) * CHAR_BIT ++ * 0.25 /* binary -> hexadecimal */ ++ ) ++ + 1 /* turn floor into ceil */ ++ + 2; /* account for leading sign or alternate form */ ++ else ++# endif ++ if (type == TYPE_LONGINT || type == TYPE_ULONGINT) ++ tmp_length = ++ (unsigned int) (sizeof (unsigned long) * CHAR_BIT ++ * 0.25 /* binary -> hexadecimal */ ++ ) ++ + 1 /* turn floor into ceil */ ++ + 2; /* account for leading sign or alternate form */ ++ else ++ tmp_length = ++ (unsigned int) (sizeof (unsigned int) * CHAR_BIT ++ * 0.25 /* binary -> hexadecimal */ ++ ) ++ + 1 /* turn floor into ceil */ ++ + 2; /* account for leading sign or alternate form */ ++ break; ++ ++ case 'f': case 'F': ++# ifdef HAVE_LONG_DOUBLE ++ if (type == TYPE_LONGDOUBLE) ++ tmp_length = ++ (unsigned int) (LDBL_MAX_EXP ++ * 0.30103 /* binary -> decimal */ ++ * 2 /* estimate for FLAG_GROUP */ ++ ) ++ + 1 /* turn floor into ceil */ ++ + 10; /* sign, decimal point etc. */ ++ else ++# endif ++ tmp_length = ++ (unsigned int) (DBL_MAX_EXP ++ * 0.30103 /* binary -> decimal */ ++ * 2 /* estimate for FLAG_GROUP */ ++ ) ++ + 1 /* turn floor into ceil */ ++ + 10; /* sign, decimal point etc. */ ++ tmp_length = xsum (tmp_length, precision); ++ break; ++ ++ case 'e': case 'E': case 'g': case 'G': ++ case 'a': case 'A': ++ tmp_length = ++ 12; /* sign, decimal point, exponent etc. */ ++ tmp_length = xsum (tmp_length, precision); ++ break; ++ ++ case 'c': ++# if defined HAVE_WINT_T && !WIDE_CHAR_VERSION ++ if (type == TYPE_WIDE_CHAR) ++ tmp_length = MB_CUR_MAX; ++ else ++# endif ++ tmp_length = 1; ++ break; ++ ++ case 's': ++# ifdef HAVE_WCHAR_T ++ if (type == TYPE_WIDE_STRING) ++ { ++ tmp_length = ++ local_wcslen (a.arg[dp->arg_index].a.a_wide_string); ++ ++# if !WIDE_CHAR_VERSION ++ tmp_length = xtimes (tmp_length, MB_CUR_MAX); ++# endif ++ } ++ else ++# endif ++ tmp_length = strlen (a.arg[dp->arg_index].a.a_string); ++ break; ++ ++ case 'p': ++ tmp_length = ++ (unsigned int) (sizeof (void *) * CHAR_BIT ++ * 0.25 /* binary -> hexadecimal */ ++ ) ++ + 1 /* turn floor into ceil */ ++ + 2; /* account for leading 0x */ ++ break; ++ ++ default: ++ abort (); ++ } ++ ++ if (tmp_length < width) ++ tmp_length = width; ++ ++ tmp_length = xsum (tmp_length, 1); /* account for trailing NUL */ ++ } ++ ++ if (tmp_length <= sizeof (tmpbuf) / sizeof (CHAR_T)) ++ tmp = tmpbuf; ++ else ++ { ++ size_t tmp_memsize = xtimes (tmp_length, sizeof (CHAR_T)); ++ ++ if (size_overflow_p (tmp_memsize)) ++ /* Overflow, would lead to out of memory. */ ++ goto out_of_memory; ++ tmp = (CHAR_T *) malloc (tmp_memsize); ++ if (tmp == NULL) ++ /* Out of memory. */ ++ goto out_of_memory; ++ } ++#endif ++ ++ /* Construct the format string for calling snprintf or ++ sprintf. */ ++ p = buf; ++ *p++ = '%'; ++ if (dp->flags & FLAG_GROUP) ++ *p++ = '\''; ++ if (dp->flags & FLAG_LEFT) ++ *p++ = '-'; ++ if (dp->flags & FLAG_SHOWSIGN) ++ *p++ = '+'; ++ if (dp->flags & FLAG_SPACE) ++ *p++ = ' '; ++ if (dp->flags & FLAG_ALT) ++ *p++ = '#'; ++ if (dp->flags & FLAG_ZERO) ++ *p++ = '0'; ++ if (dp->width_start != dp->width_end) ++ { ++ size_t n = dp->width_end - dp->width_start; ++ memcpy (p, dp->width_start, n * sizeof (CHAR_T)); ++ p += n; ++ } ++ if (dp->precision_start != dp->precision_end) ++ { ++ size_t n = dp->precision_end - dp->precision_start; ++ memcpy (p, dp->precision_start, n * sizeof (CHAR_T)); ++ p += n; ++ } ++ ++ switch (type) ++ { ++#ifdef HAVE_LONG_LONG ++ case TYPE_LONGLONGINT: ++ case TYPE_ULONGLONGINT: ++ *p++ = 'l'; ++ /*FALLTHROUGH*/ ++#endif ++ case TYPE_LONGINT: ++ case TYPE_ULONGINT: ++#ifdef HAVE_WINT_T ++ case TYPE_WIDE_CHAR: ++#endif ++#ifdef HAVE_WCHAR_T ++ case TYPE_WIDE_STRING: ++#endif ++ *p++ = 'l'; ++ break; ++#ifdef HAVE_LONG_DOUBLE ++ case TYPE_LONGDOUBLE: ++ *p++ = 'L'; ++ break; ++#endif ++ default: ++ break; ++ } ++ *p = dp->conversion; ++#if USE_SNPRINTF ++ p[1] = '%'; ++ p[2] = 'n'; ++ p[3] = '\0'; ++#else ++ p[1] = '\0'; ++#endif ++ ++ /* Construct the arguments for calling snprintf or sprintf. */ ++ prefix_count = 0; ++ if (dp->width_arg_index != ARG_NONE) ++ { ++ if (!(a.arg[dp->width_arg_index].type == TYPE_INT)) ++ abort (); ++ prefixes[prefix_count++] = a.arg[dp->width_arg_index].a.a_int; ++ } ++ if (dp->precision_arg_index != ARG_NONE) ++ { ++ if (!(a.arg[dp->precision_arg_index].type == TYPE_INT)) ++ abort (); ++ prefixes[prefix_count++] = a.arg[dp->precision_arg_index].a.a_int; ++ } ++ ++#if USE_SNPRINTF ++ /* Prepare checking whether snprintf returns the count ++ via %n. */ ++ ENSURE_ALLOCATION (xsum (length, 1)); ++ result[length] = '\0'; ++#endif ++ ++ for (;;) ++ { ++ size_t maxlen; ++ int count; ++ int retcount; ++ ++ maxlen = allocated - length; ++ count = -1; ++ retcount = 0; ++ ++#if USE_SNPRINTF ++# define SNPRINTF_BUF(arg) \ ++ switch (prefix_count) \ ++ { \ ++ case 0: \ ++ retcount = SNPRINTF (result + length, maxlen, buf, \ ++ arg, &count); \ ++ break; \ ++ case 1: \ ++ retcount = SNPRINTF (result + length, maxlen, buf, \ ++ prefixes[0], arg, &count); \ ++ break; \ ++ case 2: \ ++ retcount = SNPRINTF (result + length, maxlen, buf, \ ++ prefixes[0], prefixes[1], arg, \ ++ &count); \ ++ break; \ ++ default: \ ++ abort (); \ ++ } ++#else ++# define SNPRINTF_BUF(arg) \ ++ switch (prefix_count) \ ++ { \ ++ case 0: \ ++ count = sprintf (tmp, buf, arg); \ ++ break; \ ++ case 1: \ ++ count = sprintf (tmp, buf, prefixes[0], arg); \ ++ break; \ ++ case 2: \ ++ count = sprintf (tmp, buf, prefixes[0], prefixes[1],\ ++ arg); \ ++ break; \ ++ default: \ ++ abort (); \ ++ } ++#endif ++ ++ switch (type) ++ { ++ case TYPE_SCHAR: ++ { ++ int arg = a.arg[dp->arg_index].a.a_schar; ++ SNPRINTF_BUF (arg); ++ } ++ break; ++ case TYPE_UCHAR: ++ { ++ unsigned int arg = a.arg[dp->arg_index].a.a_uchar; ++ SNPRINTF_BUF (arg); ++ } ++ break; ++ case TYPE_SHORT: ++ { ++ int arg = a.arg[dp->arg_index].a.a_short; ++ SNPRINTF_BUF (arg); ++ } ++ break; ++ case TYPE_USHORT: ++ { ++ unsigned int arg = a.arg[dp->arg_index].a.a_ushort; ++ SNPRINTF_BUF (arg); ++ } ++ break; ++ case TYPE_INT: ++ { ++ int arg = a.arg[dp->arg_index].a.a_int; ++ SNPRINTF_BUF (arg); ++ } ++ break; ++ case TYPE_UINT: ++ { ++ unsigned int arg = a.arg[dp->arg_index].a.a_uint; ++ SNPRINTF_BUF (arg); ++ } ++ break; ++ case TYPE_LONGINT: ++ { ++ long int arg = a.arg[dp->arg_index].a.a_longint; ++ SNPRINTF_BUF (arg); ++ } ++ break; ++ case TYPE_ULONGINT: ++ { ++ unsigned long int arg = a.arg[dp->arg_index].a.a_ulongint; ++ SNPRINTF_BUF (arg); ++ } ++ break; ++#ifdef HAVE_LONG_LONG ++ case TYPE_LONGLONGINT: ++ { ++ long long int arg = a.arg[dp->arg_index].a.a_longlongint; ++ SNPRINTF_BUF (arg); ++ } ++ break; ++ case TYPE_ULONGLONGINT: ++ { ++ unsigned long long int arg = a.arg[dp->arg_index].a.a_ulonglongint; ++ SNPRINTF_BUF (arg); ++ } ++ break; ++#endif ++ case TYPE_DOUBLE: ++ { ++ double arg = a.arg[dp->arg_index].a.a_double; ++ SNPRINTF_BUF (arg); ++ } ++ break; ++#ifdef HAVE_LONG_DOUBLE ++ case TYPE_LONGDOUBLE: ++ { ++ long double arg = a.arg[dp->arg_index].a.a_longdouble; ++ SNPRINTF_BUF (arg); ++ } ++ break; ++#endif ++ case TYPE_CHAR: ++ { ++ int arg = a.arg[dp->arg_index].a.a_char; ++ SNPRINTF_BUF (arg); ++ } ++ break; ++#ifdef HAVE_WINT_T ++ case TYPE_WIDE_CHAR: ++ { ++ wint_t arg = a.arg[dp->arg_index].a.a_wide_char; ++ SNPRINTF_BUF (arg); ++ } ++ break; ++#endif ++ case TYPE_STRING: ++ { ++ const char *arg = a.arg[dp->arg_index].a.a_string; ++ SNPRINTF_BUF (arg); ++ } ++ break; ++#ifdef HAVE_WCHAR_T ++ case TYPE_WIDE_STRING: ++ { ++ const wchar_t *arg = a.arg[dp->arg_index].a.a_wide_string; ++ SNPRINTF_BUF (arg); ++ } ++ break; ++#endif ++ case TYPE_POINTER: ++ { ++ void *arg = a.arg[dp->arg_index].a.a_pointer; ++ SNPRINTF_BUF (arg); ++ } ++ break; ++ default: ++ abort (); ++ } ++ ++#if USE_SNPRINTF ++ /* Portability: Not all implementations of snprintf() ++ are ISO C 99 compliant. Determine the number of ++ bytes that snprintf() has produced or would have ++ produced. */ ++ if (count >= 0) ++ { ++ /* Verify that snprintf() has NUL-terminated its ++ result. */ ++ if (count < maxlen && result[length + count] != '\0') ++ abort (); ++ /* Portability hack. */ ++ if (retcount > count) ++ count = retcount; ++ } ++ else ++ { ++ /* snprintf() doesn't understand the '%n' ++ directive. */ ++ if (p[1] != '\0') ++ { ++ /* Don't use the '%n' directive; instead, look ++ at the snprintf() return value. */ ++ p[1] = '\0'; ++ continue; ++ } ++ else ++ { ++ /* Look at the snprintf() return value. */ ++ if (retcount < 0) ++ { ++ /* HP-UX 10.20 snprintf() is doubly deficient: ++ It doesn't understand the '%n' directive, ++ *and* it returns -1 (rather than the length ++ that would have been required) when the ++ buffer is too small. */ ++ size_t bigger_need = ++ xsum (xtimes (allocated, 2), 12); ++ ENSURE_ALLOCATION (bigger_need); ++ continue; ++ } ++ else ++ count = retcount; ++ } ++ } ++#endif ++ ++ /* Attempt to handle failure. */ ++ if (count < 0) ++ { ++ if (!(result == resultbuf || result == NULL)) ++ free (result); ++ if (buf_malloced != NULL) ++ free (buf_malloced); ++ CLEANUP (); ++ errno = EINVAL; ++ return NULL; ++ } ++ ++#if !USE_SNPRINTF ++ if (count >= tmp_length) ++ /* tmp_length was incorrectly calculated - fix the ++ code above! */ ++ abort (); ++#endif ++ ++ /* Make room for the result. */ ++ if (count >= maxlen) ++ { ++ /* Need at least count bytes. But allocate ++ proportionally, to avoid looping eternally if ++ snprintf() reports a too small count. */ ++ size_t n = ++ xmax (xsum (length, count), xtimes (allocated, 2)); ++ ++ ENSURE_ALLOCATION (n); ++#if USE_SNPRINTF ++ continue; ++#endif ++ } ++ ++#if USE_SNPRINTF ++ /* The snprintf() result did fit. */ ++#else ++ /* Append the sprintf() result. */ ++ memcpy (result + length, tmp, count * sizeof (CHAR_T)); ++ if (tmp != tmpbuf) ++ free (tmp); ++#endif ++ ++ length += count; ++ break; ++ } ++ } ++ } ++ } ++ ++ /* Add the final NUL. */ ++ ENSURE_ALLOCATION (xsum (length, 1)); ++ result[length] = '\0'; ++ ++ if (result != resultbuf && length + 1 < allocated) ++ { ++ /* Shrink the allocated memory if possible. */ ++ CHAR_T *memory; ++ ++ memory = (CHAR_T *) realloc (result, (length + 1) * sizeof (CHAR_T)); ++ if (memory != NULL) ++ result = memory; ++ } ++ ++ if (buf_malloced != NULL) ++ free (buf_malloced); ++ CLEANUP (); ++ *lengthp = length; ++ return result; ++ ++ out_of_memory: ++ if (!(result == resultbuf || result == NULL)) ++ free (result); ++ if (buf_malloced != NULL) ++ free (buf_malloced); ++ out_of_memory_1: ++ CLEANUP (); ++ errno = ENOMEM; ++ return NULL; ++ } ++} ++ ++#undef SNPRINTF ++#undef USE_SNPRINTF ++#undef PRINTF_PARSE ++#undef DIRECTIVES ++#undef DIRECTIVE ++#undef CHAR_T ++#undef VASNPRINTF +--- lrzsz-0.12.20.safe/intl/vasnprintf.h 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/vasnprintf.h 2004-09-12 14:40:34.667700664 -0400 +@@ -0,0 +1,61 @@ ++/* vsprintf with automatic memory allocation. ++ Copyright (C) 2002-2003 Free Software Foundation, Inc. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++#ifndef _VASNPRINTF_H ++#define _VASNPRINTF_H ++ ++/* Get va_list. */ ++#include ++ ++/* Get size_t. */ ++#include ++ ++#ifndef __attribute__ ++/* This feature is available in gcc versions 2.5 and later. */ ++# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 5) || __STRICT_ANSI__ ++# define __attribute__(Spec) /* empty */ ++# endif ++/* The __-protected variants of `format' and `printf' attributes ++ are accepted by gcc versions 2.6.4 (effectively 2.7) and later. */ ++# if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 7) ++# define __format__ format ++# define __printf__ printf ++# endif ++#endif ++ ++#ifdef __cplusplus ++extern "C" { ++#endif ++ ++/* Write formatted output to a string dynamically allocated with malloc(). ++ You can pass a preallocated buffer for the result in RESULTBUF and its ++ size in *LENGTHP; otherwise you pass RESULTBUF = NULL. ++ If successful, return the address of the string (this may be = RESULTBUF ++ if no dynamic memory allocation was necessary) and set *LENGTHP to the ++ number of resulting bytes, excluding the trailing NUL. Upon error, set ++ errno and return NULL. */ ++extern char * asnprintf (char *resultbuf, size_t *lengthp, const char *format, ...) ++ __attribute__ ((__format__ (__printf__, 3, 4))); ++extern char * vasnprintf (char *resultbuf, size_t *lengthp, const char *format, va_list args) ++ __attribute__ ((__format__ (__printf__, 3, 0))); ++ ++#ifdef __cplusplus ++} ++#endif ++ ++#endif /* _VASNPRINTF_H */ +--- lrzsz-0.12.20.safe/intl/vasnwprintf.h 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/vasnwprintf.h 2004-09-12 14:40:34.673699752 -0400 +@@ -0,0 +1,46 @@ ++/* vswprintf with automatic memory allocation. ++ Copyright (C) 2002-2003 Free Software Foundation, Inc. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++#ifndef _VASNWPRINTF_H ++#define _VASNWPRINTF_H ++ ++/* Get va_list. */ ++#include ++ ++/* Get wchar_t, size_t. */ ++#include ++ ++#ifdef __cplusplus ++extern "C" { ++#endif ++ ++/* Write formatted output to a string dynamically allocated with malloc(). ++ You can pass a preallocated buffer for the result in RESULTBUF and its ++ size in *LENGTHP; otherwise you pass RESULTBUF = NULL. ++ If successful, return the address of the string (this may be = RESULTBUF ++ if no dynamic memory allocation was necessary) and set *LENGTHP to the ++ number of resulting bytes, excluding the trailing NUL. Upon error, set ++ errno and return NULL. */ ++extern wchar_t * asnwprintf (wchar_t *resultbuf, size_t *lengthp, const wchar_t *format, ...); ++extern wchar_t * vasnwprintf (wchar_t *resultbuf, size_t *lengthp, const wchar_t *format, va_list args); ++ ++#ifdef __cplusplus ++} ++#endif ++ ++#endif /* _VASNWPRINTF_H */ +--- lrzsz-0.12.20.safe/intl/VERSION 1998-04-26 09:22:37.000000000 -0400 ++++ lrzsz-0.12.20/intl/VERSION 2004-09-12 14:40:34.679698840 -0400 +@@ -1 +1 @@ +-GNU gettext library from gettext-0.10.32 ++GNU gettext library from gettext-0.14.1 +--- lrzsz-0.12.20.safe/intl/wprintf-parse.h 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/wprintf-parse.h 2004-09-12 14:40:34.695696408 -0400 +@@ -0,0 +1,75 @@ ++/* Parse printf format string. ++ Copyright (C) 1999, 2002-2003 Free Software Foundation, Inc. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++#ifndef _WPRINTF_PARSE_H ++#define _WPRINTF_PARSE_H ++ ++#include "printf-args.h" ++ ++ ++/* Flags */ ++#define FLAG_GROUP 1 /* ' flag */ ++#define FLAG_LEFT 2 /* - flag */ ++#define FLAG_SHOWSIGN 4 /* + flag */ ++#define FLAG_SPACE 8 /* space flag */ ++#define FLAG_ALT 16 /* # flag */ ++#define FLAG_ZERO 32 ++ ++/* arg_index value indicating that no argument is consumed. */ ++#define ARG_NONE (~(size_t)0) ++ ++/* A parsed directive. */ ++typedef struct ++{ ++ const wchar_t* dir_start; ++ const wchar_t* dir_end; ++ int flags; ++ const wchar_t* width_start; ++ const wchar_t* width_end; ++ size_t width_arg_index; ++ const wchar_t* precision_start; ++ const wchar_t* precision_end; ++ size_t precision_arg_index; ++ wchar_t conversion; /* d i o u x X f e E g G c s p n U % but not C S */ ++ size_t arg_index; ++} ++wchar_t_directive; ++ ++/* A parsed format string. */ ++typedef struct ++{ ++ size_t count; ++ wchar_t_directive *dir; ++ size_t max_width_length; ++ size_t max_precision_length; ++} ++wchar_t_directives; ++ ++ ++/* Parses the format string. Fills in the number N of directives, and fills ++ in directives[0], ..., directives[N-1], and sets directives[N].dir_start ++ to the end of the format string. Also fills in the arg_type fields of the ++ arguments and the needed count of arguments. */ ++#ifdef STATIC ++STATIC ++#else ++extern ++#endif ++int wprintf_parse (const wchar_t *format, wchar_t_directives *d, arguments *a); ++ ++#endif /* _WPRINTF_PARSE_H */ +--- lrzsz-0.12.20.safe/intl/xopen-msg.sed 1998-04-26 09:20:52.000000000 -0400 ++++ lrzsz-0.12.20/intl/xopen-msg.sed 1969-12-31 19:00:00.000000000 -0500 +@@ -1,104 +0,0 @@ +-# po2msg.sed - Convert Uniforum style .po file to X/Open style .msg file +-# Copyright (C) 1995 Free Software Foundation, Inc. +-# Ulrich Drepper , 1995. +-# +-# This program is free software; you can redistribute it and/or modify +-# it under the terms of the GNU General Public License as published by +-# the Free Software Foundation; either version 2, or (at your option) +-# any later version. +-# +-# This program is distributed in the hope that it will be useful, +-# but WITHOUT ANY WARRANTY; without even the implied warranty of +-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-# GNU General Public License for more details. +-# +-# You should have received a copy of the GNU General Public License +-# along with this program; if not, write to the Free Software +-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +-# +-# +-# The first directive in the .msg should be the definition of the +-# message set number. We use always set number 1. +-# +-1 { +- i\ +-$set 1 # Automatically created by po2msg.sed +- h +- s/.*/0/ +- x +-} +-# +-# We copy all comments into the .msg file. Perhaps they can help. +-# +-/^#/ s/^#[ ]*/$ /p +-# +-# We copy the original message as a comment into the .msg file. +-# +-/^msgid/ { +-# Does not work now +-# /"$/! { +-# s/\\$// +-# s/$/ ... (more lines following)"/ +-# } +- s/^msgid[ ]*"\(.*\)"$/$ Original Message: \1/ +- p +-} +-# +-# The .msg file contains, other then the .po file, only the translations +-# but each given a unique ID. Starting from 1 and incrementing by 1 for +-# each message we assign them to the messages. +-# It is important that the .po file used to generate the cat-id-tbl.c file +-# (with po-to-tbl) is the same as the one used here. (At least the order +-# of declarations must not be changed.) +-# +-/^msgstr/ { +- s/msgstr[ ]*"\(.*\)"/\1/ +- x +-# The following nice solution is by +-# Bruno +- td +-# Increment a decimal number in pattern space. +-# First hide trailing `9' digits. +- :d +- s/9\(_*\)$/_\1/ +- td +-# Assure at least one digit is available. +- s/^\(_*\)$/0\1/ +-# Increment the last digit. +- s/8\(_*\)$/9\1/ +- s/7\(_*\)$/8\1/ +- s/6\(_*\)$/7\1/ +- s/5\(_*\)$/6\1/ +- s/4\(_*\)$/5\1/ +- s/3\(_*\)$/4\1/ +- s/2\(_*\)$/3\1/ +- s/1\(_*\)$/2\1/ +- s/0\(_*\)$/1\1/ +-# Convert the hidden `9' digits to `0's. +- s/_/0/g +- x +-# Bring the line in the format ` ' +- G +- s/^[^\n]*$/& / +- s/\(.*\)\n\([0-9]*\)/\2 \1/ +-# Clear flag from last substitution. +- tb +-# Append the next line. +- :b +- N +-# Look whether second part is a continuation line. +- s/\(.*\n\)"\(.*\)"/\1\2/ +-# Yes, then branch. +- ta +- P +- D +-# Note that `D' includes a jump to the start!! +-# We found a continuation line. But before printing insert '\'. +- :a +- s/\(.*\)\(\n.*\)/\1\\\2/ +- P +-# We cannot use the sed command `D' here +- s/.*\n\(.*\)/\1/ +- tb +-} +-d +--- lrzsz-0.12.20.safe/intl/xsize.h 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/intl/xsize.h 2004-09-12 14:40:34.700695648 -0400 +@@ -0,0 +1,109 @@ ++/* xsize.h -- Checked size_t computations. ++ ++ Copyright (C) 2003 Free Software Foundation, Inc. ++ ++ This program is free software; you can redistribute it and/or modify it ++ under the terms of the GNU Library General Public License as published ++ by the Free Software Foundation; either version 2, or (at your option) ++ any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Library General Public License for more details. ++ ++ You should have received a copy of the GNU Library General Public ++ License along with this program; if not, write to the Free Software ++ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, ++ USA. */ ++ ++#ifndef _XSIZE_H ++#define _XSIZE_H ++ ++/* Get size_t. */ ++#include ++ ++/* Get SIZE_MAX. */ ++#include ++#if HAVE_STDINT_H ++# include ++#endif ++ ++/* The size of memory objects is often computed through expressions of ++ type size_t. Example: ++ void* p = malloc (header_size + n * element_size). ++ These computations can lead to overflow. When this happens, malloc() ++ returns a piece of memory that is way too small, and the program then ++ crashes while attempting to fill the memory. ++ To avoid this, the functions and macros in this file check for overflow. ++ The convention is that SIZE_MAX represents overflow. ++ malloc (SIZE_MAX) is not guaranteed to fail -- think of a malloc ++ implementation that uses mmap --, it's recommended to use size_overflow_p() ++ or size_in_bounds_p() before invoking malloc(). ++ The example thus becomes: ++ size_t size = xsum (header_size, xtimes (n, element_size)); ++ void *p = (size_in_bounds_p (size) ? malloc (size) : NULL); ++*/ ++ ++/* Convert an arbitrary value >= 0 to type size_t. */ ++#define xcast_size_t(N) \ ++ ((N) <= SIZE_MAX ? (size_t) (N) : SIZE_MAX) ++ ++/* Sum of two sizes, with overflow check. */ ++static inline size_t ++#if __GNUC__ >= 3 ++__attribute__ ((__pure__)) ++#endif ++xsum (size_t size1, size_t size2) ++{ ++ size_t sum = size1 + size2; ++ return (sum >= size1 ? sum : SIZE_MAX); ++} ++ ++/* Sum of three sizes, with overflow check. */ ++static inline size_t ++#if __GNUC__ >= 3 ++__attribute__ ((__pure__)) ++#endif ++xsum3 (size_t size1, size_t size2, size_t size3) ++{ ++ return xsum (xsum (size1, size2), size3); ++} ++ ++/* Sum of four sizes, with overflow check. */ ++static inline size_t ++#if __GNUC__ >= 3 ++__attribute__ ((__pure__)) ++#endif ++xsum4 (size_t size1, size_t size2, size_t size3, size_t size4) ++{ ++ return xsum (xsum (xsum (size1, size2), size3), size4); ++} ++ ++/* Maximum of two sizes, with overflow check. */ ++static inline size_t ++#if __GNUC__ >= 3 ++__attribute__ ((__pure__)) ++#endif ++xmax (size_t size1, size_t size2) ++{ ++ /* No explicit check is needed here, because for any n: ++ max (SIZE_MAX, n) == SIZE_MAX and max (n, SIZE_MAX) == SIZE_MAX. */ ++ return (size1 >= size2 ? size1 : size2); ++} ++ ++/* Multiplication of a count with an element size, with overflow check. ++ The count must be >= 0 and the element size must be > 0. ++ This is a macro, not an inline function, so that it works correctly even ++ when N is of a wider tupe and N > SIZE_MAX. */ ++#define xtimes(N, ELSIZE) \ ++ ((N) <= SIZE_MAX / (ELSIZE) ? (size_t) (N) * (ELSIZE) : SIZE_MAX) ++ ++/* Check for overflow. */ ++#define size_overflow_p(SIZE) \ ++ ((SIZE) == SIZE_MAX) ++/* Check against overflow. */ ++#define size_in_bounds_p(SIZE) \ ++ ((SIZE) != SIZE_MAX) ++ ++#endif /* _XSIZE_H */ +--- lrzsz-0.12.20.safe/m4/ChangeLog 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/ChangeLog 2004-09-12 14:40:35.054641840 -0400 +@@ -0,0 +1,32 @@ ++2004-09-12 gettextize ++ ++ * codeset.m4: New file, from gettext-0.14.1. ++ * gettext.m4: New file, from gettext-0.14.1. ++ * glibc21.m4: New file, from gettext-0.14.1. ++ * iconv.m4: New file, from gettext-0.14.1. ++ * intdiv0.m4: New file, from gettext-0.14.1. ++ * intmax.m4: New file, from gettext-0.14.1. ++ * inttypes.m4: New file, from gettext-0.14.1. ++ * inttypes_h.m4: New file, from gettext-0.14.1. ++ * inttypes-pri.m4: New file, from gettext-0.14.1. ++ * isc-posix.m4: New file, from gettext-0.14.1. ++ * lcmessage.m4: New file, from gettext-0.14.1. ++ * lib-ld.m4: New file, from gettext-0.14.1. ++ * lib-link.m4: New file, from gettext-0.14.1. ++ * lib-prefix.m4: New file, from gettext-0.14.1. ++ * longdouble.m4: New file, from gettext-0.14.1. ++ * longlong.m4: New file, from gettext-0.14.1. ++ * nls.m4: New file, from gettext-0.14.1. ++ * po.m4: New file, from gettext-0.14.1. ++ * printf-posix.m4: New file, from gettext-0.14.1. ++ * progtest.m4: New file, from gettext-0.14.1. ++ * signed.m4: New file, from gettext-0.14.1. ++ * size_max.m4: New file, from gettext-0.14.1. ++ * stdint_h.m4: New file, from gettext-0.14.1. ++ * uintmax_t.m4: New file, from gettext-0.14.1. ++ * ulonglong.m4: New file, from gettext-0.14.1. ++ * wchar_t.m4: New file, from gettext-0.14.1. ++ * wint_t.m4: New file, from gettext-0.14.1. ++ * xsize.m4: New file, from gettext-0.14.1. ++ * Makefile.am: New file. ++ +--- lrzsz-0.12.20.safe/m4/codeset.m4 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/codeset.m4 2004-09-12 14:40:34.820677408 -0400 +@@ -0,0 +1,23 @@ ++# codeset.m4 serial AM1 (gettext-0.10.40) ++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_LANGINFO_CODESET], ++[ ++ AC_CACHE_CHECK([for nl_langinfo and CODESET], am_cv_langinfo_codeset, ++ [AC_TRY_LINK([#include ], ++ [char* cs = nl_langinfo(CODESET);], ++ am_cv_langinfo_codeset=yes, ++ am_cv_langinfo_codeset=no) ++ ]) ++ if test $am_cv_langinfo_codeset = yes; then ++ AC_DEFINE(HAVE_LANGINFO_CODESET, 1, ++ [Define if you have and nl_langinfo(CODESET).]) ++ fi ++]) +--- lrzsz-0.12.20.safe/m4/gettext.m4 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/gettext.m4 2004-09-12 14:40:34.826676496 -0400 +@@ -0,0 +1,487 @@ ++# 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], []) +--- lrzsz-0.12.20.safe/m4/glibc21.m4 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/glibc21.m4 2004-09-12 14:40:34.833675432 -0400 +@@ -0,0 +1,32 @@ ++# glibc21.m4 serial 2 (fileutils-4.1.3, gettext-0.10.40) ++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. ++ ++# Test for the GNU C Library, version 2.1 or newer. ++# From Bruno Haible. ++ ++AC_DEFUN([jm_GLIBC21], ++ [ ++ AC_CACHE_CHECK(whether we are using the GNU C Library 2.1 or newer, ++ ac_cv_gnu_library_2_1, ++ [AC_EGREP_CPP([Lucky GNU user], ++ [ ++#include ++#ifdef __GNU_LIBRARY__ ++ #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) || (__GLIBC__ > 2) ++ Lucky GNU user ++ #endif ++#endif ++ ], ++ ac_cv_gnu_library_2_1=yes, ++ ac_cv_gnu_library_2_1=no) ++ ] ++ ) ++ AC_SUBST(GLIBC21) ++ GLIBC21="$ac_cv_gnu_library_2_1" ++ ] ++) +--- lrzsz-0.12.20.safe/m4/iconv.m4 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/iconv.m4 2004-09-12 14:40:34.839674520 -0400 +@@ -0,0 +1,103 @@ ++# 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 ++]) +--- lrzsz-0.12.20.safe/m4/intdiv0.m4 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/intdiv0.m4 2004-09-12 14:40:34.845673608 -0400 +@@ -0,0 +1,72 @@ ++# intdiv0.m4 serial 1 (gettext-0.11.3) ++dnl Copyright (C) 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([gt_INTDIV0], ++[ ++ AC_REQUIRE([AC_PROG_CC])dnl ++ AC_REQUIRE([AC_CANONICAL_HOST])dnl ++ ++ AC_CACHE_CHECK([whether integer division by zero raises SIGFPE], ++ gt_cv_int_divbyzero_sigfpe, ++ [ ++ AC_TRY_RUN([ ++#include ++#include ++ ++static void ++#ifdef __cplusplus ++sigfpe_handler (int sig) ++#else ++sigfpe_handler (sig) int sig; ++#endif ++{ ++ /* Exit with code 0 if SIGFPE, with code 1 if any other signal. */ ++ exit (sig != SIGFPE); ++} ++ ++int x = 1; ++int y = 0; ++int z; ++int nan; ++ ++int main () ++{ ++ signal (SIGFPE, sigfpe_handler); ++/* IRIX and AIX (when "xlc -qcheck" is used) yield signal SIGTRAP. */ ++#if (defined (__sgi) || defined (_AIX)) && defined (SIGTRAP) ++ signal (SIGTRAP, sigfpe_handler); ++#endif ++/* Linux/SPARC yields signal SIGILL. */ ++#if defined (__sparc__) && defined (__linux__) ++ signal (SIGILL, sigfpe_handler); ++#endif ++ ++ z = x / y; ++ nan = y / y; ++ exit (1); ++} ++], gt_cv_int_divbyzero_sigfpe=yes, gt_cv_int_divbyzero_sigfpe=no, ++ [ ++ # Guess based on the CPU. ++ case "$host_cpu" in ++ alpha* | i[34567]86 | m68k | s390*) ++ gt_cv_int_divbyzero_sigfpe="guessing yes";; ++ *) ++ gt_cv_int_divbyzero_sigfpe="guessing no";; ++ esac ++ ]) ++ ]) ++ case "$gt_cv_int_divbyzero_sigfpe" in ++ *yes) value=1;; ++ *) value=0;; ++ esac ++ AC_DEFINE_UNQUOTED(INTDIV0_RAISES_SIGFPE, $value, ++ [Define if integer division by zero raises signal SIGFPE.]) ++]) +--- lrzsz-0.12.20.safe/m4/intmax.m4 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/intmax.m4 2004-09-12 14:40:34.855672088 -0400 +@@ -0,0 +1,32 @@ ++# intmax.m4 serial 1 (gettext-0.12) ++dnl Copyright (C) 2002-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 Test whether the system has the 'intmax_t' type, but don't attempt to ++dnl find a replacement if it is lacking. ++ ++AC_DEFUN([gt_TYPE_INTMAX_T], ++[ ++ AC_REQUIRE([jm_AC_HEADER_INTTYPES_H]) ++ AC_REQUIRE([jm_AC_HEADER_STDINT_H]) ++ AC_CACHE_CHECK(for intmax_t, gt_cv_c_intmax_t, ++ [AC_TRY_COMPILE([ ++#include ++#include ++#if HAVE_STDINT_H_WITH_UINTMAX ++#include ++#endif ++#if HAVE_INTTYPES_H_WITH_UINTMAX ++#include ++#endif ++], [intmax_t x = -1;], gt_cv_c_intmax_t=yes, gt_cv_c_intmax_t=no)]) ++ if test $gt_cv_c_intmax_t = yes; then ++ AC_DEFINE(HAVE_INTMAX_T, 1, ++ [Define if you have the 'intmax_t' type in or .]) ++ fi ++]) +--- lrzsz-0.12.20.safe/m4/inttypes_h.m4 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/inttypes_h.m4 2004-09-12 14:40:34.868670112 -0400 +@@ -0,0 +1,28 @@ ++# inttypes_h.m4 serial 5 (gettext-0.12) ++dnl Copyright (C) 1997-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 Paul Eggert. ++ ++# Define HAVE_INTTYPES_H_WITH_UINTMAX if exists, ++# doesn't clash with , and declares uintmax_t. ++ ++AC_DEFUN([jm_AC_HEADER_INTTYPES_H], ++[ ++ AC_CACHE_CHECK([for inttypes.h], jm_ac_cv_header_inttypes_h, ++ [AC_TRY_COMPILE( ++ [#include ++#include ], ++ [uintmax_t i = (uintmax_t) -1;], ++ jm_ac_cv_header_inttypes_h=yes, ++ jm_ac_cv_header_inttypes_h=no)]) ++ if test $jm_ac_cv_header_inttypes_h = yes; then ++ AC_DEFINE_UNQUOTED(HAVE_INTTYPES_H_WITH_UINTMAX, 1, ++ [Define if exists, doesn't clash with , ++ and declares uintmax_t. ]) ++ fi ++]) +--- lrzsz-0.12.20.safe/m4/inttypes.m4 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/inttypes.m4 2004-09-12 14:40:34.861671176 -0400 +@@ -0,0 +1,27 @@ ++# inttypes.m4 serial 1 (gettext-0.11.4) ++dnl Copyright (C) 1997-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 Paul Eggert. ++ ++# Define HAVE_INTTYPES_H if exists and doesn't clash with ++# . ++ ++AC_DEFUN([gt_HEADER_INTTYPES_H], ++[ ++ AC_CACHE_CHECK([for inttypes.h], gt_cv_header_inttypes_h, ++ [ ++ AC_TRY_COMPILE( ++ [#include ++#include ], ++ [], gt_cv_header_inttypes_h=yes, gt_cv_header_inttypes_h=no) ++ ]) ++ if test $gt_cv_header_inttypes_h = yes; then ++ AC_DEFINE_UNQUOTED(HAVE_INTTYPES_H, 1, ++ [Define if exists and doesn't clash with .]) ++ fi ++]) +--- lrzsz-0.12.20.safe/m4/inttypes-pri.m4 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/inttypes-pri.m4 2004-09-12 14:40:34.874669200 -0400 +@@ -0,0 +1,32 @@ ++# inttypes-pri.m4 serial 1 (gettext-0.11.4) ++dnl Copyright (C) 1997-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. ++ ++# Define PRI_MACROS_BROKEN if exists and defines the PRI* ++# macros to non-string values. This is the case on AIX 4.3.3. ++ ++AC_DEFUN([gt_INTTYPES_PRI], ++[ ++ AC_REQUIRE([gt_HEADER_INTTYPES_H]) ++ if test $gt_cv_header_inttypes_h = yes; then ++ AC_CACHE_CHECK([whether the inttypes.h PRIxNN macros are broken], ++ gt_cv_inttypes_pri_broken, ++ [ ++ AC_TRY_COMPILE([#include ++#ifdef PRId32 ++char *p = PRId32; ++#endif ++], [], gt_cv_inttypes_pri_broken=no, gt_cv_inttypes_pri_broken=yes) ++ ]) ++ fi ++ if test "$gt_cv_inttypes_pri_broken" = yes; then ++ AC_DEFINE_UNQUOTED(PRI_MACROS_BROKEN, 1, ++ [Define if exists and defines unusable PRI* macros.]) ++ fi ++]) +--- lrzsz-0.12.20.safe/m4/isc-posix.m4 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/isc-posix.m4 2004-09-12 14:40:34.885667528 -0400 +@@ -0,0 +1,26 @@ ++# isc-posix.m4 serial 2 (gettext-0.11.2) ++dnl Copyright (C) 1995-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. ++ ++# This file is not needed with autoconf-2.53 and newer. Remove it in 2005. ++ ++# This test replaces the one in autoconf. ++# Currently this macro should have the same name as the autoconf macro ++# because gettext's gettext.m4 (distributed in the automake package) ++# still uses it. Otherwise, the use in gettext.m4 makes autoheader ++# give these diagnostics: ++# configure.in:556: AC_TRY_COMPILE was called before AC_ISC_POSIX ++# configure.in:556: AC_TRY_RUN was called before AC_ISC_POSIX ++ ++undefine([AC_ISC_POSIX]) ++ ++AC_DEFUN([AC_ISC_POSIX], ++ [ ++ dnl This test replaces the obsolescent AC_ISC_POSIX kludge. ++ AC_CHECK_LIB(cposix, strerror, [LIBS="$LIBS -lcposix"]) ++ ] ++) +--- lrzsz-0.12.20.safe/m4/lcmessage.m4 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/lcmessage.m4 2004-09-12 14:40:34.902664944 -0400 +@@ -0,0 +1,32 @@ ++# lcmessage.m4 serial 3 (gettext-0.11.3) ++dnl Copyright (C) 1995-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 ++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. ++ ++# Check whether LC_MESSAGES is available in . ++ ++AC_DEFUN([AM_LC_MESSAGES], ++[ ++ AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES, ++ [AC_TRY_LINK([#include ], [return LC_MESSAGES], ++ am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)]) ++ if test $am_cv_val_LC_MESSAGES = yes; then ++ AC_DEFINE(HAVE_LC_MESSAGES, 1, ++ [Define if your file defines LC_MESSAGES.]) ++ fi ++]) +--- lrzsz-0.12.20.safe/m4/lib-ld.m4 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/lib-ld.m4 2004-09-12 14:40:34.908664032 -0400 +@@ -0,0 +1,112 @@ ++# 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 ++]) +--- lrzsz-0.12.20.safe/m4/lib-link.m4 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/lib-link.m4 2004-09-12 14:40:34.914663120 -0400 +@@ -0,0 +1,551 @@ ++# 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= ++ for name in $names_this_round; do ++ already_handled= ++ for n in $names_already_handled; do ++ if test "$n" = "$name"; then ++ already_handled=yes ++ break ++ fi ++ done ++ if test -z "$already_handled"; then ++ names_already_handled="$names_already_handled $name" ++ dnl See if it was already located by an earlier AC_LIB_LINKFLAGS ++ dnl or AC_LIB_HAVE_LINKFLAGS call. ++ uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'` ++ eval value=\"\$HAVE_LIB$uppername\" ++ if test -n "$value"; then ++ if test "$value" = yes; then ++ eval value=\"\$LIB$uppername\" ++ test -z "$value" || LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$value" ++ eval value=\"\$LTLIB$uppername\" ++ test -z "$value" || LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$value" ++ else ++ dnl An earlier call to AC_LIB_HAVE_LINKFLAGS has determined ++ dnl that this library doesn't exist. So just drop it. ++ : ++ fi ++ else ++ dnl Search the library lib$name in $additional_libdir and $LDFLAGS ++ dnl and the already constructed $LIBNAME/$LTLIBNAME. ++ found_dir= ++ found_la= ++ found_so= ++ found_a= ++ if test $use_additional = yes; then ++ if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then ++ found_dir="$additional_libdir" ++ found_so="$additional_libdir/lib$name.$shlibext" ++ if test -f "$additional_libdir/lib$name.la"; then ++ found_la="$additional_libdir/lib$name.la" ++ fi ++ else ++ if test -f "$additional_libdir/lib$name.$libext"; then ++ found_dir="$additional_libdir" ++ found_a="$additional_libdir/lib$name.$libext" ++ if test -f "$additional_libdir/lib$name.la"; then ++ found_la="$additional_libdir/lib$name.la" ++ fi ++ fi ++ fi ++ fi ++ if test "X$found_dir" = "X"; then ++ for x in $LDFLAGS $LTLIB[]NAME; do ++ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) ++ case "$x" in ++ -L*) ++ dir=`echo "X$x" | sed -e 's/^X-L//'` ++ if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then ++ found_dir="$dir" ++ found_so="$dir/lib$name.$shlibext" ++ if test -f "$dir/lib$name.la"; then ++ found_la="$dir/lib$name.la" ++ fi ++ else ++ if test -f "$dir/lib$name.$libext"; then ++ found_dir="$dir" ++ found_a="$dir/lib$name.$libext" ++ if test -f "$dir/lib$name.la"; then ++ found_la="$dir/lib$name.la" ++ fi ++ fi ++ fi ++ ;; ++ esac ++ if test "X$found_dir" != "X"; then ++ break ++ fi ++ done ++ fi ++ if test "X$found_dir" != "X"; then ++ dnl Found the library. ++ LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$found_dir -l$name" ++ if test "X$found_so" != "X"; then ++ dnl Linking with a shared library. We attempt to hardcode its ++ dnl directory into the executable's runpath, unless it's the ++ dnl standard /usr/lib. ++ if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then ++ dnl No hardcoding is needed. ++ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" ++ else ++ dnl Use an explicit option to hardcode DIR into the resulting ++ dnl binary. ++ dnl Potentially add DIR to ltrpathdirs. ++ dnl The ltrpathdirs will be appended to $LTLIBNAME at the end. ++ haveit= ++ for x in $ltrpathdirs; do ++ if test "X$x" = "X$found_dir"; then ++ haveit=yes ++ break ++ fi ++ done ++ if test -z "$haveit"; then ++ ltrpathdirs="$ltrpathdirs $found_dir" ++ fi ++ dnl The hardcoding into $LIBNAME is system dependent. ++ if test "$hardcode_direct" = yes; then ++ dnl Using DIR/libNAME.so during linking hardcodes DIR into the ++ dnl resulting binary. ++ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" ++ else ++ if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then ++ dnl Use an explicit option to hardcode DIR into the resulting ++ dnl binary. ++ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" ++ dnl Potentially add DIR to rpathdirs. ++ dnl The rpathdirs will be appended to $LIBNAME at the end. ++ haveit= ++ for x in $rpathdirs; do ++ if test "X$x" = "X$found_dir"; then ++ haveit=yes ++ break ++ fi ++ done ++ if test -z "$haveit"; then ++ rpathdirs="$rpathdirs $found_dir" ++ fi ++ else ++ dnl Rely on "-L$found_dir". ++ dnl But don't add it if it's already contained in the LDFLAGS ++ dnl or the already constructed $LIBNAME ++ haveit= ++ for x in $LDFLAGS $LIB[]NAME; do ++ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) ++ if test "X$x" = "X-L$found_dir"; then ++ haveit=yes ++ break ++ fi ++ done ++ if test -z "$haveit"; then ++ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir" ++ fi ++ if test "$hardcode_minus_L" != no; then ++ dnl FIXME: Not sure whether we should use ++ dnl "-L$found_dir -l$name" or "-L$found_dir $found_so" ++ dnl here. ++ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" ++ else ++ dnl We cannot use $hardcode_runpath_var and LD_RUN_PATH ++ dnl here, because this doesn't fit in flags passed to the ++ dnl compiler. So give up. No hardcoding. This affects only ++ dnl very old systems. ++ dnl FIXME: Not sure whether we should use ++ dnl "-L$found_dir -l$name" or "-L$found_dir $found_so" ++ dnl here. ++ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name" ++ fi ++ fi ++ fi ++ fi ++ else ++ if test "X$found_a" != "X"; then ++ dnl Linking with a static library. ++ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_a" ++ else ++ dnl We shouldn't come here, but anyway it's good to have a ++ dnl fallback. ++ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir -l$name" ++ fi ++ fi ++ dnl Assume the include files are nearby. ++ additional_includedir= ++ case "$found_dir" in ++ */lib | */lib/) ++ basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'` ++ additional_includedir="$basedir/include" ++ ;; ++ esac ++ if test "X$additional_includedir" != "X"; then ++ dnl Potentially add $additional_includedir to $INCNAME. ++ dnl But don't add it ++ dnl 1. if it's the standard /usr/include, ++ dnl 2. if it's /usr/local/include and we are using GCC on Linux, ++ dnl 3. if it's already present in $CPPFLAGS or the already ++ dnl constructed $INCNAME, ++ dnl 4. if it doesn't exist as a directory. ++ if test "X$additional_includedir" != "X/usr/include"; then ++ haveit= ++ if test "X$additional_includedir" = "X/usr/local/include"; then ++ if test -n "$GCC"; then ++ case $host_os in ++ linux*) haveit=yes;; ++ esac ++ fi ++ fi ++ if test -z "$haveit"; then ++ for x in $CPPFLAGS $INC[]NAME; do ++ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) ++ if test "X$x" = "X-I$additional_includedir"; then ++ haveit=yes ++ break ++ fi ++ done ++ if test -z "$haveit"; then ++ if test -d "$additional_includedir"; then ++ dnl Really add $additional_includedir to $INCNAME. ++ INC[]NAME="${INC[]NAME}${INC[]NAME:+ }-I$additional_includedir" ++ fi ++ fi ++ fi ++ fi ++ fi ++ dnl Look for dependencies. ++ if test -n "$found_la"; then ++ dnl Read the .la file. It defines the variables ++ dnl dlname, library_names, old_library, dependency_libs, current, ++ dnl age, revision, installed, dlopen, dlpreopen, libdir. ++ save_libdir="$libdir" ++ case "$found_la" in ++ */* | *\\*) . "$found_la" ;; ++ *) . "./$found_la" ;; ++ esac ++ libdir="$save_libdir" ++ dnl We use only dependency_libs. ++ for dep in $dependency_libs; do ++ case "$dep" in ++ -L*) ++ additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` ++ dnl Potentially add $additional_libdir to $LIBNAME and $LTLIBNAME. ++ dnl But don't add it ++ dnl 1. if it's the standard /usr/lib, ++ dnl 2. if it's /usr/local/lib and we are using GCC on Linux, ++ dnl 3. if it's already present in $LDFLAGS or the already ++ dnl constructed $LIBNAME, ++ dnl 4. if it doesn't exist as a directory. ++ if test "X$additional_libdir" != "X/usr/lib"; then ++ haveit= ++ if test "X$additional_libdir" = "X/usr/local/lib"; then ++ if test -n "$GCC"; then ++ case $host_os in ++ linux*) haveit=yes;; ++ esac ++ fi ++ fi ++ if test -z "$haveit"; then ++ haveit= ++ for x in $LDFLAGS $LIB[]NAME; do ++ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) ++ if test "X$x" = "X-L$additional_libdir"; then ++ haveit=yes ++ break ++ fi ++ done ++ if test -z "$haveit"; then ++ if test -d "$additional_libdir"; then ++ dnl Really add $additional_libdir to $LIBNAME. ++ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$additional_libdir" ++ fi ++ fi ++ haveit= ++ for x in $LDFLAGS $LTLIB[]NAME; do ++ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) ++ if test "X$x" = "X-L$additional_libdir"; then ++ haveit=yes ++ break ++ fi ++ done ++ if test -z "$haveit"; then ++ if test -d "$additional_libdir"; then ++ dnl Really add $additional_libdir to $LTLIBNAME. ++ LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$additional_libdir" ++ fi ++ fi ++ fi ++ fi ++ ;; ++ -R*) ++ dir=`echo "X$dep" | sed -e 's/^X-R//'` ++ if test "$enable_rpath" != no; then ++ dnl Potentially add DIR to rpathdirs. ++ dnl The rpathdirs will be appended to $LIBNAME at the end. ++ haveit= ++ for x in $rpathdirs; do ++ if test "X$x" = "X$dir"; then ++ haveit=yes ++ break ++ fi ++ done ++ if test -z "$haveit"; then ++ rpathdirs="$rpathdirs $dir" ++ fi ++ dnl Potentially add DIR to ltrpathdirs. ++ dnl The ltrpathdirs will be appended to $LTLIBNAME at the end. ++ haveit= ++ for x in $ltrpathdirs; do ++ if test "X$x" = "X$dir"; then ++ haveit=yes ++ break ++ fi ++ done ++ if test -z "$haveit"; then ++ ltrpathdirs="$ltrpathdirs $dir" ++ fi ++ fi ++ ;; ++ -l*) ++ dnl Handle this in the next round. ++ names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` ++ ;; ++ *.la) ++ dnl Handle this in the next round. Throw away the .la's ++ dnl directory; it is already contained in a preceding -L ++ dnl option. ++ names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` ++ ;; ++ *) ++ dnl Most likely an immediate library name. ++ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$dep" ++ LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$dep" ++ ;; ++ esac ++ done ++ fi ++ else ++ dnl Didn't find the library; assume it is in the system directories ++ dnl known to the linker and runtime loader. (All the system ++ dnl directories known to the linker should also be known to the ++ dnl runtime loader, otherwise the system is severely misconfigured.) ++ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name" ++ LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-l$name" ++ fi ++ fi ++ fi ++ done ++ done ++ if test "X$rpathdirs" != "X"; then ++ if test -n "$hardcode_libdir_separator"; then ++ dnl Weird platform: only the last -rpath option counts, the user must ++ dnl pass all path elements in one option. We can arrange that for a ++ dnl single library, but not when more than one $LIBNAMEs are used. ++ alldirs= ++ for found_dir in $rpathdirs; do ++ alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir" ++ done ++ dnl Note: hardcode_libdir_flag_spec uses $libdir and $wl. ++ acl_save_libdir="$libdir" ++ libdir="$alldirs" ++ eval flag=\"$hardcode_libdir_flag_spec\" ++ libdir="$acl_save_libdir" ++ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag" ++ else ++ dnl The -rpath options are cumulative. ++ for found_dir in $rpathdirs; do ++ acl_save_libdir="$libdir" ++ libdir="$found_dir" ++ eval flag=\"$hardcode_libdir_flag_spec\" ++ libdir="$acl_save_libdir" ++ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag" ++ done ++ fi ++ fi ++ if test "X$ltrpathdirs" != "X"; then ++ dnl When using libtool, the option that works for both libraries and ++ dnl executables is -R. The -R options are cumulative. ++ for found_dir in $ltrpathdirs; do ++ LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-R$found_dir" ++ done ++ fi ++]) ++ ++dnl AC_LIB_APPENDTOVAR(VAR, CONTENTS) appends the elements of CONTENTS to VAR, ++dnl unless already present in VAR. ++dnl Works only for CPPFLAGS, not for LIB* variables because that sometimes ++dnl contains two or three consecutive elements that belong together. ++AC_DEFUN([AC_LIB_APPENDTOVAR], ++[ ++ for element in [$2]; do ++ haveit= ++ for x in $[$1]; do ++ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) ++ if test "X$x" = "X$element"; then ++ haveit=yes ++ break ++ fi ++ done ++ if test -z "$haveit"; then ++ [$1]="${[$1]}${[$1]:+ }$element" ++ fi ++ done ++]) +--- lrzsz-0.12.20.safe/m4/lib-prefix.m4 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/lib-prefix.m4 2004-09-12 14:40:34.921662056 -0400 +@@ -0,0 +1,155 @@ ++# lib-prefix.m4 serial 3 (gettext-0.13) ++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_ARG_WITH is synonymous to AC_ARG_WITH in autoconf-2.13, and ++dnl similar to AC_ARG_WITH in autoconf 2.52...2.57 except that is doesn't ++dnl require excessive bracketing. ++ifdef([AC_HELP_STRING], ++[AC_DEFUN([AC_LIB_ARG_WITH], [AC_ARG_WITH([$1],[[$2]],[$3],[$4])])], ++[AC_DEFUN([AC_][LIB_ARG_WITH], [AC_ARG_WITH([$1],[$2],[$3],[$4])])]) ++ ++dnl AC_LIB_PREFIX adds to the CPPFLAGS and LDFLAGS the flags that are needed ++dnl to access previously installed libraries. The basic assumption is that ++dnl a user will want packages to use other packages he previously installed ++dnl with the same --prefix option. ++dnl This macro is not needed if only AC_LIB_LINKFLAGS is used to locate ++dnl libraries, but is otherwise very convenient. ++AC_DEFUN([AC_LIB_PREFIX], ++[ ++ AC_BEFORE([$0], [AC_LIB_LINKFLAGS]) ++ AC_REQUIRE([AC_PROG_CC]) ++ AC_REQUIRE([AC_CANONICAL_HOST]) ++ AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) ++ 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-prefix], ++[ --with-lib-prefix[=DIR] search for libraries in DIR/include and DIR/lib ++ --without-lib-prefix don't search for libraries 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 ++]) ++ if test $use_additional = yes; then ++ dnl Potentially add $additional_includedir to $CPPFLAGS. ++ dnl But don't add it ++ dnl 1. if it's the standard /usr/include, ++ dnl 2. if it's already present in $CPPFLAGS, ++ dnl 3. if it's /usr/local/include and we are using GCC on Linux, ++ dnl 4. if it doesn't exist as a directory. ++ if test "X$additional_includedir" != "X/usr/include"; then ++ haveit= ++ for x in $CPPFLAGS; do ++ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) ++ if test "X$x" = "X-I$additional_includedir"; then ++ haveit=yes ++ break ++ fi ++ done ++ if test -z "$haveit"; then ++ if test "X$additional_includedir" = "X/usr/local/include"; then ++ if test -n "$GCC"; then ++ case $host_os in ++ linux*) haveit=yes;; ++ esac ++ fi ++ fi ++ if test -z "$haveit"; then ++ if test -d "$additional_includedir"; then ++ dnl Really add $additional_includedir to $CPPFLAGS. ++ CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }-I$additional_includedir" ++ fi ++ fi ++ fi ++ fi ++ dnl Potentially add $additional_libdir to $LDFLAGS. ++ dnl But don't add it ++ dnl 1. if it's the standard /usr/lib, ++ dnl 2. if it's already present in $LDFLAGS, ++ dnl 3. if it's /usr/local/lib and we are using GCC on Linux, ++ dnl 4. if it doesn't exist as a directory. ++ if test "X$additional_libdir" != "X/usr/lib"; then ++ haveit= ++ for x in $LDFLAGS; do ++ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) ++ if test "X$x" = "X-L$additional_libdir"; then ++ haveit=yes ++ break ++ fi ++ done ++ if test -z "$haveit"; then ++ if test "X$additional_libdir" = "X/usr/local/lib"; then ++ if test -n "$GCC"; then ++ case $host_os in ++ linux*) haveit=yes;; ++ esac ++ fi ++ fi ++ if test -z "$haveit"; then ++ if test -d "$additional_libdir"; then ++ dnl Really add $additional_libdir to $LDFLAGS. ++ LDFLAGS="${LDFLAGS}${LDFLAGS:+ }-L$additional_libdir" ++ fi ++ fi ++ fi ++ fi ++ fi ++]) ++ ++dnl AC_LIB_PREPARE_PREFIX creates variables acl_final_prefix, ++dnl acl_final_exec_prefix, containing the values to which $prefix and ++dnl $exec_prefix will expand at the end of the configure script. ++AC_DEFUN([AC_LIB_PREPARE_PREFIX], ++[ ++ dnl Unfortunately, prefix and exec_prefix get only finally determined ++ dnl at the end of configure. ++ if test "X$prefix" = "XNONE"; then ++ acl_final_prefix="$ac_default_prefix" ++ else ++ acl_final_prefix="$prefix" ++ fi ++ if test "X$exec_prefix" = "XNONE"; then ++ acl_final_exec_prefix='${prefix}' ++ else ++ acl_final_exec_prefix="$exec_prefix" ++ fi ++ acl_save_prefix="$prefix" ++ prefix="$acl_final_prefix" ++ eval acl_final_exec_prefix=\"$acl_final_exec_prefix\" ++ prefix="$acl_save_prefix" ++]) ++ ++dnl AC_LIB_WITH_FINAL_PREFIX([statement]) evaluates statement, with the ++dnl variables prefix and exec_prefix bound to the values they will have ++dnl at the end of the configure script. ++AC_DEFUN([AC_LIB_WITH_FINAL_PREFIX], ++[ ++ acl_save_prefix="$prefix" ++ prefix="$acl_final_prefix" ++ acl_save_exec_prefix="$exec_prefix" ++ exec_prefix="$acl_final_exec_prefix" ++ $1 ++ exec_prefix="$acl_save_exec_prefix" ++ prefix="$acl_save_prefix" ++]) +--- lrzsz-0.12.20.safe/m4/longdouble.m4 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/longdouble.m4 2004-09-12 14:40:34.942658864 -0400 +@@ -0,0 +1,30 @@ ++# longdouble.m4 serial 1 (gettext-0.12) ++dnl Copyright (C) 2002-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 Test whether the compiler supports the 'long double' type. ++dnl Prerequisite: AC_PROG_CC ++ ++AC_DEFUN([gt_TYPE_LONGDOUBLE], ++[ ++ AC_CACHE_CHECK([for long double], gt_cv_c_long_double, ++ [if test "$GCC" = yes; then ++ gt_cv_c_long_double=yes ++ else ++ AC_TRY_COMPILE([ ++ /* The Stardent Vistra knows sizeof(long double), but does not support it. */ ++ long double foo = 0.0; ++ /* On Ultrix 4.3 cc, long double is 4 and double is 8. */ ++ int array [2*(sizeof(long double) >= sizeof(double)) - 1]; ++ ], , ++ gt_cv_c_long_double=yes, gt_cv_c_long_double=no) ++ fi]) ++ if test $gt_cv_c_long_double = yes; then ++ AC_DEFINE(HAVE_LONG_DOUBLE, 1, [Define if you have the 'long double' type.]) ++ fi ++]) +--- lrzsz-0.12.20.safe/m4/longlong.m4 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/longlong.m4 2004-09-12 14:40:34.949657800 -0400 +@@ -0,0 +1,25 @@ ++# longlong.m4 serial 4 ++dnl Copyright (C) 1999-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 Paul Eggert. ++ ++# Define HAVE_LONG_LONG if 'long long' works. ++ ++AC_DEFUN([jm_AC_TYPE_LONG_LONG], ++[ ++ AC_CACHE_CHECK([for long long], ac_cv_type_long_long, ++ [AC_TRY_LINK([long long ll = 1LL; int i = 63;], ++ [long long llmax = (long long) -1; ++ return ll << i | ll >> i | llmax / ll | llmax % ll;], ++ ac_cv_type_long_long=yes, ++ ac_cv_type_long_long=no)]) ++ if test $ac_cv_type_long_long = yes; then ++ AC_DEFINE(HAVE_LONG_LONG, 1, ++ [Define if you have the 'long long' type.]) ++ fi ++]) +--- lrzsz-0.12.20.safe/m4/Makefile.am 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/Makefile.am 2004-09-12 14:40:35.048642752 -0400 +@@ -0,0 +1 @@ ++EXTRA_DIST = codeset.m4 gettext.m4 glibc21.m4 iconv.m4 intdiv0.m4 intmax.m4 inttypes.m4 inttypes_h.m4 inttypes-pri.m4 isc-posix.m4 lcmessage.m4 lib-ld.m4 lib-link.m4 lib-prefix.m4 longdouble.m4 longlong.m4 nls.m4 po.m4 printf-posix.m4 progtest.m4 signed.m4 size_max.m4 stdint_h.m4 uintmax_t.m4 ulonglong.m4 wchar_t.m4 wint_t.m4 xsize.m4 +--- lrzsz-0.12.20.safe/m4/nls.m4 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/nls.m4 2004-09-12 14:40:34.955656888 -0400 +@@ -0,0 +1,49 @@ ++# nls.m4 serial 1 (gettext-0.12) ++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. ++ ++AC_DEFUN([AM_NLS], ++[ ++ AC_MSG_CHECKING([whether NLS is requested]) ++ dnl Default is enabled NLS ++ AC_ARG_ENABLE(nls, ++ [ --disable-nls do not use Native Language Support], ++ USE_NLS=$enableval, USE_NLS=yes) ++ AC_MSG_RESULT($USE_NLS) ++ AC_SUBST(USE_NLS) ++]) ++ ++AC_DEFUN([AM_MKINSTALLDIRS], ++[ ++ dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly ++ dnl find the mkinstalldirs script in another subdir but $(top_srcdir). ++ dnl Try to locate it. ++ MKINSTALLDIRS= ++ if test -n "$ac_aux_dir"; then ++ case "$ac_aux_dir" in ++ /*) MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs" ;; ++ *) MKINSTALLDIRS="\$(top_builddir)/$ac_aux_dir/mkinstalldirs" ;; ++ esac ++ fi ++ if test -z "$MKINSTALLDIRS"; then ++ MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs" ++ fi ++ AC_SUBST(MKINSTALLDIRS) ++]) +--- lrzsz-0.12.20.safe/m4/po.m4 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/po.m4 2004-09-12 14:40:34.961655976 -0400 +@@ -0,0 +1,426 @@ ++# po.m4 serial 3 (gettext-0.14) ++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 Checks for all prerequisites of the po subdirectory. ++AC_DEFUN([AM_PO_SUBDIRS], ++[ ++ AC_REQUIRE([AC_PROG_MAKE_SET])dnl ++ AC_REQUIRE([AC_PROG_INSTALL])dnl ++ AC_REQUIRE([AM_MKINSTALLDIRS])dnl ++ AC_REQUIRE([AM_NLS])dnl ++ ++ dnl Perform the following tests also if --disable-nls has been given, ++ dnl because they are needed for "make dist" to work. ++ ++ dnl Search for GNU msgfmt in the PATH. ++ dnl The first test excludes Solaris msgfmt and early GNU msgfmt versions. ++ dnl The second test excludes FreeBSD msgfmt. ++ AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt, ++ [$ac_dir/$ac_word --statistics /dev/null >/dev/null 2>&1 && ++ (if $ac_dir/$ac_word --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi)], ++ :) ++ AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) ++ ++ dnl Search for GNU xgettext 0.12 or newer in the PATH. ++ dnl The first test excludes Solaris xgettext and early GNU xgettext versions. ++ dnl The second test excludes FreeBSD xgettext. ++ AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext, ++ [$ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >/dev/null 2>&1 && ++ (if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi)], ++ :) ++ dnl Remove leftover from FreeBSD xgettext call. ++ rm -f messages.po ++ ++ dnl Search for GNU msgmerge 0.11 or newer in the PATH. ++ AM_PATH_PROG_WITH_TEST(MSGMERGE, msgmerge, ++ [$ac_dir/$ac_word --update -q /dev/null /dev/null >/dev/null 2>&1], :) ++ ++ dnl This could go away some day; the PATH_PROG_WITH_TEST already does it. ++ dnl Test whether we really found GNU msgfmt. ++ if test "$GMSGFMT" != ":"; then ++ dnl If it is no GNU msgfmt we define it as : so that the ++ dnl Makefiles still can work. ++ if $GMSGFMT --statistics /dev/null >/dev/null 2>&1 && ++ (if $GMSGFMT --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then ++ : ; ++ else ++ GMSGFMT=`echo "$GMSGFMT" | sed -e 's,^.*/,,'` ++ AC_MSG_RESULT( ++ [found $GMSGFMT program is not GNU msgfmt; ignore it]) ++ GMSGFMT=":" ++ fi ++ fi ++ ++ dnl This could go away some day; the PATH_PROG_WITH_TEST already does it. ++ dnl Test whether we really found GNU xgettext. ++ if test "$XGETTEXT" != ":"; then ++ dnl If it is no GNU xgettext we define it as : so that the ++ dnl Makefiles still can work. ++ if $XGETTEXT --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >/dev/null 2>&1 && ++ (if $XGETTEXT --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then ++ : ; ++ else ++ AC_MSG_RESULT( ++ [found xgettext program is not GNU xgettext; ignore it]) ++ XGETTEXT=":" ++ fi ++ dnl Remove leftover from FreeBSD xgettext call. ++ rm -f messages.po ++ fi ++ ++ AC_OUTPUT_COMMANDS([ ++ for ac_file in $CONFIG_FILES; do ++ # Support "outfile[:infile[:infile...]]" ++ case "$ac_file" in ++ *:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; ++ esac ++ # PO directories have a Makefile.in generated from Makefile.in.in. ++ case "$ac_file" in */Makefile.in) ++ # Adjust a relative srcdir. ++ ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'` ++ ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`" ++ ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'` ++ # In autoconf-2.13 it is called $ac_given_srcdir. ++ # In autoconf-2.50 it is called $srcdir. ++ test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir" ++ case "$ac_given_srcdir" in ++ .) top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;; ++ /*) top_srcdir="$ac_given_srcdir" ;; ++ *) top_srcdir="$ac_dots$ac_given_srcdir" ;; ++ esac ++ if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then ++ rm -f "$ac_dir/POTFILES" ++ test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES" ++ cat "$ac_given_srcdir/$ac_dir/POTFILES.in" | sed -e "/^#/d" -e "/^[ ]*\$/d" -e "s,.*, $top_srcdir/& \\\\," | sed -e "\$s/\(.*\) \\\\/\1/" > "$ac_dir/POTFILES" ++ POMAKEFILEDEPS="POTFILES.in" ++ # ALL_LINGUAS, POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES depend ++ # on $ac_dir but don't depend on user-specified configuration ++ # parameters. ++ if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then ++ # The LINGUAS file contains the set of available languages. ++ if test -n "$OBSOLETE_ALL_LINGUAS"; then ++ test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete" ++ fi ++ ALL_LINGUAS_=`sed -e "/^#/d" "$ac_given_srcdir/$ac_dir/LINGUAS"` ++ # Hide the ALL_LINGUAS assigment from automake. ++ eval 'ALL_LINGUAS''=$ALL_LINGUAS_' ++ POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS" ++ else ++ # The set of available languages was given in configure.in. ++ eval 'ALL_LINGUAS''=$OBSOLETE_ALL_LINGUAS' ++ fi ++ # Compute POFILES ++ # as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).po) ++ # Compute UPDATEPOFILES ++ # as $(foreach lang, $(ALL_LINGUAS), $(lang).po-update) ++ # Compute DUMMYPOFILES ++ # as $(foreach lang, $(ALL_LINGUAS), $(lang).nop) ++ # Compute GMOFILES ++ # as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).gmo) ++ case "$ac_given_srcdir" in ++ .) srcdirpre= ;; ++ *) srcdirpre='$(srcdir)/' ;; ++ esac ++ POFILES= ++ UPDATEPOFILES= ++ DUMMYPOFILES= ++ GMOFILES= ++ for lang in $ALL_LINGUAS; do ++ POFILES="$POFILES $srcdirpre$lang.po" ++ UPDATEPOFILES="$UPDATEPOFILES $lang.po-update" ++ DUMMYPOFILES="$DUMMYPOFILES $lang.nop" ++ GMOFILES="$GMOFILES $srcdirpre$lang.gmo" ++ done ++ # CATALOGS depends on both $ac_dir and the user's LINGUAS ++ # environment variable. ++ INST_LINGUAS= ++ if test -n "$ALL_LINGUAS"; then ++ for presentlang in $ALL_LINGUAS; do ++ useit=no ++ if test "%UNSET%" != "$LINGUAS"; then ++ desiredlanguages="$LINGUAS" ++ else ++ desiredlanguages="$ALL_LINGUAS" ++ fi ++ for desiredlang in $desiredlanguages; do ++ # Use the presentlang catalog if desiredlang is ++ # a. equal to presentlang, or ++ # b. a variant of presentlang (because in this case, ++ # presentlang can be used as a fallback for messages ++ # which are not translated in the desiredlang catalog). ++ case "$desiredlang" in ++ "$presentlang"*) useit=yes;; ++ esac ++ done ++ if test $useit = yes; then ++ INST_LINGUAS="$INST_LINGUAS $presentlang" ++ fi ++ done ++ fi ++ CATALOGS= ++ if test -n "$INST_LINGUAS"; then ++ for lang in $INST_LINGUAS; do ++ CATALOGS="$CATALOGS $lang.gmo" ++ done ++ fi ++ test -n "$as_me" && echo "$as_me: creating $ac_dir/Makefile" || echo "creating $ac_dir/Makefile" ++ sed -e "/^POTFILES =/r $ac_dir/POTFILES" -e "/^# Makevars/r $ac_given_srcdir/$ac_dir/Makevars" -e "s|@POFILES@|$POFILES|g" -e "s|@UPDATEPOFILES@|$UPDATEPOFILES|g" -e "s|@DUMMYPOFILES@|$DUMMYPOFILES|g" -e "s|@GMOFILES@|$GMOFILES|g" -e "s|@CATALOGS@|$CATALOGS|g" -e "s|@POMAKEFILEDEPS@|$POMAKEFILEDEPS|g" "$ac_dir/Makefile.in" > "$ac_dir/Makefile" ++ for f in "$ac_given_srcdir/$ac_dir"/Rules-*; do ++ if test -f "$f"; then ++ case "$f" in ++ *.orig | *.bak | *~) ;; ++ *) cat "$f" >> "$ac_dir/Makefile" ;; ++ esac ++ fi ++ done ++ fi ++ ;; ++ esac ++ done], ++ [# Capture the value of obsolete ALL_LINGUAS because we need it to compute ++ # POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES, CATALOGS. But hide it ++ # from automake. ++ eval 'OBSOLETE_ALL_LINGUAS''="$ALL_LINGUAS"' ++ # Capture the value of LINGUAS because we need it to compute CATALOGS. ++ LINGUAS="${LINGUAS-%UNSET%}" ++ ]) ++]) ++ ++dnl Postprocesses a Makefile in a directory containing PO files. ++AC_DEFUN([AM_POSTPROCESS_PO_MAKEFILE], ++[ ++ # When this code is run, in config.status, two variables have already been ++ # set: ++ # - OBSOLETE_ALL_LINGUAS is the value of LINGUAS set in configure.in, ++ # - LINGUAS is the value of the environment variable LINGUAS at configure ++ # time. ++ ++changequote(,)dnl ++ # Adjust a relative srcdir. ++ ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'` ++ ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`" ++ ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'` ++ # In autoconf-2.13 it is called $ac_given_srcdir. ++ # In autoconf-2.50 it is called $srcdir. ++ test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir" ++ case "$ac_given_srcdir" in ++ .) top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;; ++ /*) top_srcdir="$ac_given_srcdir" ;; ++ *) top_srcdir="$ac_dots$ac_given_srcdir" ;; ++ esac ++ ++ # Find a way to echo strings without interpreting backslash. ++ if test "X`(echo '\t') 2>/dev/null`" = 'X\t'; then ++ gt_echo='echo' ++ else ++ if test "X`(printf '%s\n' '\t') 2>/dev/null`" = 'X\t'; then ++ gt_echo='printf %s\n' ++ else ++ echo_func () { ++ cat < "$ac_file.tmp" ++ if grep -l '@TCLCATALOGS@' "$ac_file" > /dev/null; then ++ # Add dependencies that cannot be formulated as a simple suffix rule. ++ for lang in $ALL_LINGUAS; do ++ frobbedlang=`echo $lang | sed -e 's/\..*$//' -e 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'` ++ cat >> "$ac_file.tmp" < /dev/null; then ++ # Add dependencies that cannot be formulated as a simple suffix rule. ++ for lang in $ALL_LINGUAS; do ++ frobbedlang=`echo $lang | sed -e 's/_/-/g'` ++ cat >> "$ac_file.tmp" <> "$ac_file.tmp" < ++#include ++/* The string "%2$d %1$d", with dollar characters protected from the shell's ++ dollar expansion (possibly an autoconf bug). */ ++static char format[] = { '%', '2', '$', 'd', ' ', '%', '1', '$', 'd', '\0' }; ++static char buf[100]; ++int main () ++{ ++ sprintf (buf, format, 33, 55); ++ return (strcmp (buf, "55 33") != 0); ++}], gt_cv_func_printf_posix=yes, gt_cv_func_printf_posix=no, ++ [ ++ AC_EGREP_CPP(notposix, [ ++#if defined __NetBSD__ || defined _MSC_VER || defined __MINGW32__ || defined __CYGWIN__ ++ notposix ++#endif ++ ], gt_cv_func_printf_posix="guessing no", ++ gt_cv_func_printf_posix="guessing yes") ++ ]) ++ ]) ++ case $gt_cv_func_printf_posix in ++ *yes) ++ AC_DEFINE(HAVE_POSIX_PRINTF, 1, ++ [Define if your printf() function supports format strings with positions.]) ++ ;; ++ esac ++]) +--- lrzsz-0.12.20.safe/m4/progtest.m4 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/progtest.m4 2004-09-12 14:40:34.990651568 -0400 +@@ -0,0 +1,91 @@ ++# progtest.m4 serial 3 (gettext-0.12) ++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 ++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 , 1996. ++ ++# Search path for a program which passes the given test. ++ ++dnl AM_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR, ++dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]]) ++AC_DEFUN([AM_PATH_PROG_WITH_TEST], ++[ ++# Prepare PATH_SEPARATOR. ++# The user is always right. ++if test "${PATH_SEPARATOR+set}" != set; then ++ echo "#! /bin/sh" >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 ++ ++# Find out how to test for executable files. Don't use a zero-byte file, ++# as systems may use methods other than mode bits to determine executability. ++cat >conf$$.file <<_ASEOF ++#! /bin/sh ++exit 0 ++_ASEOF ++chmod +x conf$$.file ++if test -x conf$$.file >/dev/null 2>&1; then ++ ac_executable_p="test -x" ++else ++ ac_executable_p="test -f" ++fi ++rm -f conf$$.file ++ ++# Extract the first word of "$2", so it can be a program name with args. ++set dummy $2; ac_word=[$]2 ++AC_MSG_CHECKING([for $ac_word]) ++AC_CACHE_VAL(ac_cv_path_$1, ++[case "[$]$1" in ++ [[\\/]]* | ?:[[\\/]]*) ++ ac_cv_path_$1="[$]$1" # Let the user override the test with a path. ++ ;; ++ *) ++ ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR ++ for ac_dir in ifelse([$5], , $PATH, [$5]); do ++ IFS="$ac_save_IFS" ++ test -z "$ac_dir" && ac_dir=. ++ for ac_exec_ext in '' $ac_executable_extensions; do ++ if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then ++ if [$3]; then ++ ac_cv_path_$1="$ac_dir/$ac_word$ac_exec_ext" ++ break 2 ++ fi ++ fi ++ done ++ done ++ IFS="$ac_save_IFS" ++dnl If no 4th arg is given, leave the cache variable unset, ++dnl so AC_PATH_PROGS will keep looking. ++ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4" ++])dnl ++ ;; ++esac])dnl ++$1="$ac_cv_path_$1" ++if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then ++ AC_MSG_RESULT([$]$1) ++else ++ AC_MSG_RESULT(no) ++fi ++AC_SUBST($1)dnl ++]) +--- lrzsz-0.12.20.safe/m4/signed.m4 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/signed.m4 2004-09-12 14:40:34.996650656 -0400 +@@ -0,0 +1,19 @@ ++# signed.m4 serial 1 (gettext-0.10.40) ++dnl Copyright (C) 2001-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([bh_C_SIGNED], ++[ ++ AC_CACHE_CHECK([for signed], bh_cv_c_signed, ++ [AC_TRY_COMPILE(, [signed char x;], bh_cv_c_signed=yes, bh_cv_c_signed=no)]) ++ if test $bh_cv_c_signed = no; then ++ AC_DEFINE(signed, , ++ [Define to empty if the C compiler doesn't support this keyword.]) ++ fi ++]) +--- lrzsz-0.12.20.safe/m4/size_max.m4 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/size_max.m4 2004-09-12 14:40:35.003649592 -0400 +@@ -0,0 +1,61 @@ ++# size_max.m4 serial 2 ++dnl Copyright (C) 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. ++ ++AC_DEFUN([gl_SIZE_MAX], ++[ ++ AC_CHECK_HEADERS(stdint.h) ++ dnl First test whether the system already has SIZE_MAX. ++ AC_MSG_CHECKING([for SIZE_MAX]) ++ result= ++ AC_EGREP_CPP([Found it], [ ++#include ++#if HAVE_STDINT_H ++#include ++#endif ++#ifdef SIZE_MAX ++Found it ++#endif ++], result=yes) ++ if test -z "$result"; then ++ dnl Define it ourselves. Here we assume that the type 'size_t' is not wider ++ dnl than the type 'unsigned long'. ++ dnl The _AC_COMPUTE_INT macro works up to LONG_MAX, since it uses 'expr', ++ dnl which is guaranteed to work from LONG_MIN to LONG_MAX. ++ _AC_COMPUTE_INT([~(size_t)0 / 10], res_hi, ++ [#include ], result=?) ++ _AC_COMPUTE_INT([~(size_t)0 % 10], res_lo, ++ [#include ], result=?) ++ _AC_COMPUTE_INT([sizeof (size_t) <= sizeof (unsigned int)], fits_in_uint, ++ [#include ], result=?) ++ if test "$fits_in_uint" = 1; then ++ dnl Even though SIZE_MAX fits in an unsigned int, it must be of type ++ dnl 'unsigned long' if the type 'size_t' is the same as 'unsigned long'. ++ AC_TRY_COMPILE([#include ++ extern size_t foo; ++ extern unsigned long foo; ++ ], [], fits_in_uint=0) ++ fi ++ if test -z "$result"; then ++ if test "$fits_in_uint" = 1; then ++ result="$res_hi$res_lo"U ++ else ++ result="$res_hi$res_lo"UL ++ fi ++ else ++ dnl Shouldn't happen, but who knows... ++ result='~(size_t)0' ++ fi ++ fi ++ AC_MSG_RESULT([$result]) ++ if test "$result" != yes; then ++ AC_DEFINE_UNQUOTED([SIZE_MAX], [$result], ++ [Define as the maximum value of type 'size_t', if the system doesn't define it.]) ++ fi ++]) +--- lrzsz-0.12.20.safe/m4/stdint_h.m4 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/stdint_h.m4 2004-09-12 14:40:35.009648680 -0400 +@@ -0,0 +1,28 @@ ++# stdint_h.m4 serial 3 (gettext-0.12) ++dnl Copyright (C) 1997-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 Paul Eggert. ++ ++# Define HAVE_STDINT_H_WITH_UINTMAX if exists, ++# doesn't clash with , and declares uintmax_t. ++ ++AC_DEFUN([jm_AC_HEADER_STDINT_H], ++[ ++ AC_CACHE_CHECK([for stdint.h], jm_ac_cv_header_stdint_h, ++ [AC_TRY_COMPILE( ++ [#include ++#include ], ++ [uintmax_t i = (uintmax_t) -1;], ++ jm_ac_cv_header_stdint_h=yes, ++ jm_ac_cv_header_stdint_h=no)]) ++ if test $jm_ac_cv_header_stdint_h = yes; then ++ AC_DEFINE_UNQUOTED(HAVE_STDINT_H_WITH_UINTMAX, 1, ++ [Define if exists, doesn't clash with , ++ and declares uintmax_t. ]) ++ fi ++]) +--- lrzsz-0.12.20.safe/m4/uintmax_t.m4 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/uintmax_t.m4 2004-09-12 14:40:35.021646856 -0400 +@@ -0,0 +1,32 @@ ++# uintmax_t.m4 serial 7 (gettext-0.12) ++dnl Copyright (C) 1997-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 Paul Eggert. ++ ++AC_PREREQ(2.13) ++ ++# Define uintmax_t to 'unsigned long' or 'unsigned long long' ++# if it is not already defined in or . ++ ++AC_DEFUN([jm_AC_TYPE_UINTMAX_T], ++[ ++ AC_REQUIRE([jm_AC_HEADER_INTTYPES_H]) ++ AC_REQUIRE([jm_AC_HEADER_STDINT_H]) ++ if test $jm_ac_cv_header_inttypes_h = no && test $jm_ac_cv_header_stdint_h = no; then ++ AC_REQUIRE([jm_AC_TYPE_UNSIGNED_LONG_LONG]) ++ test $ac_cv_type_unsigned_long_long = yes \ ++ && ac_type='unsigned long long' \ ++ || ac_type='unsigned long' ++ AC_DEFINE_UNQUOTED(uintmax_t, $ac_type, ++ [Define to unsigned long or unsigned long long ++ if and don't define.]) ++ else ++ AC_DEFINE(HAVE_UINTMAX_T, 1, ++ [Define if you have the 'uintmax_t' type in or .]) ++ fi ++]) +--- lrzsz-0.12.20.safe/m4/ulonglong.m4 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/ulonglong.m4 2004-09-12 14:40:35.028645792 -0400 +@@ -0,0 +1,25 @@ ++# ulonglong.m4 serial 3 ++dnl Copyright (C) 1999-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 Paul Eggert. ++ ++# Define HAVE_UNSIGNED_LONG_LONG if 'unsigned long long' works. ++ ++AC_DEFUN([jm_AC_TYPE_UNSIGNED_LONG_LONG], ++[ ++ AC_CACHE_CHECK([for unsigned long long], ac_cv_type_unsigned_long_long, ++ [AC_TRY_LINK([unsigned long long ull = 1ULL; int i = 63;], ++ [unsigned long long ullmax = (unsigned long long) -1; ++ return ull << i | ull >> i | ullmax / ull | ullmax % ull;], ++ ac_cv_type_unsigned_long_long=yes, ++ ac_cv_type_unsigned_long_long=no)]) ++ if test $ac_cv_type_unsigned_long_long = yes; then ++ AC_DEFINE(HAVE_UNSIGNED_LONG_LONG, 1, ++ [Define if you have the 'unsigned long long' type.]) ++ fi ++]) +--- lrzsz-0.12.20.safe/m4/wchar_t.m4 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/wchar_t.m4 2004-09-12 14:40:35.034644880 -0400 +@@ -0,0 +1,22 @@ ++# wchar_t.m4 serial 1 (gettext-0.12) ++dnl Copyright (C) 2002-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 Test whether has the 'wchar_t' type. ++dnl Prerequisite: AC_PROG_CC ++ ++AC_DEFUN([gt_TYPE_WCHAR_T], ++[ ++ AC_CACHE_CHECK([for wchar_t], gt_cv_c_wchar_t, ++ [AC_TRY_COMPILE([#include ++ wchar_t foo = (wchar_t)'\0';], , ++ gt_cv_c_wchar_t=yes, gt_cv_c_wchar_t=no)]) ++ if test $gt_cv_c_wchar_t = yes; then ++ AC_DEFINE(HAVE_WCHAR_T, 1, [Define if you have the 'wchar_t' type.]) ++ fi ++]) +--- lrzsz-0.12.20.safe/m4/wint_t.m4 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/wint_t.m4 2004-09-12 14:40:35.040643968 -0400 +@@ -0,0 +1,22 @@ ++# wint_t.m4 serial 1 (gettext-0.12) ++dnl Copyright (C) 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 Test whether has the 'wint_t' type. ++dnl Prerequisite: AC_PROG_CC ++ ++AC_DEFUN([gt_TYPE_WINT_T], ++[ ++ AC_CACHE_CHECK([for wint_t], gt_cv_c_wint_t, ++ [AC_TRY_COMPILE([#include ++ wint_t foo = (wchar_t)'\0';], , ++ gt_cv_c_wint_t=yes, gt_cv_c_wint_t=no)]) ++ if test $gt_cv_c_wint_t = yes; then ++ AC_DEFINE(HAVE_WINT_T, 1, [Define if you have the 'wint_t' type.]) ++ fi ++]) +--- lrzsz-0.12.20.safe/m4/xsize.m4 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/m4/xsize.m4 2004-09-12 14:40:35.047642904 -0400 +@@ -0,0 +1,14 @@ ++# xsize.m4 serial 2 ++dnl Copyright (C) 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. ++ ++AC_DEFUN([gl_XSIZE], ++[ ++ dnl Prerequisites of lib/xsize.h. ++ AC_REQUIRE([gl_SIZE_MAX]) ++ AC_CHECK_HEADERS(stdint.h) ++]) +--- lrzsz-0.12.20.safe/Makefile.am 1998-12-30 06:19:40.000000000 -0500 ++++ lrzsz-0.12.20/Makefile.am 2004-09-12 14:40:35.121631656 -0400 +@@ -1,5 +1,5 @@ + SUBDIRS = lib intl src po man testsuite +-EXTRA_DIST = check.lrzsz COMPATABILITY README.cvs README.isdn4linux \ ++EXTRA_DIST = config.rpath check.lrzsz COMPATABILITY README.cvs README.isdn4linux \ + README.gettext rpmrc buildrpm systype.in fastcheck.sh README.tests \ + beos-runpiped.c fastcheck.beos + noinst_SCRIPTS=systype +@@ -83,3 +83,5 @@ + rpm: $(PR).tar.gz Specfile + $(srcdir)/buildrpm $(srcdir) + ++ ++ACLOCAL_AMFLAGS = -I m4 +--- lrzsz-0.12.20.safe/Makefile.in 1998-12-30 11:31:40.000000000 -0500 ++++ lrzsz-0.12.20/Makefile.in 2004-09-12 14:40:35.109633480 -0400 +@@ -125,7 +125,7 @@ + && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status + + $(ACLOCAL_M4): configure.in acinclude.m4 +- cd $(srcdir) && $(ACLOCAL) ++ cd $(srcdir) && $(ACLOCAL) -I m4 + + config.status: $(srcdir)/configure + $(SHELL) ./config.status --recheck +--- lrzsz-0.12.20.safe/mkinstalldirs 1998-04-26 09:20:52.000000000 -0400 ++++ lrzsz-0.12.20/mkinstalldirs 2004-09-12 14:40:34.337750824 -0400 +@@ -1,34 +1,150 @@ + #! /bin/sh + # mkinstalldirs --- make directory hierarchy +-# Author: Noah Friedman ++ ++scriptversion=2004-02-15.20 ++ ++# Original author: Noah Friedman + # Created: 1993-05-16 +-# Last modified: 1995-03-05 +-# Public domain ++# Public domain. ++# ++# This file is maintained in Automake, please report ++# bugs to or send patches to ++# . + + errstatus=0 ++dirmode="" + +-for file in ${1+"$@"} ; do +- set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'` +- shift ++usage="\ ++Usage: mkinstalldirs [-h] [--help] [--version] [-m MODE] DIR ... + +- pathcomp= +- for d in ${1+"$@"} ; do +- pathcomp="$pathcomp$d" +- case "$pathcomp" in +- -* ) pathcomp=./$pathcomp ;; +- esac ++Create each directory DIR (with mode MODE, if specified), including all ++leading file name components. + +- if test ! -d "$pathcomp"; then +- echo "mkdir $pathcomp" 1>&2 +- mkdir "$pathcomp" > /dev/null 2>&1 || lasterr=$? +- fi ++Report bugs to ." + +- if test ! -d "$pathcomp"; then ++# process command line arguments ++while test $# -gt 0 ; do ++ case $1 in ++ -h | --help | --h*) # -h for help ++ echo "$usage" ++ exit 0 ++ ;; ++ -m) # -m PERM arg ++ shift ++ test $# -eq 0 && { echo "$usage" 1>&2; exit 1; } ++ dirmode=$1 ++ shift ++ ;; ++ --version) ++ echo "$0 $scriptversion" ++ exit 0 ++ ;; ++ --) # stop option processing ++ shift ++ break ++ ;; ++ -*) # unknown option ++ echo "$usage" 1>&2 ++ exit 1 ++ ;; ++ *) # first non-opt arg ++ break ++ ;; ++ esac ++done ++ ++for file ++do ++ if test -d "$file"; then ++ shift ++ else ++ break ++ fi ++done ++ ++case $# in ++ 0) exit 0 ;; ++esac ++ ++# Solaris 8's mkdir -p isn't thread-safe. If you mkdir -p a/b and ++# mkdir -p a/c at the same time, both will detect that a is missing, ++# one will create a, then the other will try to create a and die with ++# a "File exists" error. This is a problem when calling mkinstalldirs ++# from a parallel make. We use --version in the probe to restrict ++# ourselves to GNU mkdir, which is thread-safe. ++case $dirmode in ++ '') ++ if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then ++ echo "mkdir -p -- $*" ++ exec mkdir -p -- "$@" ++ else ++ # On NextStep and OpenStep, the `mkdir' command does not ++ # recognize any option. It will interpret all options as ++ # directories to create, and then abort because `.' already ++ # exists. ++ test -d ./-p && rmdir ./-p ++ test -d ./--version && rmdir ./--version ++ fi ++ ;; ++ *) ++ if mkdir -m "$dirmode" -p --version . >/dev/null 2>&1 && ++ test ! -d ./--version; then ++ echo "mkdir -m $dirmode -p -- $*" ++ exec mkdir -m "$dirmode" -p -- "$@" ++ else ++ # Clean up after NextStep and OpenStep mkdir. ++ for d in ./-m ./-p ./--version "./$dirmode"; ++ do ++ test -d $d && rmdir $d ++ done ++ fi ++ ;; ++esac ++ ++for file ++do ++ set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'` ++ shift ++ ++ pathcomp= ++ for d ++ do ++ pathcomp="$pathcomp$d" ++ case $pathcomp in ++ -*) pathcomp=./$pathcomp ;; ++ esac ++ ++ if test ! -d "$pathcomp"; then ++ echo "mkdir $pathcomp" ++ ++ mkdir "$pathcomp" || lasterr=$? ++ ++ if test ! -d "$pathcomp"; then + errstatus=$lasterr +- fi ++ else ++ if test ! -z "$dirmode"; then ++ echo "chmod $dirmode $pathcomp" ++ lasterr="" ++ chmod "$dirmode" "$pathcomp" || lasterr=$? + +- pathcomp="$pathcomp/" +- done ++ if test ! -z "$lasterr"; then ++ errstatus=$lasterr ++ fi ++ fi ++ fi ++ fi ++ ++ pathcomp="$pathcomp/" ++ done + done + + exit $errstatus ++ ++# Local Variables: ++# mode: shell-script ++# sh-indentation: 2 ++# eval: (add-hook 'write-file-hooks 'time-stamp) ++# time-stamp-start: "scriptversion=" ++# time-stamp-format: "%:y-%02m-%02d.%02H" ++# time-stamp-end: "$" ++# End: +--- lrzsz-0.12.20.safe/po/boldquot.sed 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/po/boldquot.sed 2004-09-12 14:40:34.723692152 -0400 +@@ -0,0 +1,10 @@ ++s/"\([^"]*\)"/“\1â€/g ++s/`\([^`']*\)'/‘\1’/g ++s/ '\([^`']*\)' / ‘\1’ /g ++s/ '\([^`']*\)'$/ ‘\1’/g ++s/^'\([^`']*\)' /‘\1’ /g ++s/“â€/""/g ++s/“/“/g ++s/â€/â€/g ++s/‘/‘/g ++s/’/’/g +--- lrzsz-0.12.20.safe/po/cat-id-tbl.c 1998-12-29 04:24:24.000000000 -0500 ++++ lrzsz-0.12.20/po/cat-id-tbl.c 1969-12-31 19:00:00.000000000 -0500 +@@ -1,234 +0,0 @@ +-/* Automatically generated by po2tbl.sed from lrzsz.pot. */ +- +-#if HAVE_CONFIG_H +-# include +-#endif +- +-#include "libgettext.h" +- +-const struct _msg_ent _msg_tbl[] = { +- {"", 1}, +- {"io_mode(,2) in rbsb.c not implemented\n", 2}, +- {"caught signal %d; exiting", 3}, +- {"command tries", 4}, +- {"packetlength", 5}, +- {"packetlength out of range 24..%ld", 6}, +- {"framelength", 7}, +- {"framelength out of range 32..%ld", 8}, +- {"min_bps", 9}, +- {"min_bps must be >= 0", 10}, +- {"min_bps_time", 11}, +- {"min_bps_time must be > 1", 12}, +- {"hour to large (0..23)", 13}, +- {"unparsable stop time\n", 14}, +- {"minute to large (0..59)", 15}, +- {"stop time to small", 16}, +- {"stop-at", 17}, +- {"timeout", 18}, +- {"timeout out of range 10..1000", 19}, +- {"security violation: can't do that under restricted shell\n", 20}, +- {"window size", 21}, +- {"cannot turnoff syslog", 22}, +- {"startup delay", 23}, +- {"out of memory", 24}, +- {"this program was never intended to be used setuid\n", 25}, +- {"need at least one file to send", 26}, +- {"Can't send command in restricted mode\n", 27}, +- {"hostname too long\n", 28}, +- {"illegal server address\n", 29}, +- {"can read only one file from stdin", 30}, +- {"Transfer incomplete\n", 31}, +- {"Transfer complete\n", 32}, +- {"send_pseudo %s: cannot open tmpfile %s: %s", 33}, +- {"send_pseudo %s: cannot lstat tmpfile %s: %s", 34}, +- {"send_pseudo %s: avoiding symlink trap", 35}, +- {"send_pseudo %s: cannot write to tmpfile %s: %s", 36}, +- {"send_pseudo %s: failed", 37}, +- {"send_pseudo %s: ok", 38}, +- {"tcp protocol init failed\n", 39}, +- {"Answering TIMESYNC at %s", 40}, +- {"timezone", 41}, +- {"timezone unknown", 42}, +- {"Can't open any requested files.", 43}, +- {"security violation: not allowed to upload from %s", 44}, +- {"cannot open %s", 45}, +- {"is not a file: %s", 46}, +- {"%s/%s: error occured", 47}, +- {"skipped: %s", 48}, +- {"%s/%s: skipped", 49}, +- {"Bytes Sent:%7ld BPS:%-8ld \n", 50}, +- {"Sending %s, %ld blocks: ", 51}, +- {"Give your local XMODEM receive command now.", 52}, +- {"Sending: %s\n", 53}, +- {"Timeout on pathname", 54}, +- {"Receiver Cancelled", 55}, +- {"No ACK on EOT", 56}, +- {"Xmodem sectors/kbytes sent: %3d/%2dk", 57}, +- {"Ymodem sectors/kbytes sent: %3d/%2dk", 58}, +- {"Cancelled", 59}, +- {"Timeout on sector ACK", 60}, +- {"NAK on sector", 61}, +- {"Got burst for sector ACK", 62}, +- {"Got %02x for sector ACK", 63}, +- {"Retry Count Exceeded", 64}, +- {"Try `%s --help' for more information.\n", 65}, +- {"%s version %s\n", 66}, +- {"Usage: %s [options] file ...\n", 67}, +- {" or: %s [options] -{c|i} COMMAND\n", 68}, +- {"Send file(s) with ZMODEM/YMODEM/XMODEM protocol\n", 69}, +- {"\ +- (X) = option applies to XMODEM only\n\ +- (Y) = option applies to YMODEM only\n\ +- (Z) = option applies to ZMODEM only\n", 70}, +- {"\ +- -+, --append append to existing destination file (Z)\n\ +- -2, --twostop use 2 stop bits\n\ +- -4, --try-4k go up to 4K blocksize\n\ +- --start-4k start with 4K blocksize (doesn't try 8)\n\ +- -8, --try-8k go up to 8K blocksize\n\ +- --start-8k start with 8K blocksize\n\ +- -a, --ascii ASCII transfer (change CR/LF to LF)\n\ +- -b, --binary binary transfer\n\ +- -B, --bufsize N buffer N bytes (N==auto: buffer whole file)\n\ +- -c, --command COMMAND execute remote command COMMAND (Z)\n\ +- -C, --command-tries N try N times to execute a command (Z)\n\ +- -d, --dot-to-slash change '.' to '/' in pathnames (Y/Z)\n\ +- --delay-startup N sleep N seconds before doing anything\n\ +- -e, --escape escape all control characters (Z)\n\ +- -E, --rename force receiver to rename files it already has\n\ +- -f, --full-path send full pathname (Y/Z)\n\ +- -i, --immediate-command CMD send remote CMD, return immediately (Z)\n\ +- -h, --help print this usage message\n\ +- -k, --1k send 1024 byte packets (X)\n\ +- -L, --packetlen N limit subpacket length to N bytes (Z)\n\ +- -l, --framelen N limit frame length to N bytes (l>=L) (Z)\n\ +- -m, --min-bps N stop transmission if BPS below N\n\ +- -M, --min-bps-time N for at least N seconds (default: 120)\n", 71}, +- {"\ +- -n, --newer send file if source newer (Z)\n\ +- -N, --newer-or-longer send file if source newer or longer (Z)\n\ +- -o, --16-bit-crc use 16 bit CRC instead of 32 bit CRC (Z)\n\ +- -O, --disable-timeouts disable timeout code, wait forever\n\ +- -p, --protect protect existing destination file (Z)\n\ +- -r, --resume resume interrupted file transfer (Z)\n\ +- -R, --restricted restricted, more secure mode\n\ +- -q, --quiet quiet (no progress reports)\n\ +- -s, --stop-at {HH:MM|+N} stop transmission at HH:MM or in N seconds\n\ +- --tcp build a TCP connection to transmit files\n\ +- --tcp-server open socket, wait for connection\n\ +- -u, --unlink unlink file after transmission\n\ +- -U, --unrestrict turn off restricted mode (if allowed to)\n\ +- -v, --verbose be verbose, provide debugging information\n\ +- -w, --windowsize N Window is N bytes (Z)\n\ +- -X, --xmodem use XMODEM protocol\n\ +- -y, --overwrite overwrite existing files\n\ +- -Y, --overwrite-or-skip overwrite existing files, else skip\n\ +- --ymodem use YMODEM protocol\n\ +- -Z, --zmodem use ZMODEM protocol\n\ +-\n\ +-short options use the same arguments as the long ones\n", 72}, +- {"got ZRQINIT", 73}, +- {"got ZCAN", 74}, +- {"blklen now %d\n", 75}, +- {"zsendfdata: bps rate %ld below min %ld", 76}, +- {"zsendfdata: reached stop time", 77}, +- {"Bytes Sent:%7ld/%7ld BPS:%-8ld ETA %02d:%02d ", 78}, +- {"calc_blklen: reduced to %d due to error\n", 79}, +- {"calc_blklen: returned old value %d due to low bpe diff\n", 80}, +- {"calc_blklen: old %ld, new %ld, d %ld\n", 81}, +- {"calc_blklen: calc total_bytes=%ld, bpe=%ld, ec=%ld\n", 82}, +- {"calc_blklen: blklen %d, ok %ld, failed %ld -> %lu\n", 83}, +- {"calc_blklen: returned %d as best\n", 84}, +- {"\ +-\n\ +-countem: Total %d %ld\n", 85}, +- {"Bad escape sequence %x", 86}, +- {"Sender Canceled", 87}, +- {"TIMEOUT", 88}, +- {"Bad data subpacket", 89}, +- {"Data subpacket too long", 90}, +- {"Garbage count exceeded", 91}, +- {"Got %s", 92}, +- {"Retry %d: ", 93}, +- {"don't have settimeofday, will not set time\n", 94}, +- {"not running as root (this is good!), can not set time\n", 95}, +- {"bytes_per_error", 96}, +- {"bytes-per-error should be >100", 97}, +- {"O_SYNC not supported by the kernel", 98}, +- {"garbage on commandline", 99}, +- {"Usage: %s [options] [filename.if.xmodem]\n", 100}, +- {"Receive files with ZMODEM/YMODEM/XMODEM protocol\n", 101}, +- {"\ +- -+, --append append to existing files\n\ +- -a, --ascii ASCII transfer (change CR/LF to LF)\n\ +- -b, --binary binary transfer\n\ +- -B, --bufsize N buffer N bytes (N==auto: buffer whole file)\n\ +- -c, --with-crc Use 16 bit CRC (X)\n\ +- -C, --allow-remote-commands allow execution of remote commands (Z)\n\ +- -D, --null write all received data to /dev/null\n\ +- --delay-startup N sleep N seconds before doing anything\n\ +- -e, --escape Escape control characters (Z)\n\ +- -E, --rename rename any files already existing\n\ +- --errors N generate CRC error every N bytes (debugging)\n\ +- -h, --help Help, print this usage message\n\ +- -m, --min-bps N stop transmission if BPS below N\n\ +- -M, --min-bps-time N for at least N seconds (default: 120)\n\ +- -O, --disable-timeouts disable timeout code, wait forever for data\n\ +- --o-sync open output file(s) in synchronous write mode\n\ +- -p, --protect protect existing files\n\ +- -q, --quiet quiet, no progress reports\n\ +- -r, --resume try to resume interrupted file transfer (Z)\n\ +- -R, --restricted restricted, more secure mode\n\ +- -s, --stop-at {HH:MM|+N} stop transmission at HH:MM or in N seconds\n\ +- -S, --timesync request remote time (twice: set local time)\n\ +- --syslog[=off] turn syslog on or off, if possible\n\ +- -t, --timeout N set timeout to N tenths of a second\n\ +- -u, --keep-uppercase keep upper case filenames\n\ +- -U, --unrestrict disable restricted mode (if allowed to)\n\ +- -v, --verbose be verbose, provide debugging information\n\ +- -w, --windowsize N Window is N bytes (Z)\n\ +- -X --xmodem use XMODEM protocol\n\ +- -y, --overwrite Yes, clobber existing file if any\n\ +- --ymodem use YMODEM protocol\n\ +- -Z, --zmodem use ZMODEM protocol\n\ +-\n\ +-short options use the same arguments as the long ones\n", 102}, +- {"%s waiting to receive.", 103}, +- {"\rBytes received: %7ld/%7ld BPS:%-6ld \r\n", 104}, +- {"%s: ready to receive %s", 105}, +- {"\rBytes received: %7ld BPS:%-6ld \r\n", 106}, +- {"\ +-\r\n\ +-%s: %s removed.\r\n", 107}, +- {"Pathname fetch returned EOT", 108}, +- {"Received dup Sector", 109}, +- {"Sync Error", 110}, +- {"CRC", 111}, +- {"Checksum", 112}, +- {"Sector number garbled", 113}, +- {"Sender Cancelled", 114}, +- {"Got 0%o sector header", 115}, +- {"file name ends with a /, skipped: %s\n", 116}, +- {"zmanag=%d, Lzmanag=%d\n", 117}, +- {"zconv=%d\n", 118}, +- {"file exists, skipped: %s\n", 119}, +- {"TIMESYNC: here %ld, remote %ld, diff %ld seconds\n", 120}, +- {"TIMESYNC: cannot set time: %s\n", 121}, +- {"cannot tmpfile() for tcp protocol synchronization", 122}, +- {"Topipe", 123}, +- {"Receiving: %s\n", 124}, +- {"Blocks received: %d", 125}, +- {"%s: %s exists\n", 126}, +- {"%s:\tSecurity Violation", 127}, +- {"remote command execution requested", 128}, +- {"not executed", 129}, +- {"got ZRINIT", 130}, +- {"Skipped", 131}, +- {"rzfile: bps rate %ld below min %ld", 132}, +- {"rzfile: reached stop time", 133}, +- {"\rBytes received: %7ld/%7ld BPS:%-6ld ETA %02d:%02d ", 134}, +- {"fgets for tcp protocol synchronization failed: ", 135}, +- {"file close error", 136}, +-}; +- +-int _msg_tbl_length = 136; +--- lrzsz-0.12.20.safe/po/ChangeLog 1998-04-26 09:20:52.000000000 -0400 ++++ lrzsz-0.12.20/po/ChangeLog 2004-09-12 14:40:34.793681512 -0400 +@@ -1,3 +1,15 @@ ++2004-09-12 gettextize ++ ++ * boldquot.sed: New file, from gettext-0.14.1. ++ * en@boldquot.header: New file, from gettext-0.14.1. ++ * en@quot.header: New file, from gettext-0.14.1. ++ * insert-header.sin: New file, from gettext-0.14.1. ++ * quot.sed: New file, from gettext-0.14.1. ++ * remove-potcdate.sin: New file, from gettext-0.14.1. ++ * Rules-quot: New file, from gettext-0.14.1. ++ * cat-id-tbl.c: Remove file. ++ * stamp-cat-id: Remove file. ++ + /* Automatically generated by po2tbl.sed from lrzsz.pot. */ + + #if HAVE_CONFIG_H +--- lrzsz-0.12.20.safe/po/en@boldquot.header 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/po/en@boldquot.header 2004-09-12 14:40:34.731690936 -0400 +@@ -0,0 +1,25 @@ ++# All this catalog "translates" are quotation characters. ++# The msgids must be ASCII and therefore cannot contain real quotation ++# characters, only substitutes like grave accent (0x60), apostrophe (0x27) ++# and double quote (0x22). These substitutes look strange; see ++# http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html ++# ++# This catalog translates grave accent (0x60) and apostrophe (0x27) to ++# left single quotation mark (U+2018) and right single quotation mark (U+2019). ++# It also translates pairs of apostrophe (0x27) to ++# left single quotation mark (U+2018) and right single quotation mark (U+2019) ++# and pairs of quotation mark (0x22) to ++# left double quotation mark (U+201C) and right double quotation mark (U+201D). ++# ++# When output to an UTF-8 terminal, the quotation characters appear perfectly. ++# When output to an ISO-8859-1 terminal, the single quotation marks are ++# transliterated to apostrophes (by iconv in glibc 2.2 or newer) or to ++# grave/acute accent (by libiconv), and the double quotation marks are ++# transliterated to 0x22. ++# When output to an ASCII terminal, the single quotation marks are ++# transliterated to apostrophes, and the double quotation marks are ++# transliterated to 0x22. ++# ++# This catalog furthermore displays the text between the quotation marks in ++# bold face, assuming the VT100/XTerm escape sequences. ++# +--- lrzsz-0.12.20.safe/po/en@quot.header 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/po/en@quot.header 2004-09-12 14:40:34.737690024 -0400 +@@ -0,0 +1,22 @@ ++# All this catalog "translates" are quotation characters. ++# The msgids must be ASCII and therefore cannot contain real quotation ++# characters, only substitutes like grave accent (0x60), apostrophe (0x27) ++# and double quote (0x22). These substitutes look strange; see ++# http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html ++# ++# This catalog translates grave accent (0x60) and apostrophe (0x27) to ++# left single quotation mark (U+2018) and right single quotation mark (U+2019). ++# It also translates pairs of apostrophe (0x27) to ++# left single quotation mark (U+2018) and right single quotation mark (U+2019) ++# and pairs of quotation mark (0x22) to ++# left double quotation mark (U+201C) and right double quotation mark (U+201D). ++# ++# When output to an UTF-8 terminal, the quotation characters appear perfectly. ++# When output to an ISO-8859-1 terminal, the single quotation marks are ++# transliterated to apostrophes (by iconv in glibc 2.2 or newer) or to ++# grave/acute accent (by libiconv), and the double quotation marks are ++# transliterated to 0x22. ++# When output to an ASCII terminal, the single quotation marks are ++# transliterated to apostrophes, and the double quotation marks are ++# transliterated to 0x22. ++# +--- lrzsz-0.12.20.safe/po/insert-header.sin 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/po/insert-header.sin 2004-09-12 14:40:34.743689112 -0400 +@@ -0,0 +1,23 @@ ++# Sed script that inserts the file called HEADER before the header entry. ++# ++# At each occurrence of a line starting with "msgid ", we execute the following ++# commands. At the first occurrence, insert the file. At the following ++# occurrences, do nothing. The distinction between the first and the following ++# occurrences is achieved by looking at the hold space. ++/^msgid /{ ++x ++# Test if the hold space is empty. ++s/m/m/ ++ta ++# Yes it was empty. First occurrence. Read the file. ++r HEADER ++# Output the file's contents by reading the next line. But don't lose the ++# current line while doing this. ++g ++N ++bb ++:a ++# The hold space was nonempty. Following occurrences. Do nothing. ++x ++:b ++} +--- lrzsz-0.12.20.safe/po/Makevars 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/po/Makevars 2004-09-12 14:40:34.748688352 -0400 +@@ -0,0 +1,41 @@ ++# Makefile variables for PO directory in any package using GNU gettext. ++ ++# Usually the message domain is the same as the package name. ++DOMAIN = $(PACKAGE) ++ ++# These two variables depend on the location of this directory. ++subdir = po ++top_builddir = .. ++ ++# These options get passed to xgettext. ++XGETTEXT_OPTIONS = --keyword=_ --keyword=N_ ++ ++# This is the copyright holder that gets inserted into the header of the ++# $(DOMAIN).pot file. Set this to the copyright holder of the surrounding ++# package. (Note that the msgstr strings, extracted from the package's ++# sources, belong to the copyright holder of the package.) Translators are ++# expected to transfer the copyright for their translations to this person ++# or entity, or to disclaim their copyright. The empty string stands for ++# the public domain; in this case the translators are expected to disclaim ++# their copyright. ++COPYRIGHT_HOLDER = Free Software Foundation, Inc. ++ ++# This is the email address or URL to which the translators shall report ++# bugs in the untranslated strings: ++# - Strings which are not entire sentences, see the maintainer guidelines ++# in the GNU gettext documentation, section 'Preparing Strings'. ++# - Strings which use unclear terms or require additional context to be ++# understood. ++# - Strings which make invalid assumptions about notation of date, time or ++# money. ++# - Pluralisation problems. ++# - Incorrect English spelling. ++# - Incorrect formatting. ++# It can be your email address, or a mailing list address where translators ++# can write to without being subscribed, or the URL of a web page through ++# which the translators can contact you. ++MSGID_BUGS_ADDRESS = ++ ++# This is the list of locale categories, beyond LC_MESSAGES, for which the ++# message catalogs shall be used. It is usually empty. ++EXTRA_LOCALE_CATEGORIES = +--- lrzsz-0.12.20.safe/po/quot.sed 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/po/quot.sed 2004-09-12 14:40:34.754687440 -0400 +@@ -0,0 +1,6 @@ ++s/"\([^"]*\)"/“\1â€/g ++s/`\([^`']*\)'/‘\1’/g ++s/ '\([^`']*\)' / ‘\1’ /g ++s/ '\([^`']*\)'$/ ‘\1’/g ++s/^'\([^`']*\)' /‘\1’ /g ++s/“â€/""/g +--- lrzsz-0.12.20.safe/po/remove-potcdate.sin 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/po/remove-potcdate.sin 2004-09-12 14:40:34.762686224 -0400 +@@ -0,0 +1,19 @@ ++# Sed script that remove the POT-Creation-Date line in the header entry ++# from a POT file. ++# ++# The distinction between the first and the following occurrences of the ++# pattern is achieved by looking at the hold space. ++/^"POT-Creation-Date: .*"$/{ ++x ++# Test if the hold space is empty. ++s/P/P/ ++ta ++# Yes it was empty. First occurrence. Remove the line. ++g ++d ++bb ++:a ++# The hold space was nonempty. Following occurrences. Do nothing. ++x ++:b ++} +--- lrzsz-0.12.20.safe/po/Rules-quot 1969-12-31 19:00:00.000000000 -0500 ++++ lrzsz-0.12.20/po/Rules-quot 2004-09-12 14:40:34.778683792 -0400 +@@ -0,0 +1,47 @@ ++# Special Makefile rules for English message catalogs with quotation marks. ++ ++DISTFILES.common.extra1 = quot.sed boldquot.sed en@quot.header en@boldquot.header insert-header.sin Rules-quot ++ ++.SUFFIXES: .insert-header .po-update-en ++ ++en@quot.po-create: ++ $(MAKE) en@quot.po-update ++en@boldquot.po-create: ++ $(MAKE) en@boldquot.po-update ++ ++en@quot.po-update: en@quot.po-update-en ++en@boldquot.po-update: en@boldquot.po-update-en ++ ++.insert-header.po-update-en: ++ @lang=`echo $@ | sed -e 's/\.po-update-en$$//'`; \ ++ if test "$(PACKAGE)" = "gettext"; then PATH=`pwd`/../src:$$PATH; GETTEXTLIBDIR=`cd $(top_srcdir)/src && pwd`; export GETTEXTLIBDIR; fi; \ ++ tmpdir=`pwd`; \ ++ echo "$$lang:"; \ ++ ll=`echo $$lang | sed -e 's/@.*//'`; \ ++ LC_ALL=C; export LC_ALL; \ ++ cd $(srcdir); \ ++ if $(MSGINIT) -i $(DOMAIN).pot --no-translator -l $$ll -o - 2>/dev/null | sed -f $$tmpdir/$$lang.insert-header | $(MSGCONV) -t UTF-8 | $(MSGFILTER) sed -f `echo $$lang | sed -e 's/.*@//'`.sed 2>/dev/null > $$tmpdir/$$lang.new.po; then \ ++ if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \ ++ rm -f $$tmpdir/$$lang.new.po; \ ++ else \ ++ if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \ ++ :; \ ++ else \ ++ echo "creation of $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \ ++ exit 1; \ ++ fi; \ ++ fi; \ ++ else \ ++ echo "creation of $$lang.po failed!" 1>&2; \ ++ rm -f $$tmpdir/$$lang.new.po; \ ++ fi ++ ++en@quot.insert-header: insert-header.sin ++ sed -e '/^#/d' -e 's/HEADER/en@quot.header/g' $(srcdir)/insert-header.sin > en@quot.insert-header ++ ++en@boldquot.insert-header: insert-header.sin ++ sed -e '/^#/d' -e 's/HEADER/en@boldquot.header/g' $(srcdir)/insert-header.sin > en@boldquot.insert-header ++ ++mostlyclean: mostlyclean-quot ++mostlyclean-quot: ++ rm -f *.insert-header +--- lrzsz-0.12.20.safe/po/stamp-cat-id 1998-12-30 02:50:01.000000000 -0500 ++++ lrzsz-0.12.20/po/stamp-cat-id 1969-12-31 19:00:00.000000000 -0500 +@@ -1 +0,0 @@ +-timestamp +--- lrzsz-0.12.20.safe/src/Makefile.am 1998-12-28 03:38:47.000000000 -0500 ++++ lrzsz-0.12.20/src/Makefile.am 2004-09-12 14:40:53.665812512 -0400 +@@ -2,12 +2,12 @@ + lrz_SOURCES=lrz.c timing.c zperr.c zreadline.c crctab.c rbsb.c zm.c protname.c tcp.c lsyslog.c canit.c + lsz_SOURCES=lsz.c timing.c zperr.c zreadline.c crctab.c rbsb.c zm.c protname.c tcp.c lsyslog.c canit.c + noinst_HEADERS = timing.h zglobal.h zmodem.h +-datadir = $(prefix)/@DATADIRNAME@ ++datadir = $(prefix)/share + localedir = $(datadir)/locale + CFLAGS=@CFLAGS@ + DISTCLEAN_FILES=lrzszbug + +-LDADD = ../lib/libzmodem.a @INTLLIBS@ ++LDADD = ../lib/libzmodem.a @LIBINTL@ + AUTOMAKE_OPTIONS=ansi2knr + EXTRA_DIST = ansi2knr.1 ansi2knr.c lrzszbug.in + INCLUDES = -I.. -I$(srcdir) -I$(top_srcdir)/src -I../intl -I$(top_srcdir)/lib diff --git a/meta/recipes-bsp/lrzsz/lrzsz-0.12.20/makefile.patch b/meta/recipes-bsp/lrzsz/lrzsz-0.12.20/makefile.patch new file mode 100644 index 0000000000..c553c8bf34 --- /dev/null +++ b/meta/recipes-bsp/lrzsz/lrzsz-0.12.20/makefile.patch @@ -0,0 +1,20 @@ +diff -ruN lrzsz-0.12.20_org/src/Makefile.in lrzsz-0.12.20_patch/src/Makefile.in +--- lrzsz-0.12.20_org/src/Makefile.in 1998-12-30 17:31:46.000000000 +0100 ++++ lrzsz-0.12.20_patch/src/Makefile.in 2004-04-29 13:57:33.434909656 +0200 +@@ -372,13 +372,13 @@ + rm -f $(DESTDIR)/$(bindir)/`echo lsb | sed -e '$(transform)'` + ln $(DESTDIR)/$(bindir)/`echo lsz |sed -e '$(transform)'` \ + $(DESTDIR)/$(bindir)/`echo lsb |sed -e '$(transform)'` +- rm -f $(bindir)/`echo lsx | sed -e '$(transform)'` ++ rm -f $(DESTDIR)/$(bindir)/`echo lsx | sed -e '$(transform)'` + ln $(DESTDIR)/$(bindir)/`echo lsz |sed -e '$(transform)'` \ + $(DESTDIR)/$(bindir)/`echo lsx |sed -e '$(transform)'` +- rm -f $(bindir)/`echo lrb | sed -e '$(transform)'` ++ rm -f $(DESTDIR)/$(bindir)/`echo lrb | sed -e '$(transform)'` + ln $(DESTDIR)/$(bindir)/`echo lrz |sed -e '$(transform)'` \ + $(DESTDIR)/$(bindir)/`echo lrb |sed -e '$(transform)'` +- rm -f $(bindir)/`echo lrx | sed -e '$(transform)'` ++ rm -f $(DESTDIR)/$(bindir)/`echo lrx | sed -e '$(transform)'` + ln $(DESTDIR)/$(bindir)/`echo lrz |sed -e '$(transform)'` \ + $(DESTDIR)/$(bindir)/`echo lrx |sed -e '$(transform)'` + # rm -f $(bindir)/`echo lrzszbug | sed -e '$(transform)'` diff --git a/meta/recipes-bsp/lrzsz/lrzsz_0.12.20.bb b/meta/recipes-bsp/lrzsz/lrzsz_0.12.20.bb new file mode 100644 index 0000000000..af2db23102 --- /dev/null +++ b/meta/recipes-bsp/lrzsz/lrzsz_0.12.20.bb @@ -0,0 +1,33 @@ +DESCRIPTION = "Tools for zmodem/xmodem/ymodem file transfer" +HOMEPAGE = "http://www.ohse.de/uwe/software/lrzsz.html" +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3 \ + file://src/lrz.c;beginline=1;endline=10;md5=5276956373ff7d8758837f6399a1045f" +SECTION = "console/network" +PRIORITY = "standard" +DEPENDS = "" +PR = "r3" + +SRC_URI = "http://www.ohse.de/uwe/releases/lrzsz-${PV}.tar.gz \ + file://autotools.patch;patch=1 \ + file://makefile.patch;patch=1 \ + file://gettext.patch;patch=1" + +inherit autotools gettext + +do_install() { + install -d ${D}${bindir}/ + install -m 0755 src/lrz src/lsz ${D}${bindir}/ +} + +pkg_postinst() { + for util in rz rx rb sz sx sb; do + update-alternatives --install ${bindir}/$util $util lrz 100 + done +} + +pkg_postrm() { + for util in rz rx rb sz sx sb; do + update-alternatives --remove $util ${bindir}/lrz + done +} \ No newline at end of file diff --git a/meta/recipes-bsp/pm-utils/pm-utils_1.3.0.bb b/meta/recipes-bsp/pm-utils/pm-utils_1.3.0.bb new file mode 100644 index 0000000000..cb90f87acc --- /dev/null +++ b/meta/recipes-bsp/pm-utils/pm-utils_1.3.0.bb @@ -0,0 +1,16 @@ +SECTION = "base" +DESCRIPTION = "PM hooks" +LICENSE="GPL" + +PR = "r0" + +SRC_URI = "http://pm-utils.freedesktop.org/releases/pm-utils-${PV}.tar.gz" + +inherit pkgconfig autotools + +FILES_${PN}-dbg += "${libdir}/pm-utils/bin/.debug \ + ${datadir}/doc/pm-utils/README.debugging" + +do_configure_prepend () { + autoreconf -f -i -s +} diff --git a/meta/recipes-bsp/qemu-config/qemu-config.bb b/meta/recipes-bsp/qemu-config/qemu-config.bb new file mode 100644 index 0000000000..fc59320282 --- /dev/null +++ b/meta/recipes-bsp/qemu-config/qemu-config.bb @@ -0,0 +1,36 @@ +DESCRIPTION = "Adds scripts to use distcc on the host system under qemu" +LICENSE = "GPL" +RDEPENDS = "distcc task-poky-nfs-server oprofileui-server rsync bash" +PR = "r17" + +SRC_URI = "file://distcc.sh \ + file://anjuta-remote-run \ + file://exports \ + file://shutdown.desktop \ + file://qemu-autostart" + +S = "${WORKDIR}" + +COMPATIBLE_MACHINE = "(qemuarm|qemux86)" +PACKAGE_ARCH = "all" + +do_install() { + install -d ${D}${sysconfdir}/profile.d + + install -m 0755 distcc.sh ${D}${sysconfdir}/profile.d/ + install -m 0644 exports ${D}${sysconfdir}/ + + install -d ${D}${bindir} + install -m 0755 anjuta-remote-run ${D}${bindir}/ + + install -d ${D}${datadir}/applications + install -m 0644 shutdown.desktop ${D}${datadir}/applications/ + + install -d ${D}/etc/init.d + install qemu-autostart ${D}/etc/init.d/ +} + +inherit update-rc.d + +INITSCRIPT_NAME = "qemu-autostart" +INITSCRIPT_PARAMS = "start 999 5 2 . stop 20 0 1 6 ." diff --git a/meta/recipes-bsp/qemu-config/qemu-config/anjuta-remote-run b/meta/recipes-bsp/qemu-config/qemu-config/anjuta-remote-run new file mode 100644 index 0000000000..620e3a705b --- /dev/null +++ b/meta/recipes-bsp/qemu-config/qemu-config/anjuta-remote-run @@ -0,0 +1,7 @@ +#!/bin/sh + +. /etc/profile +export DISPLAY=:0 +dbus-launch $@ + + diff --git a/meta/recipes-bsp/qemu-config/qemu-config/distcc.sh b/meta/recipes-bsp/qemu-config/qemu-config/distcc.sh new file mode 100644 index 0000000000..a2b543d6b8 --- /dev/null +++ b/meta/recipes-bsp/qemu-config/qemu-config/distcc.sh @@ -0,0 +1,4 @@ +DISTCC_HOSTS="192.168.7.1" +#DISTCC_VERBOSE="1" + +export DISTCC_HOSTS diff --git a/meta/recipes-bsp/qemu-config/qemu-config/exports b/meta/recipes-bsp/qemu-config/qemu-config/exports new file mode 100644 index 0000000000..b7257aa008 --- /dev/null +++ b/meta/recipes-bsp/qemu-config/qemu-config/exports @@ -0,0 +1 @@ +/ *(rw,no_root_squash,async) diff --git a/meta/recipes-bsp/qemu-config/qemu-config/qemu-autostart b/meta/recipes-bsp/qemu-config/qemu-config/qemu-autostart new file mode 100755 index 0000000000..db2668eb4e --- /dev/null +++ b/meta/recipes-bsp/qemu-config/qemu-config/qemu-autostart @@ -0,0 +1,37 @@ +#!/bin/sh +### BEGIN INIT INFO +# Provides: hddtemp +# Required-Start: $network +# Required-Stop: $network +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: OProfile server +# Description: +### END INIT INFO + +. /etc/init.d/functions + +case "$1" in + start) + echo "Starting automatic qemu services" + . /etc/profile + /usr/bin/oprofile-server & + ;; + + stop) + echo "Stopping qemu services" + killproc oprofile-server + ;; + + restart) + $0 stop + sleep 1 + $0 start + ;; + + *) + echo "usage: $0 { start | stop | restart }" + ;; +esac + +exit 0 diff --git a/meta/recipes-bsp/qemu-config/qemu-config/qemuarm/shutdown.desktop b/meta/recipes-bsp/qemu-config/qemu-config/qemuarm/shutdown.desktop new file mode 100644 index 0000000000..b973d4318e --- /dev/null +++ b/meta/recipes-bsp/qemu-config/qemu-config/qemuarm/shutdown.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Encoding=UTF-8 +Type=Application +Name=Shutdown +Comment=Close down the machine safely +Exec=reboot +Icon=system-shutdown +Terminal=false +Categories=Utility; +StartupNotify=true \ No newline at end of file diff --git a/meta/recipes-bsp/qemu-config/qemu-config/shutdown.desktop b/meta/recipes-bsp/qemu-config/qemu-config/shutdown.desktop new file mode 100644 index 0000000000..272688922c --- /dev/null +++ b/meta/recipes-bsp/qemu-config/qemu-config/shutdown.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Encoding=UTF-8 +Type=Application +Name=Shutdown +Comment=Close down the machine safely +Exec=halt +Icon=system-shutdown +Terminal=false +Categories=Utility; +StartupNotify=true \ No newline at end of file diff --git a/meta/recipes-bsp/setserial/setserial_2.17.bb b/meta/recipes-bsp/setserial/setserial_2.17.bb new file mode 100644 index 0000000000..4e0d1b66e4 --- /dev/null +++ b/meta/recipes-bsp/setserial/setserial_2.17.bb @@ -0,0 +1,18 @@ +DESCRIPTION = "setserial is a program designed to set and/or report the configuration information associated with a serial port" +HOMEPAGE = "http://setserial.sourceforge.net" +AUTHOR = "Theodore Ts'o " +SECTION = "console/utils" +LICENSE = "GPL" +PR = "r2" + +inherit autotools + +SRC_URI = "${SOURCEFORGE_MIRROR}/setserial/${PN}-${PV}.tar.gz" + +do_install() { + install -d ${D}${bindir} + install -d ${D}${mandir}/man8 + + install -m 0755 ${S}/setserial ${D}${bindir} + install -m 0644 ${S}/setserial.8 ${D}${mandir}/man8 +} diff --git a/meta/recipes-bsp/uboot/files/fix-arm920t-eabi.patch b/meta/recipes-bsp/uboot/files/fix-arm920t-eabi.patch new file mode 100644 index 0000000000..69cb75891d --- /dev/null +++ b/meta/recipes-bsp/uboot/files/fix-arm920t-eabi.patch @@ -0,0 +1,22 @@ +--- + cpu/arm920t/config.mk | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- u-boot-1.3.2.orig/cpu/arm920t/config.mk ++++ u-boot-1.3.2/cpu/arm920t/config.mk +@@ -22,13 +22,13 @@ + # + + PLATFORM_RELFLAGS += -fno-strict-aliasing -fno-common -ffixed-r8 \ + -msoft-float + +-PLATFORM_CPPFLAGS += -march=armv4 ++#PLATFORM_CPPFLAGS += -march=armv4 + # ========================================================================= + # + # Supply options according to compiler version + # + # ========================================================================= +-PLATFORM_CPPFLAGS +=$(call cc-option,-mapcs-32,-mabi=apcs-gnu) ++PLATFORM_CPPFLAGS +=$(call cc-option) + PLATFORM_RELFLAGS +=$(call cc-option,-mshort-load-bytes,$(call cc-option,-malignment-traps,)) diff --git a/meta/recipes-bsp/uboot/u-boot-mkimage-native_1.3.2.bb b/meta/recipes-bsp/uboot/u-boot-mkimage-native_1.3.2.bb new file mode 100644 index 0000000000..fcba0d5662 --- /dev/null +++ b/meta/recipes-bsp/uboot/u-boot-mkimage-native_1.3.2.bb @@ -0,0 +1,23 @@ +DESCRIPTION = "U-boot bootloader mkimage tool" +LICENSE = "GPL" +SECTION = "bootloader" + +SRC_URI = "ftp://ftp.denx.de/pub/u-boot/u-boot-${PV}.tar.bz2 \ + file://fix-arm920t-eabi.patch;patch=1" + +S = "${WORKDIR}/u-boot-${PV}" + +inherit native + +EXTRA_OEMAKE = "CROSS_COMPILE=${TARGET_PREFIX}" + +do_compile () { + oe_runmake smdk2410_config + oe_runmake tools +} + +do_install () { + install -d ${D}${bindir}/ + install -m 0755 tools/mkimage ${D}${bindir}/uboot-mkimage + ln -sf uboot-mkimage ${D}${bindir}/mkimage +} diff --git a/meta/recipes-bsp/uboot/u-boot-mkimage_2009.08.bb b/meta/recipes-bsp/uboot/u-boot-mkimage_2009.08.bb new file mode 100644 index 0000000000..bf07198beb --- /dev/null +++ b/meta/recipes-bsp/uboot/u-boot-mkimage_2009.08.bb @@ -0,0 +1,25 @@ +DESCRIPTION = "U-boot bootloader mkimage tool" +LICENSE = "GPL" +SECTION = "bootloader" + +PR = "r1" + +SRC_URI = "ftp://ftp.denx.de/pub/u-boot/u-boot-${PV}.tar.bz2" + +S = "${WORKDIR}/u-boot-${PV}" + +EXTRA_OEMAKE = "CROSS_COMPILE=${TARGET_PREFIX}" + +BBCLASSEXTEND = "native nativesdk" + +do_compile () { + oe_runmake smdk2410_config + oe_runmake tools +} + +do_install () { + install -d ${D}${bindir} + install -m 0755 tools/mkimage ${D}${bindir}/uboot-mkimage + ln -sf uboot-mkimage ${D}${bindir}/mkimage +} + diff --git a/meta/recipes-bsp/uboot/u-boot-omap3-git/beagleboard/name.patch b/meta/recipes-bsp/uboot/u-boot-omap3-git/beagleboard/name.patch new file mode 100644 index 0000000000..ac03e47774 --- /dev/null +++ b/meta/recipes-bsp/uboot/u-boot-omap3-git/beagleboard/name.patch @@ -0,0 +1,14 @@ +--- git/Makefile.orig 2008-07-25 16:21:22.000000000 -0700 ++++ git/Makefile 2008-07-27 06:49:08.000000000 -0700 +@@ -2582,8 +2582,8 @@ SMN42_config : unconfig + ######################################################################### + ## ARM CORTEX Systems + ######################################################################### +-omap3530beagle_config : unconfig +- @$(MKCONFIG) $(@:_config=) arm omap3 omap3530beagle ++beagleboard_config : unconfig ++ @$(MKCONFIG) omap3530beagle arm omap3 omap3530beagle + + overo_config : unconfig + @$(MKCONFIG) $(@:_config=) arm omap3 overo + diff --git a/meta/recipes-bsp/uboot/u-boot-omap3_git.bb b/meta/recipes-bsp/uboot/u-boot-omap3_git.bb new file mode 100644 index 0000000000..480780ebfc --- /dev/null +++ b/meta/recipes-bsp/uboot/u-boot-omap3_git.bb @@ -0,0 +1,20 @@ +require u-boot.inc + +FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/u-boot-omap3-git/${MACHINE}" + +SRCREV = "f40f6db278f602b55820693634a7256b0b4e4b80" + +PV = "2008.10-rc2+${PR}+git${SRCREV}" +PR="r2" + +SRC_URI = "git://gitorious.org/u-boot-omap3/mainline.git;branch=master;protocol=git" + +UBOOT_MACHINE_beagleboard = "omap3_beagle_config" +UBOOT_MACHINE_omap3evm = "omap3_evm_config" +UBOOT_MACHINE_overo = "omap3_overo_config" + +S = "${WORKDIR}/git" + +PACKAGE_ARCH = "${MACHINE_ARCH}" + +COMPATIBLE_MACHINE = "(beagleboard|omap3evm|overo)" diff --git a/meta/recipes-bsp/uboot/u-boot.inc b/meta/recipes-bsp/uboot/u-boot.inc new file mode 100644 index 0000000000..889f6215ed --- /dev/null +++ b/meta/recipes-bsp/uboot/u-boot.inc @@ -0,0 +1,38 @@ +DESCRIPTION = "U-boot bootloader" +HOMEPAGE = "http://u-boot.sf.net" +SECTION = "bootloaders" +PRIORITY = "optional" +LICENSE = "GPL" +PROVIDES = "virtual/bootloader" + +inherit deploy + +PARALLEL_MAKE="" + +EXTRA_OEMAKE = "CROSS_COMPILE=${TARGET_PREFIX}" + +UBOOT_MACHINE ?= "${MACHINE}_config" +UBOOT_IMAGE ?= "u-boot-${MACHINE}-${PV}-${PR}.bin" +UBOOT_SYMLINK ?= "u-boot-${MACHINE}.bin" + +do_compile () { + unset LDFLAGS + unset CFLAGS + unset CPPFLAGS + oe_runmake ${UBOOT_MACHINE} + oe_runmake all +} + +do_deploy () { + install ${S}/u-boot.bin ${DEPLOYDIR}/${UBOOT_IMAGE} + + cd ${DEPLOYDIR} + rm -f ${UBOOT_SYMLINK} + ln -sf ${UBOOT_IMAGE} ${UBOOT_SYMLINK} +} +addtask deploy before do_build after do_compile + +do_install() { + install -d ${D}${bindir} + install -m 755 tools/mkimage ${D}${bindir}/ +} diff --git a/meta/recipes-bsp/usbinit/usbinit.bb b/meta/recipes-bsp/usbinit/usbinit.bb new file mode 100644 index 0000000000..1d4575bddb --- /dev/null +++ b/meta/recipes-bsp/usbinit/usbinit.bb @@ -0,0 +1,18 @@ +DESCRIPTION = "Initscript to manage gadget Ethernet" +LICENSE = "GPL" +PRIORITY = "optional" +PR = "r1" + +SRC_URI = "file://usb-gether" +S = "${WORKDIR}" + +do_install() { + install -d ${D}/etc + install -d ${D}/etc/init.d + install usb-gether ${D}/etc/init.d +} + +inherit update-rc.d + +INITSCRIPT_NAME = "usb-gether" +INITSCRIPT_PARAMS = "start 99 5 2 . stop 20 0 1 6 ." diff --git a/meta/recipes-bsp/usbinit/usbinit/usb-gether b/meta/recipes-bsp/usbinit/usbinit/usb-gether new file mode 100755 index 0000000000..e80a0bb30e --- /dev/null +++ b/meta/recipes-bsp/usbinit/usbinit/usb-gether @@ -0,0 +1,23 @@ +#! /bin/sh +# +# usb-ether Start up the gadget usb ethernet interface. +# + +case "$1" in + start|"") + test "$VERBOSE" != no && echo "Initializing g_ether gadget..." + modprobe g_ether + ifup usb0 + ;; + stop) + test "$VERBOSE" != no && echo "Disabling g_ether..." + ifdown usb0 + rmmod g_ether + ;; + *) + echo "Usage: usb-ether {start|stop}" >&2 + exit 1 + ;; +esac + +exit 0 diff --git a/meta/recipes-bsp/usbutils/usbutils_0.86.bb b/meta/recipes-bsp/usbutils/usbutils_0.86.bb new file mode 100644 index 0000000000..8e4a3da453 --- /dev/null +++ b/meta/recipes-bsp/usbutils/usbutils_0.86.bb @@ -0,0 +1,24 @@ +DESCRIPTION = "Host side USB console utilities." +HOMEPAGE = "http://www.linux-usb.org" +SECTION = "base" +PRIORITY = "optional" + +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f" + +DEPENDS = "libusb zlib" +RDEPENDS_${PN} = "${PN}-ids" +PR = "r0" + +SRC_URI = "${SOURCEFORGE_MIRROR}/linux-usb/usbutils-${PV}.tar.gz" + +inherit autotools + +do_install_append() { + ln -s ../sbin/lsusb ${D}${bindir}/lsusb +} + +PACKAGES += "${PN}-ids" + +FILES_${PN} += "${datadir}/pkgconfig" +FILES_${PN}-ids = "${datadir}/usb*" diff --git a/meta/recipes-connectivity/dhcp/dhcp-4.1.1-P1/dhcp-3.0.3-dhclient-dbus.patch b/meta/recipes-connectivity/dhcp/dhcp-4.1.1-P1/dhcp-3.0.3-dhclient-dbus.patch new file mode 100644 index 0000000000..579d72f484 --- /dev/null +++ b/meta/recipes-connectivity/dhcp/dhcp-4.1.1-P1/dhcp-3.0.3-dhclient-dbus.patch @@ -0,0 +1,84 @@ +--- client/scripts/bsdos ++++ client/scripts/bsdos +@@ -47,6 +47,11 @@ + . /etc/dhcp/dhclient-exit-hooks + fi + # probably should do something with exit status of the local script ++ if [ x$dhc_dbus != x -a $exit_status -eq 0 ]; then ++ dbus-send --system --dest=com.redhat.dhcp \ ++ --type=method_call /com/redhat/dhcp/$interface com.redhat.dhcp.set \ ++ 'string:'"`env | grep -Ev '^(PATH|SHLVL|_|PWD|dhc_dbus)\='`" ++ fi + exit $exit_status + } + +--- client/scripts/freebsd ++++ client/scripts/freebsd +@@ -57,6 +57,11 @@ + . /etc/dhcp/dhclient-exit-hooks + fi + # probably should do something with exit status of the local script ++ if [ x$dhc_dbus != x -a $exit_status -eq 0 ]; then ++ dbus-send --system --dest=com.redhat.dhcp \ ++ --type=method_call /com/redhat/dhcp/$interface com.redhat.dhcp.set \ ++ 'string:'"`env | grep -Ev '^(PATH|SHLVL|_|PWD|dhc_dbus)\='`" ++ fi + exit $exit_status + } + +--- client/scripts/linux ++++ client/scripts/linux +@@ -69,6 +69,11 @@ + . /etc/dhcp/dhclient-exit-hooks + fi + # probably should do something with exit status of the local script ++ if [ x$dhc_dbus != x -a $exit_status -eq 0 ]; then ++ dbus-send --system --dest=com.redhat.dhcp \ ++ --type=method_call /com/redhat/dhcp/$interface com.redhat.dhcp.set \ ++ 'string:'"`env | grep -Ev '^(PATH|SHLVL|_|PWD|dhc_dbus)\='`" ++ fi + exit $exit_status + } + +--- client/scripts/netbsd ++++ client/scripts/netbsd +@@ -47,6 +47,11 @@ + . /etc/dhcp/dhclient-exit-hooks + fi + # probably should do something with exit status of the local script ++ if [ x$dhc_dbus != x -a $exit_status -eq 0 ]; then ++ dbus-send --system --dest=com.redhat.dhcp \ ++ --type=method_call /com/redhat/dhcp/$interface com.redhat.dhcp.set \ ++ 'string:'"`env | grep -Ev '^(PATH|SHLVL|_|PWD|dhc_dbus)\='`" ++ fi + exit $exit_status + } + +--- client/scripts/openbsd ++++ client/scripts/openbsd +@@ -47,6 +47,11 @@ + . /etc/dhcp/dhclient-exit-hooks + fi + # probably should do something with exit status of the local script ++ if [ x$dhc_dbus != x -a $exit_status -eq 0 ]; then ++ dbus-send --system --dest=com.redhat.dhcp \ ++ --type=method_call /com/redhat/dhcp/$interface com.redhat.dhcp.set \ ++ 'string:'"`env | grep -Ev '^(PATH|SHLVL|_|PWD|dhc_dbus)\='`" ++ fi + exit $exit_status + } + +--- client/scripts/solaris ++++ client/scripts/solaris +@@ -47,6 +47,11 @@ + . /etc/dhcp/dhclient-exit-hooks + fi + # probably should do something with exit status of the local script ++ if [ x$dhc_dbus != x -a $exit_status -eq 0 ]; then ++ dbus-send --system --dest=com.redhat.dhcp \ ++ --type=method_call /com/redhat/dhcp/$interface com.redhat.dhcp.set \ ++ 'string:'"`env | grep -Ev '^(PATH|SHLVL|_|PWD|dhc_dbus)\='`" ++ fi + exit $exit_status + } + diff --git a/meta/recipes-connectivity/dhcp/dhcp-4.1.1-P1/fix-client-path.patch b/meta/recipes-connectivity/dhcp/dhcp-4.1.1-P1/fix-client-path.patch new file mode 100644 index 0000000000..f6a7be1d81 --- /dev/null +++ b/meta/recipes-connectivity/dhcp/dhcp-4.1.1-P1/fix-client-path.patch @@ -0,0 +1,21 @@ +CLIENT_PATH is the only environment when executing dhclient-script, +without this patch, dhclient-script won't run properly because it +invokes ifconfig and route + +7/28/2010 - qhe + +diff -ru dhcp-4.1.1-P1.orig//client/Makefile.am dhcp-4.1.1-P1/client/Makefile.am +--- dhcp-4.1.1-P1.orig//client/Makefile.am 2010-07-29 13:20:05.000000000 +0800 ++++ dhcp-4.1.1-P1/client/Makefile.am 2010-07-29 13:28:14.000000000 +0800 +@@ -10,9 +10,9 @@ + EXTRA_DIST = $(man_MANS) + + dhclient.o: dhclient.c +- $(COMPILE) -DCLIENT_PATH='"$(sbindir)"' \ ++ $(COMPILE) -DCLIENT_PATH='"PATH=$(sbindir):$(base_sbindir):$(bindir):$(base_bindir)"' \ + -DLOCALSTATEDIR='"$(localstatedir)"' -c dhclient.c + + dhc6.o: dhc6.c +- $(COMPILE) -DCLIENT_PATH='"$(sbindir)"' \ ++ $(COMPILE) -DCLIENT_PATH='"PATH=$(sbindir):$(base_sbindir):$(bindir):$(base_bindir)"' \ + -DLOCALSTATEDIR='"$(localstatedir)"' -c dhc6.c diff --git a/meta/recipes-connectivity/dhcp/dhcp-4.1.1-P1/fixincludes.patch b/meta/recipes-connectivity/dhcp/dhcp-4.1.1-P1/fixincludes.patch new file mode 100644 index 0000000000..91d99cce22 --- /dev/null +++ b/meta/recipes-connectivity/dhcp/dhcp-4.1.1-P1/fixincludes.patch @@ -0,0 +1,10 @@ +--- dhcp-3.0.2/common/tr.c~compile 2005-10-13 14:23:37.000000000 +0200 ++++ dhcp-3.0.2/common/tr.c 2005-10-13 14:23:45.000000000 +0200 +@@ -39,6 +39,7 @@ + #include "includes/netinet/udp.h" + #include "includes/netinet/if_ether.h" + #include "netinet/if_tr.h" ++#include + #include + + /* diff --git a/meta/recipes-connectivity/dhcp/dhcp-4.1.1-P1/noattrmode.patch b/meta/recipes-connectivity/dhcp/dhcp-4.1.1-P1/noattrmode.patch new file mode 100644 index 0000000000..5c766d6c06 --- /dev/null +++ b/meta/recipes-connectivity/dhcp/dhcp-4.1.1-P1/noattrmode.patch @@ -0,0 +1,20 @@ + +# +# Patch managed by http://www.holgerschurig.de/patcher.html +# + +--- dhcp-3.0.1/includes/dhcpd.h~compile ++++ dhcp-3.0.1/includes/dhcpd.h +@@ -306,9 +306,9 @@ + # define EPHEMERAL_FLAGS (MS_NULL_TERMINATION | \ + UNICAST_BROADCAST_HACK) + +- binding_state_t __attribute__ ((mode (__byte__))) binding_state; +- binding_state_t __attribute__ ((mode (__byte__))) next_binding_state; +- binding_state_t __attribute__ ((mode (__byte__))) desired_binding_state; ++ binding_state_t binding_state; ++ binding_state_t next_binding_state; ++ binding_state_t desired_binding_state; + + struct lease_state *state; + diff --git a/meta/recipes-connectivity/dhcp/dhcp-4.1.1-P1/site.h b/meta/recipes-connectivity/dhcp/dhcp-4.1.1-P1/site.h new file mode 100644 index 0000000000..2289554ef3 --- /dev/null +++ b/meta/recipes-connectivity/dhcp/dhcp-4.1.1-P1/site.h @@ -0,0 +1,21 @@ +/* + * define config file location in ${S}/includes/site.h + * still need to take care of installation path (${sysconfdir}/dhcpd.conf) + * + * 7/22/2010 - qhe + */ + +/* Define this if you want DNS update functionality to be available. */ + +#define NSUPDATE + +/* Define this if you aren't debugging and you want to save memory + (potentially a _lot_ of memory) by allocating leases in chunks rather + than one at a time. */ + +#define COMPACT_LEASES + + +/* local */ +#define _PATH_DHCPD_CONF "/etc/dhcp/dhcpd.conf" +#define _PATH_DHCLIENT_CONF "/etc/dhcp/dhclient.conf" diff --git a/meta/recipes-connectivity/dhcp/dhcp3.inc b/meta/recipes-connectivity/dhcp/dhcp3.inc new file mode 100644 index 0000000000..3f68f452d2 --- /dev/null +++ b/meta/recipes-connectivity/dhcp/dhcp3.inc @@ -0,0 +1,53 @@ +SECTION = "console/network" +DESCRIPTION = "Internet Software Consortium DHCP package" +HOMEPAGE = "http://www.isc.org/" + +LICENSE = "ISC" +LIC_FILES_CHKSUM = "file://LICENSE;beginline=4;md5=bb6fd41f5895b67088ebea61ad365e74" + +SRC_URI = "ftp://ftp.isc.org/isc/dhcp/dhcp-${PV}.tar.gz \ + file://init-relay file://default-relay \ + file://init-server file://default-server \ + file://dhclient.conf file://dhcpd.conf" + +inherit autotools + +TARGET_CFLAGS += "-D_GNU_SOURCE" + +do_compile() { + make RANLIB=${RANLIB} PREDEFINES='-D_PATH_DHCPD_DB=\"/var/lib/dhcp/dhcpd.leases\" \ + -D_PATH_DHCLIENT_DB=\"/var/lib/dhcp/dhclient.leases\" \ + -D_PATH_DHCLIENT_SCRIPT=\"/sbin/dhclient-script\" \ + -D_PATH_DHCPD_CONF=\"/etc/dhcp/dhcpd.conf\" \ + -D_PATH_DHCLIENT_CONF=\"/etc/dhcp/dhclient.conf\"' +} + +do_install() { + make -e DESTDIR=${D} USRMANDIR=${mandir}/man1 ADMMANDIR=${mandir}/man8 FFMANDIR=${mandir}/man5 LIBMANDIR=${mandir}/man3 LIBDIR=${libdir} INCDIR=${includedir} install + install -d ${D}${sysconfdir}/init.d + install -d ${D}${sysconfdir}/default + install -d ${D}${sysconfdir}/dhcp + install -m 0755 ${WORKDIR}/init-relay ${D}${sysconfdir}/init.d/dhcp-relay + install -m 0644 ${WORKDIR}/default-relay ${D}${sysconfdir}/default/dhcp-relay + install -m 0755 ${WORKDIR}/init-server ${D}${sysconfdir}/init.d/dhcp-server + install -m 0644 ${WORKDIR}/default-server ${D}${sysconfdir}/default/dhcp-server + install -m 0644 ${WORKDIR}/dhclient.conf ${D}${sysconfdir}/dhcp/dhclient.conf + install -m 0644 ${WORKDIR}/dhcpd.conf ${D}${sysconfdir}/dhcp/dhcpd.conf + install -d ${D}${base_sbindir}/ + mv ${D}${sbindir}/dhclient ${D}${base_sbindir}/ + install -m 0755 ${S}/client/scripts/linux ${D}${base_sbindir}/dhclient-script +} + +PACKAGES += "dhcp-server dhcp-client dhcp-relay dhcp-omshell" +FILES_${PN} = "" +FILES_dhcp-server = "${sbindir}/dhcpd ${sysconfdir}/init.d/dhcp-server ${sysconfdir}/default/dhcp-server ${sysconfdir}/dhcp/dhcpd.conf" +FILES_dhcp-relay = "${sbindir}/dhcrelay ${sysconfdir}/init.d/dhcp-relay ${sysconfdir}/default/dhcp-relay" + +FILES_dhcp-client = "${base_sbindir}/dhclient ${base_sbindir}/dhclient-script ${sysconfdir}/dhcp/dhclient.conf" +RDEPENDS_dhcp-client = "bash" + +FILES_dhcp-omshell = "${bindir}/omshell" + +CONFFILES_dhcp-server_nylon = "/etc/dhcp/dhcpd.conf" +CONFFILES_dhcp-relay_nylon = "/etc/default/dhcp-relay" +CONFFILES_dhcp-client_nylon = "/etc/dhcp/dhclient.conf" diff --git a/meta/recipes-connectivity/dhcp/dhcp4.inc b/meta/recipes-connectivity/dhcp/dhcp4.inc new file mode 100644 index 0000000000..7652b948f0 --- /dev/null +++ b/meta/recipes-connectivity/dhcp/dhcp4.inc @@ -0,0 +1,57 @@ +SECTION = "console/network" +DESCRIPTION = "Internet Software Consortium DHCP package" +HOMEPAGE = "http://www.isc.org/" + +LICENSE = "ISC" +LIC_FILES_CHKSUM = "file://LICENSE;beginline=4;md5=bb6fd41f5895b67088ebea61ad365e74" + +SRC_URI = "ftp://ftp.isc.org/isc/dhcp/dhcp-${PV}.tar.gz \ + file://site.h \ + file://init-relay file://default-relay \ + file://init-server file://default-server \ + file://dhclient.conf file://dhcpd.conf" + +inherit autotools + +TARGET_CFLAGS += "-D_GNU_SOURCE" +EXTRA_OECONF = "--with-srv-lease-file=${localstatedir}/lib/dhcp/dhcpd.leases \ + --with-srv6-lease-file=${localstatedir}/lib/dhcp/dhcpd6.leases \ + --with-cli-lease-file=${localstatedir}/lib/dhcp/dhclient.leases \ + --with-cli6-lease-file=${localstatedir}/lib/dhcp/dhclient6.leases" + +do_compile_prepend () { + cp -f ${WORKDIR}/site.h ${S}/includes +} + +do_install_append () { + install -d ${D}${sysconfdir}/init.d + install -d ${D}${sysconfdir}/default + install -d ${D}${sysconfdir}/dhcp + install -m 0755 ${WORKDIR}/init-relay ${D}${sysconfdir}/init.d/dhcp-relay + install -m 0644 ${WORKDIR}/default-relay ${D}${sysconfdir}/default/dhcp-relay + install -m 0755 ${WORKDIR}/init-server ${D}${sysconfdir}/init.d/dhcp-server + install -m 0644 ${WORKDIR}/default-server ${D}${sysconfdir}/default/dhcp-server + + rm -f ${D}${sysconfdir}/dhclient.conf + rm -f ${D}${sysconfdir}/dhcpd.conf + install -m 0644 ${WORKDIR}/dhclient.conf ${D}${sysconfdir}/dhcp/dhclient.conf + install -m 0644 ${WORKDIR}/dhcpd.conf ${D}${sysconfdir}/dhcp/dhcpd.conf + + install -d ${D}${base_sbindir}/ + mv ${D}${sbindir}/dhclient ${D}${base_sbindir}/ + install -m 0755 ${S}/client/scripts/linux ${D}${base_sbindir}/dhclient-script +} + +PACKAGES += "dhcp-server dhcp-client dhcp-relay dhcp-omshell" +FILES_${PN} = "" +FILES_dhcp-server = "${sbindir}/dhcpd ${sysconfdir}/init.d/dhcp-server ${sysconfdir}/default/dhcp-server ${sysconfdir}/dhcp/dhcpd.conf" +FILES_dhcp-relay = "${sbindir}/dhcrelay ${sysconfdir}/init.d/dhcp-relay ${sysconfdir}/default/dhcp-relay" + +FILES_dhcp-client = "${base_sbindir}/dhclient ${base_sbindir}/dhclient-script ${sysconfdir}/dhcp/dhclient.conf" +RDEPENDS_dhcp-client = "bash" + +FILES_dhcp-omshell = "${bindir}/omshell" + +CONFFILES_dhcp-server_nylon = "/etc/dhcp/dhcpd.conf" +CONFFILES_dhcp-relay_nylon = "/etc/default/dhcp-relay" +CONFFILES_dhcp-client_nylon = "/etc/dhcp/dhclient.conf" diff --git a/meta/recipes-connectivity/dhcp/dhcp_4.1.1-P1.bb b/meta/recipes-connectivity/dhcp/dhcp_4.1.1-P1.bb new file mode 100644 index 0000000000..e9759de56f --- /dev/null +++ b/meta/recipes-connectivity/dhcp/dhcp_4.1.1-P1.bb @@ -0,0 +1,7 @@ +require dhcp4.inc + +PR = "r1" + +SRC_URI += "file://fixincludes.patch \ + file://dhcp-3.0.3-dhclient-dbus.patch;striplevel=0 \ + file://fix-client-path.patch" diff --git a/meta/recipes-connectivity/dhcp/files/default-relay b/meta/recipes-connectivity/dhcp/files/default-relay new file mode 100644 index 0000000000..59249db283 --- /dev/null +++ b/meta/recipes-connectivity/dhcp/files/default-relay @@ -0,0 +1,12 @@ +# Defaults for dhcp-relay initscript +# sourced by /etc/init.d/dhcp-relay + +# What servers should the DHCP relay forward requests to? +# e.g: SERVERS="192.168.0.1" +SERVERS="" + +# On what interfaces should the DHCP relay (dhrelay) serve DHCP requests? +INTERFACES="" + +# Additional options that are passed to the DHCP relay daemon? +OPTIONS="" \ No newline at end of file diff --git a/meta/recipes-connectivity/dhcp/files/default-server b/meta/recipes-connectivity/dhcp/files/default-server new file mode 100644 index 0000000000..0385d16992 --- /dev/null +++ b/meta/recipes-connectivity/dhcp/files/default-server @@ -0,0 +1,7 @@ +# Defaults for dhcp initscript +# sourced by /etc/init.d/dhcp-server +# installed at /etc/default/dhcp-server by the maintainer scripts + +# On what interfaces should the DHCP server (dhcpd) serve DHCP requests? +# Separate multiple interfaces with spaces, e.g. "eth0 eth1". +INTERFACES="" diff --git a/meta/recipes-connectivity/dhcp/files/dhclient.conf b/meta/recipes-connectivity/dhcp/files/dhclient.conf new file mode 100644 index 0000000000..0e6dcf96c2 --- /dev/null +++ b/meta/recipes-connectivity/dhcp/files/dhclient.conf @@ -0,0 +1,50 @@ +# Configuration file for /sbin/dhclient, which is included in Debian's +# dhcp3-client package. +# +# This is a sample configuration file for dhclient. See dhclient.conf's +# man page for more information about the syntax of this file +# and a more comprehensive list of the parameters understood by +# dhclient. +# +# Normally, if the DHCP server provides reasonable information and does +# not leave anything out (like the domain name, for example), then +# few changes must be made to this file, if any. +# + +#send host-name "andare.fugue.com"; +#send dhcp-client-identifier 1:0:a0:24:ab:fb:9c; +#send dhcp-lease-time 3600; +#supersede domain-name "fugue.com home.vix.com"; +#prepend domain-name-servers 127.0.0.1; +request subnet-mask, broadcast-address, time-offset, routers, + domain-name, domain-name-servers, host-name, + netbios-name-servers, netbios-scope; +#require subnet-mask, domain-name-servers; +#timeout 60; +#retry 60; +#reboot 10; +#select-timeout 5; +#initial-interval 2; +#script "/etc/dhcp3/dhclient-script"; +#media "-link0 -link1 -link2", "link0 link1"; +#reject 192.33.137.209; + +#alias { +# interface "eth0"; +# fixed-address 192.5.5.213; +# option subnet-mask 255.255.255.255; +#} + +#lease { +# interface "eth0"; +# fixed-address 192.33.137.200; +# medium "link0 link1"; +# option host-name "andare.swiftmedia.com"; +# option subnet-mask 255.255.255.0; +# option broadcast-address 192.33.137.255; +# option routers 192.33.137.250; +# option domain-name-servers 127.0.0.1; +# renew 2 2000/1/12 00:00:01; +# rebind 2 2000/1/12 00:00:01; +# expire 2 2000/1/12 00:00:01; +#} diff --git a/meta/recipes-connectivity/dhcp/files/dhcpd.conf b/meta/recipes-connectivity/dhcp/files/dhcpd.conf new file mode 100644 index 0000000000..0001c0f00e --- /dev/null +++ b/meta/recipes-connectivity/dhcp/files/dhcpd.conf @@ -0,0 +1,108 @@ +# +# Sample configuration file for ISC dhcpd for Debian +# +# $Id: dhcpd.conf,v 1.1.1.1 2002/05/21 00:07:44 peloy Exp $ +# + +# The ddns-updates-style parameter controls whether or not the server will +# attempt to do a DNS update when a lease is confirmed. We default to the +# behavior of the version 2 packages ('none', since DHCP v2 didn't +# have support for DDNS.) +ddns-update-style none; + +# option definitions common to all supported networks... +option domain-name "example.org"; +option domain-name-servers ns1.example.org, ns2.example.org; + +default-lease-time 600; +max-lease-time 7200; + +# If this DHCP server is the official DHCP server for the local +# network, the authoritative directive should be uncommented. +#authoritative; + +# Use this to send dhcp log messages to a different log file (you also +# have to hack syslog.conf to complete the redirection). +log-facility local7; + +# No service will be given on this subnet, but declaring it helps the +# DHCP server to understand the network topology. + +#subnet 10.152.187.0 netmask 255.255.255.0 { +#} + +# This is a very basic subnet declaration. + +#subnet 10.254.239.0 netmask 255.255.255.224 { +# range 10.254.239.10 10.254.239.20; +# option routers rtr-239-0-1.example.org, rtr-239-0-2.example.org; +#} + +# This declaration allows BOOTP clients to get dynamic addresses, +# which we don't really recommend. + +#subnet 10.254.239.32 netmask 255.255.255.224 { +# range dynamic-bootp 10.254.239.40 10.254.239.60; +# option broadcast-address 10.254.239.31; +# option routers rtr-239-32-1.example.org; +#} + +# A slightly different configuration for an internal subnet. +#subnet 10.5.5.0 netmask 255.255.255.224 { +# range 10.5.5.26 10.5.5.30; +# option domain-name-servers ns1.internal.example.org; +# option domain-name "internal.example.org"; +# option routers 10.5.5.1; +# option broadcast-address 10.5.5.31; +# default-lease-time 600; +# max-lease-time 7200; +#} + +# Hosts which require special configuration options can be listed in +# host statements. If no address is specified, the address will be +# allocated dynamically (if possible), but the host-specific information +# will still come from the host declaration. + +#host passacaglia { +# hardware ethernet 0:0:c0:5d:bd:95; +# filename "vmunix.passacaglia"; +# server-name "toccata.fugue.com"; +#} + +# Fixed IP addresses can also be specified for hosts. These addresses +# should not also be listed as being available for dynamic assignment. +# Hosts for which fixed IP addresses have been specified can boot using +# BOOTP or DHCP. Hosts for which no fixed address is specified can only +# be booted with DHCP, unless there is an address range on the subnet +# to which a BOOTP client is connected which has the dynamic-bootp flag +# set. +#host fantasia { +# hardware ethernet 08:00:07:26:c0:a5; +# fixed-address fantasia.fugue.com; +#} + +# You can declare a class of clients and then do address allocation +# based on that. The example below shows a case where all clients +# in a certain class get addresses on the 10.17.224/24 subnet, and all +# other clients get addresses on the 10.0.29/24 subnet. + +#class "foo" { +# match if substring (option vendor-class-identifier, 0, 4) = "SUNW"; +#} + +#shared-network 224-29 { +# subnet 10.17.224.0 netmask 255.255.255.0 { +# option routers rtr-224.example.org; +# } +# subnet 10.0.29.0 netmask 255.255.255.0 { +# option routers rtr-29.example.org; +# } +# pool { +# allow members of "foo"; +# range 10.17.224.10 10.17.224.250; +# } +# pool { +# deny members of "foo"; +# range 10.0.29.10 10.0.29.230; +# } +#} diff --git a/meta/recipes-connectivity/dhcp/files/init-relay b/meta/recipes-connectivity/dhcp/files/init-relay new file mode 100644 index 0000000000..019a7e84cf --- /dev/null +++ b/meta/recipes-connectivity/dhcp/files/init-relay @@ -0,0 +1,44 @@ +#!/bin/sh +# +# $Id: dhcp3-relay,v 1.1 2004/04/16 15:41:08 ml Exp $ +# + +# It is not safe to start if we don't have a default configuration... +if [ ! -f /etc/default/dhcp-relay ]; then + echo "/etc/default/dhcp-relay does not exist! - Aborting..." + echo "create this file to fix the problem." + exit 1 +fi + +# Read init script configuration (interfaces the daemon should listen on +# and the DHCP server we should forward requests to.) +. /etc/default/dhcp-relay + +# Build command line for interfaces (will be passed to dhrelay below.) +IFCMD="" +if test "$INTERFACES" != ""; then + for I in $INTERFACES; do + IFCMD=${IFCMD}"-i "${I}" " + done +fi + +DHCRELAYPID=/var/run/dhcrelay.pid + +case "$1" in + start) + start-stop-daemon -S -x /usr/sbin/dhcrelay -- -q $OPTIONS $IFCMD $SERVERS + ;; + stop) + start-stop-daemon -K -x /usr/sbin/dhcrelay + ;; + restart | force-reload) + $0 stop + sleep 2 + $0 start + ;; + *) + echo "Usage: /etc/init.d/dhcp-relay {start|stop|restart|force-reload}" + exit 1 +esac + +exit 0 diff --git a/meta/recipes-connectivity/dhcp/files/init-server b/meta/recipes-connectivity/dhcp/files/init-server new file mode 100644 index 0000000000..34c20852b9 --- /dev/null +++ b/meta/recipes-connectivity/dhcp/files/init-server @@ -0,0 +1,44 @@ +#!/bin/sh +# +# $Id: dhcp3-server.init.d,v 1.4 2003/07/13 19:12:41 mdz Exp $ +# + +test -f /usr/sbin/dhcpd || exit 0 + +# It is not safe to start if we don't have a default configuration... +if [ ! -f /etc/default/dhcp-server ]; then + echo "/etc/default/dhcp-server does not exist! - Aborting..." + exit 0 +fi + +# Read init script configuration (so far only interfaces the daemon +# should listen on.) +. /etc/default/dhcp-server + +case "$1" in + start) + echo -n "Starting DHCP server: " + test -d /var/lib/dhcp/ || mkdir -p /var/lib/dhcp/ + test -f /var/lib/dhcp/dhcpd.leases || touch /var/lib/dhcp/dhcpd.leases + start-stop-daemon -S -x /usr/sbin/dhcpd -- -q $INTERFACES + echo "." + ;; + stop) + echo -n "Stopping DHCP server: dhcpd3" + start-stop-daemon -K -x /usr/sbin/dhcpd + echo "." + ;; + restart | force-reload) + $0 stop + sleep 2 + $0 start + if [ "$?" != "0" ]; then + exit 1 + fi + ;; + *) + echo "Usage: /etc/init.d/dhcp-server {start|stop|restart|force-reload}" + exit 1 +esac + +exit 0 diff --git a/meta/recipes-connectivity/farsight/farsight2_0.0.9.bb b/meta/recipes-connectivity/farsight/farsight2_0.0.9.bb new file mode 100644 index 0000000000..06c85f1cf0 --- /dev/null +++ b/meta/recipes-connectivity/farsight/farsight2_0.0.9.bb @@ -0,0 +1,24 @@ +DESCRIPTION = "FarSight is an audio/video conferencing framework specifically designed for Instant Messengers." +HOMEPAGE = "http://farsight.sf.net" +SRC_URI = "http://farsight.freedesktop.org/releases/farsight2/${P}.tar.gz" + +DEPENDS = "libnice glib-2.0 libxml2 zlib dbus gstreamer gst-plugins-base" + +inherit autotools +AUTOTOOLS_STAGE_PKGCONFIG = "1" + +PR = "r1" + +EXTRA_OECONF = " \ + --disable-debug \ + --disable-gtk-doc \ + --disable-python \ +" + +FILES_${PN} += "${libdir}/*/*.so" +FILES_${PN}-dev += "${libdir}/f*/*a ${libdir}/g*/*a" +FILES_${PN}-dbg += "${libdir}/*/.debug" + + + + diff --git a/meta/recipes-connectivity/farsight/libnice_0.0.6.bb b/meta/recipes-connectivity/farsight/libnice_0.0.6.bb new file mode 100644 index 0000000000..809b691af7 --- /dev/null +++ b/meta/recipes-connectivity/farsight/libnice_0.0.6.bb @@ -0,0 +1,23 @@ +DESCRIPTION = "Libnice is an implementation of the IETF's draft Interactice Connectivity Establishment standard (ICE)." +HOMEPAGE = "http://nice.freedesktop.org/wiki/" +SRC_URI = "http://nice.freedesktop.org/releases/libnice-${PV}.tar.gz" + +LICENSE = "LGPL/MPL" +DEPENDS = "glib-2.0 gstreamer" + +inherit autotools +AUTOTOOLS_STAGE_PKGCONFIG = "1" + +FILES_${PN} += "${libdir}/gstreamer-0.10/*.so" +FILES_${PN}-dev += "${libdir}/gstreamer-0.10/*a" +FILES_${PN}-dbg += "${libdir}/gstreamer-0.10/.debug" + +do_compile_append() { + for i in $(find ${S} -name "*.pc") ; do + sed -i -e s:${STAGING_DIR_TARGET}::g \ + -e s:/${TARGET_SYS}::g \ + $i + done +} + + diff --git a/meta/recipes-connectivity/gsm/files/0001-Introduce-ports.patch b/meta/recipes-connectivity/gsm/files/0001-Introduce-ports.patch new file mode 100644 index 0000000000..b3ba3cb957 --- /dev/null +++ b/meta/recipes-connectivity/gsm/files/0001-Introduce-ports.patch @@ -0,0 +1,710 @@ +From 516d67c679101d1503dbd4c0613bcd6ff1b604e4 Mon Sep 17 00:00:00 2001 +From: Andrzej Zaborowski +Date: Wed, 19 Sep 2007 14:03:28 +0200 +Subject: [PATCH] Introduce ports. + +--- + include/gsmd/atcmd.h | 2 +- + include/gsmd/gsmd.h | 7 +- + include/gsmd/uart.h | 28 ++++++ + include/gsmd/vendorplugin.h | 4 +- + src/gsmd/Makefile.am | 2 +- + src/gsmd/atcmd.c | 177 +++++++++++++++++--------------------- + src/gsmd/gsmd.c | 64 ++------------ + src/gsmd/uart.c | 202 +++++++++++++++++++++++++++++++++++++++++++ + 8 files changed, 328 insertions(+), 158 deletions(-) + create mode 100644 include/gsmd/uart.h + create mode 100644 src/gsmd/uart.c + +diff --git a/include/gsmd/atcmd.h b/include/gsmd/atcmd.h +index 0d6c62a..a1af6a0 100644 +--- a/include/gsmd/atcmd.h ++++ b/include/gsmd/atcmd.h +@@ -9,7 +9,7 @@ typedef int atcmd_cb_t(struct gsmd_atcmd *cmd, void *ctx, char *resp); + + extern struct gsmd_atcmd *atcmd_fill(const char *cmd, int rlen, atcmd_cb_t *cb, void *ctx, u_int16_t id); + extern int atcmd_submit(struct gsmd *g, struct gsmd_atcmd *cmd); +-extern int atcmd_init(struct gsmd *g, int sockfd); ++extern int atcmd_init(struct gsmd *g, struct gsmd_port *port); + extern void atcmd_drain(int fd); + + #endif /* __GSMD__ */ +diff --git a/include/gsmd/gsmd.h b/include/gsmd/gsmd.h +index ed334f1..4afdf66 100644 +--- a/include/gsmd/gsmd.h ++++ b/include/gsmd/gsmd.h +@@ -10,6 +10,7 @@ + #include + #include + #include ++#include + #include + + void *gsmd_tallocs; +@@ -52,6 +53,7 @@ enum llparse_state { + #define MLPARSE_BUF_SIZE 65535 + + struct llparser { ++ struct gsmd_port *port; + enum llparse_state state; + unsigned int len; + unsigned int flags; +@@ -70,7 +72,7 @@ struct gsmd; + struct gsmd { + unsigned int flags; + int interpreter_ready; +- struct gsmd_fd gfd_uart; ++ struct gsmd_uart uart; + struct gsmd_fd gfd_sock; + struct llparser llp; + struct llist_head users; +@@ -81,9 +83,10 @@ struct gsmd { + struct gsmd_device_state dev_state; + + struct llist_head operators; /* cached list of operator names */ +- unsigned char *mlbuf; /* ml_parse buffer */ ++ char *mlbuf; /* ml_parse buffer */ + unsigned int mlbuf_len; + int mlunsolicited; ++ int clear_to_send; + }; + + struct gsmd_user { +diff --git a/include/gsmd/uart.h b/include/gsmd/uart.h +new file mode 100644 +index 0000000..a006fa7 +--- /dev/null ++++ b/include/gsmd/uart.h +@@ -0,0 +1,28 @@ ++#ifndef __GSMD_UART_H ++#define __GSMD_UART_H ++ ++#ifdef __GSMD__ ++ ++struct gsmd_port { ++ int (*write)(struct gsmd_port *port, const char data[], int len); ++ int (*set_break)(struct gsmd_port *port, int state); ++ /* more parameters here */ ++ int (*newdata_cb)(void *opaque, const char data[], int len); ++ void *newdata_opaque; ++}; ++ ++struct gsmd_uart { ++ struct gsmd_port port; ++ struct gsmd_fd gfd; ++ char txfifo[2048]; ++ int tx_start; ++ int tx_len; ++}; ++ ++extern int set_baudrate(int fd, int baudrate, int hwflow); ++extern void uart_drain(int fd); ++extern int uart_init(struct gsmd_uart *uart, int sockfd); ++ ++#endif /* __GSMD__ */ ++ ++#endif +diff --git a/include/gsmd/vendorplugin.h b/include/gsmd/vendorplugin.h +index 1911fef..1c82790 100644 +--- a/include/gsmd/vendorplugin.h ++++ b/include/gsmd/vendorplugin.h +@@ -11,8 +11,8 @@ struct gsmd_unsolicit; + + struct gsmd_vendor_plugin { + struct llist_head list; +- unsigned char *name; +- unsigned char *ext_chars; ++ char *name; ++ char *ext_chars; + unsigned int num_unsolicit; + const struct gsmd_unsolicit *unsolicit; + int (*detect)(struct gsmd *g); +diff --git a/src/gsmd/Makefile.am b/src/gsmd/Makefile.am +index 9ac45ee..110b757 100644 +--- a/src/gsmd/Makefile.am ++++ b/src/gsmd/Makefile.am +@@ -13,7 +13,7 @@ sbin_PROGRAMS = gsmd + gsmd_CFLAGS = -D PLUGINDIR=\"$(plugindir)\" + gsmd_SOURCES = gsmd.c atcmd.c select.c machine.c vendor.c unsolicited.c log.c \ + usock.c talloc.c timer.c operator_cache.c ext_response.c \ +- sms_cb.c sms_pdu.c ++ sms_cb.c sms_pdu.c uart.c + gsmd_LDADD = -ldl + gsmd_LDFLAGS = -Wl,--export-dynamic + +diff --git a/src/gsmd/atcmd.c b/src/gsmd/atcmd.c +index 2ef6a10..27dfa41 100644 +--- a/src/gsmd/atcmd.c ++++ b/src/gsmd/atcmd.c +@@ -159,7 +159,8 @@ static int llparse_byte(struct llparser *llp, char byte) + return ret; + } + +-static int llparse_string(struct llparser *llp, char *buf, unsigned int len) ++static int llparse_string(struct llparser *llp, const char *buf, ++ unsigned int len) + { + while (len--) { + int rc = llparse_byte(llp, *(buf++)); +@@ -187,6 +188,55 @@ static int llparse_init(struct llparser *llp) + return 0; + } + ++/* See if we can now send more commands to the port */ ++static void atcmd_wake_queue(struct gsmd *g) ++{ ++ int len, rc; ++ char *cr; ++ ++ /* write pending commands to UART */ ++ while (g->interpreter_ready && g->clear_to_send) { ++ struct gsmd_atcmd *pos, *pos2; ++ llist_for_each_entry_safe(pos, pos2, &g->pending_atcmds, list) { ++ cr = strchr(pos->cur, '\n'); ++ if (cr) ++ len = cr - pos->cur; ++ else ++ len = pos->buflen; ++ rc = g->llp.port->write(g->llp.port, pos->cur, len); ++ if (rc == 0) { ++ gsmd_log(GSMD_ERROR, ++ "write returns 0, aborting\n"); ++ break; ++ } ++ if (cr && rc == len) ++ rc ++; /* Skip the \n */ ++ pos->buflen -= rc; ++ pos->cur += rc; ++ g->llp.port->write(g->llp.port, "\r", 1); ++ ++ if (!pos->buflen) { ++ /* success: remove from global list of ++ * to-be-sent atcmds */ ++ llist_del(&pos->list); ++ /* append to global list of executing atcmds */ ++ llist_add_tail(&pos->list, &g->busy_atcmds); ++ ++ /* we only send one cmd at the moment */ ++ g->clear_to_send = 0; ++ break; ++ } else { ++ /* The write was short or the atcmd has more ++ * lines to send after a "> ". */ ++ if (rc < len) ++ break; ++ g->clear_to_send = 0; ++ break; ++ } ++ } ++ } ++} ++ + /* mid-level parser */ + + static int parse_final_result(const char *res) +@@ -216,6 +266,7 @@ static int ml_parse(const char *buf, int len, void *ctx) + g->interpreter_ready = 1; + gsmd_initsettings(g); + gmsd_alive_start(g); ++ atcmd_wake_queue(g); + return 0; + } + +@@ -316,6 +367,7 @@ static int ml_parse(const char *buf, int len, void *ctx) + } else { + DEBUGP("Calling cmd->cb()\n"); + cmd->resp = g->mlbuf; ++ g->mlbuf[g->mlbuf_len] = 0; + rc = cmd->cb(cmd, cmd->ctx, cmd->resp); + DEBUGP("Clearing mlbuf\n"); + } +@@ -370,12 +422,15 @@ static int ml_parse(const char *buf, int len, void *ctx) + if (g->mlbuf_len) + g->mlbuf[g->mlbuf_len ++] = '\n'; + DEBUGP("Appending buf to mlbuf\n"); +- if (len > MLPARSE_BUF_SIZE - g->mlbuf_len) ++ if (len > MLPARSE_BUF_SIZE - g->mlbuf_len) { + len = MLPARSE_BUF_SIZE - g->mlbuf_len; ++ gsmd_log(GSMD_NOTICE, "g->mlbuf overrun\n"); ++ } + memcpy(g->mlbuf + g->mlbuf_len, buf, len); + g->mlbuf_len += len; + + if (g->mlunsolicited) { ++ g->mlbuf[g->mlbuf_len] = 0; + rc = unsolicited_parse(g, g->mlbuf, g->mlbuf_len, + strchr(g->mlbuf, ':') + 1); + if (rc == -EAGAIN) { +@@ -422,8 +477,11 @@ final_cb: + + /* if we're finished with current commands, but still have pending + * commands: we want to WRITE again */ +- if (llist_empty(&g->busy_atcmds) && !llist_empty(&g->pending_atcmds)) +- g->gfd_uart.when |= GSMD_FD_WRITE; ++ if (llist_empty(&g->busy_atcmds)) { ++ g->clear_to_send = 1; ++ if (!llist_empty(&g->pending_atcmds)) ++ atcmd_wake_queue(g); ++ } + + return rc; + } +@@ -433,85 +491,23 @@ static int atcmd_prompt(void *data) + { + struct gsmd *g = data; + +- g->gfd_uart.when |= GSMD_FD_WRITE; ++ g->clear_to_send = 1; ++ atcmd_wake_queue(g); + } + + /* callback to be called if [virtual] UART has some data for us */ +-static int atcmd_select_cb(int fd, unsigned int what, void *data) ++static int atcmd_newdata_cb(void *opaque, const char data[], int len) + { +- int len, rc; +- static char rxbuf[1024]; +- struct gsmd *g = data; +- char *cr; +- +- if (what & GSMD_FD_READ) { +- memset(rxbuf, 0, sizeof(rxbuf)); +- while ((len = read(fd, rxbuf, sizeof(rxbuf)))) { +- if (len < 0) { +- if (errno == EAGAIN) +- return 0; +- gsmd_log(GSMD_NOTICE, "ERROR reading from fd %u: %d (%s)\n", fd, len, +- strerror(errno)); +- return len; +- } +- rc = llparse_string(&g->llp, rxbuf, len); +- if (rc < 0) { +- gsmd_log(GSMD_ERROR, "ERROR during llparse_string: %d\n", rc); +- return rc; +- } +- } +- } +- +- /* write pending commands to UART */ +- if ((what & GSMD_FD_WRITE) && g->interpreter_ready) { +- struct gsmd_atcmd *pos, *pos2; +- llist_for_each_entry_safe(pos, pos2, &g->pending_atcmds, list) { +- cr = strchr(pos->cur, '\n'); +- if (cr) +- len = cr - pos->cur; +- else +- len = pos->buflen - 1; /* assuming zero-terminated strings */ +- rc = write(fd, pos->cur, len); +- if (rc == 0) { +- gsmd_log(GSMD_ERROR, "write returns 0, aborting\n"); +- break; +- } else if (rc < 0) { +- gsmd_log(GSMD_ERROR, "error during write to fd %d: %d\n", +- fd, rc); +- return rc; +- } +- if (!cr || rc == len) +- rc ++; /* Skip the \n or \0 */ +- pos->buflen -= rc; +- pos->cur += rc; +- write(fd, "\r", 1); +- +- if (!pos->buflen) { +- /* success: remove from global list of +- * to-be-sent atcmds */ +- llist_del(&pos->list); +- /* append to global list of executing atcmds */ +- llist_add_tail(&pos->list, &g->busy_atcmds); +- +- /* we only send one cmd at the moment */ +- break; +- } else { +- /* The write was short or the atcmd has more +- * lines to send after a "> ". */ +- if (rc < len) +- return 0; +- break; +- } +- } ++ struct gsmd *g = opaque; ++ int rc; + +- /* Either pending_atcmds is empty or a command has to wait */ +- g->gfd_uart.when &= ~GSMD_FD_WRITE; +- } ++ rc = llparse_string(&g->llp, data, len); ++ if (rc < 0) ++ gsmd_log(GSMD_ERROR, "ERROR during llparse_string: %d\n", rc); + +- return 0; ++ return rc; + } + +- + struct gsmd_atcmd *atcmd_fill(const char *cmd, int rlen, + atcmd_cb_t cb, void *ctx, u_int16_t id) + { +@@ -544,36 +540,18 @@ int atcmd_submit(struct gsmd *g, struct gsmd_atcmd *cmd) + { + DEBUGP("submitting command `%s'\n", cmd->buf); + +- if (llist_empty(&g->pending_atcmds)) +- g->gfd_uart.when |= GSMD_FD_WRITE; ++ llist_empty(&g->pending_atcmds); + llist_add_tail(&cmd->list, &g->pending_atcmds); ++ atcmd_wake_queue(g); + + return 0; + } + +-void atcmd_drain(int fd) +-{ +- int rc; +- struct termios t; +- rc = tcflush(fd, TCIOFLUSH); +- rc = tcgetattr(fd, &t); +- DEBUGP("c_iflag = 0x%08x, c_oflag = 0x%08x, c_cflag = 0x%08x, c_lflag = 0x%08x\n", +- t.c_iflag, t.c_oflag, t.c_cflag, t.c_lflag); +- t.c_iflag = t.c_oflag = 0; +- cfmakeraw(&t); +- rc = tcsetattr(fd, TCSANOW, &t); +-} +- + /* init atcmd parser */ +-int atcmd_init(struct gsmd *g, int sockfd) ++int atcmd_init(struct gsmd *g, struct gsmd_port *port) + { + __atcmd_ctx = talloc_named_const(gsmd_tallocs, 1, "atcmds"); + +- g->gfd_uart.fd = sockfd; +- g->gfd_uart.when = GSMD_FD_READ; +- g->gfd_uart.data = g; +- g->gfd_uart.cb = &atcmd_select_cb; +- + INIT_LLIST_HEAD(&g->pending_atcmds); + INIT_LLIST_HEAD(&g->busy_atcmds); + +@@ -581,7 +559,9 @@ int atcmd_init(struct gsmd *g, int sockfd) + + g->mlbuf_len = 0; + g->mlunsolicited = 0; ++ g->clear_to_send = 1; + ++ g->llp.port = port; + g->llp.cur = g->llp.buf; + g->llp.len = sizeof(g->llp.buf); + g->llp.cb = &ml_parse; +@@ -589,5 +569,8 @@ int atcmd_init(struct gsmd *g, int sockfd) + g->llp.ctx = g; + g->llp.flags = LGSM_ATCMD_F_EXTENDED; + +- return gsmd_register_fd(&g->gfd_uart); ++ port->newdata_opaque = g; ++ port->newdata_cb = atcmd_newdata_cb; ++ ++ return 0; + } +diff --git a/src/gsmd/gsmd.c b/src/gsmd/gsmd.c +index 51b4f2c..846bd17 100644 +--- a/src/gsmd/gsmd.c ++++ b/src/gsmd/gsmd.c +@@ -26,7 +26,6 @@ + #include + #include + #include +-#include + #include + + #define _GNU_SOURCE +@@ -247,56 +246,6 @@ int gsmd_initsettings(struct gsmd *gsmd) + return atcmd_submit(gsmd, cmd); + } + +-struct bdrt { +- int bps; +- u_int32_t b; +-}; +- +-static struct bdrt bdrts[] = { +- { 0, B0 }, +- { 9600, B9600 }, +- { 19200, B19200 }, +- { 38400, B38400 }, +- { 57600, B57600 }, +- { 115200, B115200 }, +- { 230400, B230400 }, +- { 460800, B460800 }, +- { 921600, B921600 }, +-}; +- +-static int set_baudrate(int fd, int baudrate, int hwflow) +-{ +- int i; +- u_int32_t bd = 0; +- struct termios ti; +- +- for (i = 0; i < ARRAY_SIZE(bdrts); i++) { +- if (bdrts[i].bps == baudrate) +- bd = bdrts[i].b; +- } +- if (bd == 0) +- return -EINVAL; +- +- i = tcgetattr(fd, &ti); +- if (i < 0) +- return i; +- +- i = cfsetispeed(&ti, B0); +- if (i < 0) +- return i; +- +- i = cfsetospeed(&ti, bd); +- if (i < 0) +- return i; +- +- if (hwflow) +- ti.c_cflag |= CRTSCTS; +- else +- ti.c_cflag &= ~CRTSCTS; +- +- return tcsetattr(fd, 0, &ti); +-} +- + static int gsmd_initialize(struct gsmd *g) + { + INIT_LLIST_HEAD(&g->users); +@@ -478,14 +427,19 @@ int main(int argc, char **argv) + if (wait >= 0) + g.interpreter_ready = !wait; + +- if (atcmd_init(&g, fd) < 0) { ++ if (uart_init(&g.uart, fd) < 0) { + fprintf(stderr, "can't initialize UART device\n"); + exit(1); + } + +- write(fd, "\r", 1); +- sleep(1); +- atcmd_drain(fd); ++ if (atcmd_init(&g, &g.uart.port) < 0) { ++ fprintf(stderr, "can't initialize AT parser\n"); ++ exit(1); ++ } ++ write(fd, "\r", 1); ++ sleep(1); ++ ++ uart_drain(fd); + + if (usock_init(&g) < 0) { + fprintf(stderr, "can't open unix socket\n"); +diff --git a/src/gsmd/uart.c b/src/gsmd/uart.c +new file mode 100644 +index 0000000..22a4a5c +--- /dev/null ++++ b/src/gsmd/uart.c +@@ -0,0 +1,202 @@ ++/* Wrapper for the physical UART in a struct gsmd_port abstraction. ++ * ++ * Copyright (C) 2007 OpenMoko, Inc. ++ * Written by Andrzej Zaborowski ++ * ++ * This program is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU General Public License as ++ * published by the Free Software Foundation; either version 2 of ++ * the License, or (at your option) any later version. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * You should have received a copy of the GNU General Public License ++ * along with this program; if not, write to the Free Software ++ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, ++ * MA 02111-1307 USA ++ */ ++ ++#include ++#include ++#include ++#include ++#include ++ ++#include "gsmd.h" ++ ++#include ++ ++void uart_drain(int fd) ++{ ++ int rc; ++ struct termios t; ++ rc = tcflush(fd, TCIOFLUSH); ++ rc = tcgetattr(fd, &t); ++ DEBUGP( ++ "c_iflag = 0x%08x, c_oflag = 0x%08x, " ++ "c_cflag = 0x%08x, c_lflag = 0x%08x\n", ++ t.c_iflag, t.c_oflag, t.c_cflag, t.c_lflag); ++ t.c_iflag = t.c_oflag = 0; ++ cfmakeraw(&t); ++ rc = tcsetattr(fd, TCSANOW, &t); ++} ++ ++struct bdrt { ++ int bps; ++ u_int32_t b; ++}; ++ ++static struct bdrt bdrts[] = { ++ { 0, B0 }, ++ { 9600, B9600 }, ++ { 19200, B19200 }, ++ { 38400, B38400 }, ++ { 57600, B57600 }, ++ { 115200, B115200 }, ++ { 230400, B230400 }, ++ { 460800, B460800 }, ++ { 921600, B921600 }, ++}; ++ ++int set_baudrate(int fd, int baudrate, int hwflow) ++{ ++ int i; ++ u_int32_t bd = 0; ++ struct termios ti; ++ ++ for (i = 0; i < ARRAY_SIZE(bdrts); i++) { ++ if (bdrts[i].bps == baudrate) ++ bd = bdrts[i].b; ++ } ++ if (bd == 0) ++ return -EINVAL; ++ ++ i = tcgetattr(fd, &ti); ++ if (i < 0) ++ return i; ++ ++ i = cfsetispeed(&ti, B0); ++ if (i < 0) ++ return i; ++ ++ i = cfsetospeed(&ti, bd); ++ if (i < 0) ++ return i; ++ ++ if (hwflow) ++ ti.c_cflag |= CRTSCTS; ++ else ++ ti.c_cflag &= ~CRTSCTS; ++ ++ return tcsetattr(fd, 0, &ti); ++} ++ ++static int uart_select_cb(int fd, unsigned int what, void *data) ++{ ++ struct gsmd_uart *uart = (struct gsmd_uart *) data; ++ static char rxbuf[2048]; ++ int rc, len; ++ ++ if ((what & GSMD_FD_READ) && uart->port.newdata_cb) { ++ while ((len = read(fd, rxbuf, sizeof(rxbuf)))) { ++ if (len < 0) { ++ if (errno == EAGAIN || errno == EINTR) ++ return 0; ++ gsmd_log(GSMD_NOTICE, "ERROR reading from " ++ "fd %u: %d (%s)\n", fd, errno, ++ strerror(errno)); ++ return -errno; ++ } ++ ++ rc = uart->port.newdata_cb( ++ uart->port.newdata_opaque, ++ rxbuf, ++ len); ++ if (rc < 0) ++ return rc; ++ } ++ } ++ ++ /* Write pending data to UART. */ ++ if ((what & GSMD_FD_WRITE) && uart->tx_len) { ++ while (uart->tx_start + uart->tx_len >= sizeof(uart->txfifo)) { ++ len = sizeof(uart->txfifo) - uart->tx_start; ++ rc = write(fd, &uart->txfifo[uart->tx_start], len); ++ if (rc < 0 && errno != EINTR) { ++ if (errno == EAGAIN) ++ return 0; ++ gsmd_log(GSMD_NOTICE, "ERROR writing " ++ "fd %u: %d (%s)\n", fd, errno, ++ strerror(errno)); ++ return -errno; ++ } ++ ++ if (rc > 0) { ++ uart->tx_start += rc; ++ uart->tx_len -= rc; ++ } ++ } ++ uart->tx_start &= sizeof(uart->txfifo) - 1; ++ ++ while (uart->tx_len) { ++ rc = write(fd, &uart->txfifo[uart->tx_start], ++ uart->tx_len); ++ if (rc < 0 && errno != EINTR) { ++ if (errno == EAGAIN) ++ return 0; ++ gsmd_log(GSMD_NOTICE, "ERROR writing " ++ "fd %u: %d (%s)\n", fd, errno, ++ strerror(errno)); ++ return -errno; ++ } ++ ++ if (rc > 0) { ++ uart->tx_start += rc; ++ uart->tx_len -= rc; ++ } ++ } ++ ++ /* If we reached here, there's no more data for the moment. */ ++ uart->gfd.when &= ~GSMD_FD_WRITE; ++ } ++ ++ return 0; ++} ++ ++static int uart_write(struct gsmd_port *port, const char data[], int len) ++{ ++ struct gsmd_uart *uart = (struct gsmd_uart *) port; ++ int start = (uart->tx_start + uart->tx_len) & ++ (sizeof(uart->txfifo) - 1); ++ int space = sizeof(uart->txfifo) - start; ++ ++ if (uart->tx_len + len > sizeof(uart->txfifo)) ++ len = sizeof(uart->txfifo) - uart->tx_len; ++ ++ if (len) ++ uart->gfd.when |= GSMD_FD_WRITE; ++ ++ if (len > space) { ++ memcpy(uart->txfifo + start, data, space); ++ memcpy(uart->txfifo, data + space, len - space); ++ } else ++ memcpy(uart->txfifo + start, data, len); ++ ++ uart->tx_len += len; ++ return len; ++} ++ ++int uart_init(struct gsmd_uart *uart, int sockfd) ++{ ++ uart->gfd.fd = sockfd; ++ uart->gfd.when = GSMD_FD_READ; ++ uart->gfd.data = uart; ++ uart->gfd.cb = &uart_select_cb; ++ ++ uart->port.write = uart_write; ++ ++ return gsmd_register_fd(&uart->gfd); ++} +-- +1.5.2.1 + diff --git a/meta/recipes-connectivity/gsm/files/0002-Flush-all-pending-commands-before-restarting-the-mod.patch b/meta/recipes-connectivity/gsm/files/0002-Flush-all-pending-commands-before-restarting-the-mod.patch new file mode 100644 index 0000000000..3683596389 --- /dev/null +++ b/meta/recipes-connectivity/gsm/files/0002-Flush-all-pending-commands-before-restarting-the-mod.patch @@ -0,0 +1,74 @@ +From 1078f7aced63c6216bffe649930b97c9ccf9a16e Mon Sep 17 00:00:00 2001 +From: Andrzej Zaborowski +Date: Wed, 19 Sep 2007 14:04:50 +0200 +Subject: [PATCH] Flush all pending commands before restarting the modem initialisation. + +--- + include/gsmd/gsmd.h | 1 + + src/gsmd/atcmd.c | 21 +++++++++++++++++++++ + src/gsmd/timer.c | 8 ++++++++ + 3 files changed, 30 insertions(+), 0 deletions(-) + +diff --git a/include/gsmd/gsmd.h b/include/gsmd/gsmd.h +index 4afdf66..6ac9d8e 100644 +--- a/include/gsmd/gsmd.h ++++ b/include/gsmd/gsmd.h +@@ -131,6 +131,7 @@ struct gsmd_timer { + + int gsmd_timer_init(void); + void gmsd_timer_check_n_run(void); ++void gsmd_timer_reset(void); + + struct gsmd_timer *gsmd_timer_alloc(void); + int gsmd_timer_register(struct gsmd_timer *timer); +diff --git a/src/gsmd/atcmd.c b/src/gsmd/atcmd.c +index 27dfa41..2f6cee2 100644 +--- a/src/gsmd/atcmd.c ++++ b/src/gsmd/atcmd.c +@@ -264,6 +264,27 @@ static int ml_parse(const char *buf, int len, void *ctx) + if (strlen(buf) == 0 || + !strcmp(buf, "AT-Command Interpreter ready")) { + g->interpreter_ready = 1; ++ g->clear_to_send = 1; ++ ++ /* Flush current queue and reinitialise */ ++ while (!llist_empty(&g->busy_atcmds)) { ++ cmd = llist_entry(g->busy_atcmds.next, ++ struct gsmd_atcmd, list); ++ gsmd_log(GSMD_NOTICE, "discarding busy cmd %s\n", ++ cmd->buf); ++ llist_del(&cmd->list); ++ talloc_free(cmd); ++ } ++ while (!llist_empty(&g->pending_atcmds)) { ++ cmd = llist_entry(g->pending_atcmds.next, ++ struct gsmd_atcmd, list); ++ gsmd_log(GSMD_NOTICE, "discarding pending cmd %s\n", ++ cmd->buf); ++ llist_del(&cmd->list); ++ talloc_free(cmd); ++ } ++ ++ gsmd_timer_reset(); + gsmd_initsettings(g); + gmsd_alive_start(g); + atcmd_wake_queue(g); +diff --git a/src/gsmd/timer.c b/src/gsmd/timer.c +index 5200690..8877275 100644 +--- a/src/gsmd/timer.c ++++ b/src/gsmd/timer.c +@@ -215,3 +215,11 @@ void gsmd_timer_unregister(struct gsmd_timer *timer) + /* re-calculate next expiration */ + calc_next_expiration(); + } ++ ++void gsmd_timer_reset(void) ++{ ++ while (!llist_empty(&gsmd_timers)) ++ /* TODO: free associated resources (e.g timer->cancel_cb()) */ ++ llist_del(&llist_entry(gsmd_timers.next, ++ struct gsmd_timer, list)->list); ++} +-- +1.5.2.1 + diff --git a/meta/recipes-connectivity/gsm/files/0003-Correctly-segment-incoming-usock-data-into-packets.patch b/meta/recipes-connectivity/gsm/files/0003-Correctly-segment-incoming-usock-data-into-packets.patch new file mode 100644 index 0000000000..984acc9369 --- /dev/null +++ b/meta/recipes-connectivity/gsm/files/0003-Correctly-segment-incoming-usock-data-into-packets.patch @@ -0,0 +1,77 @@ +From 8af1bb4a0d0df9baa80859c5f7f56cbd7634aded Mon Sep 17 00:00:00 2001 +From: Andrzej Zaborowski +Date: Wed, 19 Sep 2007 14:06:19 +0200 +Subject: [PATCH] Correctly segment incoming usock data into packets, handler short reads. + +--- + include/gsmd/gsmd.h | 2 ++ + src/gsmd/usock.c | 20 ++++++++++++++++---- + 2 files changed, 18 insertions(+), 4 deletions(-) + +diff --git a/include/gsmd/gsmd.h b/include/gsmd/gsmd.h +index 6ac9d8e..acec02a 100644 +--- a/include/gsmd/gsmd.h ++++ b/include/gsmd/gsmd.h +@@ -95,6 +95,8 @@ struct gsmd_user { + struct gsmd *gsmd; + struct gsmd_fd gfd; /* the socket */ + u_int32_t subscriptions; /* bitmaks of subscribed event groups */ ++ char usock_fifo[1024]; ++ int usock_len; + + struct llist_head pb_readrg_list; /* our READRG phonebook list */ + struct llist_head pb_find_list; /* our FIND phonebook list */ +diff --git a/src/gsmd/usock.c b/src/gsmd/usock.c +index 32e98d0..bac5f0c 100644 +--- a/src/gsmd/usock.c ++++ b/src/gsmd/usock.c +@@ -1529,14 +1529,15 @@ static int usock_rcv_pcmd(struct gsmd_user *gu, char *buf, int len) + static int gsmd_usock_user_cb(int fd, unsigned int what, void *data) + { + struct gsmd_user *gu = data; ++ struct gsmd_msg_hdr *gph; + + /* FIXME: check some kind of backlog and limit it */ + + if (what & GSMD_FD_READ) { +- char buf[1024]; + int rcvlen; + /* read data from socket, determine what he wants */ +- rcvlen = read(fd, buf, sizeof(buf)); ++ rcvlen = read(fd, gu->usock_fifo + gu->usock_len, ++ sizeof(gu->usock_fifo) - gu->usock_len); + if (rcvlen == 0) { + DEBUGP("EOF, this client has just vanished\n"); + /* EOF, this client has just vanished */ +@@ -1549,8 +1550,18 @@ static int gsmd_usock_user_cb(int fd, unsigned int what, void *data) + return 0; + } else if (rcvlen < 0) + return rcvlen; +- else +- return usock_rcv_pcmd(gu, buf, rcvlen); ++ ++ gu->usock_len += rcvlen; ++ gph = (struct gsmd_msg_hdr *) gu->usock_fifo; ++ while (gu->usock_len >= sizeof(*gph) && ++ gu->usock_len >= sizeof(*gph) + gph->len) { ++ usock_rcv_pcmd(gu, gu->usock_fifo, gu->usock_len); ++ gu->usock_len -= sizeof(*gph) + gph->len; ++ memmove(gu->usock_fifo, ++ gu->usock_fifo + sizeof(*gph) + ++ gph->len, ++ gu->usock_len); ++ } + } + + if (what & GSMD_FD_WRITE) { +@@ -1609,6 +1620,7 @@ static int gsmd_usock_cb(int fd, unsigned int what, void *data) + newuser->gfd.cb = &gsmd_usock_user_cb; + newuser->gsmd = g; + newuser->subscriptions = 0xffffffff; ++ newuser->usock_len = 0; + INIT_LLIST_HEAD(&newuser->finished_ucmds); + INIT_LLIST_HEAD(&newuser->pb_readrg_list); + INIT_LLIST_HEAD(&newuser->pb_find_list); +-- +1.5.2.1 + diff --git a/meta/recipes-connectivity/gsm/files/0004-Handle-read-and-write-return-values.patch b/meta/recipes-connectivity/gsm/files/0004-Handle-read-and-write-return-values.patch new file mode 100644 index 0000000000..f5e7a7902d --- /dev/null +++ b/meta/recipes-connectivity/gsm/files/0004-Handle-read-and-write-return-values.patch @@ -0,0 +1,176 @@ +From 421b0fa14fefbd13a455c20380fecddda616b41a Mon Sep 17 00:00:00 2001 +From: Andrzej Zaborowski +Date: Wed, 19 Sep 2007 18:30:36 +0200 +Subject: [PATCH] Handle read() and write() return values. + +--- + include/libgsmd/libgsmd.h | 3 +- + src/gsmd/usock.c | 38 ++++++++++++++++----------- + src/libgsmd/lgsm_internals.h | 2 + + src/libgsmd/libgsmd.c | 58 ++++++++++++++++++++++++++--------------- + 4 files changed, 63 insertions(+), 38 deletions(-) + +diff --git a/include/libgsmd/libgsmd.h b/include/libgsmd/libgsmd.h +index fc56890..db15aa9 100644 +--- a/include/libgsmd/libgsmd.h ++++ b/include/libgsmd/libgsmd.h +@@ -65,6 +65,7 @@ extern int lgsm_subscriptions(struct lgsm_handle *lh, u_int32_t subscriptions); + + extern struct gsmd_msg_hdr *lgsm_gmh_fill(int type, int subtype, int payload_len); + extern int lgsm_send(struct lgsm_handle *lh, struct gsmd_msg_hdr *gmh); +-extern int lgsm_handle_packet(struct lgsm_handle *lh, char *buf, int len); ++extern int lgsm_handle_packet(struct lgsm_handle *lh, ++ const char *buf, int len); + + #endif +diff --git a/src/gsmd/usock.c b/src/gsmd/usock.c +index bac5f0c..2283600 100644 +--- a/src/gsmd/usock.c ++++ b/src/gsmd/usock.c +@@ -1569,23 +1569,29 @@ static int gsmd_usock_user_cb(int fd, unsigned int what, void *data) + struct gsmd_ucmd *ucmd, *uctmp; + llist_for_each_entry_safe(ucmd, uctmp, &gu->finished_ucmds, + list) { +- int rc; +- +- rc = write(fd, &ucmd->hdr, sizeof(ucmd->hdr) + ucmd->hdr.len); +- if (rc < 0) { +- DEBUGP("write return %d\n", rc); +- return rc; +- } +- if (rc == 0) { +- DEBUGP("write returns zero!!\n"); +- break; ++ const void *pos = &ucmd->hdr; ++ size_t len = sizeof(ucmd->hdr) + ucmd->hdr.len; ++ ++ while (len) { ++ ssize_t rc; ++ ++ rc = write(fd, pos, len); ++ if (rc < 0 && errno != EINTR) { ++ DEBUGP("write returned %s\n", ++ strerror(errno)); ++ return rc; ++ } ++ if (rc == 0 && pos == &ucmd->hdr) { ++ DEBUGP("write returns zero!!\n"); ++ return 0; ++ } ++ if (rc > 0) { ++ len -= rc; ++ pos += rc; ++ } + } +- if (rc != sizeof(ucmd->hdr) + ucmd->hdr.len) { +- DEBUGP("short write\n"); +- break; +- } +- +- DEBUGP("successfully sent cmd %p to user %p, freeing\n", ucmd, gu); ++ DEBUGP("successfully sent cmd %p to user %p, " ++ "freeing\n", ucmd, gu); + llist_del(&ucmd->list); + talloc_free(ucmd); + } +diff --git a/src/libgsmd/lgsm_internals.h b/src/libgsmd/lgsm_internals.h +index c826723..f1b1a23 100644 +--- a/src/libgsmd/lgsm_internals.h ++++ b/src/libgsmd/lgsm_internals.h +@@ -8,6 +8,8 @@ struct lgsm_handle { + int fd; + lgsm_msg_handler *handler[__NUM_GSMD_MSGS]; + enum lgsm_netreg_state netreg_state; ++ char usock_fifo[1024]; ++ int usock_len; + }; + + int lgsm_send(struct lgsm_handle *lh, struct gsmd_msg_hdr *gmh); +diff --git a/src/libgsmd/libgsmd.c b/src/libgsmd/libgsmd.c +index 9906ea8..cc804ed 100644 +--- a/src/libgsmd/libgsmd.c ++++ b/src/libgsmd/libgsmd.c +@@ -86,34 +86,37 @@ static int lgsm_open_backend(struct lgsm_handle *lh, const char *device) + } + + /* handle a packet that was received on the gsmd socket */ +-int lgsm_handle_packet(struct lgsm_handle *lh, char *buf, int len) ++int lgsm_handle_packet(struct lgsm_handle *lh, const char *buf, int len) + { + struct gsmd_msg_hdr *gmh; + lgsm_msg_handler *handler; + int rc = 0; + +- while (len) { +- if (len < sizeof(*gmh)) +- return -EINVAL; +- gmh = (struct gsmd_msg_hdr *) buf; +- +- if (len - sizeof(*gmh) < gmh->len) +- return -EINVAL; +- len -= sizeof(*gmh) + gmh->len; +- buf += sizeof(*gmh) + gmh->len; +- +- if (gmh->msg_type >= __NUM_GSMD_MSGS) +- return -EINVAL; +- +- handler = lh->handler[gmh->msg_type]; ++ if (lh->usock_len + len > sizeof(lh->usock_fifo)) ++ return -ENOMEM; + +- if (handler) ++ memcpy(lh->usock_fifo + lh->usock_len, buf, len); ++ lh->usock_len += len; ++ gmh = (struct gsmd_msg_hdr *) lh->usock_fifo; ++ while (lh->usock_len >= sizeof(*gmh) && ++ lh->usock_len >= sizeof(*gmh) + gmh->len) { ++ if (gmh->msg_type < __NUM_GSMD_MSGS && ++ (handler = lh->handler[gmh->msg_type])) + rc |= handler(lh, gmh); +- else +- fprintf(stderr, "unable to handle packet type=%u\n", +- gmh->msg_type); ++ else { ++ fprintf(stderr, "unable to handle packet " ++ "type=%u id=%u\n", ++ gmh->msg_type, gmh->id); ++ rc |= EINVAL; ++ } ++ ++ lh->usock_len -= gmh->len + sizeof(*gmh); ++ memmove(lh->usock_fifo, ++ lh->usock_fifo + gmh->len + sizeof(*gmh), ++ lh->usock_len); + } +- return rc; ++ ++ return -rc; + } + + int lgsm_register_handler(struct lgsm_handle *lh, int type, lgsm_msg_handler *handler) +@@ -193,8 +196,21 @@ static u_int16_t next_msg_id; + + int lgsm_send(struct lgsm_handle *lh, struct gsmd_msg_hdr *gmh) + { ++ ssize_t rc; ++ size_t len = sizeof(*gmh) + gmh->len; ++ const void *pos = gmh; ++ + gmh->id = next_msg_id++; +- return send(lh->fd, (char *) gmh, sizeof(*gmh) + gmh->len, 0); ++ while (len) { ++ rc = send(lh->fd, pos, len, 0); ++ if (rc < 0 && errno != EINTR) ++ return -errno; ++ if (rc > 0) { ++ len -= rc; ++ pos += rc; ++ } ++ } ++ return 0; + } + + struct gsmd_msg_hdr *lgsm_gmh_fill(int type, int subtype, int payload_len) +-- +1.5.2.1 + diff --git a/meta/recipes-connectivity/gsm/files/0005-Add-ask-ds-option-forSMS.patch b/meta/recipes-connectivity/gsm/files/0005-Add-ask-ds-option-forSMS.patch new file mode 100644 index 0000000000..e9f49bd7d2 --- /dev/null +++ b/meta/recipes-connectivity/gsm/files/0005-Add-ask-ds-option-forSMS.patch @@ -0,0 +1,130 @@ +diff --git a/include/gsmd/usock.h b/include/gsmd/usock.h +index 236ad78..66cdf48 100644 +--- a/include/gsmd/usock.h ++++ b/include/gsmd/usock.h +@@ -332,6 +332,7 @@ struct gsmd_sms { + struct gsmd_sms_submit { + struct gsmd_addr addr; + struct gsmd_sms payload; ++ int ask_ds; + }; + + /* Refer to GSM 07.05 subclause 4.4 */ +diff --git a/include/libgsmd/sms.h b/include/libgsmd/sms.h +index 3ada62d..9808442 100644 +--- a/include/libgsmd/sms.h ++++ b/include/libgsmd/sms.h +@@ -46,6 +46,7 @@ struct lgsm_sms { + enum gsmd_sms_alphabet alpha; + u_int8_t data[LGSM_SMS_DATA_MAXLEN+1]; + int length; ++ int ask_ds; + }; + + /* GSM 03.40 subclause 9.2.2.2 and GSM 07.05 subclause 4.4 and subclause 3.1 */ +diff --git a/src/gsmd/sms_pdu.c b/src/gsmd/sms_pdu.c +index d1235dd..d461999 100644 +--- a/src/gsmd/sms_pdu.c ++++ b/src/gsmd/sms_pdu.c +@@ -247,7 +247,8 @@ int sms_pdu_make_smssubmit(char *dest, const struct gsmd_sms_submit *src) + GSMD_SMS_TP_MTI_SUBMIT | + (0 << 2) | /* Reject Duplicates: 0 */ + GSMD_SMS_TP_VPF_NOT_PRESENT | +- GSMD_SMS_TP_SRR_STATUS_REQUEST | ++ (src->ask_ds ? GSMD_SMS_TP_SRR_STATUS_REQUEST : ++ GSMD_SMS_TP_SRR_NOT_REQUEST) | + (src->payload.has_header ? GSMD_SMS_TP_UDHI_WITH_HEADER : + GSMD_SMS_TP_UDHI_NO_HEADER) | + GSMD_SMS_TP_RP_NOT_SET; +diff --git a/src/libgsmd/libgsmd_sms.c b/src/libgsmd/libgsmd_sms.c +index 22d7dbf..bbc8689 100644 +--- a/src/libgsmd/libgsmd_sms.c ++++ b/src/libgsmd/libgsmd_sms.c +@@ -126,6 +126,7 @@ int lgsm_sms_send(struct lgsm_handle *lh, + if (lgsm_number2addr(&gss->addr, sms->addr, 1)) + return -EINVAL; + ++ gss->ask_ds = sms->ask_ds; + gss->payload.has_header = 0; + gss->payload.length = sms->length; + gss->payload.coding_scheme = sms->alpha; +@@ -161,6 +162,7 @@ int lgsm_sms_write(struct lgsm_handle *lh, + if (lgsm_number2addr(&gsw->sms.addr, sms_write->sms.addr, 1)) + return -EINVAL; + ++ gsw->sms.ask_ds = sms_write->sms.ask_ds; + gsw->sms.payload.has_header = 0; + gsw->sms.payload.length = sms_write->sms.length; + gsw->sms.payload.coding_scheme = sms_write->sms.alpha; +diff --git a/src/util/shell.c b/src/util/shell.c +index f902126..f26e17e 100644 +--- a/src/util/shell.c ++++ b/src/util/shell.c +@@ -355,7 +355,7 @@ static int shell_help(void) + "\tsd\tSMS Delete (sd=index,delflg)\n" + "\tsl\tSMS List (sl=stat)\n" + "\tsr\tSMS Read (sr=index)\n" +- "\tss\tSMS Send (ss=number,text|[\"text\"])\n" ++ "\tss\tSMS Send (ss=ask_ds,number,text|[\"text\"])\n" + "\tsw\tSMS Write (sw=stat,number,text)\n" + "\tsm\tSMS Storage stats\n" + "\tsM\tSMS Set preferred storage (sM=mem1,mem2,mem3)\n" +@@ -563,33 +563,29 @@ int shell_main(struct lgsm_handle *lgsmh) + struct lgsm_sms sms; + + ptr = strchr(buf, '='); ++ sms.ask_ds = atoi(ptr+1); + fcomma = strchr(buf, ','); +- if (!ptr || !fcomma) { +- printf("Wrong command format\n"); +- } else { +- strncpy(sms.addr, ptr+1, fcomma-ptr-1); +- sms.addr[fcomma-ptr-1] = '\0'; +- +- /* todo define \" to allow " in text */ +- if (fcomma[1] == '"' && +- !strchr(fcomma+2, '"')) { ++ lcomma = strchr(fcomma+1, ','); ++ strncpy(sms.addr, fcomma+1, lcomma-fcomma-1); ++ sms.addr[lcomma-fcomma-1] = '\0'; ++ /* todo define \" to allow " in text */ ++ if (lcomma[1]=='"' && ++ !strchr(lcomma+2, '"')) { + /* read until closing '"' */ + rc = fscanf(stdin, "%[^\"]\"", +- fcomma+strlen(fcomma)); ++ lcomma+strlen(lcomma)); + if (rc == EOF) { + printf("EOF\n"); + return -1; + } + /* remove brackets */ +- fcomma++; +- fcomma[strlen(fcomma)] = '\0'; +- } +- +- printf("Send SMS\n"); +- packing_7bit_character(fcomma+1, &sms); ++ lcomma++; ++ lcomma[strlen(lcomma)] = '\0'; ++ } ++ printf("Send SMS\n"); ++ packing_7bit_character(lcomma+1, &sms); + +- lgsm_sms_send(lgsmh, &sms); +- } ++ lgsm_sms_send(lgsmh, &sms); + } else if ( !strncmp(buf, "sw", 2)) { + printf("Write SMS\n"); + struct lgsm_sms_write sms_write; +@@ -603,6 +599,7 @@ int shell_main(struct lgsm_handle *lgsmh) + sms_write.sms.addr[lcomma-fcomma-1] = '\0'; + packing_7bit_character( + lcomma+1, &sms_write.sms); ++ sms_write.sms.ask_ds = 0; + + lgsm_sms_write(lgsmh, &sms_write); + } else if (!strncmp(buf, "sm", 2)) { +-- +1.5.2.1 + diff --git a/meta/recipes-connectivity/gsm/files/024_sms-text-in-bracket.patch b/meta/recipes-connectivity/gsm/files/024_sms-text-in-bracket.patch new file mode 100644 index 0000000000..32a1ca33ff --- /dev/null +++ b/meta/recipes-connectivity/gsm/files/024_sms-text-in-bracket.patch @@ -0,0 +1,70 @@ +http://bugzilla.openmoko.org/cgi-bin/bugzilla/show_bug.cgi?id=834 + +From: Kristian Mueller +Subject: [PATCH] libgsmd-tool does not allow sms with more than one word + +libgsmd-tool only allows for command strings without spaces. +SMS messages with more than one word will be parsed as multible commands. +The patch introduces SMS message text in bracket and fixes a NULL pointer +reference on mailformed "ss" commands. + +Signed-off-by: Jim Huang +--- + src/util/shell.c | 32 ++++++++++++++++++++++++++------ + 1 file changed, 26 insertions(+), 6 deletions(-) + +Index: gsm/src/util/shell.c +=================================================================== +--- gsm.orig/src/util/shell.c 2007-08-31 16:15:30.000000000 +0800 ++++ gsm/src/util/shell.c 2007-09-17 23:35:31.000000000 +0800 +@@ -389,7 +389,7 @@ + "\tsd\tSMS Delete (sd=index,delflg)\n" + "\tsl\tSMS List (sl=stat)\n" + "\tsr\tSMS Read (sr=index)\n" +- "\tss\tSMS Send (ss=number,text)\n" ++ "\tss\tSMS Send (ss=number,text|[\"text\"])\n" + "\tsw\tSMS Write (sw=stat,number,text)\n" + "\tsm\tSMS Storage stats\n" + "\tsM\tSMS Set preferred storage (sM=mem1,mem2,mem3)\n" +@@ -612,16 +612,36 @@ + + lgsm_sms_read(lgsmh, atoi(ptr+1)); + } else if ( !strncmp(buf, "ss", 2)) { +- printf("Send SMS\n"); + struct lgsm_sms sms; + + ptr = strchr(buf, '='); + fcomma = strchr(buf, ','); +- strncpy(sms.addr, ptr+1, fcomma-ptr-1); +- sms.addr[fcomma-ptr-1] = '\0'; +- packing_7bit_character(fcomma+1, &sms); ++ if (!ptr || !fcomma) { ++ printf("Wrong command format\n"); ++ } else { ++ strncpy(sms.addr, ptr+1, fcomma-ptr-1); ++ sms.addr[fcomma-ptr-1] = '\0'; ++ ++ /* todo define \" to allow " in text */ ++ if (fcomma[1] == '"' && ++ !strchr(fcomma+2, '"')) { ++ /* read until closing '"' */ ++ rc = fscanf(stdin, "%[^\"]\"", ++ fcomma+strlen(fcomma)); ++ if (rc == EOF) { ++ printf("EOF\n"); ++ return -1; ++ } ++ /* remove brackets */ ++ fcomma++; ++ fcomma[strlen(fcomma)] = '\0'; ++ } ++ ++ printf("Send SMS\n"); ++ packing_7bit_character(fcomma+1, &sms); + +- lgsm_sms_send(lgsmh, &sms); ++ lgsm_sms_send(lgsmh, &sms); ++ } + } else if ( !strncmp(buf, "sw", 2)) { + printf("Write SMS\n"); + struct lgsm_sms_write sms_write; diff --git a/meta/recipes-connectivity/gsm/files/025_sms-status-report.patch b/meta/recipes-connectivity/gsm/files/025_sms-status-report.patch new file mode 100644 index 0000000000..560e72e380 --- /dev/null +++ b/meta/recipes-connectivity/gsm/files/025_sms-status-report.patch @@ -0,0 +1,133 @@ +From: Erin Yueh +Subject: [PATCH] SMS status report + +I made a patch for SMS status report. It can change SMS-Submit messages +and ask for a status report. When the destination address receives our +message, the service center will send a SMS-STATUS-REPORT to us. We can +tell what messages we sent by TP-MR (message reference number) value and +can know the sending result by TP-ST (Status) value from status report +messages. + +PS. if you don't want to ask a status report, you can change this value +back. Replace "GSMD_SMS_TP_SRR_STATUS_REQUEST" with +"GSMD_SMS_TP_SRR_NOT_REQUEST". +header[pos ++] = + GSMD_SMS_TP_MTI_SUBMIT | + (0 << 2) | /* Reject Duplicates: 0 */ + GSMD_SMS_TP_VPF_NOT_PRESENT | +- GSMD_SMS_TP_SRR_NOT_REQUEST | ++ GSMD_SMS_TP_SRR_STATUS_REQUEST | + (src->payload.has_header ? GSMD_SMS_TP_UDHI_WITH_HEADER : + GSMD_SMS_TP_UDHI_NO_HEADER) | + GSMD_SMS_TP_RP_NOT_SET; + +Signed-off-by: Jim Huang +--- + src/gsmd/sms_pdu.c | 54 +++++++++++++++++++++++++++++++++++++++++++----------- + src/util/event.c | 6 +++++- + 2 files changed, 48 insertions(+), 12 deletions(-) + +Index: gsm/src/gsmd/sms_pdu.c +=================================================================== +--- gsm.orig/src/gsmd/sms_pdu.c 2007-09-06 11:14:34.000000000 +0800 ++++ gsm/src/gsmd/sms_pdu.c 2007-09-17 23:39:20.000000000 +0800 +@@ -139,6 +139,17 @@ + /* Skip TP-PID */ + len -= 9; + src += 9; ++ ++ /* TP-UDL */ ++ dst->payload.length = src[0]; ++ i = sms_data_bytelen(dst->payload.coding_scheme, src[0]); ++ ++ /* TP-UD */ ++ if (len < 1 + i || i > GSMD_SMS_DATA_MAXLEN) ++ return 1; ++ memcpy(dst->payload.data, src + 1, i); ++ dst->payload.data[i] = 0; ++ + break; + case GSMD_SMS_TP_MTI_SUBMIT: + if (len < 4) +@@ -179,23 +190,44 @@ + src += vpf ? 3 : 2; + + memset(dst->time_stamp, 0, 7); ++ ++ /* TP-UDL */ ++ dst->payload.length = src[0]; ++ i = sms_data_bytelen(dst->payload.coding_scheme, src[0]); ++ ++ /* TP-UD */ ++ if (len < 1 + i || i > GSMD_SMS_DATA_MAXLEN) ++ return 1; ++ memcpy(dst->payload.data, src + 1, i); ++ dst->payload.data[i] = 0; + break; + case GSMD_SMS_TP_MTI_STATUS_REPORT: +- /* TODO */ ++ if (len < 3) ++ return 1; ++ ++ /* TP-MR set it gsmd_sms_list.index*/ ++ dst->index = (int) src[1]; ++ /* TP-STATUS set it to coding_scheme */ ++ dst->payload.coding_scheme = (int) src[len-1]; ++ /* TP-RA */ ++ i = sms_number_bytelen(src[3], src[2]); ++ if (len < 13 + i) ++ return 1; ++ if (sms_address2ascii(&dst->addr, src + 2)) ++ return 1; ++ len -= 4 + i; ++ src += 4 + i; ++ /* TP-SCTS */ ++ memcpy(dst->time_stamp, src, 7); ++ /* TP-UD */ ++ dst->payload.length = 0; ++ dst->payload.data[0] = 0; ++ break; + default: + /* Unknown PDU type */ + return 1; + } + +- /* TP-UDL */ +- dst->payload.length = src[0]; +- i = sms_data_bytelen(dst->payload.coding_scheme, src[0]); +- +- /* TP-UD */ +- if (len < 1 + i || i > GSMD_SMS_DATA_MAXLEN) +- return 1; +- memcpy(dst->payload.data, src + 1, i); +- dst->payload.data[i] = 0; + + return 0; + } +@@ -215,7 +247,7 @@ + GSMD_SMS_TP_MTI_SUBMIT | + (0 << 2) | /* Reject Duplicates: 0 */ + GSMD_SMS_TP_VPF_NOT_PRESENT | +- GSMD_SMS_TP_SRR_NOT_REQUEST | ++ GSMD_SMS_TP_SRR_STATUS_REQUEST | + (src->payload.has_header ? GSMD_SMS_TP_UDHI_WITH_HEADER : + GSMD_SMS_TP_UDHI_NO_HEADER) | + GSMD_SMS_TP_RP_NOT_SET; +Index: gsm/src/util/event.c +=================================================================== +--- gsm.orig/src/util/event.c 2007-09-06 11:14:34.000000000 +0800 ++++ gsm/src/util/event.c 2007-09-17 23:39:47.000000000 +0800 +@@ -128,8 +128,12 @@ + static int inds_handler(struct lgsm_handle *lh, int evt, + struct gsmd_evt_auxdata *aux) + { +- if (aux->u.ds.inlined) ++ if (aux->u.ds.inlined) { ++ struct gsmd_sms_list *sms; ++ sms = (struct gsmd_sms_list *) aux->data; + printf("EVENT: Incoming Status Report\n"); ++ printf("message ref = %d, status = %d\n", sms->index,sms->payload.coding_scheme); ++ } + else + printf("EVENT: Incoming Status Report stored at location %i\n", + aux->u.ds.index); diff --git a/meta/recipes-connectivity/gsm/files/027_phonebook-find-and-read-range-support.patch b/meta/recipes-connectivity/gsm/files/027_phonebook-find-and-read-range-support.patch new file mode 100644 index 0000000000..ea0f12daac --- /dev/null +++ b/meta/recipes-connectivity/gsm/files/027_phonebook-find-and-read-range-support.patch @@ -0,0 +1,423 @@ +From: Sean Chiang +Subject: [PATCH] Improvement for find and read phonebooks in gsmd + +This patch is an improvement for find and read phonebooks. +After clients make a request to find / read phonebooks, then clients +should make a request to retrieve all the records. + +Signed-off-by: Jim Huang +--- + include/gsmd/gsmd.h | 3 + include/gsmd/usock.h | 20 +++- + include/libgsmd/phonebook.h | 6 + + src/gsmd/usock.c | 184 +++++++++++++++++++++++++++++++++++----- + src/libgsmd/libgsmd_phonebook.c | 48 ++++++++++ + 5 files changed, 238 insertions(+), 23 deletions(-) + +Index: gsm/include/libgsmd/phonebook.h +=================================================================== +--- gsm.orig/include/libgsmd/phonebook.h 2007-08-31 16:15:29.000000000 +0800 ++++ gsm/include/libgsmd/phonebook.h 2007-09-17 23:48:41.000000000 +0800 +@@ -106,4 +106,10 @@ + /* Get the location range/nlength/tlength supported */ + extern int lgsm_pb_get_support(struct lgsm_handle *lh); + ++/* Retrieve the records of READRG request */ ++extern int lgsm_pb_retrieve_readrg(struct lgsm_handle *lh, int num); ++ ++/* Retrieve the records of FIND request */ ++extern int lgsm_pb_retrieve_find(struct lgsm_handle *lh, int num); ++ + #endif +Index: gsm/include/gsmd/gsmd.h +=================================================================== +--- gsm.orig/include/gsmd/gsmd.h 2007-08-31 16:15:29.000000000 +0800 ++++ gsm/include/gsmd/gsmd.h 2007-09-17 23:48:41.000000000 +0800 +@@ -92,6 +92,9 @@ + struct gsmd *gsmd; + struct gsmd_fd gfd; /* the socket */ + u_int32_t subscriptions; /* bitmaks of subscribed event groups */ ++ ++ struct llist_head pb_readrg_list; /* our READRG phonebook list */ ++ struct llist_head pb_find_list; /* our FIND phonebook list */ + }; + + #define GSMD_DEBUG 1 /* debugging information */ +Index: gsm/include/gsmd/usock.h +=================================================================== +--- gsm.orig/include/gsmd/usock.h 2007-08-31 16:15:29.000000000 +0800 ++++ gsm/include/gsmd/usock.h 2007-09-17 23:48:56.000000000 +0800 +@@ -194,6 +194,8 @@ + GSMD_PHONEBOOK_GET_SUPPORT = 6, + GSMD_PHONEBOOK_LIST_STORAGE = 7, + GSMD_PHONEBOOK_SET_STORAGE = 8, ++ GSMD_PHONEBOOK_RETRIEVE_READRG = 9, ++ GSMD_PHONEBOOK_RETRIEVE_FIND = 10, + }; + + /* Type-of-Address, Numbering-Plan-Identification field, GSM 03.40, 9.1.2.5 */ +@@ -431,7 +433,6 @@ + char text[GSMD_PB_TEXT_MAXLEN+1]; + } __attribute__ ((packed)); + +- + /* Refer to GSM 07.07 subclause 8.13 */ + /* FIXME: the tlength depends on SIM, use +CPBR=? to get */ + struct gsmd_phonebook_find { +@@ -471,8 +472,18 @@ + char opname_longalpha[16]; + }; + ++/* Refer to GSM 07.07 subclause 8.11 */ ++struct gsmd_phonebook_mem { ++ u_int8_t type[3]; ++ u_int8_t pad; ++ u_int16_t used; ++ u_int16_t total; ++} __attribute__ ((packed)); ++ + struct gsmd_phonebook_storage { +- char storage[3]; ++ /* FIXME the amount of phonebook storage should be dynamic */ ++ u_int8_t num; ++ struct gsmd_phonebook_mem mem[20]; + } __attribute__ ((packed)); + + /* Subscriber number information from 3GPP TS 07.07, Clause 7.1 */ +@@ -517,6 +528,11 @@ + char buf[]; + } __attribute__ ((packed)); + ++struct gsmd_phonebooks { ++ struct llist_head list; ++ struct gsmd_phonebook pb; ++} __attribute__ ((packed)); ++ + extern struct gsmd_ucmd *ucmd_alloc(int extra_size); + extern int usock_init(struct gsmd *g); + extern void usock_cmd_enqueue(struct gsmd_ucmd *ucmd, struct gsmd_user *gu); +Index: gsm/src/libgsmd/libgsmd_phonebook.c +=================================================================== +--- gsm.orig/src/libgsmd/libgsmd_phonebook.c 2007-08-31 16:15:29.000000000 +0800 ++++ gsm/src/libgsmd/libgsmd_phonebook.c 2007-09-17 23:48:41.000000000 +0800 +@@ -33,7 +33,7 @@ + gmh->data[2] = '\0'; + + rc = lgsm_send(lh, gmh); +- if (rc < gmh->len + 3) { ++ if (rc < gmh->len + sizeof(*gmh)) { + lgsm_gmh_free(gmh); + return -EIO; + } +@@ -177,3 +177,49 @@ + { + return lgsm_send_simple(lh, GSMD_MSG_PHONEBOOK, GSMD_PHONEBOOK_GET_SUPPORT); + } ++ ++int lgsm_pb_retrieve_readrg(struct lgsm_handle *lh, int num) ++{ ++ struct gsmd_msg_hdr *gmh; ++ int rc; ++ ++ gmh = lgsm_gmh_fill(GSMD_MSG_PHONEBOOK, ++ GSMD_PHONEBOOK_RETRIEVE_READRG, sizeof(int)); ++ if (!gmh) ++ return -ENOMEM; ++ ++ *(int *)(gmh->data) = num; ++ ++ rc = lgsm_send(lh, gmh); ++ if (rc < gmh->len + sizeof(*gmh)) { ++ lgsm_gmh_free(gmh); ++ return -EIO; ++ } ++ ++ lgsm_gmh_free(gmh); ++ ++ return 0; ++} ++ ++int lgsm_pb_retrieve_find(struct lgsm_handle *lh, int num) ++{ ++ struct gsmd_msg_hdr *gmh; ++ int rc; ++ ++ gmh = lgsm_gmh_fill(GSMD_MSG_PHONEBOOK, ++ GSMD_PHONEBOOK_RETRIEVE_FIND, sizeof(int)); ++ if (!gmh) ++ return -ENOMEM; ++ ++ *(int *)(gmh->data) = num; ++ ++ rc = lgsm_send(lh, gmh); ++ if (rc < gmh->len + sizeof(*gmh)) { ++ lgsm_gmh_free(gmh); ++ return -EIO; ++ } ++ ++ lgsm_gmh_free(gmh); ++ ++ return 0; ++} +Index: gsm/src/gsmd/usock.c +=================================================================== +--- gsm.orig/src/gsmd/usock.c 2007-08-31 16:15:30.000000000 +0800 ++++ gsm/src/gsmd/usock.c 2007-09-17 23:53:34.000000000 +0800 +@@ -1035,21 +1035,56 @@ + + static int phonebook_find_cb(struct gsmd_atcmd *cmd, void *ctx, char *resp) + { +- struct gsmd_user *gu = ctx; +- struct gsmd_ucmd *ucmd; +- ++ struct gsmd_user *gu = ctx; ++ struct gsmd_ucmd *ucmd; ++ struct gsmd_phonebooks *gps; ++ char *fcomma, *lcomma, *ptr1, *ptr2 = NULL; ++ int *num; ++ + DEBUGP("resp: %s\n", resp); + +- /* FIXME: using link list, also we need to handle the case of +- * no query result */ +- ucmd = gsmd_ucmd_fill(strlen(resp) + 1, GSMD_MSG_PHONEBOOK, ++ /* ++ * [+CPBF: ,,,[[...] ++ * +CPBF: ,,,]] ++ */ ++ ucmd = gsmd_ucmd_fill(sizeof(int), GSMD_MSG_PHONEBOOK, + GSMD_PHONEBOOK_FIND, 0); + if (!ucmd) + return -ENOMEM; + +- strcpy(ucmd->buf, resp); ++ num = (int*) ucmd->buf; ++ ++ *num = 0; ++ ++ ptr1 = strtok(resp, "\n"); ++ ++ while (ptr1) { ++ gps = (struct gsmd_phonebooks *) malloc(sizeof(struct gsmd_phonebooks)); ++ ptr2 = strchr(ptr1, ' '); ++ gps->pb.index = atoi(ptr2+1); ++ ++ fcomma = strchr(ptr1, '"'); ++ lcomma = strchr(fcomma+1, '"'); ++ strncpy(gps->pb.numb, fcomma + 1, (lcomma-fcomma-1)); ++ gps->pb.numb[(lcomma - fcomma) - 1] = '\0'; ++ ++ gps->pb.type = atoi(lcomma + 2); ++ ++ ptr2 = strrchr(ptr1, ','); ++ fcomma = ptr2 + 1; ++ lcomma = strchr(fcomma + 1, '"'); ++ strncpy(gps->pb.text, fcomma + 1, (lcomma - fcomma - 1)); ++ gps->pb.text[(lcomma - fcomma) - 1] = '\0'; ++ ++ llist_add_tail(&gps->list, &gu->pb_find_list); ++ ++ (*num)++; ++ ++ ptr1 = strtok(NULL, "\n"); ++ } + + usock_cmd_enqueue(ucmd, gu); ++ + return 0; + } + +@@ -1102,22 +1137,51 @@ + { + struct gsmd_user *gu = ctx; + struct gsmd_ucmd *ucmd; ++ struct gsmd_phonebooks *gps; ++ char *fcomma, *lcomma, *ptr1, *ptr2 = NULL; ++ int *num; + + DEBUGP("resp: %s\n", resp); + + /* +- * +CPBR: 4,"1234",129,"6C5F745E7965" +- * +CPBR: 5,"5678",129,"800062115BB6" +- * +CPBR: 6,"7890",129,"810280AA591A" +- * +CPBR: 8,"36874",129,"005300650061006E" +- * ++ * [+CPBR: ,,,[[...] ++ * +CPBR: ,,,]] + */ +- ucmd = gsmd_ucmd_fill(strlen(resp)+1, GSMD_MSG_PHONEBOOK, ++ ucmd = gsmd_ucmd_fill(sizeof(int), GSMD_MSG_PHONEBOOK, + GSMD_PHONEBOOK_READRG, 0); + if (!ucmd) + return -ENOMEM; + +- strcpy(ucmd->buf, resp); ++ num = (int*) ucmd->buf; ++ ++ *num = 0; ++ ++ ptr1 = strtok(resp, "\n"); ++ ++ while(ptr1) { ++ gps = (struct gsmd_phonebooks *) malloc(sizeof(struct gsmd_phonebooks)); ++ ptr2 = strchr(ptr1, ' '); ++ gps->pb.index = atoi(ptr2+1); ++ ++ fcomma = strchr(ptr1, '"'); ++ lcomma = strchr(fcomma+1, '"'); ++ strncpy(gps->pb.numb, fcomma + 1, (lcomma-fcomma-1)); ++ gps->pb.numb[(lcomma - fcomma) - 1] = '\0'; ++ ++ gps->pb.type = atoi(lcomma + 2); ++ ++ ptr2 = strrchr(ptr1, ','); ++ fcomma = ptr2 + 1; ++ lcomma = strchr(fcomma + 1, '"'); ++ strncpy(gps->pb.text, fcomma + 1, (lcomma - fcomma - 1)); ++ gps->pb.text[(lcomma - fcomma) - 1] = '\0'; ++ ++ llist_add_tail(&gps->list, &gu->pb_readrg_list); ++ ++ (*num)++; ++ ++ ptr1 = strtok(NULL, "\n"); ++ } + + usock_cmd_enqueue(ucmd, gu); + +@@ -1209,22 +1273,38 @@ + static int phonebook_list_storage_cb(struct gsmd_atcmd *cmd, + void *ctx, char *resp) + { +- /* +CPBS: ("EN","BD","FD","DC","LD","RC","LR","MT","AD", +- * "SM","SD","MC","LM","AF","ON","UD") */ + /* TODO; using link list ; need to handle command error */ + struct gsmd_user *gu = ctx; + struct gsmd_ucmd *ucmd; ++ struct gsmd_phonebook_storage *gps; ++ char *ptr; + + DEBUGP("resp: %s\n", resp); + +- ucmd = gsmd_ucmd_fill(strlen(resp) + 1, ++ /* ++ * +CPBS: (s) ++ */ ++ ++ ucmd = gsmd_ucmd_fill(sizeof(*gps), + GSMD_MSG_PHONEBOOK, + GSMD_PHONEBOOK_LIST_STORAGE, 0); + + if (!ucmd) + return -ENOMEM; + +- strcpy(ucmd->buf, resp); ++ gps = (struct gsmd_phonebook_storage *) ucmd->buf; ++ gps->num = 0; ++ ++ if (!strncmp(resp, "+CPBS", 5)) { ++ char* delim = "(,"; ++ ptr = strpbrk(resp, delim); ++ while ( ptr ) { ++ strncpy(gps->mem[gps->num].type, ptr+2, 2); ++ gps->mem[gps->num].type[2] = '\0'; ++ ptr = strpbrk(ptr+2, delim); ++ gps->num++; ++ } ++ } + + usock_cmd_enqueue(ucmd, gu); + +@@ -1235,11 +1315,13 @@ + struct gsmd_msg_hdr *gph,int len) + { + struct gsmd_atcmd *cmd = NULL; ++ struct gsmd_ucmd *ucmd = NULL; + struct gsmd_phonebook_readrg *gpr; + struct gsmd_phonebook *gp; + struct gsmd_phonebook_find *gpf; +- int *index; +- int atcmd_len; ++ struct gsmd_phonebooks *cur, *cur2; ++ int *index, *num; ++ int atcmd_len, i; + char *storage; + char buf[1024]; + +@@ -1343,6 +1425,66 @@ + cmd = atcmd_fill("AT+CPBR=?", 9+1, + &phonebook_get_support_cb, gu, gph->id); + break; ++ case GSMD_PHONEBOOK_RETRIEVE_READRG: ++ if (len < sizeof(*gph) + sizeof(int)) ++ return -EINVAL; ++ ++ num = (int *) ((void *)gph + sizeof(*gph)); ++ ++ ucmd = gsmd_ucmd_fill(sizeof(struct gsmd_phonebook)*(*num), ++ GSMD_MSG_PHONEBOOK, ++ GSMD_PHONEBOOK_RETRIEVE_READRG, 0); ++ if (!ucmd) ++ return -ENOMEM; ++ ++ gp = (struct gsmd_phonebook*) ucmd->buf; ++ ++ if (!llist_empty(&gu->pb_readrg_list)) { ++ ++ llist_for_each_entry_safe(cur, cur2, ++ &gu->pb_readrg_list, list) { ++ gp->index = cur->pb.index; ++ strcpy(gp->numb, cur->pb.numb); ++ gp->type = cur->pb.type; ++ strcpy(gp->text, cur->pb.text); ++ gp++; ++ ++ llist_del(&cur->list); ++ free(cur); ++ } ++ } ++ ++ usock_cmd_enqueue(ucmd, gu); ++ ++ break; ++ case GSMD_PHONEBOOK_RETRIEVE_FIND: ++ if (len < sizeof(*gph) + sizeof(int)) ++ return -EINVAL; ++ ++ num = (int *) ((void *)gph + sizeof(*gph)); ++ ++ ucmd = gsmd_ucmd_fill(sizeof(struct gsmd_phonebook)*(*num), GSMD_MSG_PHONEBOOK, ++ GSMD_PHONEBOOK_RETRIEVE_FIND, 0); ++ if (!ucmd) ++ return -ENOMEM; ++ ++ gp = (struct gsmd_phonebook*) ucmd->buf; ++ ++ if (!llist_empty(&gu->pb_find_list)) { ++ llist_for_each_entry_safe(cur, cur2, &gu->pb_find_list, list) { ++ gp->index = cur->pb.index; ++ strcpy(gp->numb, cur->pb.numb); ++ gp->type = cur->pb.type; ++ strcpy(gp->text, cur->pb.text); ++ gp++; ++ ++ llist_del(&cur->list); ++ free(cur); ++ } ++ } ++ ++ usock_cmd_enqueue(ucmd, gu); ++ break; + default: + return -EINVAL; + } +@@ -1468,6 +1610,8 @@ + newuser->gsmd = g; + newuser->subscriptions = 0xffffffff; + INIT_LLIST_HEAD(&newuser->finished_ucmds); ++ INIT_LLIST_HEAD(&newuser->pb_readrg_list); ++ INIT_LLIST_HEAD(&newuser->pb_find_list); + + llist_add(&newuser->list, &g->users); + gsmd_register_fd(&newuser->gfd); diff --git a/meta/recipes-connectivity/gsm/files/028_shell-phonebook-find-and-read-range-support.patch b/meta/recipes-connectivity/gsm/files/028_shell-phonebook-find-and-read-range-support.patch new file mode 100644 index 0000000000..db07a5df35 --- /dev/null +++ b/meta/recipes-connectivity/gsm/files/028_shell-phonebook-find-and-read-range-support.patch @@ -0,0 +1,264 @@ +From: Sean Chiang +Subject: [PATCH] improvement for find and read phonebooks in shell + +This patch improves the functions to find and read phonebooks in shell. + +Besides prr and pf, I add two new commands pRr and pRf to retrieve the +phonebook. + +Signed-off-by: Jim Huang + +Index: gsm/src/util/shell.c +=================================================================== +--- gsm.orig/src/util/shell.c 2007-09-17 23:57:51.000000000 +0800 ++++ gsm/src/util/shell.c 2007-09-17 23:59:04.000000000 +0800 +@@ -34,8 +34,6 @@ + #include + #include + +-#include +- + #ifndef __GSMD__ + #define __GSMD__ + #include +@@ -43,9 +41,8 @@ + #endif + + #define STDIN_BUF_SIZE 1024 +- +-static LLIST_HEAD(storage_list); +-static LLIST_HEAD(phonebook_list); ++static int nFIND = 0; ++static int nREADRG = 0; + + /* this is the handler for receiving passthrough responses */ + static int pt_msghandler(struct lgsm_handle *lh, struct gsmd_msg_hdr *gmh) +@@ -62,46 +59,23 @@ + struct gsmd_phonebook_storage *gpst; + char *payload; + char *fcomma, *lcomma, *ptr = NULL; ++ int *num; + char buf[128]; ++ int i; + + switch (gmh->msg_subtype) { +-#if 0 + case GSMD_PHONEBOOK_FIND: ++ num = (int *) ((char *)gmh + sizeof(*gmh)); ++ printf("Records:%d\n", *num); ++ ++ nFIND = *num; ++ break; + case GSMD_PHONEBOOK_READRG: +- payload = (char *)gmh + sizeof(*gmh); ++ num = (int *) ((char *)gmh + sizeof(*gmh)); ++ printf("Records:%d\n", *num); + +- if (!strncmp(payload, "+CPBR", 5) || +- !strncmp(payload, "+CPBF", 5)) { +- gp = (struct gsmd_phonebook *) malloc(sizeof(struct gsmd_phonebook)); +- ptr = strchr(payload, ' '); +- gp->index = atoi(ptr+1); +- +- fcomma = strchr(payload, '"'); +- lcomma = strchr(fcomma+1, '"'); +- strncpy(gp->numb, fcomma + 1, (lcomma-fcomma-1)); +- gp->numb[(lcomma - fcomma) - 1] = '\0'; +- +- gp->type = atoi(lcomma + 2); +- +- ptr = strrchr(payload, ','); +- fcomma = ptr + 1; +- lcomma = strchr(fcomma + 1, '"'); +- strncpy(gp->text, fcomma + 1, (lcomma - fcomma - 1)); +- gp->text[(lcomma - fcomma) - 1] = '\0'; +- +- llist_add_tail(&gp->list, &phonebook_list); +- +-#if 0 +- llist_for_each_entry(gp, &phonebook_list, list) { +- printf("%d, %s, %d, %s\n", gp->index, gp->numb, gp->type, gp->text); +- } +-#endif +- printf("%d, %s, %d, %s\n", gp->index, gp->numb, gp->type, gp->text); +- } +- else +- printf("%s\n", payload); ++ nREADRG = *num; + break; +-#endif + case GSMD_PHONEBOOK_READ: + gp = (struct gsmd_phonebook *) ((char *)gmh + sizeof(*gmh)); + if (gp->index) +@@ -115,48 +89,18 @@ + gps = (struct gsmd_phonebook_support *) ((char *)gmh + sizeof(*gmh)); + printf("(1-%d), %d, %d\n", gps->index, gps->nlength, gps->tlength); + break; +-#if 0 +- case GSMD_PHONEBOOK_LIST_STORAGE: +- payload = (char *)gmh + sizeof(*gmh); + +- if (!strncmp(payload, "+CPBS", 5)) { +- char* delim = "(,"; +- struct gsmd_phonebook_storage *cur, *cur2; +- +- /* Remove previous record */ +- if (!llist_empty(&storage_list)) { +- llist_for_each_entry_safe(cur, cur2, +- &storage_list, list) { +- llist_del(&cur->list); +- talloc_free(cur); +- } +- } +- +- ptr = strpbrk(payload, delim); +- +- while ( ptr ) { +- gpst = (struct gsmd_phonebook_storage *) malloc(sizeof(struct gsmd_phonebook_storage)); +- strncpy(gpst->storage, ptr+2, 2); +- gpst->storage[2] = '\0'; +- +- ptr = strpbrk(ptr+2, delim); +- +- llist_add_tail(&gpst->list, &storage_list); +- } ++ case GSMD_PHONEBOOK_LIST_STORAGE: ++ gpst = (struct gsmd_phonebook_storage *)((char *)gmh + sizeof(*gmh)); + +- if (llist_empty(&storage_list)) +- return 0; ++ for (i = 0; i < gpst->num; i++) { ++ printf("%s, ", gpst->mem[i].type); ++ } + +- llist_for_each_entry(cur, &storage_list, list) { +- printf("\n%s",cur->storage); +- } ++ printf("\n"); + +- printf("\n"); +- } +- else +- printf("%s\n", payload); + break; +-#endif ++ + case GSMD_PHONEBOOK_WRITE: + case GSMD_PHONEBOOK_DELETE: + case GSMD_PHONEBOOK_SET_STORAGE: +@@ -164,6 +108,26 @@ + payload = (char *)gmh + sizeof(*gmh); + printf("%s\n", payload); + break; ++ case GSMD_PHONEBOOK_RETRIEVE_READRG: ++ gp = (struct gsmd_phonebook *) ((char *)gmh + sizeof(*gmh)); ++ ++ for (i=0; iindex, gp->numb, gp->type, gp->text); ++ gp++; ++ } ++ ++ nREADRG = 0; ++ break; ++ case GSMD_PHONEBOOK_RETRIEVE_FIND: ++ gp = (struct gsmd_phonebook *) ((char *)gmh + sizeof(*gmh)); ++ ++ for (i = 0; i < nFIND; i++) { ++ printf("%d,%s,%d,%s\n", gp->index, gp->numb, gp->type, gp->text); ++ gp++; ++ } ++ ++ nFIND = 0; ++ break; + default: + return -EINVAL; + } +@@ -381,11 +345,13 @@ + "\tpd\tPB Delete (pb=index)\n" + "\tpr\tPB Read (pr=index)\n" + "\tprr\tPB Read Range (prr=index1,index2)\n" +- "\tpf\tPB Find (pff=indtext)\n" ++ "\tpf\tPB Find (pf=indtext)\n" + "\tpw\tPB Write (pw=index,number,text)\n" + "\tps\tPB Support\n" + "\tpm\tPB Memory\n" + "\tpp\tPB Set Memory (pp=storage)\n" ++ "\tpRr\tRetrieve Readrg Records\n" ++ "\tpRf\tRetrieve Find Records\n" + "\tsd\tSMS Delete (sd=index,delflg)\n" + "\tsl\tSMS List (sl=stat)\n" + "\tsr\tSMS Read (sr=index)\n" +@@ -509,48 +475,21 @@ + printf("Delete Phonebook Entry\n"); + ptr = strchr(buf, '='); + lgsm_pb_del_entry(lgsmh, atoi(ptr+1)); +-#if 0 + } else if ( !strncmp(buf, "prr", 3)) { + printf("Read Phonebook Entries\n"); + struct lgsm_phonebook_readrg pb_readrg; +- struct gsmd_phonebook *gp_cur, *gp_cur2; +- +- /* Remove records */ +- if (!llist_empty(&phonebook_list)) { +- llist_for_each_entry_safe(gp_cur, +- gp_cur2, +- &phonebook_list, +- list) { +- llist_del(&gp_cur->list); +- talloc_free(gp_cur); +- } +- } + + ptr = strchr(buf, '='); + pb_readrg.index1 = atoi(ptr+1); + ptr = strchr(buf, ','); + pb_readrg.index2 = atoi(ptr+1); + lgsm_pb_read_entries(lgsmh, &pb_readrg); +-#endif + } else if ( !strncmp(buf, "pr", 2)) { + ptr = strchr(buf, '='); + lgsm_pb_read_entry(lgsmh, atoi(ptr+1)); +-#if 0 + } else if ( !strncmp(buf, "pf", 2)) { + printf("Find Phonebook Entry\n"); + struct lgsm_phonebook_find pb_find; +- struct gsmd_phonebook *gp_cur, *gp_cur2; +- +- /* Remove records */ +- if (!llist_empty(&phonebook_list)) { +- llist_for_each_entry_safe(gp_cur, +- gp_cur2, +- &phonebook_list, +- list) { +- llist_del(&gp_cur->list); +- talloc_free(gp_cur); +- } +- } + + ptr = strchr(buf, '='); + strncpy(pb_find.findtext, +@@ -559,7 +498,6 @@ + pb_find.findtext[strlen(ptr+1)] = '\0'; + + lgsm_pb_find_entry(lgsmh, &pb_find); +-#endif + } else if ( !strncmp(buf, "pw", 2)) { + printf("Write Phonebook Entry\n"); + struct lgsm_phonebook pb; +@@ -591,6 +529,16 @@ + } else if ( !strncmp(buf, "ps", 2)) { + printf("Get Phonebook Support\n"); + lgsm_pb_get_support(lgsmh); ++ } else if( !strncmp(buf, "pRr", 3) ) { ++ printf("Retrieve Readrg Records\n"); ++ ++ if ( nREADRG ) ++ lgsm_pb_retrieve_readrg(lgsmh, nREADRG); ++ } else if( !strncmp(buf, "pRf", 3) ) { ++ printf("Retrieve Find Records\n"); ++ ++ if ( nFIND ) ++ lgsm_pb_retrieve_find(lgsmh, nFIND); + } else if ( !strncmp(buf, "sd", 2)) { + printf("Delete SMS\n"); + struct lgsm_sms_delete sms_del; diff --git a/meta/recipes-connectivity/gsm/files/default b/meta/recipes-connectivity/gsm/files/default new file mode 100644 index 0000000000..6ef4f6db57 --- /dev/null +++ b/meta/recipes-connectivity/gsm/files/default @@ -0,0 +1,59 @@ +# gsmd This shell script configures for the gsmd init script. + +. /etc/init.d/functions + +case `machine_id` in + "gta01"|"gta02") + GSMD_OPTS="-s 115200 -F" + if [ -d '/sys/bus/platform/devices/gta01-pm-gsm.0' ] ; then + GSM_POW="/sys/bus/platform/devices/gta01-pm-gsm.0/power_on" + GSM_RES="/sys/bus/platform/devices/gta01-pm-gsm.0/reset" + else + GSM_POW="/sys/bus/platform/devices/neo1973-pm-gsm.0/power_on" + GSM_RES="/sys/bus/platform/devices/neo1973-pm-gsm.0/reset" + fi + GSM_DEV="/dev/ttySAC0" + GSM_DL="/sys/devices/platform/neo1973-pm-gsm.0/download" + ;; + "htc_apache"|"htc_blueangel"|"htc_universal") + GSMD_OPTS="-s 115200 -F" + GSM_DEV="/dev/ttyS0" + ;; + "htc_himalaya") + GSMD_OPTS="-s 115200 -F" + GSM_DEV="/dev/ttyS2" + ;; + "htc_magician") + GSMD_OPTS="-s 115200 -F" + GSM_DEV="/dev/ttyS1" + ;; + "palm_treo_650") + GSMD_OPTS="-s 460800 -F -w 1" + GSM_DEV="/dev/ttyS0" + ;; + "motorola_ezx_platform") + GSMD_OPTS="-s 115200 -F -v ti" + GSM_DEV="/dev/mux0" + ;; + "omap3430_ldp_board") + # Need a machine for the Zoom modem, but this will do + GSMD_OPTS="-s 460800 -F -v ti -m gta01" + GSM_DEV="/dev/ttyS0" + ;; + *) + # Unknown board + + # If you must specify special options, uncomment and modify the next line + #GSMD_OPTS="-s 115200 -F" + + # If your GSM device needs to be powered up, uncomment and modify the next line + #GSM_POW="/sys/bus/platform/devices/gta01-pm-gsm.0/power_on" + + # If your GSM device then needs to be reset, uncomment and modify the next line + #GSM_RES="/sys/bus/platform/devices/gta01-pm-gsm.0/reset" + + # This should be in a common /etc/default/serial, together with + # BT_DEV and IR_DEV for devices that have those on a serial port + #GSM_DEV="/dev/ttyS1" + ;; +esac diff --git a/meta/recipes-connectivity/gsm/files/fix_machine_init.patch b/meta/recipes-connectivity/gsm/files/fix_machine_init.patch new file mode 100644 index 0000000000..808bb17b42 --- /dev/null +++ b/meta/recipes-connectivity/gsm/files/fix_machine_init.patch @@ -0,0 +1,23 @@ +Index: src/gsmd/gsmd.c +=================================================================== +--- a/src/gsmd/gsmd.c (revision 4304) ++++ b/src/gsmd/gsmd.c (working copy) +@@ -196,13 +196,13 @@ + + sms_cb_init(gsmd); + +- if (gsmd->vendorpl && gsmd->vendorpl->initsettings){ ++ if (gsmd->vendorpl && gsmd->vendorpl->initsettings) + rc |= gsmd->vendorpl->initsettings(gsmd); ++ ++ if (gsmd->machinepl && gsmd->machinepl->initsettings) + rc |= gsmd->machinepl->initsettings(gsmd); +- return rc; +- } +- else +- return rc; ++ ++ return rc; + } + + static int firstcmd_response = 0; diff --git a/meta/recipes-connectivity/gsm/files/gsmd b/meta/recipes-connectivity/gsm/files/gsmd new file mode 100644 index 0000000000..dc10e63098 --- /dev/null +++ b/meta/recipes-connectivity/gsm/files/gsmd @@ -0,0 +1,47 @@ +#! /bin/sh +# +# gsmd This shell script starts and stops gsmd. +# +# chkconfig: 345 90 40 +# description: Gsmd manages access to a serial- or USB-connected GSM +# processname: gsmd + +PATH=/bin:/usr/bin:/sbin:/usr/sbin + +[ -f /etc/default/rcS ] && . /etc/default/rcS +[ -f /etc/default/gsmd ] && . /etc/default/gsmd + +case "$1" in + start) + [ -n "$GSM_POW" ] && ( echo "0" >$GSM_POW; sleep 1 ) + [ -n "$GSM_POW" ] && ( echo "1" >$GSM_POW; sleep 1 ) + [ -n "$GSM_RES" ] && ( echo "1" >$GSM_RES; sleep 1 ) + [ -n "$GSM_RES" ] && ( echo "0" >$GSM_RES; sleep 2 ) + + echo -n "Starting GSM daemon: " + start-stop-daemon -S -x /usr/sbin/gsmd -- gsmd -p $GSM_DEV $GSMD_OPTS -d -l syslog + + if [ $? = 0 ]; then + echo "gsmd." + else + echo "(failed.)" + fi + ;; + stop) + [ -n "$GSM_POW" ] && echo "0" >$GSM_POW + + echo -n "Stopping GSM daemon: " + start-stop-daemon -K -x /usr/sbin/gsmd + echo "gsmd." + ;; + restart|force-reload) + $0 stop + $0 start + ;; + *) + echo "Usage: /etc/init.d/gsmd {start|stop|restart|force-reload}" + exit 1 + ;; +esac + +exit 0 diff --git a/meta/recipes-connectivity/gsm/files/install-ts-headers.patch b/meta/recipes-connectivity/gsm/files/install-ts-headers.patch new file mode 100644 index 0000000000..88e3b6dd1f --- /dev/null +++ b/meta/recipes-connectivity/gsm/files/install-ts-headers.patch @@ -0,0 +1,11 @@ +Index: gsm/include/gsmd/Makefile.am +=================================================================== +--- gsm.orig/include/gsmd/Makefile.am 2007-10-29 21:05:57.000000000 +0100 ++++ gsm/include/gsmd/Makefile.am 2007-10-29 21:06:03.000000000 +0100 +@@ -1,4 +1,4 @@ + +-pkginclude_HEADERS = event.h usock.h ++pkginclude_HEADERS = event.h ts0705.h ts0707.h usock.h + +-noinst_HEADERS = atcmd.h gsmd.h select.h ts0705.h ts0707.h unsolicited.h usock.h vendorplugin.h ++noinst_HEADERS = atcmd.h gsmd.h select.h unsolicited.h usock.h vendorplugin.h diff --git a/meta/recipes-connectivity/gsm/files/lgsm_send_fix_return_value.patch b/meta/recipes-connectivity/gsm/files/lgsm_send_fix_return_value.patch new file mode 100644 index 0000000000..00ba3a4549 --- /dev/null +++ b/meta/recipes-connectivity/gsm/files/lgsm_send_fix_return_value.patch @@ -0,0 +1,11 @@ +--- gsm/src/libgsmd/libgsmd.c.orig 2007-09-25 00:41:56.000000000 -0500 ++++ gsm/src/libgsmd/libgsmd.c 2007-09-25 00:43:44.000000000 -0500 +@@ -210,7 +210,7 @@ + pos += rc; + } + } +- return 0; ++ return (sizeof(*gmh) + gmh->len); + } + + struct gsmd_msg_hdr *lgsm_gmh_fill(int type, int subtype, int payload_len) diff --git a/meta/recipes-connectivity/gsm/gsmd.inc b/meta/recipes-connectivity/gsm/gsmd.inc new file mode 100644 index 0000000000..a69fdd90f1 --- /dev/null +++ b/meta/recipes-connectivity/gsm/gsmd.inc @@ -0,0 +1,93 @@ +DESCRIPTION = "GSM libraries and daemons implementing the 07.10 specification" +HOMEPAGE = "http://www.openmoko.org" +LICENSE = "GPL LGPL" +SECTION = "libs/gsm" +PROVIDES += "gsmd" +RPROVIDES_${PN} = "libgsmd0 libgsmd gsmd gsmd-devel" +PV = "0.1+svnr${SRCREV}" +PR = "r47" + +SRC_URI = "svn://svn.openmoko.org/trunk/src/target;module=gsm;proto=http \ + file://fix_machine_init.patch;patch=1 \ + file://gsmd \ + file://default" +S = "${WORKDIR}/gsm" + +inherit autotools pkgconfig update-rc.d +# handle update-rc.d RDEPENDS manually, we don't need it on +# anything but gsmd +RDEPENDS_append = "" + +INITSCRIPT_NAME = "gsmd" +INITSCRIPT_PARAMS = "defaults 35" + +do_install_append() { + install -d ${D}/${sysconfdir}/init.d + install -m 0755 ${WORKDIR}/gsmd ${D}/${sysconfdir}/init.d/ + install -d ${D}/${sysconfdir}/default + install ${WORKDIR}/default ${D}/${sysconfdir}/default/gsmd +} + +PACKAGES =+ "\ + ${PN}-tools \ + ${BASEPN}-plugins \ + ${BASEPN}-plugin-machine-generic \ + ${BASEPN}-plugin-machine-tihtc \ + ${BASEPN}-plugin-machine-gta01 \ + ${BASEPN}-plugin-vendor-bcm \ + ${BASEPN}-plugin-vendor-qc \ + ${BASEPN}-plugin-vendor-ti \ + ${BASEPN}-plugin-vendor-tihtc \ +" + +ALLOW_EMPTY_${BASEPN}-plugin-machine-gta01 = "1" + +RDEPENDS_${BASEPN}-plugins = "\ + ${BASEPN}-plugin-machine-generic \ + ${BASEPN}-plugin-machine-tihtc \ + ${BASEPN}-plugin-machine-gta01 \ + ${BASEPN}-plugin-vendor-bcm \ + ${BASEPN}-plugin-vendor-qc \ + ${BASEPN}-plugin-vendor-ti \ + ${BASEPN}-plugin-vendor-tihtc \ +" + +RDEPENDS_${PN} += "update-rc.d initscripts" +RRECOMMENDS_${PN} += "${BASEPN}-plugins" + +FILES_${PN}-dbg += "${libdir}/gsmd/.debug/*" +FILES_${PN}-tools = "${bindir}/*" +FILES_${BASEPN}-plugins = "" +FILES_${BASEPN}-plugin-machine-generic = "${libdir}/gsmd/libgsmd-machine_generic.so*" +FILES_${BASEPN}-plugin-machine-tihtc = "${libdir}/gsmd/libgsmd-machine_tihtc.so*" +FILES_${BASEPN}-plugin-machine-gta01 = "${libdir}/gsmd/libgsmd-machine_gta01.so*" +FILES_${BASEPN}-plugin-vendor-qc = "${libdir}/gsmd/libgsmd-vendor_qc.so*" +FILES_${BASEPN}-plugin-vendor-bcm = "${libdir}/gsmd/libgsmd-vendor_bcm.so*" +FILES_${BASEPN}-plugin-vendor-ti = "${libdir}/gsmd/libgsmd-vendor_ti.so*" +FILES_${BASEPN}-plugin-vendor-tihtc = "${libdir}/gsmd/libgsmd-vendor_tihtc.so*" + +PACKAGES_DYNAMIC = "lib${BASEPN}* ${BASEPN}" + +ALLOW_EMPTY_${BASEPN}-plugins = "1" + +RCONFLICTS_lib${BASEPN} = "lib${CONFLICTNAME}" +RCONFLICTS_${BASEPN} = "${CONFLICTNAME}" +RCONFLICTS_${BASEPN}-plugins = "${CONFLICTNAME}-plugins" +RCONFLICTS_${BASEPN}-plugin-machine-generic = "${CONFLICTNAME}-plugin-machine-generic" +RCONFLICTS_${BASEPN}-plugin-machine-tihtc = "${CONFLICTNAME}-plugin-machine-tihtc" +RCONFLICTS_${BASEPN}-plugin-machine-gta01 = "${CONFLICTNAME}-plugin-machine-gta01" +RCONFLICTS_${BASEPN}-plugin-vendor-qc = "${CONFLICTNAME}-plugin-vendor-qc" +RCONFLICTS_${BASEPN}-plugin-vendor-bcm = "${CONFLICTNAME}-plugin-vendor-bcm" +RCONFLICTS_${BASEPN}-plugin-vendor-ti = "${CONFLICTNAME}-plugin-vendor-ti" +RCONFLICTS_${BASEPN}-plugin-vendor-tihtc = "${CONFLICTNAME}-plugin-vendor-tihtc" + +RPROVIDES_lib${BASEPN} += "lib${CONFLICTNAME}" +RPROVIDES_${BASEPN} = "${CONFLICTNAME}" +RPROVIDES_${BASEPN}-plugins = "${CONFLICTNAME}-plugins" +RPROVIDES_${BASEPN}-plugin-machine-generic = "${CONFLICTNAME}-plugin-machine-generic" +RPROVIDES_${BASEPN}-plugin-machine-tihtc = "${CONFLICTNAME}-plugin-machine-tihtc" +RPROVIDES_${BASEPN}-plugin-machine-gta01 = "${CONFLICTNAME}-plugin-machine-gta01" +RPROVIDES_${BASEPN}-plugin-vendor-qc = "${CONFLICTNAME}-plugin-vendor-qc" +RPROVIDES_${BASEPN}-plugin-vendor-bcm = "${CONFLICTNAME}-plugin-vendor-bcm" +RPROVIDES_${BASEPN}-plugin-vendor-ti = "${CONFLICTNAME}-plugin-vendor-ti" +RPROVIDES_${BASEPN}-plugin-vendor-tihtc = "${CONFLICTNAME}-plugin-vendor-tihtc" diff --git a/meta/recipes-connectivity/gsm/libgsmd_svn.bb b/meta/recipes-connectivity/gsm/libgsmd_svn.bb new file mode 100644 index 0000000000..9d3ca19c04 --- /dev/null +++ b/meta/recipes-connectivity/gsm/libgsmd_svn.bb @@ -0,0 +1,5 @@ +BASEPN = "gsmd" +CONFLICTNAME = "gsmd-devel" + +require gsmd.inc + diff --git a/meta/recipes-connectivity/iproute2/iproute2-2.6.34/configure-cross.patch b/meta/recipes-connectivity/iproute2/iproute2-2.6.34/configure-cross.patch new file mode 100644 index 0000000000..67dc6f5a30 --- /dev/null +++ b/meta/recipes-connectivity/iproute2/iproute2-2.6.34/configure-cross.patch @@ -0,0 +1,61 @@ +# borrow from OE, to handle cross compile mess +# +# ktian1, 06/28/2010 +Index: iproute2-2.6.34/configure +=================================================================== +--- iproute2-2.6.34.orig/configure ++++ iproute2-2.6.34/configure +@@ -4,7 +4,7 @@ + INCLUDE=${1:-"$PWD/include"} + + TABLES= +- ++SYSROOT=$1 + check_atm() + { + cat >/tmp/atmtest.c </dev/null 2>&1 ++$CC -I$INCLUDE -o /tmp/atmtest /tmp/atmtest.c -latm >/dev/null 2>&1 + if [ $? -eq 0 ] + then + echo "TC_CONFIG_ATM:=y" >>Config +@@ -49,7 +49,7 @@ int main(int argc, char **argv) + + EOF + +-if gcc -I$INCLUDE $IPTC -o /tmp/ipttest /tmp/ipttest.c $IPTL -ldl -lxtables >/dev/null 2>&1 ++if $CC -I$INCLUDE $IPTC -o /tmp/ipttest /tmp/ipttest.c $IPTL -ldl -lxtables >/dev/null 2>&1 + then + echo "TC_CONFIG_XT:=y" >>Config + echo "using xtables" +@@ -86,7 +86,7 @@ int main(int argc, char **argv) { + } + + EOF +-gcc -I$INCLUDE $IPTC -o /tmp/ipttest /tmp/ipttest.c $IPTL -ldl >/dev/null 2>&1 ++$CC -I$INCLUDE $IPTC -o /tmp/ipttest /tmp/ipttest.c $IPTL -ldl >/dev/null 2>&1 + + if [ $? -eq 0 ] + then +@@ -126,7 +126,7 @@ int main(int argc, char **argv) { + } + + EOF +-gcc -I$INCLUDE $IPTC -o /tmp/ipttest /tmp/ipttest.c $IPTL -ldl >/dev/null 2>&1 ++$CC -I$INCLUDE $IPTC -o /tmp/ipttest /tmp/ipttest.c $IPTL -ldl >/dev/null 2>&1 + + if [ $? -eq 0 ] + then +@@ -150,7 +150,7 @@ check_ipt() + check_ipt_lib_dir() + { + IPT_LIB_DIR="" +- for dir in /lib /usr/lib /usr/local/lib ++ for dir in $SYSROOT/lib $SYSROOT/usr/lib $SYSROOT/usr/local/lib + do + for file in $dir/$TABLES/lib*t_*so ; do + if [ -f $file ]; then diff --git a/meta/recipes-connectivity/iproute2/iproute2.inc b/meta/recipes-connectivity/iproute2/iproute2.inc new file mode 100644 index 0000000000..7246b87e9b --- /dev/null +++ b/meta/recipes-connectivity/iproute2/iproute2.inc @@ -0,0 +1,27 @@ +DESCRIPTION = "kernel routing and traffic control utilities" +HOMEPAGE = "http://www.linuxfoundation.org/collaborate/workgroups/networking/iproute2" +SECTION = "base" +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a \ + file://ip/ip.c;md5=186731afa4b42e30b9b37efa4ec90b93" +DEPENDS = "flex-native bison-native" + +inherit update-alternatives + +EXTRA_OEMAKE = "CC='${CC}' KERNEL_INCLUDE=${STAGING_KERNEL_DIR}/include DOCDIR=${docdir}/iproute2 SUBDIRS='lib tc ip' SBINDIR=/sbin" + +do_install () { + oe_runmake DESTDIR=${D} install + mv ${D}${base_sbindir}/ip ${D}${base_sbindir}/ip.iproute2 + install -d ${D}${datadir} + mv ${D}/share/* ${D}${datadir}/ || true + rm ${D}/share -rf || true +} + +FILES_${PN} += "/usr/lib/tc/*" +FILES_${PN}-dbg += "/usr/lib/tc/.debug" + +ALTERNATIVE_NAME = "ip" +ALTERNATIVE_PATH = "${base_sbindir}/ip.iproute2" +ALTERNATIVE_LINK = "${base_bindir}/ip" +ALTERNATIVE_PRIORITY = "100" diff --git a/meta/recipes-connectivity/iproute2/iproute2_2.6.34.bb b/meta/recipes-connectivity/iproute2/iproute2_2.6.34.bb new file mode 100644 index 0000000000..c5e0ef6e56 --- /dev/null +++ b/meta/recipes-connectivity/iproute2/iproute2_2.6.34.bb @@ -0,0 +1,6 @@ +require iproute2.inc + +PR = "r0" + +SRC_URI = "http://developer.osdl.org/dev/iproute2/download/${P}.tar.bz2 \ + file://configure-cross.patch" diff --git a/meta/recipes-connectivity/libetpan/files/cxx-is-here.patch b/meta/recipes-connectivity/libetpan/files/cxx-is-here.patch new file mode 100644 index 0000000000..d910daab17 --- /dev/null +++ b/meta/recipes-connectivity/libetpan/files/cxx-is-here.patch @@ -0,0 +1,18 @@ +--- + configure.ac | 1 + + 1 file changed, 1 insertion(+) + +--- libetpan-0.54.orig/configure.ac ++++ libetpan-0.54/configure.ac +@@ -104,10 +104,11 @@ if test "$have_w32_system" = yes; then + fi + AM_CONDITIONAL(HAVE_MINGW32_SYSTEM, test "$have_w32_system" = yes) + + # Check the C compiler. + AC_PROG_CC ++AC_PROG_CXX + + # Compiler flags. + AC_ARG_ENABLE(debug, [ --enable-debug setup flags (gcc) for debugging (default=no)], + if test "x$GCC" = xyes; then + CFLAGS="$CFLAGS -O2 -g" diff --git a/meta/recipes-connectivity/libetpan/libetpan_0.54.bb b/meta/recipes-connectivity/libetpan/libetpan_0.54.bb new file mode 100644 index 0000000000..5666ea0ded --- /dev/null +++ b/meta/recipes-connectivity/libetpan/libetpan_0.54.bb @@ -0,0 +1,19 @@ +DESCRIPTION = "libetpan is a library for communicating with mail and news servers. \ +It supports the protocols SMTP, POP3, IMAP and NNTP." +HOMEPAGE = "http://www.etpan.org" +SECTION = "libs" +DEPENDS = "curl expat gnutls" +LICENSE = "BSD" +PR = "r1" + +SRC_URI = "${SOURCEFORGE_MIRROR}/libetpan/libetpan-${PV}.tar.gz \ + file://cxx-is-here.patch;patch=1" + +inherit autotools pkgconfig gettext binconfig + +EXTRA_OECONF = "--without-openssl --with-gnutls --disable-db" + +PARALLEL_MAKE = "" + +FILES_${PN} = "${libdir}/lib*.so.*" +FILES_${PN}-dev = "${bindir} ${includedir} ${libdir}/lib*.so ${libdir}/*.la ${libdir}/*.a ${libdir}/pkgconfig" diff --git a/meta/recipes-connectivity/libnss-mdns/files/alignment-fix.patch b/meta/recipes-connectivity/libnss-mdns/files/alignment-fix.patch new file mode 100644 index 0000000000..11d4655e1f --- /dev/null +++ b/meta/recipes-connectivity/libnss-mdns/files/alignment-fix.patch @@ -0,0 +1,11 @@ +--- nss-mdns-0.6/src/nss.c.orig 2005-09-25 17:27:51 +0200 ++++ nss-mdns-0.6/src/nss.c 2005-09-25 17:28:55 +0200 +@@ -456,6 +456,8 @@ + result->h_addrtype = af; + result->h_length = address_length; + ++ idx+=(sizeof(char*)-idx%sizeof(char*)); /* Align on 32 bit boundary */ ++ + /* Check if there's enough space for the addresses */ + if (buflen < idx+u.data_len+sizeof(char*)*(u.count+1)) { + *errnop = ERANGE; diff --git a/meta/recipes-connectivity/libnss-mdns/libnss-mdns_0.10.bb b/meta/recipes-connectivity/libnss-mdns/libnss-mdns_0.10.bb new file mode 100644 index 0000000000..69eaa33d60 --- /dev/null +++ b/meta/recipes-connectivity/libnss-mdns/libnss-mdns_0.10.bb @@ -0,0 +1,36 @@ +DESCRIPTION = "NSS module for Multicast DNS name resolution" +HOMEPAGE = "http://0pointer.de/lennart/projects/nss-mdns/" +SECTION = "libs" +PRIORITY = "optional" + +LICENSE = "LGPLv2.1+" +LIC_FILES_CHKSUM = "file://LICENSE;md5=2d5025d4aa3495befef8f17206a5b0a1" + +DEPENDS = "avahi" +RDEPENDS = "avahi-daemon" +PR = "r0" + +SRC_URI = "http://0pointer.de/lennart/projects/nss-mdns/nss-mdns-${PV}.tar.gz" +S = "${WORKDIR}/nss-mdns-${PV}" + +inherit autotools + +# suppress warning, but don't bother with autonamer +LEAD_SONAME = "libnss_mdns.so" +DEBIANNAME_${PN} = "libnss-mdns" + +EXTRA_OECONF = "--libdir=/lib --disable-lynx --enable-avahi" + +pkg_postinst () { + cat /etc/nsswitch.conf | grep "hosts:\s*files dns$" > /dev/null && { + cat /etc/nsswitch.conf | sed 's/hosts:\s*files dns/& mdns4/' > /tmp/nsswitch.conf + mv /tmp/nsswitch.conf /etc/nsswitch.conf + } +} + +pkg_prerm () { + cat /etc/nsswitch.conf | grep "hosts:\s*files dns mdns$" > /dev/null && { + cat /etc/nsswitch.conf | sed 's/\(hosts:\s*files dns\) mdns4*/\1/' > /tmp/nsswitch.conf + mv /tmp/nsswitch.conf /etc/nsswitch.conf + } +} diff --git a/meta/recipes-connectivity/libpcap/libpcap-1.1.1/aclocal.patch b/meta/recipes-connectivity/libpcap/libpcap-1.1.1/aclocal.patch new file mode 100644 index 0000000000..71fd8b989b --- /dev/null +++ b/meta/recipes-connectivity/libpcap/libpcap-1.1.1/aclocal.patch @@ -0,0 +1,165 @@ +diff -ruN libpcap-1.1.1-orig/aclocal.m4 libpcap-1.1.1/aclocal.m4 +--- libpcap-1.1.1-orig/aclocal.m4 2010-06-29 10:46:32.815117569 +0800 ++++ libpcap-1.1.1/aclocal.m4 2010-06-29 10:49:17.150149949 +0800 +@@ -37,7 +37,7 @@ + dnl AC_LBL_C_INIT. Now, we run AC_LBL_C_INIT_BEFORE_CC, AC_PROG_CC, + dnl and AC_LBL_C_INIT at the top level. + dnl +-AC_DEFUN(AC_LBL_C_INIT_BEFORE_CC, ++AC_DEFUN([AC_LBL_C_INIT_BEFORE_CC], + [AC_PREREQ(2.50) + AC_BEFORE([$0], [AC_LBL_C_INIT]) + AC_BEFORE([$0], [AC_PROG_CC]) +@@ -90,7 +90,7 @@ + dnl ac_cv_lbl_gcc_vers + dnl LBL_CFLAGS + dnl +-AC_DEFUN(AC_LBL_C_INIT, ++AC_DEFUN([AC_LBL_C_INIT], + [AC_PREREQ(2.50) + AC_BEFORE([$0], [AC_LBL_FIXINCLUDES]) + AC_BEFORE([$0], [AC_LBL_DEVEL]) +@@ -217,7 +217,7 @@ + dnl V_SONAME_OPT + dnl V_RPATH_OPT + dnl +-AC_DEFUN(AC_LBL_SHLIBS_INIT, ++AC_DEFUN([AC_LBL_SHLIBS_INIT], + [AC_PREREQ(2.50) + if test "$GCC" = yes ; then + # +@@ -361,7 +361,7 @@ + # Make sure we use the V_CCOPT flags, because some of those might + # disable inlining. + # +-AC_DEFUN(AC_LBL_C_INLINE, ++AC_DEFUN([AC_LBL_C_INLINE], + [AC_MSG_CHECKING(for inline) + save_CFLAGS="$CFLAGS" + CFLAGS="$V_CCOPT" +@@ -407,7 +407,7 @@ + dnl + dnl AC_LBL_FIXINCLUDES + dnl +-AC_DEFUN(AC_LBL_FIXINCLUDES, ++AC_DEFUN([AC_LBL_FIXINCLUDES], + [if test "$GCC" = yes ; then + AC_MSG_CHECKING(for ANSI ioctl definitions) + AC_CACHE_VAL(ac_cv_lbl_gcc_fixincludes, +@@ -453,7 +453,7 @@ + dnl $2 (yacc appended) + dnl $3 (optional flex and bison -P prefix) + dnl +-AC_DEFUN(AC_LBL_LEX_AND_YACC, ++AC_DEFUN([AC_LBL_LEX_AND_YACC], + [AC_ARG_WITH(flex, [ --without-flex don't use flex]) + AC_ARG_WITH(bison, [ --without-bison don't use bison]) + if test "$with_flex" = no ; then +@@ -506,7 +506,7 @@ + dnl + dnl DECLWAITSTATUS (defined) + dnl +-AC_DEFUN(AC_LBL_UNION_WAIT, ++AC_DEFUN([AC_LBL_UNION_WAIT], + [AC_MSG_CHECKING(if union wait is used) + AC_CACHE_VAL(ac_cv_lbl_union_wait, + AC_TRY_COMPILE([ +@@ -535,7 +535,7 @@ + dnl + dnl HAVE_SOCKADDR_SA_LEN (defined) + dnl +-AC_DEFUN(AC_LBL_SOCKADDR_SA_LEN, ++AC_DEFUN([AC_LBL_SOCKADDR_SA_LEN], + [AC_MSG_CHECKING(if sockaddr struct has the sa_len member) + AC_CACHE_VAL(ac_cv_lbl_sockaddr_has_sa_len, + AC_TRY_COMPILE([ +@@ -560,7 +560,7 @@ + dnl + dnl HAVE_SOCKADDR_STORAGE (defined) + dnl +-AC_DEFUN(AC_LBL_SOCKADDR_STORAGE, ++AC_DEFUN([AC_LBL_SOCKADDR_STORAGE], + [AC_MSG_CHECKING(if sockaddr_storage struct exists) + AC_CACHE_VAL(ac_cv_lbl_has_sockaddr_storage, + AC_TRY_COMPILE([ +@@ -593,7 +593,7 @@ + dnl won't be using code that would use that member, or we wouldn't + dnl compile in any case). + dnl +-AC_DEFUN(AC_LBL_HP_PPA_INFO_T_DL_MODULE_ID_1, ++AC_DEFUN([AC_LBL_HP_PPA_INFO_T_DL_MODULE_ID_1], + [AC_MSG_CHECKING(if dl_hp_ppa_info_t struct has dl_module_id_1 member) + AC_CACHE_VAL(ac_cv_lbl_dl_hp_ppa_info_t_has_dl_module_id_1, + AC_TRY_COMPILE([ +@@ -619,7 +619,7 @@ + dnl + dnl ac_cv_lbl_have_run_path (yes or no) + dnl +-AC_DEFUN(AC_LBL_HAVE_RUN_PATH, ++AC_DEFUN([AC_LBL_HAVE_RUN_PATH], + [AC_MSG_CHECKING(for ${CC-cc} -R) + AC_CACHE_VAL(ac_cv_lbl_have_run_path, + [echo 'main(){}' > conftest.c +@@ -644,7 +644,7 @@ + dnl + dnl LBL_ALIGN (DEFINED) + dnl +-AC_DEFUN(AC_LBL_UNALIGNED_ACCESS, ++AC_DEFUN([AC_LBL_UNALIGNED_ACCESS], + [AC_MSG_CHECKING(if unaligned accesses fail) + AC_CACHE_VAL(ac_cv_lbl_unaligned_fail, + [case "$host_cpu" in +@@ -749,7 +749,7 @@ + dnl HAVE_OS_PROTO_H (defined) + dnl os-proto.h (symlinked) + dnl +-AC_DEFUN(AC_LBL_DEVEL, ++AC_DEFUN([AC_LBL_DEVEL], + [rm -f os-proto.h + if test "${LBL_CFLAGS+set}" = set; then + $1="$$1 ${LBL_CFLAGS}" +@@ -886,7 +886,7 @@ + dnl statically and happen to have a libresolv.a lying around (and no + dnl libnsl.a). + dnl +-AC_DEFUN(AC_LBL_LIBRARY_NET, [ ++AC_DEFUN([AC_LBL_LIBRARY_NET], [ + # Most operating systems have gethostbyname() in the default searched + # libraries (i.e. libc): + # Some OSes (eg. Solaris) place it in libnsl +@@ -909,7 +909,7 @@ + dnl Test for __attribute__ + dnl + +-AC_DEFUN(AC_C___ATTRIBUTE__, [ ++AC_DEFUN([AC_C___ATTRIBUTE__], [ + AC_MSG_CHECKING(for __attribute__) + AC_CACHE_VAL(ac_cv___attribute__, [ + AC_COMPILE_IFELSE( +@@ -947,7 +947,7 @@ + dnl + dnl -Scott Barron + dnl +-AC_DEFUN(AC_LBL_TPACKET_STATS, ++AC_DEFUN([AC_LBL_TPACKET_STATS], + [AC_MSG_CHECKING(if if_packet.h has tpacket_stats defined) + AC_CACHE_VAL(ac_cv_lbl_tpacket_stats, + AC_TRY_COMPILE([ +@@ -976,7 +976,7 @@ + dnl doesn't have that member (which is OK, as either we won't be using + dnl code that would use that member, or we wouldn't compile in any case). + dnl +-AC_DEFUN(AC_LBL_LINUX_TPACKET_AUXDATA_TP_VLAN_TCI, ++AC_DEFUN([AC_LBL_LINUX_TPACKET_AUXDATA_TP_VLAN_TCI], + [AC_MSG_CHECKING(if tpacket_auxdata struct has tp_vlan_tci member) + AC_CACHE_VAL(ac_cv_lbl_dl_hp_ppa_info_t_has_dl_module_id_1, + AC_TRY_COMPILE([ +@@ -1003,7 +1003,7 @@ + dnl + dnl HAVE_DLPI_PASSIVE (defined) + dnl +-AC_DEFUN(AC_LBL_DL_PASSIVE_REQ_T, ++AC_DEFUN([AC_LBL_DL_PASSIVE_REQ_T], + [AC_MSG_CHECKING(if dl_passive_req_t struct exists) + AC_CACHE_VAL(ac_cv_lbl_has_dl_passive_req_t, + AC_TRY_COMPILE([ diff --git a/meta/recipes-connectivity/libpcap/libpcap-1.1.1/ieee80215-arphrd.patch b/meta/recipes-connectivity/libpcap/libpcap-1.1.1/ieee80215-arphrd.patch new file mode 100644 index 0000000000..f29c7cb54c --- /dev/null +++ b/meta/recipes-connectivity/libpcap/libpcap-1.1.1/ieee80215-arphrd.patch @@ -0,0 +1,22 @@ +Index: libpcap-1.0.0/pcap-linux.c +=================================================================== +--- libpcap-1.0.0.orig/pcap-linux.c 2009-01-28 11:58:54.000000000 +0300 ++++ libpcap-1.0.0/pcap-linux.c 2009-01-28 11:59:04.000000000 +0300 +@@ -1616,6 +1616,17 @@ + * so let's use "Linux-cooked" mode. Jean II */ + //handle->md.cooked = 1; + break; ++#ifndef ARPHRD_IEEE80215 ++#define ARPHRD_IEEE80215 804 ++#endif ++#ifndef ARPHRD_IEEE80215_PHY ++#define ARPHRD_IEEE80215_PHY 805 ++#endif ++ ++ case ARPHRD_IEEE80215: ++ case ARPHRD_IEEE80215_PHY: ++ handle->linktype = DLT_IEEE802_15_4; ++ break; + + /* ARPHRD_LAPD is unofficial and randomly allocated, if reallocation + * is needed, please report it to */ diff --git a/meta/recipes-connectivity/libpcap/libpcap.inc b/meta/recipes-connectivity/libpcap/libpcap.inc new file mode 100644 index 0000000000..2025d84c0d --- /dev/null +++ b/meta/recipes-connectivity/libpcap/libpcap.inc @@ -0,0 +1,24 @@ +DESCRIPTION = "Libpcap is a tool to capture network packages on Unix/Linux platform" +HOMEPAGE = "http://www.tcpdump.org/" +BUGTRACKER = "http://sourceforge.net/tracker/?group_id=53067&atid=469577" +SECTION = "libs/network" +LICENSE = "BSD" +LIC_FILES_CHKSUM = "file://LICENSE;md5=1d4b0366557951c84a94fabe3529f867 \ + file://pcap.h;beginline=1;endline=34;md5=8d6cf7e17d5745010d633e30bc529ea9" +DEPENDS = "flex-native bison-native" + +SRC_URI = "http://www.tcpdump.org/release/libpcap-${PV}.tar.gz" + +inherit autotools + +EXTRA_OECONF = "--with-pcap=linux" + +CPPFLAGS_prepend = "-I${S} " +CFLAGS_prepend = "-I${S} " +CXXFLAGS_prepend = "-I${S} " + +do_configure_prepend () { + if [ ! -e acinclude.m4 ]; then + cat aclocal.m4 > acinclude.m4 + fi +} diff --git a/meta/recipes-connectivity/libpcap/libpcap_1.1.1.bb b/meta/recipes-connectivity/libpcap/libpcap_1.1.1.bb new file mode 100644 index 0000000000..58ab5e6c95 --- /dev/null +++ b/meta/recipes-connectivity/libpcap/libpcap_1.1.1.bb @@ -0,0 +1,17 @@ +require libpcap.inc + +PR = "r0" + +SRC_URI += "file://aclocal.patch \ + file://ieee80215-arphrd.patch" + +# +# make install doesn't cover the shared lib +# make install-shared is just broken (no symlinks) +# +do_install_prepend () { + install -d ${D}${libdir} + install -d ${D}${bindir} + oe_runmake install-shared DESTDIR=${D} + oe_libinstall -a -so libpcap ${D}${libdir} +} diff --git a/meta/recipes-connectivity/network-suspend-scripts/network-suspend-scripts.bb b/meta/recipes-connectivity/network-suspend-scripts/network-suspend-scripts.bb new file mode 100644 index 0000000000..dc22ed85f6 --- /dev/null +++ b/meta/recipes-connectivity/network-suspend-scripts/network-suspend-scripts.bb @@ -0,0 +1,22 @@ +DESCRIPTION = "Network suspend/resume scripts" +SECTION = "base" +LICENSE = "GPLv2" +PV = "1.1" +PR = "r2" + +SRC_URI = "file://ifupdown \ + file://usbnet" + +do_install() { + install -d ${D}${sysconfdir}/apm/scripts.d + install -m 0755 ${WORKDIR}/ifupdown ${D}${sysconfdir}/apm/scripts.d + install -m 0755 ${WORKDIR}/usbnet ${D}${sysconfdir}/apm/scripts.d + install -d ${D}${sysconfdir}/apm/suspend.d + ln -s ../scripts.d/ifupdown ${D}${sysconfdir}/apm/suspend.d/05ifupdown + ln -s ../scripts.d/usbnet ${D}${sysconfdir}/apm/suspend.d/10usbnet + install -d ${D}${sysconfdir}/apm/resume.d + ln -sf ../scripts.d/ifupdown ${D}${sysconfdir}/apm/resume.d/30ifupdown + ln -sf ../scripts.d/usbnet ${D}${sysconfdir}/apm/resume.d/20usbnet +} + +FILES = "${sysconfdir}/apm" diff --git a/meta/recipes-connectivity/network-suspend-scripts/network-suspend-scripts/ifupdown b/meta/recipes-connectivity/network-suspend-scripts/network-suspend-scripts/ifupdown new file mode 100644 index 0000000000..d458da6866 --- /dev/null +++ b/meta/recipes-connectivity/network-suspend-scripts/network-suspend-scripts/ifupdown @@ -0,0 +1,26 @@ +#!/bin/sh +# Unloads/loads all interface that are up at time of suspend + +if [ "$1" = suspend ]; then + rm -f /var/run/ifstate-suspend + rm -f /var/run/ifstate-old + cp /var/run/ifstate /var/run/ifstate-old + cat /var/run/ifstate-old | ( + IFS="=" + while read IFACE LOGICAL; do + ifdown $IFACE + echo "$IFACE=$LOGICAL" >>/var/run/ifstate-suspend + done + rm -f /var/run/ifstate-old + ) +elif [ "$1" = resume ] && [ "$2" != standby ] && [ -f /var/run/ifstate-suspend ]; then + cat /var/run/ifstate-suspend | ( + while read LINE; do + ifup $LINE + done + ) + rm -f /var/run/ifstate-suspend +fi + +: exit 0 + diff --git a/meta/recipes-connectivity/network-suspend-scripts/network-suspend-scripts/usbnet b/meta/recipes-connectivity/network-suspend-scripts/network-suspend-scripts/usbnet new file mode 100644 index 0000000000..3731f6339f --- /dev/null +++ b/meta/recipes-connectivity/network-suspend-scripts/network-suspend-scripts/usbnet @@ -0,0 +1,16 @@ +#!/bin/sh +# Unloads/loads usb-eth so it always works + +. /etc/default/usbd + +if [ "$1" = suspend ]; then + rmmod usb-eth + rmmod sa1100usb_core +elif [ "$1" = resume ] && [ "$2" != standby ]; then + modprobe usb-eth + modprobe -r $usbdmodule + modprobe $usbdmodule +fi + +: exit 0 + diff --git a/meta/recipes-connectivity/nfs-utils/libnfsidmap_0.23.bb b/meta/recipes-connectivity/nfs-utils/libnfsidmap_0.23.bb new file mode 100644 index 0000000000..c6b02fe19a --- /dev/null +++ b/meta/recipes-connectivity/nfs-utils/libnfsidmap_0.23.bb @@ -0,0 +1,13 @@ +DESCRIPTION = "nfs idmapping library" +HOMEPAGE = "http://www.citi.umich.edu/projects/nfsv4/linux/" +SECTION = "libs" + +LICENSE = "BSD" +LIC_FILES_CHKSUM = "file://COPYING;md5=d9c6a2a0ca6017fda7cd905ed2739b37" +PR = "r0" + +SRC_URI = "http://www.citi.umich.edu/projects/nfsv4/linux/libnfsidmap/${BPN}-${PV}.tar.gz" + +inherit autotools + +EXTRA_OECONF = "--disable-ldap" diff --git a/meta/recipes-connectivity/nfs-utils/nfs-utils/nfs-utils-1.0.6-uclibc.patch b/meta/recipes-connectivity/nfs-utils/nfs-utils/nfs-utils-1.0.6-uclibc.patch new file mode 100644 index 0000000000..336dc0e267 --- /dev/null +++ b/meta/recipes-connectivity/nfs-utils/nfs-utils/nfs-utils-1.0.6-uclibc.patch @@ -0,0 +1,18 @@ +--- ./support/nfs/svc_socket.c.orig 2004-12-12 06:43:52.000000000 +0000 ++++ ./support/nfs/svc_socket.c 2004-12-12 06:50:04.000000000 +0000 +@@ -66,6 +66,7 @@ + memset ((char *) &addr, sizeof (addr)); + addr.sin_family = AF_INET; + ++#ifndef __UCLIBC__ /* neither getrpcbynumber() nor getrpcbynumber_r() is SuSv3 */ + ret = getrpcbynumber_r (number, &rpcbuf, rpcdata, sizeof rpcdata, + &rpcp); + if (ret == 0 && rpcp != NULL) +@@ -99,6 +100,7 @@ + } + } + else ++#endif + { + if (bindresvport (sock, &addr)) + { diff --git a/meta/recipes-connectivity/nfs-utils/nfs-utils/nfsserver b/meta/recipes-connectivity/nfs-utils/nfs-utils/nfsserver new file mode 100644 index 0000000000..9d02e85848 --- /dev/null +++ b/meta/recipes-connectivity/nfs-utils/nfs-utils/nfsserver @@ -0,0 +1,161 @@ +#!/bin/sh +### BEGIN INIT INFO +# Provides: nfs-kernel-server +# Required-Start: $remote_fs $portmap hwclock +# Required-Stop: $remote_fs $portmap hwclock +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: Kernel NFS server support +# Description: NFS is a popular protocol for file sharing across +# TCP/IP networks. This service provides NFS server +# functionality, which is configured via the +# /etc/exports file. +### END INIT INFO +# +# Startup script for nfs-utils +# +# +# The environment variable NFS_SERVERS may be set in /etc/default/nfsd +# Other control variables may be overridden here too +test -r /etc/default/nfsd && . /etc/default/nfsd +# +# Location of executables: +test -x "$NFS_MOUNTD" || NFS_MOUNTD=/usr/sbin/mountd +test -x "$NFS_NFSD" || NFS_NFSD=/usr/sbin/nfsd +test -x "$NFS_STATD" || NFS_STATD=/usr/sbin/statd +# +# The user mode program must also exist (it just starts the kernel +# threads using the kernel module code). +test -x "$NFS_MOUNTD" || exit 0 +test -x "$NFS_NFSD" || exit 0 +# +# Default is 8 threads, value is settable between 1 and the truely +# ridiculous 99 +test "$NFS_SERVERS" -gt 0 && test "$NFS_SERVERS" -lt 100 || NFS_SERVERS=8 +# +# The default state directory is /var/lib/nfs +test -n "$NFS_STATEDIR" || NFS_STATEDIR=/var/lib/nfs +# +#---------------------------------------------------------------------- +# Startup and shutdown functions. +# Actual startup/shutdown is at the end of this file. +#directories +create_directories(){ + echo -n 'creating NFS state directory: ' + mkdir -p "$NFS_STATEDIR" + ( cd "$NFS_STATEDIR" + umask 077 + mkdir -p sm sm.bak + test -w sm/state || { + rm -f sm/state + :>sm/state + } + umask 022 + for file in xtab etab smtab rmtab + do + test -w "$file" || { + rm -f "$file" + :>"$file" + } + done + ) + echo done +} +#mountd +start_mountd(){ + echo -n 'starting mountd: ' + start-stop-daemon --start --exec "$NFS_MOUNTD" -- "-f /etc/exports $@" + echo done +} +stop_mountd(){ + echo -n 'stopping mountd: ' + start-stop-daemon --stop --quiet --exec "$NFS_MOUNTD" + echo done +} +# +#nfsd +start_nfsd(){ + echo -n "starting $1 nfsd kernel threads: " + start-stop-daemon --start --exec "$NFS_NFSD" -- "$@" + echo done +} +delay_nfsd(){ + for delay in 0 1 2 3 4 5 6 7 8 9 + do + if pidof nfsd >/dev/null + then + echo -n . + sleep 1 + else + return 0 + fi + done + return 1 +} +stop_nfsd(){ + # WARNING: this kills any process with the executable + # name 'nfsd'. + echo -n 'stopping nfsd: ' + start-stop-daemon --stop --quiet --signal 1 --name nfsd + if delay_nfsd || { + echo failed + echo ' using signal 9: ' + start-stop-daemon --stop --quiet --signal 9 --name nfsd + delay_nfsd + } + then + echo done + # This will remove, recursively, dependencies + echo -n 'removing nfsd kernel module: ' + if modprobe -r nfsd + then + echo done + else + echo failed + fi + else + echo failed + fi +} + +#statd +start_statd(){ + echo -n "starting statd: " + start-stop-daemon --start --exec "$NFS_STATD" + echo done +} +stop_statd(){ + # WARNING: this kills any process with the executable + # name 'statd'. + echo -n 'stopping statd: ' + start-stop-daemon --stop --quiet --signal 1 --name statd + echo done +} +#---------------------------------------------------------------------- +# +# supported options: +# start +# stop +# reload: reloads the exports file +# restart: stops and starts mountd +#FIXME: need to create the /var/lib/nfs/... directories +case "$1" in +start) create_directories + start_nfsd "$NFS_SERVERS" + start_mountd + start_statd + test -r /etc/exports && exportfs -a;; +stop) exportfs -ua + stop_statd + stop_mountd + stop_nfsd;; +reload) test -r /etc/exports && exportfs -r;; +restart)exportfs -ua + stop_mountd + stop_statd + # restart does not restart the kernel threads, + # only the user mode processes + start_mountd + start_statd + test -r /etc/exports && exportfs -a;; +esac diff --git a/meta/recipes-connectivity/nfs-utils/nfs-utils_1.2.2.bb b/meta/recipes-connectivity/nfs-utils/nfs-utils_1.2.2.bb new file mode 100644 index 0000000000..fafedd17b5 --- /dev/null +++ b/meta/recipes-connectivity/nfs-utils/nfs-utils_1.2.2.bb @@ -0,0 +1,51 @@ +DESCRIPTION = "userspace utilities for kernel nfs" +HOMEPAGE = "http://nfs.sourceforge.net/" +SECTION = "console/network" +PRIORITY = "optional" + +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3" + +# util-linux for libblkid +DEPENDS = "libcap libnfsidmap libevent util-linux tcp-wrappers" +RDEPENDS = "portmap" +RRECOMMENDS = "kernel-module-nfsd" + +PR = "r1" + +SRC_URI = "${SOURCEFORGE_MIRROR}/nfs/nfs-utils-${PV}.tar.bz2 \ + file://nfs-utils-1.0.6-uclibc.patch \ + file://nfsserver" + +PARALLEL_MAKE = "" + +# Only kernel-module-nfsd is required here (but can be built-in) - the nfsd module will +# pull in the remainder of the dependencies. + +INITSCRIPT_NAME = "nfsserver" +# The server has no dependencies at the user run levels, so just put +# it in at the default levels. It must be terminated before the network +# in the shutdown levels, but that works fine. +INITSCRIPT_PARAMS = "defaults" + +inherit autotools update-rc.d + +# --enable-uuid is need for cross-compiling +EXTRA_OECONF = "--with-statduser=nobody \ + --enable-nfsv41 \ + --enable-uuid \ + --disable-gss \ + --disable-tirpc \ + --with-statedir=/var/lib/nfs" + +INHIBIT_AUTO_STAGE = "1" + +do_install_append () { + install -d ${D}${sysconfdir}/init.d + install -m 0755 ${WORKDIR}/nfsserver ${D}${sysconfdir}/init.d/nfsserver + + # the following are built by CC_FOR_BUILD + rm -f ${D}${sbindir}/rpcdebug + rm -f ${D}${sbindir}/rpcgen + rm -f ${D}${sbindir}/locktest +} diff --git a/meta/recipes-connectivity/openssl/openssl-0.9.8o/configure-targets.patch b/meta/recipes-connectivity/openssl/openssl-0.9.8o/configure-targets.patch new file mode 100644 index 0000000000..b68123a233 --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl-0.9.8o/configure-targets.patch @@ -0,0 +1,24 @@ + +The number of colons are important :) + +Index: openssl-0.9.8g/Configure +=================================================================== +--- openssl-0.9.8g.orig/Configure 2008-04-12 04:27:22.000000000 +0200 ++++ openssl-0.9.8g/Configure 2008-04-12 04:38:56.000000000 +0200 +@@ -395,6 +395,16 @@ + "linux-alpha-ccc","ccc:-fast -readonly_strings -DL_ENDIAN -DTERMIO::-D_REENTRANT:::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL:${no_asm}", + "linux-alpha+bwx-ccc","ccc:-fast -readonly_strings -DL_ENDIAN -DTERMIO::-D_REENTRANT:::SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL:${no_asm}", + ++ # Linux on ARM ++"linux-elf-arm","$ENV{'CC'}:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"linux-elf-armeb","$ENV{'CC'}:-DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"linux-gnueabi-arm","$ENV{'CC'}:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"linux-gnueabi-armeb","$ENV{'CC'}:-DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"linux-uclibcgnueabi-arm","$ENV{'CC'}:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"linux-uclibcgnueabi-armeb","$ENV{'CC'}:-DB_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++ ++"linux-avr32","$ENV{'CC'}:-DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).", ++ + #### *BSD [do see comment about ${BSDthreads} above!] + "BSD-generic32","gcc:-DTERMIOS -O3 -fomit-frame-pointer -Wall::${BSDthreads}:::BN_LLONG RC2_CHAR RC4_INDEX DES_INT DES_UNROLL:${no_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", + "BSD-x86", "gcc:-DL_ENDIAN -DTERMIOS -O3 -fomit-frame-pointer -Wall::${BSDthreads}:::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_out_asm}:dlfcn:bsd-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", diff --git a/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/ca.patch b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/ca.patch new file mode 100644 index 0000000000..761eebe510 --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/ca.patch @@ -0,0 +1,20 @@ +Index: openssl-0.9.8m/apps/CA.pl.in +=================================================================== +--- openssl-0.9.8m.orig/apps/CA.pl.in 2006-04-28 00:28:51.000000000 +0000 ++++ openssl-0.9.8m/apps/CA.pl.in 2010-02-27 00:36:51.000000000 +0000 +@@ -65,6 +65,7 @@ + foreach (@ARGV) { + if ( /^(-\?|-h|-help)$/ ) { + print STDERR "usage: CA -newcert|-newreq|-newreq-nodes|-newca|-sign|-verify\n"; ++ print STDERR "usage: CA -signcert certfile keyfile|-newcert|-newreq|-newca|-sign|-verify\n"; + exit 0; + } elsif (/^-newcert$/) { + # create a certificate +@@ -165,6 +166,7 @@ + } else { + print STDERR "Unknown arg $_\n"; + print STDERR "usage: CA -newcert|-newreq|-newreq-nodes|-newca|-sign|-verify\n"; ++ print STDERR "usage: CA -signcert certfile keyfile|-newcert|-newreq|-newca|-sign|-verify\n"; + exit 1; + } + } diff --git a/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/config-hurd.patch b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/config-hurd.patch new file mode 100644 index 0000000000..21b7935dde --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/config-hurd.patch @@ -0,0 +1,15 @@ +Index: openssl-0.9.8k/config +=================================================================== +--- openssl-0.9.8k.orig/config 2009-02-16 09:43:41.000000000 +0100 ++++ openssl-0.9.8k/config 2009-07-19 11:32:41.000000000 +0200 +@@ -162,8 +162,8 @@ + echo "${MACHINE}-whatever-linux1"; exit 0 + ;; + +- GNU*) +- echo "hurd-x86"; exit 0; ++ GNU:*|GNU/*:*) ++ echo "${MACHINE}-gnuish"; exit 0; + ;; + + LynxOS:*) diff --git a/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/debian-targets.patch b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/debian-targets.patch new file mode 100644 index 0000000000..fed47341ea --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/debian-targets.patch @@ -0,0 +1,54 @@ +Index: openssl-0.9.8k/Configure +=================================================================== +--- openssl-0.9.8k.orig/Configure 2009-12-09 16:09:41.000000000 +0000 ++++ openssl-0.9.8k/Configure 2009-12-09 16:09:55.000000000 +0000 +@@ -320,6 +320,49 @@ + "osf1-alpha-cc", "cc:-std1 -tune host -O4 -readonly_strings::(unknown):::SIXTY_FOUR_BIT_LONG RC4_CHUNK:${no_asm}:dlfcn:alpha-osf1-shared:::.so", + "tru64-alpha-cc", "cc:-std1 -tune host -fast -readonly_strings::-pthread:::SIXTY_FOUR_BIT_LONG RC4_CHUNK:${no_asm}:dlfcn:alpha-osf1-shared::-msym:.so", + ++# Debian GNU/* (various architectures) ++"debian-alpha","gcc:-DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_UNROLL:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-alpha-ev4","gcc:-DTERMIO -O3 -Wa,--noexecstack -mcpu=ev4 -g -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_UNROLL:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-alpha-ev5","gcc:-DTERMIO -O3 -Wa,--noexecstack -mcpu=ev5 -g -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_UNROLL:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-arm","gcc:-DL_ENDIAN -DTERMIO -O2 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-armeb","gcc:-DB_ENDIAN -DTERMIO -O2 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-armel","gcc:-DL_ENDIAN -DTERMIO -O2 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_RISC1::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++#"debian-amd64","gcc:-DL_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-amd64", "gcc:-m64 -DL_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall -DMD32_REG_T=int::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK RC4_CHAR BF_PTR2 DES_INT DES_UNROLL:${x86_64_asm_linux}:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-avr32", "gcc:-DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG_BF_PTR::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-kfreebsd-amd64","gcc:-m64 -DL_ENDIAN -DTERMIOS -O3 -Wa,--noexecstack -Wall -DMD32_REG_T=int::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK BF_PTR2 DES_INT DES_UNROLL:${x86_64_asm}:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++#"debian-freebsd-alpha","gcc:-DTERMIOS -O -Wa,--noexecstack -fomit-frame-pointer::(unknown):::SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_PTR DES_RISC2::::::::::dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-kfreebsd-i386","gcc:-DL_ENDIAN -DTERMIOS -O3 -Wa,--noexecstack -g -march=i486 -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-hppa","gcc:-DB_ENDIAN -DTERMIO -O2 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG MD2_CHAR RC4_INDEX::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-hurd-i386","gcc:-DL_ENDIAN -DTERMIOS -O3 -Wa,--noexecstack -g -mtune=i486 -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-ia64","gcc:-DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK RC4_CHAR:${ia64_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++#"debian-i386","gcc:-DL_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -fomit-frame-pointer -m486 -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}::::::::::dlfcn:linux-shared:-fPIC", ++"debian-i386","gcc:-DL_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-i386-i486","gcc:-DL_ENDIAN -DTERMIO -O3 -march=i486 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-i386-i586","gcc:-DL_ENDIAN -DTERMIO -O3 -march=i586 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-i386-i686/cmov","gcc:-DL_ENDIAN -DTERMIO -O3 -march=i686 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-m68k","gcc:-DB_ENDIAN -DTERMIO -O2 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG MD2_CHAR RC4_INDEX::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-mips", "gcc:-DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG RC2_CHAR RC4_INDEX DES_INT DES_UNROLL DES_RISC2::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-mipsel", "gcc:-DL_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG RC2_CHAR RC4_INDEX DES_INT DES_UNROLL DES_RISC2::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-netbsd-i386", "gcc:-DL_ENDIAN -DTERMIOS -O3 -Wa,--noexecstack -g -m486 -Wall::(unknown):::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}::::::::::::dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-netbsd-m68k", "gcc:-DB_ENDIAN -DTERMIOS -O3 -Wa,--noexecstack -g -Wall::(unknown):::BN_LLONG MD2_CHAR RC4_INDEX DES_UNROLL::::::::::::dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-netbsd-sparc", "gcc:-DB_ENDIAN -DTERMIOS -O3 -Wa,--noexecstack -g -mv8 -Wall::(unknown):::BN_LLONG MD2_CHAR RC4_INDEX DES_UNROLL::::::::::::dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-openbsd-alpha","gcc:-DTERMIOS -O3 -Wa,--noexecstack -g::(unknown):::SIXTY_FOUR_BIT_LONG DES_INT DES_PTR DES_RISC2::::::::::::dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-openbsd-i386", "gcc:-DL_ENDIAN -DTERMIOS -O3 -Wa,--noexecstack -g -m486::(unknown):::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_out_asm}:dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-openbsd-mips","gcc:-O2 -Wa,--noexecstack -g -DL_ENDIAN::(unknown)::BN_LLONG MD2_CHAR RC4_INDEX RC4_CHAR DES_UNROLL DES_RISC2 DES_PTR BF_PTR:::::::::::::dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-powerpc","gcc:-DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG DES_UNROLL DES_RISC2 DES_PTR MD2_CHAR RC4_INDEX::linux_ppc32.o::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-ppc64","gcc:-m64 -DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL::linux_ppc64.o::::::::::dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-s390","gcc:-DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-sh3", "gcc:-DL_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-sh4", "gcc:-DL_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-sh3eb", "gcc:-DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-sh4eb", "gcc:-DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-m32r","gcc:-DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-sparc","gcc:-DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-sparc-v8","gcc:-DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -mcpu=v8 -g -Wall -DBN_DIV2W::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::sparcv8.o:des_enc-sparc.o fcrypt_b.o:::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-sparc-v9","gcc:-DB_ENDIAN -DTERMIO -O3 -mcpu=v9 -Wa,--noexecstack -Wa,-Av8plus -g -Wall -DULTRASPARC -DBN_DIV2W::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR::sparcv8plus.o:des_enc-sparc.o fcrypt_b.o:::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++"debian-sparc64","gcc:-m64 -DB_ENDIAN -DTERMIO -O3 -Wa,--noexecstack -g -Wall -DULTRASPARC -DBN_DIV2W::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL BF_PTR:::des_enc-sparc.o fcrypt_b.o:::::::::dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", ++ + #### + #### Variety of LINUX:-) + #### diff --git a/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/engines-path.patch b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/engines-path.patch new file mode 100644 index 0000000000..49400ff6e1 --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/engines-path.patch @@ -0,0 +1,47 @@ +Index: openssl-0.9.8m/Makefile.org +=================================================================== +--- openssl-0.9.8m.orig/Makefile.org 2010-01-27 16:06:36.000000000 +0000 ++++ openssl-0.9.8m/Makefile.org 2010-02-27 00:43:04.000000000 +0000 +@@ -620,7 +620,7 @@ + install_sw: + @$(PERL) $(TOP)/util/mkdir-p.pl $(INSTALL_PREFIX)$(INSTALLTOP)/bin \ + $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR) \ +- $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines \ ++ $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines \ + $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/pkgconfig \ + $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl \ + $(INSTALL_PREFIX)$(OPENSSLDIR)/misc \ +Index: openssl-0.9.8m/engines/Makefile +=================================================================== +--- openssl-0.9.8m.orig/engines/Makefile 2009-11-10 01:53:02.000000000 +0000 ++++ openssl-0.9.8m/engines/Makefile 2010-02-27 00:45:03.000000000 +0000 +@@ -101,13 +101,13 @@ + *DSO_DL*) sfx="sl";; \ + *) sfx="bad";; \ + esac; \ +- cp lib$$l.$$sfx $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/lib$$l.$$sfx.new; \ ++ cp lib$$l.$$sfx $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/lib$$l.$$sfx.new; \ + else \ + sfx="so"; \ + cp cyg$$l.dll $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/lib$$l.$$sfx.new; \ + fi; \ +- chmod 555 $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/lib$$l.$$sfx.new; \ +- mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/lib$$l.$$sfx.new $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/lib$$l.$$sfx ); \ ++ chmod 555 $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/lib$$l.$$sfx.new; \ ++ mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/ssl/engines/lib$$l.$$sfx.new $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/lib$$l.$$sfx ); \ + done; \ + fi + +Index: openssl-0.9.8m/Configure +=================================================================== +--- openssl-0.9.8m.orig/Configure 2010-02-27 00:40:42.000000000 +0000 ++++ openssl-0.9.8m/Configure 2010-02-27 00:46:47.000000000 +0000 +@@ -1738,7 +1738,7 @@ + # $foo is to become "$prefix/lib$multilib/engines"; + # as Makefile.org and engines/Makefile are adapted for + # $multilib suffix. +- my $foo = "$prefix/lib/engines"; ++ my $foo = "$prefix/lib/ssl/engines"; + $foo =~ s/\\/\\\\/g; + print OUT "#define ENGINESDIR \"$foo\"\n"; + } diff --git a/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/kfreebsd-pipe.patch b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/kfreebsd-pipe.patch new file mode 100644 index 0000000000..da97186886 --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/kfreebsd-pipe.patch @@ -0,0 +1,13 @@ +Index: openssl-0.9.8k/crypto/perlasm/x86_64-xlate.pl +=================================================================== +--- openssl-0.9.8k.orig/crypto/perlasm/x86_64-xlate.pl 2008-02-13 21:01:48.000000000 +0100 ++++ openssl-0.9.8k/crypto/perlasm/x86_64-xlate.pl 2009-07-19 11:37:23.000000000 +0200 +@@ -62,7 +62,7 @@ + my ($outdev,$outino,@junk)=stat($output); + + open STDOUT,">$output" || die "can't open $output: $!" +- if ($stddev!=$outdev || $stdino!=$outino); ++# if ($stddev!=$outdev || $stdino!=$outino); + } + + my $masmref=8 + 50727*2**-32; # 8.00.50727 shipped with VS2005 diff --git a/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/make-targets.patch b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/make-targets.patch new file mode 100644 index 0000000000..b1239728e7 --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/make-targets.patch @@ -0,0 +1,13 @@ +Index: openssl-0.9.8k/Makefile.org +=================================================================== +--- openssl-0.9.8k.orig/Makefile.org 2009-07-19 11:32:41.000000000 +0200 ++++ openssl-0.9.8k/Makefile.org 2009-07-19 11:37:31.000000000 +0200 +@@ -131,7 +131,7 @@ + + BASEADDR= + +-DIRS= crypto fips ssl engines apps test tools ++DIRS= crypto fips ssl engines apps tools + SHLIBDIRS= crypto ssl fips + + # dirs in crypto to build diff --git a/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/man-dir.patch b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/man-dir.patch new file mode 100644 index 0000000000..29563ecf59 --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/man-dir.patch @@ -0,0 +1,13 @@ +Index: openssl-0.9.8k/Makefile.org +=================================================================== +--- openssl-0.9.8k.orig/Makefile.org 2009-07-19 11:32:41.000000000 +0200 ++++ openssl-0.9.8k/Makefile.org 2009-07-19 11:37:29.000000000 +0200 +@@ -152,7 +152,7 @@ + + MAKEFILE= Makefile + +-MANDIR=$(OPENSSLDIR)/man ++MANDIR=/usr/share/man + MAN1=1 + MAN3=3 + MANSUFFIX= diff --git a/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/man-section.patch b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/man-section.patch new file mode 100644 index 0000000000..fe20ab0444 --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/man-section.patch @@ -0,0 +1,32 @@ +Index: openssl-0.9.8k/Makefile.org +=================================================================== +--- openssl-0.9.8k.orig/Makefile.org 2009-07-19 11:34:06.000000000 +0200 ++++ openssl-0.9.8k/Makefile.org 2009-07-19 11:37:21.000000000 +0200 +@@ -155,7 +155,8 @@ + MANDIR=/usr/share/man + MAN1=1 + MAN3=3 +-MANSUFFIX= ++MANSUFFIX=ssl ++MANSECTION=SSL + SHELL=/bin/sh + + TOP= . +@@ -694,7 +695,7 @@ + echo "installing man$$sec/$$fn.$${sec}$(MANSUFFIX)"; \ + (cd `$(PERL) util/dirname.pl $$i`; \ + sh -c "$$pod2man \ +- --section=$$sec --center=OpenSSL \ ++ --section=$${sec}$(MANSECTION) --center=OpenSSL \ + --release=$(VERSION) `basename $$i`") \ + > $(INSTALL_PREFIX)$(MANDIR)/man$$sec/$$fn.$${sec}$(MANSUFFIX); \ + $(PERL) util/extract-names.pl < $$i | \ +@@ -711,7 +712,7 @@ + echo "installing man$$sec/$$fn.$${sec}$(MANSUFFIX)"; \ + (cd `$(PERL) util/dirname.pl $$i`; \ + sh -c "$$pod2man \ +- --section=$$sec --center=OpenSSL \ ++ --section=$${sec}$(MANSECTION) --center=OpenSSL \ + --release=$(VERSION) `basename $$i`") \ + > $(INSTALL_PREFIX)$(MANDIR)/man$$sec/$$fn.$${sec}$(MANSUFFIX); \ + $(PERL) util/extract-names.pl < $$i | \ diff --git a/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/no-rpath.patch b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/no-rpath.patch new file mode 100644 index 0000000000..3ebc9accca --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/no-rpath.patch @@ -0,0 +1,13 @@ +Index: openssl-0.9.8k/Makefile.shared +=================================================================== +--- openssl-0.9.8k.orig/Makefile.shared 2008-09-17 17:56:40.000000000 +0200 ++++ openssl-0.9.8k/Makefile.shared 2009-07-19 11:37:25.000000000 +0200 +@@ -151,7 +151,7 @@ + NOALLSYMSFLAGS='-Wl,--no-whole-archive'; \ + SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -Wl,-Bsymbolic -Wl,-soname=$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX" + +-DO_GNU_APP=LDFLAGS="$(CFLAGS) -Wl,-rpath,$(LIBRPATH)" ++DO_GNU_APP=LDFLAGS="$(CFLAGS)" + + #This is rather special. It's a special target with which one can link + #applications without bothering with any features that have anything to diff --git a/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/no-symbolic.patch b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/no-symbolic.patch new file mode 100644 index 0000000000..2504fa791e --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/no-symbolic.patch @@ -0,0 +1,13 @@ +Index: openssl-0.9.8k/Makefile.shared +=================================================================== +--- openssl-0.9.8k.orig/Makefile.shared 2009-07-19 11:35:02.000000000 +0200 ++++ openssl-0.9.8k/Makefile.shared 2009-07-19 11:35:48.000000000 +0200 +@@ -149,7 +149,7 @@ + SHLIB_SUFFIX=; \ + ALLSYMSFLAGS='-Wl,--whole-archive'; \ + NOALLSYMSFLAGS='-Wl,--no-whole-archive'; \ +- SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -Wl,-Bsymbolic -Wl,-soname=$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX" ++ SHAREDFLAGS="$(CFLAGS) $(SHARED_LDFLAGS) -shared -Wl,-soname=$$SHLIB$$SHLIB_SOVER$$SHLIB_SUFFIX" + + DO_GNU_APP=LDFLAGS="$(CFLAGS)" + diff --git a/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/perl-path.diff b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/perl-path.diff new file mode 100644 index 0000000000..a72f938d82 --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/perl-path.diff @@ -0,0 +1,760 @@ +From: Kurt Roeckx +Subject: Change the perl path's to /usr/bin/perl + +This is the result of running: +perl util/perlpath.pl /usr/bin + +The upstream sources have this set to various different paths. + +--- openssl-0.9.8m.orig/Configure ++++ openssl-0.9.8m/Configure +@@ -1,4 +1,4 @@ +-: ++#!/usr/bin/perl + eval 'exec perl -S $0 ${1+"$@"}' + if $running_under_some_shell; + ## +--- openssl-0.9.8m.orig/VMS/VMSify-conf.pl ++++ openssl-0.9.8m/VMS/VMSify-conf.pl +@@ -1,4 +1,4 @@ +-#! /usr/bin/perl ++#!/usr/bin/perl + + use strict; + use warnings; +--- openssl-0.9.8m.orig/Netware/do_tests.pl ++++ openssl-0.9.8m/Netware/do_tests.pl +@@ -1,4 +1,4 @@ +-# perl script to run OpenSSL tests ++#!/usr/bin/perl + + + my $base_path = "\\openssl"; +--- openssl-0.9.8m.orig/apps/progs.pl ++++ openssl-0.9.8m/apps/progs.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + print "/* apps/progs.h */\n"; + print "/* automatically generated by progs.pl for openssl.c */\n\n"; +--- openssl-0.9.8m.orig/os2/backwardify.pl ++++ openssl-0.9.8m/os2/backwardify.pl +@@ -1,4 +1,4 @@ +-#!/usr/bin/perl -w ++#!/usr/bin/perl + use strict; + + # Use as $0 +--- openssl-0.9.8m.orig/times/091/mips-rel.pl ++++ openssl-0.9.8m/times/091/mips-rel.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + &doit(100,"Pentium 100 32",0.0195,0.1000,0.6406,4.6100); # pentium-100 + &doit(200,"PPro 200 32",0.0070,0.0340,0.2087,1.4700); # pentium-100 +--- openssl-0.9.8m.orig/fips/mkfipsscr.pl ++++ openssl-0.9.8m/fips/mkfipsscr.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl -w ++#!/usr/bin/perl + # Quick & dirty utility to generate a script for executing the + # FIPS 140-2 CMVP algorithm tests based on the pathnames of + # input algorithm test files actually present (the unqualified +--- openssl-0.9.8m.orig/fips/fipsalgtest.pl ++++ openssl-0.9.8m/fips/fipsalgtest.pl +@@ -1,4 +1,4 @@ +-#!/usr/bin/perl -w ++#!/usr/bin/perl + # Perl utility to run or verify FIPS 140-2 CMVP algorithm tests based on the + # pathnames of input algorithm test files actually present (the unqualified + # file names are consistent but the pathnames are not). +--- openssl-0.9.8m.orig/ms/uplink.pl ++++ openssl-0.9.8m/ms/uplink.pl +@@ -1,4 +1,4 @@ +-#!/usr/bin/env perl ++#!/usr/bin/perl + # + # For Microsoft CL this is implemented as inline assembler. So that + # even though this script can generate even Win32 code, we'll be +--- openssl-0.9.8m.orig/ms/segrenam.pl ++++ openssl-0.9.8m/ms/segrenam.pl +@@ -1,4 +1,4 @@ +-#!/usr/bin/env perl ++#!/usr/bin/perl + + my $quiet = 1; + +--- openssl-0.9.8m.orig/ms/cmp.pl ++++ openssl-0.9.8m/ms/cmp.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + ($#ARGV == 1) || die "usage: cmp.pl \n"; + +--- openssl-0.9.8m.orig/test/cms-test.pl ++++ openssl-0.9.8m/test/cms-test.pl +@@ -1,4 +1,4 @@ +-# test/cms-test.pl ++#!/usr/bin/perl + # Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL + # project. + # +--- openssl-0.9.8m.orig/test/cms-examples.pl ++++ openssl-0.9.8m/test/cms-examples.pl +@@ -1,4 +1,4 @@ +-# test/cms-examples.pl ++#!/usr/bin/perl + # Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL + # project. + # +--- openssl-0.9.8m.orig/demos/b64.pl ++++ openssl-0.9.8m/demos/b64.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + # + # Make PEM encoded data have lines of 64 bytes of data +--- openssl-0.9.8m.orig/demos/tunala/configure.in ++++ openssl-0.9.8m/demos/tunala/configure.in +@@ -1,4 +1,4 @@ +-dnl Process this file with autoconf to produce a configure script. ++#!/usr/bin/perl + AC_INIT(tunala.c) + AM_CONFIG_HEADER(config.h) + AM_INIT_AUTOMAKE(tunala, 0.0.1-dev) +--- openssl-0.9.8m.orig/crypto/x86cpuid.pl ++++ openssl-0.9.8m/crypto/x86cpuid.pl +@@ -1,4 +1,4 @@ +-#!/usr/bin/env perl ++#!/usr/bin/perl + + push(@INC,"perlasm"); + require "x86asm.pl"; +--- openssl-0.9.8m.orig/crypto/x86_64cpuid.pl ++++ openssl-0.9.8m/crypto/x86_64cpuid.pl +@@ -1,4 +1,4 @@ +-#!/usr/bin/env perl ++#!/usr/bin/perl + + $output=shift; + $masm=1 if ($output =~ /\.asm/); +--- openssl-0.9.8m.orig/crypto/md5/asm/md5-586.pl ++++ openssl-0.9.8m/crypto/md5/asm/md5-586.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + # Normal is the + # md5_block_x86(MD5_CTX *c, ULONG *X); +--- openssl-0.9.8m.orig/crypto/md5/asm/md5-x86_64.pl ++++ openssl-0.9.8m/crypto/md5/asm/md5-x86_64.pl +@@ -1,4 +1,4 @@ +-#!/usr/bin/perl -w ++#!/usr/bin/perl + # + # MD5 optimized for AMD64. + # +--- openssl-0.9.8m.orig/crypto/sha/asm/sha1-ia64.pl ++++ openssl-0.9.8m/crypto/sha/asm/sha1-ia64.pl +@@ -1,4 +1,4 @@ +-#!/usr/bin/env perl ++#!/usr/bin/perl + # + # ==================================================================== + # Written by Andy Polyakov for the OpenSSL +--- openssl-0.9.8m.orig/crypto/sha/asm/sha1-x86_64.pl ++++ openssl-0.9.8m/crypto/sha/asm/sha1-x86_64.pl +@@ -1,4 +1,4 @@ +-#!/usr/bin/env perl ++#!/usr/bin/perl + # + # ==================================================================== + # Written by Andy Polyakov for the OpenSSL +--- openssl-0.9.8m.orig/crypto/sha/asm/sha512-sse2.pl ++++ openssl-0.9.8m/crypto/sha/asm/sha512-sse2.pl +@@ -1,4 +1,4 @@ +-#!/usr/bin/env perl ++#!/usr/bin/perl + # + # ==================================================================== + # Written by Andy Polyakov for the OpenSSL +--- openssl-0.9.8m.orig/crypto/sha/asm/sha512-ia64.pl ++++ openssl-0.9.8m/crypto/sha/asm/sha512-ia64.pl +@@ -1,4 +1,4 @@ +-#!/usr/bin/env perl ++#!/usr/bin/perl + # + # ==================================================================== + # Written by Andy Polyakov for the OpenSSL +--- openssl-0.9.8m.orig/crypto/sha/asm/sha512-x86_64.pl ++++ openssl-0.9.8m/crypto/sha/asm/sha512-x86_64.pl +@@ -1,4 +1,4 @@ +-#!/usr/bin/env perl ++#!/usr/bin/perl + # + # ==================================================================== + # Written by Andy Polyakov for the OpenSSL +--- openssl-0.9.8m.orig/crypto/sha/asm/sha1-586.pl ++++ openssl-0.9.8m/crypto/sha/asm/sha1-586.pl +@@ -1,4 +1,4 @@ +-#!/usr/bin/env perl ++#!/usr/bin/perl + + # ==================================================================== + # [Re]written by Andy Polyakov for the OpenSSL +--- openssl-0.9.8m.orig/crypto/des/asm/des-586.pl ++++ openssl-0.9.8m/crypto/des/asm/des-586.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + # + # The inner loop instruction sequence and the IP/FP modifications are from + # Svend Olaf Mikkelsen +--- openssl-0.9.8m.orig/crypto/des/asm/desboth.pl ++++ openssl-0.9.8m/crypto/des/asm/desboth.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + $L="edi"; + $R="esi"; +--- openssl-0.9.8m.orig/crypto/des/asm/des686.pl ++++ openssl-0.9.8m/crypto/des/asm/des686.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + $prog="des686.pl"; + +--- openssl-0.9.8m.orig/crypto/des/asm/crypt586.pl ++++ openssl-0.9.8m/crypto/des/asm/crypt586.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + # + # The inner loop instruction sequence and the IP/FP modifications are from + # Svend Olaf Mikkelsen +--- openssl-0.9.8m.orig/crypto/lhash/num.pl ++++ openssl-0.9.8m/crypto/lhash/num.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + #node 10 -> 4 + +--- openssl-0.9.8m.orig/crypto/ripemd/asm/rmd-586.pl ++++ openssl-0.9.8m/crypto/ripemd/asm/rmd-586.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + # Normal is the + # ripemd160_block_asm_data_order(RIPEMD160_CTX *c, ULONG *X,int blocks); +--- openssl-0.9.8m.orig/crypto/rc4/asm/rc4-586.pl ++++ openssl-0.9.8m/crypto/rc4/asm/rc4-586.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + # At some point it became apparent that the original SSLeay RC4 + # assembler implementation performs suboptimaly on latest IA-32 +--- openssl-0.9.8m.orig/crypto/rc4/asm/rc4-x86_64.pl ++++ openssl-0.9.8m/crypto/rc4/asm/rc4-x86_64.pl +@@ -1,4 +1,4 @@ +-#!/usr/bin/env perl ++#!/usr/bin/perl + # + # ==================================================================== + # Written by Andy Polyakov for the OpenSSL +--- openssl-0.9.8m.orig/crypto/cast/asm/cast-586.pl ++++ openssl-0.9.8m/crypto/cast/asm/cast-586.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + # define for pentium pro friendly version + $ppro=1; +--- openssl-0.9.8m.orig/crypto/rc5/asm/rc5-586.pl ++++ openssl-0.9.8m/crypto/rc5/asm/rc5-586.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + push(@INC,"perlasm","../../perlasm"); + require "x86asm.pl"; +--- openssl-0.9.8m.orig/crypto/perlasm/x86ms.pl ++++ openssl-0.9.8m/crypto/perlasm/x86ms.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + package x86ms; + +--- openssl-0.9.8m.orig/crypto/perlasm/x86asm.pl ++++ openssl-0.9.8m/crypto/perlasm/x86asm.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + # require 'x86asm.pl'; + # &asm_init("cpp","des-586.pl"); +--- openssl-0.9.8m.orig/crypto/perlasm/x86nasm.pl ++++ openssl-0.9.8m/crypto/perlasm/x86nasm.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + package x86nasm; + +--- openssl-0.9.8m.orig/crypto/perlasm/x86unix.pl ++++ openssl-0.9.8m/crypto/perlasm/x86unix.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + package x86unix; # GAS actually... + +--- openssl-0.9.8m.orig/crypto/perlasm/cbc.pl ++++ openssl-0.9.8m/crypto/perlasm/cbc.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + # void des_ncbc_encrypt(input, output, length, schedule, ivec, enc) + # des_cblock (*input); +--- openssl-0.9.8m.orig/crypto/perlasm/x86_64-xlate.pl ++++ openssl-0.9.8m/crypto/perlasm/x86_64-xlate.pl +@@ -1,4 +1,4 @@ +-#!/usr/bin/env perl ++#!/usr/bin/perl + + # Ascetic x86_64 AT&T to MASM assembler translator by . + # +--- openssl-0.9.8m.orig/crypto/bf/asm/bf-686.pl ++++ openssl-0.9.8m/crypto/bf/asm/bf-686.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + push(@INC,"perlasm","../../perlasm"); + require "x86asm.pl"; +--- openssl-0.9.8m.orig/crypto/bf/asm/bf-586.pl ++++ openssl-0.9.8m/crypto/bf/asm/bf-586.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + push(@INC,"perlasm","../../perlasm"); + require "x86asm.pl"; +--- openssl-0.9.8m.orig/crypto/objects/objects.pl ++++ openssl-0.9.8m/crypto/objects/objects.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + open (NUMIN,"$ARGV[1]") || die "Can't open number file $ARGV[1]"; + $max_nid=0; +--- openssl-0.9.8m.orig/crypto/objects/obj_dat.pl ++++ openssl-0.9.8m/crypto/objects/obj_dat.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + # fixes bug in floating point emulation on sparc64 when + # this script produces off-by-one output on sparc64 +--- openssl-0.9.8m.orig/crypto/conf/keysets.pl ++++ openssl-0.9.8m/crypto/conf/keysets.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + $NUMBER=0x01; + $UPPER=0x02; +--- openssl-0.9.8m.orig/crypto/bn/bn_prime.pl ++++ openssl-0.9.8m/crypto/bn/bn_prime.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + # bn_prime.pl + + $num=2048; +--- openssl-0.9.8m.orig/crypto/bn/asm/x86.pl ++++ openssl-0.9.8m/crypto/bn/asm/x86.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + push(@INC,"perlasm","../../perlasm"); + require "x86asm.pl"; +--- openssl-0.9.8m.orig/crypto/bn/asm/ppc.pl ++++ openssl-0.9.8m/crypto/bn/asm/ppc.pl +@@ -1,4 +1,4 @@ +-#!/usr/bin/env perl ++#!/usr/bin/perl + # + # Implemented as a Perl wrapper as we want to support several different + # architectures with single file. We pick up the target based on the +--- openssl-0.9.8m.orig/crypto/bn/asm/co-586.pl ++++ openssl-0.9.8m/crypto/bn/asm/co-586.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + push(@INC,"perlasm","../../perlasm"); + require "x86asm.pl"; +--- openssl-0.9.8m.orig/crypto/bn/asm/bn-586.pl ++++ openssl-0.9.8m/crypto/bn/asm/bn-586.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + push(@INC,"perlasm","../../perlasm"); + require "x86asm.pl"; +--- openssl-0.9.8m.orig/crypto/bn/asm/mo-586.pl ++++ openssl-0.9.8m/crypto/bn/asm/mo-586.pl +@@ -1,4 +1,4 @@ +-#!/usr/bin/env perl ++#!/usr/bin/perl + + # This is crypto/bn/asm/x86-mont.pl (with asciz from crypto/perlasm/x86asm.pl) + # from OpenSSL 0.9.9-dev +--- openssl-0.9.8m.orig/crypto/bn/asm/x86_64-mont.pl ++++ openssl-0.9.8m/crypto/bn/asm/x86_64-mont.pl +@@ -1,4 +1,4 @@ +-#!/usr/bin/env perl ++#!/usr/bin/perl + + # ==================================================================== + # Written by Andy Polyakov for the OpenSSL +--- openssl-0.9.8m.orig/crypto/bn/asm/x86/comba.pl ++++ openssl-0.9.8m/crypto/bn/asm/x86/comba.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + # x86 assember + + sub mul_add_c +--- openssl-0.9.8m.orig/crypto/bn/asm/x86/add.pl ++++ openssl-0.9.8m/crypto/bn/asm/x86/add.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + # x86 assember + + sub bn_add_words +--- openssl-0.9.8m.orig/crypto/bn/asm/x86/mul.pl ++++ openssl-0.9.8m/crypto/bn/asm/x86/mul.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + # x86 assember + + sub bn_mul_words +--- openssl-0.9.8m.orig/crypto/bn/asm/x86/mul_add.pl ++++ openssl-0.9.8m/crypto/bn/asm/x86/mul_add.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + # x86 assember + + sub bn_mul_add_words +--- openssl-0.9.8m.orig/crypto/bn/asm/x86/sqr.pl ++++ openssl-0.9.8m/crypto/bn/asm/x86/sqr.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + # x86 assember + + sub bn_sqr_words +--- openssl-0.9.8m.orig/crypto/bn/asm/x86/sub.pl ++++ openssl-0.9.8m/crypto/bn/asm/x86/sub.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + # x86 assember + + sub bn_sub_words +--- openssl-0.9.8m.orig/crypto/bn/asm/x86/div.pl ++++ openssl-0.9.8m/crypto/bn/asm/x86/div.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + # x86 assember + + sub bn_div_words +--- openssl-0.9.8m.orig/crypto/aes/asm/aes-586.pl ++++ openssl-0.9.8m/crypto/aes/asm/aes-586.pl +@@ -1,4 +1,4 @@ +-#!/usr/bin/env perl ++#!/usr/bin/perl + # + # ==================================================================== + # Written by Andy Polyakov for the OpenSSL +--- openssl-0.9.8m.orig/crypto/aes/asm/aes-x86_64.pl ++++ openssl-0.9.8m/crypto/aes/asm/aes-x86_64.pl +@@ -1,4 +1,4 @@ +-#!/usr/bin/env perl ++#!/usr/bin/perl + # + # ==================================================================== + # Written by Andy Polyakov for the OpenSSL +--- openssl-0.9.8m.orig/crypto/asn1/charmap.pl ++++ openssl-0.9.8m/crypto/asn1/charmap.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl -w ++#!/usr/bin/perl + + use strict; + +--- openssl-0.9.8m.orig/util/mksdef.pl ++++ openssl-0.9.8m/util/mksdef.pl +@@ -1,4 +1,4 @@ +- ++#!/usr/bin/perl + # Perl script to split libeay32.def into two distinct DEF files for use in + # fipdso mode. It works out symbols in each case by running "link" command and + # parsing the output to find the list of missing symbols then splitting +--- openssl-0.9.8m.orig/util/dirname.pl ++++ openssl-0.9.8m/util/dirname.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + if ($#ARGV < 0) { + die "dirname.pl: too few arguments\n"; +--- openssl-0.9.8m.orig/util/tab_num.pl ++++ openssl-0.9.8m/util/tab_num.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + $num=1; + $width=40; +--- openssl-0.9.8m.orig/util/sp-diff.pl ++++ openssl-0.9.8m/util/sp-diff.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + # + # This file takes as input, the files that have been output from + # ssleay speed. +--- openssl-0.9.8m.orig/util/mkerr.pl ++++ openssl-0.9.8m/util/mkerr.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl -w ++#!/usr/bin/perl + + my $config = "crypto/err/openssl.ec"; + my $debug = 0; +--- openssl-0.9.8m.orig/util/clean-depend.pl ++++ openssl-0.9.8m/util/clean-depend.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl -w ++#!/usr/bin/perl + # Clean the dependency list in a makefile of standard includes... + # Written by Ben Laurie 19 Jan 1999 + +--- openssl-0.9.8m.orig/util/add_cr.pl ++++ openssl-0.9.8m/util/add_cr.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + # + # This adds a copyright message to a souce code file. + # It also gets the file name correct. +--- openssl-0.9.8m.orig/util/pod2man.pl ++++ openssl-0.9.8m/util/pod2man.pl +@@ -1,4 +1,4 @@ +-: #!/usr/bin/perl-5.005 ++#!/usr/bin/perl + eval 'exec /usr/bin/perl -S $0 ${1+"$@"}' + if $running_under_some_shell; + +--- openssl-0.9.8m.orig/util/mkstack.pl ++++ openssl-0.9.8m/util/mkstack.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl -w ++#!/usr/bin/perl + + # This is a utility that searches out "DECLARE_STACK_OF()" + # declarations in .h and .c files, and updates/creates/replaces +--- openssl-0.9.8m.orig/util/selftest.pl ++++ openssl-0.9.8m/util/selftest.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl -w ++#!/usr/bin/perl + # + # Run the test suite and generate a report + # +--- openssl-0.9.8m.orig/util/ck_errf.pl ++++ openssl-0.9.8m/util/ck_errf.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + # + # This is just a quick script to scan for cases where the 'error' + # function name in a XXXerr() macro is wrong. +--- openssl-0.9.8m.orig/util/mklink.pl ++++ openssl-0.9.8m/util/mklink.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + # mklink.pl + +--- openssl-0.9.8m.orig/util/src-dep.pl ++++ openssl-0.9.8m/util/src-dep.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + # we make up an array of + # $file{function_name}=filename; +--- openssl-0.9.8m.orig/util/deleof.pl ++++ openssl-0.9.8m/util/deleof.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + while (<>) + { +--- openssl-0.9.8m.orig/util/arx.pl ++++ openssl-0.9.8m/util/arx.pl +@@ -1,4 +1,4 @@ +-#!/bin/perl ++#!/usr/bin/perl + + # Simple perl script to wrap round "ar" program and exclude any + # object files in the environment variable EXCL_OBJ +--- openssl-0.9.8m.orig/util/copy.pl ++++ openssl-0.9.8m/util/copy.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + use Fcntl; + +--- openssl-0.9.8m.orig/util/mkdir-p.pl ++++ openssl-0.9.8m/util/mkdir-p.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + # mkdir-p.pl + +--- openssl-0.9.8m.orig/util/mkdef.pl ++++ openssl-0.9.8m/util/mkdef.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl -w ++#!/usr/bin/perl + # + # generate a .def file + # +--- openssl-0.9.8m.orig/util/files.pl ++++ openssl-0.9.8m/util/files.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + # + # used to generate the file MINFO for use by util/mk1mf.pl + # It is basically a list of all variables from the passed makefile +--- openssl-0.9.8m.orig/util/mkfiles.pl ++++ openssl-0.9.8m/util/mkfiles.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + # + # This is a hacked version of files.pl for systems that can't do a 'make files'. + # Do a perl util/mkminfo.pl >MINFO to build MINFO +--- openssl-0.9.8m.orig/util/perlpath.pl ++++ openssl-0.9.8m/util/perlpath.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + # + # modify the '#!/usr/local/bin/perl' + # line in all scripts that rely on perl. +--- openssl-0.9.8m.orig/util/mk1mf.pl ++++ openssl-0.9.8m/util/mk1mf.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + # A bit of an evil hack but it post processes the file ../MINFO which + # is generated by `make files` in the top directory. + # This script outputs one mega makefile that has no shell stuff or any +--- openssl-0.9.8m.orig/util/err-ins.pl ++++ openssl-0.9.8m/util/err-ins.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + # + # tack error codes onto the end of a file + # +--- openssl-0.9.8m.orig/util/pl/Mingw32.pl ++++ openssl-0.9.8m/util/pl/Mingw32.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + # + # Mingw32.pl -- Mingw + # +--- openssl-0.9.8m.orig/util/pl/unix.pl ++++ openssl-0.9.8m/util/pl/unix.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + # + # unix.pl - the standard unix makefile stuff. + # +--- openssl-0.9.8m.orig/util/pl/netware.pl ++++ openssl-0.9.8m/util/pl/netware.pl +@@ -1,4 +1,4 @@ +-# Metrowerks Codewarrior or gcc / nlmconv for NetWare ++#!/usr/bin/perl + # + + $version_header = "crypto/opensslv.h"; +--- openssl-0.9.8m.orig/util/pl/VC-32.pl ++++ openssl-0.9.8m/util/pl/VC-32.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + # VC-32.pl - unified script for Microsoft Visual C++, covering Win32, + # Win64 and WinCE [follow $FLAVOR variable to trace the differences]. + # +--- openssl-0.9.8m.orig/util/pl/OS2-EMX.pl ++++ openssl-0.9.8m/util/pl/OS2-EMX.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + # + # OS2-EMX.pl - for EMX GCC on OS/2 + # +--- openssl-0.9.8m.orig/util/pl/ultrix.pl ++++ openssl-0.9.8m/util/pl/ultrix.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + # + # linux.pl - the standard unix makefile stuff. + # +--- openssl-0.9.8m.orig/util/pl/linux.pl ++++ openssl-0.9.8m/util/pl/linux.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + # + # linux.pl - the standard unix makefile stuff. + # +--- openssl-0.9.8m.orig/util/pl/BC-32.pl ++++ openssl-0.9.8m/util/pl/BC-32.pl +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + # Borland C++ builder 3 and 4 -- Janez Jere + # + diff --git a/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/pic.patch b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/pic.patch new file mode 100644 index 0000000000..b534afa66c --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/pic.patch @@ -0,0 +1,301 @@ +Index: openssl-0.9.8o/crypto/Makefile +=================================================================== +--- openssl-0.9.8o.orig/crypto/Makefile 2008-09-17 17:10:55.000000000 +0000 ++++ openssl-0.9.8o/crypto/Makefile 2010-06-06 13:09:28.000000000 +0000 +@@ -57,7 +57,7 @@ + echo " #define DATE \"`LC_ALL=C LC_TIME=C date`\""; \ + echo '#endif' ) >buildinf.h + +-x86cpuid-elf.s: x86cpuid.pl perlasm/x86asm.pl ++x86cpuid-elf.S: x86cpuid.pl perlasm/x86asm.pl + $(PERL) x86cpuid.pl elf $(CFLAGS) $(PROCESSOR) > $@ + x86cpuid-cof.s: x86cpuid.pl perlasm/x86asm.pl + $(PERL) x86cpuid.pl coff $(CFLAGS) $(PROCESSOR) > $@ +@@ -70,7 +70,7 @@ + uplink-cof.s: ../ms/uplink.pl + $(PERL) ../ms/uplink.pl coff > $@ + +-x86_64cpuid.s: x86_64cpuid.pl ++x86_64cpuid.S: x86_64cpuid.pl + $(PERL) x86_64cpuid.pl $@ + ia64cpuid.s: ia64cpuid.S + $(CC) $(CFLAGS) -E ia64cpuid.S > $@ +Index: openssl-0.9.8o/crypto/x86_64cpuid.pl +=================================================================== +--- openssl-0.9.8o.orig/crypto/x86_64cpuid.pl 2007-11-11 16:25:00.000000000 +0000 ++++ openssl-0.9.8o/crypto/x86_64cpuid.pl 2010-06-06 13:09:28.000000000 +0000 +@@ -95,7 +95,11 @@ + .size OPENSSL_wipe_cpu,.-OPENSSL_wipe_cpu + + .section .init ++#ifdef OPENSSL_PIC ++ call OPENSSL_cpuid_setup\@PLT ++#else + call OPENSSL_cpuid_setup ++#endif + + ___ + +Index: openssl-0.9.8o/crypto/md5/Makefile +=================================================================== +--- openssl-0.9.8o.orig/crypto/md5/Makefile 2008-09-17 17:11:02.000000000 +0000 ++++ openssl-0.9.8o/crypto/md5/Makefile 2010-06-06 13:09:28.000000000 +0000 +@@ -52,7 +52,8 @@ + mx86-out.s: asm/md5-586.pl ../perlasm/x86asm.pl + (cd asm; $(PERL) md5-586.pl a.out $(CFLAGS) > ../$@) + +-md5-x86_64.s: asm/md5-x86_64.pl; $(PERL) asm/md5-x86_64.pl $@ ++md5-x86_64.s: asm/md5-x86_64.pl ++ $(PERL) asm/md5-x86_64.pl $@ + + files: + $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO +Index: openssl-0.9.8o/crypto/des/asm/desboth.pl +=================================================================== +--- openssl-0.9.8o.orig/crypto/des/asm/desboth.pl 2001-10-24 21:20:56.000000000 +0000 ++++ openssl-0.9.8o/crypto/des/asm/desboth.pl 2010-06-06 13:09:28.000000000 +0000 +@@ -16,6 +16,11 @@ + + &push("edi"); + ++ &call (&label("pic_point0")); ++ &set_label("pic_point0"); ++ &blindpop("ebp"); ++ &add ("ebp", "\$_GLOBAL_OFFSET_TABLE_+[.-" . &label("pic_point0") . "]"); ++ + &comment(""); + &comment("Load the data words"); + &mov($L,&DWP(0,"ebx","",0)); +@@ -47,15 +52,21 @@ + &mov(&swtmp(2), (DWC(($enc)?"1":"0"))); + &mov(&swtmp(1), "eax"); + &mov(&swtmp(0), "ebx"); +- &call("DES_encrypt2"); ++ &exch("ebx", "ebp"); ++ &call("DES_encrypt2\@PLT"); ++ &exch("ebx", "ebp"); + &mov(&swtmp(2), (DWC(($enc)?"0":"1"))); + &mov(&swtmp(1), "edi"); + &mov(&swtmp(0), "ebx"); +- &call("DES_encrypt2"); ++ &exch("ebx", "ebp"); ++ &call("DES_encrypt2\@PLT"); ++ &exch("ebx", "ebp"); + &mov(&swtmp(2), (DWC(($enc)?"1":"0"))); + &mov(&swtmp(1), "esi"); + &mov(&swtmp(0), "ebx"); +- &call("DES_encrypt2"); ++ &exch("ebx", "ebp"); ++ &call("DES_encrypt2\@PLT"); ++ &exch("ebx", "ebp"); + + &stack_pop(3); + &mov($L,&DWP(0,"ebx","",0)); +Index: openssl-0.9.8o/crypto/rc4/Makefile +=================================================================== +--- openssl-0.9.8o.orig/crypto/rc4/Makefile 2008-11-19 16:03:50.000000000 +0000 ++++ openssl-0.9.8o/crypto/rc4/Makefile 2010-06-06 13:09:28.000000000 +0000 +@@ -51,7 +51,7 @@ + rx86-out.s: asm/rc4-586.pl ../perlasm/x86asm.pl + (cd asm; $(PERL) rc4-586.pl a.out $(CFLAGS) > ../$@) + +-rc4-x86_64.s: asm/rc4-x86_64.pl; $(PERL) asm/rc4-x86_64.pl $@ ++rc4-x86_64.S: asm/rc4-x86_64.pl; $(PERL) asm/rc4-x86_64.pl $@ + + rc4-ia64.s: asm/rc4-ia64.S + @case `awk '/^#define RC4_INT/{print$$NF}' $(TOP)/include/openssl/opensslconf.h` in \ +Index: openssl-0.9.8o/crypto/rc4/asm/rc4-x86_64.pl +=================================================================== +--- openssl-0.9.8o.orig/crypto/rc4/asm/rc4-x86_64.pl 2008-09-16 10:47:27.000000000 +0000 ++++ openssl-0.9.8o/crypto/rc4/asm/rc4-x86_64.pl 2010-06-06 13:09:28.000000000 +0000 +@@ -270,7 +270,11 @@ + xor %r10,%r10 + xor %r11,%r11 + ++#ifdef OPENSSL_PIC ++ mov OPENSSL_ia32cap_P\@GOTPCREL(%rip),$idx#d ++#else + mov OPENSSL_ia32cap_P(%rip),$idx#d ++#endif + bt \$20,$idx#d + jnc .Lw1stloop + bt \$30,$idx#d +@@ -338,7 +342,11 @@ + RC4_options: + .picmeup %rax + lea .Lopts-.(%rax),%rax ++#ifdef OPENSSL_PIC ++ mov OPENSSL_ia32cap_P\@GOTPCREL(%rip),%edx ++#else + mov OPENSSL_ia32cap_P(%rip),%edx ++#endif + bt \$20,%edx + jnc .Ldone + add \$12,%rax +Index: openssl-0.9.8o/crypto/perlasm/x86unix.pl +=================================================================== +--- openssl-0.9.8o.orig/crypto/perlasm/x86unix.pl 2008-05-01 23:11:32.000000000 +0000 ++++ openssl-0.9.8o/crypto/perlasm/x86unix.pl 2010-06-06 13:09:28.000000000 +0000 +@@ -400,6 +400,29 @@ + $stack=4; + } + ++sub main'function_begin_B_static ++ { ++ local($func,$extra)=@_; ++ ++ &main'external_label($func); ++ $func=$under.$func; ++ ++ local($tmp)=<<"EOF"; ++.text ++EOF ++ push(@out,$tmp); ++ if ($main'cpp) ++ { push(@out,"TYPE($func,\@function)\n"); } ++ elsif ($main'coff) ++ { $tmp=push(@out,".def\t$func;\t.scl\t2;\t.type\t32;\t.endef\n"); } ++ elsif ($main'aout and !$main'pic) ++ { } ++ else { push(@out,".type $func,\@function\n"); } ++ push(@out,".align\t$align\n"); ++ push(@out,"$func:\n"); ++ $stack=4; ++ } ++ + sub main'function_end + { + local($func)=@_; +@@ -694,7 +717,17 @@ + { + $tmp=<<___; + .section .init ++#ifdef OPENSSL_PIC ++ pushl %ebx ++ call .pic_point0 ++.pic_point0: ++ popl %ebx ++ addl \$_GLOBAL_OFFSET_TABLE_+[.-.pic_point0],%ebx ++ call $under$f\@PLT ++ popl %ebx ++#else + call $under$f ++#endif + jmp .Linitalign + .align $align + .Linitalign: +Index: openssl-0.9.8o/crypto/perlasm/cbc.pl +=================================================================== +--- openssl-0.9.8o.orig/crypto/perlasm/cbc.pl 2005-05-09 21:48:00.000000000 +0000 ++++ openssl-0.9.8o/crypto/perlasm/cbc.pl 2010-06-06 13:09:28.000000000 +0000 +@@ -122,7 +122,11 @@ + &mov(&DWP($data_off,"esp","",0), "eax"); # put in array for call + &mov(&DWP($data_off+4,"esp","",0), "ebx"); # + +- &call($enc_func); ++ &call (&label("pic_point0")); ++ &set_label("pic_point0"); ++ &blindpop("ebx"); ++ &add ("ebx", "\$_GLOBAL_OFFSET_TABLE_+[.-" . &label("pic_point0") . "]"); ++ &call("$enc_func\@PLT"); + + &mov("eax", &DWP($data_off,"esp","",0)); + &mov("ebx", &DWP($data_off+4,"esp","",0)); +@@ -187,7 +191,11 @@ + &mov(&DWP($data_off,"esp","",0), "eax"); # put in array for call + &mov(&DWP($data_off+4,"esp","",0), "ebx"); # + +- &call($enc_func); ++ &call (&label("pic_point1")); ++ &set_label("pic_point1"); ++ &blindpop("ebx"); ++ &add ("ebx", "\$_GLOBAL_OFFSET_TABLE_+[.-" . &label("pic_point1") . "]"); ++ &call("$enc_func\@PLT"); + + &mov("eax", &DWP($data_off,"esp","",0)); + &mov("ebx", &DWP($data_off+4,"esp","",0)); +@@ -220,7 +228,11 @@ + &mov(&DWP($data_off,"esp","",0), "eax"); # put back + &mov(&DWP($data_off+4,"esp","",0), "ebx"); # + +- &call($dec_func); ++ &call (&label("pic_point2")); ++ &set_label("pic_point2"); ++ &blindpop("ebx"); ++ &add ("ebx", "\$_GLOBAL_OFFSET_TABLE_+[.-" . &label("pic_point2") . "]"); ++ &call("$dec_func\@PLT"); + + &mov("eax", &DWP($data_off,"esp","",0)); # get return + &mov("ebx", &DWP($data_off+4,"esp","",0)); # +@@ -263,7 +275,11 @@ + &mov(&DWP($data_off,"esp","",0), "eax"); # put back + &mov(&DWP($data_off+4,"esp","",0), "ebx"); # + +- &call($dec_func); ++ &call (&label("pic_point3")); ++ &set_label("pic_point3"); ++ &blindpop("ebx"); ++ &add ("ebx", "\$_GLOBAL_OFFSET_TABLE_+[.-" . &label("pic_point3") . "]"); ++ &call("$dec_func\@PLT"); + + &mov("eax", &DWP($data_off,"esp","",0)); # get return + &mov("ebx", &DWP($data_off+4,"esp","",0)); # +Index: openssl-0.9.8o/crypto/perlasm/x86_64-xlate.pl +=================================================================== +--- openssl-0.9.8o.orig/crypto/perlasm/x86_64-xlate.pl 2010-06-06 13:09:00.000000000 +0000 ++++ openssl-0.9.8o/crypto/perlasm/x86_64-xlate.pl 2010-06-06 13:09:28.000000000 +0000 +@@ -435,7 +435,7 @@ + + chomp($line); + +- $line =~ s|[#!].*$||; # get rid of asm-style comments... ++# $line =~ s|[#!].*$||; # get rid of asm-style comments... + $line =~ s|/\*.*\*/||; # ... and C-style comments... + $line =~ s|^\s+||; # ... and skip white spaces in beginning + +Index: openssl-0.9.8o/crypto/aes/asm/aes-586.pl +=================================================================== +--- openssl-0.9.8o.orig/crypto/aes/asm/aes-586.pl 2008-12-17 14:14:51.000000000 +0000 ++++ openssl-0.9.8o/crypto/aes/asm/aes-586.pl 2010-06-06 13:09:28.000000000 +0000 +@@ -250,7 +250,7 @@ + sub _data_word() { my $i; while(defined($i=shift)) { &data_word($i,$i); } } + + &public_label("AES_Te"); +-&function_begin_B("_x86_AES_encrypt"); ++&function_begin_B_static("_x86_AES_encrypt"); + if ($vertical_spin) { + # I need high parts of volatile registers to be accessible... + &exch ($s1="edi",$key="ebx"); +@@ -539,7 +539,7 @@ + } + + &public_label("AES_Td"); +-&function_begin_B("_x86_AES_decrypt"); ++&function_begin_B_static("_x86_AES_decrypt"); + # note that caller is expected to allocate stack frame for me! + &mov (&DWP(12,"esp"),$key); # save key + +@@ -1461,15 +1461,22 @@ + &public_label("AES_Td"); + &public_label("AES_Te"); + &function_begin_B("AES_set_decrypt_key"); ++ &push ("ebx"); + &mov ("eax",&wparam(0)); + &mov ("ecx",&wparam(1)); + &mov ("edx",&wparam(2)); + &sub ("esp",12); ++ ++ &call (&label("pic_point0")); ++ &set_label("pic_point0"); ++ &blindpop("ebx"); ++ &add ("ebx", "\$_GLOBAL_OFFSET_TABLE_+[.-" . &label("pic_point0") . "]"); + &mov (&DWP(0,"esp"),"eax"); + &mov (&DWP(4,"esp"),"ecx"); + &mov (&DWP(8,"esp"),"edx"); +- &call ("AES_set_encrypt_key"); ++ &call ("AES_set_encrypt_key\@PLT"); + &add ("esp",12); ++ &pop ("ebx"); + &cmp ("eax",0); + &je (&label("proceed")); + &ret (); diff --git a/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/pkg-config.patch b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/pkg-config.patch new file mode 100644 index 0000000000..38923b08bf --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/pkg-config.patch @@ -0,0 +1,34 @@ +Index: openssl-0.9.8k/Makefile.org +=================================================================== +--- openssl-0.9.8k.orig/Makefile.org 2009-07-19 11:34:56.000000000 +0200 ++++ openssl-0.9.8k/Makefile.org 2009-07-19 11:36:02.000000000 +0200 +@@ -444,7 +444,8 @@ + echo 'Description: OpenSSL cryptography library'; \ + echo 'Version: '$(VERSION); \ + echo 'Requires: '; \ +- echo 'Libs: -L$${libdir} -lcrypto $(EX_LIBS)'; \ ++ echo 'Libs: -L$${libdir} -lcrypto'; \ ++ echo 'Libs.private: $(EX_LIBS)'; \ + echo 'Cflags: -I$${includedir} $(KRB5_INCLUDES)' ) > libcrypto.pc + + libssl.pc: Makefile +@@ -457,7 +458,8 @@ + echo 'Description: Secure Sockets Layer and cryptography libraries'; \ + echo 'Version: '$(VERSION); \ + echo 'Requires: '; \ +- echo 'Libs: -L$${libdir} -lssl -lcrypto $(EX_LIBS)'; \ ++ echo 'Libs: -L$${libdir} -lssl'; \ ++ echo 'Libs.private: -lcrypto $(EX_LIBS)'; \ + echo 'Cflags: -I$${includedir} $(KRB5_INCLUDES)' ) > libssl.pc + + openssl.pc: Makefile +@@ -470,7 +472,8 @@ + echo 'Description: Secure Sockets Layer and cryptography libraries and tools'; \ + echo 'Version: '$(VERSION); \ + echo 'Requires: '; \ +- echo 'Libs: -L$${libdir} -lssl -lcrypto $(EX_LIBS)'; \ ++ echo 'Libs: -L$${libdir} -lssl -lcrypto'; \ ++ echo 'Libs.private: $(EX_LIBS)'; \ + echo 'Cflags: -I$${includedir} $(KRB5_INCLUDES)' ) > openssl.pc + + Makefile: Makefile.org Configure config diff --git a/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/rc4-amd64.patch b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/rc4-amd64.patch new file mode 100644 index 0000000000..6f0421a014 --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/rc4-amd64.patch @@ -0,0 +1,14 @@ +Index: openssl-0.9.8k/Configure +=================================================================== +--- openssl-0.9.8k.orig/Configure 2009-07-19 11:32:41.000000000 +0200 ++++ openssl-0.9.8k/Configure 2009-07-19 11:37:10.000000000 +0200 +@@ -128,6 +128,9 @@ + my $x86_out_asm="x86cpuid-out.o:bn86-out.o co86-out.o MAYBE-MO86-out.o:dx86-out.o yx86-out.o:ax86-out.o:bx86-out.o:mx86-out.o:sx86-out.o s512sse2-out.o:cx86-out.o:rx86-out.o rc4_skey.o:rm86-out.o:r586-out.o"; + + my $x86_64_asm="x86_64cpuid.o:x86_64-gcc.o x86_64-mont.o::aes-x86_64.o::md5-x86_64.o:sha1-x86_64.o sha256-x86_64.o sha512-x86_64.o::rc4-x86_64.o::"; ++# rc4 asm is disabled on amd64 because we configured it with RC4_CHAR while ++# the assembler only works with int ++my $x86_64_asm_linux="x86_64cpuid.o:x86_64-gcc.o x86_64-mont.o::aes-x86_64.o::md5-x86_64.o:sha1-x86_64.o sha256-x86_64.o sha512-x86_64.o::::"; + my $ia64_asm=":bn-ia64.o::aes_core.o aes_cbc.o aes-ia64.o:::sha1-ia64.o sha256-ia64.o sha512-ia64.o::rc4-ia64.o rc4_skey.o::"; + + my $no_asm="::::::::::"; diff --git a/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/rehash-crt.patch b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/rehash-crt.patch new file mode 100644 index 0000000000..a8ff28c6f3 --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/rehash-crt.patch @@ -0,0 +1,33 @@ +Index: openssl-0.9.8k/tools/c_rehash.in +=================================================================== +--- openssl-0.9.8k.orig/tools/c_rehash.in 2002-10-11 22:31:27.000000000 +0200 ++++ openssl-0.9.8k/tools/c_rehash.in 2009-07-19 11:36:26.000000000 +0200 +@@ -59,12 +59,15 @@ + } + } + closedir DIR; +- FILE: foreach $fname (grep {/\.pem$/} @flist) { ++ FILE: foreach $fname (grep {/\.pem$|\.crt$/} @flist) { + # Check to see if certificates and/or CRLs present. + my ($cert, $crl) = check_file($fname); + if(!$cert && !$crl) { +- print STDERR "WARNING: $fname does not contain a certificate or CRL: skipping\n"; +- next; ++ ($cert, $crl) = check_file("$openssl x509 -in \"$fname\" -inform der -outform pem | "); ++ if(!$cert && !$crl) { ++ print STDERR "WARNING: $fname does not contain a certificate or CRL: skipping\n"; ++ next; ++ } + } + link_hash_cert($fname) if($cert); + link_hash_crl($fname) if($crl); +@@ -102,6 +105,9 @@ + my $fname = $_[0]; + $fname =~ s/'/'\\''/g; + my ($hash, $fprint) = `"$openssl" x509 -hash -fingerprint -noout -in '$fname'`; ++ if(!$hash || !fprint) { ++ ($hash, $fprint) = `"$openssl" x509 -hash -fingerprint -noout -in '$fname' -inform der`; ++ } + chomp $hash; + chomp $fprint; + $fprint =~ s/^.*=//; diff --git a/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/rehash_pod.patch b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/rehash_pod.patch new file mode 100644 index 0000000000..94792c48e5 --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/rehash_pod.patch @@ -0,0 +1,60 @@ +Index: openssl-0.9.8k/doc/apps/c_rehash.pod +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ openssl-0.9.8k/doc/apps/c_rehash.pod 2009-07-19 11:36:27.000000000 +0200 +@@ -0,0 +1,55 @@ ++ ++=pod ++ ++=head1 NAME ++ ++c_rehash - Create symbolic links to files named by the hash values ++ ++=head1 SYNOPSIS ++ ++B ++[directory] ... ++ ++=head1 DESCRIPTION ++ ++c_rehash scans directories and takes a hash value of each .pem and .crt file in the directory. It then creates symbolic links for each of the files named by the hash value. This is useful as many programs require directories to be set up like this in order to find the certificates they require. ++ ++If any directories are named on the command line then these directories are processed in turn. If not then and the environment variable SSL_CERT_DIR is defined then that is consulted. This variable should be a colon (:) separated list of directories, all of which will be processed. If neither of these conditions are true then /usr/lib/ssl/certs is processed. ++ ++For each directory that is to be processed he user must have write permissions on the directory, if they do not then nothing will be printed for that directory. ++ ++Note that this program deletes all the symbolic links that look like ones that it creates before processing a directory. Beware that if you run the program on a directory that contains symbolic links for other purposes that are named in the same format as those created by this program they will be lost. ++ ++The hashes for certificate files are of the form . where n is an integer. If the hash value already exists then n will be incremented, unless the file is a duplicate. Duplicates are detected using the fingerprint of the certificate. A warning will be printed if a duplicate is detected. The hashes for CRL files are of the form .r and have the same behavior. ++ ++The program will also warn if there are files with extension .pem which are not certificate or CRL files. ++ ++The program uses the openssl program to compute the hashes and fingerprints. It expects the executable to be named openssl and be on the PATH, or in the /usr/lib/ssl/bin directory. If the OPENSSL environment variable is defined then this is used instead as the executable that provides the hashes and fingerprints. When called as $OPENSSL x509 -hash -fingerprint -noout -in $file it must output the hash of $file on the first line followed by the fingerprint on the second line, optionally prefixed with some text and an equals sign (=). ++ ++=head1 OPTIONS ++ ++None ++ ++=head1 ENVIRONMENT ++ ++=over 4 ++ ++=item B ++ ++The name (and path) of an executable to use to generate hashes and fingerprints (see above). ++ ++=item B ++ ++Colon separated list of directories to operate on. Ignored if directories are listed on the command line. ++ ++=head1 SEE ALSO ++ ++L, L ++ ++=back ++ ++=head1 BUGS ++ ++No known bugs ++ ++=cut diff --git a/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/series b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/series new file mode 100644 index 0000000000..b764c0414d --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/series @@ -0,0 +1,20 @@ +ca.patch +config-hurd.patch +debian-targets.patch +engines-path.patch +kfreebsd-pipe.patch +make-targets.patch +man-dir.patch +man-section.patch +no-rpath.patch +no-symbolic.patch +pic.patch +pkg-config.patch +valgrind.patch +rc4-amd64.patch +rehash-crt.patch +rehash_pod.patch +shared-lib-ext.patch +stddef.patch +version-script.patch +perl-path.diff diff --git a/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/shared-lib-ext.patch b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/shared-lib-ext.patch new file mode 100644 index 0000000000..d27e9b2398 --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/shared-lib-ext.patch @@ -0,0 +1,14 @@ +Index: openssl-0.9.8k/Configure +=================================================================== +--- openssl-0.9.8k.orig/Configure 2009-07-19 11:36:24.000000000 +0200 ++++ openssl-0.9.8k/Configure 2009-07-19 11:37:03.000000000 +0200 +@@ -1568,7 +1568,8 @@ + elsif ($shared_extension ne "" && $shared_extension =~ /^\.s([ol])\.[^\.]*\.[^\.]*$/) + { + my $sotmp = $1; +- s/^SHARED_LIBS_LINK_EXTS=.*/SHARED_LIBS_LINK_EXTS=.s$sotmp.\$(SHLIB_MAJOR) .s$sotmp/; ++# s/^SHARED_LIBS_LINK_EXTS=.*/SHARED_LIBS_LINK_EXTS=.s$sotmp.\$(SHLIB_MAJOR) .s$sotmp/; ++ s/^SHARED_LIBS_LINK_EXTS=.*/SHARED_LIBS_LINK_EXTS=.s$sotmp/; + } + elsif ($shared_extension ne "" && $shared_extension =~ /^\.[^\.]*\.[^\.]*\.dylib$/) + { diff --git a/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/stddef.patch b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/stddef.patch new file mode 100644 index 0000000000..bb65b23319 --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/stddef.patch @@ -0,0 +1,12 @@ +Index: openssl-0.9.8k/crypto/sha/sha.h +=================================================================== +--- openssl-0.9.8k.orig/crypto/sha/sha.h 2008-09-16 12:47:28.000000000 +0200 ++++ openssl-0.9.8k/crypto/sha/sha.h 2009-07-19 11:36:28.000000000 +0200 +@@ -59,6 +59,7 @@ + #ifndef HEADER_SHA_H + #define HEADER_SHA_H + ++#include + #include + #include + diff --git a/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/valgrind.patch b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/valgrind.patch new file mode 100644 index 0000000000..e9f86eabbf --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/valgrind.patch @@ -0,0 +1,15 @@ +Index: openssl-0.9.8k/crypto/rand/md_rand.c +=================================================================== +--- openssl-0.9.8k.orig/crypto/rand/md_rand.c 2008-09-16 13:50:05.000000000 +0200 ++++ openssl-0.9.8k/crypto/rand/md_rand.c 2009-07-19 11:36:05.000000000 +0200 +@@ -477,8 +477,10 @@ + MD_Update(&m,local_md,MD_DIGEST_LENGTH); + MD_Update(&m,(unsigned char *)&(md_c[0]),sizeof(md_c)); + #ifndef PURIFY ++#if 0 /* Don't add uninitialised data. */ + MD_Update(&m,buf,j); /* purify complains */ + #endif ++#endif + k=(st_idx+MD_DIGEST_LENGTH/2)-st_num; + if (k > 0) + { diff --git a/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/version-script.patch b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/version-script.patch new file mode 100644 index 0000000000..64d8fc7fa2 --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl-0.9.8o/debian/version-script.patch @@ -0,0 +1,33 @@ +Index: openssl-0.9.8m/Configure +=================================================================== +--- openssl-0.9.8m.orig/Configure 2010-02-27 12:28:32.000000000 +0100 ++++ openssl-0.9.8m/Configure 2010-02-27 12:28:35.000000000 +0100 +@@ -1512,6 +1512,8 @@ + } + } + ++$shared_ldflag .= " -Wl,--version-script=openssl.ld"; ++ + open(IN,'$Makefile.new") || die "unable to create $Makefile.new:$!\n"; +Index: openssl-0.9.8m/openssl.ld +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ openssl-0.9.8m/openssl.ld 2010-02-27 12:28:35.000000000 +0100 +@@ -0,0 +1,5 @@ ++OPENSSL_0.9.8 { ++ global: ++ *; ++}; ++ +Index: openssl-0.9.8m/engines/openssl.ld +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ openssl-0.9.8m/engines/openssl.ld 2010-02-27 12:28:35.000000000 +0100 +@@ -0,0 +1,5 @@ ++OPENSSL_0.9.8 { ++ global: ++ *; ++}; ++ diff --git a/meta/recipes-connectivity/openssl/openssl-0.9.8o/shared-libs.patch b/meta/recipes-connectivity/openssl/openssl-0.9.8o/shared-libs.patch new file mode 100644 index 0000000000..10d9146dc9 --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl-0.9.8o/shared-libs.patch @@ -0,0 +1,48 @@ +diff --git a/Makefile.org b/Makefile.org +index e87d623..25ff367 100644 +--- a/Makefile.org ++++ b/Makefile.org +@@ -355,7 +355,7 @@ libcrypto$(SHLIB_EXT): libcrypto.a $(SHARED_FIPS) + @if [ "$(SHLIB_TARGET)" != "" ]; then \ + if [ "$(FIPSCANLIB)" = "libfips" ]; then \ + $(ARD) libcrypto.a fipscanister.o ; \ +- $(MAKE) SHLIBDIRS='crypto' SHLIBDEPS='-lfips' build-shared; \ ++ $(MAKE) -e SHLIBDIRS='crypto' SHLIBDEPS='-lfips' build-shared; \ + $(AR) libcrypto.a fips/fipscanister.o ; \ + else \ + if [ "$(FIPSCANLIB)" = "libcrypto" ]; then \ +@@ -373,7 +373,7 @@ libssl$(SHLIB_EXT): libcrypto$(SHLIB_EXT) libssl.a + @if [ "$(SHLIB_TARGET)" != "" ]; then \ + shlibdeps=-lcrypto; \ + [ "$(FIPSCANLIB)" = "libfips" ] && shlibdeps="$$shlibdeps -lfips"; \ +- $(MAKE) SHLIBDIRS=ssl SHLIBDEPS="$$shlibdeps" build-shared; \ ++ $(MAKE) -e SHLIBDIRS=ssl SHLIBDEPS="$$shlibdeps" build-shared; \ + else \ + echo "There's no support for shared libraries on this platform" >&2 ; \ + exit 1; \ +diff --git a/crypto/Makefile b/crypto/Makefile +index 6557f2b..a69bf7c 100644 +--- a/crypto/Makefile ++++ b/crypto/Makefile +@@ -103,7 +103,7 @@ $(LIB): $(LIBOBJ) + + shared: buildinf.h lib subdirs + if [ -n "$(SHARED_LIBS)" ]; then \ +- (cd ..; $(MAKE) $(SHARED_LIB)); \ ++ (cd ..; $(MAKE) -e $(SHARED_LIB)); \ + fi + + libs: +diff --git a/ssl/Makefile b/ssl/Makefile +index 5ac3507..77ea2bd 100644 +--- a/ssl/Makefile ++++ b/ssl/Makefile +@@ -62,7 +62,7 @@ lib: $(LIBOBJ) + + shared: lib + if [ -n "$(SHARED_LIBS)" ]; then \ +- (cd ..; $(MAKE) $(SHARED_LIB)); \ ++ (cd ..; $(MAKE) -e $(SHARED_LIB)); \ + fi + + files: diff --git a/meta/recipes-connectivity/openssl/openssl.inc b/meta/recipes-connectivity/openssl/openssl.inc new file mode 100644 index 0000000000..2482585c64 --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl.inc @@ -0,0 +1,100 @@ +DESCRIPTION = "Secure Socket Layer (SSL) binary and related cryptographic tools." +HOMEPAGE = "http://www.openssl.org/" +BUGTRACKER = "http://www.openssl.org/news/vulnerabilities.html" +SECTION = "libs/network" + +# "openssl | SSLeay" dual license +LICENSE = "openssl" +LIC_FILES_CHKSUM = "file://LICENSE;md5=83d26c69f6f0172ee7f795790424b453" + +DEPENDS = "perl-native" + +SRC_URI = "http://www.openssl.org/source/openssl-${PV}.tar.gz" +S = "${WORKDIR}/openssl-${PV}" + +AR_append = " r" +CFLAG = "${@base_conditional('SITEINFO_ENDIANESS', 'le', '-DL_ENDIAN', '-DB_ENDIAN', d)} \ + -DTERMIO ${FULL_OPTIMIZATION} -Wall" + +# -02 does not work on mipsel: ssh hangs when it tries to read /dev/urandom +CFLAG_mtx-1 := "${@'${CFLAG}'.replace('-O2', '')}" +CFLAG_mtx-2 := "${@'${CFLAG}'.replace('-O2', '')}" + +export DIRS = "crypto ssl apps" +export EX_LIBS = "-lgcc -ldl" +export AS = "${CC} -c" + +PARALLEL_MAKE = "" + +inherit pkgconfig siteinfo + +PACKAGES =+ "libcrypto libssl" +FILES_libcrypto = "${libdir}/libcrypto.so.*" +FILES_libssl = "${libdir}/libssl.so.*" +FILES_${PN} =+ " ${libdir}/ssl/*" + +do_configure () { + cd util + perl perlpath.pl ${bindir} + cd .. + ln -sf apps/openssl.pod crypto/crypto.pod ssl/ssl.pod doc/ + + os=${HOST_OS} + if [ "x$os" = "xlinux-uclibc" ]; then + os=linux + fi + target="$os-${HOST_ARCH}" + case $target in + linux-arm) + target=linux-elf-arm + ;; + linux-armeb) + target=linux-elf-armeb + ;; + linux-sh3) + target=debian-sh3 + ;; + linux-sh4) + target=debian-sh4 + ;; + linux-i486) + target=debian-i386-i486 + ;; + linux-i586) + target=debian-i386-i586 + ;; + linux-i686) + target=debian-i386-i686/cmov + ;; + linux-mips) + target=debian-mips + ;; + linux-mipsel) + target=debian-mipsel + ;; + linux-powerpc) + target=linux-ppc + ;; + linux-supersparc) + target=linux-sparcv8 + ;; + linux-sparc) + target=linux-sparcv8 + ;; + esac + # inject machine-specific flags + sed -i -e "s|^\(\"$target\",\s*\"[^:]\+\):\([^:]\+\)|\1:${CFLAG}|g" Configure + perl ./Configure shared --prefix=${prefix} --openssldir=${libdir}/ssl $target +} + +do_compile () { + oe_runmake +} + +do_install () { + install -m 0755 -d ${D}${libdir}/pkgconfig + oe_runmake INSTALL_PREFIX="${D}" install + chmod 644 ${D}${libdir}/pkgconfig/openssl.pc + oe_libinstall -so libcrypto ${D}${libdir} + oe_libinstall -so libssl ${D}${libdir} +} diff --git a/meta/recipes-connectivity/openssl/openssl_0.9.8o.bb b/meta/recipes-connectivity/openssl/openssl_0.9.8o.bb new file mode 100644 index 0000000000..31c5568ba1 --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl_0.9.8o.bb @@ -0,0 +1,28 @@ +require openssl.inc + +PR = "r0" +SRC_URI += "file://debian/ca.patch \ + file://debian/config-hurd.patch;apply=no \ + file://debian/debian-targets.patch \ + file://debian/engines-path.patch \ + file://debian/kfreebsd-pipe.patch;apply=no \ + file://debian/make-targets.patch \ + file://debian/man-dir.patch \ + file://debian/man-section.patch \ + file://debian/no-rpath.patch \ + file://debian/no-symbolic.patch \ + file://debian/pic.patch \ + file://debian/pkg-config.patch \ + file://debian/valgrind.patch \ + file://debian/rc4-amd64.patch \ + file://debian/rehash-crt.patch \ + file://debian/rehash_pod.patch \ + file://debian/shared-lib-ext.patch \ + file://debian/stddef.patch \ + file://debian/version-script.patch \ + file://debian/perl-path.diff" + +SRC_URI += "file://configure-targets.patch \ + file://shared-libs.patch" + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-connectivity/openswan/openswan-2.4.7/installflags.patch b/meta/recipes-connectivity/openswan/openswan-2.4.7/installflags.patch new file mode 100644 index 0000000000..e6da2eaa5f --- /dev/null +++ b/meta/recipes-connectivity/openswan/openswan-2.4.7/installflags.patch @@ -0,0 +1,13 @@ +Index: openswan-2.4.7/Makefile.inc +=================================================================== +--- openswan-2.4.7.orig/Makefile.inc 2006-12-25 18:05:40.608503250 +0100 ++++ openswan-2.4.7/Makefile.inc 2006-12-25 18:06:39.028154250 +0100 +@@ -158,7 +158,7 @@ + # how backup names are composed. + # Note that the install procedures will never overwrite an existing config + # file, which is why -b is not specified for them. +-INSTBINFLAGS=-b --suffix=.old ++INSTBINFLAGS= + INSTSUIDFLAGS=--mode=u+rxs,g+rx,o+rx --group=root -b --suffix=.old + INSTMANFLAGS= + INSTCONFFLAGS= diff --git a/meta/recipes-connectivity/openswan/openswan-2.4.7/ld-library-path-breakage.patch b/meta/recipes-connectivity/openswan/openswan-2.4.7/ld-library-path-breakage.patch new file mode 100644 index 0000000000..e3cc8762cc --- /dev/null +++ b/meta/recipes-connectivity/openswan/openswan-2.4.7/ld-library-path-breakage.patch @@ -0,0 +1,26 @@ +--- openswan-2.2.0.orig/programs/Makefile.program 2004-06-03 03:06:27.000000000 +0200 ++++ openswan-2.2.0/programs/Makefile.program 2005-03-05 13:50:19.000000000 +0100 +@@ -30,10 +30,6 @@ + + CFLAGS+= ${WERROR} + +-ifneq ($(LD_LIBRARY_PATH),) +-LDFLAGS=-L$(LD_LIBRARY_PATH) +-endif +- + MANDIR8=$(MANTREE)/man8 + MANDIR5=$(MANTREE)/man5 + +--- openswan-2.2.0.orig/programs/pluto/Makefile 2005-01-03 20:40:45.000000000 +0100 ++++ openswan-2.2.0/programs/pluto/Makefile 2005-03-05 13:51:21.000000000 +0100 +@@ -234,10 +234,6 @@ + LIBSPLUTO+=${CURL_LIBS} + LIBSPLUTO+= -lgmp -lresolv # -lefence + +-ifneq ($(LD_LIBRARY_PATH),) +-LDFLAGS=-L$(LD_LIBRARY_PATH) +-endif +- + LIBSADNS = $(OPENSWANLIB) + LIBSADNS += -lresolv # -lefence + diff --git a/meta/recipes-connectivity/openswan/openswan-2.4.7/openswan-2.4.7-gentoo.patch b/meta/recipes-connectivity/openswan/openswan-2.4.7/openswan-2.4.7-gentoo.patch new file mode 100644 index 0000000000..b3863a584b --- /dev/null +++ b/meta/recipes-connectivity/openswan/openswan-2.4.7/openswan-2.4.7-gentoo.patch @@ -0,0 +1,377 @@ +diff -Nru openswan-2.4.7.orig/doc/Makefile openswan-2.4.7/doc/Makefile +--- openswan-2.4.7.orig/doc/Makefile 2005-11-08 23:32:45.000000000 +0200 ++++ openswan-2.4.7/doc/Makefile 2006-12-06 22:46:54.732830840 +0200 +@@ -1,6 +1,6 @@ + # Makefile to generate various formats from HTML source + # +-# Assumes the htmldoc utility is available. ++# No longer cares if the htmldoc utility is available. + # This can be downloaded from www.easysw.com + # + # Also needs lynx(1) for HTML-to-text conversion +diff -Nru openswan-2.4.7.orig/lib/libcrypto/libdes/asm/crypt586.pl openswan-2.4.7/lib/libcrypto/libdes/asm/crypt586.pl +--- openswan-2.4.7.orig/lib/libcrypto/libdes/asm/crypt586.pl 2004-07-16 03:24:45.000000000 +0300 ++++ openswan-2.4.7/lib/libcrypto/libdes/asm/crypt586.pl 2006-12-06 22:46:54.732830840 +0200 +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + # + # The inner loop instruction sequence and the IP/FP modifications are from + # Svend Olaf Mikkelsen +diff -Nru openswan-2.4.7.orig/lib/libcrypto/libdes/asm/perlasm/cbc.pl openswan-2.4.7/lib/libcrypto/libdes/asm/perlasm/cbc.pl +--- openswan-2.4.7.orig/lib/libcrypto/libdes/asm/perlasm/cbc.pl 2004-07-10 11:07:06.000000000 +0300 ++++ openswan-2.4.7/lib/libcrypto/libdes/asm/perlasm/cbc.pl 2006-12-06 22:46:54.736831090 +0200 +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + # void des_ncbc_encrypt(input, output, length, schedule, ivec, enc) + # des_cblock (*input); +diff -Nru openswan-2.4.7.orig/lib/libcrypto/libdes/asm/perlasm/x86asm.pl openswan-2.4.7/lib/libcrypto/libdes/asm/perlasm/x86asm.pl +--- openswan-2.4.7.orig/lib/libcrypto/libdes/asm/perlasm/x86asm.pl 2004-07-10 11:07:06.000000000 +0300 ++++ openswan-2.4.7/lib/libcrypto/libdes/asm/perlasm/x86asm.pl 2006-12-06 22:46:54.736831090 +0200 +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + # require 'x86asm.pl'; + # &asm_init("cpp","des-586.pl"); +diff -Nru openswan-2.4.7.orig/lib/libcrypto/libdes/asm/perlasm/x86ms.pl openswan-2.4.7/lib/libcrypto/libdes/asm/perlasm/x86ms.pl +--- openswan-2.4.7.orig/lib/libcrypto/libdes/asm/perlasm/x86ms.pl 2004-07-10 11:07:07.000000000 +0300 ++++ openswan-2.4.7/lib/libcrypto/libdes/asm/perlasm/x86ms.pl 2006-12-06 22:46:54.736831090 +0200 +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + package x86ms; + +diff -Nru openswan-2.4.7.orig/lib/libcrypto/libdes/asm/perlasm/x86unix.pl openswan-2.4.7/lib/libcrypto/libdes/asm/perlasm/x86unix.pl +--- openswan-2.4.7.orig/lib/libcrypto/libdes/asm/perlasm/x86unix.pl 2004-07-10 11:07:07.000000000 +0300 ++++ openswan-2.4.7/lib/libcrypto/libdes/asm/perlasm/x86unix.pl 2006-12-06 22:46:54.736831090 +0200 +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + package x86unix; + +diff -Nru openswan-2.4.7.orig/lib/liblwres/Makefile openswan-2.4.7/lib/liblwres/Makefile +--- openswan-2.4.7.orig/lib/liblwres/Makefile 2004-12-18 20:13:34.000000000 +0200 ++++ openswan-2.4.7/lib/liblwres/Makefile 2006-12-06 22:46:54.736831090 +0200 +@@ -20,7 +20,7 @@ + CDEFINES = -g + CWARNINGS = -Werror + +-CFLAGS=${CINCLUDES} ${CDEFINES} ${CWARNINGS} ++CFLAGS=${CINCLUDES} ${CDEFINES} ${CWARNINGS} $(USERCOMPILE) + + VERSION="@(\#) openswan-hacking-9.3-for-osw2" + LIBINTERFACE=2 +diff -Nru openswan-2.4.7.orig/linux/net/ipsec/des/asm/des-586.pl openswan-2.4.7/linux/net/ipsec/des/asm/des-586.pl +--- openswan-2.4.7.orig/linux/net/ipsec/des/asm/des-586.pl 2004-07-10 11:06:50.000000000 +0300 ++++ openswan-2.4.7/linux/net/ipsec/des/asm/des-586.pl 2006-12-06 22:46:54.736831090 +0200 +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + # + # The inner loop instruction sequence and the IP/FP modifications are from + # Svend Olaf Mikkelsen +diff -Nru openswan-2.4.7.orig/linux/net/ipsec/des/asm/des686.pl openswan-2.4.7/linux/net/ipsec/des/asm/des686.pl +--- openswan-2.4.7.orig/linux/net/ipsec/des/asm/des686.pl 2004-07-10 11:06:50.000000000 +0300 ++++ openswan-2.4.7/linux/net/ipsec/des/asm/des686.pl 2006-12-06 22:46:54.740831340 +0200 +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + $prog="des686.pl"; + +diff -Nru openswan-2.4.7.orig/linux/net/ipsec/des/asm/desboth.pl openswan-2.4.7/linux/net/ipsec/des/asm/desboth.pl +--- openswan-2.4.7.orig/linux/net/ipsec/des/asm/desboth.pl 2004-07-10 11:06:50.000000000 +0300 ++++ openswan-2.4.7/linux/net/ipsec/des/asm/desboth.pl 2006-12-06 22:46:54.740831340 +0200 +@@ -1,4 +1,4 @@ +-#!/usr/local/bin/perl ++#!/usr/bin/perl + + $L="edi"; + $R="esi"; +diff -Nru openswan-2.4.7.orig/Makefile.inc openswan-2.4.7/Makefile.inc +--- openswan-2.4.7.orig/Makefile.inc 2006-11-14 19:56:09.000000000 +0200 ++++ openswan-2.4.7/Makefile.inc 2006-12-06 22:48:32.534943089 +0200 +@@ -46,7 +46,7 @@ + DESTDIR?= + + # "local" part of tree, used in building other pathnames +-INC_USRLOCAL=/usr/local ++INC_USRLOCAL?=/usr + + # PUBDIR is where the "ipsec" command goes; beware, many things define PATH + # settings which are assumed to include it (or at least, to include *some* +@@ -80,7 +80,7 @@ + MANPLACES=man3 man5 man8 + + # where configuration files go +-FINALCONFFILE?=/etc/ipsec.conf ++FINALCONFFILE?=/etc/ipsec/ipsec.conf + CONFFILE=$(DESTDIR)$(FINALCONFFILE) + + FINALCONFDIR?=/etc +@@ -91,7 +91,7 @@ + + # sample configuration files go into + INC_DOCDIR?=share/doc +-FINALEXAMPLECONFDIR=${INC_USRLOCAL}/${INC_DOCDIR}/openswan ++FINALEXAMPLECONFDIR?=${INC_USRLOCAL}/${INC_DOCDIR}/openswan + EXAMPLECONFDIR=${DESTDIR}${FINALEXAMPLECONFDIR} + + FINALDOCDIR?=${INC_USRLOCAL}/${INC_DOCDIR}/openswan +@@ -239,7 +239,7 @@ + # installed one in RH 7.2, won't work - you wind up depending upon + # openssl. + +-BIND9STATICLIBDIR?=/usr/local/lib ++BIND9STATICLIBDIR?=/usr/lib + + # if you install elsewere, you may need to point the include files to it. + #BIND9STATICLIBDIR?=/sandel/lib +diff -Nru openswan-2.4.7.orig/programs/barf/barf.in openswan-2.4.7/programs/barf/barf.in +--- openswan-2.4.7.orig/programs/barf/barf.in 2006-11-07 05:49:18.000000000 +0200 ++++ openswan-2.4.7/programs/barf/barf.in 2006-12-06 22:46:54.740831340 +0200 +@@ -16,7 +16,7 @@ + + LOGS=${LOGS-/var/log} + CONFS=${IPSEC_CONFS-/etc} +-CONFDDIR=${IPSEC_CONFDDIR-/etc/ipsec.d} ++CONFDDIR=${IPSEC_CONFDDIR-/etc/ipsec/ipsec.d} + me="ipsec barf" + # Max lines to use for things like 'route -n' + maxlines=100 +@@ -238,13 +238,13 @@ + done + fi + _________________________ ipsec/ls-libdir +-ls -l ${IPSEC_LIBDIR-/usr/local/lib/ipsec} ++ls -l ${IPSEC_LIBDIR-/usr/lib/ipsec} + _________________________ ipsec/ls-execdir +-ls -l ${IPSEC_EXECDIR-/usr/local/libexec/ipsec} ++ls -l ${IPSEC_EXECDIR-/usr/libexec/ipsec} + _________________________ ipsec/updowns +-for f in `ls ${IPSEC_EXECDIR-/usr/local/libexec/ipsec} | egrep updown` ++for f in `ls ${IPSEC_EXECDIR-/usr/libexec/ipsec} | egrep updown` + do +- cat ${IPSEC_EXECDIR-/usr/local/libexec/ipsec}/$f ++ cat ${IPSEC_EXECDIR-/usr/libexec/ipsec}/$f + done + _________________________ /proc/net/dev + cat /proc/net/dev +diff -Nru openswan-2.4.7.orig/programs/eroute/eroute.5 openswan-2.4.7/programs/eroute/eroute.5 +--- openswan-2.4.7.orig/programs/eroute/eroute.5 2006-10-26 23:40:43.000000000 +0300 ++++ openswan-2.4.7/programs/eroute/eroute.5 2006-12-06 22:57:19.307864340 +0200 +@@ -168,7 +168,7 @@ + .SH "FILES" + + .PP +-/proc/net/ipsec_eroute, /usr/local/bin/ipsec ++/proc/net/ipsec_eroute, /usr/bin/ipsec + + .SH "SEE ALSO" + +diff -Nru openswan-2.4.7.orig/programs/eroute/eroute.8 openswan-2.4.7/programs/eroute/eroute.8 +--- openswan-2.4.7.orig/programs/eroute/eroute.8 2003-10-31 04:32:27.000000000 +0200 ++++ openswan-2.4.7/programs/eroute/eroute.8 2006-12-06 22:46:54.740831340 +0200 +@@ -308,7 +308,7 @@ + .br + .LP + .SH FILES +-/proc/net/ipsec_eroute, /usr/local/bin/ipsec ++/proc/net/ipsec_eroute, /usr/bin/ipsec + .SH "SEE ALSO" + ipsec(8), ipsec_manual(8), ipsec_tncfg(8), ipsec_spi(8), + ipsec_spigrp(8), ipsec_klipsdebug(8), ipsec_eroute(5) +diff -Nru openswan-2.4.7.orig/programs/_include/_include.in openswan-2.4.7/programs/_include/_include.in +--- openswan-2.4.7.orig/programs/_include/_include.in 2003-01-06 23:44:04.000000000 +0200 ++++ openswan-2.4.7/programs/_include/_include.in 2006-12-06 22:46:54.740831340 +0200 +@@ -47,10 +47,10 @@ + do + if test ! -r "$f" + then +- if test ! "$f" = "/etc/ipsec.conf" ++ if test ! "$f" = "/etc/ipsec/ipsec.conf" + then + echo "#:cannot open configuration file \'$f\'" +- if test "$f" = "/etc/ipsec.secrets" ++ if test "$f" = "/etc/ipsec/ipsec.secrets" + then + echo "#:Your secrets file will be created when you start FreeS/WAN for the first time." + fi +diff -Nru openswan-2.4.7.orig/programs/ipsec/ipsec.8 openswan-2.4.7/programs/ipsec/ipsec.8 +--- openswan-2.4.7.orig/programs/ipsec/ipsec.8 2003-02-27 18:51:54.000000000 +0200 ++++ openswan-2.4.7/programs/ipsec/ipsec.8 2006-12-06 22:46:54.744831590 +0200 +@@ -81,7 +81,7 @@ + .I ipsec + thinks the IPsec configuration files are stored. + .SH FILES +-/usr/local/lib/ipsec usual utilities directory ++/usr/lib/ipsec usual utilities directory + .SH ENVIRONMENT + .PP + The following environment variables control where FreeS/WAN finds its +diff -Nru openswan-2.4.7.orig/programs/klipsdebug/klipsdebug.5 openswan-2.4.7/programs/klipsdebug/klipsdebug.5 +--- openswan-2.4.7.orig/programs/klipsdebug/klipsdebug.5 2006-10-27 01:21:25.000000000 +0300 ++++ openswan-2.4.7/programs/klipsdebug/klipsdebug.5 2006-12-06 22:58:04.150666840 +0200 +@@ -114,7 +114,7 @@ + .SH "FILES" + + .PP +-/proc/net/ipsec_klipsdebug, /usr/local/bin/ipsec ++/proc/net/ipsec_klipsdebug, /usr/bin/ipsec + + .SH "SEE ALSO" + +diff -Nru openswan-2.4.7.orig/programs/klipsdebug/klipsdebug.8 openswan-2.4.7/programs/klipsdebug/klipsdebug.8 +--- openswan-2.4.7.orig/programs/klipsdebug/klipsdebug.8 2006-10-27 01:21:25.000000000 +0300 ++++ openswan-2.4.7/programs/klipsdebug/klipsdebug.8 2006-12-06 22:58:22.295800840 +0200 +@@ -111,7 +111,7 @@ + .SH "FILES" + + .PP +-/proc/net/ipsec_klipsdebug, /usr/local/bin/ipsec ++/proc/net/ipsec_klipsdebug, /usr/bin/ipsec + + .SH "SEE ALSO" + +diff -Nru openswan-2.4.7.orig/programs/mailkey/mailkey.in openswan-2.4.7/programs/mailkey/mailkey.in +--- openswan-2.4.7.orig/programs/mailkey/mailkey.in 2006-10-29 02:49:23.000000000 +0300 ++++ openswan-2.4.7/programs/mailkey/mailkey.in 2006-12-06 22:46:54.828836839 +0200 +@@ -60,7 +60,7 @@ + + "$test1st" + +-Common concerns: This account must be able to read /etc/ipsec.secrets. ++Common concerns: This account must be able to read /etc/ipsec/ipsec.secrets. + If you haven't generated your key yet, please run 'ipsec newhostkey'." + exit 0 + } +diff -Nru openswan-2.4.7.orig/programs/pluto/Makefile openswan-2.4.7/programs/pluto/Makefile +--- openswan-2.4.7.orig/programs/pluto/Makefile 2006-11-07 17:55:52.000000000 +0200 ++++ openswan-2.4.7/programs/pluto/Makefile 2006-12-06 22:46:54.832837088 +0200 +@@ -256,7 +256,7 @@ + -DPOLICYGROUPSDIR=\"${FINALCONFDDIR}/policies\" \ + -DPERPEERLOGDIR=\"${FINALLOGDIR}/pluto/peer\" + +-ALLFLAGS = $(CPPFLAGS) $(CFLAGS) ++ALLFLAGS = $(CPPFLAGS) $(CFLAGS) $(USERCOMPILE) + + # libefence is a free memory allocation debugger + # Solaris 2 needs -lsocket -lnsl +diff -Nru openswan-2.4.7.orig/programs/setup/Makefile openswan-2.4.7/programs/setup/Makefile +--- openswan-2.4.7.orig/programs/setup/Makefile 2004-12-18 20:13:43.000000000 +0200 ++++ openswan-2.4.7/programs/setup/Makefile 2006-12-06 22:46:54.832837088 +0200 +@@ -33,25 +33,10 @@ + @rm -f $(BINDIR)/setup + @$(INSTALL) $(INSTBINFLAGS) setup $(RCDIR)/ipsec + @ln -s $(FINALRCDIR)/ipsec $(BINDIR)/setup +- -@for i in 0 1 2 3 4 5 6; do mkdir -p $(RCDIR)/../rc$$i.d; done +- -@cd $(RCDIR)/../rc0.d && ln -f -s ../init.d/ipsec K76ipsec +- -@cd $(RCDIR)/../rc1.d && ln -f -s ../init.d/ipsec K76ipsec +- -@cd $(RCDIR)/../rc2.d && ln -f -s ../init.d/ipsec S47ipsec +- -@cd $(RCDIR)/../rc3.d && ln -f -s ../init.d/ipsec S47ipsec +- -@cd $(RCDIR)/../rc4.d && ln -f -s ../init.d/ipsec S47ipsec +- -@cd $(RCDIR)/../rc5.d && ln -f -s ../init.d/ipsec S47ipsec +- -@cd $(RCDIR)/../rc6.d && ln -f -s ../init.d/ipsec K76ipsec + + install_file_list:: + @echo $(RCDIR)/ipsec + @echo $(BINDIR)/setup +- @echo $(RCDIR)/../rc0.d/K76ipsec +- @echo $(RCDIR)/../rc1.d/K76ipsec +- @echo $(RCDIR)/../rc2.d/S47ipsec +- @echo $(RCDIR)/../rc3.d/S47ipsec +- @echo $(RCDIR)/../rc4.d/S47ipsec +- @echo $(RCDIR)/../rc5.d/S47ipsec +- @echo $(RCDIR)/../rc6.d/K76ipsec + + clean:: + @rm -f setup +diff -Nru openswan-2.4.7.orig/programs/showhostkey/showhostkey.in openswan-2.4.7/programs/showhostkey/showhostkey.in +--- openswan-2.4.7.orig/programs/showhostkey/showhostkey.in 2004-11-14 15:40:41.000000000 +0200 ++++ openswan-2.4.7/programs/showhostkey/showhostkey.in 2006-12-06 22:46:54.844837840 +0200 +@@ -18,7 +18,7 @@ + usage="Usage: $me [--file secrets] [--left] [--right] [--txt gateway] [--id id] + [--dhclient] [--ipseckey]" + +-file=/etc/ipsec.secrets ++file=/etc/ipsec/ipsec.secrets + fmt="" + gw= + id= +diff -Nru openswan-2.4.7.orig/programs/spi/spi.5 openswan-2.4.7/programs/spi/spi.5 +--- openswan-2.4.7.orig/programs/spi/spi.5 2006-10-26 23:53:59.000000000 +0300 ++++ openswan-2.4.7/programs/spi/spi.5 2006-12-06 23:00:11.910340779 +0200 +@@ -157,7 +157,7 @@ + .SH "FILES" + + .PP +-/proc/net/ipsec_spi, /usr/local/bin/ipsec ++/proc/net/ipsec_spi, /usr/bin/ipsec + + .SH "SEE ALSO" + +diff -Nru openswan-2.4.7.orig/programs/spi/spi.8 openswan-2.4.7/programs/spi/spi.8 +--- openswan-2.4.7.orig/programs/spi/spi.8 2006-10-30 22:00:04.000000000 +0200 ++++ openswan-2.4.7/programs/spi/spi.8 2006-12-06 23:00:27.043286530 +0200 +@@ -215,7 +215,7 @@ + .SH "FILES" + + .PP +-/proc/net/ipsec_spi, /usr/local/bin/ipsec ++/proc/net/ipsec_spi, /usr/bin/ipsec + + .SH "SEE ALSO" + +diff -Nru openswan-2.4.7.orig/programs/spigrp/spigrp.5 openswan-2.4.7/programs/spigrp/spigrp.5 +--- openswan-2.4.7.orig/programs/spigrp/spigrp.5 2006-10-26 23:50:29.000000000 +0300 ++++ openswan-2.4.7/programs/spigrp/spigrp.5 2006-12-06 23:01:25.650949280 +0200 +@@ -67,7 +67,7 @@ + .SH "FILES" + + .PP +-/proc/net/ipsec_spigrp, /usr/local/bin/ipsec ++/proc/net/ipsec_spigrp, /usr/bin/ipsec + + .SH "SEE ALSO" + +diff -Nru openswan-2.4.7.orig/programs/spigrp/spigrp.8 openswan-2.4.7/programs/spigrp/spigrp.8 +--- openswan-2.4.7.orig/programs/spigrp/spigrp.8 2006-10-26 23:50:29.000000000 +0300 ++++ openswan-2.4.7/programs/spigrp/spigrp.8 2006-12-06 23:01:39.079788532 +0200 +@@ -87,7 +87,7 @@ + .SH "FILES" + + .PP +-/proc/net/ipsec_spigrp, /usr/local/bin/ipsec ++/proc/net/ipsec_spigrp, /usr/bin/ipsec + + .SH "SEE ALSO" + +diff -Nru openswan-2.4.7.orig/programs/tncfg/tncfg.5 openswan-2.4.7/programs/tncfg/tncfg.5 +--- openswan-2.4.7.orig/programs/tncfg/tncfg.5 2006-10-26 23:58:11.000000000 +0300 ++++ openswan-2.4.7/programs/tncfg/tncfg.5 2006-12-06 23:01:59.385057530 +0200 +@@ -101,7 +101,7 @@ + .SH "FILES" + + .PP +-/proc/net/ipsec_tncfg, /usr/local/bin/ipsec ++/proc/net/ipsec_tncfg, /usr/bin/ipsec + + .SH "SEE ALSO" + +diff -Nru openswan-2.4.7.orig/programs/tncfg/tncfg.8 openswan-2.4.7/programs/tncfg/tncfg.8 +--- openswan-2.4.7.orig/programs/tncfg/tncfg.8 2006-10-26 23:58:11.000000000 +0300 ++++ openswan-2.4.7/programs/tncfg/tncfg.8 2006-12-06 23:02:09.245673780 +0200 +@@ -63,7 +63,7 @@ + .SH "FILES" + + .PP +-/proc/net/ipsec_tncfg, /usr/local/bin/ipsec ++/proc/net/ipsec_tncfg, /usr/bin/ipsec + + .SH "SEE ALSO" + diff --git a/meta/recipes-connectivity/openswan/openswan_2.4.7.bb b/meta/recipes-connectivity/openswan/openswan_2.4.7.bb new file mode 100644 index 0000000000..4ebb9c7a45 --- /dev/null +++ b/meta/recipes-connectivity/openswan/openswan_2.4.7.bb @@ -0,0 +1,36 @@ +SECTION = "console/network" +DESCRIPTION = "Openswan is an Open Source implementation of IPsec for the \ +Linux operating system." +HOMEPAGE = "http://www.openswan.org" +LICENSE = "GPLv2" +DEPENDS = "gmp flex-native" +RRECOMMENDS = "kernel-module-ipsec" +RDEPENDS_nylon = "perl" +PR = "r0" + +SRC_URI = "http://www.openswan.org/download/old/openswan-${PV}.tar.gz \ + file://openswan-2.4.7-gentoo.patch;patch=1 \ + file://installflags.patch;patch=1 \ + file://ld-library-path-breakage.patch;patch=1" +S = "${WORKDIR}/openswan-${PV}" + +PARALLEL_MAKE = "" +EXTRA_OEMAKE = "DESTDIR=${D} \ + USERCOMPILE="${CFLAGS}" \ + FINALCONFDIR=${sysconfdir}/ipsec \ + INC_RCDEFAULT=${sysconfdir}/init.d \ + INC_USRLOCAL=${prefix} \ + INC_MANDIR=share/man WERROR=''" + +do_compile () { + oe_runmake programs +} + +do_install () { + oe_runmake install +} + +FILES_${PN} = "${sysconfdir} ${libdir}/ipsec/* ${sbindir}/* ${libexecdir}/ipsec/*" +FILES_${PN}-dbg += "${libdir}/ipsec/.debug ${libexecdir}/ipsec/.debug" + +CONFFILES_${PN} = "${sysconfdir}/ipsec/ipsec.conf" diff --git a/meta/recipes-connectivity/opensync/libopensync-0.37/build-in-src.patch b/meta/recipes-connectivity/opensync/libopensync-0.37/build-in-src.patch new file mode 100644 index 0000000000..1810b339a6 --- /dev/null +++ b/meta/recipes-connectivity/opensync/libopensync-0.37/build-in-src.patch @@ -0,0 +1,18 @@ +--- + cmake/OpenSyncInternal.cmake.in | 1 - + 1 file changed, 1 deletion(-) + +--- libopensync-0.36.orig/cmake/OpenSyncInternal.cmake.in ++++ libopensync-0.36/cmake/OpenSyncInternal.cmake.in +@@ -5,11 +5,10 @@ INCLUDE( OpenSyncTesting ) + INCLUDE( OpenSyncPackaging ) + INCLUDE( OpenSyncPlugin ) + INCLUDE( OpenSyncPlatforms ) + INCLUDE( MacroEnsureOutOfSourceBuild ) + +-MACRO_ENSURE_OUT_OF_SOURCE_BUILD("${CMAKE_PROJECT_NAME} doesn't allow to build within the source directory. Please, create a seperate build directory and run 'cmake ${PROJECT_SOURCE_DIR} [options]'!") + + + SET( OPENSYNC_PLUGINDIR "@OPENSYNC_PLUGINDIR@" ) + SET( OPENSYNC_FORMATSDIR "@OPENSYNC_FORMATSDIR@" ) + SET( OPENSYNC_PYTHON_PLUGINDIR "@OPENSYNC_PYTHON_PLUGINDIR@" ) diff --git a/meta/recipes-connectivity/opensync/libopensync-0.37/cmake.patch b/meta/recipes-connectivity/opensync/libopensync-0.37/cmake.patch new file mode 100644 index 0000000000..7ea4613548 --- /dev/null +++ b/meta/recipes-connectivity/opensync/libopensync-0.37/cmake.patch @@ -0,0 +1,17 @@ +--- + opensync/CMakeLists.txt | 1 - + 1 file changed, 1 deletion(-) + +Index: libopensync-0.37/opensync/CMakeLists.txt +=================================================================== +--- libopensync-0.37.orig/opensync/CMakeLists.txt 2008-10-15 13:56:45.000000000 +0100 ++++ libopensync-0.37/opensync/CMakeLists.txt 2008-10-15 13:59:03.000000000 +0100 +@@ -67,8 +67,6 @@ + SET_TARGET_PROPERTIES( opensync PROPERTIES VERSION ${OPENSYNC_LIBVERSION_VERSION} ) + SET_TARGET_PROPERTIES( opensync PROPERTIES SOVERSION ${OPENSYNC_LIBVERSION_SOVERSION} ) + +-SET_TARGET_PROPERTIES( opensync PROPERTIES COMPILE_FLAGS ${SYMBOLS_VISIBILITY} ) +- + IF ( OPENSYNC_UNITTESTS ) + ADD_LIBRARY( opensync-testing SHARED ${libopensync_LIB_SRCS} ) + TARGET_LINK_LIBRARIES( opensync-testing ${GLIB2_LIBRARIES} ${GTHREAD2_LIBRARIES} ${GMODULE2_LIBRARIES} ${LIBXML2_LIBRARIES} ${LIBXSLT_LIBRARIES} ${LIBEXSLT_LIBRARIES} ${SQLITE3_LIBRARIES} ) diff --git a/meta/recipes-connectivity/opensync/libopensync-0.37/no-python-check.patch b/meta/recipes-connectivity/opensync/libopensync-0.37/no-python-check.patch new file mode 100644 index 0000000000..04257bc623 --- /dev/null +++ b/meta/recipes-connectivity/opensync/libopensync-0.37/no-python-check.patch @@ -0,0 +1,16 @@ +--- + CMakeLists.txt | 1 - + 1 file changed, 1 deletion(-) + +Index: libopensync-0.37/CMakeLists.txt +=================================================================== +--- libopensync-0.37.orig/CMakeLists.txt 2008-08-18 16:14:24.000000000 +0100 ++++ libopensync-0.37/CMakeLists.txt 2008-10-15 14:00:12.000000000 +0100 +@@ -65,7 +65,6 @@ + FIND_PACKAGE( LibXslt REQUIRED ) + FIND_PACKAGE( LibExslt REQUIRED ) + FIND_PACKAGE( SWIG ) +-FIND_PACKAGE( PythonLibs ) + FIND_PACKAGE( Check ) + + ADD_SUBDIRECTORY( opensync ) diff --git a/meta/recipes-connectivity/opensync/libopensync-plugin-evolution2/0.37-fixes.patch b/meta/recipes-connectivity/opensync/libopensync-plugin-evolution2/0.37-fixes.patch new file mode 100644 index 0000000000..4a1802ce17 --- /dev/null +++ b/meta/recipes-connectivity/opensync/libopensync-plugin-evolution2/0.37-fixes.patch @@ -0,0 +1,23 @@ +Index: libopensync-plugin-evolution2-0.36/cmake/modules/FindOpenSync.cmake +=================================================================== +--- libopensync-plugin-evolution2-0.36.orig/cmake/modules/FindOpenSync.cmake 2008-10-20 13:07:14.000000000 +0100 ++++ libopensync-plugin-evolution2-0.36/cmake/modules/FindOpenSync.cmake 2008-10-20 13:08:09.000000000 +0100 +@@ -23,15 +23,15 @@ + ENDIF ( OpenSync_FIND_REQUIRED ) + + IF ( OPENSYNC_MIN_VERSION ) +- PKG_SEARCH_MODULE( OPENSYNC ${_pkgconfig_REQUIRED} opensync-1.0>=${OPENSYNC_MIN_VERSION} ) ++ PKG_SEARCH_MODULE( OPENSYNC ${_pkgconfig_REQUIRED} libopensync>=${OPENSYNC_MIN_VERSION} ) + ELSE ( OPENSYNC_MIN_VERSION ) +- PKG_SEARCH_MODULE( OPENSYNC ${_pkgconfig_REQUIRED} opensync-1.0 ) ++ PKG_SEARCH_MODULE( OPENSYNC ${_pkgconfig_REQUIRED} libopensync ) + ENDIF ( OPENSYNC_MIN_VERSION ) + + FIND_PROGRAM( PKGCONFIG_EXECUTABLE NAMES pkg-config ) + + IF ( PKGCONFIG_EXECUTABLE ) +- EXEC_PROGRAM( ${PKGCONFIG_EXECUTABLE} ARGS opensync-1.0 --variable=datadir OUTPUT_VARIABLE _opensync_data_DIR ) ++ EXEC_PROGRAM( ${PKGCONFIG_EXECUTABLE} ARGS libopensync --variable=datadir OUTPUT_VARIABLE _opensync_data_DIR ) + STRING( REGEX REPLACE "[\r\n]" " " _opensync_data_DIR "${_opensync_data_DIR}" ) + ENDIF ( PKGCONFIG_EXECUTABLE ) + diff --git a/meta/recipes-connectivity/opensync/libopensync-plugin-evolution2_0.36.bb b/meta/recipes-connectivity/opensync/libopensync-plugin-evolution2_0.36.bb new file mode 100644 index 0000000000..a1c4cb1887 --- /dev/null +++ b/meta/recipes-connectivity/opensync/libopensync-plugin-evolution2_0.36.bb @@ -0,0 +1,7 @@ +require libopensync-plugin_0.36.inc + +DEPENDS += " eds-dbus" + +SRC_URI += "file://0.37-fixes.patch;patch=1" + +PR = "r1" diff --git a/meta/recipes-connectivity/opensync/libopensync-plugin-file_0.37.bb b/meta/recipes-connectivity/opensync/libopensync-plugin-file_0.37.bb new file mode 100644 index 0000000000..33a049b7d6 --- /dev/null +++ b/meta/recipes-connectivity/opensync/libopensync-plugin-file_0.37.bb @@ -0,0 +1 @@ +require libopensync-plugin_0.36.inc diff --git a/meta/recipes-connectivity/opensync/libopensync-plugin-google-calendar_0.36.bb b/meta/recipes-connectivity/opensync/libopensync-plugin-google-calendar_0.36.bb new file mode 100644 index 0000000000..33a049b7d6 --- /dev/null +++ b/meta/recipes-connectivity/opensync/libopensync-plugin-google-calendar_0.36.bb @@ -0,0 +1 @@ +require libopensync-plugin_0.36.inc diff --git a/meta/recipes-connectivity/opensync/libopensync-plugin-irmc_0.36.bb b/meta/recipes-connectivity/opensync/libopensync-plugin-irmc_0.36.bb new file mode 100644 index 0000000000..c06de2fde8 --- /dev/null +++ b/meta/recipes-connectivity/opensync/libopensync-plugin-irmc_0.36.bb @@ -0,0 +1,3 @@ +require libopensync-plugin_0.36.inc + +DEPENDS += "openobex bluez4" diff --git a/meta/recipes-connectivity/opensync/libopensync-plugin-syncml/fixerror.patch b/meta/recipes-connectivity/opensync/libopensync-plugin-syncml/fixerror.patch new file mode 100644 index 0000000000..7dad889422 --- /dev/null +++ b/meta/recipes-connectivity/opensync/libopensync-plugin-syncml/fixerror.patch @@ -0,0 +1,13 @@ +Index: libopensync-plugin-syncml-0.38/src/syncml_callbacks.c +=================================================================== +--- libopensync-plugin-syncml-0.38.orig/src/syncml_callbacks.c 2009-07-31 10:30:33.000000000 +0100 ++++ libopensync-plugin-syncml-0.38/src/syncml_callbacks.c 2009-07-31 10:30:39.000000000 +0100 +@@ -405,7 +405,7 @@ + } else { + /* This problem should be fixed with the next SLOW-SYNC. */ + osync_trace(TRACE_EXIT_ERROR, "%s - unexpected Add or Replace command", __func__); +- smlErrorSet(error, SML_ERROR_TEMPORARY, "Unwanted Add or Replace command on second OMA DS session."); ++ smlErrorSet(error, SML_ERROR_GENERIC, "Unwanted Add or Replace command on second OMA DS session."); + return FALSE; + } + } diff --git a/meta/recipes-connectivity/opensync/libopensync-plugin-syncml_0.38.bb b/meta/recipes-connectivity/opensync/libopensync-plugin-syncml_0.38.bb new file mode 100644 index 0000000000..d32d62de47 --- /dev/null +++ b/meta/recipes-connectivity/opensync/libopensync-plugin-syncml_0.38.bb @@ -0,0 +1,7 @@ +require libopensync-plugin_0.36.inc + +DEPENDS += " libsyncml (>= 0.4.7)" + +SRC_URI += "file://fixerror.patch;patch=1" + +PR = "r1" \ No newline at end of file diff --git a/meta/recipes-connectivity/opensync/libopensync-plugin-vformat_0.37.bb b/meta/recipes-connectivity/opensync/libopensync-plugin-vformat_0.37.bb new file mode 100644 index 0000000000..84a48f21fe --- /dev/null +++ b/meta/recipes-connectivity/opensync/libopensync-plugin-vformat_0.37.bb @@ -0,0 +1,3 @@ +require libopensync-plugin_0.36.inc + +DEPENDS += " check" diff --git a/meta/recipes-connectivity/opensync/libopensync-plugin_0.36.inc b/meta/recipes-connectivity/opensync/libopensync-plugin_0.36.inc new file mode 100644 index 0000000000..db6b1fa73a --- /dev/null +++ b/meta/recipes-connectivity/opensync/libopensync-plugin_0.36.inc @@ -0,0 +1,9 @@ +DEPENDS = "libopensync (>= 0.36)" + +SRC_URI = "http://opensync.org/download/releases/${PV}/${P}.tar.bz2" + +inherit cmake + +FILES_${PN} += "${libdir}/opensync*/plugins/*.so \ + ${libdir}/opensync*/formats/*.so \ + ${datadir}/opensync*/defaults/" diff --git a/meta/recipes-connectivity/opensync/libopensync_0.37.bb b/meta/recipes-connectivity/opensync/libopensync_0.37.bb new file mode 100644 index 0000000000..e9b8ce202e --- /dev/null +++ b/meta/recipes-connectivity/opensync/libopensync_0.37.bb @@ -0,0 +1,25 @@ +LICENSE = "LGPL" +HOMEPAGE = "http://www.opensync.org/" + +DEPENDS = "sqlite3 libxml2 glib-2.0 check zlib libxslt" + +PR = "r1" + +SRC_URI = "http://opensync.org/download/releases/${PV}/libopensync-${PV}.tar.bz2\ + file://cmake.patch;patch=1 \ + file://build-in-src.patch;patch=1 \ + file://no-python-check.patch;patch=1" + +inherit cmake pkgconfig + +LEAD_SONAME = "libopensync.so" + +FILES_${PN} += " ${libdir}/opensync*/formats/*.so \ + ${libdir}/opensync*/osplugin \ + ${datadir}/opensync*/schemas \ + ${datadir}/opensync*/capabilities \ + ${datadir}/opensync*/descriptions \ + " +FILES_${PN}-dbg += " ${libdir}/opensync*/formats/.debug/*.so \ + ${libdir}/opensync*/.debug/osplugin " + diff --git a/meta/recipes-connectivity/opensync/libsync_svn.bb b/meta/recipes-connectivity/opensync/libsync_svn.bb new file mode 100644 index 0000000000..660b39aa42 --- /dev/null +++ b/meta/recipes-connectivity/opensync/libsync_svn.bb @@ -0,0 +1,19 @@ +DESCRIPTION = "LibSync is a GObject-based framework for more convenient use of \ +OpenSync in GLib applications." +LICENSE = "LGPL" +SECTION = "x11" +DEPENDS = "glib-2.0 gtk+ libglade libopensync avahi" +RRECOMMENDS = "\ + libopensync-plugin-file \ + " +PV = "0.0+svnr${SRCREV}" + +SRC_URI = "svn://svn.o-hand.com/repos/sync/trunk;module=sync;proto=http" + +inherit autotools pkgconfig + +S = "${WORKDIR}/sync" + +PACKAGES += "synctool" +FILES_${PN} = "${libdir}/lib*.so.*" +FILES_synctool = "${bindir} ${datadir}" diff --git a/meta/recipes-connectivity/opensync/libsyncml/build-in-src.patch b/meta/recipes-connectivity/opensync/libsyncml/build-in-src.patch new file mode 100644 index 0000000000..d8106bdfc7 --- /dev/null +++ b/meta/recipes-connectivity/opensync/libsyncml/build-in-src.patch @@ -0,0 +1,19 @@ +--- + CMakeLists.txt | 4 ---- + 1 file changed, 4 deletions(-) + +Index: libsyncml-0.5.4/CMakeLists.txt +=================================================================== +--- libsyncml-0.5.4.orig/CMakeLists.txt 2009-07-31 09:56:16.000000000 +0100 ++++ libsyncml-0.5.4/CMakeLists.txt 2009-07-31 09:57:33.000000000 +0100 +@@ -72,10 +72,6 @@ + CHECK_TYPE_SIZE( uint32_t UINT32_T ) + CHECK_TYPE_SIZE( uint8_t UINT8_T ) + +-# ensure out od source build +-INCLUDE( MacroEnsureOutOfSourceBuild ) +-MACRO_ENSURE_OUT_OF_SOURCE_BUILD("${CMAKE_PROJECT_NAME} doesn't allow to build within the source directory. Please, create a seperate build directory and run 'cmake ${PROJECT_SOURCE_DIR} [options]'!") +- + # find requirements + SET ( GLIB2_MIN_VERSION "2.12" ) + SET ( OPENOBEX_MIN_VERSION "1.1" ) diff --git a/meta/recipes-connectivity/opensync/libsyncml_0.5.4.bb b/meta/recipes-connectivity/opensync/libsyncml_0.5.4.bb new file mode 100644 index 0000000000..7feb5e0f18 --- /dev/null +++ b/meta/recipes-connectivity/opensync/libsyncml_0.5.4.bb @@ -0,0 +1,17 @@ +DESCRIPTION = "Libsyncml is a implementation of the SyncML protocol." +HOMEPAGE = "http://libsyncml.opensync.org/" +LICENSE = "LGPL" +DEPENDS = "sed-native wbxml2 libsoup libxml2 bluez4 openobex check" +PR = "r1" + +SRC_URI = "${SOURCEFORGE_MIRROR}/libsyncml/0.5.4/libsyncml-0.5.4.tar.bz2 \ + file://build-in-src.patch;patch=1" + +inherit cmake pkgconfig + +PACKAGES += "${PN}-tools" + +FILES_${PN}-tools = "${bindir}" +FILES_${PN} = "${libdir}/*.so.*" + +export VERBOSE=1 \ No newline at end of file diff --git a/meta/recipes-connectivity/opensync/msynctool_0.37.bb b/meta/recipes-connectivity/opensync/msynctool_0.37.bb new file mode 100644 index 0000000000..773166b3be --- /dev/null +++ b/meta/recipes-connectivity/opensync/msynctool_0.37.bb @@ -0,0 +1,7 @@ +SRC_URI = "http://www.opensync.org/download/releases/${PV}/msynctool-${PV}.tar.bz2" + +LICENSE = "GPL" +DEPENDS = "libopensync glib-2.0" +HOMEPAGE = "http://www.opensync.org/" + +inherit cmake pkgconfig diff --git a/meta/recipes-connectivity/portmap/portmap-6.0/destdir-no-strip.patch b/meta/recipes-connectivity/portmap/portmap-6.0/destdir-no-strip.patch new file mode 100644 index 0000000000..a1563c7141 --- /dev/null +++ b/meta/recipes-connectivity/portmap/portmap-6.0/destdir-no-strip.patch @@ -0,0 +1,44 @@ +From: Mike Frysinger +Date: Sun, 13 May 2007 21:15:12 +0000 (-0400) +Subject: respect DESTDIR and dont use -s with install +X-Git-Url: http://neil.brown.name/git?p=portmap;a=commitdiff_plain;h=603c59b978c04df2354f68d4a2dc676a758ff46d + +respect DESTDIR and dont use -s with install + +$(DESTDIR) is the standard for installing into other trees, not $(BASEDIR) ... +so I've converted the Makefile to use that. I've also left in $(BASEDIR) as a +default to support old installs; not sure if you'd just cut it. + +Stripping should be left to the person to handle, not automatically done by +the install step. Also, `install -s` always calls `strip` which is +wrong/undesired in cross-compiling scenarios. + +Signed-off-by: Mike Frysinger +Signed-off-by: Neil Brown +--- + +diff --git a/Makefile b/Makefile +index 9e9a4b4..5343428 100644 +--- a/Makefile ++++ b/Makefile +@@ -135,13 +135,14 @@ from_local: CPPFLAGS += -DTEST + portmap.man : portmap.8 + sed $(MAN_SED) < portmap.8 > portmap.man + ++DESTDIR = $(BASEDIR) + install: all +- install -o root -g root -m 0755 -s portmap ${BASEDIR}/sbin +- install -o root -g root -m 0755 -s pmap_dump ${BASEDIR}/sbin +- install -o root -g root -m 0755 -s pmap_set ${BASEDIR}/sbin +- install -o root -g root -m 0644 portmap.man ${BASEDIR}/usr/share/man/man8/portmap.8 +- install -o root -g root -m 0644 pmap_dump.8 ${BASEDIR}/usr/share/man/man8 +- install -o root -g root -m 0644 pmap_set.8 ${BASEDIR}/usr/share/man/man8 ++ install -o root -g root -m 0755 portmap $(DESTDIR)/sbin ++ install -o root -g root -m 0755 pmap_dump $(DESTDIR)/sbin ++ install -o root -g root -m 0755 pmap_set $(DESTDIR)/sbin ++ install -o root -g root -m 0644 portmap.man $(DESTDIR)/usr/share/man/man8/portmap.8 ++ install -o root -g root -m 0644 pmap_dump.8 $(DESTDIR)/usr/share/man/man8 ++ install -o root -g root -m 0644 pmap_set.8 $(DESTDIR)/usr/share/man/man8 + + clean: + rm -f *.o portmap pmap_dump pmap_set from_local \ diff --git a/meta/recipes-connectivity/portmap/portmap-6.0/tcpd-config.patch b/meta/recipes-connectivity/portmap/portmap-6.0/tcpd-config.patch new file mode 100644 index 0000000000..da55f3799d --- /dev/null +++ b/meta/recipes-connectivity/portmap/portmap-6.0/tcpd-config.patch @@ -0,0 +1,28 @@ +From: Mike Frysinger +Date: Sun, 13 May 2007 21:17:32 +0000 (-0400) +Subject: fix building with tcpd support disabled +X-Git-Url: http://neil.brown.name/git?p=portmap;a=commitdiff_plain;h=7847207aed1b44faf077eed14a9ac9c68244eba5 + +fix building with tcpd support disabled + +Make sure pmap_check.c only includes tcpd.h when HOSTS_ACCESS is defined. + +Signed-off-by: Timothy Redaelli +Signed-off-by: Mike Frysinger +Signed-off-by: Neil Brown +--- + +diff --git a/pmap_check.c b/pmap_check.c +index 84f2c12..443a822 100644 +--- a/pmap_check.c ++++ b/pmap_check.c +@@ -44,7 +44,9 @@ + #include + #include + #endif ++#ifdef HOSTS_ACCESS + #include ++#endif + #include + #include + diff --git a/meta/recipes-connectivity/portmap/portmap.inc b/meta/recipes-connectivity/portmap/portmap.inc new file mode 100644 index 0000000000..d563ad5b5a --- /dev/null +++ b/meta/recipes-connectivity/portmap/portmap.inc @@ -0,0 +1,31 @@ +DESCRIPTION = "RPC program number mapper." +HOMEPAGE = "http://neil.brown.name/portmap/" +SECTION = "console/network" +LICENSE = "BSD" +LIC_FILES_CHKSUM = "file://portmap.c;beginline=2;endline=31;md5=51ff67e66ec84b2009b017b1f94afbf4 \ + file://from_local.c;beginline=9;endline=35;md5=1bec938a2268b8b423c58801ace3adc1" +DEPENDS = "virtual/fakeroot-native" + +SRC_URI = "${DEBIAN_MIRROR}/main/p/portmap/portmap_5.orig.tar.gz \ + ${DEBIAN_MIRROR}/main/p/portmap/portmap_${PV}.diff.gz;patch=1 \ + file://portmap.init \ + file://make.patch;apply=yes" +S = "${WORKDIR}/portmap_5beta" + +INITSCRIPT_NAME = "portmap" +INITSCRIPT_PARAMS = "start 43 S . start 32 0 6 . stop 81 1 ." + +inherit update-rc.d + +sbindir = "/sbin" + +fakeroot do_install() { + install -d ${D}${sysconfdir}/init.d + install -d ${D}${base_sbindir} + install -m 0755 ${WORKDIR}/portmap.init ${D}${sysconfdir}/init.d/portmap + oe_runmake 'docdir=${docdir}/portmap' 'DESTDIR=${D}' install +} + +PACKAGES =+ "portmap-utils" +FILES_portmap-utils = "/sbin/pmap_set /sbin/pmap_dump" +FILES_${PN}-doc += "${docdir}" diff --git a/meta/recipes-connectivity/portmap/portmap/portmap.init b/meta/recipes-connectivity/portmap/portmap/portmap.init new file mode 100755 index 0000000000..e46513e115 --- /dev/null +++ b/meta/recipes-connectivity/portmap/portmap/portmap.init @@ -0,0 +1,59 @@ +#!/bin/sh +# +### BEGIN INIT INFO +# Provides: portmap +# Required-Start: $network +# Required-Stop: $network +# Default-Start: S 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: The RPC portmapper +# Description: Portmap is a server that converts RPC (Remote +# Procedure Call) program numbers into DARPA +# protocol port numbers. It must be running in +# order to make RPC calls. Services that use +# RPC include NFS and NIS. +### END INIT INFO + +test -f /sbin/portmap || exit 0 + +case "$1" in + start) + echo "Starting portmap daemon..." + start-stop-daemon --start --quiet --exec /sbin/portmap + + if [ -f /var/run/portmap.upgrade-state ]; then + echo "Restoring old RPC service information..." + sleep 1 # needs a short pause or pmap_set won't work. :( + pmap_set /var/run/portmap.state + $0 stop + $0 start + if [ ! -f /var/run/portmap.upgrade-state ]; then + sleep 1 + pmap_set &1`" = "$PPPCONF" ] ; then + mv $ACTUALCONF $ACTUALCONF.ppporig + fi + fi + + ln -sf $PPPCONF $ACTUALCONF +fi diff --git a/meta/recipes-connectivity/ppp/ppp-2.4.5/92removedns b/meta/recipes-connectivity/ppp/ppp-2.4.5/92removedns new file mode 100644 index 0000000000..2eadec6899 --- /dev/null +++ b/meta/recipes-connectivity/ppp/ppp-2.4.5/92removedns @@ -0,0 +1,5 @@ +#!/bin/sh +ACTUALCONF=/var/run/resolv.conf +if [ -f $ACTUALCONF.ppporig ] ; then + mv $ACTUALCONF.ppporig $ACTUALCONF +fi diff --git a/meta/recipes-connectivity/ppp/ppp-2.4.5/cifdefroute.patch b/meta/recipes-connectivity/ppp/ppp-2.4.5/cifdefroute.patch new file mode 100644 index 0000000000..6473a08bc7 --- /dev/null +++ b/meta/recipes-connectivity/ppp/ppp-2.4.5/cifdefroute.patch @@ -0,0 +1,290 @@ +This patch comes from OpenEmbedded. +The original patch is from Debian / SuSE to implement replacedefaultroute +Rebased it to fit ppp-2.4.5. Dongxiao Xu + +diff -urN ppp-2.4.5-orig/pppd/ipcp.c ppp-2.4.5/pppd/ipcp.c +--- ppp-2.4.5-orig/pppd/ipcp.c 2010-06-30 15:51:12.050166398 +0800 ++++ ppp-2.4.5/pppd/ipcp.c 2010-06-30 16:40:00.478716855 +0800 +@@ -198,6 +198,16 @@ + "disable defaultroute option", OPT_ALIAS | OPT_A2CLR, + &ipcp_wantoptions[0].default_route }, + ++#ifdef __linux__ ++ { "replacedefaultroute", o_bool, ++ &ipcp_wantoptions[0].replace_default_route, ++ "Replace default route", 1 ++ }, ++ { "noreplacedefaultroute", o_bool, ++ &ipcp_allowoptions[0].replace_default_route, ++ "Never replace default route", OPT_A2COPY, ++ &ipcp_wantoptions[0].replace_default_route }, ++#endif + { "proxyarp", o_bool, &ipcp_wantoptions[0].proxy_arp, + "Add proxy ARP entry", OPT_ENABLE|1, &ipcp_allowoptions[0].proxy_arp }, + { "noproxyarp", o_bool, &ipcp_allowoptions[0].proxy_arp, +@@ -271,7 +281,7 @@ + ip_active_pkt + }; + +-static void ipcp_clear_addrs __P((int, u_int32_t, u_int32_t)); ++static void ipcp_clear_addrs __P((int, u_int32_t, u_int32_t, bool)); + static void ipcp_script __P((char *, int)); /* Run an up/down script */ + static void ipcp_script_done __P((void *)); + +@@ -1742,7 +1752,12 @@ + if (!sifnpmode(u, PPP_IP, NPMODE_QUEUE)) + return 0; + if (wo->default_route) ++#ifndef __linux__ + if (sifdefaultroute(u, wo->ouraddr, wo->hisaddr)) ++#else ++ if (sifdefaultroute(u, wo->ouraddr, wo->hisaddr, ++ wo->replace_default_route)) ++#endif + default_route_set[u] = 1; + if (wo->proxy_arp) + if (sifproxyarp(u, wo->hisaddr)) +@@ -1830,7 +1845,8 @@ + */ + if (demand) { + if (go->ouraddr != wo->ouraddr || ho->hisaddr != wo->hisaddr) { +- ipcp_clear_addrs(f->unit, wo->ouraddr, wo->hisaddr); ++ ipcp_clear_addrs(f->unit, wo->ouraddr, wo->hisaddr, ++ wo->replace_default_route); + if (go->ouraddr != wo->ouraddr) { + warn("Local IP address changed to %I", go->ouraddr); + script_setenv("OLDIPLOCAL", ip_ntoa(wo->ouraddr), 0); +@@ -1855,7 +1871,12 @@ + + /* assign a default route through the interface if required */ + if (ipcp_wantoptions[f->unit].default_route) ++#ifndef __linux__ + if (sifdefaultroute(f->unit, go->ouraddr, ho->hisaddr)) ++#else ++ if (sifdefaultroute(f->unit, go->ouraddr, ho->hisaddr, ++ wo->replace_default_route)) ++#endif + default_route_set[f->unit] = 1; + + /* Make a proxy ARP entry if requested. */ +@@ -1905,7 +1926,12 @@ + + /* assign a default route through the interface if required */ + if (ipcp_wantoptions[f->unit].default_route) ++#ifndef __linux__ + if (sifdefaultroute(f->unit, go->ouraddr, ho->hisaddr)) ++#else ++ if (sifdefaultroute(f->unit, go->ouraddr, ho->hisaddr, ++ wo->replace_default_route)) ++#endif + default_route_set[f->unit] = 1; + + /* Make a proxy ARP entry if requested. */ +@@ -1983,7 +2009,7 @@ + sifnpmode(f->unit, PPP_IP, NPMODE_DROP); + sifdown(f->unit); + ipcp_clear_addrs(f->unit, ipcp_gotoptions[f->unit].ouraddr, +- ipcp_hisoptions[f->unit].hisaddr); ++ ipcp_hisoptions[f->unit].hisaddr, 0); + } + + /* Execute the ip-down script */ +@@ -1999,12 +2025,21 @@ + * proxy arp entries, etc. + */ + static void +-ipcp_clear_addrs(unit, ouraddr, hisaddr) ++ipcp_clear_addrs(unit, ouraddr, hisaddr, replacedefaultroute) + int unit; + u_int32_t ouraddr; /* local address */ + u_int32_t hisaddr; /* remote address */ ++ bool replacedefaultroute; + { +- if (proxy_arp_set[unit]) { ++ /* If replacedefaultroute, sifdefaultroute will be called soon ++ * with replacedefaultroute set and that will overwrite the current ++ * default route. This is the case only when doing demand, otherwise ++ * during demand, this cifdefaultroute would restore the old default ++ * route which is not what we want in this case. In the non-demand ++ * case, we'll delete the default route and restore the old if there ++ * is one saved by an sifdefaultroute with replacedefaultroute. ++ */ ++ if (!replacedefaultroute && default_route_set[unit]) { + cifproxyarp(unit, hisaddr); + proxy_arp_set[unit] = 0; + } +diff -urN ppp-2.4.5-orig/pppd/ipcp.h ppp-2.4.5/pppd/ipcp.h +--- ppp-2.4.5-orig/pppd/ipcp.h 2010-06-30 15:51:12.043682063 +0800 ++++ ppp-2.4.5/pppd/ipcp.h 2010-06-30 16:40:49.586203129 +0800 +@@ -70,6 +70,7 @@ + bool old_addrs; /* Use old (IP-Addresses) option? */ + bool req_addr; /* Ask peer to send IP address? */ + bool default_route; /* Assign default route through interface? */ ++ bool replace_default_route; /* Replace default route through interface? */ + bool proxy_arp; /* Make proxy ARP entry for peer? */ + bool neg_vj; /* Van Jacobson Compression? */ + bool old_vj; /* use old (short) form of VJ option? */ +diff -urN ppp-2.4.5-orig/pppd/pppd.8 ppp-2.4.5/pppd/pppd.8 +--- ppp-2.4.5-orig/pppd/pppd.8 2010-06-30 15:51:12.043682063 +0800 ++++ ppp-2.4.5/pppd/pppd.8 2010-06-30 16:42:47.102413859 +0800 +@@ -121,6 +121,13 @@ + This entry is removed when the PPP connection is broken. This option + is privileged if the \fInodefaultroute\fR option has been specified. + .TP ++.B replacedefaultroute ++This option is a flag to the defaultroute option. If defaultroute is ++set and this flag is also set, pppd replaces an existing default route ++with the new default route. ++ ++ ++.TP + .B disconnect \fIscript + Execute the command specified by \fIscript\fR, by passing it to a + shell, after +@@ -717,7 +724,12 @@ + .TP + .B nodefaultroute + Disable the \fIdefaultroute\fR option. The system administrator who +-wishes to prevent users from creating default routes with pppd ++wishes to prevent users from adding a default route with pppd ++can do so by placing this option in the /etc/ppp/options file. ++.TP ++.B noreplacedefaultroute ++Disable the \fIreplacedefaultroute\fR option. The system administrator who ++wishes to prevent users from replacing a default route with pppd + can do so by placing this option in the /etc/ppp/options file. + .TP + .B nodeflate +diff -urN ppp-2.4.5-orig/pppd/pppd.h ppp-2.4.5/pppd/pppd.h +--- ppp-2.4.5-orig/pppd/pppd.h 2010-06-30 15:51:12.050166398 +0800 ++++ ppp-2.4.5/pppd/pppd.h 2010-06-30 16:43:36.514148327 +0800 +@@ -643,7 +643,11 @@ + int cif6addr __P((int, eui64_t, eui64_t)); + /* Remove an IPv6 address from i/f */ + #endif ++#ifndef __linux__ + int sifdefaultroute __P((int, u_int32_t, u_int32_t)); ++#else ++int sifdefaultroute __P((int, u_int32_t, u_int32_t, bool replace_default_rt)); ++#endif + /* Create default route through i/f */ + int cifdefaultroute __P((int, u_int32_t, u_int32_t)); + /* Delete default route through i/f */ +diff -urN ppp-2.4.5-orig/pppd/sys-linux.c ppp-2.4.5/pppd/sys-linux.c +--- ppp-2.4.5-orig/pppd/sys-linux.c 2010-06-30 15:51:12.050166398 +0800 ++++ ppp-2.4.5/pppd/sys-linux.c 2010-06-30 16:54:00.362716231 +0800 +@@ -206,6 +206,8 @@ + + static int if_is_up; /* Interface has been marked up */ + static int have_default_route; /* Gateway for default route added */ ++static struct rtentry old_def_rt; /* Old default route */ ++static int default_rt_repl_rest; /* replace and restore old default rt */ + static u_int32_t proxy_arp_addr; /* Addr for proxy arp entry added */ + static char proxy_arp_dev[16]; /* Device for proxy arp entry */ + static u_int32_t our_old_addr; /* for detecting address changes */ +@@ -1537,6 +1539,9 @@ + p = NULL; + } + ++ SET_SA_FAMILY (rt->rt_dst, AF_INET); ++ SET_SA_FAMILY (rt->rt_gateway, AF_INET); ++ + SIN_ADDR(rt->rt_dst) = strtoul(cols[route_dest_col], NULL, 16); + SIN_ADDR(rt->rt_gateway) = strtoul(cols[route_gw_col], NULL, 16); + SIN_ADDR(rt->rt_genmask) = strtoul(cols[route_mask_col], NULL, 16); +@@ -1606,20 +1611,51 @@ + /******************************************************************** + * + * sifdefaultroute - assign a default route through the address given. +- */ +- +-int sifdefaultroute (int unit, u_int32_t ouraddr, u_int32_t gateway) +-{ +- struct rtentry rt; +- +- if (defaultroute_exists(&rt) && strcmp(rt.rt_dev, ifname) != 0) { +- if (rt.rt_flags & RTF_GATEWAY) +- error("not replacing existing default route via %I", +- SIN_ADDR(rt.rt_gateway)); +- else +- error("not replacing existing default route through %s", +- rt.rt_dev); +- return 0; ++ * ++ * If the global default_rt_repl_rest flag is set, then this function ++ * already replaced the original system defaultroute with some other ++ * route and it should just replace the current defaultroute with ++ * another one, without saving the current route. Use: demand mode, ++ * when pppd sets first a defaultroute it it's temporary ppp0 addresses ++ * and then changes the temporary addresses to the addresses for the real ++ * ppp connection when it has come up. ++ */ ++ ++int sifdefaultroute (int unit, u_int32_t ouraddr, u_int32_t gateway, bool replace) ++{ ++ struct rtentry rt, tmp_rt; ++ struct rtentry *del_rt = NULL; ++ ++ if (default_rt_repl_rest) { ++ /* We have already reclaced the original defaultroute, if we ++ * are called again, we will delete the current default route ++ * and set the new default route in this function. ++ * - this is normally only the case the doing demand: */ ++ if (defaultroute_exists( &tmp_rt )) ++ del_rt = &tmp_rt; ++ } else if ( defaultroute_exists( &old_def_rt ) && ++ strcmp( old_def_rt.rt_dev, ifname ) != 0) { ++ /* We did not yet replace an existing default route, let's ++ * check if we should save and replace a default route: ++ */ ++ u_int32_t old_gateway = SIN_ADDR(old_def_rt.rt_gateway); ++ if (old_gateway != gateway) { ++ if (!replace) { ++ error("not replacing default route to %s [%I]", ++ old_def_rt.rt_dev, old_gateway); ++ return 0; ++ } else { ++ // we need to copy rt_dev because we need it permanent too: ++ char * tmp_dev = malloc(strlen(old_def_rt.rt_dev)+1); ++ strcpy(tmp_dev, old_def_rt.rt_dev); ++ old_def_rt.rt_dev = tmp_dev; ++ ++ notice("replacing old default route to %s [%I]", ++ old_def_rt.rt_dev, old_gateway); ++ default_rt_repl_rest = 1; ++ del_rt = &old_def_rt; ++ } ++ } + } + + memset (&rt, 0, sizeof (rt)); +@@ -1638,6 +1674,12 @@ + error("default route ioctl(SIOCADDRT): %m"); + return 0; + } ++ if (default_rt_repl_rest && del_rt) ++ if (ioctl(sock_fd, SIOCDELRT, del_rt) < 0) { ++ if ( ! ok_error ( errno )) ++ error("del old default route ioctl(SIOCDELRT): %m(%d)", errno); ++ return 0; ++ } + + have_default_route = 1; + return 1; +@@ -1673,6 +1715,16 @@ + return 0; + } + } ++ if (default_rt_repl_rest) { ++ notice("restoring old default route to %s [%I]", ++ old_def_rt.rt_dev, SIN_ADDR(old_def_rt.rt_gateway)); ++ if (ioctl(sock_fd, SIOCADDRT, &old_def_rt) < 0) { ++ if ( ! ok_error ( errno )) ++ error("restore default route ioctl(SIOCADDRT): %m(%d)", errno); ++ return 0; ++ } ++ default_rt_repl_rest = 0; ++ } + + return 1; + } diff --git a/meta/recipes-connectivity/ppp/ppp-2.4.5/enable-ipv6.patch b/meta/recipes-connectivity/ppp/ppp-2.4.5/enable-ipv6.patch new file mode 100644 index 0000000000..daa7f2ecc6 --- /dev/null +++ b/meta/recipes-connectivity/ppp/ppp-2.4.5/enable-ipv6.patch @@ -0,0 +1,13 @@ +The patch comes from OpenEmbedded + +--- ppp-2.4.3/pppd/Makefile.linux.orig 2005-10-28 21:07:40.396359250 +0100 ++++ ppp-2.4.3/pppd/Makefile.linux 2005-10-28 21:07:54.217223000 +0100 +@@ -62,7 +62,7 @@ + + HAS_SHADOW=y + #USE_PAM=y +-#HAVE_INET6=y ++HAVE_INET6=y + + # Enable plugins + PLUGIN=y diff --git a/meta/recipes-connectivity/ppp/ppp-2.4.5/init b/meta/recipes-connectivity/ppp/ppp-2.4.5/init new file mode 100755 index 0000000000..5b3b7abe2f --- /dev/null +++ b/meta/recipes-connectivity/ppp/ppp-2.4.5/init @@ -0,0 +1,50 @@ +#!/bin/sh +# +# /etc/init.d/ppp: start or stop PPP link. +# +# If you want PPP started on boot time (most dialup systems won't need it) +# rename the /etc/ppp/no_ppp_on_boot file to /etc/ppp/ppp_on_boot, and +# follow the instructions in the comments in that file. + +test -x /usr/sbin/pppd -a -f /etc/ppp/ppp_on_boot || exit 0 +if [ -x /etc/ppp/ppp_on_boot ]; then RUNFILE=1; fi + +case "$1" in + start) + echo -n "Starting up PPP link: pppd" + if [ "$RUNFILE" = "1" ]; then + /etc/ppp/ppp_on_boot + else + pppd call provider + fi + echo "." + ;; + stop) + echo -n "Shutting down PPP link: pppd" + if [ "$RUNFILE" = "1" ]; then + poff + else + poff provider + fi + echo "." + ;; + restart|force-reload) + echo -n "Restarting PPP link: pppd" + if [ "$RUNFILE" = "1" ]; then + poff + sleep 5 + /etc/ppp/ppp_on_boot + else + poff provider + sleep 5 + pppd call provider + fi + echo "." + ;; + *) + echo "Usage: /etc/init.d/ppp {start|stop|restart|force-reload}" + exit 1 + ;; +esac + +exit 0 diff --git a/meta/recipes-connectivity/ppp/ppp-2.4.5/ip-down b/meta/recipes-connectivity/ppp/ppp-2.4.5/ip-down new file mode 100755 index 0000000000..06d35487a5 --- /dev/null +++ b/meta/recipes-connectivity/ppp/ppp-2.4.5/ip-down @@ -0,0 +1,43 @@ +#!/bin/sh +# +# $Id: ip-down,v 1.2 1998/02/10 21:21:55 phil Exp $ +# +# This script is run by the pppd _after_ the link is brought down. +# It uses run-parts to run scripts in /etc/ppp/ip-down.d, so to delete +# routes, unset IP addresses etc. you should create script(s) there. +# +# Be aware that other packages may include /etc/ppp/ip-down.d scripts (named +# after that package), so choose local script names with that in mind. +# +# This script is called with the following arguments: +# Arg Name Example +# $1 Interface name ppp0 +# $2 The tty ttyS1 +# $3 The link speed 38400 +# $4 Local IP number 12.34.56.78 +# $5 Peer IP number 12.34.56.99 +# $6 Optional ``ipparam'' value foo + +# The environment is cleared before executing this script +# so the path must be reset +PATH=/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin +export PATH +# These variables are for the use of the scripts run by run-parts +PPP_IFACE="$1" +PPP_TTY="$2" +PPP_SPEED="$3" +PPP_LOCAL="$4" +PPP_REMOTE="$5" +PPP_IPPARAM="$6" +export PPP_IFACE PPP_TTY PPP_SPEED PPP_LOCAL PPP_REMOTE PPP_IPPARAM + +# as an additional convenience, $PPP_TTYNAME is set to the tty name, +# stripped of /dev/ (if present) for easier matching. +PPP_TTYNAME=`/usr/bin/basename "$2"` +export PPP_TTYNAME + +# Main Script starts here + +run-parts /etc/ppp/ip-down.d + +# last line diff --git a/meta/recipes-connectivity/ppp/ppp-2.4.5/ip-up b/meta/recipes-connectivity/ppp/ppp-2.4.5/ip-up new file mode 100755 index 0000000000..fc2fae9fe0 --- /dev/null +++ b/meta/recipes-connectivity/ppp/ppp-2.4.5/ip-up @@ -0,0 +1,44 @@ +#!/bin/sh +# +# $Id: ip-up,v 1.2 1998/02/10 21:25:34 phil Exp $ +# +# This script is run by the pppd after the link is established. +# It uses run-parts to run scripts in /etc/ppp/ip-up.d, so to add routes, +# set IP address, run the mailq etc. you should create script(s) there. +# +# Be aware that other packages may include /etc/ppp/ip-up.d scripts (named +# after that package), so choose local script names with that in mind. +# +# This script is called with the following arguments: +# Arg Name Example +# $1 Interface name ppp0 +# $2 The tty ttyS1 +# $3 The link speed 38400 +# $4 Local IP number 12.34.56.78 +# $5 Peer IP number 12.34.56.99 +# $6 Optional ``ipparam'' value foo + +# The environment is cleared before executing this script +# so the path must be reset +PATH=/usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin +export PATH +# These variables are for the use of the scripts run by run-parts +PPP_IFACE="$1" +PPP_TTY="$2" +PPP_SPEED="$3" +PPP_LOCAL="$4" +PPP_REMOTE="$5" +PPP_IPPARAM="$6" +export PPP_IFACE PPP_TTY PPP_SPEED PPP_LOCAL PPP_REMOTE PPP_IPPARAM + + +# as an additional convenience, $PPP_TTYNAME is set to the tty name, +# stripped of /dev/ (if present) for easier matching. +PPP_TTYNAME=`/usr/bin/basename "$2"` +export PPP_TTYNAME + +# Main Script starts here + +run-parts /etc/ppp/ip-up.d + +# last line diff --git a/meta/recipes-connectivity/ppp/ppp-2.4.5/makefile-remove-hard-usr-reference.patch b/meta/recipes-connectivity/ppp/ppp-2.4.5/makefile-remove-hard-usr-reference.patch new file mode 100644 index 0000000000..9ba868839e --- /dev/null +++ b/meta/recipes-connectivity/ppp/ppp-2.4.5/makefile-remove-hard-usr-reference.patch @@ -0,0 +1,19 @@ +The patch comes from OpenEmbedded. +Rebased for ppp-2.4.5. Dongxiao Xu + +diff -urN ppp-2.4.5-orig/pppd/Makefile.linux ppp-2.4.5/pppd/Makefile.linux +--- ppp-2.4.5-orig/pppd/Makefile.linux 2010-06-30 15:51:12.043682063 +0800 ++++ ppp-2.4.5/pppd/Makefile.linux 2010-06-30 17:08:21.806363042 +0800 +@@ -117,10 +117,10 @@ + #LIBS += -lshadow $(LIBS) + endif + +-ifneq ($(wildcard /usr/include/crypt.h),) ++#ifneq ($(wildcard /usr/include/crypt.h),) + CFLAGS += -DHAVE_CRYPT_H=1 + LIBS += -lcrypt +-endif ++#endif + + ifdef NEEDDES + ifndef USE_CRYPT diff --git a/meta/recipes-connectivity/ppp/ppp-2.4.5/makefile.patch b/meta/recipes-connectivity/ppp/ppp-2.4.5/makefile.patch new file mode 100644 index 0000000000..94af5af6de --- /dev/null +++ b/meta/recipes-connectivity/ppp/ppp-2.4.5/makefile.patch @@ -0,0 +1,93 @@ +The patch comes from OpenEmbedded +Rebased for ppp-2.4.5. Dongxiao Xu + +diff -ruN ppp-2.4.5-orig/chat/Makefile.linux ppp-2.4.5/chat/Makefile.linux +--- ppp-2.4.5-orig/chat/Makefile.linux 2010-06-30 15:51:12.050166398 +0800 ++++ ppp-2.4.5/chat/Makefile.linux 2010-06-30 15:51:30.450118446 +0800 +@@ -25,7 +25,7 @@ + + install: chat + mkdir -p $(BINDIR) $(MANDIR) +- $(INSTALL) -s -c chat $(BINDIR) ++ $(INSTALL) -c chat $(BINDIR) + $(INSTALL) -c -m 644 chat.8 $(MANDIR) + + clean: +diff -ruN ppp-2.4.5-orig/pppd/Makefile.linux ppp-2.4.5/pppd/Makefile.linux +--- ppp-2.4.5-orig/pppd/Makefile.linux 2010-06-30 15:51:12.043682063 +0800 ++++ ppp-2.4.5/pppd/Makefile.linux 2010-06-30 15:52:11.214170607 +0800 +@@ -99,7 +99,7 @@ + CFLAGS += -DUSE_SRP -DOPENSSL -I/usr/local/ssl/include + LIBS += -lsrp -L/usr/local/ssl/lib -lcrypto + TARGETS += srp-entry +-EXTRAINSTALL = $(INSTALL) -s -c -m 555 srp-entry $(BINDIR)/srp-entry ++EXTRAINSTALL = $(INSTALL) -c -m 555 srp-entry $(BINDIR)/srp-entry + MANPAGES += srp-entry.8 + EXTRACLEAN += srp-entry.o + NEEDDES=y +@@ -200,7 +200,7 @@ + install: pppd + mkdir -p $(BINDIR) $(MANDIR) + $(EXTRAINSTALL) +- $(INSTALL) -s -c -m 555 pppd $(BINDIR)/pppd ++ $(INSTALL) -c -m 555 pppd $(BINDIR)/pppd + if chgrp pppusers $(BINDIR)/pppd 2>/dev/null; then \ + chmod o-rx,u+s $(BINDIR)/pppd; fi + $(INSTALL) -c -m 444 pppd.8 $(MANDIR) +diff -ruN ppp-2.4.5-orig/pppd/plugins/radius/Makefile.linux ppp-2.4.5/pppd/plugins/radius/Makefile.linux +--- ppp-2.4.5-orig/pppd/plugins/radius/Makefile.linux 2010-06-30 15:51:12.047676187 +0800 ++++ ppp-2.4.5/pppd/plugins/radius/Makefile.linux 2010-06-30 15:53:47.750182267 +0800 +@@ -36,11 +36,11 @@ + + install: all + $(INSTALL) -d -m 755 $(LIBDIR) +- $(INSTALL) -s -c -m 755 radius.so $(LIBDIR) +- $(INSTALL) -s -c -m 755 radattr.so $(LIBDIR) +- $(INSTALL) -s -c -m 755 radrealms.so $(LIBDIR) +- $(INSTALL) -c -m 444 pppd-radius.8 $(MANDIR) +- $(INSTALL) -c -m 444 pppd-radattr.8 $(MANDIR) ++ $(INSTALL) -c -m 755 radius.so $(LIBDIR) ++ $(INSTALL) -c -m 755 radattr.so $(LIBDIR) ++ $(INSTALL) -c -m 755 radrealms.so $(LIBDIR) ++ $(INSTALL) -m 444 pppd-radius.8 $(MANDIR) ++ $(INSTALL) -m 444 pppd-radattr.8 $(MANDIR) + + radius.so: radius.o libradiusclient.a + $(CC) -o radius.so -shared radius.o libradiusclient.a +diff -ruN ppp-2.4.5-orig/pppd/plugins/rp-pppoe/Makefile.linux ppp-2.4.5/pppd/plugins/rp-pppoe/Makefile.linux +--- ppp-2.4.5-orig/pppd/plugins/rp-pppoe/Makefile.linux 2010-06-30 15:51:12.047676187 +0800 ++++ ppp-2.4.5/pppd/plugins/rp-pppoe/Makefile.linux 2010-06-30 15:53:15.454486877 +0800 +@@ -43,9 +43,9 @@ + + install: all + $(INSTALL) -d -m 755 $(LIBDIR) +- $(INSTALL) -s -c -m 4550 rp-pppoe.so $(LIBDIR) ++ $(INSTALL) -c -m 4550 rp-pppoe.so $(LIBDIR) + $(INSTALL) -d -m 755 $(BINDIR) +- $(INSTALL) -s -c -m 555 pppoe-discovery $(BINDIR) ++ $(INSTALL) -c -m 555 pppoe-discovery $(BINDIR) + + clean: + rm -f *.o *.so pppoe-discovery +diff -ruN ppp-2.4.5-orig/pppdump/Makefile.linux ppp-2.4.5/pppdump/Makefile.linux +--- ppp-2.4.5-orig/pppdump/Makefile.linux 2010-06-30 15:51:12.058183383 +0800 ++++ ppp-2.4.5/pppdump/Makefile.linux 2010-06-30 15:52:25.762183537 +0800 +@@ -17,5 +17,5 @@ + + install: + mkdir -p $(BINDIR) $(MANDIR) +- $(INSTALL) -s -c pppdump $(BINDIR) ++ $(INSTALL) -c pppdump $(BINDIR) + $(INSTALL) -c -m 444 pppdump.8 $(MANDIR) +diff -ruN ppp-2.4.5-orig/pppstats/Makefile.linux ppp-2.4.5/pppstats/Makefile.linux +--- ppp-2.4.5-orig/pppstats/Makefile.linux 2010-06-30 15:51:12.058183383 +0800 ++++ ppp-2.4.5/pppstats/Makefile.linux 2010-06-30 15:52:42.486341081 +0800 +@@ -22,7 +22,7 @@ + + install: pppstats + -mkdir -p $(MANDIR) +- $(INSTALL) -s -c pppstats $(BINDIR) ++ $(INSTALL) -c pppstats $(BINDIR) + $(INSTALL) -c -m 444 pppstats.8 $(MANDIR) + + pppstats: $(PPPSTATSRCS) diff --git a/meta/recipes-connectivity/ppp/ppp-2.4.5/poff b/meta/recipes-connectivity/ppp/ppp-2.4.5/poff new file mode 100644 index 0000000000..0521a9406a --- /dev/null +++ b/meta/recipes-connectivity/ppp/ppp-2.4.5/poff @@ -0,0 +1,26 @@ +#!/bin/sh + +# Lets see how many pppds are running.... +set -- `cat /var/run/ppp*.pid 2>/dev/null` + +case $# in + 0) # pppd only creates a pid file once ppp is up, so let's try killing pppd + # on the assumption that we've not got that far yet. + killall pppd + ;; + 1) # If only one was running then it can be killed (apparently killall + # caused problems for some, so lets try killing the pid from the file) + kill $1 + ;; + *) # More than one! Aieehh.. Dont know which one to kill. + echo "More than one pppd running. None stopped" + exit 1 + ;; +esac + +if [ -r /var/run/ppp-quick ] +then + rm -f /var/run/ppp-quick +fi + +exit 0 diff --git a/meta/recipes-connectivity/ppp/ppp-2.4.5/pon b/meta/recipes-connectivity/ppp/ppp-2.4.5/pon new file mode 100644 index 0000000000..91c059501a --- /dev/null +++ b/meta/recipes-connectivity/ppp/ppp-2.4.5/pon @@ -0,0 +1,9 @@ +#!/bin/sh + +if [ "$1" = "quick" ] +then + touch /var/run/ppp-quick + shift +fi + +/usr/sbin/pppd call ${1:-provider} diff --git a/meta/recipes-connectivity/ppp/ppp-2.4.5/pppd-resolv-varrun.patch b/meta/recipes-connectivity/ppp/ppp-2.4.5/pppd-resolv-varrun.patch new file mode 100644 index 0000000000..c4e61fdd28 --- /dev/null +++ b/meta/recipes-connectivity/ppp/ppp-2.4.5/pppd-resolv-varrun.patch @@ -0,0 +1,43 @@ +The patch comes from OpenEmbedded +Rebased for ppp-2.4.5. Dongxiao Xu + +diff -ruN ppp-2.4.5-orig/pppd/ipcp.c ppp-2.4.5/pppd/ipcp.c +--- ppp-2.4.5-orig/pppd/ipcp.c 2010-06-30 15:51:12.050166398 +0800 ++++ ppp-2.4.5/pppd/ipcp.c 2010-06-30 17:02:33.930393283 +0800 +@@ -55,6 +55,8 @@ + #include + #include + #include ++#include ++#include + + #include "pppd.h" + #include "fsm.h" +@@ -2095,6 +2097,14 @@ + u_int32_t peerdns1, peerdns2; + { + FILE *f; ++ struct stat dirinfo; ++ ++ if(stat(_PATH_OUTDIR, &dirinfo)) { ++ if(mkdir(_PATH_OUTDIR, 0775)) { ++ error("Failed to create directory %s: %m", _PATH_OUTDIR); ++ return; ++ } ++ } + + f = fopen(_PATH_RESOLV, "w"); + if (f == NULL) { +diff -ruN ppp-2.4.5-orig/pppd/pathnames.h ppp-2.4.5/pppd/pathnames.h +--- ppp-2.4.5-orig/pppd/pathnames.h 2010-06-30 15:51:12.043682063 +0800 ++++ ppp-2.4.5/pppd/pathnames.h 2010-06-30 17:03:20.594371055 +0800 +@@ -30,7 +30,8 @@ + #define _PATH_TTYOPT _ROOT_PATH "/etc/ppp/options." + #define _PATH_CONNERRS _ROOT_PATH "/etc/ppp/connect-errors" + #define _PATH_PEERFILES _ROOT_PATH "/etc/ppp/peers/" +-#define _PATH_RESOLV _ROOT_PATH "/etc/ppp/resolv.conf" ++#define _PATH_OUTDIR _ROOT_PATH _PATH_VARRUN "/ppp" ++#define _PATH_RESOLV _PATH_OUTDIR "/resolv.conf" + + #define _PATH_USEROPT ".ppprc" + #define _PATH_PSEUDONYM ".ppp_pseudonym" diff --git a/meta/recipes-connectivity/ppp/ppp_2.4.5.bb b/meta/recipes-connectivity/ppp/ppp_2.4.5.bb new file mode 100644 index 0000000000..e9caf3d13e --- /dev/null +++ b/meta/recipes-connectivity/ppp/ppp_2.4.5.bb @@ -0,0 +1,77 @@ +DESCRIPTION = "ppp (Paul's PPP Package) is an open source package which implements \ +the Point-to-Point Protocol (PPP) on Linux and Solaris systems." +SECTION = "console/network" +HOMEPAGE = "http://samba.org/ppp/" +BUGTRACKER = "http://ppp.samba.org/cgi-bin/ppp-bugs" +DEPENDS = "libpcap" +LICENSE = "BSD & GPLv2+ & LGPLv2+ & public domain" +LIC_FILES_CHKSUM = "file://pppd/ccp.c;beginline=1;endline=29;md5=e2c43fe6e81ff77d87dc9c290a424dea \ + file://pppd/plugins/passprompt.c;beginline=1;endline=10;md5=3bcbcdbf0e369c9a3e0b8c8275b065d8 \ + file://pppd/tdb.c;beginline=1;endline=27;md5=4ca3a9991b011038d085d6675ae7c4e6 \ + file://chat/chat.c;beginline=1;endline=15;md5=0d374b8545ee5c62d7aff1acbd38add2" +PR = "r0" + +SRC_URI = "http://ppp.samba.org/ftp/ppp/ppp-${PV}.tar.gz \ + file://makefile.patch \ + file://cifdefroute.patch \ + file://pppd-resolv-varrun.patch \ + file://enable-ipv6.patch \ + file://makefile-remove-hard-usr-reference.patch \ + file://pon \ + file://poff \ + file://init \ + file://ip-up \ + file://ip-down \ + file://08setupdns \ + file://92removedns" + +SRC_URI_append_nylon = " file://ppp-tdbread.patch;patch=1" + +inherit autotools + +EXTRA_OEMAKE = "STRIPPROG=${STRIP} MANDIR=${D}${datadir}/man/man8 INCDIR=${D}/usr/include LIBDIR=${D}/usr/lib/pppd/${PV} BINDIR=${D}/usr/sbin" +EXTRA_OECONF = "--disable-strip" + +do_install_append () { + make install-etcppp ETCDIR=${D}/${sysconfdir}/ppp + mkdir -p ${D}${bindir}/ ${D}${sysconfdir}/init.d + mkdir -p ${D}${sysconfdir}/ppp/ip-up.d/ + mkdir -p ${D}${sysconfdir}/ppp/ip-down.d/ + install -m 0755 ${WORKDIR}/pon ${D}${bindir}/pon + install -m 0755 ${WORKDIR}/poff ${D}${bindir}/poff + install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/ppp + install -m 0755 ${WORKDIR}/ip-up ${D}${sysconfdir}/ppp/ + install -m 0755 ${WORKDIR}/ip-down ${D}${sysconfdir}/ppp/ + install -m 0755 ${WORKDIR}/08setupdns ${D}${sysconfdir}/ppp/ip-up.d/ + install -m 0755 ${WORKDIR}/92removedns ${D}${sysconfdir}/ppp/ip-down.d/ + rm -rf ${D}/${mandir}/man8/man8 +} + +CONFFILES_${PN} = "${sysconfdir}/ppp/pap-secrets ${sysconfdir}/ppp/chap-secrets ${sysconfdir}/ppp/options" +PACKAGES += "ppp-oa ppp-oe ppp-radius ppp-winbind ppp-minconn ppp-password ppp-tools" +FILES_${PN} = "/etc /usr/bin /usr/sbin/chat /usr/sbin/pppd" +FILES_${PN}_nylon = "/etc /usr/bin /usr/sbin/chat /usr/sbin/pppd /usr/sbin/tdbread" +FILES_${PN}-dbg += "${libdir}/pppd/2.4.3/.debug" +FILES_ppp-oa = "/usr/lib/pppd/2.4.3/pppoatm.so" +FILES_ppp-oe = "/usr/sbin/pppoe-discovery /usr/lib/pppd/2.4.3/rp-pppoe.so" +FILES_ppp-radius = "/usr/lib/pppd/2.4.3/radius.so /usr/lib/pppd/2.4.3/radattr.so /usr/lib/pppd/2.4.3/radrealms.so" +FILES_ppp-winbind = "/usr/lib/pppd/2.4.3/winbind.so" +FILES_ppp-minconn = "/usr/lib/pppd/2.4.3/minconn.so" +FILES_ppp-password = "/usr/lib/pppd/2.4.3/pass*.so" +FILES_ppp-tools = "/usr/sbin/pppstats /usr/sbin/pppdump" +DESCRIPTION_ppp-oa = "Plugin for PPP needed for PPP-over-ATM" +DESCRIPTION_ppp-oe = "Plugin for PPP needed for PPP-over-Ethernet" +DESCRIPTION_ppp-radius = "Plugin for PPP that are related to RADIUS" +DESCRIPTION_ppp-winbind = "Plugin for PPP to authenticate against Samba or Windows" +DESCRIPTION_ppp-minconn = "Plugin for PPP to specify a minimum connect time before the idle timeout applies" +DESCRIPTION_ppp-password = "Plugin for PPP to get passwords via a pipe" +DESCRIPTION_ppp-tools = "The pppdump and pppstats utitilities" +RDEPENDS_ppp_minconn += "libpcap0.8" + +pkg_postinst_${PN}() { +if test "x$D" != "x"; then + exit 1 +else + chmod u+s ${sbindir}/pppd +fi +} diff --git a/meta/recipes-connectivity/resolvconf/resolvconf_1.43.bb b/meta/recipes-connectivity/resolvconf/resolvconf_1.43.bb new file mode 100644 index 0000000000..f751f17e0e --- /dev/null +++ b/meta/recipes-connectivity/resolvconf/resolvconf_1.43.bb @@ -0,0 +1,30 @@ +DESCRIPTION = "Resolvconf is a framework for keeping track of the system's \ +information about currently available nameservers. It sets \ +itself up as the intermediary between programs that supply \ +nameserver information and programs that need nameserver \ +information." +SECTION = "console/network" +LICENSE = "GPL" +AUTHOR = "Thomas Hood" +HOMEPAGE = "http://packages.debian.org/resolvconf" +DEPENDS = "bash" +RDEPENDS = "bash" +PR = "r1" + +SRC_URI = "${DEBIAN_MIRROR}/main/r/resolvconf/resolvconf_${PV}.tar.gz" + +do_compile () { + : +} + +do_install () { + install -d ${D}${sysconfdir} ${D}${sbindir} ${D}${base_sbindir} ${D}${localstatedir}/volatile/run/resolvconf/interface + install -d ${D}${mandir}/man8 ${D}${docdir}/${P} + cp -pPR etc/* ${D}${sysconfdir}/ + install -m 0755 bin/resolvconf ${D}${base_sbindir}/ + install -m 0644 README ${D}${docdir}/${P}/ + install -m 0644 man/resolvconf.8 ${D}${mandir}/man8/ +} + +PACKAGE_ARCH = "all" + diff --git a/meta/recipes-connectivity/wbxml/files/no-doc-install.patch b/meta/recipes-connectivity/wbxml/files/no-doc-install.patch new file mode 100644 index 0000000000..16084e60e6 --- /dev/null +++ b/meta/recipes-connectivity/wbxml/files/no-doc-install.patch @@ -0,0 +1,15 @@ +--- wbxml2-0.9.2/Makefile.am.old 2007-01-03 19:50:24.000000000 +0000 ++++ wbxml2-0.9.2/Makefile.am 2007-01-03 19:50:39.000000000 +0000 +@@ -24,9 +24,9 @@ + TODO\ + doxygen.h + +-install-data-local: +- $(mkinstalldirs) $(DESTDIR)$(wbxmldocdir)/manual +- cp -Rp doc/* $(DESTDIR)$(wbxmldocdir)/manual ++#install-data-local: ++# $(mkinstalldirs) $(DESTDIR)$(wbxmldocdir)/manual ++# cp -Rp doc/* $(DESTDIR)$(wbxmldocdir)/manual + + dist-bz2: distdir + sed -e "s/tar.gz/tar.bz2/g" $(distdir)/wbxml2.spec > $(distdir)/wbxml2.spec.aux diff --git a/meta/recipes-connectivity/wbxml/wbxml2_0.9.2.bb b/meta/recipes-connectivity/wbxml/wbxml2_0.9.2.bb new file mode 100644 index 0000000000..b8ba8c747f --- /dev/null +++ b/meta/recipes-connectivity/wbxml/wbxml2_0.9.2.bb @@ -0,0 +1,20 @@ +DESCRIPTION = "parser for wbxml" +LICENSE = "GPLv2" + +DEPENDS = "libxml2 sed-native expat" + +SRC_URI = "${SOURCEFORGE_MIRROR}/wbxmllib/${P}.tar.gz \ + file://no-doc-install.patch;patch=1" + +inherit autotools pkgconfig + +do_configure_append() { + sed -i s:-I/usr/include::g Makefile + sed -i s:-I/usr/include::g */Makefile +} + +PACKAGES += "${PN}-tools" + +FILES_${PN}-tools = "${bindir}" +FILES_${PN} = "${libdir}/*.so.*" + diff --git a/meta/recipes-core/coreutils/coreutils-6.9/futimens.patch b/meta/recipes-core/coreutils/coreutils-6.9/futimens.patch new file mode 100644 index 0000000000..953c2d17a9 --- /dev/null +++ b/meta/recipes-core/coreutils/coreutils-6.9/futimens.patch @@ -0,0 +1,61 @@ +# coreutils uses gnulib which conflicts with newer libc header on futimens +# this patch simply renames coreutils futimes to avoid confliction +# +# Signed-off-by Kevin Tian , 2010-08-18 +# (this patch is licensed under GPLv2) + +diff --git a/lib/utimens.c b/lib/utimens.c +index 71bc510..ae870b8 100644 +--- a/lib/utimens.c ++++ b/lib/utimens.c +@@ -75,7 +75,7 @@ struct utimbuf + Return 0 on success, -1 (setting errno) on failure. */ + + int +-futimens (int fd ATTRIBUTE_UNUSED, ++futimens_coreutils (int fd ATTRIBUTE_UNUSED, + char const *file, struct timespec const timespec[2]) + { + /* Some Linux-based NFS clients are buggy, and mishandle time stamps +@@ -185,5 +185,5 @@ futimens (int fd ATTRIBUTE_UNUSED, + int + utimens (char const *file, struct timespec const timespec[2]) + { +- return futimens (-1, file, timespec); ++ return futimens_coreutils (-1, file, timespec); + } +diff --git a/lib/utimens.h b/lib/utimens.h +index 0097aaa..13fc45a 100644 +--- a/lib/utimens.h ++++ b/lib/utimens.h +@@ -1,3 +1,3 @@ + #include +-int futimens (int, char const *, struct timespec const [2]); ++int futimens_coreutils (int, char const *, struct timespec const [2]); + int utimens (char const *, struct timespec const [2]); +diff --git a/src/copy.c b/src/copy.c +index 4bdb75c..04634f1 100644 +--- a/src/copy.c ++++ b/src/copy.c +@@ -518,7 +518,7 @@ copy_reg (char const *src_name, char const *dst_name, + timespec[0] = get_stat_atime (src_sb); + timespec[1] = get_stat_mtime (src_sb); + +- if (futimens (dest_desc, dst_name, timespec) != 0) ++ if (futimens_coreutils (dest_desc, dst_name, timespec) != 0) + { + error (0, errno, _("preserving times for %s"), quote (dst_name)); + if (x->require_preserve) +diff --git a/src/touch.c b/src/touch.c +index a79c26d..6ef317d 100644 +--- a/src/touch.c ++++ b/src/touch.c +@@ -182,7 +182,7 @@ touch (const char *file) + t = timespec; + } + +- ok = (futimens (fd, (fd == STDOUT_FILENO ? NULL : file), t) == 0); ++ ok = (futimens_coreutils (fd, (fd == STDOUT_FILENO ? NULL : file), t) == 0); + + if (fd == STDIN_FILENO) + { diff --git a/meta/recipes-core/coreutils/coreutils-6.9/gnulib_m4.patch b/meta/recipes-core/coreutils/coreutils-6.9/gnulib_m4.patch new file mode 100644 index 0000000000..b42f5c9faa --- /dev/null +++ b/meta/recipes-core/coreutils/coreutils-6.9/gnulib_m4.patch @@ -0,0 +1,19 @@ +# remove the line to cause recursive inclusion error from autoreconf, sicne +# newer autoconf has included this definition. Simply rename it here. +# +# Signed-off-by Kevin Tian , 2010-08-18 +# (this patch is licensed under GPLv2) + +diff --git a/extensions.m4 b/extensions.m4 +index 143a9e5..f6558f1 100644 +--- a/m4/extensions.m4 ++++ b/m4/extensions.m4 +@@ -16,7 +16,7 @@ + # ------------------------ + # Enable extensions on systems that normally disable them, + # typically due to standards-conformance issues. +-AC_DEFUN([AC_USE_SYSTEM_EXTENSIONS], ++AC_DEFUN([AC_USE_SYSTEM_EXTENSIONS_DUMMY], + [ + AC_BEFORE([$0], [AC_COMPILE_IFELSE]) + AC_BEFORE([$0], [AC_RUN_IFELSE]) diff --git a/meta/recipes-core/coreutils/coreutils-6.9/man-touch.patch b/meta/recipes-core/coreutils/coreutils-6.9/man-touch.patch new file mode 100644 index 0000000000..95a9638921 --- /dev/null +++ b/meta/recipes-core/coreutils/coreutils-6.9/man-touch.patch @@ -0,0 +1,22 @@ +# man page for 'touch' is generated differently from others. All other utilities +# are provided static man source files, while for 'touch' it requires help2man +# to invoke "touch --help" and then convert the output into the manual. Since touch +# is with target format which can't be invoked on build system, disable building +# 'touch' man page here. +# +# Signed-off-by Kevin Tian , 2010-08-18 +# (this patch is licensed under GPLv2) + +diff --git a/man/Makefile.am b/man/Makefile.am +index 32df9d1..37b09e3 100644 +--- a/man/Makefile.am ++++ b/man/Makefile.am +@@ -27,7 +27,7 @@ dist_man_MANS = \ + paste.1 pathchk.1 pr.1 printenv.1 printf.1 ptx.1 pwd.1 readlink.1 \ + rm.1 rmdir.1 seq.1 sha1sum.1 sha224sum.1 sha256sum.1 sha384sum.1 sha512sum.1 \ + shred.1 shuf.1 sleep.1 sort.1 split.1 stat.1 \ +- su.1 sum.1 sync.1 tac.1 tail.1 tee.1 test.1 touch.1 tr.1 true.1 tsort.1 \ ++ su.1 sum.1 sync.1 tac.1 tail.1 tee.1 test.1 tr.1 true.1 tsort.1 \ + tty.1 unexpand.1 uniq.1 unlink.1 vdir.1 wc.1 \ + whoami.1 yes.1 $(MAN) + optional_mans = \ diff --git a/meta/recipes-core/coreutils/coreutils_6.9.bb b/meta/recipes-core/coreutils/coreutils_6.9.bb new file mode 100644 index 0000000000..6a23f4f65f --- /dev/null +++ b/meta/recipes-core/coreutils/coreutils_6.9.bb @@ -0,0 +1,78 @@ +DESCRIPTION = "The GNU Core Utilities are the basic file, shell and text manipulation utilities of the GNU operating system. These are the core utilities which are expected to exist on every operating system" +HOMEPAGE = "http://www.gnu.org/software/coreutils/" +BUGTRACKER = "http://debbugs.gnu.org/coreutils" +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe \ + file://src/ls.c;startline=4;endline=16;md5=482a96d4f25010a4e13f8743e0c3685e" +PR = "r0" +DEPENDS = "perl-native" + +inherit autotools gettext + +SRC_URI = "http://ftp.gnu.org/gnu/coreutils/${BP}.tar.bz2 \ + file://gnulib_m4.patch \ + file://futimens.patch \ + file://man-touch.patch" + +# [ gets a special treatment and is not included in this +bindir_progs = "base64 basename cksum comm csplit cut dir dircolors dirname du \ + env expand expr factor fmt fold groups head hostid id install \ + join link logname md5sum mkfifo nice nl nohup od paste pathchk \ + pinky pr printenv printf ptx readlink seq sha1sum sha224sum sha256sum \ + sha384sum sha512sum shred shuf sort split stat sum tac tail tee test \ + tr tsort tty unexpand uniq unlink users vdir wc who whoami yes" + +# hostname gets a special treatment and is not included in this +base_bindir_progs = "cat chgrp chmod chown cp date dd echo false kill ln ls mkdir \ + mknod mv pwd rm rmdir sleep stty sync touch true uname" + +sbindir_progs= "chroot" + +do_install() { + autotools_do_install + + for i in ${bindir_progs}; do mv ${D}${bindir}/$i ${D}${bindir}/$i.${PN}; done + + install -d ${D}${base_bindir} + for i in ${base_bindir_progs}; do mv ${D}${bindir}/$i ${D}${base_bindir}/$i.${PN}; done + + install -d ${D}${sbindir} + for i in ${sbindir_progs}; do mv ${D}${bindir}/$i ${D}${sbindir}/$i.${PN}; done + + # [ requires special handling because [.coreutils will cause the sed stuff + # in update-alternatives to fail, therefore use lbracket - the name used + # for the actual source file. + mv ${D}${bindir}/[ ${D}${bindir}/lbracket.${PN} + + # hostname and uptime separated. busybox's versions are preferred + mv ${D}${bindir}/hostname ${D}${base_bindir}/hostname.${PN} + mv ${D}${bindir}/uptime ${D}${bindir}/uptime.${PN} +} + +pkg_postinst_${PN} () { + for i in ${bindir_progs}; do update-alternatives --install ${bindir}/$i $i $i.${PN} 100; done + + for i in ${base_bindir_progs}; do update-alternatives --install ${base_bindir}/$i $i $i.${PN} 100; done + + for i in ${sbindir_progs}; do update-alternatives --install ${sbindir}/$i $i $i.${PN} 100; done + + # Special cases. uptime and hostname is broken, prefer busybox's version. [ needs to be treated separately. + update-alternatives --install ${bindir}/uptime uptime uptime.${PN} 10 + update-alternatives --install ${base_bindir}/hostname hostname hostname.${PN} 10 + update-alternatives --install '${bindir}/[' '[' 'lbracket.${PN}' 100 +} + +pkg_prerm_${PN} () { + for i in ${bindir_progs}; do update-alternatives --remove $i $i.${PN}; done + + for i in ${base_bindir_progs}; do update-alternatives --remove $i $i.${PN}; done + + for i in ${sbindir_progs}; do update-alternatives --remove $i $i.${PN}; done + + # The special cases + update-alternatives --remove hostname hostname.${PN} + update-alternatives --remove uptime uptime.${PN} + update-alternatives --remove '[' 'lbracket.${PN}' +} + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-core/coreutils/coreutils_8.5.bb b/meta/recipes-core/coreutils/coreutils_8.5.bb new file mode 100644 index 0000000000..5213fa2937 --- /dev/null +++ b/meta/recipes-core/coreutils/coreutils_8.5.bb @@ -0,0 +1,67 @@ +DESCRIPTION = "The GNU Core Utilities are the basic file, shell and text manipulation utilities of the GNU operating system. These are the core utilities which are expected to exist on every operating system" +HOMEPAGE = "http://www.gnu.org/software/coreutils/" +BUGTRACKER = "http://debbugs.gnu.org/coreutils" +LICENSE = "GPLv3+" +LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504\ + file://src/ls.c;startline=5;endline=16;md5=bb14ed3c4cda583abc85401304b5cd4e" +PR = "r0" +DEPENDS = "perl-native" + +inherit autotools gettext + +SRC_URI = "http://ftp.gnu.org/gnu/coreutils/${BP}.tar.gz" + +# [ gets a special treatment and is not included in this +bindir_progs = "base64 basename chcon cksum comm csplit cut dir dircolors dirname du \ + env expand expr factor fmt fold groups head hostid id install \ + join link logname md5sum mkfifo mktemp nice nl nohup nproc od paste pathchk \ + pinky pr printenv printf ptx readlink runcon seq sha1sum sha224sum sha256sum \ + sha384sum sha512sum shred shuf sort split stat stdbuf sum tac tail tee test timeout\ + tr truncate tsort tty unexpand uniq unlink uptime users vdir wc who whoami yes" + +# hostname gets a special treatment and is not included in this +base_bindir_progs = "cat chgrp chmod chown cp date dd echo false kill ln ls mkdir \ + mknod mv pwd rm rmdir sleep stty sync touch true uname" + +sbindir_progs= "chroot" + +do_install_append() { + for i in ${bindir_progs}; do mv ${D}${bindir}/$i ${D}${bindir}/$i.${PN}; done + + install -d ${D}${base_bindir} + for i in ${base_bindir_progs}; do mv ${D}${bindir}/$i ${D}${base_bindir}/$i.${PN}; done + + install -d ${D}${sbindir} + for i in ${sbindir_progs}; do mv ${D}${bindir}/$i ${D}${sbindir}/$i.${PN}; done + + # [ requires special handling because [.coreutils will cause the sed stuff + # in update-alternatives to fail, therefore use lbracket - the name used + # for the actual source file. + mv ${D}${bindir}/[ ${D}${bindir}/lbracket.${PN} +} + +pkg_postinst_${PN} () { + for i in ${bindir_progs}; do update-alternatives --install ${bindir}/$i $i $i.${PN} 100; done + + for i in ${base_bindir_progs}; do update-alternatives --install ${base_bindir}/$i $i $i.${PN} 100; done + + for i in ${sbindir_progs}; do update-alternatives --install ${sbindir}/$i $i $i.${PN} 100; done + + # Special cases. [ needs to be treated separately. + update-alternatives --install '${bindir}/[' '[' 'lbracket.${PN}' 100 +} + +pkg_prerm_${PN} () { + for i in ${bindir_progs}; do update-alternatives --remove $i $i.${PN}; done + + for i in ${base_bindir_progs}; do update-alternatives --remove $i $i.${PN}; done + + for i in ${sbindir_progs}; do update-alternatives --remove $i $i.${PN}; done + + # The special cases + update-alternatives --remove hostname hostname.${PN} + update-alternatives --remove uptime uptime.${PN} + update-alternatives --remove '[' 'lbracket.${PN}' +} + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-core/ncurses/ncurses.inc b/meta/recipes-core/ncurses/ncurses.inc new file mode 100644 index 0000000000..259750cb46 --- /dev/null +++ b/meta/recipes-core/ncurses/ncurses.inc @@ -0,0 +1,99 @@ +DESCRIPTION = "Ncurses library" +HOMEPAGE = "http://www.gnu.org/software/ncurses/ncurses.html" +LICENSE = "MIT" +SECTION = "libs" +DEPENDS = "ncurses-native" +DEPENDS_virtclass-native = "" +PACKAGES_prepend = "ncurses-tools " +PACKAGES_append = " ncurses-terminfo" +FILES_ncurses_append = " ${datadir}/tabset" +RSUGGESTS_${PN} = "ncurses-terminfo" +RPROVIDES = "libncurses5" + +inherit autotools + +# This keeps only tput/tset in ncurses +# clear/reset are in already busybox +FILES_ncurses-tools = "${bindir}/tic ${bindir}/toe ${bindir}/infotocap ${bindir}/captoinfo ${bindir}/infocmp ${bindir}/clear.${PN} ${bindir}/reset.${PN} ${bindir}/tack " +FILES_ncurses-terminfo = "${datadir}/terminfo" +FILES_${PN} = "${bindir}/tput ${bindir}/tset ${libdir}/lib*.so.* /usr/share/tabset /etc/terminfo" + +PARALLEL_MAKE="" + +FILESPATH = "${FILE_DIRNAME}/local:${FILE_DIRNAME}/ncurses-${PV}-${PR}:${FILE_DIRNAME}/ncurses-${PV}:${FILE_DIRNAME}/ncurses:${FILE_DIRNAME}" + +EXTRA_OECONF = "--with-shared \ + --with-libtool \ + --without-profile \ + --without-debug \ + --disable-rpath \ + --enable-echo \ + --enable-const \ + --without-ada \ + --enable-termcap \ + --without-cxx-binding \ + --with-terminfo-dirs=${sysconfdir}/terminfo:${datadir}/terminfo \ + --enable-overwrite \ + --with-build-ldflags='' \ + --with-build-ccflags='' " +export BUILD_CCFLAGS = "-I${S}/ncurses -I${S}/include ${BUILD_CFLAGS}" +export BUILD_LDFLAGS = "" +export EXTRA_OEMAKE = '"BUILD_LDFLAGS=" "BUILD_CCFLAGS=${BUILD_CCFLAGS}"' + +# This is necessary so that the "tic" command executed during the install can +# link with the correct libary in staging. +export LD_LIBRARY_PATH = "${STAGING_LIBDIR_NATIVE}" + +do_install() { + autotools_do_install + + ln -sf curses.h ${D}${includedir}/ncurses.h + + # our ncurses has termcap support + ln -sf libncurses.so ${D}${libdir}/libtermcap.so + ln -sf libncurses.a ${D}${libdir}/libtermcap.a + + # include some basic terminfo files + # stolen ;) from gentoo and modified a bit + for x in ansi console dumb linux rxvt screen sun vt{52,100,102,200,220} xterm-color xterm-xfree86 + do + local termfile="$(find "${D}${datadir}/terminfo/" -name "${x}" 2>/dev/null)" + local basedir="$(basename $(dirname "${termfile}"))" + + if [ -n "${termfile}" ] + then + install -d ${D}${sysconfdir}/terminfo/${basedir} + mv ${termfile} ${D}${sysconfdir}/terminfo/${basedir}/ + ln -s /etc/terminfo/${basedir}/${x} \ + ${D}${datadir}/terminfo/${basedir}/${x} + fi + done + # i think we can use xterm-color as default xterm + if [ -e ${D}${sysconfdir}/terminfo/x/xterm-color ] + then + ln -sf xterm-color ${D}${sysconfdir}/terminfo/x/xterm + fi + + if [ "${PN}" = "ncurses" ]; then + mv ${D}${bindir}/clear ${D}${bindir}/clear.${PN} + mv ${D}${bindir}/reset ${D}${bindir}/reset.${PN} + fi +} + + +pkg_postinst_ncurses-tools () { + if [ "${PN}" = "ncurses" ]; then + update-alternatives --install ${bindir}/clear clear clear.${PN} 100 + update-alternatives --install ${bindir}/reset reset reset.${PN} 100 + fi +} + + +pkg_prerm_ncurses-tools () { + if [ "${PN}" = "ncurses" ]; then + update-alternatives --remove clear clear.${PN} + update-alternatives --remove reset reset.${PN} + fi +} + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-core/ncurses/ncurses/makefile_tweak.patch b/meta/recipes-core/ncurses/ncurses/makefile_tweak.patch new file mode 100644 index 0000000000..480855bcc6 --- /dev/null +++ b/meta/recipes-core/ncurses/ncurses/makefile_tweak.patch @@ -0,0 +1,89 @@ +Libtool 2.2.2 needs to be able to use top_builddir. Automake usually exports +this but ncurses doesn't use automake. + +RP 14/4/08 + +Index: ncurses-5.4/ncurses/Makefile.in +=================================================================== +--- ncurses-5.4.orig/ncurses/Makefile.in 2008-04-14 12:22:34.000000000 +0100 ++++ ncurses-5.4/ncurses/Makefile.in 2008-04-14 12:22:53.000000000 +0100 +@@ -57,6 +57,7 @@ + MODEL = @DFT_LWR_MODEL@ + DESTDIR = @DESTDIR@ + top_srcdir = @top_srcdir@ ++top_builddir = @top_srcdir@ + srcdir = @srcdir@ + prefix = @prefix@ + exec_prefix = @exec_prefix@ +Index: ncurses-5.4/form/Makefile.in +=================================================================== +--- ncurses-5.4.orig/form/Makefile.in 2008-04-14 12:30:35.000000000 +0100 ++++ ncurses-5.4/form/Makefile.in 2008-04-14 12:30:59.000000000 +0100 +@@ -51,6 +51,7 @@ + MODEL = @DFT_LWR_MODEL@ + DESTDIR = @DESTDIR@ + srcdir = @srcdir@ ++top_builddir = @top_srcdir@ + prefix = @prefix@ + exec_prefix = @exec_prefix@ + bindir = @bindir@ +Index: ncurses-5.4/menu/Makefile.in +=================================================================== +--- ncurses-5.4.orig/menu/Makefile.in 2008-04-14 12:29:00.000000000 +0100 ++++ ncurses-5.4/menu/Makefile.in 2008-04-14 12:29:13.000000000 +0100 +@@ -51,6 +51,7 @@ + MODEL = @DFT_LWR_MODEL@ + DESTDIR = @DESTDIR@ + srcdir = @srcdir@ ++top_builddir = @top_srcdir@ + prefix = @prefix@ + exec_prefix = @exec_prefix@ + bindir = @bindir@ +Index: ncurses-5.4/panel/Makefile.in +=================================================================== +--- ncurses-5.4.orig/panel/Makefile.in 2008-04-14 12:27:40.000000000 +0100 ++++ ncurses-5.4/panel/Makefile.in 2008-04-14 12:27:59.000000000 +0100 +@@ -51,6 +51,7 @@ + MODEL = @DFT_LWR_MODEL@ + DESTDIR = @DESTDIR@ + srcdir = @srcdir@ ++top_builddir = @top_srcdir@ + prefix = @prefix@ + exec_prefix = @exec_prefix@ + bindir = @bindir@ +Index: ncurses-5.4/progs/Makefile.in +=================================================================== +--- ncurses-5.4.orig/progs/Makefile.in 2008-04-14 12:24:37.000000000 +0100 ++++ ncurses-5.4/progs/Makefile.in 2008-04-14 12:25:06.000000000 +0100 +@@ -54,6 +54,7 @@ + MODEL = ../@DFT_OBJ_SUBDIR@ + DESTDIR = @DESTDIR@ + srcdir = @srcdir@ ++top_builddir = @top_srcdir@ + prefix = @prefix@ + exec_prefix = @exec_prefix@ + bindir = @bindir@ +Index: ncurses-5.4/tack/Makefile.in +=================================================================== +--- ncurses-5.4.orig/tack/Makefile.in 2008-04-14 12:26:05.000000000 +0100 ++++ ncurses-5.4/tack/Makefile.in 2008-04-14 12:26:26.000000000 +0100 +@@ -22,6 +22,7 @@ + MODEL = ../@DFT_OBJ_SUBDIR@ + DESTDIR = @DESTDIR@ + srcdir = @srcdir@ ++top_builddir = @top_srcdir@ + prefix = @prefix@ + exec_prefix = @exec_prefix@ + bindir = @bindir@ +Index: ncurses-5.4/test/Makefile.in +=================================================================== +--- ncurses-5.4.orig/test/Makefile.in 2008-04-14 12:32:37.000000000 +0100 ++++ ncurses-5.4/test/Makefile.in 2008-04-14 12:32:56.000000000 +0100 +@@ -43,6 +43,7 @@ + + MODEL = ../@DFT_OBJ_SUBDIR@ + srcdir = @srcdir@ ++top_builddir = @top_srcdir@ + prefix = @prefix@ + exec_prefix = @exec_prefix@ + libdir = @libdir@ diff --git a/meta/recipes-core/ncurses/ncurses/visibility.patch b/meta/recipes-core/ncurses/ncurses/visibility.patch new file mode 100644 index 0000000000..29cac5f1b8 --- /dev/null +++ b/meta/recipes-core/ncurses/ncurses/visibility.patch @@ -0,0 +1,4904 @@ + +# +# Patch managed by http://www.holgerschurig.de/patcher.html +# + +--- ncurses-5.4/ncurses/Makefile.in~visibility.patch ++++ ncurses-5.4/ncurses/Makefile.in +@@ -107,7 +107,7 @@ + CFLAGS_NORMAL = $(CCFLAGS) + CFLAGS_DEBUG = $(CCFLAGS) @CC_G_OPT@ -DTRACE + CFLAGS_PROFILE = $(CCFLAGS) -pg +-CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ ++CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ @LIBOPTS@ + + CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@) + +--- ncurses-5.4/panel/Makefile.in~visibility.patch ++++ ncurses-5.4/panel/Makefile.in +@@ -88,7 +88,7 @@ + CFLAGS_NORMAL = $(CCFLAGS) + CFLAGS_DEBUG = $(CCFLAGS) @CC_G_OPT@ -DTRACE + CFLAGS_PROFILE = $(CCFLAGS) -pg +-CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ ++CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ @LIBOPTS@ + + CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@) + +--- ncurses-5.4/menu/Makefile.in~visibility.patch ++++ ncurses-5.4/menu/Makefile.in +@@ -87,7 +87,7 @@ + CFLAGS_NORMAL = $(CCFLAGS) + CFLAGS_DEBUG = $(CCFLAGS) @CC_G_OPT@ -DTRACE + CFLAGS_PROFILE = $(CCFLAGS) -pg +-CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ ++CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ @LIBOPTS@ + + CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@) + +--- ncurses-5.4/c++/Makefile.in~visibility.patch ++++ ncurses-5.4/c++/Makefile.in +@@ -80,7 +80,7 @@ + CFLAGS_NORMAL = $(CCFLAGS) + CFLAGS_DEBUG = $(CCFLAGS) @CXX_G_OPT@ -DTRACE + CFLAGS_PROFILE = $(CCFLAGS) -pg +-CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ ++CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ @LIBOPTS@ + + CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@) + +--- ncurses-5.4/form/Makefile.in~visibility.patch ++++ ncurses-5.4/form/Makefile.in +@@ -88,7 +88,7 @@ + CFLAGS_NORMAL = $(CCFLAGS) + CFLAGS_DEBUG = $(CCFLAGS) @CC_G_OPT@ -DTRACE + CFLAGS_PROFILE = $(CCFLAGS) -pg +-CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ ++CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@ @LIBOPTS@ + + CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@) + +--- ncurses-5.4/configure.in~visibility.patch ++++ ncurses-5.4/configure.in +@@ -34,17 +34,20 @@ + dnl See http://invisible-island.net/autoconf/ for additional information. + dnl + dnl --------------------------------------------------------------------------- +-AC_PREREQ(2.13.20020210) ++AC_PREREQ(2.59) + AC_REVISION($Revision: 1.312 $) +-AC_INIT(ncurses/base/lib_initscr.c) ++AC_INIT ++AC_CONFIG_SRCDIR([ncurses/base/lib_initscr.c]) + AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin) + ++m4_include([m4/templates.m4]) ++ + CF_SUBST_NCURSES_VERSION + + CF_WITH_REL_VERSION(NCURSES) + CF_WITH_ABI_VERSION + +-CF_CHECK_CACHE([AC_CANONICAL_SYSTEM]) ++CF_CHECK_CACHE([AC_CANONICAL_TARGET([])]) + AC_ARG_WITH(system-type, + [ --with-system-type=XXX test: override derived host system-type], + [AC_MSG_WARN(overriding system type to $withval) +@@ -100,7 +103,7 @@ + CF_GXX_VERSION + case $GXX_VERSION in + 1*|2.[[0-6]]*) +- GXX=""; CXX=""; ac_cv_prog_gxx=no ++ GXX=""; CXX=""; ac_cv_cxx_compiler_gnu=no + cf_cxx_library=no + AC_MSG_WARN(templates do not work) + ;; +@@ -176,7 +179,6 @@ + AC_SUBST(DESTDIR) + + ############################################################################### +-CF_HELP_MESSAGE(Build-Tools Needed to Compile Temporary Applications for Cross-compiling:) + # If we're cross-compiling, allow the user to override the tools and their + # options. The configure script is oriented toward identifying the host + # compiler, etc., but we need a build compiler to generate parts of the source. +@@ -213,7 +215,6 @@ + AC_SUBST(BUILD_EXEEXT) + + ############################################################################### +-CF_HELP_MESSAGE(Options to Specify the Libraries Built/Used:) + + ### Options to allow the user to specify the set of libraries which are used. + ### Use "--without-normal --with-shared" to allow the default model to be +@@ -343,11 +344,11 @@ + + AC_MSG_CHECKING(for default loader flags) + case $DFT_LWR_MODEL in +-libtool) LD_MODEL='' ;; ++libtool) LD_MODEL=''; LIBOPTS="-DNCURSES_DLL" ;; + normal) LD_MODEL='' ;; + debug) LD_MODEL=$CC_G_OPT ;; + profile) LD_MODEL='-pg';; +-shared) LD_MODEL='' ;; ++shared) LD_MODEL=''; LIBOPTS="-DNCURSES_DLL" ;; + esac + AC_SUBST(LD_MODEL)dnl the type of link (e.g., -g or -pg) + AC_MSG_RESULT($LD_MODEL) +@@ -363,14 +364,14 @@ + if test "$CC_SHARED_OPTS" = "unknown"; then + for model in $cf_list_models; do + if test "$model" = "shared"; then +- AC_ERROR(Shared libraries are not supported in this version) ++ AC_MSG_ERROR([Shared libraries are not supported in this version]) + fi + done + fi + +-############################################################################### +-CF_HELP_MESSAGE(Fine-Tuning Your Configuration:) ++AC_SUBST(LIBOPTS) + ++############################################################################### + ### use option --disable-overwrite to leave out the link to -lcurses + AC_MSG_CHECKING(if you wish to install ncurses overwriting curses) + AC_ARG_ENABLE(overwrite, +@@ -450,7 +451,7 @@ + AC_ARG_ENABLE(big-core, + [ --disable-big-core assume machine has little memory], + [with_big_core=$enableval], +- [AC_TRY_RUN([ ++ [AC_RUN_IFELSE([AC_LANG_SOURCE([[ + #include + #include + int main() { +@@ -459,10 +460,7 @@ + if (s != 0) + s[0] = s[n-1] = 0; + exit(s == 0); +-}], +- [with_big_core=yes], +- [with_big_core=no], +- [with_big_core=no])]) ++}]])],[with_big_core=yes],[with_big_core=no],[with_big_core=no])]) + AC_MSG_RESULT($with_big_core) + test "$with_big_core" = "yes" && AC_DEFINE(HAVE_BIG_CORE) + +@@ -477,7 +475,7 @@ + if test "$with_termcap" != "yes" ; then + if test "$use_database" = no ; then + if test -z "$with_fallback" ; then +- AC_ERROR(You have disabled the database w/o specifying fallbacks) ++ AC_MSG_ERROR([You have disabled the database w/o specifying fallbacks]) + fi + fi + AC_DEFINE(PURE_TERMINFO) +@@ -614,10 +612,10 @@ + test "$with_rcs_ids" = yes && AC_DEFINE(USE_RCS_IDS) + + ############################################################################### ++ + CF_MAN_PAGES([ captoinfo clear infocmp infotocap tic toe tput ]) + + ############################################################################### +-CF_HELP_MESSAGE(Extensions:) + + ### Note that some functions (such as const) are normally disabled anyway. + AC_MSG_CHECKING(if you want to build with function extensions) +@@ -683,7 +681,6 @@ + + ############################################################################### + # These options are relatively safe to experiment with. +-CF_HELP_MESSAGE(Development Code:) + AC_MSG_CHECKING(if you want all development code) + AC_ARG_WITH(develop, + [ --with-develop enable all development options], +@@ -719,7 +716,6 @@ + + ############################################################################### + # These are just experimental, probably should not be in a package: +-CF_HELP_MESSAGE(Experimental Code:) + + AC_MSG_CHECKING(if you do not want to assume colors are white-on-black) + AC_ARG_ENABLE(assumed-color, +@@ -828,7 +824,6 @@ + AC_SUBST(TERMINFO_CAPS) + + ############################################################################### +-CF_HELP_MESSAGE(Testing/development Options:) + + ### use option --disable-echo to suppress full display compiling commands + AC_MSG_CHECKING(if you want to display full commands during build) +@@ -931,7 +926,7 @@ + AC_SUBST(MATH_LIB) + + ### Checks for header files. +-AC_STDC_HEADERS ++AC_HEADER_STDC([]) + AC_HEADER_DIRENT + AC_HEADER_TIME + CF_REGEX +@@ -965,7 +960,7 @@ + CF_SYS_TIME_SELECT + + ### checks for compiler characteristics +-AC_LANG_C ++AC_LANG([C]) + AC_C_CONST + AC_C_INLINE + test "$ac_cv_c_inline" != no && AC_DEFINE(CC_HAS_INLINE_FUNCS) +@@ -1040,7 +1035,7 @@ + + # Check for C++ compiler characteristics (and ensure that it's there!) + if test -n "$CXX" ; then +- AC_LANG_CPLUSPLUS ++ AC_LANG([C++]) + CF_STDCPP_LIBRARY + + case $GXX_VERSION in +@@ -1135,7 +1130,6 @@ + fi + AC_SUBST(USE_CXX_BOOL) + +-CF_HELP_MESSAGE(Ada95 Binding Options:) + + dnl Check for availability of GNU Ada Translator (GNAT). + dnl At the moment we support no other Ada95 compiler. +@@ -1309,15 +1303,16 @@ + + ################################################################################ + test "$use_database" = yes && SUB_MAKEFILES="$SUB_MAKEFILES misc/run_tic.sh:misc/run_tic.in" +-AC_OUTPUT( \ ++AC_CONFIG_FILES([\ + include/MKterm.h.awk \ + include/curses.head:include/curses.h.in \ + include/termcap.h \ + include/unctrl.h \ + $SUB_MAKEFILES \ +- Makefile,[ ++ Makefile]) ++AC_CONFIG_COMMANDS([default],[ + CF_LIB_RULES +-],[ ++],[[ + ### Special initialization commands, used to pass information from the + ### configuration-run into config.status + +@@ -1348,5 +1343,6 @@ + host="$host" + target="$target" + +-],cat)dnl ++]]) ++AC_OUTPUT + ${MAKE-make} preinstall +--- ncurses-5.4/include/ncurses_dll.h~visibility.patch ++++ ncurses-5.4/include/ncurses_dll.h +@@ -7,8 +7,8 @@ + /* but this structure may be useful at some point for an MSVC build */ + /* so, for now unconditionally define the important flags */ + /* "the right way" for proper static and dll+auto-import behavior */ +-#undef NCURSES_DLL +-#define NCURSES_STATIC ++//#undef NCURSES_DLL ++//#define NCURSES_STATIC + + #if defined(__CYGWIN__) + # if defined(NCURSES_DLL) +@@ -32,12 +32,20 @@ + # endif + # define NCURSES_API __cdecl + # define NCURSES_EXPORT(type) NCURSES_IMPEXP type NCURSES_API +-# define NCURSES_EXPORT_VAR(type) NCURSES_IMPEXP type ++# define NCURSES_EXPORT_VAR(var) var NCURSES_IMPEXP + #endif + + /* Take care of non-cygwin platforms */ + #if !defined(NCURSES_IMPEXP) +-# define NCURSES_IMPEXP /* nothing */ ++# if defined(GCC_HASCLASSVISIBILITY) ++# if defined(NCURSES_DLL) ++# define NCURSES_IMPEXP __attribute__ ((visibility("default"))) ++# else ++# define NCURSES_IMPEXP /* nothing */ ++# endif ++# else ++# define NCURSES_IMPEXP /* nothing */ ++# endif + #endif + #if !defined(NCURSES_API) + # define NCURSES_API /* nothing */ +@@ -46,7 +54,7 @@ + # define NCURSES_EXPORT(type) NCURSES_IMPEXP type NCURSES_API + #endif + #if !defined(NCURSES_EXPORT_VAR) +-# define NCURSES_EXPORT_VAR(type) NCURSES_IMPEXP type ++# define NCURSES_EXPORT_VAR(var) var NCURSES_IMPEXP + #endif + + #endif /* NCURSES_DLL_H_incl */ +--- ncurses-5.4/form/fty_alnum.c~visibility.patch ++++ ncurses-5.4/form/fty_alnum.c +@@ -132,6 +132,6 @@ + NULL + }; + +-NCURSES_EXPORT_VAR(FIELDTYPE*) TYPE_ALNUM = &typeALNUM; ++FIELDTYPE* NCURSES_EXPORT_VAR(TYPE_ALNUM) = &typeALNUM; + + /* fty_alnum.c ends here */ +--- ncurses-5.4/form/fty_alpha.c~visibility.patch ++++ ncurses-5.4/form/fty_alpha.c +@@ -133,6 +133,6 @@ + NULL + }; + +-NCURSES_EXPORT_VAR(FIELDTYPE*) TYPE_ALPHA = &typeALPHA; ++FIELDTYPE* NCURSES_EXPORT_VAR(TYPE_ALPHA) = &typeALPHA; + + /* fty_alpha.c ends here */ +--- ncurses-5.4/form/fld_newftyp.c~visibility.patch ++++ ncurses-5.4/form/fld_newftyp.c +@@ -48,7 +48,7 @@ + NULL /* enumerate previous function */ + }; + +-NCURSES_EXPORT_VAR(const FIELDTYPE*) _nc_Default_FieldType = &default_fieldtype; ++const FIELDTYPE* NCURSES_EXPORT_VAR(_nc_Default_FieldType) = &default_fieldtype; + + /*--------------------------------------------------------------------------- + | Facility : libnform +--- ncurses-5.4/form/form.h~visibility.patch ++++ ncurses-5.4/form/form.h +@@ -248,24 +248,24 @@ + /************************* + * standard field types * + *************************/ +-extern NCURSES_EXPORT_VAR(FIELDTYPE *) TYPE_ALPHA; +-extern NCURSES_EXPORT_VAR(FIELDTYPE *) TYPE_ALNUM; +-extern NCURSES_EXPORT_VAR(FIELDTYPE *) TYPE_ENUM; +-extern NCURSES_EXPORT_VAR(FIELDTYPE *) TYPE_INTEGER; +-extern NCURSES_EXPORT_VAR(FIELDTYPE *) TYPE_NUMERIC; +-extern NCURSES_EXPORT_VAR(FIELDTYPE *) TYPE_REGEXP; ++extern FIELDTYPE * NCURSES_EXPORT_VAR(TYPE_ALPHA); ++extern FIELDTYPE * NCURSES_EXPORT_VAR(TYPE_ALNUM); ++extern FIELDTYPE * NCURSES_EXPORT_VAR(TYPE_ENUM); ++extern FIELDTYPE * NCURSES_EXPORT_VAR(TYPE_INTEGER); ++extern FIELDTYPE * NCURSES_EXPORT_VAR(TYPE_NUMERIC); ++extern FIELDTYPE * NCURSES_EXPORT_VAR(TYPE_REGEXP); + + /************************************ + * built-in additional field types * + * They are not defined in SVr4 * + ************************************/ +-extern NCURSES_EXPORT_VAR(FIELDTYPE *) TYPE_IPV4; /* Internet IP Version 4 address */ ++extern FIELDTYPE * NCURSES_EXPORT_VAR(TYPE_IPV4); /* Internet IP Version 4 address */ + + /*********************** + * Default objects * + ***********************/ +-extern NCURSES_EXPORT_VAR(FORM *) _nc_Default_Form; +-extern NCURSES_EXPORT_VAR(FIELD *) _nc_Default_Field; ++extern FORM * NCURSES_EXPORT_VAR(_nc_Default_Form); ++extern FIELD * NCURSES_EXPORT_VAR(_nc_Default_Field); + + + /*********************** +--- ncurses-5.4/form/fty_int.c~visibility.patch ++++ ncurses-5.4/form/fty_int.c +@@ -155,6 +155,6 @@ + NULL + }; + +-NCURSES_EXPORT_VAR(FIELDTYPE*) TYPE_INTEGER = &typeINTEGER; ++FIELDTYPE* NCURSES_EXPORT_VAR(TYPE_INTEGER) = &typeINTEGER; + + /* fty_int.c ends here */ +--- ncurses-5.4/form/fty_num.c~visibility.patch ++++ ncurses-5.4/form/fty_num.c +@@ -190,6 +190,6 @@ + NULL + }; + +-NCURSES_EXPORT_VAR(FIELDTYPE*) TYPE_NUMERIC = &typeNUMERIC; ++FIELDTYPE* NCURSES_EXPORT_VAR(TYPE_NUMERIC) = &typeNUMERIC; + + /* fty_num.c ends here */ +--- ncurses-5.4/form/fty_regex.c~visibility.patch ++++ ncurses-5.4/form/fty_regex.c +@@ -252,6 +252,6 @@ + NULL + }; + +-NCURSES_EXPORT_VAR(FIELDTYPE*) TYPE_REGEXP = &typeREGEXP; ++FIELDTYPE* NCURSES_EXPORT_VAR(TYPE_REGEXP) = &typeREGEXP; + + /* fty_regex.c ends here */ +--- ncurses-5.4/form/frm_def.c~visibility.patch ++++ ncurses-5.4/form/frm_def.c +@@ -60,7 +60,7 @@ + NULL /* fieldterm */ + }; + +-NCURSES_EXPORT_VAR(FORM *) _nc_Default_Form = &default_form; ++FORM * NCURSES_EXPORT_VAR(_nc_Default_Form) = &default_form; + + /*--------------------------------------------------------------------------- + | Facility : libnform +--- ncurses-5.4/form/fld_def.c~visibility.patch ++++ ncurses-5.4/form/fld_def.c +@@ -63,7 +63,7 @@ + (char *)0 /* usrptr */ + }; + +-NCURSES_EXPORT_VAR(FIELD *) _nc_Default_Field = &default_field; ++FIELD * NCURSES_EXPORT_VAR(_nc_Default_Field) = &default_field; + + /*--------------------------------------------------------------------------- + | Facility : libnform +--- ncurses-5.4/form/fty_enum.c~visibility.patch ++++ ncurses-5.4/form/fty_enum.c +@@ -290,6 +290,6 @@ + Previous_Enum + }; + +-NCURSES_EXPORT_VAR(FIELDTYPE*) TYPE_ENUM = &typeENUM; ++FIELDTYPE* NCURSES_EXPORT_VAR(TYPE_ENUM) = &typeENUM; + + /* fty_enum.c ends here */ +--- ncurses-5.4/form/fty_ipv4.c~visibility.patch ++++ ncurses-5.4/form/fty_ipv4.c +@@ -76,6 +76,6 @@ + NULL + }; + +-NCURSES_EXPORT_VAR(FIELDTYPE*) TYPE_IPV4 = &typeIPV4; ++FIELDTYPE* NCURSES_EXPORT_VAR(TYPE_IPV4) = &typeIPV4; + + /* fty_ipv4.c ends here */ +--- ncurses-5.4/form/form.priv.h~visibility.patch ++++ ncurses-5.4/form/form.priv.h +@@ -112,7 +112,7 @@ + #define C_BLANK ' ' + #define is_blank(c) ((c)==C_BLANK) + +-extern NCURSES_EXPORT_VAR(const FIELDTYPE *) _nc_Default_FieldType; ++extern const FIELDTYPE * NCURSES_EXPORT_VAR(_nc_Default_FieldType); + + extern NCURSES_EXPORT(TypeArgument *) _nc_Make_Argument (const FIELDTYPE*,va_list*,int*); + extern NCURSES_EXPORT(TypeArgument *) _nc_Copy_Argument (const FIELDTYPE*,const TypeArgument*, int*); +--- ncurses-5.4/include/tic.h~visibility.patch ++++ ncurses-5.4/include/tic.h +@@ -117,7 +117,7 @@ + #define DEBUG(n, a) /*nothing*/ + #endif + +-extern NCURSES_EXPORT_VAR(unsigned) _nc_tracing; ++extern unsigned NCURSES_EXPORT_VAR(_nc_tracing); + extern NCURSES_EXPORT(void) _nc_tracef (char *, ...) GCC_PRINTFLIKE(1,2); + extern NCURSES_EXPORT(const char *) _nc_visbuf (const char *); + extern NCURSES_EXPORT(const char *) _nc_visbuf2 (int, const char *); +@@ -151,7 +151,7 @@ + char *tk_valstring; /* value of capability (if a string) */ + }; + +-extern NCURSES_EXPORT_VAR(struct token) _nc_curr_token; ++extern struct token NCURSES_EXPORT_VAR(_nc_curr_token); + + /* + * List of keynames with their corresponding code. +@@ -161,7 +161,7 @@ + int code; + }; + +-extern NCURSES_EXPORT_VAR(const struct kn) _nc_key_names[]; ++extern const struct kn NCURSES_EXPORT_VAR(_nc_key_names[]); + + /* + * Offsets to string capabilities, with the corresponding functionkey +@@ -179,7 +179,7 @@ + + #else + +-extern NCURSES_EXPORT_VAR(struct tinfo_fkeys) _nc_tinfo_fkeys[]; ++extern struct tinfo_fkeys NCURSES_EXPORT_VAR(_nc_tinfo_fkeys[]); + + #endif + +@@ -204,11 +204,11 @@ + const char *source; + }; + +-extern NCURSES_EXPORT_VAR(const struct name_table_entry * const) _nc_info_hash_table[]; +-extern NCURSES_EXPORT_VAR(const struct name_table_entry * const) _nc_cap_hash_table[]; ++extern const struct name_table_entry * const NCURSES_EXPORT_VAR(_nc_info_hash_table[]); ++extern const struct name_table_entry * const NCURSES_EXPORT_VAR(_nc_cap_hash_table[]); + +-extern NCURSES_EXPORT_VAR(const struct alias) _nc_capalias_table[]; +-extern NCURSES_EXPORT_VAR(const struct alias) _nc_infoalias_table[]; ++extern const struct alias NCURSES_EXPORT_VAR(_nc_capalias_table[]); ++extern const struct alias NCURSES_EXPORT_VAR(_nc_infoalias_table[]); + + extern NCURSES_EXPORT(const struct name_table_entry *) _nc_get_table (bool); + extern NCURSES_EXPORT(const struct name_table_entry * const *) _nc_get_hash_table (bool); +@@ -255,13 +255,13 @@ + extern NCURSES_EXPORT(void) _nc_panic_mode (char); + extern NCURSES_EXPORT(void) _nc_push_token (int); + extern NCURSES_EXPORT(void) _nc_reset_input (FILE *, char *); +-extern NCURSES_EXPORT_VAR(int) _nc_curr_col; +-extern NCURSES_EXPORT_VAR(int) _nc_curr_line; +-extern NCURSES_EXPORT_VAR(int) _nc_syntax; +-extern NCURSES_EXPORT_VAR(long) _nc_comment_end; +-extern NCURSES_EXPORT_VAR(long) _nc_comment_start; +-extern NCURSES_EXPORT_VAR(long) _nc_curr_file_pos; +-extern NCURSES_EXPORT_VAR(long) _nc_start_line; ++extern int NCURSES_EXPORT_VAR(_nc_curr_col); ++extern int NCURSES_EXPORT_VAR(_nc_curr_line); ++extern int NCURSES_EXPORT_VAR(_nc_syntax); ++extern long NCURSES_EXPORT_VAR(_nc_comment_end); ++extern long NCURSES_EXPORT_VAR(_nc_comment_start); ++extern long NCURSES_EXPORT_VAR(_nc_curr_file_pos); ++extern long NCURSES_EXPORT_VAR(_nc_start_line); + #define SYN_TERMINFO 0 + #define SYN_TERMCAP 1 + +@@ -272,7 +272,7 @@ + extern NCURSES_EXPORT(void) _nc_syserr_abort (const char *const,...) GCC_PRINTFLIKE(1,2) GCC_NORETURN; + extern NCURSES_EXPORT(void) _nc_err_abort (const char *const,...) GCC_PRINTFLIKE(1,2) GCC_NORETURN; + extern NCURSES_EXPORT(void) _nc_warning (const char *const,...) GCC_PRINTFLIKE(1,2); +-extern NCURSES_EXPORT_VAR(bool) _nc_suppress_warnings; ++extern bool NCURSES_EXPORT_VAR(_nc_suppress_warnings); + + /* comp_expand.c: expand string into readable form */ + extern NCURSES_EXPORT(char *) _nc_tic_expand (const char *, bool, int); +@@ -287,12 +287,12 @@ + /* lib_tparm.c */ + #define NUM_PARM 9 + +-extern NCURSES_EXPORT_VAR(int) _nc_tparm_err; ++extern int NCURSES_EXPORT_VAR(_nc_tparm_err); + + extern NCURSES_EXPORT(int) _nc_tparm_analyze(const char *string, char *p_is_s[NUM_PARM], int *popcount); + + /* lib_tputs.c */ +-extern NCURSES_EXPORT_VAR(int) _nc_nulls_sent; /* Add one for every null sent */ ++extern int NCURSES_EXPORT_VAR(_nc_nulls_sent); /* Add one for every null sent */ + + /* comp_main.c: compiler main */ + extern const char * _nc_progname; +--- ncurses-5.4/include/MKterm.h.awk.in~visibility.patch ++++ ncurses-5.4/include/MKterm.h.awk.in +@@ -228,9 +228,9 @@ + print " char * _termname; /* used for termname() */" + print "} TERMINAL;" + print "" +- print "extern NCURSES_EXPORT_VAR(TERMINAL *) cur_term;" ++ print "extern TERMINAL * NCURSES_EXPORT_VAR(cur_term);" + print "" +- print "#if BROKEN_LINKER" ++ print "#if defined(BROKEN_LINKER)" + print "#define boolnames _nc_boolnames()" + print "#define boolcodes _nc_boolcodes()" + print "#define boolfnames _nc_boolfnames()" +@@ -253,15 +253,15 @@ + print "" + print "#else" + print "" +- print "extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) boolnames[];" +- print "extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) boolcodes[];" +- print "extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) boolfnames[];" +- print "extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) numnames[];" +- print "extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) numcodes[];" +- print "extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) numfnames[];" +- print "extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) strnames[];" +- print "extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) strcodes[];" +- print "extern NCURSES_EXPORT_VAR(NCURSES_CONST char * const ) strfnames[];" ++ print "extern NCURSES_CONST char * const NCURSES_EXPORT_VAR(boolnames[]);" ++ print "extern NCURSES_CONST char * const NCURSES_EXPORT_VAR(boolcodes[]);" ++ print "extern NCURSES_CONST char * const NCURSES_EXPORT_VAR(boolfnames[]);" ++ print "extern NCURSES_CONST char * const NCURSES_EXPORT_VAR(numnames[]);" ++ print "extern NCURSES_CONST char * const NCURSES_EXPORT_VAR(numcodes[]);" ++ print "extern NCURSES_CONST char * const NCURSES_EXPORT_VAR(numfnames[]);" ++ print "extern NCURSES_CONST char * const NCURSES_EXPORT_VAR(strnames[]);" ++ print "extern NCURSES_CONST char * const NCURSES_EXPORT_VAR(strcodes[]);" ++ print "extern NCURSES_CONST char * const NCURSES_EXPORT_VAR(strfnames[]);" + print "" + print "#endif" + print "" +@@ -287,7 +287,7 @@ + print "#if !defined(__NCURSES_H)" + print "extern NCURSES_EXPORT(char *) tigetstr (NCURSES_CONST char *);" + print "extern NCURSES_EXPORT(char *) tparm (NCURSES_CONST char *, ...);" +- print "extern NCURSES_EXPORT_VAR(char) ttytype[];" ++ print "extern char NCURSES_EXPORT_VAR(ttytype[]);" + print "extern NCURSES_EXPORT(int) putp (const char *);" + print "extern NCURSES_EXPORT(int) tigetflag (NCURSES_CONST char *);" + print "extern NCURSES_EXPORT(int) tigetnum (NCURSES_CONST char *);" +--- ncurses-5.4/include/termcap.h.in~visibility.patch ++++ ncurses-5.4/include/termcap.h.in +@@ -54,10 +54,10 @@ + #undef NCURSES_OSPEED + #define NCURSES_OSPEED @NCURSES_OSPEED@ + +-extern NCURSES_EXPORT_VAR(char) PC; +-extern NCURSES_EXPORT_VAR(char *) UP; +-extern NCURSES_EXPORT_VAR(char *) BC; +-extern NCURSES_EXPORT_VAR(NCURSES_OSPEED) ospeed; ++extern char NCURSES_EXPORT_VAR(PC); ++extern char * NCURSES_EXPORT_VAR(UP); ++extern char * NCURSES_EXPORT_VAR(BC); ++extern NCURSES_OSPEED NCURSES_EXPORT_VAR(ospeed); + + #if !defined(NCURSES_TERM_H_incl) + extern NCURSES_EXPORT(char *) tgetstr (NCURSES_CONST char *, char **); +--- ncurses-5.4/include/term_entry.h~visibility.patch ++++ ncurses-5.4/include/term_entry.h +@@ -90,8 +90,8 @@ + #define ExtNumname(tp,i,names) EXT_NAMES(tp, i, NUMCOUNT, (i - (tp->num_Numbers - tp->ext_Numbers)) + tp->ext_Booleans, names) + #define ExtStrname(tp,i,names) EXT_NAMES(tp, i, STRCOUNT, (i - (tp->num_Strings - tp->ext_Strings)) + (tp->ext_Numbers + tp->ext_Booleans), names) + +-extern NCURSES_EXPORT_VAR(ENTRY *) _nc_head; +-extern NCURSES_EXPORT_VAR(ENTRY *) _nc_tail; ++extern ENTRY * NCURSES_EXPORT_VAR(_nc_head); ++extern ENTRY * NCURSES_EXPORT_VAR(_nc_tail); + #define for_entry_list(qp) for (qp = _nc_head; qp; qp = qp->next) + + #define MAX_LINE 132 +@@ -135,8 +135,8 @@ + + /* parse_entry.c: entry-parsing code */ + #if NCURSES_XNAMES +-extern NCURSES_EXPORT_VAR(bool) _nc_user_definable; +-extern NCURSES_EXPORT_VAR(bool) _nc_disable_period; ++extern bool NCURSES_EXPORT_VAR(_nc_user_definable); ++extern bool NCURSES_EXPORT_VAR(_nc_disable_period); + #endif + extern NCURSES_EXPORT(int) _nc_parse_entry (ENTRY *, int, bool); + extern NCURSES_EXPORT(int) _nc_capcmp (const char *, const char *); +--- ncurses-5.4/include/curses.h.in~visibility.patch ++++ ncurses-5.4/include/curses.h.in +@@ -171,8 +171,8 @@ + #define WA_VERTICAL A_VERTICAL + + /* colors */ +-extern NCURSES_EXPORT_VAR(int) COLORS; +-extern NCURSES_EXPORT_VAR(int) COLOR_PAIRS; ++extern int NCURSES_EXPORT_VAR(COLORS); ++extern int NCURSES_EXPORT_VAR(COLOR_PAIRS); + + #define COLOR_BLACK 0 + #define COLOR_RED 1 +@@ -186,10 +186,10 @@ + /* line graphics */ + + #if @BROKEN_LINKER@ +-extern NCURSES_EXPORT_VAR(chtype*) _nc_acs_map(void); ++extern chtype* NCURSES_EXPORT_VAR(_nc_acs_map)(void); + #define acs_map (_nc_acs_map()) + #else +-extern NCURSES_EXPORT_VAR(chtype) acs_map[]; ++extern chtype NCURSES_EXPORT_VAR(acs_map[]); + #endif + + #define NCURSES_ACS(c) (acs_map[(unsigned char)c]) +@@ -369,20 +369,20 @@ + #endif + }; + +-extern NCURSES_EXPORT_VAR(WINDOW *) stdscr; +-extern NCURSES_EXPORT_VAR(WINDOW *) curscr; +-extern NCURSES_EXPORT_VAR(WINDOW *) newscr; ++extern WINDOW * NCURSES_EXPORT_VAR(stdscr); ++extern WINDOW * NCURSES_EXPORT_VAR(curscr); ++extern WINDOW * NCURSES_EXPORT_VAR(newscr); + +-extern NCURSES_EXPORT_VAR(int) LINES; +-extern NCURSES_EXPORT_VAR(int) COLS; +-extern NCURSES_EXPORT_VAR(int) TABSIZE; ++extern int NCURSES_EXPORT_VAR(LINES); ++extern int NCURSES_EXPORT_VAR(COLS); ++extern int NCURSES_EXPORT_VAR(TABSIZE); + + /* + * This global was an undocumented feature under AIX curses. + */ +-extern NCURSES_EXPORT_VAR(int) ESCDELAY; /* ESC expire time in milliseconds */ ++extern int NCURSES_EXPORT_VAR(ESCDELAY); /* ESC expire time in milliseconds */ + +-extern NCURSES_EXPORT_VAR(char) ttytype[]; /* needed for backward compatibility */ ++extern char NCURSES_EXPORT_VAR(ttytype[]); /* needed for backward compatibility */ + + /* + * These functions are extensions - not in XSI Curses. +--- ncurses-5.4/include/curses.tail~visibility.patch ++++ ncurses-5.4/include/curses.tail +@@ -110,7 +110,7 @@ + #define TRACE_MAXIMUM ((1 << TRACE_SHIFT) - 1) /* maximum trace level */ + + #if defined(TRACE) || defined(NCURSES_TEST) +-extern NCURSES_EXPORT_VAR(int) _nc_optimize_enable; /* enable optimizations */ ++extern int NCURSES_EXPORT_VAR(_nc_optimize_enable); /* enable optimizations */ + #ifdef _XOPEN_SOURCE_EXTENDED + extern NCURSES_EXPORT(const char *) _nc_viswbuf(const wchar_t *); + #endif +--- ncurses-5.4/include/curses.wide~visibility.patch ++++ ncurses-5.4/include/curses.wide +@@ -3,7 +3,7 @@ + + /* $Id: curses.wide,v 1.28 2004/01/03 20:35:14 tom Exp $ */ + +-extern NCURSES_EXPORT_VAR(cchar_t *) _nc_wacs; ++extern cchar_t * NCURSES_EXPORT_VAR(_nc_wacs); + + #define NCURSES_WACS(c) (&_nc_wacs[(unsigned char)c]) + +--- ncurses-5.4/menu/menu.priv.h~visibility.patch ++++ ncurses-5.4/menu/menu.priv.h +@@ -49,8 +49,8 @@ + /* Backspace code */ + #define BS (8) + +-extern NCURSES_EXPORT_VAR(ITEM) _nc_Default_Item; +-extern NCURSES_EXPORT_VAR(MENU) _nc_Default_Menu; ++extern ITEM NCURSES_EXPORT_VAR(_nc_Default_Item); ++extern MENU NCURSES_EXPORT_VAR(_nc_Default_Menu); + + /* Normalize item to default if none was given */ + #define Normalize_Item( item ) ((item)=(item)?(item):&_nc_Default_Item) +--- ncurses-5.4/menu/m_global.c~visibility.patch ++++ ncurses-5.4/menu/m_global.c +@@ -41,7 +41,7 @@ + + static char mark[] = "-"; + +-NCURSES_EXPORT_VAR(MENU) _nc_Default_Menu = { ++MENU NCURSES_EXPORT_VAR(_nc_Default_Menu) = { + 16, /* Nr. of chars high */ + 1, /* Nr. of chars wide */ + 16, /* Nr. of items high */ +@@ -80,7 +80,7 @@ + 0 /* status */ + }; + +-NCURSES_EXPORT_VAR(ITEM) _nc_Default_Item = { ++ITEM NCURSES_EXPORT_VAR(_nc_Default_Item) = { + { (char *)0, 0 }, /* name */ + { (char *)0, 0 }, /* description */ + (MENU *)0, /* Pointer to parent menu */ +--- ncurses-5.4/ncurses/tty/lib_mvcur.c~visibility.patch ++++ ncurses-5.4/ncurses/tty/lib_mvcur.c +@@ -937,7 +937,7 @@ + } + + #if defined(TRACE) || defined(NCURSES_TEST) +-NCURSES_EXPORT_VAR(int) _nc_optimize_enable = OPTIMIZE_ALL; ++int NCURSES_EXPORT_VAR(_nc_optimize_enable) = OPTIMIZE_ALL; + #endif + + #if defined(MAIN) || defined(NCURSES_TEST) +@@ -950,7 +950,7 @@ + #include + #include + +-NCURSES_EXPORT_VAR(const char *) _nc_progname = "mvcur"; ++const char * NCURSES_EXPORT_VAR(_nc_progname) = "mvcur"; + + static unsigned long xmits; + +--- ncurses-5.4/ncurses/tty/hardscroll.c~visibility.patch ++++ ncurses-5.4/ncurses/tty/hardscroll.c +@@ -151,8 +151,7 @@ + + # undef screen_lines + # define screen_lines MAXLINES +-NCURSES_EXPORT_VAR(int) +-oldnums[MAXLINES]; ++int NCURSES_EXPORT_VAR(oldnums[MAXLINES]); + # define OLDNUM(n) oldnums[n] + # define _tracef printf + # undef TR +@@ -163,8 +162,7 @@ + /* OLDNUM(n) indicates which line will be shifted to the position n. + if OLDNUM(n) == _NEWINDEX, then the line n in new, not shifted from + somewhere. */ +-NCURSES_EXPORT_VAR(int *) +-_nc_oldnums = 0; ++int * NCURSES_EXPORT_VAR(_nc_oldnums) = 0; + + # if USE_HASHMAP + static int oldnums_allocated = 0; +--- ncurses-5.4/ncurses/base/lib_getch.c~visibility.patch ++++ ncurses-5.4/ncurses/base/lib_getch.c +@@ -44,8 +44,7 @@ + + #include + +-NCURSES_EXPORT_VAR(int) +-ESCDELAY = 1000; /* max interval betw. chars in funkeys, in millisecs */ ++int NCURSES_EXPORT_VAR(ESCDELAY) = 1000; /* max interval betw. chars in funkeys, in millisecs */ + + #ifdef NCURSES_WGETCH_EVENTS + #define TWAIT_MASK 7 +--- ncurses-5.4/ncurses/base/lib_slk.c~visibility.patch ++++ ncurses-5.4/ncurses/base/lib_slk.c +@@ -47,8 +47,7 @@ + * We'd like to move these into the screen context structure, but cannot, + * because slk_init() is called before initscr()/newterm(). + */ +-NCURSES_EXPORT_VAR(int) +-_nc_slk_format = 0; /* one more than format specified in slk_init() */ ++int NCURSES_EXPORT_VAR(_nc_slk_format) = 0; /* one more than format specified in slk_init() */ + + /* + * Paint the info line for the PC style SLK emulation. +--- ncurses-5.4/ncurses/base/lib_color.c~visibility.patch ++++ ncurses-5.4/ncurses/base/lib_color.c +@@ -48,8 +48,8 @@ + * historical reasons. So we assign them in start_color() and also in + * set_term()'s screen-switching logic. + */ +-NCURSES_EXPORT_VAR(int) COLOR_PAIRS = 0; +-NCURSES_EXPORT_VAR(int) COLORS = 0; ++int NCURSES_EXPORT_VAR(COLOR_PAIRS) = 0; ++int NCURSES_EXPORT_VAR(COLORS) = 0; + + #define DATA(r,g,b) {r,g,b, 0,0,0, 0} + +--- ncurses-5.4/ncurses/tinfo/lib_termcap.c~visibility.patch ++++ ncurses-5.4/ncurses/tinfo/lib_termcap.c +@@ -50,8 +50,8 @@ + #define L_BRACK '[' + #define SHIFT_OUT 017 /* ^N */ + +-NCURSES_EXPORT_VAR(char *) UP = 0; +-NCURSES_EXPORT_VAR(char *) BC = 0; ++char * NCURSES_EXPORT_VAR(UP) = 0; ++char * NCURSES_EXPORT_VAR(BC) = 0; + + static char *fix_me = 0; + +--- ncurses-5.4/ncurses/tinfo/lib_cur_term.c~visibility.patch ++++ ncurses-5.4/ncurses/tinfo/lib_cur_term.c +@@ -42,7 +42,7 @@ + + MODULE_ID("$Id: lib_cur_term.c,v 1.13 2003/12/27 18:21:30 tom Exp $") + +-NCURSES_EXPORT_VAR(TERMINAL *) cur_term = 0; ++TERMINAL * NCURSES_EXPORT_VAR(cur_term) = 0; + + NCURSES_EXPORT(TERMINAL *) + set_curterm(TERMINAL * termp) +--- ncurses-5.4/ncurses/tinfo/lib_setup.c~visibility.patch ++++ ncurses-5.4/ncurses/tinfo/lib_setup.c +@@ -91,10 +91,10 @@ + # endif + #endif + +-NCURSES_EXPORT_VAR(char) ttytype[NAMESIZE] = ""; +-NCURSES_EXPORT_VAR(int) LINES = 0; +-NCURSES_EXPORT_VAR(int) COLS = 0; +-NCURSES_EXPORT_VAR(int) TABSIZE = 0; ++char NCURSES_EXPORT_VAR(ttytype[NAMESIZE]) = ""; ++int NCURSES_EXPORT_VAR(LINES) = 0; ++int NCURSES_EXPORT_VAR(COLS) = 0; ++int NCURSES_EXPORT_VAR(TABSIZE) = 0; + + static int _use_env = TRUE; + +--- ncurses-5.4/ncurses/tinfo/MKnames.awk~visibility.patch ++++ ncurses-5.4/ncurses/tinfo/MKnames.awk +@@ -10,7 +10,7 @@ + print "#include " > "namehdr" + print "#define DCL(it) static IT data##it[]" > "namehdr" + print "#else" > "namehdr" +- print "#define DCL(it) NCURSES_EXPORT_VAR(IT) it[]" > "namehdr" ++ print "#define DCL(it) IT NCURSES_EXPORT_VAR(it[])" > "namehdr" + print "#endif" > "namehdr" + print "" > "namehdr" + print "/*" > "boolnames" +--- ncurses-5.4/ncurses/tinfo/lib_tparm.c~visibility.patch ++++ ncurses-5.4/ncurses/tinfo/lib_tparm.c +@@ -115,7 +115,7 @@ + bool num_type; + } stack_frame; + +-NCURSES_EXPORT_VAR(int) _nc_tparm_err = 0; ++int NCURSES_EXPORT_VAR(_nc_tparm_err) = 0; + + static stack_frame stack[STACKSIZE]; + static int stack_ptr; +--- ncurses-5.4/ncurses/tinfo/lib_tputs.c~visibility.patch ++++ ncurses-5.4/ncurses/tinfo/lib_tputs.c +@@ -47,10 +47,10 @@ + + MODULE_ID("$Id: lib_tputs.c,v 1.62 2003/08/23 21:39:20 tom Exp $") + +-NCURSES_EXPORT_VAR(char) PC = 0; /* used by termcap library */ +-NCURSES_EXPORT_VAR(NCURSES_OSPEED) ospeed = 0; /* used by termcap library */ ++char NCURSES_EXPORT_VAR(PC) = 0; /* used by termcap library */ ++NCURSES_OSPEED NCURSES_EXPORT_VAR(ospeed) = 0; /* used by termcap library */ + +-NCURSES_EXPORT_VAR(int) _nc_nulls_sent = 0; /* used by 'tack' program */ ++int NCURSES_EXPORT_VAR(_nc_nulls_sent) = 0; /* used by 'tack' program */ + + static int (*my_outch) (int c) = _nc_outch; + +--- ncurses-5.4/ncurses/tinfo/comp_error.c~visibility.patch ++++ ncurses-5.4/ncurses/tinfo/comp_error.c +@@ -42,9 +42,9 @@ + + MODULE_ID("$Id: comp_error.c,v 1.25 2002/09/07 20:05:07 tom Exp $") + +-NCURSES_EXPORT_VAR(bool) _nc_suppress_warnings = FALSE; +-NCURSES_EXPORT_VAR(int) _nc_curr_line = 0; /* current line # in input */ +-NCURSES_EXPORT_VAR(int) _nc_curr_col = 0; /* current column # in input */ ++bool NCURSES_EXPORT_VAR(_nc_suppress_warnings) = FALSE; ++int NCURSES_EXPORT_VAR(_nc_curr_line) = 0; /* current line # in input */ ++int NCURSES_EXPORT_VAR(_nc_curr_col) = 0; /* current column # in input */ + + static const char *sourcename; + static char *termtype; +--- ncurses-5.4/ncurses/tinfo/free_ttype.c~visibility.patch ++++ ncurses-5.4/ncurses/tinfo/free_ttype.c +@@ -92,7 +92,7 @@ + } + + #if NCURSES_XNAMES +-NCURSES_EXPORT_VAR(bool) _nc_user_definable = TRUE; ++bool NCURSES_EXPORT_VAR(_nc_user_definable) = TRUE; + + NCURSES_EXPORT(int) + use_extended_names(bool flag) +--- ncurses-5.4/ncurses/tinfo/comp_parse.c~visibility.patch ++++ ncurses-5.4/ncurses/tinfo/comp_parse.c +@@ -78,8 +78,8 @@ + * _nc_head _nc_tail + */ + +-NCURSES_EXPORT_VAR(ENTRY *) _nc_head = 0; +-NCURSES_EXPORT_VAR(ENTRY *) _nc_tail = 0; ++ENTRY * NCURSES_EXPORT_VAR(_nc_head) = 0; ++ENTRY * NCURSES_EXPORT_VAR(_nc_tail) = 0; + + static void + enqueue(ENTRY * ep) +--- ncurses-5.4/ncurses/tinfo/comp_scan.c~visibility.patch ++++ ncurses-5.4/ncurses/tinfo/comp_scan.c +@@ -60,19 +60,13 @@ + + #define iswhite(ch) (ch == ' ' || ch == '\t') + +-NCURSES_EXPORT_VAR(int) +-_nc_syntax = 0; /* termcap or terminfo? */ +-NCURSES_EXPORT_VAR(long) +-_nc_curr_file_pos = 0; /* file offset of current line */ +-NCURSES_EXPORT_VAR(long) +-_nc_comment_start = 0; /* start of comment range before name */ +-NCURSES_EXPORT_VAR(long) +-_nc_comment_end = 0; /* end of comment range before name */ +-NCURSES_EXPORT_VAR(long) +-_nc_start_line = 0; /* start line of current entry */ ++int NCURSES_EXPORT_VAR(_nc_syntax) = 0; /* termcap or terminfo? */ ++long NCURSES_EXPORT_VAR(_nc_curr_file_pos) = 0; /* file offset of current line */ ++long NCURSES_EXPORT_VAR(_nc_comment_start) = 0; /* start of comment range before name */ ++long NCURSES_EXPORT_VAR(_nc_comment_end) = 0; /* end of comment range before name */ ++long NCURSES_EXPORT_VAR(_nc_start_line) = 0; /* start line of current entry */ + +-NCURSES_EXPORT_VAR(struct token) +-_nc_curr_token = ++struct token NCURSES_EXPORT_VAR(_nc_curr_token) = + { + 0, 0, 0 + }; +@@ -90,8 +84,7 @@ + static char *pushname; + + #if NCURSES_EXT_FUNCS +-NCURSES_EXPORT_VAR(bool) +-_nc_disable_period = FALSE; /* used by tic -a option */ ++bool NCURSES_EXPORT_VAR(_nc_disable_period) = FALSE; /* used by tic -a option */ + #endif + + static bool end_of_stream(void); +--- ncurses-5.4/ncurses/tinfo/lib_acs.c~visibility.patch ++++ ncurses-5.4/ncurses/tinfo/lib_acs.c +@@ -37,8 +37,7 @@ + MODULE_ID("$Id: lib_acs.c,v 1.25 2002/12/28 16:26:46 tom Exp $") + + #if BROKEN_LINKER +-NCURSES_EXPORT_VAR(chtype *) +-_nc_acs_map(void) ++chtype * NCURSES_EXPORT_VAR(_nc_acs_map)(void) + { + static chtype *the_map = 0; + if (the_map == 0) +@@ -46,7 +45,7 @@ + return the_map; + } + #else +-NCURSES_EXPORT_VAR(chtype) acs_map[ACS_LEN] = ++chtype NCURSES_EXPORT_VAR(acs_map[ACS_LEN]) = + { + 0 + }; +--- ncurses-5.4/ncurses/tinfo/lib_data.c~visibility.patch ++++ ncurses-5.4/ncurses/tinfo/lib_data.c +@@ -46,14 +46,11 @@ + * OS/2's native linker complains if we don't initialize public data when + * constructing a dll (reported by J.J.G.Ripoll). + */ +-NCURSES_EXPORT_VAR(WINDOW *) +-stdscr = 0; +-NCURSES_EXPORT_VAR(WINDOW *) +-curscr = 0; +-NCURSES_EXPORT_VAR(WINDOW *) +-newscr = 0; ++WINDOW * NCURSES_EXPORT_VAR(stdscr) = 0; ++WINDOW * NCURSES_EXPORT_VAR(curscr) = 0; ++WINDOW * NCURSES_EXPORT_VAR(newscr) = 0; + +-NCURSES_EXPORT_VAR(SCREEN *) _nc_screen_chain = 0; ++SCREEN * NCURSES_EXPORT_VAR(_nc_screen_chain) = 0; + + /* + * The variable 'SP' will be defined as a function on systems that cannot link +@@ -87,5 +84,5 @@ + } + + #else +-NCURSES_EXPORT_VAR(SCREEN *) SP = NULL; /* Some linkers require initialized data... */ ++SCREEN * NCURSES_EXPORT_VAR(SP) = NULL; /* Some linkers require initialized data... */ + #endif +--- ncurses-5.4/ncurses/trace/lib_trace.c~visibility.patch ++++ ncurses-5.4/ncurses/trace/lib_trace.c +@@ -42,11 +42,11 @@ + + MODULE_ID("$Id: lib_trace.c,v 1.53 2003/11/23 00:39:30 tom Exp $") + +-NCURSES_EXPORT_VAR(unsigned) _nc_tracing = 0; /* always define this */ ++unsigned NCURSES_EXPORT_VAR(_nc_tracing) = 0; /* always define this */ + + #ifdef TRACE +-NCURSES_EXPORT_VAR(const char *) _nc_tputs_trace = ""; +-NCURSES_EXPORT_VAR(long) _nc_outchars = 0; ++const char * NCURSES_EXPORT_VAR(_nc_tputs_trace) = ""; ++long NCURSES_EXPORT_VAR(_nc_outchars) = 0; + + static FILE *tracefp = 0; /* default to writing to stderr */ + +--- ncurses-5.4/ncurses/curses.priv.h~visibility.patch ++++ ncurses-5.4/ncurses/curses.priv.h +@@ -498,7 +498,7 @@ + #endif + }; + +-extern NCURSES_EXPORT_VAR(SCREEN *) _nc_screen_chain; ++extern SCREEN * NCURSES_EXPORT_VAR(_nc_screen_chain); + + #if NCURSES_NOMACROS + #include +@@ -752,9 +752,9 @@ + extern NCURSES_EXPORT(int) _nc_retrace_int (int); + extern NCURSES_EXPORT(unsigned) _nc_retrace_unsigned (unsigned); + extern NCURSES_EXPORT(void) _nc_fifo_dump (void); +-extern NCURSES_EXPORT_VAR(const char *) _nc_tputs_trace; +-extern NCURSES_EXPORT_VAR(long) _nc_outchars; +-extern NCURSES_EXPORT_VAR(unsigned) _nc_tracing; ++extern const char * NCURSES_EXPORT_VAR(_nc_tputs_trace); ++extern long NCURSES_EXPORT_VAR(_nc_outchars); ++extern unsigned NCURSES_EXPORT_VAR(_nc_tracing); + + #if USE_WIDEC_SUPPORT + extern NCURSES_EXPORT(const char *) _nc_viswbuf2 (int, const wchar_t *); +@@ -1055,7 +1055,7 @@ + #endif + + /* scroll indices */ +-extern NCURSES_EXPORT_VAR(int *) _nc_oldnums; ++extern int * NCURSES_EXPORT_VAR(_nc_oldnums); + + #define USE_SETBUF_0 0 + +@@ -1074,7 +1074,7 @@ + extern NCURSES_EXPORT(void) _nc_set_screen (SCREEN *); + #else + /* current screen is private data; avoid possible linking conflicts too */ +-extern NCURSES_EXPORT_VAR(SCREEN *) SP; ++extern SCREEN * NCURSES_EXPORT_VAR(SP); + #define _nc_alloc_screen() ((SP = typeCalloc(SCREEN, 1)) != 0) + #define _nc_set_screen(sp) SP = sp + #endif +@@ -1087,7 +1087,7 @@ + #define screen_lines SP->_lines + #define screen_columns SP->_columns + +-extern NCURSES_EXPORT_VAR(int) _nc_slk_format; /* != 0 if slk_init() called */ ++extern int NCURSES_EXPORT_VAR(_nc_slk_format); /* != 0 if slk_init() called */ + extern NCURSES_EXPORT(int) _nc_slk_initialize (WINDOW *, int); + + /* +--- /dev/null ++++ ncurses-5.4/m4/cf.m4 +@@ -0,0 +1,3703 @@ ++dnl*************************************************************************** ++dnl Copyright (c) 1998-2003,2004 Free Software Foundation, Inc. * ++dnl * ++dnl Permission is hereby granted, free of charge, to any person obtaining a * ++dnl copy of this software and associated documentation files (the * ++dnl "Software"), to deal in the Software without restriction, including * ++dnl without limitation the rights to use, copy, modify, merge, publish, * ++dnl distribute, distribute with modifications, sublicense, and/or sell * ++dnl copies of the Software, and to permit persons to whom the Software is * ++dnl furnished to do so, subject to the following conditions: * ++dnl * ++dnl The above copyright notice and this permission notice shall be included * ++dnl in all copies or substantial portions of the Software. * ++dnl * ++dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * ++dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * ++dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * ++dnl IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * ++dnl DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * ++dnl OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * ++dnl THE USE OR OTHER DEALINGS IN THE SOFTWARE. * ++dnl * ++dnl Except as contained in this notice, the name(s) of the above copyright * ++dnl holders shall not be used in advertising or otherwise to promote the * ++dnl sale, use or other dealings in this Software without prior written * ++dnl authorization. * ++dnl*************************************************************************** ++dnl ++dnl Author: Thomas E. Dickey 1995-2003 ++dnl ++dnl $Id: aclocal.m4,v 1.333 2004/01/30 20:59:56 tom Exp $ ++dnl Macros used in NCURSES auto-configuration script. ++dnl ++dnl See http://invisible-island.net/autoconf/ for additional information. ++dnl ++dnl --------------------------------------------------------------------------- ++dnl --------------------------------------------------------------------------- ++dnl CF_ADA_INCLUDE_DIRS version: 4 updated: 2002/12/01 00:12:15 ++dnl ------------------- ++dnl Construct the list of include-options for the C programs in the Ada95 ++dnl binding. ++AC_DEFUN([CF_ADA_INCLUDE_DIRS], ++[ ++ACPPFLAGS="-I. -I../../include $ACPPFLAGS" ++if test "$srcdir" != "."; then ++ ACPPFLAGS="-I\$(srcdir)/../../include $ACPPFLAGS" ++fi ++if test "$GCC" != yes; then ++ ACPPFLAGS="$ACPPFLAGS -I\$(includedir)" ++elif test "$includedir" != "/usr/include"; then ++ if test "$includedir" = '${prefix}/include' ; then ++ if test $prefix != /usr ; then ++ ACPPFLAGS="$ACPPFLAGS -I\$(includedir)" ++ fi ++ else ++ ACPPFLAGS="$ACPPFLAGS -I\$(includedir)" ++ fi ++fi ++AC_SUBST(ACPPFLAGS) ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_ADD_CFLAGS version: 5 updated: 2002/12/01 00:12:15 ++dnl ------------- ++dnl Copy non-preprocessor flags to $CFLAGS, preprocessor flags to $CPPFLAGS ++dnl The second parameter if given makes this macro verbose. ++AC_DEFUN([CF_ADD_CFLAGS], ++[ ++cf_new_cflags= ++cf_new_cppflags= ++for cf_add_cflags in $1 ++do ++ case $cf_add_cflags in #(vi ++ -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi ++ case "$CPPFLAGS" in ++ *$cf_add_cflags) #(vi ++ ;; ++ *) #(vi ++ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" ++ ;; ++ esac ++ ;; ++ *) ++ cf_new_cflags="$cf_new_cflags $cf_add_cflags" ++ ;; ++ esac ++done ++ ++if test -n "$cf_new_cflags" ; then ++ ifelse($2,,,[CF_VERBOSE(add to \$CFLAGS $cf_new_cflags)]) ++ CFLAGS="$CFLAGS $cf_new_cflags" ++fi ++ ++if test -n "$cf_new_cppflags" ; then ++ ifelse($2,,,[CF_VERBOSE(add to \$CPPFLAGS $cf_new_cppflags)]) ++ CPPFLAGS="$cf_new_cppflags $CPPFLAGS" ++fi ++ ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_ANSI_CC_CHECK version: 9 updated: 2001/12/30 17:53:34 ++dnl ---------------- ++dnl This is adapted from the macros 'fp_PROG_CC_STDC' and 'fp_C_PROTOTYPES' ++dnl in the sharutils 4.2 distribution. ++AC_DEFUN([CF_ANSI_CC_CHECK], ++[ ++AC_CACHE_CHECK(for ${CC-cc} option to accept ANSI C, cf_cv_ansi_cc,[ ++cf_cv_ansi_cc=no ++cf_save_CFLAGS="$CFLAGS" ++cf_save_CPPFLAGS="$CPPFLAGS" ++# Don't try gcc -ansi; that turns off useful extensions and ++# breaks some systems' header files. ++# AIX -qlanglvl=ansi ++# Ultrix and OSF/1 -std1 ++# HP-UX -Aa -D_HPUX_SOURCE ++# SVR4 -Xc ++# UnixWare 1.2 (cannot use -Xc, since ANSI/POSIX clashes) ++for cf_arg in "-DCC_HAS_PROTOS" \ ++ "" \ ++ -qlanglvl=ansi \ ++ -std1 \ ++ -Ae \ ++ "-Aa -D_HPUX_SOURCE" \ ++ -Xc ++do ++ CF_ADD_CFLAGS($cf_arg) ++ AC_TRY_COMPILE( ++[ ++#ifndef CC_HAS_PROTOS ++#if !defined(__STDC__) || (__STDC__ != 1) ++choke me ++#endif ++#endif ++],[ ++ int test (int i, double x); ++ struct s1 {int (*f) (int a);}; ++ struct s2 {int (*f) (double a);};], ++ [cf_cv_ansi_cc="$cf_arg"; break]) ++done ++CFLAGS="$cf_save_CFLAGS" ++CPPFLAGS="$cf_save_CPPFLAGS" ++]) ++ ++if test "$cf_cv_ansi_cc" != "no"; then ++if test ".$cf_cv_ansi_cc" != ".-DCC_HAS_PROTOS"; then ++ CF_ADD_CFLAGS($cf_cv_ansi_cc) ++else ++ AC_DEFINE(CC_HAS_PROTOS) ++fi ++fi ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_ANSI_CC_REQD version: 3 updated: 1997/09/06 13:40:44 ++dnl --------------- ++dnl For programs that must use an ANSI compiler, obtain compiler options that ++dnl will make it recognize prototypes. We'll do preprocessor checks in other ++dnl macros, since tools such as unproto can fake prototypes, but only part of ++dnl the preprocessor. ++AC_DEFUN([CF_ANSI_CC_REQD], ++[AC_REQUIRE([CF_ANSI_CC_CHECK]) ++if test "$cf_cv_ansi_cc" = "no"; then ++ AC_ERROR( ++[Your compiler does not appear to recognize prototypes. ++You have the following choices: ++ a. adjust your compiler options ++ b. get an up-to-date compiler ++ c. use a wrapper such as unproto]) ++fi ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_BOOL_DECL version: 8 updated: 2004/01/30 15:51:18 ++dnl ------------ ++dnl Test if 'bool' is a builtin type in the configured C++ compiler. Some ++dnl older compilers (e.g., gcc 2.5.8) don't support 'bool' directly; gcc ++dnl 2.6.3 does, in anticipation of the ANSI C++ standard. ++dnl ++dnl Treat the configuration-variable specially here, since we're directly ++dnl substituting its value (i.e., 1/0). ++dnl ++dnl $1 is the shell variable to store the result in, if not $cv_cv_builtin_bool ++AC_DEFUN([CF_BOOL_DECL], ++[ ++AC_MSG_CHECKING(if we should include stdbool.h) ++ ++AC_CACHE_VAL(cf_cv_header_stdbool_h,[ ++ AC_TRY_COMPILE([],[bool foo = false], ++ [cf_cv_header_stdbool_h=0], ++ [AC_TRY_COMPILE([ ++#ifndef __BEOS__ ++#include ++#endif ++],[bool foo = false], ++ [cf_cv_header_stdbool_h=1], ++ [cf_cv_header_stdbool_h=0])])]) ++ ++if test "$cf_cv_header_stdbool_h" = 1 ++then AC_MSG_RESULT(yes) ++else AC_MSG_RESULT(no) ++fi ++ ++AC_MSG_CHECKING([for builtin bool type]) ++ ++AC_CACHE_VAL(ifelse($1,,cf_cv_builtin_bool,[$1]),[ ++ AC_TRY_COMPILE([ ++#include ++#include ++],[bool x = false], ++ [ifelse($1,,cf_cv_builtin_bool,[$1])=1], ++ [ifelse($1,,cf_cv_builtin_bool,[$1])=0]) ++ ]) ++ ++if test "$ifelse($1,,cf_cv_builtin_bool,[$1])" = 1 ++then AC_MSG_RESULT(yes) ++else AC_MSG_RESULT(no) ++fi ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_BOOL_SIZE version: 10 updated: 2002/02/23 20:38:31 ++dnl ------------ ++dnl Test for the size of 'bool' in the configured C++ compiler (e.g., a type). ++dnl Don't bother looking for bool.h, since it's been deprecated. ++dnl ++dnl If the current compiler is C rather than C++, we get the bool definition ++dnl from . ++AC_DEFUN([CF_BOOL_SIZE], ++[ ++AC_MSG_CHECKING([for size of bool]) ++AC_CACHE_VAL(cf_cv_type_of_bool,[ ++ rm -f cf_test.out ++ AC_TRY_RUN([ ++#include ++#include ++ ++#if defined(__cplusplus) ++ ++#ifdef HAVE_GXX_BUILTIN_H ++#include ++#elif HAVE_GPP_BUILTIN_H ++#include ++#elif HAVE_BUILTIN_H ++#include ++#endif ++ ++#else ++ ++#if $cf_cv_header_stdbool_h ++#include ++#endif ++ ++#endif ++ ++main() ++{ ++ FILE *fp = fopen("cf_test.out", "w"); ++ if (fp != 0) { ++ bool x = true; ++ if ((bool)(-x) >= 0) ++ fputs("unsigned ", fp); ++ if (sizeof(x) == sizeof(int)) fputs("int", fp); ++ else if (sizeof(x) == sizeof(char)) fputs("char", fp); ++ else if (sizeof(x) == sizeof(short))fputs("short",fp); ++ else if (sizeof(x) == sizeof(long)) fputs("long", fp); ++ fclose(fp); ++ } ++ exit(0); ++} ++ ], ++ [cf_cv_type_of_bool=`cat cf_test.out` ++ if test -z "$cf_cv_type_of_bool"; then ++ cf_cv_type_of_bool=unknown ++ fi], ++ [cf_cv_type_of_bool=unknown], ++ [cf_cv_type_of_bool=unknown]) ++ ]) ++ rm -f cf_test.out ++AC_MSG_RESULT($cf_cv_type_of_bool) ++if test "$cf_cv_type_of_bool" = unknown ; then ++ case .$NCURSES_BOOL in #(vi ++ .auto|.) NCURSES_BOOL=unsigned;; ++ esac ++ AC_MSG_WARN(Assuming $NCURSES_BOOL for type of bool) ++ cf_cv_type_of_bool=$NCURSES_BOOL ++fi ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_CFG_DEFAULTS version: 6 updated: 2003/07/12 15:15:19 ++dnl --------------- ++dnl Determine the default configuration into which we'll install ncurses. This ++dnl can be overridden by the user's command-line options. There's two items to ++dnl look for: ++dnl 1. the prefix (e.g., /usr) ++dnl 2. the header files (e.g., /usr/include/ncurses) ++dnl We'll look for a previous installation of ncurses and use the same defaults. ++dnl ++dnl We don't use AC_PREFIX_DEFAULT, because it gets evaluated too soon, and ++dnl we don't use AC_PREFIX_PROGRAM, because we cannot distinguish ncurses's ++dnl programs from a vendor's. ++AC_DEFUN([CF_CFG_DEFAULTS], ++[ ++AC_MSG_CHECKING(for prefix) ++if test "x$prefix" = "xNONE" ; then ++ case "$cf_cv_system_name" in ++ # non-vendor systems don't have a conflict ++ openbsd*|netbsd*|freebsd*|linux*|cygwin*|k*bsd*-gnu) ++ prefix=/usr ++ ;; ++ *) prefix=$ac_default_prefix ++ ;; ++ esac ++fi ++AC_MSG_RESULT($prefix) ++ ++if test "x$prefix" = "xNONE" ; then ++AC_MSG_CHECKING(for default include-directory) ++test -n "$verbose" && echo 1>&AC_FD_MSG ++for cf_symbol in \ ++ $includedir \ ++ $includedir/ncurses \ ++ $prefix/include \ ++ $prefix/include/ncurses \ ++ /usr/local/include \ ++ /usr/local/include/ncurses \ ++ /usr/include \ ++ /usr/include/ncurses ++do ++ cf_dir=`eval echo $cf_symbol` ++ if test -f $cf_dir/curses.h ; then ++ if ( fgrep NCURSES_VERSION $cf_dir/curses.h 2>&1 >/dev/null ) ; then ++ includedir="$cf_symbol" ++ test -n "$verbose" && echo $ac_n " found " 1>&AC_FD_MSG ++ break ++ fi ++ fi ++ test -n "$verbose" && echo " tested $cf_dir" 1>&AC_FD_MSG ++done ++AC_MSG_RESULT($includedir) ++fi ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_CGETENT version: 3 updated: 2000/08/12 23:18:52 ++dnl ---------- ++dnl Check if the terminal-capability database functions are available. If not, ++dnl ncurses has a much-reduced version. ++AC_DEFUN([CF_CGETENT],[ ++AC_MSG_CHECKING(for terminal-capability database functions) ++AC_CACHE_VAL(cf_cv_cgetent,[ ++AC_TRY_LINK([ ++#include ],[ ++ char temp[128]; ++ char *buf = temp; ++ char *db_array = temp; ++ cgetent(&buf, /* int *, */ &db_array, "vt100"); ++ cgetcap(buf, "tc", '='); ++ cgetmatch(buf, "tc"); ++ ], ++ [cf_cv_cgetent=yes], ++ [cf_cv_cgetent=no]) ++]) ++AC_MSG_RESULT($cf_cv_cgetent) ++test "$cf_cv_cgetent" = yes && AC_DEFINE(HAVE_BSD_CGETENT) ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_CHECK_CACHE version: 9 updated: 2004/01/30 15:59:13 ++dnl -------------- ++dnl Check if we're accidentally using a cache from a different machine. ++dnl Derive the system name, as a check for reusing the autoconf cache. ++dnl ++dnl If we've packaged config.guess and config.sub, run that (since it does a ++dnl better job than uname). Normally we'll use AC_CANONICAL_HOST, but allow ++dnl an extra parameter that we may override, e.g., for AC_CANONICAL_SYSTEM ++dnl which is useful in cross-compiles. ++dnl ++dnl Note: we would use $ac_config_sub, but that is one of the places where ++dnl autoconf 2.5x broke compatibility with autoconf 2.13 ++AC_DEFUN([CF_CHECK_CACHE], ++[ ++if test -f $srcdir/config.guess ; then ++ ifelse([$1],,[AC_CANONICAL_HOST],[$1]) ++ system_name="$host_os" ++else ++ system_name="`(uname -s -r) 2>/dev/null`" ++ if test -z "$system_name" ; then ++ system_name="`(hostname) 2>/dev/null`" ++ fi ++fi ++test -n "$system_name" && AC_DEFINE_UNQUOTED(SYSTEM_NAME,"$system_name") ++AC_CACHE_VAL(cf_cv_system_name,[cf_cv_system_name="$system_name"]) ++ ++test -z "$system_name" && system_name="$cf_cv_system_name" ++test -n "$cf_cv_system_name" && AC_MSG_RESULT(Configuring for $cf_cv_system_name) ++ ++if test ".$system_name" != ".$cf_cv_system_name" ; then ++ AC_MSG_RESULT(Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)) ++ AC_ERROR("Please remove config.cache and try again.") ++fi ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_CHECK_ERRNO version: 9 updated: 2001/12/30 18:03:23 ++dnl -------------- ++dnl Check for data that is usually declared in or , e.g., ++dnl the 'errno' variable. Define a DECL_xxx symbol if we must declare it ++dnl ourselves. ++dnl ++dnl $1 = the name to check ++AC_DEFUN([CF_CHECK_ERRNO], ++[ ++AC_CACHE_CHECK(if external $1 is declared, cf_cv_dcl_$1,[ ++ AC_TRY_COMPILE([ ++#ifdef HAVE_STDLIB_H ++#include ++#endif ++#include ++#include ++#include ], ++ [long x = (long) $1], ++ [cf_cv_dcl_$1=yes], ++ [cf_cv_dcl_$1=no]) ++]) ++ ++if test "$cf_cv_dcl_$1" = no ; then ++ CF_UPPER(cf_result,decl_$1) ++ AC_DEFINE_UNQUOTED($cf_result) ++fi ++ ++# It's possible (for near-UNIX clones) that the data doesn't exist ++CF_CHECK_EXTERN_DATA($1,int) ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_CHECK_EXTERN_DATA version: 3 updated: 2001/12/30 18:03:23 ++dnl -------------------- ++dnl Check for existence of external data in the current set of libraries. If ++dnl we can modify it, it's real enough. ++dnl $1 = the name to check ++dnl $2 = its type ++AC_DEFUN([CF_CHECK_EXTERN_DATA], ++[ ++AC_CACHE_CHECK(if external $1 exists, cf_cv_have_$1,[ ++ AC_TRY_LINK([ ++#undef $1 ++extern $2 $1; ++], ++ [$1 = 2], ++ [cf_cv_have_$1=yes], ++ [cf_cv_have_$1=no]) ++]) ++ ++if test "$cf_cv_have_$1" = yes ; then ++ CF_UPPER(cf_result,have_$1) ++ AC_DEFINE_UNQUOTED($cf_result) ++fi ++ ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_CPP_PARAM_INIT version: 4 updated: 2001/04/07 22:31:18 ++dnl ----------------- ++dnl Check if the C++ compiler accepts duplicate parameter initialization. This ++dnl is a late feature for the standard and is not in some recent compilers ++dnl (1999/9/11). ++AC_DEFUN([CF_CPP_PARAM_INIT], ++[ ++if test -n "$CXX"; then ++AC_CACHE_CHECK(if $CXX accepts parameter initialization,cf_cv_cpp_param_init,[ ++ AC_LANG_SAVE ++ AC_LANG_CPLUSPLUS ++ AC_TRY_RUN([ ++class TEST { ++private: ++ int value; ++public: ++ TEST(int x = 1); ++ ~TEST(); ++}; ++ ++TEST::TEST(int x = 1) // some compilers do not like second initializer ++{ ++ value = x; ++} ++void main() { } ++], ++ [cf_cv_cpp_param_init=yes], ++ [cf_cv_cpp_param_init=no], ++ [cf_cv_cpp_param_init=unknown]) ++ AC_LANG_RESTORE ++]) ++fi ++test "$cf_cv_cpp_param_init" = yes && AC_DEFINE(CPP_HAS_PARAM_INIT) ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_CPP_VSCAN_FUNC version: 5 updated: 2001/12/02 01:39:28 ++dnl ----------------- ++dnl Check if the g++ compiler supports vscan function (not a standard feature). ++AC_DEFUN([CF_CPP_VSCAN_FUNC], ++[ ++if test -n "$CXX"; then ++ ++AC_LANG_SAVE ++AC_LANG_CPLUSPLUS ++AC_CHECK_HEADERS(strstream.h) ++ ++AC_CACHE_CHECK(if $CXX supports vscan function,cf_cv_cpp_vscan_func,[ ++ for cf_vscan_func in strstream strstream_cast stdio ++ do ++ case $cf_vscan_func in #(vi ++ stdio) cf_vscan_defs=USE_STDIO_VSCAN ;; #(vi ++ strstream) cf_vscan_defs=USE_STRSTREAM_VSCAN ;; ++ strstream_cast) cf_vscan_defs=USE_STRSTREAM_VSCAN_CAST ;; ++ esac ++ AC_TRY_LINK([ ++#include ++#include ++#define $cf_vscan_defs 1 ++#if defined(USE_STDIO_VSCAN) ++#elif defined(HAVE_STRSTREAM_H) && defined(USE_STRSTREAM_VSCAN) ++#include ++#endif ++ ++int scanw(const char* fmt, ...) ++{ ++ int result = -1; ++ char buf[BUFSIZ]; ++ ++ va_list args; ++ va_start(args, fmt); ++#if defined(USE_STDIO_VSCAN) ++ if (::vsscanf(buf, fmt, args) != -1) ++ result = 0; ++#elif defined(USE_STRSTREAM_VSCAN) ++ strstreambuf ss(buf, sizeof(buf)); ++ if (ss.vscan(fmt, args) != -1) ++ result = 0; ++#elif defined(USE_STRSTREAM_VSCAN_CAST) ++ strstreambuf ss(buf, sizeof(buf)); ++ if (ss.vscan(fmt, (_IO_va_list)args) != -1) ++ result = 0; ++#else ++#error case $cf_vscan_func failed ++#endif ++ va_end(args); ++ return result; ++} ++],[int tmp, foo = scanw("%d", &tmp)], ++ [cf_cv_cpp_vscan_func=$cf_vscan_func; break], ++ [cf_cv_cpp_vscan_func=no]) ++ test "$cf_cv_cpp_vscan_func" != no && break ++ done ++]) ++ ++AC_LANG_RESTORE ++fi ++ ++case $cf_cv_cpp_vscan_func in #(vi ++stdio) #(vi ++ AC_DEFINE(CPP_HAS_VSCAN_FUNC) ++ AC_DEFINE(USE_STDIO_VSCAN) ++ ;; ++strstream) ++ AC_DEFINE(CPP_HAS_VSCAN_FUNC) ++ AC_DEFINE(USE_STRSTREAM_VSCAN) ++ ;; ++strstream_cast) ++ AC_DEFINE(CPP_HAS_VSCAN_FUNC) ++ AC_DEFINE(USE_STRSTREAM_VSCAN_CAST) ++ ;; ++esac ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_DIRNAME version: 4 updated: 2002/12/21 19:25:52 ++dnl ---------- ++dnl "dirname" is not portable, so we fake it with a shell script. ++AC_DEFUN([CF_DIRNAME],[$1=`echo $2 | sed -e 's%/[[^/]]*$%%'`])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_DIRS_TO_MAKE version: 3 updated: 2002/02/23 20:38:31 ++dnl --------------- ++AC_DEFUN([CF_DIRS_TO_MAKE], ++[ ++DIRS_TO_MAKE="lib" ++for cf_item in $cf_list_models ++do ++ CF_OBJ_SUBDIR($cf_item,cf_subdir) ++ for cf_item2 in $DIRS_TO_MAKE ++ do ++ test $cf_item2 = $cf_subdir && break ++ done ++ test ".$cf_item2" != ".$cf_subdir" && DIRS_TO_MAKE="$DIRS_TO_MAKE $cf_subdir" ++done ++for cf_dir in $DIRS_TO_MAKE ++do ++ test ! -d $cf_dir && mkdir $cf_dir ++done ++AC_SUBST(DIRS_TO_MAKE) ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_ERRNO version: 5 updated: 1997/11/30 12:44:39 ++dnl -------- ++dnl Check if 'errno' is declared in ++AC_DEFUN([CF_ERRNO], ++[ ++CF_CHECK_ERRNO(errno) ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_ETIP_DEFINES version: 3 updated: 2003/03/22 19:13:43 ++dnl --------------- ++dnl Test for conflicting definitions of exception in gcc 2.8.0, etc., between ++dnl math.h and builtin.h, only for ncurses ++AC_DEFUN([CF_ETIP_DEFINES], ++[ ++AC_MSG_CHECKING(for special defines needed for etip.h) ++cf_save_CXXFLAGS="$CXXFLAGS" ++cf_result="none" ++for cf_math in "" MATH_H ++do ++for cf_excp in "" MATH_EXCEPTION ++do ++ CXXFLAGS="$cf_save_CXXFLAGS -I${srcdir}/c++ -I${srcdir}/menu -I${srcdir}/include" ++ test -n "$cf_math" && CXXFLAGS="$CXXFLAGS -DETIP_NEEDS_${cf_math}" ++ test -n "$cf_excp" && CXXFLAGS="$CXXFLAGS -DETIP_NEEDS_${cf_excp}" ++AC_TRY_COMPILE([ ++#include ++],[],[ ++ test -n "$cf_math" && AC_DEFINE_UNQUOTED(ETIP_NEEDS_${cf_math}) ++ test -n "$cf_excp" && AC_DEFINE_UNQUOTED(ETIP_NEEDS_${cf_excp}) ++ cf_result="$cf_math $cf_excp" ++ break ++],[]) ++done ++done ++AC_MSG_RESULT($cf_result) ++CXXFLAGS="$cf_save_CXXFLAGS" ++]) ++dnl --------------------------------------------------------------------------- ++dnl CF_FUNC_MEMMOVE version: 5 updated: 2000/08/12 23:18:52 ++dnl --------------- ++dnl Check for memmove, or a bcopy that can handle overlapping copy. If neither ++dnl is found, add our own version of memmove to the list of objects. ++AC_DEFUN([CF_FUNC_MEMMOVE], ++[ ++AC_CHECK_FUNC(memmove,,[ ++AC_CHECK_FUNC(bcopy,[ ++ AC_CACHE_CHECK(if bcopy does overlapping moves,cf_cv_good_bcopy,[ ++ AC_TRY_RUN([ ++int main() { ++ static char data[] = "abcdefghijklmnopqrstuwwxyz"; ++ char temp[40]; ++ bcopy(data, temp, sizeof(data)); ++ bcopy(temp+10, temp, 15); ++ bcopy(temp+5, temp+15, 10); ++ exit (strcmp(temp, "klmnopqrstuwwxypqrstuwwxyz")); ++} ++ ], ++ [cf_cv_good_bcopy=yes], ++ [cf_cv_good_bcopy=no], ++ [cf_cv_good_bcopy=unknown]) ++ ]) ++ ],[cf_cv_good_bcopy=no]) ++ if test "$cf_cv_good_bcopy" = yes ; then ++ AC_DEFINE(USE_OK_BCOPY) ++ else ++ AC_DEFINE(USE_MY_MEMMOVE) ++ fi ++])])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_FUNC_POLL version: 2 updated: 2000/02/06 01:38:04 ++dnl ------------ ++dnl See if the poll function really works. Some platforms have poll(), but ++dnl it does not work for terminals or files. ++AC_DEFUN([CF_FUNC_POLL],[ ++AC_CACHE_CHECK(if poll really works,cf_cv_working_poll,[ ++AC_TRY_RUN([ ++#include ++#ifdef HAVE_POLL_H ++#include ++#else ++#include ++#endif ++int main() { ++ struct pollfd myfds; ++ int ret; ++ ++ myfds.fd = 0; ++ myfds.events = POLLIN; ++ ++ ret = poll(&myfds, 1, 100); ++ exit(ret != 0); ++}], ++ [cf_cv_working_poll=yes], ++ [cf_cv_working_poll=no], ++ [cf_cv_working_poll=unknown])]) ++test "$cf_cv_working_poll" = "yes" && AC_DEFINE(HAVE_WORKING_POLL) ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_FUNC_TERMIOS version: 2 updated: 2000/07/22 23:37:24 ++dnl --------------- ++dnl Some old/broken variations define tcgetattr() only as a macro in ++dnl termio(s).h ++AC_DEFUN([CF_FUNC_TERMIOS],[ ++AC_REQUIRE([CF_STRUCT_TERMIOS]) ++AC_CACHE_CHECK(for tcgetattr, cf_cv_have_tcgetattr,[ ++AC_TRY_LINK([ ++#include ++#ifdef HAVE_UNISTD_H ++#include ++#endif ++#ifdef HAVE_TERMIOS_H ++#include ++#define TTY struct termios ++#else ++#ifdef HAVE_TERMIO_H ++#include ++#define TTY struct termio ++#endif ++#endif ++],[ ++TTY foo; ++tcgetattr(1, &foo);], ++[cf_cv_have_tcgetattr=yes], ++[cf_cv_have_tcgetattr=no])]) ++test "$cf_cv_have_tcgetattr" = yes && AC_DEFINE(HAVE_TCGETATTR) ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_FUNC_VSSCANF version: 3 updated: 2001/12/19 00:50:10 ++dnl --------------- ++dnl Check for vsscanf() function, which is in c9x but generally not in earlier ++dnl versions of C. It is in the GNU C library, and can often be simulated by ++dnl other functions. ++AC_DEFUN([CF_FUNC_VSSCANF], ++[ ++AC_CACHE_CHECK(for vsscanf function or workaround,cf_cv_func_vsscanf,[ ++AC_TRY_LINK([ ++#include ++#include ],[ ++ va_list ap; ++ vsscanf("from", "%d", ap)],[cf_cv_func_vsscanf=vsscanf],[ ++AC_TRY_LINK([ ++#include ++#include ],[ ++ FILE strbuf; ++ char *str = "from"; ++ ++ strbuf._flag = _IOREAD; ++ strbuf._ptr = strbuf._base = (unsigned char *) str; ++ strbuf._cnt = strlen(str); ++ strbuf._file = _NFILE; ++ return (vfscanf(&strbuf, "%d", ap))],[cf_cv_func_vsscanf=vfscanf],[ ++AC_TRY_LINK([ ++#include ++#include ],[ ++ FILE strbuf; ++ char *str = "from"; ++ ++ strbuf._flag = _IOREAD; ++ strbuf._ptr = strbuf._base = (unsigned char *) str; ++ strbuf._cnt = strlen(str); ++ strbuf._file = _NFILE; ++ return (_doscan(&strbuf, "%d", ap))],[cf_cv_func_vsscanf=_doscan],[ ++cf_cv_func_vsscanf=no])])])]) ++ ++case $cf_cv_func_vsscanf in #(vi ++vsscanf) AC_DEFINE(HAVE_VSSCANF);; #(vi ++vfscanf) AC_DEFINE(HAVE_VFSCANF);; #(vi ++_doscan) AC_DEFINE(HAVE__DOSCAN);; ++esac ++ ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_GCC_ATTRIBUTES version: 9 updated: 2002/12/21 19:25:52 ++dnl ----------------- ++dnl Test for availability of useful gcc __attribute__ directives to quiet ++dnl compiler warnings. Though useful, not all are supported -- and contrary ++dnl to documentation, unrecognized directives cause older compilers to barf. ++AC_DEFUN([CF_GCC_ATTRIBUTES], ++[ ++if test "$GCC" = yes ++then ++cat > conftest.i < conftest.$ac_ext <&AC_FD_CC ++ case $cf_attribute in ++ scanf|printf) ++ cat >conftest.h <conftest.h <>confdefs.h ++ fi ++ done ++else ++ fgrep define conftest.i >>confdefs.h ++fi ++rm -rf conftest* ++fi ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_GCC_VERSION version: 3 updated: 2003/09/06 19:16:57 ++dnl -------------- ++dnl Find version of gcc ++AC_DEFUN([CF_GCC_VERSION],[ ++AC_REQUIRE([AC_PROG_CC]) ++GCC_VERSION=none ++if test "$GCC" = yes ; then ++ AC_MSG_CHECKING(version of $CC) ++ GCC_VERSION="`${CC} --version|sed -e '2,$d' -e 's/^[[^0-9.]]*//' -e 's/[[^0-9.]].*//'`" ++ test -z "$GCC_VERSION" && GCC_VERSION=unknown ++ AC_MSG_RESULT($GCC_VERSION) ++fi ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_GCC_WARNINGS version: 15 updated: 2003/07/05 18:42:30 ++dnl --------------- ++dnl Check if the compiler supports useful warning options. There's a few that ++dnl we don't use, simply because they're too noisy: ++dnl ++dnl -Wconversion (useful in older versions of gcc, but not in gcc 2.7.x) ++dnl -Wredundant-decls (system headers make this too noisy) ++dnl -Wtraditional (combines too many unrelated messages, only a few useful) ++dnl -Wwrite-strings (too noisy, but should review occasionally). This ++dnl is enabled for ncurses using "--enable-const". ++dnl -pedantic ++dnl ++AC_DEFUN([CF_GCC_WARNINGS], ++[ ++AC_REQUIRE([CF_GCC_VERSION]) ++if test "$GCC" = yes ++then ++ cat > conftest.$ac_ext <>conftest.ads <>conftest.adb <&AC_FD_CC 2>&1 ) ; then ++ if ( ./conftest 1>&AC_FD_CC 2>&1 ) ; then ++ifelse($3,, :,[ $3]) ++ifelse($4,,,[ else ++ $4]) ++ fi ++ifelse($4,,,[else ++ $4]) ++fi ++rm -f conftest* ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_GNAT_VERSION version: 11 updated: 2003/09/06 19:42:09 ++dnl --------------- ++dnl Verify version of GNAT. ++AC_DEFUN([CF_GNAT_VERSION], ++[ ++AC_MSG_CHECKING(for gnat version) ++cf_gnat_version=`${cf_ada_make-gnatmake} -v 2>&1 | grep '[[0-9]].[[0-9]][[0-9]]*' |\ ++ sed -e '2,$d' -e 's/[[^0-9 \.]]//g' -e 's/^[[ ]]*//' -e 's/ .*//'` ++AC_MSG_RESULT($cf_gnat_version) ++ ++case $cf_gnat_version in ++ 3.1[[1-9]]*|3.[[2-9]]*|[[4-9]].*) ++ cf_cv_prog_gnat_correct=yes ++ ;; ++ *) echo Unsupported GNAT version $cf_gnat_version. Required is 3.11 or better. Disabling Ada95 binding. ++ cf_cv_prog_gnat_correct=no ++ ;; ++esac ++case $cf_gnat_version in ++ 3.[[1-9]]*|[[4-9]].*) ++ cf_compile_generics=generics ++ cf_generic_objects="\$(GENOBJS)" ++ ;; ++ *) cf_compile_generics= ++ cf_generic_objects= ++ ;; ++esac ++]) ++dnl --------------------------------------------------------------------------- ++dnl CF_GNU_SOURCE version: 3 updated: 2000/10/29 23:30:53 ++dnl ------------- ++dnl Check if we must define _GNU_SOURCE to get a reasonable value for ++dnl _XOPEN_SOURCE, upon which many POSIX definitions depend. This is a defect ++dnl (or misfeature) of glibc2, which breaks portability of many applications, ++dnl since it is interwoven with GNU extensions. ++dnl ++dnl Well, yes we could work around it... ++AC_DEFUN([CF_GNU_SOURCE], ++[ ++AC_CACHE_CHECK(if we must define _GNU_SOURCE,cf_cv_gnu_source,[ ++AC_TRY_COMPILE([#include ],[ ++#ifndef _XOPEN_SOURCE ++make an error ++#endif], ++ [cf_cv_gnu_source=no], ++ [cf_save="$CPPFLAGS" ++ CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" ++ AC_TRY_COMPILE([#include ],[ ++#ifdef _XOPEN_SOURCE ++make an error ++#endif], ++ [cf_cv_gnu_source=no], ++ [cf_cv_gnu_source=yes]) ++ CPPFLAGS="$cf_save" ++ ]) ++]) ++test "$cf_cv_gnu_source" = yes && CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_GPP_LIBRARY version: 8 updated: 2003/02/02 01:41:46 ++dnl -------------- ++dnl If we're trying to use g++, test if libg++ is installed (a rather common ++dnl problem :-). If we have the compiler but no library, we'll be able to ++dnl configure, but won't be able to build the c++ demo program. ++AC_DEFUN([CF_GPP_LIBRARY], ++[ ++cf_cxx_library=unknown ++case $cf_cv_system_name in #(vi ++os2*) #(vi ++ cf_gpp_libname=gpp ++ ;; ++*) ++ cf_gpp_libname=g++ ++ ;; ++esac ++if test "$GXX" = yes; then ++ AC_MSG_CHECKING([for lib$cf_gpp_libname]) ++ cf_save="$LIBS" ++ LIBS="$LIBS -l$cf_gpp_libname" ++ AC_TRY_LINK([ ++#include <$cf_gpp_libname/builtin.h> ++ ], ++ [two_arg_error_handler_t foo2 = lib_error_handler], ++ [cf_cxx_library=yes ++ CXXLIBS="$CXXLIBS -l$cf_gpp_libname" ++ if test "$cf_gpp_libname" = cpp ; then ++ AC_DEFINE(HAVE_GPP_BUILTIN_H) ++ else ++ AC_DEFINE(HAVE_GXX_BUILTIN_H) ++ fi], ++ [AC_TRY_LINK([ ++#include ++ ], ++ [two_arg_error_handler_t foo2 = lib_error_handler], ++ [cf_cxx_library=yes ++ CXXLIBS="$CXXLIBS -l$cf_gpp_libname" ++ AC_DEFINE(HAVE_BUILTIN_H)], ++ [cf_cxx_library=no])]) ++ LIBS="$cf_save" ++ AC_MSG_RESULT($cf_cxx_library) ++fi ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_GXX_VERSION version: 3 updated: 2003/09/06 19:16:21 ++dnl -------------- ++dnl Check for version of g++ ++AC_DEFUN([CF_GXX_VERSION],[ ++AC_REQUIRE([AC_PROG_CPP]) ++GXX_VERSION=none ++if test "$GXX" = yes; then ++ AC_MSG_CHECKING(version of g++) ++ GXX_VERSION="`${CXX-g++} --version|sed -e '2,$d'`" ++ AC_MSG_RESULT($GXX_VERSION) ++fi ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_INCLUDE_DIRS version: 4 updated: 2002/12/01 00:12:15 ++dnl --------------- ++dnl Construct the list of include-options according to whether we're building ++dnl in the source directory or using '--srcdir=DIR' option. If we're building ++dnl with gcc, don't append the includedir if it happens to be /usr/include, ++dnl since that usually breaks gcc's shadow-includes. ++AC_DEFUN([CF_INCLUDE_DIRS], ++[ ++CPPFLAGS="-I. -I../include $CPPFLAGS" ++if test "$srcdir" != "."; then ++ CPPFLAGS="-I\$(srcdir)/../include $CPPFLAGS" ++fi ++if test "$GCC" != yes; then ++ CPPFLAGS="$CPPFLAGS -I\$(includedir)" ++elif test "$includedir" != "/usr/include"; then ++ if test "$includedir" = '${prefix}/include' ; then ++ if test $prefix != /usr ; then ++ CPPFLAGS="$CPPFLAGS -I\$(includedir)" ++ fi ++ else ++ CPPFLAGS="$CPPFLAGS -I\$(includedir)" ++ fi ++fi ++AC_SUBST(CPPFLAGS) ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_ISASCII version: 3 updated: 2000/08/12 23:18:52 ++dnl ---------- ++dnl Check if we have either a function or macro for 'isascii()'. ++AC_DEFUN([CF_ISASCII], ++[ ++AC_MSG_CHECKING(for isascii) ++AC_CACHE_VAL(cf_cv_have_isascii,[ ++ AC_TRY_LINK([#include ],[int x = isascii(' ')], ++ [cf_cv_have_isascii=yes], ++ [cf_cv_have_isascii=no]) ++])dnl ++AC_MSG_RESULT($cf_cv_have_isascii) ++test "$cf_cv_have_isascii" = yes && AC_DEFINE(HAVE_ISASCII) ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_LIBUTF8 version: 2 updated: 2002/01/19 22:51:32 ++dnl ---------- ++dnl Check for libutf8 ++AC_DEFUN([CF_LIBUTF8], ++[ ++AC_CACHE_CHECK(for putwc in libutf8,cf_cv_libutf8,[ ++ cf_save_LIBS="$LIBS" ++ LIBS="-lutf8 $LIBS" ++AC_TRY_LINK([ ++#include ],[putwc(0,0);], ++ [cf_cv_libutf8=yes], ++ [cf_cv_libutf8=no]) ++ LIBS="$cf_save_LIBS" ++]) ++ ++if test "$cf_cv_libutf8" = yes ; then ++ AC_DEFINE(HAVE_LIBUTF8_H) ++ LIBS="-lutf8 $LIBS" ++fi ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_LIB_PREFIX version: 7 updated: 2001/01/12 01:23:48 ++dnl ------------- ++dnl Compute the library-prefix for the given host system ++dnl $1 = variable to set ++AC_DEFUN([CF_LIB_PREFIX], ++[ ++ case $cf_cv_system_name in ++ OS/2*) LIB_PREFIX='' ;; ++ os2*) LIB_PREFIX='' ;; ++ *) LIB_PREFIX='lib' ;; ++ esac ++ifelse($1,,,[$1=$LIB_PREFIX]) ++ AC_SUBST(LIB_PREFIX) ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_LIB_RULES version: 30 updated: 2004/01/10 15:50:50 ++dnl ------------ ++dnl Append definitions and rules for the given models to the subdirectory ++dnl Makefiles, and the recursion rule for the top-level Makefile. If the ++dnl subdirectory is a library-source directory, modify the LIBRARIES list in ++dnl the corresponding makefile to list the models that we'll generate. ++dnl ++dnl For shared libraries, make a list of symbolic links to construct when ++dnl generating each library. The convention used for Linux is the simplest ++dnl one: ++dnl lib.so -> ++dnl lib.so. -> ++dnl lib.so.. ++AC_DEFUN([CF_LIB_RULES], ++[ ++CF_LIB_PREFIX(cf_prefix) ++AC_REQUIRE([CF_SUBST_NCURSES_VERSION]) ++for cf_dir in $SRC_SUBDIRS ++do ++ if test -f $srcdir/$cf_dir/modules; then ++ ++ IMPORT_LIB= ++ SHARED_LIB= ++ LIBS_TO_MAKE= ++ for cf_item in $CF_LIST_MODELS ++ do ++ CF_LIB_SUFFIX($cf_item,cf_suffix) ++ if test $cf_item = shared ; then ++ if test "$cf_cv_do_symlinks" = yes ; then ++ case "$cf_cv_shlib_version" in #(vi ++ rel) #(vi ++ case "$cf_cv_system_name" in #(vi ++ darwin*) cf_suffix='.$(REL_VERSION)'"$cf_suffix" ;; #(vi ++ *) cf_suffix="$cf_suffix"'.$(REL_VERSION)' ;; ++ esac ++ ;; ++ abi) ++ case "$cf_cv_system_name" in #(vi ++ darwin*) cf_suffix='.$(ABI_VERSION)'"$cf_suffix" ;; #(vi ++ *) cf_suffix="$cf_suffix"'.$(ABI_VERSION)' ;; ++ esac ++ ;; ++ esac ++ fi ++ # cygwin needs import library, and has unique naming convention ++ # use autodetected ${cf_prefix} for import lib and static lib, but ++ # use 'cyg' prefix for shared lib. ++ if test $cf_cv_shlib_version = cygdll ; then ++ SHARED_LIB="../lib/cyg${cf_dir}\$(ABI_VERSION).dll" ++ IMPORT_LIB="../lib/${cf_prefix}${cf_dir}.dll.a" ++ LIBS_TO_MAKE="$LIBS_TO_MAKE \$(SHARED_LIB) \$(IMPORT_LIB)" ++ continue ++ fi ++ fi ++ LIBS_TO_MAKE="$LIBS_TO_MAKE ../lib/${cf_prefix}${cf_dir}${cf_suffix}" ++ done ++ ++ if test $cf_dir = ncurses ; then ++ cf_subsets="$LIB_SUBSETS" ++ cf_termlib=`echo "$cf_subsets" |sed -e 's/ .*$//'` ++ if test "$cf_termlib" != "$cf_subsets" ; then ++ cf_item=`echo $LIBS_TO_MAKE |sed -e s%$LIB_NAME%$TINFO_NAME%g` ++ LIBS_TO_MAKE="$cf_item $LIBS_TO_MAKE" ++ fi ++ else ++ cf_subsets=`echo "$LIB_SUBSETS" | sed -e 's/^termlib.* //'` ++ fi ++ ++ sed -e "s%@LIBS_TO_MAKE@%$LIBS_TO_MAKE%" \ ++ -e "s%@IMPORT_LIB@%$IMPORT_LIB%" \ ++ -e "s%@SHARED_LIB@%$SHARED_LIB%" \ ++ $cf_dir/Makefile >$cf_dir/Makefile.out ++ mv $cf_dir/Makefile.out $cf_dir/Makefile ++ ++ $AWK -f $srcdir/mk-0th.awk \ ++ libname="${cf_dir}${LIB_SUFFIX}" subsets="$LIB_SUBSETS" \ ++ $srcdir/$cf_dir/modules >>$cf_dir/Makefile ++ ++ for cf_subset in $cf_subsets ++ do ++ cf_subdirs= ++ for cf_item in $CF_LIST_MODELS ++ do ++ echo "Appending rules for ${cf_item} model (${cf_dir}: ${cf_subset})" ++ CF_UPPER(CF_ITEM,$cf_item) ++ CF_LIB_SUFFIX($cf_item,cf_suffix) ++ CF_OBJ_SUBDIR($cf_item,cf_subdir) ++ ++ # These dependencies really are for development, not ++ # builds, but they are useful in porting, too. ++ cf_depend="../include/ncurses_cfg.h" ++ if test "$srcdir" = "."; then ++ cf_reldir="." ++ else ++ cf_reldir="\$(srcdir)" ++ fi ++ ++ if test -f $srcdir/$cf_dir/$cf_dir.priv.h; then ++ cf_depend="$cf_depend $cf_reldir/$cf_dir.priv.h" ++ elif test -f $srcdir/$cf_dir/curses.priv.h; then ++ cf_depend="$cf_depend $cf_reldir/curses.priv.h" ++ fi ++ ++ $AWK -f $srcdir/mk-1st.awk \ ++ name=$cf_dir \ ++ traces=$LIB_TRACING \ ++ MODEL=$CF_ITEM \ ++ model=$cf_subdir \ ++ prefix=$cf_prefix \ ++ suffix=$cf_suffix \ ++ subset=$cf_subset \ ++ ShlibVer=$cf_cv_shlib_version \ ++ ShlibVerInfix=$cf_cv_shlib_version_infix \ ++ DoLinks=$cf_cv_do_symlinks \ ++ rmSoLocs=$cf_cv_rm_so_locs \ ++ ldconfig="$LDCONFIG" \ ++ overwrite=$WITH_OVERWRITE \ ++ depend="$cf_depend" \ ++ host="$host" \ ++ $srcdir/$cf_dir/modules >>$cf_dir/Makefile ++ for cf_subdir2 in $cf_subdirs lib ++ do ++ test $cf_subdir = $cf_subdir2 && break ++ done ++ test "${cf_subset}.${cf_subdir2}" != "${cf_subset}.${cf_subdir}" && \ ++ $AWK -f $srcdir/mk-2nd.awk \ ++ name=$cf_dir \ ++ traces=$LIB_TRACING \ ++ MODEL=$CF_ITEM \ ++ model=$cf_subdir \ ++ subset=$cf_subset \ ++ srcdir=$srcdir \ ++ echo=$WITH_ECHO \ ++ $srcdir/$cf_dir/modules >>$cf_dir/Makefile ++ cf_subdirs="$cf_subdirs $cf_subdir" ++ done ++ done ++ fi ++ ++ echo ' cd '$cf_dir' && $(MAKE) $(CF_MFLAGS) [$]@' >>Makefile ++done ++ ++for cf_dir in $SRC_SUBDIRS ++do ++ if test -f $cf_dir/Makefile ; then ++ case "$cf_dir" in ++ Ada95) #(vi ++ echo 'libs \' >> Makefile ++ echo 'install.libs \' >> Makefile ++ echo 'uninstall.libs ::' >> Makefile ++ echo ' cd '$cf_dir' && $(MAKE) $(CF_MFLAGS) [$]@' >> Makefile ++ ;; ++ esac ++ fi ++ ++ if test -f $srcdir/$cf_dir/modules; then ++ echo >> Makefile ++ if test -f $srcdir/$cf_dir/headers; then ++cat >> Makefile <> Makefile ++fi ++cat >> Makefile <> Makefile <> Makefile <> Makefile <headers.sh <>headers.sh </<\$END\/\$NAME>/" >> \$TMPSED ++ done ++ ;; ++*) ++ echo "" >> \$TMPSED ++ ;; ++esac ++CF_EOF ++else ++ cat >>headers.sh <//" >> \$TMPSED ++ NAME=ncurses.h ++ fi ++ echo "s/<\$NAME>/<\$END\/\$NAME>/" >> \$TMPSED ++ done ++ ;; ++*) ++ echo "s///" >> \$TMPSED ++ ;; ++esac ++CF_EOF ++fi ++cat >>headers.sh < \$TMPSRC ++NAME=\`basename \$SRC\` ++CF_EOF ++if test $WITH_CURSES_H != yes; then ++ cat >>headers.sh <>headers.sh <>$cf_dir/Makefile <>$cf_dir/Makefile ++ j=$i ++ done ++ echo " $j" >>$cf_dir/Makefile ++ for i in `cat $srcdir/$cf_dir/headers |fgrep -v "#"` ++ do ++ echo " @ (cd \$(DESTDIR)\$(includedir) && rm -f `basename $i`) ; ../headers.sh \$(INSTALL_DATA) \$(DESTDIR)\$(includedir) \$(srcdir) $i" >>$cf_dir/Makefile ++ test $i = curses.h && test $WITH_CURSES_H = yes && echo " @ (cd \$(DESTDIR)\$(includedir) && rm -f ncurses.h && \$(LN_S) curses.h ncurses.h)" >>$cf_dir/Makefile ++ done ++ ++ cat >>$cf_dir/Makefile <>$cf_dir/Makefile ++ test $i = curses.h && echo " -@ (cd \$(DESTDIR)\$(includedir) && rm -f ncurses.h)" >>$cf_dir/Makefile ++ done ++ fi ++ ++ if test -f $srcdir/$cf_dir/modules; then ++ if test "$cf_dir" != "c++" ; then ++ cat >>$cf_dir/Makefile <<"CF_EOF" ++depend : $(AUTO_SRC) ++ makedepend -- $(CPPFLAGS) -- $(C_SRC) ++ ++# DO NOT DELETE THIS LINE -- make depend depends on it. ++CF_EOF ++ fi ++ fi ++done ++ ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_LIB_SUFFIX version: 13 updated: 2003/11/01 16:09:07 ++dnl ------------- ++dnl Compute the library file-suffix from the given model name ++dnl $1 = model name ++dnl $2 = variable to set ++dnl The variable $LIB_SUFFIX, if set, prepends the variable to set. ++AC_DEFUN([CF_LIB_SUFFIX], ++[ ++ AC_REQUIRE([CF_SUBST_NCURSES_VERSION]) ++ case $1 in ++ libtool) $2='.la' ;; ++ normal) $2='.a' ;; ++ debug) $2='_g.a' ;; ++ profile) $2='_p.a' ;; ++ shared) ++ case $cf_cv_system_name in ++ cygwin*) $2='.dll' ;; ++ darwin*) $2='.dylib' ;; ++ hpux*) ++ case $target in ++ ia64*) $2='.so' ;; ++ *) $2='.sl' ;; ++ esac ++ ;; ++ *) $2='.so' ;; ++ esac ++ esac ++ test -n "$LIB_SUFFIX" && $2="${LIB_SUFFIX}[$]{$2}" ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_LIB_TYPE version: 4 updated: 2000/10/20 22:57:49 ++dnl ----------- ++dnl Compute the string to append to -library from the given model name ++dnl $1 = model name ++dnl $2 = variable to set ++dnl The variable $LIB_SUFFIX, if set, prepends the variable to set. ++AC_DEFUN([CF_LIB_TYPE], ++[ ++ case $1 in ++ libtool) $2='' ;; ++ normal) $2='' ;; ++ debug) $2='_g' ;; ++ profile) $2='_p' ;; ++ shared) $2='' ;; ++ esac ++ test -n "$LIB_SUFFIX" && $2="${LIB_SUFFIX}[$]{$2}" ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_LINK_DATAONLY version: 6 updated: 2003/02/02 01:41:46 ++dnl ---------------- ++dnl Some systems have a non-ANSI linker that doesn't pull in modules that have ++dnl only data (i.e., no functions), for example NeXT. On those systems we'll ++dnl have to provide wrappers for global tables to ensure they're linked ++dnl properly. ++AC_DEFUN([CF_LINK_DATAONLY], ++[ ++AC_MSG_CHECKING([if data-only library module links]) ++AC_CACHE_VAL(cf_cv_link_dataonly,[ ++ rm -f conftest.a ++ cat >conftest.$ac_ext <&AC_FD_CC 1>/dev/null ++ fi ++ rm -f conftest.$ac_ext data.o ++ cat >conftest.$ac_ext <&AC_FD_CC 1>/dev/null ++ fi ++ rm -f conftest.$ac_ext func.o ++ ( eval $RANLIB conftest.a ) 2>&AC_FD_CC >/dev/null ++ cf_saveLIBS="$LIBS" ++ LIBS="conftest.a $LIBS" ++ AC_TRY_RUN([ ++ int main() ++ { ++ extern int testfunc(); ++ exit (!testfunc()); ++ } ++ ], ++ [cf_cv_link_dataonly=yes], ++ [cf_cv_link_dataonly=no], ++ [cf_cv_link_dataonly=unknown]) ++ LIBS="$cf_saveLIBS" ++ ]) ++AC_MSG_RESULT($cf_cv_link_dataonly) ++ ++if test "$cf_cv_link_dataonly" = no ; then ++ AC_DEFINE(BROKEN_LINKER) ++ BROKEN_LINKER=1 ++fi ++ ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_LINK_FUNCS version: 5 updated: 2003/02/02 01:41:46 ++dnl ------------- ++dnl Most Unix systems have both link and symlink, a few don't have symlink. ++dnl A few non-Unix systems implement symlink, but not link. ++dnl A few non-systems implement neither (or have nonfunctional versions). ++AC_DEFUN([CF_LINK_FUNCS], ++[ ++AC_CHECK_FUNCS( \ ++ remove \ ++ unlink ) ++ ++if test "$cross_compiling" = yes ; then ++ AC_CHECK_FUNCS( \ ++ link \ ++ symlink ) ++else ++ AC_CACHE_CHECK(if link/symlink functions work,cf_cv_link_funcs,[ ++ cf_cv_link_funcs= ++ for cf_func in link symlink ; do ++ AC_TRY_RUN([ ++#include ++#include ++#ifdef HAVE_UNISTD_H ++#include ++#endif ++int main() ++{ ++ int fail = 0; ++ char *src = "config.log"; ++ char *dst = "conftest.chk"; ++ struct stat src_sb; ++ struct stat dst_sb; ++ ++ stat(src, &src_sb); ++ fail = ($cf_func("config.log", "conftest.chk") < 0) ++ || (stat(dst, &dst_sb) < 0) ++ || (dst_sb.st_mtime != src_sb.st_mtime); ++#ifdef HAVE_UNLINK ++ unlink(dst); ++#else ++ remove(dst); ++#endif ++ exit (fail); ++} ++ ],[ ++ cf_cv_link_funcs="$cf_cv_link_funcs $cf_func" ++ eval 'ac_cv_func_'$cf_func'=yes'],[ ++ eval 'ac_cv_func_'$cf_func'=no'],[ ++ eval 'ac_cv_func_'$cf_func'=error']) ++ done ++ test -z "$cf_cv_link_funcs" && cf_cv_link_funcs=no ++ ]) ++ test "$ac_cv_func_link" = yes && AC_DEFINE(HAVE_LINK) ++ test "$ac_cv_func_symlink" = yes && AC_DEFINE(HAVE_SYMLINK) ++fi ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_MAKEFLAGS version: 9 updated: 2001/12/30 18:17:27 ++dnl ------------ ++dnl Some 'make' programs support $(MAKEFLAGS), some $(MFLAGS), to pass 'make' ++dnl options to lower-levels. It's very useful for "make -n" -- if we have it. ++dnl (GNU 'make' does both, something POSIX 'make', which happens to make the ++dnl $(MAKEFLAGS) variable incompatible because it adds the assignments :-) ++AC_DEFUN([CF_MAKEFLAGS], ++[ ++AC_CACHE_CHECK(for makeflags variable, cf_cv_makeflags,[ ++ cf_cv_makeflags='' ++ for cf_option in '-$(MAKEFLAGS)' '$(MFLAGS)' ++ do ++ cat >cf_makeflags.tmp </dev/null` ++ case "$cf_result" in ++ .*k) ++ cf_result=`${MAKE-make} -k -f cf_makeflags.tmp CC=cc 2>/dev/null` ++ case "$cf_result" in ++ .*CC=*) cf_cv_makeflags= ++ ;; ++ *) cf_cv_makeflags=$cf_option ++ ;; ++ esac ++ break ++ ;; ++ *) echo no match "$cf_result" ++ ;; ++ esac ++ done ++ rm -f cf_makeflags.tmp ++]) ++ ++AC_SUBST(cf_cv_makeflags) ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_MAKE_TAGS version: 2 updated: 2000/10/04 09:18:40 ++dnl ------------ ++dnl Generate tags/TAGS targets for makefiles. Do not generate TAGS if we have ++dnl a monocase filesystem. ++AC_DEFUN([CF_MAKE_TAGS],[ ++AC_REQUIRE([CF_MIXEDCASE_FILENAMES]) ++AC_CHECK_PROG(MAKE_LOWER_TAGS, ctags, yes, no) ++ ++if test "$cf_cv_mixedcase" = yes ; then ++ AC_CHECK_PROG(MAKE_UPPER_TAGS, etags, yes, no) ++else ++ MAKE_UPPER_TAGS=no ++fi ++ ++if test "$MAKE_UPPER_TAGS" = yes ; then ++ MAKE_UPPER_TAGS= ++else ++ MAKE_UPPER_TAGS="#" ++fi ++AC_SUBST(MAKE_UPPER_TAGS) ++ ++if test "$MAKE_LOWER_TAGS" = yes ; then ++ MAKE_LOWER_TAGS= ++else ++ MAKE_LOWER_TAGS="#" ++fi ++AC_SUBST(MAKE_LOWER_TAGS) ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_MANPAGE_FORMAT version: 7 updated: 2003/12/20 19:30:34 ++dnl ----------------- ++dnl Option to allow user to override automatic configuration of manpage format. ++dnl There are several special cases: ++dnl ++dnl gzip - man checks for, can display gzip'd files ++dnl compress - man checks for, can display compressed files ++dnl BSDI - files in the cat-directories are suffixed ".0" ++dnl formatted - installer should format (put files in cat-directory) ++dnl catonly - installer should only format, e.g., for a turnkey system. ++dnl ++dnl There are other configurations which this macro does not test, e.g., HPUX's ++dnl compressed manpages (but uncompressed manpages are fine, and HPUX's naming ++dnl convention would not match our use). ++AC_DEFUN([CF_MANPAGE_FORMAT], ++[ ++AC_REQUIRE([CF_PATHSEP]) ++AC_MSG_CHECKING(format of man-pages) ++ ++AC_ARG_WITH(manpage-format, ++ [ --with-manpage-format specify manpage-format: gzip/compress/BSDI/normal and ++ optionally formatted/catonly, e.g., gzip,formatted], ++ [MANPAGE_FORMAT=$withval], ++ [MANPAGE_FORMAT=unknown]) ++ ++test -z "$MANPAGE_FORMAT" && MANPAGE_FORMAT=unknown ++MANPAGE_FORMAT=`echo "$MANPAGE_FORMAT" | sed -e 's/,/ /g'` ++ ++cf_unknown= ++ ++case $MANPAGE_FORMAT in ++unknown) ++ if test -z "$MANPATH" ; then ++ MANPATH="/usr/man:/usr/share/man" ++ fi ++ ++ # look for the 'date' man-page (it's most likely to be installed!) ++ MANPAGE_FORMAT= ++ cf_preform=no ++ cf_catonly=yes ++ cf_example=date ++ ++ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATHSEP}" ++ for cf_dir in $MANPATH; do ++ test -z "$cf_dir" && cf_dir=/usr/man ++ for cf_name in $cf_dir/man*/$cf_example.[[01]]* $cf_dir/cat*/$cf_example.[[01]]* $cf_dir/man*/$cf_example $cf_dir/cat*/$cf_example ++ do ++ cf_test=`echo $cf_name | sed -e 's/*//'` ++ if test "x$cf_test" = "x$cf_name" ; then ++ ++ case "$cf_name" in ++ *.gz) MANPAGE_FORMAT="$MANPAGE_FORMAT gzip";; ++ *.Z) MANPAGE_FORMAT="$MANPAGE_FORMAT compress";; ++ *.0) MANPAGE_FORMAT="$MANPAGE_FORMAT BSDI";; ++ *) MANPAGE_FORMAT="$MANPAGE_FORMAT normal";; ++ esac ++ ++ case "$cf_name" in ++ $cf_dir/man*) ++ cf_catonly=no ++ ;; ++ $cf_dir/cat*) ++ cf_preform=yes ++ ;; ++ esac ++ break ++ fi ++ ++ # if we found a match in either man* or cat*, stop looking ++ if test -n "$MANPAGE_FORMAT" ; then ++ cf_found=no ++ test "$cf_preform" = yes && MANPAGE_FORMAT="$MANPAGE_FORMAT formatted" ++ test "$cf_catonly" = yes && MANPAGE_FORMAT="$MANPAGE_FORMAT catonly" ++ case "$cf_name" in ++ $cf_dir/cat*) ++ cf_found=yes ++ ;; ++ esac ++ test $cf_found=yes && break ++ fi ++ done ++ # only check the first directory in $MANPATH where we find manpages ++ if test -n "$MANPAGE_FORMAT" ; then ++ break ++ fi ++ done ++ # if we did not find the example, just assume it is normal ++ test -z "$MANPAGE_FORMAT" && MANPAGE_FORMAT=normal ++ IFS="$ac_save_ifs" ++ ;; ++*) ++ for cf_option in $MANPAGE_FORMAT; do ++ case $cf_option in #(vi ++ gzip|compress|BSDI|normal|formatted|catonly) ++ ;; ++ *) ++ cf_unknown="$cf_unknown $cf_option" ++ ;; ++ esac ++ done ++ ;; ++esac ++ ++AC_MSG_RESULT($MANPAGE_FORMAT) ++if test -n "$cf_unknown" ; then ++ AC_MSG_WARN(Unexpected manpage-format $cf_unknown) ++fi ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_MANPAGE_RENAMES version: 6 updated: 2002/01/19 22:51:32 ++dnl ------------------ ++dnl The Debian people have their own naming convention for manpages. This ++dnl option lets us override the name of the file containing renaming, or ++dnl disable it altogether. ++AC_DEFUN([CF_MANPAGE_RENAMES], ++[ ++AC_MSG_CHECKING(for manpage renaming) ++ ++AC_ARG_WITH(manpage-renames, ++ [ --with-manpage-renames specify manpage-renaming], ++ [MANPAGE_RENAMES=$withval], ++ [MANPAGE_RENAMES=yes]) ++ ++case ".$MANPAGE_RENAMES" in #(vi ++.no) #(vi ++ ;; ++.|.yes) ++ # Debian 'man' program? ++ if test -f /etc/debian_version ; then ++ MANPAGE_RENAMES=`cd $srcdir && pwd`/man/man_db.renames ++ else ++ MANPAGE_RENAMES=no ++ fi ++ ;; ++esac ++ ++if test "$MANPAGE_RENAMES" != no ; then ++ if test -f $srcdir/man/$MANPAGE_RENAMES ; then ++ MANPAGE_RENAMES=`cd $srcdir/man && pwd`/$MANPAGE_RENAMES ++ elif test ! -f $MANPAGE_RENAMES ; then ++ AC_MSG_ERROR(not a filename: $MANPAGE_RENAMES) ++ fi ++ ++ test ! -d man && mkdir man ++ ++ # Construct a sed-script to perform renaming within man-pages ++ if test -n "$MANPAGE_RENAMES" ; then ++ test ! -d man && mkdir man ++ sh $srcdir/man/make_sed.sh $MANPAGE_RENAMES >man/edit_man.sed ++ fi ++fi ++ ++AC_MSG_RESULT($MANPAGE_RENAMES) ++AC_SUBST(MANPAGE_RENAMES) ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_MANPAGE_SYMLINKS version: 4 updated: 2003/12/13 18:01:58 ++dnl ------------------- ++dnl Some people expect each tool to make all aliases for manpages in the ++dnl man-directory. This accommodates the older, less-capable implementations ++dnl of 'man', and is optional. ++AC_DEFUN([CF_MANPAGE_SYMLINKS], ++[ ++AC_MSG_CHECKING(if manpage aliases will be installed) ++ ++AC_ARG_WITH(manpage-aliases, ++ [ --with-manpage-aliases specify manpage-aliases using .so], ++ [MANPAGE_ALIASES=$withval], ++ [MANPAGE_ALIASES=yes]) ++ ++AC_MSG_RESULT($MANPAGE_ALIASES) ++ ++if test "$LN_S" = "ln -s"; then ++ cf_use_symlinks=yes ++else ++ cf_use_symlinks=no ++fi ++ ++MANPAGE_SYMLINKS=no ++if test "$MANPAGE_ALIASES" = yes ; then ++AC_MSG_CHECKING(if manpage symlinks should be used) ++ ++AC_ARG_WITH(manpage-symlinks, ++ [ --with-manpage-symlinks specify manpage-aliases using symlinks], ++ [MANPAGE_SYMLINKS=$withval], ++ [MANPAGE_SYMLINKS=$cf_use_symlinks]) ++ ++if test "$$cf_use_symlinks" = no; then ++if test "$MANPAGE_SYMLINKS" = yes ; then ++ AC_MSG_WARN(cannot make symlinks, will use .so files) ++ MANPAGE_SYMLINKS=no ++fi ++fi ++ ++AC_MSG_RESULT($MANPAGE_SYMLINKS) ++fi ++ ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_MANPAGE_TBL version: 3 updated: 2002/01/19 22:51:32 ++dnl -------------- ++dnl This option causes manpages to be run through tbl(1) to generate tables ++dnl correctly. ++AC_DEFUN([CF_MANPAGE_TBL], ++[ ++AC_MSG_CHECKING(for manpage tbl) ++ ++AC_ARG_WITH(manpage-tbl, ++ [ --with-manpage-tbl specify manpage processing with tbl], ++ [MANPAGE_TBL=$withval], ++ [MANPAGE_TBL=no]) ++ ++AC_MSG_RESULT($MANPAGE_TBL) ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_MAN_PAGES version: 27 updated: 2003/12/20 20:39:45 ++dnl ------------ ++dnl Try to determine if the man-pages on the system are compressed, and if ++dnl so, what format is used. Use this information to construct a script that ++dnl will install man-pages. ++AC_DEFUN([CF_MAN_PAGES], ++[ ++CF_MANPAGE_FORMAT ++CF_MANPAGE_RENAMES ++CF_MANPAGE_SYMLINKS ++CF_MANPAGE_TBL ++ ++ if test "$prefix" = "NONE" ; then ++ cf_prefix="$ac_default_prefix" ++ else ++ cf_prefix="$prefix" ++ fi ++ ++ case "$MANPAGE_FORMAT" in # (vi ++ *catonly*) # (vi ++ cf_format=yes ++ cf_inboth=no ++ ;; ++ *formatted*) # (vi ++ cf_format=yes ++ cf_inboth=yes ++ ;; ++ *) ++ cf_format=no ++ cf_inboth=no ++ ;; ++ esac ++ ++test ! -d man && mkdir man ++ ++cf_so_strip= ++cf_compress= ++case "$MANPAGE_FORMAT" in #(vi ++*compress*) #(vi ++ cf_so_strip="Z" ++ cf_compress=compress ++ ;; ++*gzip*) #(vi ++ cf_so_strip="gz" ++ cf_compress=gzip ++ ;; ++esac ++ ++cf_edit_man=man/edit_man.sh ++ ++cat >$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <\$TMP ++CF_EOF ++else ++cat >>$cf_edit_man <\$TMP ++CF_EOF ++fi ++ ++cat >>$cf_edit_man <\$TMP.out ++ mv \$TMP.out \$TMP ++fi ++CF_EOF ++ ++if test $with_curses_h != yes ; then ++cat >>$cf_edit_man <\$TMP.out ++ mv \$TMP.out \$TMP ++CF_EOF ++fi ++ ++cat >>$cf_edit_man <\$TMP.out ++ mv \$TMP.out \$TMP ++ fi ++CF_EOF ++ ++if test -n "$cf_compress" ; then ++cat >>$cf_edit_man <>$cf_edit_man <>$cf_edit_man <\$TMP ++CF_EOF ++if test -n "$cf_compress" ; then ++cat >>$cf_edit_man <>$cf_edit_man < ++ #include ++ ], ++ [double x = rand(); printf("result = %g\n", ]ifelse($2,,sin(x),$2)[)], ++ [cf_cv_need_libm=no], ++ [cf_cv_need_libm=yes])]) ++if test "$cf_cv_need_libm" = yes ++then ++ifelse($1,,[ ++ LIBS="$LIBS -lm" ++],[$1=-lm]) ++fi ++]) ++dnl --------------------------------------------------------------------------- ++dnl CF_MIXEDCASE_FILENAMES version: 3 updated: 2003/09/20 17:07:55 ++dnl ---------------------- ++dnl Check if the file-system supports mixed-case filenames. If we're able to ++dnl create a lowercase name and see it as uppercase, it doesn't support that. ++AC_DEFUN([CF_MIXEDCASE_FILENAMES], ++[ ++AC_CACHE_CHECK(if filesystem supports mixed-case filenames,cf_cv_mixedcase,[ ++if test "$cross_compiling" = yes ; then ++ case $target_alias in #(vi ++ *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-mingw32*|*-uwin*) #(vi ++ cf_cv_mixedcase=no ++ ;; ++ *) ++ cf_cv_mixedcase=yes ++ ;; ++ esac ++else ++ rm -f conftest CONFTEST ++ echo test >conftest ++ if test -f CONFTEST ; then ++ cf_cv_mixedcase=no ++ else ++ cf_cv_mixedcase=yes ++ fi ++ rm -f conftest CONFTEST ++fi ++]) ++test "$cf_cv_mixedcase" = yes && AC_DEFINE(MIXEDCASE_FILENAMES) ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_MKSTEMP version: 3 updated: 2001/11/08 20:59:59 ++dnl ---------- ++dnl Check for a working mkstemp. This creates two files, checks that they are ++dnl successfully created and distinct (AmigaOS apparently fails on the last). ++AC_DEFUN([CF_MKSTEMP],[ ++AC_CACHE_CHECK(for working mkstemp, cf_cv_func_mkstemp,[ ++rm -f conftest* ++AC_TRY_RUN([ ++#include ++#include ++#include ++#include ++#include ++int main() ++{ ++ char *tmpl = "conftestXXXXXX"; ++ char name[2][80]; ++ int n; ++ int result = 0; ++ int fd; ++ struct stat sb; ++ ++ umask(077); ++ for (n = 0; n < 2; ++n) { ++ strcpy(name[n], tmpl); ++ if ((fd = mkstemp(name[n])) >= 0) { ++ if (!strcmp(name[n], tmpl) ++ || stat(name[n], &sb) != 0 ++ || (sb.st_mode & S_IFMT) != S_IFREG ++ || (sb.st_mode & 077) != 0) { ++ result = 1; ++ } ++ close(fd); ++ } ++ } ++ if (result == 0 ++ && !strcmp(name[0], name[1])) ++ result = 1; ++ exit(result); ++} ++],[cf_cv_func_mkstemp=yes ++],[cf_cv_func_mkstemp=no ++],[AC_CHECK_FUNC(mkstemp) ++]) ++]) ++if test "$cf_cv_func_mkstemp" = yes ; then ++ AC_DEFINE(HAVE_MKSTEMP) ++fi ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_NUMBER_SYNTAX version: 1 updated: 2003/09/20 18:12:49 ++dnl ---------------- ++dnl Check if the given variable is a number. If not, report an error. ++dnl $1 is the variable ++dnl $2 is the message ++AC_DEFUN([CF_NUMBER_SYNTAX],[ ++if test -n "$1" ; then ++ case $1 in #(vi ++ [[0-9]]*) #(vi ++ ;; ++ *) ++ AC_MSG_ERROR($2 is not a number: $1) ++ ;; ++ esac ++else ++ AC_MSG_ERROR($2 value is empty) ++fi ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_OBJ_SUBDIR version: 4 updated: 2002/02/23 20:38:31 ++dnl ------------- ++dnl Compute the object-directory name from the given model name ++AC_DEFUN([CF_OBJ_SUBDIR], ++[ ++ case $1 in ++ libtool) $2='obj_lo' ;; ++ normal) $2='objects' ;; ++ debug) $2='obj_g' ;; ++ profile) $2='obj_p' ;; ++ shared) ++ case $cf_cv_system_name in #(vi ++ cygwin) #(vi ++ $2='objects' ;; ++ *) ++ $2='obj_s' ;; ++ esac ++ esac ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_PATHSEP version: 3 updated: 2001/01/12 01:23:53 ++dnl ---------- ++dnl Provide a value for the $PATH and similar separator ++AC_DEFUN([CF_PATHSEP], ++[ ++ case $cf_cv_system_name in ++ os2*) PATHSEP=';' ;; ++ *) PATHSEP=':' ;; ++ esac ++ifelse($1,,,[$1=$PATHSEP]) ++ AC_SUBST(PATHSEP) ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_PATH_SYNTAX version: 9 updated: 2002/09/17 23:03:38 ++dnl -------------- ++dnl Check the argument to see that it looks like a pathname. Rewrite it if it ++dnl begins with one of the prefix/exec_prefix variables, and then again if the ++dnl result begins with 'NONE'. This is necessary to work around autoconf's ++dnl delayed evaluation of those symbols. ++AC_DEFUN([CF_PATH_SYNTAX],[ ++case ".[$]$1" in #(vi ++.\[$]\(*\)*|.\'*\'*) #(vi ++ ;; ++..|./*|.\\*) #(vi ++ ;; ++.[[a-zA-Z]]:[[\\/]]*) #(vi OS/2 EMX ++ ;; ++.\[$]{*prefix}*) #(vi ++ eval $1="[$]$1" ++ case ".[$]$1" in #(vi ++ .NONE/*) ++ $1=`echo [$]$1 | sed -e s%NONE%$ac_default_prefix%` ++ ;; ++ esac ++ ;; #(vi ++.NONE/*) ++ $1=`echo [$]$1 | sed -e s%NONE%$ac_default_prefix%` ++ ;; ++*) ++ ifelse($2,,[AC_ERROR([expected a pathname, not \"[$]$1\"])],$2) ++ ;; ++esac ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_PREDEFINE version: 1 updated: 2003/07/26 17:53:56 ++dnl ------------ ++dnl Add definitions to CPPFLAGS to ensure they're predefined for all compiles. ++dnl ++dnl $1 = symbol to test ++dnl $2 = value (if any) to use for a predefinition ++AC_DEFUN([CF_PREDEFINE], ++[ ++AC_MSG_CHECKING(if we must define $1) ++AC_TRY_COMPILE([#include ++],[ ++#ifndef $1 ++make an error ++#endif],[cf_result=no],[cf_result=yes]) ++AC_MSG_RESULT($cf_result) ++ ++if test "$cf_result" = yes ; then ++ CPPFLAGS="$CPPFLAGS ifelse($2,,-D$1,[-D$1=$2])" ++elif test "x$2" != "x" ; then ++ AC_MSG_CHECKING(checking for compatible value versus $2) ++ AC_TRY_COMPILE([#include ++],[ ++#if $1-$2 < 0 ++make an error ++#endif],[cf_result=yes],[cf_result=no]) ++ AC_MSG_RESULT($cf_result) ++ if test "$cf_result" = no ; then ++ # perhaps we can override it - try... ++ CPPFLAGS="$CPPFLAGS -D$1=$2" ++ fi ++fi ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_PROG_EXT version: 10 updated: 2004/01/03 19:28:18 ++dnl ----------- ++dnl Compute $PROG_EXT, used for non-Unix ports, such as OS/2 EMX. ++AC_DEFUN([CF_PROG_EXT], ++[ ++AC_REQUIRE([CF_CHECK_CACHE]) ++case $cf_cv_system_name in ++os2*) ++ CFLAGS="$CFLAGS -Zmt" ++ CPPFLAGS="$CPPFLAGS -D__ST_MT_ERRNO__" ++ CXXFLAGS="$CXXFLAGS -Zmt" ++ # autoconf's macro sets -Zexe and suffix both, which conflict:w ++ LDFLAGS="$LDFLAGS -Zmt -Zcrtdll" ++ ac_cv_exeext=.exe ++ ;; ++esac ++ ++AC_EXEEXT ++AC_OBJEXT ++ ++PROG_EXT="$EXEEXT" ++AC_SUBST(PROG_EXT) ++test -n "$PROG_EXT" && AC_DEFINE_UNQUOTED(PROG_EXT,"$PROG_EXT") ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_PROG_INSTALL version: 5 updated: 2002/12/21 22:46:07 ++dnl --------------- ++dnl Force $INSTALL to be an absolute-path. Otherwise, edit_man.sh and the ++dnl misc/tabset install won't work properly. Usually this happens only when ++dnl using the fallback mkinstalldirs script ++AC_DEFUN([CF_PROG_INSTALL], ++[AC_PROG_INSTALL ++case $INSTALL in ++/*) ++ ;; ++*) ++ CF_DIRNAME(cf_dir,$INSTALL) ++ test -z "$cf_dir" && cf_dir=. ++ INSTALL=`cd $cf_dir && pwd`/`echo $INSTALL | sed -e 's%^.*/%%'` ++ ;; ++esac ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_PROG_LDCONFIG version: 1 updated: 2003/09/20 17:07:55 ++dnl ---------------- ++dnl Check for ldconfig, needed to fixup shared libraries that would be built ++dnl and then used in the install. ++AC_DEFUN([CF_PROG_LDCONFIG],[ ++if test "$cross_compiling" = yes ; then ++ LDCONFIG=: ++else ++case "$cf_cv_system_name" in #(vi ++freebsd*) #(vi ++ test -z "$LDCONFIG" && LDCONFIG="/sbin/ldconfig -R" ++ ;; ++*) LDPATH=$PATH:/sbin:/usr/sbin ++ AC_PATH_PROG(LDCONFIG,ldconfig,,$LDPATH) ++ ;; ++esac ++fi ++AC_SUBST(LDCONFIG) ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_REGEX version: 3 updated: 1997/11/01 14:26:01 ++dnl -------- ++dnl Attempt to determine if we've got one of the flavors of regular-expression ++dnl code that we can support. ++AC_DEFUN([CF_REGEX], ++[ ++AC_MSG_CHECKING([for regular-expression headers]) ++AC_CACHE_VAL(cf_cv_regex,[ ++AC_TRY_LINK([#include ++#include ],[ ++ regex_t *p; ++ int x = regcomp(p, "", 0); ++ int y = regexec(p, "", 0, 0, 0); ++ regfree(p); ++ ],[cf_cv_regex="regex.h"],[ ++ AC_TRY_LINK([#include ],[ ++ char *p = compile("", "", "", 0); ++ int x = step("", ""); ++ ],[cf_cv_regex="regexp.h"],[ ++ cf_save_LIBS="$LIBS" ++ LIBS="-lgen $LIBS" ++ AC_TRY_LINK([#include ],[ ++ char *p = compile("", "", ""); ++ int x = step("", ""); ++ ],[cf_cv_regex="regexpr.h"],[LIBS="$cf_save_LIBS"])])]) ++]) ++AC_MSG_RESULT($cf_cv_regex) ++case $cf_cv_regex in ++ regex.h) AC_DEFINE(HAVE_REGEX_H_FUNCS) ;; ++ regexp.h) AC_DEFINE(HAVE_REGEXP_H_FUNCS) ;; ++ regexpr.h) AC_DEFINE(HAVE_REGEXPR_H_FUNCS) ;; ++esac ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_SHARED_OPTS version: 30 updated: 2003/12/27 20:48:07 ++dnl -------------- ++dnl Attempt to determine the appropriate CC/LD options for creating a shared ++dnl library. ++dnl ++dnl Note: $(LOCAL_LDFLAGS) is used to link executables that will run within the ++dnl build-tree, i.e., by making use of the libraries that are compiled in ../lib ++dnl We avoid compiling-in a ../lib path for the shared library since that can ++dnl lead to unexpected results at runtime. ++dnl $(LOCAL_LDFLAGS2) has the same intention but assumes that the shared libraries ++dnl are compiled in ../../lib ++dnl ++dnl The variable 'cf_cv_do_symlinks' is used to control whether we configure ++dnl to install symbolic links to the rel/abi versions of shared libraries. ++dnl ++dnl The variable 'cf_cv_shlib_version' controls whether we use the rel or abi ++dnl version when making symbolic links. ++dnl ++dnl The variable 'cf_cv_shlib_version_infix' controls whether shared library ++dnl version numbers are infix (ex: libncurses..dylib) or postfix ++dnl (ex: libncurses.so.). ++dnl ++dnl Some loaders leave 'so_locations' lying around. It's nice to clean up. ++AC_DEFUN([CF_SHARED_OPTS], ++[ ++ AC_REQUIRE([CF_SUBST_NCURSES_VERSION]) ++ LOCAL_LDFLAGS= ++ LOCAL_LDFLAGS2= ++ LD_SHARED_OPTS= ++ INSTALL_LIB="-m 644" ++ ++ cf_cv_do_symlinks=no ++ ++ AC_MSG_CHECKING(if release/abi version should be used for shared libs) ++ AC_ARG_WITH(shlib-version, ++ [ --with-shlib-version=X Specify rel or abi version for shared libs], ++ [test -z "$withval" && withval=auto ++ case $withval in #(vi ++ yes) #(vi ++ cf_cv_shlib_version=auto ++ ;; ++ rel|abi|auto|no) #(vi ++ cf_cv_shlib_version=$withval ++ ;; ++ *) ++ AC_ERROR([option value must be one of: rel, abi, auto or no]) ++ ;; ++ esac ++ ],[cf_cv_shlib_version=auto]) ++ AC_MSG_RESULT($cf_cv_shlib_version) ++ ++ cf_cv_rm_so_locs=no ++ ++ # Some less-capable ports of gcc support only -fpic ++ CC_SHARED_OPTS= ++ if test "$GCC" = yes ++ then ++ AC_MSG_CHECKING(which $CC option to use) ++ cf_save_CFLAGS="$CFLAGS" ++ for CC_SHARED_OPTS in -fPIC -fpic '' ++ do ++ CFLAGS="$cf_save_CFLAGS $CC_SHARED_OPTS" ++ AC_TRY_COMPILE([#include ],[int x = 1],[break],[]) ++ done ++ AC_MSG_RESULT($CC_SHARED_OPTS) ++ CFLAGS="$cf_save_CFLAGS" ++ fi ++ ++ cf_cv_shlib_version_infix=no ++ ++ case $cf_cv_system_name in ++ beos*) ++ MK_SHARED_LIB='$(CC) -o $[@] -Xlinker -soname=`basename $[@]` -nostart -e 0' ++ ;; ++ cygwin*) ++ CC_SHARED_OPTS= ++ MK_SHARED_LIB='$(CC) -shared -Wl,--out-implib=$(IMPORT_LIB) -Wl,--export-all-symbols -o $(SHARED_LIB)' ++ cf_cv_shlib_version=cygdll ++ cf_cv_shlib_version_infix=cygdll ++ ;; ++ darwin*) ++ EXTRA_CFLAGS="-no-cpp-precomp" ++ CC_SHARED_OPTS="-dynamic" ++ MK_SHARED_LIB='$(CC) -dynamiclib -install_name $(DESTDIR)$(libdir)/`basename $[@]` -compatibility_version $(ABI_VERSION) -current_version $(ABI_VERSION) -o $[@]' ++ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=abi ++ cf_cv_shlib_version_infix=yes ++ ;; ++ hpux*) ++ # (tested with gcc 2.7.2 -- I don't have c89) ++ if test "$GCC" = yes; then ++ LD_SHARED_OPTS='-Xlinker +b -Xlinker $(libdir)' ++ else ++ CC_SHARED_OPTS='+Z' ++ LD_SHARED_OPTS='-Wl,+b,$(libdir)' ++ fi ++ MK_SHARED_LIB='$(LD) +b $(libdir) -b -o $[@]' ++ # HP-UX shared libraries must be executable, and should be ++ # readonly to exploit a quirk in the memory manager. ++ INSTALL_LIB="-m 555" ++ ;; ++ irix*) ++ if test "$cf_cv_ld_rpath" = yes ; then ++ cf_ld_rpath_opt="-Wl,-rpath," ++ EXTRA_LDFLAGS="-Wl,-rpath,\$(libdir) $EXTRA_LDFLAGS" ++ fi ++ # tested with IRIX 5.2 and 'cc'. ++ if test "$GCC" != yes; then ++ CC_SHARED_OPTS='-KPIC' ++ fi ++ MK_SHARED_LIB='$(LD) -shared -rdata_shared -soname `basename $[@]` -o $[@]' ++ cf_cv_rm_so_locs=yes ++ ;; ++ linux*|gnu*|k*bsd*-gnu) ++ if test "$DFT_LWR_MODEL" = "shared" ; then ++ LOCAL_LDFLAGS="-Wl,-rpath,`pwd`/lib" ++ LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" ++ fi ++ if test "$cf_cv_ld_rpath" = yes ; then ++ cf_ld_rpath_opt="-Wl,-rpath," ++ EXTRA_LDFLAGS="$LOCAL_LDFLAGS $EXTRA_LDFLAGS" ++ fi ++ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel ++ MK_SHARED_LIB='$(CC) -shared -Wl,-soname,`basename $[@] .$(REL_VERSION)`.$(ABI_VERSION),-stats,-lc -o $[@]' ++ ;; ++ openbsd2*) ++ CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC" ++ MK_SHARED_LIB='$(LD) -Bshareable -soname,`basename $[@].$(ABI_VERSION)` -o $[@]' ++ ;; ++ freebsd[[45]]*) ++ CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC" ++ MK_SHARED_LIB='$(LD) -Bshareable -soname=`basename $[@]` -o $[@]' ++ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel ++ ++# This doesn't work - I keep getting spurious references to needing ++# libncurses.so.5.3 when ldd says it's resolved. LOCAL_LDFLAGS2 seems to be ++# no longer used anyway. And the rpath logic isn't relative - so I have to ++# add the local and install lib-directories: ++# ++# if test "$DFT_LWR_MODEL" = "shared" && test "$cf_cv_ld_rpath" = yes ; then ++# LOCAL_LDFLAGS="-rpath `pwd`/lib" ++# LOCAL_LDFLAGS2="-rpath \$(libdir) $LOCAL_LDFLAGS" ++# cf_ld_rpath_opt="-rpath " ++# EXTRA_LDFLAGS="$LOCAL_LDFLAGS $EXTRA_LDFLAGS" ++# fi ++ ;; ++ openbsd*|freebsd*) ++ CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC" ++ MK_SHARED_LIB='$(LD) -Bshareable -o $[@]' ++ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel ++ ;; ++ netbsd*) ++ CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC" ++ test "$cf_cv_ld_rpath" = yes && cf_ld_rpath_opt="-Wl,-rpath," ++ if test "$DFT_LWR_MODEL" = "shared" && test "$cf_cv_ld_rpath" = yes ; then ++ LOCAL_LDFLAGS="-Wl,-rpath,`pwd`/lib" ++ LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" ++ EXTRA_LDFLAGS="-Wl,-rpath,\$(libdir) $EXTRA_LDFLAGS" ++ MK_SHARED_LIB='$(CC) -shared -Wl,-soname,`basename $[@] .$(REL_VERSION)`.$(ABI_VERSION) -o $[@]' ++ if test "$cf_cv_shlib_version" = auto; then ++ if test ! -f /usr/libexec/ld.elf_so; then ++ cf_cv_shlib_version=rel ++ fi ++ fi ++ else ++ MK_SHARED_LIB='$(LD) -Bshareable -o $[@]' ++ fi ++ ;; ++ osf*|mls+*) ++ # tested with OSF/1 V3.2 and 'cc' ++ # tested with OSF/1 V3.2 and gcc 2.6.3 (but the c++ demo didn't ++ # link with shared libs). ++ MK_SHARED_LIB='$(LD) -set_version $(REL_VERSION):$(ABI_VERSION) -expect_unresolved "*" -shared -soname `basename $[@]`' ++ case $host_os in ++ osf4*) ++ MK_SHARED_LIB="${MK_SHARED_LIB} -msym" ++ ;; ++ esac ++ MK_SHARED_LIB="${MK_SHARED_LIB}"' -o $[@]' ++ if test "$DFT_LWR_MODEL" = "shared" ; then ++ LOCAL_LDFLAGS="-Wl,-rpath,`pwd`/lib" ++ LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" ++ fi ++ if test "$cf_cv_ld_rpath" = yes ; then ++ cf_ld_rpath_opt="-rpath" ++ # EXTRA_LDFLAGS="$LOCAL_LDFLAGS $EXTRA_LDFLAGS" ++ fi ++ cf_cv_rm_so_locs=yes ++ ;; ++ sco3.2v5*) # (also uw2* and UW7) hops 13-Apr-98 ++ # tested with osr5.0.5 ++ if test "$GCC" != yes; then ++ CC_SHARED_OPTS='-belf -KPIC' ++ fi ++ MK_SHARED_LIB='$(LD) -dy -G -h `basename $[@] .$(REL_VERSION)`.$(ABI_VERSION) -o [$]@' ++ if test "$cf_cv_ld_rpath" = yes ; then ++ # only way is to set LD_RUN_PATH but no switch for it ++ RUN_PATH=$libdir ++ fi ++ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel ++ LINK_PROGS='LD_RUN_PATH=$(libdir)' ++ LINK_TESTS='Pwd=`pwd`;LD_RUN_PATH=`dirname $${Pwd}`/lib' ++ ;; ++ sunos4*) ++ # tested with SunOS 4.1.1 and gcc 2.7.0 ++ if test "$GCC" != yes; then ++ CC_SHARED_OPTS='-KPIC' ++ fi ++ MK_SHARED_LIB='$(LD) -assert pure-text -o $[@]' ++ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel ++ ;; ++ solaris2*) ++ # tested with SunOS 5.5.1 (solaris 2.5.1) and gcc 2.7.2 ++ if test "$GCC" != yes; then ++ CC_SHARED_OPTS='-KPIC' ++ fi ++ MK_SHARED_LIB='$(LD) -dy -G -h `basename $[@] .$(REL_VERSION)`.$(ABI_VERSION) -o $[@]' ++ if test "$DFT_LWR_MODEL" = "shared" ; then ++ LOCAL_LDFLAGS="-R `pwd`/lib:\$(libdir)" ++ LOCAL_LDFLAGS2="$LOCAL_LDFLAGS" ++ fi ++ if test "$cf_cv_ld_rpath" = yes ; then ++ cf_ld_rpath_opt="-R" ++ EXTRA_LDFLAGS="$LOCAL_LDFLAGS $EXTRA_LDFLAGS" ++ fi ++ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel ++ ;; ++ sysv5uw7*|unix_sv*) ++ # tested with UnixWare 7.1.0 (gcc 2.95.2 and cc) ++ if test "$GCC" != yes; then ++ CC_SHARED_OPTS='-KPIC' ++ fi ++ MK_SHARED_LIB='$(LD) -d y -G -o [$]@' ++ ;; ++ *) ++ CC_SHARED_OPTS='unknown' ++ MK_SHARED_LIB='echo unknown' ++ ;; ++ esac ++ ++ # This works if the last tokens in $MK_SHARED_LIB are the -o target. ++ case "$cf_cv_shlib_version" in #(vi ++ rel|abi) ++ case "$MK_SHARED_LIB" in #(vi ++ *'-o $[@]') ++ test "$cf_cv_do_symlinks" = no && cf_cv_do_symlinks=yes ++ ;; ++ *) ++ AC_MSG_WARN(ignored --with-shlib-version) ++ ;; ++ esac ++ ;; ++ esac ++ ++ if test -n "$cf_ld_rpath_opt" ; then ++ AC_MSG_CHECKING(if we need a space after rpath option) ++ cf_save_LIBS="$LIBS" ++ LIBS="$LIBS ${cf_ld_rpath_opt}$libdir" ++ AC_TRY_LINK(, , cf_rpath_space=no, cf_rpath_space=yes) ++ LIBS="$cf_save_LIBS" ++ AC_MSG_RESULT($cf_rpath_space) ++ test "$cf_rpath_space" = yes && cf_ld_rpath_opt="$cf_ld_rpath_opt " ++ MK_SHARED_LIB="$MK_SHARED_LIB $cf_ld_rpath_opt\$(libdir)" ++ fi ++ ++ AC_SUBST(CC_SHARED_OPTS) ++ AC_SUBST(LD_SHARED_OPTS) ++ AC_SUBST(MK_SHARED_LIB) ++ AC_SUBST(LINK_PROGS) ++ AC_SUBST(LINK_TESTS) ++ AC_SUBST(EXTRA_LDFLAGS) ++ AC_SUBST(LOCAL_LDFLAGS) ++ AC_SUBST(LOCAL_LDFLAGS2) ++ AC_SUBST(INSTALL_LIB) ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_SIZECHANGE version: 8 updated: 2000/11/04 12:22:16 ++dnl ------------- ++dnl Check for definitions & structures needed for window size-changing ++dnl FIXME: check that this works with "snake" (HP-UX 10.x) ++AC_DEFUN([CF_SIZECHANGE], ++[ ++AC_REQUIRE([CF_STRUCT_TERMIOS]) ++AC_CACHE_CHECK(declaration of size-change, cf_cv_sizechange,[ ++ cf_cv_sizechange=unknown ++ cf_save_CPPFLAGS="$CPPFLAGS" ++ ++for cf_opts in "" "NEED_PTEM_H" ++do ++ ++ CPPFLAGS="$cf_save_CPPFLAGS" ++ test -n "$cf_opts" && CPPFLAGS="$CPPFLAGS -D$cf_opts" ++ AC_TRY_COMPILE([#include ++#ifdef HAVE_TERMIOS_H ++#include ++#else ++#ifdef HAVE_TERMIO_H ++#include ++#endif ++#endif ++#ifdef NEED_PTEM_H ++/* This is a workaround for SCO: they neglected to define struct winsize in ++ * termios.h -- it's only in termio.h and ptem.h ++ */ ++#include ++#include ++#endif ++#if !defined(sun) || !defined(HAVE_TERMIOS_H) ++#include ++#endif ++],[ ++#ifdef TIOCGSIZE ++ struct ttysize win; /* FIXME: what system is this? */ ++ int y = win.ts_lines; ++ int x = win.ts_cols; ++#else ++#ifdef TIOCGWINSZ ++ struct winsize win; ++ int y = win.ws_row; ++ int x = win.ws_col; ++#else ++ no TIOCGSIZE or TIOCGWINSZ ++#endif /* TIOCGWINSZ */ ++#endif /* TIOCGSIZE */ ++ ], ++ [cf_cv_sizechange=yes], ++ [cf_cv_sizechange=no]) ++ ++ CPPFLAGS="$cf_save_CPPFLAGS" ++ if test "$cf_cv_sizechange" = yes ; then ++ echo "size-change succeeded ($cf_opts)" >&AC_FD_CC ++ test -n "$cf_opts" && cf_cv_sizechange="$cf_opts" ++ break ++ fi ++done ++]) ++if test "$cf_cv_sizechange" != no ; then ++ AC_DEFINE(HAVE_SIZECHANGE) ++ case $cf_cv_sizechange in #(vi ++ NEED*) ++ AC_DEFINE_UNQUOTED($cf_cv_sizechange ) ++ ;; ++ esac ++fi ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_SRC_MODULES version: 15 updated: 2004/01/10 16:05:16 ++dnl -------------- ++dnl For each parameter, test if the source-directory exists, and if it contains ++dnl a 'modules' file. If so, add to the list $cf_cv_src_modules which we'll ++dnl use in CF_LIB_RULES. ++dnl ++dnl This uses the configured value to make the lists SRC_SUBDIRS and ++dnl SUB_MAKEFILES which are used in the makefile-generation scheme. ++AC_DEFUN([CF_SRC_MODULES], ++[ ++AC_MSG_CHECKING(for src modules) ++ ++# dependencies and linker-arguments for test-programs ++TEST_DEPS="${LIB_DIR}/${LIB_PREFIX}${LIB_NAME}${DFT_DEP_SUFFIX} $TEST_DEPS" ++if test "$DFT_LWR_MODEL" = "libtool"; then ++ TEST_ARGS="${TEST_DEPS}" ++else ++ TEST_ARGS="-l${LIB_NAME}${DFT_ARG_SUFFIX} $TEST_ARGS" ++fi ++ ++# dependencies and linker-arguments for utility-programs ++test "$with_termlib" != yes && PROG_ARGS="$TEST_ARGS" ++ ++cf_cv_src_modules= ++for cf_dir in $1 ++do ++ if test -f $srcdir/$cf_dir/modules; then ++ ++ # We may/may not have tack in the distribution, though the ++ # makefile is. ++ if test $cf_dir = tack ; then ++ if test ! -f $srcdir/${cf_dir}/${cf_dir}.h; then ++ continue ++ fi ++ fi ++ ++ if test -z "$cf_cv_src_modules"; then ++ cf_cv_src_modules=$cf_dir ++ else ++ cf_cv_src_modules="$cf_cv_src_modules $cf_dir" ++ fi ++ ++ # Make the ncurses_cfg.h file record the library interface files as ++ # well. These are header files that are the same name as their ++ # directory. Ncurses is the only library that does not follow ++ # that pattern. ++ if test $cf_dir = tack ; then ++ continue ++ elif test -f $srcdir/${cf_dir}/${cf_dir}.h; then ++ CF_UPPER(cf_have_include,$cf_dir) ++ AC_DEFINE_UNQUOTED(HAVE_${cf_have_include}_H) ++ AC_DEFINE_UNQUOTED(HAVE_LIB${cf_have_include}) ++ TEST_DEPS="${LIB_DIR}/${LIB_PREFIX}${cf_dir}${DFT_DEP_SUFFIX} $TEST_DEPS" ++ if test "$DFT_LWR_MODEL" = "libtool"; then ++ TEST_ARGS="${TEST_DEPS}" ++ else ++ TEST_ARGS="-l${cf_dir}${DFT_ARG_SUFFIX} $TEST_ARGS" ++ fi ++ fi ++ fi ++done ++AC_MSG_RESULT($cf_cv_src_modules) ++TEST_ARGS="-L${LIB_DIR} $TEST_ARGS" ++AC_SUBST(TEST_DEPS) ++AC_SUBST(TEST_ARGS) ++ ++PROG_ARGS="-L${LIB_DIR} $PROG_ARGS" ++AC_SUBST(PROG_ARGS) ++ ++SRC_SUBDIRS="man include" ++for cf_dir in $cf_cv_src_modules ++do ++ SRC_SUBDIRS="$SRC_SUBDIRS $cf_dir" ++done ++SRC_SUBDIRS="$SRC_SUBDIRS test" ++test -z "$MAKE_TERMINFO" && SRC_SUBDIRS="$SRC_SUBDIRS misc" ++test "$cf_with_cxx_binding" != no && SRC_SUBDIRS="$SRC_SUBDIRS c++" ++ ++ADA_SUBDIRS= ++if test "$cf_cv_prog_gnat_correct" = yes && test -f $srcdir/Ada95/Makefile.in; then ++ SRC_SUBDIRS="$SRC_SUBDIRS Ada95" ++ ADA_SUBDIRS="gen src samples" ++fi ++ ++SUB_MAKEFILES= ++for cf_dir in $SRC_SUBDIRS ++do ++ SUB_MAKEFILES="$SUB_MAKEFILES $cf_dir/Makefile" ++done ++ ++if test -n "$ADA_SUBDIRS"; then ++ for cf_dir in $ADA_SUBDIRS ++ do ++ SUB_MAKEFILES="$SUB_MAKEFILES Ada95/$cf_dir/Makefile" ++ done ++ AC_SUBST(ADA_SUBDIRS) ++fi ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_STDCPP_LIBRARY version: 5 updated: 2000/08/12 23:18:52 ++dnl ----------------- ++dnl Check for -lstdc++, which is GNU's standard C++ library. ++AC_DEFUN([CF_STDCPP_LIBRARY], ++[ ++if test -n "$GXX" ; then ++case $cf_cv_system_name in #(vi ++os2*) #(vi ++ cf_stdcpp_libname=stdcpp ++ ;; ++*) ++ cf_stdcpp_libname=stdc++ ++ ;; ++esac ++AC_CACHE_CHECK(for library $cf_stdcpp_libname,cf_cv_libstdcpp,[ ++ cf_save="$LIBS" ++ LIBS="$LIBS -l$cf_stdcpp_libname" ++AC_TRY_LINK([ ++#include ],[ ++char buf[80]; ++strstreambuf foo(buf, sizeof(buf)) ++], ++ [cf_cv_libstdcpp=yes], ++ [cf_cv_libstdcpp=no]) ++ LIBS="$cf_save" ++]) ++test "$cf_cv_libstdcpp" = yes && CXXLIBS="$CXXLIBS -l$cf_stdcpp_libname" ++fi ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_STRIP_G_OPT version: 3 updated: 2002/12/21 19:25:52 ++dnl -------------- ++dnl Remove "-g" option from the compiler options ++AC_DEFUN([CF_STRIP_G_OPT], ++[$1=`echo ${$1} | sed -e 's%-g %%' -e 's%-g$%%'`])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_STRUCT_SIGACTION version: 3 updated: 2000/08/12 23:18:52 ++dnl ------------------- ++dnl Check if we need _POSIX_SOURCE defined to use struct sigaction. We'll only ++dnl do this if we've found the sigaction function. ++dnl ++dnl If needed, define SVR4_ACTION. ++AC_DEFUN([CF_STRUCT_SIGACTION],[ ++if test "$ac_cv_func_sigaction" = yes; then ++AC_MSG_CHECKING(whether sigaction needs _POSIX_SOURCE) ++AC_TRY_COMPILE([ ++#include ++#include ], ++ [struct sigaction act], ++ [sigact_bad=no], ++ [ ++AC_TRY_COMPILE([ ++#define _POSIX_SOURCE ++#include ++#include ], ++ [struct sigaction act], ++ [sigact_bad=yes ++ AC_DEFINE(SVR4_ACTION)], ++ [sigact_bad=unknown])]) ++AC_MSG_RESULT($sigact_bad) ++fi ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_STRUCT_TERMIOS version: 5 updated: 2000/11/04 12:22:46 ++dnl ----------------- ++dnl Some machines require _POSIX_SOURCE to completely define struct termios. ++dnl If so, define SVR4_TERMIO ++AC_DEFUN([CF_STRUCT_TERMIOS],[ ++AC_CHECK_HEADERS( \ ++termio.h \ ++termios.h \ ++unistd.h \ ++) ++if test "$ISC" = yes ; then ++ AC_CHECK_HEADERS( sys/termio.h ) ++fi ++if test "$ac_cv_header_termios_h" = yes ; then ++ case "$CFLAGS $CPPFLAGS" in ++ *-D_POSIX_SOURCE*) ++ termios_bad=dunno ;; ++ *) termios_bad=maybe ;; ++ esac ++ if test "$termios_bad" = maybe ; then ++ AC_MSG_CHECKING(whether termios.h needs _POSIX_SOURCE) ++ AC_TRY_COMPILE([#include ], ++ [struct termios foo; int x = foo.c_iflag], ++ termios_bad=no, [ ++ AC_TRY_COMPILE([ ++#define _POSIX_SOURCE ++#include ], ++ [struct termios foo; int x = foo.c_iflag], ++ termios_bad=unknown, ++ termios_bad=yes AC_DEFINE(SVR4_TERMIO)) ++ ]) ++ AC_MSG_RESULT($termios_bad) ++ fi ++fi ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_SUBST version: 2 updated: 1997/09/06 23:41:28 ++dnl -------- ++dnl Shorthand macro for substituting things that the user may override ++dnl with an environment variable. ++dnl ++dnl $1 = long/descriptive name ++dnl $2 = environment variable ++dnl $3 = default value ++AC_DEFUN([CF_SUBST], ++[AC_CACHE_VAL(cf_cv_subst_$2,[ ++AC_MSG_CHECKING(for $1 (symbol $2)) ++test -z "[$]$2" && $2=$3 ++AC_MSG_RESULT([$]$2) ++AC_SUBST($2) ++cf_cv_subst_$2=[$]$2]) ++$2=${cf_cv_subst_$2} ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_SUBST_NCURSES_VERSION version: 7 updated: 2003/06/07 16:22:51 ++dnl ------------------------ ++dnl Get the version-number for use in shared-library naming, etc. ++AC_DEFUN([CF_SUBST_NCURSES_VERSION], ++[ ++NCURSES_MAJOR="`egrep '^NCURSES_MAJOR[[ ]]*=' $srcdir/dist.mk | sed -e 's/^[[^0-9]]*//'`" ++NCURSES_MINOR="`egrep '^NCURSES_MINOR[[ ]]*=' $srcdir/dist.mk | sed -e 's/^[[^0-9]]*//'`" ++NCURSES_PATCH="`egrep '^NCURSES_PATCH[[ ]]*=' $srcdir/dist.mk | sed -e 's/^[[^0-9]]*//'`" ++cf_cv_abi_version=${NCURSES_MAJOR} ++cf_cv_rel_version=${NCURSES_MAJOR}.${NCURSES_MINOR} ++dnl Show the computed version, for logging ++cf_cv_timestamp=`date` ++AC_MSG_RESULT(Configuring NCURSES $cf_cv_rel_version ABI $cf_cv_abi_version ($cf_cv_timestamp)) ++dnl We need these values in the generated headers ++AC_SUBST(NCURSES_MAJOR) ++AC_SUBST(NCURSES_MINOR) ++AC_SUBST(NCURSES_PATCH) ++dnl We need these values in the generated makefiles ++AC_SUBST(cf_cv_rel_version) ++AC_SUBST(cf_cv_abi_version) ++AC_SUBST(cf_cv_builtin_bool) ++AC_SUBST(cf_cv_header_stdbool_h) ++AC_SUBST(cf_cv_type_of_bool)dnl ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_SYS_TIME_SELECT version: 4 updated: 2000/10/04 09:18:40 ++dnl ------------------ ++dnl Check if we can include with ; this breaks on ++dnl older SCO configurations. ++AC_DEFUN([CF_SYS_TIME_SELECT], ++[ ++AC_MSG_CHECKING(if sys/time.h works with sys/select.h) ++AC_CACHE_VAL(cf_cv_sys_time_select,[ ++AC_TRY_COMPILE([ ++#include ++#ifdef HAVE_SYS_TIME_H ++#include ++#endif ++#ifdef HAVE_SYS_SELECT_H ++#include ++#endif ++],[],[cf_cv_sys_time_select=yes], ++ [cf_cv_sys_time_select=no]) ++ ]) ++AC_MSG_RESULT($cf_cv_sys_time_select) ++test "$cf_cv_sys_time_select" = yes && AC_DEFINE(HAVE_SYS_TIME_SELECT) ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_TYPEOF_CHTYPE version: 4 updated: 2000/10/04 09:18:40 ++dnl ---------------- ++dnl Determine the type we should use for chtype (and attr_t, which is treated ++dnl as the same thing). We want around 32 bits, so on most machines want a ++dnl long, but on newer 64-bit machines, probably want an int. If we're using ++dnl wide characters, we have to have a type compatible with that, as well. ++AC_DEFUN([CF_TYPEOF_CHTYPE], ++[ ++AC_REQUIRE([CF_UNSIGNED_LITERALS]) ++AC_MSG_CHECKING([for type of chtype]) ++AC_CACHE_VAL(cf_cv_typeof_chtype,[ ++ AC_TRY_RUN([ ++#ifdef USE_WIDEC_SUPPORT ++#include /* we want wchar_t */ ++#define WANT_BITS 39 ++#else ++#define WANT_BITS 31 ++#endif ++#include ++int main() ++{ ++ FILE *fp = fopen("cf_test.out", "w"); ++ if (fp != 0) { ++ char *result = "long"; ++#ifdef USE_WIDEC_SUPPORT ++ /* ++ * If wchar_t is smaller than a long, it must be an int or a ++ * short. We prefer not to use a short anyway. ++ */ ++ if (sizeof(unsigned long) > sizeof(wchar_t)) ++ result = "int"; ++#endif ++ if (sizeof(unsigned long) > sizeof(unsigned int)) { ++ int n; ++ unsigned int x; ++ for (n = 0; n < WANT_BITS; n++) { ++ unsigned int y = (x >> n); ++ if (y != 1 || x == 0) { ++ x = 0; ++ break; ++ } ++ } ++ /* ++ * If x is nonzero, an int is big enough for the bits ++ * that we want. ++ */ ++ result = (x != 0) ? "int" : "long"; ++ } ++ fputs(result, fp); ++ fclose(fp); ++ } ++ exit(0); ++} ++ ], ++ [cf_cv_typeof_chtype=`cat cf_test.out`], ++ [cf_cv_typeof_chtype=long], ++ [cf_cv_typeof_chtype=long]) ++ rm -f cf_test.out ++ ]) ++AC_MSG_RESULT($cf_cv_typeof_chtype) ++ ++AC_SUBST(cf_cv_typeof_chtype) ++AC_DEFINE_UNQUOTED(TYPEOF_CHTYPE,$cf_cv_typeof_chtype) ++ ++cf_cv_1UL="1" ++test "$cf_cv_unsigned_literals" = yes && cf_cv_1UL="${cf_cv_1UL}U" ++test "$cf_cv_typeof_chtype" = long && cf_cv_1UL="${cf_cv_1UL}L" ++AC_SUBST(cf_cv_1UL) ++ ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_TYPE_SIGACTION version: 3 updated: 2000/08/12 23:18:52 ++dnl ----------------- ++dnl ++AC_DEFUN([CF_TYPE_SIGACTION], ++[ ++AC_MSG_CHECKING([for type sigaction_t]) ++AC_CACHE_VAL(cf_cv_type_sigaction,[ ++ AC_TRY_COMPILE([ ++#include ], ++ [sigaction_t x], ++ [cf_cv_type_sigaction=yes], ++ [cf_cv_type_sigaction=no])]) ++AC_MSG_RESULT($cf_cv_type_sigaction) ++test "$cf_cv_type_sigaction" = yes && AC_DEFINE(HAVE_TYPE_SIGACTION) ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_UNSIGNED_LITERALS version: 2 updated: 1998/02/07 22:10:16 ++dnl -------------------- ++dnl Test if the compiler supports 'U' and 'L' suffixes. Only old compilers ++dnl won't, but they're still there. ++AC_DEFUN([CF_UNSIGNED_LITERALS], ++[ ++AC_MSG_CHECKING([if unsigned literals are legal]) ++AC_CACHE_VAL(cf_cv_unsigned_literals,[ ++ AC_TRY_COMPILE([],[long x = 1L + 1UL + 1U + 1], ++ [cf_cv_unsigned_literals=yes], ++ [cf_cv_unsigned_literals=no]) ++ ]) ++AC_MSG_RESULT($cf_cv_unsigned_literals) ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_UPPER version: 5 updated: 2001/01/29 23:40:59 ++dnl -------- ++dnl Make an uppercase version of a variable ++dnl $1=uppercase($2) ++AC_DEFUN([CF_UPPER], ++[ ++$1=`echo "$2" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_VERBOSE version: 2 updated: 1997/09/05 10:45:14 ++dnl ---------- ++dnl Use AC_VERBOSE w/o the warnings ++AC_DEFUN([CF_VERBOSE], ++[test -n "$verbose" && echo " $1" 1>&AC_FD_MSG ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_WCHAR_TYPE version: 2 updated: 2004/01/17 19:18:20 ++dnl ------------- ++dnl Check if type wide-character type $1 is declared, and if so, which header ++dnl file is needed. The second parameter is used to set a shell variable when ++dnl the type is not found. The first parameter sets a shell variable for the ++dnl opposite sense. ++AC_DEFUN([CF_WCHAR_TYPE], ++[ ++# This is needed on Tru64 5.0 to declare $1 ++AC_CACHE_CHECK(if we must include wchar.h to declare $1,cf_cv_$1,[ ++AC_TRY_COMPILE([ ++#include ++#include ++#include ++#ifdef HAVE_LIBUTF8_H ++#include ++#endif], ++ [$1 state], ++ [cf_cv_$1=no], ++ [AC_TRY_COMPILE([ ++#include ++#include ++#include ++#include ++#ifdef HAVE_LIBUTF8_H ++#include ++#endif], ++ [$1 value], ++ [cf_cv_$1=yes], ++ [cf_cv_$1=unknown])])]) ++ ++if test "$cf_cv_$1" = yes ; then ++ AC_DEFINE(NEED_WCHAR_H) ++ NEED_WCHAR_H=1 ++fi ++ ++ifelse($2,,,[ ++# if we do not find $1 in either place, use substitution to provide a fallback. ++if test "$cf_cv_$1" = unknown ; then ++ $2=1 ++fi ++]) ++ifelse($3,,,[ ++# if we find $1 in either place, use substitution to provide a fallback. ++if test "$cf_cv_$1" != unknown ; then ++ $3=1 ++fi ++]) ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_WITH_ABI_VERSION version: 1 updated: 2003/09/20 18:12:49 ++dnl ------------------- ++dnl Allow library's ABI to be overridden. Generally this happens when a ++dnl packager has incremented the ABI past that used in the original package, ++dnl and wishes to keep doing this. ++dnl ++dnl $1 is the package name, if any, to derive a corresponding {package}_ABI ++dnl symbol. ++AC_DEFUN([CF_WITH_ABI_VERSION],[ ++test -z "$cf_cv_abi_version" && cf_cv_abi_version=0 ++AC_ARG_WITH(abi-version, ++[ --with-abi-version=XXX override derived ABI version], ++[AC_MSG_WARN(overriding ABI version $cf_cv_abi_version to $withval) ++ cf_cv_abi_version=$withval]) ++ CF_NUMBER_SYNTAX($cf_cv_abi_version,ABI version) ++ifelse($1,,,[ ++$1_ABI=$cf_cv_abi_version ++]) ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_WITH_DBMALLOC version: 2 updated: 2002/12/29 21:11:45 ++dnl ---------------- ++dnl Configure-option for dbmalloc ++AC_DEFUN([CF_WITH_DBMALLOC],[ ++AC_MSG_CHECKING(if you want to link with dbmalloc for testing) ++AC_ARG_WITH(dbmalloc, ++ [ --with-dbmalloc test: use Conor Cahill's dbmalloc library], ++ [with_dbmalloc=$withval], ++ [with_dbmalloc=no]) ++AC_MSG_RESULT($with_dbmalloc) ++if test $with_dbmalloc = yes ; then ++ AC_CHECK_LIB(dbmalloc,debug_malloc) ++fi ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_WITH_DMALLOC version: 2 updated: 2002/12/29 21:11:45 ++dnl --------------- ++dnl Configure-option for dmalloc ++AC_DEFUN([CF_WITH_DMALLOC],[ ++AC_MSG_CHECKING(if you want to link with dmalloc for testing) ++AC_ARG_WITH(dmalloc, ++ [ --with-dmalloc test: use Gray Watson's dmalloc library], ++ [with_dmalloc=$withval], ++ [with_dmalloc=no]) ++AC_MSG_RESULT($with_dmalloc) ++if test $with_dmalloc = yes ; then ++ AC_CHECK_LIB(dmalloc,dmalloc_debug) ++fi ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_WITH_LIBTOOL version: 9 updated: 2004/01/16 14:55:37 ++dnl --------------- ++dnl Provide a configure option to incorporate libtool. Define several useful ++dnl symbols for the makefile rules. ++dnl ++dnl The reference to AC_PROG_LIBTOOL does not normally work, since it uses ++dnl macros from libtool.m4 which is in the aclocal directory of automake. ++dnl Following is a simple script which turns on the AC_PROG_LIBTOOL macro. ++dnl But that still does not work properly since the macro is expanded outside ++dnl the CF_WITH_LIBTOOL macro: ++dnl ++dnl #!/bin/sh ++dnl ACLOCAL=`aclocal --print-ac-dir` ++dnl if test -z "$ACLOCAL" ; then ++dnl echo cannot find aclocal directory ++dnl exit 1 ++dnl elif test ! -f $ACLOCAL/libtool.m4 ; then ++dnl echo cannot find libtool.m4 file ++dnl exit 1 ++dnl fi ++dnl ++dnl LOCAL=aclocal.m4 ++dnl ORIG=aclocal.m4.orig ++dnl ++dnl trap "mv $ORIG $LOCAL" 0 1 2 5 15 ++dnl rm -f $ORIG ++dnl mv $LOCAL $ORIG ++dnl ++dnl # sed the LIBTOOL= assignment to omit the current directory? ++dnl sed -e 's/^LIBTOOL=.*/LIBTOOL=${LIBTOOL-libtool}/' $ACLOCAL/libtool.m4 >>$LOCAL ++dnl cat $ORIG >>$LOCAL ++dnl ++dnl autoconf-257 $* ++dnl ++AC_DEFUN([CF_WITH_LIBTOOL], ++[ ++ifdef([AC_PROG_LIBTOOL],,[ ++LIBTOOL= ++]) ++# common library maintenance symbols that are convenient for libtool scripts: ++LIB_CREATE='$(AR) -cr' ++LIB_OBJECT='$(OBJECTS)' ++LIB_SUFFIX=.a ++LIB_PREP="$RANLIB" ++ ++# symbols used to prop libtool up to enable it to determine what it should be ++# doing: ++LIB_CLEAN= ++LIB_COMPILE= ++LIB_LINK= ++LIB_INSTALL= ++LIB_UNINSTALL= ++ ++AC_MSG_CHECKING(if you want to build libraries with libtool) ++AC_ARG_WITH(libtool, ++ [ --with-libtool generate libraries with libtool], ++ [with_libtool=$withval], ++ [with_libtool=no]) ++AC_MSG_RESULT($with_libtool) ++if test "$with_libtool" != "no"; then ++ifdef([AC_PROG_LIBTOOL],[ ++ # missing_content_AC_PROG_LIBTOOL{{ ++ AC_PROG_LIBTOOL ++ # missing_content_AC_PROG_LIBTOOL}} ++],[ ++ if test "$with_libtool" != "yes" ; then ++ CF_PATH_SYNTAX(with_libtool) ++ LIBTOOL=$with_libtool ++ else ++ AC_PATH_PROG(LIBTOOL,libtool) ++ fi ++ if test -z "$LIBTOOL" ; then ++ AC_MSG_ERROR(Cannot find libtool) ++ fi ++])dnl ++ LIB_CREATE='$(LIBTOOL) --mode=link $(CC) -rpath $(DESTDIR)$(libdir) -version-info `cut -f1 $(srcdir)/VERSION` -o' ++ LIB_OBJECT='$(OBJECTS:.o=.lo)' ++ LIB_SUFFIX=.la ++ LIB_CLEAN='$(LIBTOOL) --mode=clean' ++ LIB_COMPILE='$(LIBTOOL) --mode=compile' ++ LIB_LINK='$(LIBTOOL) --mode=link' ++ LIB_INSTALL='$(LIBTOOL) --mode=install' ++ LIB_UNINSTALL='$(LIBTOOL) --mode=uninstall' ++ LIB_PREP=: ++ ++ # Show the version of libtool ++ AC_MSG_CHECKING(version of libtool) ++ ++ # Save the version in a cache variable - this is not entirely a good ++ # thing, but the version string from libtool is very ugly, and for ++ # bug reports it might be useful to have the original string. ++ cf_cv_libtool_version=`$LIBTOOL --version 2>&1 | sed -e '2,$d' -e 's/([[^)]]*)//g' -e 's/^[[^1-9]]*//' -e 's/[[^0-9.]].*//'` ++ AC_MSG_RESULT($cf_cv_libtool_version) ++ if test -z "$cf_cv_libtool_version" ; then ++ AC_MSG_ERROR(This is not libtool) ++ fi ++ ++ # special hack to add --tag option for C++ compiler ++ case $cf_cv_libtool_version in ++ 1.[[5-9]]*|[[2-9]]*) ++ LIBTOOL_CXX="$LIBTOOL --tag=CXX" ++ ;; ++ *) ++ LIBTOOL_CXX="$LIBTOOL" ++ ;; ++ esac ++else ++ LIBTOOL="" ++ LIBTOOL_CXX="" ++fi ++ ++test -z "$LIBTOOL" && ECHO_LT= ++ ++AC_SUBST(LIBTOOL) ++AC_SUBST(LIBTOOL_CXX) ++ ++AC_SUBST(LIB_CREATE) ++AC_SUBST(LIB_OBJECT) ++AC_SUBST(LIB_SUFFIX) ++AC_SUBST(LIB_PREP) ++ ++AC_SUBST(LIB_CLEAN) ++AC_SUBST(LIB_COMPILE) ++AC_SUBST(LIB_LINK) ++AC_SUBST(LIB_INSTALL) ++AC_SUBST(LIB_UNINSTALL) ++ ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_WITH_PATH version: 6 updated: 1998/10/11 00:40:17 ++dnl ------------ ++dnl Wrapper for AC_ARG_WITH to ensure that user supplies a pathname, not just ++dnl defaulting to yes/no. ++dnl ++dnl $1 = option name ++dnl $2 = help-text ++dnl $3 = environment variable to set ++dnl $4 = default value, shown in the help-message, must be a constant ++dnl $5 = default value, if it's an expression & cannot be in the help-message ++dnl ++AC_DEFUN([CF_WITH_PATH], ++[AC_ARG_WITH($1,[$2 ](default: ifelse($4,,empty,$4)),, ++ifelse($4,,[withval="${$3}"],[withval="${$3-ifelse($5,,$4,$5)}"]))dnl ++CF_PATH_SYNTAX(withval) ++eval $3="$withval" ++AC_SUBST($3)dnl ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_WITH_PATHLIST version: 5 updated: 2001/12/10 01:28:30 ++dnl ---------------- ++dnl Process an option specifying a list of colon-separated paths. ++dnl ++dnl $1 = option name ++dnl $2 = help-text ++dnl $3 = environment variable to set ++dnl $4 = default value, shown in the help-message, must be a constant ++dnl $5 = default value, if it's an expression & cannot be in the help-message ++dnl $6 = flag to tell if we want to define or substitute ++dnl ++AC_DEFUN([CF_WITH_PATHLIST],[ ++AC_REQUIRE([CF_PATHSEP]) ++AC_ARG_WITH($1,[$2 ](default: ifelse($4,,empty,$4)),, ++ifelse($4,,[withval=${$3}],[withval=${$3-ifelse($5,,$4,$5)}]))dnl ++ ++IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${PATHSEP}" ++cf_dst_path= ++for cf_src_path in $withval ++do ++ CF_PATH_SYNTAX(cf_src_path) ++ test -n "$cf_dst_path" && cf_dst_path="${cf_dst_path}:" ++ cf_dst_path="${cf_dst_path}${cf_src_path}" ++done ++IFS="$ac_save_ifs" ++ ++ifelse($6,define,[ ++# Strip single quotes from the value, e.g., when it was supplied as a literal ++# for $4 or $5. ++case $cf_dst_path in #(vi ++\'*) ++ cf_dst_path=`echo $cf_dst_path |sed -e s/\'// -e s/\'\$//` ++ ;; ++esac ++cf_dst_path=`echo "$cf_dst_path" | sed -e 's/\\\\/\\\\\\\\/g'` ++]) ++ ++eval '$3="$cf_dst_path"' ++AC_SUBST($3)dnl ++ ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_WITH_REL_VERSION version: 1 updated: 2003/09/20 18:12:49 ++dnl ------------------- ++dnl Allow library's release-version to be overridden. Generally this happens when a ++dnl packager has incremented the release-version past that used in the original package, ++dnl and wishes to keep doing this. ++dnl ++dnl $1 is the package name, if any, to derive corresponding {package}_MAJOR ++dnl and {package}_MINOR symbols ++dnl symbol. ++AC_DEFUN([CF_WITH_REL_VERSION],[ ++test -z "$cf_cv_rel_version" && cf_cv_rel_version=0.0 ++AC_ARG_WITH(rel-version, ++[ --with-rel-version=XXX override derived release version], ++[AC_MSG_WARN(overriding release version $cf_cv_rel_version to $withval) ++ cf_cv_rel_version=$withval]) ++ifelse($1,,[ ++ CF_NUMBER_SYNTAX($cf_cv_rel_version,Release version) ++],[ ++ $1_MAJOR=`echo "$cf_cv_rel_version" | sed -e 's/\..*//'` ++ $1_MINOR=`echo "$cf_cv_rel_version" | sed -e 's/^[[^.]]*//' -e 's/^\.//' -e 's/\..*//'` ++ CF_NUMBER_SYNTAX([$]$1_MAJOR,Release major-version) ++ CF_NUMBER_SYNTAX([$]$1_MINOR,Release minor-version) ++]) ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_WITH_SYSMOUSE version: 2 updated: 2003/03/22 19:13:43 ++dnl ---------------- ++dnl If we can compile with sysmouse, make it available unless it is not wanted. ++AC_DEFUN([CF_WITH_SYSMOUSE],[ ++# not everyone has "test -c" ++if test -c /dev/sysmouse 2>/dev/null ; then ++AC_MSG_CHECKING(if you want to use sysmouse) ++AC_ARG_WITH(sysmouse, ++ [ --with-sysmouse use sysmouse (FreeBSD console)], ++ [cf_with_sysmouse=$withval], ++ [cf_with_sysmouse=maybe]) ++ if test "$cf_with_sysmouse" != no ; then ++ AC_TRY_COMPILE([ ++#include ++#if (__FreeBSD_version >= 400017) ++#include ++#include ++#else ++#include ++#endif ++],[ ++ struct mouse_info the_mouse; ++ ioctl(0, CONS_MOUSECTL, &the_mouse); ++],[cf_with_sysmouse=yes],[cf_with_sysmouse=no]) ++ fi ++AC_MSG_RESULT($cf_with_sysmouse) ++test "$cf_with_sysmouse" = yes && AC_DEFINE(USE_SYSMOUSE) ++fi ++])dnl ++dnl --------------------------------------------------------------------------- ++dnl CF_XOPEN_SOURCE version: 11 updated: 2004/01/26 20:58:41 ++dnl --------------- ++dnl Try to get _XOPEN_SOURCE defined properly that we can use POSIX functions, ++dnl or adapt to the vendor's definitions to get equivalent functionality. ++AC_DEFUN([CF_XOPEN_SOURCE],[ ++case $host_os in #(vi ++freebsd*) #(vi ++ CPPFLAGS="$CPPFLAGS -D_BSD_TYPES -D__BSD_VISIBLE -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600" ++ ;; ++hpux*) #(vi ++ CPPFLAGS="$CPPFLAGS -D_HPUX_SOURCE" ++ ;; ++irix6.*) #(vi ++ CPPFLAGS="$CPPFLAGS -D_SGI_SOURCE" ++ ;; ++linux*) #(vi ++ CF_GNU_SOURCE ++ ;; ++mirbsd*) #(vi ++ # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks ++ ;; ++netbsd*) #(vi ++ # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw ++ ;; ++openbsd*) #(vi ++ # setting _XOPEN_SOURCE breaks xterm on OpenBSD 2.8, is not needed for ncursesw ++ ;; ++osf[[45]]*) #(vi ++ CPPFLAGS="$CPPFLAGS -D_OSF_SOURCE" ++ ;; ++sco*) #(vi ++ # setting _XOPEN_SOURCE breaks Lynx on SCO Unix / OpenServer ++ ;; ++solaris*) #(vi ++ CPPFLAGS="$CPPFLAGS -D__EXTENSIONS__" ++ ;; ++*) ++ AC_CACHE_CHECK(if we should define _XOPEN_SOURCE,cf_cv_xopen_source,[ ++ AC_TRY_COMPILE([#include ],[ ++#ifndef _XOPEN_SOURCE ++make an error ++#endif], ++ [cf_cv_xopen_source=no], ++ [cf_save="$CPPFLAGS" ++ CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=500" ++ AC_TRY_COMPILE([#include ],[ ++#ifdef _XOPEN_SOURCE ++make an error ++#endif], ++ [cf_cv_xopen_source=no], ++ [cf_cv_xopen_source=yes]) ++ CPPFLAGS="$cf_save" ++ ]) ++]) ++test "$cf_cv_xopen_source" = yes && CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=500" ++ ++ # FreeBSD 5.x headers demand this... ++ AC_CACHE_CHECK(if we should define _POSIX_C_SOURCE,cf_cv_xopen_source,[ ++ AC_TRY_COMPILE([#include ],[ ++#ifndef _POSIX_C_SOURCE ++make an error ++#endif], ++ [cf_cv_xopen_source=no], ++ [cf_save="$CPPFLAGS" ++ CPPFLAGS="$CPPFLAGS -D_POSIX_C_SOURCE" ++ AC_TRY_COMPILE([#include ],[ ++#ifdef _POSIX_C_SOURCE ++make an error ++#endif], ++ [cf_cv_xopen_source=no], ++ [cf_cv_xopen_source=yes]) ++ CPPFLAGS="$cf_save" ++ ]) ++]) ++test "$cf_cv_xopen_source" = yes && CPPFLAGS="$CPPFLAGS -D_POSIX_C_SOURCE" ++ ;; ++esac ++]) +--- /dev/null ++++ ncurses-5.4/m4/templates.m4 +@@ -0,0 +1,78 @@ ++AH_TEMPLATE([BROKEN_LINKER], [too lazy to enter descriptions]) ++AH_TEMPLATE([BSD_TPUTS], [too lazy to enter descriptions]) ++AH_TEMPLATE([CC_HAS_INLINE_FUNCS], [too lazy to enter descriptions]) ++AH_TEMPLATE([CC_HAS_PROTOS], [too lazy to enter descriptions]) ++AH_TEMPLATE([CPP_HAS_PARAM_INIT], [too lazy to enter descriptions]) ++AH_TEMPLATE([CPP_HAS_VSCAN_FUNC], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE_BIG_CORE], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE_BSD_CGETENT], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE_BUILTIN_H], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE_CURSES_VERSION], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE_GETTIMEOFDAY], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE_GPP_BUILTIN_H], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE_GXX_BUILTIN_H], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE_HAS_KEY], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE_ISASCII], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE_LIBGPM], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE_LIBUTF8_H], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE_MKSTEMP], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE_NC_ALLOC_H], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE_REGEXPR_H_FUNCS], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE_REGEXP_H_FUNCS], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE_REGEX_H_FUNCS], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE_RESIZETERM], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE_RESIZE_TERM], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE_SIZECHANGE], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE_SLK_COLOR], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE_SYS_TIME_SELECT], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE_TCGETATTR], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE_TYPE_SIGACTION], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE_USE_DEFAULT_COLORS], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE_VFSCANF], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE_VSSCANF], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE_WORKING_POLL], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE_WRESIZE], [too lazy to enter descriptions]) ++AH_TEMPLATE([HAVE__DOSCAN], [too lazy to enter descriptions]) ++AH_TEMPLATE([MIXEDCASE_FILENAMES], [too lazy to enter descriptions]) ++AH_TEMPLATE([NCURSES_EXPANDED], [too lazy to enter descriptions]) ++AH_TEMPLATE([NCURSES_EXT_FUNCS], [too lazy to enter descriptions]) ++AH_TEMPLATE([NCURSES_NOMACROS], [too lazy to enter descriptions]) ++AH_TEMPLATE([NCURSES_NO_PADDING], [too lazy to enter descriptions]) ++AH_TEMPLATE([NCURSES_PATHSEP], [too lazy to enter descriptions]) ++AH_TEMPLATE([NCURSES_VERSION_STRING], [too lazy to enter descriptions]) ++AH_TEMPLATE([NDEBUG], [too lazy to enter descriptions]) ++AH_TEMPLATE([NEED_WCHAR_H], [too lazy to enter descriptions]) ++AH_TEMPLATE([NO_LEAKS], [too lazy to enter descriptions]) ++AH_TEMPLATE([PROG_EXT], [too lazy to enter descriptions]) ++AH_TEMPLATE([PURE_TERMINFO], [too lazy to enter descriptions]) ++AH_TEMPLATE([SVR4_ACTION], [too lazy to enter descriptions]) ++AH_TEMPLATE([SVR4_TERMIO], [too lazy to enter descriptions]) ++AH_TEMPLATE([SYSTEM_NAME], [too lazy to enter descriptions]) ++AH_TEMPLATE([TERMINFO], [too lazy to enter descriptions]) ++AH_TEMPLATE([TERMINFO_DIRS], [too lazy to enter descriptions]) ++AH_TEMPLATE([TERMPATH], [too lazy to enter descriptions]) ++AH_TEMPLATE([TYPEOF_CHTYPE], [too lazy to enter descriptions]) ++AH_TEMPLATE([USE_ASSUMED_COLOR], [too lazy to enter descriptions]) ++AH_TEMPLATE([USE_COLORFGBG], [too lazy to enter descriptions]) ++AH_TEMPLATE([USE_DATABASE], [too lazy to enter descriptions]) ++AH_TEMPLATE([USE_GETCAP], [too lazy to enter descriptions]) ++AH_TEMPLATE([USE_GETCAP_CACHE], [too lazy to enter descriptions]) ++AH_TEMPLATE([USE_HARD_TABS], [too lazy to enter descriptions]) ++AH_TEMPLATE([USE_HASHMAP], [too lazy to enter descriptions]) ++AH_TEMPLATE([USE_HOME_TERMINFO], [too lazy to enter descriptions]) ++AH_TEMPLATE([USE_LINKS], [too lazy to enter descriptions]) ++AH_TEMPLATE([USE_MY_MEMMOVE], [too lazy to enter descriptions]) ++AH_TEMPLATE([USE_OK_BCOPY], [too lazy to enter descriptions]) ++AH_TEMPLATE([USE_RCS_IDS], [too lazy to enter descriptions]) ++AH_TEMPLATE([USE_ROOT_ENVIRON], [too lazy to enter descriptions]) ++AH_TEMPLATE([USE_SAFE_SPRINTF], [too lazy to enter descriptions]) ++AH_TEMPLATE([USE_SCROLL_HINTS], [too lazy to enter descriptions]) ++AH_TEMPLATE([USE_SIGWINCH], [too lazy to enter descriptions]) ++AH_TEMPLATE([USE_STDIO_VSCAN], [too lazy to enter descriptions]) ++AH_TEMPLATE([USE_STRSTREAM_VSCAN], [too lazy to enter descriptions]) ++AH_TEMPLATE([USE_STRSTREAM_VSCAN_CAST], [too lazy to enter descriptions]) ++AH_TEMPLATE([USE_SYMLINKS], [too lazy to enter descriptions]) ++AH_TEMPLATE([USE_SYSMOUSE], [too lazy to enter descriptions]) ++AH_TEMPLATE([USE_TERMCAP], [too lazy to enter descriptions]) ++AH_TEMPLATE([USE_WIDEC_SUPPORT], [too lazy to enter descriptions]) ++AH_TEMPLATE([USE_XMC_SUPPORT], [too lazy to enter descriptions]) diff --git a/meta/recipes-core/ncurses/ncurses_5.4.bb b/meta/recipes-core/ncurses/ncurses_5.4.bb new file mode 100644 index 0000000000..e69c1c0673 --- /dev/null +++ b/meta/recipes-core/ncurses/ncurses_5.4.bb @@ -0,0 +1,8 @@ +PR = "r14" + +SRC_URI = "${GNU_MIRROR}/ncurses/ncurses-${PV}.tar.gz \ + file://makefile_tweak.patch;patch=1 \ + file://visibility.patch;patch=1" +S = "${WORKDIR}/ncurses-${PV}" + +require ncurses.inc diff --git a/meta/recipes-core/readline/files/acinclude.m4 b/meta/recipes-core/readline/files/acinclude.m4 new file mode 100644 index 0000000000..8a45f99084 --- /dev/null +++ b/meta/recipes-core/readline/files/acinclude.m4 @@ -0,0 +1,1815 @@ +dnl +dnl Bash specific tests +dnl +dnl Some derived from PDKSH 5.1.3 autoconf tests +dnl + +AC_DEFUN([BASH_C_LONG_LONG], +[AC_CACHE_CHECK(for long long, ac_cv_c_long_long, +[if test "$GCC" = yes; then + ac_cv_c_long_long=yes +else +AC_TRY_RUN([ +int +main() +{ +long long foo = 0; +exit(sizeof(long long) < sizeof(long)); +} +], ac_cv_c_long_long=yes, ac_cv_c_long_long=no) +fi]) +if test $ac_cv_c_long_long = yes; then + AC_DEFINE(HAVE_LONG_LONG, 1, [Define if the `long long' type works.]) +fi +]) + +dnl +dnl This is very similar to AC_C_LONG_DOUBLE, with the fix for IRIX +dnl (< changed to <=) added. +dnl +AC_DEFUN([BASH_C_LONG_DOUBLE], +[AC_CACHE_CHECK(for long double, ac_cv_c_long_double, +[if test "$GCC" = yes; then + ac_cv_c_long_double=yes +else +AC_TRY_RUN([ +int +main() +{ + /* The Stardent Vistra knows sizeof(long double), but does not + support it. */ + long double foo = 0.0; + /* On Ultrix 4.3 cc, long double is 4 and double is 8. */ + /* On IRIX 5.3, the compiler converts long double to double with a warning, + but compiles this successfully. */ + exit(sizeof(long double) <= sizeof(double)); +} +], ac_cv_c_long_double=yes, ac_cv_c_long_double=no) +fi]) +if test $ac_cv_c_long_double = yes; then + AC_DEFINE(HAVE_LONG_DOUBLE, 1, [Define if the `long double' type works.]) +fi +]) + +dnl +dnl Check for . This is separated out so that it can be +dnl AC_REQUIREd. +dnl +dnl BASH_HEADER_INTTYPES +AC_DEFUN([BASH_HEADER_INTTYPES], +[ + AC_CHECK_HEADERS(inttypes.h) +]) + +dnl +dnl check for typedef'd symbols in header files, but allow the caller to +dnl specify the include files to be checked in addition to the default +dnl +dnl BASH_CHECK_TYPE(TYPE, HEADERS, DEFAULT[, VALUE-IF-FOUND]) +AC_DEFUN([BASH_CHECK_TYPE], +[ +AC_REQUIRE([AC_HEADER_STDC])dnl +AC_REQUIRE([BASH_HEADER_INTTYPES]) +AC_MSG_CHECKING(for $1) +AC_CACHE_VAL(bash_cv_type_$1, +[AC_EGREP_CPP($1, [#include +#if STDC_HEADERS +#include +#include +#endif +#if HAVE_INTTYPES_H +#include +#endif +$2 +], bash_cv_type_$1=yes, bash_cv_type_$1=no)]) +AC_MSG_RESULT($bash_cv_type_$1) +ifelse($#, 4, [if test $bash_cv_type_$1 = yes; then + AC_DEFINE($4) + fi]) +if test $bash_cv_type_$1 = no; then + AC_DEFINE_UNQUOTED($1, $3) +fi +]) + +dnl +dnl BASH_CHECK_DECL(FUNC) +dnl +dnl Check for a declaration of FUNC in stdlib.h and inttypes.h like +dnl AC_CHECK_DECL +dnl +AC_DEFUN([BASH_CHECK_DECL], +[ +AC_REQUIRE([AC_HEADER_STDC]) +AC_REQUIRE([BASH_HEADER_INTTYPES]) +AC_CACHE_CHECK([for declaration of $1], bash_cv_decl_$1, +[AC_TRY_LINK( +[ +#if STDC_HEADERS +# include +#endif +#if HAVE_INTTYPES_H +# include +#endif +], +[return !$1;], +bash_cv_decl_$1=yes, bash_cv_decl_$1=no)]) +bash_tr_func=HAVE_DECL_`echo $1 | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'` +if test $bash_cv_decl_$1 = yes; then + AC_DEFINE_UNQUOTED($bash_tr_func, 1) +else + AC_DEFINE_UNQUOTED($bash_tr_func, 0) +fi +]) + +AC_DEFUN([BASH_DECL_PRINTF], +[AC_MSG_CHECKING(for declaration of printf in ) +AC_CACHE_VAL(bash_cv_printf_declared, +[AC_TRY_RUN([ +#include +#ifdef __STDC__ +typedef int (*_bashfunc)(const char *, ...); +#else +typedef int (*_bashfunc)(); +#endif +main() +{ +_bashfunc pf; +pf = (_bashfunc) printf; +exit(pf == 0); +} +], bash_cv_printf_declared=yes, bash_cv_printf_declared=no, + [AC_MSG_WARN(cannot check printf declaration if cross compiling -- defaulting to yes) + bash_cv_printf_declared=yes] +)]) +AC_MSG_RESULT($bash_cv_printf_declared) +if test $bash_cv_printf_declared = yes; then +AC_DEFINE(PRINTF_DECLARED) +fi +]) + +AC_DEFUN([BASH_DECL_SBRK], +[AC_MSG_CHECKING(for declaration of sbrk in ) +AC_CACHE_VAL(bash_cv_sbrk_declared, +[AC_EGREP_HEADER(sbrk, unistd.h, + bash_cv_sbrk_declared=yes, bash_cv_sbrk_declared=no)]) +AC_MSG_RESULT($bash_cv_sbrk_declared) +if test $bash_cv_sbrk_declared = yes; then +AC_DEFINE(SBRK_DECLARED) +fi +]) + +dnl +dnl Check for sys_siglist[] or _sys_siglist[] +dnl +AC_DEFUN([BASH_DECL_UNDER_SYS_SIGLIST], +[AC_MSG_CHECKING([for _sys_siglist in signal.h or unistd.h]) +AC_CACHE_VAL(bash_cv_decl_under_sys_siglist, +[AC_TRY_COMPILE([ +#include +#include +#ifdef HAVE_UNISTD_H +#include +#endif], [ char *msg = _sys_siglist[2]; ], + bash_cv_decl_under_sys_siglist=yes, bash_cv_decl_under_sys_siglist=no, + [AC_MSG_WARN(cannot check for _sys_siglist[] if cross compiling -- defaulting to no)])])dnl +AC_MSG_RESULT($bash_cv_decl_under_sys_siglist) +if test $bash_cv_decl_under_sys_siglist = yes; then +AC_DEFINE(UNDER_SYS_SIGLIST_DECLARED) +fi +]) + +AC_DEFUN([BASH_UNDER_SYS_SIGLIST], +[AC_REQUIRE([BASH_DECL_UNDER_SYS_SIGLIST]) +AC_MSG_CHECKING([for _sys_siglist in system C library]) +AC_CACHE_VAL(bash_cv_under_sys_siglist, +[AC_TRY_RUN([ +#include +#include +#ifdef HAVE_UNISTD_H +#include +#endif +#ifndef UNDER_SYS_SIGLIST_DECLARED +extern char *_sys_siglist[]; +#endif +main() +{ +char *msg = (char *)_sys_siglist[2]; +exit(msg == 0); +}], + bash_cv_under_sys_siglist=yes, bash_cv_under_sys_siglist=no, + [AC_MSG_WARN(cannot check for _sys_siglist[] if cross compiling -- defaulting to no) + bash_cv_under_sys_siglist=no])]) +AC_MSG_RESULT($bash_cv_under_sys_siglist) +if test $bash_cv_under_sys_siglist = yes; then +AC_DEFINE(HAVE_UNDER_SYS_SIGLIST) +fi +]) + +AC_DEFUN([BASH_SYS_SIGLIST], +[ +AC_CHECK_DECLS([sys_siglist]) +AC_MSG_CHECKING([for sys_siglist in system C library]) +AC_CACHE_VAL(bash_cv_sys_siglist, +[AC_TRY_RUN([ +#include +#include +#ifdef HAVE_UNISTD_H +#include +#endif +#ifndef HAVE_DECL_SYS_SIGLIST +extern char *sys_siglist[]; +#endif +main() +{ +char *msg = sys_siglist[2]; +exit(msg == 0); +}], + bash_cv_sys_siglist=yes, bash_cv_sys_siglist=no, + [AC_MSG_WARN(cannot check for sys_siglist if cross compiling -- defaulting to no) + bash_cv_sys_siglist=no])]) +AC_MSG_RESULT($bash_cv_sys_siglist) +if test $bash_cv_sys_siglist = yes; then +AC_DEFINE(HAVE_SYS_SIGLIST) +fi +]) + +dnl Check for the various permutations of sys_siglist and make sure we +dnl compile in siglist.o if they're not defined +AC_DEFUN([BASH_CHECK_SYS_SIGLIST], [ +AC_REQUIRE([BASH_SYS_SIGLIST]) +AC_REQUIRE([BASH_DECL_UNDER_SYS_SIGLIST]) +AC_REQUIRE([BASH_FUNC_STRSIGNAL]) +if test "$bash_cv_sys_siglist" = no && test "$bash_cv_under_sys_siglist" = no && test "$bash_cv_have_strsignal" = no; then + SIGLIST_O=siglist.o +else + SIGLIST_O= +fi +AC_SUBST([SIGLIST_O]) +]) + +dnl Check for sys_errlist[] and sys_nerr, check for declaration +AC_DEFUN([BASH_SYS_ERRLIST], +[AC_MSG_CHECKING([for sys_errlist and sys_nerr]) +AC_CACHE_VAL(bash_cv_sys_errlist, +[AC_TRY_LINK([#include ], +[extern char *sys_errlist[]; + extern int sys_nerr; + char *msg = sys_errlist[sys_nerr - 1];], + bash_cv_sys_errlist=yes, bash_cv_sys_errlist=no)])dnl +AC_MSG_RESULT($bash_cv_sys_errlist) +if test $bash_cv_sys_errlist = yes; then +AC_DEFINE(HAVE_SYS_ERRLIST) +fi +]) + +dnl +dnl Check if dup2() does not clear the close on exec flag +dnl +AC_DEFUN([BASH_FUNC_DUP2_CLOEXEC_CHECK], +[AC_MSG_CHECKING(if dup2 fails to clear the close-on-exec flag) +AC_CACHE_VAL(bash_cv_dup2_broken, +[AC_TRY_RUN([ +#include +#include +main() +{ + int fd1, fd2, fl; + fd1 = open("/dev/null", 2); + if (fcntl(fd1, 2, 1) < 0) + exit(1); + fd2 = dup2(fd1, 1); + if (fd2 < 0) + exit(2); + fl = fcntl(fd2, 1, 0); + /* fl will be 1 if dup2 did not reset the close-on-exec flag. */ + exit(fl != 1); +} +], bash_cv_dup2_broken=yes, bash_cv_dup2_broken=no, + [AC_MSG_WARN(cannot check dup2 if cross compiling -- defaulting to no) + bash_cv_dup2_broken=no]) +]) +AC_MSG_RESULT($bash_cv_dup2_broken) +if test $bash_cv_dup2_broken = yes; then +AC_DEFINE(DUP2_BROKEN) +fi +]) + +AC_DEFUN([BASH_FUNC_STRSIGNAL], +[AC_MSG_CHECKING([for the existence of strsignal]) +AC_CACHE_VAL(bash_cv_have_strsignal, +[AC_TRY_LINK([#include +#include ], +[char *s = (char *)strsignal(2);], + bash_cv_have_strsignal=yes, bash_cv_have_strsignal=no)]) +AC_MSG_RESULT($bash_cv_have_strsignal) +if test $bash_cv_have_strsignal = yes; then +AC_DEFINE(HAVE_STRSIGNAL) +fi +]) + +dnl Check to see if opendir will open non-directories (not a nice thing) +AC_DEFUN([BASH_FUNC_OPENDIR_CHECK], +[AC_REQUIRE([AC_HEADER_DIRENT])dnl +AC_MSG_CHECKING(if opendir() opens non-directories) +AC_CACHE_VAL(bash_cv_opendir_not_robust, +[AC_TRY_RUN([ +#include +#include +#include +#ifdef HAVE_UNISTD_H +# include +#endif /* HAVE_UNISTD_H */ +#if defined(HAVE_DIRENT_H) +# include +#else +# define dirent direct +# ifdef HAVE_SYS_NDIR_H +# include +# endif /* SYSNDIR */ +# ifdef HAVE_SYS_DIR_H +# include +# endif /* SYSDIR */ +# ifdef HAVE_NDIR_H +# include +# endif +#endif /* HAVE_DIRENT_H */ +main() +{ +DIR *dir; +int fd, err; +err = mkdir("/tmp/bash-aclocal", 0700); +if (err < 0) { + perror("mkdir"); + exit(1); +} +unlink("/tmp/bash-aclocal/not_a_directory"); +fd = open("/tmp/bash-aclocal/not_a_directory", O_WRONLY|O_CREAT|O_EXCL, 0666); +write(fd, "\n", 1); +close(fd); +dir = opendir("/tmp/bash-aclocal/not_a_directory"); +unlink("/tmp/bash-aclocal/not_a_directory"); +rmdir("/tmp/bash-aclocal"); +exit (dir == 0); +}], bash_cv_opendir_not_robust=yes,bash_cv_opendir_not_robust=no, + [AC_MSG_WARN(cannot check opendir if cross compiling -- defaulting to no) + bash_cv_opendir_not_robust=no] +)]) +AC_MSG_RESULT($bash_cv_opendir_not_robust) +if test $bash_cv_opendir_not_robust = yes; then +AC_DEFINE(OPENDIR_NOT_ROBUST) +fi +]) + +dnl +AH_TEMPLATE([VOID_SIGHANDLER], [Define if signal handlers return type void]) +AC_DEFUN([BASH_TYPE_SIGHANDLER], +[AC_MSG_CHECKING([whether signal handlers are of type void]) +AC_CACHE_VAL(bash_cv_void_sighandler, +[AC_TRY_COMPILE([#include +#include +#ifdef signal +#undef signal +#endif +#ifdef __cplusplus +extern "C" +#endif +void (*signal ()) ();], +[int i;], bash_cv_void_sighandler=yes, bash_cv_void_sighandler=no)])dnl +AC_MSG_RESULT($bash_cv_void_sighandler) +if test $bash_cv_void_sighandler = yes; then +AC_DEFINE(VOID_SIGHANDLER) +fi +]) + +dnl +dnl A signed 16-bit integer quantity +dnl +AC_DEFUN([BASH_TYPE_BITS16_T], +[ +if test "$ac_cv_sizeof_short" = 2; then + AC_CHECK_TYPE(bits16_t, short) +elif test "$ac_cv_sizeof_char" = 2; then + AC_CHECK_TYPE(bits16_t, char) +else + AC_CHECK_TYPE(bits16_t, short) +fi +]) + +dnl +dnl An unsigned 16-bit integer quantity +dnl +AC_DEFUN([BASH_TYPE_U_BITS16_T], +[ +if test "$ac_cv_sizeof_short" = 2; then + AC_CHECK_TYPE(u_bits16_t, unsigned short) +elif test "$ac_cv_sizeof_char" = 2; then + AC_CHECK_TYPE(u_bits16_t, unsigned char) +else + AC_CHECK_TYPE(u_bits16_t, unsigned short) +fi +]) + +dnl +dnl A signed 32-bit integer quantity +dnl +AC_DEFUN([BASH_TYPE_BITS32_T], +[ +if test "$ac_cv_sizeof_int" = 4; then + AC_CHECK_TYPE(bits32_t, int) +elif test "$ac_cv_sizeof_long" = 4; then + AC_CHECK_TYPE(bits32_t, long) +else + AC_CHECK_TYPE(bits32_t, int) +fi +]) + +dnl +dnl An unsigned 32-bit integer quantity +dnl +AC_DEFUN([BASH_TYPE_U_BITS32_T], +[ +if test "$ac_cv_sizeof_int" = 4; then + AC_CHECK_TYPE(u_bits32_t, unsigned int) +elif test "$ac_cv_sizeof_long" = 4; then + AC_CHECK_TYPE(u_bits32_t, unsigned long) +else + AC_CHECK_TYPE(u_bits32_t, unsigned int) +fi +]) + +AC_DEFUN([BASH_TYPE_PTRDIFF_T], +[ +if test "$ac_cv_sizeof_int" = "$ac_cv_sizeof_char_p"; then + AC_CHECK_TYPE(ptrdiff_t, int) +elif test "$ac_cv_sizeof_long" = "$ac_cv_sizeof_char_p"; then + AC_CHECK_TYPE(ptrdiff_t, long) +elif test "$ac_cv_type_long_long" = yes && test "$ac_cv_sizeof_long_long" = "$ac_cv_sizeof_char_p"; then + AC_CHECK_TYPE(ptrdiff_t, [long long]) +else + AC_CHECK_TYPE(ptrdiff_t, int) +fi +]) + +dnl +dnl A signed 64-bit quantity +dnl +AC_DEFUN([BASH_TYPE_BITS64_T], +[ +if test "$ac_cv_sizeof_char_p" = 8; then + AC_CHECK_TYPE(bits64_t, char *) +elif test "$ac_cv_sizeof_double" = 8; then + AC_CHECK_TYPE(bits64_t, double) +elif test -n "$ac_cv_type_long_long" && test "$ac_cv_sizeof_long_long" = 8; then + AC_CHECK_TYPE(bits64_t, [long long]) +elif test "$ac_cv_sizeof_long" = 8; then + AC_CHECK_TYPE(bits64_t, long) +else + AC_CHECK_TYPE(bits64_t, double) +fi +]) + +AC_DEFUN([BASH_TYPE_LONG_LONG], +[ +AC_CACHE_CHECK([for long long], bash_cv_type_long_long, +[AC_TRY_LINK([ +long long ll = 1; int i = 63;], +[ +long long llm = (long long) -1; +return ll << i | ll >> i | llm / ll | llm % ll; +], bash_cv_type_long_long='long long', bash_cv_type_long_long='long')]) +if test "$bash_cv_type_long_long" = 'long long'; then + AC_DEFINE(HAVE_LONG_LONG, 1) +fi +]) + +AC_DEFUN([BASH_TYPE_UNSIGNED_LONG_LONG], +[ +AC_CACHE_CHECK([for unsigned long long], bash_cv_type_unsigned_long_long, +[AC_TRY_LINK([ +unsigned long long ull = 1; int i = 63;], +[ +unsigned long long ullmax = (unsigned long long) -1; +return ull << i | ull >> i | ullmax / ull | ullmax % ull; +], bash_cv_type_unsigned_long_long='unsigned long long', + bash_cv_type_unsigned_long_long='unsigned long')]) +if test "$bash_cv_type_unsigned_long_long" = 'unsigned long long'; then + AC_DEFINE(HAVE_UNSIGNED_LONG_LONG, 1) +fi +]) + +dnl +dnl Type of struct rlimit fields: some systems (OSF/1, NetBSD, RISC/os 5.0) +dnl have a rlim_t, others (4.4BSD based systems) use quad_t, others use +dnl long and still others use int (HP-UX 9.01, SunOS 4.1.3). To simplify +dnl matters, this just checks for rlim_t, quad_t, or long. +dnl +AC_DEFUN([BASH_TYPE_RLIMIT], +[AC_MSG_CHECKING(for size and type of struct rlimit fields) +AC_CACHE_VAL(bash_cv_type_rlimit, +[AC_TRY_COMPILE([#include +#include ], +[rlim_t xxx;], bash_cv_type_rlimit=rlim_t,[ +AC_TRY_RUN([ +#include +#include +#include +main() +{ +#ifdef HAVE_QUAD_T + struct rlimit rl; + if (sizeof(rl.rlim_cur) == sizeof(quad_t)) + exit(0); +#endif + exit(1); +}], bash_cv_type_rlimit=quad_t, bash_cv_type_rlimit=long, + [AC_MSG_WARN(cannot check quad_t if cross compiling -- defaulting to long) + bash_cv_type_rlimit=long])]) +]) +AC_MSG_RESULT($bash_cv_type_rlimit) +if test $bash_cv_type_rlimit = quad_t; then +AC_DEFINE(RLIMTYPE, quad_t) +elif test $bash_cv_type_rlimit = rlim_t; then +AC_DEFINE(RLIMTYPE, rlim_t) +fi +]) + +AC_DEFUN([BASH_FUNC_LSTAT], +[dnl Cannot use AC_CHECK_FUNCS(lstat) because Linux defines lstat() as an +dnl inline function in . +AC_CACHE_CHECK([for lstat], bash_cv_func_lstat, +[AC_TRY_LINK([ +#include +#include +],[ lstat(".",(struct stat *)0); ], +bash_cv_func_lstat=yes, bash_cv_func_lstat=no)]) +if test $bash_cv_func_lstat = yes; then + AC_DEFINE(HAVE_LSTAT) +fi +]) + +AC_DEFUN([BASH_FUNC_INET_ATON], +[ +AC_CACHE_CHECK([for inet_aton], bash_cv_func_inet_aton, +[AC_TRY_LINK([ +#include +#include +#include +struct in_addr ap;], [ inet_aton("127.0.0.1", &ap); ], +bash_cv_func_inet_aton=yes, bash_cv_func_inet_aton=no)]) +if test $bash_cv_func_inet_aton = yes; then + AC_DEFINE(HAVE_INET_ATON) +else + AC_LIBOBJ(inet_aton) +fi +]) + +AC_DEFUN([BASH_FUNC_GETENV], +[AC_MSG_CHECKING(to see if getenv can be redefined) +AC_CACHE_VAL(bash_cv_getenv_redef, +[AC_TRY_RUN([ +#ifdef HAVE_UNISTD_H +# include +#endif +#ifndef __STDC__ +# ifndef const +# define const +# endif +#endif +char * +getenv (name) +#if defined (__linux__) || defined (__bsdi__) || defined (convex) + const char *name; +#else + char const *name; +#endif /* !__linux__ && !__bsdi__ && !convex */ +{ +return "42"; +} +main() +{ +char *s; +/* The next allows this program to run, but does not allow bash to link + when it redefines getenv. I'm not really interested in figuring out + why not. */ +#if defined (NeXT) +exit(1); +#endif +s = getenv("ABCDE"); +exit(s == 0); /* force optimizer to leave getenv in */ +} +], bash_cv_getenv_redef=yes, bash_cv_getenv_redef=no, + [AC_MSG_WARN(cannot check getenv redefinition if cross compiling -- defaulting to yes) + bash_cv_getenv_redef=yes] +)]) +AC_MSG_RESULT($bash_cv_getenv_redef) +if test $bash_cv_getenv_redef = yes; then +AC_DEFINE(CAN_REDEFINE_GETENV) +fi +]) + +# We should check for putenv before calling this +AC_DEFUN([BASH_FUNC_STD_PUTENV], +[ +AC_REQUIRE([AC_HEADER_STDC]) +AC_REQUIRE([AC_C_PROTOTYPES]) +AC_CACHE_CHECK([for standard-conformant putenv declaration], bash_cv_std_putenv, +[AC_TRY_LINK([ +#if STDC_HEADERS +#include +#include +#endif +#ifndef __STDC__ +# ifndef const +# define const +# endif +#endif +#ifdef PROTOTYPES +extern int putenv (char *); +#else +extern int putenv (); +#endif +], +[return (putenv == 0);], +bash_cv_std_putenv=yes, bash_cv_std_putenv=no +)]) +if test $bash_cv_std_putenv = yes; then +AC_DEFINE(HAVE_STD_PUTENV) +fi +]) + +# We should check for unsetenv before calling this +AC_DEFUN([BASH_FUNC_STD_UNSETENV], +[ +AC_REQUIRE([AC_HEADER_STDC]) +AC_REQUIRE([AC_C_PROTOTYPES]) +AC_CACHE_CHECK([for standard-conformant unsetenv declaration], bash_cv_std_unsetenv, +[AC_TRY_LINK([ +#if STDC_HEADERS +#include +#include +#endif +#ifndef __STDC__ +# ifndef const +# define const +# endif +#endif +#ifdef PROTOTYPES +extern int unsetenv (const char *); +#else +extern int unsetenv (); +#endif +], +[return (unsetenv == 0);], +bash_cv_std_unsetenv=yes, bash_cv_std_unsetenv=no +)]) +if test $bash_cv_std_unsetenv = yes; then +AC_DEFINE(HAVE_STD_UNSETENV) +fi +]) + +AC_DEFUN([BASH_FUNC_ULIMIT_MAXFDS], +[AC_MSG_CHECKING(whether ulimit can substitute for getdtablesize) +AC_CACHE_VAL(bash_cv_ulimit_maxfds, +[AC_TRY_RUN([ +main() +{ +long maxfds = ulimit(4, 0L); +exit (maxfds == -1L); +} +], bash_cv_ulimit_maxfds=yes, bash_cv_ulimit_maxfds=no, + [AC_MSG_WARN(cannot check ulimit if cross compiling -- defaulting to no) + bash_cv_ulimit_maxfds=no] +)]) +AC_MSG_RESULT($bash_cv_ulimit_maxfds) +if test $bash_cv_ulimit_maxfds = yes; then +AC_DEFINE(ULIMIT_MAXFDS) +fi +]) + +AC_DEFUN([BASH_FUNC_GETCWD], +[AC_MSG_CHECKING([if getcwd() calls popen()]) +AC_CACHE_VAL(bash_cv_getcwd_calls_popen, +[AC_TRY_RUN([ +#include +#ifdef HAVE_UNISTD_H +#include +#endif + +#ifndef __STDC__ +#ifndef const +#define const +#endif +#endif + +int popen_called; + +FILE * +popen(command, type) + const char *command; + const char *type; +{ + popen_called = 1; + return (FILE *)NULL; +} + +FILE *_popen(command, type) + const char *command; + const char *type; +{ + return (popen (command, type)); +} + +int +pclose(stream) +FILE *stream; +{ + return 0; +} + +int +_pclose(stream) +FILE *stream; +{ + return 0; +} + +main() +{ + char lbuf[32]; + popen_called = 0; + getcwd(lbuf, 32); + exit (popen_called); +} +], bash_cv_getcwd_calls_popen=no, bash_cv_getcwd_calls_popen=yes, + [AC_MSG_WARN(cannot check whether getcwd calls popen if cross compiling -- defaulting to no) + bash_cv_getcwd_calls_popen=no] +)]) +AC_MSG_RESULT($bash_cv_getcwd_calls_popen) +if test $bash_cv_getcwd_calls_popen = yes; then +AC_DEFINE(GETCWD_BROKEN) +AC_LIBOBJ(getcwd) +fi +]) + +dnl +dnl This needs BASH_CHECK_SOCKLIB, but since that's not called on every +dnl system, we can't use AC_PREREQ +dnl +AC_DEFUN([BASH_FUNC_GETHOSTBYNAME], +[if test "X$bash_cv_have_gethostbyname" = "X"; then +_bash_needmsg=yes +else +AC_MSG_CHECKING(for gethostbyname in socket library) +_bash_needmsg= +fi +AC_CACHE_VAL(bash_cv_have_gethostbyname, +[AC_TRY_LINK([#include ], +[ struct hostent *hp; + hp = gethostbyname("localhost"); +], bash_cv_have_gethostbyname=yes, bash_cv_have_gethostbyname=no)] +) +if test "X$_bash_needmsg" = Xyes; then + AC_MSG_CHECKING(for gethostbyname in socket library) +fi +AC_MSG_RESULT($bash_cv_have_gethostbyname) +if test "$bash_cv_have_gethostbyname" = yes; then +AC_DEFINE(HAVE_GETHOSTBYNAME) +fi +]) + +AC_DEFUN([BASH_FUNC_FNMATCH_EXTMATCH], +[AC_MSG_CHECKING(if fnmatch does extended pattern matching with FNM_EXTMATCH) +AC_CACHE_VAL(bash_cv_fnm_extmatch, +[AC_TRY_RUN([ +#include + +main() +{ +#ifdef FNM_EXTMATCH + exit (0); +#else + exit (1); +#endif +} +], bash_cv_fnm_extmatch=yes, bash_cv_fnm_extmatch=no, + [AC_MSG_WARN(cannot check FNM_EXTMATCH if cross compiling -- defaulting to no) + bash_cv_fnm_extmatch=no]) +]) +AC_MSG_RESULT($bash_cv_fnm_extmatch) +if test $bash_cv_fnm_extmatch = yes; then +AC_DEFINE(HAVE_LIBC_FNM_EXTMATCH) +fi +]) + +AH_TEMPLATE([HAVE_POSIX_SIGSETJMP], [Define if we POSIX-style sigsetjmp/siglongjmp are available]) +AC_DEFUN([BASH_FUNC_POSIX_SETJMP], +[AC_REQUIRE([BASH_SYS_SIGNAL_VINTAGE]) +AC_MSG_CHECKING(for presence of POSIX-style sigsetjmp/siglongjmp) +AC_CACHE_VAL(bash_cv_func_sigsetjmp, +[AC_TRY_RUN([ +#ifdef HAVE_UNISTD_H +#include +#endif +#include +#include +#include + +main() +{ +#if !defined (_POSIX_VERSION) || !defined (HAVE_POSIX_SIGNALS) +exit (1); +#else + +int code; +sigset_t set, oset; +sigjmp_buf xx; + +/* get the mask */ +sigemptyset(&set); +sigemptyset(&oset); +sigprocmask(SIG_BLOCK, (sigset_t *)NULL, &set); +sigprocmask(SIG_BLOCK, (sigset_t *)NULL, &oset); + +/* save it */ +code = sigsetjmp(xx, 1); +if (code) + exit(0); /* could get sigmask and compare to oset here. */ + +/* change it */ +sigaddset(&set, SIGINT); +sigprocmask(SIG_BLOCK, &set, (sigset_t *)NULL); + +/* and siglongjmp */ +siglongjmp(xx, 10); +exit(1); +#endif +}], bash_cv_func_sigsetjmp=present, bash_cv_func_sigsetjmp=missing, + [AC_MSG_WARN(cannot check for sigsetjmp/siglongjmp if cross-compiling -- defaulting to missing) + bash_cv_func_sigsetjmp=missing] +)]) +AC_MSG_RESULT($bash_cv_func_sigsetjmp) +if test $bash_cv_func_sigsetjmp = present; then +AC_DEFINE(HAVE_POSIX_SIGSETJMP) +fi +]) + +AH_TEMPLATE([STRCOLL_BROKEN], [Define if strcoll is broken with respect to strcmp in the default locale.]) +AC_DEFUN([BASH_FUNC_STRCOLL], +[ +AC_MSG_CHECKING(whether or not strcoll and strcmp differ) +AC_CACHE_VAL(bash_cv_func_strcoll_broken, +[AC_TRY_RUN([ +#include +#if defined (HAVE_LOCALE_H) +#include +#endif + +main(c, v) +int c; +char *v[]; +{ + int r1, r2; + char *deflocale, *defcoll; + +#ifdef HAVE_SETLOCALE + deflocale = setlocale(LC_ALL, ""); + defcoll = setlocale(LC_COLLATE, ""); +#endif + +#ifdef HAVE_STRCOLL + /* These two values are taken from tests/glob-test. */ + r1 = strcoll("abd", "aXd"); +#else + r1 = 0; +#endif + r2 = strcmp("abd", "aXd"); + + /* These two should both be greater than 0. It is permissible for + a system to return different values, as long as the sign is the + same. */ + + /* Exit with 1 (failure) if these two values are both > 0, since + this tests whether strcoll(3) is broken with respect to strcmp(3) + in the default locale. */ + exit (r1 > 0 && r2 > 0); +} +], bash_cv_func_strcoll_broken=yes, bash_cv_func_strcoll_broken=no, + [AC_MSG_WARN(cannot check strcoll if cross compiling -- defaulting to no) + bash_cv_func_strcoll_broken=no] +)]) +AC_MSG_RESULT($bash_cv_func_strcoll_broken) +if test $bash_cv_func_strcoll_broken = yes; then +AC_DEFINE(STRCOLL_BROKEN) +fi +]) + +AC_DEFUN([BASH_FUNC_PRINTF_A_FORMAT], +[AC_MSG_CHECKING([for printf floating point output in hex notation]) +AC_CACHE_VAL(bash_cv_printf_a_format, +[AC_TRY_RUN([ +#include +#include + +int +main() +{ + double y = 0.0; + char abuf[1024]; + + sprintf(abuf, "%A", y); + exit(strchr(abuf, 'P') == (char *)0); +} +], bash_cv_printf_a_format=yes, bash_cv_printf_a_format=no, + [AC_MSG_WARN(cannot check printf if cross compiling -- defaulting to no) + bash_cv_printf_a_format=no] +)]) +AC_MSG_RESULT($bash_cv_printf_a_format) +if test $bash_cv_printf_a_format = yes; then +AC_DEFINE(HAVE_PRINTF_A_FORMAT) +fi +]) + +AC_DEFUN([BASH_STRUCT_TERMIOS_LDISC], +[ +AC_CHECK_MEMBER(struct termios.c_line, AC_DEFINE(TERMIOS_LDISC), ,[ +#include +#include +]) +]) + +AC_DEFUN([BASH_STRUCT_TERMIO_LDISC], +[ +AC_CHECK_MEMBER(struct termio.c_line, AC_DEFINE(TERMIO_LDISC), ,[ +#include +#include +]) +]) + +dnl +dnl Like AC_STRUCT_ST_BLOCKS, but doesn't muck with LIBOBJS +dnl +dnl sets bash_cv_struct_stat_st_blocks +dnl +dnl unused for now; we'll see how AC_CHECK_MEMBERS works +dnl +AC_DEFUN([BASH_STRUCT_ST_BLOCKS], +[ +AC_MSG_CHECKING([for struct stat.st_blocks]) +AC_CACHE_VAL(bash_cv_struct_stat_st_blocks, +[AC_TRY_COMPILE( +[ +#include +#include +], +[ +main() +{ +static struct stat a; +if (a.st_blocks) return 0; +return 0; +} +], bash_cv_struct_stat_st_blocks=yes, bash_cv_struct_stat_st_blocks=no) +]) +AC_MSG_RESULT($bash_cv_struct_stat_st_blocks) +if test "$bash_cv_struct_stat_st_blocks" = "yes"; then +AC_DEFINE(HAVE_STRUCT_STAT_ST_BLOCKS) +fi +]) + +AC_DEFUN([BASH_CHECK_LIB_TERMCAP], +[ +if test "X$bash_cv_termcap_lib" = "X"; then +_bash_needmsg=yes +else +AC_MSG_CHECKING(which library has the termcap functions) +_bash_needmsg= +fi +AC_CACHE_VAL(bash_cv_termcap_lib, +[AC_CHECK_LIB(termcap, tgetent, bash_cv_termcap_lib=libtermcap, + [AC_CHECK_LIB(tinfo, tgetent, bash_cv_termcap_lib=libtinfo, + [AC_CHECK_LIB(curses, tgetent, bash_cv_termcap_lib=libcurses, + [AC_CHECK_LIB(ncurses, tgetent, bash_cv_termcap_lib=libncurses, + bash_cv_termcap_lib=gnutermcap)])])])]) +if test "X$_bash_needmsg" = "Xyes"; then +AC_MSG_CHECKING(which library has the termcap functions) +fi +AC_MSG_RESULT(using $bash_cv_termcap_lib) +if test $bash_cv_termcap_lib = gnutermcap && test -z "$prefer_curses"; then +LDFLAGS="$LDFLAGS -L./lib/termcap" +TERMCAP_LIB="./lib/termcap/libtermcap.a" +TERMCAP_DEP="./lib/termcap/libtermcap.a" +elif test $bash_cv_termcap_lib = libtermcap && test -z "$prefer_curses"; then +TERMCAP_LIB=-ltermcap +TERMCAP_DEP= +elif test $bash_cv_termcap_lib = libtinfo; then +TERMCAP_LIB=-ltinfo +TERMCAP_DEP= +elif test $bash_cv_termcap_lib = libncurses; then +TERMCAP_LIB=-lncurses +TERMCAP_DEP= +else +TERMCAP_LIB=-lcurses +TERMCAP_DEP= +fi +]) + +dnl +dnl Check for the presence of getpeername in libsocket. +dnl If libsocket is present, check for libnsl and add it to LIBS if +dnl it's there, since most systems with libsocket require linking +dnl with libnsl as well. This should only be called if getpeername +dnl was not found in libc. +dnl +dnl NOTE: IF WE FIND GETPEERNAME, WE ASSUME THAT WE HAVE BIND/CONNECT +dnl AS WELL +dnl +AC_DEFUN([BASH_CHECK_LIB_SOCKET], +[ +if test "X$bash_cv_have_socklib" = "X"; then +_bash_needmsg= +else +AC_MSG_CHECKING(for socket library) +_bash_needmsg=yes +fi +AC_CACHE_VAL(bash_cv_have_socklib, +[AC_CHECK_LIB(socket, getpeername, + bash_cv_have_socklib=yes, bash_cv_have_socklib=no, -lnsl)]) +if test "X$_bash_needmsg" = Xyes; then + AC_MSG_RESULT($bash_cv_have_socklib) + _bash_needmsg= +fi +if test $bash_cv_have_socklib = yes; then + # check for libnsl, add it to LIBS if present + if test "X$bash_cv_have_libnsl" = "X"; then + _bash_needmsg= + else + AC_MSG_CHECKING(for libnsl) + _bash_needmsg=yes + fi + AC_CACHE_VAL(bash_cv_have_libnsl, + [AC_CHECK_LIB(nsl, t_open, + bash_cv_have_libnsl=yes, bash_cv_have_libnsl=no)]) + if test "X$_bash_needmsg" = Xyes; then + AC_MSG_RESULT($bash_cv_have_libnsl) + _bash_needmsg= + fi + if test $bash_cv_have_libnsl = yes; then + LIBS="-lsocket -lnsl $LIBS" + else + LIBS="-lsocket $LIBS" + fi + AC_DEFINE(HAVE_LIBSOCKET) + AC_DEFINE(HAVE_GETPEERNAME) +fi +]) + +AH_TEMPLATE([STRUCT_DIRENT_HAS_D_INO], [Define if struct dirent has a d_ino member]) +AC_DEFUN([BASH_STRUCT_DIRENT_D_INO], +[AC_REQUIRE([AC_HEADER_DIRENT]) +AC_MSG_CHECKING(if struct dirent has a d_ino member) +AC_CACHE_VAL(bash_cv_dirent_has_dino, +[AC_TRY_COMPILE([ +#include +#include +#ifdef HAVE_UNISTD_H +# include +#endif /* HAVE_UNISTD_H */ +#if defined(HAVE_DIRENT_H) +# include +#else +# define dirent direct +# ifdef HAVE_SYS_NDIR_H +# include +# endif /* SYSNDIR */ +# ifdef HAVE_SYS_DIR_H +# include +# endif /* SYSDIR */ +# ifdef HAVE_NDIR_H +# include +# endif +#endif /* HAVE_DIRENT_H */ +],[ +struct dirent d; int z; z = d.d_ino; +], bash_cv_dirent_has_dino=yes, bash_cv_dirent_has_dino=no)]) +AC_MSG_RESULT($bash_cv_dirent_has_dino) +if test $bash_cv_dirent_has_dino = yes; then +AC_DEFINE(STRUCT_DIRENT_HAS_D_INO) +fi +]) + +AH_TEMPLATE([STRUCT_DIRENT_HAS_D_FILENO], [Define if struct dirent has a d_fileno member]) +AC_DEFUN([BASH_STRUCT_DIRENT_D_FILENO], +[AC_REQUIRE([AC_HEADER_DIRENT]) +AC_MSG_CHECKING(if struct dirent has a d_fileno member) +AC_CACHE_VAL(bash_cv_dirent_has_d_fileno, +[AC_TRY_COMPILE([ +#include +#include +#ifdef HAVE_UNISTD_H +# include +#endif /* HAVE_UNISTD_H */ +#if defined(HAVE_DIRENT_H) +# include +#else +# define dirent direct +# ifdef HAVE_SYS_NDIR_H +# include +# endif /* SYSNDIR */ +# ifdef HAVE_SYS_DIR_H +# include +# endif /* SYSDIR */ +# ifdef HAVE_NDIR_H +# include +# endif +#endif /* HAVE_DIRENT_H */ +],[ +struct dirent d; int z; z = d.d_fileno; +], bash_cv_dirent_has_d_fileno=yes, bash_cv_dirent_has_d_fileno=no)]) +AC_MSG_RESULT($bash_cv_dirent_has_d_fileno) +if test $bash_cv_dirent_has_d_fileno = yes; then +AC_DEFINE(STRUCT_DIRENT_HAS_D_FILENO) +fi +]) + +AC_DEFUN([BASH_STRUCT_TIMEVAL], +[AC_MSG_CHECKING(for struct timeval in sys/time.h and time.h) +AC_CACHE_VAL(bash_cv_struct_timeval, +[ +AC_EGREP_HEADER(struct timeval, sys/time.h, + bash_cv_struct_timeval=yes, + AC_EGREP_HEADER(struct timeval, time.h, + bash_cv_struct_timeval=yes, + bash_cv_struct_timeval=no)) +]) +AC_MSG_RESULT($bash_cv_struct_timeval) +if test $bash_cv_struct_timeval = yes; then + AC_DEFINE(HAVE_TIMEVAL) +fi +]) + +AH_TEMPLATE([STRUCT_WINSIZE_IN_SYS_IOCTL], [Define if struct winsize is in sys/ioctl.h]) +AH_TEMPLATE([STRUCT_WINSIZE_IN_TERMIOS], [Define if struct winsize is in termios.h]) +AC_DEFUN([BASH_STRUCT_WINSIZE], +[AC_MSG_CHECKING(for struct winsize in sys/ioctl.h and termios.h) +AC_CACHE_VAL(bash_cv_struct_winsize_header, +[AC_TRY_COMPILE([#include +#include ], [struct winsize x;], + bash_cv_struct_winsize_header=ioctl_h, + [AC_TRY_COMPILE([#include +#include ], [struct winsize x;], + bash_cv_struct_winsize_header=termios_h, bash_cv_struct_winsize_header=other) +])]) +if test $bash_cv_struct_winsize_header = ioctl_h; then + AC_MSG_RESULT(sys/ioctl.h) + AC_DEFINE(STRUCT_WINSIZE_IN_SYS_IOCTL) +elif test $bash_cv_struct_winsize_header = termios_h; then + AC_MSG_RESULT(termios.h) + AC_DEFINE(STRUCT_WINSIZE_IN_TERMIOS) +else + AC_MSG_RESULT(not found) +fi +]) + +dnl Check type of signal routines (posix, 4.2bsd, 4.1bsd or v7) +AH_TEMPLATE([HAVE_POSIX_SIGNALS], [Define if we have the POSIX signal routines]) +AH_TEMPLATE([HAVE_BSD_SIGNALS], [Define if we have the BSD signal routines]) +AH_TEMPLATE([HAVE_USG_SIGHOLD], [Define if we have the USG signal routines]) +AC_DEFUN([BASH_SYS_SIGNAL_VINTAGE], +[AC_REQUIRE([AC_TYPE_SIGNAL]) +AC_MSG_CHECKING(for type of signal functions) +AC_CACHE_VAL(bash_cv_signal_vintage, +[ + AC_MSG_WARN([checking for posix...]) + AC_TRY_LINK([#include ],[ + sigset_t ss; + struct sigaction sa; + sigemptyset(&ss); sigsuspend(&ss); + sigaction(SIGINT, &sa, (struct sigaction *) 0); + sigprocmask(SIG_BLOCK, &ss, (sigset_t *) 0); + ], bash_cv_signal_vintage="posix", + [ + AC_MSG_WARN([checking for 4.2bsd...]) + AC_TRY_LINK([#include ], [ + int mask = sigmask(SIGINT); + sigsetmask(mask); sigblock(mask); sigpause(mask); + ], bash_cv_signal_vintage="4.2bsd", + [ + AC_MSG_WARN([checking for svr3...]) + AC_TRY_LINK([ + #include + RETSIGTYPE foo() { }], [ + int mask = sigmask(SIGINT); + sigset(SIGINT, foo); sigrelse(SIGINT); + sighold(SIGINT); sigpause(SIGINT); + ], bash_cv_signal_vintage="svr3", bash_cv_signal_vintage="v7" + )] + )] +) +]) +AC_MSG_RESULT($bash_cv_signal_vintage) +if test "$bash_cv_signal_vintage" = "posix"; then +AC_DEFINE(HAVE_POSIX_SIGNALS) +elif test "$bash_cv_signal_vintage" = "4.2bsd"; then +AC_DEFINE(HAVE_BSD_SIGNALS) +elif test "$bash_cv_signal_vintage" = "svr3"; then +AC_DEFINE(HAVE_USG_SIGHOLD) +fi +]) + +dnl Check if the pgrp of setpgrp() can't be the pid of a zombie process. +AC_DEFUN([BASH_SYS_PGRP_SYNC], +[AC_REQUIRE([AC_FUNC_GETPGRP]) +AC_MSG_CHECKING(whether pgrps need synchronization) +AC_CACHE_VAL(bash_cv_pgrp_pipe, +[AC_TRY_RUN([ +#ifdef HAVE_UNISTD_H +# include +#endif +main() +{ +# ifdef GETPGRP_VOID +# define getpgID() getpgrp() +# else +# define getpgID() getpgrp(0) +# define setpgid(x,y) setpgrp(x,y) +# endif + int pid1, pid2, fds[2]; + int status; + char ok; + + switch (pid1 = fork()) { + case -1: + exit(1); + case 0: + setpgid(0, getpid()); + exit(0); + } + setpgid(pid1, pid1); + + sleep(2); /* let first child die */ + + if (pipe(fds) < 0) + exit(2); + + switch (pid2 = fork()) { + case -1: + exit(3); + case 0: + setpgid(0, pid1); + ok = getpgID() == pid1; + write(fds[1], &ok, 1); + exit(0); + } + setpgid(pid2, pid1); + + close(fds[1]); + if (read(fds[0], &ok, 1) != 1) + exit(4); + wait(&status); + wait(&status); + exit(ok ? 0 : 5); +} +], bash_cv_pgrp_pipe=no,bash_cv_pgrp_pipe=yes, + [AC_MSG_WARN(cannot check pgrp synchronization if cross compiling -- defaulting to no) + bash_cv_pgrp_pipe=no]) +]) +AC_MSG_RESULT($bash_cv_pgrp_pipe) +if test $bash_cv_pgrp_pipe = yes; then +AC_DEFINE(PGRP_PIPE) +fi +]) + +AH_TEMPLATE([MUST_REINSTALL_SIGHANDLERS], [Define if signal handlers must be reinstalled when invoked.]) +AC_DEFUN([BASH_SYS_REINSTALL_SIGHANDLERS], +[AC_REQUIRE([AC_TYPE_SIGNAL]) +AC_REQUIRE([BASH_SYS_SIGNAL_VINTAGE]) +AC_MSG_CHECKING([if signal handlers must be reinstalled when invoked]) +AC_CACHE_VAL(bash_cv_must_reinstall_sighandlers, +[AC_TRY_RUN([ +#include +#ifdef HAVE_UNISTD_H +#include +#endif + +typedef RETSIGTYPE sigfunc(); + +int nsigint; + +#ifdef HAVE_POSIX_SIGNALS +sigfunc * +set_signal_handler(sig, handler) + int sig; + sigfunc *handler; +{ + struct sigaction act, oact; + act.sa_handler = handler; + act.sa_flags = 0; + sigemptyset (&act.sa_mask); + sigemptyset (&oact.sa_mask); + sigaction (sig, &act, &oact); + return (oact.sa_handler); +} +#else +#define set_signal_handler(s, h) signal(s, h) +#endif + +RETSIGTYPE +sigint(s) +int s; +{ + nsigint++; +} + +main() +{ + nsigint = 0; + set_signal_handler(SIGINT, sigint); + kill((int)getpid(), SIGINT); + kill((int)getpid(), SIGINT); + exit(nsigint != 2); +} +], bash_cv_must_reinstall_sighandlers=no, bash_cv_must_reinstall_sighandlers=yes, + [AC_MSG_WARN(cannot check signal handling if cross compiling -- defaulting to no) + bash_cv_must_reinstall_sighandlers=no] +)]) +AC_MSG_RESULT($bash_cv_must_reinstall_sighandlers) +if test $bash_cv_must_reinstall_sighandlers = yes; then +AC_DEFINE(MUST_REINSTALL_SIGHANDLERS) +fi +]) + +dnl check that some necessary job control definitions are present +AC_DEFUN([BASH_SYS_JOB_CONTROL_MISSING], +[AC_REQUIRE([BASH_SYS_SIGNAL_VINTAGE]) +AC_MSG_CHECKING(for presence of necessary job control definitions) +AC_CACHE_VAL(bash_cv_job_control_missing, +[AC_TRY_RUN([ +#include +#ifdef HAVE_SYS_WAIT_H +#include +#endif +#ifdef HAVE_UNISTD_H +#include +#endif +#include + +/* Add more tests in here as appropriate. */ +main() +{ +/* signal type */ +#if !defined (HAVE_POSIX_SIGNALS) && !defined (HAVE_BSD_SIGNALS) +exit(1); +#endif + +/* signals and tty control. */ +#if !defined (SIGTSTP) || !defined (SIGSTOP) || !defined (SIGCONT) +exit (1); +#endif + +/* process control */ +#if !defined (WNOHANG) || !defined (WUNTRACED) +exit(1); +#endif + +/* Posix systems have tcgetpgrp and waitpid. */ +#if defined (_POSIX_VERSION) && !defined (HAVE_TCGETPGRP) +exit(1); +#endif + +#if defined (_POSIX_VERSION) && !defined (HAVE_WAITPID) +exit(1); +#endif + +/* Other systems have TIOCSPGRP/TIOCGPRGP and wait3. */ +#if !defined (_POSIX_VERSION) && !defined (HAVE_WAIT3) +exit(1); +#endif + +exit(0); +}], bash_cv_job_control_missing=present, bash_cv_job_control_missing=missing, + [AC_MSG_WARN(cannot check job control if cross-compiling -- defaulting to missing) + bash_cv_job_control_missing=missing] +)]) +AC_MSG_RESULT($bash_cv_job_control_missing) +if test $bash_cv_job_control_missing = missing; then +AC_DEFINE(JOB_CONTROL_MISSING) +fi +]) + +dnl check whether named pipes are present +dnl this requires a previous check for mkfifo, but that is awkward to specify +AC_DEFUN([BASH_SYS_NAMED_PIPES], +[AC_MSG_CHECKING(for presence of named pipes) +AC_CACHE_VAL(bash_cv_sys_named_pipes, +[AC_TRY_RUN([ +#include +#include +#ifdef HAVE_UNISTD_H +#include +#endif + +/* Add more tests in here as appropriate. */ +main() +{ +int fd, err; + +#if defined (HAVE_MKFIFO) +exit (0); +#endif + +#if !defined (S_IFIFO) && (defined (_POSIX_VERSION) && !defined (S_ISFIFO)) +exit (1); +#endif + +#if defined (NeXT) +exit (1); +#endif +err = mkdir("/tmp/bash-aclocal", 0700); +if (err < 0) { + perror ("mkdir"); + exit(1); +} +fd = mknod ("/tmp/bash-aclocal/sh-np-autoconf", 0666 | S_IFIFO, 0); +if (fd == -1) { + rmdir ("/tmp/bash-aclocal"); + exit (1); +} +close(fd); +unlink ("/tmp/bash-aclocal/sh-np-autoconf"); +rmdir ("/tmp/bash-aclocal"); +exit(0); +}], bash_cv_sys_named_pipes=present, bash_cv_sys_named_pipes=missing, + [AC_MSG_WARN(cannot check for named pipes if cross-compiling -- defaulting to missing) + bash_cv_sys_named_pipes=missing] +)]) +AC_MSG_RESULT($bash_cv_sys_named_pipes) +if test $bash_cv_sys_named_pipes = missing; then +AC_DEFINE(NAMED_PIPES_MISSING) +fi +]) + +AC_DEFUN([BASH_SYS_DEFAULT_MAIL_DIR], +[AC_MSG_CHECKING(for default mail directory) +AC_CACHE_VAL(bash_cv_mail_dir, +[if test -d /var/mail; then + bash_cv_mail_dir=/var/mail + elif test -d /var/spool/mail; then + bash_cv_mail_dir=/var/spool/mail + elif test -d /usr/mail; then + bash_cv_mail_dir=/usr/mail + elif test -d /usr/spool/mail; then + bash_cv_mail_dir=/usr/spool/mail + else + bash_cv_mail_dir=unknown + fi +]) +AC_MSG_RESULT($bash_cv_mail_dir) +AC_DEFINE_UNQUOTED(DEFAULT_MAIL_DIRECTORY, "$bash_cv_mail_dir") +]) + +AC_DEFUN([BASH_HAVE_TIOCGWINSZ], +[AC_MSG_CHECKING(for TIOCGWINSZ in sys/ioctl.h) +AC_CACHE_VAL(bash_cv_tiocgwinsz_in_ioctl, +[AC_TRY_COMPILE([#include +#include ], [int x = TIOCGWINSZ;], + bash_cv_tiocgwinsz_in_ioctl=yes,bash_cv_tiocgwinsz_in_ioctl=no)]) +AC_MSG_RESULT($bash_cv_tiocgwinsz_in_ioctl) +if test $bash_cv_tiocgwinsz_in_ioctl = yes; then +AC_DEFINE(GWINSZ_IN_SYS_IOCTL) +fi +]) + +AH_TEMPLATE([TIOCSTAT_IN_SYS_IOCTL], [Define if TIOCSTAT is in sys/ioctl.h]) +AC_DEFUN([BASH_HAVE_TIOCSTAT], +[AC_MSG_CHECKING(for TIOCSTAT in sys/ioctl.h) +AC_CACHE_VAL(bash_cv_tiocstat_in_ioctl, +[AC_TRY_COMPILE([#include +#include ], [int x = TIOCSTAT;], + bash_cv_tiocstat_in_ioctl=yes,bash_cv_tiocstat_in_ioctl=no)]) +AC_MSG_RESULT($bash_cv_tiocstat_in_ioctl) +if test $bash_cv_tiocstat_in_ioctl = yes; then +AC_DEFINE(TIOCSTAT_IN_SYS_IOCTL) +fi +]) + +AH_TEMPLATE([FIONREAD_IN_SYS_IOCTL], [Define if FIONREAD is in sys/ioctl.h]) +AC_DEFUN([BASH_HAVE_FIONREAD], +[AC_MSG_CHECKING(for FIONREAD in sys/ioctl.h) +AC_CACHE_VAL(bash_cv_fionread_in_ioctl, +[AC_TRY_COMPILE([#include +#include ], [int x = FIONREAD;], + bash_cv_fionread_in_ioctl=yes,bash_cv_fionread_in_ioctl=no)]) +AC_MSG_RESULT($bash_cv_fionread_in_ioctl) +if test $bash_cv_fionread_in_ioctl = yes; then +AC_DEFINE(FIONREAD_IN_SYS_IOCTL) +fi +]) + +dnl +dnl See if speed_t is declared in . Some versions of linux +dnl require a definition of speed_t each time is included, +dnl but you can only get speed_t if you include (on some +dnl versions) or (on others). +dnl +AH_TEMPLATE([SPEED_T_IN_SYS_TYPES], [Define if speed_t is in sys/types.h]) +AC_DEFUN([BASH_CHECK_SPEED_T], +[AC_MSG_CHECKING(for speed_t in sys/types.h) +AC_CACHE_VAL(bash_cv_speed_t_in_sys_types, +[AC_TRY_COMPILE([#include ], [speed_t x;], + bash_cv_speed_t_in_sys_types=yes,bash_cv_speed_t_in_sys_types=no)]) +AC_MSG_RESULT($bash_cv_speed_t_in_sys_types) +if test $bash_cv_speed_t_in_sys_types = yes; then +AC_DEFINE(SPEED_T_IN_SYS_TYPES) +fi +]) + +AH_TEMPLATE([HAVE_GETPW_DECLS], [Define if getpw functions are declared in pwd.h]) +AC_DEFUN([BASH_CHECK_GETPW_FUNCS], +[AC_MSG_CHECKING(whether getpw functions are declared in pwd.h) +AC_CACHE_VAL(bash_cv_getpw_declared, +[AC_EGREP_CPP(getpwuid, +[ +#include +#ifdef HAVE_UNISTD_H +# include +#endif +#include +], +bash_cv_getpw_declared=yes,bash_cv_getpw_declared=no)]) +AC_MSG_RESULT($bash_cv_getpw_declared) +if test $bash_cv_getpw_declared = yes; then +AC_DEFINE(HAVE_GETPW_DECLS) +fi +]) + +AC_DEFUN([BASH_CHECK_DEV_FD], +[AC_MSG_CHECKING(whether /dev/fd is available) +AC_CACHE_VAL(bash_cv_dev_fd, +[if test -d /dev/fd && test -r /dev/fd/0; then + bash_cv_dev_fd=standard + elif test -d /proc/self/fd && test -r /proc/self/fd/0; then + bash_cv_dev_fd=whacky + else + bash_cv_dev_fd=absent + fi +]) +AC_MSG_RESULT($bash_cv_dev_fd) +if test $bash_cv_dev_fd = "standard"; then + AC_DEFINE(HAVE_DEV_FD) + AC_DEFINE(DEV_FD_PREFIX, "/dev/fd/") +elif test $bash_cv_dev_fd = "whacky"; then + AC_DEFINE(HAVE_DEV_FD) + AC_DEFINE(DEV_FD_PREFIX, "/proc/self/fd/") +fi +]) + +AC_DEFUN([BASH_CHECK_DEV_STDIN], +[AC_MSG_CHECKING(whether /dev/stdin stdout stderr are available) +AC_CACHE_VAL(bash_cv_dev_stdin, +[if test -d /dev/fd && test -r /dev/stdin; then + bash_cv_dev_stdin=present + elif test -d /proc/self/fd && test -r /dev/stdin; then + bash_cv_dev_stdin=present + else + bash_cv_dev_stdin=absent + fi +]) +AC_MSG_RESULT($bash_cv_dev_stdin) +if test $bash_cv_dev_stdin = "present"; then + AC_DEFINE(HAVE_DEV_STDIN) +fi +]) + +dnl +dnl Check if HPUX needs _KERNEL defined for RLIMIT_* definitions +dnl +AC_DEFUN([BASH_CHECK_KERNEL_RLIMIT], +[AC_MSG_CHECKING([whether $host_os needs _KERNEL for RLIMIT defines]) +AC_CACHE_VAL(bash_cv_kernel_rlimit, +[AC_TRY_COMPILE([ +#include +#include +], +[ + int f; + f = RLIMIT_DATA; +], bash_cv_kernel_rlimit=no, +[AC_TRY_COMPILE([ +#include +#define _KERNEL +#include +#undef _KERNEL +], +[ + int f; + f = RLIMIT_DATA; +], bash_cv_kernel_rlimit=yes, bash_cv_kernel_rlimit=no)] +)]) +AC_MSG_RESULT($bash_cv_kernel_rlimit) +if test $bash_cv_kernel_rlimit = yes; then +AC_DEFINE(RLIMIT_NEEDS_KERNEL) +fi +]) + +dnl +dnl Check for 64-bit off_t -- used for malloc alignment +dnl +dnl C does not allow duplicate case labels, so the compile will fail if +dnl sizeof(off_t) is > 4. +dnl +AC_DEFUN([BASH_CHECK_OFF_T_64], +[AC_CACHE_CHECK(for 64-bit off_t, bash_cv_off_t_64, +AC_TRY_COMPILE([ +#ifdef HAVE_UNISTD_H +#include +#endif +#include +],[ +switch (0) case 0: case (sizeof (off_t) <= 4):; +], bash_cv_off_t_64=no, bash_cv_off_t_64=yes)) +if test $bash_cv_off_t_64 = yes; then + AC_DEFINE(HAVE_OFF_T_64) +fi]) + +AC_DEFUN([BASH_CHECK_RTSIGS], +[AC_MSG_CHECKING(for unusable real-time signals due to large values) +AC_CACHE_VAL(bash_cv_unusable_rtsigs, +[AC_TRY_RUN([ +#include +#include + +#ifndef NSIG +# define NSIG 64 +#endif + +main () +{ + int n_sigs = 2 * NSIG; +#ifdef SIGRTMIN + int rtmin = SIGRTMIN; +#else + int rtmin = 0; +#endif + + exit(rtmin < n_sigs); +}], bash_cv_unusable_rtsigs=yes, bash_cv_unusable_rtsigs=no, + [AC_MSG_WARN(cannot check real-time signals if cross compiling -- defaulting to yes) + bash_cv_unusable_rtsigs=yes] +)]) +AC_MSG_RESULT($bash_cv_unusable_rtsigs) +if test $bash_cv_unusable_rtsigs = yes; then +AC_DEFINE(UNUSABLE_RT_SIGNALS) +fi +]) + +dnl +dnl check for availability of multibyte characters and functions +dnl +AH_TEMPLATE([HAVE_MBSRTOWCS], [Define if we have the mbsrtowcs function]) +AH_TEMPLATE([HAVE_WCWIDTH], [Define if we have the wcwidth function]) +AH_TEMPLATE([HAVE_MBSTATE_T], [Define if we have mbstate_t]) +AH_TEMPLATE([HAVE_LANGINFO_CODESET], [Define if we have nl_langinfo and CODESET]) +AC_DEFUN([BASH_CHECK_MULTIBYTE], +[ +AC_CHECK_HEADERS(wctype.h) +AC_CHECK_HEADERS(wchar.h) +AC_CHECK_HEADERS(langinfo.h) + +AC_CHECK_FUNC(mbsrtowcs, AC_DEFINE(HAVE_MBSRTOWCS)) +AC_CHECK_FUNC(wcwidth, AC_DEFINE(HAVE_WCWIDTH)) + +AC_CACHE_CHECK([for mbstate_t], bash_cv_have_mbstate_t, +[AC_TRY_RUN([ +#include +int +main () +{ + mbstate_t ps; + return 0; +}], bash_cv_have_mbstate_t=yes, bash_cv_have_mbstate_t=no)]) +if test $bash_cv_have_mbstate_t = yes; then + AC_DEFINE(HAVE_MBSTATE_T) +fi + +AC_CACHE_CHECK([for nl_langinfo and CODESET], bash_cv_langinfo_codeset, +[AC_TRY_LINK( +[#include ], +[char* cs = nl_langinfo(CODESET);], +bash_cv_langinfo_codeset=yes, bash_cv_langinfo_codeset=no)]) +if test $bash_cv_langinfo_codeset = yes; then + AC_DEFINE(HAVE_LANGINFO_CODESET) +fi + +]) + +dnl need: prefix exec_prefix libdir includedir CC TERMCAP_LIB +dnl require: +dnl AC_PROG_CC +dnl BASH_CHECK_LIB_TERMCAP + +AC_DEFUN([RL_LIB_READLINE_VERSION], +[ +AC_REQUIRE([BASH_CHECK_LIB_TERMCAP]) + +AC_MSG_CHECKING([version of installed readline library]) + +# What a pain in the ass this is. + +# save cpp and ld options +_save_CFLAGS="$CFLAGS" +_save_LDFLAGS="$LDFLAGS" +_save_LIBS="$LIBS" + +# Don't set ac_cv_rl_prefix if the caller has already assigned a value. This +# allows the caller to do something like $_rl_prefix=$withval if the user +# specifies --with-installed-readline=PREFIX as an argument to configure + +if test -z "$ac_cv_rl_prefix"; then +test "x$prefix" = xNONE && ac_cv_rl_prefix=$ac_default_prefix || ac_cv_rl_prefix=${prefix} +fi + +eval ac_cv_rl_includedir=${ac_cv_rl_prefix}/include +eval ac_cv_rl_libdir=${ac_cv_rl_prefix}/lib + +LIBS="$LIBS -lreadline ${TERMCAP_LIB}" +CFLAGS="$CFLAGS -I${ac_cv_rl_includedir}" +LDFLAGS="$LDFLAGS -L${ac_cv_rl_libdir}" + +AC_TRY_RUN([ +#include +#include + +main() +{ + FILE *fp; + fp = fopen("conftest.rlv", "w"); + if (fp == 0) exit(1); + fprintf(fp, "%s\n", rl_library_version ? rl_library_version : "0.0"); + fclose(fp); + exit(0); +} +], +ac_cv_rl_version=`cat conftest.rlv`, +ac_cv_rl_version='0.0', +ac_cv_rl_version='4.2') + +CFLAGS="$_save_CFLAGS" +LDFLAGS="$_save_LDFLAGS" +LIBS="$_save_LIBS" + +RL_MAJOR=0 +RL_MINOR=0 + +# ( +case "$ac_cv_rl_version" in +2*|3*|4*|5*|6*|7*|8*|9*) + RL_MAJOR=`echo $ac_cv_rl_version | sed 's:\..*$::'` + RL_MINOR=`echo $ac_cv_rl_version | sed -e 's:^.*\.::' -e 's:[[a-zA-Z]]*$::'` + ;; +esac + +# ((( +case $RL_MAJOR in +[[0-9][0-9]]) _RL_MAJOR=$RL_MAJOR ;; +[[0-9]]) _RL_MAJOR=0$RL_MAJOR ;; +*) _RL_MAJOR=00 ;; +esac + +# ((( +case $RL_MINOR in +[[0-9][0-9]]) _RL_MINOR=$RL_MINOR ;; +[[0-9]]) _RL_MINOR=0$RL_MINOR ;; +*) _RL_MINOR=00 ;; +esac + +RL_VERSION="0x${_RL_MAJOR}${_RL_MINOR}" + +# Readline versions greater than 4.2 have these defines in readline.h + +if test $ac_cv_rl_version = '0.0' ; then + AC_MSG_WARN([Could not test version of installed readline library.]) +elif test $RL_MAJOR -gt 4 || { test $RL_MAJOR = 4 && test $RL_MINOR -gt 2 ; } ; then + # set these for use by the caller + RL_PREFIX=$ac_cv_rl_prefix + RL_LIBDIR=$ac_cv_rl_libdir + RL_INCLUDEDIR=$ac_cv_rl_includedir + AC_MSG_RESULT($ac_cv_rl_version) +else + +AC_DEFINE_UNQUOTED(RL_READLINE_VERSION, $RL_VERSION, [encoded version of the installed readline library]) +AC_DEFINE_UNQUOTED(RL_VERSION_MAJOR, $RL_MAJOR, [major version of installed readline library]) +AC_DEFINE_UNQUOTED(RL_VERSION_MINOR, $RL_MINOR, [minor version of installed readline library]) + +AC_SUBST(RL_VERSION) +AC_SUBST(RL_MAJOR) +AC_SUBST(RL_MINOR) + +# set these for use by the caller +RL_PREFIX=$ac_cv_rl_prefix +RL_LIBDIR=$ac_cv_rl_libdir +RL_INCLUDEDIR=$ac_cv_rl_includedir + +AC_MSG_RESULT($ac_cv_rl_version) + +fi +]) diff --git a/meta/recipes-core/readline/files/configure-fix.patch b/meta/recipes-core/readline/files/configure-fix.patch new file mode 100644 index 0000000000..4100fe42a7 --- /dev/null +++ b/meta/recipes-core/readline/files/configure-fix.patch @@ -0,0 +1,24 @@ +Without this it fails to link against libtermcap causing various missing symbols +issues. + +RP - 8/10/08 + +Index: readline-5.2/configure.in +=================================================================== +--- readline-5.2.orig/configure.in 2008-10-08 09:58:52.000000000 +0100 ++++ readline-5.2/configure.in 2008-10-08 09:59:03.000000000 +0100 +@@ -211,10 +211,10 @@ + AC_MSG_CHECKING(configuration for building shared libraries) + eval `TERMCAP_LIB=$TERMCAP_LIB ${CONFIG_SHELL-/bin/sh} ${srcdir}/support/shobj-conf -C "${CC}" -c ${host_cpu} -o ${host_os} -v ${host_vendor}` + +-# case "$SHLIB_LIBS" in +-# *curses*|*termcap*|*termlib*) ;; +-# *) SHLIB_LIBS="$SHLIB_LIBS $TERMCAP_LIB" ;; +-# esac ++ case "$SHLIB_LIBS" in ++ *curses*|*termcap*|*termlib*) ;; ++ *) SHLIB_LIBS="$SHLIB_LIBS $TERMCAP_LIB" ;; ++ esac + + AC_SUBST(SHOBJ_CC) + AC_SUBST(SHOBJ_CFLAGS) diff --git a/meta/recipes-core/readline/readline.inc b/meta/recipes-core/readline/readline.inc new file mode 100644 index 0000000000..35bc7ed946 --- /dev/null +++ b/meta/recipes-core/readline/readline.inc @@ -0,0 +1,34 @@ +DESCRIPTION = "The GNU Readline library provides a set of functions for use by applications that allow users to edit \ +command lines as they are typed in. Both Emacs and vi editing modes are available. The Readline library includes \ +additional functions to maintain a list of previously-entered command lines, to recall and perhaps reedit those \ +lines, and perform csh-like history expansion on previous commands." +SECTION = "libs" +PRIORITY = "optional" + +# GPLv2+ (< 6.0), GPLv3+ (>= 6.0) +LICENSE = "GPLv3+" +LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" + +DEPENDS += "ncurses" + +SRC_URI = "${GNU_MIRROR}/readline/${BPN}-${PV}.tar.gz \ + file://configure-fix.patch \ + file://acinclude.m4" + +S = "${WORKDIR}/${BPN}-${PV}" + +inherit autotools + +LEAD_SONAME = "libreadline.so" + +do_configure_prepend () { + install -m 0644 ${WORKDIR}/acinclude.m4 ${S}/ +} + +do_install_append () { + # Make install doesn't properly install these + oe_libinstall -so -C shlib libhistory ${D}${libdir} + oe_libinstall -so -C shlib libreadline ${D}${libdir} +} + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-core/readline/readline_5.2.bb b/meta/recipes-core/readline/readline_5.2.bb new file mode 100644 index 0000000000..a62345c45e --- /dev/null +++ b/meta/recipes-core/readline/readline_5.2.bb @@ -0,0 +1,35 @@ +DESCRIPTION = "The GNU Readline library provides a set of functions for use by applications that allow users to edit \ +command lines as they are typed in. Both Emacs and vi editing modes are available. The Readline library includes \ +additional functions to maintain a list of previously-entered command lines, to recall and perhaps reedit those \ +lines, and perform csh-like history expansion on previous commands." +SECTION = "libs" + +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=03b36fdd84f74b8d8189a202b980b67f" + +DEPENDS += "ncurses" +PRIORITY = "optional" + +PR = "r6" + +SRC_URI = "${GNU_MIRROR}/readline/${BPN}-${PV}.tar.gz \ + file://configure-fix.patch \ + file://acinclude.m4" + +S = "${WORKDIR}/${BPN}-${PV}" + +inherit autotools + +LEAD_SONAME = "libreadline.so" + +do_configure_prepend () { + install -m 0644 ${WORKDIR}/acinclude.m4 ${S}/ +} + +do_install_append () { + # Make install doesn't properly install these + oe_libinstall -so -C shlib libhistory ${D}${libdir} + oe_libinstall -so -C shlib libreadline ${D}${libdir} +} + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-core/readline/readline_6.1.bb b/meta/recipes-core/readline/readline_6.1.bb new file mode 100644 index 0000000000..c32755669c --- /dev/null +++ b/meta/recipes-core/readline/readline_6.1.bb @@ -0,0 +1,3 @@ +require readline.inc + +PR = "r0" diff --git a/meta/recipes-core/sysfsutils/sysfsutils_2.1.0.bb b/meta/recipes-core/sysfsutils/sysfsutils_2.1.0.bb new file mode 100644 index 0000000000..5b513211dc --- /dev/null +++ b/meta/recipes-core/sysfsutils/sysfsutils_2.1.0.bb @@ -0,0 +1,21 @@ +DESCRIPTION = "system utilities based on sysfs." +HOMEPAGE = "http://linux-diag.sourceforge.net/Sysfsutils.html" + +LICENSE = "GPLv2 & LGPLv2.1" +LICENSE_${PN} = "GPLv2" +LICENSE_libsysfs = "LGPLv2.1" +LIC_FILES_CHKSUM = "file://COPYING;md5=3d06403ea54c7574a9e581c6478cc393 \ + file://cmd/GPL;md5=d41d4e2e1e108554e0388ea4aecd8d27 \ + file://lib/LGPL;md5=b75d069791103ffe1c0d6435deeff72e" +PR = "r0" + +SRC_URI = "${SOURCEFORGE_MIRROR}/linux-diag/sysfsutils-${PV}.tar.gz" +S = "${WORKDIR}/sysfsutils-${PV}" + +inherit autotools + +PACKAGES_prepend = "libsysfs libsysfs-dbg libsysfs-dev " +FILES_libsysfs = "${libdir}/*.so.*" +FILES_libsysfs-dev = "${libdir}/* ${includedir}" +FILES_libsysfs-dbg = "${libdir}/.debug" +FILES_${PN}-dbg = "${bindir}/.debug" diff --git a/meta/recipes-core/util-linux/files/MCONFIG b/meta/recipes-core/util-linux/files/MCONFIG new file mode 100644 index 0000000000..3fea2c02d7 --- /dev/null +++ b/meta/recipes-core/util-linux/files/MCONFIG @@ -0,0 +1,223 @@ +# MCONFIG -- Configuration stuff for util-linux +# Created: Sat Feb 4 15:50:30 1995 +# Copyright 1995 Rickard E. Faith (faith@cs.unc.edu) + +# For a user-mode install, make (at least) three changes: +# - remove the `-o root' part in INSTALLSUID +# - set USE_TTY_GROUP=no +# - define DESTDIR + +# Select for ARCH one of intel, alpha, sparc, arm, m68k, mips +# Select for CPU i386 if the binaries must be able to run on an intel 386 +# (by default i486 code is generated, see below) +CPU=$(shell uname -m) +ARCH=$(shell echo $(CPU) | sed 's/i.86/intel/;s/arm.*/arm/') + +# If HAVE_PAM is set to "yes", then login, chfn, chsh, and newgrp +# will use PAM for authentication. Additionally, passwd will not be +# installed as it is not PAM aware. +HAVE_PAM=no + +# If HAVE_SHADOW is set to "yes", then login, chfn, chsh, newgrp, passwd, +# and vipw will not be built or installed from the login-utils +# subdirectory. +HAVE_SHADOW=yes + +# If HAVE_PASSWD is set to "yes", then passwd will not be built or +# installed from the login-utils subdirectory (but login, chfn, chsh, +# newgrp, and vipw *will* be installed). +HAVE_PASSWD=no + +# If you use chfn and chsh from this package, REQUIRE_PASSWORD will require +# non-root users to enter the account password before updating /etc/passwd. +REQUIRE_PASSWORD=yes +#REQUIRE_PASSWORD=no + +# If you use chsh from this package, ONLY_LISTED_SHELLS will require that +# the selected shell be listed in /etc/shells -- otherwise only a warning is +# printed. This prevents someone from setting their shell to /bin/false. +ONLY_LISTED_SHELLS=yes +#ONLY_LISTED_SHELLS=no + + +# If HAVE_SYSVINIT is set to "yes", then simpleinit and shutdown will not +# be built or installed from the login-utils subdirectory. (The shutdown +# and halt that come with the SysVinit package should be used with the init +# found in that package.) +HAVE_SYSVINIT=no + +# If HAVE_SYSVINIT_UTILS is set to "yes", then last, mesg, and wall will +# not be built or installed from the login-utils subdirectory. (The +# shutdown and init from the SysVinit package do not depend on the last, +# mesg, and wall from that package.) +HAVE_SYSVINIT_UTILS=no + +# If HAVE_WRITE is set to "yes", then write will not be built or +# installed from the misc-utils subdirectory. +# (There is a network aware write in netwrite from NetKit 0.16 or later.) +HAVE_WRITE=no + +# If HAVE_GETTY is set to "yes", then agetty will not be built or +# installed from the login-utils subdirectory. Note that agetty can +# co-exist with other gettys, so this option should never be used. +HAVE_GETTY=no + +# If USE_TTY_GROUP is set to "yes", then wall and write will be installed +# setgid to the "tty" group, and mesg will only set the group write bit. +# Note that this is only useful if login/xterm/etc. change the group of the +# user's tty to "tty" [The login in util-linux does this correctly, and +# xterm will do it correctly if X is compiled with USE_TTY_GROUP set +# properly.] +USE_TTY_GROUP=no + +# If HAVE_KILL is set to "yes", then kill will not be built or +# installed from the misc-utils subdirectory. +# (There is also a kill in the procps package.) +HAVE_KILL=no + +# If ALLOW_VCS_USE is set to "yes", then login will chown /dev/vcsN +# to the current user, allowing her to make a screendump and do other +# nifty things on the console, but also allowing him to keep an open +# file descriptor after logging out to trick the next user. +ALLOW_VCS_USE=yes + +# If HAVE_RESET is set to "yes", then reset won't be installed. The version +# of reset that comes with the ncurses package is less aggressive. +HAVE_RESET=yes + +# If HAVE_SLN is set to "yes", then sln won't be installed +# (but the man page sln.8 will be installed anyway). +# sln also comes with libc and glibc. +HAVE_SLN=no + +# If HAVE_FDUTILS is set to "yes", then setfdprm won't be installed. +HAVE_FDUTILS=no + +# If SILENT_PG is set to "yes", then pg will not ring the bell +# when an invalid key is pressed +SILENT_PG=no + +# If configure decides that Native Language Support (NLS) is available, +# it sets MAY_ENABLE_NLS in defines.h. If you don't want NLS, set +# DISABLE_NLS to "yes". +DISABLE_NLS=no + +# Different optimizations for different cpus. +# gcc 3.0 likes options -mcpu=i486 instead of -m486 +ifeq "$(ARCH)" "intel" + ifeq "$(HAVE_OLD_GCC)" "yes" + CPUHEAD=-m + else + CPUHEAD=-mcpu=i + endif + ifeq "$(CPU)" "i386" + CPUTAIL=386 + else + CPUTAIL=486 + endif + CPUOPT= $(CPUHEAD)$(CPUTAIL) + OPT= -pipe -O2 $(CPUOPT) -fomit-frame-pointer +else + ifeq "$(ARCH)" "arm" + OPT= -pipe -O2 -fsigned-char -fomit-frame-pointer + else + OPT= -O2 -fomit-frame-pointer + endif +endif + +WARNFLAGS = -Wall -Wmissing-prototypes -Wstrict-prototypes + +LIB=../lib + +ERR_O=$(LIB)/err.o + +# Set HAVE_SLANG to yes if you have slang (and prefer to use that for cfdisk) +# (If neither HAVE_NCURSES nor HAVE_SLANG is defined, cfdisk is not made.) +# HAVE_SLANG=yes +# There is a subdirectory /usr/include/slang containing slcurses.h +# SLANGFLAGS=-I/usr/include/slang +# No such subdirectory - slcurses.h lives in /usr/include +# (no extra definition required). +LIBSLANG=-lslang + +# +# Paths used for compilation (not all are actually used, see CFLAGS below) +# +DEV_DIR= /dev +ETC_DIR= /etc +SBIN_DIR= /sbin +USRSBIN_DIR= /usr/sbin +USRLIB_DIR= /usr/lib +USRBIN_DIR= /usr/bin +USRGAMES_DIR= /usr/games +USRSHAREMISC_DIR=/usr/share/misc +LOCALE_DIR= /usr/share/locale +BIN_DIR= /bin +VAR_PATH= /var +LOG_DIR= /var/log +MAN_DIR= /usr/share/man +INFO_DIR= /usr/share/info + +# +# Paths used for install +# +DEVDIR= $(DESTDIR)$(DEV_DIR) +ETCDIR= $(DESTDIR)$(ETC_DIR) +SBINDIR= $(DESTDIR)$(SBIN_DIR) +USRSBINDIR= $(DESTDIR)$(USRSBIN_DIR) +USRLIBDIR= $(DESTDIR)$(USRLIB_DIR) +USRBINDIR= $(DESTDIR)$(USRBIN_DIR) +USRGAMESDIR= $(DESTDIR)$(USRGAMES_DIR) +USRSHAREMISCDIR=$(DESTDIR)$(USRSHAREMISC_DIR) +LOCALEDIR= $(DESTDIR)$(LOCALE_DIR) +BINDIR= $(DESTDIR)$(BIN_DIR) +VARPATH= $(DESTDIR)$(VAR_PATH) +LOGDIR= $(DESTDIR)$(LOG_DIR) +MANDIR= $(DESTDIR)$(MAN_DIR) +MAN1DIR= $(MANDIR)/man1 +MAN3DIR= $(MANDIR)/man3 +MAN5DIR= $(MANDIR)/man5 +MAN6DIR= $(MANDIR)/man6 +MAN8DIR= $(MANDIR)/man8 +INFODIR= $(DESTDIR)$(INFO_DIR) + +# Directory for shutdown, halt, reboot, etc. +SHUTDOWNDIR= $(SBINDIR) + +# Modes +DIRMODE= 755 +BINMODE= 755 +MANMODE= 644 +DATMODE= 644 +INFOMODE= 644 +SUIDMODE= 4755 + +CHMOD= chmod +INSTALL= install +INSTALLDIR= $(INSTALL) -d -m $(DIRMODE) +INSTALLBIN= $(INSTALL) -m $(BINMODE) +INSTALLMAN= $(INSTALL) -m $(MANMODE) +INSTALLDAT= $(INSTALL) -m $(DATMODE) +INSTALLSUID= $(INSTALL) -m $(SUIDMODE) + +ifeq "$(DISABLE_NLS)" "yes" +NLSFLAGS = -DDISABLE_NLS +endif + +CFLAGS := $(OPT) -I$(LIB) $(WARNFLAGS) \ + $(CURSESFLAGS) $(SLANGFLAGS) $(NLSFLAGS) \ + -D_FILE_OFFSET_BITS=64 \ + -DSBINDIR=\"$(SBIN_DIR)\" \ + -DUSRSBINDIR=\"$(USRSBIN_DIR)\" \ + -DLOGDIR=\"$(LOG_DIR)\" \ + -DVARPATH=\"$(VAR_PATH)\" \ + -DLOCALEDIR=\"$(LOCALE_DIR)\" \ + $(CFLAGS) + + +%.o: %.c + $(CC) -c $(CFLAGS) $< -o $@ + +%: %.cc + $(CXX) $(CFLAGS) $< -o $@ + diff --git a/meta/recipes-core/util-linux/files/debian-bug392236.patch b/meta/recipes-core/util-linux/files/debian-bug392236.patch new file mode 100644 index 0000000000..fcd2046e34 --- /dev/null +++ b/meta/recipes-core/util-linux/files/debian-bug392236.patch @@ -0,0 +1,203 @@ +Index: util-linux-2.12r/fdisk/llseek.c +=================================================================== +--- util-linux-2.12r.orig/fdisk/llseek.c 2003-07-13 23:13:33.000000000 +0200 ++++ util-linux-2.12r/fdisk/llseek.c 2007-04-04 19:01:14.000000000 +0200 +@@ -14,30 +14,23 @@ + + #ifdef __linux__ + +-#ifdef HAVE_LLSEEK +-#include +- +-#else /* HAVE_LLSEEK */ ++#include ++#ifndef HAVE_LLSEEK + + #if defined(__alpha__) || defined(__ia64__) || defined(__s390x__) + + #define my_llseek lseek + + #else +-#include /* for __NR__llseek */ +- +-static int _llseek (unsigned int, unsigned long, +- unsigned long, long long *, unsigned int); + +-#ifdef __NR__llseek ++#ifdef SYS__llseek + +-static _syscall5(int,_llseek,unsigned int,fd,unsigned long,offset_high, +- unsigned long, offset_low,long long *,result, +- unsigned int, origin) ++#define _llseek(fd, offset_high, offset_low, result, origin) \ ++ syscall(SYS__llseek, fd, offset_high, offset_low, result, origin) + + #else + +-/* no __NR__llseek on compilation machine - might give it explicitly */ ++/* no SYS__llseek on compilation machine - might give it explicitly */ + static int _llseek (unsigned int fd, unsigned long oh, + unsigned long ol, long long *result, + unsigned int origin) { +Index: util-linux-2.12r/fdisk/sfdisk.c +=================================================================== +--- util-linux-2.12r.orig/fdisk/sfdisk.c 2005-01-04 23:31:57.000000000 +0100 ++++ util-linux-2.12r/fdisk/sfdisk.c 2007-04-04 19:01:14.000000000 +0200 +@@ -48,7 +48,7 @@ + #include + #include + #include +-#include /* _syscall */ ++#include + #include "nls.h" + #include "common.h" + +@@ -177,9 +177,8 @@ + #endif + + #ifndef use_lseek +-static __attribute__used +-_syscall5(int, _llseek, unsigned int, fd, ulong, hi, ulong, lo, +- loff_t *, res, unsigned int, wh); ++#define _llseek(fd, hi, lo, res, wh) \ ++ syscall(SYS__llseek, fd, hi, lo, res, wh) + #endif + + static int +Index: util-linux-2.12r/lib/my_reboot.c +=================================================================== +--- util-linux-2.12r.orig/lib/my_reboot.c 1999-07-09 04:56:36.000000000 +0200 ++++ util-linux-2.12r/lib/my_reboot.c 2007-04-04 19:01:14.000000000 +0200 +@@ -23,10 +23,11 @@ + #else /* no USE_LIBC */ + + /* direct syscall version */ +-#include ++#include + +-#ifdef _syscall3 +-_syscall3(int, reboot, int, magic, int, magic_too, int, cmd); ++#ifdef SYS_reboot ++#define reboot(magic, magic2, cmd) \ ++ syscall(SYS_reboot, magic, magic2, cmd) + #else + /* Let us hope we have a 3-argument reboot here */ + extern int reboot(int, int, int); +Index: util-linux-2.12r/misc-utils/setterm.c +=================================================================== +--- util-linux-2.12r.orig/misc-utils/setterm.c 2003-10-17 18:17:51.000000000 +0200 ++++ util-linux-2.12r/misc-utils/setterm.c 2007-04-04 19:01:14.000000000 +0200 +@@ -119,14 +119,13 @@ + + #if __GNU_LIBRARY__ < 5 + #ifndef __alpha__ +-# include +-#define __NR_klogctl __NR_syslog +-_syscall3(int, klogctl, int, type, char*, buf, int, len); ++# include ++#define klogctl(type, buf, len) \ ++ syscall(SYS_syslog, type, buf, len) + #else /* __alpha__ */ + #define klogctl syslog + #endif + #endif +-extern int klogctl(int type, char *buf, int len); + + /* Constants. */ + +Index: util-linux-2.12r/mount/swapon.c +=================================================================== +--- util-linux-2.12r.orig/mount/swapon.c 2004-12-22 10:50:19.000000000 +0100 ++++ util-linux-2.12r/mount/swapon.c 2007-04-04 19:01:14.000000000 +0200 +@@ -82,11 +82,11 @@ + #else + /* We want a swapon with two args, but have an old libc. + Build the kernel call by hand. */ +-#include +-static +-_syscall2(int, swapon, const char *, path, int, flags); +-static +-_syscall1(int, swapoff, const char *, path); ++#include ++#define swapon(path, flags) \ ++ syscall(SYS_swapon, path, flags) ++#define swapoff(path) \ ++ syscall(SYS_swapoff, path) + #endif + #else + /* just do as libc says */ +Index: util-linux-2.12r/mount/umount.c +=================================================================== +--- util-linux-2.12r.orig/mount/umount.c 2007-04-04 19:01:14.000000000 +0200 ++++ util-linux-2.12r/mount/umount.c 2007-04-04 19:02:22.000000000 +0200 +@@ -37,14 +37,13 @@ + #else /* MNT_FORCE */ + + /* Does the present kernel source know about umount2? */ +-#include +-#ifdef __NR_umount2 ++#include ++#ifdef SYS_umount2 + +-int umount2(const char *path, int flags); ++#define umount2(path, flags) \ ++ syscall(SYS_umount2, path, flags) + +-_syscall2(int, umount2, const char *, path, int, flags); +- +-#else /* __NR_umount2 */ ++#else /* SYS_umount2 */ + + static int + umount2(const char *path, int flags) { +@@ -52,7 +51,7 @@ + errno = ENOSYS; + return -1; + } +-#endif /* __NR_umount2 */ ++#endif /* SYS_umount2 */ + + #if !defined(MNT_FORCE) + /* dare not try to include -- lots of errors */ +Index: util-linux-2.12r/partx/partx.c +=================================================================== +--- util-linux-2.12r.orig/partx/partx.c 2004-08-23 22:13:27.000000000 +0200 ++++ util-linux-2.12r/partx/partx.c 2007-04-04 19:01:14.000000000 +0200 +@@ -338,10 +338,9 @@ + #endif + + #ifdef NEED__llseek +-#include /* _syscall */ +-static +-_syscall5(int, _llseek, uint, fd, ulong, hi, ulong, lo, +- long long *, res, uint, wh); ++#include ++#define _llseek(fd, hi, lo, res, wh) \ ++ syscall(SYS__llseek, fd, hi, lo, res, wh) + #endif + + static int +Index: util-linux-2.12r/sys-utils/dmesg.c +=================================================================== +--- util-linux-2.12r.orig/sys-utils/dmesg.c 2004-05-04 18:38:12.000000000 +0200 ++++ util-linux-2.12r/sys-utils/dmesg.c 2007-04-04 19:01:14.000000000 +0200 +@@ -29,7 +29,7 @@ + * Only function 3 is allowed to non-root processes. + */ + +-#include ++#include + #include + #include + #include +@@ -38,8 +38,8 @@ + #if __GNU_LIBRARY__ < 5 + + #ifndef __alpha__ +-# define __NR_klogctl __NR_syslog +- static inline _syscall3(int, klogctl, int, type, char *, b, int, len); ++# define klogctl(type, b, len) \ ++ syscall(SYS_syslog, type, b, len) + #else /* __alpha__ */ + #define klogctl syslog + #endif diff --git a/meta/recipes-core/util-linux/files/defines.h b/meta/recipes-core/util-linux/files/defines.h new file mode 100644 index 0000000000..6ce6b86df5 --- /dev/null +++ b/meta/recipes-core/util-linux/files/defines.h @@ -0,0 +1,10 @@ +#define UTIL_LINUX_VERSION "2.12" +#define util_linux_version "util-linux-2.12" + +#define HAVE_blkpg_h +#define HAVE_kd_h +#define HAVE_locale_h +#define HAVE_langinfo_h +#define HAVE_sys_user_h +#define HAVE_asm_types_h +//#define NEED_tqueue_h diff --git a/meta/recipes-core/util-linux/files/fdiskbsdlabel_thumb.diff b/meta/recipes-core/util-linux/files/fdiskbsdlabel_thumb.diff new file mode 100644 index 0000000000..e6f82b5b46 --- /dev/null +++ b/meta/recipes-core/util-linux/files/fdiskbsdlabel_thumb.diff @@ -0,0 +1,12 @@ +--- util-linux-2.12r/fdisk/fdiskbsdlabel.h.orig 2006-01-21 23:53:51.000000000 +0100 ++++ util-linux-2.12r/fdisk/fdiskbsdlabel.h 2006-01-21 23:54:35.000000000 +0100 +@@ -52,6 +52,9 @@ + #elif defined (__s390__) || defined (__s390x__) + #define BSD_LABELSECTOR 1 + #define BSD_LABELOFFSET 0 ++#elif defined (__thumb__) ++#define BSD_LABELSECTOR 1 ++#define BSD_LABELOFFSET 0 + #else + #error unknown architecture + #endif diff --git a/meta/recipes-core/util-linux/files/fix-make-c.patch b/meta/recipes-core/util-linux/files/fix-make-c.patch new file mode 100644 index 0000000000..bf1082e85c --- /dev/null +++ b/meta/recipes-core/util-linux/files/fix-make-c.patch @@ -0,0 +1,41 @@ +From: Karel Zak +Date: Mon, 11 May 2009 09:49:00 +0000 (+0200) +Subject: build-sys: fix "make -C" bug +X-Git-Url: http://git.kernel.org/?p=utils%2Futil-linux-ng%2Futil-linux-ng.git;a=commitdiff_plain;h=2ef7d41e6bbb7c842c06e911ffc562335a467b5d + +build-sys: fix "make -C" bug + +Running: + +./configure --with-fsprobe=builtin +make -C mount mount + +causes the following error: + +gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I.. -include ../config.h +-I../include -DLOCALEDIR=\"/home/matthew/util-linux-ng/share/locale\" +-fsigned-char -I../libs/blkid/src -g -O2 -MT mount-setproctitle.o +-MD -MP -MF .deps/mount-setproctitle.Tpo -c -o mount-setproctitle.o +`test -f '../lib/setproctitle.c' || echo './'`../lib/setproctitle.c mv +-f .deps/mount-setproctitle.Tpo .deps/mount-setproctitle.Po +make -C +make: option requires an argument -- 'C' +Usage: make [options] [target] ... +... + +Reported-by: Matthew Burgess +Signed-off-by: Karel Zak +--- + +diff --git a/config/include-Makefile.am b/config/include-Makefile.am +index b42a0c3..d5da619 100644 +--- a/config/include-Makefile.am ++++ b/config/include-Makefile.am +@@ -17,6 +17,7 @@ dist_noinst_DATA = $(dist_man_MANS) + # Paths to in-tree libraries (use ul_ prefix to avoid possible collisions) + # + ul_libblkid_srcdir = $(top_srcdir)/libs/blkid/src ++ul_libblkid_builddir = $(top_builddir)/libs/blkid/src + ul_libblkid_la = $(top_builddir)/libs/blkid/src/libblkid.la + + $(ul_libblkid_la): diff --git a/meta/recipes-core/util-linux/files/gcc34.patch b/meta/recipes-core/util-linux/files/gcc34.patch new file mode 100644 index 0000000000..8c4a20cdca --- /dev/null +++ b/meta/recipes-core/util-linux/files/gcc34.patch @@ -0,0 +1,23 @@ + +# +# Patch managed by http://www.holgerschurig.de/patcher.html +# + +--- util-linux-2.12o/disk-utils/fsck.cramfs.c~gcc34 ++++ util-linux-2.12o/disk-utils/fsck.cramfs.c +@@ -77,15 +77,7 @@ + #define PAD_SIZE 512 + + #include +-#ifdef PAGE_SIZE +-#define PAGE_CACHE_SIZE ((int) PAGE_SIZE) +-#elif defined __ia64__ +-#define PAGE_CACHE_SIZE (16384) +-#elif defined __alpha__ +-#define PAGE_CACHE_SIZE (8192) +-#else + #define PAGE_CACHE_SIZE (4096) +-#endif + + /* Guarantee access to at least 8kB at a time */ + #define ROMBUFFER_BITS 13 diff --git a/meta/recipes-core/util-linux/files/glibc-fix.patch b/meta/recipes-core/util-linux/files/glibc-fix.patch new file mode 100644 index 0000000000..6d0c2fcefa --- /dev/null +++ b/meta/recipes-core/util-linux/files/glibc-fix.patch @@ -0,0 +1,22 @@ +--- /tmp/cmos.c 2006-11-21 11:38:55.000000000 +0100 ++++ util-linux-2.12r/hwclock/cmos.c 2006-11-21 11:41:45.458554000 +0100 +@@ -46,15 +46,16 @@ + + #include /* for geteuid() */ + #include /* for O_RDWR */ ++#include + #include + #include "../defines.h" /* for HAVE_sys_io_h */ + #include "nls.h" + + #if defined(__i386__) +-#ifdef HAVE_sys_io_h +-#include ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 0) ++#include + #else +-#include /* for inb, outb */ ++#include /* for inb, outb */ + #endif + #elif defined(__alpha__) + /* fails to compile, probably because of u8 etc */ diff --git a/meta/recipes-core/util-linux/files/make_include b/meta/recipes-core/util-linux/files/make_include new file mode 100644 index 0000000000..e6abcd91f7 --- /dev/null +++ b/meta/recipes-core/util-linux/files/make_include @@ -0,0 +1,17 @@ +VERSION=2.12 +CC=gcc +CFLAGS= +LDFLAGS= +HAVE_OLD_GCC=yes +HAVE_RAW_H=yes +HAVE_NCURSES=yes +CURSESFLAGS=-DNCH=1 +LIBCURSES=-lncurses +HAVE_TERMCAP=no +NEED_LIBCRYPT=yes +FOREIGN = --foreign-user +HAVE_XGETTEXT=yes +HAVE_OPENPTY=yes +HAVE_PIVOT_ROOT=yes +HAVE_GOOD_RPC=yes +HAVE_ZLIB=yes diff --git a/meta/recipes-core/util-linux/files/optional-uuid.patch b/meta/recipes-core/util-linux/files/optional-uuid.patch new file mode 100644 index 0000000000..2d0ea43cd2 --- /dev/null +++ b/meta/recipes-core/util-linux/files/optional-uuid.patch @@ -0,0 +1,55 @@ +From: Karel Zak +Date: Tue, 12 May 2009 19:22:19 +0000 (+0200) +Subject: blkid: make libuuid optional +X-Git-Url: http://git.kernel.org/?p=utils%2Futil-linux-ng%2Futil-linux-ng.git;a=commitdiff_plain;h=cdd17c7a73cab10a34bf80616225b8215ac4e2ed + +blkid: make libuuid optional + +read.c:28:23: error: uuid/uuid.h: No such file or directory +make[3]: *** [read.lo] Error 1 +make[3]: *** Waiting for unfinished jobs.... + +Reported-by: Olaf +Signed-off-by: Karel Zak +--- + +diff --git a/libs/blkid/src/config.c b/libs/blkid/src/config.c +index 2e59218..9091736 100644 +--- a/libs/blkid/src/config.c ++++ b/libs/blkid/src/config.c +@@ -24,9 +24,6 @@ + #include + #endif + #include +-#ifdef HAVE_LIBUUID +-#include +-#endif + #include + + #include "blkdev.h" +diff --git a/libs/blkid/src/evaluate.c b/libs/blkid/src/evaluate.c +index a9c9fba..f0ae126 100644 +--- a/libs/blkid/src/evaluate.c ++++ b/libs/blkid/src/evaluate.c +@@ -27,9 +27,6 @@ + #include + #endif + #include +-#ifdef HAVE_LIBUUID +-#include +-#endif + #include + + #include "pathnames.h" +diff --git a/libs/blkid/src/read.c b/libs/blkid/src/read.c +index 4163874..b5e9cd0 100644 +--- a/libs/blkid/src/read.c ++++ b/libs/blkid/src/read.c +@@ -25,7 +25,6 @@ + #endif + + #include "blkidP.h" +-#include "uuid/uuid.h" + + #ifdef HAVE_STRTOULL + #define STRTOULL strtoull /* defined in stdlib.h if you try hard enough */ diff --git a/meta/recipes-core/util-linux/files/swapargs.h b/meta/recipes-core/util-linux/files/swapargs.h new file mode 100644 index 0000000000..e960eef05f --- /dev/null +++ b/meta/recipes-core/util-linux/files/swapargs.h @@ -0,0 +1,3 @@ +#define SWAPON_HAS_TWO_ARGS +#include +#include diff --git a/meta/recipes-core/util-linux/files/umount.diff b/meta/recipes-core/util-linux/files/umount.diff new file mode 100644 index 0000000000..78330789ef --- /dev/null +++ b/meta/recipes-core/util-linux/files/umount.diff @@ -0,0 +1,19 @@ +*** util-linux-2.12r/mount/umount.c.orig 2005-09-10 20:07:38.000000000 +0200 +--- util-linux-2.12r/mount/umount.c 2006-06-07 21:14:04.000000000 +0200 +*************** +*** 40,46 **** + #include + #ifdef __NR_umount2 + +! static int umount2(const char *path, int flags); + + _syscall2(int, umount2, const char *, path, int, flags); + +--- 40,46 ---- + #include + #ifdef __NR_umount2 + +! int umount2(const char *path, int flags); + + _syscall2(int, umount2, const char *, path, int, flags); + diff --git a/meta/recipes-core/util-linux/files/uuid.patch b/meta/recipes-core/util-linux/files/uuid.patch new file mode 100644 index 0000000000..3208e0a865 --- /dev/null +++ b/meta/recipes-core/util-linux/files/uuid.patch @@ -0,0 +1,22 @@ +Index: util-linux-ng-2.15/libs/blkid/src/Makefile.am +=================================================================== +--- util-linux-ng-2.15.orig/libs/blkid/src/Makefile.am 2009-05-19 17:01:15.000000000 +0100 ++++ util-linux-ng-2.15/libs/blkid/src/Makefile.am 2009-05-19 17:08:11.000000000 +0100 +@@ -7,7 +7,7 @@ + common_ldadd = + + if HAVE_UUID +-common_ldadd += -luuid #TODO $(UUID_LIBS) ++common_ldadd += -luuid + endif + + # includes +@@ -26,7 +26,7 @@ + $(top_srcdir)/lib/md5.c + + libblkid_la_LIBADD = probers/libblkid_probers.la $(common_ldadd) +-libblkid_la_DEPENDENCIES = $(libblkid_la_LIBADD) blkid.sym ++libblkid_la_DEPENDENCIES = probers/libblkid_probers.la blkid.sym + + # TODO: for unknown reason "make distcheck" requires + # full path to the version script diff --git a/meta/recipes-core/util-linux/util-linux-2.17.2/tls.patch b/meta/recipes-core/util-linux/util-linux-2.17.2/tls.patch new file mode 100644 index 0000000000..bdb29cae1f --- /dev/null +++ b/meta/recipes-core/util-linux/util-linux-2.17.2/tls.patch @@ -0,0 +1,70 @@ +Index: util-linux-ng-2.16/m4/tls.m4 +=================================================================== +--- util-linux-ng-2.16.orig/m4/tls.m4 2009-07-04 01:20:03.000000000 +0200 ++++ util-linux-ng-2.16/m4/tls.m4 2009-07-30 01:57:30.151697033 +0200 +@@ -18,31 +18,26 @@ + # version as well. + # + AC_DEFUN([AX_TLS], [ +- AC_MSG_CHECKING(for thread local storage (TLS) class) +- AC_CACHE_VAL(ac_cv_tls, [ +- ax_tls_keywords="__thread __declspec(thread) none" +- for ax_tls_keyword in $ax_tls_keywords; do +- case $ax_tls_keyword in +- none) ac_cv_tls=none ; break ;; +- *) +- AC_TRY_COMPILE( +- [#include +- static void +- foo(void) { +- static ] $ax_tls_keyword [ int bar; +- exit(1); +- }], +- [], +- [ac_cv_tls=$ax_tls_keyword ; break], +- ac_cv_tls=none +- ) +- esac +- done +-]) ++ AC_CACHE_CHECK([for thread local storage (TLS) class], ++ ac_cv_tls, ++ [AC_LINK_IFELSE([__thread int a; int b; int main() { return a = b; }], ++ [chktls_save_LDFLAGS="$LDFLAGS" ++ LDFLAGS="-shared -Wl,--no-undefined $LDFLAGS" ++ chktls_save_CFLAGS="$CFLAGS" ++ CFLAGS="-fPIC $CFLAGS" ++ dnl If -shared works, test if TLS works in a shared library. ++ AC_LINK_IFELSE([int f() { return 0; }], ++ AC_LINK_IFELSE([__thread int a; int b; int f() { return a = b; }], ++ [ac_cv_tls=yes], ++ [ac_cv_tls=no]), ++ [ac_cv_tls=yes]) ++ CFLAGS="$chktls_save_CFLAGS" ++ LDFLAGS="$chktls_save_LDFLAGS"], [ac_cv_tls=no]) ++ ]) + +- if test "$ac_cv_tls" != "none"; then +- dnl AC_DEFINE([TLS], [], [If the compiler supports a TLS storage class define it to that here]) +- AC_DEFINE_UNQUOTED([TLS], $ac_cv_tls, [If the compiler supports a TLS storage class define it to that here]) +- fi +- AC_MSG_RESULT($ac_cv_tls) ++ AS_IF([test "x$ac_cv_tls" = "xyes"], ++ [AC_DEFINE([TLS], 1, ++ [Define this if the compiler supports __thread for Thread-Local Storage]) ++ $1], ++ [$2]) + ]) +Index: util-linux-ng-2.16/shlibs/uuid/src/gen_uuid.c +=================================================================== +--- util-linux-ng-2.16.orig/shlibs/uuid/src/gen_uuid.c 2009-07-30 02:31:48.518159459 +0200 ++++ util-linux-ng-2.16/shlibs/uuid/src/gen_uuid.c 2009-07-30 02:32:04.867871183 +0200 +@@ -99,7 +99,7 @@ + #endif + + #ifdef TLS +-#define THREAD_LOCAL static TLS ++#define THREAD_LOCAL static __thread + #else + #define THREAD_LOCAL static + #endif diff --git a/meta/recipes-core/util-linux/util-linux-2.17.2/uclibc-compile.patch b/meta/recipes-core/util-linux/util-linux-2.17.2/uclibc-compile.patch new file mode 100644 index 0000000000..b2e8a8b95a --- /dev/null +++ b/meta/recipes-core/util-linux/util-linux-2.17.2/uclibc-compile.patch @@ -0,0 +1,13 @@ +Index: util-linux-ng-2.16/misc-utils/cal.c +=================================================================== +--- util-linux-ng-2.16.orig/misc-utils/cal.c 2009-07-03 16:20:01.000000000 -0700 ++++ util-linux-ng-2.16/misc-utils/cal.c 2009-07-18 23:21:37.000000000 -0700 +@@ -407,7 +407,7 @@ + strcpy(day_headings,""); + strcpy(j_day_headings,""); + +-#ifdef HAVE_LANGINFO_H ++#ifdef HAVE_LANGINFO_H && !defined(__UCLIBC__) + # define weekday(wd) nl_langinfo(ABDAY_1+wd) + #else + # define weekday(wd) _time_info->abbrev_wkday[wd] diff --git a/meta/recipes-core/util-linux/util-linux-2.17.2/util-linux-ng-replace-siginterrupt.patch b/meta/recipes-core/util-linux/util-linux-2.17.2/util-linux-ng-replace-siginterrupt.patch new file mode 100644 index 0000000000..4b5eb73760 --- /dev/null +++ b/meta/recipes-core/util-linux/util-linux-2.17.2/util-linux-ng-replace-siginterrupt.patch @@ -0,0 +1,23 @@ +Index: util-linux-ng-2.14/login-utils/login.c +=================================================================== +--- util-linux-ng-2.14.orig/login-utils/login.c 2008-05-28 16:01:02.000000000 -0700 ++++ util-linux-ng-2.14/login-utils/login.c 2009-03-04 18:31:42.000000000 -0800 +@@ -358,6 +358,7 @@ + char *childArgv[10]; + char *buff; + int childArgc = 0; ++ struct sigaction act; + #ifdef HAVE_SECURITY_PAM_MISC_H + int retcode; + pam_handle_t *pamh = NULL; +@@ -373,7 +374,9 @@ + pid = getpid(); + + signal(SIGALRM, timedout); +- siginterrupt(SIGALRM,1); /* we have to interrupt syscalls like ioclt() */ ++ (void) sigaction(SIGALRM, NULL, &act); ++ act.sa_flags &= ~SA_RESTART; ++ sigaction(SIGALRM, &act, NULL); + alarm((unsigned int)timeout); + signal(SIGQUIT, SIG_IGN); + signal(SIGINT, SIG_IGN); diff --git a/meta/recipes-core/util-linux/util-linux.inc b/meta/recipes-core/util-linux/util-linux.inc new file mode 100644 index 0000000000..571b53c99c --- /dev/null +++ b/meta/recipes-core/util-linux/util-linux.inc @@ -0,0 +1,237 @@ +DESCRIPTION = "Util-linux is a suite of essential utilities for any Linux system." +SECTION = "base" + +# note that `lscpu' is under GPLv3+ +LICENSE = "GPLv2+ & LGPLv2.1+ & BSD" +LICENSE_util-linux-lscpu = "GPLv3+" + +LIC_FILES_CHKSUM = "file://README.licensing;md5=1530e36fe1304d4535513de90a290df9 \ + file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \ + file://licenses/COPYING.GPL;md5=8ca43cbc842c2336e835926c2166c28b \ + file://licenses/COPYING.UCB;md5=263860f8968d8bafa5392cab74285262 \ + file://getopt/COPYING;md5=8ca43cbc842c2336e835926c2166c28b" + +DEPENDS = "udev zlib ncurses virtual/libintl gettext" +DEPENDS_virtclass-native = "zlib-native ncurses-native lzo-native gettext-native" + +inherit autotools + +SRC_URI = "${KERNELORG_MIRROR}/pub/linux/utils/util-linux-ng/v${MAJOR_VERSION}/util-linux-ng-${PV}.tar.bz2 \ + file://MCONFIG \ + file://swapargs.h \ + file://defines.h \ + file://make_include \ + " + +PACKAGES_prepend = "util-linux-fdisk util-linux-cfdisk util-linux-sfdisk util-linux-swaponoff util-linux-losetup util-linux-umount util-linux-mount util-linux-readprofile " + +PACKAGES_virtclass-native = "" + +S = "${WORKDIR}/util-linux-ng-${PV}" + +EXTRA_OECONF = "--disable-use-tty-group --disable-makeinstall-chown --enable-elvtune --enable-init --enable-kill --enable-last \ + --enable-mesg --enable-partx --enable-raw --enable-rdev --enable-reset \ + --disable-login-utils --enable-write --enable-arch --enable-mount --with-fsprobe=builtin --enable-libuuid --enable-libblkid --enable-fsck" + +FILES_${PN}-doc += "/usr/share/getopt/getopt-*.*" + +FILES_util-linux-fdisk = "/sbin/fdisk.${PN}" +FILES_util-linux-cfdisk = "/sbin/cfdisk" +FILES_util-linux-sfdisk = "/sbin/sfdisk" +FILES_util-linux-swaponoff = "/sbin/swapon.${PN} /sbin/swapoff.${PN}" +FILES_util-linux-losetup = "/sbin/losetup.${PN}" +FILES_util-linux-mount = "/bin/mount.${PN}" +FILES_util-linux-umount = "/bin/umount.${PN}" +FILES_util-linux-readprofile = "/usr/sbin/readprofile" + +RRECOMMENDS_${PN} = "util-linux-fdisk util-linux-cfdisk util-linux-sfdisk util-linux-mount util-linux-readprofile " +RDEPENDS_${PN} = "util-linux-umount util-linux-swaponoff util-linux-losetup" + +RRECOMMENDS_${PN}_virtclass-native = "" +RDEPENDS_${PN}_virtclass-native = "" + +do_compile () { + set -e + install ${WORKDIR}/MCONFIG ${S}/MCONFIG + install ${WORKDIR}/make_include ${S}/make_include + install ${WORKDIR}/swapargs.h ${S}/mount/swapargs.h + install ${WORKDIR}/defines.h ${S}/defines.h + oe_runmake ARCH=${TARGET_ARCH} CPU= CPUOPT= \ + 'OPT=${CFLAGS}' 'CC=${CC}' 'LD=${LD}' \ + 'LDFLAGS=${LDFLAGS}' +} + +checklink() { + local targ link value + targ="$1" + link="$2" + ext="$3" + if test -h "$link" + then + value="$(readlink "$link")" + if test "$value" = "$targ" + then + rm "$link" + ln -s "$targ"."${PN}" "$link$ext" + return 0 + else + echo "$link: '$value' found '$targ' expected" >&2 + return 1 + fi + else + echo "$link: not a symbolic link" >&2 + return 1 + fi +} + +do_install () { + # with ccache the timestamps on compiled files may + # end up earlier than on their inputs, this allows + # for the resultant compilation in the install step. + oe_runmake ARCH=${TARGET_ARCH} CPU= CPUOPT= \ + 'OPT=${CFLAGS}' 'CC=${CC}' 'LD=${LD}' \ + 'LDFLAGS=${LDFLAGS}' 'DESTDIR=${D}' install + + mkdir -p ${D}${base_bindir} + + sbinprogs="agetty blockdev ctrlaltdel cfdisk vipw vigr" + sbinprogs_a="pivot_root hwclock mkswap shutdown mkfs.minix fsck.minix losetup swapon fdisk readprofile fsck blkid sln" + usrbinprogs_a="chfn chsh hexdump last logger mesg newgrp renice wall setsid chrt" + binprogs_a="dmesg kill more umount mount login reset" + + if [ "${base_sbindir}" != "${sbindir}" ]; then + mkdir -p ${D}${base_sbindir} + for p in $sbinprogs $sbinprogs_a; do + if [ -f "${D}${sbindir}/$p" ]; then + mv "${D}${sbindir}/$p" "${D}${base_sbindir}/$p" + fi + done + fi + + if [ "${base_bindir}" != "${bindir}" ]; then + mkdir -p ${D}${base_bindir} + for p in $binprogs_a; do + if [ -f "${D}${bindir}/$p" ]; then + mv "${D}${bindir}/$p" "${D}${base_bindir}/$p" + fi + done + fi + + for p in $usrbinprogs_a; do + if [ -f "${D}${bindir}/$p" ]; then + mv "${D}${bindir}/$p" "${D}${bindir}/$p.${PN}" + fi + done + + for p in $binprogs_a; do + if [ -f "${D}${base_bindir}/$p" ]; then + mv "${D}${base_bindir}/$p" "${D}${base_bindir}/$p.${PN}" + fi + done + + for p in $sbinprogs_a; do + if [ -f "${D}${base_sbindir}/$p" ]; then + mv "${D}${base_sbindir}/$p" "${D}${base_sbindir}/$p.${PN}" + fi + done + + install -d ${D}${sysconfdir}/default/ + echo 'MOUNTALL="-t nonfs,nosmbfs,noncpfs"' > ${D}${sysconfdir}/default/mountall + + ln -sf ${sbindir}/swapon ${D}${sbindir}/swapoff.${PN} + ln -sf ${sbindir}/shutdown ${D}${sbindir}/reboot.${PN} + ln -sf ${sbindir}/shutdown ${D}${sbindir}/halt.${PN} + ln -sf ${sbindir}/shutdown ${D}${sbindir}/fastboot + ln -sf ${sbindir}/shutdown ${D}${sbindir}/fasthalt +} + +pkg_postinst_${PN} () { + update-alternatives --install ${base_bindir}/dmesg dmesg dmesg.${PN} 100 + update-alternatives --install ${base_bindir}/kill kill kill.${PN} 100 + update-alternatives --install ${base_bindir}/more more more.${PN} 100 + update-alternatives --install ${base_sbindir}/mkswap mkswap mkswap.${PN} 100 + test -x ${base_sbindir}/pivot_root.${PN} && \ + update-alternatives --install ${base_sbindir}/pivot_root pivot_root pivot_root.${PN} 100 +# update-alternatives --install ${base_sbindir}/sln sln sln.${PN} 100 + update-alternatives --install ${base_sbindir}/mkfs.minix mkfs.minix mkfs.minix.${PN} 100 + update-alternatives --install ${base_sbindir}/fsck.minix fsck.minix fsck.minix.${PN} 100 + update-alternatives --install ${bindir}/hexdump hexdump hexdump.${PN} 100 + update-alternatives --install ${bindir}/last last last.${PN} 100 + update-alternatives --install ${bindir}/logger logger logger.${PN} 100 + update-alternatives --install ${bindir}/mesg mesg mesg.${PN} 100 + update-alternatives --install ${bindir}/renice renice renice.${PN} 100 + update-alternatives --install ${bindir}/wall wall wall.${PN} 100 + + # There seems to be problem, atleast on nslu2, with these, untill they are + # fixed the busybox ones have higher priority + update-alternatives --install ${base_sbindir}/hwclock hwclock hwclock.${PN} 10 + update-alternatives --install ${base_sbindir}/shutdown shutdown shutdown.${PN} 10 + update-alternatives --install ${base_sbindir}/reboot reboot reboot.${PN} 10 + update-alternatives --install ${base_sbindir}/halt halt halt.${PN} 10 +} + +pkg_prerm_${PN} () { + test -x ${base_sbindir}/pivot_root.${PN} && \ + update-alternatives --remove pivot_root pivot_root.${PN} + update-alternatives --remove dmesg dmesg.${PN} + update-alternatives --remove kill kill.${PN} + update-alternatives --remove more more.${PN} + update-alternatives --remove halt halt.${PN} + update-alternatives --remove hwclock hwclock.${PN} + update-alternatives --remove mkswap mkswap.${PN} + update-alternatives --remove reboot reboot.${PN} + update-alternatives --remove shutdown shutdown.${PN} +# update-alternatives --remove sln sln.${PN} + update-alternatives --remove mkfs.minix mkfs.minix.${PN} + update-alternatives --remove fsck.minix fsck.minix.${PN} + update-alternatives --remove hexdump hexdump.${PN} + update-alternatives --remove last last.${PN} + update-alternatives --remove logger logger.${PN} + update-alternatives --remove mesg mesg.${PN} + update-alternatives --remove renice renice.${PN} + update-alternatives --remove wall wall.${PN} +} + +pkg_postinst_util-linux-fdisk () { + update-alternatives --install ${base_sbindir}/fdisk fdisk fdisk.${PN} 100 +} + +pkg_prerm_util-linux-fdisk () { + update-alternatives --remove fdisk fdisk.${PN} +} + +pkg_postinst_util-linux-mount () { + update-alternatives --install ${base_bindir}/mount mount mount.${PN} 100 +} + +pkg_prerm_util-linux-mount () { + update-alternatives --remove mount mount.${PN} +} + +pkg_postinst_util-linux-umount () { + update-alternatives --install ${base_bindir}/umount umount umount.${PN} 100 +} + +pkg_prerm_util-linux-umount () { + update-alternatives --remove umount umount.${PN} +} + +pkg_postinst_util-linux-losetup () { + update-alternatives --install ${base_sbindir}/losetup losetup losetup.${PN} 100 +} + +pkg_prerm_util-linux-losetup () { + update-alternatives --remove losetup losetup.${PN} +} + +pkg_postinst_util-linux-swaponoff () { + update-alternatives --install ${base_sbindir}/swapoff swapoff swapoff.${PN} 100 + update-alternatives --install ${base_sbindir}/swapon swapon swapon.${PN} 100 +} + +pkg_prerm_util-linux-swaponoff () { + update-alternatives --remove swapoff swapoff.${PN} + update-alternatives --remove swapon swapon.${PN} +} + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-core/util-linux/util-linux_2.17.2.bb b/meta/recipes-core/util-linux/util-linux_2.17.2.bb new file mode 100644 index 0000000000..9efe64a6c6 --- /dev/null +++ b/meta/recipes-core/util-linux/util-linux_2.17.2.bb @@ -0,0 +1,11 @@ +MAJOR_VERSION = "2.17" +require util-linux.inc +PR="r0" + +SRC_URI += "file://uclibc-compile.patch \ + file://util-linux-ng-replace-siginterrupt.patch" + +# fallocate is glibc 2.10, fallocate64 is glibc 2.11 +# we need to disable it for older versions +EXTRA_OECONF += "ac_cv_func_fallocate=no" +EXTRA_OECONF_virtclass-native += "--disable-fallocate --disable-use-tty-group" diff --git a/meta/recipes-devtools/exmap-console/exmap-console.inc b/meta/recipes-devtools/exmap-console/exmap-console.inc new file mode 100644 index 0000000000..efbd79fce1 --- /dev/null +++ b/meta/recipes-devtools/exmap-console/exmap-console.inc @@ -0,0 +1,59 @@ +DESCRIPTION = "Console based version of exmap, a memory usage analysis tool" +HOMEPAGE = "http://projects.o-hand.com/exmap-console" +SECTION = "devel" +LICENSE = "GPL" +DEPENDS = "virtual/kernel readline glib-2.0" + +SRC_URI = "http://projects.o-hand.com/sources/exmap-console/exmap-console-${PV}.tgz" + +TEMPPACKAGE_ARCH := "${PACKAGE_ARCH}" + +inherit module-base +inherit autotools + +PACKAGE_ARCH = "${TEMPPACKAGE_ARCH}" + +PACKAGES =+ "exmap-server kernel-module-exmap" + +FILES_exmap-console = "${bindir}/exmap ${bindir}/exmapd" +RDEPENDS_exmap-console += "kernel-module-exmap" + +FILES_exmap-server = "${bindir}/exmapserver" +RDEPENDS_exmap-server += "kernel-module-exmap" + +FILES_kernel-module-exmap = "${base_libdir}" +PACKAGE_ARCH_kernel-module-exmap = "${MACHINE_ARCH}" +RDEPENDS_kernel-module-exmap += "update-modules kernel-image-${KERNEL_VERSION}" + +S = "${WORKDIR}/exmap-console-${PV}" + +export MODULE_PATH="${D}${base_libdir}/modules/${KERNEL_VERSION}" + +do_compile() { + cd ${S}/src + make + + cd ${S}/kernel + unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS + oe_runmake KERNEL_PATH=${STAGING_KERNEL_DIR} \ + KERNEL_SRC=${STAGING_KERNEL_DIR} \ + KERNEL_VERSION=${KERNEL_VERSION} \ + CC="${KERNEL_CC}" LD="${KERNEL_LD}" \ + ${MAKE_TARGETS} +} + +do_install() { + oe_runmake 'DESTDIR=${D}' 'DEPMOD=/bin/true' install +} + +pkg_postinst_append_kernel-module-exmap () { + if [ -n "$D" ]; then + exit 1 + fi + depmod -a + update-modules || true +} + +pkg_postrm_append_kernel-module-exmap () { + update-modules || true +} diff --git a/meta/recipes-devtools/exmap-console/exmap-console_0.4.1.bb b/meta/recipes-devtools/exmap-console/exmap-console_0.4.1.bb new file mode 100644 index 0000000000..c76c5c3b4c --- /dev/null +++ b/meta/recipes-devtools/exmap-console/exmap-console_0.4.1.bb @@ -0,0 +1,3 @@ +require exmap-console.inc + +PR = "r8" diff --git a/meta/recipes-devtools/exmap-console/exmap-console_svn.bb b/meta/recipes-devtools/exmap-console/exmap-console_svn.bb new file mode 100644 index 0000000000..ce222854e2 --- /dev/null +++ b/meta/recipes-devtools/exmap-console/exmap-console_svn.bb @@ -0,0 +1,8 @@ +require exmap-console.inc + +PV = "0.4+svnr${SRCREV}" +PR = "r5" + +SRC_URI = "svn://svn.o-hand.com/repos/misc/trunk;module=exmap-console;proto=http" + +S = "${WORKDIR}/exmap-console" diff --git a/meta/recipes-devtools/gmp/gmp-4.2.1/disable-stdc.patch b/meta/recipes-devtools/gmp/gmp-4.2.1/disable-stdc.patch deleted file mode 100644 index 83c9eae36a..0000000000 --- a/meta/recipes-devtools/gmp/gmp-4.2.1/disable-stdc.patch +++ /dev/null @@ -1,31 +0,0 @@ -# "extern inline" in traditional gcc means that the function should be -# inlined wherever it's seen, while in C99, "extern inline" means that i -# the function should only be inlined where the inline definition is -# seen while in other places it's not inlined: -# http://gcc.gnu.org/ml/gcc/2006-11/msg00006.html -# -# gmp checks "--std=gnu99" to use C99 convention however it internally -# defines some "extern inline" functions in gmp.h, which is included -# by mainly .c files and finally lead a flood of redefinition function -# errors when linking objects together. -# -# So disable C99/ANSI detection to stick to tranditional gcc behavior -# -# by Kevin Tian , 2010-08-13 -# -# (this patch is licensed under GPLv2+) - -diff --git a/configure.in b/configure.in -index 450cc92..aab0b59 100644 ---- a/configure.in -+++ b/configure.in -@@ -1869,9 +1869,7 @@ AC_SUBST(DEFN_LONG_LONG_LIMB) - - # The C compiler and preprocessor, put into ANSI mode if possible. - AC_PROG_CC --AC_PROG_CC_STDC - AC_PROG_CPP --GMP_H_ANSI - - - # The C compiler on the build system, and associated tests. diff --git a/meta/recipes-devtools/gmp/gmp.inc b/meta/recipes-devtools/gmp/gmp.inc deleted file mode 100644 index 6b56f7e7c8..0000000000 --- a/meta/recipes-devtools/gmp/gmp.inc +++ /dev/null @@ -1,16 +0,0 @@ -SECTION = "devel" -DESCRIPTION = "GNU multiprecision arithmetic library" -HOMEPAGE = "http://www.swox.com/gmp/" -LICENSE = "GPLv3 LGPLv3" - -SRC_URI = "ftp://ftp.gnu.org/gnu/gmp/gmp-${PV}.tar.bz2 \ - file://configure.patch \ - file://amd64.patch " - -inherit autotools - -ARM_INSTRUCTION_SET = "arm" - -acpaths = "" - -BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-devtools/gmp/gmp/amd64.patch b/meta/recipes-devtools/gmp/gmp/amd64.patch deleted file mode 100644 index 67be9dd350..0000000000 --- a/meta/recipes-devtools/gmp/gmp/amd64.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- gmp-4.1.4/longlong.h.orig 2004-04-22 00:34:28.000000000 +0200 -+++ gmp-4.1.4/longlong.h 2005-07-18 01:13:06.000000000 +0200 -@@ -738,8 +738,10 @@ - count is only an int. */ - #define count_trailing_zeros(count, x) \ - do { \ -+ UDItype __cbtmp; \ - ASSERT ((x) != 0); \ -- __asm__ ("bsfq %1,%q0" : "=r" (count) : "rm" ((UDItype)(x))); \ -+ __asm__ ("bsfq %1,%0" : "=r" (__cbtmp) : "rm" ((UDItype)(x))); \ -+ (count) = __cbtmp; \ - } while (0) - #endif /* x86_64 */ - diff --git a/meta/recipes-devtools/gmp/gmp/configure.patch b/meta/recipes-devtools/gmp/gmp/configure.patch deleted file mode 100644 index ed0c02d86c..0000000000 --- a/meta/recipes-devtools/gmp/gmp/configure.patch +++ /dev/null @@ -1,195 +0,0 @@ - acinclude.m4 | 26 ++++++++++++++------------ - configure.in | 24 +++++++++--------------- - 2 files changed, 23 insertions(+), 27 deletions(-) - -Index: gmp-5.0.1/acinclude.m4 -=================================================================== ---- gmp-5.0.1.orig/acinclude.m4 -+++ gmp-5.0.1/acinclude.m4 -@@ -30,20 +30,20 @@ dnl a_out.exe - OpenVMS DEC C called - dnl conftest.exe - various DOS compilers - - --define(IA64_PATTERN, -+define([IA64_PATTERN], - [[ia64*-*-* | itanium-*-* | itanium2-*-*]]) - - dnl Need to be careful not to match m6811, m6812, m68hc11 and m68hc12, all - dnl of which config.sub accepts. (Though none of which are likely to work - dnl with GMP.) - dnl --define(M68K_PATTERN, -+define([M68K_PATTERN], - [[m68k-*-* | m68[0-9][0-9][0-9]-*-*]]) - --define(POWERPC64_PATTERN, -+define([POWERPC64_PATTERN], - [[powerpc64-*-* | powerpc64le-*-* | powerpc620-*-* | powerpc630-*-* | powerpc970-*-* | power[3-9]-*-*]]) - --define(X86_PATTERN, -+define([X86_PATTERN], - [[i?86*-*-* | k[5-8]*-*-* | pentium*-*-* | athlon-*-* | viac3*-*-* | geode*-*-* | atom-*-*]]) - - define(X86_64_PATTERN, -@@ -64,7 +64,7 @@ dnl x86 -> x86 - dnl x86/k6 -> k6 - dnl x86/k6/mmx -> k6_mmx - --define(GMP_FAT_SUFFIX, -+define([GMP_FAT_SUFFIX], - [[$1=`echo $2 | sed -e '/\//s:^[^/]*/::' -e 's:[\\/]:_:g'`]]) - - -@@ -73,7 +73,7 @@ dnl ---------------------------------- - dnl Emit code to remove any occurrence of ITEM from $LISTVAR. ITEM can be a - dnl shell expression like $foo if desired. - --define(GMP_REMOVE_FROM_LIST, -+define([GMP_REMOVE_FROM_LIST], - [remove_from_list_tmp= - for remove_from_list_i in $[][$1]; do - if test $remove_from_list_i = [$2]; then :; -@@ -89,12 +89,12 @@ dnl GMP_STRIP_PATH(subdir) - dnl ---------------------- - dnl Strip entries */subdir from $path and $fat_path. - --define(GMP_STRIP_PATH, -+define([GMP_STRIP_PATH], - [GMP_STRIP_PATH_VAR(path, [$1]) - GMP_STRIP_PATH_VAR(fat_path, [$1]) - ]) - --define(GMP_STRIP_PATH_VAR, -+define([GMP_STRIP_PATH_VAR], - [tmp_path= - for i in $[][$1]; do - case $i in -@@ -115,7 +115,7 @@ dnl - dnl Dummy value for GMP_LIMB_BITS is enough - dnl for all current configure-time uses of gmp.h. - --define(GMP_INCLUDE_GMP_H, -+define([GMP_INCLUDE_GMP_H], - [[#define __GMP_WITHIN_CONFIGURE 1 /* ignore template stuff */ - #define GMP_NAIL_BITS $GMP_NAIL_BITS - #define GMP_LIMB_BITS 123 -@@ -130,7 +130,7 @@ dnl Expand at autoconf time to the valu - dnl FILE. The regexps here aren't very rugged, but are enough for gmp. - dnl /dev/null as a parameter prevents a hang if $2 is accidentally omitted. - --define(GMP_HEADER_GETVAL, -+define([GMP_HEADER_GETVAL], - [patsubst(patsubst( - esyscmd([grep "^#define $1 " $2 /dev/null 2>/dev/null]), - [^.*$1[ ]+],[]), -@@ -144,7 +144,7 @@ dnl The gmp version number, extracted f - dnl autoconf time. Two digits like 3.0 if patchlevel <= 0, or three digits - dnl like 3.0.1 if patchlevel > 0. - --define(GMP_VERSION, -+define([GMP_VERSION], - [GMP_HEADER_GETVAL(__GNU_MP_VERSION,gmp-h.in)[]dnl - .GMP_HEADER_GETVAL(__GNU_MP_VERSION_MINOR,gmp-h.in)[]dnl - .GMP_HEADER_GETVAL(__GNU_MP_VERSION_PATCHLEVEL,gmp-h.in)]) -@@ -1506,7 +1506,9 @@ esac - echo ["define(,<\`$tmp'>)"] >>$gmp_tmpconfigm4 - - # All CPUs use asm-defs.m4 --echo ["include][(CONFIG_TOP_SRCDIR\`/mpn/asm-defs.m4')"] >>$gmp_tmpconfigm4i -+echo -n ["include("] >>$gmp_tmpconfigm4i -+echo -n ["CONFIG_TOP_SRCDIR\`/mpn/asm-defs.m4'"] >>$gmp_tmpconfigm4i -+echo [")"] >>$gmp_tmpconfigm4i - ]) - - -Index: gmp-5.0.1/configure.in -=================================================================== ---- gmp-5.0.1.orig/configure.in -+++ gmp-5.0.1/configure.in -@@ -29,12 +29,6 @@ AC_REVISION($Revision$) - AC_PREREQ(2.59) - AC_INIT(GNU MP, GMP_VERSION, gmp-bugs@gmplib.org, gmp) - AC_CONFIG_SRCDIR(gmp-impl.h) --m4_pattern_forbid([^[ \t]*GMP_]) --m4_pattern_allow(GMP_LDFLAGS) --m4_pattern_allow(GMP_LIMB_BITS) --m4_pattern_allow(GMP_MPARAM_H_SUGGEST) --m4_pattern_allow(GMP_NAIL_BITS) --m4_pattern_allow(GMP_NUMB_BITS) - - # If --target is not used then $target_alias is empty, but if say - # "./configure athlon-pc-freebsd3.5" is used, then all three of -@@ -303,7 +297,7 @@ AH_VERBATIM([HAVE_HOST_CPU_1], - # After GMP specific searches and tests, the standard autoconf AC_PROG_CC is - # called. User selections of CC etc are respected. - # --# Care is taken not to use macros like AC_TRY_COMPILE during the GMP -+# Care is taken not to use macros like AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])],[],[]) during the GMP - # pre-testing, since they of course depend on AC_PROG_CC, and also some of - # them cache their results, which is not wanted. - # -@@ -395,7 +389,7 @@ abilist="standard" - # FIXME: We'd like to prefer an ANSI compiler, perhaps by preferring - # c89 over cc here. But note that on HP-UX c89 provides a castrated - # environment, and would want to be excluded somehow. Maybe --# AC_PROG_CC_STDC already does enough to stick cc into ANSI mode and -+# already does enough to stick cc into ANSI mode and - # we don't need to worry. - # - cclist="gcc cc" -@@ -1580,7 +1574,7 @@ esac - CFLAGS_or_unset=${CFLAGS-'(unset)'} - CPPFLAGS_or_unset=${CPPFLAGS-'(unset)'} - --cat >&AC_FD_CC <&AS_MESSAGE_LOG_FD() <&AC_FD_CC -+ echo "CXXFLAGS chosen by autoconf: $CXXFLAGS" >&AS_MESSAGE_LOG_FD() - cxxflags_ac_prog_cxx=$CXXFLAGS - cxxflags_list=ac_prog_cxx - -@@ -2120,7 +2113,7 @@ case $host in - esac - - --cat >&AC_FD_CC <&AS_MESSAGE_LOG_FD() < hostname udev diff --git a/meta/recipes-devtools/insserv/files/make.patch b/meta/recipes-devtools/insserv/files/make.patch new file mode 100644 index 0000000000..bb3b51a8ca --- /dev/null +++ b/meta/recipes-devtools/insserv/files/make.patch @@ -0,0 +1,58 @@ +=== modified file 'Makefile' +--- old/Makefile 2008-06-24 14:49:47 +0000 ++++ new/Makefile 2008-06-24 15:56:15 +0000 +@@ -7,10 +7,10 @@ + INITDIR = /etc/init.d + INSCONF = /etc/insserv.conf + #DESTDIR = /tmp/root +-#DEBUG = -DDEBUG=1 -Wpacked ++DEBUG = -DDEBUG=1 -Wpacked + #LOOPS = -DIGNORE_LOOPS=1 + DEBUG = +-ISSUSE = -DSUSE ++#ISSUSE = -DSUSE + DESTDIR = + VERSION = 1.11.0 + DATE = $(shell date +'%d%b%y' | tr '[:lower:]' '[:upper:]') +@@ -28,7 +28,9 @@ + COPTS = -O2 + endif + endif +- CFLAGS = -Wall $(COPTS) $(DEBUG) $(LOOPS) -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 \ ++COPTS += -g ++ ++ MY_CFLAGS = $(CFLAGS) -Wall $(COPTS) $(DEBUG) $(LOOPS) -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 \ + $(ISSUSE) -DINITDIR=\"$(INITDIR)\" -DINSCONF=\"$(INSCONF)\" -pipe + CLOOP = -falign-loops=0 + CC = gcc +@@ -58,13 +60,13 @@ + all: $(TODO) + + listing.o: listing.c listing.h .system +- $(CC) $(CFLAGS) $(CLOOP) -c $< ++ $(CC) $(MY_CFLAGS) $(CLOOP) -c $< + + insserv.o: insserv.c listing.h .system +- $(CC) $(CFLAGS) $(CLOOP) -c $< ++ $(CC) $(MY_CFLAGS) $(CLOOP) -c $< + + insserv: insserv.o listing.o +- $(CC) $(CFLAGS) -Wl,-O,3,--relax -o $@ $^ ++ $(CC) $(MY_CFLAGS) -Wl,-O,3,--relax -o $@ $^ + + ifeq ($(ISSUSE),-DSUSE) + insserv.8: insserv.8.in .system +@@ -86,10 +88,10 @@ + -include .depend.listing .depend.insserv + + .depend.listing: +- @$(CC) $(CFLAGS) -M listing.c >$@ 2>/dev/null ++ @$(CC) $(MY_CFLAGS) -M listing.c >$@ 2>/dev/null + + .depend.insserv: +- @$(CC) $(CFLAGS) -M insserv.c >$@ 2>/dev/null ++ @$(CC) $(MY_CFLAGS) -M insserv.c >$@ 2>/dev/null + + install: $(TODO) + $(MKDIR) $(SBINDIR) + diff --git a/meta/recipes-devtools/insserv/insserv_1.11.0.bb b/meta/recipes-devtools/insserv/insserv_1.11.0.bb new file mode 100644 index 0000000000..a45ccda48f --- /dev/null +++ b/meta/recipes-devtools/insserv/insserv_1.11.0.bb @@ -0,0 +1,17 @@ +LICENSE = "GPL" +SECTION = "base" +PR = "r1" + +SRC_URI = "ftp://ftp.suse.com/pub/projects/init/${BPN}-${PV}.tar.gz \ + file://40_segfault_virtprov.dpatch;patch=1 \ + file://42_loopnochangemsg.dpatch;patch=1 \ + file://make.patch;patch=1 \ + file://crosscompile_fix.patch;patch=1 \ + file://insserv.conf" + +do_install () { + oe_runmake 'DESTDIR=${D}' install + install -m0644 ${WORKDIR}/insserv.conf ${D}${sysconfdir}/insserv.conf +} + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-devtools/intltool/intltool-0.40.6/intltool-nowarn-0.40.0.patch b/meta/recipes-devtools/intltool/intltool-0.40.6/intltool-nowarn-0.40.0.patch new file mode 100644 index 0000000000..61ecba266e --- /dev/null +++ b/meta/recipes-devtools/intltool/intltool-0.40.6/intltool-nowarn-0.40.0.patch @@ -0,0 +1,50 @@ +Index: intltool-0.40.0/intltool-extract.in +=================================================================== +--- intltool-0.40.0.orig/intltool-extract.in 2008-12-17 11:50:19.000000000 +0000 ++++ intltool-0.40.0/intltool-extract.in 2008-12-17 11:50:31.000000000 +0000 +@@ -1,4 +1,4 @@ +-#!@INTLTOOL_PERL@ -w ++#!@INTLTOOL_PERL@ + # -*- Mode: perl; indent-tabs-mode: nil; c-basic-offset: 4 -*- + + # +Index: intltool-0.40.0/intltool-merge.in +=================================================================== +--- intltool-0.40.0.orig/intltool-merge.in 2008-12-17 11:50:19.000000000 +0000 ++++ intltool-0.40.0/intltool-merge.in 2008-12-17 11:50:38.000000000 +0000 +@@ -1,4 +1,4 @@ +-#!@INTLTOOL_PERL@ -w ++#!@INTLTOOL_PERL@ + # -*- Mode: perl; indent-tabs-mode: nil; c-basic-offset: 4 -*- + + # +Index: intltool-0.40.0/intltool-prepare.in +=================================================================== +--- intltool-0.40.0.orig/intltool-prepare.in 2008-12-17 11:50:19.000000000 +0000 ++++ intltool-0.40.0/intltool-prepare.in 2008-12-17 11:50:42.000000000 +0000 +@@ -1,4 +1,4 @@ +-#!@INTLTOOL_PERL@ -w ++#!@INTLTOOL_PERL@ + # -*- Mode: perl; indent-tabs-mode: nil; c-basic-offset: 4 -*- + + # Intltool .desktop, .directory Prepare Tool +Index: intltool-0.40.0/intltool-unicodify.in +=================================================================== +--- intltool-0.40.0.orig/intltool-unicodify.in 2008-12-17 11:50:19.000000000 +0000 ++++ intltool-0.40.0/intltool-unicodify.in 2008-12-17 11:50:46.000000000 +0000 +@@ -1,4 +1,4 @@ +-#!@INTLTOOL_PERL@ -w ++#!@INTLTOOL_PERL@ + + # + # The i18n Unicode Encoding Utility +Index: intltool-0.40.0/intltool-update.in +=================================================================== +--- intltool-0.40.0.orig/intltool-update.in 2008-12-17 11:50:19.000000000 +0000 ++++ intltool-0.40.0/intltool-update.in 2008-12-17 11:50:49.000000000 +0000 +@@ -1,4 +1,4 @@ +-#!@INTLTOOL_PERL@ -w ++#!@INTLTOOL_PERL@ + # -*- Mode: perl; indent-tabs-mode: nil; c-basic-offset: 4 -*- + + # diff --git a/meta/recipes-devtools/intltool/intltool.inc b/meta/recipes-devtools/intltool/intltool.inc new file mode 100644 index 0000000000..f9bdf93b7b --- /dev/null +++ b/meta/recipes-devtools/intltool/intltool.inc @@ -0,0 +1,17 @@ +DESCRIPTION = "Utility scripts for internationalizing XML" +PRIORITY = "optional" +SECTION = "devel" +LICENSE = "GPL" + +URLV="${@'.'.join(bb.data.getVar('PV',d,1).split('.')[0:2])}" +SRC_URI = "${GNOME_MIRROR}/intltool/${URLV}/intltool-${PV}.tar.bz2" +S = "${WORKDIR}/intltool-${PV}" + +DEPENDS = "libxml-parser-perl-native" +#RDEPENDS = "libxml-parser-perl" +RRECOMMENDS = "perl-modules" + +inherit autotools pkgconfig + +export PERL_virtclass-native = "/usr/bin/env perl" +BBCLASSEXTEND = "native" diff --git a/meta/recipes-devtools/intltool/intltool_0.40.6.bb b/meta/recipes-devtools/intltool/intltool_0.40.6.bb new file mode 100644 index 0000000000..1f23a41f89 --- /dev/null +++ b/meta/recipes-devtools/intltool/intltool_0.40.6.bb @@ -0,0 +1,5 @@ +require intltool.inc + +PR = "r0" + +SRC_URI_append = " file://intltool-nowarn-0.40.0.patch" diff --git a/meta/recipes-devtools/mpfr/mpfr.inc b/meta/recipes-devtools/mpfr/mpfr.inc deleted file mode 100644 index dbb859fe3e..0000000000 --- a/meta/recipes-devtools/mpfr/mpfr.inc +++ /dev/null @@ -1,6 +0,0 @@ -DESCRIPTION = "A C library for multiple-precision floating-point computations with exact rounding" -HOMEPAGE = "http://www.mpfr.org/" -LICENSE = "LGPLv3+" -SECTION = "devel" - -inherit autotools diff --git a/meta/recipes-devtools/mpfr/mpfr_3.0.0.bb b/meta/recipes-devtools/mpfr/mpfr_3.0.0.bb deleted file mode 100644 index 188a5d95cd..0000000000 --- a/meta/recipes-devtools/mpfr/mpfr_3.0.0.bb +++ /dev/null @@ -1,9 +0,0 @@ -require mpfr.inc - -DEPENDS = "gmp" -PR = "r0" - -SRC_URI = "http://www.mpfr.org/mpfr-${PV}/mpfr-${PV}.tar.bz2" -S = "${WORKDIR}/mpfr-${PV}" - -BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-devtools/nasm/nasm_2.07.bb b/meta/recipes-devtools/nasm/nasm_2.07.bb new file mode 100644 index 0000000000..4e482a04d6 --- /dev/null +++ b/meta/recipes-devtools/nasm/nasm_2.07.bb @@ -0,0 +1,24 @@ +DESCRIPTION = "General-purpose x86 assembler" +SECTION = "devel" +LICENSE = "simplifiedBSD" +LIC_CHKSUM_FILES = "file://LICENSE;md5=d89d124974e487e5d64da6f1cd8acfbb" +COMPATIBLE_HOST = '(x86_64|i.86.*)-(linux|freebsd.*)' + +PR = "r0" + +SRC_URI = "${SOURCEFORGE_MIRROR}/nasm/nasm-${PV}.tar.bz2 " + +inherit autotools + +do_configure_prepend () { + mv aclocal.m4 acinclude.m4 +} + +do_install() { + install -d ${D}${bindir} + install -d ${D}${mandir}/man1 + + oe_runmake 'INSTALLROOT=${D}' install +} + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-devtools/rsync/rsync-2.6.9/rsyncd.conf b/meta/recipes-devtools/rsync/rsync-2.6.9/rsyncd.conf new file mode 100644 index 0000000000..845f5b33f5 --- /dev/null +++ b/meta/recipes-devtools/rsync/rsync-2.6.9/rsyncd.conf @@ -0,0 +1,15 @@ +# /etc/rsyncd.conf + +# Minimal configuration file for rsync daemon +# See rsync(1) and rsyncd.conf(5) man pages for help + +# This file is required by rsync --daemon +pid file = /var/run/rsyncd.pid +use chroot = yes +read only = yes + +# Simple example for enabling your own local rsync server +#[everything] +# path = / +# comment = Everything except /etc exposed +# exclude = /etc diff --git a/meta/recipes-devtools/strace/strace_4.5.20.bb b/meta/recipes-devtools/strace/strace_4.5.20.bb new file mode 100644 index 0000000000..cc2ae1a964 --- /dev/null +++ b/meta/recipes-devtools/strace/strace_4.5.20.bb @@ -0,0 +1,11 @@ +DESCRIPTION = "strace is a system call tracing tool." +HOMEPAGE = "http://sourceforge.net/projects/strace/" +SECTION = "console/utils" +LICENSE = "BSD" +LIC_FILES_CHKSUM = "file://COPYRIGHT;md5=4535377ede62550fdeaf39f595fd550a" +PR = "r0" + +SRC_URI = "${SOURCEFORGE_MIRROR}/strace/strace-${PV}.tar.bz2" +inherit autotools + +export INCLUDES = "-I. -I./linux" diff --git a/meta/recipes-devtools/tcf-agent/tcf-agent/fix_tcf-agent.init.patch b/meta/recipes-devtools/tcf-agent/tcf-agent/fix_tcf-agent.init.patch new file mode 100644 index 0000000000..fa9e458714 --- /dev/null +++ b/meta/recipes-devtools/tcf-agent/tcf-agent/fix_tcf-agent.init.patch @@ -0,0 +1,92 @@ +--- a/Makefile ++++ b/Makefile +@@ -32,7 +32,7 @@ + install -d -m 755 $(INSTALLROOT)$(SBIN) + install -d -m 755 $(INSTALLROOT)$(INIT) + install -c $(BINDIR)/agent -m 755 $(INSTALLROOT)$(SBIN)/tcf-agent +- install -c $(TCF_AGENT_DIR)/main/tcf-agent.init -m 755 $(INSTALLROOT)$(INIT)/tcf-agent ++ install -c tcf-agent.init -m 755 $(INSTALLROOT)$(INIT)/tcf-agent + + clean: + rm -rf $(BINDIR) +--- /dev/null ++++ b/tcf-agent.init +@@ -0,0 +1,78 @@ ++#!/bin/sh ++### BEGIN INIT INFO ++# Provides: tcf-agent ++# Default-Start: 3 5 ++# Default-Stop: 0 1 2 6 ++# Short-Description: Target Communication Framework agent ++### END INIT INFO ++ ++DAEMON_PATH=/usr/sbin/tcf-agent ++DAEMON_NAME=`basename $DAEMON_PATH` ++ ++. /etc/init.d/functions ++ ++test -x $DAEMON_PATH || exit 0 ++ ++PATH=/sbin:/usr/sbin:/bin:/usr/bin ++export PATH ++ ++RETVAL=0 ++ ++case "$1" in ++ start) ++ echo -n "Starting $DAEMON_NAME: " ++ $DAEMON_PATH -d -L- -l0 ++ RETVAL=$? ++ if [ $RETVAL -eq 0 ] ; then ++ echo "OK" ++ touch /var/lock/subsys/$DAEMON_NAME ++ else ++ echo "FAIL" ++ fi ++ ;; ++ ++ stop) ++ echo -n "Stopping $DAEMON_NAME: " ++ count=0 ++ while [ -n "`/bin/pidof $DAEMON_PATH`" -a $count -lt 10 ] ; do ++ killproc $DAEMON_PATH >& /dev/null ++ sleep 1 ++ RETVAL=$? ++ if [ $RETVAL != 0 -o -n "`/bin/pidof $DAEMON_PATH`" ] ; then ++ sleep 3 ++ fi ++ count=`expr $count + 1` ++ done ++ rm -f /var/lock/subsys/$DAEMON_NAME ++ if [ -n "`/bin/pidof $DAEMON_PATH`" ] ; then ++ echo "FAIL" ++ else ++ echo "OK" ++ fi ++ ;; ++ ++ restart) ++ $0 stop ++ sleep 1 ++ $0 start ++ ;; ++ ++ status) ++ if [ -n "`/bin/pidof $DAEMON_PATH`" ] ; then ++ echo "$DAEMON_NAME is running" ++ else ++ echo "$DAEMON_NAME is not running" ++ fi ++ ;; ++ ++ condrestart) ++ [ -f /var/lock/subsys/$DAEMON_NAME ] && $0 restart ++ ;; ++ ++ *) ++ echo "usage: $0 { start | stop | restart | condrestart | status }" ++ ;; ++esac ++ ++exit $RETVAL ++ diff --git a/meta/recipes-devtools/tcf-agent/tcf-agent/terminals_agent.patch b/meta/recipes-devtools/tcf-agent/tcf-agent/terminals_agent.patch new file mode 100644 index 0000000000..b88b5e70cd --- /dev/null +++ b/meta/recipes-devtools/tcf-agent/tcf-agent/terminals_agent.patch @@ -0,0 +1,1025 @@ +Index: org.eclipse.tm.tcf.terminals.agent/terminals.c +=================================================================== +--- org.eclipse.tm.tcf.terminals.agent/terminals.c (revision 0) ++++ org.eclipse.tm.tcf.terminals.agent/terminals.c (revision 0) +@@ -0,0 +1,846 @@ ++/******************************************************************************* ++ * Copyright (c) 2008 Wind River Systems, Inc. and others. ++ * All rights reserved. This program and the accompanying materials ++ * are made available under the terms of the Eclipse Public License v1.0 ++ * and Eclipse Distribution License v1.0 which accompany this distribution. ++ * The Eclipse Public License is available at ++ * http://www.eclipse.org/legal/epl-v10.html ++ * and the Eclipse Distribution License is available at ++ * http://www.eclipse.org/org/documents/edl-v10.php. ++ * ++ * Contributors: ++ * Wind River Systems - initial API and implementation ++ *******************************************************************************/ ++ ++/* ++ * Sample TCF service implementation. ++ */ ++ ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#ifndef TIOCGWINSZ ++#include ++#endif ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++#include ++ ++#define TERMINALS_DEBUG 1 ++ ++#define TERMINALS_NO_LOGIN 0 ++ ++static const char * TERMINALS = "Terminals"; ++ ++#if defined(WIN32) ++# include ++# ifdef _MSC_VER ++# pragma warning(disable:4201) /* nonstandard extension used : nameless struct/union (in winternl.h) */ ++# include ++# else ++# include ++# endif ++# ifndef STATUS_INFO_LENGTH_MISMATCH ++# define STATUS_INFO_LENGTH_MISMATCH ((NTSTATUS)0xC0000004L) ++# endif ++# ifndef SystemHandleInformation ++# define SystemHandleInformation 16 ++# endif ++# error("unsupported WIN32!") ++#elif defined(_WRS_KERNEL) ++# include ++# include ++# include ++# include ++# include ++# error("unsupported WRS!") ++#else ++# include ++# include ++# include ++# if TERMINALS_NO_LOGIN ++# define TERM_LAUNCH_EXEC "/bin/bash" ++# define TERM_LAUNCH_ARGS {TERM_LAUNCH_EXEC, NULL} ++# else ++# define TERM_LAUNCH_EXEC "/bin/login" ++# define TERM_LAUNCH_ARGS {TERM_LAUNCH_EXEC, "-p", NULL} ++# endif ++#endif ++ ++#define PIPE_SIZE 0x1000 ++#define TERM_PROP_DEF_SIZE 256 ++ ++typedef struct Terminal ++{ ++ LINK link; ++ int pid; /*pid of the login process of the terminal*/ ++ TCFBroadcastGroup * bcg; ++ int inp; ++ int out; ++ int err; ++ struct TerminalInput * inp_struct; ++ struct TerminalOutput * out_struct; ++ struct TerminalOutput * err_struct; ++ char inp_id[256]; ++ char out_id[256]; ++ char err_id[256]; ++ ++ char pty_type[TERM_PROP_DEF_SIZE]; ++ char encoding[TERM_PROP_DEF_SIZE]; ++ unsigned long width; ++ unsigned long height; ++ long exit_code; ++ ++ Channel *channel; ++} Terminal; ++ ++typedef struct TerminalOutput ++{ ++ Terminal * prs; ++ AsyncReqInfo req; ++ int req_posted; ++ char buf[PIPE_SIZE]; ++ size_t buf_pos; ++ int eos; ++ VirtualStream * vstream; ++} TerminalOutput; ++ ++typedef struct TerminalInput ++{ ++ Terminal * prs; ++ AsyncReqInfo req; ++ int req_posted; ++ char buf[PIPE_SIZE]; ++ size_t buf_pos; ++ size_t buf_len; ++ int eos; ++ VirtualStream * vstream; ++} TerminalInput; ++ ++#define link2term(A) ((Terminal *)((char *)(A) - offsetof(Terminal, link))) ++ ++static LINK terms_list; ++#if defined(_WRS_KERNEL) ++static SEM_ID prs_list_lock = NULL; ++#endif ++ ++static Terminal * find_terminal(int pid) ++{ ++ LINK * qhp = &terms_list; ++ LINK * qp = qhp->next; ++ ++ while (qp != qhp) { ++ Terminal * prs = link2term(qp); ++ if (prs->pid == pid) ++ return prs; ++ qp = qp->next; ++ } ++ return NULL; ++} ++ ++static char * tid2id(int tid) ++{ ++ static char s[64]; ++ char * p = s + sizeof(s); ++ unsigned long n = (long) tid; ++ *(--p) = 0; ++ do { ++ *(--p) = (char) (n % 10 + '0'); ++ n = n / 10; ++ } while (n != 0); ++ ++ *(--p) = 'T'; ++ return p; ++} ++ ++static int id2tid(const char * id) ++{ ++ int tid = 0; ++ if (id == NULL) ++ return 0; ++ if (id[0] != 'T') ++ return 0; ++ if (id[1] == 0) ++ return 0; ++ tid = (unsigned) strtol(id + 1, (char **) &id, 10); ++ if (id[0] != 0) ++ return 0; ++ return tid; ++} ++ ++static void write_context(OutputStream * out, int tid) ++{ ++ Terminal * prs = find_terminal(tid); ++ ++ write_stream(out, '{'); ++ ++ if (prs != NULL) { ++ if (*prs->pty_type) { ++ json_write_string(out, "PtyType"); ++ write_stream(out, ':'); ++ json_write_string(out, prs->pty_type); ++ write_stream(out, ','); ++ } ++ ++ if (*prs->encoding) { ++ json_write_string(out, "Encoding"); ++ write_stream(out, ':'); ++ json_write_string(out, prs->encoding); ++ write_stream(out, ','); ++ } ++ ++ json_write_string(out, "Width"); ++ write_stream(out, ':'); ++ json_write_ulong(out, prs->width); ++ write_stream(out, ','); ++ ++ json_write_string(out, "Height"); ++ write_stream(out, ':'); ++ json_write_ulong(out, prs->height); ++ write_stream(out, ','); ++ ++ if (*prs->inp_id) { ++ json_write_string(out, "StdInID"); ++ write_stream(out, ':'); ++ json_write_string(out, prs->inp_id); ++ write_stream(out, ','); ++ } ++ if (*prs->out_id) { ++ json_write_string(out, "StdOutID"); ++ write_stream(out, ':'); ++ json_write_string(out, prs->out_id); ++ write_stream(out, ','); ++ } ++ if (*prs->err_id) { ++ json_write_string(out, "StdErrID"); ++ write_stream(out, ':'); ++ json_write_string(out, prs->err_id); ++ write_stream(out, ','); ++ } ++ } ++ ++ json_write_string(out, "ID"); ++ write_stream(out, ':'); ++ json_write_string(out, tid2id(tid)); ++ ++ write_stream(out, '}'); ++} ++ ++static void send_event_terminal_exited(OutputStream * out, Terminal * prs) ++{ ++ write_stringz(out, "E"); ++ write_stringz(out, TERMINALS); ++ write_stringz(out, "exited"); ++ ++ json_write_string(out, tid2id(prs->pid)); ++ write_stream(out, 0); ++ ++ json_write_ulong(out, prs->exit_code); ++ write_stream(out, 0); ++ ++ write_stream(out, MARKER_EOM); ++} ++ ++static void send_event_terminal_win_size_changed(OutputStream * out, ++ Terminal * prs) ++{ ++ write_stringz(out, "E"); ++ write_stringz(out, TERMINALS); ++ write_stringz(out, "winSizeChanged"); ++ ++ json_write_string(out, tid2id(prs->pid)); ++ write_stream(out, 0); ++ ++ json_write_long(out, prs->width); ++ write_stream(out, 0); ++ ++ json_write_long(out, prs->height); ++ write_stream(out, 0); ++ ++ write_stream(out, MARKER_EOM); ++} ++ ++static int kill_term(Terminal *term) ++{ ++ int err = 0; ++ ++#if defined(WIN32) ++ HANDLE h = OpenProcess(PROCESS_TERMINATE, FALSE, term->pid); ++ if (h == NULL) ++ { ++ err = set_win32_errno(GetLastError()); ++ } ++ else ++ { ++ if (!TerminateProcess(h, 1)) err = set_win32_errno(GetLastError()); ++ if (!CloseHandle(h) && !err) err = set_win32_errno(GetLastError()); ++ } ++#else ++ if (kill(term->pid, SIGTERM) < 0) ++ err = errno; ++#endif ++ return err; ++} ++ ++static void command_exit(char * token, Channel * c) ++{ ++ int err = 0; ++ char id[256]; ++ unsigned tid; ++ Terminal *term = NULL; ++ ++ json_read_string(&c->inp, id, sizeof(id)); ++ if (read_stream(&c->inp) != 0) ++ exception(ERR_JSON_SYNTAX); ++ if (read_stream(&c->inp) != MARKER_EOM) ++ exception(ERR_JSON_SYNTAX); ++ ++ tid = id2tid(id); ++ write_stringz(&c->out, "R"); ++ write_stringz(&c->out, token); ++ ++ if (tid == 0) { ++ err = ERR_INV_CONTEXT; ++ } else { ++ term = find_terminal(tid); ++ if (term == NULL) { ++ err = ERR_INV_CONTEXT; ++ } else { ++ err = kill_term(term); ++ } ++ } ++ ++ write_errno(&c->out, err); ++ write_stream(&c->out, MARKER_EOM); ++} ++ ++static void terminal_exited(Terminal * prs) ++{ ++ Trap trap; ++ ++ if (set_trap(&trap)) { ++ send_event_terminal_exited(&prs->bcg->out, prs); ++ clear_trap(&trap); ++ } else { ++ trace(LOG_ALWAYS, "Exception sending terminal exited event: %d %s", ++ trap.error, errno_to_str(trap.error)); ++ } ++ ++#if defined(_WRS_KERNEL) ++ semTake(prs_list_lock, WAIT_FOREVER); ++#endif ++ list_remove(&prs->link); ++ close(prs->inp); ++ close(prs->out); ++ if (prs->out != prs->err) ++ close(prs->err); ++ if (prs->inp_struct) { ++ TerminalInput * inp = prs->inp_struct; ++ if (!inp->req_posted) { ++ virtual_stream_delete(inp->vstream); ++ loc_free(inp); ++ } else { ++ inp->prs = NULL; ++ } ++ } ++ if (prs->out_struct) ++ prs->out_struct->prs = NULL; ++ if (prs->err_struct) ++ prs->err_struct->prs = NULL; ++ loc_free(prs); ++#if defined(_WRS_KERNEL) ++ semGive(prs_list_lock); ++#endif ++} ++ ++static void terminal_input_streams_callback(VirtualStream * stream, ++ int event_code, void * args) ++{ ++ TerminalInput * inp = (TerminalInput *) args; ++ ++ assert(inp->vstream == stream); ++ if (!inp->req_posted) { ++ if (inp->buf_pos >= inp->buf_len && !inp->eos) { ++ inp->buf_pos = inp->buf_len = 0; ++ virtual_stream_get_data(stream, inp->buf, sizeof(inp->buf), ++ &inp->buf_len, &inp->eos); ++ } ++ if (inp->buf_pos < inp->buf_len) { ++ inp->req.u.fio.bufp = inp->buf + inp->buf_pos; ++ inp->req.u.fio.bufsz = inp->buf_len - inp->buf_pos; ++ inp->req_posted = 1; ++ async_req_post(&inp->req); ++ } ++ } ++} ++ ++static void write_terminal_input_done(void * x) ++{ ++ AsyncReqInfo * req = (AsyncReqInfo *) x; ++ TerminalInput * inp = (TerminalInput *) req->client_data; ++ ++ inp->req_posted = 0; ++ if (inp->prs == NULL) { ++ /* Process has exited */ ++ virtual_stream_delete(inp->vstream); ++ loc_free(inp); ++ } else { ++ int wr = inp->req.u.fio.rval; ++ ++ if (wr < 0) { ++ int err = inp->req.error; ++ trace(LOG_ALWAYS, "Can't write terminal input stream: %d %s", err, ++ errno_to_str(err)); ++ inp->buf_pos = inp->buf_len = 0; ++ } else { ++ inp->buf_pos += wr; ++ } ++ ++ terminal_input_streams_callback(inp->vstream, 0, inp); ++ } ++} ++ ++static void write_terminal_input(Terminal * prs) ++{ ++ TerminalInput * inp = prs->inp_struct = (TerminalInput *) loc_alloc_zero( ++ sizeof(TerminalInput)); ++ inp->prs = prs; ++ inp->req.client_data = inp; ++ inp->req.done = write_terminal_input_done; ++ inp->req.type = AsyncReqWrite; ++ inp->req.u.fio.fd = prs->inp; ++ virtual_stream_create(TERMINALS, tid2id(prs->pid), PIPE_SIZE, ++ VS_ENABLE_REMOTE_WRITE, terminal_input_streams_callback, inp, ++ &inp->vstream); ++ virtual_stream_get_id(inp->vstream, prs->inp_id, sizeof(prs->inp_id)); ++} ++ ++static void terminal_output_streams_callback(VirtualStream * stream, ++ int event_code, void * args) ++{ ++ TerminalOutput * out = (TerminalOutput *) args; ++ ++ assert(out->vstream == stream); ++ if (!out->req_posted) { ++ int buf_len = out->req.u.fio.rval; ++ int err = 0; ++ int eos = 0; ++ ++ if (buf_len < 0) { ++ buf_len = 0; ++ err = out->req.error; ++ } ++ if (buf_len == 0) ++ eos = 1; ++ if (out->prs == NULL) { ++ eos = 1; ++ err = 0; ++ } ++ ++ assert(buf_len <= (int)sizeof(out->buf)); ++ assert(out->buf_pos <= (size_t)buf_len); ++ assert(out->req.u.fio.bufp == out->buf); ++#ifdef __linux__ ++ if (err == EIO) ++ err = 0; ++#endif ++ if (err) ++ trace(LOG_ALWAYS, "Can't read terminal output stream: %d %s", err, ++ errno_to_str(err)); ++ ++ if (out->buf_pos < (size_t) buf_len || out->eos != eos) { ++ size_t done = 0; ++ virtual_stream_add_data(stream, out->buf + out->buf_pos, buf_len ++ - out->buf_pos, &done, eos); ++ out->buf_pos += done; ++ if (eos) ++ out->eos = 1; ++ } ++ ++ if (out->buf_pos >= (size_t) buf_len) { ++ if (!eos) { ++ out->req_posted = 1; ++ async_req_post(&out->req); ++ } else if (virtual_stream_is_empty(stream)) { ++ if (out->prs != NULL) { ++ if (out == out->prs->out_struct) ++ out->prs->out_struct = NULL; ++ if (out == out->prs->err_struct) ++ out->prs->err_struct = NULL; ++ } ++ virtual_stream_delete(stream); ++ loc_free(out); ++ } ++ } ++ } // end if(!out->req_posted) ++} ++ ++static void read_terminal_output_done(void * x) ++{ ++ AsyncReqInfo * req = (AsyncReqInfo *) x; ++ TerminalOutput * out = (TerminalOutput *) req->client_data; ++ ++ out->buf_pos = 0; ++ out->req_posted = 0; ++ terminal_output_streams_callback(out->vstream, 0, out); ++} ++ ++static TerminalOutput * read_terminal_output(Terminal * prs, int fd, char * id, ++ size_t id_size) ++{ ++ TerminalOutput * out = (TerminalOutput *) loc_alloc_zero( ++ sizeof(TerminalOutput)); ++ out->prs = prs; ++ out->req.client_data = out; ++ out->req.done = read_terminal_output_done; ++ out->req.type = AsyncReqRead; ++ out->req.u.fio.bufp = out->buf; ++ out->req.u.fio.bufsz = sizeof(out->buf); ++ out->req.u.fio.fd = fd; ++ virtual_stream_create(TERMINALS, tid2id(prs->pid), PIPE_SIZE, ++ VS_ENABLE_REMOTE_READ, terminal_output_streams_callback, out, ++ &out->vstream); ++ virtual_stream_get_id(out->vstream, id, id_size); ++ out->req_posted = 1; ++ async_req_post(&out->req); ++ return out; ++} ++ ++static char **envp_add(char **old_envp, int old_envp_len, char *env) ++{ ++ char **new_envp = NULL; ++ int i; ++ int env_size; ++ int old_envp_size; ++ ++ assert(old_envp || (old_envp==NULL && old_envp_len==0)); ++ assert(env); ++ assert(*env); ++ ++ for (i = 0, old_envp_size = 0; i < old_envp_len; i++) { ++ old_envp_size += sizeof(char *); //size of env pointer ++ old_envp_size += strlen(old_envp[i]) + 1; //size of env string, including trailing '\0' ++ } ++ assert((old_envp && old_envp[i]==NULL) || (old_envp==NULL)); ++ old_envp_size += sizeof(char *);//last null pointer ++ ++ env_size = strlen(env); //new env string size ++ ++ new_envp = loc_alloc(old_envp_size + sizeof(char *) + env_size + 1); ++ if (new_envp != NULL) { ++ new_envp[0] = (char *) new_envp + old_envp_size + sizeof(char *); //setting new env ptr ++ strcpy(new_envp[0], env); //copy new env string ++ if (old_envp) { ++ memcpy(&new_envp[1], old_envp, old_envp_size); //copy old envp ++ } else { ++ new_envp[1] = NULL; ++ } ++ } ++ return new_envp; ++} ++ ++static int start_terminal(Channel * c, char *pty_type, char *encoding, ++ char ** envp, int envp_len, char * exe, char ** args, int *pid, ++ Terminal ** prs) ++{ ++ int err = 0; ++ int fd_tty_master = -1; ++ char * tty_slave_name = NULL; ++ struct winsize size; ++ char **newenvp = envp; ++ ++ memset(&size, 0, sizeof(struct winsize)); ++ fd_tty_master = posix_openpt(O_RDWR | O_NOCTTY); ++ if (fd_tty_master < 0 || grantpt(fd_tty_master) < 0 || unlockpt( ++ fd_tty_master) < 0) ++ err = errno; ++ if (!err) { ++ tty_slave_name = ptsname(fd_tty_master); ++ if (tty_slave_name == NULL) ++ err = EINVAL; ++ } ++ ++ if (ioctl(fd_tty_master, TIOCGWINSZ, (char *) &size) < 0) ++ err = errno; ++ ++ if (!err && fd_tty_master < 3) { ++ int fd0 = fd_tty_master; ++ if ((fd_tty_master = dup(fd_tty_master)) < 0 || close(fd0)) ++ err = errno; ++ } ++ ++ if (!err) { ++ *pid = fork(); ++ if (*pid < 0) ++ err = errno; ++ if (*pid == 0) { ++ int fd = -1; ++ int fd_tty_slave = -1; ++ ++ if (*pty_type) { ++ char env_term[TERM_PROP_DEF_SIZE]; ++ snprintf(env_term, sizeof(env_term), "TERM=%s", pty_type); ++ newenvp = envp_add(envp, envp_len, env_term); ++ if (newenvp == NULL) { ++ err = ENOMEM; ++ } else if (envp) { ++ loc_free(envp); ++ envp = NULL; ++ } ++ } ++ ++ setsid(); ++ ++ if (!err && (fd = sysconf(_SC_OPEN_MAX)) < 0) ++ err = errno; ++ if (!err && (fd_tty_slave = open(tty_slave_name, O_RDWR)) < 0) ++ err = errno; ++#if defined(TIOCSCTTY) ++ if (!err && (ioctl(fd_tty_slave, TIOCSCTTY, (char *) 0)) < 0) ++ err = errno; ++#endif ++ if (!err && dup2(fd_tty_slave, 0) < 0) ++ err = errno; ++ if (!err && dup2(fd_tty_slave, 1) < 0) ++ err = errno; ++ if (!err && dup2(fd_tty_slave, 2) < 0) ++ err = errno; ++ while (!err && fd > 3) ++ close(--fd); ++ if (!err) { ++ execve(exe, args, newenvp); ++ err = errno; ++ } ++ if (newenvp) ++ loc_free(newenvp); ++ err = 1; ++ if (err < 1) ++ err = EINVAL; ++ else if (err > 0xff) ++ err = EINVAL; ++ exit(err); ++ } ++ } ++ ++ if (!err) { ++ *prs = (Terminal *) loc_alloc_zero(sizeof(Terminal)); ++ (*prs)->inp = fd_tty_master; ++ (*prs)->out = fd_tty_master; ++ (*prs)->err = fd_tty_master; ++ (*prs)->pid = *pid; ++ (*prs)->bcg = c->bcg; ++ (*prs)->channel = c; ++ if (*pty_type) ++ snprintf((*prs)->pty_type, sizeof((*prs)->pty_type), "%s", pty_type); ++ if (*encoding) ++ snprintf((*prs)->encoding, sizeof((*prs)->encoding), "%s", encoding); ++ (*prs)->width = size.ws_row; ++ (*prs)->height = size.ws_col; ++ list_add_first(&(*prs)->link, &terms_list); ++ } ++ ++ if (!err) ++ return 0; ++ errno = err; ++ return -1; ++} ++ ++static void command_get_context(char * token, Channel * c) ++{ ++ int err = 0; ++ char id[256]; ++ int tid; ++ Terminal *term; ++ ++ json_read_string(&c->inp, id, sizeof(id)); ++ if (read_stream(&c->inp) != 0) ++ exception(ERR_JSON_SYNTAX); ++ if (read_stream(&c->inp) != MARKER_EOM) ++ exception(ERR_JSON_SYNTAX); ++ ++ tid = id2tid(id); ++ write_stringz(&c->out, "R"); ++ write_stringz(&c->out, token); ++ ++ if (tid == 0) { ++ err = ERR_INV_CONTEXT; ++ } else { ++ term = find_terminal(tid); ++ if (term == NULL) { ++ err = ERR_INV_CONTEXT; ++ } else { ++ write_context(&c->out, tid); ++ write_stream(&c->out, 0); ++ } ++ } ++ ++ write_errno(&c->out, err); ++ write_stream(&c->out, MARKER_EOM); ++} ++ ++static void command_launch(char * token, Channel * c) ++{ ++ int pid = 0; ++ int err = 0; ++ char encoding[TERM_PROP_DEF_SIZE]; ++ char pty_type[TERM_PROP_DEF_SIZE]; ++ char *args[] = TERM_LAUNCH_ARGS; ++ ++ char ** envp = NULL; ++ int envp_len = 0; ++ ++ Terminal * prs = NULL; ++ Trap trap; ++ ++ if (set_trap(&trap)) { ++ json_read_string(&c->inp, pty_type, sizeof(pty_type)); ++ if (read_stream(&c->inp) != 0) ++ exception(ERR_JSON_SYNTAX); ++ json_read_string(&c->inp, encoding, sizeof(encoding)); ++ if (read_stream(&c->inp) != 0) ++ exception(ERR_JSON_SYNTAX); ++ envp = json_read_alloc_string_array(&c->inp, &envp_len); ++ if (read_stream(&c->inp) != 0) ++ exception(ERR_JSON_SYNTAX); ++ if (read_stream(&c->inp) != MARKER_EOM) ++ exception(ERR_JSON_SYNTAX); ++ ++ if (err == 0 && start_terminal(c, pty_type, encoding, envp, envp_len, ++ TERM_LAUNCH_EXEC, args, &pid, &prs) < 0) ++ err = errno; ++ if (prs != NULL) { ++ write_terminal_input(prs); ++ prs->out_struct = read_terminal_output(prs, prs->out, prs->out_id, ++ sizeof(prs->out_id)); ++ if (prs->out != prs->err) ++ prs->err_struct = read_terminal_output(prs, prs->err, ++ prs->err_id, sizeof(prs->err_id)); ++ } ++ if (!err) { ++ add_waitpid_process(pid); ++ } ++ //write result back ++ { ++ write_stringz(&c->out, "R"); ++ write_stringz(&c->out, token); ++ write_errno(&c->out, err); ++ if (err || pid == 0) { ++ write_stringz(&c->out, "null"); ++ } else { ++ write_context(&c->out, pid); ++ write_stream(&c->out, 0); ++ } ++ write_stream(&c->out, MARKER_EOM); ++ } ++ clear_trap(&trap); ++ } ++ ++ loc_free(envp); ++ ++ if (trap.error) ++ exception(trap.error); ++} ++ ++static void command_set_win_size(char * token, Channel * c) ++{ ++ int err = 0; ++ struct winsize size; ++ char id[256]; ++ unsigned tid; ++ Terminal *term = NULL; ++ ++ json_read_string(&c->inp, id, sizeof(id)); ++ if (read_stream(&c->inp) != 0) ++ exception(ERR_JSON_SYNTAX); ++ size.ws_col=json_read_ulong(&c->inp); ++ if (read_stream(&c->inp) != 0) ++ exception(ERR_JSON_SYNTAX); ++ size.ws_row=json_read_ulong(&c->inp); ++ if (read_stream(&c->inp) != 0) ++ exception(ERR_JSON_SYNTAX); ++ if (read_stream(&c->inp) != MARKER_EOM) ++ exception(ERR_JSON_SYNTAX); ++ ++ tid = id2tid(id); ++ ++ if(tid==0 || (term=find_terminal(tid))==NULL) { ++ err=ERR_INV_CONTEXT; ++ }else if (term->width != size.ws_col || term->height != size.ws_row) { ++ if(ioctl(term->inp,TIOCSWINSZ,&size)<0) { ++ err=errno; ++ } ++ if(!err) { ++ term->width=size.ws_col; ++ term->height=size.ws_row; ++ send_event_terminal_win_size_changed(&term->channel->out,term); ++ } ++ } ++ ++ write_stringz(&c->out, "R"); ++ write_stringz(&c->out, token); ++ write_errno(&c->out, err); ++ write_stream(&c->out, MARKER_EOM); ++ ++} ++ ++static void waitpid_listener(int pid, int exited, int exit_code, int signal, ++ int event_code, int syscall, void * args) ++{ ++ if (exited) { ++ Terminal * prs = find_terminal(pid); ++ if (prs) { ++ if (signal != 0) ++ prs->exit_code = -signal; ++ else ++ prs->exit_code = exit_code; ++ terminal_exited(prs); ++ } ++ } ++} ++ ++static void channel_close_listener(Channel * c) ++{ ++ LINK * l = NULL; ++ ++ for (l = terms_list.next; l != &terms_list;) { ++ Terminal * term = link2term(l); ++ l = l->next; ++ if (term->channel == c) { ++ trace(LOG_ALWAYS, "Terminal is left launched: T%d", term->pid); ++ kill_term(term); ++ } ++ } ++} ++ ++void ini_terminals_service(Protocol * proto) ++{ ++#if defined(_WRS_KERNEL) ++ prs_list_lock = semMCreate(SEM_Q_PRIORITY); ++ if (prs_list_lock == NULL) check_error(errno); ++ if (taskCreateHookAdd((FUNCPTR)task_create_hook) != OK) check_error(errno); ++ if (taskDeleteHookAdd((FUNCPTR)task_delete_hook) != OK) check_error(errno); ++#endif ++ list_init(&terms_list); ++ ++ add_waitpid_listener(waitpid_listener, NULL); ++ add_channel_close_listener(channel_close_listener); ++ ++ add_command_handler(proto, TERMINALS, "getContext", command_get_context); ++ add_command_handler(proto, TERMINALS, "launch", command_launch); ++ add_command_handler(proto, TERMINALS, "exit", command_exit); ++ add_command_handler(proto, TERMINALS, "setWinSize", command_set_win_size); ++} +Index: org.eclipse.tm.tcf.terminals.agent/main/services-ext.h +=================================================================== +--- org.eclipse.tm.tcf.terminals.agent/main/services-ext.h (revision 0) ++++ org.eclipse.tm.tcf.terminals.agent/main/services-ext.h (revision 0) +@@ -0,0 +1,25 @@ ++/******************************************************************************* ++ * Copyright (c) 2007, 2010 Wind River Systems, Inc. and others. ++ * All rights reserved. This program and the accompanying materials ++ * are made available under the terms of the Eclipse Public License v1.0 ++ * and Eclipse Distribution License v1.0 which accompany this distribution. ++ * The Eclipse Public License is available at ++ * http://www.eclipse.org/legal/epl-v10.html ++ * and the Eclipse Distribution License is available at ++ * http://www.eclipse.org/org/documents/edl-v10.php. ++ * ++ * Contributors: ++ * Wind River Systems - initial API and implementation ++ *******************************************************************************/ ++ ++/* ++ * Services initialization code extension point. ++ * If the agent is built with additional user-defined services, ++ * a customized version of services-ext.h file can be added to compiler headers search paths. ++ */ ++ ++#include "terminals.h" ++ ++static void ini_ext_services(Protocol * proto, TCFBroadcastGroup * bcg) { ++ ini_terminals_service(proto); ++} +Index: org.eclipse.tm.tcf.terminals.agent/terminals.h +=================================================================== +--- org.eclipse.tm.tcf.terminals.agent/terminals.h (revision 0) ++++ org.eclipse.tm.tcf.terminals.agent/terminals.h (revision 0) +@@ -0,0 +1,27 @@ ++/******************************************************************************* ++ * Copyright (c) 2008 Wind River Systems, Inc. and others. ++ * All rights reserved. This program and the accompanying materials ++ * are made available under the terms of the Eclipse Public License v1.0 ++ * and Eclipse Distribution License v1.0 which accompany this distribution. ++ * The Eclipse Public License is available at ++ * http://www.eclipse.org/legal/epl-v10.html ++ * and the Eclipse Distribution License is available at ++ * http://www.eclipse.org/org/documents/edl-v10.php. ++ * ++ * Contributors: ++ * Wind River Systems - initial API and implementation ++ *******************************************************************************/ ++ ++/* ++ * Sample TCF service header file. ++ */ ++ ++#ifndef TERMINALS_H_ ++#define TERMINALS_H_ ++ ++#include ++#include ++ ++extern void ini_terminals_service(Protocol * proto); ++ ++#endif /*TERMINALS_H_*/ +Index: org.eclipse.tm.tcf.terminals.agent/config.h +=================================================================== +--- org.eclipse.tm.tcf.terminals.agent/config.h (revision 0) ++++ org.eclipse.tm.tcf.terminals.agent/config.h (revision 0) +@@ -0,0 +1,63 @@ ++/******************************************************************************* ++ * Copyright (c) 2008 Wind River Systems, Inc. and others. ++ * All rights reserved. This program and the accompanying materials ++ * are made available under the terms of the Eclipse Public License v1.0 ++ * and Eclipse Distribution License v1.0 which accompany this distribution. ++ * The Eclipse Public License is available at ++ * http://www.eclipse.org/legal/epl-v10.html ++ * and the Eclipse Distribution License is available at ++ * http://www.eclipse.org/org/documents/edl-v10.php. ++ * ++ * Contributors: ++ * Wind River Systems - initial API and implementation ++ *******************************************************************************/ ++ ++/* ++ * This file contains "define" statements that control agent configuration. ++ * SERVICE_* definitions control which service implementations are included into the agent. ++ * ++ * This is example agent configuration. It includes only few standard services, ++ * and one example service: Day Time. ++ */ ++ ++#ifndef D_config ++#define D_config ++ ++#include ++ ++#if defined(WIN32) || defined(__CYGWIN__) ++# define TARGET_UNIX 0 ++#elif defined(_WRS_KERNEL) ++# define TARGET_UNIX 0 ++#else ++# define TARGET_UNIX 1 ++#endif ++ ++#define SERVICE_Locator 1 ++#define SERVICE_Processes 1 ++#define SERVICE_Streams 1 ++#define SERVICE_FileSystem 1 ++#define SERVICE_SysMonitor TARGET_UNIX ++ ++#define ENABLE_ZeroCopy 1 ++ ++#if !defined(ENABLE_Splice) ++# if ENABLE_ZeroCopy ++# include ++# if defined(SPLICE_F_MOVE) ++# define ENABLE_Splice 1 ++# else ++# define ENABLE_Splice 0 ++# endif ++# else ++# define ENABLE_Splice 0 ++# endif ++#endif ++ ++#define ENABLE_SSL 0 ++ ++#define ENABLE_Trace 1 ++#define ENABLE_Discovery 1 ++ ++ ++#endif /* D_config */ +Index: org.eclipse.tm.tcf.terminals.agent/Makefile +=================================================================== +--- org.eclipse.tm.tcf.terminals.agent/Makefile (revision 0) ++++ org.eclipse.tm.tcf.terminals.agent/Makefile (revision 0) +@@ -0,0 +1,39 @@ ++TCF_AGENT_DIR=../agent ++ ++include $(TCF_AGENT_DIR)/Makefile.inc ++ ++override CFLAGS += $(foreach dir,$(INCDIRS),-I$(dir)) $(OPTS) ++ ++HFILES := $(foreach dir,$(SRCDIRS),$(wildcard $(dir)/*.h)) $(HFILES) ++CFILES := $(sort $(foreach dir,$(SRCDIRS),$(wildcard $(dir)/*.c)) $(CFILES)) ++ ++#no using SSL ++LIBS = -lpthread -lrt ++ ++EXECS = $(BINDIR)/agent$(EXTEXE) ++ ++all: $(EXECS) ++ ++$(BINDIR)/libtcf$(EXTLIB) : $(OFILES) ++ $(AR) rcs $@ $^ ++ ++$(BINDIR)/agent$(EXTEXE): $(BINDIR)/main/main$(EXTOBJ) $(BINDIR)/libtcf$(EXTLIB) ++ $(CC) $(CFLAGS) -o $@ $(BINDIR)/main/main$(EXTOBJ) $(BINDIR)/libtcf$(EXTLIB) $(LIBS) ++ ++$(BINDIR)/%$(EXTOBJ): %.c $(HFILES) Makefile ++ @mkdir -p $(dir $@) ++ $(CC) $(CFLAGS) -c -o $@ $< ++ ++$(BINDIR)/%$(EXTOBJ): $(TCF_AGENT_DIR)/%.c $(HFILES) Makefile ++ @mkdir -p $(dir $@) ++ $(CC) $(CFLAGS) -c -o $@ $< ++ ++install: all ++ install -d -m 755 $(INSTALLROOT)$(SBIN) ++ install -d -m 755 $(INSTALLROOT)$(INIT) ++ install -c $(BINDIR)/agent -m 755 $(INSTALLROOT)$(SBIN)/tcf-agent ++ install -c $(TCF_AGENT_DIR)/main/tcf-agent.init -m 755 $(INSTALLROOT)$(INIT)/tcf-agent ++ ++clean: ++ rm -rf $(BINDIR) ++ diff --git a/meta/recipes-devtools/tcf-agent/tcf-agent_svn.bb b/meta/recipes-devtools/tcf-agent/tcf-agent_svn.bb new file mode 100644 index 0000000000..b4c70ec8b8 --- /dev/null +++ b/meta/recipes-devtools/tcf-agent/tcf-agent_svn.bb @@ -0,0 +1,36 @@ +DESCRIPTION = "Target Communication Framework" +HOMEPAGE = "http://dsdp.eclipse.org/dsdp/tm/" +BUGTRACKER = "https://bugs.eclipse.org/bugs/" + +LICENSE = "EPLv1.0 | EDLv1.0" +LIC_FILES_CHKSUM = "file://../epl-v10.html;md5=7aa4215a330a0a4f6a1cbf8da1a0879f \ + file://../agent/edl-v10.html;md5=522a390a83dc186513f0500543ad3679" + +PV = "0.3.0+svnr${SRCREV}" +PR = "r0" + +SRC_URI = "svn://dev.eclipse.org/svnroot/dsdp/org.eclipse.tm.tcf/;module=tags/0.3.0/;proto=http \ + file://terminals_agent.patch \ + file://fix_tcf-agent.init.patch" + +S = "${WORKDIR}/tags/0.3.0/tcf-agent" + +inherit update-rc.d + +INITSCRIPT_NAME = "tcf-agent" +INITSCRIPT_PARAMS = "start 999 3 5 . stop 20 0 1 2 6 ." + +# mangling needed for make +MAKE_ARCH = `echo ${TARGET_ARCH} | sed s,i.86,i686,` +MAKE_OS = `echo ${TARGET_OS} | sed s,linux,GNU/Linux,` + +EXTRA_OEMAKE = "MACHINE=${MAKE_ARCH} OPSYS=${MAKE_OS} 'CC=${CC}' 'AR=${AR}'" + +do_compile() { + oe_runmake +} + +do_install() { + oe_runmake install INSTALLROOT=${D} +} + diff --git a/meta/recipes-devtools/ubootchart/files/sysvinit.patch b/meta/recipes-devtools/ubootchart/files/sysvinit.patch new file mode 100644 index 0000000000..de9fb0b17d --- /dev/null +++ b/meta/recipes-devtools/ubootchart/files/sysvinit.patch @@ -0,0 +1,12 @@ +Index: ubootchart.conf +=================================================================== +--- ubootchart.conf (revision 9) ++++ ubootchart.conf (working copy) +@@ -1,6 +1,6 @@ + + # If you want to chain on and run somthing other than /sbin/init... +-export init_prog=/sbin/init ++export init_prog=/sbin/init.sysvinit + + # On startup ubootchart will mount a tmpfs filesystem at this + # location and chdir here. This is only used for the logging of diff --git a/meta/recipes-devtools/ubootchart/files/ubootchart-stop b/meta/recipes-devtools/ubootchart/files/ubootchart-stop new file mode 100644 index 0000000000..3444069c9a --- /dev/null +++ b/meta/recipes-devtools/ubootchart/files/ubootchart-stop @@ -0,0 +1,3 @@ +#! /bin/sh + +kill -USR1 $(pidof ubootchartd_bin) diff --git a/meta/recipes-devtools/ubootchart/files/ubootchart.desktop b/meta/recipes-devtools/ubootchart/files/ubootchart.desktop new file mode 100644 index 0000000000..5552b3bc6f --- /dev/null +++ b/meta/recipes-devtools/ubootchart/files/ubootchart.desktop @@ -0,0 +1,6 @@ +[Desktop Entry] +Encoding=UTF-8 +Exec=/sbin/ubootchart-stop +Name=Stop Bootchart +Type=Application +Categories=Programming; diff --git a/meta/recipes-devtools/ubootchart/ubootchart_svn.bb b/meta/recipes-devtools/ubootchart/ubootchart_svn.bb new file mode 100644 index 0000000000..cd292b6943 --- /dev/null +++ b/meta/recipes-devtools/ubootchart/ubootchart_svn.bb @@ -0,0 +1,37 @@ +DESCRIPTION = "A boot profiling tool" +HOMEPAGE = "http://code.google.com/p/ubootchart/" +LICENSE = "GPLv3" +PV = "0.0+r${SRCREV}" +PR = "r4" + +#RRECOMMENDS = "acct" + +SRC_URI = "svn://ubootchart.googlecode.com/svn/;proto=http;module=trunk \ + file://sysvinit.patch;patch=1;pnum=0 \ + file://ubootchart-stop \ + file://ubootchart.desktop" + +S = "${WORKDIR}/trunk" + +inherit update-alternatives + +ALTERNATIVE_NAME = "init" +ALTERNATIVE_LINK = "${base_sbindir}/init" +ALTERNATIVE_PATH = "${base_sbindir}/ubootchartd" +ALTERNATIVE_PRIORITY = "70" + +do_compile() { + ${CC} ${CFLAGS} ${LDFLAGS} ${LIBS} ${INCLUDES} ${S}/ubootchartd_bin.c -o ubootchartd_bin +} + +do_install() { + install -m 0755 -d ${D}/sbin ${D}/etc/ubootchart ${D}/usr/share/applications + install -m 0755 ${S}/ubootchartd_bin ${D}/sbin + install -m 0755 ${S}/ubootchartd ${D}/sbin + install -m 0644 ${S}/ubootchart.conf ${D}/etc/ubootchart + install -m 0755 ${S}/start.sh ${D}/etc/ubootchart + install -m 0755 ${S}/finish.sh ${D}/etc/ubootchart + + install -m 0755 ${WORKDIR}/ubootchart-stop ${D}/sbin + install -m 0644 ${WORKDIR}/ubootchart.desktop ${D}/usr/share/applications +} diff --git a/meta/recipes-devtools/yaffs2/files/mkyaffs2image.patch b/meta/recipes-devtools/yaffs2/files/mkyaffs2image.patch new file mode 100644 index 0000000000..521f1ba9a0 --- /dev/null +++ b/meta/recipes-devtools/yaffs2/files/mkyaffs2image.patch @@ -0,0 +1,345 @@ + * + * mkyaffs2image hacks by NCB + * + * Changes by Sergey Kubushin flagged KSI + * + */ + +/* KSI: + * All this nightmare should be rewritten from ground up. Why save return + * values if nobody checks them? The read/write function returns only one + * error, -1. Positive return value does NOT mean read/write operation has + * been completed successfully. If somebody opens files, he MUST close them + * when they are not longer needed. Only those brave enough can write 64 + * bytes from a yaffs_PackedTags2 structure. The list is too long, there is + * enough bugs here to write a couple of thick books on how NOT to write + * programs... + * + * And BTW, what was one supposed to do with that file that this horror + * occasionally managed to generate? + */ +diff -urN yaffs2.orig/utils/mkyaffs2image.c yaffs2/utils/mkyaffs2image.c +--- yaffs2.orig/utils/mkyaffs2image.c 2005-12-12 16:34:58.000000000 -0800 ++++ yaffs2/utils/mkyaffs2image.c 2006-02-10 16:56:13.000000000 -0800 +@@ -31,10 +47,10 @@ + #include + #include + #include ++#include + #include "yaffs_ecc.h" + #include "yaffs_guts.h" + +-#include "yaffs_tagsvalidity.h" + #include "yaffs_packedtags2.h" + + unsigned yaffs_traceMask=0; +@@ -43,9 +59,45 @@ + + #define chunkSize 2048 + #define spareSize 64 ++#define PT2_BYTES 25 + + const char * mkyaffsimage_c_version = "$Id: mkyaffs2image.c,v 1.4 2007-02-14 01:09:06 wookey Exp $"; + ++static int layout_no; ++ ++static struct nand_oobinfo oob_layout[] = { ++ /* KSI: ++ * Dummy "raw" layout - no ECC, all the bytes are free. Does NOT ++ * really work, only used for compatibility with CVS YAFFS2 that ++ * never ever worked with any stock MTD. ++ */ ++ { ++ .useecc = MTD_NANDECC_AUTOPLACE, ++ .eccbytes = 0, ++ .eccpos = {}, ++ .oobfree = { {0, 64} } ++ }, ++ /* KSI: ++ * Regular MTD AUTOPLACED ECC for large page NAND devices, the ++ * only one existing in stock MTD so far. It corresponds to layout# 1 ++ * in command line arguments. Any other layouts could be added to ++ * the list when they made their way in kernel's MTD. The structure ++ * is simply copied from kernel's drivers/mtd/nand/nand_base.c as-is. ++ */ ++ { ++ .useecc = MTD_NANDECC_AUTOPLACE, ++ .eccbytes = 24, ++ .eccpos = { ++ 40, 41, 42, 43, 44, 45, 46, 47, ++ 48, 49, 50, 51, 52, 53, 54, 55, ++ 56, 57, 58, 59, 60, 61, 62, 63}, ++ .oobfree = { {2, 38} } ++ }, ++ /* End-of-list marker */ ++ { ++ .useecc = -1, ++ } ++}; + + typedef struct + { +@@ -59,7 +111,7 @@ + static int n_obj = 0; + static int obj_id = YAFFS_NOBJECT_BUCKETS + 1; + +-static int nObjects, nDirectories, nPages; ++static int nObjects = 0, nDirectories = 0, nPages = 0; + + static int outFile; + +@@ -123,6 +175,11 @@ + return -1; + } + ++/* KSI: ++ * No big endian for now. This is left for a later time. The existing code ++ * is FUBAR. ++ */ ++#if 0 + /* This little function converts a little endian tag to a big endian tag. + * NOTE: The tag is not usable after this other than calculating the CRC + * with. +@@ -155,11 +212,56 @@ + tags->asBytes[7] = temp.asBytes[7]; + #endif + } ++#endif ++ ++void nandmtd2_pt2buf(unsigned char *buf, yaffs_PackedTags2 *pt) ++{ ++ int i, j = 0, k, n; ++ unsigned char pt2_byte_buf[PT2_BYTES]; ++ ++ *((unsigned int *) &pt2_byte_buf[0]) = pt->t.sequenceNumber; ++ *((unsigned int *) &pt2_byte_buf[4]) = pt->t.objectId; ++ *((unsigned int *) &pt2_byte_buf[8]) = pt->t.chunkId; ++ *((unsigned int *) &pt2_byte_buf[12]) = pt->t.byteCount; ++ pt2_byte_buf[16] = pt->ecc.colParity; ++ pt2_byte_buf[17] = pt->ecc.lineParity & 0xff; ++ pt2_byte_buf[18] = (pt->ecc.lineParity >> 8) & 0xff; ++ pt2_byte_buf[19] = (pt->ecc.lineParity >> 16) & 0xff; ++ pt2_byte_buf[20] = (pt->ecc.lineParity >> 24) & 0xff; ++ pt2_byte_buf[21] = pt->ecc.lineParityPrime & 0xff; ++ pt2_byte_buf[22] = (pt->ecc.lineParityPrime >> 8) & 0xff; ++ pt2_byte_buf[23] = (pt->ecc.lineParityPrime >> 16) & 0xff; ++ pt2_byte_buf[24] = (pt->ecc.lineParityPrime >> 24) & 0xff; ++ ++ k = oob_layout[layout_no].oobfree[j][0]; ++ n = oob_layout[layout_no].oobfree[j][1]; ++ ++ if (n == 0) { ++ fprintf(stderr, "No OOB space for tags"); ++ exit(-1); ++ } ++ ++ for (i = 0; i < PT2_BYTES; i++) { ++ if (n == 0) { ++ j++; ++ k = oob_layout[layout_no].oobfree[j][0]; ++ n = oob_layout[layout_no].oobfree[j][1]; ++ if (n == 0) { ++ fprintf(stderr, "No OOB space for tags"); ++ exit(-1); ++ } ++ } ++ buf[k++] = pt2_byte_buf[i]; ++ n--; ++ } ++} + + static int write_chunk(__u8 *data, __u32 objId, __u32 chunkId, __u32 nBytes) + { + yaffs_ExtendedTags t; + yaffs_PackedTags2 pt; ++ unsigned char spare_buf[spareSize]; ++ + + error = write(outFile,data,chunkSize); + if(error < 0) return error; +@@ -177,18 +279,27 @@ + // added NCB **CHECK** + t.chunkUsed = 1; + ++/* KSI: Broken anyway -- e.g. &t is pointer to a wrong type... */ ++#if 0 + if (convert_endian) + { + little_to_big_endian(&t); + } ++#endif + + nPages++; + + yaffs_PackTags2(&pt,&t); +- +-// return write(outFile,&pt,sizeof(yaffs_PackedTags2)); +- return write(outFile,&pt,spareSize); +- ++ ++ memset(spare_buf, 0xff, sizeof(spare_buf)); ++ ++ if (layout_no == 0) { ++ memcpy(spare_buf, &pt, sizeof(yaffs_PackedTags2)); ++ } else { ++ nandmtd2_pt2buf(spare_buf, &pt); ++ } ++ ++ return write(outFile,spare_buf,spareSize); + } + + #define SWAP32(x) ((((x) & 0x000000FF) << 24) | \ +@@ -199,6 +310,8 @@ + #define SWAP16(x) ((((x) & 0x00FF) << 8) | \ + (((x) & 0xFF00) >> 8)) + ++/* KSI: Removed for now. TBD later when the proper util (from scratch) is written */ ++#if 0 + // This one is easier, since the types are more standard. No funky shifts here. + static void object_header_little_to_big_endian(yaffs_ObjectHeader* oh) + { +@@ -256,6 +369,7 @@ + oh->roomToGrow[11] = SWAP32(oh->roomToGrow[11]); + #endif + } ++#endif + + static int write_object_header(int objId, yaffs_ObjectType t, struct stat *s, int parent, const char *name, int equivalentObj, const char * alias) + { +@@ -300,10 +414,13 @@ + strncpy(oh->alias,alias,YAFFS_MAX_ALIAS_LENGTH); + } + ++/* KSI: FUBAR. Left for a leter time. */ ++#if 0 + if (convert_endian) + { + object_header_little_to_big_endian(oh); + } ++#endif + + return write_chunk(bytes,objId,0,0xffff); + +@@ -319,7 +436,7 @@ + nDirectories++; + + dir = opendir(path); +- ++ + if(dir) + { + while((entry = readdir(dir)) != NULL) +@@ -403,12 +520,12 @@ + error = nBytes; + + printf("%d data chunks written\n",chunk); ++ close(h); + } + else + { + perror("Error opening file"); + } +- close(h); + + } + +@@ -448,58 +565,82 @@ + } + } + } ++ /* KSI: ++ * Who is supposed to close those open directories in this ++ * recursive function, lord Byron? Stock "ulimit -n" is 1024 ++ * and e.g. stock Fedora /etc directory has more that 1024 ++ * directories... ++ */ ++ closedir(dir); + } + + return 0; + + } + ++void usage(void) ++{ ++ printf("usage: mkyaffs2image layout# dir image_file [convert]\n"); ++ printf(" layout# NAND OOB layout # (0 - raw, 1 - nand_oob_64)\n"); ++ printf(" dir the directory tree to be converted\n"); ++ printf(" image_file the output file to hold the image\n"); ++ printf(" 'convert' make a big-endian img on a little-endian machine. BROKEN !\n"); ++ exit(1); ++} + + int main(int argc, char *argv[]) + { + struct stat stats; ++ int i; + + printf("mkyaffs2image: image building tool for YAFFS2 built "__DATE__"\n"); + +- if(argc < 3) ++ if ((argc < 4) || (sscanf(argv[1], "%u", &layout_no) != 1)) + { +- printf("usage: mkyaffs2image dir image_file [convert]\n"); +- printf(" dir the directory tree to be converted\n"); +- printf(" image_file the output file to hold the image\n"); +- printf(" 'convert' produce a big-endian image from a little-endian machine\n"); +- exit(1); ++ usage(); + } + +- if ((argc == 4) && (!strncmp(argv[3], "convert", strlen("convert")))) +- { +- convert_endian = 1; +- } ++ i = 0; ++ ++ while (oob_layout[i].useecc != -1) ++ i++; ++ ++ if (layout_no >= i) ++ usage(); ++ ++ if ((argc == 5) && (!strncmp(argv[4], "convert", strlen("convert")))) ++ { ++ /* KSI: Broken as of now. TBD. Fail. */ ++ usage(); ++ convert_endian = 1; ++ } + +- if(stat(argv[1],&stats) < 0) ++ if(stat(argv[2],&stats) < 0) + { +- printf("Could not stat %s\n",argv[1]); ++ printf("Could not stat %s\n",argv[2]); + exit(1); + } + + if(!S_ISDIR(stats.st_mode)) + { +- printf(" %s is not a directory\n",argv[1]); ++ printf(" %s is not a directory\n",argv[2]); + exit(1); + } + +- outFile = open(argv[2],O_CREAT | O_TRUNC | O_WRONLY, S_IREAD | S_IWRITE); ++ outFile = open(argv[3],O_CREAT | O_TRUNC | O_WRONLY, S_IREAD | S_IWRITE); + + + if(outFile < 0) + { +- printf("Could not open output file %s\n",argv[2]); ++ printf("Could not open output file %s\n",argv[3]); + exit(1); + } + +- printf("Processing directory %s into image file %s\n",argv[1],argv[2]); ++ printf("Processing directory %s into image file %s\n",argv[2],argv[3]); + error = write_object_header(1, YAFFS_OBJECT_TYPE_DIRECTORY, &stats, 1,"", -1, NULL); ++ + if(error) +- error = process_directory(YAFFS_OBJECTID_ROOT,argv[1]); ++ error = process_directory(YAFFS_OBJECTID_ROOT,argv[2]); + + close(outFile); + diff --git a/meta/recipes-devtools/yaffs2/files/yaffs2-unioob.patch b/meta/recipes-devtools/yaffs2/files/yaffs2-unioob.patch new file mode 100644 index 0000000000..c894528ca1 --- /dev/null +++ b/meta/recipes-devtools/yaffs2/files/yaffs2-unioob.patch @@ -0,0 +1,216 @@ +diff -urN yaffs2.orig/yaffs_mtdif2.c yaffs2/yaffs_mtdif2.c +--- yaffs2.orig/yaffs_mtdif2.c 2005-12-07 14:00:38.000000000 -0800 ++++ yaffs2/yaffs_mtdif2.c 2006-02-10 17:13:58.000000000 -0800 +@@ -29,6 +29,130 @@ + + #include "yaffs_packedtags2.h" + ++#define PT2_BYTES 25 ++ ++void nandmtd2_pt2buf(yaffs_Device *dev, yaffs_PackedTags2 *pt, int is_raw) ++{ ++ struct mtd_info *mtd = (struct mtd_info *)(dev->genericDevice); ++ int i, j = 0, k, n; ++ __u8 pt2_byte_buf[PT2_BYTES]; ++ ++ /* Pack buffer with 0xff */ ++ for (i = 0; i < mtd->oobsize; i++) ++ dev->spareBuffer[i] = 0xff; ++ ++ if (!is_raw) { ++ *((unsigned int *) &dev->spareBuffer[0]) = pt->t.sequenceNumber; ++ *((unsigned int *) &dev->spareBuffer[4]) = pt->t.objectId; ++ *((unsigned int *) &dev->spareBuffer[8]) = pt->t.chunkId; ++ *((unsigned int *) &dev->spareBuffer[12]) = pt->t.byteCount; ++ dev->spareBuffer[16] = pt->ecc.colParity; ++ dev->spareBuffer[17] = pt->ecc.lineParity & 0xff; ++ dev->spareBuffer[18] = (pt->ecc.lineParity >> 8) & 0xff; ++ dev->spareBuffer[19] = (pt->ecc.lineParity >> 16) & 0xff; ++ dev->spareBuffer[20] = (pt->ecc.lineParity >> 24) & 0xff; ++ dev->spareBuffer[21] = pt->ecc.lineParityPrime & 0xff; ++ dev->spareBuffer[22] = (pt->ecc.lineParityPrime >> 8) & 0xff; ++ dev->spareBuffer[23] = (pt->ecc.lineParityPrime >> 16) & 0xff; ++ dev->spareBuffer[24] = (pt->ecc.lineParityPrime >> 24) & 0xff; ++ } else { ++ *((unsigned int *) &pt2_byte_buf[0]) = pt->t.sequenceNumber; ++ *((unsigned int *) &pt2_byte_buf[4]) = pt->t.objectId; ++ *((unsigned int *) &pt2_byte_buf[8]) = pt->t.chunkId; ++ *((unsigned int *) &pt2_byte_buf[12]) = pt->t.byteCount; ++ pt2_byte_buf[16] = pt->ecc.colParity; ++ pt2_byte_buf[17] = pt->ecc.lineParity & 0xff; ++ pt2_byte_buf[18] = (pt->ecc.lineParity >> 8) & 0xff; ++ pt2_byte_buf[19] = (pt->ecc.lineParity >> 16) & 0xff; ++ pt2_byte_buf[20] = (pt->ecc.lineParity >> 24) & 0xff; ++ pt2_byte_buf[21] = pt->ecc.lineParityPrime & 0xff; ++ pt2_byte_buf[22] = (pt->ecc.lineParityPrime >> 8) & 0xff; ++ pt2_byte_buf[23] = (pt->ecc.lineParityPrime >> 16) & 0xff; ++ pt2_byte_buf[24] = (pt->ecc.lineParityPrime >> 24) & 0xff; ++ ++ k = mtd->oobinfo.oobfree[j][0]; ++ n = mtd->oobinfo.oobfree[j][1]; ++ ++ if (n == 0) { ++ T(YAFFS_TRACE_ERROR, (TSTR("No OOB space for tags" TENDSTR))); ++ YBUG(); ++ } ++ ++ for (i = 0; i < PT2_BYTES; i++) { ++ if (n == 0) { ++ j++; ++ k = mtd->oobinfo.oobfree[j][0]; ++ n = mtd->oobinfo.oobfree[j][1]; ++ if (n == 0) { ++ T(YAFFS_TRACE_ERROR, (TSTR("No OOB space for tags" TENDSTR))); ++ YBUG(); ++ } ++ } ++ dev->spareBuffer[k++] = pt2_byte_buf[i]; ++ n--; ++ } ++ } ++} ++ ++void nandmtd2_buf2pt(yaffs_Device *dev, yaffs_PackedTags2 *pt, int is_raw) ++{ ++ struct mtd_info *mtd = (struct mtd_info *)(dev->genericDevice); ++ int i, j = 0, k, n; ++ __u8 pt2_byte_buf[PT2_BYTES]; ++ ++ ++ if (!is_raw) { ++ pt->t.sequenceNumber = *((unsigned int *) &dev->spareBuffer[0]); ++ pt->t.objectId = *((unsigned int *) &dev->spareBuffer[4]); ++ pt->t.chunkId = *((unsigned int *) &dev->spareBuffer[8]); ++ pt->t.byteCount = *((unsigned int *) &dev->spareBuffer[12]); ++ pt->ecc.colParity = dev->spareBuffer[16]; ++ pt->ecc.lineParity = (dev->spareBuffer[17] & 0x000000ff) | ++ ((dev->spareBuffer[18] << 8) & 0x0000ff00) | ++ ((dev->spareBuffer[19] << 16) & 0x00ff0000) | ++ ((dev->spareBuffer[20] << 24) & 0xff000000); ++ pt->ecc.lineParityPrime = (dev->spareBuffer[21] & 0x000000ff) | ++ ((dev->spareBuffer[22] << 8) & 0x0000ff00) | ++ ((dev->spareBuffer[23] << 16) & 0x00ff0000) | ++ ((dev->spareBuffer[24] << 24) & 0xff000000); ++ } else { ++ k = mtd->oobinfo.oobfree[j][0]; ++ n = mtd->oobinfo.oobfree[j][1]; ++ ++ if (n == 0) { ++ T(YAFFS_TRACE_ERROR, (TSTR("No space in OOB for tags" TENDSTR))); ++ YBUG(); ++ } ++ ++ for (i = 0; i < PT2_BYTES; i++) { ++ if (n == 0) { ++ j++; ++ k = mtd->oobinfo.oobfree[j][0]; ++ n = mtd->oobinfo.oobfree[j][1]; ++ if (n == 0) { ++ T(YAFFS_TRACE_ERROR, (TSTR("No space in OOB for tags" TENDSTR))); ++ YBUG(); ++ } ++ } ++ pt2_byte_buf[i] = dev->spareBuffer[k++]; ++ n--; ++ } ++ pt->t.sequenceNumber = *((unsigned int *) &pt2_byte_buf[0]); ++ pt->t.objectId = *((unsigned int *) &pt2_byte_buf[4]); ++ pt->t.chunkId = *((unsigned int *) &pt2_byte_buf[8]); ++ pt->t.byteCount = *((unsigned int *) &pt2_byte_buf[12]); ++ pt->ecc.colParity = pt2_byte_buf[16]; ++ pt->ecc.lineParity = (pt2_byte_buf[17] & 0x000000ff) | ++ ((pt2_byte_buf[18] << 8) & 0x0000ff00) | ++ ((pt2_byte_buf[19] << 16) & 0x00ff0000) | ++ ((pt2_byte_buf[20] << 24) & 0xff000000); ++ pt->ecc.lineParityPrime = (pt2_byte_buf[21] & 0x000000ff) | ++ ((pt2_byte_buf[22] << 8) & 0x0000ff00) | ++ ((pt2_byte_buf[23] << 16) & 0x00ff0000) | ++ ((pt2_byte_buf[24] << 24) & 0xff000000); ++ } ++} ++ + int nandmtd2_WriteChunkWithTagsToNAND(yaffs_Device * dev, int chunkInNAND, + const __u8 * data, + const yaffs_ExtendedTags * tags) +@@ -51,24 +175,22 @@ + } + + if (data && tags) { +- if (dev->useNANDECC) +- retval = +- mtd->write_ecc(mtd, addr, dev->nBytesPerChunk, +- &dummy, data, (__u8 *) & pt, NULL); +- else ++ nandmtd2_pt2buf(dev, &pt, 0); + retval = + mtd->write_ecc(mtd, addr, dev->nBytesPerChunk, +- &dummy, data, (__u8 *) & pt, NULL); ++ &dummy, data, dev->spareBuffer, ++ NULL); + } else { + if (data) + retval = + mtd->write(mtd, addr, dev->nBytesPerChunk, &dummy, + data); +- if (tags) ++ if (tags) { ++ nandmtd2_pt2buf(dev, &pt, 1); + retval = + mtd->write_oob(mtd, addr, mtd->oobsize, &dummy, +- (__u8 *) & pt); +- ++ dev->spareBuffer); ++ } + } + + if (retval == 0) +@@ -94,30 +216,24 @@ + TENDSTR), chunkInNAND, data, tags)); + + if (data && tags) { +- if (dev->useNANDECC) { + retval = + mtd->read_ecc(mtd, addr, dev->nBytesPerChunk, + &dummy, data, dev->spareBuffer, + NULL); +- } else { +- retval = +- mtd->read_ecc(mtd, addr, dev->nBytesPerChunk, +- &dummy, data, dev->spareBuffer, +- NULL); +- } ++ nandmtd2_buf2pt(dev, &pt, 0); + } else { + if (data) + retval = + mtd->read(mtd, addr, dev->nBytesPerChunk, &dummy, + data); +- if (tags) ++ if (tags) { + retval = + mtd->read_oob(mtd, addr, mtd->oobsize, &dummy, + dev->spareBuffer); ++ nandmtd2_buf2pt(dev, &pt, 1); ++ } + } + +- memcpy(&pt, dev->spareBuffer, sizeof(pt)); +- + if (tags) + yaffs_UnpackTags2(tags, &pt); + +@@ -178,10 +294,11 @@ + *sequenceNumber = 0; + *state = YAFFS_BLOCK_STATE_EMPTY; + } ++ ++ T(YAFFS_TRACE_MTD, ++ (TSTR("block is OK seq %d state %d" TENDSTR), *sequenceNumber, ++ *state)); + } +- T(YAFFS_TRACE_MTD, +- (TSTR("block is bad seq %d state %d" TENDSTR), *sequenceNumber, +- *state)); + + if (retval == 0) + return YAFFS_OK; diff --git a/meta/recipes-devtools/yaffs2/yaffs2-utils.inc b/meta/recipes-devtools/yaffs2/yaffs2-utils.inc new file mode 100644 index 0000000000..b25cc3b590 --- /dev/null +++ b/meta/recipes-devtools/yaffs2/yaffs2-utils.inc @@ -0,0 +1,27 @@ +DESCRIPTION = "Tools for managing 'yaffs2' file systems." +SECTION = "base" +HOMEPAGE = "http://www.yaffs.net" +LICENSE = "GPLv2" +PV = "0.0.0+cvs${SRCDATE}" +PR = "r0" +DEPENDS = "mtd-utils" + +SRC_URI = "cvs://anonymous@cvs.aleph1.co.uk/home/aleph1/cvs;module=yaffs2 \ + file://mkyaffs2image.patch;patch=1" +S = "${WORKDIR}/yaffs2" + +CFLAGS += "-I.. -DCONFIG_YAFFS_UTIL" +CFLAGS_append_virtclass-native = " -I.. -DCONFIG_YAFFS_UTIL" + +do_compile() { + cd utils && oe_runmake +} + +do_install() { + install -d ${D}${sbindir}/ + for i in mkyaffsimage mkyaffs2image; do + install -m 0755 utils/$i ${D}${sbindir}/ + done +} + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-devtools/yaffs2/yaffs2-utils_cvs.bb b/meta/recipes-devtools/yaffs2/yaffs2-utils_cvs.bb new file mode 100644 index 0000000000..6171fe55bd --- /dev/null +++ b/meta/recipes-devtools/yaffs2/yaffs2-utils_cvs.bb @@ -0,0 +1,3 @@ +require yaffs2-utils.inc +PR = "r1" + diff --git a/meta/recipes-extended/blktool/blktool_4-6.bb b/meta/recipes-extended/blktool/blktool_4-6.bb new file mode 100644 index 0000000000..3313b039ce --- /dev/null +++ b/meta/recipes-extended/blktool/blktool_4-6.bb @@ -0,0 +1,14 @@ +DESCRIPTION = "blktool is used for querying and/or changing settings of a block device. It is like hdparm but a more general tool, as it works on SCSI, IDE and SATA devices" +HOMEPAGE = "http://packages.debian.org/unstable/admin/blktool" +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ + file://blktool.c;beginline=7;endline=8;md5=a5e798ea98fd50972088968a15e5f373" +DEPENDS = "glib-2.0" + +SRC_URI = "${DEBIAN_MIRROR}/main/b/blktool/blktool_4.orig.tar.gz \ + ${DEBIAN_MIRROR}/main/b/blktool/blktool_4-6.diff.gz;apply=yes" + +PR = "r0" +S = "${WORKDIR}/${PN}-4.orig" + +inherit autotools diff --git a/meta/recipes-extended/bzip2/bzip2-1.0.5/Makefile.am b/meta/recipes-extended/bzip2/bzip2-1.0.5/Makefile.am new file mode 100644 index 0000000000..070d57b243 --- /dev/null +++ b/meta/recipes-extended/bzip2/bzip2-1.0.5/Makefile.am @@ -0,0 +1,41 @@ + +lib_LTLIBRARIES = libbz2.la + +libbz2_la_SOURCES = blocksort.c \ + huffman.c \ + crctable.c \ + randtable.c \ + compress.c \ + decompress.c \ + bzlib.c + +bin_PROGRAMS = bzip2 bzip2recover + +bzip2_SOURCES = bzip2.c +bzip2_LDADD = libbz2.la +bzip2_DEPENDENCIES = libbz2.la + +include_HEADERS = bzlib.h + +bzip2recover_SOURCES = bzip2recover.c +bzip2recover_LDADD = libbz2.la +bzip2recover_DEPENDENCIES = libbz2.la + +bin_SCRIPTS = bzgrep bzmore bzdiff + +man_MANS = bzip2.1 bzgrep.1 bzmore.1 bzdiff.1 +EXTRA_DIST = $(man_MANS) + +install-exec-hook: + ln -s $(bindir)/bzip2$(EXEEXT) $(DESTDIR)$(bindir)/bunzip2$(EXEEXT) + ln -s $(bindir)/bzip2$(EXEEXT) $(DESTDIR)$(bindir)/bzcat$(EXEEXT) + ln -s $(bindir)/bzgrep$(EXEEXT) $(DESTDIR)$(bindir)/bzegrep$(EXEEXT) + ln -s $(bindir)/bzgrep$(EXEEXT) $(DESTDIR)$(bindir)/bzfgrep$(EXEEXT) + ln -s $(bindir)/bzmore$(EXEEXT) $(DESTDIR)$(bindir)/bzless$(EXEEXT) + ln -s $(bindir)/bzdiff$(EXEEXT) $(DESTDIR)$(bindir)/bzcmp$(EXEEXT) + +install-data-hook: + echo ".so man1/bzgrep.1" > $(DESTDIR)$(mandir)/man1/bzegrep.1 + echo ".so man1/bzgrep.1" > $(DESTDIR)$(mandir)/man1/bzfgrep.1 + echo ".so man1/bzmore.1" > $(DESTDIR)$(mandir)/man1/bzless.1 + echo ".so man1/bzdiff.1" > $(DESTDIR)$(mandir)/man1/bzcmp.1 diff --git a/meta/recipes-extended/bzip2/bzip2-1.0.5/configure.ac b/meta/recipes-extended/bzip2/bzip2-1.0.5/configure.ac new file mode 100644 index 0000000000..14b1d1809d --- /dev/null +++ b/meta/recipes-extended/bzip2/bzip2-1.0.5/configure.ac @@ -0,0 +1,14 @@ +AC_PREREQ([2.57]) + +AC_INIT(bzip2, 2.0.5, , libXrender) +AM_INIT_AUTOMAKE() +AM_MAINTAINER_MODE + +#AM_CONFIG_HEADER(config.h) + +# Check for progs +AC_PROG_CC +AC_PROG_LIBTOOL + +AC_OUTPUT([Makefile]) + diff --git a/meta/recipes-extended/bzip2/bzip2_1.0.5.bb b/meta/recipes-extended/bzip2/bzip2_1.0.5.bb new file mode 100644 index 0000000000..c6339c0676 --- /dev/null +++ b/meta/recipes-extended/bzip2/bzip2_1.0.5.bb @@ -0,0 +1,41 @@ +DESCRIPTION = "Very high-quality data compression program." +HOMEPAGE = "http://www.bzip.org/" +SECTION = "console/utils" +LICENSE = "bzip2" +LIC_FILES_CHKSUM = "file://LICENSE;beginline=8;endline=37;md5=40d9d1eb05736d1bfc86cfdd9106e6b2" +PR = "r2" + +SRC_URI = "http://www.bzip.org/${PV}/${BPN}-${PV}.tar.gz \ + file://configure.ac \ + file://Makefile.am" + +CFLAGS_append = " -fPIC -fpic -Winline -fno-strength-reduce -D_FILE_OFFSET_BITS=64" + +inherit autotools + +do_configure_prepend () { + cp ${WORKDIR}/configure.ac ${S}/ + cp ${WORKDIR}/Makefile.am ${S}/ + cp ${STAGING_DATADIR_NATIVE}/automake*/install-sh ${S}/ +} + +do_install_append () { + if [ "${BUILD_ARCH}" != "${HOST_ARCH}" ]; then + mv ${D}${bindir}/bunzip2 ${D}${bindir}/bunzip2.${PN} + mv ${D}${bindir}/bzcat ${D}${bindir}/bzcat.${PN} + fi +} + +pkg_postinst_${PN} () { + update-alternatives --install ${bindir}/bunzip2 bunzip2 bunzip2.${PN} 100 + update-alternatives --install ${bindir}/bzcat bzcat bzcat.${PN} 100 +} + + +pkg_prerm_${PN} () { + update-alternatives --remove bunzip2 bunzip2.${PN} + update-alternatives --remove bzcat bzcat.${PN} +} + +PROVIDES_append_virtclass-native = " bzip2-full-native" +BBCLASSEXTEND = "native" diff --git a/meta/recipes-extended/devicekit/devicekit-power_014.bb b/meta/recipes-extended/devicekit/devicekit-power_014.bb new file mode 100644 index 0000000000..f69a060ef2 --- /dev/null +++ b/meta/recipes-extended/devicekit/devicekit-power_014.bb @@ -0,0 +1,21 @@ +DESCRIPTION = "Devicekit power" +LICENSE = "GPLv2" +DEPENDS = "devicekit glib-2.0 dbus-glib polkit" + +SRC_URI = "http://hal.freedesktop.org/releases/DeviceKit-power-${PV}.tar.gz" +S = "${WORKDIR}/DeviceKit-power-${PV}" + +inherit autotools pkgconfig + +do_configure_prepend() { + sed -i -e s:-nonet:\:g ${S}/doc/man/Makefile.am +} + +EXTRA_OECONF = "--with-backend=linux" + +FILES_${PN} += "${datadir}/dbus-1/ \ + ${datadir}/PolicyKit \ + ${base_libdir}/udev/* \ + " + +FILES_${PN}-dbg += "${base_libdir}/udev/.debug" diff --git a/meta/recipes-extended/devicekit/devicekit/volatile b/meta/recipes-extended/devicekit/devicekit/volatile new file mode 100644 index 0000000000..1e399642e0 --- /dev/null +++ b/meta/recipes-extended/devicekit/devicekit/volatile @@ -0,0 +1 @@ +d root root 0700 /var/run/devkit none diff --git a/meta/recipes-extended/devicekit/devicekit_003.bb b/meta/recipes-extended/devicekit/devicekit_003.bb new file mode 100644 index 0000000000..af812935cd --- /dev/null +++ b/meta/recipes-extended/devicekit/devicekit_003.bb @@ -0,0 +1,16 @@ +DESCRIPTION = "DeviceKit is a simple system service that a) can enumerate devices; b) emits signals when devices are added removed; c) provides a way to merge device information / quirks onto devices." +LICENSE = "GPLv2" +DEPENDS = "udev dbus-glib glib-2.0" + +PR = "r1" + +SRC_URI = "http://hal.freedesktop.org/releases/DeviceKit-${PV}.tar.gz" +S = "${WORKDIR}/DeviceKit-${PV}" + +do_configure_prepend() { + sed -i -e s:-nonet:\:g ${S}/doc/man/Makefile.am +} + +inherit autotools + +FILES_${PN} += "${datadir}/dbus-1/" diff --git a/meta/recipes-extended/devicekit/devicekit_git.bb b/meta/recipes-extended/devicekit/devicekit_git.bb new file mode 100644 index 0000000000..74b639f6c1 --- /dev/null +++ b/meta/recipes-extended/devicekit/devicekit_git.bb @@ -0,0 +1,35 @@ +LICENSE = "GPL" +DEPENDS = "dbus-glib" + +SRC_URI = "git://anongit.freedesktop.org/DeviceKit/DeviceKit;protocol=git \ + file://volatile" + +PV = "002+git${SRCREV}" +PR = "r2" +SRCREV = "014d168ba4bf40c9bae487bacff8bf2aa054b5f6" + +S = "${WORKDIR}/git" + +EXTRA_OECONF = "--disable-man-pages" + +inherit autotools pkgconfig + +do_install_append() { + install -d ${D}/etc/default/volatiles + install -m 0644 ${WORKDIR}/volatile ${D}/etc/default/volatiles/devicekit +} + +pkg_postinst_devicekit () { + # can't do this offline + if [ "x$D" != "x" ]; then + exit 1 + fi + + DBUSPID=`pidof dbus-daemon` + + if [ "x$DBUSPID" != "x" ]; then + /etc/init.d/dbus-1 reload + fi +} + +FILES_${PN} += "${datadir}/dbus-1/" diff --git a/meta/recipes-extended/diffutils/diffutils_2.8.1.bb b/meta/recipes-extended/diffutils/diffutils_2.8.1.bb new file mode 100644 index 0000000000..86b46aafec --- /dev/null +++ b/meta/recipes-extended/diffutils/diffutils_2.8.1.bb @@ -0,0 +1,38 @@ +SECTION = "base" +LICENSE = "GPL" +DESCRIPTION = "Diffutils contains the GNU diff, diff3, \ +sdiff, and cmp utilities. These programs are usually \ +used for creating patch files." +PR = "r3" + +SRC_URI = "${GNU_MIRROR}/diffutils/diffutils-${PV}.tar.gz" + +inherit autotools update-alternatives gettext + +# diffutils assumes non-glibc compilation with uclibc and +# this causes it to generate its own implementations of +# standard functionality. regex.c actually breaks compilation +# because it uses __mempcpy, there are other things (TBD: +# see diffutils.mk in buildroot) +EXTRA_OECONF_linux-uclibc = "--without-included-regex" + +do_install_append () { + mv ${D}${bindir}/diff ${D}${bindir}/diff.${PN} + mv ${D}${bindir}/cmp ${D}${bindir}/cmp.${PN} +} + +ALTERNATIVE_NAME = "diff" +ALTERNATIVE_PATH = "diff.${PN}" +ALTERNATIVE_PRIORITY = "100" + +pkg_postinst_${PN} () { + +update-alternatives --install /usr/bin/cmp cmp cmp.diffutils 100 + +} + +pkg_postrm_${PN} () { + +update-alternatives --remove cmp cmp.diffutils + +} diff --git a/meta/recipes-extended/findutils/findutils-4.2.31/gnulib-extension.patch b/meta/recipes-extended/findutils/findutils-4.2.31/gnulib-extension.patch new file mode 100644 index 0000000000..2bc54e9290 --- /dev/null +++ b/meta/recipes-extended/findutils/findutils-4.2.31/gnulib-extension.patch @@ -0,0 +1,54 @@ +the old AC_USE_SYSTEM_EXTENSIONS won't work with AC_GNU_SOURCE + +against 4.2.31 +07/08/2010 - qhe + +diff --git a/gnulib/m4/extensions.m4 b/gnulib/m4/extensions.m4 +index 143a9e5..0f27ceb 100644 +--- a/gnulib/m4/extensions.m4 ++++ b/gnulib/m4/extensions.m4 +@@ -12,44 +12,6 @@ + # enough in this area it's likely we'll need to redefine + # AC_USE_SYSTEM_EXTENSIONS for quite some time. + +-# AC_USE_SYSTEM_EXTENSIONS +-# ------------------------ +-# Enable extensions on systems that normally disable them, +-# typically due to standards-conformance issues. +-AC_DEFUN([AC_USE_SYSTEM_EXTENSIONS], +-[ +- AC_BEFORE([$0], [AC_COMPILE_IFELSE]) +- AC_BEFORE([$0], [AC_RUN_IFELSE]) +- +- AC_REQUIRE([AC_GNU_SOURCE]) +- AC_REQUIRE([AC_AIX]) +- AC_REQUIRE([AC_MINIX]) +- +- AH_VERBATIM([__EXTENSIONS__], +-[/* Enable extensions on Solaris. */ +-#ifndef __EXTENSIONS__ +-# undef __EXTENSIONS__ +-#endif +-#ifndef _POSIX_PTHREAD_SEMANTICS +-# undef _POSIX_PTHREAD_SEMANTICS +-#endif +-#ifndef _TANDEM_SOURCE +-# undef _TANDEM_SOURCE +-#endif]) +- AC_CACHE_CHECK([whether it is safe to define __EXTENSIONS__], +- [ac_cv_safe_to_define___extensions__], +- [AC_COMPILE_IFELSE( +- [AC_LANG_PROGRAM([ +-# define __EXTENSIONS__ 1 +- AC_INCLUDES_DEFAULT])], +- [ac_cv_safe_to_define___extensions__=yes], +- [ac_cv_safe_to_define___extensions__=no])]) +- test $ac_cv_safe_to_define___extensions__ = yes && +- AC_DEFINE([__EXTENSIONS__]) +- AC_DEFINE([_POSIX_PTHREAD_SEMANTICS]) +- AC_DEFINE([_TANDEM_SOURCE]) +-]) +- + # gl_USE_SYSTEM_EXTENSIONS + # ------------------------ + # Enable extensions on systems that normally disable them, diff --git a/meta/recipes-extended/findutils/findutils-4.4.2/01-27017.patch b/meta/recipes-extended/findutils/findutils-4.4.2/01-27017.patch new file mode 100644 index 0000000000..b61f67b12d --- /dev/null +++ b/meta/recipes-extended/findutils/findutils-4.4.2/01-27017.patch @@ -0,0 +1,779 @@ +commit af974034b68bf59337c7a384e488a518a77dfecd +Author: James Youngman +Date: Sat Jul 11 19:55:27 2009 +0100 + + Fix Savannah bug #27017: find -D opt / -fstype ext3 -print , -quit coredump. + + Fix Savannah bug #27017: find -D opt / -fstype ext3 -print , -quit + coredumps. + * find/tree.c (set_new_parent): Initialise struct + predicate->arg_text to NULL (instead of leaving it uninitialised). + (get_new_pred_noarg): Likewise. + (get_new_pred): Initialise predicate->arg_text to + "ThisShouldBeSetToSomethingElse" to make it easier to notice + bugs. + (get_new_pred_chk_op): Use get_new_pred_noarg. + (print_predicate): Use an if statement instead of + two ternary operators. + * find/util.c (insert_primary_withpred): Accept new argument, arg, + being the argument (if any) of this predicate. Pass it to + get_new_pred_chk_op. + (insert_primary): Likewise (pass arg to insert_primary_withpred). + (insert_primary_noarg): New function; calls insert_primary with + arg=NULL. + * find/parser.c (collect_arg_stat_info): Add an output parameter; + the filename from which we collected the stat information. + (parse_closeparen, parse_delete, parse_and, parse_or, + parse_comma): Use get_new_pred_noarg. + (parse_cnewer, parse_newer, parse_anewer): Use new + collect_arg_stat_info and insert_primary interface. + (parse_print, parse_prune, parse_nouser, parse_empty): Use + insert_primary_noarg. + (parse_accesscheck, parse_false): Use insert_primary_noarg. + (parse_used, parse_iname, parse_fprint, insert_fprint, + parse_fstype, parse_ilname): Use new collect_arg and + insert_primary interfaces. + (parse_ipath, parse_lname, do_parse_xmin, parse_name, parse_path, + parse_perm, parse_size, parse_user, parse_time): Use new + collect_arg and insert_primary_withpred interface. + (parse_negate, parse_openparen): Use new get_new_pred_chk_op interface. + (parse_newerXY, parse_nogroup): Use new insert_primary interface. + (insert_regex, parse_samefile): Use new insert_primary_withpred + interface. + (insert_type, insert_fprintf, new_insert_exec_ok, insert_num): Use + new insert_primary_withpred interface. + * find/defs.h (struct predicate.arg_text): make const. + Add declarations for new function get_new_pred_noarg and + insert_primary_noarg. Add 'arg' parameter to get_new_pred_chk_op + and insert_primary_withpred. + +diff --git a/ChangeLog b/ChangeLog +index 6e346b8..e8ba0f8 100644 +--- a/ChangeLog ++++ b/ChangeLog +@@ -1,0 +1,45 @@ ++2009-07-11 James Youngman ++ ++ Fix Savannah bug #27017: find -D opt / -fstype ext3 -print , -quit ++ coredumps. ++ * find/tree.c (set_new_parent): Initialise struct ++ predicate->arg_text to NULL (instead of leaving it uninitialised). ++ (get_new_pred_noarg): Likewise. ++ (get_new_pred): Initialise predicate->arg_text to ++ "ThisShouldBeSetToSomethingElse" to make it easier to notice ++ bugs. ++ (get_new_pred_chk_op): Use get_new_pred_noarg. ++ (print_predicate): Use an if statement instead of ++ two ternary operators. ++ * find/util.c (insert_primary_withpred): Accept new argument, arg, ++ being the argument (if any) of this predicate. Pass it to ++ get_new_pred_chk_op. ++ (insert_primary): Likewise (pass arg to insert_primary_withpred). ++ (insert_primary_noarg): New function; calls insert_primary with ++ arg=NULL. ++ * find/parser.c (collect_arg_stat_info): Add an output parameter; ++ the filename from which we collected the stat information. ++ (parse_closeparen, parse_delete, parse_and, parse_or, ++ parse_comma): Use get_new_pred_noarg. ++ (parse_cnewer, parse_newer, parse_anewer): Use new ++ collect_arg_stat_info and insert_primary interface. ++ (parse_print, parse_prune, parse_nouser, parse_empty): Use ++ insert_primary_noarg. ++ (parse_accesscheck, parse_false): Use insert_primary_noarg. ++ (parse_used, parse_iname, parse_fprint, insert_fprint, ++ parse_fstype, parse_ilname): Use new collect_arg and ++ insert_primary interfaces. ++ (parse_ipath, parse_lname, do_parse_xmin, parse_name, parse_path, ++ parse_perm, parse_size, parse_user, parse_time): Use new ++ collect_arg and insert_primary_withpred interface. ++ (parse_negate, parse_openparen): Use new get_new_pred_chk_op interface. ++ (parse_newerXY, parse_nogroup): Use new insert_primary interface. ++ (insert_regex, parse_samefile): Use new insert_primary_withpred ++ interface. ++ (insert_type, insert_fprintf, new_insert_exec_ok, insert_num): Use ++ new insert_primary_withpred interface. ++ * find/defs.h (struct predicate.arg_text): make const. ++ Add declarations for new function get_new_pred_noarg and ++ insert_primary_noarg. Add 'arg' parameter to get_new_pred_chk_op ++ and insert_primary_withpred. ++ +diff --git a/find/defs.h b/find/defs.h +index 1708d83..4539fd9 100644 +--- a/find/defs.h ++++ b/find/defs.h +@@ -297,7 +297,7 @@ struct predicate + boolean artificial; + + /* The raw text of the argument of this predicate. */ +- char *arg_text; ++ const char *arg_text; + + /* Information needed by the predicate processor. + Next to each member are listed the predicates that use it. */ +@@ -480,13 +480,16 @@ void show_success_rates(const struct predicate *node); + /* tree.c */ + struct predicate * build_expression_tree PARAMS((int argc, char *argv[], int end_of_leading_options)); + struct predicate * get_eval_tree PARAMS((void)); ++struct predicate *get_new_pred_noarg (const struct parser_table *entry); + struct predicate *get_new_pred PARAMS((const struct parser_table *entry)); +-struct predicate *get_new_pred_chk_op PARAMS((const struct parser_table *entry)); ++struct predicate *get_new_pred_chk_op PARAMS((const struct parser_table *entry, ++ const char *arg)); + float calculate_derived_rates PARAMS((struct predicate *p)); + + /* util.c */ +-struct predicate *insert_primary PARAMS((const struct parser_table *entry)); +-struct predicate *insert_primary_withpred PARAMS((const struct parser_table *entry, PRED_FUNC fptr)); ++struct predicate *insert_primary PARAMS((const struct parser_table *entry, const char *arg)); ++struct predicate *insert_primary_noarg PARAMS((const struct parser_table *entry)); ++struct predicate *insert_primary_withpred PARAMS((const struct parser_table *entry, PRED_FUNC fptr, const char *arg)); + void usage PARAMS((FILE *fp, int status, char *msg)); + extern boolean check_nofollow(void); + void complete_pending_execs(struct predicate *p); +diff --git a/find/parser.c b/find/parser.c +index 534b670..2e6b989 100644 +--- a/find/parser.c ++++ b/find/parser.c +@@ -640,11 +640,13 @@ collect_arg(char **argv, int *arg_ptr, const char **collected_arg) + } + + static boolean +-collect_arg_stat_info(char **argv, int *arg_ptr, struct stat *p) ++collect_arg_stat_info(char **argv, int *arg_ptr, struct stat *p, ++ const char **argument) + { + const char *filename; + if (collect_arg(argv, arg_ptr, &filename)) + { ++ *argument = filename; + if (0 == (options.xstat)(filename, p)) + { + return true; +@@ -656,6 +658,7 @@ collect_arg_stat_info(char **argv, int *arg_ptr, struct stat *p) + } + else + { ++ *argument = NULL; + return false; + } + } +@@ -679,7 +682,7 @@ parse_and (const struct parser_table* entry, char **argv, int *arg_ptr) + (void) argv; + (void) arg_ptr; + +- our_pred = get_new_pred (entry); ++ our_pred = get_new_pred_noarg (entry); + our_pred->pred_func = pred_and; + our_pred->p_type = BI_OP; + our_pred->p_prec = AND_PREC; +@@ -691,11 +694,12 @@ static boolean + parse_anewer (const struct parser_table* entry, char **argv, int *arg_ptr) + { + struct stat stat_newer; ++ const char *arg; + + set_stat_placeholders(&stat_newer); +- if (collect_arg_stat_info(argv, arg_ptr, &stat_newer)) ++ if (collect_arg_stat_info(argv, arg_ptr, &stat_newer, &arg)) + { +- struct predicate *our_pred = insert_primary (entry); ++ struct predicate *our_pred = insert_primary (entry, arg); + our_pred->args.reftime.xval = XVAL_ATIME; + our_pred->args.reftime.ts = get_stat_mtime(&stat_newer); + our_pred->args.reftime.kind = COMP_GT; +@@ -713,7 +717,7 @@ parse_closeparen (const struct parser_table* entry, char **argv, int *arg_ptr) + (void) argv; + (void) arg_ptr; + +- our_pred = get_new_pred (entry); ++ our_pred = get_new_pred_noarg (entry); + our_pred->pred_func = pred_closeparen; + our_pred->p_type = CLOSE_PAREN; + our_pred->p_prec = NO_PREC; +@@ -725,11 +729,12 @@ static boolean + parse_cnewer (const struct parser_table* entry, char **argv, int *arg_ptr) + { + struct stat stat_newer; ++ const char *arg; + + set_stat_placeholders(&stat_newer); +- if (collect_arg_stat_info(argv, arg_ptr, &stat_newer)) ++ if (collect_arg_stat_info(argv, arg_ptr, &stat_newer, &arg)) + { +- struct predicate *our_pred = insert_primary (entry); ++ struct predicate *our_pred = insert_primary (entry, arg); + our_pred->args.reftime.xval = XVAL_CTIME; /* like -newercm */ + our_pred->args.reftime.ts = get_stat_mtime(&stat_newer); + our_pred->args.reftime.kind = COMP_GT; +@@ -747,7 +752,7 @@ parse_comma (const struct parser_table* entry, char **argv, int *arg_ptr) + (void) argv; + (void) arg_ptr; + +- our_pred = get_new_pred (entry); ++ our_pred = get_new_pred_noarg (entry); + our_pred->pred_func = pred_comma; + our_pred->p_type = BI_OP; + our_pred->p_prec = COMMA_PREC; +@@ -786,7 +791,7 @@ parse_delete (const struct parser_table* entry, char *argv[], int *arg_ptr) + (void) argv; + (void) arg_ptr; + +- our_pred = insert_primary (entry); ++ our_pred = insert_primary_noarg (entry); + our_pred->side_effects = our_pred->no_default_print = true; + /* -delete implies -depth */ + options.do_dir_first = false; +@@ -831,7 +836,7 @@ parse_empty (const struct parser_table* entry, char **argv, int *arg_ptr) + (void) argv; + (void) arg_ptr; + +- our_pred = insert_primary (entry); ++ our_pred = insert_primary_noarg (entry); + our_pred->est_success_rate = 0.01f; /* assume 1% of files are empty. */ + return true; + } +@@ -856,7 +861,7 @@ parse_false (const struct parser_table* entry, char **argv, int *arg_ptr) + (void) argv; + (void) arg_ptr; + +- our_pred = insert_primary (entry); ++ our_pred = insert_primary_noarg (entry); + our_pred->need_stat = our_pred->need_type = false; + our_pred->side_effects = our_pred->no_default_print = false; + our_pred->est_success_rate = 0.0f; +@@ -866,7 +871,7 @@ parse_false (const struct parser_table* entry, char **argv, int *arg_ptr) + static boolean + insert_fls (const struct parser_table* entry, const char *filename) + { +- struct predicate *our_pred = insert_primary (entry); ++ struct predicate *our_pred = insert_primary_noarg (entry); + if (filename) + open_output_file (filename, &our_pred->args.printf_vec); + else +@@ -899,7 +904,7 @@ parse_fprint (const struct parser_table* entry, char **argv, int *arg_ptr) + const char *filename; + if (collect_arg(argv, arg_ptr, &filename)) + { +- our_pred = insert_primary (entry); ++ our_pred = insert_primary (entry, filename); + open_output_file (filename, &our_pred->args.printf_vec); + our_pred->side_effects = our_pred->no_default_print = true; + our_pred->need_stat = our_pred->need_type = false; +@@ -915,7 +920,7 @@ parse_fprint (const struct parser_table* entry, char **argv, int *arg_ptr) + static boolean + insert_fprint(const struct parser_table* entry, const char *filename) + { +- struct predicate *our_pred = insert_primary (entry); ++ struct predicate *our_pred = insert_primary (entry, filename); + if (filename) + open_output_file (filename, &our_pred->args.printf_vec); + else +@@ -960,7 +965,7 @@ parse_fstype (const struct parser_table* entry, char **argv, int *arg_ptr) + const char *typename; + if (collect_arg(argv, arg_ptr, &typename)) + { +- struct predicate *our_pred = insert_primary (entry); ++ struct predicate *our_pred = insert_primary (entry, typename); + our_pred->args.str = typename; + + /* This is an expensive operation, so although there are +@@ -1090,7 +1095,7 @@ parse_group (const struct parser_table* entry, char **argv, int *arg_ptr) + return false; + } + } +- our_pred = insert_primary (entry); ++ our_pred = insert_primary (entry, groupname); + our_pred->args.gid = gid; + our_pred->est_success_rate = (our_pred->args.numinfo.l_val < 100) ? 0.99 : 0.2; + return true; +@@ -1160,7 +1165,7 @@ parse_ilname (const struct parser_table* entry, char **argv, int *arg_ptr) + const char *name; + if (collect_arg(argv, arg_ptr, &name)) + { +- struct predicate *our_pred = insert_primary (entry); ++ struct predicate *our_pred = insert_primary (entry, name); + our_pred->args.str = name; + /* Use the generic glob pattern estimator to figure out how many + * links will match, but bear in mind that most files won't be links. +@@ -1227,7 +1232,7 @@ parse_iname (const struct parser_table* entry, char **argv, int *arg_ptr) + { + if (check_name_arg("-iname", name)) + { +- struct predicate *our_pred = insert_primary (entry); ++ struct predicate *our_pred = insert_primary (entry, name); + our_pred->need_stat = our_pred->need_type = false; + our_pred->args.str = name; + our_pred->est_success_rate = estimate_pattern_match_rate(name, 0); +@@ -1268,7 +1273,7 @@ parse_ipath (const struct parser_table* entry, char **argv, int *arg_ptr) + fnmatch_sanitycheck (); + if (collect_arg (argv, arg_ptr, &name)) + { +- struct predicate *our_pred = insert_primary_withpred (entry, pred_ipath); ++ struct predicate *our_pred = insert_primary_withpred (entry, pred_ipath, name); + our_pred->need_stat = our_pred->need_type = false; + our_pred->args.str = name; + our_pred->est_success_rate = estimate_pattern_match_rate (name, 0); +@@ -1316,7 +1321,7 @@ parse_lname (const struct parser_table* entry, char **argv, int *arg_ptr) + fnmatch_sanitycheck(); + if (collect_arg(argv, arg_ptr, &name)) + { +- struct predicate *our_pred = insert_primary (entry); ++ struct predicate *our_pred = insert_primary (entry, name); + our_pred->args.str = name; + our_pred->est_success_rate = 0.1 * estimate_pattern_match_rate(name, 0); + return true; +@@ -1391,7 +1396,7 @@ do_parse_xmin (const struct parser_table* entry, + "arithmetic overflow while converting %s " + "minutes to a number of seconds")) + { +- struct predicate *our_pred = insert_primary (entry); ++ struct predicate *our_pred = insert_primary (entry, minutes); + our_pred->args.reftime = tval; + our_pred->est_success_rate = estimate_timestamp_success_rate(tval.ts.tv_sec); + return true; +@@ -1427,7 +1432,7 @@ parse_name (const struct parser_table* entry, char **argv, int *arg_ptr) + fnmatch_sanitycheck(); + if (check_name_arg("-name", name)) + { +- struct predicate *our_pred = insert_primary (entry); ++ struct predicate *our_pred = insert_primary (entry, name); + our_pred->need_stat = our_pred->need_type = false; + our_pred->args.str = name; + our_pred->est_success_rate = estimate_pattern_match_rate(name, 0); +@@ -1445,7 +1450,7 @@ parse_negate (const struct parser_table* entry, char **argv, int *arg_ptr) + (void) &argv; + (void) &arg_ptr; + +- our_pred = get_new_pred_chk_op (entry); ++ our_pred = get_new_pred_chk_op (entry, NULL); + our_pred->pred_func = pred_negate; + our_pred->p_type = UNI_OP; + our_pred->p_prec = NEGATE_PREC; +@@ -1458,11 +1463,12 @@ parse_newer (const struct parser_table* entry, char **argv, int *arg_ptr) + { + struct predicate *our_pred; + struct stat stat_newer; ++ const char *arg; + + set_stat_placeholders(&stat_newer); +- if (collect_arg_stat_info(argv, arg_ptr, &stat_newer)) ++ if (collect_arg_stat_info(argv, arg_ptr, &stat_newer, &arg)) + { +- our_pred = insert_primary (entry); ++ our_pred = insert_primary (entry, arg); + our_pred->args.reftime.ts = get_stat_mtime(&stat_newer); + our_pred->args.reftime.xval = XVAL_MTIME; + our_pred->args.reftime.kind = COMP_GT; +@@ -1530,7 +1536,7 @@ parse_newerXY (const struct parser_table* entry, char **argv, int *arg_ptr) + (*arg_ptr)++; + } + +- our_pred = insert_primary (entry); ++ our_pred = insert_primary (entry, argv[*arg_ptr]); + + + switch (x) +@@ -1623,7 +1629,7 @@ parse_nogroup (const struct parser_table* entry, char **argv, int *arg_ptr) + (void) &argv; + (void) &arg_ptr; + +- our_pred = insert_primary (entry); ++ our_pred = insert_primary (entry, NULL); + our_pred->est_success_rate = 1e-4; + #ifdef CACHE_IDS + if (gid_unused == NULL) +@@ -1660,7 +1666,7 @@ parse_nouser (const struct parser_table* entry, char **argv, int *arg_ptr) + (void) arg_ptr; + + +- our_pred = insert_primary (entry); ++ our_pred = insert_primary_noarg (entry); + our_pred->est_success_rate = 1e-3; + #ifdef CACHE_IDS + if (uid_unused == NULL) +@@ -1716,7 +1722,7 @@ parse_openparen (const struct parser_table* entry, char **argv, int *arg_ptr) + (void) argv; + (void) arg_ptr; + +- our_pred = get_new_pred_chk_op (entry); ++ our_pred = get_new_pred_chk_op (entry, NULL); + our_pred->pred_func = pred_openparen; + our_pred->p_type = OPEN_PAREN; + our_pred->p_prec = NO_PREC; +@@ -1732,7 +1738,7 @@ parse_or (const struct parser_table* entry, char **argv, int *arg_ptr) + (void) argv; + (void) arg_ptr; + +- our_pred = get_new_pred (entry); ++ our_pred = get_new_pred_noarg (entry); + our_pred->pred_func = pred_or; + our_pred->p_type = BI_OP; + our_pred->p_prec = OR_PREC; +@@ -1756,7 +1762,7 @@ parse_path (const struct parser_table* entry, char **argv, int *arg_ptr) + const char *name; + if (collect_arg(argv, arg_ptr, &name)) + { +- struct predicate *our_pred = insert_primary_withpred (entry, pred_path); ++ struct predicate *our_pred = insert_primary_withpred (entry, pred_path, name); + our_pred->need_stat = our_pred->need_type = false; + our_pred->args.str = name; + our_pred->est_success_rate = estimate_pattern_match_rate (name, 0); +@@ -1894,7 +1900,7 @@ parse_perm (const struct parser_table* entry, char **argv, int *arg_ptr) + rate = 0.9986; /* probably matches anything but a broken symlink */ + } + +- our_pred = insert_primary (entry); ++ our_pred = insert_primary (entry, perm_expr); + our_pred->est_success_rate = rate; + if (havekind) + { +@@ -1928,7 +1934,7 @@ parse_print (const struct parser_table* entry, char **argv, int *arg_ptr) + (void) argv; + (void) arg_ptr; + +- our_pred = insert_primary (entry); ++ our_pred = insert_primary_noarg (entry); + /* -print has the side effect of printing. This prevents us + from doing undesired multiple printing when the user has + already specified -print. */ +@@ -1981,7 +1987,7 @@ parse_prune (const struct parser_table* entry, char **argv, int *arg_ptr) + (void) argv; + (void) arg_ptr; + +- our_pred = insert_primary (entry); ++ our_pred = insert_primary_noarg (entry); + if (options.do_dir_first == false) + our_pred->need_stat = our_pred->need_type = false; + /* -prune has a side effect that it does not descend into +@@ -1994,7 +2000,7 @@ parse_prune (const struct parser_table* entry, char **argv, int *arg_ptr) + static boolean + parse_quit (const struct parser_table* entry, char **argv, int *arg_ptr) + { +- struct predicate *our_pred = insert_primary (entry); ++ struct predicate *our_pred = insert_primary_noarg (entry); + (void) argv; + (void) arg_ptr; + our_pred->need_stat = our_pred->need_type = false; +@@ -2036,7 +2042,7 @@ insert_regex (char **argv, + { + struct re_pattern_buffer *re; + const char *error_message; +- struct predicate *our_pred = insert_primary_withpred (entry, pred_regex); ++ struct predicate *our_pred = insert_primary_withpred (entry, pred_regex, rx); + our_pred->need_stat = our_pred->need_type = false; + re = xmalloc (sizeof (struct re_pattern_buffer)); + our_pred->args.regex = re; +@@ -2061,6 +2067,7 @@ static boolean + parse_size (const struct parser_table* entry, char **argv, int *arg_ptr) + { + struct predicate *our_pred; ++ char *arg; + uintmax_t num; + char suffix; + enum comparison_type c_type; +@@ -2073,42 +2080,43 @@ parse_size (const struct parser_table* entry, char **argv, int *arg_ptr) + */ + if ((argv == NULL) || (argv[*arg_ptr] == NULL)) + return false; ++ arg = argv[*arg_ptr]; + +- len = strlen (argv[*arg_ptr]); ++ len = strlen (arg); + if (len == 0) + error (1, 0, _("invalid null argument to -size")); + +- suffix = argv[*arg_ptr][len - 1]; ++ suffix = arg[len - 1]; + switch (suffix) + { + case 'b': + blksize = 512; +- argv[*arg_ptr][len - 1] = '\0'; ++ arg[len - 1] = '\0'; + break; + + case 'c': + blksize = 1; +- argv[*arg_ptr][len - 1] = '\0'; ++ arg[len - 1] = '\0'; + break; + + case 'k': + blksize = 1024; +- argv[*arg_ptr][len - 1] = '\0'; ++ arg[len - 1] = '\0'; + break; + + case 'M': /* Megabytes */ + blksize = 1024*1024; +- argv[*arg_ptr][len - 1] = '\0'; ++ arg[len - 1] = '\0'; + break; + + case 'G': /* Gigabytes */ + blksize = 1024*1024*1024; +- argv[*arg_ptr][len - 1] = '\0'; ++ arg[len - 1] = '\0'; + break; + + case 'w': + blksize = 2; +- argv[*arg_ptr][len - 1] = '\0'; ++ arg[len - 1] = '\0'; + break; + + case '0': +@@ -2127,14 +2135,14 @@ parse_size (const struct parser_table* entry, char **argv, int *arg_ptr) + error (1, 0, _("invalid -size type `%c'"), argv[*arg_ptr][len - 1]); + } + /* TODO: accept fractional megabytes etc. ? */ +- if (!get_num (argv[*arg_ptr], &num, &c_type)) ++ if (!get_num (arg, &num, &c_type)) + { + error(1, 0, + _("Invalid argument `%s%c' to -size"), +- argv[*arg_ptr], (int)suffix); ++ arg, (int)suffix); + return false; + } +- our_pred = insert_primary (entry); ++our_pred = insert_primary (entry, arg); + our_pred->args.size.kind = c_type; + our_pred->args.size.blocksize = blksize; + our_pred->args.size.size = num; +@@ -2162,9 +2170,10 @@ parse_samefile (const struct parser_table* entry, char **argv, int *arg_ptr) + struct predicate *our_pred; + struct stat st, fst; + int fd, openflags; ++ const char *filename; + + set_stat_placeholders(&st); +- if (!collect_arg_stat_info(argv, arg_ptr, &st)) ++ if (!collect_arg_stat_info(argv, arg_ptr, &st, &filename)) + return false; + + set_stat_placeholders(&fst); +@@ -2289,7 +2298,7 @@ parse_samefile (const struct parser_table* entry, char **argv, int *arg_ptr) + } + } + +- our_pred = insert_primary (entry); ++ our_pred = insert_primary (entry, filename); + our_pred->args.samefileid.ino = st.st_ino; + our_pred->args.samefileid.dev = st.st_dev; + our_pred->args.samefileid.fd = fd; +@@ -2350,7 +2359,7 @@ parse_true (const struct parser_table* entry, char **argv, int *arg_ptr) + (void) argv; + (void) arg_ptr; + +- our_pred = insert_primary (entry); ++ our_pred = insert_primary_noarg (entry); + our_pred->need_stat = our_pred->need_type = false; + our_pred->est_success_rate = 1.0f; + return true; +@@ -2369,7 +2378,7 @@ parse_accesscheck (const struct parser_table* entry, char **argv, int *arg_ptr) + struct predicate *our_pred; + (void) argv; + (void) arg_ptr; +- our_pred = insert_primary (entry); ++ our_pred = insert_primary_noarg (entry); + our_pred->need_stat = our_pred->need_type = false; + our_pred->side_effects = our_pred->no_default_print = false; + if (pred_is(our_pred, pred_executable)) +@@ -2414,7 +2423,7 @@ parse_used (const struct parser_table* entry, char **argv, int *arg_ptr) + struct timespec zero = {0,0}; + if (get_relative_timestamp(offset_str, &tval, zero, DAYSECS, errmsg)) + { +- our_pred = insert_primary (entry); ++ our_pred = insert_primary (entry, offset_str); + our_pred->args.reftime = tval; + our_pred->est_success_rate = estimate_file_age_success_rate(tval.ts.tv_sec / DAYSECS); + return true; +@@ -2472,7 +2481,7 @@ parse_user (const struct parser_table* entry, char **argv, int *arg_ptr) + return false; + } + } +- our_pred = insert_primary (entry); ++ our_pred = insert_primary (entry, username); + our_pred->args.uid = uid; + our_pred->est_success_rate = (our_pred->args.uid < 100) ? 0.99 : 0.2; + return true; +@@ -2650,7 +2659,7 @@ insert_type (char **argv, int *arg_ptr, + error(1, 0, _("Unknown argument to -type: %c"), (*typeletter)); + return false; + } +- our_pred = insert_primary_withpred (entry, which_pred); ++ our_pred = insert_primary_withpred (entry, which_pred, typeletter); + our_pred->est_success_rate = rate; + + /* Figure out if we will need to stat the file, because if we don't +@@ -2706,7 +2715,7 @@ insert_fprintf (struct format_val *vec, + struct segment **segmentp; /* Address of current segment. */ + struct predicate *our_pred; + +- our_pred = insert_primary_withpred (entry, func); ++ our_pred = insert_primary_withpred (entry, func, format_const); + our_pred->side_effects = our_pred->no_default_print = true; + our_pred->args.printf_vec = *vec; + our_pred->need_type = false; +@@ -3045,7 +3054,7 @@ new_insert_exec_ok (const char *action, + if ((argv == NULL) || (argv[*arg_ptr] == NULL)) + return false; + +- our_pred = insert_primary_withpred (entry, func); ++ our_pred = insert_primary_withpred (entry, func, "(some -exec* arguments)"); + our_pred->side_effects = our_pred->no_default_print = true; + our_pred->need_type = our_pred->need_stat = false; + +@@ -3374,7 +3383,7 @@ parse_time (const struct parser_table* entry, char *argv[], int *arg_ptr) + if (!get_relative_timestamp(timearg, &tval, origin, DAYSECS, errmsg)) + return false; + +- our_pred = insert_primary (entry); ++ our_pred = insert_primary (entry, orig_timearg); + our_pred->args.reftime = tval; + our_pred->est_success_rate = estimate_timestamp_success_rate(tval.ts.tv_sec); + +@@ -3487,7 +3496,7 @@ insert_num (char **argv, int *arg_ptr, const struct parser_table *entry) + + if (get_num (numstr, &num, &c_type)) + { +- struct predicate *our_pred = insert_primary (entry); ++ struct predicate *our_pred = insert_primary (entry, numstr); + our_pred->args.numinfo.kind = c_type; + our_pred->args.numinfo.l_val = num; + +diff --git a/find/tree.c b/find/tree.c +index 7420c60..60a0601 100644 +--- a/find/tree.c ++++ b/find/tree.c +@@ -269,10 +269,14 @@ predicate_is_cost_free(const struct predicate *p) + /* Prints a predicate */ + void print_predicate(FILE *fp, const struct predicate *p) + { +- fprintf (fp, "%s%s%s", +- p->p_name, +- p->arg_text ? " " : "", +- p->arg_text ? p->arg_text : ""); ++ if (p->arg_text) ++ { ++ fprintf (fp, "%s %s", p->p_name, p->arg_text); ++ } ++ else ++ { ++ fprintf (fp, "%s", p->p_name); ++ } + } + + +@@ -832,7 +836,8 @@ set_new_parent (struct predicate *curr, enum predicate_precedence high_prec, str + new_parent->need_stat = false; + new_parent->need_type = false; + new_parent->p_cost = NeedsNothing; +- ++ new_parent->arg_text = NULL; ++ + switch (high_prec) + { + case COMMA_PREC: +@@ -1393,6 +1398,18 @@ init_pred_perf(struct predicate *pred) + p->visits = p->successes = 0; + } + ++ ++struct predicate * ++get_new_pred_noarg (const struct parser_table *entry) ++{ ++ struct predicate *p = get_new_pred(entry); ++ if (p) ++ { ++ p->arg_text = NULL; ++ } ++ return p; ++} ++ + + /* Return a pointer to a new predicate structure, which has been + linked in as the last one in the predicates list. +@@ -1433,6 +1450,8 @@ get_new_pred (const struct parser_table *entry) + last_pred->no_default_print = false; + last_pred->need_stat = true; + last_pred->need_type = true; ++ last_pred->p_cost = NeedsUnknown; ++ last_pred->arg_text = "ThisShouldBeSetToSomethingElse"; + last_pred->args.str = NULL; + last_pred->pred_next = NULL; + last_pred->pred_left = NULL; +@@ -1449,7 +1468,8 @@ get_new_pred (const struct parser_table *entry) + predicate is an operator. If it isn't, the AND operator is inserted. */ + + struct predicate * +-get_new_pred_chk_op (const struct parser_table *entry) ++get_new_pred_chk_op (const struct parser_table *entry, ++ const char *arg) + { + struct predicate *new_pred; + static const struct parser_table *entry_and = NULL; +@@ -1471,13 +1491,14 @@ get_new_pred_chk_op (const struct parser_table *entry) + case PRIMARY_TYPE: + case CLOSE_PAREN: + /* We need to interpose the and operator. */ +- new_pred = get_new_pred (entry_and); ++ new_pred = get_new_pred_noarg (entry_and); + new_pred->pred_func = pred_and; + new_pred->p_name = "-a"; + new_pred->p_type = BI_OP; + new_pred->p_prec = AND_PREC; + new_pred->need_stat = false; + new_pred->need_type = false; ++ new_pred->arg_text = NULL; + new_pred->args.str = NULL; + new_pred->side_effects = false; + new_pred->no_default_print = false; +@@ -1488,6 +1509,7 @@ get_new_pred_chk_op (const struct parser_table *entry) + } + + new_pred = get_new_pred (entry); ++ new_pred->arg_text = arg; + new_pred->parser_entry = entry; + return new_pred; + } +diff --git a/find/util.c b/find/util.c +index a06eada..cc9a3eb 100644 +--- a/find/util.c ++++ b/find/util.c +@@ -89,11 +89,13 @@ static struct debug_option_assoc debugassoc[] = + operator. */ + + struct predicate * +-insert_primary_withpred (const struct parser_table *entry, PRED_FUNC pred_func) ++insert_primary_withpred (const struct parser_table *entry, ++ PRED_FUNC pred_func, ++ const char *arg) + { + struct predicate *new_pred; + +- new_pred = get_new_pred_chk_op (entry); ++ new_pred = get_new_pred_chk_op (entry, arg); + new_pred->pred_func = pred_func; + new_pred->p_name = entry->parser_name; + new_pred->args.str = NULL; +@@ -118,10 +120,16 @@ insert_primary_withpred (const struct parser_table *entry, PRED_FUNC pred_func) + either not there at all (we are the very first node) or is an + operator. */ + struct predicate * +-insert_primary (const struct parser_table *entry) ++insert_primary (const struct parser_table *entry, const char *arg) + { + assert (entry->pred_func != NULL); +- return insert_primary_withpred(entry, entry->pred_func); ++ return insert_primary_withpred(entry, entry->pred_func, arg); ++} ++ ++struct predicate * ++insert_primary_noarg (const struct parser_table *entry) ++{ ++ return insert_primary(entry, NULL); + } + + diff --git a/meta/recipes-extended/findutils/findutils-4.4.2/02-28824.patch b/meta/recipes-extended/findutils/findutils-4.4.2/02-28824.patch new file mode 100644 index 0000000000..3469712d90 --- /dev/null +++ b/meta/recipes-extended/findutils/findutils-4.4.2/02-28824.patch @@ -0,0 +1,292 @@ +commit 76ed377d6d3e4a83a00cabd401f751b37ecd1e7b +Author: James Youngman +Date: Sat Feb 20 13:11:45 2010 +0000 + + Fix Savannah bug# 28824: "-ctime x" yields "missing argument to `-ctime'". + + * find/parser.c (parse_fls): If the argument is invalid, reverse + the change that collect_arg() made to *arg_ptr (that is, don't + consume the argument). + (parse_fprint0): Likewise. + (parse_gid): Likewise. + (parse_group): Likewise. + (parse_inum): Likewise. + (parse_links): Likewise. + (do_parse_xmin): Likewise. + (parse_name): Likewise. + (parse_printf): Likewise. + (parse_uid): Likewise. + (parse_used): Likewise. + (parse_time): Likewise. + + Signed-off-by: James Youngman + +diff --git a/ChangeLog b/ChangeLog +index d0ce1fe..13539a4 100644 +--- a/ChangeLog ++++ b/ChangeLog +@@ -1,0 +1,19 @@ ++2010-02-20 James Youngman ++ ++ Fix Savannah bug# 28824: "-ctime x" yields "missing argument to ++ `-ctime'". ++ * find/parser.c (parse_fls): If the argument is invalid, reverse ++ the change that collect_arg() made to *arg_ptr (that is, don't ++ consume the argument). ++ (parse_fprint0): Likewise. ++ (parse_gid): Likewise. ++ (parse_group): Likewise. ++ (parse_inum): Likewise. ++ (parse_links): Likewise. ++ (do_parse_xmin): Likewise. ++ (parse_name): Likewise. ++ (parse_printf): Likewise. ++ (parse_uid): Likewise. ++ (parse_used): Likewise. ++ (parse_time): Likewise. ++ +diff --git a/NEWS b/NEWS +index 5394311..4e910df 100644 +--- a/NEWS ++++ b/NEWS +@@ -4,5 +4,8 @@ GNU findutils NEWS - User visible changes. -*- outline -*- (allout) + + ** Bug Fixes + ++#28824: Corrected error message for "-ctime x". ++ Likewise for -gid, -inum, -links, -mmin, -cmin, -amin, ++ -uid, -used, -atime, -mtime, -ctime. + #26537: find -prune now makes sure it has valid stat() information. + +diff --git a/find/parser.c b/find/parser.c +index 2e6b989..08758ee 100644 +--- a/find/parser.c ++++ b/find/parser.c +@@ -886,8 +886,14 @@ static boolean + parse_fls (const struct parser_table* entry, char **argv, int *arg_ptr) + { + const char *filename; +- return collect_arg(argv, arg_ptr, &filename) +- && insert_fls(entry, filename); ++ if (collect_arg(argv, arg_ptr, &filename)) ++ { ++ if (insert_fls(entry, filename)) ++ return true; ++ else ++ --*arg_ptr; /* don't consume the invalid arg. */ ++ } ++ return false; + } + + static boolean +@@ -937,9 +943,13 @@ parse_fprint0 (const struct parser_table* entry, char **argv, int *arg_ptr) + { + const char *filename; + if (collect_arg(argv, arg_ptr, &filename)) +- return insert_fprint(entry, filename); +- else +- return false; ++ { ++ if (insert_fprint(entry, filename)) ++ return true; ++ else ++ --*arg_ptr; /* don't consume the bad arg. */ ++ } ++ return false; + } + + static float estimate_fstype_success_rate(const char *fsname) +@@ -993,6 +1003,7 @@ parse_gid (const struct parser_table* entry, char **argv, int *arg_ptr) + } + else + { ++ --*arg_ptr; /* don't consume the invalid argument. */ + return false; + } + } +@@ -1049,6 +1060,7 @@ static boolean + parse_group (const struct parser_table* entry, char **argv, int *arg_ptr) + { + const char *groupname; ++ const int saved_argc = *arg_ptr; + + if (collect_arg(argv, arg_ptr, &groupname)) + { +@@ -1077,6 +1089,7 @@ parse_group (const struct parser_table* entry, char **argv, int *arg_ptr) + "because it has the unexpected suffix %s"), + quotearg_n_style(0, options.err_quoting_style, groupname), + quotearg_n_style(1, options.err_quoting_style, groupname+gid_len)); ++ *arg_ptr = saved_argc; /* don't consume the invalid argument. */ + return false; + } + } +@@ -1092,6 +1105,7 @@ parse_group (const struct parser_table* entry, char **argv, int *arg_ptr) + { + error(1, 0, _("argument to -group is empty, but should be a group name")); + } ++ *arg_ptr = saved_argc; /* don't consume the invalid argument. */ + return false; + } + } +@@ -1256,6 +1270,7 @@ parse_inum (const struct parser_table* entry, char **argv, int *arg_ptr) + } + else + { ++ --*arg_ptr; /* don't consume the invalid argument. */ + return false; + } + } +@@ -1310,6 +1325,7 @@ parse_links (const struct parser_table* entry, char **argv, int *arg_ptr) + } + else + { ++ --*arg_ptr; /* don't consume the invalid argument. */ + return false; + } + } +@@ -1358,6 +1374,7 @@ insert_depthspec(const struct parser_table* entry, char **argv, int *arg_ptr, + error(1, 0, _("Expected a positive decimal integer argument to %s, but got %s"), + predicate, + quotearg_n_style(0, options.err_quoting_style, depthstr)); ++ /* NOTREACHED */ + return false; + } + /* missing argument */ +@@ -1385,6 +1402,7 @@ do_parse_xmin (const struct parser_table* entry, + enum xval xv) + { + const char *minutes; ++ const int saved_argc = *arg_ptr; + + if (collect_arg(argv, arg_ptr, &minutes)) + { +@@ -1401,6 +1419,11 @@ do_parse_xmin (const struct parser_table* entry, + our_pred->est_success_rate = estimate_timestamp_success_rate(tval.ts.tv_sec); + return true; + } ++ else ++ { ++ /* Don't consume the invalid argument. */ ++ *arg_ptr = saved_argc; ++ } + } + return false; + } +@@ -1427,6 +1450,8 @@ static boolean + parse_name (const struct parser_table* entry, char **argv, int *arg_ptr) + { + const char *name; ++ const int saved_argc = *arg_ptr; ++ + if (collect_arg(argv, arg_ptr, &name)) + { + fnmatch_sanitycheck(); +@@ -1438,6 +1463,10 @@ parse_name (const struct parser_table* entry, char **argv, int *arg_ptr) + our_pred->est_success_rate = estimate_pattern_match_rate(name, 0); + return true; + } ++ else ++ { ++ *arg_ptr = saved_argc; /* don't consume the invalid argument. */ ++ } + } + return false; + } +@@ -1954,11 +1983,21 @@ static boolean + parse_printf (const struct parser_table* entry, char **argv, int *arg_ptr) + { + const char *format; ++ const int saved_argc = *arg_ptr; ++ + if (collect_arg(argv, arg_ptr, &format)) + { + struct format_val fmt; + open_stdout(&fmt); +- return insert_fprintf (&fmt, entry, pred_fprintf, format); ++ if (insert_fprintf (&fmt, entry, pred_fprintf, format)) ++ { ++ return true; ++ } ++ else ++ { ++ *arg_ptr = saved_argc; /* don't consume the invalid argument. */ ++ return false; ++ } + } + return false; + } +@@ -1967,15 +2006,21 @@ static boolean + parse_fprintf (const struct parser_table* entry, char **argv, int *arg_ptr) + { + const char *format, *filename; ++ int saved_argc = *arg_ptr; ++ + if (collect_arg(argv, arg_ptr, &filename)) + { + if (collect_arg(argv, arg_ptr, &format)) + { + struct format_val fmt; + open_output_file (filename, &fmt); +- return insert_fprintf (&fmt, entry, pred_fprintf, format); ++ saved_argc = *arg_ptr; ++ ++ if (insert_fprintf (&fmt, entry, pred_fprintf, format)) ++ return true; + } + } ++ *arg_ptr = saved_argc; /* don't consume the invalid argument. */ + return false; + } + +@@ -2405,6 +2450,7 @@ parse_uid (const struct parser_table* entry, char **argv, int *arg_ptr) + } + else + { ++ --*arg_ptr; /* don't consume the invalid argument. */ + return false; + } + } +@@ -2431,6 +2477,7 @@ parse_used (const struct parser_table* entry, char **argv, int *arg_ptr) + else + { + error(1, 0, _("Invalid argument %s to -used"), offset_str); ++ /*NOTREACHED*/ + return false; + } + } +@@ -2610,6 +2657,7 @@ insert_type (char **argv, int *arg_ptr, + if (strlen(typeletter) != 1u) + { + error(1, 0, _("Arguments to -type should contain only one letter")); ++ /*NOTREACHED*/ + return false; + } + +@@ -2657,6 +2705,7 @@ insert_type (char **argv, int *arg_ptr, + #endif + default: /* None of the above ... nuke 'em. */ + error(1, 0, _("Unknown argument to -type: %c"), (*typeletter)); ++ /*NOTREACHED*/ + return false; + } + our_pred = insert_primary_withpred (entry, which_pred, typeletter); +@@ -3349,6 +3398,7 @@ parse_time (const struct parser_table* entry, char *argv[], int *arg_ptr) + const char *errmsg = "arithmetic overflow while converting %s " + "days to a number of seconds"; + struct timespec origin; ++ const int saved_argc = *arg_ptr; + + if (!collect_arg(argv, arg_ptr, &timearg)) + return false; +@@ -3381,7 +3431,10 @@ parse_time (const struct parser_table* entry, char *argv[], int *arg_ptr) + timearg = orig_timearg; + + if (!get_relative_timestamp(timearg, &tval, origin, DAYSECS, errmsg)) +- return false; ++ { ++ *arg_ptr = saved_argc; /* don't consume the invalid argument */ ++ return false; ++ } + + our_pred = insert_primary (entry, orig_timearg); + our_pred->args.reftime = tval; diff --git a/meta/recipes-extended/findutils/findutils-4.4.2/03-28872.patch b/meta/recipes-extended/findutils/findutils-4.4.2/03-28872.patch new file mode 100644 index 0000000000..8bede38920 --- /dev/null +++ b/meta/recipes-extended/findutils/findutils-4.4.2/03-28872.patch @@ -0,0 +1,56 @@ +commit 5f5eb921765794e8fc58c4bdffa2daa2ae34800f +Author: James Youngman +Date: Sat Feb 20 19:53:13 2010 +0000 + + Fix Savannah bug#28872, Mistake in "Problems with -exec and filenames" + + * doc/find.texi (Problems with -exec and filenames): Add missing + $0 argument in example for sh -c 'something "$@" sh ... + * NEWS: Mention this change. + + Signed-off-by: James Youngman + +diff --git a/ChangeLog b/ChangeLog +index 13539a4..e94ba96 100644 +--- a/ChangeLog ++++ b/ChangeLog +@@ -1,5 +1,10 @@ + 2010-02-20 James Youngman + ++ Fix Savannah bug#28872, Mistake in "Problems with -exec and filenames" ++ * doc/find.texi (Problems with -exec and filenames): Add missing ++ $0 argument in example for sh -c 'something "$@" sh ... ++ * NEWS: Mention this change. ++ + Fix Savannah bug# 28824: "-ctime x" yields "missing argument to + `-ctime'". + * find/parser.c (parse_fls): If the argument is invalid, reverse +diff --git a/NEWS b/NEWS +index 4e910df..4c97be9 100644 +--- a/NEWS ++++ b/NEWS +@@ -4,6 +4,9 @@ GNU findutils NEWS - User visible changes. -*- outline -*- (allout) + + ** Bug Fixes + ++#28872: Mistake in "#safer" example in "Problems with -exec and ++ filenames" section of the Texinfo manual. ++ + #28824: Corrected error message for "-ctime x". + Likewise for -gid, -inum, -links, -mmin, -cmin, -amin, + -uid, -used, -atime, -mtime, -ctime. +diff --git a/doc/find.texi b/doc/find.texi +index 2e5958d..391ffa0 100644 +--- a/doc/find.texi ++++ b/doc/find.texi +@@ -4830,8 +4830,8 @@ problem: + + @example + # safer +-find -exec sh -c 'something "$@@"' @{@} \; +-find -execdir sh -c 'something "$@@"' @{@}\; ++find -exec sh -c 'something "$@@"' sh @{@} \; ++find -execdir sh -c 'something "$@@"' sh @{@}\; + @end example + + This approach is not guaranteed to avoid every problem, but it is much diff --git a/meta/recipes-extended/findutils/findutils.inc b/meta/recipes-extended/findutils/findutils.inc new file mode 100644 index 0000000000..08ca2022ee --- /dev/null +++ b/meta/recipes-extended/findutils/findutils.inc @@ -0,0 +1,19 @@ +DESCRIPTION = "find, locate, and xargs binaries." +HOMEPAGE = "http://www.gnu.org/software/findutils/" +BUGTRACKER = "http://savannah.gnu.org/bugs/?group=findutils" +SECTION = "console/utils" + +# GPLv2+ (<< 4.2.32), GPLv3+ (>= 4.2.32) +LICENSE = "GPLv3+" +LIC_FILES_CHKSUM = "file://COPYING;md5=f27defe1e96c2e1ecd4e0c9be8967949" + +SRC_URI = "${GNU_MIRROR}/findutils/findutils-${PV}.tar.gz" + +inherit autotools gettext + +# diffutils assumes non-glibc compilation with uclibc and +# this causes it to generate its own implementations of +# standard functionality. regex.c actually breaks compilation +# because it uses __mempcpy, there are other things (TBD: +# see diffutils.mk in buildroot) +EXTRA_OECONF_linux-uclibc = "--without-included-regex" diff --git a/meta/recipes-extended/findutils/findutils_4.2.31.bb b/meta/recipes-extended/findutils/findutils_4.2.31.bb new file mode 100644 index 0000000000..2804a3ba3a --- /dev/null +++ b/meta/recipes-extended/findutils/findutils_4.2.31.bb @@ -0,0 +1,37 @@ +DESCRIPTION = "find, locate, and xargs binaries." +HOMEPAGE = "http://www.gnu.org/software/findutils/" +BUGTRACKER = "http://savannah.gnu.org/bugs/?group=findutils" +SECTION = "console/utils" + +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552" +PR = "r1" + +SRC_URI = "${GNU_MIRROR}/findutils/findutils-${PV}.tar.gz \ + file://gnulib-extension.patch" + +inherit autotools gettext + +# diffutils assumes non-glibc compilation with uclibc and +# this causes it to generate its own implementations of +# standard functionality. regex.c actually breaks compilation +# because it uses __mempcpy, there are other things (TBD: +# see diffutils.mk in buildroot) +EXTRA_OECONF_linux-uclibc = "--without-included-regex" + +do_install_append () { + if [ -e ${D}${bindir}/find ]; then + mv ${D}${bindir}/find ${D}${bindir}/find.${PN} + mv ${D}${bindir}/xargs ${D}${bindir}/xargs.${PN} + fi +} + +pkg_postinst_${PN} () { + for i in find xargs; do update-alternatives --install ${bindir}/$i $i $i.${PN} 100; done +} + +pkg_prerm_${PN} () { + for i in find xargs; do update-alternatives --remove $i $i.${PN}; done +} + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-extended/findutils/findutils_4.4.2.bb b/meta/recipes-extended/findutils/findutils_4.4.2.bb new file mode 100644 index 0000000000..18514f36ea --- /dev/null +++ b/meta/recipes-extended/findutils/findutils_4.4.2.bb @@ -0,0 +1,27 @@ +require findutils.inc + +PR = "r0" + +SRC_URI += "file://01-27017.patch \ + file://02-28824.patch \ + file://03-28872.patch" + +# http://savannah.gnu.org/bugs/?27299 +EXTRA_OECONF += "gl_cv_func_wcwidth_works=yes" + +do_install_append () { + if [ -e ${D}${bindir}/find ]; then + mv ${D}${bindir}/find ${D}${bindir}/find.${PN} + mv ${D}${bindir}/xargs ${D}${bindir}/xargs.${PN} + fi +} + +pkg_postinst_${PN} () { + for i in find xargs; do update-alternatives --install ${bindir}/$i $i $i.${PN} 100; done +} + +pkg_prerm_${PN} () { + for i in find xargs; do update-alternatives --remove $i $i.${PN}; done +} + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-extended/gperf/gperf.inc b/meta/recipes-extended/gperf/gperf.inc new file mode 100644 index 0000000000..a521e0943b --- /dev/null +++ b/meta/recipes-extended/gperf/gperf.inc @@ -0,0 +1,22 @@ +DESCRIPTION = "GNU gperf is a perfect hash function generator" +HOMEPAGE = "http://www.gnu.org/software/gperf" +SUMMARY = "Generate a perfect hash function from a set of keywords" +LICENSE = "GPLv3+" +LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \ + file://src/main.cc;firstline=8;endline=19;md5=24688d2dff69bcf5cbea4bc3e4174c5a" + +SRC_URI = "${GNU_MIRROR}/gperf/gperf-${PV}.tar.gz" + +inherit autotools + +# autoreconf couldn't find acinclude.m4 when stepping into subdirectory. Instead of +# duplicating acinclude.m4 in every subdirectory, use absolute include path to aclocal +EXTRA_AUTORECONF += " -I ${S}" + +do_configure_prepend() { + if [ ! -e acinclude.m4 ]; then + cat aclocal.m4 > acinclude.m4 + fi +} + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-extended/gperf/gperf_3.0.3.bb b/meta/recipes-extended/gperf/gperf_3.0.3.bb new file mode 100644 index 0000000000..5cccdf1adb --- /dev/null +++ b/meta/recipes-extended/gperf/gperf_3.0.3.bb @@ -0,0 +1,7 @@ +require gperf.inc + +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=a5f84abb0070adf8a0925d7d534b6e0a \ + file://src/main.cc;firstline=8;endline=19;md5=3eab12ba436c4da725b19b131def6de9" + +PR = "r1" diff --git a/meta/recipes-extended/gperf/gperf_3.0.4.bb b/meta/recipes-extended/gperf/gperf_3.0.4.bb new file mode 100644 index 0000000000..ee532c98d8 --- /dev/null +++ b/meta/recipes-extended/gperf/gperf_3.0.4.bb @@ -0,0 +1,3 @@ +require gperf.inc + +PR = "r0" diff --git a/meta/recipes-extended/grep/grep-2.5.1a/uclibc-fix.patch b/meta/recipes-extended/grep/grep-2.5.1a/uclibc-fix.patch new file mode 100644 index 0000000000..8fc7c4852f --- /dev/null +++ b/meta/recipes-extended/grep/grep-2.5.1a/uclibc-fix.patch @@ -0,0 +1,53 @@ +# Fix to use mempcpy instead of __mempcpy. This is needed for uclibc which +# doesn't define __mempcpy, only mempcpy. Since both uclibc and glibc have +# mempcpy, we'll just use that instead. +# Patch source: OpenEmbedded + +Index: grep-2.5.1/intl/localealias.c +=================================================================== +--- grep-2.5.1.orig/intl/localealias.c 2002-03-14 00:39:06.000000000 +1100 ++++ grep-2.5.1/intl/localealias.c 2007-05-17 13:53:58.000000000 +1000 +@@ -65,7 +65,7 @@ + # define strcasecmp __strcasecmp + + # ifndef mempcpy +-# define mempcpy __mempcpy ++# error "mempcpy not detected" + # endif + # define HAVE_MEMPCPY 1 + # define HAVE___FSETLOCKING 1 +Index: grep-2.5.1/lib/getopt.c +=================================================================== +--- grep-2.5.1.orig/lib/getopt.c 2001-03-04 16:33:12.000000000 +1100 ++++ grep-2.5.1/lib/getopt.c 2007-05-17 13:51:44.000000000 +1000 +@@ -326,7 +326,7 @@ + nonoption_flags_len = nonoption_flags_max_len = 0; + else + { +- memset (__mempcpy (new_str, __getopt_nonoption_flags, ++ memset (mempcpy (new_str, __getopt_nonoption_flags, + nonoption_flags_max_len), + '\0', top + 1 - nonoption_flags_max_len); + nonoption_flags_max_len = top + 1; +@@ -437,7 +437,7 @@ + if (__getopt_nonoption_flags == NULL) + nonoption_flags_max_len = -1; + else +- memset (__mempcpy (__getopt_nonoption_flags, orig_str, len), ++ memset (mempcpy (__getopt_nonoption_flags, orig_str, len), + '\0', nonoption_flags_max_len - len); + } + } +Index: grep-2.5.1/lib/regex.c +=================================================================== +--- grep-2.5.1.orig/lib/regex.c 2001-04-03 04:04:45.000000000 +1000 ++++ grep-2.5.1/lib/regex.c 2007-05-17 13:51:48.000000000 +1000 +@@ -7842,7 +7842,7 @@ + if (msg_size > errbuf_size) + { + #if defined HAVE_MEMPCPY || defined _LIBC +- *((char *) __mempcpy (errbuf, msg, errbuf_size - 1)) = '\0'; ++ *((char *) mempcpy (errbuf, msg, errbuf_size - 1)) = '\0'; + #else + memcpy (errbuf, msg, errbuf_size - 1); + errbuf[errbuf_size - 1] = 0; diff --git a/meta/recipes-extended/grep/grep_2.5.1a.bb b/meta/recipes-extended/grep/grep_2.5.1a.bb new file mode 100644 index 0000000000..d50d5a374e --- /dev/null +++ b/meta/recipes-extended/grep/grep_2.5.1a.bb @@ -0,0 +1,40 @@ +DESCRIPTION = "grep GNU utility" +SECTION = "console/utils" +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3" + +PR = "r1" + +SRC_URI = "${GNU_MIRROR}/grep/grep-${PV}.tar.bz2 \ + file://uclibc-fix.patch" + +SRC_URI[md5sum] = "52202fe462770fa6be1bb667bd6cf30c" +SRC_URI[sha256sum] = "38c8a2bb9223d1fb1b10bdd607cf44830afc92fd451ac4cd07619bf92bdd3132" + +inherit autotools gettext + +EXTRA_OECONF = "--disable-perl-regexp --disable-ncurses" + +do_configure_prepend () { + rm -f ${S}/m4/init.m4 +} + +do_install () { + autotools_do_install + install -d ${D}${base_bindir} + mv ${D}${bindir}/grep ${D}${base_bindir}/grep.${PN} + mv ${D}${bindir}/egrep ${D}${base_bindir}/egrep.${PN} + mv ${D}${bindir}/fgrep ${D}${base_bindir}/fgrep.${PN} +} + +pkg_postinst_${PN} () { + update-alternatives --install ${base_bindir}/grep grep grep.${PN} 100 + update-alternatives --install ${base_bindir}/egrep egrep egrep.${PN} 100 + update-alternatives --install ${base_bindir}/fgrep fgrep fgrep.${PN} 100 +} + +pkg_prerm_${PN} () { + update-alternatives --remove grep grep.${PN} + update-alternatives --remove egrep egrep.${PN} + update-alternatives --remove fgrep fgrep.${PN} +} diff --git a/meta/recipes-extended/gzip/gzip-1.3.12/dup-def-fix.patch b/meta/recipes-extended/gzip/gzip-1.3.12/dup-def-fix.patch new file mode 100644 index 0000000000..8308865a25 --- /dev/null +++ b/meta/recipes-extended/gzip/gzip-1.3.12/dup-def-fix.patch @@ -0,0 +1,45 @@ +gzip uses gnulib, whose header conflict with glibc. This patch rename some function to avoid conflict. + +Signed-off-by: Zhai Edwin +Index: gzip-1.3.12/gzip.c +=================================================================== +--- gzip-1.3.12.orig/gzip.c 2010-08-13 10:29:38.000000000 +0800 ++++ gzip-1.3.12/gzip.c 2010-08-13 10:29:44.000000000 +0800 +@@ -1637,7 +1637,7 @@ + } + } + +- if (futimens (ofd, ofname, timespec) != 0) ++ if (futimens_gnulib (ofd, ofname, timespec) != 0) + { + int e = errno; + WARN ((stderr, "%s: ", program_name)); +Index: gzip-1.3.12/lib/utimens.c +=================================================================== +--- gzip-1.3.12.orig/lib/utimens.c 2010-08-13 10:33:47.000000000 +0800 ++++ gzip-1.3.12/lib/utimens.c 2010-08-13 10:34:02.000000000 +0800 +@@ -75,7 +75,7 @@ + Return 0 on success, -1 (setting errno) on failure. */ + + int +-futimens (int fd ATTRIBUTE_UNUSED, ++futimens_gnulib (int fd ATTRIBUTE_UNUSED, + char const *file, struct timespec const timespec[2]) + { + /* Some Linux-based NFS clients are buggy, and mishandle time stamps +@@ -185,5 +185,5 @@ + int + utimens (char const *file, struct timespec const timespec[2]) + { +- return futimens (-1, file, timespec); ++ return futimens_gnulib (-1, file, timespec); + } +Index: gzip-1.3.12/lib/utimens.h +=================================================================== +--- gzip-1.3.12.orig/lib/utimens.h 2010-08-13 10:14:57.000000000 +0800 ++++ gzip-1.3.12/lib/utimens.h 2010-08-13 10:21:45.000000000 +0800 +@@ -1,3 +1,3 @@ + #include +-int futimens (int, char const *, struct timespec const [2]); ++int futimens_gnulib (int, char const *, struct timespec const [2]); + int utimens (char const *, struct timespec const [2]); diff --git a/meta/recipes-extended/gzip/gzip-1.3.12/m4-extensions-fix.patch b/meta/recipes-extended/gzip/gzip-1.3.12/m4-extensions-fix.patch new file mode 100644 index 0000000000..927377286f --- /dev/null +++ b/meta/recipes-extended/gzip/gzip-1.3.12/m4-extensions-fix.patch @@ -0,0 +1,53 @@ +remove AC_USE_SYSTEM_EXTENSIONS to fix the autoconf error "AC_REQUIRE: circular +dependency of AC_GNU_SOURCE" + +Signed-off-by: Zhai Edwin +Index: gzip-1.3.12/m4/extensions.m4 +=================================================================== +--- gzip-1.3.12.orig/m4/extensions.m4 2010-08-16 14:18:16.000000000 +0800 ++++ gzip-1.3.12/m4/extensions.m4 2010-08-16 14:21:54.000000000 +0800 +@@ -12,44 +12,6 @@ + # enough in this area it's likely we'll need to redefine + # AC_USE_SYSTEM_EXTENSIONS for quite some time. + +-# AC_USE_SYSTEM_EXTENSIONS +-# ------------------------ +-# Enable extensions on systems that normally disable them, +-# typically due to standards-conformance issues. +-AC_DEFUN([AC_USE_SYSTEM_EXTENSIONS], +-[ +- AC_BEFORE([$0], [AC_COMPILE_IFELSE]) +- AC_BEFORE([$0], [AC_RUN_IFELSE]) +- +- AC_REQUIRE([AC_GNU_SOURCE]) +- AC_REQUIRE([AC_AIX]) +- AC_REQUIRE([AC_MINIX]) +- +- AH_VERBATIM([__EXTENSIONS__], +-[/* Enable extensions on Solaris. */ +-#ifndef __EXTENSIONS__ +-# undef __EXTENSIONS__ +-#endif +-#ifndef _POSIX_PTHREAD_SEMANTICS +-# undef _POSIX_PTHREAD_SEMANTICS +-#endif +-#ifndef _TANDEM_SOURCE +-# undef _TANDEM_SOURCE +-#endif]) +- AC_CACHE_CHECK([whether it is safe to define __EXTENSIONS__], +- [ac_cv_safe_to_define___extensions__], +- [AC_COMPILE_IFELSE( +- [AC_LANG_PROGRAM([ +-# define __EXTENSIONS__ 1 +- AC_INCLUDES_DEFAULT])], +- [ac_cv_safe_to_define___extensions__=yes], +- [ac_cv_safe_to_define___extensions__=no])]) +- test $ac_cv_safe_to_define___extensions__ = yes && +- AC_DEFINE([__EXTENSIONS__]) +- AC_DEFINE([_POSIX_PTHREAD_SEMANTICS]) +- AC_DEFINE([_TANDEM_SOURCE]) +-]) +- + # gl_USE_SYSTEM_EXTENSIONS + # ------------------------ + # Enable extensions on systems that normally disable them, diff --git a/meta/recipes-extended/gzip/gzip.inc b/meta/recipes-extended/gzip/gzip.inc new file mode 100644 index 0000000000..28df4d4a5d --- /dev/null +++ b/meta/recipes-extended/gzip/gzip.inc @@ -0,0 +1,38 @@ +DESCRIPTION = "GNU Gzip is a popular data compression program originally written by Jean-loup Gailly for the GNU project. Mark Adler wrote the decompression part" +HOMEPAGE = "http://www.gnu.org/software/gzip/" +SECTION = "console/utils" +# change to GPLv3+ in 2007/07. Previous GPLv2 version is 1.3.12 +LICENSE = "GPLv3+" +LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \ + file://gzip.h;firstline=8;endline=20;md5=e2ec6b91fbe43a18f6081f3bbae46a01" + +SRC_URI = "${GNU_MIRROR}/gzip/${BP}.tar.gz" + +inherit autotools + +do_install () { + autotools_do_install + if [ "${PN}" = "${BPN}" ] ; then + # Rename and move files into /bin (FHS), which is typical place for gzip + install -d ${D}${base_bindir} + mv ${D}${bindir}/gunzip ${D}${base_bindir}/gunzip.${PN} + mv ${D}${bindir}/gzip ${D}${base_bindir}/gzip.${PN} + mv ${D}${bindir}/zcat ${D}${base_bindir}/zcat.${PN} + fi +} + +pkg_postinst_${PN} () { + if [ "${PN}" = "${BPN}" ] ; then + update-alternatives --install ${base_bindir}/gunzip gunzip gunzip.${PN} 100 + update-alternatives --install ${base_bindir}/gzip gzip gzip.${PN} 100 + update-alternatives --install ${base_bindir}/zcat zcat zcat.${PN} 100 + fi +} + +pkg_prerm_${PN} () { + if [ "${PN}" = "${BPN}" ] ; then + update-alternatives --remove gunzip gunzip.${PN} + update-alternatives --remove gzip gzip.${PN} + update-alternatives --remove zcat zcat.${PN} + fi +} diff --git a/meta/recipes-extended/gzip/gzip_1.3.12.bb b/meta/recipes-extended/gzip/gzip_1.3.12.bb new file mode 100644 index 0000000000..c111e2e24d --- /dev/null +++ b/meta/recipes-extended/gzip/gzip_1.3.12.bb @@ -0,0 +1,39 @@ +DESCRIPTION = "Standard GNU compressor" +HOMEPAGE = "http://www.gnu.org/software/gzip" +SECTION = "base" + +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe \ + file://gzip.h;endline=22;md5=c0934ad1900d927f86556153d4c76d23 \ + file://lzw.h;endline=19;md5=c273e09a02edd9801cc74d39683049e9 " + +SRC_URI = "${GNU_MIRROR}/gzip/gzip-${PV}.tar.gz \ + file://m4-extensions-fix.patch;patch=1 \ + file://dup-def-fix.patch;patch=1" + +PR = "r0" + +inherit autotools + +do_install () { + autotools_do_install + # move files into /bin (FHS) + install -d ${D}${base_bindir} + mv ${D}${bindir}/gunzip ${D}${base_bindir}/gunzip.${PN} + mv ${D}${bindir}/gzip ${D}${base_bindir}/gzip.${PN} + mv ${D}${bindir}/zcat ${D}${base_bindir}/zcat.${PN} +} + +pkg_postinst_${PN} () { + update-alternatives --install ${base_bindir}/gunzip gunzip gunzip.${PN} 100 + update-alternatives --install ${base_bindir}/gzip gzip gzip.${PN} 100 + update-alternatives --install ${base_bindir}/zcat zcat zcat.${PN} 100 +} + +pkg_prerm_${PN} () { + update-alternatives --remove gunzip gunzip.${PN} + update-alternatives --remove gzip gzip.${PN} + update-alternatives --remove zcat zcat.${PN} +} + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-extended/gzip/gzip_1.4.bb b/meta/recipes-extended/gzip/gzip_1.4.bb new file mode 100644 index 0000000000..93020ba50b --- /dev/null +++ b/meta/recipes-extended/gzip/gzip_1.4.bb @@ -0,0 +1,5 @@ +require gzip.inc + +PR = "r0" + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-extended/hdparm/hdparm-6.3/bswap.patch b/meta/recipes-extended/hdparm/hdparm-6.3/bswap.patch new file mode 100644 index 0000000000..37fbcb7b38 --- /dev/null +++ b/meta/recipes-extended/hdparm/hdparm-6.3/bswap.patch @@ -0,0 +1,36 @@ + +# +# Patch managed by http://www.holgerschurig.de/patcher.html +# + +--- hdparm-5.8/hdparm.c~bswap ++++ hdparm-5.8/hdparm.c +@@ -20,7 +20,9 @@ + #include + #include + #include +-#include ++#include ++ ++#define le16_to_cpus(x) bswap_16(htons(x)) + + #include "hdparm.h" + +@@ -1160,7 +1162,7 @@ + } + } else { + for(i = 0; i < 0x100; ++i) { +- __le16_to_cpus(&id[i]); ++ le16_to_cpus(&id[i]); + } + identify((void *)id, NULL); + } +@@ -1380,7 +1382,7 @@ + } + for (i = 0; count >= 4; ++i) { + sbuf[i] = (fromhex(b[0]) << 12) | (fromhex(b[1]) << 8) | (fromhex(b[2]) << 4) | fromhex(b[3]); +- __le16_to_cpus((__u16 *)(&sbuf[i])); ++ le16_to_cpus((__u16 *)(&sbuf[i])); + b += 5; + count -= 5; + } diff --git a/meta/recipes-extended/hdparm/hdparm-6.3/uclibc.patch b/meta/recipes-extended/hdparm/hdparm-6.3/uclibc.patch new file mode 100644 index 0000000000..495d7491bb --- /dev/null +++ b/meta/recipes-extended/hdparm/hdparm-6.3/uclibc.patch @@ -0,0 +1,32 @@ +--- hdparm-5.8/hdparm.c.ark 2005-05-22 19:48:34.000000000 +0000 ++++ hdparm-5.8/hdparm.c 2005-05-22 19:52:18.000000000 +0000 +@@ -17,7 +17,9 @@ + #include + #include + #include ++#ifndef __UCLIBC__ + #include ++#endif + #include + #include + #include +--- hdparm-5.8/hdparm.h.ark 2005-05-22 19:51:49.000000000 +0000 ++++ hdparm-5.8/hdparm.h 2005-05-22 19:54:54.000000000 +0000 +@@ -1,6 +1,6 @@ + /* Some prototypes for extern functions. */ + +-#include /* for __u16 */ ++#include + + #if !defined(__GNUC__) && !defined(__attribute__) + #define __attribute__(x) /* if not using GCC, turn off the __attribute__ +@@ -11,7 +11,7 @@ + others, though, were declared in hdparm.c with global scope; since other + functions in that file have static (file) scope, I assume the difference is + intentional. */ +-extern void identify (__u16 *id_supplied, const char *devname); ++extern void identify (uint16_t *id_supplied, const char *devname); + + extern void usage_error(int out) __attribute__((noreturn)); + extern int main(int argc, char **argv) __attribute__((noreturn)); + diff --git a/meta/recipes-extended/hdparm/hdparm_6.3.bb b/meta/recipes-extended/hdparm/hdparm_6.3.bb new file mode 100644 index 0000000000..94d1e6e9bf --- /dev/null +++ b/meta/recipes-extended/hdparm/hdparm_6.3.bb @@ -0,0 +1,14 @@ +DESCRIPTION = "hdparm is a Linux shell utility for viewing \ +and manipulating various IDE drive and driver parameters." +SECTION = "console/utils" +PRIORITY = "optional" +LICENSE = "BSD" + +SRC_URI = "${SOURCEFORGE_MIRROR}/hdparm/hdparm-${PV}.tar.gz \ + file://bswap.patch;patch=1 \ + file://uclibc.patch;patch=1" + +do_install () { + install -d ${D}/${sbindir} ${D}/${mandir}/man8 + oe_runmake 'DESTDIR=${D}' install +} diff --git a/meta/recipes-extended/libidn/libidn_0.6.14.bb b/meta/recipes-extended/libidn/libidn_0.6.14.bb new file mode 100644 index 0000000000..17bb103d9e --- /dev/null +++ b/meta/recipes-extended/libidn/libidn_0.6.14.bb @@ -0,0 +1,26 @@ +DESCRIPTION = "Implementation of the Stringprep, Punycode and IDNA specifications defined by the IETF Internationalized Domain Names (IDN) working group." +HOMEPAGE = "http://www.gnu.org/software/libidn/" +SECTION = "libs" +LICENSE = "LGPLv2.1+ & GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a \ + file://COPYING.LIB;md5=a6f89e2100d9b6cdffcea4f398e37343 \ + file://lib/idna.h;firstline=6;endline=18;md5=6d9d5532eb28b99e860262281c540d02 \ + file://src/idn.c;firstline=6;endline=18;md5=41b6aec531cc6a9d54a6c4deee251bf5" +PR = "r0" + +inherit pkgconfig autotools gettext + +SRC_URI = "http://alpha.gnu.org/gnu/libidn/${P}.tar.gz" + +EXTRA_OECONF = " --disable-tld" + +do_configure_prepend() { + # this version of libidn copies AC_USE_SYSTEM_EXTENSIONS from + # autoconf CVS because atm the autoconf it uses is a bit old + # now with cross autotool, that macro is already there and this + # local definition causes circular dependency. Actually AC_GNU_SOURCE + # is identical to AC_USE_SYSTEM_EXTENSIONS. So remove all local + # references to the latter here. + sed -i -e "/AC_REQUIRE(\[gl_USE_SYSTEM_EXTENSIONS/d" ${S}/lib/gl/m4/gnulib-comp.m4 + rm -f ${S}/lib/gl/m4/extensions.m4 +} diff --git a/meta/recipes-extended/libidn/libidn_1.19.bb b/meta/recipes-extended/libidn/libidn_1.19.bb new file mode 100644 index 0000000000..2e29ade14c --- /dev/null +++ b/meta/recipes-extended/libidn/libidn_1.19.bb @@ -0,0 +1,20 @@ +DESCRIPTION = "Implementation of the Stringprep, Punycode and IDNA specifications defined by the IETF Internationalized Domain Names (IDN) working group." +HOMEPAGE = "http://www.gnu.org/software/libidn/" +SECTION = "libs" +LICENSE = "LGPLv2.1+ & GPLv3+" +LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \ + file://COPYING.LIB;md5=a6f89e2100d9b6cdffcea4f398e37343 \ + file://lib/idna.h;firstline=6;endline=18;md5=643beb30bf98d8c4aed59a51b86fe9ea \ + file://src/idn.c;firstline=6;endline=18;md5=07a57d46977b38a2557aac446dda35dd" +PR = "r0" + +inherit pkgconfig autotools gettext + +SRC_URI = "http://ftp.gnu.org/gnu/libidn/${P}.tar.gz" + +# command tool is under GPLv3+, while libidn itself is under LGPLv2.1+ +# so package command into a separate package +PACKAGES =+ "idn" +FILES_idn = "${bindir}/*" + +EXTRA_OECONF = " --disable-tld" diff --git a/meta/recipes-extended/lsof/lsof_4.83.bb b/meta/recipes-extended/lsof/lsof_4.83.bb new file mode 100644 index 0000000000..078da64305 --- /dev/null +++ b/meta/recipes-extended/lsof/lsof_4.83.bb @@ -0,0 +1,41 @@ +DESCRIPTION = "Lsof is a Unix-specific diagnostic tool. \ +Its name stands for LiSt Open Files, and it does just that." +SECTION = "devel" +LICENSE = "BSD" + +PR = "r0" + +SRC_URI = "ftp://lsof.itap.purdue.edu/pub/tools/unix/lsof/lsof_${PV}.tar.bz2" +LOCALSRC = "file://${WORKDIR}/lsof_${PV}/lsof_${PV}_src.tar" +S = "${WORKDIR}/lsof_${PV}_src" + +python do_unpack () { + bb.build.exec_func('base_do_unpack', d) + src_uri = bb.data.getVar('SRC_URI', d) + bb.data.setVar('SRC_URI', '${LOCALSRC}', d) + bb.build.exec_func('base_do_unpack', d) + bb.data.setVar('SRC_URI', src_uri, d) +} + +export LSOF_OS = "${TARGET_OS}" +LSOF_OS_linux-uclibc = "linux" +LSOF_OS_linux-gnueabi = "linux" +export LSOF_INCLUDE = "${STAGING_INCDIR}" + +do_configure () { + yes | ./Configure ${LSOF_OS} +} + +export I = "${STAGING_INCDIR}" +export L = "${STAGING_INCDIR}" +export EXTRA_OEMAKE = "" + +do_compile () { + oe_runmake 'CC=${CC}' 'CFGL=${LDFLAGS} -L./lib -llsof' 'DEBUG=' 'INCL=${CFLAGS}' +} + +do_install () { + install -d ${D}${sbindir} ${D}${mandir}/man8 + install -m 4755 lsof ${D}${sbindir}/lsof + install -m 0644 lsof.8 ${D}${mandir}/man8/lsof.8 +} diff --git a/meta/recipes-extended/pam/libpam-1.1.1/99_pam b/meta/recipes-extended/pam/libpam-1.1.1/99_pam new file mode 100644 index 0000000000..97e990d10b --- /dev/null +++ b/meta/recipes-extended/pam/libpam-1.1.1/99_pam @@ -0,0 +1 @@ +d root root 0755 /var/run/sepermit none diff --git a/meta/recipes-extended/pam/libpam-1.1.1/disable_crossbinary.patch b/meta/recipes-extended/pam/libpam-1.1.1/disable_crossbinary.patch new file mode 100644 index 0000000000..43359b08fe --- /dev/null +++ b/meta/recipes-extended/pam/libpam-1.1.1/disable_crossbinary.patch @@ -0,0 +1,34 @@ +padout should be compiled using the native compiler but isn't. +Disable this piece of documentation for now. + +RP + +Index: Linux-PAM-1.0.2/doc/specs/Makefile.am +=================================================================== +--- Linux-PAM-1.0.2.orig/doc/specs/Makefile.am 2008-11-04 21:06:23.000000000 +0000 ++++ Linux-PAM-1.0.2/doc/specs/Makefile.am 2008-11-04 21:07:06.000000000 +0000 +@@ -2,21 +2,8 @@ + # Copyright (c) 2005, 2006 Thorsten Kukuk + # + +-CLEANFILES = draft-morgan-pam-current.txt *~ ++CLEANFILES = *~ + +-EXTRA_DIST = draft-morgan-pam.raw std-agent-id.raw rfc86.0.txt ++EXTRA_DIST = std-agent-id.raw rfc86.0.txt + +-draft-morgan-pam-current.txt: padout draft-morgan-pam.raw +- ./padout < $(srcdir)/draft-morgan-pam.raw > draft-morgan-pam-current.txt +- +-AM_YFLAGS = -d +- +-BUILT_SOURCES = parse_y.h +- +-noinst_PROGRAMS = padout +- +-padout_SOURCES = parse_l.l parse_y.y +- +-padout_LDADD = @LEXLIB@ +- +-doc_DATA = draft-morgan-pam-current.txt rfc86.0.txt ++doc_DATA = rfc86.0.txt diff --git a/meta/recipes-extended/pam/libpam-1.1.1/pam.d/common-account b/meta/recipes-extended/pam/libpam-1.1.1/pam.d/common-account new file mode 100644 index 0000000000..316b17337b --- /dev/null +++ b/meta/recipes-extended/pam/libpam-1.1.1/pam.d/common-account @@ -0,0 +1,25 @@ +# +# /etc/pam.d/common-account - authorization settings common to all services +# +# This file is included from other service-specific PAM config files, +# and should contain a list of the authorization modules that define +# the central access policy for use on the system. The default is to +# only deny service to users whose accounts are expired in /etc/shadow. +# +# As of pam 1.0.1-6, this file is managed by pam-auth-update by default. +# To take advantage of this, it is recommended that you configure any +# local modules either before or after the default block, and use +# pam-auth-update to manage selection of other modules. See +# pam-auth-update(8) for details. +# + +# here are the per-package modules (the "Primary" block) +account [success=1 new_authtok_reqd=done default=ignore] pam_unix.so +# here's the fallback if no module succeeds +account requisite pam_deny.so +# prime the stack with a positive return value if there isn't one already; +# this avoids us returning an error just because nothing sets a success code +# since the modules above will each just jump around +account required pam_permit.so +# and here are more per-package modules (the "Additional" block) +# end of pam-auth-update config diff --git a/meta/recipes-extended/pam/libpam-1.1.1/pam.d/common-auth b/meta/recipes-extended/pam/libpam-1.1.1/pam.d/common-auth new file mode 100644 index 0000000000..460b69f198 --- /dev/null +++ b/meta/recipes-extended/pam/libpam-1.1.1/pam.d/common-auth @@ -0,0 +1,18 @@ +# +# /etc/pam.d/common-auth - authentication settings common to all services +# +# This file is included from other service-specific PAM config files, +# and should contain a list of the authentication modules that define +# the central authentication scheme for use on the system +# (e.g., /etc/shadow, LDAP, Kerberos, etc.). The default is to use the +# traditional Unix authentication mechanisms. + +# here are the per-package modules (the "Primary" block) +auth [success=1 default=ignore] pam_unix.so nullok_secure +# here's the fallback if no module succeeds +auth requisite pam_deny.so +# prime the stack with a positive return value if there isn't one already; +# this avoids us returning an error just because nothing sets a success code +# since the modules above will each just jump around +auth required pam_permit.so +# and here are more per-package modules (the "Additional" block) diff --git a/meta/recipes-extended/pam/libpam-1.1.1/pam.d/common-password b/meta/recipes-extended/pam/libpam-1.1.1/pam.d/common-password new file mode 100644 index 0000000000..3896057328 --- /dev/null +++ b/meta/recipes-extended/pam/libpam-1.1.1/pam.d/common-password @@ -0,0 +1,26 @@ +# +# /etc/pam.d/common-password - password-related modules common to all services +# +# This file is included from other service-specific PAM config files, +# and should contain a list of modules that define the services to be +# used to change user passwords. The default is pam_unix. + +# Explanation of pam_unix options: +# +# The "sha512" option enables salted SHA512 passwords. Without this option, +# the default is Unix crypt. Prior releases used the option "md5". +# +# The "obscure" option replaces the old `OBSCURE_CHECKS_ENAB' option in +# login.defs. +# +# See the pam_unix manpage for other options. + +# here are the per-package modules (the "Primary" block) +password [success=1 default=ignore] pam_unix.so obscure sha512 +# here's the fallback if no module succeeds +password requisite pam_deny.so +# prime the stack with a positive return value if there isn't one already; +# this avoids us returning an error just because nothing sets a success code +# since the modules above will each just jump around +password required pam_permit.so +# and here are more per-package modules (the "Additional" block) diff --git a/meta/recipes-extended/pam/libpam-1.1.1/pam.d/common-session b/meta/recipes-extended/pam/libpam-1.1.1/pam.d/common-session new file mode 100644 index 0000000000..a594dd9d90 --- /dev/null +++ b/meta/recipes-extended/pam/libpam-1.1.1/pam.d/common-session @@ -0,0 +1,19 @@ +# +# /etc/pam.d/common-session - session-related modules common to all services +# +# This file is included from other service-specific PAM config files, +# and should contain a list of modules that define tasks to be performed +# at the start and end of sessions of *any* kind (both interactive and +# non-interactive). +# + +# here are the per-package modules (the "Primary" block) +session [default=1] pam_permit.so +# here's the fallback if no module succeeds +session requisite pam_deny.so +# prime the stack with a positive return value if there isn't one already; +# this avoids us returning an error just because nothing sets a success code +# since the modules above will each just jump around +session required pam_permit.so +# and here are more per-package modules (the "Additional" block) +session required pam_unix.so diff --git a/meta/recipes-extended/pam/libpam-1.1.1/pam.d/common-session-noninteractive b/meta/recipes-extended/pam/libpam-1.1.1/pam.d/common-session-noninteractive new file mode 100644 index 0000000000..b110bb2b49 --- /dev/null +++ b/meta/recipes-extended/pam/libpam-1.1.1/pam.d/common-session-noninteractive @@ -0,0 +1,19 @@ +# +# /etc/pam.d/common-session-noninteractive - session-related modules +# common to all non-interactive services +# +# This file is included from other service-specific PAM config files, +# and should contain a list of modules that define tasks to be performed +# at the start and end of all non-interactive sessions. +# + +# here are the per-package modules (the "Primary" block) +session [default=1] pam_permit.so +# here's the fallback if no module succeeds +session requisite pam_deny.so +# prime the stack with a positive return value if there isn't one already; +# this avoids us returning an error just because nothing sets a success code +# since the modules above will each just jump around +session required pam_permit.so +# and here are more per-package modules (the "Additional" block) +session required pam_unix.so diff --git a/meta/recipes-extended/pam/libpam-1.1.1/pam.d/other b/meta/recipes-extended/pam/libpam-1.1.1/pam.d/other new file mode 100644 index 0000000000..6e40cd0c02 --- /dev/null +++ b/meta/recipes-extended/pam/libpam-1.1.1/pam.d/other @@ -0,0 +1,27 @@ +# +# /etc/pam.d/other - specify the PAM fallback behaviour +# +# Note that this file is used for any unspecified service; for example +#if /etc/pam.d/cron specifies no session modules but cron calls +#pam_open_session, the session module out of /etc/pam.d/other is +#used. + +#If you really want nothing to happen then use pam_permit.so or +#pam_deny.so as appropriate. + +# We use pam_warn.so to generate syslog notes that the 'other' +#fallback rules are being used (as a hint to suggest you should setup +#specific PAM rules for the service and aid to debugging). We then +#fall back to the system default in /etc/pam.d/common-* + +auth required pam_warn.so +auth include common-auth + +account required pam_warn.so +account include common-account + +password required pam_warn.so +password include common-password + +session required pam_warn.so +session include common-session diff --git a/meta/recipes-extended/pam/libpam_1.1.1.bb b/meta/recipes-extended/pam/libpam_1.1.1.bb new file mode 100644 index 0000000000..536a0f5ce9 --- /dev/null +++ b/meta/recipes-extended/pam/libpam_1.1.1.bb @@ -0,0 +1,73 @@ +DESCRIPTION = "Linux-PAM (Pluggable Authentication Modules for Linux), Basically, it is a flexible mechanism for authenticating users" +HOMEPAGE = "http://www.kernel.org/pub/linux/libs/pam/" +BUGTRACKER = "http://sourceforge.net/projects/pam/support" +# PAM allows dual licensed under GPL and BSD. +# /etc/pam.d comes from Debian libpam-runtime in 2009-11 (at that time +# libpam-runtime-1.0.1 is GPLv2+), by openembedded +LICENSE = "GPLv2+ | BSD" +PR = "r1" + +DEPENDS = "bison flex" +RDEPENDS_${PN}-runtime = "libpam pam-plugin-deny pam-plugin-permit pam-plugin-warn pam-plugin-unix" +RRECOMMENDS_${PN} = "libpam-runtime" + +SRC_URI = "http://www.kernel.org/pub/linux/libs/pam/library/Linux-PAM-${PV}.tar.bz2 \ + file://disable_crossbinary.patch \ + file://99_pam \ + file://pam.d/*" + +EXTRA_OECONF = "--with-db-uniquename=_pam \ + --includedir=${includedir}/security \ + --libdir=${base_libdir} \ + --disable-regenerate-docu" +CFLAGS_append = " -fPIC " + +S = "${WORKDIR}/Linux-PAM-${PV}" + +inherit autotools gettext + +PACKAGES += "${PN}-runtime" +FILES_${PN} = "${base_libdir}/lib*${SOLIBS}" +FILES_${PN}-dbg += "${base_libdir}/security/.debug \ + ${base_libdir}/security/pam_filter/.debug" +FILES_${PN}-dev += "${base_libdir}/security/*.la ${base_libdir}/*.la ${base_libdir}/lib*${SOLIBSDEV}" +FILES_${PN}-runtime = "${sysconfdir}" + +PACKAGES_DYNAMIC += " pam-plugin-*" + +python populate_packages_prepend () { + import os.path + + def pam_plugin_append_file(pn, dir, file): + nf = os.path.join(dir, file) + of = bb.data.getVar('FILES_' + pn, d, True) + if of: + nf = of + " " + nf + bb.data.setVar('FILES_' + pn, nf, d) + + dvar = bb.data.expand('${WORKDIR}/package', d, True) + pam_libdir = bb.data.expand('${base_libdir}/security', d) + pam_sbindir = bb.data.expand('${sbindir}', d) + pam_filterdir = bb.data.expand('${base_libdir}/security/pam_filter', d) + + do_split_packages(d, pam_libdir, '^pam(.*)\.so$', 'pam-plugin%s', 'PAM plugin for %s', extra_depends='') + pam_plugin_append_file('pam-plugin-unix', pam_sbindir, 'unix_chkpwd') + pam_plugin_append_file('pam-plugin-unix', pam_sbindir, 'unix_update') + pam_plugin_append_file('pam-plugin-tally', pam_sbindir, 'pam_tally') + pam_plugin_append_file('pam-plugin-tally2', pam_sbindir, 'pam_tally2') + pam_plugin_append_file('pam-plugin-timestamp', pam_sbindir, 'pam_timestamp_check') + pam_plugin_append_file('pam-plugin-mkhomedir', pam_sbindir, 'mkhomedir_helper') + do_split_packages(d, pam_filterdir, '^(.*)$', 'pam-filter-%s', 'PAM filter for %s', extra_depends='') +} + +do_install() { + autotools_do_install + + # don't install /var/run when populating rootfs. Do it through volatile + rm -rf ${D}/var + install -d ${D}${sysconfdir}/default/volatiles + install -m 0644 ${WORKDIR}/99_pam ${D}/etc/default/volatiles + + install -d ${D}${sysconfdir}/pam.d/ + install -m 0644 ${WORKDIR}/pam.d/* ${D}${sysconfdir}/pam.d/ +} diff --git a/meta/recipes-extended/parted/parted-1.9.0/no_check.patch b/meta/recipes-extended/parted/parted-1.9.0/no_check.patch new file mode 100644 index 0000000000..24a328ceea --- /dev/null +++ b/meta/recipes-extended/parted/parted-1.9.0/no_check.patch @@ -0,0 +1,18 @@ +If check is detected, it makes the builds non-determinstic so just force +it to be disabled. + +RP - 4/11/08 + +Index: parted-1.9.0/configure.ac +=================================================================== +--- parted-1.9.0.orig/configure.ac 2009-07-23 18:52:08.000000000 +0100 ++++ parted-1.9.0/configure.ac 2010-02-02 14:13:56.013905093 +0000 +@@ -477,7 +477,7 @@ + AM_CONDITIONAL([BUILD_LINUX], [test "$OS" = linux]) + + dnl check for "check", unit testing library/header +-PKG_CHECK_MODULES([CHECK], [check >= 0.9.3], have_check=yes, have_check=no) ++have_check=no + if test "$have_check" != "yes"; then + AC_MSG_RESULT([Unable to locate check version 0.9.3 or higher: not building]) + fi diff --git a/meta/recipes-extended/parted/parted-1.9.0/syscalls.patch b/meta/recipes-extended/parted/parted-1.9.0/syscalls.patch new file mode 100644 index 0000000000..6be49968f3 --- /dev/null +++ b/meta/recipes-extended/parted/parted-1.9.0/syscalls.patch @@ -0,0 +1,53 @@ +--- + libparted/arch/linux.c | 13 +++++++++++++ + 1 file changed, 13 insertions(+) + +Index: parted-1.9.0/libparted/arch/linux.c +=================================================================== +--- parted-1.9.0.orig/libparted/arch/linux.c 2009-07-23 18:52:08.000000000 +0100 ++++ parted-1.9.0/libparted/arch/linux.c 2010-02-02 14:14:16.523904768 +0000 +@@ -17,6 +17,8 @@ + + #define PROC_DEVICES_BUFSIZ 16384 + ++#include ++ + #include + #include + +@@ -1477,12 +1479,14 @@ + + #if SIZEOF_OFF_T < 8 + ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20) + static _syscall5(int,_llseek, + unsigned int, fd, + unsigned long, offset_high, + unsigned long, offset_low, + loff_t*, result, + unsigned int, origin) ++#endif + + loff_t + llseek (unsigned int fd, loff_t offset, unsigned int whence) +@@ -1490,11 +1494,20 @@ + loff_t result; + int retval; + ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20) + retval = _llseek(fd, + ((unsigned long long)offset) >> 32, + ((unsigned long long)offset) & 0xffffffff, + &result, + whence); ++#else ++ retval = syscall(__NR__llseek, fd, ++ ((unsigned long long)offset) >> 32, ++ ((unsigned long long)offset) & 0xffffffff, ++ &result, ++ whence); ++#endif ++ + return (retval==-1 ? (loff_t) retval : result); + } + diff --git a/meta/recipes-extended/parted/parted_1.9.0.bb b/meta/recipes-extended/parted/parted_1.9.0.bb new file mode 100644 index 0000000000..f2a265187f --- /dev/null +++ b/meta/recipes-extended/parted/parted_1.9.0.bb @@ -0,0 +1,16 @@ +DESCRIPTION = "parted, the GNU partition resizing program" +HOMEPAGE = "http://www.gnu.org/software/parted/parted.html" +LICENSE = "GPLv2" +SECTION = "console/tools" +DEPENDS = "readline e2fsprogs" +PR = "r3" + +SRC_URI = "${GNU_MIRROR}/parted/parted-${PV}.tar.gz \ + file://no_check.patch;patch=1 \ + file://syscalls.patch;patch=1 " + +EXTRA_OECONF = "--disable-Werror --disable-device-mapper" + +inherit autotools pkgconfig gettext + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-extended/polkit/polkit-gnome_0.96.bb b/meta/recipes-extended/polkit/polkit-gnome_0.96.bb new file mode 100644 index 0000000000..e103e631c8 --- /dev/null +++ b/meta/recipes-extended/polkit/polkit-gnome_0.96.bb @@ -0,0 +1,18 @@ +HOMEPAGE = "http://www.packagekit.org/" +DEPENDS = "polkit dbus-glib gconf gtk+" + +SRC_URI = "http://hal.freedesktop.org/releases/polkit-gnome-${PV}.tar.bz2 \ + " + +EXTRA_OECONF = " --disable-scrollkeeper \ + --disable-man-pages \ + --disable-examples \ + --disable-gtk-doc \ + --disable-introspection " + +inherit autotools pkgconfig + +FILES_${PN} += " ${datadir}/dbus-1 \ + ${datadir}/PolicyKit \ + " + diff --git a/meta/recipes-extended/polkit/polkit_0.96.bb b/meta/recipes-extended/polkit/polkit_0.96.bb new file mode 100644 index 0000000000..e6e030b19a --- /dev/null +++ b/meta/recipes-extended/polkit/polkit_0.96.bb @@ -0,0 +1,14 @@ +DESCRIPTION = "The polkit package is an application-level toolkit for defining and handling the policy that allows unprivileged processes to speak to privileged processes." +HOMEPAGE = "http://code.google.com/p/polkit/" +LICENSE = "LGPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=155db86cdbafa7532b41f390409283eb \ + file://src/polkit/polkit.h;md5=8aa8924570fc5570d20e4a4ad5d2db51 \ + file://docs/polkit/html/license.html;md5=4c17ef1587e0f096c82157160d4e340e" + +SRC_URI = "http://hal.freedesktop.org/releases/polkit-${PV}.tar.gz" +PR = "r2" +DEPENDS = "libpam expat dbus-glib eggdbus intltool" +RDEPENDS = "libpam" +EXTRA_OECONF = "--with-authfw=pam --with-os-type=moblin --disable-man-pages --disable-gtk-doc --disable-introspection" + +inherit autotools pkgconfig diff --git a/meta/recipes-extended/psmisc/files/libintl-link.patch b/meta/recipes-extended/psmisc/files/libintl-link.patch new file mode 100644 index 0000000000..d9cdd90d71 --- /dev/null +++ b/meta/recipes-extended/psmisc/files/libintl-link.patch @@ -0,0 +1,29 @@ +uClibc needs to link against an external libintl but it doesn't do this by +default. The configure script correctly figures out if this is needed, but +doesn't actually link to the libraries it decides on. This makes it link to +them if they are needed: + +--- psmisc-22.2/src/Makefile.am 2006/06/28 00:14:07 1.1 ++++ psmisc-22.2/src/Makefile.am 2006/06/28 00:14:24 +@@ -5,15 +5,19 @@ + + oldfuser_SOURCES = oldfuser.c comm.h signals.c signals.h loop.h i18n.h + ++oldfuser_LDADD = @INTLLIBS@ ++ + fuser_SOURCES = fuser.c comm.h signals.c signals.h i18n.h fuser.h + ++fuser_LDADD = @INTLLIBS@ ++ + killall_SOURCES = killall.c comm.h signals.c signals.h i18n.h + +-killall_LDADD = @SELINUX_LIB@ ++killall_LDADD = @SELINUX_LIB@ @INTLLIBS@ + + pstree_SOURCES = pstree.c comm.h i18n.h + +-pstree_LDADD = @TERMCAP_LIB@ @SELINUX_LIB@ ++pstree_LDADD = @TERMCAP_LIB@ @SELINUX_LIB@ @INTLLIBS@ + + BUILT_SOURCES = signames.h + diff --git a/meta/recipes-extended/psmisc/psmisc.inc b/meta/recipes-extended/psmisc/psmisc.inc new file mode 100644 index 0000000000..d489891d64 --- /dev/null +++ b/meta/recipes-extended/psmisc/psmisc.inc @@ -0,0 +1,55 @@ +LICENSE = "GPL" +DESCRIPTION = "procfs tools" +SECTION = "base" +PRIORITY = "required" +DEPENDS = "ncurses virtual/libintl" + +SRC_URI = "${SOURCEFORGE_MIRROR}/psmisc/psmisc-${PV}.tar.gz \ + file://libintl-link.patch;patch=1" +S = "${WORKDIR}/psmisc-${PV}" + +inherit autotools gettext + +ALLOW_EMPTY = "1" + +PACKAGES = "${PN} \ + fuser-dbg fuser fuser-doc \ + killall-dbg killall killall-doc \ + pstree-dbg pstree pstree-doc" + +FILES_${PN} = "" +RDEPENDS_${PN} = "fuser killall pstree" + +FILES_fuser = "${bindir}/fuser.${PN}" +FILES_fuser-doc = "${mandir}/man1/fuser*" +FILES_fuser-dbg = "${bindir}/.debug/fuser" + +FILES_killall = "${bindir}/killall.${PN}" +FILES_killall-doc = "${mandir}/man1/killall*" +FILES_killall-dbg = "${bindir}/.debug/killall*" + +FILES_pstree = "${bindir}/pstree" +FILES_pstree-doc = "${mandir}/man1/pstree*" +FILES_pstree-dbg = "${bindir}/.debug/pstree" + +do_install_append() { + mv ${D}${bindir}/killall ${D}${bindir}/killall.${PN} + mv ${D}${bindir}/fuser ${D}${bindir}/fuser.${PN} +} + +pkg_postinst_killall() { + update-alternatives --install ${bindir}/killall killall killall.${PN} 90 +} + +pkg_postrm_killall() { + update-alternatives --remove ${bindir}/killall killall.${PN} +} + +pkg_postinst_fuser() { + update-alternatives --install ${bindir}/fuser fuser fuser.${PN} 90 +} + +pkg_postrm_fuser() { + update-alternatives --remove ${bindir}/fuser fuser.${PN} +} + diff --git a/meta/recipes-extended/psmisc/psmisc_22.2.bb b/meta/recipes-extended/psmisc/psmisc_22.2.bb new file mode 100644 index 0000000000..62327fa4d6 --- /dev/null +++ b/meta/recipes-extended/psmisc/psmisc_22.2.bb @@ -0,0 +1,2 @@ +require psmisc.inc +PR = "r1" diff --git a/meta/recipes-extended/sed/sed-4.1.2/fix_return_type.patch b/meta/recipes-extended/sed/sed-4.1.2/fix_return_type.patch new file mode 100644 index 0000000000..d91960b3ee --- /dev/null +++ b/meta/recipes-extended/sed/sed-4.1.2/fix_return_type.patch @@ -0,0 +1,16 @@ +Change the getline return type to match its declaration. + +Signed-off-by: Dongxiao Xu + +diff -urN sed-4.1.2-orig/lib/getline.c sed-4.1.2/lib/getline.c +--- sed-4.1.2-orig/lib/getline.c 2010-08-31 08:47:50.070094024 +0800 ++++ sed-4.1.2/lib/getline.c 2010-08-31 08:48:50.982178172 +0800 +@@ -30,7 +30,7 @@ + necessary. Returns the number of characters read (not including the + null terminator), or -1 on error or EOF. */ + +-size_t ++ssize_t + getline (lineptr, n, stream) + char **lineptr; + size_t *n; diff --git a/meta/recipes-extended/sed/sed_4.1.2.bb b/meta/recipes-extended/sed/sed_4.1.2.bb new file mode 100644 index 0000000000..09bd3e18cc --- /dev/null +++ b/meta/recipes-extended/sed/sed_4.1.2.bb @@ -0,0 +1,32 @@ +DESCRIPTION = "sed is a Stream EDitor." +HOMEPAGE = "http://www.gnu.org/software/sed/" +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ + file://sed/sed.h;beginline=1;endline=17;md5=e00ffd1837f298439a214fd197f6a407" +SECTION = "console/utils" +PR = "r3" + +DEPENDS = "gettext" + +SRC_URI = "${GNU_MIRROR}/sed/sed-${PV}.tar.gz \ + file://fix_return_type.patch" + +inherit autotools + +do_install () { + autotools_do_install + install -d ${D}${base_bindir} + mv ${D}${bindir}/sed ${D}${base_bindir}/sed.${PN} +} + + +pkg_postinst_${PN} () { + update-alternatives --install ${base_bindir}/sed sed sed.${PN} 100 +} + + +pkg_prerm_${PN} () { + update-alternatives --remove sed sed.${PN} +} + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-extended/sudo/files/autofoo.patch b/meta/recipes-extended/sudo/files/autofoo.patch new file mode 100644 index 0000000000..4f24737610 --- /dev/null +++ b/meta/recipes-extended/sudo/files/autofoo.patch @@ -0,0 +1,143 @@ +# fix underquotes, rebased to 1.7.2p7 +# +# by Kevin Tian , 06/23/2010 +Index: sudo-1.7.2p7/aclocal.m4 +=================================================================== +--- sudo-1.7.2p7.orig/aclocal.m4 2010-06-23 13:33:57.000000000 +0800 ++++ sudo-1.7.2p7/aclocal.m4 2010-06-23 13:36:41.000000000 +0800 +@@ -10,7 +10,7 @@ + dnl + dnl check for sendmail + dnl +-AC_DEFUN(SUDO_PROG_SENDMAIL, [AC_MSG_CHECKING(for sendmail) ++AC_DEFUN([SUDO_PROG_SENDMAIL], [AC_MSG_CHECKING(for sendmail) + if test -f "/usr/sbin/sendmail"; then + AC_MSG_RESULT(/usr/sbin/sendmail) + SUDO_DEFINE(_PATH_SUDO_SENDMAIL, "/usr/sbin/sendmail") +@@ -37,7 +37,7 @@ + dnl + dnl check for vi + dnl +-AC_DEFUN(SUDO_PROG_VI, [AC_MSG_CHECKING(for vi) ++AC_DEFUN([SUDO_PROG_VI], [AC_MSG_CHECKING(for vi) + if test -f "/usr/bin/vi"; then + AC_MSG_RESULT(/usr/bin/vi) + SUDO_DEFINE(_PATH_VI, "/usr/bin/vi") +@@ -61,7 +61,7 @@ + dnl + dnl check for mv + dnl +-AC_DEFUN(SUDO_PROG_MV, [AC_MSG_CHECKING(for mv) ++AC_DEFUN([SUDO_PROG_MV], [AC_MSG_CHECKING(for mv) + if test -f "/usr/bin/mv"; then + AC_MSG_RESULT(/usr/bin/mv) + SUDO_DEFINE(_PATH_MV, "/usr/bin/mv") +@@ -82,7 +82,7 @@ + dnl + dnl check for bourne shell + dnl +-AC_DEFUN(SUDO_PROG_BSHELL, [AC_MSG_CHECKING(for bourne shell) ++AC_DEFUN([SUDO_PROG_BSHELL], [AC_MSG_CHECKING(for bourne shell) + if test -f "/bin/sh"; then + AC_MSG_RESULT(/bin/sh) + SUDO_DEFINE(_PATH_BSHELL, "/bin/sh") +@@ -115,7 +115,7 @@ + dnl + dnl Where the log file goes, use /var/log if it exists, else /{var,usr}/adm + dnl +-AC_DEFUN(SUDO_LOGFILE, [AC_MSG_CHECKING(for log file location) ++AC_DEFUN([SUDO_LOGFILE], [AC_MSG_CHECKING(for log file location) + if test -n "$with_logpath"; then + AC_MSG_RESULT($with_logpath) + SUDO_DEFINE_UNQUOTED(_PATH_SUDO_LOGFILE, "$with_logpath") +@@ -136,7 +136,7 @@ + dnl + dnl Where the log file goes, use /var/log if it exists, else /{var,usr}/adm + dnl +-AC_DEFUN(SUDO_TIMEDIR, [AC_MSG_CHECKING(for timestamp file location) ++AC_DEFUN([SUDO_TIMEDIR], [AC_MSG_CHECKING(for timestamp file location) + if test -n "$with_timedir"; then + AC_MSG_RESULT($with_timedir) + SUDO_DEFINE_UNQUOTED(_PATH_SUDO_TIMEDIR, "$with_timedir") +@@ -160,7 +160,7 @@ + dnl SUDO_CHECK_TYPE(TYPE, DEFAULT) + dnl XXX - should require the check for unistd.h... + dnl +-AC_DEFUN(SUDO_CHECK_TYPE, ++AC_DEFUN([SUDO_CHECK_TYPE], + [AC_REQUIRE([AC_HEADER_STDC])dnl + AC_MSG_CHECKING(for $1) + AC_CACHE_VAL(sudo_cv_type_$1, +@@ -181,31 +181,31 @@ + dnl + dnl Check for size_t declation + dnl +-AC_DEFUN(SUDO_TYPE_SIZE_T, ++AC_DEFUN([SUDO_TYPE_SIZE_T], + [SUDO_CHECK_TYPE(size_t, int)]) + + dnl + dnl Check for ssize_t declation + dnl +-AC_DEFUN(SUDO_TYPE_SSIZE_T, ++AC_DEFUN([SUDO_TYPE_SSIZE_T], + [SUDO_CHECK_TYPE(ssize_t, int)]) + + dnl + dnl Check for dev_t declation + dnl +-AC_DEFUN(SUDO_TYPE_DEV_T, ++AC_DEFUN([SUDO_TYPE_DEV_T], + [SUDO_CHECK_TYPE(dev_t, int)]) + + dnl + dnl Check for ino_t declation + dnl +-AC_DEFUN(SUDO_TYPE_INO_T, ++AC_DEFUN([SUDO_TYPE_INO_T], + [SUDO_CHECK_TYPE(ino_t, unsigned int)]) + + dnl + dnl check for working fnmatch(3) + dnl +-AC_DEFUN(SUDO_FUNC_FNMATCH, ++AC_DEFUN([SUDO_FUNC_FNMATCH], + [AC_MSG_CHECKING([for working fnmatch with FNM_CASEFOLD]) + AC_CACHE_VAL(sudo_cv_func_fnmatch, + [rm -f conftestdata; > conftestdata +@@ -271,7 +271,7 @@ + dnl + dnl check for sa_len field in struct sockaddr + dnl +-AC_DEFUN(SUDO_SOCK_SA_LEN, ++AC_DEFUN([SUDO_SOCK_SA_LEN], + [AC_MSG_CHECKING(for sa_len field in struct sockaddr) + AC_CACHE_VAL(sudo_cv_sock_sa_len, + [AC_TRY_RUN([#include +@@ -294,7 +294,7 @@ + dnl we can't really trust UID_MAX or MAXUID since they may exist + dnl only for backwards compatibility. + dnl +-AC_DEFUN(SUDO_UID_T_LEN, ++AC_DEFUN([SUDO_UID_T_LEN], + [AC_REQUIRE([AC_TYPE_UID_T]) + AC_MSG_CHECKING(max length of uid_t) + AC_CACHE_VAL(sudo_cv_uid_t_len, +@@ -327,7 +327,7 @@ + dnl + dnl Check for presence of long long and for sizeof(long long) == sizeof(long) + dnl +-AC_DEFUN(SUDO_TYPE_LONG_LONG, ++AC_DEFUN([SUDO_TYPE_LONG_LONG], + [AC_CHECK_TYPES(long long, [AC_DEFINE(HAVE_LONG_LONG, 1, [Define if your compiler supports the "long long" type.])] + [AC_MSG_CHECKING(for long and long long equivalence) + AC_CACHE_VAL(sudo_cv_type_long_is_quad, +@@ -347,7 +347,7 @@ + dnl + dnl append a libpath to an LDFLAGS style variable + dnl +-AC_DEFUN(SUDO_APPEND_LIBPATH, [ ++AC_DEFUN([SUDO_APPEND_LIBPATH], [ + if test X"$with_rpath" = X"yes"; then + case "$host" in + *-*-hpux*) $1="${$1} -L$2 -Wl,+b,$2" diff --git a/meta/recipes-extended/sudo/files/noexec-link.patch b/meta/recipes-extended/sudo/files/noexec-link.patch new file mode 100644 index 0000000000..e0d35d0e25 --- /dev/null +++ b/meta/recipes-extended/sudo/files/noexec-link.patch @@ -0,0 +1,17 @@ +# libtool requires library's name to start with 'lib', or else error is reported. with "-module" option +# that check is skipped +# +# comments added by Kevin Tian , 06/23/2010 +Index: sudo-1.6.8p6/Makefile.in +=================================================================== +--- sudo-1.6.8p6.orig/Makefile.in 2005-01-21 19:09:26.963276656 -0500 ++++ sudo-1.6.8p6/Makefile.in 2005-01-21 19:16:11.918714072 -0500 +@@ -187,7 +187,7 @@ + $(CC) -o $@ $(TESTOBJS) $(LIBOBJS) $(LDFLAGS) $(LIBS) $(NET_LIBS) + + sudo_noexec.la: sudo_noexec.lo +- $(LIBTOOL) --mode=link $(CC) $(LDFLAGS) -o $@ sudo_noexec.lo -avoid-version -rpath $(noexecdir) ++ $(LIBTOOL) --mode=link $(CC) $(LDFLAGS) -o $@ sudo_noexec.lo -avoid-version -module -rpath $(noexecdir) + + # Uncomment the following if you want "make distclean" to clean the parser + @DEV@PARSESRCS = sudo.tab.h sudo.tab.c lex.yy.c def_data.c def_data.h diff --git a/meta/recipes-extended/sudo/files/nostrip.patch b/meta/recipes-extended/sudo/files/nostrip.patch new file mode 100644 index 0000000000..3c71b4fd86 --- /dev/null +++ b/meta/recipes-extended/sudo/files/nostrip.patch @@ -0,0 +1,23 @@ +# this could be pushed upstream to allowing conditional strip. Now it's not applied. +# we use sed in recipe for same purpose. Keep here as reminder for upstream +# +# comment added by Kevin Tian , 07/01/2010 +# +# Patch managed by http://www.holgerschurig.de/patcher.html +# + +Index: sudo-1.6.8p5/Makefile.in +=================================================================== +--- sudo-1.6.8p5.orig/Makefile.in 2005-01-21 18:19:05.762568976 -0500 ++++ sudo-1.6.8p5/Makefile.in 2005-01-21 18:19:34.701169640 -0500 +@@ -307,8 +307,8 @@ + $(DESTDIR)$(noexecdir) + + install-binaries: $(PROGS) +- $(INSTALL) $(install_owncmd) -m 4555 -s sudo $(DESTDIR)$(sudodir)/sudo +- $(INSTALL) $(install_owncmd) -m 0555 -s visudo $(DESTDIR)$(visudodir)/visudo ++ $(INSTALL) $(install_owncmd) -m 4555 sudo $(DESTDIR)$(sudodir)/sudo ++ $(INSTALL) $(install_owncmd) -m 0555 visudo $(DESTDIR)$(visudodir)/visudo + rm -f $(DESTDIR)$(sudodir)/sudoedit + ln $(DESTDIR)$(sudodir)/sudo $(DESTDIR)$(sudodir)/sudoedit + diff --git a/meta/recipes-extended/sudo/site/bit-32 b/meta/recipes-extended/sudo/site/bit-32 new file mode 100644 index 0000000000..9b7ca5c81b --- /dev/null +++ b/meta/recipes-extended/sudo/site/bit-32 @@ -0,0 +1,2 @@ +# is sizeof(long long) == sizeof(long) +sudo_cv_type_long_is_quad=${sudo_cv_type_long_is_quad=no} diff --git a/meta/recipes-extended/sudo/site/bit-64 b/meta/recipes-extended/sudo/site/bit-64 new file mode 100644 index 0000000000..05846ff0aa --- /dev/null +++ b/meta/recipes-extended/sudo/site/bit-64 @@ -0,0 +1,2 @@ +# is sizeof(long long) == sizeof(long) +sudo_cv_type_long_is_quad=${sudo_cv_type_long_is_quad=yes} diff --git a/meta/recipes-extended/sudo/sudo.inc b/meta/recipes-extended/sudo/sudo.inc new file mode 100644 index 0000000000..2add94bef4 --- /dev/null +++ b/meta/recipes-extended/sudo/sudo.inc @@ -0,0 +1,36 @@ +DESCRIPTION = "Sudo (superuser do) allows a system administrator to give certain users (or groups of users) the ability to run some (or all) commands as root while logging all commands and arguments." +HOMEPAGE = "http://www.courtesan.com/sudo/" +BUGTRACKER = "http://www.sudo.ws/bugs/" +PRIORITY = "optional" +SECTION = "admin" +LICENSE = "ISC & UCB & MIT" +LIC_FILES_CHKSUM = "file://LICENSE;md5=a7dfe8895011d65d0c2e24aaf5ad0843 \ + file://nonunix.h;startline=4;endline=28;md5=1e70feedac93a3fd7f5254e3fec52677 \ + file://vasgroups.c;startline=4;endline=28;md5=1e70feedac93a3fd7f5254e3fec52677 \ + file://fnmatch.c;startline=6;endline=31;md5=0779058eafd6e23b966585b45bfa54f3 \ + file://getcwd.c;startline=5;endline=27;md5=08d82914995224a0ca42116d7ca2a218 \ + file://glob.c;startline=6;endline=31;md5=299cb38ec8d56e89118ce57fb83b4f78 \ + file://snprintf.c;startline=6;endline=31;md5=dabd56a89a7a773850dc06ee4f1ecde2" + +inherit autotools + +EXTRA_OECONF = "--with-editor=/bin/vi --with-env-editor" + +do_configure_prepend () { + # Prevent binaries from being stripped on the host + sed -i 's/\($(INSTALL).*\) -s \(.*[(sudo|visudo)]\)/\1 \2/g' Makefile.in + + rm -f acsite.m4 + if [ ! -e acinclude.m4 ]; then + cat aclocal.m4 > acinclude.m4 + fi +} + +pkg_postinst() { + if [ "x$D" != "x" ]; then + exit 1 + fi + + chmod 4111 /usr/bin/sudo + chmod 0440 /etc/sudoers +} diff --git a/meta/recipes-extended/sudo/sudo_1.7.2p7.bb b/meta/recipes-extended/sudo/sudo_1.7.2p7.bb new file mode 100644 index 0000000000..3dd6cdf059 --- /dev/null +++ b/meta/recipes-extended/sudo/sudo_1.7.2p7.bb @@ -0,0 +1,7 @@ +PR = "r0" + +SRC_URI = "http://ftp.sudo.ws/sudo/dist/sudo-1.7.2p7.tar.gz \ + file://noexec-link.patch" + +require sudo.inc +EXTRA_OECONF += " --with-pam=no" diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/00_man_quoting.diff b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/00_man_quoting.diff new file mode 100644 index 0000000000..ff60a843e4 --- /dev/null +++ b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/00_man_quoting.diff @@ -0,0 +1,75 @@ +diff -ruN tcp_wrappers_7.6.orig/hosts_access.5 tcp_wrappers_7.6/hosts_access.5 +--- tcp_wrappers_7.6.orig/hosts_access.5 1995-01-30 19:51:47.000000000 +0100 ++++ tcp_wrappers_7.6/hosts_access.5 2004-04-09 16:59:45.000000000 +0200 +@@ -173,7 +173,7 @@ + Patterns like these can be used when the machine has different internet + addresses with different internet hostnames. Service providers can use + this facility to offer FTP, GOPHER or WWW archives with internet names +-that may even belong to different organizations. See also the `twist' ++that may even belong to different organizations. See also the `twist\' + option in the hosts_options(5) document. Some systems (Solaris, + FreeBSD) can have more than one internet address on one physical + interface; with other systems you may have to resort to SLIP or PPP +@@ -236,10 +236,10 @@ + Before accepting a client request, the wrappers can use the IDENT + service to find out that the client did not send the request at all. + When the client host provides IDENT service, a negative IDENT lookup +-result (the client matches `UNKNOWN@host') is strong evidence of a host ++result (the client matches `UNKNOWN@host\') is strong evidence of a host + spoofing attack. + .PP +-A positive IDENT lookup result (the client matches `KNOWN@host') is ++A positive IDENT lookup result (the client matches `KNOWN@host\') is + less trustworthy. It is possible for an intruder to spoof both the + client connection and the IDENT lookup, although doing so is much + harder than spoofing just a client connection. It may also be that +diff -ruN tcp_wrappers_7.6.orig/hosts_options.5 tcp_wrappers_7.6/hosts_options.5 +--- tcp_wrappers_7.6.orig/hosts_options.5 1994-12-28 17:42:29.000000000 +0100 ++++ tcp_wrappers_7.6/hosts_options.5 2004-04-09 16:59:49.000000000 +0200 +@@ -124,7 +124,7 @@ + value is taken. + .SH MISCELLANEOUS + .IP "banners /some/directory" +-Look for a file in `/some/directory' with the same name as the daemon ++Look for a file in `/some/directory\' with the same name as the daemon + process (for example in.telnetd for the telnet service), and copy its + contents to the client. Newline characters are replaced by + carriage-return newline, and % sequences are expanded (see +diff -ruN tcp_wrappers_7.6.orig/tcpdmatch.8 tcp_wrappers_7.6/tcpdmatch.8 +--- tcp_wrappers_7.6.orig/tcpdmatch.8 1996-02-11 17:01:36.000000000 +0100 ++++ tcp_wrappers_7.6/tcpdmatch.8 2004-04-09 17:00:49.000000000 +0200 +@@ -26,7 +26,7 @@ + A daemon process name. Typically, the last component of a daemon + executable pathname. + .IP client +-A host name or network address, or one of the `unknown' or `paranoid' ++A host name or network address, or one of the `unknown\' or `paranoid\' + wildcard patterns. + .sp + When a client host name is specified, \fItcpdmatch\fR gives a +@@ -37,13 +37,13 @@ + .PP + Optional information specified with the \fIdaemon@server\fR form: + .IP server +-A host name or network address, or one of the `unknown' or `paranoid' +-wildcard patterns. The default server name is `unknown'. ++A host name or network address, or one of the `unknown\' or `paranoid\' ++wildcard patterns. The default server name is `unknown\'. + .PP + Optional information specified with the \fIuser@client\fR form: + .IP user + A client user identifier. Typically, a login name or a numeric userid. +-The default user name is `unknown'. ++The default user name is `unknown\'. + .SH OPTIONS + .IP -d + Examine \fIhosts.allow\fR and \fIhosts.deny\fR files in the current +@@ -70,7 +70,7 @@ + .ti +5 + tcpdmatch in.telnetd paranoid + .PP +-On some systems, daemon names have no `in.' prefix, or \fItcpdmatch\fR ++On some systems, daemon names have no `in.\' prefix, or \fItcpdmatch\fR + may need some help to locate the inetd configuration file. + .SH FILES + .PP diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/01_man_portability.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/01_man_portability.patch new file mode 100644 index 0000000000..4963f82eb8 --- /dev/null +++ b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/01_man_portability.patch @@ -0,0 +1,248 @@ +diff -ruNp tcp_wrappers_7.6.orig/hosts_access.3 tcp_wrappers_7.6/hosts_access.3 +--- tcp_wrappers_7.6.orig/hosts_access.3 2005-03-09 18:30:25.000000000 +0100 ++++ tcp_wrappers_7.6/hosts_access.3 2005-03-09 18:27:03.000000000 +0100 +@@ -3,7 +3,7 @@ + hosts_access, hosts_ctl, request_init, request_set \- access control library + .SH SYNOPSIS + .nf +-#include "tcpd.h" ++#include + + extern int allow_severity; + extern int deny_severity; +diff -ruNp tcp_wrappers_7.6.orig/hosts_access.5 tcp_wrappers_7.6/hosts_access.5 +--- tcp_wrappers_7.6.orig/hosts_access.5 2005-03-09 18:30:25.000000000 +0100 ++++ tcp_wrappers_7.6/hosts_access.5 2005-03-09 18:30:18.000000000 +0100 +@@ -8,9 +8,9 @@ name, host name/address) patterns. Exam + impatient reader is encouraged to skip to the EXAMPLES section for a + quick introduction. + .PP +-An extended version of the access control language is described in the +-\fIhosts_options\fR(5) document. The extensions are turned on at +-program build time by building with -DPROCESS_OPTIONS. ++The extended version of the access control language is described in the ++\fIhosts_options\fR(5) document. \fBNote that this language supersedes ++the meaning of \fIshell_command\fB as documented below.\fR + .PP + In the following text, \fIdaemon\fR is the the process name of a + network daemon process, and \fIclient\fR is the name and/or address of +@@ -346,8 +346,8 @@ in.tftpd: LOCAL, .my.domain + /etc/hosts.deny: + .in +3 + .nf +-in.tftpd: ALL: (/some/where/safe_finger -l @%h | \\ +- /usr/ucb/mail -s %d-%h root) & ++in.tftpd: ALL: (/usr/sbin/safe_finger -l @%h | \\ ++ /usr/bin/mail -s %d-%h root) & + .fi + .PP + The safe_finger command comes with the tcpd wrapper and should be +@@ -383,6 +383,7 @@ that shouldn\'t. All problems are repor + .fi + .SH SEE ALSO + .nf ++hosts_options(5) extended syntax. + tcpd(8) tcp/ip daemon wrapper program. + tcpdchk(8), tcpdmatch(8), test programs. + .SH BUGS +diff -ruNp tcp_wrappers_7.6.orig/hosts_options.5 tcp_wrappers_7.6/hosts_options.5 +--- tcp_wrappers_7.6.orig/hosts_options.5 2005-03-09 18:30:24.000000000 +0100 ++++ tcp_wrappers_7.6/hosts_options.5 2005-03-09 18:27:03.000000000 +0100 +@@ -2,10 +2,8 @@ + .SH NAME + hosts_options \- host access control language extensions + .SH DESCRIPTION +-This document describes optional extensions to the language described +-in the hosts_access(5) document. The extensions are enabled at program +-build time. For example, by editing the Makefile and turning on the +-PROCESS_OPTIONS compile-time option. ++This document describes extensions to the language described ++in the hosts_access(5) document. + .PP + The extensible language uses the following format: + .sp +@@ -58,12 +56,12 @@ Notice the leading dot on the domain nam + Execute, in a child process, the specified shell command, after + performing the % expansions described in the hosts_access(5) + manual page. The command is executed with stdin, stdout and stderr +-connected to the null device, so that it won\'t mess up the ++connected to the null device, so that it won't mess up the + conversation with the client host. Example: + .sp + .nf + .ti +3 +-spawn (/some/where/safe_finger -l @%h | /usr/ucb/mail root) & ++spawn (/usr/sbin/safe_finger -l @%h | /usr/bin/mail root) & + .fi + .sp + executes, in a background child process, the shell command "safe_finger +diff -ruNp tcp_wrappers_7.6.orig/inetcf.c tcp_wrappers_7.6/inetcf.c +--- tcp_wrappers_7.6.orig/inetcf.c 1997-02-12 02:13:24.000000000 +0100 ++++ tcp_wrappers_7.6/inetcf.c 2005-03-09 18:27:03.000000000 +0100 +@@ -26,13 +26,17 @@ extern void exit(); + * guesses. Shorter names follow longer ones. + */ + char *inet_files[] = { ++#if 0 + "/private/etc/inetd.conf", /* NEXT */ + "/etc/inet/inetd.conf", /* SYSV4 */ + "/usr/etc/inetd.conf", /* IRIX?? */ ++#endif + "/etc/inetd.conf", /* BSD */ ++#if 0 + "/etc/net/tlid.conf", /* SYSV4?? */ + "/etc/saf/tlid.conf", /* SYSV4?? */ + "/etc/tlid.conf", /* SYSV4?? */ ++#endif + 0, + }; + +diff -ruNp tcp_wrappers_7.6.orig/tcpd.8 tcp_wrappers_7.6/tcpd.8 +--- tcp_wrappers_7.6.orig/tcpd.8 1996-02-21 16:39:16.000000000 +0100 ++++ tcp_wrappers_7.6/tcpd.8 2005-03-09 18:27:03.000000000 +0100 +@@ -12,7 +12,11 @@ The program supports both 4.3BSD-style s + TLI. Functionality may be limited when the protocol underneath TLI is + not an internet protocol. + .PP +-Operation is as follows: whenever a request for service arrives, the ++There are two possible modes of operation: execution of \fItcpd\fP ++before a service started by \fIinetd\fP, or linking a daemon with ++the \fIlibwrap\fP shared library as documented in the \fIhosts_access\fR(3) ++manual page. Operation when started by \fIinetd\fP ++is as follows: whenever a request for service arrives, the + \fIinetd\fP daemon is tricked into running the \fItcpd\fP program + instead of the desired server. \fItcpd\fP logs the request and does + some additional checks. When all is well, \fItcpd\fP runs the +@@ -88,11 +92,11 @@ configuration files. + .sp + .in +5 + # mkdir /other/place +-# mv /usr/etc/in.fingerd /other/place +-# cp tcpd /usr/etc/in.fingerd ++# mv /usr/sbin/in.fingerd /other/place ++# cp tcpd /usr/sbin/in.fingerd + .fi + .PP +-The example assumes that the network daemons live in /usr/etc. On some ++The example assumes that the network daemons live in /usr/sbin. On some + systems, network daemons live in /usr/sbin or in /usr/libexec, or have + no `in.\' prefix to their name. + .SH EXAMPLE 2 +@@ -101,35 +105,34 @@ are left in their original place. + .PP + In order to monitor access to the \fIfinger\fR service, perform the + following edits on the \fIinetd\fR configuration file (usually +-\fI/etc/inetd.conf\fR or \fI/etc/inet/inetd.conf\fR): ++\fI/etc/inetd.conf\fR): + .nf + .sp + .ti +5 +-finger stream tcp nowait nobody /usr/etc/in.fingerd in.fingerd ++finger stream tcp nowait nobody /usr/sbin/in.fingerd in.fingerd + .sp + becomes: + .sp + .ti +5 +-finger stream tcp nowait nobody /some/where/tcpd in.fingerd ++finger stream tcp nowait nobody /usr/sbin/tcpd in.fingerd + .sp + .fi + .PP +-The example assumes that the network daemons live in /usr/etc. On some ++The example assumes that the network daemons live in /usr/sbin. On some + systems, network daemons live in /usr/sbin or in /usr/libexec, the + daemons have no `in.\' prefix to their name, or there is no userid + field in the inetd configuration file. + .PP + Similar changes will be needed for the other services that are to be + covered by \fItcpd\fR. Send a `kill -HUP\' to the \fIinetd\fR(8) +-process to make the changes effective. AIX users may also have to +-execute the `inetimp\' command. ++process to make the changes effective. + .SH EXAMPLE 3 + In the case of daemons that do not live in a common directory ("secret" + or otherwise), edit the \fIinetd\fR configuration file so that it + specifies an absolute path name for the process name field. For example: + .nf + .sp +- ntalk dgram udp wait root /some/where/tcpd /usr/local/lib/ntalkd ++ ntalk dgram udp wait root /usr/sbin/tcpd /usr/local/lib/ntalkd + .sp + .fi + .PP +@@ -164,6 +167,7 @@ The default locations of the host access + .SH SEE ALSO + .na + .nf ++hosts_access(3), functions provided by the libwrap library. + hosts_access(5), format of the tcpd access control tables. + syslog.conf(5), format of the syslogd control file. + inetd.conf(5), format of the inetd control file. +diff -ruNp tcp_wrappers_7.6.orig/tcpdchk.8 tcp_wrappers_7.6/tcpdchk.8 +--- tcp_wrappers_7.6.orig/tcpdchk.8 1995-01-08 17:00:31.000000000 +0100 ++++ tcp_wrappers_7.6/tcpdchk.8 2005-03-09 18:27:03.000000000 +0100 +@@ -9,8 +9,8 @@ tcpdchk [-a] [-d] [-i inet_conf] [-v] + potential and real problems it can find. The program examines the + \fItcpd\fR access control files (by default, these are + \fI/etc/hosts.allow\fR and \fI/etc/hosts.deny\fR), and compares the +-entries in these files against entries in the \fIinetd\fR or \fItlid\fR +-network configuration files. ++entries in these files against entries in the \fIinetd\fR ++network configuration file. + .PP + \fItcpdchk\fR reports problems such as non-existent pathnames; services + that appear in \fItcpd\fR access control rules, but are not controlled +@@ -26,14 +26,13 @@ problem. + .SH OPTIONS + .IP -a + Report access control rules that permit access without an explicit +-ALLOW keyword. This applies only when the extended access control +-language is enabled (build with -DPROCESS_OPTIONS). ++ALLOW keyword. + .IP -d + Examine \fIhosts.allow\fR and \fIhosts.deny\fR files in the current + directory instead of the default ones. + .IP "-i inet_conf" + Specify this option when \fItcpdchk\fR is unable to find your +-\fIinetd.conf\fR or \fItlid.conf\fR network configuration file, or when ++\fIinetd.conf\fR network configuration file, or when + you suspect that the program uses the wrong one. + .IP -v + Display the contents of each access control rule. Daemon lists, client +@@ -54,7 +53,6 @@ tcpdmatch(8), explain what tcpd would do + hosts_access(5), format of the tcpd access control tables. + hosts_options(5), format of the language extensions. + inetd.conf(5), format of the inetd control file. +-tlid.conf(5), format of the tlid control file. + .SH AUTHORS + .na + .nf +diff -ruNp tcp_wrappers_7.6.orig/tcpdmatch.8 tcp_wrappers_7.6/tcpdmatch.8 +--- tcp_wrappers_7.6.orig/tcpdmatch.8 2005-03-09 18:30:24.000000000 +0100 ++++ tcp_wrappers_7.6/tcpdmatch.8 2005-03-09 18:27:03.000000000 +0100 +@@ -13,7 +13,7 @@ request for service. Examples are given + The program examines the \fItcpd\fR access control tables (default + \fI/etc/hosts.allow\fR and \fI/etc/hosts.deny\fR) and prints its + conclusion. For maximal accuracy, it extracts additional information +-from your \fIinetd\fR or \fItlid\fR network configuration file. ++from your \fIinetd\fR network configuration file. + .PP + When \fItcpdmatch\fR finds a match in the access control tables, it + identifies the matched rule. In addition, it displays the optional +@@ -50,7 +50,7 @@ Examine \fIhosts.allow\fR and \fIhosts.d + directory instead of the default ones. + .IP "-i inet_conf" + Specify this option when \fItcpdmatch\fR is unable to find your +-\fIinetd.conf\fR or \fItlid.conf\fR network configuration file, or when ++\fIinetd.conf\fR network configuration file, or when + you suspect that the program uses the wrong one. + .SH EXAMPLES + To predict how \fItcpd\fR would handle a telnet request from the local +@@ -86,7 +86,6 @@ tcpdchk(8), tcpd configuration checker + hosts_access(5), format of the tcpd access control tables. + hosts_options(5), format of the language extensions. + inetd.conf(5), format of the inetd control file. +-tlid.conf(5), format of the tlid control file. + .SH AUTHORS + .na + .nf diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/05_wildcard_matching.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/05_wildcard_matching.patch new file mode 100644 index 0000000000..a168f6d5a5 --- /dev/null +++ b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/05_wildcard_matching.patch @@ -0,0 +1,103 @@ +See https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=17847 + +diff -ruN tcp_wrappers_7.6.orig/hosts_access.5 tcp_wrappers_7.6/hosts_access.5 +--- tcp_wrappers_7.6.orig/hosts_access.5 2004-04-10 18:54:33.000000000 +0200 ++++ tcp_wrappers_7.6/hosts_access.5 2004-04-10 18:54:27.000000000 +0200 +@@ -89,6 +89,10 @@ + bitwise AND of the address and the `mask\'. For example, the net/mask + pattern `131.155.72.0/255.255.254.0\' matches every address in the + range `131.155.72.0\' through `131.155.73.255\'. ++.IP \(bu ++Wildcards `*\' and `?\' can be used to match hostnames or IP addresses. This ++method of matching cannot be used in conjunction with `net/mask\' matching, ++hostname matching beginning with `.\' or IP address matching ending with `.\'. + .SH WILDCARDS + The access control language supports explicit wildcards: + .IP ALL +diff -ruN tcp_wrappers_7.6.orig/hosts_access.c tcp_wrappers_7.6/hosts_access.c +--- tcp_wrappers_7.6.orig/hosts_access.c 1997-02-12 02:13:23.000000000 +0100 ++++ tcp_wrappers_7.6/hosts_access.c 2004-04-10 18:52:21.000000000 +0200 +@@ -289,6 +289,11 @@ + { + int n; + ++#ifndef DISABLE_WILDCARD_MATCHING ++ if (strchr(tok, '*') || strchr(tok,'?')) { /* contains '*' or '?' */ ++ return (match_pattern_ylo(string,tok)); ++ } else ++#endif + if (tok[0] == '.') { /* suffix */ + n = strlen(string) - strlen(tok); + return (n > 0 && STR_EQ(tok, string + n)); +@@ -329,3 +334,71 @@ + } + return ((addr & mask) == net); + } ++ ++#ifndef DISABLE_WILDCARD_MATCHING ++/* Note: this feature has been adapted in a pretty straightforward way ++ from Tatu Ylonen's last SSH version under free license by ++ Pekka Savola . ++ ++ Copyright (c) 1995 Tatu Ylonen , Espoo, Finland ++*/ ++ ++/* Returns true if the given string matches the pattern (which may contain ++ ? and * as wildcards), and zero if it does not match. */ ++ ++int match_pattern_ylo(const char *s, const char *pattern) ++{ ++ while (1) ++ { ++ /* If at end of pattern, accept if also at end of string. */ ++ if (!*pattern) ++ return !*s; ++ ++ /* Process '*'. */ ++ if (*pattern == '*') ++ { ++ /* Skip the asterisk. */ ++ pattern++; ++ ++ /* If at end of pattern, accept immediately. */ ++ if (!*pattern) ++ return 1; ++ ++ /* If next character in pattern is known, optimize. */ ++ if (*pattern != '?' && *pattern != '*') ++ { ++ /* Look instances of the next character in pattern, and try ++ to match starting from those. */ ++ for (; *s; s++) ++ if (*s == *pattern && ++ match_pattern_ylo(s + 1, pattern + 1)) ++ return 1; ++ /* Failed. */ ++ return 0; ++ } ++ ++ /* Move ahead one character at a time and try to match at each ++ position. */ ++ for (; *s; s++) ++ if (match_pattern_ylo(s, pattern)) ++ return 1; ++ /* Failed. */ ++ return 0; ++ } ++ ++ /* There must be at least one more character in the string. If we are ++ at the end, fail. */ ++ if (!*s) ++ return 0; ++ ++ /* Check if the next character of the string is acceptable. */ ++ if (*pattern != '?' && *pattern != *s) ++ return 0; ++ ++ /* Move to the next character, both in string and in pattern. */ ++ s++; ++ pattern++; ++ } ++ /*NOTREACHED*/ ++} ++#endif /* DISABLE_WILDCARD_MATCHING */ diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/06_fix_gethostbyname.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/06_fix_gethostbyname.patch new file mode 100644 index 0000000000..d06aaef13b --- /dev/null +++ b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/06_fix_gethostbyname.patch @@ -0,0 +1,30 @@ +* Mon Feb 5 2001 Preston Brown +- fix gethostbyname to work better with dot "." notation (#16949) + +--- tcp_wrappers_7.6/socket.c.fixgethostbyname Fri Mar 21 13:27:25 1997 ++++ tcp_wrappers_7.6/socket.c Mon Feb 5 14:09:40 2001 +@@ -52,7 +52,8 @@ + char *name; + { + char dot_name[MAXHOSTNAMELEN + 1]; +- ++ struct hostent *hp; ++ + /* + * Don't append dots to unqualified names. Such names are likely to come + * from local hosts files or from NIS. +@@ -61,8 +62,12 @@ + if (strchr(name, '.') == 0 || strlen(name) >= MAXHOSTNAMELEN - 1) { + return (gethostbyname(name)); + } else { +- sprintf(dot_name, "%s.", name); +- return (gethostbyname(dot_name)); ++ sprintf(dot_name, "%s.", name); ++ hp = gethostbyname(dot_name); ++ if (hp) ++ return hp; ++ else ++ return (gethostbyname(name)); + } + } + diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/10_usagi-ipv6.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/10_usagi-ipv6.patch new file mode 100644 index 0000000000..5c8be5c27c --- /dev/null +++ b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/10_usagi-ipv6.patch @@ -0,0 +1,1253 @@ +diff -ruN tcp_wrappers_7.6.orig/fix_options.c tcp_wrappers_7.6/fix_options.c +--- tcp_wrappers_7.6.orig/fix_options.c 1997-04-08 02:29:19.000000000 +0200 ++++ tcp_wrappers_7.6/fix_options.c 2004-04-10 19:07:43.000000000 +0200 +@@ -11,6 +11,9 @@ + + #include + #include ++#ifdef INET6 ++#include ++#endif + #include + #include + #include +@@ -41,6 +44,22 @@ + unsigned int opt; + int optlen; + struct in_addr dummy; ++#ifdef INET6 ++ struct sockaddr_storage ss; ++ int sslen; ++ ++ /* ++ * check if this is AF_INET socket ++ * XXX IPv6 support? ++ */ ++ sslen = sizeof(ss); ++ if (getsockname(fd, (struct sockaddr *)&ss, &sslen) < 0) { ++ syslog(LOG_ERR, "getpeername: %m"); ++ clean_exit(request); ++ } ++ if (ss.ss_family != AF_INET) ++ return; ++#endif + + if ((ip = getprotobyname("ip")) != 0) + ipproto = ip->p_proto; +diff -ruN tcp_wrappers_7.6.orig/hosts_access.5 tcp_wrappers_7.6/hosts_access.5 +--- tcp_wrappers_7.6.orig/hosts_access.5 2004-04-10 19:22:58.000000000 +0200 ++++ tcp_wrappers_7.6/hosts_access.5 2004-04-10 19:07:43.000000000 +0200 +@@ -85,11 +85,18 @@ + for daemon process names or for client user names. + .IP \(bu + An expression of the form `n.n.n.n/m.m.m.m\' is interpreted as a +-`net/mask\' pair. A host address is matched if `net\' is equal to the ++`net/mask\' pair. An IPv4 host address is matched if `net\' is equal to the + bitwise AND of the address and the `mask\'. For example, the net/mask + pattern `131.155.72.0/255.255.254.0\' matches every address in the + range `131.155.72.0\' through `131.155.73.255\'. + .IP \(bu ++An expression of the form `[n:n:n:n:n:n:n:n]/m\' is interpreted as a ++`[net]/prefixlen\' pair. An IPv6 host address is matched if ++`prefixlen\' bits of `net\' is equal to the `prefixlen\' bits of the ++address. For example, the [net]/prefixlen pattern ++`[3ffe:505:2:1::]/64\' matches every address in the range ++`3ffe:505:2:1::\' through `3ffe:505:2:1:ffff:ffff:ffff:ffff\'. ++.IP \(bu + Wildcards `*\' and `?\' can be used to match hostnames or IP addresses. This + method of matching cannot be used in conjunction with `net/mask\' matching, + hostname matching beginning with `.\' or IP address matching ending with `.\'. +diff -ruN tcp_wrappers_7.6.orig/hosts_access.c tcp_wrappers_7.6/hosts_access.c +--- tcp_wrappers_7.6.orig/hosts_access.c 2004-04-10 19:22:58.000000000 +0200 ++++ tcp_wrappers_7.6/hosts_access.c 2004-04-10 19:07:43.000000000 +0200 +@@ -24,7 +24,13 @@ + /* System libraries. */ + + #include ++#ifdef INT32_T ++ typedef uint32_t u_int32_t; ++#endif + #include ++#ifdef INET6 ++#include ++#endif + #include + #include + #include +@@ -33,6 +39,9 @@ + #include + #include + #include ++#ifdef INET6 ++#include ++#endif + + extern char *fgets(); + extern int errno; +@@ -82,6 +91,10 @@ + static int host_match(); + static int string_match(); + static int masked_match(); ++#ifdef INET6 ++static int masked_match4(); ++static int masked_match6(); ++#endif + + /* Size of logical line buffer. */ + +@@ -289,6 +302,13 @@ + { + int n; + ++#ifdef INET6 ++ /* convert IPv4 mapped IPv6 address to IPv4 address */ ++ if (STRN_EQ(string, "::ffff:", 7) ++ && dot_quad_addr(string + 7) != INADDR_NONE) { ++ string += 7; ++ } ++#endif + #ifndef DISABLE_WILDCARD_MATCHING + if (strchr(tok, '*') || strchr(tok,'?')) { /* contains '*' or '?' */ + return (match_pattern_ylo(string,tok)); +@@ -304,20 +324,72 @@ + } else if (tok[(n = strlen(tok)) - 1] == '.') { /* prefix */ + return (STRN_EQ(tok, string, n)); + } else { /* exact match */ ++#ifdef INET6 ++ struct addrinfo hints, *res; ++ struct sockaddr_in6 pat, addr; ++ int len, ret; ++ char ch; ++ ++ len = strlen(tok); ++ if (*tok == '[' && tok[len - 1] == ']') { ++ ch = tok[len - 1]; ++ tok[len - 1] = '\0'; ++ memset(&hints, 0, sizeof(hints)); ++ hints.ai_family = AF_INET6; ++ hints.ai_socktype = SOCK_STREAM; ++ hints.ai_flags = AI_PASSIVE | AI_NUMERICHOST; ++ if ((ret = getaddrinfo(tok + 1, NULL, &hints, &res)) == 0) { ++ memcpy(&pat, res->ai_addr, sizeof(pat)); ++ freeaddrinfo(res); ++ } ++ tok[len - 1] = ch; ++ if (ret != 0 || getaddrinfo(string, NULL, &hints, &res) != 0) ++ return NO; ++ memcpy(&addr, res->ai_addr, sizeof(addr)); ++ freeaddrinfo(res); ++#ifdef NI_WITHSCOPEID ++ if (pat.sin6_scope_id != 0 && ++ addr.sin6_scope_id != pat.sin6_scope_id) ++ return NO; ++#endif ++ return (!memcmp(&pat.sin6_addr, &addr.sin6_addr, ++ sizeof(struct in6_addr))); ++ return (ret); ++ } ++#endif + return (STR_EQ(tok, string)); + } + } + + /* masked_match - match address against netnumber/netmask */ + ++#ifdef INET6 + static int masked_match(net_tok, mask_tok, string) + char *net_tok; + char *mask_tok; + char *string; + { ++ return (masked_match4(net_tok, mask_tok, string) || ++ masked_match6(net_tok, mask_tok, string)); ++} ++ ++static int masked_match4(net_tok, mask_tok, string) ++#else ++static int masked_match(net_tok, mask_tok, string) ++#endif ++char *net_tok; ++char *mask_tok; ++char *string; ++{ ++#ifdef INET6 ++ u_int32_t net; ++ u_int32_t mask; ++ u_int32_t addr; ++#else + unsigned long net; + unsigned long mask; + unsigned long addr; ++#endif + + /* + * Disallow forms other than dotted quad: the treatment that inet_addr() +@@ -329,12 +401,78 @@ + return (NO); + if ((net = dot_quad_addr(net_tok)) == INADDR_NONE + || (mask = dot_quad_addr(mask_tok)) == INADDR_NONE) { ++#ifndef INET6 + tcpd_warn("bad net/mask expression: %s/%s", net_tok, mask_tok); ++#endif + return (NO); /* not tcpd_jump() */ + } + return ((addr & mask) == net); + } + ++#ifdef INET6 ++static int masked_match6(net_tok, mask_tok, string) ++char *net_tok; ++char *mask_tok; ++char *string; ++{ ++ struct addrinfo hints, *res; ++ struct sockaddr_in6 net, addr; ++ u_int32_t mask; ++ int len, mask_len, i = 0; ++ char ch; ++ ++ memset(&hints, 0, sizeof(hints)); ++ hints.ai_family = AF_INET6; ++ hints.ai_socktype = SOCK_STREAM; ++ hints.ai_flags = AI_PASSIVE | AI_NUMERICHOST; ++ if (getaddrinfo(string, NULL, &hints, &res) != 0) ++ return NO; ++ memcpy(&addr, res->ai_addr, sizeof(addr)); ++ freeaddrinfo(res); ++ ++ if (IN6_IS_ADDR_V4MAPPED(&addr.sin6_addr)) { ++ if ((*(u_int32_t *)&net.sin6_addr.s6_addr[12] = dot_quad_addr(net_tok)) == INADDR_NONE ++ || (mask = dot_quad_addr(mask_tok)) == INADDR_NONE) ++ return (NO); ++ return ((*(u_int32_t *)&addr.sin6_addr.s6_addr[12] & mask) == *(u_int32_t *)&net.sin6_addr.s6_addr[12]); ++ } ++ ++ /* match IPv6 address against netnumber/prefixlen */ ++ len = strlen(net_tok); ++ if (*net_tok != '[' || net_tok[len - 1] != ']') ++ return NO; ++ ch = net_tok[len - 1]; ++ net_tok[len - 1] = '\0'; ++ if (getaddrinfo(net_tok + 1, NULL, &hints, &res) != 0) { ++ net_tok[len - 1] = ch; ++ return NO; ++ } ++ memcpy(&net, res->ai_addr, sizeof(net)); ++ freeaddrinfo(res); ++ net_tok[len - 1] = ch; ++ if ((mask_len = atoi(mask_tok)) < 0 || mask_len > 128) ++ return NO; ++ ++#ifdef NI_WITHSCOPEID ++ if (net.sin6_scope_id != 0 && addr.sin6_scope_id != net.sin6_scope_id) ++ return NO; ++#endif ++ while (mask_len > 0) { ++ if (mask_len < 32) { ++ mask = htonl(~(0xffffffff >> mask_len)); ++ if ((*(u_int32_t *)&addr.sin6_addr.s6_addr[i] & mask) != (*(u_int32_t *)&net.sin6_addr.s6_addr[i] & mask)) ++ return NO; ++ break; ++ } ++ if (*(u_int32_t *)&addr.sin6_addr.s6_addr[i] != *(u_int32_t *)&net.sin6_addr.s6_addr[i]) ++ return NO; ++ i += 4; ++ mask_len -= 32; ++ } ++ return YES; ++} ++#endif /* INET6 */ ++ + #ifndef DISABLE_WILDCARD_MATCHING + /* Note: this feature has been adapted in a pretty straightforward way + from Tatu Ylonen's last SSH version under free license by +diff -ruN tcp_wrappers_7.6.orig/Makefile tcp_wrappers_7.6/Makefile +--- tcp_wrappers_7.6.orig/Makefile 1997-03-21 19:27:21.000000000 +0100 ++++ tcp_wrappers_7.6/Makefile 2004-04-10 19:22:44.000000000 +0200 +@@ -21,7 +21,7 @@ + @echo " dynix epix esix freebsd hpux irix4 irix5 irix6 isc iunix" + @echo " linux machten mips(untested) ncrsvr4 netbsd next osf power_unix_211" + @echo " ptx-2.x ptx-generic pyramid sco sco-nis sco-od2 sco-os5 sinix sunos4" +- @echo " sunos40 sunos5 sysv4 tandem ultrix unicos7 unicos8 unixware1 unixware2" ++ @echo " sunos40 sunos5 solaris8 sysv4 tandem ultrix unicos7 unicos8 unixware1 unixware2" + @echo " uts215 uxp" + @echo + @echo "If none of these match your environment, edit the system" +@@ -131,20 +131,34 @@ + NETGROUP=-DNETGROUP TLI= SYSTYPE="-systype bsd43" all + + # Freebsd and linux by default have no NIS. +-386bsd netbsd bsdos: ++386bsd bsdos: + @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ + LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ= NETGROUP= TLI= \ + EXTRA_CFLAGS=-DSYS_ERRLIST_DEFINED VSYSLOG= all + + freebsd: + @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ ++ LIBS="-L/usr/local/v6/lib -linet6" \ + LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ= NETGROUP= TLI= \ +- EXTRA_CFLAGS=-DSYS_ERRLIST_DEFINED VSYSLOG= all ++ EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DINET6 -Dss_family=__ss_family -Dss_len=__ss_len" \ ++ VSYSLOG= all ++ ++netbsd: ++ @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ ++ LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ= NETGROUP= TLI= \ ++ EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DINET6 -Dss_family=__ss_family -Dss_len=__ss_len" VSYSLOG= all + + linux: + @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ +- LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ=setenv.o \ +- NETGROUP= TLI= EXTRA_CFLAGS="-DBROKEN_SO_LINGER" all ++ LIBS=-lnsl RANLIB=ranlib ARFLAGS=rv AUX_OBJ= \ ++ NETGROUP="-DNETGROUP" TLI= VSYSLOG= BUGS= \ ++ EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DHAVE_STRERROR -DINET6=1 -Dss_family=__ss_family -Dss_len=__ss_len" all ++ ++gnu: ++ @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ ++ LIBS=-lnsl RANLIB=ranlib ARFLAGS=rv AUX_OBJ= \ ++ NETGROUP=-DNETGROUP TLI= VSYSLOG= BUGS= \ ++ EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DHAVE_STRERROR" all + + # This is good for many SYSV+BSD hybrids with NIS, probably also for HP-UX 7.x. + hpux hpux8 hpux9 hpux10: +@@ -196,6 +210,13 @@ + NETGROUP=-DNETGROUP AUX_OBJ=setenv.o TLI=-DTLI \ + BUGS="$(BUGS) -DSOLARIS_24_GETHOSTBYNAME_BUG" all + ++# SunOS 5.8 is another SYSV4 variant, but has IPv6 support ++solaris8: ++ @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ ++ LIBS="-lsocket -lnsl" RANLIB=echo ARFLAGS=rv VSYSLOG= \ ++ NETGROUP=-DNETGROUP AUX_OBJ=setenv.o TLI=-DTLI \ ++ EXTRA_CFLAGS="-DINET6 -DNO_CLONE_DEVICE -DINT32_T" all ++ + # Generic SYSV40 + esix sysv4: + @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ +diff -ruN tcp_wrappers_7.6.orig/misc.c tcp_wrappers_7.6/misc.c +--- tcp_wrappers_7.6.orig/misc.c 1996-02-11 17:01:30.000000000 +0100 ++++ tcp_wrappers_7.6/misc.c 2004-04-10 19:07:43.000000000 +0200 +@@ -58,9 +58,31 @@ + { + char *cp; + ++#ifdef INET6 ++ int bracket = 0; ++ ++ for (cp = string; cp && *cp; cp++) { ++ switch (*cp) { ++ case '[': ++ bracket++; ++ break; ++ case ']': ++ bracket--; ++ break; ++ default: ++ if (bracket == 0 && *cp == delimiter) { ++ *cp++ = 0; ++ return cp; ++ } ++ break; ++ } ++ } ++ return (NULL); ++#else + if ((cp = strchr(string, delimiter)) != 0) + *cp++ = 0; + return (cp); ++#endif + } + + /* dot_quad_addr - convert dotted quad to internal form */ +diff -ruN tcp_wrappers_7.6.orig/refuse.c tcp_wrappers_7.6/refuse.c +--- tcp_wrappers_7.6.orig/refuse.c 1994-12-28 17:42:40.000000000 +0100 ++++ tcp_wrappers_7.6/refuse.c 2004-04-10 19:07:43.000000000 +0200 +@@ -25,7 +25,12 @@ + void refuse(request) + struct request_info *request; + { ++#ifdef INET6 ++ syslog(deny_severity, "refused connect from %s (%s)", ++ eval_client(request), eval_hostaddr(request->client)); ++#else + syslog(deny_severity, "refused connect from %s", eval_client(request)); ++#endif + clean_exit(request); + /* NOTREACHED */ + } +diff -ruN tcp_wrappers_7.6.orig/rfc931.c tcp_wrappers_7.6/rfc931.c +--- tcp_wrappers_7.6.orig/rfc931.c 1995-01-02 16:11:34.000000000 +0100 ++++ tcp_wrappers_7.6/rfc931.c 2004-04-10 19:07:43.000000000 +0200 +@@ -68,20 +68,50 @@ + /* rfc931 - return remote user name, given socket structures */ + + void rfc931(rmt_sin, our_sin, dest) ++#ifdef INET6 ++struct sockaddr *rmt_sin; ++struct sockaddr *our_sin; ++#else + struct sockaddr_in *rmt_sin; + struct sockaddr_in *our_sin; ++#endif + char *dest; + { + unsigned rmt_port; + unsigned our_port; ++#ifdef INET6 ++ struct sockaddr_storage rmt_query_sin; ++ struct sockaddr_storage our_query_sin; ++ int alen; ++#else + struct sockaddr_in rmt_query_sin; + struct sockaddr_in our_query_sin; ++#endif + char user[256]; /* XXX */ + char buffer[512]; /* XXX */ + char *cp; + char *result = unknown; + FILE *fp; + ++#ifdef INET6 ++ /* address family must be the same */ ++ if (rmt_sin->sa_family != our_sin->sa_family) { ++ STRN_CPY(dest, result, STRING_LENGTH); ++ return; ++ } ++ switch (our_sin->sa_family) { ++ case AF_INET: ++ alen = sizeof(struct sockaddr_in); ++ break; ++ case AF_INET6: ++ alen = sizeof(struct sockaddr_in6); ++ break; ++ default: ++ STRN_CPY(dest, result, STRING_LENGTH); ++ return; ++ } ++#endif ++ + /* + * Use one unbuffered stdio stream for writing to and for reading from + * the RFC931 etc. server. This is done because of a bug in the SunOS +@@ -92,7 +122,11 @@ + * sockets. + */ + ++#ifdef INET6 ++ if ((fp = fsocket(our_sin->sa_family, SOCK_STREAM, 0)) != 0) { ++#else + if ((fp = fsocket(AF_INET, SOCK_STREAM, 0)) != 0) { ++#endif + setbuf(fp, (char *) 0); + + /* +@@ -112,6 +146,25 @@ + * addresses from the query socket. + */ + ++#ifdef INET6 ++ memcpy(&our_query_sin, our_sin, alen); ++ memcpy(&rmt_query_sin, rmt_sin, alen); ++ switch (our_sin->sa_family) { ++ case AF_INET: ++ ((struct sockaddr_in *)&our_query_sin)->sin_port = htons(ANY_PORT); ++ ((struct sockaddr_in *)&rmt_query_sin)->sin_port = htons(RFC931_PORT); ++ break; ++ case AF_INET6: ++ ((struct sockaddr_in6 *)&our_query_sin)->sin6_port = htons(ANY_PORT); ++ ((struct sockaddr_in6 *)&rmt_query_sin)->sin6_port = htons(RFC931_PORT); ++ break; ++ } ++ ++ if (bind(fileno(fp), (struct sockaddr *) & our_query_sin, ++ alen) >= 0 && ++ connect(fileno(fp), (struct sockaddr *) & rmt_query_sin, ++ alen) >= 0) { ++#else + our_query_sin = *our_sin; + our_query_sin.sin_port = htons(ANY_PORT); + rmt_query_sin = *rmt_sin; +@@ -121,6 +174,7 @@ + sizeof(our_query_sin)) >= 0 && + connect(fileno(fp), (struct sockaddr *) & rmt_query_sin, + sizeof(rmt_query_sin)) >= 0) { ++#endif + + /* + * Send query to server. Neglect the risk that a 13-byte +@@ -129,8 +183,13 @@ + */ + + fprintf(fp, "%u,%u\r\n", ++#ifdef INET6 ++ ntohs(((struct sockaddr_in *)rmt_sin)->sin_port), ++ ntohs(((struct sockaddr_in *)our_sin)->sin_port)); ++#else + ntohs(rmt_sin->sin_port), + ntohs(our_sin->sin_port)); ++#endif + fflush(fp); + + /* +@@ -144,8 +203,13 @@ + && ferror(fp) == 0 && feof(fp) == 0 + && sscanf(buffer, "%u , %u : USERID :%*[^:]:%255s", + &rmt_port, &our_port, user) == 3 ++#ifdef INET6 ++ && ntohs(((struct sockaddr_in *)rmt_sin)->sin_port) == rmt_port ++ && ntohs(((struct sockaddr_in *)our_sin)->sin_port) == our_port) { ++#else + && ntohs(rmt_sin->sin_port) == rmt_port + && ntohs(our_sin->sin_port) == our_port) { ++#endif + + /* + * Strip trailing carriage return. It is part of the +diff -ruN tcp_wrappers_7.6.orig/scaffold.c tcp_wrappers_7.6/scaffold.c +--- tcp_wrappers_7.6.orig/scaffold.c 1997-03-21 19:27:24.000000000 +0100 ++++ tcp_wrappers_7.6/scaffold.c 2004-04-10 19:07:43.000000000 +0200 +@@ -25,7 +25,9 @@ + #define INADDR_NONE (-1) /* XXX should be 0xffffffff */ + #endif + ++#ifndef INET6 + extern char *malloc(); ++#endif + + /* Application-specific. */ + +@@ -39,6 +41,7 @@ + int deny_severity = LOG_WARNING; + int rfc931_timeout = RFC931_TIMEOUT; + ++#ifndef INET6 + /* dup_hostent - create hostent in one memory block */ + + static struct hostent *dup_hostent(hp) +@@ -73,9 +76,46 @@ + } + return (&hb->host); + } ++#endif + + /* find_inet_addr - find all addresses for this host, result to free() */ + ++#ifdef INET6 ++struct addrinfo *find_inet_addr(host) ++char *host; ++{ ++ struct addrinfo hints, *res; ++ ++ memset(&hints, 0, sizeof(hints)); ++ hints.ai_family = PF_UNSPEC; ++ hints.ai_socktype = SOCK_STREAM; ++ hints.ai_flags = AI_PASSIVE | AI_NUMERICHOST; ++ if (getaddrinfo(host, NULL, &hints, &res) == 0) ++ return (res); ++ ++ memset(&hints, 0, sizeof(hints)); ++ hints.ai_family = PF_UNSPEC; ++ hints.ai_socktype = SOCK_STREAM; ++ hints.ai_flags = AI_PASSIVE | AI_CANONNAME; ++ if (getaddrinfo(host, NULL, &hints, &res) != 0) { ++ tcpd_warn("%s: host not found", host); ++ return (0); ++ } ++ if (res->ai_family != AF_INET6 && res->ai_family != AF_INET) { ++ tcpd_warn("%d: not an internet host", res->ai_family); ++ freeaddrinfo(res); ++ return (0); ++ } ++ if (!res->ai_canonname) { ++ tcpd_warn("%s: hostname alias", host); ++ tcpd_warn("(cannot obtain official name)", res->ai_canonname); ++ } else if (STR_NE(host, res->ai_canonname)) { ++ tcpd_warn("%s: hostname alias", host); ++ tcpd_warn("(official name: %.*s)", STRING_LENGTH, res->ai_canonname); ++ } ++ return (res); ++} ++#else + struct hostent *find_inet_addr(host) + char *host; + { +@@ -118,6 +158,7 @@ + } + return (dup_hostent(hp)); + } ++#endif + + /* check_dns - give each address thorough workout, return address count */ + +@@ -125,8 +166,13 @@ + char *host; + { + struct request_info request; ++#ifdef INET6 ++ struct sockaddr_storage sin; ++ struct addrinfo *hp, *res; ++#else + struct sockaddr_in sin; + struct hostent *hp; ++#endif + int count; + char *addr; + +@@ -134,11 +180,18 @@ + return (0); + request_init(&request, RQ_CLIENT_SIN, &sin, 0); + sock_methods(&request); ++#ifndef INET6 + memset((char *) &sin, 0, sizeof(sin)); + sin.sin_family = AF_INET; ++#endif + ++#ifdef INET6 ++ for (res = hp, count = 0; res; res = res->ai_next, count++) { ++ memcpy(&sin, res->ai_addr, res->ai_addrlen); ++#else + for (count = 0; (addr = hp->h_addr_list[count]) != 0; count++) { + memcpy((char *) &sin.sin_addr, addr, sizeof(sin.sin_addr)); ++#endif + + /* + * Force host name and address conversions. Use the request structure +@@ -151,7 +204,11 @@ + tcpd_warn("host address %s->name lookup failed", + eval_hostaddr(request.client)); + } ++#ifdef INET6 ++ freeaddrinfo(hp); ++#else + free((char *) hp); ++#endif + return (count); + } + +diff -ruN tcp_wrappers_7.6.orig/scaffold.h tcp_wrappers_7.6/scaffold.h +--- tcp_wrappers_7.6.orig/scaffold.h 1994-12-31 18:19:20.000000000 +0100 ++++ tcp_wrappers_7.6/scaffold.h 2004-04-10 19:07:43.000000000 +0200 +@@ -4,6 +4,10 @@ + * Author: Wietse Venema, Eindhoven University of Technology, The Netherlands. + */ + ++#ifdef INET6 ++extern struct addrinfo *find_inet_addr(); ++#else + extern struct hostent *find_inet_addr(); ++#endif + extern int check_dns(); + extern int check_path(); +diff -ruN tcp_wrappers_7.6.orig/socket.c tcp_wrappers_7.6/socket.c +--- tcp_wrappers_7.6.orig/socket.c 2004-04-10 19:22:58.000000000 +0200 ++++ tcp_wrappers_7.6/socket.c 2004-04-10 19:07:43.000000000 +0200 +@@ -24,13 +24,22 @@ + #include + #include + #include ++#ifdef INT32_T ++typedef uint32_t u_int32_t; ++#endif + #include + #include + #include + #include + #include + ++#ifdef INET6 ++#ifndef NI_WITHSCOPEID ++#define NI_WITHSCOPEID 0 ++#endif ++#else + extern char *inet_ntoa(); ++#endif + + /* Local stuff. */ + +@@ -79,8 +88,13 @@ + void sock_host(request) + struct request_info *request; + { ++#ifdef INET6 ++ static struct sockaddr_storage client; ++ static struct sockaddr_storage server; ++#else + static struct sockaddr_in client; + static struct sockaddr_in server; ++#endif + int len; + char buf[BUFSIZ]; + int fd = request->fd; +@@ -109,7 +123,11 @@ + memset(buf, 0 sizeof(buf)); + #endif + } ++#ifdef INET6 ++ request->client->sin = (struct sockaddr *)&client; ++#else + request->client->sin = &client; ++#endif + + /* + * Determine the server binding. This is used for client username +@@ -122,7 +140,11 @@ + tcpd_warn("getsockname: %m"); + return; + } ++#ifdef INET6 ++ request->server->sin = (struct sockaddr *)&server; ++#else + request->server->sin = &server; ++#endif + } + + /* sock_hostaddr - map endpoint address to printable form */ +@@ -130,10 +152,26 @@ + void sock_hostaddr(host) + struct host_info *host; + { ++#ifdef INET6 ++ struct sockaddr *sin = host->sin; ++ int salen; ++ ++ if (!sin) ++ return; ++#ifdef SIN6_LEN ++ salen = sin->sa_len; ++#else ++ salen = (sin->sa_family == AF_INET) ? sizeof(struct sockaddr_in) ++ : sizeof(struct sockaddr_in6); ++#endif ++ getnameinfo(sin, salen, host->addr, sizeof(host->addr), ++ NULL, 0, NI_NUMERICHOST | NI_WITHSCOPEID); ++#else + struct sockaddr_in *sin = host->sin; + + if (sin != 0) + STRN_CPY(host->addr, inet_ntoa(sin->sin_addr), sizeof(host->addr)); ++#endif + } + + /* sock_hostname - map endpoint address to host name */ +@@ -141,6 +179,160 @@ + void sock_hostname(host) + struct host_info *host; + { ++#ifdef INET6 ++ struct sockaddr *sin = host->sin; ++ struct sockaddr_in sin4; ++ struct addrinfo hints, *res, *res0 = NULL; ++ int salen, alen, err = 1; ++ char *ap = NULL, *rap, hname[NI_MAXHOST]; ++ ++ if (sin != NULL) { ++ if (sin->sa_family == AF_INET6) { ++ struct sockaddr_in6 *sin6 = (struct sockaddr_in6 *)sin; ++ ++ if (IN6_IS_ADDR_V4MAPPED(&sin6->sin6_addr)) { ++ memset(&sin4, 0, sizeof(sin4)); ++#ifdef SIN6_LEN ++ sin4.sin_len = sizeof(sin4); ++#endif ++ sin4.sin_family = AF_INET; ++ sin4.sin_port = sin6->sin6_port; ++ sin4.sin_addr.s_addr = *(u_int32_t *)&sin6->sin6_addr.s6_addr[12]; ++ sin = (struct sockaddr *)&sin4; ++ } ++ } ++ switch (sin->sa_family) { ++ case AF_INET: ++ ap = (char *)&((struct sockaddr_in *)sin)->sin_addr; ++ alen = sizeof(struct in_addr); ++ salen = sizeof(struct sockaddr_in); ++ break; ++ case AF_INET6: ++ ap = (char *)&((struct sockaddr_in6 *)sin)->sin6_addr; ++ alen = sizeof(struct in6_addr); ++ salen = sizeof(struct sockaddr_in6); ++ break; ++ default: ++ break; ++ } ++ if (ap) ++ err = getnameinfo(sin, salen, hname, sizeof(hname), ++ NULL, 0, NI_WITHSCOPEID | NI_NAMEREQD); ++ } ++ if (!err) { ++ ++ STRN_CPY(host->name, hname, sizeof(host->name)); ++ ++ /* reject numeric addresses */ ++ memset(&hints, 0, sizeof(hints)); ++ hints.ai_family = sin->sa_family; ++ hints.ai_socktype = SOCK_STREAM; ++ hints.ai_flags = AI_PASSIVE | AI_CANONNAME | AI_NUMERICHOST; ++ if ((err = getaddrinfo(host->name, NULL, &hints, &res0) == 0)) { ++ freeaddrinfo(res0); ++ res0 = NULL; ++ tcpd_warn("host name/name mismatch: " ++ "reverse lookup results in non-FQDN %s", ++ host->name); ++ strcpy(host->name, paranoid); /* name is bad, clobber it */ ++ } ++ err = !err; ++ } ++ if (!err) { ++ /* we are now sure that this is non-numeric */ ++ ++ /* ++ * Verify that the address is a member of the address list returned ++ * by gethostbyname(hostname). ++ * ++ * Verify also that gethostbyaddr() and gethostbyname() return the same ++ * hostname, or rshd and rlogind may still end up being spoofed. ++ * ++ * On some sites, gethostbyname("localhost") returns "localhost.domain". ++ * This is a DNS artefact. We treat it as a special case. When we ++ * can't believe the address list from gethostbyname("localhost") ++ * we're in big trouble anyway. ++ */ ++ ++ memset(&hints, 0, sizeof(hints)); ++ hints.ai_family = sin->sa_family; ++ hints.ai_socktype = SOCK_STREAM; ++ hints.ai_flags = AI_PASSIVE | AI_CANONNAME; ++ if (getaddrinfo(host->name, NULL, &hints, &res0) != 0) { ++ ++ /* ++ * Unable to verify that the host name matches the address. This ++ * may be a transient problem or a botched name server setup. ++ */ ++ ++ tcpd_warn("can't verify hostname: getaddrinfo(%s, %s) failed", ++ host->name, ++ (sin->sa_family == AF_INET) ? "AF_INET" : "AF_INET6"); ++ ++ } else if ((res0->ai_canonname == NULL ++ || STR_NE(host->name, res0->ai_canonname)) ++ && STR_NE(host->name, "localhost")) { ++ ++ /* ++ * The gethostbyaddr() and gethostbyname() calls did not return ++ * the same hostname. This could be a nameserver configuration ++ * problem. It could also be that someone is trying to spoof us. ++ */ ++ ++ tcpd_warn("host name/name mismatch: %s != %.*s", ++ host->name, STRING_LENGTH, ++ (res0->ai_canonname == NULL) ? "" : res0->ai_canonname); ++ ++ } else { ++ ++ /* ++ * The address should be a member of the address list returned by ++ * gethostbyname(). We should first verify that the h_addrtype ++ * field is AF_INET, but this program has already caused too much ++ * grief on systems with broken library code. ++ */ ++ ++ for (res = res0; res; res = res->ai_next) { ++ if (res->ai_family != sin->sa_family) ++ continue; ++ switch (res->ai_family) { ++ case AF_INET: ++ rap = (char *)&((struct sockaddr_in *)res->ai_addr)->sin_addr; ++ break; ++ case AF_INET6: ++ /* need to check scope_id */ ++ if (((struct sockaddr_in6 *)sin)->sin6_scope_id != ++ ((struct sockaddr_in6 *)res->ai_addr)->sin6_scope_id) { ++ continue; ++ } ++ rap = (char *)&((struct sockaddr_in6 *)res->ai_addr)->sin6_addr; ++ break; ++ default: ++ continue; ++ } ++ if (memcmp(rap, ap, alen) == 0) { ++ freeaddrinfo(res0); ++ return; /* name is good, keep it */ ++ } ++ } ++ ++ /* ++ * The host name does not map to the initial address. Perhaps ++ * someone has messed up. Perhaps someone compromised a name ++ * server. ++ */ ++ ++ getnameinfo(sin, salen, hname, sizeof(hname), ++ NULL, 0, NI_NUMERICHOST | NI_WITHSCOPEID); ++ tcpd_warn("host name/address mismatch: %s != %.*s", ++ hname, STRING_LENGTH, ++ (res0->ai_canonname == NULL) ? "" : res0->ai_canonname); ++ } ++ strcpy(host->name, paranoid); /* name is bad, clobber it */ ++ if (res0) ++ freeaddrinfo(res0); ++ } ++#else /* INET6 */ + struct sockaddr_in *sin = host->sin; + struct hostent *hp; + int i; +@@ -220,6 +412,7 @@ + } + strcpy(host->name, paranoid); /* name is bad, clobber it */ + } ++#endif /* INET6 */ + } + + /* sock_sink - absorb unreceived IP datagram */ +@@ -228,7 +421,11 @@ + int fd; + { + char buf[BUFSIZ]; ++#ifdef INET6 ++ struct sockaddr_storage sin; ++#else + struct sockaddr_in sin; ++#endif + int size = sizeof(sin); + + /* +diff -ruN tcp_wrappers_7.6.orig/tcpd.c tcp_wrappers_7.6/tcpd.c +--- tcp_wrappers_7.6.orig/tcpd.c 1996-02-11 17:01:33.000000000 +0100 ++++ tcp_wrappers_7.6/tcpd.c 2004-04-10 19:07:43.000000000 +0200 +@@ -120,7 +120,12 @@ + + /* Report request and invoke the real daemon program. */ + ++#ifdef INET6 ++ syslog(allow_severity, "connect from %s (%s)", ++ eval_client(&request), eval_hostaddr(request.client)); ++#else + syslog(allow_severity, "connect from %s", eval_client(&request)); ++#endif + closelog(); + (void) execv(path, argv); + syslog(LOG_ERR, "error: cannot execute %s: %m", path); +diff -ruN tcp_wrappers_7.6.orig/tcpdchk.c tcp_wrappers_7.6/tcpdchk.c +--- tcp_wrappers_7.6.orig/tcpdchk.c 1997-02-12 02:13:25.000000000 +0100 ++++ tcp_wrappers_7.6/tcpdchk.c 2004-04-10 19:07:43.000000000 +0200 +@@ -22,6 +22,9 @@ + + #include + #include ++#ifdef INET6 ++#include ++#endif + #include + #include + #include +@@ -397,6 +400,31 @@ + } + } + ++#ifdef INET6 ++static int is_inet6_addr(pat) ++ char *pat; ++{ ++ struct addrinfo hints, *res; ++ int len, ret; ++ char ch; ++ ++ if (*pat != '[') ++ return (0); ++ len = strlen(pat); ++ if ((ch = pat[len - 1]) != ']') ++ return (0); ++ pat[len - 1] = '\0'; ++ memset(&hints, 0, sizeof(hints)); ++ hints.ai_family = AF_INET6; ++ hints.ai_socktype = SOCK_STREAM; ++ hints.ai_flags = AI_PASSIVE | AI_NUMERICHOST; ++ if ((ret = getaddrinfo(pat + 1, NULL, &hints, &res)) == 0) ++ freeaddrinfo(res); ++ pat[len - 1] = ch; ++ return (ret == 0); ++} ++#endif ++ + /* check_host - criticize host pattern */ + + static int check_host(pat) +@@ -423,14 +451,27 @@ + #endif + #endif + } else if (mask = split_at(pat, '/')) { /* network/netmask */ ++#ifdef INET6 ++ int mask_len; ++ ++ if ((dot_quad_addr(pat) == INADDR_NONE ++ || dot_quad_addr(mask) == INADDR_NONE) ++ && (!is_inet6_addr(pat) ++ || ((mask_len = atoi(mask)) < 0 || mask_len > 128))) ++#else + if (dot_quad_addr(pat) == INADDR_NONE + || dot_quad_addr(mask) == INADDR_NONE) ++#endif + tcpd_warn("%s/%s: bad net/mask pattern", pat, mask); + } else if (STR_EQ(pat, "FAIL")) { /* obsolete */ + tcpd_warn("FAIL is no longer recognized"); + tcpd_warn("(use EXCEPT or DENY instead)"); + } else if (reserved_name(pat)) { /* other reserved */ + /* void */ ; ++#ifdef INET6 ++ } else if (is_inet6_addr(pat)) { /* IPv6 address */ ++ addr_count = 1; ++#endif + } else if (NOT_INADDR(pat)) { /* internet name */ + if (pat[strlen(pat) - 1] == '.') { + tcpd_warn("%s: domain or host name ends in dot", pat); +diff -ruN tcp_wrappers_7.6.orig/tcpd.h tcp_wrappers_7.6/tcpd.h +--- tcp_wrappers_7.6.orig/tcpd.h 1996-03-19 16:22:25.000000000 +0100 ++++ tcp_wrappers_7.6/tcpd.h 2004-04-10 19:07:43.000000000 +0200 +@@ -11,7 +11,11 @@ + struct host_info { + char name[STRING_LENGTH]; /* access via eval_hostname(host) */ + char addr[STRING_LENGTH]; /* access via eval_hostaddr(host) */ ++#ifdef INET6 ++ struct sockaddr *sin; /* socket address or 0 */ ++#else + struct sockaddr_in *sin; /* socket address or 0 */ ++#endif + struct t_unitdata *unit; /* TLI transport address or 0 */ + struct request_info *request; /* for shared information */ + }; +diff -ruN tcp_wrappers_7.6.orig/tcpdmatch.c tcp_wrappers_7.6/tcpdmatch.c +--- tcp_wrappers_7.6.orig/tcpdmatch.c 1996-02-11 17:01:36.000000000 +0100 ++++ tcp_wrappers_7.6/tcpdmatch.c 2004-04-10 19:07:43.000000000 +0200 +@@ -57,7 +57,11 @@ + int argc; + char **argv; + { ++#ifdef INET6 ++ struct addrinfo hints, *hp, *res; ++#else + struct hostent *hp; ++#endif + char *myname = argv[0]; + char *client; + char *server; +@@ -68,8 +72,13 @@ + int ch; + char *inetcf = 0; + int count; ++#ifdef INET6 ++ struct sockaddr_storage server_sin; ++ struct sockaddr_storage client_sin; ++#else + struct sockaddr_in server_sin; + struct sockaddr_in client_sin; ++#endif + struct stat st; + + /* +@@ -172,13 +181,20 @@ + if (NOT_INADDR(server) == 0 || HOSTNAME_KNOWN(server)) { + if ((hp = find_inet_addr(server)) == 0) + exit(1); ++#ifndef INET6 + memset((char *) &server_sin, 0, sizeof(server_sin)); + server_sin.sin_family = AF_INET; ++#endif + request_set(&request, RQ_SERVER_SIN, &server_sin, 0); + ++#ifdef INET6 ++ for (res = hp, count = 0; res; res = res->ai_next, count++) { ++ memcpy(&server_sin, res->ai_addr, res->ai_addrlen); ++#else + for (count = 0; (addr = hp->h_addr_list[count]) != 0; count++) { + memcpy((char *) &server_sin.sin_addr, addr, + sizeof(server_sin.sin_addr)); ++#endif + + /* + * Force evaluation of server host name and address. Host name +@@ -194,7 +210,11 @@ + fprintf(stderr, "Please specify an address instead\n"); + exit(1); + } ++#ifdef INET6 ++ freeaddrinfo(hp); ++#else + free((char *) hp); ++#endif + } else { + request_set(&request, RQ_SERVER_NAME, server, 0); + } +@@ -208,6 +228,18 @@ + tcpdmatch(&request); + exit(0); + } ++#ifdef INET6 ++ memset(&hints, 0, sizeof(hints)); ++ hints.ai_family = AF_INET6; ++ hints.ai_socktype = SOCK_STREAM; ++ hints.ai_flags = AI_PASSIVE | AI_NUMERICHOST; ++ if (getaddrinfo(client, NULL, &hints, &res) == 0) { ++ freeaddrinfo(res); ++ request_set(&request, RQ_CLIENT_ADDR, client, 0); ++ tcpdmatch(&request); ++ exit(0); ++ } ++#endif + + /* + * Perhaps they are testing special client hostname patterns that aren't +@@ -229,6 +261,34 @@ + */ + if ((hp = find_inet_addr(client)) == 0) + exit(1); ++#ifdef INET6 ++ request_set(&request, RQ_CLIENT_SIN, &client_sin, 0); ++ ++ for (res = hp, count = 0; res; res = res->ai_next, count++) { ++ memcpy(&client_sin, res->ai_addr, res->ai_addrlen); ++ ++ /* ++ * getnameinfo() doesn't do reverse lookup against link-local ++ * address. So, we pass through host name evaluation against ++ * such addresses. ++ */ ++ if (res->ai_family != AF_INET6 || ++ !IN6_IS_ADDR_LINKLOCAL(&((struct sockaddr_in6 *)res->ai_addr)->sin6_addr)) { ++ /* ++ * Force evaluation of client host name and address. Host name ++ * conflicts will be reported while eval_hostname() does its job. ++ */ ++ request_set(&request, RQ_CLIENT_NAME, "", RQ_CLIENT_ADDR, "", 0); ++ if (STR_EQ(eval_hostname(request.client), unknown)) ++ tcpd_warn("host address %s->name lookup failed", ++ eval_hostaddr(request.client)); ++ } ++ tcpdmatch(&request); ++ if (res->ai_next) ++ printf("\n"); ++ } ++ freeaddrinfo(hp); ++#else + memset((char *) &client_sin, 0, sizeof(client_sin)); + client_sin.sin_family = AF_INET; + request_set(&request, RQ_CLIENT_SIN, &client_sin, 0); +@@ -250,6 +310,7 @@ + printf("\n"); + } + free((char *) hp); ++#endif + exit(0); + } + +diff -ruN tcp_wrappers_7.6.orig/tli.c tcp_wrappers_7.6/tli.c +--- tcp_wrappers_7.6.orig/tli.c 1997-03-21 19:27:26.000000000 +0100 ++++ tcp_wrappers_7.6/tli.c 2004-04-10 19:07:43.000000000 +0200 +@@ -65,8 +65,13 @@ + void tli_host(request) + struct request_info *request; + { ++#ifdef INET6 ++ static struct sockaddr_storage client; ++ static struct sockaddr_storage server; ++#else + static struct sockaddr_in client; + static struct sockaddr_in server; ++#endif + + /* + * If we discover that we are using an IP transport, pretend we never +@@ -76,14 +81,29 @@ + + tli_endpoints(request); + if ((request->config = tli_transport(request->fd)) != 0 ++#ifdef INET6 ++ && (STR_EQ(request->config->nc_protofmly, "inet") || ++ STR_EQ(request->config->nc_protofmly, "inet6"))) { ++#else + && STR_EQ(request->config->nc_protofmly, "inet")) { ++#endif + if (request->client->unit != 0) { ++#ifdef INET6 ++ client = *(struct sockaddr_storage *) request->client->unit->addr.buf; ++ request->client->sin = (struct sockaddr *) &client; ++#else + client = *(struct sockaddr_in *) request->client->unit->addr.buf; + request->client->sin = &client; ++#endif + } + if (request->server->unit != 0) { ++#ifdef INET6 ++ server = *(struct sockaddr_storage *) request->server->unit->addr.buf; ++ request->server->sin = (struct sockaddr *) &server; ++#else + server = *(struct sockaddr_in *) request->server->unit->addr.buf; + request->server->sin = &server; ++#endif + } + tli_cleanup(request); + sock_methods(request); +@@ -187,7 +207,15 @@ + } + while (config = getnetconfig(handlep)) { + if (stat(config->nc_device, &from_config) == 0) { ++#ifdef NO_CLONE_DEVICE ++ /* ++ * If the network devices are not cloned (as is the case for ++ * Solaris 8 Beta), we must compare the major device numbers. ++ */ ++ if (major(from_config.st_rdev) == major(from_client.st_rdev)) ++#else + if (minor(from_config.st_rdev) == major(from_client.st_rdev)) ++#endif + break; + } + } +diff -ruN tcp_wrappers_7.6.orig/update.c tcp_wrappers_7.6/update.c +--- tcp_wrappers_7.6.orig/update.c 1994-12-28 17:42:56.000000000 +0100 ++++ tcp_wrappers_7.6/update.c 2004-04-10 19:07:43.000000000 +0200 +@@ -46,10 +46,18 @@ + request->fd = va_arg(ap, int); + continue; + case RQ_CLIENT_SIN: ++#ifdef INET6 ++ request->client->sin = va_arg(ap, struct sockaddr *); ++#else + request->client->sin = va_arg(ap, struct sockaddr_in *); ++#endif + continue; + case RQ_SERVER_SIN: ++#ifdef INET6 ++ request->server->sin = va_arg(ap, struct sockaddr *); ++#else + request->server->sin = va_arg(ap, struct sockaddr_in *); ++#endif + continue; + + /* +diff -ruN tcp_wrappers_7.6.orig/workarounds.c tcp_wrappers_7.6/workarounds.c +--- tcp_wrappers_7.6.orig/workarounds.c 1996-03-19 16:22:26.000000000 +0100 ++++ tcp_wrappers_7.6/workarounds.c 2004-04-10 19:07:43.000000000 +0200 +@@ -166,11 +166,22 @@ + int *len; + { + int ret; ++#ifdef INET6 ++ struct sockaddr *sin = sa; ++#else + struct sockaddr_in *sin = (struct sockaddr_in *) sa; ++#endif + + if ((ret = getpeername(sock, sa, len)) >= 0 ++#ifdef INET6 ++ && ((sin->su_si.si_family == AF_INET6 ++ && IN6_IS_ADDR_UNSPECIFIED(&sin->su_sin6.sin6_addr)) ++ || (sin->su_si.si_family == AF_INET ++ && sin->su_sin.sin_addr.s_addr == 0))) { ++#else + && sa->sa_family == AF_INET + && sin->sin_addr.s_addr == 0) { ++#endif + errno = ENOTCONN; + return (-1); + } else { diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/11_tcpd_blacklist.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/11_tcpd_blacklist.patch new file mode 100644 index 0000000000..0238e35208 --- /dev/null +++ b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/11_tcpd_blacklist.patch @@ -0,0 +1,151 @@ +Path: news.porcupine.org!news.porcupine.org!not-for-mail +From: Wietse Venema +Newsgroups: comp.mail.sendmail,comp.security.unix +Subject: TCP Wrapper Blacklist Extension +Followup-To: poster +Date: 8 Sep 1997 18:53:13 -0400 +Organization: Wietse's hangout while on sabattical in the USA +Lines: 147 +Sender: wietse@spike.porcupine.org +Message-ID: <5v1vkp$h4f$1@spike.porcupine.org> +NNTP-Posting-Host: spike.porcupine.org +Xref: news.porcupine.org comp.mail.sendmail:3541 comp.security.unix:7158 + +The patch below adds a new host pattern to the TCP Wrapper access +control language. Instead of a host name or address pattern, you +can specify an external /file/name with host name or address +patterns. The feature can be used recursively. + +The /file/name extension makes it easy to blacklist bad sites, for +example, to block unwanted electronic mail when libwrap is linked +into sendmail. Adding hosts to a simple text file is much easier +than having to edit a more complex hosts.allow/deny file. + +I developed this a year or so ago as a substitute for NIS netgroups. +At that time, I did not consider it of sufficient interest for +inclusion in the TCP Wrapper distribution. How times have changed. + +The patch is relative to TCP Wrappers version 7.6. The main archive +site is ftp://ftp.win.tue.nl/pub/security/tcp_wrappers_7.6.tar.gz + +Thanks to the Debian LINUX folks for expressing their interest in +this patch. + + Wietse + + +[diff updated by Md] + +diff -ruN tcp_wrappers_7.6.orig/hosts_access.5 tcp_wrappers_7.6/hosts_access.5 +--- tcp_wrappers_7.6.orig/hosts_access.5 2004-04-10 19:28:09.000000000 +0200 ++++ tcp_wrappers_7.6/hosts_access.5 2004-04-10 19:28:01.000000000 +0200 +@@ -97,6 +97,13 @@ + `[3ffe:505:2:1::]/64\' matches every address in the range + `3ffe:505:2:1::\' through `3ffe:505:2:1:ffff:ffff:ffff:ffff\'. + .IP \(bu ++A string that begins with a `/\' character is treated as a file ++name. A host name or address is matched if it matches any host name ++or address pattern listed in the named file. The file format is ++zero or more lines with zero or more host name or address patterns ++separated by whitespace. A file name pattern can be used anywhere ++a host name or address pattern can be used. ++.IP \(bu + Wildcards `*\' and `?\' can be used to match hostnames or IP addresses. This + method of matching cannot be used in conjunction with `net/mask\' matching, + hostname matching beginning with `.\' or IP address matching ending with `.\'. +diff -ruN tcp_wrappers_7.6.orig/hosts_access.c tcp_wrappers_7.6/hosts_access.c +--- tcp_wrappers_7.6.orig/hosts_access.c 2004-04-10 19:28:09.000000000 +0200 ++++ tcp_wrappers_7.6/hosts_access.c 2004-04-10 19:27:05.000000000 +0200 +@@ -253,6 +253,26 @@ + } + } + ++/* hostfile_match - look up host patterns from file */ ++ ++static int hostfile_match(path, host) ++char *path; ++struct hosts_info *host; ++{ ++ char tok[BUFSIZ]; ++ int match = NO; ++ FILE *fp; ++ ++ if ((fp = fopen(path, "r")) != 0) { ++ while (fscanf(fp, "%s", tok) == 1 && !(match = host_match(tok, host))) ++ /* void */ ; ++ fclose(fp); ++ } else if (errno != ENOENT) { ++ tcpd_warn("open %s: %m", path); ++ } ++ return (match); ++} ++ + /* host_match - match host name and/or address against pattern */ + + static int host_match(tok, host) +@@ -280,6 +300,8 @@ + tcpd_warn("netgroup support is disabled"); /* not tcpd_jump() */ + return (NO); + #endif ++ } else if (tok[0] == '/') { /* /file hack */ ++ return (hostfile_match(tok, host)); + } else if (STR_EQ(tok, "KNOWN")) { /* check address and name */ + char *name = eval_hostname(host); + return (STR_NE(eval_hostaddr(host), unknown) && HOSTNAME_KNOWN(name)); +diff -ruN tcp_wrappers_7.6.orig/tcpdchk.c tcp_wrappers_7.6/tcpdchk.c +--- tcp_wrappers_7.6.orig/tcpdchk.c 2004-04-10 19:28:09.000000000 +0200 ++++ tcp_wrappers_7.6/tcpdchk.c 2004-04-10 19:27:05.000000000 +0200 +@@ -353,6 +353,8 @@ + { + if (pat[0] == '@') { + tcpd_warn("%s: daemon name begins with \"@\"", pat); ++ } else if (pat[0] == '/') { ++ tcpd_warn("%s: daemon name begins with \"/\"", pat); + } else if (pat[0] == '.') { + tcpd_warn("%s: daemon name begins with dot", pat); + } else if (pat[strlen(pat) - 1] == '.') { +@@ -385,6 +387,8 @@ + { + if (pat[0] == '@') { /* @netgroup */ + tcpd_warn("%s: user name begins with \"@\"", pat); ++ } else if (pat[0] == '/') { ++ tcpd_warn("%s: user name begins with \"/\"", pat); + } else if (pat[0] == '.') { + tcpd_warn("%s: user name begins with dot", pat); + } else if (pat[strlen(pat) - 1] == '.') { +@@ -430,8 +434,13 @@ + static int check_host(pat) + char *pat; + { ++ char buf[BUFSIZ]; + char *mask; + int addr_count = 1; ++ FILE *fp; ++ struct tcpd_context saved_context; ++ char *cp; ++ char *wsp = " \t\r\n"; + + if (pat[0] == '@') { /* @netgroup */ + #ifdef NO_NETGRENT +@@ -450,6 +459,21 @@ + tcpd_warn("netgroup support disabled"); + #endif + #endif ++ } else if (pat[0] == '/') { /* /path/name */ ++ if ((fp = fopen(pat, "r")) != 0) { ++ saved_context = tcpd_context; ++ tcpd_context.file = pat; ++ tcpd_context.line = 0; ++ while (fgets(buf, sizeof(buf), fp)) { ++ tcpd_context.line++; ++ for (cp = strtok(buf, wsp); cp; cp = strtok((char *) 0, wsp)) ++ check_host(cp); ++ } ++ tcpd_context = saved_context; ++ fclose(fp); ++ } else if (errno != ENOENT) { ++ tcpd_warn("open %s: %m", pat); ++ } + } else if (mask = split_at(pat, '/')) { /* network/netmask */ + #ifdef INET6 + int mask_len; diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/11_usagi_fix.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/11_usagi_fix.patch new file mode 100644 index 0000000000..88a2b5e43b --- /dev/null +++ b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/11_usagi_fix.patch @@ -0,0 +1,45 @@ +diff -uN tcp_wrappers_7.6/hosts_access.c tcp_wrappers_7.6.new/hosts_access.c +--- tcp_wrappers_7.6/hosts_access.c Mon May 20 14:00:56 2002 ++++ tcp_wrappers_7.6.new/hosts_access.c Mon May 20 14:25:05 2002 +@@ -448,6 +448,15 @@ + int len, mask_len, i = 0; + char ch; + ++ /* ++ * Behavior of getaddrinfo() against IPv4-mapped IPv6 address is ++ * different between KAME and Solaris8. While KAME returns ++ * AF_INET6, Solaris8 returns AF_INET. So, we avoid this here. ++ */ ++ if (STRN_EQ(string, "::ffff:", 7) ++ && dot_quad_addr(string + 7) != INADDR_NONE) ++ return (masked_match4(net_tok, mask_tok, string + 7)); ++ + memset(&hints, 0, sizeof(hints)); + hints.ai_family = AF_INET6; + hints.ai_socktype = SOCK_STREAM; +@@ -457,13 +466,6 @@ + memcpy(&addr, res->ai_addr, sizeof(addr)); + freeaddrinfo(res); + +- if (IN6_IS_ADDR_V4MAPPED(&addr.sin6_addr)) { +- if ((*(u_int32_t *)&net.sin6_addr.s6_addr[12] = dot_quad_addr(net_tok)) == INADDR_NONE +- || (mask = dot_quad_addr(mask_tok)) == INADDR_NONE) +- return (NO); +- return ((*(u_int32_t *)&addr.sin6_addr.s6_addr[12] & mask) == *(u_int32_t *)&net.sin6_addr.s6_addr[12]); +- } +- + /* match IPv6 address against netnumber/prefixlen */ + len = strlen(net_tok); + if (*net_tok != '[' || net_tok[len - 1] != ']') +diff -uN tcp_wrappers_7.6/socket.c tcp_wrappers_7.6.new/socket.c +--- tcp_wrappers_7.6/socket.c Mon May 20 13:48:35 2002 ++++ tcp_wrappers_7.6.new/socket.c Mon May 20 14:22:27 2002 +@@ -228,7 +228,7 @@ + hints.ai_family = sin->sa_family; + hints.ai_socktype = SOCK_STREAM; + hints.ai_flags = AI_PASSIVE | AI_CANONNAME | AI_NUMERICHOST; +- if ((err = getaddrinfo(host->name, NULL, &hints, &res0) == 0)) { ++ if ((err = getaddrinfo(host->name, NULL, &hints, &res0)) == 0) { + freeaddrinfo(res0); + res0 = NULL; + tcpd_warn("host name/name mismatch: " diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/12_makefile_config.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/12_makefile_config.patch new file mode 100644 index 0000000000..60ca594bee --- /dev/null +++ b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/12_makefile_config.patch @@ -0,0 +1,81 @@ +diff -ruN tcp_wrappers_7.6.orig/Makefile tcp_wrappers_7.6/Makefile +--- tcp_wrappers_7.6.orig/Makefile 2003-08-21 01:43:39.000000000 +0200 ++++ tcp_wrappers_7.6/Makefile 2003-08-21 01:43:35.000000000 +0200 +@@ -45,7 +45,7 @@ + # + # SysV.4 Solaris 2.x OSF AIX + #REAL_DAEMON_DIR=/usr/sbin +-# ++REAL_DAEMON_DIR=/usr/sbin + # BSD 4.4 + #REAL_DAEMON_DIR=/usr/libexec + # +@@ -512,6 +519,7 @@ + # (examples: allow, deny, banners, twist and spawn). + # + #STYLE = -DPROCESS_OPTIONS # Enable language extensions. ++STYLE = -DPROCESS_OPTIONS + + ################################################################ + # Optional: Changing the default disposition of logfile records +@@ -535,6 +543,7 @@ + # The LOG_XXX names below are taken from the /usr/include/syslog.h file. + + FACILITY= LOG_MAIL # LOG_MAIL is what most sendmail daemons use ++FACILITY= LOG_DAEMON + + # The syslog priority at which successful connections are logged. + +@@ -631,6 +640,7 @@ + # lookups altogether, see the next section. + + PARANOID= -DPARANOID ++PARANOID= + + ######################################## + # Optional: turning off hostname lookups +@@ -644,6 +654,7 @@ + # mode (see previous section) and comment out the following definition. + + HOSTNAME= -DALWAYS_HOSTNAME ++HOSTNAME= + + ############################################# + # Optional: Turning on host ADDRESS checking +@@ -670,6 +681,7 @@ + # Solaris 2.x, and Linux. See your system documentation for details. + # + # KILL_OPT= -DKILL_IP_OPTIONS ++KILL_OPT= -DKILL_IP_OPTIONS + + ## End configuration options + ############################ +@@ -677,9 +689,10 @@ + # Protection against weird shells or weird make programs. + + SHELL = /bin/sh +-.c.o:; $(CC) $(CFLAGS) -c $*.c ++.c.o:; $(CC) $(CFLAGS) -o $*.o -c $*.c + +-CFLAGS = -O -DFACILITY=$(FACILITY) $(ACCESS) $(PARANOID) $(NETGROUP) \ ++COPTS = -O2 -g ++CFLAGS = $(COPTS) -DFACILITY=$(FACILITY) $(ACCESS) $(PARANOID) $(NETGROUP) \ + $(BUGS) $(SYSTYPE) $(AUTH) $(UMASK) \ + -DREAL_DAEMON_DIR=\"$(REAL_DAEMON_DIR)\" $(STYLE) $(KILL_OPT) \ + -DSEVERITY=$(SEVERITY) -DRFC931_TIMEOUT=$(RFC931_TIMEOUT) \ +@@ -712,10 +725,11 @@ + + config-check: + @set +e; test -n "$(REAL_DAEMON_DIR)" || { make; exit 1; } +- @set +e; echo $(CFLAGS) >/tmp/cflags.$$$$ ; \ +- if cmp cflags /tmp/cflags.$$$$ ; \ +- then rm /tmp/cflags.$$$$ ; \ +- else mv /tmp/cflags.$$$$ cflags ; \ ++ @set +e; echo $(CFLAGS) >cflags.new ; \ ++ if cmp cflags cflags.new ; \ ++ then rm cflags.new ; \ ++ else mv cflags.new cflags ; \ + fi >/dev/null 2>/dev/null ++ @if [ ! -d shared ]; then mkdir shared; fi + + $(LIB): $(LIB_OBJ) diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/13_shlib_weaksym.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/13_shlib_weaksym.patch new file mode 100644 index 0000000000..c089b33257 --- /dev/null +++ b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/13_shlib_weaksym.patch @@ -0,0 +1,253 @@ +diff -ruN tcp_wrappers_7.6.orig/Makefile tcp_wrappers_7.6/Makefile +--- tcp_wrappers_7.6.orig/Makefile 2004-05-02 15:37:59.000000000 +0200 ++++ tcp_wrappers_7.6/Makefile 2004-05-02 15:31:09.000000000 +0200 +@@ -150,15 +150,15 @@ + + linux: + @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ +- LIBS=-lnsl RANLIB=ranlib ARFLAGS=rv AUX_OBJ= \ ++ LIBS=-lnsl RANLIB=ranlib ARFLAGS=rv AUX_OBJ=weak_symbols.o \ + NETGROUP="-DNETGROUP" TLI= VSYSLOG= BUGS= \ +- EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DHAVE_STRERROR -DINET6=1 -Dss_family=__ss_family -Dss_len=__ss_len" all ++ EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DHAVE_STRERROR -DHAVE_WEAKSYMS -D_REENTRANT -DINET6=1 -Dss_family=__ss_family -Dss_len=__ss_len" all + + gnu: + @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ +- LIBS=-lnsl RANLIB=ranlib ARFLAGS=rv AUX_OBJ= \ ++ LIBS=-lnsl RANLIB=ranlib ARFLAGS=rv AUX_OBJ=weak_symbols.o \ + NETGROUP=-DNETGROUP TLI= VSYSLOG= BUGS= \ +- EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DHAVE_STRERROR" all ++ EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DHAVE_STRERROR -DHAVE_WEAKSYMS -D_REENTRANT" all + + # This is good for many SYSV+BSD hybrids with NIS, probably also for HP-UX 7.x. + hpux hpux8 hpux9 hpux10: +@@ -713,7 +713,22 @@ + + LIB = libwrap.a + +-all other: config-check tcpd tcpdmatch try-from safe_finger tcpdchk ++shared/%.o: %.c ++ $(CC) $(CFLAGS) $(SHCFLAGS) -c $< -o $@ ++ ++SOMAJOR = 0 ++SOMINOR = 7.6 ++ ++SHLIB = shared/libwrap.so.$(SOMAJOR).$(SOMINOR) ++SHLIBSOMAJ = shared/libwrap.so.$(SOMAJOR) ++SHLIBSO = shared/libwrap.so ++SHLIBFLAGS = -Lshared -lwrap ++ ++SHLINKFLAGS = -shared -Xlinker -soname -Xlinker libwrap.so.$(SOMAJOR) -lc $(LIBS) ++SHCFLAGS = -fPIC -shared -D_REENTRANT ++SHLIB_OBJ= $(addprefix shared/, $(LIB_OBJ)); ++ ++all other: config-check tcpd tcpdmatch try-from safe_finger tcpdchk $(LIB) + + # Invalidate all object files when the compiler options (CFLAGS) have changed. + +@@ -731,27 +746,33 @@ + $(AR) $(ARFLAGS) $(LIB) $(LIB_OBJ) + -$(RANLIB) $(LIB) + +-tcpd: tcpd.o $(LIB) +- $(CC) $(CFLAGS) -o $@ tcpd.o $(LIB) $(LIBS) ++$(SHLIB): $(SHLIB_OBJ) ++ rm -f $(SHLIB) ++ $(CC) -o $(SHLIB) $(SHLINKFLAGS) $(SHLIB_OBJ) ++ ln -sf $(notdir $(SHLIB)) $(SHLIBSOMAJ) ++ ln -sf $(notdir $(SHLIBSOMAJ)) $(SHLIBSO) ++ ++tcpd: tcpd.o $(SHLIB) ++ $(CC) $(CFLAGS) -o $@ tcpd.o $(SHLIBFLAGS) + + miscd: miscd.o $(LIB) + $(CC) $(CFLAGS) -o $@ miscd.o $(LIB) $(LIBS) + +-safe_finger: safe_finger.o $(LIB) +- $(CC) $(CFLAGS) -o $@ safe_finger.o $(LIB) $(LIBS) ++safe_finger: safe_finger.o $(SHLIB) ++ $(CC) $(CFLAGS) -o $@ safe_finger.o $(SHLIBFLAGS) + + TCPDMATCH_OBJ = tcpdmatch.o fakelog.o inetcf.o scaffold.o + +-tcpdmatch: $(TCPDMATCH_OBJ) $(LIB) +- $(CC) $(CFLAGS) -o $@ $(TCPDMATCH_OBJ) $(LIB) $(LIBS) ++tcpdmatch: $(TCPDMATCH_OBJ) $(SHLIB) ++ $(CC) $(CFLAGS) -o $@ $(TCPDMATCH_OBJ) $(SHLIBFLAGS) + +-try-from: try-from.o fakelog.o $(LIB) +- $(CC) $(CFLAGS) -o $@ try-from.o fakelog.o $(LIB) $(LIBS) ++try-from: try-from.o fakelog.o $(SHLIB) ++ $(CC) $(CFLAGS) -o $@ try-from.o fakelog.o $(SHLIBFLAGS) + + TCPDCHK_OBJ = tcpdchk.o fakelog.o inetcf.o scaffold.o + +-tcpdchk: $(TCPDCHK_OBJ) $(LIB) +- $(CC) $(CFLAGS) -o $@ $(TCPDCHK_OBJ) $(LIB) $(LIBS) ++tcpdchk: $(TCPDCHK_OBJ) $(SHLIB) ++ $(CC) $(CFLAGS) -o $@ $(TCPDCHK_OBJ) $(SHLIBFLAGS) + + shar: $(KIT) + @shar $(KIT) +@@ -767,7 +788,9 @@ + + clean: + rm -f tcpd miscd safe_finger tcpdmatch tcpdchk try-from *.[oa] core \ ++ libwrap*.so* \ + cflags ++ rm -rf shared/ + + tidy: clean + chmod -R a+r . +@@ -913,5 +936,6 @@ + update.o: mystdarg.h + update.o: tcpd.h + vfprintf.o: cflags ++weak_symbols.o: tcpd.h + workarounds.o: cflags + workarounds.o: tcpd.h +diff -ruN tcp_wrappers_7.6.orig/tcpd.h tcp_wrappers_7.6/tcpd.h +--- tcp_wrappers_7.6.orig/tcpd.h 2004-05-02 15:37:59.000000000 +0200 ++++ tcp_wrappers_7.6/tcpd.h 2004-05-02 15:37:49.000000000 +0200 +@@ -4,6 +4,15 @@ + * Author: Wietse Venema, Eindhoven University of Technology, The Netherlands. + */ + ++#ifndef _TCPWRAPPERS_TCPD_H ++#define _TCPWRAPPERS_TCPD_H ++ ++/* Need definitions of struct sockaddr_in and FILE. */ ++#include ++#include ++ ++__BEGIN_DECLS ++ + /* Structure to describe one communications endpoint. */ + + #define STRING_LENGTH 128 /* hosts, users, processes */ +@@ -29,10 +38,10 @@ + char pid[10]; /* access via eval_pid(request) */ + struct host_info client[1]; /* client endpoint info */ + struct host_info server[1]; /* server endpoint info */ +- void (*sink) (); /* datagram sink function or 0 */ +- void (*hostname) (); /* address to printable hostname */ +- void (*hostaddr) (); /* address to printable address */ +- void (*cleanup) (); /* cleanup function or 0 */ ++ void (*sink) (int); /* datagram sink function or 0 */ ++ void (*hostname) (struct host_info *); /* address to printable hostname */ ++ void (*hostaddr) (struct host_info *); /* address to printable address */ ++ void (*cleanup) (struct request_info *); /* cleanup function or 0 */ + struct netconfig *config; /* netdir handle */ + }; + +@@ -70,20 +79,27 @@ + #define fromhost sock_host /* no TLI support needed */ + #endif + +-extern int hosts_access(); /* access control */ +-extern void shell_cmd(); /* execute shell command */ +-extern char *percent_x(); /* do % expansion */ +-extern void rfc931(); /* client name from RFC 931 daemon */ +-extern void clean_exit(); /* clean up and exit */ +-extern void refuse(); /* clean up and exit */ +-extern char *xgets(); /* fgets() on steroids */ +-extern char *split_at(); /* strchr() and split */ +-extern unsigned long dot_quad_addr(); /* restricted inet_addr() */ ++extern int hosts_access(struct request_info *request); /* access control */ ++extern void shell_cmd(char *); /* execute shell command */ ++extern char *percent_x(char *, int, char *, struct request_info *); ++ /* do % expansion */ ++extern void rfc931(struct sockaddr *, struct sockaddr *, char *); ++ /* client name from RFC 931 daemon */ ++extern void clean_exit(struct request_info *); /* clean up and exit */ ++extern void refuse(struct request_info *); /* clean up and exit */ ++extern char *xgets(char *, int, FILE *); /* fgets() on steroids */ ++extern char *split_at(char *, int); /* strchr() and split */ ++extern unsigned long dot_quad_addr(char *); /* restricted inet_addr() */ + + /* Global variables. */ + ++#ifdef HAVE_WEAKSYMS ++extern int allow_severity __attribute__ ((weak)); /* for connection logging */ ++extern int deny_severity __attribute__ ((weak)); /* for connection logging */ ++#else + extern int allow_severity; /* for connection logging */ + extern int deny_severity; /* for connection logging */ ++#endif + extern char *hosts_allow_table; /* for verification mode redirection */ + extern char *hosts_deny_table; /* for verification mode redirection */ + extern int hosts_access_verbose; /* for verbose matching mode */ +@@ -98,6 +114,8 @@ + #ifdef __STDC__ + extern struct request_info *request_init(struct request_info *,...); + extern struct request_info *request_set(struct request_info *,...); ++extern int hosts_ctl(char *daemon, char *client_name, char *client_addr, ++ char *client_user); + #else + extern struct request_info *request_init(); /* initialize request */ + extern struct request_info *request_set(); /* update request structure */ +@@ -121,20 +139,23 @@ + * host_info structures serve as caches for the lookup results. + */ + +-extern char *eval_user(); /* client user */ +-extern char *eval_hostname(); /* printable hostname */ +-extern char *eval_hostaddr(); /* printable host address */ +-extern char *eval_hostinfo(); /* host name or address */ +-extern char *eval_client(); /* whatever is available */ +-extern char *eval_server(); /* whatever is available */ ++extern char *eval_user(struct request_info *); /* client user */ ++extern char *eval_hostname(struct host_info *); /* printable hostname */ ++extern char *eval_hostaddr(struct host_info *); /* printable host address */ ++extern char *eval_hostinfo(struct host_info *); /* host name or address */ ++extern char *eval_client(struct request_info *);/* whatever is available */ ++extern char *eval_server(struct request_info *);/* whatever is available */ + #define eval_daemon(r) ((r)->daemon) /* daemon process name */ + #define eval_pid(r) ((r)->pid) /* process id */ + + /* Socket-specific methods, including DNS hostname lookups. */ + +-extern void sock_host(); /* look up endpoint addresses */ +-extern void sock_hostname(); /* translate address to hostname */ +-extern void sock_hostaddr(); /* address to printable address */ ++/* look up endpoint addresses */ ++extern void sock_host(struct request_info *); ++/* translate address to hostname */ ++extern void sock_hostname(struct host_info *); ++/* address to printable address */ ++extern void sock_hostaddr(struct host_info *); + #define sock_methods(r) \ + { (r)->hostname = sock_hostname; (r)->hostaddr = sock_hostaddr; } + +@@ -182,7 +203,7 @@ + * behavior. + */ + +-extern void process_options(); /* execute options */ ++extern void process_options(char *, struct request_info *);/* execute options */ + extern int dry_run; /* verification flag */ + + /* Bug workarounds. */ +@@ -221,3 +242,7 @@ + #define strtok my_strtok + extern char *my_strtok(); + #endif ++ ++__END_DECLS ++ ++#endif +diff -ruN tcp_wrappers_7.6.orig/weak_symbols.c tcp_wrappers_7.6/weak_symbols.c +--- tcp_wrappers_7.6.orig/weak_symbols.c 1970-01-01 01:00:00.000000000 +0100 ++++ tcp_wrappers_7.6/weak_symbols.c 2004-05-02 15:31:09.000000000 +0200 +@@ -0,0 +1,11 @@ ++ /* ++ * @(#) weak_symbols.h 1.5 99/12/29 23:50 ++ * ++ * Author: Anthony Towns ++ */ ++ ++#ifdef HAVE_WEAKSYMS ++#include ++int deny_severity = LOG_WARNING; ++int allow_severity = SEVERITY; ++#endif diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/14_cidr_support.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/14_cidr_support.patch new file mode 100644 index 0000000000..0e1ecf5b4a --- /dev/null +++ b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/14_cidr_support.patch @@ -0,0 +1,66 @@ +diff -ruN tcp_wrappers_7.6.orig/hosts_access.5 tcp_wrappers_7.6/hosts_access.5 +--- tcp_wrappers_7.6.orig/hosts_access.5 2003-08-21 03:15:36.000000000 +0200 ++++ tcp_wrappers_7.6/hosts_access.5 2003-08-21 03:15:31.000000000 +0200 +@@ -90,6 +90,10 @@ + pattern `131.155.72.0/255.255.254.0\' matches every address in the + range `131.155.72.0\' through `131.155.73.255\'. + .IP \(bu ++An expression of the form `n.n.n.n/mm' is interpreted as a ++`net/masklength' pair, where `mm' is the number of consecutive `1' ++bits in the netmask applied to the `n.n.n.n' address. ++.IP \(bu + An expression of the form `[n:n:n:n:n:n:n:n]/m\' is interpreted as a + `[net]/prefixlen\' pair. An IPv6 host address is matched if + `prefixlen\' bits of `net\' is equal to the `prefixlen\' bits of the +diff -ruN tcp_wrappers_7.6.orig/hosts_access.c tcp_wrappers_7.6/hosts_access.c +--- tcp_wrappers_7.6.orig/hosts_access.c 2003-08-21 03:15:36.000000000 +0200 ++++ tcp_wrappers_7.6/hosts_access.c 2003-08-21 03:09:30.000000000 +0200 +@@ -417,7 +417,8 @@ + if ((addr = dot_quad_addr(string)) == INADDR_NONE) + return (NO); + if ((net = dot_quad_addr(net_tok)) == INADDR_NONE +- || (mask = dot_quad_addr(mask_tok)) == INADDR_NONE) { ++ || ((mask = dot_quad_addr(mask_tok)) == INADDR_NONE ++ && (mask = cidr_mask_addr(mask_tok)) == 0)) { + #ifndef INET6 + tcpd_warn("bad net/mask expression: %s/%s", net_tok, mask_tok); + #endif +diff -ruN tcp_wrappers_7.6.orig/misc.c tcp_wrappers_7.6/misc.c +--- tcp_wrappers_7.6.orig/misc.c 2003-08-21 03:15:36.000000000 +0200 ++++ tcp_wrappers_7.6/misc.c 2003-08-21 03:09:30.000000000 +0200 +@@ -107,3 +107,17 @@ + } + return (runs == 4 ? inet_addr(str) : INADDR_NONE); + } ++ ++/* cidr_mask_addr - convert cidr netmask length to internal form */ ++ ++unsigned long cidr_mask_addr(str) ++char *str; ++{ ++ int maskbits; ++ ++ maskbits = atoi(str); ++ if (maskbits < 1 || maskbits > 32) ++ return (0); ++ return htonl(0xFFFFFFFF << (32 - maskbits)); ++} ++ +diff -ruN tcp_wrappers_7.6.orig/tcpdchk.c tcp_wrappers_7.6/tcpdchk.c +--- tcp_wrappers_7.6.orig/tcpdchk.c 2003-08-21 03:15:36.000000000 +0200 ++++ tcp_wrappers_7.6/tcpdchk.c 2003-08-21 03:09:30.000000000 +0200 +@@ -497,12 +497,12 @@ + int mask_len; + + if ((dot_quad_addr(pat) == INADDR_NONE +- || dot_quad_addr(mask) == INADDR_NONE) ++ || dot_quad_addr(mask) == INADDR_NONE && cidr_mask_addr(mask) == 0) + && (!is_inet6_addr(pat) + || ((mask_len = atoi(mask)) < 0 || mask_len > 128))) + #else + if (dot_quad_addr(pat) == INADDR_NONE +- || dot_quad_addr(mask) == INADDR_NONE) ++ || dot_quad_addr(mask) == INADDR_NONE && cidr_mask_addr(mask) == 0) + #endif + tcpd_warn("%s/%s: bad net/mask pattern", pat, mask); + } else if (STR_EQ(pat, "FAIL")) { /* obsolete */ diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/15_match_clarify.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/15_match_clarify.patch new file mode 100644 index 0000000000..913ed987d6 --- /dev/null +++ b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/15_match_clarify.patch @@ -0,0 +1,12 @@ +diff -ruN tcp_wrappers_7.6.orig/hosts_access.5 tcp_wrappers_7.6/hosts_access.5 +--- tcp_wrappers_7.6.orig/hosts_access.5 2004-04-25 12:17:59.000000000 +0200 ++++ tcp_wrappers_7.6/hosts_access.5 2004-04-25 12:17:53.000000000 +0200 +@@ -89,6 +89,8 @@ + bitwise AND of the address and the `mask\'. For example, the net/mask + pattern `131.155.72.0/255.255.254.0\' matches every address in the + range `131.155.72.0\' through `131.155.73.255\'. ++`255.255.255.255\' is not a valid mask value, so a single host can be ++matched just by its IP. + .IP \(bu + An expression of the form `n.n.n.n/mm' is interpreted as a + `net/masklength' pair, where `mm' is the number of consecutive `1' diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/expand_remote_port.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/expand_remote_port.patch new file mode 100644 index 0000000000..e35fc7ecd9 --- /dev/null +++ b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/expand_remote_port.patch @@ -0,0 +1,71 @@ +diff -ruN tcp_wrappers_7.6.orig/eval.c tcp_wrappers_7.6/eval.c +--- tcp_wrappers_7.6.orig/eval.c 1995-01-30 19:51:46.000000000 +0100 ++++ tcp_wrappers_7.6/eval.c 2004-11-04 13:59:01.000000000 +0100 +@@ -98,6 +98,28 @@ + } + } + ++/* eval_port - return string with the port */ ++char *eval_port(saddr) ++#ifdef INET6 ++struct sockaddr *saddr; ++#else ++struct sockaddr_in *saddr; ++#endif ++{ ++ static char port[16]; ++ if (saddr != 0) { ++ sprintf(port, "%u", ++#ifdef INET6 ++ ntohs(((struct sockaddr_in *)saddr)->sin_port)); ++#else ++ ntohs(saddr->sin_port)); ++#endif ++ } else { ++ strcpy(port, "0"); ++ } ++ return (port); ++} ++ + /* eval_client - return string with as much about the client as we know */ + + char *eval_client(request) +diff -ruN tcp_wrappers_7.6.orig/hosts_access.5 tcp_wrappers_7.6/hosts_access.5 +--- tcp_wrappers_7.6.orig/hosts_access.5 2004-11-04 13:17:45.000000000 +0100 ++++ tcp_wrappers_7.6/hosts_access.5 2004-11-04 13:55:32.000000000 +0100 +@@ -175,6 +175,8 @@ + unavailable. + .IP "%n (%N)" + The client (server) host name (or "unknown" or "paranoid"). ++.IP "%r (%R)" ++The clients (servers) port number (or "0"). + .IP %p + The daemon process id. + .IP %s +diff -ruN tcp_wrappers_7.6.orig/percent_x.c tcp_wrappers_7.6/percent_x.c +--- tcp_wrappers_7.6.orig/percent_x.c 1994-12-28 17:42:38.000000000 +0100 ++++ tcp_wrappers_7.6/percent_x.c 2004-11-04 13:19:29.000000000 +0100 +@@ -63,6 +63,8 @@ + ch == 'n' ? eval_hostname(request->client) : + ch == 'N' ? eval_hostname(request->server) : + ch == 'p' ? eval_pid(request) : ++ ch == 'r' ? eval_port(request->client->sin) : ++ ch == 'R' ? eval_port(request->server->sin) : + ch == 's' ? eval_server(request) : + ch == 'u' ? eval_user(request) : + ch == '%' ? "%" : (tcpd_warn("unrecognized %%%c", ch), ""); +diff -ruN tcp_wrappers_7.6.orig/tcpd.h tcp_wrappers_7.6/tcpd.h +--- tcp_wrappers_7.6.orig/tcpd.h 2004-11-04 13:17:45.000000000 +0100 ++++ tcp_wrappers_7.6/tcpd.h 2004-11-04 13:19:13.000000000 +0100 +@@ -145,6 +145,11 @@ + extern char *eval_hostinfo(struct host_info *); /* host name or address */ + extern char *eval_client(struct request_info *);/* whatever is available */ + extern char *eval_server(struct request_info *);/* whatever is available */ ++#ifdef INET6 ++extern char *eval_port(struct sockaddr *); ++#else ++extern char *eval_port(struct sockaddr_in *); ++#endif + #define eval_daemon(r) ((r)->daemon) /* daemon process name */ + #define eval_pid(r) ((r)->pid) /* process id */ + diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/have_strerror.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/have_strerror.patch new file mode 100644 index 0000000000..31c2b92278 --- /dev/null +++ b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/have_strerror.patch @@ -0,0 +1,19 @@ +diff -ruN tcp_wrappers_7.6.orig/percent_m.c tcp_wrappers_7.6/percent_m.c +--- tcp_wrappers_7.6.orig/percent_m.c 1994-12-28 17:42:37.000000000 +0100 ++++ tcp_wrappers_7.6/percent_m.c 2003-08-21 02:45:31.000000000 +0200 +@@ -29,11 +29,15 @@ + + while (*bp = *cp) + if (*cp == '%' && cp[1] == 'm') { ++#ifdef HAVE_STRERROR ++ strcpy(bp, strerror(errno)); ++#else + if (errno < sys_nerr && errno > 0) { + strcpy(bp, sys_errlist[errno]); + } else { + sprintf(bp, "Unknown error %d", errno); + } ++#endif + bp += strlen(bp); + cp += 2; + } else { diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/ldflags.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/ldflags.patch new file mode 100644 index 0000000000..2e897650e0 --- /dev/null +++ b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/ldflags.patch @@ -0,0 +1,43 @@ +Index: tcp_wrappers_7.6.orig/Makefile +=================================================================== +--- tcp_wrappers_7.6.orig.orig/Makefile 2009-04-06 10:55:47.000000000 +0000 ++++ tcp_wrappers_7.6.orig/Makefile 2009-04-06 10:57:04.000000000 +0000 +@@ -748,31 +748,31 @@ + + $(SHLIB): $(SHLIB_OBJ) + rm -f $(SHLIB) +- $(CC) -o $(SHLIB) $(SHLINKFLAGS) $(SHLIB_OBJ) ++ $(CC) $(LDFLAGS) -o $(SHLIB) $(SHLINKFLAGS) $(SHLIB_OBJ) + ln -sf $(notdir $(SHLIB)) $(SHLIBSOMAJ) + ln -sf $(notdir $(SHLIBSOMAJ)) $(SHLIBSO) + + tcpd: tcpd.o $(SHLIB) +- $(CC) $(CFLAGS) -o $@ tcpd.o $(SHLIBFLAGS) ++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ tcpd.o $(SHLIBFLAGS) + + miscd: miscd.o $(LIB) +- $(CC) $(CFLAGS) -o $@ miscd.o $(LIB) $(LIBS) ++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ miscd.o $(LIB) $(LIBS) + + safe_finger: safe_finger.o $(SHLIB) +- $(CC) $(CFLAGS) -o $@ safe_finger.o $(SHLIBFLAGS) ++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ safe_finger.o $(SHLIBFLAGS) + + TCPDMATCH_OBJ = tcpdmatch.o fakelog.o inetcf.o scaffold.o + + tcpdmatch: $(TCPDMATCH_OBJ) $(SHLIB) +- $(CC) $(CFLAGS) -o $@ $(TCPDMATCH_OBJ) $(SHLIBFLAGS) ++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(TCPDMATCH_OBJ) $(SHLIBFLAGS) + + try-from: try-from.o fakelog.o $(SHLIB) +- $(CC) $(CFLAGS) -o $@ try-from.o fakelog.o $(SHLIBFLAGS) ++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ try-from.o fakelog.o $(SHLIBFLAGS) + + TCPDCHK_OBJ = tcpdchk.o fakelog.o inetcf.o scaffold.o + + tcpdchk: $(TCPDCHK_OBJ) $(SHLIB) +- $(CC) $(CFLAGS) -o $@ $(TCPDCHK_OBJ) $(SHLIBFLAGS) ++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(TCPDCHK_OBJ) $(SHLIBFLAGS) + + shar: $(KIT) + @shar $(KIT) diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/man_fromhost.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/man_fromhost.patch new file mode 100644 index 0000000000..afaa9c8ac3 --- /dev/null +++ b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/man_fromhost.patch @@ -0,0 +1,21 @@ +diff -ruN tcp_wrappers_7.6.orig/hosts_access.3 tcp_wrappers_7.6/hosts_access.3 +--- tcp_wrappers_7.6.orig/hosts_access.3 2004-04-25 00:10:48.000000000 +0200 ++++ tcp_wrappers_7.6/hosts_access.3 2004-04-25 00:09:36.000000000 +0200 +@@ -14,6 +14,9 @@ + struct request_info *request_set(request, key, value, ..., 0) + struct request_info *request; + ++void fromhost(request) ++struct request_info *request; ++ + int hosts_access(request) + struct request_info *request; + +@@ -60,6 +63,7 @@ + is available, host names and client user names are looked up on demand, + using the request structure as a cache. hosts_access() returns zero if + access should be denied. ++fromhost() must be called before hosts_access(). + .PP + hosts_ctl() is a wrapper around the request_init() and hosts_access() + routines with a perhaps more convenient interface (though it does not diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/restore_sigalarm.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/restore_sigalarm.patch new file mode 100644 index 0000000000..ece7da35fe --- /dev/null +++ b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/restore_sigalarm.patch @@ -0,0 +1,37 @@ +diff -ruN tcp_wrappers_7.6.orig/rfc931.c tcp_wrappers_7.6/rfc931.c +--- tcp_wrappers_7.6.orig/rfc931.c 2004-08-29 18:40:08.000000000 +0200 ++++ tcp_wrappers_7.6/rfc931.c 2004-08-29 18:40:02.000000000 +0200 +@@ -92,6 +92,8 @@ + char *cp; + char *result = unknown; + FILE *fp; ++ unsigned saved_timeout; ++ struct sigaction nact, oact; + + #ifdef INET6 + /* address family must be the same */ +@@ -134,7 +136,12 @@ + */ + + if (setjmp(timebuf) == 0) { +- signal(SIGALRM, timeout); ++ /* Save SIGALRM timer and handler. Sudheer Abdul-Salam, SUN. */ ++ saved_timeout = alarm(0); ++ nact.sa_handler = timeout; ++ nact.sa_flags = 0; ++ (void) sigemptyset(&nact.sa_mask); ++ (void) sigaction(SIGALRM, &nact, &oact); + alarm(rfc931_timeout); + + /* +@@ -223,6 +230,10 @@ + } + alarm(0); + } ++ /* Restore SIGALRM timer and handler. Sudheer Abdul-Salam, SUN. */ ++ (void) sigaction(SIGALRM, &oact, NULL); ++ if (saved_timeout > 0) ++ alarm(saved_timeout); + fclose(fp); + } + STRN_CPY(dest, result, STRING_LENGTH); diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/rfc931.diff b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/rfc931.diff new file mode 100644 index 0000000000..a926d0edfd --- /dev/null +++ b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/rfc931.diff @@ -0,0 +1,39 @@ +diff -ruNp tcp_wrappers_7.6.orig/scaffold.c tcp_wrappers_7.6/scaffold.c +--- tcp_wrappers_7.6.orig/scaffold.c 2005-03-09 18:22:04.000000000 +0100 ++++ tcp_wrappers_7.6/scaffold.c 2005-03-09 18:20:47.000000000 +0100 +@@ -237,10 +237,17 @@ struct request_info *request; + + /* ARGSUSED */ + +-void rfc931(request) +-struct request_info *request; ++void rfc931(rmt_sin, our_sin, dest) ++#ifdef INET6 ++struct sockaddr *rmt_sin; ++struct sockaddr *our_sin; ++#else ++struct sockaddr_in *rmt_sin; ++struct sockaddr_in *our_sin; ++#endif ++char *dest; + { +- strcpy(request->user, unknown); ++ strcpy(dest, unknown); + } + + /* check_path - examine accessibility */ +diff -ruNp tcp_wrappers_7.6.orig/tcpd.h tcp_wrappers_7.6/tcpd.h +--- tcp_wrappers_7.6.orig/tcpd.h 2005-03-09 18:22:04.000000000 +0100 ++++ tcp_wrappers_7.6/tcpd.h 2005-03-09 18:21:23.000000000 +0100 +@@ -83,7 +83,11 @@ extern int hosts_access(struct request_i + extern void shell_cmd(char *); /* execute shell command */ + extern char *percent_x(char *, int, char *, struct request_info *); + /* do % expansion */ ++#ifdef INET6 + extern void rfc931(struct sockaddr *, struct sockaddr *, char *); ++#else ++extern void rfc931(struct sockaddr_in *, struct sockaddr_in *, char *); ++#endif + /* client name from RFC 931 daemon */ + extern void clean_exit(struct request_info *); /* clean up and exit */ + extern void refuse(struct request_info *); /* clean up and exit */ diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/safe_finger.8 b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/safe_finger.8 new file mode 100644 index 0000000000..875616b9ea --- /dev/null +++ b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/safe_finger.8 @@ -0,0 +1,34 @@ +.TH SAFE_FINGER 8 "21th June 1997" Linux "Linux Programmer's Manual" +.SH NAME +safe_finger \- finger client wrapper that protects against nasty stuff +from finger servers +.SH SYNOPSIS +.B safe_finger [finger_options] +.SH DESCRIPTION +The +.B safe_finger +command protects against nasty stuff from finger servers. Use this +program for automatic reverse finger probes from the +.B tcp_wrapper +.B (tcpd) +, not the raw finger command. The +.B safe_finger +command makes sure that the finger client is not run with root +privileges. It also runs the finger client with a defined PATH +environment. +.B safe_finger +will also protect you from problems caused by the output of some +finger servers. The problem: some programs may react to stuff in +the first column. Other programs may get upset by thrash anywhere +on a line. File systems may fill up as the finger server keeps +sending data. Text editors may bomb out on extremely long lines. +The finger server may take forever because it is somehow wedged. +.B safe_finger +takes care of all this badness. +.SH SEE ALSO +.BR hosts_access (5), +.BR hosts_options (5), +.BR tcpd (8) +.SH AUTHOR +Wietse Venema, Eindhoven University of Technology, The Netherlands. + diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/safe_finger.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/safe_finger.patch new file mode 100644 index 0000000000..5c8c9a1548 --- /dev/null +++ b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/safe_finger.patch @@ -0,0 +1,29 @@ +--- tcp-wrappers-7.6-ipv6.1.orig/safe_finger.c ++++ tcp-wrappers-7.6-ipv6.1/safe_finger.c +@@ -26,21 +26,24 @@ + #include + #include + #include ++#include + + extern void exit(); + + /* Local stuff */ + +-char path[] = "PATH=/bin:/usr/bin:/usr/ucb:/usr/bsd:/etc:/usr/etc:/usr/sbin"; ++char path[] = "PATH=/bin:/usr/bin:/sbin:/usr/sbin"; + + #define TIME_LIMIT 60 /* Do not keep listinging forever */ + #define INPUT_LENGTH 100000 /* Do not keep listinging forever */ + #define LINE_LENGTH 128 /* Editors can choke on long lines */ + #define FINGER_PROGRAM "finger" /* Most, if not all, UNIX systems */ + #define UNPRIV_NAME "nobody" /* Preferred privilege level */ +-#define UNPRIV_UGID 32767 /* Default uid and gid */ ++#define UNPRIV_UGID 65534 /* Default uid and gid */ + + int finger_pid; ++int allow_severity = SEVERITY; ++int deny_severity = LOG_WARNING; + + void cleanup(sig) + int sig; diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/sig_fix.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/sig_fix.patch new file mode 100644 index 0000000000..f286605bfd --- /dev/null +++ b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/sig_fix.patch @@ -0,0 +1,34 @@ +* Mon Feb 10 2003 Harald Hoyer 7.6-29 +- added security patch tcp_wrappers-7.6-sig.patch + +--- tcp_wrappers_7.6/hosts_access.c.sig 2003-02-10 16:18:31.000000000 +0100 ++++ tcp_wrappers_7.6/hosts_access.c 2003-02-10 16:50:38.000000000 +0100 +@@ -66,6 +66,7 @@ + + #define YES 1 + #define NO 0 ++#define ERR -1 + + /* + * These variables are globally visible so that they can be redirected in +@@ -129,9 +129,9 @@ + return (verdict == AC_PERMIT); + if (table_match(hosts_allow_table, request)) + return (YES); +- if (table_match(hosts_deny_table, request)) +- return (NO); +- return (YES); ++ if (table_match(hosts_deny_table, request) == NO) ++ return (YES); ++ return (NO); + } + + /* table_match - match table entries with (daemon, client) pair */ +@@ -175,6 +175,7 @@ + (void) fclose(fp); + } else if (errno != ENOENT) { + tcpd_warn("cannot open %s: %m", table); ++ match = ERR; + } + if (match) { + if (hosts_access_verbose > 1) diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/siglongjmp.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/siglongjmp.patch new file mode 100644 index 0000000000..71be340a07 --- /dev/null +++ b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/siglongjmp.patch @@ -0,0 +1,30 @@ +diff -ruNp tcp_wrappers_7.6.orig/rfc931.c tcp_wrappers_7.6/rfc931.c +--- tcp_wrappers_7.6.orig/rfc931.c 2004-08-29 18:42:25.000000000 +0200 ++++ tcp_wrappers_7.6/rfc931.c 2004-08-29 18:41:04.000000000 +0200 +@@ -33,7 +33,7 @@ static char sccsid[] = "@(#) rfc931.c 1. + + int rfc931_timeout = RFC931_TIMEOUT;/* Global so it can be changed */ + +-static jmp_buf timebuf; ++static sigjmp_buf timebuf; + + /* fsocket - open stdio stream on top of socket */ + +@@ -62,7 +62,7 @@ int protocol; + static void timeout(sig) + int sig; + { +- longjmp(timebuf, sig); ++ siglongjmp(timebuf, sig); + } + + /* rfc931 - return remote user name, given socket structures */ +@@ -135,7 +135,7 @@ char *dest; + * Set up a timer so we won't get stuck while waiting for the server. + */ + +- if (setjmp(timebuf) == 0) { ++ if (sigsetjmp(timebuf, 0) == 0) { + /* Save SIGALRM timer and handler. Sudheer Abdul-Salam, SUN. */ + saved_timeout = alarm(0); + nact.sa_handler = timeout; diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/size_t.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/size_t.patch new file mode 100644 index 0000000000..4db40f4c7b --- /dev/null +++ b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/size_t.patch @@ -0,0 +1,42 @@ +diff -ruN tcp_wrappers_7.6.orig/fix_options.c tcp_wrappers_7.6/fix_options.c +--- tcp_wrappers_7.6.orig/fix_options.c 2003-08-21 03:41:33.000000000 +0200 ++++ tcp_wrappers_7.6/fix_options.c 2003-08-21 03:41:27.000000000 +0200 +@@ -38,7 +38,11 @@ + #ifdef IP_OPTIONS + unsigned char optbuf[BUFFER_SIZE / 3], *cp; + char lbuf[BUFFER_SIZE], *lp; ++#ifdef __GLIBC__ ++ size_t optsize = sizeof(optbuf), ipproto; ++#else + int optsize = sizeof(optbuf), ipproto; ++#endif + struct protoent *ip; + int fd = request->fd; + unsigned int opt; +diff -ruN tcp_wrappers_7.6.orig/socket.c tcp_wrappers_7.6/socket.c +--- tcp_wrappers_7.6.orig/socket.c 2003-08-21 03:41:33.000000000 +0200 ++++ tcp_wrappers_7.6/socket.c 2003-08-21 03:40:51.000000000 +0200 +@@ -90,7 +90,11 @@ + static struct sockaddr_in client; + static struct sockaddr_in server; + #endif ++#ifdef __GLIBC__ ++ size_t len; ++#else + int len; ++#endif + char buf[BUFSIZ]; + int fd = request->fd; + +@@ -421,7 +425,11 @@ + #else + struct sockaddr_in sin; + #endif ++#ifdef __GLIBC__ ++ size_t size = sizeof(sin); ++#else + int size = sizeof(sin); ++#endif + + /* + * Eat up the not-yet received datagram. Some systems insist on a diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/tcpdchk_libwrapped.patch b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/tcpdchk_libwrapped.patch new file mode 100644 index 0000000000..3beae39306 --- /dev/null +++ b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/tcpdchk_libwrapped.patch @@ -0,0 +1,39 @@ +diff -ruN tcp_wrappers_7.6.orig/tcpdchk.c tcp_wrappers_7.6/tcpdchk.c +--- tcp_wrappers_7.6.orig/tcpdchk.c 2003-08-21 02:50:37.000000000 +0200 ++++ tcp_wrappers_7.6/tcpdchk.c 2003-08-21 02:50:33.000000000 +0200 +@@ -53,6 +53,24 @@ + #include "inetcf.h" + #include "scaffold.h" + ++/* list of programs which are known to be linked with libwrap in debian */ ++static const char *const libwrap_programs[] = { ++ "portmap", "mountd", "statd", "ugidd", ++ "redir", "rlinetd", ++ "sshd", ++ "atftpd", ++ "diald", ++ "esound", ++ "gdm", "gnome-session", ++ "icecast", "icecast_admin", "icecast_client", "icecast_source", ++ "mysqld", ++ "ntop", ++ "pptpd", ++ "rquotad", ++ "sendmail", "smail", ++ NULL ++}; ++ + /* + * Stolen from hosts_access.c... + */ +@@ -147,8 +165,8 @@ + /* + * These are not run from inetd but may have built-in access control. + */ +- inet_set("portmap", WR_NOT); +- inet_set("rpcbind", WR_NOT); ++ for (c = 0; libwrap_programs[c]; c++) ++ inet_set(libwrap_programs[c], WR_YES); + + /* + * Check accessibility of access control files. diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/try-from.8 b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/try-from.8 new file mode 100644 index 0000000000..9c8f30543e --- /dev/null +++ b/meta/recipes-extended/tcp-wrappers/tcp-wrappers-7.6/try-from.8 @@ -0,0 +1,28 @@ +.TH TRY-FROM 8 "21th June 1997" Linux "Linux Programmer's Manual" +.SH NAME +try-from \- test program for the tcp_wrapper +.SH SYNOPSIS +.B try-from +.SH DESCRIPTION +The +.B try-from +command can be called via a remote shell command to find out +if the hostname and address are properly recognized +by the +.B tcp_wrapper +library, if username lookup works, and (SysV only) if the TLI +on top of IP heuristics work. Diagnostics are reported through +.BR syslog (3) +and redirected to stderr. + +Example: + +rsh host /some/where/try-from + +.SH SEE ALSO +.BR hosts_access (5), +.BR hosts_options (5), +.BR tcpd (8) +.SH AUTHOR +Wietse Venema, Eindhoven University of Technology, The Netherlands. + diff --git a/meta/recipes-extended/tcp-wrappers/tcp-wrappers_7.6.bb b/meta/recipes-extended/tcp-wrappers/tcp-wrappers_7.6.bb new file mode 100644 index 0000000000..308a8b63b4 --- /dev/null +++ b/meta/recipes-extended/tcp-wrappers/tcp-wrappers_7.6.bb @@ -0,0 +1,117 @@ +DESCRIPTION = "Tools for monitoring and filtering incoming requests for tcp \ + services." +PRIORITY = "optional" +SECTION = "console/network" + +LICENSE = "tcp-wrappers" +LIC_FILES_CHKSUM = "file://DISCLAIMER;md5=071bd69cb78b18888ea5e3da5c3127fa" +PR ="r0" + + +PACKAGES = "${PN}-dbg libwrap libwrap-doc libwrap-dev tcp-wrappers tcp-wrappers-doc" +FILES_libwrap = "${base_libdir}/lib*.so.*" +FILES_libwrap-doc = "${mandir}/man3 ${mandir}/man5" +FILES_libwrap-dev = "${libdir}/lib*.so ${libdir}/lib*.a ${includedir}" +FILES_tcp-wrappers = "${bindir}" +FILES_tcp-wrappers-doc = "${mandir}/man8" + +SRC_URI = "ftp://ftp.porcupine.org/pub/security/tcp_wrappers_${PV}.tar.gz \ + file://00_man_quoting.diff \ + file://01_man_portability.patch \ + file://05_wildcard_matching.patch \ + file://06_fix_gethostbyname.patch \ + file://10_usagi-ipv6.patch \ + file://11_tcpd_blacklist.patch \ + file://11_usagi_fix.patch \ + file://12_makefile_config.patch \ + file://13_shlib_weaksym.patch \ + file://14_cidr_support.patch \ + file://15_match_clarify.patch \ + file://expand_remote_port.patch \ + file://have_strerror.patch \ + file://man_fromhost.patch \ + file://restore_sigalarm.patch \ + file://rfc931.diff \ + file://safe_finger.patch \ + file://sig_fix.patch \ + file://siglongjmp.patch \ + file://size_t.patch \ + file://tcpdchk_libwrapped.patch \ + file://ldflags.patch \ + \ + file://try-from.8 \ + file://safe_finger.8" + +S = "${WORKDIR}/tcp_wrappers_${PV}" + +PARALLEL_MAKE = "" +EXTRA_OEMAKE = "'CC=${CC}' \ + 'AR=${AR}' \ + 'RANLIB=${RANLIB}' \ + 'REAL_DAEMON_DIR=${sbindir}' \ + 'STYLE=-DPROCESS_OPTIONS' \ + 'FACILITY=LOG_DAEMON' \ + 'SEVERITY=LOG_INFO' \ + 'BUGS=' \ + 'VSYSLOG=' \ + 'RFC931_TIMEOUT=10' \ + 'ACCESS=-DHOSTS_ACCESS' \ + 'KILL_OPT=-DKILL_IP_OPTIONS' \ + 'UMASK=-DDAEMON_UMASK=022' \ + 'NETGROUP=${EXTRA_OEMAKE_NETGROUP}' \ + 'LIBS=-lnsl' \ + 'ARFLAGS=rv' \ + 'AUX_OBJ=weak_symbols.o' \ + 'TLI=' \ + 'COPTS=' \ + 'EXTRA_CFLAGS=${CFLAGS} -DSYS_ERRLIST_DEFINED -DHAVE_STRERROR -DHAVE_WEAKSYMS -D_REENTRANT -DINET6=1 -Dss_family=__ss_family -Dss_len=__ss_len'" + +EXTRA_OEMAKE_NETGROUP = "-DNETGROUP -DUSE_GETDOMAIN" +EXTRA_OEMAKE_NETGROUP_linux-uclibc = "-DUSE_GETDOMAIN" +EXTRA_OEMAKE_NETGROUP_linux-uclibceabi = "-DUSE_GETDOMAIN" + +do_compile () { + oe_runmake 'TABLES=-DHOSTS_DENY=\"${sysconfdir}/hosts.deny\" -DHOSTS_ALLOW=\"${sysconfdir}/hosts.allow\"' \ + all +} + +BINS = "safe_finger tcpd tcpdchk try-from tcpdmatch" +MANS3 = "hosts_access" +MANS5 = "hosts_options" +MANS8 = "tcpd tcpdchk tcpdmatch" +do_install () { + oe_libinstall -a libwrap ${D}${libdir} + oe_libinstall -C shared -so libwrap ${D}${base_libdir} + + rel_lib_prefix=`echo ${libdir} | sed 's,\(^/\|\)[^/][^/]*,..,g'` + libname=`readlink ${D}${base_libdir}/libwrap.so | xargs basename` + ln -s ${rel_lib_prefix}${base_libdir}/${libname} ${D}${libdir}/libwrap.so + rm -f ${D}${base_libdir}/libwrap.so + + install -d ${D}${sbindir} + for b in ${BINS}; do + install -m 0755 $b ${D}${sbindir}/ || exit 1 + done + + install -d ${D}${mandir}/man3 + for m in ${MANS3}; do + install -m 0644 $m.3 ${D}${mandir}/man3/ || exit 1 + done + + install -d ${D}${mandir}/man5 + for m in ${MANS5}; do + install -m 0644 $m.5 ${D}${mandir}/man5/ || exit 1 + done + + install -d ${D}${mandir}/man8 + for m in ${MANS8}; do + install -m 0644 $m.8 ${D}${mandir}/man8/ || exit 1 + done + + install -m 0644 ${WORKDIR}/try-from.8 ${D}${mandir}/man8/ + install -m 0644 ${WORKDIR}/safe_finger.8 ${D}${mandir}/man8/ + + install -d ${D}${includedir} + install -m 0644 tcpd.h ${D}${includedir}/ +} + diff --git a/meta/recipes-extended/tzcode/tzcode-native_2009r.bb b/meta/recipes-extended/tzcode/tzcode-native_2009r.bb new file mode 100644 index 0000000000..c9a213b4f8 --- /dev/null +++ b/meta/recipes-extended/tzcode/tzcode-native_2009r.bb @@ -0,0 +1,17 @@ +DESCRIPTION = "tzcode, timezone zoneinfo utils -- zic, zdump, tzselect" + +PR = "r0" + +SRC_URI = "ftp://elsie.nci.nih.gov/pub/tzcode${PV}.tar.gz \ + ftp://elsie.nci.nih.gov/pub/tzdata2009s.tar.gz" + +S = "${WORKDIR}" + +inherit native + +do_install () { + install -d ${D}${bindir}/ + install -m 755 zic ${D}${bindir}/ + install -m 755 zdump ${D}${bindir}/ + install -m 755 tzselect ${D}${bindir}/ +} diff --git a/meta/recipes-extended/tzdata/tzdata_2010j.bb b/meta/recipes-extended/tzdata/tzdata_2010j.bb new file mode 100644 index 0000000000..97eb1173c1 --- /dev/null +++ b/meta/recipes-extended/tzdata/tzdata_2010j.bb @@ -0,0 +1,160 @@ +DESCRIPTION = "Timezone data" +HOMEPAGE = "ftp://elsie.nci.nih.gov/pub/" +SECTION = "base" +PRIORITY = "optional" +LICENSE = "PD" +LIC_FILES_CHKSUM = "file://asia;beginline=2;endline=3;md5=06468c0e84ef4d4c97045a4a29b08234" +DEPENDS = "tzcode-native" + +PR = "r0" + +RCONFLICTS= "timezones timezone-africa timezone-america timezone-antarctica \ + timezone-arctic timezone-asia timezone-atlantic \ + timezone-australia timezone-europe timezone-indian \ + timezone-iso3166.tab timezone-pacific timezone-zone.tab" + +SRC_URI = "ftp://elsie.nci.nih.gov/pub/tzdata${PV}.tar.gz" + +S = "${WORKDIR}" + +TZONES= "africa antarctica asia australasia europe northamerica southamerica \ + factory solar87 solar88 solar89 etcetera backward systemv \ +# pacificnew \ + " + +do_compile () { + for zone in ${TZONES}; do \ + ${STAGING_BINDIR_NATIVE}/zic -d ${WORKDIR}${datadir}/zoneinfo -L /dev/null \ + -y ${S}/yearistype.sh ${S}/${zone} ; \ + ${STAGING_BINDIR_NATIVE}/zic -d ${WORKDIR}${datadir}/zoneinfo/posix -L /dev/null \ + -y ${S}/yearistype.sh ${S}/${zone} ; \ + ${STAGING_BINDIR_NATIVE}/zic -d ${WORKDIR}${datadir}/zoneinfo/right -L ${S}/leapseconds \ + -y ${S}/yearistype.sh ${S}/${zone} ; \ + done +} + +do_install () { + install -d ${D}/usr ${D}${datadir}/zoneinfo + cp -pPR ${S}/usr ${D}/ +} + +# Packages primarily organized by directory with a major city +# in most time zones in the base package + +PACKAGES = "tzdata tzdata-misc tzdata-posix tzdata-right tzdata-africa \ + tzdata-americas tzdata-antarctica tzdata-arctic tzdata-asia \ + tzdata-atlantic tzdata-australia tzdata-europe tzdata-pacific" + +FILES_tzdata-africa += "${datadir}/zoneinfo/Africa/*" +RPROVIDES_tzdata-africa = "tzdata-africa" + +FILES_tzdata-americas += "${datadir}/zoneinfo/America/* \ + ${datadir}/zoneinfo/US/* \ + ${datadir}/zoneinfo/Brazil/* \ + ${datadir}/zoneinfo/Canada/* \ + ${datadir}/zoneinfo/Mexico/* \ + ${datadir}/zoneinfo/Chile/*" +RPROVIDES_tzdata-americas = "tzdata-americas" + +FILES_tzdata-antarctica += "${datadir}/zoneinfo/Antarctica/*" +RPROVIDES_tzdata-antarctica = "tzdata-antarctica" + +FILES_tzdata-arctic += "${datadir}/zoneinfo/Arctic/*" +RPROVIDES_tzdata-arctic = "tzdata-arctic" + +FILES_tzdata-asia += "${datadir}/zoneinfo/Asia/* \ + ${datadir}/zoneinfo/Indian/* \ + ${datadir}/zoneinfo/Mideast/*" +RPROVIDES_tzdata-asia = "tzdata-asia" + +FILES_tzdata-atlantic += "${datadir}/zoneinfo/Atlantic/*" +RPROVIDES_tzdata-atlantic = "tzdata-atlantic" + +FILES_tzdata-australia += "${datadir}/zoneinfo/Australia/*" +RPROVIDES_tzdata-australia = "tzdata-australia" + +FILES_tzdata-europe += "${datadir}/zoneinfo/Europe/*" +RPROVIDES_tzdata-europe = "tzdata-europe" + +FILES_tzdata-pacific += "${datadir}/zoneinfo/Pacific/*" +RPROVIDES_tzdata-pacific = "tzdata-pacific" + +FILES_tzdata-posix += "${datadir}/zoneinfo/posix/*" +RPROVIDES_tzdata-posix = "tzdata-posix" + +FILES_tzdata-right += "${datadir}/zoneinfo/right/*" +RPROVIDES_tzdata-right = "tzdata-right" + + +FILES_tzdata-misc += "${datadir}/zoneinfo/Cuba \ + ${datadir}/zoneinfo/Egypt \ + ${datadir}/zoneinfo/Eire \ + ${datadir}/zoneinfo/Factory \ + ${datadir}/zoneinfo/GB-Eire \ + ${datadir}/zoneinfo/Hongkong \ + ${datadir}/zoneinfo/Iceland \ + ${datadir}/zoneinfo/Iran \ + ${datadir}/zoneinfo/Israel \ + ${datadir}/zoneinfo/Jamaica \ + ${datadir}/zoneinfo/Japan \ + ${datadir}/zoneinfo/Kwajalein \ + ${datadir}/zoneinfo/Libya \ + ${datadir}/zoneinfo/Navajo \ + ${datadir}/zoneinfo/Poland \ + ${datadir}/zoneinfo/Portugal \ + ${datadir}/zoneinfo/Singapore \ + ${datadir}/zoneinfo/Turkey" +RPROVIDES_tzdata-misc = "tzdata-misc" + + +FILES_${PN} += "${datadir}/zoneinfo/Pacific/Honolulu \ + ${datadir}/zoneinfo/America/Anchorage \ + ${datadir}/zoneinfo/America/Los_Angeles \ + ${datadir}/zoneinfo/America/Denver \ + ${datadir}/zoneinfo/America/Chicago \ + ${datadir}/zoneinfo/America/New_York \ + ${datadir}/zoneinfo/America/Caracas \ + ${datadir}/zoneinfo/America/Sao_Paulo \ + ${datadir}/zoneinfo/Europe/London \ + ${datadir}/zoneinfo/Europe/Paris \ + ${datadir}/zoneinfo/Africa/Cairo \ + ${datadir}/zoneinfo/Europe/Moscow \ + ${datadir}/zoneinfo/Asia/Dubai \ + ${datadir}/zoneinfo/Asia/Karachi \ + ${datadir}/zoneinfo/Asia/Dhaka \ + ${datadir}/zoneinfo/Asia/Bankok \ + ${datadir}/zoneinfo/Asia/Hong_Kong \ + ${datadir}/zoneinfo/Asia/Tokyo \ + ${datadir}/zoneinfo/Australia/Darwin \ + ${datadir}/zoneinfo/Australia/Adelaide \ + ${datadir}/zoneinfo/Australia/Brisbane \ + ${datadir}/zoneinfo/Australia/Sydney \ + ${datadir}/zoneinfo/Pacific/Noumea \ + ${datadir}/zoneinfo/CET \ + ${datadir}/zoneinfo/CST6CDT \ + ${datadir}/zoneinfo/EET \ + ${datadir}/zoneinfo/EST \ + ${datadir}/zoneinfo/EST5EDT \ + ${datadir}/zoneinfo/GB \ + ${datadir}/zoneinfo/GMT \ + ${datadir}/zoneinfo/GMT+0 \ + ${datadir}/zoneinfo/GMT-0 \ + ${datadir}/zoneinfo/GMT0 \ + ${datadir}/zoneinfo/Greenwich \ + ${datadir}/zoneinfo/HST \ + ${datadir}/zoneinfo/MET \ + ${datadir}/zoneinfo/MST \ + ${datadir}/zoneinfo/MST7MDT \ + ${datadir}/zoneinfo/NZ \ + ${datadir}/zoneinfo/NZ-CHAT \ + ${datadir}/zoneinfo/PRC \ + ${datadir}/zoneinfo/PST8PDT \ + ${datadir}/zoneinfo/ROC \ + ${datadir}/zoneinfo/ROK \ + ${datadir}/zoneinfo/UCT \ + ${datadir}/zoneinfo/UTC \ + ${datadir}/zoneinfo/Universal \ + ${datadir}/zoneinfo/W-SU \ + ${datadir}/zoneinfo/WET \ + ${datadir}/zoneinfo/Zulu \ + ${datadir}/zoneinfo/Etc/*" diff --git a/meta/recipes-extended/unzip/unzip_6.0.bb b/meta/recipes-extended/unzip/unzip_6.0.bb new file mode 100644 index 0000000000..069dfb8781 --- /dev/null +++ b/meta/recipes-extended/unzip/unzip_6.0.bb @@ -0,0 +1,25 @@ +DESCRIPTION = "A (de)compression library for the ZIP format" +HOMEPAGE = "http://www.info-zip.org" +SECTION = "console/utils" +LICENSE = "Info-ZIP" +LIC_FILES_CHKSUM = "file://LICENSE;md5=94caec5a51ef55ef711ee4e8b1c69e29" +PE = "1" +PR = "r0" + +SRC_URI = "ftp://ftp.info-zip.org/pub/infozip/src/unzip60.tgz" +S = "${WORKDIR}/unzip60" + +export LD = "${CC}" +LD_virtclass-native = "${CC}" + +do_compile() { + oe_runmake -f unix/Makefile generic +} + +do_install() { + oe_runmake -f unix/Makefile install prefix=${D}${prefix} + install -d ${D}${mandir} + mv ${D}${prefix}/man/* ${D}${mandir} +} + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-extended/watchdog/watchdog_5.9.bb b/meta/recipes-extended/watchdog/watchdog_5.9.bb new file mode 100644 index 0000000000..c768077f1d --- /dev/null +++ b/meta/recipes-extended/watchdog/watchdog_5.9.bb @@ -0,0 +1,16 @@ +DESCRIPTION = "Watchdog is a daemon that checks if your system is still \ +working. If programs in user space are not longer executed \ +it will reboot the system." +HOMEPAGE = "http://watchdog.sourceforge.net/" +BUGTRACKER = "http://sourceforge.net/tracker/?group_id=172030&atid=860194" + +LICENSE = "GPLv1+" +LIC_FILES_CHKSUM = "file://COPYING;md5=8a7258c60a71a2f04b67fb01f495889c" + +PR = "r0" + +SRC_URI = "${SOURCEFORGE_MIRROR}/watchdog/watchdog-${PV}.tar.gz" + +inherit autotools + +RRECOMMENDS_${PN} = "kernel-module-softdog" diff --git a/meta/recipes-extended/zile/files/for_build.patch b/meta/recipes-extended/zile/files/for_build.patch new file mode 100644 index 0000000000..96380fa220 --- /dev/null +++ b/meta/recipes-extended/zile/files/for_build.patch @@ -0,0 +1,64 @@ +Index: zile-2.0beta6/acinclude.m4 +=================================================================== +--- zile-2.0beta6.orig/acinclude.m4 2004-12-20 19:13:07.000000000 -0500 ++++ zile-2.0beta6/acinclude.m4 2005-01-21 20:38:28.982166344 -0500 +@@ -35,3 +35,29 @@ + t} + fi + AC_SUBST(EXEEXT_FOR_BUILD)])dnl ++ ++dnl Get a default for CFLAGS_FOR_BUILD to put into Makefile. ++AC_DEFUN([BFD_CFLAGS_FOR_BUILD], ++[ac_test_CFLAGS=${CFLAGS+set} ++# Put a plausible default for CFLAGS_FOR_BUILD in Makefile. ++if test -z "$CFLAGS_FOR_BUILD"; then ++ if test "x$cross_compiling" = "xyes"; then ++ CFLAGS_FOR_BUILD="-O2" ++ else ++ CFLAGS_FOR_BUILD='$(CFLAGS)' ++ fi ++fi ++AC_SUBST(CFLAGS_FOR_BUILD)])dnl ++ ++dnl Get a default for LDFLAGS_FOR_BUILD to put into Makefile. ++AC_DEFUN([BFD_LDFLAGS_FOR_BUILD], ++[ac_test_LDFLAGS=${LDFLAGS+set} ++# Put a plausible default for LDFLAGS_FOR_BUILD in Makefile. ++if test -z "$LDFLAGS_FOR_BUILD"; then ++ if test "x$cross_compiling" = "xyes"; then ++ LDFLAGS_FOR_BUILD="" ++ else ++ LDFLAGS_FOR_BUILD='$(LDFLAGS)' ++ fi ++fi ++AC_SUBST(LDFLAGS_FOR_BUILD)])dnl +Index: zile-2.0beta6/configure.ac +=================================================================== +--- zile-2.0beta6.orig/configure.ac 2005-01-12 07:56:19.000000000 -0500 ++++ zile-2.0beta6/configure.ac 2005-01-21 20:26:58.178184512 -0500 +@@ -19,6 +19,8 @@ + + AC_PROG_CC + BFD_CC_FOR_BUILD ++BFD_CFLAGS_FOR_BUILD ++BFD_LDFLAGS_FOR_BUILD + AC_C_INLINE + AC_PROG_INSTALL + AC_PROG_RANLIB +Index: zile-2.0beta6/doc/Makefile.am +=================================================================== +--- zile-2.0beta6.orig/doc/Makefile.am 2005-01-03 06:11:32.000000000 -0500 ++++ zile-2.0beta6/doc/Makefile.am 2005-01-21 20:27:17.271281920 -0500 +@@ -27,10 +27,10 @@ + AM_CFLAGS = -I$(top_srcdir) -I$(top_srcdir)/lib -I$(top_srcdir)/src + + mkdoc$(EXEEXT_FOR_BUILD): mkdoc.o config.h +- $(CC_FOR_BUILD) $(CFLAGS) $(LDFLAGS) -o $@ mkdoc.o ++ $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) -o $@ mkdoc.o + + mkdoc.o: mkdoc.c +- $(CC_FOR_BUILD) -c -I$(top_srcdir)/doc -I$(top_srcdir) -I$(top_srcdir)/src $(CFLAGS) $(srcdir)/mkdoc.c ++ $(CC_FOR_BUILD) -c -I$(top_srcdir)/doc -I$(top_srcdir) -I$(top_srcdir)/src $(CFLAGS_FOR_BUILD) $(srcdir)/mkdoc.c + + AUTODOC: $(AUTODOCSRCS) mkdoc + ./mkdoc $(AUTODOCSRCS) >AUTODOC diff --git a/meta/recipes-extended/zile/zile_1.7+2.0beta6.bb b/meta/recipes-extended/zile/zile_1.7+2.0beta6.bb new file mode 100644 index 0000000000..74d832eef3 --- /dev/null +++ b/meta/recipes-extended/zile/zile_1.7+2.0beta6.bb @@ -0,0 +1,19 @@ +DESCRIPTION = "Zile is a very small emacs-like editor." +HOMEPAGE = "http://zile.sourceforge.net/" +LICENSE = "GPL" +DEPENDS = "ncurses" +PRIORITY = "optional" +SECTION = "console/editors" +PR = "r1" + +UV = "${@bb.data.getVar('PV', d, 1).split('+')[1]}" + +SRC_URI = "${SOURCEFORGE_MIRROR}/zile/zile-${UV}.tar.gz \ + file://for_build.patch;patch=1" +S = "${WORKDIR}/zile-${UV}" + +inherit autotools + +export CC_FOR_BUILD = "${BUILD_CC}" +export CFLAGS_FOR_BUILD = "${BUILD_CFLAGS} -DHAVE_VASPRINTF" +export LDFLAGS_FOR_BUILD = "${BUILD_LDFLAGS}" diff --git a/meta/recipes-extended/zip/zip.inc b/meta/recipes-extended/zip/zip.inc new file mode 100644 index 0000000000..9550447264 --- /dev/null +++ b/meta/recipes-extended/zip/zip.inc @@ -0,0 +1,24 @@ +DESCRIPTION = "Archiver for .zip files" +HOMEPAGE = "http://www.info-zip.org" +SECTION = "console/utils" + +LICENSE = "Info-ZIP" +LIC_FILES_CHKSUM = "file://LICENSE;md5=04d43c5d70b496c032308106e26ae17d" + +SRC_URI = "ftp://ftp.info-zip.org/pub/infozip/src/zip${@bb.data.getVar('PV',d,1).replace('.', '')}.tgz" + +EXTRA_OEMAKE = "'CC=${CC}' 'BIND=${CC}' 'AS=${CC} -c' 'CPP=${CPP}' \ + 'CFLAGS=-I. -DUNIX ${CFLAGS}' 'INSTALL=install' \ + 'BINFLAGS=0755' 'INSTALL_D=install -d'" + +do_compile() { + oe_runmake -f unix/Makefile generic +} + +do_install() { + oe_runmake -f unix/Makefile prefix=${D}${prefix} \ + BINDIR=${D}${bindir} MANDIR=${D}${mandir}/man1 \ + install +} + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-extended/zip/zip_3.0.bb b/meta/recipes-extended/zip/zip_3.0.bb new file mode 100644 index 0000000000..c5df637a38 --- /dev/null +++ b/meta/recipes-extended/zip/zip_3.0.bb @@ -0,0 +1,6 @@ +require zip.inc + +PR="r0" + +# zip-2.32 still uses directory name of zip-2.30 +S = "${WORKDIR}/zip30" diff --git a/meta/recipes-gnome/libffi/libffi_3.0.8.bb b/meta/recipes-gnome/libffi/libffi_3.0.8.bb new file mode 100644 index 0000000000..06106279b0 --- /dev/null +++ b/meta/recipes-gnome/libffi/libffi_3.0.8.bb @@ -0,0 +1,5 @@ +SRC_URI = "ftp://sourceware.org/pub/libffi/libffi-3.0.8.tar.gz" + +inherit autotools + +BBCLASSEXTEND = "native" \ No newline at end of file diff --git a/meta/recipes-gnome/libgsf/libgsf_1.14.5.bb b/meta/recipes-gnome/libgsf/libgsf_1.14.5.bb new file mode 100644 index 0000000000..10b6390722 --- /dev/null +++ b/meta/recipes-gnome/libgsf/libgsf_1.14.5.bb @@ -0,0 +1,20 @@ +LICENSE = "GPL" +SECTION = "libs" +PR = "r0" + +DEPENDS= "libxml2 bzip2 glib-2.0 zlib" +RDEPENDS = "gconf gnome-vfs" + + +PACKAGES =+ "${PN}-gnome ${PN}-gnome-dev " + +FILES_${PN}-gnome = "${libdir}/libgsf-gnome-1.so.*" +FILES_${PN}-gnome-dev = "${libdir}/libgsf-gnome-1.* ${includedir}/libgsf-1/gsf-gnome" + +inherit autotools pkgconfig gnome gconf + +EXTRA_OECONF = "\ + --without-python \ + --without-gnome \ + --disable-gtk-doc \ + --with-bz2" diff --git a/meta/recipes-gnome/libgtkstylus/files/gtkstylus.sh b/meta/recipes-gnome/libgtkstylus/files/gtkstylus.sh new file mode 100644 index 0000000000..b1302ede0e --- /dev/null +++ b/meta/recipes-gnome/libgtkstylus/files/gtkstylus.sh @@ -0,0 +1,5 @@ +#!/bin/sh + +GTK_MODULES=libgtkstylus.so + +export GTK_MODULES diff --git a/meta/recipes-gnome/libgtkstylus/libgtkstylus_0.5.bb b/meta/recipes-gnome/libgtkstylus/libgtkstylus_0.5.bb new file mode 100644 index 0000000000..f614048a16 --- /dev/null +++ b/meta/recipes-gnome/libgtkstylus/libgtkstylus_0.5.bb @@ -0,0 +1,24 @@ +DESCRIPTION = "GTK plugin for stylus based systems" +SECTION = "libs" +DEPENDS = "gtk+" +LICENSE = "LGPL" +PR = "r2" + +inherit autotools + +SRC_URI = "http://burtonini.com/temp/${PN}-${PV}.tar.gz \ + file://gtkstylus.sh" + +do_install_append() { + install -d ${D}/${sysconfdir}/X11/Xsession.d + install -m 755 ${WORKDIR}/gtkstylus.sh ${D}/${sysconfdir}/X11/Xsession.d/45gtkstylus +} + +# Horrible but rpm falls over if you use '*' +GTKVER = "2.10.0" + +FILES_${PN} = "${sysconfdir} \ + ${libdir}/gtk-2.0/${GTKVER}/modules/libgtkstylus.so.*" +FILES_${PN}-dbg += "${libdir}/gtk-2.0/${GTKVER}/modules/.debug" +FILES_${PN}-dev += "${libdir}/gtk-2.0/${GTKVER}/modules/libgtkstylus.so \ + ${libdir}/gtk-2.0/${GTKVER}/modules/libgtkstylus.*a" diff --git a/meta/recipes-gnome/librsvg/librsvg_2.18.2.bb b/meta/recipes-gnome/librsvg/librsvg_2.18.2.bb new file mode 100644 index 0000000000..fb68c8ba70 --- /dev/null +++ b/meta/recipes-gnome/librsvg/librsvg_2.18.2.bb @@ -0,0 +1,31 @@ +DESCRIPTION = "Library for rendering SVG files" +SECTION = "x11/utils" +DEPENDS = "gtk+ libcroco cairo libxml2 popt" +LICENSE = "LGPL" +PR = "r3" + +EXTRA_OECONF = "--disable-mozilla-plugin --without-svgz --without-croco --disable-gnome-vfs" + +inherit autotools pkgconfig gnome + +PACKAGES =+ "librsvg-gtk librsvg-gtk-dbg librsvg-gtk-dev rsvg" +FILES_${PN} = "${libdir}/*.so.*" +FILES_rsvg = "${bindir}/rsvg \ + ${bindir}/rsvg-view \ + ${bindir}/rsvg-convert \ + ${datadir}/pixmaps/svg-viewer.svg" +FILES_librsvg-gtk = "${libdir}/gtk-2.0/*/*/*.so" +FILES_librsvg-gtk-dev += "${libdir}/gtk-2.0/*.*a \ + ${libdir}/gtk-2.0/*/loaders/*.*a \ + ${libdir}/gtk-2.0/*/engines/*.*a" +FILES_librsvg-gtk-dbg += "${libdir}/gtk-2.0/.debug \ + ${libdir}/gtk-2.0/*/*/.debug" + +pkg_postinst_librsvg-gtk() { +if [ "x$D" != "x" ]; then + exit 1 +fi + +test -x ${bindir}/gdk-pixbuf-query-loaders && { gdk-pixbuf-query-loaders > ${sysconfdir}/gtk-2.0/gdk-pixbuf.loaders ; } +test -x ${bindir}/gtk-update-icon-cache && gtk-update-icon-cache -q ${datadir}/icons/hicolor +} diff --git a/meta/recipes-gnome/librsvg/librsvg_2.22.3.bb b/meta/recipes-gnome/librsvg/librsvg_2.22.3.bb new file mode 100644 index 0000000000..fb68c8ba70 --- /dev/null +++ b/meta/recipes-gnome/librsvg/librsvg_2.22.3.bb @@ -0,0 +1,31 @@ +DESCRIPTION = "Library for rendering SVG files" +SECTION = "x11/utils" +DEPENDS = "gtk+ libcroco cairo libxml2 popt" +LICENSE = "LGPL" +PR = "r3" + +EXTRA_OECONF = "--disable-mozilla-plugin --without-svgz --without-croco --disable-gnome-vfs" + +inherit autotools pkgconfig gnome + +PACKAGES =+ "librsvg-gtk librsvg-gtk-dbg librsvg-gtk-dev rsvg" +FILES_${PN} = "${libdir}/*.so.*" +FILES_rsvg = "${bindir}/rsvg \ + ${bindir}/rsvg-view \ + ${bindir}/rsvg-convert \ + ${datadir}/pixmaps/svg-viewer.svg" +FILES_librsvg-gtk = "${libdir}/gtk-2.0/*/*/*.so" +FILES_librsvg-gtk-dev += "${libdir}/gtk-2.0/*.*a \ + ${libdir}/gtk-2.0/*/loaders/*.*a \ + ${libdir}/gtk-2.0/*/engines/*.*a" +FILES_librsvg-gtk-dbg += "${libdir}/gtk-2.0/.debug \ + ${libdir}/gtk-2.0/*/*/.debug" + +pkg_postinst_librsvg-gtk() { +if [ "x$D" != "x" ]; then + exit 1 +fi + +test -x ${bindir}/gdk-pixbuf-query-loaders && { gdk-pixbuf-query-loaders > ${sysconfdir}/gtk-2.0/gdk-pixbuf.loaders ; } +test -x ${bindir}/gtk-update-icon-cache && gtk-update-icon-cache -q ${datadir}/icons/hicolor +} diff --git a/meta/recipes-gnome/librsvg/librsvg_2.26.3.bb b/meta/recipes-gnome/librsvg/librsvg_2.26.3.bb new file mode 100644 index 0000000000..41e23b1d7d --- /dev/null +++ b/meta/recipes-gnome/librsvg/librsvg_2.26.3.bb @@ -0,0 +1,41 @@ +DESCRIPTION = "Library for rendering SVG files" +HOMEPAGE = "http://ftp.gnome.org/pub/GNOME/sources/librsvg/" +BUGTRACKER = "https://bugzilla.gnome.org/" + +LICENSE = "LGPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ + file://rsvg.h;beginline=3;endline=24;md5=20b4113c4909bbf0d67e006778302bc6" + +SECTION = "x11/utils" +DEPENDS = "gtk+ libcroco cairo libxml2 popt" +PR = "r0" + +EXTRA_OECONF = "--disable-mozilla-plugin --without-svgz --without-croco --disable-gnome-vfs" + +inherit autotools pkgconfig gnome + +do_configure_prepend () { + echo "CLEANFILES=" > gtk-doc.make +} + +PACKAGES =+ "librsvg-gtk librsvg-gtk-dbg librsvg-gtk-dev rsvg" +FILES_${PN} = "${libdir}/*.so.*" +FILES_rsvg = "${bindir}/rsvg \ + ${bindir}/rsvg-view \ + ${bindir}/rsvg-convert \ + ${datadir}/pixmaps/svg-viewer.svg" +FILES_librsvg-gtk = "${libdir}/gtk-2.0/*/*/*.so" +FILES_librsvg-gtk-dev += "${libdir}/gtk-2.0/*.*a \ + ${libdir}/gtk-2.0/*/loaders/*.*a \ + ${libdir}/gtk-2.0/*/engines/*.*a" +FILES_librsvg-gtk-dbg += "${libdir}/gtk-2.0/.debug \ + ${libdir}/gtk-2.0/*/*/.debug" + +pkg_postinst_librsvg-gtk() { +if [ "x$D" != "x" ]; then + exit 1 +fi + +test -x ${bindir}/gdk-pixbuf-query-loaders && { gdk-pixbuf-query-loaders > ${sysconfdir}/gtk-2.0/gdk-pixbuf.loaders ; } +test -x ${bindir}/gtk-update-icon-cache && gtk-update-icon-cache -q ${datadir}/icons/hicolor +} diff --git a/meta/recipes-gnome/wv/wv-1.2.0/pkgconfig.patch b/meta/recipes-gnome/wv/wv-1.2.0/pkgconfig.patch new file mode 100644 index 0000000000..136d89341f --- /dev/null +++ b/meta/recipes-gnome/wv/wv-1.2.0/pkgconfig.patch @@ -0,0 +1,13 @@ +Index: wv-1.2.0/wv-1.0.pc.in +=================================================================== +--- wv-1.2.0.orig/wv-1.0.pc.in 2008-03-19 22:25:18.000000000 +0000 ++++ wv-1.2.0/wv-1.0.pc.in 2008-03-19 22:26:32.000000000 +0000 +@@ -6,5 +6,6 @@ + Name: wvWare + Description: Word Document Filter library and utilities + Version: @VERSION@ +-Libs: -L${libdir} -lwv @WMF_LIBS@ @XML_LIBS@ @GLIB_LIBS@ @GSF_LIBS@ @PNG_LIBS@ @ZLIB_LIBS@ @LIBS@ -lm +-Cflags: -I${includedir}/wv @GSF_CFLAGS@ ++Requires: libgsf-1 ++Libs: -L${libdir} -lwv @WMF_LIBS@ @XML_LIBS@ @PNG_LIBS@ @ZLIB_LIBS@ @LIBS@ -lm ++Cflags: -I${includedir}/wv diff --git a/meta/recipes-gnome/wv/wv_1.2.0.bb b/meta/recipes-gnome/wv/wv_1.2.0.bb new file mode 100644 index 0000000000..c4c115b90e --- /dev/null +++ b/meta/recipes-gnome/wv/wv_1.2.0.bb @@ -0,0 +1,14 @@ +DESCRIPTION = "Programs for accessing Microsoft Word documents" +HOMEPAGE = "http://wvware.sourceforge.net/" +LICENSE = "GPLv2" +DEPENDS = "libgsf glib-2.0" +PR = "r3" + +SRC_URI = "${SOURCEFORGE_MIRROR}/wvware/wv-${PV}.tar.gz \ + file://pkgconfig.patch;patch=1" + +inherit autotools pkgconfig + +S = "${WORKDIR}/${PN}-${PV}" + +EXTRA_OECONF = "" diff --git a/meta/recipes-graphics/clutter/clutter-helix.inc b/meta/recipes-graphics/clutter/clutter-helix.inc deleted file mode 100644 index 6bbbb244d7..0000000000 --- a/meta/recipes-graphics/clutter/clutter-helix.inc +++ /dev/null @@ -1,15 +0,0 @@ -DESCRIPTION = "Clutter Helix" -HOMEPAGE = "http://www.clutter-project.org/" -LICENSE = "LGPL" - -DEPENDS = "helix-libs" - -FILESPATH = "${FILE_DIRNAME}/clutter-helix" - -COMPATIBLE_HOST = '(x86_64|i.86.*)-linux' - -PACKAGES =+ "${PN}-examples" -FILES_${PN}-examples = "${bindir}/video-player ${bindir}/audio-player" - -inherit autotools pkgconfig gtk-doc - diff --git a/meta/recipes-graphics/clutter/clutter-helix_git.bb b/meta/recipes-graphics/clutter/clutter-helix_git.bb deleted file mode 100644 index 1c272306bf..0000000000 --- a/meta/recipes-graphics/clutter/clutter-helix_git.bb +++ /dev/null @@ -1,8 +0,0 @@ -require clutter-helix.inc - -PV = "0.8.0+git${SRCPV}" -PR = "r0" - -SRC_URI = "git://git.clutter-project.org/clutter-helix.git;protocol=git" - -S = "${WORKDIR}/git" diff --git a/meta/recipes-graphics/clutter/clutter-mozembed.inc b/meta/recipes-graphics/clutter/clutter-mozembed.inc deleted file mode 100644 index 72c9412d04..0000000000 --- a/meta/recipes-graphics/clutter/clutter-mozembed.inc +++ /dev/null @@ -1,14 +0,0 @@ -DESCRIPTION = "Clutter Mozilla Embedded" -HOMEPAGE = "http://www.clutter-project.org/" -LICENSE = "LGPL" - -DEPENDS = "mozilla-headless mozilla-headless-services clutter-1.0" - -FILESPATH = "${FILE_DIRNAME}/clutter-mozembed" - -FILES_${PN} =+ "${datadir}/cluttermozembed/chrome/" - -EXTRA_OECONF = "--enable-plugins" - -inherit autotools pkgconfig gtk-doc - diff --git a/meta/recipes-graphics/clutter/clutter-mozembed_git.bb b/meta/recipes-graphics/clutter/clutter-mozembed_git.bb deleted file mode 100644 index e2da2d6a7d..0000000000 --- a/meta/recipes-graphics/clutter/clutter-mozembed_git.bb +++ /dev/null @@ -1,14 +0,0 @@ -require clutter-mozembed.inc - -PV = "0.8.0+git${SRCPV}" -PR = "r7" - -SRC_URI = "git://git.clutter-project.org/clutter-mozembed.git;protocol=git \ - file://link-with-g++-da7632f3e2c8d1a70ab01cc7adb63760d8718b41.patch;patch=1;rev=da7632f3e2c8d1a70ab01cc7adb63760d8718b41 \ - file://link-with-g++.patch;patch=1;notrev=da7632f3e2c8d1a70ab01cc7adb63760d8718b41" -S = "${WORKDIR}/git" - -do_configure_prepend () { - touch ${S}/clutter-mozembed/dummy.cpp - touch ${S}/clutter-mozembed/dummy2.cpp -} diff --git a/meta/recipes-graphics/fstests/fstests_svn.bb b/meta/recipes-graphics/fstests/fstests_svn.bb new file mode 100644 index 0000000000..b4075212ee --- /dev/null +++ b/meta/recipes-graphics/fstests/fstests_svn.bb @@ -0,0 +1,18 @@ +DESCRIPTION = "Various benchmarning tests for X" +HOMEPAGE = "http://www.o-hand.com" +SECTION = "devel" +LICENSE = "GPL" +DEPENDS = "pango libxext libxft virtual/libx11 gtk+" +PV = "0.0+svnr${SRCREV}" +PR = "r1" + +inherit autotools + +SRC_URI = "svn://svn.o-hand.com/repos/misc/trunk;module=fstests;proto=http" + +S = "${WORKDIR}/fstests/tests" + +do_install() { + install -d ${D}${bindir} + find . -name "test-*" -type f -perm -755 -exec install -m 0755 {} ${D}${bindir} \; +} diff --git a/meta/recipes-graphics/libsdl/files/acinclude.m4 b/meta/recipes-graphics/libsdl/files/acinclude.m4 new file mode 100644 index 0000000000..ca2df9d5e5 --- /dev/null +++ b/meta/recipes-graphics/libsdl/files/acinclude.m4 @@ -0,0 +1,189 @@ +# Local macros for the SDL configure.in script + +dnl Function to link an architecture specific file +dnl LINK_ARCH_SRC(source_dir, arch, source_file) +AC_DEFUN([COPY_ARCH_SRC], +[ + old="$srcdir/$1/$2/$3" + new="$1/$3" + if test ! -d $1; then + echo "Creating directory $1" + mkdir -p $1 + fi + echo "Copying $old -> $new" + cat >$new <<__EOF__ +/* WARNING: This file was automatically generated! + * Original: $old + */ +__EOF__ + cat >>$new <$old +]) + +# +# --- esd.m4 --- +# +# Configure paths for ESD +# Manish Singh 98-9-30 +# stolen back from Frank Belew +# stolen from Manish Singh +# Shamelessly stolen from Owen Taylor + +dnl AM_PATH_ESD([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]]) +dnl Test for ESD, and define ESD_CFLAGS and ESD_LIBS +dnl +AC_DEFUN([AM_PATH_ESD], +[dnl +dnl Get the cflags and libraries from the esd-config script +dnl +AC_ARG_WITH(esd-prefix,[ --with-esd-prefix=PFX Prefix where ESD is installed (optional)], + esd_prefix="$withval", esd_prefix="") +AC_ARG_WITH(esd-exec-prefix,[ --with-esd-exec-prefix=PFX Exec prefix where ESD is installed (optional)], + esd_exec_prefix="$withval", esd_exec_prefix="") +AC_ARG_ENABLE(esdtest, [ --disable-esdtest Do not try to compile and run a test ESD program], + , enable_esdtest=yes) + + if test x$esd_exec_prefix != x ; then + esd_args="$esd_args --exec-prefix=$esd_exec_prefix" + if test x${ESD_CONFIG+set} != xset ; then + ESD_CONFIG=$esd_exec_prefix/bin/esd-config + fi + fi + if test x$esd_prefix != x ; then + esd_args="$esd_args --prefix=$esd_prefix" + if test x${ESD_CONFIG+set} != xset ; then + ESD_CONFIG=$esd_prefix/bin/esd-config + fi + fi + + AC_PATH_PROG(ESD_CONFIG, esd-config, no) + min_esd_version=ifelse([$1], ,0.2.7,$1) + AC_MSG_CHECKING(for ESD - version >= $min_esd_version) + no_esd="" + if test "$ESD_CONFIG" = "no" ; then + no_esd=yes + else + ESD_CFLAGS=`$ESD_CONFIG $esdconf_args --cflags` + ESD_LIBS=`$ESD_CONFIG $esdconf_args --libs` + + esd_major_version=`$ESD_CONFIG $esd_args --version | \ + sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` + esd_minor_version=`$ESD_CONFIG $esd_args --version | \ + sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` + esd_micro_version=`$ESD_CONFIG $esd_config_args --version | \ + sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` + if test "x$enable_esdtest" = "xyes" ; then + ac_save_CFLAGS="$CFLAGS" + ac_save_LIBS="$LIBS" + CFLAGS="$CFLAGS $ESD_CFLAGS" + LIBS="$LIBS $ESD_LIBS" +dnl +dnl Now check if the installed ESD is sufficiently new. (Also sanity +dnl checks the results of esd-config to some extent +dnl + rm -f conf.esdtest + AC_TRY_RUN([ +#include +#include +#include +#include + +char* +my_strdup (char *str) +{ + char *new_str; + + if (str) + { + new_str = malloc ((strlen (str) + 1) * sizeof(char)); + strcpy (new_str, str); + } + else + new_str = NULL; + + return new_str; +} + +int main () +{ + int major, minor, micro; + char *tmp_version; + + system ("touch conf.esdtest"); + + /* HP/UX 9 (%@#!) writes to sscanf strings */ + tmp_version = my_strdup("$min_esd_version"); + if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ) != 3) { + printf("%s, bad version string\n", "$min_esd_version"); + exit(1); + } + + if (($esd_major_version > major) || + (($esd_major_version == major) && ($esd_minor_version > minor)) || + (($esd_major_version == major) && ($esd_minor_version == minor) && ($esd_micro_version >= micro))) + { + return 0; + } + else + { + printf("\n*** 'esd-config --version' returned %d.%d.%d, but the minimum version\n", $esd_major_version, $esd_minor_version, $esd_micro_version); + printf("*** of ESD required is %d.%d.%d. If esd-config is correct, then it is\n", major, minor, micro); + printf("*** best to upgrade to the required version.\n"); + printf("*** If esd-config was wrong, set the environment variable ESD_CONFIG\n"); + printf("*** to point to the correct copy of esd-config, and remove the file\n"); + printf("*** config.cache before re-running configure\n"); + return 1; + } +} + +],, no_esd=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"]) + CFLAGS="$ac_save_CFLAGS" + LIBS="$ac_save_LIBS" + fi + fi + if test "x$no_esd" = x ; then + AC_MSG_RESULT(yes) + ifelse([$2], , :, [$2]) + else + AC_MSG_RESULT(no) + if test "$ESD_CONFIG" = "no" ; then + echo "*** The esd-config script installed by ESD could not be found" + echo "*** If ESD was installed in PREFIX, make sure PREFIX/bin is in" + echo "*** your path, or set the ESD_CONFIG environment variable to the" + echo "*** full path to esd-config." + else + if test -f conf.esdtest ; then + : + else + echo "*** Could not run ESD test program, checking why..." + CFLAGS="$CFLAGS $ESD_CFLAGS" + LIBS="$LIBS $ESD_LIBS" + AC_TRY_LINK([ +#include +#include +], [ return 0; ], + [ echo "*** The test program compiled, but did not run. This usually means" + echo "*** that the run-time linker is not finding ESD or finding the wrong" + echo "*** version of ESD. If it is not finding ESD, you'll need to set your" + echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point" + echo "*** to the installed location Also, make sure you have run ldconfig if that" + echo "*** is required on your system" + echo "***" + echo "*** If you have an old version installed, it is best to remove it, although" + echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"], + [ echo "*** The test program failed to compile or link. See the file config.log for the" + echo "*** exact error that occured. This usually means ESD was incorrectly installed" + echo "*** or that you have moved ESD since it was installed. In the latter case, you" + echo "*** may want to edit the esd-config script: $ESD_CONFIG" ]) + CFLAGS="$ac_save_CFLAGS" + LIBS="$ac_save_LIBS" + fi + fi + ESD_CFLAGS="" + ESD_LIBS="" + ifelse([$3], , :, [$3]) + fi + AC_SUBST(ESD_CFLAGS) + AC_SUBST(ESD_LIBS) + rm -f conf.esdtest +]) + diff --git a/meta/recipes-graphics/libsdl/files/configure_tweak.patch b/meta/recipes-graphics/libsdl/files/configure_tweak.patch new file mode 100644 index 0000000000..90a2888e57 --- /dev/null +++ b/meta/recipes-graphics/libsdl/files/configure_tweak.patch @@ -0,0 +1,1167 @@ +Index: SDL-1.2.11/configure.in +=================================================================== +--- SDL-1.2.11.orig/configure.in 2006-06-27 05:48:33.000000000 +0100 ++++ SDL-1.2.11/configure.in 2008-02-21 19:48:47.000000000 +0000 +@@ -40,13 +40,13 @@ + AC_SUBST(LT_AGE) + + dnl Detect the canonical build and host environments +-AC_CONFIG_AUX_DIRS($srcdir/build-scripts) ++AC_CONFIG_AUX_DIR(./build-scripts) + AC_CANONICAL_HOST + AC_C_BIGENDIAN + if test x$ac_cv_c_bigendian = xyes; then +- AC_DEFINE(SDL_BYTEORDER, 4321) ++ AC_DEFINE(SDL_BYTEORDER, 4321, "Byte Order") + else +- AC_DEFINE(SDL_BYTEORDER, 1234) ++ AC_DEFINE(SDL_BYTEORDER, 1234, "Byte Order") + fi + + dnl Set up the compiler and linker flags +@@ -107,7 +107,7 @@ + AC_HELP_STRING([--enable-libc], [Use the system C library [[default=yes]]]), + , enable_libc=yes) + if test x$enable_libc = xyes; then +- AC_DEFINE(HAVE_LIBC) ++ AC_DEFINE(HAVE_LIBC,1,"") + + dnl Check for C library headers + AC_HEADER_STDC +@@ -118,7 +118,7 @@ + if test x$ac_cv_header_inttypes_h = xyes -o x$ac_cv_header_stdint_h = xyes; then + AC_CHECK_TYPE(int64_t) + if test x$ac_cv_type_int64_t = xyes; then +- AC_DEFINE(SDL_HAS_64BIT_TYPE) ++ AC_DEFINE(SDL_HAS_64BIT_TYPE,1,"") + fi + have_inttypes=yes + fi +@@ -127,11 +127,11 @@ + AC_FUNC_ALLOCA + AC_FUNC_MEMCMP + if test x$ac_cv_func_memcmp_working = xyes; then +- AC_DEFINE(HAVE_MEMCMP) ++ AC_DEFINE(HAVE_MEMCMP,1,"") + fi + AC_FUNC_STRTOD + if test x$ac_cv_func_strtod = xyes; then +- AC_DEFINE(HAVE_STRTOD) ++ AC_DEFINE(HAVE_STRTOD,1,"") + fi + AC_CHECK_FUNCS(malloc calloc realloc free getenv putenv unsetenv qsort abs bcopy memset memcpy memmove strlen strlcpy strlcat strdup _strrev _strupr _strlwr strchr strrchr strstr itoa _ltoa _uitoa _ultoa strtol strtoul _i64toa _ui64toa strtoll strtoull atoi atof strcmp strncmp _stricmp strcasecmp _strnicmp strncasecmp sscanf snprintf vsnprintf iconv sigaction setjmp nanosleep) + +@@ -146,40 +146,40 @@ + AC_CHECK_SIZEOF(long, 4) + AC_CHECK_SIZEOF(long long, 8) + if test x$ac_cv_sizeof_char = x1; then +- AC_DEFINE(int8_t, signed char) +- AC_DEFINE(uint8_t, unsigned char) ++ AC_DEFINE(int8_t, signed char,"") ++ AC_DEFINE(uint8_t, unsigned char,"") + fi + if test x$ac_cv_sizeof_short = x2; then +- AC_DEFINE(int16_t, signed short) +- AC_DEFINE(uint16_t, unsigned short) ++ AC_DEFINE(int16_t, signed short,"") ++ AC_DEFINE(uint16_t, unsigned short,"") + else + if test x$ac_cv_sizeof_int = x2; then +- AC_DEFINE(int16_t, signed int) +- AC_DEFINE(uint16_t, unsigned int) ++ AC_DEFINE(int16_t, signed int,"") ++ AC_DEFINE(uint16_t, unsigned int,"") + fi + fi + if test x$ac_cv_sizeof_int = x4; then +- AC_DEFINE(int32_t, signed int) +- AC_DEFINE(uint32_t, unsigned int) ++ AC_DEFINE(int32_t, signed int,"") ++ AC_DEFINE(uint32_t, unsigned int,"") + else + if test x$ac_cv_sizeof_long = x4; then +- AC_DEFINE(int32_t, signed long) +- AC_DEFINE(uint32_t, unsigned long) ++ AC_DEFINE(int32_t, signed long,"") ++ AC_DEFINE(uint32_t, unsigned long,"") + fi + fi + if test x$ac_cv_sizeof_long = x8; then +- AC_DEFINE(int64_t, signed long) +- AC_DEFINE(uint64_t, unsigned long) +- AC_DEFINE(SDL_HAS_64BIT_TYPE) ++ AC_DEFINE(int64_t, signed long,"") ++ AC_DEFINE(uint64_t, unsigned long,"") ++ AC_DEFINE(SDL_HAS_64BIT_TYPE,"") + else + if test x$ac_cv_sizeof_long_long = x8; then +- AC_DEFINE(int64_t, signed long long) +- AC_DEFINE(uint64_t, unsigned long long) +- AC_DEFINE(SDL_HAS_64BIT_TYPE) ++ AC_DEFINE(int64_t, signed long long,"") ++ AC_DEFINE(uint64_t, unsigned long long,"") ++ AC_DEFINE(SDL_HAS_64BIT_TYPE,"") + fi + fi +- AC_DEFINE(size_t, unsigned int) +- AC_DEFINE(uintptr_t, unsigned long) ++ AC_DEFINE(size_t, unsigned int,"") ++ AC_DEFINE(uintptr_t, unsigned long,"") + fi + + # Standard C sources +@@ -201,67 +201,67 @@ + AC_HELP_STRING([--enable-audio], [Enable the audio subsystem [[default=yes]]]), + , enable_audio=yes) + if test x$enable_audio != xyes; then +- AC_DEFINE(SDL_AUDIO_DISABLED) ++ AC_DEFINE(SDL_AUDIO_DISABLED,1,"") + fi + AC_ARG_ENABLE(video, + AC_HELP_STRING([--enable-video], [Enable the video subsystem [[default=yes]]]), + , enable_video=yes) + if test x$enable_video != xyes; then +- AC_DEFINE(SDL_VIDEO_DISABLED) ++ AC_DEFINE(SDL_VIDEO_DISABLED,1,"") + fi + AC_ARG_ENABLE(events, + AC_HELP_STRING([--enable-events], [Enable the events subsystem [[default=yes]]]), + , enable_events=yes) + if test x$enable_events != xyes; then +- AC_DEFINE(SDL_EVENTS_DISABLED) ++ AC_DEFINE(SDL_EVENTS_DISABLED,1,"") + fi + AC_ARG_ENABLE(joystick, + AC_HELP_STRING([--enable-joystick], [Enable the joystick subsystem [[default=yes]]]), + , enable_joystick=yes) + if test x$enable_joystick != xyes; then +- AC_DEFINE(SDL_JOYSTICK_DISABLED) ++ AC_DEFINE(SDL_JOYSTICK_DISABLED,1,"") + fi + AC_ARG_ENABLE(cdrom, + AC_HELP_STRING([--enable-cdrom], [Enable the cdrom subsystem [[default=yes]]]), + , enable_cdrom=yes) + if test x$enable_cdrom != xyes; then +- AC_DEFINE(SDL_CDROM_DISABLED) ++ AC_DEFINE(SDL_CDROM_DISABLED,1,"") + fi + AC_ARG_ENABLE(threads, + AC_HELP_STRING([--enable-threads], [Enable the threading subsystem [[default=yes]]]), + , enable_threads=yes) + if test x$enable_threads != xyes; then +- AC_DEFINE(SDL_THREADS_DISABLED) ++ AC_DEFINE(SDL_THREADS_DISABLED,1,"") + fi + AC_ARG_ENABLE(timers, + AC_HELP_STRING([--enable-timers], [Enable the timer subsystem [[default=yes]]]), + , enable_timers=yes) + if test x$enable_timers != xyes; then +- AC_DEFINE(SDL_TIMERS_DISABLED) ++ AC_DEFINE(SDL_TIMERS_DISABLED,1,"") + fi + AC_ARG_ENABLE(file, + AC_HELP_STRING([--enable-file], [Enable the file subsystem [[default=yes]]]), + , enable_file=yes) + if test x$enable_file != xyes; then +- AC_DEFINE(SDL_FILE_DISABLED) ++ AC_DEFINE(SDL_FILE_DISABLED,1,"") + fi + AC_ARG_ENABLE(loadso, + AC_HELP_STRING([--enable-loadso], [Enable the shared object loading subsystem [[default=yes]]]), + , enable_loadso=yes) + if test x$enable_loadso != xyes; then +- AC_DEFINE(SDL_LOADSO_DISABLED) ++ AC_DEFINE(SDL_LOADSO_DISABLED,1,"") + fi + AC_ARG_ENABLE(cpuinfo, + AC_HELP_STRING([--enable-cpuinfo], [Enable the cpuinfo subsystem [[default=yes]]]), + , enable_cpuinfo=yes) + if test x$enable_cpuinfo != xyes; then +- AC_DEFINE(SDL_CPUINFO_DISABLED) ++ AC_DEFINE(SDL_CPUINFO_DISABLED,1,"") + fi + AC_ARG_ENABLE(assembly, + AC_HELP_STRING([--enable-assembly], [Enable assembly routines [[default=yes]]]), + , enable_assembly=yes) + if test x$enable_assembly = xyes; then +- AC_DEFINE(SDL_ASSEMBLY_ROUTINES) ++ AC_DEFINE(SDL_ASSEMBLY_ROUTINES,1,"") + fi + + dnl See if the OSS audio interface is supported +@@ -289,12 +289,12 @@ + int arg = SNDCTL_DSP_SETFRAGMENT; + ],[ + have_oss=yes +- AC_DEFINE(SDL_AUDIO_DRIVER_OSS_SOUNDCARD_H) ++ AC_DEFINE(SDL_AUDIO_DRIVER_OSS_SOUNDCARD_H,1,"") + ]) + fi + AC_MSG_RESULT($have_oss) + if test x$have_oss = xyes; then +- AC_DEFINE(SDL_AUDIO_DRIVER_OSS) ++ AC_DEFINE(SDL_AUDIO_DRIVER_OSS,1,"") + SOURCES="$SOURCES $srcdir/src/audio/dsp/*.c" + SOURCES="$SOURCES $srcdir/src/audio/dma/*.c" + have_audio=yes +@@ -314,45 +314,7 @@ + AC_ARG_ENABLE(alsa, + AC_HELP_STRING([--enable-alsa], [support the ALSA audio API [[default=yes]]]), + , enable_alsa=yes) +- if test x$enable_audio = xyes -a x$enable_alsa = xyes; then +- AM_PATH_ALSA(0.9.0, have_alsa=yes, have_alsa=no) +- # Restore all flags from before the ALSA detection runs +- CFLAGS="$alsa_save_CFLAGS" +- LDFLAGS="$alsa_save_LDFLAGS" +- LIBS="$alsa_save_LIBS" +- if test x$have_alsa = xyes; then +- AC_ARG_ENABLE(alsa-shared, +-AC_HELP_STRING([--enable-alsa-shared], [dynamically load ALSA audio support [[default=yes]]]), +- , enable_alsa_shared=yes) +- if test "x`echo $ALSA_LIBS | grep -- -L`" = "x"; then +- if test "x`ls /lib/libasound.so.* 2> /dev/null`" != "x"; then +- ALSA_LIBS="-L/lib $ALSA_LIBS" +- elif test "x`ls /usr/lib/libasound.so.* 2> /dev/null`" != "x"; then +- ALSA_LIBS="-L/usr/lib $ALSA_LIBS" +- elif test "x`ls /usr/local/lib/libasound.so.* 2> /dev/null`" != "x"; then +- ALSA_LIBS="-L/usr/local/lib $ALSA_LIBS" +- fi +- fi +- alsa_lib_spec=`echo $ALSA_LIBS | sed 's/.*-L\([[^ ]]*\).*/\1\/libasound.so.*/'` +- alsa_lib=`ls -- $alsa_lib_spec | sed 's/.*\/\(.*\)/\1/; q'` +- echo "-- $alsa_lib_spec -> $alsa_lib" +- +- AC_DEFINE(SDL_AUDIO_DRIVER_ALSA) +- SOURCES="$SOURCES $srcdir/src/audio/alsa/*.c" +- EXTRA_CFLAGS="$EXTRA_CFLAGS $ALSA_CFLAGS" +- if test x$have_loadso != xyes && \ +- test x$enable_alsa_shared = xyes; then +- AC_MSG_WARN([You must have SDL_LoadObject() support for dynamic ALSA loading]) +- fi +- if test x$have_loadso = xyes && \ +- test x$enable_alsa_shared = xyes && test x$alsa_lib != x; then +- AC_DEFINE_UNQUOTED(SDL_AUDIO_DRIVER_ALSA_DYNAMIC, "$alsa_lib") +- else +- EXTRA_LDFLAGS="$EXTRA_LDFLAGS $ALSA_LIBS" +- fi +- have_audio=yes +- fi +- fi ++ enable_alsa=no + } + + dnl Check whether we want to use IRIX 6.5+ native audio or not +@@ -371,7 +333,7 @@ + AC_MSG_RESULT($have_dmedia) + # Set up files for the audio library + if test x$have_dmedia = xyes; then +- AC_DEFINE(SDL_AUDIO_DRIVER_DMEDIA) ++ AC_DEFINE(SDL_AUDIO_DRIVER_DMEDIA,1,"") + SOURCES="$SOURCES $srcdir/src/audio/dmedia/*.c" + EXTRA_LDFLAGS="$EXTRA_LDFLAGS -laudio" + have_audio=yes +@@ -408,7 +370,7 @@ + AC_MSG_RESULT($have_mme) + # Set up files for the audio library + if test x$have_mme = xyes; then +- AC_DEFINE(SDL_AUDIO_DRIVER_MMEAUDIO) ++ AC_DEFINE(SDL_AUDIO_DRIVER_MMEAUDIO,1,"") + SOURCES="$SOURCES $srcdir/src/audio/mme/*.c" + EXTRA_CFLAGS="$EXTRA_CFLAGS $MME_CFLAGS" + EXTRA_LDFLAGS="$EXTRA_LDFLAGS $MME_LIBS" +@@ -433,7 +395,7 @@ + esd_lib=`ls -- $esd_lib_spec | sed 's/.*\/\(.*\)/\1/; q'` + echo "-- $esd_lib_spec -> $esd_lib" + +- AC_DEFINE(SDL_AUDIO_DRIVER_ESD) ++ AC_DEFINE(SDL_AUDIO_DRIVER_ESD,1,"") + SOURCES="$SOURCES $srcdir/src/audio/esd/*.c" + EXTRA_CFLAGS="$EXTRA_CFLAGS $ESD_CFLAGS" + if test x$have_loadso != xyes && \ +@@ -442,7 +404,7 @@ + fi + if test x$have_loadso = xyes && \ + test x$enable_esd_shared = xyes && test x$esd_lib != x; then +- AC_DEFINE_UNQUOTED(SDL_AUDIO_DRIVER_ESD_DYNAMIC, "$esd_lib") ++ AC_DEFINE_UNQUOTED(SDL_AUDIO_DRIVER_ESD_DYNAMIC, "$esd_lib", "") + else + EXTRA_LDFLAGS="$EXTRA_LDFLAGS $ESD_LIBS" + fi +@@ -485,7 +447,7 @@ + arts_lib=`ls -- $arts_lib_spec | sed 's/.*\/\(.*\)/\1/; q'` + echo "-- $arts_lib_spec -> $arts_lib" + +- AC_DEFINE(SDL_AUDIO_DRIVER_ARTS) ++ AC_DEFINE(SDL_AUDIO_DRIVER_ARTS,, "") + SOURCES="$SOURCES $srcdir/src/audio/arts/*.c" + EXTRA_CFLAGS="$EXTRA_CFLAGS $ARTS_CFLAGS" + if test x$have_loadso != xyes && \ +@@ -494,7 +456,7 @@ + fi + if test x$have_loadso = xyes && \ + test x$enable_arts_shared = xyes && test x$arts_lib != x; then +- AC_DEFINE_UNQUOTED(SDL_AUDIO_DRIVER_ARTS_DYNAMIC, "$arts_lib") ++ AC_DEFINE_UNQUOTED(SDL_AUDIO_DRIVER_ARTS_DYNAMIC, "$arts_lib",1,"") + else + EXTRA_LDFLAGS="$EXTRA_LDFLAGS $ARTS_LIBS" + fi +@@ -527,7 +489,7 @@ + fi + AC_MSG_RESULT($have_nas) + if test x$have_nas = xyes; then +- AC_DEFINE(SDL_AUDIO_DRIVER_NAS) ++ AC_DEFINE(SDL_AUDIO_DRIVER_NAS,1,"") + SOURCES="$SOURCES $srcdir/src/audio/nas/*.c" + EXTRA_CFLAGS="$EXTRA_CFLAGS $NAS_CFLAGS" + EXTRA_LDFLAGS="$EXTRA_LDFLAGS $NAS_LIBS" +@@ -543,7 +505,7 @@ + AC_HELP_STRING([--enable-diskaudio], [support the disk writer audio driver [[default=yes]]]), + , enable_diskaudio=yes) + if test x$enable_audio = xyes -a x$enable_diskaudio = xyes; then +- AC_DEFINE(SDL_AUDIO_DRIVER_DISK) ++ AC_DEFINE(SDL_AUDIO_DRIVER_DISK,1,"") + SOURCES="$SOURCES $srcdir/src/audio/disk/*.c" + fi + } +@@ -555,7 +517,7 @@ + AC_HELP_STRING([--enable-dummyaudio], [support the dummy audio driver [[default=yes]]]), + , enable_dummyaudio=yes) + if test x$enable_audio = xyes -a x$enable_dummyaudio = xyes; then +- AC_DEFINE(SDL_AUDIO_DRIVER_DUMMY) ++ AC_DEFINE(SDL_AUDIO_DRIVER_DUMMY,1,"") + SOURCES="$SOURCES $srcdir/src/audio/dummy/*.c" + fi + } +@@ -571,7 +533,7 @@ + AC_CHECK_HEADER(mint/falcon.h, have_mint_falcon_hdr=yes) + if test x$have_mint_falcon_hdr = xyes; then + mintaudio=yes +- AC_DEFINE(SDL_AUDIO_DRIVER_MINT) ++ AC_DEFINE(SDL_AUDIO_DRIVER_MINT,1,"") + SOURCES="$SOURCES $srcdir/src/audio/mint/*.c" + SOURCES="$SOURCES $srcdir/src/audio/mint/*.S" + have_audio=yes +@@ -602,7 +564,7 @@ + AC_PATH_PROG(NASM, nasm) + fi + if test "x$NASM" != x -a "x$NASM" != x'"$NASM"'; then +- AC_DEFINE(SDL_HERMES_BLITTERS) ++ AC_DEFINE(SDL_HERMES_BLITTERS,1,"") + SOURCES="$SOURCES $srcdir/src/hermes/*.asm" + if test x"$NASMFLAGS" = x; then + case $ARCH in +@@ -713,9 +675,9 @@ + CFLAGS="$save_CFLAGS" + + if test x$have_gcc_altivec = xyes; then +- AC_DEFINE(SDL_ALTIVEC_BLITTERS) ++ AC_DEFINE(SDL_ALTIVEC_BLITTERS,1,"") + if test x$have_altivec_h_hdr = xyes; then +- AC_DEFINE(HAVE_ALTIVEC_H) ++ AC_DEFINE(HAVE_ALTIVEC_H,1,"") + fi + EXTRA_CFLAGS="$EXTRA_CFLAGS $altivec_CFLAGS" + fi +@@ -758,7 +720,7 @@ + + if test x$enable_ipod = xyes; then + EXTRA_CFLAGS="$EXTRA_CFLAGS -DIPOD" +- AC_DEFINE(SDL_VIDEO_DRIVER_IPOD) ++ AC_DEFINE(SDL_VIDEO_DRIVER_IPOD,1,"") + SOURCES="$SOURCES $srcdir/src/video/ipod/*.c" + fi + } +@@ -792,7 +754,7 @@ + EXTRA_CFLAGS="$EXTRA_CFLAGS -DENABLE_NANOX_DIRECT_FB" + fi + +- AC_DEFINE(SDL_VIDEO_DRIVER_NANOX) ++ AC_DEFINE(SDL_VIDEO_DRIVER_NANOX,1,"") + SOURCES="$SOURCES $srcdir/src/video/nanox/*.c" + EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lnano-X" + have_video=yes +@@ -881,7 +843,7 @@ + CFLAGS="$CFLAGS $X_CFLAGS" + LDFLAGS="$LDFLAGS $X_LIBS" + +- AC_DEFINE(SDL_VIDEO_DRIVER_X11) ++ AC_DEFINE(SDL_VIDEO_DRIVER_X11,1,"") + SOURCES="$SOURCES $srcdir/src/video/x11/*.c" + EXTRA_CFLAGS="$EXTRA_CFLAGS $X_CFLAGS" + +@@ -903,8 +865,8 @@ + test x$enable_x11_shared = xyes && test x$x11_lib != x && test x$x11ext_lib != x; then + echo "-- dynamic libX11 -> $x11_lib" + echo "-- dynamic libX11ext -> $x11ext_lib" +- AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_X11_DYNAMIC, "$x11_lib") +- AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT, "$x11ext_lib") ++ AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_X11_DYNAMIC, "$x11_lib","") ++ AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT, "$x11ext_lib","") + else + enable_x11_shared=no + EXTRA_LDFLAGS="$EXTRA_LDFLAGS $X_LIBS -lX11 -lXext" +@@ -921,20 +883,20 @@ + AC_HELP_STRING([--enable-video-dga], [use DGA 2.0 video driver [[default=yes]]]), + , enable_video_dga=yes) + if test x$enable_dga = xyes -a x$enable_video_dga = xyes; then +- AC_DEFINE(SDL_VIDEO_DRIVER_DGA) ++ AC_DEFINE(SDL_VIDEO_DRIVER_DGA,1,"") + SOURCES="$SOURCES $srcdir/src/video/dga/*.c" + fi + AC_ARG_ENABLE(video-x11-dgamouse, + AC_HELP_STRING([--enable-video-x11-dgamouse], [use X11 DGA for mouse events [[default=yes]]]), + , enable_video_x11_dgamouse=yes) + if test x$enable_dga = xyes -a x$enable_video_x11_dgamouse = xyes; then +- AC_DEFINE(SDL_VIDEO_DRIVER_X11_DGAMOUSE) ++ AC_DEFINE(SDL_VIDEO_DRIVER_X11_DGAMOUSE,1,"") + fi + AC_ARG_ENABLE(video-x11-vm, + AC_HELP_STRING([--enable-video-x11-vm], [use X11 VM extension for fullscreen [[default=yes]]]), + , enable_video_x11_vm=yes) + if test x$enable_video_x11_vm = xyes; then +- AC_DEFINE(SDL_VIDEO_DRIVER_X11_VIDMODE) ++ AC_DEFINE(SDL_VIDEO_DRIVER_X11_VIDMODE,1,"") + SOURCES="$SOURCES $srcdir/src/video/Xext/Xxf86vm/*.c" + fi + AC_ARG_ENABLE(video-x11-xv, +@@ -948,14 +910,14 @@ + AC_HELP_STRING([--enable-video-x11-xinerama], [enable X11 Xinerama support [[default=yes]]]), + , enable_video_x11_xinerama=yes) + if test x$enable_video_x11_xinerama = xyes; then +- AC_DEFINE(SDL_VIDEO_DRIVER_X11_XINERAMA) ++ AC_DEFINE(SDL_VIDEO_DRIVER_X11_XINERAMA,1,"") + SOURCES="$SOURCES $srcdir/src/video/Xext/Xinerama/*.c" + fi + AC_ARG_ENABLE(video-x11-xme, + AC_HELP_STRING([--enable-video-x11-xme], [enable Xi Graphics XME for fullscreen [[default=yes]]]), + , enable_video_x11_xme=yes) + if test x$enable_video_x11_xme = xyes; then +- AC_DEFINE(SDL_VIDEO_DRIVER_X11_XME) ++ AC_DEFINE(SDL_VIDEO_DRIVER_X11_XME,1,"") + SOURCES="$SOURCES $srcdir/src/video/Xext/XME/*.c" + fi + AC_ARG_ENABLE(video-x11-xrandr, +@@ -972,8 +934,8 @@ + if test x$enable_x11_shared = xyes && test x$xrandr_lib != x ; then + echo "-- dynamic libXrender -> $xrender_lib" + echo "-- dynamic libXrandr -> $xrandr_lib" +- AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_X11_DYNAMIC_XRENDER, "$xrender_lib") +- AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR, "$xrandr_lib") ++ AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_X11_DYNAMIC_XRENDER, "$xrender_lib","") ++ AC_DEFINE_UNQUOTED(SDL_VIDEO_DRIVER_X11_DYNAMIC_XRANDR, "$xrandr_lib","") + definitely_enable_video_x11_xrandr=yes + else + AC_CHECK_LIB(Xrender, XRenderQueryExtension, have_xrender_lib=yes) +@@ -986,7 +948,7 @@ + fi + fi + if test x$definitely_enable_video_x11_xrandr = xyes; then +- AC_DEFINE(SDL_VIDEO_DRIVER_X11_XRANDR) ++ AC_DEFINE(SDL_VIDEO_DRIVER_X11_XRANDR,1,"") + fi + AC_ARG_ENABLE(video-x11-dpms, + AC_HELP_STRING([--enable-video-x11-dpms], [enable X11 DPMS extension [[default=yes]]]), +@@ -998,7 +960,7 @@ + [#include + ]) + if test x$have_dpms_h_hdr = xyes; then +- AC_DEFINE(SDL_VIDEO_DRIVER_X11_DPMS) ++ AC_DEFINE(SDL_VIDEO_DRIVER_X11_DPMS,1,"") + fi + fi + fi +@@ -1026,7 +988,7 @@ + ]) + AC_MSG_RESULT($video_photon) + if test x$video_photon = xyes; then +- AC_DEFINE(SDL_VIDEO_DRIVER_PHOTON) ++ AC_DEFINE(SDL_VIDEO_DRIVER_PHOTON,1,"") + SOURCES="$SOURCES $srcdir/src/video/photon/*.c" + EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lph" + have_video=yes +@@ -1040,7 +1002,7 @@ + CheckBWINDOW() + { + if test x$enable_video = xyes; then +- AC_DEFINE(SDL_VIDEO_DRIVER_BWINDOW) ++ AC_DEFINE(SDL_VIDEO_DRIVER_BWINDOW,1,"") + SOURCES="$SOURCES $srcdir/src/video/bwindow/*.cc" + have_video=yes + fi +@@ -1063,7 +1025,7 @@ + ]) + AC_MSG_RESULT($have_carbon) + if test x$have_carbon = xyes; then +- AC_DEFINE(SDL_VIDEO_DRIVER_TOOLBOX) ++ AC_DEFINE(SDL_VIDEO_DRIVER_TOOLBOX,1,"") + SOURCES="$SOURCES $srcdir/src/video/maccommon/*.c" + SOURCES="$SOURCES $srcdir/src/video/macrom/*.c" + have_video=yes +@@ -1092,7 +1054,7 @@ + AC_MSG_RESULT($have_cocoa) + CFLAGS="$save_CFLAGS" + if test x$have_cocoa = xyes; then +- AC_DEFINE(SDL_VIDEO_DRIVER_QUARTZ) ++ AC_DEFINE(SDL_VIDEO_DRIVER_QUARTZ,1,"") + SOURCES="$SOURCES $srcdir/src/video/quartz/*.m" + have_video=yes + fi +@@ -1118,7 +1080,7 @@ + ]) + AC_MSG_RESULT($video_fbcon) + if test x$video_fbcon = xyes; then +- AC_DEFINE(SDL_VIDEO_DRIVER_FBCON) ++ AC_DEFINE(SDL_VIDEO_DRIVER_FBCON,1,"") + SOURCES="$SOURCES $srcdir/src/video/fbcon/*.c" + have_video=yes + fi +@@ -1163,7 +1125,7 @@ + fi + + if test x$video_directfb = xyes; then +- AC_DEFINE(SDL_VIDEO_DRIVER_DIRECTFB) ++ AC_DEFINE(SDL_VIDEO_DRIVER_DIRECTFB,1,"") + SOURCES="$SOURCES $srcdir/src/video/directfb/*.c" + EXTRA_CFLAGS="$EXTRA_CFLAGS $DIRECTFB_CFLAGS" + EXTRA_LDFLAGS="$EXTRA_LDFLAGS $DIRECTFB_LIBS" +@@ -1190,7 +1152,7 @@ + ]) + AC_MSG_RESULT($video_ps2gs) + if test x$video_ps2gs = xyes; then +- AC_DEFINE(SDL_VIDEO_DRIVER_PS2GS) ++ AC_DEFINE(SDL_VIDEO_DRIVER_PS2GS,1,"") + SOURCES="$SOURCES $srcdir/src/video/ps2gs/*.c" + have_video=yes + fi +@@ -1215,7 +1177,7 @@ + ]) + AC_MSG_RESULT($video_ggi) + if test x$video_ggi = xyes; then +- AC_DEFINE(SDL_VIDEO_DRIVER_GGI) ++ AC_DEFINE(SDL_VIDEO_DRIVER_GGI,1,"") + SOURCES="$SOURCES $srcdir/src/video/ggi/*.c" + EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lggi -lgii -lgg" + have_video=yes +@@ -1245,7 +1207,7 @@ + ]) + AC_MSG_RESULT($video_svga) + if test x$video_svga = xyes; then +- AC_DEFINE(SDL_VIDEO_DRIVER_SVGALIB) ++ AC_DEFINE(SDL_VIDEO_DRIVER_SVGALIB,1,"") + SOURCES="$SOURCES $srcdir/src/video/svga/*.c" + EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lvga" + have_video=yes +@@ -1277,7 +1239,7 @@ + ]) + AC_MSG_RESULT($video_vgl) + if test x$video_vgl = xyes; then +- AC_DEFINE(SDL_VIDEO_DRIVER_VGL) ++ AC_DEFINE(SDL_VIDEO_DRIVER_VGL,1,"") + SOURCES="$SOURCES $srcdir/src/video/vgl/*.c" + EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lvgl" + have_video=yes +@@ -1305,7 +1267,7 @@ + ]) + AC_MSG_RESULT($video_wscons) + if test x$video_wscons = xyes; then +- AC_DEFINE(SDL_VIDEO_DRIVER_WSCONS) ++ AC_DEFINE(SDL_VIDEO_DRIVER_WSCONS,1,"") + SOURCES="$SOURCES $srcdir/src/video/wscons/*.c" + have_video=yes + fi +@@ -1330,7 +1292,7 @@ + ]) + AC_MSG_RESULT($video_aalib) + if test x$video_aalib = xyes; then +- AC_DEFINE(SDL_VIDEO_DRIVER_AALIB) ++ AC_DEFINE(SDL_VIDEO_DRIVER_AALIB,1,"") + SOURCES="$SOURCES $srcdir/src/video/aalib/*.c" + EXTRA_LDFLAGS="$EXTRA_LDFLAGS -laa" + have_video=yes +@@ -1360,7 +1322,7 @@ + CXXFLAGS="$OLD_CXX" + AC_MSG_RESULT($video_qtopia) + if test x$video_qtopia = xyes; then +- AC_DEFINE(SDL_VIDEO_DRIVER_QTOPIA) ++ AC_DEFINE(SDL_VIDEO_DRIVER_QTOPIA,1,"") + SOURCES="$SOURCES $srcdir/src/video/qtopia/*.cc" + SDLMAIN_SOURCES="$srcdir/src/main/qtopia/*.cc" + EXTRA_CFLAGS="$EXTRA_CFLAGS $QTOPIA_FLAGS" +@@ -1389,7 +1351,7 @@ + ]) + AC_MSG_RESULT($video_picogui) + if test x$video_picogui = xyes; then +- AC_DEFINE(SDL_VIDEO_DRIVER_PICOGUI) ++ AC_DEFINE(SDL_VIDEO_DRIVER_PICOGUI,1,"") + SOURCES="$SOURCES $srcdir/src/video/picogui/*.c" + SDL_LIBS="$SDL_LIBS -lpgui" + have_video=yes +@@ -1413,7 +1375,7 @@ + video_xbios=no + if test x$enable_video = xyes -a x$enable_video_xbios = xyes; then + video_xbios=yes +- AC_DEFINE(SDL_VIDEO_DRIVER_XBIOS) ++ AC_DEFINE(SDL_VIDEO_DRIVER_XBIOS,1,"") + SOURCES="$SOURCES $srcdir/src/video/xbios/*.c" + have_video=yes + fi +@@ -1431,7 +1393,7 @@ + AC_CHECK_LIB(gem, appl_init, have_gem_lib=yes) + if test x$have_gem_hdr = xyes -a x$have_gem_lib = xyes; then + video_gem=yes +- AC_DEFINE(SDL_VIDEO_DRIVER_GEM) ++ AC_DEFINE(SDL_VIDEO_DRIVER_GEM,1,"") + SOURCES="$SOURCES $srcdir/src/video/gem/*.c" + SDL_LIBS="$SDL_LIBS -lgem" + have_video=yes +@@ -1446,7 +1408,7 @@ + AC_HELP_STRING([--enable-video-dummy], [use dummy video driver [[default=yes]]]), + , enable_video_dummy=yes) + if test x$enable_video_dummy = xyes; then +- AC_DEFINE(SDL_VIDEO_DRIVER_DUMMY) ++ AC_DEFINE(SDL_VIDEO_DRIVER_DUMMY,1,"") + SOURCES="$SOURCES $srcdir/src/video/dummy/*.c" + have_video=yes + fi +@@ -1472,8 +1434,8 @@ + ]) + AC_MSG_RESULT($video_opengl) + if test x$video_opengl = xyes; then +- AC_DEFINE(SDL_VIDEO_OPENGL) +- AC_DEFINE(SDL_VIDEO_OPENGL_GLX) ++ AC_DEFINE(SDL_VIDEO_OPENGL,1,"") ++ AC_DEFINE(SDL_VIDEO_OPENGL_GLX,1,"") + fi + fi + } +@@ -1492,7 +1454,7 @@ + ]) + AC_MSG_RESULT($video_opengl) + if test x$video_opengl = xyes; then +- AC_DEFINE(SDL_VIDEO_OPENGL) ++ AC_DEFINE(SDL_VIDEO_OPENGL,1,"") + EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lGL" + fi + fi +@@ -1502,8 +1464,8 @@ + CheckWIN32GL() + { + if test x$enable_video = xyes -a x$enable_video_opengl = xyes; then +- AC_DEFINE(SDL_VIDEO_OPENGL) +- AC_DEFINE(SDL_VIDEO_OPENGL_WGL) ++ AC_DEFINE(SDL_VIDEO_OPENGL,1,"") ++ AC_DEFINE(SDL_VIDEO_OPENGL_WGL,1,"") + fi + } + +@@ -1511,7 +1473,7 @@ + CheckBeGL() + { + if test x$enable_video = xyes -a x$enable_video_opengl = xyes; then +- AC_DEFINE(SDL_VIDEO_OPENGL) ++ AC_DEFINE(SDL_VIDEO_OPENGL,1,"") + EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lGL" + fi + } +@@ -1520,7 +1482,7 @@ + CheckMacGL() + { + if test x$enable_video = xyes -a x$enable_video_opengl = xyes; then +- AC_DEFINE(SDL_VIDEO_OPENGL) ++ AC_DEFINE(SDL_VIDEO_OPENGL,1,"") + case "$host" in + *-*-darwin*) + if test x$enable_video_cocoa = xyes; then +@@ -1552,8 +1514,8 @@ + OSMESA_CFLAGS=`$OSMESA_CONFIG --cflags` + OSMESA_LIBS=`$OSMESA_CONFIG --libs` + fi +- AC_DEFINE(SDL_VIDEO_OPENGL) +- AC_DEFINE(SDL_VIDEO_OPENGL_OSMESA) ++ AC_DEFINE(SDL_VIDEO_OPENGL,1,"") ++ AC_DEFINE(SDL_VIDEO_OPENGL_OSMESA,1,"") + SDL_CFLAGS="$SDL_CFLAGS $OSMESA_CFLAGS" + SDL_LIBS="$SDL_LIBS $OSMESA_LIBS" + +@@ -1563,7 +1525,7 @@ + if test "x$enable_osmesa_shared" = "xyes" -a "x$enable_atari_ldg" = "xyes"; then + # Dynamic linking + if test "x$have_osmesa_hdr" = "xyes"; then +- AC_DEFINE(SDL_VIDEO_OPENGL_OSMESA_DYNAMIC) ++ AC_DEFINE(SDL_VIDEO_OPENGL_OSMESA_DYNAMIC,1,"") + fi + fi + fi +@@ -1590,7 +1552,7 @@ + ]) + AC_MSG_RESULT($use_input_events) + if test x$use_input_events = xyes; then +- AC_DEFINE(SDL_INPUT_LINUXEV) ++ AC_DEFINE(SDL_INPUT_LINUXEV,1,"") + fi + fi + } +@@ -1612,7 +1574,7 @@ + ]) + AC_MSG_RESULT($enable_input_tslib) + if test x$enable_input_tslib = xyes; then +- AC_DEFINE(SDL_INPUT_TSLIB) ++ AC_DEFINE(SDL_INPUT_TSLIB,1,"") + EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lts" + fi + fi +@@ -1635,7 +1597,7 @@ + AC_MSG_CHECKING(pth) + AC_MSG_RESULT($use_pth) + if test "x$use_pth" = xyes; then +- AC_DEFINE(SDL_THREAD_PTH) ++ AC_DEFINE(SDL_THREAD_PTH,1,"") + SOURCES="$SOURCES $srcdir/src/thread/pth/*.c" + SOURCES="$SOURCES $srcdir/src/thread/generic/SDL_syssem.c" + SDL_CFLAGS="$SDL_CFLAGS `$PTH_CONFIG --cflags`" +@@ -1741,7 +1703,7 @@ + + # Do futher testing if we have pthread support... + if test x$use_pthreads = xyes; then +- AC_DEFINE(SDL_THREAD_PTHREAD) ++ AC_DEFINE(SDL_THREAD_PTHREAD,1,"") + EXTRA_CFLAGS="$EXTRA_CFLAGS $pthread_cflags" + EXTRA_LDFLAGS="$EXTRA_LDFLAGS $pthread_lib" + SDL_CFLAGS="$SDL_CFLAGS $pthread_cflags" +@@ -1763,7 +1725,7 @@ + pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE); + ],[ + has_recursive_mutexes=yes +- AC_DEFINE(SDL_THREAD_PTHREAD_RECURSIVE_MUTEX) ++ AC_DEFINE(SDL_THREAD_PTHREAD_RECURSIVE_MUTEX,1,"") + ]) + fi + if test x$has_recursive_mutexes = xno; then +@@ -1774,7 +1736,7 @@ + pthread_mutexattr_setkind_np(&attr, PTHREAD_MUTEX_RECURSIVE_NP); + ],[ + has_recursive_mutexes=yes +- AC_DEFINE(SDL_THREAD_PTHREAD_RECURSIVE_MUTEX_NP) ++ AC_DEFINE(SDL_THREAD_PTHREAD_RECURSIVE_MUTEX_NP,1,"") + ]) + fi + AC_MSG_RESULT($has_recursive_mutexes) +@@ -1849,7 +1811,7 @@ + fi + + if test x$enable_video = xyes; then +- AC_DEFINE(SDL_VIDEO_DRIVER_WINDIB) ++ AC_DEFINE(SDL_VIDEO_DRIVER_WINDIB,1,"") + SOURCES="$SOURCES $srcdir/src/video/wincommon/*.c" + SOURCES="$SOURCES $srcdir/src/video/windib/*.c" + have_video=yes +@@ -1871,7 +1833,7 @@ + have_directx=yes + fi + if test x$enable_video = xyes -a x$have_directx = xyes; then +- AC_DEFINE(SDL_VIDEO_DRIVER_DDRAW) ++ AC_DEFINE(SDL_VIDEO_DRIVER_DDRAW,1,"") + SOURCES="$SOURCES $srcdir/src/video/windx5/*.c" + have_video=yes + fi +@@ -1904,9 +1866,9 @@ + AC_CHECK_LIB(ltdl, dlopen, EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lltdl"))) + AC_CHECK_LIB(dl, dlvsym, have_dlvsym=yes) + if test x$have_dlvsym = xyes; then +- AC_DEFINE(HAVE_DLVSYM) ++ AC_DEFINE(HAVE_DLVSYM,1,"") + fi +- AC_DEFINE(SDL_LOADSO_DLOPEN) ++ AC_DEFINE(SDL_LOADSO_DLOPEN,1,"") + SOURCES="$SOURCES $srcdir/src/loadso/dlopen/*.c" + have_loadso=yes + fi +@@ -1923,7 +1885,7 @@ + AC_CHECK_HEADER(ldg.h, have_ldg_hdr=yes) + AC_CHECK_LIB(ldg, ldg_open, have_ldg_lib=yes, have_ldg_lib=no, -lgem) + if test x$have_ldg_hdr = xyes -a x$have_ldg_lib = xyes; then +- AC_DEFINE(SDL_LOADSO_LDG) ++ AC_DEFINE(SDL_LOADSO_LDG,1,"") + SOURCES="$SOURCES $srcdir/src/loadso/mint/*.c" + SDL_LIBS="$SDL_LIBS -lldg -lgem" + have_loadso=yes +@@ -2049,11 +2011,11 @@ + have_machine_joystick=yes + ]) + if test x$have_machine_joystick = xyes; then +- AC_DEFINE(SDL_JOYSTICK_USBHID_MACHINE_JOYSTICK_H) ++ AC_DEFINE(SDL_JOYSTICK_USBHID_MACHINE_JOYSTICK_H,1,"") + fi + AC_MSG_RESULT($have_machine_joystick) + +- AC_DEFINE(SDL_JOYSTICK_USBHID) ++ AC_DEFINE(SDL_JOYSTICK_USBHID,1,"") + SOURCES="$SOURCES $srcdir/src/joystick/bsd/*.c" + EXTRA_CFLAGS="$EXTRA_CFLAGS $USB_CFLAGS" + EXTRA_LDFLAGS="$EXTRA_LDFLAGS $USB_LIBS" +@@ -2072,7 +2034,7 @@ + if test x$enable_clock_gettime = xyes; then + AC_CHECK_LIB(rt, clock_gettime, have_clock_gettime=yes) + if test x$have_clock_gettime = xyes; then +- AC_DEFINE(HAVE_CLOCK_GETTIME) ++ AC_DEFINE(HAVE_CLOCK_GETTIME,1,"") + EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lrt" + fi + fi +@@ -2103,7 +2065,7 @@ + CheckIPod + # Set up files for the timer library + if test x$enable_timers = xyes; then +- AC_DEFINE(SDL_TIMER_UNIX) ++ AC_DEFINE(SDL_TIMER_UNIX,1,"") + SOURCES="$SOURCES $srcdir/src/timer/unix/*.c" + have_timers=yes + fi +@@ -2166,17 +2128,17 @@ + if test x$enable_audio = xyes; then + case $ARCH in + sysv5|solaris|hpux) +- AC_DEFINE(SDL_AUDIO_DRIVER_SUNAUDIO) ++ AC_DEFINE(SDL_AUDIO_DRIVER_SUNAUDIO,1,"") + SOURCES="$SOURCES $srcdir/src/audio/sun/*.c" + have_audio=yes + ;; + netbsd|openbsd) +- AC_DEFINE(SDL_AUDIO_DRIVER_BSD) ++ AC_DEFINE(SDL_AUDIO_DRIVER_BSD,1,"") + SOURCES="$SOURCES $srcdir/src/audio/bsd/*.c" + have_audio=yes + ;; + aix) +- AC_DEFINE(SDL_AUDIO_DRIVER_PAUD) ++ AC_DEFINE(SDL_AUDIO_DRIVER_PAUD,1,"") + SOURCES="$SOURCES $srcdir/src/audio/paudio/*.c" + have_audio=yes + ;; +@@ -2186,7 +2148,7 @@ + if test x$enable_joystick = xyes; then + case $ARCH in + linux) +- AC_DEFINE(SDL_JOYSTICK_LINUX) ++ AC_DEFINE(SDL_JOYSTICK_LINUX,1,"") + SOURCES="$SOURCES $srcdir/src/joystick/linux/*.c" + have_joystick=yes + ;; +@@ -2196,32 +2158,32 @@ + if test x$enable_cdrom = xyes; then + case $ARCH in + linux|solaris) +- AC_DEFINE(SDL_CDROM_LINUX) ++ AC_DEFINE(SDL_CDROM_LINUX,1,"") + SOURCES="$SOURCES $srcdir/src/cdrom/linux/*.c" + have_cdrom=yes + ;; + *freebsd*) +- AC_DEFINE(SDL_CDROM_FREEBSD) ++ AC_DEFINE(SDL_CDROM_FREEBSD,1,"") + SOURCES="$SOURCES $srcdir/src/cdrom/freebsd/*.c" + have_cdrom=yes + ;; + *openbsd*|*netbsd*) +- AC_DEFINE(SDL_CDROM_OPENBSD) ++ AC_DEFINE(SDL_CDROM_OPENBSD,1,"") + SOURCES="$SOURCES $srcdir/src/cdrom/openbsd/*.c" + have_cdrom=yes + ;; + bsdi) +- AC_DEFINE(SDL_CDROM_BSDI) ++ AC_DEFINE(SDL_CDROM_BSDI,1,"") + SOURCES="$SOURCES $srcdir/src/cdrom/bsdi/*.c" + have_cdrom=yes + ;; + aix) +- AC_DEFINE(SDL_CDROM_AIX) ++ AC_DEFINE(SDL_CDROM_AIX,1,"") + SOURCES="$SOURCES $srcdir/src/cdrom/aix/*.c" + have_cdrom=yes + ;; + osf) +- AC_DEFINE(SDL_CDROM_OSF) ++ AC_DEFINE(SDL_CDROM_OSF,1,"") + SOURCES="$SOURCES $srcdir/src/cdrom/osf/*.c" + have_cdrom=yes + ;; +@@ -2229,7 +2191,7 @@ + fi + # Set up files for the thread library + if test x$enable_threads = xyes -a x$use_pthreads != xyes -a x$use_pth != xyes -a x$ARCH = xirix; then +- AC_DEFINE(SDL_THREAD_SPROC) ++ AC_DEFINE(SDL_THREAD_SPROC,1,"") + SOURCES="$SOURCES $srcdir/src/thread/irix/*.c" + SOURCES="$SOURCES $srcdir/src/thread/generic/SDL_sysmutex.c" + SOURCES="$SOURCES $srcdir/src/thread/generic/SDL_syscond.c" +@@ -2237,7 +2199,7 @@ + fi + # Set up files for the timer library + if test x$enable_timers = xyes; then +- AC_DEFINE(SDL_TIMER_UNIX) ++ AC_DEFINE(SDL_TIMER_UNIX,1,"") + SOURCES="$SOURCES $srcdir/src/timer/unix/*.c" + have_timers=yes + fi +@@ -2256,20 +2218,20 @@ + CheckPTHREAD + # Set up files for the audio library + if test x$enable_audio = xyes; then +- AC_DEFINE(SDL_AUDIO_DRIVER_QNXNTO) ++ AC_DEFINE(SDL_AUDIO_DRIVER_QNXNTO,1,"") + SOURCES="$SOURCES $srcdir/src/audio/nto/*.c" + EXTRA_LDFLAGS="$EXTRA_LDFLAGS -lasound" + have_audio=yes + fi + # Set up files for the cdrom library + if test x$enable_cdrom = xyes; then +- AC_DEFINE(SDL_CDROM_QNX) ++ AC_DEFINE(SDL_CDROM_QNX,1,"") + SOURCES="$SOURCES $srcdir/src/cdrom/qnx/*.c" + have_cdrom=yes + fi + # Set up files for the timer library + if test x$enable_timers = xyes; then +- AC_DEFINE(SDL_TIMER_UNIX) ++ AC_DEFINE(SDL_TIMER_UNIX,1,"") + SOURCES="$SOURCES $srcdir/src/timer/unix/*.c" + have_timers=yes + fi +@@ -2294,29 +2256,29 @@ + CheckNASM + # Set up files for the audio library + if test x$enable_audio = xyes; then +- AC_DEFINE(SDL_AUDIO_DRIVER_WAVEOUT) ++ AC_DEFINE(SDL_AUDIO_DRIVER_WAVEOUT,1,"") + SOURCES="$SOURCES $srcdir/src/audio/windib/*.c" + if test x$have_directx = xyes; then +- AC_DEFINE(SDL_AUDIO_DRIVER_DSOUND) ++ AC_DEFINE(SDL_AUDIO_DRIVER_DSOUND,1,"") + SOURCES="$SOURCES $srcdir/src/audio/windx5/*.c" + fi + have_audio=yes + fi + # Set up files for the joystick library + if test x$enable_joystick = xyes; then +- AC_DEFINE(SDL_JOYSTICK_WINMM) ++ AC_DEFINE(SDL_JOYSTICK_WINMM,1,"") + SOURCES="$SOURCES $srcdir/src/joystick/win32/*.c" + have_joystick=yes + fi + # Set up files for the cdrom library + if test x$enable_cdrom = xyes; then +- AC_DEFINE(SDL_CDROM_WIN32) ++ AC_DEFINE(SDL_CDROM_WIN32,1,"") + SOURCES="$SOURCES $srcdir/src/cdrom/win32/*.c" + have_cdrom=yes + fi + # Set up files for the thread library + if test x$enable_threads = xyes; then +- AC_DEFINE(SDL_THREAD_WIN32) ++ AC_DEFINE(SDL_THREAD_WIN32,1,"") + SOURCES="$SOURCES $srcdir/src/thread/win32/SDL_sysmutex.c" + SOURCES="$SOURCES $srcdir/src/thread/win32/SDL_syssem.c" + SOURCES="$SOURCES $srcdir/src/thread/win32/SDL_systhread.c" +@@ -2325,13 +2287,13 @@ + fi + # Set up files for the timer library + if test x$enable_timers = xyes; then +- AC_DEFINE(SDL_TIMER_WIN32) ++ AC_DEFINE(SDL_TIMER_WIN32,1,"") + SOURCES="$SOURCES $srcdir/src/timer/win32/*.c" + have_timers=yes + fi + # Set up files for the shared object loading library + if test x$enable_loadso = xyes; then +- AC_DEFINE(SDL_LOADSO_WIN32) ++ AC_DEFINE(SDL_LOADSO_WIN32,1,"") + SOURCES="$SOURCES $srcdir/src/loadso/win32/*.c" + have_loadso=yes + fi +@@ -2356,25 +2318,25 @@ + CheckBeGL + # Set up files for the audio library + if test x$enable_audio = xyes; then +- AC_DEFINE(SDL_AUDIO_DRIVER_BAUDIO) ++ AC_DEFINE(SDL_AUDIO_DRIVER_BAUDIO,1,"") + SOURCES="$SOURCES $srcdir/src/audio/baudio/*.cc" + have_audio=yes + fi + # Set up files for the joystick library + if test x$enable_joystick = xyes; then +- AC_DEFINE(SDL_JOYSTICK_BEOS) ++ AC_DEFINE(SDL_JOYSTICK_BEOS,1,"") + SOURCES="$SOURCES $srcdir/src/joystick/beos/*.cc" + have_joystick=yes + fi + # Set up files for the cdrom library + if test x$enable_cdrom = xyes; then +- AC_DEFINE(SDL_CDROM_BEOS) ++ AC_DEFINE(SDL_CDROM_BEOS,1,"") + SOURCES="$SOURCES $srcdir/src/cdrom/beos/*.cc" + have_cdrom=yes + fi + # Set up files for the thread library + if test x$enable_threads = xyes; then +- AC_DEFINE(SDL_THREAD_BEOS) ++ AC_DEFINE(SDL_THREAD_BEOS,1,"") + SOURCES="$SOURCES $srcdir/src/thread/beos/*.c" + SOURCES="$SOURCES $srcdir/src/thread/generic/SDL_sysmutex.c" + SOURCES="$SOURCES $srcdir/src/thread/generic/SDL_syscond.c" +@@ -2382,13 +2344,13 @@ + fi + # Set up files for the timer library + if test x$enable_timers = xyes; then +- AC_DEFINE(SDL_TIMER_BEOS) ++ AC_DEFINE(SDL_TIMER_BEOS,1,"") + SOURCES="$SOURCES $srcdir/src/timer/beos/*.c" + have_timers=yes + fi + # Set up files for the shared object loading library + if test x$enable_loadso = xyes; then +- AC_DEFINE(SDL_LOADSO_BEOS) ++ AC_DEFINE(SDL_LOADSO_BEOS,1,"") + SOURCES="$SOURCES $srcdir/src/loadso/beos/*.c" + have_loadso=yes + fi +@@ -2425,7 +2387,7 @@ + # Set up files for the shared object loading library + # (this needs to be done before the dynamic X11 check) + if test x$enable_loadso = xyes -a x$have_dlopen != xyes; then +- AC_DEFINE(SDL_LOADSO_DLCOMPAT) ++ AC_DEFINE(SDL_LOADSO_DLCOMPAT,1,"") + SOURCES="$SOURCES $srcdir/src/loadso/macosx/*.c" + have_loadso=yes + fi +@@ -2443,28 +2405,28 @@ + + # Set up files for the audio library + if test x$enable_audio = xyes; then +- AC_DEFINE(SDL_AUDIO_DRIVER_COREAUDIO) ++ AC_DEFINE(SDL_AUDIO_DRIVER_COREAUDIO,1,"") + SOURCES="$SOURCES $srcdir/src/audio/macosx/*.c" +- AC_DEFINE(SDL_AUDIO_DRIVER_SNDMGR) ++ AC_DEFINE(SDL_AUDIO_DRIVER_SNDMGR,1,"") + SOURCES="$SOURCES $srcdir/src/audio/macrom/*.c" + have_audio=yes + fi + # Set up files for the joystick library + if test x$enable_joystick = xyes; then +- AC_DEFINE(SDL_JOYSTICK_IOKIT) ++ AC_DEFINE(SDL_JOYSTICK_IOKIT,1,"") + SOURCES="$SOURCES $srcdir/src/joystick/darwin/*.c" + EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,-framework,IOKit" + have_joystick=yes + fi + # Set up files for the cdrom library + if test x$enable_cdrom = xyes; then +- AC_DEFINE(SDL_CDROM_MACOSX) ++ AC_DEFINE(SDL_CDROM_MACOSX,1,"") + SOURCES="$SOURCES $srcdir/src/cdrom/macosx/*.c" + have_cdrom=yes + fi + # Set up files for the timer library + if test x$enable_timers = xyes; then +- AC_DEFINE(SDL_TIMER_UNIX) ++ AC_DEFINE(SDL_TIMER_UNIX,1,"") + SOURCES="$SOURCES $srcdir/src/timer/unix/*.c" + have_timers=yes + fi +@@ -2500,30 +2462,30 @@ + # Set up files for the audio library + if test x$enable_threads = xyes -a x$enable_pth = xyes; then + if test x$enable_audio = xyes; then +- AC_DEFINE(SDL_AUDIO_DRIVER_SUNAUDIO) ++ AC_DEFINE(SDL_AUDIO_DRIVER_SUNAUDIO,1,"") + SOURCES="$SOURCES $srcdir/src/audio/sun/*.c" + have_audio=yes + fi + fi + # Set up files for the joystick library + if test x$enable_joystick = xyes; then +- AC_DEFINE(SDL_JOYSTICK_MINT) ++ AC_DEFINE(SDL_JOYSTICK_MINT,1,"") + SOURCES="$SOURCES $srcdir/src/joystick/mint/*.c" + have_joystick=yes + fi + # Set up files for the cdrom library + if test x$enable_cdrom = xyes; then +- AC_DEFINE(SDL_CDROM_MINT) ++ AC_DEFINE(SDL_CDROM_MINT,1,"") + SOURCES="$SOURCES $srcdir/src/cdrom/mint/*.c" + have_cdrom=yes + fi + # Set up files for the timer library + if test x$enable_timers = xyes; then + if test x$enable_threads = xyes -a x$enable_pth = xyes; then +- AC_DEFINE(SDL_TIMER_UNIX) ++ AC_DEFINE(SDL_TIMER_UNIX,1,"") + SOURCES="$SOURCES $srcdir/src/timer/unix/*.c" + else +- AC_DEFINE(SDL_TIMER_MINT) ++ AC_DEFINE(SDL_TIMER_MIN,1,""T) + SOURCES="$SOURCES $srcdir/src/timer/mint/*.c" + SOURCES="$SOURCES $srcdir/src/timer/mint/*.S" + fi +@@ -2536,20 +2498,20 @@ + CheckPTHREAD + # Set up files for the video library + if test x$enable_video = xyes; then +- AC_DEFINE(SDL_VIDEO_DRIVER_RISCOS) ++ AC_DEFINE(SDL_VIDEO_DRIVER_RISCOS,1,"") + SOURCES="$SOURCES $srcdir/src/video/riscos/*.c" + SOURCES="$SOURCES $srcdir/src/video/riscos/*.S" + have_video=yes + fi + # Set up files for the joystick library + if test x$enable_joystick = xyes; then +- AC_DEFINE(SDL_JOYSTICK_RISCOS) ++ AC_DEFINE(SDL_JOYSTICK_RISCOS,1,"") + SOURCES="$SOURCES $srcdir/src/joystick/riscos/*.c" + have_joystick=yes + fi + # Set up files for the timer library + if test x$enable_timers = xyes; then +- AC_DEFINE(SDL_TIMER_RISCOS) ++ AC_DEFINE(SDL_TIMER_RISCOS,1,"") + SOURCES="$SOURCES $srcdir/src/timer/riscos/*.c" + have_timers=yes + fi +@@ -2566,31 +2528,31 @@ + # Verify that we have all the platform specific files we need + if test x$have_joystick != xyes; then + if test x$enable_joystick = xyes; then +- AC_DEFINE(SDL_JOYSTICK_DISABLED) ++ AC_DEFINE(SDL_JOYSTICK_DISABLED,1,"") + fi + SOURCES="$SOURCES $srcdir/src/joystick/dummy/*.c" + fi + if test x$have_cdrom != xyes; then + if test x$enable_cdrom = xyes; then +- AC_DEFINE(SDL_CDROM_DISABLED) ++ AC_DEFINE(SDL_CDROM_DISABLED,1,"") + fi + SOURCES="$SOURCES $srcdir/src/cdrom/dummy/*.c" + fi + if test x$have_threads != xyes; then + if test x$enable_threads = xyes; then +- AC_DEFINE(SDL_THREADS_DISABLED) ++ AC_DEFINE(SDL_THREADS_DISABLED,1,"") + fi + SOURCES="$SOURCES $srcdir/src/thread/generic/*.c" + fi + if test x$have_timers != xyes; then + if test x$enable_timers = xyes; then +- AC_DEFINE(SDL_TIMERS_DISABLED) ++ AC_DEFINE(SDL_TIMERS_DISABLED,1,"") + fi + SOURCES="$SOURCES $srcdir/src/timer/dummy/*.c" + fi + if test x$have_loadso != xyes; then + if test x$enable_loadso = xyes; then +- AC_DEFINE(SDL_LOADSO_DISABLED) ++ AC_DEFINE(SDL_LOADSO_DISABLED,1,"") + fi + SOURCES="$SOURCES $srcdir/src/loadso/dummy/*.c" + fi diff --git a/meta/recipes-graphics/libsdl/files/directfb_obsolete_calls.patch b/meta/recipes-graphics/libsdl/files/directfb_obsolete_calls.patch new file mode 100644 index 0000000000..f3f422cde3 --- /dev/null +++ b/meta/recipes-graphics/libsdl/files/directfb_obsolete_calls.patch @@ -0,0 +1,33 @@ +--- tmp/work/armv5te-angstrom-linux-gnueabi/libsdl-directfb-1.2.9-r1/SDL-1.2.9/src/video/directfb/SDL_DirectFB_video.c 2007-02-18 11:40:38.000000000 -0500 ++++ SDL/src/video/directfb/SDL_DirectFB_video.c 2007-02-18 11:00:07.000000000 -0500 +@@ -376,7 +376,7 @@ + { + int i; + DFBResult ret; +- DFBCardCapabilities caps; ++ DFBGraphicsDeviceDescription caps; + DFBDisplayLayerConfig dlc; + struct DirectFBEnumRect *rect; + IDirectFB *dfb = NULL; +@@ -448,7 +448,7 @@ + + + /* Query card capabilities to get the video memory size */ +- dfb->GetCardCapabilities (dfb, &caps); ++ dfb->GetDeviceDescription (dfb, &caps); + + this->info.wm_available = 1; + this->info.hw_available = 1; +diff -u'rNF^function' tmp/work/armv5te-angstrom-linux-gnueabi/libsdl-directfb-1.2.9-r1/SDL-1.2.9/src/video/directfb/SDL_Direct +/SDL_DirectFB_events.c +--- tmp/work/armv5te-angstrom-linux-gnueabi/libsdl-directfb-1.2.9-r1/SDL-1.2.9/src/video/directfb/SDL_DirectFB_events.c 2004-0 ++++ SDL/src/video/directfb/SDL_DirectFB_events.c 2007-02-18 11:00:07.000000000 -0500 +@@ -161,7 +161,7 @@ + keymap[DIKI_SHIFT_L - DIKI_UNKNOWN] = SDLK_LSHIFT; + keymap[DIKI_SHIFT_R - DIKI_UNKNOWN] = SDLK_RSHIFT; + keymap[DIKI_ALT_L - DIKI_UNKNOWN] = SDLK_LALT; +- keymap[DIKI_ALTGR - DIKI_UNKNOWN] = SDLK_RALT; ++ keymap[DIKI_ALT_R - DIKI_UNKNOWN] = SDLK_RALT; + keymap[DIKI_TAB - DIKI_UNKNOWN] = SDLK_TAB; + keymap[DIKI_ENTER - DIKI_UNKNOWN] = SDLK_RETURN; + keymap[DIKI_SPACE - DIKI_UNKNOWN] = SDLK_SPACE; diff --git a/meta/recipes-graphics/libsdl/files/extra-keys.patch b/meta/recipes-graphics/libsdl/files/extra-keys.patch new file mode 100644 index 0000000000..f12f0c7efb --- /dev/null +++ b/meta/recipes-graphics/libsdl/files/extra-keys.patch @@ -0,0 +1,53 @@ +diff -upr --exclude=configure --exclude=Makefile --exclude=Makefile.in libsdl1.2-1.2.4/include/SDL_keysym.h libsdl1.2-1.2.4-arm/include/SDL_keysym.h +--- libsdl1.2-1.2.4/include/SDL_keysym.h 2002-03-06 11:23:01.000000000 +0000 ++++ libsdl1.2-1.2.4-arm/include/SDL_keysym.h 2002-11-08 20:43:09.000000000 +0000 +@@ -286,6 +286,12 @@ typedef enum { + SDLK_EURO = 321, /* Some european keyboards */ + SDLK_UNDO = 322, /* Atari keyboard has Undo */ + ++ SDLK_RECORD = 322, ++ SDLK_CALENDAR = 323, ++ SDLK_TELEPHONE = 324, ++ SDLK_MAIL = 325, ++ SDLK_START = 326, ++ + /* Add any other keys here */ + + SDLK_LAST +diff -upr --exclude=configure --exclude=Makefile --exclude=Makefile.in libsdl1.2-1.2.4/src/video/x11/SDL_x11events.c libsdl1.2-1.2.4-arm/src/video/x11/SDL_x11events.c +--- libsdl1.2-1.2.4/src/video/x11/SDL_x11events.c 2002-03-06 11:23:08.000000000 +0000 ++++ libsdl1.2-1.2.4-arm/src/video/x11/SDL_x11events.c 2002-11-08 21:01:41.000000000 +0000 +@@ -34,6 +34,7 @@ static char rcsid = + #include + #include + #include ++#include + #ifdef __SVR4 + #include + #endif +@@ -655,6 +656,25 @@ SDL_keysym *X11_TranslateKey(Display *di + case 0xFF: + keysym->sym = MISC_keymap[xsym&0xFF]; + break; ++ case 0x1008ff: ++ switch (xsym) { ++ case XF86XK_AudioRecord: ++ keysym->sym = SDLK_RECORD; ++ break; ++ case XF86XK_PowerDown: ++ keysym->sym = SDLK_POWER; ++ break; ++ case XF86XK_Calendar: ++ keysym->sym = SDLK_CALENDAR; ++ break; ++ case XF86XK_Mail: ++ keysym->sym = SDLK_MAIL; ++ break; ++ case XF86XK_Start: ++ keysym->sym = SDLK_START; ++ break; ++ } ++ break; + default: + fprintf(stderr, + "X11: Unknown xsym, sym = 0x%04x\n", diff --git a/meta/recipes-graphics/libsdl/files/kernel-asm-page.patch b/meta/recipes-graphics/libsdl/files/kernel-asm-page.patch new file mode 100644 index 0000000000..42bceadfdc --- /dev/null +++ b/meta/recipes-graphics/libsdl/files/kernel-asm-page.patch @@ -0,0 +1,13 @@ +diff --git a/src/video/Xext/Xxf86dga/XF86DGA.c b/src/video/Xext/Xxf86dga/XF86DGA.c +index 4e3d662..de38a3c 100644 +--- a/src/video/Xext/Xxf86dga/XF86DGA.c ++++ b/src/video/Xext/Xxf86dga/XF86DGA.c +@@ -18,7 +18,7 @@ Copyright (c) 1995,1996 The XFree86 Project, Inc + #define HAS_MMAP_ANON + #include + #include +-#include /* PAGE_SIZE */ ++#include + #define HAS_SC_PAGESIZE /* _SC_PAGESIZE may be an enum for Linux */ + #define HAS_GETPAGESIZE + #endif /* linux */ diff --git a/meta/recipes-graphics/libsdl/libsdl-nativesdk_1.2.11.bb b/meta/recipes-graphics/libsdl/libsdl-nativesdk_1.2.11.bb new file mode 100644 index 0000000000..633a4c284b --- /dev/null +++ b/meta/recipes-graphics/libsdl/libsdl-nativesdk_1.2.11.bb @@ -0,0 +1,31 @@ +DESCRIPTION = "Simple DirectMedia Layer - native Edition" +HOMEPAGE = "http://www.libsdl.org" +SECTION = "libs" +LICENSE = "LGPL" +DEPENDS = "libx11-nativesdk libxext-nativesdk libxrandr-nativesdk libxrender-nativesdk" +RDEPENDS = "libx11-nativesdk libxrandr-nativesdk libxrender-nativesdk libxext-nativesdk" +PR = "r4" + +SRC_URI = "http://www.libsdl.org/release/SDL-${PV}.tar.gz \ + file://acinclude.m4 \ + file://configure_tweak.patch;patch=1 \ + file://kernel-asm-page.patch;patch=1 " +S = "${WORKDIR}/SDL-${PV}" + +inherit autotools binconfig pkgconfig nativesdk + +EXTRA_OECONF = "--disable-static --disable-debug --disable-cdrom --enable-threads --enable-timers --enable-endian \ + --enable-file --disable-oss --disable-alsa --disable-esd --disable-arts \ + --disable-diskaudio --disable-nas --disable-esd-shared --disable-esdtest \ + --disable-mintaudio --disable-nasm --enable-video-x11 --disable-video-dga \ + --disable-video-fbcon --disable-video-directfb --disable-video-ps2gs \ + --disable-video-xbios --disable-video-gem --disable-video-dummy \ + --disable-video-opengl --enable-input-events --enable-pthreads \ + --disable-video-svga \ + --disable-video-picogui --disable-video-qtopia --enable-dlopen" + +PARALLEL_MAKE = "" + +do_configure_prepend() { + cp ${WORKDIR}/acinclude.m4 ${S}/acinclude.m4 +} diff --git a/meta/recipes-graphics/pong-clock/pong-clock/pong-clock-no-flicker.c b/meta/recipes-graphics/pong-clock/pong-clock/pong-clock-no-flicker.c new file mode 100644 index 0000000000..41cebc58a7 --- /dev/null +++ b/meta/recipes-graphics/pong-clock/pong-clock/pong-clock-no-flicker.c @@ -0,0 +1,410 @@ +/* + * Pong Clock - A clock that plays pong. + * See http://mocoloco.com/archives/001766.php for the inspiration. + * + * Copyright (C) 2005 Matthew Allum + * + * Author: Matthew Allum mallum@openedhand.com + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * + */ + +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include + +/* Tweak values for different hw setups */ + +#define FPS 50 +#define RESX 40 +#define RESY 40 +#define TO_MISS_SECS 55 +#define BALLDX 16 +#define BALLDY 4 + + +typedef struct PongClock +{ + Display *xdpy; + int xscreen; + Window xwin, xwin_root; + Pixmap backbuffer; + GC xgc; + int xwin_width, xwin_height; + int pixelw, pixelh; + + int ball_x, ball_y, ball_dx, ball_dy; + int bata_y, batb_y; + Bool bata_to_miss, batb_to_miss; + +} +PongClock; + +void +get_time(int *hour, int *min, int *sec) +{ + struct timeval tv; + struct tm *localTime = NULL; + time_t actualTime; + + gettimeofday(&tv, 0); + actualTime = tv.tv_sec; + localTime = localtime(&actualTime); + + if (hour) + *hour = localTime->tm_hour; + + if (min) + *min = localTime->tm_min; + + if (sec) + *sec = localTime->tm_sec; +} + +void +draw_rect (PongClock *pong_clock, + int x, + int y, + int width, + int height) +{ + XFillRectangle (pong_clock->xdpy, + pong_clock->backbuffer, + pong_clock->xgc, + x * pong_clock->pixelw, + y * pong_clock->pixelh, + width * pong_clock->pixelw, + height * pong_clock->pixelh); +} + +void +draw_field (PongClock *pong_clock) +{ + int i; + + draw_rect (pong_clock, 0, 0, RESX+1, 1); + draw_rect (pong_clock, 0, RESY-1, RESX+1, 1); + + for (i=0; i < RESY/2; i++) + draw_rect (pong_clock, (RESX/2)-1, i*2, 2, 1); +} + +void +draw_digit (PongClock *pong_clock, + int x, + int y, + int digit) +{ + int digits[] = { 0x1f8c63f, 0x1f21086, 0x1f0fe1f, 0x1f87e1f, 0x1087e31, + 0x1f87c3f, 0x1f8fc3f, 0x84421f, 0x1f8fe3f, 0x1087e3f }; + + XRectangle rects[5*5]; + int i,j,k; + + i = 0; + + for (k=0; k<5; k++) + for (j=0; j<5; j++) + if (digits[digit] & (1 << ((k*5)+j))) + { + rects[i].x = (x + j) * pong_clock->pixelw; + rects[i].y = (y + k) * pong_clock->pixelh; + rects[i].width = pong_clock->pixelw; + rects[i].height = pong_clock->pixelh; + i++; + } + + XFillRectangles (pong_clock->xdpy, + pong_clock->backbuffer, + pong_clock->xgc, + rects, i); +} + +void +draw_time (PongClock *pong_clock) +{ + int hour, min; + + get_time(&hour, &min, NULL); + + draw_digit (pong_clock, + (RESX/2) - 14, + 5, + hour / 10 ); + + draw_digit (pong_clock, + (RESX/2) - 8, + 5, + hour % 10 ); + + draw_digit (pong_clock, + (RESX/2) + 3, + 5, + min / 10 ); + + draw_digit (pong_clock, + (RESX/2) + 9, + 5, + min % 10 ); +} + +void +draw_bat_and_ball (PongClock *pong_clock) +{ + /* ball */ + + XFillRectangle (pong_clock->xdpy, + pong_clock->backbuffer, + pong_clock->xgc, + pong_clock->ball_x, + pong_clock->ball_y, + pong_clock->pixelw, + pong_clock->pixelh); + + /* bat a */ + + XFillRectangle (pong_clock->xdpy, + pong_clock->backbuffer, + pong_clock->xgc, + 0, + pong_clock->bata_y - (2 * pong_clock->pixelh), + pong_clock->pixelw, + pong_clock->pixelh * 5); + + /* bat b */ + + XFillRectangle (pong_clock->xdpy, + pong_clock->backbuffer, + pong_clock->xgc, + (pong_clock->xwin_width - pong_clock->pixelw), + pong_clock->batb_y - (2 * pong_clock->pixelh), + pong_clock->pixelw, + pong_clock->pixelh * 5); + +} + +void +update_state (PongClock *pong_clock) +{ + int sec, min, hour; + + get_time(&hour, &min, &sec); + + /* Check ball is on field and no ones dues to miss a shot. + */ + if ( (pong_clock->ball_x < 0 && !pong_clock->bata_to_miss) + || (pong_clock->ball_x > (pong_clock->xwin_width - pong_clock->pixelw) + && !pong_clock->batb_to_miss) ) + pong_clock->ball_dx *= -1; + + if ((pong_clock->ball_y < pong_clock->pixelh) + || pong_clock->ball_y > (pong_clock->xwin_height - (2*pong_clock->pixelh))) + pong_clock->ball_dy *= -1; + + pong_clock->ball_x += pong_clock->ball_dx; + pong_clock->ball_y += pong_clock->ball_dy; + + /* Set up someone to miss if we getting close to an hour or min. + */ + if (sec > TO_MISS_SECS) + { + if (min == 59) + pong_clock->batb_to_miss = True; + else + pong_clock->bata_to_miss = True; + } + else + { + /* Reset the game */ + if (pong_clock->bata_to_miss) + { + pong_clock->bata_to_miss = False; + pong_clock->ball_y = pong_clock->bata_y; + pong_clock->ball_x = pong_clock->pixelw; + pong_clock->ball_dx *= -1; + } + + if (pong_clock->batb_to_miss) + { + pong_clock->batb_to_miss = False; + pong_clock->ball_y = pong_clock->batb_y; + pong_clock->ball_x = pong_clock->xwin_width - pong_clock->pixelw; + pong_clock->ball_dx *= -1; + } + } + + /* Keep bats on field and only move in not setup to miss */ + if (pong_clock->ball_y >= (3*pong_clock->pixelh) + && pong_clock->ball_y <= (pong_clock->xwin_height - (5*pong_clock->pixelh))) + { + if (!pong_clock->batb_to_miss) + pong_clock->batb_y = pong_clock->ball_y; + + if (!pong_clock->bata_to_miss) + pong_clock->bata_y = pong_clock->ball_y; + } +} + +void +draw_frame (PongClock *pong_clock) +{ + update_state (pong_clock); + + /* Clear playfield */ + XSetForeground (pong_clock->xdpy, + pong_clock->xgc, + BlackPixel(pong_clock->xdpy, + pong_clock->xscreen)); + + XFillRectangle (pong_clock->xdpy, + pong_clock->backbuffer, + pong_clock->xgc, + 0, 0, + pong_clock->xwin_width, + pong_clock->xwin_height); + + XSetForeground (pong_clock->xdpy, + pong_clock->xgc, + WhitePixel(pong_clock->xdpy, + pong_clock->xscreen)); + + draw_field (pong_clock); + + draw_time (pong_clock); + + draw_bat_and_ball (pong_clock); + + /* flip 'backbuffer' */ + XSetWindowBackgroundPixmap (pong_clock->xdpy, + pong_clock->xwin, + pong_clock->backbuffer); + XClearWindow(pong_clock->xdpy, pong_clock->xwin); + + XSync(pong_clock->xdpy, False); +} + +int +main (int argc, char **argv) +{ + XGCValues gcv; + Atom atoms_WINDOW_STATE, atoms_WINDOW_STATE_FULLSCREEN; + PongClock *pong_clock; + + pong_clock = malloc(sizeof(PongClock)); + memset(pong_clock, 0, sizeof(PongClock)); + + if ((pong_clock->xdpy = XOpenDisplay(getenv("DISPLAY"))) == NULL) { + fprintf(stderr, "Cannot connect to X server on display %s.", + getenv("DISPLAY")); + exit(-1); + } + + pong_clock->xscreen = DefaultScreen(pong_clock->xdpy); + pong_clock->xwin_root = DefaultRootWindow(pong_clock->xdpy); + pong_clock->xwin_width = DisplayWidth(pong_clock->xdpy, + pong_clock->xscreen); + pong_clock->xwin_height = DisplayHeight(pong_clock->xdpy, + pong_clock->xscreen); + + pong_clock->pixelw = pong_clock->xwin_width / RESX; + pong_clock->pixelh = pong_clock->xwin_height / RESY; + + pong_clock->ball_x = 0; + pong_clock->ball_y = pong_clock->xwin_height / 2; + + pong_clock->ball_dx = BALLDX; + pong_clock->ball_dy = BALLDY; + + pong_clock->batb_y = pong_clock->bata_y = pong_clock->ball_y; + + gcv.background = BlackPixel(pong_clock->xdpy, + pong_clock->xscreen); + gcv.foreground = WhitePixel(pong_clock->xdpy, + pong_clock->xscreen); + gcv.graphics_exposures = False; + + pong_clock->xgc = XCreateGC (pong_clock->xdpy, pong_clock->xwin_root, + GCForeground|GCBackground|GCGraphicsExposures, + &gcv); + + atoms_WINDOW_STATE + = XInternAtom(pong_clock->xdpy, "_NET_WM_STATE",False); + atoms_WINDOW_STATE_FULLSCREEN + = XInternAtom(pong_clock->xdpy, "_NET_WM_STATE_FULLSCREEN",False); + + pong_clock->xwin = XCreateSimpleWindow(pong_clock->xdpy, + pong_clock->xwin_root, + 0, 0, + pong_clock->xwin_width, + pong_clock->xwin_height, + 0, + WhitePixel(pong_clock->xdpy, + pong_clock->xscreen), + BlackPixel(pong_clock->xdpy, + pong_clock->xscreen)); + + pong_clock->backbuffer = XCreatePixmap(pong_clock->xdpy, + pong_clock->xwin_root, + pong_clock->xwin_width, + pong_clock->xwin_height, + DefaultDepth(pong_clock->xdpy, + pong_clock->xscreen)); + + XSelectInput(pong_clock->xdpy, pong_clock->xwin, KeyPressMask); + + + /* Set the hints for fullscreen */ + XChangeProperty(pong_clock->xdpy, + pong_clock->xwin, + atoms_WINDOW_STATE, + XA_ATOM, + 32, + PropModeReplace, + (unsigned char *) &atoms_WINDOW_STATE_FULLSCREEN, 1); + + XMapWindow(pong_clock->xdpy, pong_clock->xwin); + + while (True) + { + struct timeval timeout; + XEvent xev; + + timeout.tv_sec = 0; + timeout.tv_usec = 1000000 / FPS; + select (0, NULL, NULL, NULL, &timeout); + + draw_frame (pong_clock); + + XFlush(pong_clock->xdpy); + + if (XPending(pong_clock->xdpy)) + { + if (XCheckMaskEvent(pong_clock->xdpy, + KeyPressMask, + &xev)) + exit(-1); + } + } +} diff --git a/meta/recipes-graphics/pong-clock/pong-clock_1.0.bb b/meta/recipes-graphics/pong-clock/pong-clock_1.0.bb new file mode 100644 index 0000000000..571a90dbd3 --- /dev/null +++ b/meta/recipes-graphics/pong-clock/pong-clock_1.0.bb @@ -0,0 +1,16 @@ +DESCRIPTION = "A clock combined with a game of pong" +LICENCE = "GPLv2" +DEPENDS = "virtual/libx11 xdmcp xau" + +SRC_URI = "file://pong-clock-no-flicker.c" + +S = "${WORKDIR}" + +do_compile () { + ${CC} -o pong-clock pong-clock-no-flicker.c `pkg-config --cflags --libs x11 xau xdmcp` +} + +do_install () { + install -d ${D}${bindir} + install -m 0755 pong-clock ${D}${bindir} +} \ No newline at end of file diff --git a/meta/recipes-graphics/x11vnc/x11vnc_0.9.3.bb b/meta/recipes-graphics/x11vnc/x11vnc_0.9.3.bb new file mode 100644 index 0000000000..5269ff3091 --- /dev/null +++ b/meta/recipes-graphics/x11vnc/x11vnc_0.9.3.bb @@ -0,0 +1,11 @@ +DESCRIPTION = "Export your X session on-the-fly via VNC" +SECTION = "x11/utils" +HOMEPAGE = "http://www.karlrunge.com/x11vnc/" +AUTHOR = "Karl Runge" +LICENSE = "GPL" +DEPENDS = "openssl virtual/libx11 libxext avahi jpeg zlib" + +SRC_URI = "${SOURCEFORGE_MIRROR}/libvncserver/x11vnc-${PV}.tar.gz" + +inherit autotools + diff --git a/meta/recipes-graphics/xrestop/xrestop_0.4.bb b/meta/recipes-graphics/xrestop/xrestop_0.4.bb new file mode 100644 index 0000000000..1fd24503a7 --- /dev/null +++ b/meta/recipes-graphics/xrestop/xrestop_0.4.bb @@ -0,0 +1,16 @@ +DESCRIPTION = "top-like statistics of X11 server resource usage by clients" +HOMEPAGE = "http://www.freedesktop.org/wiki/Software/xrestop" +BUGTRACKER = "https://bugs.freedesktop.org/" + +LICENSE = "GPLv2 + GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ + file://xrestop.c;endline=18;md5=730876c30f0d8a928676bcd1242a3b35" + +SECTION = "x11/utils" +PR = "r2" + +DEPENDS = "libxres libxext virtual/libx11" + +SRC_URI = "http://projects.o-hand.com/sources/xrestop/xrestop-${PV}.tar.gz" + +inherit autotools diff --git a/meta/recipes-graphics/xvideo-tests/xvideo-tests_svn.bb b/meta/recipes-graphics/xvideo-tests/xvideo-tests_svn.bb new file mode 100644 index 0000000000..0aa861f688 --- /dev/null +++ b/meta/recipes-graphics/xvideo-tests/xvideo-tests_svn.bb @@ -0,0 +1,13 @@ +DESCRIPTION = "Simple XVideo test application" +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \ + file://src/test-xvideo.c;beginline=1;endline=20;md5=6ae3b4c3c2ff9e51dbbc35bb237afa00" +DEPENDS = "libxv" +PV = "0.0+svnr${SRCREV}" +PR = "r0" + +SRC_URI="svn://svn.o-hand.com/repos/misc/trunk;module=test-xvideo;proto=http" + +S = "${WORKDIR}/test-xvideo" + +inherit autotools diff --git a/meta/recipes-kernel/fuse/fuse-2.7.2/not-run-updaterc.d-on-host.patch b/meta/recipes-kernel/fuse/fuse-2.7.2/not-run-updaterc.d-on-host.patch new file mode 100644 index 0000000000..903a8baa9e --- /dev/null +++ b/meta/recipes-kernel/fuse/fuse-2.7.2/not-run-updaterc.d-on-host.patch @@ -0,0 +1,15 @@ +Index: fuse-2.7.2/util/Makefile.am +=================================================================== +--- fuse-2.7.2.orig/util/Makefile.am 2007-04-26 01:36:47.000000000 +0930 ++++ fuse-2.7.2/util/Makefile.am 2008-02-10 16:43:19.000000000 +1030 +@@ -33,10 +33,6 @@ + $(INSTALL_PROGRAM) $(srcdir)/mount.fuse $(DESTDIR)$(MOUNT_FUSE_PATH)/mount.fuse + $(mkdir_p) $(DESTDIR)$(INIT_D_PATH) + $(INSTALL_PROGRAM) $(srcdir)/init_script $(DESTDIR)$(INIT_D_PATH)/fuse +- @if test -x /usr/sbin/update-rc.d; then \ +- echo "/usr/sbin/update-rc.d fuse start 34 S . start 41 0 6 . || true"; \ +- /usr/sbin/update-rc.d fuse start 34 S . start 41 0 6 . || true; \ +- fi + + install-data-local: + $(mkdir_p) $(DESTDIR)$(UDEV_RULES_PATH) diff --git a/meta/recipes-kernel/fuse/fuse.inc b/meta/recipes-kernel/fuse/fuse.inc new file mode 100644 index 0000000000..c6755ac7c7 --- /dev/null +++ b/meta/recipes-kernel/fuse/fuse.inc @@ -0,0 +1,13 @@ +DESCRIPTION = "With FUSE it is possible to implement a fully functional filesystem in a userspace program" +HOMEPAGE = "http://fuse.sf.net" +LICENSE = "GPL" +DEPENDS = "virtual/fakeroot-native" +RRECOMMENDS_fuse = "${@base_contains("MACHINE_FEATURES","kernel26","kernel-module-fuse","fuse-module",d)}" + +SRC_URI = "${SOURCEFORGE_MIRROR}/fuse/fuse-${PV}.tar.gz" + +inherit autotools pkgconfig + +fakeroot do_install() { + oe_runmake install DESTDIR=${D} +} diff --git a/meta/recipes-kernel/fuse/fuse_2.7.2.bb b/meta/recipes-kernel/fuse/fuse_2.7.2.bb new file mode 100644 index 0000000000..d284a25f5f --- /dev/null +++ b/meta/recipes-kernel/fuse/fuse_2.7.2.bb @@ -0,0 +1,22 @@ +require fuse.inc + +PR = "r0" + +SRC_URI += "file://not-run-updaterc.d-on-host.patch;patch=1" + +EXTRA_OECONF = " --disable-kernel-module" + +#package utils in a sperate package and stop debian.bbclass renaming it to libfuse-utils, we want it to be fuse-utils +PACKAGES =+ "fuse-utils-dbg fuse-utils libulockmgr libulockmgr-dev libulockmgr-dbg" +FILES_${PN} += "${libdir}/libfuse.so.*" +FILES_${PN}-dev += "${libdir}/libfuse*.la" + +FILES_libulockmgr = "${libdir}/libulockmgr.so.*" +FILES_libulockmgr-dev += "${libdir}/libulock*.la" +FILES_libulockmgr-dbg += "${libdir}/.debug/libulock*" + +FILES_fuse-utils = "${bindir} ${base_sbindir}" +FILES_fuse-utils-dbg = "${bindir}/.debug ${base_sbindir}/.debug" +DEBIAN_NOAUTONAME_fuse-utils = "1" +DEBIAN_NOAUTONAME_fuse-utils-dbg = "1" + diff --git a/meta/recipes-multimedia/libomxil/libomxil_0.3.3.bb b/meta/recipes-multimedia/libomxil/libomxil_0.3.3.bb new file mode 100644 index 0000000000..016aed5149 --- /dev/null +++ b/meta/recipes-multimedia/libomxil/libomxil_0.3.3.bb @@ -0,0 +1,16 @@ +DESCRIPTION = "Bellagio OpenMAX Integration Layer" +HOMEPAGE = "http://omxil.sourceforge.net/" +LICENSE = "LGPL" +DEPENDS = "libvorbis libogg alsa-lib libmad" + +SRC_URI = "${SOURCEFORGE_MIRROR}/omxil/libomxil-B-${PV}.tar.gz" + +S = "${WORKDIR}/${PN}-B-${PV}" + +inherit autotools + +EXTRA_OECONF += "--disable-ffmpegcomponents" + +FILES_${PN} += "${libdir}/omxilcomponents/*.so*" +FILES_${PN}-dev += "${libdir}/omxilcomponents/*.*a" +FILES_${PN}-dbg += "${libdir}/omxilcomponents/.debug/" diff --git a/meta/recipes-multimedia/speex/speex_1.2rc1.bb b/meta/recipes-multimedia/speex/speex_1.2rc1.bb new file mode 100644 index 0000000000..6f1b133f24 --- /dev/null +++ b/meta/recipes-multimedia/speex/speex_1.2rc1.bb @@ -0,0 +1,24 @@ +DESCRIPTION = "Speex is an Open Source/Free Software patent-free audio compression format designed for speech." +HOMEPAGE = "http://www.speex.org" +SECTION = "libs" +LICENSE = "BSD" +LIC_FILES_CHKSUM = "file://COPYING;md5=314649d8ba9dd7045dfb6683f298d0a8 \ + file://include/speex/speex.h;beginline=1;endline=34;md5=a68129f78d7fe66e07163f73aba143b3" +DEPENDS = "libogg" + +PR = "r0" + +SRC_URI = "http://downloads.us.xiph.org/releases/speex/speex-1.2rc1.tar.gz" + +PARALLEL_MAKE = "" + +inherit autotools pkgconfig + +EXTRA_OECONF = " --enable-fixed-point --with-ogg-libraries=${STAGING_LIBDIR} \ + --disable-float-api --disable-vbr \ + --with-ogg-includes=${STAGING_INCDIR} --disable-oggtest" + +PACKAGES += "${PN}-bin" +FILES_${PN} = "${libdir}/lib*.so.*" +FILES_${PN}-dev += "${libdir}/lib*.so.*" +FILES_${PN}-bin = "${bindir}" diff --git a/meta/recipes-qt/qmake/qmake2-cross/0001-fix-mkspecs.patch b/meta/recipes-qt/qmake/qmake2-cross/0001-fix-mkspecs.patch deleted file mode 100644 index 4ebc3dea8d..0000000000 --- a/meta/recipes-qt/qmake/qmake2-cross/0001-fix-mkspecs.patch +++ /dev/null @@ -1,120 +0,0 @@ -From 594157753a24d0575aaf948dc0e9500f6bdb2178 Mon Sep 17 00:00:00 2001 -From: Michael Krelin -Date: Sat, 2 Jun 2007 16:39:58 +0200 -Subject: [PATCH] fix mkspecs - ---- - mkspecs/common/g++.conf | 18 +++++++++--------- - mkspecs/common/linux.conf | 26 +++++++++++++------------- - 2 files changed, 22 insertions(+), 22 deletions(-) - -Index: qt-embedded-linux-opensource-src-4.5.3/mkspecs/common/g++.conf -=================================================================== ---- qt-embedded-linux-opensource-src-4.5.3.orig/mkspecs/common/g++.conf -+++ qt-embedded-linux-opensource-src-4.5.3/mkspecs/common/g++.conf -@@ -2,12 +2,12 @@ - # qmake configuration for common gcc - # - --QMAKE_CC = gcc --QMAKE_CFLAGS += -pipe -+QMAKE_CC = $(OE_QMAKE_CC) -+QMAKE_CFLAGS += -pipe $(OE_QMAKE_CFLAGS) - QMAKE_CFLAGS_DEPS += -M - QMAKE_CFLAGS_WARN_ON += -Wall -W - QMAKE_CFLAGS_WARN_OFF += -w --QMAKE_CFLAGS_RELEASE += -O2 -+QMAKE_CFLAGS_RELEASE += -O2 - QMAKE_CFLAGS_DEBUG += -g - QMAKE_CFLAGS_SHLIB += -fPIC - QMAKE_CFLAGS_STATIC_LIB += -fPIC -@@ -16,8 +16,8 @@ QMAKE_CFLAGS_HIDESYMS += -fvisibility= - QMAKE_CFLAGS_PRECOMPILE += -x c-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT} - QMAKE_CFLAGS_USE_PRECOMPILE += -include ${QMAKE_PCH_OUTPUT_BASE} - --QMAKE_CXX = g++ --QMAKE_CXXFLAGS += $$QMAKE_CFLAGS -+QMAKE_CXX = $(OE_QMAKE_CXX) -+QMAKE_CXXFLAGS += $$QMAKE_CFLAGS $(OE_QMAKE_CXXFLAGS) - QMAKE_CXXFLAGS_DEPS += $$QMAKE_CFLAGS_DEPS - QMAKE_CXXFLAGS_WARN_ON += $$QMAKE_CFLAGS_WARN_ON - QMAKE_CXXFLAGS_WARN_OFF += $$QMAKE_CFLAGS_WARN_OFF -@@ -30,11 +30,11 @@ QMAKE_CXXFLAGS_HIDESYMS += $$QMAKE_CFLAG - QMAKE_CXXFLAGS_PRECOMPILE += -x c++-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT} - QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE - --QMAKE_LINK = g++ --QMAKE_LINK_SHLIB = g++ --QMAKE_LINK_C = gcc --QMAKE_LINK_C_SHLIB = gcc --QMAKE_LFLAGS += -+QMAKE_LINK = $(OE_QMAKE_LINK) -+QMAKE_LINK_SHLIB = $(OE_QMAKE_LINK) -+QMAKE_LINK_C = $(OE_QMAKE_CC) -+QMAKE_LINK_C_SHLIB = $(OE_QMAKE_CC) -+QMAKE_LFLAGS += $(OE_QMAKE_LDFLAGS) - QMAKE_LFLAGS_RELEASE += -Wl,-O1 - QMAKE_LFLAGS_DEBUG += - QMAKE_LFLAGS_APP += -@@ -43,7 +43,7 @@ QMAKE_LFLAGS_PLUGIN += $$QMAKE_LFLAGS_SH - QMAKE_LFLAGS_SONAME += -Wl,-soname, - QMAKE_LFLAGS_THREAD += - QMAKE_LFLAGS_NOUNDEF += -Wl,--no-undefined --QMAKE_RPATH = -Wl,-rpath, -+QMAKE_RPATH = -Wl,-rpath-link, - - QMAKE_PCH_OUTPUT_EXT = .gch - -Index: qt-embedded-linux-opensource-src-4.5.3/mkspecs/common/linux.conf -=================================================================== ---- qt-embedded-linux-opensource-src-4.5.3.orig/mkspecs/common/linux.conf -+++ qt-embedded-linux-opensource-src-4.5.3/mkspecs/common/linux.conf -@@ -7,27 +7,27 @@ QMAKE_CXXFLAGS_THREAD += $$QMAKE_CFLAGS_ - - QMAKE_INCDIR = - QMAKE_LIBDIR = --QMAKE_INCDIR_X11 = /usr/X11R6/include --QMAKE_LIBDIR_X11 = /usr/X11R6/lib --QMAKE_INCDIR_QT = $$[QT_INSTALL_HEADERS] --QMAKE_LIBDIR_QT = $$[QT_INSTALL_LIBS] --QMAKE_INCDIR_OPENGL = /usr/X11R6/include --QMAKE_LIBDIR_OPENGL = /usr/X11R6/lib -+QMAKE_INCDIR_X11 = -+QMAKE_LIBDIR_X11 = -+QMAKE_INCDIR_QT = $(OE_QMAKE_INCDIR_QT) -+QMAKE_LIBDIR_QT = $(OE_QMAKE_LIBDIR_QT) -+QMAKE_INCDIR_OPENGL = -+QMAKE_LIBDIR_OPENGL = - - QMAKE_LIBS = - QMAKE_LIBS_DYNLOAD = -ldl --QMAKE_LIBS_X11 = -lXext -lX11 -lm --QMAKE_LIBS_X11SM = -lSM -lICE -+QMAKE_LIBS_X11 = $(OE_QMAKE_LIBS_X11) -+QMAKE_LIBS_X11SM = $(OE_QMAKE_LIBS_X11SM) - QMAKE_LIBS_NIS = -lnsl - QMAKE_LIBS_OPENGL = -lGLU -lGL - QMAKE_LIBS_OPENGL_QT = -lGL - QMAKE_LIBS_THREAD = -lpthread - --QMAKE_MOC = $$[QT_INSTALL_BINS]/moc --QMAKE_UIC = $$[QT_INSTALL_BINS]/uic -+QMAKE_MOC = $(OE_QMAKE_MOC) -+QMAKE_UIC = $(OE_QMAKE_UIC) - --QMAKE_AR = ar cqs --QMAKE_OBJCOPY = objcopy -+QMAKE_AR = $(OE_QMAKE_AR) cqs -+QMAKE_OBJCOPY = $(OE_QMAKE_OBJCOPY) - QMAKE_RANLIB = - - QMAKE_TAR = tar -cf -@@ -39,7 +39,7 @@ QMAKE_COPY_DIR = $(COPY) -r - QMAKE_MOVE = mv -f - QMAKE_DEL_FILE = rm -f - QMAKE_DEL_DIR = rmdir --QMAKE_STRIP = strip -+QMAKE_STRIP = $(OE_QMAKE_STRIP) - QMAKE_STRIPFLAGS_LIB += --strip-unneeded - QMAKE_CHK_DIR_EXISTS = test -d - QMAKE_MKDIR = mkdir -p diff --git a/meta/recipes-qt/qmake/qmake2-cross/linux-oe-qmake.conf b/meta/recipes-qt/qmake/qmake2-cross/linux-oe-qmake.conf deleted file mode 100644 index f58481a693..0000000000 --- a/meta/recipes-qt/qmake/qmake2-cross/linux-oe-qmake.conf +++ /dev/null @@ -1 +0,0 @@ -include(../linux-g++/qmake.conf) diff --git a/meta/recipes-qt/qmake/qmake2-cross/use-lflags-last.patch b/meta/recipes-qt/qmake/qmake2-cross/use-lflags-last.patch deleted file mode 100644 index 4197dbbf64..0000000000 --- a/meta/recipes-qt/qmake/qmake2-cross/use-lflags-last.patch +++ /dev/null @@ -1,22 +0,0 @@ -Index: qtopia-core-opensource-src-4.3.1/qmake/generators/unix/unixmake2.cpp -=================================================================== ---- qtopia-core-opensource-src-4.3.1.orig/qmake/generators/unix/unixmake2.cpp 2007-10-07 13:45:26.000000000 +0200 -+++ qtopia-core-opensource-src-4.3.1/qmake/generators/unix/unixmake2.cpp 2007-10-07 13:57:09.000000000 +0200 -@@ -416,7 +416,7 @@ - t << "\n\t" << mkdir_p_asstring(destdir) << "\n\t"; - if(!project->isEmpty("QMAKE_PRE_LINK")) - t << var("QMAKE_PRE_LINK") << "\n\t"; -- t << "$(LINK) $(LFLAGS) -o $(TARGET) " << incr_deps << " " << incr_objs << " $(OBJCOMP) $(LIBS)"; -+ t << "$(LINK) -o $(TARGET) " << incr_deps << " " << incr_objs << " $(OBJCOMP) $(LIBS) $(LFLAGS)"; - if(!project->isEmpty("QMAKE_POST_LINK")) - t << "\n\t" << var("QMAKE_POST_LINK"); - t << endl << endl; -@@ -430,7 +430,7 @@ - t << mkdir_p_asstring(destdir) << "\n\t"; - if(!project->isEmpty("QMAKE_PRE_LINK")) - t << var("QMAKE_PRE_LINK") << "\n\t"; -- t << "$(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJCOMP) $(LIBS)"; -+ t << "$(LINK) -o $(TARGET) $(OBJECTS) $(OBJCOMP) $(LIBS) $(LFLAGS)"; - if(!project->isEmpty("QMAKE_POST_LINK")) - t << "\n\t" << var("QMAKE_POST_LINK"); - t << endl << endl; diff --git a/meta/recipes-qt/qmake/qmake2-cross_2.10a.bb b/meta/recipes-qt/qmake/qmake2-cross_2.10a.bb deleted file mode 100644 index 60f738b9ce..0000000000 --- a/meta/recipes-qt/qmake/qmake2-cross_2.10a.bb +++ /dev/null @@ -1,74 +0,0 @@ -DESCRIPTION = "TrollTech Makefile Generator" -PRIORITY = "optional" -HOMEPAGE = "http://www.trolltech.com" -SECTION = "devel" -LICENSE = "GPL" -PR = "r2" - -QTVER = "qt-embedded-linux-opensource-src-4.5.3" - -SRC_URI = "ftp://ftp.trolltech.com/pub/qt/source/${QTVER}.tar.gz \ - file://0001-fix-mkspecs.patch;patch=1 \ - file://use-lflags-last.patch;patch=1 \ - file://linux-oe-qmake.conf" -S = "${WORKDIR}/${QTVER}" - -# we need the real target system here -CROSS_SYS := "${TARGET_SYS}" -CROSS_BINDIR := "${STAGING_BINDIR_CROSS}" -inherit autotools cross - -export QTDIR = "${S}" -EXTRA_OEMAKE = "-e" -EXTRA_OECONF = "-opensource" - -do_configure() { - # Install the OE build templates - for template in linux-oe-g++ linux-uclibc-oe-g++ linux-gnueabi-oe-g++ - do - install -d ${S}/mkspecs/$template - install -m 0644 ${WORKDIR}/linux-oe-qmake.conf ${S}/mkspecs/$template/qmake.conf - ln -sf ../linux-g++/qplatformdefs.h ${S}/mkspecs/$template/qplatformdefs.h - done - - QMAKESPEC= - PLATFORM=${HOST_OS}-oe-g++ - export PLATFORM - # yes, TARGET_SYS is correct, because this is a 'cross'-qmake-native :) :M: - export OE_QMAKE_CC="${CC}" - export OE_QMAKE_CFLAGS="${CFLAGS}" - export OE_QMAKE_CXX="${CXX}" - export OE_QMAKE_CXXFLAGS="-fno-exceptions -fno-rtti ${CXXFLAGS}" - export OE_QMAKE_LDFLAGS="${LDFLAGS}" - export OE_QMAKE_LINK="${CCLD}" - export OE_QMAKE_AR="${AR}" - export OE_QMAKE_OBJCOPY="${OBJCOPY}" - export OE_QMAKE_STRIP="${STRIP}" - export OE_QMAKE_UIC="${STAGING_BINDIR_NATIVE}/uic" - export OE_QMAKE_MOC="${STAGING_BINDIR_NATIVE}/moc" - export OE_QMAKE_RCC="non-existant" - export OE_QMAKE_QMAKE="${STAGING_BINDIR_NATIVE}/qmake" - export OE_QMAKE_RPATH="-Wl,-rpath-link," - echo yes | ./configure -prefix ${STAGING_DIR}/${CROSS_SYS}/qt4 ${EXTRA_OECONF} || die "Configuring qt failed" -} - -do_compile() { - : -} - -do_install() { - install -d ${D}${CROSS_BINDIR}/ - install -m 0755 bin/qmake ${D}${CROSS_BINDIR}/qmake2 - install -m 0755 bin/qmake ${D}${CROSS_BINDIR}/qmake-qt4 - install -d ${D}${STAGING_DIR}/${CROSS_SYS}/qt4/ - cp -PfR mkspecs ${D}${STAGING_DIR}/${CROSS_SYS}/qt4/ - install -d ${D}${STAGING_DIR}/${HOST_SYS}/qt4/ - cp -PfR mkspecs ${D}${STAGING_DIR}/${HOST_SYS}/qt4/ -} - -sysroot_stage_all_append() { - sysroot_stage_dir ${D}/${STAGING_DIR_NATIVE}/qt4 ${SYSROOT_DESTDIR}/${STAGING_DIR_NATIVE}/qt4 - sysroot_stage_dir ${D}/${STAGING_DIR_TARGET}/qt4 ${SYSROOT_DESTDIR}/${STAGING_DIR_TARGET}/qt4 -} - - diff --git a/meta/recipes-qt/uicmoc/uicmoc4-native.inc b/meta/recipes-qt/uicmoc/uicmoc4-native.inc deleted file mode 100644 index b6933628d9..0000000000 --- a/meta/recipes-qt/uicmoc/uicmoc4-native.inc +++ /dev/null @@ -1,67 +0,0 @@ -DESCRIPTION = "User-Interface-, Meta-Object-, and Resource Compiler for Qt/[X11|Mac|Embedded] version 4.x" -DEPENDS = "zlib-native" -SECTION = "libs" -HOMEPAGE = "http://www.trolltech.com" -PRIORITY = "optional" -LICENSE = "GPL" -PR = "r1" - -SRC_URI = "ftp://ftp.trolltech.com/qt/source/qtopia-core-opensource-src-${PV}.tar.gz" -S = "${WORKDIR}/qtopia-core-opensource-src-${PV}" - -inherit native - -EXTRA_OECONF = "-prefix ${STAGING_DIR_NATIVE}/qt4 \ - -qt-libjpeg -qt-gif -system-zlib \ - -no-nis -no-cups -no-exceptions \ - -no-accessibility -no-libjpeg \ - -no-nas-sound -no-sm \ - -no-xshape -no-xinerama \ - -no-xcursor -no-xrandr \ - -no-xrender -no-fontconfig \ - -no-tablet -no-xkb \ - -no-libpng \ - -verbose -release -fast -static \ - -L ${STAGING_LIBDIR_NATIVE} \ - -qt3support " -# yank default -e -EXTRA_OEMAKE = " " - -do_configure() { - sed -i 's:^QT += xml qt3support$:QT += xml qt3support network:' "${S}"/src/tools/uic3/uic3.pro - echo yes | ./configure ${EXTRA_OECONF} || die "Configuring qt failed. EXTRA_OECONF was ${EXTRA_OECONF}" -} - -TOBUILD = "\ - src/tools/moc \ - src/corelib \ - src/sql \ - src/qt3support \ - src/xml \ - src/tools/uic \ - src/tools/rcc \ - src/network \ - src/gui \ - src/tools/uic3 \ -" - -do_compile() { - unset CC CXX CFLAGS LFLAGS CXXFLAGS CPPFLAGS - for i in ${TOBUILD}; do - cd ${S}/$i && oe_runmake CC="${CC}" CXX="${CXX}" - done -} - -do_install() { - install -d ${D}${bindir}/ - install -m 0755 bin/moc ${D}${bindir}//moc4 - install -m 0755 bin/uic ${D}${bindir}/uic4 - install -m 0755 bin/uic3 ${D}${bindir}/uic34 - install -m 0755 bin/rcc $${D}${bindir}/rcc4 - install -d ${D}/qt4/ - install -m 0644 tools/porting/src/q3porting.xml ${D}/qt4/ -} - -sysroot_stage_all_append() { - sysroot_stage_dir ${D}/qt4 ${SYSROOT_DESTDIR}/${STAGING_DIR_TARGET}/qt4 -} diff --git a/meta/recipes-qt/uicmoc/uicmoc4-native_4.3.2.bb b/meta/recipes-qt/uicmoc/uicmoc4-native_4.3.2.bb deleted file mode 100644 index 1950f63068..0000000000 --- a/meta/recipes-qt/uicmoc/uicmoc4-native_4.3.2.bb +++ /dev/null @@ -1 +0,0 @@ -require uicmoc4-native.inc diff --git a/meta/recipes-sato/claws-mail/claws-mail.inc b/meta/recipes-sato/claws-mail/claws-mail.inc new file mode 100644 index 0000000000..04401df2f5 --- /dev/null +++ b/meta/recipes-sato/claws-mail/claws-mail.inc @@ -0,0 +1,57 @@ +SECTION = "x11/network" +DESCRIPTION = "Mail user agent" +#DEPENDS = "gtk+ gpgme libetpan libgnomeprint aspell openssl" +DEPENDS = "gtk+ libetpan openssl libowl" +LICENSE = "GPL" +PR = "r6" + +SRC_URI = "\ + ${SOURCEFORGE_MIRROR}/sylpheed-claws/claws-mail-${PV}.tar.bz2 \ + file://desktop.patch;patch=1 \ + file://streamline-ui.patch;patch=1 \ + file://owl-window-menu.patch;patch=1 \ + file://fix-build.patch;patch=1 \ + " + +FILES_${PN} = "${bindir} ${datadir}/pixmaps ${datadir}/applications" + +#EXTRA_OECONF = "--disable-aspell-test \ +# --disable-dillo-viewer-plugin --with-aspell-prefix=${STAGING_DIR_HOST}${prefix} \ +# --enable-aspell" + +EXTRA_OECONF = "--disable-aspell-test \ + --disable-aspell \ + --disable-manual \ +# --disable-openssl \ + --disable-crash-dialog \ + --disable-jpilot \ + --disable-trayicon-plugin \ + --disable-spamassassin-plugin \ + --disable-bogofilter-plugin \ + --disable-pgpcore-plugin \ + --disable-pgpmime-plugin \ + --disable-pgpinline-plugin \ + --disable-dillo-viewer-plugin \ + --disable-clamav-plugin \ +# --disable-libetpan \ + --disable-gnomeprint \ + --disable-valgrind \ + --disable-static \ + " + +CFLAGS += "-D_GNU_SOURCE" + +inherit autotools pkgconfig gettext + +do_install_append() { + install -d ${D}${datadir}/applications + install -m 0644 claws-mail.desktop ${D}${datadir}/applications/ + install -d ${D}${datadir}/pixmaps + install -m 0644 claws-mail.png ${D}${datadir}/pixmaps/ +} + +#python populate_packages_prepend () { +# abiword_libdir = bb.data.expand('${libdir}/claws-mail/plugins', d) +# +# do_split_packages(d, abiword_libdir, '^(.*)\.so$', 'claws-mail-plugin-%s', 'Claws plugin for %s', extra_depends='') +#} diff --git a/meta/recipes-sato/claws-mail/claws-mail_2.9.1.bb b/meta/recipes-sato/claws-mail/claws-mail_2.9.1.bb new file mode 100644 index 0000000000..f8a8396b95 --- /dev/null +++ b/meta/recipes-sato/claws-mail/claws-mail_2.9.1.bb @@ -0,0 +1 @@ +require claws-mail.inc diff --git a/meta/recipes-sato/claws-mail/claws-plugin-gtkhtml2-viewer_0.15.bb b/meta/recipes-sato/claws-mail/claws-plugin-gtkhtml2-viewer_0.15.bb new file mode 100644 index 0000000000..82918173e4 --- /dev/null +++ b/meta/recipes-sato/claws-mail/claws-plugin-gtkhtml2-viewer_0.15.bb @@ -0,0 +1,14 @@ +SECTION = "x11/network" +DESCRIPTION = "Mail user agent plugins" +DEPENDS = "claws-mail gtkhtml2 curl" +LICENSE = "GPL" +PR = "r1" + +SRC_URI = "http://www.claws-mail.org/downloads/plugins/gtkhtml2_viewer-${PV}.tar.gz" + +inherit autotools pkgconfig gettext + +S = "${WORKDIR}/gtkhtml2_viewer-${PV}" + +FILES_${PN} = "${libdir}/claws-mail/plugins/*.so" + diff --git a/meta/recipes-sato/claws-mail/claws-plugin-maildir_0.24.4.bb b/meta/recipes-sato/claws-mail/claws-plugin-maildir_0.24.4.bb new file mode 100644 index 0000000000..4351d1e5de --- /dev/null +++ b/meta/recipes-sato/claws-mail/claws-plugin-maildir_0.24.4.bb @@ -0,0 +1,14 @@ +SECTION = "x11/network" +DESCRIPTION = "Mail user agent plugins" +DEPENDS = "claws-mail db" +LICENSE = "GPL" +PR = "r1" + +SRC_URI = "http://www.claws-mail.org/downloads/plugins/maildir-${PV}.tar.gz" + +inherit autotools pkgconfig + +S = "${WORKDIR}/maildir-${PV}" + +FILES_${PN} = "${libdir}/claws-mail/plugins/*.so" + diff --git a/meta/recipes-sato/claws-mail/claws-plugin-mailmbox_1.13.bb b/meta/recipes-sato/claws-mail/claws-plugin-mailmbox_1.13.bb new file mode 100644 index 0000000000..fe7041494f --- /dev/null +++ b/meta/recipes-sato/claws-mail/claws-plugin-mailmbox_1.13.bb @@ -0,0 +1,14 @@ +SECTION = "x11/network" +DESCRIPTION = "Mail user agent plugins" +DEPENDS = "claws-mail" +LICENSE = "GPL" +PR = "r2" + +SRC_URI = "http://www.claws-mail.org/downloads/plugins/mailmbox-${PV}.tar.gz" + +inherit autotools pkgconfig + +S = "${WORKDIR}/mailmbox-${PV}" + +FILES_${PN} = "${libdir}/claws-mail/plugins/*.so" +FILES_${PN}-dbg = "${libdir}/claws-mail/plugins/.debug" diff --git a/meta/recipes-sato/claws-mail/claws-plugin-rssyl_0.13.bb b/meta/recipes-sato/claws-mail/claws-plugin-rssyl_0.13.bb new file mode 100644 index 0000000000..de0705c7fd --- /dev/null +++ b/meta/recipes-sato/claws-mail/claws-plugin-rssyl_0.13.bb @@ -0,0 +1,14 @@ +SECTION = "x11/network" +DESCRIPTION = "Mail user agent plugins" +DEPENDS = "claws-mail libxml2 curl glib-2.0 gtk+" +LICENSE = "GPL" +PR = "r1" + +SRC_URI = "http://www.claws-mail.org/downloads/plugins/rssyl-${PV}.tar.gz" + +inherit autotools pkgconfig gettext + +S = "${WORKDIR}/rssyl-${PV}" + +FILES_${PN} = "${libdir}/claws-mail/plugins/*.so" + diff --git a/meta/recipes-sato/claws-mail/files/desktop.patch b/meta/recipes-sato/claws-mail/files/desktop.patch new file mode 100644 index 0000000000..c5ed7a9c7d --- /dev/null +++ b/meta/recipes-sato/claws-mail/files/desktop.patch @@ -0,0 +1,19 @@ +Index: claws-mail-2.9.1/claws-mail.desktop +=================================================================== +--- claws-mail-2.9.1.orig/claws-mail.desktop 2007-04-24 17:40:20.000000000 +0100 ++++ claws-mail-2.9.1/claws-mail.desktop 2007-04-25 07:08:36.000000000 +0100 +@@ -1,11 +1,11 @@ + [Desktop Entry] + Encoding=UTF-8 +-Name=Claws Mail ++Name=Mail + Exec=claws-mail + Icon=claws-mail +-Info="Claws Mail" ++Info=Email Application + Categories=GTK;Network;Email; +-Comment="Gtk+ based Mail Client" ++Comment=Email Application + Terminal=false + Type=Application + StartupNotify=true diff --git a/meta/recipes-sato/claws-mail/files/fix-build.patch b/meta/recipes-sato/claws-mail/files/fix-build.patch new file mode 100644 index 0000000000..2f30899fe1 --- /dev/null +++ b/meta/recipes-sato/claws-mail/files/fix-build.patch @@ -0,0 +1,24 @@ +Remove duplicate file entries as this breaks install with new Automake + +JL 19/03/10 + +Index: claws-mail-2.9.1/src/gtk/Makefile.am +=================================================================== +--- claws-mail-2.9.1.orig/src/gtk/Makefile.am 2007-03-22 07:52:47.000000000 +0000 ++++ claws-mail-2.9.1/src/gtk/Makefile.am 2010-03-19 14:54:06.565828281 +0000 +@@ -44,7 +44,6 @@ + filesel.h \ + foldersort.h \ + gtkaspell.h \ +- gtksctree.h \ + gtkshruler.h \ + gtksctree.h \ + gtksourceprintjob.h \ +@@ -57,7 +56,6 @@ + menu.h \ + pluginwindow.h \ + prefswindow.h \ +- gtkvscrollbutton.h \ + progressdialog.h \ + quicksearch.h \ + sslcertwindow.h \ diff --git a/meta/recipes-sato/claws-mail/files/owl-window-menu.patch b/meta/recipes-sato/claws-mail/files/owl-window-menu.patch new file mode 100644 index 0000000000..54c61668a9 --- /dev/null +++ b/meta/recipes-sato/claws-mail/files/owl-window-menu.patch @@ -0,0 +1,1009 @@ +Index: claws-mail-2.9.1/src/addressbook.c +=================================================================== +--- claws-mail-2.9.1.orig/src/addressbook.c 2007-04-25 10:18:13.000000000 +0100 ++++ claws-mail-2.9.1/src/addressbook.c 2007-04-25 10:30:23.000000000 +0100 +@@ -941,7 +941,6 @@ + sizeof(addressbook_entries[0]); + menubar = menubar_create(window, addressbook_entries, n_entries, + "", NULL); +- gtk_box_pack_start(GTK_BOX(vbox), menubar, FALSE, TRUE, 0); + menu_factory = gtk_item_factory_from_widget(menubar); + + vbox2 = gtk_vbox_new(FALSE, BORDER_WIDTH); +Index: claws-mail-2.9.1/src/gtk/menu.c +=================================================================== +--- claws-mail-2.9.1.orig/src/gtk/menu.c 2007-04-25 10:18:13.000000000 +0100 ++++ claws-mail-2.9.1/src/gtk/menu.c 2007-04-25 10:30:23.000000000 +0100 +@@ -35,10 +35,7 @@ + #include "menu.h" + #include "utils.h" + +-#ifdef MAEMO +-#include +-#include +-#endif ++#include + + static void connect_accel_change_signals(GtkWidget* widget, GtkWidget *wid2) ; + +@@ -49,20 +46,14 @@ + GtkItemFactory *factory; + GtkWidget *menubar; + +-#ifdef MAEMO + factory = gtk_item_factory_new(GTK_TYPE_MENU, path, NULL); +-#else +- factory = gtk_item_factory_new(GTK_TYPE_MENU_BAR, path, NULL); +-#endif + gtk_item_factory_set_translate_func(factory, menu_translate, + NULL, NULL); + gtk_item_factory_create_items(factory, n_entries, entries, data); + gtk_window_add_accel_group (GTK_WINDOW (window), factory->accel_group); + + menubar = gtk_item_factory_get_widget(factory, path); +-#ifdef MAEMO +- hildon_window_set_menu(HILDON_WINDOW(window), GTK_MENU(menubar)); +-#endif ++ owl_set_window_menu(GTK_WINDOW(window), GTK_MENU(menubar)); + return menubar; + } + +Index: claws-mail-2.9.1/src/mainwindow.c +=================================================================== +--- claws-mail-2.9.1.orig/src/mainwindow.c 2007-04-25 10:26:40.000000000 +0100 ++++ claws-mail-2.9.1/src/mainwindow.c 2007-04-25 10:30:23.000000000 +0100 +@@ -1094,8 +1094,6 @@ + n_menu_entries = sizeof(mainwin_entries) / sizeof(mainwin_entries[0]); + menubar = menubar_create(window, mainwin_entries, + n_menu_entries, "
", mainwin); +- gtk_widget_show(menubar); +- gtk_box_pack_start(GTK_BOX(vbox), menubar, FALSE, TRUE, 0); + ifactory = gtk_item_factory_from_widget(menubar); + + /* gtk_widget_show(gtk_item_factory_get_item(ifactory,"/Message/Mailing-List")); +Index: claws-mail-2.9.1/src/messageview.c +=================================================================== +--- claws-mail-2.9.1.orig/src/messageview.c 2007-04-25 10:18:13.000000000 +0100 ++++ claws-mail-2.9.1/src/messageview.c 2007-04-25 10:30:23.000000000 +0100 +@@ -414,8 +414,6 @@ + n_menu_entries = sizeof(msgview_entries) / sizeof(msgview_entries[0]); + menubar = menubar_create(window, msgview_entries, + n_menu_entries, "", msgview); +- gtk_widget_show(menubar); +- gtk_box_pack_start(GTK_BOX(vbox), menubar, FALSE, TRUE, 0); + + if (prefs_common.toolbar_detachable) { + handlebox = gtk_handle_box_new(); +@@ -478,6 +476,7 @@ + g_signal_connect(G_OBJECT(window), "key_press_event", + G_CALLBACK(key_pressed), msgview); + #endif ++ gtk_widget_realize(window); + messageview_add_toolbar(msgview, window); + + if (show) { +Index: claws-mail-2.9.1/configure.ac +=================================================================== +--- claws-mail-2.9.1.orig/configure.ac 2007-04-25 10:18:13.000000000 +0100 ++++ claws-mail-2.9.1/configure.ac 2007-04-25 10:30:23.000000000 +0100 +@@ -406,6 +406,11 @@ + AC_SUBST(GTK_CFLAGS) + AC_SUBST(GTK_LIBS) + ++OWL_CFLAGS="" ++OWL_LIBS="-lowl" ++AC_SUBST(OWL_CFLAGS) ++AC_SUBST(OWL_LIBS) ++ + dnl GNU/Aspell is used for spell checking + AC_ARG_ENABLE(aspell, + [ --disable-aspell Disable GNU/aspell support [default=yes]], +Index: claws-mail-2.9.1/src/Makefile.am +=================================================================== +--- claws-mail-2.9.1.orig/src/Makefile.am 2007-04-25 10:18:13.000000000 +0100 ++++ claws-mail-2.9.1/src/Makefile.am 2007-04-25 10:30:23.000000000 +0100 +@@ -471,7 +471,8 @@ + $(LIBICONV) \ + $(STARTUP_NOTIFICATION_LIBS) \ + $(LIBETPAN_LIBS) \ +- $(MAEMO_LIBS) ++ $(MAEMO_LIBS) \ ++ $(OWL_LIBS) + + AM_CPPFLAGS = \ + -DG_LOG_DOMAIN=\"Claws-Mail\" \ +@@ -489,6 +490,7 @@ + $(LIBETPAN_CPPFLAGS) \ + $(STARTUP_NOTIFICATION_CFLAGS) \ + $(MAEMO_CFLAGS) \ ++ $(OWL_CFLAGS) \ + -Wno-unused-function + + #no-unused-function is there because of bison stuff +Index: claws-mail-2.9.1/configure +=================================================================== +--- claws-mail-2.9.1.orig/configure 2007-04-25 10:18:13.000000000 +0100 ++++ claws-mail-2.9.1/configure 2007-04-25 10:30:23.000000000 +0100 +@@ -769,7 +769,6 @@ + # include + #endif" + +-gt_needs= + ac_subst_vars='SHELL + PATH_SEPARATOR + PACKAGE_NAME +@@ -942,6 +941,8 @@ + PASSCRYPT_KEY + GTK_CFLAGS + GTK_LIBS ++OWL_LIBS ++OWL_CFLAGS + ASPELL + ASPELL_CFLAGS + ASPELL_LIBS +@@ -2063,7 +2064,6 @@ + >$cache_file + fi + +-gt_needs="$gt_needs " + # Check that the precious variables saved in the cache have kept the same + # value. + ac_cache_corrupted=false +@@ -3001,9 +3001,7 @@ + # Put the nasty error message in config.log where it belongs + echo "$GNOME2_PKG_ERRORS" >&5 + +- { echo "$as_me:$LINENO: result: no" >&5 +-echo "${ECHO_T}no" >&6; } +- ac_enable_gnome2=no ++ ac_enable_gnome2=no + elif test $pkg_failed = untried; then + ac_enable_gnome2=no + else +@@ -4147,14 +4145,12 @@ + + + +- +- { echo "$as_me:$LINENO: checking for strerror in -lcposix" >&5 +-echo $ECHO_N "checking for strerror in -lcposix... $ECHO_C" >&6; } +-if test "${ac_cv_lib_cposix_strerror+set}" = set; then ++{ echo "$as_me:$LINENO: checking for library containing strerror" >&5 ++echo $ECHO_N "checking for library containing strerror... $ECHO_C" >&6; } ++if test "${ac_cv_search_strerror+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 + else +- ac_check_lib_save_LIBS=$LIBS +-LIBS="-lcposix $LIBS" ++ ac_func_search_save_LIBS=$LIBS + cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ + _ACEOF +@@ -4177,7 +4173,14 @@ + return 0; + } + _ACEOF +-rm -f conftest.$ac_objext conftest$ac_exeext ++for ac_lib in '' cposix; do ++ if test -z "$ac_lib"; then ++ ac_res="none required" ++ else ++ ac_res=-l$ac_lib ++ LIBS="-l$ac_lib $ac_func_search_save_LIBS" ++ fi ++ rm -f conftest.$ac_objext conftest$ac_exeext + if { (ac_try="$ac_link" + case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; +@@ -4195,25 +4198,35 @@ + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then +- ac_cv_lib_cposix_strerror=yes ++ ac_cv_search_strerror=$ac_res + else + echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + +- ac_cv_lib_cposix_strerror=no ++ + fi + + rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ +- conftest$ac_exeext conftest.$ac_ext +-LIBS=$ac_check_lib_save_LIBS ++ conftest$ac_exeext ++ if test "${ac_cv_search_strerror+set}" = set; then ++ break ++fi ++done ++if test "${ac_cv_search_strerror+set}" = set; then ++ : ++else ++ ac_cv_search_strerror=no + fi +-{ echo "$as_me:$LINENO: result: $ac_cv_lib_cposix_strerror" >&5 +-echo "${ECHO_T}$ac_cv_lib_cposix_strerror" >&6; } +-if test $ac_cv_lib_cposix_strerror = yes; then +- LIBS="$LIBS -lcposix" ++rm conftest.$ac_ext ++LIBS=$ac_func_search_save_LIBS + fi ++{ echo "$as_me:$LINENO: result: $ac_cv_search_strerror" >&5 ++echo "${ECHO_T}$ac_cv_search_strerror" >&6; } ++ac_res=$ac_cv_search_strerror ++if test "$ac_res" != no; then ++ test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" + +- ++fi + + # Find a good install program. We prefer a C program (faster), + # so one script is as good as another. But avoid the broken or +@@ -5769,7 +5782,7 @@ + ;; + *-*-irix6*) + # Find out which ABI we are using. +- echo '#line 5772 "configure"' > conftest.$ac_ext ++ echo '#line 5785 "configure"' > conftest.$ac_ext + if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 + (eval $ac_compile) 2>&5 + ac_status=$? +@@ -8555,11 +8568,11 @@ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` +- (eval echo "\"\$as_me:8558: $lt_compile\"" >&5) ++ (eval echo "\"\$as_me:8571: $lt_compile\"" >&5) + (eval "$lt_compile" 2>conftest.err) + ac_status=$? + cat conftest.err >&5 +- echo "$as_me:8562: \$? = $ac_status" >&5 ++ echo "$as_me:8575: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s "$ac_outfile"; then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings other than the usual output. +@@ -8823,11 +8836,11 @@ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` +- (eval echo "\"\$as_me:8826: $lt_compile\"" >&5) ++ (eval echo "\"\$as_me:8839: $lt_compile\"" >&5) + (eval "$lt_compile" 2>conftest.err) + ac_status=$? + cat conftest.err >&5 +- echo "$as_me:8830: \$? = $ac_status" >&5 ++ echo "$as_me:8843: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s "$ac_outfile"; then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings other than the usual output. +@@ -8927,11 +8940,11 @@ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` +- (eval echo "\"\$as_me:8930: $lt_compile\"" >&5) ++ (eval echo "\"\$as_me:8943: $lt_compile\"" >&5) + (eval "$lt_compile" 2>out/conftest.err) + ac_status=$? + cat out/conftest.err >&5 +- echo "$as_me:8934: \$? = $ac_status" >&5 ++ echo "$as_me:8947: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s out/conftest2.$ac_objext + then + # The compiler can only warn and ignore the option if not recognized +@@ -11224,7 +11237,7 @@ + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext < conftest.$ac_ext <&5) ++ (eval echo "\"\$as_me:13676: $lt_compile\"" >&5) + (eval "$lt_compile" 2>conftest.err) + ac_status=$? + cat conftest.err >&5 +- echo "$as_me:13667: \$? = $ac_status" >&5 ++ echo "$as_me:13680: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s "$ac_outfile"; then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings other than the usual output. +@@ -13764,11 +13777,11 @@ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` +- (eval echo "\"\$as_me:13767: $lt_compile\"" >&5) ++ (eval echo "\"\$as_me:13780: $lt_compile\"" >&5) + (eval "$lt_compile" 2>out/conftest.err) + ac_status=$? + cat out/conftest.err >&5 +- echo "$as_me:13771: \$? = $ac_status" >&5 ++ echo "$as_me:13784: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s out/conftest2.$ac_objext + then + # The compiler can only warn and ignore the option if not recognized +@@ -15325,11 +15338,11 @@ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` +- (eval echo "\"\$as_me:15328: $lt_compile\"" >&5) ++ (eval echo "\"\$as_me:15341: $lt_compile\"" >&5) + (eval "$lt_compile" 2>conftest.err) + ac_status=$? + cat conftest.err >&5 +- echo "$as_me:15332: \$? = $ac_status" >&5 ++ echo "$as_me:15345: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s "$ac_outfile"; then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings other than the usual output. +@@ -15429,11 +15442,11 @@ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` +- (eval echo "\"\$as_me:15432: $lt_compile\"" >&5) ++ (eval echo "\"\$as_me:15445: $lt_compile\"" >&5) + (eval "$lt_compile" 2>out/conftest.err) + ac_status=$? + cat out/conftest.err >&5 +- echo "$as_me:15436: \$? = $ac_status" >&5 ++ echo "$as_me:15449: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s out/conftest2.$ac_objext + then + # The compiler can only warn and ignore the option if not recognized +@@ -17616,11 +17629,11 @@ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` +- (eval echo "\"\$as_me:17619: $lt_compile\"" >&5) ++ (eval echo "\"\$as_me:17632: $lt_compile\"" >&5) + (eval "$lt_compile" 2>conftest.err) + ac_status=$? + cat conftest.err >&5 +- echo "$as_me:17623: \$? = $ac_status" >&5 ++ echo "$as_me:17636: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s "$ac_outfile"; then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings other than the usual output. +@@ -17884,11 +17897,11 @@ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` +- (eval echo "\"\$as_me:17887: $lt_compile\"" >&5) ++ (eval echo "\"\$as_me:17900: $lt_compile\"" >&5) + (eval "$lt_compile" 2>conftest.err) + ac_status=$? + cat conftest.err >&5 +- echo "$as_me:17891: \$? = $ac_status" >&5 ++ echo "$as_me:17904: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s "$ac_outfile"; then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings other than the usual output. +@@ -17988,11 +18001,11 @@ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` +- (eval echo "\"\$as_me:17991: $lt_compile\"" >&5) ++ (eval echo "\"\$as_me:18004: $lt_compile\"" >&5) + (eval "$lt_compile" 2>out/conftest.err) + ac_status=$? + cat out/conftest.err >&5 +- echo "$as_me:17995: \$? = $ac_status" >&5 ++ echo "$as_me:18008: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s out/conftest2.$ac_objext + then + # The compiler can only warn and ignore the option if not recognized +@@ -20960,16 +20973,9 @@ + found_so= + found_a= + if test $use_additional = yes; then +- if test -n "$shlibext" \ +- && { test -f "$additional_libdir/lib$name.$shlibext" \ +- || { test "$shlibext" = dll \ +- && test -f "$additional_libdir/lib$name.dll.a"; }; }; then ++ if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then + found_dir="$additional_libdir" +- if test -f "$additional_libdir/lib$name.$shlibext"; then +- found_so="$additional_libdir/lib$name.$shlibext" +- else +- found_so="$additional_libdir/lib$name.dll.a" +- fi ++ found_so="$additional_libdir/lib$name.$shlibext" + if test -f "$additional_libdir/lib$name.la"; then + found_la="$additional_libdir/lib$name.la" + fi +@@ -20997,16 +21003,9 @@ + case "$x" in + -L*) + dir=`echo "X$x" | sed -e 's/^X-L//'` +- if test -n "$shlibext" \ +- && { test -f "$dir/lib$name.$shlibext" \ +- || { test "$shlibext" = dll \ +- && test -f "$dir/lib$name.dll.a"; }; }; then ++ if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then + found_dir="$dir" +- if test -f "$dir/lib$name.$shlibext"; then +- found_so="$dir/lib$name.$shlibext" +- else +- found_so="$dir/lib$name.dll.a" +- fi ++ found_so="$dir/lib$name.$shlibext" + if test -f "$dir/lib$name.la"; then + found_la="$dir/lib$name.la" + fi +@@ -21927,13 +21926,6 @@ + + + +- +- +- +- +- +- +- + { echo "$as_me:$LINENO: checking for CFPreferencesCopyAppValue" >&5 + echo $ECHO_N "checking for CFPreferencesCopyAppValue... $ECHO_C" >&6; } + if test "${gt_cv_func_CFPreferencesCopyAppValue+set}" = set; then +@@ -22070,37 +22062,17 @@ + LTLIBINTL= + POSUB= + +- case " $gt_needs " in +- *" need-formatstring-macros "*) gt_api_version=3 ;; +- *" need-ngettext "*) gt_api_version=2 ;; +- *) gt_api_version=1 ;; +- esac +- gt_func_gnugettext_libc="gt_cv_func_gnugettext${gt_api_version}_libc" +- gt_func_gnugettext_libintl="gt_cv_func_gnugettext${gt_api_version}_libintl" +- + if test "$USE_NLS" = "yes"; then + gt_use_preinstalled_gnugettext=no + + +- if test $gt_api_version -ge 3; then +- gt_revision_test_code=' +-#ifndef __GNU_GETTEXT_SUPPORTED_REVISION +-#define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1) +-#endif +-typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1]; +-' +- else +- gt_revision_test_code= +- fi +- if test $gt_api_version -ge 2; then +- gt_expression_test_code=' + * ngettext ("", "", 0)' +- else +- gt_expression_test_code= +- fi ++ ++ ++ + + { echo "$as_me:$LINENO: checking for GNU gettext in libc" >&5 + echo $ECHO_N "checking for GNU gettext in libc... $ECHO_C" >&6; } +-if { as_var=$gt_func_gnugettext_libc; eval "test \"\${$as_var+set}\" = set"; }; then ++if test "${gt_cv_func_gnugettext1_libc+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 + else + cat >conftest.$ac_ext <<_ACEOF +@@ -22110,14 +22082,13 @@ + cat >>conftest.$ac_ext <<_ACEOF + /* end confdefs.h. */ + #include +-$gt_revision_test_code + extern int _nl_msg_cat_cntr; + extern int *_nl_domain_bindings; + int + main () + { + bindtextdomain ("", ""); +-return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_domain_bindings ++return * gettext ("") + _nl_msg_cat_cntr + *_nl_domain_bindings + ; + return 0; + } +@@ -22140,22 +22111,21 @@ + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then +- eval "$gt_func_gnugettext_libc=yes" ++ gt_cv_func_gnugettext1_libc=yes + else + echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + +- eval "$gt_func_gnugettext_libc=no" ++ gt_cv_func_gnugettext1_libc=no + fi + + rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext + fi +-ac_res=`eval echo '${'$gt_func_gnugettext_libc'}'` +- { echo "$as_me:$LINENO: result: $ac_res" >&5 +-echo "${ECHO_T}$ac_res" >&6; } ++{ echo "$as_me:$LINENO: result: $gt_cv_func_gnugettext1_libc" >&5 ++echo "${ECHO_T}$gt_cv_func_gnugettext1_libc" >&6; } + +- if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" != "yes"; }; then ++ if test "$gt_cv_func_gnugettext1_libc" != "yes"; then + + + +@@ -22398,16 +22368,9 @@ + found_so= + found_a= + if test $use_additional = yes; then +- if test -n "$shlibext" \ +- && { test -f "$additional_libdir/lib$name.$shlibext" \ +- || { test "$shlibext" = dll \ +- && test -f "$additional_libdir/lib$name.dll.a"; }; }; then ++ if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then + found_dir="$additional_libdir" +- if test -f "$additional_libdir/lib$name.$shlibext"; then +- found_so="$additional_libdir/lib$name.$shlibext" +- else +- found_so="$additional_libdir/lib$name.dll.a" +- fi ++ found_so="$additional_libdir/lib$name.$shlibext" + if test -f "$additional_libdir/lib$name.la"; then + found_la="$additional_libdir/lib$name.la" + fi +@@ -22435,16 +22398,9 @@ + case "$x" in + -L*) + dir=`echo "X$x" | sed -e 's/^X-L//'` +- if test -n "$shlibext" \ +- && { test -f "$dir/lib$name.$shlibext" \ +- || { test "$shlibext" = dll \ +- && test -f "$dir/lib$name.dll.a"; }; }; then ++ if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then + found_dir="$dir" +- if test -f "$dir/lib$name.$shlibext"; then +- found_so="$dir/lib$name.$shlibext" +- else +- found_so="$dir/lib$name.dll.a" +- fi ++ found_so="$dir/lib$name.$shlibext" + if test -f "$dir/lib$name.la"; then + found_la="$dir/lib$name.la" + fi +@@ -22712,7 +22668,7 @@ + + { echo "$as_me:$LINENO: checking for GNU gettext in libintl" >&5 + echo $ECHO_N "checking for GNU gettext in libintl... $ECHO_C" >&6; } +-if { as_var=$gt_func_gnugettext_libintl; eval "test \"\${$as_var+set}\" = set"; }; then ++if test "${gt_cv_func_gnugettext1_libintl+set}" = set; then + echo $ECHO_N "(cached) $ECHO_C" >&6 + else + gt_save_CPPFLAGS="$CPPFLAGS" +@@ -22726,7 +22682,6 @@ + cat >>conftest.$ac_ext <<_ACEOF + /* end confdefs.h. */ + #include +-$gt_revision_test_code + extern int _nl_msg_cat_cntr; + extern + #ifdef __cplusplus +@@ -22737,7 +22692,7 @@ + main () + { + bindtextdomain ("", ""); +-return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("") ++return * gettext ("") + _nl_msg_cat_cntr + *_nl_expand_alias ("") + ; + return 0; + } +@@ -22760,17 +22715,17 @@ + test ! -s conftest.err + } && test -s conftest$ac_exeext && + $as_test_x conftest$ac_exeext; then +- eval "$gt_func_gnugettext_libintl=yes" ++ gt_cv_func_gnugettext1_libintl=yes + else + echo "$as_me: failed program was:" >&5 + sed 's/^/| /' conftest.$ac_ext >&5 + +- eval "$gt_func_gnugettext_libintl=no" ++ gt_cv_func_gnugettext1_libintl=no + fi + + rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +- if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" != yes; } && test -n "$LIBICONV"; then ++ if test "$gt_cv_func_gnugettext1_libintl" != yes && test -n "$LIBICONV"; then + LIBS="$LIBS $LIBICONV" + cat >conftest.$ac_ext <<_ACEOF + /* confdefs.h. */ +@@ -22779,7 +22734,6 @@ + cat >>conftest.$ac_ext <<_ACEOF + /* end confdefs.h. */ + #include +-$gt_revision_test_code + extern int _nl_msg_cat_cntr; + extern + #ifdef __cplusplus +@@ -22790,7 +22744,7 @@ + main () + { + bindtextdomain ("", ""); +-return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_expand_alias ("") ++return * gettext ("") + _nl_msg_cat_cntr + *_nl_expand_alias ("") + ; + return 0; + } +@@ -22815,7 +22769,7 @@ + $as_test_x conftest$ac_exeext; then + LIBINTL="$LIBINTL $LIBICONV" + LTLIBINTL="$LTLIBINTL $LTLIBICONV" +- eval "$gt_func_gnugettext_libintl=yes" ++ gt_cv_func_gnugettext1_libintl=yes + + else + echo "$as_me: failed program was:" >&5 +@@ -22830,13 +22784,12 @@ + CPPFLAGS="$gt_save_CPPFLAGS" + LIBS="$gt_save_LIBS" + fi +-ac_res=`eval echo '${'$gt_func_gnugettext_libintl'}'` +- { echo "$as_me:$LINENO: result: $ac_res" >&5 +-echo "${ECHO_T}$ac_res" >&6; } ++{ echo "$as_me:$LINENO: result: $gt_cv_func_gnugettext1_libintl" >&5 ++echo "${ECHO_T}$gt_cv_func_gnugettext1_libintl" >&6; } + fi + +- if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" = "yes"; } \ +- || { { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; } \ ++ if test "$gt_cv_func_gnugettext1_libc" = "yes" \ ++ || { test "$gt_cv_func_gnugettext1_libintl" = "yes" \ + && test "$PACKAGE" != gettext-runtime \ + && test "$PACKAGE" != gettext-tools; }; then + gt_use_preinstalled_gnugettext=yes +@@ -22876,7 +22829,7 @@ + { echo "$as_me:$LINENO: checking where the gettext function comes from" >&5 + echo $ECHO_N "checking where the gettext function comes from... $ECHO_C" >&6; } + if test "$gt_use_preinstalled_gnugettext" = "yes"; then +- if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then ++ if test "$gt_cv_func_gnugettext1_libintl" = "yes"; then + gt_source="external libintl" + else + gt_source="libc" +@@ -22891,7 +22844,7 @@ + if test "$USE_NLS" = "yes"; then + + if test "$gt_use_preinstalled_gnugettext" = "yes"; then +- if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then ++ if test "$gt_cv_func_gnugettext1_libintl" = "yes"; then + { echo "$as_me:$LINENO: checking how to link with libintl" >&5 + echo $ECHO_N "checking how to link with libintl... $ECHO_C" >&6; } + { echo "$as_me:$LINENO: result: $LIBINTL" >&5 +@@ -26592,12 +26545,8 @@ + esac + done + +- +- +-if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then +- if test -n "$ac_tool_prefix"; then +- # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. +-set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 ++ # Extract the first word of "pkg-config", so it can be a program name with args. ++set dummy pkg-config; ac_word=$2 + { echo "$as_me:$LINENO: checking for $ac_word" >&5 + echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } + if test "${ac_cv_path_PKG_CONFIG+set}" = set; then +@@ -26623,6 +26572,7 @@ + done + IFS=$as_save_IFS + ++ test -z "$ac_cv_path_PKG_CONFIG" && ac_cv_path_PKG_CONFIG="no" + ;; + esac + fi +@@ -26636,88 +26586,19 @@ + fi + + +-fi +-if test -z "$ac_cv_path_PKG_CONFIG"; then +- ac_pt_PKG_CONFIG=$PKG_CONFIG +- # Extract the first word of "pkg-config", so it can be a program name with args. +-set dummy pkg-config; ac_word=$2 +-{ echo "$as_me:$LINENO: checking for $ac_word" >&5 +-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } +-if test "${ac_cv_path_ac_pt_PKG_CONFIG+set}" = set; then +- echo $ECHO_N "(cached) $ECHO_C" >&6 +-else +- case $ac_pt_PKG_CONFIG in +- [\\/]* | ?:[\\/]*) +- ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path. +- ;; +- *) +- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +-for as_dir in $PATH +-do +- IFS=$as_save_IFS +- test -z "$as_dir" && as_dir=. +- for ac_exec_ext in '' $ac_executable_extensions; do +- if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then +- ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" +- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 +- break 2 +- fi +-done +-done +-IFS=$as_save_IFS +- +- ;; +-esac +-fi +-ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG +-if test -n "$ac_pt_PKG_CONFIG"; then +- { echo "$as_me:$LINENO: result: $ac_pt_PKG_CONFIG" >&5 +-echo "${ECHO_T}$ac_pt_PKG_CONFIG" >&6; } +-else +- { echo "$as_me:$LINENO: result: no" >&5 +-echo "${ECHO_T}no" >&6; } +-fi +- +- if test "x$ac_pt_PKG_CONFIG" = x; then +- PKG_CONFIG="" +- else +- case $cross_compiling:$ac_tool_warned in +-yes:) +-{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools +-whose name does not start with the host triplet. If you think this +-configuration is useful to you, please write to autoconf@gnu.org." >&5 +-echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools +-whose name does not start with the host triplet. If you think this +-configuration is useful to you, please write to autoconf@gnu.org." >&2;} +-ac_tool_warned=yes ;; +-esac +- PKG_CONFIG=$ac_pt_PKG_CONFIG +- fi +-else +- PKG_CONFIG="$ac_cv_path_PKG_CONFIG" +-fi +- +-fi +-if test -n "$PKG_CONFIG"; then +- _pkg_min_version=0.7 +- { echo "$as_me:$LINENO: checking pkg-config is at least version $_pkg_min_version" >&5 +-echo $ECHO_N "checking pkg-config is at least version $_pkg_min_version... $ECHO_C" >&6; } +- if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then +- { echo "$as_me:$LINENO: result: yes" >&5 +-echo "${ECHO_T}yes" >&6; } +- else +- { echo "$as_me:$LINENO: result: no" >&5 +-echo "${ECHO_T}no" >&6; } +- PKG_CONFIG="" +- fi +- +-fi + + no_glib="" + +- if test "x$PKG_CONFIG" = x ; then ++ if test x$PKG_CONFIG != xno ; then ++ if $PKG_CONFIG --atleast-pkgconfig-version 0.7 ; then ++ : ++ else ++ echo *** pkg-config too old; version 0.7 or better required. ++ no_glib=yes ++ PKG_CONFIG=no ++ fi ++ else + no_glib=yes +- PKG_CONFIG=no + fi + + min_glib_version=2.6.0 +@@ -27223,9 +27104,7 @@ + # Put the nasty error message in config.log where it belongs + echo "$OPENSSL_PKG_ERRORS" >&5 + +- { echo "$as_me:$LINENO: result: no" >&5 +-echo "${ECHO_T}no" >&6; } +- ac_cv_enable_openssl=no ++ ac_cv_enable_openssl=no + elif test $pkg_failed = untried; then + ac_cv_enable_openssl=no + else +@@ -27793,6 +27672,11 @@ + + + ++OWL_LIBS="-lowl" ++OLS_CFLAGS="" ++ ++ ++ + # Check whether --enable-aspell was given. + if test "${enable_aspell+set}" = set; then + enableval=$enable_aspell; ac_cv_enable_aspell=$enableval +@@ -28242,9 +28126,7 @@ + # Put the nasty error message in config.log where it belongs + echo "$MAEMO_PKG_ERRORS" >&5 + +- { echo "$as_me:$LINENO: result: no" >&5 +-echo "${ECHO_T}no" >&6; } +- ac_cv_enable_maemo=no ++ ac_cv_enable_maemo=no + elif test $pkg_failed = untried; then + ac_cv_enable_maemo=no + else +@@ -29796,8 +29678,6 @@ + # Put the nasty error message in config.log where it belongs + echo "$STARTUP_NOTIFICATION_PKG_ERRORS" >&5 + +- { echo "$as_me:$LINENO: result: no" >&5 +-echo "${ECHO_T}no" >&6; } + + echo "Building without libstartup-notification" + enable_startup_notification=no +@@ -31300,9 +31180,7 @@ + # Put the nasty error message in config.log where it belongs + echo "$CLAMAV_PKG_ERRORS" >&5 + +- { echo "$as_me:$LINENO: result: no" >&5 +-echo "${ECHO_T}no" >&6; } +- ac_cv_enable_clamav_plugin=no ++ ac_cv_enable_clamav_plugin=no + elif test $pkg_failed = untried; then + ac_cv_enable_clamav_plugin=no + else +@@ -31684,9 +31562,7 @@ + # Put the nasty error message in config.log where it belongs + echo "$GNOMEPRINT_PKG_ERRORS" >&5 + +- { echo "$as_me:$LINENO: result: no" >&5 +-echo "${ECHO_T}no" >&6; } +- ac_cv_enable_gnomeprint=no ++ ac_cv_enable_gnomeprint=no + elif test $pkg_failed = untried; then + ac_cv_enable_gnomeprint=no + else +@@ -31794,9 +31670,7 @@ + # Put the nasty error message in config.log where it belongs + echo "$VALGRIND_PKG_ERRORS" >&5 + +- { echo "$as_me:$LINENO: result: no" >&5 +-echo "${ECHO_T}no" >&6; } +- ac_cv_enable_valgrind=no ++ ac_cv_enable_valgrind=no + elif test $pkg_failed = untried; then + ac_cv_enable_valgrind=no + else +@@ -32884,6 +32758,8 @@ + PASSCRYPT_KEY!$PASSCRYPT_KEY$ac_delim + GTK_CFLAGS!$GTK_CFLAGS$ac_delim + GTK_LIBS!$GTK_LIBS$ac_delim ++OWL_LIBS!$OWL_LIBS$ac_delim ++OWL_CFLAGS!$OWL_CFLAGS$ac_delim + ASPELL!$ASPELL$ac_delim + ASPELL_CFLAGS!$ASPELL_CFLAGS$ac_delim + ASPELL_LIBS!$ASPELL_LIBS$ac_delim +@@ -32904,8 +32780,6 @@ + BUILD_SPAMASSASSIN_PLUGIN_FALSE!$BUILD_SPAMASSASSIN_PLUGIN_FALSE$ac_delim + BUILD_BOGOFILTER_PLUGIN_TRUE!$BUILD_BOGOFILTER_PLUGIN_TRUE$ac_delim + BUILD_BOGOFILTER_PLUGIN_FALSE!$BUILD_BOGOFILTER_PLUGIN_FALSE$ac_delim +-GPGME_CONFIG!$GPGME_CONFIG$ac_delim +-GPGME_CFLAGS!$GPGME_CFLAGS$ac_delim + _ACEOF + + if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then +@@ -32947,6 +32821,8 @@ + ac_delim='%!_!# ' + for ac_last_try in false false false false false :; do + cat >conf$$subs.sed <<_ACEOF ++GPGME_CONFIG!$GPGME_CONFIG$ac_delim ++GPGME_CFLAGS!$GPGME_CFLAGS$ac_delim + GPGME_LIBS!$GPGME_LIBS$ac_delim + BUILD_PGPCORE_PLUGIN_TRUE!$BUILD_PGPCORE_PLUGIN_TRUE$ac_delim + BUILD_PGPCORE_PLUGIN_FALSE!$BUILD_PGPCORE_PLUGIN_FALSE$ac_delim +@@ -32979,7 +32855,7 @@ + LTLIBOBJS!$LTLIBOBJS$ac_delim + _ACEOF + +- if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 30; then ++ if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 32; then + break + elif $ac_last_try; then + { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 +Index: claws-mail-2.9.1/src/Makefile.in +=================================================================== +--- claws-mail-2.9.1.orig/src/Makefile.in 2007-04-25 10:18:13.000000000 +0100 ++++ claws-mail-2.9.1/src/Makefile.in 2007-04-25 10:30:23.000000000 +0100 +@@ -45,8 +45,7 @@ + $(top_srcdir)/m4/aspell.m4 $(top_srcdir)/m4/check-type.m4 \ + $(top_srcdir)/m4/gnupg-check-typedef.m4 \ + $(top_srcdir)/m4/gnupg.m4 $(top_srcdir)/m4/gpgme.m4 \ +- $(top_srcdir)/m4/isc-posix.m4 $(top_srcdir)/m4/spamassassin.m4 \ +- $(top_srcdir)/configure.ac ++ $(top_srcdir)/m4/spamassassin.m4 $(top_srcdir)/configure.ac + am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) + mkinstalldirs = $(SHELL) $(top_srcdir)/config/mkinstalldirs +@@ -122,7 +121,7 @@ + $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_2) \ + $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_2) \ + $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_2) \ +- $(am__DEPENDENCIES_2) ++ $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_2) + claws_mail_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(claws_mail_LDFLAGS) $(LDFLAGS) -o $@ +@@ -272,6 +271,8 @@ + OBJEXT = @OBJEXT@ + OPENSSL_CFLAGS = @OPENSSL_CFLAGS@ + OPENSSL_LIBS = @OPENSSL_LIBS@ ++OWL_CFLAGS = @OWL_CFLAGS@ ++OWL_LIBS = @OWL_LIBS@ + PACKAGE = @PACKAGE@ + PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ + PACKAGE_NAME = @PACKAGE_NAME@ +@@ -815,7 +816,8 @@ + $(LIBICONV) \ + $(STARTUP_NOTIFICATION_LIBS) \ + $(LIBETPAN_LIBS) \ +- $(MAEMO_LIBS) ++ $(MAEMO_LIBS) \ ++ $(OWL_LIBS) + + AM_CPPFLAGS = \ + -DG_LOG_DOMAIN=\"Claws-Mail\" \ +@@ -833,7 +835,7 @@ + $(LIBETPAN_CPPFLAGS) \ + $(STARTUP_NOTIFICATION_CFLAGS) \ + $(MAEMO_CFLAGS) \ +- -Wno-unused-function ++ $(OWL_CFLAGS) + + + #no-unused-function is there because of bison stuff +@@ -1406,6 +1408,7 @@ + install-exec-hook: + @rm -f $(DESTDIR)$(bindir)/sylpheed-claws + @ln -s claws-mail $(DESTDIR)$(bindir)/sylpheed-claws ++ -Wno-unused-function + + @CYGWIN_TRUE@claws-mail$(EXEEXT): $(claws_mail_OBJECTS) $(claws_mail_DEPENDENCIES) + @CYGWIN_TRUE@ @rm -f claws-mail$(EXEEXT) +Index: claws-mail-2.9.1/autogen.sh +=================================================================== +--- claws-mail-2.9.1.orig/autogen.sh 2007-04-25 10:18:13.000000000 +0100 ++++ claws-mail-2.9.1/autogen.sh 2007-04-25 10:30:23.000000000 +0100 +@@ -74,5 +74,4 @@ + && libtoolize --force --copy \ + && autoheader \ + && automake --add-missing --foreign --copy \ +- && autoconf \ +- && ./configure --enable-maintainer-mode $@ ++ && autoconf +Index: claws-mail-2.9.1/src/compose.c +=================================================================== +--- claws-mail-2.9.1.orig/src/compose.c 2007-04-25 10:18:13.000000000 +0100 ++++ claws-mail-2.9.1/src/compose.c 2007-04-25 10:30:23.000000000 +0100 +@@ -6192,7 +6192,6 @@ + n_menu_entries = sizeof(compose_entries) / sizeof(compose_entries[0]); + menubar = menubar_create(window, compose_entries, + n_menu_entries, "", compose); +- gtk_box_pack_start(GTK_BOX(vbox), menubar, FALSE, TRUE, 0); + + handlebox = gtk_hbox_new(FALSE, 0); + gtk_box_pack_start(GTK_BOX(vbox), handlebox, FALSE, FALSE, 0); diff --git a/meta/recipes-sato/claws-mail/files/streamline-ui.patch b/meta/recipes-sato/claws-mail/files/streamline-ui.patch new file mode 100644 index 0000000000..29a52ff795 --- /dev/null +++ b/meta/recipes-sato/claws-mail/files/streamline-ui.patch @@ -0,0 +1,1008 @@ +Index: claws-mail-2.9.1/src/mainwindow.c +=================================================================== +--- claws-mail-2.9.1.orig/src/mainwindow.c 2007-04-25 07:40:10.000000000 +0100 ++++ claws-mail-2.9.1/src/mainwindow.c 2007-04-25 10:26:40.000000000 +0100 +@@ -189,9 +189,6 @@ + static void toggle_statusbar_cb (MainWindow *mainwin, + guint action, + GtkWidget *widget); +-static void set_layout_cb (MainWindow *mainwin, +- guint action, +- GtkWidget *widget); + + static void addressbook_open_cb (MainWindow *mainwin, + guint action, +@@ -538,94 +535,24 @@ + {N_("/_Edit/_Search folder..."), "F", search_cb, 1, NULL}, + {N_("/_Edit/_Quick search"), "slash", mainwindow_quicksearch, 0, NULL}, + {N_("/_View"), NULL, NULL, 0, ""}, +- {N_("/_View/Show or hi_de"), NULL, NULL, 0, ""}, +- {N_("/_View/Show or hi_de/_Message view"), +- "V", toggle_message_cb, 0, ""}, +- {N_("/_View/Show or hi_de/_Toolbar"), +- NULL, NULL, 0, ""}, +- {N_("/_View/Show or hi_de/_Toolbar/Text _below icons"), +- NULL, toggle_toolbar_cb, TOOLBAR_BOTH, ""}, +- {N_("/_View/Show or hi_de/_Toolbar/Text be_side icons"), +- NULL, toggle_toolbar_cb, TOOLBAR_BOTH_HORIZ, "/View/Show or hide/Toolbar/Text below icons"}, +- {N_("/_View/Show or hi_de/_Toolbar/_Icons only"), +- NULL, toggle_toolbar_cb, TOOLBAR_ICON, "/View/Show or hide/Toolbar/Text below icons"}, +- {N_("/_View/Show or hi_de/_Toolbar/_Text only"), +- NULL, toggle_toolbar_cb, TOOLBAR_TEXT, "/View/Show or hide/Toolbar/Text below icons"}, +- {N_("/_View/Show or hi_de/_Toolbar/_Hide"), +- NULL, toggle_toolbar_cb, TOOLBAR_NONE, "/View/Show or hide/Toolbar/Text below icons"}, +- {N_("/_View/Show or hi_de/Status _bar"), +- NULL, toggle_statusbar_cb, 0, ""}, + {N_("/_View/Set displayed _columns"), NULL, NULL, 0, ""}, + {N_("/_View/Set displayed _columns/in _Folder list..."), NULL, set_folder_display_item_cb, 0, NULL}, + {N_("/_View/Set displayed _columns/in _Message list..."),NULL, set_summary_display_item_cb, 0, NULL}, + + {N_("/_View/---"), NULL, NULL, 0, ""}, +- {N_("/_View/La_yout"), NULL, NULL, 0, ""}, +- {N_("/_View/Layout/_Standard"), NULL, set_layout_cb, NORMAL_LAYOUT, ""}, +- {N_("/_View/Layout/_Three columns"), NULL, set_layout_cb, VERTICAL_LAYOUT, "/View/Layout/Standard"}, +- {N_("/_View/Layout/_Wide message"), NULL, set_layout_cb, WIDE_LAYOUT, "/View/Layout/Standard"}, +- {N_("/_View/Layout/W_ide message list"),NULL, set_layout_cb, WIDE_MSGLIST_LAYOUT, "/View/Layout/Standard"}, +- {N_("/_View/Layout/S_mall screen"), NULL, set_layout_cb, SMALL_LAYOUT, "/View/Layout/Standard"}, +- {N_("/_View/---"), NULL, NULL, 0, ""}, + {N_("/_View/_Sort"), NULL, NULL, 0, ""}, +- {N_("/_View/_Sort/by _number"), NULL, sort_summary_cb, SORT_BY_NUMBER, ""}, +- {N_("/_View/_Sort/by S_ize"), NULL, sort_summary_cb, SORT_BY_SIZE, "/View/Sort/by number"}, +- {N_("/_View/_Sort/by _Date"), NULL, sort_summary_cb, SORT_BY_DATE, "/View/Sort/by number"}, +- {N_("/_View/_Sort/by _From"), NULL, sort_summary_cb, SORT_BY_FROM, "/View/Sort/by number"}, +- {N_("/_View/_Sort/by _To"), NULL, sort_summary_cb, SORT_BY_TO, "/View/Sort/by number"}, +- {N_("/_View/_Sort/by S_ubject"), NULL, sort_summary_cb, SORT_BY_SUBJECT, "/View/Sort/by number"}, +- {N_("/_View/_Sort/by _color label"), +- NULL, sort_summary_cb, SORT_BY_LABEL, "/View/Sort/by number"}, +- {N_("/_View/_Sort/by _mark"), NULL, sort_summary_cb, SORT_BY_MARK, "/View/Sort/by number"}, +- {N_("/_View/_Sort/by _status"), NULL, sort_summary_cb, SORT_BY_STATUS, "/View/Sort/by number"}, +- {N_("/_View/_Sort/by a_ttachment"), +- NULL, sort_summary_cb, SORT_BY_MIME, "/View/Sort/by number"}, +- {N_("/_View/_Sort/by score"), NULL, sort_summary_cb, SORT_BY_SCORE, "/View/Sort/by number"}, +- {N_("/_View/_Sort/by locked"), NULL, sort_summary_cb, SORT_BY_LOCKED, "/View/Sort/by number"}, +- {N_("/_View/_Sort/D_on't sort"), NULL, sort_summary_cb, SORT_BY_NONE, "/View/Sort/by number"}, ++ {N_("/_View/_Sort/by _Date"), NULL, sort_summary_cb, SORT_BY_DATE, ""}, ++ {N_("/_View/_Sort/by _From"), NULL, sort_summary_cb, SORT_BY_FROM, "/View/Sort/by Date"}, ++ {N_("/_View/_Sort/by _To"), NULL, sort_summary_cb, SORT_BY_TO, "/View/Sort/by Date"}, ++ {N_("/_View/_Sort/by S_ubject"), NULL, sort_summary_cb, SORT_BY_SUBJECT, "/View/Sort/by Date"}, + {N_("/_View/_Sort/---"), NULL, NULL, 0, ""}, + {N_("/_View/_Sort/Ascending"), NULL, sort_summary_type_cb, SORT_ASCENDING, ""}, + {N_("/_View/_Sort/Descending"), NULL, sort_summary_type_cb, SORT_DESCENDING, "/View/Sort/Ascending"}, +- {N_("/_View/_Sort/---"), NULL, NULL, 0, ""}, +- {N_("/_View/_Sort/_Attract by subject"), +- NULL, attract_by_subject_cb, 0, NULL}, + {N_("/_View/Th_read view"), "T", thread_cb, 0, ""}, + {N_("/_View/E_xpand all threads"), NULL, expand_threads_cb, 0, NULL}, + {N_("/_View/Co_llapse all threads"), NULL, collapse_threads_cb, 0, NULL}, + {N_("/_View/_Hide read messages"), NULL, hide_read_messages, 0, ""}, + +- {N_("/_View/---"), NULL, NULL, 0, ""}, +- {N_("/_View/_Go to"), NULL, NULL, 0, ""}, +- {N_("/_View/_Go to/_Previous message"), "P", prev_cb, 0, NULL}, +- {N_("/_View/_Go to/_Next message"), "N", next_cb, 0, NULL}, +- {N_("/_View/_Go to/---"), NULL, NULL, 0, ""}, +- {N_("/_View/_Go to/P_revious unread message"), +- "P", prev_unread_cb, 0, NULL}, +- {N_("/_View/_Go to/N_ext unread message"), +- "N", next_unread_cb, 0, NULL}, +- {N_("/_View/_Go to/---"), NULL, NULL, 0, ""}, +- {N_("/_View/_Go to/Previous ne_w message"), NULL, prev_new_cb, 0, NULL}, +- {N_("/_View/_Go to/Ne_xt new message"), NULL, next_new_cb, 0, NULL}, +- {N_("/_View/_Go to/---"), NULL, NULL, 0, ""}, +- {N_("/_View/_Go to/Previous _marked message"), +- NULL, prev_marked_cb, 0, NULL}, +- {N_("/_View/_Go to/Next m_arked message"), +- NULL, next_marked_cb, 0, NULL}, +- {N_("/_View/_Go to/---"), NULL, NULL, 0, ""}, +- {N_("/_View/_Go to/Previous _labeled message"), +- NULL, prev_labeled_cb, 0, NULL}, +- {N_("/_View/_Go to/Next la_beled message"), +- NULL, next_labeled_cb, 0, NULL}, +- {N_("/_View/_Go to/---"), NULL, NULL, 0, ""}, +- {N_("/_View/_Go to/Last read message"), +- NULL, last_read_cb, 0, NULL}, +- {N_("/_View/_Go to/Parent message"), +- "Up", parent_cb, 0, NULL}, +- {N_("/_View/_Go to/---"), NULL, NULL, 0, ""}, +- {N_("/_View/_Go to/Next unread _folder"), "G", goto_unread_folder_cb, 0, NULL}, +- {N_("/_View/_Go to/_Other folder..."), "G", goto_folder_cb, 0, NULL}, +- {N_("/_View/---"), NULL, NULL, 0, ""}, +- + #define ENC_SEPARATOR \ + {N_("/_View/Character _encoding/---"), NULL, NULL, 0, ""} + #define ENC_ACTION(action) \ +@@ -742,7 +669,6 @@ + #undef DEC_ACTION + + {N_("/_View/---"), NULL, NULL, 0, ""}, +- {N_("/_View/Open in new _window"), "N", open_msg_cb, 0, NULL}, + {N_("/_View/Mess_age source"), "U", view_source_cb, 0, NULL}, + {N_("/_View/All headers"), "H", show_all_header_cb, 0, ""}, + {N_("/_View/Quotes"), NULL, NULL, 0, ""}, +@@ -1137,23 +1063,14 @@ + gint i; + guint n_menu_entries; + +- static GdkGeometry geometry; +- + debug_print("Creating main window...\n"); + mainwin = g_new0(MainWindow, 1); + + /* main window */ + window = gtkut_window_new(GTK_WINDOW_TOPLEVEL, "mainwindow"); +- gtk_window_set_title(GTK_WINDOW(window), PROG_VERSION); ++ gtk_window_set_title(GTK_WINDOW(window), _("Mail")); + gtk_window_set_resizable(GTK_WINDOW(window), TRUE); + +- if (!geometry.min_height) { +- geometry.min_width = 320; +- geometry.min_height = 200; +- } +- gtk_window_set_geometry_hints(GTK_WINDOW(window), NULL, &geometry, +- GDK_HINT_MIN_SIZE); +- + g_signal_connect(G_OBJECT(window), "delete_event", + G_CALLBACK(main_window_close_cb), mainwin); + MANAGE_WINDOW_SIGNALS_CONNECT(window); +@@ -1184,21 +1101,9 @@ + /* gtk_widget_show(gtk_item_factory_get_item(ifactory,"/Message/Mailing-List")); + main_create_mailing_list_menu (mainwin, NULL); */ + +- menu_set_sensitive(ifactory, "/Help/Manual", manual_available(MANUAL_MANUAL_LOCAL)); +- +- if (prefs_common.toolbar_detachable) { +- handlebox = gtk_handle_box_new(); +- gtk_widget_show(handlebox); +- gtk_box_pack_start(GTK_BOX(vbox), handlebox, FALSE, FALSE, 0); +- g_signal_connect(G_OBJECT(handlebox), "child_attached", +- G_CALLBACK(toolbar_child_attached), mainwin); +- g_signal_connect(G_OBJECT(handlebox), "child_detached", +- G_CALLBACK(toolbar_child_detached), mainwin); +- } else { +- handlebox = gtk_hbox_new(FALSE, 0); +- gtk_widget_show(handlebox); +- gtk_box_pack_start(GTK_BOX(vbox), handlebox, FALSE, FALSE, 0); +- } ++ handlebox = gtk_hbox_new(FALSE, 0); ++ gtk_widget_show(handlebox); ++ gtk_box_pack_start(GTK_BOX(vbox), handlebox, FALSE, FALSE, 0); + /* link window to mainwin->window to avoid gdk warnings */ + mainwin->window = window; + +@@ -1405,36 +1310,6 @@ + (ifactory, "/View/Character encoding/Auto detect"); + gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), TRUE); + +- switch (prefs_common.toolbar_style) { +- case TOOLBAR_NONE: +- menuitem = gtk_item_factory_get_item +- (ifactory, "/View/Show or hide/Toolbar/Hide"); +- break; +- case TOOLBAR_ICON: +- menuitem = gtk_item_factory_get_item +- (ifactory, "/View/Show or hide/Toolbar/Icons only"); +- break; +- case TOOLBAR_TEXT: +- menuitem = gtk_item_factory_get_item +- (ifactory, "/View/Show or hide/Toolbar/Text only"); +- break; +- case TOOLBAR_BOTH: +- menuitem = gtk_item_factory_get_item +- (ifactory, "/View/Show or hide/Toolbar/Text below icons"); +- break; +- case TOOLBAR_BOTH_HORIZ: +- menuitem = gtk_item_factory_get_item +- (ifactory, +- "/View/Show or hide/Toolbar/Text beside icons"); +- } +- gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), TRUE); +- +- gtk_widget_hide(mainwin->hbox_stat); +- menuitem = gtk_item_factory_get_item +- (ifactory, "/View/Show or hide/Status bar"); +- gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), +- prefs_common.show_statusbar); +- + /* set account selection menu */ + ac_menu = gtk_item_factory_get_widget + (ifactory, "/Configuration/Change current account"); +@@ -2284,16 +2159,6 @@ + {"/View/Expand all threads" , M_MSG_EXIST}, + {"/View/Collapse all threads" , M_MSG_EXIST}, + {"/View/Hide read messages" , M_HIDE_READ_MSG}, +- {"/View/Go to/Previous message" , M_MSG_EXIST}, +- {"/View/Go to/Next message" , M_MSG_EXIST}, +- {"/View/Go to/Previous unread message" , M_MSG_EXIST}, +- {"/View/Go to/Previous new message" , M_MSG_EXIST}, +- {"/View/Go to/Previous marked message" , M_MSG_EXIST}, +- {"/View/Go to/Previous labeled message", M_MSG_EXIST}, +- {"/View/Go to/Next labeled message", M_MSG_EXIST}, +- {"/View/Go to/Last read message" , M_SINGLE_TARGET_EXIST}, +- {"/View/Go to/Parent message" , M_SINGLE_TARGET_EXIST}, +- {"/View/Open in new window" , M_SINGLE_TARGET_EXIST}, + {"/View/Message source" , M_SINGLE_TARGET_EXIST}, + {"/View/All headers" , M_SINGLE_TARGET_EXIST}, + {"/View/Quotes" , M_SINGLE_TARGET_EXIST}, +@@ -2379,40 +2244,20 @@ + gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), active); \ + } + +- SET_CHECK_MENU_ACTIVE("/View/Show or hide/Message view", +- messageview_is_visible(mainwin->messageview)); +- + summaryview = mainwin->summaryview; +- menu_path = "/View/Sort/Don't sort"; ++ menu_path = "/View/Sort/by Date"; + + switch (summaryview->sort_key) { +- case SORT_BY_NUMBER: +- menu_path = "/View/Sort/by number"; break; +- case SORT_BY_SIZE: +- menu_path = "/View/Sort/by Size"; break; +- case SORT_BY_DATE: +- menu_path = "/View/Sort/by Date"; break; + case SORT_BY_FROM: + menu_path = "/View/Sort/by From"; break; + case SORT_BY_TO: + menu_path = "/View/Sort/by To"; break; + case SORT_BY_SUBJECT: + menu_path = "/View/Sort/by Subject"; break; +- case SORT_BY_LABEL: +- menu_path = "/View/Sort/by color label"; break; +- case SORT_BY_MARK: +- menu_path = "/View/Sort/by mark"; break; +- case SORT_BY_STATUS: +- menu_path = "/View/Sort/by status"; break; +- case SORT_BY_MIME: +- menu_path = "/View/Sort/by attachment"; break; +- case SORT_BY_SCORE: +- menu_path = "/View/Sort/by score"; break; +- case SORT_BY_LOCKED: +- menu_path = "/View/Sort/by locked"; break; + case SORT_BY_NONE: ++ case SORT_BY_DATE: + default: +- menu_path = "/View/Sort/Don't sort"; break; ++ menu_path = "/View/Sort/by Date"; break; + } + SET_CHECK_MENU_ACTIVE(menu_path, TRUE); + +@@ -2735,8 +2580,6 @@ + gtk_widget_destroy(mainwin->hpaned); + } + +- menu_set_sensitive(ifactory, "/View/Show or hide/Message view", +- (layout_mode != WIDE_MSGLIST_LAYOUT && layout_mode != SMALL_LAYOUT)); + switch (layout_mode) { + case VERTICAL_LAYOUT: + case NORMAL_LAYOUT: +@@ -2877,37 +2720,6 @@ + + prefs_common.layout_mode = layout_mode; + +- menuitem = gtk_item_factory_get_item +- (ifactory, "/View/Show or hide/Message view"); +- gtk_check_menu_item_set_active +- (GTK_CHECK_MENU_ITEM(menuitem), +- messageview_is_visible(mainwin->messageview)); +- +-#define SET_CHECK_MENU_ACTIVE(path, active) \ +-{ \ +- menuitem = gtk_item_factory_get_widget(ifactory, path); \ +- gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), active); \ +-} +- +- switch (prefs_common.layout_mode) { +- case NORMAL_LAYOUT: +- SET_CHECK_MENU_ACTIVE("/View/Layout/Standard", TRUE); +- break; +- case VERTICAL_LAYOUT: +- SET_CHECK_MENU_ACTIVE("/View/Layout/Three columns", TRUE); +- break; +- case WIDE_LAYOUT: +- SET_CHECK_MENU_ACTIVE("/View/Layout/Wide message", TRUE); +- break; +- case WIDE_MSGLIST_LAYOUT: +- SET_CHECK_MENU_ACTIVE("/View/Layout/Wide message list", TRUE); +- break; +- case SMALL_LAYOUT: +- SET_CHECK_MENU_ACTIVE("/View/Layout/Small screen", TRUE); +- break; +- } +-#undef SET_CHECK_MENU_ACTIVE +- + if (folderwin) { + g_signal_connect + (G_OBJECT(folderwin), "size_allocate", +@@ -3116,12 +2928,6 @@ + summary_toggle_view(mainwin->summaryview); + } + +-static void toggle_toolbar_cb(MainWindow *mainwin, guint action, +- GtkWidget *widget) +-{ +- toolbar_toggle(action, mainwin); +-} +- + static void main_window_reply_cb(MainWindow *mainwin, guint action, + GtkWidget *widget) + { +Index: claws-mail-2.9.1/src/prefs_common.c +=================================================================== +--- claws-mail-2.9.1.orig/src/prefs_common.c 2007-04-25 07:40:10.000000000 +0100 ++++ claws-mail-2.9.1/src/prefs_common.c 2007-04-25 07:42:17.000000000 +0100 +@@ -262,7 +262,7 @@ + {"default_reply_list", "TRUE", &prefs_common.default_reply_list, P_BOOL, + NULL, NULL, NULL}, + +-#ifndef MAEMO ++#if 0 + {"show_ruler", "TRUE", &prefs_common.show_ruler, P_BOOL, + NULL, NULL, NULL}, + #else +@@ -300,7 +300,7 @@ + &prefs_common.normalfont_gtk1, P_STRING, NULL, NULL, NULL}, + + /* new fonts */ +-#ifndef MAEMO ++#if 0 + {"widget_font_gtk2", NULL, + &SPECIFIC_PREFS.widgetfont, P_STRING, NULL, NULL, NULL}, + {"message_font_gtk2", "Monospace 9", +@@ -416,7 +416,7 @@ + + {"enable_thread", "TRUE", &prefs_common.enable_thread, P_BOOL, + NULL, NULL, NULL}, +-#ifndef MAEMO ++#if 0 + {"toolbar_style", "3", &prefs_common.toolbar_style, P_ENUM, + NULL, NULL, NULL}, + #else +@@ -544,7 +544,7 @@ + {"folder_col_pos_total", "3", + &prefs_common.folder_col_pos[F_COL_TOTAL], P_INT, NULL, NULL, NULL}, + +-#ifndef MAEMO ++#if 0 + {"folder_col_size_folder", "120", + &prefs_common.folder_col_size[F_COL_FOLDER], P_INT, NULL, NULL, NULL}, + {"folder_col_size_new", "32", +@@ -702,7 +702,7 @@ + &SPECIFIC_PREFS.mime_open_cmd, P_STRING, NULL, NULL, NULL}, + + /* Interface */ +-#ifndef MAEMO ++#if 0 + {"layout_mode", "0", &prefs_common.layout_mode, P_INT, + NULL, NULL, NULL}, + #else +Index: claws-mail-2.9.1/src/toolbar.c +=================================================================== +--- claws-mail-2.9.1.orig/src/toolbar.c 2007-04-25 07:40:10.000000000 +0100 ++++ claws-mail-2.9.1/src/toolbar.c 2007-04-25 07:42:17.000000000 +0100 +@@ -841,26 +841,17 @@ + gtk_widget_hide(handlebox_wid); + break; + case TOOLBAR_ICON: +- gtk_toolbar_set_style(GTK_TOOLBAR(toolbar_wid), +- GTK_TOOLBAR_ICONS); +- break; + case TOOLBAR_TEXT: +- gtk_toolbar_set_style(GTK_TOOLBAR(toolbar_wid), +- GTK_TOOLBAR_TEXT); +- break; + case TOOLBAR_BOTH: +- gtk_toolbar_set_style(GTK_TOOLBAR(toolbar_wid), +- GTK_TOOLBAR_BOTH); +- break; + case TOOLBAR_BOTH_HORIZ: + gtk_toolbar_set_style(GTK_TOOLBAR(toolbar_wid), +- GTK_TOOLBAR_BOTH_HORIZ); ++ GTK_TOOLBAR_ICONS); + break; + default: + return; + } + +- prefs_common.toolbar_style = (ToolbarStyle)action; ++ prefs_common.toolbar_style = (ToolbarStyle)TOOLBAR_ICON; + gtk_widget_set_size_request(handlebox_wid, 1, -1); + + if (prefs_common.toolbar_style != TOOLBAR_NONE) { +@@ -1594,7 +1585,7 @@ + gtk_container_add(GTK_CONTAINER(container), toolbar); + gtk_container_set_border_width(GTK_CONTAINER(container), 2); + gtk_toolbar_set_orientation(GTK_TOOLBAR(toolbar), GTK_ORIENTATION_HORIZONTAL); +- gtk_toolbar_set_style(GTK_TOOLBAR(toolbar), GTK_TOOLBAR_BOTH); ++ gtk_toolbar_set_style(GTK_TOOLBAR(toolbar), GTK_TOOLBAR_ICONS); + + for (cur = toolbar_list; cur != NULL; cur = cur->next) { + +Index: claws-mail-2.9.1/src/gtk/prefswindow.c +=================================================================== +--- claws-mail-2.9.1.orig/src/gtk/prefswindow.c 2007-04-25 07:40:10.000000000 +0100 ++++ claws-mail-2.9.1/src/gtk/prefswindow.c 2007-04-25 10:30:15.000000000 +0100 +@@ -343,6 +343,10 @@ + gint x = gdk_screen_width(); + gint y = gdk_screen_height(); + static GdkGeometry geometry; ++ gint col_count = g_slist_length (prefs_pages); ++ ++ if (col_count > 1) ++ col_count = 2; + + prefswindow = g_new0(PrefsWindow, 1); + +@@ -360,39 +364,52 @@ + gtk_window_set_resizable (GTK_WINDOW(prefswindow->window), TRUE); + gtk_container_set_border_width(GTK_CONTAINER(prefswindow->window), 4); + +- prefswindow->table1 = gtk_table_new(2, 2, FALSE); ++ prefswindow->table1 = gtk_table_new(col_count, col_count, FALSE); + gtk_widget_show(prefswindow->table1); + gtk_container_add(GTK_CONTAINER(prefswindow->window), prefswindow->table1); + +- prefswindow->scrolledwindow1 = gtk_scrolled_window_new(NULL, NULL); +- gtk_widget_show(prefswindow->scrolledwindow1); +- gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(prefswindow->scrolledwindow1), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); +- gtk_table_attach(GTK_TABLE(prefswindow->table1), prefswindow->scrolledwindow1, 0, 1, 0, 1, GTK_FILL, GTK_FILL | GTK_EXPAND, 2, 2); +- +- prefswindow->tree_view = prefswindow_tree_view_create(prefswindow); +- gtk_widget_show(prefswindow->tree_view); +- gtk_container_add(GTK_CONTAINER(prefswindow->scrolledwindow1), +- prefswindow->tree_view); +- +- prefswindow->frame = gtk_frame_new(NULL); +- gtk_widget_show(prefswindow->frame); +- gtk_frame_set_shadow_type(GTK_FRAME(prefswindow->frame), GTK_SHADOW_IN); +- gtk_table_attach(GTK_TABLE(prefswindow->table1), prefswindow->frame, 1, 2, 0, 1, GTK_FILL | GTK_EXPAND, GTK_FILL | GTK_EXPAND, 2, 2); +- +- prefswindow->table2 = gtk_table_new(1, 2, FALSE); +- gtk_widget_show(prefswindow->table2); +- gtk_container_add(GTK_CONTAINER(prefswindow->frame), prefswindow->table2); +- +- prefswindow->labelframe = gtk_frame_new(NULL); +- gtk_widget_show(prefswindow->labelframe); +- gtk_frame_set_shadow_type(GTK_FRAME(prefswindow->labelframe), GTK_SHADOW_OUT); +- gtk_table_attach(GTK_TABLE(prefswindow->table2), prefswindow->labelframe, 0, 1, 0, 1, GTK_FILL | GTK_EXPAND, GTK_FILL, 1, 1); +- +- prefswindow->pagelabel = gtk_label_new(""); +- gtk_widget_show(prefswindow->pagelabel); +- gtk_label_set_justify(GTK_LABEL(prefswindow->pagelabel), GTK_JUSTIFY_LEFT); +- gtk_misc_set_alignment(GTK_MISC(prefswindow->pagelabel), 0, 0.0); +- gtk_container_add(GTK_CONTAINER(prefswindow->labelframe), prefswindow->pagelabel); ++ if (col_count > 1) ++ { ++ prefswindow->scrolledwindow1 = gtk_scrolled_window_new(NULL, NULL); ++ gtk_widget_show(prefswindow->scrolledwindow1); ++ gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(prefswindow->scrolledwindow1), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); ++ gtk_table_attach(GTK_TABLE(prefswindow->table1), prefswindow->scrolledwindow1, 0, 1, 0, 1, GTK_FILL, GTK_FILL | GTK_EXPAND, 2, 2); ++ ++ prefswindow->tree_view = prefswindow_tree_view_create(prefswindow); ++ gtk_widget_show(prefswindow->tree_view); ++ gtk_container_add(GTK_CONTAINER(prefswindow->scrolledwindow1), ++ prefswindow->tree_view); ++ ++ prefswindow->frame = gtk_frame_new(NULL); ++ gtk_widget_show(prefswindow->frame); ++ gtk_frame_set_shadow_type(GTK_FRAME(prefswindow->frame), GTK_SHADOW_IN); ++ gtk_table_attach(GTK_TABLE(prefswindow->table1), prefswindow->frame, col_count - 1, col_count, 0, 1, GTK_FILL | GTK_EXPAND, GTK_FILL | GTK_EXPAND, 2, 2); ++ ++ prefswindow->table2 = gtk_table_new(1, 2, FALSE); ++ gtk_widget_show(prefswindow->table2); ++ gtk_container_add(GTK_CONTAINER(prefswindow->frame), prefswindow->table2); ++ } ++ else ++ { ++ prefswindow->table2 = gtk_table_new(1, 2, FALSE); ++ gtk_widget_show(prefswindow->table2); ++ gtk_table_attach(GTK_TABLE(prefswindow->table1), prefswindow->table2, 0, 1, 0, 1, GTK_FILL | GTK_EXPAND, GTK_FILL | GTK_EXPAND, 2, 2); ++ } ++ ++ ++ if (col_count > 1) ++ { ++ prefswindow->labelframe = gtk_frame_new(NULL); ++ gtk_widget_show(prefswindow->labelframe); ++ gtk_frame_set_shadow_type(GTK_FRAME(prefswindow->labelframe), GTK_SHADOW_OUT); ++ gtk_table_attach(GTK_TABLE(prefswindow->table2), prefswindow->labelframe, 0, 1, 0, 1, GTK_FILL | GTK_EXPAND, GTK_FILL, 1, 1); ++ ++ prefswindow->pagelabel = gtk_label_new(""); ++ gtk_widget_show(prefswindow->pagelabel); ++ gtk_label_set_justify(GTK_LABEL(prefswindow->pagelabel), GTK_JUSTIFY_LEFT); ++ gtk_misc_set_alignment(GTK_MISC(prefswindow->pagelabel), 0, 0.0); ++ gtk_container_add(GTK_CONTAINER(prefswindow->labelframe), prefswindow->pagelabel); ++ } + + prefswindow->scrolledwindow2 = gtk_scrolled_window_new(NULL, NULL); + gtk_widget_show(prefswindow->scrolledwindow2); +@@ -411,9 +428,38 @@ + gtk_widget_show(prefswindow->empty_page); + gtk_container_add(GTK_CONTAINER(prefswindow->notebook), prefswindow->empty_page); + +- prefswindow_build_tree(prefswindow->tree_view, prefs_pages); ++ if (col_count > 1) ++ { ++ prefswindow_build_tree(prefswindow->tree_view, prefs_pages); ++ ++ gtk_widget_grab_focus(prefswindow->tree_view); ++ } ++ else ++ { ++ PrefsPage * page = prefs_pages->data; ++ gint pagenum; ++ GtkAdjustment *adj; ++ ++ if (!page->page_open) ++ { ++ page->create_widget(page, ++ GTK_WINDOW(prefswindow->window), ++ prefswindow->data); ++ gtk_container_add(GTK_CONTAINER(prefswindow->notebook), ++ page->widget); ++ page->page_open = TRUE; ++ } ++ ++ pagenum = gtk_notebook_page_num(GTK_NOTEBOOK(prefswindow->notebook), ++ page->widget); ++ gtk_notebook_set_current_page(GTK_NOTEBOOK(prefswindow->notebook), ++ pagenum); + +- gtk_widget_grab_focus(prefswindow->tree_view); ++ adj = gtk_scrolled_window_get_vadjustment( ++ GTK_SCROLLED_WINDOW(prefswindow->scrolledwindow2)); ++ gtk_adjustment_set_value(adj, 0); ++ ++ } + + gtkut_stock_button_set_create(&prefswindow->confirm_area, + &prefswindow->apply_btn, GTK_STOCK_APPLY, +@@ -440,28 +486,6 @@ + G_CALLBACK(prefswindow_key_pressed), &(prefswindow->window)); + #endif + +- /* connect to callback only if we hhave non-NULL pointers to store size to */ +- if (prefswindow->save_width && prefswindow->save_height) { +- g_signal_connect(G_OBJECT(prefswindow->window), "size_allocate", +- G_CALLBACK(prefs_size_allocate_cb), prefswindow); +- } +- +- if (!geometry.min_height) { +- +- if (x < 800 && y < 600) { +- geometry.min_width = 600; +- geometry.min_height = 440; +- } else { +- geometry.min_width = 700; +- geometry.min_height = 550; +- } +- } +- gtk_window_set_geometry_hints(GTK_WINDOW(prefswindow->window), NULL, &geometry, +- GDK_HINT_MIN_SIZE); +- if (prefswindow->save_width && prefswindow->save_height) { +- gtk_widget_set_size_request(prefswindow->window, *(prefswindow->save_width), +- *(prefswindow->save_height)); +- } + + gtk_widget_show(prefswindow->window); + #ifdef MAEMO +Index: claws-mail-2.9.1/src/compose.c +=================================================================== +--- claws-mail-2.9.1.orig/src/compose.c 2007-04-25 07:40:10.000000000 +0100 ++++ claws-mail-2.9.1/src/compose.c 2007-04-25 10:18:13.000000000 +0100 +@@ -352,9 +352,6 @@ + + /* callback functions */ + +-static gboolean compose_edit_size_alloc (GtkEditable *widget, +- GtkAllocation *allocation, +- GtkSHRuler *shruler); + static void account_activated (GtkComboBox *optmenu, + gpointer data); + static void attach_selected (GtkTreeView *tree_view, +@@ -439,9 +436,6 @@ + guint action, + GtkWidget *widget); + +-static void compose_toggle_ruler_cb (gpointer data, +- guint action, +- GtkWidget *widget); + static void compose_toggle_sign_cb (gpointer data, + guint action, + GtkWidget *widget); +@@ -788,7 +782,6 @@ + ENC_ACTION(C_WINDOWS_874)}, + + {N_("/_Tools"), NULL, NULL, 0, ""}, +- {N_("/_Tools/Show _ruler"), NULL, compose_toggle_ruler_cb, 0, ""}, + {N_("/_Tools/_Address book"), "A", compose_address_cb , 0, NULL}, + {N_("/_Tools/_Template"), NULL, NULL, 0, ""}, + {N_("/_Tools/Actio_ns"), NULL, NULL, 0, ""}, +@@ -2067,7 +2060,6 @@ + menu_set_sensitive(ifactory, "/Message/Insert signature", FALSE); + menu_set_sensitive(ifactory, "/Edit", FALSE); + menu_set_sensitive(ifactory, "/Options", FALSE); +- menu_set_sensitive(ifactory, "/Tools/Show ruler", FALSE); + menu_set_sensitive(ifactory, "/Tools/Actions", FALSE); + + if (compose->toolbar->draft_btn) +@@ -5684,7 +5676,7 @@ + g_signal_connect(G_OBJECT(GTK_COMBO(combo)->entry), "grab_focus", + G_CALLBACK(compose_grab_focus_cb), compose); + gtk_widget_show(combo); +- gtk_table_attach(GTK_TABLE(compose->header_table), combo, 0, 1, compose->header_nextrow, compose->header_nextrow+1, GTK_SHRINK, GTK_FILL, 0, 0); ++ gtk_table_attach(GTK_TABLE(compose->header_table), combo, 0, 1, compose->header_nextrow, compose->header_nextrow+1, GTK_FILL, GTK_FILL, 0, 0); + if (compose->header_last) { + const gchar *last_header_entry = gtk_entry_get_text(GTK_ENTRY(GTK_COMBO(compose->header_last->combo)->entry)); + string = headers; +@@ -5778,7 +5770,7 @@ + + static GtkWidget *compose_create_header(Compose *compose) + { +- GtkWidget *from_optmenu_hbox; ++ GtkWidget *from_optmenu; + GtkWidget *header_scrolledwin; + GtkWidget *header_table; + +@@ -5788,18 +5780,20 @@ + header_scrolledwin = gtk_scrolled_window_new(NULL, NULL); + gtk_widget_show(header_scrolledwin); + gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(header_scrolledwin), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); +- + header_table = gtk_table_new(2, 2, FALSE); ++ gtk_table_set_col_spacings (GTK_TABLE (header_table), BORDER_WIDTH); + gtk_widget_show(header_table); + gtk_container_set_border_width(GTK_CONTAINER(header_table), BORDER_WIDTH); + gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(header_scrolledwin), header_table); +- gtk_viewport_set_shadow_type(GTK_VIEWPORT(GTK_BIN(header_scrolledwin)->child), GTK_SHADOW_ETCHED_IN); ++ gtk_viewport_set_shadow_type(GTK_VIEWPORT(GTK_BIN(header_scrolledwin)->child), GTK_SHADOW_NONE); + count = 0; + + /* option menu for selecting accounts */ +- from_optmenu_hbox = compose_account_option_menu_create(compose); +- gtk_table_attach(GTK_TABLE(header_table), from_optmenu_hbox, +- 0, 2, count, count + 1, GTK_EXPAND | GTK_FILL, GTK_SHRINK, 0, 0); ++ from_optmenu = compose_account_option_menu_create(compose); ++ gtk_table_attach(GTK_TABLE(header_table), from_optmenu, ++ 0, 1, count, count + 1, GTK_FILL, GTK_FILL, 0, 0); ++ gtk_table_attach(GTK_TABLE(header_table), compose->from_name, ++ 1, 2, count, count + 1, GTK_EXPAND | GTK_FILL, GTK_FILL, 0, 0); + count++; + + compose->header_table = header_table; +@@ -6140,15 +6134,12 @@ + GtkWidget *vbox2; + + GtkWidget *label; +- GtkWidget *subject_hbox; +- GtkWidget *subject_frame; ++ GtkWidget *edit_frame; + GtkWidget *subject_entry; + GtkWidget *subject; + GtkWidget *paned; + + GtkWidget *edit_vbox; +- GtkWidget *ruler_hbox; +- GtkWidget *ruler; + GtkWidget *scrolledwin; + GtkWidget *text; + GtkTextBuffer *buffer; +@@ -6169,8 +6160,6 @@ + GtkAspell * gtkaspell = NULL; + #endif + +- static GdkGeometry geometry; +- + g_return_val_if_fail(account != NULL, NULL); + + debug_print("Creating compose window...\n"); +@@ -6190,28 +6179,6 @@ + + window = gtkut_window_new(GTK_WINDOW_TOPLEVEL, "compose"); + +- gtk_window_set_resizable(GTK_WINDOW(window), TRUE); +- gtk_widget_set_size_request(window, -1, prefs_common.compose_height); +- +- if (!geometry.max_width) { +- geometry.max_width = gdk_screen_width(); +- geometry.max_height = gdk_screen_height(); +- } +- +- gtk_window_set_geometry_hints(GTK_WINDOW(window), NULL, +- &geometry, GDK_HINT_MAX_SIZE); +- if (!geometry.min_width) { +- geometry.min_width = 600; +- geometry.min_height = 480; +- } +- gtk_window_set_geometry_hints(GTK_WINDOW(window), NULL, +- &geometry, GDK_HINT_MIN_SIZE); +- +-#ifndef MAEMO +- if (compose_force_window_origin) +- gtk_widget_set_uposition(window, prefs_common.compose_x, +- prefs_common.compose_y); +-#endif + g_signal_connect(G_OBJECT(window), "delete_event", + G_CALLBACK(compose_delete_cb), compose); + MANAGE_WINDOW_SIGNALS_CONNECT(window); +@@ -6227,11 +6194,7 @@ + n_menu_entries, "", compose); + gtk_box_pack_start(GTK_BOX(vbox), menubar, FALSE, TRUE, 0); + +- if (prefs_common.toolbar_detachable) { +- handlebox = gtk_handle_box_new(); +- } else { +- handlebox = gtk_hbox_new(FALSE, 0); +- } ++ handlebox = gtk_hbox_new(FALSE, 0); + gtk_box_pack_start(GTK_BOX(vbox), handlebox, FALSE, FALSE, 0); + + gtk_widget_realize(handlebox); +@@ -6244,7 +6207,6 @@ + + /* Notebook */ + notebook = gtk_notebook_new(); +- gtk_widget_set_size_request(notebook, -1, 130); + gtk_widget_show(notebook); + + /* header labels and entries */ +@@ -6258,18 +6220,10 @@ + /* Others Tab */ + gtk_notebook_append_page(GTK_NOTEBOOK(notebook), + compose_create_others(compose), +- gtk_label_new_with_mnemonic(_("Othe_rs"))); ++ gtk_label_new_with_mnemonic(_("Othe_r"))); + + /* Subject */ +- subject_hbox = gtk_hbox_new(FALSE, 0); +- gtk_widget_show(subject_hbox); +- +- subject_frame = gtk_frame_new(NULL); +- gtk_frame_set_shadow_type(GTK_FRAME(subject_frame), GTK_SHADOW_NONE); +- gtk_box_pack_start(GTK_BOX(subject_hbox), subject_frame, TRUE, TRUE, 0); +- gtk_widget_show(subject_frame); +- +- subject = gtk_hbox_new(FALSE, HSPACING_NARROW); ++ subject = gtk_hbox_new(FALSE, BORDER_WIDTH); + gtk_container_set_border_width(GTK_CONTAINER(subject), 0); + gtk_widget_show(subject); + +@@ -6283,20 +6237,16 @@ + G_CALLBACK(compose_grab_focus_cb), compose); + gtk_widget_show(subject_entry); + compose->subject_entry = subject_entry; +- gtk_container_add(GTK_CONTAINER(subject_frame), subject); + +- edit_vbox = gtk_vbox_new(FALSE, 0); ++ edit_vbox = gtk_vbox_new(FALSE, BORDER_WIDTH); ++ gtk_container_set_border_width(GTK_CONTAINER(edit_vbox), BORDER_WIDTH); + +- gtk_box_pack_start(GTK_BOX(edit_vbox), subject_hbox, FALSE, FALSE, 0); ++ gtk_box_pack_start(GTK_BOX(edit_vbox), subject, FALSE, FALSE, 0); + +- /* ruler */ +- ruler_hbox = gtk_hbox_new(FALSE, 0); +- gtk_box_pack_start(GTK_BOX(edit_vbox), ruler_hbox, FALSE, FALSE, 0); +- +- ruler = gtk_shruler_new(); +- gtk_ruler_set_range(GTK_RULER(ruler), 0.0, 100.0, 1.0, 100.0); +- gtk_box_pack_start(GTK_BOX(ruler_hbox), ruler, TRUE, TRUE, +- BORDER_WIDTH); ++ edit_frame = gtk_frame_new(NULL); ++ gtk_frame_set_shadow_type(GTK_FRAME(edit_frame), GTK_SHADOW_IN); ++ gtk_widget_show(edit_frame); ++ gtk_container_add(GTK_CONTAINER(edit_frame), edit_vbox); + + /* text widget */ + scrolledwin = gtk_scrolled_window_new(NULL, NULL); +@@ -6317,9 +6267,6 @@ + + gtk_container_add(GTK_CONTAINER(scrolledwin), text); + +- g_signal_connect_after(G_OBJECT(text), "size_allocate", +- G_CALLBACK(compose_edit_size_alloc), +- ruler); + g_signal_connect(G_OBJECT(buffer), "changed", + G_CALLBACK(compose_changed_cb), compose); + g_signal_connect(G_OBJECT(text), "grab_focus", +@@ -6363,7 +6310,7 @@ + gtk_widget_set_size_request(edit_vbox, -1, mode == COMPOSE_NEW ? 250 : 230); + #endif + gtk_paned_add1(GTK_PANED(paned), notebook); +- gtk_paned_add2(GTK_PANED(paned), edit_vbox); ++ gtk_paned_add2(GTK_PANED(paned), edit_frame); + gtk_widget_show_all(paned); + + +@@ -6408,8 +6355,6 @@ + + compose->notebook = notebook; + compose->edit_vbox = edit_vbox; +- compose->ruler_hbox = ruler_hbox; +- compose->ruler = ruler; + compose->scrolledwin = scrolledwin; + compose->text = text; + +@@ -6531,13 +6476,6 @@ + + compose_list = g_list_append(compose_list, compose); + +- if (!prefs_common.show_ruler) +- gtk_widget_hide(ruler_hbox); +- +- menuitem = gtk_item_factory_get_item(ifactory, "/Tools/Show ruler"); +- gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), +- prefs_common.show_ruler); +- + /* Priority */ + compose->priority = PRIORITY_NORMAL; + compose_update_priority_menu_item(compose); +@@ -6568,7 +6506,6 @@ + static GtkWidget *compose_account_option_menu_create(Compose *compose) + { + GList *accounts; +- GtkWidget *hbox; + GtkWidget *optmenu; + GtkWidget *optmenubox; + GtkListStore *menu; +@@ -6584,7 +6521,6 @@ + optmenu = gtkut_sc_combobox_create(optmenubox, FALSE); + menu = GTK_LIST_STORE(gtk_combo_box_get_model(GTK_COMBO_BOX(optmenu))); + +- hbox = gtk_hbox_new(FALSE, 6); + from_name = gtk_entry_new(); + + g_signal_connect_after(G_OBJECT(from_name), "grab_focus", +@@ -6623,9 +6559,6 @@ + G_CALLBACK(account_activated), + compose); + +- gtk_box_pack_start(GTK_BOX(hbox), optmenubox, FALSE, FALSE, 0); +- gtk_box_pack_start(GTK_BOX(hbox), from_name, TRUE, TRUE, 0); +- + gtk_tooltips_set_tip(compose->tooltips, optmenubox, + _("Account to use for this email"), NULL); + gtk_tooltips_set_tip(compose->tooltips, from_name, +@@ -6633,7 +6566,7 @@ + + compose->from_name = from_name; + +- return hbox; ++ return optmenubox; + } + + static void compose_set_priority_cb(gpointer data, +@@ -7851,32 +7784,6 @@ + + /* callback functions */ + +-/* compose_edit_size_alloc() - called when resized. don't know whether Gtk +- * includes "non-client" (windows-izm) in calculation, so this calculation +- * may not be accurate. +- */ +-static gboolean compose_edit_size_alloc(GtkEditable *widget, +- GtkAllocation *allocation, +- GtkSHRuler *shruler) +-{ +- if (prefs_common.show_ruler) { +- gint char_width = 0, char_height = 0; +- gint line_width_in_chars; +- +- gtkut_get_font_size(GTK_WIDGET(widget), +- &char_width, &char_height); +- line_width_in_chars = +- (allocation->width - allocation->x) / char_width; +- +- /* got the maximum */ +- gtk_ruler_set_range(GTK_RULER(shruler), +- 0.0, line_width_in_chars, 0, +- /*line_width_in_chars*/ char_width); +- } +- +- return TRUE; +-} +- + static void account_activated(GtkComboBox *optmenu, gpointer data) + { + Compose *compose = (Compose *)data; +@@ -9040,21 +8947,6 @@ + compose_update_privacy_system_menu_item(compose, warn); + } + +-static void compose_toggle_ruler_cb(gpointer data, guint action, +- GtkWidget *widget) +-{ +- Compose *compose = (Compose *)data; +- +- if (GTK_CHECK_MENU_ITEM(widget)->active) { +- gtk_widget_show(compose->ruler_hbox); +- prefs_common.show_ruler = TRUE; +- } else { +- gtk_widget_hide(compose->ruler_hbox); +- gtk_widget_queue_resize(compose->edit_vbox); +- prefs_common.show_ruler = FALSE; +- } +-} +- + static void compose_attach_drag_received_cb (GtkWidget *widget, + GdkDragContext *context, + gint x, +Index: claws-mail-2.9.1/src/folderview.c +=================================================================== +--- claws-mail-2.9.1.orig/src/folderview.c 2007-04-03 19:10:25.000000000 +0100 ++++ claws-mail-2.9.1/src/folderview.c 2007-04-25 10:28:00.000000000 +0100 +@@ -73,6 +73,11 @@ + #define COL_FOLDER_WIDTH 150 + #define COL_NUM_WIDTH 32 + ++/* added dummy column to stop the last column from ++ * resizing insanely in small screen view ++ */ ++#define _N_FOLDER_COLS (N_FOLDER_COLS + 1) ++ + static GList *folderview_list = NULL; + + static GtkStyle *normal_style; +@@ -448,7 +453,7 @@ + gint *col_pos; + FolderColumnState *col_state; + FolderColumnType type; +- gchar *titles[N_FOLDER_COLS]; ++ gchar *titles[_N_FOLDER_COLS]; + gint i; + GtkWidget *scrolledwin = folderview->scrolledwin; + +@@ -471,8 +476,9 @@ + titles[col_pos[F_COL_UNREAD]] = _("Unread"); + /* TRANSLATORS: This in Number sign in American style */ + titles[col_pos[F_COL_TOTAL]] = _("#"); ++ titles[F_COL_DUMMY] = ""; + +- ctree = gtk_sctree_new_with_titles(N_FOLDER_COLS, col_pos[F_COL_FOLDER], ++ ctree = gtk_sctree_new_with_titles(_N_FOLDER_COLS, col_pos[F_COL_FOLDER], + titles); + + gtk_clist_set_selection_mode(GTK_CLIST(ctree), GTK_SELECTION_BROWSE); +@@ -510,6 +516,9 @@ + (GTK_CLIST(ctree), i, col_state[i].visible); + } + ++ GTK_WIDGET_UNSET_FLAGS(GTK_CLIST(ctree)->column[i].button, ++ GTK_CAN_FOCUS); ++ + g_signal_connect(G_OBJECT(ctree), "key_press_event", + G_CALLBACK(folderview_key_pressed), + folderview); +@@ -605,9 +614,6 @@ + (GTK_SCROLLED_WINDOW(scrolledwin), + GTK_POLICY_AUTOMATIC, + prefs_common.folderview_vscrollbar_policy); +- gtk_widget_set_size_request(scrolledwin, +- prefs_common.folderview_width, +- prefs_common.folderview_height); + + folderview->scrolledwin = scrolledwin; + ctree = folderview_ctree_create(folderview); +@@ -2268,7 +2274,7 @@ + static void folderview_create_folder_node(FolderView *folderview, FolderItem *item) + { + GtkCTree *ctree = GTK_CTREE(folderview->ctree); +- gchar *text[N_FOLDER_COLS] = {NULL, "0", "0", "0"}; ++ gchar *text[_N_FOLDER_COLS] = {NULL, "0", "0", "0", ""}; + GtkCTreeNode *node, *parent_node; + gint *col_pos = folderview->col_pos; + FolderItemUpdateData hookdata; +Index: claws-mail-2.9.1/src/folderview.h +=================================================================== +--- claws-mail-2.9.1.orig/src/folderview.h 2007-03-22 17:22:52.000000000 +0000 ++++ claws-mail-2.9.1/src/folderview.h 2007-04-25 10:16:55.000000000 +0100 +@@ -37,7 +37,8 @@ + F_COL_FOLDER, + F_COL_NEW, + F_COL_UNREAD, +- F_COL_TOTAL ++ F_COL_TOTAL, ++ F_COL_DUMMY + } FolderColumnType; + + #define N_FOLDER_COLS 4 diff --git a/meta/recipes-sato/libical/libical_0.44.bb b/meta/recipes-sato/libical/libical_0.44.bb new file mode 100644 index 0000000000..0b016a0b8f --- /dev/null +++ b/meta/recipes-sato/libical/libical_0.44.bb @@ -0,0 +1,11 @@ +DESCRIPTION = "iCal and scheduling (RFC 2445, 2446, 2447) library" +HOMEPAGE = "http://sourceforge.net/projects/freeassociation/" +BUGTRACKER = "http://sourceforge.net/tracker/?group_id=16077&atid=116077" +LICENSE = "LGPLv2.1 | MPLv1.1" +LIC_FILES_CHKSUM = "file://COPYING;md5=35da21efce2b9f0ca07524c9f844e6ed \ + file://LICENSE;md5=35da21efce2b9f0ca07524c9f844e6ed" +SECTION = "libs" + +SRC_URI = "${SOURCEFORGE_MIRROR}/freeassociation/${P}.tar.gz" + +inherit autotools diff --git a/meta/recipes-sato/rxvt-unicode/files/makefile.patch b/meta/recipes-sato/rxvt-unicode/files/makefile.patch new file mode 100644 index 0000000000..86f82eeb4c --- /dev/null +++ b/meta/recipes-sato/rxvt-unicode/files/makefile.patch @@ -0,0 +1,20 @@ +--- ../rxvt-unicode-cvs-r0/rxvt-unicode/Makefile.in 2004-08-12 22:32:40 +01:00 ++++ rxvt-unicode/Makefile.in 2004-12-24 03:09:00 +00:00 +@@ -9,7 +9,7 @@ + first_rule: all + dummy: + +-subdirs = src doc src/test ++subdirs = src src/test + allsubdirs = W11 $(subdirs) + + DIST = INSTALL README.configure configure Makefile Makefile.in ChangeLog +@@ -24,7 +24,7 @@ + + #------------------------------------------------------------------------- + +-all allbin alldoc tags: ++all allbin tags: + @if test x@host_os@ = xcygwin; then (cd W11; ${MAKE} $@) || exit 1; fi + @for I in ${subdirs}; do (cd $$I; ${MAKE} $@) || exit 1; done + diff --git a/meta/recipes-sato/rxvt-unicode/files/rxvt.desktop b/meta/recipes-sato/rxvt-unicode/files/rxvt.desktop new file mode 100644 index 0000000000..a419c98a13 --- /dev/null +++ b/meta/recipes-sato/rxvt-unicode/files/rxvt.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Encoding=UTF-8 +Name=Terminal +Comment=When all else fails. +Exec=/usr/bin/rxvt +Icon=utilities-terminal.png +Terminal=false +Type=Application +Categories=Utility +StartupNotify=false + diff --git a/meta/recipes-sato/rxvt-unicode/files/rxvt.png b/meta/recipes-sato/rxvt-unicode/files/rxvt.png new file mode 100644 index 0000000000..e56fa2e9cd Binary files /dev/null and b/meta/recipes-sato/rxvt-unicode/files/rxvt.png differ diff --git a/meta/recipes-sato/rxvt-unicode/files/signedchar.patch b/meta/recipes-sato/rxvt-unicode/files/signedchar.patch new file mode 100644 index 0000000000..6faa175143 --- /dev/null +++ b/meta/recipes-sato/rxvt-unicode/files/signedchar.patch @@ -0,0 +1,11 @@ +--- ../rxvt-unicode-cvs-r0/rxvt-unicode/src/command.C 2004-12-21 06:43:00 +00:00 ++++ rxvt-unicode/src/command.C 2004-12-24 02:31:36 +00:00 +@@ -1862,7 +1862,7 @@ + #endif /* NO_SCROLLBAR_REPORT */ + + { +- char upordown = 0; ++ signed char upordown = 0; + + if (scrollBar.style == R_SB_NEXT) + { diff --git a/meta/recipes-sato/rxvt-unicode/files/xwc.patch b/meta/recipes-sato/rxvt-unicode/files/xwc.patch new file mode 100644 index 0000000000..7cf59656ce --- /dev/null +++ b/meta/recipes-sato/rxvt-unicode/files/xwc.patch @@ -0,0 +1,28 @@ + +# +# Patch managed by http://www.holgerschurig.de/patcher.html +# + +--- rxvt-unicode-4.8/src/screen.C~xwc.c ++++ rxvt-unicode-4.8/src/screen.C +@@ -3058,7 +3058,7 @@ + else + rxvt_warn ("can't get primary selection, ignoring.\n"); + +-#if 0 ++#ifdef HAVE_XWC + XTextProperty ct; + + if (XwcTextListToTextProperty (display->display, &selection.text, 1, XStringStyle, &ct) >= 0) +@@ -3632,9 +3632,11 @@ + } + else + #endif ++#ifdef HAVE_XWC + if (XwcTextListToTextProperty (display->display, &cl, 1, (XICCEncodingStyle) style, &ct) >= 0) + freect = 1; + else ++#endif + { + /* if we failed to convert then send it raw */ + ct.value = (unsigned char *)cl; diff --git a/meta/recipes-sato/rxvt-unicode/rxvt-unicode-5.6/xwc.patch b/meta/recipes-sato/rxvt-unicode/rxvt-unicode-5.6/xwc.patch new file mode 100644 index 0000000000..eb87b84b25 --- /dev/null +++ b/meta/recipes-sato/rxvt-unicode/rxvt-unicode-5.6/xwc.patch @@ -0,0 +1,24 @@ +diff -urNd ../rxvt-unicode-5.3-r2/rxvt-unicode-5.3/src/screen.C rxvt-unicode-5.3/src/screen.C +--- ../rxvt-unicode-5.3-r2/rxvt-unicode-5.3/src/screen.C 2005-02-22 21:39:10 +00:00 ++++ rxvt-unicode-5.3/src/screen.C 2005-04-05 22:12:45 +01:00 +@@ -3064,7 +3064,7 @@ + else + rxvt_warn ("can't get primary selection, ignoring.\n"); + +-#if 0 ++#ifdef HAVE_XWC + XTextProperty ct; + + if (XwcTextListToTextProperty (display->display, &selection.text, 1, XStringStyle, &ct) >= 0) +@@ -3648,9 +3648,11 @@ + } + else + #endif ++#ifdef HAVE_XWC + if (XwcTextListToTextProperty (disp, &cl, 1, (XICCEncodingStyle) style, &ct) >= 0) + freect = 1; + else ++#endif + { + /* if we failed to convert then send it raw */ + ct.value = (unsigned char *)cl; diff --git a/meta/recipes-sato/rxvt-unicode/rxvt-unicode_5.6.bb b/meta/recipes-sato/rxvt-unicode/rxvt-unicode_5.6.bb new file mode 100644 index 0000000000..d13089501f --- /dev/null +++ b/meta/recipes-sato/rxvt-unicode/rxvt-unicode_5.6.bb @@ -0,0 +1,72 @@ +SECTION = "x11/utils" +DEPENDS = "virtual/libx11 libxt libxft" +DESCRIPTION = "rxvt-unicode is a clone of the well known \ +terminal emulator rxvt, modified to store text in Unicode \ +(either UCS-2 or UCS-4) and to use locale-correct input and \ +output. It also supports mixing multiple fonts at the \ +same time, including Xft fonts." +LICENSE = "GPL" +SRC_URI = "http://dist.schmorp.de/rxvt-unicode/Attic/rxvt-unicode-${PV}.tar.bz2 \ + file://xwc.patch;patch=1 \ + file://signedchar.patch;patch=1 \ + file://rxvt.desktop \ + file://rxvt.png" +PR = "r5" + +inherit autotools update-alternatives + +PROVIDES = "virtual/x-terminal-emulator" +ALTERNATIVE_NAME = "x-terminal-emulator" +ALTERNATIVE_PATH = "${bindir}/rxvt" + +CFLAGS_append = " -fpermissive" + +# This is necessary so that the "tic" command executed during the install can +# link with the correct libary in staging. +export LD_LIBRARY_PATH = "${STAGING_LIBDIR_NATIVE}" + +EXTRA_OECONF = "--enable-menubar --enable-xim \ + --enable-utmp --enable-wtmp --enable-lastlog \ + --disable-strings --with-term=rxvt --enable-keepscrolling \ + --enable-xft --with-name=rxvt --enable-frills \ + --enable-swapscreen --enable-transparency \ + --with-codesets=eu \ + --enable-cursor-blink --enable-pointer-blank \ + --enable-text-blink --enable-rxvt-scroll \ + --enable-combining --enable-shared \ + --enable-xgetdefault \ + --with-x=${STAGING_DIR_HOST}${prefix}" +EXTRA_OEMAKE = "'XINC=-I${STAGING_INCDIR}' \ + 'XLIB=-L${STAGING_LIBDIR} -lX11'" + +do_configure () { + mv autoconf/configure.in . || true + rm autoconf/libtool.m4 + libtoolize --force + autotools_do_configure + echo '#define RXVT_UTMP_FILE "${localstatedir}/run/utmp"' >> config.h + echo '#define RXVT_WTMP_FILE "${localstatedir}/log/wtmp"' >> config.h + echo '#define RXVT_LASTLOG_FILE "${localstatedir}/log/lastlog"' >> config.h + echo '#define HAVE_XLOCALE 1' >> config.h +} + +do_compile () { + if test -e ${S}/${HOST_SYS}-libtool; then + LIBTOOL=${S}/${HOST_SYS}-libtool + else + LIBTOOL=${S}/libtool + fi + # docs need "yodl" and I have no idea what that is + oe_runmake -C src "LIBTOOL=$LIBTOOL" +} + +do_install_append () { + install -d ${D}/${datadir} + install -d ${D}/${datadir}/applications + install -d ${D}/${datadir}/pixmaps/ + + install -m 0644 ${WORKDIR}/rxvt.png ${D}/${datadir}/pixmaps + install -m 0644 ${WORKDIR}/rxvt.desktop ${D}/${datadir}/applications +} + +FILES_${PN} += "${datadir}/applications/rxvt.desktop ${datadir}/pixmaps/rxvt.png" diff --git a/meta/recipes-sato/webkit/files/GNUmakefile.am b/meta/recipes-sato/webkit/files/GNUmakefile.am new file mode 100644 index 0000000000..39817f1dd5 --- /dev/null +++ b/meta/recipes-sato/webkit/files/GNUmakefile.am @@ -0,0 +1,856 @@ +# Top-level Makefile rule for automake +# +# Variable conventions: +# +# _h_api = API headers that will be installed and included in the distribution +# _cppflags = flags that will be passed to the C/CXX Preprocessor +# _sources = sources that will be compiled and included in the distribution +# _built_sources = files that will be autogenerated by the build system and +# will be part of the _SOURCES primary +# _built_nosources = files that are autogenerated but are not part of the +# _SOURCES primary +# _cleanfiles = files that will be removed by the clean target +# +# Sources, headers, flags, etc... should be added to the respective variables +# with the above suffix, e.g, webcore-specific sources should go to +# webcore_sources, gtk port API and WebCoreSupport parts to webkitgtk_sources, +# etc... The only exceptions are the global variables. See Global Variables +# below. +# +# Global Variables +# +# global_cppflags = CPPFLAGS that apply to JSC, WebCore, and to any +# specific port +# global_cflags = CFLAGS that apply to JSC, WebCore, and to +# any specific port +# global_cxxflags = CXXFLAGS that apply to JSC, WebCore, and to any +# specific port + +srcdir = @srcdir@ +VPATH = @srcdir@ + +DISTCHECK_CONFIGURE_FLAGS = \ + --enable-introspection \ + --enable-gtk-doc + +# Directory for autogenerated sources +GENSOURCES := $(top_builddir)/DerivedSources +GENSOURCESWEBKITDOM := $(top_builddir)/DerivedSources/webkit +GENPROGRAMS := $(top_builddir)/Programs + +# Script for creating hash tables +CREATE_HASH_TABLE = $(srcdir)/JavaScriptCore/create_hash_table + +# Script for creating regexp tables +CREATE_REGEXP_TABLES = $(srcdir)/JavaScriptCore/create_regex_tables + +# Programs to run the WebKitGtk unit tests +GTESTER = gtester +GTESTER_REPORT = gtester-report + +# Libraries and support components +bin_PROGRAMS := +noinst_PROGRAMS := +noinst_HEADERS := +noinst_LTLIBRARIES := +lib_LTLIBRARIES := +IDL_BINDINGS := +TEST_PROGS := +POFILES := +MOFILES := +javascriptcore_h_api := +javascriptcore_cppflags:= +javascriptcore_sources := +javascriptcore_built_sources := +javascriptcore_built_nosources := +javascriptcore_dist := +webcore_cppflags := +webcore_sources := +webcore_libadd := +webcore_built_sources := +webcore_built_nosources := +webcore_dist := +webcoregtk_cppflags := +webcoregtk_sources := +IDL_BINDINGS_GDOM := +GDOM_AUTO_CLASSES := +GDOM_FIXED_CLASSES := +GDOM_CLASSES := +GDOM_HEADERS_BUILT := +GDOM_HEADERS_FIXED := +libgdom_h_api := +libgdom_cleanfiles := +webkitgtk_h_api := +webkitgtk_sources := +webkitgtk_cppflags := +webkitgtk_built_sources := +webkitgtk_built_nosources := +webkitgtk_cleanfiles := +global_cppflags := +global_cflags := +global_cxxflags := +corekit_cflags := +corekit_cppflags := +JSCORE_GIRSOURCES := +WEBKIT_GIRSOURCES := +typelibsdir := +typelibs_DATA := +EXTRA_DIST := +BUILT_SOURCES := +CLEANFILES := +DISTCLEANFILES := +MAINTAINERCLEANFILES := + +webcoregtk_cppflags += \ + -I$(top_builddir)/DerivedSources/webkit \ + -I$(srcdir)/WebCore/bindings \ + -I$(srcdir)/WebCore/bindings/gobject + +# CFLAGS/CXXFLAGS used by WebCore and WebKit +# +# gtk+.pc already include glib, cairo, freetype and pango CFLAGS +# Don't include them for now to reduce the noise when compiling +# $(GLIB_CFLAGS) $(CAIRO_CFLAGS) $(PANGO_CFLAGS) $(FREETYPE_CFLAGS) +corekit_cflags += \ + -fno-strict-aliasing \ + $(COVERAGE_CFLAGS) \ + $(ENCHANT_CFLAGS) \ + $(GAIL_CFLAGS) \ + $(GEOCLUE_CFLAGS) \ + $(GLIB_CFLAGS) \ + $(GSTREAMER_CFLAGS) \ + $(GTK_CFLAGS) \ + $(HILDON_CFLAGS) \ + $(LIBSOUP_CFLAGS) \ + $(LIBXML_CFLAGS) \ + $(LIBXSLT_CFLAGS) \ + $(SQLITE3_CFLAGS) \ + $(UNICODE_CFLAGS) \ + $(XT_CFLAGS) + +# When building webcore/webkit, we want WebCore/config.h and NOT +# JavaScriptCore/config.h, hence, it's important that WebCore/ should come first +# before JavaScriptCore in the include path. +corekit_cppflags += \ + $(global_cppflags) \ + $(webcore_cppflags) \ + $(webcoregtk_cppflags) \ + $(javascriptcore_cppflags) + +# For the Gtk port we want to use XP_UNIX both in X11 and Mac +if !TARGET_WIN32 +corekit_cppflags += -DXP_UNIX +endif + +# Default compiler flags +global_cflags += \ + -Wall -W -Wcast-align -Wchar-subscripts -Wreturn-type \ + -Wformat -Wformat-security -Wno-format-y2k -Wundef \ + -Wmissing-format-attribute -Wpointer-arith -Wwrite-strings \ + -Wno-unused-parameter -Wno-parentheses \ + -fno-exceptions + +global_cxxflags += \ + $(global_cflags) \ + $(SYMBOL_VISIBILITY_INLINES) \ + -fno-rtti + +# -no-undefined required for building DLLs on Windows +# It breaks the build on other platforms, so we use it conditionally +if OS_WIN32 +no_undefined = -no-undefined +version_script = -export-symbols-regex "^(webkit_|JS).*" +endif + +if OS_GNU +version_script = -Wl,--version-script,$(srcdir)/autotools/symbols.filter +endif + +# Shared libraries +lib_LTLIBRARIES += \ + libwebkitgtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la + +# Convenience libraries +noinst_LTLIBRARIES += \ + libJavaScriptCore.la + +# JavaScriptCore +javascriptcore_cppflags += \ + -I$(srcdir)/JavaScriptCore/ForwardingHeaders \ + -I$(srcdir)/JavaScriptCore/parser \ + -I$(srcdir)/JavaScriptCore/wtf \ + -I$(srcdir)/JavaScriptCore/wtf/gtk \ + -I$(srcdir)/JavaScriptCore/wtf/gobject \ + -I$(top_builddir)/DerivedSources + +nodist_EXTRA_libJavaScriptCore_la_SOURCES = \ + $(javascriptcore_built_nosources) + +nodist_libJavaScriptCore_la_SOURCES = \ + $(javascriptcore_built_sources) + +libJavaScriptCore_ladir = $(prefix)/include/webkit-@WEBKITGTK_API_VERSION@/JavaScriptCore +libJavaScriptCore_la_HEADERS = $(javascriptcore_h_api) + +libJavaScriptCore_la_SOURCES = \ + $(javascriptcore_sources) + +libJavaScriptCore_la_LIBADD = \ + $(UNICODE_LIBS) \ + $(GLIB_LIBS) \ + -lpthread + +libJavaScriptCore_la_CXXFLAGS = \ + $(global_cxxflags) \ + $(libJavaScriptCore_la_CFLAGS) + +libJavaScriptCore_la_CFLAGS = \ + -fstrict-aliasing \ + -O3 \ + $(global_cflags) \ + $(GLIB_CFLAGS) \ + $(UNICODE_CFLAGS) + +libJavaScriptCore_la_CPPFLAGS = \ + $(global_cppflags) \ + $(javascriptcore_cppflags) + +# WebKit +nodist_EXTRA_libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_SOURCES = \ + $(webcore_built_nosources) + +nodist_libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_SOURCES = \ + $(webcore_built_sources) \ + $(webkitgtk_built_sources) + +libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_ladir = $(prefix)/include/webkit-@WEBKITGTK_API_VERSION@/webkit +libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_HEADERS = \ + $(webkitgtk_h_api) \ + WebKit/gtk/webkit/webkitenumtypes.h + +libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_SOURCES = \ + $(webcore_sources) \ + $(webcoregtk_sources) \ + $(webkitgtk_sources) + +libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_CXXFLAGS = \ + $(global_cxxflags) \ + $(corekit_cflags) + +libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_CFLAGS = \ + $(global_cflags) \ + $(corekit_cflags) + +libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_CPPFLAGS = \ + $(corekit_cppflags) \ + $(webkitgtk_cppflags) \ + $(HILDON_CPPFLAGS) + +libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_LDFLAGS = \ + -version-info @LIBWEBKITGTK_VERSION@ \ + $(version_script) \ + $(no_undefined) + +libwebkitgtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_LIBADD = \ + -lpthread \ + libJavaScriptCore.la \ + libWebCoreJS.la \ + libgdom.la \ + $(webcore_ldflags) \ + $(CAIRO_LIBS) \ + $(COVERAGE_LDFLAGS) \ + $(ENCHANT_LIBS) \ + $(FREETYPE_LIBS) \ + $(GAIL_LIBS) \ + $(GEOCLUE_LIBS) \ + $(GLIB_LIBS) \ + $(GSTREAMER_LIBS) \ + $(GTK_LIBS) \ + $(HILDON_LIBS) \ + $(JPEG_LIBS) \ + $(LIBSOUP_LIBS) \ + $(LIBXML_LIBS) \ + $(LIBXSLT_LIBS) \ + $(PANGO_LIBS) \ + $(PNG_LIBS) \ + $(SQLITE3_LIBS) \ + $(UNICODE_LIBS) \ + $(XT_LIBS) + +libgdom_ladir = $(prefix)/include/webkit-@WEBKITGTK_API_VERSION@/webkit +nodist_libgdom_la_HEADERS = \ + $(libgdom_h_api) + +libgdom_cleanfiles += \ + $(top_builddir)/WebKit/gtk/webkit/webkitdomenumtypes.h \ + $(top_builddir)/libgdom.la \ + $(top_builddir)/stamp-webkitdomenumtypes.h + +# +# Extra checks and flags +global_cppflags += \ + -DBUILDING_CAIRO__=1 \ + -DBUILDING_GTK__=1 \ + -DWTF_CHANGES + +if USE_ICU_UNICODE +global_cppflags += \ + -DWTF_USE_ICU_UNICODE=1 +endif + +if USE_GLIB_UNICODE +global_cppflags += \ + -DWTF_USE_GLIB_UNICODE=1 +endif + +if !ENABLE_FAST_MALLOC +global_cppflags += \ + -DUSE_SYSTEM_MALLOC +endif + +if !ENABLE_DEBUG +global_cppflags += -DNDEBUG +global_cflags += $(SYMBOL_VISIBILITY) +else +webcoregtk_cppflags += \ + -DG_DISABLE_DEPRECATED \ + -DGDK_PIXBUF_DISABLE_DEPRECATED \ + -DGDK_DISABLE_DEPRECATED \ + -DGTK_DISABLE_DEPRECATED \ + -DPANGO_DISABLE_DEPRECATED + +# Might be useful in the future +# -DGDK_MULTIHEAD_SAFE \ +# -DGTK_MULTIHEAD_SAFE +endif + +if ENABLE_COVERAGE +global_cppflags += \ + -DGCC_GENERATE_TEST_COVERAGE_FILES \ + -DGCC_INSTRUMENT_PROGRAM_FLOW_ARCS +endif + +webkitgtk_h_api += \ + $(srcdir)/WebKit/gtk/webkit/webkit.h \ + $(srcdir)/WebKit/gtk/webkit/webkitdefines.h \ + $(srcdir)/WebKit/gtk/webkit/webkitdownload.h \ + $(srcdir)/WebKit/gtk/webkit/webkiterror.h \ + $(srcdir)/WebKit/gtk/webkit/webkithittestresult.h \ + $(srcdir)/WebKit/gtk/webkit/webkitnetworkrequest.h \ + $(srcdir)/WebKit/gtk/webkit/webkitnetworkresponse.h \ + $(srcdir)/WebKit/gtk/webkit/webkitsoupauthdialog.h \ + $(srcdir)/WebKit/gtk/webkit/webkitwebbackforwardlist.h \ + $(srcdir)/WebKit/gtk/webkit/webkitwebdatasource.h \ + $(srcdir)/WebKit/gtk/webkit/webkitwebframe.h \ + $(srcdir)/WebKit/gtk/webkit/webkitwebhistoryitem.h \ + $(srcdir)/WebKit/gtk/webkit/webkitwebinspector.h \ + $(srcdir)/WebKit/gtk/webkit/webkitwebnavigationaction.h \ + $(srcdir)/WebKit/gtk/webkit/webkitwebpolicydecision.h \ + $(srcdir)/WebKit/gtk/webkit/webkitgeolocationpolicydecision.h \ + $(srcdir)/WebKit/gtk/webkit/webkitwebresource.h \ + $(srcdir)/WebKit/gtk/webkit/webkitwebsettings.h \ + $(srcdir)/WebKit/gtk/webkit/webkitwebwindowfeatures.h \ + $(srcdir)/WebKit/gtk/webkit/webkitwebview.h \ + $(srcdir)/WebKit/gtk/webkit/webkitwebdatabase.h \ + $(srcdir)/WebKit/gtk/webkit/webkitsecurityorigin.h \ + $(top_builddir)/WebKit/gtk/webkit/webkitversion.h + +webkitgtk_built_sources += \ + DerivedSources/webkitenumtypes.cpp \ + DerivedSources/webkitdomenumtypes.cpp \ + DerivedSources/webkitmarshal.cpp \ + DerivedSources/webkitmarshal.h \ + WebKit/gtk/webkit/webkitenumtypes.h + +webkitgtk_sources += \ + WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp \ + WebKit/gtk/WebCoreSupport/ChromeClientGtk.h \ + WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp \ + WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.h \ + WebKit/gtk/WebCoreSupport/DocumentLoaderGtk.cpp \ + WebKit/gtk/WebCoreSupport/DocumentLoaderGtk.h \ + WebKit/gtk/WebCoreSupport/DragClientGtk.cpp \ + WebKit/gtk/WebCoreSupport/DragClientGtk.h \ + WebKit/gtk/WebCoreSupport/EditorClientGtk.cpp \ + WebKit/gtk/WebCoreSupport/EditorClientGtk.h \ + WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.cpp \ + WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.h \ + WebKit/gtk/WebCoreSupport/InspectorClientGtk.cpp \ + WebKit/gtk/WebCoreSupport/InspectorClientGtk.h \ + WebKit/gtk/WebCoreSupport/PasteboardHelperGtk.cpp \ + WebKit/gtk/WebCoreSupport/PasteboardHelperGtk.h \ + WebKit/gtk/webkit/webkitapplicationcache.cpp \ + WebKit/gtk/webkit/webkitdownload.cpp \ + WebKit/gtk/webkit/webkiterror.cpp \ + WebKit/gtk/webkit/webkithittestresult.cpp \ + WebKit/gtk/webkit/webkitnetworkrequest.cpp \ + WebKit/gtk/webkit/webkitnetworkresponse.cpp \ + WebKit/gtk/webkit/webkitprivate.cpp \ + WebKit/gtk/webkit/webkitprivate.h \ + WebKit/gtk/webkit/webkitsoupauthdialog.c \ + WebKit/gtk/webkit/webkitversion.cpp \ + WebKit/gtk/webkit/webkitwebbackforwardlist.cpp \ + WebKit/gtk/webkit/webkitwebdatasource.cpp \ + WebKit/gtk/webkit/webkitwebframe.cpp \ + WebKit/gtk/webkit/webkitwebhistoryitem.cpp \ + WebKit/gtk/webkit/webkitwebinspector.cpp \ + WebKit/gtk/webkit/webkitwebnavigationaction.cpp \ + WebKit/gtk/webkit/webkitwebpolicydecision.cpp \ + WebKit/gtk/webkit/webkitgeolocationpolicydecision.cpp \ + WebKit/gtk/webkit/webkitwebresource.cpp \ + WebKit/gtk/webkit/webkitwebdatabase.cpp \ + WebKit/gtk/webkit/webkitsecurityorigin.cpp \ + WebKit/gtk/webkit/webkitwebsettings.cpp \ + WebKit/gtk/webkit/webkitwebview.cpp \ + WebKit/gtk/webkit/webkitwebwindowfeatures.cpp \ + WebKit/gtk/webkit/webkitworkers.cpp + +webkitgtk_cppflags += \ + -DBUILDING_WEBKIT \ + -DPACKAGE_LOCALE_DIR=\"$(localedir)\" \ + -DDATA_DIR=\"${datadir}\" \ + -I$(srcdir)/WebKit/gtk \ + -I$(srcdir)/WebKit/gtk/WebCoreSupport \ + -I$(srcdir)/WebKit/gtk/webkit \ + -I$(top_builddir)/WebKit/gtk \ + -I$(top_builddir)/WebKit/gtk/webkit \ + -I$(GENSOURCESWEBKITDOM) + +webkitgtk_cleanfiles += \ + $(top_builddir)/stamp-webkitmarshal.cpp \ + $(top_builddir)/stamp-webkitmarshal.h \ + $(top_builddir)/stamp-webkitenumtypes.cpp \ + $(top_builddir)/stamp-webkitenumtypes.h \ + $(top_builddir)/Programs/GtkLauncher \ + $(top_builddir)/WebKit/gtk/docs/version.xml \ + $(top_builddir)/WebKit/gtk/docs/GNUmakefile \ + $(top_builddir)/WebKit/gtk/@WEBKITGTK_PC_NAME@-@WEBKITGTK_API_VERSION@.pc \ + $(top_builddir)/WebKit/gtk/webkit/webkitenumtypes.h \ + $(top_builddir)/WebKit/gtk/webkit/webkitversion.h + +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = WebKit/gtk/@WEBKITGTK_PC_NAME@-@WEBKITGTK_API_VERSION@.pc + +if ENABLE_INTROSPECTION + +JSCore-@WEBKITGTK_API_VERSION@.gir: $(builddir)/WebKit/gtk/JSCore-@WEBKITGTK_API_VERSION@.gir + cp $(builddir)/WebKit/gtk/JSCore-@WEBKITGTK_API_VERSION@.gir $(builddir)/ + +JSCORE_GIRSOURCES += JSCore-@WEBKITGTK_API_VERSION@.gir +WEBKIT_GIRSOURCES += WebKit-@WEBKITGTK_API_VERSION@.gir + +$(WEBKIT_GIRSOURCES): $(G_IR_SCANNER) $(JSCORE_GIRSOURCES) libwebkitgtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la + $(AM_V_GEN)$(G_IR_SCANNER) -v --namespace WebKit --nsversion=@WEBKITGTK_API_VERSION@ \ + --include=GObject-2.0 \ + --include=Gtk-@GTK_API_VERSION@ \ + --include=JSCore-@WEBKITGTK_API_VERSION@ \ + --include=Soup-2.4 \ + --library=webkitgtk-@WEBKITGTK_API_VERSION@ \ + --libtool="$(LIBTOOL)" \ + --pkg gobject-2.0 \ + --pkg gtk+-@GTK_API_VERSION@ \ + --pkg libsoup-2.4 \ + --output $@ \ + --add-include-path $(top_srcdir)/WebKit/gtk \ + --add-include-path $(builddir) \ + -I$(top_srcdir)/WebKit/gtk \ + -I$(top_builddir)/WebKit/gtk \ + -I$(top_builddir)/DerivedSources \ + -I$(top_srcdir)/JavaScriptCore/ForwardingHeaders \ + -I$(top_srcdir) \ + $(webkitgtk_h_api) \ + $(libgdom_h_api) + +girdir = $(datadir)/gir-1.0 +gir_DATA = $(WEBKIT_GIRSOURCES) $(JSCORE_GIRSOURCES) + +typelibsdir += $(libdir)/girepository-1.0 +typelibs_DATA += $(JSCORE_GIRSOURCES:.gir=.typelib) $(WEBKIT_GIRSOURCES:.gir=.typelib) + +%.typelib: %.gir $(G_IR_COMPILER) + $(AM_V_GEN)$(G_IR_COMPILER) --includedir $(top_srcdir)/WebKit/gtk --includedir $(builddir) $< -o $@ + +CLEANFILES += $(JSCORE_GIRSOURCES) $(WEBKIT_GIRSOURCES) $(typelibs_DATA) + +endif + +EXTRA_DIST += $(builddir)/WebKit/gtk/JSCore-@WEBKITGTK_API_VERSION@.gir + +WEBKIT_MARSHAL = $(GENSOURCES)/webkitmarshal +WEBKIT_MARSHAL_LIST = $(top_srcdir)/WebKit/gtk/webkitmarshal.list + +$(WEBKIT_MARSHAL).cpp: stamp-webkitmarshal.cpp + @true + +$(WEBKIT_MARSHAL).h: stamp-webkitmarshal.h + @true + +stamp-webkitmarshal.cpp: $(WEBKIT_MARSHAL_LIST) + $(AM_V_GEN) echo "extern \"C\" {" > $(WEBKIT_MARSHAL).cpp && \ + $(GLIB_GENMARSHAL) --prefix=webkit_marshal $(WEBKIT_MARSHAL_LIST) --body >> $(WEBKIT_MARSHAL).cpp && echo '}' >> $(WEBKIT_MARSHAL).cpp && \ + echo timestamp > $(@F) + +stamp-webkitmarshal.h: $(WEBKIT_MARSHAL_LIST) + $(AM_V_GEN)$(GLIB_GENMARSHAL) --prefix=webkit_marshal $(WEBKIT_MARSHAL_LIST) --header > $(WEBKIT_MARSHAL).h && \ + echo timestamp > $(@F) + +WebKit/gtk/webkit/webkitenumtypes.h: stamp-webkitenumtypes.h + @true +stamp-webkitenumtypes.h: $(webkitgtk_h_api) GNUmakefile + $(AM_V_GEN)glib-mkenums \ + --fhead "#ifndef WEBKIT_ENUM_TYPES_H\n" \ + --fhead "#define WEBKIT_ENUM_TYPES_H\n\n" \ + --fhead "#include \n\n" \ + --fhead "#include \n\n" \ + --fhead "G_BEGIN_DECLS\n\n" \ + --ftail "G_END_DECLS\n\n" \ + --ftail "#endif\n" \ + --fprod "#include \n\n" \ + --eprod "#define WEBKIT_TYPE_@ENUMSHORT@ @enum_name@_get_type()\n\n" \ + --eprod "WEBKIT_API GType\n@enum_name@_get_type(void);\n\n" \ + $(webkitgtk_h_api) | \ + sed 's,web_kit,webkit,' | \ + sed 's,WEBKIT_TYPE_KIT,WEBKIT_TYPE,' \ + > xgen-gth \ + && (cmp -s xgen-gth WebKit/gtk/webkit/webkitenumtypes.h || cp xgen-gth WebKit/gtk/webkit/webkitenumtypes.h) \ + && rm -f xgen-gth \ + && echo timestamp > $(@F) + +DerivedSources/webkitenumtypes.cpp: $(webkitgtk_h_api) GNUmakefile + $(AM_V_GEN)glib-mkenums \ + --fhead "#include \n" \ + --fhead "#include \n" \ + --fhead "#include \"$(top_builddir)/WebKit/gtk/webkit/webkitenumtypes.h\"\n\n" \ + --fhead "extern \"C\" {\n\n" \ + --fprod "\n/* enumerations from \"@filename@\" */" \ + --vhead "static const G@Type@Value _@enum_name@_values[] = {" \ + --vprod " { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \ + --vtail " { 0, NULL, NULL }\n};\n\n" \ + --vtail "GType @enum_name@_get_type(void)\n{\n" \ + --vtail " static GType type = 0;\n\n" \ + --vtail " if (!type)\n" \ + --vtail " type = g_@type@_register_static(\"@EnumName@\", _@enum_name@_values);\n\n" \ + --vtail " return type;\n}\n\n" \ + --ftail "}\n" \ + $(webkitgtk_h_api) | \ + sed 's,web_kit,webkit,' \ + > xgen-gtc \ + && cp xgen-gtc $@ \ + && rm -f xgen-gtc + +WebKit/gtk/webkit/webkitdomenumtypes.h: stamp-webkitdomenumtypes.h + @true +stamp-webkitdomenumtypes.h: $(libgdom_h_api) GNUmakefile + $(AM_V_GEN)glib-mkenums \ + --fhead "#ifndef WEBKIT_DOM_ENUM_TYPES_H\n" \ + --fhead "#define WEBKIT_DOM_ENUM_TYPES_H\n\n" \ + --fhead "#include \n\n" \ + --fhead "G_BEGIN_DECLS\n\n" \ + --ftail "G_END_DECLS\n\n" \ + --ftail "#endif\n" \ + --fprod "#include \n\n" \ + --eprod "#define WEBKIT_DOM_TYPE_@ENUMSHORT@ @enum_name@_get_type()\n\n" \ + --eprod "WEBKIT_API GType\n@enum_name@_get_type(void);n\n" \ + $(libgdom_h_api) | \ + sed 's,web_kit,webkit_dom,' | \ + sed 's,WEBKIT_DOM_TYPE_KIT,WEBKIT_DOM_TYPE,' \ + > xgen-cgth \ + && (cmp -s xgen-cgth WebKit/gtk/webkit/webkitdomenumtypes.h || cp xgen-cgth WebKit/gtk/webkit/webkitdomenumtypes.h) \ + && rm -f xgen-cgth \ + && echo timestamp > $(@F) + +DerivedSources/webkitdomenumtypes.cpp: $(top_builddir)/WebKit/gtk/webkit/webkitdomenumtypes.h $(libgdom_h_api) GNUmakefile + $(AM_V_GEN)glib-mkenums \ + --fhead "#include \n" \ + --fhead "#include \n" \ + --fhead "#include \"$(top_builddir)/WebKit/gtk/webkit/webkitdomenumtypes.h\"\n\n" \ + --fhead "extern \"C\" {\n\n" \ + --fprod "\n/* enumerations from \"@filename@\" */" \ + --vhead "static const G@Type@Value _@enum_name@_values] = {" \ + --vprod " { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \ + --vtail " { 0, NULL, NULL }\n};\n\n" \ + --vtail "GType @enum_name@_get_type(void)\n{\n" \ + --vtail " static GType type = 0;\n\n" \ + --vtail " if (!type)\n" \ + --vtail " type = g_@type@_register_static(\"@EnumName@\", _@enum_name@_values);\n\n" \ + --vtail " return type;\n}\n\n" \ + --ftail "}\n" \ + $(libgdom_h_api) | \ + sed 's,web_kit,webkitdom,' \ + > xgen-cgtc \ + && cp xgen-cgtc $@ \ + && rm -f xgen-cgtc + +# Files that will be distributed +EXTRA_DIST += \ + $(srcdir)/gtk-doc.make \ + WebKit/LICENSE \ + $(javascriptcore_dist) \ + $(webcore_dist) \ + $(srcdir)/autotools/symbols.filter \ + $(srcdir)/WebKit/gtk/ChangeLog \ + $(srcdir)/WebKit/gtk/NEWS \ + $(srcdir)/WebKit/gtk/webkitmarshal.list \ + $(srcdir)/WebKit/gtk/docs/GNUmakefile.* \ + $(srcdir)/WebKit/gtk/docs/webkitenvironment.xml \ + $(srcdir)/WebKit/gtk/docs/webkitgtk-docs.sgml \ + $(srcdir)/WebKit/gtk/docs/webkitgtk-sections.txt \ + $(srcdir)/WebKit/gtk/docs/version.xml.in \ + $(srcdir)/WebKit/gtk/po/* \ + $(srcdir)/WebKit/gtk/resources/* \ + $(srcdir)/WebKit/gtk/tests/resources/* \ + $(srcdir)/WebKit/gtk/tests/test_utils.h + +# extra resource files +resourcesdir = ${datadir}/webkit-@WEBKITGTK_API_VERSION@/resources +dist_resources_DATA = \ + $(shell ls $(srcdir)/WebKit/gtk/resources/*.html) + +# END WEBKIT GTK+ + +# Include module makefiles +include JavaScriptCore/GNUmakefile.am +include WebCore/GNUmakefile.am +include WebKitTools/GNUmakefile.am +include WebKit/gtk/po/GNUmakefile.am + +# Build unit tests +noinst_PROGRAMS += $(TEST_PROGS) + +webkit_tests_cflags = \ + -fno-strict-aliasing \ + -I$(srcdir)/JavaScriptCore/ForwardingHeaders \ + -I$(srcdir)/WebKit/gtk \ + -I$(top_builddir)/WebKit/gtk \ + -I$(top_builddir)/DerivedSources \ + -I$(top_srcdir)/WebCore/bindings \ + -I$(top_srcdir)/WebCore/bindings/gobject \ + $(global_cflags) \ + $(GLIB_CFLAGS) \ + $(GTK_CFLAGS) \ + $(LIBSOUP_CFLAGS) + +webkit_tests_ldadd = \ + libwebkitgtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la \ + $(GTK_LIBS) \ + $(GLIB_LIBS) \ + $(LIBSOUP_LIBS) + +webkit_tests_ldflags = \ + -no-install \ + -no-fast-install + +TEST_PROGS += \ + Programs/unittests/testdomdocument \ + Programs/unittests/testdomdomwindow \ + Programs/unittests/testdomnode \ + Programs/unittests/testhttpbackend \ + Programs/unittests/testloading \ + Programs/unittests/testglobals \ + Programs/unittests/testmimehandling \ + Programs/unittests/testnetworkrequest \ + Programs/unittests/testnetworkresponse \ + Programs/unittests/testwebframe \ + Programs/unittests/testwebbackforwardlist \ + Programs/unittests/testwebhistoryitem \ + Programs/unittests/testwindow \ + Programs/unittests/testdownload \ + Programs/unittests/testatk \ + Programs/unittests/testatkroles \ + Programs/unittests/testhittestresult \ + Programs/unittests/testwebsettings \ + Programs/unittests/testwebresource \ + Programs/unittests/testwebdatasource \ + Programs/unittests/testwebview \ + Programs/unittests/testkeyevents \ + Programs/unittests/testcopyandpaste + +# Add additional tests here +Programs_unittests_testdomdocument_SOURCES = WebKit/gtk/tests/testdomdocument.c +Programs_unittests_testdomdocument_CFLAGS = $(webkit_tests_cflags) +Programs_unittests_testdomdocument_LDADD = $(webkit_tests_ldadd) +Programs_unittests_testdomdocument_LDFLAGS = $(webkit_tests_ldflags) + +Programs_unittests_testdomdomwindow_SOURCES = WebKit/gtk/tests/testdomdomwindow.c +Programs_unittests_testdomdomwindow_CFLAGS = $(webkit_tests_cflags) +Programs_unittests_testdomdomwindow_LDADD = $(webkit_tests_ldadd) +Programs_unittests_testdomdomwindow_LDFLAGS = $(webkit_tests_ldflags) + +Programs_unittests_testdomnode_SOURCES = WebKit/gtk/tests/testdomnode.c +Programs_unittests_testdomnode_CFLAGS = $(webkit_tests_cflags) +Programs_unittests_testdomnode_LDADD = $(webkit_tests_ldadd) +Programs_unittests_testdomnode_LDFLAGS = $(webkit_tests_ldflags) + +Programs_unittests_testhttpbackend_SOURCES = WebKit/gtk/tests/testhttpbackend.c +Programs_unittests_testhttpbackend_CFLAGS = $(webkit_tests_cflags) +Programs_unittests_testhttpbackend_LDADD = $(webkit_tests_ldadd) +Programs_unittests_testhttpbackend_LDFLAGS = $(webkit_tests_ldflags) + +Programs_unittests_testglobals_SOURCES = WebKit/gtk/tests/testglobals.c +Programs_unittests_testglobals_CFLAGS = $(webkit_tests_cflags) +Programs_unittests_testglobals_LDADD = $(webkit_tests_ldadd) +Programs_unittests_testglobals_LDFLAGS = $(webkit_tests_ldflags) + +Programs_unittests_testloading_SOURCES = WebKit/gtk/tests/testloading.c +Programs_unittests_testloading_CFLAGS = $(webkit_tests_cflags) +Programs_unittests_testloading_LDADD = $(webkit_tests_ldadd) +Programs_unittests_testloading_LDFLAGS = $(webkit_tests_ldflags) + +Programs_unittests_testmimehandling_SOURCES = WebKit/gtk/tests/testmimehandling.c WebKit/gtk/tests/test_utils.c +Programs_unittests_testmimehandling_CFLAGS = $(webkit_tests_cflags) +Programs_unittests_testmimehandling_LDADD = $(webkit_tests_ldadd) +Programs_unittests_testmimehandling_LDFLAGS = $(webkit_tests_ldflags) + +Programs_unittests_testnetworkrequest_SOURCES = WebKit/gtk/tests/testnetworkrequest.c +Programs_unittests_testnetworkrequest_CFLAGS = $(webkit_tests_cflags) +Programs_unittests_testnetworkrequest_LDADD = $(webkit_tests_ldadd) +Programs_unittests_testnetworkrequest_LDFLAGS = $(webkit_tests_ldflags) + +Programs_unittests_testnetworkresponse_SOURCES = WebKit/gtk/tests/testnetworkresponse.c +Programs_unittests_testnetworkresponse_CFLAGS = $(webkit_tests_cflags) +Programs_unittests_testnetworkresponse_LDADD = $(webkit_tests_ldadd) +Programs_unittests_testnetworkresponse_LDFLAGS = $(webkit_tests_ldflags) + +Programs_unittests_testwebframe_SOURCES = WebKit/gtk/tests/testwebframe.c +Programs_unittests_testwebframe_CFLAGS = $(webkit_tests_cflags) +Programs_unittests_testwebframe_LDADD = $(webkit_tests_ldadd) +Programs_unittests_testwebframe_LDFLAGS = $(webkit_tests_ldflags) + +Programs_unittests_testwebbackforwardlist_SOURCES = WebKit/gtk/tests/testwebbackforwardlist.c +Programs_unittests_testwebbackforwardlist_CFLAGS = $(webkit_tests_cflags) +Programs_unittests_testwebbackforwardlist_LDADD = $(webkit_tests_ldadd) +Programs_unittests_testwebbackforwardlist_LDFLAGS = $(webkit_tests_ldflags) + +Programs_unittests_testwebhistoryitem_SOURCES = WebKit/gtk/tests/testwebhistoryitem.c +Programs_unittests_testwebhistoryitem_CFLAGS = $(webkit_tests_cflags) +Programs_unittests_testwebhistoryitem_LDADD = $(webkit_tests_ldadd) +Programs_unittests_testwebhistoryitem_LDFLAGS = $(webkit_tests_ldflags) + +Programs_unittests_testwindow_SOURCES = WebKit/gtk/tests/testwindow.c +Programs_unittests_testwindow_CFLAGS = $(webkit_tests_cflags) +Programs_unittests_testwindow_LDADD = $(webkit_tests_ldadd) +Programs_unittests_testwindow_LDFLAGS = $(webkit_tests_ldflags) + +Programs_unittests_testdownload_SOURCES = WebKit/gtk/tests/testdownload.c +Programs_unittests_testdownload_CFLAGS = $(webkit_tests_cflags) +Programs_unittests_testdownload_LDADD = $(webkit_tests_ldadd) +Programs_unittests_testdownload_LDFLAGS = $(webkit_tests_ldflags) + +Programs_unittests_testatk_SOURCES = WebKit/gtk/tests/testatk.c +Programs_unittests_testatk_CFLAGS = $(webkit_tests_cflags) +Programs_unittests_testatk_LDADD = $(webkit_tests_ldadd) +Programs_unittests_testatk_LDFLAGS = $(webkit_tests_ldflags) + +Programs_unittests_testatkroles_SOURCES = WebKit/gtk/tests/testatkroles.c +Programs_unittests_testatkroles_CFLAGS = $(webkit_tests_cflags) +Programs_unittests_testatkroles_LDADD = $(webkit_tests_ldadd) +Programs_unittests_testatkroles_LDFLAGS = $(webkit_tests_ldflags) + +Programs_unittests_testwebsettings_SOURCES = WebKit/gtk/tests/testwebsettings.c +Programs_unittests_testwebsettings_CFLAGS = $(webkit_tests_cflags) +Programs_unittests_testwebsettings_LDADD = $(webkit_tests_ldadd) +Programs_unittests_testwebsettings_LDFLAGS = $(webkit_tests_ldflags) + +Programs_unittests_testwebresource_SOURCES = WebKit/gtk/tests/testwebresource.c +Programs_unittests_testwebresource_CFLAGS = $(webkit_tests_cflags) +Programs_unittests_testwebresource_LDADD = $(webkit_tests_ldadd) + +Programs_unittests_testwebdatasource_SOURCES = WebKit/gtk/tests/testwebdatasource.c +Programs_unittests_testwebdatasource_CFLAGS = $(webkit_tests_cflags) +Programs_unittests_testwebdatasource_LDADD = $(webkit_tests_ldadd) + +Programs_unittests_testwebview_SOURCES = WebKit/gtk/tests/testwebview.c WebKit/gtk/tests/test_utils.c +Programs_unittests_testwebview_CFLAGS = $(webkit_tests_cflags) +Programs_unittests_testwebview_LDADD = $(webkit_tests_ldadd) +Programs_unittests_testwebview_LDFLAGS = $(webkit_tests_ldflags) + +Programs_unittests_testhittestresult_SOURCES = WebKit/gtk/tests/testhittestresult.c +Programs_unittests_testhittestresult_CFLAGS = $(webkit_tests_cflags) +Programs_unittests_testhittestresult_LDADD = $(webkit_tests_ldadd) + +Programs_unittests_testkeyevents_SOURCES = WebKit/gtk/tests/testkeyevents.c +Programs_unittests_testkeyevents_CFLAGS = $(webkit_tests_cflags) +Programs_unittests_testkeyevents_LDADD = $(webkit_tests_ldadd) +Programs_unittests_testkeyevents_LDFLAGS = $(webkit_tests_ldflags) + +Programs_unittests_testcopyandpaste_SOURCES = WebKit/gtk/tests/testcopyandpaste.c +Programs_unittests_testcopyandpaste_CFLAGS = $(webkit_tests_cflags) +Programs_unittests_testcopyandpaste_LDADD = $(webkit_tests_ldadd) +Programs_unittests_testcopyandpaste_LDFLAGS = $(webkit_tests_ldflags) + +# Autogenerated sources +BUILT_SOURCES += \ + $(javascriptcore_built_sources) \ + $(javascriptcore_built_nosources) \ + $(webcore_built_sources) \ + $(webcore_built_nosources) \ + $(webkitgtk_built_sources) \ + $(webkitgtk_built_nosources) \ + $(gdom_built_nosources) + +# Project-wide clean rules +# Files that will be cleaned +CLEANFILES += \ + $(BUILT_SOURCES) \ + $(webkitgtk_cleanfiles) \ + $(libgdom_cleanfiles) + +DISTCLEANFILES += \ + $(CLEANFILES) + +MAINTAINERCLEANFILES += \ + $(CLEANFILES) \ + $(srcdir)/aconfig.h.in \ + $(srcdir)/autotools/config.* \ + $(srcdir)/autotools/compile \ + $(srcdir)/autotools/depcomp \ + $(srcdir)/autotools/install-sh \ + $(srcdir)/autotools/missing \ + $(srcdir)/configure \ + $(srcdir)/GNUmakefile.in \ + $(srcdir)/INSTALL \ + $(srcdir)/README \ + $(top_builddir)/config.* + +# Older automake versions (1.7) place Plo files in a different place so we need +# to create the output directory manually. +all-local: stamp-po + $(mkdir_p) $(top_builddir)/$(DEPDIR)/DerivedSources + +# remove built sources and program directories +clean-local: + -rm -rf $(GENPROGRAMS) + +maintainer-clean-local: distclean-local + +distclean-local: + -rm -rf $(GENSOURCES) $(GENPROGRAMS) + +dist-hook: + cp $(srcdir)/WebKit/gtk/NEWS $(distdir)/ + +install-data-local: po-install-data-local + +installdirs-data-local: po-installdirs-data-local + +uninstall-local: po-uninstall-local + +# Run all tests in cwd +# FIXME: we should run this under xvfb +test: $(TEST_PROGS) + $(GTESTER) --verbose $(TEST_PROGS); + +# test-report: run tests in cwd and generate report +# full-report: run tests in cwd with -m perf and -m slow and generate report +# perf-report: run tests in cwd with -m perf and generate report +test-report full-report perf-report: $(TEST_PROGS) + @ case $@ in \ + test-report) test_options="-k";; \ + full-report) test_options="-k -m=perf";; \ + perf-report) test_options="-k -m=perf -m=slow";; \ + esac ; \ + $(GTESTER) --verbose $$test_options -o test-report.xml $(TEST_PROGS); \ + $(GTESTER_REPORT) test-report.xml > test-report.html ; + +.PHONY: test test-report perf-report full-report +check-local: test diff --git a/meta/recipes-sato/webkit/files/Makefile b/meta/recipes-sato/webkit/files/Makefile new file mode 100644 index 0000000000..1e50d1d358 --- /dev/null +++ b/meta/recipes-sato/webkit/files/Makefile @@ -0,0 +1,17 @@ +MODULES = JavaScriptCore JavaScriptGlue WebCore WebKit WebKit2 WebKitTools + +all: + @for dir in $(MODULES); do ${MAKE} $@ -C $$dir; exit_status=$$?; \ + if [ $$exit_status -ne 0 ]; then exit $$exit_status; fi; done + +debug d development dev develop: + @for dir in $(MODULES); do ${MAKE} $@ -C $$dir; exit_status=$$?; \ + if [ $$exit_status -ne 0 ]; then exit $$exit_status; fi; done + +release r deployment dep deploy: + @for dir in $(MODULES); do ${MAKE} $@ -C $$dir; exit_status=$$?; \ + if [ $$exit_status -ne 0 ]; then exit $$exit_status; fi; done + +clean: + @for dir in $(MODULES); do ${MAKE} $@ -C $$dir; exit_status=$$?; \ + if [ $$exit_status -ne 0 ]; then exit $$exit_status; fi; done diff --git a/meta/recipes-sato/webkit/files/Makefile.shared b/meta/recipes-sato/webkit/files/Makefile.shared new file mode 100644 index 0000000000..aa9fa728d6 --- /dev/null +++ b/meta/recipes-sato/webkit/files/Makefile.shared @@ -0,0 +1,18 @@ +SCRIPTS_PATH ?= ../WebKitTools/Scripts +XCODE_OPTIONS = `perl -I$(SCRIPTS_PATH) -Mwebkitdirs -e 'print XcodeOptionString()'` $(ARGS) + +all: + ( xcodebuild $(OTHER_OPTIONS) $(XCODE_OPTIONS) | grep -v setenv && exit $${PIPESTATUS[0]} ) + +debug d development dev develop: force + $(SCRIPTS_PATH)/set-webkit-configuration --debug + ( xcodebuild $(OTHER_OPTIONS) $(XCODE_OPTIONS) | grep -v setenv && exit $${PIPESTATUS[0]} ) + +release r deployment dep deploy: force + $(SCRIPTS_PATH)/set-webkit-configuration --release + ( xcodebuild $(OTHER_OPTIONS) $(XCODE_OPTIONS) | grep -v setenv && exit $${PIPESTATUS[0]} ) + +clean: + ( xcodebuild $(OTHER_OPTIONS) -alltargets clean $(XCODE_OPTIONS) | grep -v setenv && exit $${PIPESTATUS[0]} ) + +force: ; diff --git a/meta/recipes-sato/webkit/files/WebKit.pri b/meta/recipes-sato/webkit/files/WebKit.pri new file mode 100644 index 0000000000..d12423beb2 --- /dev/null +++ b/meta/recipes-sato/webkit/files/WebKit.pri @@ -0,0 +1,107 @@ +# Include file to make it easy to include WebKit into Qt projects + + +isEmpty(OUTPUT_DIR) { + CONFIG(release):OUTPUT_DIR=$$PWD/WebKitBuild/Release + CONFIG(debug):OUTPUT_DIR=$$PWD/WebKitBuild/Debug +} + +!gtk-port:CONFIG += qt-port +qt-port:DEFINES += BUILDING_QT__=1 +qt-port:!building-libs { + QMAKE_LIBDIR = $$OUTPUT_DIR/lib $$QMAKE_LIBDIR + LIBS += -lQtWebKit + DEPENDPATH += $$PWD/WebKit/qt/Api +} + +gtk-port:!building-libs { + QMAKE_LIBDIR = $$OUTPUT_DIR/lib $$QMAKE_LIBDIR + LIBS += -lWebKitGtk + DEPENDPATH += $$PWD/WebKit/gtk $$PWD/WebKit/gtk/WebCoreSupport $$PWD/WebKit/gtk/webkit +} + +gtk-port { + CONFIG += link_pkgconfig + + DEFINES += BUILDING_CAIRO__=1 BUILDING_GTK__=1 + + # We use FreeType directly with Cairo + PKGCONFIG += cairo-ft + + directfb: PKGCONFIG += cairo-directfb gtk+-directfb-2.0 + else: PKGCONFIG += cairo gtk+-2.0 + + # Set a CONFIG flag for the GTK+ target (x11, quartz, win32, directfb) + CONFIG += $$system(pkg-config --variable=target $$PKGCONFIG) + + # We use the curl http backend on all platforms + PKGCONFIG += libcurl + DEFINES += WTF_USE_CURL=1 + + LIBS += -lWebKitGtk -ljpeg -lpng + + QMAKE_CXXFLAGS += $$system(icu-config --cppflags) + QMAKE_LIBS += $$system(icu-config --ldflags) + + # This set of warnings is borrowed from the Mac build + QMAKE_CXXFLAGS += -Wall -W -Wcast-align -Wchar-subscripts -Wformat-security -Wmissing-format-attribute -Wpointer-arith -Wwrite-strings -Wno-format-y2k -Wno-unused-parameter -Wundef + + # These flags are based on optimization experience from the Mac port: + # Helps code size significantly and speed a little + QMAKE_CXXFLAGS += -fno-exceptions -fno-rtti + + DEPENDPATH += $$PWD/JavaScriptCore/API + INCLUDEPATH += $$PWD +} + +DEFINES += USE_SYSTEM_MALLOC +CONFIG(release) { + DEFINES += NDEBUG +} + +gtk-port:CONFIG(debug) { + DEFINES += G_DISABLE_DEPRECATED GDK_PIXBUF_DISABLE_DEPRECATED GDK_DISABLE_DEPRECATED GTK_DISABLE_DEPRECATED PANGO_DISABLE_DEPRECATED +# maybe useful for debugging DEFINES += GDK_MULTIHEAD_SAFE GTK_MULTIHEAD_SAFE +} + +BASE_DIR = $$PWD +qt-port:INCLUDEPATH += \ + $$PWD/WebKit/qt/Api +gtk-port:INCLUDEPATH += \ + $$BASE_DIR/WebCore/platform/gtk \ + $$BASE_DIR/WebCore/platform/network/curl \ + $$BASE_DIR/WebCore/platform/graphics/cairo \ + $$BASE_DIR/WebCore/loader/gtk \ + $$BASE_DIR/WebCore/page/gtk \ + $$BASE_DIR/WebKit/gtk \ + $$BASE_DIR/WebKit/gtk/WebCoreSupport \ + $$BASE_DIR/WebKit/gtk/webkit +INCLUDEPATH += \ + $$BASE_DIR/JavaScriptCore/ \ + $$BASE_DIR/JavaScriptCore/kjs \ + $$BASE_DIR/JavaScriptCore/bindings \ + $$BASE_DIR/JavaScriptCore/bindings/c \ + $$BASE_DIR/JavaScriptCore/wtf \ + $$BASE_DIR/JavaScriptCore/ForwardingHeaders \ + $$BASE_DIR/WebCore \ + $$BASE_DIR/WebCore/ForwardingHeaders \ + $$BASE_DIR/WebCore/platform \ + $$BASE_DIR/WebCore/platform/network \ + $$BASE_DIR/WebCore/platform/graphics \ + $$BASE_DIR/WebCore/loader \ + $$BASE_DIR/WebCore/page \ + $$BASE_DIR/WebCore/css \ + $$BASE_DIR/WebCore/dom \ + $$BASE_DIR/WebCore/bridge \ + $$BASE_DIR/WebCore/editing \ + $$BASE_DIR/WebCore/rendering \ + $$BASE_DIR/WebCore/history \ + $$BASE_DIR/WebCore/xml \ + $$BASE_DIR/WebCore/html \ + $$BASE_DIR/WebCore/plugins + + +macx { + INCLUDEPATH += /usr/include/libxml2 + LIBS += -lxml2 -lxslt +} diff --git a/meta/recipes-sato/webkit/files/WebKit.pro b/meta/recipes-sato/webkit/files/WebKit.pro new file mode 100644 index 0000000000..bc14feb5f6 --- /dev/null +++ b/meta/recipes-sato/webkit/files/WebKit.pro @@ -0,0 +1,21 @@ +TEMPLATE = subdirs +CONFIG += ordered +!gtk-port:CONFIG += qt-port +qt-port { + lessThan(QT_MINOR_VERSION, 4) { + !win32-*:SUBDIRS += WebKit/qt/Plugins + } +} +SUBDIRS += \ + WebCore \ + JavaScriptCore/kjs/testkjs.pro + +qt-port { + SUBDIRS += WebKit/qt/QtLauncher + + !win32-*: SUBDIRS += WebKitTools/DumpRenderTree/qt/DumpRenderTree.pro +} + +gtk-port:SUBDIRS += \ + WebKitTools/GtkLauncher \ + WebKitTools/DumpRenderTree/gtk/DumpRenderTree.pro diff --git a/meta/recipes-sato/webkit/files/autogen.sh b/meta/recipes-sato/webkit/files/autogen.sh new file mode 100755 index 0000000000..97beb209d2 --- /dev/null +++ b/meta/recipes-sato/webkit/files/autogen.sh @@ -0,0 +1,63 @@ +#! /bin/sh + +# Allow invocation from a separate build directory; in that case, we change +# to the source directory to run the auto*, then change back before running configure +srcdir=`dirname $0` +test -z "$srcdir" && srcdir=. + +ORIGDIR=`pwd` +cd $srcdir + +GTKDOCIZE_FLAGS="--copy" +LIBTOOLIZE_FLAGS="--force --automake" +ACLOCAL_FLAGS="-I autotools" +AUTOMAKE_FLAGS="--foreign --add-missing" + +DIE=0 + +(autoconf --version) < /dev/null > /dev/null 2>&1 || { + echo + echo "You must have autoconf installed to compile $PROJECT." + echo "Install the appropriate package for your distribution," + echo "or get the source tarball at http://ftp.gnu.org/gnu/autoconf/" + DIE=1 +} + +(automake --version) < /dev/null > /dev/null 2>&1 || { + echo + echo "You must have automake installed to compile $PROJECT." + echo "Install the appropriate package for your distribution," + echo "or get the source tarball at http://ftp.gnu.org/gnu/automake/" + DIE=1 +} + +LIBTOOLIZE=libtoolize +($LIBTOOLIZE --version) < /dev/null > /dev/null 2>&1 || { + LIBTOOLIZE=glibtoolize + ($LIBTOOLIZE --version) < /dev/null > /dev/null 2>&1 || { + echo + echo "You must have libtool installed to compile $PROJECT." + echo "Install the appropriate package for your distribution," + echo "or get the source tarball at http://ftp.gnu.org/gnu/libtool/" + DIE=1 + } +} + +if test "$DIE" -eq 1; then + exit 1 +fi + +rm -rf $top_srcdir/autom4te.cache + +touch README INSTALL + +gtkdocize $GTKDOCIZE_FLAGS > /dev/null 2>&1 || echo "Warning: not running gtk-docize." +aclocal $ACLOCAL_FLAGS || exit $? +$LIBTOOLIZE $LIBTOOLIZE_FLAGS || exit $? +autoheader || exit $? +automake $AUTOMAKE_FLAGS || exit $? +autoconf || exit $? + +cd $ORIGDIR || exit 1 + +$srcdir/configure $AUTOGEN_CONFIGURE_ARGS "$@" || exit $? diff --git a/meta/recipes-sato/webkit/files/configure.ac b/meta/recipes-sato/webkit/files/configure.ac new file mode 100644 index 0000000000..d4f3e749fc --- /dev/null +++ b/meta/recipes-sato/webkit/files/configure.ac @@ -0,0 +1,983 @@ +AC_PREREQ(2.59) + +m4_define([webkit_major_version], [1]) +m4_define([webkit_minor_version], [3]) +m4_define([webkit_micro_version], [2]) + +# This is the version we'll be using as part of our User-Agent string +# e.g., AppleWebKit/$(webkit_user_agent_version) ... +# +# Sourced from WebCore/Configurations/Version.xcconfig +m4_define([webkit_user_agent_major_version], [531]) +m4_define([webkit_user_agent_minor_version], [2]) + +AC_INIT([WebKit],[webkit_major_version.webkit_minor_version.webkit_micro_version],[http://bugs.webkit.org/]) + +AC_CONFIG_MACRO_DIR([autotools]) +AC_CONFIG_AUX_DIR([autotools]) +AC_SUBST(ACLOCAL_AMFLAGS, "-I autotools") + +AC_CONFIG_HEADERS([autotoolsconfig.h]) +AC_CANONICAL_HOST + +WEBKIT_MAJOR_VERSION=webkit_major_version +WEBKIT_MINOR_VERSION=webkit_minor_version +WEBKIT_MICRO_VERSION=webkit_micro_version +WEBKIT_USER_AGENT_MAJOR_VERSION=webkit_user_agent_major_version +WEBKIT_USER_AGENT_MINOR_VERSION=webkit_user_agent_minor_version +AC_SUBST(WEBKIT_MAJOR_VERSION) +AC_SUBST(WEBKIT_MINOR_VERSION) +AC_SUBST(WEBKIT_MICRO_VERSION) +AC_SUBST(WEBKIT_USER_AGENT_MAJOR_VERSION) +AC_SUBST(WEBKIT_USER_AGENT_MINOR_VERSION) + +AC_CONFIG_SRCDIR([WebCore/config.h]) + +dnl # Libtool library version, not to confuse with API version +dnl # see http://www.gnu.org/software/libtool/manual/html_node/Libtool-versioning.html#Libtool-versioning +LIBWEBKITGTK_VERSION=0:0:0 +AC_SUBST([LIBWEBKITGTK_VERSION]) + +AM_INIT_AUTOMAKE([foreign subdir-objects tar-ustar]) + +# Use AM_SILENT_RULES if present +m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) + +# host checking - inspired by the GTK+ configure.in +# TODO: move these to webkit.m4? +AC_MSG_CHECKING([for native Win32]) +case "$host" in + *-*-mingw*) + os_win32=yes + ;; + *) + os_win32=no + ;; +esac +AC_MSG_RESULT([$os_win32]) + +case "$host" in + *-*-linux*) + os_linux=yes + ;; + *-*-freebsd*) + os_freebsd=yes + ;; + *-*-darwin*) + os_darwin=yes + ;; +esac + +case "$host_os" in + gnu* | linux* | k*bsd*-gnu) + os_gnu=yes + ;; + *) + os_gnu=no + ;; +esac + +# initialize webkit options +WEBKIT_INIT +AC_DISABLE_STATIC +AC_LIBTOOL_WIN32_DLL +AC_PROG_LIBTOOL + +AC_PATH_PROG(FLEX, flex) +if test -z "$FLEX"; then + AC_MSG_ERROR([You need the 'flex' lexer generator to compile WebKit]) +else + FLEX_VERSION=`$FLEX --version | sed 's,.*\ \([0-9]*\.[0-9]*\.[0-9]*\)$,\1,'` + AX_COMPARE_VERSION([2.5.33],[gt],[$FLEX_VERSION], + AC_MSG_WARN([You need at least version 2.5.33 of the 'flex' lexer generator to compile WebKit correctly])) +fi + +AC_PATH_PROG(GPERF, gperf) +if test -z "$GPERF"; then + AC_MSG_ERROR([You need the 'gperf' hash function generator to compile WebKit]) +fi + +# pthread (not needed on Windows) +if test "$os_win32" = "no"; then +AC_CHECK_HEADERS([pthread.h], + AC_DEFINE([HAVE_PTHREAD_H],[1],[Define if pthread exists]), + AC_MSG_ERROR([pthread support is required to build WebKit])) +fi + +# check for libjpeg the way Gtk does it. +AC_CHECK_LIB(jpeg, jpeg_destroy_decompress, + jpeg_ok=yes, jpeg_ok=no + AC_MSG_ERROR([JPEG library (libjpeg) not found])) +if test "$jpeg_ok" = yes; then + AC_MSG_CHECKING([for jpeglib]) + AC_TRY_CPP( +[#include +#undef PACKAGE +#undef VERSION +#undef HAVE_STDLIB_H +#include ], + jpeg_ok=yes, + jpeg_ok=no) + AC_MSG_RESULT($jpeg_ok) + if test "$jpeg_ok" = yes; then + JPEG_LIBS="-ljpeg" + # should we check for progressive JPEG like GTK+ as well? + else + AC_MSG_ERROR([JPEG library (libjpeg) not found]) + fi +fi +AC_SUBST([JPEG_LIBS]) + +# Check for libpng the way Gtk+ does it +for l in libpng libpng14 libpng12; do + AC_MSG_CHECKING(for $l) + if $PKG_CONFIG --exists $l ; then + AC_MSG_RESULT(yes) + PNG_LIBS=`$PKG_CONFIG --libs $l` + png_ok=yes + break + else + AC_MSG_RESULT(no) + png_ok=no + fi +done +if test "$png_ok" != yes; then + AC_CHECK_LIB(png, png_read_info, + [AC_CHECK_HEADER(png.h, + png_ok=yes, + png_ok=no)], + AC_MSG_ERROR([PNG library (libpng) not found]), -lz -lm) + if test "$png_ok" = yes; then + AC_MSG_CHECKING([for png_structp in png.h]) + AC_TRY_COMPILE([#include ], + [png_structp pp; png_infop info; png_colorp cmap; png_create_read_struct;], + png_ok=yes, + png_ok=no) + AC_MSG_RESULT($png_ok) + if test "$png_ok" = yes; then + PNG_LIBS='-lpng -lz' + else + AC_MSG_ERROR([PNG library (libpng) not found]) + fi + else + AC_MSG_ERROR([PNG library (libpng) not found]) + fi +fi +AC_SUBST([PNG_LIBS]) + +# determine the GTK+ version to use +AC_MSG_CHECKING([the GTK+ version to use]) +AC_ARG_WITH([gtk], + [AS_HELP_STRING([--with-gtk=2.0|3.0], [the GTK+ version to use (default: 2.0)])], + [case "$with_gtk" in + 2.0|3.0) ;; + *) AC_MSG_ERROR([invalid GTK+ version specified]) ;; + esac], + [with_gtk=2.0]) +AC_MSG_RESULT([$with_gtk]) + +case "$with_gtk" in + 2.0) GTK_REQUIRED_VERSION=2.10 + GTK_API_VERSION=2.0 + WEBKITGTK_API_MAJOR_VERSION=1 + WEBKITGTK_API_MINOR_VERSION=0 + WEBKITGTK_API_VERSION=1.0 + WEBKITGTK_PC_NAME=webkit + GAIL_PC_NAME=gail + GAIL_REQUIRED_VERSION=1.8 + ;; + 3.0) GTK_REQUIRED_VERSION=2.90 + GTK_API_VERSION=3.0 + WEBKITGTK_API_MAJOR_VERSION=3 + WEBKITGTK_API_MINOR_VERSION=0 + WEBKITGTK_API_VERSION=3.0 + WEBKITGTK_PC_NAME=webkitgtk + GAIL_PC_NAME=gail-3.0 + GAIL_REQUIRED_VERSION=2.90.4 + ;; +esac + +AC_SUBST([WEBKITGTK_API_MAJOR_VERSION]) +AC_SUBST([WEBKITGTK_API_MINOR_VERSION]) +AC_SUBST([WEBKITGTK_API_VERSION]) +AC_SUBST([WEBKITGTK_PC_NAME]) +AC_SUBST([GTK_API_VERSION]) +AM_CONDITIONAL([GTK_API_VERSION_2],[test "$GTK_API_VERSION" = "2.0"]) + +# determine the GDK/GTK+ target +AC_MSG_CHECKING([the target windowing system]) +AC_ARG_WITH(target, + AC_HELP_STRING([--with-target=@<:@x11/win32/quartz/directfb@:>@], + [Select webkit target [default=x11]]), + [],[with_target="x11"]) + +case "$with_target" in + x11|win32|quartz|directfb) ;; + *) AC_MSG_ERROR([Invalid target: must be x11, quartz, win32, or directfb.]) ;; +esac + +AC_MSG_RESULT([$with_target]) + +AC_MSG_CHECKING([for Hildon UI extensions]) +AC_ARG_WITH(hildon, + AC_HELP_STRING([--with-hildon], + [Use Hildon UI extensions [default=no]]), + [],[with_hildon="no"]) +AC_MSG_RESULT([$with_hildon]) + +if test "$with_hildon" = "yes"; then + HILDON_CPPFLAGS="-DMAEMO_CHANGES" + PKG_CHECK_MODULES([HILDON], [hildon-1]) + AC_SUBST([HILDON_CPPFLAGS]) + AC_SUBST([HILDON_CFLAGS]) + AC_SUBST([HILDON_LIBS]) +fi + +# minimum base dependencies +LIBSOUP_REQUIRED_VERSION=2.28.2 +CAIRO_REQUIRED_VERSION=1.6 +FONTCONFIG_REQUIRED_VERSION=2.4 +FREETYPE2_REQUIRED_VERSION=9.0 +LIBXML_REQUIRED_VERSION=2.6 + +# minimum GTK+ base dependencies +PANGO_REQUIRED_VERSION=1.12 + +# optional modules +LIBXSLT_REQUIRED_VERSION=1.1.7 +SQLITE_REQUIRED_VERSION=3.0 +GSTREAMER_REQUIRED_VERSION=0.10 +GSTREAMER_PLUGINS_BASE_REQUIRED_VERSION=0.10.25 +ENCHANT_REQUIRED_VERSION=0.22 + +# Available modules +# +# glib - glib and includes gthread +# unicode - check and identify which unicode backend to use +# +# todo: webcore gtk +WEBKIT_CHECK_DEPENDENCIES([glib unicode]) + +GETTEXT_PACKAGE=$PACKAGE +AC_SUBST(GETTEXT_PACKAGE) +AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", + [The gettext catalog name]) + +PKG_CHECK_MODULES(LIBXML, libxml-2.0 >= $LIBXML_REQUIRED_VERSION) +AC_SUBST(LIBXML_CFLAGS) +AC_SUBST(LIBXML_LIBS) + +PKG_CHECK_MODULES(PANGO, + [pango >= $PANGO_REQUIRED_VERSION + pangoft2]) +AC_SUBST(PANGO_CFLAGS) +AC_SUBST(PANGO_LIBS) + +PKG_CHECK_MODULES(ENCHANT, enchant >= $ENCHANT_REQUIRED_VERSION) +AC_SUBST(ENCHANT_CFLAGS) +AC_SUBST(ENCHANT_LIBS) + +PKG_CHECK_MODULES(GAIL, $GAIL_PC_NAME >= $GAIL_REQUIRED_VERSION) +AC_SUBST(GAIL_CFLAGS) +AC_SUBST(GAIL_LIBS) + +# check for target-specific dependencies +if test "$with_target" = "directfb"; then + PKG_CHECK_MODULES(CAIRO, cairo-directfb >= $CAIRO_REQUIRED_VERSION) + PKG_CHECK_MODULES(GTK, gtk+-directfb-2.0 >= $GTK_REQUIRED_VERSION) + AC_DEFINE([WTF_PLATFORM_DIRECTFB],[1],[Define if target is DirectFB]) +else + PKG_CHECK_MODULES(CAIRO, cairo >= $CAIRO_REQUIRED_VERSION) + PKG_CHECK_MODULES(GTK, gtk+-$GTK_API_VERSION >= $GTK_REQUIRED_VERSION) + + if test "$with_target" = "x11" && test "$os_win32" = "no"; then + # check for XT + PKG_CHECK_MODULES([XT], + [xt], + [xt_has_pkg_config=yes], + [xt_has_pkg_config=no]) + # some old versions of Xt do not provide xt.pc, so try to link against Xt + # and if it's installed fall back to just adding -lXt + if test "$xt_has_pkg_config" = "no"; then + # using AC_CHECK_LIB instead of AC_SEARCH_LIB is fine in this case as + # we don't care about the XtOpenDisplay symbol but only about the + # existence of libXt + AC_CHECK_LIB([Xt], [XtOpenDisplay], + [XT_CFLAGS=""; XT_LIBS="-lXt"], + [AC_MSG_ERROR([X Toolkit Intrinsics library (libXt) not found])]) + fi + AC_SUBST([XT_CFLAGS]) + AC_SUBST([XT_LIBS]) + AC_DEFINE([WTF_PLATFORM_X11],[1],[Define if target is X11]) + fi +fi +AC_SUBST(GTK_CFLAGS) +AC_SUBST(GTK_LIBS) +AC_SUBST(CAIRO_CFLAGS) +AC_SUBST(CAIRO_LIBS) + +# check whether to build with debugging enabled +AC_MSG_CHECKING([whether to do a debug build]) +AC_ARG_ENABLE(debug, + AC_HELP_STRING([--enable-debug], + [turn on debugging [default=no]]), + [],[enable_debug="no"]) +AC_MSG_RESULT([$enable_debug]) + +# check whether to enable optimized builds +AC_MSG_CHECKING([whether to enable optimized builds]) +AC_ARG_ENABLE(optimizations, + AC_HELP_STRING([--enable-optimizations], + [turn on optimize builds (GCC only) + [default=yes]]), + [enable_optimizations=$enableval], + [if test "$enable_debug" = "yes"; then enable_optimizations="no"; else enable_optimizations="yes"; fi]) +AC_MSG_RESULT([$enable_optimizations]) + +# check whether to enable 3D transforms support +AC_MSG_CHECKING([whether to enable support for 3D Transforms]) +AC_ARG_ENABLE(3D_transforms, + AC_HELP_STRING([--enable-3D-transforms], + [enable support for 3D transforms [default=no]]), + [],[enable_3D_transforms="no"]) +AC_MSG_RESULT([$enable_3D_transforms]) + +# check whether to enable channel messaging support +AC_MSG_CHECKING([whether to enable HTML5 Channel Messaging support]) +AC_ARG_ENABLE(channel_messaging, + AC_HELP_STRING([--enable-channel-messaging], + [enable HTML5 channel messaging support [default=yes]]), + [],[enable_channel_messaging="yes"]) +AC_MSG_RESULT([$enable_channel_messaging]) + +# check whether to enable JavaScript debugger/profiler support +AC_MSG_CHECKING([whether to enable JavaScript debugger/profiler support]) +AC_ARG_ENABLE(javascript_debugger, + AC_HELP_STRING([--enable-javascript-debugger], + [enable JavaScript debugger/profiler support [default=yes]]), + [],[enable_javascript_debugger="yes"]) +AC_MSG_RESULT([$enable_javascript_debugger]) + +# check whether to enable HTML5 Offline Web Applications support +AC_MSG_CHECKING([whether to enable HTML5 offline web applications support]) +AC_ARG_ENABLE(offline_web_applications, + AC_HELP_STRING([--enable-offline-web-applications], + [enable HTML5 offline web applications support [default=yes]]), + [],[enable_offline_web_applications="yes"]) +AC_MSG_RESULT([$enable_offline_web_applications]) + +# check whether to enable HTML5 client-side session and persitent storage support +AC_MSG_CHECKING([whether to enable HTML5 client-side session and persistent storage support]) +AC_ARG_ENABLE(dom_storage, + AC_HELP_STRING([--enable-dom-storage], + [enable HTML5 client-side session and persistent storage support [default=yes]]), + [],[enable_dom_storage="yes"]) +AC_MSG_RESULT([$enable_dom_storage]) + +# check whether to enable the indexed database API +AC_MSG_CHECKING([whether to enable the indexed database API]) +AC_ARG_ENABLE(indexed_database, + AC_HELP_STRING([--enable-indexeddb], + [enable the indexed database API [default=no]]), + [],[enable_indexed_database="no"]) +AC_MSG_RESULT([$enable_indexed_database]) + +# check whether to enable the speech input API +AC_MSG_CHECKING([whether to enable the speech input API]) +AC_ARG_ENABLE(input_speech, + AC_HELP_STRING([--enable-input-speech], + [enable the speech input API [default=no]]), + [],[enable_input_speech="no"]) +AC_MSG_RESULT([$enable_input_speech]) + +# check whether to build with database support +AC_MSG_CHECKING([whether to enable HTML5 client-side database storage support]) +AC_ARG_ENABLE(database, + AC_HELP_STRING([--enable-database], + [enable HTML5 client-side database storage support [default=yes]]), + [],[enable_database="yes"]) +AC_MSG_RESULT([$enable_database]) + +# check whether to build with server-sent events support +AC_MSG_CHECKING([whether to enable HTML5 server-sent events support]) +AC_ARG_ENABLE(eventsource, + AC_HELP_STRING([--enable-eventsource], + [enable HTML5 server-sent events support [default=yes]]), + [],[enable_eventsource="yes"]) +AC_MSG_RESULT([$enable_eventsource]) + +# check whether to build with icon database support +AC_MSG_CHECKING([whether to enable icon database support]) +AC_ARG_ENABLE(icon_database, + AC_HELP_STRING([--enable-icon-database], + [enable icon database [default=yes]]), + [],[enable_icon_database="yes"]) +AC_MSG_RESULT([$enable_icon_database]) + +# check whether to build with image resizer API support +AC_MSG_CHECKING([whether to enable image resizer API support]) +AC_ARG_ENABLE(image_resizer, + AC_HELP_STRING([--enable-image-resizer], + [enable image resizer [default=no]]), + [],[enable_image_resizer="no"]) +AC_MSG_RESULT([$enable_image_resizer]) + +# check whether to enable HTML5 datalist support +AC_MSG_CHECKING([whether to enable HTML5 datalist support]) +AC_ARG_ENABLE(datalist, + AC_HELP_STRING([--enable-datalist], + [enable HTML5 datalist support [default=yes]]), + [],[enable_datalist="yes"]) +AC_MSG_RESULT([$enable_datalist]) + +# check whether to enable HTML5 ruby support +AC_MSG_CHECKING([whether to enable HTML5 ruby support]) +AC_ARG_ENABLE(ruby, + AC_HELP_STRING([--enable-ruby], + [enable HTML5 ruby support [default=yes]]), + [],[enable_ruby="yes"]) +AC_MSG_RESULT([$enable_ruby]) + +# check whether to enable HTML5 sandbox iframe support +AC_MSG_CHECKING([whether to enable HTML5 sandboxed iframe support]) +AC_ARG_ENABLE(sandbox, + AC_HELP_STRING([--enable-sandbox], + [enable HTML5 sandboxed iframe support [default=yes]]), + [],[enable_sandbox="yes"]) +AC_MSG_RESULT([$enable_sandbox]) + +# check whether to enable HTML5 audio/video support +AC_MSG_CHECKING([whether to enable HTML5 video support]) +AC_ARG_ENABLE(video, + AC_HELP_STRING([--enable-video], + [enable HTML5 video support [default=yes]]), + [],[enable_video="yes"]) +AC_MSG_RESULT([$enable_video]) + +# check whether to enable XHTML-MP support +AC_MSG_CHECKING([whether to enable XHTML-MP support]) +AC_ARG_ENABLE(xhtmlmp, + AC_HELP_STRING([--enable-xhtmlmp], + [enable support for XHTML-MP [default=no]]), + [],[enable_xhtmlmp="no"]) +AC_MSG_RESULT([$enable_xhtmlmp]) + +# check whether to enable XPath support +AC_MSG_CHECKING([whether to enable XPath support]) +AC_ARG_ENABLE(xpath, + AC_HELP_STRING([--enable-xpath], + [enable support for XPath [default=yes]]), + [],[enable_xpath="yes"]) +AC_MSG_RESULT([$enable_xpath]) + +# check whether to enable XSLT support +AC_MSG_CHECKING([whether to enable XSLT support]) +AC_ARG_ENABLE(xslt, + AC_HELP_STRING([--enable-xslt], + [enable support for XSLT [default=yes]]), + [],[enable_xslt="yes"]) +AC_MSG_RESULT([$enable_xslt]) + +# check whether to enable geolocation support +AC_MSG_CHECKING([whether to enable geolocation support]) +AC_ARG_ENABLE(geolocation, + AC_HELP_STRING([--enable-geolocation], + [enable support for geolocation [default=no]]), + [],[enable_geolocation="no"]) +AC_MSG_RESULT([$enable_geolocation]) + +# check whether to enable MathML support +AC_MSG_CHECKING([whether to enable MathML support]) +AC_ARG_ENABLE(mathml, + AC_HELP_STRING([--enable-mathml], + [enable support for MathML [default=no]]), + [],[enable_mathml="no"]) +AC_MSG_RESULT([$enable_mathml]) + +# check whether to enable SVG support +AC_MSG_CHECKING([whether to enable SVG support]) +AC_ARG_ENABLE(svg, + AC_HELP_STRING([--enable-svg], + [enable support for SVG [default=yes]]), + [],[enable_svg="yes"]) +AC_MSG_RESULT([$enable_svg]) + +# check whether to enable WML support +AC_MSG_CHECKING([whether to enable WML support]) +AC_ARG_ENABLE(wml, + AC_HELP_STRING([--enable-wml], + [enable support for WML [default=no]]), + [],[enable_wml="no"]) +AC_MSG_RESULT([$enable_wml]) + +# check whether to enable SharedWorkers support +AC_MSG_CHECKING([whether to enable SharedWorkers support]) +AC_ARG_ENABLE(shared_workers, + AC_HELP_STRING([--enable-shared-workers], + [enable support for SharedWorkers [default=yes]]), + [],[enable_shared_workers="yes"]) +AC_MSG_RESULT([$enable_shared_workers]) + +# check whether to enable Web Workers support +AC_MSG_CHECKING([whether to enable Web Workers support]) +AC_ARG_ENABLE(workers, + AC_HELP_STRING([--enable-workers], + [enable support for Web Workers [default=yes]]), + [],[enable_workers="yes"]) +AC_MSG_RESULT([$enable_workers]) + +# turn off svg features if --disable-svg is requested +if test "$enable_svg" = "no"; then + enable_svg_animation=no + enable_svg_fonts=no + enable_svg_foreign_object=no + enable_svg_as_image=no + enable_svg_use=no +fi + +# check whether to enable support for SVG animation +AC_MSG_CHECKING([whether to enable support for SVG animation]) +AC_ARG_ENABLE(svg_animation, + AC_HELP_STRING([--enable-svg-animation], + [enable support for SVG animation (experimental) [default=yes]]), + [],[enable_svg_animation="yes"]) +AC_MSG_RESULT([$enable_svg_animation]) + +# check whether to enable support for filters +AC_MSG_CHECKING([whether to enable support for filters]) +AC_ARG_ENABLE(filters, + AC_HELP_STRING([--enable-filters], + [enable support for filters (experimental) [default=yes]]), + [],[enable_filters="yes"]) +AC_MSG_RESULT([$enable_filters]) + +# check whether to enable support for SVG fonts +AC_MSG_CHECKING([whether to enable support for SVG fonts]) +AC_ARG_ENABLE(svg_fonts, + AC_HELP_STRING([--enable-svg-fonts], + [enable support for SVG fonts (experimental) [default=yes]]), + [],[enable_svg_fonts="yes"]) +AC_MSG_RESULT([$enable_svg_fonts]) + +# check whether to enable foreign objects support for SVG +AC_MSG_CHECKING([whether to enable support for SVG foreign objects]) +AC_ARG_ENABLE(svg_foreign_object, + AC_HELP_STRING([--enable-svg-foreign-object], + [enable support for SVG foreign objects (experimental) [default=yes]]), + [],[enable_svg_foreign_object="yes"]) +AC_MSG_RESULT([$enable_svg_foreign_object]) + +# check whether to enable SVG As Image support +AC_MSG_CHECKING([whether to enable SVG as Image support]) +AC_ARG_ENABLE(svg_as_image, + AC_HELP_STRING([--enable-svg-as-image], + [enable SVG as Image support (experimental) [default=yes]]), + [],[enable_svg_as_image="yes"]) +AC_MSG_RESULT([$enable_svg_as_image]) + +# check whether to enable SVG USE element support +AC_MSG_CHECKING([whether to enable support for SVG use element]) +AC_ARG_ENABLE(svg_use, + AC_HELP_STRING([--enable-svg-use], + [enable SVG use element support (experimental) [default=yes]]), + [],[enable_svg_use="yes"]) +AC_MSG_RESULT([$enable_svg_use]) + +# check for SVG features, enabling SVG if necessary +if test "$enable_svg_animation" = "yes" || \ + test "$enable_svg_fonts" = "yes" || \ + test "$enable_svg_foreign_object" = "yes" || \ + test "$enable_svg_as_image" = "yes" || \ + test "$enable_svg_use" = "yes"; then + svg_flags=yes + if test "$enable_svg" = "no"; then + AC_MSG_WARN([SVG feature(s) requested but SVG is disabled.. Enabling SVG support]) + enable_svg=yes + fi +fi + +# check whether to enable Web Socket support +AC_MSG_CHECKING([whether to enable Web Sockets support]) +AC_ARG_ENABLE(web_sockets, + AC_HELP_STRING([--enable-web-sockets], + [enable support for Web Sockets [default=no]]), + [],[enable_web_sockets="no"]) +AC_MSG_RESULT([$enable_web_sockets]) + +# check whether to enable Web Timing support +AC_MSG_CHECKING([whether to enable Web Timing support]) +AC_ARG_ENABLE(web_timing, + AC_HELP_STRING([--enable-web-timing], + [enable support for Web Timing [default=no]]), + [],[enable_web_timing="no"]) +AC_MSG_RESULT([$enable_web_timing]) + +# check whether to enable Blob.slice support +AC_MSG_CHECKING([whether to enable Blob.slice support]) +AC_ARG_ENABLE(blob_slice, + AC_HELP_STRING([--enable-blob-slice], + [enable support for Blob.slice [default=no]]), + [],[enable_blob_slice="no"]) +AC_MSG_RESULT([$enable_blob_slice]) + +# check whether to enable Fast Mobile Scrolling support +AC_MSG_CHECKING([whether to enable Fast Mobile Scrolling]) +AC_ARG_ENABLE(fast_mobile_scrolling, + AC_HELP_STRING([--enable-fast-mobile-scrolling], + [enable support for Fast Mobile Scrolling [default=no]]), + [],[enable_fast_mobile_scrolling="no"]) +AC_MSG_RESULT([$enable_fast_mobile_scrolling]) + +# check whether to enable FileReader support +AC_MSG_CHECKING([whether to enable FileReader support]) +AC_ARG_ENABLE(file_reader, + AC_HELP_STRING([--enable-file-reader], + [enable support for FileReader [default=no]]), + [],[enable_file_reader="no"]) +AC_MSG_RESULT([$enable_file_reader]) + +# check whether to enable FileWriter support +AC_MSG_CHECKING([whether to enable FileWriter support]) +AC_ARG_ENABLE(file_writer, + AC_HELP_STRING([--enable-file-writer], + [enable support for FileWriter [default=no]]), + [],[enable_file_writer="no"]) +AC_MSG_RESULT([$enable_file_writer]) + +# check whether to enable code coverage +AC_MSG_CHECKING([whether to enable code coverage support]) +AC_ARG_ENABLE(coverage, + AC_HELP_STRING([--enable-coverage], + [enable code coverage support [default=no]]), + [],[enable_coverage="no"]) +AC_MSG_RESULT([$enable_coverage]) + +# check whether to enable FastMalloc +AC_MSG_CHECKING([whether to enable optimized memory allocator]) +AC_ARG_ENABLE(fast_malloc, + AC_HELP_STRING([--enable-fast-malloc], + [enable optimized memory allocator default=yes, default=no for debug builds]), + [],[if test "$enable_debug" = "yes"; then enable_fast_malloc="no"; else enable_fast_malloc="yes"; fi]) +AC_MSG_RESULT([$enable_fast_malloc]) + +AC_MSG_CHECKING([whether to enable JIT compilation]) +AC_ARG_ENABLE([jit], + AC_HELP_STRING([--enable-jit], + [Enable JIT compilation default=yes]), + [],[enable_jit="yes"]) +if test "$enable_jit" = "yes"; then + case "$host_cpu" in + i*86|x86_64) + AC_DEFINE([ENABLE_JIT], [1], [Define to enable JIT]) + AC_DEFINE([ENABLE_YARR], [1], [Define to enable YARR]) + AC_DEFINE([ENABLE_YARR_JIT], [1], [Define to enable YARR JIT]) + AC_DEFINE([ENABLE_JIT_OPTIMIZE_CALL], [1], [Define to enable optimizing calls]) + AC_DEFINE([ENABLE_JIT_OPTIMIZE_PROPERTY_ACCESS], [1], [Define to enable optimized property access]) + AC_DEFINE([ENABLE_JIT_OPTIMIZE_ARITHMETIC], [1], [Define to enable optimized arithmetic]) + case "$host_cpu" in + i*86) + AC_DEFINE([WTF_USE_JIT_STUB_ARGUMENT_VA_LIST], [1], [Use stub va_list]) + ;; + x86_64) + AC_DEFINE([WTF_USE_JIT_STUB_ARGUMENT_REGISTER], [1], [Use stub register]) + AC_DEFINE([WTF_USE_ALTERNATE_JSIMMEDIATE], [1], [Use alternate JSImmediate]) + ;; + esac + ;; + *) + enable_jit="no (CPU '$host_cpu' not supported)" + ;; + esac +fi +AC_MSG_RESULT([$enable_jit]) + +# GObject Introspection +AC_MSG_CHECKING([whether to enable GObject introspection support]) +AC_ARG_ENABLE([introspection], + [AS_HELP_STRING([--enable-introspection],[Enable GObject introspection (default: disabled)])], + [],[enable_introspection=no]) +AC_MSG_RESULT([$enable_introspection]) + +G_IR_SCANNER= +G_IR_COMPILER= +G_IR_GENERATE= +GIRDIR= +GIRTYPELIBDIR= + +if test "$enable_introspection" = "yes"; then + GOBJECT_INTROSPECTION_REQUIRED=0.6.15 + PKG_CHECK_MODULES([INTROSPECTION],[gobject-introspection-1.0 >= $GOBJECT_INTROSPECTION_REQUIRED]) + + G_IR_SCANNER="$($PKG_CONFIG --variable=g_ir_scanner gobject-introspection-1.0)" + G_IR_COMPILER="$($PKG_CONFIG --variable=g_ir_compiler gobject-introspection-1.0)" + G_IR_GENERATE="$($PKG_CONFIG --variable=g_ir_generate gobject-introspection-1.0)" + AC_DEFINE([ENABLE_INTROSPECTION],[1],[Define to enable GObject introspection support]) +fi + +AC_SUBST([G_IR_SCANNER]) +AC_SUBST([G_IR_COMPILER]) +AC_SUBST([G_IR_GENERATE]) + +# determine the font backend +AC_MSG_CHECKING([the font backend to use]) +AC_ARG_WITH(font_backend, + AC_HELP_STRING([--with-font-backend=@<:@freetype/pango@:>@], + [Select font backend [default=freetype]]), + [],[with_font_backend="freetype"]) + +case "$with_font_backend" in + freetype|pango) ;; + *) AC_MSG_ERROR([Invalid font backend: must be freetype or pango.]) ;; +esac +AC_MSG_RESULT([$with_font_backend]) + +# Add '-g' flag to gcc if it's debug build +if test "$enable_debug" = "yes"; then + CXXFLAGS="$CXXFLAGS -g" + CFLAGS="$CFLAGS -g" +else + AC_DEFINE([NDEBUG], [1], [Define to disable debugging features]) +fi + +# Add the appropriate 'O' level for optimized builds +if test "$enable_optimizations" = "yes"; then + CXXFLAGS="$CXXFLAGS -O2" + CFLAGS="$CFLAGS -O2" +else + CXXFLAGS="$CXXFLAGS -O0" + CFLAGS="$CFLAGS -O0" +fi + +PKG_CHECK_MODULES([LIBSOUP], + [libsoup-2.4 >= $LIBSOUP_REQUIRED_VERSION]) +AC_SUBST([LIBSOUP_CFLAGS]) +AC_SUBST([LIBSOUP_LIBS]) + +# check if we can use libSoup 2.29.90 features +PKG_CHECK_MODULES([LIBSOUP_2_29_90], + [libsoup-2.4 >= 2.29.90], + [have_libsoup_2_29_90=yes], + [have_libsoup_2_29_90=no]) +if test "$have_libsoup_2_29_90" = "yes"; then + AC_DEFINE([HAVE_LIBSOUP_2_29_90], 1, [Whether libSoup 2.29.90 features are available]) +fi + +# check if FreeType/FontConfig are available +if test "$with_font_backend" = "freetype"; then + if test "$with_target" = "directfb"; then + PKG_CHECK_MODULES([FREETYPE], + [fontconfig >= $FONTCONFIG_REQUIRED_VERSION + freetype2 >= $FREETYPE2_REQUIRED_VERSION]) + else + PKG_CHECK_MODULES([FREETYPE], + [cairo-ft + fontconfig >= $FONTCONFIG_REQUIRED_VERSION + freetype2 >= $FREETYPE2_REQUIRED_VERSION]) + fi + AC_SUBST([FREETYPE_CFLAGS]) + AC_SUBST([FREETYPE_LIBS]) +fi + +# check if sqlite 3 is available +if test "$enable_icon_database" = "yes" || \ + test "$enable_database" = "yes" || \ + test "$enable_offline_web_applications" = "yes" || \ + test "$enable_dom_storage" = "yes"; then + PKG_CHECK_MODULES([SQLITE3], + [sqlite3 >= $SQLITE_REQUIRED_VERSION], + [sqlite3_has_pkg_config=yes], + [sqlite3_has_pkg_config=no]) + if test "$sqlite3_has_pkg_config" = "no"; then + AC_SEARCH_LIBS([sqlite3_open16], [sqlite3], + [SQLITE3_LIBS="$LIBS";SQLITE3_CFLAGS="-I $srcdir/WebKitLibraries/WebCoreSQLite3"], + [AC_MSG_ERROR([SQLite3 is required to enable Database support])]) + fi + AC_SUBST([SQLITE3_CFLAGS]) + AC_SUBST([SQLITE3_LIBS]) +fi + +# check if libxslt is available +if test "$enable_xslt" = "yes"; then + PKG_CHECK_MODULES([LIBXSLT],[libxslt >= $LIBXSLT_REQUIRED_VERSION]) + AC_SUBST([LIBXSLT_CFLAGS]) + AC_SUBST([LIBXSLT_LIBS]) +fi + +# check if geoclue is available +if test "$enable_geolocation" = "yes"; then + PKG_CHECK_MODULES([GEOCLUE], [geoclue]) + AC_SUBST([GEOCLUE_CFLAGS]) + AC_SUBST([GEOCLUE_LIBS]) +fi + +# check if gstreamer is available +if test "$enable_video" = "yes"; then + PKG_CHECK_MODULES([GSTREAMER], + [gstreamer-0.10 >= $GSTREAMER_REQUIRED_VERSION + gstreamer-app-0.10 + gstreamer-base-0.10 + gstreamer-pbutils-0.10 + gstreamer-plugins-base-0.10 >= $GSTREAMER_PLUGINS_BASE_REQUIRED_VERSION + gstreamer-video-0.10]) + AC_SUBST([GSTREAMER_CFLAGS]) + AC_SUBST([GSTREAMER_LIBS]) +fi + +# check for code coverage support +if test "$enable_coverage" = "yes"; then + COVERAGE_CFLAGS="-MD" + COVERAGE_LDFLAGS="-ftest-coverage -fprofile-arcs" + AC_SUBST([COVERAGE_CFLAGS]) + AC_SUBST([COVERAGE_LDFLAGS]) +fi + +# check for HTML features +if test "$enable_video" = "yes"; then + html_flags=yes +fi + +GTK_DOC_CHECK([1.10]) + +# OS conditionals +AM_CONDITIONAL([OS_WIN32],[test "$os_win32" = "yes"]) +AM_CONDITIONAL([OS_UNIX],[test "$os_win32" = "no"]) +AM_CONDITIONAL([OS_LINUX],[test "$os_linux" = "yes"]) +AM_CONDITIONAL([OS_GNU],[test "$os_gnu" = "yes"]) +AM_CONDITIONAL([OS_FREEBSD],[test "$os_freebsd" = "yes"]) + +# target conditionals +AM_CONDITIONAL([TARGET_X11], [test "$with_target" = "x11"]) +AM_CONDITIONAL([TARGET_WIN32], [test "$with_target" = "win32"]) +AM_CONDITIONAL([TARGET_QUARTZ], [test "$with_target" = "quartz"]) +AM_CONDITIONAL([TARGET_DIRECTFB], [test "$with_target" = "directfb"]) + +# Unicode backend conditionals +AM_CONDITIONAL([USE_ICU_UNICODE], [test "$with_unicode_backend" = "icu"]) +AM_CONDITIONAL([USE_GLIB_UNICODE], [test "$with_unicode_backend" = "glib"]) + +# Font backend conditionals +AM_CONDITIONAL([USE_FREETYPE], [test "$with_font_backend" = "freetype"]) +AM_CONDITIONAL([USE_PANGO], [test "$with_font_backend" = "pango"]) + +# WebKit feature conditionals +AM_CONDITIONAL([ENABLE_DEBUG],[test "$enable_debug" = "yes"]) +AM_CONDITIONAL([ENABLE_3D_TRANSFORMS],[test "$enable_3D_transforms" = "yes"]) +AM_CONDITIONAL([ENABLE_BLOB_SLICE],[test "$enable_blob_slice" = "yes"]) +AM_CONDITIONAL([ENABLE_CHANNEL_MESSAGING],[test "$enable_channel_messaging" = "yes"]) +AM_CONDITIONAL([ENABLE_JAVASCRIPT_DEBUGGER],[test "$enable_javascript_debugger" = "yes"]) +AM_CONDITIONAL([ENABLE_OFFLINE_WEB_APPLICATIONS],[test "$enable_offline_web_applications" = "yes"]) +AM_CONDITIONAL([ENABLE_DOM_STORAGE],[test "$enable_dom_storage" = "yes"]) +AM_CONDITIONAL([ENABLE_DATABASE],[test "$enable_database" = "yes"]) +AM_CONDITIONAL([ENABLE_DATALIST],[test "$enable_datalist" = "yes"]) +AM_CONDITIONAL([ENABLE_EVENTSOURCE],[test "$enable_eventsource" = "yes"]) +AM_CONDITIONAL([ENABLE_FAST_MOBILE_SCROLLING],[test "$enable_fast_mobile_scrolling" = "yes"]) +AM_CONDITIONAL([ENABLE_ICONDATABASE],[test "$enable_icon_database" = "yes"]) +AM_CONDITIONAL([ENABLE_IMAGE_RESIZER],[test "$enable_image_resizer" = "yes"]) +AM_CONDITIONAL([ENABLE_INDEXED_DATABASE],[test "$enable_indexed_database" = "yes"]) +AM_CONDITIONAL([ENABLE_INPUT_SPEECH],[test "$enable_input_speech" = "yes"]) +AM_CONDITIONAL([ENABLE_XHTMLMP],[test "$enable_xhtmlmp" = "yes"]) +AM_CONDITIONAL([ENABLE_XPATH],[test "$enable_xpath" = "yes"]) +AM_CONDITIONAL([ENABLE_XSLT],[test "$enable_xslt" = "yes"]) +AM_CONDITIONAL([ENABLE_FILTERS],[test "$enable_filters" = "yes"]) +AM_CONDITIONAL([ENABLE_FILE_READER],[test "$enable_file_reader" = "yes"]) +AM_CONDITIONAL([ENABLE_FILE_WRITER],[test "$enable_file_writer" = "yes"]) +AM_CONDITIONAL([ENABLE_GEOLOCATION], [test "$enable_geolocation" = "yes"]) +AM_CONDITIONAL([ENABLE_MATHML], [test "$enable_mathml" = "yes"]) +AM_CONDITIONAL([ENABLE_RUBY],[test "$enable_ruby" = "yes"]) +AM_CONDITIONAL([ENABLE_SANDBOX],[test "$enable_sandbox" = "yes"]) +AM_CONDITIONAL([ENABLE_VIDEO],[test "$enable_video" = "yes"]) +AM_CONDITIONAL([ENABLE_NOTIFICATIONS],[test "$enable_notifications" = "yes"]) +AM_CONDITIONAL([ENABLE_ORIENTATION_EVENTS],[test "$enable_orientation_events" = "yes"]) +AM_CONDITIONAL([ENABLE_SVG],[test "$enable_svg" = "yes"]) +AM_CONDITIONAL([ENABLE_SVG_ANIMATION],[test "$enable_svg_animation" = "yes"]) +AM_CONDITIONAL([ENABLE_SVG_FONTS],[test "$enable_svg_fonts" = "yes"]) +AM_CONDITIONAL([ENABLE_SVG_FOREIGN_OBJECT],[test "$enable_svg_foreign_object" = "yes"]) +AM_CONDITIONAL([ENABLE_SVG_AS_IMAGE],[test "$enable_svg_as_image" = "yes"]) +AM_CONDITIONAL([ENABLE_SVG_USE],[test "$enable_svg_use" = "yes"]) +AM_CONDITIONAL([ENABLE_COVERAGE],[test "$enable_coverage" = "yes"]) +AM_CONDITIONAL([ENABLE_FAST_MALLOC],[test "$enable_fast_malloc" = "yes"]) +AM_CONDITIONAL([ENABLE_WML],[test "$enable_wml" = "yes"]) +AM_CONDITIONAL([ENABLE_WORKERS],[test "$enable_workers" = "yes"]) +AM_CONDITIONAL([ENABLE_SHARED_WORKERS],[test "$enable_shared_workers" = "yes"]) +AM_CONDITIONAL([SVG_FLAGS],[test "$svg_flags" = "yes"]) +AM_CONDITIONAL([HTML_FLAGS],[test "$html_flags" = "yes"]) +AM_CONDITIONAL([ENABLE_WEB_SOCKETS],[test "$enable_web_sockets" = "yes"]) +AM_CONDITIONAL([ENABLE_WEB_TIMING],[test "$enable_web_timing" = "yes"]) + +# Gtk conditionals +AM_CONDITIONAL([ENABLE_INTROSPECTION],[test "$enable_introspection" = "yes"]) + + +AC_CONFIG_FILES([ +GNUmakefile +WebKit/gtk/webkit/webkitversion.h +WebKit/gtk/docs/GNUmakefile +WebKit/gtk/docs/version.xml +] +) + +AC_CONFIG_FILES([ +WebKit/gtk/${WEBKITGTK_PC_NAME}-${WEBKITGTK_API_VERSION}.pc:WebKit/gtk/webkit.pc.in +WebKit/gtk/JSCore-${WEBKITGTK_API_VERSION}.gir:WebKit/gtk/JSCore.gir.in] +,[WEBKITGTK_API_VERSION=$WEBKITGTK_API_VERSION,WEBKITGTK_PC_NAME=$WEBKITGTK_PC_NAME] +) + +AC_OUTPUT + +echo " +WebKit was configured with the following options: + +Build configuration: + Enable debugging (slow) : $enable_debug + Enable GCC build optimization : $enable_optimizations + Code coverage support : $enable_coverage + Unicode backend : $with_unicode_backend + Font backend : $with_font_backend + Optimized memory allocator : $enable_fast_malloc +Features: + 3D Transforms : $enable_3D_transforms + Blob.slice support : $enable_blob_slice + Fast Mobile Scrolling : $enable_fast_mobile_scrolling + JIT compilation : $enable_jit + Filters support : $enable_filters + FileReader support : $enable_file_reader + FileWriter support : $enable_file_writer + Geolocation support : $enable_geolocation + JavaScript debugger/profiler support : $enable_javascript_debugger + MathML support : $enable_mathml + HTML5 offline web applications support : $enable_offline_web_applications + HTML5 channel messaging support : $enable_channel_messaging + HTML5 client-side session and persistent storage support : $enable_dom_storage + HTML5 client-side database storage support : $enable_database + HTML5 ruby support : $enable_ruby + HTML5 sandboxed iframe support : $enable_sandbox + HTML5 server-sent events support : $enable_eventsource + HTML5 video element support : $enable_video + Icon database support : $enable_icon_database + Image resizer support : $enable_image_resizer + SharedWorkers support : $enable_shared_workers + Speech input support : $enable_input_speech + SVG support : $enable_svg + SVG animation support : $enable_svg_animation + SVG fonts support : $enable_svg_fonts + SVG foreign object support : $enable_svg_foreign_object + SVG as image support : $enable_svg_as_image + SVG use element support : $enable_svg_use + WML support : $enable_wml + Web Sockets support : $enable_web_sockets + Web Timing support : $enable_web_timing + Web Workers support : $enable_workers + XHTML-MP support : $enable_xhtmlmp + XPATH support : $enable_xpath + XSLT support : $enable_xslt +GTK+ configuration: + GTK+ version : $with_gtk + GDK target : $with_target + Hildon UI extensions : $with_hildon + Introspection support : $enable_introspection +" +if test "$with_unicode_backend" = "glib"; then + echo " >> WARNING: the glib-based unicode backend is slow and incomplete <<" + echo + echo +fi diff --git a/meta/recipes-sato/webkit/files/fix_im.patch b/meta/recipes-sato/webkit/files/fix_im.patch new file mode 100644 index 0000000000..e69de29bb2 diff --git a/meta/recipes-sato/webkit/files/gtk-doc.make b/meta/recipes-sato/webkit/files/gtk-doc.make new file mode 100644 index 0000000000..354ffb7c66 --- /dev/null +++ b/meta/recipes-sato/webkit/files/gtk-doc.make @@ -0,0 +1,173 @@ +# -*- mode: makefile -*- + +#################################### +# Everything below here is generic # +#################################### + +if GTK_DOC_USE_LIBTOOL +GTKDOC_CC = $(LIBTOOL) --mode=compile $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +GTKDOC_LD = $(LIBTOOL) --mode=link $(CC) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) +else +GTKDOC_CC = $(CC) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +GTKDOC_LD = $(CC) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) +endif + +# We set GPATH here; this gives us semantics for GNU make +# which are more like other make's VPATH, when it comes to +# whether a source that is a target of one rule is then +# searched for in VPATH/GPATH. +# +GPATH = $(srcdir) + +TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE) + +EXTRA_DIST = \ + $(content_files) \ + $(HTML_IMAGES) \ + $(DOC_MAIN_SGML_FILE) \ + $(DOC_MODULE)-sections.txt \ + $(DOC_MODULE)-overrides.txt + +DOC_STAMPS=scan-build.stamp tmpl-build.stamp sgml-build.stamp html-build.stamp \ + $(srcdir)/tmpl.stamp $(srcdir)/sgml.stamp $(srcdir)/html.stamp + +SCANOBJ_FILES = \ + $(DOC_MODULE).args \ + $(DOC_MODULE).hierarchy \ + $(DOC_MODULE).interfaces \ + $(DOC_MODULE).prerequisites \ + $(DOC_MODULE).signals + +REPORT_FILES = \ + $(DOC_MODULE)-undocumented.txt \ + $(DOC_MODULE)-undeclared.txt \ + $(DOC_MODULE)-unused.txt + +CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS) + +if ENABLE_GTK_DOC +all-local: html-build.stamp +else +all-local: +endif + +docs: html-build.stamp + +#### scan #### + +scan-build.stamp: $(HFILE_GLOB) $(CFILE_GLOB) + @echo 'gtk-doc: Scanning header files' + @-chmod -R u+w $(srcdir) + cd $(srcdir) && \ + gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --ignore-headers="$(IGNORE_HFILES)" $(SCAN_OPTIONS) $(EXTRA_HFILES) + if grep -l '^..*$$' $(srcdir)/$(DOC_MODULE).types > /dev/null 2>&1 ; then \ + CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" CFLAGS="$(GTKDOC_CFLAGS)" LDFLAGS="$(GTKDOC_LIBS)" gtkdoc-scangobj $(SCANGOBJ_OPTIONS) --module=$(DOC_MODULE) --output-dir=$(srcdir) ; \ + else \ + cd $(srcdir) ; \ + for i in $(SCANOBJ_FILES) ; do \ + test -f $$i || touch $$i ; \ + done \ + fi + touch scan-build.stamp + +$(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt: scan-build.stamp + @true + +#### templates #### + +tmpl-build.stamp: $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt + @echo 'gtk-doc: Rebuilding template files' + @-chmod -R u+w $(srcdir) + cd $(srcdir) && gtkdoc-mktmpl --module=$(DOC_MODULE) $(MKTMPL_OPTIONS) + touch tmpl-build.stamp + +tmpl.stamp: tmpl-build.stamp + @true + +tmpl/*.sgml: + @true + + +#### xml #### + +sgml-build.stamp: tmpl.stamp $(HFILE_GLOB) $(CFILE_GLOB) $(DOC_MODULE)-sections.txt $(srcdir)/tmpl/*.sgml $(expand_content_files) + @echo 'gtk-doc: Building XML' + @-chmod -R u+w $(srcdir) + cd $(srcdir) && \ + gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --output-format=xml --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) $(MKDB_OPTIONS) + touch sgml-build.stamp + +sgml.stamp: sgml-build.stamp + @true + +#### html #### + +html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) + @echo 'gtk-doc: Building HTML' + @-chmod -R u+w $(srcdir) + rm -rf $(srcdir)/html + mkdir $(srcdir)/html + cd $(srcdir)/html && gtkdoc-mkhtml $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE) + test "x$(HTML_IMAGES)" = "x" || ( cd $(srcdir) && cp $(HTML_IMAGES) html ) + @echo 'gtk-doc: Fixing cross-references' + cd $(srcdir) && gtkdoc-fixxref --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS) + touch html-build.stamp + +############## + +clean-local: + rm -f *~ *.bak + rm -rf .libs + +distclean-local: + cd $(srcdir) && \ + rm -rf xml $(REPORT_FILES) \ + $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt + +maintainer-clean-local: clean + cd $(srcdir) && rm -rf xml html + +install-data-local: + -installfiles=`echo $(srcdir)/html/*`; \ + if test "$$installfiles" = '$(srcdir)/html/*'; \ + then echo '-- Nothing to install' ; \ + else \ + $(mkinstalldirs) $(DESTDIR)$(TARGET_DIR); \ + for i in $$installfiles; do \ + echo '-- Installing '$$i ; \ + $(INSTALL_DATA) $$i $(DESTDIR)$(TARGET_DIR); \ + done; \ + echo '-- Installing $(srcdir)/html/index.sgml' ; \ + $(INSTALL_DATA) $(srcdir)/html/index.sgml $(DESTDIR)$(TARGET_DIR) || :; \ + which gtkdoc-rebase >/dev/null && \ + gtkdoc-rebase --relative --dest-dir=$(DESTDIR) --html-dir=$(DESTDIR)$(TARGET_DIR) ; \ + fi + + +uninstall-local: + rm -f $(DESTDIR)$(TARGET_DIR)/* + +# +# Require gtk-doc when making dist +# +if ENABLE_GTK_DOC +dist-check-gtkdoc: +else +dist-check-gtkdoc: + @echo "*** gtk-doc must be installed and enabled in order to make dist" + @false +endif + +dist-hook: dist-check-gtkdoc dist-hook-local + mkdir $(distdir)/tmpl + mkdir $(distdir)/xml + mkdir $(distdir)/html + -cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl + -cp $(srcdir)/xml/*.xml $(distdir)/xml + cp $(srcdir)/html/* $(distdir)/html + -cp $(srcdir)/$(DOC_MODULE).types $(distdir)/ + -cp $(srcdir)/$(DOC_MODULE)-sections.txt $(distdir)/ + cd $(distdir) && rm -f $(DISTCLEANFILES) + -gtkdoc-rebase --online --relative --html-dir=$(distdir)/html + +.PHONY : dist-hook-local docs diff --git a/meta/recipes-sato/webkit/webkit-gtk_svn.bb b/meta/recipes-sato/webkit/webkit-gtk_svn.bb new file mode 100644 index 0000000000..fe31b9c24c --- /dev/null +++ b/meta/recipes-sato/webkit/webkit-gtk_svn.bb @@ -0,0 +1,71 @@ +DESCRIPTION = "WebKitGTK+ is the port of the portable web rendering engine WebKitK to the GTK+ platform." +HOMEPAGE = "http://www.webkitgtk.org/" +BUGTRACKER = "http://bugs.webkit.org/" + +LICENSE = "BSD & LGPLv2+" +LIC_FILES_CHKSUM = "file://WebCore/rendering/RenderApplet.h;endline=22;md5=fb9694013ad71b78f8913af7a5959680 \ + file://WebKit/gtk/webkit/webkit.h;endline=21;md5=b4fbe9f4a944f1d071dba1d2c76b3351 \ + file://JavaScriptCore/parser/Parser.h;endline=23;md5=2f3cff0ad0a9c486da5a376928973a90" + +DEPENDS = "enchant gnome-keyring libsoup-2.4 curl icu libxml2 cairo libxslt libxt libidn gnutls gtk+ gstreamer gst-plugins-base gnome-vfs flex-native gperf-native perl-native sqlite3" +DEPENDS_darwin8 = "curl icu libxml2 cairo libxslt libidn gnutls gtk+ gstreamer flex-native gperf-native perl-native sqlite3" + +SRCREV_FORMAT = "webcore-rwebkit" + +PV = "1.3.2+svnr${SRCREV}" +PR = "r0" + +SRC_URI = "\ + svn://svn.webkit.org/repository/webkit/trunk/;module=JavaScriptCore;proto=http \ + svn://svn.webkit.org/repository/webkit/trunk/;module=JavaScriptGlue;proto=http \ + svn://svn.webkit.org/repository/webkit/trunk/;module=WebCore;proto=http;name=webcore \ + svn://svn.webkit.org/repository/webkit/trunk/;module=WebKit;proto=http;name=webkit \ + svn://svn.webkit.org/repository/webkit/trunk/;module=WebKitLibraries;proto=http \ + svn://svn.webkit.org/repository/webkit/trunk/;module=WebKitTools;proto=http \ + svn://svn.webkit.org/repository/webkit/trunk/;module=autotools;proto=http \ + file://Makefile \ + file://Makefile.shared \ + file://autogen.sh \ + file://configure.ac \ + file://GNUmakefile.am \ + file://gtk-doc.make \ + " + +S = "${WORKDIR}/" + +inherit autotools lib_package pkgconfig + +EXTRA_OECONF = "\ + --enable-debug=no \ + --enable-svg \ + --enable-icon-database=yes \ + --disable-fast-malloc \ + " + +EXTRA_AUTORECONF = " -I autotools " + +do_compile_prepend() { + mkdir -p ${S}/WebKitBuilds/Debug/JavaScriptCore/pcre/tmp/ + mkdir -p ${S}/Programs/ + cd ${S}/JavaScriptCore/pcre + if test -e dftables.c + then + ${BUILD_CC} dftables.c -o dftables -I. -I../wtf + elif test -e dftables.cpp + then + ${BUILD_CXX} dftables.cpp -o dftables -I. -I../wtf + fi + cp dftables ${S}/WebKitBuilds/Debug/JavaScriptCore/pcre/tmp/ + cp dftables ${S}/Programs/ + cd ${S} +} + +PACKAGES =+ "${PN}-webinspector ${PN}launcher-dbg ${PN}launcher libjavascriptcore" +FILES_${PN}launcher = "${bindir}/GtkLauncher" +FILES_${PN}launcher-dbg = "${bindir}/.debug/GtkLauncher" +FILES_libjavascriptcore = "${libdir}/libJavaScriptCore.so.*" +FILES_${PN}-webinspector = "${datadir}/webkit-1.0/webinspector/" +FILES_${PN} += "${datadir}/webkit-1.0/resources/error.html ${datadir}/webkit-1.0/images" + + + diff --git a/meta/recipes-support/apr/apr-util/configfix.patch b/meta/recipes-support/apr/apr-util/configfix.patch new file mode 100644 index 0000000000..a8953e5244 --- /dev/null +++ b/meta/recipes-support/apr/apr-util/configfix.patch @@ -0,0 +1,49 @@ +Index: apr-util-1.3.4/apu-config.in +=================================================================== +--- apr-util-1.3.4.orig/apu-config.in 2009-01-12 17:08:06.000000000 +0000 ++++ apr-util-1.3.4/apu-config.in 2009-01-12 17:09:00.000000000 +0000 +@@ -134,14 +134,7 @@ + exit 0 + ;; + --includes) +- if test "$location" = "installed"; then + flags="$flags -I$includedir $INCLUDES" +- elif test "$location" = "source"; then +- flags="$flags -I$APU_SOURCE_DIR/include $INCLUDES" +- else +- # this is for VPATH builds +- flags="$flags -I$APU_BUILD_DIR/include -I$APU_SOURCE_DIR/include $INCLUDES" +- fi + ;; + --ldflags) + flags="$flags $LDFLAGS" +@@ -155,28 +148,10 @@ + exit 0 + ;; + --link-ld) +- if test "$location" = "installed"; then +- ### avoid using -L if libdir is a "standard" location like /usr/lib + flags="$flags -L$libdir -l$APRUTIL_LIBNAME" +- else +- flags="$flags -L$APU_BUILD_DIR -l$APRUTIL_LIBNAME" +- fi + ;; + --link-libtool) +- # If the LA_FILE exists where we think it should be, use it. If we're +- # installed and the LA_FILE does not exist, assume to use -L/-l +- # (the LA_FILE may not have been installed). If we're building ourselves, +- # we'll assume that at some point the .la file be created. +- if test -f "$LA_FILE"; then +- flags="$flags $LA_FILE" +- elif test "$location" = "installed"; then +- ### avoid using -L if libdir is a "standard" location like /usr/lib +- # Since the user is specifying they are linking with libtool, we +- # *know* that -R will be recognized by libtool. +- flags="$flags -L$libdir -R$libdir -l$APRUTIL_LIBNAME" +- else +- flags="$flags $LA_FILE" +- fi ++ flags="$flags -l$APRUTIL_LIBNAME" + ;; + --apu-la-file) + if test -f "$LA_FILE"; then diff --git a/meta/recipes-support/apr/apr-util/configure_fixes.patch b/meta/recipes-support/apr/apr-util/configure_fixes.patch new file mode 100644 index 0000000000..0b2a0903e1 --- /dev/null +++ b/meta/recipes-support/apr/apr-util/configure_fixes.patch @@ -0,0 +1,27 @@ +Index: apr-util-1.3.4/configure.in +=================================================================== +--- apr-util-1.3.4.orig/configure.in ++++ apr-util-1.3.4/configure.in +@@ -8,14 +8,14 @@ AC_INIT(export_vars.sh.in) + AC_CONFIG_HEADER(include/private/apu_config.h) + AC_CONFIG_AUX_DIR(build) + +-sinclude(build/apu-conf.m4) +-sinclude(build/apu-iconv.m4) +-sinclude(build/apu-hints.m4) +-sinclude(build/apr_common.m4) +-sinclude(build/find_apr.m4) +-sinclude(build/dbm.m4) +-sinclude(build/dbd.m4) +-sinclude(build/dso.m4) ++#sinclude(build/apu-conf.m4) ++#sinclude(build/apu-iconv.m4) ++#sinclude(build/apu-hints.m4) ++#sinclude(build/apr_common.m4) ++#sinclude(build/find_apr.m4) ++#sinclude(build/dbm.m4) ++#sinclude(build/dbd.m4) ++#sinclude(build/dso.m4) + + dnl Generate ./config.nice for reproducing runs of configure + dnl diff --git a/meta/recipes-support/apr/apr-util/configure_fixes.patch.old b/meta/recipes-support/apr/apr-util/configure_fixes.patch.old new file mode 100644 index 0000000000..16f88b3bba --- /dev/null +++ b/meta/recipes-support/apr/apr-util/configure_fixes.patch.old @@ -0,0 +1,25 @@ +Index: apr-util-1.2.12/configure.in +=================================================================== +--- apr-util-1.2.12.orig/configure.in 2008-03-08 19:15:00.000000000 +0000 ++++ apr-util-1.2.12/configure.in 2008-03-08 19:15:13.000000000 +0000 +@@ -8,13 +8,13 @@ + AC_CONFIG_HEADER(include/private/apu_config.h) + AC_CONFIG_AUX_DIR(build) + +-sinclude(build/apu-conf.m4) +-sinclude(build/apu-iconv.m4) +-sinclude(build/apu-hints.m4) +-sinclude(build/apr_common.m4) +-sinclude(build/find_apr.m4) +-sinclude(build/dbm.m4) +-sinclude(build/dbd.m4) ++#sinclude(build/apu-conf.m4) ++#sinclude(build/apu-iconv.m4) ++#sinclude(build/apu-hints.m4) ++#sinclude(build/apr_common.m4) ++#sinclude(build/find_apr.m4) ++#sinclude(build/dbm.m4) ++#sinclude(build/dbd.m4) + + dnl Generate ./config.nice for reproducing runs of configure + dnl diff --git a/meta/recipes-support/apr/apr-util_1.3.4.bb b/meta/recipes-support/apr/apr-util_1.3.4.bb new file mode 100644 index 0000000000..2e608e8a5c --- /dev/null +++ b/meta/recipes-support/apr/apr-util_1.3.4.bb @@ -0,0 +1,27 @@ +DESCRIPTION = "Apache Portable Runtime (APR) companion library" +SECTION = "libs" +DEPENDS = "apr expat gdbm" +LICENSE = "Apache License, Version 2.0" + +PR = "r5" + +SRC_URI = "${APACHE_MIRROR}/apr/${P}.tar.gz \ + file://configfix.patch;patch=1 \ + file://configure_fixes.patch;patch=1" + +EXTRA_OECONF = "--with-apr=${STAGING_BINDIR_CROSS}/apr-1-config \ + --with-dbm=gdbm \ + --with-gdbm=${STAGING_DIR_HOST}${prefix} \ + --without-sqlite2 \ + --without-sqlite3 \ + --with-expat=${STAGING_DIR_HOST}${prefix}" + + +inherit autotools lib_package binconfig + +OE_BINCONFIG_EXTRA_MANGLE = " -e 's:location=source:location=installed:'" + +do_configure_prepend() { + cp ${STAGING_DATADIR}/apr/apr_rules.mk ${S}/build/rules.mk +} + diff --git a/meta/recipes-support/apr/apr/cleanup.patch b/meta/recipes-support/apr/apr/cleanup.patch new file mode 100644 index 0000000000..fd74826480 --- /dev/null +++ b/meta/recipes-support/apr/apr/cleanup.patch @@ -0,0 +1,42 @@ +Index: apr-1.3.3/build/buildcheck.sh +=================================================================== +--- apr-1.3.3.orig/build/buildcheck.sh 2009-01-15 13:32:33.000000000 +0000 ++++ apr-1.3.3/build/buildcheck.sh 2009-01-15 13:33:06.000000000 +0000 +@@ -32,35 +32,4 @@ + echo "buildconf: autoconf version $ac_version (ok)" + fi + +-# Sample libtool --version outputs: +-# ltmain.sh (GNU libtool) 1.3.3 (1.385.2.181 1999/07/02 15:49:11) +-# ltmain.sh (GNU libtool 1.1361 2004/01/02 23:10:52) 1.5a +-# output is multiline from 1.5 onwards +- +-# Require libtool 1.4 or newer +-libtool=`build/PrintPath glibtool libtool libtool15 libtool14` +-lt_pversion=`$libtool --version 2>/dev/null|sed -e 's/([^)]*)//g;s/^[^0-9]*//;s/[- ].*//g;q'` +-if test -z "$lt_pversion"; then +-echo "buildconf: libtool not found." +-echo " You need libtool version 1.4 or newer installed" +-echo " to build APR from SVN." +-exit 1 +-fi +-lt_version=`echo $lt_pversion|sed -e 's/\([a-z]*\)$/.\1/'` +-IFS=.; set $lt_version; IFS=' ' +-lt_status="good" +-if test "$1" = "1"; then +- if test "$2" -lt "4"; then +- lt_status="bad" +- fi +-fi +-if test $lt_status = "good"; then +- echo "buildconf: libtool version $lt_pversion (ok)" +- exit 0 +-fi +- +-echo "buildconf: libtool version $lt_pversion found." +-echo " You need libtool version 1.4 or newer installed" +-echo " to build APR from SVN." +- +-exit 1 ++exit 0 +\ No newline at end of file diff --git a/meta/recipes-support/apr/apr/configfix.patch b/meta/recipes-support/apr/apr/configfix.patch new file mode 100644 index 0000000000..995555e8ba --- /dev/null +++ b/meta/recipes-support/apr/apr/configfix.patch @@ -0,0 +1,51 @@ +Index: apr-1.3.3/apr-config.in +=================================================================== +--- apr-1.3.3.orig/apr-config.in 2009-01-12 15:16:31.000000000 +0000 ++++ apr-1.3.3/apr-config.in 2009-01-12 15:19:25.000000000 +0000 +@@ -152,14 +152,7 @@ + flags="$flags $LDFLAGS" + ;; + --includes) +- if test "$location" = "installed"; then + flags="$flags -I$includedir $EXTRA_INCLUDES" +- elif test "$location" = "source"; then +- flags="$flags -I$APR_SOURCE_DIR/include $EXTRA_INCLUDES" +- else +- # this is for VPATH builds +- flags="$flags -I$APR_BUILD_DIR/include -I$APR_SOURCE_DIR/include $EXTRA_INCLUDES" +- fi + ;; + --srcdir) + echo $APR_SOURCE_DIR +@@ -181,29 +167,14 @@ + exit 0 + ;; + --link-ld) +- if test "$location" = "installed"; then +- ### avoid using -L if libdir is a "standard" location like /usr/lib +- flags="$flags -L$libdir -l${APR_LIBNAME}" +- else +- ### this surely can't work since the library is in .libs? +- flags="$flags -L$APR_BUILD_DIR -l${APR_LIBNAME}" +- fi ++ flags="$flags -l${APR_LIBNAME}" + ;; + --link-libtool) + # If the LA_FILE exists where we think it should be, use it. If we're + # installed and the LA_FILE does not exist, assume to use -L/-l + # (the LA_FILE may not have been installed). If we're building ourselves, + # we'll assume that at some point the .la file be created. +- if test -f "$LA_FILE"; then +- flags="$flags $LA_FILE" +- elif test "$location" = "installed"; then +- ### avoid using -L if libdir is a "standard" location like /usr/lib +- # Since the user is specifying they are linking with libtool, we +- # *know* that -R will be recognized by libtool. +- flags="$flags -L$libdir -R$libdir -l${APR_LIBNAME}" +- else +- flags="$flags $LA_FILE" +- fi ++ flags="$flags -l${APR_LIBNAME}" + ;; + --shlib-path-var) + echo "$SHLIBPATH_VAR" diff --git a/meta/recipes-support/apr/apr/configure_fixes.patch b/meta/recipes-support/apr/apr/configure_fixes.patch new file mode 100644 index 0000000000..86ceb8cf08 --- /dev/null +++ b/meta/recipes-support/apr/apr/configure_fixes.patch @@ -0,0 +1,66 @@ +Index: apr-1.3.3/configure.in +=================================================================== +--- apr-1.3.3.orig/configure.in ++++ apr-1.3.3/configure.in +@@ -794,39 +794,6 @@ AC_CHECK_FUNCS([mmap munmap shm_open shm + create_area]) + + APR_CHECK_DEFINE(MAP_ANON, sys/mman.h) +-AC_CHECK_FILE(/dev/zero) +- +-# Not all systems can mmap /dev/zero (such as HP-UX). Check for that. +-if test "$ac_cv_func_mmap" = "yes" && +- test "$ac_cv_file__dev_zero" = "yes"; then +- AC_MSG_CHECKING(for mmap that can map /dev/zero) +- AC_TRY_RUN([ +-#include +-#include +-#include +-#ifdef HAVE_SYS_MMAN_H +-#include +-#endif +- int main() +- { +- int fd; +- void *m; +- fd = open("/dev/zero", O_RDWR); +- if (fd < 0) { +- return 1; +- } +- m = mmap(0, sizeof(void*), PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0); +- if (m == (void *)-1) { /* aka MAP_FAILED */ +- return 2; +- } +- if (munmap(m, sizeof(void*)) < 0) { +- return 3; +- } +- return 0; +- }], [], [ac_cv_file__dev_zero=no], [ac_cv_file__dev_zero=no]) +- +- AC_MSG_RESULT($ac_cv_file__dev_zero) +-fi + + # Now we determine which one is our anonymous shmem preference. + haveshmgetanon="0" +@@ -1518,13 +1485,14 @@ else + bigendian=0 + fi + +-APR_CHECK_SIZEOF_EXTENDED([#include +-#include ],struct iovec,0) +-if test "$ac_cv_sizeof_struct_iovec" = "0"; then +- have_iovec=0 +-else +- have_iovec=1 +-fi ++#APR_CHECK_SIZEOF_EXTENDED([#include ++##include ],struct iovec,0) ++#if test "$ac_cv_sizeof_struct_iovec" = "0"; then ++# have_iovec=0 ++#else ++# have_iovec=1 ++#fi ++have_iovec=1 + + AC_SUBST(voidp_size) + AC_SUBST(short_value) diff --git a/meta/recipes-support/apr/apr_1.3.3.bb b/meta/recipes-support/apr/apr_1.3.3.bb new file mode 100644 index 0000000000..a193a18a2e --- /dev/null +++ b/meta/recipes-support/apr/apr_1.3.3.bb @@ -0,0 +1,34 @@ +DESCRIPTION = "Apache Portable Runtime (APR) library" +SECTION = "libs" +LICENSE = "Apache License, Version 2.0" + +PR = "r5" + +SRC_URI = "${APACHE_MIRROR}/apr/${P}.tar.bz2 \ + file://configure_fixes.patch;patch=1 \ + file://cleanup.patch;patch=1 \ + file://configfix.patch;patch=1" + +inherit autotools lib_package binconfig + +OE_BINCONFIG_EXTRA_MANGLE = " -e 's:location=source:location=installed:'" + +do_configure_prepend() { + cd ${S} + ./buildconf +} + +SYSROOT_PREPROCESS_FUNCS += "apr_sysroot_preprocess" + +apr_sysroot_preprocess () { + d=${SYSROOT_DESTDIR}${STAGING_DIR_TARGET}${datadir}/apr + install -d $d/ + cp ${S}/build/apr_rules.mk $d/ + sed -i s,apr_builddir=.*,apr_builddir=,g $d/apr_rules.mk + sed -i s,apr_builders=.*,apr_builders=,g $d/apr_rules.mk + sed -i s,LIBTOOL=.*,LIBTOOL=\$\(SHELL\)\ ${TARGET_PREFIX}libtool,g $d/apr_rules.mk + sed -i s,\$\(apr_builders\),${STAGING_DATADIR}/apr/,g $d/apr_rules.mk + cp ${S}/build/mkdir.sh $d/ + cp ${S}/build/make_exports.awk $d/ + cp ${S}/build/make_var_export.awk $d/ +} diff --git a/meta/recipes-support/aspell/aspell_0.60.6.bb b/meta/recipes-support/aspell/aspell_0.60.6.bb new file mode 100644 index 0000000000..8d43a707d2 --- /dev/null +++ b/meta/recipes-support/aspell/aspell_0.60.6.bb @@ -0,0 +1,15 @@ +SRC_URI = "ftp://ftp.gnu.org/gnu/aspell/aspell-${PV}.tar.gz" +DESCRIPTION = "GNU Aspell spell-checker" +SECTION = "console/utils" +LICENSE="LGPL" + +PACKAGES += "libaspell libpspell libpspell-dev aspell-utils" + +FILES_${PN}-dbg += "${libdir}/aspell-0.60/.debu*" +FILES_libaspell = "${libdir}/libaspell.so.* ${libdir}/aspell*" +FILES_aspell-utils = "${bindir}/word-list-compress ${bindir}/aspell-import ${bindir}/run-with-aspell ${bindir}/pre*" +FILES_${PN} = "${bindir}/aspell" +FILES_libpspell = "${libdir}/libpspell.so.*" +FILES_libpspell-dev = "${libdir}/libpspell* ${bindir}/pspell-config ${includedir}/pspell" + +inherit autotools gettext diff --git a/meta/recipes-support/atk/atk.inc b/meta/recipes-support/atk/atk.inc new file mode 100644 index 0000000000..899d360e1a --- /dev/null +++ b/meta/recipes-support/atk/atk.inc @@ -0,0 +1,14 @@ +DESCRIPTION = "An accessibility toolkit for GNOME." +HOMEPAGE = "http://live.gnome.org/GAP/" +BUGTRACKER = "https://bugzilla.gnome.org/" + +LICENSE = "LGPLv2 & LGPLv2+" + +SECTION = "x11/libs" +PRIORITY = "optional" + +DEPENDS = "glib-2.0 gtk-doc-native" + +inherit autotools pkgconfig + +EXTRA_OECONF = "--disable-glibtest" diff --git a/meta/recipes-support/atk/atk_1.30.0.bb b/meta/recipes-support/atk/atk_1.30.0.bb new file mode 100644 index 0000000000..e85ef9040c --- /dev/null +++ b/meta/recipes-support/atk/atk_1.30.0.bb @@ -0,0 +1,10 @@ +require atk.inc + +LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7 \ + file://atk/atkutil.c;endline=20;md5=db21b0bdbef9da4dc6eb122debc9f9bc \ + file://atk/atk.h;endline=20;md5=c58238d688c24387376d6c69d06248a7" + +SRC_URI = "http://download.gnome.org/sources/atk/1.30/${PN}-${PV}.tar.bz2" + + + diff --git a/meta/recipes-support/attr/acl.inc b/meta/recipes-support/attr/acl.inc new file mode 100644 index 0000000000..68745dd728 --- /dev/null +++ b/meta/recipes-support/attr/acl.inc @@ -0,0 +1,26 @@ +DESCRIPTION = "utilities for access control list" +HOMEPAGE = "http://savannah.nongnu.org/projects/acl/" +SECTION = "libs" + +LICENSE = "LGPLv2.1+ & GPLv2+" +LICENSE_${PN} = "GPLv2+" +LICENSE_lib${PN} = "LGPLv2.1+" +LIC_FILES_CHKSUM = "file://doc/COPYING;md5=c781d70ed2b4d48995b790403217a249 \ + file://doc/COPYING.LGPL;md5=9e9a206917f8af112da634ce3ab41764" + +DEPENDS = "attr" +SRC_URI = "http://mirror.cinquix.com/pub/savannah/acl/${BP}.src.tar.gz" + +require ea-acl.inc + +# avoid RPATH hardcode to staging dir +do_configure_append() { + sed -i ${S}/config.status -e s,^\\\(hardcode_into_libs=\\\).*$,\\1\'no\', + ${S}/config.status +} + +# libdir should point to .la +do_install_append() { + sed -i ${D}${libdir}/libacl.la -e \ + s,^libdir=\'${base_libdir}\'$,libdir=\'${libdir}\', +} diff --git a/meta/recipes-support/attr/acl_2.2.49.bb b/meta/recipes-support/attr/acl_2.2.49.bb new file mode 100644 index 0000000000..e5d5509de1 --- /dev/null +++ b/meta/recipes-support/attr/acl_2.2.49.bb @@ -0,0 +1,3 @@ +require acl.inc + +PR = "r0" diff --git a/meta/recipes-support/attr/attr-2.4.44/double-free.patch b/meta/recipes-support/attr/attr-2.4.44/double-free.patch new file mode 100644 index 0000000000..6fc684f6c2 --- /dev/null +++ b/meta/recipes-support/attr/attr-2.4.44/double-free.patch @@ -0,0 +1,18 @@ +commit 5b28eb3b0e0430ce6af28edc9100ca23299d1218 +Author: Kamil Dudka +Date: Thu Jun 3 15:29:54 2010 +0200 + + attr_parse_attr_conf: eliminate a double free + +diff --git a/libattr/attr_copy_action.c b/libattr/attr_copy_action.c +index 030bbf5..2697328 100644 +--- a/libattr/attr_copy_action.c ++++ b/libattr/attr_copy_action.c +@@ -81,6 +81,7 @@ repeat: + fclose(file); + file = NULL; + free(text); ++ text = NULL; + size_guess *= 2; + goto repeat; + } diff --git a/meta/recipes-support/attr/attr-2.4.44/memory-leak-in-copy.patch b/meta/recipes-support/attr/attr-2.4.44/memory-leak-in-copy.patch new file mode 100644 index 0000000000..966632d87e --- /dev/null +++ b/meta/recipes-support/attr/attr-2.4.44/memory-leak-in-copy.patch @@ -0,0 +1,50 @@ +commit 972b42a67393f762936e74d3ce929914181f5f28 +Author: Brandon Philips +Date: Thu Dec 17 17:15:57 2009 -0800 + + libattr: fix memory leak in attr_copy_action() + + stanse found that attr_copy_action returns before freeing the memory + allocated for text. + + Move fopen() above the malloc so this is not a problem. + + Fixes this bug: + https://bugzilla.novell.com/show_bug.cgi?id=564735 + + Signed-off-by: Brandon Philips + +diff --git a/libattr/attr_copy_action.c b/libattr/attr_copy_action.c +index 0d7aca5..dc94224 100644 +--- a/libattr/attr_copy_action.c ++++ b/libattr/attr_copy_action.c +@@ -53,7 +53,7 @@ free_attr_actions(void) + static int + attr_parse_attr_conf(struct error_context *ctx) + { +- char *text, *t; ++ char *text = NULL, *t; + size_t size_guess = 4096, len; + FILE *file; + char *pattern = NULL; +@@ -64,15 +64,16 @@ attr_parse_attr_conf(struct error_context *ctx) + return 0; + + repeat: +- text = malloc(size_guess + 1); +- if (!text) +- goto fail; +- + if ((file = fopen(ATTR_CONF, "r")) == NULL) { + if (errno == ENOENT) + return 0; + goto fail; + } ++ ++ text = malloc(size_guess + 1); ++ if (!text) ++ goto fail; ++ + len = fread(text, 1, size_guess, file); + if (ferror(file)) + goto fail; diff --git a/meta/recipes-support/attr/attr-2.4.44/memory-leak2.patch b/meta/recipes-support/attr/attr-2.4.44/memory-leak2.patch new file mode 100644 index 0000000000..03395423da --- /dev/null +++ b/meta/recipes-support/attr/attr-2.4.44/memory-leak2.patch @@ -0,0 +1,18 @@ +commit 42f50a130d144ffbc01738f15da9d4f1b57505bd +Author: Kamil Dudka +Date: Thu Jun 3 15:23:04 2010 +0200 + + attr_parse_attr_conf: eliminate a memory leak + +diff --git a/libattr/attr_copy_action.c b/libattr/attr_copy_action.c +index dc94224..030bbf5 100644 +--- a/libattr/attr_copy_action.c ++++ b/libattr/attr_copy_action.c +@@ -129,6 +129,7 @@ repeat: + + t += strcspn(t, "\n"); + } ++ free(text); + return 0; + + parse_error: diff --git a/meta/recipes-support/attr/attr-2.4.44/pull-in-string.h.patch b/meta/recipes-support/attr/attr-2.4.44/pull-in-string.h.patch new file mode 100644 index 0000000000..ccbc236284 --- /dev/null +++ b/meta/recipes-support/attr/attr-2.4.44/pull-in-string.h.patch @@ -0,0 +1,21 @@ +commit 235cdd2af498d288f1af1142e7a23fbd16dff907 +Author: Mike Frysinger +Date: Fri Jan 8 21:53:19 2010 -0500 + + quote: pull in string.h for strchr prototype + + Signed-off-by: Mike Frysinger + Signed-off-by: Brandon Philips + +diff --git a/libmisc/quote.c b/libmisc/quote.c +index f98c887..bf8f9eb 100644 +--- a/libmisc/quote.c ++++ b/libmisc/quote.c +@@ -20,6 +20,7 @@ + #include + #include + #include ++#include + #include "misc.h" + + const char *quote(const char *str, const char *quote_chars) diff --git a/meta/recipes-support/attr/attr-2.4.44/thinko-in-restore.patch b/meta/recipes-support/attr/attr-2.4.44/thinko-in-restore.patch new file mode 100644 index 0000000000..a84de94ed0 --- /dev/null +++ b/meta/recipes-support/attr/attr-2.4.44/thinko-in-restore.patch @@ -0,0 +1,19 @@ +commit e8d568c696692eed5c92d5a35498e1c26e13d6b3 +Author: Kamil Dudka +Date: Thu Jun 3 15:30:19 2010 +0200 + + setfattr.c: fix thinko in restore() + +diff --git a/setfattr/setfattr.c b/setfattr/setfattr.c +index 491c25a..0a14cfa 100644 +--- a/setfattr/setfattr.c ++++ b/setfattr/setfattr.c +@@ -120,7 +120,7 @@ int restore(const char *filename) + break; + line++; + if (strncmp(l, "# file: ", 8) != 0) { +- if (filename) { ++ if (file != stdin) { + fprintf(stderr, _("%s: %s: No filename found " + "in line %d, aborting\n"), + progname, filename, backup_line); diff --git a/meta/recipes-support/attr/attr.inc b/meta/recipes-support/attr/attr.inc new file mode 100644 index 0000000000..da7924631e --- /dev/null +++ b/meta/recipes-support/attr/attr.inc @@ -0,0 +1,20 @@ +DESCRIPTION = "utilities for manipulating filesystem extended attributes" +HOMEPAGE = "http://savannah.nongnu.org/projects/attr/" +SECTION = "libs" + +LICENSE = "LGPLv2.1+ & GPLv2+" +LICENSE_${PN} = "GPLv2+" +LICENSE_lib${PN} = "LGPLv2.1+" +LIC_FILES_CHKSUM = "file://doc/COPYING;md5=2d0aa14b3fce4694e4f615e30186335f \ + file://attr/attr.c;endline=17;md5=be0403261f0847e5f43ed5b08d19593c \ + file://libattr/libattr.c;endline=17;md5=7970f77049f8fa1199fff62a7ab724fb" + +SRC_URI = "http://nongnu.askapache.com/attr/${BP}.src.tar.gz" + +require ea-acl.inc + +# libdir should point to .la +do_install_append() { + sed -i ${D}${libdir}/libattr.la -e \ + s,^libdir=\'${base_libdir}\'$,libdir=\'${libdir}\', +} diff --git a/meta/recipes-support/attr/attr_2.4.44.bb b/meta/recipes-support/attr/attr_2.4.44.bb new file mode 100644 index 0000000000..0b21b33dcf --- /dev/null +++ b/meta/recipes-support/attr/attr_2.4.44.bb @@ -0,0 +1,9 @@ +require attr.inc + +PR = "r1" + +SRC_URI += "file://memory-leak-in-copy.patch \ + file://memory-leak2.patch \ + file://double-free.patch \ + file://pull-in-string.h.patch \ + file://thinko-in-restore.patch" diff --git a/meta/recipes-support/attr/ea-acl.inc b/meta/recipes-support/attr/ea-acl.inc new file mode 100644 index 0000000000..77fa2b4fd6 --- /dev/null +++ b/meta/recipes-support/attr/ea-acl.inc @@ -0,0 +1,35 @@ +# this build system is mostly shared by attr and acl + +DEPENDS =+ "gettext" + +SRC_URI += "file://relative-libdir.patch;striplevel=0" + +inherit autotools + +# the package comes with a custom config.h.in, it cannot be +# overwritten by autoheader +export AUTOHEADER = "true" +EXTRA_OECONF = "INSTALL_USER=root INSTALL_GROUP=root" + +EXTRA_OEMAKE = "PKG_LIB_DIR=${base_libdir} PKG_DEVLIB_DIR=${libdir}" + +do_install () { + oe_runmake install install-lib install-dev DIST_ROOT="${D}" +} + +PACKAGES =+ "lib${PN} lib${PN}-dev lib${PN}-doc" + +FILES_lib${PN} = "${base_libdir}/lib*.so.*" + +FILES_lib${PN}-dev = "${includedir} \ + ${libdir}/lib*.so \ + ${libdir}/lib*.a \ + ${libdir}/lib*.la \ + ${base_libdir}/lib*.so \ + ${base_libdir}/lib*.a \ + ${base_libdir}/lib*.la" + +FILES_lib${PN}-doc = "${mandir}/man2 \ + ${mandir}/man3" + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-support/attr/files/relative-libdir.patch b/meta/recipes-support/attr/files/relative-libdir.patch new file mode 100644 index 0000000000..f989dd0ccc --- /dev/null +++ b/meta/recipes-support/attr/files/relative-libdir.patch @@ -0,0 +1,23 @@ +use relative path in symbolic links, or it fails in staging +sed expression from udev + +7/29/2010 - created by Qing He + +diff -u include.orig/buildmacros include/buildmacros +--- include.orig/buildmacros 2010-07-29 17:39:48.000000000 +0800 ++++ include/buildmacros 2010-07-29 18:20:34.000000000 +0800 +@@ -88,9 +88,11 @@ + ../$(INSTALL) -m 755 -d $(PKG_LIB_DIR); \ + ../$(INSTALL) -T so_base $(LIBNAME).lai $(PKG_LIB_DIR); \ + if test "x$(PKG_DEVLIB_DIR)" != "x$(PKG_LIB_DIR)" ; then \ +- ../$(INSTALL) -S $(PKG_DEVLIB_DIR)/$(LIBNAME).a $(PKG_LIB_DIR)/$(LIBNAME).a; \ +- ../$(INSTALL) -S $(PKG_DEVLIB_DIR)/$(LIBNAME).la $(PKG_LIB_DIR)/$(LIBNAME).la; \ +- ../$(INSTALL) -S $(PKG_LIB_DIR)/$(LIBNAME).so $(PKG_DEVLIB_DIR)/$(LIBNAME).so; \ ++ rel_lib_prefix=$$(echo $(PKG_LIB_DIR) | sed 's,\(^/\|\)[^/][^/]*,..,g'); \ ++ ../$(INSTALL) -S $$rel_lib_prefix$(PKG_DEVLIB_DIR)/$(LIBNAME).a $(PKG_LIB_DIR)/$(LIBNAME).a; \ ++ ../$(INSTALL) -S $$rel_lib_prefix$(PKG_DEVLIB_DIR)/$(LIBNAME).la $(PKG_LIB_DIR)/$(LIBNAME).la; \ ++ rel_devlib_prefix=$$(echo $(PKG_DEVLIB_DIR) | sed 's,\(^/\|\)[^/][^/]*,..,g'); \ ++ ../$(INSTALL) -S $$rel_devlib_prefix$(PKG_LIB_DIR)/$(LIBNAME).so $(PKG_DEVLIB_DIR)/$(LIBNAME).so; \ + fi + else + INSTALL_LTLIB_DEV = $(INSTALL_LTLIB_STATIC) diff --git a/meta/recipes-support/beecrypt/beecrypt/disable-icu-check.patch b/meta/recipes-support/beecrypt/beecrypt/disable-icu-check.patch new file mode 100644 index 0000000000..3e18a87c3f --- /dev/null +++ b/meta/recipes-support/beecrypt/beecrypt/disable-icu-check.patch @@ -0,0 +1,41 @@ +We are unable to run code at configure time in a cross environemnt, but as we +control the build we can be fairly certain this dependency is met. + +JL 05/07/10 +Index: beecrypt-4.1.2/configure.ac +=================================================================== +--- beecrypt-4.1.2.orig/configure.ac 2004-12-21 11:37:56.000000000 +0000 ++++ beecrypt-4.1.2/configure.ac 2010-07-05 16:09:50.390083494 +0100 +@@ -243,32 +243,6 @@ + # Predefines and checks for C++ API support + AH_TEMPLATE([CPPGLUE],[Define to 1 if you want to include the C++ code]) + +-if test "$ac_with_cplusplus" = yes; then +- AC_MSG_CHECKING([for IBM's ICU library version >= 2.8]) +- AC_LANG_PUSH(C) +- AC_RUN_IFELSE([ +- AC_LANG_PROGRAM([[#include ]],[[ +- #if U_ICU_VERSION_MAJOR_NUM < 2 +- exit(1); +- #elif U_ICU_VERSION_MAJOR_NUM == 2 +- # if U_ICU_VERSION_MINOR_NUM < 8 +- exit(1); +- # else +- exit(0); +- # endif +- #else +- exit(0); +- #endif +- ]])],[ +- AC_MSG_RESULT([yes]) +- ],[ +- AC_MSG_RESULT([no]) +- AC_MSG_WARN([disabling cplusplus]) +- ac_with_cplusplus=no +- ]) +- AC_LANG_POP(C) +-fi +- + if test "$ac_with_cplusplus" = yes ; then + AC_DEFINE([CPPGLUE],1) + fi diff --git a/meta/recipes-support/beecrypt/beecrypt/fix-security.patch b/meta/recipes-support/beecrypt/beecrypt/fix-security.patch new file mode 100644 index 0000000000..6103562e0a --- /dev/null +++ b/meta/recipes-support/beecrypt/beecrypt/fix-security.patch @@ -0,0 +1,43 @@ +Fix visibility of various C++ functions, inspired by a similar patch in the Fink +project: +http://www.mail-archive.com/fink-commits@lists.sourceforge.net/msg75742.html + +JL 05/07/10 +Index: beecrypt-4.1.2/c++/security/Security.h +=================================================================== +--- beecrypt-4.1.2.orig/c++/security/Security.h 2010-07-05 17:15:34.811273306 +0100 ++++ beecrypt-4.1.2/c++/security/Security.h 2010-07-05 17:15:38.696388531 +0100 +@@ -75,8 +75,6 @@ + public: + typedef vector provider_vector; + typedef provider_vector::iterator provider_vector_iterator; +- +- private: + struct spi + { + Object* cspi; +@@ -91,6 +89,7 @@ + static spi* getSpi(const String& algo, const String& type, const Provider&) throw (NoSuchAlgorithmException); + static spi* getFirstSpi(const String& type); + ++ private: + static const String& getKeyStoreDefault(); + + static bool _init; +Index: beecrypt-4.1.2/c++/beeyond/BeeCertificate.h +=================================================================== +--- beecrypt-4.1.2.orig/c++/beeyond/BeeCertificate.h 2004-11-03 09:37:27.000000000 +0000 ++++ beecrypt-4.1.2/c++/beeyond/BeeCertificate.h 2010-07-05 17:16:25.216332324 +0100 +@@ -150,11 +150,11 @@ + mutable String* str; + + BeeCertificate(); +- BeeCertificate(InputStream& in) throw (IOException); + + bytearray* encodeTBS() const; + + public: ++ BeeCertificate(InputStream& in) throw (IOException); + BeeCertificate(const BeeCertificate&); + virtual ~BeeCertificate(); + diff --git a/meta/recipes-support/beecrypt/beecrypt/x64fix.patch b/meta/recipes-support/beecrypt/beecrypt/x64fix.patch new file mode 100644 index 0000000000..ac02425d51 --- /dev/null +++ b/meta/recipes-support/beecrypt/beecrypt/x64fix.patch @@ -0,0 +1,23 @@ +Don't have 64 appended to the libdir for 64bit platforms. + +JL 05/07/10 +Index: beecrypt-4.1.2/configure.ac +=================================================================== +--- beecrypt-4.1.2.orig/configure.ac 2010-07-05 16:39:43.000000000 +0100 ++++ beecrypt-4.1.2/configure.ac 2010-07-05 16:40:27.521082866 +0100 +@@ -585,15 +585,6 @@ + + # Check where to install the libraries + bc_libalt= +-case $target_os in +-linux*) +- case $bc_target_arch in +- powerpc64 | s390x | x86_64) +- bc_libalt="64" +- ;; +- esac +- ;; +-esac + AC_SUBST(LIBALT,$bc_libalt) + + # Generate output files. diff --git a/meta/recipes-support/beecrypt/beecrypt_4.1.2.bb b/meta/recipes-support/beecrypt/beecrypt_4.1.2.bb new file mode 100644 index 0000000000..6eb40e5d5d --- /dev/null +++ b/meta/recipes-support/beecrypt/beecrypt_4.1.2.bb @@ -0,0 +1,21 @@ +# Beecrypt OE build file +# Copyright (C) 2004-2005, Advanced Micro Devices, Inc. All Rights Reserved +# Released under the MIT license (see packages/COPYING) + +DESCRIPTION="Beecrypt is a general-purpose cryptography library." +HOMEPAGE="http://sourceforge.net/projects/beecrypt" +SRC_URI="${SOURCEFORGE_MIRROR}/beecrypt/beecrypt-${PV}.tar.gz \ + file://x64fix.patch \ + file://disable-icu-check.patch \ + file://fix-security.patch" + +DEPENDS = "icu" + +PR = "r0" + +inherit autotools +acpaths="" + +EXTRA_OECONF="--with-arch=${TARGET_ARCH} --without-python --enable-shared --enable-static" + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-support/boost/boost-36.inc b/meta/recipes-support/boost/boost-36.inc new file mode 100644 index 0000000000..5d2d1280be --- /dev/null +++ b/meta/recipes-support/boost/boost-36.inc @@ -0,0 +1,149 @@ +# The Boost web site provides free peer-reviewed portable +# C++ source libraries. The emphasis is on libraries which +# work well with the C++ Standard Library. The libraries are +# intended to be widely useful, and are in regular use by +# thousands of programmers across a broad spectrum of applications. +DESCRIPTION = "Free peer-reviewed portable C++ source libraries" +HOMEPAGE = "http://www.boost.org/" +SECTION = "libs" +DEPENDS = "boost-jam-native zlib" +PRIORITY = "optional" +LICENSE = "Boost Software License" +PR = "r3" + +ARM_INSTRUCTION_SET = "arm" +BOOST_VER = "${@"_".join(bb.data.getVar("PV",d,1).split("."))}" +BOOST_MAJ = "${@"_".join(bb.data.getVar("PV",d,1).split(".")[0:2])}" +BOOST_P = "boost_${BOOST_VER}" + +BOOST_LIBS = "\ + date_time \ + filesystem \ + graph \ + iostreams \ + program_options \ + regex \ + signals \ + system \ + test \ + thread \ + " + +# FIXME: for some reason this fails on powerpc +#BOOST_LIBS += "serialization" + +# To enable python, uncomment the following: +#BOOST_LIBS += "python" +#DEPENDS += "python" +#PYTHON_ROOT = "${STAGING_DIR_HOST}/${prefix}" +#PYTHON_VERSION = "2.5" + +S = "${WORKDIR}/${BOOST_P}" + +# Make a package for each library, plus -dev +PACKAGES = "${PN}-dbg ${BOOST_PACKAGES}" +python __anonymous () { + import bb + + packages = [] + extras = [] + for lib in bb.data.getVar('BOOST_LIBS', d, 1).split( ): + pkg = "boost-%s" % lib.replace("_", "-") + extras.append("--with-%s" % lib) + packages.append(pkg) + if not bb.data.getVar("FILES_%s" % pkg, d, 1): + bb.data.setVar("FILES_%s" % pkg, "${libdir}/libboost_%s*.so.*" % lib, d) + bb.data.setVar("BOOST_PACKAGES", " ".join(packages), d) + bb.data.setVar("BJAM_EXTRA", " ".join(extras), d) +} + +# Override the contents of specific packages +FILES_boost-serialization = "${libdir}/libboost_serialization*.so.* \ + ${libdir}/libboost_wserialization*.so.*" +FILES_boost-test = "${libdir}/libboost_prg_exec_monitor*.so.* \ + ${libdir}/libboost_unit_test_framework*.so.*" + +# -dev last to pick up the remaining stuff +PACKAGES += "${PN}-dev" +FILES_${PN}-dev = "${includedir} ${libdir}/libboost_*.so ${libdir}/libboost_*.a" + +# "boost" is a metapackage which pulls in all boost librabries +PACKAGES += "${PN}" +RRECOMMENDS_${PN} += "${BOOST_PACKAGES}" +ALLOW_EMPTY_${PN} = "1" + +# to avoid GNU_HASH QA errors added LDFLAGS to ARCH; a little bit dirty but at least it works +TARGET_CC_ARCH += " ${LDFLAGS}" + +# Oh yippee, a new build system, it's sooo cooool I could eat my own +# foot. inlining=on lets the compiler choose, I think. At least this +# stuff is documented... +# NOTE: if you leave on then in a debug build the build sys +# objcopy will be invoked, and that won't work. Building debug apparently +# requires hacking gcc-tools.jam +# +# Sometimes I wake up screaming. Famous figures are gathered in the nightmare, +# Steve Bourne, Larry Wall, the whole of the ANSI C committee. They're just +# standing there, waiting, but the truely terrifying thing is what they carry +# in their hands. At first sight each seems to bear the same thing, but it is +# not so for the forms in their grasp are ever so slightly different one from +# the other. Each is twisted in some grotesque way from the other to make each +# an unspeakable perversion impossible to perceive without the onset of madness. +# True insanity awaits anyone who perceives all of these horrors together. +# +# Quotation marks, there might be an easier way to do this, but I can't find +# it. The problem is that the user.hpp configuration file must receive a +# pre-processor macro defined as the appropriate string - complete with "'s +# around it. (<> is a possibility here but the danger to that is that the +# failure case interprets the < and > as shell redirections, creating +# random files in the source tree.) +# +#bjam: '-DBOOST_PLATFORM_CONFIG=\"config\"' +#do_compile: '-sGCC=... '"'-DBOOST_PLATFORM_CONFIG=\"config\"'" +SQD = '"' +EQD = '\"' +#boost.bb: "... '-sGCC=... '${SQD}'-DBOOST_PLATFORM_CONFIG=${EQD}config${EQD}'${SQD} ..." +BJAM_CONF = "${SQD}'-DBOOST_PLATFORM_CONFIG=${EQD}boost/config/platform/${TARGET_OS}.hpp${EQD}'${SQD}" + +# bzip2 and zip are disabled because... they're broken - the compilation simply +# isn't working with bjam. I guess they will fix it, but who needs it? This +# only affects the (new in 33) iostream library. +BJAM_TOOLS = "-sTOOLS=gcc \ + '-sGCC=${CC} '${BJAM_CONF} \ + '-sGXX=${CXX} '${BJAM_CONF} \ + '-sGCC_INCLUDE_DIRECTORY=${STAGING_INCDIR}' \ + '-sGCC_STDLIB_DIRECTORY=${STAGING_LIBDIR}' \ + '-sNO_BZIP2=1' \ + '-sNO_ZLIB=1' \ + '-sBUILD=release space on off' \ + '-sPYTHON_VERSION=${PYTHON_VERSION}' \ + '--layout=system' \ + " + +BJAM_OPTS = '${BJAM_TOOLS} \ + --builddir=${S}/${TARGET_SYS} \ + --with-python-root=${PYTHON_ROOT} \ + ${BJAM_EXTRA}' + + +do_configure_prepend() { + cp -f boost/config/platform/linux.hpp boost/config/platform/linux-gnueabi.hpp + + echo 'using gcc : 4.3.1 : ${CXX} : compileflags -DBOOST_SP_USE_PTHREADS -I${includedir} linkflags -L${libdir} ;' >> ${S}/tools/build/v2/user-config.jam +} + +do_compile() { + set -ex + bjam ${BJAM_OPTS} --prefix=${prefix} \ + --exec-prefix=${exec_prefix} \ + --libdir=${libdir} \ + --includedir=${includedir} +} + +do_install() { + set -ex + bjam ${BJAM_OPTS} \ + --libdir=${D}${libdir} \ + --includedir=${D}${includedir} \ + install +} diff --git a/meta/recipes-support/boost/boost-jam-native.inc b/meta/recipes-support/boost/boost-jam-native.inc new file mode 100644 index 0000000000..fe181ad00f --- /dev/null +++ b/meta/recipes-support/boost/boost-jam-native.inc @@ -0,0 +1,31 @@ +# The Boost web site provides free peer-reviewed portable +# C++ source libraries. The emphasis is on libraries which +# work well with the C++ Standard Library. The libraries are +# intended to be widely useful, and are in regular use by +# thousands of programmers across a broad spectrum of applications. +DESCRIPTION = "Make system for boost (native)" +HOMEPAGE = "http://www.boost.org/" +SECTION = "devel" +PRIORITY = "optional" +LICENSE = "Boost Software License" +PR = "r0" + +SRC_URI = "${SOURCEFORGE_MIRROR}/boost/boost-jam-${PV}.tgz" +S = "${WORKDIR}/boost-jam-${PV}" + +inherit native + +do_compile() { + set -ex + rm -rf bin.* + ./build.sh gcc +} + +# This is too terrible - the build script doesn't give any good +# way I can see to find out where the binaries are placed, so +# rely on only one bin.foo directory being created. +do_install () { + set -ex + install -d ${D}${bindir}/ + install -c -m 755 bin.*/bjam ${D}${bindir}/ +} diff --git a/meta/recipes-support/boost/boost-jam-native_3.1.18.bb b/meta/recipes-support/boost/boost-jam-native_3.1.18.bb new file mode 100644 index 0000000000..2e92146a83 --- /dev/null +++ b/meta/recipes-support/boost/boost-jam-native_3.1.18.bb @@ -0,0 +1,4 @@ +include boost-jam-native.inc + +SRC_URI = "${SOURCEFORGE_MIRROR}/boost/boost-jam-${PV}.tgz" + diff --git a/meta/recipes-support/boost/boost_1.44.0.bb b/meta/recipes-support/boost/boost_1.44.0.bb new file mode 100644 index 0000000000..81a2e53ba3 --- /dev/null +++ b/meta/recipes-support/boost/boost_1.44.0.bb @@ -0,0 +1,27 @@ +include boost-36.inc + +LICENSE = "boost" +LIC_FILES_CHKSUM = "file://LICENSE_1_0.txt;md5=e4224ccaecb14d942c71d31bef20d78c" + +PR = "r0" + +SRC_URI = "${SOURCEFORGE_MIRROR}/boost/${BOOST_P}.tar.bz2 \ + file://arm-intrinsics.patch \ + " + +BJAM_OPTS = '${BJAM_TOOLS} \ + --builddir=${S}/${TARGET_SYS} \ + ${BJAM_EXTRA}' + +# build only mt libraries and install symlinks for compatibility +BJAM_EXTRA += "threading=multi" +do_install_append() { + for lib in ${BOOST_LIBS}; do + if [ -e ${D}${libdir}/libboost_${lib}.a ]; then + ln -s libboost_${lib}.a ${D}${libdir}/libboost_${lib}-mt.a + fi + if [ -e ${D}${libdir}/libboost_${lib}.so ]; then + ln -s libboost_${lib}.so ${D}${libdir}/libboost_${lib}-mt.so + fi + done +} diff --git a/meta/recipes-support/boost/files/1.34.1-gcc43.patch b/meta/recipes-support/boost/files/1.34.1-gcc43.patch new file mode 100644 index 0000000000..4670ac4295 --- /dev/null +++ b/meta/recipes-support/boost/files/1.34.1-gcc43.patch @@ -0,0 +1,224 @@ +Index: boost_1_34_1/boost/archive/polymorphic_iarchive.hpp +=================================================================== +--- boost_1_34_1.orig/boost/archive/polymorphic_iarchive.hpp 2005-12-11 07:12:51.000000000 +0100 ++++ boost_1_34_1/boost/archive/polymorphic_iarchive.hpp 2008-09-20 20:55:21.000000000 +0200 +@@ -17,6 +17,7 @@ + // See http://www.boost.org for updates, documentation, and revision history. + + #include // std::size_t ++#include + #include + + #if defined(BOOST_NO_STDC_NAMESPACE) +Index: boost_1_34_1/boost/archive/polymorphic_oarchive.hpp +=================================================================== +--- boost_1_34_1.orig/boost/archive/polymorphic_oarchive.hpp 2006-02-12 06:43:06.000000000 +0100 ++++ boost_1_34_1/boost/archive/polymorphic_oarchive.hpp 2008-09-20 20:55:21.000000000 +0200 +@@ -17,6 +17,7 @@ + // See http://www.boost.org for updates, documentation, and revision history. + + #include // size_t ++#include + #include + + #include +Index: boost_1_34_1/boost/date_time/date_facet.hpp +=================================================================== +--- boost_1_34_1.orig/boost/date_time/date_facet.hpp 2005-09-05 23:10:50.000000000 +0200 ++++ boost_1_34_1/boost/date_time/date_facet.hpp 2008-09-20 20:55:21.000000000 +0200 +@@ -429,7 +429,7 @@ + typedef std::basic_string string_type; + typedef CharT char_type; + typedef boost::date_time::period_parser period_parser_type; +- typedef special_values_parser special_values_parser_type; ++ typedef boost::date_time::special_values_parser special_values_parser_type; + typedef std::vector > input_collection_type; + typedef format_date_parser format_date_parser_type; + // date_generators stuff goes here +Index: boost_1_34_1/boost/mpl/zip_view.hpp +=================================================================== +--- boost_1_34_1.orig/boost/mpl/zip_view.hpp 2004-09-02 17:40:42.000000000 +0200 ++++ boost_1_34_1/boost/mpl/zip_view.hpp 2008-09-20 20:55:21.000000000 +0200 +@@ -37,7 +37,7 @@ + typedef zip_iterator< + typename transform1< + IteratorSeq +- , next<_1> ++ , boost::mpl::next<_1> + >::type + > next; + }; +@@ -48,8 +48,8 @@ + struct zip_view + { + private: +- typedef typename transform1< Sequences, begin<_1> >::type first_ones_; +- typedef typename transform1< Sequences, end<_1> >::type last_ones_; ++ typedef typename transform1< Sequences, boost::mpl::begin<_1> >::type first_ones_; ++ typedef typename transform1< Sequences, boost::mpl::end<_1> >::type last_ones_; + + public: + typedef nested_begin_end_tag tag; +Index: boost_1_34_1/boost/python/detail/def_helper.hpp +=================================================================== +--- boost_1_34_1.orig/boost/python/detail/def_helper.hpp 2004-09-16 03:00:28.000000000 +0200 ++++ boost_1_34_1/boost/python/detail/def_helper.hpp 2008-09-20 20:55:21.000000000 +0200 +@@ -155,7 +155,7 @@ + , T3 const& + , T4 const& + , default_call_policies +- , keywords<0> ++ , boost::python::detail::keywords<0> + , char const* + , void(not_specified::*)() // A function pointer type which is never an + // appropriate default implementation +Index: boost_1_34_1/boost/regex/v4/basic_regex_creator.hpp +=================================================================== +--- boost_1_34_1.orig/boost/regex/v4/basic_regex_creator.hpp 2006-07-16 18:06:38.000000000 +0200 ++++ boost_1_34_1/boost/regex/v4/basic_regex_creator.hpp 2008-09-20 20:55:21.000000000 +0200 +@@ -24,6 +24,8 @@ + # include BOOST_ABI_PREFIX + #endif + ++#include ++ + namespace boost{ + + namespace re_detail{ +Index: boost_1_34_1/boost/regex/v4/basic_regex.hpp +=================================================================== +--- boost_1_34_1.orig/boost/regex/v4/basic_regex.hpp 2007-06-05 19:28:18.000000000 +0200 ++++ boost_1_34_1/boost/regex/v4/basic_regex.hpp 2008-09-20 20:55:21.000000000 +0200 +@@ -23,6 +23,8 @@ + # include BOOST_ABI_PREFIX + #endif + ++#include ++ + namespace boost{ + #ifdef BOOST_MSVC + #pragma warning(push) +Index: boost_1_34_1/boost/regex/v4/basic_regex_parser.hpp +=================================================================== +--- boost_1_34_1.orig/boost/regex/v4/basic_regex_parser.hpp 2006-12-20 18:19:05.000000000 +0100 ++++ boost_1_34_1/boost/regex/v4/basic_regex_parser.hpp 2008-09-20 20:55:21.000000000 +0200 +@@ -23,6 +23,8 @@ + # include BOOST_ABI_PREFIX + #endif + ++#include ++ + namespace boost{ + namespace re_detail{ + +Index: boost_1_34_1/boost/regex/v4/cpp_regex_traits.hpp +=================================================================== +--- boost_1_34_1.orig/boost/regex/v4/cpp_regex_traits.hpp 2007-01-15 12:09:44.000000000 +0100 ++++ boost_1_34_1/boost/regex/v4/cpp_regex_traits.hpp 2008-09-20 20:55:21.000000000 +0200 +@@ -41,6 +41,7 @@ + + #include + #include ++#include + + #ifdef BOOST_HAS_ABI_HEADERS + # include BOOST_ABI_PREFIX +Index: boost_1_34_1/boost/regex/v4/perl_matcher.hpp +=================================================================== +--- boost_1_34_1.orig/boost/regex/v4/perl_matcher.hpp 2006-10-18 14:55:30.000000000 +0200 ++++ boost_1_34_1/boost/regex/v4/perl_matcher.hpp 2008-09-20 20:55:21.000000000 +0200 +@@ -18,6 +18,8 @@ + # include BOOST_ABI_PREFIX + #endif + ++#include ++ + namespace boost{ + namespace re_detail{ + +Index: boost_1_34_1/boost/regex/v4/regex_split.hpp +=================================================================== +--- boost_1_34_1.orig/boost/regex/v4/regex_split.hpp 2005-01-21 18:22:38.000000000 +0100 ++++ boost_1_34_1/boost/regex/v4/regex_split.hpp 2008-09-20 20:55:21.000000000 +0200 +@@ -21,6 +21,8 @@ + #ifndef BOOST_REGEX_SPLIT_HPP + #define BOOST_REGEX_SPLIT_HPP + ++#include ++ + namespace boost{ + + #ifdef BOOST_HAS_ABI_HEADERS +Index: boost_1_34_1/boost/regex/v4/states.hpp +=================================================================== +--- boost_1_34_1.orig/boost/regex/v4/states.hpp 2005-09-20 14:01:25.000000000 +0200 ++++ boost_1_34_1/boost/regex/v4/states.hpp 2008-09-20 20:55:21.000000000 +0200 +@@ -23,6 +23,8 @@ + # include BOOST_ABI_PREFIX + #endif + ++#include ++ + namespace boost{ + namespace re_detail{ + +Index: boost_1_34_1/boost/serialization/collection_traits.hpp +=================================================================== +--- boost_1_34_1.orig/boost/serialization/collection_traits.hpp 2005-06-21 07:19:04.000000000 +0200 ++++ boost_1_34_1/boost/serialization/collection_traits.hpp 2008-09-20 20:55:21.000000000 +0200 +@@ -22,6 +22,7 @@ + // compiles recognize the same set of primitive types, the possibility + // exists for archives to be non-portable if class information for primitive + // types is included. This is addressed by the following macros. ++#include + #include + #include + #include +Index: boost_1_34_1/boost/spirit/phoenix/operators.hpp +=================================================================== +--- boost_1_34_1.orig/boost/spirit/phoenix/operators.hpp 2006-08-25 18:27:30.000000000 +0200 ++++ boost_1_34_1/boost/spirit/phoenix/operators.hpp 2008-09-20 20:55:21.000000000 +0200 +@@ -24,6 +24,7 @@ + #include + #include + #include ++#include + + /////////////////////////////////////////////////////////////////////////////// + namespace phoenix { +Index: boost_1_34_1/boost/test/test_tools.hpp +=================================================================== +--- boost_1_34_1.orig/boost/test/test_tools.hpp 2007-02-22 18:57:29.000000000 +0100 ++++ boost_1_34_1/boost/test/test_tools.hpp 2008-09-20 20:55:21.000000000 +0200 +@@ -42,6 +42,7 @@ + #include + + // STL ++#include + #include // for std::size_t + #include + +Index: boost_1_34_1/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp +=================================================================== +--- boost_1_34_1.orig/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp 2006-12-20 17:38:24.000000000 +0100 ++++ boost_1_34_1/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp 2008-09-20 20:55:21.000000000 +0200 +@@ -16,6 +16,7 @@ + #include + #include + #include ++#include + #if defined(BOOST_SPIRIT_DEBUG) + #include + #endif // defined(BOOST_SPIRIT_DEBUG) +Index: boost_1_34_1/boost/wave/util/flex_string.hpp +=================================================================== +--- boost_1_34_1.orig/boost/wave/util/flex_string.hpp 2006-04-25 19:21:01.000000000 +0200 ++++ boost_1_34_1/boost/wave/util/flex_string.hpp 2008-09-20 20:55:21.000000000 +0200 +@@ -94,6 +94,7 @@ + #include + #include + #include ++#include + + // this must occur after all of the includes and before any code appears + #ifdef BOOST_HAS_ABI_HEADERS diff --git a/meta/recipes-support/boost/files/arm-intrinsics.patch b/meta/recipes-support/boost/files/arm-intrinsics.patch new file mode 100644 index 0000000000..3f9c620ebe --- /dev/null +++ b/meta/recipes-support/boost/files/arm-intrinsics.patch @@ -0,0 +1,53 @@ +8/17/2010 - rebased to 1.44 by Qing He + +diff --git a/boost/smart_ptr/detail/atomic_count_sync.hpp b/boost/smart_ptr/detail/atomic_count_sync.hpp +index b6359b5..78b1cc2 100644 +--- a/boost/smart_ptr/detail/atomic_count_sync.hpp ++++ b/boost/smart_ptr/detail/atomic_count_sync.hpp +@@ -33,17 +33,46 @@ public: + + long operator++() + { ++#ifdef __ARM_ARCH_7A__ ++ int v1, tmp; ++ asm volatile ("1: \n\t" ++ "ldrex %0, %1 \n\t" ++ "add %0 ,%0, #1 \n\t" ++ "strex %2, %0, %1 \n\t" ++ "cmp %2, #0 \n\t" ++ "bne 1b \n\t" ++ : "=&r" (v1), "+Q"(value_), "=&r"(tmp) ++ ); ++#else + return __sync_add_and_fetch( &value_, 1 ); ++#endif + } + + long operator--() + { ++#ifdef __ARM_ARCH_7A__ ++ int v1, tmp; ++ asm volatile ("1: \n\t" ++ "ldrex %0, %1 \n\t" ++ "sub %0 ,%0, #1 \n\t" ++ "strex %2, %0, %1 \n\t" ++ "cmp %2, #0 \n\t" ++ "bne 1b \n\t" ++ : "=&r" (v1), "+Q"(value_), "=&r"(tmp) ++ ); ++ return value_; ++#else + return __sync_add_and_fetch( &value_, -1 ); ++#endif + } + + operator long() const + { ++#if __ARM_ARCH_7A__ ++ return value_; ++#else + return __sync_fetch_and_add( &value_, 0 ); ++#endif + } + + private: diff --git a/meta/recipes-support/boost/files/atomic_count_gcc_atomicity.patch b/meta/recipes-support/boost/files/atomic_count_gcc_atomicity.patch new file mode 100644 index 0000000000..7d08e73550 --- /dev/null +++ b/meta/recipes-support/boost/files/atomic_count_gcc_atomicity.patch @@ -0,0 +1,13 @@ +Index: boost_1_33_1/boost/detail/atomic_count_gcc.hpp +=================================================================== +--- boost_1_33_1.orig/boost/detail/atomic_count_gcc.hpp 2008-05-01 20:43:45.000000000 +0200 ++++ boost_1_33_1/boost/detail/atomic_count_gcc.hpp 2008-05-01 20:43:55.000000000 +0200 +@@ -17,7 +17,7 @@ + // http://www.boost.org/LICENSE_1_0.txt) + // + +-#include ++#include + + namespace boost + { diff --git a/meta/recipes-support/boost/files/gcc41.patch b/meta/recipes-support/boost/files/gcc41.patch new file mode 100644 index 0000000000..f91d1adf2b --- /dev/null +++ b/meta/recipes-support/boost/files/gcc41.patch @@ -0,0 +1,14 @@ +diff -ur boost_1_33_1.orig/boost/bind.hpp boost_1_33_1/boost/bind.hpp +--- boost_1_33_1.orig/boost/bind.hpp 2008-10-11 10:30:03.000000000 +0200 ++++ boost_1_33_1/boost/bind.hpp 2008-10-11 10:41:25.000000000 +0200 +@@ -28,6 +28,10 @@ + #include + #include + ++#if __GNUC__ == 4 && __GNUC_MINOR__ == 1 ++# include ++#endif ++ + // Borland-specific bug, visit_each() silently fails to produce code + + #if defined(__BORLANDC__) diff --git a/meta/recipes-support/boost/files/gcc43.patch b/meta/recipes-support/boost/files/gcc43.patch new file mode 100644 index 0000000000..aefe0800c3 --- /dev/null +++ b/meta/recipes-support/boost/files/gcc43.patch @@ -0,0 +1,256 @@ +diff -aNru boost_1_34_1-ORIGINAL/boost/archive/polymorphic_iarchive.hpp boost_1_34_1/boost/archive/polymorphic_iarchive.hpp +--- boost_1_34_1-ORIGINAL/boost/archive/polymorphic_iarchive.hpp 2005-12-11 00:12:51.000000000 -0600 ++++ boost_1_34_1/boost/archive/polymorphic_iarchive.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -17,6 +17,7 @@ + // See http://www.boost.org for updates, documentation, and revision history. + + #include // std::size_t ++#include + #include + + #if defined(BOOST_NO_STDC_NAMESPACE) +diff -aNru boost_1_34_1-ORIGINAL/boost/archive/polymorphic_oarchive.hpp boost_1_34_1/boost/archive/polymorphic_oarchive.hpp +--- boost_1_34_1-ORIGINAL/boost/archive/polymorphic_oarchive.hpp 2006-02-11 23:43:06.000000000 -0600 ++++ boost_1_34_1/boost/archive/polymorphic_oarchive.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -17,6 +17,7 @@ + // See http://www.boost.org for updates, documentation, and revision history. + + #include // size_t ++#include + #include + + #include +diff -aNru boost_1_34_1-ORIGINAL/boost/date_time/date_facet.hpp boost_1_34_1/boost/date_time/date_facet.hpp +--- boost_1_34_1-ORIGINAL/boost/date_time/date_facet.hpp 2005-09-05 16:10:50.000000000 -0500 ++++ boost_1_34_1/boost/date_time/date_facet.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -429,7 +429,7 @@ + typedef std::basic_string string_type; + typedef CharT char_type; + typedef boost::date_time::period_parser period_parser_type; +- typedef special_values_parser special_values_parser_type; ++ typedef boost::date_time::special_values_parser special_values_parser_type; + typedef std::vector > input_collection_type; + typedef format_date_parser format_date_parser_type; + // date_generators stuff goes here +diff -aNru boost_1_34_1-ORIGINAL/boost/mpl/zip_view.hpp boost_1_34_1/boost/mpl/zip_view.hpp +--- boost_1_34_1-ORIGINAL/boost/mpl/zip_view.hpp 2004-09-02 10:40:42.000000000 -0500 ++++ boost_1_34_1/boost/mpl/zip_view.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -37,7 +37,7 @@ + typedef zip_iterator< + typename transform1< + IteratorSeq +- , next<_1> ++ , boost::mpl::next<_1> + >::type + > next; + }; +@@ -48,8 +48,8 @@ + struct zip_view + { + private: +- typedef typename transform1< Sequences, begin<_1> >::type first_ones_; +- typedef typename transform1< Sequences, end<_1> >::type last_ones_; ++ typedef typename transform1< Sequences, boost::mpl::begin<_1> >::type first_ones_; ++ typedef typename transform1< Sequences, boost::mpl::end<_1> >::type last_ones_; + + public: + typedef nested_begin_end_tag tag; +diff -aNru boost_1_34_1-ORIGINAL/boost/python/detail/def_helper.hpp boost_1_34_1/boost/python/detail/def_helper.hpp +--- boost_1_34_1-ORIGINAL/boost/python/detail/def_helper.hpp 2004-09-15 20:00:28.000000000 -0500 ++++ boost_1_34_1/boost/python/detail/def_helper.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -155,7 +155,7 @@ + , T3 const& + , T4 const& + , default_call_policies +- , keywords<0> ++ , boost::python::detail::keywords<0> + , char const* + , void(not_specified::*)() // A function pointer type which is never an + // appropriate default implementation +diff -aNru boost_1_34_1-ORIGINAL/boost/regex/v4/basic_regex_creator.hpp boost_1_34_1/boost/regex/v4/basic_regex_creator.hpp +--- boost_1_34_1-ORIGINAL/boost/regex/v4/basic_regex_creator.hpp 2006-07-16 11:06:38.000000000 -0500 ++++ boost_1_34_1/boost/regex/v4/basic_regex_creator.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -24,6 +24,8 @@ + # include BOOST_ABI_PREFIX + #endif + ++#include ++ + namespace boost{ + + namespace re_detail{ +diff -aNru boost_1_34_1-ORIGINAL/boost/regex/v4/basic_regex.hpp boost_1_34_1/boost/regex/v4/basic_regex.hpp +--- boost_1_34_1-ORIGINAL/boost/regex/v4/basic_regex.hpp 2007-06-05 12:28:18.000000000 -0500 ++++ boost_1_34_1/boost/regex/v4/basic_regex.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -23,6 +23,8 @@ + # include BOOST_ABI_PREFIX + #endif + ++#include ++ + namespace boost{ + #ifdef BOOST_MSVC + #pragma warning(push) +diff -aNru boost_1_34_1-ORIGINAL/boost/regex/v4/basic_regex_parser.hpp boost_1_34_1/boost/regex/v4/basic_regex_parser.hpp +--- boost_1_34_1-ORIGINAL/boost/regex/v4/basic_regex_parser.hpp 2006-12-20 11:19:05.000000000 -0600 ++++ boost_1_34_1/boost/regex/v4/basic_regex_parser.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -23,6 +23,8 @@ + # include BOOST_ABI_PREFIX + #endif + ++#include ++ + namespace boost{ + namespace re_detail{ + +diff -aNru boost_1_34_1-ORIGINAL/boost/regex/v4/cpp_regex_traits.hpp boost_1_34_1/boost/regex/v4/cpp_regex_traits.hpp +--- boost_1_34_1-ORIGINAL/boost/regex/v4/cpp_regex_traits.hpp 2007-01-15 05:09:44.000000000 -0600 ++++ boost_1_34_1/boost/regex/v4/cpp_regex_traits.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -41,6 +41,7 @@ + + #include + #include ++#include + + #ifdef BOOST_HAS_ABI_HEADERS + # include BOOST_ABI_PREFIX +diff -aNru boost_1_34_1-ORIGINAL/boost/regex/v4/perl_matcher.hpp boost_1_34_1/boost/regex/v4/perl_matcher.hpp +--- boost_1_34_1-ORIGINAL/boost/regex/v4/perl_matcher.hpp 2006-10-18 07:55:30.000000000 -0500 ++++ boost_1_34_1/boost/regex/v4/perl_matcher.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -18,6 +18,8 @@ + # include BOOST_ABI_PREFIX + #endif + ++#include ++ + namespace boost{ + namespace re_detail{ + +diff -aNru boost_1_34_1-ORIGINAL/boost/regex/v4/regex_split.hpp boost_1_34_1/boost/regex/v4/regex_split.hpp +--- boost_1_34_1-ORIGINAL/boost/regex/v4/regex_split.hpp 2005-01-21 11:22:38.000000000 -0600 ++++ boost_1_34_1/boost/regex/v4/regex_split.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -21,6 +21,8 @@ + #ifndef BOOST_REGEX_SPLIT_HPP + #define BOOST_REGEX_SPLIT_HPP + ++#include ++ + namespace boost{ + + #ifdef BOOST_HAS_ABI_HEADERS +diff -aNru boost_1_34_1-ORIGINAL/boost/regex/v4/states.hpp boost_1_34_1/boost/regex/v4/states.hpp +--- boost_1_34_1-ORIGINAL/boost/regex/v4/states.hpp 2005-09-20 07:01:25.000000000 -0500 ++++ boost_1_34_1/boost/regex/v4/states.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -23,6 +23,8 @@ + # include BOOST_ABI_PREFIX + #endif + ++#include ++ + namespace boost{ + namespace re_detail{ + +diff -aNru boost_1_34_1-ORIGINAL/boost/serialization/collection_traits.hpp boost_1_34_1/boost/serialization/collection_traits.hpp +--- boost_1_34_1-ORIGINAL/boost/serialization/collection_traits.hpp 2005-06-21 00:19:04.000000000 -0500 ++++ boost_1_34_1/boost/serialization/collection_traits.hpp 2008-03-03 03:09:49.000000000 -0600 +@@ -22,6 +22,7 @@ + // compiles recognize the same set of primitive types, the possibility + // exists for archives to be non-portable if class information for primitive + // types is included. This is addressed by the following macros. ++#include + #include + #include + #include +diff -aNru boost_1_34_1-ORIGINAL/boost/spirit/phoenix/operators.hpp boost_1_34_1/boost/spirit/phoenix/operators.hpp +--- boost_1_34_1-ORIGINAL/boost/spirit/phoenix/operators.hpp 2006-08-25 11:27:30.000000000 -0500 ++++ boost_1_34_1/boost/spirit/phoenix/operators.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -24,6 +24,7 @@ + #include + #include + #include ++#include + + /////////////////////////////////////////////////////////////////////////////// + namespace phoenix { +diff -aNru boost_1_34_1-ORIGINAL/boost/test/test_tools.hpp boost_1_34_1/boost/test/test_tools.hpp +--- boost_1_34_1-ORIGINAL/boost/test/test_tools.hpp 2007-02-22 11:57:29.000000000 -0600 ++++ boost_1_34_1/boost/test/test_tools.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -42,6 +42,7 @@ + #include + + // STL ++#include + #include // for std::size_t + #include + +diff -aNru boost_1_34_1-ORIGINAL/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp boost_1_34_1/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp +--- boost_1_34_1-ORIGINAL/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp 2006-12-20 10:38:24.000000000 -0600 ++++ boost_1_34_1/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -16,6 +16,7 @@ + #include + #include + #include ++#include + #if defined(BOOST_SPIRIT_DEBUG) + #include + #endif // defined(BOOST_SPIRIT_DEBUG) +diff -aNru boost_1_34_1-ORIGINAL/boost/wave/util/flex_string.hpp boost_1_34_1/boost/wave/util/flex_string.hpp +--- boost_1_34_1-ORIGINAL/boost/wave/util/flex_string.hpp 2006-04-25 12:21:01.000000000 -0500 ++++ boost_1_34_1/boost/wave/util/flex_string.hpp 2008-03-03 03:08:59.000000000 -0600 +@@ -94,6 +94,7 @@ + #include + #include + #include ++#include + + // this must occur after all of the includes and before any code appears + #ifdef BOOST_HAS_ABI_HEADERS + +--- boost_1_33_1/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp 2008-07-05 01:50:04.000000000 +0200 ++++ boost_1_34_1/boost/wave/cpplexer/re2clex/cpp_re2c_lexer.hpp 2006-12-20 17:38:24.000000000 +0100 +@@ -295,17 +325,20 @@ + + lex_functor(IteratorT const &first, IteratorT const &last, + PositionT const &pos, boost::wave::language_support language) +- : lexer(first, last, pos, language) ++ : re2c_lexer(first, last, pos, language) + {} + virtual ~lex_functor() {} + + // get the next token from the input stream +- token_type get() { return lexer.get(); } +- void set_position(PositionT const &pos) +- { lexer.set_position(pos); } ++ token_type get() { return re2c_lexer.get(); } ++ void set_position(PositionT const &pos) { re2c_lexer.set_position(pos); } ++#if BOOST_WAVE_SUPPORT_PRAGMA_ONCE != 0 ++ bool has_include_guards(std::string& guard_name) const ++ { return re2c_lexer.has_include_guards(guard_name); } ++#endif + + private: +- lexer lexer; ++ lexer re2c_lexer; + }; + + /////////////////////////////////////////////////////////////////////////////// +@@ -338,7 +371,7 @@ + // It is coupled to the iterator type to allow to decouple the lexer/iterator + // configurations at compile time. + // +-// This function is declared inside the cpp_slex_token.hpp file, which is ++// This function is declared inside the cpp_lex_token.hpp file, which is + // referenced by the source file calling the lexer and the source file, which + // instantiates the lex_functor. But is is defined here, so it will be + // instantiated only while compiling the source file, which instantiates the +@@ -356,8 +389,8 @@ + IteratorT const &last, PositionT const &pos, + boost::wave::language_support language) + { +- return new re2clex::lex_functor(first, last, pos, +- language); ++ using re2clex::lex_functor; ++ return new lex_functor(first, last, pos, language); + } + + #undef BOOST_WAVE_RE2C_NEW_LEXER_INLINE diff --git a/meta/recipes-support/boost/files/linux-uclibc.patch b/meta/recipes-support/boost/files/linux-uclibc.patch new file mode 100644 index 0000000000..79f14dea88 --- /dev/null +++ b/meta/recipes-support/boost/files/linux-uclibc.patch @@ -0,0 +1,10 @@ +--- /dev/null 1969-12-31 16:00:00.000000000 -0800 ++++ boost_1_32_0/boost/config/platform/linux-uclibc.hpp 2005-07-05 14:51:56.237294460 -0700 +@@ -0,0 +1,7 @@ ++// Modifications required to support uClibC libc implementation. ++// Default to Linux... ++#include "linux.hpp" ++ ++// Override anything uClibC doesn't support. ++// At present (0.9.27) the nl_types.h header exists but is not implemented ++#undef BOOST_HAS_NL_TYPES_H diff --git a/meta/recipes-support/boost/files/unit_test_log10f.patch b/meta/recipes-support/boost/files/unit_test_log10f.patch new file mode 100644 index 0000000000..b235e12446 --- /dev/null +++ b/meta/recipes-support/boost/files/unit_test_log10f.patch @@ -0,0 +1,20 @@ +--- boost_1_32_0/libs/test/src/unit_test_result.cpp.orig 2005-07-05 11:00:53.887594850 -0700 ++++ boost_1_32_0/libs/test/src/unit_test_result.cpp 2005-07-05 11:01:20.683533034 -0700 +@@ -144,7 +144,7 @@ + unit_test_counter num_passed, unit_test_counter num_failed ) + { + unit_test_counter total_test_cases = num_passed + num_failed; +- std::size_t width = static_cast( std::log10( (float)(std::max)( num_passed, num_failed ) ) ) + 1; ++ std::size_t width = static_cast( std::log10( (double)(std::max)( num_passed, num_failed ) ) ) + 1; + + where_to << std::setw( indent ) << "" << std::setw( width ) << num_passed + << " test " << ps_name( num_passed != 1, "case" ) << " out of " << total_test_cases << " passed\n" +@@ -158,7 +158,7 @@ + { + unit_test_counter total_assertions = num_passed + num_failed; + std::size_t width = total_assertions > 0 +- ? static_cast( std::log10( (float)(std::max)( num_passed, num_failed ) ) ) + 1 ++ ? static_cast( std::log10( (double)(std::max)( num_passed, num_failed ) ) ) + 1 + : 1; + + where_to << std::setw( indent ) << "" << std::setw( width ) << num_passed diff --git a/meta/recipes-support/curl/curl/noldlibpath.patch b/meta/recipes-support/curl/curl/noldlibpath.patch new file mode 100644 index 0000000000..a3319a23e3 --- /dev/null +++ b/meta/recipes-support/curl/curl/noldlibpath.patch @@ -0,0 +1,74 @@ +Manipulating LD_LIBRARY_PATH can totally break builds when cross compiling. +Since we never run compiled binaries for the target, we should *never* need +to change LD_LIBRARY_PATH. + +RP 9/6/2010 + +Index: curl-7.20.0/configure.ac +=================================================================== +--- curl-7.20.0.orig/configure.ac 2010-06-09 11:06:30.000000000 +0100 ++++ curl-7.20.0/configure.ac 2010-06-09 11:04:25.000000000 +0100 +@@ -1461,9 +1461,10 @@ + dnl linker doesn't search through, we need to add it to LD_LIBRARY_PATH + dnl to prevent further configure tests to fail due to this + +- LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$LIB_OPENSSL" +- export LD_LIBRARY_PATH +- AC_MSG_NOTICE([Added $LIB_OPENSSL to LD_LIBRARY_PATH]) ++ #LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$LIB_OPENSSL" ++ #export LD_LIBRARY_PATH ++ #AC_MSG_NOTICE([Added $LIB_OPENSSL to LD_LIBRARY_PATH]) ++ : + fi + fi + +@@ -1684,9 +1686,10 @@ + dnl LD_LIBRARY_PATH to prevent further configure tests to fail + dnl due to this + +- LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$gtlslib" +- export LD_LIBRARY_PATH +- AC_MSG_NOTICE([Added $gtlslib to LD_LIBRARY_PATH]) ++ #LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$gtlslib" ++ #export LD_LIBRARY_PATH ++ #AC_MSG_NOTICE([Added $gtlslib to LD_LIBRARY_PATH]) ++ : + fi + fi + +@@ -1696,6 +1699,8 @@ + + fi dnl OPENSSL != 1 + ++AC_SUBST(GNUTLS_REQUIRED) ++ + dnl ---------------------------------------------------- + dnl NSS. Only check if GnuTLS and OpenSSL are not enabled + dnl ---------------------------------------------------- +@@ -1781,9 +1786,10 @@ + dnl LD_LIBRARY_PATH to prevent further configure tests to fail + dnl due to this + +- LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$nssprefix/lib$libsuff" +- export LD_LIBRARY_PATH +- AC_MSG_NOTICE([Added $nssprefix/lib$libsuff to LD_LIBRARY_PATH]) ++ #LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$nssprefix/lib$libsuff" ++ #export LD_LIBRARY_PATH ++ #AC_MSG_NOTICE([Added $nssprefix/lib$libsuff to LD_LIBRARY_PATH]) ++ : + fi + + fi +@@ -1881,9 +1887,9 @@ + dnl libssh2_version is a post 1.0 addition + AC_CHECK_FUNCS( libssh2_version ) + +- LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$DIR_SSH2" +- export LD_LIBRARY_PATH +- AC_MSG_NOTICE([Added $DIR_SSH2 to LD_LIBRARY_PATH]) ++ #LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$DIR_SSH2" ++ #export LD_LIBRARY_PATH ++ #AC_MSG_NOTICE([Added $DIR_SSH2 to LD_LIBRARY_PATH]) + fi + else + dnl no libssh2, revert back to clean variables diff --git a/meta/recipes-support/curl/curl/pkgconfig_fix.patch b/meta/recipes-support/curl/curl/pkgconfig_fix.patch new file mode 100644 index 0000000000..a59d39b8b1 --- /dev/null +++ b/meta/recipes-support/curl/curl/pkgconfig_fix.patch @@ -0,0 +1,35 @@ +Index: curl-7.20.0/libcurl.pc.in +=================================================================== +--- curl-7.20.0.orig/libcurl.pc.in 2009-11-17 18:11:07.000000000 +0000 ++++ curl-7.20.0/libcurl.pc.in 2010-03-25 12:13:26.814051066 +0000 +@@ -35,6 +35,7 @@ + URL: http://curl.haxx.se/ + Description: Library to transfer files with ftp, http, etc. + Version: @VERSION@ +-Libs: -L${libdir} -lcurl @LIBS@ +-Libs.private: @LIBCURL_LIBS@ @LIBS@ ++Requires.private: @GNUTLS_REQUIRED@ ++Libs: -L${libdir} -lcurl ++Libs.private: -ldl -lz + Cflags: -I${includedir} +Index: curl-7.20.0/configure.ac +=================================================================== +--- curl-7.20.0.orig/configure.ac 2010-02-04 21:41:46.000000000 +0000 ++++ curl-7.20.0/configure.ac 2010-03-25 12:12:18.673129001 +0000 +@@ -1668,6 +1668,7 @@ + AC_SUBST(USE_GNUTLS, [1]) + GNUTLS_ENABLED=1 + USE_GNUTLS="yes" ++ GNUTLS_REQUIRED="gnutls" + curl_ssl_msg="enabled (GnuTLS)" + ], + [ +@@ -1696,6 +1697,8 @@ + + fi dnl OPENSSL != 1 + ++AC_SUBST(GNUTLS_REQUIRED) ++ + dnl ---------------------------------------------------- + dnl NSS. Only check if GnuTLS and OpenSSL are not enabled + dnl ---------------------------------------------------- diff --git a/meta/recipes-support/curl/curl_7.21.0.bb b/meta/recipes-support/curl/curl_7.21.0.bb new file mode 100644 index 0000000000..1e11222897 --- /dev/null +++ b/meta/recipes-support/curl/curl_7.21.0.bb @@ -0,0 +1,54 @@ +DESCRIPTION = "Command line tool and library for client-side URL transfers." +HOMEPAGE = "http://curl.haxx.se/" +BUGTRACKER = "http://curl.haxx.se/mail/list.cgi?list=curl-tracker" +SECTION = "console/network" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;beginline=7;md5=3a34942f4ae3fbf1a303160714e664ac" + +DEPENDS = "zlib gnutls" +DEPENDS_virtclass-native = "zlib-native" +DEPENDS_virtclass-nativesdk = "zlib-nativesdk" +PR = "r0" + +SRC_URI = "http://curl.haxx.se/download/curl-${PV}.tar.bz2 \ + file://noldlibpath.patch \ + file://pkgconfig_fix.patch" + +inherit autotools pkgconfig binconfig + +EXTRA_OECONF = "--with-zlib=${STAGING_LIBDIR}/../ \ + --with-gnutls=${STAGING_BINDIR_CROSS}/ \ + --without-ssl \ + --without-libssh2 \ + --with-random=/dev/urandom \ + --without-libidn \ + --enable-crypto-auth \ + " + +do_configure_prepend() { + sed -i s:OPT_GNUTLS/bin:OPT_GNUTLS:g configure.ac +} + +PACKAGES += "${PN}-certs libcurl libcurl-dev libcurl-doc" + +FILES_${PN} = "${bindir}/curl" + +FILES_${PN}-certs = "${datadir}/curl/curl-*" +PACKAGE_ARCH_${PN}-certs = "all" + +FILES_${PN}-doc = "${mandir}/man1/curl.1" + +FILES_lib${PN} = "${libdir}/lib*.so.*" +RRECOMMENDS_lib${PN} += "${PN}-certs" +FILES_lib${PN}-dev = "${includedir} \ + ${libdir}/lib*.so \ + ${libdir}/lib*.a \ + ${libdir}/lib*.la \ + ${libdir}/pkgconfig \ + ${datadir}/aclocal \ + ${bindir}/*-config" + +FILES_lib${PN}-doc = "${mandir}/man3 \ + ${mandir}/man1/curl-config.1" + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-support/db/db/arm-thumb-mutex.patch b/meta/recipes-support/db/db/arm-thumb-mutex.patch new file mode 100644 index 0000000000..acd446fcd8 --- /dev/null +++ b/meta/recipes-support/db/db/arm-thumb-mutex.patch @@ -0,0 +1,36 @@ +--- db-4.3.29-dist/../dbinc/mutex.h 2005-11-15 07:33:27.761042518 -0800 ++++ db-4.3.29-dist/../dbinc/mutex.h 2005-11-15 07:55:24.823920060 -0800 +@@ -470,6 +470,25 @@ + #ifdef LOAD_ACTUAL_MUTEX_CODE + #define MUTEX_SET_TEST 1 /* gcc/arm: 0 is clear, 1 is set. */ + ++#if defined __thumb__ ++#define MUTEX_SET(tsl) ({ \ ++ int __r, __p; \ ++ asm volatile( \ ++ ".align 2\n\t" \ ++ "bx pc\n\t" \ ++ "nop\n\t" \ ++ ".arm\n\t" \ ++ "swpb %0, %2, [%3]\n\t" \ ++ "eor %0, %0, #1\n\t" \ ++ "orr %1, pc, #1\n\t" \ ++ "bx %1\n\t" \ ++ ".force_thumb" \ ++ : "=&r" (__r), "=r" (__p) \ ++ : "r" (1), "r" (tsl) \ ++ ); \ ++ __r & 1; \ ++}) ++#else + #define MUTEX_SET(tsl) ({ \ + int __r; \ + asm volatile( \ +@@ -480,6 +499,7 @@ + ); \ + __r & 1; \ + }) ++#endif + + #define MUTEX_UNSET(tsl) (*(volatile tsl_t *)(tsl) = 0) + #define MUTEX_INIT(tsl) MUTEX_UNSET(tsl) diff --git a/meta/recipes-support/db/db/configure_fixes.patch b/meta/recipes-support/db/db/configure_fixes.patch new file mode 100644 index 0000000000..80aa0e7c1c --- /dev/null +++ b/meta/recipes-support/db/db/configure_fixes.patch @@ -0,0 +1,18 @@ +If LD is a binary name + parameters db will fail to work out its GNU ld +and disable shared libraries. We don't want this. + +RP - 22/11/2007 + +Index: dist/configure +=================================================================== +--- dist.orig/configure 2007-11-23 00:47:27.000000000 +0000 ++++ dist/configure 2007-11-23 00:53:22.000000000 +0000 +@@ -5658,7 +5661,7 @@ if test "${lt_cv_prog_gnu_ld+set}" = set + echo $ECHO_N "(cached) $ECHO_C" >&6 + else + # I'd rather use --version here, but apparently some GNU ld's only accept -v. +-case `"$LD" -v 2>&1 &1 , 2010-08-13 +# +# (this patch is licensed under GPLv2+) + +diff --git a/configure.in b/configure.in +index 450cc92..aab0b59 100644 +--- a/configure.in ++++ b/configure.in +@@ -1869,9 +1869,7 @@ AC_SUBST(DEFN_LONG_LONG_LIMB) + + # The C compiler and preprocessor, put into ANSI mode if possible. + AC_PROG_CC +-AC_PROG_CC_STDC + AC_PROG_CPP +-GMP_H_ANSI + + + # The C compiler on the build system, and associated tests. diff --git a/meta/recipes-support/gmp/gmp.inc b/meta/recipes-support/gmp/gmp.inc new file mode 100644 index 0000000000..6b56f7e7c8 --- /dev/null +++ b/meta/recipes-support/gmp/gmp.inc @@ -0,0 +1,16 @@ +SECTION = "devel" +DESCRIPTION = "GNU multiprecision arithmetic library" +HOMEPAGE = "http://www.swox.com/gmp/" +LICENSE = "GPLv3 LGPLv3" + +SRC_URI = "ftp://ftp.gnu.org/gnu/gmp/gmp-${PV}.tar.bz2 \ + file://configure.patch \ + file://amd64.patch " + +inherit autotools + +ARM_INSTRUCTION_SET = "arm" + +acpaths = "" + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-support/gmp/gmp/amd64.patch b/meta/recipes-support/gmp/gmp/amd64.patch new file mode 100644 index 0000000000..67be9dd350 --- /dev/null +++ b/meta/recipes-support/gmp/gmp/amd64.patch @@ -0,0 +1,14 @@ +--- gmp-4.1.4/longlong.h.orig 2004-04-22 00:34:28.000000000 +0200 ++++ gmp-4.1.4/longlong.h 2005-07-18 01:13:06.000000000 +0200 +@@ -738,8 +738,10 @@ + count is only an int. */ + #define count_trailing_zeros(count, x) \ + do { \ ++ UDItype __cbtmp; \ + ASSERT ((x) != 0); \ +- __asm__ ("bsfq %1,%q0" : "=r" (count) : "rm" ((UDItype)(x))); \ ++ __asm__ ("bsfq %1,%0" : "=r" (__cbtmp) : "rm" ((UDItype)(x))); \ ++ (count) = __cbtmp; \ + } while (0) + #endif /* x86_64 */ + diff --git a/meta/recipes-support/gmp/gmp/configure.patch b/meta/recipes-support/gmp/gmp/configure.patch new file mode 100644 index 0000000000..ed0c02d86c --- /dev/null +++ b/meta/recipes-support/gmp/gmp/configure.patch @@ -0,0 +1,195 @@ + acinclude.m4 | 26 ++++++++++++++------------ + configure.in | 24 +++++++++--------------- + 2 files changed, 23 insertions(+), 27 deletions(-) + +Index: gmp-5.0.1/acinclude.m4 +=================================================================== +--- gmp-5.0.1.orig/acinclude.m4 ++++ gmp-5.0.1/acinclude.m4 +@@ -30,20 +30,20 @@ dnl a_out.exe - OpenVMS DEC C called + dnl conftest.exe - various DOS compilers + + +-define(IA64_PATTERN, ++define([IA64_PATTERN], + [[ia64*-*-* | itanium-*-* | itanium2-*-*]]) + + dnl Need to be careful not to match m6811, m6812, m68hc11 and m68hc12, all + dnl of which config.sub accepts. (Though none of which are likely to work + dnl with GMP.) + dnl +-define(M68K_PATTERN, ++define([M68K_PATTERN], + [[m68k-*-* | m68[0-9][0-9][0-9]-*-*]]) + +-define(POWERPC64_PATTERN, ++define([POWERPC64_PATTERN], + [[powerpc64-*-* | powerpc64le-*-* | powerpc620-*-* | powerpc630-*-* | powerpc970-*-* | power[3-9]-*-*]]) + +-define(X86_PATTERN, ++define([X86_PATTERN], + [[i?86*-*-* | k[5-8]*-*-* | pentium*-*-* | athlon-*-* | viac3*-*-* | geode*-*-* | atom-*-*]]) + + define(X86_64_PATTERN, +@@ -64,7 +64,7 @@ dnl x86 -> x86 + dnl x86/k6 -> k6 + dnl x86/k6/mmx -> k6_mmx + +-define(GMP_FAT_SUFFIX, ++define([GMP_FAT_SUFFIX], + [[$1=`echo $2 | sed -e '/\//s:^[^/]*/::' -e 's:[\\/]:_:g'`]]) + + +@@ -73,7 +73,7 @@ dnl ---------------------------------- + dnl Emit code to remove any occurrence of ITEM from $LISTVAR. ITEM can be a + dnl shell expression like $foo if desired. + +-define(GMP_REMOVE_FROM_LIST, ++define([GMP_REMOVE_FROM_LIST], + [remove_from_list_tmp= + for remove_from_list_i in $[][$1]; do + if test $remove_from_list_i = [$2]; then :; +@@ -89,12 +89,12 @@ dnl GMP_STRIP_PATH(subdir) + dnl ---------------------- + dnl Strip entries */subdir from $path and $fat_path. + +-define(GMP_STRIP_PATH, ++define([GMP_STRIP_PATH], + [GMP_STRIP_PATH_VAR(path, [$1]) + GMP_STRIP_PATH_VAR(fat_path, [$1]) + ]) + +-define(GMP_STRIP_PATH_VAR, ++define([GMP_STRIP_PATH_VAR], + [tmp_path= + for i in $[][$1]; do + case $i in +@@ -115,7 +115,7 @@ dnl + dnl Dummy value for GMP_LIMB_BITS is enough + dnl for all current configure-time uses of gmp.h. + +-define(GMP_INCLUDE_GMP_H, ++define([GMP_INCLUDE_GMP_H], + [[#define __GMP_WITHIN_CONFIGURE 1 /* ignore template stuff */ + #define GMP_NAIL_BITS $GMP_NAIL_BITS + #define GMP_LIMB_BITS 123 +@@ -130,7 +130,7 @@ dnl Expand at autoconf time to the valu + dnl FILE. The regexps here aren't very rugged, but are enough for gmp. + dnl /dev/null as a parameter prevents a hang if $2 is accidentally omitted. + +-define(GMP_HEADER_GETVAL, ++define([GMP_HEADER_GETVAL], + [patsubst(patsubst( + esyscmd([grep "^#define $1 " $2 /dev/null 2>/dev/null]), + [^.*$1[ ]+],[]), +@@ -144,7 +144,7 @@ dnl The gmp version number, extracted f + dnl autoconf time. Two digits like 3.0 if patchlevel <= 0, or three digits + dnl like 3.0.1 if patchlevel > 0. + +-define(GMP_VERSION, ++define([GMP_VERSION], + [GMP_HEADER_GETVAL(__GNU_MP_VERSION,gmp-h.in)[]dnl + .GMP_HEADER_GETVAL(__GNU_MP_VERSION_MINOR,gmp-h.in)[]dnl + .GMP_HEADER_GETVAL(__GNU_MP_VERSION_PATCHLEVEL,gmp-h.in)]) +@@ -1506,7 +1506,9 @@ esac + echo ["define(,<\`$tmp'>)"] >>$gmp_tmpconfigm4 + + # All CPUs use asm-defs.m4 +-echo ["include][(CONFIG_TOP_SRCDIR\`/mpn/asm-defs.m4')"] >>$gmp_tmpconfigm4i ++echo -n ["include("] >>$gmp_tmpconfigm4i ++echo -n ["CONFIG_TOP_SRCDIR\`/mpn/asm-defs.m4'"] >>$gmp_tmpconfigm4i ++echo [")"] >>$gmp_tmpconfigm4i + ]) + + +Index: gmp-5.0.1/configure.in +=================================================================== +--- gmp-5.0.1.orig/configure.in ++++ gmp-5.0.1/configure.in +@@ -29,12 +29,6 @@ AC_REVISION($Revision$) + AC_PREREQ(2.59) + AC_INIT(GNU MP, GMP_VERSION, gmp-bugs@gmplib.org, gmp) + AC_CONFIG_SRCDIR(gmp-impl.h) +-m4_pattern_forbid([^[ \t]*GMP_]) +-m4_pattern_allow(GMP_LDFLAGS) +-m4_pattern_allow(GMP_LIMB_BITS) +-m4_pattern_allow(GMP_MPARAM_H_SUGGEST) +-m4_pattern_allow(GMP_NAIL_BITS) +-m4_pattern_allow(GMP_NUMB_BITS) + + # If --target is not used then $target_alias is empty, but if say + # "./configure athlon-pc-freebsd3.5" is used, then all three of +@@ -303,7 +297,7 @@ AH_VERBATIM([HAVE_HOST_CPU_1], + # After GMP specific searches and tests, the standard autoconf AC_PROG_CC is + # called. User selections of CC etc are respected. + # +-# Care is taken not to use macros like AC_TRY_COMPILE during the GMP ++# Care is taken not to use macros like AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])],[],[]) during the GMP + # pre-testing, since they of course depend on AC_PROG_CC, and also some of + # them cache their results, which is not wanted. + # +@@ -395,7 +389,7 @@ abilist="standard" + # FIXME: We'd like to prefer an ANSI compiler, perhaps by preferring + # c89 over cc here. But note that on HP-UX c89 provides a castrated + # environment, and would want to be excluded somehow. Maybe +-# AC_PROG_CC_STDC already does enough to stick cc into ANSI mode and ++# already does enough to stick cc into ANSI mode and + # we don't need to worry. + # + cclist="gcc cc" +@@ -1580,7 +1574,7 @@ esac + CFLAGS_or_unset=${CFLAGS-'(unset)'} + CPPFLAGS_or_unset=${CPPFLAGS-'(unset)'} + +-cat >&AC_FD_CC <&AS_MESSAGE_LOG_FD() <&AC_FD_CC ++ echo "CXXFLAGS chosen by autoconf: $CXXFLAGS" >&AS_MESSAGE_LOG_FD() + cxxflags_ac_prog_cxx=$CXXFLAGS + cxxflags_list=ac_prog_cxx + +@@ -2120,7 +2113,7 @@ case $host in + esac + + +-cat >&AC_FD_CC <&AS_MESSAGE_LOG_FD() <rfd = (gnutls_transport_ptr_t) - 1; + ssl->wfd = (gnutls_transport_ptr_t) - 1; + ++ ssl->ssl_peek_buffer = NULL; ++ ssl->ssl_peek_buffer_size = ssl->ssl_peek_avail = 0; ++ + return ssl; + } + + void + SSL_free (SSL * ssl) + { ++ if (ssl->ssl_peek_buffer) ++ free(ssl->ssl_peek_buffer); + gnutls_certificate_free_credentials (ssl->gnutls_cred); + gnutls_deinit (ssl->gnutls_state); + free (ssl); +@@ -285,6 +290,7 @@ + SSL_set_fd (SSL * ssl, int fd) + { + gnutls_transport_set_ptr (ssl->gnutls_state, GNUTLS_INT_TO_POINTER (fd)); ++ ssl->rfd = ssl->wfd = fd; + return 1; + } + +@@ -310,6 +316,17 @@ + return 1; + } + ++int SSL_get_rfd(SSL *ssl) ++{ ++ return ssl->rfd; ++} ++ ++int SSL_get_wfd(SSL *ssl) ++{ ++ return ssl->wfd; ++} ++ ++ + void + SSL_set_bio (SSL * ssl, BIO * rbio, BIO * wbio) + { +@@ -325,6 +342,8 @@ + int + SSL_pending (SSL * ssl) + { ++ if (ssl->ssl_peek_avail) ++ return ssl->ssl_peek_avail; + return gnutls_record_check_pending (ssl->gnutls_state); + } + +@@ -480,11 +499,50 @@ + return 1; + } + ++int SSL_peek(SSL *ssl, void *buf, int len) ++{ ++ if (len > ssl->ssl_peek_buffer_size) { ++ ssl->ssl_peek_buffer = realloc (ssl->ssl_peek_buffer, len); ++ ssl->ssl_peek_buffer_size = len; ++ } ++ ++ if (ssl->ssl_peek_avail == 0) { ++ ++ int ret; ++ ++ ret = gnutls_record_recv(ssl->gnutls_state, ssl->ssl_peek_buffer, len); ++ ssl->last_error = ret; ++ ++ if (ret > 0) ++ ssl->ssl_peek_avail += ret; ++ } ++ ++ if (len > ssl->ssl_peek_avail) ++ len = ssl->ssl_peek_avail; ++ ++ memcpy (buf, ssl->ssl_peek_buffer, len); ++ ++ return len; ++} ++ + int + SSL_read (SSL * ssl, void *buf, int len) + { + int ret; + ++ if (ssl->ssl_peek_avail) { ++ int n = (ssl->ssl_peek_avail > len) ? len : ssl->ssl_peek_avail; ++ ++ memcpy (buf, ssl->ssl_peek_buffer, n); ++ ++ if (ssl->ssl_peek_avail > n) ++ memmove (ssl->ssl_peek_buffer, ssl->ssl_peek_buffer + n, ssl->ssl_peek_avail - n); ++ ++ ssl->ssl_peek_avail -= n; ++ ++ return n; ++ } ++ + ret = gnutls_record_recv (ssl->gnutls_state, buf, len); + ssl->last_error = ret; + +Index: gnutls-1.6.0/includes/gnutls/openssl.h +=================================================================== +--- gnutls-1.6.0.orig/libextra/includes/gnutls/openssl.h 2006-03-08 11:44:58.000000000 +0100 ++++ gnutls-1.6.0/libextra/includes/gnutls/openssl.h 2006-12-12 15:07:26.032227000 +0100 +@@ -164,6 +164,11 @@ + + gnutls_transport_ptr_t rfd; + gnutls_transport_ptr_t wfd; ++ ++ char *ssl_peek_buffer; ++ size_t ssl_peek_buffer_size; ++ size_t ssl_peek_avail; ++ + }; + + #define rbio gnutls_state diff --git a/meta/recipes-support/gnutls/gnutls-2.8.6/gnutls-texinfo-euro.patch b/meta/recipes-support/gnutls/gnutls-2.8.6/gnutls-texinfo-euro.patch new file mode 100644 index 0000000000..a2d2f03870 --- /dev/null +++ b/meta/recipes-support/gnutls/gnutls-2.8.6/gnutls-texinfo-euro.patch @@ -0,0 +1,16 @@ +The version of texinfo in Debian Sarge does not understand the @euro{} command. +This patch replaces the @euro{} command with the word "euro". + +--- gnutls-1.3.5/doc/gnutls.texi.orig 2006-04-26 08:06:40.918268000 +0930 ++++ gnutls-1.3.5/doc/gnutls.texi 2006-04-26 08:06:52.446515440 +0930 +@@ -11,8 +11,8 @@ + long as it is difficult enough to generate two different messages with + the same hash algorithm output. In that case the same signature could + be used as a proof for both messages. Nobody wants to sign an innocent +-message of donating 1 @euro{} to Greenpeace and find out that he +-donated 1.000.000 @euro{} to Bad Inc. ++message of donating 1 euro to Greenpeace and find out that he ++donated 1.000.000 euro to Bad Inc. + + For a hash algorithm to be called cryptographic the following three + requirements must hold diff --git a/meta/recipes-support/gnutls/gnutls.inc b/meta/recipes-support/gnutls/gnutls.inc new file mode 100644 index 0000000000..76f4ca63fd --- /dev/null +++ b/meta/recipes-support/gnutls/gnutls.inc @@ -0,0 +1,44 @@ +DESCRIPTION = "GNU Transport Layer Security Library" +HOMEPAGE = "http://www.gnu.org/software/gnutls/" +BUGTRACKER = "https://savannah.gnu.org/support/?group=gnutls" +DEPENDS = "zlib lzo gettext libtasn1 libgcrypt (>= 1.4.2)" + +LICENSE = "GPLv3+ & LGPLv2.1+" +LICENSE_${PN} = "LGPLv2.1+" +LICENSE_${PN}-xx = "GPLv2.1+" +LICENSE_${PN}-bin = "GPLv3+" +LICENSE_${PN}-extra = "GPLv3+" +LICENSE_${PN}-openssl = "GPLv3+" +LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \ + file://lib/COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343 \ + file://libextra/COPYING;md5=d32239bcb673463ab874e80d47fae504" + +SRC_URI = "ftp://ftp.gnutls.org/pub/gnutls/gnutls-${PV}.tar.bz2" + +inherit autotools binconfig pkgconfig + +EXTRA_OECONF="--with-included-opencdk --with-included-libcfg --disable-rpath \ + --with-libtasn1-prefix=${STAGING_DIR_HOST}${prefix} \ + --with-libgcrypt-prefix=${STAGING_DIR_HOST}${prefix} \ + --with-libz-prefix=${STAGING_DIR_HOST}${prefix} --with-lzo --disable-guile" + +do_configure_prepend() { + for dir in . lib libextra; do + rm ${dir}/aclocal.m4 ${dir}/m4/libtool.m4 ${dir}/m4/lt*.m4 + done +} + +PACKAGES =+ "${PN}-openssl ${PN}-extra ${PN}-bin ${PN}-xx" + +FILES_${PN} = "${libdir}/libgnutls.so.*" +FILES_${PN}-bin = "${bindir}/gnutls-serv \ + ${bindir}/gnutls-cli \ + ${bindir}/srptool \ + ${bindir}/psktool \ + ${bindir}/certtool \ + ${bindir}/gnutls-srpcrypt" + +FILES_${PN}-dev += "${bindir}/*-config ${bindir}/gnutls-cli-debug" +FILES_${PN}-extra = "${libdir}/libgnutls-extra.so.*" +FILES_${PN}-openssl = "${libdir}/libgnutls-openssl.so.*" +FILES_${PN}-xx = "${libdir}/libgnutlsxx.so.*" diff --git a/meta/recipes-support/gnutls/gnutls_2.8.6.bb b/meta/recipes-support/gnutls/gnutls_2.8.6.bb new file mode 100644 index 0000000000..d8adc6ba17 --- /dev/null +++ b/meta/recipes-support/gnutls/gnutls_2.8.6.bb @@ -0,0 +1,7 @@ +require gnutls.inc + +PR = "r0" + +SRC_URI += "file://gnutls-openssl.patch \ + file://gnutls-texinfo-euro.patch \ + file://configure-fix.patch" diff --git a/meta/recipes-support/gnutls/libtasn1_2.7.bb b/meta/recipes-support/gnutls/libtasn1_2.7.bb new file mode 100644 index 0000000000..11a7dc5055 --- /dev/null +++ b/meta/recipes-support/gnutls/libtasn1_2.7.bb @@ -0,0 +1,21 @@ +DESCRIPTION = "Library for ASN.1 and DER manipulation" +HOMEPAGE = "http://www.gnu.org/software/libtasn1/" + +LICENSE = "GPLv3+ & LGPLv2.1+" +LICENSE_${PN}-bin = "GPLv3+" +LICENSE_${PN} = "LGPLv2.1+" +LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \ + file://COPYING.LIB;md5=a6f89e2100d9b6cdffcea4f398e37343 \ + file://README;endline=8;md5=c3803a3e8ca5ab5eb1e5912faa405351" + +RREPLACES_${PN}-bin = "libtasn1 (<< 2.7)" + +PR = "r0" + +SRC_URI = "ftp://ftp.gnutls.org/pub/gnutls/libtasn1/libtasn1-${PV}.tar.gz" + +inherit autotools binconfig lib_package + +AUTOTOOLS_STAGE_PKGCONFIG = "1" + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-support/gpgme/gpgme-1.3.0/disable_gpgconf_check.patch b/meta/recipes-support/gpgme/gpgme-1.3.0/disable_gpgconf_check.patch new file mode 100644 index 0000000000..f56f35b9ed --- /dev/null +++ b/meta/recipes-support/gpgme/gpgme-1.3.0/disable_gpgconf_check.patch @@ -0,0 +1,38 @@ +From 1.2.0, gpgme will check if gpgconf & g13(from 1.3.0) exist, and cause +configure failure if not founding them in cross-compile environment. We can +add the gnupg-native to get them, but still have some issues: + +1. need add new package: libksba, update libassuan(not in sato), and extend + native support in some other packages(libgcrypt, libgpg-error, pth...) +2. Even we have gnupg, the g13 only exist in development branch, so that we + still have the g13 check failure in configure. + +I have searched the compile log, and found gpgconf/g13 are not used. So use a +simple method here, throw a warning mesg rather than an error here just like in +non-cross-compile environment. + +Signed-off-by: Zhai Edwin + + +Index: gpgme-1.3.0/configure.ac +=================================================================== +--- gpgme-1.3.0.orig/configure.ac 2010-07-21 09:38:09.000000000 +0800 ++++ gpgme-1.3.0/configure.ac 2010-07-21 09:39:19.000000000 +0800 +@@ -574,7 +574,7 @@ + *** Could not find gpgconf, install gpgconf or use --with-gpgconf=PATH to enable it + ***]) + else +- AC_MSG_ERROR([ ++ AC_MSG_WARN([ + *** + *** Can not determine path to gpgconf when cross-compiling, use --with-gpgconf=PATH + ***]) +@@ -670,7 +670,7 @@ + *** Could not find g13, install g13 or use --with-g13=PATH to enable it + ***]) + else +- AC_MSG_ERROR([ ++ AC_MSG_WARN([ + *** + *** Can not determine path to g13 when cross-compiling, use --with-g13=PATH + ***]) diff --git a/meta/recipes-support/gpgme/gpgme_1.3.0.bb b/meta/recipes-support/gpgme/gpgme_1.3.0.bb new file mode 100644 index 0000000000..1c665b5ea4 --- /dev/null +++ b/meta/recipes-support/gpgme/gpgme_1.3.0.bb @@ -0,0 +1,25 @@ +DESCRIPTION = "GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG easier for applications. It provides a High-Level Crypto API for encryption, decryption, signing, signature verification and key management" +HOMEPAGE = "http://www.gnupg.org/gpgme.html" +BUGTRACKER = "https://bugs.g10code.com/gnupg/index" + +LICENSE = "GPLv2+ & LGPLv2.1+" +LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ + file://COPYING.LESSER;md5=bbb461211a33b134d42ed5ee802b37ff \ + file://src/gpgme.h;endline=23;md5=2775a99d3dd524c4f848ff1c59093038 \ + file://src/engine.h;endline=22;md5=e96acfaab1cff82dd8fbefddd2f5c436" + +SRC_URI = "ftp://ftp.gnupg.org/gcrypt/gpgme/gpgme-${PV}.tar.bz2 \ + file://disable_gpgconf_check.patch;patch=1;pnum=1" +DEPENDS = "libgpg-error libassuan pth" +PR = "r0" + +EXTRA_OECONF = "--with-pth=${STAGING_DIR_HOST} --without-pth-test \ + --with-gpg=${bindir}/gpg --without-gpgsm" + +inherit autotools binconfig + +PACKAGES =+ "${PN}-pth ${PN}-pthread" +FILES_${PN}-pth = "${libdir}/libgpgme-pth.so.*" +FILES_${PN}-pthread = "${libdir}/libgpgme-pthread.so.*" +FILES_${PN} = "${libdir}/libgpgme.so.*" +FILES_${PN}-dev += "${bindir}/gpgme-config" diff --git a/meta/recipes-support/hal/files/20hal b/meta/recipes-support/hal/files/20hal new file mode 100755 index 0000000000..5b97c4f9e6 --- /dev/null +++ b/meta/recipes-support/hal/files/20hal @@ -0,0 +1,58 @@ +#! /bin/sh +# +# hal Start the Daemon that stores device informations +# for the Hardware abstraction layer +# +# Written by Martin Waitz based on skeleton code +# written by Miquel van Smoorenburg . +# Modified for Debian +# by Ian Murdock . +# + +PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin +DAEMON=/usr/sbin/hald +PIDDIR=/var/run/hald +PIDFILE=$PIDDIR/hald.pid +NAME=hald +DAEMONUSER=haldaemon +DESC="Hardware abstraction layer" + +test -x $DAEMON || exit 0 + +set -e + +do_start() { + if [ ! -d $PIDDIR ]; then + mkdir -p $PIDDIR + chown $DAEMONUSER:$DAEMONUSER $PIDDIR + fi + echo "Starting $DESC" "$NAME" + start-stop-daemon --start --pidfile $PIDFILE \ + --exec $DAEMON -- $DAEMON_OPTS +} + +do_stop() { + echo "Stopping $DESC" "$NAME" + start-stop-daemon --stop --quiet --pidfile $PIDFILE \ + --exec $DAEMON +} + +case "$1" in + start) + do_start + ;; + stop) + do_stop + ;; + restart|force-reload) + do_stop + sleep 5 + do_start + ;; + *) + echo "Usage: $0 {start|stop|restart|force-reload}" >&2 + exit 1 + ;; +esac + +exit 0 diff --git a/meta/recipes-support/hal/files/autoconf.diff b/meta/recipes-support/hal/files/autoconf.diff new file mode 100644 index 0000000000..eb30cccdbe --- /dev/null +++ b/meta/recipes-support/hal/files/autoconf.diff @@ -0,0 +1,11 @@ +--- hal-0.5.9/configure.in~ 2007-04-03 05:36:44.000000000 +0100 ++++ hal-0.5.9/configure.in 2007-04-03 10:29:39.000000000 +0100 +@@ -6,7 +6,7 @@ + # Patches for that is welcome. + # + +-AC_PREREQ(2.59c) ++AC_PREREQ(2.59) + AC_INIT(hal, 0.5.9, david@fubar.dk) + AM_INIT_AUTOMAKE(hal, 0.5.9) + AM_CONFIG_HEADER(config.h) diff --git a/meta/recipes-support/hal/files/hal-right-input-h.patch b/meta/recipes-support/hal/files/hal-right-input-h.patch new file mode 100644 index 0000000000..f820b7790a --- /dev/null +++ b/meta/recipes-support/hal/files/hal-right-input-h.patch @@ -0,0 +1,29 @@ +diff --git a/configure.in b/configure.in +index e76ff51..5e8cc21 100644 +--- a/configure.in ++++ b/configure.in +@@ -983,6 +983,11 @@ AC_ARG_WITH([linux-input-header], + [Use an given Linux input.h rather than that installed on the system ()])) + if test "x$with_linux_input_header" != "x"; then + AC_DEFINE_UNQUOTED(HAL_LINUX_INPUT_HEADER_H, "$with_linux_input_header", [If set, the header to use instead of ]) ++ LINUX_INPUT_H=$with_linux_input_header ++ AC_SUBST(LINUX_INPUT_H) ++else ++ LINUX_INPUT_H=/usr/include/linux/input.h ++ AC_SUBST(LINUX_INPUT_H) + fi + + dnl +diff --git a/tools/Makefile.am b/tools/Makefile.am +index ae03edd..7d1cbab 100644 +--- a/tools/Makefile.am ++++ b/tools/Makefile.am +@@ -79,7 +79,7 @@ endif + if BUILD_KEYMAPS + + if HAVE_GPERF +-hal-setup-keymap-keys.txt: /usr/include/linux/input.h ++hal-setup-keymap-keys.txt: @LINUX_INPUT_H@ + awk '/^#define.*KEY_/ { if ($$2 != "KEY_MAX") { print substr($$2, 5) } }' < $< > $@ + + hal-setup-keymap-hash-name.gperf: hal-setup-keymap-keys.txt diff --git a/meta/recipes-support/hal/files/sg-inhibit.patch b/meta/recipes-support/hal/files/sg-inhibit.patch new file mode 100644 index 0000000000..f0cc41448a --- /dev/null +++ b/meta/recipes-support/hal/files/sg-inhibit.patch @@ -0,0 +1,24 @@ +--- hal-0.5.9.1/hald/linux/probing/linux_dvd_rw_utils.c.old 2007-08-03 17:24:12.000000000 +0100 ++++ hal-0.5.9.1/hald/linux/probing/linux_dvd_rw_utils.c 2007-08-03 17:25:06.000000000 +0100 +@@ -58,6 +58,10 @@ + + #include "linux_dvd_rw_utils.h" + ++#if defined(SG_FLAG_UNUSED_LUN_INHIBIT) ++# define SG_FLAG_LUN_INHIBIT SG_FLAG_UNUSED_LUN_INHIBIT ++#endif ++ + typedef enum { + NONE = CGC_DATA_NONE, // 3 + READ = CGC_DATA_READ, // 2 +@@ -153,8 +153,8 @@ + errno = EIO; + ret = -1; + if (cmd->sg_io.masked_status & CHECK_CONDITION) { +- CREAM_ON_ERRNO (cmd->sg_io.sbp); +- ret = ERRCODE (cmd->sg_io.sbp); ++ CREAM_ON_ERRNO ((char*)cmd->sg_io.sbp); ++ ret = ERRCODE ((char*)cmd->sg_io.sbp); + if (ret == 0) + ret = -1; + } diff --git a/meta/recipes-support/hal/hal-info.inc b/meta/recipes-support/hal/hal-info.inc new file mode 100644 index 0000000000..adba83fb28 --- /dev/null +++ b/meta/recipes-support/hal/hal-info.inc @@ -0,0 +1,22 @@ +DESCRIPTION = "Hardware Abstraction Layer device information" +HOMEPAGE = "http://hal.freedesktop.org/" +BUGTRACKER = "http://bugs.freedesktop.org/buglist.cgi?product=hal" +SECTION = "unknown" + +LICENSE = "GPLv2 | AFL" +LIC_FILES_CHKSUM = "file://COPYING;md5=ae484909bad0cf11c8e2071cee6bd4dc" + +SRC_URI = "http://hal.freedesktop.org/releases/${PN}-${PV}.tar.gz" + +inherit autotools pkgconfig + +EXTRA_OECONF = "--disable-recall --disable-video" + +do_configure() { + gnu-configize + libtoolize --force + oe_runconf +} + +PACKAGE_ARCH = "all" +FILES_${PN} += "${datadir}/hal/" diff --git a/meta/recipes-support/hal/hal-info_20091130.bb b/meta/recipes-support/hal/hal-info_20091130.bb new file mode 100644 index 0000000000..e6d50e3981 --- /dev/null +++ b/meta/recipes-support/hal/hal-info_20091130.bb @@ -0,0 +1 @@ +require hal-info.inc diff --git a/meta/recipes-support/hal/hal-info_git.bb b/meta/recipes-support/hal/hal-info_git.bb new file mode 100644 index 0000000000..3fff5e0a7d --- /dev/null +++ b/meta/recipes-support/hal/hal-info_git.bb @@ -0,0 +1,9 @@ +require hal-info.inc + +PV = "${SRCDATE}+git" +PR = "r0" + +SRC_URI = "git://anongit.freedesktop.org/hal-info/;protocol=git;rev=HAL_INFO_20091130" +S = "${WORKDIR}/git" + +DEFAULT_PREFERENCE = "-1" diff --git a/meta/recipes-support/hal/hal.inc b/meta/recipes-support/hal/hal.inc new file mode 100644 index 0000000000..839dfd0652 --- /dev/null +++ b/meta/recipes-support/hal/hal.inc @@ -0,0 +1,85 @@ +DESCRIPTION = "Hardware Abstraction Layer" +HOMEPAGE = "http://freedesktop.org/Software/hal" +BUGTRACKER = "http://bugs.freedesktop.org/buglist.cgi?product=hal" +SECTION = "unknown" + +LICENSE = "GPLv2+ | AFL" +LIC_FILES_CHKSUM = "file://COPYING;md5=5b5ffd59fbb7c2fff6de76c94177af31" + +DEPENDS = "virtual/kernel dbus-glib udev util-linux intltool intltool-native expat libusb gperf-native" +RDEPENDS += "udev hal-info" + +SRC_URI = "http://hal.freedesktop.org/releases/hal-${PV}.tar.gz \ + file://20hal" + +inherit autotools pkgconfig + + +LEAD_SONAME = "libhal.so" + +# machines with pci and acpi get a machine dependant hal +EXTRA_OECONF = "--with-hwdata=${datadir}/hwdata \ + --with-expat=${STAGING_LIBDIR}/.. \ + --with-dbus-sys=${sysconfdir}/dbus-1/system.d \ + --with-hotplug=${sysconfdir}/hotplug.d \ + --disable-docbook-docs \ + --disable-policy-kit \ + --disable-pmu \ + --disable-pnp-ids \ + ${@base_contains('COMBINED_FEATURES', 'pci', '--enable-pci --enable-pci-ids', '--disable-pci --disable-pci-ids',d)} \ + ${@base_contains('MACHINE_FEATURES', 'acpi', '--enable-acpi', '--disable-acpi',d)} \ + " + +MY_ARCH := "${PACKAGE_ARCH}" +PACKAGE_ARCH = "${@base_contains('MACHINE_FEATURES', 'acpi', '${MACHINE_ARCH}', '${MY_ARCH}',d)}" +PACKAGE_ARCH = "${@base_contains('MACHINE_FEATURES', 'pci', '${MACHINE_ARCH}', '${MY_ARCH}',d)}" +PACKAGE_ARCH_emenlow := "${PACKAGE_ARCH}" + +do_install_append() { + install -d ${D}/etc/dbus-1/event.d + install -m 0755 ${WORKDIR}/20hal ${D}/etc/dbus-1/event.d +} + +# At the time the postinst runs, dbus might not be setup so only restart if running +pkg_postinst_hal () { + # can't do this offline + if [ "x$D" != "x" ]; then + exit 1 + fi + + grep haldaemon /etc/group || addgroup haldaemon + grep haldaemon /etc/passwd || adduser --disabled-password --system --home /var/run/hald --no-create-home haldaemon --ingroup haldaemon -g HAL + + # add volatile after new user/grp are created + echo "d root root 0700 /var/run/hald none" > /etc/default/volatiles/99_hal + echo "d haldaemon haldaemon 0755 /var/cache/hald none" >> /etc/default/volatiles/99_hal + /etc/init.d/populate-volatile.sh update + + DBUSPID=`pidof dbus-daemon` + + if [ "x$DBUSPID" != "x" ]; then + /etc/init.d/dbus-1 force-reload + fi +} + +pkg_postrm_hal () { + deluser haldaemon || true + delgroup haldaemon || true +} + +FILES_${PN} = "${sysconfdir} \ + ${bindir}/lshal \ + ${bindir}/hal-find-by-capability \ + ${bindir}/hal-find-by-property \ + ${bindir}/hal-device \ + ${bindir}/hal-get-property \ + ${bindir}/hal-set-property \ + ${bindir}/hal-lock \ + ${bindir}/hal-is-caller-locked-out \ + ${sbindir} \ + ${libdir}/libhal.so.* \ + ${libdir}/libhal-storage.so.* \ + ${libdir}/hal \ + ${libexecdir} \ + ${datadir}/hal/fdi \ + ${datadir}/hal/scripts" diff --git a/meta/recipes-support/hal/hal/configure_fix.patch b/meta/recipes-support/hal/hal/configure_fix.patch new file mode 100644 index 0000000000..e8417040de --- /dev/null +++ b/meta/recipes-support/hal/hal/configure_fix.patch @@ -0,0 +1,60 @@ +The AC_LANG sections upset libtool 2.2.2, as do .cpp files without a call +to AC_PROG_CXX. Easiest solution is to patch this out for now. + +RP - 14/4/08 + +Index: hal-0.5.9.1/configure.in +=================================================================== +--- hal-0.5.9.1.orig/configure.in 2008-04-14 22:41:49.000000000 +0100 ++++ hal-0.5.9.1/configure.in 2008-04-14 22:43:13.000000000 +0100 +@@ -345,32 +345,8 @@ + fi + + dnl Check for libsmbios +-AC_LANG_PUSH([C++]) +-AC_CHECK_LIB(smbios, SMBIOSFreeMemory, LIB_SMBIOS=yes , LIB_SMBIOS=no ) +-AC_LANG_POP([C++]) +-if test "$LIB_SMBIOS" = "yes" ; then +- AC_MSG_CHECKING([for libsmbios >= 0.13.4]) +- AC_TRY_RUN( +- #include +- int main () +- { +- int major ; +- int minor ; +- int micro ; +- +- if ( sscanf( LIBSMBIOS_RELEASE_VERSION , "%d.%d.%d", &major, &minor, µ ) == 3 ) { +- if ((major == 0 && minor == 13 && micro >= 4) || +- (major >= 0 && minor > 13)) { +- return 0; +- } +- } +- return 1; +- } , [USE_SMBIOS=yes; AC_MSG_RESULT(yes); AM_CONDITIONAL(HAVE_SMBIOS,true)], +- [USE_SMBIOS=no; AC_MSG_RESULT(failed); AM_CONDITIONAL(HAVE_SMBIOS,false)]) +-else +- USE_SMBIOS=no +- AM_CONDITIONAL(HAVE_SMBIOS,false) +-fi ++USE_SMBIOS=no ++AM_CONDITIONAL(HAVE_SMBIOS,false) + + AC_ARG_WITH([libpci], + [AS_HELP_STRING([--without-libpci], +Index: hal-0.5.9.1/hald/linux/addons/Makefile.am +=================================================================== +--- hal-0.5.9.1.orig/hald/linux/addons/Makefile.am 2008-04-14 22:45:18.000000000 +0100 ++++ hal-0.5.9.1/hald/linux/addons/Makefile.am 2008-04-14 22:46:05.000000000 +0100 +@@ -60,11 +60,6 @@ + hald_addon_usb_csr_LDADD = $(top_builddir)/libhal/libhal.la -lusb @GLIB_LIBS@ + endif + +-if BUILD_DELL +-libexec_PROGRAMS += hald-addon-dell-backlight +-hald_addon_dell_backlight_SOURCES = addon-dell-backlight.cpp ../../logger.c +-hald_addon_dell_backlight_LDADD = $(top_builddir)/libhal/libhal.la -lsmbios @GLIB_LIBS@ +-endif + endif + + hald_addon_acpi_SOURCES = addon-acpi.c ../../logger.c ../../util_helper.c diff --git a/meta/recipes-support/hal/hal_0.5.14.bb b/meta/recipes-support/hal/hal_0.5.14.bb new file mode 100644 index 0000000000..a12be729cb --- /dev/null +++ b/meta/recipes-support/hal/hal_0.5.14.bb @@ -0,0 +1,14 @@ +require hal.inc + +PR = "r2" + +EXTRA_OECONF += "--with-linux-input-header=${STAGING_INCDIR}/linux/input.h" +EXTRA_OEMAKE += "-e 'udevrulesdir=$(sysconfdir)/udev/rules.d'" + +PACKAGES =+ "libhal libhal-storage" + +FILES_libhal = "${libdir}/libhal.so.*" +FILES_libhal-storage = "${libdir}/libhal-storage.so.*" + +FILES_${PN} =+ "${bindir}/hal-disable-polling \ + ${bindir}/hal-setup-keymap" diff --git a/meta/recipes-support/hal/hal_git.bb b/meta/recipes-support/hal/hal_git.bb new file mode 100644 index 0000000000..baed472375 --- /dev/null +++ b/meta/recipes-support/hal/hal_git.bb @@ -0,0 +1,12 @@ +require hal.inc + +PV = "0.5.9.1+git${SRCDATE}" +PR = "r7" + +SRC_URI = "git://anongit.freedesktop.org/hal/;protocol=git \ + file://20hal \ + file://99_hal" + +S = "${WORKDIR}/git" + +DEFAULT_PREFERENCE = "-1" diff --git a/meta/recipes-support/icu/files/gccfix.patch b/meta/recipes-support/icu/files/gccfix.patch new file mode 100644 index 0000000000..9291e921d3 --- /dev/null +++ b/meta/recipes-support/icu/files/gccfix.patch @@ -0,0 +1,13 @@ +Index: source/layoutex/ParagraphLayout.cpp +=================================================================== +--- source.orig/layoutex/ParagraphLayout.cpp 2009-06-30 11:48:47.000000000 +0100 ++++ source/layoutex/ParagraphLayout.cpp 2009-06-30 11:49:06.000000000 +0100 +@@ -798,7 +798,7 @@ + + return nullLanguageCode; + } +-#elif ++#else + + // TODO - dummy implementation for right now... + le_int32 ParagraphLayout::getLanguageCode(const Locale *locale) diff --git a/meta/recipes-support/icu/files/noldlibpath.patch b/meta/recipes-support/icu/files/noldlibpath.patch new file mode 100644 index 0000000000..eba3d805d4 --- /dev/null +++ b/meta/recipes-support/icu/files/noldlibpath.patch @@ -0,0 +1,47 @@ +Setting LD_LIBRARY_PATH is a really bad idea when cross compiling. Simplest way +to disable this is to rename the variable as per the patch below, then its +harmless. This is a hack. + +RP 10/6/2010 + +Index: source/config/Makefile.inc.in +=================================================================== +--- source.orig/config/Makefile.inc.in 2010-06-10 21:49:19.000000000 +0100 ++++ source/config/Makefile.inc.in 2010-06-10 21:49:46.000000000 +0100 +@@ -126,7 +126,7 @@ + ################################################################## + # Environment variable to set a runtime search path + # (Overridden when necessary in -mh files) +-LDLIBRARYPATH_ENVVAR = LD_LIBRARY_PATH ++LDLIBRARYPATH_ENVVAR = LD_LIBRARY_PATH2 + + # Versioned target for a shared library + FINAL_SO_TARGET = $(SO_TARGET).$(SO_TARGET_VERSION) +Index: source/icudefs.mk.in +=================================================================== +--- source.orig/icudefs.mk.in 2010-06-10 21:51:03.000000000 +0100 ++++ source/icudefs.mk.in 2010-06-10 21:51:09.000000000 +0100 +@@ -150,7 +150,7 @@ + SHLIB.cc= $(CXX) $(CXXFLAGS) $(LDFLAGS) -shared + + # Environment variable to set a runtime search path +-LDLIBRARYPATH_ENVVAR = LD_LIBRARY_PATH ++LDLIBRARYPATH_ENVVAR = LD_LIBRARY_PATH2 + + # Versioned target for a shared library. + FINAL_SO_TARGET = $(SO_TARGET).$(SO_TARGET_VERSION) +Index: source/tools/genrb/gendtjar.pl +=================================================================== +--- source.orig/tools/genrb/gendtjar.pl 2010-06-10 21:51:36.000000000 +0100 ++++ source/tools/genrb/gendtjar.pl 2010-06-10 21:52:03.000000000 +0100 +@@ -68,8 +68,8 @@ + $icuLibDir = abs_path($icuBinDir."/../lib"); + $path .=":$icuBinDir:$icuLibDir"; + +- $libpath = $ENV{'LD_LIBRARY_PATH'}.":$icuLibDir"; +- $ENV{'LD_LIBRARY_PATH'} = $libpath; ++ $libpath = $ENV{'LD_LIBRARY_PATH2'}.":$icuLibDir"; ++ $ENV{'LD_LIBRARY_PATH2'} = $libpath; + + #print ("##### LD_LIBRARY_PATH = $ENV{'LD_LIBRARY_PATH'}\n"); + diff --git a/meta/recipes-support/icu/files/use-g++-for-linking.patch b/meta/recipes-support/icu/files/use-g++-for-linking.patch new file mode 100644 index 0000000000..4702abc065 --- /dev/null +++ b/meta/recipes-support/icu/files/use-g++-for-linking.patch @@ -0,0 +1,67 @@ +--- + tools/genccode/Makefile.in | 2 +- + tools/gencmn/Makefile.in | 2 +- + tools/genrb/Makefile.in | 2 +- + tools/pkgdata/Makefile.in | 2 +- + 4 files changed, 4 insertions(+), 4 deletions(-) + +--- source.orig/tools/genccode/Makefile.in ++++ source/tools/genccode/Makefile.in +@@ -76,11 +76,11 @@ check-local: all-local + Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + $(TARGET) : $(OBJECTS) +- $(LINK.c) $(OUTOPT)$@ $^ $(LIBS) ++ $(LINK.cc) $(OUTOPT)$@ $^ $(LIBS) + + + %.$(SECTION): $(srcdir)/%.$(SECTION).in + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status +--- source.orig/tools/gencmn/Makefile.in ++++ source/tools/gencmn/Makefile.in +@@ -76,11 +76,11 @@ check-local: all-local + Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + $(TARGET) : $(OBJECTS) +- $(LINK.c) $(OUTOPT)$@ $^ $(LIBS) ++ $(LINK.cc) $(OUTOPT)$@ $^ $(LIBS) + + %.$(SECTION): $(srcdir)/%.$(SECTION).in + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +--- source.orig/tools/genrb/Makefile.in ++++ source/tools/genrb/Makefile.in +@@ -84,11 +84,11 @@ Makefile: $(srcdir)/Makefile.in $(top_b + + $(TARGET) : $(OBJECTS) + $(LINK.cc) $(OUTOPT)$@ $^ $(LIBS) + + $(DERB) : $(DERB_OBJ) +- $(LINK.c) $(OUTOPT)$@ $^ $(LIBS) ++ $(LINK.cc) $(OUTOPT)$@ $^ $(LIBS) + + + # This line is needed to serialize builds when the gmake -j option is used. + $(TARGET_STUB_NAME).$(SECTION): $(DERB_STUB_NAME).$(SECTION) + +--- source.orig/tools/pkgdata/Makefile.in ++++ source/tools/pkgdata/Makefile.in +@@ -81,11 +81,11 @@ check-local: all-local + Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + + $(TARGET) : $(OBJECTS) +- $(LINK.c) $(OUTOPT)$@ $^ $(LIBS) ++ $(LINK.cc) $(OUTOPT)$@ $^ $(LIBS) + + + %.$(SECTION): $(srcdir)/%.$(SECTION).in + cd $(top_builddir) \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status diff --git a/meta/recipes-support/icu/icu-3.6.inc b/meta/recipes-support/icu/icu-3.6.inc new file mode 100644 index 0000000000..1c611bdf36 --- /dev/null +++ b/meta/recipes-support/icu/icu-3.6.inc @@ -0,0 +1,55 @@ +DESCRIPTION = "The International Component for Unicode (ICU) is a mature, portable set of C/C++ and Java libraries for Unicode support, software internationalization (I18N) and globalization (G11N), giving applications the same results on all platforms." +HOMEPAGE = "http://www-01.ibm.com/software/globalization/icu/index.jsp" + +BASE_SRC_URI = "ftp://ftp.software.ibm.com/software/globalization/icu/3.6/icu4c-3_6-src.tgz \ + file://gccfix.patch;apply=yes \ + file://use-g++-for-linking.patch;apply=yes" +SRC_URI = "${BASE_SRC_URI} \ + file://noldlibpath.patch;apply=yes" +SRC_URI_virtclass-native = "${BASE_SRC_URI}" + +LICENSE = "ICU" +LIC_FILES_CHKSUM = "file://../license.html;md5=5c94767cedb5d6987c902ac850ded2c6" +DEPENDS = "icu-native" +DEPENDS_virtclass-native = "" + +S = "${WORKDIR}/icu/source" + +PARALLEL_MAKE = "" +FULL_OPTIMIZATION_arm = "-Os" + +inherit autotools pkgconfig binconfig + +do_configure() { + libtoolize --force + gnu-configize --force + oe_runconf + if [ "${PN}" != "icu-native" ]; then + # In the non-native case we need to make substitutions to use + # the native versions of the tools + for i in */Makefile* */*.inc */*/Makefile* */*/*.inc */*/*.inc.in ; do + sed -i -e 's:$(INVOKE) $(BINDIR)/:$(INVOKE) :g' $i + sed -i -e 's:$(BINDIR)/::g' $i + done + fi +} + +do_compile() { + oe_runmake 'CXX=${CXX}' +} + +do_install_append() { + chmod +x ${D}${libdir}/lib* +} + +PACKAGES =+ "libicudata libicuuc libicui18n libicule libiculx libicutu libicuio" + +FILES_libicudata = "${libdir}/libicudata.so.*" +FILES_libicuuc = "${libdir}/libicuuc.so.*" +FILES_libicui18n = "${libdir}/libicui18n.so.*" +FILES_libicule = "${libdir}/libicule.so.*" +FILES_libiculx = "${libdir}/libiculx.so.*" +FILES_libicutu = "${libdir}/libicutu.so.*" +FILES_libicuio = "${libdir}/libicuio.so.*" + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-support/icu/icu_3.6.bb b/meta/recipes-support/icu/icu_3.6.bb new file mode 100644 index 0000000000..5042116009 --- /dev/null +++ b/meta/recipes-support/icu/icu_3.6.bb @@ -0,0 +1,3 @@ +require icu-3.6.inc + +PR = "r6" diff --git a/meta/recipes-support/iso-codes/iso-codes_3.3.bb b/meta/recipes-support/iso-codes/iso-codes_3.3.bb new file mode 100644 index 0000000000..23d025f4d2 --- /dev/null +++ b/meta/recipes-support/iso-codes/iso-codes_3.3.bb @@ -0,0 +1,14 @@ +SECTION = "libs" +DESCRIPTION = "ISO language, territory, currency, script codes and their translations" +PRIORITY = "optional" +LICENSE = "LGPL" +SECTION = "libs" +PACKAGE_ARCH = "all" + +SRC_URI = "ftp://pkg-isocodes.alioth.debian.org/pub/pkg-isocodes/iso-codes-${PV}.tar.gz" + +inherit autotools + +FILES_${PN}-dev="${datadir}/pkgconfig/iso-codes.pc" +FILES_${PN}="${datadir}/xml/iso-codes/ \ + ${datadir}/iso-codes/" diff --git a/meta/recipes-support/js/files/buildcc.patch b/meta/recipes-support/js/files/buildcc.patch new file mode 100644 index 0000000000..26eef218d6 --- /dev/null +++ b/meta/recipes-support/js/files/buildcc.patch @@ -0,0 +1,20 @@ +jskwgen should be built by BUILD_CC in cross environment + +7/23/2010 - created by Qing He + +diff -uNr js.orig//src/Makefile.ref js/src/Makefile.ref +--- js.orig//src/Makefile.ref 2009-02-25 21:24:29.000000000 +0800 ++++ js/src/Makefile.ref 2010-07-23 13:26:51.000000000 +0800 +@@ -303,10 +303,10 @@ + + $(OBJDIR)/jskwgen.o: jskwgen.c jskeyword.tbl + @$(MAKE_OBJDIR) +- $(CC) -o $@ -c $(CFLAGS) $< ++ $(BUILD_CC) -o $@ -c $(BUILD_CFLAGS) $< + + $(OBJDIR)/jskwgen$(HOST_BIN_SUFFIX): $(OBJDIR)/jskwgen.$(OBJ_SUFFIX) +- $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $^ ++ $(BUILD_CC) -o $@ $(BUILD_CFLAGS) $(BUILD_LDFLAGS) $^ + + endif + diff --git a/meta/recipes-support/js/files/configure.ac b/meta/recipes-support/js/files/configure.ac new file mode 100644 index 0000000000..41af298455 --- /dev/null +++ b/meta/recipes-support/js/files/configure.ac @@ -0,0 +1,28 @@ +AC_INIT + +AC_CHECK_SIZEOF([char]) +AC_CHECK_SIZEOF([short]) +AC_CHECK_SIZEOF([int]) +AC_CHECK_SIZEOF([int64_t]) +AC_CHECK_SIZEOF([long]) +AC_CHECK_SIZEOF([long long]) +AC_CHECK_SIZEOF([int *]) +AC_CHECK_SIZEOF([float]) +AC_CHECK_SIZEOF([double]) + +AC_CHECK_ALIGNOF([char]) +AC_CHECK_ALIGNOF([short]) +AC_CHECK_ALIGNOF([int]) +AC_CHECK_ALIGNOF([int64_t]) +AC_CHECK_ALIGNOF([long]) +AC_CHECK_ALIGNOF([long long]) +AC_CHECK_ALIGNOF([int *]) +AC_CHECK_ALIGNOF([float]) +AC_CHECK_ALIGNOF([double]) + +AC_C_BIGENDIAN + +AC_TYPE_LONG_LONG_INT + +AC_CONFIG_HEADER([conf.h]) +AC_OUTPUT diff --git a/meta/recipes-support/js/files/jsautocfg.h b/meta/recipes-support/js/files/jsautocfg.h new file mode 100644 index 0000000000..16e38bf8d6 --- /dev/null +++ b/meta/recipes-support/js/files/jsautocfg.h @@ -0,0 +1,74 @@ +#ifndef js_cpucfg___ +#define js_cpucfg___ + +/* AUTOMATICALLY GENERATED - DO NOT EDIT */ + +#include "../conf.h" + +#ifdef WORDS_BIGENDIAN +# undef IS_LITTLE_ENDIAN +# define IS_BIG_ENDIAN 1 +#else +# define IS_LITTLE_ENDIAN 1 +# undef IS_BIG_ENDIAN +#endif + +#define __I_LOG2(n) ( \ + ((n) == 1)? 0: \ + ((n) == 2)? 1: \ + ((n) == 4)? 2: \ + ((n) == 8)? 3: \ + ((n) == 16)? 4: \ + ((n) == 32)? 5: \ + ((n) == 64)? 6: \ + ((n) == 128)? 7: \ + -1) + +#define JS_BYTES_PER_BYTE SIZEOF_CHAR +#define JS_BYTES_PER_SHORT SIZEOF_SHORT +#define JS_BYTES_PER_INT SIZEOF_INT +#define JS_BYTES_PER_INT64 SIZEOF_INT64_T +#define JS_BYTES_PER_LONG SIZEOF_LONG +#define JS_BYTES_PER_FLOAT SIZEOF_FLOAT +#define JS_BYTES_PER_DOUBLE SIZEOF_DOUBLE +#define JS_BYTES_PER_WORD SIZEOF_LONG +#define JS_BYTES_PER_DWORD SIZEOF_LONG_LONG + +#define JS_BITS_PER_BYTE 8L +#define JS_BITS_PER_SHORT (JS_BITS_PER_BYTE * JS_BYTES_PER_SHORT) +#define JS_BITS_PER_INT (JS_BITS_PER_BYTE * JS_BYTES_PER_INT) +#define JS_BITS_PER_INT64 (JS_BITS_PER_BYTE * JS_BYTES_PER_INT64) +#define JS_BITS_PER_LONG (JS_BITS_PER_BYTE * JS_BYTES_PER_LONG) +#define JS_BITS_PER_FLOAT (JS_BITS_PER_BYTE * JS_BYTES_PER_GLOAT) +#define JS_BITS_PER_DOUBLE (JS_BITS_PER_BYTE * JS_BYTES_PER_DOUBLE) +#define JS_BITS_PER_WORD (JS_BITS_PER_BYTE * JS_BYTES_PER_WORD) + +#define JS_BITS_PER_BYTE_LOG2 __I_LOG2(JS_BITS_PER_BYTE) +#define JS_BITS_PER_SHORT_LOG2 __I_LOG2(JS_BITS_PER_BYTE) +#define JS_BITS_PER_INT_LOG2 __I_LOG2(JS_BITS_PER_BYTE) +#define JS_BITS_PER_INT64_LOG2 __I_LOG2(JS_BITS_PER_BYTE) +#define JS_BITS_PER_LONG_LOG2 __I_LOG2(JS_BITS_PER_BYTE) +#define JS_BITS_PER_FLOAT_LOG2 __I_LOG2(JS_BITS_PER_BYTE) +#define JS_BITS_PER_DOUBLE_LOG2 __I_LOG2(JS_BITS_PER_BYTE) +#define JS_BITS_PER_WORD_LOG2 __I_LOG2(JS_BITS_PER_BYTE) + +#define JS_ALIGN_OF_SHORT ALIGNOF_SHORT +#define JS_ALIGN_OF_INT ALIGNOF_INT +#define JS_ALIGN_OF_LONG ALIGNOF_LONG +#define JS_ALIGN_OF_INT64 ALIGNOF_INT64_T +#define JS_ALIGN_OF_FLOAT ALIGNOF_FLOAT +#define JS_ALIGN_OF_DOUBLE ALIGNOF_DOUBLE +#define JS_ALIGN_OF_POINTER ALIGNOF_INT_P +#define JS_ALIGN_OF_WORD ALIGNOF_LONG + +#define JS_BYTES_PER_WORD_LOG2 __I_LOG2(JS_BYTES_PER_WORD) +#define JS_BYTES_PER_DWORD_LOG2 __I_LOG2(JS_BYTES_PER_DWORDS) +#define JS_WORDS_PER_DWORD_LOG2 __I_LOG2(JS_BYTES_PER_DWORDS / JS_BYTES_PER_WORD) + +#define JS_STACK_GROWTH_DIRECTION (-1) + +#ifdef HAVE_LONG_LONG_INT +# define JS_HAVE_LONG_LONG +#endif + +#endif /* js_cpucfg___ */ diff --git a/meta/recipes-support/js/files/link_with_gcc.patch b/meta/recipes-support/js/files/link_with_gcc.patch new file mode 100644 index 0000000000..d74b94f378 --- /dev/null +++ b/meta/recipes-support/js/files/link_with_gcc.patch @@ -0,0 +1,13 @@ +Index: src/config/Linux_All.mk +=================================================================== +--- src.orig/config/Linux_All.mk 2005-05-10 19:53:44.000000000 +0000 ++++ src/config/Linux_All.mk 2007-06-18 17:20:05.000000000 +0000 +@@ -47,7 +47,7 @@ + OS_CFLAGS = -DXP_UNIX -DSVR4 -DSYSV -D_BSD_SOURCE -DPOSIX_SOURCE -DHAVE_LOCALTIME_R + + RANLIB = echo +-MKSHLIB = $(LD) -shared $(XMKSHLIBOPTS) ++MKSHLIB = $(CC) -shared $(XMKSHLIBOPTS) + + #.c.o: + # $(CC) -c -MD $*.d $(CFLAGS) $< diff --git a/meta/recipes-support/js/files/usepic.patch b/meta/recipes-support/js/files/usepic.patch new file mode 100644 index 0000000000..ddd31be9cb --- /dev/null +++ b/meta/recipes-support/js/files/usepic.patch @@ -0,0 +1,24 @@ +Mips needs -fPIC to compile properly. These tests are broken anyway as they test +the build system architecture, not the target. This is a hack. + +RP 10/6/2010 + +Index: src/config/Linux_All.mk +=================================================================== +--- src.orig/config/Linux_All.mk 2010-06-10 22:09:43.000000000 +0100 ++++ src/config/Linux_All.mk 2010-06-10 22:09:55.000000000 +0100 +@@ -90,14 +90,10 @@ + # Use the editline library to provide line-editing support. + JS_EDITLINE = 1 + +-ifeq ($(CPU_ARCH),x86_64) + # Use VA_COPY() standard macro on x86-64 + # FIXME: better use it everywhere + OS_CFLAGS += -DHAVE_VA_COPY -DVA_COPY=va_copy +-endif + +-ifeq ($(CPU_ARCH),x86_64) + # We need PIC code for shared libraries + # FIXME: better patch rules.mk & fdlibm/Makefile* + OS_CFLAGS += -DPIC -fPIC +-endif diff --git a/meta/recipes-support/js/js_1.7.0+1.8.0rc1.bb b/meta/recipes-support/js/js_1.7.0+1.8.0rc1.bb new file mode 100644 index 0000000000..97cba90d03 --- /dev/null +++ b/meta/recipes-support/js/js_1.7.0+1.8.0rc1.bb @@ -0,0 +1,47 @@ +DESCRIPTION = "Spidermonkey: a javascript engine written in C" +HOMEPAGE = "http://www.mozilla.org/js/spidermonkey/" +SECTION = "libs" + +# the package is licensed under either of the following +LICENSE = "MPL1.1 | GPLv2+ | LGPLv2.1+" +LIC_FILES_CHKSUM = "file://jsapi.c;beginline=4;endline=39;md5=347c6bbf4fb4547de1fa5ad830030063" +PR = "r1" + +SRC_URI = "http://ftp.mozilla.org/pub/mozilla.org/js/js-1.8.0-rc1.tar.gz \ + file://link_with_gcc.patch \ + file://usepic.patch \ + file://buildcc.patch;striplevel=2 \ + file://jsautocfg.h \ + file://configure.ac" + +S = "${WORKDIR}/js/src" + +# use local autoconf script to generate a usable jsautocfg.h +# don't bother with automake +inherit autotools + +do_configure_prepend() { + cp -f ${WORKDIR}/configure.ac ${S} + cp -f ${WORKDIR}/jsautocfg.h ${S} +} + +EXTRA_OEMAKE = "'CC=${CC}' 'LD=${LD}' 'XCFLAGS=${CFLAGS}' 'XLDFLAGS=${LDFLAGS} -Wl,-soname=libjs' \ + 'BUILD_CC=${BUILD_CC}' 'BUILD_CFLAGS=${BUILD_CFLAGS}' 'BUILD_LDFLAGS=${BUILD_LDFLAGS}'" + +PARALLEL_MAKE = "" + +do_compile() { + oe_runmake -f Makefile.ref JS_EDITLINE=1 PREBUILT_CPUCFG=1 BUILD_OPT=1 +} + +do_install() { + install -d ${D}${libdir} + install -d ${D}${includedir} + install -d ${D}${includedir}/js + oe_libinstall -so -C Linux_All_OPT.OBJ libjs ${D}${libdir} + install -m 0644 ${S}/*.h ${D}${includedir}/js +} + +FILES_${PN} = "${libdir}/lib*.so" +FILES_${PN}-dev = "${includedir} ${libdir}/lib*.a" + diff --git a/meta/recipes-support/libassuan/libassuan_2.0.0.bb b/meta/recipes-support/libassuan/libassuan_2.0.0.bb new file mode 100644 index 0000000000..11934013ce --- /dev/null +++ b/meta/recipes-support/libassuan/libassuan_2.0.0.bb @@ -0,0 +1,15 @@ +DESCRIPTION = "IPC library used by GnuPG and GPGME" +HOMEPAGE = "http://www.gnupg.org/related_software/libassuan/" +BUGTRACKER = "https://bugs.g10code.com/gnupg/index" + +LICENSE = "GPLv3 & LGPLv2.1+" +LIC_FILES_CHKSUM = "file://COPYING;md5=f27defe1e96c2e1ecd4e0c9be8967949 \ + file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \ + file://src/assuan.h;endline=20;md5=8a6f091b9d114f0e06aa91cb3460154c \ + file://src/assuan-defs.h;endline=20;md5=c51ca5e56b000d79d500eee7cd8dc2e5" + +DEPENDS = "libgpg-error" + +SRC_URI = "ftp://ftp.gnupg.org/gcrypt/libassuan/libassuan-${PV}.tar.bz2" + +inherit autotools binconfig diff --git a/meta/recipes-support/libcap/libcap.inc b/meta/recipes-support/libcap/libcap.inc new file mode 100644 index 0000000000..16eaae690c --- /dev/null +++ b/meta/recipes-support/libcap/libcap.inc @@ -0,0 +1,34 @@ +DESCRIPTION = "support for getting/setting POSIX.1e capabilities" +HOMEPAGE = "http://sites.google.com/site/fullycapable/" + +# no specific GPL version required +LICENSE = "BSD | GPL" +LIC_FILES_CHKSUM = "file://License;md5=731de803c1ccbcb05a9b3523279c8d7f" + +DEPENDS = "libpam attr perl-native" + +SRC_URI = "${KERNELORG_MIRROR}/pub/linux/libs/security/linux-privs/libcap2/${BPN}-${PV}.tar.bz2" + +inherit lib_package + +do_configure() { + # libcap uses := for compilers, fortunately, it gives us a hint + # on what should be replaced with ?= + sed -e 's,:=,?=,g' -i Make.Rules + sed -e 's,BUILD_CFLAGS ?=,BUILD_CFLAGS := $(BUILD_CFLAGS),' -i Make.Rules +} + +EXTRA_OEMAKE = "LIBATTR=yes PAM_CAP=yes INDENT= lib=lib" +EXTRA_OEMAKE_virtclass-native = "LIBATTR=no PAM_CAP=no INDENT= lib=lib" + +do_compile() { + oe_runmake +} + +do_install() { + oe_runmake install DESTDIR="${D}" +} + +# pam files +FILES_${PN} += "${libdir}/security/*.so" +FILES_${PN}-dbg += "${libdir}/security/.debug/*.so" diff --git a/meta/recipes-support/libcap/libcap_2.19.bb b/meta/recipes-support/libcap/libcap_2.19.bb new file mode 100644 index 0000000000..eb861535e9 --- /dev/null +++ b/meta/recipes-support/libcap/libcap_2.19.bb @@ -0,0 +1,3 @@ +require libcap.inc + +PR = "r1" diff --git a/meta/recipes-support/libcheck/libcheck_0.9.8.bb b/meta/recipes-support/libcheck/libcheck_0.9.8.bb new file mode 100644 index 0000000000..048b8ce622 --- /dev/null +++ b/meta/recipes-support/libcheck/libcheck_0.9.8.bb @@ -0,0 +1,16 @@ +DESCRIPTION = "Check Test Framework" +HOMEPAGE = "http://gitorious.org/opensuse/zypper" +PRIORITY = "optional" +SECTION = "devel" + +LICENSE = "LGPLv2.1+" +LIC_FILES_CHKSUM = "file://COPYING.LESSER;md5=2d5025d4aa3495befef8f17206a5b0a1" + +PR = "r0" + +SRC_URI = "${SOURCEFORGE_MIRROR}/check/check-${PV}.tar.gz" +S = "${WORKDIR}/check-${PV}" + +inherit autotools pkgconfig + +RREPLACES_${PN} = "check (<= 0.9.5)" diff --git a/meta/recipes-support/libcroco/files/croco.patch b/meta/recipes-support/libcroco/files/croco.patch new file mode 100644 index 0000000000..572f9de59f --- /dev/null +++ b/meta/recipes-support/libcroco/files/croco.patch @@ -0,0 +1,13 @@ +--- opie/configure.in.old 2006-05-19 20:57:30.000000000 +0100 ++++ opie/configure.in 2006-05-19 20:57:56.000000000 +0100 +@@ -131,8 +131,8 @@ + dnl Define the CROCO_LIBS and CROCO_CFLAGS variables. These will be used + dnl by client application to know where to find croco include files and libs. + dnl +-CROCO_LIBS="-L${libdir} -lcroco-$LIBCROCO_MAJOR_VERSION.$LIBCROCO_MINOR_VERSION" +-CROCO_CFLAGS="-I${includedir}/libcroco-$LIBCROCO_MAJOR_VERSION.$LIBCROCO_MINOR_VERSION" ++CROCO_LIBS='-L${libdir}'" -lcroco-$LIBCROCO_MAJOR_VERSION.$LIBCROCO_MINOR_VERSION" ++CROCO_CFLAGS='-I${includedir}'"/libcroco-$LIBCROCO_MAJOR_VERSION.$LIBCROCO_MINOR_VERSION" + + AC_SUBST(LIBXML2_LIBS) + AC_SUBST(LIBXML2_CFLAGS) diff --git a/meta/recipes-support/libcroco/libcroco_0.6.2.bb b/meta/recipes-support/libcroco/libcroco_0.6.2.bb new file mode 100644 index 0000000000..2ea33b155b --- /dev/null +++ b/meta/recipes-support/libcroco/libcroco_0.6.2.bb @@ -0,0 +1,16 @@ +DESCRIPTION = "The Libcroco project is an effort to build a generic Cascading Style Sheet (CSS) parsing and manipulation toolkit" +HOMEPAGE = "http://www.gnome.org/" +BUGTRACKER = "https://bugzilla.gnome.org/" + +LICENSE = "LGPLv2 & LGPLv2.1" +LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605 \ + file://src/cr-rgb.c;endline=25;md5=1df8189094ba7bbed953225785032826 \ + file://tests/cr-test-utils.c;endline=21;md5=2382c27934cae1d3792fcb17a6142c4e" + +SECTION = "x11/utils" +DEPENDS = "glib-2.0 libxml2 zlib" +PR = "r0" + +inherit autotools pkgconfig gnome + +SRC_URI_append = " file://croco.patch;apply=yes " diff --git a/meta/recipes-support/libdaemon/libdaemon_0.14.bb b/meta/recipes-support/libdaemon/libdaemon_0.14.bb new file mode 100644 index 0000000000..b4092fdbb9 --- /dev/null +++ b/meta/recipes-support/libdaemon/libdaemon_0.14.bb @@ -0,0 +1,14 @@ +DESCRIPTION = "libdaemon is a lightweight C library which eases the writing of UNIX daemons." +SECTION = "libs" +AUTHOR = "Lennart Poettering " +HOMEPAGE = "http://0pointer.de/lennart/projects/libdaemon/" +LICENSE = "LGPLv2.1+" +LIC_FILES_CHKSUM = "file://LICENSE;md5=2d5025d4aa3495befef8f17206a5b0a1 \ + file://libdaemon/daemon.h;startline=9;endline=21;md5=94c709a83d8251377c322322176d4ffe" +PR = "r0" + +SRC_URI = "http://0pointer.de/lennart/projects/libdaemon/libdaemon-${PV}.tar.gz" + +inherit autotools pkgconfig + +EXTRA_OECONF = "--disable-lynx" diff --git a/meta/recipes-support/libevent/libevent_1.4.14b.bb b/meta/recipes-support/libevent/libevent_1.4.14b.bb new file mode 100644 index 0000000000..4209305512 --- /dev/null +++ b/meta/recipes-support/libevent/libevent_1.4.14b.bb @@ -0,0 +1,15 @@ +DESCRIPTION = "an asynchronous event notification library" +HOMEPAGE = "http://www.monkey.org/~provos/libevent/" +SECTION = "libs" + +LICENSE = "BSD" +LIC_FILES_CHKSUM = "file://event.c;endline=26;md5=bc20aa63bf60c36c2d8edb77746f6b7c" + +PR = "r0" + +SRC_URI = "http://www.monkey.org/~provos/${BPN}-${PV}-stable.tar.gz" +S = "${WORKDIR}/${BPN}-${PV}-stable" + +inherit autotools + +LEAD_SONAME = "libevent-1.4.so" diff --git a/meta/recipes-support/libfm/libfm_0.1.12.bb b/meta/recipes-support/libfm/libfm_0.1.12.bb new file mode 100644 index 0000000000..83e6af8523 --- /dev/null +++ b/meta/recipes-support/libfm/libfm_0.1.12.bb @@ -0,0 +1,17 @@ +DESCRIPTION = "Library for file management" +HOMEPAGE = "http://pcmanfm.sourceforge.net/" +BUGTRACKER = "" + +LICENSE = "GPLv2 & GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \ + file://src/fm.h;endline=22;md5=e64555171770a551e3b51cc06fc62f1a \ + file://src/base/fm-config.h;endline=23;md5=ad0fc418c3cf041eea35ddb3daf37f17" + +SECTION = "x11/libs" +DEPENDS = "gtk+ menu-cache intltool" + +PR = "r0" + +SRC_URI = "${SOURCEFORGE_MIRROR}/pcmanfm/libfm-${PV}.tar.gz" + +inherit autotools pkgconfig diff --git a/meta/recipes-support/libfribidi/files/libtool-update.patch b/meta/recipes-support/libfribidi/files/libtool-update.patch new file mode 100644 index 0000000000..c7031008fd --- /dev/null +++ b/meta/recipes-support/libfribidi/files/libtool-update.patch @@ -0,0 +1,11 @@ +--- fribidi-0.10.4/configure.in~ 2002-05-19 11:06:48.000000000 +0100 ++++ fribidi-0.10.4/configure.in 2004-08-03 17:42:28.000000000 +0100 +@@ -50,7 +50,7 @@ + AC_PROG_INSTALL + AC_PROG_LN_S + AC_PROG_MAKE_SET +-AC_PROG_RANLIB ++#AC_PROG_RANLIB + AC_PATH_PROG(SED, sed, $PATH) + + diff --git a/meta/recipes-support/libfribidi/libfribidi_0.10.4.bb b/meta/recipes-support/libfribidi/libfribidi_0.10.4.bb new file mode 100644 index 0000000000..a9850fe52d --- /dev/null +++ b/meta/recipes-support/libfribidi/libfribidi_0.10.4.bb @@ -0,0 +1,23 @@ +DESCRIPTION = "Fribidi library for bidirectional text" +SECTION = "libs" +PRIORITY = "optional" + +inherit autotools pkgconfig + +PR = "r0" + +S = "${WORKDIR}/fribidi-${PV}" + +SRC_URI = "${SOURCEFORGE_MIRROR}/fribidi/fribidi-${PV}.tar.bz2 \ + file://libtool-update.patch;patch=1" + +#PACKAGES += " ${PN}-bin" +FILES_${PN} = "${libdir}/lib*.so.*" +#FILES_${PN}-bin = "${libdir}/uu*" + +do_configure_prepend () { +# this version of libtool is old - we have to nobble this file to get it to litoolize + rm ltconfig + rm aclocal.m4 + rm acinclude.m4 +} diff --git a/meta/recipes-support/libgcrypt/files/add-pkgconfig-support.patch b/meta/recipes-support/libgcrypt/files/add-pkgconfig-support.patch new file mode 100644 index 0000000000..24a59787a2 --- /dev/null +++ b/meta/recipes-support/libgcrypt/files/add-pkgconfig-support.patch @@ -0,0 +1,49 @@ +Index: libgcrypt-1.2.4/configure.ac +=================================================================== +--- libgcrypt-1.2.4.orig/configure.ac 2008-03-19 22:14:50.000000000 +0000 ++++ libgcrypt-1.2.4/configure.ac 2008-03-19 22:14:58.000000000 +0000 +@@ -807,6 +807,7 @@ + doc/Makefile + src/Makefile + src/gcrypt.h ++src/libgcrypt.pc + src/libgcrypt-config + tests/Makefile + w32-dll/Makefile +Index: libgcrypt-1.2.4/src/libgcrypt.pc.in +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ libgcrypt-1.2.4/src/libgcrypt.pc.in 2008-03-19 22:14:58.000000000 +0000 +@@ -0,0 +1,32 @@ ++# Process this file with autoconf to produce a pkg-config metadata file. ++# Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation ++# Author: Simon Josefsson ++# ++# This file is free software; as a special exception the author gives ++# unlimited permission to copy and/or distribute it, with or without ++# modifications, as long as this notice is preserved. ++# ++# This file is distributed in the hope that it will be useful, but ++# WITHOUT ANY WARRANTY, to the extent permitted by law; without even the ++# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ++ ++prefix=@prefix@ ++exec_prefix=@exec_prefix@ ++libdir=@libdir@ ++includedir=@includedir@ ++ ++# API info ++api_version=@LIBGCRYPT_CONFIG_API_VERSION@ ++ ++# Misc information. ++symmetric_ciphers=@LIBGCRYPT_CIPHERS@ ++asymmetric_ciphers=@LIBGCRYPT_PUBKEY_CIPHERS@ ++digests=@LIBGCRYPT_DIGESTS@ ++ ++Name: libgcrypt ++Description: GNU crypto library ++URL: http://www.gnupg.org ++Version: @VERSION@ ++Libs: -L${libdir} -lgcrypt ++Libs.private: -L${libdir} -lgpg-error ++Cflags: -I${includedir} diff --git a/meta/recipes-support/libgcrypt/libgcrypt.inc b/meta/recipes-support/libgcrypt/libgcrypt.inc new file mode 100644 index 0000000000..08fe7992fa --- /dev/null +++ b/meta/recipes-support/libgcrypt/libgcrypt.inc @@ -0,0 +1,31 @@ +DESCRIPTION = "A general purpose cryptographic library based on the code from GnuPG" +HOMEPAGE = "http://directory.fsf.org/project/libgcrypt/" +BUGTRACKER = "https://bugs.g10code.com/gnupg/index" +SECTION = "libs" +PRIORITY = "optional" + +# helper program gcryptrnd and getrandom are under GPL, rest LGPL +LICENSE = "GPLv2+ & LGPLv2.1+" +LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ + file://COPYING.LIB;md5=bbb461211a33b134d42ed5ee802b37ff" + +DEPENDS = "libgpg-error" + +SRC_URI = "ftp://ftp.gnupg.org/gcrypt/libgcrypt/libgcrypt-${PV}.tar.gz \ + file://add-pkgconfig-support.patch" + +inherit autotools binconfig pkgconfig + +EXTRA_OECONF = "--without-pth --disable-asm --with-capabilities" + +# libgcrypt.pc is added locally and thus installed here +do_install_append() { + install -d ${D}/${libdir}/pkgconfig + install -m 0644 ${S}/src/libgcrypt.pc ${D}/${libdir}/pkgconfig/ +} + +ARM_INSTRUCTION_SET = "arm" + +# move libgcrypt-config into -dev package +FILES_${PN} = "${libdir}/lib*.so.*" +FILES_${PN}-dev += "${bindir} ${libdir}/pkgconfig/*.pc" diff --git a/meta/recipes-support/libgcrypt/libgcrypt_1.4.6.bb b/meta/recipes-support/libgcrypt/libgcrypt_1.4.6.bb new file mode 100644 index 0000000000..a592437913 --- /dev/null +++ b/meta/recipes-support/libgcrypt/libgcrypt_1.4.6.bb @@ -0,0 +1,3 @@ +require libgcrypt.inc + +PR = "r0" diff --git a/meta/recipes-support/libgdbus/libgdbus_git.bb b/meta/recipes-support/libgdbus/libgdbus_git.bb new file mode 100644 index 0000000000..f0101f9925 --- /dev/null +++ b/meta/recipes-support/libgdbus/libgdbus_git.bb @@ -0,0 +1,10 @@ +HOMEPAGE = "http://www.moblin.org/projects/projects_connman.php" +SUMMARY = "Moblin Glib D-Bus integration" +LICENSE = "GPL LGPL" +DEPENDS = "glib-2.0 dbus" +PV = "0.0+git${SRCREV}" +S = "${WORKDIR}/git" + +SRC_URI = "git://git.kernel.org/pub/scm/bluetooth/libgdbus.git;protocol=git" + +inherit autotools pkgconfig diff --git a/meta/recipes-support/libgpg-error/libgpg-error-1.8/pkgconfig.patch b/meta/recipes-support/libgpg-error/libgpg-error-1.8/pkgconfig.patch new file mode 100644 index 0000000000..49e47d874e --- /dev/null +++ b/meta/recipes-support/libgpg-error/libgpg-error-1.8/pkgconfig.patch @@ -0,0 +1,53 @@ + +# +# Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher +# + +Index: libgpg-error-1.8/configure.ac +=================================================================== +--- libgpg-error-1.8.orig/configure.ac 2010-05-06 06:01:08.000000000 -0700 ++++ libgpg-error-1.8/configure.ac 2010-07-21 02:20:20.923261305 -0700 +@@ -140,6 +140,7 @@ + AC_SUBST(GPG_ERROR_CONFIG_CFLAGS) + AC_SUBST(GPG_ERROR_CONFIG_ISUBDIRAFTER) + AC_CONFIG_FILES([src/gpg-error-config], [chmod +x src/gpg-error-config]) ++AC_CONFIG_FILES([src/gpg-error.pc]) + + + # Special defines for certain platforms +Index: libgpg-error-1.8/src/Makefile.am +=================================================================== +--- libgpg-error-1.8.orig/src/Makefile.am 2010-04-14 02:16:44.000000000 -0700 ++++ libgpg-error-1.8/src/Makefile.am 2010-07-21 02:22:36.655012496 -0700 +@@ -37,13 +37,15 @@ + bin_SCRIPTS = gpg-error-config + m4datadir = $(datadir)/aclocal + m4data_DATA = gpg-error.m4 ++pkgconfigdir = $(libdir)/pkgconfig ++pkgconfig_DATA = gpg-error.pc + + EXTRA_DIST = mkstrtable.awk err-sources.h.in err-codes.h.in \ + mkerrnos.awk errnos.in README \ + mkerrcodes.awk mkerrcodes1.awk mkerrcodes2.awk mkerrcodes.c \ + mkheader.awk gpg-error.h.in mkw32errmap.c w32-add.h w32ce-add.h \ + err-sources.h err-codes.h gpg-error-config.in gpg-error.m4 \ +- gpg-error.def.in versioninfo.rc.in ++ gpg-error.def.in versioninfo.rc.in gpg-error.pc.in + + BUILT_SOURCES = err-sources.h err-codes.h code-to-errno.h code-from-errno.h \ + err-sources-sym.h err-codes-sym.h errnos-sym.h gpg-error.h \ +Index: libgpg-error-1.8/src/gpg-error.pc.in +=================================================================== +--- /dev/null 1970-01-01 00:00:00.000000000 +0000 ++++ libgpg-error-1.8/src/gpg-error.pc.in 2010-07-21 02:20:20.923261305 -0700 +@@ -0,0 +1,10 @@ ++prefix=@prefix@ ++exec_prefix=@exec_prefix@ ++libdir=@libdir@ ++includedir=@includedir@ ++ ++Name: gpg-error ++Description: a library that defines common error values for all GnuPG components ++Version: @VERSION@ ++Libs: -L{libdir} -lgpg-error ++Cflags: -I${includedir} diff --git a/meta/recipes-support/libgpg-error/libgpg-error_1.8.bb b/meta/recipes-support/libgpg-error/libgpg-error_1.8.bb new file mode 100644 index 0000000000..120feecafa --- /dev/null +++ b/meta/recipes-support/libgpg-error/libgpg-error_1.8.bb @@ -0,0 +1,24 @@ +DESCRIPTION = "a small library that defines common error values for all GnuPG components" +HOMEPAGE = "http://www.gnupg.org/related_software/libgpg-error/" +BUGTRACKER = "https://bugs.g10code.com/gnupg/index" + +LICENSE = "GPLv2+ & LGPLv2.1+" +LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \ + file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \ + file://src/gpg-error.h;endline=23;md5=83c16c8f5cea85affa1ff270a6f4fcff \ + file://src/init.c;endline=20;md5=b69742f2a8827d494c6f6a4b1768416c" + + +SECTION = "libs" +LICENSE = "GPLv2+ & LGPLv2.1+" +DEPENDS = "gettext" +PR = "r0" + +SRC_URI = "ftp://ftp.gnupg.org/gcrypt/libgpg-error/libgpg-error-${PV}.tar.bz2 \ + file://pkgconfig.patch;" + +# move libgpg-error-config into -dev package +FILES_${PN} = "${libdir}/lib*.so.*" +FILES_${PN}-dev += "${bindir}/*" + +inherit autotools binconfig pkgconfig diff --git a/meta/recipes-support/libiconv/libiconv_1.9.2.bb b/meta/recipes-support/libiconv/libiconv_1.9.2.bb new file mode 100644 index 0000000000..d427dcef83 --- /dev/null +++ b/meta/recipes-support/libiconv/libiconv_1.9.2.bb @@ -0,0 +1,21 @@ +DESCRIPTION = "GNU libiconv - libiconv is for you if your application needs to support \ +multiple character encodings, but that support lacks from your system." +HOMEPAGE = "http://www.gnu.org/software/libiconv" +SECTION = "libs" +PRIORITY = "optional" +NOTES = "Needs to be stripped down to: ascii iso8859-1 eucjp iso-2022jp gb utf8" +PROVIDES = "virtual/libiconv" +PR = "r4" +LICENSE = "LGPL" +SRC_URI = "ftp://ftp.gnu.org/pub/gnu/libiconv/libiconv-${PV}.tar.gz" + +S = "${WORKDIR}/libiconv-${PV}" + +inherit autotools pkgconfig + +EXTRA_OECONF += "--enable-shared --enable-static" + +do_configure () { + rm -f m4/libtool.m4 libcharset/m4/libtool.m4 + autotools_do_configure +} diff --git a/meta/recipes-support/libmpc/libmpc.inc b/meta/recipes-support/libmpc/libmpc.inc new file mode 100644 index 0000000000..6e18e588be --- /dev/null +++ b/meta/recipes-support/libmpc/libmpc.inc @@ -0,0 +1,6 @@ +DESCRIPTION = "Mpc is a C library for the arithmetic of complex numbers with arbitrarily high precision and correct rounding of the result. It is built upon and follows the same principles as Mpfr" +HOMEPAGE = "http://www.multiprecision.org/" +LICENSE = "LGPLv2" +SECTION = "libs" + +inherit autotools diff --git a/meta/recipes-support/libmpc/libmpc_0.8.2.bb b/meta/recipes-support/libmpc/libmpc_0.8.2.bb new file mode 100644 index 0000000000..1792066e77 --- /dev/null +++ b/meta/recipes-support/libmpc/libmpc_0.8.2.bb @@ -0,0 +1,14 @@ +require libmpc.inc + +DEPENDS = "gmp mpfr" + +PR = "r0" + +SRC_URI = "http://www.multiprecision.org/mpc/download/mpc-${PV}.tar.gz" +S = "${WORKDIR}/mpc-${PV}" + +SRC_URI[md5sum] = "5b34aa804d514cc295414a963aedb6bf" +SRC_URI[sha256sum] = "e664603757251fd8a352848276497a4c79b7f8b21fd8aedd5cc0598a38fee3e4" + +BBCLASSEXTEND = "native nativesdk" + diff --git a/meta/recipes-support/libnl/libnl/compilefix.patch b/meta/recipes-support/libnl/libnl/compilefix.patch new file mode 100644 index 0000000000..f75ff282af --- /dev/null +++ b/meta/recipes-support/libnl/libnl/compilefix.patch @@ -0,0 +1,12 @@ +Index: libnl-1.1/include/netlink-local.h +=================================================================== +--- libnl-1.1.orig/include/netlink-local.h 2009-09-04 10:10:09.000000000 +0100 ++++ libnl-1.1/include/netlink-local.h 2009-09-04 10:10:15.000000000 +0100 +@@ -26,6 +26,7 @@ + #include + #include + #include ++#include + + #include + #include diff --git a/meta/recipes-support/libnl/libnl/local-includes.patch b/meta/recipes-support/libnl/libnl/local-includes.patch new file mode 100644 index 0000000000..5af463004b --- /dev/null +++ b/meta/recipes-support/libnl/libnl/local-includes.patch @@ -0,0 +1,11 @@ +--- libnl-1.0-pre6/Makefile.opts.in.orig 2006-08-24 14:57:42.000000000 +0200 ++++ libnl-1.0-pre6/Makefile.opts.in 2006-08-24 14:58:20.000000000 +0200 +@@ -10,7 +10,7 @@ + # + + CC := @CC@ +-CFLAGS := @CFLAGS@ ++CFLAGS := -I./include -I. -I../include @CFLAGS@ + LDFLAGS := @LDFLAGS@ + CPPFLAGS := @CPPFLAGS@ + PACKAGE_NAME := @PACKAGE_NAME@ diff --git a/meta/recipes-support/libnl/libnl_1.1.bb b/meta/recipes-support/libnl/libnl_1.1.bb new file mode 100644 index 0000000000..683df9159f --- /dev/null +++ b/meta/recipes-support/libnl/libnl_1.1.bb @@ -0,0 +1,16 @@ +DESCRIPTION = "libnl is a library for applications dealing with netlink sockets." +HOMEPAGE = "http://www.infradead.org/~tgr/libnl/" +SECTION = "libs/network" +PRIORITY = "optional" + +LICENSE = "LGPLv2.1" +LIC_FILES_CHKSUM = "file://COPYING;md5=2b41e13261a330ee784153ecbb6a82bc \ + file://src/utils.c;beginline=4;endline=9;md5=6e99dfba5cfd64e92b4eb2c7b31e5e4e" + +PR = "r1" + +SRC_URI= "http://www.infradead.org/~tgr/libnl/files/${PN}-${PV}.tar.gz \ + file://local-includes.patch;apply=yes \ + file://compilefix.patch;apply=yes" + +inherit autotools pkgconfig diff --git a/meta/recipes-support/liboil/liboil-0.3.17/no-tests.patch b/meta/recipes-support/liboil/liboil-0.3.17/no-tests.patch new file mode 100644 index 0000000000..00cf5d7431 --- /dev/null +++ b/meta/recipes-support/liboil/liboil-0.3.17/no-tests.patch @@ -0,0 +1,22 @@ +--- liboil-0.3.9/liboil/liboilfunction.c.old 2006-09-18 13:03:20.000000000 +0100 ++++ liboil-0.3.9/liboil/liboilfunction.c 2006-09-18 13:04:10.000000000 +0100 +@@ -345,7 +345,9 @@ + return; + } + +- test = oil_test_new (klass); ++ klass->chosen_impl = klass->reference_impl; ++ klass->func = klass->reference_impl->func; ++/* test = oil_test_new (klass); + if (test == NULL) { + OIL_ERROR ("failed to test function class %s", klass->name); + return; +@@ -385,7 +387,7 @@ + klass->chosen_impl = min_impl; + klass->func = min_impl->func; + +- oil_test_free (test); ++ oil_test_free (test);*/ + } + + static void diff --git a/meta/recipes-support/liboil/liboil_0.3.17.bb b/meta/recipes-support/liboil/liboil_0.3.17.bb new file mode 100644 index 0000000000..8ba303069d --- /dev/null +++ b/meta/recipes-support/liboil/liboil_0.3.17.bb @@ -0,0 +1,20 @@ +DESCRIPTION = "Liboil is a library of simple functions that are optimized for various CPUs." +HOMEPAGE = "http://liboil.freedesktop.org/" +BUGTRACKER = "https://bugs.freedesktop.org/" + +LICENSE = "BSD" +LIC_FILES_CHKSUM = "file://COPYING;md5=ad80780d9c5205d63481a0184e199a15 \ + file://liboil/liboil.h;endline=28;md5=95c794a66b88800d949fed17e437d9fb \ + file://liboil/liboilcpu.c;endline=28;md5=89da69a61d88eedcba066f42353fb75a \ + file://examples/example1.c;endline=29;md5=9d4dad9fcbbdf0441ee063f8af5170c9 \ + file://testsuite/trans.c;endline=29;md5=380ecd43121fe3dcc0d8d7e5984f283d" + +DEPENDS = "glib-2.0" +PR = "r2" + +SRC_URI = "http://liboil.freedesktop.org/download/${P}.tar.gz \ + file://no-tests.patch;patch=1" + +inherit autotools pkgconfig + +ARM_INSTRUCTION_SET = "arm" diff --git a/meta/recipes-support/libpcre/files/pcre-cross.patch b/meta/recipes-support/libpcre/files/pcre-cross.patch new file mode 100644 index 0000000000..0626fb347a --- /dev/null +++ b/meta/recipes-support/libpcre/files/pcre-cross.patch @@ -0,0 +1,25 @@ +To be upstreamable, this patch requires check for *_FOR_BUILD, otherwise +it needs to pass special variables. + +It would be nice to implement per-target compiler specification to +automake, as it is done for linker. + +Even better it would be nice to implement native build time targets in +automake. + +Index: pcre-7.6/Makefile.am +=================================================================== +--- pcre-7.6.orig/Makefile.am 2008-01-23 17:58:28.000000000 +0000 ++++ pcre-7.6/Makefile.am 2008-04-03 22:32:00.000000000 +0000 +@@ -147,6 +147,11 @@ + + noinst_PROGRAMS += dftables + dftables_SOURCES = dftables.c ++dftables_LINK = $(LINK_FOR_BUILD) -o $@ ++dftables_LDFLAGS = $(LDFLAGS_FOR_BUILD) ++ ++dftables.o: $(srcdir)/dftables.c ++ $(CC_FOR_BUILD) -c $(CFLAGS_FOR_BUILD) -o $@ $(srcdir)/dftables.c + + pcre_chartables.c: dftables$(EXEEXT) + ./dftables$(EXEEXT) $@ diff --git a/meta/recipes-support/libpcre/libpcre_8.10.bb b/meta/recipes-support/libpcre/libpcre_8.10.bb new file mode 100644 index 0000000000..840d74a658 --- /dev/null +++ b/meta/recipes-support/libpcre/libpcre_8.10.bb @@ -0,0 +1,53 @@ +DESCRIPTION = "Perl-compatible regular expression library. PCRE has its own native \ +API, but a set of 'wrapper' functions that are based on the POSIX API \ +are also supplied in the library libpcreposix. Note that this just \ +provides a POSIX calling interface to PCRE; the regular expressions \ +themselves still follow Perl syntax and semantics. The header file for \ +the POSIX-style functions is called pcreposix.h." +SECTION = "devel" +PR = "r4" +LICENSE = "BSD" +SRC_URI = "${SOURCEFORGE_MIRROR}/pcre/pcre-${PV}.tar.bz2 \ + file://pcre-cross.patch;patch=1" +S = "${WORKDIR}/pcre-${PV}" + +PROVIDES = "pcre" + +inherit autotools binconfig + +PARALLEL_MAKE = "" + +CFLAGS_append = " -D_REENTRANT" +CXXFLAGS_powerpc += "-lstdc++" +EXTRA_OECONF = " --with-link-size=2 --enable-newline-is-lf --with-match-limit=10000000 --enable-rebuild-chartables --enable-utf8" + +do_compile () { + # stop libtool from trying to link with host libraries - fix from #33 + # this resolve build problem on amd64 - #1015 + if [ -e ${S}/${TARGET_SYS}-libtool ] ; then + sed -i 's:-L\$:-L${STAGING_LIBDIR} -L\$:' ${S}/${TARGET_SYS}-libtool + else + ln -sf ${S}/libtool ${S}/${TARGET_SYS}-libtool + sed -i 's:-L\$:-L${STAGING_LIBDIR} -L\$:' ${S}/${TARGET_SYS}-libtool + fi + + # The generation of dftables can lead to timestamp problems with ccache + # because the generated config.h seems newer. It is sufficient to ensure that the + # attempt to build dftables inside make will actually work (foo_FOR_BUILD is + # only used for this). + oe_runmake CC_FOR_BUILD="${BUILD_CC}" CFLAGS_FOR_BUILD="-DLINK_SIZE=2 -I${S}/include" LINK_FOR_BUILD="${BUILD_CC} -L${S}/lib" +} + +python populate_packages_prepend () { + pcre_libdir = bb.data.expand('${libdir}', d) + pcre_libdir_dbg = bb.data.expand('${libdir}/.debug', d) + do_split_packages(d, pcre_libdir, '^lib(.*)\.so$', 'lib%s-dev', 'libpcre %s development package', extra_depends='${PN}-dev', allow_links=True) + do_split_packages(d, pcre_libdir, '^lib(.*)\.la$', 'lib%s-dev', 'libpcre %s development package', extra_depends='${PN}-dev') + do_split_packages(d, pcre_libdir, '^lib(.*)\.a$', 'lib%s-dev', 'libpcre %s development package', extra_depends='${PN}-dev') + do_split_packages(d, pcre_libdir, '^lib(.*)\.so\.*', 'lib%s', 'libpcre %s library', extra_depends='', allow_links=True) +} + +FILES_${PN} = "${libdir}/libpcre.so.*" +FILES_${PN}-dev += "${bindir}/*" + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-support/libproxy/libproxy_0.4.3.bb b/meta/recipes-support/libproxy/libproxy_0.4.3.bb new file mode 100644 index 0000000000..6c0b7a50c6 --- /dev/null +++ b/meta/recipes-support/libproxy/libproxy_0.4.3.bb @@ -0,0 +1,26 @@ +DESCRIPTION = "A library that provides automatic proxy configuration management" +HOMEPAGE = "http://code.google.com/p/libproxy/" +BUGTRACKER = "http://code.google.com/p/libproxy/issues/list" +SECTION = "libs" +LICENSE = "LGPLv2.1+" +LIC_FILES_CHKSUM = "file://COPYING;md5=7d7044444a7b1b116e8783edcdb44ff4 \ + file://utils/proxy.c;beginline=1;endline=18;md5=55152a1006d7dafbef32baf9c30a99c0" + + +DEPENDS = "virtual/libx11 xmu gconf-dbus" + +SRC_URI = "http://libproxy.googlecode.com/files/libproxy-${PV}.tar.gz" + +PR = "r1" + +inherit cmake pkgconfig + +EXTRA_OECMAKE = "-DWITH_WEBKIT=no -DWITH_GNOME=yes -DWITH_KDE4=no \ + -DWITH_PYTHON=no -DWITH_PERL=no -DWITH_MOZJS=no -DWITH_NM=no" + +FILES_${PN}-dbg += "${libdir}/libproxy/0.4.2/plugins/" + +do_configure_prepend() { + export HOST_SYS=${HOST_SYS} + export BUILD_SYS=${BUILD_SYS} +} diff --git a/meta/recipes-support/libsoup/libsoup-2.4_2.31.2.bb b/meta/recipes-support/libsoup/libsoup-2.4_2.31.2.bb new file mode 100644 index 0000000000..9a00e07da0 --- /dev/null +++ b/meta/recipes-support/libsoup/libsoup-2.4_2.31.2.bb @@ -0,0 +1,17 @@ +DESCRIPTION = "An HTTP library implementation in C" +HOMEPAGE = "http://www.gnome.org/" +BUGTRACKER = "https://bugzilla.gnome.org/" + +LICENSE = "LGPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605" + +SECTION = "x11/gnome/libs" +PR = "r0" + +DEPENDS = "glib-2.0 gnutls libxml2 libproxy sqlite3 libgnome-keyring" + +SRC_URI = "http://ftp.gnome.org/pub/GNOME/sources/libsoup/2.31/libsoup-${PV}.tar.bz2" +S = "${WORKDIR}/libsoup-${PV}" + +inherit autotools pkgconfig + diff --git a/meta/recipes-support/libsoup/libsoup-2.4_2.4.1.bb b/meta/recipes-support/libsoup/libsoup-2.4_2.4.1.bb new file mode 100644 index 0000000000..f48ac3d6c9 --- /dev/null +++ b/meta/recipes-support/libsoup/libsoup-2.4_2.4.1.bb @@ -0,0 +1,11 @@ +DESCRIPTION = "An HTTP library implementation in C" +LICENSE = "GPL" +SECTION = "x11/gnome/libs" + +DEPENDS = "glib-2.0 gnutls libxml2" + +SRC_URI = "http://ftp.gnome.org/pub/GNOME/sources/libsoup/2.4/libsoup-${PV}.tar.bz2" +S = "${WORKDIR}/libsoup-${PV}" + +inherit autotools pkgconfig + diff --git a/meta/recipes-support/libsoup/libsoup_2.2.100.bb b/meta/recipes-support/libsoup/libsoup_2.2.100.bb new file mode 100644 index 0000000000..94efb7f676 --- /dev/null +++ b/meta/recipes-support/libsoup/libsoup_2.2.100.bb @@ -0,0 +1,14 @@ +DESCRIPTION = "An HTTP library implementation in C" +LICENSE = "GPL" +SECTION = "x11/gnome/libs" +PR = "r1" + +DEPENDS = "glib-2.0 gnutls libxml2" + +SRC_URI = "http://ftp.gnome.org/pub/GNOME/sources/${PN}/2.2/${PN}-${PV}.tar.bz2" + +inherit autotools pkgconfig + +FILES_${PN} = "${libdir}/lib*.so.*" +FILES_${PN}-dev = "${includedir}/ ${libdir}/" +FILES_${PN}-doc = "${datadir}/" diff --git a/meta/recipes-support/liburcu/liburcu_0.4.6.bb b/meta/recipes-support/liburcu/liburcu_0.4.6.bb new file mode 100644 index 0000000000..503b561d37 --- /dev/null +++ b/meta/recipes-support/liburcu/liburcu_0.4.6.bb @@ -0,0 +1,24 @@ +DESCRIPTION = "The userspace read-copy update library by Mathieu Desnoyers" +HOMEPAGE = "http://lttng.org/urcu" +BUGTRACKER = "n/a" + +LICENSE = "LGPLv2.1+ & MIT-style" +LIC_FILES_CHKSUM = "file://LICENSE;md5=b472dc110d38774921e1d5ccb0065fff \ + file://urcu.h;beginline=4;endline=32;md5=4de0d68d3a997643715036d2209ae1d9 \ + file://urcu/uatomic_arch_x86.h;beginline=4;endline=21;md5=220552f72c55b102f2ee35929734ef42" + +PR = "r0" + +SRC_URI = "http://lttng.org/files/urcu/userspace-rcu-${PV}.tar.bz2" + +S = "${WORKDIR}/userspace-rcu-${PV}" + +inherit autotools + +# liburcu, which is only used by lttng-ust, may not build on other +# platforms, e.g., on ARM, liburcu is only supported on ARMv7l while poky +# only supports armv4/armv4t/armv5te. 1 more example: liburcu doesn't support +# MIPS now. +# So here let us first suppport x86/powerpc platforms now. +COMPATIBLE_HOST = '(x86_64.*|i.86.*|powerpc.*)-linux' + diff --git a/meta/recipes-support/libusb/libusb-compat-0.1.3/0.1.0-beta1-gcc3.4-fix.patch b/meta/recipes-support/libusb/libusb-compat-0.1.3/0.1.0-beta1-gcc3.4-fix.patch new file mode 100644 index 0000000000..501ba3fb29 --- /dev/null +++ b/meta/recipes-support/libusb/libusb-compat-0.1.3/0.1.0-beta1-gcc3.4-fix.patch @@ -0,0 +1,13 @@ +Index: libusb-compat-0.1.0-beta1/configure.ac +=================================================================== +--- libusb-compat-0.1.0-beta1.orig/configure.ac 2008-07-21 13:14:42.000000000 +0200 ++++ libusb-compat-0.1.0-beta1/configure.ac 2008-07-21 13:15:03.000000000 +0200 +@@ -55,7 +55,7 @@ + CFLAGS="$saved_cflags" + + AC_DEFINE([API_EXPORTED], [__attribute__((visibility("default")))], [Default visibility]) +-AM_CFLAGS="-std=gnu99 $inline_cflags -Wall -Wundef -Wunused -Wstrict-prototypes -Werror-implicit-function-declaration -Wno-pointer-sign -Wshadow" ++AM_CFLAGS="-std=gnu99 $inline_cflags -Wall -Wundef -Wunused -Wstrict-prototypes -Werror-implicit-function-declaration -Wshadow" + AC_SUBST(AM_CFLAGS) + + AC_CONFIG_FILES([libusb.pc] [libusb-config] [Makefile] [libusb/Makefile] [examples/Makefile]) diff --git a/meta/recipes-support/libusb/libusb-compat_0.1.3.bb b/meta/recipes-support/libusb/libusb-compat_0.1.3.bb new file mode 100644 index 0000000000..e8d6338e57 --- /dev/null +++ b/meta/recipes-support/libusb/libusb-compat_0.1.3.bb @@ -0,0 +1,23 @@ +DESCRIPTION = "libusb-0.1 compatible layer for libusb1, a drop-in replacement \ +that aims to look, feel and behave exactly like libusb-0.1" +HOMEPAGE = "http://www.libusb.org/" +BUGTRACKER = "http://www.libusb.org/report" +SECTION = "libs" + +LICENSE = "LGPLv2.1+" +LIC_FILES_CHKSUM = "file://LICENSE;md5=f2ac5f3ac4835e8f91324a26a590a423" +DEPENDS = "libusb1" + +# Few packages are known not to work with libusb-compat (e.g. libmtp-1.0.0), +# so here libusb-0.1 is removed completely instead of adding virtual/libusb0. +# Besides, libusb-0.1 uses a per 1ms polling that hurts a lot to power +# consumption. +PROVIDES = "libusb" + +PE = "1" +PR = "r0" + +SRC_URI = "${SOURCEFORGE_MIRROR}/libusb/libusb-compat-${PV}.tar.bz2 \ + file://0.1.0-beta1-gcc3.4-fix.patch" + +inherit autotools pkgconfig binconfig diff --git a/meta/recipes-support/libusb/libusb1_1.0.8.bb b/meta/recipes-support/libusb/libusb1_1.0.8.bb new file mode 100644 index 0000000000..26a535ab4e --- /dev/null +++ b/meta/recipes-support/libusb/libusb1_1.0.8.bb @@ -0,0 +1,14 @@ +DESCRIPTION = "userspace library to access USB (version 1.0)" +HOMEPAGE = "http://libusb.sf.net" +BUGTRACKER = "http://www.libusb.org/report" +SECTION = "libs" + +LICENSE = "LGPLv2.1+" +LIC_FILES_CHKSUM = "file://COPYING;md5=fbc093901857fcd118f065f900982c24" + +PR = "r0" + +SRC_URI = "${SOURCEFORGE_MIRROR}/libusb/libusb-${PV}.tar.bz2" +S = "${WORKDIR}/libusb-${PV}" + +inherit autotools pkgconfig diff --git a/meta/recipes-support/libxslt/libxslt/pkgconfig_fix.patch b/meta/recipes-support/libxslt/libxslt/pkgconfig_fix.patch new file mode 100644 index 0000000000..d21663896f --- /dev/null +++ b/meta/recipes-support/libxslt/libxslt/pkgconfig_fix.patch @@ -0,0 +1,22 @@ +Index: libxslt-1.1.22/libexslt.pc.in +=================================================================== +--- libxslt-1.1.22.orig/libexslt.pc.in 2008-03-19 16:52:20.000000000 +0000 ++++ libxslt-1.1.22/libexslt.pc.in 2008-03-19 16:55:49.000000000 +0000 +@@ -8,5 +8,5 @@ + Version: @LIBEXSLT_VERSION@ + Description: EXSLT Extension library + Requires: libxml-2.0 +-Libs: @EXSLT_LIBDIR@ @EXSLT_LIBS@ ++Libs: -lexslt @EXSLT_LIBDIR@ @M_LIBS@ + Cflags: @EXSLT_INCLUDEDIR@ +Index: libxslt-1.1.22/libxslt.pc.in +=================================================================== +--- libxslt-1.1.22.orig/libxslt.pc.in 2008-03-19 16:52:20.000000000 +0000 ++++ libxslt-1.1.22/libxslt.pc.in 2008-03-19 16:55:38.000000000 +0000 +@@ -8,5 +8,5 @@ + Version: @VERSION@ + Description: XSLT library version 2. + Requires: libxml-2.0 +-Libs: @XSLT_LIBDIR@ @XSLT_LIBS@ ++Libs: -lxslt @XSLT_LIBDIR@ @M_LIBS@ + Cflags: @XSLT_INCLUDEDIR@ diff --git a/meta/recipes-support/libxslt/libxslt_1.1.26.bb b/meta/recipes-support/libxslt/libxslt_1.1.26.bb new file mode 100644 index 0000000000..b5726974f1 --- /dev/null +++ b/meta/recipes-support/libxslt/libxslt_1.1.26.bb @@ -0,0 +1,26 @@ +DESCRIPTION = "GNOME XSLT library" +HOMEPAGE = "http://xmlsoft.org/XSLT/" +BUGTRACKER = "https://bugzilla.gnome.org/" + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=0cd9a07afbeb24026c9b03aecfeba458" + +SECTION = "libs" +PRIORITY = "optional" +DEPENDS = "libxml2 (>=2.6.27)" +PR = "r0" + +SRC_URI = "ftp://xmlsoft.org/libxslt//libxslt-${PV}.tar.gz \ + file://pkgconfig_fix.patch;patch=1" +S = "${WORKDIR}/libxslt-${PV}" + +inherit autotools pkgconfig + +EXTRA_OECONF = "--without-python --without-debug --without-mem-debug --without-crypto" + +PACKAGES = "${PN}-dbg ${PN}-dev ${PN}-utils ${PN} ${PN}-doc ${PN}-locale" + +FILES_${PN}-dev += "${bindir}/xslt-config" +FILES_${PN}-utils += "${bindir}" + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-support/lzo/lzo-2.03/acinclude.m4 b/meta/recipes-support/lzo/lzo-2.03/acinclude.m4 new file mode 100644 index 0000000000..c4d2ccd5b5 --- /dev/null +++ b/meta/recipes-support/lzo/lzo-2.03/acinclude.m4 @@ -0,0 +1,358 @@ + +AC_DEFUN([mfx_ACC_CHECK_ENDIAN], [ +AC_C_BIGENDIAN([AC_DEFINE(ACC_ABI_BIG_ENDIAN,1,[Define to 1 if your machine is big endian.])],[AC_DEFINE(ACC_ABI_LITTLE_ENDIAN,1,[Define to 1 if your machine is little endian.])]) +])# + +AC_DEFUN([mfx_ACC_CHECK_HEADERS], [ +AC_HEADER_TIME +AC_CHECK_HEADERS([assert.h ctype.h dirent.h errno.h fcntl.h float.h limits.h malloc.h memory.h setjmp.h signal.h stdarg.h stddef.h stdint.h stdio.h stdlib.h string.h strings.h time.h unistd.h utime.h sys/stat.h sys/time.h sys/types.h sys/wait.h]) +])# + +AC_DEFUN([mfx_ACC_CHECK_FUNCS], [ +AC_CHECK_FUNCS(access alloca atexit atoi atol chmod chown ctime difftime fstat gettimeofday gmtime localtime longjmp lstat memcmp memcpy memmove memset mktime qsort raise setjmp signal snprintf strcasecmp strchr strdup strerror strftime stricmp strncasecmp strnicmp strrchr strstr time umask utime vsnprintf) +])# + + +AC_DEFUN([mfx_ACC_CHECK_SIZEOF], [ +AC_CHECK_SIZEOF(short) +AC_CHECK_SIZEOF(int) +AC_CHECK_SIZEOF(long) + +AC_CHECK_SIZEOF(long long) +AC_CHECK_SIZEOF(__int16) +AC_CHECK_SIZEOF(__int32) +AC_CHECK_SIZEOF(__int64) + +AC_CHECK_SIZEOF(void *) +AC_CHECK_SIZEOF(size_t) +AC_CHECK_SIZEOF(ptrdiff_t) +])# + + +# /*********************************************************************** +# // Check for ACC_conformance +# ************************************************************************/ + +AC_DEFUN([mfx_ACC_ACCCHK], [ +mfx_tmp=$1 +mfx_save_CPPFLAGS=$CPPFLAGS +dnl in Makefile.in $(INCLUDES) will be before $(CPPFLAGS), so we mimic this here +test "X$mfx_tmp" = "X" || CPPFLAGS="$mfx_tmp $CPPFLAGS" + +AC_MSG_CHECKING([whether your compiler passes the ACC conformance test]) + +AC_LANG_CONFTEST([AC_LANG_PROGRAM( +[[#define ACC_CONFIG_NO_HEADER 1 +#include "acc/acc.h" +#include "acc/acc_incd.h" +#undef ACCCHK_ASSERT +#define ACCCHK_ASSERT(expr) ACC_COMPILE_TIME_ASSERT_HEADER(expr) +#include "acc/acc_chk.ch" +#undef ACCCHK_ASSERT +static void test_acc_compile_time_assert(void) { +#define ACCCHK_ASSERT(expr) ACC_COMPILE_TIME_ASSERT(expr) +#include "acc/acc_chk.ch" +#undef ACCCHK_ASSERT +} +#undef NDEBUG +#include +static int test_acc_run_time_assert(int r) { +#define ACCCHK_ASSERT(expr) assert(expr); +#include "acc/acc_chk.ch" +#undef ACCCHK_ASSERT +return r; +} +]], [[ +test_acc_compile_time_assert(); +if (test_acc_run_time_assert(1) != 1) return 1; +]] +)]) + +mfx_tmp=FAILED +_AC_COMPILE_IFELSE([], [mfx_tmp=yes]) +rm -f conftest.$ac_ext conftest.$ac_objext + +CPPFLAGS=$mfx_save_CPPFLAGS + +AC_MSG_RESULT([$mfx_tmp]) +case x$mfx_tmp in + xpassed | xyes) ;; + *) + AC_MSG_NOTICE([]) + AC_MSG_NOTICE([Your compiler failed the ACC conformance test - for details see ]) + AC_MSG_NOTICE([`config.log'. Please check that log file and consider sending]) + AC_MSG_NOTICE([a patch or bug-report to <${PACKAGE_BUGREPORT}>.]) + AC_MSG_NOTICE([Thanks for your support.]) + AC_MSG_NOTICE([]) + AC_MSG_ERROR([ACC conformance test failed. Stop.]) +dnl AS_EXIT + ;; +esac +])# mfx_ACC_ACCCHK + + +# /*********************************************************************** +# // Check for ACC_conformance +# ************************************************************************/ + +AC_DEFUN([mfx_MINIACC_ACCCHK], [ +mfx_tmp=$1 +mfx_save_CPPFLAGS=$CPPFLAGS +dnl in Makefile.in $(INCLUDES) will be before $(CPPFLAGS), so we mimic this here +test "X$mfx_tmp" = "X" || CPPFLAGS="$mfx_tmp $CPPFLAGS" + +AC_MSG_CHECKING([whether your compiler passes the ACC conformance test]) + +AC_LANG_CONFTEST([AC_LANG_PROGRAM( +[[#define ACC_CONFIG_NO_HEADER 1 +#define ACC_WANT_ACC_INCD_H 1 +#include $2 + +#define ACC_WANT_ACC_CHK_CH 1 +#undef ACCCHK_ASSERT +#define ACCCHK_ASSERT(expr) ACC_COMPILE_TIME_ASSERT_HEADER(expr) +#include $2 + +#define ACC_WANT_ACC_CHK_CH 1 +#undef ACCCHK_ASSERT +#define ACCCHK_ASSERT(expr) ACC_COMPILE_TIME_ASSERT(expr) +static void test_acc_compile_time_assert(void) { +#include $2 +} + +#undef NDEBUG +#include +#define ACC_WANT_ACC_CHK_CH 1 +#undef ACCCHK_ASSERT +#define ACCCHK_ASSERT(expr) assert(expr); +static int test_acc_run_time_assert(int r) { +#include $2 +return r; +} +]], [[ +test_acc_compile_time_assert(); +if (test_acc_run_time_assert(1) != 1) return 1; +]] +)]) + +mfx_tmp=FAILED +_AC_COMPILE_IFELSE([], [mfx_tmp=yes]) +rm -f conftest.$ac_ext conftest.$ac_objext + +CPPFLAGS=$mfx_save_CPPFLAGS + +AC_MSG_RESULT([$mfx_tmp]) +case x$mfx_tmp in + xpassed | xyes) ;; + *) + AC_MSG_NOTICE([]) + AC_MSG_NOTICE([Your compiler failed the ACC conformance test - for details see ]) + AC_MSG_NOTICE([`config.log'. Please check that log file and consider sending]) + AC_MSG_NOTICE([a patch or bug-report to <${PACKAGE_BUGREPORT}>.]) + AC_MSG_NOTICE([Thanks for your support.]) + AC_MSG_NOTICE([]) + AC_MSG_ERROR([ACC conformance test failed. Stop.]) +dnl AS_EXIT + ;; +esac +])# mfx_MINIACC_ACCCHK + + + +# serial 1 + +AC_DEFUN([mfx_PROG_CPPFLAGS], [ +AC_MSG_CHECKING([whether the C preprocessor needs special flags]) + +AC_LANG_CONFTEST([AC_LANG_PROGRAM( +[[#include +#if (32767 >= 4294967295ul) || (65535u >= 4294967295ul) +# include "your C preprocessor is broken 1" +#elif (0xffffu == 0xfffffffful) +# include "your C preprocessor is broken 2" +#elif (32767 >= ULONG_MAX) || (65535u >= ULONG_MAX) +# include "your C preprocessor is broken 3" +#endif +]], [[ ]] +)]) + +mfx_save_CPPFLAGS=$CPPFLAGS +mfx_tmp=ERROR +for mfx_arg in "" -no-cpp-precomp +do + CPPFLAGS="$mfx_arg $mfx_save_CPPFLAGS" + _AC_COMPILE_IFELSE([], +[mfx_tmp=$mfx_arg +break]) +done +CPPFLAGS=$mfx_save_CPPFLAGS +rm -f conftest.$ac_ext conftest.$ac_objext +case x$mfx_tmp in + x) + AC_MSG_RESULT([none needed]) ;; + xERROR) + AC_MSG_RESULT([ERROR]) + AC_MSG_ERROR([your C preprocessor is broken - for details see config.log]) + ;; + *) + AC_MSG_RESULT([$mfx_tmp]) + CPPFLAGS="$mfx_tmp $CPPFLAGS" + ;; +esac +])# mfx_PROG_CPPFLAGS + + + +# serial 3 + +AC_DEFUN([mfx_CHECK_HEADER_SANE_LIMITS_H], [ +AC_CACHE_CHECK([whether limits.h is sane], +mfx_cv_header_sane_limits_h, +[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include +#if (32767 >= 4294967295ul) || (65535u >= 4294967295ul) +# if defined(__APPLE__) && defined(__GNUC__) +# error "your preprocessor is broken - use compiler option -no-cpp-precomp" +# else +# include "your preprocessor is broken" +# endif +#endif +#define MFX_0xffff 0xffff +#define MFX_0xffffffffL 4294967295ul +#if !defined(CHAR_BIT) || (CHAR_BIT != 8) +# include "error CHAR_BIT" +#endif +#if !defined(UCHAR_MAX) +# include "error UCHAR_MAX 1" +#endif +#if !defined(USHRT_MAX) +# include "error USHRT_MAX 1" +#endif +#if !defined(UINT_MAX) +# include "error UINT_MAX 1" +#endif +#if !defined(ULONG_MAX) +# include "error ULONG_MAX 1" +#endif +#if !defined(SHRT_MAX) +# include "error SHRT_MAX 1" +#endif +#if !defined(INT_MAX) +# include "error INT_MAX 1" +#endif +#if !defined(LONG_MAX) +# include "error LONG_MAX 1" +#endif +#if (UCHAR_MAX < 1) +# include "error UCHAR_MAX 2" +#endif +#if (USHRT_MAX < 1) +# include "error USHRT_MAX 2" +#endif +#if (UINT_MAX < 1) +# include "error UINT_MAX 2" +#endif +#if (ULONG_MAX < 1) +# include "error ULONG_MAX 2" +#endif +#if (UCHAR_MAX < 0xff) +# include "error UCHAR_MAX 3" +#endif +#if (USHRT_MAX < MFX_0xffff) +# include "error USHRT_MAX 3" +#endif +#if (UINT_MAX < MFX_0xffff) +# include "error UINT_MAX 3" +#endif +#if (ULONG_MAX < MFX_0xffffffffL) +# include "error ULONG_MAX 3" +#endif +#if (USHRT_MAX > UINT_MAX) +# include "error USHRT_MAX vs UINT_MAX" +#endif +#if (UINT_MAX > ULONG_MAX) +# include "error UINT_MAX vs ULONG_MAX" +#endif +]], [[ +#if (USHRT_MAX == MFX_0xffff) +{ typedef char a_short2a[1 - 2 * !(sizeof(short) == 2)]; } +#elif (USHRT_MAX >= MFX_0xffff) +{ typedef char a_short2b[1 - 2 * !(sizeof(short) > 2)]; } +#endif +#if (UINT_MAX == MFX_0xffff) +{ typedef char a_int2a[1 - 2 * !(sizeof(int) == 2)]; } +#elif (UINT_MAX >= MFX_0xffff) +{ typedef char a_int2b[1 - 2 * !(sizeof(int) > 2)]; } +#endif +#if (ULONG_MAX == MFX_0xffff) +{ typedef char a_long2a[1 - 2 * !(sizeof(long) == 2)]; } +#elif (ULONG_MAX >= MFX_0xffff) +{ typedef char a_long2b[1 - 2 * !(sizeof(long) > 2)]; } +#endif +#if (USHRT_MAX == MFX_0xffffffffL) +{ typedef char a_short4a[1 - 2 * !(sizeof(short) == 4)]; } +#elif (USHRT_MAX >= MFX_0xffffffffL) +{ typedef char a_short4b[1 - 2 * !(sizeof(short) > 4)]; } +#endif +#if (UINT_MAX == MFX_0xffffffffL) +{ typedef char a_int4a[1 - 2 * !(sizeof(int) == 4)]; } +#elif (UINT_MAX >= MFX_0xffffffffL) +{ typedef char a_int4b[1 - 2 * !(sizeof(int) > 4)]; } +#endif +#if (ULONG_MAX == MFX_0xffffffffL) +{ typedef char a_long4a[1 - 2 * !(sizeof(long) == 4)]; } +#elif (ULONG_MAX >= MFX_0xffffffffL) +{ typedef char a_long4b[1 - 2 * !(sizeof(long) > 4)]; } +#endif +]])], +[mfx_cv_header_sane_limits_h=yes], +[mfx_cv_header_sane_limits_h=no])]) +]) + +# /*********************************************************************** +# // standard +# ************************************************************************/ + +AC_DEFUN([mfx_LZO_CHECK_ENDIAN], [ +AC_C_BIGENDIAN([AC_DEFINE(LZO_ABI_BIG_ENDIAN,1,[Define to 1 if your machine is big endian.])],[AC_DEFINE(LZO_ABI_LITTLE_ENDIAN,1,[Define to 1 if your machine is little endian.])]) +])# + + +# /*********************************************************************** +# // +# ************************************************************************/ + +dnl more types which are not yet covered by ACC + +AC_DEFUN([mfx_CHECK_SIZEOF], [ +AC_CHECK_SIZEOF(__int32) +AC_CHECK_SIZEOF(intmax_t) +AC_CHECK_SIZEOF(uintmax_t) +AC_CHECK_SIZEOF(intptr_t) +AC_CHECK_SIZEOF(uintptr_t) + +AC_CHECK_SIZEOF(float) +AC_CHECK_SIZEOF(double) +AC_CHECK_SIZEOF(long double) + +AC_CHECK_SIZEOF(dev_t) +AC_CHECK_SIZEOF(fpos_t) +AC_CHECK_SIZEOF(mode_t) +AC_CHECK_SIZEOF(off_t) +AC_CHECK_SIZEOF(ssize_t) +AC_CHECK_SIZEOF(time_t) +])# + + + +AC_DEFUN([mfx_CHECK_LIB_WINMM], [ +if test "X$GCC" = Xyes; then +case $host_os in +cygwin* | mingw* | pw32*) + test "X$LIBS" != "X" && LIBS="$LIBS " + LIBS="${LIBS}-lwinmm" ;; +*) + ;; +esac +fi +])# + diff --git a/meta/recipes-support/lzo/lzo-2.03/autofoo.patch b/meta/recipes-support/lzo/lzo-2.03/autofoo.patch new file mode 100644 index 0000000000..5762f4c6e2 --- /dev/null +++ b/meta/recipes-support/lzo/lzo-2.03/autofoo.patch @@ -0,0 +1,17 @@ +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +Index: lzo-2.02/configure.ac +=================================================================== +--- lzo-2.02.orig/configure.ac 2007-08-08 15:28:14.000000000 +0100 ++++ lzo-2.02/configure.ac 2007-08-08 15:28:21.000000000 +0100 +@@ -47,7 +47,7 @@ AC_CANONICAL_TARGET + AM_MAINTAINER_MODE + + if test -z "$ac_abs_top_srcdir"; then +- _AC_SRCPATHS(.) ++ _AC_SRCDIRS(.) + fi + if test -r .Conf.settings1; then + . ./.Conf.settings1 diff --git a/meta/recipes-support/lzo/lzo_2.03.bb b/meta/recipes-support/lzo/lzo_2.03.bb new file mode 100644 index 0000000000..9657d97e59 --- /dev/null +++ b/meta/recipes-support/lzo/lzo_2.03.bb @@ -0,0 +1,22 @@ +DESCRIPTION = "Lossless data compression library" +HOMEPAGE = "http://www.oberhumer.com/opensource/lzo/" +SECTION = "libs" +PRIORITY = "optional" +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=8cad52263e636e25377bc18420118101 \ + file://src/lzo_init.c;beginline=5;endline=33;md5=094776237523b2e93124cf09b9c76aef" +PR = "r0" + +SRC_URI = "http://www.oberhumer.com/opensource/lzo/download/lzo-${PV}.tar.gz \ + file://autofoo.patch \ + file://acinclude.m4" + +inherit autotools + +EXTRA_OECONF = "--enable-shared" + +do_configure_prepend () { + cp ${WORKDIR}/acinclude.m4 ${S}/ +} + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-support/mpfr/mpfr.inc b/meta/recipes-support/mpfr/mpfr.inc new file mode 100644 index 0000000000..dbb859fe3e --- /dev/null +++ b/meta/recipes-support/mpfr/mpfr.inc @@ -0,0 +1,6 @@ +DESCRIPTION = "A C library for multiple-precision floating-point computations with exact rounding" +HOMEPAGE = "http://www.mpfr.org/" +LICENSE = "LGPLv3+" +SECTION = "devel" + +inherit autotools diff --git a/meta/recipes-support/mpfr/mpfr_3.0.0.bb b/meta/recipes-support/mpfr/mpfr_3.0.0.bb new file mode 100644 index 0000000000..188a5d95cd --- /dev/null +++ b/meta/recipes-support/mpfr/mpfr_3.0.0.bb @@ -0,0 +1,9 @@ +require mpfr.inc + +DEPENDS = "gmp" +PR = "r0" + +SRC_URI = "http://www.mpfr.org/mpfr-${PV}/mpfr-${PV}.tar.bz2" +S = "${WORKDIR}/mpfr-${PV}" + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-support/neon/neon-0.29.3/pkgconfig.patch b/meta/recipes-support/neon/neon-0.29.3/pkgconfig.patch new file mode 100644 index 0000000000..6256d9ab2b --- /dev/null +++ b/meta/recipes-support/neon/neon-0.29.3/pkgconfig.patch @@ -0,0 +1,16 @@ +--- + neon.pc.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- neon-0.28.1.orig/neon.pc.in ++++ neon-0.28.1/neon.pc.in +@@ -4,8 +4,8 @@ libdir=@libdir@ + includedir=@includedir@ + + Name: neon + Description: HTTP/WebDAV client library + Version: @NEON_VERSION@ +-Libs.private: @NEON_LIBS@ ++Libs.private: -L${libdir} -lz -lgcrypt -lgpg-error -lexpat -lgnutls + Libs: -L${libdir} -lneon @NEON_PC_LIBS@ + Cflags: -I${includedir}/neon @NEON_CFLAGS@ diff --git a/meta/recipes-support/neon/neon_0.29.3.bb b/meta/recipes-support/neon/neon_0.29.3.bb new file mode 100644 index 0000000000..bb18893f9e --- /dev/null +++ b/meta/recipes-support/neon/neon_0.29.3.bb @@ -0,0 +1,16 @@ +DESCRIPTION = "neon is an HTTP and WebDAV client library, with a C interface." +HOMEPAGE = "http://www.webdav.org/neon/" +SECTION = "libs" +LICENSE = "LGPLv2+" +LIC_FILES_CHKSUM = "file://src/COPYING.LIB;md5=f30a9716ef3762e3467a2f62bf790f0a \ + file://src/ne_utils.h;beginline=1;endline=20;md5=2caca609538eddaa6f6adf120a218037" +DEPENDS = "zlib libxml2 expat time gnutls" + +PR = "r0" + +SRC_URI = "http://www.webdav.org/${PN}/${P}.tar.gz \ + file://pkgconfig.patch;patch=1" + +inherit autotools binconfig lib_package pkgconfig + +EXTRA_OECONF = "--with-ssl=gnutls --with-libxml2 --with-expat --enable-shared" diff --git a/meta/recipes-support/ohm/ohm/fix_configure.patch b/meta/recipes-support/ohm/ohm/fix_configure.patch new file mode 100644 index 0000000000..e4b774e785 --- /dev/null +++ b/meta/recipes-support/ohm/ohm/fix_configure.patch @@ -0,0 +1,39 @@ +Index: git/configure.in +=================================================================== +--- git.orig/configure.in 2007-12-19 13:43:52.000000000 +0000 ++++ git/configure.in 2008-03-06 23:59:57.000000000 +0000 +@@ -201,9 +201,6 @@ + # Like AC_CHECK_HEADER, but it uses the already-computed -I directories. + AC_DEFUN(AC_CHECK_X_HEADER, [ + ac_save_CPPFLAGS="$CPPFLAGS" +- if test \! -z "$includedir" ; then +- CPPFLAGS="$CPPFLAGS -I$includedir" +- fi + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + AC_CHECK_HEADER([$1],[$2],[$3],[$4]) + CPPFLAGS="$ac_save_CPPFLAGS"]) +@@ -211,9 +208,6 @@ + # Like AC_TRY_COMPILE, but it uses the already-computed -I directories. + AC_DEFUN(AC_TRY_X_COMPILE, [ + ac_save_CPPFLAGS="$CPPFLAGS" +- if test \! -z "$includedir" ; then +- CPPFLAGS="$CPPFLAGS -I$includedir" +- fi + CPPFLAGS="$CPPFLAGS $X_CFLAGS" + AC_TRY_COMPILE([$1], [$2], [$3], [$4]) + CPPFLAGS="$ac_save_CPPFLAGS"]) +@@ -224,14 +218,8 @@ + ac_save_CPPFLAGS="$CPPFLAGS" + ac_save_LDFLAGS="$LDFLAGS" + # ac_save_LIBS="$LIBS" +- if test \! -z "$includedir" ; then +- CPPFLAGS="$CPPFLAGS -I$includedir" +- fi + # note: $X_CFLAGS includes $x_includes + CPPFLAGS="$CPPFLAGS $X_CFLAGS" +- if test \! -z "$libdir" ; then +- LDFLAGS="$LDFLAGS -L$libdir" +- fi + # note: $X_LIBS includes $x_libraries + LDFLAGS="$LDFLAGS $ALL_X_LIBS" + AC_CHECK_LIB([$1], [$2], [$3], [$4], [$5]) diff --git a/meta/recipes-support/ohm/ohm_git.bb b/meta/recipes-support/ohm/ohm_git.bb new file mode 100644 index 0000000000..2ba78b35ab --- /dev/null +++ b/meta/recipes-support/ohm/ohm_git.bb @@ -0,0 +1,44 @@ +DESCRIPTION = "Open Hardware Manager" +HOMEPAGE = "http://freedesktop.org/Software/ohm" +LICENSE = "LGPL" + +DEPENDS = "gtk+ dbus-glib intltool-native hal" +RDEPENDS_${PN} += "udev hal-info" +SRC_URI = "git://anongit.freedesktop.org/git/ohm/;protocol=git \ + file://fix_configure.patch;patch=1" + +PV = "0.1.2+git-locrev${SRCREV}" +PR = "r1" + +S = "${WORKDIR}/git" + +inherit autotools pkgconfig + +EXTRA_OECONF = "--with-distro=debian \ + --without-xauth \ + --disable-gtk-doc \ + --disable-docbook-docs" + +do_configure_prepend() { + touch gtk-doc.make +} + +OE_LT_RPATH_ALLOW=":${libdir}/libohm:" +OE_LT_RPATH_ALLOW[export]="1" + +PACKAGES =+ "libohm ohm-plugin-x11" + +FILES_${PN}-dev += "${libdir}/ohm/*.a" + +FILES_${PN} = "${sysconfdir} \ + ${bindir}/* \ + ${sbindir}/* \ + ${libdir}/ohm/*.so \ + " + +FILES_libohm = "${libdir}/libohm.so.*" +FILES_ohm-plugin-x11 = "${libdir}/ohm/libohm_x*.so \ + ${libdir}/ohm/libohm_idle.so \ + ${sysconfdir}/ohm/plugins.d/x* \ + ${sysconfdir}/ohm/plugins.d/idle* \ + " diff --git a/meta/recipes-support/openobex/files/disable-cable-test.patch b/meta/recipes-support/openobex/files/disable-cable-test.patch new file mode 100644 index 0000000000..95b636dd8f --- /dev/null +++ b/meta/recipes-support/openobex/files/disable-cable-test.patch @@ -0,0 +1,16 @@ + +# +# Patch managed by http://www.holgerschurig.de/patcher.html +# + +--- openobex-1.2/apps/Makefile.am~disable-cable-test ++++ openobex-1.2/apps/Makefile.am +@@ -6,7 +6,7 @@ + obex_io.c obex_io.h \ + obex_put_common.c obex_put_common.h + +-bin_PROGRAMS = irxfer obex_tcp irobex_palm3 obex_test ++bin_PROGRAMS = irxfer obex_tcp irobex_palm3 + + obex_test_SOURCES = \ + obex_test.c obex_test.h \ diff --git a/meta/recipes-support/openobex/files/libusb_crosscompile_check.patch b/meta/recipes-support/openobex/files/libusb_crosscompile_check.patch new file mode 100644 index 0000000000..20ac70bd1e --- /dev/null +++ b/meta/recipes-support/openobex/files/libusb_crosscompile_check.patch @@ -0,0 +1,13 @@ +Index: openobex-1.5/acinclude.m4 +=================================================================== +--- openobex-1.5.orig/acinclude.m4 2009-02-08 18:30:22.000000000 +0000 ++++ openobex-1.5/acinclude.m4 2009-07-31 09:55:46.000000000 +0100 +@@ -158,7 +158,7 @@ + ;; + *) + PKG_CHECK_MODULES(USB, libusb, usb_lib_found=yes, AC_MSG_RESULT(no)) +- AC_CHECK_FILE(${prefix}/lib/pkgconfig/libusb.pc, REQUIRES="libusb") ++ REQUIRES="libusb" + ;; + esac + AC_SUBST(USB_CFLAGS) diff --git a/meta/recipes-support/openobex/openobex_1.5.bb b/meta/recipes-support/openobex/openobex_1.5.bb new file mode 100644 index 0000000000..dc07ae1353 --- /dev/null +++ b/meta/recipes-support/openobex/openobex_1.5.bb @@ -0,0 +1,23 @@ +DESCRIPTION = "The Openobex project is an open source implementation of the \ +Object Exchange (OBEX) protocol." +HOMEPAGE = "http://openobex.triq.net" +SECTION = "libs" +PROVIDES = "openobex-apps" +DEPENDS = "libusb bluez4" +LICENSE = "GPL" +PR = "r4" + +SRC_URI = "${KERNELORG_MIRROR}/pub/linux/bluetooth/openobex-${PV}.tar.gz \ + file://disable-cable-test.patch;patch=1 \ + file://libusb_crosscompile_check.patch;patch=1" + +inherit autotools binconfig pkgconfig + +EXTRA_OECONF = "--enable-apps --enable-syslog --enable-dump \ + --with-usb=${STAGING_LIBDIR}/.. --with-bluez=${STAGING_LIBDIR}/.." + +# how to stop shlibrename from renaming -apps? +PACKAGES += "openobex-apps" +FILES_${PN} = "${libdir}/lib*.so.*" +FILES_${PN}-dev += "${bindir}/openobex-config" +FILES_${PN}-apps = "${bindir}/*" diff --git a/meta/recipes-support/popt/popt_1.16.bb b/meta/recipes-support/popt/popt_1.16.bb new file mode 100644 index 0000000000..347c0fc4a4 --- /dev/null +++ b/meta/recipes-support/popt/popt_1.16.bb @@ -0,0 +1,14 @@ +DESCRIPTION = "The popt library for parsing command line options." +HOMEPAGE = "http://rpm5.org/" +SECTION = "libs" +DEPENDS = "gettext" + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=cb0613c30af2a8249b8dcc67d3edb06d" +PR = "r0" + +SRC_URI = "http://rpm5.org/files/popt/popt-${PV}.tar.gz" + +inherit autotools + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-support/pth/pth_2.0.7.bb b/meta/recipes-support/pth/pth_2.0.7.bb new file mode 100644 index 0000000000..8ee3cd4cd1 --- /dev/null +++ b/meta/recipes-support/pth/pth_2.0.7.bb @@ -0,0 +1,21 @@ +DESCRIPTION = "GNU Portable Threads" +HOMEPAGE = "http://www.gnu.org/software/pth/" +SECTION = "libs" +PRIORITY = "optional" +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;beginline=12;endline=15;md5=a48af114a80c222cafd37f24370a77b1" +PR = "r1" + +SRC_URI = "${GNU_MIRROR}/pth/pth-${PV}.tar.gz" + +PARALLEL_MAKE="" + +inherit autotools binconfig + +do_configure() { + gnu-configize + oe_runconf +} + +FILES_${PN} = "${libdir}/libpth.so.*" +FILES_${PN}-dev += "${bindir}/pth-config" diff --git a/meta/recipes-support/shared-mime-info/shared-mime-info.inc b/meta/recipes-support/shared-mime-info/shared-mime-info.inc new file mode 100644 index 0000000000..c2e5487019 --- /dev/null +++ b/meta/recipes-support/shared-mime-info/shared-mime-info.inc @@ -0,0 +1,28 @@ +DESCRIPTION = "shared MIME database and spec" +HOMEPAGE = "http://freedesktop.org/wiki/Software/shared-mime-info" +SECTION = "base" + +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3" + +DEPENDS = "libxml2 intltool-native glib-2.0 shared-mime-info-native" +DEPENDS_virtclass-native = "libxml2-native intltool-native glib-2.0-native" +PR = "r0" + +SRC_URI = "http://freedesktop.org/~hadess/shared-mime-info-${PV}.tar.bz2" + +inherit autotools pkgconfig gettext + +EXTRA_OECONF = "--disable-update-mimedb" + +FILES_${PN} += "${datadir}/mime" +FILES_${PN}-dev += "${datadir}/pkgconfig/shared-mime-info.pc" + +do_install_append() { + update-mime-database ${D}${datadir}/mime + + # we do not need it on device and it is huge + rm ${D}${datadir}/mime/packages/freedesktop.org.xml +} + +BBCLASSEXTEND = "native" diff --git a/meta/recipes-support/shared-mime-info/shared-mime-info_0.71.bb b/meta/recipes-support/shared-mime-info/shared-mime-info_0.71.bb new file mode 100644 index 0000000000..fc64c2b0e0 --- /dev/null +++ b/meta/recipes-support/shared-mime-info/shared-mime-info_0.71.bb @@ -0,0 +1 @@ +require shared-mime-info.inc diff --git a/meta/recipes-support/sqlite/sqlite3.inc b/meta/recipes-support/sqlite/sqlite3.inc new file mode 100644 index 0000000000..709e3016b8 --- /dev/null +++ b/meta/recipes-support/sqlite/sqlite3.inc @@ -0,0 +1,33 @@ +DESCRIPTION = "An Embeddable SQL Database Engine" +HOMEPAGE = "http://www.sqlite.org" +SECTION = "libs" +PRIORITY = "optional" +DEPENDS = "readline ncurses tcl-native" +LICENSE = "PD" + +SRC_URI = "http://www.sqlite.org/sqlite-${PV}.tar.gz \ + file://libtool.patch" + +S = "${WORKDIR}/sqlite-${PV}" + +inherit autotools pkgconfig + +EXTRA_OECONF = "--disable-tcl --enable-shared \ + --enable-threadsafe" +export config_BUILD_CC = "${BUILD_CC}" +export config_BUILD_CFLAGS = "${BUILD_CFLAGS}" +export config_BUILD_LIBS = "${BUILD_LDFLAGS}" +export config_TARGET_CC = "${CC}" +export config_TARGET_LINK = "${CCLD}" +export config_TARGET_CFLAGS = "${CFLAGS}" +export config_TARGET_LFLAGS = "${LDFLAGS}" + +PACKAGES = "lib${PN} lib${PN}-dev lib${PN}-doc ${PN} ${PN}-dbg" +FILES_${PN} = "${bindir}/*" +FILES_lib${PN} = "${libdir}/*.so.*" +FILES_lib${PN}-dev = "${libdir}/*.a ${libdir}/*.la ${libdir}/*.so \ + ${libdir}/pkgconfig ${includedir}" +FILES_lib${PN}-doc = "${docdir} ${mandir} ${infodir}" +AUTO_LIBNAME_PKGS = "lib${PN}" + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-support/sqlite/sqlite3/libtool.patch b/meta/recipes-support/sqlite/sqlite3/libtool.patch new file mode 100644 index 0000000000..ccf9993ed2 --- /dev/null +++ b/meta/recipes-support/sqlite/sqlite3/libtool.patch @@ -0,0 +1,25 @@ +Index: sqlite-3.2.1/Makefile.in +=================================================================== +--- sqlite-3.2.1.orig/Makefile.in 2005-03-23 17:09:39.000000000 +0100 ++++ sqlite-3.2.1/Makefile.in 2005-04-25 23:11:20.000000000 +0200 +@@ -15,7 +15,10 @@ + # The toplevel directory of the source tree. This is the directory + # that contains this "Makefile.in" and the "configure.in" script. + # +-TOP = @srcdir@ ++TOP = $(srcdir) ++srcdir = @srcdir@ ++top_srcdir = @top_srcdir@ ++top_builddir = . + + # C Compiler and options for use in building executables that + # will run on the platform that is doing the build. +@@ -96,7 +99,7 @@ + exec_prefix = @exec_prefix@ + libdir = @libdir@ + INSTALL = @INSTALL@ +-LIBTOOL = ./libtool ++LIBTOOL = @LIBTOOL@ + ALLOWRELEASE = @ALLOWRELEASE@ + + # libtool compile/link/install diff --git a/meta/recipes-support/sqlite/sqlite3_3.6.23.1.bb b/meta/recipes-support/sqlite/sqlite3_3.6.23.1.bb new file mode 100644 index 0000000000..5075dd35b7 --- /dev/null +++ b/meta/recipes-support/sqlite/sqlite3_3.6.23.1.bb @@ -0,0 +1,3 @@ +require sqlite3.inc + +PR = "r1" diff --git a/meta/recipes-support/vte/vte.inc b/meta/recipes-support/vte/vte.inc new file mode 100644 index 0000000000..6138f8ca01 --- /dev/null +++ b/meta/recipes-support/vte/vte.inc @@ -0,0 +1,14 @@ +DESCRIPTION = "vte is a virtual terminal emulator" +BUGTRACKER = "https://bugzilla.gnome.org/buglist.cgi?product=vte" +LICENSE = "LGPLv2.1+" +DEPENDS = " glib-2.0 gtk+ intltool-native ncurses" +RDEPENDS_libvte = "vte-termcap" + +inherit gnome + +EXTRA_OECONF = "--disable-gtk-doc --disable-python" + +PACKAGES =+ "libvte vte-termcap" +FILES_libvte = "${libdir}/*.so.* ${libexecdir}/gnome-pty-helper" +FILES_vte-dbg =+ ${libexecdir}/.debug" +FILES_vte-termcap = "${datadir}/vte/termcap" diff --git a/meta/recipes-support/vte/vte_0.24.3.bb b/meta/recipes-support/vte/vte_0.24.3.bb new file mode 100644 index 0000000000..1953101f82 --- /dev/null +++ b/meta/recipes-support/vte/vte_0.24.3.bb @@ -0,0 +1,5 @@ +require vte.inc + +LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7" + +PR = "r0" diff --git a/meta/recipes-tbd/poppler/poppler-data_0.1.bb b/meta/recipes-tbd/poppler/poppler-data_0.1.bb new file mode 100644 index 0000000000..ca22e4dba0 --- /dev/null +++ b/meta/recipes-tbd/poppler/poppler-data_0.1.bb @@ -0,0 +1,16 @@ +DESCRIPTION = "Poppler is a PDF rendering library based on the xpdf-3.0 code base." +LICENSE = "Adobe" +PR = "r0" + +SRC_URI = "http://poppler.freedesktop.org/${PN}-${PV}.tar.gz" + +do_compile() { +} + +do_install() { + oe_runmake install DESTDIR=${D} +} + +FILES_${PN} += "${datadir}" +PACKAGE_ARCH = "all" + diff --git a/meta/recipes-tbd/poppler/poppler-fpu.inc b/meta/recipes-tbd/poppler/poppler-fpu.inc new file mode 100644 index 0000000000..a26273020a --- /dev/null +++ b/meta/recipes-tbd/poppler/poppler-fpu.inc @@ -0,0 +1,6 @@ + +def get_poppler_fpu_setting(bb, d): + if bb.data.getVar('TARGET_FPU', d, 1) in [ 'soft' ]: + return "--enable-fixedpoint" + return "" + diff --git a/meta/recipes-tbd/poppler/poppler.inc b/meta/recipes-tbd/poppler/poppler.inc new file mode 100644 index 0000000000..645e734e8b --- /dev/null +++ b/meta/recipes-tbd/poppler/poppler.inc @@ -0,0 +1,18 @@ +DESCRIPTION = "Poppler is a PDF rendering library based on the xpdf-3.0 code base." +DEPENDS = "fontconfig jpeg zlib gtk+ cairo" +LICENSE = "GPL" +PR = "r1" + +SRC_URI = "http://poppler.freedesktop.org/${PN}-${PV}.tar.gz" + +inherit autotools pkgconfig + +EXTRA_OECONF = " --enable-xpdf-headers \ + --disable-gtk-test \ + --disable-poppler-qt --disable-poppler-qt4 \ + --enable-zlib \ + " + +#check for TARGET_FPU=soft and inform configure of the result so it can disable some floating points +require poppler-fpu.inc +EXTRA_OECONF += "${@get_poppler_fpu_setting(bb, d)}" diff --git a/meta/recipes-tbd/poppler/poppler_0.9.2.bb b/meta/recipes-tbd/poppler/poppler_0.9.2.bb new file mode 100644 index 0000000000..92c25bc0ac --- /dev/null +++ b/meta/recipes-tbd/poppler/poppler_0.9.2.bb @@ -0,0 +1,2 @@ +require poppler.inc +PR = "r2" diff --git a/meta/recipes-tbd/xournal/files/ldflags.patch b/meta/recipes-tbd/xournal/files/ldflags.patch new file mode 100644 index 0000000000..7f6585befb --- /dev/null +++ b/meta/recipes-tbd/xournal/files/ldflags.patch @@ -0,0 +1,15 @@ +--- + src/Makefile.am | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +Index: xournal-0.2/src/Makefile.am +=================================================================== +--- xournal-0.2.orig/src/Makefile.am 2007-05-09 15:06:26.000000000 +0100 ++++ xournal-0.2/src/Makefile.am 2007-05-09 15:06:35.000000000 +0100 +@@ -21,5 +21,5 @@ xournal_SOURCES = \ + xo-interface.c xo-interface.h \ + xo-callbacks.c xo-callbacks.h + +-xournal_LDADD = @PACKAGE_LIBS@ ++xournal_LDADD = @PACKAGE_LIBS@ -lz + diff --git a/meta/recipes-tbd/xournal/files/no-printing.diff b/meta/recipes-tbd/xournal/files/no-printing.diff new file mode 100644 index 0000000000..7a4724e696 --- /dev/null +++ b/meta/recipes-tbd/xournal/files/no-printing.diff @@ -0,0 +1,178 @@ +diff -ru xournal-0.2/configure.in xournal-0.2.noprint/configure.in +--- xournal-0.2/configure.in 2006-01-29 22:25:10.000000000 +0000 ++++ xournal-0.2.noprint/configure.in 2006-03-17 13:08:01.000000000 +0000 +@@ -10,11 +10,16 @@ + AM_PROG_CC_STDC + AC_HEADER_STDC + +-pkg_modules="gtk+-2.0 >= 2.4.0 libgnomecanvas-2.0 >= 2.4.0 libgnomeprintui-2.2 >= 2.0.0" ++pkg_modules="gtk+-2.0 >= 2.4.0 libgnomecanvas-2.0 >= 2.4.0" + PKG_CHECK_MODULES(PACKAGE, [$pkg_modules]) + AC_SUBST(PACKAGE_CFLAGS) + AC_SUBST(PACKAGE_LIBS) + ++#PKG_CHECK_MODULES(GNOMEPRINT, libgnomeprintui-2.2 >= 2.0.0 ++#AC_SUBST(GNOMEPRINT_CFLAGS) ++#AC_SUBST(GNOMEPRINT_LIBS) ++AM_CONDITIONAL(ENABLE_PRINTING, false) ++ + AC_OUTPUT([ + Makefile + src/Makefile +diff -ru xournal-0.2/src/main.c xournal-0.2.noprint/src/main.c +--- xournal-0.2/src/main.c 2006-01-29 22:22:52.000000000 +0000 ++++ xournal-0.2.noprint/src/main.c 2006-03-17 13:14:50.000000000 +0000 +@@ -28,7 +28,9 @@ + + void hide_unimplemented(void) + { ++#if ENABLE_PRINTING + gtk_widget_hide(GET_COMPONENT("filePrintOptions")); ++#endif + gtk_widget_hide(GET_COMPONENT("journalFlatten")); + gtk_widget_hide(GET_COMPONENT("papercolorOther")); + gtk_widget_hide(GET_COMPONENT("journalApplyAllPages")); +diff -ru xournal-0.2/src/Makefile.am xournal-0.2.noprint/src/Makefile.am +--- xournal-0.2/src/Makefile.am 2005-12-14 20:54:42.000000000 +0000 ++++ xournal-0.2.noprint/src/Makefile.am 2006-03-17 13:07:47.000000000 +0000 +@@ -7,12 +7,16 @@ + + bin_PROGRAMS = xournal + ++if ENABLE_PRINTING ++PRINT_SOURCE = xo-print.c xo-print.h ++endif ++ + xournal_SOURCES = \ + main.c xournal.h \ + xo-misc.c xo-misc.h \ + xo-file.c xo-file.h \ + xo-paint.c xo-paint.h \ +- xo-print.c xo-print.h \ ++ $(PRINT_SOURCE) \ + xo-support.c xo-support.h \ + xo-interface.c xo-interface.h \ + xo-callbacks.c xo-callbacks.h +diff -ru xournal-0.2/src/xo-callbacks.c xournal-0.2.noprint/src/xo-callbacks.c +--- xournal-0.2/src/xo-callbacks.c 2006-01-29 19:39:22.000000000 +0000 ++++ xournal-0.2.noprint/src/xo-callbacks.c 2006-03-17 13:12:01.000000000 +0000 +@@ -7,7 +7,9 @@ + #include + #include + #include ++#if ENABLE_PRINTING + #include ++#endif + #include + + #include "xournal.h" +@@ -17,7 +19,9 @@ + #include "xo-misc.h" + #include "xo-file.h" + #include "xo-paint.h" ++#if ENABLE_PRINTING + #include "xo-print.h" ++#endif + + void + on_fileNew_activate (GtkMenuItem *menuitem, +@@ -261,7 +265,7 @@ + + } + +- ++#if ENABLE_PRINTING + void + on_filePrint_activate (GtkMenuItem *menuitem, + gpointer user_data) +@@ -407,7 +411,7 @@ + + g_free(filename); + } +- ++#endif + + void + on_fileQuit_activate (GtkMenuItem *menuitem, +diff -ru xournal-0.2/src/xo-callbacks.h xournal-0.2.noprint/src/xo-callbacks.h +--- xournal-0.2/src/xo-callbacks.h 2006-01-26 20:47:00.000000000 +0000 ++++ xournal-0.2.noprint/src/xo-callbacks.h 2006-03-17 13:08:45.000000000 +0000 +@@ -24,6 +24,7 @@ + on_filePrintOptions_activate (GtkMenuItem *menuitem, + gpointer user_data); + ++#if ENABLE_PRINTING + void + on_filePrint_activate (GtkMenuItem *menuitem, + gpointer user_data); +@@ -32,6 +33,8 @@ + on_filePrintPDF_activate (GtkMenuItem *menuitem, + gpointer user_data); + ++#endif ++ + void + on_fileQuit_activate (GtkMenuItem *menuitem, + gpointer user_data); +diff -ru xournal-0.2/src/xo-interface.c xournal-0.2.noprint/src/xo-interface.c +--- xournal-0.2/src/xo-interface.c 2006-01-29 18:58:25.000000000 +0000 ++++ xournal-0.2.noprint/src/xo-interface.c 2006-03-17 13:11:31.000000000 +0000 +@@ -41,10 +41,12 @@ + GtkWidget *fileSave; + GtkWidget *fileSaveAs; + GtkWidget *separator1; ++#if ENABLE_PRINTING + GtkWidget *filePrintOptions; + GtkWidget *image501; + GtkWidget *filePrint; + GtkWidget *filePrintPDF; ++#endif + GtkWidget *separator2; + GtkWidget *fileQuit; + GtkWidget *menuEdit; +@@ -327,6 +329,7 @@ + gtk_container_add (GTK_CONTAINER (menuFile_menu), separator1); + gtk_widget_set_sensitive (separator1, FALSE); + ++#if ENABLE_PRINTING + filePrintOptions = gtk_image_menu_item_new_with_mnemonic ("Print Options"); + gtk_widget_show (filePrintOptions); + gtk_container_add (GTK_CONTAINER (menuFile_menu), filePrintOptions); +@@ -347,6 +350,7 @@ + gtk_widget_show (separator2); + gtk_container_add (GTK_CONTAINER (menuFile_menu), separator2); + gtk_widget_set_sensitive (separator2, FALSE); ++#endif + + fileQuit = gtk_image_menu_item_new_from_stock ("gtk-quit", accel_group); + gtk_widget_show (fileQuit); +@@ -1522,6 +1526,7 @@ + g_signal_connect ((gpointer) fileSaveAs, "activate", + G_CALLBACK (on_fileSaveAs_activate), + NULL); ++#if ENABLE_PRINTING + g_signal_connect ((gpointer) filePrintOptions, "activate", + G_CALLBACK (on_filePrintOptions_activate), + NULL); +@@ -1531,6 +1536,7 @@ + g_signal_connect ((gpointer) filePrintPDF, "activate", + G_CALLBACK (on_filePrintPDF_activate), + NULL); ++#endif + g_signal_connect ((gpointer) fileQuit, "activate", + G_CALLBACK (on_fileQuit_activate), + NULL); +@@ -1941,11 +1947,13 @@ + GLADE_HOOKUP_OBJECT (winMain, fileSave, "fileSave"); + GLADE_HOOKUP_OBJECT (winMain, fileSaveAs, "fileSaveAs"); + GLADE_HOOKUP_OBJECT (winMain, separator1, "separator1"); ++#if ENABLE_PRINTING + GLADE_HOOKUP_OBJECT (winMain, filePrintOptions, "filePrintOptions"); + GLADE_HOOKUP_OBJECT (winMain, image501, "image501"); + GLADE_HOOKUP_OBJECT (winMain, filePrint, "filePrint"); + GLADE_HOOKUP_OBJECT (winMain, filePrintPDF, "filePrintPDF"); + GLADE_HOOKUP_OBJECT (winMain, separator2, "separator2"); ++#endif + GLADE_HOOKUP_OBJECT (winMain, fileQuit, "fileQuit"); + GLADE_HOOKUP_OBJECT (winMain, menuEdit, "menuEdit"); + GLADE_HOOKUP_OBJECT (winMain, menuEdit_menu, "menuEdit_menu"); diff --git a/meta/recipes-tbd/xournal/xournal_0.2.bb b/meta/recipes-tbd/xournal/xournal_0.2.bb new file mode 100644 index 0000000000..1ca6e1ed7c --- /dev/null +++ b/meta/recipes-tbd/xournal/xournal_0.2.bb @@ -0,0 +1,12 @@ +HOMEPAGE = "http://www-math.mit.edu/~auroux/software/xournal/" +DESCRIPTION = "Xournal is an application for notetaking, sketching, keeping a journal using a stylus." +DEPENDS = "gtk+ libgnomecanvas zlib" +SECTION = "x11" +LICENSE = "GPL" +PR = "r2" + +SRC_URI = "http://math.mit.edu/~auroux/software/xournal/xournal-0.2.tar.gz \ + file://ldflags.patch;patch=1 \ + file://no-printing.diff;patch=1" + +inherit autotools pkgconfig -- cgit v1.2.3-54-g00ecf