package/*: rename patches according to the new policy
authorPeter Korsgaard <peter@korsgaard.com>
Tue, 3 Feb 2015 13:52:07 +0000 (14:52 +0100)
committerPeter Korsgaard <peter@korsgaard.com>
Tue, 3 Feb 2015 13:52:56 +0000 (14:52 +0100)
Autogenerated from rename-patch.py (http://patchwork.ozlabs.org/patch/403345)

Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
1266 files changed:
package/acl/0001-support-static-installation.patch [new file with mode: 0644]
package/acl/acl-01-support-static-installation.patch [deleted file]
package/acpid/0001-dont-use-isfdtype.patch [new file with mode: 0644]
package/acpid/0002-add-missing-defines.patch [new file with mode: 0644]
package/acpid/acpid-01-dont-use-isfdtype.patch [deleted file]
package/acpid/acpid-02-add-missing-defines.patch [deleted file]
package/aiccu/0001-gnutls-and-uclibc-fixes.patch [new file with mode: 0644]
package/aiccu/0002-makefile-reorder-linked-libraries.patch [new file with mode: 0644]
package/aiccu/0003-clock-suite-functions-fix.patch [new file with mode: 0644]
package/aiccu/aiccu-0001-gnutls-and-uclibc-fixes.patch [deleted file]
package/aiccu/aiccu-0002-makefile-reorder-linked-libraries.patch [deleted file]
package/aiccu/aiccu-0003-clock-suite-functions-fix.patch [deleted file]
package/alsa-lib/0001-avr32-bad-inline.patch [new file with mode: 0644]
package/alsa-lib/0002-no-mmu.patch [new file with mode: 0644]
package/alsa-lib/0003-dlmisc.patch [new file with mode: 0644]
package/alsa-lib/0004-conditional-enabling-of-libdl-in-m4.patch [new file with mode: 0644]
package/alsa-lib/alsa-lib-0001-avr32-bad-inline.patch [deleted file]
package/alsa-lib/alsa-lib-0002-no-mmu.patch [deleted file]
package/alsa-lib/alsa-lib-0003-dlmisc.patch [deleted file]
package/alsa-lib/alsa-lib-0004-conditional-enabling-of-libdl-in-m4.patch [deleted file]
package/alsamixergui/0001-misc-fixes.patch [new file with mode: 0644]
package/alsamixergui/alsamixergui_0.9.0rc2-1-7.patch [deleted file]
package/am33x-cm3/0001-fix-makefile.patch [new file with mode: 0644]
package/am33x-cm3/am33x-cm3-0001-fix-makefile.patch [deleted file]
package/apr-util/0001-remove-checkapr.patch [new file with mode: 0644]
package/apr-util/apr-util-01-remove-checkapr.patch [deleted file]
package/argp-standalone/0001-throw-in-funcdef.patch [new file with mode: 0644]
package/argp-standalone/argp-standalone-throw-in-funcdef.patch [deleted file]
package/at/0001-configure.ac-remove-manual-compiler-check-with-AC_TR.patch [new file with mode: 0644]
package/at/0002-configure.ac-convert-AC_TRY_COMPILE-AC_COMPILE_IFELS.patch [new file with mode: 0644]
package/at/0003-Makefile.in-add-LDFLAGS-to-linking-stage.patch [new file with mode: 0644]
package/at/0004-Makefile.in-replace-IROOT-by-DESTDIR.patch [new file with mode: 0644]
package/at/0005-Makefile.in-make-install-fix.patch [new file with mode: 0644]
package/at/0006-getloadavg.c-fix.patch [new file with mode: 0644]
package/at/0007-parsetime.l-include-config-h.patch [new file with mode: 0644]
package/at/at-0001-configure.ac-remove-manual-compiler-check-with-AC_TR.patch [deleted file]
package/at/at-0002-configure.ac-convert-AC_TRY_COMPILE-AC_COMPILE_IFELS.patch [deleted file]
package/at/at-0003-Makefile.in-add-LDFLAGS-to-linking-stage.patch [deleted file]
package/at/at-0004-Makefile.in-replace-IROOT-by-DESTDIR.patch [deleted file]
package/at/at-0005-Makefile.in-make-install-fix.patch [deleted file]
package/at/at-0006-getloadavg.c-fix.patch [deleted file]
package/at/at-0007-parsetime.l-include-config-h.patch [deleted file]
package/attr/0001-support-static-installation.patch [new file with mode: 0644]
package/attr/attr-01-support-static-installation.patch [deleted file]
package/aumix/0001-fix-incorrect-makefile-am.patch [new file with mode: 0644]
package/aumix/aumix-2.8-fix-incorrect-makefile-am.patch [deleted file]
package/autoconf/0001-dont-add-dirty-to-version.patch [new file with mode: 0644]
package/autoconf/autoconf-dont-add-dirty-to-version.patch [deleted file]
package/automake/0001-noman.patch [new file with mode: 0644]
package/automake/automake-0001-noman.patch [deleted file]
package/avahi/0001-autoipd-perms.patch [new file with mode: 0644]
package/avahi/0002-disable-systemd-support.patch [new file with mode: 0644]
package/avahi/0003-ipv6only.patch [new file with mode: 0644]
package/avahi/0004-no-gtk-deprecations.patch [new file with mode: 0644]
package/avahi/0005-optional-ipv6.patch [new file with mode: 0644]
package/avahi/avahi-autoipd-perms.patch [deleted file]
package/avahi/avahi-disable-systemd-support.patch [deleted file]
package/avahi/avahi-ipv6only.patch [deleted file]
package/avahi/avahi-no-gtk-deprecations.patch [deleted file]
package/avahi/avahi-optional-ipv6.patch [deleted file]
package/beecrypt/0001-cppglue.cxx-cplusplus-only.patch [new file with mode: 0644]
package/beecrypt/0002-icu-check-cross-compile.patch [new file with mode: 0644]
package/beecrypt/0003-build-system.patch [new file with mode: 0644]
package/beecrypt/0004-gcc-4.7.patch [new file with mode: 0644]
package/beecrypt/beecrypt-0001-cppglue.cxx-cplusplus-only.patch [deleted file]
package/beecrypt/beecrypt-0002-icu-check-cross-compile.patch [deleted file]
package/beecrypt/beecrypt-0003-build-system.patch [deleted file]
package/beecrypt/beecrypt-0004-gcc-4.7.patch [deleted file]
package/bellagio/0001-drop-werror.patch [new file with mode: 0644]
package/bellagio/0002-dynamicloader-linking.patch [new file with mode: 0644]
package/bellagio/0003-parallel-build.patch [new file with mode: 0644]
package/bellagio/0004-segfault-on-removeFromWaitResource.patch [new file with mode: 0644]
package/bellagio/bellagio-0.9.3-drop-werror.patch [deleted file]
package/bellagio/bellagio-0.9.3-dynamicloader-linking.patch [deleted file]
package/bellagio/bellagio-0.9.3-parallel-build.patch [deleted file]
package/bellagio/bellagio-0.9.3-segfault-on-removeFromWaitResource.patch [deleted file]
package/blackbox/0001-Fix-configure-ac.patch [new file with mode: 0644]
package/blackbox/0002-gcc43.patch [new file with mode: 0644]
package/blackbox/0003-gcc46-textpropertytostring.patch [new file with mode: 0644]
package/blackbox/blackbox-001-Fix-configure-ac.patch [deleted file]
package/blackbox/blackbox-002-gcc43.patch [deleted file]
package/blackbox/blackbox-003-gcc46-textpropertytostring.patch [deleted file]
package/bluez_utils/0001-enable_cg2900_on_upstream_4.91.patch [new file with mode: 0644]
package/bluez_utils/bluez_utils-4.101-enable_cg2900_on_upstream_4.91.patch [deleted file]
package/boost/0001-fix-ambiguous-format-call-on-64bit-builds.patch [new file with mode: 0644]
package/boost/boost-0001-fix-ambiguous-format-call-on-64bit-builds.patch [deleted file]
package/bridge-utils/0001-build-system.patch [new file with mode: 0644]
package/bridge-utils/0002-fix-for-kernel-headers-3.8+.patch [new file with mode: 0644]
package/bridge-utils/bridge-utils-000-build-system.patch [deleted file]
package/bridge-utils/bridge-utils-001-fix-for-kernel-headers-3.8+.patch [deleted file]
package/bzip2/0001-build-objects-twice.patch [new file with mode: 0644]
package/bzip2/0002-improve-build-system.patch [new file with mode: 0644]
package/bzip2/bzip2-build-objects-twice.patch [deleted file]
package/bzip2/bzip2-improve-build-system.patch [deleted file]
package/c-ares/0001-use_check_build_instead_of_check_user.patch [new file with mode: 0644]
package/c-ares/c-ares-01-use_check_build_instead_of_check_user.patch [deleted file]
package/cache-calibrator/0001-Fix-conflicting-round-function.patch [new file with mode: 0644]
package/cache-calibrator/cache-calibrator-Fix-conflicting-round-function.patch [deleted file]
package/cairo/0001-blackfin-build-fix.patch [new file with mode: 0644]
package/cairo/0002-openvg-build-fix.patch [new file with mode: 0644]
package/cairo/0003-fix-nofork-build.patch [new file with mode: 0644]
package/cairo/0004-fix-nofork-any2ppm.patch [new file with mode: 0644]
package/cairo/0005-fix-gcc-49-build.patch [new file with mode: 0644]
package/cairo/cairo-001-blackfin-build-fix.patch [deleted file]
package/cairo/cairo-002-openvg-build-fix.patch [deleted file]
package/cairo/cairo-003-fix-nofork-build.patch [deleted file]
package/cairo/cairo-004-fix-nofork-any2ppm.patch [deleted file]
package/cairo/cairo-005-fix-gcc-49-build.patch [deleted file]
package/canfestival/0001-install-pkgconfig-module-for-canfestival.patch [new file with mode: 0644]
package/canfestival/0002-allow-to-set-python-interpreter.patch [new file with mode: 0644]
package/canfestival/canfestival-0001-install-pkgconfig-module-for-canfestival.patch [deleted file]
package/canfestival/canfestival-0002-allow-to-set-python-interpreter.patch [deleted file]
package/cdrkit/0001-no-rcmd.patch [new file with mode: 0644]
package/cdrkit/cdrkit-1.1.11-no-rcmd.patch [deleted file]
package/cegui06/0001-stddef.h.patch [new file with mode: 0644]
package/cegui06/cegui06-stddef.h.patch [deleted file]
package/clamav/0001-clamdscan.patch [new file with mode: 0644]
package/clamav/0002-static-linking.patch [new file with mode: 0644]
package/clamav/0003-backtrace-uClibc.patch [new file with mode: 0644]
package/clamav/0004-fix-static-build.patch [new file with mode: 0644]
package/clamav/clamav-0001-clamdscan.patch [deleted file]
package/clamav/clamav-0002-static-linking.patch [deleted file]
package/clamav/clamav-0003-backtrace-uClibc.patch [deleted file]
package/clamav/clamav-0004-fix-static-build.patch [deleted file]
package/clapack/0001-cmake-force-libf2c-to-be-built-as-a-static-library.patch [new file with mode: 0644]
package/clapack/0002-cmake-make-test-build-sensitive-to-BUILD_TESTING.patch [new file with mode: 0644]
package/clapack/0003-cmake-do-not-try-to-run-arithchk-when-cross-compilin.patch [new file with mode: 0644]
package/clapack/0004-cmake-blas-add-library-and-header-install-rules.patch [new file with mode: 0644]
package/clapack/0005-cmake-lapack-add-library-and-header-install-rules.patch [new file with mode: 0644]
package/clapack/clapack-0001-cmake-force-libf2c-to-be-built-as-a-static-library.patch [deleted file]
package/clapack/clapack-0002-cmake-make-test-build-sensitive-to-BUILD_TESTING.patch [deleted file]
package/clapack/clapack-0003-cmake-do-not-try-to-run-arithchk-when-cross-compilin.patch [deleted file]
package/clapack/clapack-0004-cmake-blas-add-library-and-header-install-rules.patch [deleted file]
package/clapack/clapack-0005-cmake-lapack-add-library-and-header-install-rules.patch [deleted file]
package/classpath/0001-fix-gmp-include.patch [new file with mode: 0644]
package/classpath/0002-add-config-rpath.patch [new file with mode: 0644]
package/classpath/classpath-01-fix-gmp-include.patch [deleted file]
package/classpath/classpath-02-add-config-rpath.patch [deleted file]
package/cloog/0001-add-missing-files.patch [new file with mode: 0644]
package/cloog/cloog-0001-add-missing-files.patch [deleted file]
package/cloop/0001-cflags.patch [new file with mode: 0644]
package/cloop/cloop-2.634-1-cflags.patch [deleted file]
package/coreutils/0001-fix-for-dummy-man-usage.patch [new file with mode: 0644]
package/coreutils/coreutils-01-fix-for-dummy-man-usage.patch [deleted file]
package/cppdb/0001-mysql-library-suffix.patch [new file with mode: 0644]
package/cppdb/cppdb-0001-mysql-library-suffix.patch [deleted file]
package/cramfs/0001-endian.patch [new file with mode: 0644]
package/cramfs/0002-cygwin_IO.patch [new file with mode: 0644]
package/cramfs/cramfs-01-endian.patch [deleted file]
package/cramfs/cramfs-02-cygwin_IO.patch [deleted file]
package/crda/0001-Makefile-allow-to-override-python-interpreter.patch [new file with mode: 0644]
package/crda/0002-Add-DESTDIR-support-in-install-libreg-rules.patch [new file with mode: 0644]
package/crda/crda-0001-Makefile-allow-to-override-python-interpreter.patch [deleted file]
package/crda/crda-0002-Add-DESTDIR-support-in-install-libreg-rules.patch [deleted file]
package/cryptodev-linux/0001-Replace_INIT_COMPLETION_with_reinit_completion.patch [new file with mode: 0644]
package/cryptodev-linux/cryptodev-linux-01-Replace_INIT_COMPLETION_with_reinit_completion.patch [deleted file]
package/cups/0001-fix-static.patch [new file with mode: 0644]
package/cups/0002-fix-stack-protector-check.patch [new file with mode: 0644]
package/cups/0003-mantohtml.patch [new file with mode: 0644]
package/cups/cups-0001-fix-static.patch [deleted file]
package/cups/cups-0002-fix-stack-protector-check.patch [deleted file]
package/cups/cups-0003-mantohtml.patch [deleted file]
package/curlftpfs/0001-fix-CURLOPT_INFILESIZE.patch [new file with mode: 0644]
package/curlftpfs/0002-free_ftpfs_file-memleak-fix.patch [new file with mode: 0644]
package/curlftpfs/0003-nocache-memleak-fix.patch [new file with mode: 0644]
package/curlftpfs/curlftpfs-000-fix-CURLOPT_INFILESIZE.patch [deleted file]
package/curlftpfs/curlftpfs-001-free_ftpfs_file-memleak-fix.patch [deleted file]
package/curlftpfs/curlftpfs-002-nocache-memleak-fix.patch [deleted file]
package/cwiid/0001-fix-link-options-for-as-needed-90.patch [new file with mode: 0644]
package/cwiid/0002-Update-for-BlueZ-changes.patch [new file with mode: 0644]
package/cwiid/0003-wmdemo-fix-linking-by-adding-the-missing-lbluetooth-.patch [new file with mode: 0644]
package/cwiid/0004-configure-make-wmgui-build-optional.patch [new file with mode: 0644]
package/cwiid/cwiid-0001-fix-link-options-for-as-needed-90.patch [deleted file]
package/cwiid/cwiid-0002-Update-for-BlueZ-changes.patch [deleted file]
package/cwiid/cwiid-0003-wmdemo-fix-linking-by-adding-the-missing-lbluetooth-.patch [deleted file]
package/cwiid/cwiid-0004-configure-make-wmgui-build-optional.patch [deleted file]
package/dash/0001-no-config.h-for-helpers.patch [new file with mode: 0644]
package/dash/dash-0001-no-config.h-for-helpers.patch [deleted file]
package/dbus-cpp/0001-gcc4.7.patch [new file with mode: 0644]
package/dbus-cpp/0002-cxxflags-ldflags-for-build.patch [new file with mode: 0644]
package/dbus-cpp/dbus-cpp-0001-gcc4.7.patch [deleted file]
package/dbus-cpp/dbus-cpp-0002-cxxflags-ldflags-for-build.patch [deleted file]
package/devmem2/0001-be-coherent-in-type-usage.patch [new file with mode: 0644]
package/devmem2/devmem2-0001-be-coherent-in-type-usage.patch [deleted file]
package/dhcpdump/0001-use-non-bsd-structures.patch [new file with mode: 0644]
package/dhcpdump/0002-fix-strsep-feature-test.patch [new file with mode: 0644]
package/dhcpdump/dhcpdump-0001-use-non-bsd-structures.patch [deleted file]
package/dhcpdump/dhcpdump-0002-fix-strsep-feature-test.patch [deleted file]
package/dhrystone/0001-cmdline-nruns.patch [new file with mode: 0644]
package/dhrystone/0002-HZ.patch [new file with mode: 0644]
package/dhrystone/0003-exit.patch [new file with mode: 0644]
package/dhrystone/0004-headers.patch [new file with mode: 0644]
package/dhrystone/0005-prototypes.patch [new file with mode: 0644]
package/dhrystone/dhrystone-2-HZ.patch [deleted file]
package/dhrystone/dhrystone-2-cmdline-nruns.patch [deleted file]
package/dhrystone/dhrystone-2-exit.patch [deleted file]
package/dhrystone/dhrystone-2-headers.patch [deleted file]
package/dhrystone/dhrystone-2-prototypes.patch [deleted file]
package/directfb-examples/0001-remove-bzero.patch [new file with mode: 0644]
package/directfb-examples/directfb-examples-remove-bzero.patch [deleted file]
package/directfb/0001-fix-missing-davinci-voodoo-header.patch [new file with mode: 0644]
package/directfb/0002-imlib2-config.patch [new file with mode: 0644]
package/directfb/0003-remove-redefinition-of-__typeof__.patch [new file with mode: 0644]
package/directfb/0004-setregion-lock.patch [new file with mode: 0644]
package/directfb/0005-use-gcc-link.patch [new file with mode: 0644]
package/directfb/directfb-fix-missing-davinci-voodoo-header.patch [deleted file]
package/directfb/directfb-imlib2-config.patch [deleted file]
package/directfb/directfb-remove-redefinition-of-__typeof__.patch [deleted file]
package/directfb/directfb-setregion-lock.patch [deleted file]
package/directfb/directfb-use-gcc-link.patch [deleted file]
package/dmidecode/0001-build-system-fixes.patch [new file with mode: 0644]
package/dmidecode/dmidecode-build-system-fixes.patch [deleted file]
package/dropwatch/0001-build.patch [new file with mode: 0644]
package/dropwatch/0002-binutils-2.23.1.patch [new file with mode: 0644]
package/dropwatch/0003-remove-werror.patch [new file with mode: 0644]
package/dropwatch/dropwatch-01-build.patch [deleted file]
package/dropwatch/dropwatch-02-binutils-2.23.1.patch [deleted file]
package/dropwatch/dropwatch-03-remove-werror.patch [deleted file]
package/e2fsprogs/0001-sem-init-libs.patch [new file with mode: 0644]
package/e2fsprogs/e2fsprogs-0001-sem-init-libs.patch [deleted file]
package/elftosb/0001-fixes-includes.patch [new file with mode: 0644]
package/elftosb/0002-force-cxx-compiler.patch [new file with mode: 0644]
package/elftosb/elftosb-fixes-includes.patch [deleted file]
package/elftosb/elftosb-force-cxx-compiler.patch [deleted file]
package/empty/0001-respect-LDFLAGS.patch [new file with mode: 0644]
package/empty/empty-0001-respect-LDFLAGS.patch [deleted file]
package/erlang-p1-sip/0001-fix-includes.patch [new file with mode: 0644]
package/erlang-p1-sip/erlang-p1-sip-01-fix-includes.patch [deleted file]
package/exim/0001-Build-buildconfig-for-the-host.patch [new file with mode: 0644]
package/exim/0002-Don-t-make-backup-copies-of-installed-files.patch [new file with mode: 0644]
package/exim/0003-Skip-version-check-and-symlink-installation.patch [new file with mode: 0644]
package/exim/exim-0001-Build-buildconfig-for-the-host.patch [deleted file]
package/exim/exim-0002-Don-t-make-backup-copies-of-installed-files.patch [deleted file]
package/exim/exim-0003-Skip-version-check-and-symlink-installation.patch [deleted file]
package/exiv2/0001-remove-useless-header.patch [new file with mode: 0644]
package/exiv2/exiv2-0001-remove-useless-header.patch [deleted file]
package/expect/0001-enable-cross-compilation.patch [new file with mode: 0644]
package/expect/0002-allow-tcl-build-directory.patch [new file with mode: 0644]
package/expect/expect-0001-enable-cross-compilation.patch [deleted file]
package/expect/expect-0002-allow-tcl-build-directory.patch [deleted file]
package/ezxml/0001-allow-compiler-override.patch [new file with mode: 0644]
package/ezxml/ezxml-0.8.6-allow-compiler-override.patch [deleted file]
package/fbgrab/0001-fix-static-build.patch [new file with mode: 0644]
package/fbgrab/fbgrab-01-fix-static-build.patch [deleted file]
package/fbv/0001-arch.patch.avr32 [new file with mode: 0644]
package/fbv/0002-cross.patch [new file with mode: 0644]
package/fbv/0003-fix-24bpp-support-on-big-endian.patch [new file with mode: 0644]
package/fbv/0004-fix-bgr555.patch [new file with mode: 0644]
package/fbv/0005-giflib.patch [new file with mode: 0644]
package/fbv/0006-include.patch [new file with mode: 0644]
package/fbv/0007-libpng15.patch [new file with mode: 0644]
package/fbv/fbv-1.0b-arch.patch.avr32 [deleted file]
package/fbv/fbv-1.0b-cross.patch [deleted file]
package/fbv/fbv-1.0b-fix-24bpp-support-on-big-endian.patch [deleted file]
package/fbv/fbv-1.0b-fix-bgr555.patch [deleted file]
package/fbv/fbv-1.0b-giflib.patch [deleted file]
package/fbv/fbv-1.0b-include.patch [deleted file]
package/fbv/fbv-1.0b-libpng15.patch [deleted file]
package/fetchmail/0001-fix-openssl-static-link.patch [new file with mode: 0644]
package/fetchmail/fetchmail-0001-fix-openssl-static-link.patch [deleted file]
package/fis/0001-checksum.patch [new file with mode: 0644]
package/fis/0003-list_output.patch [new file with mode: 0644]
package/fis/0004-sorted_list.patch [new file with mode: 0644]
package/fis/fis-001-checksum.patch [deleted file]
package/fis/fis-003-list_output.patch [deleted file]
package/fis/fis-004-sorted_list.patch [deleted file]
package/flickcurl/0001-Switch-to-https-for-all-service-endpoints.-HTTP-EOL-.patch [new file with mode: 0644]
package/flickcurl/0002-Oauth-services-are-on-https-www.flickr.com.patch [new file with mode: 0644]
package/flickcurl/flickcurl-0001-Switch-to-https-for-all-service-endpoints.-HTTP-EOL-.patch [deleted file]
package/flickcurl/flickcurl-0002-Oauth-services-are-on-https-www.flickr.com.patch [deleted file]
package/flite/0001-now-honor-DESTDIR-env.-var.patch [new file with mode: 0644]
package/flite/0002-fix-alsa-static.patch [new file with mode: 0644]
package/flite/flite-0001-now-honor-DESTDIR-env.-var.patch [deleted file]
package/flite/flite-0002-fix-alsa-static.patch [deleted file]
package/fltk/0001-disable-tests.patch [new file with mode: 0644]
package/fltk/0002-jpeg-9.patch [new file with mode: 0644]
package/fltk/fltk-01-disable-tests.patch [deleted file]
package/fltk/fltk-02-jpeg-9.patch [deleted file]
package/freerdp/0001-add-support-for-uclibc.patch [new file with mode: 0644]
package/freerdp/freerdp-0001-add-support-for-uclibc.patch [deleted file]
package/freescale-imx/gpu-viv-bin-mx6q/0001-correct-HAL-include.patch [new file with mode: 0644]
package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q-0001-correct-HAL-include.patch [deleted file]
package/freescale-imx/imx-vpu/0001-vpu-io-fix-IOSystemInit-failure.patch [new file with mode: 0644]
package/freescale-imx/imx-vpu/0002-vpu-lib-fix-IOGetVirtMem-return-value-checks.patch [new file with mode: 0644]
package/freescale-imx/imx-vpu/imx-vpu-0001-vpu-io-fix-IOSystemInit-failure.patch [deleted file]
package/freescale-imx/imx-vpu/imx-vpu-0002-vpu-lib-fix-IOGetVirtMem-return-value-checks.patch [deleted file]
package/ftop/0001-overflow.patch [new file with mode: 0644]
package/ftop/ftop-0001-overflow.patch [deleted file]
package/gadgetfs-test/0001-fix-usb-ch9-include.patch [new file with mode: 0644]
package/gadgetfs-test/0002-rename-include-usb_gadgetfs-to-usb-dir.patch [new file with mode: 0644]
package/gadgetfs-test/gadgetfs-test-fix-usb-ch9-include.patch [deleted file]
package/gadgetfs-test/gadgetfs-test-rename-include-usb_gadgetfs-to-usb-dir.patch [deleted file]
package/gamin/0001-no-abstract-sockets.patch [new file with mode: 0644]
package/gamin/0002-no-const-return.patch [new file with mode: 0644]
package/gamin/gamin-0.1.10-no-abstract-sockets.patch [deleted file]
package/gamin/gamin-0.1.10-no-const-return.patch [deleted file]
package/gawk/0001-no-versioned.patch [new file with mode: 0644]
package/gawk/gawk-01-no-versioned.patch [deleted file]
package/genext2fs/0001-update-genext2fs.c-to-rev-1.118.patch [new file with mode: 0644]
package/genext2fs/genext2fs-update-genext2fs.c-to-rev-1.118.patch [deleted file]
package/genpart/0001-fix-return-code.patch [new file with mode: 0644]
package/genpart/genpart-fix-return-code.patch [deleted file]
package/genromfs/0001-build-system.patch [new file with mode: 0644]
package/genromfs/genromfs-0.5.2-build-system.patch [deleted file]
package/gettext/0001-error_print_progname.patch [new file with mode: 0644]
package/gettext/gettext-01-error_print_progname.patch [deleted file]
package/giblib/0001-fix-imlib2-detection.patch [new file with mode: 0644]
package/giblib/giblib-fix-imlib2-detection.patch [deleted file]
package/gmp/0001-arm-asm-conditional-on-no-thumb-1.patch [new file with mode: 0644]
package/gmp/0002-arm-asm-conditional-on-no-thumb-2.patch [new file with mode: 0644]
package/gmp/0003-powerpc-provide-default-bmod-to-mod-threshold-1.patch [new file with mode: 0644]
package/gmp/gmp-01-arm-asm-conditional-on-no-thumb-1.patch [deleted file]
package/gmp/gmp-02-arm-asm-conditional-on-no-thumb-2.patch [deleted file]
package/gmp/gmp-03-powerpc-provide-default-bmod-to-mod-threshold-1.patch [deleted file]
package/gnuchess/0001-getline-conflicts.patch [new file with mode: 0644]
package/gnuchess/0002-misc-fixes.patch [new file with mode: 0644]
package/gnuchess/gnuchess-5.07-getline-conflicts.patch [deleted file]
package/gnuchess/gnuchess-5.07.patch [deleted file]
package/gnupg2/0001-fix-pth-config-usage.patch [new file with mode: 0644]
package/gnupg2/gnupg2-0001-fix-pth-config-usage.patch [deleted file]
package/gnuplot/0001-configure-add-without-demo-option.patch [new file with mode: 0644]
package/gnuplot/0002-use-gdlib-config-properly.patch [new file with mode: 0644]
package/gnuplot/gnuplot-0001-configure-add-without-demo-option.patch [deleted file]
package/gnuplot/gnuplot-0002-use-gdlib-config-properly.patch [deleted file]
package/gpsd/0001-Fix-build-error-when-ntpshm-is-false.patch [new file with mode: 0644]
package/gpsd/0002-sconstruct-disable-rpath.patch [new file with mode: 0644]
package/gpsd/0003-Complete-wrapping-of-ntpshm_latch-function-in-ifdef-.patch [new file with mode: 0644]
package/gpsd/gpsd-01-Fix-build-error-when-ntpshm-is-false.patch [deleted file]
package/gpsd/gpsd-02-sconstruct-disable-rpath.patch [deleted file]
package/gpsd/gpsd-03-Complete-wrapping-of-ntpshm_latch-function-in-ifdef-.patch [deleted file]
package/gptfdisk/0001-configurable-utf16-support.patch [new file with mode: 0644]
package/gptfdisk/gptfdisk-001-configurable-utf16-support.patch [deleted file]
package/gqview/0001-make.patch [new file with mode: 0644]
package/gqview/gqview-2.1.5-make.patch [deleted file]
package/gstreamer/gst-ffmpeg/0001-gcc47.patch [new file with mode: 0644]
package/gstreamer/gst-ffmpeg/0002-arm-avoid-using-the-movw-instruction.patch [new file with mode: 0644]
package/gstreamer/gst-ffmpeg/gst-ffmpeg-0001-gcc47.patch [deleted file]
package/gstreamer/gst-ffmpeg/gst-ffmpeg-0002-arm-avoid-using-the-movw-instruction.patch [deleted file]
package/gstreamer/gst-fsl-plugins/0001-gplay-add-missing-include.patch [new file with mode: 0644]
package/gstreamer/gst-fsl-plugins/0002-Fix-bashism-in-configure-script.patch [new file with mode: 0644]
package/gstreamer/gst-fsl-plugins/0003-Use-proper-objdump.patch [new file with mode: 0644]
package/gstreamer/gst-fsl-plugins/0004-Fix-libgstfsl-linkage-add-lrt-for-shared-memory-func.patch [new file with mode: 0644]
package/gstreamer/gst-fsl-plugins/0005-Remove-use-of-obsolete-VIDIOC_DBG_G_CHIP_IDENT.patch [new file with mode: 0644]
package/gstreamer/gst-fsl-plugins/gst-fsl-plugins-0001-gplay-add-missing-include.patch [deleted file]
package/gstreamer/gst-fsl-plugins/gst-fsl-plugins-0002-Fix-bashism-in-configure-script.patch [deleted file]
package/gstreamer/gst-fsl-plugins/gst-fsl-plugins-0003-Use-proper-objdump.patch [deleted file]
package/gstreamer/gst-fsl-plugins/gst-fsl-plugins-0004-Fix-libgstfsl-linkage-add-lrt-for-shared-memory-func.patch [deleted file]
package/gstreamer/gst-fsl-plugins/gst-fsl-plugins-0005-Remove-use-of-obsolete-VIDIOC_DBG_G_CHIP_IDENT.patch [deleted file]
package/gstreamer/gst-plugin-x170/0001-correct-CFLAGS.patch [new file with mode: 0644]
package/gstreamer/gst-plugin-x170/gst-plugin-x170-01-correct-CFLAGS.patch [deleted file]
package/gstreamer/gst-plugins-bad/0001-opus-jpegformat-unbreak-non-debug-build.patch [new file with mode: 0644]
package/gstreamer/gst-plugins-bad/0002-fix-dfb-example.patch [new file with mode: 0644]
package/gstreamer/gst-plugins-bad/gst-plugins-bad-0002-fix-dfb-example.patch [deleted file]
package/gstreamer/gst-plugins-bad/gst-plugins-bad-opus-jpegformat-unbreak-non-debug-build.patch [deleted file]
package/gstreamer/gst-plugins-base/0001-tremor.patch [new file with mode: 0644]
package/gstreamer/gst-plugins-base/gst-plugins-base-tremor.patch [deleted file]
package/gstreamer/gst-plugins-good/0001-linux36.patch [new file with mode: 0644]
package/gstreamer/gst-plugins-good/0002-v4l2-fix-compilation-against-newer-kernel-headers.patch [new file with mode: 0644]
package/gstreamer/gst-plugins-good/gst-plugins-good-linux36.patch [deleted file]
package/gstreamer/gst-plugins-good/gst-plugins-good-v4l2-fix-compilation-against-newer-kernel-headers.patch [deleted file]
package/gstreamer/gstreamer/0001-bison3.patch [new file with mode: 0644]
package/gstreamer/gstreamer/gstreamer-01-bison3.patch [deleted file]
package/gstreamer1/gst1-plugins-bad/0001-use-gettext-0.18.patch [new file with mode: 0644]
package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad-use-gettext-0.18.patch [deleted file]
package/gutenprint/0001-use-pregen-xmli18n-header.patch [new file with mode: 0644]
package/gutenprint/0002-cups-support-replaces-static-with-static-libtool-lib.patch [new file with mode: 0644]
package/gutenprint/gutenprint-000-use-pregen-xmli18n-header.patch [deleted file]
package/gutenprint/gutenprint-001-cups-support-replaces-static-with-static-libtool-lib.patch [deleted file]
package/heimdal/0001-add-roken-h-process.patch [new file with mode: 0644]
package/heimdal/0002-use-Getopt-Std.patch [new file with mode: 0644]
package/heimdal/0003-vendor.patch [new file with mode: 0644]
package/heimdal/0004-compile_et.patch [new file with mode: 0644]
package/heimdal/heimdal-0001-add-roken-h-process.patch [deleted file]
package/heimdal/heimdal-0002-use-Getopt-Std.patch [deleted file]
package/heimdal/heimdal-0003-vendor.patch [deleted file]
package/heimdal/heimdal-0004-compile_et.patch [deleted file]
package/hplip/0001-fix-make.patch [new file with mode: 0644]
package/hplip/hplip-fix-make.patch [deleted file]
package/htop/0001-native-affinity.patch [new file with mode: 0644]
package/htop/htop-01-native-affinity.patch [deleted file]
package/httping/0001-fix-math-library-linking.patch [new file with mode: 0644]
package/httping/httping-0001-fix-math-library-linking.patch [deleted file]
package/icu/0001-dont-build-static-dynamic-twice.patch [new file with mode: 0644]
package/icu/0002-workaround-toolchain-bugs.patch [new file with mode: 0644]
package/icu/0003-detect-compiler-symbol-prefix.patch [new file with mode: 0644]
package/icu/0004-link-icudata-as-data-only.patch [new file with mode: 0644]
package/icu/icu-001-dont-build-static-dynamic-twice.patch [deleted file]
package/icu/icu-002-workaround-toolchain-bugs.patch [deleted file]
package/icu/icu-003-detect-compiler-symbol-prefix.patch [deleted file]
package/icu/icu-004-link-icudata-as-data-only.patch [deleted file]
package/ifplugd/0001-cross.patch [new file with mode: 0644]
package/ifplugd/0002-fix-headers.patch [new file with mode: 0644]
package/ifplugd/0003-no-cxx.patch [new file with mode: 0644]
package/ifplugd/ifplugd-cross.patch [deleted file]
package/ifplugd/ifplugd-fix-headers.patch [deleted file]
package/ifplugd/ifplugd-no-cxx.patch [deleted file]
package/igmpproxy/0001-uclinux.patch [new file with mode: 0644]
package/igmpproxy/igmpproxy-01-uclinux.patch [deleted file]
package/infozip/0001-configure-fix-cross-build.patch [new file with mode: 0644]
package/infozip/infozip-0001-configure-fix-cross-build.patch [deleted file]
package/input-tools/0001-rint.patch [new file with mode: 0644]
package/input-tools/input-tools-20051019-rint.patch [deleted file]
package/iostat/0001-cpunum.patch [new file with mode: 0644]
package/iostat/iostat-cpunum.patch [deleted file]
package/iozone/0001-targets.patch [new file with mode: 0644]
package/iozone/0002-no-nptl-support.patch [new file with mode: 0644]
package/iozone/iozone-01-targets.patch [deleted file]
package/iozone/iozone-02-no-nptl-support.patch [deleted file]
package/ipsec-tools/0001-susv3-legacy.patch [new file with mode: 0644]
package/ipsec-tools/ipsec-tools-001-susv3-legacy.patch [deleted file]
package/irda-utils/0001-daemon.patch [new file with mode: 0644]
package/irda-utils/0002-nommu.patch [new file with mode: 0644]
package/irda-utils/0003-subdir.patch [new file with mode: 0644]
package/irda-utils/irda-utils-0.9.18-daemon.patch [deleted file]
package/irda-utils/irda-utils-0.9.18-nommu.patch [deleted file]
package/irda-utils/irda-utils-0.9.18-subdir.patch [deleted file]
package/jhead/0001-use-ldflags.patch [new file with mode: 0644]
package/jhead/jhead-use-ldflags.patch [deleted file]
package/joe/0001-disable-bessel-functions-on-uclibc.patch [new file with mode: 0644]
package/joe/joe-0001-disable-bessel-functions-on-uclibc.patch [deleted file]
package/jq/0001-libm.h-comment-j0-j1-y0-and-y1.patch [new file with mode: 0644]
package/jq/jq-0001-libm.h-comment-j0-j1-y0-and-y1.patch [deleted file]
package/json-c/0001-no-reentrant.patch [new file with mode: 0644]
package/json-c/json-c-no-reentrant.patch [deleted file]
package/kbd/0001-link-against-libintl.patch [new file with mode: 0644]
package/kbd/kbd-link-against-libintl.patch [deleted file]
package/kexec-lite/0001-clean-restart.patch [new file with mode: 0644]
package/kexec-lite/kexec-lite-01-clean-restart.patch [deleted file]
package/kexec/0001-largefile.patch [new file with mode: 0644]
package/kexec/kexec-0001-largefile.patch [deleted file]
package/keyutils/0001-allow-building-of-the-shared-library-to-be-suppressed.patch [new file with mode: 0644]
package/keyutils/0002-fix-install-rule.patch [new file with mode: 0644]
package/keyutils/0003-cifs.patch [new file with mode: 0644]
package/keyutils/0004-Makefile-for-buildroot.patch [new file with mode: 0644]
package/keyutils/keyutils-01-allow-building-of-the-shared-library-to-be-suppressed.patch [deleted file]
package/keyutils/keyutils-02-fix-install-rule.patch [deleted file]
package/keyutils/keyutils-03-cifs.patch [deleted file]
package/keyutils/keyutils-04-Makefile-for-buildroot.patch [deleted file]
package/kobs-ng/0001-fix-mtd-defines.patch [new file with mode: 0644]
package/kobs-ng/kobs-ng-0001-fix-mtd-defines.patch [deleted file]
package/latencytop/0001-makefile.patch [new file with mode: 0644]
package/latencytop/latencytop-makefile.patch [deleted file]
package/lcdapi/0001-Remove-installation-of-docs-examples.patch [new file with mode: 0644]
package/lcdapi/lcdapi-0001-Remove-installation-of-docs-examples.patch [deleted file]
package/lcdproc/0001-LCDd.conf.patch [new file with mode: 0644]
package/lcdproc/lcdproc-LCDd.conf.patch [deleted file]
package/leafnode2/0001-cross_makefile.patch [new file with mode: 0644]
package/leafnode2/leafnode2-0001-cross_makefile.patch [deleted file]
package/libaio/0001-arches.patch [new file with mode: 0644]
package/libaio/0002-avr32-support.patch [new file with mode: 0644]
package/libaio/0003-destdir.patch [new file with mode: 0644]
package/libaio/libaio-0.3.109-arches.patch [deleted file]
package/libaio/libaio-0.3.109-avr32-support.patch [deleted file]
package/libaio/libaio-0.3.109-destdir.patch [deleted file]
package/libart/0001-art-config-cross.patch [new file with mode: 0644]
package/libart/libart-art-config-cross.patch [deleted file]
package/libatasmart/0001-strpool-cross-flags.patch [new file with mode: 0644]
package/libatasmart/libatasmart-strpool-cross-flags.patch [deleted file]
package/libcgi/0001-misc-fixes.patch [new file with mode: 0644]
package/libcgi/libcgi.patch [deleted file]
package/libcgicc/0001-disable-documentation-option.patch [new file with mode: 0644]
package/libcgicc/libcgicc-01-disable-documentation-option.patch [deleted file]
package/libconfuse/0001-fix-configure-ac.patch [new file with mode: 0644]
package/libconfuse/libconfuse-0000-fix-configure-ac.patch [deleted file]
package/libcue/0001-_unused-fix.patch [new file with mode: 0644]
package/libcue/libcue-1.4.0-__unused-fix.patch [deleted file]
package/libcuefile/0001-fix-static-link.patch [new file with mode: 0644]
package/libcuefile/libcuefile-0001-fix-static-link.patch [deleted file]
package/libdaemon/0001-testd-use-unistd-h-instead-of-sys-unistd-h.patch [new file with mode: 0644]
package/libdaemon/libdaemon-0001-testd-use-unistd-h-instead-of-sys-unistd-h.patch [deleted file]
package/libdnet/0001-python-gcc.patch [new file with mode: 0644]
package/libdnet/0002-python-makefile.patch [new file with mode: 0644]
package/libdnet/libdnet-001-python-gcc.patch [deleted file]
package/libdnet/libdnet-002-python-makefile.patch [deleted file]
package/libdvdnav/0001-fix-os2-support.patch [new file with mode: 0644]
package/libdvdnav/libdvdnav-01-fix-os2-support.patch [deleted file]
package/libdvdread/0001-fix-os2-support.patch [new file with mode: 0644]
package/libdvdread/libdvdread-01-fix-os2-support.patch [deleted file]
package/libeXosip2/0001-fix-non-ipv6-build.patch [new file with mode: 0644]
package/libeXosip2/0002-use-pkg-config-to-detect-openssl.patch [new file with mode: 0644]
package/libeXosip2/libeXosip2-0000-fix-non-ipv6-build.patch [deleted file]
package/libeXosip2/libeXosip2-0001-use-pkg-config-to-detect-openssl.patch [deleted file]
package/libedit/0001-check-bsd-functions-in-libbsd.patch [new file with mode: 0644]
package/libedit/libedit-000-check-bsd-functions-in-libbsd.patch [deleted file]
package/libfcgi/0001-eof.patch [new file with mode: 0644]
package/libfcgi/0002-link-against-libfcgi-la.patch [new file with mode: 0644]
package/libfcgi/0003-link-against-math.patch [new file with mode: 0644]
package/libfcgi/0004-make-autoreconfable.patch [new file with mode: 0644]
package/libfcgi/0005-disable-examples.patch [new file with mode: 0644]
package/libfcgi/libfcgi-0000-eof.patch [deleted file]
package/libfcgi/libfcgi-0001-link-against-libfcgi-la.patch [deleted file]
package/libfcgi/libfcgi-0002-link-against-math.patch [deleted file]
package/libfcgi/libfcgi-0003-make-autoreconfable.patch [deleted file]
package/libfcgi/libfcgi-0004-disable-examples.patch [deleted file]
package/libffi/0001-Fix-installation-location-of-libffi.patch [new file with mode: 0644]
package/libffi/0002-Fix-use-of-compact-eh-frames-on-MIPS.patch [new file with mode: 0644]
package/libffi/0003-fix-typo.patch [new file with mode: 0644]
package/libffi/0004-Add-missing-GNU-stack-markings-in-win32.S.patch [new file with mode: 0644]
package/libffi/0005-Fix-paths-in-libffi.pc.in.patch [new file with mode: 0644]
package/libffi/libffi-001-Fix-installation-location-of-libffi.patch [deleted file]
package/libffi/libffi-002-Fix-use-of-compact-eh-frames-on-MIPS.patch [deleted file]
package/libffi/libffi-003-fix-typo.patch [deleted file]
package/libffi/libffi-004-Add-missing-GNU-stack-markings-in-win32.S.patch [deleted file]
package/libffi/libffi-005-Fix-paths-in-libffi.pc.in.patch [deleted file]
package/libfslvpuwrap/0001-vpu_wrapper-fix-tests-of-return-value-from-IOGetVirt.patch [new file with mode: 0644]
package/libfslvpuwrap/libfslvpuwrap-0001-vpu_wrapper-fix-tests-of-return-value-from-IOGetVirt.patch [deleted file]
package/libfuse/0001-fix-aarch64-build.patch [new file with mode: 0644]
package/libfuse/libfuse-fix-aarch64-build.patch [deleted file]
package/libgail/0001-Relax-X11-dependencies.patch [new file with mode: 0644]
package/libgail/libgail-1.22.3-Relax-X11-dependencies.patch [deleted file]
package/libgc/0001-Fix-build-on-Linux-x86_64-under-uClibc.patch [new file with mode: 0644]
package/libgc/libgc-01-Fix-build-on-Linux-x86_64-under-uClibc.patch [deleted file]
package/libgcrypt/0001-ac_cv_sys_symbol_underscore.patch [new file with mode: 0644]
package/libgcrypt/0002-reconfigure.patch [new file with mode: 0644]
package/libgcrypt/libgcrypt-00-ac_cv_sys_symbol_underscore.patch [deleted file]
package/libgcrypt/libgcrypt-01-reconfigure.patch [deleted file]
package/libgeotiff/0001-use-pkg-config.patch [new file with mode: 0644]
package/libgeotiff/libgeotiff-0001-use-pkg-config.patch [deleted file]
package/libglib2/0001-optional-ipv6.patch [new file with mode: 0644]
package/libglib2/libglib2-0001-optional-ipv6.patch [deleted file]
package/libgtk2/0001-reduce-dependencies.patch [new file with mode: 0644]
package/libgtk2/libgtk2-reduce-dependencies.patch [deleted file]
package/libhid/0001-dont-fiddle-with-debug-flags.patch [new file with mode: 0644]
package/libhid/0002-no-newline-in-ldflags.patch [new file with mode: 0644]
package/libhid/0003-uclinux.patch [new file with mode: 0644]
package/libhid/libhid-0001-dont-fiddle-with-debug-flags.patch [deleted file]
package/libhid/libhid-0002-no-newline-in-ldflags.patch [deleted file]
package/libhid/libhid-0003-uclinux.patch [deleted file]
package/libiqrf/0001-cmake-handle-static-library-and-find-required-thread.patch [new file with mode: 0644]
package/libiqrf/0002-use-only-c-language.patch [new file with mode: 0644]
package/libiqrf/libiqrf-0001-cmake-handle-static-library-and-find-required-thread.patch [deleted file]
package/libiqrf/libiqrf-use-only-c-language.patch [deleted file]
package/libjson/0001-fix-broken-makefile.patch [new file with mode: 0644]
package/libjson/libjson-0001-fix-broken-makefile.patch [deleted file]
package/liblockfile/0001-install.patch [new file with mode: 0644]
package/liblockfile/liblockfile-install.patch [deleted file]
package/libmad/0001-mips-h-constraint-removal.patch [new file with mode: 0644]
package/libmad/0002-optimization.patch.avr32 [new file with mode: 0644]
package/libmad/0003-remove-deprecated-cflags.patch [new file with mode: 0644]
package/libmad/0004-thumb2-fixed-arm.patch [new file with mode: 0644]
package/libmad/0005-thumb2-imdct-arm.patch [new file with mode: 0644]
package/libmad/libmad-0.15.1b-mips-h-constraint-removal.patch [deleted file]
package/libmad/libmad-0.15.1b-optimization.patch.avr32 [deleted file]
package/libmad/libmad-0.15.1b-remove-deprecated-cflags.patch [deleted file]
package/libmad/libmad-0.15.1b-thumb2-fixed-arm.patch [deleted file]
package/libmad/libmad-0.15.1b-thumb2-imdct-arm.patch [deleted file]
package/libmcrypt/0001-nocxx.patch [new file with mode: 0644]
package/libmcrypt/libmcrypt-nocxx.patch [deleted file]
package/libmnl/0001-uclinux.patch [new file with mode: 0644]
package/libmnl/libmnl-01-uclinux.patch [deleted file]
package/libmpdclient/0001-musl-fixes.patch [new file with mode: 0644]
package/libmpdclient/libmpdclient-0001-musl-fixes.patch [deleted file]
package/libmpeg2/0001-altivec.patch [new file with mode: 0644]
package/libmpeg2/0002-armv4l.patch [new file with mode: 0644]
package/libmpeg2/libmpeg2-0.5.1-altivec.patch [deleted file]
package/libmpeg2/libmpeg2-0.5.1-armv4l.patch [deleted file]
package/libnetfilter_acct/0001-uclinux.patch [new file with mode: 0644]
package/libnetfilter_acct/libnetfilter_acct-01-uclinux.patch [deleted file]
package/libnetfilter_cthelper/0001-uclinux.patch [new file with mode: 0644]
package/libnetfilter_cthelper/libnetfilter_cthelper-01-uclinux.patch [deleted file]
package/libnetfilter_cttimeout/0001-uclinux.patch [new file with mode: 0644]
package/libnetfilter_cttimeout/libnetfilter_cttimeout-01-uclinux.patch [deleted file]
package/libnetfilter_log/0001-uclinux.patch [new file with mode: 0644]
package/libnetfilter_log/libnetfilter_log-01-uclinux.patch [deleted file]
package/libnetfilter_queue/0001-uclinux.patch [new file with mode: 0644]
package/libnetfilter_queue/libnetfilter_queue-01-uclinux.patch [deleted file]
package/libnfc/0001-build-systems-make-example-build-optional.patch [new file with mode: 0644]
package/libnfc/libnfc-build-systems-make-example-build-optional.patch [deleted file]
package/libnfnetlink/0001-uclinux.patch [new file with mode: 0644]
package/libnfnetlink/libnfnetlink-01-uclinux.patch [deleted file]
package/libnl/0001-netlink-netlink-h-use-poll-h-instead-of-sys-poll-h.patch [new file with mode: 0644]
package/libnl/libnl-0001-netlink-netlink-h-use-poll-h-instead-of-sys-poll-h.patch [deleted file]
package/libnspr/0001-nios2.patch [new file with mode: 0644]
package/libnspr/0002-microblaze.patch [new file with mode: 0644]
package/libnspr/libnspr-0001-nios2.patch [deleted file]
package/libnspr/libnspr-0002-microblaze.patch [deleted file]
package/libnss/0001-cross-compile.patch [new file with mode: 0644]
package/libnss/0002-uclibc.patch [new file with mode: 0644]
package/libnss/libnss-0001-cross-compile.patch [deleted file]
package/libnss/libnss-0002-uclibc.patch [deleted file]
package/libpcap/0001-remove-libnl-include-path.patch [new file with mode: 0644]
package/libpcap/0002-configure.in-uclinux-is-also-linux.patch [new file with mode: 0644]
package/libpcap/libpcap-0001-remove-libnl-include-path.patch [deleted file]
package/libpcap/libpcap-0002-configure.in-uclinux-is-also-linux.patch [deleted file]
package/libplayer/0001-add-fpic.patch [new file with mode: 0644]
package/libplayer/0002-fix-configure-cflags.patch [new file with mode: 0644]
package/libplayer/libplayer-add-fpic.patch [deleted file]
package/libplayer/libplayer-fix-configure-cflags.patch [deleted file]
package/libpthsem/0001-fix-build-on-linux-3.x-host.patch [new file with mode: 0644]
package/libpthsem/libpthsem-2.0.8-fix-build-on-linux-3.x-host.patch [deleted file]
package/librtlsdr/0001-disable_shared_library_target_in_build.patch [new file with mode: 0644]
package/librtlsdr/librtlsdr_001_disable_shared_library_target_in_build.patch [deleted file]
package/libseccomp/0001-use-system-headers-from-sysroot.patch [new file with mode: 0644]
package/libseccomp/0002-Remove-the-dependency-on-proc.patch [new file with mode: 0644]
package/libseccomp/libseccomp-0001-use-system-headers-from-sysroot.patch [deleted file]
package/libseccomp/libseccomp-0002-Remove-the-dependency-on-proc.patch [deleted file]
package/libsepol/0001-support-static-only.patch [new file with mode: 0644]
package/libsepol/libsepol-01-support-static-only.patch [deleted file]
package/libserial/0001-disable-python-bindings.patch [new file with mode: 0644]
package/libserial/0002-add-missing-header-include.patch [new file with mode: 0644]
package/libserial/libserial-0001-disable-python-bindings.patch [deleted file]
package/libserial/libserial-0002-add-missing-header-include.patch [deleted file]
package/libsndfile/0001-srconly.patch [new file with mode: 0644]
package/libsndfile/libsndfile-srconly.patch [deleted file]
package/libstrophe/0001-make-autoreconfable.patch [new file with mode: 0644]
package/libstrophe/libstrophe-01-make-autoreconfable.patch [deleted file]
package/libsvg/0001-fix-expat-static-declaration.patch [new file with mode: 0644]
package/libsvg/libsvg-fix-expat-static-declaration.patch [deleted file]
package/libtorrent/0001-cross_compile.patch [new file with mode: 0644]
package/libtorrent/libtorrent-cross_compile.patch [deleted file]
package/libubox/0001-drop-legacy-json-c.patch [new file with mode: 0644]
package/libubox/libubox-01-drop-legacy-json-c.patch [deleted file]
package/liburcu/0001-Only-blacklist-ARM-gcc-4.8.0-and-4.8.1.patch [new file with mode: 0644]
package/liburcu/liburcu-0001-Only-blacklist-ARM-gcc-4.8.0-and-4.8.1.patch [deleted file]
package/libv4l/0001-fixup-lfs-mismatch-in-preload-libraries.patch [new file with mode: 0644]
package/libv4l/libv4l-0001-fixup-lfs-mismatch-in-preload-libraries.patch [deleted file]
package/libva-intel-driver/0001-wayland.patch [new file with mode: 0644]
package/libva-intel-driver/libva-intel-driver-0001-wayland.patch [deleted file]
package/libva/0001-no_test_decode.patch [new file with mode: 0644]
package/libva/0002-wayland.patch [new file with mode: 0644]
package/libva/libva-0001-no_test_decode.patch [deleted file]
package/libva/libva-0002-wayland.patch [deleted file]
package/libwebsockets/0001-cmake-set-the-project-language.patch [new file with mode: 0644]
package/libwebsockets/0002-cmake-disable-shared-library-build-when-BUILD_SHARED.patch [new file with mode: 0644]
package/libwebsockets/libwebsockets-0001-cmake-set-the-project-language.patch [deleted file]
package/libwebsockets/libwebsockets-0002-cmake-disable-shared-library-build-when-BUILD_SHARED.patch [deleted file]
package/lighttpd/0001-Fix-default-config-file.patch [new file with mode: 0644]
package/lighttpd/lighttpd-01-Fix-default-config-file.patch [deleted file]
package/linux-headers/3.0.101/0001-headers_install-fix-__packed-in-exported-kernel-head.patch [new file with mode: 0644]
package/linux-headers/3.0.101/linux-headers-headers_install-fix-__packed-in-exported-kernel-head.patch [deleted file]
package/linux-zigbee/0001-test-serial-Remove-test-serial.patch [new file with mode: 0644]
package/linux-zigbee/linux-zigbee-0001-test-serial-Remove-test-serial.patch [deleted file]
package/lite/0001-dfbspy-stat.patch [new file with mode: 0644]
package/lite/0002-no-tests.patch [new file with mode: 0644]
package/lite/0003-pkg-config.patch [new file with mode: 0644]
package/lite/lite-dfbspy-stat.patch [deleted file]
package/lite/lite-no-tests.patch [deleted file]
package/lite/lite-pkg-config.patch [deleted file]
package/lm-sensors/0001-static-build.patch [new file with mode: 0644]
package/lm-sensors/0002-no-host-ldconfig.patch [new file with mode: 0644]
package/lm-sensors/lm-sensors-0001-static-build.patch [deleted file]
package/lm-sensors/lm-sensors-0002-no-host-ldconfig.patch [deleted file]
package/lockfile-progs/0001-sus3v-legacy.patch [new file with mode: 0644]
package/lockfile-progs/lockfile-progs-01-sus3v-legacy.patch [deleted file]
package/log4cxx/0001-charset-fixes.patch [new file with mode: 0644]
package/log4cxx/0002-missing-includes.patch [new file with mode: 0644]
package/log4cxx/0003-missing-includes.patch [new file with mode: 0644]
package/log4cxx/log4cxx-0001-charset-fixes.patch [deleted file]
package/log4cxx/log4cxx-0002-missing-includes.patch [deleted file]
package/log4cxx/log4cxx-0003-missing-includes.patch [deleted file]
package/lshw/0001-add-LIBS.patch [new file with mode: 0644]
package/lshw/lshw-add-LIBS.patch [deleted file]
package/ltp-testsuite/0001-fix-build-on-uClibc-exp10.patch [new file with mode: 0644]
package/ltp-testsuite/ltp-testsuite-fix-build-on-uClibc-exp10.patch [deleted file]
package/ltrace/0001-events.patch [new file with mode: 0644]
package/ltrace/0002-arm-plt.patch [new file with mode: 0644]
package/ltrace/0003-PPC-fix-PPC32-build.patch [new file with mode: 0644]
package/ltrace/ltrace-01-events.patch [deleted file]
package/ltrace/ltrace-02-arm-plt.patch [deleted file]
package/ltrace/ltrace-03-PPC-fix-PPC32-build.patch [deleted file]
package/lttng-babeltrace/0001-no-posix-fallocate-in-uclibc.patch [new file with mode: 0644]
package/lttng-babeltrace/lttng-babeltrace-01-no-posix-fallocate-in-uclibc.patch [deleted file]
package/luajit/0004-no-bin-symlink.patch [new file with mode: 0644]
package/luajit/0005-install-inc.patch [new file with mode: 0644]
package/luajit/0006-install-so.patch [new file with mode: 0644]
package/luajit/luajit-04-no-bin-symlink.patch [deleted file]
package/luajit/luajit-05-install-inc.patch [deleted file]
package/luajit/luajit-06-install-so.patch [deleted file]
package/luasocket/0001-uClibc-IPv6.patch [new file with mode: 0644]
package/luasocket/luasocket-01-uClibc-IPv6.patch [deleted file]
package/lxc/0001-drop-werror.patch [new file with mode: 0644]
package/lxc/lxc-01-drop-werror.patch [deleted file]
package/lzma/0001-Remove-static-from-LDFLAGS.patch [new file with mode: 0644]
package/lzma/lzma-0001-Remove-static-from-LDFLAGS.patch [deleted file]
package/madplay/0001-switch-to-new-alsa-api.patch [new file with mode: 0644]
package/madplay/madplay-0.15.2b-switch-to-new-alsa-api.patch [deleted file]
package/matchbox/matchbox-lib/0001-index-is-legacy.patch [new file with mode: 0644]
package/matchbox/matchbox-lib/0002-libpng15.patch [new file with mode: 0644]
package/matchbox/matchbox-lib/0003-include-setjmp-h.patch [new file with mode: 0644]
package/matchbox/matchbox-lib/matchbox-lib-0001-index-is-legacy.patch [deleted file]
package/matchbox/matchbox-lib/matchbox-lib-0002-libpng15.patch [deleted file]
package/matchbox/matchbox-lib/matchbox-lib-0003-include-setjmp-h.patch [deleted file]
package/matchbox/matchbox-startup-monitor/0001-true-false.patch [new file with mode: 0644]
package/matchbox/matchbox-startup-monitor/matchbox-startup-monitor-0.1-true-false.patch [deleted file]
package/matchbox/matchbox-wm/0001-defaulttheme.patch [new file with mode: 0644]
package/matchbox/matchbox-wm/matchbox-wm-defaulttheme.patch [deleted file]
package/mcrypt/0001-CVE-2012-4409.patch [new file with mode: 0644]
package/mcrypt/0002-CVE-2012-4426.patch [new file with mode: 0644]
package/mcrypt/0003-CVE-2012-4527.patch [new file with mode: 0644]
package/mcrypt/0004-no-rpath.patch [new file with mode: 0644]
package/mcrypt/mcrypt-CVE-2012-4409.patch [deleted file]
package/mcrypt/mcrypt-CVE-2012-4426.patch [deleted file]
package/mcrypt/mcrypt-CVE-2012-4527.patch [deleted file]
package/mcrypt/mcrypt-no-rpath.patch [deleted file]
package/mdadm/0010-add-install-targets-for-mdadm-and-mdmon.patch [new file with mode: 0644]
package/mdadm/0020-uclibc-dont-force-largefile.patch [new file with mode: 0644]
package/mdadm/0030-uclibc-redefine-off64_t-as-off_t-if-no-largefile.patch [new file with mode: 0644]
package/mdadm/mdadm-010-add-install-targets-for-mdadm-and-mdmon.patch [deleted file]
package/mdadm/mdadm-020-uclibc-dont-force-largefile.patch [deleted file]
package/mdadm/mdadm-030-uclibc-redefine-off64_t-as-off_t-if-no-largefile.patch [deleted file]
package/media-ctl/0001-add-kernel-headers-for-compatibility-with-old-toolchains.patch [new file with mode: 0644]
package/media-ctl/media-ctl-0001-add-kernel-headers-for-compatibility-with-old-toolchains.patch [deleted file]
package/mediastreamer/0001-misc-fixes.patch [new file with mode: 0644]
package/mediastreamer/mediastreamer-0001.patch [deleted file]
package/memstat/0001-PATH_MAX.patch [new file with mode: 0644]
package/memstat/memstat-0001-PATH_MAX.patch [deleted file]
package/memtester/0001-makefile-fix.patch [new file with mode: 0644]
package/memtester/memtester-makefile-fix.patch [deleted file]
package/metacity/0001-add-libm-reference.patch [new file with mode: 0644]
package/metacity/0002-gconf.patch [new file with mode: 0644]
package/metacity/0003-mag-add-libm-reference.patch [new file with mode: 0644]
package/metacity/metacity-add-libm-reference.patch [deleted file]
package/metacity/metacity-gconf.patch [deleted file]
package/metacity/metacity-mag-add-libm-reference.patch [deleted file]
package/mii-diag/0001-strchr.patch [new file with mode: 0644]
package/mii-diag/mii-diag-strchr.patch [deleted file]
package/mmc-utils/0001-fix-mmc-h-includes.patch [new file with mode: 0644]
package/mmc-utils/mmc-utils-001-fix-mmc-h-includes.patch [deleted file]
package/mongrel2/0001-use-CC-variable-to-compile-procer.patch [new file with mode: 0644]
package/mongrel2/0002-Do-not-run-tests.patch [new file with mode: 0644]
package/mongrel2/0003-Fix-Makefiles-for-cross-compilation.patch [new file with mode: 0644]
package/mongrel2/mongrel2-0001-use-CC-variable-to-compile-procer.patch [deleted file]
package/mongrel2/mongrel2-0002-Do-not-run-tests.patch [deleted file]
package/mongrel2/mongrel2-0003-Fix-Makefiles-for-cross-compilation.patch [deleted file]
package/monit/0001-no-force-static.patch [new file with mode: 0644]
package/monit/monit-0001-no-force-static.patch [deleted file]
package/mono/0001-gc-fix-uclibc.patch [new file with mode: 0644]
package/mono/0002-support-uclibc-musl.patch [new file with mode: 0644]
package/mono/mono-001-gc-fix-uclibc.patch [deleted file]
package/mono/mono-002-support-uclibc-musl.patch [deleted file]
package/mplayer/0001-disable-install-strip.patch [new file with mode: 0644]
package/mplayer/0002-fix-cc-parsing.patch [new file with mode: 0644]
package/mplayer/0003-mpdemux-live555-async-interface.patch [new file with mode: 0644]
package/mplayer/0004-add-arc-support.patch [new file with mode: 0644]
package/mplayer/mplayer-0001-disable-install-strip.patch [deleted file]
package/mplayer/mplayer-0002-fix-cc-parsing.patch [deleted file]
package/mplayer/mplayer-0003-mpdemux-live555-async-interface.patch [deleted file]
package/mplayer/mplayer-0004-add-arc-support.patch [deleted file]
package/mtd/0001-Fix-rpmatch-call-under-uClibc.patch [new file with mode: 0644]
package/mtd/mtd-01-Fix-rpmatch-call-under-uClibc.patch [deleted file]
package/musepack/0001-shared.patch [new file with mode: 0644]
package/musepack/0002-cmake-use-the-standard-CMake-flag-to-drive-the-share.patch [new file with mode: 0644]
package/musepack/musepack-0001-shared.patch [deleted file]
package/musepack/musepack-0002-cmake-use-the-standard-CMake-flag-to-drive-the-share.patch [deleted file]
package/mutt/0001-nodoc.patch [new file with mode: 0644]
package/mutt/mutt-01-nodoc.patch [deleted file]
package/mxml/0001-fix-cross-target-installation.patch [new file with mode: 0644]
package/mxml/mxml-fix-cross-target-installation.patch [deleted file]
package/ncurses/0001-fixup-pkg-config-handling.patch [new file with mode: 0644]
package/ncurses/ncurses-01-fixup-pkg-config-handling.patch [deleted file]
package/ne10/0001-CMakeLists-don-t-hard-code-thumb-code-generation.patch [new file with mode: 0644]
package/ne10/ne10-01-CMakeLists-don-t-hard-code-thumb-code-generation.patch [deleted file]
package/netcat/0001-signed-bit-counting.patch [new file with mode: 0644]
package/netcat/netcat-0.7.1-signed-bit-counting.patch [deleted file]
package/netplug/0001-makefile-flags.patch [new file with mode: 0644]
package/netplug/netplug-1.2.9.2-makefile-flags.patch [deleted file]
package/network-manager/0001-NetworkManagerUtils-fix-build-with-toolchains-not-ex.patch [new file with mode: 0644]
package/network-manager/network-manager-0001-NetworkManagerUtils-fix-build-with-toolchains-not-ex.patch [deleted file]
package/nfacct/0001-uclinux.patch [new file with mode: 0644]
package/nfacct/nfacct-01-uclinux.patch [deleted file]
package/ngrep/0001-make-objs.patch [new file with mode: 0644]
package/ngrep/0002-pcre-header.patch [new file with mode: 0644]
package/ngrep/0003-fix-static-link.patch [new file with mode: 0644]
package/ngrep/ngrep-0001-make-objs.patch [deleted file]
package/ngrep/ngrep-0002-pcre-header.patch [deleted file]
package/ngrep/ngrep-0003-fix-static-link.patch [deleted file]
package/nodejs/0001-remove-python-bz2-dependency.patch [new file with mode: 0644]
package/nodejs/0002-gyp-force-link-command-to-use-CXX.patch [new file with mode: 0644]
package/nodejs/0003-use-python-variable.patch [new file with mode: 0644]
package/nodejs/0004-fix-build-error-without-OpenSSL-support.patch [new file with mode: 0644]
package/nodejs/nodejs-0001-remove-python-bz2-dependency.patch [deleted file]
package/nodejs/nodejs-0002-gyp-force-link-command-to-use-CXX.patch [deleted file]
package/nodejs/nodejs-0003-use-python-variable.patch [deleted file]
package/nodejs/nodejs-0004-fix-build-error-without-OpenSSL-support.patch [deleted file]
package/nut/0001-foo-config.patch [new file with mode: 0644]
package/nut/0002-parallel-build.patch [new file with mode: 0644]
package/nut/nut-0001-foo-config.patch [deleted file]
package/nut/nut-0002-parallel-build.patch [deleted file]
package/nuttcp/0001-susv3-legacy.patch [new file with mode: 0644]
package/nuttcp/nuttcp-6.1.2-susv3-legacy.patch [deleted file]
package/ocf-linux/0001-modules-cross.patch [new file with mode: 0644]
package/ocf-linux/ocf-linux-01-modules-cross.patch [deleted file]
package/ofono/0001-uclibc-backtrace.patch [new file with mode: 0644]
package/ofono/ofono-uclibc-backtrace.patch [deleted file]
package/open2300/0001-fix-makefile.patch [new file with mode: 0644]
package/open2300/open2300-0001-fix-makefile.patch [deleted file]
package/openobex/0001-libusb_check_when_cross-compiling.patch [new file with mode: 0644]
package/openobex/0002-replace_deprecated_functions.patch [new file with mode: 0644]
package/openobex/openobex-libusb_check_when_cross-compiling.patch [deleted file]
package/openobex/openobex-replace_deprecated_functions.patch [deleted file]
package/openpgm/0001-version_generator.py-make-it-python3-compliant.patch [new file with mode: 0644]
package/openpgm/0002-cross-compile.patch [new file with mode: 0644]
package/openpgm/openpgm-0001-version_generator.py-make-it-python3-compliant.patch [deleted file]
package/openpgm/openpgm-cross-compile.patch [deleted file]
package/openssh/0001-fix-pam-uclibc-pthreads-clash.patch [new file with mode: 0644]
package/openssh/0002-fix-howmany-include.patch [new file with mode: 0644]
package/openssh/openssh-01-fix-pam-uclibc-pthreads-clash.patch [deleted file]
package/openssh/openssh-02-fix-howmany-include.patch [deleted file]
package/openvmtools/0001-has_bsd_printf.patch [new file with mode: 0644]
package/openvmtools/0002-network_script.patch [new file with mode: 0644]
package/openvmtools/0003-conditionally-define-g_info.patch [new file with mode: 0644]
package/openvmtools/0004-no_cflags_werror.patch [new file with mode: 0644]
package/openvmtools/0005-dont-force-cppflags.patch [new file with mode: 0644]
package/openvmtools/openvmtools-01-has_bsd_printf.patch [deleted file]
package/openvmtools/openvmtools-02-network_script.patch [deleted file]
package/openvmtools/openvmtools-03-conditionally-define-g_info.patch [deleted file]
package/openvmtools/openvmtools-04-no_cflags_werror.patch [deleted file]
package/openvmtools/openvmtools-05-dont-force-cppflags.patch [deleted file]
package/opus-tools/0001-largefile.patch [new file with mode: 0644]
package/opus-tools/opus-tools-largefile.patch [deleted file]
package/opus/0001-configure.ac-fix-bashism-in-ARM-optimization-handling.patch [new file with mode: 0644]
package/opus/opus-01-configure.ac-fix-bashism-in-ARM-optimization-handling.patch [deleted file]
package/owl-linux/0001-fix-CROSS_COMPILE-usage-in-Makefile.patch [new file with mode: 0644]
package/owl-linux/0002-fix-for-linux-3.3.x.patch [new file with mode: 0644]
package/owl-linux/owl-linux-fix-CROSS_COMPILE-usage-in-Makefile.patch [deleted file]
package/owl-linux/owl-linux-fix-for-linux-3.3.x.patch [deleted file]
package/p11-kit/0001-Fix-build-against-older-pthreads-implementations.patch [new file with mode: 0644]
package/p11-kit/p11-kit-01-Fix-build-against-older-pthreads-implementations.patch [deleted file]
package/pango/0001-no-tests.patch [new file with mode: 0644]
package/pango/0002-no-gtk-doc.patch [new file with mode: 0644]
package/pango/pango-0001-no-tests.patch [deleted file]
package/pango/pango-0002-no-gtk-doc.patch [deleted file]
package/parted/0001-readline-deprecated.patch [new file with mode: 0644]
package/parted/0002-configure.ac-uclinux-is-also-linux.patch [new file with mode: 0644]
package/parted/0003-fix-static-link-uuid.patch [new file with mode: 0644]
package/parted/parted-001-readline-deprecated.patch [deleted file]
package/parted/parted-002-configure.ac-uclinux-is-also-linux.patch [deleted file]
package/parted/parted-003-fix-static-link-uuid.patch [deleted file]
package/pcmanfm/0001-link-against-libx11.patch [new file with mode: 0644]
package/pcmanfm/pcmanfm-link-against-libx11.patch [deleted file]
package/pcsc-lite/0001-pthread-needed-for-libusb.patch [new file with mode: 0644]
package/pcsc-lite/pcsc-lite-0001-pthread-needed-for-libusb.patch [deleted file]
package/perl-net-ssleay/0001-fix-build-system.patch [new file with mode: 0644]
package/perl-net-ssleay/perl-net-ssleay-0000-fix-build-system.patch [deleted file]
package/perl-xml-libxml/0001-Makefile-PL.patch [new file with mode: 0644]
package/perl-xml-libxml/perl-xml-libxml-01-Makefile-PL.patch [deleted file]
package/perl/0001-uClibc-IPv6.patch [new file with mode: 0644]
package/perl/perl-uClibc-IPv6.patch [deleted file]
package/pifmrds/0001-Makefile-cross-compile-friendly.patch [new file with mode: 0644]
package/pifmrds/0002-Makefile-use-LDFLAGS.patch [new file with mode: 0644]
package/pifmrds/pifmrds-0001-Makefile-cross-compile-friendly.patch [deleted file]
package/pifmrds/pifmrds-0002-Makefile-use-LDFLAGS.patch [deleted file]
package/pkgconf/0001-fix-variable.patch [new file with mode: 0644]
package/pkgconf/0002-fix-double-sysroot.patch [new file with mode: 0644]
package/pkgconf/pkgconf-01-fix-variable.patch [deleted file]
package/pkgconf/pkgconf-02-fix-double-sysroot.patch [deleted file]
package/poco/0001-aarch64.patch [new file with mode: 0644]
package/poco/0002-add-cross-build-config.patch [new file with mode: 0644]
package/poco/0003-add-staging-search-path.patch [new file with mode: 0644]
package/poco/0004-dont-build-debug-libs.patch [new file with mode: 0644]
package/poco/poco-aarch64.patch [deleted file]
package/poco/poco-add-cross-build-config.patch [deleted file]
package/poco/poco-add-staging-search-path.patch [deleted file]
package/poco/poco-dont-build-debug-libs.patch [deleted file]
package/popt/0001-no-wchar.patch [new file with mode: 0644]
package/popt/0002-fix-autoreconf.patch [new file with mode: 0644]
package/popt/0003-glob-detection.patch [new file with mode: 0644]
package/popt/popt-01-no-wchar.patch [deleted file]
package/popt/popt-02-fix-autoreconf.patch [deleted file]
package/popt/popt-03-glob-detection.patch [deleted file]
package/portmap/0001-README-fix-typo-in-tcp-wrapper-doc.patch [new file with mode: 0644]
package/portmap/0002-NO_PIE-make-PIE-support-controllable.patch [new file with mode: 0644]
package/portmap/0003-NO_FORK-control-usage-of-fork-for-nommu-systems.patch [new file with mode: 0644]
package/portmap/0004-NO_PERROR-control-overriding-of-perror-symbol.patch [new file with mode: 0644]
package/portmap/0005-tcpd.patch [new file with mode: 0644]
package/portmap/portmap-6.0-0001-README-fix-typo-in-tcp-wrapper-doc.patch [deleted file]
package/portmap/portmap-6.0-0002-NO_PIE-make-PIE-support-controllable.patch [deleted file]
package/portmap/portmap-6.0-0003-NO_FORK-control-usage-of-fork-for-nommu-systems.patch [deleted file]
package/portmap/portmap-6.0-0004-NO_PERROR-control-overriding-of-perror-symbol.patch [deleted file]
package/portmap/portmap-6.0-tcpd.patch [deleted file]
package/pptp-linux/0001-susv3-legacy.patch [new file with mode: 0644]
package/pptp-linux/0002-fix-parallel-build.patch [new file with mode: 0644]
package/pptp-linux/pptp-linux-001-susv3-legacy.patch [deleted file]
package/pptp-linux/pptp-linux-002-fix-parallel-build.patch [deleted file]
package/prboom/0001-libpng-1.4.patch [new file with mode: 0644]
package/prboom/prboom-2.5.0-libpng-1.4.patch [deleted file]
package/procps-ng/0001-remove-index.patch [new file with mode: 0644]
package/procps-ng/procps-ng-0000-remove-index.patch [deleted file]
package/proftpd/0001-fix-kernel-header-capability-version.patch [new file with mode: 0644]
package/proftpd/0002-__mempcpy.patch [new file with mode: 0644]
package/proftpd/proftpd-0001-fix-kernel-header-capability-version.patch [deleted file]
package/proftpd/proftpd-0002-__mempcpy.patch [deleted file]
package/psmisc/0001-link-against-libintl.patch [new file with mode: 0644]
package/psmisc/0002-no-__progname.patch [new file with mode: 0644]
package/psmisc/psmisc-link-against-libintl.patch [deleted file]
package/psmisc/psmisc-no-__progname.patch [deleted file]
package/pure-ftpd/0001-cross.patch [new file with mode: 0644]
package/pure-ftpd/pure-ftpd-0001-cross.patch [deleted file]
package/python-ipython/0001-set-correct-python-executable-path.patch [new file with mode: 0644]
package/python-ipython/python-ipython-001-set-correct-python-executable-path.patch [deleted file]
package/python-nfc/0001-add-setup-py.patch [new file with mode: 0644]
package/python-nfc/python-nfc-add-setup-py.patch [deleted file]
package/python-numpy/0001-no-fenv-on-uclibc.patch [new file with mode: 0644]
package/python-numpy/python-numpy-0001-no-fenv-on-uclibc.patch [deleted file]
package/python-pycrypto/0001-remove-incorrect-header-path.patch [new file with mode: 0644]
package/python-pycrypto/python-pycrypto-0001-remove-incorrect-header-path.patch [deleted file]
package/python-pyzmq/0001-use-buildroot-zmq-version-instead-of-detect.patch [new file with mode: 0644]
package/python-pyzmq/python-pyzmq-0001-use-buildroot-zmq-version-instead-of-detect.patch [deleted file]
package/python-setuptools/0001-add-executable.patch [new file with mode: 0644]
package/python-setuptools/python-setuptools-0001-add-executable.patch [deleted file]
package/qdecoder/0001-fix-make-install.patch [new file with mode: 0644]
package/qdecoder/0002-configure.ac-drop-hardcoded-paths.patch [new file with mode: 0644]
package/qdecoder/0003-errno.patch [new file with mode: 0644]
package/qdecoder/qdecoder-0001-fix-make-install.patch [deleted file]
package/qdecoder/qdecoder-0002-configure.ac-drop-hardcoded-paths.patch [deleted file]
package/qdecoder/qdecoder-0003-errno.patch [deleted file]
package/qextserialport/0001-gui.patch [new file with mode: 0644]
package/qextserialport/0002-main-include.patch [new file with mode: 0644]
package/qextserialport/0003-pkgconfig.patch [new file with mode: 0644]
package/qextserialport/qextserialport-gui.patch [deleted file]
package/qextserialport/qextserialport-main-include.patch [deleted file]
package/qextserialport/qextserialport-pkgconfig.patch [deleted file]
package/qlibc/0001-remove-absolute-paths.patch [new file with mode: 0644]
package/qlibc/0002-obey-destdir.patch [new file with mode: 0644]
package/qlibc/0003-fix-openssl-mysql-checks.patch [new file with mode: 0644]
package/qlibc/qlibc-0001-remove-absolute-paths.patch [deleted file]
package/qlibc/qlibc-0002-obey-destdir.patch [deleted file]
package/qlibc/qlibc-0003-fix-openssl-mysql-checks.patch [deleted file]
package/qt/0001-configure.patch [new file with mode: 0644]
package/qt/0002-eglwsegl-use-system.patch [new file with mode: 0644]
package/qt/0003-fix-const-atomics.patch [new file with mode: 0644]
package/qt/0004-pthread_getattr_np.patch [new file with mode: 0644]
package/qt/0005-script-qtdbus-no-gui.patch [new file with mode: 0644]
package/qt/0006-uClibc-lfs-fix.patch [new file with mode: 0644]
package/qt/qt-configure.patch [deleted file]
package/qt/qt-eglwsegl-use-system.patch [deleted file]
package/qt/qt-fix-const-atomics.patch [deleted file]
package/qt/qt-pthread_getattr_np.patch [deleted file]
package/qt/qt-script-qtdbus-no-gui.patch [deleted file]
package/qt/qt-uClibc-lfs-fix.patch [deleted file]
package/qt5/qt5base/0002-mkspecs-files.patch [new file with mode: 0644]
package/qt5/qt5base/0003-uclibc-no-lfs.patch [new file with mode: 0644]
package/qt5/qt5base/qt5base-0002-mkspecs-files.patch [deleted file]
package/qt5/qt5base/qt5base-0003-uclibc-no-lfs.patch [deleted file]
package/qt5/qt5webkit-examples/0001-build.patch [new file with mode: 0644]
package/qt5/qt5webkit-examples/qt5webkit-examples-0001-build.patch [deleted file]
package/qtuio/0001-TuioServer.cpp-add-missing-include.patch [new file with mode: 0644]
package/qtuio/0002-dont-append-_d-for-debug.patch [new file with mode: 0644]
package/qtuio/qtuio-TuioServer.cpp-add-missing-include.patch [deleted file]
package/qtuio/qtuio-dont-append-_d-for-debug.patch [deleted file]
package/quagga/0001-fix-ipctl-forwarding.patch [new file with mode: 0644]
package/quagga/quagga-fix-ipctl-forwarding.patch [deleted file]
package/qwt/0001-remove-installed-check.patch [new file with mode: 0644]
package/qwt/qwt-remove-installed-check.patch [deleted file]
package/rdesktop/0001-8bit-colors.patch [new file with mode: 0644]
package/rdesktop/rdesktop-01-8bit-colors.patch [deleted file]
package/readline/0001-curses-link.patch [new file with mode: 0644]
package/readline/readline-001-curses-link.patch [deleted file]
package/rp-pppoe/0002-krn-plugin.patch [new file with mode: 0644]
package/rp-pppoe/rp-pppoe-3.10-002-krn-plugin.patch [deleted file]
package/rpcbind/0001-Remove-yellow-pages-support.patch [new file with mode: 0644]
package/rpcbind/0003-Make-IPv6-configurable.patch [new file with mode: 0644]
package/rpcbind/rpcbind-0001-Remove-yellow-pages-support.patch [deleted file]
package/rpcbind/rpcbind-0003-Make-IPv6-configurable.patch [deleted file]
package/rpi-userland/0001-add-pkgconfig-files.patch [new file with mode: 0644]
package/rpi-userland/0002-makefiles-cmake-vmcs.cmake-allow-to-override-VMCS_IN.patch [new file with mode: 0644]
package/rpi-userland/0003-remove-faulty-assert.patch [new file with mode: 0644]
package/rpi-userland/0004-fix-musl-compile.patch [new file with mode: 0644]
package/rpi-userland/rpi-userland-000-add-pkgconfig-files.patch [deleted file]
package/rpi-userland/rpi-userland-001-makefiles-cmake-vmcs.cmake-allow-to-override-VMCS_IN.patch [deleted file]
package/rpi-userland/rpi-userland-002-remove-faulty-assert.patch [deleted file]
package/rpi-userland/rpi-userland-003-fix-musl-compile.patch [deleted file]
package/rpm/0001-uclibc-no-lfs-fix.patch [new file with mode: 0644]
package/rpm/0002-depends-fix.patch [new file with mode: 0644]
package/rpm/0003-exclude-some-tools.patch [new file with mode: 0644]
package/rpm/0004-ignore-shared-mutexes.patch [new file with mode: 0644]
package/rpm/0005-no-parentdirs.patch [new file with mode: 0644]
package/rpm/0006-ordering-fix.patch [new file with mode: 0644]
package/rpm/0007-parentdir-vs-requires.patch [new file with mode: 0644]
package/rpm/0008-short-circuit-c99.patch [new file with mode: 0644]
package/rpm/rpm-5.2.0-uclibc-no-lfs-fix.patch [deleted file]
package/rpm/rpm-5.2.0_depends-fix.patch [deleted file]
package/rpm/rpm-5.2.0_exclude-some-tools.patch [deleted file]
package/rpm/rpm-5.2.0_ignore-shared-mutexes.patch [deleted file]
package/rpm/rpm-5.2.0_no-parentdirs.patch [deleted file]
package/rpm/rpm-5.2.0_ordering-fix.patch [deleted file]
package/rpm/rpm-5.2.0_parentdir-vs-requires.patch [deleted file]
package/rpm/rpm-5.2.0_short-circuit-c99.patch [deleted file]
package/rrdtool/0001-automake-compat.patch [new file with mode: 0644]
package/rrdtool/0002-configure-dont-hardcode-include-dirs.patch [new file with mode: 0644]
package/rrdtool/rrdtool-automake-compat.patch [deleted file]
package/rrdtool/rrdtool-configure-dont-hardcode-include-dirs.patch [deleted file]
package/rtorrent/0001-cross_compile.patch [new file with mode: 0644]
package/rtorrent/rtorrent-cross_compile.patch [deleted file]
package/rtptools/0001-host2ip-no-nis-on-uClibc.patch [new file with mode: 0644]
package/rtptools/rtptools-01-host2ip-no-nis-on-uClibc.patch [deleted file]
package/rubix/0001-dont-use-legacy-functions.patch [new file with mode: 0644]
package/rubix/0002-misc-fixes.patch [new file with mode: 0644]
package/rubix/rubix-1.0.5-dont-use-legacy-functions.patch [deleted file]
package/rubix/rubix-1.0.5.patch [deleted file]
package/samba/0001-fix-smbd-libs-avahi.patch [new file with mode: 0644]
package/samba/0002-getaddrinfo.patch [new file with mode: 0644]
package/samba/samba-0001-fix-smbd-libs-avahi.patch [deleted file]
package/samba/samba-0002-getaddrinfo.patch [deleted file]
package/sawman/0001-link-using-gcc-instead-of-ld.patch [new file with mode: 0644]
package/sawman/sawman-001-link-using-gcc-instead-of-ld.patch [deleted file]
package/screen/0001-compiler-sanity-checks.patch [new file with mode: 0644]
package/screen/0002-no-memcpy-fallback.patch [new file with mode: 0644]
package/screen/0003-cross-compilation-AC_TRY_RUN.patch [new file with mode: 0644]
package/screen/0004-cross-compilation-ignore-host-fs.patch [new file with mode: 0644]
package/screen/0005-avoid-identifying-as-SVR4.patch [new file with mode: 0644]
package/screen/0006-install-no-backup-binary.patch [new file with mode: 0644]
package/screen/0007-install-always-chmod.patch [new file with mode: 0644]
package/screen/0008-install-nonversioned-binary.patch [new file with mode: 0644]
package/screen/0009-install-dir-dependency.patch [new file with mode: 0644]
package/screen/0010-rename-sched_h.patch [new file with mode: 0644]
package/screen/screen-0001-compiler-sanity-checks.patch [deleted file]
package/screen/screen-0002-no-memcpy-fallback.patch [deleted file]
package/screen/screen-0003-cross-compilation-AC_TRY_RUN.patch [deleted file]
package/screen/screen-0004-cross-compilation-ignore-host-fs.patch [deleted file]
package/screen/screen-0005-avoid-identifying-as-SVR4.patch [deleted file]
package/screen/screen-0006-install-no-backup-binary.patch [deleted file]
package/screen/screen-0007-install-always-chmod.patch [deleted file]
package/screen/screen-0008-install-nonversioned-binary.patch [deleted file]
package/screen/screen-0009-install-dir-dependency.patch [deleted file]
package/screen/screen-0010-rename-sched_h.patch [deleted file]
package/sdl/0001-use-correct-directfb-config.patch [new file with mode: 0644]
package/sdl/0002-fix-compilation-with-libx11.patch [new file with mode: 0644]
package/sdl/sdl-0001-use-correct-directfb-config.patch [deleted file]
package/sdl/sdl-0002-fix-compilation-with-libx11.patch [deleted file]
package/ser2net/0001-Fix-TIOCSRS485-undeclared-error.patch [new file with mode: 0644]
package/ser2net/ser2net-0001-Fix-TIOCSRS485-undeclared-error.patch [deleted file]
package/setserial/0001-build-system-fix.patch [new file with mode: 0644]
package/setserial/0002-tiocghayesesp-build-fix.patch [new file with mode: 0644]
package/setserial/setserial-0001-build-system-fix.patch [deleted file]
package/setserial/setserial-0002-tiocghayesesp-build-fix.patch [deleted file]
package/sispmctl/0001-configure-add-pkg-config-support.patch [new file with mode: 0644]
package/sispmctl/sispmctl-01-configure-add-pkg-config-support.patch [deleted file]
package/smstools3/0001-fix-Makefile.patch [new file with mode: 0644]
package/smstools3/smstools3-0000-fix-Makefile.patch [deleted file]
package/snmppp/0001-Add-missing-includes.patch [new file with mode: 0644]
package/snmppp/snmppp-01-Add-missing-includes.patch [deleted file]
package/socat/0001-no-documentation.patch [new file with mode: 0644]
package/socat/socat-001-no-documentation.patch [deleted file]
package/sox/0001-uclibc.patch [new file with mode: 0644]
package/sox/sox-0001-uclibc.patch [deleted file]
package/speex/0001-thumb2-support.patch [new file with mode: 0644]
package/speex/speex-thumb2-support.patch [deleted file]
package/spice/0001-fix-missing-monitor_latency-argument.patch [new file with mode: 0644]
package/spice/spice-0001-fix-missing-monitor_latency-argument.patch [deleted file]
package/statserial/0001-ncurses-link.patch [new file with mode: 0644]
package/statserial/statserial-01-ncurses-link.patch [deleted file]
package/strace/0001-sigaction-wrap-sa_restorer-in-ifdef-SA_RESTORER-cons.patch [new file with mode: 0644]
package/strace/strace-0001-sigaction-wrap-sa_restorer-in-ifdef-SA_RESTORER-cons.patch [deleted file]
package/stress/0001-Remove-largefile.patch [new file with mode: 0644]
package/stress/stress-0001-Remove-largefile.patch [deleted file]
package/sudo/0001-no-netgroup.patch [new file with mode: 0644]
package/sudo/0002-drop-sspcflags-piecflags-for-host.patch [new file with mode: 0644]
package/sudo/sudo-0001-no-netgroup.patch [deleted file]
package/sudo/sudo-0002-drop-sspcflags-piecflags-for-host.patch [deleted file]
package/sunxi-mali/0001-Add-missing-GLchar-definitions.patch [new file with mode: 0644]
package/sunxi-mali/sunxi-mali-0001-Add-missing-GLchar-definitions.patch [deleted file]
package/synergy/0001-includes.patch [new file with mode: 0644]
package/synergy/0002-remove-werror.patch [new file with mode: 0644]
package/synergy/synergy-1.3.1-includes.patch [deleted file]
package/synergy/synergy-1.3.1-remove-werror.patch [deleted file]
package/sysprof/0001-define-NT_GNU_BUILD_ID.patch [new file with mode: 0644]
package/sysprof/sysprof-01-define-NT_GNU_BUILD_ID.patch [deleted file]
package/taglib/0001-cmake-use-the-standard-CMake-flag-to-drive-the-share.patch [new file with mode: 0644]
package/taglib/taglib-0001-cmake-use-the-standard-CMake-flag-to-drive-the-share.patch [deleted file]
package/tar/0001-fix-build-failure.patch [new file with mode: 0644]
package/tar/tar-0001-fix-build-failure.patch [deleted file]
package/tcl/0001-dont-build-compat.patch [new file with mode: 0644]
package/tcl/tcl-0001-dont-build-compat.patch [deleted file]
package/thttpd/0001-getline.patch [new file with mode: 0644]
package/thttpd/thttpd-2.25b-getline.patch [deleted file]
package/ti-gfx/0001-newclkapi.patch [new file with mode: 0644]
package/ti-gfx/0002-fix-build-omaplfb-linux.patch [new file with mode: 0644]
package/ti-gfx/0003-km_install_modules.patch [new file with mode: 0644]
package/ti-gfx/ti-gfx-0000-newclkapi.patch [deleted file]
package/ti-gfx/ti-gfx-0001-fix-build-omaplfb-linux.patch [deleted file]
package/ti-gfx/ti-gfx-km_install_modules.patch [deleted file]
package/tinyhttpd/0001-misc-fixes.patch [new file with mode: 0644]
package/tinyhttpd/tinyhttpd.patch [deleted file]
package/tn5250/0001-ssldir.patch [new file with mode: 0644]
package/tn5250/tn5250-01-ssldir.patch [deleted file]
package/trace-cmd/0001-Fix-ptrace-detection.patch [new file with mode: 0644]
package/trace-cmd/trace-cmd-0001-Fix-ptrace-detection.patch [deleted file]
package/transmission/0001-fix-utypes.patch [new file with mode: 0644]
package/transmission/transmission-01-fix-utypes.patch [deleted file]
package/tslib/0001-enable_raw_module.patch [new file with mode: 0644]
package/tslib/0002-add_finddef_and_inputattach_utils.patch [new file with mode: 0644]
package/tslib/tslib-enable_raw_module.patch [deleted file]
package/tslib/tslib_add_finddef_and_inputattach_utils.patch [deleted file]
package/uboot-tools/0001-drop-configh-from-tools.patch [new file with mode: 0644]
package/uboot-tools/0002-nostrip.patch [new file with mode: 0644]
package/uboot-tools/uboot-tools-01-drop-configh-from-tools.patch [deleted file]
package/uboot-tools/uboot-tools-02-nostrip.patch [deleted file]
package/udpcast/0001-select-h.patch [new file with mode: 0644]
package/udpcast/udpcast-select-h.patch [deleted file]
package/unionfs/0001-fuse-no-cxx-needed.patch [new file with mode: 0644]
package/unionfs/unionfs-fuse-no-cxx-needed.patch [deleted file]
package/urg/0001-select-h.patch [new file with mode: 0644]
package/urg/urg-select-h.patch [deleted file]
package/usbmount/0001-rules-fix.patch [new file with mode: 0644]
package/usbmount/0002-use-udev-environment-instead-of-blkid.patch [new file with mode: 0644]
package/usbmount/usbmount-rules-fix.patch [deleted file]
package/usbmount/usbmount-use-udev-environment-instead-of-blkid.patch [deleted file]
package/ushare/0001-compile-fixes.patch [new file with mode: 0644]
package/ushare/ushare-compile-fixes.patch [deleted file]
package/ussp-push/0001-fix-build-against-bluez-4.patch [new file with mode: 0644]
package/ussp-push/ussp-push-fix-build-against-bluez-4.patch [deleted file]
package/vala/0001-dont-add-dirty-to-valac-version.patch [new file with mode: 0644]
package/vala/vala-dont-add-dirty-to-valac-version.patch [deleted file]
package/valgrind/0001-workaround-SIGSEGV-on-PPC.patch [new file with mode: 0644]
package/valgrind/0002-don-t-enable-largefile-support-unconditionally-on-uC.patch [new file with mode: 0644]
package/valgrind/0003-add-missing-ptrace-getsiginfo-on-powerpc.patch [new file with mode: 0644]
package/valgrind/valgrind-0001-workaround-SIGSEGV-on-PPC.patch [deleted file]
package/valgrind/valgrind-0002-don-t-enable-largefile-support-unconditionally-on-uC.patch [deleted file]
package/valgrind/valgrind-0003-add-missing-ptrace-getsiginfo-on-powerpc.patch [deleted file]
package/vde2/0001-no-cxx.patch [new file with mode: 0644]
package/vde2/vde2-no-cxx.patch [deleted file]
package/vlc/0001-vlc-static.patch [new file with mode: 0644]
package/vlc/0002-configure.ac-add-check-for-libgcrypt-config-program.patch [new file with mode: 0644]
package/vlc/0003-automake-add-subdir-objects-option.patch [new file with mode: 0644]
package/vlc/0004-libav.patch [new file with mode: 0644]
package/vlc/vlc-0001-vlc-static.patch [deleted file]
package/vlc/vlc-0002-configure.ac-add-check-for-libgcrypt-config-program.patch [deleted file]
package/vlc/vlc-0003-automake-add-subdir-objects-option.patch [deleted file]
package/vlc/vlc-0004-libav.patch [deleted file]
package/vpnc/0001-fix-build.patch [new file with mode: 0644]
package/vpnc/0002-nomanual.patch [new file with mode: 0644]
package/vpnc/0003-susv3-legacy.patch [new file with mode: 0644]
package/vpnc/vpnc-0.5.3-fix-build.patch [deleted file]
package/vpnc/vpnc-0.5.3-nomanual.patch [deleted file]
package/vpnc/vpnc-0.5.3-susv3-legacy.patch [deleted file]
package/vtun/0001-fix-installation.patch [new file with mode: 0644]
package/vtun/0002-fix-ssl-headers-checks.patch [new file with mode: 0644]
package/vtun/0003-fixup-configure.in.patch [new file with mode: 0644]
package/vtun/vtun-001-fix-installation.patch [deleted file]
package/vtun/vtun-002-fix-ssl-headers-checks.patch [deleted file]
package/vtun/vtun-003-fixup-configure.in.patch [deleted file]
package/webkit/0001-build-fix-for-32-bit-autotools.patch [new file with mode: 0644]
package/webkit/0002-build-fix-for-gtklauncher.patch [new file with mode: 0644]
package/webkit/0003-detect-harfbuzz-icu.patch [new file with mode: 0644]
package/webkit/0004-disable-docrebase.patch [new file with mode: 0644]
package/webkit/0005-disable-tests.patch [new file with mode: 0644]
package/webkit/0006-execinfo_h.patch [new file with mode: 0644]
package/webkit/0007-mips-dfg.patch [new file with mode: 0644]
package/webkit/0008-support-bison-3.0.patch [new file with mode: 0644]
package/webkit/webkit-0001-build-fix-for-32-bit-autotools.patch [deleted file]
package/webkit/webkit-0002-build-fix-for-gtklauncher.patch [deleted file]
package/webkit/webkit-0003-detect-harfbuzz-icu.patch [deleted file]
package/webkit/webkit-0004-disable-docrebase.patch [deleted file]
package/webkit/webkit-0005-disable-tests.patch [deleted file]
package/webkit/webkit-0006-execinfo_h.patch [deleted file]
package/webkit/webkit-0007-mips-dfg.patch [deleted file]
package/webkit/webkit-0008-support-bison-3.0.patch [deleted file]
package/wipe/0001-dont-force-lfs.patch [new file with mode: 0644]
package/wipe/wipe-dont-force-lfs.patch [deleted file]
package/wireless_tools/0001-remove-bzero.patch [new file with mode: 0644]
package/wireless_tools/wireless_tools-01-remove-bzero.patch [deleted file]
package/wireshark/0001-fix-wrong-cflags-for-build-assumption.patch [new file with mode: 0644]
package/wireshark/wireshark-0001-fix-wrong-cflags-for-build-assumption.patch [deleted file]
package/wpa_supplicant/0001-fix-musl-build-error.patch [new file with mode: 0644]
package/wpa_supplicant/wpa_supplicant-0001-fix-musl-build-error.patch [deleted file]
package/wvdial/0001-uClibc-scandir.patch [new file with mode: 0644]
package/wvdial/wvdial-0001-uClibc-scandir.patch [deleted file]
package/wvstreams/0001-fix-uClibc-compile-getcontext.patch [new file with mode: 0644]
package/wvstreams/0002-fix-uClibc-compile-execinfo-backtrace.patch [new file with mode: 0644]
package/wvstreams/0003-fix-uClibc-compile-misc.patch [new file with mode: 0644]
package/wvstreams/0004-build-fixes.patch [new file with mode: 0644]
package/wvstreams/0005-getuid.patch [new file with mode: 0644]
package/wvstreams/wvstreams-0001-fix-uClibc-compile-getcontext.patch [deleted file]
package/wvstreams/wvstreams-0002-fix-uClibc-compile-execinfo-backtrace.patch [deleted file]
package/wvstreams/wvstreams-0003-fix-uClibc-compile-misc.patch [deleted file]
package/wvstreams/wvstreams-0004-build-fixes.patch [deleted file]
package/wvstreams/wvstreams-0005-getuid.patch [deleted file]
package/x11r7/xapp_luit/0001-posix-openpt.patch [new file with mode: 0644]
package/x11r7/xapp_luit/xapp_luit-posix-openpt.patch [deleted file]
package/x11r7/xcursor-transparent-theme/0001-fix-symlink.patch [new file with mode: 0644]
package/x11r7/xcursor-transparent-theme/xcursor-transparent-theme-0001-fix-symlink.patch [deleted file]
package/x11r7/xdriver_xf86-input-tslib/0001-fix-segfault.patch [new file with mode: 0644]
package/x11r7/xdriver_xf86-input-tslib/0002-port-abi-12.patch [new file with mode: 0644]
package/x11r7/xdriver_xf86-input-tslib/xdriver_xf86-input-tslib-0001-fix-segfault.patch [deleted file]
package/x11r7/xdriver_xf86-input-tslib/xdriver_xf86-input-tslib-0002-port-abi-12.patch [deleted file]
package/x11r7/xdriver_xf86-video-ark/0001-mibstore.patch [new file with mode: 0644]
package/x11r7/xdriver_xf86-video-ark/xdriver_xf86-video-ark-0001-mibstore.patch [deleted file]
package/x11r7/xdriver_xf86-video-ati/0001-noxaa.patch [new file with mode: 0644]
package/x11r7/xdriver_xf86-video-ati/0002-mibstore.patch [new file with mode: 0644]
package/x11r7/xdriver_xf86-video-ati/0003-DamageUnregister.patch [new file with mode: 0644]
package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati-0001-noxaa.patch [deleted file]
package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati-0002-mibstore.patch [deleted file]
package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati-0003-DamageUnregister.patch [deleted file]
package/x11r7/xdriver_xf86-video-geode/0001-include.patch [new file with mode: 0644]
package/x11r7/xdriver_xf86-video-geode/xdriver_xf86-video-geode-0001-include.patch [deleted file]
package/x11r7/xdriver_xf86-video-glint/0001-mbstring.patch [new file with mode: 0644]
package/x11r7/xdriver_xf86-video-glint/xdriver_xf86-video-glint-0001-mbstring.patch [deleted file]
package/x11r7/xdriver_xf86-video-i128/0001-mbstring.patch [new file with mode: 0644]
package/x11r7/xdriver_xf86-video-i128/xdriver_xf86-video-i128-0001-mbstring.patch [deleted file]
package/x11r7/xdriver_xf86-video-mach64/0001-cross-compile.patch [new file with mode: 0644]
package/x11r7/xdriver_xf86-video-mach64/xdriver_xf86-video-mach64-cross-compile.patch [deleted file]
package/x11r7/xdriver_xf86-video-mga/0001-misc-fixes.patch [new file with mode: 0644]
package/x11r7/xdriver_xf86-video-mga/xdriver_xf86-video-mga-1.4.9.patch [deleted file]
package/x11r7/xdriver_xf86-video-nv/0001-mibstore.patch [new file with mode: 0644]
package/x11r7/xdriver_xf86-video-nv/xdriver_xf86-video-nv-0001-mibstore.patch [deleted file]
package/x11r7/xdriver_xf86-video-r128/0001-cross-compile.patch [new file with mode: 0644]
package/x11r7/xdriver_xf86-video-r128/xdriver_xf86-video-r128-cross-compile.patch [deleted file]
package/x11r7/xdriver_xf86-video-savage/0001-cross-compile.patch [new file with mode: 0644]
package/x11r7/xdriver_xf86-video-savage/xdriver_xf86-video-savage-2.2.1-cross-compile.patch [deleted file]
package/x11r7/xdriver_xf86-video-siliconmotion/0001-smi_driver.patch [new file with mode: 0644]
package/x11r7/xdriver_xf86-video-siliconmotion/xdriver_xf86-video-siliconmotion-0001-smi_driver.patch [deleted file]
package/x11r7/xdriver_xf86-video-sis/0001-cross.patch [new file with mode: 0644]
package/x11r7/xdriver_xf86-video-sis/0002-mibstore.patch [new file with mode: 0644]
package/x11r7/xdriver_xf86-video-sis/0003-xf86UnMapVidMem.patch [new file with mode: 0644]
package/x11r7/xdriver_xf86-video-sis/0004-xf86Priv.patch [new file with mode: 0644]
package/x11r7/xdriver_xf86-video-sis/0005-hvdisplay.patch [new file with mode: 0644]
package/x11r7/xdriver_xf86-video-sis/0006-fixwarnings.patch [new file with mode: 0644]
package/x11r7/xdriver_xf86-video-sis/0007-xi.patch [new file with mode: 0644]
package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis-0001-cross.patch [deleted file]
package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis-0002-mibstore.patch [deleted file]
package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis-0003-xf86UnMapVidMem.patch [deleted file]
package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis-0004-xf86Priv.patch [deleted file]
package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis-0005-hvdisplay.patch [deleted file]
package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis-0006-fixwarnings.patch [deleted file]
package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis-0007-xi.patch [deleted file]
package/x11r7/xdriver_xf86-video-tdfx/0001-cross.patch [new file with mode: 0644]
package/x11r7/xdriver_xf86-video-tdfx/0002-mibstore.patch [new file with mode: 0644]
package/x11r7/xdriver_xf86-video-tdfx/xdriver_xf86-video-tdfx-0001-cross.patch [deleted file]
package/x11r7/xdriver_xf86-video-tdfx/xdriver_xf86-video-tdfx-0002-mibstore.patch [deleted file]
package/x11r7/xdriver_xf86-video-tga/0001-mibstore.patch [new file with mode: 0644]
package/x11r7/xdriver_xf86-video-tga/xdriver_xf86-video-tga-0001-mibstore.patch [deleted file]
package/x11r7/xdriver_xf86-video-trident/0001-mibstore.patch [new file with mode: 0644]
package/x11r7/xdriver_xf86-video-trident/0002-xaa.patch [new file with mode: 0644]
package/x11r7/xdriver_xf86-video-trident/xdriver_xf86-video-trident-0001-mibstore.patch [deleted file]
package/x11r7/xdriver_xf86-video-trident/xdriver_xf86-video-trident-0002-xaa.patch [deleted file]
package/x11r7/xlib_libXpm/0001-fork-check.patch [new file with mode: 0644]
package/x11r7/xlib_libXpm/xlib_libXpm-01-fork-check.patch [deleted file]
package/x11r7/xlib_libXt/0001-util-don-t-link-makestrs-with-target-cflags.patch [new file with mode: 0644]
package/x11r7/xlib_libXt/xlib_libXt-0001-util-don-t-link-makestrs-with-target-cflags.patch [deleted file]
package/x11vnc/0001-ipv6.patch [new file with mode: 0644]
package/x11vnc/x11vnc-ipv6.patch [deleted file]
package/xinetd/0001-ar.patch [new file with mode: 0644]
package/xinetd/0002-destdir.patch [new file with mode: 0644]
package/xinetd/0003-rpc-fix.patch [new file with mode: 0644]
package/xinetd/0004-configure-rlim_t.patch [new file with mode: 0644]
package/xinetd/xinetd-001-ar.patch [deleted file]
package/xinetd/xinetd-002-destdir.patch [deleted file]
package/xinetd/xinetd-003-rpc-fix.patch [deleted file]
package/xinetd/xinetd-004-configure-rlim_t.patch [deleted file]
package/xl2tp/0001-legacy.patch [new file with mode: 0644]
package/xl2tp/xl2tp-legacy.patch [deleted file]
package/xscreensaver/0001-fix-cross-compile-ansi-c-bailout.patch [new file with mode: 0644]
package/xscreensaver/0002-fix-minixpm-build-problem.patch [new file with mode: 0644]
package/xscreensaver/0003-driver-fix-linking-with-lintl.patch [new file with mode: 0644]
package/xscreensaver/xscreensaver-0001-fix-cross-compile-ansi-c-bailout.patch [deleted file]
package/xscreensaver/xscreensaver-0002-fix-minixpm-build-problem.patch [deleted file]
package/xscreensaver/xscreensaver-0003-driver-fix-linking-with-lintl.patch [deleted file]
package/xvkbd/0001-makefile.patch [new file with mode: 0644]
package/xvkbd/xvkbd-makefile.patch [deleted file]
package/yajl/0001-math-link.patch [new file with mode: 0644]
package/yajl/0002-cmake-disable-shared-library-build-when-BUILD_SHARED.patch [new file with mode: 0644]
package/yajl/yajl-0001-math-link.patch [deleted file]
package/yajl/yajl-0002-cmake-disable-shared-library-build-when-BUILD_SHARED.patch [deleted file]
package/ympd/0002-only-c-language.patch [new file with mode: 0644]
package/ympd/ympd-0002-only-c-language.patch [deleted file]
package/zic/0001-fix-dependencies.patch [new file with mode: 0644]
package/zic/zic-fix-dependencies.patch [deleted file]
package/zlog/0001-fix-compiling-on-Buildroot.patch [new file with mode: 0644]
package/zlog/0002-compile-Remove-Werror-and-avoid-build-failures-becau.patch [new file with mode: 0644]
package/zlog/zlog-01-fix-compiling-on-Buildroot.patch [deleted file]
package/zlog/zlog-02-compile-Remove-Werror-and-avoid-build-failures-becau.patch [deleted file]
package/znc/0001-time.patch [new file with mode: 0644]
package/znc/znc-01-time.patch [deleted file]
package/zxing/0001-makefile.patch [new file with mode: 0644]
package/zxing/zxing-makefile.patch [deleted file]

diff --git a/package/acl/0001-support-static-installation.patch b/package/acl/0001-support-static-installation.patch
new file mode 100644 (file)
index 0000000..4cb473f
--- /dev/null
@@ -0,0 +1,29 @@
+Support installation of .a file when doing static linking
+
+When doing static linking (i.e ENABLE_SHARED != yes), the acl build
+logic wasn't installing any library at all, not even the .a file which
+is needed for static linking. This patch fixes that.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/include/buildmacros
+===================================================================
+--- a/include/buildmacros
++++ b/include/buildmacros
+@@ -97,7 +97,15 @@
+ INSTALL_LTLIB_STATIC = \
+       cd $(TOPDIR)/$(LIBNAME)/.libs; \
+-      ../$(INSTALL) -m 755 -d $(PKG_DEVLIB_DIR);
++      ../$(INSTALL) -m 755 -d $(PKG_DEVLIB_DIR); \
++      ../$(INSTALL) -m 644 -T old_lib $(LIBNAME).la $(PKG_DEVLIB_DIR); \
++      ../$(INSTALL) -m 644 $(LIBNAME).la $(PKG_DEVLIB_DIR)/$(LIBNAME).la ; \
++      ../$(INSTALL) -m 755 -d $(PKG_LIB_DIR); \
++      ../$(INSTALL) -T so_base $(LIBNAME).la $(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; \
++      fi
+ INSTALL_MAN = \
+       @for d in $(MAN_PAGES); do \
diff --git a/package/acl/acl-01-support-static-installation.patch b/package/acl/acl-01-support-static-installation.patch
deleted file mode 100644 (file)
index 4cb473f..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-Support installation of .a file when doing static linking
-
-When doing static linking (i.e ENABLE_SHARED != yes), the acl build
-logic wasn't installing any library at all, not even the .a file which
-is needed for static linking. This patch fixes that.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/include/buildmacros
-===================================================================
---- a/include/buildmacros
-+++ b/include/buildmacros
-@@ -97,7 +97,15 @@
- INSTALL_LTLIB_STATIC = \
-       cd $(TOPDIR)/$(LIBNAME)/.libs; \
--      ../$(INSTALL) -m 755 -d $(PKG_DEVLIB_DIR);
-+      ../$(INSTALL) -m 755 -d $(PKG_DEVLIB_DIR); \
-+      ../$(INSTALL) -m 644 -T old_lib $(LIBNAME).la $(PKG_DEVLIB_DIR); \
-+      ../$(INSTALL) -m 644 $(LIBNAME).la $(PKG_DEVLIB_DIR)/$(LIBNAME).la ; \
-+      ../$(INSTALL) -m 755 -d $(PKG_LIB_DIR); \
-+      ../$(INSTALL) -T so_base $(LIBNAME).la $(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; \
-+      fi
- INSTALL_MAN = \
-       @for d in $(MAN_PAGES); do \
diff --git a/package/acpid/0001-dont-use-isfdtype.patch b/package/acpid/0001-dont-use-isfdtype.patch
new file mode 100644 (file)
index 0000000..2fe6c21
--- /dev/null
@@ -0,0 +1,20 @@
+Partially roll back upstream commit 4711119089e1ad08dad206f4fded68f1972fdeed
+since released versions of uClibc don't support isfdtype().
+
+Signed-off-by: Gustavo Zaarias <gustavo@zacarias.com.ar>
+
+diff -Nura acpid-2.0.22.orig/sock.c acpid-2.0.22/sock.c
+--- acpid-2.0.22.orig/sock.c   2014-04-22 18:04:19.706841764 -0300
++++ acpid-2.0.22/sock.c        2014-04-22 18:05:08.285479625 -0300
+@@ -53,7 +53,10 @@
+ int
+ is_socket(int fd)
+ {
+-    return (isfdtype(fd, S_IFSOCK) == 1);
++      int v;
++      socklen_t l = sizeof(int);
++
++      return (getsockopt(fd, SOL_SOCKET, SO_TYPE, (char *)&v, &l) == 0);
+ }
+ /* accept a new client connection */
diff --git a/package/acpid/0002-add-missing-defines.patch b/package/acpid/0002-add-missing-defines.patch
new file mode 100644 (file)
index 0000000..a853159
--- /dev/null
@@ -0,0 +1,40 @@
+Add missing MSG_CMSG_CLOEXEC
+
+Unpatched uClibc toolchains, even using the latest 0.9.33.2, do not
+have the MSG_CMSG_CLOEXEC definition. Even though the Buildroot
+internal toolchain backend has a uClibc patch to provide it, it
+doesn't apply to external toolchains. This patch provides the
+definition of MSG_CMSG_CLOEXEC.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/libnetlink.h
+===================================================================
+--- a/libnetlink.h
++++ b/libnetlink.h
+@@ -7,6 +7,10 @@
+ #include <linux/netlink.h>
+ #include <linux/rtnetlink.h>
++#ifndef MSG_CMSG_CLOEXEC
++#define MSG_CMSG_CLOEXEC 0x40000000
++#endif
++
+ struct rtnl_handle
+ {
+       int                     fd;
+Index: b/kacpimon/libnetlink.h
+===================================================================
+--- a/kacpimon/libnetlink.h
++++ b/kacpimon/libnetlink.h
+@@ -7,6 +7,10 @@
+ #include <linux/netlink.h>
+ #include <linux/rtnetlink.h>
++#ifndef MSG_CMSG_CLOEXEC
++#define MSG_CMSG_CLOEXEC 0x40000000
++#endif
++
+ struct rtnl_handle
+ {
+       int                     fd;
diff --git a/package/acpid/acpid-01-dont-use-isfdtype.patch b/package/acpid/acpid-01-dont-use-isfdtype.patch
deleted file mode 100644 (file)
index 2fe6c21..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-Partially roll back upstream commit 4711119089e1ad08dad206f4fded68f1972fdeed
-since released versions of uClibc don't support isfdtype().
-
-Signed-off-by: Gustavo Zaarias <gustavo@zacarias.com.ar>
-
-diff -Nura acpid-2.0.22.orig/sock.c acpid-2.0.22/sock.c
---- acpid-2.0.22.orig/sock.c   2014-04-22 18:04:19.706841764 -0300
-+++ acpid-2.0.22/sock.c        2014-04-22 18:05:08.285479625 -0300
-@@ -53,7 +53,10 @@
- int
- is_socket(int fd)
- {
--    return (isfdtype(fd, S_IFSOCK) == 1);
-+      int v;
-+      socklen_t l = sizeof(int);
-+
-+      return (getsockopt(fd, SOL_SOCKET, SO_TYPE, (char *)&v, &l) == 0);
- }
- /* accept a new client connection */
diff --git a/package/acpid/acpid-02-add-missing-defines.patch b/package/acpid/acpid-02-add-missing-defines.patch
deleted file mode 100644 (file)
index a853159..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-Add missing MSG_CMSG_CLOEXEC
-
-Unpatched uClibc toolchains, even using the latest 0.9.33.2, do not
-have the MSG_CMSG_CLOEXEC definition. Even though the Buildroot
-internal toolchain backend has a uClibc patch to provide it, it
-doesn't apply to external toolchains. This patch provides the
-definition of MSG_CMSG_CLOEXEC.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/libnetlink.h
-===================================================================
---- a/libnetlink.h
-+++ b/libnetlink.h
-@@ -7,6 +7,10 @@
- #include <linux/netlink.h>
- #include <linux/rtnetlink.h>
-+#ifndef MSG_CMSG_CLOEXEC
-+#define MSG_CMSG_CLOEXEC 0x40000000
-+#endif
-+
- struct rtnl_handle
- {
-       int                     fd;
-Index: b/kacpimon/libnetlink.h
-===================================================================
---- a/kacpimon/libnetlink.h
-+++ b/kacpimon/libnetlink.h
-@@ -7,6 +7,10 @@
- #include <linux/netlink.h>
- #include <linux/rtnetlink.h>
-+#ifndef MSG_CMSG_CLOEXEC
-+#define MSG_CMSG_CLOEXEC 0x40000000
-+#endif
-+
- struct rtnl_handle
- {
-       int                     fd;
diff --git a/package/aiccu/0001-gnutls-and-uclibc-fixes.patch b/package/aiccu/0001-gnutls-and-uclibc-fixes.patch
new file mode 100644 (file)
index 0000000..d316f8f
--- /dev/null
@@ -0,0 +1,104 @@
+aiccu.h, common.c, common.h: fixes for deprecated GNUTLS functions and types
+resolver.c: fixes for selection of wrong resolver function under uclibc
+
+Signed-off-by: Michael Rommel <rommel@layer-7.net>
+
+diff -purN aiccu_20070115.orig/common/aiccu.h aiccu_20070115/common/aiccu.h
+--- aiccu_20070115.orig/common/aiccu.h 2007-01-15 13:01:43.000000000 +0100
++++ aiccu_20070115/common/aiccu.h      2013-08-31 23:50:53.651936146 +0200
+@@ -111,7 +111,7 @@ struct AICCU_conf
+ #endif
+ #ifdef AICCU_GNUTLS
+-      gnutls_certificate_credentials  tls_cred;       /* GNUTLS credentials */
++      gnutls_certificate_credentials_t tls_cred;      /* GNUTLS credentials */
+ #endif
+       bool            daemonize;              /* Daemonize? */
+diff -purN aiccu_20070115.orig/common/common.c aiccu_20070115/common/common.c
+--- aiccu_20070115.orig/common/common.c        2006-12-21 15:08:50.000000000 +0100
++++ aiccu_20070115/common/common.c     2013-09-01 01:21:36.031396740 +0200
+@@ -271,9 +271,8 @@ TLSSOCKET sock_alloc(void);
+ TLSSOCKET sock_alloc(void)
+ {
+ #ifdef AICCU_GNUTLS
+-      /* Allow connections to servers that have OpenPGP keys as well */
+-      const int       cert_type_priority[3] = { GNUTLS_CRT_X509, GNUTLS_CRT_OPENPGP, 0 };
+       int             ret;
++      const char      *err;
+ #endif /* AICCU_GNUTLS*/
+       TLSSOCKET       sock;   
+@@ -297,11 +296,16 @@ TLSSOCKET sock_alloc(void)
+       }
+       /* Use default priorities */
+-      gnutls_set_default_priority(sock->session);
+-      /* XXX: Return value is not documented in GNUTLS documentation! */
+-
+-      gnutls_certificate_type_set_priority(sock->session, cert_type_priority);
+-      /* XXX: Return value is not documented in GNUTLS documentation! */
++      ret = gnutls_priority_set_direct(sock->session, "NORMAL", &err); 
++      if (ret < 0)
++      {
++              if (ret == GNUTLS_E_INVALID_REQUEST)
++              {
++                      dolog( LOG_ERR, "TLS set priority failed, syntax error at: %s\n", err);
++              }
++              free(sock);
++              return NULL;
++      }
+       /* Configure the x509 credentials for the current session */
+       gnutls_credentials_set(sock->session, GNUTLS_CRD_CERTIFICATE, g_aiccu->tls_cred);
+@@ -474,7 +478,7 @@ bool sock_gotls(TLSSOCKET sock)
+       }
+       /* Set the transport */
+-      gnutls_transport_set_ptr(sock->session, (gnutls_transport_ptr)sock->socket);
++      gnutls_transport_set_ptr(sock->session, (gnutls_transport_ptr_t) sock->socket);
+       /* Perform the TLS handshake */
+       ret = gnutls_handshake(sock->session);
+diff -purN aiccu_20070115.orig/common/common.h aiccu_20070115/common/common.h
+--- aiccu_20070115.orig/common/common.h        2007-01-11 15:50:51.000000000 +0100
++++ aiccu_20070115/common/common.h     2013-08-31 23:26:13.683659455 +0200
+@@ -381,7 +381,7 @@ struct tlssocket
+       SOCKET                  socket;
+ #ifdef AICCU_GNUTLS
+       bool                    tls_active;     /* TLS active? */
+-      gnutls_session          session;        /* The GnuTLS sesision */
++      gnutls_session_t        session;        /* The GnuTLS sesision */
+ #endif
+ };
+diff -purN aiccu_20070115.orig/common/resolver.c aiccu_20070115/common/resolver.c
+--- aiccu_20070115.orig/common/resolver.c      2006-07-23 16:55:14.000000000 +0200
++++ aiccu_20070115/common/resolver.c   2013-08-31 23:44:31.574866862 +0200
+@@ -26,7 +26,7 @@
+ int getrrs(const char *label, int rrtype, void gotrec(unsigned int num, int type, const char *record))
+ {
+-#ifdef _LINUX
++#if defined(_LINUX) && !defined(__UCLIBC__)
+       struct __res_state      res;
+ #endif
+       unsigned char           answer[8192];
+@@ -38,7 +38,7 @@ int getrrs(const char *label, int rrtype
+       uint16_t                type = 0, class = 0;
+       uint32_t                ttl = 0;
+-#ifdef _LINUX
++#if defined(_LINUX) && !defined(__UCLIBC__)
+       memset(&res, 0, sizeof(res));
+       res.options = RES_DEBUG;
+       res_ninit(&res);
+@@ -47,7 +47,7 @@ int getrrs(const char *label, int rrtype
+ #endif
+       memset(answer, 0, sizeof(answer));
+-#ifdef _LINUX
++#if defined(_LINUX) && !defined(__UCLIBC__)
+       ret = res_nquery(&res, label, C_IN, rrtype, answer, sizeof(answer));
+ #else
+       ret = res_query(label, C_IN, rrtype, answer, sizeof(answer));
diff --git a/package/aiccu/0002-makefile-reorder-linked-libraries.patch b/package/aiccu/0002-makefile-reorder-linked-libraries.patch
new file mode 100644 (file)
index 0000000..22f04a9
--- /dev/null
@@ -0,0 +1,15 @@
+Makefile: change LDFLAGS order on the compile line for --static
+
+Signed-off-by: Michael Rommel <rommel@layer-7.net>
+
+--- aiccu_20070115.orig/unix-console/Makefile  2007-01-15 12:04:27.000000000 +0100
++++ aiccu_20070115/unix-console/Makefile       2013-09-29 22:54:42.742963861 +0200
+@@ -144,7 +144,7 @@ endif
+ all: aiccu
+ aiccu:        $(OBJS) ${SRCS} ${INCS}
+-      $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(OBJS)
++      $(CC) $(CFLAGS) -o $@ $(OBJS) $(LDFLAGS)
+ ifeq ($(shell echo $(CFLAGS) | grep -c "DEBUG"),0)
+ ifeq ($(shell echo "$(RPM_OPT_FLAGS)" | wc -c),1)
+       strip $@
diff --git a/package/aiccu/0003-clock-suite-functions-fix.patch b/package/aiccu/0003-clock-suite-functions-fix.patch
new file mode 100644 (file)
index 0000000..365e72a
--- /dev/null
@@ -0,0 +1,18 @@
+aiccu: fix undefined reference to clock_* functions
+
+Since glibc 2.17 the clock_* suite functions are available directly in 
+the main C library. For previous versions we still need -lrt to link.
+
+Signed-off-by: Vicente Olivert Riera <vincent.riera@imgtec.com>
+
+--- aiccu/unix-console/Makefile.orig   2014-01-14 10:17:20.204602513 +0000
++++ aiccu/unix-console/Makefile        2014-01-14 10:17:31.435777359 +0000
+@@ -42,7 +42,7 @@ CFLAGS       += -D AICCU_CONSOLE
+ # Currently defaultly builds only on Linux, but other platforms might easily also support it
+ ifeq ($(shell uname | grep -c "Linux"),1)
+ CFLAGS        += -D AICCU_GNUTLS
+-LDFLAGS += -lgnutls
++LDFLAGS += -lgnutls -lrt
+ endif
+ # Linux
diff --git a/package/aiccu/aiccu-0001-gnutls-and-uclibc-fixes.patch b/package/aiccu/aiccu-0001-gnutls-and-uclibc-fixes.patch
deleted file mode 100644 (file)
index d316f8f..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-aiccu.h, common.c, common.h: fixes for deprecated GNUTLS functions and types
-resolver.c: fixes for selection of wrong resolver function under uclibc
-
-Signed-off-by: Michael Rommel <rommel@layer-7.net>
-
-diff -purN aiccu_20070115.orig/common/aiccu.h aiccu_20070115/common/aiccu.h
---- aiccu_20070115.orig/common/aiccu.h 2007-01-15 13:01:43.000000000 +0100
-+++ aiccu_20070115/common/aiccu.h      2013-08-31 23:50:53.651936146 +0200
-@@ -111,7 +111,7 @@ struct AICCU_conf
- #endif
- #ifdef AICCU_GNUTLS
--      gnutls_certificate_credentials  tls_cred;       /* GNUTLS credentials */
-+      gnutls_certificate_credentials_t tls_cred;      /* GNUTLS credentials */
- #endif
-       bool            daemonize;              /* Daemonize? */
-diff -purN aiccu_20070115.orig/common/common.c aiccu_20070115/common/common.c
---- aiccu_20070115.orig/common/common.c        2006-12-21 15:08:50.000000000 +0100
-+++ aiccu_20070115/common/common.c     2013-09-01 01:21:36.031396740 +0200
-@@ -271,9 +271,8 @@ TLSSOCKET sock_alloc(void);
- TLSSOCKET sock_alloc(void)
- {
- #ifdef AICCU_GNUTLS
--      /* Allow connections to servers that have OpenPGP keys as well */
--      const int       cert_type_priority[3] = { GNUTLS_CRT_X509, GNUTLS_CRT_OPENPGP, 0 };
-       int             ret;
-+      const char      *err;
- #endif /* AICCU_GNUTLS*/
-       TLSSOCKET       sock;   
-@@ -297,11 +296,16 @@ TLSSOCKET sock_alloc(void)
-       }
-       /* Use default priorities */
--      gnutls_set_default_priority(sock->session);
--      /* XXX: Return value is not documented in GNUTLS documentation! */
--
--      gnutls_certificate_type_set_priority(sock->session, cert_type_priority);
--      /* XXX: Return value is not documented in GNUTLS documentation! */
-+      ret = gnutls_priority_set_direct(sock->session, "NORMAL", &err); 
-+      if (ret < 0)
-+      {
-+              if (ret == GNUTLS_E_INVALID_REQUEST)
-+              {
-+                      dolog( LOG_ERR, "TLS set priority failed, syntax error at: %s\n", err);
-+              }
-+              free(sock);
-+              return NULL;
-+      }
-       /* Configure the x509 credentials for the current session */
-       gnutls_credentials_set(sock->session, GNUTLS_CRD_CERTIFICATE, g_aiccu->tls_cred);
-@@ -474,7 +478,7 @@ bool sock_gotls(TLSSOCKET sock)
-       }
-       /* Set the transport */
--      gnutls_transport_set_ptr(sock->session, (gnutls_transport_ptr)sock->socket);
-+      gnutls_transport_set_ptr(sock->session, (gnutls_transport_ptr_t) sock->socket);
-       /* Perform the TLS handshake */
-       ret = gnutls_handshake(sock->session);
-diff -purN aiccu_20070115.orig/common/common.h aiccu_20070115/common/common.h
---- aiccu_20070115.orig/common/common.h        2007-01-11 15:50:51.000000000 +0100
-+++ aiccu_20070115/common/common.h     2013-08-31 23:26:13.683659455 +0200
-@@ -381,7 +381,7 @@ struct tlssocket
-       SOCKET                  socket;
- #ifdef AICCU_GNUTLS
-       bool                    tls_active;     /* TLS active? */
--      gnutls_session          session;        /* The GnuTLS sesision */
-+      gnutls_session_t        session;        /* The GnuTLS sesision */
- #endif
- };
-diff -purN aiccu_20070115.orig/common/resolver.c aiccu_20070115/common/resolver.c
---- aiccu_20070115.orig/common/resolver.c      2006-07-23 16:55:14.000000000 +0200
-+++ aiccu_20070115/common/resolver.c   2013-08-31 23:44:31.574866862 +0200
-@@ -26,7 +26,7 @@
- int getrrs(const char *label, int rrtype, void gotrec(unsigned int num, int type, const char *record))
- {
--#ifdef _LINUX
-+#if defined(_LINUX) && !defined(__UCLIBC__)
-       struct __res_state      res;
- #endif
-       unsigned char           answer[8192];
-@@ -38,7 +38,7 @@ int getrrs(const char *label, int rrtype
-       uint16_t                type = 0, class = 0;
-       uint32_t                ttl = 0;
--#ifdef _LINUX
-+#if defined(_LINUX) && !defined(__UCLIBC__)
-       memset(&res, 0, sizeof(res));
-       res.options = RES_DEBUG;
-       res_ninit(&res);
-@@ -47,7 +47,7 @@ int getrrs(const char *label, int rrtype
- #endif
-       memset(answer, 0, sizeof(answer));
--#ifdef _LINUX
-+#if defined(_LINUX) && !defined(__UCLIBC__)
-       ret = res_nquery(&res, label, C_IN, rrtype, answer, sizeof(answer));
- #else
-       ret = res_query(label, C_IN, rrtype, answer, sizeof(answer));
diff --git a/package/aiccu/aiccu-0002-makefile-reorder-linked-libraries.patch b/package/aiccu/aiccu-0002-makefile-reorder-linked-libraries.patch
deleted file mode 100644 (file)
index 22f04a9..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-Makefile: change LDFLAGS order on the compile line for --static
-
-Signed-off-by: Michael Rommel <rommel@layer-7.net>
-
---- aiccu_20070115.orig/unix-console/Makefile  2007-01-15 12:04:27.000000000 +0100
-+++ aiccu_20070115/unix-console/Makefile       2013-09-29 22:54:42.742963861 +0200
-@@ -144,7 +144,7 @@ endif
- all: aiccu
- aiccu:        $(OBJS) ${SRCS} ${INCS}
--      $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(OBJS)
-+      $(CC) $(CFLAGS) -o $@ $(OBJS) $(LDFLAGS)
- ifeq ($(shell echo $(CFLAGS) | grep -c "DEBUG"),0)
- ifeq ($(shell echo "$(RPM_OPT_FLAGS)" | wc -c),1)
-       strip $@
diff --git a/package/aiccu/aiccu-0003-clock-suite-functions-fix.patch b/package/aiccu/aiccu-0003-clock-suite-functions-fix.patch
deleted file mode 100644 (file)
index 365e72a..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-aiccu: fix undefined reference to clock_* functions
-
-Since glibc 2.17 the clock_* suite functions are available directly in 
-the main C library. For previous versions we still need -lrt to link.
-
-Signed-off-by: Vicente Olivert Riera <vincent.riera@imgtec.com>
-
---- aiccu/unix-console/Makefile.orig   2014-01-14 10:17:20.204602513 +0000
-+++ aiccu/unix-console/Makefile        2014-01-14 10:17:31.435777359 +0000
-@@ -42,7 +42,7 @@ CFLAGS       += -D AICCU_CONSOLE
- # Currently defaultly builds only on Linux, but other platforms might easily also support it
- ifeq ($(shell uname | grep -c "Linux"),1)
- CFLAGS        += -D AICCU_GNUTLS
--LDFLAGS += -lgnutls
-+LDFLAGS += -lgnutls -lrt
- endif
- # Linux
diff --git a/package/alsa-lib/0001-avr32-bad-inline.patch b/package/alsa-lib/0001-avr32-bad-inline.patch
new file mode 100644 (file)
index 0000000..568ba40
--- /dev/null
@@ -0,0 +1,91 @@
+diff -urN alsa-lib-1.0.18-0rig//src/pcm/pcm_local.h alsa-lib-1.0.18/src/pcm/pcm_local.h
+--- alsa-lib-1.0.18-0rig//src/pcm/pcm_local.h  2009-01-31 11:02:12.000000000 +0100
++++ alsa-lib-1.0.18/src/pcm/pcm_local.h        2009-01-31 11:03:24.000000000 +0100
+@@ -611,6 +611,13 @@
+                          snd_pcm_hw_param_t var);
+ int _snd_pcm_hw_param_set(snd_pcm_hw_params_t *params,
+                         snd_pcm_hw_param_t var, unsigned int val, int dir);
++
++#if   defined(AVR32_INLINE_BUG)
++int _snd_pcm_hw_params_set_format(snd_pcm_hw_params_t *params,
++                                              snd_pcm_format_t val);
++int _snd_pcm_hw_params_set_subformat(snd_pcm_hw_params_t *params,
++                                   snd_pcm_subformat_t val);
++#else
+ static inline int _snd_pcm_hw_params_set_format(snd_pcm_hw_params_t *params,
+                                               snd_pcm_format_t val)
+ {
+@@ -624,7 +631,7 @@
+       return _snd_pcm_hw_param_set(params, SND_PCM_HW_PARAM_SUBFORMAT,
+                                    (unsigned long) val, 0);
+ }
+-
++#endif
+ int _snd_pcm_hw_param_set_min(snd_pcm_hw_params_t *params,
+                             snd_pcm_hw_param_t var, unsigned int val, int dir);
+ int _snd_pcm_hw_param_set_max(snd_pcm_hw_params_t *params,
+diff -urN alsa-lib-1.0.18-0rig//src/pcm/pcm_route.c alsa-lib-1.0.18/src/pcm/pcm_route.c
+--- alsa-lib-1.0.18-0rig//src/pcm/pcm_route.c  2009-01-31 11:02:12.000000000 +0100
++++ alsa-lib-1.0.18/src/pcm/pcm_route.c        2009-01-31 11:03:18.000000000 +0100
+@@ -26,6 +26,7 @@
+  *
+  */
+   
++
+ #include <byteswap.h>
+ #include <math.h>
+ #include "pcm_local.h"
+@@ -106,6 +107,23 @@
+ #endif /* DOC_HIDDEN */
++
++#if   defined(AVR32_INLINE_BUG)
++int _snd_pcm_hw_params_set_format(snd_pcm_hw_params_t *params,
++                                              snd_pcm_format_t val)
++{
++      return _snd_pcm_hw_param_set(params, SND_PCM_HW_PARAM_FORMAT,
++                                   (unsigned long) val, 0);
++}
++
++int _snd_pcm_hw_params_set_subformat(snd_pcm_hw_params_t *params,
++                                   snd_pcm_subformat_t val)
++{
++      return _snd_pcm_hw_param_set(params, SND_PCM_HW_PARAM_SUBFORMAT,
++                                   (unsigned long) val, 0);
++}
++#endif
++
+ static void snd_pcm_route_convert1_zero(const snd_pcm_channel_area_t *dst_area,
+                                       snd_pcm_uframes_t dst_offset,
+                                       const snd_pcm_channel_area_t *src_areas ATTRIBUTE_UNUSED,
+@@ -483,6 +501,8 @@
+                                 snd_pcm_uframes_t frames,
+                                 snd_pcm_route_params_t *params)
+ {
++#if   defined(AVR32_INLINE_BUG)
++#endif
+       unsigned int dst_channel;
+       snd_pcm_route_ttable_dst_t *dstp;
+       const snd_pcm_channel_area_t *dst_area;
+@@ -551,8 +571,20 @@
+       _snd_pcm_hw_param_set_mask(sparams, SND_PCM_HW_PARAM_ACCESS,
+                                  &saccess_mask);
+       if (route->sformat != SND_PCM_FORMAT_UNKNOWN) {
++#if   defined(AVR32_INLINE_BUG)
++/* Start of  of problem */
++#endif
+               _snd_pcm_hw_params_set_format(sparams, route->sformat);
+               _snd_pcm_hw_params_set_subformat(sparams, SND_PCM_SUBFORMAT_STD);
++#if   0
++              _snd_pcm_hw_param_set(sparams, SND_PCM_HW_PARAM_FORMAT,
++                                   (unsigned long) route->sformat, 0);
++              _snd_pcm_hw_param_set(sparams, SND_PCM_HW_PARAM_SUBFORMAT,
++                                   (unsigned long) SND_PCM_SUBFORMAT_STD, 0);
++#endif
++#if   defined(AVR32_INLINE_BUG)
++/* End of problem */
++#endif
+       }
+       if (route->schannels >= 0) {
+               _snd_pcm_hw_param_set(sparams, SND_PCM_HW_PARAM_CHANNELS,
diff --git a/package/alsa-lib/0002-no-mmu.patch b/package/alsa-lib/0002-no-mmu.patch
new file mode 100644 (file)
index 0000000..2ae0f67
--- /dev/null
@@ -0,0 +1,45 @@
+Don't use fork() on noMMU platforms
+
+[Gustavo: update patch for 1.0.28]
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: alsa-lib-1.0.26/configure.ac
+===================================================================
+--- alsa-lib-1.0.26.orig/configure.ac  2012-09-06 10:55:14.000000000 +0200
++++ alsa-lib-1.0.26/configure.ac       2013-03-09 16:22:08.000000000 +0100
+@@ -66,6 +66,8 @@
+ AM_CONDITIONAL(ALSA_HSEARCH_R, [test "x$HAVE_HSEARCH_R" != xyes])
+ AC_CHECK_FUNCS([uselocale])
++AC_CHECK_FUNC([fork])
++
+ SAVE_LIBRARY_VERSION
+ AC_SUBST(LIBTOOL_VERSION_INFO)
+Index: alsa-lib-1.0.26/src/pcm/pcm_direct.c
+===================================================================
+--- alsa-lib-1.0.26.orig/src/pcm/pcm_direct.c  2012-09-06 10:55:14.000000000 +0200
++++ alsa-lib-1.0.26/src/pcm/pcm_direct.c       2013-03-09 16:22:51.000000000 +0100
+@@ -424,13 +424,21 @@
+               close(dmix->server_fd);
+               return ret;
+       }
+-      
++
++#ifdef HAVE_FORK
+       ret = fork();
++#else
++      ret = vfork();
++#endif
+       if (ret < 0) {
+               close(dmix->server_fd);
+               return ret;
+       } else if (ret == 0) {
++#ifdef HAVE_FORK
+               ret = fork();
++#else
++              ret = vfork();
++#endif
+               if (ret == 0)
+                       server_job(dmix);
+               _exit(EXIT_SUCCESS);
diff --git a/package/alsa-lib/0003-dlmisc.patch b/package/alsa-lib/0003-dlmisc.patch
new file mode 100644 (file)
index 0000000..05dc70e
--- /dev/null
@@ -0,0 +1,57 @@
+alsa-lib: provide dummy definitions of RTLD_* if necessary
+
+The FLAT GNU toolchain (e.g. blackfin) doesn't include the dlfcn.h header
+file, so we need to guard that include. Additionally, provide dummy
+definitions for parameters RTLD_GLOBAL / RTLD_NOW which are normally
+provided by dlfcn.h.
+
+Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
+[Thomas: don't add separate dlmisc.h, move dummy defs to global.h]
+Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
+
+diff --git a/include/global.h b/include/global.h
+--- a/include/global.h
++++ b/include/global.h
+@@ -97,6 +97,16 @@ extern struct snd_dlsym_link *snd_dlsym_
+ /** \brief Returns the version of a dynamic symbol as a string. */
+ #define SND_DLSYM_VERSION(version) __STRING(version)
++/* RTLD_NOW and RTLD_GLOBAL (used for 'mode' in snd_dlopen) are not defined
++ * on all arches (e.g. blackfin), so provide a dummy definition here. */
++#ifndef RTLD_NOW
++#define RTLD_NOW 0
++#endif
++
++#ifndef RTLD_GLOBAL
++#define RTLD_GLOBAL 0
++#endif
++
+ void *snd_dlopen(const char *file, int mode);
+ void *snd_dlsym(void *handle, const char *name, const char *version);
+ int snd_dlclose(void *handle);
+diff --git a/modules/mixer/simple/sbasedl.c b/modules/mixer/simple/sbasedl.c
+--- a/modules/mixer/simple/sbasedl.c
++++ b/modules/mixer/simple/sbasedl.c
+@@ -27,7 +27,9 @@
+ #include <fcntl.h>
+ #include <sys/ioctl.h>
+ #include <math.h>
++#ifdef HAVE_LIBDL
+ #include <dlfcn.h>
++#endif
+ #include "config.h"
+ #include "asoundlib.h"
+ #include "mixer_abst.h"
+diff --git a/src/mixer/simple_abst.c b/src/mixer/simple_abst.c
+--- a/src/mixer/simple_abst.c
++++ b/src/mixer/simple_abst.c
+@@ -34,7 +34,9 @@
+ #include <fcntl.h>
+ #include <sys/ioctl.h>
+ #include <math.h>
++#ifdef HAVE_LIBDL
+ #include <dlfcn.h>
++#endif
+ #include "config.h"
+ #include "asoundlib.h"
+ #include "mixer_simple.h"
diff --git a/package/alsa-lib/0004-conditional-enabling-of-libdl-in-m4.patch b/package/alsa-lib/0004-conditional-enabling-of-libdl-in-m4.patch
new file mode 100644 (file)
index 0000000..c533419
--- /dev/null
@@ -0,0 +1,35 @@
+alsa-lib: conditionally enable libdl in AM_PATH_ALSA m4 macro
+
+The AM_PATH_ALSA macro in utils/alsa.m4 unconditionally uses -ldl. This
+breaks compilation of alsa-utils (and probably other packages using this
+macro) for targets that do not support dynamic loading, such as for
+Blackfin FLAT binaries.
+
+This patch updates the macro to check if dlopen is available, and use that
+result to conditionally add -ldl to the list of libraries.
+
+Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
+
+---
+
+diff --git a/utils/alsa.m4 b/utils/alsa.m4
+--- a/utils/alsa.m4
++++ b/utils/alsa.m4
+@@ -44,6 +44,8 @@ if test "$alsa_inc_prefix" != "" ; then
+ fi
+ AC_MSG_RESULT($ALSA_CFLAGS)
++AC_CHECK_LIB(c, dlopen, LIBDL="", [AC_CHECK_LIB(dl, dlopen, LIBDL="-ldl")])
++
+ dnl add any special lib dirs
+ AC_MSG_CHECKING(for ALSA LDFLAGS)
+ if test "$alsa_prefix" != "" ; then
+@@ -52,7 +54,7 @@ if test "$alsa_prefix" != "" ; then
+ fi
+ dnl add the alsa library
+-ALSA_LIBS="$ALSA_LIBS -lasound -lm -ldl -lpthread"
++ALSA_LIBS="$ALSA_LIBS -lasound -lm $LIBDL -lpthread"
+ LIBS="$ALSA_LIBS $LIBS"
+ AC_MSG_RESULT($ALSA_LIBS)
diff --git a/package/alsa-lib/alsa-lib-0001-avr32-bad-inline.patch b/package/alsa-lib/alsa-lib-0001-avr32-bad-inline.patch
deleted file mode 100644 (file)
index 568ba40..0000000
+++ /dev/null
@@ -1,91 +0,0 @@
-diff -urN alsa-lib-1.0.18-0rig//src/pcm/pcm_local.h alsa-lib-1.0.18/src/pcm/pcm_local.h
---- alsa-lib-1.0.18-0rig//src/pcm/pcm_local.h  2009-01-31 11:02:12.000000000 +0100
-+++ alsa-lib-1.0.18/src/pcm/pcm_local.h        2009-01-31 11:03:24.000000000 +0100
-@@ -611,6 +611,13 @@
-                          snd_pcm_hw_param_t var);
- int _snd_pcm_hw_param_set(snd_pcm_hw_params_t *params,
-                         snd_pcm_hw_param_t var, unsigned int val, int dir);
-+
-+#if   defined(AVR32_INLINE_BUG)
-+int _snd_pcm_hw_params_set_format(snd_pcm_hw_params_t *params,
-+                                              snd_pcm_format_t val);
-+int _snd_pcm_hw_params_set_subformat(snd_pcm_hw_params_t *params,
-+                                   snd_pcm_subformat_t val);
-+#else
- static inline int _snd_pcm_hw_params_set_format(snd_pcm_hw_params_t *params,
-                                               snd_pcm_format_t val)
- {
-@@ -624,7 +631,7 @@
-       return _snd_pcm_hw_param_set(params, SND_PCM_HW_PARAM_SUBFORMAT,
-                                    (unsigned long) val, 0);
- }
--
-+#endif
- int _snd_pcm_hw_param_set_min(snd_pcm_hw_params_t *params,
-                             snd_pcm_hw_param_t var, unsigned int val, int dir);
- int _snd_pcm_hw_param_set_max(snd_pcm_hw_params_t *params,
-diff -urN alsa-lib-1.0.18-0rig//src/pcm/pcm_route.c alsa-lib-1.0.18/src/pcm/pcm_route.c
---- alsa-lib-1.0.18-0rig//src/pcm/pcm_route.c  2009-01-31 11:02:12.000000000 +0100
-+++ alsa-lib-1.0.18/src/pcm/pcm_route.c        2009-01-31 11:03:18.000000000 +0100
-@@ -26,6 +26,7 @@
-  *
-  */
-   
-+
- #include <byteswap.h>
- #include <math.h>
- #include "pcm_local.h"
-@@ -106,6 +107,23 @@
- #endif /* DOC_HIDDEN */
-+
-+#if   defined(AVR32_INLINE_BUG)
-+int _snd_pcm_hw_params_set_format(snd_pcm_hw_params_t *params,
-+                                              snd_pcm_format_t val)
-+{
-+      return _snd_pcm_hw_param_set(params, SND_PCM_HW_PARAM_FORMAT,
-+                                   (unsigned long) val, 0);
-+}
-+
-+int _snd_pcm_hw_params_set_subformat(snd_pcm_hw_params_t *params,
-+                                   snd_pcm_subformat_t val)
-+{
-+      return _snd_pcm_hw_param_set(params, SND_PCM_HW_PARAM_SUBFORMAT,
-+                                   (unsigned long) val, 0);
-+}
-+#endif
-+
- static void snd_pcm_route_convert1_zero(const snd_pcm_channel_area_t *dst_area,
-                                       snd_pcm_uframes_t dst_offset,
-                                       const snd_pcm_channel_area_t *src_areas ATTRIBUTE_UNUSED,
-@@ -483,6 +501,8 @@
-                                 snd_pcm_uframes_t frames,
-                                 snd_pcm_route_params_t *params)
- {
-+#if   defined(AVR32_INLINE_BUG)
-+#endif
-       unsigned int dst_channel;
-       snd_pcm_route_ttable_dst_t *dstp;
-       const snd_pcm_channel_area_t *dst_area;
-@@ -551,8 +571,20 @@
-       _snd_pcm_hw_param_set_mask(sparams, SND_PCM_HW_PARAM_ACCESS,
-                                  &saccess_mask);
-       if (route->sformat != SND_PCM_FORMAT_UNKNOWN) {
-+#if   defined(AVR32_INLINE_BUG)
-+/* Start of  of problem */
-+#endif
-               _snd_pcm_hw_params_set_format(sparams, route->sformat);
-               _snd_pcm_hw_params_set_subformat(sparams, SND_PCM_SUBFORMAT_STD);
-+#if   0
-+              _snd_pcm_hw_param_set(sparams, SND_PCM_HW_PARAM_FORMAT,
-+                                   (unsigned long) route->sformat, 0);
-+              _snd_pcm_hw_param_set(sparams, SND_PCM_HW_PARAM_SUBFORMAT,
-+                                   (unsigned long) SND_PCM_SUBFORMAT_STD, 0);
-+#endif
-+#if   defined(AVR32_INLINE_BUG)
-+/* End of problem */
-+#endif
-       }
-       if (route->schannels >= 0) {
-               _snd_pcm_hw_param_set(sparams, SND_PCM_HW_PARAM_CHANNELS,
diff --git a/package/alsa-lib/alsa-lib-0002-no-mmu.patch b/package/alsa-lib/alsa-lib-0002-no-mmu.patch
deleted file mode 100644 (file)
index 2ae0f67..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-Don't use fork() on noMMU platforms
-
-[Gustavo: update patch for 1.0.28]
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: alsa-lib-1.0.26/configure.ac
-===================================================================
---- alsa-lib-1.0.26.orig/configure.ac  2012-09-06 10:55:14.000000000 +0200
-+++ alsa-lib-1.0.26/configure.ac       2013-03-09 16:22:08.000000000 +0100
-@@ -66,6 +66,8 @@
- AM_CONDITIONAL(ALSA_HSEARCH_R, [test "x$HAVE_HSEARCH_R" != xyes])
- AC_CHECK_FUNCS([uselocale])
-+AC_CHECK_FUNC([fork])
-+
- SAVE_LIBRARY_VERSION
- AC_SUBST(LIBTOOL_VERSION_INFO)
-Index: alsa-lib-1.0.26/src/pcm/pcm_direct.c
-===================================================================
---- alsa-lib-1.0.26.orig/src/pcm/pcm_direct.c  2012-09-06 10:55:14.000000000 +0200
-+++ alsa-lib-1.0.26/src/pcm/pcm_direct.c       2013-03-09 16:22:51.000000000 +0100
-@@ -424,13 +424,21 @@
-               close(dmix->server_fd);
-               return ret;
-       }
--      
-+
-+#ifdef HAVE_FORK
-       ret = fork();
-+#else
-+      ret = vfork();
-+#endif
-       if (ret < 0) {
-               close(dmix->server_fd);
-               return ret;
-       } else if (ret == 0) {
-+#ifdef HAVE_FORK
-               ret = fork();
-+#else
-+              ret = vfork();
-+#endif
-               if (ret == 0)
-                       server_job(dmix);
-               _exit(EXIT_SUCCESS);
diff --git a/package/alsa-lib/alsa-lib-0003-dlmisc.patch b/package/alsa-lib/alsa-lib-0003-dlmisc.patch
deleted file mode 100644 (file)
index 05dc70e..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-alsa-lib: provide dummy definitions of RTLD_* if necessary
-
-The FLAT GNU toolchain (e.g. blackfin) doesn't include the dlfcn.h header
-file, so we need to guard that include. Additionally, provide dummy
-definitions for parameters RTLD_GLOBAL / RTLD_NOW which are normally
-provided by dlfcn.h.
-
-Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
-[Thomas: don't add separate dlmisc.h, move dummy defs to global.h]
-Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
-
-diff --git a/include/global.h b/include/global.h
---- a/include/global.h
-+++ b/include/global.h
-@@ -97,6 +97,16 @@ extern struct snd_dlsym_link *snd_dlsym_
- /** \brief Returns the version of a dynamic symbol as a string. */
- #define SND_DLSYM_VERSION(version) __STRING(version)
-+/* RTLD_NOW and RTLD_GLOBAL (used for 'mode' in snd_dlopen) are not defined
-+ * on all arches (e.g. blackfin), so provide a dummy definition here. */
-+#ifndef RTLD_NOW
-+#define RTLD_NOW 0
-+#endif
-+
-+#ifndef RTLD_GLOBAL
-+#define RTLD_GLOBAL 0
-+#endif
-+
- void *snd_dlopen(const char *file, int mode);
- void *snd_dlsym(void *handle, const char *name, const char *version);
- int snd_dlclose(void *handle);
-diff --git a/modules/mixer/simple/sbasedl.c b/modules/mixer/simple/sbasedl.c
---- a/modules/mixer/simple/sbasedl.c
-+++ b/modules/mixer/simple/sbasedl.c
-@@ -27,7 +27,9 @@
- #include <fcntl.h>
- #include <sys/ioctl.h>
- #include <math.h>
-+#ifdef HAVE_LIBDL
- #include <dlfcn.h>
-+#endif
- #include "config.h"
- #include "asoundlib.h"
- #include "mixer_abst.h"
-diff --git a/src/mixer/simple_abst.c b/src/mixer/simple_abst.c
---- a/src/mixer/simple_abst.c
-+++ b/src/mixer/simple_abst.c
-@@ -34,7 +34,9 @@
- #include <fcntl.h>
- #include <sys/ioctl.h>
- #include <math.h>
-+#ifdef HAVE_LIBDL
- #include <dlfcn.h>
-+#endif
- #include "config.h"
- #include "asoundlib.h"
- #include "mixer_simple.h"
diff --git a/package/alsa-lib/alsa-lib-0004-conditional-enabling-of-libdl-in-m4.patch b/package/alsa-lib/alsa-lib-0004-conditional-enabling-of-libdl-in-m4.patch
deleted file mode 100644 (file)
index c533419..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-alsa-lib: conditionally enable libdl in AM_PATH_ALSA m4 macro
-
-The AM_PATH_ALSA macro in utils/alsa.m4 unconditionally uses -ldl. This
-breaks compilation of alsa-utils (and probably other packages using this
-macro) for targets that do not support dynamic loading, such as for
-Blackfin FLAT binaries.
-
-This patch updates the macro to check if dlopen is available, and use that
-result to conditionally add -ldl to the list of libraries.
-
-Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
-
----
-
-diff --git a/utils/alsa.m4 b/utils/alsa.m4
---- a/utils/alsa.m4
-+++ b/utils/alsa.m4
-@@ -44,6 +44,8 @@ if test "$alsa_inc_prefix" != "" ; then
- fi
- AC_MSG_RESULT($ALSA_CFLAGS)
-+AC_CHECK_LIB(c, dlopen, LIBDL="", [AC_CHECK_LIB(dl, dlopen, LIBDL="-ldl")])
-+
- dnl add any special lib dirs
- AC_MSG_CHECKING(for ALSA LDFLAGS)
- if test "$alsa_prefix" != "" ; then
-@@ -52,7 +54,7 @@ if test "$alsa_prefix" != "" ; then
- fi
- dnl add the alsa library
--ALSA_LIBS="$ALSA_LIBS -lasound -lm -ldl -lpthread"
-+ALSA_LIBS="$ALSA_LIBS -lasound -lm $LIBDL -lpthread"
- LIBS="$ALSA_LIBS $LIBS"
- AC_MSG_RESULT($ALSA_LIBS)
diff --git a/package/alsamixergui/0001-misc-fixes.patch b/package/alsamixergui/0001-misc-fixes.patch
new file mode 100644 (file)
index 0000000..6b498da
--- /dev/null
@@ -0,0 +1,40 @@
+--- a/configure.in
++++ b/configure.in
+@@ -11,7 +11,10 @@
+ AC_PROG_LN_S
+ dnl Checks for libraries.
+-AC_CHECK_LIB(fltk,numericsort,,AC_MSG_ERROR("missing fltk"))
++AC_CHECK_LIB(fltk,numericsort,,
++AC_CHECK_LIB(fltk,fl_numericsort,,
++AC_MSG_ERROR("missing fltk"))
++)
+ AM_PATH_ALSA(0.9.0)
+ dnl Checks for header files.
+--- a/src/alsamixer.cxx        2007-10-21 12:39:11.000000000 -0400
++++ b/src/alsamixer.cxx        2007-10-21 12:49:10.000000000 -0400
+@@ -2081,8 +2081,8 @@ static void
+ mixer_signal_handler (int signal)
+ {
+   if (signal != SIGSEGV)
+-    mixer_abort (ERR_SIGNAL, sys_siglist[signal], 0);
+-  else
++  //  mixer_abort (ERR_SIGNAL, sys_siglist[signal], 0);
++  //else
+     {
+       fprintf (stderr, "\nSegmentation fault.\n");
+       _exit (11);
+--- a/src/alsamixer.cxx        2006-01-16 12:41:54.000000000 -0600
++++ b/src/alsamixer.cxx        2006-01-16 12:45:44.000000000 -0600
+@@ -653,8 +653,8 @@
+     if (vleft >= 0 && vright >= 0) {
+       if (joined) {
+ #ifdef ALSAMIXER_GUI
+-      for (chn = snd_mixer_selem_channel_id_t(0); chn < SND_MIXER_SCHN_LAST; 
+-      snd_mixer_selem_channel_id_t(int(chn)++))
++      for (chn = snd_mixer_selem_channel_id_t(0); chn < SND_MIXER_SCHN_LAST;
++      snd_mixer_selem_channel_id_t(int(chn)+1))
+ #else
+       for (chn = 0; chn < SND_MIXER_SCHN_LAST; chn++)
+ #endif
diff --git a/package/alsamixergui/alsamixergui_0.9.0rc2-1-7.patch b/package/alsamixergui/alsamixergui_0.9.0rc2-1-7.patch
deleted file mode 100644 (file)
index 6b498da..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
---- a/configure.in
-+++ b/configure.in
-@@ -11,7 +11,10 @@
- AC_PROG_LN_S
- dnl Checks for libraries.
--AC_CHECK_LIB(fltk,numericsort,,AC_MSG_ERROR("missing fltk"))
-+AC_CHECK_LIB(fltk,numericsort,,
-+AC_CHECK_LIB(fltk,fl_numericsort,,
-+AC_MSG_ERROR("missing fltk"))
-+)
- AM_PATH_ALSA(0.9.0)
- dnl Checks for header files.
---- a/src/alsamixer.cxx        2007-10-21 12:39:11.000000000 -0400
-+++ b/src/alsamixer.cxx        2007-10-21 12:49:10.000000000 -0400
-@@ -2081,8 +2081,8 @@ static void
- mixer_signal_handler (int signal)
- {
-   if (signal != SIGSEGV)
--    mixer_abort (ERR_SIGNAL, sys_siglist[signal], 0);
--  else
-+  //  mixer_abort (ERR_SIGNAL, sys_siglist[signal], 0);
-+  //else
-     {
-       fprintf (stderr, "\nSegmentation fault.\n");
-       _exit (11);
---- a/src/alsamixer.cxx        2006-01-16 12:41:54.000000000 -0600
-+++ b/src/alsamixer.cxx        2006-01-16 12:45:44.000000000 -0600
-@@ -653,8 +653,8 @@
-     if (vleft >= 0 && vright >= 0) {
-       if (joined) {
- #ifdef ALSAMIXER_GUI
--      for (chn = snd_mixer_selem_channel_id_t(0); chn < SND_MIXER_SCHN_LAST; 
--      snd_mixer_selem_channel_id_t(int(chn)++))
-+      for (chn = snd_mixer_selem_channel_id_t(0); chn < SND_MIXER_SCHN_LAST;
-+      snd_mixer_selem_channel_id_t(int(chn)+1))
- #else
-       for (chn = 0; chn < SND_MIXER_SCHN_LAST; chn++)
- #endif
diff --git a/package/am33x-cm3/0001-fix-makefile.patch b/package/am33x-cm3/0001-fix-makefile.patch
new file mode 100644 (file)
index 0000000..f3cdb5e
--- /dev/null
@@ -0,0 +1,30 @@
+Enforce correct -march option
+
+Buildroot uses a normal ARM compiler to build the AM33X CM3 firmware
+(which runs on a Cortex-M3 processor), but Buildroot will have a
+default -march value that doesn't necessarily match the one needed for
+Cortex-M3, leading to build failures (gcc complains that the
+-mcpu=cortex-m3 option being passed is not compatible with the
+selected -march).
+
+Fix this by explicitly indicating -march=armv7-m.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Updated the patch to the latest version of the Makefile
+
+Signed-off-by: Anders Darander <anders@chargestorm.se>
+
+Index: b/Makefile
+===================================================================
+--- a/Makefile
++++ b/Makefile
+@@ -13,7 +13,7 @@ SRCDIR = src
+ BINDIR = bin
+ INCLUDES = $(SRCDIR)/include
+-CFLAGS =-mcpu=cortex-m3 -mthumb -nostdlib -Wall -Wundef \
++CFLAGS =-march=armv7-m -mcpu=cortex-m3 -mthumb -nostdlib -Wall -Wundef \
+       -Werror-implicit-function-declaration -Wstrict-prototypes \
+       -Wdeclaration-after-statement -fno-delete-null-pointer-checks \
+       -Wempty-body -fno-strict-overflow  -g -I$(INCLUDES) -O2
diff --git a/package/am33x-cm3/am33x-cm3-0001-fix-makefile.patch b/package/am33x-cm3/am33x-cm3-0001-fix-makefile.patch
deleted file mode 100644 (file)
index f3cdb5e..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-Enforce correct -march option
-
-Buildroot uses a normal ARM compiler to build the AM33X CM3 firmware
-(which runs on a Cortex-M3 processor), but Buildroot will have a
-default -march value that doesn't necessarily match the one needed for
-Cortex-M3, leading to build failures (gcc complains that the
--mcpu=cortex-m3 option being passed is not compatible with the
-selected -march).
-
-Fix this by explicitly indicating -march=armv7-m.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Updated the patch to the latest version of the Makefile
-
-Signed-off-by: Anders Darander <anders@chargestorm.se>
-
-Index: b/Makefile
-===================================================================
---- a/Makefile
-+++ b/Makefile
-@@ -13,7 +13,7 @@ SRCDIR = src
- BINDIR = bin
- INCLUDES = $(SRCDIR)/include
--CFLAGS =-mcpu=cortex-m3 -mthumb -nostdlib -Wall -Wundef \
-+CFLAGS =-march=armv7-m -mcpu=cortex-m3 -mthumb -nostdlib -Wall -Wundef \
-       -Werror-implicit-function-declaration -Wstrict-prototypes \
-       -Wdeclaration-after-statement -fno-delete-null-pointer-checks \
-       -Wempty-body -fno-strict-overflow  -g -I$(INCLUDES) -O2
diff --git a/package/apr-util/0001-remove-checkapr.patch b/package/apr-util/0001-remove-checkapr.patch
new file mode 100644 (file)
index 0000000..42ad12f
--- /dev/null
@@ -0,0 +1,21 @@
+remove check apr
+
+this patch removes the check of apr which fails the build
+
+Signed-off-by: Rico Bachmann <bachmann-ahF9wiJNQgNBDgjK7y7TUQ@public.gmane.org>
+---
+v1: disable the check for APU_FIND_APR because the check only looks into folders
+named apr, and our source-tree is called apr-versionnumber (e.g. apr-1.4.6)
+
+diff -rupN apr-util-1.4.1/configure.in apr-util-1.4.1-fix/configure.in
+--- apr-util-1.4.1/configure.in        2009-12-17 20:15:19.000000000 +0100
++++ apr-util-1.4.1-fix/configure.in    2012-04-24 10:10:32.000000000 +0200
+@@ -99,7 +99,7 @@ fi
+ dnl
+ dnl Find the APR includes directory and (possibly) the source (base) dir.
+ dnl
+-APU_FIND_APR
++dnl APU_FIND_APR
+ dnl
+ dnl even though we use apr_rules.mk for building apr-util, we need
diff --git a/package/apr-util/apr-util-01-remove-checkapr.patch b/package/apr-util/apr-util-01-remove-checkapr.patch
deleted file mode 100644 (file)
index 42ad12f..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-remove check apr
-
-this patch removes the check of apr which fails the build
-
-Signed-off-by: Rico Bachmann <bachmann-ahF9wiJNQgNBDgjK7y7TUQ@public.gmane.org>
----
-v1: disable the check for APU_FIND_APR because the check only looks into folders
-named apr, and our source-tree is called apr-versionnumber (e.g. apr-1.4.6)
-
-diff -rupN apr-util-1.4.1/configure.in apr-util-1.4.1-fix/configure.in
---- apr-util-1.4.1/configure.in        2009-12-17 20:15:19.000000000 +0100
-+++ apr-util-1.4.1-fix/configure.in    2012-04-24 10:10:32.000000000 +0200
-@@ -99,7 +99,7 @@ fi
- dnl
- dnl Find the APR includes directory and (possibly) the source (base) dir.
- dnl
--APU_FIND_APR
-+dnl APU_FIND_APR
- dnl
- dnl even though we use apr_rules.mk for building apr-util, we need
diff --git a/package/argp-standalone/0001-throw-in-funcdef.patch b/package/argp-standalone/0001-throw-in-funcdef.patch
new file mode 100644 (file)
index 0000000..4a90751
--- /dev/null
@@ -0,0 +1,79 @@
+# --- T2-COPYRIGHT-NOTE-BEGIN ---
+# This copyright note is auto-generated by ./scripts/Create-CopyPatch.
+# 
+# T2 SDE: package/.../rng-tools/throw-in-funcdef.patch.argp-standalone
+# Copyright (C) 2006 The T2 SDE Project
+# 
+# More information can be found in the files COPYING and README.
+# 
+# This patch file is dual-licensed. It is available under the license the
+# patched project is licensed under, as long as it is an OpenSource license
+# as defined at http://www.opensource.org/ (e.g. BSD, X11) or 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.
+# --- T2-COPYRIGHT-NOTE-END ---
+
+
+No __THROW in function implementation.
+       --jsaw
+
+--- argp-standalone-1.4-test2/argp.h.orig      2006-01-06 02:29:59.000000000 +0100
++++ argp-standalone-1.4-test2/argp.h   2006-01-06 02:41:10.000000000 +0100
+@@ -560,17 +560,17 @@
+ # endif
+ # ifndef ARGP_EI
+-#  define ARGP_EI extern __inline__
++#  define ARGP_EI extern inline
+ # endif
+ ARGP_EI void
+-__argp_usage (__const struct argp_state *__state) __THROW
++__argp_usage (__const struct argp_state *__state)
+ {
+   __argp_state_help (__state, stderr, ARGP_HELP_STD_USAGE);
+ }
+ ARGP_EI int
+-__option_is_short (__const struct argp_option *__opt) __THROW
++__option_is_short (__const struct argp_option *__opt)
+ {
+   if (__opt->flags & OPTION_DOC)
+     return 0;
+@@ -582,7 +582,7 @@
+ }
+ ARGP_EI int
+-__option_is_end (__const struct argp_option *__opt) __THROW
++__option_is_end (__const struct argp_option *__opt)
+ {
+   return !__opt->key && !__opt->name && !__opt->doc && !__opt->group;
+ }
+--- argp-standalone-1.4-test2/argp-parse.c.orig        2006-01-06 02:47:48.000000000 +0100
++++ argp-standalone-1.4-test2/argp-parse.c     2006-01-06 02:48:16.000000000 +0100
+@@ -1290,13 +1290,13 @@
+ /* Defined here, in case a user is not inlining the definitions in
+  * argp.h */
+ void
+-__argp_usage (__const struct argp_state *__state) __THROW
++__argp_usage (__const struct argp_state *__state)
+ {
+   __argp_state_help (__state, stderr, ARGP_HELP_STD_USAGE);
+ }
+ int
+-__option_is_short (__const struct argp_option *__opt) __THROW
++__option_is_short (__const struct argp_option *__opt) 
+ {
+   if (__opt->flags & OPTION_DOC)
+     return 0;
+@@ -1310,7 +1310,7 @@
+ }
+ int
+-__option_is_end (__const struct argp_option *__opt) __THROW
++__option_is_end (__const struct argp_option *__opt) 
+ {
+   return !__opt->key && !__opt->name && !__opt->doc && !__opt->group;
+ }
diff --git a/package/argp-standalone/argp-standalone-throw-in-funcdef.patch b/package/argp-standalone/argp-standalone-throw-in-funcdef.patch
deleted file mode 100644 (file)
index 4a90751..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-# --- T2-COPYRIGHT-NOTE-BEGIN ---
-# This copyright note is auto-generated by ./scripts/Create-CopyPatch.
-# 
-# T2 SDE: package/.../rng-tools/throw-in-funcdef.patch.argp-standalone
-# Copyright (C) 2006 The T2 SDE Project
-# 
-# More information can be found in the files COPYING and README.
-# 
-# This patch file is dual-licensed. It is available under the license the
-# patched project is licensed under, as long as it is an OpenSource license
-# as defined at http://www.opensource.org/ (e.g. BSD, X11) or 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.
-# --- T2-COPYRIGHT-NOTE-END ---
-
-
-No __THROW in function implementation.
-       --jsaw
-
---- argp-standalone-1.4-test2/argp.h.orig      2006-01-06 02:29:59.000000000 +0100
-+++ argp-standalone-1.4-test2/argp.h   2006-01-06 02:41:10.000000000 +0100
-@@ -560,17 +560,17 @@
- # endif
- # ifndef ARGP_EI
--#  define ARGP_EI extern __inline__
-+#  define ARGP_EI extern inline
- # endif
- ARGP_EI void
--__argp_usage (__const struct argp_state *__state) __THROW
-+__argp_usage (__const struct argp_state *__state)
- {
-   __argp_state_help (__state, stderr, ARGP_HELP_STD_USAGE);
- }
- ARGP_EI int
--__option_is_short (__const struct argp_option *__opt) __THROW
-+__option_is_short (__const struct argp_option *__opt)
- {
-   if (__opt->flags & OPTION_DOC)
-     return 0;
-@@ -582,7 +582,7 @@
- }
- ARGP_EI int
--__option_is_end (__const struct argp_option *__opt) __THROW
-+__option_is_end (__const struct argp_option *__opt)
- {
-   return !__opt->key && !__opt->name && !__opt->doc && !__opt->group;
- }
---- argp-standalone-1.4-test2/argp-parse.c.orig        2006-01-06 02:47:48.000000000 +0100
-+++ argp-standalone-1.4-test2/argp-parse.c     2006-01-06 02:48:16.000000000 +0100
-@@ -1290,13 +1290,13 @@
- /* Defined here, in case a user is not inlining the definitions in
-  * argp.h */
- void
--__argp_usage (__const struct argp_state *__state) __THROW
-+__argp_usage (__const struct argp_state *__state)
- {
-   __argp_state_help (__state, stderr, ARGP_HELP_STD_USAGE);
- }
- int
--__option_is_short (__const struct argp_option *__opt) __THROW
-+__option_is_short (__const struct argp_option *__opt) 
- {
-   if (__opt->flags & OPTION_DOC)
-     return 0;
-@@ -1310,7 +1310,7 @@
- }
- int
--__option_is_end (__const struct argp_option *__opt) __THROW
-+__option_is_end (__const struct argp_option *__opt) 
- {
-   return !__opt->key && !__opt->name && !__opt->doc && !__opt->group;
- }
diff --git a/package/at/0001-configure.ac-remove-manual-compiler-check-with-AC_TR.patch b/package/at/0001-configure.ac-remove-manual-compiler-check-with-AC_TR.patch
new file mode 100644 (file)
index 0000000..9e69922
--- /dev/null
@@ -0,0 +1,33 @@
+From a182f18fa3b9fb3dd817b601b51c758f9a77f407 Mon Sep 17 00:00:00 2001
+From: Marc Kleine-Budde <mkl@pengutronix.de>
+Date: Tue, 1 Dec 2009 17:08:14 +0100
+Subject: [PATCH 1/5] configure.ac: remove manual compiler check with AC_TRY_RUN
+
+AC_TRY_RUN breaks cross compilation, so remove it. autotools will take
+care about a working (cross-) compiler.
+
+Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
+---
+ configure.ac |    6 ------
+ 1 files changed, 0 insertions(+), 6 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index a8c2a14..997a37f 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -38,12 +38,6 @@ case "$host" in
+     AC_MSG_RESULT(no)
+     ;;
+ esac
+-AC_MSG_CHECKING(Trying to compile a trivial ANSI C program)
+-AC_TRY_RUN([ main(int ac, char **av) { return 0; } ],
+-    AC_MSG_RESULT(yes),
+-    AC_MSG_RESULT(no)
+-    AC_MSG_ERROR(Could not compile and run even a trivial ANSI C program - check CC.),
+-    AC_MSG_ERROR(Could not compile and run even a trivial ANSI C program - check CC.))
+ AC_MSG_CHECKING(__attribute__((noreturn)))
+ AC_TRY_COMPILE([], [void __attribute__((noreturn)) panic(void);],
+-- 
+1.6.5.3
+
diff --git a/package/at/0002-configure.ac-convert-AC_TRY_COMPILE-AC_COMPILE_IFELS.patch b/package/at/0002-configure.ac-convert-AC_TRY_COMPILE-AC_COMPILE_IFELS.patch
new file mode 100644 (file)
index 0000000..e4276ac
--- /dev/null
@@ -0,0 +1,34 @@
+From e12c96cccab550eda31cf7bb1dedddd3670ffe69 Mon Sep 17 00:00:00 2001
+From: Marc Kleine-Budde <mkl@pengutronix.de>
+Date: Tue, 1 Dec 2009 17:22:22 +0100
+Subject: [PATCH 2/5] configure.ac: convert AC_TRY_COMPILE -> AC_COMPILE_IFELSE
+
+Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
+---
+ configure.ac |   10 +++++-----
+ 1 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 997a37f..cab80ed 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -40,11 +40,11 @@ case "$host" in
+ esac
+ AC_MSG_CHECKING(__attribute__((noreturn)))
+-AC_TRY_COMPILE([], [void __attribute__((noreturn)) panic(void);],
+-    AC_MSG_RESULT(yes)
+-    AC_DEFINE(HAVE_ATTRIBUTE_NORETURN, 1,
+-              [Define to 1 if compiler supports __attribute__((noreturn))]),
+-    AC_MSG_RESULT(no)
++AC_COMPILE_IFELSE(
++       [AC_LANG_PROGRAM([[]], [[void __attribute__((noreturn)) panic(void);]])],
++       [AC_MSG_RESULT(yes)
++        AC_DEFINE(HAVE_ATTRIBUTE_NORETURN, 1, Define to 1 if compiler supports __attribute__((noreturn)))],
++       [AC_MSG_RESULT(no)]
+ )
+ dnl Checks for libraries.
+-- 
+1.6.5.3
+
diff --git a/package/at/0003-Makefile.in-add-LDFLAGS-to-linking-stage.patch b/package/at/0003-Makefile.in-add-LDFLAGS-to-linking-stage.patch
new file mode 100644 (file)
index 0000000..e1ab3d3
--- /dev/null
@@ -0,0 +1,38 @@
+From 8720a71757f3626bf3bbc3a7aa2185e6387e5689 Mon Sep 17 00:00:00 2001
+From: Marc Kleine-Budde <mkl@pengutronix.de>
+Date: Tue, 1 Dec 2009 20:37:31 +0100
+Subject: [PATCH 3/5] Makefile.in: add LDFLAGS to linking stage
+
+The linking stage ignores the LDFLAGS, this breaks if the flex library
+lives in a non standard location.
+
+This patch add LDFLAGS to both "at" and "atd" linking stage.
+
+Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
+---
+ Makefile.in |    4 ++--
+ 1 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile.in b/Makefile.in
+index dae6b7d..b766bbb 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -65,13 +65,13 @@ LIST = Filelist Filelist.asc
+ all: at atd atrun
+ at: $(ATOBJECTS)
+-      $(CC) $(CFLAGS) -o at $(ATOBJECTS) $(LIBS) $(LEXLIB)
++      $(CC) $(CFLAGS) $(LDFLAGS) -o at $(ATOBJECTS) $(LIBS) $(LEXLIB)
+       rm -f $(CLONES)
+       $(LN_S) -f at atq
+       $(LN_S) -f at atrm
+ atd: $(RUNOBJECTS)
+-      $(CC) $(CFLAGS) -o atd $(RUNOBJECTS) $(LIBS) $(PAMLIB)
++      $(CC) $(CFLAGS) $(LDFLAGS) -o atd $(RUNOBJECTS) $(LIBS) $(PAMLIB)
+ y.tab.c y.tab.h: parsetime.y
+       $(YACC) -d parsetime.y
+-- 
+1.6.5.3
+
diff --git a/package/at/0004-Makefile.in-replace-IROOT-by-DESTDIR.patch b/package/at/0004-Makefile.in-replace-IROOT-by-DESTDIR.patch
new file mode 100644 (file)
index 0000000..0d1d5f6
--- /dev/null
@@ -0,0 +1,97 @@
+From 195d30e2e01fe2f91ed3bdaeec3982aa66b309dd Mon Sep 17 00:00:00 2001
+From: Marc Kleine-Budde <mkl@pengutronix.de>
+Date: Tue, 1 Dec 2009 20:57:45 +0100
+Subject: [PATCH 5/5] Makefile.in: replace IROOT by DESTDIR
+
+This patch replaces IROOT by DESTDIR, which is the autotools standard
+variable. For backwards compatibilty IROOT overwrites the DESTDIR.
+
+Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
+---
+ Makefile.in |   64 +++++++++++++++++++++++++++++++-----------------------------
+ 1 file changed, 34 insertions(+), 30 deletions(-)
+
+Index: at-3.1.13/Makefile.in
+===================================================================
+--- at-3.1.13.orig/Makefile.in
++++ at-3.1.13/Makefile.in
+@@ -16,6 +16,10 @@ docdir              = $(prefix)/doc
+ atdocdir      = $(docdir)/at
+ etcdir                = @ETCDIR@
++ifdef IROOT
++DESTDIR               = $(IROOT)
++endif
++
+ DAEMON_USERNAME       = @DAEMON_USERNAME@
+ DAEMON_GROUPNAME= @DAEMON_GROUPNAME@
+ LOADAVG_MX    = @LOADAVG_MX@
+@@ -86,38 +90,38 @@ atrun: atrun.in
+       $(CC) -c $(CFLAGS) $(DEFS) $*.c
+ install: all
+-      $(INSTALL) -g root -o root -m 755 -d $(IROOT)$(etcdir)
+-      $(INSTALL) -g root -o root -m 755 -d $(IROOT)$(bindir)
+-      $(INSTALL) -g root -o root -m 755 -d $(IROOT)$(sbindir)
+-      $(INSTALL) -g root -o root -m 755 -d $(IROOT)$(docdir)
+-      $(INSTALL) -g root -o root -m 755 -d $(IROOT)$(atdocdir)
+-      $(INSTALL) -g $(DAEMON_GROUPNAME) -o $(DAEMON_USERNAME) -m 755 -d $(IROOT)$(ATSPOOL_DIR) $(IROOT)$(ATJOB_DIR)
+-      chmod 1770 $(IROOT)$(ATSPOOL_DIR) $(IROOT)$(ATJOB_DIR)
+-      touch $(IROOT)$(LFILE)
+-      chmod 600 $(IROOT)$(LFILE)
+-      chown $(DAEMON_USERNAME):$(DAEMON_GROUPNAME) $(IROOT)$(LFILE)
+-      test -f $(IROOT)$(etcdir)/at.allow || test -f $(IROOT)$(etcdir)/at.deny || $(INSTALL) -o root -g $(DAEMON_GROUPNAME) -m 640 at.deny $(IROOT)$(etcdir)/
+-      $(INSTALL) -g $(DAEMON_GROUPNAME) -o $(DAEMON_USERNAME) -m 6755 at $(IROOT)$(bindir)
+-      $(LN_S) -f at $(IROOT)$(bindir)/atq
+-      $(LN_S) -f at $(IROOT)$(bindir)/atrm
+-      $(INSTALL) -g root -o root -m 755 batch $(IROOT)$(bindir)
+-      $(INSTALL) -d -o root -g root -m 755 $(IROOT)$(man1dir)
+-      $(INSTALL) -d -o root -g root -m 755 $(IROOT)$(man5dir)
+-      $(INSTALL) -d -o root -g root -m 755 $(IROOT)$(man8dir)
+-      $(INSTALL) -g root -o root -m 755 atd $(IROOT)$(sbindir)
+-      $(INSTALL) -g root -o root -m 755 atrun $(IROOT)$(sbindir)
+-      $(INSTALL) -g root -o root -m 644 at.1 $(IROOT)$(man1dir)/
+-      cd $(IROOT)$(man1dir) && $(LN_S) -f at.1 atq.1 && $(LN_S) -f at.1 batch.1 && $(LN_S) -f at.1 atrm.1
+-      $(INSTALL) -g root -o root -m 644 atd.8 $(IROOT)$(man8dir)/
++      $(INSTALL) -g root -o root -m 755 -d $(DESTDIR)$(etcdir)
++      $(INSTALL) -g root -o root -m 755 -d $(DESTDIR)$(bindir)
++      $(INSTALL) -g root -o root -m 755 -d $(DESTDIR)$(sbindir)
++      $(INSTALL) -g root -o root -m 755 -d $(DESTDIR)$(docdir)
++      $(INSTALL) -g root -o root -m 755 -d $(DESTDIR)$(atdocdir)
++      $(INSTALL) -g $(DAEMON_GROUPNAME) -o $(DAEMON_USERNAME) -m 755 -d $(DESTDIR)$(ATSPOOL_DIR) $(DESTDIR)$(ATJOB_DIR)
++      chmod 1770 $(DESTDIR)$(ATSPOOL_DIR) $(DESTDIR)$(ATJOB_DIR)
++      touch $(DESTDIR)$(LFILE)
++      chmod 600 $(DESTDIR)$(LFILE)
++      chown $(DAEMON_USERNAME):$(DAEMON_GROUPNAME) $(DESTDIR)$(LFILE)
++      test -f $(DESTDIR)$(etcdir)/at.allow || test -f $(DESTDIR)$(etcdir)/at.deny || $(INSTALL) -o root -g $(DAEMON_GROUPNAME) -m 640 at.deny $(DESTDIR$
++      $(INSTALL) -g $(DAEMON_GROUPNAME) -o $(DAEMON_USERNAME) -m 6755 -s at $(DESTDIR)$(bindir)
++      $(LN_S) -f at $(DESTDIR)$(bindir)/atq
++      $(LN_S) -f at $(DESTDIR)$(bindir)/atrm
++      $(INSTALL) -g root -o root -m 755 batch $(DESTDIR)$(bindir)
++      $(INSTALL) -d -o root -g root -m 755 $(DESTDIR)$(man1dir)
++      $(INSTALL) -d -o root -g root -m 755 $(DESTDIR)$(man5dir)
++      $(INSTALL) -d -o root -g root -m 755 $(DESTDIR)$(man8dir)
++      $(INSTALL) -g root -o root -m 755 -s atd $(DESTDIR)$(sbindir)
++      $(INSTALL) -g root -o root -m 755 atrun $(DESTDIR)$(sbindir)
++      $(INSTALL) -g root -o root -m 644 at.1 $(DESTDIR)$(man1dir)/
++      cd $(DESTDIR)$(man1dir) && $(LN_S) -f at.1 atq.1 && $(LN_S) -f at.1 batch.1 && $(LN_S) -f at.1 atrm.1
++      $(INSTALL) -g root -o root -m 644 atd.8 $(DESTDIR)$(man8dir)/
+       sed "s,\$${exec_prefix},$(exec_prefix),g" <atrun.8>tmpman
+-      $(INSTALL) -g root -o root -m 644 tmpman $(IROOT)$(man8dir)/atrun.8
++      $(INSTALL) -g root -o root -m 644 tmpman $(DESTDIR)$(man8dir)/atrun.8
+       rm -f tmpman
+-      $(INSTALL) -g root -o root -m 644 at.allow.5 $(IROOT)$(man5dir)/
+-      cd $(IROOT)$(man5dir) && $(LN_S) -f at.allow.5 at.deny.5
+-      $(INSTALL) -g root -o root -m 644 $(DOCS) $(IROOT)$(atdocdir)
+-      rm -f $(IROOT)$(mandir)/cat1/at.1* $(IROOT)$(mandir)/cat1/batch.1* \
+-              $(IROOT)$(mandir)/cat1/atq.1*
+-      rm -f $(IROOT)$(mandir)/cat1/atd.8*
++      $(INSTALL) -g root -o root -m 644 at.allow.5 $(DESTDIR)$(man5dir)/
++      cd $(DESTDIR)$(man5dir) && $(LN_S) -f at.allow.5 at.deny.5
++      $(INSTALL) -g root -o root -m 644 $(DOCS) $(DESTDIR)$(atdocdir)
++      rm -f $(DESTDIR)$(mandir)/cat1/at.1* $(DESTDIR)$(mandir)/cat1/batch.1* \
++              $(DESTDIR)$(mandir)/cat1/atq.1*
++      rm -f $(DESTDIR)$(mandir)/cat1/atd.8*
+ dist: checkin $(DIST) $(LIST) Filelist.asc
+       (cd ..; tar cf - `for a in $(DIST) $(LIST); do echo at-$(VERSION)/$$a; done` |\
diff --git a/package/at/0005-Makefile.in-make-install-fix.patch b/package/at/0005-Makefile.in-make-install-fix.patch
new file mode 100644 (file)
index 0000000..ad84344
--- /dev/null
@@ -0,0 +1,69 @@
+[PATCH]: Makefile.in: fix make install for non-root, don't strip
+
+Buildroot will ensure all files are owned by root and stripped anyway
+(if needed) before the rootfs is created.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ Makefile.in |   39 +++++++++++++++++++--------------------
+ 1 file changed, 19 insertions(+), 20 deletions(-)
+
+Index: at-3.1.13/Makefile.in
+===================================================================
+--- at-3.1.13.orig/Makefile.in
++++ at-3.1.13/Makefile.in
+@@ -90,35 +90,34 @@ atrun: atrun.in
+       $(CC) -c $(CFLAGS) $(DEFS) $*.c
+ install: all
+-      $(INSTALL) -g root -o root -m 755 -d $(DESTDIR)$(etcdir)
+-      $(INSTALL) -g root -o root -m 755 -d $(DESTDIR)$(bindir)
+-      $(INSTALL) -g root -o root -m 755 -d $(DESTDIR)$(sbindir)
+-      $(INSTALL) -g root -o root -m 755 -d $(DESTDIR)$(docdir)
+-      $(INSTALL) -g root -o root -m 755 -d $(DESTDIR)$(atdocdir)
+-      $(INSTALL) -g $(DAEMON_GROUPNAME) -o $(DAEMON_USERNAME) -m 755 -d $(DESTDIR)$(ATSPOOL_DIR) $(DESTDIR)$(ATJOB_DIR)
++      $(INSTALL) -m 755 -d $(DESTDIR)$(etcdir)
++      $(INSTALL) -m 755 -d $(DESTDIR)$(bindir)
++      $(INSTALL) -m 755 -d $(DESTDIR)$(sbindir)
++      $(INSTALL) -m 755 -d $(DESTDIR)$(docdir)
++      $(INSTALL) -m 755 -d $(DESTDIR)$(atdocdir)
++      $(INSTALL) -m 755 -d $(DESTDIR)$(ATSPOOL_DIR) $(DESTDIR)$(ATJOB_DIR)
+       chmod 1770 $(DESTDIR)$(ATSPOOL_DIR) $(DESTDIR)$(ATJOB_DIR)
+       touch $(DESTDIR)$(LFILE)
+       chmod 600 $(DESTDIR)$(LFILE)
+-      chown $(DAEMON_USERNAME):$(DAEMON_GROUPNAME) $(DESTDIR)$(LFILE)
+-      test -f $(DESTDIR)$(etcdir)/at.allow || test -f $(DESTDIR)$(etcdir)/at.deny || $(INSTALL) -o root -g $(DAEMON_GROUPNAME) -m 640 at.deny $(DESTDIR$
+-      $(INSTALL) -g $(DAEMON_GROUPNAME) -o $(DAEMON_USERNAME) -m 6755 -s at $(DESTDIR)$(bindir)
++      test -f $(DESTDIR)$(etcdir)/at.allow || test -f $(DESTDIR)$(etcdir)/at.deny || $(INSTALL) -m 640 at.deny $(DESTDIR)$(etcdir)/
++      $(INSTALL) -m 6755 at $(DESTDIR)$(bindir)
+       $(LN_S) -f at $(DESTDIR)$(bindir)/atq
+       $(LN_S) -f at $(DESTDIR)$(bindir)/atrm
+-      $(INSTALL) -g root -o root -m 755 batch $(DESTDIR)$(bindir)
+-      $(INSTALL) -d -o root -g root -m 755 $(DESTDIR)$(man1dir)
+-      $(INSTALL) -d -o root -g root -m 755 $(DESTDIR)$(man5dir)
+-      $(INSTALL) -d -o root -g root -m 755 $(DESTDIR)$(man8dir)
+-      $(INSTALL) -g root -o root -m 755 -s atd $(DESTDIR)$(sbindir)
+-      $(INSTALL) -g root -o root -m 755 atrun $(DESTDIR)$(sbindir)
+-      $(INSTALL) -g root -o root -m 644 at.1 $(DESTDIR)$(man1dir)/
++      $(INSTALL) -m 755 batch $(DESTDIR)$(bindir)
++      $(INSTALL) -d -m 755 $(DESTDIR)$(man1dir)
++      $(INSTALL) -d -m 755 $(DESTDIR)$(man5dir)
++      $(INSTALL) -d -m 755 $(DESTDIR)$(man8dir)
++      $(INSTALL) -m 755 atd $(DESTDIR)$(sbindir)
++      $(INSTALL) -m 755 atrun $(DESTDIR)$(sbindir)
++      $(INSTALL) -m 644 at.1 $(DESTDIR)$(man1dir)/
+       cd $(DESTDIR)$(man1dir) && $(LN_S) -f at.1 atq.1 && $(LN_S) -f at.1 batch.1 && $(LN_S) -f at.1 atrm.1
+-      $(INSTALL) -g root -o root -m 644 atd.8 $(DESTDIR)$(man8dir)/
++      $(INSTALL) -m 644 atd.8 $(DESTDIR)$(man8dir)/
+       sed "s,\$${exec_prefix},$(exec_prefix),g" <atrun.8>tmpman
+-      $(INSTALL) -g root -o root -m 644 tmpman $(DESTDIR)$(man8dir)/atrun.8
++      $(INSTALL) -m 644 tmpman $(DESTDIR)$(man8dir)/atrun.8
+       rm -f tmpman
+-      $(INSTALL) -g root -o root -m 644 at.allow.5 $(DESTDIR)$(man5dir)/
++      $(INSTALL) -m 644 at.allow.5 $(DESTDIR)$(man5dir)/
+       cd $(DESTDIR)$(man5dir) && $(LN_S) -f at.allow.5 at.deny.5
+-      $(INSTALL) -g root -o root -m 644 $(DOCS) $(DESTDIR)$(atdocdir)
++      $(INSTALL) -m 644 $(DOCS) $(DESTDIR)$(atdocdir)
+       rm -f $(DESTDIR)$(mandir)/cat1/at.1* $(DESTDIR)$(mandir)/cat1/batch.1* \
+               $(DESTDIR)$(mandir)/cat1/atq.1*
+       rm -f $(DESTDIR)$(mandir)/cat1/atd.8*
diff --git a/package/at/0006-getloadavg.c-fix.patch b/package/at/0006-getloadavg.c-fix.patch
new file mode 100644 (file)
index 0000000..e073927
--- /dev/null
@@ -0,0 +1,30 @@
+[PATCH]: fix getloadavg.c compilation, revert to 3.1.10 version
+
+getloadavg.c shipped with 3.1.13 doesn't compile because it references
+headers not shipped. Fix it by simply reverting to the 3.1.10 version.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ getloadavg.c |    7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+Index: at-3.1.13/getloadavg.c
+===================================================================
+--- at-3.1.13.orig/getloadavg.c
++++ at-3.1.13/getloadavg.c
+@@ -66,11 +66,12 @@ Boston, MA  02110-1301  USA */
+ /* This should always be first.  */
+ #ifdef HAVE_CONFIG_H
+-#include <config.h>
++#include "config.h"
+ #endif
+-#include "lisp.h"
+-#include "sysfile.h" /* for encapsulated open, close, read, write */
++#include <sys/types.h>
++#include <sys/stat.h>
++#include <fcntl.h>
+ #ifndef HAVE_GETLOADAVG
diff --git a/package/at/0007-parsetime.l-include-config-h.patch b/package/at/0007-parsetime.l-include-config-h.patch
new file mode 100644 (file)
index 0000000..f4111eb
--- /dev/null
@@ -0,0 +1,16 @@
+Make sure to include config.h so that NEEDS_* macros are properly
+taken into account. This was a problem for NEEDS_YYWRAP, which was set
+to 1 in config.h, but the corresponding code wasn't compiled in.
+
+Index: at-3.1.13/parsetime.l
+===================================================================
+--- at-3.1.13.orig/parsetime.l
++++ at-3.1.13/parsetime.l
+@@ -4,6 +4,7 @@
+ #include <time.h>
+ #include "y.tab.h"
+ #include "parsetime.h"
++#include "config.h"
+ char *last_token = NULL;
+ char **my_argv;
diff --git a/package/at/at-0001-configure.ac-remove-manual-compiler-check-with-AC_TR.patch b/package/at/at-0001-configure.ac-remove-manual-compiler-check-with-AC_TR.patch
deleted file mode 100644 (file)
index 9e69922..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-From a182f18fa3b9fb3dd817b601b51c758f9a77f407 Mon Sep 17 00:00:00 2001
-From: Marc Kleine-Budde <mkl@pengutronix.de>
-Date: Tue, 1 Dec 2009 17:08:14 +0100
-Subject: [PATCH 1/5] configure.ac: remove manual compiler check with AC_TRY_RUN
-
-AC_TRY_RUN breaks cross compilation, so remove it. autotools will take
-care about a working (cross-) compiler.
-
-Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
----
- configure.ac |    6 ------
- 1 files changed, 0 insertions(+), 6 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index a8c2a14..997a37f 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -38,12 +38,6 @@ case "$host" in
-     AC_MSG_RESULT(no)
-     ;;
- esac
--AC_MSG_CHECKING(Trying to compile a trivial ANSI C program)
--AC_TRY_RUN([ main(int ac, char **av) { return 0; } ],
--    AC_MSG_RESULT(yes),
--    AC_MSG_RESULT(no)
--    AC_MSG_ERROR(Could not compile and run even a trivial ANSI C program - check CC.),
--    AC_MSG_ERROR(Could not compile and run even a trivial ANSI C program - check CC.))
- AC_MSG_CHECKING(__attribute__((noreturn)))
- AC_TRY_COMPILE([], [void __attribute__((noreturn)) panic(void);],
--- 
-1.6.5.3
-
diff --git a/package/at/at-0002-configure.ac-convert-AC_TRY_COMPILE-AC_COMPILE_IFELS.patch b/package/at/at-0002-configure.ac-convert-AC_TRY_COMPILE-AC_COMPILE_IFELS.patch
deleted file mode 100644 (file)
index e4276ac..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-From e12c96cccab550eda31cf7bb1dedddd3670ffe69 Mon Sep 17 00:00:00 2001
-From: Marc Kleine-Budde <mkl@pengutronix.de>
-Date: Tue, 1 Dec 2009 17:22:22 +0100
-Subject: [PATCH 2/5] configure.ac: convert AC_TRY_COMPILE -> AC_COMPILE_IFELSE
-
-Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
----
- configure.ac |   10 +++++-----
- 1 files changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 997a37f..cab80ed 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -40,11 +40,11 @@ case "$host" in
- esac
- AC_MSG_CHECKING(__attribute__((noreturn)))
--AC_TRY_COMPILE([], [void __attribute__((noreturn)) panic(void);],
--    AC_MSG_RESULT(yes)
--    AC_DEFINE(HAVE_ATTRIBUTE_NORETURN, 1,
--              [Define to 1 if compiler supports __attribute__((noreturn))]),
--    AC_MSG_RESULT(no)
-+AC_COMPILE_IFELSE(
-+       [AC_LANG_PROGRAM([[]], [[void __attribute__((noreturn)) panic(void);]])],
-+       [AC_MSG_RESULT(yes)
-+        AC_DEFINE(HAVE_ATTRIBUTE_NORETURN, 1, Define to 1 if compiler supports __attribute__((noreturn)))],
-+       [AC_MSG_RESULT(no)]
- )
- dnl Checks for libraries.
--- 
-1.6.5.3
-
diff --git a/package/at/at-0003-Makefile.in-add-LDFLAGS-to-linking-stage.patch b/package/at/at-0003-Makefile.in-add-LDFLAGS-to-linking-stage.patch
deleted file mode 100644 (file)
index e1ab3d3..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-From 8720a71757f3626bf3bbc3a7aa2185e6387e5689 Mon Sep 17 00:00:00 2001
-From: Marc Kleine-Budde <mkl@pengutronix.de>
-Date: Tue, 1 Dec 2009 20:37:31 +0100
-Subject: [PATCH 3/5] Makefile.in: add LDFLAGS to linking stage
-
-The linking stage ignores the LDFLAGS, this breaks if the flex library
-lives in a non standard location.
-
-This patch add LDFLAGS to both "at" and "atd" linking stage.
-
-Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
----
- Makefile.in |    4 ++--
- 1 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/Makefile.in b/Makefile.in
-index dae6b7d..b766bbb 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -65,13 +65,13 @@ LIST = Filelist Filelist.asc
- all: at atd atrun
- at: $(ATOBJECTS)
--      $(CC) $(CFLAGS) -o at $(ATOBJECTS) $(LIBS) $(LEXLIB)
-+      $(CC) $(CFLAGS) $(LDFLAGS) -o at $(ATOBJECTS) $(LIBS) $(LEXLIB)
-       rm -f $(CLONES)
-       $(LN_S) -f at atq
-       $(LN_S) -f at atrm
- atd: $(RUNOBJECTS)
--      $(CC) $(CFLAGS) -o atd $(RUNOBJECTS) $(LIBS) $(PAMLIB)
-+      $(CC) $(CFLAGS) $(LDFLAGS) -o atd $(RUNOBJECTS) $(LIBS) $(PAMLIB)
- y.tab.c y.tab.h: parsetime.y
-       $(YACC) -d parsetime.y
--- 
-1.6.5.3
-
diff --git a/package/at/at-0004-Makefile.in-replace-IROOT-by-DESTDIR.patch b/package/at/at-0004-Makefile.in-replace-IROOT-by-DESTDIR.patch
deleted file mode 100644 (file)
index 0d1d5f6..0000000
+++ /dev/null
@@ -1,97 +0,0 @@
-From 195d30e2e01fe2f91ed3bdaeec3982aa66b309dd Mon Sep 17 00:00:00 2001
-From: Marc Kleine-Budde <mkl@pengutronix.de>
-Date: Tue, 1 Dec 2009 20:57:45 +0100
-Subject: [PATCH 5/5] Makefile.in: replace IROOT by DESTDIR
-
-This patch replaces IROOT by DESTDIR, which is the autotools standard
-variable. For backwards compatibilty IROOT overwrites the DESTDIR.
-
-Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
----
- Makefile.in |   64 +++++++++++++++++++++++++++++++-----------------------------
- 1 file changed, 34 insertions(+), 30 deletions(-)
-
-Index: at-3.1.13/Makefile.in
-===================================================================
---- at-3.1.13.orig/Makefile.in
-+++ at-3.1.13/Makefile.in
-@@ -16,6 +16,10 @@ docdir              = $(prefix)/doc
- atdocdir      = $(docdir)/at
- etcdir                = @ETCDIR@
-+ifdef IROOT
-+DESTDIR               = $(IROOT)
-+endif
-+
- DAEMON_USERNAME       = @DAEMON_USERNAME@
- DAEMON_GROUPNAME= @DAEMON_GROUPNAME@
- LOADAVG_MX    = @LOADAVG_MX@
-@@ -86,38 +90,38 @@ atrun: atrun.in
-       $(CC) -c $(CFLAGS) $(DEFS) $*.c
- install: all
--      $(INSTALL) -g root -o root -m 755 -d $(IROOT)$(etcdir)
--      $(INSTALL) -g root -o root -m 755 -d $(IROOT)$(bindir)
--      $(INSTALL) -g root -o root -m 755 -d $(IROOT)$(sbindir)
--      $(INSTALL) -g root -o root -m 755 -d $(IROOT)$(docdir)
--      $(INSTALL) -g root -o root -m 755 -d $(IROOT)$(atdocdir)
--      $(INSTALL) -g $(DAEMON_GROUPNAME) -o $(DAEMON_USERNAME) -m 755 -d $(IROOT)$(ATSPOOL_DIR) $(IROOT)$(ATJOB_DIR)
--      chmod 1770 $(IROOT)$(ATSPOOL_DIR) $(IROOT)$(ATJOB_DIR)
--      touch $(IROOT)$(LFILE)
--      chmod 600 $(IROOT)$(LFILE)
--      chown $(DAEMON_USERNAME):$(DAEMON_GROUPNAME) $(IROOT)$(LFILE)
--      test -f $(IROOT)$(etcdir)/at.allow || test -f $(IROOT)$(etcdir)/at.deny || $(INSTALL) -o root -g $(DAEMON_GROUPNAME) -m 640 at.deny $(IROOT)$(etcdir)/
--      $(INSTALL) -g $(DAEMON_GROUPNAME) -o $(DAEMON_USERNAME) -m 6755 at $(IROOT)$(bindir)
--      $(LN_S) -f at $(IROOT)$(bindir)/atq
--      $(LN_S) -f at $(IROOT)$(bindir)/atrm
--      $(INSTALL) -g root -o root -m 755 batch $(IROOT)$(bindir)
--      $(INSTALL) -d -o root -g root -m 755 $(IROOT)$(man1dir)
--      $(INSTALL) -d -o root -g root -m 755 $(IROOT)$(man5dir)
--      $(INSTALL) -d -o root -g root -m 755 $(IROOT)$(man8dir)
--      $(INSTALL) -g root -o root -m 755 atd $(IROOT)$(sbindir)
--      $(INSTALL) -g root -o root -m 755 atrun $(IROOT)$(sbindir)
--      $(INSTALL) -g root -o root -m 644 at.1 $(IROOT)$(man1dir)/
--      cd $(IROOT)$(man1dir) && $(LN_S) -f at.1 atq.1 && $(LN_S) -f at.1 batch.1 && $(LN_S) -f at.1 atrm.1
--      $(INSTALL) -g root -o root -m 644 atd.8 $(IROOT)$(man8dir)/
-+      $(INSTALL) -g root -o root -m 755 -d $(DESTDIR)$(etcdir)
-+      $(INSTALL) -g root -o root -m 755 -d $(DESTDIR)$(bindir)
-+      $(INSTALL) -g root -o root -m 755 -d $(DESTDIR)$(sbindir)
-+      $(INSTALL) -g root -o root -m 755 -d $(DESTDIR)$(docdir)
-+      $(INSTALL) -g root -o root -m 755 -d $(DESTDIR)$(atdocdir)
-+      $(INSTALL) -g $(DAEMON_GROUPNAME) -o $(DAEMON_USERNAME) -m 755 -d $(DESTDIR)$(ATSPOOL_DIR) $(DESTDIR)$(ATJOB_DIR)
-+      chmod 1770 $(DESTDIR)$(ATSPOOL_DIR) $(DESTDIR)$(ATJOB_DIR)
-+      touch $(DESTDIR)$(LFILE)
-+      chmod 600 $(DESTDIR)$(LFILE)
-+      chown $(DAEMON_USERNAME):$(DAEMON_GROUPNAME) $(DESTDIR)$(LFILE)
-+      test -f $(DESTDIR)$(etcdir)/at.allow || test -f $(DESTDIR)$(etcdir)/at.deny || $(INSTALL) -o root -g $(DAEMON_GROUPNAME) -m 640 at.deny $(DESTDIR$
-+      $(INSTALL) -g $(DAEMON_GROUPNAME) -o $(DAEMON_USERNAME) -m 6755 -s at $(DESTDIR)$(bindir)
-+      $(LN_S) -f at $(DESTDIR)$(bindir)/atq
-+      $(LN_S) -f at $(DESTDIR)$(bindir)/atrm
-+      $(INSTALL) -g root -o root -m 755 batch $(DESTDIR)$(bindir)
-+      $(INSTALL) -d -o root -g root -m 755 $(DESTDIR)$(man1dir)
-+      $(INSTALL) -d -o root -g root -m 755 $(DESTDIR)$(man5dir)
-+      $(INSTALL) -d -o root -g root -m 755 $(DESTDIR)$(man8dir)
-+      $(INSTALL) -g root -o root -m 755 -s atd $(DESTDIR)$(sbindir)
-+      $(INSTALL) -g root -o root -m 755 atrun $(DESTDIR)$(sbindir)
-+      $(INSTALL) -g root -o root -m 644 at.1 $(DESTDIR)$(man1dir)/
-+      cd $(DESTDIR)$(man1dir) && $(LN_S) -f at.1 atq.1 && $(LN_S) -f at.1 batch.1 && $(LN_S) -f at.1 atrm.1
-+      $(INSTALL) -g root -o root -m 644 atd.8 $(DESTDIR)$(man8dir)/
-       sed "s,\$${exec_prefix},$(exec_prefix),g" <atrun.8>tmpman
--      $(INSTALL) -g root -o root -m 644 tmpman $(IROOT)$(man8dir)/atrun.8
-+      $(INSTALL) -g root -o root -m 644 tmpman $(DESTDIR)$(man8dir)/atrun.8
-       rm -f tmpman
--      $(INSTALL) -g root -o root -m 644 at.allow.5 $(IROOT)$(man5dir)/
--      cd $(IROOT)$(man5dir) && $(LN_S) -f at.allow.5 at.deny.5
--      $(INSTALL) -g root -o root -m 644 $(DOCS) $(IROOT)$(atdocdir)
--      rm -f $(IROOT)$(mandir)/cat1/at.1* $(IROOT)$(mandir)/cat1/batch.1* \
--              $(IROOT)$(mandir)/cat1/atq.1*
--      rm -f $(IROOT)$(mandir)/cat1/atd.8*
-+      $(INSTALL) -g root -o root -m 644 at.allow.5 $(DESTDIR)$(man5dir)/
-+      cd $(DESTDIR)$(man5dir) && $(LN_S) -f at.allow.5 at.deny.5
-+      $(INSTALL) -g root -o root -m 644 $(DOCS) $(DESTDIR)$(atdocdir)
-+      rm -f $(DESTDIR)$(mandir)/cat1/at.1* $(DESTDIR)$(mandir)/cat1/batch.1* \
-+              $(DESTDIR)$(mandir)/cat1/atq.1*
-+      rm -f $(DESTDIR)$(mandir)/cat1/atd.8*
- dist: checkin $(DIST) $(LIST) Filelist.asc
-       (cd ..; tar cf - `for a in $(DIST) $(LIST); do echo at-$(VERSION)/$$a; done` |\
diff --git a/package/at/at-0005-Makefile.in-make-install-fix.patch b/package/at/at-0005-Makefile.in-make-install-fix.patch
deleted file mode 100644 (file)
index ad84344..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-[PATCH]: Makefile.in: fix make install for non-root, don't strip
-
-Buildroot will ensure all files are owned by root and stripped anyway
-(if needed) before the rootfs is created.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- Makefile.in |   39 +++++++++++++++++++--------------------
- 1 file changed, 19 insertions(+), 20 deletions(-)
-
-Index: at-3.1.13/Makefile.in
-===================================================================
---- at-3.1.13.orig/Makefile.in
-+++ at-3.1.13/Makefile.in
-@@ -90,35 +90,34 @@ atrun: atrun.in
-       $(CC) -c $(CFLAGS) $(DEFS) $*.c
- install: all
--      $(INSTALL) -g root -o root -m 755 -d $(DESTDIR)$(etcdir)
--      $(INSTALL) -g root -o root -m 755 -d $(DESTDIR)$(bindir)
--      $(INSTALL) -g root -o root -m 755 -d $(DESTDIR)$(sbindir)
--      $(INSTALL) -g root -o root -m 755 -d $(DESTDIR)$(docdir)
--      $(INSTALL) -g root -o root -m 755 -d $(DESTDIR)$(atdocdir)
--      $(INSTALL) -g $(DAEMON_GROUPNAME) -o $(DAEMON_USERNAME) -m 755 -d $(DESTDIR)$(ATSPOOL_DIR) $(DESTDIR)$(ATJOB_DIR)
-+      $(INSTALL) -m 755 -d $(DESTDIR)$(etcdir)
-+      $(INSTALL) -m 755 -d $(DESTDIR)$(bindir)
-+      $(INSTALL) -m 755 -d $(DESTDIR)$(sbindir)
-+      $(INSTALL) -m 755 -d $(DESTDIR)$(docdir)
-+      $(INSTALL) -m 755 -d $(DESTDIR)$(atdocdir)
-+      $(INSTALL) -m 755 -d $(DESTDIR)$(ATSPOOL_DIR) $(DESTDIR)$(ATJOB_DIR)
-       chmod 1770 $(DESTDIR)$(ATSPOOL_DIR) $(DESTDIR)$(ATJOB_DIR)
-       touch $(DESTDIR)$(LFILE)
-       chmod 600 $(DESTDIR)$(LFILE)
--      chown $(DAEMON_USERNAME):$(DAEMON_GROUPNAME) $(DESTDIR)$(LFILE)
--      test -f $(DESTDIR)$(etcdir)/at.allow || test -f $(DESTDIR)$(etcdir)/at.deny || $(INSTALL) -o root -g $(DAEMON_GROUPNAME) -m 640 at.deny $(DESTDIR$
--      $(INSTALL) -g $(DAEMON_GROUPNAME) -o $(DAEMON_USERNAME) -m 6755 -s at $(DESTDIR)$(bindir)
-+      test -f $(DESTDIR)$(etcdir)/at.allow || test -f $(DESTDIR)$(etcdir)/at.deny || $(INSTALL) -m 640 at.deny $(DESTDIR)$(etcdir)/
-+      $(INSTALL) -m 6755 at $(DESTDIR)$(bindir)
-       $(LN_S) -f at $(DESTDIR)$(bindir)/atq
-       $(LN_S) -f at $(DESTDIR)$(bindir)/atrm
--      $(INSTALL) -g root -o root -m 755 batch $(DESTDIR)$(bindir)
--      $(INSTALL) -d -o root -g root -m 755 $(DESTDIR)$(man1dir)
--      $(INSTALL) -d -o root -g root -m 755 $(DESTDIR)$(man5dir)
--      $(INSTALL) -d -o root -g root -m 755 $(DESTDIR)$(man8dir)
--      $(INSTALL) -g root -o root -m 755 -s atd $(DESTDIR)$(sbindir)
--      $(INSTALL) -g root -o root -m 755 atrun $(DESTDIR)$(sbindir)
--      $(INSTALL) -g root -o root -m 644 at.1 $(DESTDIR)$(man1dir)/
-+      $(INSTALL) -m 755 batch $(DESTDIR)$(bindir)
-+      $(INSTALL) -d -m 755 $(DESTDIR)$(man1dir)
-+      $(INSTALL) -d -m 755 $(DESTDIR)$(man5dir)
-+      $(INSTALL) -d -m 755 $(DESTDIR)$(man8dir)
-+      $(INSTALL) -m 755 atd $(DESTDIR)$(sbindir)
-+      $(INSTALL) -m 755 atrun $(DESTDIR)$(sbindir)
-+      $(INSTALL) -m 644 at.1 $(DESTDIR)$(man1dir)/
-       cd $(DESTDIR)$(man1dir) && $(LN_S) -f at.1 atq.1 && $(LN_S) -f at.1 batch.1 && $(LN_S) -f at.1 atrm.1
--      $(INSTALL) -g root -o root -m 644 atd.8 $(DESTDIR)$(man8dir)/
-+      $(INSTALL) -m 644 atd.8 $(DESTDIR)$(man8dir)/
-       sed "s,\$${exec_prefix},$(exec_prefix),g" <atrun.8>tmpman
--      $(INSTALL) -g root -o root -m 644 tmpman $(DESTDIR)$(man8dir)/atrun.8
-+      $(INSTALL) -m 644 tmpman $(DESTDIR)$(man8dir)/atrun.8
-       rm -f tmpman
--      $(INSTALL) -g root -o root -m 644 at.allow.5 $(DESTDIR)$(man5dir)/
-+      $(INSTALL) -m 644 at.allow.5 $(DESTDIR)$(man5dir)/
-       cd $(DESTDIR)$(man5dir) && $(LN_S) -f at.allow.5 at.deny.5
--      $(INSTALL) -g root -o root -m 644 $(DOCS) $(DESTDIR)$(atdocdir)
-+      $(INSTALL) -m 644 $(DOCS) $(DESTDIR)$(atdocdir)
-       rm -f $(DESTDIR)$(mandir)/cat1/at.1* $(DESTDIR)$(mandir)/cat1/batch.1* \
-               $(DESTDIR)$(mandir)/cat1/atq.1*
-       rm -f $(DESTDIR)$(mandir)/cat1/atd.8*
diff --git a/package/at/at-0006-getloadavg.c-fix.patch b/package/at/at-0006-getloadavg.c-fix.patch
deleted file mode 100644 (file)
index e073927..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-[PATCH]: fix getloadavg.c compilation, revert to 3.1.10 version
-
-getloadavg.c shipped with 3.1.13 doesn't compile because it references
-headers not shipped. Fix it by simply reverting to the 3.1.10 version.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- getloadavg.c |    7 ++++---
- 1 file changed, 4 insertions(+), 3 deletions(-)
-
-Index: at-3.1.13/getloadavg.c
-===================================================================
---- at-3.1.13.orig/getloadavg.c
-+++ at-3.1.13/getloadavg.c
-@@ -66,11 +66,12 @@ Boston, MA  02110-1301  USA */
- /* This should always be first.  */
- #ifdef HAVE_CONFIG_H
--#include <config.h>
-+#include "config.h"
- #endif
--#include "lisp.h"
--#include "sysfile.h" /* for encapsulated open, close, read, write */
-+#include <sys/types.h>
-+#include <sys/stat.h>
-+#include <fcntl.h>
- #ifndef HAVE_GETLOADAVG
diff --git a/package/at/at-0007-parsetime.l-include-config-h.patch b/package/at/at-0007-parsetime.l-include-config-h.patch
deleted file mode 100644 (file)
index f4111eb..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-Make sure to include config.h so that NEEDS_* macros are properly
-taken into account. This was a problem for NEEDS_YYWRAP, which was set
-to 1 in config.h, but the corresponding code wasn't compiled in.
-
-Index: at-3.1.13/parsetime.l
-===================================================================
---- at-3.1.13.orig/parsetime.l
-+++ at-3.1.13/parsetime.l
-@@ -4,6 +4,7 @@
- #include <time.h>
- #include "y.tab.h"
- #include "parsetime.h"
-+#include "config.h"
- char *last_token = NULL;
- char **my_argv;
diff --git a/package/attr/0001-support-static-installation.patch b/package/attr/0001-support-static-installation.patch
new file mode 100644 (file)
index 0000000..87858ac
--- /dev/null
@@ -0,0 +1,29 @@
+Support installation of .a file when doing static linking
+
+When doing static linking (i.e ENABLE_SHARED != yes), the attr build
+logic wasn't installing any library at all, not even the .a file which
+is needed for static linking. This patch fixes that.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/include/buildmacros
+===================================================================
+--- a/include/buildmacros
++++ b/include/buildmacros
+@@ -97,7 +97,15 @@
+ INSTALL_LTLIB_STATIC = \
+       cd $(TOPDIR)/$(LIBNAME)/.libs; \
+-      ../$(INSTALL) -m 755 -d $(PKG_DEVLIB_DIR);
++      ../$(INSTALL) -m 755 -d $(PKG_DEVLIB_DIR); \
++      ../$(INSTALL) -m 644 -T old_lib $(LIBNAME).la $(PKG_DEVLIB_DIR); \
++      ../$(INSTALL) -m 644 $(LIBNAME).la $(PKG_DEVLIB_DIR)/$(LIBNAME).la ; \
++      ../$(INSTALL) -m 755 -d $(PKG_LIB_DIR); \
++      ../$(INSTALL) -T so_base $(LIBNAME).la $(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; \
++      fi
+ INSTALL_MAN = \
+       @for d in $(MAN_PAGES); do \
diff --git a/package/attr/attr-01-support-static-installation.patch b/package/attr/attr-01-support-static-installation.patch
deleted file mode 100644 (file)
index 87858ac..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-Support installation of .a file when doing static linking
-
-When doing static linking (i.e ENABLE_SHARED != yes), the attr build
-logic wasn't installing any library at all, not even the .a file which
-is needed for static linking. This patch fixes that.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/include/buildmacros
-===================================================================
---- a/include/buildmacros
-+++ b/include/buildmacros
-@@ -97,7 +97,15 @@
- INSTALL_LTLIB_STATIC = \
-       cd $(TOPDIR)/$(LIBNAME)/.libs; \
--      ../$(INSTALL) -m 755 -d $(PKG_DEVLIB_DIR);
-+      ../$(INSTALL) -m 755 -d $(PKG_DEVLIB_DIR); \
-+      ../$(INSTALL) -m 644 -T old_lib $(LIBNAME).la $(PKG_DEVLIB_DIR); \
-+      ../$(INSTALL) -m 644 $(LIBNAME).la $(PKG_DEVLIB_DIR)/$(LIBNAME).la ; \
-+      ../$(INSTALL) -m 755 -d $(PKG_LIB_DIR); \
-+      ../$(INSTALL) -T so_base $(LIBNAME).la $(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; \
-+      fi
- INSTALL_MAN = \
-       @for d in $(MAN_PAGES); do \
diff --git a/package/aumix/0001-fix-incorrect-makefile-am.patch b/package/aumix/0001-fix-incorrect-makefile-am.patch
new file mode 100644 (file)
index 0000000..8d55218
--- /dev/null
@@ -0,0 +1,29 @@
+Aumix's src/Makefile.am incorrect adds @includedir@ to the list of
+include paths and @libdir@ to the list of libraries paths. This is
+incorrect, as @includedir@ and @libdir@ are respectively /usr/include
+and /usr/lib, even in cross-compilation mode.
+
+At the same time, use AM_CFLAGS instead of CFLAGS, as is done on the
+similar patch found in OpenEmbedded.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ src/Makefile.am |    5 ++---
+ 1 file changed, 2 insertions(+), 3 deletions(-)
+
+Index: aumix-2.8/src/Makefile.am
+===================================================================
+--- aumix-2.8.orig/src/Makefile.am
++++ aumix-2.8/src/Makefile.am
+@@ -7,9 +7,8 @@
+               mouse.c common.h curses.h gpm-xterm.h gtk.h interactive.h  \
+               mouse.h play.xpm record.xpm
+ localedir     = $(datadir)/locale
+-INCLUDES      = -I../intl -DLOCALEDIR=\"$(localedir)\" -I@includedir@
+-CFLAGS                = @CFLAGS@ @GLIB_CFLAGS@ @GTK_CFLAGS@
+-LDADD         = -L@libdir@
++INCLUDES      = -I../intl -DLOCALEDIR=\"$(localedir)\"
++AM_CFLAGS     = @CFLAGS@ @GLIB_CFLAGS@ @GTK_CFLAGS@
+ LIBS          = @LIBS@ @GTK_LIBS@ @INTLLIBS@
+ DEFS          = @DEFS@
diff --git a/package/aumix/aumix-2.8-fix-incorrect-makefile-am.patch b/package/aumix/aumix-2.8-fix-incorrect-makefile-am.patch
deleted file mode 100644 (file)
index 8d55218..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-Aumix's src/Makefile.am incorrect adds @includedir@ to the list of
-include paths and @libdir@ to the list of libraries paths. This is
-incorrect, as @includedir@ and @libdir@ are respectively /usr/include
-and /usr/lib, even in cross-compilation mode.
-
-At the same time, use AM_CFLAGS instead of CFLAGS, as is done on the
-similar patch found in OpenEmbedded.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
----
- src/Makefile.am |    5 ++---
- 1 file changed, 2 insertions(+), 3 deletions(-)
-
-Index: aumix-2.8/src/Makefile.am
-===================================================================
---- aumix-2.8.orig/src/Makefile.am
-+++ aumix-2.8/src/Makefile.am
-@@ -7,9 +7,8 @@
-               mouse.c common.h curses.h gpm-xterm.h gtk.h interactive.h  \
-               mouse.h play.xpm record.xpm
- localedir     = $(datadir)/locale
--INCLUDES      = -I../intl -DLOCALEDIR=\"$(localedir)\" -I@includedir@
--CFLAGS                = @CFLAGS@ @GLIB_CFLAGS@ @GTK_CFLAGS@
--LDADD         = -L@libdir@
-+INCLUDES      = -I../intl -DLOCALEDIR=\"$(localedir)\"
-+AM_CFLAGS     = @CFLAGS@ @GLIB_CFLAGS@ @GTK_CFLAGS@
- LIBS          = @LIBS@ @GTK_LIBS@ @INTLLIBS@
- DEFS          = @DEFS@
diff --git a/package/autoconf/0001-dont-add-dirty-to-version.patch b/package/autoconf/0001-dont-add-dirty-to-version.patch
new file mode 100644 (file)
index 0000000..e8d9f6a
--- /dev/null
@@ -0,0 +1,28 @@
+autoconf: don't append -dirty to version
+
+Don't append -dirty to autoconf version number if the buildroot git tree
+has uncommited changes.
+
+This script is meant for the autoconf developers, but it also activates
+if you build autoconf in a subdirectory of a git tree (E.G. like how it's
+commonly done in buildroot).
+
+The affect is that autoconf gets built as being version 2.65-dirty, which
+breaks programs (like Python) which explicitly checks for autoconf-2.65.
+
+[Gustavo: update for autoconf 2.69]
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura autoconf-2.69.orig/build-aux/git-version-gen autoconf-2.69/build-aux/git-version-gen
+--- autoconf-2.69.orig/build-aux/git-version-gen       2013-06-27 11:31:02.340200154 -0300
++++ autoconf-2.69/build-aux/git-version-gen    2013-06-27 11:31:13.734577033 -0300
+@@ -203,7 +203,7 @@
+       *) # Append the suffix only if there isn't one already.
+           case $v in
+             *-dirty) ;;
+-            *) v="$v-dirty" ;;
++            #*) v="$v-dirty" ;;
+           esac ;;
+   esac
+ fi
diff --git a/package/autoconf/autoconf-dont-add-dirty-to-version.patch b/package/autoconf/autoconf-dont-add-dirty-to-version.patch
deleted file mode 100644 (file)
index e8d9f6a..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-autoconf: don't append -dirty to version
-
-Don't append -dirty to autoconf version number if the buildroot git tree
-has uncommited changes.
-
-This script is meant for the autoconf developers, but it also activates
-if you build autoconf in a subdirectory of a git tree (E.G. like how it's
-commonly done in buildroot).
-
-The affect is that autoconf gets built as being version 2.65-dirty, which
-breaks programs (like Python) which explicitly checks for autoconf-2.65.
-
-[Gustavo: update for autoconf 2.69]
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura autoconf-2.69.orig/build-aux/git-version-gen autoconf-2.69/build-aux/git-version-gen
---- autoconf-2.69.orig/build-aux/git-version-gen       2013-06-27 11:31:02.340200154 -0300
-+++ autoconf-2.69/build-aux/git-version-gen    2013-06-27 11:31:13.734577033 -0300
-@@ -203,7 +203,7 @@
-       *) # Append the suffix only if there isn't one already.
-           case $v in
-             *-dirty) ;;
--            *) v="$v-dirty" ;;
-+            #*) v="$v-dirty" ;;
-           esac ;;
-   esac
- fi
diff --git a/package/automake/0001-noman.patch b/package/automake/0001-noman.patch
new file mode 100644 (file)
index 0000000..a4ad16d
--- /dev/null
@@ -0,0 +1,27 @@
+Disable manpages build and installation, seems the bundled version of
+help2man is somewhat old and breaks on modern distributions such as
+Fedora 20, as reported by Kanibal on IRC.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura automake-1.14.1.orig/Makefile.in automake-1.14.1/Makefile.in
+--- automake-1.14.1.orig/Makefile.in   2014-09-10 18:40:57.554164448 -0300
++++ automake-1.14.1/Makefile.in        2014-09-10 18:42:01.050348068 -0300
+@@ -3387,7 +3387,7 @@
+ check-am: all-am
+       $(MAKE) $(AM_MAKEFLAGS) check-TESTS check-local
+ check: check-am
+-all-am: Makefile $(INFO_DEPS) $(SCRIPTS) $(MANS) $(DATA)
++all-am: Makefile $(INFO_DEPS) $(SCRIPTS) $(DATA)
+ installdirs:
+       for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(infodir)" "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(amdir)" "$(DESTDIR)$(automake_acdir)" "$(DESTDIR)$(automake_internal_acdir)" "$(DESTDIR)$(docdir)" "$(DESTDIR)$(perllibdir)" "$(DESTDIR)$(pkgvdatadir)" "$(DESTDIR)$(scriptdir)" "$(DESTDIR)$(system_acdir)" "$(DESTDIR)$(perllibdir)"; do \
+         test -z "$$dir" || $(MKDIR_P) "$$dir"; \
+@@ -3454,7 +3454,7 @@
+       install-dist_automake_internal_acDATA install-dist_docDATA \
+       install-dist_perllibDATA install-dist_pkgvdataDATA \
+       install-dist_scriptDATA install-dist_system_acDATA \
+-      install-info-am install-man install-nodist_perllibDATA
++      install-info-am install-nodist_perllibDATA
+       @$(NORMAL_INSTALL)
+       $(MAKE) $(AM_MAKEFLAGS) install-data-hook
+ install-dvi: install-dvi-am
diff --git a/package/automake/automake-0001-noman.patch b/package/automake/automake-0001-noman.patch
deleted file mode 100644 (file)
index a4ad16d..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-Disable manpages build and installation, seems the bundled version of
-help2man is somewhat old and breaks on modern distributions such as
-Fedora 20, as reported by Kanibal on IRC.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura automake-1.14.1.orig/Makefile.in automake-1.14.1/Makefile.in
---- automake-1.14.1.orig/Makefile.in   2014-09-10 18:40:57.554164448 -0300
-+++ automake-1.14.1/Makefile.in        2014-09-10 18:42:01.050348068 -0300
-@@ -3387,7 +3387,7 @@
- check-am: all-am
-       $(MAKE) $(AM_MAKEFLAGS) check-TESTS check-local
- check: check-am
--all-am: Makefile $(INFO_DEPS) $(SCRIPTS) $(MANS) $(DATA)
-+all-am: Makefile $(INFO_DEPS) $(SCRIPTS) $(DATA)
- installdirs:
-       for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(infodir)" "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(amdir)" "$(DESTDIR)$(automake_acdir)" "$(DESTDIR)$(automake_internal_acdir)" "$(DESTDIR)$(docdir)" "$(DESTDIR)$(perllibdir)" "$(DESTDIR)$(pkgvdatadir)" "$(DESTDIR)$(scriptdir)" "$(DESTDIR)$(system_acdir)" "$(DESTDIR)$(perllibdir)"; do \
-         test -z "$$dir" || $(MKDIR_P) "$$dir"; \
-@@ -3454,7 +3454,7 @@
-       install-dist_automake_internal_acDATA install-dist_docDATA \
-       install-dist_perllibDATA install-dist_pkgvdataDATA \
-       install-dist_scriptDATA install-dist_system_acDATA \
--      install-info-am install-man install-nodist_perllibDATA
-+      install-info-am install-nodist_perllibDATA
-       @$(NORMAL_INSTALL)
-       $(MAKE) $(AM_MAKEFLAGS) install-data-hook
- install-dvi: install-dvi-am
diff --git a/package/avahi/0001-autoipd-perms.patch b/package/avahi/0001-autoipd-perms.patch
new file mode 100644 (file)
index 0000000..c740e3f
--- /dev/null
@@ -0,0 +1,11 @@
+--- avahi-0.6.14/avahi-autoipd/main.c.cls      2006-09-13 12:49:45.000000000 -0700
++++ avahi-0.6.14/avahi-autoipd/main.c  2006-09-25 20:34:10.000000000 -0700
+@@ -239,7 +239,7 @@
+     fprintf(f, "%s\n", inet_ntop(AF_INET, &addr, buf, sizeof (buf)));
+     fclose(f);
+-
++    chmod(fn, S_IRUSR|S_IWUSR);
+     return 0;
+     
+ fail:
diff --git a/package/avahi/0002-disable-systemd-support.patch b/package/avahi/0002-disable-systemd-support.patch
new file mode 100644 (file)
index 0000000..909795a
--- /dev/null
@@ -0,0 +1,22 @@
+[PATCH] avahi-daemon: disable systemd support
+
+Disable systemd support as it isn't needed for BR, and uses SOCK_CLOEXEC
+which isn't available on uClibc.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ avahi-daemon/sd-daemon.h |    1 +
+ 1 file changed, 1 insertion(+)
+
+Index: avahi-0.6.27/avahi-daemon/sd-daemon.h
+===================================================================
+--- avahi-0.6.27.orig/avahi-daemon/sd-daemon.h
++++ avahi-0.6.27/avahi-daemon/sd-daemon.h
+@@ -66,6 +66,7 @@ extern "C" {
+   See sd-daemon(7) for more information.
+ */
++#define DISABLE_SYSTEMD /* no systemd support in BR */
+ #if __GNUC__ >= 4
+ #define _sd_printf_attr_(a,b) __attribute__ ((format (printf, a, b)))
diff --git a/package/avahi/0003-ipv6only.patch b/package/avahi/0003-ipv6only.patch
new file mode 100644 (file)
index 0000000..8cc3cb9
--- /dev/null
@@ -0,0 +1,19 @@
+diff -urpN avahi-0.6.22.orig/avahi-core/socket.c avahi-0.6.22/avahi-core/socket.c
+--- avahi-0.6.22.orig/avahi-core/socket.c      2007-12-16 22:03:08.000000000 +0100
++++ avahi-0.6.22/avahi-core/socket.c   2008-03-31 17:13:24.000000000 +0200
+@@ -394,13 +394,13 @@ int avahi_open_socket_ipv6(int no_reuse)
+         avahi_log_warn("IPV6_UNICAST_HOPS failed: %s", strerror(errno));
+         goto fail;
+     }
+-
++#ifdef IPV6_V6ONLY
+     yes = 1;
+     if (setsockopt(fd, IPPROTO_IPV6, IPV6_V6ONLY, &yes, sizeof(yes)) < 0) {
+         avahi_log_warn("IPV6_V6ONLY failed: %s", strerror(errno));
+         goto fail;
+     }
+-
++#endif
+     yes = 1;
+     if (setsockopt(fd, IPPROTO_IPV6, IPV6_MULTICAST_LOOP, &yes, sizeof(yes)) < 0) {
+         avahi_log_warn("IPV6_MULTICAST_LOOP failed: %s", strerror(errno));
diff --git a/package/avahi/0004-no-gtk-deprecations.patch b/package/avahi/0004-no-gtk-deprecations.patch
new file mode 100644 (file)
index 0000000..d187053
--- /dev/null
@@ -0,0 +1,30 @@
+Patch from http://pkgs.fedoraproject.org/cgit/avahi.git/plain/avahi-0.6.31-no-deprecations.patch?id=b3f4de05e331258c5123e3acc144e452595c2112
+
+Don't disable deprecated GTK support, as that breaks builds with modern GTK3
+versions.
+
+For more details, see the Fedora bugzilla:
+https://bugzilla.redhat.com/show_bug.cgi?id=1001676
+
+[Peter: patch Makefile.in so we don't need autoreconf]
+Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
+---
+ avahi-ui/Makefile.am |    2 +-
+ avahi-ui/Makefile.in |    3 +--
+ configure.ac         |    2 +-
+ 3 files changed, 3 insertions(+), 4 deletions(-)
+
+Index: avahi-0.6.31/avahi-ui/Makefile.in
+===================================================================
+--- avahi-0.6.31.orig/avahi-ui/Makefile.in
++++ avahi-0.6.31/avahi-ui/Makefile.in
+@@ -464,8 +464,7 @@
+ top_srcdir = @top_srcdir@
+ # This cool debug trap works on i386/gcc only
+-AM_CFLAGS = -I$(top_srcdir) -DG_DISABLE_DEPRECATED=1 \
+-      -DGDK_DISABLE_DEPRECATED=1 -DGTK_DISABLE_DEPRECATED=1 \
++AM_CFLAGS = -I$(top_srcdir) \
+       '-DDEBUG_TRAP=__asm__("int $$3")' $(am__append_1)
+ pkglibdatadir = $(libdir)/avahi
+ desktopdir = $(datadir)/applications
diff --git a/package/avahi/0005-optional-ipv6.patch b/package/avahi/0005-optional-ipv6.patch
new file mode 100644 (file)
index 0000000..5caf87c
--- /dev/null
@@ -0,0 +1,147 @@
+[PATCH] avahi-core: make ipv6 support optional on uclibc 0.9.31+
+
+uClibc 0.9.31+ doesn't define the IPV6_* defines when IPv6 support isn't
+enabled, causing the avahi build to break. Detect this configuration, and
+comment out IPv6 code if so.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ avahi-core/socket.c |   28 +++++++++++++++++++++++-----
+ 1 file changed, 23 insertions(+), 5 deletions(-)
+
+Index: avahi-0.6.23/avahi-core/socket.c
+===================================================================
+--- avahi-0.6.23.orig/avahi-core/socket.c
++++ avahi-0.6.23/avahi-core/socket.c
+@@ -47,6 +47,11 @@
+ #include <net/if_dl.h>
+ #endif
++#include <features.h>
++#if defined(__UCLIBC__) && !defined (__UCLIBC_HAS_IPV6__)
++#define NO_IPV6
++#endif
++
+ #include "dns.h"
+ #include "fdutil.h"
+ #include "socket.h"
+@@ -75,6 +80,7 @@ static void mdns_mcast_group_ipv4(struct
+     inet_pton(AF_INET, AVAHI_IPV4_MCAST_GROUP, &ret_sa->sin_addr);
+ }
++#ifndef NO_IPV6
+ static void mdns_mcast_group_ipv6(struct sockaddr_in6 *ret_sa) {
+     assert(ret_sa);
+@@ -83,6 +89,7 @@ static void mdns_mcast_group_ipv6(struct
+     ret_sa->sin6_port = htons(AVAHI_MDNS_PORT);
+     inet_pton(AF_INET6, AVAHI_IPV6_MCAST_GROUP, &ret_sa->sin6_addr);
+ }
++#endif
+ static void ipv4_address_to_sockaddr(struct sockaddr_in *ret_sa, const AvahiIPv4Address *a, uint16_t port) {
+     assert(ret_sa);
+@@ -95,6 +102,7 @@ static void ipv4_address_to_sockaddr(str
+     memcpy(&ret_sa->sin_addr, a, sizeof(AvahiIPv4Address));
+ }
++#ifndef NO_IPV6
+ static void ipv6_address_to_sockaddr(struct sockaddr_in6 *ret_sa, const AvahiIPv6Address *a, uint16_t port) {
+     assert(ret_sa);
+     assert(a);
+@@ -105,6 +113,7 @@ static void ipv6_address_to_sockaddr(str
+     ret_sa->sin6_port = htons(port);
+     memcpy(&ret_sa->sin6_addr, a, sizeof(AvahiIPv6Address));
+ }
++#endif
+ int avahi_mdns_mcast_join_ipv4(int fd, const AvahiIPv4Address *a, int idx, int join) {
+ #ifdef HAVE_STRUCT_IP_MREQN
+@@ -143,6 +152,7 @@ int avahi_mdns_mcast_join_ipv4(int fd, c
+ }
+ int avahi_mdns_mcast_join_ipv6(int fd, const AvahiIPv6Address *a, int idx, int join) {
++#ifndef NO_IPV6
+     struct ipv6_mreq mreq6;
+     struct sockaddr_in6 sa6;
+@@ -164,6 +174,9 @@ int avahi_mdns_mcast_join_ipv6(int fd, c
+     }
+     return 0;
++#else
++    return -1;
++#endif
+ }
+ static int reuseaddr(int fd) {
+@@ -372,6 +385,7 @@ fail:
+ }
+ int avahi_open_socket_ipv6(int no_reuse) {
++#ifndef NO_IPV6
+     struct sockaddr_in6 sa, local;
+     int fd = -1, yes, r;
+     int ttl;
+@@ -437,7 +451,7 @@ int avahi_open_socket_ipv6(int no_reuse)
+ fail:
+     if (fd >= 0)
+         close(fd);
+-
++#endif
+     return -1;
+ }
+@@ -567,7 +581,7 @@ int avahi_send_dns_packet_ipv6(
+         const AvahiIPv6Address *src_address,
+         const AvahiIPv6Address *dst_address,
+         uint16_t dst_port) {
+-
++#ifndef NO_IPV6
+     struct sockaddr_in6 sa;
+     struct msghdr msg;
+     struct iovec io;
+@@ -620,6 +634,9 @@ int avahi_send_dns_packet_ipv6(
+     }
+     return sendmsg_loop(fd, &msg, 0);
++#else
++    return -1;
++#endif
+ }
+ AvahiDnsPacket *avahi_recv_dns_packet_ipv4(
+@@ -782,7 +799,7 @@ AvahiDnsPacket *avahi_recv_dns_packet_ip
+         AvahiIPv6Address *ret_dst_address,
+         AvahiIfIndex *ret_iface,
+         uint8_t *ret_ttl) {
+-
++#ifndef NO_IPV6
+     AvahiDnsPacket *p = NULL;
+     struct msghdr msg;
+     struct iovec io;
+@@ -889,7 +906,7 @@ AvahiDnsPacket *avahi_recv_dns_packet_ip
+ fail:
+     if (p)
+         avahi_dns_packet_free(p);
+-
++#endif
+     return NULL;
+ }
+@@ -934,6 +951,7 @@ fail:
+ }
+ int avahi_open_unicast_socket_ipv6(void) {
++#ifndef NO_IPV6
+     struct sockaddr_in6 local;
+     int fd = -1, yes;
+@@ -974,6 +992,6 @@ int avahi_open_unicast_socket_ipv6(void)
+ fail:
+     if (fd >= 0)
+         close(fd);
+-
++#endif
+     return -1;
+ }
diff --git a/package/avahi/avahi-autoipd-perms.patch b/package/avahi/avahi-autoipd-perms.patch
deleted file mode 100644 (file)
index c740e3f..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
---- avahi-0.6.14/avahi-autoipd/main.c.cls      2006-09-13 12:49:45.000000000 -0700
-+++ avahi-0.6.14/avahi-autoipd/main.c  2006-09-25 20:34:10.000000000 -0700
-@@ -239,7 +239,7 @@
-     fprintf(f, "%s\n", inet_ntop(AF_INET, &addr, buf, sizeof (buf)));
-     fclose(f);
--
-+    chmod(fn, S_IRUSR|S_IWUSR);
-     return 0;
-     
- fail:
diff --git a/package/avahi/avahi-disable-systemd-support.patch b/package/avahi/avahi-disable-systemd-support.patch
deleted file mode 100644 (file)
index 909795a..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-[PATCH] avahi-daemon: disable systemd support
-
-Disable systemd support as it isn't needed for BR, and uses SOCK_CLOEXEC
-which isn't available on uClibc.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- avahi-daemon/sd-daemon.h |    1 +
- 1 file changed, 1 insertion(+)
-
-Index: avahi-0.6.27/avahi-daemon/sd-daemon.h
-===================================================================
---- avahi-0.6.27.orig/avahi-daemon/sd-daemon.h
-+++ avahi-0.6.27/avahi-daemon/sd-daemon.h
-@@ -66,6 +66,7 @@ extern "C" {
-   See sd-daemon(7) for more information.
- */
-+#define DISABLE_SYSTEMD /* no systemd support in BR */
- #if __GNUC__ >= 4
- #define _sd_printf_attr_(a,b) __attribute__ ((format (printf, a, b)))
diff --git a/package/avahi/avahi-ipv6only.patch b/package/avahi/avahi-ipv6only.patch
deleted file mode 100644 (file)
index 8cc3cb9..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-diff -urpN avahi-0.6.22.orig/avahi-core/socket.c avahi-0.6.22/avahi-core/socket.c
---- avahi-0.6.22.orig/avahi-core/socket.c      2007-12-16 22:03:08.000000000 +0100
-+++ avahi-0.6.22/avahi-core/socket.c   2008-03-31 17:13:24.000000000 +0200
-@@ -394,13 +394,13 @@ int avahi_open_socket_ipv6(int no_reuse)
-         avahi_log_warn("IPV6_UNICAST_HOPS failed: %s", strerror(errno));
-         goto fail;
-     }
--
-+#ifdef IPV6_V6ONLY
-     yes = 1;
-     if (setsockopt(fd, IPPROTO_IPV6, IPV6_V6ONLY, &yes, sizeof(yes)) < 0) {
-         avahi_log_warn("IPV6_V6ONLY failed: %s", strerror(errno));
-         goto fail;
-     }
--
-+#endif
-     yes = 1;
-     if (setsockopt(fd, IPPROTO_IPV6, IPV6_MULTICAST_LOOP, &yes, sizeof(yes)) < 0) {
-         avahi_log_warn("IPV6_MULTICAST_LOOP failed: %s", strerror(errno));
diff --git a/package/avahi/avahi-no-gtk-deprecations.patch b/package/avahi/avahi-no-gtk-deprecations.patch
deleted file mode 100644 (file)
index d187053..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-Patch from http://pkgs.fedoraproject.org/cgit/avahi.git/plain/avahi-0.6.31-no-deprecations.patch?id=b3f4de05e331258c5123e3acc144e452595c2112
-
-Don't disable deprecated GTK support, as that breaks builds with modern GTK3
-versions.
-
-For more details, see the Fedora bugzilla:
-https://bugzilla.redhat.com/show_bug.cgi?id=1001676
-
-[Peter: patch Makefile.in so we don't need autoreconf]
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- avahi-ui/Makefile.am |    2 +-
- avahi-ui/Makefile.in |    3 +--
- configure.ac         |    2 +-
- 3 files changed, 3 insertions(+), 4 deletions(-)
-
-Index: avahi-0.6.31/avahi-ui/Makefile.in
-===================================================================
---- avahi-0.6.31.orig/avahi-ui/Makefile.in
-+++ avahi-0.6.31/avahi-ui/Makefile.in
-@@ -464,8 +464,7 @@
- top_srcdir = @top_srcdir@
- # This cool debug trap works on i386/gcc only
--AM_CFLAGS = -I$(top_srcdir) -DG_DISABLE_DEPRECATED=1 \
--      -DGDK_DISABLE_DEPRECATED=1 -DGTK_DISABLE_DEPRECATED=1 \
-+AM_CFLAGS = -I$(top_srcdir) \
-       '-DDEBUG_TRAP=__asm__("int $$3")' $(am__append_1)
- pkglibdatadir = $(libdir)/avahi
- desktopdir = $(datadir)/applications
diff --git a/package/avahi/avahi-optional-ipv6.patch b/package/avahi/avahi-optional-ipv6.patch
deleted file mode 100644 (file)
index 5caf87c..0000000
+++ /dev/null
@@ -1,147 +0,0 @@
-[PATCH] avahi-core: make ipv6 support optional on uclibc 0.9.31+
-
-uClibc 0.9.31+ doesn't define the IPV6_* defines when IPv6 support isn't
-enabled, causing the avahi build to break. Detect this configuration, and
-comment out IPv6 code if so.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- avahi-core/socket.c |   28 +++++++++++++++++++++++-----
- 1 file changed, 23 insertions(+), 5 deletions(-)
-
-Index: avahi-0.6.23/avahi-core/socket.c
-===================================================================
---- avahi-0.6.23.orig/avahi-core/socket.c
-+++ avahi-0.6.23/avahi-core/socket.c
-@@ -47,6 +47,11 @@
- #include <net/if_dl.h>
- #endif
-+#include <features.h>
-+#if defined(__UCLIBC__) && !defined (__UCLIBC_HAS_IPV6__)
-+#define NO_IPV6
-+#endif
-+
- #include "dns.h"
- #include "fdutil.h"
- #include "socket.h"
-@@ -75,6 +80,7 @@ static void mdns_mcast_group_ipv4(struct
-     inet_pton(AF_INET, AVAHI_IPV4_MCAST_GROUP, &ret_sa->sin_addr);
- }
-+#ifndef NO_IPV6
- static void mdns_mcast_group_ipv6(struct sockaddr_in6 *ret_sa) {
-     assert(ret_sa);
-@@ -83,6 +89,7 @@ static void mdns_mcast_group_ipv6(struct
-     ret_sa->sin6_port = htons(AVAHI_MDNS_PORT);
-     inet_pton(AF_INET6, AVAHI_IPV6_MCAST_GROUP, &ret_sa->sin6_addr);
- }
-+#endif
- static void ipv4_address_to_sockaddr(struct sockaddr_in *ret_sa, const AvahiIPv4Address *a, uint16_t port) {
-     assert(ret_sa);
-@@ -95,6 +102,7 @@ static void ipv4_address_to_sockaddr(str
-     memcpy(&ret_sa->sin_addr, a, sizeof(AvahiIPv4Address));
- }
-+#ifndef NO_IPV6
- static void ipv6_address_to_sockaddr(struct sockaddr_in6 *ret_sa, const AvahiIPv6Address *a, uint16_t port) {
-     assert(ret_sa);
-     assert(a);
-@@ -105,6 +113,7 @@ static void ipv6_address_to_sockaddr(str
-     ret_sa->sin6_port = htons(port);
-     memcpy(&ret_sa->sin6_addr, a, sizeof(AvahiIPv6Address));
- }
-+#endif
- int avahi_mdns_mcast_join_ipv4(int fd, const AvahiIPv4Address *a, int idx, int join) {
- #ifdef HAVE_STRUCT_IP_MREQN
-@@ -143,6 +152,7 @@ int avahi_mdns_mcast_join_ipv4(int fd, c
- }
- int avahi_mdns_mcast_join_ipv6(int fd, const AvahiIPv6Address *a, int idx, int join) {
-+#ifndef NO_IPV6
-     struct ipv6_mreq mreq6;
-     struct sockaddr_in6 sa6;
-@@ -164,6 +174,9 @@ int avahi_mdns_mcast_join_ipv6(int fd, c
-     }
-     return 0;
-+#else
-+    return -1;
-+#endif
- }
- static int reuseaddr(int fd) {
-@@ -372,6 +385,7 @@ fail:
- }
- int avahi_open_socket_ipv6(int no_reuse) {
-+#ifndef NO_IPV6
-     struct sockaddr_in6 sa, local;
-     int fd = -1, yes, r;
-     int ttl;
-@@ -437,7 +451,7 @@ int avahi_open_socket_ipv6(int no_reuse)
- fail:
-     if (fd >= 0)
-         close(fd);
--
-+#endif
-     return -1;
- }
-@@ -567,7 +581,7 @@ int avahi_send_dns_packet_ipv6(
-         const AvahiIPv6Address *src_address,
-         const AvahiIPv6Address *dst_address,
-         uint16_t dst_port) {
--
-+#ifndef NO_IPV6
-     struct sockaddr_in6 sa;
-     struct msghdr msg;
-     struct iovec io;
-@@ -620,6 +634,9 @@ int avahi_send_dns_packet_ipv6(
-     }
-     return sendmsg_loop(fd, &msg, 0);
-+#else
-+    return -1;
-+#endif
- }
- AvahiDnsPacket *avahi_recv_dns_packet_ipv4(
-@@ -782,7 +799,7 @@ AvahiDnsPacket *avahi_recv_dns_packet_ip
-         AvahiIPv6Address *ret_dst_address,
-         AvahiIfIndex *ret_iface,
-         uint8_t *ret_ttl) {
--
-+#ifndef NO_IPV6
-     AvahiDnsPacket *p = NULL;
-     struct msghdr msg;
-     struct iovec io;
-@@ -889,7 +906,7 @@ AvahiDnsPacket *avahi_recv_dns_packet_ip
- fail:
-     if (p)
-         avahi_dns_packet_free(p);
--
-+#endif
-     return NULL;
- }
-@@ -934,6 +951,7 @@ fail:
- }
- int avahi_open_unicast_socket_ipv6(void) {
-+#ifndef NO_IPV6
-     struct sockaddr_in6 local;
-     int fd = -1, yes;
-@@ -974,6 +992,6 @@ int avahi_open_unicast_socket_ipv6(void)
- fail:
-     if (fd >= 0)
-         close(fd);
--
-+#endif
-     return -1;
- }
diff --git a/package/beecrypt/0001-cppglue.cxx-cplusplus-only.patch b/package/beecrypt/0001-cppglue.cxx-cplusplus-only.patch
new file mode 100644 (file)
index 0000000..298e3eb
--- /dev/null
@@ -0,0 +1,28 @@
+Makefile.am: Only compile/link cppglue.cxx if --with-cplusplus is used
+
+Bloats libbeecrypt for no use and breaks build on systems without a C++
+compiler.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ Makefile.am |    7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+Index: beecrypt-4.2.1/Makefile.am
+===================================================================
+--- beecrypt-4.2.1.orig/Makefile.am
++++ beecrypt-4.2.1/Makefile.am
+@@ -62,7 +62,12 @@
+ lib_LTLIBRARIES = libbeecrypt.la
+-libbeecrypt_la_SOURCES = aes.c base64.c beecrypt.c blockmode.c blockpad.c blowfish.c dhies.c dldp.c dlkp.c dlpk.c dlsvdp-dh.c dsa.c elgamal.c endianness.c entropy.c fips186.c hmac.c hmacmd5.c hmacsha1.c hmacsha224.c hmacsha256.c md4.c md5.c hmacsha384.c hmacsha512.c memchunk.c mp.c mpbarrett.c mpnumber.c mpprime.c mtprng.c pkcs1.c pkcs12.c ripemd128.c ripemd160.c ripemd256.c ripemd320.c rsa.c rsakp.c rsapk.c sha1.c sha224.c sha256.c sha384.c sha512.c sha2k32.c sha2k64.c timestamp.c cppglue.cxx
++libbeecrypt_la_SOURCES = aes.c base64.c beecrypt.c blockmode.c blockpad.c blowfish.c dhies.c dldp.c dlkp.c dlpk.c dlsvdp-dh.c dsa.c elgamal.c endianness.c entropy.c fips186.c hmac.c hmacmd5.c hmacsha1.c hmacsha224.c hmacsha256.c md4.c md5.c hmacsha384.c hmacsha512.c memchunk.c mp.c mpbarrett.c mpnumber.c mpprime.c mtprng.c pkcs1.c pkcs12.c ripemd128.c ripemd160.c ripemd256.c ripemd320.c rsa.c rsakp.c rsapk.c sha1.c sha224.c sha256.c sha384.c sha512.c sha2k32.c sha2k64.c timestamp.c
++
++if WITH_CPLUSPLUS
++libbeecrypt_la_SOURCES += cppglue.cxx
++endif
++
+ libbeecrypt_la_DEPENDENCIES = $(BEECRYPT_OBJECTS)
+ libbeecrypt_la_LIBADD = blowfishopt.lo mpopt.lo sha1opt.lo $(OPENMP_LIBS)
+ libbeecrypt_la_LDFLAGS = -no-undefined -version-info $(LIBBEECRYPT_LT_CURRENT):$(LIBBEECRYPT_LT_REVISION):$(LIBBEECRYPT_LT_AGE)
diff --git a/package/beecrypt/0002-icu-check-cross-compile.patch b/package/beecrypt/0002-icu-check-cross-compile.patch
new file mode 100644 (file)
index 0000000..cc02116
--- /dev/null
@@ -0,0 +1,31 @@
+configure: Use AC_COMPILE_IFELSE for ICU check for cross compilation compat
+
+AC_RUN_IFELSE doesn't work when cross compiling, but we can do the
+check in the preprocessor instead, so use AC_COMPILE_IFELSE instead.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ configure.ac |    6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+Index: beecrypt-4.2.1/configure.ac
+===================================================================
+--- beecrypt-4.2.1.orig/configure.ac
++++ beecrypt-4.2.1/configure.ac
+@@ -295,13 +295,13 @@
+ 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_COMPILE_IFELSE([
+     AC_LANG_PROGRAM([[#include <unicode/uversion.h>]],[[
+       #if U_ICU_VERSION_MAJOR_NUM < 2
+-      exit(1);
++      #error too old
+       #elif U_ICU_VERSION_MAJOR_NUM == 2
+       # if U_ICU_VERSION_MINOR_NUM < 8
+-      exit(1);
++      #error too old
+       # else
+       exit(0);
+       # endif
diff --git a/package/beecrypt/0003-build-system.patch b/package/beecrypt/0003-build-system.patch
new file mode 100644 (file)
index 0000000..0574689
--- /dev/null
@@ -0,0 +1,173 @@
+Fix build with BR2_ENABLE_DEBUG=yes, no need for expert mode anymore
+
+Otherwise configure issues this error message:
+configure: error: --enable-debug cannot be used in conjunction with --enable-expert-mode
+
+Downloaded from Gentoo:
+http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/dev-libs/beecrypt/files/beecrypt-4.2.1-build-system.patch?revision=1.2&view=markup
+
+This patch also removes the hard-coded CFLAGS provided by beecrypt in favour
+of the CFLAGS provided by buildroot.
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+
+--- beecrypt-4.2.1/configure.ac
++++ beecrypt-4.2.1/configure.ac
+@@ -11,7 +11,7 @@
+ # Checks for package options
+ AC_ARG_ENABLE(expert-mode, [  --enable-expert-mode      follow user-defined CFLAGS settings [[default=no]]],[
+-  ac_enable_expert_mode=yes
++  ac_enable_expert_mode=$enableval
+   ],[
+   if test "X$CFLAGS" != "X"; then
+     echo "enabling expert mode"
+@@ -25,7 +25,7 @@
+   if test "$ac_enable_expert_mode" = yes; then
+     AC_MSG_ERROR([--enable-debug cannot be used in conjunction with --enable-expert-mode])
+   fi
+-  ac_enable_debug=yes
++  ac_enable_debug=$enableval
+   ],[
+   ac_enable_debug=no
+   ])
+@@ -456,7 +456,7 @@
+       ac_cv_python_include="-I`$PYTHON -c 'import distutils.sysconfig; print distutils.sysconfig.get_python_inc()'`"
+     ])
+     AC_CACHE_CHECK([where to install python libraries], ac_cv_python_libdir, [
+-      ac_cv_python_libdir=`$PYTHON -c 'import distutils.sysconfig; print distutils.sysconfig.get_python_lib()'`
++      ac_cv_python_libdir=`$PYTHON -c 'import distutils.sysconfig; print distutils.sysconfig.get_python_lib(1, 0)'`
+     ])
+   fi
+ fi
+--- beecrypt-4.2.1/acinclude.m4
++++ beecrypt-4.2.1/acinclude.m4
+@@ -498,15 +498,6 @@ AC_DEFUN([BEE_GNU_CC],[
+     AC_SUBST(OPENMP_LIBS,"-lgomp")
+   fi
+   case $bc_target_arch in
+-  x86_64 | athlon64 | athlon-fx | k8 | opteron | em64t | nocona)
+-    CC="$CC -m64"
+-    ;;
+-  i[[3456]]86 | \
+-  pentium* | \
+-  athlon*)
+-    CC="$CC -m32"
+-    CCAS="$CCAS -m32"
+-    ;;
+   ia64)
+     case $target_os in
+     # HP/UX on Itanium needs to be told that a long is 64-bit!
+@@ -525,17 +516,8 @@ AC_DEFUN([BEE_GNU_CC],[
+     aix*)
+       CC="$CC -maix64"
+       ;;
+-    linux*)
+-      CC="$CC -m64"
+-      ;;
+     esac
+     ;;
+-  sparc | sparcv8*)
+-    CC="$CC -m32"
+-    ;;
+-  sparc64 | sparcv9*)
+-    CC="$CC -m64"
+-    ;;
+   esac
+   # Certain platforms needs special flags for multi-threaded code
+   if test "$ac_enable_threads" = yes; then
+@@ -646,14 +646,6 @@ dnl  BEE_GNU_CXX
+ AC_DEFUN([BEE_GNU_CXX],[
+   AC_REQUIRE([AC_PROG_CXX])
+   case $bc_target_arch in
+-  x86_64 | athlon64 | athlon-fx | k8 | opteron | em64t | nocona | core2)
+-    CXX="$CXX -m64"
+-    ;;
+-  i[[3456]]86 | \
+-  pentium* | \
+-  athlon*)
+-    CXX="$CXX -m32"
+-    ;;
+   ia64)
+     case $target_os in
+     # HP/UX on Itanium needs to be told that a long is 64-bit!
+@@ -672,17 +664,8 @@ AC_DEFUN([BEE_GNU_CXX],[
+     aix*)
+       CXX="$CXX -maix64"
+       ;;
+-    linux*)
+-      CXX="$CXX -m64"
+-      ;;
+     esac
+     ;;
+-  sparc | sparcv8*)
+-    CXX="$CXX -m32"
+-    ;;
+-  sparc64 | sparcv9*)
+-    CXX="$CXX -m64"
+-    ;;
+   esac
+   # Certain platforms needs special flags for multi-threaded code
+   if test "$ac_enable_threads" = yes; then
+--- beecrypt-4.2.1/java/Makefile.am
++++ beecrypt-4.2.1/java/Makefile.am
+@@ -26,7 +26,7 @@
+ INCLUDES = -I$(top_srcdir)/include
+-libaltdir=$(prefix)/lib@LIBALT@
++libaltdir=$(libdir)
+ libalt_LTLIBRARIES = libbeecrypt_java.la
+--- beecrypt-4.2.1/acinclude.m4
++++ beecrypt-4.2.1/acinclude.m4
+@@ -1589,20 +1589,5 @@
+   AC_SUBST(TYPEDEF_BC_THREADID_T,$bc_typedef_bc_threadid_t)
+   ])
+-
+-AH_BOTTOM([
+-#if ENABLE_THREADS
+-# ifndef _REENTRANT
+-#  define _REENTRANT
+-# endif
+-# if LINUX
+-#  define _LIBC_REENTRANT
+-# endif
+-#else
+-# ifdef _REENTRANT
+-#  undef _REENTRANT
+-# endif
+-#endif
+-])
+ dnl  BEE_THREAD_LOCAL_STORAGE
+@@ -1623,7 +1609,5 @@
+   ])
+ AH_BOTTOM([
+-#if !ENABLE_THREAD_LOCAL_STORAGE
+-# define __thread
+-#endif
++#include "config.threads.h"
+ ])
+--- beecrypt-4.2.1/config.threads.h
++++ beecrypt-4.2.1/config.threads.h
+@@ -0,0 +1,16 @@
++#if ENABLE_THREADS
++# ifndef _REENTRANT
++#  define _REENTRANT
++# endif
++# if LINUX
++#  define _LIBC_REENTRANT
++# endif
++#else
++# ifdef _REENTRANT
++#  undef _REENTRANT
++# endif
++#endif
++
++#if !ENABLE_THREAD_LOCAL_STORAGE
++# define __thread
++#endif
diff --git a/package/beecrypt/0004-gcc-4.7.patch b/package/beecrypt/0004-gcc-4.7.patch
new file mode 100644 (file)
index 0000000..767f789
--- /dev/null
@@ -0,0 +1,19 @@
+Really fixes gcc-4.7 related compile error:
+../../include/beecrypt/c++/util/AbstractSet.h:59:27: error: 'containsAll' was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
+
+Downloaded from upstream bugtracker:
+http://sourceforge.net/p/beecrypt/patches/10/
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+
+--- a/include/beecrypt/c++/util/AbstractSet.h
++++ b/include/beecrypt/c++/util/AbstractSet.h
+@@ -56,7 +56,7 @@
+                                       if (c->size() != size())
+                                               return false;
+-                                      return containsAll(*c);
++                                      return this->containsAll(*c);
+                               }
+                               return false;
+                       }
diff --git a/package/beecrypt/beecrypt-0001-cppglue.cxx-cplusplus-only.patch b/package/beecrypt/beecrypt-0001-cppglue.cxx-cplusplus-only.patch
deleted file mode 100644 (file)
index 298e3eb..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-Makefile.am: Only compile/link cppglue.cxx if --with-cplusplus is used
-
-Bloats libbeecrypt for no use and breaks build on systems without a C++
-compiler.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- Makefile.am |    7 ++++++-
- 1 file changed, 6 insertions(+), 1 deletion(-)
-
-Index: beecrypt-4.2.1/Makefile.am
-===================================================================
---- beecrypt-4.2.1.orig/Makefile.am
-+++ beecrypt-4.2.1/Makefile.am
-@@ -62,7 +62,12 @@
- lib_LTLIBRARIES = libbeecrypt.la
--libbeecrypt_la_SOURCES = aes.c base64.c beecrypt.c blockmode.c blockpad.c blowfish.c dhies.c dldp.c dlkp.c dlpk.c dlsvdp-dh.c dsa.c elgamal.c endianness.c entropy.c fips186.c hmac.c hmacmd5.c hmacsha1.c hmacsha224.c hmacsha256.c md4.c md5.c hmacsha384.c hmacsha512.c memchunk.c mp.c mpbarrett.c mpnumber.c mpprime.c mtprng.c pkcs1.c pkcs12.c ripemd128.c ripemd160.c ripemd256.c ripemd320.c rsa.c rsakp.c rsapk.c sha1.c sha224.c sha256.c sha384.c sha512.c sha2k32.c sha2k64.c timestamp.c cppglue.cxx
-+libbeecrypt_la_SOURCES = aes.c base64.c beecrypt.c blockmode.c blockpad.c blowfish.c dhies.c dldp.c dlkp.c dlpk.c dlsvdp-dh.c dsa.c elgamal.c endianness.c entropy.c fips186.c hmac.c hmacmd5.c hmacsha1.c hmacsha224.c hmacsha256.c md4.c md5.c hmacsha384.c hmacsha512.c memchunk.c mp.c mpbarrett.c mpnumber.c mpprime.c mtprng.c pkcs1.c pkcs12.c ripemd128.c ripemd160.c ripemd256.c ripemd320.c rsa.c rsakp.c rsapk.c sha1.c sha224.c sha256.c sha384.c sha512.c sha2k32.c sha2k64.c timestamp.c
-+
-+if WITH_CPLUSPLUS
-+libbeecrypt_la_SOURCES += cppglue.cxx
-+endif
-+
- libbeecrypt_la_DEPENDENCIES = $(BEECRYPT_OBJECTS)
- libbeecrypt_la_LIBADD = blowfishopt.lo mpopt.lo sha1opt.lo $(OPENMP_LIBS)
- libbeecrypt_la_LDFLAGS = -no-undefined -version-info $(LIBBEECRYPT_LT_CURRENT):$(LIBBEECRYPT_LT_REVISION):$(LIBBEECRYPT_LT_AGE)
diff --git a/package/beecrypt/beecrypt-0002-icu-check-cross-compile.patch b/package/beecrypt/beecrypt-0002-icu-check-cross-compile.patch
deleted file mode 100644 (file)
index cc02116..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-configure: Use AC_COMPILE_IFELSE for ICU check for cross compilation compat
-
-AC_RUN_IFELSE doesn't work when cross compiling, but we can do the
-check in the preprocessor instead, so use AC_COMPILE_IFELSE instead.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- configure.ac |    6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-Index: beecrypt-4.2.1/configure.ac
-===================================================================
---- beecrypt-4.2.1.orig/configure.ac
-+++ beecrypt-4.2.1/configure.ac
-@@ -295,13 +295,13 @@
- 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_COMPILE_IFELSE([
-     AC_LANG_PROGRAM([[#include <unicode/uversion.h>]],[[
-       #if U_ICU_VERSION_MAJOR_NUM < 2
--      exit(1);
-+      #error too old
-       #elif U_ICU_VERSION_MAJOR_NUM == 2
-       # if U_ICU_VERSION_MINOR_NUM < 8
--      exit(1);
-+      #error too old
-       # else
-       exit(0);
-       # endif
diff --git a/package/beecrypt/beecrypt-0003-build-system.patch b/package/beecrypt/beecrypt-0003-build-system.patch
deleted file mode 100644 (file)
index 0574689..0000000
+++ /dev/null
@@ -1,173 +0,0 @@
-Fix build with BR2_ENABLE_DEBUG=yes, no need for expert mode anymore
-
-Otherwise configure issues this error message:
-configure: error: --enable-debug cannot be used in conjunction with --enable-expert-mode
-
-Downloaded from Gentoo:
-http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/dev-libs/beecrypt/files/beecrypt-4.2.1-build-system.patch?revision=1.2&view=markup
-
-This patch also removes the hard-coded CFLAGS provided by beecrypt in favour
-of the CFLAGS provided by buildroot.
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-
---- beecrypt-4.2.1/configure.ac
-+++ beecrypt-4.2.1/configure.ac
-@@ -11,7 +11,7 @@
- # Checks for package options
- AC_ARG_ENABLE(expert-mode, [  --enable-expert-mode      follow user-defined CFLAGS settings [[default=no]]],[
--  ac_enable_expert_mode=yes
-+  ac_enable_expert_mode=$enableval
-   ],[
-   if test "X$CFLAGS" != "X"; then
-     echo "enabling expert mode"
-@@ -25,7 +25,7 @@
-   if test "$ac_enable_expert_mode" = yes; then
-     AC_MSG_ERROR([--enable-debug cannot be used in conjunction with --enable-expert-mode])
-   fi
--  ac_enable_debug=yes
-+  ac_enable_debug=$enableval
-   ],[
-   ac_enable_debug=no
-   ])
-@@ -456,7 +456,7 @@
-       ac_cv_python_include="-I`$PYTHON -c 'import distutils.sysconfig; print distutils.sysconfig.get_python_inc()'`"
-     ])
-     AC_CACHE_CHECK([where to install python libraries], ac_cv_python_libdir, [
--      ac_cv_python_libdir=`$PYTHON -c 'import distutils.sysconfig; print distutils.sysconfig.get_python_lib()'`
-+      ac_cv_python_libdir=`$PYTHON -c 'import distutils.sysconfig; print distutils.sysconfig.get_python_lib(1, 0)'`
-     ])
-   fi
- fi
---- beecrypt-4.2.1/acinclude.m4
-+++ beecrypt-4.2.1/acinclude.m4
-@@ -498,15 +498,6 @@ AC_DEFUN([BEE_GNU_CC],[
-     AC_SUBST(OPENMP_LIBS,"-lgomp")
-   fi
-   case $bc_target_arch in
--  x86_64 | athlon64 | athlon-fx | k8 | opteron | em64t | nocona)
--    CC="$CC -m64"
--    ;;
--  i[[3456]]86 | \
--  pentium* | \
--  athlon*)
--    CC="$CC -m32"
--    CCAS="$CCAS -m32"
--    ;;
-   ia64)
-     case $target_os in
-     # HP/UX on Itanium needs to be told that a long is 64-bit!
-@@ -525,17 +516,8 @@ AC_DEFUN([BEE_GNU_CC],[
-     aix*)
-       CC="$CC -maix64"
-       ;;
--    linux*)
--      CC="$CC -m64"
--      ;;
-     esac
-     ;;
--  sparc | sparcv8*)
--    CC="$CC -m32"
--    ;;
--  sparc64 | sparcv9*)
--    CC="$CC -m64"
--    ;;
-   esac
-   # Certain platforms needs special flags for multi-threaded code
-   if test "$ac_enable_threads" = yes; then
-@@ -646,14 +646,6 @@ dnl  BEE_GNU_CXX
- AC_DEFUN([BEE_GNU_CXX],[
-   AC_REQUIRE([AC_PROG_CXX])
-   case $bc_target_arch in
--  x86_64 | athlon64 | athlon-fx | k8 | opteron | em64t | nocona | core2)
--    CXX="$CXX -m64"
--    ;;
--  i[[3456]]86 | \
--  pentium* | \
--  athlon*)
--    CXX="$CXX -m32"
--    ;;
-   ia64)
-     case $target_os in
-     # HP/UX on Itanium needs to be told that a long is 64-bit!
-@@ -672,17 +664,8 @@ AC_DEFUN([BEE_GNU_CXX],[
-     aix*)
-       CXX="$CXX -maix64"
-       ;;
--    linux*)
--      CXX="$CXX -m64"
--      ;;
-     esac
-     ;;
--  sparc | sparcv8*)
--    CXX="$CXX -m32"
--    ;;
--  sparc64 | sparcv9*)
--    CXX="$CXX -m64"
--    ;;
-   esac
-   # Certain platforms needs special flags for multi-threaded code
-   if test "$ac_enable_threads" = yes; then
---- beecrypt-4.2.1/java/Makefile.am
-+++ beecrypt-4.2.1/java/Makefile.am
-@@ -26,7 +26,7 @@
- INCLUDES = -I$(top_srcdir)/include
--libaltdir=$(prefix)/lib@LIBALT@
-+libaltdir=$(libdir)
- libalt_LTLIBRARIES = libbeecrypt_java.la
---- beecrypt-4.2.1/acinclude.m4
-+++ beecrypt-4.2.1/acinclude.m4
-@@ -1589,20 +1589,5 @@
-   AC_SUBST(TYPEDEF_BC_THREADID_T,$bc_typedef_bc_threadid_t)
-   ])
--
--AH_BOTTOM([
--#if ENABLE_THREADS
--# ifndef _REENTRANT
--#  define _REENTRANT
--# endif
--# if LINUX
--#  define _LIBC_REENTRANT
--# endif
--#else
--# ifdef _REENTRANT
--#  undef _REENTRANT
--# endif
--#endif
--])
- dnl  BEE_THREAD_LOCAL_STORAGE
-@@ -1623,7 +1609,5 @@
-   ])
- AH_BOTTOM([
--#if !ENABLE_THREAD_LOCAL_STORAGE
--# define __thread
--#endif
-+#include "config.threads.h"
- ])
---- beecrypt-4.2.1/config.threads.h
-+++ beecrypt-4.2.1/config.threads.h
-@@ -0,0 +1,16 @@
-+#if ENABLE_THREADS
-+# ifndef _REENTRANT
-+#  define _REENTRANT
-+# endif
-+# if LINUX
-+#  define _LIBC_REENTRANT
-+# endif
-+#else
-+# ifdef _REENTRANT
-+#  undef _REENTRANT
-+# endif
-+#endif
-+
-+#if !ENABLE_THREAD_LOCAL_STORAGE
-+# define __thread
-+#endif
diff --git a/package/beecrypt/beecrypt-0004-gcc-4.7.patch b/package/beecrypt/beecrypt-0004-gcc-4.7.patch
deleted file mode 100644 (file)
index 767f789..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-Really fixes gcc-4.7 related compile error:
-../../include/beecrypt/c++/util/AbstractSet.h:59:27: error: 'containsAll' was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
-
-Downloaded from upstream bugtracker:
-http://sourceforge.net/p/beecrypt/patches/10/
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-
---- a/include/beecrypt/c++/util/AbstractSet.h
-+++ b/include/beecrypt/c++/util/AbstractSet.h
-@@ -56,7 +56,7 @@
-                                       if (c->size() != size())
-                                               return false;
--                                      return containsAll(*c);
-+                                      return this->containsAll(*c);
-                               }
-                               return false;
-                       }
diff --git a/package/bellagio/0001-drop-werror.patch b/package/bellagio/0001-drop-werror.patch
new file mode 100644 (file)
index 0000000..39baf42
--- /dev/null
@@ -0,0 +1,22 @@
+[PATCH] don't force -Werror in CFLAGS
+
+Released software shouldn't get built with -Werror.
+
+Signed-of-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ configure.ac |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: libomxil-bellagio-0.9.3/configure.ac
+===================================================================
+--- libomxil-bellagio-0.9.3.orig/configure.ac
++++ libomxil-bellagio-0.9.3/configure.ac
+@@ -5,7 +5,7 @@
+ AC_PREREQ([2.59])
+ AC_CONFIG_HEADERS([config.h])
+-CFLAGS="${CFLAGS} -Wall -Werror"
++CFLAGS="${CFLAGS} -Wall"
+ ################################################################################
+ # Set the shared versioning info, according to section 6.3 of the libtool info #
diff --git a/package/bellagio/0002-dynamicloader-linking.patch b/package/bellagio/0002-dynamicloader-linking.patch
new file mode 100644 (file)
index 0000000..5e4243d
--- /dev/null
@@ -0,0 +1,16 @@
+When libomxdynamicloader.so is loaded, it complains that RM_Deinit can't be resolved.
+Link explicitly against omxil-bellagio so that ld.so can find the reference.
+
+Signed-off-by: Qais Yousef <qais.yousef@imgtec.com>
+
+--- bellagio-0.9.3/src/dynamic_loader/Makefile.am.old  2012-03-23 15:07:47.379021034 +0000
++++ bellagio-0.9.3/src/dynamic_loader/Makefile.am      2012-03-23 15:08:47.563034818 +0000
+@@ -3,7 +3,7 @@
+ omxdynamicloader_LTLIBRARIES = libomxdynamicloader.la
+ libomxdynamicloader_la_SOURCES = ste_dynamic_component_loader.c ste_dynamic_component_loader.h
+-libomxdynamicloader_la_LDFLAGS =
++libomxdynamicloader_la_LDFLAGS = -lomxil-bellagio -L$(abs_top_srcdir)/src/.libs
+ libomxdynamicloader_la_CFLAGS = -I$(top_srcdir)/include \
+                       -I$(top_srcdir)/src \
+                       -I$(top_srcdir)/src/base \
diff --git a/package/bellagio/0003-parallel-build.patch b/package/bellagio/0003-parallel-build.patch
new file mode 100644 (file)
index 0000000..767bbeb
--- /dev/null
@@ -0,0 +1,16 @@
+Fix dependency issue to allow parallel build
+
+Signed-off-by: Qais Yousef <qais.yousef@imgtec.com>
+
+Index: bellagio-0.9.3/src/Makefile.am
+===================================================================
+--- bellagio-0.9.3.orig/src/Makefile.am
++++ bellagio-0.9.3/src/Makefile.am
+@@ -8,6 +8,7 @@ omxregister_bellagio_SOURCES = omxregist
+ omxregister_bellagio_CFLAGS = -DOMXILCOMPONENTSPATH=\"$(plugindir)/\" \
+                             -I$(top_srcdir)/include
+ omxregister_bellagio_LDFLAGS = -lomxil-bellagio -L$(builddir)
++omxregister_bellagio_DEPENDENCIES = libomxil-bellagio.la
+ lib_LTLIBRARIES = libomxil-bellagio.la
+ libomxil_bellagio_la_SOURCES = component_loader.h \
diff --git a/package/bellagio/0004-segfault-on-removeFromWaitResource.patch b/package/bellagio/0004-segfault-on-removeFromWaitResource.patch
new file mode 100644 (file)
index 0000000..f52a2c3
--- /dev/null
@@ -0,0 +1,37 @@
+We always access globalComponentList[] at indexComponent=-1 which causes a
+segfault. Use i as the index instead.
+
+Signed-off-by: Qais Yousef <qais.yousef@imgtec.com>
+
+--- bellagio-0.9.3/src/omx_reference_resource_manager.c.old    2012-03-13 10:15:25.743940980 +0000
++++ bellagio-0.9.3/src/omx_reference_resource_manager.c        2012-03-13 10:18:02.201971009 +0000
+@@ -485,7 +485,6 @@
+ OMX_ERRORTYPE RM_removeFromWaitForResource(OMX_COMPONENTTYPE *openmaxStandComp) {
+       omx_base_component_PrivateType* omx_base_component_Private;
+       int i = 0;
+-      int indexComponent = -1;
+       DEBUG(DEB_LEV_FUNCTION_NAME, "In %s\n", __func__);
+       omx_base_component_Private = (omx_base_component_PrivateType*)openmaxStandComp->pComponentPrivate;
+@@ -493,16 +492,13 @@
+       while(listOfcomponentRegistered[i].component_name != NULL ) {
+               if (!strcmp(listOfcomponentRegistered[i].component_name, omx_base_component_Private->name)) {
+                       // found component in the list of the resource manager
+-                      removeElemFromList(&globalComponentList[indexComponent], openmaxStandComp);
+-                      break;
++                      removeElemFromList(&globalComponentList[i], openmaxStandComp);
++                      DEBUG(DEB_LEV_FUNCTION_NAME, "Out of %s\n", __func__);
++                      return OMX_ErrorNone;
+               }
+               i++;
+       }
+-      if (indexComponent <0) {
+-              // No resource to be handled
+-              DEBUG(DEB_LEV_ERR, "In %s No resource to be handled\n", __func__);
+-              return OMX_ErrorNone;
+-      }
+-      DEBUG(DEB_LEV_FUNCTION_NAME, "Out of %s\n", __func__);
++      // No resource to be handled
++      DEBUG(DEB_LEV_ERR, "In %s No resource to be handled\n", __func__);
+       return OMX_ErrorNone;
+ }
diff --git a/package/bellagio/bellagio-0.9.3-drop-werror.patch b/package/bellagio/bellagio-0.9.3-drop-werror.patch
deleted file mode 100644 (file)
index 39baf42..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-[PATCH] don't force -Werror in CFLAGS
-
-Released software shouldn't get built with -Werror.
-
-Signed-of-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- configure.ac |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Index: libomxil-bellagio-0.9.3/configure.ac
-===================================================================
---- libomxil-bellagio-0.9.3.orig/configure.ac
-+++ libomxil-bellagio-0.9.3/configure.ac
-@@ -5,7 +5,7 @@
- AC_PREREQ([2.59])
- AC_CONFIG_HEADERS([config.h])
--CFLAGS="${CFLAGS} -Wall -Werror"
-+CFLAGS="${CFLAGS} -Wall"
- ################################################################################
- # Set the shared versioning info, according to section 6.3 of the libtool info #
diff --git a/package/bellagio/bellagio-0.9.3-dynamicloader-linking.patch b/package/bellagio/bellagio-0.9.3-dynamicloader-linking.patch
deleted file mode 100644 (file)
index 5e4243d..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-When libomxdynamicloader.so is loaded, it complains that RM_Deinit can't be resolved.
-Link explicitly against omxil-bellagio so that ld.so can find the reference.
-
-Signed-off-by: Qais Yousef <qais.yousef@imgtec.com>
-
---- bellagio-0.9.3/src/dynamic_loader/Makefile.am.old  2012-03-23 15:07:47.379021034 +0000
-+++ bellagio-0.9.3/src/dynamic_loader/Makefile.am      2012-03-23 15:08:47.563034818 +0000
-@@ -3,7 +3,7 @@
- omxdynamicloader_LTLIBRARIES = libomxdynamicloader.la
- libomxdynamicloader_la_SOURCES = ste_dynamic_component_loader.c ste_dynamic_component_loader.h
--libomxdynamicloader_la_LDFLAGS =
-+libomxdynamicloader_la_LDFLAGS = -lomxil-bellagio -L$(abs_top_srcdir)/src/.libs
- libomxdynamicloader_la_CFLAGS = -I$(top_srcdir)/include \
-                       -I$(top_srcdir)/src \
-                       -I$(top_srcdir)/src/base \
diff --git a/package/bellagio/bellagio-0.9.3-parallel-build.patch b/package/bellagio/bellagio-0.9.3-parallel-build.patch
deleted file mode 100644 (file)
index 767bbeb..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-Fix dependency issue to allow parallel build
-
-Signed-off-by: Qais Yousef <qais.yousef@imgtec.com>
-
-Index: bellagio-0.9.3/src/Makefile.am
-===================================================================
---- bellagio-0.9.3.orig/src/Makefile.am
-+++ bellagio-0.9.3/src/Makefile.am
-@@ -8,6 +8,7 @@ omxregister_bellagio_SOURCES = omxregist
- omxregister_bellagio_CFLAGS = -DOMXILCOMPONENTSPATH=\"$(plugindir)/\" \
-                             -I$(top_srcdir)/include
- omxregister_bellagio_LDFLAGS = -lomxil-bellagio -L$(builddir)
-+omxregister_bellagio_DEPENDENCIES = libomxil-bellagio.la
- lib_LTLIBRARIES = libomxil-bellagio.la
- libomxil_bellagio_la_SOURCES = component_loader.h \
diff --git a/package/bellagio/bellagio-0.9.3-segfault-on-removeFromWaitResource.patch b/package/bellagio/bellagio-0.9.3-segfault-on-removeFromWaitResource.patch
deleted file mode 100644 (file)
index f52a2c3..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-We always access globalComponentList[] at indexComponent=-1 which causes a
-segfault. Use i as the index instead.
-
-Signed-off-by: Qais Yousef <qais.yousef@imgtec.com>
-
---- bellagio-0.9.3/src/omx_reference_resource_manager.c.old    2012-03-13 10:15:25.743940980 +0000
-+++ bellagio-0.9.3/src/omx_reference_resource_manager.c        2012-03-13 10:18:02.201971009 +0000
-@@ -485,7 +485,6 @@
- OMX_ERRORTYPE RM_removeFromWaitForResource(OMX_COMPONENTTYPE *openmaxStandComp) {
-       omx_base_component_PrivateType* omx_base_component_Private;
-       int i = 0;
--      int indexComponent = -1;
-       DEBUG(DEB_LEV_FUNCTION_NAME, "In %s\n", __func__);
-       omx_base_component_Private = (omx_base_component_PrivateType*)openmaxStandComp->pComponentPrivate;
-@@ -493,16 +492,13 @@
-       while(listOfcomponentRegistered[i].component_name != NULL ) {
-               if (!strcmp(listOfcomponentRegistered[i].component_name, omx_base_component_Private->name)) {
-                       // found component in the list of the resource manager
--                      removeElemFromList(&globalComponentList[indexComponent], openmaxStandComp);
--                      break;
-+                      removeElemFromList(&globalComponentList[i], openmaxStandComp);
-+                      DEBUG(DEB_LEV_FUNCTION_NAME, "Out of %s\n", __func__);
-+                      return OMX_ErrorNone;
-               }
-               i++;
-       }
--      if (indexComponent <0) {
--              // No resource to be handled
--              DEBUG(DEB_LEV_ERR, "In %s No resource to be handled\n", __func__);
--              return OMX_ErrorNone;
--      }
--      DEBUG(DEB_LEV_FUNCTION_NAME, "Out of %s\n", __func__);
-+      // No resource to be handled
-+      DEBUG(DEB_LEV_ERR, "In %s No resource to be handled\n", __func__);
-       return OMX_ErrorNone;
- }
diff --git a/package/blackbox/0001-Fix-configure-ac.patch b/package/blackbox/0001-Fix-configure-ac.patch
new file mode 100644 (file)
index 0000000..1804473
--- /dev/null
@@ -0,0 +1,34 @@
+blackbox: merge existing patch and fix lpthread
+
+Merge the current configure patch into this one so it will patch 
+configure.ac instead. Also add pthread to libs to fix a linkage problem.
+
+Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
+--- blackbox-0.70.1/configure.ac.orig  2013-12-17 11:02:38.799055141 +0000
++++ blackbox-0.70.1/configure.ac       2013-12-17 11:09:08.421204545 +0000
+@@ -8,14 +8,6 @@ AC_CONFIG_SRCDIR([src/blackbox.cc])
+ dnl Determine default prefix
+ test "x$prefix" = "xNONE" && prefix="$ac_default_prefix"
+-dnl Look in the most logical places for external libraries
+-CPPFLAGS="$CPPFLAGS -I$prefix/include"
+-LDFLAGS="$LDFLAGS -L$prefix/lib"
+-if test "x$prefix" != "x/usr/local"; then
+-  CPPFLAGS="$CPPFLAGS -I/usr/local/include"
+-  LDFLAGS="$LDFLAGS -L/usr/local/lib"
+-fi
+-
+ dnl Locate required external software
+ AC_PROG_CC
+@@ -128,6 +120,10 @@ int main(int, char **)
+                   [AC_MSG_RESULT([no])]
+                  )
++dnl required pthread
++AC_CHECK_LIB([pthread],
++           [pthread_cancel],
++           [LIBS="$LIBS -lpthread"])
+ dnl needed for some X11 libs
+ AC_CHECK_LIB([nsl],
+              [t_open],
diff --git a/package/blackbox/0002-gcc43.patch b/package/blackbox/0002-gcc43.patch
new file mode 100644 (file)
index 0000000..1026bd5
--- /dev/null
@@ -0,0 +1,106 @@
+diff -Naupr blackbox-0.70.1.orig/lib/Image.cc blackbox-0.70.1/lib/Image.cc
+--- blackbox-0.70.1.orig/lib/Image.cc  2005-04-08 17:41:09.000000000 +0200
++++ blackbox-0.70.1/lib/Image.cc       2008-02-24 08:31:28.000000000 +0100
+@@ -42,8 +42,9 @@
+ #include <assert.h>
+ #include <math.h>
+-#include <stdio.h>
+-#include <stdlib.h>
++#include <cstdio>
++#include <cstdlib>
++#include <cstring>
+ // #define COLORTABLE_DEBUG
+ // #define MITSHM_DEBUG
+diff -Naupr blackbox-0.70.1.orig/lib/Resource.cc blackbox-0.70.1/lib/Resource.cc
+--- blackbox-0.70.1.orig/lib/Resource.cc       2005-04-06 23:16:50.000000000 +0200
++++ blackbox-0.70.1/lib/Resource.cc    2008-02-24 08:33:11.000000000 +0100
+@@ -28,7 +28,8 @@
+ #include <X11/Xlib.h>
+ #include <X11/Xresource.h>
+-#include <stdio.h>
++#include <cstdio>
++#include <cstring>
+ bt::Resource::Resource(void)
+diff -Naupr blackbox-0.70.1.orig/lib/XDG.cc blackbox-0.70.1/lib/XDG.cc
+--- blackbox-0.70.1.orig/lib/XDG.cc    2005-04-06 16:04:38.000000000 +0200
++++ blackbox-0.70.1/lib/XDG.cc 2008-02-24 08:34:11.000000000 +0100
+@@ -25,7 +25,8 @@
+ #include "Util.hh"
+ #include "XDG.hh"
+-#include <stdlib.h>
++#include <cstdlib>
++#include <algorithm>
+ // make sure directory names end with a slash
+diff -Naupr blackbox-0.70.1.orig/src/BlackboxResource.cc blackbox-0.70.1/src/BlackboxResource.cc
+--- blackbox-0.70.1.orig/src/BlackboxResource.cc       2005-10-18 09:34:46.000000000 +0200
++++ blackbox-0.70.1/src/BlackboxResource.cc    2008-02-24 08:34:49.000000000 +0100
+@@ -33,6 +33,8 @@
+ #include <X11/Xutil.h>
+ #include <X11/cursorfont.h>
++#include <cstring>
++
+ BlackboxResource::BlackboxResource(const std::string& rc): rc_file(rc) {
+   screen_resources = 0;
+diff -Naupr blackbox-0.70.1.orig/src/main.cc blackbox-0.70.1/src/main.cc
+--- blackbox-0.70.1.orig/src/main.cc   2005-01-03 10:42:57.000000000 +0100
++++ blackbox-0.70.1/src/main.cc        2008-02-24 08:37:16.000000000 +0100
+@@ -34,7 +34,8 @@
+ #include "blackbox.hh"
+ #include "../version.h"
+-#include <stdio.h>
++#include <cstdio>
++#include <cstring>
+ static void showHelp(int exitval) {
+diff -Naupr blackbox-0.70.1.orig/src/Screen.cc blackbox-0.70.1/src/Screen.cc
+--- blackbox-0.70.1.orig/src/Screen.cc 2005-10-18 10:07:22.000000000 +0200
++++ blackbox-0.70.1/src/Screen.cc      2008-02-24 08:35:46.000000000 +0100
+@@ -45,8 +45,9 @@
+ #include <sys/types.h>
+ #include <sys/stat.h>
+ #include <assert.h>
+-#include <ctype.h>
+ #include <dirent.h>
++#include <cctype>
++#include <cstring>
+ static bool running = true;
+diff -Naupr blackbox-0.70.1.orig/src/ScreenResource.cc blackbox-0.70.1/src/ScreenResource.cc
+--- blackbox-0.70.1.orig/src/ScreenResource.cc 2005-04-13 07:54:08.000000000 +0200
++++ blackbox-0.70.1/src/ScreenResource.cc      2008-02-24 08:36:31.000000000 +0100
+@@ -33,6 +33,8 @@
+ #include <assert.h>
++#include <cstring>
++
+ static const int iconify_width  = 9;
+ static const int iconify_height = 9;
+diff -Naupr blackbox-0.70.1.orig/util/bsetroot.cc blackbox-0.70.1/util/bsetroot.cc
+--- blackbox-0.70.1.orig/util/bsetroot.cc      2005-03-15 08:01:37.000000000 +0100
++++ blackbox-0.70.1/util/bsetroot.cc   2008-02-24 08:38:41.000000000 +0100
+@@ -30,7 +30,9 @@
+ #include <cctype>
+ #include <X11/Xatom.h>
+-#include <stdio.h>
++#include <cstdio>
++#include <cstdlib>
++#include <cstring>
+ // ignore all X errors
diff --git a/package/blackbox/0003-gcc46-textpropertytostring.patch b/package/blackbox/0003-gcc46-textpropertytostring.patch
new file mode 100644 (file)
index 0000000..af03be4
--- /dev/null
@@ -0,0 +1,34 @@
+[PATCH] fix build issue with gcc 4.6+
+
+Debian patch from http://patch-tracker.debian.org/patch/series/dl/blackbox/0.70.1-13/textpropertytostring-unconditional.diff
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+
+Description: Declare bt::textPropertyToString unconditionally.
+Author: Jakub Wilk <jwilk@debian.org>
+Forwarded: no
+Bug-Debian: http://bugs.debian.org/614468
+Last-Update: 2011-03-12
+
+--- a/lib/Util.hh
++++ b/lib/Util.hh
+@@ -25,6 +25,8 @@
+ #ifndef __Util_hh
+ #define __Util_hh
++#include <X11/Xutil.h>
++
+ #include <limits.h>
+ #include <string>
+@@ -94,10 +96,8 @@
+   std::string tolower(const std::string &string);
+-#ifdef _XUTIL_H_
+   std::string textPropertyToString(::Display *display,
+                                    ::XTextProperty& text_prop);
+-#endif
+ } // namespace bt
diff --git a/package/blackbox/blackbox-001-Fix-configure-ac.patch b/package/blackbox/blackbox-001-Fix-configure-ac.patch
deleted file mode 100644 (file)
index 1804473..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-blackbox: merge existing patch and fix lpthread
-
-Merge the current configure patch into this one so it will patch 
-configure.ac instead. Also add pthread to libs to fix a linkage problem.
-
-Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
---- blackbox-0.70.1/configure.ac.orig  2013-12-17 11:02:38.799055141 +0000
-+++ blackbox-0.70.1/configure.ac       2013-12-17 11:09:08.421204545 +0000
-@@ -8,14 +8,6 @@ AC_CONFIG_SRCDIR([src/blackbox.cc])
- dnl Determine default prefix
- test "x$prefix" = "xNONE" && prefix="$ac_default_prefix"
--dnl Look in the most logical places for external libraries
--CPPFLAGS="$CPPFLAGS -I$prefix/include"
--LDFLAGS="$LDFLAGS -L$prefix/lib"
--if test "x$prefix" != "x/usr/local"; then
--  CPPFLAGS="$CPPFLAGS -I/usr/local/include"
--  LDFLAGS="$LDFLAGS -L/usr/local/lib"
--fi
--
- dnl Locate required external software
- AC_PROG_CC
-@@ -128,6 +120,10 @@ int main(int, char **)
-                   [AC_MSG_RESULT([no])]
-                  )
-+dnl required pthread
-+AC_CHECK_LIB([pthread],
-+           [pthread_cancel],
-+           [LIBS="$LIBS -lpthread"])
- dnl needed for some X11 libs
- AC_CHECK_LIB([nsl],
-              [t_open],
diff --git a/package/blackbox/blackbox-002-gcc43.patch b/package/blackbox/blackbox-002-gcc43.patch
deleted file mode 100644 (file)
index 1026bd5..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-diff -Naupr blackbox-0.70.1.orig/lib/Image.cc blackbox-0.70.1/lib/Image.cc
---- blackbox-0.70.1.orig/lib/Image.cc  2005-04-08 17:41:09.000000000 +0200
-+++ blackbox-0.70.1/lib/Image.cc       2008-02-24 08:31:28.000000000 +0100
-@@ -42,8 +42,9 @@
- #include <assert.h>
- #include <math.h>
--#include <stdio.h>
--#include <stdlib.h>
-+#include <cstdio>
-+#include <cstdlib>
-+#include <cstring>
- // #define COLORTABLE_DEBUG
- // #define MITSHM_DEBUG
-diff -Naupr blackbox-0.70.1.orig/lib/Resource.cc blackbox-0.70.1/lib/Resource.cc
---- blackbox-0.70.1.orig/lib/Resource.cc       2005-04-06 23:16:50.000000000 +0200
-+++ blackbox-0.70.1/lib/Resource.cc    2008-02-24 08:33:11.000000000 +0100
-@@ -28,7 +28,8 @@
- #include <X11/Xlib.h>
- #include <X11/Xresource.h>
--#include <stdio.h>
-+#include <cstdio>
-+#include <cstring>
- bt::Resource::Resource(void)
-diff -Naupr blackbox-0.70.1.orig/lib/XDG.cc blackbox-0.70.1/lib/XDG.cc
---- blackbox-0.70.1.orig/lib/XDG.cc    2005-04-06 16:04:38.000000000 +0200
-+++ blackbox-0.70.1/lib/XDG.cc 2008-02-24 08:34:11.000000000 +0100
-@@ -25,7 +25,8 @@
- #include "Util.hh"
- #include "XDG.hh"
--#include <stdlib.h>
-+#include <cstdlib>
-+#include <algorithm>
- // make sure directory names end with a slash
-diff -Naupr blackbox-0.70.1.orig/src/BlackboxResource.cc blackbox-0.70.1/src/BlackboxResource.cc
---- blackbox-0.70.1.orig/src/BlackboxResource.cc       2005-10-18 09:34:46.000000000 +0200
-+++ blackbox-0.70.1/src/BlackboxResource.cc    2008-02-24 08:34:49.000000000 +0100
-@@ -33,6 +33,8 @@
- #include <X11/Xutil.h>
- #include <X11/cursorfont.h>
-+#include <cstring>
-+
- BlackboxResource::BlackboxResource(const std::string& rc): rc_file(rc) {
-   screen_resources = 0;
-diff -Naupr blackbox-0.70.1.orig/src/main.cc blackbox-0.70.1/src/main.cc
---- blackbox-0.70.1.orig/src/main.cc   2005-01-03 10:42:57.000000000 +0100
-+++ blackbox-0.70.1/src/main.cc        2008-02-24 08:37:16.000000000 +0100
-@@ -34,7 +34,8 @@
- #include "blackbox.hh"
- #include "../version.h"
--#include <stdio.h>
-+#include <cstdio>
-+#include <cstring>
- static void showHelp(int exitval) {
-diff -Naupr blackbox-0.70.1.orig/src/Screen.cc blackbox-0.70.1/src/Screen.cc
---- blackbox-0.70.1.orig/src/Screen.cc 2005-10-18 10:07:22.000000000 +0200
-+++ blackbox-0.70.1/src/Screen.cc      2008-02-24 08:35:46.000000000 +0100
-@@ -45,8 +45,9 @@
- #include <sys/types.h>
- #include <sys/stat.h>
- #include <assert.h>
--#include <ctype.h>
- #include <dirent.h>
-+#include <cctype>
-+#include <cstring>
- static bool running = true;
-diff -Naupr blackbox-0.70.1.orig/src/ScreenResource.cc blackbox-0.70.1/src/ScreenResource.cc
---- blackbox-0.70.1.orig/src/ScreenResource.cc 2005-04-13 07:54:08.000000000 +0200
-+++ blackbox-0.70.1/src/ScreenResource.cc      2008-02-24 08:36:31.000000000 +0100
-@@ -33,6 +33,8 @@
- #include <assert.h>
-+#include <cstring>
-+
- static const int iconify_width  = 9;
- static const int iconify_height = 9;
-diff -Naupr blackbox-0.70.1.orig/util/bsetroot.cc blackbox-0.70.1/util/bsetroot.cc
---- blackbox-0.70.1.orig/util/bsetroot.cc      2005-03-15 08:01:37.000000000 +0100
-+++ blackbox-0.70.1/util/bsetroot.cc   2008-02-24 08:38:41.000000000 +0100
-@@ -30,7 +30,9 @@
- #include <cctype>
- #include <X11/Xatom.h>
--#include <stdio.h>
-+#include <cstdio>
-+#include <cstdlib>
-+#include <cstring>
- // ignore all X errors
diff --git a/package/blackbox/blackbox-003-gcc46-textpropertytostring.patch b/package/blackbox/blackbox-003-gcc46-textpropertytostring.patch
deleted file mode 100644 (file)
index af03be4..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-[PATCH] fix build issue with gcc 4.6+
-
-Debian patch from http://patch-tracker.debian.org/patch/series/dl/blackbox/0.70.1-13/textpropertytostring-unconditional.diff
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
-
-Description: Declare bt::textPropertyToString unconditionally.
-Author: Jakub Wilk <jwilk@debian.org>
-Forwarded: no
-Bug-Debian: http://bugs.debian.org/614468
-Last-Update: 2011-03-12
-
---- a/lib/Util.hh
-+++ b/lib/Util.hh
-@@ -25,6 +25,8 @@
- #ifndef __Util_hh
- #define __Util_hh
-+#include <X11/Xutil.h>
-+
- #include <limits.h>
- #include <string>
-@@ -94,10 +96,8 @@
-   std::string tolower(const std::string &string);
--#ifdef _XUTIL_H_
-   std::string textPropertyToString(::Display *display,
-                                    ::XTextProperty& text_prop);
--#endif
- } // namespace bt
diff --git a/package/bluez_utils/0001-enable_cg2900_on_upstream_4.91.patch b/package/bluez_utils/0001-enable_cg2900_on_upstream_4.91.patch
new file mode 100644 (file)
index 0000000..e80af5f
--- /dev/null
@@ -0,0 +1,106 @@
+From ac7992081abba87627c9e91735b3309584b48585 Mon Sep 17 00:00:00 2001
+From: Gregory Hermant <gregory.hermant@calao-systems.com>
+Date: Wed, 14 Nov 2012 14:27:02 +0100
+Subject: [PATCH] add support for the ST-Ericsson CG2900 GPS FM Bluetooth
+ combo controller
+
+
+Signed-off-by: Gregory Hermant <gregory.hermant@calao-systems.com>
+---
+ tools/hciattach.c |   22 +++++++++++++++-------
+ tools/hciattach.h |    1 +
+ 2 files changed, 16 insertions(+), 7 deletions(-)
+
+diff --git a/tools/hciattach.c b/tools/hciattach.c
+index e4d5aa1..7f08243 100644
+--- a/tools/hciattach.c
++++ b/tools/hciattach.c
+@@ -1066,6 +1066,11 @@ struct uart_t uart[] = {
+       { "texasalt",   0x0000, 0x0000, HCI_UART_LL,   115200, 115200,
+                               FLOW_CTL, DISABLE_PM, NULL, texasalt, NULL   },
++      /* ST-Ericsson CG2900 GPS FM Bluetooth combo controller */
++      { "cg2900",     0x0000, 0x0000, HCI_UART_STE,  115200, 115200,
++                              FLOW_CTL, DISABLE_PM, NULL, NULL     },
++
++
+       /* ST Microelectronics minikits based on STLC2410/STLC2415 */
+       { "st",         0x0000, 0x0000, HCI_UART_H4,    57600, 115200,
+                               FLOW_CTL, DISABLE_PM,  NULL, st       },
+@@ -1157,10 +1162,10 @@ static struct uart_t * get_by_type(char *type)
+ }
+ /* Initialize UART driver */
+-static int init_uart(char *dev, struct uart_t *u, int send_break, int raw)
++static int init_uart(char *dev, struct uart_t *u, int send_break, int raw, int line_disc)
+ {
+       struct termios ti;
+-      int fd, i;
++      int fd;
+       unsigned long flags = 0;
+       if (raw)
+@@ -1217,8 +1222,7 @@ static int init_uart(char *dev, struct uart_t *u, int send_break, int raw)
+       }
+       /* Set TTY to N_HCI line discipline */
+-      i = N_HCI;
+-      if (ioctl(fd, TIOCSETD, &i) < 0) {
++      if (ioctl(fd, TIOCSETD, &line_disc) < 0) {
+               perror("Can't set line discipline");
+               return -1;
+       }
+@@ -1243,7 +1247,7 @@ static void usage(void)
+ {
+       printf("hciattach - HCI UART driver initialization utility\n");
+       printf("Usage:\n");
+-      printf("\thciattach [-n] [-p] [-b] [-r] [-t timeout] [-s initial_speed] <tty> <type | id> [speed] [flow|noflow] [bdaddr]\n");
++      printf("\thciattach [-n] [-p] [-a line_disc_nr] [-b] [-r] [-t timeout] [-s initial_speed] <tty> <type | id> [speed] [flow|noflow] [bdaddr]\n");
+       printf("\thciattach -l\n");
+ }
+@@ -1252,6 +1256,7 @@ int main(int argc, char *argv[])
+       struct uart_t *u = NULL;
+       int detach, printpid, raw, opt, i, n, ld, err;
+       int to = 10;
++      int line_disc = N_HCI;
+       int init_speed = 0;
+       int send_break = 0;
+       pid_t pid;
+@@ -1264,8 +1269,11 @@ int main(int argc, char *argv[])
+       printpid = 0;
+       raw = 0;
+-      while ((opt=getopt(argc, argv, "bnpt:s:lr")) != EOF) {
++      while ((opt=getopt(argc, argv, "bnpt:s:lra:")) != EOF) {
+               switch(opt) {
++              case 'a':
++                        line_disc = atoi(optarg);
++                        break;
+               case 'b':
+                       send_break = 1;
+                       break;
+@@ -1381,7 +1389,7 @@ int main(int argc, char *argv[])
+       alarm(to);
+       bcsp_max_retries = to;
+-      n = init_uart(dev, u, send_break, raw);
++      n = init_uart(dev, u, send_break, raw, line_disc);
+       if (n < 0) {
+               perror("Can't initialize device");
+               exit(1);
+diff --git a/tools/hciattach.h b/tools/hciattach.h
+index fed0d11..09b534d 100644
+--- a/tools/hciattach.h
++++ b/tools/hciattach.h
+@@ -39,6 +39,7 @@
+ #define HCI_UART_H4DS 3
+ #define HCI_UART_LL   4
+ #define HCI_UART_ATH3K  5
++#define HCI_UART_STE  6
+ #define HCI_UART_RAW_DEVICE   0
+-- 
+1.7.9.5
+
diff --git a/package/bluez_utils/bluez_utils-4.101-enable_cg2900_on_upstream_4.91.patch b/package/bluez_utils/bluez_utils-4.101-enable_cg2900_on_upstream_4.91.patch
deleted file mode 100644 (file)
index e80af5f..0000000
+++ /dev/null
@@ -1,106 +0,0 @@
-From ac7992081abba87627c9e91735b3309584b48585 Mon Sep 17 00:00:00 2001
-From: Gregory Hermant <gregory.hermant@calao-systems.com>
-Date: Wed, 14 Nov 2012 14:27:02 +0100
-Subject: [PATCH] add support for the ST-Ericsson CG2900 GPS FM Bluetooth
- combo controller
-
-
-Signed-off-by: Gregory Hermant <gregory.hermant@calao-systems.com>
----
- tools/hciattach.c |   22 +++++++++++++++-------
- tools/hciattach.h |    1 +
- 2 files changed, 16 insertions(+), 7 deletions(-)
-
-diff --git a/tools/hciattach.c b/tools/hciattach.c
-index e4d5aa1..7f08243 100644
---- a/tools/hciattach.c
-+++ b/tools/hciattach.c
-@@ -1066,6 +1066,11 @@ struct uart_t uart[] = {
-       { "texasalt",   0x0000, 0x0000, HCI_UART_LL,   115200, 115200,
-                               FLOW_CTL, DISABLE_PM, NULL, texasalt, NULL   },
-+      /* ST-Ericsson CG2900 GPS FM Bluetooth combo controller */
-+      { "cg2900",     0x0000, 0x0000, HCI_UART_STE,  115200, 115200,
-+                              FLOW_CTL, DISABLE_PM, NULL, NULL     },
-+
-+
-       /* ST Microelectronics minikits based on STLC2410/STLC2415 */
-       { "st",         0x0000, 0x0000, HCI_UART_H4,    57600, 115200,
-                               FLOW_CTL, DISABLE_PM,  NULL, st       },
-@@ -1157,10 +1162,10 @@ static struct uart_t * get_by_type(char *type)
- }
- /* Initialize UART driver */
--static int init_uart(char *dev, struct uart_t *u, int send_break, int raw)
-+static int init_uart(char *dev, struct uart_t *u, int send_break, int raw, int line_disc)
- {
-       struct termios ti;
--      int fd, i;
-+      int fd;
-       unsigned long flags = 0;
-       if (raw)
-@@ -1217,8 +1222,7 @@ static int init_uart(char *dev, struct uart_t *u, int send_break, int raw)
-       }
-       /* Set TTY to N_HCI line discipline */
--      i = N_HCI;
--      if (ioctl(fd, TIOCSETD, &i) < 0) {
-+      if (ioctl(fd, TIOCSETD, &line_disc) < 0) {
-               perror("Can't set line discipline");
-               return -1;
-       }
-@@ -1243,7 +1247,7 @@ static void usage(void)
- {
-       printf("hciattach - HCI UART driver initialization utility\n");
-       printf("Usage:\n");
--      printf("\thciattach [-n] [-p] [-b] [-r] [-t timeout] [-s initial_speed] <tty> <type | id> [speed] [flow|noflow] [bdaddr]\n");
-+      printf("\thciattach [-n] [-p] [-a line_disc_nr] [-b] [-r] [-t timeout] [-s initial_speed] <tty> <type | id> [speed] [flow|noflow] [bdaddr]\n");
-       printf("\thciattach -l\n");
- }
-@@ -1252,6 +1256,7 @@ int main(int argc, char *argv[])
-       struct uart_t *u = NULL;
-       int detach, printpid, raw, opt, i, n, ld, err;
-       int to = 10;
-+      int line_disc = N_HCI;
-       int init_speed = 0;
-       int send_break = 0;
-       pid_t pid;
-@@ -1264,8 +1269,11 @@ int main(int argc, char *argv[])
-       printpid = 0;
-       raw = 0;
--      while ((opt=getopt(argc, argv, "bnpt:s:lr")) != EOF) {
-+      while ((opt=getopt(argc, argv, "bnpt:s:lra:")) != EOF) {
-               switch(opt) {
-+              case 'a':
-+                        line_disc = atoi(optarg);
-+                        break;
-               case 'b':
-                       send_break = 1;
-                       break;
-@@ -1381,7 +1389,7 @@ int main(int argc, char *argv[])
-       alarm(to);
-       bcsp_max_retries = to;
--      n = init_uart(dev, u, send_break, raw);
-+      n = init_uart(dev, u, send_break, raw, line_disc);
-       if (n < 0) {
-               perror("Can't initialize device");
-               exit(1);
-diff --git a/tools/hciattach.h b/tools/hciattach.h
-index fed0d11..09b534d 100644
---- a/tools/hciattach.h
-+++ b/tools/hciattach.h
-@@ -39,6 +39,7 @@
- #define HCI_UART_H4DS 3
- #define HCI_UART_LL   4
- #define HCI_UART_ATH3K  5
-+#define HCI_UART_STE  6
- #define HCI_UART_RAW_DEVICE   0
--- 
-1.7.9.5
-
diff --git a/package/boost/0001-fix-ambiguous-format-call-on-64bit-builds.patch b/package/boost/0001-fix-ambiguous-format-call-on-64bit-builds.patch
new file mode 100644 (file)
index 0000000..e8972fd
--- /dev/null
@@ -0,0 +1,27 @@
+boost: fix ambiguous format call on 64-bit builds
+
+Fixes problem:
+
+libs/locale/src/icu/formatter.cpp: In member function
+'virtual std::basic_string<_CharT, std::char_traits<_CharT>, std::allocator<_CharT> > boost::locale::impl_icu::number_format<CharType>::format(boost::int64_t, size_t&) const':
+libs/locale/src/icu/formatter.cpp:61: error: call of overloaded 'format(boost::int64_t&, icu_49::UnicodeString&)' is ambiguous
+/ec/include/unicode/numfmt.h:317: note: candidates are: icu_49::UnicodeString& icu_49::NumberFormat::format(double, icu_49::UnicodeString&) const
+/ec/include/unicode/numfmt.h:330: note:                 icu_49::UnicodeString& icu_49::NumberFormat::format(int32_t, icu_49::UnicodeString&) const
+/ec/include/unicode/numfmt.h:343: note:                 icu_49::UnicodeString& icu_49::NumberFormat::format(int64_t, icu_49::UnicodeString&) const
+
+Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
+Backported-from: https://svn.boost.org/trac/boost/ticket/6851
+
+
+diff -ruN boost_1_49_0.orig/libs/locale/src/icu/formatter.cpp boost_1_49_0/libs/locale/src/icu/formatter.cpp
+--- boost_1_49_0.orig/libs/locale/src/icu/formatter.cpp 2011-07-12 14:57:36.000000000 +0100
++++ boost_1_49_0/libs/locale/src/icu/formatter.cpp      2012-05-01 14:27:54.000000000 +0100
+@@ -58,7 +58,7 @@
+             virtual string_type format(int64_t value,size_t &code_points) const
+             {
+                 icu::UnicodeString tmp;
+-                icu_fmt_->format(value,tmp);
++                icu_fmt_->format(::int64_t(value),tmp);
+                 code_points=tmp.countChar32();
+                 return cvt_.std(tmp);
+             }
diff --git a/package/boost/boost-0001-fix-ambiguous-format-call-on-64bit-builds.patch b/package/boost/boost-0001-fix-ambiguous-format-call-on-64bit-builds.patch
deleted file mode 100644 (file)
index e8972fd..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-boost: fix ambiguous format call on 64-bit builds
-
-Fixes problem:
-
-libs/locale/src/icu/formatter.cpp: In member function
-'virtual std::basic_string<_CharT, std::char_traits<_CharT>, std::allocator<_CharT> > boost::locale::impl_icu::number_format<CharType>::format(boost::int64_t, size_t&) const':
-libs/locale/src/icu/formatter.cpp:61: error: call of overloaded 'format(boost::int64_t&, icu_49::UnicodeString&)' is ambiguous
-/ec/include/unicode/numfmt.h:317: note: candidates are: icu_49::UnicodeString& icu_49::NumberFormat::format(double, icu_49::UnicodeString&) const
-/ec/include/unicode/numfmt.h:330: note:                 icu_49::UnicodeString& icu_49::NumberFormat::format(int32_t, icu_49::UnicodeString&) const
-/ec/include/unicode/numfmt.h:343: note:                 icu_49::UnicodeString& icu_49::NumberFormat::format(int64_t, icu_49::UnicodeString&) const
-
-Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
-Backported-from: https://svn.boost.org/trac/boost/ticket/6851
-
-
-diff -ruN boost_1_49_0.orig/libs/locale/src/icu/formatter.cpp boost_1_49_0/libs/locale/src/icu/formatter.cpp
---- boost_1_49_0.orig/libs/locale/src/icu/formatter.cpp 2011-07-12 14:57:36.000000000 +0100
-+++ boost_1_49_0/libs/locale/src/icu/formatter.cpp      2012-05-01 14:27:54.000000000 +0100
-@@ -58,7 +58,7 @@
-             virtual string_type format(int64_t value,size_t &code_points) const
-             {
-                 icu::UnicodeString tmp;
--                icu_fmt_->format(value,tmp);
-+                icu_fmt_->format(::int64_t(value),tmp);
-                 code_points=tmp.countChar32();
-                 return cvt_.std(tmp);
-             }
diff --git a/package/bridge-utils/0001-build-system.patch b/package/bridge-utils/0001-build-system.patch
new file mode 100644 (file)
index 0000000..f447377
--- /dev/null
@@ -0,0 +1,11 @@
+--- bridge-utils-0.9.6/libbridge/Makefile.in.dist      2004-03-01 20:55:52.000000000 -0600
++++ bridge-utils-0.9.6/libbridge/Makefile.in   2004-03-01 20:56:23.000000000 -0600
+@@ -5,7 +5,7 @@
+ RANLIB=@RANLIB@
+ CC=@CC@
+-CFLAGS = -Wall -g $(KERNEL_HEADERS)
++CFLAGS = -Wall -g @CFLAGS@ $(KERNEL_HEADERS)
+ prefix=@prefix@
+ exec_prefix=@exec_prefix@
diff --git a/package/bridge-utils/0002-fix-for-kernel-headers-3.8+.patch b/package/bridge-utils/0002-fix-for-kernel-headers-3.8+.patch
new file mode 100644 (file)
index 0000000..0455a90
--- /dev/null
@@ -0,0 +1,30 @@
+commit 5eebb7f9288b7881ffb929b1fd494fe3ac3be27d
+Author: Russell Senior <russell@personaltelco.net>
+Date:   Wed Mar 6 12:49:42 2013 -0800
+
+    bridge-utils: Fix compile against linux-3.8.x
+    
+    Linux 3.8 has a header, include/uapi/linux/if_bridge.h that uses a
+    struct in6_addr but doesn't define it.  The trivial seeming fix of
+    including the header that does define it causes more problems.  The
+    problem was discussed on mailing lists in January 2013.  The final
+    suggestion I found was here:
+    
+          http://www.redhat.com/archives/libvir-list/2013-January/msg01253.html
+    
+    This is intended to implement that suggestion.
+    
+    Signed-off-by: Russell Senior <russell@personaltelco.net>
+
+diff --git a/libbridge/libbridge.h b/libbridge/libbridge.h
+index 39964f2..dd14bae 100644
+--- a/libbridge/libbridge.h
++++ b/libbridge/libbridge.h
+@@ -20,6 +20,7 @@
+ #define _LIBBRIDGE_H
+ #include <sys/socket.h>
++#include <netinet/in.h>
+ #include <linux/if.h>
+ #include <linux/if_bridge.h>
diff --git a/package/bridge-utils/bridge-utils-000-build-system.patch b/package/bridge-utils/bridge-utils-000-build-system.patch
deleted file mode 100644 (file)
index f447377..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
---- bridge-utils-0.9.6/libbridge/Makefile.in.dist      2004-03-01 20:55:52.000000000 -0600
-+++ bridge-utils-0.9.6/libbridge/Makefile.in   2004-03-01 20:56:23.000000000 -0600
-@@ -5,7 +5,7 @@
- RANLIB=@RANLIB@
- CC=@CC@
--CFLAGS = -Wall -g $(KERNEL_HEADERS)
-+CFLAGS = -Wall -g @CFLAGS@ $(KERNEL_HEADERS)
- prefix=@prefix@
- exec_prefix=@exec_prefix@
diff --git a/package/bridge-utils/bridge-utils-001-fix-for-kernel-headers-3.8+.patch b/package/bridge-utils/bridge-utils-001-fix-for-kernel-headers-3.8+.patch
deleted file mode 100644 (file)
index 0455a90..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-commit 5eebb7f9288b7881ffb929b1fd494fe3ac3be27d
-Author: Russell Senior <russell@personaltelco.net>
-Date:   Wed Mar 6 12:49:42 2013 -0800
-
-    bridge-utils: Fix compile against linux-3.8.x
-    
-    Linux 3.8 has a header, include/uapi/linux/if_bridge.h that uses a
-    struct in6_addr but doesn't define it.  The trivial seeming fix of
-    including the header that does define it causes more problems.  The
-    problem was discussed on mailing lists in January 2013.  The final
-    suggestion I found was here:
-    
-          http://www.redhat.com/archives/libvir-list/2013-January/msg01253.html
-    
-    This is intended to implement that suggestion.
-    
-    Signed-off-by: Russell Senior <russell@personaltelco.net>
-
-diff --git a/libbridge/libbridge.h b/libbridge/libbridge.h
-index 39964f2..dd14bae 100644
---- a/libbridge/libbridge.h
-+++ b/libbridge/libbridge.h
-@@ -20,6 +20,7 @@
- #define _LIBBRIDGE_H
- #include <sys/socket.h>
-+#include <netinet/in.h>
- #include <linux/if.h>
- #include <linux/if_bridge.h>
diff --git a/package/bzip2/0001-build-objects-twice.patch b/package/bzip2/0001-build-objects-twice.patch
new file mode 100644 (file)
index 0000000..9bde0f6
--- /dev/null
@@ -0,0 +1,56 @@
+Build objects twice for shared and static libraries
+
+The existing Makefile causes problems on MIPS because the same object
+files (not compiled with -fPIC) are used in static and shared libraries.
+MIPS will refuce to link non-pic objects in shared libraries.
+We fix this problems by creating a new rule for the shared library
+and build the shared objects as *.sho instead of *.o.
+Then, we use these objects to create the shared library.
+
+Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
+
+Index: bzip2-1.0.6/Makefile-libbz2_so
+===================================================================
+--- bzip2-1.0.6.orig/Makefile-libbz2_so
++++ bzip2-1.0.6/Makefile-libbz2_so
+@@ -25,13 +25,13 @@ SHELL=/bin/sh
+ CC=gcc
+ override CFLAGS += -fpic -fPIC -Wall
+-OBJS= blocksort.o  \
+-      huffman.o    \
+-      crctable.o   \
+-      randtable.o  \
+-      compress.o   \
+-      decompress.o \
+-      bzlib.o
++OBJS= blocksort.sho  \
++      huffman.sho    \
++      crctable.sho   \
++      randtable.sho  \
++      compress.sho   \
++      decompress.sho \
++      bzlib.sho
+ all: $(OBJS)
+       $(CC) -shared -Wl,-soname -Wl,libbz2.so.1.0 -o libbz2.so.1.0.6 $(OBJS)
+@@ -45,17 +45,5 @@ install:
+ clean: 
+       rm -f $(OBJS) bzip2.o libbz2.so.1.0.6 libbz2.so.1.0 bzip2-shared
+-blocksort.o: blocksort.c
+-      $(CC) $(CFLAGS) -c blocksort.c
+-huffman.o: huffman.c
+-      $(CC) $(CFLAGS) -c huffman.c
+-crctable.o: crctable.c
+-      $(CC) $(CFLAGS) -c crctable.c
+-randtable.o: randtable.c
+-      $(CC) $(CFLAGS) -c randtable.c
+-compress.o: compress.c
+-      $(CC) $(CFLAGS) -c compress.c
+-decompress.o: decompress.c
+-      $(CC) $(CFLAGS) -c decompress.c
+-bzlib.o: bzlib.c
+-      $(CC) $(CFLAGS) -c bzlib.c
++%.sho: %.c
++      $(CC) $(CFLAGS) -o $@ -c $<
diff --git a/package/bzip2/0002-improve-build-system.patch b/package/bzip2/0002-improve-build-system.patch
new file mode 100644 (file)
index 0000000..90099aa
--- /dev/null
@@ -0,0 +1,84 @@
+Improve bzip2 build system
+
+This patch makes a number of improvements to the bzip2 build system:
+
+ * Remove the BIGFILE variable that was used to force largefile
+   support. Now, the user of the Makefile is supposed to pass
+   -D_FILE_OFFSET_BITS=64 when largefile support is desired.
+
+ * Use override CFLAGS += so that additional CFLAGS can be passed on
+   the command line.
+
+ * Removed "forced" CFLAGS -O2, -g and -Winline. We don't want them by
+   default, and want the build system to use its own ones.
+
+ * When creating the symbolic links bzegrep, bzfgrep, bzless and
+   bzcmp, don't link them to an absolute path, or they'll point to
+   some path on the build machine.
+
+ * Provide an install target for the shared library, which creates the
+   appropriate symbolic links.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/Makefile
+===================================================================
+--- a/Makefile
++++ b/Makefile
+@@ -20,8 +20,7 @@
+ RANLIB=ranlib
+ LDFLAGS=
+-BIGFILES=-D_FILE_OFFSET_BITS=64
+-CFLAGS=-Wall -Winline -O2 -g $(BIGFILES)
++override CFLAGS += -Wall
+ # Where you want it installed when you do 'make install'
+ PREFIX=/usr/local
+@@ -90,14 +89,14 @@
+       cp -f libbz2.a $(PREFIX)/lib
+       chmod a+r $(PREFIX)/lib/libbz2.a
+       cp -f bzgrep $(PREFIX)/bin/bzgrep
+-      ln -s -f $(PREFIX)/bin/bzgrep $(PREFIX)/bin/bzegrep
+-      ln -s -f $(PREFIX)/bin/bzgrep $(PREFIX)/bin/bzfgrep
++      ln -s -f bzgrep $(PREFIX)/bin/bzegrep
++      ln -s -f bzgrep $(PREFIX)/bin/bzfgrep
+       chmod a+x $(PREFIX)/bin/bzgrep
+       cp -f bzmore $(PREFIX)/bin/bzmore
+-      ln -s -f $(PREFIX)/bin/bzmore $(PREFIX)/bin/bzless
++      ln -s -f bzmore $(PREFIX)/bin/bzless
+       chmod a+x $(PREFIX)/bin/bzmore
+       cp -f bzdiff $(PREFIX)/bin/bzdiff
+-      ln -s -f $(PREFIX)/bin/bzdiff $(PREFIX)/bin/bzcmp
++      ln -s -f bzdiff $(PREFIX)/bin/bzcmp
+       chmod a+x $(PREFIX)/bin/bzdiff
+       cp -f bzgrep.1 bzmore.1 bzdiff.1 $(PREFIX)/man/man1
+       chmod a+r $(PREFIX)/man/man1/bzgrep.1
+Index: b/Makefile-libbz2_so
+===================================================================
+--- a/Makefile-libbz2_so
++++ b/Makefile-libbz2_so
+@@ -23,8 +23,7 @@
+ SHELL=/bin/sh
+ CC=gcc
+-BIGFILES=-D_FILE_OFFSET_BITS=64
+-CFLAGS=-fpic -fPIC -Wall -Winline -O2 -g $(BIGFILES)
++override CFLAGS += -fpic -fPIC -Wall
+ OBJS= blocksort.o  \
+       huffman.o    \
+@@ -37,8 +36,11 @@
+ all: $(OBJS)
+       $(CC) -shared -Wl,-soname -Wl,libbz2.so.1.0 -o libbz2.so.1.0.6 $(OBJS)
+       $(CC) $(CFLAGS) -o bzip2-shared bzip2.c libbz2.so.1.0.6
+-      rm -f libbz2.so.1.0
+-      ln -s libbz2.so.1.0.6 libbz2.so.1.0
++
++install:
++      install -m 0755 -D libbz2.so.1.0.6 $(PREFIX)/lib/libbz2.so.1.0.6
++      ln -sf libbz2.so.1.0.6 $(PREFIX)/lib/libbz2.so
++      ln -sf libbz2.so.1.0.6 $(PREFIX)/lib/libbz2.so.1.0
+ clean: 
+       rm -f $(OBJS) bzip2.o libbz2.so.1.0.6 libbz2.so.1.0 bzip2-shared
diff --git a/package/bzip2/bzip2-build-objects-twice.patch b/package/bzip2/bzip2-build-objects-twice.patch
deleted file mode 100644 (file)
index 9bde0f6..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-Build objects twice for shared and static libraries
-
-The existing Makefile causes problems on MIPS because the same object
-files (not compiled with -fPIC) are used in static and shared libraries.
-MIPS will refuce to link non-pic objects in shared libraries.
-We fix this problems by creating a new rule for the shared library
-and build the shared objects as *.sho instead of *.o.
-Then, we use these objects to create the shared library.
-
-Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
-
-Index: bzip2-1.0.6/Makefile-libbz2_so
-===================================================================
---- bzip2-1.0.6.orig/Makefile-libbz2_so
-+++ bzip2-1.0.6/Makefile-libbz2_so
-@@ -25,13 +25,13 @@ SHELL=/bin/sh
- CC=gcc
- override CFLAGS += -fpic -fPIC -Wall
--OBJS= blocksort.o  \
--      huffman.o    \
--      crctable.o   \
--      randtable.o  \
--      compress.o   \
--      decompress.o \
--      bzlib.o
-+OBJS= blocksort.sho  \
-+      huffman.sho    \
-+      crctable.sho   \
-+      randtable.sho  \
-+      compress.sho   \
-+      decompress.sho \
-+      bzlib.sho
- all: $(OBJS)
-       $(CC) -shared -Wl,-soname -Wl,libbz2.so.1.0 -o libbz2.so.1.0.6 $(OBJS)
-@@ -45,17 +45,5 @@ install:
- clean: 
-       rm -f $(OBJS) bzip2.o libbz2.so.1.0.6 libbz2.so.1.0 bzip2-shared
--blocksort.o: blocksort.c
--      $(CC) $(CFLAGS) -c blocksort.c
--huffman.o: huffman.c
--      $(CC) $(CFLAGS) -c huffman.c
--crctable.o: crctable.c
--      $(CC) $(CFLAGS) -c crctable.c
--randtable.o: randtable.c
--      $(CC) $(CFLAGS) -c randtable.c
--compress.o: compress.c
--      $(CC) $(CFLAGS) -c compress.c
--decompress.o: decompress.c
--      $(CC) $(CFLAGS) -c decompress.c
--bzlib.o: bzlib.c
--      $(CC) $(CFLAGS) -c bzlib.c
-+%.sho: %.c
-+      $(CC) $(CFLAGS) -o $@ -c $<
diff --git a/package/bzip2/bzip2-improve-build-system.patch b/package/bzip2/bzip2-improve-build-system.patch
deleted file mode 100644 (file)
index 90099aa..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-Improve bzip2 build system
-
-This patch makes a number of improvements to the bzip2 build system:
-
- * Remove the BIGFILE variable that was used to force largefile
-   support. Now, the user of the Makefile is supposed to pass
-   -D_FILE_OFFSET_BITS=64 when largefile support is desired.
-
- * Use override CFLAGS += so that additional CFLAGS can be passed on
-   the command line.
-
- * Removed "forced" CFLAGS -O2, -g and -Winline. We don't want them by
-   default, and want the build system to use its own ones.
-
- * When creating the symbolic links bzegrep, bzfgrep, bzless and
-   bzcmp, don't link them to an absolute path, or they'll point to
-   some path on the build machine.
-
- * Provide an install target for the shared library, which creates the
-   appropriate symbolic links.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/Makefile
-===================================================================
---- a/Makefile
-+++ b/Makefile
-@@ -20,8 +20,7 @@
- RANLIB=ranlib
- LDFLAGS=
--BIGFILES=-D_FILE_OFFSET_BITS=64
--CFLAGS=-Wall -Winline -O2 -g $(BIGFILES)
-+override CFLAGS += -Wall
- # Where you want it installed when you do 'make install'
- PREFIX=/usr/local
-@@ -90,14 +89,14 @@
-       cp -f libbz2.a $(PREFIX)/lib
-       chmod a+r $(PREFIX)/lib/libbz2.a
-       cp -f bzgrep $(PREFIX)/bin/bzgrep
--      ln -s -f $(PREFIX)/bin/bzgrep $(PREFIX)/bin/bzegrep
--      ln -s -f $(PREFIX)/bin/bzgrep $(PREFIX)/bin/bzfgrep
-+      ln -s -f bzgrep $(PREFIX)/bin/bzegrep
-+      ln -s -f bzgrep $(PREFIX)/bin/bzfgrep
-       chmod a+x $(PREFIX)/bin/bzgrep
-       cp -f bzmore $(PREFIX)/bin/bzmore
--      ln -s -f $(PREFIX)/bin/bzmore $(PREFIX)/bin/bzless
-+      ln -s -f bzmore $(PREFIX)/bin/bzless
-       chmod a+x $(PREFIX)/bin/bzmore
-       cp -f bzdiff $(PREFIX)/bin/bzdiff
--      ln -s -f $(PREFIX)/bin/bzdiff $(PREFIX)/bin/bzcmp
-+      ln -s -f bzdiff $(PREFIX)/bin/bzcmp
-       chmod a+x $(PREFIX)/bin/bzdiff
-       cp -f bzgrep.1 bzmore.1 bzdiff.1 $(PREFIX)/man/man1
-       chmod a+r $(PREFIX)/man/man1/bzgrep.1
-Index: b/Makefile-libbz2_so
-===================================================================
---- a/Makefile-libbz2_so
-+++ b/Makefile-libbz2_so
-@@ -23,8 +23,7 @@
- SHELL=/bin/sh
- CC=gcc
--BIGFILES=-D_FILE_OFFSET_BITS=64
--CFLAGS=-fpic -fPIC -Wall -Winline -O2 -g $(BIGFILES)
-+override CFLAGS += -fpic -fPIC -Wall
- OBJS= blocksort.o  \
-       huffman.o    \
-@@ -37,8 +36,11 @@
- all: $(OBJS)
-       $(CC) -shared -Wl,-soname -Wl,libbz2.so.1.0 -o libbz2.so.1.0.6 $(OBJS)
-       $(CC) $(CFLAGS) -o bzip2-shared bzip2.c libbz2.so.1.0.6
--      rm -f libbz2.so.1.0
--      ln -s libbz2.so.1.0.6 libbz2.so.1.0
-+
-+install:
-+      install -m 0755 -D libbz2.so.1.0.6 $(PREFIX)/lib/libbz2.so.1.0.6
-+      ln -sf libbz2.so.1.0.6 $(PREFIX)/lib/libbz2.so
-+      ln -sf libbz2.so.1.0.6 $(PREFIX)/lib/libbz2.so.1.0
- clean: 
-       rm -f $(OBJS) bzip2.o libbz2.so.1.0.6 libbz2.so.1.0 bzip2-shared
diff --git a/package/c-ares/0001-use_check_build_instead_of_check_user.patch b/package/c-ares/0001-use_check_build_instead_of_check_user.patch
new file mode 100644 (file)
index 0000000..8210ed6
--- /dev/null
@@ -0,0 +1,17 @@
+Use XC_CHECK_BUILD_FLAGS instead of XC_CHECK_USER_FLAGS.
+Otherwise it complains of CPPFLAGS in CFLAGS.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura c-ares-1.10.0.orig/m4/xc-cc-check.m4 c-ares-1.10.0/m4/xc-cc-check.m4
+--- c-ares-1.10.0.orig/m4/xc-cc-check.m4       2013-12-26 19:40:46.354195974 -0300
++++ c-ares-1.10.0/m4/xc-cc-check.m4    2013-12-26 19:41:01.850718535 -0300
+@@ -59,7 +59,7 @@
+ AC_DEFUN([_XC_PROG_CC], [
+   AC_REQUIRE([_XC_PROG_CC_PREAMBLE])dnl
+-  AC_REQUIRE([XC_CHECK_USER_FLAGS])dnl
++  AC_REQUIRE([XC_CHECK_BUILD_FLAGS])dnl
+   AC_REQUIRE([AC_PROG_INSTALL])dnl
+   AC_REQUIRE([AC_PROG_CC])dnl
+   AC_REQUIRE([AM_PROG_CC_C_O])dnl
diff --git a/package/c-ares/c-ares-01-use_check_build_instead_of_check_user.patch b/package/c-ares/c-ares-01-use_check_build_instead_of_check_user.patch
deleted file mode 100644 (file)
index 8210ed6..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-Use XC_CHECK_BUILD_FLAGS instead of XC_CHECK_USER_FLAGS.
-Otherwise it complains of CPPFLAGS in CFLAGS.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura c-ares-1.10.0.orig/m4/xc-cc-check.m4 c-ares-1.10.0/m4/xc-cc-check.m4
---- c-ares-1.10.0.orig/m4/xc-cc-check.m4       2013-12-26 19:40:46.354195974 -0300
-+++ c-ares-1.10.0/m4/xc-cc-check.m4    2013-12-26 19:41:01.850718535 -0300
-@@ -59,7 +59,7 @@
- AC_DEFUN([_XC_PROG_CC], [
-   AC_REQUIRE([_XC_PROG_CC_PREAMBLE])dnl
--  AC_REQUIRE([XC_CHECK_USER_FLAGS])dnl
-+  AC_REQUIRE([XC_CHECK_BUILD_FLAGS])dnl
-   AC_REQUIRE([AC_PROG_INSTALL])dnl
-   AC_REQUIRE([AC_PROG_CC])dnl
-   AC_REQUIRE([AM_PROG_CC_C_O])dnl
diff --git a/package/cache-calibrator/0001-Fix-conflicting-round-function.patch b/package/cache-calibrator/0001-Fix-conflicting-round-function.patch
new file mode 100644 (file)
index 0000000..71181a6
--- /dev/null
@@ -0,0 +1,108 @@
+From 39ac7268c4350040976005da98daf10edf676d3e Mon Sep 17 00:00:00 2001
+From: Stephan Hoffmann <sho@relinux.de>
+Date: Mon, 28 Jan 2013 17:32:10 +0100
+Subject: [PATCH] Fix conflicting round() function
+
+calibrator.c defines a local round() function that conflicts
+with the one from the standard library.
+
+This is fixed by renaming the local function.
+
+Signed-off-by: Stephan Hoffmann <sho@relinux.de>
+---
+ calibrator.c |   30 +++++++++++++++---------------
+ 1 files changed, 15 insertions(+), 15 deletions(-)
+
+diff --git a/calibrator.c b/calibrator.c
+index e045dfd..8471c04 100644
+--- a/calibrator.c
++++ b/calibrator.c
+@@ -128,7 +128,7 @@ void ErrXit(char *format, ...) {
+       exit(1);
+ }
+-lng round(dbl x)
++lng lng_round(dbl x)
+ {
+       return (lng)(x + 0.5);
+ }
+@@ -890,16 +890,16 @@ void plotCache(cacheInfo *cache, lng **result, lng MHz, char *fn, FILE *fp, lng
+       fprintf(fp, ")\n");
+       fprintf(fp, "set y2tics");
+       for (l = 0, s = " ("; l <= cache->levels; l++, s = ", ") {
+-              if (!delay)     fprintf(fp, "%s'(%ld)' %f", s, round(CYperIt(cache->latency1[l] - delay)), NSperIt(cache->latency1[l] - delay));
+-                      else    fprintf(fp, "%s'(%ld)' %f", s, round(CYperIt(cache->latency2[l] - delay)), NSperIt(cache->latency2[l] - delay));
++              if (!delay)     fprintf(fp, "%s'(%ld)' %f", s, lng_round(CYperIt(cache->latency1[l] - delay)), NSperIt(cache->latency1[l] - delay));
++                      else    fprintf(fp, "%s'(%ld)' %f", s, lng_round(CYperIt(cache->latency2[l] - delay)), NSperIt(cache->latency2[l] - delay));
+       }
+       for (y = 1; y <= yh; y *= 10) {
+               fprintf(fp, "%s'%1.3g' %ld", s, (dbl)(y * MHz) / 1000.0, y);
+       }
+       fprintf(fp, ")\n");
+       for (l = 0; l <= cache->levels; l++) {
+-              if (!delay)     z = (dbl)round(CYperIt(cache->latency1[l] - delay)) * 1000.0 / (dbl)MHz;
+-                      else    z = (dbl)round(CYperIt(cache->latency2[l] - delay)) * 1000.0 / (dbl)MHz;
++              if (!delay)     z = (dbl)lng_round(CYperIt(cache->latency1[l] - delay)) * 1000.0 / (dbl)MHz;
++                      else    z = (dbl)lng_round(CYperIt(cache->latency2[l] - delay)) * 1000.0 / (dbl)MHz;
+               fprintf(fp, "set label %ld '(%1.3g)  ' at %f,%f right\n", l + 1, z, xl, z);
+               fprintf(fp, "set arrow %ld from %f,%f to %f,%f nohead lt 0\n", l + 1, xl, z, xh, z);
+       }
+@@ -986,16 +986,16 @@ void plotTLB(TLBinfo *TLB, lng **result, lng MHz, char *fn, FILE *fp, lng delay)
+       fprintf(fp, "%s'<L1>' %ld)\n", s, TLB->mincachelines);
+       fprintf(fp, "set y2tics");
+       for (l = 0, s = " ("; l <= TLB->levels; l++, s = ", ") {
+-              if (!delay)     fprintf(fp, "%s'(%ld)' %f", s, round(CYperIt(TLB->latency1[l] - delay)), NSperIt(TLB->latency1[l] - delay));
+-                      else    fprintf(fp, "%s'(%ld)' %f", s, round(CYperIt(TLB->latency2[l] - delay)), NSperIt(TLB->latency2[l] - delay));
++              if (!delay)     fprintf(fp, "%s'(%ld)' %f", s, lng_round(CYperIt(TLB->latency1[l] - delay)), NSperIt(TLB->latency1[l] - delay));
++                      else    fprintf(fp, "%s'(%ld)' %f", s, lng_round(CYperIt(TLB->latency2[l] - delay)), NSperIt(TLB->latency2[l] - delay));
+       }
+       for (y = 1; y <= yh; y *= 10) {
+               fprintf(fp, "%s'%1.3g' %ld", s, (dbl)(y * MHz) / 1000.0, y);
+       }
+       fprintf(fp, ")\n");
+       for (l = 0; l <= TLB->levels; l++) {
+-              if (!delay)     z = (dbl)round(CYperIt(TLB->latency1[l] - delay)) * 1000.0 / (dbl)MHz;
+-                      else    z = (dbl)round(CYperIt(TLB->latency2[l] - delay)) * 1000.0 / (dbl)MHz;
++              if (!delay)     z = (dbl)lng_round(CYperIt(TLB->latency1[l] - delay)) * 1000.0 / (dbl)MHz;
++                      else    z = (dbl)lng_round(CYperIt(TLB->latency2[l] - delay)) * 1000.0 / (dbl)MHz;
+               fprintf(fp, "set label %ld '(%1.3g)  ' at %f,%f right\n", l + 1, z, xl, z);
+               fprintf(fp, "set arrow %ld from %f,%f to %f,%f nohead lt 0\n", l + 1, xl, z, xh, z);
+       }
+@@ -1023,9 +1023,9 @@ void printCPU(cacheInfo *cache, lng MHz, lng delay)
+       FILE    *fp = stdout;
+               
+       fprintf(fp, "CPU loop + L1 access:    ");
+-      fprintf(fp, " %6.2f ns = %3ld cy\n", NSperIt(cache->latency1[0]), round(CYperIt(cache->latency1[0])));
++      fprintf(fp, " %6.2f ns = %3ld cy\n", NSperIt(cache->latency1[0]), lng_round(CYperIt(cache->latency1[0])));
+       fprintf(fp, "             ( delay:    ");
+-      fprintf(fp, " %6.2f ns = %3ld cy )\n", NSperIt(delay),            round(CYperIt(delay)));
++      fprintf(fp, " %6.2f ns = %3ld cy )\n", NSperIt(delay),            lng_round(CYperIt(delay)));
+       fprintf(fp, "\n");
+       fflush(fp);
+ }
+@@ -1047,8 +1047,8 @@ void printCache(cacheInfo *cache, lng MHz)
+                       fprintf(fp, " %3ld KB ", cache->size[l] / 1024);
+               }
+               fprintf(fp, " %3ld bytes ", cache->linesize[l + 1]);
+-              fprintf(fp, " %6.2f ns = %3ld cy " , NSperIt(cache->latency2[l + 1] - cache->latency2[l]), round(CYperIt(cache->latency2[l + 1] - cache->latency2[l])));
+-              fprintf(fp, " %6.2f ns = %3ld cy\n", NSperIt(cache->latency1[l + 1] - cache->latency1[l]), round(CYperIt(cache->latency1[l + 1] - cache->latency1[l])));
++              fprintf(fp, " %6.2f ns = %3ld cy " , NSperIt(cache->latency2[l + 1] - cache->latency2[l]), lng_round(CYperIt(cache->latency2[l + 1] - cache->latency2[l])));
++              fprintf(fp, " %6.2f ns = %3ld cy\n", NSperIt(cache->latency1[l + 1] - cache->latency1[l]), lng_round(CYperIt(cache->latency1[l + 1] - cache->latency1[l])));
+       }
+       fprintf(fp, "\n");
+       fflush(fp);
+@@ -1075,9 +1075,9 @@ void printTLB(TLBinfo *TLB, lng MHz)
+               } else {
+                       fprintf(fp, "  %3ld KB  ", TLB->pagesize[l + 1] / 1024);
+               }
+-              fprintf(fp, " %6.2f ns = %3ld cy ", NSperIt(TLB->latency2[l + 1] - TLB->latency2[l]), round(CYperIt(TLB->latency2[l + 1] - TLB->latency2[l])));
++              fprintf(fp, " %6.2f ns = %3ld cy ", NSperIt(TLB->latency2[l + 1] - TLB->latency2[l]), lng_round(CYperIt(TLB->latency2[l + 1] - TLB->latency2[l])));
+ /*
+-              fprintf(fp, " %6.2f ns = %3ld cy" , NSperIt(TLB->latency1[l + 1] - TLB->latency1[l]), round(CYperIt(TLB->latency1[l + 1] - TLB->latency1[l])));
++              fprintf(fp, " %6.2f ns = %3ld cy" , NSperIt(TLB->latency1[l + 1] - TLB->latency1[l]), lng_round(CYperIt(TLB->latency1[l + 1] - TLB->latency1[l])));
+ */
+               fprintf(fp, "\n");
+       }
+-- 
+1.7.0.4
+
diff --git a/package/cache-calibrator/cache-calibrator-Fix-conflicting-round-function.patch b/package/cache-calibrator/cache-calibrator-Fix-conflicting-round-function.patch
deleted file mode 100644 (file)
index 71181a6..0000000
+++ /dev/null
@@ -1,108 +0,0 @@
-From 39ac7268c4350040976005da98daf10edf676d3e Mon Sep 17 00:00:00 2001
-From: Stephan Hoffmann <sho@relinux.de>
-Date: Mon, 28 Jan 2013 17:32:10 +0100
-Subject: [PATCH] Fix conflicting round() function
-
-calibrator.c defines a local round() function that conflicts
-with the one from the standard library.
-
-This is fixed by renaming the local function.
-
-Signed-off-by: Stephan Hoffmann <sho@relinux.de>
----
- calibrator.c |   30 +++++++++++++++---------------
- 1 files changed, 15 insertions(+), 15 deletions(-)
-
-diff --git a/calibrator.c b/calibrator.c
-index e045dfd..8471c04 100644
---- a/calibrator.c
-+++ b/calibrator.c
-@@ -128,7 +128,7 @@ void ErrXit(char *format, ...) {
-       exit(1);
- }
--lng round(dbl x)
-+lng lng_round(dbl x)
- {
-       return (lng)(x + 0.5);
- }
-@@ -890,16 +890,16 @@ void plotCache(cacheInfo *cache, lng **result, lng MHz, char *fn, FILE *fp, lng
-       fprintf(fp, ")\n");
-       fprintf(fp, "set y2tics");
-       for (l = 0, s = " ("; l <= cache->levels; l++, s = ", ") {
--              if (!delay)     fprintf(fp, "%s'(%ld)' %f", s, round(CYperIt(cache->latency1[l] - delay)), NSperIt(cache->latency1[l] - delay));
--                      else    fprintf(fp, "%s'(%ld)' %f", s, round(CYperIt(cache->latency2[l] - delay)), NSperIt(cache->latency2[l] - delay));
-+              if (!delay)     fprintf(fp, "%s'(%ld)' %f", s, lng_round(CYperIt(cache->latency1[l] - delay)), NSperIt(cache->latency1[l] - delay));
-+                      else    fprintf(fp, "%s'(%ld)' %f", s, lng_round(CYperIt(cache->latency2[l] - delay)), NSperIt(cache->latency2[l] - delay));
-       }
-       for (y = 1; y <= yh; y *= 10) {
-               fprintf(fp, "%s'%1.3g' %ld", s, (dbl)(y * MHz) / 1000.0, y);
-       }
-       fprintf(fp, ")\n");
-       for (l = 0; l <= cache->levels; l++) {
--              if (!delay)     z = (dbl)round(CYperIt(cache->latency1[l] - delay)) * 1000.0 / (dbl)MHz;
--                      else    z = (dbl)round(CYperIt(cache->latency2[l] - delay)) * 1000.0 / (dbl)MHz;
-+              if (!delay)     z = (dbl)lng_round(CYperIt(cache->latency1[l] - delay)) * 1000.0 / (dbl)MHz;
-+                      else    z = (dbl)lng_round(CYperIt(cache->latency2[l] - delay)) * 1000.0 / (dbl)MHz;
-               fprintf(fp, "set label %ld '(%1.3g)  ' at %f,%f right\n", l + 1, z, xl, z);
-               fprintf(fp, "set arrow %ld from %f,%f to %f,%f nohead lt 0\n", l + 1, xl, z, xh, z);
-       }
-@@ -986,16 +986,16 @@ void plotTLB(TLBinfo *TLB, lng **result, lng MHz, char *fn, FILE *fp, lng delay)
-       fprintf(fp, "%s'<L1>' %ld)\n", s, TLB->mincachelines);
-       fprintf(fp, "set y2tics");
-       for (l = 0, s = " ("; l <= TLB->levels; l++, s = ", ") {
--              if (!delay)     fprintf(fp, "%s'(%ld)' %f", s, round(CYperIt(TLB->latency1[l] - delay)), NSperIt(TLB->latency1[l] - delay));
--                      else    fprintf(fp, "%s'(%ld)' %f", s, round(CYperIt(TLB->latency2[l] - delay)), NSperIt(TLB->latency2[l] - delay));
-+              if (!delay)     fprintf(fp, "%s'(%ld)' %f", s, lng_round(CYperIt(TLB->latency1[l] - delay)), NSperIt(TLB->latency1[l] - delay));
-+                      else    fprintf(fp, "%s'(%ld)' %f", s, lng_round(CYperIt(TLB->latency2[l] - delay)), NSperIt(TLB->latency2[l] - delay));
-       }
-       for (y = 1; y <= yh; y *= 10) {
-               fprintf(fp, "%s'%1.3g' %ld", s, (dbl)(y * MHz) / 1000.0, y);
-       }
-       fprintf(fp, ")\n");
-       for (l = 0; l <= TLB->levels; l++) {
--              if (!delay)     z = (dbl)round(CYperIt(TLB->latency1[l] - delay)) * 1000.0 / (dbl)MHz;
--                      else    z = (dbl)round(CYperIt(TLB->latency2[l] - delay)) * 1000.0 / (dbl)MHz;
-+              if (!delay)     z = (dbl)lng_round(CYperIt(TLB->latency1[l] - delay)) * 1000.0 / (dbl)MHz;
-+                      else    z = (dbl)lng_round(CYperIt(TLB->latency2[l] - delay)) * 1000.0 / (dbl)MHz;
-               fprintf(fp, "set label %ld '(%1.3g)  ' at %f,%f right\n", l + 1, z, xl, z);
-               fprintf(fp, "set arrow %ld from %f,%f to %f,%f nohead lt 0\n", l + 1, xl, z, xh, z);
-       }
-@@ -1023,9 +1023,9 @@ void printCPU(cacheInfo *cache, lng MHz, lng delay)
-       FILE    *fp = stdout;
-               
-       fprintf(fp, "CPU loop + L1 access:    ");
--      fprintf(fp, " %6.2f ns = %3ld cy\n", NSperIt(cache->latency1[0]), round(CYperIt(cache->latency1[0])));
-+      fprintf(fp, " %6.2f ns = %3ld cy\n", NSperIt(cache->latency1[0]), lng_round(CYperIt(cache->latency1[0])));
-       fprintf(fp, "             ( delay:    ");
--      fprintf(fp, " %6.2f ns = %3ld cy )\n", NSperIt(delay),            round(CYperIt(delay)));
-+      fprintf(fp, " %6.2f ns = %3ld cy )\n", NSperIt(delay),            lng_round(CYperIt(delay)));
-       fprintf(fp, "\n");
-       fflush(fp);
- }
-@@ -1047,8 +1047,8 @@ void printCache(cacheInfo *cache, lng MHz)
-                       fprintf(fp, " %3ld KB ", cache->size[l] / 1024);
-               }
-               fprintf(fp, " %3ld bytes ", cache->linesize[l + 1]);
--              fprintf(fp, " %6.2f ns = %3ld cy " , NSperIt(cache->latency2[l + 1] - cache->latency2[l]), round(CYperIt(cache->latency2[l + 1] - cache->latency2[l])));
--              fprintf(fp, " %6.2f ns = %3ld cy\n", NSperIt(cache->latency1[l + 1] - cache->latency1[l]), round(CYperIt(cache->latency1[l + 1] - cache->latency1[l])));
-+              fprintf(fp, " %6.2f ns = %3ld cy " , NSperIt(cache->latency2[l + 1] - cache->latency2[l]), lng_round(CYperIt(cache->latency2[l + 1] - cache->latency2[l])));
-+              fprintf(fp, " %6.2f ns = %3ld cy\n", NSperIt(cache->latency1[l + 1] - cache->latency1[l]), lng_round(CYperIt(cache->latency1[l + 1] - cache->latency1[l])));
-       }
-       fprintf(fp, "\n");
-       fflush(fp);
-@@ -1075,9 +1075,9 @@ void printTLB(TLBinfo *TLB, lng MHz)
-               } else {
-                       fprintf(fp, "  %3ld KB  ", TLB->pagesize[l + 1] / 1024);
-               }
--              fprintf(fp, " %6.2f ns = %3ld cy ", NSperIt(TLB->latency2[l + 1] - TLB->latency2[l]), round(CYperIt(TLB->latency2[l + 1] - TLB->latency2[l])));
-+              fprintf(fp, " %6.2f ns = %3ld cy ", NSperIt(TLB->latency2[l + 1] - TLB->latency2[l]), lng_round(CYperIt(TLB->latency2[l + 1] - TLB->latency2[l])));
- /*
--              fprintf(fp, " %6.2f ns = %3ld cy" , NSperIt(TLB->latency1[l + 1] - TLB->latency1[l]), round(CYperIt(TLB->latency1[l + 1] - TLB->latency1[l])));
-+              fprintf(fp, " %6.2f ns = %3ld cy" , NSperIt(TLB->latency1[l + 1] - TLB->latency1[l]), lng_round(CYperIt(TLB->latency1[l + 1] - TLB->latency1[l])));
- */
-               fprintf(fp, "\n");
-       }
--- 
-1.7.0.4
-
diff --git a/package/cairo/0001-blackfin-build-fix.patch b/package/cairo/0001-blackfin-build-fix.patch
new file mode 100644 (file)
index 0000000..0e8dd3a
--- /dev/null
@@ -0,0 +1,55 @@
+Fix build on platforms where __USER_LABEL_PREFIX__ is not empty
+
+On most platforms, a C language symbol and its assembly equivalent are
+identical. However, on the Blackfin architecture, this isn't the case,
+the corresponding C language symbol in assembly is prepended with a
+"_". Blackfin therefore has __USER_LABEL_PREFIX__ defined to "_".
+
+Cairo already has some code to cope with __USER_LABEL_PREFIX__, but
+this code isn't completely correct: it prepends both assembly symbols
+and C symbols with __USER_LABEL_PREFIX__, which cannot work.
+
+This patch fixes that by using the existing slim_hidden_asmname() to
+define assembly symbols, and introduce a new slim_hidden_realname()
+for C symbols.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/src/cairo-compiler-private.h
+===================================================================
+--- a/src/cairo-compiler-private.h
++++ b/src/cairo-compiler-private.h
+@@ -93,12 +93,13 @@
+       __asm__ (slim_hidden_asmname (internal))
+ # define slim_hidden_def1(name, internal)                             \
+   extern __typeof (name) EXT_##name __asm__(slim_hidden_asmname(name))        \
+-      __attribute__((__alias__(slim_hidden_asmname(internal))))
++      __attribute__((__alias__(slim_hidden_realname(internal))))
+ # define slim_hidden_ulp              slim_hidden_ulp1(__USER_LABEL_PREFIX__)
+ # define slim_hidden_ulp1(x)          slim_hidden_ulp2(x)
+ # define slim_hidden_ulp2(x)          #x
+ # define slim_hidden_asmname(name)    slim_hidden_asmname1(name)
+ # define slim_hidden_asmname1(name)   slim_hidden_ulp #name
++# define slim_hidden_realname(name)     #name
+ #else
+ # define slim_hidden_proto(name)              int _cairo_dummy_prototype(void)
+ # define slim_hidden_proto_no_warn(name)      int _cairo_dummy_prototype(void)
+Index: b/util/cairo-script/cairo-script-private.h
+===================================================================
+--- a/util/cairo-script/cairo-script-private.h
++++ b/util/cairo-script/cairo-script-private.h
+@@ -109,12 +109,13 @@
+       __asm__ (slim_hidden_asmname (internal))
+ # define slim_hidden_def1(name, internal)                             \
+   extern __typeof (name) EXT_##name __asm__(slim_hidden_asmname(name))        \
+-      __attribute__((__alias__(slim_hidden_asmname(internal))))
++      __attribute__((__alias__(slim_hidden_realname(internal))))
+ # define slim_hidden_ulp              slim_hidden_ulp1(__USER_LABEL_PREFIX__)
+ # define slim_hidden_ulp1(x)          slim_hidden_ulp2(x)
+ # define slim_hidden_ulp2(x)          #x
+ # define slim_hidden_asmname(name)    slim_hidden_asmname1(name)
+ # define slim_hidden_asmname1(name)   slim_hidden_ulp #name
++# define slim_hidden_realname(name)     #name
+ #else
+ # define slim_hidden_proto(name)              int _csi_dummy_prototype(void)
+ # define slim_hidden_proto_no_warn(name)      int _csi_dummy_prototype(void)
diff --git a/package/cairo/0002-openvg-build-fix.patch b/package/cairo/0002-openvg-build-fix.patch
new file mode 100644 (file)
index 0000000..6614934
--- /dev/null
@@ -0,0 +1,28 @@
+Fix build of OpenVG backend on platforms without X11
+
+https://bugs.freedesktop.org/show_bug.cgi?id=72911
+
+Signed-off-by: Paul Cercueil <paul@crapouillou.net>
+
+Index: b/boilerplate/cairo-boilerplate-vg.c
+===================================================================
+--- a/boilerplate/cairo-boilerplate-vg.c
++++ b/boilerplate/cairo-boilerplate-vg.c
+@@ -215,7 +215,7 @@ _cairo_boilerplate_vg_create_surface_egl (const char                   *name,
+       EGL_ALPHA_SIZE, 8,
+       EGL_SURFACE_TYPE, EGL_PBUFFER_BIT,
+       EGL_RENDERABLE_TYPE, EGL_OPENVG_BIT,
+-      None
++      EGL_NONE
+     };
+     int rgb_attribs[] = {
+       EGL_RED_SIZE, 8,
+@@ -225,7 +225,7 @@ _cairo_boilerplate_vg_create_surface_egl (const char                   *name,
+       EGL_VG_ALPHA_FORMAT, EGL_VG_ALPHA_FORMAT_PRE_BIT,
+       EGL_SURFACE_TYPE, EGL_PBUFFER_BIT,
+       EGL_RENDERABLE_TYPE, EGL_OPENVG_BIT,
+-      None
++      EGL_NONE
+     };
+     int dummy_attribs[] = {
+       EGL_WIDTH, 8, EGL_HEIGHT, 8,
diff --git a/package/cairo/0003-fix-nofork-build.patch b/package/cairo/0003-fix-nofork-build.patch
new file mode 100644 (file)
index 0000000..702e991
--- /dev/null
@@ -0,0 +1,29 @@
+test: fix build when SHOULD_FORK is false
+
+The code in test/cairo-test-runner.c properly takes into account
+platforms that do have fork() support, and uses the SHOULD_FORK define
+to know whether fork is available or not.
+
+However, this SHOULD_FORK macro is used to guard the inclusion of
+<unistd.h>, which is needed to get the prototype of other functions
+(namely readlink and getppid), that are used in portions of this file
+not guarded by SHOULD_FORK.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/test/cairo-test-runner.c
+===================================================================
+--- a/test/cairo-test-runner.c
++++ b/test/cairo-test-runner.c
+@@ -36,10 +36,10 @@
+ #include <pixman.h> /* for version information */
+ #define SHOULD_FORK HAVE_FORK && HAVE_WAITPID
+-#if SHOULD_FORK
+ #if HAVE_UNISTD_H
+ #include <unistd.h>
+ #endif
++#if SHOULD_FORK
+ #if HAVE_SIGNAL_H
+ #include <signal.h>
+ #endif
diff --git a/package/cairo/0004-fix-nofork-any2ppm.patch b/package/cairo/0004-fix-nofork-any2ppm.patch
new file mode 100644 (file)
index 0000000..16cc2e0
--- /dev/null
@@ -0,0 +1,23 @@
+test: fix build of any2ppm if fork is not available.
+
+The test program any2ppm can run as daemon. This feature can be disabled at
+compile time, if the required headers are not present. However the support for
+fork() is not checked.
+
+This patch fixes this issue.
+
+Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
+
+Index: cairo-1.12.10/test/any2ppm.c
+===================================================================
+--- cairo-1.12.10.orig/test/any2ppm.c  2012-04-19 14:17:34.000000000 +0200
++++ cairo-1.12.10/test/any2ppm.c       2014-04-25 11:13:30.000000000 +0200
+@@ -79,7 +79,7 @@
+ #include <errno.h>
+-#if HAVE_UNISTD_H && HAVE_FCNTL_H && HAVE_SIGNAL_H && HAVE_SYS_STAT_H && HAVE_SYS_SOCKET_H && HAVE_SYS_POLL_H && HAVE_SYS_UN_H
++#if HAVE_UNISTD_H && HAVE_FCNTL_H && HAVE_SIGNAL_H && HAVE_SYS_STAT_H && HAVE_SYS_SOCKET_H && HAVE_SYS_POLL_H && HAVE_SYS_UN_H && HAVE_FORK
+ #include <fcntl.h>
+ #include <signal.h>
+ #include <sys/stat.h>
diff --git a/package/cairo/0005-fix-gcc-49-build.patch b/package/cairo/0005-fix-gcc-49-build.patch
new file mode 100644 (file)
index 0000000..112c9ea
--- /dev/null
@@ -0,0 +1,38 @@
+Fix build with gcc 4.9
+
+cairo fails to build with gcc 4.9 due to a bad interaction of cairo
+modules with the LTO mechanism. The suggested workaround is to pass
+-ffat-lto-objects. See
+https://bugs.freedesktop.org/show_bug.cgi?id=77060 for the upstream
+bug report, and
+https://bugs.archlinux.org/task/40313?project=1&openedfrom=-1+week for
+the ArchLinux bug report.
+
+This patch passes -ffat-lto-objects when gcc understands this option,
+in order to provide compatibility with gcc versions older than 4.8,
+which did not provide this option, but are anyway unaffected by the
+issue.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/configure.ac
+===================================================================
+--- a/configure.ac
++++ b/configure.ac
+@@ -37,6 +37,16 @@
+ m4_include(build/configure.ac.pthread)  dnl checks for pthreads
+ AC_CACHE_SAVE
++old_cflags=$CFLAGS
++CFLAGS=-ffat-lto-objects
++AC_MSG_CHECKING([whether CC supports -ffat-lto-objects])
++AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])],
++    [AC_MSG_RESULT([yes])]
++    [LTO_CFLAGS=-ffat-lto-objects],
++    [AC_MSG_RESULT([no])]
++)
++CFLAGS="${old_CFLAGS} ${LTO_CFLAGS}"
++
+ dnl ===========================================================================
+ AC_CHECK_LIB(z, compress,
diff --git a/package/cairo/cairo-001-blackfin-build-fix.patch b/package/cairo/cairo-001-blackfin-build-fix.patch
deleted file mode 100644 (file)
index 0e8dd3a..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-Fix build on platforms where __USER_LABEL_PREFIX__ is not empty
-
-On most platforms, a C language symbol and its assembly equivalent are
-identical. However, on the Blackfin architecture, this isn't the case,
-the corresponding C language symbol in assembly is prepended with a
-"_". Blackfin therefore has __USER_LABEL_PREFIX__ defined to "_".
-
-Cairo already has some code to cope with __USER_LABEL_PREFIX__, but
-this code isn't completely correct: it prepends both assembly symbols
-and C symbols with __USER_LABEL_PREFIX__, which cannot work.
-
-This patch fixes that by using the existing slim_hidden_asmname() to
-define assembly symbols, and introduce a new slim_hidden_realname()
-for C symbols.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/src/cairo-compiler-private.h
-===================================================================
---- a/src/cairo-compiler-private.h
-+++ b/src/cairo-compiler-private.h
-@@ -93,12 +93,13 @@
-       __asm__ (slim_hidden_asmname (internal))
- # define slim_hidden_def1(name, internal)                             \
-   extern __typeof (name) EXT_##name __asm__(slim_hidden_asmname(name))        \
--      __attribute__((__alias__(slim_hidden_asmname(internal))))
-+      __attribute__((__alias__(slim_hidden_realname(internal))))
- # define slim_hidden_ulp              slim_hidden_ulp1(__USER_LABEL_PREFIX__)
- # define slim_hidden_ulp1(x)          slim_hidden_ulp2(x)
- # define slim_hidden_ulp2(x)          #x
- # define slim_hidden_asmname(name)    slim_hidden_asmname1(name)
- # define slim_hidden_asmname1(name)   slim_hidden_ulp #name
-+# define slim_hidden_realname(name)     #name
- #else
- # define slim_hidden_proto(name)              int _cairo_dummy_prototype(void)
- # define slim_hidden_proto_no_warn(name)      int _cairo_dummy_prototype(void)
-Index: b/util/cairo-script/cairo-script-private.h
-===================================================================
---- a/util/cairo-script/cairo-script-private.h
-+++ b/util/cairo-script/cairo-script-private.h
-@@ -109,12 +109,13 @@
-       __asm__ (slim_hidden_asmname (internal))
- # define slim_hidden_def1(name, internal)                             \
-   extern __typeof (name) EXT_##name __asm__(slim_hidden_asmname(name))        \
--      __attribute__((__alias__(slim_hidden_asmname(internal))))
-+      __attribute__((__alias__(slim_hidden_realname(internal))))
- # define slim_hidden_ulp              slim_hidden_ulp1(__USER_LABEL_PREFIX__)
- # define slim_hidden_ulp1(x)          slim_hidden_ulp2(x)
- # define slim_hidden_ulp2(x)          #x
- # define slim_hidden_asmname(name)    slim_hidden_asmname1(name)
- # define slim_hidden_asmname1(name)   slim_hidden_ulp #name
-+# define slim_hidden_realname(name)     #name
- #else
- # define slim_hidden_proto(name)              int _csi_dummy_prototype(void)
- # define slim_hidden_proto_no_warn(name)      int _csi_dummy_prototype(void)
diff --git a/package/cairo/cairo-002-openvg-build-fix.patch b/package/cairo/cairo-002-openvg-build-fix.patch
deleted file mode 100644 (file)
index 6614934..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-Fix build of OpenVG backend on platforms without X11
-
-https://bugs.freedesktop.org/show_bug.cgi?id=72911
-
-Signed-off-by: Paul Cercueil <paul@crapouillou.net>
-
-Index: b/boilerplate/cairo-boilerplate-vg.c
-===================================================================
---- a/boilerplate/cairo-boilerplate-vg.c
-+++ b/boilerplate/cairo-boilerplate-vg.c
-@@ -215,7 +215,7 @@ _cairo_boilerplate_vg_create_surface_egl (const char                   *name,
-       EGL_ALPHA_SIZE, 8,
-       EGL_SURFACE_TYPE, EGL_PBUFFER_BIT,
-       EGL_RENDERABLE_TYPE, EGL_OPENVG_BIT,
--      None
-+      EGL_NONE
-     };
-     int rgb_attribs[] = {
-       EGL_RED_SIZE, 8,
-@@ -225,7 +225,7 @@ _cairo_boilerplate_vg_create_surface_egl (const char                   *name,
-       EGL_VG_ALPHA_FORMAT, EGL_VG_ALPHA_FORMAT_PRE_BIT,
-       EGL_SURFACE_TYPE, EGL_PBUFFER_BIT,
-       EGL_RENDERABLE_TYPE, EGL_OPENVG_BIT,
--      None
-+      EGL_NONE
-     };
-     int dummy_attribs[] = {
-       EGL_WIDTH, 8, EGL_HEIGHT, 8,
diff --git a/package/cairo/cairo-003-fix-nofork-build.patch b/package/cairo/cairo-003-fix-nofork-build.patch
deleted file mode 100644 (file)
index 702e991..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-test: fix build when SHOULD_FORK is false
-
-The code in test/cairo-test-runner.c properly takes into account
-platforms that do have fork() support, and uses the SHOULD_FORK define
-to know whether fork is available or not.
-
-However, this SHOULD_FORK macro is used to guard the inclusion of
-<unistd.h>, which is needed to get the prototype of other functions
-(namely readlink and getppid), that are used in portions of this file
-not guarded by SHOULD_FORK.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/test/cairo-test-runner.c
-===================================================================
---- a/test/cairo-test-runner.c
-+++ b/test/cairo-test-runner.c
-@@ -36,10 +36,10 @@
- #include <pixman.h> /* for version information */
- #define SHOULD_FORK HAVE_FORK && HAVE_WAITPID
--#if SHOULD_FORK
- #if HAVE_UNISTD_H
- #include <unistd.h>
- #endif
-+#if SHOULD_FORK
- #if HAVE_SIGNAL_H
- #include <signal.h>
- #endif
diff --git a/package/cairo/cairo-004-fix-nofork-any2ppm.patch b/package/cairo/cairo-004-fix-nofork-any2ppm.patch
deleted file mode 100644 (file)
index 16cc2e0..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-test: fix build of any2ppm if fork is not available.
-
-The test program any2ppm can run as daemon. This feature can be disabled at
-compile time, if the required headers are not present. However the support for
-fork() is not checked.
-
-This patch fixes this issue.
-
-Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
-
-Index: cairo-1.12.10/test/any2ppm.c
-===================================================================
---- cairo-1.12.10.orig/test/any2ppm.c  2012-04-19 14:17:34.000000000 +0200
-+++ cairo-1.12.10/test/any2ppm.c       2014-04-25 11:13:30.000000000 +0200
-@@ -79,7 +79,7 @@
- #include <errno.h>
--#if HAVE_UNISTD_H && HAVE_FCNTL_H && HAVE_SIGNAL_H && HAVE_SYS_STAT_H && HAVE_SYS_SOCKET_H && HAVE_SYS_POLL_H && HAVE_SYS_UN_H
-+#if HAVE_UNISTD_H && HAVE_FCNTL_H && HAVE_SIGNAL_H && HAVE_SYS_STAT_H && HAVE_SYS_SOCKET_H && HAVE_SYS_POLL_H && HAVE_SYS_UN_H && HAVE_FORK
- #include <fcntl.h>
- #include <signal.h>
- #include <sys/stat.h>
diff --git a/package/cairo/cairo-005-fix-gcc-49-build.patch b/package/cairo/cairo-005-fix-gcc-49-build.patch
deleted file mode 100644 (file)
index 112c9ea..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-Fix build with gcc 4.9
-
-cairo fails to build with gcc 4.9 due to a bad interaction of cairo
-modules with the LTO mechanism. The suggested workaround is to pass
--ffat-lto-objects. See
-https://bugs.freedesktop.org/show_bug.cgi?id=77060 for the upstream
-bug report, and
-https://bugs.archlinux.org/task/40313?project=1&openedfrom=-1+week for
-the ArchLinux bug report.
-
-This patch passes -ffat-lto-objects when gcc understands this option,
-in order to provide compatibility with gcc versions older than 4.8,
-which did not provide this option, but are anyway unaffected by the
-issue.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/configure.ac
-===================================================================
---- a/configure.ac
-+++ b/configure.ac
-@@ -37,6 +37,16 @@
- m4_include(build/configure.ac.pthread)  dnl checks for pthreads
- AC_CACHE_SAVE
-+old_cflags=$CFLAGS
-+CFLAGS=-ffat-lto-objects
-+AC_MSG_CHECKING([whether CC supports -ffat-lto-objects])
-+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])],
-+    [AC_MSG_RESULT([yes])]
-+    [LTO_CFLAGS=-ffat-lto-objects],
-+    [AC_MSG_RESULT([no])]
-+)
-+CFLAGS="${old_CFLAGS} ${LTO_CFLAGS}"
-+
- dnl ===========================================================================
- AC_CHECK_LIB(z, compress,
diff --git a/package/canfestival/0001-install-pkgconfig-module-for-canfestival.patch b/package/canfestival/0001-install-pkgconfig-module-for-canfestival.patch
new file mode 100644 (file)
index 0000000..23f3d89
--- /dev/null
@@ -0,0 +1,74 @@
+From s.martin49@gmail.com Sun Sep 28 14:59:53 2014
+Content-Type: text/plain; charset="us-ascii"
+MIME-Version: 1.0
+Content-Transfer-Encoding: 7bit
+Subject: [PATCH] Install pkgconfig module for canfestival
+X-Mercurial-Node: c408fdc77aa18fcda81db4f0d038e8a69ba84bb2
+X-Mercurial-Series-Index: 1
+X-Mercurial-Series-Total: 1
+Message-Id: <c408fdc77aa18fcda81d.1411909193@bobook>
+X-Mercurial-Series-Id: <c408fdc77aa18fcda81d.1411909193@bobook>
+User-Agent: Mercurial-patchbomb/3.1.1
+Date: Sun, 28 Sep 2014 14:59:53 +0200
+From: Samuel Martin <s.martin49@gmail.com>
+To: canfestival-devel@lists.sourceforge.net
+Cc: Samuel Martin <s.martin49@gmail.com>
+
+# HG changeset patch
+# User "Samuel Martin" <s.martin49@gmail.com>
+# Date 1411906817 -7200
+#      Sun Sep 28 14:20:17 2014 +0200
+# Node ID c408fdc77aa18fcda81db4f0d038e8a69ba84bb2
+# Parent  7740ac6fdedc23e1ed6908d3d7db54833c88572b
+Install pkgconfig module for canfestival.
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+Cc: Cluadio Laurita <claudio.laurita@integrazionetotale.it>
+
+diff -r 7740ac6fdedc -r c408fdc77aa1 canfestival.pc.in
+--- /dev/null  Thu Jan 01 00:00:00 1970 +0000
++++ b/canfestival.pc.in        Sun Sep 28 14:20:17 2014 +0200
+@@ -0,0 +1,12 @@
++PREFIX = SUB_PREFIX
++TARGET = SUB_TARGET
++
++prefix=${PREFIX}
++libdir=${prefix}/lib
++includedir=${prefix}/include/canfestival
++
++Name: Canfestival
++Description: Canfestival CANOpen library
++Version: 1
++Libs: -L${libdir} -lcanfestival -lcanfestival_${TARGET} -lrt -ldl -lpthread
++Cflags: -I${includedir}
+diff -r 7740ac6fdedc -r c408fdc77aa1 configure
+--- a/configure        Thu Jun 12 14:07:16 2014 +0200
++++ b/configure        Sun Sep 28 14:20:17 2014 +0200
+@@ -813,6 +813,10 @@
+     MAKEFILES=$MAKEFILES\ drivers/$SUB_TARGET/Makefile.in
+ fi
++if [ "$SUB_TARGET" = "unix" ]; then
++    MAKEFILES=$MAKEFILES\ canfestival.pc.in
++fi
++
+ if [ "$SUB_TARGET" = "unix" -a "$SUB_TIMERS_DRIVER" = "kernel" ]; then
+       MAKEFILES=$MAKEFILES\
+ \     examples/kerneltest/Makefile.in\
+diff -r 7740ac6fdedc -r c408fdc77aa1 src/Makefile.in
+--- a/src/Makefile.in  Thu Jun 12 14:07:16 2014 +0200
++++ b/src/Makefile.in  Sun Sep 28 14:20:17 2014 +0200
+@@ -132,9 +132,10 @@
+       $(CC) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ -c $<
+ install: libcanfestival.a
+-      mkdir -p $(DESTDIR)$(PREFIX)/lib/
++      mkdir -p $(DESTDIR)$(PREFIX)/lib/pkgconfig
+       mkdir -p $(DESTDIR)$(PREFIX)/include/canfestival
+       cp libcanfestival.a $(DESTDIR)$(PREFIX)/lib/
++      cp ../canfestival.pc $(DESTDIR)$(PREFIX)/lib/pkgconfig/
+       cp ../include/*.h $(DESTDIR)$(PREFIX)/include/canfestival
+ uninstall:
+
+
diff --git a/package/canfestival/0002-allow-to-set-python-interpreter.patch b/package/canfestival/0002-allow-to-set-python-interpreter.patch
new file mode 100644 (file)
index 0000000..bb60316
--- /dev/null
@@ -0,0 +1,176 @@
+From s.martin49@gmail.com Fri Oct 10 23:43:32 2014
+Content-Type: text/plain; charset="us-ascii"
+MIME-Version: 1.0
+Content-Transfer-Encoding: 7bit
+Subject: [PATCH] allow to set python interpreter
+X-Mercurial-Node: 4805f636c2317d989a5f704ba691369f41be6595
+X-Mercurial-Series-Index: 1
+X-Mercurial-Series-Total: 1
+Message-Id: <4805f636c2317d989a5f.1412977412@bobook>
+X-Mercurial-Series-Id: <4805f636c2317d989a5f.1412977412@bobook>
+User-Agent: Mercurial-patchbomb/3.1.2
+Date: Fri, 10 Oct 2014 23:43:32 +0200
+From: Samuel Martin <s.martin49@gmail.com>
+To: canfestival-devel@lists.sourceforge.net
+Cc: Samuel Martin <s.martin49@gmail.com>
+
+# HG changeset patch
+# User "Samuel Martin" <s.martin49@gmail.com>
+# Date 1412977082 -7200
+#      Fri Oct 10 23:38:02 2014 +0200
+# Node ID 4805f636c2317d989a5f704ba691369f41be6595
+# Parent  c408fdc77aa18fcda81db4f0d038e8a69ba84bb2
+allow to set python interpreter
+
+Canfestival python modules and scripts are not python3 compliant.
+
+Allow to pass the python interperter to be used to make.
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+
+diff --git a/Makefile.in b/Makefile.in
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -21,6 +21,9 @@
+ # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ # 
++PYTHON ?= python
++export PYTHON
++
+ all: objdictedit canfestival examples
+ examples: canfestival driver
+diff --git a/doc/manual/en/manual.tex b/doc/manual/en/manual.tex
+--- a/doc/manual/en/manual.tex
++++ b/doc/manual/en/manual.tex
+@@ -1134,6 +1134,7 @@
+       python objdictedit.py [od files...]
+ \end{verbatim}
++Note that Gnosis modules only run with python2 as interpreter.
+ \subsubsection{Installation and usage on Windows}
+diff --git a/examples/CANOpenShell/Makefile.in b/examples/CANOpenShell/Makefile.in
+--- a/examples/CANOpenShell/Makefile.in
++++ b/examples/CANOpenShell/Makefile.in
+@@ -69,11 +69,11 @@
+       
+ CANOpenShellMasterOD.c: CANOpenShellMasterOD.od
+       $(MAKE) -C ../../objdictgen gnosis
+-      python ../../objdictgen/objdictgen.py CANOpenShellMasterOD.od CANOpenShellMasterOD.c
++      $(PYTHON) ../../objdictgen/objdictgen.py CANOpenShellMasterOD.od CANOpenShellMasterOD.c
+ CANOpenShellSlaveOD.c: CANOpenShellSlaveOD.od
+       $(MAKE) -C ../../objdictgen gnosis
+-      python ../../objdictgen/objdictgen.py CANOpenShellSlaveOD.od CANOpenShellSlaveOD.c
++      $(PYTHON) ../../objdictgen/objdictgen.py CANOpenShellSlaveOD.od CANOpenShellSlaveOD.c
+ %.o: %.c
+       $(CC) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ -c $<
+diff --git a/examples/DS401_Master/Makefile.in b/examples/DS401_Master/Makefile.in
+--- a/examples/DS401_Master/Makefile.in
++++ b/examples/DS401_Master/Makefile.in
+@@ -53,7 +53,7 @@
+       
+ TestMaster.c: TestMaster.od
+       $(MAKE) -C ../../objdictgen gnosis
+-      python ../../objdictgen/objdictgen.py TestMaster.od TestMaster.c
++      $(PYTHON) ../../objdictgen/objdictgen.py TestMaster.od TestMaster.c
+ %.o: %.c
+       $(CC) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ -c $<
+diff --git a/examples/DS401_Slave_Gui/Makefile.in b/examples/DS401_Slave_Gui/Makefile.in
+--- a/examples/DS401_Slave_Gui/Makefile.in
++++ b/examples/DS401_Slave_Gui/Makefile.in
+@@ -59,7 +59,7 @@
+ ObjDict.c: ObjDict.od
+       $(MAKE) -C ../../objdictgen gnosis
+-      python ../../objdictgen/objdictgen.py ObjDict.od ObjDict.c
++      $(PYTHON) ../../objdictgen/objdictgen.py ObjDict.od ObjDict.c
+ .cpp.o:
+       $(CXX) -c $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) `wx-config --cxxflags` $< -o $@
+diff --git a/examples/SillySlave/Makefile.in b/examples/SillySlave/Makefile.in
+--- a/examples/SillySlave/Makefile.in
++++ b/examples/SillySlave/Makefile.in
+@@ -53,7 +53,7 @@
+       
+ SillySlave.c: SillySlave.od
+       $(MAKE) -C ../../objdictgen gnosis
+-      python ../../objdictgen/objdictgen.py SillySlave.od SillySlave.c
++      $(PYTHON) ../../objdictgen/objdictgen.py SillySlave.od SillySlave.c
+ %.o: %.c
+       $(CC) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ -c $<
+diff --git a/examples/TestMasterMicroMod/Makefile.in b/examples/TestMasterMicroMod/Makefile.in
+--- a/examples/TestMasterMicroMod/Makefile.in
++++ b/examples/TestMasterMicroMod/Makefile.in
+@@ -61,7 +61,7 @@
+       
+ TestMaster.c: TestMaster.od
+       $(MAKE) -C ../../objdictgen gnosis
+-      python ../../objdictgen/objdictgen.py TestMaster.od TestMaster.c
++      $(PYTHON) ../../objdictgen/objdictgen.py TestMaster.od TestMaster.c
+ %.o: %.c
+       $(CC) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ -c $<
+diff --git a/examples/TestMasterSlave/Makefile.in b/examples/TestMasterSlave/Makefile.in
+--- a/examples/TestMasterSlave/Makefile.in
++++ b/examples/TestMasterSlave/Makefile.in
+@@ -69,11 +69,11 @@
+       
+ TestSlave.c: TestSlave.od
+       $(MAKE) -C ../../objdictgen gnosis
+-      python ../../objdictgen/objdictgen.py TestSlave.od TestSlave.c
++      $(PYTHON) ../../objdictgen/objdictgen.py TestSlave.od TestSlave.c
+       
+ TestMaster.c: TestMaster.od
+       $(MAKE) -C ../../objdictgen gnosis
+-      python ../../objdictgen/objdictgen.py TestMaster.od TestMaster.c
++      $(PYTHON) ../../objdictgen/objdictgen.py TestMaster.od TestMaster.c
+ %.o: %.c
+       $(CC) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ -c $<
+diff --git a/examples/TestMasterSlaveLSS/Makefile.in b/examples/TestMasterSlaveLSS/Makefile.in
+--- a/examples/TestMasterSlaveLSS/Makefile.in
++++ b/examples/TestMasterSlaveLSS/Makefile.in
+@@ -64,15 +64,15 @@
+       
+ TestSlaveA.c: TestSlaveA.od
+       $(MAKE) -C ../../objdictgen gnosis
+-      python ../../objdictgen/objdictgen.py TestSlaveA.od TestSlaveA.c
++      $(PYTHON) ../../objdictgen/objdictgen.py TestSlaveA.od TestSlaveA.c
+ TestSlaveB.c: TestSlaveB.od
+       $(MAKE) -C ../../objdictgen gnosis
+-      python ../../objdictgen/objdictgen.py TestSlaveB.od TestSlaveB.c
++      $(PYTHON) ../../objdictgen/objdictgen.py TestSlaveB.od TestSlaveB.c
+       
+ TestMaster.c: TestMaster.od
+       $(MAKE) -C ../../objdictgen gnosis
+-      python ../../objdictgen/objdictgen.py TestMaster.od TestMaster.c
++      $(PYTHON) ../../objdictgen/objdictgen.py TestMaster.od TestMaster.c
+ %.o: %.c
+       $(CC) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ -c $<
+diff --git a/examples/kerneltest/Makefile.in b/examples/kerneltest/Makefile.in
+--- a/examples/kerneltest/Makefile.in
++++ b/examples/kerneltest/Makefile.in
+@@ -79,10 +79,10 @@
+ TestSlave.c: TestSlave.od
+       $(MAKE) -C ../../objdictgen gnosis
+-      python ../../objdictgen/objdictgen.py TestSlave.od TestSlave.c
++      $(PYTHON) ../../objdictgen/objdictgen.py TestSlave.od TestSlave.c
+ TestMaster.c: TestMaster.od
+       $(MAKE) -C ../../objdictgen gnosis
+-      python ../../objdictgen/objdictgen.py TestMaster.od TestMaster.c
++      $(PYTHON) ../../objdictgen/objdictgen.py TestMaster.od TestMaster.c
+       
+ #endif
+
+
diff --git a/package/canfestival/canfestival-0001-install-pkgconfig-module-for-canfestival.patch b/package/canfestival/canfestival-0001-install-pkgconfig-module-for-canfestival.patch
deleted file mode 100644 (file)
index 23f3d89..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-From s.martin49@gmail.com Sun Sep 28 14:59:53 2014
-Content-Type: text/plain; charset="us-ascii"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [PATCH] Install pkgconfig module for canfestival
-X-Mercurial-Node: c408fdc77aa18fcda81db4f0d038e8a69ba84bb2
-X-Mercurial-Series-Index: 1
-X-Mercurial-Series-Total: 1
-Message-Id: <c408fdc77aa18fcda81d.1411909193@bobook>
-X-Mercurial-Series-Id: <c408fdc77aa18fcda81d.1411909193@bobook>
-User-Agent: Mercurial-patchbomb/3.1.1
-Date: Sun, 28 Sep 2014 14:59:53 +0200
-From: Samuel Martin <s.martin49@gmail.com>
-To: canfestival-devel@lists.sourceforge.net
-Cc: Samuel Martin <s.martin49@gmail.com>
-
-# HG changeset patch
-# User "Samuel Martin" <s.martin49@gmail.com>
-# Date 1411906817 -7200
-#      Sun Sep 28 14:20:17 2014 +0200
-# Node ID c408fdc77aa18fcda81db4f0d038e8a69ba84bb2
-# Parent  7740ac6fdedc23e1ed6908d3d7db54833c88572b
-Install pkgconfig module for canfestival.
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
-Cc: Cluadio Laurita <claudio.laurita@integrazionetotale.it>
-
-diff -r 7740ac6fdedc -r c408fdc77aa1 canfestival.pc.in
---- /dev/null  Thu Jan 01 00:00:00 1970 +0000
-+++ b/canfestival.pc.in        Sun Sep 28 14:20:17 2014 +0200
-@@ -0,0 +1,12 @@
-+PREFIX = SUB_PREFIX
-+TARGET = SUB_TARGET
-+
-+prefix=${PREFIX}
-+libdir=${prefix}/lib
-+includedir=${prefix}/include/canfestival
-+
-+Name: Canfestival
-+Description: Canfestival CANOpen library
-+Version: 1
-+Libs: -L${libdir} -lcanfestival -lcanfestival_${TARGET} -lrt -ldl -lpthread
-+Cflags: -I${includedir}
-diff -r 7740ac6fdedc -r c408fdc77aa1 configure
---- a/configure        Thu Jun 12 14:07:16 2014 +0200
-+++ b/configure        Sun Sep 28 14:20:17 2014 +0200
-@@ -813,6 +813,10 @@
-     MAKEFILES=$MAKEFILES\ drivers/$SUB_TARGET/Makefile.in
- fi
-+if [ "$SUB_TARGET" = "unix" ]; then
-+    MAKEFILES=$MAKEFILES\ canfestival.pc.in
-+fi
-+
- if [ "$SUB_TARGET" = "unix" -a "$SUB_TIMERS_DRIVER" = "kernel" ]; then
-       MAKEFILES=$MAKEFILES\
- \     examples/kerneltest/Makefile.in\
-diff -r 7740ac6fdedc -r c408fdc77aa1 src/Makefile.in
---- a/src/Makefile.in  Thu Jun 12 14:07:16 2014 +0200
-+++ b/src/Makefile.in  Sun Sep 28 14:20:17 2014 +0200
-@@ -132,9 +132,10 @@
-       $(CC) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ -c $<
- install: libcanfestival.a
--      mkdir -p $(DESTDIR)$(PREFIX)/lib/
-+      mkdir -p $(DESTDIR)$(PREFIX)/lib/pkgconfig
-       mkdir -p $(DESTDIR)$(PREFIX)/include/canfestival
-       cp libcanfestival.a $(DESTDIR)$(PREFIX)/lib/
-+      cp ../canfestival.pc $(DESTDIR)$(PREFIX)/lib/pkgconfig/
-       cp ../include/*.h $(DESTDIR)$(PREFIX)/include/canfestival
- uninstall:
-
-
diff --git a/package/canfestival/canfestival-0002-allow-to-set-python-interpreter.patch b/package/canfestival/canfestival-0002-allow-to-set-python-interpreter.patch
deleted file mode 100644 (file)
index bb60316..0000000
+++ /dev/null
@@ -1,176 +0,0 @@
-From s.martin49@gmail.com Fri Oct 10 23:43:32 2014
-Content-Type: text/plain; charset="us-ascii"
-MIME-Version: 1.0
-Content-Transfer-Encoding: 7bit
-Subject: [PATCH] allow to set python interpreter
-X-Mercurial-Node: 4805f636c2317d989a5f704ba691369f41be6595
-X-Mercurial-Series-Index: 1
-X-Mercurial-Series-Total: 1
-Message-Id: <4805f636c2317d989a5f.1412977412@bobook>
-X-Mercurial-Series-Id: <4805f636c2317d989a5f.1412977412@bobook>
-User-Agent: Mercurial-patchbomb/3.1.2
-Date: Fri, 10 Oct 2014 23:43:32 +0200
-From: Samuel Martin <s.martin49@gmail.com>
-To: canfestival-devel@lists.sourceforge.net
-Cc: Samuel Martin <s.martin49@gmail.com>
-
-# HG changeset patch
-# User "Samuel Martin" <s.martin49@gmail.com>
-# Date 1412977082 -7200
-#      Fri Oct 10 23:38:02 2014 +0200
-# Node ID 4805f636c2317d989a5f704ba691369f41be6595
-# Parent  c408fdc77aa18fcda81db4f0d038e8a69ba84bb2
-allow to set python interpreter
-
-Canfestival python modules and scripts are not python3 compliant.
-
-Allow to pass the python interperter to be used to make.
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
-
-diff --git a/Makefile.in b/Makefile.in
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -21,6 +21,9 @@
- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- # 
-+PYTHON ?= python
-+export PYTHON
-+
- all: objdictedit canfestival examples
- examples: canfestival driver
-diff --git a/doc/manual/en/manual.tex b/doc/manual/en/manual.tex
---- a/doc/manual/en/manual.tex
-+++ b/doc/manual/en/manual.tex
-@@ -1134,6 +1134,7 @@
-       python objdictedit.py [od files...]
- \end{verbatim}
-+Note that Gnosis modules only run with python2 as interpreter.
- \subsubsection{Installation and usage on Windows}
-diff --git a/examples/CANOpenShell/Makefile.in b/examples/CANOpenShell/Makefile.in
---- a/examples/CANOpenShell/Makefile.in
-+++ b/examples/CANOpenShell/Makefile.in
-@@ -69,11 +69,11 @@
-       
- CANOpenShellMasterOD.c: CANOpenShellMasterOD.od
-       $(MAKE) -C ../../objdictgen gnosis
--      python ../../objdictgen/objdictgen.py CANOpenShellMasterOD.od CANOpenShellMasterOD.c
-+      $(PYTHON) ../../objdictgen/objdictgen.py CANOpenShellMasterOD.od CANOpenShellMasterOD.c
- CANOpenShellSlaveOD.c: CANOpenShellSlaveOD.od
-       $(MAKE) -C ../../objdictgen gnosis
--      python ../../objdictgen/objdictgen.py CANOpenShellSlaveOD.od CANOpenShellSlaveOD.c
-+      $(PYTHON) ../../objdictgen/objdictgen.py CANOpenShellSlaveOD.od CANOpenShellSlaveOD.c
- %.o: %.c
-       $(CC) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ -c $<
-diff --git a/examples/DS401_Master/Makefile.in b/examples/DS401_Master/Makefile.in
---- a/examples/DS401_Master/Makefile.in
-+++ b/examples/DS401_Master/Makefile.in
-@@ -53,7 +53,7 @@
-       
- TestMaster.c: TestMaster.od
-       $(MAKE) -C ../../objdictgen gnosis
--      python ../../objdictgen/objdictgen.py TestMaster.od TestMaster.c
-+      $(PYTHON) ../../objdictgen/objdictgen.py TestMaster.od TestMaster.c
- %.o: %.c
-       $(CC) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ -c $<
-diff --git a/examples/DS401_Slave_Gui/Makefile.in b/examples/DS401_Slave_Gui/Makefile.in
---- a/examples/DS401_Slave_Gui/Makefile.in
-+++ b/examples/DS401_Slave_Gui/Makefile.in
-@@ -59,7 +59,7 @@
- ObjDict.c: ObjDict.od
-       $(MAKE) -C ../../objdictgen gnosis
--      python ../../objdictgen/objdictgen.py ObjDict.od ObjDict.c
-+      $(PYTHON) ../../objdictgen/objdictgen.py ObjDict.od ObjDict.c
- .cpp.o:
-       $(CXX) -c $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) `wx-config --cxxflags` $< -o $@
-diff --git a/examples/SillySlave/Makefile.in b/examples/SillySlave/Makefile.in
---- a/examples/SillySlave/Makefile.in
-+++ b/examples/SillySlave/Makefile.in
-@@ -53,7 +53,7 @@
-       
- SillySlave.c: SillySlave.od
-       $(MAKE) -C ../../objdictgen gnosis
--      python ../../objdictgen/objdictgen.py SillySlave.od SillySlave.c
-+      $(PYTHON) ../../objdictgen/objdictgen.py SillySlave.od SillySlave.c
- %.o: %.c
-       $(CC) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ -c $<
-diff --git a/examples/TestMasterMicroMod/Makefile.in b/examples/TestMasterMicroMod/Makefile.in
---- a/examples/TestMasterMicroMod/Makefile.in
-+++ b/examples/TestMasterMicroMod/Makefile.in
-@@ -61,7 +61,7 @@
-       
- TestMaster.c: TestMaster.od
-       $(MAKE) -C ../../objdictgen gnosis
--      python ../../objdictgen/objdictgen.py TestMaster.od TestMaster.c
-+      $(PYTHON) ../../objdictgen/objdictgen.py TestMaster.od TestMaster.c
- %.o: %.c
-       $(CC) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ -c $<
-diff --git a/examples/TestMasterSlave/Makefile.in b/examples/TestMasterSlave/Makefile.in
---- a/examples/TestMasterSlave/Makefile.in
-+++ b/examples/TestMasterSlave/Makefile.in
-@@ -69,11 +69,11 @@
-       
- TestSlave.c: TestSlave.od
-       $(MAKE) -C ../../objdictgen gnosis
--      python ../../objdictgen/objdictgen.py TestSlave.od TestSlave.c
-+      $(PYTHON) ../../objdictgen/objdictgen.py TestSlave.od TestSlave.c
-       
- TestMaster.c: TestMaster.od
-       $(MAKE) -C ../../objdictgen gnosis
--      python ../../objdictgen/objdictgen.py TestMaster.od TestMaster.c
-+      $(PYTHON) ../../objdictgen/objdictgen.py TestMaster.od TestMaster.c
- %.o: %.c
-       $(CC) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ -c $<
-diff --git a/examples/TestMasterSlaveLSS/Makefile.in b/examples/TestMasterSlaveLSS/Makefile.in
---- a/examples/TestMasterSlaveLSS/Makefile.in
-+++ b/examples/TestMasterSlaveLSS/Makefile.in
-@@ -64,15 +64,15 @@
-       
- TestSlaveA.c: TestSlaveA.od
-       $(MAKE) -C ../../objdictgen gnosis
--      python ../../objdictgen/objdictgen.py TestSlaveA.od TestSlaveA.c
-+      $(PYTHON) ../../objdictgen/objdictgen.py TestSlaveA.od TestSlaveA.c
- TestSlaveB.c: TestSlaveB.od
-       $(MAKE) -C ../../objdictgen gnosis
--      python ../../objdictgen/objdictgen.py TestSlaveB.od TestSlaveB.c
-+      $(PYTHON) ../../objdictgen/objdictgen.py TestSlaveB.od TestSlaveB.c
-       
- TestMaster.c: TestMaster.od
-       $(MAKE) -C ../../objdictgen gnosis
--      python ../../objdictgen/objdictgen.py TestMaster.od TestMaster.c
-+      $(PYTHON) ../../objdictgen/objdictgen.py TestMaster.od TestMaster.c
- %.o: %.c
-       $(CC) $(CFLAGS) $(PROG_CFLAGS) ${PROGDEFINES} $(INCLUDES) -o $@ -c $<
-diff --git a/examples/kerneltest/Makefile.in b/examples/kerneltest/Makefile.in
---- a/examples/kerneltest/Makefile.in
-+++ b/examples/kerneltest/Makefile.in
-@@ -79,10 +79,10 @@
- TestSlave.c: TestSlave.od
-       $(MAKE) -C ../../objdictgen gnosis
--      python ../../objdictgen/objdictgen.py TestSlave.od TestSlave.c
-+      $(PYTHON) ../../objdictgen/objdictgen.py TestSlave.od TestSlave.c
- TestMaster.c: TestMaster.od
-       $(MAKE) -C ../../objdictgen gnosis
--      python ../../objdictgen/objdictgen.py TestMaster.od TestMaster.c
-+      $(PYTHON) ../../objdictgen/objdictgen.py TestMaster.od TestMaster.c
-       
- #endif
-
-
diff --git a/package/cdrkit/0001-no-rcmd.patch b/package/cdrkit/0001-no-rcmd.patch
new file mode 100644 (file)
index 0000000..294779f
--- /dev/null
@@ -0,0 +1,22 @@
+[PATCH] fix build with uClibc
+
+cdrkit unconditionally enables code using rcmd(3), which isn't available
+on uClibc.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ include/xconfig.h.in |    1 -
+ 1 file changed, 1 deletion(-)
+
+Index: cdrkit-1.1.10/include/xconfig.h.in
+===================================================================
+--- cdrkit-1.1.10.orig/include/xconfig.h.in
++++ cdrkit-1.1.10/include/xconfig.h.in
+@@ -187,7 +187,6 @@
+  *    they are placed before the large file tests.
+  */
+-#define HAVE_RCMD 1           /* rcmd() is present in libc/libsocket */
+ #define HAVE_SOCKET 1         /* socket() is present in libc/libsocket */
+ #define HAVE_SOCKETPAIR 1             /* socketpair() is present in libc/libsocket */
+ #define HAVE_GETSERVBYNAME 1  /* getservbyname() is present in libc/libsocket */
diff --git a/package/cdrkit/cdrkit-1.1.11-no-rcmd.patch b/package/cdrkit/cdrkit-1.1.11-no-rcmd.patch
deleted file mode 100644 (file)
index 294779f..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-[PATCH] fix build with uClibc
-
-cdrkit unconditionally enables code using rcmd(3), which isn't available
-on uClibc.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- include/xconfig.h.in |    1 -
- 1 file changed, 1 deletion(-)
-
-Index: cdrkit-1.1.10/include/xconfig.h.in
-===================================================================
---- cdrkit-1.1.10.orig/include/xconfig.h.in
-+++ cdrkit-1.1.10/include/xconfig.h.in
-@@ -187,7 +187,6 @@
-  *    they are placed before the large file tests.
-  */
--#define HAVE_RCMD 1           /* rcmd() is present in libc/libsocket */
- #define HAVE_SOCKET 1         /* socket() is present in libc/libsocket */
- #define HAVE_SOCKETPAIR 1             /* socketpair() is present in libc/libsocket */
- #define HAVE_GETSERVBYNAME 1  /* getservbyname() is present in libc/libsocket */
diff --git a/package/cegui06/0001-stddef.h.patch b/package/cegui06/0001-stddef.h.patch
new file mode 100644 (file)
index 0000000..cc16eff
--- /dev/null
@@ -0,0 +1,26 @@
+includes: ptrdiff_t is defined in stddef.h
+
+ptrdiff_t is defined in the stddef.h header, so this
+header must be included.
+
+Do the #include in a common header to avoid doing it
+all over the place.
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+---
+Patch not sent upstream, it's a no-longer-maintained branch.
+To be noted, however, is that the current devel branch is
+still missing that include.
+
+diff -durN cegui06-0.6.2.orig/include/CEGUIBase.h cegui06-0.6.2/include/CEGUIBase.h
+--- cegui06-0.6.2.orig//include/CEGUIBase.h    2008-02-11 15:38:27.000000000 +0100
++++ cegui06-0.6.2/include/CEGUIBase.h  2012-08-19 22:51:50.260385978 +0200
+@@ -34,6 +34,7 @@
+ #define _CEGUIBase_h_
+ #include <cassert>
++#include <stddef.h>
+ // bring in configuration options
+ #include "CEGUIConfig.h"
diff --git a/package/cegui06/cegui06-stddef.h.patch b/package/cegui06/cegui06-stddef.h.patch
deleted file mode 100644 (file)
index cc16eff..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-includes: ptrdiff_t is defined in stddef.h
-
-ptrdiff_t is defined in the stddef.h header, so this
-header must be included.
-
-Do the #include in a common header to avoid doing it
-all over the place.
-
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
-
----
-Patch not sent upstream, it's a no-longer-maintained branch.
-To be noted, however, is that the current devel branch is
-still missing that include.
-
-diff -durN cegui06-0.6.2.orig/include/CEGUIBase.h cegui06-0.6.2/include/CEGUIBase.h
---- cegui06-0.6.2.orig//include/CEGUIBase.h    2008-02-11 15:38:27.000000000 +0100
-+++ cegui06-0.6.2/include/CEGUIBase.h  2012-08-19 22:51:50.260385978 +0200
-@@ -34,6 +34,7 @@
- #define _CEGUIBase_h_
- #include <cassert>
-+#include <stddef.h>
- // bring in configuration options
- #include "CEGUIConfig.h"
diff --git a/package/clamav/0001-clamdscan.patch b/package/clamav/0001-clamdscan.patch
new file mode 100644 (file)
index 0000000..c395ae1
--- /dev/null
@@ -0,0 +1,21 @@
+Fixes build error
+
+proto.c: In function â€˜dconnect’:
+proto.c:86:67: error: invalid application of â€˜sizeof’ to incomplete type â€˜struct sockaddr_un’
+             if (connect(sockd, (struct sockaddr *)&nixsock, sizeof(nixsock)) == 0)
+
+Patch sent upstream: http://lurker.clamav.net/message/20140928.130829.5494fd68.en.html
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+
+diff -uNr clamav-0.98.3.org/clamdscan/proto.c clamav-0.98.3/clamdscan/proto.c
+--- clamav-0.98.3.org/clamdscan/proto.c        2014-05-06 20:39:56.000000000 +0200
++++ clamav-0.98.3/clamdscan/proto.c    2014-05-10 10:41:44.000000000 +0200
+@@ -35,6 +35,7 @@
+ #include <sys/stat.h>
+ #include <fcntl.h>
+ #include <sys/types.h>
++#include <sys/un.h>
+ #ifdef HAVE_SYS_SELECT_H
+ #include <sys/select.h>
+ #endif
diff --git a/package/clamav/0002-static-linking.patch b/package/clamav/0002-static-linking.patch
new file mode 100644 (file)
index 0000000..2369d09
--- /dev/null
@@ -0,0 +1,58 @@
+Fix detection of statically linked libraries
+
+Patch submitted upstream: https://bugzilla.clamav.net/show_bug.cgi?id=11132
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+
+diff -uNr clamav-0.98.4.org/m4/reorganization/libs/curl.m4 clamav-0.98.4/m4/reorganization/libs/curl.m4
+--- clamav-0.98.4.org/m4/reorganization/libs/curl.m4   2014-05-21 17:25:05.000000000 +0200
++++ clamav-0.98.4/m4/reorganization/libs/curl.m4       2014-09-28 15:39:26.714111527 +0200
+@@ -38,7 +38,7 @@
+     save_LDFLAGS="$LDFLAGS"
+     LDFLAGS="$CURL_LDFLAGS"
+     AC_CHECK_LIB([curl], [curl_easy_init], [curl_msg="";have_curl="yes";CLAMSUBMIT_LIBS="$CLAMSUBMIT_LIBS $CURL_LDFLAGS";CLAMSUBMIT_CFLAGS="$CLAMSUBMIT_CFLAGS $CURL_CPPFLAGS"],
+-            [AC_MSG_WARN([Your libcurl is misconfigured. Please use the web interface for submitting FPs/FNs.])])
++            [AC_MSG_WARN([Your libcurl is misconfigured. Please use the web interface for submitting FPs/FNs.])], [$CURL_LDFLAGS])
+     LDFLAGS="$save_LDFLAGS"
+ fi
+diff -uNr clamav-0.98.4.org/m4/reorganization/libs/openssl.m4 clamav-0.98.4/m4/reorganization/libs/openssl.m4
+--- clamav-0.98.4.org/m4/reorganization/libs/openssl.m4        2014-05-22 15:18:22.000000000 +0200
++++ clamav-0.98.4/m4/reorganization/libs/openssl.m4    2014-09-28 15:15:18.280323868 +0200
+@@ -26,7 +26,7 @@
+ save_CFLAGS="$CFLAGS"
+ save_LIBS="$LIBS"
+-SSL_LIBS="-lssl -lcrypto"
++SSL_LIBS="-lssl -lcrypto -lz"
+ if test "$LIBSSL_HOME" != "/usr"; then
+     SSL_LDFLAGS="-L$LIBSSL_HOME/lib"
+@@ -41,12 +41,12 @@
+ have_ssl="no"
+ have_crypto="no"
+-AC_CHECK_LIB([ssl], [SSL_library_init], [have_ssl="yes"], [AC_MSG_ERROR([Your OpenSSL installation is misconfigured or missing])], [-lcrypto])
++AC_CHECK_LIB([ssl], [SSL_library_init], [have_ssl="yes"], [AC_MSG_ERROR([Your OpenSSL installation is misconfigured or missing])], [-lcrypto -lz])
+-AC_CHECK_LIB([crypto], [EVP_EncryptInit], [have_crypto="yes"], [AC_MSG_ERROR([Your OpenSSL installation is misconfigured or missing])])
++AC_CHECK_LIB([crypto], [EVP_EncryptInit], [have_crypto="yes"], [AC_MSG_ERROR([Your OpenSSL installation is misconfigured or missing])], [-lcrypto -lz])
+ dnl OpenSSL 0.9.8 is the minimum required version due to X509_VERIFY_PARAM
+-AC_CHECK_LIB([ssl], [X509_VERIFY_PARAM_new], [], [AC_MSG_ERROR([Your OpenSSL installation is missing the X509_VERIFY_PARAM function. Please upgrade to a more recent version of OpenSSL.])], [-lcrypto])
++AC_CHECK_LIB([ssl], [X509_VERIFY_PARAM_new], [], [AC_MSG_ERROR([Your OpenSSL installation is missing the X509_VERIFY_PARAM function. Please upgrade to a more recent version of OpenSSL.])], [-lcrypto -lz])
+ LDFLAGS="$save_LDFLAGS"
+ CFLAGS="$save_CFLAGS"
+diff -uNr clamav-0.98.4.org/m4/reorganization/libs/xml.m4 clamav-0.98.4/m4/reorganization/libs/xml.m4
+--- clamav-0.98.4.org/m4/reorganization/libs/xml.m4    2014-05-21 17:25:05.000000000 +0200
++++ clamav-0.98.4/m4/reorganization/libs/xml.m4        2014-09-28 15:57:41.836339462 +0200
+@@ -67,7 +67,7 @@
+     save_LDFLAGS="$LDFLAGS"
+     LDFLAGS="$LDFLAGS $XML_LIBS"
+-    AC_CHECK_LIB([xml2], [xmlTextReaderRead], [working_xml="yes"], [working_xml="no"])
++    AC_CHECK_LIB([xml2], [xmlTextReaderRead], [working_xml="yes"], [working_xml="no"], [$XML_LIBS])
+     CPPFLAGS="$save_CPPFLAGS"
+     LDFLAGS="$save_LDFLAGS"
diff --git a/package/clamav/0003-backtrace-uClibc.patch b/package/clamav/0003-backtrace-uClibc.patch
new file mode 100644 (file)
index 0000000..82ad673
--- /dev/null
@@ -0,0 +1,22 @@
+mbox: do not use backtrace if using uClibc without backtrace support
+
+Since uClibc can be configured without support for backtrace, disable
+the backtrace if we are building with a uClibc that was built without
+backtrace.
+
+This is a bit hacky, and would greatly benefit from a test in ./configure
+instead, but does nicely as a quick fix for now.
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+diff -durN clamav-0.98.4.orig/libclamav/mbox.c clamav-0.98.4/libclamav/mbox.c
+--- clamav-0.98.4.orig/libclamav/mbox.c        2014-05-21 17:25:05.000000000 +0200
++++ clamav-0.98.4/libclamav/mbox.c     2014-11-16 17:21:04.885383286 +0100
+@@ -83,7 +83,7 @@
+ #include <features.h>
+ #endif
+-#if __GLIBC__ == 2 && __GLIBC_MINOR__ >= 1
++#if __GLIBC__ == 2 && __GLIBC_MINOR__ >= 1 && !defined(__UCLIBC__) || defined(__UCLIBC_HAS_BACKTRACE__)
+ #define HAVE_BACKTRACE
+ #endif
+ #endif
diff --git a/package/clamav/0004-fix-static-build.patch b/package/clamav/0004-fix-static-build.patch
new file mode 100644 (file)
index 0000000..9c7850a
--- /dev/null
@@ -0,0 +1,21 @@
+stats: fix static link
+
+The stats.c file does not use the dlopen() familly of functions, but
+includes dlfcn.h, which is missing on uClibc when it is configured as
+a static-only C library.
+
+so, simply do not include dlfcn.h.
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+diff -durN clamav-0.98.5.orig/libclamav/stats.c clamav-0.98.5/libclamav/stats.c
+--- clamav-0.98.5.orig/libclamav/stats.c       2014-11-13 23:30:43.000000000 +0100
++++ clamav-0.98.5/libclamav/stats.c    2014-11-25 19:57:14.344291266 +0100
+@@ -41,7 +41,6 @@
+ #include <sys/sysctl.h>
+ #endif
+ #endif
+-#include <dlfcn.h>
+ #else
+ #include <Windows.h>
+ #include <tchar.h>
diff --git a/package/clamav/clamav-0001-clamdscan.patch b/package/clamav/clamav-0001-clamdscan.patch
deleted file mode 100644 (file)
index c395ae1..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-Fixes build error
-
-proto.c: In function â€˜dconnect’:
-proto.c:86:67: error: invalid application of â€˜sizeof’ to incomplete type â€˜struct sockaddr_un’
-             if (connect(sockd, (struct sockaddr *)&nixsock, sizeof(nixsock)) == 0)
-
-Patch sent upstream: http://lurker.clamav.net/message/20140928.130829.5494fd68.en.html
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-
-diff -uNr clamav-0.98.3.org/clamdscan/proto.c clamav-0.98.3/clamdscan/proto.c
---- clamav-0.98.3.org/clamdscan/proto.c        2014-05-06 20:39:56.000000000 +0200
-+++ clamav-0.98.3/clamdscan/proto.c    2014-05-10 10:41:44.000000000 +0200
-@@ -35,6 +35,7 @@
- #include <sys/stat.h>
- #include <fcntl.h>
- #include <sys/types.h>
-+#include <sys/un.h>
- #ifdef HAVE_SYS_SELECT_H
- #include <sys/select.h>
- #endif
diff --git a/package/clamav/clamav-0002-static-linking.patch b/package/clamav/clamav-0002-static-linking.patch
deleted file mode 100644 (file)
index 2369d09..0000000
+++ /dev/null
@@ -1,58 +0,0 @@
-Fix detection of statically linked libraries
-
-Patch submitted upstream: https://bugzilla.clamav.net/show_bug.cgi?id=11132
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-
-diff -uNr clamav-0.98.4.org/m4/reorganization/libs/curl.m4 clamav-0.98.4/m4/reorganization/libs/curl.m4
---- clamav-0.98.4.org/m4/reorganization/libs/curl.m4   2014-05-21 17:25:05.000000000 +0200
-+++ clamav-0.98.4/m4/reorganization/libs/curl.m4       2014-09-28 15:39:26.714111527 +0200
-@@ -38,7 +38,7 @@
-     save_LDFLAGS="$LDFLAGS"
-     LDFLAGS="$CURL_LDFLAGS"
-     AC_CHECK_LIB([curl], [curl_easy_init], [curl_msg="";have_curl="yes";CLAMSUBMIT_LIBS="$CLAMSUBMIT_LIBS $CURL_LDFLAGS";CLAMSUBMIT_CFLAGS="$CLAMSUBMIT_CFLAGS $CURL_CPPFLAGS"],
--            [AC_MSG_WARN([Your libcurl is misconfigured. Please use the web interface for submitting FPs/FNs.])])
-+            [AC_MSG_WARN([Your libcurl is misconfigured. Please use the web interface for submitting FPs/FNs.])], [$CURL_LDFLAGS])
-     LDFLAGS="$save_LDFLAGS"
- fi
-diff -uNr clamav-0.98.4.org/m4/reorganization/libs/openssl.m4 clamav-0.98.4/m4/reorganization/libs/openssl.m4
---- clamav-0.98.4.org/m4/reorganization/libs/openssl.m4        2014-05-22 15:18:22.000000000 +0200
-+++ clamav-0.98.4/m4/reorganization/libs/openssl.m4    2014-09-28 15:15:18.280323868 +0200
-@@ -26,7 +26,7 @@
- save_CFLAGS="$CFLAGS"
- save_LIBS="$LIBS"
--SSL_LIBS="-lssl -lcrypto"
-+SSL_LIBS="-lssl -lcrypto -lz"
- if test "$LIBSSL_HOME" != "/usr"; then
-     SSL_LDFLAGS="-L$LIBSSL_HOME/lib"
-@@ -41,12 +41,12 @@
- have_ssl="no"
- have_crypto="no"
--AC_CHECK_LIB([ssl], [SSL_library_init], [have_ssl="yes"], [AC_MSG_ERROR([Your OpenSSL installation is misconfigured or missing])], [-lcrypto])
-+AC_CHECK_LIB([ssl], [SSL_library_init], [have_ssl="yes"], [AC_MSG_ERROR([Your OpenSSL installation is misconfigured or missing])], [-lcrypto -lz])
--AC_CHECK_LIB([crypto], [EVP_EncryptInit], [have_crypto="yes"], [AC_MSG_ERROR([Your OpenSSL installation is misconfigured or missing])])
-+AC_CHECK_LIB([crypto], [EVP_EncryptInit], [have_crypto="yes"], [AC_MSG_ERROR([Your OpenSSL installation is misconfigured or missing])], [-lcrypto -lz])
- dnl OpenSSL 0.9.8 is the minimum required version due to X509_VERIFY_PARAM
--AC_CHECK_LIB([ssl], [X509_VERIFY_PARAM_new], [], [AC_MSG_ERROR([Your OpenSSL installation is missing the X509_VERIFY_PARAM function. Please upgrade to a more recent version of OpenSSL.])], [-lcrypto])
-+AC_CHECK_LIB([ssl], [X509_VERIFY_PARAM_new], [], [AC_MSG_ERROR([Your OpenSSL installation is missing the X509_VERIFY_PARAM function. Please upgrade to a more recent version of OpenSSL.])], [-lcrypto -lz])
- LDFLAGS="$save_LDFLAGS"
- CFLAGS="$save_CFLAGS"
-diff -uNr clamav-0.98.4.org/m4/reorganization/libs/xml.m4 clamav-0.98.4/m4/reorganization/libs/xml.m4
---- clamav-0.98.4.org/m4/reorganization/libs/xml.m4    2014-05-21 17:25:05.000000000 +0200
-+++ clamav-0.98.4/m4/reorganization/libs/xml.m4        2014-09-28 15:57:41.836339462 +0200
-@@ -67,7 +67,7 @@
-     save_LDFLAGS="$LDFLAGS"
-     LDFLAGS="$LDFLAGS $XML_LIBS"
--    AC_CHECK_LIB([xml2], [xmlTextReaderRead], [working_xml="yes"], [working_xml="no"])
-+    AC_CHECK_LIB([xml2], [xmlTextReaderRead], [working_xml="yes"], [working_xml="no"], [$XML_LIBS])
-     CPPFLAGS="$save_CPPFLAGS"
-     LDFLAGS="$save_LDFLAGS"
diff --git a/package/clamav/clamav-0003-backtrace-uClibc.patch b/package/clamav/clamav-0003-backtrace-uClibc.patch
deleted file mode 100644 (file)
index 82ad673..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-mbox: do not use backtrace if using uClibc without backtrace support
-
-Since uClibc can be configured without support for backtrace, disable
-the backtrace if we are building with a uClibc that was built without
-backtrace.
-
-This is a bit hacky, and would greatly benefit from a test in ./configure
-instead, but does nicely as a quick fix for now.
-
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
-diff -durN clamav-0.98.4.orig/libclamav/mbox.c clamav-0.98.4/libclamav/mbox.c
---- clamav-0.98.4.orig/libclamav/mbox.c        2014-05-21 17:25:05.000000000 +0200
-+++ clamav-0.98.4/libclamav/mbox.c     2014-11-16 17:21:04.885383286 +0100
-@@ -83,7 +83,7 @@
- #include <features.h>
- #endif
--#if __GLIBC__ == 2 && __GLIBC_MINOR__ >= 1
-+#if __GLIBC__ == 2 && __GLIBC_MINOR__ >= 1 && !defined(__UCLIBC__) || defined(__UCLIBC_HAS_BACKTRACE__)
- #define HAVE_BACKTRACE
- #endif
- #endif
diff --git a/package/clamav/clamav-0004-fix-static-build.patch b/package/clamav/clamav-0004-fix-static-build.patch
deleted file mode 100644 (file)
index 9c7850a..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-stats: fix static link
-
-The stats.c file does not use the dlopen() familly of functions, but
-includes dlfcn.h, which is missing on uClibc when it is configured as
-a static-only C library.
-
-so, simply do not include dlfcn.h.
-
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
-
-diff -durN clamav-0.98.5.orig/libclamav/stats.c clamav-0.98.5/libclamav/stats.c
---- clamav-0.98.5.orig/libclamav/stats.c       2014-11-13 23:30:43.000000000 +0100
-+++ clamav-0.98.5/libclamav/stats.c    2014-11-25 19:57:14.344291266 +0100
-@@ -41,7 +41,6 @@
- #include <sys/sysctl.h>
- #endif
- #endif
--#include <dlfcn.h>
- #else
- #include <Windows.h>
- #include <tchar.h>
diff --git a/package/clapack/0001-cmake-force-libf2c-to-be-built-as-a-static-library.patch b/package/clapack/0001-cmake-force-libf2c-to-be-built-as-a-static-library.patch
new file mode 100644 (file)
index 0000000..8fede9d
--- /dev/null
@@ -0,0 +1,32 @@
+From 4fe2f454e454d9e6b1e83b2ea67581990461ed36 Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Sat, 11 Jan 2014 22:05:25 +0100
+Subject: [PATCH 1/6] cmake: force libf2c to be built as a static library
+
+As stated in INSTALL/LAPACK_version.c, liblapack requires to be linked
+against the static library of libf2c.
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+---
+ F2CLIBS/libf2c/CMakeLists.txt | 7 ++++++-
+ 1 file changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/F2CLIBS/libf2c/CMakeLists.txt b/F2CLIBS/libf2c/CMakeLists.txt
+index 43d7b3f..f98d66a 100644
+--- a/F2CLIBS/libf2c/CMakeLists.txt
++++ b/F2CLIBS/libf2c/CMakeLists.txt
+@@ -58,5 +58,10 @@ if(WIN32)
+ endif()
+ include_directories(${CLAPACK_SOURCE_DIR}/F2CLIBS/libf2c)
+ include_directories(${CLAPACK_BINARY_DIR}/F2CLIBS/libf2c)
+-add_library(f2c ${OFILES} ${CMAKE_CURRENT_BINARY_DIR}/arith.h)
++add_library(f2c STATIC ${OFILES} ${CMAKE_CURRENT_BINARY_DIR}/arith.h)
+ set_property(TARGET f2c PROPERTY PREFIX lib)
++# Set fPIC on the library when build shared libraries is enabled, because
++# libf2c.a will most likely be included by some shared libraries in such cases.
++if(UNIX AND BUILD_SHARED_LIBS)
++  set_target_properties(f2c PROPERTIES COMPILE_FLAGS "-fPIC")
++endif()
+-- 
+1.8.5.3
+
diff --git a/package/clapack/0002-cmake-make-test-build-sensitive-to-BUILD_TESTING.patch b/package/clapack/0002-cmake-make-test-build-sensitive-to-BUILD_TESTING.patch
new file mode 100644 (file)
index 0000000..eac4164
--- /dev/null
@@ -0,0 +1,80 @@
+From 834c221936d9c460b44e3a65b6fedfb3193f491b Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Sat, 11 Jan 2014 21:33:12 +0100
+Subject: [PATCH 2/6] cmake: make test build sensitive to BUILD_TESTING
+
+This patch prevent from wasting time building the tests if it's our
+wish.
+
+The test build takes a significant amount of time, and the binaries
+are not installed.
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+---
+ BLAS/TESTING/CMakeLists.txt | 3 +++
+ CMakeLists.txt              | 9 ++++++---
+ TESTING/CMakeLists.txt      | 4 ++++
+ 3 files changed, 13 insertions(+), 3 deletions(-)
+
+diff --git a/BLAS/TESTING/CMakeLists.txt b/BLAS/TESTING/CMakeLists.txt
+index ec2c587..e7dc0b7 100644
+--- a/BLAS/TESTING/CMakeLists.txt
++++ b/BLAS/TESTING/CMakeLists.txt
+@@ -25,6 +25,9 @@
+ #       make single FRC=FRC
+ #
+ #######################################################################
++if(NOT BUILD_TESTING)
++  return()
++endif()
+ macro(add_blas_test name src)
+   get_filename_component(baseNAME ${src} NAME_WE)
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 320ccc6..0a362c0 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1,6 +1,5 @@
+ cmake_minimum_required(VERSION 2.6)
+ project(CLAPACK C)
+-enable_testing()
+ include(CTest)
+ if(WIN32 AND NOT CYGWIN)
+@@ -11,7 +10,9 @@ else()
+   set(SECOND_SRC  ${CLAPACK_SOURCE_DIR}/INSTALL/second.c)
+   set(DSECOND_SRC  ${CLAPACK_SOURCE_DIR}/INSTALL/dsecnd.c)
+ endif()
+-enable_testing()
++if(NOT BUILD_TESTING)
++  enable_testing()
++endif()
+ option(USE_BLAS_WRAP "pre-pend f2c_ to each function in blas" OFF)
+ if(NOT USE_BLAS_WRAP)
+ # _zrotg_ seems to be missing in the wrap header
+@@ -21,7 +22,9 @@ include_directories(${CLAPACK_SOURCE_DIR}/INCLUDE)
+ add_subdirectory(F2CLIBS)
+ add_subdirectory(BLAS)
+ add_subdirectory(SRC)
+-add_subdirectory(TESTING)
++if(NOT BUILD_TESTING)
++  add_subdirectory(TESTING)
++endif()
+ set(CLAPACK_VERSION 3.2.1)
+ set(CPACK_PACKAGE_VERSION_MAJOR 3)
+ set(CPACK_PACKAGE_VERSION_MINOR 2)
+diff --git a/TESTING/CMakeLists.txt b/TESTING/CMakeLists.txt
+index d59359d..f6b083a 100644
+--- a/TESTING/CMakeLists.txt
++++ b/TESTING/CMakeLists.txt
+@@ -1,3 +1,7 @@
++if(NOT BUILD_TESTING)
++  return()
++endif()
++
+ if(MSVC_VERSION)
+ #  string(REPLACE "/STACK:10000000" "/STACK:900000000000000000"
+ #    CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS}")
+-- 
+1.8.5.3
+
diff --git a/package/clapack/0003-cmake-do-not-try-to-run-arithchk-when-cross-compilin.patch b/package/clapack/0003-cmake-do-not-try-to-run-arithchk-when-cross-compilin.patch
new file mode 100644 (file)
index 0000000..cd9828f
--- /dev/null
@@ -0,0 +1,70 @@
+From a2f0669fac1f8e7183b15cf7d14f0e99a2d8b012 Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Sat, 11 Jan 2014 21:47:39 +0100
+Subject: [PATCH 3/6] cmake: do not try to run arithchk when cross-compiling to
+ generate sources
+
+Instead, use a predefined arith.h if provided, or generate a default one.
+
+The arithchk binary is still built (but not installed) to allow the user to
+run it on its target and use it; so then allowing to build an optimized
+blas library.
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+---
+ F2CLIBS/libf2c/CMakeLists.txt | 38 ++++++++++++++++++++++++++++----------
+ 1 file changed, 28 insertions(+), 10 deletions(-)
+
+diff --git a/F2CLIBS/libf2c/CMakeLists.txt b/F2CLIBS/libf2c/CMakeLists.txt
+index f98d66a..45a0804 100644
+--- a/F2CLIBS/libf2c/CMakeLists.txt
++++ b/F2CLIBS/libf2c/CMakeLists.txt
+@@ -38,17 +38,35 @@ set(TIME dtime_.c etime_.c)
+ # For INTEGER*8 support (which requires system-dependent adjustments to
+ # f2c.h), add ${QINT} to the OFILES  assignment below...
+-add_executable(arithchk arithchk.c)
+-if(UNIX)
+-  target_link_libraries(arithchk m)
++if(CMAKE_CROSSCOMPILING)
++  if(ARITH_H)
++    message(STATUS "Using the user-defined '${ARITH_H}' as arith.h header.")
++    configure_file("${ARITH_H}" "${CMAKE_CURRENT_BINARY_DIR}/arith.h" COPYONLY)
++  else()
++    message(STATUS "No user-defined arith.h header.")
++    if(NOT EXISTS "${CMAKE_CURRENT_BINARY_DIR}/arith.h")
++      message(WARNING "Generating the default non-optimized 'arith.h' header.
++
++To generate and provide a custom arith.h header:
++run the cross-compiled arithchk binary on your target,
++and use its output to fill your custom arith.h header.")
++      file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/arith.h"
++        "/* default, not optimized arith.h */")
++    endif()
++  endif()
++else()
++  add_executable(arithchk arithchk.c)
++  if(UNIX)
++    target_link_libraries(arithchk m)
++  endif()
++  set_target_properties(arithchk PROPERTIES COMPILE_DEFINITIONS
++    "NO_FPINIT;NO_LONG_LONG")
++  ADD_CUSTOM_COMMAND(
++     OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/arith.h
++     COMMAND arithchk > ${CMAKE_CURRENT_BINARY_DIR}/arith.h
++     DEPENDS arithchk
++     )
+ endif()
+-set_target_properties(arithchk PROPERTIES COMPILE_DEFINITIONS 
+-  "NO_FPINIT;NO_LONG_LONG")
+-ADD_CUSTOM_COMMAND(
+-   OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/arith.h
+-   COMMAND arithchk > ${CMAKE_CURRENT_BINARY_DIR}/arith.h
+-   DEPENDS arithchk
+-   )
+ set(OFILES  ${MISC} ${POW} ${CX} ${DCX} ${REAL} ${DBL} ${INT} 
+-- 
+1.8.5.3
+
diff --git a/package/clapack/0004-cmake-blas-add-library-and-header-install-rules.patch b/package/clapack/0004-cmake-blas-add-library-and-header-install-rules.patch
new file mode 100644 (file)
index 0000000..e83b066
--- /dev/null
@@ -0,0 +1,23 @@
+From 675111e8ffc179276a7e4950fe4a4eda4d38a703 Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Sat, 11 Jan 2014 21:48:32 +0100
+Subject: [PATCH 4/6] cmake: blas: add library and header install rules
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+---
+ BLAS/SRC/CMakeLists.txt | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/BLAS/SRC/CMakeLists.txt b/BLAS/SRC/CMakeLists.txt
+index d1caff8..a5de5a1 100644
+--- a/BLAS/SRC/CMakeLists.txt
++++ b/BLAS/SRC/CMakeLists.txt
+@@ -141,3 +141,5 @@ if(UNIX)
+   target_link_libraries(blas m)
+ endif()
+ target_link_libraries(blas f2c)
++install(TARGETS blas LIBRARY DESTINATION lib ARCHIVE DESTINATION lib)
++install(FILES "${CLAPACK_SOURCE_DIR}/INCLUDE/blaswrap.h" DESTINATION include)
+-- 
+1.8.5.3
+
diff --git a/package/clapack/0005-cmake-lapack-add-library-and-header-install-rules.patch b/package/clapack/0005-cmake-lapack-add-library-and-header-install-rules.patch
new file mode 100644 (file)
index 0000000..abba460
--- /dev/null
@@ -0,0 +1,24 @@
+From 9dfac0d55a31be59a856bad9d3a5071d65176597 Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Sat, 11 Jan 2014 21:49:22 +0100
+Subject: [PATCH 5/6] cmake: lapack: add library and header install rules
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+---
+ SRC/CMakeLists.txt | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/SRC/CMakeLists.txt b/SRC/CMakeLists.txt
+index ac4cce3..aa60555 100644
+--- a/SRC/CMakeLists.txt
++++ b/SRC/CMakeLists.txt
+@@ -377,4 +377,5 @@ if(BUILD_COMPLEX16)
+ endif()
+ add_library(lapack ${ALLOBJ} ${ALLXOBJ})
+ target_link_libraries(lapack blas)
+-
++install(TARGETS lapack LIBRARY DESTINATION lib ARCHIVE DESTINATION lib)
++install(FILES "${CLAPACK_SOURCE_DIR}/INCLUDE/clapack.h" DESTINATION include)
+-- 
+1.8.5.3
+
diff --git a/package/clapack/clapack-0001-cmake-force-libf2c-to-be-built-as-a-static-library.patch b/package/clapack/clapack-0001-cmake-force-libf2c-to-be-built-as-a-static-library.patch
deleted file mode 100644 (file)
index 8fede9d..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-From 4fe2f454e454d9e6b1e83b2ea67581990461ed36 Mon Sep 17 00:00:00 2001
-From: Samuel Martin <s.martin49@gmail.com>
-Date: Sat, 11 Jan 2014 22:05:25 +0100
-Subject: [PATCH 1/6] cmake: force libf2c to be built as a static library
-
-As stated in INSTALL/LAPACK_version.c, liblapack requires to be linked
-against the static library of libf2c.
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
----
- F2CLIBS/libf2c/CMakeLists.txt | 7 ++++++-
- 1 file changed, 6 insertions(+), 1 deletion(-)
-
-diff --git a/F2CLIBS/libf2c/CMakeLists.txt b/F2CLIBS/libf2c/CMakeLists.txt
-index 43d7b3f..f98d66a 100644
---- a/F2CLIBS/libf2c/CMakeLists.txt
-+++ b/F2CLIBS/libf2c/CMakeLists.txt
-@@ -58,5 +58,10 @@ if(WIN32)
- endif()
- include_directories(${CLAPACK_SOURCE_DIR}/F2CLIBS/libf2c)
- include_directories(${CLAPACK_BINARY_DIR}/F2CLIBS/libf2c)
--add_library(f2c ${OFILES} ${CMAKE_CURRENT_BINARY_DIR}/arith.h)
-+add_library(f2c STATIC ${OFILES} ${CMAKE_CURRENT_BINARY_DIR}/arith.h)
- set_property(TARGET f2c PROPERTY PREFIX lib)
-+# Set fPIC on the library when build shared libraries is enabled, because
-+# libf2c.a will most likely be included by some shared libraries in such cases.
-+if(UNIX AND BUILD_SHARED_LIBS)
-+  set_target_properties(f2c PROPERTIES COMPILE_FLAGS "-fPIC")
-+endif()
--- 
-1.8.5.3
-
diff --git a/package/clapack/clapack-0002-cmake-make-test-build-sensitive-to-BUILD_TESTING.patch b/package/clapack/clapack-0002-cmake-make-test-build-sensitive-to-BUILD_TESTING.patch
deleted file mode 100644 (file)
index eac4164..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-From 834c221936d9c460b44e3a65b6fedfb3193f491b Mon Sep 17 00:00:00 2001
-From: Samuel Martin <s.martin49@gmail.com>
-Date: Sat, 11 Jan 2014 21:33:12 +0100
-Subject: [PATCH 2/6] cmake: make test build sensitive to BUILD_TESTING
-
-This patch prevent from wasting time building the tests if it's our
-wish.
-
-The test build takes a significant amount of time, and the binaries
-are not installed.
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
----
- BLAS/TESTING/CMakeLists.txt | 3 +++
- CMakeLists.txt              | 9 ++++++---
- TESTING/CMakeLists.txt      | 4 ++++
- 3 files changed, 13 insertions(+), 3 deletions(-)
-
-diff --git a/BLAS/TESTING/CMakeLists.txt b/BLAS/TESTING/CMakeLists.txt
-index ec2c587..e7dc0b7 100644
---- a/BLAS/TESTING/CMakeLists.txt
-+++ b/BLAS/TESTING/CMakeLists.txt
-@@ -25,6 +25,9 @@
- #       make single FRC=FRC
- #
- #######################################################################
-+if(NOT BUILD_TESTING)
-+  return()
-+endif()
- macro(add_blas_test name src)
-   get_filename_component(baseNAME ${src} NAME_WE)
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 320ccc6..0a362c0 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -1,6 +1,5 @@
- cmake_minimum_required(VERSION 2.6)
- project(CLAPACK C)
--enable_testing()
- include(CTest)
- if(WIN32 AND NOT CYGWIN)
-@@ -11,7 +10,9 @@ else()
-   set(SECOND_SRC  ${CLAPACK_SOURCE_DIR}/INSTALL/second.c)
-   set(DSECOND_SRC  ${CLAPACK_SOURCE_DIR}/INSTALL/dsecnd.c)
- endif()
--enable_testing()
-+if(NOT BUILD_TESTING)
-+  enable_testing()
-+endif()
- option(USE_BLAS_WRAP "pre-pend f2c_ to each function in blas" OFF)
- if(NOT USE_BLAS_WRAP)
- # _zrotg_ seems to be missing in the wrap header
-@@ -21,7 +22,9 @@ include_directories(${CLAPACK_SOURCE_DIR}/INCLUDE)
- add_subdirectory(F2CLIBS)
- add_subdirectory(BLAS)
- add_subdirectory(SRC)
--add_subdirectory(TESTING)
-+if(NOT BUILD_TESTING)
-+  add_subdirectory(TESTING)
-+endif()
- set(CLAPACK_VERSION 3.2.1)
- set(CPACK_PACKAGE_VERSION_MAJOR 3)
- set(CPACK_PACKAGE_VERSION_MINOR 2)
-diff --git a/TESTING/CMakeLists.txt b/TESTING/CMakeLists.txt
-index d59359d..f6b083a 100644
---- a/TESTING/CMakeLists.txt
-+++ b/TESTING/CMakeLists.txt
-@@ -1,3 +1,7 @@
-+if(NOT BUILD_TESTING)
-+  return()
-+endif()
-+
- if(MSVC_VERSION)
- #  string(REPLACE "/STACK:10000000" "/STACK:900000000000000000"
- #    CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS}")
--- 
-1.8.5.3
-
diff --git a/package/clapack/clapack-0003-cmake-do-not-try-to-run-arithchk-when-cross-compilin.patch b/package/clapack/clapack-0003-cmake-do-not-try-to-run-arithchk-when-cross-compilin.patch
deleted file mode 100644 (file)
index cd9828f..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-From a2f0669fac1f8e7183b15cf7d14f0e99a2d8b012 Mon Sep 17 00:00:00 2001
-From: Samuel Martin <s.martin49@gmail.com>
-Date: Sat, 11 Jan 2014 21:47:39 +0100
-Subject: [PATCH 3/6] cmake: do not try to run arithchk when cross-compiling to
- generate sources
-
-Instead, use a predefined arith.h if provided, or generate a default one.
-
-The arithchk binary is still built (but not installed) to allow the user to
-run it on its target and use it; so then allowing to build an optimized
-blas library.
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
----
- F2CLIBS/libf2c/CMakeLists.txt | 38 ++++++++++++++++++++++++++++----------
- 1 file changed, 28 insertions(+), 10 deletions(-)
-
-diff --git a/F2CLIBS/libf2c/CMakeLists.txt b/F2CLIBS/libf2c/CMakeLists.txt
-index f98d66a..45a0804 100644
---- a/F2CLIBS/libf2c/CMakeLists.txt
-+++ b/F2CLIBS/libf2c/CMakeLists.txt
-@@ -38,17 +38,35 @@ set(TIME dtime_.c etime_.c)
- # For INTEGER*8 support (which requires system-dependent adjustments to
- # f2c.h), add ${QINT} to the OFILES  assignment below...
--add_executable(arithchk arithchk.c)
--if(UNIX)
--  target_link_libraries(arithchk m)
-+if(CMAKE_CROSSCOMPILING)
-+  if(ARITH_H)
-+    message(STATUS "Using the user-defined '${ARITH_H}' as arith.h header.")
-+    configure_file("${ARITH_H}" "${CMAKE_CURRENT_BINARY_DIR}/arith.h" COPYONLY)
-+  else()
-+    message(STATUS "No user-defined arith.h header.")
-+    if(NOT EXISTS "${CMAKE_CURRENT_BINARY_DIR}/arith.h")
-+      message(WARNING "Generating the default non-optimized 'arith.h' header.
-+
-+To generate and provide a custom arith.h header:
-+run the cross-compiled arithchk binary on your target,
-+and use its output to fill your custom arith.h header.")
-+      file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/arith.h"
-+        "/* default, not optimized arith.h */")
-+    endif()
-+  endif()
-+else()
-+  add_executable(arithchk arithchk.c)
-+  if(UNIX)
-+    target_link_libraries(arithchk m)
-+  endif()
-+  set_target_properties(arithchk PROPERTIES COMPILE_DEFINITIONS
-+    "NO_FPINIT;NO_LONG_LONG")
-+  ADD_CUSTOM_COMMAND(
-+     OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/arith.h
-+     COMMAND arithchk > ${CMAKE_CURRENT_BINARY_DIR}/arith.h
-+     DEPENDS arithchk
-+     )
- endif()
--set_target_properties(arithchk PROPERTIES COMPILE_DEFINITIONS 
--  "NO_FPINIT;NO_LONG_LONG")
--ADD_CUSTOM_COMMAND(
--   OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/arith.h
--   COMMAND arithchk > ${CMAKE_CURRENT_BINARY_DIR}/arith.h
--   DEPENDS arithchk
--   )
- set(OFILES  ${MISC} ${POW} ${CX} ${DCX} ${REAL} ${DBL} ${INT} 
--- 
-1.8.5.3
-
diff --git a/package/clapack/clapack-0004-cmake-blas-add-library-and-header-install-rules.patch b/package/clapack/clapack-0004-cmake-blas-add-library-and-header-install-rules.patch
deleted file mode 100644 (file)
index e83b066..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-From 675111e8ffc179276a7e4950fe4a4eda4d38a703 Mon Sep 17 00:00:00 2001
-From: Samuel Martin <s.martin49@gmail.com>
-Date: Sat, 11 Jan 2014 21:48:32 +0100
-Subject: [PATCH 4/6] cmake: blas: add library and header install rules
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
----
- BLAS/SRC/CMakeLists.txt | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/BLAS/SRC/CMakeLists.txt b/BLAS/SRC/CMakeLists.txt
-index d1caff8..a5de5a1 100644
---- a/BLAS/SRC/CMakeLists.txt
-+++ b/BLAS/SRC/CMakeLists.txt
-@@ -141,3 +141,5 @@ if(UNIX)
-   target_link_libraries(blas m)
- endif()
- target_link_libraries(blas f2c)
-+install(TARGETS blas LIBRARY DESTINATION lib ARCHIVE DESTINATION lib)
-+install(FILES "${CLAPACK_SOURCE_DIR}/INCLUDE/blaswrap.h" DESTINATION include)
--- 
-1.8.5.3
-
diff --git a/package/clapack/clapack-0005-cmake-lapack-add-library-and-header-install-rules.patch b/package/clapack/clapack-0005-cmake-lapack-add-library-and-header-install-rules.patch
deleted file mode 100644 (file)
index abba460..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-From 9dfac0d55a31be59a856bad9d3a5071d65176597 Mon Sep 17 00:00:00 2001
-From: Samuel Martin <s.martin49@gmail.com>
-Date: Sat, 11 Jan 2014 21:49:22 +0100
-Subject: [PATCH 5/6] cmake: lapack: add library and header install rules
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
----
- SRC/CMakeLists.txt | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/SRC/CMakeLists.txt b/SRC/CMakeLists.txt
-index ac4cce3..aa60555 100644
---- a/SRC/CMakeLists.txt
-+++ b/SRC/CMakeLists.txt
-@@ -377,4 +377,5 @@ if(BUILD_COMPLEX16)
- endif()
- add_library(lapack ${ALLOBJ} ${ALLXOBJ})
- target_link_libraries(lapack blas)
--
-+install(TARGETS lapack LIBRARY DESTINATION lib ARCHIVE DESTINATION lib)
-+install(FILES "${CLAPACK_SOURCE_DIR}/INCLUDE/clapack.h" DESTINATION include)
--- 
-1.8.5.3
-
diff --git a/package/classpath/0001-fix-gmp-include.patch b/package/classpath/0001-fix-gmp-include.patch
new file mode 100644 (file)
index 0000000..f7a3920
--- /dev/null
@@ -0,0 +1,46 @@
+The GMP include is hardcoded to /usr/include causing obvious problems.
+
+From classpath CVS:
+http://cvs.savannah.gnu.org/viewvc/classpath/configure.ac?root=classpath&r1=1.245&r2=1.246
+
+[Gustavo: ditch -L or libtool complains loudly]
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+--- a/configure.ac     2010/01/30 01:33:50     1.245
++++ b/configure.ac     2010/05/04 12:29:23     1.246
+@@ -752,10 +752,32 @@
+   dnl __gmpz_mul_si for earlier versions (>= 3.1).
+   dnl IMPORTANT: if you decide to look for __gmpz_combit, don't forget to
+   dnl change the name of the corresponding ac_ variable on lines 860...
++  AC_ARG_WITH(gmp, [  --with-gmp=PATH         specify prefix directory for the installed GMP package.
++                          Equivalent to --with-gmp-include=PATH/include
++                          plus --with-gmp-lib=PATH/lib])
++  AC_ARG_WITH(gmp_include, [  --with-gmp-include=PATH specify directory for installed GMP include files])
++  AC_ARG_WITH(gmp_lib, [  --with-gmp-lib=PATH     specify directory for the installed GMP library])
++
+   if test "x${COMPILE_GMP}" = xyes; then
++    AC_MSG_CHECKING([for GMP directories])
++    if test "x$with_gmp" != x; then
++       gmplibs="-lgmp"
++       gmpinc="-I$with_gmp/include"
++       if test "x$with_gmp_include" != x; then
++                gmpinc="-I$with_gmp_include $gmpinc"
++       fi
++       if test "x$with_gmp_lib" != x; then
++                gmplibs="$gmplibs"
++       fi
++    else
++        with_gmp="/usr"
++      gmplibs="-lgmp"
++      gmpinc="-I/usr/include"
++    fi
++    AC_MSG_RESULT([prefix=$with_gmp, libs=$gmplibs, inc=$gmpinc])
+     AC_CHECK_LIB(gmp, __gmpz_mul_si,
+-      [GMP_CFLAGS=-I/usr/include
+-       GMP_LIBS=-lgmp ],
++      [GMP_CFLAGS="$gmpinc"
++       GMP_LIBS="$gmplibs" ],
+       [GMP_CFLAGS=
+        GMP_LIBS= ])
+     AC_SUBST(GMP_CFLAGS)
diff --git a/package/classpath/0002-add-config-rpath.patch b/package/classpath/0002-add-config-rpath.patch
new file mode 100644 (file)
index 0000000..3a8a7d0
--- /dev/null
@@ -0,0 +1,680 @@
+Add config.rpath from upstream CVS to avoid (re)autoconfiguring errors.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura classpath-0.98.orig/config.rpath classpath-0.98/config.rpath
+--- classpath-0.98.orig/config.rpath   1969-12-31 21:00:00.000000000 -0300
++++ classpath-0.98/config.rpath        2013-07-10 09:36:51.894281025 -0300
+@@ -0,0 +1,672 @@
++#! /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-2010 Free Software Foundation, Inc.
++#   Taken from GNU libtool, 2001
++#   Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
++#
++#   This file is free software; the Free Software Foundation gives
++#   unlimited permission to copy and/or distribute it, with or without
++#   modifications, as long as this notice is preserved.
++#
++# 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 MSVC,
++# 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 _LT_CC_BASENAME.
++
++for cc_temp in $CC""; do
++  case $cc_temp in
++    compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
++    distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
++    \-*) ;;
++    *) break;;
++  esac
++done
++cc_basename=`echo "$cc_temp" | sed -e 's%^.*/%%'`
++
++# Code taken from libtool.m4's _LT_COMPILER_PIC.
++
++wl=
++if test "$GCC" = yes; then
++  wl='-Wl,'
++else
++  case "$host_os" in
++    aix*)
++      wl='-Wl,'
++      ;;
++    darwin*)
++      case $cc_basename in
++        xlc*)
++          wl='-Wl,'
++          ;;
++      esac
++      ;;
++    mingw* | cygwin* | pw32* | os2* | cegcc*)
++      ;;
++    hpux9* | hpux10* | hpux11*)
++      wl='-Wl,'
++      ;;
++    irix5* | irix6* | nonstopux*)
++      wl='-Wl,'
++      ;;
++    newsos6)
++      ;;
++    linux* | k*bsd*-gnu)
++      case $cc_basename in
++        ecc*)
++          wl='-Wl,'
++          ;;
++        icc* | ifort*)
++          wl='-Wl,'
++          ;;
++        lf95*)
++          wl='-Wl,'
++          ;;
++        pgcc | pgf77 | pgf90)
++          wl='-Wl,'
++          ;;
++        ccc*)
++          wl='-Wl,'
++          ;;
++        como)
++          wl='-lopt='
++          ;;
++        *)
++          case `$CC -V 2>&1 | sed 5q` in
++            *Sun\ C*)
++              wl='-Wl,'
++              ;;
++          esac
++          ;;
++      esac
++      ;;
++    osf3* | osf4* | osf5*)
++      wl='-Wl,'
++      ;;
++    rdos*)
++      ;;
++    solaris*)
++      wl='-Wl,'
++      ;;
++    sunos4*)
++      wl='-Qoption ld '
++      ;;
++    sysv4 | sysv4.2uw2* | sysv4.3*)
++      wl='-Wl,'
++      ;;
++    sysv4*MP*)
++      ;;
++    sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
++      wl='-Wl,'
++      ;;
++    unicos*)
++      wl='-Wl,'
++      ;;
++    uts4*)
++      ;;
++  esac
++fi
++
++# Code taken from libtool.m4's _LT_LINKER_SHLIBS.
++
++hardcode_libdir_flag_spec=
++hardcode_libdir_separator=
++hardcode_direct=no
++hardcode_minus_L=no
++
++case "$host_os" in
++  cygwin* | mingw* | pw32* | cegcc*)
++    # 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
++    ;;
++  interix*)
++    # we just hope/assume this is gcc and not c89 (= MSVC++)
++    with_gnu_ld=yes
++    ;;
++  openbsd*)
++    with_gnu_ld=no
++    ;;
++esac
++
++ld_shlibs=yes
++if test "$with_gnu_ld" = yes; then
++  # Set some defaults for GNU ld with shared library support. These
++  # are reset later if shared libraries are not supported. Putting them
++  # here allows them to be overridden if necessary.
++  # 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'
++  case "$host_os" in
++    aix[3-9]*)
++      # 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 <kc5tja@dolphin.openprojects.net> 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 cannot 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* | cegcc*)
++      # 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
++      ;;
++    interix[3-9]*)
++      hardcode_direct=no
++      hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
++      ;;
++    gnu* | linux* | k*bsd*-gnu)
++      if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
++        :
++      else
++        ld_shlibs=no
++      fi
++      ;;
++    netbsd*)
++      ;;
++    solaris*)
++      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
++      ;;
++    sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
++      case `$LD -v 2>&1` in
++        *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*)
++          ld_shlibs=no
++          ;;
++        *)
++          if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
++            hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-rpath,$libdir`'
++          else
++            ld_shlibs=no
++          fi
++          ;;
++      esac
++      ;;
++    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" = no; then
++    hardcode_libdir_flag_spec=
++  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
++      ;;
++    aix[4-9]*)
++      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].*|aix[5-9]*)
++          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
++            :
++          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
++      ;;
++    bsdi[45]*)
++      ;;
++    cygwin* | mingw* | pw32* | cegcc*)
++      # 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*)
++      hardcode_direct=no
++      if test "$GCC" = yes ; then
++        :
++      else
++        case $cc_basename in
++          xlc*)
++            ;;
++          *)
++            ld_shlibs=no
++            ;;
++        esac
++      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* | dragonfly*)
++      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*)
++      if test "$with_gnu_ld" = no; then
++        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
++      fi
++      ;;
++    hpux11*)
++      if test "$with_gnu_ld" = no; then
++        hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
++        hardcode_libdir_separator=:
++        case $host_cpu in
++          hppa*64*|ia64*)
++            hardcode_direct=no
++            ;;
++          *)
++            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*)
++      if test -f /usr/libexec/ld.so; then
++        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
++      else
++        ld_shlibs=no
++      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=:
++      ;;
++    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*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)
++      ;;
++    sysv5* | sco3.2v5* | sco5v6*)
++      hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`'
++      hardcode_libdir_separator=':'
++      ;;
++    uts4*)
++      hardcode_libdir_flag_spec='-L$libdir'
++      ;;
++    *)
++      ld_shlibs=no
++      ;;
++  esac
++fi
++
++# Check dynamic linker characteristics
++# Code taken from libtool.m4's _LT_SYS_DYNAMIC_LINKER.
++# Unlike libtool.m4, here we don't care about _all_ names of the library, but
++# only about the one the linker finds when passed -lNAME. This is the last
++# element of library_names_spec in libtool.m4, or possibly two of them if the
++# linker has special search rules.
++library_names_spec=      # the last element of library_names_spec in libtool.m4
++libname_spec='lib$name'
++case "$host_os" in
++  aix3*)
++    library_names_spec='$libname.a'
++    ;;
++  aix[4-9]*)
++    library_names_spec='$libname$shrext'
++    ;;
++  amigaos*)
++    library_names_spec='$libname.a'
++    ;;
++  beos*)
++    library_names_spec='$libname$shrext'
++    ;;
++  bsdi[45]*)
++    library_names_spec='$libname$shrext'
++    ;;
++  cygwin* | mingw* | pw32* | cegcc*)
++    shrext=.dll
++    library_names_spec='$libname.dll.a $libname.lib'
++    ;;
++  darwin* | rhapsody*)
++    shrext=.dylib
++    library_names_spec='$libname$shrext'
++    ;;
++  dgux*)
++    library_names_spec='$libname$shrext'
++    ;;
++  freebsd1*)
++    ;;
++  freebsd* | dragonfly*)
++    case "$host_os" in
++      freebsd[123]*)
++        library_names_spec='$libname$shrext$versuffix' ;;
++      *)
++        library_names_spec='$libname$shrext' ;;
++    esac
++    ;;
++  gnu*)
++    library_names_spec='$libname$shrext'
++    ;;
++  hpux9* | hpux10* | hpux11*)
++    case $host_cpu in
++      ia64*)
++        shrext=.so
++        ;;
++      hppa*64*)
++        shrext=.sl
++        ;;
++      *)
++        shrext=.sl
++        ;;
++    esac
++    library_names_spec='$libname$shrext'
++    ;;
++  interix[3-9]*)
++    library_names_spec='$libname$shrext'
++    ;;
++  irix5* | irix6* | nonstopux*)
++    library_names_spec='$libname$shrext'
++    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* | k*bsd*-gnu)
++    library_names_spec='$libname$shrext'
++    ;;
++  knetbsd*-gnu)
++    library_names_spec='$libname$shrext'
++    ;;
++  netbsd*)
++    library_names_spec='$libname$shrext'
++    ;;
++  newsos6)
++    library_names_spec='$libname$shrext'
++    ;;
++  nto-qnx*)
++    library_names_spec='$libname$shrext'
++    ;;
++  openbsd*)
++    library_names_spec='$libname$shrext$versuffix'
++    ;;
++  os2*)
++    libname_spec='$name'
++    shrext=.dll
++    library_names_spec='$libname.a'
++    ;;
++  osf3* | osf4* | osf5*)
++    library_names_spec='$libname$shrext'
++    ;;
++  rdos*)
++    ;;
++  solaris*)
++    library_names_spec='$libname$shrext'
++    ;;
++  sunos4*)
++    library_names_spec='$libname$shrext$versuffix'
++    ;;
++  sysv4 | sysv4.3*)
++    library_names_spec='$libname$shrext'
++    ;;
++  sysv4*MP*)
++    library_names_spec='$libname$shrext'
++    ;;
++  sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
++    library_names_spec='$libname$shrext'
++    ;;
++  uts4*)
++    library_names_spec='$libname$shrext'
++    ;;
++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_libname_spec=`echo "X$libname_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
++escaped_library_names_spec=`echo "X$library_names_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
++escaped_hardcode_libdir_flag_spec=`echo "X$hardcode_libdir_flag_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
++
++LC_ALL=C sed -e 's/^\([a-zA-Z0-9_]*\)=/acl_cv_\1=/' <<EOF
++
++# How to pass a linker flag through the compiler.
++wl="$escaped_wl"
++
++# Static library suffix (normally "a").
++libext="$libext"
++
++# Shared library suffix (normally "so").
++shlibext="$shlibext"
++
++# Format of library name prefix.
++libname_spec="$escaped_libname_spec"
++
++# Library names that the linker finds when passed -lNAME.
++library_names_spec="$escaped_library_names_spec"
++
++# Flag to hardcode \$libdir into a binary during linking.
++# This must work even if \$libdir does not exist.
++hardcode_libdir_flag_spec="$escaped_hardcode_libdir_flag_spec"
++
++# Whether we need a single -rpath flag with a separated argument.
++hardcode_libdir_separator="$hardcode_libdir_separator"
++
++# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the
++# resulting binary.
++hardcode_direct="$hardcode_direct"
++
++# Set to yes if using the -LDIR flag during linking hardcodes DIR into the
++# resulting binary.
++hardcode_minus_L="$hardcode_minus_L"
++
++EOF
diff --git a/package/classpath/classpath-01-fix-gmp-include.patch b/package/classpath/classpath-01-fix-gmp-include.patch
deleted file mode 100644 (file)
index f7a3920..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-The GMP include is hardcoded to /usr/include causing obvious problems.
-
-From classpath CVS:
-http://cvs.savannah.gnu.org/viewvc/classpath/configure.ac?root=classpath&r1=1.245&r2=1.246
-
-[Gustavo: ditch -L or libtool complains loudly]
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
---- a/configure.ac     2010/01/30 01:33:50     1.245
-+++ b/configure.ac     2010/05/04 12:29:23     1.246
-@@ -752,10 +752,32 @@
-   dnl __gmpz_mul_si for earlier versions (>= 3.1).
-   dnl IMPORTANT: if you decide to look for __gmpz_combit, don't forget to
-   dnl change the name of the corresponding ac_ variable on lines 860...
-+  AC_ARG_WITH(gmp, [  --with-gmp=PATH         specify prefix directory for the installed GMP package.
-+                          Equivalent to --with-gmp-include=PATH/include
-+                          plus --with-gmp-lib=PATH/lib])
-+  AC_ARG_WITH(gmp_include, [  --with-gmp-include=PATH specify directory for installed GMP include files])
-+  AC_ARG_WITH(gmp_lib, [  --with-gmp-lib=PATH     specify directory for the installed GMP library])
-+
-   if test "x${COMPILE_GMP}" = xyes; then
-+    AC_MSG_CHECKING([for GMP directories])
-+    if test "x$with_gmp" != x; then
-+       gmplibs="-lgmp"
-+       gmpinc="-I$with_gmp/include"
-+       if test "x$with_gmp_include" != x; then
-+                gmpinc="-I$with_gmp_include $gmpinc"
-+       fi
-+       if test "x$with_gmp_lib" != x; then
-+                gmplibs="$gmplibs"
-+       fi
-+    else
-+        with_gmp="/usr"
-+      gmplibs="-lgmp"
-+      gmpinc="-I/usr/include"
-+    fi
-+    AC_MSG_RESULT([prefix=$with_gmp, libs=$gmplibs, inc=$gmpinc])
-     AC_CHECK_LIB(gmp, __gmpz_mul_si,
--      [GMP_CFLAGS=-I/usr/include
--       GMP_LIBS=-lgmp ],
-+      [GMP_CFLAGS="$gmpinc"
-+       GMP_LIBS="$gmplibs" ],
-       [GMP_CFLAGS=
-        GMP_LIBS= ])
-     AC_SUBST(GMP_CFLAGS)
diff --git a/package/classpath/classpath-02-add-config-rpath.patch b/package/classpath/classpath-02-add-config-rpath.patch
deleted file mode 100644 (file)
index 3a8a7d0..0000000
+++ /dev/null
@@ -1,680 +0,0 @@
-Add config.rpath from upstream CVS to avoid (re)autoconfiguring errors.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura classpath-0.98.orig/config.rpath classpath-0.98/config.rpath
---- classpath-0.98.orig/config.rpath   1969-12-31 21:00:00.000000000 -0300
-+++ classpath-0.98/config.rpath        2013-07-10 09:36:51.894281025 -0300
-@@ -0,0 +1,672 @@
-+#! /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-2010 Free Software Foundation, Inc.
-+#   Taken from GNU libtool, 2001
-+#   Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
-+#
-+#   This file is free software; the Free Software Foundation gives
-+#   unlimited permission to copy and/or distribute it, with or without
-+#   modifications, as long as this notice is preserved.
-+#
-+# 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 MSVC,
-+# 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 _LT_CC_BASENAME.
-+
-+for cc_temp in $CC""; do
-+  case $cc_temp in
-+    compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
-+    distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
-+    \-*) ;;
-+    *) break;;
-+  esac
-+done
-+cc_basename=`echo "$cc_temp" | sed -e 's%^.*/%%'`
-+
-+# Code taken from libtool.m4's _LT_COMPILER_PIC.
-+
-+wl=
-+if test "$GCC" = yes; then
-+  wl='-Wl,'
-+else
-+  case "$host_os" in
-+    aix*)
-+      wl='-Wl,'
-+      ;;
-+    darwin*)
-+      case $cc_basename in
-+        xlc*)
-+          wl='-Wl,'
-+          ;;
-+      esac
-+      ;;
-+    mingw* | cygwin* | pw32* | os2* | cegcc*)
-+      ;;
-+    hpux9* | hpux10* | hpux11*)
-+      wl='-Wl,'
-+      ;;
-+    irix5* | irix6* | nonstopux*)
-+      wl='-Wl,'
-+      ;;
-+    newsos6)
-+      ;;
-+    linux* | k*bsd*-gnu)
-+      case $cc_basename in
-+        ecc*)
-+          wl='-Wl,'
-+          ;;
-+        icc* | ifort*)
-+          wl='-Wl,'
-+          ;;
-+        lf95*)
-+          wl='-Wl,'
-+          ;;
-+        pgcc | pgf77 | pgf90)
-+          wl='-Wl,'
-+          ;;
-+        ccc*)
-+          wl='-Wl,'
-+          ;;
-+        como)
-+          wl='-lopt='
-+          ;;
-+        *)
-+          case `$CC -V 2>&1 | sed 5q` in
-+            *Sun\ C*)
-+              wl='-Wl,'
-+              ;;
-+          esac
-+          ;;
-+      esac
-+      ;;
-+    osf3* | osf4* | osf5*)
-+      wl='-Wl,'
-+      ;;
-+    rdos*)
-+      ;;
-+    solaris*)
-+      wl='-Wl,'
-+      ;;
-+    sunos4*)
-+      wl='-Qoption ld '
-+      ;;
-+    sysv4 | sysv4.2uw2* | sysv4.3*)
-+      wl='-Wl,'
-+      ;;
-+    sysv4*MP*)
-+      ;;
-+    sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
-+      wl='-Wl,'
-+      ;;
-+    unicos*)
-+      wl='-Wl,'
-+      ;;
-+    uts4*)
-+      ;;
-+  esac
-+fi
-+
-+# Code taken from libtool.m4's _LT_LINKER_SHLIBS.
-+
-+hardcode_libdir_flag_spec=
-+hardcode_libdir_separator=
-+hardcode_direct=no
-+hardcode_minus_L=no
-+
-+case "$host_os" in
-+  cygwin* | mingw* | pw32* | cegcc*)
-+    # 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
-+    ;;
-+  interix*)
-+    # we just hope/assume this is gcc and not c89 (= MSVC++)
-+    with_gnu_ld=yes
-+    ;;
-+  openbsd*)
-+    with_gnu_ld=no
-+    ;;
-+esac
-+
-+ld_shlibs=yes
-+if test "$with_gnu_ld" = yes; then
-+  # Set some defaults for GNU ld with shared library support. These
-+  # are reset later if shared libraries are not supported. Putting them
-+  # here allows them to be overridden if necessary.
-+  # 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'
-+  case "$host_os" in
-+    aix[3-9]*)
-+      # 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 <kc5tja@dolphin.openprojects.net> 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 cannot 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* | cegcc*)
-+      # 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
-+      ;;
-+    interix[3-9]*)
-+      hardcode_direct=no
-+      hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
-+      ;;
-+    gnu* | linux* | k*bsd*-gnu)
-+      if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
-+        :
-+      else
-+        ld_shlibs=no
-+      fi
-+      ;;
-+    netbsd*)
-+      ;;
-+    solaris*)
-+      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
-+      ;;
-+    sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
-+      case `$LD -v 2>&1` in
-+        *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*)
-+          ld_shlibs=no
-+          ;;
-+        *)
-+          if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then
-+            hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-rpath,$libdir`'
-+          else
-+            ld_shlibs=no
-+          fi
-+          ;;
-+      esac
-+      ;;
-+    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" = no; then
-+    hardcode_libdir_flag_spec=
-+  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
-+      ;;
-+    aix[4-9]*)
-+      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].*|aix[5-9]*)
-+          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
-+            :
-+          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
-+      ;;
-+    bsdi[45]*)
-+      ;;
-+    cygwin* | mingw* | pw32* | cegcc*)
-+      # 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*)
-+      hardcode_direct=no
-+      if test "$GCC" = yes ; then
-+        :
-+      else
-+        case $cc_basename in
-+          xlc*)
-+            ;;
-+          *)
-+            ld_shlibs=no
-+            ;;
-+        esac
-+      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* | dragonfly*)
-+      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*)
-+      if test "$with_gnu_ld" = no; then
-+        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
-+      fi
-+      ;;
-+    hpux11*)
-+      if test "$with_gnu_ld" = no; then
-+        hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir'
-+        hardcode_libdir_separator=:
-+        case $host_cpu in
-+          hppa*64*|ia64*)
-+            hardcode_direct=no
-+            ;;
-+          *)
-+            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*)
-+      if test -f /usr/libexec/ld.so; then
-+        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
-+      else
-+        ld_shlibs=no
-+      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=:
-+      ;;
-+    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*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)
-+      ;;
-+    sysv5* | sco3.2v5* | sco5v6*)
-+      hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`'
-+      hardcode_libdir_separator=':'
-+      ;;
-+    uts4*)
-+      hardcode_libdir_flag_spec='-L$libdir'
-+      ;;
-+    *)
-+      ld_shlibs=no
-+      ;;
-+  esac
-+fi
-+
-+# Check dynamic linker characteristics
-+# Code taken from libtool.m4's _LT_SYS_DYNAMIC_LINKER.
-+# Unlike libtool.m4, here we don't care about _all_ names of the library, but
-+# only about the one the linker finds when passed -lNAME. This is the last
-+# element of library_names_spec in libtool.m4, or possibly two of them if the
-+# linker has special search rules.
-+library_names_spec=      # the last element of library_names_spec in libtool.m4
-+libname_spec='lib$name'
-+case "$host_os" in
-+  aix3*)
-+    library_names_spec='$libname.a'
-+    ;;
-+  aix[4-9]*)
-+    library_names_spec='$libname$shrext'
-+    ;;
-+  amigaos*)
-+    library_names_spec='$libname.a'
-+    ;;
-+  beos*)
-+    library_names_spec='$libname$shrext'
-+    ;;
-+  bsdi[45]*)
-+    library_names_spec='$libname$shrext'
-+    ;;
-+  cygwin* | mingw* | pw32* | cegcc*)
-+    shrext=.dll
-+    library_names_spec='$libname.dll.a $libname.lib'
-+    ;;
-+  darwin* | rhapsody*)
-+    shrext=.dylib
-+    library_names_spec='$libname$shrext'
-+    ;;
-+  dgux*)
-+    library_names_spec='$libname$shrext'
-+    ;;
-+  freebsd1*)
-+    ;;
-+  freebsd* | dragonfly*)
-+    case "$host_os" in
-+      freebsd[123]*)
-+        library_names_spec='$libname$shrext$versuffix' ;;
-+      *)
-+        library_names_spec='$libname$shrext' ;;
-+    esac
-+    ;;
-+  gnu*)
-+    library_names_spec='$libname$shrext'
-+    ;;
-+  hpux9* | hpux10* | hpux11*)
-+    case $host_cpu in
-+      ia64*)
-+        shrext=.so
-+        ;;
-+      hppa*64*)
-+        shrext=.sl
-+        ;;
-+      *)
-+        shrext=.sl
-+        ;;
-+    esac
-+    library_names_spec='$libname$shrext'
-+    ;;
-+  interix[3-9]*)
-+    library_names_spec='$libname$shrext'
-+    ;;
-+  irix5* | irix6* | nonstopux*)
-+    library_names_spec='$libname$shrext'
-+    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* | k*bsd*-gnu)
-+    library_names_spec='$libname$shrext'
-+    ;;
-+  knetbsd*-gnu)
-+    library_names_spec='$libname$shrext'
-+    ;;
-+  netbsd*)
-+    library_names_spec='$libname$shrext'
-+    ;;
-+  newsos6)
-+    library_names_spec='$libname$shrext'
-+    ;;
-+  nto-qnx*)
-+    library_names_spec='$libname$shrext'
-+    ;;
-+  openbsd*)
-+    library_names_spec='$libname$shrext$versuffix'
-+    ;;
-+  os2*)
-+    libname_spec='$name'
-+    shrext=.dll
-+    library_names_spec='$libname.a'
-+    ;;
-+  osf3* | osf4* | osf5*)
-+    library_names_spec='$libname$shrext'
-+    ;;
-+  rdos*)
-+    ;;
-+  solaris*)
-+    library_names_spec='$libname$shrext'
-+    ;;
-+  sunos4*)
-+    library_names_spec='$libname$shrext$versuffix'
-+    ;;
-+  sysv4 | sysv4.3*)
-+    library_names_spec='$libname$shrext'
-+    ;;
-+  sysv4*MP*)
-+    library_names_spec='$libname$shrext'
-+    ;;
-+  sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
-+    library_names_spec='$libname$shrext'
-+    ;;
-+  uts4*)
-+    library_names_spec='$libname$shrext'
-+    ;;
-+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_libname_spec=`echo "X$libname_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
-+escaped_library_names_spec=`echo "X$library_names_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
-+escaped_hardcode_libdir_flag_spec=`echo "X$hardcode_libdir_flag_spec" | sed -e 's/^X//' -e "$sed_quote_subst"`
-+
-+LC_ALL=C sed -e 's/^\([a-zA-Z0-9_]*\)=/acl_cv_\1=/' <<EOF
-+
-+# How to pass a linker flag through the compiler.
-+wl="$escaped_wl"
-+
-+# Static library suffix (normally "a").
-+libext="$libext"
-+
-+# Shared library suffix (normally "so").
-+shlibext="$shlibext"
-+
-+# Format of library name prefix.
-+libname_spec="$escaped_libname_spec"
-+
-+# Library names that the linker finds when passed -lNAME.
-+library_names_spec="$escaped_library_names_spec"
-+
-+# Flag to hardcode \$libdir into a binary during linking.
-+# This must work even if \$libdir does not exist.
-+hardcode_libdir_flag_spec="$escaped_hardcode_libdir_flag_spec"
-+
-+# Whether we need a single -rpath flag with a separated argument.
-+hardcode_libdir_separator="$hardcode_libdir_separator"
-+
-+# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the
-+# resulting binary.
-+hardcode_direct="$hardcode_direct"
-+
-+# Set to yes if using the -LDIR flag during linking hardcodes DIR into the
-+# resulting binary.
-+hardcode_minus_L="$hardcode_minus_L"
-+
-+EOF
diff --git a/package/cloog/0001-add-missing-files.patch b/package/cloog/0001-add-missing-files.patch
new file mode 100644 (file)
index 0000000..23743cc
--- /dev/null
@@ -0,0 +1,69 @@
+Add CMake related files missing from the release tarball
+
+Due to a bug in the cloog release, a few files were missing from the
+release tarball. This patch re-adds those files, which are needed for
+the build to work. This patch can be dropped when cloog is bumped.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/cmake/isl-config.cmake
+===================================================================
+--- /dev/null
++++ b/cmake/isl-config.cmake
+@@ -0,0 +1,25 @@
++# Try to find the isl library
++
++# ISL_FOUND       - System has isl lib
++# ISL_INCLUDE_DIR - The isl include directory
++# ISL_LIBRARY     - Library needed to use isl
++
++
++if (ISL_INCLUDE_DIR AND ISL_LIBRARY)
++      # Already in cache, be silent
++      set(ISL_FIND_QUIETLY TRUE)
++endif()
++
++find_path(ISL_INCLUDE_DIR NAMES isl/version.h)
++find_library(ISL_LIBRARY NAMES isl)
++
++if (ISL_LIBRARY AND ISL_INCLUDE_DIR)
++      message(STATUS "Library isl found =) ${ISL_LIBRARY}")
++else()
++      message(STATUS "Library isl not found =(")
++endif()
++
++include(FindPackageHandleStandardArgs)
++FIND_PACKAGE_HANDLE_STANDARD_ARGS(ISL DEFAULT_MSG ISL_INCLUDE_DIR ISL_LIBRARY)
++
++mark_as_advanced(ISL_INCLUDE_DIR ISL_LIBRARY)
+Index: b/cmake/cloog-isl-config.cmake
+===================================================================
+--- /dev/null
++++ b/cmake/cloog-isl-config.cmake
+@@ -0,0 +1,26 @@
++# Try to find the cloog-isl library
++
++# CLOOG_ISL_FOUND       - System has cloog-isl lib
++# CLOOG_ISL_INCLUDE_DIR - The cloog-isl include directory
++# CLOOG_ISL_LIBRARY     - Library needed to use cloog-isl
++
++
++if (CLOOG_ISL_INCLUDE_DIR AND CLOOG_ISL_LIBRARY)
++      # Already in cache, be silent
++      set(CLOOG_ISL_FIND_QUIETLY TRUE)
++endif()
++
++find_path(CLOOG_ISL_INCLUDE_DIR NAMES cloog/isl/cloog.h)
++find_library(CLOOG_ISL_LIBRARY NAMES cloog-isl)
++
++if (CLOOG_ISL_LIBRARY AND CLOOG_ISL_INCLUDE_DIR)
++      message(STATUS "Library cloog-isl found =) ${CLOOG_ISL_LIBRARY}")
++else()
++      message(STATUS "Library cloog-isl not found =(")
++endif()
++
++
++include(FindPackageHandleStandardArgs)
++FIND_PACKAGE_HANDLE_STANDARD_ARGS(CLOOG_ISL DEFAULT_MSG CLOOG_ISL_INCLUDE_DIR CLOOG_ISL_LIBRARY)
++
++mark_as_advanced(CLOOG_ISL_INCLUDE_DIR CLOOG_ISL_LIBRARY)
diff --git a/package/cloog/cloog-0001-add-missing-files.patch b/package/cloog/cloog-0001-add-missing-files.patch
deleted file mode 100644 (file)
index 23743cc..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-Add CMake related files missing from the release tarball
-
-Due to a bug in the cloog release, a few files were missing from the
-release tarball. This patch re-adds those files, which are needed for
-the build to work. This patch can be dropped when cloog is bumped.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/cmake/isl-config.cmake
-===================================================================
---- /dev/null
-+++ b/cmake/isl-config.cmake
-@@ -0,0 +1,25 @@
-+# Try to find the isl library
-+
-+# ISL_FOUND       - System has isl lib
-+# ISL_INCLUDE_DIR - The isl include directory
-+# ISL_LIBRARY     - Library needed to use isl
-+
-+
-+if (ISL_INCLUDE_DIR AND ISL_LIBRARY)
-+      # Already in cache, be silent
-+      set(ISL_FIND_QUIETLY TRUE)
-+endif()
-+
-+find_path(ISL_INCLUDE_DIR NAMES isl/version.h)
-+find_library(ISL_LIBRARY NAMES isl)
-+
-+if (ISL_LIBRARY AND ISL_INCLUDE_DIR)
-+      message(STATUS "Library isl found =) ${ISL_LIBRARY}")
-+else()
-+      message(STATUS "Library isl not found =(")
-+endif()
-+
-+include(FindPackageHandleStandardArgs)
-+FIND_PACKAGE_HANDLE_STANDARD_ARGS(ISL DEFAULT_MSG ISL_INCLUDE_DIR ISL_LIBRARY)
-+
-+mark_as_advanced(ISL_INCLUDE_DIR ISL_LIBRARY)
-Index: b/cmake/cloog-isl-config.cmake
-===================================================================
---- /dev/null
-+++ b/cmake/cloog-isl-config.cmake
-@@ -0,0 +1,26 @@
-+# Try to find the cloog-isl library
-+
-+# CLOOG_ISL_FOUND       - System has cloog-isl lib
-+# CLOOG_ISL_INCLUDE_DIR - The cloog-isl include directory
-+# CLOOG_ISL_LIBRARY     - Library needed to use cloog-isl
-+
-+
-+if (CLOOG_ISL_INCLUDE_DIR AND CLOOG_ISL_LIBRARY)
-+      # Already in cache, be silent
-+      set(CLOOG_ISL_FIND_QUIETLY TRUE)
-+endif()
-+
-+find_path(CLOOG_ISL_INCLUDE_DIR NAMES cloog/isl/cloog.h)
-+find_library(CLOOG_ISL_LIBRARY NAMES cloog-isl)
-+
-+if (CLOOG_ISL_LIBRARY AND CLOOG_ISL_INCLUDE_DIR)
-+      message(STATUS "Library cloog-isl found =) ${CLOOG_ISL_LIBRARY}")
-+else()
-+      message(STATUS "Library cloog-isl not found =(")
-+endif()
-+
-+
-+include(FindPackageHandleStandardArgs)
-+FIND_PACKAGE_HANDLE_STANDARD_ARGS(CLOOG_ISL DEFAULT_MSG CLOOG_ISL_INCLUDE_DIR CLOOG_ISL_LIBRARY)
-+
-+mark_as_advanced(CLOOG_ISL_INCLUDE_DIR CLOOG_ISL_LIBRARY)
diff --git a/package/cloop/0001-cflags.patch b/package/cloop/0001-cflags.patch
new file mode 100644 (file)
index 0000000..c421dd7
--- /dev/null
@@ -0,0 +1,30 @@
+Take into account the CFLAGS/LDFLAGS passed in the environment.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: host-cloop-2.634-1/Makefile
+===================================================================
+--- host-cloop-2.634-1.orig/Makefile   2010-12-16 09:17:52.826555645 +0100
++++ host-cloop-2.634-1/Makefile        2010-12-16 09:18:57.208713338 +0100
+@@ -15,7 +15,7 @@
+ endif
+ ifdef APPSONLY
+-CFLAGS:=-Wall -Wstrict-prototypes -Wno-trigraphs -O2 -s -I. -fno-strict-aliasing -fno-common -fomit-frame-pointer 
++CLOOP_CFLAGS:=-Wall -Wstrict-prototypes -Wno-trigraphs -O2 -s -I. -fno-strict-aliasing -fno-common -fomit-frame-pointer 
+ endif
+ KERNOBJ:=compressed_loop.o
+@@ -53,10 +53,10 @@
+       ( cd advancecomp-1.15 ; ./configure && $(MAKE) advfs )
+ extract_compressed_fs: extract_compressed_fs.c
+-      $(CC) -Wall -O2 -s -o $@ $< -lz
++      $(CC) $(CFLAGS) $(CLOOP_CFLAGS) $(LDFLAGS) -Wall -O2 -s -o $@ $< -lz
+ cloop_suspend: cloop_suspend.o
+-      $(CC) -o $@ $<
++      $(CC) $(CFLAGS) $(CLOOP_CFLAGS) $(LDFLAGS) -o $@ $<
+ clean:
+       rm -rf create_compressed_fs extract_compressed_fs zoom *.o *.ko Module.symvers .cloop* .compressed_loop.* .tmp*
diff --git a/package/cloop/cloop-2.634-1-cflags.patch b/package/cloop/cloop-2.634-1-cflags.patch
deleted file mode 100644 (file)
index c421dd7..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-Take into account the CFLAGS/LDFLAGS passed in the environment.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: host-cloop-2.634-1/Makefile
-===================================================================
---- host-cloop-2.634-1.orig/Makefile   2010-12-16 09:17:52.826555645 +0100
-+++ host-cloop-2.634-1/Makefile        2010-12-16 09:18:57.208713338 +0100
-@@ -15,7 +15,7 @@
- endif
- ifdef APPSONLY
--CFLAGS:=-Wall -Wstrict-prototypes -Wno-trigraphs -O2 -s -I. -fno-strict-aliasing -fno-common -fomit-frame-pointer 
-+CLOOP_CFLAGS:=-Wall -Wstrict-prototypes -Wno-trigraphs -O2 -s -I. -fno-strict-aliasing -fno-common -fomit-frame-pointer 
- endif
- KERNOBJ:=compressed_loop.o
-@@ -53,10 +53,10 @@
-       ( cd advancecomp-1.15 ; ./configure && $(MAKE) advfs )
- extract_compressed_fs: extract_compressed_fs.c
--      $(CC) -Wall -O2 -s -o $@ $< -lz
-+      $(CC) $(CFLAGS) $(CLOOP_CFLAGS) $(LDFLAGS) -Wall -O2 -s -o $@ $< -lz
- cloop_suspend: cloop_suspend.o
--      $(CC) -o $@ $<
-+      $(CC) $(CFLAGS) $(CLOOP_CFLAGS) $(LDFLAGS) -o $@ $<
- clean:
-       rm -rf create_compressed_fs extract_compressed_fs zoom *.o *.ko Module.symvers .cloop* .compressed_loop.* .tmp*
diff --git a/package/coreutils/0001-fix-for-dummy-man-usage.patch b/package/coreutils/0001-fix-for-dummy-man-usage.patch
new file mode 100644 (file)
index 0000000..960501e
--- /dev/null
@@ -0,0 +1,25 @@
+Upstream-Status: Pending
+
+coreutils: fix for dummy-man usage
+
+The options should be before the final argument, otherwise, the following error
+would appear when compiling.
+
+"dummy-man: too many non-option arguments"
+
+Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
+[Gustavo: update for 8.23]
+
+diff -Nura coreutils-8.23.orig/man/local.mk coreutils-8.23/man/local.mk
+--- coreutils-8.23.orig/man/local.mk   2014-10-24 16:52:29.720555852 -0300
++++ coreutils-8.23/man/local.mk        2014-10-24 16:52:59.381391498 -0300
+@@ -101,8 +101,8 @@
+         && $(run_help2man)                                            \
+                    --source='$(PACKAGE_STRING)'                       \
+                    --include=$(srcdir)/man/$$name.x                   \
+-                   --output=$$t/$$name.1 $$t/$$argv                   \
+                    --info-page='coreutils \(aq'$$name' invocation\(aq' \
++                   --output=$$t/$$name.1 $$t/$$argv                   \
+         && sed \
+              -e 's|$*\.td/||g' \
+              -e '/For complete documentation/d' \
diff --git a/package/coreutils/coreutils-01-fix-for-dummy-man-usage.patch b/package/coreutils/coreutils-01-fix-for-dummy-man-usage.patch
deleted file mode 100644 (file)
index 960501e..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-Upstream-Status: Pending
-
-coreutils: fix for dummy-man usage
-
-The options should be before the final argument, otherwise, the following error
-would appear when compiling.
-
-"dummy-man: too many non-option arguments"
-
-Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
-[Gustavo: update for 8.23]
-
-diff -Nura coreutils-8.23.orig/man/local.mk coreutils-8.23/man/local.mk
---- coreutils-8.23.orig/man/local.mk   2014-10-24 16:52:29.720555852 -0300
-+++ coreutils-8.23/man/local.mk        2014-10-24 16:52:59.381391498 -0300
-@@ -101,8 +101,8 @@
-         && $(run_help2man)                                            \
-                    --source='$(PACKAGE_STRING)'                       \
-                    --include=$(srcdir)/man/$$name.x                   \
--                   --output=$$t/$$name.1 $$t/$$argv                   \
-                    --info-page='coreutils \(aq'$$name' invocation\(aq' \
-+                   --output=$$t/$$name.1 $$t/$$argv                   \
-         && sed \
-              -e 's|$*\.td/||g' \
-              -e '/For complete documentation/d' \
diff --git a/package/cppdb/0001-mysql-library-suffix.patch b/package/cppdb/0001-mysql-library-suffix.patch
new file mode 100644 (file)
index 0000000..e65e3e2
--- /dev/null
@@ -0,0 +1,23 @@
+Add mysql/ to PATH_SUFFIXES for the library search for mysql.
+
+On common distros libmysqlclient* is installed and/or symlinked
+into /usr/lib.
+Since we install the libraries into /usr/lib/mysql alone cppdb
+fails to properly link to it giving runtime errors.
+
+Status: https://sourceforge.net/p/cppcms/bugs/135/
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura cppdb-0.3.1.orig/CMakeLists.txt cppdb-0.3.1/CMakeLists.txt
+--- cppdb-0.3.1.orig/CMakeLists.txt    2014-10-17 11:05:57.875429748 -0300
++++ cppdb-0.3.1/CMakeLists.txt 2014-10-17 11:12:57.486775484 -0300
+@@ -196,7 +196,7 @@
+ endif()
+ if(NOT DISABLE_MYSQL)
+-      find_library(MYSQL_LIB mysqlclient)
++      find_library(MYSQL_LIB mysqlclient PATH_SUFFIXES mysql)
+       find_path(MYSQL_PATH mysql.h PATH_SUFFIXES mysql)
+       if(MYSQL_LIB AND MYSQL_PATH)
+               include_directories(${MYSQL_PATH})
diff --git a/package/cppdb/cppdb-0001-mysql-library-suffix.patch b/package/cppdb/cppdb-0001-mysql-library-suffix.patch
deleted file mode 100644 (file)
index e65e3e2..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-Add mysql/ to PATH_SUFFIXES for the library search for mysql.
-
-On common distros libmysqlclient* is installed and/or symlinked
-into /usr/lib.
-Since we install the libraries into /usr/lib/mysql alone cppdb
-fails to properly link to it giving runtime errors.
-
-Status: https://sourceforge.net/p/cppcms/bugs/135/
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura cppdb-0.3.1.orig/CMakeLists.txt cppdb-0.3.1/CMakeLists.txt
---- cppdb-0.3.1.orig/CMakeLists.txt    2014-10-17 11:05:57.875429748 -0300
-+++ cppdb-0.3.1/CMakeLists.txt 2014-10-17 11:12:57.486775484 -0300
-@@ -196,7 +196,7 @@
- endif()
- if(NOT DISABLE_MYSQL)
--      find_library(MYSQL_LIB mysqlclient)
-+      find_library(MYSQL_LIB mysqlclient PATH_SUFFIXES mysql)
-       find_path(MYSQL_PATH mysql.h PATH_SUFFIXES mysql)
-       if(MYSQL_LIB AND MYSQL_PATH)
-               include_directories(${MYSQL_PATH})
diff --git a/package/cramfs/0001-endian.patch b/package/cramfs/0001-endian.patch
new file mode 100644 (file)
index 0000000..b2eda5a
--- /dev/null
@@ -0,0 +1,288 @@
+Index: cramfs-1.1/mkcramfs.c
+===================================================================
+--- cramfs-1.1.orig/mkcramfs.c 2002-02-20 09:03:32.000000000 +0100
++++ cramfs-1.1/mkcramfs.c      2011-09-09 15:11:00.980895119 +0200
+@@ -93,6 +93,7 @@
+ static int opt_verbose = 0;
+ static char *opt_image = NULL;
+ static char *opt_name = NULL;
++static int swap_endian = 0;
+ static int warn_dev, warn_gid, warn_namelen, warn_skip, warn_size, warn_uid;
+@@ -130,6 +131,8 @@
+               " -i file    insert a file image into the filesystem (requires >= 2.4.0)\n"
+               " -n name    set name of cramfs filesystem\n"
+               " -p         pad by %d bytes for boot code\n"
++              " -l         litte endian filesystem\n"
++              " -b         big endian filesystem\n"
+               " -s         sort directory entries (old option, ignored)\n"
+               " -v         be more verbose\n"
+               " -z         make explicit holes (requires >= 2.3.39)\n"
+@@ -372,6 +375,50 @@
+       return totalsize;
+ }
++/* routines to swap endianness/bitfields in inode/superblock block data */
++static void fix_inode(struct cramfs_inode *inode)
++{
++#define wswap(x)    (((x)>>24) | (((x)>>8)&0xff00) | (((x)&0xff00)<<8) | (((x)&0xff)<<24))
++      /* attempt #2 */
++      inode->mode = (inode->mode >> 8) | ((inode->mode&0xff)<<8);
++      inode->uid = (inode->uid >> 8) | ((inode->uid&0xff)<<8);
++      inode->size = (inode->size >> 16) | (inode->size&0xff00) |
++              ((inode->size&0xff)<<16);
++      ((u32*)inode)[2] = wswap(inode->offset | (inode->namelen<<26));
++}
++
++static void fix_offset(struct cramfs_inode *inode, u32 offset)
++{
++      u32 tmp = wswap(((u32*)inode)[2]);
++      ((u32*)inode)[2] = wswap((offset >> 2) | (tmp&0xfc000000));
++}
++
++static void fix_block_pointer(u32 *p)
++{
++      *p = wswap(*p);
++}
++
++static void fix_super(struct cramfs_super *super)
++{
++      u32 *p = (u32*)super;
++
++      /* fix superblock fields */
++      p[0] = wswap(p[0]);     /* magic */
++      p[1] = wswap(p[1]);     /* size */
++      p[2] = wswap(p[2]);     /* flags */
++      p[3] = wswap(p[3]);     /* future */
++
++      /* fix filesystem info fields */
++      p = (u32*)&super->fsid;
++      p[0] = wswap(p[0]);     /* crc */
++      p[1] = wswap(p[1]);     /* edition */
++      p[2] = wswap(p[2]);     /* blocks */
++      p[3] = wswap(p[3]);     /* files */
++
++      fix_inode(&super->root);
++#undef wswap
++}
++
+ /* Returns sizeof(struct cramfs_super), which includes the root inode. */
+ static unsigned int write_superblock(struct entry *root, char *base, int size)
+ {
+@@ -405,6 +452,7 @@
+       super->root.gid = root->gid;
+       super->root.size = root->size;
+       super->root.offset = offset >> 2;
++      if (swap_endian) fix_super(super);
+       return offset;
+ }
+@@ -419,7 +467,10 @@
+       if (offset >= (1 << (2 + CRAMFS_OFFSET_WIDTH))) {
+               die(MKFS_ERROR, 0, "filesystem too big");
+       }
+-      inode->offset = (offset >> 2);
++      if (swap_endian)
++              fix_offset(inode, offset);
++      else
++              inode->offset = (offset >> 2);
+ }
+ /*
+@@ -515,6 +566,7 @@
+                               stack_entries++;
+                       }
+                       entry = entry->next;
++                      if (swap_endian) fix_inode(inode);
+               }
+               /*
+@@ -609,6 +661,7 @@
+               }
+               *(u32 *) (base + offset) = curr;
++              if (swap_endian) fix_block_pointer((u32*)(base + offset));
+               offset += 4;
+       } while (size);
+@@ -699,7 +752,7 @@
+               progname = argv[0];
+       /* command line options */
+-      while ((c = getopt(argc, argv, "hEe:i:n:psvz")) != EOF) {
++      while ((c = getopt(argc, argv, "hEe:i:n:psvzlb")) != EOF) {
+               switch (c) {
+               case 'h':
+                       usage(MKFS_OK);
+@@ -727,6 +780,18 @@
+                       opt_pad = PAD_SIZE;
+                       fslen_ub += PAD_SIZE;
+                       break;
++              case 'b':
++#if __BYTE_ORDER == __LITTLE_ENDIAN
++                      swap_endian = 1;
++                      printf("Swapping filesystem endian-ness\n");
++#endif
++                      break;
++              case 'l':
++#if __BYTE_ORDER == __BIG_ENDIAN
++                      swap_endian = 1;
++                      printf("Swapping filesystem endian-ness\n");
++#endif
++                      break;
+               case 's':
+                       /* old option, ignored */
+                       break;
+Index: cramfs-1.1/cramfsck.c
+===================================================================
+--- cramfs-1.1.orig/cramfsck.c 2002-02-23 01:00:42.000000000 +0100
++++ cramfs-1.1/cramfsck.c      2011-09-09 15:10:06.810894275 +0200
+@@ -30,6 +30,7 @@
+  * 2000/07/15: Daniel Quinlan (initial support for block devices)
+  * 2002/01/10: Daniel Quinlan (additional checks, test more return codes,
+  *                            use read if mmap fails, standardize messages)
++ * 2004/09/01: Alfonso Acosta (Add swapping support)
+  */
+ /* compile-time options */
+@@ -53,6 +54,7 @@
+ #define _LINUX_STRING_H_
+ #include <linux/fs.h>
+ #include <linux/cramfs_fs.h>
++#include <byteswap.h>
+ #include <zlib.h>
+ /* Exit codes used by fsck-type programs */
+@@ -73,6 +75,7 @@
+ static char *filename;                /* ROM image filename */
+ struct cramfs_super super;    /* just find the cramfs superblock once */
+ static int opt_verbose = 0;   /* 1 = verbose (-v), 2+ = very verbose (-vv) */
++static int need_swapping = 0;   /* fs and host dont have the same endianness */
+ #ifdef INCLUDE_FS_TESTS
+ static int opt_extract = 0;           /* extract cramfs (-x) */
+ static char *extract_dir = "root";    /* extraction directory (-x) */
+@@ -84,6 +87,9 @@
+ static unsigned long start_data = ~0UL;       /* start of the data (256 MB = max) */
+ static unsigned long end_data = 0;    /* end of the data */
++/* access 32 byte variables */
++#define CRAMFS_32(x)  (need_swapping ? bswap_32(x) : x)
++
+ /* Guarantee access to at least 8kB at a time */
+ #define ROMBUFFER_BITS        13
+ #define ROMBUFFERSIZE (1 << ROMBUFFER_BITS)
+@@ -165,20 +171,34 @@
+       if (super.magic == CRAMFS_MAGIC) {
+               *start = 0;
+       }
++      else if (super.magic == bswap_32(CRAMFS_MAGIC)) {
++              *start = 0;
++              need_swapping = 1;
++      }
++
+       else if (*length >= (PAD_SIZE + sizeof(super))) {
+               lseek(fd, PAD_SIZE, SEEK_SET);
+               if (read(fd, &super, sizeof(super)) != sizeof(super)) {
+                       die(FSCK_ERROR, 1, "read failed: %s", filename);
+               }
+-              if (super.magic == CRAMFS_MAGIC) {
++              if (super.magic == CRAMFS_32(CRAMFS_MAGIC)) {
+                       *start = PAD_SIZE;
+               }
+       }
+       /* superblock tests */
+-      if (super.magic != CRAMFS_MAGIC) {
++      if (super.magic != CRAMFS_32(CRAMFS_MAGIC)) {
+               die(FSCK_UNCORRECTED, 0, "superblock magic not found");
+       }
++      if (need_swapping){
++              super.size = bswap_32(super.size);
++              super.flags = bswap_32(super.flags);
++              super.future = bswap_32(super.future);
++              super.fsid.crc = bswap_32(super.fsid.crc);
++              super.fsid.edition = bswap_32(super.fsid.edition);
++              super.fsid.blocks = bswap_32(super.fsid.blocks);
++              super.fsid.files = bswap_32(super.fsid.files); 
++      }       
+       if (super.flags & ~CRAMFS_SUPPORTED_FLAGS) {
+               die(FSCK_ERROR, 0, "unsupported filesystem features");
+       }
+@@ -213,7 +233,10 @@
+               die(FSCK_USAGE, 0, "unable to test CRC: old cramfs format");
+ #endif /* not INCLUDE_FS_TESTS */
+       }
+-
++      else if (need_swapping) {
++       /* crc checking in this case would mean  translating the whole file */
++              return;
++      }
+       crc = crc32(0L, Z_NULL, 0);
+       buf = mmap(NULL, super.size, PROT_READ | PROT_WRITE, MAP_PRIVATE, fd, 0);
+@@ -298,12 +321,23 @@
+ static struct cramfs_inode *cramfs_iget(struct cramfs_inode * i)
+ {
++#define wswap(x)    (((x)>>24) | (((x)>>8)&0xff00) | (((x)&0xff00)<<8) | (((x)&0xff)<<24))
+       struct cramfs_inode *inode = malloc(sizeof(struct cramfs_inode));
+       if (!inode) {
+               die(FSCK_ERROR, 1, "malloc failed");
+       }
+-      *inode = *i;
++      if(!need_swapping) {
++              *inode = *i;
++      }
++      else { 
++              inode->mode=bswap_16(i->mode);
++              inode->uid=bswap_16(i->uid);
++              inode->size=bswap_32(i->size << 8);
++              inode->gid=i->gid;
++              inode->namelen = bswap_32(((u32*)i)[2]) >> 26;
++              inode->offset = bswap_32(((u32*)i)[2]) & 0x3FFFFFFF;
++      }
+       return inode;
+ }
+@@ -322,9 +356,9 @@
+  */
+ static struct cramfs_inode *read_super(void)
+ {
+-      unsigned long offset = super.root.offset << 2;
+-
+-      if (!S_ISDIR(super.root.mode))
++      struct cramfs_inode *root = cramfs_iget(&super.root);
++      unsigned long offset = root->offset << 2; 
++      if (!S_ISDIR(root->mode))
+               die(FSCK_UNCORRECTED, 0, "root inode is not directory");
+       if (!(super.flags & CRAMFS_FLAG_SHIFTED_ROOT_OFFSET) &&
+           ((offset != sizeof(struct cramfs_super)) &&
+@@ -332,7 +366,7 @@
+       {
+               die(FSCK_UNCORRECTED, 0, "bad root offset (%lu)", offset);
+       }
+-      return cramfs_iget(&super.root);
++      return root;
+ }
+ static int uncompress_block(void *src, int len)
+@@ -364,7 +398,7 @@
+       do {
+               unsigned long out = PAGE_CACHE_SIZE;
+-              unsigned long next = *(u32 *) romfs_read(offset);
++              unsigned long next = CRAMFS_32(*(u32 *) romfs_read(offset));
+               if (next > end_data) {
+                       end_data = next;
+@@ -525,7 +559,7 @@
+ {
+       unsigned long offset = i->offset << 2;
+       unsigned long curr = offset + 4;
+-      unsigned long next = *(u32 *) romfs_read(offset);
++      unsigned long next = CRAMFS_32(*(u32 *) romfs_read(offset));
+       unsigned long size;
+       if (offset == 0) {
diff --git a/package/cramfs/0002-cygwin_IO.patch b/package/cramfs/0002-cygwin_IO.patch
new file mode 100644 (file)
index 0000000..8be333f
--- /dev/null
@@ -0,0 +1,15 @@
+Index: cramfs-1.1/cramfsck.c
+===================================================================
+--- cramfs-1.1.orig/cramfsck.c 2011-09-09 15:10:06.000000000 +0200
++++ cramfs-1.1/cramfsck.c      2011-09-09 15:13:49.950897747 +0200
+@@ -57,6 +57,10 @@
+ #include <byteswap.h>
+ #include <zlib.h>
++#ifdef __CYGWIN__
++#define _IO(type,nr)   _IOC(_IOC_NONE,(type),(nr),0)
++#endif /* __CYGWIN__ */
++
+ /* Exit codes used by fsck-type programs */
+ #define FSCK_OK          0    /* No errors */
+ #define FSCK_NONDESTRUCT 1    /* File system errors corrected */
diff --git a/package/cramfs/cramfs-01-endian.patch b/package/cramfs/cramfs-01-endian.patch
deleted file mode 100644 (file)
index b2eda5a..0000000
+++ /dev/null
@@ -1,288 +0,0 @@
-Index: cramfs-1.1/mkcramfs.c
-===================================================================
---- cramfs-1.1.orig/mkcramfs.c 2002-02-20 09:03:32.000000000 +0100
-+++ cramfs-1.1/mkcramfs.c      2011-09-09 15:11:00.980895119 +0200
-@@ -93,6 +93,7 @@
- static int opt_verbose = 0;
- static char *opt_image = NULL;
- static char *opt_name = NULL;
-+static int swap_endian = 0;
- static int warn_dev, warn_gid, warn_namelen, warn_skip, warn_size, warn_uid;
-@@ -130,6 +131,8 @@
-               " -i file    insert a file image into the filesystem (requires >= 2.4.0)\n"
-               " -n name    set name of cramfs filesystem\n"
-               " -p         pad by %d bytes for boot code\n"
-+              " -l         litte endian filesystem\n"
-+              " -b         big endian filesystem\n"
-               " -s         sort directory entries (old option, ignored)\n"
-               " -v         be more verbose\n"
-               " -z         make explicit holes (requires >= 2.3.39)\n"
-@@ -372,6 +375,50 @@
-       return totalsize;
- }
-+/* routines to swap endianness/bitfields in inode/superblock block data */
-+static void fix_inode(struct cramfs_inode *inode)
-+{
-+#define wswap(x)    (((x)>>24) | (((x)>>8)&0xff00) | (((x)&0xff00)<<8) | (((x)&0xff)<<24))
-+      /* attempt #2 */
-+      inode->mode = (inode->mode >> 8) | ((inode->mode&0xff)<<8);
-+      inode->uid = (inode->uid >> 8) | ((inode->uid&0xff)<<8);
-+      inode->size = (inode->size >> 16) | (inode->size&0xff00) |
-+              ((inode->size&0xff)<<16);
-+      ((u32*)inode)[2] = wswap(inode->offset | (inode->namelen<<26));
-+}
-+
-+static void fix_offset(struct cramfs_inode *inode, u32 offset)
-+{
-+      u32 tmp = wswap(((u32*)inode)[2]);
-+      ((u32*)inode)[2] = wswap((offset >> 2) | (tmp&0xfc000000));
-+}
-+
-+static void fix_block_pointer(u32 *p)
-+{
-+      *p = wswap(*p);
-+}
-+
-+static void fix_super(struct cramfs_super *super)
-+{
-+      u32 *p = (u32*)super;
-+
-+      /* fix superblock fields */
-+      p[0] = wswap(p[0]);     /* magic */
-+      p[1] = wswap(p[1]);     /* size */
-+      p[2] = wswap(p[2]);     /* flags */
-+      p[3] = wswap(p[3]);     /* future */
-+
-+      /* fix filesystem info fields */
-+      p = (u32*)&super->fsid;
-+      p[0] = wswap(p[0]);     /* crc */
-+      p[1] = wswap(p[1]);     /* edition */
-+      p[2] = wswap(p[2]);     /* blocks */
-+      p[3] = wswap(p[3]);     /* files */
-+
-+      fix_inode(&super->root);
-+#undef wswap
-+}
-+
- /* Returns sizeof(struct cramfs_super), which includes the root inode. */
- static unsigned int write_superblock(struct entry *root, char *base, int size)
- {
-@@ -405,6 +452,7 @@
-       super->root.gid = root->gid;
-       super->root.size = root->size;
-       super->root.offset = offset >> 2;
-+      if (swap_endian) fix_super(super);
-       return offset;
- }
-@@ -419,7 +467,10 @@
-       if (offset >= (1 << (2 + CRAMFS_OFFSET_WIDTH))) {
-               die(MKFS_ERROR, 0, "filesystem too big");
-       }
--      inode->offset = (offset >> 2);
-+      if (swap_endian)
-+              fix_offset(inode, offset);
-+      else
-+              inode->offset = (offset >> 2);
- }
- /*
-@@ -515,6 +566,7 @@
-                               stack_entries++;
-                       }
-                       entry = entry->next;
-+                      if (swap_endian) fix_inode(inode);
-               }
-               /*
-@@ -609,6 +661,7 @@
-               }
-               *(u32 *) (base + offset) = curr;
-+              if (swap_endian) fix_block_pointer((u32*)(base + offset));
-               offset += 4;
-       } while (size);
-@@ -699,7 +752,7 @@
-               progname = argv[0];
-       /* command line options */
--      while ((c = getopt(argc, argv, "hEe:i:n:psvz")) != EOF) {
-+      while ((c = getopt(argc, argv, "hEe:i:n:psvzlb")) != EOF) {
-               switch (c) {
-               case 'h':
-                       usage(MKFS_OK);
-@@ -727,6 +780,18 @@
-                       opt_pad = PAD_SIZE;
-                       fslen_ub += PAD_SIZE;
-                       break;
-+              case 'b':
-+#if __BYTE_ORDER == __LITTLE_ENDIAN
-+                      swap_endian = 1;
-+                      printf("Swapping filesystem endian-ness\n");
-+#endif
-+                      break;
-+              case 'l':
-+#if __BYTE_ORDER == __BIG_ENDIAN
-+                      swap_endian = 1;
-+                      printf("Swapping filesystem endian-ness\n");
-+#endif
-+                      break;
-               case 's':
-                       /* old option, ignored */
-                       break;
-Index: cramfs-1.1/cramfsck.c
-===================================================================
---- cramfs-1.1.orig/cramfsck.c 2002-02-23 01:00:42.000000000 +0100
-+++ cramfs-1.1/cramfsck.c      2011-09-09 15:10:06.810894275 +0200
-@@ -30,6 +30,7 @@
-  * 2000/07/15: Daniel Quinlan (initial support for block devices)
-  * 2002/01/10: Daniel Quinlan (additional checks, test more return codes,
-  *                            use read if mmap fails, standardize messages)
-+ * 2004/09/01: Alfonso Acosta (Add swapping support)
-  */
- /* compile-time options */
-@@ -53,6 +54,7 @@
- #define _LINUX_STRING_H_
- #include <linux/fs.h>
- #include <linux/cramfs_fs.h>
-+#include <byteswap.h>
- #include <zlib.h>
- /* Exit codes used by fsck-type programs */
-@@ -73,6 +75,7 @@
- static char *filename;                /* ROM image filename */
- struct cramfs_super super;    /* just find the cramfs superblock once */
- static int opt_verbose = 0;   /* 1 = verbose (-v), 2+ = very verbose (-vv) */
-+static int need_swapping = 0;   /* fs and host dont have the same endianness */
- #ifdef INCLUDE_FS_TESTS
- static int opt_extract = 0;           /* extract cramfs (-x) */
- static char *extract_dir = "root";    /* extraction directory (-x) */
-@@ -84,6 +87,9 @@
- static unsigned long start_data = ~0UL;       /* start of the data (256 MB = max) */
- static unsigned long end_data = 0;    /* end of the data */
-+/* access 32 byte variables */
-+#define CRAMFS_32(x)  (need_swapping ? bswap_32(x) : x)
-+
- /* Guarantee access to at least 8kB at a time */
- #define ROMBUFFER_BITS        13
- #define ROMBUFFERSIZE (1 << ROMBUFFER_BITS)
-@@ -165,20 +171,34 @@
-       if (super.magic == CRAMFS_MAGIC) {
-               *start = 0;
-       }
-+      else if (super.magic == bswap_32(CRAMFS_MAGIC)) {
-+              *start = 0;
-+              need_swapping = 1;
-+      }
-+
-       else if (*length >= (PAD_SIZE + sizeof(super))) {
-               lseek(fd, PAD_SIZE, SEEK_SET);
-               if (read(fd, &super, sizeof(super)) != sizeof(super)) {
-                       die(FSCK_ERROR, 1, "read failed: %s", filename);
-               }
--              if (super.magic == CRAMFS_MAGIC) {
-+              if (super.magic == CRAMFS_32(CRAMFS_MAGIC)) {
-                       *start = PAD_SIZE;
-               }
-       }
-       /* superblock tests */
--      if (super.magic != CRAMFS_MAGIC) {
-+      if (super.magic != CRAMFS_32(CRAMFS_MAGIC)) {
-               die(FSCK_UNCORRECTED, 0, "superblock magic not found");
-       }
-+      if (need_swapping){
-+              super.size = bswap_32(super.size);
-+              super.flags = bswap_32(super.flags);
-+              super.future = bswap_32(super.future);
-+              super.fsid.crc = bswap_32(super.fsid.crc);
-+              super.fsid.edition = bswap_32(super.fsid.edition);
-+              super.fsid.blocks = bswap_32(super.fsid.blocks);
-+              super.fsid.files = bswap_32(super.fsid.files); 
-+      }       
-       if (super.flags & ~CRAMFS_SUPPORTED_FLAGS) {
-               die(FSCK_ERROR, 0, "unsupported filesystem features");
-       }
-@@ -213,7 +233,10 @@
-               die(FSCK_USAGE, 0, "unable to test CRC: old cramfs format");
- #endif /* not INCLUDE_FS_TESTS */
-       }
--
-+      else if (need_swapping) {
-+       /* crc checking in this case would mean  translating the whole file */
-+              return;
-+      }
-       crc = crc32(0L, Z_NULL, 0);
-       buf = mmap(NULL, super.size, PROT_READ | PROT_WRITE, MAP_PRIVATE, fd, 0);
-@@ -298,12 +321,23 @@
- static struct cramfs_inode *cramfs_iget(struct cramfs_inode * i)
- {
-+#define wswap(x)    (((x)>>24) | (((x)>>8)&0xff00) | (((x)&0xff00)<<8) | (((x)&0xff)<<24))
-       struct cramfs_inode *inode = malloc(sizeof(struct cramfs_inode));
-       if (!inode) {
-               die(FSCK_ERROR, 1, "malloc failed");
-       }
--      *inode = *i;
-+      if(!need_swapping) {
-+              *inode = *i;
-+      }
-+      else { 
-+              inode->mode=bswap_16(i->mode);
-+              inode->uid=bswap_16(i->uid);
-+              inode->size=bswap_32(i->size << 8);
-+              inode->gid=i->gid;
-+              inode->namelen = bswap_32(((u32*)i)[2]) >> 26;
-+              inode->offset = bswap_32(((u32*)i)[2]) & 0x3FFFFFFF;
-+      }
-       return inode;
- }
-@@ -322,9 +356,9 @@
-  */
- static struct cramfs_inode *read_super(void)
- {
--      unsigned long offset = super.root.offset << 2;
--
--      if (!S_ISDIR(super.root.mode))
-+      struct cramfs_inode *root = cramfs_iget(&super.root);
-+      unsigned long offset = root->offset << 2; 
-+      if (!S_ISDIR(root->mode))
-               die(FSCK_UNCORRECTED, 0, "root inode is not directory");
-       if (!(super.flags & CRAMFS_FLAG_SHIFTED_ROOT_OFFSET) &&
-           ((offset != sizeof(struct cramfs_super)) &&
-@@ -332,7 +366,7 @@
-       {
-               die(FSCK_UNCORRECTED, 0, "bad root offset (%lu)", offset);
-       }
--      return cramfs_iget(&super.root);
-+      return root;
- }
- static int uncompress_block(void *src, int len)
-@@ -364,7 +398,7 @@
-       do {
-               unsigned long out = PAGE_CACHE_SIZE;
--              unsigned long next = *(u32 *) romfs_read(offset);
-+              unsigned long next = CRAMFS_32(*(u32 *) romfs_read(offset));
-               if (next > end_data) {
-                       end_data = next;
-@@ -525,7 +559,7 @@
- {
-       unsigned long offset = i->offset << 2;
-       unsigned long curr = offset + 4;
--      unsigned long next = *(u32 *) romfs_read(offset);
-+      unsigned long next = CRAMFS_32(*(u32 *) romfs_read(offset));
-       unsigned long size;
-       if (offset == 0) {
diff --git a/package/cramfs/cramfs-02-cygwin_IO.patch b/package/cramfs/cramfs-02-cygwin_IO.patch
deleted file mode 100644 (file)
index 8be333f..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-Index: cramfs-1.1/cramfsck.c
-===================================================================
---- cramfs-1.1.orig/cramfsck.c 2011-09-09 15:10:06.000000000 +0200
-+++ cramfs-1.1/cramfsck.c      2011-09-09 15:13:49.950897747 +0200
-@@ -57,6 +57,10 @@
- #include <byteswap.h>
- #include <zlib.h>
-+#ifdef __CYGWIN__
-+#define _IO(type,nr)   _IOC(_IOC_NONE,(type),(nr),0)
-+#endif /* __CYGWIN__ */
-+
- /* Exit codes used by fsck-type programs */
- #define FSCK_OK          0    /* No errors */
- #define FSCK_NONDESTRUCT 1    /* File system errors corrected */
diff --git a/package/crda/0001-Makefile-allow-to-override-python-interpreter.patch b/package/crda/0001-Makefile-allow-to-override-python-interpreter.patch
new file mode 100644 (file)
index 0000000..2481390
--- /dev/null
@@ -0,0 +1,34 @@
+From 6831024a247fd89c7f7adcbee8a0be991b3caaf4 Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Sun, 2 Mar 2014 23:45:44 +0100
+Subject: [PATCH] Makefile: allow to override python interpreter
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+---
+ Makefile | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index 1d34bde..d7134ff 100644
+--- a/Makefile
++++ b/Makefile
+@@ -42,6 +42,7 @@ LDLIBS += -lgcrypt
+ reglib.o: keys-gcrypt.c
+ endif
++PYTHON ?= python2
+ MKDIR ?= mkdir -p
+ INSTALL ?= install
+@@ -103,7 +104,7 @@ $(REG_BIN):
+ keys-%.c: utils/key2pub.py $(wildcard $(PUBKEY_DIR)/*.pem)
+       $(NQ) '  GEN ' $@
+       $(NQ) '  Trusted pubkeys:' $(wildcard $(PUBKEY_DIR)/*.pem)
+-      $(Q)./utils/key2pub.py --$* $(wildcard $(PUBKEY_DIR)/*.pem) $@
++      $(Q)$(PYTHON) ./utils/key2pub.py --$* $(wildcard $(PUBKEY_DIR)/*.pem) $@
+ %.o: %.c regdb.h reglib.h
+       $(NQ) '  CC  ' $@
+-- 
+1.9.0
+
diff --git a/package/crda/0002-Add-DESTDIR-support-in-install-libreg-rules.patch b/package/crda/0002-Add-DESTDIR-support-in-install-libreg-rules.patch
new file mode 100644 (file)
index 0000000..617d05f
--- /dev/null
@@ -0,0 +1,41 @@
+From 2cabb2588da56735369131b709f191453c080be0 Mon Sep 17 00:00:00 2001
+From: "John W. Linville" <linville@tuxdriver.com>
+Date: Fri, 14 Feb 2014 13:58:44 -0500
+Subject: [PATCH 1/4] crda: Add DESTDIR support in install-libreg* rules in
+ Makefile
+
+Also drop ldconfig call, as that causes problems when cross compiling /
+installing as non-root.
+
+Signed-off-by: John W. Linville <linville@tuxdriver.com>
+Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
+Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
+---
+ Makefile | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 0b2f0d7..1f25509 100644
+--- a/Makefile
++++ b/Makefile
+@@ -120,13 +120,12 @@ $(LIBREG): regdb.h reglib.h reglib.c
+ install-libreg-headers:
+       $(NQ) '  INSTALL  libreg-headers'
+-      $(Q)mkdir -p $(INCLUDE_DIR)
+-      $(Q)cp *.h $(INCLUDE_DIR)/
++      $(Q)mkdir -p $(DESTDIR)/$(INCLUDE_DIR)
++      $(Q)cp *.h $(DESTDIR)/$(INCLUDE_DIR)/
+ install-libreg:
+       $(NQ) '  INSTALL  libreg'
+-      $(Q)mkdir -p $(LIBDIR)
+-      $(Q)cp $(LIBREG) $(LIBDIR)/
+-      $(Q)ldconfig
++      $(Q)mkdir -p $(DESTDIR)/$(LIBDIR)
++      $(Q)cp $(LIBREG) $(DESTDIR)/$(LIBDIR)/
+ %.o: %.c regdb.h $(LIBREG)
+-- 
+1.8.5.5
+
diff --git a/package/crda/crda-0001-Makefile-allow-to-override-python-interpreter.patch b/package/crda/crda-0001-Makefile-allow-to-override-python-interpreter.patch
deleted file mode 100644 (file)
index 2481390..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-From 6831024a247fd89c7f7adcbee8a0be991b3caaf4 Mon Sep 17 00:00:00 2001
-From: Samuel Martin <s.martin49@gmail.com>
-Date: Sun, 2 Mar 2014 23:45:44 +0100
-Subject: [PATCH] Makefile: allow to override python interpreter
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
----
- Makefile | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/Makefile b/Makefile
-index 1d34bde..d7134ff 100644
---- a/Makefile
-+++ b/Makefile
-@@ -42,6 +42,7 @@ LDLIBS += -lgcrypt
- reglib.o: keys-gcrypt.c
- endif
-+PYTHON ?= python2
- MKDIR ?= mkdir -p
- INSTALL ?= install
-@@ -103,7 +104,7 @@ $(REG_BIN):
- keys-%.c: utils/key2pub.py $(wildcard $(PUBKEY_DIR)/*.pem)
-       $(NQ) '  GEN ' $@
-       $(NQ) '  Trusted pubkeys:' $(wildcard $(PUBKEY_DIR)/*.pem)
--      $(Q)./utils/key2pub.py --$* $(wildcard $(PUBKEY_DIR)/*.pem) $@
-+      $(Q)$(PYTHON) ./utils/key2pub.py --$* $(wildcard $(PUBKEY_DIR)/*.pem) $@
- %.o: %.c regdb.h reglib.h
-       $(NQ) '  CC  ' $@
--- 
-1.9.0
-
diff --git a/package/crda/crda-0002-Add-DESTDIR-support-in-install-libreg-rules.patch b/package/crda/crda-0002-Add-DESTDIR-support-in-install-libreg-rules.patch
deleted file mode 100644 (file)
index 617d05f..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-From 2cabb2588da56735369131b709f191453c080be0 Mon Sep 17 00:00:00 2001
-From: "John W. Linville" <linville@tuxdriver.com>
-Date: Fri, 14 Feb 2014 13:58:44 -0500
-Subject: [PATCH 1/4] crda: Add DESTDIR support in install-libreg* rules in
- Makefile
-
-Also drop ldconfig call, as that causes problems when cross compiling /
-installing as non-root.
-
-Signed-off-by: John W. Linville <linville@tuxdriver.com>
-Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- Makefile | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index 0b2f0d7..1f25509 100644
---- a/Makefile
-+++ b/Makefile
-@@ -120,13 +120,12 @@ $(LIBREG): regdb.h reglib.h reglib.c
- install-libreg-headers:
-       $(NQ) '  INSTALL  libreg-headers'
--      $(Q)mkdir -p $(INCLUDE_DIR)
--      $(Q)cp *.h $(INCLUDE_DIR)/
-+      $(Q)mkdir -p $(DESTDIR)/$(INCLUDE_DIR)
-+      $(Q)cp *.h $(DESTDIR)/$(INCLUDE_DIR)/
- install-libreg:
-       $(NQ) '  INSTALL  libreg'
--      $(Q)mkdir -p $(LIBDIR)
--      $(Q)cp $(LIBREG) $(LIBDIR)/
--      $(Q)ldconfig
-+      $(Q)mkdir -p $(DESTDIR)/$(LIBDIR)
-+      $(Q)cp $(LIBREG) $(DESTDIR)/$(LIBDIR)/
- %.o: %.c regdb.h $(LIBREG)
--- 
-1.8.5.5
-
diff --git a/package/cryptodev-linux/0001-Replace_INIT_COMPLETION_with_reinit_completion.patch b/package/cryptodev-linux/0001-Replace_INIT_COMPLETION_with_reinit_completion.patch
new file mode 100644 (file)
index 0000000..3c1b580
--- /dev/null
@@ -0,0 +1,83 @@
+From: Cosmin Paraschiv <cosmin.paraschiv@freescale.com>
+To: <cryptodev-linux-devel@gna.org>
+Subject: [Cryptodev-linux-devel] [PATCH v2] Replace INIT_COMPLETION with
+       reinit_completion.
+
+In the 3.13-rc1 Linux kernel, the INIT_COMPLETION macro has been replaced
+with an inline function, reinit_completion [1][2]. We are currently
+using the 3.13-rc3 Linux kernel, which leads to the following error:
+
+cryptlib.c:279:2: error: implicit declaration of function 'INIT_COMPLETION' [-Werror=implicit-function-declaration]
+  INIT_COMPLETION(cdata->async.result->completion);
+
+[1] https://github.com/torvalds/linux/commit/c32f74ab2872994bc8336ed367313da3139350ca
+[2] https://github.com/torvalds/linux/commit/62026aedaacedbe1ffe94a3599ad4acd8ecdf587
+
+Signed-off-by: Cosmin Paraschiv <cosmin.paraschiv@freescale.com>
+Reviewed-by: Cristian Stoica <cristian.stoica@freescale.com>
+Tested-by: Cristian Stoica <cristian.stoica@freescale.com>
+Signed-off-by: Horia Geanta <horia.geanta@freescale.com>
+---
+ cryptlib.c      | 8 ++++----
+ cryptodev_int.h | 6 ++++++
+ 2 files changed, 10 insertions(+), 4 deletions(-)
+
+diff --git a/cryptlib.c b/cryptlib.c
+index e6c91fc..fe25563 100644
+--- a/cryptlib.c
++++ b/cryptlib.c
+@@ -276,7 +276,7 @@ ssize_t cryptodev_cipher_encrypt(struct cipher_data *cdata,
+ {
+       int ret;
+-      INIT_COMPLETION(cdata->async.result->completion);
++      reinit_completion(&cdata->async.result->completion);
+       if (cdata->aead == 0) {
+               ablkcipher_request_set_crypt(cdata->async.request,
+@@ -299,7 +299,7 @@ ssize_t cryptodev_cipher_decrypt(struct cipher_data *cdata,
+ {
+       int ret;
+-      INIT_COMPLETION(cdata->async.result->completion);
++      reinit_completion(&cdata->async.result->completion);
+       if (cdata->aead == 0) {
+               ablkcipher_request_set_crypt(cdata->async.request,
+                       (struct scatterlist *)src, dst,
+@@ -410,7 +410,7 @@ ssize_t cryptodev_hash_update(struct hash_data *hdata,
+ {
+       int ret;
+-      INIT_COMPLETION(hdata->async.result->completion);
++      reinit_completion(&hdata->async.result->completion);
+       ahash_request_set_crypt(hdata->async.request, sg, NULL, len);
+       ret = crypto_ahash_update(hdata->async.request);
+@@ -422,7 +422,7 @@ int cryptodev_hash_final(struct hash_data *hdata, void* output)
+ {
+       int ret;
+-      INIT_COMPLETION(hdata->async.result->completion);
++      reinit_completion(&hdata->async.result->completion);
+       ahash_request_set_crypt(hdata->async.request, NULL, output, 0);
+       ret = crypto_ahash_final(hdata->async.request);
+diff --git a/cryptodev_int.h b/cryptodev_int.h
+index eb2aabf..3834ef1 100644
+--- a/cryptodev_int.h
++++ b/cryptodev_int.h
+@@ -2,6 +2,12 @@
+ #ifndef CRYPTODEV_INT_H
+ # define CRYPTODEV_INT_H
++#include <linux/version.h>
++
++#if (LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0))
++#  define reinit_completion(x) INIT_COMPLETION(*(x))
++#endif
++
+ #include <linux/init.h>
+ #include <linux/sched.h>
+ #include <linux/fs.h>
+-- 
+1.8.3.1
diff --git a/package/cryptodev-linux/cryptodev-linux-01-Replace_INIT_COMPLETION_with_reinit_completion.patch b/package/cryptodev-linux/cryptodev-linux-01-Replace_INIT_COMPLETION_with_reinit_completion.patch
deleted file mode 100644 (file)
index 3c1b580..0000000
+++ /dev/null
@@ -1,83 +0,0 @@
-From: Cosmin Paraschiv <cosmin.paraschiv@freescale.com>
-To: <cryptodev-linux-devel@gna.org>
-Subject: [Cryptodev-linux-devel] [PATCH v2] Replace INIT_COMPLETION with
-       reinit_completion.
-
-In the 3.13-rc1 Linux kernel, the INIT_COMPLETION macro has been replaced
-with an inline function, reinit_completion [1][2]. We are currently
-using the 3.13-rc3 Linux kernel, which leads to the following error:
-
-cryptlib.c:279:2: error: implicit declaration of function 'INIT_COMPLETION' [-Werror=implicit-function-declaration]
-  INIT_COMPLETION(cdata->async.result->completion);
-
-[1] https://github.com/torvalds/linux/commit/c32f74ab2872994bc8336ed367313da3139350ca
-[2] https://github.com/torvalds/linux/commit/62026aedaacedbe1ffe94a3599ad4acd8ecdf587
-
-Signed-off-by: Cosmin Paraschiv <cosmin.paraschiv@freescale.com>
-Reviewed-by: Cristian Stoica <cristian.stoica@freescale.com>
-Tested-by: Cristian Stoica <cristian.stoica@freescale.com>
-Signed-off-by: Horia Geanta <horia.geanta@freescale.com>
----
- cryptlib.c      | 8 ++++----
- cryptodev_int.h | 6 ++++++
- 2 files changed, 10 insertions(+), 4 deletions(-)
-
-diff --git a/cryptlib.c b/cryptlib.c
-index e6c91fc..fe25563 100644
---- a/cryptlib.c
-+++ b/cryptlib.c
-@@ -276,7 +276,7 @@ ssize_t cryptodev_cipher_encrypt(struct cipher_data *cdata,
- {
-       int ret;
--      INIT_COMPLETION(cdata->async.result->completion);
-+      reinit_completion(&cdata->async.result->completion);
-       if (cdata->aead == 0) {
-               ablkcipher_request_set_crypt(cdata->async.request,
-@@ -299,7 +299,7 @@ ssize_t cryptodev_cipher_decrypt(struct cipher_data *cdata,
- {
-       int ret;
--      INIT_COMPLETION(cdata->async.result->completion);
-+      reinit_completion(&cdata->async.result->completion);
-       if (cdata->aead == 0) {
-               ablkcipher_request_set_crypt(cdata->async.request,
-                       (struct scatterlist *)src, dst,
-@@ -410,7 +410,7 @@ ssize_t cryptodev_hash_update(struct hash_data *hdata,
- {
-       int ret;
--      INIT_COMPLETION(hdata->async.result->completion);
-+      reinit_completion(&hdata->async.result->completion);
-       ahash_request_set_crypt(hdata->async.request, sg, NULL, len);
-       ret = crypto_ahash_update(hdata->async.request);
-@@ -422,7 +422,7 @@ int cryptodev_hash_final(struct hash_data *hdata, void* output)
- {
-       int ret;
--      INIT_COMPLETION(hdata->async.result->completion);
-+      reinit_completion(&hdata->async.result->completion);
-       ahash_request_set_crypt(hdata->async.request, NULL, output, 0);
-       ret = crypto_ahash_final(hdata->async.request);
-diff --git a/cryptodev_int.h b/cryptodev_int.h
-index eb2aabf..3834ef1 100644
---- a/cryptodev_int.h
-+++ b/cryptodev_int.h
-@@ -2,6 +2,12 @@
- #ifndef CRYPTODEV_INT_H
- # define CRYPTODEV_INT_H
-+#include <linux/version.h>
-+
-+#if (LINUX_VERSION_CODE < KERNEL_VERSION(3, 13, 0))
-+#  define reinit_completion(x) INIT_COMPLETION(*(x))
-+#endif
-+
- #include <linux/init.h>
- #include <linux/sched.h>
- #include <linux/fs.h>
--- 
-1.8.3.1
diff --git a/package/cups/0001-fix-static.patch b/package/cups/0001-fix-static.patch
new file mode 100644 (file)
index 0000000..4c9d0d4
--- /dev/null
@@ -0,0 +1,28 @@
+cups: fix static linking
+
+Append -lz to the cups linking libs to fix a problem like this one:
+
+../cups/libcups.a(file.o): In function `cupsFileSeek':
+/home/test/test/1/output/build/cups-1.3.11/cups/file.c:1444: undefined 
+reference to `inflateEnd'
+collect2: error: ld returned 1 exit status
+make[2]: *** [ipp] Error 1
+make[2]: *** Waiting for unfinished jobs....
+
+This solution is the same used upstream in newer versions.
+
+Fixes:
+   http://autobuild.buildroot.net/results/f3d/f3d4f67ce7ee1d54f5bd4c87dfddb7417db614e5/
+
+Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
+--- cups-1.3.11/Makedefs.in.orig       2014-03-05 13:28:10.175437880 +0000
++++ cups-1.3.11/Makedefs.in    2014-03-05 13:28:35.398845162 +0000
+@@ -132,7 +132,7 @@ LDFLAGS            =       -L../cups -L../filter @LDARCH
+ LEGACY_BACKENDS       =       @LEGACY_BACKENDS@
+ LIBCUPSORDER  =       @LIBCUPSORDER@
+ LIBCUPSIMAGEORDER =   @LIBCUPSIMAGEORDER@
+-LINKCUPS      =       @LINKCUPS@ $(SSLLIBS)
++LINKCUPS      =       @LINKCUPS@ $(SSLLIBS) $(LIBZ)
+ LINKCUPSIMAGE =       @LINKCUPSIMAGE@
+ LIBS          =       $(LINKCUPS) $(COMMONLIBS)
+ OPTIM         =       @OPTIM@
diff --git a/package/cups/0002-fix-stack-protector-check.patch b/package/cups/0002-fix-stack-protector-check.patch
new file mode 100644 (file)
index 0000000..1db35ff
--- /dev/null
@@ -0,0 +1,25 @@
+[PATCH]: use AC_TRY_LINK for stack protector check
+
+Actually try to link an executable to test for stack protector support,
+as gcc seems to accept the -fstack-protector argument even when it's
+compiled with --disable-libssp (but linking fails with a error
+finding -lssp_nonshared).
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ config-scripts/cups-compiler.m4 |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: cups-1.3.9/config-scripts/cups-compiler.m4
+===================================================================
+--- cups-1.3.9.orig/config-scripts/cups-compiler.m4
++++ cups-1.3.9/config-scripts/cups-compiler.m4
+@@ -109,7 +109,7 @@ if test -n "$GCC"; then
+       AC_MSG_CHECKING(if GCC supports -fstack-protector)
+       OLDCFLAGS="$CFLAGS"
+       CFLAGS="$CFLAGS -fstack-protector"
+-      AC_TRY_COMPILE(,,
++      AC_TRY_LINK(,,
+               OPTIM="$OPTIM -fstack-protector"
+               AC_MSG_RESULT(yes),
+               AC_MSG_RESULT(no))
diff --git a/package/cups/0003-mantohtml.patch b/package/cups/0003-mantohtml.patch
new file mode 100644 (file)
index 0000000..e6a10b0
--- /dev/null
@@ -0,0 +1,11 @@
+--- cups-1.3.5/man/Makefile    2007-07-12 21:01:14.000000000 -0400
++++ cups-1.3.5/man/Makefile    2008-02-11 08:55:24.000000000 -0500
+@@ -173,7 +173,7 @@ html:      $(MAN1) $(MAN5) $(MAN7) $(MAN8) ma
+       done
+ mantohtml:    mantohtml.o
+-      $(CC) $(LDFLAGS) -o $@ mantohtml.o
++      gcc -I/usr/include -I../ -L/usr/lib mantohtml.c -o mantohtml
+ #
diff --git a/package/cups/cups-0001-fix-static.patch b/package/cups/cups-0001-fix-static.patch
deleted file mode 100644 (file)
index 4c9d0d4..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-cups: fix static linking
-
-Append -lz to the cups linking libs to fix a problem like this one:
-
-../cups/libcups.a(file.o): In function `cupsFileSeek':
-/home/test/test/1/output/build/cups-1.3.11/cups/file.c:1444: undefined 
-reference to `inflateEnd'
-collect2: error: ld returned 1 exit status
-make[2]: *** [ipp] Error 1
-make[2]: *** Waiting for unfinished jobs....
-
-This solution is the same used upstream in newer versions.
-
-Fixes:
-   http://autobuild.buildroot.net/results/f3d/f3d4f67ce7ee1d54f5bd4c87dfddb7417db614e5/
-
-Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
---- cups-1.3.11/Makedefs.in.orig       2014-03-05 13:28:10.175437880 +0000
-+++ cups-1.3.11/Makedefs.in    2014-03-05 13:28:35.398845162 +0000
-@@ -132,7 +132,7 @@ LDFLAGS            =       -L../cups -L../filter @LDARCH
- LEGACY_BACKENDS       =       @LEGACY_BACKENDS@
- LIBCUPSORDER  =       @LIBCUPSORDER@
- LIBCUPSIMAGEORDER =   @LIBCUPSIMAGEORDER@
--LINKCUPS      =       @LINKCUPS@ $(SSLLIBS)
-+LINKCUPS      =       @LINKCUPS@ $(SSLLIBS) $(LIBZ)
- LINKCUPSIMAGE =       @LINKCUPSIMAGE@
- LIBS          =       $(LINKCUPS) $(COMMONLIBS)
- OPTIM         =       @OPTIM@
diff --git a/package/cups/cups-0002-fix-stack-protector-check.patch b/package/cups/cups-0002-fix-stack-protector-check.patch
deleted file mode 100644 (file)
index 1db35ff..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-[PATCH]: use AC_TRY_LINK for stack protector check
-
-Actually try to link an executable to test for stack protector support,
-as gcc seems to accept the -fstack-protector argument even when it's
-compiled with --disable-libssp (but linking fails with a error
-finding -lssp_nonshared).
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- config-scripts/cups-compiler.m4 |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Index: cups-1.3.9/config-scripts/cups-compiler.m4
-===================================================================
---- cups-1.3.9.orig/config-scripts/cups-compiler.m4
-+++ cups-1.3.9/config-scripts/cups-compiler.m4
-@@ -109,7 +109,7 @@ if test -n "$GCC"; then
-       AC_MSG_CHECKING(if GCC supports -fstack-protector)
-       OLDCFLAGS="$CFLAGS"
-       CFLAGS="$CFLAGS -fstack-protector"
--      AC_TRY_COMPILE(,,
-+      AC_TRY_LINK(,,
-               OPTIM="$OPTIM -fstack-protector"
-               AC_MSG_RESULT(yes),
-               AC_MSG_RESULT(no))
diff --git a/package/cups/cups-0003-mantohtml.patch b/package/cups/cups-0003-mantohtml.patch
deleted file mode 100644 (file)
index e6a10b0..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
---- cups-1.3.5/man/Makefile    2007-07-12 21:01:14.000000000 -0400
-+++ cups-1.3.5/man/Makefile    2008-02-11 08:55:24.000000000 -0500
-@@ -173,7 +173,7 @@ html:      $(MAN1) $(MAN5) $(MAN7) $(MAN8) ma
-       done
- mantohtml:    mantohtml.o
--      $(CC) $(LDFLAGS) -o $@ mantohtml.o
-+      gcc -I/usr/include -I../ -L/usr/lib mantohtml.c -o mantohtml
- #
diff --git a/package/curlftpfs/0001-fix-CURLOPT_INFILESIZE.patch b/package/curlftpfs/0001-fix-CURLOPT_INFILESIZE.patch
new file mode 100644 (file)
index 0000000..dc83af0
--- /dev/null
@@ -0,0 +1,13 @@
+Borrowed from the curlftpfs_0.9.2-5 Debian package.
+
+CURLOPT_INFILESIZE does not support -1 arg. This fix bug #556012.
+--- curlftpfs-0.9.2/ftpfs.c.old        2009-12-13 14:12:25.000000000 +0100
++++ curlftpfs-0.9.2/ftpfs.c    2009-12-13 14:12:32.000000000 +0100
+@@ -503,7 +503,6 @@
+   
+   curl_easy_setopt_or_die(fh->write_conn, CURLOPT_URL, fh->full_path);
+   curl_easy_setopt_or_die(fh->write_conn, CURLOPT_UPLOAD, 1);
+-  curl_easy_setopt_or_die(fh->write_conn, CURLOPT_INFILESIZE, -1);
+   curl_easy_setopt_or_die(fh->write_conn, CURLOPT_READFUNCTION, write_data_bg);
+   curl_easy_setopt_or_die(fh->write_conn, CURLOPT_READDATA, fh);
+   curl_easy_setopt_or_die(fh->write_conn, CURLOPT_LOW_SPEED_LIMIT, 1);
diff --git a/package/curlftpfs/0002-free_ftpfs_file-memleak-fix.patch b/package/curlftpfs/0002-free_ftpfs_file-memleak-fix.patch
new file mode 100644 (file)
index 0000000..4966c9d
--- /dev/null
@@ -0,0 +1,14 @@
+Borrowed from the curlftpfs_0.9.2-5 Debian package.
+
+Fix a memory leak. See Bug #587250.
+--- a/ftpfs.c  2008-04-30 01:05:47.000000000 +0200
++++ a/ftpfs.c.slesimple        2010-01-01 22:12:10.000000000 +0100
+@@ -615,6 +615,8 @@ static void free_ftpfs_file(struct ftpfs
+   sem_destroy(&fh->data_need);
+   sem_destroy(&fh->data_written);
+   sem_destroy(&fh->ready);
++  if (fh->buf.size) { buf_free(&fh->buf); }
++  if (fh->stream_buf.size) { buf_free(&fh->stream_buf); }
+   free(fh);
+ }
diff --git a/package/curlftpfs/0003-nocache-memleak-fix.patch b/package/curlftpfs/0003-nocache-memleak-fix.patch
new file mode 100644 (file)
index 0000000..00a4dd6
--- /dev/null
@@ -0,0 +1,59 @@
+Borrowed from the curlftpfs_0.9.2-5 Debian package.
+
+Fix a memory leak when cache is disabled. Closes: #614347.
+diff -ur curlftpfs-0.9.2/cache.c curlftpfs-0.9.2-olexat/cache.c
+--- curlftpfs-0.9.2/cache.c    2008-04-30 01:03:09.000000000 +0200
++++ curlftpfs-0.9.2-olexat/cache.c     2011-02-04 16:43:05.000000000 +0100
+@@ -25,7 +25,7 @@
+     time_t last_cleaned;
+ };
+-static struct cache cache;
++struct cache cache;
+ struct node {
+     struct stat stat;
+diff -ur curlftpfs-0.9.2/ftpfs-ls.c curlftpfs-0.9.2-olexat/ftpfs-ls.c
+--- curlftpfs-0.9.2/ftpfs-ls.c 2008-04-23 12:55:41.000000000 +0200
++++ curlftpfs-0.9.2-olexat/ftpfs-ls.c  2011-02-07 17:23:37.000000000 +0100
+@@ -25,6 +25,13 @@
+ #include "charset_utils.h"
+ #include "ftpfs-ls.h"
++struct cache {
++    int on;
++    char incomplete[];
++};
++
++extern struct cache cache;
++
+ static int parse_dir_unix(const char *line,
+                           struct stat *sbuf,
+                           char *file,
+@@ -243,8 +256,10 @@
+           reallink = g_strdup(link);
+         }
+         int linksize = strlen(reallink);
+-        cache_add_link(full_path, reallink, linksize+1);
+-        DEBUG(1, "cache_add_link: %s %s\n", full_path, reallink);
++        if (cache.on) {
++          cache_add_link(full_path, reallink, linksize+1);
++          DEBUG(1, "cache_add_link: %s %s\n", full_path, reallink);
++        }
+         if (linkbuf && linklen) {
+           if (linksize > linklen) linksize = linklen - 1;
+           strncpy(linkbuf, reallink, linksize);
+@@ -257,8 +272,10 @@
+         DEBUG(1, "filler: %s\n", file);
+         filler(h, file, &stat_buf);
+       } else {
+-        DEBUG(1, "cache_add_attr: %s\n", full_path);
+-        cache_add_attr(full_path, &stat_buf);
++        if (cache.on) {
++          DEBUG(1, "cache_add_attr: %s\n", full_path);
++          cache_add_attr(full_path, &stat_buf);
++        }
+       }
+       DEBUG(2, "comparing %s %s\n", name, file);
+
diff --git a/package/curlftpfs/curlftpfs-000-fix-CURLOPT_INFILESIZE.patch b/package/curlftpfs/curlftpfs-000-fix-CURLOPT_INFILESIZE.patch
deleted file mode 100644 (file)
index dc83af0..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-Borrowed from the curlftpfs_0.9.2-5 Debian package.
-
-CURLOPT_INFILESIZE does not support -1 arg. This fix bug #556012.
---- curlftpfs-0.9.2/ftpfs.c.old        2009-12-13 14:12:25.000000000 +0100
-+++ curlftpfs-0.9.2/ftpfs.c    2009-12-13 14:12:32.000000000 +0100
-@@ -503,7 +503,6 @@
-   
-   curl_easy_setopt_or_die(fh->write_conn, CURLOPT_URL, fh->full_path);
-   curl_easy_setopt_or_die(fh->write_conn, CURLOPT_UPLOAD, 1);
--  curl_easy_setopt_or_die(fh->write_conn, CURLOPT_INFILESIZE, -1);
-   curl_easy_setopt_or_die(fh->write_conn, CURLOPT_READFUNCTION, write_data_bg);
-   curl_easy_setopt_or_die(fh->write_conn, CURLOPT_READDATA, fh);
-   curl_easy_setopt_or_die(fh->write_conn, CURLOPT_LOW_SPEED_LIMIT, 1);
diff --git a/package/curlftpfs/curlftpfs-001-free_ftpfs_file-memleak-fix.patch b/package/curlftpfs/curlftpfs-001-free_ftpfs_file-memleak-fix.patch
deleted file mode 100644 (file)
index 4966c9d..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-Borrowed from the curlftpfs_0.9.2-5 Debian package.
-
-Fix a memory leak. See Bug #587250.
---- a/ftpfs.c  2008-04-30 01:05:47.000000000 +0200
-+++ a/ftpfs.c.slesimple        2010-01-01 22:12:10.000000000 +0100
-@@ -615,6 +615,8 @@ static void free_ftpfs_file(struct ftpfs
-   sem_destroy(&fh->data_need);
-   sem_destroy(&fh->data_written);
-   sem_destroy(&fh->ready);
-+  if (fh->buf.size) { buf_free(&fh->buf); }
-+  if (fh->stream_buf.size) { buf_free(&fh->stream_buf); }
-   free(fh);
- }
diff --git a/package/curlftpfs/curlftpfs-002-nocache-memleak-fix.patch b/package/curlftpfs/curlftpfs-002-nocache-memleak-fix.patch
deleted file mode 100644 (file)
index 00a4dd6..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-Borrowed from the curlftpfs_0.9.2-5 Debian package.
-
-Fix a memory leak when cache is disabled. Closes: #614347.
-diff -ur curlftpfs-0.9.2/cache.c curlftpfs-0.9.2-olexat/cache.c
---- curlftpfs-0.9.2/cache.c    2008-04-30 01:03:09.000000000 +0200
-+++ curlftpfs-0.9.2-olexat/cache.c     2011-02-04 16:43:05.000000000 +0100
-@@ -25,7 +25,7 @@
-     time_t last_cleaned;
- };
--static struct cache cache;
-+struct cache cache;
- struct node {
-     struct stat stat;
-diff -ur curlftpfs-0.9.2/ftpfs-ls.c curlftpfs-0.9.2-olexat/ftpfs-ls.c
---- curlftpfs-0.9.2/ftpfs-ls.c 2008-04-23 12:55:41.000000000 +0200
-+++ curlftpfs-0.9.2-olexat/ftpfs-ls.c  2011-02-07 17:23:37.000000000 +0100
-@@ -25,6 +25,13 @@
- #include "charset_utils.h"
- #include "ftpfs-ls.h"
-+struct cache {
-+    int on;
-+    char incomplete[];
-+};
-+
-+extern struct cache cache;
-+
- static int parse_dir_unix(const char *line,
-                           struct stat *sbuf,
-                           char *file,
-@@ -243,8 +256,10 @@
-           reallink = g_strdup(link);
-         }
-         int linksize = strlen(reallink);
--        cache_add_link(full_path, reallink, linksize+1);
--        DEBUG(1, "cache_add_link: %s %s\n", full_path, reallink);
-+        if (cache.on) {
-+          cache_add_link(full_path, reallink, linksize+1);
-+          DEBUG(1, "cache_add_link: %s %s\n", full_path, reallink);
-+        }
-         if (linkbuf && linklen) {
-           if (linksize > linklen) linksize = linklen - 1;
-           strncpy(linkbuf, reallink, linksize);
-@@ -257,8 +272,10 @@
-         DEBUG(1, "filler: %s\n", file);
-         filler(h, file, &stat_buf);
-       } else {
--        DEBUG(1, "cache_add_attr: %s\n", full_path);
--        cache_add_attr(full_path, &stat_buf);
-+        if (cache.on) {
-+          DEBUG(1, "cache_add_attr: %s\n", full_path);
-+          cache_add_attr(full_path, &stat_buf);
-+        }
-       }
-       DEBUG(2, "comparing %s %s\n", name, file);
-
diff --git a/package/cwiid/0001-fix-link-options-for-as-needed-90.patch b/package/cwiid/0001-fix-link-options-for-as-needed-90.patch
new file mode 100644 (file)
index 0000000..806ddaa
--- /dev/null
@@ -0,0 +1,166 @@
+From 6af678616531eb1f3d3d0a052313ef9d8125bac7 Mon Sep 17 00:00:00 2001
+From: "L. Donnie Smith" <donnie.smith@gatech.edu>
+Date: Thu, 4 Feb 2010 22:53:41 -0500
+Subject: [PATCH] fix link options for --as-needed (#90)
+
+also fix a couple of includes
+---
+ common/include/app.mak    | 2 +-
+ common/include/lib.mak.in | 4 ++--
+ common/include/plugin.mak | 2 +-
+ lswm/Makefile.in          | 2 +-
+ python/Makefile.in        | 2 +-
+ python/Wiimote.c          | 2 +-
+ python/cwiidmodule.c      | 2 +-
+ wmdemo/wmdemo.c           | 1 +
+ wmgui/Makefile.in         | 2 +-
+ wminput/Makefile.in       | 2 +-
+ wminput/main.c            | 1 +
+ 11 files changed, 12 insertions(+), 10 deletions(-)
+
+diff --git a/common/include/app.mak b/common/include/app.mak
+index f00cf12..c26d0ff 100644
+--- a/common/include/app.mak
++++ b/common/include/app.mak
+@@ -10,7 +10,7 @@ DEST_INST_DIR = $(ROOTDIR)$(INST_DIR)
+ all: $(APP_NAME)
+ $(APP_NAME): $(OBJECTS)
+-      $(CC) -o $@ $(OBJECTS) $(LDFLAGS) $(LDLIBS)
++      $(CC) $(LDFLAGS) -o $@ $(OBJECTS) $(LDLIBS)
+ install: $(APP_NAME)
+       install -D $(APP_NAME) $(DEST_INST_DIR)/$(APP_NAME)
+diff --git a/common/include/lib.mak.in b/common/include/lib.mak.in
+index 5e81ff3..3afbb14 100644
+--- a/common/include/lib.mak.in
++++ b/common/include/lib.mak.in
+@@ -25,8 +25,8 @@ $(STATIC_LIB): $(OBJECTS)
+       ar rcs $(STATIC_LIB) $(OBJECTS)
+ $(SHARED_LIB): $(OBJECTS)
+-      $(CC) -shared -Wl,-soname,$(SO_NAME) $(LDFLAGS) $(LDLIBS) \
+-            -o $(SHARED_LIB) $(OBJECTS)
++      $(CC) -shared -Wl,-soname,$(SO_NAME) $(LDFLAGS) -o $(SHARED_LIB) \
++            $(OBJECTS) $(LDLIBS)
+ install: install_header install_static install_shared
+diff --git a/common/include/plugin.mak b/common/include/plugin.mak
+index 0f61502..a2d5c85 100644
+--- a/common/include/plugin.mak
++++ b/common/include/plugin.mak
+@@ -16,7 +16,7 @@ DEST_INST_DIR = $(INST_DIR)
+ all: $(LIB_NAME)
+ $(LIB_NAME): $(OBJECTS)
+-      $(CC) -shared $(LDFLAGS) $(LDLIBS) -o $(LIB_NAME) $(OBJECTS)
++      $(CC) -shared $(LDFLAGS) -o $(LIB_NAME) $(OBJECTS) $(LDLIBS)
+ install: $(LIB_NAME)
+       install -D $(LIB_NAME) $(DEST_INST_DIR)/$(LIB_NAME)
+diff --git a/lswm/Makefile.in b/lswm/Makefile.in
+index 79e8b5b..017104f 100644
+--- a/lswm/Makefile.in
++++ b/lswm/Makefile.in
+@@ -8,7 +8,7 @@ SOURCES = lswm.c
+ CFLAGS += -I@top_builddir@/libcwiid
+ LDFLAGS += -L@top_builddir@/libcwiid
+-LDLIBS += -lcwiid
++LDLIBS += -lcwiid -lbluetooth
+ INST_DIR = @bindir@
+ include $(COMMON)/include/app.mak
+diff --git a/python/Makefile.in b/python/Makefile.in
+index 0d7efdf..0ca57ca 100644
+--- a/python/Makefile.in
++++ b/python/Makefile.in
+@@ -7,7 +7,7 @@ ifdef ROOTDIR
+ endif
+ all:
+-      $(PYTHON) setup.py build_ext $(DEBUGFLAGS) -I@top_builddir@/libcwiid -L@top_builddir@/libcwiid -lcwiid
++      $(PYTHON) setup.py build_ext $(DEBUGFLAGS) -I@top_builddir@/libcwiid -L@top_builddir@/libcwiid -lcwiid -lbluetooth
+ install:
+       $(PYTHON) setup.py install --install-lib=${libdir}/python@PYTHON_VERSION@/site-packages $(SET_ROOT_DIR)
+diff --git a/python/Wiimote.c b/python/Wiimote.c
+index 794e7e2..523185e 100644
+--- a/python/Wiimote.c
++++ b/python/Wiimote.c
+@@ -24,7 +24,7 @@
+ #include "structmember.h"
+ #include <errno.h>
+ #include <bluetooth/bluetooth.h>
+-#include "cwiid.h"
++#include <cwiid.h>
+ #if (PY_VERSION_HEX < 0x02050000)
+   #ifndef PY_SSIZE_T_MIN
+diff --git a/python/cwiidmodule.c b/python/cwiidmodule.c
+index f6a8f33..a01ed82 100644
+--- a/python/cwiidmodule.c
++++ b/python/cwiidmodule.c
+@@ -24,7 +24,7 @@
+ #include <stdlib.h>
+-#include "cwiid.h"
++#include <cwiid.h>
+ #include "structmember.h"
+ /* externally defined types */
+diff --git a/wmdemo/wmdemo.c b/wmdemo/wmdemo.c
+index 70a25a1..b7aaa7f 100644
+--- a/wmdemo/wmdemo.c
++++ b/wmdemo/wmdemo.c
+@@ -2,6 +2,7 @@
+ #include <stdio.h>
+ #include <stdlib.h>
++#include <bluetooth/bluetooth.h>
+ #include <cwiid.h>
+ /* This is a sample program written to demonstrate basic CWiid libwiimote
+diff --git a/wmgui/Makefile.in b/wmgui/Makefile.in
+index 41b205e..14d1c1e 100644
+--- a/wmgui/Makefile.in
++++ b/wmgui/Makefile.in
+@@ -8,7 +8,7 @@ SOURCES = main.c interface.c support.c
+ CFLAGS += @GTK_CFLAGS@ -I@top_builddir@/libcwiid
+ LDFLAGS += -L@top_builddir@/libcwiid
+-LDLIBS += @GTK_LIBS@ -lm -lcwiid
++LDLIBS += @GTK_LIBS@ -lcwiid -lbluetooth -lm
+ INST_DIR = @bindir@
+ include $(COMMON)/include/app.mak
+diff --git a/wminput/Makefile.in b/wminput/Makefile.in
+index 009d4d5..d3c3679 100644
+--- a/wminput/Makefile.in
++++ b/wminput/Makefile.in
+@@ -14,7 +14,7 @@ CFLAGS += -I@top_builddir@/libcwiid \
+       -DWMINPUT_CONFIG_DIR=\"$(WMINPUT_CONFIG_DIR)\" \
+       -DCWIID_PLUGINS_DIR=\"$(CWIID_PLUGINS_DIR)\"
+-LDLIBS += -lcwiid -ldl
++LDLIBS += -lcwiid -lbluetooth -ldl -lpthread
+ LDFLAGS += -L@top_builddir@/libcwiid -rdynamic
+ INST_DIR = @bindir@
+diff --git a/wminput/main.c b/wminput/main.c
+index c3a7445..bbc98d9 100644
+--- a/wminput/main.c
++++ b/wminput/main.c
+@@ -30,6 +30,7 @@
+ #include <signal.h>
+ #include <sys/types.h>
+ #include <unistd.h>
++#include <bluetooth/bluetooth.h>
+ #include <cwiid.h>
+-- 
+1.8.5.2
+
diff --git a/package/cwiid/0002-Update-for-BlueZ-changes.patch b/package/cwiid/0002-Update-for-BlueZ-changes.patch
new file mode 100644 (file)
index 0000000..c0d78a8
--- /dev/null
@@ -0,0 +1,28 @@
+From c5dd7d4a9af5a7d8ead8ad26d9e5e0f8f8292d29 Mon Sep 17 00:00:00 2001
+From: "L. Donnie Smith" <donnie.smith@gatech.edu>
+Date: Sun, 30 Nov 2008 22:34:08 +0000
+Subject: [PATCH] Update for BlueZ changes.
+
+git-svn-id: http://abstrakraft.org/cwiid/svn/trunk@183 918edb2d-ff29-0410-9de2-eb38e7f22bc7
+---
+ libcwiid/bluetooth.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/libcwiid/bluetooth.c b/libcwiid/bluetooth.c
+index 63284a8..e986f75 100644
+--- a/libcwiid/bluetooth.c
++++ b/libcwiid/bluetooth.c
+@@ -122,8 +122,8 @@ int cwiid_get_bdinfo_array(int dev_id, unsigned int timeout, int max_bdinfo,
+               }
+               /* timeout (10000) in milliseconds */
+-              if (hci_remote_name(sock, &dev_list[i].bdaddr, BT_NAME_LEN,
+-                                  (*bdinfo)[bdinfo_count].name, 10000)) {
++              if (hci_read_remote_name(sock, &dev_list[i].bdaddr, BT_NAME_LEN,
++                                       (*bdinfo)[bdinfo_count].name, 10000)) {
+                       cwiid_err(NULL, "Bluetooth name read error");
+                       err = 1;
+                       goto CODA;
+-- 
+1.8.5.2
+
diff --git a/package/cwiid/0003-wmdemo-fix-linking-by-adding-the-missing-lbluetooth-.patch b/package/cwiid/0003-wmdemo-fix-linking-by-adding-the-missing-lbluetooth-.patch
new file mode 100644 (file)
index 0000000..e1e4ec4
--- /dev/null
@@ -0,0 +1,27 @@
+From af6bffb5b8b71e99e0f9bbbd2cf1fbd695a643c2 Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Sat, 8 Dec 2012 13:32:40 +0100
+Subject: [PATCH 1/2] wmdemo: fix linking by adding the missing -lbluetooth to
+ LDLIBS
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+---
+ wmdemo/Makefile.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/wmdemo/Makefile.in b/wmdemo/Makefile.in
+index 56aed58..1eccc02 100644
+--- a/wmdemo/Makefile.in
++++ b/wmdemo/Makefile.in
+@@ -8,7 +8,7 @@ SOURCES = wmdemo.c
+ CFLAGS += -I@top_builddir@/libcwiid
+ LDFLAGS += -L@top_builddir@/libcwiid
+-LDLIBS += -lcwiid
++LDLIBS += -lcwiid -lbluetooth
+ INST_DIR = @bindir@
+ include $(COMMON)/include/app.mak
+-- 
+1.8.5.2
+
diff --git a/package/cwiid/0004-configure-make-wmgui-build-optional.patch b/package/cwiid/0004-configure-make-wmgui-build-optional.patch
new file mode 100644 (file)
index 0000000..f5eff33
--- /dev/null
@@ -0,0 +1,64 @@
+From dbb578450974db5decc24560da4aeaed838849a1 Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Thu, 2 Jan 2014 14:03:07 +0100
+Subject: [PATCH 2/2] configure: make wmgui build optional
+
+So, make gtk-2 and glib2 dependencies optional (only needed by wmgui)
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+---
+ Makefile.in  |  2 +-
+ configure.ac | 17 +++++++++++++----
+ 2 files changed, 14 insertions(+), 5 deletions(-)
+
+diff --git a/Makefile.in b/Makefile.in
+index 6d3ac98..3d2fb45 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -3,7 +3,7 @@
+ include @top_builddir@/defs.mak
+ LIB_DIRS = libcwiid
+-BIN_DIRS = wmgui wminput lswm
++BIN_DIRS = @WMGUI@ wminput lswm
+ DOC_DIRS = man doc
+ ifdef PYTHON
+ BIND_DIRS = python
+diff --git a/configure.ac b/configure.ac
+index 82ca3e1..d146cb6 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -15,6 +15,11 @@ if test "$YACC" != "bison -y"; then
+       AC_MSG_ERROR([bison not found])
+ fi
++AC_ARG_ENABLE(
++      [wmgui],
++      [AS_HELP_STRING([--disable-wmgui],[Do not build wmgui binary (also drop the gtk-2/glib2 dependency)])],
++      [ENABLE_WMGUI="$enableval"],[ENABLE_WMGUI=yes])
++
+ AC_ARG_WITH(
+       [python],
+       [AS_HELP_STRING([--without-python],[compile without python support])],
+@@ -98,10 +103,14 @@ else
+ fi
+ AC_SUBST(LDCONFIG)
+-pkg_modules="gtk+-2.0 >= 2.0.0 gthread-2.0"
+-PKG_CHECK_MODULES([GTK], [$pkg_modules])
+-AC_SUBST(GTK_CFLAGS)
+-AC_SUBST(GTK_LIBS)
++AS_IF(
++      [test "x$ENABLE_WMGUI" = xyes],
++      [pkg_modules="gtk+-2.0 >= 2.0.0 gthread-2.0" ;
++      PKG_CHECK_MODULES([GTK], [$pkg_modules])
++      AC_SUBST(GTK_CFLAGS)
++      AC_SUBST(GTK_LIBS)
++      AC_SUBST(WMGUI, wmgui)]
++)
+ AC_OUTPUT(
+       [Makefile]
+-- 
+1.8.5.2
+
diff --git a/package/cwiid/cwiid-0001-fix-link-options-for-as-needed-90.patch b/package/cwiid/cwiid-0001-fix-link-options-for-as-needed-90.patch
deleted file mode 100644 (file)
index 806ddaa..0000000
+++ /dev/null
@@ -1,166 +0,0 @@
-From 6af678616531eb1f3d3d0a052313ef9d8125bac7 Mon Sep 17 00:00:00 2001
-From: "L. Donnie Smith" <donnie.smith@gatech.edu>
-Date: Thu, 4 Feb 2010 22:53:41 -0500
-Subject: [PATCH] fix link options for --as-needed (#90)
-
-also fix a couple of includes
----
- common/include/app.mak    | 2 +-
- common/include/lib.mak.in | 4 ++--
- common/include/plugin.mak | 2 +-
- lswm/Makefile.in          | 2 +-
- python/Makefile.in        | 2 +-
- python/Wiimote.c          | 2 +-
- python/cwiidmodule.c      | 2 +-
- wmdemo/wmdemo.c           | 1 +
- wmgui/Makefile.in         | 2 +-
- wminput/Makefile.in       | 2 +-
- wminput/main.c            | 1 +
- 11 files changed, 12 insertions(+), 10 deletions(-)
-
-diff --git a/common/include/app.mak b/common/include/app.mak
-index f00cf12..c26d0ff 100644
---- a/common/include/app.mak
-+++ b/common/include/app.mak
-@@ -10,7 +10,7 @@ DEST_INST_DIR = $(ROOTDIR)$(INST_DIR)
- all: $(APP_NAME)
- $(APP_NAME): $(OBJECTS)
--      $(CC) -o $@ $(OBJECTS) $(LDFLAGS) $(LDLIBS)
-+      $(CC) $(LDFLAGS) -o $@ $(OBJECTS) $(LDLIBS)
- install: $(APP_NAME)
-       install -D $(APP_NAME) $(DEST_INST_DIR)/$(APP_NAME)
-diff --git a/common/include/lib.mak.in b/common/include/lib.mak.in
-index 5e81ff3..3afbb14 100644
---- a/common/include/lib.mak.in
-+++ b/common/include/lib.mak.in
-@@ -25,8 +25,8 @@ $(STATIC_LIB): $(OBJECTS)
-       ar rcs $(STATIC_LIB) $(OBJECTS)
- $(SHARED_LIB): $(OBJECTS)
--      $(CC) -shared -Wl,-soname,$(SO_NAME) $(LDFLAGS) $(LDLIBS) \
--            -o $(SHARED_LIB) $(OBJECTS)
-+      $(CC) -shared -Wl,-soname,$(SO_NAME) $(LDFLAGS) -o $(SHARED_LIB) \
-+            $(OBJECTS) $(LDLIBS)
- install: install_header install_static install_shared
-diff --git a/common/include/plugin.mak b/common/include/plugin.mak
-index 0f61502..a2d5c85 100644
---- a/common/include/plugin.mak
-+++ b/common/include/plugin.mak
-@@ -16,7 +16,7 @@ DEST_INST_DIR = $(INST_DIR)
- all: $(LIB_NAME)
- $(LIB_NAME): $(OBJECTS)
--      $(CC) -shared $(LDFLAGS) $(LDLIBS) -o $(LIB_NAME) $(OBJECTS)
-+      $(CC) -shared $(LDFLAGS) -o $(LIB_NAME) $(OBJECTS) $(LDLIBS)
- install: $(LIB_NAME)
-       install -D $(LIB_NAME) $(DEST_INST_DIR)/$(LIB_NAME)
-diff --git a/lswm/Makefile.in b/lswm/Makefile.in
-index 79e8b5b..017104f 100644
---- a/lswm/Makefile.in
-+++ b/lswm/Makefile.in
-@@ -8,7 +8,7 @@ SOURCES = lswm.c
- CFLAGS += -I@top_builddir@/libcwiid
- LDFLAGS += -L@top_builddir@/libcwiid
--LDLIBS += -lcwiid
-+LDLIBS += -lcwiid -lbluetooth
- INST_DIR = @bindir@
- include $(COMMON)/include/app.mak
-diff --git a/python/Makefile.in b/python/Makefile.in
-index 0d7efdf..0ca57ca 100644
---- a/python/Makefile.in
-+++ b/python/Makefile.in
-@@ -7,7 +7,7 @@ ifdef ROOTDIR
- endif
- all:
--      $(PYTHON) setup.py build_ext $(DEBUGFLAGS) -I@top_builddir@/libcwiid -L@top_builddir@/libcwiid -lcwiid
-+      $(PYTHON) setup.py build_ext $(DEBUGFLAGS) -I@top_builddir@/libcwiid -L@top_builddir@/libcwiid -lcwiid -lbluetooth
- install:
-       $(PYTHON) setup.py install --install-lib=${libdir}/python@PYTHON_VERSION@/site-packages $(SET_ROOT_DIR)
-diff --git a/python/Wiimote.c b/python/Wiimote.c
-index 794e7e2..523185e 100644
---- a/python/Wiimote.c
-+++ b/python/Wiimote.c
-@@ -24,7 +24,7 @@
- #include "structmember.h"
- #include <errno.h>
- #include <bluetooth/bluetooth.h>
--#include "cwiid.h"
-+#include <cwiid.h>
- #if (PY_VERSION_HEX < 0x02050000)
-   #ifndef PY_SSIZE_T_MIN
-diff --git a/python/cwiidmodule.c b/python/cwiidmodule.c
-index f6a8f33..a01ed82 100644
---- a/python/cwiidmodule.c
-+++ b/python/cwiidmodule.c
-@@ -24,7 +24,7 @@
- #include <stdlib.h>
--#include "cwiid.h"
-+#include <cwiid.h>
- #include "structmember.h"
- /* externally defined types */
-diff --git a/wmdemo/wmdemo.c b/wmdemo/wmdemo.c
-index 70a25a1..b7aaa7f 100644
---- a/wmdemo/wmdemo.c
-+++ b/wmdemo/wmdemo.c
-@@ -2,6 +2,7 @@
- #include <stdio.h>
- #include <stdlib.h>
-+#include <bluetooth/bluetooth.h>
- #include <cwiid.h>
- /* This is a sample program written to demonstrate basic CWiid libwiimote
-diff --git a/wmgui/Makefile.in b/wmgui/Makefile.in
-index 41b205e..14d1c1e 100644
---- a/wmgui/Makefile.in
-+++ b/wmgui/Makefile.in
-@@ -8,7 +8,7 @@ SOURCES = main.c interface.c support.c
- CFLAGS += @GTK_CFLAGS@ -I@top_builddir@/libcwiid
- LDFLAGS += -L@top_builddir@/libcwiid
--LDLIBS += @GTK_LIBS@ -lm -lcwiid
-+LDLIBS += @GTK_LIBS@ -lcwiid -lbluetooth -lm
- INST_DIR = @bindir@
- include $(COMMON)/include/app.mak
-diff --git a/wminput/Makefile.in b/wminput/Makefile.in
-index 009d4d5..d3c3679 100644
---- a/wminput/Makefile.in
-+++ b/wminput/Makefile.in
-@@ -14,7 +14,7 @@ CFLAGS += -I@top_builddir@/libcwiid \
-       -DWMINPUT_CONFIG_DIR=\"$(WMINPUT_CONFIG_DIR)\" \
-       -DCWIID_PLUGINS_DIR=\"$(CWIID_PLUGINS_DIR)\"
--LDLIBS += -lcwiid -ldl
-+LDLIBS += -lcwiid -lbluetooth -ldl -lpthread
- LDFLAGS += -L@top_builddir@/libcwiid -rdynamic
- INST_DIR = @bindir@
-diff --git a/wminput/main.c b/wminput/main.c
-index c3a7445..bbc98d9 100644
---- a/wminput/main.c
-+++ b/wminput/main.c
-@@ -30,6 +30,7 @@
- #include <signal.h>
- #include <sys/types.h>
- #include <unistd.h>
-+#include <bluetooth/bluetooth.h>
- #include <cwiid.h>
--- 
-1.8.5.2
-
diff --git a/package/cwiid/cwiid-0002-Update-for-BlueZ-changes.patch b/package/cwiid/cwiid-0002-Update-for-BlueZ-changes.patch
deleted file mode 100644 (file)
index c0d78a8..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-From c5dd7d4a9af5a7d8ead8ad26d9e5e0f8f8292d29 Mon Sep 17 00:00:00 2001
-From: "L. Donnie Smith" <donnie.smith@gatech.edu>
-Date: Sun, 30 Nov 2008 22:34:08 +0000
-Subject: [PATCH] Update for BlueZ changes.
-
-git-svn-id: http://abstrakraft.org/cwiid/svn/trunk@183 918edb2d-ff29-0410-9de2-eb38e7f22bc7
----
- libcwiid/bluetooth.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/libcwiid/bluetooth.c b/libcwiid/bluetooth.c
-index 63284a8..e986f75 100644
---- a/libcwiid/bluetooth.c
-+++ b/libcwiid/bluetooth.c
-@@ -122,8 +122,8 @@ int cwiid_get_bdinfo_array(int dev_id, unsigned int timeout, int max_bdinfo,
-               }
-               /* timeout (10000) in milliseconds */
--              if (hci_remote_name(sock, &dev_list[i].bdaddr, BT_NAME_LEN,
--                                  (*bdinfo)[bdinfo_count].name, 10000)) {
-+              if (hci_read_remote_name(sock, &dev_list[i].bdaddr, BT_NAME_LEN,
-+                                       (*bdinfo)[bdinfo_count].name, 10000)) {
-                       cwiid_err(NULL, "Bluetooth name read error");
-                       err = 1;
-                       goto CODA;
--- 
-1.8.5.2
-
diff --git a/package/cwiid/cwiid-0003-wmdemo-fix-linking-by-adding-the-missing-lbluetooth-.patch b/package/cwiid/cwiid-0003-wmdemo-fix-linking-by-adding-the-missing-lbluetooth-.patch
deleted file mode 100644 (file)
index e1e4ec4..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-From af6bffb5b8b71e99e0f9bbbd2cf1fbd695a643c2 Mon Sep 17 00:00:00 2001
-From: Samuel Martin <s.martin49@gmail.com>
-Date: Sat, 8 Dec 2012 13:32:40 +0100
-Subject: [PATCH 1/2] wmdemo: fix linking by adding the missing -lbluetooth to
- LDLIBS
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
----
- wmdemo/Makefile.in | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/wmdemo/Makefile.in b/wmdemo/Makefile.in
-index 56aed58..1eccc02 100644
---- a/wmdemo/Makefile.in
-+++ b/wmdemo/Makefile.in
-@@ -8,7 +8,7 @@ SOURCES = wmdemo.c
- CFLAGS += -I@top_builddir@/libcwiid
- LDFLAGS += -L@top_builddir@/libcwiid
--LDLIBS += -lcwiid
-+LDLIBS += -lcwiid -lbluetooth
- INST_DIR = @bindir@
- include $(COMMON)/include/app.mak
--- 
-1.8.5.2
-
diff --git a/package/cwiid/cwiid-0004-configure-make-wmgui-build-optional.patch b/package/cwiid/cwiid-0004-configure-make-wmgui-build-optional.patch
deleted file mode 100644 (file)
index f5eff33..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-From dbb578450974db5decc24560da4aeaed838849a1 Mon Sep 17 00:00:00 2001
-From: Samuel Martin <s.martin49@gmail.com>
-Date: Thu, 2 Jan 2014 14:03:07 +0100
-Subject: [PATCH 2/2] configure: make wmgui build optional
-
-So, make gtk-2 and glib2 dependencies optional (only needed by wmgui)
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
----
- Makefile.in  |  2 +-
- configure.ac | 17 +++++++++++++----
- 2 files changed, 14 insertions(+), 5 deletions(-)
-
-diff --git a/Makefile.in b/Makefile.in
-index 6d3ac98..3d2fb45 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -3,7 +3,7 @@
- include @top_builddir@/defs.mak
- LIB_DIRS = libcwiid
--BIN_DIRS = wmgui wminput lswm
-+BIN_DIRS = @WMGUI@ wminput lswm
- DOC_DIRS = man doc
- ifdef PYTHON
- BIND_DIRS = python
-diff --git a/configure.ac b/configure.ac
-index 82ca3e1..d146cb6 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -15,6 +15,11 @@ if test "$YACC" != "bison -y"; then
-       AC_MSG_ERROR([bison not found])
- fi
-+AC_ARG_ENABLE(
-+      [wmgui],
-+      [AS_HELP_STRING([--disable-wmgui],[Do not build wmgui binary (also drop the gtk-2/glib2 dependency)])],
-+      [ENABLE_WMGUI="$enableval"],[ENABLE_WMGUI=yes])
-+
- AC_ARG_WITH(
-       [python],
-       [AS_HELP_STRING([--without-python],[compile without python support])],
-@@ -98,10 +103,14 @@ else
- fi
- AC_SUBST(LDCONFIG)
--pkg_modules="gtk+-2.0 >= 2.0.0 gthread-2.0"
--PKG_CHECK_MODULES([GTK], [$pkg_modules])
--AC_SUBST(GTK_CFLAGS)
--AC_SUBST(GTK_LIBS)
-+AS_IF(
-+      [test "x$ENABLE_WMGUI" = xyes],
-+      [pkg_modules="gtk+-2.0 >= 2.0.0 gthread-2.0" ;
-+      PKG_CHECK_MODULES([GTK], [$pkg_modules])
-+      AC_SUBST(GTK_CFLAGS)
-+      AC_SUBST(GTK_LIBS)
-+      AC_SUBST(WMGUI, wmgui)]
-+)
- AC_OUTPUT(
-       [Makefile]
--- 
-1.8.5.2
-
diff --git a/package/dash/0001-no-config.h-for-helpers.patch b/package/dash/0001-no-config.h-for-helpers.patch
new file mode 100644 (file)
index 0000000..9fd449c
--- /dev/null
@@ -0,0 +1,35 @@
+[PATCH] Don't include config.h when building helpers using the native compiler
+
+config.h contains settings for the cross compiler (most importantly
+32/64bit versions of functions), so don't include it when calling the
+native compiler to build the helpers.
+
+Otherwise we get build errors like:
+
+/usr/bin/gcc -include ../config.h -DBSD=1 -DSHELL -DIFS_BROKEN  -g -O2 -Wall    -o mkinit mkinit.c
+In file included from /usr/include/sys/stat.h:107,
+                 from /usr/include/fcntl.h:38,
+                 from mkinit.c:50:
+/usr/include/bits/stat.h:117: error: redefinition of â€˜struct stat’
+In file included from /usr/include/fcntl.h:38,
+                 from mkinit.c:50:
+/usr/include/sys/stat.h:504: error: redefinition of â€˜stat’
+/usr/include/sys/stat.h:455: note: previous definition of â€˜stat’ was here
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ src/Makefile.in |    1 -
+ 1 file changed, 1 deletion(-)
+
+Index: dash-0.5.5.1/src/Makefile.in
+===================================================================
+--- dash-0.5.5.1.orig/src/Makefile.in
++++ dash-0.5.5.1/src/Makefile.in
+@@ -165,7 +165,6 @@ COMMON_CPPFLAGS = \
+ AM_CFLAGS = $(COMMON_CFLAGS)
+ AM_CPPFLAGS = $(COMMON_CPPFLAGS)
+ AM_CFLAGS_FOR_BUILD = -g -O2 $(COMMON_CFLAGS) 
+-AM_CPPFLAGS_FOR_BUILD = $(COMMON_CPPFLAGS)
+ COMPILE_FOR_BUILD = \
+       $(CC_FOR_BUILD) $(AM_CPPFLAGS_FOR_BUILD) $(CPPFLAGS_FOR_BUILD) \
+       $(AM_CFLAGS_FOR_BUILD) $(CFLAGS_FOR_BUILD) 
diff --git a/package/dash/dash-0001-no-config.h-for-helpers.patch b/package/dash/dash-0001-no-config.h-for-helpers.patch
deleted file mode 100644 (file)
index 9fd449c..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-[PATCH] Don't include config.h when building helpers using the native compiler
-
-config.h contains settings for the cross compiler (most importantly
-32/64bit versions of functions), so don't include it when calling the
-native compiler to build the helpers.
-
-Otherwise we get build errors like:
-
-/usr/bin/gcc -include ../config.h -DBSD=1 -DSHELL -DIFS_BROKEN  -g -O2 -Wall    -o mkinit mkinit.c
-In file included from /usr/include/sys/stat.h:107,
-                 from /usr/include/fcntl.h:38,
-                 from mkinit.c:50:
-/usr/include/bits/stat.h:117: error: redefinition of â€˜struct stat’
-In file included from /usr/include/fcntl.h:38,
-                 from mkinit.c:50:
-/usr/include/sys/stat.h:504: error: redefinition of â€˜stat’
-/usr/include/sys/stat.h:455: note: previous definition of â€˜stat’ was here
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- src/Makefile.in |    1 -
- 1 file changed, 1 deletion(-)
-
-Index: dash-0.5.5.1/src/Makefile.in
-===================================================================
---- dash-0.5.5.1.orig/src/Makefile.in
-+++ dash-0.5.5.1/src/Makefile.in
-@@ -165,7 +165,6 @@ COMMON_CPPFLAGS = \
- AM_CFLAGS = $(COMMON_CFLAGS)
- AM_CPPFLAGS = $(COMMON_CPPFLAGS)
- AM_CFLAGS_FOR_BUILD = -g -O2 $(COMMON_CFLAGS) 
--AM_CPPFLAGS_FOR_BUILD = $(COMMON_CPPFLAGS)
- COMPILE_FOR_BUILD = \
-       $(CC_FOR_BUILD) $(AM_CPPFLAGS_FOR_BUILD) $(CPPFLAGS_FOR_BUILD) \
-       $(AM_CFLAGS_FOR_BUILD) $(CFLAGS_FOR_BUILD) 
diff --git a/package/dbus-cpp/0001-gcc4.7.patch b/package/dbus-cpp/0001-gcc4.7.patch
new file mode 100644 (file)
index 0000000..ad3046c
--- /dev/null
@@ -0,0 +1,17 @@
+Fix build failure with gcc 4.7+
+From bugtracker: http://sourceforge.net/p/dbus-cplusplus/patches/13/
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff --git a/include/dbus-c++/eventloop-integration.h b/include/dbus-c++/eventloop-integration.h
+index 1b0302e..3e44304 100644
+--- a/include/dbus-c++/eventloop-integration.h
++++ b/include/dbus-c++/eventloop-integration.h
+@@ -26,6 +26,7 @@
+ #define __DBUSXX_EVENTLOOP_INTEGRATION_H
+ #include <errno.h>
++#include <unistd.h>
+ #include "api.h"
+ #include "dispatcher.h"
+ #include "util.h"
diff --git a/package/dbus-cpp/0002-cxxflags-ldflags-for-build.patch b/package/dbus-cpp/0002-cxxflags-ldflags-for-build.patch
new file mode 100644 (file)
index 0000000..fefb969
--- /dev/null
@@ -0,0 +1,32 @@
+Use CXXFLAGS_FOR_BUILD and LDFLAGS_FOR_BUILD for the tools since expat
+may not be living in the default include & library path.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura libdbus-c++-0.9.0.orig/configure.ac libdbus-c++-0.9.0/configure.ac
+--- libdbus-c++-0.9.0.orig/configure.ac        2014-01-05 15:28:03.653886567 -0300
++++ libdbus-c++-0.9.0/configure.ac     2014-01-05 15:44:32.571172225 -0300
+@@ -65,7 +65,11 @@
+ AC_PROG_CXX
+ CXX_FOR_BUILD=${CXX_FOR_BUILD-${CXX}}
++CXXFLAGS_FOR_BUILD=${CXXFLAGS_FOR_BUILD-${CXXFLAGS}}
++LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-${LDFLAGS}}
+ AC_SUBST(CXX_FOR_BUILD)
++AC_SUBST(CXXFLAGS_FOR_BUILD)
++AC_SUBST(LDFLAGS_FOR_BUILD)
+ AM_PROG_LIBTOOL
+diff -Nura libdbus-c++-0.9.0.orig/tools/Makefile.am libdbus-c++-0.9.0/tools/Makefile.am
+--- libdbus-c++-0.9.0.orig/tools/Makefile.am   2014-01-05 15:28:03.652886535 -0300
++++ libdbus-c++-0.9.0/tools/Makefile.am        2014-01-05 15:44:42.071482390 -0300
+@@ -1,6 +1,8 @@
+ # hacky, but ...
+ CXX = $(CXX_FOR_BUILD)
++CXXFLAGS = $(CXXFLAGS_FOR_BUILD)
++LDFLAGS = $(LDFLAGS_FOR_BUILD)
+ AM_CPPFLAGS = \
+       $(dbus_CFLAGS) \
diff --git a/package/dbus-cpp/dbus-cpp-0001-gcc4.7.patch b/package/dbus-cpp/dbus-cpp-0001-gcc4.7.patch
deleted file mode 100644 (file)
index ad3046c..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-Fix build failure with gcc 4.7+
-From bugtracker: http://sourceforge.net/p/dbus-cplusplus/patches/13/
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff --git a/include/dbus-c++/eventloop-integration.h b/include/dbus-c++/eventloop-integration.h
-index 1b0302e..3e44304 100644
---- a/include/dbus-c++/eventloop-integration.h
-+++ b/include/dbus-c++/eventloop-integration.h
-@@ -26,6 +26,7 @@
- #define __DBUSXX_EVENTLOOP_INTEGRATION_H
- #include <errno.h>
-+#include <unistd.h>
- #include "api.h"
- #include "dispatcher.h"
- #include "util.h"
diff --git a/package/dbus-cpp/dbus-cpp-0002-cxxflags-ldflags-for-build.patch b/package/dbus-cpp/dbus-cpp-0002-cxxflags-ldflags-for-build.patch
deleted file mode 100644 (file)
index fefb969..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-Use CXXFLAGS_FOR_BUILD and LDFLAGS_FOR_BUILD for the tools since expat
-may not be living in the default include & library path.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura libdbus-c++-0.9.0.orig/configure.ac libdbus-c++-0.9.0/configure.ac
---- libdbus-c++-0.9.0.orig/configure.ac        2014-01-05 15:28:03.653886567 -0300
-+++ libdbus-c++-0.9.0/configure.ac     2014-01-05 15:44:32.571172225 -0300
-@@ -65,7 +65,11 @@
- AC_PROG_CXX
- CXX_FOR_BUILD=${CXX_FOR_BUILD-${CXX}}
-+CXXFLAGS_FOR_BUILD=${CXXFLAGS_FOR_BUILD-${CXXFLAGS}}
-+LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-${LDFLAGS}}
- AC_SUBST(CXX_FOR_BUILD)
-+AC_SUBST(CXXFLAGS_FOR_BUILD)
-+AC_SUBST(LDFLAGS_FOR_BUILD)
- AM_PROG_LIBTOOL
-diff -Nura libdbus-c++-0.9.0.orig/tools/Makefile.am libdbus-c++-0.9.0/tools/Makefile.am
---- libdbus-c++-0.9.0.orig/tools/Makefile.am   2014-01-05 15:28:03.652886535 -0300
-+++ libdbus-c++-0.9.0/tools/Makefile.am        2014-01-05 15:44:42.071482390 -0300
-@@ -1,6 +1,8 @@
- # hacky, but ...
- CXX = $(CXX_FOR_BUILD)
-+CXXFLAGS = $(CXXFLAGS_FOR_BUILD)
-+LDFLAGS = $(LDFLAGS_FOR_BUILD)
- AM_CPPFLAGS = \
-       $(dbus_CFLAGS) \
diff --git a/package/devmem2/0001-be-coherent-in-type-usage.patch b/package/devmem2/0001-be-coherent-in-type-usage.patch
new file mode 100644 (file)
index 0000000..1777387
--- /dev/null
@@ -0,0 +1,52 @@
+From 6570e7afe1eebd64022b871b9ebd9a76be267f57 Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Date: Sun, 29 Jun 2014 16:27:49 +0200
+Subject: [PATCH] Be coherent in type usage
+
+- no need to use off_t because it is read from strtoul()
+- print unsigned int type correctly
+
+When built with _FILE_OFFSET_BITS=64, off_t becomes an long long int
+and was printed as an unsigned int which lead to a garbled output.
+
+Signed-off-by: Colin Didier <colin.didier@devialet.com>
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ devmem2.c | 7 +++----
+ 1 file changed, 3 insertions(+), 4 deletions(-)
+
+diff --git a/devmem2.c b/devmem2.c
+index 7732ecb..7aa5c79 100644
+--- a/devmem2.c
++++ b/devmem2.c
+@@ -58,8 +58,7 @@
+ int main(int argc, char **argv) {
+     int fd;
+     void *map_base, *virt_addr; 
+-      unsigned long read_result, writeval;
+-      off_t target;
++      unsigned long target, read_result, writeval;
+       int access_type = 'w';
+       
+       if(argc < 2) {
+@@ -101,7 +100,7 @@ int main(int argc, char **argv) {
+                       fprintf(stderr, "Illegal data type '%c'.\n", access_type);
+                       exit(2);
+       }
+-    printf("Value at address 0x%X (%p): 0x%X\n", target, virt_addr, read_result); 
++    printf("Value at address 0x%lX (%p): 0x%X\n", target, virt_addr, read_result); 
+     fflush(stdout);
+       if(argc > 3) {
+@@ -120,7 +119,7 @@ int main(int argc, char **argv) {
+                               read_result = *((unsigned long *) virt_addr);
+                               break;
+               }
+-              printf("Written 0x%X; readback 0x%X\n", writeval, read_result); 
++              printf("Written 0x%lX; readback 0x%X\n", writeval, read_result); 
+               fflush(stdout);
+       }
+       
+-- 
+2.0.0
+
diff --git a/package/devmem2/devmem2-0001-be-coherent-in-type-usage.patch b/package/devmem2/devmem2-0001-be-coherent-in-type-usage.patch
deleted file mode 100644 (file)
index 1777387..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-From 6570e7afe1eebd64022b871b9ebd9a76be267f57 Mon Sep 17 00:00:00 2001
-From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-Date: Sun, 29 Jun 2014 16:27:49 +0200
-Subject: [PATCH] Be coherent in type usage
-
-- no need to use off_t because it is read from strtoul()
-- print unsigned int type correctly
-
-When built with _FILE_OFFSET_BITS=64, off_t becomes an long long int
-and was printed as an unsigned int which lead to a garbled output.
-
-Signed-off-by: Colin Didier <colin.didier@devialet.com>
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
----
- devmem2.c | 7 +++----
- 1 file changed, 3 insertions(+), 4 deletions(-)
-
-diff --git a/devmem2.c b/devmem2.c
-index 7732ecb..7aa5c79 100644
---- a/devmem2.c
-+++ b/devmem2.c
-@@ -58,8 +58,7 @@
- int main(int argc, char **argv) {
-     int fd;
-     void *map_base, *virt_addr; 
--      unsigned long read_result, writeval;
--      off_t target;
-+      unsigned long target, read_result, writeval;
-       int access_type = 'w';
-       
-       if(argc < 2) {
-@@ -101,7 +100,7 @@ int main(int argc, char **argv) {
-                       fprintf(stderr, "Illegal data type '%c'.\n", access_type);
-                       exit(2);
-       }
--    printf("Value at address 0x%X (%p): 0x%X\n", target, virt_addr, read_result); 
-+    printf("Value at address 0x%lX (%p): 0x%X\n", target, virt_addr, read_result); 
-     fflush(stdout);
-       if(argc > 3) {
-@@ -120,7 +119,7 @@ int main(int argc, char **argv) {
-                               read_result = *((unsigned long *) virt_addr);
-                               break;
-               }
--              printf("Written 0x%X; readback 0x%X\n", writeval, read_result); 
-+              printf("Written 0x%lX; readback 0x%X\n", writeval, read_result); 
-               fflush(stdout);
-       }
-       
--- 
-2.0.0
-
diff --git a/package/dhcpdump/0001-use-non-bsd-structures.patch b/package/dhcpdump/0001-use-non-bsd-structures.patch
new file mode 100644 (file)
index 0000000..40115fb
--- /dev/null
@@ -0,0 +1,23 @@
+The udphdr structure has uh_* fields when _FAVOR_BSD is
+defined. Otherwise, the fields are just named source, dest, len and
+check. See <netinet/udp.h>.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: dhcpdump-1.8/dhcpdump.c
+===================================================================
+--- dhcpdump-1.8.orig/dhcpdump.c       2011-05-17 20:20:46.506980003 +0200
++++ dhcpdump-1.8/dhcpdump.c    2011-05-17 20:20:59.338979999 +0200
+@@ -163,10 +163,10 @@
+       strcpy(ip_origin, (u_char *)inet_ntoa(ip->ip_src));
+       strcpy(ip_destination, (u_char *)inet_ntoa(ip->ip_dst));
+-      if (hmask && check_ch((u_char *)(sp + offset), ntohs(udp->uh_ulen)))
++      if (hmask && check_ch((u_char *)(sp + offset), ntohs(udp->len)))
+               return;
+-      printdata((u_char *)(sp + offset), ntohs(udp->uh_ulen));
++      printdata((u_char *)(sp + offset), ntohs(udp->len));
+ }
+ // check for matching CHADDR (Peter Apian-Bennewitz <apian@ise.fhg.de>)
diff --git a/package/dhcpdump/0002-fix-strsep-feature-test.patch b/package/dhcpdump/0002-fix-strsep-feature-test.patch
new file mode 100644 (file)
index 0000000..06bab94
--- /dev/null
@@ -0,0 +1,27 @@
+Use the official _BSD_SOURCE feature test macro instead of the meaningless
+HAVE_STRSEP macro in order to detect the availability of strsep().
+
+This allows toolchains supporting strsep() to use it instead of the custom
+implementation from dhcpdump, which also avoids the following error with some
+toolchains:
+
+       In file included from dhcpdump.c:30:0:
+       dhcpdump.c: At top level:
+       strsep.c:65:23: error: register name not specified for â€˜delim’
+         register const char *delim;
+                              ^
+
+Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
+
+diff -Nrdup dhcpdump-1.8.orig/dhcpdump.c dhcpdump-1.8/dhcpdump.c
+--- dhcpdump-1.8.orig/dhcpdump.c       2008-06-24 05:26:52.000000000 +0200
++++ dhcpdump-1.8/dhcpdump.c    2011-05-31 19:22:15.987388498 +0200
+@@ -26,7 +26,7 @@
+ #include <regex.h>
+ #include "dhcp_options.h"
+-#ifndef HAVE_STRSEP
++#ifndef _BSD_SOURCE
+ #include "strsep.c"
+ #endif
diff --git a/package/dhcpdump/dhcpdump-0001-use-non-bsd-structures.patch b/package/dhcpdump/dhcpdump-0001-use-non-bsd-structures.patch
deleted file mode 100644 (file)
index 40115fb..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-The udphdr structure has uh_* fields when _FAVOR_BSD is
-defined. Otherwise, the fields are just named source, dest, len and
-check. See <netinet/udp.h>.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: dhcpdump-1.8/dhcpdump.c
-===================================================================
---- dhcpdump-1.8.orig/dhcpdump.c       2011-05-17 20:20:46.506980003 +0200
-+++ dhcpdump-1.8/dhcpdump.c    2011-05-17 20:20:59.338979999 +0200
-@@ -163,10 +163,10 @@
-       strcpy(ip_origin, (u_char *)inet_ntoa(ip->ip_src));
-       strcpy(ip_destination, (u_char *)inet_ntoa(ip->ip_dst));
--      if (hmask && check_ch((u_char *)(sp + offset), ntohs(udp->uh_ulen)))
-+      if (hmask && check_ch((u_char *)(sp + offset), ntohs(udp->len)))
-               return;
--      printdata((u_char *)(sp + offset), ntohs(udp->uh_ulen));
-+      printdata((u_char *)(sp + offset), ntohs(udp->len));
- }
- // check for matching CHADDR (Peter Apian-Bennewitz <apian@ise.fhg.de>)
diff --git a/package/dhcpdump/dhcpdump-0002-fix-strsep-feature-test.patch b/package/dhcpdump/dhcpdump-0002-fix-strsep-feature-test.patch
deleted file mode 100644 (file)
index 06bab94..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-Use the official _BSD_SOURCE feature test macro instead of the meaningless
-HAVE_STRSEP macro in order to detect the availability of strsep().
-
-This allows toolchains supporting strsep() to use it instead of the custom
-implementation from dhcpdump, which also avoids the following error with some
-toolchains:
-
-       In file included from dhcpdump.c:30:0:
-       dhcpdump.c: At top level:
-       strsep.c:65:23: error: register name not specified for â€˜delim’
-         register const char *delim;
-                              ^
-
-Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
-
-diff -Nrdup dhcpdump-1.8.orig/dhcpdump.c dhcpdump-1.8/dhcpdump.c
---- dhcpdump-1.8.orig/dhcpdump.c       2008-06-24 05:26:52.000000000 +0200
-+++ dhcpdump-1.8/dhcpdump.c    2011-05-31 19:22:15.987388498 +0200
-@@ -26,7 +26,7 @@
- #include <regex.h>
- #include "dhcp_options.h"
--#ifndef HAVE_STRSEP
-+#ifndef _BSD_SOURCE
- #include "strsep.c"
- #endif
diff --git a/package/dhrystone/0001-cmdline-nruns.patch b/package/dhrystone/0001-cmdline-nruns.patch
new file mode 100644 (file)
index 0000000..1164610
--- /dev/null
@@ -0,0 +1,53 @@
+let people specify the number of runs on the command line
+
+Patch by Vivi Li <vivi.li@analog.com>
+
+--- a/dhry_1.c
++++ b/dhry_1.c
+@@ -66,7 +70,7 @@
+ /* end of variables for time measurement */
+-main ()
++main(int argc, char *argv[])
+ /*****/
+   /* main program, corresponds to procedures        */
+@@ -101,6 +105,13 @@
+         /* Warning: With 16-Bit processors and Number_Of_Runs > 32000,  */
+         /* overflow may occur for this array element.                   */
++  Number_Of_Runs = 0;
++  if ( argc == 2 ) {
++      if (atoi(argv[1]) > 0) {
++          Number_Of_Runs = atoi(argv[1]);
++      }
++  }
++
+   printf ("\n");
+   printf ("Dhrystone Benchmark, Version 2.1 (Language: C)\n");
+   printf ("\n");
+@@ -114,13 +125,17 @@
+     printf ("Program compiled without 'register' attribute\n");
+     printf ("\n");
+   }
+-  printf ("Please give the number of runs through the benchmark: ");
+-  {
+-    int n;
+-    scanf ("%d", &n);
+-    Number_Of_Runs = n;
++
++  if (!Number_Of_Runs) {
++      printf ("Please give the number of runs through the benchmark: ");
++      fflush (stdout);
++      {
++          int n;
++          scanf ("%d", &n);
++          Number_Of_Runs = n;
++      }
++      printf ("\n");
+   }
+-  printf ("\n");
+   printf ("Execution starts, %d runs through Dhrystone\n", Number_Of_Runs);
diff --git a/package/dhrystone/0002-HZ.patch b/package/dhrystone/0002-HZ.patch
new file mode 100644 (file)
index 0000000..e3b8a0e
--- /dev/null
@@ -0,0 +1,17 @@
+Get HZ value from system rather than requiring via CPPFLAGS
+
+Patch by Robin Getz <rgetz@blackfin.uclinux.org>
+
+--- a/dhry.h
++++ b/dhry.h
+@@ -359,6 +359,10 @@
+                 /* for "times" */
+ #endif
++#ifndef HZ
++#include <sys/param.h>
++#endif
++
+ #define Mic_secs_Per_Second     1000000.0
+                 /* Berkeley UNIX C returns process times in seconds/HZ */
diff --git a/package/dhrystone/0003-exit.patch b/package/dhrystone/0003-exit.patch
new file mode 100644 (file)
index 0000000..8d99f4e
--- /dev/null
@@ -0,0 +1,14 @@
+trust the exit status of the program
+
+Patch by Robin Getz <rgetz@blackfin.uclinux.org>
+
+--- a/dhry_1.c
++++ b/dhry_1.c
+@@ -274,6 +289,7 @@
+     printf ("\n");
+   }
+   
++  exit(0);
+ }
diff --git a/package/dhrystone/0004-headers.patch b/package/dhrystone/0004-headers.patch
new file mode 100644 (file)
index 0000000..82bb60d
--- /dev/null
@@ -0,0 +1,15 @@
+get prototypes for malloc/exit/strcpy
+
+Patch by Mike Frysinger <vapier@gentoo.org>
+
+--- a/dhry.h
++++ b/dhry.h
+@@ -388,6 +388,8 @@
+ /* General definitions: */
+ #include <stdio.h>
++#include <stdlib.h>
++#include <string.h>
+                 /* for strcpy, strcmp */
+ #define Null 0 
diff --git a/package/dhrystone/0005-prototypes.patch b/package/dhrystone/0005-prototypes.patch
new file mode 100644 (file)
index 0000000..7fdcf94
--- /dev/null
@@ -0,0 +1,35 @@
+Avoid collision with C library using NO_PROTOTYPES found in code already
+
+Patch by Robin Getz <rgetz@blackfin.uclinux.org>
+
+--- a/dhry_1.c
++++ b/dhry_1.c
+@@ -28,7 +28,9 @@
+ int             Arr_1_Glob [50];
+ int             Arr_2_Glob [50] [50];
++#ifndef NO_PROTOTYPES
+ extern char     *malloc ();
++#endif
+ Enumeration     Func_1 ();
+   /* forward declaration necessary since Enumeration may not simply be int */
+@@ -45,14 +45,18 @@
+ #ifdef TIMES
+ struct tms      time_info;
++#ifndef NO_PROTOTYPES
+ extern  int     times ();
+                 /* see library function "times" */
++#endif
+ #define Too_Small_Time 120
+                 /* Measurements should last at least about 2 seconds */
+ #endif
+ #ifdef TIME
++#ifndef NO_PROTOTYPES
+ extern long     time();
+                 /* see library function "time"  */
++#endif
+ #define Too_Small_Time 2
+                 /* Measurements should last at least 2 seconds */
+ #endif
diff --git a/package/dhrystone/dhrystone-2-HZ.patch b/package/dhrystone/dhrystone-2-HZ.patch
deleted file mode 100644 (file)
index e3b8a0e..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-Get HZ value from system rather than requiring via CPPFLAGS
-
-Patch by Robin Getz <rgetz@blackfin.uclinux.org>
-
---- a/dhry.h
-+++ b/dhry.h
-@@ -359,6 +359,10 @@
-                 /* for "times" */
- #endif
-+#ifndef HZ
-+#include <sys/param.h>
-+#endif
-+
- #define Mic_secs_Per_Second     1000000.0
-                 /* Berkeley UNIX C returns process times in seconds/HZ */
diff --git a/package/dhrystone/dhrystone-2-cmdline-nruns.patch b/package/dhrystone/dhrystone-2-cmdline-nruns.patch
deleted file mode 100644 (file)
index 1164610..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-let people specify the number of runs on the command line
-
-Patch by Vivi Li <vivi.li@analog.com>
-
---- a/dhry_1.c
-+++ b/dhry_1.c
-@@ -66,7 +70,7 @@
- /* end of variables for time measurement */
--main ()
-+main(int argc, char *argv[])
- /*****/
-   /* main program, corresponds to procedures        */
-@@ -101,6 +105,13 @@
-         /* Warning: With 16-Bit processors and Number_Of_Runs > 32000,  */
-         /* overflow may occur for this array element.                   */
-+  Number_Of_Runs = 0;
-+  if ( argc == 2 ) {
-+      if (atoi(argv[1]) > 0) {
-+          Number_Of_Runs = atoi(argv[1]);
-+      }
-+  }
-+
-   printf ("\n");
-   printf ("Dhrystone Benchmark, Version 2.1 (Language: C)\n");
-   printf ("\n");
-@@ -114,13 +125,17 @@
-     printf ("Program compiled without 'register' attribute\n");
-     printf ("\n");
-   }
--  printf ("Please give the number of runs through the benchmark: ");
--  {
--    int n;
--    scanf ("%d", &n);
--    Number_Of_Runs = n;
-+
-+  if (!Number_Of_Runs) {
-+      printf ("Please give the number of runs through the benchmark: ");
-+      fflush (stdout);
-+      {
-+          int n;
-+          scanf ("%d", &n);
-+          Number_Of_Runs = n;
-+      }
-+      printf ("\n");
-   }
--  printf ("\n");
-   printf ("Execution starts, %d runs through Dhrystone\n", Number_Of_Runs);
diff --git a/package/dhrystone/dhrystone-2-exit.patch b/package/dhrystone/dhrystone-2-exit.patch
deleted file mode 100644 (file)
index 8d99f4e..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-trust the exit status of the program
-
-Patch by Robin Getz <rgetz@blackfin.uclinux.org>
-
---- a/dhry_1.c
-+++ b/dhry_1.c
-@@ -274,6 +289,7 @@
-     printf ("\n");
-   }
-   
-+  exit(0);
- }
diff --git a/package/dhrystone/dhrystone-2-headers.patch b/package/dhrystone/dhrystone-2-headers.patch
deleted file mode 100644 (file)
index 82bb60d..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-get prototypes for malloc/exit/strcpy
-
-Patch by Mike Frysinger <vapier@gentoo.org>
-
---- a/dhry.h
-+++ b/dhry.h
-@@ -388,6 +388,8 @@
- /* General definitions: */
- #include <stdio.h>
-+#include <stdlib.h>
-+#include <string.h>
-                 /* for strcpy, strcmp */
- #define Null 0 
diff --git a/package/dhrystone/dhrystone-2-prototypes.patch b/package/dhrystone/dhrystone-2-prototypes.patch
deleted file mode 100644 (file)
index 7fdcf94..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-Avoid collision with C library using NO_PROTOTYPES found in code already
-
-Patch by Robin Getz <rgetz@blackfin.uclinux.org>
-
---- a/dhry_1.c
-+++ b/dhry_1.c
-@@ -28,7 +28,9 @@
- int             Arr_1_Glob [50];
- int             Arr_2_Glob [50] [50];
-+#ifndef NO_PROTOTYPES
- extern char     *malloc ();
-+#endif
- Enumeration     Func_1 ();
-   /* forward declaration necessary since Enumeration may not simply be int */
-@@ -45,14 +45,18 @@
- #ifdef TIMES
- struct tms      time_info;
-+#ifndef NO_PROTOTYPES
- extern  int     times ();
-                 /* see library function "times" */
-+#endif
- #define Too_Small_Time 120
-                 /* Measurements should last at least about 2 seconds */
- #endif
- #ifdef TIME
-+#ifndef NO_PROTOTYPES
- extern long     time();
-                 /* see library function "time"  */
-+#endif
- #define Too_Small_Time 2
-                 /* Measurements should last at least 2 seconds */
- #endif
diff --git a/package/directfb-examples/0001-remove-bzero.patch b/package/directfb-examples/0001-remove-bzero.patch
new file mode 100644 (file)
index 0000000..41616b5
--- /dev/null
@@ -0,0 +1,17 @@
+---
+ src/df_knuckles/matrix.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: directfb-examples-1.2.0/src/df_knuckles/matrix.c
+===================================================================
+--- directfb-examples-1.2.0.orig/src/df_knuckles/matrix.c
++++ directfb-examples-1.2.0/src/df_knuckles/matrix.c
+@@ -19,7 +19,7 @@
+ static float Cosine[3600];
+ static float Sine[3600];
+-#define M_CLEAR(m) bzero(m, MATRIX_SIZE)
++#define M_CLEAR(m) memset(m, 0, MATRIX_SIZE)
+ #define M_IDENTITY(m) memcpy(m, IdentityMatrix, MATRIX_SIZE)
+ static void MultiplyMatrix(float *A, float *B)
diff --git a/package/directfb-examples/directfb-examples-remove-bzero.patch b/package/directfb-examples/directfb-examples-remove-bzero.patch
deleted file mode 100644 (file)
index 41616b5..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
----
- src/df_knuckles/matrix.c |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Index: directfb-examples-1.2.0/src/df_knuckles/matrix.c
-===================================================================
---- directfb-examples-1.2.0.orig/src/df_knuckles/matrix.c
-+++ directfb-examples-1.2.0/src/df_knuckles/matrix.c
-@@ -19,7 +19,7 @@
- static float Cosine[3600];
- static float Sine[3600];
--#define M_CLEAR(m) bzero(m, MATRIX_SIZE)
-+#define M_CLEAR(m) memset(m, 0, MATRIX_SIZE)
- #define M_IDENTITY(m) memcpy(m, IdentityMatrix, MATRIX_SIZE)
- static void MultiplyMatrix(float *A, float *B)
diff --git a/package/directfb/0001-fix-missing-davinci-voodoo-header.patch b/package/directfb/0001-fix-missing-davinci-voodoo-header.patch
new file mode 100644 (file)
index 0000000..6ad4958
--- /dev/null
@@ -0,0 +1,1726 @@
+The archive of directfb-1.6.3 is still missing some header files against
+the tagged git tree of directfb. The following files are missing.
+
+gfxdrivers/davinci/davinci_c64x.h
+gfxdrivers/davinci/davincifb.h
+gfxdrivers/davinci/davinci_gfxdriver.h
+tests/voodoo/voodoo_test.h
+
+The headers of course are needed to be able to build every module of
+directfb. The headers are taken from the git tree of directfb
+http://git.directfb.org/?p=core/DirectFB.git;a=commit;h=38b784549bc59bb07c58bb29667cb658695d39a7,
+tag DIRECTFB_1_6_3, SHA1ID 38b784549bc59bb07c58bb29667cb658695d39a7.
+
+Signed-off-by: Carsten Schoenert <c.schoenert@gmail.com>
+
+diff -puNr -Naur directfb-1.6.3-orig/gfxdrivers/davinci/davinci_c64x.h directfb-1.6.3/gfxdrivers/davinci/davinci_c64x.h
+--- directfb-1.6.3-orig/gfxdrivers/davinci/davinci_c64x.h      1970-01-01 01:00:00.000000000 +0100
++++ directfb-1.6.3/gfxdrivers/davinci/davinci_c64x.h   2013-04-07 21:33:25.928530187 +0200
+@@ -0,0 +1,935 @@
++/*
++   TI Davinci driver - C64X+ DSP Library
++
++   (c) Copyright 2008  directfb.org
++   (c) Copyright 2007  Telio AG
++
++   Written by Denis Oliver Kropp <dok@directfb.org> and
++              Olaf Dreesen <olaf@directfb.org>.
++
++   All rights reserved.
++
++   This library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU General Public License
++   version 2 as published by the Free Software Foundation.
++
++   This library 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 library; if not, write to the
++   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
++   Boston, MA 02111-1307, USA.
++*/
++
++#ifndef __DAVINCI_C64X_H__
++#define __DAVINCI_C64X_H__
++
++#include <unistd.h>
++
++#include <directfb.h>
++
++#include <direct/messages.h>
++#include <direct/trace.h>
++
++#include <linux/c64x.h>
++
++#define mb() __asm__ __volatile__ ("" : : : "memory")
++
++/**********************************************************************************************************************/
++
++typedef struct {
++     int                 magic;
++
++     int                 fd;
++     c64xTaskControl    *ctl;
++     void               *mem;
++
++     c64xTask           *QueueL;
++} DavinciC64x;
++
++typedef struct {
++     int                 magic;
++     unsigned int        max_tasks;
++     unsigned int        num_tasks;
++     c64xTask           *tasks;
++} DavinciC64xTasks;
++
++typedef enum {
++     C64X_TEF_NONE       = 0x0000,
++     C64X_TEF_RESET      = 0x0001
++} DavinciC64xEmitFlags;
++
++/**********************************************************************************************************************/
++
++DFBResult davinci_c64x_open    ( DavinciC64x *c64x );
++
++DFBResult davinci_c64x_close   ( DavinciC64x *c64x );
++
++DFBResult davinci_c64x_wait_low( DavinciC64x *c64x );
++
++/**********************************************************************************************************************/
++
++DFBResult davinci_c64x_tasks_init   ( DavinciC64xTasks *tasks,
++                                      unsigned int      size );
++
++DFBResult davinci_c64x_tasks_destroy( DavinciC64xTasks *tasks );
++
++/**********************************************************************************************************************/
++
++DFBResult davinci_c64x_emit_tasks( DavinciC64x          *c64x,
++                                   DavinciC64xTasks     *tasks,
++                                   DavinciC64xEmitFlags  flags );
++
++/**********************************************************************************************************************/
++
++static const char *state_names[] = { "DONE", "ERROR", "TODO", "RUNNING" };
++
++static inline c64xTask *
++c64x_get_task( DavinciC64x *c64x )
++{
++     c64xTaskControl *ctl   = c64x->ctl;
++     uint32_t         idx   = ctl->QL_arm;
++     uint32_t         next  = (idx + 1) & C64X_QUEUE_MASK;
++     c64xTask        *task  = &c64x->QueueL[idx];
++     int              loops = 0;
++     uint32_t         idle  = 0;
++
++     /* Wait for the entry (and next) to be processed by the DSP (rare case). */
++     while (task->c64x_flags & C64X_FLAG_TODO || ctl->QL_dsp == next) {
++          if (loops > 666 || (idle && ctl->idlecounter - idle > 666)) {
++               c64xTask *dsp_task = &c64x->QueueL[ctl->QL_dsp];
++
++               D_PERROR( "Davinci/C64X+: Blocked! [DSP %d / %d (%s), ARM %d / %d (%s)]\n",
++                         ctl->QL_dsp,
++                         (dsp_task->c64x_function >> 2) & 0x3fff,
++                         state_names[dsp_task->c64x_function & 3],
++                         ctl->QL_arm,
++                         (task->c64x_function >> 2) & 0x3fff,
++                         state_names[task->c64x_function & 3] );
++
++               break;
++          }
++
++          idle = ctl->idlecounter;
++
++          /* Queue is full, waiting 10-20ms should not be too bad. */
++          if (loops++ > 10)
++               usleep( 5000 );
++     }
++
++     return task;
++}
++
++static inline void
++c64x_submit_task( DavinciC64x *c64x, c64xTask *task )
++{
++     c64xTaskControl *ctl  = c64x->ctl;
++     uint32_t         idx  = ctl->QL_arm;
++     uint32_t         next = (idx + 1) & C64X_QUEUE_MASK;
++
++     mb();
++
++     ctl->QL_arm = next;
++
++     mb();
++}
++
++/**********************************************************************************************************************/
++
++static inline void
++davinci_c64x_wb_inv_range( DavinciC64x   *c64x,
++                           unsigned long  start,
++                           u32            length,
++                           u32            func )
++{
++     c64xTask *task = c64x_get_task( c64x );
++
++     task->c64x_arg[0] = start;
++     task->c64x_arg[1] = length;
++     task->c64x_arg[2] = func;
++
++     task->c64x_function = C64X_WB_INV_RANGE | C64X_FLAG_TODO;
++
++     c64x_submit_task( c64x, task );
++}
++
++static inline void
++davinci_c64x_write_back_all( DavinciC64x *c64x )
++{
++     c64xTask *task = c64x_get_task( c64x );
++
++     task->c64x_function = C64X_WRITE_BACK_ALL | C64X_FLAG_TODO;
++
++     c64x_submit_task( c64x, task );
++}
++
++/**********************************************************************************************************************/
++
++static inline void
++davinci_c64x_load_block__L( DavinciC64xTasks *tasks,
++                            unsigned long     words,
++                            u32               num,
++                            u32               flags )
++{
++     c64xTask *task = &tasks->tasks[tasks->num_tasks];
++
++     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
++
++     task->c64x_arg[0] = words;
++     task->c64x_arg[1] = num;
++     task->c64x_arg[2] = flags;
++
++     task->c64x_function = C64X_LOAD_BLOCK | C64X_FLAG_TODO;
++
++     tasks->num_tasks++;
++}
++
++static inline void
++davinci_c64x_load_block( DavinciC64x   *c64x,
++                         unsigned long  words,
++                         u32            num,
++                         u32            flags )
++{
++     c64xTask *task = c64x_get_task( c64x );
++
++     task->c64x_arg[0] = words;
++     task->c64x_arg[1] = num;
++     task->c64x_arg[2] = flags;
++
++     task->c64x_function = C64X_LOAD_BLOCK | C64X_FLAG_TODO;
++
++     c64x_submit_task( c64x, task );
++}
++
++static inline void
++davinci_c64x_fetch_uyvy( DavinciC64x   *c64x,
++                         unsigned long  dest,
++                         unsigned long  source,
++                         u32            pitch,
++                         u32            height,
++                         u32            flags )
++{
++     c64xTask *task = c64x_get_task( c64x );
++
++     task->c64x_arg[0] = dest;
++     task->c64x_arg[1] = source;
++     task->c64x_arg[2] = pitch;
++     task->c64x_arg[3] = height;
++     task->c64x_arg[4] = flags;
++
++     task->c64x_function = C64X_FETCH_UYVY | C64X_FLAG_TODO;
++
++     c64x_submit_task( c64x, task );
++}
++
++static inline void
++davinci_c64x_mc( DavinciC64x   *c64x,
++                 unsigned long  dest,
++                 u32            dpitch,
++                 unsigned long  source0,
++                 unsigned long  source1,
++                 u32            spitch,
++                 u32            height,
++                 int            func )
++{
++     c64xTask *task = c64x_get_task( c64x );
++
++     task->c64x_arg[0] = dest;
++     task->c64x_arg[1] = dpitch;
++     task->c64x_arg[2] = source0;
++     task->c64x_arg[3] = source1;
++     task->c64x_arg[4] = spitch;
++     task->c64x_arg[5] = height;
++
++     task->c64x_function = func | C64X_FLAG_TODO;
++
++     c64x_submit_task( c64x, task );
++}
++
++static inline void
++davinci_c64x_put_idct_uyvy_16x16__L( DavinciC64xTasks *tasks,
++                                     unsigned long     dest,
++                                     u32               pitch,
++                                     u32               flags )
++{
++     c64xTask *task = &tasks->tasks[tasks->num_tasks];
++
++     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
++
++     task->c64x_arg[0] = dest;
++     task->c64x_arg[1] = pitch;
++     task->c64x_arg[2] = flags;
++
++     task->c64x_function = C64X_PUT_IDCT_UYVY_16x16 | C64X_FLAG_TODO;
++
++     tasks->num_tasks++;
++}
++
++static inline void
++davinci_c64x_put_idct_uyvy_16x16( DavinciC64x   *c64x,
++                                  unsigned long  dest,
++                                  u32            pitch,
++                                  u32            flags )
++{
++     c64xTask *task = c64x_get_task( c64x );
++
++     task->c64x_arg[0] = dest;
++     task->c64x_arg[1] = pitch;
++     task->c64x_arg[2] = flags;
++
++     task->c64x_function = C64X_PUT_IDCT_UYVY_16x16 | C64X_FLAG_TODO;
++
++     c64x_submit_task( c64x, task );
++}
++
++static inline void
++davinci_c64x_put_mc_uyvy_16x16__L( DavinciC64xTasks *tasks,
++                                   unsigned long     dest,
++                                   u32               pitch,
++                                   u32               flags )
++{
++     c64xTask *task = &tasks->tasks[tasks->num_tasks];
++
++     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
++
++     task->c64x_arg[0] = dest;
++     task->c64x_arg[1] = pitch;
++     task->c64x_arg[2] = flags;
++
++     task->c64x_function = C64X_PUT_MC_UYVY_16x16 | C64X_FLAG_TODO;
++
++     tasks->num_tasks++;
++}
++
++static inline void
++davinci_c64x_put_mc_uyvy_16x16( DavinciC64x   *c64x,
++                                unsigned long  dest,
++                                u32            pitch,
++                                u32            flags )
++{
++     c64xTask *task = c64x_get_task( c64x );
++
++     task->c64x_arg[0] = dest;
++     task->c64x_arg[1] = pitch;
++     task->c64x_arg[2] = flags;
++
++     task->c64x_function = C64X_PUT_MC_UYVY_16x16 | C64X_FLAG_TODO;
++
++     c64x_submit_task( c64x, task );
++}
++
++static inline void
++davinci_c64x_put_sum_uyvy_16x16__L( DavinciC64xTasks *tasks,
++                                    unsigned long     dest,
++                                    u32               pitch,
++                                    u32               flags )
++{
++     c64xTask *task = &tasks->tasks[tasks->num_tasks];
++
++     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
++
++     task->c64x_arg[0] = dest;
++     task->c64x_arg[1] = pitch;
++     task->c64x_arg[2] = flags;
++
++     task->c64x_function = C64X_PUT_SUM_UYVY_16x16 | C64X_FLAG_TODO;
++
++     tasks->num_tasks++;
++}
++
++static inline void
++davinci_c64x_put_sum_uyvy_16x16( DavinciC64x   *c64x,
++                                 unsigned long  dest,
++                                 u32            pitch,
++                                 u32            flags )
++{
++     c64xTask *task = c64x_get_task( c64x );
++
++     task->c64x_arg[0] = dest;
++     task->c64x_arg[1] = pitch;
++     task->c64x_arg[2] = flags;
++
++     task->c64x_function = C64X_PUT_SUM_UYVY_16x16 | C64X_FLAG_TODO;
++
++     c64x_submit_task( c64x, task );
++}
++
++static inline void
++davinci_c64x_dva_begin_frame__L( DavinciC64xTasks *tasks,
++                                 u32               pitch,
++                                 unsigned long     current,
++                                 unsigned long     past,
++                                 unsigned long     future,
++                                 u32               flags )
++{
++     c64xTask *task = &tasks->tasks[tasks->num_tasks];
++
++     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
++
++     task->c64x_arg[0] = pitch;
++     task->c64x_arg[1] = current;
++     task->c64x_arg[2] = past;
++     task->c64x_arg[3] = future;
++     task->c64x_arg[4] = flags;
++
++     task->c64x_function = C64X_DVA_BEGIN_FRAME | C64X_FLAG_TODO;
++
++     tasks->num_tasks++;
++}
++
++static inline void
++davinci_c64x_dva_begin_frame( DavinciC64x   *c64x,
++                              u32            pitch,
++                              unsigned long  current,
++                              unsigned long  past,
++                              unsigned long  future,
++                              u32            flags )
++{
++     c64xTask *task = c64x_get_task( c64x );
++
++     task->c64x_arg[0] = pitch;
++     task->c64x_arg[1] = current;
++     task->c64x_arg[2] = past;
++     task->c64x_arg[3] = future;
++     task->c64x_arg[4] = flags;
++
++     task->c64x_function = C64X_DVA_BEGIN_FRAME | C64X_FLAG_TODO;
++
++     c64x_submit_task( c64x, task );
++}
++
++static inline void
++davinci_c64x_dva_motion_block__L( DavinciC64xTasks *tasks,
++                                  unsigned long     macroblock )
++{
++     c64xTask *task = &tasks->tasks[tasks->num_tasks];
++
++     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
++
++     task->c64x_arg[0] = macroblock;
++
++     task->c64x_function = C64X_DVA_MOTION_BLOCK | C64X_FLAG_TODO;
++
++     tasks->num_tasks++;
++}
++
++static inline void
++davinci_c64x_dva_motion_block( DavinciC64x   *c64x,
++                               unsigned long  macroblock )
++{
++     c64xTask *task = c64x_get_task( c64x );
++
++     task->c64x_arg[0] = macroblock;
++
++     task->c64x_function = C64X_DVA_MOTION_BLOCK | C64X_FLAG_TODO;
++
++     c64x_submit_task( c64x, task );
++}
++
++/**********************************************************************************************************************/
++
++static inline void
++davinci_c64x_dva_idct( DavinciC64x   *c64x,
++                                 unsigned long  dest,
++                                 u32            pitch,
++                                 unsigned long  source )
++{
++     c64xTask *task = c64x_get_task( c64x );
++
++     task->c64x_arg[0] = dest;
++     task->c64x_arg[1] = pitch;
++     task->c64x_arg[2] = source;
++
++     task->c64x_function = C64X_DVA_IDCT | C64X_FLAG_TODO;
++
++     c64x_submit_task( c64x, task );
++}
++
++/**********************************************************************************************************************/
++
++static inline void
++davinci_c64x_put_uyvy_16x16( DavinciC64x   *c64x,
++                             unsigned long  dest,
++                             u32            pitch,
++                             unsigned long  source,
++                             u32            flags )
++{
++     c64xTask *task = c64x_get_task( c64x );
++
++     task->c64x_arg[0] = dest;
++     task->c64x_arg[1] = pitch;
++     task->c64x_arg[2] = source;
++     task->c64x_arg[3] = flags;
++
++     task->c64x_function = C64X_PUT_UYVY_16x16 | C64X_FLAG_TODO;
++
++     c64x_submit_task( c64x, task );
++}
++
++static inline void
++davinci_c64x_dither_argb__L( DavinciC64xTasks *tasks,
++                             unsigned long     dst_rgb,
++                             unsigned long     dst_alpha,
++                             u32               dst_pitch,
++                             unsigned long     source,
++                             u32               src_pitch,
++                             u32               width,
++                             u32               height )
++{
++     c64xTask *task = &tasks->tasks[tasks->num_tasks];
++
++     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
++
++     task->c64x_arg[0] = dst_rgb;
++     task->c64x_arg[1] = dst_alpha;
++     task->c64x_arg[2] = dst_pitch;
++     task->c64x_arg[3] = source;
++     task->c64x_arg[4] = src_pitch;
++     task->c64x_arg[5] = width;
++     task->c64x_arg[6] = height;
++
++     task->c64x_function = C64X_DITHER_ARGB | C64X_FLAG_TODO;
++
++     tasks->num_tasks++;
++}
++
++static inline void
++davinci_c64x_dither_argb( DavinciC64x   *c64x,
++                          unsigned long  dst_rgb,
++                          unsigned long  dst_alpha,
++                          u32            dst_pitch,
++                          unsigned long  source,
++                          u32            src_pitch,
++                          u32            width,
++                          u32            height )
++{
++     c64xTask *task = c64x_get_task( c64x );
++
++     task->c64x_arg[0] = dst_rgb;
++     task->c64x_arg[1] = dst_alpha;
++     task->c64x_arg[2] = dst_pitch;
++     task->c64x_arg[3] = source;
++     task->c64x_arg[4] = src_pitch;
++     task->c64x_arg[5] = width;
++     task->c64x_arg[6] = height;
++
++     task->c64x_function = C64X_DITHER_ARGB | C64X_FLAG_TODO;
++
++     c64x_submit_task( c64x, task );
++}
++
++static inline void
++davinci_c64x_fill_16__L( DavinciC64xTasks *tasks,
++                         unsigned long     dest,
++                         u32               pitch,
++                         u32               width,
++                         u32               height,
++                         u32               value )
++{
++     c64xTask *task = &tasks->tasks[tasks->num_tasks];
++
++     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
++
++     task->c64x_arg[0] = dest;
++     task->c64x_arg[1] = pitch;
++     task->c64x_arg[2] = width;
++     task->c64x_arg[3] = height;
++     task->c64x_arg[4] = value;
++
++     task->c64x_function = C64X_FILL_16 | C64X_FLAG_TODO;
++
++     tasks->num_tasks++;
++}
++
++static inline void
++davinci_c64x_fill_16( DavinciC64x   *c64x,
++                      unsigned long  dest,
++                      u32            pitch,
++                      u32            width,
++                      u32            height,
++                      u32            value )
++{
++     c64xTask *task = c64x_get_task( c64x );
++
++     task->c64x_arg[0] = dest;
++     task->c64x_arg[1] = pitch;
++     task->c64x_arg[2] = width;
++     task->c64x_arg[3] = height;
++     task->c64x_arg[4] = value;
++
++     task->c64x_function = C64X_FILL_16 | C64X_FLAG_TODO;
++
++     c64x_submit_task( c64x, task );
++}
++
++static inline void
++davinci_c64x_fill_32__L( DavinciC64xTasks *tasks,
++                         unsigned long     dest,
++                         u32               pitch,
++                         u32               width,
++                         u32               height,
++                         u32               value )
++{
++     c64xTask *task = &tasks->tasks[tasks->num_tasks];
++
++     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
++
++     task->c64x_arg[0] = dest;
++     task->c64x_arg[1] = pitch;
++     task->c64x_arg[2] = width;
++     task->c64x_arg[3] = height;
++     task->c64x_arg[4] = value;
++
++     task->c64x_function = C64X_FILL_32 | C64X_FLAG_TODO;
++
++     tasks->num_tasks++;
++}
++
++static inline void
++davinci_c64x_fill_32( DavinciC64x   *c64x,
++                      unsigned long  dest,
++                      u32            pitch,
++                      u32            width,
++                      u32            height,
++                      u32            value )
++{
++     c64xTask *task = c64x_get_task( c64x );
++
++     task->c64x_arg[0] = dest;
++     task->c64x_arg[1] = pitch;
++     task->c64x_arg[2] = width;
++     task->c64x_arg[3] = height;
++     task->c64x_arg[4] = value;
++
++     task->c64x_function = C64X_FILL_32 | C64X_FLAG_TODO;
++
++     c64x_submit_task( c64x, task );
++}
++
++static inline void
++davinci_c64x_blit_16__L( DavinciC64xTasks *tasks,
++                         unsigned long     dest,
++                         u32               dpitch,
++                         unsigned long     src,
++                         u32               spitch,
++                         u32               width,
++                         u32               height )
++{
++     c64xTask *task = &tasks->tasks[tasks->num_tasks];
++
++     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
++
++     task->c64x_arg[0] = dest;
++     task->c64x_arg[1] = dpitch;
++     task->c64x_arg[2] = src;
++     task->c64x_arg[3] = spitch;
++     task->c64x_arg[4] = width;
++     task->c64x_arg[5] = height;
++
++     task->c64x_function = C64X_COPY_16 | C64X_FLAG_TODO;
++
++     tasks->num_tasks++;
++}
++
++static inline void
++davinci_c64x_blit_16( DavinciC64x   *c64x,
++                      unsigned long  dest,
++                      u32            dpitch,
++                      unsigned long  src,
++                      u32            spitch,
++                      u32            width,
++                      u32            height )
++{
++     c64xTask *task = c64x_get_task( c64x );
++
++     task->c64x_arg[0] = dest;
++     task->c64x_arg[1] = dpitch;
++     task->c64x_arg[2] = src;
++     task->c64x_arg[3] = spitch;
++     task->c64x_arg[4] = width;
++     task->c64x_arg[5] = height;
++
++     task->c64x_function = C64X_COPY_16 | C64X_FLAG_TODO;
++
++     c64x_submit_task( c64x, task );
++}
++
++static inline void
++davinci_c64x_blit_32__L( DavinciC64xTasks *tasks,
++                         unsigned long     dest,
++                         u32               dpitch,
++                         unsigned long     src,
++                         u32               spitch,
++                         u32               width,
++                         u32               height )
++{
++     c64xTask *task = &tasks->tasks[tasks->num_tasks];
++
++     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
++
++     task->c64x_arg[0] = dest;
++     task->c64x_arg[1] = dpitch;
++     task->c64x_arg[2] = src;
++     task->c64x_arg[3] = spitch;
++     task->c64x_arg[4] = width;
++     task->c64x_arg[5] = height;
++
++     task->c64x_function = C64X_COPY_32 | C64X_FLAG_TODO;
++
++     tasks->num_tasks++;
++}
++
++static inline void
++davinci_c64x_blit_32( DavinciC64x   *c64x,
++                      unsigned long  dest,
++                      u32            dpitch,
++                      unsigned long  src,
++                      u32            spitch,
++                      u32            width,
++                      u32            height )
++{
++     c64xTask *task = c64x_get_task( c64x );
++
++     task->c64x_arg[0] = dest;
++     task->c64x_arg[1] = dpitch;
++     task->c64x_arg[2] = src;
++     task->c64x_arg[3] = spitch;
++     task->c64x_arg[4] = width;
++     task->c64x_arg[5] = height;
++
++     task->c64x_function = C64X_COPY_32 | C64X_FLAG_TODO;
++
++     c64x_submit_task( c64x, task );
++}
++
++static inline void
++davinci_c64x_stretch_32__L( DavinciC64xTasks *tasks,
++                            unsigned long     dest,
++                            u32               dpitch,
++                            unsigned long     src,
++                            u32               spitch,
++                            u32               dw,
++                            u32               dh,
++                            u32               sw,
++                            u32               sh,
++                            const DFBRegion  *clip )
++{
++     c64xTask *task = &tasks->tasks[tasks->num_tasks];
++
++     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
++
++     task->c64x_arg[0] = dest;
++     task->c64x_arg[1] = src;
++     task->c64x_arg[2] = dpitch   | (spitch   << 16);
++     task->c64x_arg[3] = dh       | (dw       << 16);
++     task->c64x_arg[4] = sh       | (sw       << 16);
++     task->c64x_arg[5] = clip->x2 | (clip->y2 << 16);
++     task->c64x_arg[6] = clip->x1 | (clip->y1 << 16);
++
++     if (sw > dw && sh > dh)
++          task->c64x_function = C64X_STRETCH_32_down | C64X_FLAG_TODO;
++     else
++          task->c64x_function = C64X_STRETCH_32_up | C64X_FLAG_TODO;
++
++     tasks->num_tasks++;
++}
++
++static inline void
++davinci_c64x_stretch_32( DavinciC64x     *c64x,
++                         unsigned long    dest,
++                         u32              dpitch,
++                         unsigned long    src,
++                         u32              spitch,
++                         u32              dw,
++                         u32              dh,
++                         u32              sw,
++                         u32              sh,
++                         const DFBRegion *clip )
++{
++     c64xTask *task = c64x_get_task( c64x );
++
++     task->c64x_arg[0] = dest;
++     task->c64x_arg[1] = src;
++     task->c64x_arg[2] = dpitch   | (spitch   << 16);
++     task->c64x_arg[3] = dh       | (dw       << 16);
++     task->c64x_arg[4] = sh       | (sw       << 16);
++     task->c64x_arg[5] = clip->x2 | (clip->y2 << 16);
++     task->c64x_arg[6] = clip->x1 | (clip->y1 << 16);
++
++     if (sw > dw && sh > dh)
++          task->c64x_function = C64X_STRETCH_32_down | C64X_FLAG_TODO;
++     else
++          task->c64x_function = C64X_STRETCH_32_up | C64X_FLAG_TODO;
++
++     c64x_submit_task( c64x, task );
++}
++
++static inline void
++davinci_c64x_blit_blend_32__L( DavinciC64xTasks *tasks,
++                               u32               sub_func,
++                               unsigned long     dest,
++                               u32               dpitch,
++                               unsigned long     src,
++                               u32               spitch,
++                               u32               width,
++                               u32               height,
++                               u32               argb,
++                               u8                alpha )
++{
++     c64xTask *task = &tasks->tasks[tasks->num_tasks];
++
++     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
++
++     task->c64x_arg[0] = dest;
++     task->c64x_arg[1] = dpitch;
++     task->c64x_arg[2] = src;
++     task->c64x_arg[3] = spitch;
++     task->c64x_arg[4] = width | (height << 16);
++     task->c64x_arg[5] = argb;
++     task->c64x_arg[6] = alpha;
++
++     task->c64x_function = (sub_func << 16) | C64X_BLEND_32 | C64X_FLAG_TODO;
++
++     tasks->num_tasks++;
++}
++
++static inline void
++davinci_c64x_blit_blend_32( DavinciC64x   *c64x,
++                            u32            sub_func,
++                            unsigned long  dest,
++                            u32            dpitch,
++                            unsigned long  src,
++                            u32            spitch,
++                            u32            width,
++                            u32            height,
++                            u32            argb,
++                            u8             alpha )
++{
++     c64xTask *task = c64x_get_task( c64x );
++
++     task->c64x_arg[0] = dest;
++     task->c64x_arg[1] = dpitch;
++     task->c64x_arg[2] = src;
++     task->c64x_arg[3] = spitch;
++     task->c64x_arg[4] = width | (height << 16);
++     task->c64x_arg[5] = argb;
++     task->c64x_arg[6] = alpha;
++
++     task->c64x_function = (sub_func << 16) | C64X_BLEND_32 | C64X_FLAG_TODO;
++
++     c64x_submit_task( c64x, task );
++}
++
++static inline void
++davinci_c64x_blit_keyed_16__L( DavinciC64xTasks *tasks,
++                               unsigned long     dest,
++                               u32               dpitch,
++                               unsigned long     src,
++                               u32               spitch,
++                               u32               width,
++                               u32               height,
++                               u32               key,
++                               u32               mask )
++{
++     c64xTask *task = &tasks->tasks[tasks->num_tasks];
++
++     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
++
++     task->c64x_arg[0] = dest;
++     task->c64x_arg[1] = (dpitch << 16) | (spitch & 0xffff);
++     task->c64x_arg[2] = src;
++     task->c64x_arg[3] = width;
++     task->c64x_arg[4] = height;
++     task->c64x_arg[5] = key;
++     task->c64x_arg[6] = mask;
++
++     task->c64x_function = C64X_COPY_KEYED_16 | C64X_FLAG_TODO;
++
++     tasks->num_tasks++;
++}
++
++static inline void
++davinci_c64x_blit_keyed_16( DavinciC64x   *c64x,
++                            unsigned long  dest,
++                            u32            dpitch,
++                            unsigned long  src,
++                            u32            spitch,
++                            u32            width,
++                            u32            height,
++                            u32            key,
++                            u32            mask )
++{
++     c64xTask *task = c64x_get_task( c64x );
++
++     task->c64x_arg[0] = dest;
++     task->c64x_arg[1] = (dpitch << 16) | (spitch & 0xffff);
++     task->c64x_arg[2] = src;
++     task->c64x_arg[3] = width;
++     task->c64x_arg[4] = height;
++     task->c64x_arg[5] = key;
++     task->c64x_arg[6] = mask;
++
++     task->c64x_function = C64X_COPY_KEYED_16 | C64X_FLAG_TODO;
++
++     c64x_submit_task( c64x, task );
++}
++
++static inline void
++davinci_c64x_blit_keyed_32__L( DavinciC64xTasks *tasks,
++                               unsigned long     dest,
++                               u32               dpitch,
++                               unsigned long     src,
++                               u32               spitch,
++                               u32               width,
++                               u32               height,
++                               u32               key,
++                               u32               mask )
++{
++     c64xTask *task = &tasks->tasks[tasks->num_tasks];
++
++     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
++
++     task->c64x_arg[0] = dest;
++     task->c64x_arg[1] = (dpitch << 16) | (spitch & 0xffff);
++     task->c64x_arg[2] = src;
++     task->c64x_arg[3] = width;
++     task->c64x_arg[4] = height;
++     task->c64x_arg[5] = key;
++     task->c64x_arg[6] = mask;
++
++     task->c64x_function = C64X_COPY_KEYED_32 | C64X_FLAG_TODO;
++
++     tasks->num_tasks++;
++}
++
++static inline void
++davinci_c64x_blit_keyed_32( DavinciC64x   *c64x,
++                            unsigned long  dest,
++                            u32            dpitch,
++                            unsigned long  src,
++                            u32            spitch,
++                            u32            width,
++                            u32            height,
++                            u32            key,
++                            u32            mask )
++{
++     c64xTask *task = c64x_get_task( c64x );
++
++     task->c64x_arg[0] = dest;
++     task->c64x_arg[1] = (dpitch << 16) | (spitch & 0xffff);
++     task->c64x_arg[2] = src;
++     task->c64x_arg[3] = width;
++     task->c64x_arg[4] = height;
++     task->c64x_arg[5] = key;
++     task->c64x_arg[6] = mask;
++
++     task->c64x_function = C64X_COPY_KEYED_32 | C64X_FLAG_TODO;
++
++     c64x_submit_task( c64x, task );
++}
++
++#endif
++
+diff -puNr -Naur directfb-1.6.3-orig/gfxdrivers/davinci/davincifb.h directfb-1.6.3/gfxdrivers/davinci/davincifb.h
+--- directfb-1.6.3-orig/gfxdrivers/davinci/davincifb.h 1970-01-01 01:00:00.000000000 +0100
++++ directfb-1.6.3/gfxdrivers/davinci/davincifb.h      2013-04-07 21:33:21.488622184 +0200
+@@ -0,0 +1,581 @@
++/* 
++ * Copyright (C) 2006 Texas Instruments 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 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
++ *
++ * File: davincifb.h  
++ */
++
++#ifndef DAVINVI_VPBE_H
++#define DAVINVI_VPBE_H
++
++/* include Linux files */
++#include <linux/fb.h>
++
++/* define the custom FBIO_WAITFORVSYNC ioctl */
++#define FBIO_WAITFORVSYNC     _IOW('F', 0x20, u_int32_t)
++#define FBIO_SETATTRIBUTE       _IOW('F', 0x21, struct fb_fillrect)
++
++/* Backported IOCTLS. */
++#define FBIO_SETPOSX                            _IOW('F', 0x22, u_int32_t)
++#define FBIO_SETPOSY                            _IOW('F', 0x23, u_int32_t)
++#define FBIO_SETZOOM                          _IOW('F', 0x24, struct zoom_params)
++#define FBIO_GETSTD                             _IOR('F', 0x25, u_int32_t)
++#define FBIO_RESIZER                          _IOW('F', 0x26, struct vpfe_resizer_params)
++#define FBIO_SYNC                             _IOW('F', 0x27, u_int32_t)
++
++typedef struct zoom_params {
++      u_int32_t window_id;
++      u_int32_t zoom_h;
++      u_int32_t zoom_v;
++} zoom_params_t;
++
++typedef struct vpfe_resizer_params
++{
++      u_int32_t rsz_cnt;      //busy-lock
++      u_int32_t out_size;     //busy-lock
++      u_int32_t in_start;     //busy-lock
++      u_int32_t in_size;      //busy-lock
++      u_int32_t sdr_inadd;    //shadowed
++      u_int32_t sdr_inoff;    //shadowed
++      u_int32_t sdr_outadd;   //shadowed
++      u_int32_t sdr_outoff;   //shadowed
++      u_int32_t hfilt[16];    //busy-lock
++      u_int32_t vfilt[16];    //busy-lock
++      u_int32_t yenh;         //busy-lock
++} vpfe_resizer_params_t;
++
++typedef struct fb_set_start {
++      int             offset;         /* offset from smem_start */
++      unsigned long   physical;       /* absolute physical address when offset < 0 */
++
++      u_int64_t       sync;           /* input:  target sync counter for change or 0 for no sync at all,
++                                         output: sync counter of actual change or 0 if still pending */
++} fb_set_start_t;
++
++
++#ifdef _IOC_TYPECHECK
++#undef _IOC_TYPECHECK
++#define _IOC_TYPECHECK(x)     (sizeof(x))
++#endif
++
++#define       RAM_CLUT_SIZE   256*3
++#define FBIO_ENABLE_DISABLE_WIN               \
++      _IOW('F', 0x30, unsigned char)
++#define FBIO_SET_BITMAP_BLEND_FACTOR  \
++      _IOW('F', 0x31, vpbe_bitmap_blend_params_t)
++#define FBIO_SET_BITMAP_WIN_RAM_CLUT    \
++      _IOW('F', 0x32, unsigned char)*RAM_CLUT_SIZE)
++#define FBIO_ENABLE_DISABLE_ATTRIBUTE_WIN \
++      _IOW('F', 0x33, unsigned int)
++#define FBIO_GET_BLINK_INTERVAL               \
++      _IOR('F', 0x34, vpbe_blink_option_t)
++#define FBIO_SET_BLINK_INTERVAL         \
++      _IOW('F', 0x35, vpbe_blink_option_t)
++#define FBIO_GET_VIDEO_CONFIG_PARAMS    \
++      _IOR('F', 0x36, vpbe_video_config_params_t)
++#define FBIO_SET_VIDEO_CONFIG_PARAMS    \
++      _IOW('F', 0x37, vpbe_video_config_params_t)
++#define FBIO_GET_BITMAP_CONFIG_PARAMS   \
++      _IOR('F', 0x38, vpbe_bitmap_config_params_t)
++#define FBIO_SET_BITMAP_CONFIG_PARAMS   \
++      _IOW('F', 0x39, vpbe_bitmap_config_params_t)
++#define FBIO_SET_DCLK                   \
++      _IOW('F', 0x40, vpbe_dclk_t)
++#define FBIO_SET_INTERFACE            \
++      _IOW('F', 0x41, unsigned char)
++#define FBIO_GET_INTERFACE            \
++      _IOR('F', 0x42, unsigned char)
++#define FBIO_QUERY_TIMING             \
++      _IOWR('F', 0x43, struct vpbe_mode_info)
++#define FBIO_SET_TIMING                       \
++      _IOW('F', 0x44, struct vpbe_fb_videomode)
++#define FBIO_GET_TIMING                 \
++      _IOR('F', 0x45, struct vpbe_fb_videomode)
++#define FBIO_SET_VENC_CLK_SOURCE      \
++      _IOW('F', 0x46, unsigned char)
++#define FBIO_SET_BACKG_COLOR            \
++      _IOW('F', 0x47, vpbe_backg_color_t)
++#define FBIO_ENABLE_DISPLAY           \
++      _IOW('F', 0x48, unsigned char)
++#define FBIO_SETPOS                           \
++      _IOW('F', 0x49, u_int32_t)
++#define FBIO_SET_CURSOR               \
++      _IOW('F', 0x50, struct fb_cursor)
++#define FBIO_SET_START                \
++      _IOW('F', 0x66, struct fb_set_start)
++
++/* 
++ * Defines and Constants
++ */
++#ifdef __KERNEL__
++#define DAVINCIFB_DEVICE "davincifb"
++#define DAVINCIFB_DRIVER "davincifb"
++
++#define MULTIPLE_BUFFERING      1
++
++#ifdef MULTIPLE_BUFFERING
++#define DOUBLE_BUF      2
++#define TRIPLE_BUF      3
++#else
++#define DOUBLE_BUF      1
++#define TRIPLE_BUF      1
++#endif
++
++/* usage:     if (is_win(info->fix.id, OSD0)) ... */
++#define is_win(name, x) ((strcmp(name, x ## _FBNAME) == 0) ? 1 : 0)
++
++/*
++ * display controller register I/O routines
++ */
++u32 dispc_reg_in(u32 offset);
++u32 dispc_reg_out(u32 offset, u32 val);
++u32 dispc_reg_merge(u32 offset, u32 val, u32 mask);
++
++#endif                                /*__KERNEL__*/
++
++/*  Error return codes  */
++#define VPBE_INVALID_PARA_VALUE         700
++#define VPBE_WRONG_WINDOW_ID            701
++#define VPBE_CURRENTLY_IN_REQUIRED_MODE 702
++#define VPBE_INSUFFICIENT_CLUT_VALUES   703
++#define VPBE_CLUT_WRITE_TIMEOUT         704
++#define VPBE_VID0_BUF_ADR_NULL          705
++#define VPBE_WINDOW_NOT_DISABLED        706
++#define VPBE_WINDOW_NOT_ENABLED         707
++
++#ifndef __KERNEL__
++/*  Window ID definations */
++#define OSD0      0
++#define VID0      1
++#define OSD1      2
++#define VID1      3
++#endif
++
++/* There are 4 framebuffers, each represented by an fb_info and
++ * a dm_win_info structure */
++#define OSD0_FBNAME "dm_osd0_fb"
++#define OSD1_FBNAME "dm_osd1_fb"
++#define VID0_FBNAME "dm_vid0_fb"
++#define VID1_FBNAME "dm_vid1_fb"
++
++/*  FIXME: Digital LCD RGB matrix coefficients */
++#define DLCD_DGY_VAL    0
++#define DLCD_DRV_VAL    0
++#define DLCD_DGU_VAL    0
++#define DLCD_DBU_VAL          0
++
++/* Defines for bitmap format */
++#define VPBE_BITMAP_BIT_1     1
++#define VPBE_BITMAP_BIT_2     2
++#define VPBE_BITMAP_BIT_4     4
++#define VPBE_BITMAP_BIT_8     8
++#define VPBE_BITMAP_RGB565    16
++#define VPBE_VIDEO_YUV422     16
++#define VPBE_VIDEO_RGB888     24
++
++/* Defines foe cursor parameter validation*/
++#define MAX_CURSOR_WIDTH      0x3FF
++#define MAX_CURSOR_HEIGHT     0x1FF
++#define MAX_CURSOR_LINEWIDTH    7
++
++#define BASEX         0x80
++#define BASEY         0x12
++#define BASEX_DLCD            0x59
++#define BASEY_DLCD            0x22
++
++/*
++ * Enumerations 
++ */
++/*  Enum for blending factor  */
++typedef enum vpbe_blend_factor {
++      OSD_CONTRIBUTION_ZERO = 0,
++      OSD_CONTRIBUTION_1_BY_8 = 1,
++      OSD_CONTRIBUTION_2_BY_8 = 2,
++      OSD_CONTRIBUTION_3_BY_8 = 3,
++      OSD_CONTRIBUTION_4_BY_8 = 4,
++      OSD_CONTRIBUTION_5_BY_8 = 5,
++      OSD_CONTRIBUTION_6_BY_8 = 6,
++      OSD_CONTRIBUTION_ONE = 7
++} vpbe_blend_factor_t;
++
++/*  Enum for Boolean variables  */
++typedef enum {
++      SET_0 = 0,
++      SET_1 = 1
++} CB_CR_ORDER, ATTRIBUTE, ROM_RAM_CLUT;
++
++/*  Defines for Display Interface */
++#define  PRGB         0
++#define  COMPOSITE      1
++#define  SVIDEO       2
++#define  COMPONENT    3
++#define  RGB          4
++#define  YCC16        5
++#define  YCC8         6
++#define  SRGB         7
++#define  EPSON        8
++#define  CASIO1G      9
++#define  UDISP        10
++#define  STN          11
++#define VPBE_MAX_INTERFACES   12
++
++/*  Defines for Display Mode */
++#define  LCD    0
++#define  NTSC 1
++#define  PAL    2
++#define  P525   3
++#define  P625   4
++
++#define DEFAULT_MODE 0
++#define  P480   0
++#define  P400   1
++#define  P350   2
++#define NON_EXISTING_MODE 255
++/*  Enable/Disable enum */
++typedef enum {
++      VPBE_DISABLE = 0,
++      VPBE_ENABLE = 1
++} ATTENUATION, TRANSPARENCY, EXPANSION, BLINKING;
++
++typedef enum clk_source {
++      CLK_SOURCE_CLK27 = 0,
++      CLK_SOURCE_CLK54 = 1,
++      CLK_SOURCE_VPBECLK = 2
++} CLK_SOURCE;
++
++/*
++ * Structures and Union Definitions
++ */
++
++/*  Structure for transparency and the blending factor for the bitmap window  */
++typedef struct vpbe_bitmap_blend_params {
++      unsigned int colorkey;  /* color key to be blend */
++      unsigned int enable_colorkeying;        /* enable color keying */
++      unsigned int bf;        /* valid range from 0 to 7 only. */
++} vpbe_bitmap_blend_params_t;
++
++/*  Structure for window expansion  */
++typedef struct vpbe_win_expansion {
++      EXPANSION horizontal;
++      EXPANSION vertical;     /* 1: Enable 0:disable */
++} vpbe_win_expansion_t;
++
++/*  Structure for OSD window blinking options */
++typedef struct vpbe_blink_option {
++      BLINKING blinking;      /* 1: Enable blinking 0: Disable */
++      unsigned int interval;  /* Valid only if blinking is 1 */
++} vpbe_blink_option_t;
++
++/*  Structure for DCLK parameters */
++typedef struct vpbe_dclk {
++      unsigned char dclk_pattern_width;
++      unsigned int dclk_pattern0;
++      unsigned int dclk_pattern1;
++      unsigned int dclk_pattern2;
++      unsigned int dclk_pattern3;
++} vpbe_dclk_t;
++
++/*  Structure for display format  */
++typedef struct vpbe_display_format {
++      unsigned char interface;        /* Output interface type */
++      unsigned char mode;     /* output mode */
++} vpbe_display_format_t;
++
++/*  Structure for background color  */
++typedef struct vpbe_backg_color {
++      unsigned char clut_select;      /* 2: RAM CLUT 1:ROM1 CLUT 0:ROM0 CLUT */
++      unsigned char color_offset;     /* index of color */
++} vpbe_backg_color_t;
++
++/*  Structure for Video window configurable parameters  */
++typedef struct vpbe_video_config_params {
++      CB_CR_ORDER cb_cr_order;        /*Cb/Cr order in input data for a pixel. */
++      /*    0: cb cr  1:  cr cb */
++      vpbe_win_expansion_t exp_info;  /* HZ/VT Expansion enable disable */
++} vpbe_video_config_params_t;
++
++/*Union of structures giving the CLUT index for the 1, 2, 4 bit bitmap values.*/
++typedef union vpbe_clut_idx {
++      struct _for_4bit_bimap {
++              unsigned char bitmap_val_0;
++              unsigned char bitmap_val_1;
++              unsigned char bitmap_val_2;
++              unsigned char bitmap_val_3;
++              unsigned char bitmap_val_4;
++              unsigned char bitmap_val_5;
++              unsigned char bitmap_val_6;
++              unsigned char bitmap_val_7;
++              unsigned char bitmap_val_8;
++              unsigned char bitmap_val_9;
++              unsigned char bitmap_val_10;
++              unsigned char bitmap_val_11;
++              unsigned char bitmap_val_12;
++              unsigned char bitmap_val_13;
++              unsigned char bitmap_val_14;
++              unsigned char bitmap_val_15;
++      } for_4bit_bimap;
++      struct _for_2bit_bimap {
++              unsigned char bitmap_val_0;
++              unsigned char dummy0[4];
++              unsigned char bitmap_val_1;
++              unsigned char dummy1[4];
++              unsigned char bitmap_val_2;
++              unsigned char dummy2[4];
++              unsigned char bitmap_val_3;
++      } for_2bit_bimap;
++      struct _for_1bit_bimap {
++              unsigned char bitmap_val_0;
++              unsigned char dummy0[14];
++              unsigned char bitmap_val_1;
++      } for_1bit_bimap;
++} vpbe_clut_idx_t;
++
++/*  Structure for bitmap window configurable parameters */
++typedef struct vpbe_bitmap_config_params {
++      /* Only for bitmap width = 1,2,4 bits */
++      vpbe_clut_idx_t clut_idx;
++      /* Attenuation value for YUV o/p for bitmap window */
++      unsigned char attenuation_enable;
++      /* 0: ROM DM270, 1:ROM DM320, 2:RAM CLUT */
++      unsigned char clut_select;
++} vpbe_bitmap_config_params_t;
++
++/*  Unioun for video/OSD configuration parameters  */
++typedef union vpbe_conf_params {
++
++      struct vpbe_video_params {
++              CB_CR_ORDER cb_cr_order;
++              /* HZ/VT Expansion enable disable */
++              vpbe_win_expansion_t exp_info;
++      } video_params;
++
++      struct vpbe_bitmap_params {
++              /* Attenuation value for YUV o/p */
++              ATTENUATION attenuation_enable;
++              /* 0: ROM DM270, 1: ROM DM320, 2:RAM CLUT */
++              unsigned char clut_select;
++              /* Only for bitmap width = 1,2,4 bits */
++              vpbe_clut_idx_t clut_idx;
++              /* 0: OSD window is bitmap window */
++              /* 1: OSD window is attribute window */
++              ATTRIBUTE enable_attribute;
++              /* To hold bps value. 
++                 Used to switch back from attribute to bitmap. */
++              unsigned int stored_bits_per_pixel;
++              /* Blending information */
++              vpbe_bitmap_blend_params_t blend_info;
++              /* OSD Blinking information */
++              vpbe_blink_option_t blink_info;
++      } bitmap_params;
++
++} vpbe_conf_params_t;
++
++typedef struct vpbe_video_params vpbe_video_params_t;
++typedef struct vpbe_bitmap_params vpbe_bitmap_params_t;
++
++/* Structure to hold window position */
++typedef struct vpbe_window_position {
++      unsigned int xpos;      /* X position of the window */
++      unsigned int ypos;      /* Y position of the window */
++} vpbe_window_position_t;
++
++#ifdef __KERNEL__
++/*  Structure for each window */
++typedef struct vpbe_dm_win_info {
++      struct fb_info info;
++      vpbe_window_position_t win_pos; /* X,Y position of window */
++      /* Size of window is already there in var_info structure. */
++
++      dma_addr_t fb_base_phys;        /*framebuffer area */
++      unsigned int fb_base;   /*window memory pointer */
++      unsigned int fb_size;   /*memory size */
++      unsigned int pseudo_palette[17];
++      int alloc_fb_mem;
++      /*flag to identify if framebuffer area is fixed or not */
++      unsigned long sdram_address;
++      struct vpbe_dm_info *dm;
++      unsigned char window_enable;    /*Additions for all windows */
++      zoom_params_t zoom;     /*Zooming parameters */
++      unsigned char field_frame_select;       /*To select Field or frame */
++      unsigned char numbufs;  /*Number of buffers valid 2 or 3 */
++      vpbe_conf_params_t conf_params;
++      /*window configuration parameter union pointer */
++} vpbe_dm_win_info_t;
++#endif                                /*__KERNEL__*/
++
++/*
++ *  Videmode structure for display interface and mode settings
++ */
++typedef struct vpbe_fb_videomode {
++      unsigned char name[10]; /* Mode name ( NTSC , PAL) */
++      unsigned int vmode;     /* FB_MODE_INTERLACED or FB_MODE_NON_INTERLACED */
++      unsigned int xres;      /* X Resolution of the display */
++      unsigned int yres;      /* Y Resolution of the display */
++      unsigned int fps;       /* frames per second */
++      /* Timing Parameters applicable for std = 0 only */
++      unsigned int left_margin;
++      unsigned int right_margin;
++      unsigned int upper_margin;
++      unsigned int lower_margin;
++      unsigned int hsync_len;
++      unsigned int vsync_len;
++      unsigned int sync;      /* 0: hsync -ve/vsync -ve */
++      /*1: hsync -ve/vsync +ve */
++      /*2: hsync +ve/vsync -ve */
++      /*3: hsync +ve/vsync +ve */
++      unsigned int basepx;    /* Display x,y start position */
++      unsigned int basepy;
++/*  1= Mode s available in modelist 0=Mode is not available in modelist */
++      unsigned int std;
++} vpbe_fb_videomode_t;
++
++/* Structure to interface videomode to application*/
++typedef struct vpbe_mode_info {
++      vpbe_fb_videomode_t vid_mode;
++      unsigned char interface;
++      unsigned char mode_idx;
++} vpbe_mode_info_t;
++
++#ifdef __KERNEL__
++/* 
++ * Structure for the driver holding information of windows, 
++ *  memory base addresses etc.
++ */
++typedef struct vpbe_dm_info {
++      vpbe_dm_win_info_t *osd0;
++      vpbe_dm_win_info_t *osd1;
++      vpbe_dm_win_info_t *vid0;
++      vpbe_dm_win_info_t *vid1;
++
++/* to map the registers */
++      dma_addr_t mmio_base_phys;
++      unsigned int mmio_base;
++      unsigned int mmio_size;
++
++      wait_queue_head_t vsync_wait;
++      unsigned int vsync_cnt;
++      int timeout;
++
++      /* this is the function that configures the output device (NTSC/PAL/LCD)
++       * for the required output format (composite/s-video/component/rgb)
++       */
++      void (*output_device_config) (void);
++
++      struct device *dev;
++
++      vpbe_backg_color_t backg;       /* background color */
++      vpbe_dclk_t dclk;       /*DCLK parameters */
++      vpbe_display_format_t display;  /*Display interface and mode */
++      vpbe_fb_videomode_t videomode;  /*Cuurent videomode */
++      char ram_clut[256][3];  /*RAM CLUT array */
++      struct fb_cursor cursor;        /* cursor config params from fb.h */
++/*Flag that indicates whether any of the display is enabled or not*/
++      int display_enable;
++} vpbe_dm_info_t;
++
++/*
++ * Functions Definitions for 'davincifb' module
++ */
++int vpbe_mem_alloc_window_buf(vpbe_dm_win_info_t *);
++int vpbe_mem_release_window_buf(vpbe_dm_win_info_t *);
++void init_display_function(vpbe_display_format_t *);
++int vpbe_mem_alloc_struct(vpbe_dm_win_info_t **);
++void set_vid0_default_conf(void);
++void set_vid1_default_conf(void);
++void set_osd0_default_conf(void);
++void set_osd1_default_conf(void);
++void set_cursor_default_conf(void);
++void set_dm_default_conf(void);
++void set_win_enable(char *, unsigned int);
++int within_vid0_limits(u32, u32, u32, u32);
++void vpbe_set_display_default(void);
++#ifdef __KERNEL__
++void set_win_position(char *, u32, u32, u32, u32);
++void change_win_param(int);
++void set_interlaced(char *, unsigned int);
++#endif /* __KERNEL__ */
++
++/*
++ *    Function definations for 'osd' module
++ */
++
++int vpbe_enable_window(vpbe_dm_win_info_t *);
++int vpbe_disable_window(vpbe_dm_win_info_t *);
++int vpbe_vid_osd_select_field_frame(u8 *, u8);
++int vpbe_bitmap_set_blend_factor(u8 *, vpbe_bitmap_blend_params_t *);
++int vpbe_bitmap_set_ram_clut(void);
++int vpbe_enable_disable_attribute_window(u32);
++int vpbe_get_blinking(u8 *, vpbe_blink_option_t *);
++int vpbe_set_blinking(u8 *, vpbe_blink_option_t *);
++int vpbe_set_vid_params(u8 *, vpbe_video_config_params_t *);
++int vpbe_get_vid_params(u8 *, vpbe_video_config_params_t *);
++int vpbe_bitmap_get_params(u8 *, vpbe_bitmap_config_params_t *);
++int vpbe_bitmap_set_params(u8 *, vpbe_bitmap_config_params_t *);
++int vpbe_set_cursor_params(struct fb_cursor *);
++int vpbe_set_vid_expansion(vpbe_win_expansion_t *);
++int vpbe_set_dclk(vpbe_dclk_t *);
++int vpbe_set_display_format(vpbe_display_format_t *);
++int vpbe_set_backg_color(vpbe_backg_color_t *);
++int vpbe_set_interface(u8);
++int vpbe_query_mode(vpbe_mode_info_t *);
++int vpbe_set_mode(struct vpbe_fb_videomode *);
++int vpbe_set_venc_clk_source(u8);
++void set_vid0_default_conf(void);
++void set_osd0_default_conf(void);
++void set_vid1_default_conf(void);
++void set_osd1_default_conf(void);
++void set_cursor_default_conf(void);
++void set_dm_default_conf(void);
++/*
++ * Function definations for 'venc' module
++ */
++
++void davincifb_ntsc_composite_config(void);
++void davincifb_ntsc_svideo_config(void);
++void davincifb_ntsc_component_config(void);
++void davincifb_pal_composite_config(void);
++void davincifb_pal_svideo_config(void);
++void davincifb_pal_component_config(void);
++
++void vpbe_davincifb_ntsc_rgb_config(void);
++void vpbe_davincifb_pal_rgb_config(void);
++void vpbe_davincifb_525p_component_config(void);
++void vpbe_davincifb_625p_component_config(void);
++
++void vpbe_enable_venc(int);
++void vpbe_enable_dacs(int);
++/*
++ * Function definations for 'dlcd' module
++ */
++void vpbe_davincifb_480p_prgb_config(void);
++void vpbe_davincifb_400p_prgb_config(void);
++void vpbe_davincifb_350p_prgb_config(void);
++void vpbe_set_display_timing(struct vpbe_fb_videomode *);
++
++void vpbe_enable_lcd(int);
++/*
++ * Following functions are not implemented
++ */
++void vpbe_davincifb_default_ycc16_config(void);
++void vpbe_davincifb_default_ycc8_config(void);
++void vpbe_davincifb_default_srgb_config(void);
++void vpbe_davincifb_default_epson_config(void);
++void vpbe_davincifb_default_casio_config(void);
++void vpbe_davincifb_default_UDISP_config(void);
++void vpbe_davincifb_default_STN_config(void);
++#endif                                /*__KERNEL__*/
++
++#endif                                /* End of #ifndef DAVINCI_VPBE_H */
+diff -puNr -Naur directfb-1.6.3-orig/gfxdrivers/davinci/davinci_gfxdriver.h directfb-1.6.3/gfxdrivers/davinci/davinci_gfxdriver.h
+--- directfb-1.6.3-orig/gfxdrivers/davinci/davinci_gfxdriver.h 1970-01-01 01:00:00.000000000 +0100
++++ directfb-1.6.3/gfxdrivers/davinci/davinci_gfxdriver.h      2013-04-07 21:33:19.560662133 +0200
+@@ -0,0 +1,169 @@
++/*
++   TI Davinci driver - Graphics Driver
++
++   (c) Copyright 2007  Telio AG
++
++   Written by Denis Oliver Kropp <dok@directfb.org>
++
++   Code is derived from VMWare driver.
++
++   (c) Copyright 2001-2009  The world wide DirectFB Open Source Community (directfb.org)
++   (c) Copyright 2000-2004  Convergence (integrated media) GmbH
++
++   All rights reserved.
++
++   This library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2 of the License, or (at your option) any later version.
++
++   This library 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
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with this library; if not, write to the
++   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
++   Boston, MA 02111-1307, USA.
++*/
++
++#ifndef __DAVINCI_GFXDRIVER_H__
++#define __DAVINCI_GFXDRIVER_H__
++
++#include <sys/ioctl.h>
++#include <davincifb.h>
++
++#include <core/surface_buffer.h>
++
++#include "davincifb.h"
++
++#include "davinci_c64x.h"
++
++
++typedef struct {
++     /* validation flags */
++     int                       v_flags;
++
++     /* cached/computed values */
++     void                     *dst_addr;
++     unsigned long             dst_phys;
++     unsigned int              dst_size;
++     unsigned long             dst_pitch;
++     DFBSurfacePixelFormat     dst_format;
++     unsigned long             dst_bpp;
++
++     void                     *src_addr;
++     unsigned long             src_phys;
++     unsigned long             src_pitch;
++     DFBSurfacePixelFormat     src_format;
++     unsigned long             src_bpp;
++
++     unsigned long             source_mult;
++
++     unsigned long             fillcolor;
++
++     int                       blit_blend_sub_function;
++     int                       draw_blend_sub_function;
++
++     DFBColor                  color;
++     unsigned long             color_argb;
++     unsigned long             colorkey;
++
++     DFBSurfaceBlittingFlags   blitting_flags;
++
++     DFBRegion                 clip;
++
++     /** Add shared data here... **/
++     struct fb_fix_screeninfo  fix[4];
++
++     CoreSurfacePool          *osd_pool;
++     CoreSurfacePool          *video_pool;
++
++     bool                      synced;
++} DavinciDeviceData;
++
++
++typedef struct {
++     int                       num;
++     int                       fd;
++     void                     *mem;
++     int                       size;
++} DavinciFB;
++
++typedef struct {
++     DavinciDeviceData        *ddev;
++
++     CoreDFB                  *core;
++
++     CoreScreen               *screen;
++     CoreLayer                *osd;
++     CoreLayer                *video;
++
++     DavinciFB                 fb[4];
++
++     DavinciC64x               c64x;
++     bool                      c64x_present;
++
++     DavinciC64xTasks          tasks;
++} DavinciDriverData;
++
++
++static inline DFBResult
++davincifb_pan_display( const DavinciFB             *fb,
++                       struct fb_var_screeninfo    *var,
++                       const CoreSurfaceBufferLock *lock,
++                       DFBSurfaceFlipFlags          flags,
++                       int                          x,
++                       int                          y )
++{
++     int ret;
++
++     if (lock) {
++#ifdef FBIO_SET_START
++          CoreSurfaceBuffer   *buffer = lock->buffer;
++          struct fb_set_start  set_start;
++
++          /* physical mode */
++          set_start.offset   = -1;
++          set_start.sync     = (flags & DSFLIP_ONSYNC) ? 1 : 0;
++
++          /* life's so easy */
++          set_start.physical = lock->phys + DFB_BYTES_PER_LINE( buffer->format, x ) + y * lock->pitch;
++
++          ret = ioctl( fb->fd, FBIO_SET_START, &set_start );
++          if (ret < 0)
++               D_DEBUG( "FBIO_SET_START (0x%08lx, sync %llu) failed!\n",
++                         set_start.physical, set_start.sync );
++
++          if (ret == 0) {
++               if (flags & DSFLIP_WAIT)
++                    ioctl( fb->fd, FBIO_WAITFORVSYNC );
++
++               return DFB_OK;
++          }
++
++          /* fallback */
++#endif
++          var->xoffset = x;                  /* poor version */
++          var->yoffset = y + lock->offset / lock->pitch;
++     }
++     else {
++          var->xoffset = x;
++          var->yoffset = y;
++     }
++
++     var->activate = /*(flags & DSFLIP_ONSYNC) ? FB_ACTIVATE_VBL :*/ FB_ACTIVATE_NOW;
++
++     ret = ioctl( fb->fd, FBIOPAN_DISPLAY, var );
++     if (ret)
++          D_PERROR( "Davinci/FB: FBIOPAN_DISPLAY (fb%d - %d,%d) failed!\n",
++                    fb->num, var->xoffset, var->yoffset );
++
++     if (flags & DSFLIP_WAIT)
++          ioctl( fb->fd, FBIO_WAITFORVSYNC );
++
++     return DFB_OK;
++}
++
++#endif
+diff -puNr -Naur directfb-1.6.3-orig/tests/voodoo/voodoo_test.h directfb-1.6.3/tests/voodoo/voodoo_test.h
+--- directfb-1.6.3-orig/tests/voodoo/voodoo_test.h     1970-01-01 01:00:00.000000000 +0100
++++ directfb-1.6.3/tests/voodoo/voodoo_test.h  2013-04-07 21:33:31.824408024 +0200
+@@ -0,0 +1,10 @@
++#ifndef __VOODOO_TEST_H__
++#define __VOODOO_TEST_H__
++
++typedef enum {
++     VOODOO_TEST_INCREASE,
++     VOODOO_TEST_QUERY
++} VoodooTestCall;
++
++#endif
++
diff --git a/package/directfb/0002-imlib2-config.patch b/package/directfb/0002-imlib2-config.patch
new file mode 100644 (file)
index 0000000..1203475
--- /dev/null
@@ -0,0 +1,21 @@
+Call the imlib2-conf variable that are set by ac_cv_path_IMLIB2_CONFIG
+with the absolute path because the imlib2-config file is not covered
+by the PATH variable.
+This is important for cross compiler that need to get the staging settings
+instead of the host settings.
+
+Signed-off-by: Carsten Schoenert <c.schoenert@gmail.com>
+
+--- directfb-1.6.3/configure.orig      2013-03-31 13:18:22.837560379 +0200
++++ directfb-1.6.3/configure   2013-03-31 13:23:40.177541099 +0200
+@@ -19816,8 +19816,8 @@ fi
+ $as_echo "$as_me: WARNING: *** Imlib2 library not found, building without Imlib2 support ***" >&2;}
+     imlib2="no"
+   else
+-    IMLIB2_CFLAGS=`imlib2-config --cflags`
+-    IMLIB2_LIBS=`imlib2-config --libs`
++    IMLIB2_CFLAGS=`$IMLIB2_CONFIG --cflags`
++    IMLIB2_LIBS=`$IMLIB2_CONFIG --libs`
+     imlib2="yes"
+   fi
+ fi
diff --git a/package/directfb/0003-remove-redefinition-of-__typeof__.patch b/package/directfb/0003-remove-redefinition-of-__typeof__.patch
new file mode 100644 (file)
index 0000000..e3861af
--- /dev/null
@@ -0,0 +1,28 @@
+Remove definition to fix qt5 build.
+
+Fetch from: http://git.directfb.org/?p=core/DirectFB.git;a=patch;h=203f78a4193a8ff110dec3c860e0928af1a0a72f
+
+From 203f78a4193a8ff110dec3c860e0928af1a0a72f Mon Sep 17 00:00:00 2001
+From: Denis Oliver Kropp <dok@directfb.org>
+Date: Wed, 31 Jul 2013 21:56:05 +0200
+Subject: [PATCH] libdirect: Remove redefinition of __typeof__!!!
+
+---
+ lib/direct/os/linux/glibc/types.h |    1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/lib/direct/os/linux/glibc/types.h b/lib/direct/os/linux/glibc/types.h
+index 08e94b2..80cb350 100644
+--- a/lib/direct/os/linux/glibc/types.h
++++ b/lib/direct/os/linux/glibc/types.h
+@@ -81,7 +81,6 @@ typedef int64_t s64;
+ #define __dfb_no_instrument_function__  __attribute__((no_instrument_function))
+ #define __constructor__                 __attribute__((constructor))
+ #define __destructor__                  __attribute__((destructor))
+-#define __typeof__(x)                   __typeof__(x)
+ #ifndef __func__
+ #define __func__                        __FUNCTION__
+-- 
+1.7.9.5
+
diff --git a/package/directfb/0004-setregion-lock.patch b/package/directfb/0004-setregion-lock.patch
new file mode 100644 (file)
index 0000000..8a246ea
--- /dev/null
@@ -0,0 +1,92 @@
+This patch fixes builderrors while using '--with-gfxdrivers' and
+'--with-inputdrivers' with the current DirectFB version 1.6.3.
+
+Patch is taken from
+http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/dev-libs/DirectFB/files/DirectFB-1.6.3-setregion.patch
+
+Signed-off-by: Carsten Schoenert <c.schoenert@gmail.com>
+
+--- directfb-1.6.3/gfxdrivers/cyber5k/cyber5k.c
++++ directfb-1.6.3/gfxdrivers/cyber5k/cyber5k.c
+@@ -636,7 +636,8 @@ osdSetRegion( CoreLayer
+               CoreLayerRegionConfigFlags  updated,
+               CoreSurface                *surface,
+               CorePalette                *palette,
+-              CoreSurfaceBufferLock      *lock )
++              CoreSurfaceBufferLock      *left_lock,
++              CoreSurfaceBufferLock      *right_lock )
+ {
+      DFBResult ret;
+@@ -644,7 +645,7 @@ osdSetRegion( CoreLayer
+      ret = oldPrimaryFuncs.SetRegion( layer, oldPrimaryDriverData,
+                                       layer_data, region_data,
+                                       config, updated, surface,
+-                                      palette, lock );
++                                      palette, left_lock, right_lock );
+      if (ret)
+           return ret;
+--- directfb-1.6.3/gfxdrivers/radeon/radeon_crtc1.c
++++ directfb-1.6.3/gfxdrivers/radeon/radeon_crtc1.c
+@@ -147,14 +147,15 @@ crtc1SetRegion( CoreLayer
+                 CoreLayerRegionConfigFlags  updated,
+                 CoreSurface                *surface,
+                 CorePalette                *palette,
+-                CoreSurfaceBufferLock      *lock )
++                CoreSurfaceBufferLock      *left_lock,
++                CoreSurfaceBufferLock      *right_lock )
+ {
+      
+      if (updated & ~CLRCF_OPTIONS) {
+           return OldPrimaryLayerFuncs.SetRegion( layer,
+                                                  OldPrimaryLayerDriverData,
+                                                  layer_data, region_data,
+-                                                 config, updated, surface, palette, lock );
++                                                 config, updated, surface, palette, left_lock, right_lock );
+      }
+      return DFB_OK;
+--- directfb-1.6.3/gfxdrivers/cle266/uc_primary.c
++++ directfb-1.6.3/gfxdrivers/cle266/uc_primary.c
+@@ -138,7 +138,8 @@ osdSetRegion( CoreLayer
+               CoreLayerRegionConfigFlags  updated,
+               CoreSurface                *surface,
+               CorePalette                *palette,
+-              CoreSurfaceBufferLock      *lock )
++              CoreSurfaceBufferLock      *left_lock,
++              CoreSurfaceBufferLock      *right_lock )
+ {
+      DFBResult     ret;
+      UcDriverData *ucdrv = (UcDriverData*) driver_data;
+@@ -147,7 +148,7 @@ osdSetRegion( CoreLayer
+      ret = ucOldPrimaryFuncs.SetRegion( layer, ucOldPrimaryDriverData,
+                                         layer_data, region_data,
+                                         config, updated, surface,
+-                                        palette, lock );
++                                        palette, left_lock, right_lock );
+      if (ret)
+           return ret;
+--- directfb-1.6.3/gfxdrivers/unichrome/uc_primary.c
++++ directfb-1.6.3/gfxdrivers/unichrome/uc_primary.c
+@@ -135,7 +135,8 @@ osdSetRegion( CoreLayer
+               CoreLayerRegionConfigFlags  updated,
+               CoreSurface                *surface,
+               CorePalette                *palette,
+-              CoreSurfaceBufferLock      *lock )
++              CoreSurfaceBufferLock      *left_lock,
++              CoreSurfaceBufferLock      *right_lock )
+ {
+      DFBResult     ret;
+      UcDriverData *ucdrv = (UcDriverData*) driver_data;
+@@ -144,7 +145,7 @@ osdSetRegion( CoreLayer
+      ret = ucOldPrimaryFuncs.SetRegion( layer, ucOldPrimaryDriverData,
+                                         layer_data, region_data,
+                                         config, updated, surface,
+-                                        palette, lock );
++                                        palette, left_lock, right_lock );
+      if (ret)
+           return ret;
+
diff --git a/package/directfb/0005-use-gcc-link.patch b/package/directfb/0005-use-gcc-link.patch
new file mode 100644 (file)
index 0000000..ec6c0ea
--- /dev/null
@@ -0,0 +1,35 @@
+Add patch to use 'gcc' instead of 'ld' for linking
+
+The patch has been sent upstream but it has not been merged yet
+
+Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
+
+From 176ce06b40897a357fe76a558af517197325f188 Mon Sep 17 00:00:00 2001
+From: Markos Chandras <markos.chandras@imgtec.com>
+Date: Wed, 28 Aug 2013 10:56:32 +0100
+Subject: [PATCH] rules/libobject.make: Use gcc for linking
+
+Invoking 'ld' directly may miss some necessary linker flags which
+are usually passed by gcc. Therefore, use gcc for linking.
+
+Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
+---
+ rules/libobject.make | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/rules/libobject.make b/rules/libobject.make
+index bc670da..2cba658 100644
+--- a/rules/libobject.make
++++ b/rules/libobject.make
+@@ -3,7 +3,7 @@
+       if test -d $<.tmp; then rmdir $<.tmp; fi
+       mkdir $<.tmp
+       (cd $<.tmp && $(AR) x ../../$<)
+-      $(LD) -o $@ -r $<.tmp/*.o
++      $(CC) -nostdlib -o $@ -r $<.tmp/*.o
+       rm -f $<.tmp/*.o && rmdir $<.tmp
+ .PHONY: $(LTLIBRARIES:%.la=.libs/%.a)
+-- 
+1.8.3.2
+
diff --git a/package/directfb/directfb-fix-missing-davinci-voodoo-header.patch b/package/directfb/directfb-fix-missing-davinci-voodoo-header.patch
deleted file mode 100644 (file)
index 6ad4958..0000000
+++ /dev/null
@@ -1,1726 +0,0 @@
-The archive of directfb-1.6.3 is still missing some header files against
-the tagged git tree of directfb. The following files are missing.
-
-gfxdrivers/davinci/davinci_c64x.h
-gfxdrivers/davinci/davincifb.h
-gfxdrivers/davinci/davinci_gfxdriver.h
-tests/voodoo/voodoo_test.h
-
-The headers of course are needed to be able to build every module of
-directfb. The headers are taken from the git tree of directfb
-http://git.directfb.org/?p=core/DirectFB.git;a=commit;h=38b784549bc59bb07c58bb29667cb658695d39a7,
-tag DIRECTFB_1_6_3, SHA1ID 38b784549bc59bb07c58bb29667cb658695d39a7.
-
-Signed-off-by: Carsten Schoenert <c.schoenert@gmail.com>
-
-diff -puNr -Naur directfb-1.6.3-orig/gfxdrivers/davinci/davinci_c64x.h directfb-1.6.3/gfxdrivers/davinci/davinci_c64x.h
---- directfb-1.6.3-orig/gfxdrivers/davinci/davinci_c64x.h      1970-01-01 01:00:00.000000000 +0100
-+++ directfb-1.6.3/gfxdrivers/davinci/davinci_c64x.h   2013-04-07 21:33:25.928530187 +0200
-@@ -0,0 +1,935 @@
-+/*
-+   TI Davinci driver - C64X+ DSP Library
-+
-+   (c) Copyright 2008  directfb.org
-+   (c) Copyright 2007  Telio AG
-+
-+   Written by Denis Oliver Kropp <dok@directfb.org> and
-+              Olaf Dreesen <olaf@directfb.org>.
-+
-+   All rights reserved.
-+
-+   This library is free software; you can redistribute it and/or
-+   modify it under the terms of the GNU General Public License
-+   version 2 as published by the Free Software Foundation.
-+
-+   This library 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 library; if not, write to the
-+   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-+   Boston, MA 02111-1307, USA.
-+*/
-+
-+#ifndef __DAVINCI_C64X_H__
-+#define __DAVINCI_C64X_H__
-+
-+#include <unistd.h>
-+
-+#include <directfb.h>
-+
-+#include <direct/messages.h>
-+#include <direct/trace.h>
-+
-+#include <linux/c64x.h>
-+
-+#define mb() __asm__ __volatile__ ("" : : : "memory")
-+
-+/**********************************************************************************************************************/
-+
-+typedef struct {
-+     int                 magic;
-+
-+     int                 fd;
-+     c64xTaskControl    *ctl;
-+     void               *mem;
-+
-+     c64xTask           *QueueL;
-+} DavinciC64x;
-+
-+typedef struct {
-+     int                 magic;
-+     unsigned int        max_tasks;
-+     unsigned int        num_tasks;
-+     c64xTask           *tasks;
-+} DavinciC64xTasks;
-+
-+typedef enum {
-+     C64X_TEF_NONE       = 0x0000,
-+     C64X_TEF_RESET      = 0x0001
-+} DavinciC64xEmitFlags;
-+
-+/**********************************************************************************************************************/
-+
-+DFBResult davinci_c64x_open    ( DavinciC64x *c64x );
-+
-+DFBResult davinci_c64x_close   ( DavinciC64x *c64x );
-+
-+DFBResult davinci_c64x_wait_low( DavinciC64x *c64x );
-+
-+/**********************************************************************************************************************/
-+
-+DFBResult davinci_c64x_tasks_init   ( DavinciC64xTasks *tasks,
-+                                      unsigned int      size );
-+
-+DFBResult davinci_c64x_tasks_destroy( DavinciC64xTasks *tasks );
-+
-+/**********************************************************************************************************************/
-+
-+DFBResult davinci_c64x_emit_tasks( DavinciC64x          *c64x,
-+                                   DavinciC64xTasks     *tasks,
-+                                   DavinciC64xEmitFlags  flags );
-+
-+/**********************************************************************************************************************/
-+
-+static const char *state_names[] = { "DONE", "ERROR", "TODO", "RUNNING" };
-+
-+static inline c64xTask *
-+c64x_get_task( DavinciC64x *c64x )
-+{
-+     c64xTaskControl *ctl   = c64x->ctl;
-+     uint32_t         idx   = ctl->QL_arm;
-+     uint32_t         next  = (idx + 1) & C64X_QUEUE_MASK;
-+     c64xTask        *task  = &c64x->QueueL[idx];
-+     int              loops = 0;
-+     uint32_t         idle  = 0;
-+
-+     /* Wait for the entry (and next) to be processed by the DSP (rare case). */
-+     while (task->c64x_flags & C64X_FLAG_TODO || ctl->QL_dsp == next) {
-+          if (loops > 666 || (idle && ctl->idlecounter - idle > 666)) {
-+               c64xTask *dsp_task = &c64x->QueueL[ctl->QL_dsp];
-+
-+               D_PERROR( "Davinci/C64X+: Blocked! [DSP %d / %d (%s), ARM %d / %d (%s)]\n",
-+                         ctl->QL_dsp,
-+                         (dsp_task->c64x_function >> 2) & 0x3fff,
-+                         state_names[dsp_task->c64x_function & 3],
-+                         ctl->QL_arm,
-+                         (task->c64x_function >> 2) & 0x3fff,
-+                         state_names[task->c64x_function & 3] );
-+
-+               break;
-+          }
-+
-+          idle = ctl->idlecounter;
-+
-+          /* Queue is full, waiting 10-20ms should not be too bad. */
-+          if (loops++ > 10)
-+               usleep( 5000 );
-+     }
-+
-+     return task;
-+}
-+
-+static inline void
-+c64x_submit_task( DavinciC64x *c64x, c64xTask *task )
-+{
-+     c64xTaskControl *ctl  = c64x->ctl;
-+     uint32_t         idx  = ctl->QL_arm;
-+     uint32_t         next = (idx + 1) & C64X_QUEUE_MASK;
-+
-+     mb();
-+
-+     ctl->QL_arm = next;
-+
-+     mb();
-+}
-+
-+/**********************************************************************************************************************/
-+
-+static inline void
-+davinci_c64x_wb_inv_range( DavinciC64x   *c64x,
-+                           unsigned long  start,
-+                           u32            length,
-+                           u32            func )
-+{
-+     c64xTask *task = c64x_get_task( c64x );
-+
-+     task->c64x_arg[0] = start;
-+     task->c64x_arg[1] = length;
-+     task->c64x_arg[2] = func;
-+
-+     task->c64x_function = C64X_WB_INV_RANGE | C64X_FLAG_TODO;
-+
-+     c64x_submit_task( c64x, task );
-+}
-+
-+static inline void
-+davinci_c64x_write_back_all( DavinciC64x *c64x )
-+{
-+     c64xTask *task = c64x_get_task( c64x );
-+
-+     task->c64x_function = C64X_WRITE_BACK_ALL | C64X_FLAG_TODO;
-+
-+     c64x_submit_task( c64x, task );
-+}
-+
-+/**********************************************************************************************************************/
-+
-+static inline void
-+davinci_c64x_load_block__L( DavinciC64xTasks *tasks,
-+                            unsigned long     words,
-+                            u32               num,
-+                            u32               flags )
-+{
-+     c64xTask *task = &tasks->tasks[tasks->num_tasks];
-+
-+     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
-+
-+     task->c64x_arg[0] = words;
-+     task->c64x_arg[1] = num;
-+     task->c64x_arg[2] = flags;
-+
-+     task->c64x_function = C64X_LOAD_BLOCK | C64X_FLAG_TODO;
-+
-+     tasks->num_tasks++;
-+}
-+
-+static inline void
-+davinci_c64x_load_block( DavinciC64x   *c64x,
-+                         unsigned long  words,
-+                         u32            num,
-+                         u32            flags )
-+{
-+     c64xTask *task = c64x_get_task( c64x );
-+
-+     task->c64x_arg[0] = words;
-+     task->c64x_arg[1] = num;
-+     task->c64x_arg[2] = flags;
-+
-+     task->c64x_function = C64X_LOAD_BLOCK | C64X_FLAG_TODO;
-+
-+     c64x_submit_task( c64x, task );
-+}
-+
-+static inline void
-+davinci_c64x_fetch_uyvy( DavinciC64x   *c64x,
-+                         unsigned long  dest,
-+                         unsigned long  source,
-+                         u32            pitch,
-+                         u32            height,
-+                         u32            flags )
-+{
-+     c64xTask *task = c64x_get_task( c64x );
-+
-+     task->c64x_arg[0] = dest;
-+     task->c64x_arg[1] = source;
-+     task->c64x_arg[2] = pitch;
-+     task->c64x_arg[3] = height;
-+     task->c64x_arg[4] = flags;
-+
-+     task->c64x_function = C64X_FETCH_UYVY | C64X_FLAG_TODO;
-+
-+     c64x_submit_task( c64x, task );
-+}
-+
-+static inline void
-+davinci_c64x_mc( DavinciC64x   *c64x,
-+                 unsigned long  dest,
-+                 u32            dpitch,
-+                 unsigned long  source0,
-+                 unsigned long  source1,
-+                 u32            spitch,
-+                 u32            height,
-+                 int            func )
-+{
-+     c64xTask *task = c64x_get_task( c64x );
-+
-+     task->c64x_arg[0] = dest;
-+     task->c64x_arg[1] = dpitch;
-+     task->c64x_arg[2] = source0;
-+     task->c64x_arg[3] = source1;
-+     task->c64x_arg[4] = spitch;
-+     task->c64x_arg[5] = height;
-+
-+     task->c64x_function = func | C64X_FLAG_TODO;
-+
-+     c64x_submit_task( c64x, task );
-+}
-+
-+static inline void
-+davinci_c64x_put_idct_uyvy_16x16__L( DavinciC64xTasks *tasks,
-+                                     unsigned long     dest,
-+                                     u32               pitch,
-+                                     u32               flags )
-+{
-+     c64xTask *task = &tasks->tasks[tasks->num_tasks];
-+
-+     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
-+
-+     task->c64x_arg[0] = dest;
-+     task->c64x_arg[1] = pitch;
-+     task->c64x_arg[2] = flags;
-+
-+     task->c64x_function = C64X_PUT_IDCT_UYVY_16x16 | C64X_FLAG_TODO;
-+
-+     tasks->num_tasks++;
-+}
-+
-+static inline void
-+davinci_c64x_put_idct_uyvy_16x16( DavinciC64x   *c64x,
-+                                  unsigned long  dest,
-+                                  u32            pitch,
-+                                  u32            flags )
-+{
-+     c64xTask *task = c64x_get_task( c64x );
-+
-+     task->c64x_arg[0] = dest;
-+     task->c64x_arg[1] = pitch;
-+     task->c64x_arg[2] = flags;
-+
-+     task->c64x_function = C64X_PUT_IDCT_UYVY_16x16 | C64X_FLAG_TODO;
-+
-+     c64x_submit_task( c64x, task );
-+}
-+
-+static inline void
-+davinci_c64x_put_mc_uyvy_16x16__L( DavinciC64xTasks *tasks,
-+                                   unsigned long     dest,
-+                                   u32               pitch,
-+                                   u32               flags )
-+{
-+     c64xTask *task = &tasks->tasks[tasks->num_tasks];
-+
-+     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
-+
-+     task->c64x_arg[0] = dest;
-+     task->c64x_arg[1] = pitch;
-+     task->c64x_arg[2] = flags;
-+
-+     task->c64x_function = C64X_PUT_MC_UYVY_16x16 | C64X_FLAG_TODO;
-+
-+     tasks->num_tasks++;
-+}
-+
-+static inline void
-+davinci_c64x_put_mc_uyvy_16x16( DavinciC64x   *c64x,
-+                                unsigned long  dest,
-+                                u32            pitch,
-+                                u32            flags )
-+{
-+     c64xTask *task = c64x_get_task( c64x );
-+
-+     task->c64x_arg[0] = dest;
-+     task->c64x_arg[1] = pitch;
-+     task->c64x_arg[2] = flags;
-+
-+     task->c64x_function = C64X_PUT_MC_UYVY_16x16 | C64X_FLAG_TODO;
-+
-+     c64x_submit_task( c64x, task );
-+}
-+
-+static inline void
-+davinci_c64x_put_sum_uyvy_16x16__L( DavinciC64xTasks *tasks,
-+                                    unsigned long     dest,
-+                                    u32               pitch,
-+                                    u32               flags )
-+{
-+     c64xTask *task = &tasks->tasks[tasks->num_tasks];
-+
-+     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
-+
-+     task->c64x_arg[0] = dest;
-+     task->c64x_arg[1] = pitch;
-+     task->c64x_arg[2] = flags;
-+
-+     task->c64x_function = C64X_PUT_SUM_UYVY_16x16 | C64X_FLAG_TODO;
-+
-+     tasks->num_tasks++;
-+}
-+
-+static inline void
-+davinci_c64x_put_sum_uyvy_16x16( DavinciC64x   *c64x,
-+                                 unsigned long  dest,
-+                                 u32            pitch,
-+                                 u32            flags )
-+{
-+     c64xTask *task = c64x_get_task( c64x );
-+
-+     task->c64x_arg[0] = dest;
-+     task->c64x_arg[1] = pitch;
-+     task->c64x_arg[2] = flags;
-+
-+     task->c64x_function = C64X_PUT_SUM_UYVY_16x16 | C64X_FLAG_TODO;
-+
-+     c64x_submit_task( c64x, task );
-+}
-+
-+static inline void
-+davinci_c64x_dva_begin_frame__L( DavinciC64xTasks *tasks,
-+                                 u32               pitch,
-+                                 unsigned long     current,
-+                                 unsigned long     past,
-+                                 unsigned long     future,
-+                                 u32               flags )
-+{
-+     c64xTask *task = &tasks->tasks[tasks->num_tasks];
-+
-+     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
-+
-+     task->c64x_arg[0] = pitch;
-+     task->c64x_arg[1] = current;
-+     task->c64x_arg[2] = past;
-+     task->c64x_arg[3] = future;
-+     task->c64x_arg[4] = flags;
-+
-+     task->c64x_function = C64X_DVA_BEGIN_FRAME | C64X_FLAG_TODO;
-+
-+     tasks->num_tasks++;
-+}
-+
-+static inline void
-+davinci_c64x_dva_begin_frame( DavinciC64x   *c64x,
-+                              u32            pitch,
-+                              unsigned long  current,
-+                              unsigned long  past,
-+                              unsigned long  future,
-+                              u32            flags )
-+{
-+     c64xTask *task = c64x_get_task( c64x );
-+
-+     task->c64x_arg[0] = pitch;
-+     task->c64x_arg[1] = current;
-+     task->c64x_arg[2] = past;
-+     task->c64x_arg[3] = future;
-+     task->c64x_arg[4] = flags;
-+
-+     task->c64x_function = C64X_DVA_BEGIN_FRAME | C64X_FLAG_TODO;
-+
-+     c64x_submit_task( c64x, task );
-+}
-+
-+static inline void
-+davinci_c64x_dva_motion_block__L( DavinciC64xTasks *tasks,
-+                                  unsigned long     macroblock )
-+{
-+     c64xTask *task = &tasks->tasks[tasks->num_tasks];
-+
-+     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
-+
-+     task->c64x_arg[0] = macroblock;
-+
-+     task->c64x_function = C64X_DVA_MOTION_BLOCK | C64X_FLAG_TODO;
-+
-+     tasks->num_tasks++;
-+}
-+
-+static inline void
-+davinci_c64x_dva_motion_block( DavinciC64x   *c64x,
-+                               unsigned long  macroblock )
-+{
-+     c64xTask *task = c64x_get_task( c64x );
-+
-+     task->c64x_arg[0] = macroblock;
-+
-+     task->c64x_function = C64X_DVA_MOTION_BLOCK | C64X_FLAG_TODO;
-+
-+     c64x_submit_task( c64x, task );
-+}
-+
-+/**********************************************************************************************************************/
-+
-+static inline void
-+davinci_c64x_dva_idct( DavinciC64x   *c64x,
-+                                 unsigned long  dest,
-+                                 u32            pitch,
-+                                 unsigned long  source )
-+{
-+     c64xTask *task = c64x_get_task( c64x );
-+
-+     task->c64x_arg[0] = dest;
-+     task->c64x_arg[1] = pitch;
-+     task->c64x_arg[2] = source;
-+
-+     task->c64x_function = C64X_DVA_IDCT | C64X_FLAG_TODO;
-+
-+     c64x_submit_task( c64x, task );
-+}
-+
-+/**********************************************************************************************************************/
-+
-+static inline void
-+davinci_c64x_put_uyvy_16x16( DavinciC64x   *c64x,
-+                             unsigned long  dest,
-+                             u32            pitch,
-+                             unsigned long  source,
-+                             u32            flags )
-+{
-+     c64xTask *task = c64x_get_task( c64x );
-+
-+     task->c64x_arg[0] = dest;
-+     task->c64x_arg[1] = pitch;
-+     task->c64x_arg[2] = source;
-+     task->c64x_arg[3] = flags;
-+
-+     task->c64x_function = C64X_PUT_UYVY_16x16 | C64X_FLAG_TODO;
-+
-+     c64x_submit_task( c64x, task );
-+}
-+
-+static inline void
-+davinci_c64x_dither_argb__L( DavinciC64xTasks *tasks,
-+                             unsigned long     dst_rgb,
-+                             unsigned long     dst_alpha,
-+                             u32               dst_pitch,
-+                             unsigned long     source,
-+                             u32               src_pitch,
-+                             u32               width,
-+                             u32               height )
-+{
-+     c64xTask *task = &tasks->tasks[tasks->num_tasks];
-+
-+     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
-+
-+     task->c64x_arg[0] = dst_rgb;
-+     task->c64x_arg[1] = dst_alpha;
-+     task->c64x_arg[2] = dst_pitch;
-+     task->c64x_arg[3] = source;
-+     task->c64x_arg[4] = src_pitch;
-+     task->c64x_arg[5] = width;
-+     task->c64x_arg[6] = height;
-+
-+     task->c64x_function = C64X_DITHER_ARGB | C64X_FLAG_TODO;
-+
-+     tasks->num_tasks++;
-+}
-+
-+static inline void
-+davinci_c64x_dither_argb( DavinciC64x   *c64x,
-+                          unsigned long  dst_rgb,
-+                          unsigned long  dst_alpha,
-+                          u32            dst_pitch,
-+                          unsigned long  source,
-+                          u32            src_pitch,
-+                          u32            width,
-+                          u32            height )
-+{
-+     c64xTask *task = c64x_get_task( c64x );
-+
-+     task->c64x_arg[0] = dst_rgb;
-+     task->c64x_arg[1] = dst_alpha;
-+     task->c64x_arg[2] = dst_pitch;
-+     task->c64x_arg[3] = source;
-+     task->c64x_arg[4] = src_pitch;
-+     task->c64x_arg[5] = width;
-+     task->c64x_arg[6] = height;
-+
-+     task->c64x_function = C64X_DITHER_ARGB | C64X_FLAG_TODO;
-+
-+     c64x_submit_task( c64x, task );
-+}
-+
-+static inline void
-+davinci_c64x_fill_16__L( DavinciC64xTasks *tasks,
-+                         unsigned long     dest,
-+                         u32               pitch,
-+                         u32               width,
-+                         u32               height,
-+                         u32               value )
-+{
-+     c64xTask *task = &tasks->tasks[tasks->num_tasks];
-+
-+     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
-+
-+     task->c64x_arg[0] = dest;
-+     task->c64x_arg[1] = pitch;
-+     task->c64x_arg[2] = width;
-+     task->c64x_arg[3] = height;
-+     task->c64x_arg[4] = value;
-+
-+     task->c64x_function = C64X_FILL_16 | C64X_FLAG_TODO;
-+
-+     tasks->num_tasks++;
-+}
-+
-+static inline void
-+davinci_c64x_fill_16( DavinciC64x   *c64x,
-+                      unsigned long  dest,
-+                      u32            pitch,
-+                      u32            width,
-+                      u32            height,
-+                      u32            value )
-+{
-+     c64xTask *task = c64x_get_task( c64x );
-+
-+     task->c64x_arg[0] = dest;
-+     task->c64x_arg[1] = pitch;
-+     task->c64x_arg[2] = width;
-+     task->c64x_arg[3] = height;
-+     task->c64x_arg[4] = value;
-+
-+     task->c64x_function = C64X_FILL_16 | C64X_FLAG_TODO;
-+
-+     c64x_submit_task( c64x, task );
-+}
-+
-+static inline void
-+davinci_c64x_fill_32__L( DavinciC64xTasks *tasks,
-+                         unsigned long     dest,
-+                         u32               pitch,
-+                         u32               width,
-+                         u32               height,
-+                         u32               value )
-+{
-+     c64xTask *task = &tasks->tasks[tasks->num_tasks];
-+
-+     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
-+
-+     task->c64x_arg[0] = dest;
-+     task->c64x_arg[1] = pitch;
-+     task->c64x_arg[2] = width;
-+     task->c64x_arg[3] = height;
-+     task->c64x_arg[4] = value;
-+
-+     task->c64x_function = C64X_FILL_32 | C64X_FLAG_TODO;
-+
-+     tasks->num_tasks++;
-+}
-+
-+static inline void
-+davinci_c64x_fill_32( DavinciC64x   *c64x,
-+                      unsigned long  dest,
-+                      u32            pitch,
-+                      u32            width,
-+                      u32            height,
-+                      u32            value )
-+{
-+     c64xTask *task = c64x_get_task( c64x );
-+
-+     task->c64x_arg[0] = dest;
-+     task->c64x_arg[1] = pitch;
-+     task->c64x_arg[2] = width;
-+     task->c64x_arg[3] = height;
-+     task->c64x_arg[4] = value;
-+
-+     task->c64x_function = C64X_FILL_32 | C64X_FLAG_TODO;
-+
-+     c64x_submit_task( c64x, task );
-+}
-+
-+static inline void
-+davinci_c64x_blit_16__L( DavinciC64xTasks *tasks,
-+                         unsigned long     dest,
-+                         u32               dpitch,
-+                         unsigned long     src,
-+                         u32               spitch,
-+                         u32               width,
-+                         u32               height )
-+{
-+     c64xTask *task = &tasks->tasks[tasks->num_tasks];
-+
-+     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
-+
-+     task->c64x_arg[0] = dest;
-+     task->c64x_arg[1] = dpitch;
-+     task->c64x_arg[2] = src;
-+     task->c64x_arg[3] = spitch;
-+     task->c64x_arg[4] = width;
-+     task->c64x_arg[5] = height;
-+
-+     task->c64x_function = C64X_COPY_16 | C64X_FLAG_TODO;
-+
-+     tasks->num_tasks++;
-+}
-+
-+static inline void
-+davinci_c64x_blit_16( DavinciC64x   *c64x,
-+                      unsigned long  dest,
-+                      u32            dpitch,
-+                      unsigned long  src,
-+                      u32            spitch,
-+                      u32            width,
-+                      u32            height )
-+{
-+     c64xTask *task = c64x_get_task( c64x );
-+
-+     task->c64x_arg[0] = dest;
-+     task->c64x_arg[1] = dpitch;
-+     task->c64x_arg[2] = src;
-+     task->c64x_arg[3] = spitch;
-+     task->c64x_arg[4] = width;
-+     task->c64x_arg[5] = height;
-+
-+     task->c64x_function = C64X_COPY_16 | C64X_FLAG_TODO;
-+
-+     c64x_submit_task( c64x, task );
-+}
-+
-+static inline void
-+davinci_c64x_blit_32__L( DavinciC64xTasks *tasks,
-+                         unsigned long     dest,
-+                         u32               dpitch,
-+                         unsigned long     src,
-+                         u32               spitch,
-+                         u32               width,
-+                         u32               height )
-+{
-+     c64xTask *task = &tasks->tasks[tasks->num_tasks];
-+
-+     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
-+
-+     task->c64x_arg[0] = dest;
-+     task->c64x_arg[1] = dpitch;
-+     task->c64x_arg[2] = src;
-+     task->c64x_arg[3] = spitch;
-+     task->c64x_arg[4] = width;
-+     task->c64x_arg[5] = height;
-+
-+     task->c64x_function = C64X_COPY_32 | C64X_FLAG_TODO;
-+
-+     tasks->num_tasks++;
-+}
-+
-+static inline void
-+davinci_c64x_blit_32( DavinciC64x   *c64x,
-+                      unsigned long  dest,
-+                      u32            dpitch,
-+                      unsigned long  src,
-+                      u32            spitch,
-+                      u32            width,
-+                      u32            height )
-+{
-+     c64xTask *task = c64x_get_task( c64x );
-+
-+     task->c64x_arg[0] = dest;
-+     task->c64x_arg[1] = dpitch;
-+     task->c64x_arg[2] = src;
-+     task->c64x_arg[3] = spitch;
-+     task->c64x_arg[4] = width;
-+     task->c64x_arg[5] = height;
-+
-+     task->c64x_function = C64X_COPY_32 | C64X_FLAG_TODO;
-+
-+     c64x_submit_task( c64x, task );
-+}
-+
-+static inline void
-+davinci_c64x_stretch_32__L( DavinciC64xTasks *tasks,
-+                            unsigned long     dest,
-+                            u32               dpitch,
-+                            unsigned long     src,
-+                            u32               spitch,
-+                            u32               dw,
-+                            u32               dh,
-+                            u32               sw,
-+                            u32               sh,
-+                            const DFBRegion  *clip )
-+{
-+     c64xTask *task = &tasks->tasks[tasks->num_tasks];
-+
-+     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
-+
-+     task->c64x_arg[0] = dest;
-+     task->c64x_arg[1] = src;
-+     task->c64x_arg[2] = dpitch   | (spitch   << 16);
-+     task->c64x_arg[3] = dh       | (dw       << 16);
-+     task->c64x_arg[4] = sh       | (sw       << 16);
-+     task->c64x_arg[5] = clip->x2 | (clip->y2 << 16);
-+     task->c64x_arg[6] = clip->x1 | (clip->y1 << 16);
-+
-+     if (sw > dw && sh > dh)
-+          task->c64x_function = C64X_STRETCH_32_down | C64X_FLAG_TODO;
-+     else
-+          task->c64x_function = C64X_STRETCH_32_up | C64X_FLAG_TODO;
-+
-+     tasks->num_tasks++;
-+}
-+
-+static inline void
-+davinci_c64x_stretch_32( DavinciC64x     *c64x,
-+                         unsigned long    dest,
-+                         u32              dpitch,
-+                         unsigned long    src,
-+                         u32              spitch,
-+                         u32              dw,
-+                         u32              dh,
-+                         u32              sw,
-+                         u32              sh,
-+                         const DFBRegion *clip )
-+{
-+     c64xTask *task = c64x_get_task( c64x );
-+
-+     task->c64x_arg[0] = dest;
-+     task->c64x_arg[1] = src;
-+     task->c64x_arg[2] = dpitch   | (spitch   << 16);
-+     task->c64x_arg[3] = dh       | (dw       << 16);
-+     task->c64x_arg[4] = sh       | (sw       << 16);
-+     task->c64x_arg[5] = clip->x2 | (clip->y2 << 16);
-+     task->c64x_arg[6] = clip->x1 | (clip->y1 << 16);
-+
-+     if (sw > dw && sh > dh)
-+          task->c64x_function = C64X_STRETCH_32_down | C64X_FLAG_TODO;
-+     else
-+          task->c64x_function = C64X_STRETCH_32_up | C64X_FLAG_TODO;
-+
-+     c64x_submit_task( c64x, task );
-+}
-+
-+static inline void
-+davinci_c64x_blit_blend_32__L( DavinciC64xTasks *tasks,
-+                               u32               sub_func,
-+                               unsigned long     dest,
-+                               u32               dpitch,
-+                               unsigned long     src,
-+                               u32               spitch,
-+                               u32               width,
-+                               u32               height,
-+                               u32               argb,
-+                               u8                alpha )
-+{
-+     c64xTask *task = &tasks->tasks[tasks->num_tasks];
-+
-+     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
-+
-+     task->c64x_arg[0] = dest;
-+     task->c64x_arg[1] = dpitch;
-+     task->c64x_arg[2] = src;
-+     task->c64x_arg[3] = spitch;
-+     task->c64x_arg[4] = width | (height << 16);
-+     task->c64x_arg[5] = argb;
-+     task->c64x_arg[6] = alpha;
-+
-+     task->c64x_function = (sub_func << 16) | C64X_BLEND_32 | C64X_FLAG_TODO;
-+
-+     tasks->num_tasks++;
-+}
-+
-+static inline void
-+davinci_c64x_blit_blend_32( DavinciC64x   *c64x,
-+                            u32            sub_func,
-+                            unsigned long  dest,
-+                            u32            dpitch,
-+                            unsigned long  src,
-+                            u32            spitch,
-+                            u32            width,
-+                            u32            height,
-+                            u32            argb,
-+                            u8             alpha )
-+{
-+     c64xTask *task = c64x_get_task( c64x );
-+
-+     task->c64x_arg[0] = dest;
-+     task->c64x_arg[1] = dpitch;
-+     task->c64x_arg[2] = src;
-+     task->c64x_arg[3] = spitch;
-+     task->c64x_arg[4] = width | (height << 16);
-+     task->c64x_arg[5] = argb;
-+     task->c64x_arg[6] = alpha;
-+
-+     task->c64x_function = (sub_func << 16) | C64X_BLEND_32 | C64X_FLAG_TODO;
-+
-+     c64x_submit_task( c64x, task );
-+}
-+
-+static inline void
-+davinci_c64x_blit_keyed_16__L( DavinciC64xTasks *tasks,
-+                               unsigned long     dest,
-+                               u32               dpitch,
-+                               unsigned long     src,
-+                               u32               spitch,
-+                               u32               width,
-+                               u32               height,
-+                               u32               key,
-+                               u32               mask )
-+{
-+     c64xTask *task = &tasks->tasks[tasks->num_tasks];
-+
-+     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
-+
-+     task->c64x_arg[0] = dest;
-+     task->c64x_arg[1] = (dpitch << 16) | (spitch & 0xffff);
-+     task->c64x_arg[2] = src;
-+     task->c64x_arg[3] = width;
-+     task->c64x_arg[4] = height;
-+     task->c64x_arg[5] = key;
-+     task->c64x_arg[6] = mask;
-+
-+     task->c64x_function = C64X_COPY_KEYED_16 | C64X_FLAG_TODO;
-+
-+     tasks->num_tasks++;
-+}
-+
-+static inline void
-+davinci_c64x_blit_keyed_16( DavinciC64x   *c64x,
-+                            unsigned long  dest,
-+                            u32            dpitch,
-+                            unsigned long  src,
-+                            u32            spitch,
-+                            u32            width,
-+                            u32            height,
-+                            u32            key,
-+                            u32            mask )
-+{
-+     c64xTask *task = c64x_get_task( c64x );
-+
-+     task->c64x_arg[0] = dest;
-+     task->c64x_arg[1] = (dpitch << 16) | (spitch & 0xffff);
-+     task->c64x_arg[2] = src;
-+     task->c64x_arg[3] = width;
-+     task->c64x_arg[4] = height;
-+     task->c64x_arg[5] = key;
-+     task->c64x_arg[6] = mask;
-+
-+     task->c64x_function = C64X_COPY_KEYED_16 | C64X_FLAG_TODO;
-+
-+     c64x_submit_task( c64x, task );
-+}
-+
-+static inline void
-+davinci_c64x_blit_keyed_32__L( DavinciC64xTasks *tasks,
-+                               unsigned long     dest,
-+                               u32               dpitch,
-+                               unsigned long     src,
-+                               u32               spitch,
-+                               u32               width,
-+                               u32               height,
-+                               u32               key,
-+                               u32               mask )
-+{
-+     c64xTask *task = &tasks->tasks[tasks->num_tasks];
-+
-+     D_ASSERT( tasks->num_tasks < tasks->max_tasks );
-+
-+     task->c64x_arg[0] = dest;
-+     task->c64x_arg[1] = (dpitch << 16) | (spitch & 0xffff);
-+     task->c64x_arg[2] = src;
-+     task->c64x_arg[3] = width;
-+     task->c64x_arg[4] = height;
-+     task->c64x_arg[5] = key;
-+     task->c64x_arg[6] = mask;
-+
-+     task->c64x_function = C64X_COPY_KEYED_32 | C64X_FLAG_TODO;
-+
-+     tasks->num_tasks++;
-+}
-+
-+static inline void
-+davinci_c64x_blit_keyed_32( DavinciC64x   *c64x,
-+                            unsigned long  dest,
-+                            u32            dpitch,
-+                            unsigned long  src,
-+                            u32            spitch,
-+                            u32            width,
-+                            u32            height,
-+                            u32            key,
-+                            u32            mask )
-+{
-+     c64xTask *task = c64x_get_task( c64x );
-+
-+     task->c64x_arg[0] = dest;
-+     task->c64x_arg[1] = (dpitch << 16) | (spitch & 0xffff);
-+     task->c64x_arg[2] = src;
-+     task->c64x_arg[3] = width;
-+     task->c64x_arg[4] = height;
-+     task->c64x_arg[5] = key;
-+     task->c64x_arg[6] = mask;
-+
-+     task->c64x_function = C64X_COPY_KEYED_32 | C64X_FLAG_TODO;
-+
-+     c64x_submit_task( c64x, task );
-+}
-+
-+#endif
-+
-diff -puNr -Naur directfb-1.6.3-orig/gfxdrivers/davinci/davincifb.h directfb-1.6.3/gfxdrivers/davinci/davincifb.h
---- directfb-1.6.3-orig/gfxdrivers/davinci/davincifb.h 1970-01-01 01:00:00.000000000 +0100
-+++ directfb-1.6.3/gfxdrivers/davinci/davincifb.h      2013-04-07 21:33:21.488622184 +0200
-@@ -0,0 +1,581 @@
-+/* 
-+ * Copyright (C) 2006 Texas Instruments 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 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
-+ *
-+ * File: davincifb.h  
-+ */
-+
-+#ifndef DAVINVI_VPBE_H
-+#define DAVINVI_VPBE_H
-+
-+/* include Linux files */
-+#include <linux/fb.h>
-+
-+/* define the custom FBIO_WAITFORVSYNC ioctl */
-+#define FBIO_WAITFORVSYNC     _IOW('F', 0x20, u_int32_t)
-+#define FBIO_SETATTRIBUTE       _IOW('F', 0x21, struct fb_fillrect)
-+
-+/* Backported IOCTLS. */
-+#define FBIO_SETPOSX                            _IOW('F', 0x22, u_int32_t)
-+#define FBIO_SETPOSY                            _IOW('F', 0x23, u_int32_t)
-+#define FBIO_SETZOOM                          _IOW('F', 0x24, struct zoom_params)
-+#define FBIO_GETSTD                             _IOR('F', 0x25, u_int32_t)
-+#define FBIO_RESIZER                          _IOW('F', 0x26, struct vpfe_resizer_params)
-+#define FBIO_SYNC                             _IOW('F', 0x27, u_int32_t)
-+
-+typedef struct zoom_params {
-+      u_int32_t window_id;
-+      u_int32_t zoom_h;
-+      u_int32_t zoom_v;
-+} zoom_params_t;
-+
-+typedef struct vpfe_resizer_params
-+{
-+      u_int32_t rsz_cnt;      //busy-lock
-+      u_int32_t out_size;     //busy-lock
-+      u_int32_t in_start;     //busy-lock
-+      u_int32_t in_size;      //busy-lock
-+      u_int32_t sdr_inadd;    //shadowed
-+      u_int32_t sdr_inoff;    //shadowed
-+      u_int32_t sdr_outadd;   //shadowed
-+      u_int32_t sdr_outoff;   //shadowed
-+      u_int32_t hfilt[16];    //busy-lock
-+      u_int32_t vfilt[16];    //busy-lock
-+      u_int32_t yenh;         //busy-lock
-+} vpfe_resizer_params_t;
-+
-+typedef struct fb_set_start {
-+      int             offset;         /* offset from smem_start */
-+      unsigned long   physical;       /* absolute physical address when offset < 0 */
-+
-+      u_int64_t       sync;           /* input:  target sync counter for change or 0 for no sync at all,
-+                                         output: sync counter of actual change or 0 if still pending */
-+} fb_set_start_t;
-+
-+
-+#ifdef _IOC_TYPECHECK
-+#undef _IOC_TYPECHECK
-+#define _IOC_TYPECHECK(x)     (sizeof(x))
-+#endif
-+
-+#define       RAM_CLUT_SIZE   256*3
-+#define FBIO_ENABLE_DISABLE_WIN               \
-+      _IOW('F', 0x30, unsigned char)
-+#define FBIO_SET_BITMAP_BLEND_FACTOR  \
-+      _IOW('F', 0x31, vpbe_bitmap_blend_params_t)
-+#define FBIO_SET_BITMAP_WIN_RAM_CLUT    \
-+      _IOW('F', 0x32, unsigned char)*RAM_CLUT_SIZE)
-+#define FBIO_ENABLE_DISABLE_ATTRIBUTE_WIN \
-+      _IOW('F', 0x33, unsigned int)
-+#define FBIO_GET_BLINK_INTERVAL               \
-+      _IOR('F', 0x34, vpbe_blink_option_t)
-+#define FBIO_SET_BLINK_INTERVAL         \
-+      _IOW('F', 0x35, vpbe_blink_option_t)
-+#define FBIO_GET_VIDEO_CONFIG_PARAMS    \
-+      _IOR('F', 0x36, vpbe_video_config_params_t)
-+#define FBIO_SET_VIDEO_CONFIG_PARAMS    \
-+      _IOW('F', 0x37, vpbe_video_config_params_t)
-+#define FBIO_GET_BITMAP_CONFIG_PARAMS   \
-+      _IOR('F', 0x38, vpbe_bitmap_config_params_t)
-+#define FBIO_SET_BITMAP_CONFIG_PARAMS   \
-+      _IOW('F', 0x39, vpbe_bitmap_config_params_t)
-+#define FBIO_SET_DCLK                   \
-+      _IOW('F', 0x40, vpbe_dclk_t)
-+#define FBIO_SET_INTERFACE            \
-+      _IOW('F', 0x41, unsigned char)
-+#define FBIO_GET_INTERFACE            \
-+      _IOR('F', 0x42, unsigned char)
-+#define FBIO_QUERY_TIMING             \
-+      _IOWR('F', 0x43, struct vpbe_mode_info)
-+#define FBIO_SET_TIMING                       \
-+      _IOW('F', 0x44, struct vpbe_fb_videomode)
-+#define FBIO_GET_TIMING                 \
-+      _IOR('F', 0x45, struct vpbe_fb_videomode)
-+#define FBIO_SET_VENC_CLK_SOURCE      \
-+      _IOW('F', 0x46, unsigned char)
-+#define FBIO_SET_BACKG_COLOR            \
-+      _IOW('F', 0x47, vpbe_backg_color_t)
-+#define FBIO_ENABLE_DISPLAY           \
-+      _IOW('F', 0x48, unsigned char)
-+#define FBIO_SETPOS                           \
-+      _IOW('F', 0x49, u_int32_t)
-+#define FBIO_SET_CURSOR               \
-+      _IOW('F', 0x50, struct fb_cursor)
-+#define FBIO_SET_START                \
-+      _IOW('F', 0x66, struct fb_set_start)
-+
-+/* 
-+ * Defines and Constants
-+ */
-+#ifdef __KERNEL__
-+#define DAVINCIFB_DEVICE "davincifb"
-+#define DAVINCIFB_DRIVER "davincifb"
-+
-+#define MULTIPLE_BUFFERING      1
-+
-+#ifdef MULTIPLE_BUFFERING
-+#define DOUBLE_BUF      2
-+#define TRIPLE_BUF      3
-+#else
-+#define DOUBLE_BUF      1
-+#define TRIPLE_BUF      1
-+#endif
-+
-+/* usage:     if (is_win(info->fix.id, OSD0)) ... */
-+#define is_win(name, x) ((strcmp(name, x ## _FBNAME) == 0) ? 1 : 0)
-+
-+/*
-+ * display controller register I/O routines
-+ */
-+u32 dispc_reg_in(u32 offset);
-+u32 dispc_reg_out(u32 offset, u32 val);
-+u32 dispc_reg_merge(u32 offset, u32 val, u32 mask);
-+
-+#endif                                /*__KERNEL__*/
-+
-+/*  Error return codes  */
-+#define VPBE_INVALID_PARA_VALUE         700
-+#define VPBE_WRONG_WINDOW_ID            701
-+#define VPBE_CURRENTLY_IN_REQUIRED_MODE 702
-+#define VPBE_INSUFFICIENT_CLUT_VALUES   703
-+#define VPBE_CLUT_WRITE_TIMEOUT         704
-+#define VPBE_VID0_BUF_ADR_NULL          705
-+#define VPBE_WINDOW_NOT_DISABLED        706
-+#define VPBE_WINDOW_NOT_ENABLED         707
-+
-+#ifndef __KERNEL__
-+/*  Window ID definations */
-+#define OSD0      0
-+#define VID0      1
-+#define OSD1      2
-+#define VID1      3
-+#endif
-+
-+/* There are 4 framebuffers, each represented by an fb_info and
-+ * a dm_win_info structure */
-+#define OSD0_FBNAME "dm_osd0_fb"
-+#define OSD1_FBNAME "dm_osd1_fb"
-+#define VID0_FBNAME "dm_vid0_fb"
-+#define VID1_FBNAME "dm_vid1_fb"
-+
-+/*  FIXME: Digital LCD RGB matrix coefficients */
-+#define DLCD_DGY_VAL    0
-+#define DLCD_DRV_VAL    0
-+#define DLCD_DGU_VAL    0
-+#define DLCD_DBU_VAL          0
-+
-+/* Defines for bitmap format */
-+#define VPBE_BITMAP_BIT_1     1
-+#define VPBE_BITMAP_BIT_2     2
-+#define VPBE_BITMAP_BIT_4     4
-+#define VPBE_BITMAP_BIT_8     8
-+#define VPBE_BITMAP_RGB565    16
-+#define VPBE_VIDEO_YUV422     16
-+#define VPBE_VIDEO_RGB888     24
-+
-+/* Defines foe cursor parameter validation*/
-+#define MAX_CURSOR_WIDTH      0x3FF
-+#define MAX_CURSOR_HEIGHT     0x1FF
-+#define MAX_CURSOR_LINEWIDTH    7
-+
-+#define BASEX         0x80
-+#define BASEY         0x12
-+#define BASEX_DLCD            0x59
-+#define BASEY_DLCD            0x22
-+
-+/*
-+ * Enumerations 
-+ */
-+/*  Enum for blending factor  */
-+typedef enum vpbe_blend_factor {
-+      OSD_CONTRIBUTION_ZERO = 0,
-+      OSD_CONTRIBUTION_1_BY_8 = 1,
-+      OSD_CONTRIBUTION_2_BY_8 = 2,
-+      OSD_CONTRIBUTION_3_BY_8 = 3,
-+      OSD_CONTRIBUTION_4_BY_8 = 4,
-+      OSD_CONTRIBUTION_5_BY_8 = 5,
-+      OSD_CONTRIBUTION_6_BY_8 = 6,
-+      OSD_CONTRIBUTION_ONE = 7
-+} vpbe_blend_factor_t;
-+
-+/*  Enum for Boolean variables  */
-+typedef enum {
-+      SET_0 = 0,
-+      SET_1 = 1
-+} CB_CR_ORDER, ATTRIBUTE, ROM_RAM_CLUT;
-+
-+/*  Defines for Display Interface */
-+#define  PRGB         0
-+#define  COMPOSITE      1
-+#define  SVIDEO       2
-+#define  COMPONENT    3
-+#define  RGB          4
-+#define  YCC16        5
-+#define  YCC8         6
-+#define  SRGB         7
-+#define  EPSON        8
-+#define  CASIO1G      9
-+#define  UDISP        10
-+#define  STN          11
-+#define VPBE_MAX_INTERFACES   12
-+
-+/*  Defines for Display Mode */
-+#define  LCD    0
-+#define  NTSC 1
-+#define  PAL    2
-+#define  P525   3
-+#define  P625   4
-+
-+#define DEFAULT_MODE 0
-+#define  P480   0
-+#define  P400   1
-+#define  P350   2
-+#define NON_EXISTING_MODE 255
-+/*  Enable/Disable enum */
-+typedef enum {
-+      VPBE_DISABLE = 0,
-+      VPBE_ENABLE = 1
-+} ATTENUATION, TRANSPARENCY, EXPANSION, BLINKING;
-+
-+typedef enum clk_source {
-+      CLK_SOURCE_CLK27 = 0,
-+      CLK_SOURCE_CLK54 = 1,
-+      CLK_SOURCE_VPBECLK = 2
-+} CLK_SOURCE;
-+
-+/*
-+ * Structures and Union Definitions
-+ */
-+
-+/*  Structure for transparency and the blending factor for the bitmap window  */
-+typedef struct vpbe_bitmap_blend_params {
-+      unsigned int colorkey;  /* color key to be blend */
-+      unsigned int enable_colorkeying;        /* enable color keying */
-+      unsigned int bf;        /* valid range from 0 to 7 only. */
-+} vpbe_bitmap_blend_params_t;
-+
-+/*  Structure for window expansion  */
-+typedef struct vpbe_win_expansion {
-+      EXPANSION horizontal;
-+      EXPANSION vertical;     /* 1: Enable 0:disable */
-+} vpbe_win_expansion_t;
-+
-+/*  Structure for OSD window blinking options */
-+typedef struct vpbe_blink_option {
-+      BLINKING blinking;      /* 1: Enable blinking 0: Disable */
-+      unsigned int interval;  /* Valid only if blinking is 1 */
-+} vpbe_blink_option_t;
-+
-+/*  Structure for DCLK parameters */
-+typedef struct vpbe_dclk {
-+      unsigned char dclk_pattern_width;
-+      unsigned int dclk_pattern0;
-+      unsigned int dclk_pattern1;
-+      unsigned int dclk_pattern2;
-+      unsigned int dclk_pattern3;
-+} vpbe_dclk_t;
-+
-+/*  Structure for display format  */
-+typedef struct vpbe_display_format {
-+      unsigned char interface;        /* Output interface type */
-+      unsigned char mode;     /* output mode */
-+} vpbe_display_format_t;
-+
-+/*  Structure for background color  */
-+typedef struct vpbe_backg_color {
-+      unsigned char clut_select;      /* 2: RAM CLUT 1:ROM1 CLUT 0:ROM0 CLUT */
-+      unsigned char color_offset;     /* index of color */
-+} vpbe_backg_color_t;
-+
-+/*  Structure for Video window configurable parameters  */
-+typedef struct vpbe_video_config_params {
-+      CB_CR_ORDER cb_cr_order;        /*Cb/Cr order in input data for a pixel. */
-+      /*    0: cb cr  1:  cr cb */
-+      vpbe_win_expansion_t exp_info;  /* HZ/VT Expansion enable disable */
-+} vpbe_video_config_params_t;
-+
-+/*Union of structures giving the CLUT index for the 1, 2, 4 bit bitmap values.*/
-+typedef union vpbe_clut_idx {
-+      struct _for_4bit_bimap {
-+              unsigned char bitmap_val_0;
-+              unsigned char bitmap_val_1;
-+              unsigned char bitmap_val_2;
-+              unsigned char bitmap_val_3;
-+              unsigned char bitmap_val_4;
-+              unsigned char bitmap_val_5;
-+              unsigned char bitmap_val_6;
-+              unsigned char bitmap_val_7;
-+              unsigned char bitmap_val_8;
-+              unsigned char bitmap_val_9;
-+              unsigned char bitmap_val_10;
-+              unsigned char bitmap_val_11;
-+              unsigned char bitmap_val_12;
-+              unsigned char bitmap_val_13;
-+              unsigned char bitmap_val_14;
-+              unsigned char bitmap_val_15;
-+      } for_4bit_bimap;
-+      struct _for_2bit_bimap {
-+              unsigned char bitmap_val_0;
-+              unsigned char dummy0[4];
-+              unsigned char bitmap_val_1;
-+              unsigned char dummy1[4];
-+              unsigned char bitmap_val_2;
-+              unsigned char dummy2[4];
-+              unsigned char bitmap_val_3;
-+      } for_2bit_bimap;
-+      struct _for_1bit_bimap {
-+              unsigned char bitmap_val_0;
-+              unsigned char dummy0[14];
-+              unsigned char bitmap_val_1;
-+      } for_1bit_bimap;
-+} vpbe_clut_idx_t;
-+
-+/*  Structure for bitmap window configurable parameters */
-+typedef struct vpbe_bitmap_config_params {
-+      /* Only for bitmap width = 1,2,4 bits */
-+      vpbe_clut_idx_t clut_idx;
-+      /* Attenuation value for YUV o/p for bitmap window */
-+      unsigned char attenuation_enable;
-+      /* 0: ROM DM270, 1:ROM DM320, 2:RAM CLUT */
-+      unsigned char clut_select;
-+} vpbe_bitmap_config_params_t;
-+
-+/*  Unioun for video/OSD configuration parameters  */
-+typedef union vpbe_conf_params {
-+
-+      struct vpbe_video_params {
-+              CB_CR_ORDER cb_cr_order;
-+              /* HZ/VT Expansion enable disable */
-+              vpbe_win_expansion_t exp_info;
-+      } video_params;
-+
-+      struct vpbe_bitmap_params {
-+              /* Attenuation value for YUV o/p */
-+              ATTENUATION attenuation_enable;
-+              /* 0: ROM DM270, 1: ROM DM320, 2:RAM CLUT */
-+              unsigned char clut_select;
-+              /* Only for bitmap width = 1,2,4 bits */
-+              vpbe_clut_idx_t clut_idx;
-+              /* 0: OSD window is bitmap window */
-+              /* 1: OSD window is attribute window */
-+              ATTRIBUTE enable_attribute;
-+              /* To hold bps value. 
-+                 Used to switch back from attribute to bitmap. */
-+              unsigned int stored_bits_per_pixel;
-+              /* Blending information */
-+              vpbe_bitmap_blend_params_t blend_info;
-+              /* OSD Blinking information */
-+              vpbe_blink_option_t blink_info;
-+      } bitmap_params;
-+
-+} vpbe_conf_params_t;
-+
-+typedef struct vpbe_video_params vpbe_video_params_t;
-+typedef struct vpbe_bitmap_params vpbe_bitmap_params_t;
-+
-+/* Structure to hold window position */
-+typedef struct vpbe_window_position {
-+      unsigned int xpos;      /* X position of the window */
-+      unsigned int ypos;      /* Y position of the window */
-+} vpbe_window_position_t;
-+
-+#ifdef __KERNEL__
-+/*  Structure for each window */
-+typedef struct vpbe_dm_win_info {
-+      struct fb_info info;
-+      vpbe_window_position_t win_pos; /* X,Y position of window */
-+      /* Size of window is already there in var_info structure. */
-+
-+      dma_addr_t fb_base_phys;        /*framebuffer area */
-+      unsigned int fb_base;   /*window memory pointer */
-+      unsigned int fb_size;   /*memory size */
-+      unsigned int pseudo_palette[17];
-+      int alloc_fb_mem;
-+      /*flag to identify if framebuffer area is fixed or not */
-+      unsigned long sdram_address;
-+      struct vpbe_dm_info *dm;
-+      unsigned char window_enable;    /*Additions for all windows */
-+      zoom_params_t zoom;     /*Zooming parameters */
-+      unsigned char field_frame_select;       /*To select Field or frame */
-+      unsigned char numbufs;  /*Number of buffers valid 2 or 3 */
-+      vpbe_conf_params_t conf_params;
-+      /*window configuration parameter union pointer */
-+} vpbe_dm_win_info_t;
-+#endif                                /*__KERNEL__*/
-+
-+/*
-+ *  Videmode structure for display interface and mode settings
-+ */
-+typedef struct vpbe_fb_videomode {
-+      unsigned char name[10]; /* Mode name ( NTSC , PAL) */
-+      unsigned int vmode;     /* FB_MODE_INTERLACED or FB_MODE_NON_INTERLACED */
-+      unsigned int xres;      /* X Resolution of the display */
-+      unsigned int yres;      /* Y Resolution of the display */
-+      unsigned int fps;       /* frames per second */
-+      /* Timing Parameters applicable for std = 0 only */
-+      unsigned int left_margin;
-+      unsigned int right_margin;
-+      unsigned int upper_margin;
-+      unsigned int lower_margin;
-+      unsigned int hsync_len;
-+      unsigned int vsync_len;
-+      unsigned int sync;      /* 0: hsync -ve/vsync -ve */
-+      /*1: hsync -ve/vsync +ve */
-+      /*2: hsync +ve/vsync -ve */
-+      /*3: hsync +ve/vsync +ve */
-+      unsigned int basepx;    /* Display x,y start position */
-+      unsigned int basepy;
-+/*  1= Mode s available in modelist 0=Mode is not available in modelist */
-+      unsigned int std;
-+} vpbe_fb_videomode_t;
-+
-+/* Structure to interface videomode to application*/
-+typedef struct vpbe_mode_info {
-+      vpbe_fb_videomode_t vid_mode;
-+      unsigned char interface;
-+      unsigned char mode_idx;
-+} vpbe_mode_info_t;
-+
-+#ifdef __KERNEL__
-+/* 
-+ * Structure for the driver holding information of windows, 
-+ *  memory base addresses etc.
-+ */
-+typedef struct vpbe_dm_info {
-+      vpbe_dm_win_info_t *osd0;
-+      vpbe_dm_win_info_t *osd1;
-+      vpbe_dm_win_info_t *vid0;
-+      vpbe_dm_win_info_t *vid1;
-+
-+/* to map the registers */
-+      dma_addr_t mmio_base_phys;
-+      unsigned int mmio_base;
-+      unsigned int mmio_size;
-+
-+      wait_queue_head_t vsync_wait;
-+      unsigned int vsync_cnt;
-+      int timeout;
-+
-+      /* this is the function that configures the output device (NTSC/PAL/LCD)
-+       * for the required output format (composite/s-video/component/rgb)
-+       */
-+      void (*output_device_config) (void);
-+
-+      struct device *dev;
-+
-+      vpbe_backg_color_t backg;       /* background color */
-+      vpbe_dclk_t dclk;       /*DCLK parameters */
-+      vpbe_display_format_t display;  /*Display interface and mode */
-+      vpbe_fb_videomode_t videomode;  /*Cuurent videomode */
-+      char ram_clut[256][3];  /*RAM CLUT array */
-+      struct fb_cursor cursor;        /* cursor config params from fb.h */
-+/*Flag that indicates whether any of the display is enabled or not*/
-+      int display_enable;
-+} vpbe_dm_info_t;
-+
-+/*
-+ * Functions Definitions for 'davincifb' module
-+ */
-+int vpbe_mem_alloc_window_buf(vpbe_dm_win_info_t *);
-+int vpbe_mem_release_window_buf(vpbe_dm_win_info_t *);
-+void init_display_function(vpbe_display_format_t *);
-+int vpbe_mem_alloc_struct(vpbe_dm_win_info_t **);
-+void set_vid0_default_conf(void);
-+void set_vid1_default_conf(void);
-+void set_osd0_default_conf(void);
-+void set_osd1_default_conf(void);
-+void set_cursor_default_conf(void);
-+void set_dm_default_conf(void);
-+void set_win_enable(char *, unsigned int);
-+int within_vid0_limits(u32, u32, u32, u32);
-+void vpbe_set_display_default(void);
-+#ifdef __KERNEL__
-+void set_win_position(char *, u32, u32, u32, u32);
-+void change_win_param(int);
-+void set_interlaced(char *, unsigned int);
-+#endif /* __KERNEL__ */
-+
-+/*
-+ *    Function definations for 'osd' module
-+ */
-+
-+int vpbe_enable_window(vpbe_dm_win_info_t *);
-+int vpbe_disable_window(vpbe_dm_win_info_t *);
-+int vpbe_vid_osd_select_field_frame(u8 *, u8);
-+int vpbe_bitmap_set_blend_factor(u8 *, vpbe_bitmap_blend_params_t *);
-+int vpbe_bitmap_set_ram_clut(void);
-+int vpbe_enable_disable_attribute_window(u32);
-+int vpbe_get_blinking(u8 *, vpbe_blink_option_t *);
-+int vpbe_set_blinking(u8 *, vpbe_blink_option_t *);
-+int vpbe_set_vid_params(u8 *, vpbe_video_config_params_t *);
-+int vpbe_get_vid_params(u8 *, vpbe_video_config_params_t *);
-+int vpbe_bitmap_get_params(u8 *, vpbe_bitmap_config_params_t *);
-+int vpbe_bitmap_set_params(u8 *, vpbe_bitmap_config_params_t *);
-+int vpbe_set_cursor_params(struct fb_cursor *);
-+int vpbe_set_vid_expansion(vpbe_win_expansion_t *);
-+int vpbe_set_dclk(vpbe_dclk_t *);
-+int vpbe_set_display_format(vpbe_display_format_t *);
-+int vpbe_set_backg_color(vpbe_backg_color_t *);
-+int vpbe_set_interface(u8);
-+int vpbe_query_mode(vpbe_mode_info_t *);
-+int vpbe_set_mode(struct vpbe_fb_videomode *);
-+int vpbe_set_venc_clk_source(u8);
-+void set_vid0_default_conf(void);
-+void set_osd0_default_conf(void);
-+void set_vid1_default_conf(void);
-+void set_osd1_default_conf(void);
-+void set_cursor_default_conf(void);
-+void set_dm_default_conf(void);
-+/*
-+ * Function definations for 'venc' module
-+ */
-+
-+void davincifb_ntsc_composite_config(void);
-+void davincifb_ntsc_svideo_config(void);
-+void davincifb_ntsc_component_config(void);
-+void davincifb_pal_composite_config(void);
-+void davincifb_pal_svideo_config(void);
-+void davincifb_pal_component_config(void);
-+
-+void vpbe_davincifb_ntsc_rgb_config(void);
-+void vpbe_davincifb_pal_rgb_config(void);
-+void vpbe_davincifb_525p_component_config(void);
-+void vpbe_davincifb_625p_component_config(void);
-+
-+void vpbe_enable_venc(int);
-+void vpbe_enable_dacs(int);
-+/*
-+ * Function definations for 'dlcd' module
-+ */
-+void vpbe_davincifb_480p_prgb_config(void);
-+void vpbe_davincifb_400p_prgb_config(void);
-+void vpbe_davincifb_350p_prgb_config(void);
-+void vpbe_set_display_timing(struct vpbe_fb_videomode *);
-+
-+void vpbe_enable_lcd(int);
-+/*
-+ * Following functions are not implemented
-+ */
-+void vpbe_davincifb_default_ycc16_config(void);
-+void vpbe_davincifb_default_ycc8_config(void);
-+void vpbe_davincifb_default_srgb_config(void);
-+void vpbe_davincifb_default_epson_config(void);
-+void vpbe_davincifb_default_casio_config(void);
-+void vpbe_davincifb_default_UDISP_config(void);
-+void vpbe_davincifb_default_STN_config(void);
-+#endif                                /*__KERNEL__*/
-+
-+#endif                                /* End of #ifndef DAVINCI_VPBE_H */
-diff -puNr -Naur directfb-1.6.3-orig/gfxdrivers/davinci/davinci_gfxdriver.h directfb-1.6.3/gfxdrivers/davinci/davinci_gfxdriver.h
---- directfb-1.6.3-orig/gfxdrivers/davinci/davinci_gfxdriver.h 1970-01-01 01:00:00.000000000 +0100
-+++ directfb-1.6.3/gfxdrivers/davinci/davinci_gfxdriver.h      2013-04-07 21:33:19.560662133 +0200
-@@ -0,0 +1,169 @@
-+/*
-+   TI Davinci driver - Graphics Driver
-+
-+   (c) Copyright 2007  Telio AG
-+
-+   Written by Denis Oliver Kropp <dok@directfb.org>
-+
-+   Code is derived from VMWare driver.
-+
-+   (c) Copyright 2001-2009  The world wide DirectFB Open Source Community (directfb.org)
-+   (c) Copyright 2000-2004  Convergence (integrated media) GmbH
-+
-+   All rights reserved.
-+
-+   This library is free software; you can redistribute it and/or
-+   modify it under the terms of the GNU Lesser General Public
-+   License as published by the Free Software Foundation; either
-+   version 2 of the License, or (at your option) any later version.
-+
-+   This library 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
-+   Lesser General Public License for more details.
-+
-+   You should have received a copy of the GNU Lesser General Public
-+   License along with this library; if not, write to the
-+   Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-+   Boston, MA 02111-1307, USA.
-+*/
-+
-+#ifndef __DAVINCI_GFXDRIVER_H__
-+#define __DAVINCI_GFXDRIVER_H__
-+
-+#include <sys/ioctl.h>
-+#include <davincifb.h>
-+
-+#include <core/surface_buffer.h>
-+
-+#include "davincifb.h"
-+
-+#include "davinci_c64x.h"
-+
-+
-+typedef struct {
-+     /* validation flags */
-+     int                       v_flags;
-+
-+     /* cached/computed values */
-+     void                     *dst_addr;
-+     unsigned long             dst_phys;
-+     unsigned int              dst_size;
-+     unsigned long             dst_pitch;
-+     DFBSurfacePixelFormat     dst_format;
-+     unsigned long             dst_bpp;
-+
-+     void                     *src_addr;
-+     unsigned long             src_phys;
-+     unsigned long             src_pitch;
-+     DFBSurfacePixelFormat     src_format;
-+     unsigned long             src_bpp;
-+
-+     unsigned long             source_mult;
-+
-+     unsigned long             fillcolor;
-+
-+     int                       blit_blend_sub_function;
-+     int                       draw_blend_sub_function;
-+
-+     DFBColor                  color;
-+     unsigned long             color_argb;
-+     unsigned long             colorkey;
-+
-+     DFBSurfaceBlittingFlags   blitting_flags;
-+
-+     DFBRegion                 clip;
-+
-+     /** Add shared data here... **/
-+     struct fb_fix_screeninfo  fix[4];
-+
-+     CoreSurfacePool          *osd_pool;
-+     CoreSurfacePool          *video_pool;
-+
-+     bool                      synced;
-+} DavinciDeviceData;
-+
-+
-+typedef struct {
-+     int                       num;
-+     int                       fd;
-+     void                     *mem;
-+     int                       size;
-+} DavinciFB;
-+
-+typedef struct {
-+     DavinciDeviceData        *ddev;
-+
-+     CoreDFB                  *core;
-+
-+     CoreScreen               *screen;
-+     CoreLayer                *osd;
-+     CoreLayer                *video;
-+
-+     DavinciFB                 fb[4];
-+
-+     DavinciC64x               c64x;
-+     bool                      c64x_present;
-+
-+     DavinciC64xTasks          tasks;
-+} DavinciDriverData;
-+
-+
-+static inline DFBResult
-+davincifb_pan_display( const DavinciFB             *fb,
-+                       struct fb_var_screeninfo    *var,
-+                       const CoreSurfaceBufferLock *lock,
-+                       DFBSurfaceFlipFlags          flags,
-+                       int                          x,
-+                       int                          y )
-+{
-+     int ret;
-+
-+     if (lock) {
-+#ifdef FBIO_SET_START
-+          CoreSurfaceBuffer   *buffer = lock->buffer;
-+          struct fb_set_start  set_start;
-+
-+          /* physical mode */
-+          set_start.offset   = -1;
-+          set_start.sync     = (flags & DSFLIP_ONSYNC) ? 1 : 0;
-+
-+          /* life's so easy */
-+          set_start.physical = lock->phys + DFB_BYTES_PER_LINE( buffer->format, x ) + y * lock->pitch;
-+
-+          ret = ioctl( fb->fd, FBIO_SET_START, &set_start );
-+          if (ret < 0)
-+               D_DEBUG( "FBIO_SET_START (0x%08lx, sync %llu) failed!\n",
-+                         set_start.physical, set_start.sync );
-+
-+          if (ret == 0) {
-+               if (flags & DSFLIP_WAIT)
-+                    ioctl( fb->fd, FBIO_WAITFORVSYNC );
-+
-+               return DFB_OK;
-+          }
-+
-+          /* fallback */
-+#endif
-+          var->xoffset = x;                  /* poor version */
-+          var->yoffset = y + lock->offset / lock->pitch;
-+     }
-+     else {
-+          var->xoffset = x;
-+          var->yoffset = y;
-+     }
-+
-+     var->activate = /*(flags & DSFLIP_ONSYNC) ? FB_ACTIVATE_VBL :*/ FB_ACTIVATE_NOW;
-+
-+     ret = ioctl( fb->fd, FBIOPAN_DISPLAY, var );
-+     if (ret)
-+          D_PERROR( "Davinci/FB: FBIOPAN_DISPLAY (fb%d - %d,%d) failed!\n",
-+                    fb->num, var->xoffset, var->yoffset );
-+
-+     if (flags & DSFLIP_WAIT)
-+          ioctl( fb->fd, FBIO_WAITFORVSYNC );
-+
-+     return DFB_OK;
-+}
-+
-+#endif
-diff -puNr -Naur directfb-1.6.3-orig/tests/voodoo/voodoo_test.h directfb-1.6.3/tests/voodoo/voodoo_test.h
---- directfb-1.6.3-orig/tests/voodoo/voodoo_test.h     1970-01-01 01:00:00.000000000 +0100
-+++ directfb-1.6.3/tests/voodoo/voodoo_test.h  2013-04-07 21:33:31.824408024 +0200
-@@ -0,0 +1,10 @@
-+#ifndef __VOODOO_TEST_H__
-+#define __VOODOO_TEST_H__
-+
-+typedef enum {
-+     VOODOO_TEST_INCREASE,
-+     VOODOO_TEST_QUERY
-+} VoodooTestCall;
-+
-+#endif
-+
diff --git a/package/directfb/directfb-imlib2-config.patch b/package/directfb/directfb-imlib2-config.patch
deleted file mode 100644 (file)
index 1203475..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-Call the imlib2-conf variable that are set by ac_cv_path_IMLIB2_CONFIG
-with the absolute path because the imlib2-config file is not covered
-by the PATH variable.
-This is important for cross compiler that need to get the staging settings
-instead of the host settings.
-
-Signed-off-by: Carsten Schoenert <c.schoenert@gmail.com>
-
---- directfb-1.6.3/configure.orig      2013-03-31 13:18:22.837560379 +0200
-+++ directfb-1.6.3/configure   2013-03-31 13:23:40.177541099 +0200
-@@ -19816,8 +19816,8 @@ fi
- $as_echo "$as_me: WARNING: *** Imlib2 library not found, building without Imlib2 support ***" >&2;}
-     imlib2="no"
-   else
--    IMLIB2_CFLAGS=`imlib2-config --cflags`
--    IMLIB2_LIBS=`imlib2-config --libs`
-+    IMLIB2_CFLAGS=`$IMLIB2_CONFIG --cflags`
-+    IMLIB2_LIBS=`$IMLIB2_CONFIG --libs`
-     imlib2="yes"
-   fi
- fi
diff --git a/package/directfb/directfb-remove-redefinition-of-__typeof__.patch b/package/directfb/directfb-remove-redefinition-of-__typeof__.patch
deleted file mode 100644 (file)
index e3861af..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-Remove definition to fix qt5 build.
-
-Fetch from: http://git.directfb.org/?p=core/DirectFB.git;a=patch;h=203f78a4193a8ff110dec3c860e0928af1a0a72f
-
-From 203f78a4193a8ff110dec3c860e0928af1a0a72f Mon Sep 17 00:00:00 2001
-From: Denis Oliver Kropp <dok@directfb.org>
-Date: Wed, 31 Jul 2013 21:56:05 +0200
-Subject: [PATCH] libdirect: Remove redefinition of __typeof__!!!
-
----
- lib/direct/os/linux/glibc/types.h |    1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/lib/direct/os/linux/glibc/types.h b/lib/direct/os/linux/glibc/types.h
-index 08e94b2..80cb350 100644
---- a/lib/direct/os/linux/glibc/types.h
-+++ b/lib/direct/os/linux/glibc/types.h
-@@ -81,7 +81,6 @@ typedef int64_t s64;
- #define __dfb_no_instrument_function__  __attribute__((no_instrument_function))
- #define __constructor__                 __attribute__((constructor))
- #define __destructor__                  __attribute__((destructor))
--#define __typeof__(x)                   __typeof__(x)
- #ifndef __func__
- #define __func__                        __FUNCTION__
--- 
-1.7.9.5
-
diff --git a/package/directfb/directfb-setregion-lock.patch b/package/directfb/directfb-setregion-lock.patch
deleted file mode 100644 (file)
index 8a246ea..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-This patch fixes builderrors while using '--with-gfxdrivers' and
-'--with-inputdrivers' with the current DirectFB version 1.6.3.
-
-Patch is taken from
-http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/dev-libs/DirectFB/files/DirectFB-1.6.3-setregion.patch
-
-Signed-off-by: Carsten Schoenert <c.schoenert@gmail.com>
-
---- directfb-1.6.3/gfxdrivers/cyber5k/cyber5k.c
-+++ directfb-1.6.3/gfxdrivers/cyber5k/cyber5k.c
-@@ -636,7 +636,8 @@ osdSetRegion( CoreLayer
-               CoreLayerRegionConfigFlags  updated,
-               CoreSurface                *surface,
-               CorePalette                *palette,
--              CoreSurfaceBufferLock      *lock )
-+              CoreSurfaceBufferLock      *left_lock,
-+              CoreSurfaceBufferLock      *right_lock )
- {
-      DFBResult ret;
-@@ -644,7 +645,7 @@ osdSetRegion( CoreLayer
-      ret = oldPrimaryFuncs.SetRegion( layer, oldPrimaryDriverData,
-                                       layer_data, region_data,
-                                       config, updated, surface,
--                                      palette, lock );
-+                                      palette, left_lock, right_lock );
-      if (ret)
-           return ret;
---- directfb-1.6.3/gfxdrivers/radeon/radeon_crtc1.c
-+++ directfb-1.6.3/gfxdrivers/radeon/radeon_crtc1.c
-@@ -147,14 +147,15 @@ crtc1SetRegion( CoreLayer
-                 CoreLayerRegionConfigFlags  updated,
-                 CoreSurface                *surface,
-                 CorePalette                *palette,
--                CoreSurfaceBufferLock      *lock )
-+                CoreSurfaceBufferLock      *left_lock,
-+                CoreSurfaceBufferLock      *right_lock )
- {
-      
-      if (updated & ~CLRCF_OPTIONS) {
-           return OldPrimaryLayerFuncs.SetRegion( layer,
-                                                  OldPrimaryLayerDriverData,
-                                                  layer_data, region_data,
--                                                 config, updated, surface, palette, lock );
-+                                                 config, updated, surface, palette, left_lock, right_lock );
-      }
-      return DFB_OK;
---- directfb-1.6.3/gfxdrivers/cle266/uc_primary.c
-+++ directfb-1.6.3/gfxdrivers/cle266/uc_primary.c
-@@ -138,7 +138,8 @@ osdSetRegion( CoreLayer
-               CoreLayerRegionConfigFlags  updated,
-               CoreSurface                *surface,
-               CorePalette                *palette,
--              CoreSurfaceBufferLock      *lock )
-+              CoreSurfaceBufferLock      *left_lock,
-+              CoreSurfaceBufferLock      *right_lock )
- {
-      DFBResult     ret;
-      UcDriverData *ucdrv = (UcDriverData*) driver_data;
-@@ -147,7 +148,7 @@ osdSetRegion( CoreLayer
-      ret = ucOldPrimaryFuncs.SetRegion( layer, ucOldPrimaryDriverData,
-                                         layer_data, region_data,
-                                         config, updated, surface,
--                                        palette, lock );
-+                                        palette, left_lock, right_lock );
-      if (ret)
-           return ret;
---- directfb-1.6.3/gfxdrivers/unichrome/uc_primary.c
-+++ directfb-1.6.3/gfxdrivers/unichrome/uc_primary.c
-@@ -135,7 +135,8 @@ osdSetRegion( CoreLayer
-               CoreLayerRegionConfigFlags  updated,
-               CoreSurface                *surface,
-               CorePalette                *palette,
--              CoreSurfaceBufferLock      *lock )
-+              CoreSurfaceBufferLock      *left_lock,
-+              CoreSurfaceBufferLock      *right_lock )
- {
-      DFBResult     ret;
-      UcDriverData *ucdrv = (UcDriverData*) driver_data;
-@@ -144,7 +145,7 @@ osdSetRegion( CoreLayer
-      ret = ucOldPrimaryFuncs.SetRegion( layer, ucOldPrimaryDriverData,
-                                         layer_data, region_data,
-                                         config, updated, surface,
--                                        palette, lock );
-+                                        palette, left_lock, right_lock );
-      if (ret)
-           return ret;
-
diff --git a/package/directfb/directfb-use-gcc-link.patch b/package/directfb/directfb-use-gcc-link.patch
deleted file mode 100644 (file)
index ec6c0ea..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-Add patch to use 'gcc' instead of 'ld' for linking
-
-The patch has been sent upstream but it has not been merged yet
-
-Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
-
-From 176ce06b40897a357fe76a558af517197325f188 Mon Sep 17 00:00:00 2001
-From: Markos Chandras <markos.chandras@imgtec.com>
-Date: Wed, 28 Aug 2013 10:56:32 +0100
-Subject: [PATCH] rules/libobject.make: Use gcc for linking
-
-Invoking 'ld' directly may miss some necessary linker flags which
-are usually passed by gcc. Therefore, use gcc for linking.
-
-Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
----
- rules/libobject.make | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/rules/libobject.make b/rules/libobject.make
-index bc670da..2cba658 100644
---- a/rules/libobject.make
-+++ b/rules/libobject.make
-@@ -3,7 +3,7 @@
-       if test -d $<.tmp; then rmdir $<.tmp; fi
-       mkdir $<.tmp
-       (cd $<.tmp && $(AR) x ../../$<)
--      $(LD) -o $@ -r $<.tmp/*.o
-+      $(CC) -nostdlib -o $@ -r $<.tmp/*.o
-       rm -f $<.tmp/*.o && rmdir $<.tmp
- .PHONY: $(LTLIBRARIES:%.la=.libs/%.a)
--- 
-1.8.3.2
-
diff --git a/package/dmidecode/0001-build-system-fixes.patch b/package/dmidecode/0001-build-system-fixes.patch
new file mode 100644 (file)
index 0000000..275f9df
--- /dev/null
@@ -0,0 +1,35 @@
+Minor build system fixes
+
+Usual build system fixes to allow CC/CFLAGS/LDFLAGS to be overriden
+from the command line, and completed by additional flags from the
+Makefile.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/Makefile
+===================================================================
+--- a/Makefile
++++ b/Makefile
+@@ -12,9 +12,10 @@
+ #   (at your option) any later version.
+ #
+-CC      = gcc
+-CFLAGS  = -W -Wall -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-qual \
+-          -Wcast-align -Wwrite-strings -Wmissing-prototypes -Winline -Wundef
++CC      ?= gcc
++override CFLAGS  += \
++      -W -Wall -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-qual \
++        -Wcast-align -Wwrite-strings -Wmissing-prototypes -Winline -Wundef
+ #CFLAGS += -DBIGENDIAN
+ #CFLAGS += -DALIGNMENT_WORKAROUND
+@@ -23,7 +24,7 @@
+ #CFLAGS += -g
+ # Pass linker flags here
+-LDFLAGS =
++override LDFLAGS +=
+ DESTDIR =
+ prefix  = /usr/local
diff --git a/package/dmidecode/dmidecode-build-system-fixes.patch b/package/dmidecode/dmidecode-build-system-fixes.patch
deleted file mode 100644 (file)
index 275f9df..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-Minor build system fixes
-
-Usual build system fixes to allow CC/CFLAGS/LDFLAGS to be overriden
-from the command line, and completed by additional flags from the
-Makefile.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/Makefile
-===================================================================
---- a/Makefile
-+++ b/Makefile
-@@ -12,9 +12,10 @@
- #   (at your option) any later version.
- #
--CC      = gcc
--CFLAGS  = -W -Wall -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-qual \
--          -Wcast-align -Wwrite-strings -Wmissing-prototypes -Winline -Wundef
-+CC      ?= gcc
-+override CFLAGS  += \
-+      -W -Wall -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-qual \
-+        -Wcast-align -Wwrite-strings -Wmissing-prototypes -Winline -Wundef
- #CFLAGS += -DBIGENDIAN
- #CFLAGS += -DALIGNMENT_WORKAROUND
-@@ -23,7 +24,7 @@
- #CFLAGS += -g
- # Pass linker flags here
--LDFLAGS =
-+override LDFLAGS +=
- DESTDIR =
- prefix  = /usr/local
diff --git a/package/dropwatch/0001-build.patch b/package/dropwatch/0001-build.patch
new file mode 100644 (file)
index 0000000..eed43e8
--- /dev/null
@@ -0,0 +1,27 @@
+From 03bab84ca3f102274837e83ee6da4c997a9da018 Mon Sep 17 00:00:00 2001
+From: Tzu-Jung Lee <tjlee@ambarella.com>
+Date: Fri, 12 Jul 2013 20:00:57 +0800
+Subject: [PATCH] build: modify hardcoded gcc to support buildroot
+
+Signed-off-by: Tzu-Jung Lee <tjlee@ambarella.com>
+
+diff --git a/src/Makefile b/src/Makefile
+index 026b6ba..b87ae9f 100644
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -5,10 +5,10 @@ OBJFILES := main.o lookup.o\
+        lookup_bfd.o lookup_kas.o
+ dropwatch: $(OBJFILES) 
+-      gcc -g -o dropwatch $(OBJFILES) $(LDFLAGS) 
++      $(CC) -g -o dropwatch $(OBJFILES) $(LDFLAGS)
+ %.o: %.c
+-      gcc $(CFLAGS) $<
++      $(CC) $(CFLAGS) $<
+ clean:
+       rm -f dropwatch *.o
+-- 
+1.8.3.2
+
diff --git a/package/dropwatch/0002-binutils-2.23.1.patch b/package/dropwatch/0002-binutils-2.23.1.patch
new file mode 100644 (file)
index 0000000..4d43356
--- /dev/null
@@ -0,0 +1,74 @@
+libbfd from binutils 2.23.1+ requires PACKAGE* definitions from autoconf.
+Patch from https://fedorahosted.org/dropwatch/ticket/5
+Upstream status: new.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -aurd src.orig/lookup.c src/lookup.c
+--- a/src/lookup.c     2011-10-03 22:51:38.000000000 +0400
++++ b/src/lookup.c     2013-02-18 09:13:56.683214438 +0400
+@@ -27,13 +27,13 @@
+ #include <stdlib.h>
+ #include <stdio.h>
+ #include <sys/utsname.h>
+-#include <bfd.h>
+ #include <string.h>
+ #include <unistd.h>
+ #include <sys/types.h>
+ #include <sys/stat.h>
+
+ #include "lookup.h"
++#include <bfd.h>
+
+ extern struct lookup_methods bfd_methods;
+ extern struct lookup_methods kallsym_methods;
+diff -aurd src.orig/lookup.h src/lookup.h
+--- a/src/lookup.h     2011-10-03 22:51:38.000000000 +0400
++++ b/src/lookup.h     2013-02-18 09:11:00.506895026 +0400
+@@ -28,6 +28,9 @@
+ #include <stdlib.h>
+ #include <asm/types.h>
+
++// satisfy PR 14072 in bfd.h
++#define PACKAGE 1
++#define PACKAGE_VERSION 1
+
+ /*
+  * Initalization routine
+diff -aurd src.orig/lookup_bfd.c src/lookup_bfd.c
+--- a/src/lookup_bfd.c 2012-01-16 22:34:11.000000000 +0400
++++ b/src/lookup_bfd.c 2013-02-18 09:14:02.472984310 +0400
+@@ -25,13 +25,13 @@
+ #include <stdlib.h>
+ #include <stdio.h>
+ #include <sys/utsname.h>
+-#include <bfd.h>
+ #include <string.h>
+ #include <unistd.h>
+ #include <sys/types.h>
+ #include <sys/stat.h>
+
+ #include "lookup.h"
++#include <bfd.h>
+
+
+ static int lookup_bfd_init(void)
+diff -aurd src.orig/lookup_kas.c src/lookup_kas.c
+--- a/src/lookup_kas.c 2012-05-31 02:43:23.000000000 +0400
++++ b/src/lookup_kas.c 2013-02-18 09:14:07.906101713 +0400
+@@ -25,7 +25,6 @@
+ #include <stdlib.h>
+ #include <stdio.h>
+ #include <sys/utsname.h>
+-#include <bfd.h>
+ #include <string.h>
+ #include <unistd.h>
+ #include <sys/types.h>
+@@ -33,6 +32,7 @@
+ #include <sys/queue.h>
+
+ #include "lookup.h"
++#include <bfd.h>
+
+ struct symbol_entry {
+       char *sym_name;
diff --git a/package/dropwatch/0003-remove-werror.patch b/package/dropwatch/0003-remove-werror.patch
new file mode 100644 (file)
index 0000000..97b26b7
--- /dev/null
@@ -0,0 +1,18 @@
+-Werror shouldn't be used in released code since it can
+cause random build failures on moderate warnings. It also
+depends on the used toolchain since different toolchains may
+or may not print the same warnings.
+
+Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
+
+Index: dropwatch-1.4/src/Makefile
+===================================================================
+--- dropwatch-1.4.orig/src/Makefile
++++ dropwatch-1.4/src/Makefile
+@@ -1,5 +1,5 @@
+ all: dropwatch
+-CFLAGS+=-c -g -D_GNU_SOURCE -Wall -Werror `pkg-config --cflags libnl-3.0`
++CFLAGS+=-c -g -D_GNU_SOURCE -Wall `pkg-config --cflags libnl-3.0`
+ LDFLAGS=-lbfd -lreadline -lnl-3 -lnl-genl-3
+ OBJFILES := main.o lookup.o\
+        lookup_bfd.o lookup_kas.o
diff --git a/package/dropwatch/dropwatch-01-build.patch b/package/dropwatch/dropwatch-01-build.patch
deleted file mode 100644 (file)
index eed43e8..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-From 03bab84ca3f102274837e83ee6da4c997a9da018 Mon Sep 17 00:00:00 2001
-From: Tzu-Jung Lee <tjlee@ambarella.com>
-Date: Fri, 12 Jul 2013 20:00:57 +0800
-Subject: [PATCH] build: modify hardcoded gcc to support buildroot
-
-Signed-off-by: Tzu-Jung Lee <tjlee@ambarella.com>
-
-diff --git a/src/Makefile b/src/Makefile
-index 026b6ba..b87ae9f 100644
---- a/src/Makefile
-+++ b/src/Makefile
-@@ -5,10 +5,10 @@ OBJFILES := main.o lookup.o\
-        lookup_bfd.o lookup_kas.o
- dropwatch: $(OBJFILES) 
--      gcc -g -o dropwatch $(OBJFILES) $(LDFLAGS) 
-+      $(CC) -g -o dropwatch $(OBJFILES) $(LDFLAGS)
- %.o: %.c
--      gcc $(CFLAGS) $<
-+      $(CC) $(CFLAGS) $<
- clean:
-       rm -f dropwatch *.o
--- 
-1.8.3.2
-
diff --git a/package/dropwatch/dropwatch-02-binutils-2.23.1.patch b/package/dropwatch/dropwatch-02-binutils-2.23.1.patch
deleted file mode 100644 (file)
index 4d43356..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-libbfd from binutils 2.23.1+ requires PACKAGE* definitions from autoconf.
-Patch from https://fedorahosted.org/dropwatch/ticket/5
-Upstream status: new.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -aurd src.orig/lookup.c src/lookup.c
---- a/src/lookup.c     2011-10-03 22:51:38.000000000 +0400
-+++ b/src/lookup.c     2013-02-18 09:13:56.683214438 +0400
-@@ -27,13 +27,13 @@
- #include <stdlib.h>
- #include <stdio.h>
- #include <sys/utsname.h>
--#include <bfd.h>
- #include <string.h>
- #include <unistd.h>
- #include <sys/types.h>
- #include <sys/stat.h>
-
- #include "lookup.h"
-+#include <bfd.h>
-
- extern struct lookup_methods bfd_methods;
- extern struct lookup_methods kallsym_methods;
-diff -aurd src.orig/lookup.h src/lookup.h
---- a/src/lookup.h     2011-10-03 22:51:38.000000000 +0400
-+++ b/src/lookup.h     2013-02-18 09:11:00.506895026 +0400
-@@ -28,6 +28,9 @@
- #include <stdlib.h>
- #include <asm/types.h>
-
-+// satisfy PR 14072 in bfd.h
-+#define PACKAGE 1
-+#define PACKAGE_VERSION 1
-
- /*
-  * Initalization routine
-diff -aurd src.orig/lookup_bfd.c src/lookup_bfd.c
---- a/src/lookup_bfd.c 2012-01-16 22:34:11.000000000 +0400
-+++ b/src/lookup_bfd.c 2013-02-18 09:14:02.472984310 +0400
-@@ -25,13 +25,13 @@
- #include <stdlib.h>
- #include <stdio.h>
- #include <sys/utsname.h>
--#include <bfd.h>
- #include <string.h>
- #include <unistd.h>
- #include <sys/types.h>
- #include <sys/stat.h>
-
- #include "lookup.h"
-+#include <bfd.h>
-
-
- static int lookup_bfd_init(void)
-diff -aurd src.orig/lookup_kas.c src/lookup_kas.c
---- a/src/lookup_kas.c 2012-05-31 02:43:23.000000000 +0400
-+++ b/src/lookup_kas.c 2013-02-18 09:14:07.906101713 +0400
-@@ -25,7 +25,6 @@
- #include <stdlib.h>
- #include <stdio.h>
- #include <sys/utsname.h>
--#include <bfd.h>
- #include <string.h>
- #include <unistd.h>
- #include <sys/types.h>
-@@ -33,6 +32,7 @@
- #include <sys/queue.h>
-
- #include "lookup.h"
-+#include <bfd.h>
-
- struct symbol_entry {
-       char *sym_name;
diff --git a/package/dropwatch/dropwatch-03-remove-werror.patch b/package/dropwatch/dropwatch-03-remove-werror.patch
deleted file mode 100644 (file)
index 97b26b7..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
--Werror shouldn't be used in released code since it can
-cause random build failures on moderate warnings. It also
-depends on the used toolchain since different toolchains may
-or may not print the same warnings.
-
-Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
-
-Index: dropwatch-1.4/src/Makefile
-===================================================================
---- dropwatch-1.4.orig/src/Makefile
-+++ dropwatch-1.4/src/Makefile
-@@ -1,5 +1,5 @@
- all: dropwatch
--CFLAGS+=-c -g -D_GNU_SOURCE -Wall -Werror `pkg-config --cflags libnl-3.0`
-+CFLAGS+=-c -g -D_GNU_SOURCE -Wall `pkg-config --cflags libnl-3.0`
- LDFLAGS=-lbfd -lreadline -lnl-3 -lnl-genl-3
- OBJFILES := main.o lookup.o\
-        lookup_bfd.o lookup_kas.o
diff --git a/package/e2fsprogs/0001-sem-init-libs.patch b/package/e2fsprogs/0001-sem-init-libs.patch
new file mode 100644 (file)
index 0000000..56f1cc2
--- /dev/null
@@ -0,0 +1,11 @@
+--- e2fsprogs-1.41.9/MCONFIG.in.orig   2009-10-07 20:25:07.000000000 +0800
++++ e2fsprogs-1.41.9/MCONFIG.in        2009-10-07 20:21:41.000000000 +0800
+@@ -85,7 +85,7 @@
+ #
+ LIB = $(top_builddir)/lib
+ LIBSS = $(LIB)/libss@LIB_EXT@ @PRIVATE_LIBS_CMT@ @DLOPEN_LIB@
+-LIBCOM_ERR = $(LIB)/libcom_err@LIB_EXT@ @PRIVATE_LIBS_CMT@ @SEM_INIT_LIB@
++LIBCOM_ERR = $(LIB)/libcom_err@LIB_EXT@ @SEM_INIT_LIB@
+ LIBE2P = $(LIB)/libe2p@LIB_EXT@
+ LIBEXT2FS = $(LIB)/libext2fs@LIB_EXT@
+ LIBUUID = @LIBUUID@ @SOCKET_LIB@
diff --git a/package/e2fsprogs/e2fsprogs-0001-sem-init-libs.patch b/package/e2fsprogs/e2fsprogs-0001-sem-init-libs.patch
deleted file mode 100644 (file)
index 56f1cc2..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
---- e2fsprogs-1.41.9/MCONFIG.in.orig   2009-10-07 20:25:07.000000000 +0800
-+++ e2fsprogs-1.41.9/MCONFIG.in        2009-10-07 20:21:41.000000000 +0800
-@@ -85,7 +85,7 @@
- #
- LIB = $(top_builddir)/lib
- LIBSS = $(LIB)/libss@LIB_EXT@ @PRIVATE_LIBS_CMT@ @DLOPEN_LIB@
--LIBCOM_ERR = $(LIB)/libcom_err@LIB_EXT@ @PRIVATE_LIBS_CMT@ @SEM_INIT_LIB@
-+LIBCOM_ERR = $(LIB)/libcom_err@LIB_EXT@ @SEM_INIT_LIB@
- LIBE2P = $(LIB)/libe2p@LIB_EXT@
- LIBEXT2FS = $(LIB)/libext2fs@LIB_EXT@
- LIBUUID = @LIBUUID@ @SOCKET_LIB@
diff --git a/package/elftosb/0001-fixes-includes.patch b/package/elftosb/0001-fixes-includes.patch
new file mode 100644 (file)
index 0000000..eaf8eba
--- /dev/null
@@ -0,0 +1,19 @@
+This patch uses system include files instead of a hard coded system path to fixe
+potential compilation failure on systems that do not populate system header
+files in /usr/include/..
+
+Signed-off-by: Eric Jarrige <eric.jarrige@armadeus.org>
+---
+Index: host-elftosb-10.12.01/common/stdafx.h
+===================================================================
+--- host-elftosb-10.12.01.orig/common/stdafx.h 2012-01-30 12:43:35.000000000 +0100
++++ host-elftosb-10.12.01/common/stdafx.h      2012-01-30 12:43:54.000000000 +0100
+@@ -27,7 +27,7 @@
+ // For Linux systems only, types.h only defines the signed
+ // integer types.  This is not professional code.
+ // Update: They are defined in the header files in the more recent version of redhat enterprise gcc.
+-#include "/usr/include/sys/types.h"
++#include <sys/types.h>
+ #include <stdint.h>
+ //typedef unsigned long uint32_t;
+ //typedef unsigned short uint16_t;
diff --git a/package/elftosb/0002-force-cxx-compiler.patch b/package/elftosb/0002-force-cxx-compiler.patch
new file mode 100644 (file)
index 0000000..14df0db
--- /dev/null
@@ -0,0 +1,98 @@
+Subject: [PATCH 1/1] elftosb: force host C++ compiler
+
+Because Freescale provides *.cpp sources and elftosb links again libstdc++,
+force to use the host c++ compiler.
+
+This patch avoids the following error occurs:
+
+gcc AESKey.o Blob.o crc.o DataSource.o DataTarget.o ELFSourceFile.o EncoreBootImage.o EvalContext.o GHSSecInfo.o GlobMatcher.o HexValues.o Logging.o Operation.o OptionDictionary.o options.o OutputSection.o Random.o RijndaelCBCMAC.o rijndael.o SHA1.o SourceFile.o SRecordSourceFile.o stdafx.o StELFFile.o StExecutableImage.o StSRecordFile.o Value.o Version.o format_string.o ExcludesListMatcher.o SearchPath.o DataSourceImager.o IVTDataSource.o BootImageGenerator.o ConversionController.o ElftosbAST.o elftosb.o elftosb_lexer.o ElftosbLexer.o elftosb_parser.tab.o EncoreBootImageGenerator.o -lstdc++ -o elftosb
+/usr/bin/ld: ElftosbAST.o: undefined reference to symbol 'powf@@GLIBC_2.2.5'
+/usr/bin/ld: note: 'powf@@GLIBC_2.2.5' is defined in DSO /lib64/libm.so.6 so try adding it to the linker command line
+/lib64/libm.so.6: could not read symbols: Invalid operation
+collect2: error: ld returned 1 exit status
+
+When compiling with gcc and linking against libstdc++, ld uses libc instead of
+libstdc++.
+However, libc does not provide all functions libstdc++ does.
+Indeed, maths functions are provided by libm, not libc.
+Thus, elftosb should either:
+- use gcc and link against libc and libm;
+- or use g++ and link against libstdc++.
+
+Because elftosb is written in C++, this patch implement the sencond option, using
+g++ and linking against libstdc++.
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+
+---
+Index: host-elftosb-10.12.01/makefile.rules
+===================================================================
+--- host-elftosb-10.12.01.orig/makefile.rules  2012-06-09 21:12:23.557526100 +0200
++++ host-elftosb-10.12.01/makefile.rules       2012-06-09 21:15:21.659894571 +0200
+@@ -15,6 +15,8 @@
+ # UNAMES is going to be set to either "Linux" or "CYGWIN_NT-5.1"
+ UNAMES = $(shell uname -s)
+
++CXX ?= g++
++
+ #*******************************************************************************
+ #                               Directories
+
+@@ -37,9 +39,9 @@
+ #*******************************************************************************
+ #                               Build flags
+-# gcc Compiler flags
++# Compiler flags
+ #    -g                                               : Produce debugging information.
+
+-CFLAGS            = -g $(INC_PATH) -D${UNAMES}
++CXXFLAGS      = -g $(INC_PATH) -D${UNAMES}
+
+ #*******************************************************************************
+ #                               File lists
+@@ -137,13 +139,13 @@ clean:
+               ${EXEC_FILE_ELFTOSB2} ${EXEC_FILE_SBTOOL} ${EXEC_FILE_KEYGEN}
+
+ elftosb: ${OBJ_FILES_ELFTOSB2}
+-      gcc ${OBJ_FILES_ELFTOSB2} ${LIBS} -o ${EXEC_FILE_ELFTOSB2}
++      $(CXX) ${OBJ_FILES_ELFTOSB2} ${LIBS} -o ${EXEC_FILE_ELFTOSB2}
+
+ sbtool: ${OBJ_FILES_SBTOOL}
+-      gcc ${OBJ_FILES_SBTOOL} ${LIBS} -o ${EXEC_FILE_SBTOOL}
++      $(CXX) ${OBJ_FILES_SBTOOL} ${LIBS} -o ${EXEC_FILE_SBTOOL}
+
+ keygen: ${OBJ_FILES_KEYGEN}
+-      gcc ${OBJ_FILES_KEYGEN} ${LIBS} -o ${EXEC_FILE_KEYGEN}
++      $(CXX) ${OBJ_FILES_KEYGEN} ${LIBS} -o ${EXEC_FILE_KEYGEN}
+
+
+ #ifeq ("${UNAMES}", "Linux")
+@@ -153,10 +155,10 @@ keygen: ${OBJ_FILES_KEYGEN}
+ .SUFFIXES : .c .cpp
+
+ .c.o :
+-      gcc ${CFLAGS} -c $<
++      $(CC) ${CXXFLAGS} -c $<
+
+ .cpp.o :
+-      gcc ${CFLAGS} -c $<
++      $(CXX) ${CXXFLAGS} -c $<
+
+ #endif
+
+@@ -165,13 +167,13 @@ keygen: ${OBJ_FILES_KEYGEN}
+
+ %.d: %.c
+       @set -e; \
+-      $(CC) -MM $(CFLAGS) $< | \
++      $(CC) -MM $(CXXFLAGS) $< | \
+       sed 's/\($*\)\.o[ :]*/\1.o $@ : /g' > $@; \
+       [ -s $@ ]  || rm -f $@
+
+ %.d: %.cpp
+       @set -e; \
+-      $(CC) -MM $(CFLAGS) $< | \
++      $(CXX) -MM $(CXXFLAGS) $< | \
+       sed 's/\($*\)\.o[ :]*/\1.o $@ : /g' > $@; \
+       [ -s $@ ]  || rm -f $@
+
diff --git a/package/elftosb/elftosb-fixes-includes.patch b/package/elftosb/elftosb-fixes-includes.patch
deleted file mode 100644 (file)
index eaf8eba..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-This patch uses system include files instead of a hard coded system path to fixe
-potential compilation failure on systems that do not populate system header
-files in /usr/include/..
-
-Signed-off-by: Eric Jarrige <eric.jarrige@armadeus.org>
----
-Index: host-elftosb-10.12.01/common/stdafx.h
-===================================================================
---- host-elftosb-10.12.01.orig/common/stdafx.h 2012-01-30 12:43:35.000000000 +0100
-+++ host-elftosb-10.12.01/common/stdafx.h      2012-01-30 12:43:54.000000000 +0100
-@@ -27,7 +27,7 @@
- // For Linux systems only, types.h only defines the signed
- // integer types.  This is not professional code.
- // Update: They are defined in the header files in the more recent version of redhat enterprise gcc.
--#include "/usr/include/sys/types.h"
-+#include <sys/types.h>
- #include <stdint.h>
- //typedef unsigned long uint32_t;
- //typedef unsigned short uint16_t;
diff --git a/package/elftosb/elftosb-force-cxx-compiler.patch b/package/elftosb/elftosb-force-cxx-compiler.patch
deleted file mode 100644 (file)
index 14df0db..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-Subject: [PATCH 1/1] elftosb: force host C++ compiler
-
-Because Freescale provides *.cpp sources and elftosb links again libstdc++,
-force to use the host c++ compiler.
-
-This patch avoids the following error occurs:
-
-gcc AESKey.o Blob.o crc.o DataSource.o DataTarget.o ELFSourceFile.o EncoreBootImage.o EvalContext.o GHSSecInfo.o GlobMatcher.o HexValues.o Logging.o Operation.o OptionDictionary.o options.o OutputSection.o Random.o RijndaelCBCMAC.o rijndael.o SHA1.o SourceFile.o SRecordSourceFile.o stdafx.o StELFFile.o StExecutableImage.o StSRecordFile.o Value.o Version.o format_string.o ExcludesListMatcher.o SearchPath.o DataSourceImager.o IVTDataSource.o BootImageGenerator.o ConversionController.o ElftosbAST.o elftosb.o elftosb_lexer.o ElftosbLexer.o elftosb_parser.tab.o EncoreBootImageGenerator.o -lstdc++ -o elftosb
-/usr/bin/ld: ElftosbAST.o: undefined reference to symbol 'powf@@GLIBC_2.2.5'
-/usr/bin/ld: note: 'powf@@GLIBC_2.2.5' is defined in DSO /lib64/libm.so.6 so try adding it to the linker command line
-/lib64/libm.so.6: could not read symbols: Invalid operation
-collect2: error: ld returned 1 exit status
-
-When compiling with gcc and linking against libstdc++, ld uses libc instead of
-libstdc++.
-However, libc does not provide all functions libstdc++ does.
-Indeed, maths functions are provided by libm, not libc.
-Thus, elftosb should either:
-- use gcc and link against libc and libm;
-- or use g++ and link against libstdc++.
-
-Because elftosb is written in C++, this patch implement the sencond option, using
-g++ and linking against libstdc++.
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
-
----
-Index: host-elftosb-10.12.01/makefile.rules
-===================================================================
---- host-elftosb-10.12.01.orig/makefile.rules  2012-06-09 21:12:23.557526100 +0200
-+++ host-elftosb-10.12.01/makefile.rules       2012-06-09 21:15:21.659894571 +0200
-@@ -15,6 +15,8 @@
- # UNAMES is going to be set to either "Linux" or "CYGWIN_NT-5.1"
- UNAMES = $(shell uname -s)
-
-+CXX ?= g++
-+
- #*******************************************************************************
- #                               Directories
-
-@@ -37,9 +39,9 @@
- #*******************************************************************************
- #                               Build flags
--# gcc Compiler flags
-+# Compiler flags
- #    -g                                               : Produce debugging information.
-
--CFLAGS            = -g $(INC_PATH) -D${UNAMES}
-+CXXFLAGS      = -g $(INC_PATH) -D${UNAMES}
-
- #*******************************************************************************
- #                               File lists
-@@ -137,13 +139,13 @@ clean:
-               ${EXEC_FILE_ELFTOSB2} ${EXEC_FILE_SBTOOL} ${EXEC_FILE_KEYGEN}
-
- elftosb: ${OBJ_FILES_ELFTOSB2}
--      gcc ${OBJ_FILES_ELFTOSB2} ${LIBS} -o ${EXEC_FILE_ELFTOSB2}
-+      $(CXX) ${OBJ_FILES_ELFTOSB2} ${LIBS} -o ${EXEC_FILE_ELFTOSB2}
-
- sbtool: ${OBJ_FILES_SBTOOL}
--      gcc ${OBJ_FILES_SBTOOL} ${LIBS} -o ${EXEC_FILE_SBTOOL}
-+      $(CXX) ${OBJ_FILES_SBTOOL} ${LIBS} -o ${EXEC_FILE_SBTOOL}
-
- keygen: ${OBJ_FILES_KEYGEN}
--      gcc ${OBJ_FILES_KEYGEN} ${LIBS} -o ${EXEC_FILE_KEYGEN}
-+      $(CXX) ${OBJ_FILES_KEYGEN} ${LIBS} -o ${EXEC_FILE_KEYGEN}
-
-
- #ifeq ("${UNAMES}", "Linux")
-@@ -153,10 +155,10 @@ keygen: ${OBJ_FILES_KEYGEN}
- .SUFFIXES : .c .cpp
-
- .c.o :
--      gcc ${CFLAGS} -c $<
-+      $(CC) ${CXXFLAGS} -c $<
-
- .cpp.o :
--      gcc ${CFLAGS} -c $<
-+      $(CXX) ${CXXFLAGS} -c $<
-
- #endif
-
-@@ -165,13 +167,13 @@ keygen: ${OBJ_FILES_KEYGEN}
-
- %.d: %.c
-       @set -e; \
--      $(CC) -MM $(CFLAGS) $< | \
-+      $(CC) -MM $(CXXFLAGS) $< | \
-       sed 's/\($*\)\.o[ :]*/\1.o $@ : /g' > $@; \
-       [ -s $@ ]  || rm -f $@
-
- %.d: %.cpp
-       @set -e; \
--      $(CC) -MM $(CFLAGS) $< | \
-+      $(CXX) -MM $(CXXFLAGS) $< | \
-       sed 's/\($*\)\.o[ :]*/\1.o $@ : /g' > $@; \
-       [ -s $@ ]  || rm -f $@
-
diff --git a/package/empty/0001-respect-LDFLAGS.patch b/package/empty/0001-respect-LDFLAGS.patch
new file mode 100644 (file)
index 0000000..b98af07
--- /dev/null
@@ -0,0 +1,22 @@
+downloaded from
+http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/app-misc/empty/files/empty-respect-LDFLAGS.patch?view=markup
+
+Reported on the Gentoo bug tracker
+https://bugs.gentoo.org/show_bug.cgi?id=429664
+
+and reported upstream
+https://sourceforge.net/tracker/?func=detail&aid=3554236&group_id=136798&atid=736886
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+
+--- empty-0.6.18b/Makefile
++++ empty-0.6.18b/Makefile
+@@ -16,7 +16,7 @@
+ PREFIX = /usr/local
+ all:
+-      ${CC} ${CFLAGS} -Wall ${LIBS} -o empty empty.c
++      ${CC} ${CFLAGS} ${LDFLAGS} empty.c ${LIBS} -o empty
+ FreeBSD:      all
+ NetBSD:               all
diff --git a/package/empty/empty-0001-respect-LDFLAGS.patch b/package/empty/empty-0001-respect-LDFLAGS.patch
deleted file mode 100644 (file)
index b98af07..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-downloaded from
-http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/app-misc/empty/files/empty-respect-LDFLAGS.patch?view=markup
-
-Reported on the Gentoo bug tracker
-https://bugs.gentoo.org/show_bug.cgi?id=429664
-
-and reported upstream
-https://sourceforge.net/tracker/?func=detail&aid=3554236&group_id=136798&atid=736886
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-
---- empty-0.6.18b/Makefile
-+++ empty-0.6.18b/Makefile
-@@ -16,7 +16,7 @@
- PREFIX = /usr/local
- all:
--      ${CC} ${CFLAGS} -Wall ${LIBS} -o empty empty.c
-+      ${CC} ${CFLAGS} ${LDFLAGS} empty.c ${LIBS} -o empty
- FreeBSD:      all
- NetBSD:               all
diff --git a/package/erlang-p1-sip/0001-fix-includes.patch b/package/erlang-p1-sip/0001-fix-includes.patch
new file mode 100644 (file)
index 0000000..80e2ab3
--- /dev/null
@@ -0,0 +1,19 @@
+Description: correct include
+ This part of the code was moved into it's own project and was packaged
+ separately by me. To make the build process work, this small fix is
+ necessary.
+Author: Philipp Huebner <debalance@debian.org>
+
+Index: erlang-p1-sip/src/esip_socket.erl
+===================================================================
+--- erlang-p1-sip.orig/src/esip_socket.erl
++++ erlang-p1-sip/src/esip_socket.erl
+@@ -22,7 +22,7 @@
+ -include("esip.hrl").
+ -include("esip_lib.hrl").
+--include("stun.hrl").
++-include_lib("p1_stun/include/stun.hrl").
+ -define(TCP_SEND_TIMEOUT, 15000).
+ -define(CONNECT_TIMEOUT, 20000).
diff --git a/package/erlang-p1-sip/erlang-p1-sip-01-fix-includes.patch b/package/erlang-p1-sip/erlang-p1-sip-01-fix-includes.patch
deleted file mode 100644 (file)
index 80e2ab3..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-Description: correct include
- This part of the code was moved into it's own project and was packaged
- separately by me. To make the build process work, this small fix is
- necessary.
-Author: Philipp Huebner <debalance@debian.org>
-
-Index: erlang-p1-sip/src/esip_socket.erl
-===================================================================
---- erlang-p1-sip.orig/src/esip_socket.erl
-+++ erlang-p1-sip/src/esip_socket.erl
-@@ -22,7 +22,7 @@
- -include("esip.hrl").
- -include("esip_lib.hrl").
---include("stun.hrl").
-+-include_lib("p1_stun/include/stun.hrl").
- -define(TCP_SEND_TIMEOUT, 15000).
- -define(CONNECT_TIMEOUT, 20000).
diff --git a/package/exim/0001-Build-buildconfig-for-the-host.patch b/package/exim/0001-Build-buildconfig-for-the-host.patch
new file mode 100644 (file)
index 0000000..a926fbd
--- /dev/null
@@ -0,0 +1,23 @@
+buildconfig is meant to be executed on the host, so it has to be compiled
+using $(HOSTCC), not $(CC).
+
+Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
+---
+ OS/Makefile-Base |    4 ++--
+ 1 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/OS/Makefile-Base b/OS/Makefile-Base
+index 29a6ad3..420ba60 100644
+--- a/OS/Makefile-Base
++++ b/OS/Makefile-Base
+@@ -114,8 +114,8 @@ allexim: config.h $(EXIM_MONITOR) exicyclog exinext exiwhat \
+ # Targets for special-purpose configuration header builders
+ buildconfig: buildconfig.c
+-      @echo "$(CC) buildconfig.c"
+-      $(FE)$(CC) $(CFLAGS) $(INCLUDE) -o buildconfig buildconfig.c $(LIBS)
++      @echo "$(HOSTCC) buildconfig.c"
++      $(FE)$(HOSTCC) $(HOSTCFLAGS) $(INCLUDE) -o buildconfig buildconfig.c $(LIBS)
+ # Target for the exicyclog utility script
diff --git a/package/exim/0002-Don-t-make-backup-copies-of-installed-files.patch b/package/exim/0002-Don-t-make-backup-copies-of-installed-files.patch
new file mode 100644 (file)
index 0000000..0cdaa74
--- /dev/null
@@ -0,0 +1,40 @@
+If exim had already been installed, the install script makes backup
+copies of the pre-existing executables with a ".0" suffix.
+
+This leads to useless duplicated files on the target, so disable this
+piece of code.
+
+Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
+---
+ scripts/exim_install |   18 +++++++++---------
+ 1 files changed, 9 insertions(+), 9 deletions(-)
+
+diff --git a/scripts/exim_install b/scripts/exim_install
+index 616ab3c..e68e7d5 100755
+--- a/scripts/exim_install
++++ b/scripts/exim_install
+@@ -344,15 +344,15 @@ while [ $# -gt 0 ]; do
+   else
+     if ../scripts/newer ${name} ${BIN_DIRECTORY}/${name}; then
+-      if [ -f ${BIN_DIRECTORY}/${name} ]; then
+-        echo ${CP} ${BIN_DIRECTORY}/${name} ${BIN_DIRECTORY}/${name}.O
+-        ${real} ${CP} ${BIN_DIRECTORY}/${name} ${BIN_DIRECTORY}/${name}.O
+-        if [ $? -ne 0 ]; then
+-          echo $com ""
+-          echo $com "*** Exim installation ${ver}failed ***"
+-          exit 1
+-        fi
+-      fi
++#      if [ -f ${BIN_DIRECTORY}/${name} ]; then
++#        echo ${CP} ${BIN_DIRECTORY}/${name} ${BIN_DIRECTORY}/${name}.O
++#        ${real} ${CP} ${BIN_DIRECTORY}/${name} ${BIN_DIRECTORY}/${name}.O
++#        if [ $? -ne 0 ]; then
++#          echo $com ""
++#          echo $com "*** Exim installation ${ver}failed ***"
++#          exit 1
++#        fi
++#      fi
+       echo ${CP} ${name} ${BIN_DIRECTORY}
+       ${real} ${CP} ${name} ${BIN_DIRECTORY}
+       if [ $? -ne 0 ]; then
diff --git a/package/exim/0003-Skip-version-check-and-symlink-installation.patch b/package/exim/0003-Skip-version-check-and-symlink-installation.patch
new file mode 100644 (file)
index 0000000..94d21ae
--- /dev/null
@@ -0,0 +1,40 @@
+The exim install script installs a binary named exim-<version>, plus a symlink
+to it named exim.
+In order to achieve this "feature" (of dubious usefulness) it runs the
+executable (on the host) and then filters its output to grab the version number.
+This clearly cannot work if the executable is cross-compiled, so get rid of all
+of it and just install an executable file called exim.
+
+Inspired by:
+http://patch-tracker.debian.org/patch/series/view/exim4/4.76-2/35_install.dpatch
+
+Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
+---
+ scripts/exim_install |    7 +++++--
+ 1 files changed, 5 insertions(+), 2 deletions(-)
+
+diff --git a/scripts/exim_install b/scripts/exim_install
+index e68e7d5..487a4e1 100755
+--- a/scripts/exim_install
++++ b/scripts/exim_install
+@@ -59,6 +59,8 @@ while [ $# -gt 0 ] ; do
+   shift
+ done
++do_symlink=no
++
+ # Get the values of BIN_DIRECTORY, CONFIGURE_FILE, INFO_DIRECTORY, NO_SYMLINK,
+ # SYSTEM_ALIASES_FILE, and EXE from the global Makefile (in the build
+ # directory). EXE is empty except in the Cygwin environment. In each case, keep
+@@ -218,8 +220,9 @@ while [ $# -gt 0 ]; do
+   # The exim binary is handled specially
+   if [ $name = exim${EXE} ]; then
+-    version=exim-`./exim -bV -C /dev/null | \
+-      awk '/Exim version/ { OFS=""; print $3,"-",substr($4,2,length($4)-1) }'`${EXE}
++    version=exim
++#    version=exim-`./exim -bV -C /dev/null | \
++#      awk '/Exim version/ { OFS=""; print $3,"-",substr($4,2,length($4)-1) }'`${EXE}
+     if [ "${version}" = "exim-${EXE}" ]; then
+       echo $com ""
diff --git a/package/exim/exim-0001-Build-buildconfig-for-the-host.patch b/package/exim/exim-0001-Build-buildconfig-for-the-host.patch
deleted file mode 100644 (file)
index a926fbd..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-buildconfig is meant to be executed on the host, so it has to be compiled
-using $(HOSTCC), not $(CC).
-
-Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
----
- OS/Makefile-Base |    4 ++--
- 1 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/OS/Makefile-Base b/OS/Makefile-Base
-index 29a6ad3..420ba60 100644
---- a/OS/Makefile-Base
-+++ b/OS/Makefile-Base
-@@ -114,8 +114,8 @@ allexim: config.h $(EXIM_MONITOR) exicyclog exinext exiwhat \
- # Targets for special-purpose configuration header builders
- buildconfig: buildconfig.c
--      @echo "$(CC) buildconfig.c"
--      $(FE)$(CC) $(CFLAGS) $(INCLUDE) -o buildconfig buildconfig.c $(LIBS)
-+      @echo "$(HOSTCC) buildconfig.c"
-+      $(FE)$(HOSTCC) $(HOSTCFLAGS) $(INCLUDE) -o buildconfig buildconfig.c $(LIBS)
- # Target for the exicyclog utility script
diff --git a/package/exim/exim-0002-Don-t-make-backup-copies-of-installed-files.patch b/package/exim/exim-0002-Don-t-make-backup-copies-of-installed-files.patch
deleted file mode 100644 (file)
index 0cdaa74..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-If exim had already been installed, the install script makes backup
-copies of the pre-existing executables with a ".0" suffix.
-
-This leads to useless duplicated files on the target, so disable this
-piece of code.
-
-Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
----
- scripts/exim_install |   18 +++++++++---------
- 1 files changed, 9 insertions(+), 9 deletions(-)
-
-diff --git a/scripts/exim_install b/scripts/exim_install
-index 616ab3c..e68e7d5 100755
---- a/scripts/exim_install
-+++ b/scripts/exim_install
-@@ -344,15 +344,15 @@ while [ $# -gt 0 ]; do
-   else
-     if ../scripts/newer ${name} ${BIN_DIRECTORY}/${name}; then
--      if [ -f ${BIN_DIRECTORY}/${name} ]; then
--        echo ${CP} ${BIN_DIRECTORY}/${name} ${BIN_DIRECTORY}/${name}.O
--        ${real} ${CP} ${BIN_DIRECTORY}/${name} ${BIN_DIRECTORY}/${name}.O
--        if [ $? -ne 0 ]; then
--          echo $com ""
--          echo $com "*** Exim installation ${ver}failed ***"
--          exit 1
--        fi
--      fi
-+#      if [ -f ${BIN_DIRECTORY}/${name} ]; then
-+#        echo ${CP} ${BIN_DIRECTORY}/${name} ${BIN_DIRECTORY}/${name}.O
-+#        ${real} ${CP} ${BIN_DIRECTORY}/${name} ${BIN_DIRECTORY}/${name}.O
-+#        if [ $? -ne 0 ]; then
-+#          echo $com ""
-+#          echo $com "*** Exim installation ${ver}failed ***"
-+#          exit 1
-+#        fi
-+#      fi
-       echo ${CP} ${name} ${BIN_DIRECTORY}
-       ${real} ${CP} ${name} ${BIN_DIRECTORY}
-       if [ $? -ne 0 ]; then
diff --git a/package/exim/exim-0003-Skip-version-check-and-symlink-installation.patch b/package/exim/exim-0003-Skip-version-check-and-symlink-installation.patch
deleted file mode 100644 (file)
index 94d21ae..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-The exim install script installs a binary named exim-<version>, plus a symlink
-to it named exim.
-In order to achieve this "feature" (of dubious usefulness) it runs the
-executable (on the host) and then filters its output to grab the version number.
-This clearly cannot work if the executable is cross-compiled, so get rid of all
-of it and just install an executable file called exim.
-
-Inspired by:
-http://patch-tracker.debian.org/patch/series/view/exim4/4.76-2/35_install.dpatch
-
-Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
----
- scripts/exim_install |    7 +++++--
- 1 files changed, 5 insertions(+), 2 deletions(-)
-
-diff --git a/scripts/exim_install b/scripts/exim_install
-index e68e7d5..487a4e1 100755
---- a/scripts/exim_install
-+++ b/scripts/exim_install
-@@ -59,6 +59,8 @@ while [ $# -gt 0 ] ; do
-   shift
- done
-+do_symlink=no
-+
- # Get the values of BIN_DIRECTORY, CONFIGURE_FILE, INFO_DIRECTORY, NO_SYMLINK,
- # SYSTEM_ALIASES_FILE, and EXE from the global Makefile (in the build
- # directory). EXE is empty except in the Cygwin environment. In each case, keep
-@@ -218,8 +220,9 @@ while [ $# -gt 0 ]; do
-   # The exim binary is handled specially
-   if [ $name = exim${EXE} ]; then
--    version=exim-`./exim -bV -C /dev/null | \
--      awk '/Exim version/ { OFS=""; print $3,"-",substr($4,2,length($4)-1) }'`${EXE}
-+    version=exim
-+#    version=exim-`./exim -bV -C /dev/null | \
-+#      awk '/Exim version/ { OFS=""; print $3,"-",substr($4,2,length($4)-1) }'`${EXE}
-     if [ "${version}" = "exim-${EXE}" ]; then
-       echo $com ""
diff --git a/package/exiv2/0001-remove-useless-header.patch b/package/exiv2/0001-remove-useless-header.patch
new file mode 100644 (file)
index 0000000..96a3734
--- /dev/null
@@ -0,0 +1,19 @@
+version.cpp: remove useless header inclusion
+
+The inclusion of link.h header is not required and can create build
+error with some toolchains.
+The patch is pushed on the upstream for the next release.
+http://dev.exiv2.org/issues/1007
+
+Signed-off-by: Nicolas Serafini <nicolas.serafini@sensefly.com>
+
+--- exiv2-0.24.orig/src/version.cpp    2013-12-01 13:13:42.000000000 +0100
++++ exiv2-0.24/src/version.cpp 2014-12-04 09:30:39.667234130 +0100
+@@ -116,7 +116,6 @@ typedef string_v::iterator  string_i;
+ #elif defined(__linux__)
+ # include <unistd.h>
+ // http://syprog.blogspot.com/2011/12/listing-loaded-shared-objects-in-linux.html
+-# include "link.h"
+ # include <dlfcn.h>
+   struct something
+   {
diff --git a/package/exiv2/exiv2-0001-remove-useless-header.patch b/package/exiv2/exiv2-0001-remove-useless-header.patch
deleted file mode 100644 (file)
index 96a3734..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-version.cpp: remove useless header inclusion
-
-The inclusion of link.h header is not required and can create build
-error with some toolchains.
-The patch is pushed on the upstream for the next release.
-http://dev.exiv2.org/issues/1007
-
-Signed-off-by: Nicolas Serafini <nicolas.serafini@sensefly.com>
-
---- exiv2-0.24.orig/src/version.cpp    2013-12-01 13:13:42.000000000 +0100
-+++ exiv2-0.24/src/version.cpp 2014-12-04 09:30:39.667234130 +0100
-@@ -116,7 +116,6 @@ typedef string_v::iterator  string_i;
- #elif defined(__linux__)
- # include <unistd.h>
- // http://syprog.blogspot.com/2011/12/listing-loaded-shared-objects-in-linux.html
--# include "link.h"
- # include <dlfcn.h>
-   struct something
-   {
diff --git a/package/expect/0001-enable-cross-compilation.patch b/package/expect/0001-enable-cross-compilation.patch
new file mode 100644 (file)
index 0000000..fd31a01
--- /dev/null
@@ -0,0 +1,120 @@
+From: Andrew Ruder <andrew.ruder@elecsyscorp.com>
+Subject: [PATCH] enable cross compilation for expect
+
+This patch was created by running ./configure on a modern Linux machine
+and inserting the results into the cross compilation section of
+each AC_MSG_CHECKING that bombed out with an error.
+
+Signed-off-by: Andrew Ruder <andrew.ruder@elecsyscorp.com>
+---
+
+Index: expect-5.45/configure.in
+===================================================================
+--- expect-5.45.orig/configure.in      2013-11-14 07:59:58.732100595 -0600
++++ expect-5.45/configure.in   2013-11-14 07:59:58.732100595 -0600
+@@ -481,7 +481,7 @@
+ ,
+       AC_MSG_RESULT(no)
+ ,
+-      AC_MSG_ERROR([Expect can't be cross compiled])
++      AC_MSG_RESULT(no)
+ )
+ AC_MSG_CHECKING([if any value exists for WNOHANG])
+@@ -506,7 +506,8 @@
+       AC_MSG_RESULT(no)
+       AC_DEFINE(WNOHANG_BACKUP_VALUE, 1)
+ ,
+-      AC_MSG_ERROR([Expect can't be cross compiled])
++      AC_MSG_RESULT(yes)
++      AC_DEFINE(WNOHANG_BACKUP_VALUE, 1)
+ )
+ #
+@@ -574,7 +575,7 @@
+       AC_DEFINE(REARM_SIG)
+ ,
+       AC_MSG_RESULT(no)
+-, AC_MSG_WARN([Expect can't be cross compiled])
++, AC_MSG_RESULT(no)
+ )
+ # HPUX7 has trouble with the big cat so split it
+@@ -725,7 +726,7 @@
+ ,
+         AC_MSG_RESULT(no)
+ ,
+-      AC_MSG_ERROR([Expect can't be cross compiled])
++      AC_MSG_RESULT(no)
+ )
+ # mach systems have include files for unimplemented features
+@@ -749,7 +750,9 @@
+ ,
+         AC_MSG_RESULT(no)
+ ,
+-      AC_MSG_ERROR([Expect can't be cross compiled])
++    AC_DEFINE(HAVE_TERMIO)
++    PTY_TYPE=termios
++      AC_MSG_RESULT(yes)
+ )
+   # now check for the new style ttys (not yet posix)
+@@ -771,7 +774,9 @@
+   ,
+         AC_MSG_RESULT(no)
+   ,
+-      AC_MSG_ERROR([Expect can't be cross compiled])
++        AC_DEFINE(HAVE_TERMIOS)
++        PTY_TYPE=termios
++        AC_MSG_RESULT(yes)
+   )
+ fi
+@@ -794,7 +799,7 @@
+ ,
+       AC_MSG_RESULT(no)
+ ,
+-      AC_MSG_ERROR([Expect can't be cross compiled])
++      AC_MSG_RESULT(no)
+ )
+ AC_MSG_CHECKING([if TIOCGWINSZ in termios.h])
+@@ -816,7 +821,7 @@
+ ,
+       AC_MSG_RESULT(no)
+ ,
+-      AC_MSG_ERROR([Expect can't be cross compiled])
++      AC_MSG_RESULT(no)
+ )
+ # finally check for Cray style ttys
+@@ -837,7 +842,7 @@
+ ,
+       AC_MSG_RESULT(no)
+ ,
+-      AC_MSG_ERROR([Expect can't be cross compiled])
++      AC_MSG_RESULT(no)
+ )
+ #
+@@ -869,7 +874,9 @@
+ AC_HAVE_FUNCS(getpty)
+ # following test sets SETPGRP_VOID if setpgrp takes 0 args, else takes 2
+-AC_FUNC_SETPGRP
++cat >>expect_cf.h <<\_ACEOF
++#define SETPGRP_VOID 1
++_ACEOF
+ #
+ # check for timezones
+@@ -889,7 +896,7 @@
+       AC_MSG_RESULT(yes),
+       AC_MSG_RESULT(no)
+ ,
+-      AC_MSG_ERROR([Expect can't be cross compiled])
++      AC_MSG_RESULT(yes)
+ )
diff --git a/package/expect/0002-allow-tcl-build-directory.patch b/package/expect/0002-allow-tcl-build-directory.patch
new file mode 100644 (file)
index 0000000..83ede7a
--- /dev/null
@@ -0,0 +1,34 @@
+From: Andrew Ruder <andrew.ruder@elecsyscorp.com>
+Subject: [PATCH] Allow tcl build directory for linking
+
+Some small changes to use TCL_BUILD_LIB_SPEC instead of TCL_LIB_SPEC for
+linking against tcl directly out of its build directory.
+
+Signed-off-by: Andrew Ruder <andrew.ruder@elecsyscorp.com>
+---
+
+Index: expect-5.45/Makefile.in
+===================================================================
+--- expect-5.45.orig/Makefile.in       2013-11-14 07:59:58.732100595 -0600
++++ expect-5.45/Makefile.in    2013-11-14 07:59:58.732100595 -0600
+@@ -393,7 +393,7 @@
+               @LDFLAGS_DEFAULT@ \
+               -o expect exp_main_exp.o \
+               @EXP_BUILD_LIB_SPEC@ \
+-              @TCL_LIB_SPEC@ \
++              @TCL_BUILD_LIB_SPEC@ \
+               @TCL_DL_LIBS@ @PKG_LIBS@ @MATH_LIBS@ \
+               @TCL_CC_SEARCH_FLAGS@ \
+               @EXP_CC_SEARCH_FLAGS@
+Index: expect-5.45/tclconfig/tcl.m4
+===================================================================
+--- expect-5.45.orig/tclconfig/tcl.m4  2010-11-09 13:42:10.000000000 -0600
++++ expect-5.45/tclconfig/tcl.m4       2013-11-14 08:02:08.424100580 -0600
+@@ -412,6 +412,7 @@
+     AC_SUBST(TCL_LIB_FILE)
+     AC_SUBST(TCL_LIB_FLAG)
+     AC_SUBST(TCL_LIB_SPEC)
++    AC_SUBST(TCL_BUILD_LIB_SPEC)
+     AC_SUBST(TCL_STUB_LIB_FILE)
+     AC_SUBST(TCL_STUB_LIB_FLAG)
diff --git a/package/expect/expect-0001-enable-cross-compilation.patch b/package/expect/expect-0001-enable-cross-compilation.patch
deleted file mode 100644 (file)
index fd31a01..0000000
+++ /dev/null
@@ -1,120 +0,0 @@
-From: Andrew Ruder <andrew.ruder@elecsyscorp.com>
-Subject: [PATCH] enable cross compilation for expect
-
-This patch was created by running ./configure on a modern Linux machine
-and inserting the results into the cross compilation section of
-each AC_MSG_CHECKING that bombed out with an error.
-
-Signed-off-by: Andrew Ruder <andrew.ruder@elecsyscorp.com>
----
-
-Index: expect-5.45/configure.in
-===================================================================
---- expect-5.45.orig/configure.in      2013-11-14 07:59:58.732100595 -0600
-+++ expect-5.45/configure.in   2013-11-14 07:59:58.732100595 -0600
-@@ -481,7 +481,7 @@
- ,
-       AC_MSG_RESULT(no)
- ,
--      AC_MSG_ERROR([Expect can't be cross compiled])
-+      AC_MSG_RESULT(no)
- )
- AC_MSG_CHECKING([if any value exists for WNOHANG])
-@@ -506,7 +506,8 @@
-       AC_MSG_RESULT(no)
-       AC_DEFINE(WNOHANG_BACKUP_VALUE, 1)
- ,
--      AC_MSG_ERROR([Expect can't be cross compiled])
-+      AC_MSG_RESULT(yes)
-+      AC_DEFINE(WNOHANG_BACKUP_VALUE, 1)
- )
- #
-@@ -574,7 +575,7 @@
-       AC_DEFINE(REARM_SIG)
- ,
-       AC_MSG_RESULT(no)
--, AC_MSG_WARN([Expect can't be cross compiled])
-+, AC_MSG_RESULT(no)
- )
- # HPUX7 has trouble with the big cat so split it
-@@ -725,7 +726,7 @@
- ,
-         AC_MSG_RESULT(no)
- ,
--      AC_MSG_ERROR([Expect can't be cross compiled])
-+      AC_MSG_RESULT(no)
- )
- # mach systems have include files for unimplemented features
-@@ -749,7 +750,9 @@
- ,
-         AC_MSG_RESULT(no)
- ,
--      AC_MSG_ERROR([Expect can't be cross compiled])
-+    AC_DEFINE(HAVE_TERMIO)
-+    PTY_TYPE=termios
-+      AC_MSG_RESULT(yes)
- )
-   # now check for the new style ttys (not yet posix)
-@@ -771,7 +774,9 @@
-   ,
-         AC_MSG_RESULT(no)
-   ,
--      AC_MSG_ERROR([Expect can't be cross compiled])
-+        AC_DEFINE(HAVE_TERMIOS)
-+        PTY_TYPE=termios
-+        AC_MSG_RESULT(yes)
-   )
- fi
-@@ -794,7 +799,7 @@
- ,
-       AC_MSG_RESULT(no)
- ,
--      AC_MSG_ERROR([Expect can't be cross compiled])
-+      AC_MSG_RESULT(no)
- )
- AC_MSG_CHECKING([if TIOCGWINSZ in termios.h])
-@@ -816,7 +821,7 @@
- ,
-       AC_MSG_RESULT(no)
- ,
--      AC_MSG_ERROR([Expect can't be cross compiled])
-+      AC_MSG_RESULT(no)
- )
- # finally check for Cray style ttys
-@@ -837,7 +842,7 @@
- ,
-       AC_MSG_RESULT(no)
- ,
--      AC_MSG_ERROR([Expect can't be cross compiled])
-+      AC_MSG_RESULT(no)
- )
- #
-@@ -869,7 +874,9 @@
- AC_HAVE_FUNCS(getpty)
- # following test sets SETPGRP_VOID if setpgrp takes 0 args, else takes 2
--AC_FUNC_SETPGRP
-+cat >>expect_cf.h <<\_ACEOF
-+#define SETPGRP_VOID 1
-+_ACEOF
- #
- # check for timezones
-@@ -889,7 +896,7 @@
-       AC_MSG_RESULT(yes),
-       AC_MSG_RESULT(no)
- ,
--      AC_MSG_ERROR([Expect can't be cross compiled])
-+      AC_MSG_RESULT(yes)
- )
diff --git a/package/expect/expect-0002-allow-tcl-build-directory.patch b/package/expect/expect-0002-allow-tcl-build-directory.patch
deleted file mode 100644 (file)
index 83ede7a..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-From: Andrew Ruder <andrew.ruder@elecsyscorp.com>
-Subject: [PATCH] Allow tcl build directory for linking
-
-Some small changes to use TCL_BUILD_LIB_SPEC instead of TCL_LIB_SPEC for
-linking against tcl directly out of its build directory.
-
-Signed-off-by: Andrew Ruder <andrew.ruder@elecsyscorp.com>
----
-
-Index: expect-5.45/Makefile.in
-===================================================================
---- expect-5.45.orig/Makefile.in       2013-11-14 07:59:58.732100595 -0600
-+++ expect-5.45/Makefile.in    2013-11-14 07:59:58.732100595 -0600
-@@ -393,7 +393,7 @@
-               @LDFLAGS_DEFAULT@ \
-               -o expect exp_main_exp.o \
-               @EXP_BUILD_LIB_SPEC@ \
--              @TCL_LIB_SPEC@ \
-+              @TCL_BUILD_LIB_SPEC@ \
-               @TCL_DL_LIBS@ @PKG_LIBS@ @MATH_LIBS@ \
-               @TCL_CC_SEARCH_FLAGS@ \
-               @EXP_CC_SEARCH_FLAGS@
-Index: expect-5.45/tclconfig/tcl.m4
-===================================================================
---- expect-5.45.orig/tclconfig/tcl.m4  2010-11-09 13:42:10.000000000 -0600
-+++ expect-5.45/tclconfig/tcl.m4       2013-11-14 08:02:08.424100580 -0600
-@@ -412,6 +412,7 @@
-     AC_SUBST(TCL_LIB_FILE)
-     AC_SUBST(TCL_LIB_FLAG)
-     AC_SUBST(TCL_LIB_SPEC)
-+    AC_SUBST(TCL_BUILD_LIB_SPEC)
-     AC_SUBST(TCL_STUB_LIB_FILE)
-     AC_SUBST(TCL_STUB_LIB_FLAG)
diff --git a/package/ezxml/0001-allow-compiler-override.patch b/package/ezxml/0001-allow-compiler-override.patch
new file mode 100644 (file)
index 0000000..827872b
--- /dev/null
@@ -0,0 +1,17 @@
+diff -urpN ezxml/GNUmakefile ezxml.patched/GNUmakefile
+--- ezxml/GNUmakefile  2006-03-25 18:44:04.000000000 +0100
++++ ezxml.patched/GNUmakefile  2008-02-24 13:57:37.000000000 +0100
+@@ -21,10 +21,10 @@
+ # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+ # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+-CC = gcc
+-AR = ar
++CC ?= gcc
++AR ?= ar
+ RM = rm -f
+-CFLAGS = -Wall -O2
++CFLAGS ?= -Wall -O2
+ DEBUG_CFLAGS = -O0 -g
+ OBJS = ezxml.o
+ LIB = libezxml.a
diff --git a/package/ezxml/ezxml-0.8.6-allow-compiler-override.patch b/package/ezxml/ezxml-0.8.6-allow-compiler-override.patch
deleted file mode 100644 (file)
index 827872b..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-diff -urpN ezxml/GNUmakefile ezxml.patched/GNUmakefile
---- ezxml/GNUmakefile  2006-03-25 18:44:04.000000000 +0100
-+++ ezxml.patched/GNUmakefile  2008-02-24 13:57:37.000000000 +0100
-@@ -21,10 +21,10 @@
- # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
- # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
--CC = gcc
--AR = ar
-+CC ?= gcc
-+AR ?= ar
- RM = rm -f
--CFLAGS = -Wall -O2
-+CFLAGS ?= -Wall -O2
- DEBUG_CFLAGS = -O0 -g
- OBJS = ezxml.o
- LIB = libezxml.a
diff --git a/package/fbgrab/0001-fix-static-build.patch b/package/fbgrab/0001-fix-static-build.patch
new file mode 100644 (file)
index 0000000..fe5ae2c
--- /dev/null
@@ -0,0 +1,21 @@
+Fix static build
+
+fbgrab links against libpng, which depends on libm. For shared library
+builds, there is nothing special to do about this, but for static
+library builds, it is necessary to pass -lm when linking fbgrab.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/Makefile
+===================================================================
+--- a/Makefile
++++ b/Makefile
+@@ -12,7 +12,7 @@
+ all: fbgrab fbgrab.1.gz
+ fbgrab: fbgrab.c
+-      $(CC) -g -Wall $(CFLAGS) $(LDFLAGS) $< -lpng -lz -o $@
++      $(CC) -g -Wall $(CFLAGS) $(LDFLAGS) $< -lpng -lz -lm -o $@
+ fbgrab.1.gz: fbgrab.1.man
+       $(GZIP) $(GZIPFLAGS) $< > $@
diff --git a/package/fbgrab/fbgrab-01-fix-static-build.patch b/package/fbgrab/fbgrab-01-fix-static-build.patch
deleted file mode 100644 (file)
index fe5ae2c..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-Fix static build
-
-fbgrab links against libpng, which depends on libm. For shared library
-builds, there is nothing special to do about this, but for static
-library builds, it is necessary to pass -lm when linking fbgrab.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/Makefile
-===================================================================
---- a/Makefile
-+++ b/Makefile
-@@ -12,7 +12,7 @@
- all: fbgrab fbgrab.1.gz
- fbgrab: fbgrab.c
--      $(CC) -g -Wall $(CFLAGS) $(LDFLAGS) $< -lpng -lz -o $@
-+      $(CC) -g -Wall $(CFLAGS) $(LDFLAGS) $< -lpng -lz -lm -o $@
- fbgrab.1.gz: fbgrab.1.man
-       $(GZIP) $(GZIPFLAGS) $< > $@
diff --git a/package/fbv/0001-arch.patch.avr32 b/package/fbv/0001-arch.patch.avr32
new file mode 100644 (file)
index 0000000..f57bbac
--- /dev/null
@@ -0,0 +1,48 @@
+diff -ur fbv-1.0b/fb_display.c fbv-1.0b-avr32/fb_display.c
+--- fbv-1.0b/fb_display.c      2004-09-07 14:09:43.000000000 +0200
++++ fbv-1.0b-avr32/fb_display.c        2006-05-04 13:30:25.000000000 +0200
+@@ -276,9 +276,6 @@
+           for(i = 0; i < yc; i++, fbptr += scr_xs * cpp, imptr += pic_xs * cpp)
+                       memcpy(fbptr, imptr, xc * cpp);
+               
+-      if(cpp == 1)
+-          set8map(fh, &map_back);
+-      
+       munmap(fb, scr_xs * scr_ys * cpp);
+ }
+@@ -293,17 +290,17 @@
+ inline static unsigned short make15color(unsigned char r, unsigned char g, unsigned char b)
+ {
+     return (
+-      (((r >> 3) & 31) << 10) |
++      (((r >> 3) & 31)) |
+       (((g >> 3) & 31) << 5)  |
+-       ((b >> 3) & 31)        );
++       ((b >> 3) & 31) << 10);
+ }
+ inline static unsigned short make16color(unsigned char r, unsigned char g, unsigned char b)
+ {
+     return (
+-      (((r >> 3) & 31) << 11) |
+-      (((g >> 2) & 63) << 5)  |
+-       ((b >> 3) & 31)        );
++      (((r >> 3) & 31))      |
++      (((g >> 3) & 31) << 5) |
++       ((b >> 3) & 31) << 10);
+ }
+ void* convertRGB2FB(int fh, unsigned char *rgbbuff, unsigned long count, int bpp, int *cpp)
+@@ -342,9 +339,9 @@
+           *cpp = 4;
+           i_fbbuff = (unsigned int *) malloc(count * sizeof(unsigned int));
+           for(i = 0; i < count ; i++)
+-              i_fbbuff[i] = ((rgbbuff[i*3] << 16) & 0xFF0000) |
++              i_fbbuff[i] = ((rgbbuff[i*3+2] << 16) & 0xFF0000) |
+                           ((rgbbuff[i*3+1] << 8) & 0xFF00) |
+-                          (rgbbuff[i*3+2] & 0xFF);
++                          (rgbbuff[i*3] & 0xFF);
+           fbbuff = (void *) i_fbbuff;
+           break;
+       default:
diff --git a/package/fbv/0002-cross.patch b/package/fbv/0002-cross.patch
new file mode 100644 (file)
index 0000000..ab5f0fb
--- /dev/null
@@ -0,0 +1,44 @@
+diff -urpN fbv-1.0b.orig/configure fbv-1.0b/configure
+--- fbv-1.0b.orig/configure    2004-09-07 13:29:27.000000000 +0200
++++ fbv-1.0b/configure 2008-04-24 10:52:37.000000000 +0200
+@@ -80,6 +80,7 @@ while true ; do
+       esac
+ done
++[ -z "$CC" ] && CC=cc
+ [ -z "$prefix" ] && prefix="/usr/local"
+ [ -z "$bindir" ] && bindir="${prefix}/bin"
+ [ -z "$mandir" ] && mandir="${prefix}/man"
+@@ -106,12 +107,12 @@ xdir="/usr/X11R6"
+ ungif="no"
+ echo "libungif check" >>./config.log
+ echo "  1st:" >>./config.log
+-cc 2>>./config.log >>./config.log -o \$\$~test \$\$~test.c -lungif $libs
++$CC 2>>./config.log >>./config.log -o \$\$~test \$\$~test.c -lungif $libs
+ if [ -e \$\$~test ]; then
+       libs="-lungif $libs" ; ungif="yes"
+ else
+       echo "  2nd: -lX11 -L$xdir/lib" >>./config.log
+-      cc 2>>./config.log >>./config.log -o \$\$~test \$\$~test.c -lungif -lX11 -L$xdir/lib $libs
++      $CC 2>>./config.log >>./config.log -o \$\$~test \$\$~test.c -lungif -lX11 -L$xdir/lib $libs
+       if [ -e \$\$~test ]; then
+       libs="-lungif -lX11 -L$xdir/lib $libs" ; ungif="yes"
+       fi
+@@ -124,7 +125,7 @@ echo "libungif: $ungif" >> ./config.log
+ echo -n "checking for libjpeg presence... "
+ if [ "$jpeg" != "disabled" ]; then
+ jpeg="no"
+-cc 2>>./config.log >>./config.log -o \$\$~test \$\$~test.c -ljpeg $libs
++$CC 2>>./config.log >>./config.log -o \$\$~test \$\$~test.c -ljpeg $libs
+ if [ -e \$\$~test ]; then
+       libs="-ljpeg $libs" ; jpeg="yes"
+ fi
+@@ -135,7 +136,7 @@ echo "libjpeg: $jpeg" >> ./config.log
+ echo -n "checking for libpng presence... "
+ if [ "$png" != "disabled" ]; then
+ png="no"
+-cc 2>>./config.log >>./config.log -o \$\$~test \$\$~test.c -lpng $libs
++$CC 2>>./config.log >>./config.log -o \$\$~test \$\$~test.c -lpng $libs
+ if [ -e \$\$~test ]; then
+       libs="-lpng $libs" ; png="yes"
+ fi
diff --git a/package/fbv/0003-fix-24bpp-support-on-big-endian.patch b/package/fbv/0003-fix-24bpp-support-on-big-endian.patch
new file mode 100644 (file)
index 0000000..23185ac
--- /dev/null
@@ -0,0 +1,32 @@
+diff -upr a/fb_display.c b/fb_display.c
+--- a/fb_display.c     2007-06-01 16:52:45.000000000 +0200
++++ b/fb_display.c     2007-06-01 16:51:43.000000000 +0200
+@@ -307,7 +307,7 @@ void* convertRGB2FB(int fh, unsigned cha
+ {
+     unsigned long i;
+     void *fbbuff = NULL;
+-      u_int8_t  *c_fbbuff;
++    u_int8_t  *c_fbbuff;
+     u_int16_t *s_fbbuff;
+     u_int32_t *i_fbbuff;
+@@ -335,6 +335,16 @@ void* convertRGB2FB(int fh, unsigned cha
+           fbbuff = (void *) s_fbbuff;
+           break;
+       case 24:
++          *cpp = 3;
++          c_fbbuff = (unsigned char *) malloc(count * 3 * sizeof(unsigned char));
++          for(i = 0; i < (3 * count); i += 3) {
++              /* Big endian framebuffer. */
++              c_fbbuff[i] = rgbbuff[i+2];
++              c_fbbuff[i+1] = rgbbuff[i+1];
++              c_fbbuff[i+2] = rgbbuff[i];
++          }
++          fbbuff = (void *) c_fbbuff;
++          break;
+       case 32:
+           *cpp = 4;
+           i_fbbuff = (unsigned int *) malloc(count * sizeof(unsigned int));
+Only in build_avr32/fbv-1.0b-modified: .fb_display.c.swp
+Binary files build_avr32/fbv-1.0b/fb_display.o and build_avr32/fbv-1.0b-modified/fb_display.o differ
+Binary files build_avr32/fbv-1.0b/fbv and build_avr32/fbv-1.0b-modified/fbv differ
diff --git a/package/fbv/0004-fix-bgr555.patch b/package/fbv/0004-fix-bgr555.patch
new file mode 100644 (file)
index 0000000..8f185f0
--- /dev/null
@@ -0,0 +1,64 @@
+[PATCH] fbv: support bgr555 format
+
+Signed-off-by: Josh.Wu <josh.wu@atmel.com>
+diff -Naur fbv-1.0b-ori/fb_display.c fbv-1.0b/fb_display.c
+--- fbv-1.0b-ori/fb_display.c  2010-04-02 09:38:15.000000000 +0800
++++ fbv-1.0b/fb_display.c      2010-04-01 18:54:15.000000000 +0800
+@@ -297,6 +297,14 @@
+        ((b >> 3) & 31)        );
+ }
++inline static unsigned short make15color_bgr(unsigned char r, unsigned char g, unsigned char b)
++{
++    return (
++      (((b >> 3) & 31) << 10) |
++      (((g >> 3) & 31) << 5)  |
++       ((r >> 3) & 31)        );
++}
++
+ inline static unsigned short make16color(unsigned char r, unsigned char g, unsigned char b)
+ {
+     return (
+@@ -313,6 +321,14 @@
+     u_int16_t *s_fbbuff;
+     u_int32_t *i_fbbuff;
++    int is_bgr555 = 0;
++    struct fb_var_screeninfo var;
++    getVarScreenInfo(fh, &var);
++    if(var.red.offset == 0 && 
++       var.green.offset == 5 && 
++       var.blue.offset == 10)
++      is_bgr555 = 1;
++
+     switch(bpp)
+     {
+       case 8:
+@@ -325,15 +341,23 @@
+       case 15:
+           *cpp = 2;
+           s_fbbuff = (unsigned short *) malloc(count * sizeof(unsigned short));
+-          for(i = 0; i < count ; i++)
+-              s_fbbuff[i] = make15color(rgbbuff[i*3], rgbbuff[i*3+1], rgbbuff[i*3+2]);
++          if(is_bgr555)
++              for(i = 0; i < count ; i++)
++                  s_fbbuff[i] = make15color_bgr(rgbbuff[i*3], rgbbuff[i*3+1], rgbbuff[i*3+2]);
++          else
++              for(i = 0; i < count ; i++)
++                  s_fbbuff[i] = make15color(rgbbuff[i*3], rgbbuff[i*3+1], rgbbuff[i*3+2]);
+           fbbuff = (void *) s_fbbuff;
+           break;
+       case 16:
+           *cpp = 2;
+           s_fbbuff = (unsigned short *) malloc(count * sizeof(unsigned short));
+-          for(i = 0; i < count ; i++)
+-              s_fbbuff[i] = make16color(rgbbuff[i*3], rgbbuff[i*3+1], rgbbuff[i*3+2]);
++          if(is_bgr555)
++              for(i = 0; i < count ; i++)
++                  s_fbbuff[i] = make15color_bgr(rgbbuff[i*3], rgbbuff[i*3+1], rgbbuff[i*3+2]);
++          else
++              for(i = 0; i < count ; i++)
++                  s_fbbuff[i] = make16color(rgbbuff[i*3], rgbbuff[i*3+1], rgbbuff[i*3+2]);
+           fbbuff = (void *) s_fbbuff;
+           break;
+       case 24:
diff --git a/package/fbv/0005-giflib.patch b/package/fbv/0005-giflib.patch
new file mode 100644 (file)
index 0000000..7043353
--- /dev/null
@@ -0,0 +1,84 @@
+Adjust source code to work with giflib 5.1x
+
+Downloaded patch for gif.c from
+https://projects.archlinux.org/svntogit/community.git/plain/trunk/giflib-5.1.patch?h=packages/fbv
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+
+diff -wbBur fbv-1.0b/gif.c fbv-1.0b.my/gif.c
+--- fbv-1.0b/gif.c     2003-08-25 00:23:02.000000000 +0400
++++ fbv-1.0b.my/gif.c  2014-05-29 18:39:41.337332872 +0400
+@@ -31,10 +31,10 @@
+ #include <string.h>
+ #define min(a,b) ((a) < (b) ? (a) : (b))
+ #define gflush return(FH_ERROR_FILE);
+-#define grflush { DGifCloseFile(gft); return(FH_ERROR_FORMAT); }
+-#define mgrflush { free(lb); free(slb); DGifCloseFile(gft); return(FH_ERROR_FORMAT); }
++#define grflush { DGifCloseFile(gft, NULL); return(FH_ERROR_FORMAT); }
++#define mgrflush { free(lb); free(slb); DGifCloseFile(gft, NULL); return(FH_ERROR_FORMAT); }
+ #define agflush return(FH_ERROR_FORMAT);
+-#define agrflush { DGifCloseFile(gft); return(FH_ERROR_FORMAT); }
++#define agrflush { DGifCloseFile(gft, NULL); return(FH_ERROR_FORMAT); }
+ int fh_gif_id(char *name)
+@@ -81,7 +81,7 @@
+     ColorMapObject *cmap;
+     int cmaps;
+-    gft=DGifOpenFileName(name);
++    gft=DGifOpenFileName(name, NULL);
+     if(gft==NULL){printf("err5\n"); gflush;} //////////
+     do
+     {
+@@ -170,7 +170,7 @@
+       }
+     }
+     while( rt!= TERMINATE_RECORD_TYPE );
+-    DGifCloseFile(gft);
++    DGifCloseFile(gft, NULL);
+     return(FH_ERROR_OK);
+ }
+@@ -184,7 +184,7 @@
+     int extcode;
+     GifRecordType rt;
+-    gft=DGifOpenFileName(name);
++    gft=DGifOpenFileName(name, NULL);
+     if(gft==NULL) gflush;
+     do
+     {
+@@ -197,7 +197,7 @@
+               px=gft->Image.Width;
+               py=gft->Image.Height;
+               *x=px; *y=py;
+-              DGifCloseFile(gft);
++              DGifCloseFile(gft, NULL);
+               return(FH_ERROR_OK);
+               break;
+           case EXTENSION_RECORD_TYPE:
+@@ -210,7 +210,7 @@
+       }  
+     }
+     while( rt!= TERMINATE_RECORD_TYPE );
+-    DGifCloseFile(gft);
++    DGifCloseFile(gft, NULL);
+     return(FH_ERROR_FORMAT);
+ }
+ #endif
+diff -uNr fbv-1.0b.org/configure fbv-1.0b/configure
+--- fbv-1.0b.org/configure     2004-09-07 13:29:27.000000000 +0200
++++ fbv-1.0b/configure 2015-01-29 19:58:30.374599874 +0100
+@@ -106,9 +106,9 @@
+ ungif="no"
+ echo "libungif check" >>./config.log
+ echo "  1st:" >>./config.log
+-$CC 2>>./config.log >>./config.log -o \$\$~test \$\$~test.c -lungif $libs
++$CC 2>>./config.log >>./config.log -o \$\$~test \$\$~test.c -lgif $libs
+ if [ -e \$\$~test ]; then
+-      libs="-lungif $libs" ; ungif="yes"
++      libs="-lgif $libs" ; ungif="yes"
+ else
+       echo "  2nd: -lX11 -L$xdir/lib" >>./config.log
+       $CC 2>>./config.log >>./config.log -o \$\$~test \$\$~test.c -lungif -lX11 -L$xdir/lib $libs
diff --git a/package/fbv/0006-include.patch b/package/fbv/0006-include.patch
new file mode 100644 (file)
index 0000000..3d1cc17
--- /dev/null
@@ -0,0 +1,20 @@
+diff -urpN fbv-1.0b.orig/fb_display.c fbv-1.0b/fb_display.c
+--- fbv-1.0b.orig/fb_display.c 2004-09-07 14:09:43.000000000 +0200
++++ fbv-1.0b/fb_display.c      2008-04-24 10:48:29.000000000 +0200
+@@ -18,8 +18,6 @@
+     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+-#include <linux/fb.h>
+-
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <sys/types.h>
+@@ -31,6 +29,7 @@
+ #include <asm/types.h>
+ #include <string.h>
+ #include <errno.h>
++#include <linux/fb.h>
+ #include "config.h"
+ /* Public Use Functions:
+  *
diff --git a/package/fbv/0007-libpng15.patch b/package/fbv/0007-libpng15.patch
new file mode 100644 (file)
index 0000000..7872a73
--- /dev/null
@@ -0,0 +1,24 @@
+Support for libpng 1.5+ shamelessly taken from Gentoo.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+--- a/png.c
++++ b/png.c
+@@ -69,7 +69,7 @@
+         fclose(fh); return(FH_ERROR_FORMAT);
+     }
+     rp=0;
+-    if (setjmp(png_ptr->jmpbuf))
++    if (setjmp(png_jmpbuf(png_ptr)))
+     {
+       png_destroy_read_struct(&png_ptr, &info_ptr, (png_infopp)NULL);
+         if(rp) free(rp);
+@@ -161,7 +161,7 @@
+         fclose(fh); return(FH_ERROR_FORMAT);
+     }
+     rp=0;
+-    if (setjmp(png_ptr->jmpbuf))
++    if (setjmp(png_jmpbuf(png_ptr)))
+     {
+       png_destroy_read_struct(&png_ptr, &info_ptr, (png_infopp)NULL);
+         if(rp) free(rp);
diff --git a/package/fbv/fbv-1.0b-arch.patch.avr32 b/package/fbv/fbv-1.0b-arch.patch.avr32
deleted file mode 100644 (file)
index f57bbac..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-diff -ur fbv-1.0b/fb_display.c fbv-1.0b-avr32/fb_display.c
---- fbv-1.0b/fb_display.c      2004-09-07 14:09:43.000000000 +0200
-+++ fbv-1.0b-avr32/fb_display.c        2006-05-04 13:30:25.000000000 +0200
-@@ -276,9 +276,6 @@
-           for(i = 0; i < yc; i++, fbptr += scr_xs * cpp, imptr += pic_xs * cpp)
-                       memcpy(fbptr, imptr, xc * cpp);
-               
--      if(cpp == 1)
--          set8map(fh, &map_back);
--      
-       munmap(fb, scr_xs * scr_ys * cpp);
- }
-@@ -293,17 +290,17 @@
- inline static unsigned short make15color(unsigned char r, unsigned char g, unsigned char b)
- {
-     return (
--      (((r >> 3) & 31) << 10) |
-+      (((r >> 3) & 31)) |
-       (((g >> 3) & 31) << 5)  |
--       ((b >> 3) & 31)        );
-+       ((b >> 3) & 31) << 10);
- }
- inline static unsigned short make16color(unsigned char r, unsigned char g, unsigned char b)
- {
-     return (
--      (((r >> 3) & 31) << 11) |
--      (((g >> 2) & 63) << 5)  |
--       ((b >> 3) & 31)        );
-+      (((r >> 3) & 31))      |
-+      (((g >> 3) & 31) << 5) |
-+       ((b >> 3) & 31) << 10);
- }
- void* convertRGB2FB(int fh, unsigned char *rgbbuff, unsigned long count, int bpp, int *cpp)
-@@ -342,9 +339,9 @@
-           *cpp = 4;
-           i_fbbuff = (unsigned int *) malloc(count * sizeof(unsigned int));
-           for(i = 0; i < count ; i++)
--              i_fbbuff[i] = ((rgbbuff[i*3] << 16) & 0xFF0000) |
-+              i_fbbuff[i] = ((rgbbuff[i*3+2] << 16) & 0xFF0000) |
-                           ((rgbbuff[i*3+1] << 8) & 0xFF00) |
--                          (rgbbuff[i*3+2] & 0xFF);
-+                          (rgbbuff[i*3] & 0xFF);
-           fbbuff = (void *) i_fbbuff;
-           break;
-       default:
diff --git a/package/fbv/fbv-1.0b-cross.patch b/package/fbv/fbv-1.0b-cross.patch
deleted file mode 100644 (file)
index ab5f0fb..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-diff -urpN fbv-1.0b.orig/configure fbv-1.0b/configure
---- fbv-1.0b.orig/configure    2004-09-07 13:29:27.000000000 +0200
-+++ fbv-1.0b/configure 2008-04-24 10:52:37.000000000 +0200
-@@ -80,6 +80,7 @@ while true ; do
-       esac
- done
-+[ -z "$CC" ] && CC=cc
- [ -z "$prefix" ] && prefix="/usr/local"
- [ -z "$bindir" ] && bindir="${prefix}/bin"
- [ -z "$mandir" ] && mandir="${prefix}/man"
-@@ -106,12 +107,12 @@ xdir="/usr/X11R6"
- ungif="no"
- echo "libungif check" >>./config.log
- echo "  1st:" >>./config.log
--cc 2>>./config.log >>./config.log -o \$\$~test \$\$~test.c -lungif $libs
-+$CC 2>>./config.log >>./config.log -o \$\$~test \$\$~test.c -lungif $libs
- if [ -e \$\$~test ]; then
-       libs="-lungif $libs" ; ungif="yes"
- else
-       echo "  2nd: -lX11 -L$xdir/lib" >>./config.log
--      cc 2>>./config.log >>./config.log -o \$\$~test \$\$~test.c -lungif -lX11 -L$xdir/lib $libs
-+      $CC 2>>./config.log >>./config.log -o \$\$~test \$\$~test.c -lungif -lX11 -L$xdir/lib $libs
-       if [ -e \$\$~test ]; then
-       libs="-lungif -lX11 -L$xdir/lib $libs" ; ungif="yes"
-       fi
-@@ -124,7 +125,7 @@ echo "libungif: $ungif" >> ./config.log
- echo -n "checking for libjpeg presence... "
- if [ "$jpeg" != "disabled" ]; then
- jpeg="no"
--cc 2>>./config.log >>./config.log -o \$\$~test \$\$~test.c -ljpeg $libs
-+$CC 2>>./config.log >>./config.log -o \$\$~test \$\$~test.c -ljpeg $libs
- if [ -e \$\$~test ]; then
-       libs="-ljpeg $libs" ; jpeg="yes"
- fi
-@@ -135,7 +136,7 @@ echo "libjpeg: $jpeg" >> ./config.log
- echo -n "checking for libpng presence... "
- if [ "$png" != "disabled" ]; then
- png="no"
--cc 2>>./config.log >>./config.log -o \$\$~test \$\$~test.c -lpng $libs
-+$CC 2>>./config.log >>./config.log -o \$\$~test \$\$~test.c -lpng $libs
- if [ -e \$\$~test ]; then
-       libs="-lpng $libs" ; png="yes"
- fi
diff --git a/package/fbv/fbv-1.0b-fix-24bpp-support-on-big-endian.patch b/package/fbv/fbv-1.0b-fix-24bpp-support-on-big-endian.patch
deleted file mode 100644 (file)
index 23185ac..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-diff -upr a/fb_display.c b/fb_display.c
---- a/fb_display.c     2007-06-01 16:52:45.000000000 +0200
-+++ b/fb_display.c     2007-06-01 16:51:43.000000000 +0200
-@@ -307,7 +307,7 @@ void* convertRGB2FB(int fh, unsigned cha
- {
-     unsigned long i;
-     void *fbbuff = NULL;
--      u_int8_t  *c_fbbuff;
-+    u_int8_t  *c_fbbuff;
-     u_int16_t *s_fbbuff;
-     u_int32_t *i_fbbuff;
-@@ -335,6 +335,16 @@ void* convertRGB2FB(int fh, unsigned cha
-           fbbuff = (void *) s_fbbuff;
-           break;
-       case 24:
-+          *cpp = 3;
-+          c_fbbuff = (unsigned char *) malloc(count * 3 * sizeof(unsigned char));
-+          for(i = 0; i < (3 * count); i += 3) {
-+              /* Big endian framebuffer. */
-+              c_fbbuff[i] = rgbbuff[i+2];
-+              c_fbbuff[i+1] = rgbbuff[i+1];
-+              c_fbbuff[i+2] = rgbbuff[i];
-+          }
-+          fbbuff = (void *) c_fbbuff;
-+          break;
-       case 32:
-           *cpp = 4;
-           i_fbbuff = (unsigned int *) malloc(count * sizeof(unsigned int));
-Only in build_avr32/fbv-1.0b-modified: .fb_display.c.swp
-Binary files build_avr32/fbv-1.0b/fb_display.o and build_avr32/fbv-1.0b-modified/fb_display.o differ
-Binary files build_avr32/fbv-1.0b/fbv and build_avr32/fbv-1.0b-modified/fbv differ
diff --git a/package/fbv/fbv-1.0b-fix-bgr555.patch b/package/fbv/fbv-1.0b-fix-bgr555.patch
deleted file mode 100644 (file)
index 8f185f0..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-[PATCH] fbv: support bgr555 format
-
-Signed-off-by: Josh.Wu <josh.wu@atmel.com>
-diff -Naur fbv-1.0b-ori/fb_display.c fbv-1.0b/fb_display.c
---- fbv-1.0b-ori/fb_display.c  2010-04-02 09:38:15.000000000 +0800
-+++ fbv-1.0b/fb_display.c      2010-04-01 18:54:15.000000000 +0800
-@@ -297,6 +297,14 @@
-        ((b >> 3) & 31)        );
- }
-+inline static unsigned short make15color_bgr(unsigned char r, unsigned char g, unsigned char b)
-+{
-+    return (
-+      (((b >> 3) & 31) << 10) |
-+      (((g >> 3) & 31) << 5)  |
-+       ((r >> 3) & 31)        );
-+}
-+
- inline static unsigned short make16color(unsigned char r, unsigned char g, unsigned char b)
- {
-     return (
-@@ -313,6 +321,14 @@
-     u_int16_t *s_fbbuff;
-     u_int32_t *i_fbbuff;
-+    int is_bgr555 = 0;
-+    struct fb_var_screeninfo var;
-+    getVarScreenInfo(fh, &var);
-+    if(var.red.offset == 0 && 
-+       var.green.offset == 5 && 
-+       var.blue.offset == 10)
-+      is_bgr555 = 1;
-+
-     switch(bpp)
-     {
-       case 8:
-@@ -325,15 +341,23 @@
-       case 15:
-           *cpp = 2;
-           s_fbbuff = (unsigned short *) malloc(count * sizeof(unsigned short));
--          for(i = 0; i < count ; i++)
--              s_fbbuff[i] = make15color(rgbbuff[i*3], rgbbuff[i*3+1], rgbbuff[i*3+2]);
-+          if(is_bgr555)
-+              for(i = 0; i < count ; i++)
-+                  s_fbbuff[i] = make15color_bgr(rgbbuff[i*3], rgbbuff[i*3+1], rgbbuff[i*3+2]);
-+          else
-+              for(i = 0; i < count ; i++)
-+                  s_fbbuff[i] = make15color(rgbbuff[i*3], rgbbuff[i*3+1], rgbbuff[i*3+2]);
-           fbbuff = (void *) s_fbbuff;
-           break;
-       case 16:
-           *cpp = 2;
-           s_fbbuff = (unsigned short *) malloc(count * sizeof(unsigned short));
--          for(i = 0; i < count ; i++)
--              s_fbbuff[i] = make16color(rgbbuff[i*3], rgbbuff[i*3+1], rgbbuff[i*3+2]);
-+          if(is_bgr555)
-+              for(i = 0; i < count ; i++)
-+                  s_fbbuff[i] = make15color_bgr(rgbbuff[i*3], rgbbuff[i*3+1], rgbbuff[i*3+2]);
-+          else
-+              for(i = 0; i < count ; i++)
-+                  s_fbbuff[i] = make16color(rgbbuff[i*3], rgbbuff[i*3+1], rgbbuff[i*3+2]);
-           fbbuff = (void *) s_fbbuff;
-           break;
-       case 24:
diff --git a/package/fbv/fbv-1.0b-giflib.patch b/package/fbv/fbv-1.0b-giflib.patch
deleted file mode 100644 (file)
index 7043353..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-Adjust source code to work with giflib 5.1x
-
-Downloaded patch for gif.c from
-https://projects.archlinux.org/svntogit/community.git/plain/trunk/giflib-5.1.patch?h=packages/fbv
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-
-diff -wbBur fbv-1.0b/gif.c fbv-1.0b.my/gif.c
---- fbv-1.0b/gif.c     2003-08-25 00:23:02.000000000 +0400
-+++ fbv-1.0b.my/gif.c  2014-05-29 18:39:41.337332872 +0400
-@@ -31,10 +31,10 @@
- #include <string.h>
- #define min(a,b) ((a) < (b) ? (a) : (b))
- #define gflush return(FH_ERROR_FILE);
--#define grflush { DGifCloseFile(gft); return(FH_ERROR_FORMAT); }
--#define mgrflush { free(lb); free(slb); DGifCloseFile(gft); return(FH_ERROR_FORMAT); }
-+#define grflush { DGifCloseFile(gft, NULL); return(FH_ERROR_FORMAT); }
-+#define mgrflush { free(lb); free(slb); DGifCloseFile(gft, NULL); return(FH_ERROR_FORMAT); }
- #define agflush return(FH_ERROR_FORMAT);
--#define agrflush { DGifCloseFile(gft); return(FH_ERROR_FORMAT); }
-+#define agrflush { DGifCloseFile(gft, NULL); return(FH_ERROR_FORMAT); }
- int fh_gif_id(char *name)
-@@ -81,7 +81,7 @@
-     ColorMapObject *cmap;
-     int cmaps;
--    gft=DGifOpenFileName(name);
-+    gft=DGifOpenFileName(name, NULL);
-     if(gft==NULL){printf("err5\n"); gflush;} //////////
-     do
-     {
-@@ -170,7 +170,7 @@
-       }
-     }
-     while( rt!= TERMINATE_RECORD_TYPE );
--    DGifCloseFile(gft);
-+    DGifCloseFile(gft, NULL);
-     return(FH_ERROR_OK);
- }
-@@ -184,7 +184,7 @@
-     int extcode;
-     GifRecordType rt;
--    gft=DGifOpenFileName(name);
-+    gft=DGifOpenFileName(name, NULL);
-     if(gft==NULL) gflush;
-     do
-     {
-@@ -197,7 +197,7 @@
-               px=gft->Image.Width;
-               py=gft->Image.Height;
-               *x=px; *y=py;
--              DGifCloseFile(gft);
-+              DGifCloseFile(gft, NULL);
-               return(FH_ERROR_OK);
-               break;
-           case EXTENSION_RECORD_TYPE:
-@@ -210,7 +210,7 @@
-       }  
-     }
-     while( rt!= TERMINATE_RECORD_TYPE );
--    DGifCloseFile(gft);
-+    DGifCloseFile(gft, NULL);
-     return(FH_ERROR_FORMAT);
- }
- #endif
-diff -uNr fbv-1.0b.org/configure fbv-1.0b/configure
---- fbv-1.0b.org/configure     2004-09-07 13:29:27.000000000 +0200
-+++ fbv-1.0b/configure 2015-01-29 19:58:30.374599874 +0100
-@@ -106,9 +106,9 @@
- ungif="no"
- echo "libungif check" >>./config.log
- echo "  1st:" >>./config.log
--$CC 2>>./config.log >>./config.log -o \$\$~test \$\$~test.c -lungif $libs
-+$CC 2>>./config.log >>./config.log -o \$\$~test \$\$~test.c -lgif $libs
- if [ -e \$\$~test ]; then
--      libs="-lungif $libs" ; ungif="yes"
-+      libs="-lgif $libs" ; ungif="yes"
- else
-       echo "  2nd: -lX11 -L$xdir/lib" >>./config.log
-       $CC 2>>./config.log >>./config.log -o \$\$~test \$\$~test.c -lungif -lX11 -L$xdir/lib $libs
diff --git a/package/fbv/fbv-1.0b-include.patch b/package/fbv/fbv-1.0b-include.patch
deleted file mode 100644 (file)
index 3d1cc17..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-diff -urpN fbv-1.0b.orig/fb_display.c fbv-1.0b/fb_display.c
---- fbv-1.0b.orig/fb_display.c 2004-09-07 14:09:43.000000000 +0200
-+++ fbv-1.0b/fb_display.c      2008-04-24 10:48:29.000000000 +0200
-@@ -18,8 +18,6 @@
-     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- */
--#include <linux/fb.h>
--
- #include <stdio.h>
- #include <stdlib.h>
- #include <sys/types.h>
-@@ -31,6 +29,7 @@
- #include <asm/types.h>
- #include <string.h>
- #include <errno.h>
-+#include <linux/fb.h>
- #include "config.h"
- /* Public Use Functions:
-  *
diff --git a/package/fbv/fbv-1.0b-libpng15.patch b/package/fbv/fbv-1.0b-libpng15.patch
deleted file mode 100644 (file)
index 7872a73..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-Support for libpng 1.5+ shamelessly taken from Gentoo.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
---- a/png.c
-+++ b/png.c
-@@ -69,7 +69,7 @@
-         fclose(fh); return(FH_ERROR_FORMAT);
-     }
-     rp=0;
--    if (setjmp(png_ptr->jmpbuf))
-+    if (setjmp(png_jmpbuf(png_ptr)))
-     {
-       png_destroy_read_struct(&png_ptr, &info_ptr, (png_infopp)NULL);
-         if(rp) free(rp);
-@@ -161,7 +161,7 @@
-         fclose(fh); return(FH_ERROR_FORMAT);
-     }
-     rp=0;
--    if (setjmp(png_ptr->jmpbuf))
-+    if (setjmp(png_jmpbuf(png_ptr)))
-     {
-       png_destroy_read_struct(&png_ptr, &info_ptr, (png_infopp)NULL);
-         if(rp) free(rp);
diff --git a/package/fetchmail/0001-fix-openssl-static-link.patch b/package/fetchmail/0001-fix-openssl-static-link.patch
new file mode 100644 (file)
index 0000000..1a5f4d6
--- /dev/null
@@ -0,0 +1,30 @@
+Fix checking for statically build OpenSSL with libz dependency
+
+Fixes
+http://autobuild.buildroot.net/results/48a/48ad6d3659cf1f04581b7e3d115bebf454ff17fd/
+
+configure: Enabling OpenSSL support in /home/br/br/output/host/usr/i486-buildroot-linux-uclibc/sysroot/usr.
+checking for additional library dependencies of SSL... error
+configure: error: cannot link with SSL - check config.log
+
+In config.log multiple linking errors to libz can be found:
+
+configure:10099: /home/br/br/output/host/usr/bin/i486-ctng-linux-uclibc-gcc -o
+  conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64
+  /home/br/br/output/host/usr/i486-buildroot-linux-uclibc/sysroot/usr/lib/libcrypto.a(c_zlib.o):
+  In function `zlib_stateful_c_zlib.c:(.text+0x56): undefined reference to `inflate'
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+
+diff -uNr fetchmail-6.3.26.org/configure.ac fetchmail-6.3.26/configure.ac
+--- fetchmail-6.3.26.org/configure.ac  2013-04-23 22:51:10.000000000 +0200
++++ fetchmail-6.3.26/configure.ac      2014-07-27 09:20:25.000000000 +0200
+@@ -778,7 +778,7 @@
+     AC_MSG_ERROR([SSL support enabled, but OpenSSL not found])
+   fi
+   LDFLAGS="$LDFLAGS -L$with_ssl/lib"
+-  LIBS="$LIBS -lssl -lcrypto"
++  LIBS="-lssl -lcrypto $LIBS"
+   dnl check if -ldl is needed
+   AC_MSG_CHECKING([for additional library dependencies of SSL])
+   found=0
diff --git a/package/fetchmail/fetchmail-0001-fix-openssl-static-link.patch b/package/fetchmail/fetchmail-0001-fix-openssl-static-link.patch
deleted file mode 100644 (file)
index 1a5f4d6..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-Fix checking for statically build OpenSSL with libz dependency
-
-Fixes
-http://autobuild.buildroot.net/results/48a/48ad6d3659cf1f04581b7e3d115bebf454ff17fd/
-
-configure: Enabling OpenSSL support in /home/br/br/output/host/usr/i486-buildroot-linux-uclibc/sysroot/usr.
-checking for additional library dependencies of SSL... error
-configure: error: cannot link with SSL - check config.log
-
-In config.log multiple linking errors to libz can be found:
-
-configure:10099: /home/br/br/output/host/usr/bin/i486-ctng-linux-uclibc-gcc -o
-  conftest -D_LARGEFILE_SOURCE -D_LARGEFILE64
-  /home/br/br/output/host/usr/i486-buildroot-linux-uclibc/sysroot/usr/lib/libcrypto.a(c_zlib.o):
-  In function `zlib_stateful_c_zlib.c:(.text+0x56): undefined reference to `inflate'
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-
-diff -uNr fetchmail-6.3.26.org/configure.ac fetchmail-6.3.26/configure.ac
---- fetchmail-6.3.26.org/configure.ac  2013-04-23 22:51:10.000000000 +0200
-+++ fetchmail-6.3.26/configure.ac      2014-07-27 09:20:25.000000000 +0200
-@@ -778,7 +778,7 @@
-     AC_MSG_ERROR([SSL support enabled, but OpenSSL not found])
-   fi
-   LDFLAGS="$LDFLAGS -L$with_ssl/lib"
--  LIBS="$LIBS -lssl -lcrypto"
-+  LIBS="-lssl -lcrypto $LIBS"
-   dnl check if -ldl is needed
-   AC_MSG_CHECKING([for additional library dependencies of SSL])
-   found=0
diff --git a/package/fis/0001-checksum.patch b/package/fis/0001-checksum.patch
new file mode 100644 (file)
index 0000000..a6325eb
--- /dev/null
@@ -0,0 +1,274 @@
+diff -uN fis.orig/crc.c fis/crc.c
+--- fis.orig/crc.c     1970-01-01 10:00:00.000000000 +1000
++++ fis/crc.c  2008-04-01 11:39:13.000000000 +1100
+@@ -0,0 +1,88 @@
++/*\r
++ * crc.c\r
++ *\r
++ * $Id: crc.c,v 1.1 2006/02/13 09:58:08 andrzej Exp $\r
++ *\r
++ * Gary S. Brown's CRC\r
++ * Code based on Gary S. Brown CRC (1986). \r
++ * Generation polynomial is:\r
++ *   X^32+X^26+X^23+X^22+X^16+X^12+X^11+X^10+X^8+X^7+X^5+X^4+X^2+X^1+X^0 \r
++ *\r
++ * Copyright (C) 2006 Ekiert sp z o.o.\r
++ * Author: Andrzej Ekiert <a.ekiert@ekiert.com>\r
++ *\r
++ * This program is free software; you can redistribute it and/or\r
++ * modify it under the terms of the GNU General Public License\r
++ * as published by the Free Software Foundation; either version\r
++ * 2 of the License, or (at your option) any later version. \r
++ */\r
++\r
++#include <stdint.h>\r
++\r
++#include "crc.h"\r
++\r
++static const uint32_t crc32_tab[] = {\r
++      0x00000000L, 0x77073096L, 0xee0e612cL, 0x990951baL, 0x076dc419L,\r
++      0x706af48fL, 0xe963a535L, 0x9e6495a3L, 0x0edb8832L, 0x79dcb8a4L,\r
++      0xe0d5e91eL, 0x97d2d988L, 0x09b64c2bL, 0x7eb17cbdL, 0xe7b82d07L,\r
++      0x90bf1d91L, 0x1db71064L, 0x6ab020f2L, 0xf3b97148L, 0x84be41deL,\r
++      0x1adad47dL, 0x6ddde4ebL, 0xf4d4b551L, 0x83d385c7L, 0x136c9856L,\r
++      0x646ba8c0L, 0xfd62f97aL, 0x8a65c9ecL, 0x14015c4fL, 0x63066cd9L,\r
++      0xfa0f3d63L, 0x8d080df5L, 0x3b6e20c8L, 0x4c69105eL, 0xd56041e4L,\r
++      0xa2677172L, 0x3c03e4d1L, 0x4b04d447L, 0xd20d85fdL, 0xa50ab56bL,\r
++      0x35b5a8faL, 0x42b2986cL, 0xdbbbc9d6L, 0xacbcf940L, 0x32d86ce3L,\r
++      0x45df5c75L, 0xdcd60dcfL, 0xabd13d59L, 0x26d930acL, 0x51de003aL,\r
++      0xc8d75180L, 0xbfd06116L, 0x21b4f4b5L, 0x56b3c423L, 0xcfba9599L,\r
++      0xb8bda50fL, 0x2802b89eL, 0x5f058808L, 0xc60cd9b2L, 0xb10be924L,\r
++      0x2f6f7c87L, 0x58684c11L, 0xc1611dabL, 0xb6662d3dL, 0x76dc4190L,\r
++      0x01db7106L, 0x98d220bcL, 0xefd5102aL, 0x71b18589L, 0x06b6b51fL,\r
++      0x9fbfe4a5L, 0xe8b8d433L, 0x7807c9a2L, 0x0f00f934L, 0x9609a88eL,\r
++      0xe10e9818L, 0x7f6a0dbbL, 0x086d3d2dL, 0x91646c97L, 0xe6635c01L,\r
++      0x6b6b51f4L, 0x1c6c6162L, 0x856530d8L, 0xf262004eL, 0x6c0695edL,\r
++      0x1b01a57bL, 0x8208f4c1L, 0xf50fc457L, 0x65b0d9c6L, 0x12b7e950L,\r
++      0x8bbeb8eaL, 0xfcb9887cL, 0x62dd1ddfL, 0x15da2d49L, 0x8cd37cf3L,\r
++      0xfbd44c65L, 0x4db26158L, 0x3ab551ceL, 0xa3bc0074L, 0xd4bb30e2L,\r
++      0x4adfa541L, 0x3dd895d7L, 0xa4d1c46dL, 0xd3d6f4fbL, 0x4369e96aL,\r
++      0x346ed9fcL, 0xad678846L, 0xda60b8d0L, 0x44042d73L, 0x33031de5L,\r
++      0xaa0a4c5fL, 0xdd0d7cc9L, 0x5005713cL, 0x270241aaL, 0xbe0b1010L,\r
++      0xc90c2086L, 0x5768b525L, 0x206f85b3L, 0xb966d409L, 0xce61e49fL,\r
++      0x5edef90eL, 0x29d9c998L, 0xb0d09822L, 0xc7d7a8b4L, 0x59b33d17L,\r
++      0x2eb40d81L, 0xb7bd5c3bL, 0xc0ba6cadL, 0xedb88320L, 0x9abfb3b6L,\r
++      0x03b6e20cL, 0x74b1d29aL, 0xead54739L, 0x9dd277afL, 0x04db2615L,\r
++      0x73dc1683L, 0xe3630b12L, 0x94643b84L, 0x0d6d6a3eL, 0x7a6a5aa8L,\r
++      0xe40ecf0bL, 0x9309ff9dL, 0x0a00ae27L, 0x7d079eb1L, 0xf00f9344L,\r
++      0x8708a3d2L, 0x1e01f268L, 0x6906c2feL, 0xf762575dL, 0x806567cbL,\r
++      0x196c3671L, 0x6e6b06e7L, 0xfed41b76L, 0x89d32be0L, 0x10da7a5aL,\r
++      0x67dd4accL, 0xf9b9df6fL, 0x8ebeeff9L, 0x17b7be43L, 0x60b08ed5L,\r
++      0xd6d6a3e8L, 0xa1d1937eL, 0x38d8c2c4L, 0x4fdff252L, 0xd1bb67f1L,\r
++      0xa6bc5767L, 0x3fb506ddL, 0x48b2364bL, 0xd80d2bdaL, 0xaf0a1b4cL,\r
++      0x36034af6L, 0x41047a60L, 0xdf60efc3L, 0xa867df55L, 0x316e8eefL,\r
++      0x4669be79L, 0xcb61b38cL, 0xbc66831aL, 0x256fd2a0L, 0x5268e236L,\r
++      0xcc0c7795L, 0xbb0b4703L, 0x220216b9L, 0x5505262fL, 0xc5ba3bbeL,\r
++      0xb2bd0b28L, 0x2bb45a92L, 0x5cb36a04L, 0xc2d7ffa7L, 0xb5d0cf31L,\r
++      0x2cd99e8bL, 0x5bdeae1dL, 0x9b64c2b0L, 0xec63f226L, 0x756aa39cL,\r
++      0x026d930aL, 0x9c0906a9L, 0xeb0e363fL, 0x72076785L, 0x05005713L,\r
++      0x95bf4a82L, 0xe2b87a14L, 0x7bb12baeL, 0x0cb61b38L, 0x92d28e9bL,\r
++      0xe5d5be0dL, 0x7cdcefb7L, 0x0bdbdf21L, 0x86d3d2d4L, 0xf1d4e242L,\r
++      0x68ddb3f8L, 0x1fda836eL, 0x81be16cdL, 0xf6b9265bL, 0x6fb077e1L,\r
++      0x18b74777L, 0x88085ae6L, 0xff0f6a70L, 0x66063bcaL, 0x11010b5cL,\r
++      0x8f659effL, 0xf862ae69L, 0x616bffd3L, 0x166ccf45L, 0xa00ae278L,\r
++      0xd70dd2eeL, 0x4e048354L, 0x3903b3c2L, 0xa7672661L, 0xd06016f7L,\r
++      0x4969474dL, 0x3e6e77dbL, 0xaed16a4aL, 0xd9d65adcL, 0x40df0b66L,\r
++      0x37d83bf0L, 0xa9bcae53L, 0xdebb9ec5L, 0x47b2cf7fL, 0x30b5ffe9L,\r
++      0xbdbdf21cL, 0xcabac28aL, 0x53b39330L, 0x24b4a3a6L, 0xbad03605L,\r
++      0xcdd70693L, 0x54de5729L, 0x23d967bfL, 0xb3667a2eL, 0xc4614ab8L,\r
++      0x5d681b02L, 0x2a6f2b94L, 0xb40bbe37L, 0xc30c8ea1L, 0x5a05df1bL,\r
++      0x2d02ef8dL\r
++   };\r
++\r
++uint32_t crc32(uint8_t *s, uint32_t len)\r
++{\r
++      uint32_t i, val = 0;\r
++\r
++      for (i = 0;  i < len;  i++) {\r
++              val = crc32_tab[(val^s[i]) & 0xff] ^ (val >> 8);\r
++      }\r
++      return val;\r
++}\r
++\r
+diff -uN fis.orig/crc.h fis/crc.h
+--- fis.orig/crc.h     1970-01-01 10:00:00.000000000 +1000
++++ fis/crc.h  2008-04-01 11:39:13.000000000 +1100
+@@ -0,0 +1,25 @@
++/*
++ * crc.h
++ *
++ * $Id: crc.h,v 1.1 2006/02/13 09:58:08 andrzej Exp $
++ *
++ * Gary S. Brown's CRC - header. 
++ *
++ * Copyright (C) 2006 Ekiert sp z o.o.
++ * Author: Andrzej Ekiert <a.ekiert@ekiert.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. 
++ */
++
++#ifndef CRC_H
++#define CRC_H
++
++#include <stdint.h>
++
++uint32_t crc32(uint8_t *s, uint32_t len);
++
++#endif //CRC_H
++
+diff -uN fis.orig/fis.c fis/fis.c
+--- fis.orig/fis.c     2007-05-03 06:42:51.000000000 +1000
++++ fis/fis.c  2008-04-01 11:52:11.000000000 +1100
+@@ -30,6 +30,7 @@
+ #include <sys/stat.h>
+ #include <fcntl.h>
++#include "crc.h"
+ // Report an error and terminate:
+@@ -141,8 +142,8 @@
+ static void dump_desc(FILE* f, const struct fis_image_desc* d)
+ {
+-  fprintf(f,"%16s: addr = 0x%08x, size = 0x%08x\n",
+-             d->name,     d->flash_base, d->size);
++  fprintf(f,"%16s: flash addr = 0x%08x, mem addr = 0x%08x, size = 0x%08x, checksum = 0x%08x\n",
++             d->name, d->flash_base, d->mem_base, d->size, d->file_cksum);
+   for (unsigned int i=0; i<(sizeof(d->skips)/4); ++i) {
+     if (d->skips[i]==0x736b6970 || d->skips[i]==0x70696b73) { // "skip"
+       uint32_t offset = d->skips[i+1];
+@@ -332,6 +333,7 @@
+   d->size        = swap_end_32(d->size);
+   d->entry_point = swap_end_32(d->entry_point);
+   d->data_length = swap_end_32(d->data_length);
++  d->file_cksum  = swap_end_32(d->file_cksum);
+   for (unsigned int i=0; i<(sizeof(d->skips)/4); ++i) {
+     d->skips[i] = swap_end_32(d->skips[i]);
+   }
+@@ -446,19 +448,25 @@
+     char* arg=argv[i];
+     if (strcmp(arg,"-l")==0) {
+       if (i==argc-1) {
+-        fatal("argumnet missing for -l");
++        fatal("argument missing for -l");
+       }
+       ++i;
+       d->size = str_to_int_maybe_hex(argv[i]);
+     } else if (strcmp(arg,"-f")==0) {
+       if (i==argc-1) {
+-        fatal("argumnet missing for -f");
++        fatal("argument missing for -f");
+       }
+       ++i;
+       d->flash_base = str_to_int_maybe_hex(argv[i]);
++    } else if (strcmp(arg,"-m")==0) {
++      if (i==argc-1) {
++        fatal("argument missing for -m");
++      }
++      ++i;
++      d->mem_base = str_to_int_maybe_hex(argv[i]);
+     } else if (strcmp(arg,"-n")==0) {
+       if (i==argc-1) {
+-        fatal("argumnet missing for -n");
++        fatal("argument missing for -n");
+       }
+       ++i;
+       char* name = argv[i];
+@@ -499,6 +507,66 @@
+   save_dir(fd,offset,size,swap_endianness,dir);
+ }
++static void fis_checksum(const char* device, int offset, int size, bool swap_endianness,
++                       int argc, char* argv[])
++{
++  char* name = NULL;
++  char* filename = NULL;
++
++  for (int i=0; i<argc; ++i) {
++    char* arg=argv[i];
++    if (strcmp(arg,"-f")==0) {
++      if (i==argc-1) {
++        fatal("argument missing for -f");
++      }
++      ++i;
++      filename = argv[i];
++    } else if (strcmp(arg,"-n")==0) {
++      if (i==argc-1) {
++        fatal("argument missing for -n");
++      }
++      ++i;
++      name = argv[i];
++      if (strlen(name)>=16) {
++        fatal("name too long, max 16 chars including terminating null");
++      }
++    } else {
++      fputs("Unrecognised option '",stderr);
++      fputs(arg,stderr);
++      fputs("'\n",stderr);
++      exit(1);
++    }
++  }
++
++  if (name == NULL || filename == NULL)
++    fatal("filename and partition name must be specified");
++
++  int fd;
++  char *buf;
++  struct stat stat_buf;
++  uint32_t crc;
++
++  CHECK(fd=open(filename,O_RDONLY),-1);
++  CHECK(stat(filename, &stat_buf),-1);
++  buf = (char*)chk_malloc(stat_buf.st_size);
++  CHECK(read(fd,buf,stat_buf.st_size),-1);
++  crc = crc32(buf,stat_buf.st_size);
++  close(fd);
++  free(buf);
++
++  CHECK(fd=open(device,O_RDWR),-1);
++  dir_t dir;
++  load_dir(fd,offset,&size,swap_endianness,&dir);
++  iter_t after = NULL;
++  FOR_EACH_DIR_ENTRY(dir,i) {
++    if (strcmp(get(i)->name, name) == 0) {
++      get(i)->file_cksum = crc;
++      get(i)->data_length = stat_buf.st_size;
++      break;
++    }
++  }
++  save_dir(fd,offset,size,swap_endianness,dir);
++}
+ static void fis_delete(const char* device, int offset, int size, bool swap_endianness,
+                        char* name)
+@@ -526,8 +594,9 @@
+   fputs("Usage:\n"
+         "  fis [options] list\n"
+         "  fis [options] init\n"
+-        "  fis [options] create -f address -l size -n name\n"
++        "  fis [options] create -f address -l size -n name [-m memory_address]\n"
+         "  fis [options] delete name\n"
++        "  fis [options] checksum -f filename -n name\n"
+         "Options:\n"
+         "  -d device    specify /dev/mtd* device containing directory\n"
+         "  -o offset    specify offset into device of start of directory\n"
+@@ -597,9 +666,14 @@
+         fis_create(device,offset,size,swap_endianness,
+                    argc-i-1,&argv[i+1]);
+         break;
++      } else if (strcmp(arg,"checksum")==0) {
++        check_dev(device);
++        fis_checksum(device,offset,size,swap_endianness,
++                   argc-i-1,&argv[i+1]);
++        break;
+       } else if (strcmp(arg,"delete")==0) {
+         if (i!=argc-2) {
+-          fatal("Exactly one argumnet required after 'delete'");
++          fatal("Exactly one argument required after 'delete'");
+         }
+         ++i;
+         char* name = argv[i];
diff --git a/package/fis/0003-list_output.patch b/package/fis/0003-list_output.patch
new file mode 100644 (file)
index 0000000..6c1e4eb
--- /dev/null
@@ -0,0 +1,21 @@
+--- fis.orig/fis.c     2010-05-12 10:22:10.000000000 -0700
++++ fis/fis.c  2010-05-12 10:19:24.000000000 -0700
+@@ -142,8 +142,8 @@
+ static void dump_desc(FILE* f, const struct fis_image_desc* d)
+ {
+-  fprintf(f,"%16s: flash addr = 0x%08x, mem addr = 0x%08x, size = 0x%08x, checksum = 0x%08x\n",
+-             d->name, d->flash_base, d->mem_base, d->size, d->file_cksum);
++  fprintf(f,"%-16s  0x%08x  0x%08x  0x%08x  0x%08x  0x%08x\n",
++             d->name, d->flash_base, d->mem_base, d->size, d->entry_point, d->file_cksum);
+   for (unsigned int i=0; i<(sizeof(d->skips)/4); ++i) {
+     if (d->skips[i]==0x736b6970 || d->skips[i]==0x70696b73) { // "skip"
+       uint32_t offset = d->skips[i+1];
+@@ -400,6 +400,7 @@
+   CHECK(fd=open(device,O_RDONLY),-1);
+   dir_t dir;
+   load_dir(fd,offset,&size,swap_endianness,&dir);
++  fprintf(stdout,"Name              FLASH addr  Mem addr    Length      Entry point Checksum\n");
+   FOR_EACH_DIR_ENTRY(dir,i) {
+     dump_desc(stdout,get(i));
+   }
diff --git a/package/fis/0004-sorted_list.patch b/package/fis/0004-sorted_list.patch
new file mode 100644 (file)
index 0000000..6854977
--- /dev/null
@@ -0,0 +1,30 @@
+--- fis.orig/fis.c     2010-05-12 11:09:22.000000000 -0700
++++ fis/fis.c  2010-05-12 11:05:45.000000000 -0700
+@@ -401,9 +401,24 @@
+   dir_t dir;
+   load_dir(fd,offset,&size,swap_endianness,&dir);
+   fprintf(stdout,"Name              FLASH addr  Mem addr    Length      Entry point Checksum\n");
+-  FOR_EACH_DIR_ENTRY(dir,i) {
+-    dump_desc(stdout,get(i));
+-  }
++  uint32_t last_addr = 0;
++  bool image_found;
++  do {
++    uint32_t lowest_addr = 0xffffffff;
++    iter_t index;
++    image_found = false;
++    FOR_EACH_DIR_ENTRY(dir,i) {
++      const struct fis_image_desc *d = get(i);
++      if ((d->flash_base >= last_addr) && (d->flash_base < lowest_addr)) {
++        lowest_addr = d->flash_base;
++        image_found = true;
++        index = i;
++      }
++    }
++    if (image_found)
++      dump_desc(stdout,get(index));
++    last_addr = lowest_addr + 1;
++  } while (image_found == true);
+ }
diff --git a/package/fis/fis-001-checksum.patch b/package/fis/fis-001-checksum.patch
deleted file mode 100644 (file)
index a6325eb..0000000
+++ /dev/null
@@ -1,274 +0,0 @@
-diff -uN fis.orig/crc.c fis/crc.c
---- fis.orig/crc.c     1970-01-01 10:00:00.000000000 +1000
-+++ fis/crc.c  2008-04-01 11:39:13.000000000 +1100
-@@ -0,0 +1,88 @@
-+/*\r
-+ * crc.c\r
-+ *\r
-+ * $Id: crc.c,v 1.1 2006/02/13 09:58:08 andrzej Exp $\r
-+ *\r
-+ * Gary S. Brown's CRC\r
-+ * Code based on Gary S. Brown CRC (1986). \r
-+ * Generation polynomial is:\r
-+ *   X^32+X^26+X^23+X^22+X^16+X^12+X^11+X^10+X^8+X^7+X^5+X^4+X^2+X^1+X^0 \r
-+ *\r
-+ * Copyright (C) 2006 Ekiert sp z o.o.\r
-+ * Author: Andrzej Ekiert <a.ekiert@ekiert.com>\r
-+ *\r
-+ * This program is free software; you can redistribute it and/or\r
-+ * modify it under the terms of the GNU General Public License\r
-+ * as published by the Free Software Foundation; either version\r
-+ * 2 of the License, or (at your option) any later version. \r
-+ */\r
-+\r
-+#include <stdint.h>\r
-+\r
-+#include "crc.h"\r
-+\r
-+static const uint32_t crc32_tab[] = {\r
-+      0x00000000L, 0x77073096L, 0xee0e612cL, 0x990951baL, 0x076dc419L,\r
-+      0x706af48fL, 0xe963a535L, 0x9e6495a3L, 0x0edb8832L, 0x79dcb8a4L,\r
-+      0xe0d5e91eL, 0x97d2d988L, 0x09b64c2bL, 0x7eb17cbdL, 0xe7b82d07L,\r
-+      0x90bf1d91L, 0x1db71064L, 0x6ab020f2L, 0xf3b97148L, 0x84be41deL,\r
-+      0x1adad47dL, 0x6ddde4ebL, 0xf4d4b551L, 0x83d385c7L, 0x136c9856L,\r
-+      0x646ba8c0L, 0xfd62f97aL, 0x8a65c9ecL, 0x14015c4fL, 0x63066cd9L,\r
-+      0xfa0f3d63L, 0x8d080df5L, 0x3b6e20c8L, 0x4c69105eL, 0xd56041e4L,\r
-+      0xa2677172L, 0x3c03e4d1L, 0x4b04d447L, 0xd20d85fdL, 0xa50ab56bL,\r
-+      0x35b5a8faL, 0x42b2986cL, 0xdbbbc9d6L, 0xacbcf940L, 0x32d86ce3L,\r
-+      0x45df5c75L, 0xdcd60dcfL, 0xabd13d59L, 0x26d930acL, 0x51de003aL,\r
-+      0xc8d75180L, 0xbfd06116L, 0x21b4f4b5L, 0x56b3c423L, 0xcfba9599L,\r
-+      0xb8bda50fL, 0x2802b89eL, 0x5f058808L, 0xc60cd9b2L, 0xb10be924L,\r
-+      0x2f6f7c87L, 0x58684c11L, 0xc1611dabL, 0xb6662d3dL, 0x76dc4190L,\r
-+      0x01db7106L, 0x98d220bcL, 0xefd5102aL, 0x71b18589L, 0x06b6b51fL,\r
-+      0x9fbfe4a5L, 0xe8b8d433L, 0x7807c9a2L, 0x0f00f934L, 0x9609a88eL,\r
-+      0xe10e9818L, 0x7f6a0dbbL, 0x086d3d2dL, 0x91646c97L, 0xe6635c01L,\r
-+      0x6b6b51f4L, 0x1c6c6162L, 0x856530d8L, 0xf262004eL, 0x6c0695edL,\r
-+      0x1b01a57bL, 0x8208f4c1L, 0xf50fc457L, 0x65b0d9c6L, 0x12b7e950L,\r
-+      0x8bbeb8eaL, 0xfcb9887cL, 0x62dd1ddfL, 0x15da2d49L, 0x8cd37cf3L,\r
-+      0xfbd44c65L, 0x4db26158L, 0x3ab551ceL, 0xa3bc0074L, 0xd4bb30e2L,\r
-+      0x4adfa541L, 0x3dd895d7L, 0xa4d1c46dL, 0xd3d6f4fbL, 0x4369e96aL,\r
-+      0x346ed9fcL, 0xad678846L, 0xda60b8d0L, 0x44042d73L, 0x33031de5L,\r
-+      0xaa0a4c5fL, 0xdd0d7cc9L, 0x5005713cL, 0x270241aaL, 0xbe0b1010L,\r
-+      0xc90c2086L, 0x5768b525L, 0x206f85b3L, 0xb966d409L, 0xce61e49fL,\r
-+      0x5edef90eL, 0x29d9c998L, 0xb0d09822L, 0xc7d7a8b4L, 0x59b33d17L,\r
-+      0x2eb40d81L, 0xb7bd5c3bL, 0xc0ba6cadL, 0xedb88320L, 0x9abfb3b6L,\r
-+      0x03b6e20cL, 0x74b1d29aL, 0xead54739L, 0x9dd277afL, 0x04db2615L,\r
-+      0x73dc1683L, 0xe3630b12L, 0x94643b84L, 0x0d6d6a3eL, 0x7a6a5aa8L,\r
-+      0xe40ecf0bL, 0x9309ff9dL, 0x0a00ae27L, 0x7d079eb1L, 0xf00f9344L,\r
-+      0x8708a3d2L, 0x1e01f268L, 0x6906c2feL, 0xf762575dL, 0x806567cbL,\r
-+      0x196c3671L, 0x6e6b06e7L, 0xfed41b76L, 0x89d32be0L, 0x10da7a5aL,\r
-+      0x67dd4accL, 0xf9b9df6fL, 0x8ebeeff9L, 0x17b7be43L, 0x60b08ed5L,\r
-+      0xd6d6a3e8L, 0xa1d1937eL, 0x38d8c2c4L, 0x4fdff252L, 0xd1bb67f1L,\r
-+      0xa6bc5767L, 0x3fb506ddL, 0x48b2364bL, 0xd80d2bdaL, 0xaf0a1b4cL,\r
-+      0x36034af6L, 0x41047a60L, 0xdf60efc3L, 0xa867df55L, 0x316e8eefL,\r
-+      0x4669be79L, 0xcb61b38cL, 0xbc66831aL, 0x256fd2a0L, 0x5268e236L,\r
-+      0xcc0c7795L, 0xbb0b4703L, 0x220216b9L, 0x5505262fL, 0xc5ba3bbeL,\r
-+      0xb2bd0b28L, 0x2bb45a92L, 0x5cb36a04L, 0xc2d7ffa7L, 0xb5d0cf31L,\r
-+      0x2cd99e8bL, 0x5bdeae1dL, 0x9b64c2b0L, 0xec63f226L, 0x756aa39cL,\r
-+      0x026d930aL, 0x9c0906a9L, 0xeb0e363fL, 0x72076785L, 0x05005713L,\r
-+      0x95bf4a82L, 0xe2b87a14L, 0x7bb12baeL, 0x0cb61b38L, 0x92d28e9bL,\r
-+      0xe5d5be0dL, 0x7cdcefb7L, 0x0bdbdf21L, 0x86d3d2d4L, 0xf1d4e242L,\r
-+      0x68ddb3f8L, 0x1fda836eL, 0x81be16cdL, 0xf6b9265bL, 0x6fb077e1L,\r
-+      0x18b74777L, 0x88085ae6L, 0xff0f6a70L, 0x66063bcaL, 0x11010b5cL,\r
-+      0x8f659effL, 0xf862ae69L, 0x616bffd3L, 0x166ccf45L, 0xa00ae278L,\r
-+      0xd70dd2eeL, 0x4e048354L, 0x3903b3c2L, 0xa7672661L, 0xd06016f7L,\r
-+      0x4969474dL, 0x3e6e77dbL, 0xaed16a4aL, 0xd9d65adcL, 0x40df0b66L,\r
-+      0x37d83bf0L, 0xa9bcae53L, 0xdebb9ec5L, 0x47b2cf7fL, 0x30b5ffe9L,\r
-+      0xbdbdf21cL, 0xcabac28aL, 0x53b39330L, 0x24b4a3a6L, 0xbad03605L,\r
-+      0xcdd70693L, 0x54de5729L, 0x23d967bfL, 0xb3667a2eL, 0xc4614ab8L,\r
-+      0x5d681b02L, 0x2a6f2b94L, 0xb40bbe37L, 0xc30c8ea1L, 0x5a05df1bL,\r
-+      0x2d02ef8dL\r
-+   };\r
-+\r
-+uint32_t crc32(uint8_t *s, uint32_t len)\r
-+{\r
-+      uint32_t i, val = 0;\r
-+\r
-+      for (i = 0;  i < len;  i++) {\r
-+              val = crc32_tab[(val^s[i]) & 0xff] ^ (val >> 8);\r
-+      }\r
-+      return val;\r
-+}\r
-+\r
-diff -uN fis.orig/crc.h fis/crc.h
---- fis.orig/crc.h     1970-01-01 10:00:00.000000000 +1000
-+++ fis/crc.h  2008-04-01 11:39:13.000000000 +1100
-@@ -0,0 +1,25 @@
-+/*
-+ * crc.h
-+ *
-+ * $Id: crc.h,v 1.1 2006/02/13 09:58:08 andrzej Exp $
-+ *
-+ * Gary S. Brown's CRC - header. 
-+ *
-+ * Copyright (C) 2006 Ekiert sp z o.o.
-+ * Author: Andrzej Ekiert <a.ekiert@ekiert.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. 
-+ */
-+
-+#ifndef CRC_H
-+#define CRC_H
-+
-+#include <stdint.h>
-+
-+uint32_t crc32(uint8_t *s, uint32_t len);
-+
-+#endif //CRC_H
-+
-diff -uN fis.orig/fis.c fis/fis.c
---- fis.orig/fis.c     2007-05-03 06:42:51.000000000 +1000
-+++ fis/fis.c  2008-04-01 11:52:11.000000000 +1100
-@@ -30,6 +30,7 @@
- #include <sys/stat.h>
- #include <fcntl.h>
-+#include "crc.h"
- // Report an error and terminate:
-@@ -141,8 +142,8 @@
- static void dump_desc(FILE* f, const struct fis_image_desc* d)
- {
--  fprintf(f,"%16s: addr = 0x%08x, size = 0x%08x\n",
--             d->name,     d->flash_base, d->size);
-+  fprintf(f,"%16s: flash addr = 0x%08x, mem addr = 0x%08x, size = 0x%08x, checksum = 0x%08x\n",
-+             d->name, d->flash_base, d->mem_base, d->size, d->file_cksum);
-   for (unsigned int i=0; i<(sizeof(d->skips)/4); ++i) {
-     if (d->skips[i]==0x736b6970 || d->skips[i]==0x70696b73) { // "skip"
-       uint32_t offset = d->skips[i+1];
-@@ -332,6 +333,7 @@
-   d->size        = swap_end_32(d->size);
-   d->entry_point = swap_end_32(d->entry_point);
-   d->data_length = swap_end_32(d->data_length);
-+  d->file_cksum  = swap_end_32(d->file_cksum);
-   for (unsigned int i=0; i<(sizeof(d->skips)/4); ++i) {
-     d->skips[i] = swap_end_32(d->skips[i]);
-   }
-@@ -446,19 +448,25 @@
-     char* arg=argv[i];
-     if (strcmp(arg,"-l")==0) {
-       if (i==argc-1) {
--        fatal("argumnet missing for -l");
-+        fatal("argument missing for -l");
-       }
-       ++i;
-       d->size = str_to_int_maybe_hex(argv[i]);
-     } else if (strcmp(arg,"-f")==0) {
-       if (i==argc-1) {
--        fatal("argumnet missing for -f");
-+        fatal("argument missing for -f");
-       }
-       ++i;
-       d->flash_base = str_to_int_maybe_hex(argv[i]);
-+    } else if (strcmp(arg,"-m")==0) {
-+      if (i==argc-1) {
-+        fatal("argument missing for -m");
-+      }
-+      ++i;
-+      d->mem_base = str_to_int_maybe_hex(argv[i]);
-     } else if (strcmp(arg,"-n")==0) {
-       if (i==argc-1) {
--        fatal("argumnet missing for -n");
-+        fatal("argument missing for -n");
-       }
-       ++i;
-       char* name = argv[i];
-@@ -499,6 +507,66 @@
-   save_dir(fd,offset,size,swap_endianness,dir);
- }
-+static void fis_checksum(const char* device, int offset, int size, bool swap_endianness,
-+                       int argc, char* argv[])
-+{
-+  char* name = NULL;
-+  char* filename = NULL;
-+
-+  for (int i=0; i<argc; ++i) {
-+    char* arg=argv[i];
-+    if (strcmp(arg,"-f")==0) {
-+      if (i==argc-1) {
-+        fatal("argument missing for -f");
-+      }
-+      ++i;
-+      filename = argv[i];
-+    } else if (strcmp(arg,"-n")==0) {
-+      if (i==argc-1) {
-+        fatal("argument missing for -n");
-+      }
-+      ++i;
-+      name = argv[i];
-+      if (strlen(name)>=16) {
-+        fatal("name too long, max 16 chars including terminating null");
-+      }
-+    } else {
-+      fputs("Unrecognised option '",stderr);
-+      fputs(arg,stderr);
-+      fputs("'\n",stderr);
-+      exit(1);
-+    }
-+  }
-+
-+  if (name == NULL || filename == NULL)
-+    fatal("filename and partition name must be specified");
-+
-+  int fd;
-+  char *buf;
-+  struct stat stat_buf;
-+  uint32_t crc;
-+
-+  CHECK(fd=open(filename,O_RDONLY),-1);
-+  CHECK(stat(filename, &stat_buf),-1);
-+  buf = (char*)chk_malloc(stat_buf.st_size);
-+  CHECK(read(fd,buf,stat_buf.st_size),-1);
-+  crc = crc32(buf,stat_buf.st_size);
-+  close(fd);
-+  free(buf);
-+
-+  CHECK(fd=open(device,O_RDWR),-1);
-+  dir_t dir;
-+  load_dir(fd,offset,&size,swap_endianness,&dir);
-+  iter_t after = NULL;
-+  FOR_EACH_DIR_ENTRY(dir,i) {
-+    if (strcmp(get(i)->name, name) == 0) {
-+      get(i)->file_cksum = crc;
-+      get(i)->data_length = stat_buf.st_size;
-+      break;
-+    }
-+  }
-+  save_dir(fd,offset,size,swap_endianness,dir);
-+}
- static void fis_delete(const char* device, int offset, int size, bool swap_endianness,
-                        char* name)
-@@ -526,8 +594,9 @@
-   fputs("Usage:\n"
-         "  fis [options] list\n"
-         "  fis [options] init\n"
--        "  fis [options] create -f address -l size -n name\n"
-+        "  fis [options] create -f address -l size -n name [-m memory_address]\n"
-         "  fis [options] delete name\n"
-+        "  fis [options] checksum -f filename -n name\n"
-         "Options:\n"
-         "  -d device    specify /dev/mtd* device containing directory\n"
-         "  -o offset    specify offset into device of start of directory\n"
-@@ -597,9 +666,14 @@
-         fis_create(device,offset,size,swap_endianness,
-                    argc-i-1,&argv[i+1]);
-         break;
-+      } else if (strcmp(arg,"checksum")==0) {
-+        check_dev(device);
-+        fis_checksum(device,offset,size,swap_endianness,
-+                   argc-i-1,&argv[i+1]);
-+        break;
-       } else if (strcmp(arg,"delete")==0) {
-         if (i!=argc-2) {
--          fatal("Exactly one argumnet required after 'delete'");
-+          fatal("Exactly one argument required after 'delete'");
-         }
-         ++i;
-         char* name = argv[i];
diff --git a/package/fis/fis-003-list_output.patch b/package/fis/fis-003-list_output.patch
deleted file mode 100644 (file)
index 6c1e4eb..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
---- fis.orig/fis.c     2010-05-12 10:22:10.000000000 -0700
-+++ fis/fis.c  2010-05-12 10:19:24.000000000 -0700
-@@ -142,8 +142,8 @@
- static void dump_desc(FILE* f, const struct fis_image_desc* d)
- {
--  fprintf(f,"%16s: flash addr = 0x%08x, mem addr = 0x%08x, size = 0x%08x, checksum = 0x%08x\n",
--             d->name, d->flash_base, d->mem_base, d->size, d->file_cksum);
-+  fprintf(f,"%-16s  0x%08x  0x%08x  0x%08x  0x%08x  0x%08x\n",
-+             d->name, d->flash_base, d->mem_base, d->size, d->entry_point, d->file_cksum);
-   for (unsigned int i=0; i<(sizeof(d->skips)/4); ++i) {
-     if (d->skips[i]==0x736b6970 || d->skips[i]==0x70696b73) { // "skip"
-       uint32_t offset = d->skips[i+1];
-@@ -400,6 +400,7 @@
-   CHECK(fd=open(device,O_RDONLY),-1);
-   dir_t dir;
-   load_dir(fd,offset,&size,swap_endianness,&dir);
-+  fprintf(stdout,"Name              FLASH addr  Mem addr    Length      Entry point Checksum\n");
-   FOR_EACH_DIR_ENTRY(dir,i) {
-     dump_desc(stdout,get(i));
-   }
diff --git a/package/fis/fis-004-sorted_list.patch b/package/fis/fis-004-sorted_list.patch
deleted file mode 100644 (file)
index 6854977..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
---- fis.orig/fis.c     2010-05-12 11:09:22.000000000 -0700
-+++ fis/fis.c  2010-05-12 11:05:45.000000000 -0700
-@@ -401,9 +401,24 @@
-   dir_t dir;
-   load_dir(fd,offset,&size,swap_endianness,&dir);
-   fprintf(stdout,"Name              FLASH addr  Mem addr    Length      Entry point Checksum\n");
--  FOR_EACH_DIR_ENTRY(dir,i) {
--    dump_desc(stdout,get(i));
--  }
-+  uint32_t last_addr = 0;
-+  bool image_found;
-+  do {
-+    uint32_t lowest_addr = 0xffffffff;
-+    iter_t index;
-+    image_found = false;
-+    FOR_EACH_DIR_ENTRY(dir,i) {
-+      const struct fis_image_desc *d = get(i);
-+      if ((d->flash_base >= last_addr) && (d->flash_base < lowest_addr)) {
-+        lowest_addr = d->flash_base;
-+        image_found = true;
-+        index = i;
-+      }
-+    }
-+    if (image_found)
-+      dump_desc(stdout,get(index));
-+    last_addr = lowest_addr + 1;
-+  } while (image_found == true);
- }
diff --git a/package/flickcurl/0001-Switch-to-https-for-all-service-endpoints.-HTTP-EOL-.patch b/package/flickcurl/0001-Switch-to-https-for-all-service-endpoints.-HTTP-EOL-.patch
new file mode 100644 (file)
index 0000000..576b611
--- /dev/null
@@ -0,0 +1,40 @@
+From 1f5e208a4709a3030258024ea63834aab41bca3c Mon Sep 17 00:00:00 2001
+From: Dave Beckett <dave@dajobe.org>
+Date: Sat, 31 May 2014 12:10:35 -0700
+Subject: [PATCH] Switch to https for all service endpoints. HTTP EOL
+ 2014-06-27
+
+2014-04-30 Flickr announced that it would be HTTPS only from 2014-06-27
+http://code.flickr.net/2014/04/30/flickr-api-going-ssl-only-on-june-27th-2014/
+
+Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
+---
+ src/common.c | 12 ++++++------
+ 1 file changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/src/common.c b/src/common.c
+index ef05e08..245db18 100644
+--- a/src/common.c
++++ b/src/common.c
+@@ -73,12 +73,12 @@ const char* const flickcurl_home_url_string = "http://librdf.org/flickcurl/";
+ const char* const flickcurl_version_string = VERSION;
+-const char* const flickcurl_flickr_service_uri =  "http://www.flickr.com/services/rest/";
+-const char* const flickcurl_flickr_upload_service_uri =  "http://api.flickr.com/services/upload/";
+-const char* const flickcurl_flickr_replace_service_uri =  "http://api.flickr.com/services/replace/";
+-const char* const flickcurl_flickr_oauth_request_token_uri =  "http://www.flickr.com/services/oauth/request_token";
+-const char* const flickcurl_flickr_oauth_authorize_uri =  "http://www.flickr.com/services/oauth/authorize";
+-const char* const flickcurl_flickr_oauth_access_token_uri =  "http://www.flickr.com/services/oauth/access_token";
++const char* const flickcurl_flickr_service_uri =  "https://api.flickr.com/services/rest/";
++const char* const flickcurl_flickr_upload_service_uri =  "https://up.flickr.com/services/upload/";
++const char* const flickcurl_flickr_replace_service_uri =  "https://up.flickr.com/services/replace/";
++const char* const flickcurl_flickr_oauth_request_token_uri =  "https://api.flickr.com/services/oauth/request_token";
++const char* const flickcurl_flickr_oauth_authorize_uri =  "https://api.flickr.com/services/oauth/authorize";
++const char* const flickcurl_flickr_oauth_access_token_uri =  "https://api.flickr.com/services/oauth/access_token";
+ static void
+-- 
+2.0.0
+
diff --git a/package/flickcurl/0002-Oauth-services-are-on-https-www.flickr.com.patch b/package/flickcurl/0002-Oauth-services-are-on-https-www.flickr.com.patch
new file mode 100644 (file)
index 0000000..1ed9af2
--- /dev/null
@@ -0,0 +1,30 @@
+From 3e65bbfc1c556ac8bd1d30db66d6e63957066b75 Mon Sep 17 00:00:00 2001
+From: Dave Beckett <dave@dajobe.org>
+Date: Sat, 31 May 2014 12:56:22 -0700
+Subject: [PATCH] Oauth services are on https www.flickr.com
+
+Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
+---
+ src/common.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/common.c b/src/common.c
+index 245db18..c697a7d 100644
+--- a/src/common.c
++++ b/src/common.c
+@@ -76,9 +76,9 @@ const char* const flickcurl_version_string = VERSION;
+ const char* const flickcurl_flickr_service_uri =  "https://api.flickr.com/services/rest/";
+ const char* const flickcurl_flickr_upload_service_uri =  "https://up.flickr.com/services/upload/";
+ const char* const flickcurl_flickr_replace_service_uri =  "https://up.flickr.com/services/replace/";
+-const char* const flickcurl_flickr_oauth_request_token_uri =  "https://api.flickr.com/services/oauth/request_token";
+-const char* const flickcurl_flickr_oauth_authorize_uri =  "https://api.flickr.com/services/oauth/authorize";
+-const char* const flickcurl_flickr_oauth_access_token_uri =  "https://api.flickr.com/services/oauth/access_token";
++const char* const flickcurl_flickr_oauth_request_token_uri =  "https://www.flickr.com/services/oauth/request_token";
++const char* const flickcurl_flickr_oauth_authorize_uri =  "https://www.flickr.com/services/oauth/authorize";
++const char* const flickcurl_flickr_oauth_access_token_uri =  "https://www.flickr.com/services/oauth/access_token";
+ static void
+-- 
+2.0.0
+
diff --git a/package/flickcurl/flickcurl-0001-Switch-to-https-for-all-service-endpoints.-HTTP-EOL-.patch b/package/flickcurl/flickcurl-0001-Switch-to-https-for-all-service-endpoints.-HTTP-EOL-.patch
deleted file mode 100644 (file)
index 576b611..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-From 1f5e208a4709a3030258024ea63834aab41bca3c Mon Sep 17 00:00:00 2001
-From: Dave Beckett <dave@dajobe.org>
-Date: Sat, 31 May 2014 12:10:35 -0700
-Subject: [PATCH] Switch to https for all service endpoints. HTTP EOL
- 2014-06-27
-
-2014-04-30 Flickr announced that it would be HTTPS only from 2014-06-27
-http://code.flickr.net/2014/04/30/flickr-api-going-ssl-only-on-june-27th-2014/
-
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- src/common.c | 12 ++++++------
- 1 file changed, 6 insertions(+), 6 deletions(-)
-
-diff --git a/src/common.c b/src/common.c
-index ef05e08..245db18 100644
---- a/src/common.c
-+++ b/src/common.c
-@@ -73,12 +73,12 @@ const char* const flickcurl_home_url_string = "http://librdf.org/flickcurl/";
- const char* const flickcurl_version_string = VERSION;
--const char* const flickcurl_flickr_service_uri =  "http://www.flickr.com/services/rest/";
--const char* const flickcurl_flickr_upload_service_uri =  "http://api.flickr.com/services/upload/";
--const char* const flickcurl_flickr_replace_service_uri =  "http://api.flickr.com/services/replace/";
--const char* const flickcurl_flickr_oauth_request_token_uri =  "http://www.flickr.com/services/oauth/request_token";
--const char* const flickcurl_flickr_oauth_authorize_uri =  "http://www.flickr.com/services/oauth/authorize";
--const char* const flickcurl_flickr_oauth_access_token_uri =  "http://www.flickr.com/services/oauth/access_token";
-+const char* const flickcurl_flickr_service_uri =  "https://api.flickr.com/services/rest/";
-+const char* const flickcurl_flickr_upload_service_uri =  "https://up.flickr.com/services/upload/";
-+const char* const flickcurl_flickr_replace_service_uri =  "https://up.flickr.com/services/replace/";
-+const char* const flickcurl_flickr_oauth_request_token_uri =  "https://api.flickr.com/services/oauth/request_token";
-+const char* const flickcurl_flickr_oauth_authorize_uri =  "https://api.flickr.com/services/oauth/authorize";
-+const char* const flickcurl_flickr_oauth_access_token_uri =  "https://api.flickr.com/services/oauth/access_token";
- static void
--- 
-2.0.0
-
diff --git a/package/flickcurl/flickcurl-0002-Oauth-services-are-on-https-www.flickr.com.patch b/package/flickcurl/flickcurl-0002-Oauth-services-are-on-https-www.flickr.com.patch
deleted file mode 100644 (file)
index 1ed9af2..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-From 3e65bbfc1c556ac8bd1d30db66d6e63957066b75 Mon Sep 17 00:00:00 2001
-From: Dave Beckett <dave@dajobe.org>
-Date: Sat, 31 May 2014 12:56:22 -0700
-Subject: [PATCH] Oauth services are on https www.flickr.com
-
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- src/common.c | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/src/common.c b/src/common.c
-index 245db18..c697a7d 100644
---- a/src/common.c
-+++ b/src/common.c
-@@ -76,9 +76,9 @@ const char* const flickcurl_version_string = VERSION;
- const char* const flickcurl_flickr_service_uri =  "https://api.flickr.com/services/rest/";
- const char* const flickcurl_flickr_upload_service_uri =  "https://up.flickr.com/services/upload/";
- const char* const flickcurl_flickr_replace_service_uri =  "https://up.flickr.com/services/replace/";
--const char* const flickcurl_flickr_oauth_request_token_uri =  "https://api.flickr.com/services/oauth/request_token";
--const char* const flickcurl_flickr_oauth_authorize_uri =  "https://api.flickr.com/services/oauth/authorize";
--const char* const flickcurl_flickr_oauth_access_token_uri =  "https://api.flickr.com/services/oauth/access_token";
-+const char* const flickcurl_flickr_oauth_request_token_uri =  "https://www.flickr.com/services/oauth/request_token";
-+const char* const flickcurl_flickr_oauth_authorize_uri =  "https://www.flickr.com/services/oauth/authorize";
-+const char* const flickcurl_flickr_oauth_access_token_uri =  "https://www.flickr.com/services/oauth/access_token";
- static void
--- 
-2.0.0
-
diff --git a/package/flite/0001-now-honor-DESTDIR-env.-var.patch b/package/flite/0001-now-honor-DESTDIR-env.-var.patch
new file mode 100644 (file)
index 0000000..5972f34
--- /dev/null
@@ -0,0 +1,30 @@
+From 658f3243238efe951f6242fa384e990d77078afc Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Fri, 27 Dec 2013 17:42:39 +0100
+Subject: [PATCH] now honor DESTDIR env. var.
+
+Flite used a handwritten a Makefile which doesn't honor DESTDIR environment
+variable, though it uses autoconf.
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+---
+ config/config.in | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/config/config.in b/config/config.in
+index 914d2bf..43f1a56 100644
+--- a/config/config.in
++++ b/config/config.in
+@@ -49,6 +49,6 @@ include $(TOP)/config/$(langvox).lv
+ prefix        = @prefix@
+ exec_prefix   = @exec_prefix@
+ EXEEXT              = @EXEEXT@
+-INSTALLBINDIR = @bindir@
+-INSTALLLIBDIR = @libdir@
+-INSTALLINCDIR = @includedir@/flite
++INSTALLBINDIR = $(DESTDIR)@bindir@
++INSTALLLIBDIR = $(DESTDIR)@libdir@
++INSTALLINCDIR = $(DESTDIR)@includedir@/flite
+--
+1.8.5.2
+
diff --git a/package/flite/0002-fix-alsa-static.patch b/package/flite/0002-fix-alsa-static.patch
new file mode 100644 (file)
index 0000000..7ed4899
--- /dev/null
@@ -0,0 +1,19 @@
+Use pkg-config to determine alsa link flags. This fixes static linking.
+
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+
+diff -Nuar flite-1.4-release.orig/configure.in flite-1.4-release/configure.in
+--- flite-1.4-release.orig/configure.in        2009-08-14 23:46:38.000000000 +0300
++++ flite-1.4-release/configure.in     2014-04-30 18:52:33.253297236 +0300
+@@ -275,7 +275,10 @@
+                 #endif],
+               [AUDIODRIVER="alsa"
+              AUDIODEFS=-DCST_AUDIO_ALSA
+-               AUDIOLIBS=-lasound])
++               AUDIOLIBS=`pkg-config --libs alsa`
++               if test "$shared" = false; then
++                   AUDIOLIBS=`pkg-config --libs --static alsa`
++               fi])
+ AC_CHECK_HEADER(mmsystem.h,
+             [AUDIODRIVER="wince"
+              AUDIODEFS=-DCST_AUDIO_WINCE
diff --git a/package/flite/flite-0001-now-honor-DESTDIR-env.-var.patch b/package/flite/flite-0001-now-honor-DESTDIR-env.-var.patch
deleted file mode 100644 (file)
index 5972f34..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-From 658f3243238efe951f6242fa384e990d77078afc Mon Sep 17 00:00:00 2001
-From: Samuel Martin <s.martin49@gmail.com>
-Date: Fri, 27 Dec 2013 17:42:39 +0100
-Subject: [PATCH] now honor DESTDIR env. var.
-
-Flite used a handwritten a Makefile which doesn't honor DESTDIR environment
-variable, though it uses autoconf.
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
----
- config/config.in | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/config/config.in b/config/config.in
-index 914d2bf..43f1a56 100644
---- a/config/config.in
-+++ b/config/config.in
-@@ -49,6 +49,6 @@ include $(TOP)/config/$(langvox).lv
- prefix        = @prefix@
- exec_prefix   = @exec_prefix@
- EXEEXT              = @EXEEXT@
--INSTALLBINDIR = @bindir@
--INSTALLLIBDIR = @libdir@
--INSTALLINCDIR = @includedir@/flite
-+INSTALLBINDIR = $(DESTDIR)@bindir@
-+INSTALLLIBDIR = $(DESTDIR)@libdir@
-+INSTALLINCDIR = $(DESTDIR)@includedir@/flite
---
-1.8.5.2
-
diff --git a/package/flite/flite-0002-fix-alsa-static.patch b/package/flite/flite-0002-fix-alsa-static.patch
deleted file mode 100644 (file)
index 7ed4899..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-Use pkg-config to determine alsa link flags. This fixes static linking.
-
-Signed-off-by: Baruch Siach <baruch@tkos.co.il>
-
-diff -Nuar flite-1.4-release.orig/configure.in flite-1.4-release/configure.in
---- flite-1.4-release.orig/configure.in        2009-08-14 23:46:38.000000000 +0300
-+++ flite-1.4-release/configure.in     2014-04-30 18:52:33.253297236 +0300
-@@ -275,7 +275,10 @@
-                 #endif],
-               [AUDIODRIVER="alsa"
-              AUDIODEFS=-DCST_AUDIO_ALSA
--               AUDIOLIBS=-lasound])
-+               AUDIOLIBS=`pkg-config --libs alsa`
-+               if test "$shared" = false; then
-+                   AUDIOLIBS=`pkg-config --libs --static alsa`
-+               fi])
- AC_CHECK_HEADER(mmsystem.h,
-             [AUDIODRIVER="wince"
-              AUDIODEFS=-DCST_AUDIO_WINCE
diff --git a/package/fltk/0001-disable-tests.patch b/package/fltk/0001-disable-tests.patch
new file mode 100644 (file)
index 0000000..9571453
--- /dev/null
@@ -0,0 +1,16 @@
+Disable tests, slower to build and would need host-fltk.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura fltk-1.3.2.orig/Makefile fltk-1.3.2/Makefile
+--- fltk-1.3.2.orig/Makefile   2013-10-27 18:19:39.693208127 -0300
++++ fltk-1.3.2/Makefile        2013-10-27 18:20:08.032136885 -0300
+@@ -18,7 +18,7 @@
+ include makeinclude
+-DIRS = $(IMAGEDIRS) src $(CAIRODIR) fluid test documentation
++DIRS = $(IMAGEDIRS) src $(CAIRODIR) fluid documentation
+ all: makeinclude fltk-config
+       for dir in $(DIRS); do\
diff --git a/package/fltk/0002-jpeg-9.patch b/package/fltk/0002-jpeg-9.patch
new file mode 100644 (file)
index 0000000..11ae85e
--- /dev/null
@@ -0,0 +1,26 @@
+From http://www.fltk.org/str.php?L2920
+However it's not yet applied apparently until bundled jpeg is upgraded.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura fltk-1.3.2.orig/src/Fl_JPEG_Image.cxx fltk-1.3.2/src/Fl_JPEG_Image.cxx
+--- fltk-1.3.2.orig/src/Fl_JPEG_Image.cxx      2014-07-03 12:56:27.731197463 -0300
++++ fltk-1.3.2/src/Fl_JPEG_Image.cxx   2014-07-03 12:56:57.907218257 -0300
+@@ -155,7 +155,7 @@
+   
+   jpeg_create_decompress(&dinfo);
+   jpeg_stdio_src(&dinfo, fp);
+-  jpeg_read_header(&dinfo, 1);
++  jpeg_read_header(&dinfo, TRUE);
+   
+   dinfo.quantize_colors      = (boolean)FALSE;
+   dinfo.out_color_space      = JCS_RGB;
+@@ -333,7 +333,7 @@
+   
+   jpeg_create_decompress(&dinfo);
+   jpeg_mem_src(&dinfo, data);
+-  jpeg_read_header(&dinfo, 1);
++  jpeg_read_header(&dinfo, TRUE);
+   
+   dinfo.quantize_colors      = (boolean)FALSE;
+   dinfo.out_color_space      = JCS_RGB;
diff --git a/package/fltk/fltk-01-disable-tests.patch b/package/fltk/fltk-01-disable-tests.patch
deleted file mode 100644 (file)
index 9571453..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-Disable tests, slower to build and would need host-fltk.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura fltk-1.3.2.orig/Makefile fltk-1.3.2/Makefile
---- fltk-1.3.2.orig/Makefile   2013-10-27 18:19:39.693208127 -0300
-+++ fltk-1.3.2/Makefile        2013-10-27 18:20:08.032136885 -0300
-@@ -18,7 +18,7 @@
- include makeinclude
--DIRS = $(IMAGEDIRS) src $(CAIRODIR) fluid test documentation
-+DIRS = $(IMAGEDIRS) src $(CAIRODIR) fluid documentation
- all: makeinclude fltk-config
-       for dir in $(DIRS); do\
diff --git a/package/fltk/fltk-02-jpeg-9.patch b/package/fltk/fltk-02-jpeg-9.patch
deleted file mode 100644 (file)
index 11ae85e..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-From http://www.fltk.org/str.php?L2920
-However it's not yet applied apparently until bundled jpeg is upgraded.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura fltk-1.3.2.orig/src/Fl_JPEG_Image.cxx fltk-1.3.2/src/Fl_JPEG_Image.cxx
---- fltk-1.3.2.orig/src/Fl_JPEG_Image.cxx      2014-07-03 12:56:27.731197463 -0300
-+++ fltk-1.3.2/src/Fl_JPEG_Image.cxx   2014-07-03 12:56:57.907218257 -0300
-@@ -155,7 +155,7 @@
-   
-   jpeg_create_decompress(&dinfo);
-   jpeg_stdio_src(&dinfo, fp);
--  jpeg_read_header(&dinfo, 1);
-+  jpeg_read_header(&dinfo, TRUE);
-   
-   dinfo.quantize_colors      = (boolean)FALSE;
-   dinfo.out_color_space      = JCS_RGB;
-@@ -333,7 +333,7 @@
-   
-   jpeg_create_decompress(&dinfo);
-   jpeg_mem_src(&dinfo, data);
--  jpeg_read_header(&dinfo, 1);
-+  jpeg_read_header(&dinfo, TRUE);
-   
-   dinfo.quantize_colors      = (boolean)FALSE;
-   dinfo.out_color_space      = JCS_RGB;
diff --git a/package/freerdp/0001-add-support-for-uclibc.patch b/package/freerdp/0001-add-support-for-uclibc.patch
new file mode 100644 (file)
index 0000000..73f9807
--- /dev/null
@@ -0,0 +1,93 @@
+From be615daf41b4bcc61322a987088ee209b5e66c19 Mon Sep 17 00:00:00 2001
+From: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
+Date: Wed, 24 Sep 2014 13:54:15 +0100
+Subject: [PATCH] Add support for uClibc
+
+The stable-1.1 branch of freerdp fails to build when using a uClibc
+toolchain because it's using functions which are not implemented in
+uClibc, like eventfd_read, eventfd_write and futimes. That is causing
+build failures like these ones:
+
+../../libwinpr/synch/libwinpr-synch.so.0.1.0: undefined reference to
+`eventfd_read'
+../../libwinpr/synch/libwinpr-synch.so.0.1.0: undefined reference to
+`eventfd_write'
+
+../../common/libfreerdp-client.so.1.1.0: undefined reference to
+`futimes'
+
+This patch is based on this upstream patch:
+
+  https://github.com/FreeRDP/FreeRDP/commit/5f9c36da5d5cd3c5dce49f7b32fe011cb293f9ec/
+
+Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
+---
+ channels/drive/client/drive_file.c |   12 +++++++++---
+ winpr/libwinpr/synch/event.c       |   14 ++++++++++++++
+ 2 files changed, 23 insertions(+), 3 deletions(-)
+
+diff --git a/channels/drive/client/drive_file.c b/channels/drive/client/drive_file.c
+index 376b4fe..b20f408 100644
+--- a/channels/drive/client/drive_file.c
++++ b/channels/drive/client/drive_file.c
+@@ -480,7 +480,11 @@ BOOL drive_file_set_information(DRIVE_FILE* file, UINT32 FsInformationClass, UIN
+       int status;
+       char* fullpath;
+       struct STAT st;
++#if defined(ANDROID)
+       struct timeval tv[2];
++#else
++      struct timespec tv[2];
++#endif
+       UINT64 LastWriteTime;
+       UINT32 FileAttributes;
+       UINT32 FileNameLength;
+@@ -501,15 +505,17 @@ BOOL drive_file_set_information(DRIVE_FILE* file, UINT32 FsInformationClass, UIN
+                               return FALSE;
+                       tv[0].tv_sec = st.st_atime;
+-                      tv[0].tv_usec = 0;
+                       tv[1].tv_sec = (LastWriteTime > 0 ? FILE_TIME_RDP_TO_SYSTEM(LastWriteTime) : st.st_mtime);
+-                      tv[1].tv_usec = 0;
+ #ifndef WIN32
+ /* TODO on win32 */                        
+ #ifdef ANDROID
++                      tv[0].tv_usec = 0;
++                      tv[1].tv_usec = 0;
+                       utimes(file->fullpath, tv);
+ #else
+-                      futimes(file->fd, tv);
++                      tv[0].tv_nsec = 0;
++                      tv[1].tv_nsec = 0;
++                      futimens(file->fd, tv);
+ #endif
+                       if (FileAttributes > 0)
+diff --git a/winpr/libwinpr/synch/event.c b/winpr/libwinpr/synch/event.c
+index 173afaf..943cccb 100644
+--- a/winpr/libwinpr/synch/event.c
++++ b/winpr/libwinpr/synch/event.c
+@@ -115,6 +115,20 @@ HANDLE OpenEventA(DWORD dwDesiredAccess, BOOL bInheritHandle, LPCSTR lpName)
+       return NULL;
+ }
++#ifdef HAVE_EVENTFD_H
++#if defined(__UCLIBC__)
++static int eventfd_read(int fd, eventfd_t* value)
++{
++      return (read(fd, value, sizeof(*value)) == sizeof(*value)) ? 0 : -1;
++}
++
++static int eventfd_write(int fd, eventfd_t value)
++{
++      return (write(fd, &value, sizeof(value)) == sizeof(value)) ? 0 : -1;
++}
++#endif
++#endif
++
+ BOOL SetEvent(HANDLE hEvent)
+ {
+       ULONG Type;
+-- 
+1.7.1
+
diff --git a/package/freerdp/freerdp-0001-add-support-for-uclibc.patch b/package/freerdp/freerdp-0001-add-support-for-uclibc.patch
deleted file mode 100644 (file)
index 73f9807..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-From be615daf41b4bcc61322a987088ee209b5e66c19 Mon Sep 17 00:00:00 2001
-From: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
-Date: Wed, 24 Sep 2014 13:54:15 +0100
-Subject: [PATCH] Add support for uClibc
-
-The stable-1.1 branch of freerdp fails to build when using a uClibc
-toolchain because it's using functions which are not implemented in
-uClibc, like eventfd_read, eventfd_write and futimes. That is causing
-build failures like these ones:
-
-../../libwinpr/synch/libwinpr-synch.so.0.1.0: undefined reference to
-`eventfd_read'
-../../libwinpr/synch/libwinpr-synch.so.0.1.0: undefined reference to
-`eventfd_write'
-
-../../common/libfreerdp-client.so.1.1.0: undefined reference to
-`futimes'
-
-This patch is based on this upstream patch:
-
-  https://github.com/FreeRDP/FreeRDP/commit/5f9c36da5d5cd3c5dce49f7b32fe011cb293f9ec/
-
-Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
----
- channels/drive/client/drive_file.c |   12 +++++++++---
- winpr/libwinpr/synch/event.c       |   14 ++++++++++++++
- 2 files changed, 23 insertions(+), 3 deletions(-)
-
-diff --git a/channels/drive/client/drive_file.c b/channels/drive/client/drive_file.c
-index 376b4fe..b20f408 100644
---- a/channels/drive/client/drive_file.c
-+++ b/channels/drive/client/drive_file.c
-@@ -480,7 +480,11 @@ BOOL drive_file_set_information(DRIVE_FILE* file, UINT32 FsInformationClass, UIN
-       int status;
-       char* fullpath;
-       struct STAT st;
-+#if defined(ANDROID)
-       struct timeval tv[2];
-+#else
-+      struct timespec tv[2];
-+#endif
-       UINT64 LastWriteTime;
-       UINT32 FileAttributes;
-       UINT32 FileNameLength;
-@@ -501,15 +505,17 @@ BOOL drive_file_set_information(DRIVE_FILE* file, UINT32 FsInformationClass, UIN
-                               return FALSE;
-                       tv[0].tv_sec = st.st_atime;
--                      tv[0].tv_usec = 0;
-                       tv[1].tv_sec = (LastWriteTime > 0 ? FILE_TIME_RDP_TO_SYSTEM(LastWriteTime) : st.st_mtime);
--                      tv[1].tv_usec = 0;
- #ifndef WIN32
- /* TODO on win32 */                        
- #ifdef ANDROID
-+                      tv[0].tv_usec = 0;
-+                      tv[1].tv_usec = 0;
-                       utimes(file->fullpath, tv);
- #else
--                      futimes(file->fd, tv);
-+                      tv[0].tv_nsec = 0;
-+                      tv[1].tv_nsec = 0;
-+                      futimens(file->fd, tv);
- #endif
-                       if (FileAttributes > 0)
-diff --git a/winpr/libwinpr/synch/event.c b/winpr/libwinpr/synch/event.c
-index 173afaf..943cccb 100644
---- a/winpr/libwinpr/synch/event.c
-+++ b/winpr/libwinpr/synch/event.c
-@@ -115,6 +115,20 @@ HANDLE OpenEventA(DWORD dwDesiredAccess, BOOL bInheritHandle, LPCSTR lpName)
-       return NULL;
- }
-+#ifdef HAVE_EVENTFD_H
-+#if defined(__UCLIBC__)
-+static int eventfd_read(int fd, eventfd_t* value)
-+{
-+      return (read(fd, value, sizeof(*value)) == sizeof(*value)) ? 0 : -1;
-+}
-+
-+static int eventfd_write(int fd, eventfd_t value)
-+{
-+      return (write(fd, &value, sizeof(value)) == sizeof(value)) ? 0 : -1;
-+}
-+#endif
-+#endif
-+
- BOOL SetEvent(HANDLE hEvent)
- {
-       ULONG Type;
--- 
-1.7.1
-
diff --git a/package/freescale-imx/gpu-viv-bin-mx6q/0001-correct-HAL-include.patch b/package/freescale-imx/gpu-viv-bin-mx6q/0001-correct-HAL-include.patch
new file mode 100644 (file)
index 0000000..c83cd55
--- /dev/null
@@ -0,0 +1,16 @@
+Correct the directory path for gc_hal_eglplatform_type.h
+
+Signed-off-by: Henk Fijnvandraat <h.fijnvandraat@inter.nl.net>
+
+diff -rup gpu-viv-bin-mx6q-1.1.0-orig/usr/include/gc_vdk_types.h gpu-viv-bin-mx6q-1.1.0/usr/include/gc_vdk_types.h
+--- gpu-viv-bin-mx6q-1.1.0-orig/usr/include/gc_vdk_types.h     2012-12-18 10:35:55.000000000 +0100
++++ gpu-viv-bin-mx6q-1.1.0/usr/include/gc_vdk_types.h  2013-05-09 21:09:28.080138681 +0200
+@@ -39,7 +39,7 @@ extern "C" {
+ #endif
+ #include <EGL/egl.h>
+-#include "gc_hal_eglplatform_type.h"
++#include <HAL/gc_hal_eglplatform_type.h>
+ /*******************************************************************************
diff --git a/package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q-0001-correct-HAL-include.patch b/package/freescale-imx/gpu-viv-bin-mx6q/gpu-viv-bin-mx6q-0001-correct-HAL-include.patch
deleted file mode 100644 (file)
index c83cd55..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-Correct the directory path for gc_hal_eglplatform_type.h
-
-Signed-off-by: Henk Fijnvandraat <h.fijnvandraat@inter.nl.net>
-
-diff -rup gpu-viv-bin-mx6q-1.1.0-orig/usr/include/gc_vdk_types.h gpu-viv-bin-mx6q-1.1.0/usr/include/gc_vdk_types.h
---- gpu-viv-bin-mx6q-1.1.0-orig/usr/include/gc_vdk_types.h     2012-12-18 10:35:55.000000000 +0100
-+++ gpu-viv-bin-mx6q-1.1.0/usr/include/gc_vdk_types.h  2013-05-09 21:09:28.080138681 +0200
-@@ -39,7 +39,7 @@ extern "C" {
- #endif
- #include <EGL/egl.h>
--#include "gc_hal_eglplatform_type.h"
-+#include <HAL/gc_hal_eglplatform_type.h>
- /*******************************************************************************
diff --git a/package/freescale-imx/imx-vpu/0001-vpu-io-fix-IOSystemInit-failure.patch b/package/freescale-imx/imx-vpu/0001-vpu-io-fix-IOSystemInit-failure.patch
new file mode 100644 (file)
index 0000000..ed93193
--- /dev/null
@@ -0,0 +1,32 @@
+[PATCH] vpu-io: fix IOSystemInit failure
+
+When using a kernel where user/kernel split is 3G/1G, the address
+returned by IOGetVirtMem() can appear to be a negative int.
+
+IOSystemInit() incorrectly checks the return value of IOGetVirtMem().
+IOGetVirtMem() returns -1 on error (and not MAP_FAILED, nor any other
+negative value.)
+
+Fix that by correctly checking against -1 (and not MAP_FAILED!)
+
+Signed-off-by: Gary Bisson <bisson.gary@gmail.com>
+[yann.morin.1998@free.fr: expand the commit log]
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+---
+ vpu/vpu_io.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/vpu/vpu_io.c b/vpu/vpu_io.c
+index 8cbb571..14759da 100644
+--- a/vpu/vpu_io.c
++++ b/vpu/vpu_io.c
+@@ -265,7 +265,7 @@ int IOSystemInit(void *callback)
+               goto err;
+       }
+-      if (IOGetVirtMem(&bit_work_addr) <= 0)
++      if (IOGetVirtMem(&bit_work_addr) == -1)
+               goto err;
+ #endif
+       UnlockVpu(vpu_semap);
+
diff --git a/package/freescale-imx/imx-vpu/0002-vpu-lib-fix-IOGetVirtMem-return-value-checks.patch b/package/freescale-imx/imx-vpu/0002-vpu-lib-fix-IOGetVirtMem-return-value-checks.patch
new file mode 100644 (file)
index 0000000..583a508
--- /dev/null
@@ -0,0 +1,59 @@
+[PATCH] vpu-lib: fix IOGetVirtMem return value checks
+
+When using a kernel where user/kernel split is 3G/1G, the address
+returned by IOGetVirtMem() can appear to be a negative int.
+
+IOSystemInit() incorrectly checks the return value of IOGetVirtMem().
+IOGetVirtMem() returns -1 on error (and not MAP_FAILED, nor any other
+negative value.)
+
+Fix that by correctly checking against -1 (and not MAP_FAILED!)
+
+Signed-off-by: Gary Bisson <bisson.gary@gmail.com>
+[yann.morin.1998@free.fr: expand the commit log]
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+---
+ vpu/vpu_lib.c | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/vpu/vpu_lib.c b/vpu/vpu_lib.c
+index 1fb731b..7a7f42d 100644
+--- a/vpu/vpu_lib.c
++++ b/vpu/vpu_lib.c
+@@ -1764,7 +1764,7 @@ RetCode vpu_EncStartOneFrame(EncHandle handle, EncParam * param)
+                               err_msg("Unable to obtain physical mem\n");
+                               return RETCODE_FAILURE;
+                       }
+-                      if (IOGetVirtMem(&pEncInfo->picParaBaseMem) <= 0) {
++                      if (IOGetVirtMem(&pEncInfo->picParaBaseMem) == -1) {
+                               IOFreePhyMem(&pEncInfo->picParaBaseMem);
+                               pEncInfo->picParaBaseMem.phy_addr = 0;
+                               err_msg("Unable to obtain virtual mem\n");
+@@ -2982,7 +2982,7 @@ RetCode vpu_DecGetInitialInfo(DecHandle handle, DecInitialInfo * info)
+                       UnlockVpu(vpu_semap);
+                       return RETCODE_FAILURE;
+               }
+-              if (IOGetVirtMem(&pDecInfo->userDataBufMem) <= 0) {
++              if (IOGetVirtMem(&pDecInfo->userDataBufMem) == -1) {
+                       IOFreePhyMem(&pDecInfo->userDataBufMem);
+                       pDecInfo->userDataBufMem.phy_addr = 0;
+                       err_msg("Unable to obtain virtual mem\n");
+@@ -4017,7 +4017,7 @@ RetCode vpu_DecStartOneFrame(DecHandle handle, DecParam * param)
+                               UnlockVpu(vpu_semap);
+                               return RETCODE_FAILURE;
+                       }
+-                      if (IOGetVirtMem(&pDecInfo->picParaBaseMem) <= 0) {
++                      if (IOGetVirtMem(&pDecInfo->picParaBaseMem) == -1) {
+                               IOFreePhyMem(&pDecInfo->picParaBaseMem);
+                               pDecInfo->picParaBaseMem.phy_addr = 0;
+                               err_msg("Unable to obtain virtual mem\n");
+@@ -4057,7 +4057,7 @@ RetCode vpu_DecStartOneFrame(DecHandle handle, DecParam * param)
+                       UnlockVpu(vpu_semap);
+                       return RETCODE_FAILURE;
+               }
+-              if (IOGetVirtMem(&pDecInfo->userDataBufMem) <= 0) {
++              if (IOGetVirtMem(&pDecInfo->userDataBufMem) == -1) {
+                       IOFreePhyMem(&pDecInfo->userDataBufMem);
+                       pDecInfo->userDataBufMem.phy_addr = 0;
+                       err_msg("Unable to obtain virtual mem\n");
+
diff --git a/package/freescale-imx/imx-vpu/imx-vpu-0001-vpu-io-fix-IOSystemInit-failure.patch b/package/freescale-imx/imx-vpu/imx-vpu-0001-vpu-io-fix-IOSystemInit-failure.patch
deleted file mode 100644 (file)
index ed93193..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-[PATCH] vpu-io: fix IOSystemInit failure
-
-When using a kernel where user/kernel split is 3G/1G, the address
-returned by IOGetVirtMem() can appear to be a negative int.
-
-IOSystemInit() incorrectly checks the return value of IOGetVirtMem().
-IOGetVirtMem() returns -1 on error (and not MAP_FAILED, nor any other
-negative value.)
-
-Fix that by correctly checking against -1 (and not MAP_FAILED!)
-
-Signed-off-by: Gary Bisson <bisson.gary@gmail.com>
-[yann.morin.1998@free.fr: expand the commit log]
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
----
- vpu/vpu_io.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/vpu/vpu_io.c b/vpu/vpu_io.c
-index 8cbb571..14759da 100644
---- a/vpu/vpu_io.c
-+++ b/vpu/vpu_io.c
-@@ -265,7 +265,7 @@ int IOSystemInit(void *callback)
-               goto err;
-       }
--      if (IOGetVirtMem(&bit_work_addr) <= 0)
-+      if (IOGetVirtMem(&bit_work_addr) == -1)
-               goto err;
- #endif
-       UnlockVpu(vpu_semap);
-
diff --git a/package/freescale-imx/imx-vpu/imx-vpu-0002-vpu-lib-fix-IOGetVirtMem-return-value-checks.patch b/package/freescale-imx/imx-vpu/imx-vpu-0002-vpu-lib-fix-IOGetVirtMem-return-value-checks.patch
deleted file mode 100644 (file)
index 583a508..0000000
+++ /dev/null
@@ -1,59 +0,0 @@
-[PATCH] vpu-lib: fix IOGetVirtMem return value checks
-
-When using a kernel where user/kernel split is 3G/1G, the address
-returned by IOGetVirtMem() can appear to be a negative int.
-
-IOSystemInit() incorrectly checks the return value of IOGetVirtMem().
-IOGetVirtMem() returns -1 on error (and not MAP_FAILED, nor any other
-negative value.)
-
-Fix that by correctly checking against -1 (and not MAP_FAILED!)
-
-Signed-off-by: Gary Bisson <bisson.gary@gmail.com>
-[yann.morin.1998@free.fr: expand the commit log]
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
----
- vpu/vpu_lib.c | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/vpu/vpu_lib.c b/vpu/vpu_lib.c
-index 1fb731b..7a7f42d 100644
---- a/vpu/vpu_lib.c
-+++ b/vpu/vpu_lib.c
-@@ -1764,7 +1764,7 @@ RetCode vpu_EncStartOneFrame(EncHandle handle, EncParam * param)
-                               err_msg("Unable to obtain physical mem\n");
-                               return RETCODE_FAILURE;
-                       }
--                      if (IOGetVirtMem(&pEncInfo->picParaBaseMem) <= 0) {
-+                      if (IOGetVirtMem(&pEncInfo->picParaBaseMem) == -1) {
-                               IOFreePhyMem(&pEncInfo->picParaBaseMem);
-                               pEncInfo->picParaBaseMem.phy_addr = 0;
-                               err_msg("Unable to obtain virtual mem\n");
-@@ -2982,7 +2982,7 @@ RetCode vpu_DecGetInitialInfo(DecHandle handle, DecInitialInfo * info)
-                       UnlockVpu(vpu_semap);
-                       return RETCODE_FAILURE;
-               }
--              if (IOGetVirtMem(&pDecInfo->userDataBufMem) <= 0) {
-+              if (IOGetVirtMem(&pDecInfo->userDataBufMem) == -1) {
-                       IOFreePhyMem(&pDecInfo->userDataBufMem);
-                       pDecInfo->userDataBufMem.phy_addr = 0;
-                       err_msg("Unable to obtain virtual mem\n");
-@@ -4017,7 +4017,7 @@ RetCode vpu_DecStartOneFrame(DecHandle handle, DecParam * param)
-                               UnlockVpu(vpu_semap);
-                               return RETCODE_FAILURE;
-                       }
--                      if (IOGetVirtMem(&pDecInfo->picParaBaseMem) <= 0) {
-+                      if (IOGetVirtMem(&pDecInfo->picParaBaseMem) == -1) {
-                               IOFreePhyMem(&pDecInfo->picParaBaseMem);
-                               pDecInfo->picParaBaseMem.phy_addr = 0;
-                               err_msg("Unable to obtain virtual mem\n");
-@@ -4057,7 +4057,7 @@ RetCode vpu_DecStartOneFrame(DecHandle handle, DecParam * param)
-                       UnlockVpu(vpu_semap);
-                       return RETCODE_FAILURE;
-               }
--              if (IOGetVirtMem(&pDecInfo->userDataBufMem) <= 0) {
-+              if (IOGetVirtMem(&pDecInfo->userDataBufMem) == -1) {
-                       IOFreePhyMem(&pDecInfo->userDataBufMem);
-                       pDecInfo->userDataBufMem.phy_addr = 0;
-                       err_msg("Unable to obtain virtual mem\n");
-
diff --git a/package/ftop/0001-overflow.patch b/package/ftop/0001-overflow.patch
new file mode 100644 (file)
index 0000000..a3a27c3
--- /dev/null
@@ -0,0 +1,17 @@
+Set tmp_buf and rate_buf to something ridiculously high to fix a buffer
+overflow when COLUMNS is large. - JeR
+
+(Taken from gentoo portage)
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+--- a/src/ftop.c       2009-02-16 07:00:00.000000000 +0100
++++ b/src/ftop.c       2013-09-06 14:42:41.788852952 +0200
+@@ -736,7 +736,7 @@
+ {
+     size_t i, j, bytes, bar_total;
+     char more_procs_ch, more_files_ch, expanded_ch;
+-    char tmp_buf[80], rate_buf[80];
++    char tmp_buf[2048], rate_buf[2048];
+     char *tmp_str;
+     snapshot *s, *s_prev;
+     file_info *tmp_file;
diff --git a/package/ftop/ftop-0001-overflow.patch b/package/ftop/ftop-0001-overflow.patch
deleted file mode 100644 (file)
index a3a27c3..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-Set tmp_buf and rate_buf to something ridiculously high to fix a buffer
-overflow when COLUMNS is large. - JeR
-
-(Taken from gentoo portage)
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
---- a/src/ftop.c       2009-02-16 07:00:00.000000000 +0100
-+++ b/src/ftop.c       2013-09-06 14:42:41.788852952 +0200
-@@ -736,7 +736,7 @@
- {
-     size_t i, j, bytes, bar_total;
-     char more_procs_ch, more_files_ch, expanded_ch;
--    char tmp_buf[80], rate_buf[80];
-+    char tmp_buf[2048], rate_buf[2048];
-     char *tmp_str;
-     snapshot *s, *s_prev;
-     file_info *tmp_file;
diff --git a/package/gadgetfs-test/0001-fix-usb-ch9-include.patch b/package/gadgetfs-test/0001-fix-usb-ch9-include.patch
new file mode 100644 (file)
index 0000000..3d7ce82
--- /dev/null
@@ -0,0 +1,40 @@
+From 8cf5909c6f8e0a892155dea14a07adfad445762d Mon Sep 17 00:00:00 2001
+From: Haavard Skinnemoen <hskinnemoen@atmel.com>
+Date: Sat, 23 Jun 2007 18:34:09 +0200
+Subject: [PATCH] Include usb/ch9.h instead of usb_ch9.h
+
+Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
+---
+ usb.c       |    2 +-
+ usbstring.c |    2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/usb.c b/usb.c
+index ea6c7de..b161154 100644
+--- a/usb.c
++++ b/usb.c
+@@ -35,7 +35,7 @@
+ #include <linux/types.h>
+ #include <linux/usb_gadgetfs.h>
+-#include <linux/usb_ch9.h>
++#include <linux/usb/ch9.h>
+ #ifdef        AIO
+ /* this aio code works with libaio-0.3.106 */
+diff --git a/usbstring.c b/usbstring.c
+index 4bf2965..993acc2 100644
+--- a/usbstring.c
++++ b/usbstring.c
+@@ -11,7 +11,7 @@
+ #include <string.h>
+ #include <linux/types.h>
+-#include <linux/usb_ch9.h>
++#include <linux/usb/ch9.h>
+ #include "usbstring.h"
+-- 
+1.5.2.2
+
diff --git a/package/gadgetfs-test/0002-rename-include-usb_gadgetfs-to-usb-dir.patch b/package/gadgetfs-test/0002-rename-include-usb_gadgetfs-to-usb-dir.patch
new file mode 100644 (file)
index 0000000..ffc2da3
--- /dev/null
@@ -0,0 +1,12 @@
+diff -upr gadgetfs-test-orig/usb.c gadgetfs-test/usb.c
+--- gadgetfs-test-orig/usb.c   2007-07-18 14:38:38.000000000 +0200
++++ gadgetfs-test/usb.c        2007-07-18 15:33:04.000000000 +0200
+@@ -34,7 +34,7 @@
+ #include <asm/byteorder.h>
+ #include <linux/types.h>
+-#include <linux/usb_gadgetfs.h>
++#include <linux/usb/gadgetfs.h>
+ #include <linux/usb/ch9.h>
+ #ifdef        AIO
diff --git a/package/gadgetfs-test/gadgetfs-test-fix-usb-ch9-include.patch b/package/gadgetfs-test/gadgetfs-test-fix-usb-ch9-include.patch
deleted file mode 100644 (file)
index 3d7ce82..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-From 8cf5909c6f8e0a892155dea14a07adfad445762d Mon Sep 17 00:00:00 2001
-From: Haavard Skinnemoen <hskinnemoen@atmel.com>
-Date: Sat, 23 Jun 2007 18:34:09 +0200
-Subject: [PATCH] Include usb/ch9.h instead of usb_ch9.h
-
-Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
----
- usb.c       |    2 +-
- usbstring.c |    2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/usb.c b/usb.c
-index ea6c7de..b161154 100644
---- a/usb.c
-+++ b/usb.c
-@@ -35,7 +35,7 @@
- #include <linux/types.h>
- #include <linux/usb_gadgetfs.h>
--#include <linux/usb_ch9.h>
-+#include <linux/usb/ch9.h>
- #ifdef        AIO
- /* this aio code works with libaio-0.3.106 */
-diff --git a/usbstring.c b/usbstring.c
-index 4bf2965..993acc2 100644
---- a/usbstring.c
-+++ b/usbstring.c
-@@ -11,7 +11,7 @@
- #include <string.h>
- #include <linux/types.h>
--#include <linux/usb_ch9.h>
-+#include <linux/usb/ch9.h>
- #include "usbstring.h"
--- 
-1.5.2.2
-
diff --git a/package/gadgetfs-test/gadgetfs-test-rename-include-usb_gadgetfs-to-usb-dir.patch b/package/gadgetfs-test/gadgetfs-test-rename-include-usb_gadgetfs-to-usb-dir.patch
deleted file mode 100644 (file)
index ffc2da3..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -upr gadgetfs-test-orig/usb.c gadgetfs-test/usb.c
---- gadgetfs-test-orig/usb.c   2007-07-18 14:38:38.000000000 +0200
-+++ gadgetfs-test/usb.c        2007-07-18 15:33:04.000000000 +0200
-@@ -34,7 +34,7 @@
- #include <asm/byteorder.h>
- #include <linux/types.h>
--#include <linux/usb_gadgetfs.h>
-+#include <linux/usb/gadgetfs.h>
- #include <linux/usb/ch9.h>
- #ifdef        AIO
diff --git a/package/gamin/0001-no-abstract-sockets.patch b/package/gamin/0001-no-abstract-sockets.patch
new file mode 100644 (file)
index 0000000..3d65901
--- /dev/null
@@ -0,0 +1,61 @@
+[PATCH]: Remove abstract socket namespace check breaking cross compilation
+
+Taken from openembedded:
+
+http://git.openembedded.org/cgit.cgi/openembedded/tree/recipes/gamin/files/no-abstract-sockets.patch
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+--- /tmp/configure.in  2007-04-30 13:08:49.000000000 +0200
++++ gamin-0.1.8/configure.in   2007-04-30 13:10:53.285251000 +0200
+@@ -354,51 +354,6 @@
+     AC_DEFINE(HAVE_CMSGCRED,1,[Have cmsgcred structure])
+ fi
+-#### Abstract sockets
+-
+-AC_MSG_CHECKING(abstract socket namespace)
+-AC_LANG_PUSH(C)
+-AC_RUN_IFELSE([AC_LANG_PROGRAM(
+-[[
+-#include <sys/types.h>
+-#include <stdlib.h>
+-#include <string.h>
+-#include <stdio.h>
+-#include <sys/socket.h>
+-#include <sys/un.h>
+-#include <errno.h>
+-]],
+-[[
+-  int listen_fd;
+-  struct sockaddr_un addr;
+-  
+-  listen_fd = socket (PF_UNIX, SOCK_STREAM, 0);
+-  
+-  if (listen_fd < 0)
+-    {
+-      fprintf (stderr, "socket() failed: %s\n", strerror (errno));
+-      exit (1);
+-    }
+-
+-  memset (&addr, '\0', sizeof (addr));
+-  addr.sun_family = AF_UNIX;
+-  strcpy (addr.sun_path, "X/tmp/dbus-fake-socket-path-used-in-configure-test");
+-  addr.sun_path[0] = '\0'; /* this is what makes it abstract */
+-  
+-  if (bind (listen_fd, (struct sockaddr*) &addr, SUN_LEN (&addr)) < 0)
+-    {
+-       fprintf (stderr, "Abstract socket namespace bind() failed: %s\n", 
+-                strerror (errno));
+-       exit (1);
+-    }
+-  else 
+-    exit (0);
+-]])],
+-              [have_abstract_sockets=yes],
+-              [have_abstract_sockets=no])
+-AC_LANG_POP(C)
+-AC_MSG_RESULT($have_abstract_sockets)
+-
+ if test x$enable_abstract_sockets = xyes; then
+     if test x$have_abstract_sockets = xno; then
+       AC_MSG_ERROR([Abstract sockets explicitly required, and support not detected.])
diff --git a/package/gamin/0002-no-const-return.patch b/package/gamin/0002-no-const-return.patch
new file mode 100644 (file)
index 0000000..3e6e905
--- /dev/null
@@ -0,0 +1,57 @@
+G_CONST_RETURN is deprecated in glib 2.30 so remove to to avoid
+build failures.
+
+Upstream-Status: Pending
+
+Index: gamin-0.1.10/server/gam_node.c
+===================================================================
+--- gamin-0.1.10.orig/server/gam_node.c        2011-10-12 15:25:45.217178314 +0100
++++ gamin-0.1.10/server/gam_node.c     2011-10-12 15:26:17.807178293 +0100
+@@ -122,7 +122,7 @@
+  * it has finished with the string.  If it must keep it longer, it
+  * should makes its own copy.  The returned string must not be freed.
+  */
+-G_CONST_RETURN char *
++const char *
+ gam_node_get_path(GamNode * node)
+ {
+     g_assert(node);
+Index: gamin-0.1.10/server/gam_node.h
+===================================================================
+--- gamin-0.1.10.orig/server/gam_node.h        2011-10-12 15:25:46.857178269 +0100
++++ gamin-0.1.10/server/gam_node.h     2011-10-12 15:26:28.637178297 +0100
+@@ -58,7 +58,7 @@
+ void                  gam_node_set_is_dir          (GamNode         *node,
+                                                  gboolean        is_dir);
+       
+-G_CONST_RETURN char  *gam_node_get_path            (GamNode         *node);
++const char  *gam_node_get_path            (GamNode         *node);
+ GList                *gam_node_get_subscriptions   (GamNode         *node);
+Index: gamin-0.1.10/server/gam_subscription.c
+===================================================================
+--- gamin-0.1.10.orig/server/gam_subscription.c        2011-10-12 15:25:40.497177525 +0100
++++ gamin-0.1.10/server/gam_subscription.c     2011-10-12 15:26:39.867178304 +0100
+@@ -141,7 +141,7 @@
+  * @param sub the GamSubscription
+  * @returns The path being monitored.  It should not be freed.
+  */
+-G_CONST_RETURN char *
++const char *
+ gam_subscription_get_path(GamSubscription * sub)
+ {
+     if (sub == NULL)
+Index: gamin-0.1.10/server/gam_subscription.h
+===================================================================
+--- gamin-0.1.10.orig/server/gam_subscription.h        2011-10-12 15:25:28.507178266 +0100
++++ gamin-0.1.10/server/gam_subscription.h     2011-10-12 15:25:58.817178285 +0100
+@@ -21,7 +21,7 @@
+ int                  gam_subscription_get_reqno    (GamSubscription *sub);
+-G_CONST_RETURN char *gam_subscription_get_path     (GamSubscription *sub);
++const char *gam_subscription_get_path     (GamSubscription *sub);
+ GamListener         *gam_subscription_get_listener (GamSubscription *sub);
diff --git a/package/gamin/gamin-0.1.10-no-abstract-sockets.patch b/package/gamin/gamin-0.1.10-no-abstract-sockets.patch
deleted file mode 100644 (file)
index 3d65901..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-[PATCH]: Remove abstract socket namespace check breaking cross compilation
-
-Taken from openembedded:
-
-http://git.openembedded.org/cgit.cgi/openembedded/tree/recipes/gamin/files/no-abstract-sockets.patch
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
---- /tmp/configure.in  2007-04-30 13:08:49.000000000 +0200
-+++ gamin-0.1.8/configure.in   2007-04-30 13:10:53.285251000 +0200
-@@ -354,51 +354,6 @@
-     AC_DEFINE(HAVE_CMSGCRED,1,[Have cmsgcred structure])
- fi
--#### Abstract sockets
--
--AC_MSG_CHECKING(abstract socket namespace)
--AC_LANG_PUSH(C)
--AC_RUN_IFELSE([AC_LANG_PROGRAM(
--[[
--#include <sys/types.h>
--#include <stdlib.h>
--#include <string.h>
--#include <stdio.h>
--#include <sys/socket.h>
--#include <sys/un.h>
--#include <errno.h>
--]],
--[[
--  int listen_fd;
--  struct sockaddr_un addr;
--  
--  listen_fd = socket (PF_UNIX, SOCK_STREAM, 0);
--  
--  if (listen_fd < 0)
--    {
--      fprintf (stderr, "socket() failed: %s\n", strerror (errno));
--      exit (1);
--    }
--
--  memset (&addr, '\0', sizeof (addr));
--  addr.sun_family = AF_UNIX;
--  strcpy (addr.sun_path, "X/tmp/dbus-fake-socket-path-used-in-configure-test");
--  addr.sun_path[0] = '\0'; /* this is what makes it abstract */
--  
--  if (bind (listen_fd, (struct sockaddr*) &addr, SUN_LEN (&addr)) < 0)
--    {
--       fprintf (stderr, "Abstract socket namespace bind() failed: %s\n", 
--                strerror (errno));
--       exit (1);
--    }
--  else 
--    exit (0);
--]])],
--              [have_abstract_sockets=yes],
--              [have_abstract_sockets=no])
--AC_LANG_POP(C)
--AC_MSG_RESULT($have_abstract_sockets)
--
- if test x$enable_abstract_sockets = xyes; then
-     if test x$have_abstract_sockets = xno; then
-       AC_MSG_ERROR([Abstract sockets explicitly required, and support not detected.])
diff --git a/package/gamin/gamin-0.1.10-no-const-return.patch b/package/gamin/gamin-0.1.10-no-const-return.patch
deleted file mode 100644 (file)
index 3e6e905..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-G_CONST_RETURN is deprecated in glib 2.30 so remove to to avoid
-build failures.
-
-Upstream-Status: Pending
-
-Index: gamin-0.1.10/server/gam_node.c
-===================================================================
---- gamin-0.1.10.orig/server/gam_node.c        2011-10-12 15:25:45.217178314 +0100
-+++ gamin-0.1.10/server/gam_node.c     2011-10-12 15:26:17.807178293 +0100
-@@ -122,7 +122,7 @@
-  * it has finished with the string.  If it must keep it longer, it
-  * should makes its own copy.  The returned string must not be freed.
-  */
--G_CONST_RETURN char *
-+const char *
- gam_node_get_path(GamNode * node)
- {
-     g_assert(node);
-Index: gamin-0.1.10/server/gam_node.h
-===================================================================
---- gamin-0.1.10.orig/server/gam_node.h        2011-10-12 15:25:46.857178269 +0100
-+++ gamin-0.1.10/server/gam_node.h     2011-10-12 15:26:28.637178297 +0100
-@@ -58,7 +58,7 @@
- void                  gam_node_set_is_dir          (GamNode         *node,
-                                                  gboolean        is_dir);
-       
--G_CONST_RETURN char  *gam_node_get_path            (GamNode         *node);
-+const char  *gam_node_get_path            (GamNode         *node);
- GList                *gam_node_get_subscriptions   (GamNode         *node);
-Index: gamin-0.1.10/server/gam_subscription.c
-===================================================================
---- gamin-0.1.10.orig/server/gam_subscription.c        2011-10-12 15:25:40.497177525 +0100
-+++ gamin-0.1.10/server/gam_subscription.c     2011-10-12 15:26:39.867178304 +0100
-@@ -141,7 +141,7 @@
-  * @param sub the GamSubscription
-  * @returns The path being monitored.  It should not be freed.
-  */
--G_CONST_RETURN char *
-+const char *
- gam_subscription_get_path(GamSubscription * sub)
- {
-     if (sub == NULL)
-Index: gamin-0.1.10/server/gam_subscription.h
-===================================================================
---- gamin-0.1.10.orig/server/gam_subscription.h        2011-10-12 15:25:28.507178266 +0100
-+++ gamin-0.1.10/server/gam_subscription.h     2011-10-12 15:25:58.817178285 +0100
-@@ -21,7 +21,7 @@
- int                  gam_subscription_get_reqno    (GamSubscription *sub);
--G_CONST_RETURN char *gam_subscription_get_path     (GamSubscription *sub);
-+const char *gam_subscription_get_path     (GamSubscription *sub);
- GamListener         *gam_subscription_get_listener (GamSubscription *sub);
diff --git a/package/gawk/0001-no-versioned.patch b/package/gawk/0001-no-versioned.patch
new file mode 100644 (file)
index 0000000..ff28581
--- /dev/null
@@ -0,0 +1,26 @@
+Disabled versioned installation of binaries to save space.
+Also use symlinks where it's appropiate.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+---
+
+diff -Nura gawk-4.0.0.orig/Makefile.in gawk-4.0.0/Makefile.in
+--- gawk-4.0.0.orig/Makefile.in        2011-06-24 05:16:13.000000000 -0300
++++ gawk-4.0.0/Makefile.in     2011-11-11 15:31:16.429577288 -0300
+@@ -403,7 +403,7 @@
+ MAINTAINERCLEANFILES = version.c
+ # We want hard links for install-exec-hook, below
+-LN = ln
++LN = $(LN_S)
+ all: config.h
+       $(MAKE) $(AM_MAKEFLAGS) all-recursive
+@@ -1011,6 +1011,7 @@
+ # (This is done universally, which may not always be right, but
+ # there's no easy way to distinguish GNU from non-GNU systems.)
+ install-exec-hook:
++foo:
+       (cd $(DESTDIR)$(bindir); \
+       $(LN) gawk$(EXEEXT) gawk-$(VERSION)$(EXEEXT) 2>/dev/null ; \
+       $(LN) pgawk$(EXEEXT) pgawk-$(VERSION)$(EXEEXT) 2>/dev/null ; \
diff --git a/package/gawk/gawk-01-no-versioned.patch b/package/gawk/gawk-01-no-versioned.patch
deleted file mode 100644 (file)
index ff28581..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-Disabled versioned installation of binaries to save space.
-Also use symlinks where it's appropiate.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
----
-
-diff -Nura gawk-4.0.0.orig/Makefile.in gawk-4.0.0/Makefile.in
---- gawk-4.0.0.orig/Makefile.in        2011-06-24 05:16:13.000000000 -0300
-+++ gawk-4.0.0/Makefile.in     2011-11-11 15:31:16.429577288 -0300
-@@ -403,7 +403,7 @@
- MAINTAINERCLEANFILES = version.c
- # We want hard links for install-exec-hook, below
--LN = ln
-+LN = $(LN_S)
- all: config.h
-       $(MAKE) $(AM_MAKEFLAGS) all-recursive
-@@ -1011,6 +1011,7 @@
- # (This is done universally, which may not always be right, but
- # there's no easy way to distinguish GNU from non-GNU systems.)
- install-exec-hook:
-+foo:
-       (cd $(DESTDIR)$(bindir); \
-       $(LN) gawk$(EXEEXT) gawk-$(VERSION)$(EXEEXT) 2>/dev/null ; \
-       $(LN) pgawk$(EXEEXT) pgawk-$(VERSION)$(EXEEXT) 2>/dev/null ; \
diff --git a/package/genext2fs/0001-update-genext2fs.c-to-rev-1.118.patch b/package/genext2fs/0001-update-genext2fs.c-to-rev-1.118.patch
new file mode 100644 (file)
index 0000000..755ee9d
--- /dev/null
@@ -0,0 +1,2971 @@
+[PATCH] update genext2fs.c to CVS rev 1.118
+
+See http://genext2fs.cvs.sourceforge.net/viewvc/genext2fs/genext2fs/genext2fs.c?view=log
+for details.
+
+Numerous bugfixes, large file and filesystem support, rev 1 filesystems,
+volume id support, block size, ..
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ cache.h     |  128 ++++
+ genext2fs.c | 1870 ++++++++++++++++++++++++++++++++++++++++++------------------
+ list.h      |   78 ++
+ 3 files changed, 1527 insertions(+), 549 deletions(-)
+
+Index: genext2fs-1.4.1/genext2fs.c
+===================================================================
+--- genext2fs-1.4.1.orig/genext2fs.c
++++ genext2fs-1.4.1/genext2fs.c
+@@ -53,6 +53,12 @@
+ //                    along with -q, -P, -U
++/*
++ * Allow fseeko/off_t to be 64-bit offsets to allow filesystems and
++ * individual files >2GB.
++ */
++#define _FILE_OFFSET_BITS 64
++
+ #include <config.h>
+ #include <stdio.h>
+@@ -107,10 +113,8 @@
+ #if HAVE_DIRENT_H
+ # include <dirent.h>
+-# define NAMLEN(dirent) strlen((dirent)->d_name)
+ #else
+ # define dirent direct
+-# define NAMLEN(dirent) (dirent)->d_namlen
+ # if HAVE_SYS_NDIR_H
+ #  include <sys/ndir.h>
+ # endif
+@@ -144,6 +148,8 @@
+ # include <limits.h>
+ #endif
++#include "cache.h"
++
+ struct stats {
+       unsigned long nblocks;
+       unsigned long ninodes;
+@@ -151,13 +157,42 @@
+ // block size
+-#define BLOCKSIZE         1024
++static int blocksize = 1024;
++
++#define SUPERBLOCK_OFFSET     1024
++#define SUPERBLOCK_SIZE               1024
++
++#define BLOCKSIZE         blocksize
+ #define BLOCKS_PER_GROUP  8192
+ #define INODES_PER_GROUP  8192
+ /* Percentage of blocks that are reserved.*/
+ #define RESERVED_BLOCKS       5/100
+ #define MAX_RESERVED_BLOCKS  25/100
++/* The default value for s_creator_os. */
++#if defined(__linux__)    &&    defined(EXT2_OS_LINUX)
++#define CREATOR_OS EXT2_OS_LINUX
++#define CREATOR_OS_NAME "linux"
++#else
++#if defined(__GNU__)     &&     defined(EXT2_OS_HURD)
++#define CREATOR_OS EXT2_OS_HURD
++#define CREATOR_OS_NAME "hurd"
++#else
++#if defined(__FreeBSD__) &&     defined(EXT2_OS_FREEBSD)
++#define CREATOR_OS EXT2_OS_FREEBSD
++#define CREATOR_OS_NAME "freebsd"
++#else
++#if defined(LITES)         &&   defined(EXT2_OS_LITES)
++#define CREATOR_OS EXT2_OS_LITES
++#define CREATOR_OS_NAME "lites"
++#else
++#define CREATOR_OS EXT2_OS_LINUX /* by default */
++#define CREATOR_OS_NAME "linux"
++#endif /* defined(LITES) && defined(EXT2_OS_LITES) */
++#endif /* defined(__FreeBSD__) && defined(EXT2_OS_FREEBSD) */
++#endif /* defined(__GNU__)     && defined(EXT2_OS_HURD) */
++#endif /* defined(__linux__)   && defined(EXT2_OS_LINUX) */
++
+ // inode block size (why is it != BLOCKSIZE ?!?)
+ /* The field i_blocks in the ext2 inode stores the number of data blocks
+@@ -190,6 +225,14 @@
+ #define EXT2_TIND_BLOCK    14                    // triple indirect block
+ #define EXT2_INIT_BLOCK    0xFFFFFFFF            // just initialized (not really a block address)
++// codes for operating systems
++
++#define EXT2_OS_LINUX           0
++#define EXT2_OS_HURD            1
++#define EXT2_OS_MASIX           2
++#define EXT2_OS_FREEBSD         3
++#define EXT2_OS_LITES           4
++
+ // end of a block walk
+ #define WALK_END           0xFFFFFFFE
+@@ -227,44 +270,46 @@
+ #define FM_IWOTH   0000002    // write
+ #define FM_IXOTH   0000001    // execute
+-// options
+-
+-#define OP_HOLES     0x01       // make files with holes
+-
+ /* Defines for accessing group details */
+ // Number of groups in the filesystem
+ #define GRP_NBGROUPS(fs) \
+-      (((fs)->sb.s_blocks_count - fs->sb.s_first_data_block + \
+-        (fs)->sb.s_blocks_per_group - 1) / (fs)->sb.s_blocks_per_group)
++      (((fs)->sb->s_blocks_count - fs->sb->s_first_data_block + \
++        (fs)->sb->s_blocks_per_group - 1) / (fs)->sb->s_blocks_per_group)
+ // Get group block bitmap (bbm) given the group number
+-#define GRP_GET_GROUP_BBM(fs,grp) ( get_blk((fs),(fs)->gd[(grp)].bg_block_bitmap) )
++#define GRP_GET_GROUP_BBM(fs,grp,bi) (get_blk((fs),(grp)->bg_block_bitmap,(bi)))
++#define GRP_PUT_GROUP_BBM(bi) ( put_blk((bi)) )
+ // Get group inode bitmap (ibm) given the group number
+-#define GRP_GET_GROUP_IBM(fs,grp) ( get_blk((fs),(fs)->gd[(grp)].bg_inode_bitmap) )
+-              
++#define GRP_GET_GROUP_IBM(fs,grp,bi) (get_blk((fs), (grp)->bg_inode_bitmap,(bi)))
++#define GRP_PUT_GROUP_IBM(bi) ( put_blk((bi)) )
++
+ // Given an inode number find the group it belongs to
+-#define GRP_GROUP_OF_INODE(fs,nod) ( ((nod)-1) / (fs)->sb.s_inodes_per_group)
++#define GRP_GROUP_OF_INODE(fs,nod) ( ((nod)-1) / (fs)->sb->s_inodes_per_group)
+ //Given an inode number get the inode bitmap that covers it
+-#define GRP_GET_INODE_BITMAP(fs,nod) \
+-      ( GRP_GET_GROUP_IBM((fs),GRP_GROUP_OF_INODE((fs),(nod))) )
++#define GRP_GET_INODE_BITMAP(fs,nod,bi,gi)                            \
++      ( GRP_GET_GROUP_IBM((fs),get_gd(fs,GRP_GROUP_OF_INODE((fs),(nod)),gi),bi) )
++#define GRP_PUT_INODE_BITMAP(bi,gi)           \
++      ( GRP_PUT_GROUP_IBM((bi)),put_gd((gi)) )
+ //Given an inode number find its offset within the inode bitmap that covers it
+ #define GRP_IBM_OFFSET(fs,nod) \
+-      ( (nod) - GRP_GROUP_OF_INODE((fs),(nod))*(fs)->sb.s_inodes_per_group )
++      ( (nod) - GRP_GROUP_OF_INODE((fs),(nod))*(fs)->sb->s_inodes_per_group )
+ // Given a block number find the group it belongs to
+-#define GRP_GROUP_OF_BLOCK(fs,blk) ( ((blk)-1) / (fs)->sb.s_blocks_per_group)
++#define GRP_GROUP_OF_BLOCK(fs,blk) ( ((blk)-1) / (fs)->sb->s_blocks_per_group)
+       
+-//Given a block number get the block bitmap that covers it
+-#define GRP_GET_BLOCK_BITMAP(fs,blk) \
+-      ( GRP_GET_GROUP_BBM((fs),GRP_GROUP_OF_BLOCK((fs),(blk))) )
++//Given a block number get/put the block bitmap that covers it
++#define GRP_GET_BLOCK_BITMAP(fs,blk,bi,gi)                            \
++      ( GRP_GET_GROUP_BBM((fs),get_gd(fs,GRP_GROUP_OF_BLOCK((fs),(blk)),(gi)),(bi)) )
++#define GRP_PUT_BLOCK_BITMAP(bi,gi)           \
++      ( GRP_PUT_GROUP_BBM((bi)),put_gd((gi)) )
+ //Given a block number find its offset within the block bitmap that covers it
+ #define GRP_BBM_OFFSET(fs,blk) \
+-      ( (blk) - GRP_GROUP_OF_BLOCK((fs),(blk))*(fs)->sb.s_blocks_per_group )
++      ( (blk) - GRP_GROUP_OF_BLOCK((fs),(blk))*(fs)->sb->s_blocks_per_group )
+ // used types
+@@ -286,7 +331,9 @@
+ // older solaris. Note that this is still not very portable, in that
+ // the return value cannot be trusted.
+-#if SCANF_CAN_MALLOC
++#if 0 // SCANF_CAN_MALLOC
++// C99 define "a" for floating point, so you can have runtime surprise
++// according the library versions
+ # define SCANF_PREFIX "a"
+ # define SCANF_STRING(s) (&s)
+ #else
+@@ -430,6 +477,17 @@
+                       ((val<<8)&0xFF0000) | (val<<24));
+ }
++static inline int
++is_blk_empty(uint8 *b)
++{
++      uint32 i;
++      uint32 *v = (uint32 *) b;
++
++      for(i = 0; i < BLOCKSIZE / 4; i++)
++              if (*v++)
++                      return 0;
++      return 1;
++}
+ // on-disk structures
+ // this trick makes me declare things only once
+@@ -460,7 +518,22 @@
+       udecl32(s_creator_os)          /* Indicator of which OS created the filesystem */ \
+       udecl32(s_rev_level)           /* The revision level of the filesystem */ \
+       udecl16(s_def_resuid)          /* The default uid for reserved blocks */ \
+-      udecl16(s_def_resgid)          /* The default gid for reserved blocks */
++      udecl16(s_def_resgid)          /* The default gid for reserved blocks */ \
++      /* rev 1 version fields start here */ \
++      udecl32(s_first_ino)            /* First non-reserved inode */  \
++      udecl16(s_inode_size)           /* size of inode structure */   \
++      udecl16(s_block_group_nr)       /* block group # of this superblock */ \
++      udecl32(s_feature_compat)       /* compatible feature set */    \
++      udecl32(s_feature_incompat)     /* incompatible feature set */  \
++      udecl32(s_feature_ro_compat)    /* readonly-compatible feature set */ \
++      utdecl8(s_uuid,16)              /* 128-bit uuid for volume */   \
++      utdecl8(s_volume_name,16)       /* volume name */               \
++      utdecl8(s_last_mounted,64)      /* directory where last mounted */ \
++      udecl32(s_algorithm_usage_bitmap) /* For compression */
++
++#define EXT2_GOOD_OLD_FIRST_INO       11
++#define EXT2_GOOD_OLD_INODE_SIZE 128
++#define EXT2_FEATURE_RO_COMPAT_LARGE_FILE     0x0002
+ #define groupdescriptor_decl \
+       udecl32(bg_block_bitmap)       /* Block number of the block bitmap */ \
+@@ -500,6 +573,7 @@
+ #define decl8(x) int8 x;
+ #define udecl8(x) uint8 x;
++#define utdecl8(x,n) uint8 x[n];
+ #define decl16(x) int16 x;
+ #define udecl16(x) uint16 x;
+ #define decl32(x) int32 x;
+@@ -509,7 +583,7 @@
+ typedef struct
+ {
+       superblock_decl
+-      uint32 s_reserved[235];       // Reserved
++      uint32 s_reserved[205];       // Reserved
+ } superblock;
+ typedef struct
+@@ -527,10 +601,9 @@
+ typedef struct
+ {
+       directory_decl
+-      char d_name[0];
+ } directory;
+-typedef uint8 block[BLOCKSIZE];
++typedef uint8 *block;
+ /* blockwalker fields:
+    The blockwalker is used to access all the blocks of a file (including
+@@ -567,23 +640,41 @@
+       uint32 bptind;
+ } blockwalker;
++#define HDLINK_CNT   16
++struct hdlink_s
++{
++      uint32  src_inode;
++      uint32  dst_nod;
++};
++
++struct hdlinks_s
++{
++      int32 count;
++      struct hdlink_s *hdl;
++};
+ /* Filesystem structure that support groups */
+-#if BLOCKSIZE == 1024
+ typedef struct
+ {
+-      block zero;            // The famous block 0
+-      superblock sb;         // The superblock
+-      groupdescriptor gd[0]; // The group descriptors
++      FILE *f;
++      superblock *sb;
++      int swapit;
++      int32 hdlink_cnt;
++      struct hdlinks_s hdlinks;
++
++      int holes;
++
++      listcache blks;
++      listcache gds;
++      listcache inodes;
++      listcache blkmaps;
+ } filesystem;
+-#else
+-#error UNHANDLED BLOCKSIZE
+-#endif
+ // now the endianness swap
+ #undef decl8
+ #undef udecl8
++#undef utdecl8
+ #undef decl16
+ #undef udecl16
+ #undef decl32
+@@ -592,28 +683,13 @@
+ #define decl8(x)
+ #define udecl8(x)
++#define utdecl8(x,n)
+ #define decl16(x) this->x = swab16(this->x);
+ #define udecl16(x) this->x = swab16(this->x);
+ #define decl32(x) this->x = swab32(this->x);
+ #define udecl32(x) this->x = swab32(this->x);
+ #define utdecl32(x,n) { int i; for(i=0; i<n; i++) this->x[i] = swab32(this->x[i]); }
+-#define HDLINK_CNT   16
+-static int32 hdlink_cnt = HDLINK_CNT;
+-struct hdlink_s
+-{
+-      uint32  src_inode;
+-      uint32  dst_nod;
+-};
+-
+-struct hdlinks_s 
+-{
+-      int32 count;
+-      struct hdlink_s *hdl;
+-};
+-
+-static struct hdlinks_s hdlinks;
+-
+ static void
+ swap_sb(superblock *sb)
+ {
+@@ -633,9 +709,24 @@
+ static void
+ swap_nod(inode *nod)
+ {
++      uint32 nblk;
++
+ #define this nod
+       inode_decl
+ #undef this
++
++      // block and character inodes store the major and minor in the
++      // i_block, so we need to unswap to get those.  Also, if it's
++      // zero iblocks, put the data back like it belongs.
++      nblk = nod->i_blocks / INOBLK;
++      if ((nod->i_size && !nblk)
++          || ((nod->i_mode & FM_IFBLK) == FM_IFBLK)
++          || ((nod->i_mode & FM_IFCHR) == FM_IFCHR))
++      {
++              int i;
++              for(i = 0; i <= EXT2_TIND_BLOCK; i++)
++                      nod->i_block[i] = swab32(nod->i_block[i]);
++      }
+ }
+ static void
+@@ -657,6 +748,7 @@
+ #undef decl8
+ #undef udecl8
++#undef utdecl8
+ #undef decl16
+ #undef udecl16
+ #undef decl32
+@@ -770,15 +862,15 @@
+ }
+ int
+-is_hardlink(ino_t inode)
++is_hardlink(filesystem *fs, ino_t inode)
+ {
+       int i;
+-      for(i = 0; i < hdlinks.count; i++) {
+-              if(hdlinks.hdl[i].src_inode == inode)
++      for(i = 0; i < fs->hdlinks.count; i++) {
++              if(fs->hdlinks.hdl[i].src_inode == inode)
+                       return i;
+       }
+-      return -1;              
++      return -1;
+ }
+ // printf helper macro
+@@ -789,6 +881,8 @@
+ get_workblk(void)
+ {
+       unsigned char* b=calloc(1,BLOCKSIZE);
++      if (!b)
++              error_msg_and_die("get_workblk() failed, out of memory");
+       return b;
+ }
+ static inline void
+@@ -811,24 +905,464 @@
+       return b[(item-1) / 8] & (1 << ((item-1) % 8));
+ }
+-// return a given block from a filesystem
++// Used by get_blk/put_blk to hold information about a block owned
++// by the user.
++typedef struct
++{
++      cache_link link;
++
++      filesystem *fs;
++      uint32 blk;
++      uint8 *b;
++      uint32 usecount;
++} blk_info;
++
++#define MAX_FREE_CACHE_BLOCKS 100
++
++static uint32
++blk_elem_val(cache_link *elem)
++{
++      blk_info *bi = container_of(elem, blk_info, link);
++      return bi->blk;
++}
++
++static void
++blk_freed(cache_link *elem)
++{
++      blk_info *bi = container_of(elem, blk_info, link);
++
++      if (fseeko(bi->fs->f, ((off_t) bi->blk) * BLOCKSIZE, SEEK_SET))
++              perror_msg_and_die("fseek");
++      if (fwrite(bi->b, BLOCKSIZE, 1, bi->fs->f) != 1)
++              perror_msg_and_die("get_blk: write");
++      free(bi->b);
++      free(bi);
++}
++
++// Return a given block from a filesystem.  Make sure to call
++// put_blk when you are done with it.
+ static inline uint8 *
+-get_blk(filesystem *fs, uint32 blk)
++get_blk(filesystem *fs, uint32 blk, blk_info **rbi)
+ {
+-      return (uint8*)fs + blk*BLOCKSIZE;
++      cache_link *curr;
++      blk_info *bi;
++
++      if (blk >= fs->sb->s_blocks_count)
++              error_msg_and_die("Internal error, block out of range");
++
++      curr = cache_find(&fs->blks, blk);
++      if (curr) {
++              bi = container_of(curr, blk_info, link);
++              bi->usecount++;
++              goto out;
++      }
++
++      bi = malloc(sizeof(*bi));
++      if (!bi)
++              error_msg_and_die("get_blk: out of memory");
++      bi->fs = fs;
++      bi->blk = blk;
++      bi->usecount = 1;
++      bi->b = malloc(BLOCKSIZE);
++      if (!bi->b)
++              error_msg_and_die("get_blk: out of memory");
++      cache_add(&fs->blks, &bi->link);
++      if (fseeko(fs->f, ((off_t) blk) * BLOCKSIZE, SEEK_SET))
++              perror_msg_and_die("fseek");
++      if (fread(bi->b, BLOCKSIZE, 1, fs->f) != 1) {
++              if (ferror(fs->f))
++                      perror_msg_and_die("fread");
++              memset(bi->b, 0, BLOCKSIZE);
++      }
++
++out:
++      *rbi = bi;
++      return bi->b;
+ }
+ // return a given inode from a filesystem
+-static inline inode *
+-get_nod(filesystem *fs, uint32 nod)
++static inline void
++put_blk(blk_info *bi)
++{
++      if (bi->usecount == 0)
++              error_msg_and_die("Internal error: put_blk usecount zero");
++      bi->usecount--;
++      if (bi->usecount == 0)
++              /* Free happens in the cache code */
++              cache_item_set_unused(&bi->fs->blks, &bi->link);
++}
++
++typedef struct
+ {
+-      int grp,offset;
++      cache_link link;
++
++      filesystem *fs;
++      int gds;
++      blk_info *bi;
++      groupdescriptor *gd;
++      uint32 usecount;
++} gd_info;
++
++#define MAX_FREE_CACHE_GDS 100
++
++static uint32
++gd_elem_val(cache_link *elem)
++{
++      gd_info *gi = container_of(elem, gd_info, link);
++      return gi->gds;
++}
++
++static void
++gd_freed(cache_link *elem)
++{
++      gd_info *gi = container_of(elem, gd_info, link);
++
++      if (gi->fs->swapit)
++              swap_gd(gi->gd);
++      put_blk(gi->bi);
++      free(gi);
++}
++
++#define GDS_START ((SUPERBLOCK_OFFSET + SUPERBLOCK_SIZE + BLOCKSIZE - 1) / BLOCKSIZE)
++#define GDS_PER_BLOCK (BLOCKSIZE / sizeof(groupdescriptor))
++// the group descriptors are aligned on the block size
++static inline groupdescriptor *
++get_gd(filesystem *fs, uint32 no, gd_info **rgi)
++{
++      uint32 gdblk;
++      uint32 offset;
++      gd_info *gi;
++      cache_link *curr;
++
++      curr = cache_find(&fs->gds, no);
++      if (curr) {
++              gi = container_of(curr, gd_info, link);
++              gi->usecount++;
++              goto out;
++      }
++
++      gi = malloc(sizeof(*gi));
++      if (!gi)
++              error_msg_and_die("get_gd: out of memory");
++      gi->fs = fs;
++      gi->gds = no;
++      gi->usecount = 1;
++      gdblk = GDS_START + (no / GDS_PER_BLOCK);
++      offset = no % GDS_PER_BLOCK;
++      gi->gd = ((groupdescriptor *) get_blk(fs, gdblk, &gi->bi)) + offset;
++      cache_add(&fs->gds, &gi->link);
++      if (fs->swapit)
++              swap_gd(gi->gd);
++ out:
++      *rgi = gi;
++
++      return gi->gd;
++}
++
++static inline void
++put_gd(gd_info *gi)
++{
++      if (gi->usecount == 0)
++              error_msg_and_die("Internal error: put_gd usecount zero");
++
++      gi->usecount--;
++      if (gi->usecount == 0)
++              /* Free happens in the cache code */
++              cache_item_set_unused(&gi->fs->gds, &gi->link);
++}
++
++// Used by get_blkmap/put_blkmap to hold information about an block map
++// owned by the user.
++typedef struct
++{
++      cache_link link;
++
++      filesystem *fs;
++      uint32 blk;
++      uint8 *b;
++      blk_info *bi;
++      uint32 usecount;
++} blkmap_info;
++
++#define MAX_FREE_CACHE_BLOCKMAPS 100
++
++static uint32
++blkmap_elem_val(cache_link *elem)
++{
++      blkmap_info *bmi = container_of(elem, blkmap_info, link);
++      return bmi->blk;
++}
++
++static void
++blkmap_freed(cache_link *elem)
++{
++      blkmap_info *bmi = container_of(elem, blkmap_info, link);
++
++      if (bmi->fs->swapit)
++              swap_block(bmi->b);
++      put_blk(bmi->bi);
++      free(bmi);
++}
++
++// Return a given block map from a filesystem.  Make sure to call
++// put_blkmap when you are done with it.
++static inline uint32 *
++get_blkmap(filesystem *fs, uint32 blk, blkmap_info **rbmi)
++{
++      blkmap_info *bmi;
++      cache_link *curr;
++
++      curr = cache_find(&fs->blkmaps, blk);
++      if (curr) {
++              bmi = container_of(curr, blkmap_info, link);
++              bmi->usecount++;
++              goto out;
++      }
++
++      bmi = malloc(sizeof(*bmi));
++      if (!bmi)
++              error_msg_and_die("get_blkmap: out of memory");
++      bmi->fs = fs;
++      bmi->blk = blk;
++      bmi->b = get_blk(fs, blk, &bmi->bi);
++      bmi->usecount = 1;
++      cache_add(&fs->blkmaps, &bmi->link);
++
++      if (fs->swapit)
++              swap_block(bmi->b);
++ out:
++      *rbmi = bmi;
++      return (uint32 *) bmi->b;
++}
++
++static inline void
++put_blkmap(blkmap_info *bmi)
++{
++      if (bmi->usecount == 0)
++              error_msg_and_die("Internal error: put_blkmap usecount zero");
++
++      bmi->usecount--;
++      if (bmi->usecount == 0)
++              /* Free happens in the cache code */
++              cache_item_set_unused(&bmi->fs->blkmaps, &bmi->link);
++}
++
++// Used by get_nod/put_nod to hold information about an inode owned
++// by the user.
++typedef struct
++{
++      cache_link link;
++
++      filesystem *fs;
++      uint32 nod;
++      uint8 *b;
++      blk_info *bi;
+       inode *itab;
++      uint32 usecount;
++} nod_info;
++
++#define MAX_FREE_CACHE_INODES 100
++
++static uint32
++inode_elem_val(cache_link *elem)
++{
++      nod_info *ni = container_of(elem, nod_info, link);
++      return ni->nod;
++}
++
++static void
++inode_freed(cache_link *elem)
++{
++      nod_info *ni = container_of(elem, nod_info, link);
++
++      if (ni->fs->swapit)
++              swap_nod(ni->itab);
++      put_blk(ni->bi);
++      free(ni);
++}
++
++#define INODES_PER_BLOCK (BLOCKSIZE / sizeof(inode))
+-      offset = GRP_IBM_OFFSET(fs,nod);
++// return a given inode from a filesystem
++static inline inode *
++get_nod(filesystem *fs, uint32 nod, nod_info **rni)
++{
++      uint32 grp, boffset, offset;
++      cache_link *curr;
++      groupdescriptor *gd;
++      gd_info *gi;
++      nod_info *ni;
++
++      curr = cache_find(&fs->inodes, nod);
++      if (curr) {
++              ni = container_of(curr, nod_info, link);
++              ni->usecount++;
++              goto out;
++      }
++
++      ni = malloc(sizeof(*ni));
++      if (!ni)
++              error_msg_and_die("get_nod: out of memory");
++      ni->fs = fs;
++      ni->nod = nod;
++      ni->usecount = 1;
++      cache_add(&fs->inodes, &ni->link);
++
++      offset = GRP_IBM_OFFSET(fs,nod) - 1;
++      boffset = offset / INODES_PER_BLOCK;
++      offset %= INODES_PER_BLOCK;
+       grp = GRP_GROUP_OF_INODE(fs,nod);
+-      itab = (inode *)get_blk(fs, fs->gd[grp].bg_inode_table);
+-      return itab+offset-1;
++      gd = get_gd(fs, grp, &gi);
++      ni->b = get_blk(fs, gd->bg_inode_table + boffset, &ni->bi);
++      ni->itab = ((inode *) ni->b) + offset;
++      if (fs->swapit)
++              swap_nod(ni->itab);
++      put_gd(gi);
++ out:
++      *rni = ni;
++      return ni->itab;
++}
++
++static inline void
++put_nod(nod_info *ni)
++{
++      if (ni->usecount == 0)
++              error_msg_and_die("Internal error: put_nod usecount zero");
++
++      ni->usecount--;
++      if (ni->usecount == 0)
++              /* Free happens in the cache code */
++              cache_item_set_unused(&ni->fs->inodes, &ni->link);
++}
++
++// Used to hold state information while walking a directory inode.
++typedef struct
++{
++      directory d;
++      filesystem *fs;
++      uint32 nod;
++      directory *last_d;
++      uint8 *b;
++      blk_info *bi;
++} dirwalker;
++
++// Start a directory walk on the given inode.  You must pass in a
++// dirwalker structure, then use that dirwalker for future operations.
++// Call put_dir when you are done walking the directory.
++static inline directory *
++get_dir(filesystem *fs, uint32 nod, dirwalker *dw)
++{
++      dw->fs = fs;
++      dw->b = get_blk(fs, nod, &dw->bi);
++      dw->nod = nod;
++      dw->last_d = (directory *) dw->b;
++
++      memcpy(&dw->d, dw->last_d, sizeof(directory));
++      if (fs->swapit)
++              swap_dir(&dw->d);
++      return &dw->d;
++}
++
++// Move to the next directory.
++static inline directory *
++next_dir(dirwalker *dw)
++{
++      directory *next_d = (directory *)((int8*)dw->last_d + dw->d.d_rec_len);
++
++      if (dw->fs->swapit)
++              swap_dir(&dw->d);
++      memcpy(dw->last_d, &dw->d, sizeof(directory));
++
++      if (((int8 *) next_d) >= ((int8 *) dw->b + BLOCKSIZE))
++              return NULL;
++
++      dw->last_d = next_d;
++      memcpy(&dw->d, next_d, sizeof(directory));
++      if (dw->fs->swapit)
++              swap_dir(&dw->d);
++      return &dw->d;
++}
++
++// Call then when you are done with the directory walk.
++static inline void
++put_dir(dirwalker *dw)
++{
++      if (dw->fs->swapit)
++              swap_dir(&dw->d);
++      memcpy(dw->last_d, &dw->d, sizeof(directory));
++
++      if (dw->nod == 0)
++              free_workblk(dw->b);
++      else
++              put_blk(dw->bi);
++}
++
++// Create a new directory block with the given inode as it's destination
++// and append it to the current dirwalker.
++static directory *
++new_dir(filesystem *fs, uint32 dnod, const char *name, int nlen, dirwalker *dw)
++{
++      directory *d;
++
++      dw->fs = fs;
++      dw->b = get_workblk();
++      dw->nod = 0;
++      dw->last_d = (directory *) dw->b;
++      d = &dw->d;
++      d->d_inode = dnod;
++      d->d_rec_len = BLOCKSIZE;
++      d->d_name_len = nlen;
++      strncpy(((char *) dw->last_d) + sizeof(directory), name, nlen);
++      return d;
++}
++
++// Shrink the current directory entry, make a new one with the free
++// space, and return the new directory entry (making it current).
++static inline directory *
++shrink_dir(dirwalker *dw, uint32 nod, const char *name, int nlen)
++{
++      int reclen, preclen;
++      directory *d = &dw->d;
++
++      reclen = d->d_rec_len;
++      d->d_rec_len = sizeof(directory) + rndup(d->d_name_len, 4);
++      preclen = d->d_rec_len;
++      reclen -= preclen;
++      if (dw->fs->swapit)
++              swap_dir(&dw->d);
++      memcpy(dw->last_d, &dw->d, sizeof(directory));
++
++      dw->last_d = (directory *) (((int8 *) dw->last_d) + preclen);
++      d->d_rec_len = reclen;
++      d->d_inode = nod;
++      d->d_name_len = nlen;
++      strncpy(((char *) dw->last_d) + sizeof(directory), name, nlen);
++
++      return d;
++}
++
++// Return the current block the directory is walking
++static inline uint8 *
++dir_data(dirwalker *dw)
++{
++      return dw->b;
++}
++
++// Return the pointer to the name for the current directory
++static inline char *
++dir_name(dirwalker *dw)
++{
++      return ((char *) dw->last_d) + sizeof(directory);
++}
++
++// Set the name for the current directory.  Note that this doesn't
++// verify that there is space for the directory name, you must do
++// that yourself.
++static void
++dir_set_name(dirwalker *dw, const char *name, int nlen)
++{
++      dw->d.d_name_len = nlen;
++      strncpy(((char *) dw->last_d) + sizeof(directory), name, nlen);
+ }
+ // allocate a given block/inode in the bitmap
+@@ -870,21 +1404,34 @@
+ {
+       uint32 bk=0;
+       uint32 grp,nbgroups;
++      blk_info *bi;
++      groupdescriptor *gd;
++      gd_info *gi;
+       grp = GRP_GROUP_OF_INODE(fs,nod);
+       nbgroups = GRP_NBGROUPS(fs);
+-      if(!(bk = allocate(get_blk(fs,fs->gd[grp].bg_block_bitmap), 0))) {
+-              for(grp=0;grp<nbgroups && !bk;grp++)
+-                      bk=allocate(get_blk(fs,fs->gd[grp].bg_block_bitmap),0);
++      gd = get_gd(fs, grp, &gi);
++      bk = allocate(GRP_GET_GROUP_BBM(fs, gd, &bi), 0);
++      GRP_PUT_GROUP_BBM(bi);
++      put_gd(gi);
++      if (!bk) {
++              for (grp=0; grp<nbgroups && !bk; grp++) {
++                      gd = get_gd(fs, grp, &gi);
++                      bk = allocate(GRP_GET_GROUP_BBM(fs, gd, &bi), 0);
++                      GRP_PUT_GROUP_BBM(bi);
++                      put_gd(gi);
++              }
+               grp--;
+       }
+       if (!bk)
+               error_msg_and_die("couldn't allocate a block (no free space)");
+-      if(!(fs->gd[grp].bg_free_blocks_count--))
++      gd = get_gd(fs, grp, &gi);
++      if(!(gd->bg_free_blocks_count--))
+               error_msg_and_die("group descr %d. free blocks count == 0 (corrupted fs?)",grp);
+-      if(!(fs->sb.s_free_blocks_count--))
++      put_gd(gi);
++      if(!(fs->sb->s_free_blocks_count--))
+               error_msg_and_die("superblock free blocks count == 0 (corrupted fs?)");
+-      return fs->sb.s_blocks_per_group*grp + bk;
++      return fs->sb->s_first_data_block + fs->sb->s_blocks_per_group*grp + (bk-1);
+ }
+ // free a block
+@@ -892,12 +1439,18 @@
+ free_blk(filesystem *fs, uint32 bk)
+ {
+       uint32 grp;
+-
+-      grp = bk / fs->sb.s_blocks_per_group;
+-      bk %= fs->sb.s_blocks_per_group;
+-      deallocate(get_blk(fs,fs->gd[grp].bg_block_bitmap), bk);
+-      fs->gd[grp].bg_free_blocks_count++;
+-      fs->sb.s_free_blocks_count++;
++      blk_info *bi;
++      gd_info *gi;
++      groupdescriptor *gd;
++
++      grp = bk / fs->sb->s_blocks_per_group;
++      bk %= fs->sb->s_blocks_per_group;
++      gd = get_gd(fs, grp, &gi);
++      deallocate(GRP_GET_GROUP_BBM(fs, gd, &bi), bk);
++      GRP_PUT_GROUP_BBM(bi);
++      gd->bg_free_blocks_count++;
++      put_gd(gi);
++      fs->sb->s_free_blocks_count++;
+ }
+ // allocate an inode
+@@ -906,6 +1459,9 @@
+ {
+       uint32 nod,best_group=0;
+       uint32 grp,nbgroups,avefreei;
++      blk_info *bi;
++      gd_info *gi, *bestgi;
++      groupdescriptor *gd, *bestgd;
+       nbgroups = GRP_NBGROUPS(fs);
+@@ -914,22 +1470,32 @@
+       /* find the one with the most free blocks and allocate node there     */
+       /* Idea from find_group_dir in fs/ext2/ialloc.c in 2.4.19 kernel      */
+       /* We do it for all inodes.                                           */
+-      avefreei  =  fs->sb.s_free_inodes_count / nbgroups;
++      avefreei  =  fs->sb->s_free_inodes_count / nbgroups;
++      bestgd = get_gd(fs, best_group, &bestgi);
+       for(grp=0; grp<nbgroups; grp++) {
+-              if (fs->gd[grp].bg_free_inodes_count < avefreei ||
+-                  fs->gd[grp].bg_free_inodes_count == 0)
++              gd = get_gd(fs, grp, &gi);
++              if (gd->bg_free_inodes_count < avefreei ||
++                  gd->bg_free_inodes_count == 0) {
++                      put_gd(gi);
+                       continue;
+-              if (!best_group || 
+-                      fs->gd[grp].bg_free_blocks_count > fs->gd[best_group].bg_free_blocks_count)
++              }
++              if (!best_group || gd->bg_free_blocks_count > bestgd->bg_free_blocks_count) {
++                      put_gd(bestgi);
+                       best_group = grp;
++                      bestgd = gd;
++                      bestgi = gi;
++              } else
++                      put_gd(gi);
+       }
+-      if (!(nod = allocate(get_blk(fs,fs->gd[best_group].bg_inode_bitmap),0)))
++      if (!(nod = allocate(GRP_GET_GROUP_IBM(fs, bestgd, &bi), 0)))
+               error_msg_and_die("couldn't allocate an inode (no free inode)");
+-      if(!(fs->gd[best_group].bg_free_inodes_count--))
++      GRP_PUT_GROUP_IBM(bi);
++      if(!(bestgd->bg_free_inodes_count--))
+               error_msg_and_die("group descr. free blocks count == 0 (corrupted fs?)");
+-      if(!(fs->sb.s_free_inodes_count--))
++      put_gd(bestgi);
++      if(!(fs->sb->s_free_inodes_count--))
+               error_msg_and_die("superblock free blocks count == 0 (corrupted fs?)");
+-      return fs->sb.s_inodes_per_group*best_group+nod;
++      return fs->sb->s_inodes_per_group*best_group+nod;
+ }
+ // print a bitmap allocation
+@@ -962,30 +1528,40 @@
+ //                              used after being freed, so once you start
+ //                              freeing blocks don't stop until the end of
+ //                              the file. moreover, i_blocks isn't updated.
+-//                              in fact, don't do that, just use extend_blk
+ // if hole!=0, create a hole in the file
+ static uint32
+ walk_bw(filesystem *fs, uint32 nod, blockwalker *bw, int32 *create, uint32 hole)
+ {
+       uint32 *bkref = 0;
++      uint32 bk = 0;
++      blkmap_info *bmi1 = NULL, *bmi2 = NULL, *bmi3 = NULL;
+       uint32 *b;
+       int extend = 0, reduce = 0;
++      inode *inod;
++      nod_info *ni;
++      uint32 *iblk;
++
+       if(create && (*create) < 0)
+               reduce = 1;
+-      if(bw->bnum >= get_nod(fs, nod)->i_blocks / INOBLK)
++      inod = get_nod(fs, nod, &ni);
++      if(bw->bnum >= inod->i_blocks / INOBLK)
+       {
+               if(create && (*create) > 0)
+               {
+                       (*create)--;
+                       extend = 1;
+               }
+-              else    
++              else
++              {
++                      put_nod(ni);
+                       return WALK_END;
++              }
+       }
++      iblk = inod->i_block;
+       // first direct block
+       if(bw->bpdir == EXT2_INIT_BLOCK)
+       {
+-              bkref = &get_nod(fs, nod)->i_block[bw->bpdir = 0];
++              bkref = &iblk[bw->bpdir = 0];
+               if(extend) // allocate first block
+                       *bkref = hole ? 0 : alloc_blk(fs,nod);
+               if(reduce) // free first block
+@@ -994,7 +1570,7 @@
+       // direct block
+       else if(bw->bpdir < EXT2_NDIR_BLOCKS)
+       {
+-              bkref = &get_nod(fs, nod)->i_block[++bw->bpdir];
++              bkref = &iblk[++bw->bpdir];
+               if(extend) // allocate block
+                       *bkref = hole ? 0 : alloc_blk(fs,nod);
+               if(reduce) // free block
+@@ -1007,10 +1583,10 @@
+               bw->bpdir = EXT2_IND_BLOCK;
+               bw->bpind = 0;
+               if(extend) // allocate indirect block
+-                      get_nod(fs, nod)->i_block[bw->bpdir] = alloc_blk(fs,nod);
++                      iblk[bw->bpdir] = alloc_blk(fs,nod);
+               if(reduce) // free indirect block
+-                      free_blk(fs, get_nod(fs, nod)->i_block[bw->bpdir]);
+-              b = (uint32*)get_blk(fs, get_nod(fs, nod)->i_block[bw->bpdir]);
++                      free_blk(fs, iblk[bw->bpdir]);
++              b = get_blkmap(fs, iblk[bw->bpdir], &bmi1);
+               bkref = &b[bw->bpind];
+               if(extend) // allocate first block
+                       *bkref = hole ? 0 : alloc_blk(fs,nod);
+@@ -1021,7 +1597,7 @@
+       else if((bw->bpdir == EXT2_IND_BLOCK) && (bw->bpind < BLOCKSIZE/4 - 1))
+       {
+               bw->bpind++;
+-              b = (uint32*)get_blk(fs, get_nod(fs, nod)->i_block[bw->bpdir]);
++              b = get_blkmap(fs, iblk[bw->bpdir], &bmi1);
+               bkref = &b[bw->bpind];
+               if(extend) // allocate block
+                       *bkref = hole ? 0 : alloc_blk(fs,nod);
+@@ -1036,15 +1612,15 @@
+               bw->bpind = 0;
+               bw->bpdind = 0;
+               if(extend) // allocate double indirect block
+-                      get_nod(fs, nod)->i_block[bw->bpdir] = alloc_blk(fs,nod);
++                      iblk[bw->bpdir] = alloc_blk(fs,nod);
+               if(reduce) // free double indirect block
+-                      free_blk(fs, get_nod(fs, nod)->i_block[bw->bpdir]);
+-              b = (uint32*)get_blk(fs, get_nod(fs, nod)->i_block[bw->bpdir]);
++                      free_blk(fs, iblk[bw->bpdir]);
++              b = get_blkmap(fs, iblk[bw->bpdir], &bmi1);
+               if(extend) // allocate first indirect block
+                       b[bw->bpind] = alloc_blk(fs,nod);
+               if(reduce) // free  firstindirect block
+                       free_blk(fs, b[bw->bpind]);
+-              b = (uint32*)get_blk(fs, b[bw->bpind]);
++              b = get_blkmap(fs, b[bw->bpind], &bmi2);
+               bkref = &b[bw->bpdind];
+               if(extend) // allocate first block
+                       *bkref = hole ? 0 : alloc_blk(fs,nod);
+@@ -1055,8 +1631,8 @@
+       else if((bw->bpdir == EXT2_DIND_BLOCK) && (bw->bpdind < BLOCKSIZE/4 - 1))
+       {
+               bw->bpdind++;
+-              b = (uint32*)get_blk(fs, get_nod(fs, nod)->i_block[bw->bpdir]);
+-              b = (uint32*)get_blk(fs, b[bw->bpind]);
++              b = get_blkmap(fs, iblk[bw->bpdir], &bmi1);
++              b = get_blkmap(fs, b[bw->bpind], &bmi2);
+               bkref = &b[bw->bpdind];
+               if(extend) // allocate block
+                       *bkref = hole ? 0 : alloc_blk(fs,nod);
+@@ -1069,12 +1645,12 @@
+               bw->bnum++;
+               bw->bpdind = 0;
+               bw->bpind++;
+-              b = (uint32*)get_blk(fs, get_nod(fs, nod)->i_block[bw->bpdir]);
++              b = get_blkmap(fs, iblk[bw->bpdir], &bmi1);
+               if(extend) // allocate indirect block
+                       b[bw->bpind] = alloc_blk(fs,nod);
+               if(reduce) // free indirect block
+                       free_blk(fs, b[bw->bpind]);
+-              b = (uint32*)get_blk(fs, b[bw->bpind]);
++              b = get_blkmap(fs, b[bw->bpind], &bmi2);
+               bkref = &b[bw->bpdind];
+               if(extend) // allocate first block
+                       *bkref = hole ? 0 : alloc_blk(fs,nod);
+@@ -1094,20 +1670,20 @@
+               bw->bpdind = 0;
+               bw->bptind = 0;
+               if(extend) // allocate triple indirect block
+-                      get_nod(fs, nod)->i_block[bw->bpdir] = alloc_blk(fs,nod);
++                      iblk[bw->bpdir] = alloc_blk(fs,nod);
+               if(reduce) // free triple indirect block
+-                      free_blk(fs, get_nod(fs, nod)->i_block[bw->bpdir]);
+-              b = (uint32*)get_blk(fs, get_nod(fs, nod)->i_block[bw->bpdir]);
++                      free_blk(fs, iblk[bw->bpdir]);
++              b = get_blkmap(fs, iblk[bw->bpdir], &bmi1);
+               if(extend) // allocate first double indirect block
+                       b[bw->bpind] = alloc_blk(fs,nod);
+               if(reduce) // free first double indirect block
+                       free_blk(fs, b[bw->bpind]);
+-              b = (uint32*)get_blk(fs, b[bw->bpind]);
++              b = get_blkmap(fs, b[bw->bpind], &bmi2);
+               if(extend) // allocate first indirect block
+                       b[bw->bpdind] = alloc_blk(fs,nod);
+               if(reduce) // free first indirect block
+                       free_blk(fs, b[bw->bpind]);
+-              b = (uint32*)get_blk(fs, b[bw->bpdind]);
++              b = get_blkmap(fs, b[bw->bpdind], &bmi3);
+               bkref = &b[bw->bptind];
+               if(extend) // allocate first data block
+                       *bkref = hole ? 0 : alloc_blk(fs,nod);
+@@ -1121,9 +1697,9 @@
+                 (bw->bptind < BLOCKSIZE/4 -1) )
+       {
+               bw->bptind++;
+-              b = (uint32*)get_blk(fs, get_nod(fs, nod)->i_block[bw->bpdir]);
+-              b = (uint32*)get_blk(fs, b[bw->bpind]);
+-              b = (uint32*)get_blk(fs, b[bw->bpdind]);
++              b = get_blkmap(fs, iblk[bw->bpdir], &bmi1);
++              b = get_blkmap(fs, b[bw->bpind], &bmi2);
++              b = get_blkmap(fs, b[bw->bpdind], &bmi3);
+               bkref = &b[bw->bptind];
+               if(extend) // allocate data block
+                       *bkref = hole ? 0 : alloc_blk(fs,nod);
+@@ -1140,13 +1716,13 @@
+               bw->bnum++;
+               bw->bptind = 0;
+               bw->bpdind++;
+-              b = (uint32*)get_blk(fs, get_nod(fs, nod)->i_block[bw->bpdir]);
+-              b = (uint32*)get_blk(fs, b[bw->bpind]);
++              b = get_blkmap(fs, iblk[bw->bpdir], &bmi1);
++              b = get_blkmap(fs, b[bw->bpind], &bmi2);
+               if(extend) // allocate single indirect block
+                       b[bw->bpdind] = alloc_blk(fs,nod);
+               if(reduce) // free indirect block
+                       free_blk(fs, b[bw->bpind]);
+-              b = (uint32*)get_blk(fs, b[bw->bpdind]);
++              b = get_blkmap(fs, b[bw->bpdind], &bmi3);
+               bkref = &b[bw->bptind];
+               if(extend) // allocate first data block
+                       *bkref = hole ? 0 : alloc_blk(fs,nod);
+@@ -1163,17 +1739,17 @@
+               bw->bpdind = 0;
+               bw->bptind = 0;
+               bw->bpind++;
+-              b = (uint32*)get_blk(fs, get_nod(fs, nod)->i_block[bw->bpdir]);
++              b = get_blkmap(fs, iblk[bw->bpdir], &bmi1);
+               if(extend) // allocate double indirect block
+                       b[bw->bpind] = alloc_blk(fs,nod);
+               if(reduce) // free double indirect block
+                       free_blk(fs, b[bw->bpind]);
+-              b = (uint32*)get_blk(fs, b[bw->bpind]);
++              b = get_blkmap(fs, b[bw->bpind], &bmi2);
+               if(extend) // allocate single indirect block
+                       b[bw->bpdind] = alloc_blk(fs,nod);
+               if(reduce) // free indirect block
+                       free_blk(fs, b[bw->bpind]);
+-              b = (uint32*)get_blk(fs, b[bw->bpdind]);
++              b = get_blkmap(fs, b[bw->bpdind], &bmi3);
+               bkref = &b[bw->bptind];
+               if(extend) // allocate first block
+                       *bkref = hole ? 0 : alloc_blk(fs,nod);
+@@ -1184,56 +1760,105 @@
+               error_msg_and_die("file too big !"); 
+       /* End change for walking triple indirection */
+-      if(*bkref)
+-      {
++      bk = *bkref;
++      if (bmi3)
++              put_blkmap(bmi3);
++      if (bmi2)
++              put_blkmap(bmi2);
++      if (bmi1)
++              put_blkmap(bmi1);
++
++      if(bk)
++      {
++              blk_info *bi;
++              gd_info *gi;
++              uint8 *block;
+               bw->bnum++;
+-              if(!reduce && !allocated(GRP_GET_BLOCK_BITMAP(fs,*bkref), GRP_BBM_OFFSET(fs,*bkref)))
+-                      error_msg_and_die("[block %d of inode %d is unallocated !]", *bkref, nod);
++              block = GRP_GET_BLOCK_BITMAP(fs,bk,&bi,&gi);
++              if(!reduce && !allocated(block, GRP_BBM_OFFSET(fs,bk)))
++                      error_msg_and_die("[block %d of inode %d is unallocated !]", bk, nod);
++              GRP_PUT_BLOCK_BITMAP(bi, gi);
+       }
+       if(extend)
+-              get_nod(fs, nod)->i_blocks = bw->bnum * INOBLK;
+-      return *bkref;
++              inod->i_blocks = bw->bnum * INOBLK;
++      put_nod(ni);
++      return bk;
+ }
+-// add blocks to an inode (file/dir/etc...)
+-static void
+-extend_blk(filesystem *fs, uint32 nod, block b, int amount)
++typedef struct
+ {
+-      int create = amount;
+-      blockwalker bw, lbw;
+-      uint32 bk;
+-      init_bw(&bw);
+-      if(amount < 0)
+-      {
+-              uint32 i;
+-              for(i = 0; i < get_nod(fs, nod)->i_blocks / INOBLK + amount; i++)
+-                      walk_bw(fs, nod, &bw, 0, 0);
+-              while(walk_bw(fs, nod, &bw, &create, 0) != WALK_END)
++      blockwalker bw;
++      uint32 nod;
++      nod_info *ni;
++      inode *inod;
++} inode_pos;
++#define INODE_POS_TRUNCATE 0
++#define INODE_POS_EXTEND 1
++
++// Call this to set up an ipos structure for future use with
++// extend_inode_blk to append blocks to the given inode.  If
++// op is INODE_POS_TRUNCATE, the inode is truncated to zero size.
++// If op is INODE_POS_EXTEND, the position is moved to the end
++// of the inode's data blocks.
++// Call inode_pos_finish when done with the inode_pos structure.
++static void
++inode_pos_init(filesystem *fs, inode_pos *ipos, uint32 nod, int op,
++             blockwalker *endbw)
++{
++      blockwalker lbw;
++
++      init_bw(&ipos->bw);
++      ipos->nod = nod;
++      ipos->inod = get_nod(fs, nod, &ipos->ni);
++      if (op == INODE_POS_TRUNCATE) {
++              int32 create = -1;
++              while(walk_bw(fs, nod, &ipos->bw, &create, 0) != WALK_END)
+                       /*nop*/;
+-              get_nod(fs, nod)->i_blocks += amount * INOBLK;
++              ipos->inod->i_blocks = 0;
+       }
+-      else
++
++      if (endbw)
++              ipos->bw = *endbw;
++      else {
++              /* Seek to the end */
++              init_bw(&ipos->bw);
++              lbw = ipos->bw;
++              while(walk_bw(fs, nod, &ipos->bw, 0, 0) != WALK_END)
++                      lbw = ipos->bw;
++              ipos->bw = lbw;
++      }
++}
++
++// Clean up the inode_pos structure.
++static void
++inode_pos_finish(filesystem *fs, inode_pos *ipos)
++{
++      put_nod(ipos->ni);
++}
++
++// add blocks to an inode (file/dir/etc...) at the given position.
++// This will only work when appending to the end of an inode.
++static void
++extend_inode_blk(filesystem *fs, inode_pos *ipos, block b, int amount)
++{
++      uint32 bk;
++      uint32 pos;
++
++      if (amount < 0)
++              error_msg_and_die("extend_inode_blk: Got negative amount");
++
++      for (pos = 0; amount; pos += BLOCKSIZE)
+       {
+-              lbw = bw;
+-              while((bk = walk_bw(fs, nod, &bw, 0, 0)) != WALK_END)
+-                      lbw = bw;
+-              bw = lbw;
+-              while(create)
+-              {
+-                      int i, copyb = 0;
+-                      if(!(fs->sb.s_reserved[200] & OP_HOLES))
+-                              copyb = 1;
+-                      else
+-                              for(i = 0; i < BLOCKSIZE / 4; i++)
+-                                      if(((int32*)(b + BLOCKSIZE * (amount - create)))[i])
+-                                      {
+-                                              copyb = 1;
+-                                              break;
+-                                      }
+-                      if((bk = walk_bw(fs, nod, &bw, &create, !copyb)) == WALK_END)
+-                              break;
+-                      if(copyb)
+-                              memcpy(get_blk(fs, bk), b + BLOCKSIZE * (amount - create - 1), BLOCKSIZE);
++              int hole = (fs->holes && is_blk_empty(b + pos));
++
++              bk = walk_bw(fs, ipos->nod, &ipos->bw, &amount, hole);
++              if (bk == WALK_END)
++                      error_msg_and_die("extend_inode_blk: extend failed");
++              if (!hole) {
++                      blk_info *bi;
++                      uint8 *block = get_blk(fs, bk, &bi);
++                      memcpy(block, b + pos, BLOCKSIZE);
++                      put_blk(bi);
+               }
+       }
+ }
+@@ -1242,15 +1867,17 @@
+ static void
+ add2dir(filesystem *fs, uint32 dnod, uint32 nod, const char* name)
+ {
+-      blockwalker bw;
++      blockwalker bw, lbw;
+       uint32 bk;
+-      uint8 *b;
+       directory *d;
++      dirwalker dw;
+       int reclen, nlen;
+       inode *node;
+       inode *pnode;
++      nod_info *dni, *ni;
++      inode_pos ipos;
+-      pnode = get_nod(fs, dnod);
++      pnode = get_nod(fs, dnod, &dni);
+       if((pnode->i_mode & FM_IFMT) != FM_IFDIR)
+               error_msg_and_die("can't add '%s' to a non-directory", name);
+       if(!*name)
+@@ -1262,52 +1889,52 @@
+       if(reclen > BLOCKSIZE)
+               error_msg_and_die("bad name '%s' (too long)", name);
+       init_bw(&bw);
++      lbw = bw;
+       while((bk = walk_bw(fs, dnod, &bw, 0, 0)) != WALK_END) // for all blocks in dir
+       {
+-              b = get_blk(fs, bk);
+               // for all dir entries in block
+-              for(d = (directory*)b; (int8*)d + sizeof(*d) < (int8*)b + BLOCKSIZE; d = (directory*)((int8*)d + d->d_rec_len))
++              for(d = get_dir(fs, bk, &dw); d; d = next_dir(&dw))
+               {
+                       // if empty dir entry, large enough, use it
+                       if((!d->d_inode) && (d->d_rec_len >= reclen))
+                       {
+                               d->d_inode = nod;
+-                              node = get_nod(fs, nod);
++                              node = get_nod(fs, nod, &ni);
++                              dir_set_name(&dw, name, nlen);
++                              put_dir(&dw);
+                               node->i_links_count++;
+-                              d->d_name_len = nlen;
+-                              strncpy(d->d_name, name, nlen);
+-                              return;
++                              put_nod(ni);
++                              goto out;
+                       }
+                       // if entry with enough room (last one?), shrink it & use it
+                       if(d->d_rec_len >= (sizeof(directory) + rndup(d->d_name_len, 4) + reclen))
+                       {
+-                              reclen = d->d_rec_len;
+-                              d->d_rec_len = sizeof(directory) + rndup(d->d_name_len, 4);
+-                              reclen -= d->d_rec_len;
+-                              d = (directory*) (((int8*)d) + d->d_rec_len);
+-                              d->d_rec_len = reclen;
+-                              d->d_inode = nod;
+-                              node = get_nod(fs, nod);
++                              d = shrink_dir(&dw, nod, name, nlen);
++                              put_dir(&dw);
++                              node = get_nod(fs, nod, &ni);
+                               node->i_links_count++;
+-                              d->d_name_len = nlen;
+-                              strncpy(d->d_name, name, nlen);
+-                              return;
++                              put_nod(ni);
++                              goto out;
+                       }
+               }
++              put_dir(&dw);
++              lbw = bw;
+       }
+       // we found no free entry in the directory, so we add a block
+-      if(!(b = get_workblk()))
+-              error_msg_and_die("get_workblk() failed.");
+-      d = (directory*)b;
+-      d->d_inode = nod;
+-      node = get_nod(fs, nod);
++      node = get_nod(fs, nod, &ni);
++      d = new_dir(fs, nod, name, nlen, &dw);
+       node->i_links_count++;
+-      d->d_rec_len = BLOCKSIZE;
+-      d->d_name_len = nlen;
+-      strncpy(d->d_name, name, nlen);
+-      extend_blk(fs, dnod, b, 1);
+-      get_nod(fs, dnod)->i_size += BLOCKSIZE;
+-      free_workblk(b);
++      put_nod(ni);
++      next_dir(&dw); // Force the data into the buffer
++
++      inode_pos_init(fs, &ipos, dnod, INODE_POS_EXTEND, &lbw);
++      extend_inode_blk(fs, &ipos, dir_data(&dw), 1);
++      inode_pos_finish(fs, &ipos);
++
++      put_dir(&dw);
++      pnode->i_size += BLOCKSIZE;
++out:
++      put_nod(dni);
+ }
+ // find an entry in a directory
+@@ -1321,11 +1948,13 @@
+       while((bk = walk_bw(fs, nod, &bw, 0, 0)) != WALK_END)
+       {
+               directory *d;
+-              uint8 *b;
+-              b = get_blk(fs, bk);
+-              for(d = (directory*)b; (int8*)d + sizeof(*d) < (int8*)b + BLOCKSIZE; d = (directory*)((int8*)d + d->d_rec_len))
+-                      if(d->d_inode && (nlen == d->d_name_len) && !strncmp(d->d_name, name, nlen))
++              dirwalker dw;
++              for (d = get_dir(fs, bk, &dw); d; d=next_dir(&dw))
++                      if(d->d_inode && (nlen == d->d_name_len) && !strncmp(dir_name(&dw), name, nlen)) {
++                              put_dir(&dw);
+                               return d->d_inode;
++                      }
++              put_dir(&dw);
+       }
+       return 0;
+ }
+@@ -1356,47 +1985,55 @@
+       return nod;
+ }
++// chmod an inode
++void
++chmod_fs(filesystem *fs, uint32 nod, uint16 mode, uint16 uid, uint16 gid)
++{
++      inode *node;
++      nod_info *ni;
++      node = get_nod(fs, nod, &ni);
++      node->i_mode = (node->i_mode & ~FM_IMASK) | (mode & FM_IMASK);
++      node->i_uid = uid;
++      node->i_gid = gid;
++      put_nod(ni);
++}
++
+ // create a simple inode
+ static uint32
+ mknod_fs(filesystem *fs, uint32 parent_nod, const char *name, uint16 mode, uint16 uid, uint16 gid, uint8 major, uint8 minor, uint32 ctime, uint32 mtime)
+ {
+       uint32 nod;
+       inode *node;
+-      if((nod = find_dir(fs, parent_nod, name)))
+-      {
+-              node = get_nod(fs, nod);
+-              if((node->i_mode & FM_IFMT) != (mode & FM_IFMT))
+-                      error_msg_and_die("node '%s' already exists and isn't of the same type", name);
+-              node->i_mode = mode;
+-      }
+-      else
++      nod_info *ni;
++      gd_info *gi;
++
++      nod = alloc_nod(fs);
++      node = get_nod(fs, nod, &ni);
++      node->i_mode = mode;
++      add2dir(fs, parent_nod, nod, name);
++      switch(mode & FM_IFMT)
+       {
+-              nod = alloc_nod(fs);
+-              node = get_nod(fs, nod);
+-              node->i_mode = mode;
+-              add2dir(fs, parent_nod, nod, name);
+-              switch(mode & FM_IFMT)
+-              {
+-                      case FM_IFLNK:
+-                              mode = FM_IFLNK | FM_IRWXU | FM_IRWXG | FM_IRWXO;
+-                              break;
+-                      case FM_IFBLK:
+-                      case FM_IFCHR:
+-                              ((uint8*)get_nod(fs, nod)->i_block)[0] = minor;
+-                              ((uint8*)get_nod(fs, nod)->i_block)[1] = major;
+-                              break;
+-                      case FM_IFDIR:
+-                              add2dir(fs, nod, nod, ".");
+-                              add2dir(fs, nod, parent_nod, "..");
+-                              fs->gd[GRP_GROUP_OF_INODE(fs,nod)].bg_used_dirs_count++;
+-                              break;
+-              }
++      case FM_IFLNK:
++              mode = FM_IFLNK | FM_IRWXU | FM_IRWXG | FM_IRWXO;
++              break;
++      case FM_IFBLK:
++      case FM_IFCHR:
++              ((uint8*)node->i_block)[0] = minor;
++              ((uint8*)node->i_block)[1] = major;
++              break;
++      case FM_IFDIR:
++              add2dir(fs, nod, nod, ".");
++              add2dir(fs, nod, parent_nod, "..");
++              get_gd(fs,GRP_GROUP_OF_INODE(fs,nod),&gi)->bg_used_dirs_count++;
++              put_gd(gi);
++              break;
+       }
+       node->i_uid = uid;
+       node->i_gid = gid;
+       node->i_atime = mtime;
+       node->i_ctime = ctime;
+       node->i_mtime = mtime;
++      put_nod(ni);
+       return nod;
+ }
+@@ -1413,33 +2050,73 @@
+ mklink_fs(filesystem *fs, uint32 parent_nod, const char *name, size_t size, uint8 *b, uid_t uid, gid_t gid, uint32 ctime, uint32 mtime)
+ {
+       uint32 nod = mknod_fs(fs, parent_nod, name, FM_IFLNK | FM_IRWXU | FM_IRWXG | FM_IRWXO, uid, gid, 0, 0, ctime, mtime);
+-      extend_blk(fs, nod, 0, - (int)get_nod(fs, nod)->i_blocks / INOBLK);
+-      get_nod(fs, nod)->i_size = size;
+-      if(size <= 4 * (EXT2_TIND_BLOCK+1))
+-      {
+-              strncpy((char*)get_nod(fs, nod)->i_block, (char*)b, size);
++      nod_info *ni;
++      inode *node = get_nod(fs, nod, &ni);
++      inode_pos ipos;
++
++      inode_pos_init(fs, &ipos, nod, INODE_POS_TRUNCATE, NULL);
++      node->i_size = size;
++      if(size < 4 * (EXT2_TIND_BLOCK+1))
++      {
++              strncpy((char*)node->i_block, (char*)b, size);
++              ((char*)node->i_block)[size+1] = '\0';
++              inode_pos_finish(fs, &ipos);
++              put_nod(ni);
+               return nod;
+       }
+-      extend_blk(fs, nod, b, rndup(size, BLOCKSIZE) / BLOCKSIZE);
++      extend_inode_blk(fs, &ipos, b, rndup(size, BLOCKSIZE) / BLOCKSIZE);
++      inode_pos_finish(fs, &ipos);
++      put_nod(ni);
+       return nod;
+ }
++static void
++fs_upgrade_rev1_largefile(filesystem *fs)
++{
++      fs->sb->s_rev_level = 1;
++      fs->sb->s_first_ino = EXT2_GOOD_OLD_FIRST_INO;
++      fs->sb->s_inode_size = EXT2_GOOD_OLD_INODE_SIZE;
++}
++
++#define COPY_BLOCKS 16
++#define CB_SIZE (COPY_BLOCKS * BLOCKSIZE)
++
+ // make a file from a FILE*
+ static uint32
+-mkfile_fs(filesystem *fs, uint32 parent_nod, const char *name, uint32 mode, size_t size, FILE *f, uid_t uid, gid_t gid, uint32 ctime, uint32 mtime)
++mkfile_fs(filesystem *fs, uint32 parent_nod, const char *name, uint32 mode, FILE *f, uid_t uid, gid_t gid, uint32 ctime, uint32 mtime)
+ {
+       uint8 * b;
+       uint32 nod = mknod_fs(fs, parent_nod, name, mode|FM_IFREG, uid, gid, 0, 0, ctime, mtime);
+-      extend_blk(fs, nod, 0, - (int)get_nod(fs, nod)->i_blocks / INOBLK);
+-      get_nod(fs, nod)->i_size = size;
+-      if (size) {
+-              if(!(b = (uint8*)calloc(rndup(size, BLOCKSIZE), 1)))
+-                      error_msg_and_die("not enough mem to read file '%s'", name);
+-              if(f)
+-                      fread(b, size, 1, f); // FIXME: ugly. use mmap() ...
+-              extend_blk(fs, nod, b, rndup(size, BLOCKSIZE) / BLOCKSIZE);
+-              free(b);
+-      }
++      nod_info *ni;
++      inode *node = get_nod(fs, nod, &ni);
++      off_t size = 0;
++      size_t readbytes;
++      inode_pos ipos;
++      int fullsize;
++
++      b = malloc(CB_SIZE);
++      if (!b)
++              error_msg_and_die("mkfile_fs: out of memory");
++      inode_pos_init(fs, &ipos, nod, INODE_POS_TRUNCATE, NULL);
++      readbytes = fread(b, 1, CB_SIZE, f);
++      while (readbytes) {
++              fullsize = rndup(readbytes, BLOCKSIZE);
++              // Fill to end of block with zeros.
++              memset(b + readbytes, 0, fullsize - readbytes);
++              extend_inode_blk(fs, &ipos, b, fullsize / BLOCKSIZE);
++              size += readbytes;
++              readbytes = fread(b, 1, CB_SIZE, f);
++      }
++      if (size > 0x7fffffff) {
++              if (fs->sb->s_rev_level < 1)
++                      fs_upgrade_rev1_largefile(fs);
++              fs->sb->s_feature_ro_compat |= EXT2_FEATURE_RO_COMPAT_LARGE_FILE;
++      }
++      node->i_dir_acl = size >> 32;
++      node->i_size = size;
++      inode_pos_finish(fs, &ipos);
++      put_nod(ni);
++      free(b);
+       return nod;
+ }
+@@ -1591,13 +2268,24 @@
+                               dname = malloc(len + 1);
+                               for(i = start; i < count; i++)
+                               {
++                                      uint32 oldnod;
+                                       SNPRINTF(dname, len, "%s%lu", name, i);
+-                                      mknod_fs(fs, nod, dname, mode, uid, gid, major, minor + (i * increment - start), ctime, mtime);
++                                      oldnod = find_dir(fs, nod, dname);
++                                      if(oldnod)
++                                              chmod_fs(fs, oldnod, mode, uid, gid);
++                                      else
++                                              mknod_fs(fs, nod, dname, mode, uid, gid, major, minor + (i * increment - start), ctime, mtime);
+                               }
+                               free(dname);
+                       }
+                       else
+-                              mknod_fs(fs, nod, name, mode, uid, gid, major, minor, ctime, mtime);
++                      {
++                              uint32 oldnod = find_dir(fs, nod, name);
++                              if(oldnod)
++                                      chmod_fs(fs, oldnod, mode, uid, gid);
++                              else
++                                      mknod_fs(fs, nod, name, mode, uid, gid, major, minor, ctime, mtime);
++                      }
+               }
+       }
+       if (line)
+@@ -1643,6 +2331,10 @@
+                       switch(st.st_mode & S_IFMT)
+                       {
+                               case S_IFLNK:
++                                      if((st.st_mode & S_IFMT) == S_IFREG || st.st_size >= 4 * (EXT2_TIND_BLOCK+1))
++                                              stats->nblocks += (st.st_size + BLOCKSIZE - 1) / BLOCKSIZE;
++                                      stats->ninodes++;
++                                      break;
+                               case S_IFREG:
+                                       if((st.st_mode & S_IFMT) == S_IFREG || st.st_size > 4 * (EXT2_TIND_BLOCK+1))
+                                               stats->nblocks += (st.st_size + BLOCKSIZE - 1) / BLOCKSIZE;
+@@ -1657,19 +2349,33 @@
+                                       if(chdir(dent->d_name) < 0)
+                                               perror_msg_and_die(dent->d_name);
+                                       add2fs_from_dir(fs, this_nod, squash_uids, squash_perms, fs_timestamp, stats);
+-                                      chdir("..");
++                                      if (chdir("..") == -1)
++                                              perror_msg_and_die("..");
++
+                                       break;
+                               default:
+                                       break;
+                       }
+               else
+               {
++                      if((nod = find_dir(fs, this_nod, name)))
++                      {
++                              error_msg("ignoring duplicate entry %s", name);
++                              if(S_ISDIR(st.st_mode)) {
++                                      if(chdir(dent->d_name) < 0)
++                                              perror_msg_and_die(name);
++                                      add2fs_from_dir(fs, nod, squash_uids, squash_perms, fs_timestamp, stats);
++                                      if (chdir("..") == -1)
++                                              perror_msg_and_die("..");
++                              }
++                              continue;
++                      }
+                       save_nod = 0;
+                       /* Check for hardlinks */
+                       if (!S_ISDIR(st.st_mode) && !S_ISLNK(st.st_mode) && st.st_nlink > 1) {
+-                              int32 hdlink = is_hardlink(st.st_ino);
++                              int32 hdlink = is_hardlink(fs, st.st_ino);
+                               if (hdlink >= 0) {
+-                                      add2dir(fs, this_nod, hdlinks.hdl[hdlink].dst_nod, name);
++                                      add2dir(fs, this_nod, fs->hdlinks.hdl[hdlink].dst_nod, name);
+                                       continue;
+                               } else {
+                                       save_nod = 1;
+@@ -1697,8 +2403,12 @@
+                                       free(lnk);
+                                       break;
+                               case S_IFREG:
+-                                      fh = xfopen(dent->d_name, "rb");
+-                                      nod = mkfile_fs(fs, this_nod, name, mode, st.st_size, fh, uid, gid, ctime, mtime);
++                                      fh = fopen(dent->d_name, "rb");
++                                      if (!fh) {
++                                              error_msg("Unable to open file %s", dent->d_name);
++                                              break;
++                                      }
++                                      nod = mkfile_fs(fs, this_nod, name, mode, fh, uid, gid, ctime, mtime);
+                                       fclose(fh);
+                                       break;
+                               case S_IFDIR:
+@@ -1706,199 +2416,128 @@
+                                       if(chdir(dent->d_name) < 0)
+                                               perror_msg_and_die(name);
+                                       add2fs_from_dir(fs, nod, squash_uids, squash_perms, fs_timestamp, stats);
+-                                      chdir("..");
++                                      if (chdir("..") == -1)
++                                              perror_msg_and_die("..");
+                                       break;
+                               default:
+                                       error_msg("ignoring entry %s", name);
+                       }
+                       if (save_nod) {
+-                              if (hdlinks.count == hdlink_cnt) {
+-                                      if ((hdlinks.hdl = 
+-                                               realloc (hdlinks.hdl, (hdlink_cnt + HDLINK_CNT) *
++                              if (fs->hdlinks.count == fs->hdlink_cnt) {
++                                      if ((fs->hdlinks.hdl =
++                                               realloc (fs->hdlinks.hdl, (fs->hdlink_cnt + HDLINK_CNT) *
+                                                                 sizeof (struct hdlink_s))) == NULL) {
+                                               error_msg_and_die("Not enough memory");
+                                       }
+-                                      hdlink_cnt += HDLINK_CNT;
++                                      fs->hdlink_cnt += HDLINK_CNT;
+                               }
+-                              hdlinks.hdl[hdlinks.count].src_inode = st.st_ino;
+-                              hdlinks.hdl[hdlinks.count].dst_nod = nod;
+-                              hdlinks.count++;
++                              fs->hdlinks.hdl[fs->hdlinks.count].src_inode = st.st_ino;
++                              fs->hdlinks.hdl[fs->hdlinks.count].dst_nod = nod;
++                              fs->hdlinks.count++;
+                       }
+               }
+       }
+       closedir(dh);
+ }
+-// endianness swap of x-indirect blocks
++// Copy size blocks from src to dst, putting holes in the output
++// file (if possible) if the input block is all zeros.
++// Copy size blocks from src to dst, putting holes in the output
++// file (if possible) if the input block is all zeros.
+ static void
+-swap_goodblocks(filesystem *fs, inode *nod)
++copy_file(filesystem *fs, FILE *dst, FILE *src, size_t size)
+ {
+-      uint32 i,j;
+-      int done=0;
+-      uint32 *b,*b2;
++      uint8 *b;
+-      uint32 nblk = nod->i_blocks / INOBLK;
+-      if((nod->i_size && !nblk) || ((nod->i_mode & FM_IFBLK) == FM_IFBLK) || ((nod->i_mode & FM_IFCHR) == FM_IFCHR))
+-              for(i = 0; i <= EXT2_TIND_BLOCK; i++)
+-                      nod->i_block[i] = swab32(nod->i_block[i]);
+-      if(nblk <= EXT2_IND_BLOCK)
+-              return;
+-      swap_block(get_blk(fs, nod->i_block[EXT2_IND_BLOCK]));
+-      if(nblk <= EXT2_DIND_BLOCK + BLOCKSIZE/4)
+-              return;
+-      /* Currently this will fail b'cos the number of blocks as stored
+-         in i_blocks also includes the indirection blocks (see
+-         walk_bw). But this function assumes that i_blocks only
+-         stores the count of data blocks ( Actually according to
+-         "Understanding the Linux Kernel" (Table 17-3 p502 1st Ed)
+-         i_blocks IS supposed to store the count of data blocks). so
+-         with a file of size 268K nblk would be 269.The above check
+-         will be false even though double indirection hasn't been
+-         started.This is benign as 0 means block 0 which has been
+-         zeroed out and therefore points back to itself from any offset
+-       */
+-      // FIXME: I have fixed that, but I have the feeling the rest of
+-      // ths function needs to be fixed for the same reasons - Xav
+-      assert(nod->i_block[EXT2_DIND_BLOCK] != 0);
+-      for(i = 0; i < BLOCKSIZE/4; i++)
+-              if(nblk > EXT2_IND_BLOCK + BLOCKSIZE/4 + (BLOCKSIZE/4)*i )
+-                      swap_block(get_blk(fs, ((uint32*)get_blk(fs, nod->i_block[EXT2_DIND_BLOCK]))[i]));
+-      swap_block(get_blk(fs, nod->i_block[EXT2_DIND_BLOCK]));
+-      if(nblk <= EXT2_IND_BLOCK + BLOCKSIZE/4 + BLOCKSIZE/4 * BLOCKSIZE/4)
+-              return;
+-      /* Adding support for triple indirection */
+-      b = (uint32*)get_blk(fs,nod->i_block[EXT2_TIND_BLOCK]);
+-      for(i=0;i < BLOCKSIZE/4 && !done ; i++) {
+-              b2 = (uint32*)get_blk(fs,b[i]); 
+-              for(j=0; j<BLOCKSIZE/4;j++) {
+-                      if (nblk > ( EXT2_IND_BLOCK + BLOCKSIZE/4 + 
+-                                   (BLOCKSIZE/4)*(BLOCKSIZE/4) + 
+-                                   i*(BLOCKSIZE/4)*(BLOCKSIZE/4) + 
+-                                   j*(BLOCKSIZE/4)) ) 
+-                        swap_block(get_blk(fs,b2[j]));
+-                      else {
+-                        done = 1;
+-                        break;
+-                      }
++      b = malloc(BLOCKSIZE);
++      if (!b)
++              error_msg_and_die("copy_file: out of memory");
++      if (fseek(src, 0, SEEK_SET))
++              perror_msg_and_die("fseek");
++      if (ftruncate(fileno(dst), 0))
++              perror_msg_and_die("copy_file: ftruncate");
++      while (size > 0) {
++              if (fread(b, BLOCKSIZE, 1, src) != 1)
++                      perror_msg_and_die("copy failed on read");
++              if ((dst != stdout) && fs->holes && is_blk_empty(b)) {
++                      /* Empty block, just skip it */
++                      if (fseek(dst, BLOCKSIZE, SEEK_CUR))
++                              perror_msg_and_die("fseek");
++              } else {
++                      if (fwrite(b, BLOCKSIZE, 1, dst) != 1)
++                              perror_msg_and_die("copy failed on write");
+               }
+-              swap_block((uint8 *)b2);
++              size--;
+       }
+-      swap_block((uint8 *)b);
+-      return;
++      free(b);
+ }
+-static void
+-swap_badblocks(filesystem *fs, inode *nod)
++// Allocate a new filesystem structure, allocate internal memory,
++// and initialize the contents.
++static filesystem *
++alloc_fs(int swapit, char *fname, uint32 nbblocks, FILE *srcfile)
+ {
+-      uint32 i,j;
+-      int done=0;
+-      uint32 *b,*b2;
++      filesystem *fs;
++      struct stat srcstat, dststat;
+-      uint32 nblk = nod->i_blocks / INOBLK;
+-      if((nod->i_size && !nblk) || ((nod->i_mode & FM_IFBLK) == FM_IFBLK) || ((nod->i_mode & FM_IFCHR) == FM_IFCHR))
+-              for(i = 0; i <= EXT2_TIND_BLOCK; i++)
+-                      nod->i_block[i] = swab32(nod->i_block[i]);
+-      if(nblk <= EXT2_IND_BLOCK)
+-              return;
+-      swap_block(get_blk(fs, nod->i_block[EXT2_IND_BLOCK]));
+-      if(nblk <= EXT2_DIND_BLOCK + BLOCKSIZE/4)
+-              return;
+-      /* See comment in swap_goodblocks */
+-      assert(nod->i_block[EXT2_DIND_BLOCK] != 0);
+-      swap_block(get_blk(fs, nod->i_block[EXT2_DIND_BLOCK]));
+-      for(i = 0; i < BLOCKSIZE/4; i++)
+-              if(nblk > EXT2_IND_BLOCK + BLOCKSIZE/4 + (BLOCKSIZE/4)*i )
+-                      swap_block(get_blk(fs, ((uint32*)get_blk(fs, nod->i_block[EXT2_DIND_BLOCK]))[i]));
+-      if(nblk <= EXT2_IND_BLOCK + BLOCKSIZE/4 + BLOCKSIZE/4 * BLOCKSIZE/4)
+-              return;
+-      /* Adding support for triple indirection */
+-      b = (uint32*)get_blk(fs,nod->i_block[EXT2_TIND_BLOCK]);
+-      swap_block((uint8 *)b);
+-      for(i=0;i < BLOCKSIZE/4 && !done ; i++) {
+-              b2 = (uint32*)get_blk(fs,b[i]); 
+-              swap_block((uint8 *)b2);
+-              for(j=0; j<BLOCKSIZE/4;j++) {
+-                      if (nblk > ( EXT2_IND_BLOCK + BLOCKSIZE/4 + 
+-                                   (BLOCKSIZE/4)*(BLOCKSIZE/4) + 
+-                                   i*(BLOCKSIZE/4)*(BLOCKSIZE/4) + 
+-                                   j*(BLOCKSIZE/4)) ) 
+-                        swap_block(get_blk(fs,b2[j]));
+-                      else {
+-                        done = 1;
+-                        break;
+-                      }
+-              }
+-      }
+-      return;
+-}
++      fs = malloc(sizeof(*fs));
++      if (!fs)
++              error_msg_and_die("not enough memory for filesystem");
++      memset(fs, 0, sizeof(*fs));
++      fs->swapit = swapit;
++      cache_init(&fs->blks, MAX_FREE_CACHE_BLOCKS, blk_elem_val, blk_freed);
++      cache_init(&fs->gds, MAX_FREE_CACHE_GDS, gd_elem_val, gd_freed);
++      cache_init(&fs->blkmaps, MAX_FREE_CACHE_BLOCKMAPS,
++                 blkmap_elem_val, blkmap_freed);
++      cache_init(&fs->inodes, MAX_FREE_CACHE_INODES,
++                 inode_elem_val, inode_freed);
++      fs->hdlink_cnt = HDLINK_CNT;
++      fs->hdlinks.hdl = calloc(sizeof(struct hdlink_s), fs->hdlink_cnt);
++      if (!fs->hdlinks.hdl)
++              error_msg_and_die("Not enough memory");
++      fs->hdlinks.count = 0 ;
+-// endianness swap of the whole filesystem
+-static void
+-swap_goodfs(filesystem *fs)
+-{
+-      uint32 i;
+-      for(i = 1; i < fs->sb.s_inodes_count; i++)
+-      {
+-              inode *nod = get_nod(fs, i);
+-              if(nod->i_mode & FM_IFDIR)
+-              {
+-                      blockwalker bw;
+-                      uint32 bk;
+-                      init_bw(&bw);
+-                      while((bk = walk_bw(fs, i, &bw, 0, 0)) != WALK_END)
+-                      {
+-                              directory *d;
+-                              uint8 *b;
+-                              b = get_blk(fs, bk);
+-                              for(d = (directory*)b; (int8*)d + sizeof(*d) < (int8*)b + BLOCKSIZE; d = (directory*)((int8*)d + swab16(d->d_rec_len)))
+-                                      swap_dir(d);
+-                      }
+-              }
+-              swap_goodblocks(fs, nod);
+-              swap_nod(nod);
+-      }
+-      for(i=0;i<GRP_NBGROUPS(fs);i++)
+-              swap_gd(&(fs->gd[i]));
+-      swap_sb(&fs->sb);
++      if (strcmp(fname, "-") == 0)
++              fs->f = tmpfile();
++      else if (srcfile) {
++              if (fstat(fileno(srcfile), &srcstat))
++                      perror_msg_and_die("fstat srcfile");
++              if (stat(fname, &dststat) == 0
++                  && srcstat.st_ino == dststat.st_ino
++                  && srcstat.st_dev == dststat.st_dev)
++                {
++                      // source and destination are the same file, don't
++                      // truncate or copy, just use the file.
++                      fs->f = fopen(fname, "r+b");
++              } else {
++                      fs->f = fopen(fname, "w+b");
++                      if (fs->f)
++                              copy_file(fs, fs->f, srcfile, nbblocks);
++              }
++      } else
++              fs->f = fopen(fname, "w+b");
++      if (!fs->f)
++              perror_msg_and_die("opening %s", fname);
++      return fs;
+ }
++/* Make sure the output file is the right size */
+ static void
+-swap_badfs(filesystem *fs)
++set_file_size(filesystem *fs)
+ {
+-      uint32 i;
+-      swap_sb(&fs->sb);
+-      for(i=0;i<GRP_NBGROUPS(fs);i++)
+-              swap_gd(&(fs->gd[i]));
+-      for(i = 1; i < fs->sb.s_inodes_count; i++)
+-      {
+-              inode *nod = get_nod(fs, i);
+-              swap_nod(nod);
+-              swap_badblocks(fs, nod);
+-              if(nod->i_mode & FM_IFDIR)
+-              {
+-                      blockwalker bw;
+-                      uint32 bk;
+-                      init_bw(&bw);
+-                      while((bk = walk_bw(fs, i, &bw, 0, 0)) != WALK_END)
+-                      {
+-                              directory *d;
+-                              uint8 *b;
+-                              b = get_blk(fs, bk);
+-                              for(d = (directory*)b; (int8*)d + sizeof(*d) < (int8*)b + BLOCKSIZE; d = (directory*)((int8*)d + d->d_rec_len))
+-                                      swap_dir(d);
+-                      }
+-              }
+-      }
++      if (ftruncate(fileno(fs->f),
++                    ((off_t) fs->sb->s_blocks_count) * BLOCKSIZE))
++              perror_msg_and_die("set_file_size: ftruncate");
+ }
+ // initialize an empty filesystem
+ static filesystem *
+-init_fs(int nbblocks, int nbinodes, int nbresrvd, int holes, uint32 fs_timestamp)
++init_fs(int nbblocks, int nbinodes, int nbresrvd, int holes,
++      uint32 fs_timestamp, uint32 creator_os, int swapit, char *fname)
+ {
+       uint32 i;
+       filesystem *fs;
+-      directory *d;
+-      uint8 * b;
++      dirwalker dw;
+       uint32 nod, first_block;
+       uint32 nbgroups,nbinodes_per_group,overhead_per_group,free_blocks,
+               free_blocks_per_group,nbblocks_per_group,min_nbgroups;
+@@ -1906,6 +2545,11 @@
+       uint32 j;
+       uint8 *bbm,*ibm;
+       inode *itab0;
++      blk_info *bi;
++      nod_info *ni;
++      groupdescriptor *gd;
++      gd_info *gi;
++      inode_pos ipos;
+       
+       if(nbresrvd < 0)
+               error_msg_and_die("reserved blocks value is invalid. Note: options have changed, see --help or the man page.");
+@@ -1919,10 +2563,14 @@
+        */
+       min_nbgroups = (nbinodes + INODES_PER_GROUP - 1) / INODES_PER_GROUP;
++      /* On filesystems with 1k block size, the bootloader area uses a full
++       * block. For 2048 and up, the superblock can be fitted into block 0.
++       */
++      first_block = (BLOCKSIZE == 1024);
++
+       /* nbblocks is the total number of blocks in the filesystem.
+        * a block group can have no more than 8192 blocks.
+        */
+-      first_block = (BLOCKSIZE == 1024);
+       nbgroups = (nbblocks - first_block + BLOCKS_PER_GROUP - 1) / BLOCKS_PER_GROUP;
+       if(nbgroups < min_nbgroups) nbgroups = min_nbgroups;
+       nbblocks_per_group = rndup((nbblocks - first_block + nbgroups - 1)/nbgroups, 8);
+@@ -1934,51 +2582,59 @@
+       gdsz = rndup(nbgroups*sizeof(groupdescriptor),BLOCKSIZE)/BLOCKSIZE;
+       itblsz = nbinodes_per_group * sizeof(inode)/BLOCKSIZE;
+       overhead_per_group = 3 /*sb,bbm,ibm*/ + gdsz + itblsz;
+-      if((uint32)nbblocks - 1 < overhead_per_group * nbgroups)
+-              error_msg_and_die("too much overhead, try fewer inodes or more blocks. Note: options have changed, see --help or the man page.");
+-      free_blocks = nbblocks - overhead_per_group*nbgroups - 1 /*boot block*/;
++      free_blocks = nbblocks - overhead_per_group*nbgroups - first_block;
+       free_blocks_per_group = nbblocks_per_group - overhead_per_group;
++      if(free_blocks < 0)
++              error_msg_and_die("too much overhead, try fewer inodes or more blocks. Note: options have changed, see --help or the man page.");
+-      if(!(fs = (filesystem*)calloc(nbblocks, BLOCKSIZE)))
+-              error_msg_and_die("not enough memory for filesystem");
++      fs = alloc_fs(swapit, fname, nbblocks, NULL);
++      fs->sb = calloc(1, SUPERBLOCK_SIZE);
++      if (!fs->sb)
++              error_msg_and_die("error allocating header memory");
+       // create the superblock for an empty filesystem
+-      fs->sb.s_inodes_count = nbinodes_per_group * nbgroups;
+-      fs->sb.s_blocks_count = nbblocks;
+-      fs->sb.s_r_blocks_count = nbresrvd;
+-      fs->sb.s_free_blocks_count = free_blocks;
+-      fs->sb.s_free_inodes_count = fs->sb.s_inodes_count - EXT2_FIRST_INO + 1;
+-      fs->sb.s_first_data_block = first_block;
+-      fs->sb.s_log_block_size = BLOCKSIZE >> 11;
+-      fs->sb.s_log_frag_size = BLOCKSIZE >> 11;
+-      fs->sb.s_blocks_per_group = nbblocks_per_group;
+-      fs->sb.s_frags_per_group = nbblocks_per_group;
+-      fs->sb.s_inodes_per_group = nbinodes_per_group;
+-      fs->sb.s_wtime = fs_timestamp;
+-      fs->sb.s_magic = EXT2_MAGIC_NUMBER;
+-      fs->sb.s_lastcheck = fs_timestamp;
++      fs->sb->s_inodes_count = nbinodes_per_group * nbgroups;
++      fs->sb->s_blocks_count = nbblocks;
++      fs->sb->s_r_blocks_count = nbresrvd;
++      fs->sb->s_free_blocks_count = free_blocks;
++      fs->sb->s_free_inodes_count = fs->sb->s_inodes_count - EXT2_FIRST_INO + 1;
++      fs->sb->s_first_data_block = first_block;
++      fs->sb->s_log_block_size = BLOCKSIZE >> 11;
++      fs->sb->s_log_frag_size = BLOCKSIZE >> 11;
++      fs->sb->s_blocks_per_group = nbblocks_per_group;
++      fs->sb->s_frags_per_group = nbblocks_per_group;
++      fs->sb->s_inodes_per_group = nbinodes_per_group;
++      fs->sb->s_wtime = fs_timestamp;
++      fs->sb->s_magic = EXT2_MAGIC_NUMBER;
++      fs->sb->s_lastcheck = fs_timestamp;
++      fs->sb->s_creator_os = creator_os;
++
++      set_file_size(fs);
+       // set up groupdescriptors
+-      for(i=0, bbmpos=gdsz+2, ibmpos=bbmpos+1, itblpos=ibmpos+1;
++      for(i=0, bbmpos=first_block+1+gdsz, ibmpos=bbmpos+1, itblpos=ibmpos+1;
+               i<nbgroups;
+               i++, bbmpos+=nbblocks_per_group, ibmpos+=nbblocks_per_group, itblpos+=nbblocks_per_group)
+       {
++              gd = get_gd(fs, i, &gi);
++
+               if(free_blocks > free_blocks_per_group) {
+-                      fs->gd[i].bg_free_blocks_count = free_blocks_per_group;
++                      gd->bg_free_blocks_count = free_blocks_per_group;
+                       free_blocks -= free_blocks_per_group;
+               } else {
+-                      fs->gd[i].bg_free_blocks_count = free_blocks;
++                      gd->bg_free_blocks_count = free_blocks;
+                       free_blocks = 0; // this is the last block group
+               }
+               if(i)
+-                      fs->gd[i].bg_free_inodes_count = nbinodes_per_group;
++                      gd->bg_free_inodes_count = nbinodes_per_group;
+               else
+-                      fs->gd[i].bg_free_inodes_count = nbinodes_per_group -
++                      gd->bg_free_inodes_count = nbinodes_per_group -
+                                                       EXT2_FIRST_INO + 2;
+-              fs->gd[i].bg_used_dirs_count = 0;
+-              fs->gd[i].bg_block_bitmap = bbmpos;
+-              fs->gd[i].bg_inode_bitmap = ibmpos;
+-              fs->gd[i].bg_inode_table = itblpos;
++              gd->bg_used_dirs_count = 0;
++              gd->bg_block_bitmap = bbmpos;
++              gd->bg_inode_bitmap = ibmpos;
++              gd->bg_inode_table = itblpos;
++              put_gd(gi);
+       }
+       /* Mark non-filesystem blocks and inodes as allocated */
+@@ -1984,110 +2640,143 @@
+       /* Mark non-filesystem blocks and inodes as allocated */
+       /* Mark system blocks and inodes as allocated         */
+       for(i = 0; i<nbgroups;i++) {
+-
+               /* Block bitmap */
+-              bbm = get_blk(fs,fs->gd[i].bg_block_bitmap);    
++              gd = get_gd(fs, i, &gi);
++              bbm = GRP_GET_GROUP_BBM(fs, gd, &bi);
+               //non-filesystem blocks
+-              for(j = fs->gd[i].bg_free_blocks_count
++              for(j = gd->bg_free_blocks_count
+                       + overhead_per_group + 1; j <= BLOCKSIZE * 8; j++)
+                       allocate(bbm, j); 
+               //system blocks
+               for(j = 1; j <= overhead_per_group; j++)
+                       allocate(bbm, j); 
+-              
++              GRP_PUT_GROUP_BBM(bi);
++
+               /* Inode bitmap */
+-              ibm = get_blk(fs,fs->gd[i].bg_inode_bitmap);    
++              ibm = GRP_GET_GROUP_IBM(fs, gd, &bi);
+               //non-filesystem inodes
+-              for(j = fs->sb.s_inodes_per_group+1; j <= BLOCKSIZE * 8; j++)
++              for(j = fs->sb->s_inodes_per_group+1; j <= BLOCKSIZE * 8; j++)
+                       allocate(ibm, j);
+               //system inodes
+               if(i == 0)
+                       for(j = 1; j < EXT2_FIRST_INO; j++)
+                               allocate(ibm, j);
++              GRP_PUT_GROUP_IBM(bi);
++              put_gd(gi);
+       }
+       // make root inode and directory
+       /* We have groups now. Add the root filesystem in group 0 */
+       /* Also increment the directory count for group 0 */
+-      fs->gd[0].bg_free_inodes_count--;
+-      fs->gd[0].bg_used_dirs_count = 1;
+-      itab0 = (inode *)get_blk(fs,fs->gd[0].bg_inode_table);
+-      itab0[EXT2_ROOT_INO-1].i_mode = FM_IFDIR | FM_IRWXU | FM_IRGRP | FM_IROTH | FM_IXGRP | FM_IXOTH; 
+-      itab0[EXT2_ROOT_INO-1].i_ctime = fs_timestamp;
+-      itab0[EXT2_ROOT_INO-1].i_mtime = fs_timestamp;
+-      itab0[EXT2_ROOT_INO-1].i_atime = fs_timestamp;
+-      itab0[EXT2_ROOT_INO-1].i_size = BLOCKSIZE;
+-      itab0[EXT2_ROOT_INO-1].i_links_count = 2;
+-
+-      if(!(b = get_workblk()))
+-              error_msg_and_die("get_workblk() failed.");
+-      d = (directory*)b;
+-      d->d_inode = EXT2_ROOT_INO;
+-      d->d_rec_len = sizeof(directory)+4;
+-      d->d_name_len = 1;
+-      strcpy(d->d_name, ".");
+-      d = (directory*)(b + d->d_rec_len);
+-      d->d_inode = EXT2_ROOT_INO;
+-      d->d_rec_len = BLOCKSIZE - (sizeof(directory)+4);
+-      d->d_name_len = 2;
+-      strcpy(d->d_name, "..");
+-      extend_blk(fs, EXT2_ROOT_INO, b, 1);
++      gd = get_gd(fs, 0, &gi);
++      gd->bg_free_inodes_count--;
++      gd->bg_used_dirs_count = 1;
++      put_gd(gi);
++      itab0 = get_nod(fs, EXT2_ROOT_INO, &ni);
++      itab0->i_mode = FM_IFDIR | FM_IRWXU | FM_IRGRP | FM_IROTH | FM_IXGRP | FM_IXOTH;
++      itab0->i_ctime = fs_timestamp;
++      itab0->i_mtime = fs_timestamp;
++      itab0->i_atime = fs_timestamp;
++      itab0->i_size = BLOCKSIZE;
++      itab0->i_links_count = 2;
++      put_nod(ni);
++
++      new_dir(fs, EXT2_ROOT_INO, ".", 1, &dw);
++      shrink_dir(&dw, EXT2_ROOT_INO, "..", 2);
++      next_dir(&dw); // Force the data into the buffer
++      inode_pos_init(fs, &ipos, EXT2_ROOT_INO, INODE_POS_EXTEND, NULL);
++      extend_inode_blk(fs, &ipos, dir_data(&dw), 1);
++      inode_pos_finish(fs, &ipos);
++      put_dir(&dw);
+-      // make lost+found directory and reserve blocks
+-      if(fs->sb.s_r_blocks_count)
++      // make lost+found directory
++      if(fs->sb->s_r_blocks_count)
+       {
+-              nod = mkdir_fs(fs, EXT2_ROOT_INO, "lost+found", FM_IRWXU, 0, 0, fs_timestamp, fs_timestamp);
++              inode *node;
++              uint8 *b;
++
++              nod = mkdir_fs(fs, EXT2_ROOT_INO, "lost+found", FM_IRWXU,
++                             0, 0, fs_timestamp, fs_timestamp);
++              b = get_workblk();
+               memset(b, 0, BLOCKSIZE);
+               ((directory*)b)->d_rec_len = BLOCKSIZE;
+-              /* We run into problems with e2fsck if directory lost+found grows
+-               * bigger than this. Need to find out why this happens - sundar
+-               */
+-              if (fs->sb.s_r_blocks_count > fs->sb.s_blocks_count * MAX_RESERVED_BLOCKS ) 
+-                      fs->sb.s_r_blocks_count = fs->sb.s_blocks_count * MAX_RESERVED_BLOCKS;
+-              for(i = 1; i < fs->sb.s_r_blocks_count; i++)
+-                      extend_blk(fs, nod, b, 1);
+-              get_nod(fs, nod)->i_size = fs->sb.s_r_blocks_count * BLOCKSIZE;
++              inode_pos_init(fs, &ipos, nod, INODE_POS_EXTEND, NULL);
++              // It is always 16 blocks to start out with
++              for(i = 1; i < 16; i++)
++                      extend_inode_blk(fs, &ipos, b, 1);
++              inode_pos_finish(fs, &ipos);
++              free_workblk(b);
++              node = get_nod(fs, nod, &ni);
++              node->i_size = 16 * BLOCKSIZE;
++              put_nod(ni);
+       }
+-      free_workblk(b);
+       // administrative info
+-      fs->sb.s_state = 1;
+-      fs->sb.s_max_mnt_count = 20;
++      fs->sb->s_state = 1;
++      fs->sb->s_max_mnt_count = 20;
+       // options for me
+-      if(holes)
+-              fs->sb.s_reserved[200] |= OP_HOLES;
++      fs->holes = holes;
+       
+       return fs;
+ }
+ // loads a filesystem from disk
+ static filesystem *
+-load_fs(FILE * fh, int swapit)
++load_fs(FILE *fh, int swapit, char *fname)
+ {
+-      size_t fssize;
++      off_t fssize;
+       filesystem *fs;
+-      if((fseek(fh, 0, SEEK_END) < 0) || ((ssize_t)(fssize = ftell(fh)) == -1))
++
++      if((fseek(fh, 0, SEEK_END) < 0) || ((fssize = ftello(fh)) == -1))
+               perror_msg_and_die("input filesystem image");
+       rewind(fh);
+-      fssize = (fssize + BLOCKSIZE - 1) / BLOCKSIZE;
++      if ((fssize % BLOCKSIZE) != 0)
++              error_msg_and_die("Input file not a multiple of block size");
++      fssize /= BLOCKSIZE;
+       if(fssize < 16) // totally arbitrary
+               error_msg_and_die("too small filesystem");
+-      if(!(fs = (filesystem*)calloc(fssize, BLOCKSIZE)))
+-              error_msg_and_die("not enough memory for filesystem");
+-      if(fread(fs, BLOCKSIZE, fssize, fh) != fssize)
+-              perror_msg_and_die("input filesystem image");
++      fs = alloc_fs(swapit, fname, fssize, fh);
++
++      /* Read and check the superblock, then read the superblock
++       * and all the group descriptors */
++      fs->sb = malloc(SUPERBLOCK_SIZE);
++      if (!fs->sb)
++              error_msg_and_die("error allocating header memory");
++      if (fseek(fs->f, SUPERBLOCK_OFFSET, SEEK_SET))
++              perror_msg_and_die("fseek");
++      if (fread(fs->sb, SUPERBLOCK_SIZE, 1, fs->f) != 1)
++              perror_msg_and_die("fread filesystem image superblock");
+       if(swapit)
+-              swap_badfs(fs);
+-      if(fs->sb.s_rev_level || (fs->sb.s_magic != EXT2_MAGIC_NUMBER))
++              swap_sb(fs->sb);
++
++      if((fs->sb->s_rev_level > 1) || (fs->sb->s_magic != EXT2_MAGIC_NUMBER))
+               error_msg_and_die("not a suitable ext2 filesystem");
++      if (fs->sb->s_rev_level > 0) {
++              if (fs->sb->s_first_ino != EXT2_GOOD_OLD_FIRST_INO)
++                      error_msg_and_die("First inode incompatible");
++              if (fs->sb->s_inode_size != EXT2_GOOD_OLD_INODE_SIZE)
++                      error_msg_and_die("inode size incompatible");
++              if (fs->sb->s_feature_compat)
++                      error_msg_and_die("Unsupported compat features");
++              if (fs->sb->s_feature_incompat)
++                      error_msg_and_die("Unsupported incompat features");
++              if (fs->sb->s_feature_ro_compat
++                  & ~EXT2_FEATURE_RO_COMPAT_LARGE_FILE)
++                      error_msg_and_die("Unsupported ro compat features");
++      }
++
++      set_file_size(fs);
+       return fs;
+ }
+ static void
+ free_fs(filesystem *fs)
+ {
++      free(fs->hdlinks.hdl);
++      fclose(fs->f);
++      free(fs->sb);
+       free(fs);
+ }
+@@ -2123,16 +2812,23 @@
+ {
+       blockwalker bw;
+       uint32 bk;
+-      int32 fsize = get_nod(fs, nod)->i_size;
++      nod_info *ni;
++      inode *node = get_nod(fs, nod, &ni);
++      int32 fsize = node->i_size;
++      blk_info *bi;
++
+       init_bw(&bw);
+       while((bk = walk_bw(fs, nod, &bw, 0, 0)) != WALK_END)
+       {
+               if(fsize <= 0)
+                       error_msg_and_die("wrong size while saving inode %d", nod);
+-              if(fwrite(get_blk(fs, bk), (fsize > BLOCKSIZE) ? BLOCKSIZE : fsize, 1, f) != 1)
++              if(fwrite(get_blk(fs, bk, &bi),
++                        (fsize > BLOCKSIZE) ? BLOCKSIZE : fsize, 1, f) != 1)
+                       error_msg_and_die("error while saving inode %d", nod);
++              put_blk(bi);
+               fsize -= BLOCKSIZE;
+       }
++      put_nod(ni);
+ }
+@@ -2141,8 +2837,11 @@
+ print_dev(filesystem *fs, uint32 nod)
+ {
+       int minor, major;
+-      minor = ((uint8*)get_nod(fs, nod)->i_block)[0];
+-      major = ((uint8*)get_nod(fs, nod)->i_block)[1];
++      nod_info *ni;
++      inode *node = get_nod(fs, nod, &ni);
++      minor = ((uint8*)node->i_block)[0];
++      major = ((uint8*)node->i_block)[1];
++      put_nod(ni);
+       printf("major: %d, minor: %d\n", major, minor);
+ }
+@@ -2157,17 +2856,15 @@
+       while((bk = walk_bw(fs, nod, &bw, 0, 0)) != WALK_END)
+       {
+               directory *d;
+-              uint8 *b;
+-              b = get_blk(fs, bk);
+-              for(d = (directory*)b; (int8*)d + sizeof(*d) < (int8*)b + BLOCKSIZE; d = (directory*)((int8*)d + d->d_rec_len))
++              dirwalker dw;
++              for (d = get_dir(fs, bk, &dw); d; d = next_dir(&dw))
+                       if(d->d_inode)
+                       {
+-                              int i;
+                               printf("entry '");
+-                              for(i = 0; i < d->d_name_len; i++)
+-                                      putchar(d->d_name[i]);
++                              fwrite(dir_name(&dw), 1, d->d_name_len, stdout);
+                               printf("' (inode %d): rec_len: %d (name_len: %d)\n", d->d_inode, d->d_rec_len, d->d_name_len);
+                       }
++              put_dir(&dw);
+       }
+ }
+@@ -2175,14 +2872,18 @@
+ static void
+ print_link(filesystem *fs, uint32 nod)
+ {
+-      if(!get_nod(fs, nod)->i_blocks)
+-              printf("links to '%s'\n", (char*)get_nod(fs, nod)->i_block);
++      nod_info *ni;
++      inode *node = get_nod(fs, nod, &ni);
++
++      if(!node->i_blocks)
++              printf("links to '%s'\n", (char*)node->i_block);
+       else
+       {
+               printf("links to '");
+               write_blocks(fs, nod, stdout);
+               printf("'\n");
+       }
++      put_nod(ni);
+ }
+ // make a ls-like printout of permissions
+@@ -2251,8 +2952,13 @@
+ {
+       char *s;
+       char perms[11];
+-      if(!get_nod(fs, nod)->i_mode)
+-              return;
++      nod_info *ni;
++      inode *node = get_nod(fs, nod, &ni);
++      blk_info *bi;
++      gd_info *gi;
++
++      if(!node->i_mode)
++              goto out;
+       switch(nod)
+       {
+               case EXT2_BAD_INO:
+@@ -2274,15 +2980,18 @@
+               default:
+                       s = (nod >= EXT2_FIRST_INO) ? "normal" : "unknown reserved"; 
+       }
+-      printf("inode %d (%s, %d links): ", nod, s, get_nod(fs, nod)->i_links_count);
+-      if(!allocated(GRP_GET_INODE_BITMAP(fs,nod), GRP_IBM_OFFSET(fs,nod)))
++      printf("inode %d (%s, %d links): ", nod, s, node->i_links_count);
++      if(!allocated(GRP_GET_INODE_BITMAP(fs,nod,&bi,&gi), GRP_IBM_OFFSET(fs,nod)))
+       {
++              GRP_PUT_INODE_BITMAP(bi,gi);
+               printf("unallocated\n");
+-              return;
++              goto out;
+       }
+-      make_perms(get_nod(fs, nod)->i_mode, perms);
+-      printf("%s,  size: %d byte%s (%d block%s)\n", perms, plural(get_nod(fs, nod)->i_size), plural(get_nod(fs, nod)->i_blocks / INOBLK));
+-      switch(get_nod(fs, nod)->i_mode & FM_IFMT)
++      GRP_PUT_INODE_BITMAP(bi,gi);
++      make_perms(node->i_mode, perms);
++      printf("%s,  size: %d byte%s (%d block%s)\n", perms,
++             plural(node->i_size), plural(node->i_blocks / INOBLK));
++      switch(node->i_mode & FM_IFMT)
+       {
+               case FM_IFSOCK:
+                       list_blocks(fs, nod);
+@@ -2310,6 +3019,8 @@
+                       list_blocks(fs, nod);
+       }
+       printf("Done with inode %d\n",nod);
++out:
++      put_nod(ni);
+ }
+ // describes various fields in a filesystem
+@@ -2317,49 +3028,65 @@
+ print_fs(filesystem *fs)
+ {
+       uint32 i;
++      blk_info *bi;
++      groupdescriptor *gd;
++      gd_info *gi;
+       uint8 *ibm;
+       printf("%d blocks (%d free, %d reserved), first data block: %d\n",
+-             fs->sb.s_blocks_count, fs->sb.s_free_blocks_count,
+-             fs->sb.s_r_blocks_count, fs->sb.s_first_data_block);
+-      printf("%d inodes (%d free)\n", fs->sb.s_inodes_count,
+-             fs->sb.s_free_inodes_count);
++             fs->sb->s_blocks_count, fs->sb->s_free_blocks_count,
++             fs->sb->s_r_blocks_count, fs->sb->s_first_data_block);
++      printf("%d inodes (%d free)\n", fs->sb->s_inodes_count,
++             fs->sb->s_free_inodes_count);
+       printf("block size = %d, frag size = %d\n",
+-             fs->sb.s_log_block_size ? (fs->sb.s_log_block_size << 11) : 1024,
+-             fs->sb.s_log_frag_size ? (fs->sb.s_log_frag_size << 11) : 1024);
++             fs->sb->s_log_block_size ? (fs->sb->s_log_block_size << 11) : 1024,
++             fs->sb->s_log_frag_size ? (fs->sb->s_log_frag_size << 11) : 1024);
+       printf("number of groups: %d\n",GRP_NBGROUPS(fs));
+       printf("%d blocks per group,%d frags per group,%d inodes per group\n",
+-           fs->sb.s_blocks_per_group, fs->sb.s_frags_per_group,
+-           fs->sb.s_inodes_per_group);
++           fs->sb->s_blocks_per_group, fs->sb->s_frags_per_group,
++           fs->sb->s_inodes_per_group);
+       printf("Size of inode table: %d blocks\n",
+-              (int)(fs->sb.s_inodes_per_group * sizeof(inode) / BLOCKSIZE));
++              (int)(fs->sb->s_inodes_per_group * sizeof(inode) / BLOCKSIZE));
+       for (i = 0; i < GRP_NBGROUPS(fs); i++) {
+               printf("Group No: %d\n", i+1);
++              gd = get_gd(fs, i, &gi);
+               printf("block bitmap: block %d,inode bitmap: block %d, inode table: block %d\n",
+-                   fs->gd[i].bg_block_bitmap, fs->gd[i].bg_inode_bitmap,
+-                   fs->gd[i].bg_inode_table);
++                   gd->bg_block_bitmap,
++                   gd->bg_inode_bitmap,
++                   gd->bg_inode_table);
+               printf("block bitmap allocation:\n");
+-              print_bm(GRP_GET_GROUP_BBM(fs, i),fs->sb.s_blocks_per_group);
++              print_bm(GRP_GET_GROUP_BBM(fs, gd, &bi),fs->sb->s_blocks_per_group);
++              GRP_PUT_GROUP_BBM(bi);
+               printf("inode bitmap allocation:\n");
+-              ibm = GRP_GET_GROUP_IBM(fs, i);
+-              print_bm(ibm, fs->sb.s_inodes_per_group);
+-              for (i = 1; i <= fs->sb.s_inodes_per_group; i++)
++              ibm = GRP_GET_GROUP_IBM(fs, gd, &bi);
++              print_bm(ibm, fs->sb->s_inodes_per_group);
++              for (i = 1; i <= fs->sb->s_inodes_per_group; i++)
+                       if (allocated(ibm, i))
+                               print_inode(fs, i);
++              GRP_PUT_GROUP_IBM(bi);
++              put_gd(gi);
+       }
+ }
+ static void
+-dump_fs(filesystem *fs, FILE * fh, int swapit)
++finish_fs(filesystem *fs)
+ {
+-      uint32 nbblocks = fs->sb.s_blocks_count;
+-      fs->sb.s_reserved[200] = 0;
+-      if(swapit)
+-              swap_goodfs(fs);
+-      if(fwrite(fs, BLOCKSIZE, nbblocks, fh) < nbblocks)
+-              perror_msg_and_die("output filesystem image");
+-      if(swapit)
+-              swap_badfs(fs);
++      if (cache_flush(&fs->inodes))
++              error_msg_and_die("entry mismatch on inode cache flush");
++      if (cache_flush(&fs->blkmaps))
++              error_msg_and_die("entry mismatch on blockmap cache flush");
++      if (cache_flush(&fs->gds))
++              error_msg_and_die("entry mismatch on gd cache flush");
++      if (cache_flush(&fs->blks))
++              error_msg_and_die("entry mismatch on block cache flush");
++      if(fs->swapit)
++              swap_sb(fs->sb);
++      if (fseek(fs->f, SUPERBLOCK_OFFSET, SEEK_SET))
++              perror_msg_and_die("fseek");
++      if(fwrite(fs->sb, SUPERBLOCK_SIZE, 1, fs->f) != 1)
++              perror_msg_and_die("output filesystem superblock");
++      if(fs->swapit)
++              swap_sb(fs->sb);
+ }
+ static void
+@@ -2419,10 +3146,12 @@
+       "  -x, --starting-image <image>\n"
+       "  -d, --root <directory>\n"
+       "  -D, --devtable <file>\n"
++      "  -B, --block-size <bytes>\n"
+       "  -b, --size-in-blocks <blocks>\n"
+       "  -i, --bytes-per-inode <bytes per inode>\n"
+       "  -N, --number-of-inodes <number of inodes>\n"
+       "  -m, --reserved-percentage <percentage of blocks to reserve>\n"
++      "  -o, --creator-os <os>      'linux' (default), 'hurd', 'freebsd' or number.\n"
+       "  -g, --block-map <path>     Generate a block map file for this path.\n"
+       "  -e, --fill-value <value>   Fill unallocated blocks with value.\n"
+       "  -z, --allow-holes          Allow files with holes.\n"
+@@ -2444,15 +3173,34 @@
+ extern char* optarg;
+ extern int optind, opterr, optopt;
++// parse the value for -o <os>
++int
++lookup_creator_os(const char *name)
++{
++        if (isdigit (*name))
++                return atoi(name);
++        else if (strcasecmp(name, "linux") == 0)
++                return EXT2_OS_LINUX;
++        else if (strcasecmp(name, "GNU") == 0 || strcasecmp(name, "hurd") == 0)
++                return EXT2_OS_HURD;
++        else if (strcasecmp(name, "freebsd") == 0)
++                return EXT2_OS_FREEBSD;
++        else if (strcasecmp(name, "lites") == 0)
++                return EXT2_OS_LITES;
++        else
++                return EXT2_OS_LINUX;
++}
++
+ int
+ main(int argc, char **argv)
+ {
+-      int nbblocks = -1;
++      long long nbblocks = -1;
+       int nbinodes = -1;
+       int nbresrvd = -1;
+       float bytes_per_inode = -1;
+       float reserved_frac = -1;
+       int fs_timestamp = -1;
++      int creator_os = CREATOR_OS;
+       char * fsout = "-";
+       char * fsin = 0;
+       char * dopt[MAX_DOPT];
+@@ -2466,6 +3214,7 @@
+       int squash_perms = 0;
+       uint16 endian = 1;
+       int bigendian = !*(char*)&endian;
++      char *volumelabel = NULL;
+       filesystem *fs;
+       int i;
+       int c;
+@@ -2476,13 +3225,16 @@
+         { "starting-image",   required_argument,      NULL, 'x' },
+         { "root",             required_argument,      NULL, 'd' },
+         { "devtable",         required_argument,      NULL, 'D' },
++        { "block-size",       required_argument,      NULL, 'B' },
+         { "size-in-blocks",   required_argument,      NULL, 'b' },
+         { "bytes-per-inode",  required_argument,      NULL, 'i' },
+         { "number-of-inodes", required_argument,      NULL, 'N' },
++        { "volume-label",     required_argument,      NULL, 'L' },
+         { "reserved-percentage", required_argument,   NULL, 'm' },
++        { "creator-os",       required_argument,      NULL, 'o' },
+         { "block-map",        required_argument,      NULL, 'g' },
+         { "fill-value",       required_argument,      NULL, 'e' },
+-        { "allow-holes",      no_argument,            NULL, 'z' },
++        { "allow-holes",      no_argument,            NULL, 'z' },
+         { "faketime",         no_argument,            NULL, 'f' },
+         { "squash",           no_argument,            NULL, 'q' },
+         { "squash-uids",      no_argument,            NULL, 'U' },
+@@ -2495,11 +3247,11 @@
+       app_name = argv[0];
+-      while((c = getopt_long(argc, argv, "x:d:D:b:i:N:m:g:e:zfqUPhVv", longopts, NULL)) != EOF) {
++      while((c = getopt_long(argc, argv, "x:d:D:B:b:i:N:L:m:o:g:e:zfqUPhVv", longopts, NULL)) != EOF) {
+ #else
+       app_name = argv[0];
+-      while((c = getopt(argc, argv,      "x:d:D:b:i:N:m:g:e:zfqUPhVv")) != EOF) {
++      while((c = getopt(argc, argv,      "x:d:D:B:b:i:N:L:m:o:g:e:zfqUPhVv")) != EOF) {
+ #endif /* HAVE_GETOPT_LONG */
+               switch(c)
+               {
+@@ -2510,6 +3262,9 @@
+                       case 'D':
+                               dopt[didx++] = optarg;
+                               break;
++                      case 'B':
++                              blocksize = SI_atof(optarg);
++                              break;
+                       case 'b':
+                               nbblocks = SI_atof(optarg);
+                               break;
+@@ -2519,9 +3274,15 @@
+                       case 'N':
+                               nbinodes = SI_atof(optarg);
+                               break;
++                      case 'L':
++                              volumelabel = optarg;
++                              break;
+                       case 'm':
+                               reserved_frac = SI_atof(optarg) / 100;
+                               break;
++                      case 'o':
++                              creator_os = lookup_creator_os(optarg);
++                              break;
+                       case 'g':
+                               gopt[gidx++] = optarg;
+                               break;
+@@ -2565,21 +3326,21 @@
+               error_msg_and_die("Not enough arguments. Try --help or else see the man page.");
+       fsout = argv[optind];
+-      hdlinks.hdl = (struct hdlink_s *)malloc(hdlink_cnt * sizeof(struct hdlink_s));
+-      if (!hdlinks.hdl)
+-              error_msg_and_die("Not enough memory");
+-      hdlinks.count = 0 ;
++      if(blocksize != 1024 && blocksize != 2048 && blocksize != 4096)
++              error_msg_and_die("Valid block sizes: 1024, 2048 or 4096.");
++      if(creator_os < 0)
++              error_msg_and_die("Creator OS unknown.");
+       if(fsin)
+       {
+               if(strcmp(fsin, "-"))
+               {
+                       FILE * fh = xfopen(fsin, "rb");
+-                      fs = load_fs(fh, bigendian);
++                      fs = load_fs(fh, bigendian, fsout);
+                       fclose(fh);
+               }
+               else
+-                      fs = load_fs(stdin, bigendian);
++                      fs = load_fs(stdin, bigendian, fsout);
+       }
+       else
+       {
+@@ -2609,16 +3370,29 @@
+               }
+               if(fs_timestamp == -1)
+                       fs_timestamp = time(NULL);
+-              fs = init_fs(nbblocks, nbinodes, nbresrvd, holes, fs_timestamp);
++              fs = init_fs(nbblocks, nbinodes, nbresrvd, holes,
++                           fs_timestamp, creator_os, bigendian, fsout);
+       }
++      if (volumelabel != NULL)
++              strncpy((char *)fs->sb->s_volume_name, volumelabel,
++                      sizeof(fs->sb->s_volume_name));
+       
+       populate_fs(fs, dopt, didx, squash_uids, squash_perms, fs_timestamp, NULL);
+       if(emptyval) {
+               uint32 b;
+-              for(b = 1; b < fs->sb.s_blocks_count; b++)
+-                      if(!allocated(GRP_GET_BLOCK_BITMAP(fs,b),GRP_BBM_OFFSET(fs,b)))
+-                              memset(get_blk(fs, b), emptyval, BLOCKSIZE);
++              for(b = 1; b < fs->sb->s_blocks_count; b++) {
++                      blk_info *bi;
++                      gd_info *gi;
++                      if(!allocated(GRP_GET_BLOCK_BITMAP(fs,b,&bi,&gi),
++                                    GRP_BBM_OFFSET(fs,b))) {
++                              blk_info *bi2;
++                              memset(get_blk(fs, b, &bi2), emptyval,
++                                     BLOCKSIZE);
++                              put_blk(bi2);
++                      }
++                      GRP_PUT_BLOCK_BITMAP(bi,gi);
++              }
+       }
+       if(verbose)
+               print_fs(fs);
+@@ -2628,24 +3402,22 @@
+               char fname[MAX_FILENAME];
+               char *p;
+               FILE *fh;
++              nod_info *ni;
+               if(!(nod = find_path(fs, EXT2_ROOT_INO, gopt[i])))
+                       error_msg_and_die("path %s not found in filesystem", gopt[i]);
+               while((p = strchr(gopt[i], '/')))
+                       *p = '_';
+               SNPRINTF(fname, MAX_FILENAME-1, "%s.blk", gopt[i]);
+               fh = xfopen(fname, "wb");
+-              fprintf(fh, "%d:", get_nod(fs, nod)->i_size);
++              fprintf(fh, "%d:", get_nod(fs, nod, &ni)->i_size);
++              put_nod(ni);
+               flist_blocks(fs, nod, fh);
+               fclose(fh);
+       }
+-      if(strcmp(fsout, "-"))
+-      {
+-              FILE * fh = xfopen(fsout, "wb");
+-              dump_fs(fs, fh, bigendian);
+-              fclose(fh);
+-      }
+-      else
+-              dump_fs(fs, stdout, bigendian);
++      finish_fs(fs);
++      if(strcmp(fsout, "-") == 0)
++              copy_file(fs, stdout, fs->f, fs->sb->s_blocks_count);
++
+       free_fs(fs);
+       return 0;
+ }
+Index: genext2fs-1.4.1/cache.h
+===================================================================
+--- /dev/null
++++ genext2fs-1.4.1/cache.h
+@@ -0,0 +1,128 @@
++#ifndef __CACHE_H__
++#define __CACHE_H__
++
++#include "list.h"
++
++#define CACHE_LISTS 256
++
++typedef struct
++{
++    list_elem link;
++    list_elem lru_link;
++} cache_link;
++
++typedef struct
++{
++    /* LRU list holds unused items */
++    unsigned int lru_entries;
++    list_elem lru_list;
++    unsigned int max_free_entries;
++
++    unsigned int entries;
++    list_elem lists[CACHE_LISTS];
++    unsigned int (*elem_val)(cache_link *elem);
++    void (*freed)(cache_link *elem);
++} listcache;
++
++static inline void
++cache_add(listcache *c, cache_link *elem)
++{
++    unsigned int hash = c->elem_val(elem) % CACHE_LISTS;
++    int delcount = c->lru_entries - c->max_free_entries;
++
++    if (delcount > 0) {
++        /* Delete some unused items. */
++        list_elem *lru, *next;
++        cache_link *l;
++        list_for_each_elem_safe(&c->lru_list, lru, next) {
++            l = container_of(lru, cache_link, lru_link);
++            list_del(lru);
++            list_del(&l->link);
++            c->entries--;
++            c->lru_entries--;
++            c->freed(l);
++            delcount--;
++            if (delcount <= 0)
++                break;
++        }
++    }
++
++    c->entries++;
++    list_item_init(&elem->lru_link); /* Mark it not in the LRU list */
++    list_add_after(&c->lists[hash], &elem->link);
++}
++
++static inline void
++cache_item_set_unused(listcache *c, cache_link *elem)
++{
++    list_add_before(&c->lru_list, &elem->lru_link);
++    c->lru_entries++;
++}
++
++static inline cache_link *
++cache_find(listcache *c, unsigned int val)
++{
++    unsigned int hash = val % CACHE_LISTS;
++    list_elem *elem;
++
++    list_for_each_elem(&c->lists[hash], elem) {
++        cache_link *l = container_of(elem, cache_link, link);
++        if (c->elem_val(l) == val) {
++            if (!list_empty(&l->lru_link)) {
++                /* It's in the unused list, remove it. */
++                list_del(&l->lru_link);
++                list_item_init(&l->lru_link);
++                c->lru_entries--;
++            }
++            return l;
++        }
++    }
++    return NULL;
++}
++
++static inline int
++cache_flush(listcache *c)
++{
++    list_elem *elem, *next;
++    cache_link *l;
++    int i;
++
++    list_for_each_elem_safe(&c->lru_list, elem, next) {
++        l = container_of(elem, cache_link, lru_link);
++        list_del(elem);
++        list_del(&l->link);
++        c->entries--;
++        c->lru_entries--;
++        c->freed(l);
++    }
++
++    for (i = 0; i < CACHE_LISTS; i++) {
++        list_for_each_elem_safe(&c->lists[i], elem, next) {
++            l = container_of(elem, cache_link, link);
++            list_del(&l->link);
++            c->entries--;
++            c->freed(l);
++        }
++    }
++
++    return c->entries || c->lru_entries;
++}
++
++static inline void
++cache_init(listcache *c, unsigned int max_free_entries,
++       unsigned int (*elem_val)(cache_link *elem),
++       void (*freed)(cache_link *elem))
++{
++    int i;
++
++    c->entries = 0;
++    c->lru_entries = 0;
++    c->max_free_entries = max_free_entries;
++    list_init(&c->lru_list);
++    for (i = 0; i < CACHE_LISTS; i++)
++        list_init(&c->lists[i]);
++    c->elem_val = elem_val;
++    c->freed = freed;
++}
++
++#endif /* __CACHE_H__ */
+Index: genext2fs-1.4.1/list.h
+===================================================================
+--- /dev/null
++++ genext2fs-1.4.1/list.h
+@@ -0,0 +1,78 @@
++#ifndef __LIST_H__
++#define __LIST_H__
++
++#if STDC_HEADERS
++# include <stdlib.h>
++# include <stddef.h>
++#else
++# if HAVE_STDLIB_H
++#  include <stdlib.h>
++# endif
++# if HAVE_STDDEF_H
++#  include <stddef.h>
++# endif
++#endif
++
++#ifndef offsetof
++#define offsetof(st, m) \
++     ((size_t) ( (char *)&((st *)(0))->m - (char *)0 ))
++#endif
++
++#define container_of(ptr, type, member) ({ \
++                const typeof( ((type *)0)->member ) *__mptr = (ptr); \
++                (type *)( (char *)__mptr - offsetof(type,member) );})
++
++typedef struct list_elem
++{
++    struct list_elem *next;
++    struct list_elem *prev;
++} list_elem;
++
++static inline void list_init(list_elem *list)
++{
++    list->next = list;
++    list->prev = list;
++}
++
++static inline void list_add_after(list_elem *pos, list_elem *elem)
++{
++    elem->next = pos->next;
++    elem->prev = pos;
++    pos->next->prev = elem;
++    pos->next = elem;
++}
++
++static inline void list_add_before(list_elem *pos, list_elem *elem)
++{
++    elem->prev = pos->prev;
++    elem->next = pos;
++    pos->prev->next = elem;
++    pos->prev = elem;
++}
++
++static inline void list_del(list_elem *elem)
++{
++    elem->next->prev = elem->prev;
++    elem->prev->next = elem->next;
++}
++
++static inline void list_item_init(list_elem *elem)
++{
++    elem->next = elem;
++    elem->prev = elem;
++}
++
++static inline int list_empty(list_elem *elem)
++{
++    return elem->next == elem;
++}
++
++#define list_for_each_elem(list, curr)            \
++    for ((curr) = (list)->next; (curr) != (list); (curr) = (curr)->next)
++
++#define list_for_each_elem_safe(list, curr, next)    \
++    for ((curr) = (list)->next, (next) = (curr)->next;    \
++         (curr) != (list);                    \
++         (curr) = (next), (next) = (curr)->next)
++
++#endif /* __LIST_H__ */
diff --git a/package/genext2fs/genext2fs-update-genext2fs.c-to-rev-1.118.patch b/package/genext2fs/genext2fs-update-genext2fs.c-to-rev-1.118.patch
deleted file mode 100644 (file)
index 755ee9d..0000000
+++ /dev/null
@@ -1,2971 +0,0 @@
-[PATCH] update genext2fs.c to CVS rev 1.118
-
-See http://genext2fs.cvs.sourceforge.net/viewvc/genext2fs/genext2fs/genext2fs.c?view=log
-for details.
-
-Numerous bugfixes, large file and filesystem support, rev 1 filesystems,
-volume id support, block size, ..
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- cache.h     |  128 ++++
- genext2fs.c | 1870 ++++++++++++++++++++++++++++++++++++++++++------------------
- list.h      |   78 ++
- 3 files changed, 1527 insertions(+), 549 deletions(-)
-
-Index: genext2fs-1.4.1/genext2fs.c
-===================================================================
---- genext2fs-1.4.1.orig/genext2fs.c
-+++ genext2fs-1.4.1/genext2fs.c
-@@ -53,6 +53,12 @@
- //                    along with -q, -P, -U
-+/*
-+ * Allow fseeko/off_t to be 64-bit offsets to allow filesystems and
-+ * individual files >2GB.
-+ */
-+#define _FILE_OFFSET_BITS 64
-+
- #include <config.h>
- #include <stdio.h>
-@@ -107,10 +113,8 @@
- #if HAVE_DIRENT_H
- # include <dirent.h>
--# define NAMLEN(dirent) strlen((dirent)->d_name)
- #else
- # define dirent direct
--# define NAMLEN(dirent) (dirent)->d_namlen
- # if HAVE_SYS_NDIR_H
- #  include <sys/ndir.h>
- # endif
-@@ -144,6 +148,8 @@
- # include <limits.h>
- #endif
-+#include "cache.h"
-+
- struct stats {
-       unsigned long nblocks;
-       unsigned long ninodes;
-@@ -151,13 +157,42 @@
- // block size
--#define BLOCKSIZE         1024
-+static int blocksize = 1024;
-+
-+#define SUPERBLOCK_OFFSET     1024
-+#define SUPERBLOCK_SIZE               1024
-+
-+#define BLOCKSIZE         blocksize
- #define BLOCKS_PER_GROUP  8192
- #define INODES_PER_GROUP  8192
- /* Percentage of blocks that are reserved.*/
- #define RESERVED_BLOCKS       5/100
- #define MAX_RESERVED_BLOCKS  25/100
-+/* The default value for s_creator_os. */
-+#if defined(__linux__)    &&    defined(EXT2_OS_LINUX)
-+#define CREATOR_OS EXT2_OS_LINUX
-+#define CREATOR_OS_NAME "linux"
-+#else
-+#if defined(__GNU__)     &&     defined(EXT2_OS_HURD)
-+#define CREATOR_OS EXT2_OS_HURD
-+#define CREATOR_OS_NAME "hurd"
-+#else
-+#if defined(__FreeBSD__) &&     defined(EXT2_OS_FREEBSD)
-+#define CREATOR_OS EXT2_OS_FREEBSD
-+#define CREATOR_OS_NAME "freebsd"
-+#else
-+#if defined(LITES)         &&   defined(EXT2_OS_LITES)
-+#define CREATOR_OS EXT2_OS_LITES
-+#define CREATOR_OS_NAME "lites"
-+#else
-+#define CREATOR_OS EXT2_OS_LINUX /* by default */
-+#define CREATOR_OS_NAME "linux"
-+#endif /* defined(LITES) && defined(EXT2_OS_LITES) */
-+#endif /* defined(__FreeBSD__) && defined(EXT2_OS_FREEBSD) */
-+#endif /* defined(__GNU__)     && defined(EXT2_OS_HURD) */
-+#endif /* defined(__linux__)   && defined(EXT2_OS_LINUX) */
-+
- // inode block size (why is it != BLOCKSIZE ?!?)
- /* The field i_blocks in the ext2 inode stores the number of data blocks
-@@ -190,6 +225,14 @@
- #define EXT2_TIND_BLOCK    14                    // triple indirect block
- #define EXT2_INIT_BLOCK    0xFFFFFFFF            // just initialized (not really a block address)
-+// codes for operating systems
-+
-+#define EXT2_OS_LINUX           0
-+#define EXT2_OS_HURD            1
-+#define EXT2_OS_MASIX           2
-+#define EXT2_OS_FREEBSD         3
-+#define EXT2_OS_LITES           4
-+
- // end of a block walk
- #define WALK_END           0xFFFFFFFE
-@@ -227,44 +270,46 @@
- #define FM_IWOTH   0000002    // write
- #define FM_IXOTH   0000001    // execute
--// options
--
--#define OP_HOLES     0x01       // make files with holes
--
- /* Defines for accessing group details */
- // Number of groups in the filesystem
- #define GRP_NBGROUPS(fs) \
--      (((fs)->sb.s_blocks_count - fs->sb.s_first_data_block + \
--        (fs)->sb.s_blocks_per_group - 1) / (fs)->sb.s_blocks_per_group)
-+      (((fs)->sb->s_blocks_count - fs->sb->s_first_data_block + \
-+        (fs)->sb->s_blocks_per_group - 1) / (fs)->sb->s_blocks_per_group)
- // Get group block bitmap (bbm) given the group number
--#define GRP_GET_GROUP_BBM(fs,grp) ( get_blk((fs),(fs)->gd[(grp)].bg_block_bitmap) )
-+#define GRP_GET_GROUP_BBM(fs,grp,bi) (get_blk((fs),(grp)->bg_block_bitmap,(bi)))
-+#define GRP_PUT_GROUP_BBM(bi) ( put_blk((bi)) )
- // Get group inode bitmap (ibm) given the group number
--#define GRP_GET_GROUP_IBM(fs,grp) ( get_blk((fs),(fs)->gd[(grp)].bg_inode_bitmap) )
--              
-+#define GRP_GET_GROUP_IBM(fs,grp,bi) (get_blk((fs), (grp)->bg_inode_bitmap,(bi)))
-+#define GRP_PUT_GROUP_IBM(bi) ( put_blk((bi)) )
-+
- // Given an inode number find the group it belongs to
--#define GRP_GROUP_OF_INODE(fs,nod) ( ((nod)-1) / (fs)->sb.s_inodes_per_group)
-+#define GRP_GROUP_OF_INODE(fs,nod) ( ((nod)-1) / (fs)->sb->s_inodes_per_group)
- //Given an inode number get the inode bitmap that covers it
--#define GRP_GET_INODE_BITMAP(fs,nod) \
--      ( GRP_GET_GROUP_IBM((fs),GRP_GROUP_OF_INODE((fs),(nod))) )
-+#define GRP_GET_INODE_BITMAP(fs,nod,bi,gi)                            \
-+      ( GRP_GET_GROUP_IBM((fs),get_gd(fs,GRP_GROUP_OF_INODE((fs),(nod)),gi),bi) )
-+#define GRP_PUT_INODE_BITMAP(bi,gi)           \
-+      ( GRP_PUT_GROUP_IBM((bi)),put_gd((gi)) )
- //Given an inode number find its offset within the inode bitmap that covers it
- #define GRP_IBM_OFFSET(fs,nod) \
--      ( (nod) - GRP_GROUP_OF_INODE((fs),(nod))*(fs)->sb.s_inodes_per_group )
-+      ( (nod) - GRP_GROUP_OF_INODE((fs),(nod))*(fs)->sb->s_inodes_per_group )
- // Given a block number find the group it belongs to
--#define GRP_GROUP_OF_BLOCK(fs,blk) ( ((blk)-1) / (fs)->sb.s_blocks_per_group)
-+#define GRP_GROUP_OF_BLOCK(fs,blk) ( ((blk)-1) / (fs)->sb->s_blocks_per_group)
-       
--//Given a block number get the block bitmap that covers it
--#define GRP_GET_BLOCK_BITMAP(fs,blk) \
--      ( GRP_GET_GROUP_BBM((fs),GRP_GROUP_OF_BLOCK((fs),(blk))) )
-+//Given a block number get/put the block bitmap that covers it
-+#define GRP_GET_BLOCK_BITMAP(fs,blk,bi,gi)                            \
-+      ( GRP_GET_GROUP_BBM((fs),get_gd(fs,GRP_GROUP_OF_BLOCK((fs),(blk)),(gi)),(bi)) )
-+#define GRP_PUT_BLOCK_BITMAP(bi,gi)           \
-+      ( GRP_PUT_GROUP_BBM((bi)),put_gd((gi)) )
- //Given a block number find its offset within the block bitmap that covers it
- #define GRP_BBM_OFFSET(fs,blk) \
--      ( (blk) - GRP_GROUP_OF_BLOCK((fs),(blk))*(fs)->sb.s_blocks_per_group )
-+      ( (blk) - GRP_GROUP_OF_BLOCK((fs),(blk))*(fs)->sb->s_blocks_per_group )
- // used types
-@@ -286,7 +331,9 @@
- // older solaris. Note that this is still not very portable, in that
- // the return value cannot be trusted.
--#if SCANF_CAN_MALLOC
-+#if 0 // SCANF_CAN_MALLOC
-+// C99 define "a" for floating point, so you can have runtime surprise
-+// according the library versions
- # define SCANF_PREFIX "a"
- # define SCANF_STRING(s) (&s)
- #else
-@@ -430,6 +477,17 @@
-                       ((val<<8)&0xFF0000) | (val<<24));
- }
-+static inline int
-+is_blk_empty(uint8 *b)
-+{
-+      uint32 i;
-+      uint32 *v = (uint32 *) b;
-+
-+      for(i = 0; i < BLOCKSIZE / 4; i++)
-+              if (*v++)
-+                      return 0;
-+      return 1;
-+}
- // on-disk structures
- // this trick makes me declare things only once
-@@ -460,7 +518,22 @@
-       udecl32(s_creator_os)          /* Indicator of which OS created the filesystem */ \
-       udecl32(s_rev_level)           /* The revision level of the filesystem */ \
-       udecl16(s_def_resuid)          /* The default uid for reserved blocks */ \
--      udecl16(s_def_resgid)          /* The default gid for reserved blocks */
-+      udecl16(s_def_resgid)          /* The default gid for reserved blocks */ \
-+      /* rev 1 version fields start here */ \
-+      udecl32(s_first_ino)            /* First non-reserved inode */  \
-+      udecl16(s_inode_size)           /* size of inode structure */   \
-+      udecl16(s_block_group_nr)       /* block group # of this superblock */ \
-+      udecl32(s_feature_compat)       /* compatible feature set */    \
-+      udecl32(s_feature_incompat)     /* incompatible feature set */  \
-+      udecl32(s_feature_ro_compat)    /* readonly-compatible feature set */ \
-+      utdecl8(s_uuid,16)              /* 128-bit uuid for volume */   \
-+      utdecl8(s_volume_name,16)       /* volume name */               \
-+      utdecl8(s_last_mounted,64)      /* directory where last mounted */ \
-+      udecl32(s_algorithm_usage_bitmap) /* For compression */
-+
-+#define EXT2_GOOD_OLD_FIRST_INO       11
-+#define EXT2_GOOD_OLD_INODE_SIZE 128
-+#define EXT2_FEATURE_RO_COMPAT_LARGE_FILE     0x0002
- #define groupdescriptor_decl \
-       udecl32(bg_block_bitmap)       /* Block number of the block bitmap */ \
-@@ -500,6 +573,7 @@
- #define decl8(x) int8 x;
- #define udecl8(x) uint8 x;
-+#define utdecl8(x,n) uint8 x[n];
- #define decl16(x) int16 x;
- #define udecl16(x) uint16 x;
- #define decl32(x) int32 x;
-@@ -509,7 +583,7 @@
- typedef struct
- {
-       superblock_decl
--      uint32 s_reserved[235];       // Reserved
-+      uint32 s_reserved[205];       // Reserved
- } superblock;
- typedef struct
-@@ -527,10 +601,9 @@
- typedef struct
- {
-       directory_decl
--      char d_name[0];
- } directory;
--typedef uint8 block[BLOCKSIZE];
-+typedef uint8 *block;
- /* blockwalker fields:
-    The blockwalker is used to access all the blocks of a file (including
-@@ -567,23 +640,41 @@
-       uint32 bptind;
- } blockwalker;
-+#define HDLINK_CNT   16
-+struct hdlink_s
-+{
-+      uint32  src_inode;
-+      uint32  dst_nod;
-+};
-+
-+struct hdlinks_s
-+{
-+      int32 count;
-+      struct hdlink_s *hdl;
-+};
- /* Filesystem structure that support groups */
--#if BLOCKSIZE == 1024
- typedef struct
- {
--      block zero;            // The famous block 0
--      superblock sb;         // The superblock
--      groupdescriptor gd[0]; // The group descriptors
-+      FILE *f;
-+      superblock *sb;
-+      int swapit;
-+      int32 hdlink_cnt;
-+      struct hdlinks_s hdlinks;
-+
-+      int holes;
-+
-+      listcache blks;
-+      listcache gds;
-+      listcache inodes;
-+      listcache blkmaps;
- } filesystem;
--#else
--#error UNHANDLED BLOCKSIZE
--#endif
- // now the endianness swap
- #undef decl8
- #undef udecl8
-+#undef utdecl8
- #undef decl16
- #undef udecl16
- #undef decl32
-@@ -592,28 +683,13 @@
- #define decl8(x)
- #define udecl8(x)
-+#define utdecl8(x,n)
- #define decl16(x) this->x = swab16(this->x);
- #define udecl16(x) this->x = swab16(this->x);
- #define decl32(x) this->x = swab32(this->x);
- #define udecl32(x) this->x = swab32(this->x);
- #define utdecl32(x,n) { int i; for(i=0; i<n; i++) this->x[i] = swab32(this->x[i]); }
--#define HDLINK_CNT   16
--static int32 hdlink_cnt = HDLINK_CNT;
--struct hdlink_s
--{
--      uint32  src_inode;
--      uint32  dst_nod;
--};
--
--struct hdlinks_s 
--{
--      int32 count;
--      struct hdlink_s *hdl;
--};
--
--static struct hdlinks_s hdlinks;
--
- static void
- swap_sb(superblock *sb)
- {
-@@ -633,9 +709,24 @@
- static void
- swap_nod(inode *nod)
- {
-+      uint32 nblk;
-+
- #define this nod
-       inode_decl
- #undef this
-+
-+      // block and character inodes store the major and minor in the
-+      // i_block, so we need to unswap to get those.  Also, if it's
-+      // zero iblocks, put the data back like it belongs.
-+      nblk = nod->i_blocks / INOBLK;
-+      if ((nod->i_size && !nblk)
-+          || ((nod->i_mode & FM_IFBLK) == FM_IFBLK)
-+          || ((nod->i_mode & FM_IFCHR) == FM_IFCHR))
-+      {
-+              int i;
-+              for(i = 0; i <= EXT2_TIND_BLOCK; i++)
-+                      nod->i_block[i] = swab32(nod->i_block[i]);
-+      }
- }
- static void
-@@ -657,6 +748,7 @@
- #undef decl8
- #undef udecl8
-+#undef utdecl8
- #undef decl16
- #undef udecl16
- #undef decl32
-@@ -770,15 +862,15 @@
- }
- int
--is_hardlink(ino_t inode)
-+is_hardlink(filesystem *fs, ino_t inode)
- {
-       int i;
--      for(i = 0; i < hdlinks.count; i++) {
--              if(hdlinks.hdl[i].src_inode == inode)
-+      for(i = 0; i < fs->hdlinks.count; i++) {
-+              if(fs->hdlinks.hdl[i].src_inode == inode)
-                       return i;
-       }
--      return -1;              
-+      return -1;
- }
- // printf helper macro
-@@ -789,6 +881,8 @@
- get_workblk(void)
- {
-       unsigned char* b=calloc(1,BLOCKSIZE);
-+      if (!b)
-+              error_msg_and_die("get_workblk() failed, out of memory");
-       return b;
- }
- static inline void
-@@ -811,24 +905,464 @@
-       return b[(item-1) / 8] & (1 << ((item-1) % 8));
- }
--// return a given block from a filesystem
-+// Used by get_blk/put_blk to hold information about a block owned
-+// by the user.
-+typedef struct
-+{
-+      cache_link link;
-+
-+      filesystem *fs;
-+      uint32 blk;
-+      uint8 *b;
-+      uint32 usecount;
-+} blk_info;
-+
-+#define MAX_FREE_CACHE_BLOCKS 100
-+
-+static uint32
-+blk_elem_val(cache_link *elem)
-+{
-+      blk_info *bi = container_of(elem, blk_info, link);
-+      return bi->blk;
-+}
-+
-+static void
-+blk_freed(cache_link *elem)
-+{
-+      blk_info *bi = container_of(elem, blk_info, link);
-+
-+      if (fseeko(bi->fs->f, ((off_t) bi->blk) * BLOCKSIZE, SEEK_SET))
-+              perror_msg_and_die("fseek");
-+      if (fwrite(bi->b, BLOCKSIZE, 1, bi->fs->f) != 1)
-+              perror_msg_and_die("get_blk: write");
-+      free(bi->b);
-+      free(bi);
-+}
-+
-+// Return a given block from a filesystem.  Make sure to call
-+// put_blk when you are done with it.
- static inline uint8 *
--get_blk(filesystem *fs, uint32 blk)
-+get_blk(filesystem *fs, uint32 blk, blk_info **rbi)
- {
--      return (uint8*)fs + blk*BLOCKSIZE;
-+      cache_link *curr;
-+      blk_info *bi;
-+
-+      if (blk >= fs->sb->s_blocks_count)
-+              error_msg_and_die("Internal error, block out of range");
-+
-+      curr = cache_find(&fs->blks, blk);
-+      if (curr) {
-+              bi = container_of(curr, blk_info, link);
-+              bi->usecount++;
-+              goto out;
-+      }
-+
-+      bi = malloc(sizeof(*bi));
-+      if (!bi)
-+              error_msg_and_die("get_blk: out of memory");
-+      bi->fs = fs;
-+      bi->blk = blk;
-+      bi->usecount = 1;
-+      bi->b = malloc(BLOCKSIZE);
-+      if (!bi->b)
-+              error_msg_and_die("get_blk: out of memory");
-+      cache_add(&fs->blks, &bi->link);
-+      if (fseeko(fs->f, ((off_t) blk) * BLOCKSIZE, SEEK_SET))
-+              perror_msg_and_die("fseek");
-+      if (fread(bi->b, BLOCKSIZE, 1, fs->f) != 1) {
-+              if (ferror(fs->f))
-+                      perror_msg_and_die("fread");
-+              memset(bi->b, 0, BLOCKSIZE);
-+      }
-+
-+out:
-+      *rbi = bi;
-+      return bi->b;
- }
- // return a given inode from a filesystem
--static inline inode *
--get_nod(filesystem *fs, uint32 nod)
-+static inline void
-+put_blk(blk_info *bi)
-+{
-+      if (bi->usecount == 0)
-+              error_msg_and_die("Internal error: put_blk usecount zero");
-+      bi->usecount--;
-+      if (bi->usecount == 0)
-+              /* Free happens in the cache code */
-+              cache_item_set_unused(&bi->fs->blks, &bi->link);
-+}
-+
-+typedef struct
- {
--      int grp,offset;
-+      cache_link link;
-+
-+      filesystem *fs;
-+      int gds;
-+      blk_info *bi;
-+      groupdescriptor *gd;
-+      uint32 usecount;
-+} gd_info;
-+
-+#define MAX_FREE_CACHE_GDS 100
-+
-+static uint32
-+gd_elem_val(cache_link *elem)
-+{
-+      gd_info *gi = container_of(elem, gd_info, link);
-+      return gi->gds;
-+}
-+
-+static void
-+gd_freed(cache_link *elem)
-+{
-+      gd_info *gi = container_of(elem, gd_info, link);
-+
-+      if (gi->fs->swapit)
-+              swap_gd(gi->gd);
-+      put_blk(gi->bi);
-+      free(gi);
-+}
-+
-+#define GDS_START ((SUPERBLOCK_OFFSET + SUPERBLOCK_SIZE + BLOCKSIZE - 1) / BLOCKSIZE)
-+#define GDS_PER_BLOCK (BLOCKSIZE / sizeof(groupdescriptor))
-+// the group descriptors are aligned on the block size
-+static inline groupdescriptor *
-+get_gd(filesystem *fs, uint32 no, gd_info **rgi)
-+{
-+      uint32 gdblk;
-+      uint32 offset;
-+      gd_info *gi;
-+      cache_link *curr;
-+
-+      curr = cache_find(&fs->gds, no);
-+      if (curr) {
-+              gi = container_of(curr, gd_info, link);
-+              gi->usecount++;
-+              goto out;
-+      }
-+
-+      gi = malloc(sizeof(*gi));
-+      if (!gi)
-+              error_msg_and_die("get_gd: out of memory");
-+      gi->fs = fs;
-+      gi->gds = no;
-+      gi->usecount = 1;
-+      gdblk = GDS_START + (no / GDS_PER_BLOCK);
-+      offset = no % GDS_PER_BLOCK;
-+      gi->gd = ((groupdescriptor *) get_blk(fs, gdblk, &gi->bi)) + offset;
-+      cache_add(&fs->gds, &gi->link);
-+      if (fs->swapit)
-+              swap_gd(gi->gd);
-+ out:
-+      *rgi = gi;
-+
-+      return gi->gd;
-+}
-+
-+static inline void
-+put_gd(gd_info *gi)
-+{
-+      if (gi->usecount == 0)
-+              error_msg_and_die("Internal error: put_gd usecount zero");
-+
-+      gi->usecount--;
-+      if (gi->usecount == 0)
-+              /* Free happens in the cache code */
-+              cache_item_set_unused(&gi->fs->gds, &gi->link);
-+}
-+
-+// Used by get_blkmap/put_blkmap to hold information about an block map
-+// owned by the user.
-+typedef struct
-+{
-+      cache_link link;
-+
-+      filesystem *fs;
-+      uint32 blk;
-+      uint8 *b;
-+      blk_info *bi;
-+      uint32 usecount;
-+} blkmap_info;
-+
-+#define MAX_FREE_CACHE_BLOCKMAPS 100
-+
-+static uint32
-+blkmap_elem_val(cache_link *elem)
-+{
-+      blkmap_info *bmi = container_of(elem, blkmap_info, link);
-+      return bmi->blk;
-+}
-+
-+static void
-+blkmap_freed(cache_link *elem)
-+{
-+      blkmap_info *bmi = container_of(elem, blkmap_info, link);
-+
-+      if (bmi->fs->swapit)
-+              swap_block(bmi->b);
-+      put_blk(bmi->bi);
-+      free(bmi);
-+}
-+
-+// Return a given block map from a filesystem.  Make sure to call
-+// put_blkmap when you are done with it.
-+static inline uint32 *
-+get_blkmap(filesystem *fs, uint32 blk, blkmap_info **rbmi)
-+{
-+      blkmap_info *bmi;
-+      cache_link *curr;
-+
-+      curr = cache_find(&fs->blkmaps, blk);
-+      if (curr) {
-+              bmi = container_of(curr, blkmap_info, link);
-+              bmi->usecount++;
-+              goto out;
-+      }
-+
-+      bmi = malloc(sizeof(*bmi));
-+      if (!bmi)
-+              error_msg_and_die("get_blkmap: out of memory");
-+      bmi->fs = fs;
-+      bmi->blk = blk;
-+      bmi->b = get_blk(fs, blk, &bmi->bi);
-+      bmi->usecount = 1;
-+      cache_add(&fs->blkmaps, &bmi->link);
-+
-+      if (fs->swapit)
-+              swap_block(bmi->b);
-+ out:
-+      *rbmi = bmi;
-+      return (uint32 *) bmi->b;
-+}
-+
-+static inline void
-+put_blkmap(blkmap_info *bmi)
-+{
-+      if (bmi->usecount == 0)
-+              error_msg_and_die("Internal error: put_blkmap usecount zero");
-+
-+      bmi->usecount--;
-+      if (bmi->usecount == 0)
-+              /* Free happens in the cache code */
-+              cache_item_set_unused(&bmi->fs->blkmaps, &bmi->link);
-+}
-+
-+// Used by get_nod/put_nod to hold information about an inode owned
-+// by the user.
-+typedef struct
-+{
-+      cache_link link;
-+
-+      filesystem *fs;
-+      uint32 nod;
-+      uint8 *b;
-+      blk_info *bi;
-       inode *itab;
-+      uint32 usecount;
-+} nod_info;
-+
-+#define MAX_FREE_CACHE_INODES 100
-+
-+static uint32
-+inode_elem_val(cache_link *elem)
-+{
-+      nod_info *ni = container_of(elem, nod_info, link);
-+      return ni->nod;
-+}
-+
-+static void
-+inode_freed(cache_link *elem)
-+{
-+      nod_info *ni = container_of(elem, nod_info, link);
-+
-+      if (ni->fs->swapit)
-+              swap_nod(ni->itab);
-+      put_blk(ni->bi);
-+      free(ni);
-+}
-+
-+#define INODES_PER_BLOCK (BLOCKSIZE / sizeof(inode))
--      offset = GRP_IBM_OFFSET(fs,nod);
-+// return a given inode from a filesystem
-+static inline inode *
-+get_nod(filesystem *fs, uint32 nod, nod_info **rni)
-+{
-+      uint32 grp, boffset, offset;
-+      cache_link *curr;
-+      groupdescriptor *gd;
-+      gd_info *gi;
-+      nod_info *ni;
-+
-+      curr = cache_find(&fs->inodes, nod);
-+      if (curr) {
-+              ni = container_of(curr, nod_info, link);
-+              ni->usecount++;
-+              goto out;
-+      }
-+
-+      ni = malloc(sizeof(*ni));
-+      if (!ni)
-+              error_msg_and_die("get_nod: out of memory");
-+      ni->fs = fs;
-+      ni->nod = nod;
-+      ni->usecount = 1;
-+      cache_add(&fs->inodes, &ni->link);
-+
-+      offset = GRP_IBM_OFFSET(fs,nod) - 1;
-+      boffset = offset / INODES_PER_BLOCK;
-+      offset %= INODES_PER_BLOCK;
-       grp = GRP_GROUP_OF_INODE(fs,nod);
--      itab = (inode *)get_blk(fs, fs->gd[grp].bg_inode_table);
--      return itab+offset-1;
-+      gd = get_gd(fs, grp, &gi);
-+      ni->b = get_blk(fs, gd->bg_inode_table + boffset, &ni->bi);
-+      ni->itab = ((inode *) ni->b) + offset;
-+      if (fs->swapit)
-+              swap_nod(ni->itab);
-+      put_gd(gi);
-+ out:
-+      *rni = ni;
-+      return ni->itab;
-+}
-+
-+static inline void
-+put_nod(nod_info *ni)
-+{
-+      if (ni->usecount == 0)
-+              error_msg_and_die("Internal error: put_nod usecount zero");
-+
-+      ni->usecount--;
-+      if (ni->usecount == 0)
-+              /* Free happens in the cache code */
-+              cache_item_set_unused(&ni->fs->inodes, &ni->link);
-+}
-+
-+// Used to hold state information while walking a directory inode.
-+typedef struct
-+{
-+      directory d;
-+      filesystem *fs;
-+      uint32 nod;
-+      directory *last_d;
-+      uint8 *b;
-+      blk_info *bi;
-+} dirwalker;
-+
-+// Start a directory walk on the given inode.  You must pass in a
-+// dirwalker structure, then use that dirwalker for future operations.
-+// Call put_dir when you are done walking the directory.
-+static inline directory *
-+get_dir(filesystem *fs, uint32 nod, dirwalker *dw)
-+{
-+      dw->fs = fs;
-+      dw->b = get_blk(fs, nod, &dw->bi);
-+      dw->nod = nod;
-+      dw->last_d = (directory *) dw->b;
-+
-+      memcpy(&dw->d, dw->last_d, sizeof(directory));
-+      if (fs->swapit)
-+              swap_dir(&dw->d);
-+      return &dw->d;
-+}
-+
-+// Move to the next directory.
-+static inline directory *
-+next_dir(dirwalker *dw)
-+{
-+      directory *next_d = (directory *)((int8*)dw->last_d + dw->d.d_rec_len);
-+
-+      if (dw->fs->swapit)
-+              swap_dir(&dw->d);
-+      memcpy(dw->last_d, &dw->d, sizeof(directory));
-+
-+      if (((int8 *) next_d) >= ((int8 *) dw->b + BLOCKSIZE))
-+              return NULL;
-+
-+      dw->last_d = next_d;
-+      memcpy(&dw->d, next_d, sizeof(directory));
-+      if (dw->fs->swapit)
-+              swap_dir(&dw->d);
-+      return &dw->d;
-+}
-+
-+// Call then when you are done with the directory walk.
-+static inline void
-+put_dir(dirwalker *dw)
-+{
-+      if (dw->fs->swapit)
-+              swap_dir(&dw->d);
-+      memcpy(dw->last_d, &dw->d, sizeof(directory));
-+
-+      if (dw->nod == 0)
-+              free_workblk(dw->b);
-+      else
-+              put_blk(dw->bi);
-+}
-+
-+// Create a new directory block with the given inode as it's destination
-+// and append it to the current dirwalker.
-+static directory *
-+new_dir(filesystem *fs, uint32 dnod, const char *name, int nlen, dirwalker *dw)
-+{
-+      directory *d;
-+
-+      dw->fs = fs;
-+      dw->b = get_workblk();
-+      dw->nod = 0;
-+      dw->last_d = (directory *) dw->b;
-+      d = &dw->d;
-+      d->d_inode = dnod;
-+      d->d_rec_len = BLOCKSIZE;
-+      d->d_name_len = nlen;
-+      strncpy(((char *) dw->last_d) + sizeof(directory), name, nlen);
-+      return d;
-+}
-+
-+// Shrink the current directory entry, make a new one with the free
-+// space, and return the new directory entry (making it current).
-+static inline directory *
-+shrink_dir(dirwalker *dw, uint32 nod, const char *name, int nlen)
-+{
-+      int reclen, preclen;
-+      directory *d = &dw->d;
-+
-+      reclen = d->d_rec_len;
-+      d->d_rec_len = sizeof(directory) + rndup(d->d_name_len, 4);
-+      preclen = d->d_rec_len;
-+      reclen -= preclen;
-+      if (dw->fs->swapit)
-+              swap_dir(&dw->d);
-+      memcpy(dw->last_d, &dw->d, sizeof(directory));
-+
-+      dw->last_d = (directory *) (((int8 *) dw->last_d) + preclen);
-+      d->d_rec_len = reclen;
-+      d->d_inode = nod;
-+      d->d_name_len = nlen;
-+      strncpy(((char *) dw->last_d) + sizeof(directory), name, nlen);
-+
-+      return d;
-+}
-+
-+// Return the current block the directory is walking
-+static inline uint8 *
-+dir_data(dirwalker *dw)
-+{
-+      return dw->b;
-+}
-+
-+// Return the pointer to the name for the current directory
-+static inline char *
-+dir_name(dirwalker *dw)
-+{
-+      return ((char *) dw->last_d) + sizeof(directory);
-+}
-+
-+// Set the name for the current directory.  Note that this doesn't
-+// verify that there is space for the directory name, you must do
-+// that yourself.
-+static void
-+dir_set_name(dirwalker *dw, const char *name, int nlen)
-+{
-+      dw->d.d_name_len = nlen;
-+      strncpy(((char *) dw->last_d) + sizeof(directory), name, nlen);
- }
- // allocate a given block/inode in the bitmap
-@@ -870,21 +1404,34 @@
- {
-       uint32 bk=0;
-       uint32 grp,nbgroups;
-+      blk_info *bi;
-+      groupdescriptor *gd;
-+      gd_info *gi;
-       grp = GRP_GROUP_OF_INODE(fs,nod);
-       nbgroups = GRP_NBGROUPS(fs);
--      if(!(bk = allocate(get_blk(fs,fs->gd[grp].bg_block_bitmap), 0))) {
--              for(grp=0;grp<nbgroups && !bk;grp++)
--                      bk=allocate(get_blk(fs,fs->gd[grp].bg_block_bitmap),0);
-+      gd = get_gd(fs, grp, &gi);
-+      bk = allocate(GRP_GET_GROUP_BBM(fs, gd, &bi), 0);
-+      GRP_PUT_GROUP_BBM(bi);
-+      put_gd(gi);
-+      if (!bk) {
-+              for (grp=0; grp<nbgroups && !bk; grp++) {
-+                      gd = get_gd(fs, grp, &gi);
-+                      bk = allocate(GRP_GET_GROUP_BBM(fs, gd, &bi), 0);
-+                      GRP_PUT_GROUP_BBM(bi);
-+                      put_gd(gi);
-+              }
-               grp--;
-       }
-       if (!bk)
-               error_msg_and_die("couldn't allocate a block (no free space)");
--      if(!(fs->gd[grp].bg_free_blocks_count--))
-+      gd = get_gd(fs, grp, &gi);
-+      if(!(gd->bg_free_blocks_count--))
-               error_msg_and_die("group descr %d. free blocks count == 0 (corrupted fs?)",grp);
--      if(!(fs->sb.s_free_blocks_count--))
-+      put_gd(gi);
-+      if(!(fs->sb->s_free_blocks_count--))
-               error_msg_and_die("superblock free blocks count == 0 (corrupted fs?)");
--      return fs->sb.s_blocks_per_group*grp + bk;
-+      return fs->sb->s_first_data_block + fs->sb->s_blocks_per_group*grp + (bk-1);
- }
- // free a block
-@@ -892,12 +1439,18 @@
- free_blk(filesystem *fs, uint32 bk)
- {
-       uint32 grp;
--
--      grp = bk / fs->sb.s_blocks_per_group;
--      bk %= fs->sb.s_blocks_per_group;
--      deallocate(get_blk(fs,fs->gd[grp].bg_block_bitmap), bk);
--      fs->gd[grp].bg_free_blocks_count++;
--      fs->sb.s_free_blocks_count++;
-+      blk_info *bi;
-+      gd_info *gi;
-+      groupdescriptor *gd;
-+
-+      grp = bk / fs->sb->s_blocks_per_group;
-+      bk %= fs->sb->s_blocks_per_group;
-+      gd = get_gd(fs, grp, &gi);
-+      deallocate(GRP_GET_GROUP_BBM(fs, gd, &bi), bk);
-+      GRP_PUT_GROUP_BBM(bi);
-+      gd->bg_free_blocks_count++;
-+      put_gd(gi);
-+      fs->sb->s_free_blocks_count++;
- }
- // allocate an inode
-@@ -906,6 +1459,9 @@
- {
-       uint32 nod,best_group=0;
-       uint32 grp,nbgroups,avefreei;
-+      blk_info *bi;
-+      gd_info *gi, *bestgi;
-+      groupdescriptor *gd, *bestgd;
-       nbgroups = GRP_NBGROUPS(fs);
-@@ -914,22 +1470,32 @@
-       /* find the one with the most free blocks and allocate node there     */
-       /* Idea from find_group_dir in fs/ext2/ialloc.c in 2.4.19 kernel      */
-       /* We do it for all inodes.                                           */
--      avefreei  =  fs->sb.s_free_inodes_count / nbgroups;
-+      avefreei  =  fs->sb->s_free_inodes_count / nbgroups;
-+      bestgd = get_gd(fs, best_group, &bestgi);
-       for(grp=0; grp<nbgroups; grp++) {
--              if (fs->gd[grp].bg_free_inodes_count < avefreei ||
--                  fs->gd[grp].bg_free_inodes_count == 0)
-+              gd = get_gd(fs, grp, &gi);
-+              if (gd->bg_free_inodes_count < avefreei ||
-+                  gd->bg_free_inodes_count == 0) {
-+                      put_gd(gi);
-                       continue;
--              if (!best_group || 
--                      fs->gd[grp].bg_free_blocks_count > fs->gd[best_group].bg_free_blocks_count)
-+              }
-+              if (!best_group || gd->bg_free_blocks_count > bestgd->bg_free_blocks_count) {
-+                      put_gd(bestgi);
-                       best_group = grp;
-+                      bestgd = gd;
-+                      bestgi = gi;
-+              } else
-+                      put_gd(gi);
-       }
--      if (!(nod = allocate(get_blk(fs,fs->gd[best_group].bg_inode_bitmap),0)))
-+      if (!(nod = allocate(GRP_GET_GROUP_IBM(fs, bestgd, &bi), 0)))
-               error_msg_and_die("couldn't allocate an inode (no free inode)");
--      if(!(fs->gd[best_group].bg_free_inodes_count--))
-+      GRP_PUT_GROUP_IBM(bi);
-+      if(!(bestgd->bg_free_inodes_count--))
-               error_msg_and_die("group descr. free blocks count == 0 (corrupted fs?)");
--      if(!(fs->sb.s_free_inodes_count--))
-+      put_gd(bestgi);
-+      if(!(fs->sb->s_free_inodes_count--))
-               error_msg_and_die("superblock free blocks count == 0 (corrupted fs?)");
--      return fs->sb.s_inodes_per_group*best_group+nod;
-+      return fs->sb->s_inodes_per_group*best_group+nod;
- }
- // print a bitmap allocation
-@@ -962,30 +1528,40 @@
- //                              used after being freed, so once you start
- //                              freeing blocks don't stop until the end of
- //                              the file. moreover, i_blocks isn't updated.
--//                              in fact, don't do that, just use extend_blk
- // if hole!=0, create a hole in the file
- static uint32
- walk_bw(filesystem *fs, uint32 nod, blockwalker *bw, int32 *create, uint32 hole)
- {
-       uint32 *bkref = 0;
-+      uint32 bk = 0;
-+      blkmap_info *bmi1 = NULL, *bmi2 = NULL, *bmi3 = NULL;
-       uint32 *b;
-       int extend = 0, reduce = 0;
-+      inode *inod;
-+      nod_info *ni;
-+      uint32 *iblk;
-+
-       if(create && (*create) < 0)
-               reduce = 1;
--      if(bw->bnum >= get_nod(fs, nod)->i_blocks / INOBLK)
-+      inod = get_nod(fs, nod, &ni);
-+      if(bw->bnum >= inod->i_blocks / INOBLK)
-       {
-               if(create && (*create) > 0)
-               {
-                       (*create)--;
-                       extend = 1;
-               }
--              else    
-+              else
-+              {
-+                      put_nod(ni);
-                       return WALK_END;
-+              }
-       }
-+      iblk = inod->i_block;
-       // first direct block
-       if(bw->bpdir == EXT2_INIT_BLOCK)
-       {
--              bkref = &get_nod(fs, nod)->i_block[bw->bpdir = 0];
-+              bkref = &iblk[bw->bpdir = 0];
-               if(extend) // allocate first block
-                       *bkref = hole ? 0 : alloc_blk(fs,nod);
-               if(reduce) // free first block
-@@ -994,7 +1570,7 @@
-       // direct block
-       else if(bw->bpdir < EXT2_NDIR_BLOCKS)
-       {
--              bkref = &get_nod(fs, nod)->i_block[++bw->bpdir];
-+              bkref = &iblk[++bw->bpdir];
-               if(extend) // allocate block
-                       *bkref = hole ? 0 : alloc_blk(fs,nod);
-               if(reduce) // free block
-@@ -1007,10 +1583,10 @@
-               bw->bpdir = EXT2_IND_BLOCK;
-               bw->bpind = 0;
-               if(extend) // allocate indirect block
--                      get_nod(fs, nod)->i_block[bw->bpdir] = alloc_blk(fs,nod);
-+                      iblk[bw->bpdir] = alloc_blk(fs,nod);
-               if(reduce) // free indirect block
--                      free_blk(fs, get_nod(fs, nod)->i_block[bw->bpdir]);
--              b = (uint32*)get_blk(fs, get_nod(fs, nod)->i_block[bw->bpdir]);
-+                      free_blk(fs, iblk[bw->bpdir]);
-+              b = get_blkmap(fs, iblk[bw->bpdir], &bmi1);
-               bkref = &b[bw->bpind];
-               if(extend) // allocate first block
-                       *bkref = hole ? 0 : alloc_blk(fs,nod);
-@@ -1021,7 +1597,7 @@
-       else if((bw->bpdir == EXT2_IND_BLOCK) && (bw->bpind < BLOCKSIZE/4 - 1))
-       {
-               bw->bpind++;
--              b = (uint32*)get_blk(fs, get_nod(fs, nod)->i_block[bw->bpdir]);
-+              b = get_blkmap(fs, iblk[bw->bpdir], &bmi1);
-               bkref = &b[bw->bpind];
-               if(extend) // allocate block
-                       *bkref = hole ? 0 : alloc_blk(fs,nod);
-@@ -1036,15 +1612,15 @@
-               bw->bpind = 0;
-               bw->bpdind = 0;
-               if(extend) // allocate double indirect block
--                      get_nod(fs, nod)->i_block[bw->bpdir] = alloc_blk(fs,nod);
-+                      iblk[bw->bpdir] = alloc_blk(fs,nod);
-               if(reduce) // free double indirect block
--                      free_blk(fs, get_nod(fs, nod)->i_block[bw->bpdir]);
--              b = (uint32*)get_blk(fs, get_nod(fs, nod)->i_block[bw->bpdir]);
-+                      free_blk(fs, iblk[bw->bpdir]);
-+              b = get_blkmap(fs, iblk[bw->bpdir], &bmi1);
-               if(extend) // allocate first indirect block
-                       b[bw->bpind] = alloc_blk(fs,nod);
-               if(reduce) // free  firstindirect block
-                       free_blk(fs, b[bw->bpind]);
--              b = (uint32*)get_blk(fs, b[bw->bpind]);
-+              b = get_blkmap(fs, b[bw->bpind], &bmi2);
-               bkref = &b[bw->bpdind];
-               if(extend) // allocate first block
-                       *bkref = hole ? 0 : alloc_blk(fs,nod);
-@@ -1055,8 +1631,8 @@
-       else if((bw->bpdir == EXT2_DIND_BLOCK) && (bw->bpdind < BLOCKSIZE/4 - 1))
-       {
-               bw->bpdind++;
--              b = (uint32*)get_blk(fs, get_nod(fs, nod)->i_block[bw->bpdir]);
--              b = (uint32*)get_blk(fs, b[bw->bpind]);
-+              b = get_blkmap(fs, iblk[bw->bpdir], &bmi1);
-+              b = get_blkmap(fs, b[bw->bpind], &bmi2);
-               bkref = &b[bw->bpdind];
-               if(extend) // allocate block
-                       *bkref = hole ? 0 : alloc_blk(fs,nod);
-@@ -1069,12 +1645,12 @@
-               bw->bnum++;
-               bw->bpdind = 0;
-               bw->bpind++;
--              b = (uint32*)get_blk(fs, get_nod(fs, nod)->i_block[bw->bpdir]);
-+              b = get_blkmap(fs, iblk[bw->bpdir], &bmi1);
-               if(extend) // allocate indirect block
-                       b[bw->bpind] = alloc_blk(fs,nod);
-               if(reduce) // free indirect block
-                       free_blk(fs, b[bw->bpind]);
--              b = (uint32*)get_blk(fs, b[bw->bpind]);
-+              b = get_blkmap(fs, b[bw->bpind], &bmi2);
-               bkref = &b[bw->bpdind];
-               if(extend) // allocate first block
-                       *bkref = hole ? 0 : alloc_blk(fs,nod);
-@@ -1094,20 +1670,20 @@
-               bw->bpdind = 0;
-               bw->bptind = 0;
-               if(extend) // allocate triple indirect block
--                      get_nod(fs, nod)->i_block[bw->bpdir] = alloc_blk(fs,nod);
-+                      iblk[bw->bpdir] = alloc_blk(fs,nod);
-               if(reduce) // free triple indirect block
--                      free_blk(fs, get_nod(fs, nod)->i_block[bw->bpdir]);
--              b = (uint32*)get_blk(fs, get_nod(fs, nod)->i_block[bw->bpdir]);
-+                      free_blk(fs, iblk[bw->bpdir]);
-+              b = get_blkmap(fs, iblk[bw->bpdir], &bmi1);
-               if(extend) // allocate first double indirect block
-                       b[bw->bpind] = alloc_blk(fs,nod);
-               if(reduce) // free first double indirect block
-                       free_blk(fs, b[bw->bpind]);
--              b = (uint32*)get_blk(fs, b[bw->bpind]);
-+              b = get_blkmap(fs, b[bw->bpind], &bmi2);
-               if(extend) // allocate first indirect block
-                       b[bw->bpdind] = alloc_blk(fs,nod);
-               if(reduce) // free first indirect block
-                       free_blk(fs, b[bw->bpind]);
--              b = (uint32*)get_blk(fs, b[bw->bpdind]);
-+              b = get_blkmap(fs, b[bw->bpdind], &bmi3);
-               bkref = &b[bw->bptind];
-               if(extend) // allocate first data block
-                       *bkref = hole ? 0 : alloc_blk(fs,nod);
-@@ -1121,9 +1697,9 @@
-                 (bw->bptind < BLOCKSIZE/4 -1) )
-       {
-               bw->bptind++;
--              b = (uint32*)get_blk(fs, get_nod(fs, nod)->i_block[bw->bpdir]);
--              b = (uint32*)get_blk(fs, b[bw->bpind]);
--              b = (uint32*)get_blk(fs, b[bw->bpdind]);
-+              b = get_blkmap(fs, iblk[bw->bpdir], &bmi1);
-+              b = get_blkmap(fs, b[bw->bpind], &bmi2);
-+              b = get_blkmap(fs, b[bw->bpdind], &bmi3);
-               bkref = &b[bw->bptind];
-               if(extend) // allocate data block
-                       *bkref = hole ? 0 : alloc_blk(fs,nod);
-@@ -1140,13 +1716,13 @@
-               bw->bnum++;
-               bw->bptind = 0;
-               bw->bpdind++;
--              b = (uint32*)get_blk(fs, get_nod(fs, nod)->i_block[bw->bpdir]);
--              b = (uint32*)get_blk(fs, b[bw->bpind]);
-+              b = get_blkmap(fs, iblk[bw->bpdir], &bmi1);
-+              b = get_blkmap(fs, b[bw->bpind], &bmi2);
-               if(extend) // allocate single indirect block
-                       b[bw->bpdind] = alloc_blk(fs,nod);
-               if(reduce) // free indirect block
-                       free_blk(fs, b[bw->bpind]);
--              b = (uint32*)get_blk(fs, b[bw->bpdind]);
-+              b = get_blkmap(fs, b[bw->bpdind], &bmi3);
-               bkref = &b[bw->bptind];
-               if(extend) // allocate first data block
-                       *bkref = hole ? 0 : alloc_blk(fs,nod);
-@@ -1163,17 +1739,17 @@
-               bw->bpdind = 0;
-               bw->bptind = 0;
-               bw->bpind++;
--              b = (uint32*)get_blk(fs, get_nod(fs, nod)->i_block[bw->bpdir]);
-+              b = get_blkmap(fs, iblk[bw->bpdir], &bmi1);
-               if(extend) // allocate double indirect block
-                       b[bw->bpind] = alloc_blk(fs,nod);
-               if(reduce) // free double indirect block
-                       free_blk(fs, b[bw->bpind]);
--              b = (uint32*)get_blk(fs, b[bw->bpind]);
-+              b = get_blkmap(fs, b[bw->bpind], &bmi2);
-               if(extend) // allocate single indirect block
-                       b[bw->bpdind] = alloc_blk(fs,nod);
-               if(reduce) // free indirect block
-                       free_blk(fs, b[bw->bpind]);
--              b = (uint32*)get_blk(fs, b[bw->bpdind]);
-+              b = get_blkmap(fs, b[bw->bpdind], &bmi3);
-               bkref = &b[bw->bptind];
-               if(extend) // allocate first block
-                       *bkref = hole ? 0 : alloc_blk(fs,nod);
-@@ -1184,56 +1760,105 @@
-               error_msg_and_die("file too big !"); 
-       /* End change for walking triple indirection */
--      if(*bkref)
--      {
-+      bk = *bkref;
-+      if (bmi3)
-+              put_blkmap(bmi3);
-+      if (bmi2)
-+              put_blkmap(bmi2);
-+      if (bmi1)
-+              put_blkmap(bmi1);
-+
-+      if(bk)
-+      {
-+              blk_info *bi;
-+              gd_info *gi;
-+              uint8 *block;
-               bw->bnum++;
--              if(!reduce && !allocated(GRP_GET_BLOCK_BITMAP(fs,*bkref), GRP_BBM_OFFSET(fs,*bkref)))
--                      error_msg_and_die("[block %d of inode %d is unallocated !]", *bkref, nod);
-+              block = GRP_GET_BLOCK_BITMAP(fs,bk,&bi,&gi);
-+              if(!reduce && !allocated(block, GRP_BBM_OFFSET(fs,bk)))
-+                      error_msg_and_die("[block %d of inode %d is unallocated !]", bk, nod);
-+              GRP_PUT_BLOCK_BITMAP(bi, gi);
-       }
-       if(extend)
--              get_nod(fs, nod)->i_blocks = bw->bnum * INOBLK;
--      return *bkref;
-+              inod->i_blocks = bw->bnum * INOBLK;
-+      put_nod(ni);
-+      return bk;
- }
--// add blocks to an inode (file/dir/etc...)
--static void
--extend_blk(filesystem *fs, uint32 nod, block b, int amount)
-+typedef struct
- {
--      int create = amount;
--      blockwalker bw, lbw;
--      uint32 bk;
--      init_bw(&bw);
--      if(amount < 0)
--      {
--              uint32 i;
--              for(i = 0; i < get_nod(fs, nod)->i_blocks / INOBLK + amount; i++)
--                      walk_bw(fs, nod, &bw, 0, 0);
--              while(walk_bw(fs, nod, &bw, &create, 0) != WALK_END)
-+      blockwalker bw;
-+      uint32 nod;
-+      nod_info *ni;
-+      inode *inod;
-+} inode_pos;
-+#define INODE_POS_TRUNCATE 0
-+#define INODE_POS_EXTEND 1
-+
-+// Call this to set up an ipos structure for future use with
-+// extend_inode_blk to append blocks to the given inode.  If
-+// op is INODE_POS_TRUNCATE, the inode is truncated to zero size.
-+// If op is INODE_POS_EXTEND, the position is moved to the end
-+// of the inode's data blocks.
-+// Call inode_pos_finish when done with the inode_pos structure.
-+static void
-+inode_pos_init(filesystem *fs, inode_pos *ipos, uint32 nod, int op,
-+             blockwalker *endbw)
-+{
-+      blockwalker lbw;
-+
-+      init_bw(&ipos->bw);
-+      ipos->nod = nod;
-+      ipos->inod = get_nod(fs, nod, &ipos->ni);
-+      if (op == INODE_POS_TRUNCATE) {
-+              int32 create = -1;
-+              while(walk_bw(fs, nod, &ipos->bw, &create, 0) != WALK_END)
-                       /*nop*/;
--              get_nod(fs, nod)->i_blocks += amount * INOBLK;
-+              ipos->inod->i_blocks = 0;
-       }
--      else
-+
-+      if (endbw)
-+              ipos->bw = *endbw;
-+      else {
-+              /* Seek to the end */
-+              init_bw(&ipos->bw);
-+              lbw = ipos->bw;
-+              while(walk_bw(fs, nod, &ipos->bw, 0, 0) != WALK_END)
-+                      lbw = ipos->bw;
-+              ipos->bw = lbw;
-+      }
-+}
-+
-+// Clean up the inode_pos structure.
-+static void
-+inode_pos_finish(filesystem *fs, inode_pos *ipos)
-+{
-+      put_nod(ipos->ni);
-+}
-+
-+// add blocks to an inode (file/dir/etc...) at the given position.
-+// This will only work when appending to the end of an inode.
-+static void
-+extend_inode_blk(filesystem *fs, inode_pos *ipos, block b, int amount)
-+{
-+      uint32 bk;
-+      uint32 pos;
-+
-+      if (amount < 0)
-+              error_msg_and_die("extend_inode_blk: Got negative amount");
-+
-+      for (pos = 0; amount; pos += BLOCKSIZE)
-       {
--              lbw = bw;
--              while((bk = walk_bw(fs, nod, &bw, 0, 0)) != WALK_END)
--                      lbw = bw;
--              bw = lbw;
--              while(create)
--              {
--                      int i, copyb = 0;
--                      if(!(fs->sb.s_reserved[200] & OP_HOLES))
--                              copyb = 1;
--                      else
--                              for(i = 0; i < BLOCKSIZE / 4; i++)
--                                      if(((int32*)(b + BLOCKSIZE * (amount - create)))[i])
--                                      {
--                                              copyb = 1;
--                                              break;
--                                      }
--                      if((bk = walk_bw(fs, nod, &bw, &create, !copyb)) == WALK_END)
--                              break;
--                      if(copyb)
--                              memcpy(get_blk(fs, bk), b + BLOCKSIZE * (amount - create - 1), BLOCKSIZE);
-+              int hole = (fs->holes && is_blk_empty(b + pos));
-+
-+              bk = walk_bw(fs, ipos->nod, &ipos->bw, &amount, hole);
-+              if (bk == WALK_END)
-+                      error_msg_and_die("extend_inode_blk: extend failed");
-+              if (!hole) {
-+                      blk_info *bi;
-+                      uint8 *block = get_blk(fs, bk, &bi);
-+                      memcpy(block, b + pos, BLOCKSIZE);
-+                      put_blk(bi);
-               }
-       }
- }
-@@ -1242,15 +1867,17 @@
- static void
- add2dir(filesystem *fs, uint32 dnod, uint32 nod, const char* name)
- {
--      blockwalker bw;
-+      blockwalker bw, lbw;
-       uint32 bk;
--      uint8 *b;
-       directory *d;
-+      dirwalker dw;
-       int reclen, nlen;
-       inode *node;
-       inode *pnode;
-+      nod_info *dni, *ni;
-+      inode_pos ipos;
--      pnode = get_nod(fs, dnod);
-+      pnode = get_nod(fs, dnod, &dni);
-       if((pnode->i_mode & FM_IFMT) != FM_IFDIR)
-               error_msg_and_die("can't add '%s' to a non-directory", name);
-       if(!*name)
-@@ -1262,52 +1889,52 @@
-       if(reclen > BLOCKSIZE)
-               error_msg_and_die("bad name '%s' (too long)", name);
-       init_bw(&bw);
-+      lbw = bw;
-       while((bk = walk_bw(fs, dnod, &bw, 0, 0)) != WALK_END) // for all blocks in dir
-       {
--              b = get_blk(fs, bk);
-               // for all dir entries in block
--              for(d = (directory*)b; (int8*)d + sizeof(*d) < (int8*)b + BLOCKSIZE; d = (directory*)((int8*)d + d->d_rec_len))
-+              for(d = get_dir(fs, bk, &dw); d; d = next_dir(&dw))
-               {
-                       // if empty dir entry, large enough, use it
-                       if((!d->d_inode) && (d->d_rec_len >= reclen))
-                       {
-                               d->d_inode = nod;
--                              node = get_nod(fs, nod);
-+                              node = get_nod(fs, nod, &ni);
-+                              dir_set_name(&dw, name, nlen);
-+                              put_dir(&dw);
-                               node->i_links_count++;
--                              d->d_name_len = nlen;
--                              strncpy(d->d_name, name, nlen);
--                              return;
-+                              put_nod(ni);
-+                              goto out;
-                       }
-                       // if entry with enough room (last one?), shrink it & use it
-                       if(d->d_rec_len >= (sizeof(directory) + rndup(d->d_name_len, 4) + reclen))
-                       {
--                              reclen = d->d_rec_len;
--                              d->d_rec_len = sizeof(directory) + rndup(d->d_name_len, 4);
--                              reclen -= d->d_rec_len;
--                              d = (directory*) (((int8*)d) + d->d_rec_len);
--                              d->d_rec_len = reclen;
--                              d->d_inode = nod;
--                              node = get_nod(fs, nod);
-+                              d = shrink_dir(&dw, nod, name, nlen);
-+                              put_dir(&dw);
-+                              node = get_nod(fs, nod, &ni);
-                               node->i_links_count++;
--                              d->d_name_len = nlen;
--                              strncpy(d->d_name, name, nlen);
--                              return;
-+                              put_nod(ni);
-+                              goto out;
-                       }
-               }
-+              put_dir(&dw);
-+              lbw = bw;
-       }
-       // we found no free entry in the directory, so we add a block
--      if(!(b = get_workblk()))
--              error_msg_and_die("get_workblk() failed.");
--      d = (directory*)b;
--      d->d_inode = nod;
--      node = get_nod(fs, nod);
-+      node = get_nod(fs, nod, &ni);
-+      d = new_dir(fs, nod, name, nlen, &dw);
-       node->i_links_count++;
--      d->d_rec_len = BLOCKSIZE;
--      d->d_name_len = nlen;
--      strncpy(d->d_name, name, nlen);
--      extend_blk(fs, dnod, b, 1);
--      get_nod(fs, dnod)->i_size += BLOCKSIZE;
--      free_workblk(b);
-+      put_nod(ni);
-+      next_dir(&dw); // Force the data into the buffer
-+
-+      inode_pos_init(fs, &ipos, dnod, INODE_POS_EXTEND, &lbw);
-+      extend_inode_blk(fs, &ipos, dir_data(&dw), 1);
-+      inode_pos_finish(fs, &ipos);
-+
-+      put_dir(&dw);
-+      pnode->i_size += BLOCKSIZE;
-+out:
-+      put_nod(dni);
- }
- // find an entry in a directory
-@@ -1321,11 +1948,13 @@
-       while((bk = walk_bw(fs, nod, &bw, 0, 0)) != WALK_END)
-       {
-               directory *d;
--              uint8 *b;
--              b = get_blk(fs, bk);
--              for(d = (directory*)b; (int8*)d + sizeof(*d) < (int8*)b + BLOCKSIZE; d = (directory*)((int8*)d + d->d_rec_len))
--                      if(d->d_inode && (nlen == d->d_name_len) && !strncmp(d->d_name, name, nlen))
-+              dirwalker dw;
-+              for (d = get_dir(fs, bk, &dw); d; d=next_dir(&dw))
-+                      if(d->d_inode && (nlen == d->d_name_len) && !strncmp(dir_name(&dw), name, nlen)) {
-+                              put_dir(&dw);
-                               return d->d_inode;
-+                      }
-+              put_dir(&dw);
-       }
-       return 0;
- }
-@@ -1356,47 +1985,55 @@
-       return nod;
- }
-+// chmod an inode
-+void
-+chmod_fs(filesystem *fs, uint32 nod, uint16 mode, uint16 uid, uint16 gid)
-+{
-+      inode *node;
-+      nod_info *ni;
-+      node = get_nod(fs, nod, &ni);
-+      node->i_mode = (node->i_mode & ~FM_IMASK) | (mode & FM_IMASK);
-+      node->i_uid = uid;
-+      node->i_gid = gid;
-+      put_nod(ni);
-+}
-+
- // create a simple inode
- static uint32
- mknod_fs(filesystem *fs, uint32 parent_nod, const char *name, uint16 mode, uint16 uid, uint16 gid, uint8 major, uint8 minor, uint32 ctime, uint32 mtime)
- {
-       uint32 nod;
-       inode *node;
--      if((nod = find_dir(fs, parent_nod, name)))
--      {
--              node = get_nod(fs, nod);
--              if((node->i_mode & FM_IFMT) != (mode & FM_IFMT))
--                      error_msg_and_die("node '%s' already exists and isn't of the same type", name);
--              node->i_mode = mode;
--      }
--      else
-+      nod_info *ni;
-+      gd_info *gi;
-+
-+      nod = alloc_nod(fs);
-+      node = get_nod(fs, nod, &ni);
-+      node->i_mode = mode;
-+      add2dir(fs, parent_nod, nod, name);
-+      switch(mode & FM_IFMT)
-       {
--              nod = alloc_nod(fs);
--              node = get_nod(fs, nod);
--              node->i_mode = mode;
--              add2dir(fs, parent_nod, nod, name);
--              switch(mode & FM_IFMT)
--              {
--                      case FM_IFLNK:
--                              mode = FM_IFLNK | FM_IRWXU | FM_IRWXG | FM_IRWXO;
--                              break;
--                      case FM_IFBLK:
--                      case FM_IFCHR:
--                              ((uint8*)get_nod(fs, nod)->i_block)[0] = minor;
--                              ((uint8*)get_nod(fs, nod)->i_block)[1] = major;
--                              break;
--                      case FM_IFDIR:
--                              add2dir(fs, nod, nod, ".");
--                              add2dir(fs, nod, parent_nod, "..");
--                              fs->gd[GRP_GROUP_OF_INODE(fs,nod)].bg_used_dirs_count++;
--                              break;
--              }
-+      case FM_IFLNK:
-+              mode = FM_IFLNK | FM_IRWXU | FM_IRWXG | FM_IRWXO;
-+              break;
-+      case FM_IFBLK:
-+      case FM_IFCHR:
-+              ((uint8*)node->i_block)[0] = minor;
-+              ((uint8*)node->i_block)[1] = major;
-+              break;
-+      case FM_IFDIR:
-+              add2dir(fs, nod, nod, ".");
-+              add2dir(fs, nod, parent_nod, "..");
-+              get_gd(fs,GRP_GROUP_OF_INODE(fs,nod),&gi)->bg_used_dirs_count++;
-+              put_gd(gi);
-+              break;
-       }
-       node->i_uid = uid;
-       node->i_gid = gid;
-       node->i_atime = mtime;
-       node->i_ctime = ctime;
-       node->i_mtime = mtime;
-+      put_nod(ni);
-       return nod;
- }
-@@ -1413,33 +2050,73 @@
- mklink_fs(filesystem *fs, uint32 parent_nod, const char *name, size_t size, uint8 *b, uid_t uid, gid_t gid, uint32 ctime, uint32 mtime)
- {
-       uint32 nod = mknod_fs(fs, parent_nod, name, FM_IFLNK | FM_IRWXU | FM_IRWXG | FM_IRWXO, uid, gid, 0, 0, ctime, mtime);
--      extend_blk(fs, nod, 0, - (int)get_nod(fs, nod)->i_blocks / INOBLK);
--      get_nod(fs, nod)->i_size = size;
--      if(size <= 4 * (EXT2_TIND_BLOCK+1))
--      {
--              strncpy((char*)get_nod(fs, nod)->i_block, (char*)b, size);
-+      nod_info *ni;
-+      inode *node = get_nod(fs, nod, &ni);
-+      inode_pos ipos;
-+
-+      inode_pos_init(fs, &ipos, nod, INODE_POS_TRUNCATE, NULL);
-+      node->i_size = size;
-+      if(size < 4 * (EXT2_TIND_BLOCK+1))
-+      {
-+              strncpy((char*)node->i_block, (char*)b, size);
-+              ((char*)node->i_block)[size+1] = '\0';
-+              inode_pos_finish(fs, &ipos);
-+              put_nod(ni);
-               return nod;
-       }
--      extend_blk(fs, nod, b, rndup(size, BLOCKSIZE) / BLOCKSIZE);
-+      extend_inode_blk(fs, &ipos, b, rndup(size, BLOCKSIZE) / BLOCKSIZE);
-+      inode_pos_finish(fs, &ipos);
-+      put_nod(ni);
-       return nod;
- }
-+static void
-+fs_upgrade_rev1_largefile(filesystem *fs)
-+{
-+      fs->sb->s_rev_level = 1;
-+      fs->sb->s_first_ino = EXT2_GOOD_OLD_FIRST_INO;
-+      fs->sb->s_inode_size = EXT2_GOOD_OLD_INODE_SIZE;
-+}
-+
-+#define COPY_BLOCKS 16
-+#define CB_SIZE (COPY_BLOCKS * BLOCKSIZE)
-+
- // make a file from a FILE*
- static uint32
--mkfile_fs(filesystem *fs, uint32 parent_nod, const char *name, uint32 mode, size_t size, FILE *f, uid_t uid, gid_t gid, uint32 ctime, uint32 mtime)
-+mkfile_fs(filesystem *fs, uint32 parent_nod, const char *name, uint32 mode, FILE *f, uid_t uid, gid_t gid, uint32 ctime, uint32 mtime)
- {
-       uint8 * b;
-       uint32 nod = mknod_fs(fs, parent_nod, name, mode|FM_IFREG, uid, gid, 0, 0, ctime, mtime);
--      extend_blk(fs, nod, 0, - (int)get_nod(fs, nod)->i_blocks / INOBLK);
--      get_nod(fs, nod)->i_size = size;
--      if (size) {
--              if(!(b = (uint8*)calloc(rndup(size, BLOCKSIZE), 1)))
--                      error_msg_and_die("not enough mem to read file '%s'", name);
--              if(f)
--                      fread(b, size, 1, f); // FIXME: ugly. use mmap() ...
--              extend_blk(fs, nod, b, rndup(size, BLOCKSIZE) / BLOCKSIZE);
--              free(b);
--      }
-+      nod_info *ni;
-+      inode *node = get_nod(fs, nod, &ni);
-+      off_t size = 0;
-+      size_t readbytes;
-+      inode_pos ipos;
-+      int fullsize;
-+
-+      b = malloc(CB_SIZE);
-+      if (!b)
-+              error_msg_and_die("mkfile_fs: out of memory");
-+      inode_pos_init(fs, &ipos, nod, INODE_POS_TRUNCATE, NULL);
-+      readbytes = fread(b, 1, CB_SIZE, f);
-+      while (readbytes) {
-+              fullsize = rndup(readbytes, BLOCKSIZE);
-+              // Fill to end of block with zeros.
-+              memset(b + readbytes, 0, fullsize - readbytes);
-+              extend_inode_blk(fs, &ipos, b, fullsize / BLOCKSIZE);
-+              size += readbytes;
-+              readbytes = fread(b, 1, CB_SIZE, f);
-+      }
-+      if (size > 0x7fffffff) {
-+              if (fs->sb->s_rev_level < 1)
-+                      fs_upgrade_rev1_largefile(fs);
-+              fs->sb->s_feature_ro_compat |= EXT2_FEATURE_RO_COMPAT_LARGE_FILE;
-+      }
-+      node->i_dir_acl = size >> 32;
-+      node->i_size = size;
-+      inode_pos_finish(fs, &ipos);
-+      put_nod(ni);
-+      free(b);
-       return nod;
- }
-@@ -1591,13 +2268,24 @@
-                               dname = malloc(len + 1);
-                               for(i = start; i < count; i++)
-                               {
-+                                      uint32 oldnod;
-                                       SNPRINTF(dname, len, "%s%lu", name, i);
--                                      mknod_fs(fs, nod, dname, mode, uid, gid, major, minor + (i * increment - start), ctime, mtime);
-+                                      oldnod = find_dir(fs, nod, dname);
-+                                      if(oldnod)
-+                                              chmod_fs(fs, oldnod, mode, uid, gid);
-+                                      else
-+                                              mknod_fs(fs, nod, dname, mode, uid, gid, major, minor + (i * increment - start), ctime, mtime);
-                               }
-                               free(dname);
-                       }
-                       else
--                              mknod_fs(fs, nod, name, mode, uid, gid, major, minor, ctime, mtime);
-+                      {
-+                              uint32 oldnod = find_dir(fs, nod, name);
-+                              if(oldnod)
-+                                      chmod_fs(fs, oldnod, mode, uid, gid);
-+                              else
-+                                      mknod_fs(fs, nod, name, mode, uid, gid, major, minor, ctime, mtime);
-+                      }
-               }
-       }
-       if (line)
-@@ -1643,6 +2331,10 @@
-                       switch(st.st_mode & S_IFMT)
-                       {
-                               case S_IFLNK:
-+                                      if((st.st_mode & S_IFMT) == S_IFREG || st.st_size >= 4 * (EXT2_TIND_BLOCK+1))
-+                                              stats->nblocks += (st.st_size + BLOCKSIZE - 1) / BLOCKSIZE;
-+                                      stats->ninodes++;
-+                                      break;
-                               case S_IFREG:
-                                       if((st.st_mode & S_IFMT) == S_IFREG || st.st_size > 4 * (EXT2_TIND_BLOCK+1))
-                                               stats->nblocks += (st.st_size + BLOCKSIZE - 1) / BLOCKSIZE;
-@@ -1657,19 +2349,33 @@
-                                       if(chdir(dent->d_name) < 0)
-                                               perror_msg_and_die(dent->d_name);
-                                       add2fs_from_dir(fs, this_nod, squash_uids, squash_perms, fs_timestamp, stats);
--                                      chdir("..");
-+                                      if (chdir("..") == -1)
-+                                              perror_msg_and_die("..");
-+
-                                       break;
-                               default:
-                                       break;
-                       }
-               else
-               {
-+                      if((nod = find_dir(fs, this_nod, name)))
-+                      {
-+                              error_msg("ignoring duplicate entry %s", name);
-+                              if(S_ISDIR(st.st_mode)) {
-+                                      if(chdir(dent->d_name) < 0)
-+                                              perror_msg_and_die(name);
-+                                      add2fs_from_dir(fs, nod, squash_uids, squash_perms, fs_timestamp, stats);
-+                                      if (chdir("..") == -1)
-+                                              perror_msg_and_die("..");
-+                              }
-+                              continue;
-+                      }
-                       save_nod = 0;
-                       /* Check for hardlinks */
-                       if (!S_ISDIR(st.st_mode) && !S_ISLNK(st.st_mode) && st.st_nlink > 1) {
--                              int32 hdlink = is_hardlink(st.st_ino);
-+                              int32 hdlink = is_hardlink(fs, st.st_ino);
-                               if (hdlink >= 0) {
--                                      add2dir(fs, this_nod, hdlinks.hdl[hdlink].dst_nod, name);
-+                                      add2dir(fs, this_nod, fs->hdlinks.hdl[hdlink].dst_nod, name);
-                                       continue;
-                               } else {
-                                       save_nod = 1;
-@@ -1697,8 +2403,12 @@
-                                       free(lnk);
-                                       break;
-                               case S_IFREG:
--                                      fh = xfopen(dent->d_name, "rb");
--                                      nod = mkfile_fs(fs, this_nod, name, mode, st.st_size, fh, uid, gid, ctime, mtime);
-+                                      fh = fopen(dent->d_name, "rb");
-+                                      if (!fh) {
-+                                              error_msg("Unable to open file %s", dent->d_name);
-+                                              break;
-+                                      }
-+                                      nod = mkfile_fs(fs, this_nod, name, mode, fh, uid, gid, ctime, mtime);
-                                       fclose(fh);
-                                       break;
-                               case S_IFDIR:
-@@ -1706,199 +2416,128 @@
-                                       if(chdir(dent->d_name) < 0)
-                                               perror_msg_and_die(name);
-                                       add2fs_from_dir(fs, nod, squash_uids, squash_perms, fs_timestamp, stats);
--                                      chdir("..");
-+                                      if (chdir("..") == -1)
-+                                              perror_msg_and_die("..");
-                                       break;
-                               default:
-                                       error_msg("ignoring entry %s", name);
-                       }
-                       if (save_nod) {
--                              if (hdlinks.count == hdlink_cnt) {
--                                      if ((hdlinks.hdl = 
--                                               realloc (hdlinks.hdl, (hdlink_cnt + HDLINK_CNT) *
-+                              if (fs->hdlinks.count == fs->hdlink_cnt) {
-+                                      if ((fs->hdlinks.hdl =
-+                                               realloc (fs->hdlinks.hdl, (fs->hdlink_cnt + HDLINK_CNT) *
-                                                                 sizeof (struct hdlink_s))) == NULL) {
-                                               error_msg_and_die("Not enough memory");
-                                       }
--                                      hdlink_cnt += HDLINK_CNT;
-+                                      fs->hdlink_cnt += HDLINK_CNT;
-                               }
--                              hdlinks.hdl[hdlinks.count].src_inode = st.st_ino;
--                              hdlinks.hdl[hdlinks.count].dst_nod = nod;
--                              hdlinks.count++;
-+                              fs->hdlinks.hdl[fs->hdlinks.count].src_inode = st.st_ino;
-+                              fs->hdlinks.hdl[fs->hdlinks.count].dst_nod = nod;
-+                              fs->hdlinks.count++;
-                       }
-               }
-       }
-       closedir(dh);
- }
--// endianness swap of x-indirect blocks
-+// Copy size blocks from src to dst, putting holes in the output
-+// file (if possible) if the input block is all zeros.
-+// Copy size blocks from src to dst, putting holes in the output
-+// file (if possible) if the input block is all zeros.
- static void
--swap_goodblocks(filesystem *fs, inode *nod)
-+copy_file(filesystem *fs, FILE *dst, FILE *src, size_t size)
- {
--      uint32 i,j;
--      int done=0;
--      uint32 *b,*b2;
-+      uint8 *b;
--      uint32 nblk = nod->i_blocks / INOBLK;
--      if((nod->i_size && !nblk) || ((nod->i_mode & FM_IFBLK) == FM_IFBLK) || ((nod->i_mode & FM_IFCHR) == FM_IFCHR))
--              for(i = 0; i <= EXT2_TIND_BLOCK; i++)
--                      nod->i_block[i] = swab32(nod->i_block[i]);
--      if(nblk <= EXT2_IND_BLOCK)
--              return;
--      swap_block(get_blk(fs, nod->i_block[EXT2_IND_BLOCK]));
--      if(nblk <= EXT2_DIND_BLOCK + BLOCKSIZE/4)
--              return;
--      /* Currently this will fail b'cos the number of blocks as stored
--         in i_blocks also includes the indirection blocks (see
--         walk_bw). But this function assumes that i_blocks only
--         stores the count of data blocks ( Actually according to
--         "Understanding the Linux Kernel" (Table 17-3 p502 1st Ed)
--         i_blocks IS supposed to store the count of data blocks). so
--         with a file of size 268K nblk would be 269.The above check
--         will be false even though double indirection hasn't been
--         started.This is benign as 0 means block 0 which has been
--         zeroed out and therefore points back to itself from any offset
--       */
--      // FIXME: I have fixed that, but I have the feeling the rest of
--      // ths function needs to be fixed for the same reasons - Xav
--      assert(nod->i_block[EXT2_DIND_BLOCK] != 0);
--      for(i = 0; i < BLOCKSIZE/4; i++)
--              if(nblk > EXT2_IND_BLOCK + BLOCKSIZE/4 + (BLOCKSIZE/4)*i )
--                      swap_block(get_blk(fs, ((uint32*)get_blk(fs, nod->i_block[EXT2_DIND_BLOCK]))[i]));
--      swap_block(get_blk(fs, nod->i_block[EXT2_DIND_BLOCK]));
--      if(nblk <= EXT2_IND_BLOCK + BLOCKSIZE/4 + BLOCKSIZE/4 * BLOCKSIZE/4)
--              return;
--      /* Adding support for triple indirection */
--      b = (uint32*)get_blk(fs,nod->i_block[EXT2_TIND_BLOCK]);
--      for(i=0;i < BLOCKSIZE/4 && !done ; i++) {
--              b2 = (uint32*)get_blk(fs,b[i]); 
--              for(j=0; j<BLOCKSIZE/4;j++) {
--                      if (nblk > ( EXT2_IND_BLOCK + BLOCKSIZE/4 + 
--                                   (BLOCKSIZE/4)*(BLOCKSIZE/4) + 
--                                   i*(BLOCKSIZE/4)*(BLOCKSIZE/4) + 
--                                   j*(BLOCKSIZE/4)) ) 
--                        swap_block(get_blk(fs,b2[j]));
--                      else {
--                        done = 1;
--                        break;
--                      }
-+      b = malloc(BLOCKSIZE);
-+      if (!b)
-+              error_msg_and_die("copy_file: out of memory");
-+      if (fseek(src, 0, SEEK_SET))
-+              perror_msg_and_die("fseek");
-+      if (ftruncate(fileno(dst), 0))
-+              perror_msg_and_die("copy_file: ftruncate");
-+      while (size > 0) {
-+              if (fread(b, BLOCKSIZE, 1, src) != 1)
-+                      perror_msg_and_die("copy failed on read");
-+              if ((dst != stdout) && fs->holes && is_blk_empty(b)) {
-+                      /* Empty block, just skip it */
-+                      if (fseek(dst, BLOCKSIZE, SEEK_CUR))
-+                              perror_msg_and_die("fseek");
-+              } else {
-+                      if (fwrite(b, BLOCKSIZE, 1, dst) != 1)
-+                              perror_msg_and_die("copy failed on write");
-               }
--              swap_block((uint8 *)b2);
-+              size--;
-       }
--      swap_block((uint8 *)b);
--      return;
-+      free(b);
- }
--static void
--swap_badblocks(filesystem *fs, inode *nod)
-+// Allocate a new filesystem structure, allocate internal memory,
-+// and initialize the contents.
-+static filesystem *
-+alloc_fs(int swapit, char *fname, uint32 nbblocks, FILE *srcfile)
- {
--      uint32 i,j;
--      int done=0;
--      uint32 *b,*b2;
-+      filesystem *fs;
-+      struct stat srcstat, dststat;
--      uint32 nblk = nod->i_blocks / INOBLK;
--      if((nod->i_size && !nblk) || ((nod->i_mode & FM_IFBLK) == FM_IFBLK) || ((nod->i_mode & FM_IFCHR) == FM_IFCHR))
--              for(i = 0; i <= EXT2_TIND_BLOCK; i++)
--                      nod->i_block[i] = swab32(nod->i_block[i]);
--      if(nblk <= EXT2_IND_BLOCK)
--              return;
--      swap_block(get_blk(fs, nod->i_block[EXT2_IND_BLOCK]));
--      if(nblk <= EXT2_DIND_BLOCK + BLOCKSIZE/4)
--              return;
--      /* See comment in swap_goodblocks */
--      assert(nod->i_block[EXT2_DIND_BLOCK] != 0);
--      swap_block(get_blk(fs, nod->i_block[EXT2_DIND_BLOCK]));
--      for(i = 0; i < BLOCKSIZE/4; i++)
--              if(nblk > EXT2_IND_BLOCK + BLOCKSIZE/4 + (BLOCKSIZE/4)*i )
--                      swap_block(get_blk(fs, ((uint32*)get_blk(fs, nod->i_block[EXT2_DIND_BLOCK]))[i]));
--      if(nblk <= EXT2_IND_BLOCK + BLOCKSIZE/4 + BLOCKSIZE/4 * BLOCKSIZE/4)
--              return;
--      /* Adding support for triple indirection */
--      b = (uint32*)get_blk(fs,nod->i_block[EXT2_TIND_BLOCK]);
--      swap_block((uint8 *)b);
--      for(i=0;i < BLOCKSIZE/4 && !done ; i++) {
--              b2 = (uint32*)get_blk(fs,b[i]); 
--              swap_block((uint8 *)b2);
--              for(j=0; j<BLOCKSIZE/4;j++) {
--                      if (nblk > ( EXT2_IND_BLOCK + BLOCKSIZE/4 + 
--                                   (BLOCKSIZE/4)*(BLOCKSIZE/4) + 
--                                   i*(BLOCKSIZE/4)*(BLOCKSIZE/4) + 
--                                   j*(BLOCKSIZE/4)) ) 
--                        swap_block(get_blk(fs,b2[j]));
--                      else {
--                        done = 1;
--                        break;
--                      }
--              }
--      }
--      return;
--}
-+      fs = malloc(sizeof(*fs));
-+      if (!fs)
-+              error_msg_and_die("not enough memory for filesystem");
-+      memset(fs, 0, sizeof(*fs));
-+      fs->swapit = swapit;
-+      cache_init(&fs->blks, MAX_FREE_CACHE_BLOCKS, blk_elem_val, blk_freed);
-+      cache_init(&fs->gds, MAX_FREE_CACHE_GDS, gd_elem_val, gd_freed);
-+      cache_init(&fs->blkmaps, MAX_FREE_CACHE_BLOCKMAPS,
-+                 blkmap_elem_val, blkmap_freed);
-+      cache_init(&fs->inodes, MAX_FREE_CACHE_INODES,
-+                 inode_elem_val, inode_freed);
-+      fs->hdlink_cnt = HDLINK_CNT;
-+      fs->hdlinks.hdl = calloc(sizeof(struct hdlink_s), fs->hdlink_cnt);
-+      if (!fs->hdlinks.hdl)
-+              error_msg_and_die("Not enough memory");
-+      fs->hdlinks.count = 0 ;
--// endianness swap of the whole filesystem
--static void
--swap_goodfs(filesystem *fs)
--{
--      uint32 i;
--      for(i = 1; i < fs->sb.s_inodes_count; i++)
--      {
--              inode *nod = get_nod(fs, i);
--              if(nod->i_mode & FM_IFDIR)
--              {
--                      blockwalker bw;
--                      uint32 bk;
--                      init_bw(&bw);
--                      while((bk = walk_bw(fs, i, &bw, 0, 0)) != WALK_END)
--                      {
--                              directory *d;
--                              uint8 *b;
--                              b = get_blk(fs, bk);
--                              for(d = (directory*)b; (int8*)d + sizeof(*d) < (int8*)b + BLOCKSIZE; d = (directory*)((int8*)d + swab16(d->d_rec_len)))
--                                      swap_dir(d);
--                      }
--              }
--              swap_goodblocks(fs, nod);
--              swap_nod(nod);
--      }
--      for(i=0;i<GRP_NBGROUPS(fs);i++)
--              swap_gd(&(fs->gd[i]));
--      swap_sb(&fs->sb);
-+      if (strcmp(fname, "-") == 0)
-+              fs->f = tmpfile();
-+      else if (srcfile) {
-+              if (fstat(fileno(srcfile), &srcstat))
-+                      perror_msg_and_die("fstat srcfile");
-+              if (stat(fname, &dststat) == 0
-+                  && srcstat.st_ino == dststat.st_ino
-+                  && srcstat.st_dev == dststat.st_dev)
-+                {
-+                      // source and destination are the same file, don't
-+                      // truncate or copy, just use the file.
-+                      fs->f = fopen(fname, "r+b");
-+              } else {
-+                      fs->f = fopen(fname, "w+b");
-+                      if (fs->f)
-+                              copy_file(fs, fs->f, srcfile, nbblocks);
-+              }
-+      } else
-+              fs->f = fopen(fname, "w+b");
-+      if (!fs->f)
-+              perror_msg_and_die("opening %s", fname);
-+      return fs;
- }
-+/* Make sure the output file is the right size */
- static void
--swap_badfs(filesystem *fs)
-+set_file_size(filesystem *fs)
- {
--      uint32 i;
--      swap_sb(&fs->sb);
--      for(i=0;i<GRP_NBGROUPS(fs);i++)
--              swap_gd(&(fs->gd[i]));
--      for(i = 1; i < fs->sb.s_inodes_count; i++)
--      {
--              inode *nod = get_nod(fs, i);
--              swap_nod(nod);
--              swap_badblocks(fs, nod);
--              if(nod->i_mode & FM_IFDIR)
--              {
--                      blockwalker bw;
--                      uint32 bk;
--                      init_bw(&bw);
--                      while((bk = walk_bw(fs, i, &bw, 0, 0)) != WALK_END)
--                      {
--                              directory *d;
--                              uint8 *b;
--                              b = get_blk(fs, bk);
--                              for(d = (directory*)b; (int8*)d + sizeof(*d) < (int8*)b + BLOCKSIZE; d = (directory*)((int8*)d + d->d_rec_len))
--                                      swap_dir(d);
--                      }
--              }
--      }
-+      if (ftruncate(fileno(fs->f),
-+                    ((off_t) fs->sb->s_blocks_count) * BLOCKSIZE))
-+              perror_msg_and_die("set_file_size: ftruncate");
- }
- // initialize an empty filesystem
- static filesystem *
--init_fs(int nbblocks, int nbinodes, int nbresrvd, int holes, uint32 fs_timestamp)
-+init_fs(int nbblocks, int nbinodes, int nbresrvd, int holes,
-+      uint32 fs_timestamp, uint32 creator_os, int swapit, char *fname)
- {
-       uint32 i;
-       filesystem *fs;
--      directory *d;
--      uint8 * b;
-+      dirwalker dw;
-       uint32 nod, first_block;
-       uint32 nbgroups,nbinodes_per_group,overhead_per_group,free_blocks,
-               free_blocks_per_group,nbblocks_per_group,min_nbgroups;
-@@ -1906,6 +2545,11 @@
-       uint32 j;
-       uint8 *bbm,*ibm;
-       inode *itab0;
-+      blk_info *bi;
-+      nod_info *ni;
-+      groupdescriptor *gd;
-+      gd_info *gi;
-+      inode_pos ipos;
-       
-       if(nbresrvd < 0)
-               error_msg_and_die("reserved blocks value is invalid. Note: options have changed, see --help or the man page.");
-@@ -1919,10 +2563,14 @@
-        */
-       min_nbgroups = (nbinodes + INODES_PER_GROUP - 1) / INODES_PER_GROUP;
-+      /* On filesystems with 1k block size, the bootloader area uses a full
-+       * block. For 2048 and up, the superblock can be fitted into block 0.
-+       */
-+      first_block = (BLOCKSIZE == 1024);
-+
-       /* nbblocks is the total number of blocks in the filesystem.
-        * a block group can have no more than 8192 blocks.
-        */
--      first_block = (BLOCKSIZE == 1024);
-       nbgroups = (nbblocks - first_block + BLOCKS_PER_GROUP - 1) / BLOCKS_PER_GROUP;
-       if(nbgroups < min_nbgroups) nbgroups = min_nbgroups;
-       nbblocks_per_group = rndup((nbblocks - first_block + nbgroups - 1)/nbgroups, 8);
-@@ -1934,51 +2582,59 @@
-       gdsz = rndup(nbgroups*sizeof(groupdescriptor),BLOCKSIZE)/BLOCKSIZE;
-       itblsz = nbinodes_per_group * sizeof(inode)/BLOCKSIZE;
-       overhead_per_group = 3 /*sb,bbm,ibm*/ + gdsz + itblsz;
--      if((uint32)nbblocks - 1 < overhead_per_group * nbgroups)
--              error_msg_and_die("too much overhead, try fewer inodes or more blocks. Note: options have changed, see --help or the man page.");
--      free_blocks = nbblocks - overhead_per_group*nbgroups - 1 /*boot block*/;
-+      free_blocks = nbblocks - overhead_per_group*nbgroups - first_block;
-       free_blocks_per_group = nbblocks_per_group - overhead_per_group;
-+      if(free_blocks < 0)
-+              error_msg_and_die("too much overhead, try fewer inodes or more blocks. Note: options have changed, see --help or the man page.");
--      if(!(fs = (filesystem*)calloc(nbblocks, BLOCKSIZE)))
--              error_msg_and_die("not enough memory for filesystem");
-+      fs = alloc_fs(swapit, fname, nbblocks, NULL);
-+      fs->sb = calloc(1, SUPERBLOCK_SIZE);
-+      if (!fs->sb)
-+              error_msg_and_die("error allocating header memory");
-       // create the superblock for an empty filesystem
--      fs->sb.s_inodes_count = nbinodes_per_group * nbgroups;
--      fs->sb.s_blocks_count = nbblocks;
--      fs->sb.s_r_blocks_count = nbresrvd;
--      fs->sb.s_free_blocks_count = free_blocks;
--      fs->sb.s_free_inodes_count = fs->sb.s_inodes_count - EXT2_FIRST_INO + 1;
--      fs->sb.s_first_data_block = first_block;
--      fs->sb.s_log_block_size = BLOCKSIZE >> 11;
--      fs->sb.s_log_frag_size = BLOCKSIZE >> 11;
--      fs->sb.s_blocks_per_group = nbblocks_per_group;
--      fs->sb.s_frags_per_group = nbblocks_per_group;
--      fs->sb.s_inodes_per_group = nbinodes_per_group;
--      fs->sb.s_wtime = fs_timestamp;
--      fs->sb.s_magic = EXT2_MAGIC_NUMBER;
--      fs->sb.s_lastcheck = fs_timestamp;
-+      fs->sb->s_inodes_count = nbinodes_per_group * nbgroups;
-+      fs->sb->s_blocks_count = nbblocks;
-+      fs->sb->s_r_blocks_count = nbresrvd;
-+      fs->sb->s_free_blocks_count = free_blocks;
-+      fs->sb->s_free_inodes_count = fs->sb->s_inodes_count - EXT2_FIRST_INO + 1;
-+      fs->sb->s_first_data_block = first_block;
-+      fs->sb->s_log_block_size = BLOCKSIZE >> 11;
-+      fs->sb->s_log_frag_size = BLOCKSIZE >> 11;
-+      fs->sb->s_blocks_per_group = nbblocks_per_group;
-+      fs->sb->s_frags_per_group = nbblocks_per_group;
-+      fs->sb->s_inodes_per_group = nbinodes_per_group;
-+      fs->sb->s_wtime = fs_timestamp;
-+      fs->sb->s_magic = EXT2_MAGIC_NUMBER;
-+      fs->sb->s_lastcheck = fs_timestamp;
-+      fs->sb->s_creator_os = creator_os;
-+
-+      set_file_size(fs);
-       // set up groupdescriptors
--      for(i=0, bbmpos=gdsz+2, ibmpos=bbmpos+1, itblpos=ibmpos+1;
-+      for(i=0, bbmpos=first_block+1+gdsz, ibmpos=bbmpos+1, itblpos=ibmpos+1;
-               i<nbgroups;
-               i++, bbmpos+=nbblocks_per_group, ibmpos+=nbblocks_per_group, itblpos+=nbblocks_per_group)
-       {
-+              gd = get_gd(fs, i, &gi);
-+
-               if(free_blocks > free_blocks_per_group) {
--                      fs->gd[i].bg_free_blocks_count = free_blocks_per_group;
-+                      gd->bg_free_blocks_count = free_blocks_per_group;
-                       free_blocks -= free_blocks_per_group;
-               } else {
--                      fs->gd[i].bg_free_blocks_count = free_blocks;
-+                      gd->bg_free_blocks_count = free_blocks;
-                       free_blocks = 0; // this is the last block group
-               }
-               if(i)
--                      fs->gd[i].bg_free_inodes_count = nbinodes_per_group;
-+                      gd->bg_free_inodes_count = nbinodes_per_group;
-               else
--                      fs->gd[i].bg_free_inodes_count = nbinodes_per_group -
-+                      gd->bg_free_inodes_count = nbinodes_per_group -
-                                                       EXT2_FIRST_INO + 2;
--              fs->gd[i].bg_used_dirs_count = 0;
--              fs->gd[i].bg_block_bitmap = bbmpos;
--              fs->gd[i].bg_inode_bitmap = ibmpos;
--              fs->gd[i].bg_inode_table = itblpos;
-+              gd->bg_used_dirs_count = 0;
-+              gd->bg_block_bitmap = bbmpos;
-+              gd->bg_inode_bitmap = ibmpos;
-+              gd->bg_inode_table = itblpos;
-+              put_gd(gi);
-       }
-       /* Mark non-filesystem blocks and inodes as allocated */
-@@ -1984,110 +2640,143 @@
-       /* Mark non-filesystem blocks and inodes as allocated */
-       /* Mark system blocks and inodes as allocated         */
-       for(i = 0; i<nbgroups;i++) {
--
-               /* Block bitmap */
--              bbm = get_blk(fs,fs->gd[i].bg_block_bitmap);    
-+              gd = get_gd(fs, i, &gi);
-+              bbm = GRP_GET_GROUP_BBM(fs, gd, &bi);
-               //non-filesystem blocks
--              for(j = fs->gd[i].bg_free_blocks_count
-+              for(j = gd->bg_free_blocks_count
-                       + overhead_per_group + 1; j <= BLOCKSIZE * 8; j++)
-                       allocate(bbm, j); 
-               //system blocks
-               for(j = 1; j <= overhead_per_group; j++)
-                       allocate(bbm, j); 
--              
-+              GRP_PUT_GROUP_BBM(bi);
-+
-               /* Inode bitmap */
--              ibm = get_blk(fs,fs->gd[i].bg_inode_bitmap);    
-+              ibm = GRP_GET_GROUP_IBM(fs, gd, &bi);
-               //non-filesystem inodes
--              for(j = fs->sb.s_inodes_per_group+1; j <= BLOCKSIZE * 8; j++)
-+              for(j = fs->sb->s_inodes_per_group+1; j <= BLOCKSIZE * 8; j++)
-                       allocate(ibm, j);
-               //system inodes
-               if(i == 0)
-                       for(j = 1; j < EXT2_FIRST_INO; j++)
-                               allocate(ibm, j);
-+              GRP_PUT_GROUP_IBM(bi);
-+              put_gd(gi);
-       }
-       // make root inode and directory
-       /* We have groups now. Add the root filesystem in group 0 */
-       /* Also increment the directory count for group 0 */
--      fs->gd[0].bg_free_inodes_count--;
--      fs->gd[0].bg_used_dirs_count = 1;
--      itab0 = (inode *)get_blk(fs,fs->gd[0].bg_inode_table);
--      itab0[EXT2_ROOT_INO-1].i_mode = FM_IFDIR | FM_IRWXU | FM_IRGRP | FM_IROTH | FM_IXGRP | FM_IXOTH; 
--      itab0[EXT2_ROOT_INO-1].i_ctime = fs_timestamp;
--      itab0[EXT2_ROOT_INO-1].i_mtime = fs_timestamp;
--      itab0[EXT2_ROOT_INO-1].i_atime = fs_timestamp;
--      itab0[EXT2_ROOT_INO-1].i_size = BLOCKSIZE;
--      itab0[EXT2_ROOT_INO-1].i_links_count = 2;
--
--      if(!(b = get_workblk()))
--              error_msg_and_die("get_workblk() failed.");
--      d = (directory*)b;
--      d->d_inode = EXT2_ROOT_INO;
--      d->d_rec_len = sizeof(directory)+4;
--      d->d_name_len = 1;
--      strcpy(d->d_name, ".");
--      d = (directory*)(b + d->d_rec_len);
--      d->d_inode = EXT2_ROOT_INO;
--      d->d_rec_len = BLOCKSIZE - (sizeof(directory)+4);
--      d->d_name_len = 2;
--      strcpy(d->d_name, "..");
--      extend_blk(fs, EXT2_ROOT_INO, b, 1);
-+      gd = get_gd(fs, 0, &gi);
-+      gd->bg_free_inodes_count--;
-+      gd->bg_used_dirs_count = 1;
-+      put_gd(gi);
-+      itab0 = get_nod(fs, EXT2_ROOT_INO, &ni);
-+      itab0->i_mode = FM_IFDIR | FM_IRWXU | FM_IRGRP | FM_IROTH | FM_IXGRP | FM_IXOTH;
-+      itab0->i_ctime = fs_timestamp;
-+      itab0->i_mtime = fs_timestamp;
-+      itab0->i_atime = fs_timestamp;
-+      itab0->i_size = BLOCKSIZE;
-+      itab0->i_links_count = 2;
-+      put_nod(ni);
-+
-+      new_dir(fs, EXT2_ROOT_INO, ".", 1, &dw);
-+      shrink_dir(&dw, EXT2_ROOT_INO, "..", 2);
-+      next_dir(&dw); // Force the data into the buffer
-+      inode_pos_init(fs, &ipos, EXT2_ROOT_INO, INODE_POS_EXTEND, NULL);
-+      extend_inode_blk(fs, &ipos, dir_data(&dw), 1);
-+      inode_pos_finish(fs, &ipos);
-+      put_dir(&dw);
--      // make lost+found directory and reserve blocks
--      if(fs->sb.s_r_blocks_count)
-+      // make lost+found directory
-+      if(fs->sb->s_r_blocks_count)
-       {
--              nod = mkdir_fs(fs, EXT2_ROOT_INO, "lost+found", FM_IRWXU, 0, 0, fs_timestamp, fs_timestamp);
-+              inode *node;
-+              uint8 *b;
-+
-+              nod = mkdir_fs(fs, EXT2_ROOT_INO, "lost+found", FM_IRWXU,
-+                             0, 0, fs_timestamp, fs_timestamp);
-+              b = get_workblk();
-               memset(b, 0, BLOCKSIZE);
-               ((directory*)b)->d_rec_len = BLOCKSIZE;
--              /* We run into problems with e2fsck if directory lost+found grows
--               * bigger than this. Need to find out why this happens - sundar
--               */
--              if (fs->sb.s_r_blocks_count > fs->sb.s_blocks_count * MAX_RESERVED_BLOCKS ) 
--                      fs->sb.s_r_blocks_count = fs->sb.s_blocks_count * MAX_RESERVED_BLOCKS;
--              for(i = 1; i < fs->sb.s_r_blocks_count; i++)
--                      extend_blk(fs, nod, b, 1);
--              get_nod(fs, nod)->i_size = fs->sb.s_r_blocks_count * BLOCKSIZE;
-+              inode_pos_init(fs, &ipos, nod, INODE_POS_EXTEND, NULL);
-+              // It is always 16 blocks to start out with
-+              for(i = 1; i < 16; i++)
-+                      extend_inode_blk(fs, &ipos, b, 1);
-+              inode_pos_finish(fs, &ipos);
-+              free_workblk(b);
-+              node = get_nod(fs, nod, &ni);
-+              node->i_size = 16 * BLOCKSIZE;
-+              put_nod(ni);
-       }
--      free_workblk(b);
-       // administrative info
--      fs->sb.s_state = 1;
--      fs->sb.s_max_mnt_count = 20;
-+      fs->sb->s_state = 1;
-+      fs->sb->s_max_mnt_count = 20;
-       // options for me
--      if(holes)
--              fs->sb.s_reserved[200] |= OP_HOLES;
-+      fs->holes = holes;
-       
-       return fs;
- }
- // loads a filesystem from disk
- static filesystem *
--load_fs(FILE * fh, int swapit)
-+load_fs(FILE *fh, int swapit, char *fname)
- {
--      size_t fssize;
-+      off_t fssize;
-       filesystem *fs;
--      if((fseek(fh, 0, SEEK_END) < 0) || ((ssize_t)(fssize = ftell(fh)) == -1))
-+
-+      if((fseek(fh, 0, SEEK_END) < 0) || ((fssize = ftello(fh)) == -1))
-               perror_msg_and_die("input filesystem image");
-       rewind(fh);
--      fssize = (fssize + BLOCKSIZE - 1) / BLOCKSIZE;
-+      if ((fssize % BLOCKSIZE) != 0)
-+              error_msg_and_die("Input file not a multiple of block size");
-+      fssize /= BLOCKSIZE;
-       if(fssize < 16) // totally arbitrary
-               error_msg_and_die("too small filesystem");
--      if(!(fs = (filesystem*)calloc(fssize, BLOCKSIZE)))
--              error_msg_and_die("not enough memory for filesystem");
--      if(fread(fs, BLOCKSIZE, fssize, fh) != fssize)
--              perror_msg_and_die("input filesystem image");
-+      fs = alloc_fs(swapit, fname, fssize, fh);
-+
-+      /* Read and check the superblock, then read the superblock
-+       * and all the group descriptors */
-+      fs->sb = malloc(SUPERBLOCK_SIZE);
-+      if (!fs->sb)
-+              error_msg_and_die("error allocating header memory");
-+      if (fseek(fs->f, SUPERBLOCK_OFFSET, SEEK_SET))
-+              perror_msg_and_die("fseek");
-+      if (fread(fs->sb, SUPERBLOCK_SIZE, 1, fs->f) != 1)
-+              perror_msg_and_die("fread filesystem image superblock");
-       if(swapit)
--              swap_badfs(fs);
--      if(fs->sb.s_rev_level || (fs->sb.s_magic != EXT2_MAGIC_NUMBER))
-+              swap_sb(fs->sb);
-+
-+      if((fs->sb->s_rev_level > 1) || (fs->sb->s_magic != EXT2_MAGIC_NUMBER))
-               error_msg_and_die("not a suitable ext2 filesystem");
-+      if (fs->sb->s_rev_level > 0) {
-+              if (fs->sb->s_first_ino != EXT2_GOOD_OLD_FIRST_INO)
-+                      error_msg_and_die("First inode incompatible");
-+              if (fs->sb->s_inode_size != EXT2_GOOD_OLD_INODE_SIZE)
-+                      error_msg_and_die("inode size incompatible");
-+              if (fs->sb->s_feature_compat)
-+                      error_msg_and_die("Unsupported compat features");
-+              if (fs->sb->s_feature_incompat)
-+                      error_msg_and_die("Unsupported incompat features");
-+              if (fs->sb->s_feature_ro_compat
-+                  & ~EXT2_FEATURE_RO_COMPAT_LARGE_FILE)
-+                      error_msg_and_die("Unsupported ro compat features");
-+      }
-+
-+      set_file_size(fs);
-       return fs;
- }
- static void
- free_fs(filesystem *fs)
- {
-+      free(fs->hdlinks.hdl);
-+      fclose(fs->f);
-+      free(fs->sb);
-       free(fs);
- }
-@@ -2123,16 +2812,23 @@
- {
-       blockwalker bw;
-       uint32 bk;
--      int32 fsize = get_nod(fs, nod)->i_size;
-+      nod_info *ni;
-+      inode *node = get_nod(fs, nod, &ni);
-+      int32 fsize = node->i_size;
-+      blk_info *bi;
-+
-       init_bw(&bw);
-       while((bk = walk_bw(fs, nod, &bw, 0, 0)) != WALK_END)
-       {
-               if(fsize <= 0)
-                       error_msg_and_die("wrong size while saving inode %d", nod);
--              if(fwrite(get_blk(fs, bk), (fsize > BLOCKSIZE) ? BLOCKSIZE : fsize, 1, f) != 1)
-+              if(fwrite(get_blk(fs, bk, &bi),
-+                        (fsize > BLOCKSIZE) ? BLOCKSIZE : fsize, 1, f) != 1)
-                       error_msg_and_die("error while saving inode %d", nod);
-+              put_blk(bi);
-               fsize -= BLOCKSIZE;
-       }
-+      put_nod(ni);
- }
-@@ -2141,8 +2837,11 @@
- print_dev(filesystem *fs, uint32 nod)
- {
-       int minor, major;
--      minor = ((uint8*)get_nod(fs, nod)->i_block)[0];
--      major = ((uint8*)get_nod(fs, nod)->i_block)[1];
-+      nod_info *ni;
-+      inode *node = get_nod(fs, nod, &ni);
-+      minor = ((uint8*)node->i_block)[0];
-+      major = ((uint8*)node->i_block)[1];
-+      put_nod(ni);
-       printf("major: %d, minor: %d\n", major, minor);
- }
-@@ -2157,17 +2856,15 @@
-       while((bk = walk_bw(fs, nod, &bw, 0, 0)) != WALK_END)
-       {
-               directory *d;
--              uint8 *b;
--              b = get_blk(fs, bk);
--              for(d = (directory*)b; (int8*)d + sizeof(*d) < (int8*)b + BLOCKSIZE; d = (directory*)((int8*)d + d->d_rec_len))
-+              dirwalker dw;
-+              for (d = get_dir(fs, bk, &dw); d; d = next_dir(&dw))
-                       if(d->d_inode)
-                       {
--                              int i;
-                               printf("entry '");
--                              for(i = 0; i < d->d_name_len; i++)
--                                      putchar(d->d_name[i]);
-+                              fwrite(dir_name(&dw), 1, d->d_name_len, stdout);
-                               printf("' (inode %d): rec_len: %d (name_len: %d)\n", d->d_inode, d->d_rec_len, d->d_name_len);
-                       }
-+              put_dir(&dw);
-       }
- }
-@@ -2175,14 +2872,18 @@
- static void
- print_link(filesystem *fs, uint32 nod)
- {
--      if(!get_nod(fs, nod)->i_blocks)
--              printf("links to '%s'\n", (char*)get_nod(fs, nod)->i_block);
-+      nod_info *ni;
-+      inode *node = get_nod(fs, nod, &ni);
-+
-+      if(!node->i_blocks)
-+              printf("links to '%s'\n", (char*)node->i_block);
-       else
-       {
-               printf("links to '");
-               write_blocks(fs, nod, stdout);
-               printf("'\n");
-       }
-+      put_nod(ni);
- }
- // make a ls-like printout of permissions
-@@ -2251,8 +2952,13 @@
- {
-       char *s;
-       char perms[11];
--      if(!get_nod(fs, nod)->i_mode)
--              return;
-+      nod_info *ni;
-+      inode *node = get_nod(fs, nod, &ni);
-+      blk_info *bi;
-+      gd_info *gi;
-+
-+      if(!node->i_mode)
-+              goto out;
-       switch(nod)
-       {
-               case EXT2_BAD_INO:
-@@ -2274,15 +2980,18 @@
-               default:
-                       s = (nod >= EXT2_FIRST_INO) ? "normal" : "unknown reserved"; 
-       }
--      printf("inode %d (%s, %d links): ", nod, s, get_nod(fs, nod)->i_links_count);
--      if(!allocated(GRP_GET_INODE_BITMAP(fs,nod), GRP_IBM_OFFSET(fs,nod)))
-+      printf("inode %d (%s, %d links): ", nod, s, node->i_links_count);
-+      if(!allocated(GRP_GET_INODE_BITMAP(fs,nod,&bi,&gi), GRP_IBM_OFFSET(fs,nod)))
-       {
-+              GRP_PUT_INODE_BITMAP(bi,gi);
-               printf("unallocated\n");
--              return;
-+              goto out;
-       }
--      make_perms(get_nod(fs, nod)->i_mode, perms);
--      printf("%s,  size: %d byte%s (%d block%s)\n", perms, plural(get_nod(fs, nod)->i_size), plural(get_nod(fs, nod)->i_blocks / INOBLK));
--      switch(get_nod(fs, nod)->i_mode & FM_IFMT)
-+      GRP_PUT_INODE_BITMAP(bi,gi);
-+      make_perms(node->i_mode, perms);
-+      printf("%s,  size: %d byte%s (%d block%s)\n", perms,
-+             plural(node->i_size), plural(node->i_blocks / INOBLK));
-+      switch(node->i_mode & FM_IFMT)
-       {
-               case FM_IFSOCK:
-                       list_blocks(fs, nod);
-@@ -2310,6 +3019,8 @@
-                       list_blocks(fs, nod);
-       }
-       printf("Done with inode %d\n",nod);
-+out:
-+      put_nod(ni);
- }
- // describes various fields in a filesystem
-@@ -2317,49 +3028,65 @@
- print_fs(filesystem *fs)
- {
-       uint32 i;
-+      blk_info *bi;
-+      groupdescriptor *gd;
-+      gd_info *gi;
-       uint8 *ibm;
-       printf("%d blocks (%d free, %d reserved), first data block: %d\n",
--             fs->sb.s_blocks_count, fs->sb.s_free_blocks_count,
--             fs->sb.s_r_blocks_count, fs->sb.s_first_data_block);
--      printf("%d inodes (%d free)\n", fs->sb.s_inodes_count,
--             fs->sb.s_free_inodes_count);
-+             fs->sb->s_blocks_count, fs->sb->s_free_blocks_count,
-+             fs->sb->s_r_blocks_count, fs->sb->s_first_data_block);
-+      printf("%d inodes (%d free)\n", fs->sb->s_inodes_count,
-+             fs->sb->s_free_inodes_count);
-       printf("block size = %d, frag size = %d\n",
--             fs->sb.s_log_block_size ? (fs->sb.s_log_block_size << 11) : 1024,
--             fs->sb.s_log_frag_size ? (fs->sb.s_log_frag_size << 11) : 1024);
-+             fs->sb->s_log_block_size ? (fs->sb->s_log_block_size << 11) : 1024,
-+             fs->sb->s_log_frag_size ? (fs->sb->s_log_frag_size << 11) : 1024);
-       printf("number of groups: %d\n",GRP_NBGROUPS(fs));
-       printf("%d blocks per group,%d frags per group,%d inodes per group\n",
--           fs->sb.s_blocks_per_group, fs->sb.s_frags_per_group,
--           fs->sb.s_inodes_per_group);
-+           fs->sb->s_blocks_per_group, fs->sb->s_frags_per_group,
-+           fs->sb->s_inodes_per_group);
-       printf("Size of inode table: %d blocks\n",
--              (int)(fs->sb.s_inodes_per_group * sizeof(inode) / BLOCKSIZE));
-+              (int)(fs->sb->s_inodes_per_group * sizeof(inode) / BLOCKSIZE));
-       for (i = 0; i < GRP_NBGROUPS(fs); i++) {
-               printf("Group No: %d\n", i+1);
-+              gd = get_gd(fs, i, &gi);
-               printf("block bitmap: block %d,inode bitmap: block %d, inode table: block %d\n",
--                   fs->gd[i].bg_block_bitmap, fs->gd[i].bg_inode_bitmap,
--                   fs->gd[i].bg_inode_table);
-+                   gd->bg_block_bitmap,
-+                   gd->bg_inode_bitmap,
-+                   gd->bg_inode_table);
-               printf("block bitmap allocation:\n");
--              print_bm(GRP_GET_GROUP_BBM(fs, i),fs->sb.s_blocks_per_group);
-+              print_bm(GRP_GET_GROUP_BBM(fs, gd, &bi),fs->sb->s_blocks_per_group);
-+              GRP_PUT_GROUP_BBM(bi);
-               printf("inode bitmap allocation:\n");
--              ibm = GRP_GET_GROUP_IBM(fs, i);
--              print_bm(ibm, fs->sb.s_inodes_per_group);
--              for (i = 1; i <= fs->sb.s_inodes_per_group; i++)
-+              ibm = GRP_GET_GROUP_IBM(fs, gd, &bi);
-+              print_bm(ibm, fs->sb->s_inodes_per_group);
-+              for (i = 1; i <= fs->sb->s_inodes_per_group; i++)
-                       if (allocated(ibm, i))
-                               print_inode(fs, i);
-+              GRP_PUT_GROUP_IBM(bi);
-+              put_gd(gi);
-       }
- }
- static void
--dump_fs(filesystem *fs, FILE * fh, int swapit)
-+finish_fs(filesystem *fs)
- {
--      uint32 nbblocks = fs->sb.s_blocks_count;
--      fs->sb.s_reserved[200] = 0;
--      if(swapit)
--              swap_goodfs(fs);
--      if(fwrite(fs, BLOCKSIZE, nbblocks, fh) < nbblocks)
--              perror_msg_and_die("output filesystem image");
--      if(swapit)
--              swap_badfs(fs);
-+      if (cache_flush(&fs->inodes))
-+              error_msg_and_die("entry mismatch on inode cache flush");
-+      if (cache_flush(&fs->blkmaps))
-+              error_msg_and_die("entry mismatch on blockmap cache flush");
-+      if (cache_flush(&fs->gds))
-+              error_msg_and_die("entry mismatch on gd cache flush");
-+      if (cache_flush(&fs->blks))
-+              error_msg_and_die("entry mismatch on block cache flush");
-+      if(fs->swapit)
-+              swap_sb(fs->sb);
-+      if (fseek(fs->f, SUPERBLOCK_OFFSET, SEEK_SET))
-+              perror_msg_and_die("fseek");
-+      if(fwrite(fs->sb, SUPERBLOCK_SIZE, 1, fs->f) != 1)
-+              perror_msg_and_die("output filesystem superblock");
-+      if(fs->swapit)
-+              swap_sb(fs->sb);
- }
- static void
-@@ -2419,10 +3146,12 @@
-       "  -x, --starting-image <image>\n"
-       "  -d, --root <directory>\n"
-       "  -D, --devtable <file>\n"
-+      "  -B, --block-size <bytes>\n"
-       "  -b, --size-in-blocks <blocks>\n"
-       "  -i, --bytes-per-inode <bytes per inode>\n"
-       "  -N, --number-of-inodes <number of inodes>\n"
-       "  -m, --reserved-percentage <percentage of blocks to reserve>\n"
-+      "  -o, --creator-os <os>      'linux' (default), 'hurd', 'freebsd' or number.\n"
-       "  -g, --block-map <path>     Generate a block map file for this path.\n"
-       "  -e, --fill-value <value>   Fill unallocated blocks with value.\n"
-       "  -z, --allow-holes          Allow files with holes.\n"
-@@ -2444,15 +3173,34 @@
- extern char* optarg;
- extern int optind, opterr, optopt;
-+// parse the value for -o <os>
-+int
-+lookup_creator_os(const char *name)
-+{
-+        if (isdigit (*name))
-+                return atoi(name);
-+        else if (strcasecmp(name, "linux") == 0)
-+                return EXT2_OS_LINUX;
-+        else if (strcasecmp(name, "GNU") == 0 || strcasecmp(name, "hurd") == 0)
-+                return EXT2_OS_HURD;
-+        else if (strcasecmp(name, "freebsd") == 0)
-+                return EXT2_OS_FREEBSD;
-+        else if (strcasecmp(name, "lites") == 0)
-+                return EXT2_OS_LITES;
-+        else
-+                return EXT2_OS_LINUX;
-+}
-+
- int
- main(int argc, char **argv)
- {
--      int nbblocks = -1;
-+      long long nbblocks = -1;
-       int nbinodes = -1;
-       int nbresrvd = -1;
-       float bytes_per_inode = -1;
-       float reserved_frac = -1;
-       int fs_timestamp = -1;
-+      int creator_os = CREATOR_OS;
-       char * fsout = "-";
-       char * fsin = 0;
-       char * dopt[MAX_DOPT];
-@@ -2466,6 +3214,7 @@
-       int squash_perms = 0;
-       uint16 endian = 1;
-       int bigendian = !*(char*)&endian;
-+      char *volumelabel = NULL;
-       filesystem *fs;
-       int i;
-       int c;
-@@ -2476,13 +3225,16 @@
-         { "starting-image",   required_argument,      NULL, 'x' },
-         { "root",             required_argument,      NULL, 'd' },
-         { "devtable",         required_argument,      NULL, 'D' },
-+        { "block-size",       required_argument,      NULL, 'B' },
-         { "size-in-blocks",   required_argument,      NULL, 'b' },
-         { "bytes-per-inode",  required_argument,      NULL, 'i' },
-         { "number-of-inodes", required_argument,      NULL, 'N' },
-+        { "volume-label",     required_argument,      NULL, 'L' },
-         { "reserved-percentage", required_argument,   NULL, 'm' },
-+        { "creator-os",       required_argument,      NULL, 'o' },
-         { "block-map",        required_argument,      NULL, 'g' },
-         { "fill-value",       required_argument,      NULL, 'e' },
--        { "allow-holes",      no_argument,            NULL, 'z' },
-+        { "allow-holes",      no_argument,            NULL, 'z' },
-         { "faketime",         no_argument,            NULL, 'f' },
-         { "squash",           no_argument,            NULL, 'q' },
-         { "squash-uids",      no_argument,            NULL, 'U' },
-@@ -2495,11 +3247,11 @@
-       app_name = argv[0];
--      while((c = getopt_long(argc, argv, "x:d:D:b:i:N:m:g:e:zfqUPhVv", longopts, NULL)) != EOF) {
-+      while((c = getopt_long(argc, argv, "x:d:D:B:b:i:N:L:m:o:g:e:zfqUPhVv", longopts, NULL)) != EOF) {
- #else
-       app_name = argv[0];
--      while((c = getopt(argc, argv,      "x:d:D:b:i:N:m:g:e:zfqUPhVv")) != EOF) {
-+      while((c = getopt(argc, argv,      "x:d:D:B:b:i:N:L:m:o:g:e:zfqUPhVv")) != EOF) {
- #endif /* HAVE_GETOPT_LONG */
-               switch(c)
-               {
-@@ -2510,6 +3262,9 @@
-                       case 'D':
-                               dopt[didx++] = optarg;
-                               break;
-+                      case 'B':
-+                              blocksize = SI_atof(optarg);
-+                              break;
-                       case 'b':
-                               nbblocks = SI_atof(optarg);
-                               break;
-@@ -2519,9 +3274,15 @@
-                       case 'N':
-                               nbinodes = SI_atof(optarg);
-                               break;
-+                      case 'L':
-+                              volumelabel = optarg;
-+                              break;
-                       case 'm':
-                               reserved_frac = SI_atof(optarg) / 100;
-                               break;
-+                      case 'o':
-+                              creator_os = lookup_creator_os(optarg);
-+                              break;
-                       case 'g':
-                               gopt[gidx++] = optarg;
-                               break;
-@@ -2565,21 +3326,21 @@
-               error_msg_and_die("Not enough arguments. Try --help or else see the man page.");
-       fsout = argv[optind];
--      hdlinks.hdl = (struct hdlink_s *)malloc(hdlink_cnt * sizeof(struct hdlink_s));
--      if (!hdlinks.hdl)
--              error_msg_and_die("Not enough memory");
--      hdlinks.count = 0 ;
-+      if(blocksize != 1024 && blocksize != 2048 && blocksize != 4096)
-+              error_msg_and_die("Valid block sizes: 1024, 2048 or 4096.");
-+      if(creator_os < 0)
-+              error_msg_and_die("Creator OS unknown.");
-       if(fsin)
-       {
-               if(strcmp(fsin, "-"))
-               {
-                       FILE * fh = xfopen(fsin, "rb");
--                      fs = load_fs(fh, bigendian);
-+                      fs = load_fs(fh, bigendian, fsout);
-                       fclose(fh);
-               }
-               else
--                      fs = load_fs(stdin, bigendian);
-+                      fs = load_fs(stdin, bigendian, fsout);
-       }
-       else
-       {
-@@ -2609,16 +3370,29 @@
-               }
-               if(fs_timestamp == -1)
-                       fs_timestamp = time(NULL);
--              fs = init_fs(nbblocks, nbinodes, nbresrvd, holes, fs_timestamp);
-+              fs = init_fs(nbblocks, nbinodes, nbresrvd, holes,
-+                           fs_timestamp, creator_os, bigendian, fsout);
-       }
-+      if (volumelabel != NULL)
-+              strncpy((char *)fs->sb->s_volume_name, volumelabel,
-+                      sizeof(fs->sb->s_volume_name));
-       
-       populate_fs(fs, dopt, didx, squash_uids, squash_perms, fs_timestamp, NULL);
-       if(emptyval) {
-               uint32 b;
--              for(b = 1; b < fs->sb.s_blocks_count; b++)
--                      if(!allocated(GRP_GET_BLOCK_BITMAP(fs,b),GRP_BBM_OFFSET(fs,b)))
--                              memset(get_blk(fs, b), emptyval, BLOCKSIZE);
-+              for(b = 1; b < fs->sb->s_blocks_count; b++) {
-+                      blk_info *bi;
-+                      gd_info *gi;
-+                      if(!allocated(GRP_GET_BLOCK_BITMAP(fs,b,&bi,&gi),
-+                                    GRP_BBM_OFFSET(fs,b))) {
-+                              blk_info *bi2;
-+                              memset(get_blk(fs, b, &bi2), emptyval,
-+                                     BLOCKSIZE);
-+                              put_blk(bi2);
-+                      }
-+                      GRP_PUT_BLOCK_BITMAP(bi,gi);
-+              }
-       }
-       if(verbose)
-               print_fs(fs);
-@@ -2628,24 +3402,22 @@
-               char fname[MAX_FILENAME];
-               char *p;
-               FILE *fh;
-+              nod_info *ni;
-               if(!(nod = find_path(fs, EXT2_ROOT_INO, gopt[i])))
-                       error_msg_and_die("path %s not found in filesystem", gopt[i]);
-               while((p = strchr(gopt[i], '/')))
-                       *p = '_';
-               SNPRINTF(fname, MAX_FILENAME-1, "%s.blk", gopt[i]);
-               fh = xfopen(fname, "wb");
--              fprintf(fh, "%d:", get_nod(fs, nod)->i_size);
-+              fprintf(fh, "%d:", get_nod(fs, nod, &ni)->i_size);
-+              put_nod(ni);
-               flist_blocks(fs, nod, fh);
-               fclose(fh);
-       }
--      if(strcmp(fsout, "-"))
--      {
--              FILE * fh = xfopen(fsout, "wb");
--              dump_fs(fs, fh, bigendian);
--              fclose(fh);
--      }
--      else
--              dump_fs(fs, stdout, bigendian);
-+      finish_fs(fs);
-+      if(strcmp(fsout, "-") == 0)
-+              copy_file(fs, stdout, fs->f, fs->sb->s_blocks_count);
-+
-       free_fs(fs);
-       return 0;
- }
-Index: genext2fs-1.4.1/cache.h
-===================================================================
---- /dev/null
-+++ genext2fs-1.4.1/cache.h
-@@ -0,0 +1,128 @@
-+#ifndef __CACHE_H__
-+#define __CACHE_H__
-+
-+#include "list.h"
-+
-+#define CACHE_LISTS 256
-+
-+typedef struct
-+{
-+    list_elem link;
-+    list_elem lru_link;
-+} cache_link;
-+
-+typedef struct
-+{
-+    /* LRU list holds unused items */
-+    unsigned int lru_entries;
-+    list_elem lru_list;
-+    unsigned int max_free_entries;
-+
-+    unsigned int entries;
-+    list_elem lists[CACHE_LISTS];
-+    unsigned int (*elem_val)(cache_link *elem);
-+    void (*freed)(cache_link *elem);
-+} listcache;
-+
-+static inline void
-+cache_add(listcache *c, cache_link *elem)
-+{
-+    unsigned int hash = c->elem_val(elem) % CACHE_LISTS;
-+    int delcount = c->lru_entries - c->max_free_entries;
-+
-+    if (delcount > 0) {
-+        /* Delete some unused items. */
-+        list_elem *lru, *next;
-+        cache_link *l;
-+        list_for_each_elem_safe(&c->lru_list, lru, next) {
-+            l = container_of(lru, cache_link, lru_link);
-+            list_del(lru);
-+            list_del(&l->link);
-+            c->entries--;
-+            c->lru_entries--;
-+            c->freed(l);
-+            delcount--;
-+            if (delcount <= 0)
-+                break;
-+        }
-+    }
-+
-+    c->entries++;
-+    list_item_init(&elem->lru_link); /* Mark it not in the LRU list */
-+    list_add_after(&c->lists[hash], &elem->link);
-+}
-+
-+static inline void
-+cache_item_set_unused(listcache *c, cache_link *elem)
-+{
-+    list_add_before(&c->lru_list, &elem->lru_link);
-+    c->lru_entries++;
-+}
-+
-+static inline cache_link *
-+cache_find(listcache *c, unsigned int val)
-+{
-+    unsigned int hash = val % CACHE_LISTS;
-+    list_elem *elem;
-+
-+    list_for_each_elem(&c->lists[hash], elem) {
-+        cache_link *l = container_of(elem, cache_link, link);
-+        if (c->elem_val(l) == val) {
-+            if (!list_empty(&l->lru_link)) {
-+                /* It's in the unused list, remove it. */
-+                list_del(&l->lru_link);
-+                list_item_init(&l->lru_link);
-+                c->lru_entries--;
-+            }
-+            return l;
-+        }
-+    }
-+    return NULL;
-+}
-+
-+static inline int
-+cache_flush(listcache *c)
-+{
-+    list_elem *elem, *next;
-+    cache_link *l;
-+    int i;
-+
-+    list_for_each_elem_safe(&c->lru_list, elem, next) {
-+        l = container_of(elem, cache_link, lru_link);
-+        list_del(elem);
-+        list_del(&l->link);
-+        c->entries--;
-+        c->lru_entries--;
-+        c->freed(l);
-+    }
-+
-+    for (i = 0; i < CACHE_LISTS; i++) {
-+        list_for_each_elem_safe(&c->lists[i], elem, next) {
-+            l = container_of(elem, cache_link, link);
-+            list_del(&l->link);
-+            c->entries--;
-+            c->freed(l);
-+        }
-+    }
-+
-+    return c->entries || c->lru_entries;
-+}
-+
-+static inline void
-+cache_init(listcache *c, unsigned int max_free_entries,
-+       unsigned int (*elem_val)(cache_link *elem),
-+       void (*freed)(cache_link *elem))
-+{
-+    int i;
-+
-+    c->entries = 0;
-+    c->lru_entries = 0;
-+    c->max_free_entries = max_free_entries;
-+    list_init(&c->lru_list);
-+    for (i = 0; i < CACHE_LISTS; i++)
-+        list_init(&c->lists[i]);
-+    c->elem_val = elem_val;
-+    c->freed = freed;
-+}
-+
-+#endif /* __CACHE_H__ */
-Index: genext2fs-1.4.1/list.h
-===================================================================
---- /dev/null
-+++ genext2fs-1.4.1/list.h
-@@ -0,0 +1,78 @@
-+#ifndef __LIST_H__
-+#define __LIST_H__
-+
-+#if STDC_HEADERS
-+# include <stdlib.h>
-+# include <stddef.h>
-+#else
-+# if HAVE_STDLIB_H
-+#  include <stdlib.h>
-+# endif
-+# if HAVE_STDDEF_H
-+#  include <stddef.h>
-+# endif
-+#endif
-+
-+#ifndef offsetof
-+#define offsetof(st, m) \
-+     ((size_t) ( (char *)&((st *)(0))->m - (char *)0 ))
-+#endif
-+
-+#define container_of(ptr, type, member) ({ \
-+                const typeof( ((type *)0)->member ) *__mptr = (ptr); \
-+                (type *)( (char *)__mptr - offsetof(type,member) );})
-+
-+typedef struct list_elem
-+{
-+    struct list_elem *next;
-+    struct list_elem *prev;
-+} list_elem;
-+
-+static inline void list_init(list_elem *list)
-+{
-+    list->next = list;
-+    list->prev = list;
-+}
-+
-+static inline void list_add_after(list_elem *pos, list_elem *elem)
-+{
-+    elem->next = pos->next;
-+    elem->prev = pos;
-+    pos->next->prev = elem;
-+    pos->next = elem;
-+}
-+
-+static inline void list_add_before(list_elem *pos, list_elem *elem)
-+{
-+    elem->prev = pos->prev;
-+    elem->next = pos;
-+    pos->prev->next = elem;
-+    pos->prev = elem;
-+}
-+
-+static inline void list_del(list_elem *elem)
-+{
-+    elem->next->prev = elem->prev;
-+    elem->prev->next = elem->next;
-+}
-+
-+static inline void list_item_init(list_elem *elem)
-+{
-+    elem->next = elem;
-+    elem->prev = elem;
-+}
-+
-+static inline int list_empty(list_elem *elem)
-+{
-+    return elem->next == elem;
-+}
-+
-+#define list_for_each_elem(list, curr)            \
-+    for ((curr) = (list)->next; (curr) != (list); (curr) = (curr)->next)
-+
-+#define list_for_each_elem_safe(list, curr, next)    \
-+    for ((curr) = (list)->next, (next) = (curr)->next;    \
-+         (curr) != (list);                    \
-+         (curr) = (next), (next) = (curr)->next)
-+
-+#endif /* __LIST_H__ */
diff --git a/package/genpart/0001-fix-return-code.patch b/package/genpart/0001-fix-return-code.patch
new file mode 100644 (file)
index 0000000..ec18c82
--- /dev/null
@@ -0,0 +1,25 @@
+genpart: return 0 if partition writen OK, with no do_magic
+
+If do_magic is false, we don't won't write the 0xaa55 magic.
+However, if we succesfully wrote the partition entry, we still
+want to return 0 to indicate success.
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+Cc: Robert Schwebel <r.schwebel@pengutronix.de>
+
+--
+Patch sent upstream, but no mailing list.
+Status: accepted upstream, not yet released.
+
+diff -durN host-genpart-1.0.2.orig/src/genpart.c host-genpart-1.0.2/src/genpart.c
+--- host-genpart-1.0.2.orig/src/genpart.c      2009-12-20 21:54:56.000000000 +0100
++++ host-genpart-1.0.2/src/genpart.c   2013-01-22 23:13:24.109752579 +0100
+@@ -92,6 +92,8 @@
+               if (do_magic) {
+                       if (fwrite(&magic, 2, 1, stdout) > 0)
+                               rc=0;
++              } else {
++                      rc=0;
+               }
+       }
+       return rc;
diff --git a/package/genpart/genpart-fix-return-code.patch b/package/genpart/genpart-fix-return-code.patch
deleted file mode 100644 (file)
index ec18c82..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-genpart: return 0 if partition writen OK, with no do_magic
-
-If do_magic is false, we don't won't write the 0xaa55 magic.
-However, if we succesfully wrote the partition entry, we still
-want to return 0 to indicate success.
-
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
-Cc: Robert Schwebel <r.schwebel@pengutronix.de>
-
---
-Patch sent upstream, but no mailing list.
-Status: accepted upstream, not yet released.
-
-diff -durN host-genpart-1.0.2.orig/src/genpart.c host-genpart-1.0.2/src/genpart.c
---- host-genpart-1.0.2.orig/src/genpart.c      2009-12-20 21:54:56.000000000 +0100
-+++ host-genpart-1.0.2/src/genpart.c   2013-01-22 23:13:24.109752579 +0100
-@@ -92,6 +92,8 @@
-               if (do_magic) {
-                       if (fwrite(&magic, 2, 1, stdout) > 0)
-                               rc=0;
-+              } else {
-+                      rc=0;
-               }
-       }
-       return rc;
diff --git a/package/genromfs/0001-build-system.patch b/package/genromfs/0001-build-system.patch
new file mode 100644 (file)
index 0000000..827fe75
--- /dev/null
@@ -0,0 +1,26 @@
+---
+ Makefile |    4 +---
+ 1 file changed, 1 insertion(+), 3 deletions(-)
+
+Index: genromfs-0.5.2/Makefile
+===================================================================
+--- genromfs-0.5.2.orig/Makefile
++++ genromfs-0.5.2/Makefile
+@@ -6,8 +6,6 @@
+ PACKAGE = genromfs
+ VERSION = 0.5.2
+ CC = gcc
+-CFLAGS = -O2 -Wall -DVERSION=\"$(VERSION)\"#-g#
+-LDFLAGS = -s#-g
+ DISTDIR = $(PACKAGE)-$(VERSION)
+@@ -24,7 +22,7 @@
+       $(CC) $(LDFLAGS) genromfs.o -o genromfs
+ .c.o:
+-      $(CC) $(CFLAGS) $< -c -o $@
++      $(CC) $(CFLAGS) -DVERSION=\"$(VERSION)\" $< -c -o $@
+ clean:
+       rm -f genromfs *.o
diff --git a/package/genromfs/genromfs-0.5.2-build-system.patch b/package/genromfs/genromfs-0.5.2-build-system.patch
deleted file mode 100644 (file)
index 827fe75..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
----
- Makefile |    4 +---
- 1 file changed, 1 insertion(+), 3 deletions(-)
-
-Index: genromfs-0.5.2/Makefile
-===================================================================
---- genromfs-0.5.2.orig/Makefile
-+++ genromfs-0.5.2/Makefile
-@@ -6,8 +6,6 @@
- PACKAGE = genromfs
- VERSION = 0.5.2
- CC = gcc
--CFLAGS = -O2 -Wall -DVERSION=\"$(VERSION)\"#-g#
--LDFLAGS = -s#-g
- DISTDIR = $(PACKAGE)-$(VERSION)
-@@ -24,7 +22,7 @@
-       $(CC) $(LDFLAGS) genromfs.o -o genromfs
- .c.o:
--      $(CC) $(CFLAGS) $< -c -o $@
-+      $(CC) $(CFLAGS) -DVERSION=\"$(VERSION)\" $< -c -o $@
- clean:
-       rm -f genromfs *.o
diff --git a/package/gettext/0001-error_print_progname.patch b/package/gettext/0001-error_print_progname.patch
new file mode 100644 (file)
index 0000000..189d28b
--- /dev/null
@@ -0,0 +1,14 @@
+--- gettext-0.16.1.oorig/gettext-tools/gnulib-lib/error.h      2006-11-27 18:14:50.000000000 +0100
++++ gettext-0.16.1/gettext-tools/gnulib-lib/error.h    2007-06-20 13:29:32.000000000 +0200
+@@ -50,7 +50,10 @@ extern void error_at_line (int __status,
+ /* If NULL, error will flush stdout, then print on stderr the program
+    name, a colon and a space.  Otherwise, error will call this
+    function without parameters instead.  */
+-extern DLL_VARIABLE void (*error_print_progname) (void);
++#ifndef __UCLIBC__
++extern DLL_VARIABLE
++#endif
++void (*error_print_progname) (void);
+ /* This variable is incremented each time `error' is called.  */
+ extern DLL_VARIABLE unsigned int error_message_count;
diff --git a/package/gettext/gettext-01-error_print_progname.patch b/package/gettext/gettext-01-error_print_progname.patch
deleted file mode 100644 (file)
index 189d28b..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
---- gettext-0.16.1.oorig/gettext-tools/gnulib-lib/error.h      2006-11-27 18:14:50.000000000 +0100
-+++ gettext-0.16.1/gettext-tools/gnulib-lib/error.h    2007-06-20 13:29:32.000000000 +0200
-@@ -50,7 +50,10 @@ extern void error_at_line (int __status,
- /* If NULL, error will flush stdout, then print on stderr the program
-    name, a colon and a space.  Otherwise, error will call this
-    function without parameters instead.  */
--extern DLL_VARIABLE void (*error_print_progname) (void);
-+#ifndef __UCLIBC__
-+extern DLL_VARIABLE
-+#endif
-+void (*error_print_progname) (void);
- /* This variable is incremented each time `error' is called.  */
- extern DLL_VARIABLE unsigned int error_message_count;
diff --git a/package/giblib/0001-fix-imlib2-detection.patch b/package/giblib/0001-fix-imlib2-detection.patch
new file mode 100644 (file)
index 0000000..2323107
--- /dev/null
@@ -0,0 +1,127 @@
+configure.ac + Makefile.am: fix the imlib2 detection
+
+Although imlib2 is correctly checked for, the variables used to get
+the CFLAGS and LIBS are wrong (perhaps a remnant of the pre-imlib2
+era, when giblib was using imlib).
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+diff --git a/configure.ac b/configure.ac
+index 6807d86..c8874f0 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -18,16 +18,10 @@ AM_MAINTAINER_MODE
+ AM_WITH_DMALLOC
+ AC_PATH_GENERIC(imlib2, 1.0.0, [
+-  AC_SUBST(IMLIB_LIBS)
+-  AC_SUBST(IMLIB_CFLAGS) ],
++  AC_SUBST(IMLIB2_LIBS)
++  AC_SUBST(IMLIB2_CFLAGS) ],
+   AC_MSG_ERROR(Cannot find imlib2: Is imlib2-config in the path?) )
+-dnl the above doesn't work for some reason :/
+-IMLIB_LIBS=`imlib2-config --libs`
+-IMLIB_CFLAGS=`imlib2-config --cflags`
+-AC_SUBST(IMLIB_LIBS)
+-AC_SUBST(IMLIB_CFLAGS)
+-
+ LIBS="$LIBS -lm"
+ CFLAGS="$CFLAGS -Wall"
+@@ -48,7 +42,7 @@ $PACKAGE $VERSION
+ Configuration:
+ --------------
+-Imlib2 libs:  $IMLIB_LIBS
+-Imlib2 cflags:  $IMLIB_CFLAGS
++Imlib2 libs:  $IMLIB2_LIBS
++Imlib2 cflags:  $IMLIB2_CFLAGS
+ CFLAGS:                       $CFLAGS
+ "
+diff --git a/configure.in b/configure.in
+index 432cb16..6999095 100644
+--- a/configure.in
++++ b/configure.in
+@@ -17,16 +17,10 @@ AM_MAINTAINER_MODE
+ AM_WITH_DMALLOC
+ AC_PATH_GENERIC(imlib2, 1.0.0, [
+-  AC_SUBST(IMLIB_LIBS)
+-  AC_SUBST(IMLIB_CFLAGS) ],
++  AC_SUBST(IMLIB2_LIBS)
++  AC_SUBST(IMLIB2_CFLAGS) ],
+   AC_MSG_ERROR(Cannot find imlib2: Is imlib2-config in the path?) )
+-dnl the above doesn't work for some reason :/
+-IMLIB_LIBS=`imlib2-config --libs`
+-IMLIB_CFLAGS=`imlib2-config --cflags`
+-AC_SUBST(IMLIB_LIBS)
+-AC_SUBST(IMLIB_CFLAGS)
+-
+ LIBS="$LIBS -lm"
+ CFLAGS="$CFLAGS -Wall"
+@@ -45,7 +39,7 @@ $PACKAGE $VERSION
+ Configuration:
+ --------------
+-Imlib2 libs:  $IMLIB_LIBS
+-Imlib2 cflags:  $IMLIB_CFLAGS
++Imlib2 libs:  $IMLIB2_LIBS
++Imlib2 cflags:  $IMLIB2_CFLAGS
+ CFLAGS:                       $CFLAGS
+ "
+diff --git a/giblib-config.in b/giblib-config.in
+index f3a7db6..cef1620 100644
+--- a/giblib-config.in
++++ b/giblib-config.in
+@@ -42,11 +42,11 @@ while test $# -gt 0; do
+       if test @includedir@ != /usr/include ; then
+         includes=-I@includedir@
+       fi
+-      echo $includes -I$prefix/include/giblib @IMLIB_CFLAGS@
++      echo $includes -I$prefix/include/giblib @IMLIB2_CFLAGS@
+       ;;
+     --libs)
+       libdirs=-L@libdir@
+-      echo $libdirs -lgiblib @LDFLAGS@ @IMLIB_LIBS@
++      echo $libdirs -lgiblib @LDFLAGS@ @IMLIB2_LIBS@
+       ;;
+     *)
+       echo "${usage}" 1>&2
+diff --git a/giblib.pc.in b/giblib.pc.in
+index df520ae..783e6e1 100644
+--- a/giblib.pc.in
++++ b/giblib.pc.in
+@@ -6,6 +6,6 @@ includedir=@includedir@
+ Name: giblib
+ Description: wrapper library for imlib2, and other stuff
+ Version: @VERSION@
+-Libs: -L${libdir} -lgiblib @LDFLAGS@ @IMLIB_LIBS@
+-Cflags: -I${includedir} -I${includedir}/giblib @IMLIB_CFLAGS@
++Libs: -L${libdir} -lgiblib @LDFLAGS@ @IMLIB2_LIBS@
++Cflags: -I${includedir} -I${includedir}/giblib @IMLIB2_CFLAGS@
+diff --git a/giblib/Makefile.am b/giblib/Makefile.am
+index d1edc09..49d8ac4 100644
+--- a/giblib/Makefile.am
++++ b/giblib/Makefile.am
+@@ -3,7 +3,7 @@ MAINTAINERCLEANFILES = Makefile.in
+ INCLUDES = \
+ -I. -I$(top_srcdir) \
+--DPREFIX=\""$(prefix)"\" @IMLIB_CFLAGS@
++-DPREFIX=\""$(prefix)"\" @IMLIB2_CFLAGS@
+ lib_LTLIBRARIES = libgiblib.la
+@@ -24,7 +24,7 @@ libgiblib_la_SOURCES = \
+     gib_utils.c gib_utils.h \
+       gib_queue.c gib_queue.h
+-libgiblib_la_LIBADD = @IMLIB_LIBS@
++libgiblib_la_LIBADD = @IMLIB2_LIBS@
+ libgiblib_la_DEPENDENCIES = giblib_config.h
+ libgiblib_la_LDFLAGS = -version-info 1:6:0
diff --git a/package/giblib/giblib-fix-imlib2-detection.patch b/package/giblib/giblib-fix-imlib2-detection.patch
deleted file mode 100644 (file)
index 2323107..0000000
+++ /dev/null
@@ -1,127 +0,0 @@
-configure.ac + Makefile.am: fix the imlib2 detection
-
-Although imlib2 is correctly checked for, the variables used to get
-the CFLAGS and LIBS are wrong (perhaps a remnant of the pre-imlib2
-era, when giblib was using imlib).
-
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
-
-diff --git a/configure.ac b/configure.ac
-index 6807d86..c8874f0 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -18,16 +18,10 @@ AM_MAINTAINER_MODE
- AM_WITH_DMALLOC
- AC_PATH_GENERIC(imlib2, 1.0.0, [
--  AC_SUBST(IMLIB_LIBS)
--  AC_SUBST(IMLIB_CFLAGS) ],
-+  AC_SUBST(IMLIB2_LIBS)
-+  AC_SUBST(IMLIB2_CFLAGS) ],
-   AC_MSG_ERROR(Cannot find imlib2: Is imlib2-config in the path?) )
--dnl the above doesn't work for some reason :/
--IMLIB_LIBS=`imlib2-config --libs`
--IMLIB_CFLAGS=`imlib2-config --cflags`
--AC_SUBST(IMLIB_LIBS)
--AC_SUBST(IMLIB_CFLAGS)
--
- LIBS="$LIBS -lm"
- CFLAGS="$CFLAGS -Wall"
-@@ -48,7 +42,7 @@ $PACKAGE $VERSION
- Configuration:
- --------------
--Imlib2 libs:  $IMLIB_LIBS
--Imlib2 cflags:  $IMLIB_CFLAGS
-+Imlib2 libs:  $IMLIB2_LIBS
-+Imlib2 cflags:  $IMLIB2_CFLAGS
- CFLAGS:                       $CFLAGS
- "
-diff --git a/configure.in b/configure.in
-index 432cb16..6999095 100644
---- a/configure.in
-+++ b/configure.in
-@@ -17,16 +17,10 @@ AM_MAINTAINER_MODE
- AM_WITH_DMALLOC
- AC_PATH_GENERIC(imlib2, 1.0.0, [
--  AC_SUBST(IMLIB_LIBS)
--  AC_SUBST(IMLIB_CFLAGS) ],
-+  AC_SUBST(IMLIB2_LIBS)
-+  AC_SUBST(IMLIB2_CFLAGS) ],
-   AC_MSG_ERROR(Cannot find imlib2: Is imlib2-config in the path?) )
--dnl the above doesn't work for some reason :/
--IMLIB_LIBS=`imlib2-config --libs`
--IMLIB_CFLAGS=`imlib2-config --cflags`
--AC_SUBST(IMLIB_LIBS)
--AC_SUBST(IMLIB_CFLAGS)
--
- LIBS="$LIBS -lm"
- CFLAGS="$CFLAGS -Wall"
-@@ -45,7 +39,7 @@ $PACKAGE $VERSION
- Configuration:
- --------------
--Imlib2 libs:  $IMLIB_LIBS
--Imlib2 cflags:  $IMLIB_CFLAGS
-+Imlib2 libs:  $IMLIB2_LIBS
-+Imlib2 cflags:  $IMLIB2_CFLAGS
- CFLAGS:                       $CFLAGS
- "
-diff --git a/giblib-config.in b/giblib-config.in
-index f3a7db6..cef1620 100644
---- a/giblib-config.in
-+++ b/giblib-config.in
-@@ -42,11 +42,11 @@ while test $# -gt 0; do
-       if test @includedir@ != /usr/include ; then
-         includes=-I@includedir@
-       fi
--      echo $includes -I$prefix/include/giblib @IMLIB_CFLAGS@
-+      echo $includes -I$prefix/include/giblib @IMLIB2_CFLAGS@
-       ;;
-     --libs)
-       libdirs=-L@libdir@
--      echo $libdirs -lgiblib @LDFLAGS@ @IMLIB_LIBS@
-+      echo $libdirs -lgiblib @LDFLAGS@ @IMLIB2_LIBS@
-       ;;
-     *)
-       echo "${usage}" 1>&2
-diff --git a/giblib.pc.in b/giblib.pc.in
-index df520ae..783e6e1 100644
---- a/giblib.pc.in
-+++ b/giblib.pc.in
-@@ -6,6 +6,6 @@ includedir=@includedir@
- Name: giblib
- Description: wrapper library for imlib2, and other stuff
- Version: @VERSION@
--Libs: -L${libdir} -lgiblib @LDFLAGS@ @IMLIB_LIBS@
--Cflags: -I${includedir} -I${includedir}/giblib @IMLIB_CFLAGS@
-+Libs: -L${libdir} -lgiblib @LDFLAGS@ @IMLIB2_LIBS@
-+Cflags: -I${includedir} -I${includedir}/giblib @IMLIB2_CFLAGS@
-diff --git a/giblib/Makefile.am b/giblib/Makefile.am
-index d1edc09..49d8ac4 100644
---- a/giblib/Makefile.am
-+++ b/giblib/Makefile.am
-@@ -3,7 +3,7 @@ MAINTAINERCLEANFILES = Makefile.in
- INCLUDES = \
- -I. -I$(top_srcdir) \
---DPREFIX=\""$(prefix)"\" @IMLIB_CFLAGS@
-+-DPREFIX=\""$(prefix)"\" @IMLIB2_CFLAGS@
- lib_LTLIBRARIES = libgiblib.la
-@@ -24,7 +24,7 @@ libgiblib_la_SOURCES = \
-     gib_utils.c gib_utils.h \
-       gib_queue.c gib_queue.h
--libgiblib_la_LIBADD = @IMLIB_LIBS@
-+libgiblib_la_LIBADD = @IMLIB2_LIBS@
- libgiblib_la_DEPENDENCIES = giblib_config.h
- libgiblib_la_LDFLAGS = -version-info 1:6:0
diff --git a/package/gmp/0001-arm-asm-conditional-on-no-thumb-1.patch b/package/gmp/0001-arm-asm-conditional-on-no-thumb-1.patch
new file mode 100644 (file)
index 0000000..eb678b0
--- /dev/null
@@ -0,0 +1,21 @@
+
+# HG changeset patch
+# User Torbjorn Granlund <tege@gmplib.org>
+# Date 1396035313 -3600
+# Node ID c56ea318eb6435bdd28dbfef657b2fe372134f1f
+# Parent  c6fe20ab62acc266ff5ad3629bef447bc43dcd1b
+Conditionalise ARM asm on !__thumb__.
+
+diff -r c6fe20ab62ac -r c56ea318eb64 mpn/generic/mod_1_1.c
+--- a/mpn/generic/mod_1_1.c    Wed Mar 26 12:58:33 2014 +0100
++++ b/mpn/generic/mod_1_1.c    Fri Mar 28 20:35:13 2014 +0100
+@@ -129,7 +129,7 @@
+            "%2" ((UDItype)(a0)), "r" ((UDItype)(b0)) __CLOBBER_CC)
+ #endif
+-#if defined (__arm__) && W_TYPE_SIZE == 32
++#if defined (__arm__) && !defined (__thumb__) && W_TYPE_SIZE == 32
+ #define add_mssaaaa(m, sh, sl, ah, al, bh, bl)                                \
+   __asm__ (  "adds    %2, %5, %6\n\t"                                 \
+            "adcs      %1, %3, %4\n\t"                                 \
+
diff --git a/package/gmp/0002-arm-asm-conditional-on-no-thumb-2.patch b/package/gmp/0002-arm-asm-conditional-on-no-thumb-2.patch
new file mode 100644 (file)
index 0000000..666cf58
--- /dev/null
@@ -0,0 +1,21 @@
+
+# HG changeset patch
+# User Torbjorn Granlund <tege@gmplib.org>
+# Date 1396602422 -7200
+# Node ID 676e2d0f0e4dd301a7066079d2c9326c25c34a40
+# Parent  0194a75b56b21a9196626430af86c5bd9110c42d
+Conditionalise ARM asm on !__thumb__.
+
+diff -r 0194a75b56b2 -r 676e2d0f0e4d mpn/generic/div_qr_1n_pi1.c
+--- a/mpn/generic/div_qr_1n_pi1.c      Thu Apr 03 23:58:51 2014 +0200
++++ b/mpn/generic/div_qr_1n_pi1.c      Fri Apr 04 11:07:02 2014 +0200
+@@ -130,7 +130,7 @@
+            "%2" ((UDItype)(a0)), "r" ((UDItype)(b0)) __CLOBBER_CC)
+ #endif
+-#if defined (__arm__) && W_TYPE_SIZE == 32
++#if defined (__arm__) && !defined (__thumb__) && W_TYPE_SIZE == 32
+ #define add_mssaaaa(m, sh, sl, ah, al, bh, bl)                                \
+   __asm__ (  "adds    %2, %5, %6\n\t"                                 \
+            "adcs      %1, %3, %4\n\t"                                 \
+
diff --git a/package/gmp/0003-powerpc-provide-default-bmod-to-mod-threshold-1.patch b/package/gmp/0003-powerpc-provide-default-bmod-to-mod-threshold-1.patch
new file mode 100644 (file)
index 0000000..76aa72f
--- /dev/null
@@ -0,0 +1,22 @@
+
+# HG changeset patch
+# User Torbjorn Granlund <tege@gmplib.org>
+# Date 1395835068 -3600
+# Node ID 4a6d258b467f661da0894cc60ecd060f2e3c67c7
+# Parent  301ce2788826a2d4d2725bd5cf01e998638db37a
+Provide default for BMOD_1_TO_MOD_1_THRESHOLD.
+
+diff -r 301ce2788826 -r 4a6d258b467f mpn/powerpc64/mode64/gcd_1.asm
+--- a/mpn/powerpc64/mode64/gcd_1.asm   Tue Mar 25 15:34:52 2014 +0100
++++ b/mpn/powerpc64/mode64/gcd_1.asm   Wed Mar 26 12:57:48 2014 +0100
+@@ -43,6 +43,9 @@
+ define(`n',     `r4')
+ define(`v0',    `r5')
++ifdef(`BMOD_1_TO_MOD_1_THRESHOLD',,
++  `define(`BMOD_1_TO_MOD_1_THRESHOLD',30)')
++
+ EXTERN_FUNC(mpn_mod_1)
+ EXTERN_FUNC(mpn_modexact_1c_odd)
+
diff --git a/package/gmp/gmp-01-arm-asm-conditional-on-no-thumb-1.patch b/package/gmp/gmp-01-arm-asm-conditional-on-no-thumb-1.patch
deleted file mode 100644 (file)
index eb678b0..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-
-# HG changeset patch
-# User Torbjorn Granlund <tege@gmplib.org>
-# Date 1396035313 -3600
-# Node ID c56ea318eb6435bdd28dbfef657b2fe372134f1f
-# Parent  c6fe20ab62acc266ff5ad3629bef447bc43dcd1b
-Conditionalise ARM asm on !__thumb__.
-
-diff -r c6fe20ab62ac -r c56ea318eb64 mpn/generic/mod_1_1.c
---- a/mpn/generic/mod_1_1.c    Wed Mar 26 12:58:33 2014 +0100
-+++ b/mpn/generic/mod_1_1.c    Fri Mar 28 20:35:13 2014 +0100
-@@ -129,7 +129,7 @@
-            "%2" ((UDItype)(a0)), "r" ((UDItype)(b0)) __CLOBBER_CC)
- #endif
--#if defined (__arm__) && W_TYPE_SIZE == 32
-+#if defined (__arm__) && !defined (__thumb__) && W_TYPE_SIZE == 32
- #define add_mssaaaa(m, sh, sl, ah, al, bh, bl)                                \
-   __asm__ (  "adds    %2, %5, %6\n\t"                                 \
-            "adcs      %1, %3, %4\n\t"                                 \
-
diff --git a/package/gmp/gmp-02-arm-asm-conditional-on-no-thumb-2.patch b/package/gmp/gmp-02-arm-asm-conditional-on-no-thumb-2.patch
deleted file mode 100644 (file)
index 666cf58..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-
-# HG changeset patch
-# User Torbjorn Granlund <tege@gmplib.org>
-# Date 1396602422 -7200
-# Node ID 676e2d0f0e4dd301a7066079d2c9326c25c34a40
-# Parent  0194a75b56b21a9196626430af86c5bd9110c42d
-Conditionalise ARM asm on !__thumb__.
-
-diff -r 0194a75b56b2 -r 676e2d0f0e4d mpn/generic/div_qr_1n_pi1.c
---- a/mpn/generic/div_qr_1n_pi1.c      Thu Apr 03 23:58:51 2014 +0200
-+++ b/mpn/generic/div_qr_1n_pi1.c      Fri Apr 04 11:07:02 2014 +0200
-@@ -130,7 +130,7 @@
-            "%2" ((UDItype)(a0)), "r" ((UDItype)(b0)) __CLOBBER_CC)
- #endif
--#if defined (__arm__) && W_TYPE_SIZE == 32
-+#if defined (__arm__) && !defined (__thumb__) && W_TYPE_SIZE == 32
- #define add_mssaaaa(m, sh, sl, ah, al, bh, bl)                                \
-   __asm__ (  "adds    %2, %5, %6\n\t"                                 \
-            "adcs      %1, %3, %4\n\t"                                 \
-
diff --git a/package/gmp/gmp-03-powerpc-provide-default-bmod-to-mod-threshold-1.patch b/package/gmp/gmp-03-powerpc-provide-default-bmod-to-mod-threshold-1.patch
deleted file mode 100644 (file)
index 76aa72f..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-
-# HG changeset patch
-# User Torbjorn Granlund <tege@gmplib.org>
-# Date 1395835068 -3600
-# Node ID 4a6d258b467f661da0894cc60ecd060f2e3c67c7
-# Parent  301ce2788826a2d4d2725bd5cf01e998638db37a
-Provide default for BMOD_1_TO_MOD_1_THRESHOLD.
-
-diff -r 301ce2788826 -r 4a6d258b467f mpn/powerpc64/mode64/gcd_1.asm
---- a/mpn/powerpc64/mode64/gcd_1.asm   Tue Mar 25 15:34:52 2014 +0100
-+++ b/mpn/powerpc64/mode64/gcd_1.asm   Wed Mar 26 12:57:48 2014 +0100
-@@ -43,6 +43,9 @@
- define(`n',     `r4')
- define(`v0',    `r5')
-+ifdef(`BMOD_1_TO_MOD_1_THRESHOLD',,
-+  `define(`BMOD_1_TO_MOD_1_THRESHOLD',30)')
-+
- EXTERN_FUNC(mpn_mod_1)
- EXTERN_FUNC(mpn_modexact_1c_odd)
-
diff --git a/package/gnuchess/0001-getline-conflicts.patch b/package/gnuchess/0001-getline-conflicts.patch
new file mode 100644 (file)
index 0000000..94add79
--- /dev/null
@@ -0,0 +1,48 @@
+This patch fixes a conflict between the C library getline() function
+and gnuchess getline() function.
+
+Patch borrowed from the gnuchess Debian package.
+
+Index: gnuchess-5.07/src/input.c
+===================================================================
+--- gnuchess-5.07.orig/src/input.c     2009-09-29 16:01:38.000000000 +0200
++++ gnuchess-5.07/src/input.c  2009-09-29 16:02:57.000000000 +0200
+@@ -127,7 +127,7 @@
+             (RealGameCnt+1)/2 + 1 );
+     }
+     pthread_mutex_lock(&input_mutex);
+-    getline(prompt);
++    get_line(prompt);
+     input_status = INPUT_AVAILABLE;
+     pthread_cond_signal(&input_cond);
+     pthread_mutex_unlock(&input_mutex);
+@@ -173,13 +173,13 @@
+ {
+ #ifdef HAVE_LIBREADLINE
+   if (isatty(STDIN_FILENO)) {
+-    getline = getline_readline;
++    get_line = getline_readline;
+     using_history();
+   } else {
+-    getline = getline_standard;
++    get_line = getline_standard;
+   }
+ #else
+-  getline = getline_standard;
++  get_line = getline_standard;
+ #endif
+   /* Start input thread */
+   pthread_create(&input_thread, NULL, input_func, NULL);
+Index: gnuchess-5.07/src/common.h
+===================================================================
+--- gnuchess-5.07.orig/src/common.h    2009-09-29 16:06:17.000000000 +0200
++++ gnuchess-5.07/src/common.h 2009-09-29 16:06:40.000000000 +0200
+@@ -745,7 +745,7 @@
+  * Input routine, initialized to one of the specific
+  * input routines. The given argument is the prompt.
+  */
+-void (*getline) (char *);
++void (*get_line) (char *);
+ #define MAXSTR 128
+ extern char inputstr[MAXSTR];
diff --git a/package/gnuchess/0002-misc-fixes.patch b/package/gnuchess/0002-misc-fixes.patch
new file mode 100644 (file)
index 0000000..18979b6
--- /dev/null
@@ -0,0 +1,11 @@
+--- a/src/input.c      2003-07-01 13:06:43.000000000 -0400
++++ a/src/input.c      2008-02-13 12:24:43.000000000 -0500
+@@ -92,7 +92,7 @@ void getline_standard(char *p)
+   fgets(inputstr, MAXSTR, stdin);
+ }
+-static pthread_t input_thread;
++pthread_t input_thread;
+ /* Mutex and condition variable for thread communication */
diff --git a/package/gnuchess/gnuchess-5.07-getline-conflicts.patch b/package/gnuchess/gnuchess-5.07-getline-conflicts.patch
deleted file mode 100644 (file)
index 94add79..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-This patch fixes a conflict between the C library getline() function
-and gnuchess getline() function.
-
-Patch borrowed from the gnuchess Debian package.
-
-Index: gnuchess-5.07/src/input.c
-===================================================================
---- gnuchess-5.07.orig/src/input.c     2009-09-29 16:01:38.000000000 +0200
-+++ gnuchess-5.07/src/input.c  2009-09-29 16:02:57.000000000 +0200
-@@ -127,7 +127,7 @@
-             (RealGameCnt+1)/2 + 1 );
-     }
-     pthread_mutex_lock(&input_mutex);
--    getline(prompt);
-+    get_line(prompt);
-     input_status = INPUT_AVAILABLE;
-     pthread_cond_signal(&input_cond);
-     pthread_mutex_unlock(&input_mutex);
-@@ -173,13 +173,13 @@
- {
- #ifdef HAVE_LIBREADLINE
-   if (isatty(STDIN_FILENO)) {
--    getline = getline_readline;
-+    get_line = getline_readline;
-     using_history();
-   } else {
--    getline = getline_standard;
-+    get_line = getline_standard;
-   }
- #else
--  getline = getline_standard;
-+  get_line = getline_standard;
- #endif
-   /* Start input thread */
-   pthread_create(&input_thread, NULL, input_func, NULL);
-Index: gnuchess-5.07/src/common.h
-===================================================================
---- gnuchess-5.07.orig/src/common.h    2009-09-29 16:06:17.000000000 +0200
-+++ gnuchess-5.07/src/common.h 2009-09-29 16:06:40.000000000 +0200
-@@ -745,7 +745,7 @@
-  * Input routine, initialized to one of the specific
-  * input routines. The given argument is the prompt.
-  */
--void (*getline) (char *);
-+void (*get_line) (char *);
- #define MAXSTR 128
- extern char inputstr[MAXSTR];
diff --git a/package/gnuchess/gnuchess-5.07.patch b/package/gnuchess/gnuchess-5.07.patch
deleted file mode 100644 (file)
index 18979b6..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/src/input.c      2003-07-01 13:06:43.000000000 -0400
-+++ a/src/input.c      2008-02-13 12:24:43.000000000 -0500
-@@ -92,7 +92,7 @@ void getline_standard(char *p)
-   fgets(inputstr, MAXSTR, stdin);
- }
--static pthread_t input_thread;
-+pthread_t input_thread;
- /* Mutex and condition variable for thread communication */
diff --git a/package/gnupg2/0001-fix-pth-config-usage.patch b/package/gnupg2/0001-fix-pth-config-usage.patch
new file mode 100644 (file)
index 0000000..e58aad3
--- /dev/null
@@ -0,0 +1,27 @@
+Fix usage of PTH_CONFIG to work with pthsem
+
+The pthsem re-implement of pth provides a compatibility layer for pth,
+but its pth-config script behaves slightly differently than the
+original one when reporting the version number. This patch to gnupg2's
+configure script adjusts the version checking to support this
+difference, since Buildroot uses pth-config from pthsem.
+
+We patch directly the configure script, because triggering the entire
+autoreconf dance for just a one byte change in the configure script
+seems a bit silly.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/configure
+===================================================================
+--- a/configure
++++ b/configure
+@@ -8346,7 +8346,7 @@
+   tmp=1.3.7
+   if test "$PTH_CONFIG" != "no"; then
+-    _pth_version=`$PTH_CONFIG --version | awk 'NR==1 {print $3}'`
++    _pth_version=`$PTH_CONFIG --version | awk 'NR==1 {print $2}'`
+     _req_version="$tmp"
+     { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PTH - version >= $_req_version" >&5
diff --git a/package/gnupg2/gnupg2-0001-fix-pth-config-usage.patch b/package/gnupg2/gnupg2-0001-fix-pth-config-usage.patch
deleted file mode 100644 (file)
index e58aad3..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-Fix usage of PTH_CONFIG to work with pthsem
-
-The pthsem re-implement of pth provides a compatibility layer for pth,
-but its pth-config script behaves slightly differently than the
-original one when reporting the version number. This patch to gnupg2's
-configure script adjusts the version checking to support this
-difference, since Buildroot uses pth-config from pthsem.
-
-We patch directly the configure script, because triggering the entire
-autoreconf dance for just a one byte change in the configure script
-seems a bit silly.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/configure
-===================================================================
---- a/configure
-+++ b/configure
-@@ -8346,7 +8346,7 @@
-   tmp=1.3.7
-   if test "$PTH_CONFIG" != "no"; then
--    _pth_version=`$PTH_CONFIG --version | awk 'NR==1 {print $3}'`
-+    _pth_version=`$PTH_CONFIG --version | awk 'NR==1 {print $2}'`
-     _req_version="$tmp"
-     { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PTH - version >= $_req_version" >&5
diff --git a/package/gnuplot/0001-configure-add-without-demo-option.patch b/package/gnuplot/0001-configure-add-without-demo-option.patch
new file mode 100644 (file)
index 0000000..ccca4e3
--- /dev/null
@@ -0,0 +1,66 @@
+Add options to enable/disable docs and demos
+
+Originally written by Anthony Viallard
+<viallard@syscom-instruments.com>.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: gnuplot-4.6.0/configure.in
+===================================================================
+--- gnuplot-4.6.0.orig/configure.in    2012-03-08 05:34:42.000000000 +0100
++++ gnuplot-4.6.0/configure.in 2013-01-07 11:50:03.003804463 +0100
+@@ -748,6 +748,16 @@
+ AC_ARG_WITH(lisp-files,dnl
+ [  --without-lisp-files    do not build emacs lisp files])
++dnl Whether we want to build the demo files
++dnl Does nothing here, is passed on to the demo subdir
++AC_ARG_ENABLE(demo,dnl
++[  --disable-demo    do not build demo files])
++
++dnl Whether we want to build the doc files
++dnl Does nothing here, is passed on to the doc subdir
++AC_ARG_ENABLE(doc,dnl
++[  --disable-doc    do not build doc files])
++
+ dnl Sort help/subtopic tables by row or column
+ AC_ARG_WITH(row-help,dnl
+ [  --with-row-help         format help and subtopic tables by row (default)
+@@ -1200,6 +1210,24 @@
+ fi
+ AC_SUBST(LISPDIR)
++dnl build demo files
++if test "$enable_demo" != no; then
++  AC_CONFIG_SUBDIRS(demo)
++  DEMOSUBDIR=demo
++else
++  DEMOSUBDIR=
++fi
++AC_SUBST(DEMOSUBDIR)
++
++dnl build doc files
++if test "$enable_doc" != no; then
++  AC_CONFIG_SUBDIRS(docs)
++  DOCSUBDIR=docs
++else
++  DOCSUBDIR=
++fi
++AC_SUBST(DOCSUBDIR)
++
+ dnl Substitute variables
+ AC_SUBST(PACKAGE)
+ AC_SUBST(VERSION_MAJOR)
+Index: gnuplot-4.6.0/Makefile.am
+===================================================================
+--- gnuplot-4.6.0.orig/Makefile.am     2013-01-04 14:07:02.239120935 +0100
++++ gnuplot-4.6.0/Makefile.am  2013-01-07 11:51:12.034846363 +0100
+@@ -1,7 +1,7 @@
+ ## Process this file with automake to produce Makefile.in -*-Makefile-*-
+ AUTOMAKE_OPTIONS = foreign 1.2h
+-SUBDIRS = config m4 term src docs $(LISPDIR) man demo tutorial share
++SUBDIRS = config m4 term src $(DOCSUBDIR) $(LISPDIR) man $(DEMOSUBDIR) tutorial share
+ EXTRA_DIST = BUGS CodeStyle Copyright FAQ.pdf GNUmakefile INSTALL INSTALL.gnu \
+ Makefile.maint PATCHLEVEL PGPKEYS PORTING README README.1ST \
diff --git a/package/gnuplot/0002-use-gdlib-config-properly.patch b/package/gnuplot/0002-use-gdlib-config-properly.patch
new file mode 100644 (file)
index 0000000..690a826
--- /dev/null
@@ -0,0 +1,27 @@
+Fix usage of gdlib-config
+
+gnuplot configure.in script properly takes care of finding
+gdlib-config using AC_PATH_PROG... but then directly uses gdlib-config
+instead of going through the GDLIB_CONFIG variable that AC_PATH_PROG
+has defined. Which means that whenever a gdlib-config binary not in
+the PATH is being used, it does not use it.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/configure.in
+===================================================================
+--- a/configure.in
++++ b/configure.in
+@@ -537,9 +537,9 @@
+ if test "$with_gd" != no; then
+   AC_PATH_PROG([GDLIB_CONFIG], [gdlib-config])
+   if test -n "$GDLIB_CONFIG"; then
+-    libgd_CPPFLAGS=`gdlib-config --cflags`
+-    libgd_LDFLAGS=`gdlib-config --ldflags`
+-    libgd_LIBS=`gdlib-config --libs`
++    libgd_CPPFLAGS=`$GDLIB_CONFIG --cflags`
++    libgd_LDFLAGS=`$GDLIB_CONFIG --ldflags`
++    libgd_LIBS=`$GDLIB_CONFIG --libs`
+   elif test -d "$with_gd"; then
+     libgd_CPPFLAGS="-I$with_gd/include"
+     libgd_LDFLAGS="-L$with_gd/lib"
diff --git a/package/gnuplot/gnuplot-0001-configure-add-without-demo-option.patch b/package/gnuplot/gnuplot-0001-configure-add-without-demo-option.patch
deleted file mode 100644 (file)
index ccca4e3..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-Add options to enable/disable docs and demos
-
-Originally written by Anthony Viallard
-<viallard@syscom-instruments.com>.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: gnuplot-4.6.0/configure.in
-===================================================================
---- gnuplot-4.6.0.orig/configure.in    2012-03-08 05:34:42.000000000 +0100
-+++ gnuplot-4.6.0/configure.in 2013-01-07 11:50:03.003804463 +0100
-@@ -748,6 +748,16 @@
- AC_ARG_WITH(lisp-files,dnl
- [  --without-lisp-files    do not build emacs lisp files])
-+dnl Whether we want to build the demo files
-+dnl Does nothing here, is passed on to the demo subdir
-+AC_ARG_ENABLE(demo,dnl
-+[  --disable-demo    do not build demo files])
-+
-+dnl Whether we want to build the doc files
-+dnl Does nothing here, is passed on to the doc subdir
-+AC_ARG_ENABLE(doc,dnl
-+[  --disable-doc    do not build doc files])
-+
- dnl Sort help/subtopic tables by row or column
- AC_ARG_WITH(row-help,dnl
- [  --with-row-help         format help and subtopic tables by row (default)
-@@ -1200,6 +1210,24 @@
- fi
- AC_SUBST(LISPDIR)
-+dnl build demo files
-+if test "$enable_demo" != no; then
-+  AC_CONFIG_SUBDIRS(demo)
-+  DEMOSUBDIR=demo
-+else
-+  DEMOSUBDIR=
-+fi
-+AC_SUBST(DEMOSUBDIR)
-+
-+dnl build doc files
-+if test "$enable_doc" != no; then
-+  AC_CONFIG_SUBDIRS(docs)
-+  DOCSUBDIR=docs
-+else
-+  DOCSUBDIR=
-+fi
-+AC_SUBST(DOCSUBDIR)
-+
- dnl Substitute variables
- AC_SUBST(PACKAGE)
- AC_SUBST(VERSION_MAJOR)
-Index: gnuplot-4.6.0/Makefile.am
-===================================================================
---- gnuplot-4.6.0.orig/Makefile.am     2013-01-04 14:07:02.239120935 +0100
-+++ gnuplot-4.6.0/Makefile.am  2013-01-07 11:51:12.034846363 +0100
-@@ -1,7 +1,7 @@
- ## Process this file with automake to produce Makefile.in -*-Makefile-*-
- AUTOMAKE_OPTIONS = foreign 1.2h
--SUBDIRS = config m4 term src docs $(LISPDIR) man demo tutorial share
-+SUBDIRS = config m4 term src $(DOCSUBDIR) $(LISPDIR) man $(DEMOSUBDIR) tutorial share
- EXTRA_DIST = BUGS CodeStyle Copyright FAQ.pdf GNUmakefile INSTALL INSTALL.gnu \
- Makefile.maint PATCHLEVEL PGPKEYS PORTING README README.1ST \
diff --git a/package/gnuplot/gnuplot-0002-use-gdlib-config-properly.patch b/package/gnuplot/gnuplot-0002-use-gdlib-config-properly.patch
deleted file mode 100644 (file)
index 690a826..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-Fix usage of gdlib-config
-
-gnuplot configure.in script properly takes care of finding
-gdlib-config using AC_PATH_PROG... but then directly uses gdlib-config
-instead of going through the GDLIB_CONFIG variable that AC_PATH_PROG
-has defined. Which means that whenever a gdlib-config binary not in
-the PATH is being used, it does not use it.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/configure.in
-===================================================================
---- a/configure.in
-+++ b/configure.in
-@@ -537,9 +537,9 @@
- if test "$with_gd" != no; then
-   AC_PATH_PROG([GDLIB_CONFIG], [gdlib-config])
-   if test -n "$GDLIB_CONFIG"; then
--    libgd_CPPFLAGS=`gdlib-config --cflags`
--    libgd_LDFLAGS=`gdlib-config --ldflags`
--    libgd_LIBS=`gdlib-config --libs`
-+    libgd_CPPFLAGS=`$GDLIB_CONFIG --cflags`
-+    libgd_LDFLAGS=`$GDLIB_CONFIG --ldflags`
-+    libgd_LIBS=`$GDLIB_CONFIG --libs`
-   elif test -d "$with_gd"; then
-     libgd_CPPFLAGS="-I$with_gd/include"
-     libgd_LDFLAGS="-L$with_gd/lib"
diff --git a/package/gpsd/0001-Fix-build-error-when-ntpshm-is-false.patch b/package/gpsd/0001-Fix-build-error-when-ntpshm-is-false.patch
new file mode 100644 (file)
index 0000000..9c444c4
--- /dev/null
@@ -0,0 +1,39 @@
+From 8e081f1bd5c82b842ee317cd55e70f646ae31f05 Mon Sep 17 00:00:00 2001
+From: Simon Dawson <spdawson@gmail.com>
+Date: Mon, 25 Aug 2014 10:26:11 +0100
+Subject: [PATCH] Fix build error when ntpshm is false
+To: gpsd-dev@nongnu.org
+
+The build fails as follows
+
+libgpsd_core.c: In function 'ntpshm_latch':
+libgpsd_core.c:1660:24: error: 'const struct gps_type_t' has no member named 'time_offset'
+  || device->device_type->time_offset == NULL)
+                        ^
+libgpsd_core.c:1663:33: error: 'const struct gps_type_t' has no member named 'time_offset'
+  fix_time += device->device_type->time_offset(device);
+                                 ^
+scons: *** [libgpsd_core.os] Error 1
+
+The solution is to wrap #ifdef NTPSHM_ENABLE around the ntpshm_latch function
+
+Signed-off-by: Simon Dawson <spdawson@gmail.com>
+---
+diff -Nurp a/libgpsd_core.c b/libgpsd_core.c
+--- a/libgpsd_core.c   2014-08-22 21:33:55.000000000 +0100
++++ b/libgpsd_core.c   2014-09-03 18:48:34.184931741 +0100
+@@ -1642,6 +1642,7 @@ void gpsd_zero_satellites( /*@out@*/ str
+ #endif
+ }
++#ifdef NTPSHM_ENABLE
+ void ntpshm_latch(struct gps_device_t *device, struct timedrift_t /*@out@*/*td)
+ /* latch the fact that we've saved a fix */
+ {
+@@ -1672,5 +1673,6 @@ void ntpshm_latch(struct gps_device_t *d
+     device->last_fixtime.clock = td->clock.tv_sec + td->clock.tv_nsec / 1e9;
+ #endif /* S_SPLINT_S */
+ }
++#endif /* NTPSHM_ENABLE */
+ /* end */
diff --git a/package/gpsd/0002-sconstruct-disable-rpath.patch b/package/gpsd/0002-sconstruct-disable-rpath.patch
new file mode 100644 (file)
index 0000000..8251cfc
--- /dev/null
@@ -0,0 +1,18 @@
+Disable addition of RPATH to the generated libraries
+
+Signed-off-by: Simon Dawson <spdawson@gmail.com>
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+diff -Nurp a/SConstruct b/SConstruct
+--- a/SConstruct       2014-08-23 18:41:09.000000000 +0100
++++ b/SConstruct       2014-08-25 09:46:53.754364989 +0100
+@@ -300,9 +300,6 @@ if env["sysroot"]:
+ # Don't hack RPATH unless libdir points somewhere that is not on the
+ # minimum default load path.
+-if env["shared"]:
+-    if env["libdir"] not in ["/usr/lib", "/lib"]:
+-        env.Prepend(RPATH=[installdir('libdir')])
+ # Give deheader a way to set compiler flags
+ if 'MORECFLAGS' in os.environ:
diff --git a/package/gpsd/0003-Complete-wrapping-of-ntpshm_latch-function-in-ifdef-.patch b/package/gpsd/0003-Complete-wrapping-of-ntpshm_latch-function-in-ifdef-.patch
new file mode 100644 (file)
index 0000000..2d21690
--- /dev/null
@@ -0,0 +1,43 @@
+From 519314d488624885a73f6204e3113aab850a36a0 Mon Sep 17 00:00:00 2001
+From: Simon Dawson <spdawson@gmail.com>
+Date: Wed, 3 Sep 2014 18:39:22 +0100
+Subject: [PATCH] Complete wrapping of ntpshm_latch function in #ifdef
+ NTPSHM_ENABLE
+To: gpsd-dev@nongnu.org
+
+Currently, the build fails as follows
+
+gpsmon.o: In function `gpsmon_hook':
+gpsmon.c:(.text+0x8b0): undefined reference to `ntpshm_latch'
+collect2: error: ld returned 1 exit status
+scons: *** [gpsmon] Error 1
+
+Signed-off-by: Simon Dawson <spdawson@gmail.com>
+---
+diff -Nurp a/gpsd.h-tail b/gpsd.h-tail
+--- a/gpsd.h-tail      2014-08-22 21:35:56.000000000 +0100
++++ b/gpsd.h-tail      2014-09-03 18:52:04.048627518 +0100
+@@ -842,7 +842,9 @@ extern unsigned int ais_binary_encode(st
+ extern void ntpshm_context_init(struct gps_context_t *);
+ extern void ntpshm_session_init(struct gps_device_t *);
+ extern int ntpshm_put(struct gps_device_t *, int, struct timedrift_t *);
++#ifdef NTPSHM_ENABLE
+ extern void ntpshm_latch(struct gps_device_t *device,  /*@out@*/struct timedrift_t *td);
++#endif /* NTPSHM_ENABLE */
+ extern void ntpshm_link_deactivate(struct gps_device_t *);
+ extern void ntpshm_link_activate(struct gps_device_t *);
+diff -Nurp a/gpsmon.c b/gpsmon.c
+--- a/gpsmon.c 2014-08-22 21:06:58.000000000 +0100
++++ b/gpsmon.c 2014-09-03 18:52:23.172628059 +0100
+@@ -778,8 +778,10 @@ static void gpsmon_hook(struct gps_devic
+     report_unlock();
++#ifdef NTPSHM_ENABLE
+     /* Update the last fix time seen for PPS. FIXME: do this here? */
+     ntpshm_latch(device, &td);
++#endif /* NTPSHM_ENABLE */
+ }
+ /*@+observertrans +nullpass +globstate +compdef +uniondef@*/
diff --git a/package/gpsd/gpsd-01-Fix-build-error-when-ntpshm-is-false.patch b/package/gpsd/gpsd-01-Fix-build-error-when-ntpshm-is-false.patch
deleted file mode 100644 (file)
index 9c444c4..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-From 8e081f1bd5c82b842ee317cd55e70f646ae31f05 Mon Sep 17 00:00:00 2001
-From: Simon Dawson <spdawson@gmail.com>
-Date: Mon, 25 Aug 2014 10:26:11 +0100
-Subject: [PATCH] Fix build error when ntpshm is false
-To: gpsd-dev@nongnu.org
-
-The build fails as follows
-
-libgpsd_core.c: In function 'ntpshm_latch':
-libgpsd_core.c:1660:24: error: 'const struct gps_type_t' has no member named 'time_offset'
-  || device->device_type->time_offset == NULL)
-                        ^
-libgpsd_core.c:1663:33: error: 'const struct gps_type_t' has no member named 'time_offset'
-  fix_time += device->device_type->time_offset(device);
-                                 ^
-scons: *** [libgpsd_core.os] Error 1
-
-The solution is to wrap #ifdef NTPSHM_ENABLE around the ntpshm_latch function
-
-Signed-off-by: Simon Dawson <spdawson@gmail.com>
----
-diff -Nurp a/libgpsd_core.c b/libgpsd_core.c
---- a/libgpsd_core.c   2014-08-22 21:33:55.000000000 +0100
-+++ b/libgpsd_core.c   2014-09-03 18:48:34.184931741 +0100
-@@ -1642,6 +1642,7 @@ void gpsd_zero_satellites( /*@out@*/ str
- #endif
- }
-+#ifdef NTPSHM_ENABLE
- void ntpshm_latch(struct gps_device_t *device, struct timedrift_t /*@out@*/*td)
- /* latch the fact that we've saved a fix */
- {
-@@ -1672,5 +1673,6 @@ void ntpshm_latch(struct gps_device_t *d
-     device->last_fixtime.clock = td->clock.tv_sec + td->clock.tv_nsec / 1e9;
- #endif /* S_SPLINT_S */
- }
-+#endif /* NTPSHM_ENABLE */
- /* end */
diff --git a/package/gpsd/gpsd-02-sconstruct-disable-rpath.patch b/package/gpsd/gpsd-02-sconstruct-disable-rpath.patch
deleted file mode 100644 (file)
index 8251cfc..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-Disable addition of RPATH to the generated libraries
-
-Signed-off-by: Simon Dawson <spdawson@gmail.com>
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-diff -Nurp a/SConstruct b/SConstruct
---- a/SConstruct       2014-08-23 18:41:09.000000000 +0100
-+++ b/SConstruct       2014-08-25 09:46:53.754364989 +0100
-@@ -300,9 +300,6 @@ if env["sysroot"]:
- # Don't hack RPATH unless libdir points somewhere that is not on the
- # minimum default load path.
--if env["shared"]:
--    if env["libdir"] not in ["/usr/lib", "/lib"]:
--        env.Prepend(RPATH=[installdir('libdir')])
- # Give deheader a way to set compiler flags
- if 'MORECFLAGS' in os.environ:
diff --git a/package/gpsd/gpsd-03-Complete-wrapping-of-ntpshm_latch-function-in-ifdef-.patch b/package/gpsd/gpsd-03-Complete-wrapping-of-ntpshm_latch-function-in-ifdef-.patch
deleted file mode 100644 (file)
index 2d21690..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-From 519314d488624885a73f6204e3113aab850a36a0 Mon Sep 17 00:00:00 2001
-From: Simon Dawson <spdawson@gmail.com>
-Date: Wed, 3 Sep 2014 18:39:22 +0100
-Subject: [PATCH] Complete wrapping of ntpshm_latch function in #ifdef
- NTPSHM_ENABLE
-To: gpsd-dev@nongnu.org
-
-Currently, the build fails as follows
-
-gpsmon.o: In function `gpsmon_hook':
-gpsmon.c:(.text+0x8b0): undefined reference to `ntpshm_latch'
-collect2: error: ld returned 1 exit status
-scons: *** [gpsmon] Error 1
-
-Signed-off-by: Simon Dawson <spdawson@gmail.com>
----
-diff -Nurp a/gpsd.h-tail b/gpsd.h-tail
---- a/gpsd.h-tail      2014-08-22 21:35:56.000000000 +0100
-+++ b/gpsd.h-tail      2014-09-03 18:52:04.048627518 +0100
-@@ -842,7 +842,9 @@ extern unsigned int ais_binary_encode(st
- extern void ntpshm_context_init(struct gps_context_t *);
- extern void ntpshm_session_init(struct gps_device_t *);
- extern int ntpshm_put(struct gps_device_t *, int, struct timedrift_t *);
-+#ifdef NTPSHM_ENABLE
- extern void ntpshm_latch(struct gps_device_t *device,  /*@out@*/struct timedrift_t *td);
-+#endif /* NTPSHM_ENABLE */
- extern void ntpshm_link_deactivate(struct gps_device_t *);
- extern void ntpshm_link_activate(struct gps_device_t *);
-diff -Nurp a/gpsmon.c b/gpsmon.c
---- a/gpsmon.c 2014-08-22 21:06:58.000000000 +0100
-+++ b/gpsmon.c 2014-09-03 18:52:23.172628059 +0100
-@@ -778,8 +778,10 @@ static void gpsmon_hook(struct gps_devic
-     report_unlock();
-+#ifdef NTPSHM_ENABLE
-     /* Update the last fix time seen for PPS. FIXME: do this here? */
-     ntpshm_latch(device, &td);
-+#endif /* NTPSHM_ENABLE */
- }
- /*@+observertrans +nullpass +globstate +compdef +uniondef@*/
diff --git a/package/gptfdisk/0001-configurable-utf16-support.patch b/package/gptfdisk/0001-configurable-utf16-support.patch
new file mode 100644 (file)
index 0000000..6d54cea
--- /dev/null
@@ -0,0 +1,50 @@
+[PATCH] Make the UTF16 support configurable
+
+libicu is quite large, and unicode partition names are uncommon, so we
+may not necessarily want to have UTF16 support unconditionnally. This
+patch adds a USE_UTF16 environment variable to tell whether we want
+the UTF16 support or not.
+
+Signed-off-by: Justin Maggard <jmaggard10@gmail.com>
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+[baruch: add $(LDLIBS)]
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+---
+Index: b/Makefile
+===================================================================
+--- a/Makefile
++++ b/Makefile
+@@ -1,8 +1,11 @@
+ CC=gcc
+ CXX=g++
+ CFLAGS+=-D_FILE_OFFSET_BITS=64
+-CXXFLAGS+=-Wall -D_FILE_OFFSET_BITS=64 -D USE_UTF16
+-#CXXFLAGS+=-Wall -D_FILE_OFFSET_BITS=64
++CXXFLAGS+=-Wall -D_FILE_OFFSET_BITS=64
++ifeq ($(USE_UTF16),y)
++CXXFLAGS+=-D USE_UTF16
++UTF16_LIBS=-licuio -licuuc
++endif
+ LDFLAGS+=
+ LIB_NAMES=crc32 support guid gptpart mbrpart basicmbr mbr gpt bsd parttypes attributes diskio diskio-unix
+ MBR_LIBS=support diskio diskio-unix basicmbr mbrpart
+@@ -14,16 +17,13 @@
+ all:  cgdisk gdisk sgdisk fixparts
+ gdisk:        $(LIB_OBJS) gdisk.o gpttext.o
+-#     $(CXX) $(LIB_OBJS) gdisk.o gpttext.o $(LDFLAGS) -luuid -o gdisk
+-      $(CXX) $(LIB_OBJS) gdisk.o gpttext.o $(LDFLAGS) -licuio -licuuc -luuid -o gdisk
++      $(CXX) $(LIB_OBJS) gdisk.o gpttext.o $(LDFLAGS) $(UTF16_LIBS) -luuid $(LDLIBS) -o gdisk
+ cgdisk: $(LIB_OBJS) cgdisk.o gptcurses.o
+-#     $(CXX) $(LIB_OBJS) cgdisk.o gptcurses.o $(LDFLAGS) -luuid -lncurses -o cgdisk
+-      $(CXX) $(LIB_OBJS) cgdisk.o gptcurses.o $(LDFLAGS) -licuio -licuuc -luuid -lncurses -o cgdisk
++      $(CXX) $(LIB_OBJS) cgdisk.o gptcurses.o $(LDFLAGS) $(UTF16_LIBS) -luuid -lncurses $(LDLIBS) -o cgdisk
+ sgdisk: $(LIB_OBJS) sgdisk.o gptcl.o
+-#     $(CXX) $(LIB_OBJS) sgdisk.o gptcl.o $(LDFLAGS) -luuid -lpopt -o sgdisk
+-      $(CXX) $(LIB_OBJS) sgdisk.o gptcl.o $(LDFLAGS) -licuio -licuuc -luuid -lpopt -o sgdisk
++      $(CXX) $(LIB_OBJS) sgdisk.o gptcl.o $(LDFLAGS) $(UTF16_LIBS) -luuid -lpopt $(LDLIBS) -o sgdisk
+ fixparts: $(MBR_LIB_OBJS) fixparts.o
+       $(CXX) $(MBR_LIB_OBJS) fixparts.o $(LDFLAGS) -o fixparts
diff --git a/package/gptfdisk/gptfdisk-001-configurable-utf16-support.patch b/package/gptfdisk/gptfdisk-001-configurable-utf16-support.patch
deleted file mode 100644 (file)
index 6d54cea..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-[PATCH] Make the UTF16 support configurable
-
-libicu is quite large, and unicode partition names are uncommon, so we
-may not necessarily want to have UTF16 support unconditionnally. This
-patch adds a USE_UTF16 environment variable to tell whether we want
-the UTF16 support or not.
-
-Signed-off-by: Justin Maggard <jmaggard10@gmail.com>
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-[baruch: add $(LDLIBS)]
-Signed-off-by: Baruch Siach <baruch@tkos.co.il>
----
-Index: b/Makefile
-===================================================================
---- a/Makefile
-+++ b/Makefile
-@@ -1,8 +1,11 @@
- CC=gcc
- CXX=g++
- CFLAGS+=-D_FILE_OFFSET_BITS=64
--CXXFLAGS+=-Wall -D_FILE_OFFSET_BITS=64 -D USE_UTF16
--#CXXFLAGS+=-Wall -D_FILE_OFFSET_BITS=64
-+CXXFLAGS+=-Wall -D_FILE_OFFSET_BITS=64
-+ifeq ($(USE_UTF16),y)
-+CXXFLAGS+=-D USE_UTF16
-+UTF16_LIBS=-licuio -licuuc
-+endif
- LDFLAGS+=
- LIB_NAMES=crc32 support guid gptpart mbrpart basicmbr mbr gpt bsd parttypes attributes diskio diskio-unix
- MBR_LIBS=support diskio diskio-unix basicmbr mbrpart
-@@ -14,16 +17,13 @@
- all:  cgdisk gdisk sgdisk fixparts
- gdisk:        $(LIB_OBJS) gdisk.o gpttext.o
--#     $(CXX) $(LIB_OBJS) gdisk.o gpttext.o $(LDFLAGS) -luuid -o gdisk
--      $(CXX) $(LIB_OBJS) gdisk.o gpttext.o $(LDFLAGS) -licuio -licuuc -luuid -o gdisk
-+      $(CXX) $(LIB_OBJS) gdisk.o gpttext.o $(LDFLAGS) $(UTF16_LIBS) -luuid $(LDLIBS) -o gdisk
- cgdisk: $(LIB_OBJS) cgdisk.o gptcurses.o
--#     $(CXX) $(LIB_OBJS) cgdisk.o gptcurses.o $(LDFLAGS) -luuid -lncurses -o cgdisk
--      $(CXX) $(LIB_OBJS) cgdisk.o gptcurses.o $(LDFLAGS) -licuio -licuuc -luuid -lncurses -o cgdisk
-+      $(CXX) $(LIB_OBJS) cgdisk.o gptcurses.o $(LDFLAGS) $(UTF16_LIBS) -luuid -lncurses $(LDLIBS) -o cgdisk
- sgdisk: $(LIB_OBJS) sgdisk.o gptcl.o
--#     $(CXX) $(LIB_OBJS) sgdisk.o gptcl.o $(LDFLAGS) -luuid -lpopt -o sgdisk
--      $(CXX) $(LIB_OBJS) sgdisk.o gptcl.o $(LDFLAGS) -licuio -licuuc -luuid -lpopt -o sgdisk
-+      $(CXX) $(LIB_OBJS) sgdisk.o gptcl.o $(LDFLAGS) $(UTF16_LIBS) -luuid -lpopt $(LDLIBS) -o sgdisk
- fixparts: $(MBR_LIB_OBJS) fixparts.o
-       $(CXX) $(MBR_LIB_OBJS) fixparts.o $(LDFLAGS) -o fixparts
diff --git a/package/gqview/0001-make.patch b/package/gqview/0001-make.patch
new file mode 100644 (file)
index 0000000..0b1626f
--- /dev/null
@@ -0,0 +1,11 @@
+--- a/src/Makefile.in  2006-12-02 20:41:25.000000000 -0500
++++ b/src/Makefile.in  2008-02-13 14:00:25.000000000 -0500
+@@ -200,7 +200,7 @@ SUBDIRS = icons
+ DIST_SUBDIRS = icons
+ INCLUDES = -I$(srcdir) -I$(builddir)    \
+       -I$(top_srcdir) -I$(top_builddir)       \
+-      -I$(includedir) $(GTK_CFLAGS)
++      $(GTK_CFLAGS)
+ module_SLIK = \
+       intl.h          \
diff --git a/package/gqview/gqview-2.1.5-make.patch b/package/gqview/gqview-2.1.5-make.patch
deleted file mode 100644 (file)
index 0b1626f..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/src/Makefile.in  2006-12-02 20:41:25.000000000 -0500
-+++ b/src/Makefile.in  2008-02-13 14:00:25.000000000 -0500
-@@ -200,7 +200,7 @@ SUBDIRS = icons
- DIST_SUBDIRS = icons
- INCLUDES = -I$(srcdir) -I$(builddir)    \
-       -I$(top_srcdir) -I$(top_builddir)       \
--      -I$(includedir) $(GTK_CFLAGS)
-+      $(GTK_CFLAGS)
- module_SLIK = \
-       intl.h          \
diff --git a/package/gstreamer/gst-ffmpeg/0001-gcc47.patch b/package/gstreamer/gst-ffmpeg/0001-gcc47.patch
new file mode 100644 (file)
index 0000000..16744ab
--- /dev/null
@@ -0,0 +1,65 @@
+gst-ffmpeg libav: Fixes compiling gst-ffmpeg with gcc-4.7
+
+Fetch from: http://www.slackware.com/~alien/slackbuilds/gst-plugins-ffmpeg/build/gst-ffmpeg-0.10.13_gcc47.patch
+
+Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
+---
+Submitted By: Andrew Benton <andy@benton.eu.com>
+Date: 2012-06-15
+Initial Package Version: 0.10.13
+Upstream Status: From upstream
+Origin:
+http://git.videolan.org/?p=ffmpeg.git;a=patch;h=5f654897e325349dacf2546674e0510bb72ecb50
+
+Description: Fixes compiling gst-ffmpeg with gcc-4.7
+
+libavcodec/x86/h264_qpel_mmx.c: Assembler messages:
+libavcodec/x86/h264_qpel_mmx.c:1294: Error: operand type mismatch for `cmp'
+libavcodec/x86/h264_qpel_mmx.c:1294: Error: operand type mismatch for `cmp'
+libavcodec/x86/h264_qpel_mmx.c:1298: Error: operand type mismatch for `cmp'
+libavcodec/x86/h264_qpel_mmx.c:1298: Error: operand type mismatch for `cmp'
+libavcodec/x86/h264_qpel_mmx.c:964: Error: operand type mismatch for `cmp'
+libavcodec/x86/h264_qpel_mmx.c:964: Error: operand type mismatch for `cmp'
+libavcodec/x86/h264_qpel_mmx.c:964: Error: operand type mismatch for `cmp'
+make[5]: *** [libavcodec/x86/dsputil_mmx.o] Error 1
+
+Index: gst-ffmpeg-0.10.13/gst-libs/ext/libav/libavcodec/x86/h264_qpel_mmx.c
+===================================================================
+--- gst-ffmpeg-0.10.13.orig/gst-libs/ext/libav/libavcodec/x86/h264_qpel_mmx.c  2012-03-30 11:39:41.324522051 -0700
++++ gst-ffmpeg-0.10.13/gst-libs/ext/libav/libavcodec/x86/h264_qpel_mmx.c       2012-03-30 11:54:08.152564075 -0700
+@@ -398,7 +398,7 @@
+             "2:                         \n\t"\
+             \
+             : "+a"(src), "+c"(dst)\
+-            : "S"((x86_reg)srcStride), "D"((x86_reg)dstStride), "g"(h)\
++            : "S"((x86_reg)srcStride), "D"((x86_reg)dstStride), "rm"(h)\
+             : "memory"\
+         );\
+         src += 4-(h+5)*srcStride;\
+@@ -446,7 +446,7 @@
+             QPEL_H264HV(%%mm3, %%mm4, %%mm5, %%mm0, %%mm1, %%mm2, 15*48)\
+             "2:                     \n\t"\
+             : "+a"(src)\
+-            : "c"(tmp), "S"((x86_reg)srcStride), "g"(size)\
++            : "c"(tmp), "S"((x86_reg)srcStride), "rm"(size)\
+             : "memory"\
+             );\
+         tmp += 4;\
+@@ -823,7 +823,7 @@
+         "2:                          \n\t"\
+         \
+         : "+a"(src), "+c"(dst)\
+-        : "S"((x86_reg)srcStride), "D"((x86_reg)dstStride), "g"(h)\
++        : "S"((x86_reg)srcStride), "D"((x86_reg)dstStride), "rm"(h)\
+         : XMM_CLOBBERS("%xmm0", "%xmm1", "%xmm2", "%xmm3", \
+                        "%xmm4", "%xmm5", "%xmm6", "%xmm7",)\
+           "memory"\
+@@ -878,7 +878,7 @@
+             QPEL_H264HV_XMM(%%xmm3, %%xmm4, %%xmm5, %%xmm0, %%xmm1, %%xmm2, 15*48)
+             "2:                         \n\t"
+             : "+a"(src)
+-            : "c"(tmp), "S"((x86_reg)srcStride), "g"(size)
++            : "c"(tmp), "S"((x86_reg)srcStride), "rm"(size)
+             : XMM_CLOBBERS("%xmm0", "%xmm1", "%xmm2", "%xmm3",
+                            "%xmm4", "%xmm5", "%xmm6", "%xmm7",)
+               "memory"
diff --git a/package/gstreamer/gst-ffmpeg/0002-arm-avoid-using-the-movw-instruction.patch b/package/gstreamer/gst-ffmpeg/0002-arm-avoid-using-the-movw-instruction.patch
new file mode 100644 (file)
index 0000000..288dc3d
--- /dev/null
@@ -0,0 +1,41 @@
+Date: Mon, 1 Aug 2011 20:21:04 +0300
+Subject: [libavcodec] arm: Avoid using the movw instruction needlessly
+MIME-Version: 1.0
+Content-Type: text/plain; charset=utf8
+Content-Transfer-Encoding: 8bit
+
+This fixes building for ARM11 without Thumb2.
+
+Signed-off-by: Martin Storsjö <martin@martin.st>
+
+[Arnout: backported to gst-ffmpeg, from ffmpeg 9a83adaf3]
+Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
+---
+ gst-libs/ext/libav/libavcodec/arm/ac3dsp_armv6.S |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/gst-libs/ext/libav/libavcodec/arm/ac3dsp_armv6.S b/gst-libs/ext/libav/libavcodec/arm/ac3dsp_armv6.S
+index d3058ff..b6aee86 100644
+--- a/gst-libs/ext/libav/libavcodec/arm/ac3dsp_armv6.S
++++ b/gst-libs/ext/libav/libavcodec/arm/ac3dsp_armv6.S
+@@ -37,7 +37,7 @@ function ff_ac3_bit_alloc_calc_bap_armv6, export=1
+         ldrb            r10, [r4], #1
+ 1:
+         ldrsh           r9,  [r0], #2                   @ mask[band]
+-        movw            r8,  #0x1fe0
++        mov             r8,  #0xff0
+         sub             r9,  r9,  r12                   @   - snr_offset
+         mov             r11, r10
+         ldrb            r10, [r4], #1                   @ band_start_tab[band++]
+@@ -44,7 +44,7 @@ function ff_ac3_bit_alloc_calc_bap_armv6, export=1
+         subs            r9,  r9,  r5                    @   - floor
+         movlt           r9,  #0
+         cmp             r10, r3                         @   - end
+-        and             r9,  r9,  r8                    @   & 0x1fe0
++        and             r9,  r9,  r8, lsl #1            @   & 0x1fe0
+         subgt           r8,  r3,  r11
+         suble           r8,  r10, r11
+         add             r9,  r9,  r5                    @   + floor => m
+--
+1.7.10.4
+
diff --git a/package/gstreamer/gst-ffmpeg/gst-ffmpeg-0001-gcc47.patch b/package/gstreamer/gst-ffmpeg/gst-ffmpeg-0001-gcc47.patch
deleted file mode 100644 (file)
index 16744ab..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-gst-ffmpeg libav: Fixes compiling gst-ffmpeg with gcc-4.7
-
-Fetch from: http://www.slackware.com/~alien/slackbuilds/gst-plugins-ffmpeg/build/gst-ffmpeg-0.10.13_gcc47.patch
-
-Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
----
-Submitted By: Andrew Benton <andy@benton.eu.com>
-Date: 2012-06-15
-Initial Package Version: 0.10.13
-Upstream Status: From upstream
-Origin:
-http://git.videolan.org/?p=ffmpeg.git;a=patch;h=5f654897e325349dacf2546674e0510bb72ecb50
-
-Description: Fixes compiling gst-ffmpeg with gcc-4.7
-
-libavcodec/x86/h264_qpel_mmx.c: Assembler messages:
-libavcodec/x86/h264_qpel_mmx.c:1294: Error: operand type mismatch for `cmp'
-libavcodec/x86/h264_qpel_mmx.c:1294: Error: operand type mismatch for `cmp'
-libavcodec/x86/h264_qpel_mmx.c:1298: Error: operand type mismatch for `cmp'
-libavcodec/x86/h264_qpel_mmx.c:1298: Error: operand type mismatch for `cmp'
-libavcodec/x86/h264_qpel_mmx.c:964: Error: operand type mismatch for `cmp'
-libavcodec/x86/h264_qpel_mmx.c:964: Error: operand type mismatch for `cmp'
-libavcodec/x86/h264_qpel_mmx.c:964: Error: operand type mismatch for `cmp'
-make[5]: *** [libavcodec/x86/dsputil_mmx.o] Error 1
-
-Index: gst-ffmpeg-0.10.13/gst-libs/ext/libav/libavcodec/x86/h264_qpel_mmx.c
-===================================================================
---- gst-ffmpeg-0.10.13.orig/gst-libs/ext/libav/libavcodec/x86/h264_qpel_mmx.c  2012-03-30 11:39:41.324522051 -0700
-+++ gst-ffmpeg-0.10.13/gst-libs/ext/libav/libavcodec/x86/h264_qpel_mmx.c       2012-03-30 11:54:08.152564075 -0700
-@@ -398,7 +398,7 @@
-             "2:                         \n\t"\
-             \
-             : "+a"(src), "+c"(dst)\
--            : "S"((x86_reg)srcStride), "D"((x86_reg)dstStride), "g"(h)\
-+            : "S"((x86_reg)srcStride), "D"((x86_reg)dstStride), "rm"(h)\
-             : "memory"\
-         );\
-         src += 4-(h+5)*srcStride;\
-@@ -446,7 +446,7 @@
-             QPEL_H264HV(%%mm3, %%mm4, %%mm5, %%mm0, %%mm1, %%mm2, 15*48)\
-             "2:                     \n\t"\
-             : "+a"(src)\
--            : "c"(tmp), "S"((x86_reg)srcStride), "g"(size)\
-+            : "c"(tmp), "S"((x86_reg)srcStride), "rm"(size)\
-             : "memory"\
-             );\
-         tmp += 4;\
-@@ -823,7 +823,7 @@
-         "2:                          \n\t"\
-         \
-         : "+a"(src), "+c"(dst)\
--        : "S"((x86_reg)srcStride), "D"((x86_reg)dstStride), "g"(h)\
-+        : "S"((x86_reg)srcStride), "D"((x86_reg)dstStride), "rm"(h)\
-         : XMM_CLOBBERS("%xmm0", "%xmm1", "%xmm2", "%xmm3", \
-                        "%xmm4", "%xmm5", "%xmm6", "%xmm7",)\
-           "memory"\
-@@ -878,7 +878,7 @@
-             QPEL_H264HV_XMM(%%xmm3, %%xmm4, %%xmm5, %%xmm0, %%xmm1, %%xmm2, 15*48)
-             "2:                         \n\t"
-             : "+a"(src)
--            : "c"(tmp), "S"((x86_reg)srcStride), "g"(size)
-+            : "c"(tmp), "S"((x86_reg)srcStride), "rm"(size)
-             : XMM_CLOBBERS("%xmm0", "%xmm1", "%xmm2", "%xmm3",
-                            "%xmm4", "%xmm5", "%xmm6", "%xmm7",)
-               "memory"
diff --git a/package/gstreamer/gst-ffmpeg/gst-ffmpeg-0002-arm-avoid-using-the-movw-instruction.patch b/package/gstreamer/gst-ffmpeg/gst-ffmpeg-0002-arm-avoid-using-the-movw-instruction.patch
deleted file mode 100644 (file)
index 288dc3d..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-Date: Mon, 1 Aug 2011 20:21:04 +0300
-Subject: [libavcodec] arm: Avoid using the movw instruction needlessly
-MIME-Version: 1.0
-Content-Type: text/plain; charset=utf8
-Content-Transfer-Encoding: 8bit
-
-This fixes building for ARM11 without Thumb2.
-
-Signed-off-by: Martin Storsjö <martin@martin.st>
-
-[Arnout: backported to gst-ffmpeg, from ffmpeg 9a83adaf3]
-Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
----
- gst-libs/ext/libav/libavcodec/arm/ac3dsp_armv6.S |    4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/gst-libs/ext/libav/libavcodec/arm/ac3dsp_armv6.S b/gst-libs/ext/libav/libavcodec/arm/ac3dsp_armv6.S
-index d3058ff..b6aee86 100644
---- a/gst-libs/ext/libav/libavcodec/arm/ac3dsp_armv6.S
-+++ b/gst-libs/ext/libav/libavcodec/arm/ac3dsp_armv6.S
-@@ -37,7 +37,7 @@ function ff_ac3_bit_alloc_calc_bap_armv6, export=1
-         ldrb            r10, [r4], #1
- 1:
-         ldrsh           r9,  [r0], #2                   @ mask[band]
--        movw            r8,  #0x1fe0
-+        mov             r8,  #0xff0
-         sub             r9,  r9,  r12                   @   - snr_offset
-         mov             r11, r10
-         ldrb            r10, [r4], #1                   @ band_start_tab[band++]
-@@ -44,7 +44,7 @@ function ff_ac3_bit_alloc_calc_bap_armv6, export=1
-         subs            r9,  r9,  r5                    @   - floor
-         movlt           r9,  #0
-         cmp             r10, r3                         @   - end
--        and             r9,  r9,  r8                    @   & 0x1fe0
-+        and             r9,  r9,  r8, lsl #1            @   & 0x1fe0
-         subgt           r8,  r3,  r11
-         suble           r8,  r10, r11
-         add             r9,  r9,  r5                    @   + floor => m
---
-1.7.10.4
-
diff --git a/package/gstreamer/gst-fsl-plugins/0001-gplay-add-missing-include.patch b/package/gstreamer/gst-fsl-plugins/0001-gplay-add-missing-include.patch
new file mode 100644 (file)
index 0000000..19753bc
--- /dev/null
@@ -0,0 +1,23 @@
+From ed649ccb8ddc724546172d329fca39b23c49b804 Mon Sep 17 00:00:00 2001
+From: "Arnout Vandecappelle (Essensium/Mind)" <arnout@mind.be>
+Date: Mon, 17 Dec 2012 17:58:28 +0100
+Subject: [PATCH] gplay: add missing include
+
+Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
+---
+ tools/gplay/gst_snapshot.c |    1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/tools/gplay/gst_snapshot.c b/tools/gplay/gst_snapshot.c
+index 40dbb6f..596f399 100755
+--- a/tools/gplay/gst_snapshot.c
++++ b/tools/gplay/gst_snapshot.c
+@@ -22,6 +22,7 @@
+ #include <gst/gst.h>
+ #include <string.h>
++#include <stdio.h>
+ #include "gst_snapshot.h"
+ static void
+-- 
diff --git a/package/gstreamer/gst-fsl-plugins/0002-Fix-bashism-in-configure-script.patch b/package/gstreamer/gst-fsl-plugins/0002-Fix-bashism-in-configure-script.patch
new file mode 100644 (file)
index 0000000..35617cd
--- /dev/null
@@ -0,0 +1,50 @@
+From 83b4f84b1c490b9bb816e1ecbc743d80d48cc06d Mon Sep 17 00:00:00 2001
+From: "Arnout Vandecappelle (Essensium/Mind)" <arnout@mind.be>
+Date: Tue, 18 Dec 2012 12:05:22 +0100
+Subject: [PATCH] Fix bashism in configure script.
+
+The configure script uses +=, which is not POSIX. Debians that
+have the default dash as /bin/sh define a variable ending with
++ instead of appending to it.
+
+Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
+---
+ configure.ac | 14 +++++++-------
+ 1 file changed, 7 insertions(+), 7 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 5968eb6..1a31a06 100755
+--- a/configure.ac
++++ b/configure.ac
+@@ -152,7 +152,7 @@ AC_SUBST(GST_PLUGINS_BASE_LIBS)
+ AC_CHECK_HEADERS([vpu_lib.h], [HAVE_VPU_LIB=yes], [HAVE_VPU_LIB=no])
+ if test "x$HAVE_VPU_LIB" = "xyes"; then
+     VPU_LIBS=`$PKG_CONFIG --libs libfslvpuwrap 2>/dev/null`
+-    VPU_LIBS+=" -lvpu"
++    VPU_LIBS="$VPU_LIBS -lvpu"
+ fi
+ AC_SUBST(VPU_LIBS)
+@@ -176,15 +176,15 @@ AC_SUBST(RT_CFLAGS)
+ AC_SUBST(RT_LIBS)
+ FSL_MM_CORE_CFLAGS=`$PKG_CONFIG --cflags libfslaudiocodec 2>/dev/null`
+-FSL_MM_CORE_CFLAGS+=`$PKG_CONFIG --cflags libfslvideocodec 2>/dev/null`
+-FSL_MM_CORE_CFLAGS+=`$PKG_CONFIG --cflags libfslparser 2>/dev/null`
+-FSL_MM_CORE_CFLAGS+=`$PKG_CONFIG --cflags libfslvpuwrap 2>/dev/null`
++FSL_MM_CORE_CFLAGS="$FSL_MM_CORE_CFLAGS `$PKG_CONFIG --cflags libfslvideocodec 2>/dev/null`"
++FSL_MM_CORE_CFLAGS="$FSL_MM_CORE_CFLAGS `$PKG_CONFIG --cflags libfslparser 2>/dev/null`"
++FSL_MM_CORE_CFLAGS="$FSL_MM_CORE_CFLAGS `$PKG_CONFIG --cflags libfslvpuwrap 2>/dev/null`"
+ AC_SUBST(FSL_MM_CORE_CFLAGS)
+ FSL_MM_CORE_LIBS=`$PKG_CONFIG --libs libfslaudiocodec 2>/dev/null`
+-FSL_MM_CORE_LIBS+=`$PKG_CONFIG --libs libfslvideocodec 2>/dev/null`
+-FSL_MM_CORE_LIBS+=`$PKG_CONFIG --libs libfslparser 2>/dev/null`
+-FSL_MM_CORE_LIBS+=`$PKG_CONFIG --libs libfslvpuwrap 2>/dev/null`
++FSL_MM_CORE_LIBS="$FSL_MM_CORE_LIBS `$PKG_CONFIG --libs libfslvideocodec 2>/dev/null`"
++FSL_MM_CORE_LIBS="$FSL_MM_CORE_LIBS `$PKG_CONFIG --libs libfslparser 2>/dev/null`"
++FSL_MM_CORE_LIBS="$FSL_MM_CORE_LIBS `$PKG_CONFIG --libs libfslvpuwrap 2>/dev/null`"
+ AC_SUBST(FSL_MM_CORE_LIBS)
+ EXTRAPLATFORMCFLAGS="-DARM -D_GNUC_"
+-- 
diff --git a/package/gstreamer/gst-fsl-plugins/0003-Use-proper-objdump.patch b/package/gstreamer/gst-fsl-plugins/0003-Use-proper-objdump.patch
new file mode 100644 (file)
index 0000000..b7b8c9f
--- /dev/null
@@ -0,0 +1,36 @@
+From c58b658a93b1b6d6e94ba0306d58de845012cef6 Mon Sep 17 00:00:00 2001
+From: "Arnout Vandecappelle (Essensium/Mind)" <arnout@mind.be>
+Date: Tue, 18 Dec 2012 12:22:52 +0100
+Subject: [PATCH] Use proper objdump
+
+If the OBJDUMP environment variable is set, that should be used rather
+than the objdump in PATH.
+
+Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
+---
+ configure.ac |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 1a31a06..cc7557d 100755
+--- a/configure.ac
++++ b/configure.ac
+@@ -17,7 +17,7 @@ AC_DEFUN([FIND_PARSER_SONAME],
+     AC_MSG_CHECKING([for lib_$1_parser_$2_elinux.3.0.so soname])
+     path=`$PKG_CONFIG --variable=libdir libfslparser`
+     SONAME=$( $CC -print-file-name=$PKG_CONFIG_SYSROOT_DIR$path/lib_$1_parser_$2_elinux.so | \
+-          while read output; do objdump -p $output | \
++          while read output; do $OBJDUMP -p $output | \
+           grep "SONAME" | \
+           sed -e 's/ \+SONAME \+//'; done 2> /dev/null )
+     if [[ -z "$SONAME" ]]; then
+@@ -36,7 +36,7 @@ AC_DEFUN([FIND_ACODEC_SONAME],
+     AC_MSG_CHECKING([for lib_$1_wrap_$2_elinux.so soname])
+     path=`$PKG_CONFIG --variable=libdir libfslaudiocodec`
+     SONAME=$( $CC -print-file-name=$PKG_CONFIG_SYSROOT_DIR$path/wrap/lib_$1_wrap_$2_elinux.so | \
+-          while read output; do objdump -p $output | \
++          while read output; do $OBJDUMP -p $output | \
+           grep "SONAME" | \
+           sed -e 's/ \+SONAME \+//'; done 2> /dev/null )
+     if [[ -z "$SONAME" ]]; then
+-- 
diff --git a/package/gstreamer/gst-fsl-plugins/0004-Fix-libgstfsl-linkage-add-lrt-for-shared-memory-func.patch b/package/gstreamer/gst-fsl-plugins/0004-Fix-libgstfsl-linkage-add-lrt-for-shared-memory-func.patch
new file mode 100644 (file)
index 0000000..763703c
--- /dev/null
@@ -0,0 +1,46 @@
+From 1ca4251d1284f2cb56e31aaec4d369809e2139c9 Mon Sep 17 00:00:00 2001
+From: Peter Seiderer <ps.report@gmx.net>
+Date: Mon, 24 Feb 2014 16:30:39 +0100
+Subject: [PATCH] Fix libgstfsl linkage (add -lrt for shared memory functions).
+
+Fixes runtime failure of gst-fsl-plugins, e.g.:
+(gst-plugin-scanner:1700): GStreamer-WARNING **: Failed to load
+       plugin '/usr/lib/gstreamer-0.10/libmfw_vpu.so':
+       /usr/lib/libgstfsl-0.10.so.0: undefined symbol: shm_open)
+
+Signed-off-by: Peter Seiderer <ps.report@gmx.net>
+---
+ configure.ac     | 3 +++
+ libs/Makefile.am | 2 +-
+ 2 files changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index a5d1655..7b5a7a6 100755
+--- a/configure.ac
++++ b/configure.ac
+@@ -170,6 +170,9 @@ AC_CHECK_LIB(ipu, mxc_ipu_lib_task_init, [IPU_LIBS=-lipu], [echo "No libipu arou
+ AC_SUBST(IPU_CFLAGS)
+ AC_SUBST(IPU_LIBS)
++AC_SEARCH_LIBS([shm_open], [rt], [SHM_LIBS="-lrt"])
++AC_SUBST(SHM_LIBS)
++
+ dnl of the POSIX Real-Time Extensions.
+ AC_CHECK_LIB(rt, clock_gettime)
+ AC_SUBST(RT_CFLAGS)
+diff --git a/libs/Makefile.am b/libs/Makefile.am
+index 2f56bba..5b30657 100755
+--- a/libs/Makefile.am
++++ b/libs/Makefile.am
+@@ -42,7 +42,7 @@ libgstfsl_@GST_MAJORMINOR@_la_CFLAGS  += -DIPULIB
+ endif
+ libgstfsl_@GST_MAJORMINOR@_la_LDFLAGS = -version-info @GSTMXLIBS_VERSION@
+-libgstfsl_@GST_MAJORMINOR@_la_LIBADD = $(GST_BASE_LIBS) -lgstvideo-@GST_MAJORMINOR@ -lgstinterfaces-$(GST_MAJORMINOR) $(IPU_LIBS) $(RT_LIBS)
++libgstfsl_@GST_MAJORMINOR@_la_LIBADD = $(GST_BASE_LIBS) -lgstvideo-@GST_MAJORMINOR@ -lgstinterfaces-$(GST_MAJORMINOR) $(IPU_LIBS) $(RT_LIBS) $(SHM_LIBS)
+ libgstfsl_@GST_MAJORMINOR@includedir = $(includedir)/gstreamer-@GST_MAJORMINOR@/gst/imx-mm
+ libgstfsl_@GST_MAJORMINOR@include_HEADERS = \
+-- 
+1.8.1.4
+
diff --git a/package/gstreamer/gst-fsl-plugins/0005-Remove-use-of-obsolete-VIDIOC_DBG_G_CHIP_IDENT.patch b/package/gstreamer/gst-fsl-plugins/0005-Remove-use-of-obsolete-VIDIOC_DBG_G_CHIP_IDENT.patch
new file mode 100644 (file)
index 0000000..5635275
--- /dev/null
@@ -0,0 +1,69 @@
+From ce90794a3458af0aed43b8570cf44cd87900185d Mon Sep 17 00:00:00 2001
+From: Gary Bisson <bisson.gary@gmail.com>
+Date: Fri, 25 Jul 2014 16:44:53 -0700
+Subject: [PATCH] Remove use of obsolete VIDIOC_DBG_G_CHIP_IDENT
+
+This ioctl should never be used in application as
+stated in videodev2.h header.
+Moreover, its use in this plugin was very limited.
+
+Signed-off-by: Gary Bisson <bisson.gary@gmail.com>
+---
+ src/misc/tvsrc/src/mfw_gst_tvsrc.c       | 8 --------
+ src/misc/v4l_source/src/mfw_gst_v4lsrc.c | 7 -------
+ 2 files changed, 15 deletions(-)
+
+diff --git a/src/misc/tvsrc/src/mfw_gst_tvsrc.c b/src/misc/tvsrc/src/mfw_gst_tvsrc.c
+index 67e0cd2..f495b6f 100755
+--- a/src/misc/tvsrc/src/mfw_gst_tvsrc.c
++++ b/src/misc/tvsrc/src/mfw_gst_tvsrc.c
+@@ -450,7 +450,6 @@ mfw_gst_tvsrc_capture_setup (MFWGstTVSRC * v4l_src)
+   struct v4l2_format fmt;
+   struct v4l2_control ctrl;
+   struct v4l2_streamparm parm;
+-  struct v4l2_dbg_chip_ident chip;
+   gint fd_v4l = 0;
+   struct v4l2_mxc_offset off;
+   gint in_width = 0, in_height = 0;
+@@ -461,13 +460,6 @@ mfw_gst_tvsrc_capture_setup (MFWGstTVSRC * v4l_src)
+     return 0;
+   }
+-  if (ioctl (fd_v4l, VIDIOC_DBG_G_CHIP_IDENT, &chip)) {
+-    g_print ("VIDIOC_DBG_G_CHIP_IDENT failed.\n");
+-  } else
+-    g_print ("sensor chip is %s\n", chip.match.name);
+-
+-
+-
+   if (ioctl (fd_v4l, VIDIOC_G_STD, &id) < 0) {
+     g_print ("VIDIOC_G_STD failed\n");
+     close (fd_v4l);
+diff --git a/src/misc/v4l_source/src/mfw_gst_v4lsrc.c b/src/misc/v4l_source/src/mfw_gst_v4lsrc.c
+index 2c2e838..85e7ff0 100755
+--- a/src/misc/v4l_source/src/mfw_gst_v4lsrc.c
++++ b/src/misc/v4l_source/src/mfw_gst_v4lsrc.c
+@@ -464,7 +464,6 @@ mfw_gst_v4lsrc_capture_setup (MFWGstV4LSrc * v4l_src)
+   struct v4l2_format fmt = {0};
+   struct v4l2_control ctrl = {0};
+   struct v4l2_streamparm parm = {0};
+-  struct v4l2_dbg_chip_ident chip = {0};
+   struct v4l2_frmsizeenum fszenum = {0};
+   gint input;
+   gint fd_v4l = 0;
+@@ -476,12 +475,6 @@ mfw_gst_v4lsrc_capture_setup (MFWGstV4LSrc * v4l_src)
+     return 0;
+   }
+-  if (ioctl (fd_v4l, VIDIOC_DBG_G_CHIP_IDENT, &chip)) {
+-    GST_ERROR ("VIDIOC_DBG_G_CHIP_IDENT failed.");
+-  } else
+-    GST_INFO ("sensor chip is %s", chip.match.name);
+-
+-
+   if (v4l_src->crop_pixel) {
+     in_width = v4l_src->capture_width - (2 * v4l_src->crop_pixel);
+     in_height = v4l_src->capture_height - (2 * v4l_src->crop_pixel);
+-- 
+2.0.1
+
diff --git a/package/gstreamer/gst-fsl-plugins/gst-fsl-plugins-0001-gplay-add-missing-include.patch b/package/gstreamer/gst-fsl-plugins/gst-fsl-plugins-0001-gplay-add-missing-include.patch
deleted file mode 100644 (file)
index 19753bc..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-From ed649ccb8ddc724546172d329fca39b23c49b804 Mon Sep 17 00:00:00 2001
-From: "Arnout Vandecappelle (Essensium/Mind)" <arnout@mind.be>
-Date: Mon, 17 Dec 2012 17:58:28 +0100
-Subject: [PATCH] gplay: add missing include
-
-Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
----
- tools/gplay/gst_snapshot.c |    1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/tools/gplay/gst_snapshot.c b/tools/gplay/gst_snapshot.c
-index 40dbb6f..596f399 100755
---- a/tools/gplay/gst_snapshot.c
-+++ b/tools/gplay/gst_snapshot.c
-@@ -22,6 +22,7 @@
- #include <gst/gst.h>
- #include <string.h>
-+#include <stdio.h>
- #include "gst_snapshot.h"
- static void
--- 
diff --git a/package/gstreamer/gst-fsl-plugins/gst-fsl-plugins-0002-Fix-bashism-in-configure-script.patch b/package/gstreamer/gst-fsl-plugins/gst-fsl-plugins-0002-Fix-bashism-in-configure-script.patch
deleted file mode 100644 (file)
index 35617cd..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-From 83b4f84b1c490b9bb816e1ecbc743d80d48cc06d Mon Sep 17 00:00:00 2001
-From: "Arnout Vandecappelle (Essensium/Mind)" <arnout@mind.be>
-Date: Tue, 18 Dec 2012 12:05:22 +0100
-Subject: [PATCH] Fix bashism in configure script.
-
-The configure script uses +=, which is not POSIX. Debians that
-have the default dash as /bin/sh define a variable ending with
-+ instead of appending to it.
-
-Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
----
- configure.ac | 14 +++++++-------
- 1 file changed, 7 insertions(+), 7 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 5968eb6..1a31a06 100755
---- a/configure.ac
-+++ b/configure.ac
-@@ -152,7 +152,7 @@ AC_SUBST(GST_PLUGINS_BASE_LIBS)
- AC_CHECK_HEADERS([vpu_lib.h], [HAVE_VPU_LIB=yes], [HAVE_VPU_LIB=no])
- if test "x$HAVE_VPU_LIB" = "xyes"; then
-     VPU_LIBS=`$PKG_CONFIG --libs libfslvpuwrap 2>/dev/null`
--    VPU_LIBS+=" -lvpu"
-+    VPU_LIBS="$VPU_LIBS -lvpu"
- fi
- AC_SUBST(VPU_LIBS)
-@@ -176,15 +176,15 @@ AC_SUBST(RT_CFLAGS)
- AC_SUBST(RT_LIBS)
- FSL_MM_CORE_CFLAGS=`$PKG_CONFIG --cflags libfslaudiocodec 2>/dev/null`
--FSL_MM_CORE_CFLAGS+=`$PKG_CONFIG --cflags libfslvideocodec 2>/dev/null`
--FSL_MM_CORE_CFLAGS+=`$PKG_CONFIG --cflags libfslparser 2>/dev/null`
--FSL_MM_CORE_CFLAGS+=`$PKG_CONFIG --cflags libfslvpuwrap 2>/dev/null`
-+FSL_MM_CORE_CFLAGS="$FSL_MM_CORE_CFLAGS `$PKG_CONFIG --cflags libfslvideocodec 2>/dev/null`"
-+FSL_MM_CORE_CFLAGS="$FSL_MM_CORE_CFLAGS `$PKG_CONFIG --cflags libfslparser 2>/dev/null`"
-+FSL_MM_CORE_CFLAGS="$FSL_MM_CORE_CFLAGS `$PKG_CONFIG --cflags libfslvpuwrap 2>/dev/null`"
- AC_SUBST(FSL_MM_CORE_CFLAGS)
- FSL_MM_CORE_LIBS=`$PKG_CONFIG --libs libfslaudiocodec 2>/dev/null`
--FSL_MM_CORE_LIBS+=`$PKG_CONFIG --libs libfslvideocodec 2>/dev/null`
--FSL_MM_CORE_LIBS+=`$PKG_CONFIG --libs libfslparser 2>/dev/null`
--FSL_MM_CORE_LIBS+=`$PKG_CONFIG --libs libfslvpuwrap 2>/dev/null`
-+FSL_MM_CORE_LIBS="$FSL_MM_CORE_LIBS `$PKG_CONFIG --libs libfslvideocodec 2>/dev/null`"
-+FSL_MM_CORE_LIBS="$FSL_MM_CORE_LIBS `$PKG_CONFIG --libs libfslparser 2>/dev/null`"
-+FSL_MM_CORE_LIBS="$FSL_MM_CORE_LIBS `$PKG_CONFIG --libs libfslvpuwrap 2>/dev/null`"
- AC_SUBST(FSL_MM_CORE_LIBS)
- EXTRAPLATFORMCFLAGS="-DARM -D_GNUC_"
--- 
diff --git a/package/gstreamer/gst-fsl-plugins/gst-fsl-plugins-0003-Use-proper-objdump.patch b/package/gstreamer/gst-fsl-plugins/gst-fsl-plugins-0003-Use-proper-objdump.patch
deleted file mode 100644 (file)
index b7b8c9f..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-From c58b658a93b1b6d6e94ba0306d58de845012cef6 Mon Sep 17 00:00:00 2001
-From: "Arnout Vandecappelle (Essensium/Mind)" <arnout@mind.be>
-Date: Tue, 18 Dec 2012 12:22:52 +0100
-Subject: [PATCH] Use proper objdump
-
-If the OBJDUMP environment variable is set, that should be used rather
-than the objdump in PATH.
-
-Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
----
- configure.ac |    4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 1a31a06..cc7557d 100755
---- a/configure.ac
-+++ b/configure.ac
-@@ -17,7 +17,7 @@ AC_DEFUN([FIND_PARSER_SONAME],
-     AC_MSG_CHECKING([for lib_$1_parser_$2_elinux.3.0.so soname])
-     path=`$PKG_CONFIG --variable=libdir libfslparser`
-     SONAME=$( $CC -print-file-name=$PKG_CONFIG_SYSROOT_DIR$path/lib_$1_parser_$2_elinux.so | \
--          while read output; do objdump -p $output | \
-+          while read output; do $OBJDUMP -p $output | \
-           grep "SONAME" | \
-           sed -e 's/ \+SONAME \+//'; done 2> /dev/null )
-     if [[ -z "$SONAME" ]]; then
-@@ -36,7 +36,7 @@ AC_DEFUN([FIND_ACODEC_SONAME],
-     AC_MSG_CHECKING([for lib_$1_wrap_$2_elinux.so soname])
-     path=`$PKG_CONFIG --variable=libdir libfslaudiocodec`
-     SONAME=$( $CC -print-file-name=$PKG_CONFIG_SYSROOT_DIR$path/wrap/lib_$1_wrap_$2_elinux.so | \
--          while read output; do objdump -p $output | \
-+          while read output; do $OBJDUMP -p $output | \
-           grep "SONAME" | \
-           sed -e 's/ \+SONAME \+//'; done 2> /dev/null )
-     if [[ -z "$SONAME" ]]; then
--- 
diff --git a/package/gstreamer/gst-fsl-plugins/gst-fsl-plugins-0004-Fix-libgstfsl-linkage-add-lrt-for-shared-memory-func.patch b/package/gstreamer/gst-fsl-plugins/gst-fsl-plugins-0004-Fix-libgstfsl-linkage-add-lrt-for-shared-memory-func.patch
deleted file mode 100644 (file)
index 763703c..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-From 1ca4251d1284f2cb56e31aaec4d369809e2139c9 Mon Sep 17 00:00:00 2001
-From: Peter Seiderer <ps.report@gmx.net>
-Date: Mon, 24 Feb 2014 16:30:39 +0100
-Subject: [PATCH] Fix libgstfsl linkage (add -lrt for shared memory functions).
-
-Fixes runtime failure of gst-fsl-plugins, e.g.:
-(gst-plugin-scanner:1700): GStreamer-WARNING **: Failed to load
-       plugin '/usr/lib/gstreamer-0.10/libmfw_vpu.so':
-       /usr/lib/libgstfsl-0.10.so.0: undefined symbol: shm_open)
-
-Signed-off-by: Peter Seiderer <ps.report@gmx.net>
----
- configure.ac     | 3 +++
- libs/Makefile.am | 2 +-
- 2 files changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index a5d1655..7b5a7a6 100755
---- a/configure.ac
-+++ b/configure.ac
-@@ -170,6 +170,9 @@ AC_CHECK_LIB(ipu, mxc_ipu_lib_task_init, [IPU_LIBS=-lipu], [echo "No libipu arou
- AC_SUBST(IPU_CFLAGS)
- AC_SUBST(IPU_LIBS)
-+AC_SEARCH_LIBS([shm_open], [rt], [SHM_LIBS="-lrt"])
-+AC_SUBST(SHM_LIBS)
-+
- dnl of the POSIX Real-Time Extensions.
- AC_CHECK_LIB(rt, clock_gettime)
- AC_SUBST(RT_CFLAGS)
-diff --git a/libs/Makefile.am b/libs/Makefile.am
-index 2f56bba..5b30657 100755
---- a/libs/Makefile.am
-+++ b/libs/Makefile.am
-@@ -42,7 +42,7 @@ libgstfsl_@GST_MAJORMINOR@_la_CFLAGS  += -DIPULIB
- endif
- libgstfsl_@GST_MAJORMINOR@_la_LDFLAGS = -version-info @GSTMXLIBS_VERSION@
--libgstfsl_@GST_MAJORMINOR@_la_LIBADD = $(GST_BASE_LIBS) -lgstvideo-@GST_MAJORMINOR@ -lgstinterfaces-$(GST_MAJORMINOR) $(IPU_LIBS) $(RT_LIBS)
-+libgstfsl_@GST_MAJORMINOR@_la_LIBADD = $(GST_BASE_LIBS) -lgstvideo-@GST_MAJORMINOR@ -lgstinterfaces-$(GST_MAJORMINOR) $(IPU_LIBS) $(RT_LIBS) $(SHM_LIBS)
- libgstfsl_@GST_MAJORMINOR@includedir = $(includedir)/gstreamer-@GST_MAJORMINOR@/gst/imx-mm
- libgstfsl_@GST_MAJORMINOR@include_HEADERS = \
--- 
-1.8.1.4
-
diff --git a/package/gstreamer/gst-fsl-plugins/gst-fsl-plugins-0005-Remove-use-of-obsolete-VIDIOC_DBG_G_CHIP_IDENT.patch b/package/gstreamer/gst-fsl-plugins/gst-fsl-plugins-0005-Remove-use-of-obsolete-VIDIOC_DBG_G_CHIP_IDENT.patch
deleted file mode 100644 (file)
index 5635275..0000000
+++ /dev/null
@@ -1,69 +0,0 @@
-From ce90794a3458af0aed43b8570cf44cd87900185d Mon Sep 17 00:00:00 2001
-From: Gary Bisson <bisson.gary@gmail.com>
-Date: Fri, 25 Jul 2014 16:44:53 -0700
-Subject: [PATCH] Remove use of obsolete VIDIOC_DBG_G_CHIP_IDENT
-
-This ioctl should never be used in application as
-stated in videodev2.h header.
-Moreover, its use in this plugin was very limited.
-
-Signed-off-by: Gary Bisson <bisson.gary@gmail.com>
----
- src/misc/tvsrc/src/mfw_gst_tvsrc.c       | 8 --------
- src/misc/v4l_source/src/mfw_gst_v4lsrc.c | 7 -------
- 2 files changed, 15 deletions(-)
-
-diff --git a/src/misc/tvsrc/src/mfw_gst_tvsrc.c b/src/misc/tvsrc/src/mfw_gst_tvsrc.c
-index 67e0cd2..f495b6f 100755
---- a/src/misc/tvsrc/src/mfw_gst_tvsrc.c
-+++ b/src/misc/tvsrc/src/mfw_gst_tvsrc.c
-@@ -450,7 +450,6 @@ mfw_gst_tvsrc_capture_setup (MFWGstTVSRC * v4l_src)
-   struct v4l2_format fmt;
-   struct v4l2_control ctrl;
-   struct v4l2_streamparm parm;
--  struct v4l2_dbg_chip_ident chip;
-   gint fd_v4l = 0;
-   struct v4l2_mxc_offset off;
-   gint in_width = 0, in_height = 0;
-@@ -461,13 +460,6 @@ mfw_gst_tvsrc_capture_setup (MFWGstTVSRC * v4l_src)
-     return 0;
-   }
--  if (ioctl (fd_v4l, VIDIOC_DBG_G_CHIP_IDENT, &chip)) {
--    g_print ("VIDIOC_DBG_G_CHIP_IDENT failed.\n");
--  } else
--    g_print ("sensor chip is %s\n", chip.match.name);
--
--
--
-   if (ioctl (fd_v4l, VIDIOC_G_STD, &id) < 0) {
-     g_print ("VIDIOC_G_STD failed\n");
-     close (fd_v4l);
-diff --git a/src/misc/v4l_source/src/mfw_gst_v4lsrc.c b/src/misc/v4l_source/src/mfw_gst_v4lsrc.c
-index 2c2e838..85e7ff0 100755
---- a/src/misc/v4l_source/src/mfw_gst_v4lsrc.c
-+++ b/src/misc/v4l_source/src/mfw_gst_v4lsrc.c
-@@ -464,7 +464,6 @@ mfw_gst_v4lsrc_capture_setup (MFWGstV4LSrc * v4l_src)
-   struct v4l2_format fmt = {0};
-   struct v4l2_control ctrl = {0};
-   struct v4l2_streamparm parm = {0};
--  struct v4l2_dbg_chip_ident chip = {0};
-   struct v4l2_frmsizeenum fszenum = {0};
-   gint input;
-   gint fd_v4l = 0;
-@@ -476,12 +475,6 @@ mfw_gst_v4lsrc_capture_setup (MFWGstV4LSrc * v4l_src)
-     return 0;
-   }
--  if (ioctl (fd_v4l, VIDIOC_DBG_G_CHIP_IDENT, &chip)) {
--    GST_ERROR ("VIDIOC_DBG_G_CHIP_IDENT failed.");
--  } else
--    GST_INFO ("sensor chip is %s", chip.match.name);
--
--
-   if (v4l_src->crop_pixel) {
-     in_width = v4l_src->capture_width - (2 * v4l_src->crop_pixel);
-     in_height = v4l_src->capture_height - (2 * v4l_src->crop_pixel);
--- 
-2.0.1
-
diff --git a/package/gstreamer/gst-plugin-x170/0001-correct-CFLAGS.patch b/package/gstreamer/gst-plugin-x170/0001-correct-CFLAGS.patch
new file mode 100644 (file)
index 0000000..9c32e46
--- /dev/null
@@ -0,0 +1,28 @@
+The configure script is correctly getting the CFLAGS needed to compile a plugin
+for gstreamer and storing them in GST_BASE_CFLAGS but the Makefiles are never
+making use of those.
+
+We actually have to use AM_CPPFLAGS as AM_CFLAGS is used everywhere but on the
+real compiling rule...
+
+Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
+---
+ src/Makefile.am | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/Makefile.am b/src/Makefile.am
+index 8cb51d1..6af5d91 100644
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -5,6 +5,8 @@
+ ##############################################################################
+ plugin_LTLIBRARIES = libgstx170.la
++AM_CPPFLAGS = @GST_BASE_CFLAGS@
++
+ ##############################################################################
+ # for the next set of variables, rename the prefix if you renamed the .la,   #
+ #  e.g. libgstplugin_la_SOURCES => libmysomething_la_SOURCES                 #
+-- 
+1.8.1.2
+
diff --git a/package/gstreamer/gst-plugin-x170/gst-plugin-x170-01-correct-CFLAGS.patch b/package/gstreamer/gst-plugin-x170/gst-plugin-x170-01-correct-CFLAGS.patch
deleted file mode 100644 (file)
index 9c32e46..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-The configure script is correctly getting the CFLAGS needed to compile a plugin
-for gstreamer and storing them in GST_BASE_CFLAGS but the Makefiles are never
-making use of those.
-
-We actually have to use AM_CPPFLAGS as AM_CFLAGS is used everywhere but on the
-real compiling rule...
-
-Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
----
- src/Makefile.am | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/src/Makefile.am b/src/Makefile.am
-index 8cb51d1..6af5d91 100644
---- a/src/Makefile.am
-+++ b/src/Makefile.am
-@@ -5,6 +5,8 @@
- ##############################################################################
- plugin_LTLIBRARIES = libgstx170.la
-+AM_CPPFLAGS = @GST_BASE_CFLAGS@
-+
- ##############################################################################
- # for the next set of variables, rename the prefix if you renamed the .la,   #
- #  e.g. libgstplugin_la_SOURCES => libmysomething_la_SOURCES                 #
--- 
-1.8.1.2
-
diff --git a/package/gstreamer/gst-plugins-bad/0001-opus-jpegformat-unbreak-non-debug-build.patch b/package/gstreamer/gst-plugins-bad/0001-opus-jpegformat-unbreak-non-debug-build.patch
new file mode 100644 (file)
index 0000000..2c98c3e
--- /dev/null
@@ -0,0 +1,78 @@
+From 1725e702a3622cb45c8142622dd419fa0c410ac9 Mon Sep 17 00:00:00 2001
+From: Peter Korsgaard <jacmet@sunsite.dk>
+Date: Wed, 12 Sep 2012 09:10:35 +0200
+Subject: [PATCH] gst-plugins-bad: opus + jpegformat: unbreak non-debug build
+
+opus + jpegformat plugin builds fail when gstreamer is configured with
+--disable-gst-debug as they are checking the GST_DISABLE_DEBUG symbol
+instead of GST_DISABLE_GST_DEBUG.
+
+Submitted upstream as https://bugzilla.gnome.org/show_bug.cgi?id=683850
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ ext/opus/gstopusdec.c         |    2 +-
+ ext/opus/gstopusenc.c         |    4 ++--
+ gst/jpegformat/gstjpegparse.c |    4 ++--
+ 3 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/ext/opus/gstopusdec.c b/ext/opus/gstopusdec.c
+index 0e2805c..ab7221d 100644
+--- a/ext/opus/gstopusdec.c
++++ b/ext/opus/gstopusdec.c
+@@ -357,7 +357,7 @@ opus_dec_chain_parse_data (GstOpusDec * dec, GstBuffer * buffer)
+     GST_DEBUG_OBJECT (dec, "Creating decoder with %d channels, %d Hz",
+         dec->n_channels, dec->sample_rate);
+-#ifndef GST_DISABLE_DEBUG
++#ifndef GST_DISABLE_GST_DEBUG
+     gst_opus_common_log_channel_mapping_table (GST_ELEMENT (dec), opusdec_debug,
+         "Mapping table", dec->n_channels, dec->channel_mapping);
+ #endif
+diff --git a/ext/opus/gstopusenc.c b/ext/opus/gstopusenc.c
+index 240a2cb..d991795 100644
+--- a/ext/opus/gstopusenc.c
++++ b/ext/opus/gstopusenc.c
+@@ -589,7 +589,7 @@ gst_opus_enc_setup_channel_mappings (GstOpusEnc * enc,
+       }
+     }
+-#ifndef GST_DISABLE_DEBUG
++#ifndef GST_DISABLE_GST_DEBUG
+     GST_INFO_OBJECT (enc,
+         "Mapping tables built: %d channels, %d stereo streams", enc->n_channels,
+         enc->n_stereo_streams);
+@@ -654,7 +654,7 @@ gst_opus_enc_setup (GstOpusEnc * enc)
+ {
+   int error = OPUS_OK;
+-#ifndef GST_DISABLE_DEBUG
++#ifndef GST_DISABLE_GST_DEBUG
+   GST_DEBUG_OBJECT (enc,
+       "setup: %d Hz, %d channels, %d stereo streams, family %d",
+       enc->sample_rate, enc->n_channels, enc->n_stereo_streams,
+diff --git a/gst/jpegformat/gstjpegparse.c b/gst/jpegformat/gstjpegparse.c
+index f984a52..b4af9ed 100644
+--- a/gst/jpegformat/gstjpegparse.c
++++ b/gst/jpegformat/gstjpegparse.c
+@@ -545,7 +545,7 @@ gst_jpeg_parse_skip_marker (GstJpegParse * parse,
+   if (!gst_byte_reader_get_uint16_be (reader, &size))
+     return FALSE;
+-#ifndef GST_DISABLE_DEBUG
++#ifndef GST_DISABLE_GST_DEBUG
+   /* We'd pry the id of the skipped application segment */
+   if (marker >= APP0 && marker <= APP15) {
+     const gchar *id_str = NULL;
+@@ -561,7 +561,7 @@ gst_jpeg_parse_skip_marker (GstJpegParse * parse,
+ #else
+   GST_DEBUG_OBJECT (parse, "unhandled marker %x skiping %u bytes", marker,
+       size);
+-#endif // GST_DISABLE_DEBUG
++#endif // GST_DISABLE_GST_DEBUG
+   if (!gst_byte_reader_skip (reader, size - 2))
+     return FALSE;
+-- 
+1.7.10
+
diff --git a/package/gstreamer/gst-plugins-bad/0002-fix-dfb-example.patch b/package/gstreamer/gst-plugins-bad/0002-fix-dfb-example.patch
new file mode 100644 (file)
index 0000000..b205748
--- /dev/null
@@ -0,0 +1,22 @@
+Fix dfb-example
+
+Order of inclusion gives a strange effect on the definition of
+gst_debug_log. Swapping the include statements solve it.
+
+Not upstreamed since there will be no more updates to this version
+of gst-plugins-bad.
+
+Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
+---
+diff -rup gst-plugins-bad-0.10.23/ext/directfb/dfb-example.c gst-plugins-bad-0.10.23.fixed/ext/directfb/dfb-example.c
+--- gst-plugins-bad-0.10.23/ext/directfb/dfb-example.c 2011-12-11 19:49:11.000000000 +0100
++++ gst-plugins-bad-0.10.23.fixed/ext/directfb/dfb-example.c   2013-05-13 00:32:00.507469138 +0200
+@@ -1,7 +1,7 @@
+-#include <directfb.h>
+ #include <stdio.h>
+ #include <gst/gst.h>
++#include <directfb.h>
+ static IDirectFB *dfb = NULL;
+ static IDirectFBSurface *primary = NULL;
diff --git a/package/gstreamer/gst-plugins-bad/gst-plugins-bad-0002-fix-dfb-example.patch b/package/gstreamer/gst-plugins-bad/gst-plugins-bad-0002-fix-dfb-example.patch
deleted file mode 100644 (file)
index b205748..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-Fix dfb-example
-
-Order of inclusion gives a strange effect on the definition of
-gst_debug_log. Swapping the include statements solve it.
-
-Not upstreamed since there will be no more updates to this version
-of gst-plugins-bad.
-
-Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
----
-diff -rup gst-plugins-bad-0.10.23/ext/directfb/dfb-example.c gst-plugins-bad-0.10.23.fixed/ext/directfb/dfb-example.c
---- gst-plugins-bad-0.10.23/ext/directfb/dfb-example.c 2011-12-11 19:49:11.000000000 +0100
-+++ gst-plugins-bad-0.10.23.fixed/ext/directfb/dfb-example.c   2013-05-13 00:32:00.507469138 +0200
-@@ -1,7 +1,7 @@
--#include <directfb.h>
- #include <stdio.h>
- #include <gst/gst.h>
-+#include <directfb.h>
- static IDirectFB *dfb = NULL;
- static IDirectFBSurface *primary = NULL;
diff --git a/package/gstreamer/gst-plugins-bad/gst-plugins-bad-opus-jpegformat-unbreak-non-debug-build.patch b/package/gstreamer/gst-plugins-bad/gst-plugins-bad-opus-jpegformat-unbreak-non-debug-build.patch
deleted file mode 100644 (file)
index 2c98c3e..0000000
+++ /dev/null
@@ -1,78 +0,0 @@
-From 1725e702a3622cb45c8142622dd419fa0c410ac9 Mon Sep 17 00:00:00 2001
-From: Peter Korsgaard <jacmet@sunsite.dk>
-Date: Wed, 12 Sep 2012 09:10:35 +0200
-Subject: [PATCH] gst-plugins-bad: opus + jpegformat: unbreak non-debug build
-
-opus + jpegformat plugin builds fail when gstreamer is configured with
---disable-gst-debug as they are checking the GST_DISABLE_DEBUG symbol
-instead of GST_DISABLE_GST_DEBUG.
-
-Submitted upstream as https://bugzilla.gnome.org/show_bug.cgi?id=683850
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- ext/opus/gstopusdec.c         |    2 +-
- ext/opus/gstopusenc.c         |    4 ++--
- gst/jpegformat/gstjpegparse.c |    4 ++--
- 3 files changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/ext/opus/gstopusdec.c b/ext/opus/gstopusdec.c
-index 0e2805c..ab7221d 100644
---- a/ext/opus/gstopusdec.c
-+++ b/ext/opus/gstopusdec.c
-@@ -357,7 +357,7 @@ opus_dec_chain_parse_data (GstOpusDec * dec, GstBuffer * buffer)
-     GST_DEBUG_OBJECT (dec, "Creating decoder with %d channels, %d Hz",
-         dec->n_channels, dec->sample_rate);
--#ifndef GST_DISABLE_DEBUG
-+#ifndef GST_DISABLE_GST_DEBUG
-     gst_opus_common_log_channel_mapping_table (GST_ELEMENT (dec), opusdec_debug,
-         "Mapping table", dec->n_channels, dec->channel_mapping);
- #endif
-diff --git a/ext/opus/gstopusenc.c b/ext/opus/gstopusenc.c
-index 240a2cb..d991795 100644
---- a/ext/opus/gstopusenc.c
-+++ b/ext/opus/gstopusenc.c
-@@ -589,7 +589,7 @@ gst_opus_enc_setup_channel_mappings (GstOpusEnc * enc,
-       }
-     }
--#ifndef GST_DISABLE_DEBUG
-+#ifndef GST_DISABLE_GST_DEBUG
-     GST_INFO_OBJECT (enc,
-         "Mapping tables built: %d channels, %d stereo streams", enc->n_channels,
-         enc->n_stereo_streams);
-@@ -654,7 +654,7 @@ gst_opus_enc_setup (GstOpusEnc * enc)
- {
-   int error = OPUS_OK;
--#ifndef GST_DISABLE_DEBUG
-+#ifndef GST_DISABLE_GST_DEBUG
-   GST_DEBUG_OBJECT (enc,
-       "setup: %d Hz, %d channels, %d stereo streams, family %d",
-       enc->sample_rate, enc->n_channels, enc->n_stereo_streams,
-diff --git a/gst/jpegformat/gstjpegparse.c b/gst/jpegformat/gstjpegparse.c
-index f984a52..b4af9ed 100644
---- a/gst/jpegformat/gstjpegparse.c
-+++ b/gst/jpegformat/gstjpegparse.c
-@@ -545,7 +545,7 @@ gst_jpeg_parse_skip_marker (GstJpegParse * parse,
-   if (!gst_byte_reader_get_uint16_be (reader, &size))
-     return FALSE;
--#ifndef GST_DISABLE_DEBUG
-+#ifndef GST_DISABLE_GST_DEBUG
-   /* We'd pry the id of the skipped application segment */
-   if (marker >= APP0 && marker <= APP15) {
-     const gchar *id_str = NULL;
-@@ -561,7 +561,7 @@ gst_jpeg_parse_skip_marker (GstJpegParse * parse,
- #else
-   GST_DEBUG_OBJECT (parse, "unhandled marker %x skiping %u bytes", marker,
-       size);
--#endif // GST_DISABLE_DEBUG
-+#endif // GST_DISABLE_GST_DEBUG
-   if (!gst_byte_reader_skip (reader, size - 2))
-     return FALSE;
--- 
-1.7.10
-
diff --git a/package/gstreamer/gst-plugins-base/0001-tremor.patch b/package/gstreamer/gst-plugins-base/0001-tremor.patch
new file mode 100644 (file)
index 0000000..fa8785b
--- /dev/null
@@ -0,0 +1,139 @@
+From 0088753651350de3060ece22c1be4153b6009515 Mon Sep 17 00:00:00 2001
+From: Peter Korsgaard <jacmet@sunsite.dk>
+Date: Wed, 25 Jan 2012 23:53:04 +0100
+Subject: [PATCH] base: vorbisdeclib: support modern Tremor versions
+
+Reported upstream as https://bugzilla.gnome.org/show_bug.cgi?id=668726
+
+Tremor changed to use standard libogg rather than its own incompatible
+copy back in Aug 2010 (r17375), causing gst-plugin-base build to fail.
+
+Tremolo so far unfortunately hasn't been updated. Restructure
+vorbisdeclib.h so the legacy _ogg_packet_wrapper code is only used for
+Tremolo.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ ext/vorbis/gstvorbisdeclib.h |   77 ++++++++++++++++++++++-------------------
+ 1 files changed, 41 insertions(+), 36 deletions(-)
+
+diff --git a/ext/vorbis/gstvorbisdeclib.h b/ext/vorbis/gstvorbisdeclib.h
+index ca00af9..e147591 100644
+--- a/ext/vorbis/gstvorbisdeclib.h
++++ b/ext/vorbis/gstvorbisdeclib.h
+@@ -29,11 +29,6 @@
+ #ifndef TREMOR
+-#include <vorbis/codec.h>
+-
+-typedef float                          vorbis_sample_t;
+-typedef ogg_packet                     ogg_packet_wrapper;
+-
+ #define GST_VORBIS_DEC_DESCRIPTION "decode raw vorbis streams to float audio"
+ #define GST_VORBIS_DEC_SRC_CAPS \
+@@ -47,6 +42,42 @@ typedef ogg_packet                     ogg_packet_wrapper;
+ #define GST_VORBIS_DEC_GLIB_TYPE_NAME      GstVorbisDec
++#else /* TREMOR */
++
++#define GST_VORBIS_DEC_DESCRIPTION "decode raw vorbis streams to integer audio"
++
++#define GST_VORBIS_DEC_SRC_CAPS \
++    GST_STATIC_CAPS ("audio/x-raw-int, "   \
++        "rate = (int) [ 1, MAX ], "        \
++        "channels = (int) [ 1, 6 ], "      \
++        "endianness = (int) BYTE_ORDER, "  \
++        "width = (int) { 16, 32 }, "       \
++        "depth = (int) 16, "               \
++        "signed = (boolean) true")
++
++#define GST_VORBIS_DEC_DEFAULT_SAMPLE_WIDTH           (16)
++
++/* we need a different type name here */
++#define GST_VORBIS_DEC_GLIB_TYPE_NAME      GstIVorbisDec
++
++/* and still have it compile */
++typedef struct _GstVorbisDec               GstIVorbisDec;
++typedef struct _GstVorbisDecClass          GstIVorbisDecClass;
++
++#endif /* TREMOR */
++
++#ifndef USE_TREMOLO
++
++#ifdef TREMOR
++ #include <tremor/ivorbiscodec.h>
++ typedef ogg_int32_t                    vorbis_sample_t;
++#else
++ #include <vorbis/codec.h>
++ typedef float                          vorbis_sample_t;
++#endif
++
++typedef ogg_packet                     ogg_packet_wrapper;
++
+ static inline guint8 *
+ gst_ogg_packet_data (ogg_packet * p)
+ {
+@@ -72,17 +103,11 @@ gst_ogg_packet_from_wrapper (ogg_packet_wrapper * packet)
+   return packet;
+ }
+-#else
+-
+-#ifdef USE_TREMOLO
+-  #include <Tremolo/ivorbiscodec.h>
+-  #include <Tremolo/codec_internal.h>
+-  typedef ogg_int16_t                    vorbis_sample_t;
+-#else
+-  #include <tremor/ivorbiscodec.h>
+-  typedef ogg_int32_t                    vorbis_sample_t;
+-#endif
++#else /* USE_TREMOLO */
++#include <Tremolo/ivorbiscodec.h>
++#include <Tremolo/codec_internal.h>
++typedef ogg_int16_t                    vorbis_sample_t;
+ typedef struct _ogg_packet_wrapper     ogg_packet_wrapper;
+ struct _ogg_packet_wrapper {
+@@ -91,26 +116,6 @@ struct _ogg_packet_wrapper {
+   ogg_buffer          buf;
+ };
+-#define GST_VORBIS_DEC_DESCRIPTION "decode raw vorbis streams to integer audio"
+-
+-#define GST_VORBIS_DEC_SRC_CAPS \
+-    GST_STATIC_CAPS ("audio/x-raw-int, "   \
+-        "rate = (int) [ 1, MAX ], "        \
+-        "channels = (int) [ 1, 6 ], "      \
+-        "endianness = (int) BYTE_ORDER, "  \
+-        "width = (int) { 16, 32 }, "       \
+-        "depth = (int) 16, "               \
+-        "signed = (boolean) true")
+-
+-#define GST_VORBIS_DEC_DEFAULT_SAMPLE_WIDTH           (16)
+-
+-/* we need a different type name here */
+-#define GST_VORBIS_DEC_GLIB_TYPE_NAME      GstIVorbisDec
+-
+-/* and still have it compile */
+-typedef struct _GstVorbisDec               GstIVorbisDec;
+-typedef struct _GstVorbisDecClass          GstIVorbisDecClass;
+-
+ /* compensate minor variation */
+ #define vorbis_synthesis(a, b)             vorbis_synthesis (a, b, 1)
+@@ -154,7 +159,7 @@ gst_ogg_packet_from_wrapper (ogg_packet_wrapper * packet)
+   return &(packet->packet);
+ }
+-#endif
++#endif /* USE_TREMOLO */
+ typedef void (*CopySampleFunc)(vorbis_sample_t *out, vorbis_sample_t **in,
+                            guint samples, gint channels, gint width);
+-- 
+1.7.8.3
+
diff --git a/package/gstreamer/gst-plugins-base/gst-plugins-base-tremor.patch b/package/gstreamer/gst-plugins-base/gst-plugins-base-tremor.patch
deleted file mode 100644 (file)
index fa8785b..0000000
+++ /dev/null
@@ -1,139 +0,0 @@
-From 0088753651350de3060ece22c1be4153b6009515 Mon Sep 17 00:00:00 2001
-From: Peter Korsgaard <jacmet@sunsite.dk>
-Date: Wed, 25 Jan 2012 23:53:04 +0100
-Subject: [PATCH] base: vorbisdeclib: support modern Tremor versions
-
-Reported upstream as https://bugzilla.gnome.org/show_bug.cgi?id=668726
-
-Tremor changed to use standard libogg rather than its own incompatible
-copy back in Aug 2010 (r17375), causing gst-plugin-base build to fail.
-
-Tremolo so far unfortunately hasn't been updated. Restructure
-vorbisdeclib.h so the legacy _ogg_packet_wrapper code is only used for
-Tremolo.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- ext/vorbis/gstvorbisdeclib.h |   77 ++++++++++++++++++++++-------------------
- 1 files changed, 41 insertions(+), 36 deletions(-)
-
-diff --git a/ext/vorbis/gstvorbisdeclib.h b/ext/vorbis/gstvorbisdeclib.h
-index ca00af9..e147591 100644
---- a/ext/vorbis/gstvorbisdeclib.h
-+++ b/ext/vorbis/gstvorbisdeclib.h
-@@ -29,11 +29,6 @@
- #ifndef TREMOR
--#include <vorbis/codec.h>
--
--typedef float                          vorbis_sample_t;
--typedef ogg_packet                     ogg_packet_wrapper;
--
- #define GST_VORBIS_DEC_DESCRIPTION "decode raw vorbis streams to float audio"
- #define GST_VORBIS_DEC_SRC_CAPS \
-@@ -47,6 +42,42 @@ typedef ogg_packet                     ogg_packet_wrapper;
- #define GST_VORBIS_DEC_GLIB_TYPE_NAME      GstVorbisDec
-+#else /* TREMOR */
-+
-+#define GST_VORBIS_DEC_DESCRIPTION "decode raw vorbis streams to integer audio"
-+
-+#define GST_VORBIS_DEC_SRC_CAPS \
-+    GST_STATIC_CAPS ("audio/x-raw-int, "   \
-+        "rate = (int) [ 1, MAX ], "        \
-+        "channels = (int) [ 1, 6 ], "      \
-+        "endianness = (int) BYTE_ORDER, "  \
-+        "width = (int) { 16, 32 }, "       \
-+        "depth = (int) 16, "               \
-+        "signed = (boolean) true")
-+
-+#define GST_VORBIS_DEC_DEFAULT_SAMPLE_WIDTH           (16)
-+
-+/* we need a different type name here */
-+#define GST_VORBIS_DEC_GLIB_TYPE_NAME      GstIVorbisDec
-+
-+/* and still have it compile */
-+typedef struct _GstVorbisDec               GstIVorbisDec;
-+typedef struct _GstVorbisDecClass          GstIVorbisDecClass;
-+
-+#endif /* TREMOR */
-+
-+#ifndef USE_TREMOLO
-+
-+#ifdef TREMOR
-+ #include <tremor/ivorbiscodec.h>
-+ typedef ogg_int32_t                    vorbis_sample_t;
-+#else
-+ #include <vorbis/codec.h>
-+ typedef float                          vorbis_sample_t;
-+#endif
-+
-+typedef ogg_packet                     ogg_packet_wrapper;
-+
- static inline guint8 *
- gst_ogg_packet_data (ogg_packet * p)
- {
-@@ -72,17 +103,11 @@ gst_ogg_packet_from_wrapper (ogg_packet_wrapper * packet)
-   return packet;
- }
--#else
--
--#ifdef USE_TREMOLO
--  #include <Tremolo/ivorbiscodec.h>
--  #include <Tremolo/codec_internal.h>
--  typedef ogg_int16_t                    vorbis_sample_t;
--#else
--  #include <tremor/ivorbiscodec.h>
--  typedef ogg_int32_t                    vorbis_sample_t;
--#endif
-+#else /* USE_TREMOLO */
-+#include <Tremolo/ivorbiscodec.h>
-+#include <Tremolo/codec_internal.h>
-+typedef ogg_int16_t                    vorbis_sample_t;
- typedef struct _ogg_packet_wrapper     ogg_packet_wrapper;
- struct _ogg_packet_wrapper {
-@@ -91,26 +116,6 @@ struct _ogg_packet_wrapper {
-   ogg_buffer          buf;
- };
--#define GST_VORBIS_DEC_DESCRIPTION "decode raw vorbis streams to integer audio"
--
--#define GST_VORBIS_DEC_SRC_CAPS \
--    GST_STATIC_CAPS ("audio/x-raw-int, "   \
--        "rate = (int) [ 1, MAX ], "        \
--        "channels = (int) [ 1, 6 ], "      \
--        "endianness = (int) BYTE_ORDER, "  \
--        "width = (int) { 16, 32 }, "       \
--        "depth = (int) 16, "               \
--        "signed = (boolean) true")
--
--#define GST_VORBIS_DEC_DEFAULT_SAMPLE_WIDTH           (16)
--
--/* we need a different type name here */
--#define GST_VORBIS_DEC_GLIB_TYPE_NAME      GstIVorbisDec
--
--/* and still have it compile */
--typedef struct _GstVorbisDec               GstIVorbisDec;
--typedef struct _GstVorbisDecClass          GstIVorbisDecClass;
--
- /* compensate minor variation */
- #define vorbis_synthesis(a, b)             vorbis_synthesis (a, b, 1)
-@@ -154,7 +159,7 @@ gst_ogg_packet_from_wrapper (ogg_packet_wrapper * packet)
-   return &(packet->packet);
- }
--#endif
-+#endif /* USE_TREMOLO */
- typedef void (*CopySampleFunc)(vorbis_sample_t *out, vorbis_sample_t **in,
-                            guint samples, gint channels, gint width);
--- 
-1.7.8.3
-
diff --git a/package/gstreamer/gst-plugins-good/0001-linux36.patch b/package/gstreamer/gst-plugins-good/0001-linux36.patch
new file mode 100644 (file)
index 0000000..5d7cd93
--- /dev/null
@@ -0,0 +1,37 @@
+Fix building with Linux headers 3.6
+
+Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
+
+From bfb1ac952b4c3caaba0297bbe7dc73ea92f9b292 Mon Sep 17 00:00:00 2001
+From: Matthias Clasen <mclasen@redhat.com>
+Date: Thu, 09 Aug 2012 07:35:23 +0000
+Subject: v4l2: fix build with recent kernels, the v4l2_buffer input field was removed
+
+This was unused apparently and removed in the kernel in commit:
+
+ From 2b719d7baf490e24ce7d817c6337b7c87fda84c1 Mon Sep 17 00:00:00 2001
+ From: Sakari Ailus <sakari.ailus@iki.fi>
+ Date: Wed, 2 May 2012 09:40:03 -0300
+ Subject: [PATCH] [media] v4l: drop v4l2_buffer.input and V4L2_BUF_FLAG_INPUT
+
+ Remove input field in struct v4l2_buffer and flag V4L2_BUF_FLAG_INPUT which
+ tells the former is valid. The flag is used by no driver currently.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=681491
+---
+(limited to 'sys/v4l2/gstv4l2bufferpool.c')
+
+diff --git a/sys/v4l2/gstv4l2bufferpool.c b/sys/v4l2/gstv4l2bufferpool.c
+index 2e3a563..5aaed5a 100644
+--- a/sys/v4l2/gstv4l2bufferpool.c
++++ b/sys/v4l2/gstv4l2bufferpool.c
+@@ -182,7 +182,6 @@ gst_v4l2_buffer_new (GstV4l2BufferPool * pool, guint index, GstCaps * caps)
+     GST_LOG_OBJECT (pool->v4l2elem, "  MMAP offset:  %u",
+         ret->vbuffer.m.offset);
+   GST_LOG_OBJECT (pool->v4l2elem, "  length:    %u", ret->vbuffer.length);
+-  GST_LOG_OBJECT (pool->v4l2elem, "  input:     %u", ret->vbuffer.input);
+   ret->mmap_length = ret->vbuffer.length;
+   data = (guint8 *) v4l2_mmap (0, ret->vbuffer.length,
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/package/gstreamer/gst-plugins-good/0002-v4l2-fix-compilation-against-newer-kernel-headers.patch b/package/gstreamer/gst-plugins-good/0002-v4l2-fix-compilation-against-newer-kernel-headers.patch
new file mode 100644 (file)
index 0000000..62c3bb2
--- /dev/null
@@ -0,0 +1,30 @@
+From 8e633d2059cb835448021cf79becb487aff10975 Mon Sep 17 00:00:00 2001
+From: Bastien Nocera <hadess@hadess.net>
+Date: Mon, 18 Mar 2013 14:59:35 +0000
+Subject: [PATCH] v4l2: fix compilation against newer kernel headers as on
+ FC19
+
+---
+ sys/v4l2/v4l2_calls.c |    4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/sys/v4l2/v4l2_calls.c b/sys/v4l2/v4l2_calls.c
+index 07d390a..4c10f4f 100644
+--- a/sys/v4l2/v4l2_calls.c
++++ b/sys/v4l2/v4l2_calls.c
+@@ -291,8 +291,12 @@ gst_v4l2_fill_lists (GstV4l2Object * v4l2object)
+         break;
+       case V4L2_CID_HFLIP:
+       case V4L2_CID_VFLIP:
++#ifndef V4L2_CID_PAN_RESET
+       case V4L2_CID_HCENTER:
++#endif
++#ifndef V4L2_CID_TILT_RESET
+       case V4L2_CID_VCENTER:
++#endif
+ #ifdef V4L2_CID_PAN_RESET
+       case V4L2_CID_PAN_RESET:
+ #endif
+-- 
+1.7.10.4
+
diff --git a/package/gstreamer/gst-plugins-good/gst-plugins-good-linux36.patch b/package/gstreamer/gst-plugins-good/gst-plugins-good-linux36.patch
deleted file mode 100644 (file)
index 5d7cd93..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-Fix building with Linux headers 3.6
-
-Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
-
-From bfb1ac952b4c3caaba0297bbe7dc73ea92f9b292 Mon Sep 17 00:00:00 2001
-From: Matthias Clasen <mclasen@redhat.com>
-Date: Thu, 09 Aug 2012 07:35:23 +0000
-Subject: v4l2: fix build with recent kernels, the v4l2_buffer input field was removed
-
-This was unused apparently and removed in the kernel in commit:
-
- From 2b719d7baf490e24ce7d817c6337b7c87fda84c1 Mon Sep 17 00:00:00 2001
- From: Sakari Ailus <sakari.ailus@iki.fi>
- Date: Wed, 2 May 2012 09:40:03 -0300
- Subject: [PATCH] [media] v4l: drop v4l2_buffer.input and V4L2_BUF_FLAG_INPUT
-
- Remove input field in struct v4l2_buffer and flag V4L2_BUF_FLAG_INPUT which
- tells the former is valid. The flag is used by no driver currently.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=681491
----
-(limited to 'sys/v4l2/gstv4l2bufferpool.c')
-
-diff --git a/sys/v4l2/gstv4l2bufferpool.c b/sys/v4l2/gstv4l2bufferpool.c
-index 2e3a563..5aaed5a 100644
---- a/sys/v4l2/gstv4l2bufferpool.c
-+++ b/sys/v4l2/gstv4l2bufferpool.c
-@@ -182,7 +182,6 @@ gst_v4l2_buffer_new (GstV4l2BufferPool * pool, guint index, GstCaps * caps)
-     GST_LOG_OBJECT (pool->v4l2elem, "  MMAP offset:  %u",
-         ret->vbuffer.m.offset);
-   GST_LOG_OBJECT (pool->v4l2elem, "  length:    %u", ret->vbuffer.length);
--  GST_LOG_OBJECT (pool->v4l2elem, "  input:     %u", ret->vbuffer.input);
-   ret->mmap_length = ret->vbuffer.length;
-   data = (guint8 *) v4l2_mmap (0, ret->vbuffer.length,
---
-cgit v0.9.0.2-2-gbebe
diff --git a/package/gstreamer/gst-plugins-good/gst-plugins-good-v4l2-fix-compilation-against-newer-kernel-headers.patch b/package/gstreamer/gst-plugins-good/gst-plugins-good-v4l2-fix-compilation-against-newer-kernel-headers.patch
deleted file mode 100644 (file)
index 62c3bb2..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-From 8e633d2059cb835448021cf79becb487aff10975 Mon Sep 17 00:00:00 2001
-From: Bastien Nocera <hadess@hadess.net>
-Date: Mon, 18 Mar 2013 14:59:35 +0000
-Subject: [PATCH] v4l2: fix compilation against newer kernel headers as on
- FC19
-
----
- sys/v4l2/v4l2_calls.c |    4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/sys/v4l2/v4l2_calls.c b/sys/v4l2/v4l2_calls.c
-index 07d390a..4c10f4f 100644
---- a/sys/v4l2/v4l2_calls.c
-+++ b/sys/v4l2/v4l2_calls.c
-@@ -291,8 +291,12 @@ gst_v4l2_fill_lists (GstV4l2Object * v4l2object)
-         break;
-       case V4L2_CID_HFLIP:
-       case V4L2_CID_VFLIP:
-+#ifndef V4L2_CID_PAN_RESET
-       case V4L2_CID_HCENTER:
-+#endif
-+#ifndef V4L2_CID_TILT_RESET
-       case V4L2_CID_VCENTER:
-+#endif
- #ifdef V4L2_CID_PAN_RESET
-       case V4L2_CID_PAN_RESET:
- #endif
--- 
-1.7.10.4
-
diff --git a/package/gstreamer/gstreamer/0001-bison3.patch b/package/gstreamer/gstreamer/0001-bison3.patch
new file mode 100644 (file)
index 0000000..f9ec52d
--- /dev/null
@@ -0,0 +1,24 @@
+Fix deprecation from bison 3.0+
+From http://comments.gmane.org/gmane.linux.lfs.beyond.devel/24620
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura gstreamer-0.10.36.orig/gst/parse/grammar.y gstreamer-0.10.36/gst/parse/grammar.y
+--- gstreamer-0.10.36.orig/gst/parse/grammar.y 2013-10-04 09:52:21.685282055 -0300
++++ gstreamer-0.10.36/gst/parse/grammar.y      2013-10-04 10:21:54.800211238 -0300
+@@ -26,7 +26,6 @@
+  */
+
+ #define YYERROR_VERBOSE 1
+-#define YYLEX_PARAM scanner
+
+ #define YYENABLE_NLS 0
+
+@@ -648,6 +647,7 @@
+ %right '.'
+ %left '!' '='
+
++%lex-param { void *scanner }
+ %parse-param { void *scanner }
+ %parse-param { graph_t *graph }
+ %pure-parser
diff --git a/package/gstreamer/gstreamer/gstreamer-01-bison3.patch b/package/gstreamer/gstreamer/gstreamer-01-bison3.patch
deleted file mode 100644 (file)
index f9ec52d..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-Fix deprecation from bison 3.0+
-From http://comments.gmane.org/gmane.linux.lfs.beyond.devel/24620
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura gstreamer-0.10.36.orig/gst/parse/grammar.y gstreamer-0.10.36/gst/parse/grammar.y
---- gstreamer-0.10.36.orig/gst/parse/grammar.y 2013-10-04 09:52:21.685282055 -0300
-+++ gstreamer-0.10.36/gst/parse/grammar.y      2013-10-04 10:21:54.800211238 -0300
-@@ -26,7 +26,6 @@
-  */
-
- #define YYERROR_VERBOSE 1
--#define YYLEX_PARAM scanner
-
- #define YYENABLE_NLS 0
-
-@@ -648,6 +647,7 @@
- %right '.'
- %left '!' '='
-
-+%lex-param { void *scanner }
- %parse-param { void *scanner }
- %parse-param { graph_t *graph }
- %pure-parser
diff --git a/package/gstreamer1/gst1-plugins-bad/0001-use-gettext-0.18.patch b/package/gstreamer1/gst1-plugins-bad/0001-use-gettext-0.18.patch
new file mode 100644 (file)
index 0000000..ebf4567
--- /dev/null
@@ -0,0 +1,17 @@
+Use newer version of gettext to match current buildroot gettext.
+
+Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
+----
+Index: gst1-plugins-bad-1.1.1/po/Makefile.in.in
+===================================================================
+--- gst1-plugins-bad-1.1.1.orig/po/Makefile.in.in
++++ gst1-plugins-bad-1.1.1/po/Makefile.in.in
+@@ -9,7 +9,7 @@
+ # General Public License and is *not* in the public domain.
+ #
+ # Origin: gettext-0.17
+-GETTEXT_MACRO_VERSION = 0.17
++GETTEXT_MACRO_VERSION = 0.18
+ PACKAGE = @PACKAGE@
+ VERSION = @VERSION@
diff --git a/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad-use-gettext-0.18.patch b/package/gstreamer1/gst1-plugins-bad/gst1-plugins-bad-use-gettext-0.18.patch
deleted file mode 100644 (file)
index ebf4567..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-Use newer version of gettext to match current buildroot gettext.
-
-Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
-----
-Index: gst1-plugins-bad-1.1.1/po/Makefile.in.in
-===================================================================
---- gst1-plugins-bad-1.1.1.orig/po/Makefile.in.in
-+++ gst1-plugins-bad-1.1.1/po/Makefile.in.in
-@@ -9,7 +9,7 @@
- # General Public License and is *not* in the public domain.
- #
- # Origin: gettext-0.17
--GETTEXT_MACRO_VERSION = 0.17
-+GETTEXT_MACRO_VERSION = 0.18
- PACKAGE = @PACKAGE@
- VERSION = @VERSION@
diff --git a/package/gutenprint/0001-use-pregen-xmli18n-header.patch b/package/gutenprint/0001-use-pregen-xmli18n-header.patch
new file mode 100644 (file)
index 0000000..533fe33
--- /dev/null
@@ -0,0 +1,48 @@
+src/xml: use preg-gen xmli18n_tmp.h if specified
+
+Ideally, the programs needed at build-time should be built with
+CC_FOR_BUILD, and not with CC_FOR_HOST.
+
+Unfortunately, this program wants to link against the gutenprint libs,
+so we would also need to build them with CC_FOR_HOST, that is build them
+twice, once for build, once for host.
+
+Instead, in the Buildroot context, we first build gutenprint for the build
+system, use that to generate the incriminated header, and then re-use that
+header to build the gutenprint for the host.
+
+It is not possible to have such constructs in Makefile.am:
+    ifeq ($(FOO),)
+    bar: bla
+        cat $< >$@
+    else
+    bar:
+        echo $(FOO) >$@
+    endif
+
+as autoreconf will yell loudly that there is an 'endif' without an 'if'.
+Sigh... :-(
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+diff -durN gutenprint-5.2.9.orig/src/xml/Makefile.am gutenprint-5.2.9/src/xml/Makefile.am
+--- gutenprint-5.2.9.orig/src/xml/Makefile.am  2011-03-30 02:43:24.000000000 +0200
++++ gutenprint-5.2.9/src/xml/Makefile.am       2013-03-24 17:08:08.435918773 +0100
+@@ -52,10 +52,13 @@
+ xmli18n-tmp.h: xml-stamp extract-strings
+-      -rm -f $@ $@.tmp
+-      ./extract-strings `cat xml-stamp | sed -e 's;^;$(srcdir)/;'` > $@.tmp
+-      mv $@.tmp $@
+-
++      if [ -z "$(BR2_USE_PREGEN_XMLI18N_TMP_H)" ]; then \
++          rm -f $@ $@.tmp; \
++          ./extract-strings `cat xml-stamp | sed -e 's;^;$(srcdir)/;'` > $@.tmp; \
++          mv $@.tmp $@; \
++      else \
++          cp $(BR2_USE_PREGEN_XMLI18N_TMP_H) $@; \
++      fi
+ dist-hook: xmli18n-tmp.h xml-stamp
+ # xmli18n-tmp.h is needed by po/POTFILES.in at dist time
diff --git a/package/gutenprint/0002-cups-support-replaces-static-with-static-libtool-lib.patch b/package/gutenprint/0002-cups-support-replaces-static-with-static-libtool-lib.patch
new file mode 100644 (file)
index 0000000..d8cfb7d
--- /dev/null
@@ -0,0 +1,39 @@
+From 08a5d355160eb2ac8346ae1b94591418343217f9 Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@openwide.fr>
+Date: Sun, 17 Aug 2014 23:43:20 +0200
+Subject: [PATCH 1/1] cups support: replaces -static with -static-libtool-libs
+
+gutenprint rely on the original behaviour of -static, but since commit
+in buildroot "support/libtool: make -static behave like -all-static" [1],
+the build of genppd is broken.
+
+genppd need to be build statically otherwise the following warning appears:
+***WARNING: Use of --disable-static-genppd or --disable-static
+            when building CUPS is very dangerous.  The build may
+            fail when building the PPD files, or may *SILENTLY*
+            build incorrect PPD files or cause other problems.
+            Please review the README and release notes carefully!
+
+[1] http://git.buildroot.net/buildroot/commit/?id=97703978ac870ce2b14ad144f8e082de82aa2c64
+
+Signed-off-by: Romain Naour <romain.naour@openwide.fr>
+---
+ src/cups/Makefile.am | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/cups/Makefile.am b/src/cups/Makefile.am
+index 1e27ae0..d711b70 100644
+--- a/src/cups/Makefile.am
++++ b/src/cups/Makefile.am
+@@ -84,7 +84,7 @@ noinst_SCRIPTS=test-rastertogutenprint
+ endif
+ if BUILD_GENPPD_STATIC
+-STATIC_LDOPTS=-static -export-dynamic
++STATIC_LDOPTS=-static-libtool-libs -export-dynamic
+ endif
+ cups_calibrate_SOURCES = cups-calibrate.c
+-- 
+1.9.3
+
diff --git a/package/gutenprint/gutenprint-000-use-pregen-xmli18n-header.patch b/package/gutenprint/gutenprint-000-use-pregen-xmli18n-header.patch
deleted file mode 100644 (file)
index 533fe33..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-src/xml: use preg-gen xmli18n_tmp.h if specified
-
-Ideally, the programs needed at build-time should be built with
-CC_FOR_BUILD, and not with CC_FOR_HOST.
-
-Unfortunately, this program wants to link against the gutenprint libs,
-so we would also need to build them with CC_FOR_HOST, that is build them
-twice, once for build, once for host.
-
-Instead, in the Buildroot context, we first build gutenprint for the build
-system, use that to generate the incriminated header, and then re-use that
-header to build the gutenprint for the host.
-
-It is not possible to have such constructs in Makefile.am:
-    ifeq ($(FOO),)
-    bar: bla
-        cat $< >$@
-    else
-    bar:
-        echo $(FOO) >$@
-    endif
-
-as autoreconf will yell loudly that there is an 'endif' without an 'if'.
-Sigh... :-(
-
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
-
-diff -durN gutenprint-5.2.9.orig/src/xml/Makefile.am gutenprint-5.2.9/src/xml/Makefile.am
---- gutenprint-5.2.9.orig/src/xml/Makefile.am  2011-03-30 02:43:24.000000000 +0200
-+++ gutenprint-5.2.9/src/xml/Makefile.am       2013-03-24 17:08:08.435918773 +0100
-@@ -52,10 +52,13 @@
- xmli18n-tmp.h: xml-stamp extract-strings
--      -rm -f $@ $@.tmp
--      ./extract-strings `cat xml-stamp | sed -e 's;^;$(srcdir)/;'` > $@.tmp
--      mv $@.tmp $@
--
-+      if [ -z "$(BR2_USE_PREGEN_XMLI18N_TMP_H)" ]; then \
-+          rm -f $@ $@.tmp; \
-+          ./extract-strings `cat xml-stamp | sed -e 's;^;$(srcdir)/;'` > $@.tmp; \
-+          mv $@.tmp $@; \
-+      else \
-+          cp $(BR2_USE_PREGEN_XMLI18N_TMP_H) $@; \
-+      fi
- dist-hook: xmli18n-tmp.h xml-stamp
- # xmli18n-tmp.h is needed by po/POTFILES.in at dist time
diff --git a/package/gutenprint/gutenprint-001-cups-support-replaces-static-with-static-libtool-lib.patch b/package/gutenprint/gutenprint-001-cups-support-replaces-static-with-static-libtool-lib.patch
deleted file mode 100644 (file)
index d8cfb7d..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-From 08a5d355160eb2ac8346ae1b94591418343217f9 Mon Sep 17 00:00:00 2001
-From: Romain Naour <romain.naour@openwide.fr>
-Date: Sun, 17 Aug 2014 23:43:20 +0200
-Subject: [PATCH 1/1] cups support: replaces -static with -static-libtool-libs
-
-gutenprint rely on the original behaviour of -static, but since commit
-in buildroot "support/libtool: make -static behave like -all-static" [1],
-the build of genppd is broken.
-
-genppd need to be build statically otherwise the following warning appears:
-***WARNING: Use of --disable-static-genppd or --disable-static
-            when building CUPS is very dangerous.  The build may
-            fail when building the PPD files, or may *SILENTLY*
-            build incorrect PPD files or cause other problems.
-            Please review the README and release notes carefully!
-
-[1] http://git.buildroot.net/buildroot/commit/?id=97703978ac870ce2b14ad144f8e082de82aa2c64
-
-Signed-off-by: Romain Naour <romain.naour@openwide.fr>
----
- src/cups/Makefile.am | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/cups/Makefile.am b/src/cups/Makefile.am
-index 1e27ae0..d711b70 100644
---- a/src/cups/Makefile.am
-+++ b/src/cups/Makefile.am
-@@ -84,7 +84,7 @@ noinst_SCRIPTS=test-rastertogutenprint
- endif
- if BUILD_GENPPD_STATIC
--STATIC_LDOPTS=-static -export-dynamic
-+STATIC_LDOPTS=-static-libtool-libs -export-dynamic
- endif
- cups_calibrate_SOURCES = cups-calibrate.c
--- 
-1.9.3
-
diff --git a/package/heimdal/0001-add-roken-h-process.patch b/package/heimdal/0001-add-roken-h-process.patch
new file mode 100644 (file)
index 0000000..b8fbd2a
--- /dev/null
@@ -0,0 +1,195 @@
+Add roken-h-process.pl from:
+https://raw.github.com/heimdal/heimdal/master/cf/roken-h-process.pl
+It's required for cross-compiling and missing from release tarballs:
+http://kerberos.996246.n3.nabble.com/Missing-roken-h-process-pl-when-cross-compiling-v1-5-2-td38806.html
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura heimdal-1.5.3.orig/cf/roken-h-process.pl heimdal-1.5.3/cf/roken-h-process.pl
+--- heimdal-1.5.3.orig/cf/roken-h-process.pl   1969-12-31 21:00:00.000000000 -0300
++++ heimdal-1.5.3/cf/roken-h-process.pl        2013-12-18 11:32:38.157625167 -0300
+@@ -0,0 +1,184 @@
++#!/usr/bin/perl
++
++require 'getopts.pl';
++
++my $debug = 0;
++
++Getopts('dc:p:o:') || die "foo";
++
++if ($opt_d) {
++    $debug = 1;
++}
++
++die "missing arg" if (!defined $opt_c || !defined $opt_p || !defined $opt_o);
++
++my %defines;
++my $IN;
++my $OUT;
++
++print "parse config.h\n" if ($debug);
++
++open IN, $opt_c || die "failed open ${opt_c}";
++
++my @nesting;
++
++push @nesting, 1;
++
++while (<IN>) {
++    if (m/\s*#ifdef\s+(.*)/) {
++      my $var = $1;
++      if (defined $defines{$var}) {
++          push @nesting, 1;
++      } else {
++          push @nesting, 0;
++      }
++      next;
++    } elsif (m/\s*#ifndef\s+(.*)/) {
++      my $var = $1;
++      if (defined $defines{$var}) {
++          push @nesting, 0;
++      } else {
++          push @nesting, 1;
++      }
++      next;
++    } elsif (m/\s*#else/) {
++      my $var = pop @nesting;
++      $var = !$var;
++      push @nesting, $var;
++      next;
++    } elsif ($nesting[$#nesting] and m/\s*#define\s+(\w+)\s+(\S+)/) {
++      my $res = $2;
++      $res = 1 if (!defined $res);
++      $defines{$1} = $res;
++    }
++}
++
++close IN;
++
++if ($debug) {
++    foreach my $i (keys %defines) {
++      print "k: $i v: $defines{$i}\n";
++    }
++}
++
++open IN, "$opt_p" || die "failed open ${opt_p}";
++open OUT, ">$opt_o" || die "failed open ${opt_o}";
++
++print "parse roken.h.in\n" if ($debug);
++
++print OUT "/* This is an OS dependent, generated file */\n";
++print OUT "\n";
++print OUT "\n";
++print OUT "#ifndef __ROKEN_H__\n";
++print OUT "#define __ROKEN_H__\n";
++print OUT "\n";
++
++@nesting = (1);
++
++while (<IN>) {
++    if (m/\s*#ifdef\s+(.*)/) {
++      my $var = $1;
++      if (defined $defines{$var}) {
++          push @nesting, 1;
++      } else {
++          push @nesting, 0;
++      }
++      next;
++    } elsif (m/\s*#ifndef\s+(.*)/) {
++      my $var = $1;
++      if (defined $defines{$var}) {
++          push @nesting, 0;
++      } else {
++          push @nesting, 1;
++      }
++      next;
++    } elsif (m/\s*#if\s+(.*)/) {
++      my $res = parse_if($1);
++      print "line = $res: $1\n" if ($debug);
++      push @nesting, $res;
++      next;
++    } elsif (m/\s*#elif\s+(.*)/) {
++      my $res = pop @nesting;
++      if ($res gt 0) {
++          $res = -1;
++      } else {
++          my $res = parse_if($1);
++      }
++      push @nesting, $res;
++      next;
++    } elsif (m/\s*#else/) {
++      my $var = pop @nesting;
++      $var = !$var;
++      push @nesting, $var;
++      next;
++    } elsif (m/\s*#endif/) {
++      pop @nesting;
++      next;
++    }
++    print "line: $_\n"  if ($debug);
++    print "nesting dep $#{nesting}\n"  if ($debug);
++    my $i = 0, $t = 1;
++    while ($i le $#nesting) {
++      $t = 0 if ($nesting[$i] le 0);
++      print "nesting $i val $nesting[$i] -> $t\n" if ($debug);
++      $i++;
++    }
++    if ($t) {
++      print OUT;
++    }
++}
++
++print OUT "\n";
++print OUT "#endif /* __ROKEN_H__ */\n";
++
++
++close IN;
++
++exit 0;
++
++sub parse_if
++{
++    my ($neg, $var);
++
++    $_ = shift;
++
++    if (m/^\s*$/) {
++      print "end $_\n" if ($debug);
++      return 1;
++    } elsif (m/^([^&]+)\&\&(.*)$/) {
++      print "$1 and $2\n" if ($debug);
++      return parse_if($1) and parse_if($2);
++    } elsif (m/^\(([^&]+)\&\&(.*)$/) {
++      print "$1 and $2\n" if ($debug);
++      return parse_if($1) and parse_if($2);
++    } elsif (m/^([^\|]+)\|\|(.*)$/) {
++      print "$1 or $2\n" if ($debug);
++      return parse_if($1) or parse_if($2);
++    } elsif (m/^\s*(\!)?\s*defined\((\w+)\)/) {
++      ($neg, $var) = ($1, $2);
++      print "def: ${neg}-defined(${var})\n" if ($debug);
++      my $res = defined $defines{$var};
++      if ($neg eq "!") {
++          if ($res) {
++              $res = 0;
++          } else {
++              $res = 1;
++          }
++      }
++      print "res: $res\n" if ($debug);
++      return $res;
++    } elsif (m/^\s*(\!)?(\w+)/) {
++      ($neg, $var) = ($1, $2);
++      print "var: $neg $var\n" if ($debug);
++      my $res;
++      if (defined $defines{$var}) {
++          $res = $defines{$var};
++      } else {
++          $res = 0;
++      }
++      $res = ! $res if ($neg =~ m/!/);
++      print "res: $res\n" if ($debug);
++      return $res;
++    }
++    die "failed parse: $_\n";
++}
diff --git a/package/heimdal/0002-use-Getopt-Std.patch b/package/heimdal/0002-use-Getopt-Std.patch
new file mode 100644 (file)
index 0000000..134b888
--- /dev/null
@@ -0,0 +1,30 @@
+From 6080c0b229c6e332d7dd609d9435ac9baeeea443 Mon Sep 17 00:00:00 2001
+From: Gustavo Zacarias <gustavo@zacarias.com.ar>
+Date: Thu, 30 Jan 2014 16:33:02 -0300
+Subject: [PATCH] roken-h-process: use Getopt::Std, getopts.pl is deprecated
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+---
+ cf/roken-h-process.pl | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/cf/roken-h-process.pl b/cf/roken-h-process.pl
+index 153a35c..72d3bd3 100644
+--- a/cf/roken-h-process.pl
++++ b/cf/roken-h-process.pl
+@@ -1,10 +1,10 @@
+ #!/usr/bin/perl
+-require 'getopts.pl';
++use Getopt::Std;
+ my $debug = 0;
+-Getopts('dc:p:o:') || die "foo";
++getopts('dc:p:o:') || die "foo";
+ if ($opt_d) {
+     $debug = 1;
+-- 
+1.8.3.2
+
diff --git a/package/heimdal/0003-vendor.patch b/package/heimdal/0003-vendor.patch
new file mode 100644 (file)
index 0000000..1ccd629
--- /dev/null
@@ -0,0 +1,19 @@
+Add --vendor option to krb5-config, required by samba 4.
+Status: Backport from upstream git.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura heimdal-1.5.3.orig/tools/krb5-config.in heimdal-1.5.3.vendor/tools/krb5-config.in
+--- heimdal-1.5.3.orig/tools/krb5-config.in    2012-12-09 19:06:44.000000000 -0300
++++ heimdal-1.5.3.vendor/tools/krb5-config.in  2013-12-18 15:49:45.283986300 -0300
+@@ -50,6 +50,10 @@
+     do_usage=yes
+     usage_exit=0
+     ;;
++  --vendor)
++    echo "Heimdal";
++    exit 0
++    ;;
+   --version)
+     echo "@PACKAGE@ @VERSION@"
+     exit 0
diff --git a/package/heimdal/0004-compile_et.patch b/package/heimdal/0004-compile_et.patch
new file mode 100644 (file)
index 0000000..6bdec6f
--- /dev/null
@@ -0,0 +1,28 @@
+Use compile_et from e2fsprogs rather than building the native and useless one
+from heimdal.
+
+Idea from:
+http://comments.gmane.org/gmane.comp.encryption.kerberos.heimdal.general/6572
+
+Status: Backport from upstream git.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura heimdal-1.5.3.orig/cf/check-compile-et.m4 heimdal-1.5.3.et/cf/check-compile-et.m4
+--- heimdal-1.5.3.orig/cf/check-compile-et.m4  2012-12-09 19:06:44.000000000 -0300
++++ heimdal-1.5.3.et/cf/check-compile-et.m4    2013-12-18 14:20:04.025925879 -0300
+@@ -3,12 +3,12 @@
+ dnl CHECK_COMPILE_ET
+ AC_DEFUN([CHECK_COMPILE_ET], [
+-AC_CHECK_PROG(COMPILE_ET, compile_et, [compile_et])
++AC_CHECK_PROG(COMPILE_ET, compile_et, [compile_et], [no])
+ krb_cv_compile_et="no"
+ krb_cv_com_err_need_r=""
+ krb_cv_compile_et_cross=no
+-if test "${COMPILE_ET}" = "compile_et"; then
++if test "$COMPILE_ET" != "no"; then
+ dnl We have compile_et.  Now let's see if it supports `prefix' and `index'.
+ AC_MSG_CHECKING(whether compile_et has the features we need)
diff --git a/package/heimdal/heimdal-0001-add-roken-h-process.patch b/package/heimdal/heimdal-0001-add-roken-h-process.patch
deleted file mode 100644 (file)
index b8fbd2a..0000000
+++ /dev/null
@@ -1,195 +0,0 @@
-Add roken-h-process.pl from:
-https://raw.github.com/heimdal/heimdal/master/cf/roken-h-process.pl
-It's required for cross-compiling and missing from release tarballs:
-http://kerberos.996246.n3.nabble.com/Missing-roken-h-process-pl-when-cross-compiling-v1-5-2-td38806.html
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura heimdal-1.5.3.orig/cf/roken-h-process.pl heimdal-1.5.3/cf/roken-h-process.pl
---- heimdal-1.5.3.orig/cf/roken-h-process.pl   1969-12-31 21:00:00.000000000 -0300
-+++ heimdal-1.5.3/cf/roken-h-process.pl        2013-12-18 11:32:38.157625167 -0300
-@@ -0,0 +1,184 @@
-+#!/usr/bin/perl
-+
-+require 'getopts.pl';
-+
-+my $debug = 0;
-+
-+Getopts('dc:p:o:') || die "foo";
-+
-+if ($opt_d) {
-+    $debug = 1;
-+}
-+
-+die "missing arg" if (!defined $opt_c || !defined $opt_p || !defined $opt_o);
-+
-+my %defines;
-+my $IN;
-+my $OUT;
-+
-+print "parse config.h\n" if ($debug);
-+
-+open IN, $opt_c || die "failed open ${opt_c}";
-+
-+my @nesting;
-+
-+push @nesting, 1;
-+
-+while (<IN>) {
-+    if (m/\s*#ifdef\s+(.*)/) {
-+      my $var = $1;
-+      if (defined $defines{$var}) {
-+          push @nesting, 1;
-+      } else {
-+          push @nesting, 0;
-+      }
-+      next;
-+    } elsif (m/\s*#ifndef\s+(.*)/) {
-+      my $var = $1;
-+      if (defined $defines{$var}) {
-+          push @nesting, 0;
-+      } else {
-+          push @nesting, 1;
-+      }
-+      next;
-+    } elsif (m/\s*#else/) {
-+      my $var = pop @nesting;
-+      $var = !$var;
-+      push @nesting, $var;
-+      next;
-+    } elsif ($nesting[$#nesting] and m/\s*#define\s+(\w+)\s+(\S+)/) {
-+      my $res = $2;
-+      $res = 1 if (!defined $res);
-+      $defines{$1} = $res;
-+    }
-+}
-+
-+close IN;
-+
-+if ($debug) {
-+    foreach my $i (keys %defines) {
-+      print "k: $i v: $defines{$i}\n";
-+    }
-+}
-+
-+open IN, "$opt_p" || die "failed open ${opt_p}";
-+open OUT, ">$opt_o" || die "failed open ${opt_o}";
-+
-+print "parse roken.h.in\n" if ($debug);
-+
-+print OUT "/* This is an OS dependent, generated file */\n";
-+print OUT "\n";
-+print OUT "\n";
-+print OUT "#ifndef __ROKEN_H__\n";
-+print OUT "#define __ROKEN_H__\n";
-+print OUT "\n";
-+
-+@nesting = (1);
-+
-+while (<IN>) {
-+    if (m/\s*#ifdef\s+(.*)/) {
-+      my $var = $1;
-+      if (defined $defines{$var}) {
-+          push @nesting, 1;
-+      } else {
-+          push @nesting, 0;
-+      }
-+      next;
-+    } elsif (m/\s*#ifndef\s+(.*)/) {
-+      my $var = $1;
-+      if (defined $defines{$var}) {
-+          push @nesting, 0;
-+      } else {
-+          push @nesting, 1;
-+      }
-+      next;
-+    } elsif (m/\s*#if\s+(.*)/) {
-+      my $res = parse_if($1);
-+      print "line = $res: $1\n" if ($debug);
-+      push @nesting, $res;
-+      next;
-+    } elsif (m/\s*#elif\s+(.*)/) {
-+      my $res = pop @nesting;
-+      if ($res gt 0) {
-+          $res = -1;
-+      } else {
-+          my $res = parse_if($1);
-+      }
-+      push @nesting, $res;
-+      next;
-+    } elsif (m/\s*#else/) {
-+      my $var = pop @nesting;
-+      $var = !$var;
-+      push @nesting, $var;
-+      next;
-+    } elsif (m/\s*#endif/) {
-+      pop @nesting;
-+      next;
-+    }
-+    print "line: $_\n"  if ($debug);
-+    print "nesting dep $#{nesting}\n"  if ($debug);
-+    my $i = 0, $t = 1;
-+    while ($i le $#nesting) {
-+      $t = 0 if ($nesting[$i] le 0);
-+      print "nesting $i val $nesting[$i] -> $t\n" if ($debug);
-+      $i++;
-+    }
-+    if ($t) {
-+      print OUT;
-+    }
-+}
-+
-+print OUT "\n";
-+print OUT "#endif /* __ROKEN_H__ */\n";
-+
-+
-+close IN;
-+
-+exit 0;
-+
-+sub parse_if
-+{
-+    my ($neg, $var);
-+
-+    $_ = shift;
-+
-+    if (m/^\s*$/) {
-+      print "end $_\n" if ($debug);
-+      return 1;
-+    } elsif (m/^([^&]+)\&\&(.*)$/) {
-+      print "$1 and $2\n" if ($debug);
-+      return parse_if($1) and parse_if($2);
-+    } elsif (m/^\(([^&]+)\&\&(.*)$/) {
-+      print "$1 and $2\n" if ($debug);
-+      return parse_if($1) and parse_if($2);
-+    } elsif (m/^([^\|]+)\|\|(.*)$/) {
-+      print "$1 or $2\n" if ($debug);
-+      return parse_if($1) or parse_if($2);
-+    } elsif (m/^\s*(\!)?\s*defined\((\w+)\)/) {
-+      ($neg, $var) = ($1, $2);
-+      print "def: ${neg}-defined(${var})\n" if ($debug);
-+      my $res = defined $defines{$var};
-+      if ($neg eq "!") {
-+          if ($res) {
-+              $res = 0;
-+          } else {
-+              $res = 1;
-+          }
-+      }
-+      print "res: $res\n" if ($debug);
-+      return $res;
-+    } elsif (m/^\s*(\!)?(\w+)/) {
-+      ($neg, $var) = ($1, $2);
-+      print "var: $neg $var\n" if ($debug);
-+      my $res;
-+      if (defined $defines{$var}) {
-+          $res = $defines{$var};
-+      } else {
-+          $res = 0;
-+      }
-+      $res = ! $res if ($neg =~ m/!/);
-+      print "res: $res\n" if ($debug);
-+      return $res;
-+    }
-+    die "failed parse: $_\n";
-+}
diff --git a/package/heimdal/heimdal-0002-use-Getopt-Std.patch b/package/heimdal/heimdal-0002-use-Getopt-Std.patch
deleted file mode 100644 (file)
index 134b888..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-From 6080c0b229c6e332d7dd609d9435ac9baeeea443 Mon Sep 17 00:00:00 2001
-From: Gustavo Zacarias <gustavo@zacarias.com.ar>
-Date: Thu, 30 Jan 2014 16:33:02 -0300
-Subject: [PATCH] roken-h-process: use Getopt::Std, getopts.pl is deprecated
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
----
- cf/roken-h-process.pl | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/cf/roken-h-process.pl b/cf/roken-h-process.pl
-index 153a35c..72d3bd3 100644
---- a/cf/roken-h-process.pl
-+++ b/cf/roken-h-process.pl
-@@ -1,10 +1,10 @@
- #!/usr/bin/perl
--require 'getopts.pl';
-+use Getopt::Std;
- my $debug = 0;
--Getopts('dc:p:o:') || die "foo";
-+getopts('dc:p:o:') || die "foo";
- if ($opt_d) {
-     $debug = 1;
--- 
-1.8.3.2
-
diff --git a/package/heimdal/heimdal-0003-vendor.patch b/package/heimdal/heimdal-0003-vendor.patch
deleted file mode 100644 (file)
index 1ccd629..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-Add --vendor option to krb5-config, required by samba 4.
-Status: Backport from upstream git.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura heimdal-1.5.3.orig/tools/krb5-config.in heimdal-1.5.3.vendor/tools/krb5-config.in
---- heimdal-1.5.3.orig/tools/krb5-config.in    2012-12-09 19:06:44.000000000 -0300
-+++ heimdal-1.5.3.vendor/tools/krb5-config.in  2013-12-18 15:49:45.283986300 -0300
-@@ -50,6 +50,10 @@
-     do_usage=yes
-     usage_exit=0
-     ;;
-+  --vendor)
-+    echo "Heimdal";
-+    exit 0
-+    ;;
-   --version)
-     echo "@PACKAGE@ @VERSION@"
-     exit 0
diff --git a/package/heimdal/heimdal-0004-compile_et.patch b/package/heimdal/heimdal-0004-compile_et.patch
deleted file mode 100644 (file)
index 6bdec6f..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-Use compile_et from e2fsprogs rather than building the native and useless one
-from heimdal.
-
-Idea from:
-http://comments.gmane.org/gmane.comp.encryption.kerberos.heimdal.general/6572
-
-Status: Backport from upstream git.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura heimdal-1.5.3.orig/cf/check-compile-et.m4 heimdal-1.5.3.et/cf/check-compile-et.m4
---- heimdal-1.5.3.orig/cf/check-compile-et.m4  2012-12-09 19:06:44.000000000 -0300
-+++ heimdal-1.5.3.et/cf/check-compile-et.m4    2013-12-18 14:20:04.025925879 -0300
-@@ -3,12 +3,12 @@
- dnl CHECK_COMPILE_ET
- AC_DEFUN([CHECK_COMPILE_ET], [
--AC_CHECK_PROG(COMPILE_ET, compile_et, [compile_et])
-+AC_CHECK_PROG(COMPILE_ET, compile_et, [compile_et], [no])
- krb_cv_compile_et="no"
- krb_cv_com_err_need_r=""
- krb_cv_compile_et_cross=no
--if test "${COMPILE_ET}" = "compile_et"; then
-+if test "$COMPILE_ET" != "no"; then
- dnl We have compile_et.  Now let's see if it supports `prefix' and `index'.
- AC_MSG_CHECKING(whether compile_et has the features we need)
diff --git a/package/hplip/0001-fix-make.patch b/package/hplip/0001-fix-make.patch
new file mode 100644 (file)
index 0000000..da05d03
--- /dev/null
@@ -0,0 +1,35 @@
+From 6019d012246578ae1a191d3510284e7b894fb528 Mon Sep 17 00:00:00 2001
+From: Olivier Schonken <olivier.schonken@gmail.com>
+Date: Sat, 2 Mar 2013 18:01:03 +0200
+Subject: [PATCH] Changed Makefile.am to allow cross-compilation of HPLIP
+
+Signed-off-by: Olivier Schonken <olivier.schonken@gmail.com>
+---
+ Makefile.am |   28 ++++++++++++++--------------
+ 1 file changed, 14 insertions(+), 14 deletions(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index 16ea902..b22f46a 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -72,7 +72,7 @@ libhpmud_la_SOURCES = io/hpmud/hpmud.c io/hpmud/mlc.c io/hpmud/model.c io/hpmud/
+         io/hpmud/hpmud.h io/hpmud/hpmudi.h io/hpmud/list.h io/hpmud/mlc.h io/hpmud/pml.h io/hpmud/dot4.c \
+         io/hpmud/dot4.h io/hpmud/jd.c io/hpmud/jd.h io/hpmud/pp.c io/hpmud/pp.h io/hpmud/musb.h io/hpmud/musb_libusb01.c
+ else
+-libhpmud_la_CFLAGS = -I/usr/include/libusb-1.0 -DMUDNAME=\"$(MUDNAME)\" -DCONFDIR=\"$(hplip_confdir)\"
++libhpmud_la_CFLAGS = -I$(includedir)/libusb-1.0 -DMUDNAME=\"$(MUDNAME)\" -DCONFDIR=\"$(hplip_confdir)\"
+ libhpmud_la_SOURCES = io/hpmud/hpmud.c io/hpmud/mlc.c io/hpmud/model.c io/hpmud/pml.c \
+         io/hpmud/hpmud.h io/hpmud/hpmudi.h io/hpmud/list.h io/hpmud/mlc.h io/hpmud/pml.h io/hpmud/dot4.c \
+         io/hpmud/dot4.h io/hpmud/jd.c io/hpmud/jd.h io/hpmud/pp.c io/hpmud/pp.h io/hpmud/musb.h io/hpmud/musb.c
+@@ -292,7 +292,7 @@ hpmudext_la_LIBADD = libhpmud.la
+ if LIBUSB01_BUILD
+ hpmudext_la_CFLAGS = -I$(PYTHONINCLUDEDIR)
+ else
+-hpmudext_la_CFLAGS =-I/usr/include/libusb-1.0 -I$(PYTHONINCLUDEDIR)
++hpmudext_la_CFLAGS =-I$(includedir)/libusb-1.0 -I$(PYTHONINCLUDEDIR)
+ endif
+ # ui (qt3)
+-- 
+1.7.10.4
+
diff --git a/package/hplip/hplip-fix-make.patch b/package/hplip/hplip-fix-make.patch
deleted file mode 100644 (file)
index da05d03..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-From 6019d012246578ae1a191d3510284e7b894fb528 Mon Sep 17 00:00:00 2001
-From: Olivier Schonken <olivier.schonken@gmail.com>
-Date: Sat, 2 Mar 2013 18:01:03 +0200
-Subject: [PATCH] Changed Makefile.am to allow cross-compilation of HPLIP
-
-Signed-off-by: Olivier Schonken <olivier.schonken@gmail.com>
----
- Makefile.am |   28 ++++++++++++++--------------
- 1 file changed, 14 insertions(+), 14 deletions(-)
-
-diff --git a/Makefile.am b/Makefile.am
-index 16ea902..b22f46a 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -72,7 +72,7 @@ libhpmud_la_SOURCES = io/hpmud/hpmud.c io/hpmud/mlc.c io/hpmud/model.c io/hpmud/
-         io/hpmud/hpmud.h io/hpmud/hpmudi.h io/hpmud/list.h io/hpmud/mlc.h io/hpmud/pml.h io/hpmud/dot4.c \
-         io/hpmud/dot4.h io/hpmud/jd.c io/hpmud/jd.h io/hpmud/pp.c io/hpmud/pp.h io/hpmud/musb.h io/hpmud/musb_libusb01.c
- else
--libhpmud_la_CFLAGS = -I/usr/include/libusb-1.0 -DMUDNAME=\"$(MUDNAME)\" -DCONFDIR=\"$(hplip_confdir)\"
-+libhpmud_la_CFLAGS = -I$(includedir)/libusb-1.0 -DMUDNAME=\"$(MUDNAME)\" -DCONFDIR=\"$(hplip_confdir)\"
- libhpmud_la_SOURCES = io/hpmud/hpmud.c io/hpmud/mlc.c io/hpmud/model.c io/hpmud/pml.c \
-         io/hpmud/hpmud.h io/hpmud/hpmudi.h io/hpmud/list.h io/hpmud/mlc.h io/hpmud/pml.h io/hpmud/dot4.c \
-         io/hpmud/dot4.h io/hpmud/jd.c io/hpmud/jd.h io/hpmud/pp.c io/hpmud/pp.h io/hpmud/musb.h io/hpmud/musb.c
-@@ -292,7 +292,7 @@ hpmudext_la_LIBADD = libhpmud.la
- if LIBUSB01_BUILD
- hpmudext_la_CFLAGS = -I$(PYTHONINCLUDEDIR)
- else
--hpmudext_la_CFLAGS =-I/usr/include/libusb-1.0 -I$(PYTHONINCLUDEDIR)
-+hpmudext_la_CFLAGS =-I$(includedir)/libusb-1.0 -I$(PYTHONINCLUDEDIR)
- endif
- # ui (qt3)
--- 
-1.7.10.4
-
diff --git a/package/htop/0001-native-affinity.patch b/package/htop/0001-native-affinity.patch
new file mode 100644 (file)
index 0000000..bf68e53
--- /dev/null
@@ -0,0 +1,25 @@
+# This patch removes the check for native_affinity for cross compiling.
+# This patch has been pushed to htop on 23 November 2011, however, is
+# not in the 1.0 release and may not be exactly what Hisham puts into
+# the official build.
+#
+# Signed-off-by: Andy Kennedy <Andy.Kennedy@adtran.com>
+diff -Naur a/configure.ac b/configure.ac
+--- a/configure.ac     2011-11-20 20:46:48.000000000 -0600
++++ b/configure.ac     2011-11-23 10:41:44.000000000 -0600
+@@ -111,7 +111,6 @@
+ if test "$cross_compiling" = "no"; then
+ AC_CHECK_FILE($PROCDIR/stat,,AC_MSG_ERROR(Cannot find /proc/stat. Make sure you have a Linux-compatible /proc filesystem mounted. See the file README for help.))
+ AC_CHECK_FILE($PROCDIR/meminfo,,AC_MSG_ERROR(Cannot find /proc/meminfo. Make sure you have a Linux-compatible /proc filesystem mounted. See the file README for help.))
+-fi
+ AC_ARG_ENABLE(native_affinity, [AC_HELP_STRING([--enable-native-affinity], [enable native sched_setaffinity and sched_getaffinity for affinity support, disables hwloc])], ,enable_native_affinity="yes")
+ if test "x$enable_native_affinity" = xyes; then
+@@ -130,6 +129,7 @@
+       AC_MSG_RESULT([yes])],
+      [AC_MSG_RESULT([no])])
+ fi
++fi
+ AC_ARG_ENABLE(hwloc, [AC_HELP_STRING([--enable-hwloc], [enable hwloc support for CPU affinity])],, enable_hwloc="no")
+ if test "x$enable_hwloc" = xyes
diff --git a/package/htop/htop-01-native-affinity.patch b/package/htop/htop-01-native-affinity.patch
deleted file mode 100644 (file)
index bf68e53..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-# This patch removes the check for native_affinity for cross compiling.
-# This patch has been pushed to htop on 23 November 2011, however, is
-# not in the 1.0 release and may not be exactly what Hisham puts into
-# the official build.
-#
-# Signed-off-by: Andy Kennedy <Andy.Kennedy@adtran.com>
-diff -Naur a/configure.ac b/configure.ac
---- a/configure.ac     2011-11-20 20:46:48.000000000 -0600
-+++ b/configure.ac     2011-11-23 10:41:44.000000000 -0600
-@@ -111,7 +111,6 @@
- if test "$cross_compiling" = "no"; then
- AC_CHECK_FILE($PROCDIR/stat,,AC_MSG_ERROR(Cannot find /proc/stat. Make sure you have a Linux-compatible /proc filesystem mounted. See the file README for help.))
- AC_CHECK_FILE($PROCDIR/meminfo,,AC_MSG_ERROR(Cannot find /proc/meminfo. Make sure you have a Linux-compatible /proc filesystem mounted. See the file README for help.))
--fi
- AC_ARG_ENABLE(native_affinity, [AC_HELP_STRING([--enable-native-affinity], [enable native sched_setaffinity and sched_getaffinity for affinity support, disables hwloc])], ,enable_native_affinity="yes")
- if test "x$enable_native_affinity" = xyes; then
-@@ -130,6 +129,7 @@
-       AC_MSG_RESULT([yes])],
-      [AC_MSG_RESULT([no])])
- fi
-+fi
- AC_ARG_ENABLE(hwloc, [AC_HELP_STRING([--enable-hwloc], [enable hwloc support for CPU affinity])],, enable_hwloc="no")
- if test "x$enable_hwloc" = xyes
diff --git a/package/httping/0001-fix-math-library-linking.patch b/package/httping/0001-fix-math-library-linking.patch
new file mode 100644 (file)
index 0000000..0078f41
--- /dev/null
@@ -0,0 +1,25 @@
+Move LDFLAGS+=-lm option to the end.
+The order of the math library directive '-lm' matters.
+
+Signed-off-by: Yuvaraj Patil <yuvaraj.patil@wipro.com>
+---
+diff -Nurp httping-2.3.4_orig/Makefile httping-2.3.4/Makefile
+--- httping-2.3.4_orig/Makefile        2014-07-23 16:16:36.495546288 +0530
++++ httping-2.3.4/Makefile     2014-07-23 16:18:42.547541002 +0530
+@@ -37,7 +37,6 @@ DEBUG=yes
+ WFLAGS=-Wall -W
+ OFLAGS=
+ CFLAGS+=$(WFLAGS) $(OFLAGS) -DVERSION=\"$(VERSION)\" -DLOCALEDIR=\"$(LOCALEDIR)\"
+-LDFLAGS+=-lm
+ PACKAGE=$(TARGET)-$(VERSION)
+ PREFIX?=/usr
+@@ -97,6 +96,8 @@ ifeq ($(ARM),yes)
+ CC=arm-linux-gcc
+ endif
++LDFLAGS+=-lm
++
+ all: $(TARGET) $(TRANSLATIONS)
+ $(TARGET): $(OBJS)
diff --git a/package/httping/httping-0001-fix-math-library-linking.patch b/package/httping/httping-0001-fix-math-library-linking.patch
deleted file mode 100644 (file)
index 0078f41..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-Move LDFLAGS+=-lm option to the end.
-The order of the math library directive '-lm' matters.
-
-Signed-off-by: Yuvaraj Patil <yuvaraj.patil@wipro.com>
----
-diff -Nurp httping-2.3.4_orig/Makefile httping-2.3.4/Makefile
---- httping-2.3.4_orig/Makefile        2014-07-23 16:16:36.495546288 +0530
-+++ httping-2.3.4/Makefile     2014-07-23 16:18:42.547541002 +0530
-@@ -37,7 +37,6 @@ DEBUG=yes
- WFLAGS=-Wall -W
- OFLAGS=
- CFLAGS+=$(WFLAGS) $(OFLAGS) -DVERSION=\"$(VERSION)\" -DLOCALEDIR=\"$(LOCALEDIR)\"
--LDFLAGS+=-lm
- PACKAGE=$(TARGET)-$(VERSION)
- PREFIX?=/usr
-@@ -97,6 +96,8 @@ ifeq ($(ARM),yes)
- CC=arm-linux-gcc
- endif
-+LDFLAGS+=-lm
-+
- all: $(TARGET) $(TRANSLATIONS)
- $(TARGET): $(OBJS)
diff --git a/package/icu/0001-dont-build-static-dynamic-twice.patch b/package/icu/0001-dont-build-static-dynamic-twice.patch
new file mode 100644 (file)
index 0000000..ccbe534
--- /dev/null
@@ -0,0 +1,37 @@
+Don't build object files twice
+
+When passed --enable-static and --enable-shared, icu will generate
+both a shared and a static version of its libraries.
+
+However, in order to do so, it builds each and every object file
+twice: once with -fPIC (for the shared library), and once without
+-fPIC (for the static library). While admittedly building -fPIC for a
+static library generates a slightly suboptimal code, this is what all
+the autotools-based project are doing. They build each object file
+once, and they use it for both the static and shared libraries.
+
+icu builds the object files for the shared library as .o files, and
+the object files for static library as .ao files. By simply changing
+the suffix of object files used for static libraries to ".o", we tell
+icu to use the ones built for the shared library (i.e, with -fPIC),
+and avoid the double build of icu.
+
+On a fast build server, this brings the target icu build from
+3m41.302s down to 1m43.926s (approximate numbers: some other builds
+are running on the system at the same time).
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/source/config/mh-linux
+===================================================================
+--- a/source/config/mh-linux
++++ b/source/config/mh-linux
+@@ -35,7 +35,7 @@
+ ## Shared object suffix
+ SO = so
+ ## Non-shared intermediate object suffix
+-STATIC_O = ao
++STATIC_O = o
+ ## Compilation rules
+ %.$(STATIC_O): $(srcdir)/%.c
diff --git a/package/icu/0002-workaround-toolchain-bugs.patch b/package/icu/0002-workaround-toolchain-bugs.patch
new file mode 100644 (file)
index 0000000..b5f25d0
--- /dev/null
@@ -0,0 +1,37 @@
+Workaround toolchain bugs
+
+Many of ARM Sourcery CodeBench toolchain have a bug when compiling
+icu's translit.cpp source file. The bug is trigerred when there is a
+combination of "-W -Wall" and "-Os", and causes an internal compiler
+error. The bug has been reported to Mentor Graphics.
+
+Even though it is clearly a toolchain bug, having a workaround for it
+is trivial in this case. So it will avoid our users falling into this
+internal compiler error, and allow our autobuilders to test more
+packages using this Sourcery CodeBench toolchain.qq
+
+[Gustavo: update for ICU4C 54.1]
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura icu.orig/source/configure icu/source/configure
+--- icu.orig/source/configure  2014-12-18 15:49:43.038628644 -0300
++++ icu/source/configure       2014-12-18 15:51:23.183083232 -0300
+@@ -4323,7 +4323,7 @@
+                 ;;
+             esac
+-            CFLAGS="$CFLAGS -Wall -pedantic -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings"
++            CFLAGS="$CFLAGS -pedantic -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings"
+         else
+             case "${host}" in
+             *-*-cygwin)
+@@ -4337,7 +4337,7 @@
+         fi
+         if test "$GXX" = yes
+         then
+-            CXXFLAGS="$CXXFLAGS -W -Wall -pedantic -Wpointer-arith -Wwrite-strings -Wno-long-long"
++            CXXFLAGS="$CXXFLAGS -pedantic -Wpointer-arith -Wwrite-strings -Wno-long-long"
+         else
+             case "${host}" in
+             *-*-cygwin)
diff --git a/package/icu/0003-detect-compiler-symbol-prefix.patch b/package/icu/0003-detect-compiler-symbol-prefix.patch
new file mode 100644 (file)
index 0000000..1e95375
--- /dev/null
@@ -0,0 +1,116 @@
+detect and add compiler symbol prefix to the assembly code
+
+Some compiler, such as Blackfin GNU compiler, prefix a charater to any
+C symbol in generated assembly code. If any assembly symbol is invoked
+from C code, it needs to be prefixed as well.
+
+Note: since autoreconf doesn't work with this package because automake
+isn't support
+
+[Ryan: add information about why patching configure is ok]
+[Gustavo: update for ICU4C 54.1]
+
+Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
+Signed-off-by: Ryan Barnett <rjbarnet@rockwellcollins.com>
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura icu.orig/source/configure icu/source/configure
+--- icu.orig/source/configure  2014-12-18 15:49:43.038628644 -0300
++++ icu/source/configure       2014-12-18 15:56:05.793832186 -0300
+@@ -637,6 +637,7 @@
+ ICUDATA_CHAR
+ SAMPLES_TRUE
+ TESTS_TRUE
++SYMBOL_PREFIX
+ ICULIBSUFFIXCNAME
+ U_HAVE_LIB_SUFFIX
+ ICULIBSUFFIX
+@@ -7414,6 +7415,17 @@
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CHECK_UTF16_STRING_RESULT" >&5
+ $as_echo "$CHECK_UTF16_STRING_RESULT" >&6; }
++# Check compiler generated symbol profix
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for symbol prefix" >&5
++$as_echo "checking for symbol prefix... " >&6; }
++   SYMBOL_PREFIX=`echo "PREFIX=__USER_LABEL_PREFIX__" \
++                  | ${CPP-${CC-gcc} -E} - 2>&1 \
++                  | ${EGREP-grep} "^PREFIX=" \
++                  | sed -e "s:^PREFIX=::" -e "s:__USER_LABEL_PREFIX__::"`
++
++    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SYMBOL_PREFIX" >&5
++$as_echo "$SYMBOL_PREFIX" >&6; }
++
+ # Enable/disable extras
+ # Check whether --enable-extras was given.
+ if test "${enable_extras+set}" = set; then :
+diff -Nura icu.orig/source/data/Makefile.in icu/source/data/Makefile.in
+--- icu.orig/source/data/Makefile.in   2014-12-18 15:49:42.908624160 -0300
++++ icu/source/data/Makefile.in        2014-12-18 16:01:32.751110913 -0300
+@@ -182,11 +182,11 @@
+ packagedata: icupkg.inc $(PKGDATA_LIST) build-local
+ ifneq ($(ENABLE_STATIC),)
+ ifeq ($(PKGDATA_MODE),dll)
+-      $(PKGDATA_INVOKE) $(PKGDATA) -e $(ICUDATA_ENTRY_POINT) -T $(OUTTMPDIR) -p $(ICUDATA_NAME) $(PKGDATA_LIBSTATICNAME) -m static $(PKGDATA_VERSIONING) $(PKGDATA_LIST)
++      $(PKGDATA_INVOKE) $(PKGDATA) -e @SYMBOL_PREFIX@$(ICUDATA_ENTRY_POINT) -T $(OUTTMPDIR) -p $(ICUDATA_NAME) $(PKGDATA_LIBSTATICNAME) -m static $(PKGDATA_VERSIONING) $(PKGDATA_LIST)
+ endif
+ endif
+ ifneq ($(ICUDATA_SOURCE_IS_NATIVE_TARGET),YES)
+-      $(PKGDATA_INVOKE) $(PKGDATA) -e $(ICUDATA_ENTRY_POINT) -T $(OUTTMPDIR) -p $(ICUDATA_NAME) -m $(PKGDATA_MODE) $(PKGDATA_VERSIONING) $(PKGDATA_LIBNAME) $(PKGDATA_LIST)
++      $(PKGDATA_INVOKE) $(PKGDATA) -e @SYMBOL_PREFIX@$(ICUDATA_ENTRY_POINT) -T $(OUTTMPDIR) -p $(ICUDATA_NAME) -m $(PKGDATA_MODE) $(PKGDATA_VERSIONING) $(PKGDATA_LIBNAME) $(PKGDATA_LIST)
+ else
+       $(INSTALL_DATA) $(ICUDATA_SOURCE_ARCHIVE) $(OUTDIR)
+ endif
+@@ -209,11 +209,11 @@
+ endif
+ ifneq ($(ENABLE_STATIC),)
+ ifeq ($(PKGDATA_MODE),dll)
+-      $(PKGDATA_INVOKE) $(PKGDATA) -m static -e $(ICUDATA_ENTRY_POINT) -T $(OUTTMPDIR) -s $(BUILDDIR) -p $(ICUDATA_NAME) $(PKGDATA_LIBSTATICNAME) $(PKGDATA_LIST) -I $(ICUPKGDATA_INSTALL_LIBDIR)
++      $(PKGDATA_INVOKE) $(PKGDATA) -m static -e @SYMBOL_PREFIX@$(ICUDATA_ENTRY_POINT) -T $(OUTTMPDIR) -s $(BUILDDIR) -p $(ICUDATA_NAME) $(PKGDATA_LIBSTATICNAME) $(PKGDATA_LIST) -I $(ICUPKGDATA_INSTALL_LIBDIR)
+ endif
+ endif
+ ifneq ($(ICUDATA_SOURCE_IS_NATIVE_TARGET),YES)
+-      $(PKGDATA_INVOKE) $(PKGDATA) -m $(PKGDATA_MODE) $(PKGDATA_VERSIONING) -e $(ICUDATA_ENTRY_POINT) -T $(OUTTMPDIR) -s $(BUILDDIR) -p $(ICUDATA_NAME) $(PKGDATA_LIBNAME) $(PKGDATA_LIST) -I $(ICUPKGDATA_INSTALL_DIR)
++      $(PKGDATA_INVOKE) $(PKGDATA) -m $(PKGDATA_MODE) $(PKGDATA_VERSIONING) -e @SYMBOL_PREFIX@$(ICUDATA_ENTRY_POINT) -T $(OUTTMPDIR) -s $(BUILDDIR) -p $(ICUDATA_NAME) $(PKGDATA_LIBNAME) $(PKGDATA_LIST) -I $(ICUPKGDATA_INSTALL_DIR)
+ else
+       $(INSTALL_DATA) $(ICUDATA_SOURCE_ARCHIVE) $(DESTDIR)$(ICUPKGDATA_DIR)
+ endif
+@@ -224,7 +224,7 @@
+ #### 390 support
+ install390: package390
+       $(MKINSTALLDIRS) $(TMPDATADIR) $(DESTDIR)$(libdir)
+-      $(INVOKE) $(PKGDATA) -s $(BUILDDIR)$(STUB_SUFFIX) -T $(OUTTMPDIR_390STUB) -p $(ICUDATA_NAME)$(STUB_SUFFIX) $(PKGDATA_LIBNAME)$(STUB_SUFFIX) -e $(ICUDATA_ENTRY_POINT) $(OS390LIST) -m dll $(PKGDATA_VERSIONING) -I $(DESTDIR)$(ICUPKGDATA_DIR)
++      $(INVOKE) $(PKGDATA) -s $(BUILDDIR)$(STUB_SUFFIX) -T $(OUTTMPDIR_390STUB) -p $(ICUDATA_NAME)$(STUB_SUFFIX) $(PKGDATA_LIBNAME)$(STUB_SUFFIX) -e @SYMBOL_PREFIX@$(ICUDATA_ENTRY_POINT) $(OS390LIST) -m dll $(PKGDATA_VERSIONING) -I $(DESTDIR)$(ICUPKGDATA_DIR)
+ ifeq ($(PKGDATA_MODE),dll)
+       $(INSTALL-L) $(ICUPKGDATA_OUTDIR)/$(FINAL_IMPORT_LIB) $(DESTDIR)$(ICUPKGDATA_DIR)/$(FINAL_IMPORT_LIB)
+ endif
+@@ -232,7 +232,7 @@
+ #### $(LIB_ICUDATA_NAME)$(STUB_SUFFIX) is the subset data for batch mode
+ package390: $(OUTTMPDIR)/icudata390.lst $(PKGDATA_LIST) ./icupkg.inc packagedata
+       ln -s $(ICUDATA_NAME) $(OUTDIR)/build/$(ICUDATA_NAME)$(STUB_SUFFIX)
+-      $(INVOKE) $(PKGDATA) -s $(BUILDDIR)$(STUB_SUFFIX) -T $(OUTTMPDIR_390STUB) -p $(ICUDATA_NAME)$(STUB_SUFFIX) $(PKGDATA_LIBNAME)$(STUB_SUFFIX) -e $(ICUDATA_ENTRY_POINT) $(OS390LIST) -m dll $(PKGDATA_VERSIONING)
++      $(INVOKE) $(PKGDATA) -s $(BUILDDIR)$(STUB_SUFFIX) -T $(OUTTMPDIR_390STUB) -p $(ICUDATA_NAME)$(STUB_SUFFIX) $(PKGDATA_LIBNAME)$(STUB_SUFFIX) -e @SYMBOL_PREFIX@$(ICUDATA_ENTRY_POINT) $(OS390LIST) -m dll $(PKGDATA_VERSIONING)
+       cp $(ICUPKGDATA_OUTDIR)/$(LIB_ICUDATA_NAME)$(STUB_SUFFIX).$(SO) $(top_builddir)/stubdata/$(LIB_ICUDATA_NAME)$(STUB_SUFFIX).$(SO)
+diff -Nura icu.orig/source/extra/uconv/Makefile.in icu/source/extra/uconv/Makefile.in
+--- icu.orig/source/extra/uconv/Makefile.in    2014-12-18 15:49:42.986626850 -0300
++++ icu/source/extra/uconv/Makefile.in 2014-12-18 15:57:40.558101179 -0300
+@@ -58,7 +58,8 @@
+ ## Static mode
+ ifeq ($(UCONVMSG_MODE),static)
+ DEFS += -DUCONVMSG_LINK=$(MSGNAME)
+-UCONVMSG_LIB = $(RESDIR)/$(LIBPREFIX)$(STATIC_PREFIX_WHEN_USED)$(MSGNAME).$(A)
++UCONVMSG_LIB = $(RESDIR)/$(LIBPREFIX)$(STATIC_PREFIX_WHEN_USED)@SYMBOL_PREFIX@$(MSGNAME).$(A)
++
+ LIBS += $(UCONVMSG_LIB)
+ PKGMODE=static
+ INSTALLTO=$(libdir)
+@@ -152,7 +153,7 @@
+ endif
+ $(UCONVMSG_LIB): $(RESFILES) $(RESDIR)/$(RESDIR).lst pkgdata.inc
+-      $(INVOKE) $(PKGDATA_INVOKE_OPTS) $(TOOLBINDIR)/pkgdata -p $(MSGNAME) $(PKGDATA_OPTS) -m $(PKGMODE) -s $(RESDIR) -d $(RESDIR) -T $(RESDIR) $(RESDIR)/$(RESDIR).lst
++      $(INVOKE) $(PKGDATA_INVOKE_OPTS) $(TOOLBINDIR)/pkgdata -p @SYMBOL_PREFIX@$(MSGNAME) $(PKGDATA_OPTS) -m $(PKGMODE) -s $(RESDIR) -d $(RESDIR) -T $(RESDIR) $(RESDIR)/$(RESDIR).lst
+ $(RESDIR)/$(RESDIR).lst: Makefile $(srcdir)/resfiles.mk
+       @-$(RMV) $@
diff --git a/package/icu/0004-link-icudata-as-data-only.patch b/package/icu/0004-link-icudata-as-data-only.patch
new file mode 100644 (file)
index 0000000..d970e8d
--- /dev/null
@@ -0,0 +1,35 @@
+From d5d0c4bb7cc9aa4a132ec0bea13255aee50c1cf9 Mon Sep 17 00:00:00 2001
+From: Maxime Hadjinlian <maxime.hadjinlian@devialet.com>
+Date: Fri, 6 Jun 2014 14:55:58 +0200
+Subject: [PATCH] Don't link icudata as a data only library
+
+This patch cames straight from Debian. It fixes an issue when
+libicudata would not have some flags indicating it's EABIhf, causing
+applications linked against libicudata to not start on EABIhf
+systems. Getting rid of the -nodefaultlibs -nostdlib flags solves the
+problem, and is the solution that is used by Debian, see
+https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=653457.
+
+Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@devialet.com>
+---
+ source/config/mh-linux | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/source/config/mh-linux b/source/config/mh-linux
+index 531a3b2..5a2a7c4 100644
+--- a/source/config/mh-linux
++++ b/source/config/mh-linux
+@@ -21,7 +21,9 @@ LD_RPATH= -Wl,-zorigin,-rpath,'$$'ORIGIN
+ LD_RPATH_PRE = -Wl,-rpath,
+
+ ## These are the library specific LDFLAGS
+-LDFLAGSICUDT=-nodefaultlibs -nostdlib
++#LDFLAGSICUDT=-nodefaultlibs -nostdlib
++# Debian change: linking icudata as data only causes too many problems.
++LDFLAGSICUDT=
+
+ ## Compiler switch to embed a library name
+ # The initial tab in the next line is to prevent icu-config from reading it.
+--
+2.0.0.rc2
+
diff --git a/package/icu/icu-001-dont-build-static-dynamic-twice.patch b/package/icu/icu-001-dont-build-static-dynamic-twice.patch
deleted file mode 100644 (file)
index ccbe534..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-Don't build object files twice
-
-When passed --enable-static and --enable-shared, icu will generate
-both a shared and a static version of its libraries.
-
-However, in order to do so, it builds each and every object file
-twice: once with -fPIC (for the shared library), and once without
--fPIC (for the static library). While admittedly building -fPIC for a
-static library generates a slightly suboptimal code, this is what all
-the autotools-based project are doing. They build each object file
-once, and they use it for both the static and shared libraries.
-
-icu builds the object files for the shared library as .o files, and
-the object files for static library as .ao files. By simply changing
-the suffix of object files used for static libraries to ".o", we tell
-icu to use the ones built for the shared library (i.e, with -fPIC),
-and avoid the double build of icu.
-
-On a fast build server, this brings the target icu build from
-3m41.302s down to 1m43.926s (approximate numbers: some other builds
-are running on the system at the same time).
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/source/config/mh-linux
-===================================================================
---- a/source/config/mh-linux
-+++ b/source/config/mh-linux
-@@ -35,7 +35,7 @@
- ## Shared object suffix
- SO = so
- ## Non-shared intermediate object suffix
--STATIC_O = ao
-+STATIC_O = o
- ## Compilation rules
- %.$(STATIC_O): $(srcdir)/%.c
diff --git a/package/icu/icu-002-workaround-toolchain-bugs.patch b/package/icu/icu-002-workaround-toolchain-bugs.patch
deleted file mode 100644 (file)
index b5f25d0..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-Workaround toolchain bugs
-
-Many of ARM Sourcery CodeBench toolchain have a bug when compiling
-icu's translit.cpp source file. The bug is trigerred when there is a
-combination of "-W -Wall" and "-Os", and causes an internal compiler
-error. The bug has been reported to Mentor Graphics.
-
-Even though it is clearly a toolchain bug, having a workaround for it
-is trivial in this case. So it will avoid our users falling into this
-internal compiler error, and allow our autobuilders to test more
-packages using this Sourcery CodeBench toolchain.qq
-
-[Gustavo: update for ICU4C 54.1]
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura icu.orig/source/configure icu/source/configure
---- icu.orig/source/configure  2014-12-18 15:49:43.038628644 -0300
-+++ icu/source/configure       2014-12-18 15:51:23.183083232 -0300
-@@ -4323,7 +4323,7 @@
-                 ;;
-             esac
--            CFLAGS="$CFLAGS -Wall -pedantic -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings"
-+            CFLAGS="$CFLAGS -pedantic -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings"
-         else
-             case "${host}" in
-             *-*-cygwin)
-@@ -4337,7 +4337,7 @@
-         fi
-         if test "$GXX" = yes
-         then
--            CXXFLAGS="$CXXFLAGS -W -Wall -pedantic -Wpointer-arith -Wwrite-strings -Wno-long-long"
-+            CXXFLAGS="$CXXFLAGS -pedantic -Wpointer-arith -Wwrite-strings -Wno-long-long"
-         else
-             case "${host}" in
-             *-*-cygwin)
diff --git a/package/icu/icu-003-detect-compiler-symbol-prefix.patch b/package/icu/icu-003-detect-compiler-symbol-prefix.patch
deleted file mode 100644 (file)
index 1e95375..0000000
+++ /dev/null
@@ -1,116 +0,0 @@
-detect and add compiler symbol prefix to the assembly code
-
-Some compiler, such as Blackfin GNU compiler, prefix a charater to any
-C symbol in generated assembly code. If any assembly symbol is invoked
-from C code, it needs to be prefixed as well.
-
-Note: since autoreconf doesn't work with this package because automake
-isn't support
-
-[Ryan: add information about why patching configure is ok]
-[Gustavo: update for ICU4C 54.1]
-
-Signed-off-by: Sonic Zhang <sonic.zhang@analog.com>
-Signed-off-by: Ryan Barnett <rjbarnet@rockwellcollins.com>
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura icu.orig/source/configure icu/source/configure
---- icu.orig/source/configure  2014-12-18 15:49:43.038628644 -0300
-+++ icu/source/configure       2014-12-18 15:56:05.793832186 -0300
-@@ -637,6 +637,7 @@
- ICUDATA_CHAR
- SAMPLES_TRUE
- TESTS_TRUE
-+SYMBOL_PREFIX
- ICULIBSUFFIXCNAME
- U_HAVE_LIB_SUFFIX
- ICULIBSUFFIX
-@@ -7414,6 +7415,17 @@
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CHECK_UTF16_STRING_RESULT" >&5
- $as_echo "$CHECK_UTF16_STRING_RESULT" >&6; }
-+# Check compiler generated symbol profix
-+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for symbol prefix" >&5
-+$as_echo "checking for symbol prefix... " >&6; }
-+   SYMBOL_PREFIX=`echo "PREFIX=__USER_LABEL_PREFIX__" \
-+                  | ${CPP-${CC-gcc} -E} - 2>&1 \
-+                  | ${EGREP-grep} "^PREFIX=" \
-+                  | sed -e "s:^PREFIX=::" -e "s:__USER_LABEL_PREFIX__::"`
-+
-+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SYMBOL_PREFIX" >&5
-+$as_echo "$SYMBOL_PREFIX" >&6; }
-+
- # Enable/disable extras
- # Check whether --enable-extras was given.
- if test "${enable_extras+set}" = set; then :
-diff -Nura icu.orig/source/data/Makefile.in icu/source/data/Makefile.in
---- icu.orig/source/data/Makefile.in   2014-12-18 15:49:42.908624160 -0300
-+++ icu/source/data/Makefile.in        2014-12-18 16:01:32.751110913 -0300
-@@ -182,11 +182,11 @@
- packagedata: icupkg.inc $(PKGDATA_LIST) build-local
- ifneq ($(ENABLE_STATIC),)
- ifeq ($(PKGDATA_MODE),dll)
--      $(PKGDATA_INVOKE) $(PKGDATA) -e $(ICUDATA_ENTRY_POINT) -T $(OUTTMPDIR) -p $(ICUDATA_NAME) $(PKGDATA_LIBSTATICNAME) -m static $(PKGDATA_VERSIONING) $(PKGDATA_LIST)
-+      $(PKGDATA_INVOKE) $(PKGDATA) -e @SYMBOL_PREFIX@$(ICUDATA_ENTRY_POINT) -T $(OUTTMPDIR) -p $(ICUDATA_NAME) $(PKGDATA_LIBSTATICNAME) -m static $(PKGDATA_VERSIONING) $(PKGDATA_LIST)
- endif
- endif
- ifneq ($(ICUDATA_SOURCE_IS_NATIVE_TARGET),YES)
--      $(PKGDATA_INVOKE) $(PKGDATA) -e $(ICUDATA_ENTRY_POINT) -T $(OUTTMPDIR) -p $(ICUDATA_NAME) -m $(PKGDATA_MODE) $(PKGDATA_VERSIONING) $(PKGDATA_LIBNAME) $(PKGDATA_LIST)
-+      $(PKGDATA_INVOKE) $(PKGDATA) -e @SYMBOL_PREFIX@$(ICUDATA_ENTRY_POINT) -T $(OUTTMPDIR) -p $(ICUDATA_NAME) -m $(PKGDATA_MODE) $(PKGDATA_VERSIONING) $(PKGDATA_LIBNAME) $(PKGDATA_LIST)
- else
-       $(INSTALL_DATA) $(ICUDATA_SOURCE_ARCHIVE) $(OUTDIR)
- endif
-@@ -209,11 +209,11 @@
- endif
- ifneq ($(ENABLE_STATIC),)
- ifeq ($(PKGDATA_MODE),dll)
--      $(PKGDATA_INVOKE) $(PKGDATA) -m static -e $(ICUDATA_ENTRY_POINT) -T $(OUTTMPDIR) -s $(BUILDDIR) -p $(ICUDATA_NAME) $(PKGDATA_LIBSTATICNAME) $(PKGDATA_LIST) -I $(ICUPKGDATA_INSTALL_LIBDIR)
-+      $(PKGDATA_INVOKE) $(PKGDATA) -m static -e @SYMBOL_PREFIX@$(ICUDATA_ENTRY_POINT) -T $(OUTTMPDIR) -s $(BUILDDIR) -p $(ICUDATA_NAME) $(PKGDATA_LIBSTATICNAME) $(PKGDATA_LIST) -I $(ICUPKGDATA_INSTALL_LIBDIR)
- endif
- endif
- ifneq ($(ICUDATA_SOURCE_IS_NATIVE_TARGET),YES)
--      $(PKGDATA_INVOKE) $(PKGDATA) -m $(PKGDATA_MODE) $(PKGDATA_VERSIONING) -e $(ICUDATA_ENTRY_POINT) -T $(OUTTMPDIR) -s $(BUILDDIR) -p $(ICUDATA_NAME) $(PKGDATA_LIBNAME) $(PKGDATA_LIST) -I $(ICUPKGDATA_INSTALL_DIR)
-+      $(PKGDATA_INVOKE) $(PKGDATA) -m $(PKGDATA_MODE) $(PKGDATA_VERSIONING) -e @SYMBOL_PREFIX@$(ICUDATA_ENTRY_POINT) -T $(OUTTMPDIR) -s $(BUILDDIR) -p $(ICUDATA_NAME) $(PKGDATA_LIBNAME) $(PKGDATA_LIST) -I $(ICUPKGDATA_INSTALL_DIR)
- else
-       $(INSTALL_DATA) $(ICUDATA_SOURCE_ARCHIVE) $(DESTDIR)$(ICUPKGDATA_DIR)
- endif
-@@ -224,7 +224,7 @@
- #### 390 support
- install390: package390
-       $(MKINSTALLDIRS) $(TMPDATADIR) $(DESTDIR)$(libdir)
--      $(INVOKE) $(PKGDATA) -s $(BUILDDIR)$(STUB_SUFFIX) -T $(OUTTMPDIR_390STUB) -p $(ICUDATA_NAME)$(STUB_SUFFIX) $(PKGDATA_LIBNAME)$(STUB_SUFFIX) -e $(ICUDATA_ENTRY_POINT) $(OS390LIST) -m dll $(PKGDATA_VERSIONING) -I $(DESTDIR)$(ICUPKGDATA_DIR)
-+      $(INVOKE) $(PKGDATA) -s $(BUILDDIR)$(STUB_SUFFIX) -T $(OUTTMPDIR_390STUB) -p $(ICUDATA_NAME)$(STUB_SUFFIX) $(PKGDATA_LIBNAME)$(STUB_SUFFIX) -e @SYMBOL_PREFIX@$(ICUDATA_ENTRY_POINT) $(OS390LIST) -m dll $(PKGDATA_VERSIONING) -I $(DESTDIR)$(ICUPKGDATA_DIR)
- ifeq ($(PKGDATA_MODE),dll)
-       $(INSTALL-L) $(ICUPKGDATA_OUTDIR)/$(FINAL_IMPORT_LIB) $(DESTDIR)$(ICUPKGDATA_DIR)/$(FINAL_IMPORT_LIB)
- endif
-@@ -232,7 +232,7 @@
- #### $(LIB_ICUDATA_NAME)$(STUB_SUFFIX) is the subset data for batch mode
- package390: $(OUTTMPDIR)/icudata390.lst $(PKGDATA_LIST) ./icupkg.inc packagedata
-       ln -s $(ICUDATA_NAME) $(OUTDIR)/build/$(ICUDATA_NAME)$(STUB_SUFFIX)
--      $(INVOKE) $(PKGDATA) -s $(BUILDDIR)$(STUB_SUFFIX) -T $(OUTTMPDIR_390STUB) -p $(ICUDATA_NAME)$(STUB_SUFFIX) $(PKGDATA_LIBNAME)$(STUB_SUFFIX) -e $(ICUDATA_ENTRY_POINT) $(OS390LIST) -m dll $(PKGDATA_VERSIONING)
-+      $(INVOKE) $(PKGDATA) -s $(BUILDDIR)$(STUB_SUFFIX) -T $(OUTTMPDIR_390STUB) -p $(ICUDATA_NAME)$(STUB_SUFFIX) $(PKGDATA_LIBNAME)$(STUB_SUFFIX) -e @SYMBOL_PREFIX@$(ICUDATA_ENTRY_POINT) $(OS390LIST) -m dll $(PKGDATA_VERSIONING)
-       cp $(ICUPKGDATA_OUTDIR)/$(LIB_ICUDATA_NAME)$(STUB_SUFFIX).$(SO) $(top_builddir)/stubdata/$(LIB_ICUDATA_NAME)$(STUB_SUFFIX).$(SO)
-diff -Nura icu.orig/source/extra/uconv/Makefile.in icu/source/extra/uconv/Makefile.in
---- icu.orig/source/extra/uconv/Makefile.in    2014-12-18 15:49:42.986626850 -0300
-+++ icu/source/extra/uconv/Makefile.in 2014-12-18 15:57:40.558101179 -0300
-@@ -58,7 +58,8 @@
- ## Static mode
- ifeq ($(UCONVMSG_MODE),static)
- DEFS += -DUCONVMSG_LINK=$(MSGNAME)
--UCONVMSG_LIB = $(RESDIR)/$(LIBPREFIX)$(STATIC_PREFIX_WHEN_USED)$(MSGNAME).$(A)
-+UCONVMSG_LIB = $(RESDIR)/$(LIBPREFIX)$(STATIC_PREFIX_WHEN_USED)@SYMBOL_PREFIX@$(MSGNAME).$(A)
-+
- LIBS += $(UCONVMSG_LIB)
- PKGMODE=static
- INSTALLTO=$(libdir)
-@@ -152,7 +153,7 @@
- endif
- $(UCONVMSG_LIB): $(RESFILES) $(RESDIR)/$(RESDIR).lst pkgdata.inc
--      $(INVOKE) $(PKGDATA_INVOKE_OPTS) $(TOOLBINDIR)/pkgdata -p $(MSGNAME) $(PKGDATA_OPTS) -m $(PKGMODE) -s $(RESDIR) -d $(RESDIR) -T $(RESDIR) $(RESDIR)/$(RESDIR).lst
-+      $(INVOKE) $(PKGDATA_INVOKE_OPTS) $(TOOLBINDIR)/pkgdata -p @SYMBOL_PREFIX@$(MSGNAME) $(PKGDATA_OPTS) -m $(PKGMODE) -s $(RESDIR) -d $(RESDIR) -T $(RESDIR) $(RESDIR)/$(RESDIR).lst
- $(RESDIR)/$(RESDIR).lst: Makefile $(srcdir)/resfiles.mk
-       @-$(RMV) $@
diff --git a/package/icu/icu-004-link-icudata-as-data-only.patch b/package/icu/icu-004-link-icudata-as-data-only.patch
deleted file mode 100644 (file)
index d970e8d..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-From d5d0c4bb7cc9aa4a132ec0bea13255aee50c1cf9 Mon Sep 17 00:00:00 2001
-From: Maxime Hadjinlian <maxime.hadjinlian@devialet.com>
-Date: Fri, 6 Jun 2014 14:55:58 +0200
-Subject: [PATCH] Don't link icudata as a data only library
-
-This patch cames straight from Debian. It fixes an issue when
-libicudata would not have some flags indicating it's EABIhf, causing
-applications linked against libicudata to not start on EABIhf
-systems. Getting rid of the -nodefaultlibs -nostdlib flags solves the
-problem, and is the solution that is used by Debian, see
-https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=653457.
-
-Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@devialet.com>
----
- source/config/mh-linux | 4 +++-
- 1 file changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/source/config/mh-linux b/source/config/mh-linux
-index 531a3b2..5a2a7c4 100644
---- a/source/config/mh-linux
-+++ b/source/config/mh-linux
-@@ -21,7 +21,9 @@ LD_RPATH= -Wl,-zorigin,-rpath,'$$'ORIGIN
- LD_RPATH_PRE = -Wl,-rpath,
-
- ## These are the library specific LDFLAGS
--LDFLAGSICUDT=-nodefaultlibs -nostdlib
-+#LDFLAGSICUDT=-nodefaultlibs -nostdlib
-+# Debian change: linking icudata as data only causes too many problems.
-+LDFLAGSICUDT=
-
- ## Compiler switch to embed a library name
- # The initial tab in the next line is to prevent icu-config from reading it.
---
-2.0.0.rc2
-
diff --git a/package/ifplugd/0001-cross.patch b/package/ifplugd/0001-cross.patch
new file mode 100644 (file)
index 0000000..6217238
--- /dev/null
@@ -0,0 +1,17 @@
+---
+ configure |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: ifplugd-0.28/configure
+===================================================================
+--- ifplugd-0.28.orig/configure
++++ ifplugd-0.28/configure
+@@ -5430,7 +5430,7 @@
+   echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+   if test "$cross_compiling" = yes; then
+-  ac_cv_func_malloc_0_nonnull=no
++  ac_cv_func_malloc_0_nonnull=yes
+ else
+   cat >conftest.$ac_ext <<_ACEOF
+ /* confdefs.h.  */
diff --git a/package/ifplugd/0002-fix-headers.patch b/package/ifplugd/0002-fix-headers.patch
new file mode 100644 (file)
index 0000000..06372a2
--- /dev/null
@@ -0,0 +1,24 @@
+---
+ src/interface.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: ifplugd-0.28/src/interface.c
+===================================================================
+--- ifplugd-0.28.orig/src/interface.c
++++ ifplugd-0.28/src/interface.c
+@@ -23,7 +23,6 @@
+ #endif
+ #include <linux/sockios.h>
+-#include <linux/if_ether.h>
+ #include <sys/types.h>
+ #include <sys/socket.h>
+ #include <sys/ioctl.h>
+@@ -32,6 +31,7 @@
+ #include <string.h>
+ #include <errno.h>
+ #include <netinet/in.h>
++#include <netinet/if_ether.h>
+ #include <stdio.h>
+ #include <ctype.h>
+ #include <stdlib.h>
diff --git a/package/ifplugd/0003-no-cxx.patch b/package/ifplugd/0003-no-cxx.patch
new file mode 100644 (file)
index 0000000..50ec054
--- /dev/null
@@ -0,0 +1,17 @@
+[PATCH] ifplugd: configure: don't check for C++ compiler
+
+The configure script was checking for a C++ compiler (and erroring out
+if not found), even though it isn't used for anything.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+diff -urpN ifplugd-0.28/configure.ac ifplugd-0.28.new/configure.ac
+--- ifplugd-0.28/configure.ac  2005-06-04 21:21:51.000000000 +0200
++++ ifplugd-0.28.new/configure.ac      2008-12-13 20:31:13.000000000 +0100
+@@ -33,7 +33,6 @@ if type -p stow > /dev/null && test -d /
+ fi
+ # Checks for programs.
+-AC_PROG_CXX
+ AC_PROG_CC
+ AC_PROG_CPP
+ AC_PROG_INSTALL
diff --git a/package/ifplugd/ifplugd-cross.patch b/package/ifplugd/ifplugd-cross.patch
deleted file mode 100644 (file)
index 6217238..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
----
- configure |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Index: ifplugd-0.28/configure
-===================================================================
---- ifplugd-0.28.orig/configure
-+++ ifplugd-0.28/configure
-@@ -5430,7 +5430,7 @@
-   echo $ECHO_N "(cached) $ECHO_C" >&6
- else
-   if test "$cross_compiling" = yes; then
--  ac_cv_func_malloc_0_nonnull=no
-+  ac_cv_func_malloc_0_nonnull=yes
- else
-   cat >conftest.$ac_ext <<_ACEOF
- /* confdefs.h.  */
diff --git a/package/ifplugd/ifplugd-fix-headers.patch b/package/ifplugd/ifplugd-fix-headers.patch
deleted file mode 100644 (file)
index 06372a2..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
----
- src/interface.c |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Index: ifplugd-0.28/src/interface.c
-===================================================================
---- ifplugd-0.28.orig/src/interface.c
-+++ ifplugd-0.28/src/interface.c
-@@ -23,7 +23,6 @@
- #endif
- #include <linux/sockios.h>
--#include <linux/if_ether.h>
- #include <sys/types.h>
- #include <sys/socket.h>
- #include <sys/ioctl.h>
-@@ -32,6 +31,7 @@
- #include <string.h>
- #include <errno.h>
- #include <netinet/in.h>
-+#include <netinet/if_ether.h>
- #include <stdio.h>
- #include <ctype.h>
- #include <stdlib.h>
diff --git a/package/ifplugd/ifplugd-no-cxx.patch b/package/ifplugd/ifplugd-no-cxx.patch
deleted file mode 100644 (file)
index 50ec054..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-[PATCH] ifplugd: configure: don't check for C++ compiler
-
-The configure script was checking for a C++ compiler (and erroring out
-if not found), even though it isn't used for anything.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
-diff -urpN ifplugd-0.28/configure.ac ifplugd-0.28.new/configure.ac
---- ifplugd-0.28/configure.ac  2005-06-04 21:21:51.000000000 +0200
-+++ ifplugd-0.28.new/configure.ac      2008-12-13 20:31:13.000000000 +0100
-@@ -33,7 +33,6 @@ if type -p stow > /dev/null && test -d /
- fi
- # Checks for programs.
--AC_PROG_CXX
- AC_PROG_CC
- AC_PROG_CPP
- AC_PROG_INSTALL
diff --git a/package/igmpproxy/0001-uclinux.patch b/package/igmpproxy/0001-uclinux.patch
new file mode 100644 (file)
index 0000000..7fa4a23
--- /dev/null
@@ -0,0 +1,16 @@
+configure.ac: uclinux is also linux
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura igmpproxy-0.1.orig/configure.ac igmpproxy-0.1/configure.ac
+--- igmpproxy-0.1.orig/configure.ac    2014-03-12 18:43:02.369323771 -0300
++++ igmpproxy-0.1/configure.ac 2014-03-12 18:43:22.129979179 -0300
+@@ -7,7 +7,7 @@
+ AC_CANONICAL_HOST
+ case $host_os in
+-      linux*) os=linux;;
++      linux*|uclinux*) os=linux;;
+       freebsd*) os=freebsd;;
+       netbsd*) os=netbsd;;
+       openbsd*) os=openbsd;;
diff --git a/package/igmpproxy/igmpproxy-01-uclinux.patch b/package/igmpproxy/igmpproxy-01-uclinux.patch
deleted file mode 100644 (file)
index 7fa4a23..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-configure.ac: uclinux is also linux
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura igmpproxy-0.1.orig/configure.ac igmpproxy-0.1/configure.ac
---- igmpproxy-0.1.orig/configure.ac    2014-03-12 18:43:02.369323771 -0300
-+++ igmpproxy-0.1/configure.ac 2014-03-12 18:43:22.129979179 -0300
-@@ -7,7 +7,7 @@
- AC_CANONICAL_HOST
- case $host_os in
--      linux*) os=linux;;
-+      linux*|uclinux*) os=linux;;
-       freebsd*) os=freebsd;;
-       netbsd*) os=netbsd;;
-       openbsd*) os=openbsd;;
diff --git a/package/infozip/0001-configure-fix-cross-build.patch b/package/infozip/0001-configure-fix-cross-build.patch
new file mode 100644 (file)
index 0000000..0b939b3
--- /dev/null
@@ -0,0 +1,237 @@
+From 941c322e4378e0ef09f21bfd7b2a337b8f812629 Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@openwide.fr>
+Date: Mon, 27 Jan 2014 22:42:53 +0100
+Subject: [PATCH 1/1] configure: fix cross-compilation issues
+
+- Use CFLAGS from command line
+
+- Remove "Check C compiler type (optimization options)"
+  This test force optimization to -O3
+  while it is already set in CFLAGS
+
+- Don't use host CPP
+
+- Remove "Check for Large File Support"
+  LFS support is already set in CFLAGS
+
+Note: configure script still use host nm
+
+Signed-off-by: Romain Naour <romain.naour@openwide.fr>
+---
+ unix/Makefile  |   4 +-
+ unix/configure | 161 +--------------------------------------------------------
+ 2 files changed, 3 insertions(+), 162 deletions(-)
+
+diff --git a/unix/Makefile b/unix/Makefile
+index abd0c44..8388c74 100644
+--- a/unix/Makefile
++++ b/unix/Makefile
+@@ -58,7 +58,7 @@ IZ_OUR_BZIP2_DIR = bzip2
+ #   LFLAGS1   flags after output file spec, before obj file list
+ #   LFLAGS2   flags after obj file list (libraries, etc)
+ CFLAGS_NOOPT = -I. -DUNIX $(LOCAL_ZIP)
+-CFLAGS = -O2 $(CFLAGS_NOOPT)
++CFLAGS ?= -O2 $(CFLAGS_NOOPT)
+ LFLAGS1 =
+ LFLAGS2 = -s
+@@ -177,7 +177,7 @@ uninstall:
+ flags:  unix/configure
+-      sh unix/configure "${CC}" "${CFLAGS_NOOPT}" "${IZ_BZIP2}"
++      sh unix/configure "${CC}" "${CFLAGS}" "${IZ_BZIP2}"
+ # These symbols, when #defined using -D have these effects on compilation:
+ # ZMEM                  - includes C language versions of memset(), memcpy(),
+diff --git a/unix/configure b/unix/configure
+index 73ba803..57272db 100644
+--- a/unix/configure
++++ b/unix/configure
+@@ -22,109 +22,9 @@ LFLAGS1=''
+ LFLAGS2=''
+ LN="ln -s"
+-CFLAGS_OPT=''
+-
+ # bzip2
+ IZ_BZIP2=${3-}
+-CFLAGS_BZ=''
+-
+-
+-echo 'Check C compiler type (optimization options)'
+-# Sun C?
+-cat > conftest.c << _EOF_
+-int main()
+-{
+-#ifndef __SUNPRO_C
+-   bad code
+-#endif
+-   return 0;
+-}
+-_EOF_
+-$CC $CFLAGS -c conftest.c > /dev/null 2>/dev/null
+-if test $? -eq 0; then
+-  CFLAGS_OPT='-xO3'
+-  echo "  Sun C ($CFLAGS_OPT)"
+-else
+-  # Tru64 DEC/Compaq/HP C?
+-  cat > conftest.c << _EOF_
+-int main()
+-{
+-#ifndef __DECC
+-   bad code
+-#endif
+-   return 0;
+-}
+-_EOF_
+-  $CC $CFLAGS -c conftest.c > /dev/null 2>/dev/null
+-  if test $? -eq 0; then
+-    CFLAGS_OPT='-O3'
+-    echo "  DEC C ($CFLAGS_OPT)"
+-  else
+-    # HP-UX HP C?
+-    cat > conftest.c << _EOF_
+-int main()
+-{
+-#ifdef __GNUC__
+-   bad code
+-#endif
+-#ifndef __hpux
+-   bad code
+-#endif
+-   return 0;
+-}
+-_EOF_
+-    $CC $CFLAGS -c conftest.c > /dev/null 2>/dev/null
+-    if test $? -eq 0; then
+-      # HP-UX, not GCC.  Lame bundled or real ANSI compiler?
+-      CFLAGS_OPT_TRY="+O3 +Onolimit"
+-      $CC $CFLAGS $CFLAGS_OPT_TRY -c conftest.c 2>&1 | \
+-       grep '(Bundled)' > /dev/null
+-      if test $? -ne 0; then
+-        CFLAGS_OPT="$CFLAGS_OPT_TRY"
+-        echo "  HP-UX ANSI C ($CFLAGS_OPT)"
+-      else
+-        echo '  HP-UX Bundled C (no opt)'
+-      fi
+-    else
+-      # GNU C?
+-      cat > conftest.c << _EOF_
+-int main()
+-{
+-#ifndef __GNUC__
+-   bad code
+-#endif
+-   return 0;
+-}
+-_EOF_
+-      $CC $CFLAGS -c conftest.c > /dev/null 2>/dev/null
+-      if test $? -eq 0; then
+-        CFLAGS_OPT='-O3'
+-        echo "  GNU C ($CFLAGS_OPT)"
+-        # Special Mac OS X shared library "ld" option?
+-        if test ` uname -s 2> /dev/null ` = 'Darwin'; then
+-          lf='-Wl,-search_paths_first'
+-          $CC $CFLAGS $lf conftest.c > /dev/null 2>/dev/null
+-          if test $? -eq 0; then
+-            LFLAGS2="${LFLAGS2} ${lf}"
+-          fi
+-          rm -f conftest
+-        fi
+-      else
+-        CFLAGS_OPT='-O'
+-        echo "  Other-unknown C ($CFLAGS_OPT)"
+-      fi
+-    fi
+-  fi
+-fi
+-
+-# optimization flags
+-if test -n "${CFLAGS_OPT}"; then
+-  CFLAGS="${CFLAGS} ${CFLAGS_OPT}"
+-  CFLAGS_BZ="${CFLAGS_BZ} ${CFLAGS_OPT}"
+-fi
+-
+-
+-# bzip2
++CFLAGS_BZ="${CFLAGS}"
+ echo "Check bzip2 support"
+ CC_BZ="${CC}"
+@@ -220,13 +120,6 @@ fi
+ echo Check for the C preprocessor
+ # on SVR4, cc -E does not produce correct assembler files. Need /lib/cpp.
+ CPP="${CC} -E"
+-# solaris as(1) needs -P, maybe others as well ?
+-[ -f /usr/ccs/lib/cpp ] && CPP="/usr/ccs/lib/cpp -P"
+-[ -f /usr/lib/cpp ] && CPP=/usr/lib/cpp
+-[ -f /lib/cpp ] && CPP=/lib/cpp
+-[ -f /usr/bin/cpp ] && CPP=/usr/bin/cpp
+-[ -f /xenix ] && CPP="${CC} -E"
+-[ -f /lynx.os ] && CPP="${CC} -E"
+ echo "#include <stdio.h>" > conftest.c
+ $CPP conftest.c >/dev/null 2>/dev/null || CPP="${CC} -E"
+@@ -398,58 +291,6 @@ else
+   fi
+ fi
+-
+-# Now we set the 64-bit file environment and check the size of off_t
+-# Added 11/4/2003 EG
+-# Revised 8/12/2004 EG
+-
+-echo Check for Large File Support
+-cat > conftest.c << _EOF_
+-# define _LARGEFILE_SOURCE       /* some OSes need this for fseeko */
+-# define _LARGEFILE64_SOURCE
+-# define _FILE_OFFSET_BITS 64       /* select default interface as 64 bit */
+-# define _LARGE_FILES        /* some OSes need this for 64-bit off_t */
+-#include <sys/types.h>
+-#include <sys/stat.h>
+-#include <unistd.h>
+-#include <stdio.h>
+-int main()
+-{
+-  off_t offset;
+-  struct stat s;
+-  /* see if have 64-bit off_t */
+-  if (sizeof(offset) < 8)
+-    return 1;
+-  printf("  off_t is %d bytes\n", sizeof(off_t));
+-  /* see if have 64-bit stat */
+-  if (sizeof(s.st_size) < 8) {
+-    printf("  s.st_size is %d bytes\n", sizeof(s.st_size));
+-    return 2;
+-  }
+-  return 3;
+-}
+-_EOF_
+-# compile it
+-$CC -o conftest conftest.c >/dev/null 2>/dev/null
+-if [ $? -ne 0 ]; then
+-  echo -- no Large File Support
+-else
+-# run it
+-  ./conftest
+-  r=$?
+-  if [ $r -eq 1 ]; then
+-    echo -- no Large File Support - no 64-bit off_t
+-  elif [ $r -eq 2 ]; then
+-    echo -- no Large File Support - no 64-bit stat
+-  elif [ $r -eq 3 ]; then
+-    echo -- yes we have Large File Support!
+-    CFLAGS="${CFLAGS} -DLARGE_FILE_SUPPORT"
+-  else
+-    echo -- no Large File Support - conftest returned $r
+-  fi
+-fi
+-
+-
+ # Check for wide char for Unicode support
+ # Added 11/24/2005 EG
+-- 
+1.8.5.3
+
diff --git a/package/infozip/infozip-0001-configure-fix-cross-build.patch b/package/infozip/infozip-0001-configure-fix-cross-build.patch
deleted file mode 100644 (file)
index 0b939b3..0000000
+++ /dev/null
@@ -1,237 +0,0 @@
-From 941c322e4378e0ef09f21bfd7b2a337b8f812629 Mon Sep 17 00:00:00 2001
-From: Romain Naour <romain.naour@openwide.fr>
-Date: Mon, 27 Jan 2014 22:42:53 +0100
-Subject: [PATCH 1/1] configure: fix cross-compilation issues
-
-- Use CFLAGS from command line
-
-- Remove "Check C compiler type (optimization options)"
-  This test force optimization to -O3
-  while it is already set in CFLAGS
-
-- Don't use host CPP
-
-- Remove "Check for Large File Support"
-  LFS support is already set in CFLAGS
-
-Note: configure script still use host nm
-
-Signed-off-by: Romain Naour <romain.naour@openwide.fr>
----
- unix/Makefile  |   4 +-
- unix/configure | 161 +--------------------------------------------------------
- 2 files changed, 3 insertions(+), 162 deletions(-)
-
-diff --git a/unix/Makefile b/unix/Makefile
-index abd0c44..8388c74 100644
---- a/unix/Makefile
-+++ b/unix/Makefile
-@@ -58,7 +58,7 @@ IZ_OUR_BZIP2_DIR = bzip2
- #   LFLAGS1   flags after output file spec, before obj file list
- #   LFLAGS2   flags after obj file list (libraries, etc)
- CFLAGS_NOOPT = -I. -DUNIX $(LOCAL_ZIP)
--CFLAGS = -O2 $(CFLAGS_NOOPT)
-+CFLAGS ?= -O2 $(CFLAGS_NOOPT)
- LFLAGS1 =
- LFLAGS2 = -s
-@@ -177,7 +177,7 @@ uninstall:
- flags:  unix/configure
--      sh unix/configure "${CC}" "${CFLAGS_NOOPT}" "${IZ_BZIP2}"
-+      sh unix/configure "${CC}" "${CFLAGS}" "${IZ_BZIP2}"
- # These symbols, when #defined using -D have these effects on compilation:
- # ZMEM                  - includes C language versions of memset(), memcpy(),
-diff --git a/unix/configure b/unix/configure
-index 73ba803..57272db 100644
---- a/unix/configure
-+++ b/unix/configure
-@@ -22,109 +22,9 @@ LFLAGS1=''
- LFLAGS2=''
- LN="ln -s"
--CFLAGS_OPT=''
--
- # bzip2
- IZ_BZIP2=${3-}
--CFLAGS_BZ=''
--
--
--echo 'Check C compiler type (optimization options)'
--# Sun C?
--cat > conftest.c << _EOF_
--int main()
--{
--#ifndef __SUNPRO_C
--   bad code
--#endif
--   return 0;
--}
--_EOF_
--$CC $CFLAGS -c conftest.c > /dev/null 2>/dev/null
--if test $? -eq 0; then
--  CFLAGS_OPT='-xO3'
--  echo "  Sun C ($CFLAGS_OPT)"
--else
--  # Tru64 DEC/Compaq/HP C?
--  cat > conftest.c << _EOF_
--int main()
--{
--#ifndef __DECC
--   bad code
--#endif
--   return 0;
--}
--_EOF_
--  $CC $CFLAGS -c conftest.c > /dev/null 2>/dev/null
--  if test $? -eq 0; then
--    CFLAGS_OPT='-O3'
--    echo "  DEC C ($CFLAGS_OPT)"
--  else
--    # HP-UX HP C?
--    cat > conftest.c << _EOF_
--int main()
--{
--#ifdef __GNUC__
--   bad code
--#endif
--#ifndef __hpux
--   bad code
--#endif
--   return 0;
--}
--_EOF_
--    $CC $CFLAGS -c conftest.c > /dev/null 2>/dev/null
--    if test $? -eq 0; then
--      # HP-UX, not GCC.  Lame bundled or real ANSI compiler?
--      CFLAGS_OPT_TRY="+O3 +Onolimit"
--      $CC $CFLAGS $CFLAGS_OPT_TRY -c conftest.c 2>&1 | \
--       grep '(Bundled)' > /dev/null
--      if test $? -ne 0; then
--        CFLAGS_OPT="$CFLAGS_OPT_TRY"
--        echo "  HP-UX ANSI C ($CFLAGS_OPT)"
--      else
--        echo '  HP-UX Bundled C (no opt)'
--      fi
--    else
--      # GNU C?
--      cat > conftest.c << _EOF_
--int main()
--{
--#ifndef __GNUC__
--   bad code
--#endif
--   return 0;
--}
--_EOF_
--      $CC $CFLAGS -c conftest.c > /dev/null 2>/dev/null
--      if test $? -eq 0; then
--        CFLAGS_OPT='-O3'
--        echo "  GNU C ($CFLAGS_OPT)"
--        # Special Mac OS X shared library "ld" option?
--        if test ` uname -s 2> /dev/null ` = 'Darwin'; then
--          lf='-Wl,-search_paths_first'
--          $CC $CFLAGS $lf conftest.c > /dev/null 2>/dev/null
--          if test $? -eq 0; then
--            LFLAGS2="${LFLAGS2} ${lf}"
--          fi
--          rm -f conftest
--        fi
--      else
--        CFLAGS_OPT='-O'
--        echo "  Other-unknown C ($CFLAGS_OPT)"
--      fi
--    fi
--  fi
--fi
--
--# optimization flags
--if test -n "${CFLAGS_OPT}"; then
--  CFLAGS="${CFLAGS} ${CFLAGS_OPT}"
--  CFLAGS_BZ="${CFLAGS_BZ} ${CFLAGS_OPT}"
--fi
--
--
--# bzip2
-+CFLAGS_BZ="${CFLAGS}"
- echo "Check bzip2 support"
- CC_BZ="${CC}"
-@@ -220,13 +120,6 @@ fi
- echo Check for the C preprocessor
- # on SVR4, cc -E does not produce correct assembler files. Need /lib/cpp.
- CPP="${CC} -E"
--# solaris as(1) needs -P, maybe others as well ?
--[ -f /usr/ccs/lib/cpp ] && CPP="/usr/ccs/lib/cpp -P"
--[ -f /usr/lib/cpp ] && CPP=/usr/lib/cpp
--[ -f /lib/cpp ] && CPP=/lib/cpp
--[ -f /usr/bin/cpp ] && CPP=/usr/bin/cpp
--[ -f /xenix ] && CPP="${CC} -E"
--[ -f /lynx.os ] && CPP="${CC} -E"
- echo "#include <stdio.h>" > conftest.c
- $CPP conftest.c >/dev/null 2>/dev/null || CPP="${CC} -E"
-@@ -398,58 +291,6 @@ else
-   fi
- fi
--
--# Now we set the 64-bit file environment and check the size of off_t
--# Added 11/4/2003 EG
--# Revised 8/12/2004 EG
--
--echo Check for Large File Support
--cat > conftest.c << _EOF_
--# define _LARGEFILE_SOURCE       /* some OSes need this for fseeko */
--# define _LARGEFILE64_SOURCE
--# define _FILE_OFFSET_BITS 64       /* select default interface as 64 bit */
--# define _LARGE_FILES        /* some OSes need this for 64-bit off_t */
--#include <sys/types.h>
--#include <sys/stat.h>
--#include <unistd.h>
--#include <stdio.h>
--int main()
--{
--  off_t offset;
--  struct stat s;
--  /* see if have 64-bit off_t */
--  if (sizeof(offset) < 8)
--    return 1;
--  printf("  off_t is %d bytes\n", sizeof(off_t));
--  /* see if have 64-bit stat */
--  if (sizeof(s.st_size) < 8) {
--    printf("  s.st_size is %d bytes\n", sizeof(s.st_size));
--    return 2;
--  }
--  return 3;
--}
--_EOF_
--# compile it
--$CC -o conftest conftest.c >/dev/null 2>/dev/null
--if [ $? -ne 0 ]; then
--  echo -- no Large File Support
--else
--# run it
--  ./conftest
--  r=$?
--  if [ $r -eq 1 ]; then
--    echo -- no Large File Support - no 64-bit off_t
--  elif [ $r -eq 2 ]; then
--    echo -- no Large File Support - no 64-bit stat
--  elif [ $r -eq 3 ]; then
--    echo -- yes we have Large File Support!
--    CFLAGS="${CFLAGS} -DLARGE_FILE_SUPPORT"
--  else
--    echo -- no Large File Support - conftest returned $r
--  fi
--fi
--
--
- # Check for wide char for Unicode support
- # Added 11/24/2005 EG
--- 
-1.8.5.3
-
diff --git a/package/input-tools/0001-rint.patch b/package/input-tools/0001-rint.patch
new file mode 100644 (file)
index 0000000..b2aa13f
--- /dev/null
@@ -0,0 +1,18 @@
+diff -urN joystick-20051019.orig/utils/jscal.c joystick-20051019/utils/jscal.c
+--- joystick-20051019.orig/utils/jscal.c       2004-10-19 09:51:52.000000000 +0200
++++ joystick-20051019/utils/jscal.c    2009-01-18 10:48:50.000000000 +0100
+@@ -141,10 +141,10 @@
+       c = 32767.0 / (inputs.cmin[1] - inputs.cmax[0]);
+       d = 32767.0 / (inputs.cmin[2] - inputs.cmax[1]);
+-      results[0] = rint(a);
+-      results[1] = rint(b);
+-      results[2] = rint(c*16384.0);
+-      results[3] = rint(d*16384.0);
++      results[0] = (int) (a + 0.5);
++      results[1] = (int) (b + 0.5);
++      results[2] = (int) (c*16384.0 + 0.5);
++      results[3] = (int) (d*16384.0 + 0.5);
+       return 1;
+ }
diff --git a/package/input-tools/input-tools-20051019-rint.patch b/package/input-tools/input-tools-20051019-rint.patch
deleted file mode 100644 (file)
index b2aa13f..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-diff -urN joystick-20051019.orig/utils/jscal.c joystick-20051019/utils/jscal.c
---- joystick-20051019.orig/utils/jscal.c       2004-10-19 09:51:52.000000000 +0200
-+++ joystick-20051019/utils/jscal.c    2009-01-18 10:48:50.000000000 +0100
-@@ -141,10 +141,10 @@
-       c = 32767.0 / (inputs.cmin[1] - inputs.cmax[0]);
-       d = 32767.0 / (inputs.cmin[2] - inputs.cmax[1]);
--      results[0] = rint(a);
--      results[1] = rint(b);
--      results[2] = rint(c*16384.0);
--      results[3] = rint(d*16384.0);
-+      results[0] = (int) (a + 0.5);
-+      results[1] = (int) (b + 0.5);
-+      results[2] = (int) (c*16384.0 + 0.5);
-+      results[3] = (int) (d*16384.0 + 0.5);
-       return 1;
- }
diff --git a/package/iostat/0001-cpunum.patch b/package/iostat/0001-cpunum.patch
new file mode 100644 (file)
index 0000000..0e75dbf
--- /dev/null
@@ -0,0 +1,27 @@
+From bf646965f75cdad77a45fa3b0046e093b202b2ce Mon Sep 17 00:00:00 2001
+From: Gustavo Zacarias <gustavo@zacarias.com.ar>
+Date: Thu, 22 Jul 2010 12:42:10 -0300
+Subject: [PATCH] Make cpu number counter more reliable
+
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+---
+ iostat.c |    2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/iostat.c b/iostat.c
+index 13e2af7..5d74085 100644
+--- a/iostat.c
++++ b/iostat.c
+@@ -140,7 +140,7 @@ void get_number_of_cpus()
+       handle_error("Can't open /proc/cpuinfo", !ncpufp);
+       while (fgets(buffer, sizeof(buffer), ncpufp)) {
+-              if (!strncmp(buffer, "processor\t:", 11))
++              if (!strncasecmp(buffer, "processor\t", 10))
+                       ncpu++;
+       }
+       fclose(ncpufp);
+-- 
+1.7.1
+
diff --git a/package/iostat/iostat-cpunum.patch b/package/iostat/iostat-cpunum.patch
deleted file mode 100644 (file)
index 0e75dbf..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-From bf646965f75cdad77a45fa3b0046e093b202b2ce Mon Sep 17 00:00:00 2001
-From: Gustavo Zacarias <gustavo@zacarias.com.ar>
-Date: Thu, 22 Jul 2010 12:42:10 -0300
-Subject: [PATCH] Make cpu number counter more reliable
-
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
----
- iostat.c |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/iostat.c b/iostat.c
-index 13e2af7..5d74085 100644
---- a/iostat.c
-+++ b/iostat.c
-@@ -140,7 +140,7 @@ void get_number_of_cpus()
-       handle_error("Can't open /proc/cpuinfo", !ncpufp);
-       while (fgets(buffer, sizeof(buffer), ncpufp)) {
--              if (!strncmp(buffer, "processor\t:", 11))
-+              if (!strncasecmp(buffer, "processor\t", 10))
-                       ncpu++;
-       }
-       fclose(ncpufp);
--- 
-1.7.1
-
diff --git a/package/iozone/0001-targets.patch b/package/iozone/0001-targets.patch
new file mode 100644 (file)
index 0000000..258b960
--- /dev/null
@@ -0,0 +1,92 @@
+Add new targets for iozone:
+
+linux-noaio is for linux targets without AIO (use case: uClibc)
+linux-noth is for linux target without threads or AIO
+
+And make largefile support optional via CFLAGS.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura iozone3_414.orig/src/current/makefile iozone3_414/src/current/makefile
+--- iozone3_414.orig/src/current/makefile      2013-06-11 09:48:18.257837091 -0300
++++ iozone3_414/src/current/makefile   2013-06-11 13:05:56.338162144 -0300
+@@ -166,10 +166,28 @@
+ # GNU 'C' compiler Linux build with threads, largefiles, async I/O 
+ #
+ linux:        iozone_linux.o libasync.o libbif.o fileop_linux.o pit_server.o
+-      $(CC)  -O3 $(LDFLAGS) iozone_linux.o libasync.o libbif.o -lpthread \
++      $(CC)  $(CFLAGS) $(LDFLAGS) iozone_linux.o libasync.o libbif.o \
++              -lpthread -lrt -o iozone
++      $(CC)  $(CFLAGS) -Dlinux fileop_linux.o -o fileop
++      $(CC)  $(CFLAGS) -Dlinux pit_server.o -o pit_server
++
++#
++# GNU 'C' compiler Linux build with threads, largefiles
++#
++linux-noaio: iozone_linux-noaio.o libbif.o fileop_linux.o pit_server.o
++      $(CC)  $(CFLAGS) $(LDFLAGS) iozone_linux-noaio.o libbif.o \
++              -lpthread -lrt -o iozone
++      $(CC)  $(CFLAGS) -Dlinux fileop_linux.o -o fileop
++      $(CC)  $(CFLAGS) -Dlinux pit_server.o -o pit_server
++
++#
++# GNU 'C' compiler Linux build with largefiles
++#
++linux-noth: iozone_linux-noth.o libbif.o fileop_linux.o pit_server.o
++      $(CC)  $(CFLAGS) $(LDFLAGS) iozone_linux-noth.o libbif.o \
+               -lrt -o iozone
+-      $(CC)  -O3 -Dlinux fileop_linux.o -o fileop
+-      $(CC)  -O3 -Dlinux pit_server.o -o pit_server
++      $(CC)  $(CFLAGS) -Dlinux fileop_linux.o -o fileop
++      $(CC)  $(CFLAGS) -Dlinux pit_server.o -o pit_server
+ #
+ # GNU 'C' compiler Linux build for powerpc chip with threads, largefiles, async I/O 
+@@ -795,13 +813,33 @@
+       @echo ""
+       @echo "Building iozone for Linux"
+       @echo ""
+-      $(CC) -Wall -c -O3 -Dunix -DHAVE_ANSIC_C -DASYNC_IO -DHAVE_PREAD \
+-              -DSHARED_MEM -Dlinux -D_LARGEFILE64_SOURCE $(CFLAGS) iozone.c \
++      $(CC) -Wall -c -Dunix -DHAVE_ANSIC_C -DASYNC_IO -DHAVE_PREAD \
++              -DSHARED_MEM -Dlinux $(CFLAGS) iozone.c \
+               -DNAME='"linux"' -o iozone_linux.o
+-      $(CC) -Wall -c -O3 -Dunix -DHAVE_ANSIC_C -DASYNC_IO -D_LARGEFILE64_SOURCE \
++      $(CC) -Wall -c -Dunix -DHAVE_ANSIC_C -DASYNC_IO \
++              -DSHARED_MEM -Dlinux $(CFLAGS) libbif.c -o libbif.o
++      $(CC) -Wall -c -Dunix -Dlinux -DHAVE_ANSIC_C -DASYNC_IO \
++              $(CFLAGS) libasync.c  -o libasync.o 
++
++iozone_linux-noaio.o: iozone.c libbif.c
++      @echo ""
++      @echo "Building iozone for Linux no AIO"
++      @echo ""
++      $(CC) -Wall -c -Dunix -DHAVE_ANSIC_C -DHAVE_PREAD \
++              -DSHARED_MEM -Dlinux $(CFLAGS) iozone.c \
++              -DNAME='"linux"' -o iozone_linux-noaio.o
++      $(CC) -Wall -c -Dunix -DHAVE_ANSIC_C \
++              -DSHARED_MEM -Dlinux $(CFLAGS) libbif.c -o libbif.o
++
++iozone_linux-noth.o: iozone.c libbif.c
++      @echo ""
++      @echo "Building iozone for Linux with no threads"
++      @echo ""
++      $(CC) -Wall -c -Dunix -DHAVE_ANSIC_C -DNO_THREADS -DHAVE_PREAD \
++              -DSHARED_MEM -Dlinux $(CFLAGS) iozone.c \
++              -DNAME='"linux"' -o iozone_linux-noth.o
++      $(CC) -Wall -c -Dunix -DHAVE_ANSIC_C -DNO_THREADS \
+               -DSHARED_MEM -Dlinux $(CFLAGS) libbif.c -o libbif.o
+-      $(CC) -Wall -c -O3 -Dunix -Dlinux -DHAVE_ANSIC_C -DASYNC_IO \
+-              -D_LARGEFILE64_SOURCE $(CFLAGS) libasync.c  -o libasync.o 
+ fileop_AIX.o: fileop.c
+       @echo ""
+@@ -893,7 +931,7 @@
+       @echo ""
+       @echo "Building fileop for Linux"
+       @echo ""
+-      $(CC) -Wall -c -O3 $(CFLAGS) fileop.c -o fileop_linux.o
++      $(CC) -Wall -c $(CFLAGS) fileop.c -o fileop_linux.o
+ fileop_openbsd.o:     fileop.c
+       @echo ""
diff --git a/package/iozone/0002-no-nptl-support.patch b/package/iozone/0002-no-nptl-support.patch
new file mode 100644 (file)
index 0000000..493f52c
--- /dev/null
@@ -0,0 +1,37 @@
+Dummy pthread_setaffinity_np() when not available
+
+On uClibc configurations that do not use the NPTL thread
+implementation, pthread_setaffinity_np() is not available. This patch
+defines a dummy (empty) implementation of this function for such
+cases.
+
+The only few architectures that do not provide the NPTL thread
+implementation are very likely to be non-SMP architectures, and
+therefore, setting the affinity of the thread is not doing anything
+useful, so having an empty stub for pthread_setaffinity_np() is not a
+problem.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/src/current/iozone.c
+===================================================================
+--- a/src/current/iozone.c
++++ b/src/current/iozone.c
+@@ -306,6 +306,17 @@
+ #endif
+ #endif
++#if defined (__linux__)
++#include <features.h>
++#if defined (__UCLIBC__) && !defined (__UCLIBC_HAS_THREADS_NATIVE__)
++static int pthread_setaffinity_np(pthread_t thread, size_t cpusetsize,
++                                const cpu_set_t *cpuset)
++{
++      return 0;
++}
++#endif
++#endif
++
+ #if ((defined(solaris) && defined(__LP64__)) || defined(__s390x__))
+ /* If we are building for 64-bit Solaris, all functions that return pointers
+  * must be declared before they are used; otherwise the compiler will assume
diff --git a/package/iozone/iozone-01-targets.patch b/package/iozone/iozone-01-targets.patch
deleted file mode 100644 (file)
index 258b960..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-Add new targets for iozone:
-
-linux-noaio is for linux targets without AIO (use case: uClibc)
-linux-noth is for linux target without threads or AIO
-
-And make largefile support optional via CFLAGS.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura iozone3_414.orig/src/current/makefile iozone3_414/src/current/makefile
---- iozone3_414.orig/src/current/makefile      2013-06-11 09:48:18.257837091 -0300
-+++ iozone3_414/src/current/makefile   2013-06-11 13:05:56.338162144 -0300
-@@ -166,10 +166,28 @@
- # GNU 'C' compiler Linux build with threads, largefiles, async I/O 
- #
- linux:        iozone_linux.o libasync.o libbif.o fileop_linux.o pit_server.o
--      $(CC)  -O3 $(LDFLAGS) iozone_linux.o libasync.o libbif.o -lpthread \
-+      $(CC)  $(CFLAGS) $(LDFLAGS) iozone_linux.o libasync.o libbif.o \
-+              -lpthread -lrt -o iozone
-+      $(CC)  $(CFLAGS) -Dlinux fileop_linux.o -o fileop
-+      $(CC)  $(CFLAGS) -Dlinux pit_server.o -o pit_server
-+
-+#
-+# GNU 'C' compiler Linux build with threads, largefiles
-+#
-+linux-noaio: iozone_linux-noaio.o libbif.o fileop_linux.o pit_server.o
-+      $(CC)  $(CFLAGS) $(LDFLAGS) iozone_linux-noaio.o libbif.o \
-+              -lpthread -lrt -o iozone
-+      $(CC)  $(CFLAGS) -Dlinux fileop_linux.o -o fileop
-+      $(CC)  $(CFLAGS) -Dlinux pit_server.o -o pit_server
-+
-+#
-+# GNU 'C' compiler Linux build with largefiles
-+#
-+linux-noth: iozone_linux-noth.o libbif.o fileop_linux.o pit_server.o
-+      $(CC)  $(CFLAGS) $(LDFLAGS) iozone_linux-noth.o libbif.o \
-               -lrt -o iozone
--      $(CC)  -O3 -Dlinux fileop_linux.o -o fileop
--      $(CC)  -O3 -Dlinux pit_server.o -o pit_server
-+      $(CC)  $(CFLAGS) -Dlinux fileop_linux.o -o fileop
-+      $(CC)  $(CFLAGS) -Dlinux pit_server.o -o pit_server
- #
- # GNU 'C' compiler Linux build for powerpc chip with threads, largefiles, async I/O 
-@@ -795,13 +813,33 @@
-       @echo ""
-       @echo "Building iozone for Linux"
-       @echo ""
--      $(CC) -Wall -c -O3 -Dunix -DHAVE_ANSIC_C -DASYNC_IO -DHAVE_PREAD \
--              -DSHARED_MEM -Dlinux -D_LARGEFILE64_SOURCE $(CFLAGS) iozone.c \
-+      $(CC) -Wall -c -Dunix -DHAVE_ANSIC_C -DASYNC_IO -DHAVE_PREAD \
-+              -DSHARED_MEM -Dlinux $(CFLAGS) iozone.c \
-               -DNAME='"linux"' -o iozone_linux.o
--      $(CC) -Wall -c -O3 -Dunix -DHAVE_ANSIC_C -DASYNC_IO -D_LARGEFILE64_SOURCE \
-+      $(CC) -Wall -c -Dunix -DHAVE_ANSIC_C -DASYNC_IO \
-+              -DSHARED_MEM -Dlinux $(CFLAGS) libbif.c -o libbif.o
-+      $(CC) -Wall -c -Dunix -Dlinux -DHAVE_ANSIC_C -DASYNC_IO \
-+              $(CFLAGS) libasync.c  -o libasync.o 
-+
-+iozone_linux-noaio.o: iozone.c libbif.c
-+      @echo ""
-+      @echo "Building iozone for Linux no AIO"
-+      @echo ""
-+      $(CC) -Wall -c -Dunix -DHAVE_ANSIC_C -DHAVE_PREAD \
-+              -DSHARED_MEM -Dlinux $(CFLAGS) iozone.c \
-+              -DNAME='"linux"' -o iozone_linux-noaio.o
-+      $(CC) -Wall -c -Dunix -DHAVE_ANSIC_C \
-+              -DSHARED_MEM -Dlinux $(CFLAGS) libbif.c -o libbif.o
-+
-+iozone_linux-noth.o: iozone.c libbif.c
-+      @echo ""
-+      @echo "Building iozone for Linux with no threads"
-+      @echo ""
-+      $(CC) -Wall -c -Dunix -DHAVE_ANSIC_C -DNO_THREADS -DHAVE_PREAD \
-+              -DSHARED_MEM -Dlinux $(CFLAGS) iozone.c \
-+              -DNAME='"linux"' -o iozone_linux-noth.o
-+      $(CC) -Wall -c -Dunix -DHAVE_ANSIC_C -DNO_THREADS \
-               -DSHARED_MEM -Dlinux $(CFLAGS) libbif.c -o libbif.o
--      $(CC) -Wall -c -O3 -Dunix -Dlinux -DHAVE_ANSIC_C -DASYNC_IO \
--              -D_LARGEFILE64_SOURCE $(CFLAGS) libasync.c  -o libasync.o 
- fileop_AIX.o: fileop.c
-       @echo ""
-@@ -893,7 +931,7 @@
-       @echo ""
-       @echo "Building fileop for Linux"
-       @echo ""
--      $(CC) -Wall -c -O3 $(CFLAGS) fileop.c -o fileop_linux.o
-+      $(CC) -Wall -c $(CFLAGS) fileop.c -o fileop_linux.o
- fileop_openbsd.o:     fileop.c
-       @echo ""
diff --git a/package/iozone/iozone-02-no-nptl-support.patch b/package/iozone/iozone-02-no-nptl-support.patch
deleted file mode 100644 (file)
index 493f52c..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-Dummy pthread_setaffinity_np() when not available
-
-On uClibc configurations that do not use the NPTL thread
-implementation, pthread_setaffinity_np() is not available. This patch
-defines a dummy (empty) implementation of this function for such
-cases.
-
-The only few architectures that do not provide the NPTL thread
-implementation are very likely to be non-SMP architectures, and
-therefore, setting the affinity of the thread is not doing anything
-useful, so having an empty stub for pthread_setaffinity_np() is not a
-problem.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/src/current/iozone.c
-===================================================================
---- a/src/current/iozone.c
-+++ b/src/current/iozone.c
-@@ -306,6 +306,17 @@
- #endif
- #endif
-+#if defined (__linux__)
-+#include <features.h>
-+#if defined (__UCLIBC__) && !defined (__UCLIBC_HAS_THREADS_NATIVE__)
-+static int pthread_setaffinity_np(pthread_t thread, size_t cpusetsize,
-+                                const cpu_set_t *cpuset)
-+{
-+      return 0;
-+}
-+#endif
-+#endif
-+
- #if ((defined(solaris) && defined(__LP64__)) || defined(__s390x__))
- /* If we are building for 64-bit Solaris, all functions that return pointers
-  * must be declared before they are used; otherwise the compiler will assume
diff --git a/package/ipsec-tools/0001-susv3-legacy.patch b/package/ipsec-tools/0001-susv3-legacy.patch
new file mode 100644 (file)
index 0000000..ea98505
--- /dev/null
@@ -0,0 +1,35 @@
+Replaces sysv3 legacy functions with modern equivalents.
+
+Signed-off-by: Julien Boibessot <julien.boibessot@armadeus.com>
+Index: ipsec-tools-0.7.3/src/racoon/pfkey.c
+===================================================================
+--- ipsec-tools-0.7.3.orig/src/racoon/pfkey.c  2010-07-12 14:46:52.000000000 +0200
++++ ipsec-tools-0.7.3/src/racoon/pfkey.c       2010-07-12 15:01:39.000000000 +0200
+@@ -3008,12 +3008,12 @@
+                               struct sockaddr *paddr;
+                               paddr = (struct sockaddr *)(xisr + 1);
+-                              bcopy(paddr, &(*p_isr)->saidx.src,
++                              memmove(&(*p_isr)->saidx.src, paddr,
+                                       sysdep_sa_len(paddr));
+                               paddr = (struct sockaddr *)((caddr_t)paddr
+                                                       + sysdep_sa_len(paddr));
+-                              bcopy(paddr, &(*p_isr)->saidx.dst,
++                              memmove(&(*p_isr)->saidx.dst, paddr,
+                                       sysdep_sa_len(paddr));
+                       }
+Index: ipsec-tools-0.7.3/src/racoon/racoonctl.c
+===================================================================
+--- ipsec-tools-0.7.3.orig/src/racoon/racoonctl.c      2010-07-12 14:49:51.000000000 +0200
++++ ipsec-tools-0.7.3/src/racoon/racoonctl.c   2010-07-12 15:00:52.000000000 +0200
+@@ -785,7 +785,7 @@
+               errx(1, "cannot read source address");
+       /* We get "ip[port]" strip the port */
+-      if ((idx = index(srcaddr, '[')) == NULL) 
++      if ((idx = strchr(srcaddr, '[')) == NULL)
+               errx(1, "unexpected source address format");
+       *idx = '\0';
diff --git a/package/ipsec-tools/ipsec-tools-001-susv3-legacy.patch b/package/ipsec-tools/ipsec-tools-001-susv3-legacy.patch
deleted file mode 100644 (file)
index ea98505..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-Replaces sysv3 legacy functions with modern equivalents.
-
-Signed-off-by: Julien Boibessot <julien.boibessot@armadeus.com>
-Index: ipsec-tools-0.7.3/src/racoon/pfkey.c
-===================================================================
---- ipsec-tools-0.7.3.orig/src/racoon/pfkey.c  2010-07-12 14:46:52.000000000 +0200
-+++ ipsec-tools-0.7.3/src/racoon/pfkey.c       2010-07-12 15:01:39.000000000 +0200
-@@ -3008,12 +3008,12 @@
-                               struct sockaddr *paddr;
-                               paddr = (struct sockaddr *)(xisr + 1);
--                              bcopy(paddr, &(*p_isr)->saidx.src,
-+                              memmove(&(*p_isr)->saidx.src, paddr,
-                                       sysdep_sa_len(paddr));
-                               paddr = (struct sockaddr *)((caddr_t)paddr
-                                                       + sysdep_sa_len(paddr));
--                              bcopy(paddr, &(*p_isr)->saidx.dst,
-+                              memmove(&(*p_isr)->saidx.dst, paddr,
-                                       sysdep_sa_len(paddr));
-                       }
-Index: ipsec-tools-0.7.3/src/racoon/racoonctl.c
-===================================================================
---- ipsec-tools-0.7.3.orig/src/racoon/racoonctl.c      2010-07-12 14:49:51.000000000 +0200
-+++ ipsec-tools-0.7.3/src/racoon/racoonctl.c   2010-07-12 15:00:52.000000000 +0200
-@@ -785,7 +785,7 @@
-               errx(1, "cannot read source address");
-       /* We get "ip[port]" strip the port */
--      if ((idx = index(srcaddr, '[')) == NULL) 
-+      if ((idx = strchr(srcaddr, '[')) == NULL)
-               errx(1, "unexpected source address format");
-       *idx = '\0';
diff --git a/package/irda-utils/0001-daemon.patch b/package/irda-utils/0001-daemon.patch
new file mode 100644 (file)
index 0000000..f6034a7
--- /dev/null
@@ -0,0 +1,34 @@
+written by Mike Frysinger
+
+https://sourceforge.net/tracker/?func=detail&aid=3132053&group_id=5616&atid=305616
+
+Rather than using the fork function (which doesnt work on nommu
+systems), simply use the daemon() function instead (which does
+work). this should work the same before and after for all systems.
+
+--- a/irattach/util.c
++++ b/irattach/util.c
+@@ -156,21 +156,10 @@
+ void fork_now(int ttyfd)
+ {
+-      int ret;
+       int i;
+-      if ((ret = fork()) > 0)
+-              exit(0);
+-      
+-      if (ret == -1)
+-              syslog(LOG_INFO, "forking: %m");
+-      if (setsid() < 0)
+-              syslog(LOG_INFO, "detaching from tty: %m");
+-
+-      if ((ret = fork()) > 0) {
+-              /* cleanup_files = 0; */
+-              exit(0);
+-      }
++      if (daemon(1, 1))
++              syslog(LOG_INFO, "daemon: %m");
+       /* Close all open inherited files! Except for ttyfd! */
+       for (i = 0; i < 64; i++)
diff --git a/package/irda-utils/0002-nommu.patch b/package/irda-utils/0002-nommu.patch
new file mode 100644 (file)
index 0000000..bc76bd3
--- /dev/null
@@ -0,0 +1,24 @@
+written by Mike Frysinger
+
+https://sourceforge.net/tracker/?func=detail&aid=3132056&group_id=5616&atid=305616
+
+nommu systems cannot fork() as the hardware cannot support
+it. irattach uses it as a minor optimization, but it isnt
+necessary for correct functioning of the utility. so add a
+NO_FORK define so we nommu peeps can do CFLAGS="... -DNO_FORK=1
+..." and use it in our embedded systems.
+
+--- a/irattach/irattach.c
++++ b/irattach/irattach.c
+@@ -397,7 +397,11 @@
+                                       after_names[i]);
+                               /* Create a new instance for this other
+                                * interface */
++#ifdef NO_FORK
++                              pid = -1;
++#else
+                               pid = fork();
++#endif
+                               /* If in the child */
+                               if(!pid) {
+                                       /* Get the interface name */
diff --git a/package/irda-utils/0003-subdir.patch b/package/irda-utils/0003-subdir.patch
new file mode 100644 (file)
index 0000000..e9b5458
--- /dev/null
@@ -0,0 +1,23 @@
+written by Mike Frysinger
+
+https://sourceforge.net/tracker/?func=detail&aid=3132051&group_id=5616&atid=305616
+
+The top level makefile ignores build/install errors in subdirs which makes
+packaging a pain to verify.
+
+--- a/Makefile
++++ b/Makefile
+@@ -31,11 +31,11 @@
+ CFLAGS= -O2 -W -Wall
+ all:
+-      @-(set -e ; for d in $(DIRS) ; do $(MAKE) $(MAKE_OUTPUT) -C $$d $@ ; done)
++      @(set -e ; for d in $(DIRS) ; do $(MAKE) $(MAKE_OUTPUT) -C $$d $@ ; done)
+ install:
+-      @-(set -e ; for d in $(DIRS) ; do $(MAKE) $(MAKE_OUTPUT) -C $$d $@ ; done)
++      @(set -e ; for d in $(DIRS) ; do $(MAKE) $(MAKE_OUTPUT) -C $$d $@ ; done)
+ clean:
diff --git a/package/irda-utils/irda-utils-0.9.18-daemon.patch b/package/irda-utils/irda-utils-0.9.18-daemon.patch
deleted file mode 100644 (file)
index f6034a7..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-written by Mike Frysinger
-
-https://sourceforge.net/tracker/?func=detail&aid=3132053&group_id=5616&atid=305616
-
-Rather than using the fork function (which doesnt work on nommu
-systems), simply use the daemon() function instead (which does
-work). this should work the same before and after for all systems.
-
---- a/irattach/util.c
-+++ b/irattach/util.c
-@@ -156,21 +156,10 @@
- void fork_now(int ttyfd)
- {
--      int ret;
-       int i;
--      if ((ret = fork()) > 0)
--              exit(0);
--      
--      if (ret == -1)
--              syslog(LOG_INFO, "forking: %m");
--      if (setsid() < 0)
--              syslog(LOG_INFO, "detaching from tty: %m");
--
--      if ((ret = fork()) > 0) {
--              /* cleanup_files = 0; */
--              exit(0);
--      }
-+      if (daemon(1, 1))
-+              syslog(LOG_INFO, "daemon: %m");
-       /* Close all open inherited files! Except for ttyfd! */
-       for (i = 0; i < 64; i++)
diff --git a/package/irda-utils/irda-utils-0.9.18-nommu.patch b/package/irda-utils/irda-utils-0.9.18-nommu.patch
deleted file mode 100644 (file)
index bc76bd3..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-written by Mike Frysinger
-
-https://sourceforge.net/tracker/?func=detail&aid=3132056&group_id=5616&atid=305616
-
-nommu systems cannot fork() as the hardware cannot support
-it. irattach uses it as a minor optimization, but it isnt
-necessary for correct functioning of the utility. so add a
-NO_FORK define so we nommu peeps can do CFLAGS="... -DNO_FORK=1
-..." and use it in our embedded systems.
-
---- a/irattach/irattach.c
-+++ b/irattach/irattach.c
-@@ -397,7 +397,11 @@
-                                       after_names[i]);
-                               /* Create a new instance for this other
-                                * interface */
-+#ifdef NO_FORK
-+                              pid = -1;
-+#else
-                               pid = fork();
-+#endif
-                               /* If in the child */
-                               if(!pid) {
-                                       /* Get the interface name */
diff --git a/package/irda-utils/irda-utils-0.9.18-subdir.patch b/package/irda-utils/irda-utils-0.9.18-subdir.patch
deleted file mode 100644 (file)
index e9b5458..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-written by Mike Frysinger
-
-https://sourceforge.net/tracker/?func=detail&aid=3132051&group_id=5616&atid=305616
-
-The top level makefile ignores build/install errors in subdirs which makes
-packaging a pain to verify.
-
---- a/Makefile
-+++ b/Makefile
-@@ -31,11 +31,11 @@
- CFLAGS= -O2 -W -Wall
- all:
--      @-(set -e ; for d in $(DIRS) ; do $(MAKE) $(MAKE_OUTPUT) -C $$d $@ ; done)
-+      @(set -e ; for d in $(DIRS) ; do $(MAKE) $(MAKE_OUTPUT) -C $$d $@ ; done)
- install:
--      @-(set -e ; for d in $(DIRS) ; do $(MAKE) $(MAKE_OUTPUT) -C $$d $@ ; done)
-+      @(set -e ; for d in $(DIRS) ; do $(MAKE) $(MAKE_OUTPUT) -C $$d $@ ; done)
- clean:
diff --git a/package/jhead/0001-use-ldflags.patch b/package/jhead/0001-use-ldflags.patch
new file mode 100644 (file)
index 0000000..a1d8185
--- /dev/null
@@ -0,0 +1,16 @@
+Make jhead use LDFLAGS for the final link.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura jhead-2.97.orig/makefile jhead-2.97/makefile
+--- jhead-2.97.orig/makefile   2013-03-27 09:22:38.759966389 -0300
++++ jhead-2.97/makefile        2013-03-27 09:25:06.290691745 -0300
+@@ -14,7 +14,7 @@
+       ${CC} $(CFLAGS) -c $< -o $@
+ jhead: $(objs) jhead.h
+-      ${CC} -o jhead $(objs) -lm
++      ${CC} $(LDFLAGS) -o jhead $(objs) -lm
+ clean:
+       rm -f $(objs) jhead
diff --git a/package/jhead/jhead-use-ldflags.patch b/package/jhead/jhead-use-ldflags.patch
deleted file mode 100644 (file)
index a1d8185..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-Make jhead use LDFLAGS for the final link.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura jhead-2.97.orig/makefile jhead-2.97/makefile
---- jhead-2.97.orig/makefile   2013-03-27 09:22:38.759966389 -0300
-+++ jhead-2.97/makefile        2013-03-27 09:25:06.290691745 -0300
-@@ -14,7 +14,7 @@
-       ${CC} $(CFLAGS) -c $< -o $@
- jhead: $(objs) jhead.h
--      ${CC} -o jhead $(objs) -lm
-+      ${CC} $(LDFLAGS) -o jhead $(objs) -lm
- clean:
-       rm -f $(objs) jhead
diff --git a/package/joe/0001-disable-bessel-functions-on-uclibc.patch b/package/joe/0001-disable-bessel-functions-on-uclibc.patch
new file mode 100644 (file)
index 0000000..9f7b72c
--- /dev/null
@@ -0,0 +1,50 @@
+[PATCH] uClibc can be (and by default is) configured without bessel functions
+
+Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
+---
+ umath.c |   10 ++++++++++
+ 1 file changed, 10 insertions(+)
+
+Index: joe-3.7/umath.c
+===================================================================
+--- joe-3.7.orig/umath.c
++++ joe-3.7/umath.c
+@@ -7,6 +7,12 @@
+  */
+ #include "types.h"
++/* uClibc can be configured without bessel functions */
++#include <features.h>
++#if defined (__UCLIBC__) && !defined(__DO_XSI_MATH__)
++#define NO_BESSEL
++#endif
++
+ unsigned char *merr;
+ int mode_hex;
+@@ -396,10 +402,12 @@
+ double m_fabs(double n) { return fabs(n); }
+ double m_erf(double n) { return erf(n); }
+ double m_erfc(double n) { return erfc(n); }
++#ifndef NO_BESSEL
+ double m_j0(double n) { return j0(n); }
+ double m_j1(double n) { return j1(n); }
+ double m_y0(double n) { return y0(n); }
+ double m_y1(double n) { return y1(n); }
++#endif
+ double calc(BW *bw, unsigned char *s)
+ {
+@@ -434,10 +442,12 @@
+               v = get(USTR "abs"); v->func = m_fabs;
+               v = get(USTR "erf"); v->func = m_erf;
+               v = get(USTR "erfc"); v->func = m_erfc;
++#ifndef NO_BESSEL
+               v = get(USTR "j0"); v->func = m_j0;
+               v = get(USTR "j1"); v->func = m_j1;
+               v = get(USTR "y0"); v->func = m_y0;
+               v = get(USTR "y1"); v->func = m_y1;
++#endif
+       }
+       v = get(USTR "top");
diff --git a/package/joe/joe-0001-disable-bessel-functions-on-uclibc.patch b/package/joe/joe-0001-disable-bessel-functions-on-uclibc.patch
deleted file mode 100644 (file)
index 9f7b72c..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-[PATCH] uClibc can be (and by default is) configured without bessel functions
-
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- umath.c |   10 ++++++++++
- 1 file changed, 10 insertions(+)
-
-Index: joe-3.7/umath.c
-===================================================================
---- joe-3.7.orig/umath.c
-+++ joe-3.7/umath.c
-@@ -7,6 +7,12 @@
-  */
- #include "types.h"
-+/* uClibc can be configured without bessel functions */
-+#include <features.h>
-+#if defined (__UCLIBC__) && !defined(__DO_XSI_MATH__)
-+#define NO_BESSEL
-+#endif
-+
- unsigned char *merr;
- int mode_hex;
-@@ -396,10 +402,12 @@
- double m_fabs(double n) { return fabs(n); }
- double m_erf(double n) { return erf(n); }
- double m_erfc(double n) { return erfc(n); }
-+#ifndef NO_BESSEL
- double m_j0(double n) { return j0(n); }
- double m_j1(double n) { return j1(n); }
- double m_y0(double n) { return y0(n); }
- double m_y1(double n) { return y1(n); }
-+#endif
- double calc(BW *bw, unsigned char *s)
- {
-@@ -434,10 +442,12 @@
-               v = get(USTR "abs"); v->func = m_fabs;
-               v = get(USTR "erf"); v->func = m_erf;
-               v = get(USTR "erfc"); v->func = m_erfc;
-+#ifndef NO_BESSEL
-               v = get(USTR "j0"); v->func = m_j0;
-               v = get(USTR "j1"); v->func = m_j1;
-               v = get(USTR "y0"); v->func = m_y0;
-               v = get(USTR "y1"); v->func = m_y1;
-+#endif
-       }
-       v = get(USTR "top");
diff --git a/package/jq/0001-libm.h-comment-j0-j1-y0-and-y1.patch b/package/jq/0001-libm.h-comment-j0-j1-y0-and-y1.patch
new file mode 100644 (file)
index 0000000..dfc2f4c
--- /dev/null
@@ -0,0 +1,49 @@
+From e87163425a67938afde96f01b19587ac3348b369 Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Date: Sun, 7 Sep 2014 10:49:57 +0200
+Subject: [PATCH] libm.h: comment j0, j1, y0 and y1
+
+Those functions are currently not used by jq, but having them in
+libm.h prevents building with the uClibc C library when it doesn't
+have DO_XSI_MATH option enabled.
+
+This issue was spotted by the Buildroot autobuilder system:
+
+  http://autobuild.buildroot.org/results/aaf/aaf3c114e0ca3e265ae32c646ba67f01aaf608bd/build-end.log
+
+Submitted upstream at https://github.com/stedolan/jq/pull/570.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ libm.h | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/libm.h b/libm.h
+index f8c52be..8e82fb7 100644
+--- a/libm.h
++++ b/libm.h
+@@ -10,8 +10,8 @@ LIBM_DD(cosh)
+ LIBM_DD(exp2)
+ LIBM_DD(exp)
+ LIBM_DD(floor)
+-LIBM_DD(j0)
+-LIBM_DD(j1)
++/* LIBM_DD(j0) */
++/* LIBM_DD(j1) */
+ LIBM_DD(log10)
+ LIBM_DD(log2)
+ LIBM_DD(log)
+@@ -21,8 +21,8 @@ LIBM_DD(sqrt)
+ LIBM_DD(tan)
+ LIBM_DD(tanh)
+ LIBM_DD(tgamma)
+-LIBM_DD(y0)
+-LIBM_DD(y1)
++/* LIBM_DD(y0) */
++/* LIBM_DD(y1) */
+ /* LIBM_DID(jn) */
+ /* LIBM_DID(yn) */
+ /* LIBM_DDD(pow) */
+-- 
+2.0.0
+
diff --git a/package/jq/jq-0001-libm.h-comment-j0-j1-y0-and-y1.patch b/package/jq/jq-0001-libm.h-comment-j0-j1-y0-and-y1.patch
deleted file mode 100644 (file)
index dfc2f4c..0000000
+++ /dev/null
@@ -1,49 +0,0 @@
-From e87163425a67938afde96f01b19587ac3348b369 Mon Sep 17 00:00:00 2001
-From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-Date: Sun, 7 Sep 2014 10:49:57 +0200
-Subject: [PATCH] libm.h: comment j0, j1, y0 and y1
-
-Those functions are currently not used by jq, but having them in
-libm.h prevents building with the uClibc C library when it doesn't
-have DO_XSI_MATH option enabled.
-
-This issue was spotted by the Buildroot autobuilder system:
-
-  http://autobuild.buildroot.org/results/aaf/aaf3c114e0ca3e265ae32c646ba67f01aaf608bd/build-end.log
-
-Submitted upstream at https://github.com/stedolan/jq/pull/570.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
----
- libm.h | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/libm.h b/libm.h
-index f8c52be..8e82fb7 100644
---- a/libm.h
-+++ b/libm.h
-@@ -10,8 +10,8 @@ LIBM_DD(cosh)
- LIBM_DD(exp2)
- LIBM_DD(exp)
- LIBM_DD(floor)
--LIBM_DD(j0)
--LIBM_DD(j1)
-+/* LIBM_DD(j0) */
-+/* LIBM_DD(j1) */
- LIBM_DD(log10)
- LIBM_DD(log2)
- LIBM_DD(log)
-@@ -21,8 +21,8 @@ LIBM_DD(sqrt)
- LIBM_DD(tan)
- LIBM_DD(tanh)
- LIBM_DD(tgamma)
--LIBM_DD(y0)
--LIBM_DD(y1)
-+/* LIBM_DD(y0) */
-+/* LIBM_DD(y1) */
- /* LIBM_DID(jn) */
- /* LIBM_DID(yn) */
- /* LIBM_DDD(pow) */
--- 
-2.0.0
-
diff --git a/package/json-c/0001-no-reentrant.patch b/package/json-c/0001-no-reentrant.patch
new file mode 100644 (file)
index 0000000..b8ae6bb
--- /dev/null
@@ -0,0 +1,44 @@
+Do not pass -D_REENTRANT
+
+This flag is not needed to build this library, and prevents to build
+it with toolchains that don't have thread support.
+
+Since the Makefile.in change is a one-liner, we also do it in the
+patch to avoid having to autoreconfigure the package.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/Makefile.am.inc
+===================================================================
+--- a/Makefile.am.inc
++++ b/Makefile.am.inc
+@@ -1,2 +1,2 @@
+-AM_CFLAGS = -Wall -Werror -Wextra -Wwrite-strings -Wno-unused-parameter -std=gnu99 -D_GNU_SOURCE -D_REENTRANT
++AM_CFLAGS = -Wall -Werror -Wextra -Wwrite-strings -Wno-unused-parameter -std=gnu99 -D_GNU_SOURCE
+Index: b/Makefile.in
+===================================================================
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -274,7 +274,7 @@
+ top_build_prefix = @top_build_prefix@
+ top_builddir = @top_builddir@
+ top_srcdir = @top_srcdir@
+-AM_CFLAGS = -Wall -Werror -Wextra -Wwrite-strings -Wno-unused-parameter -std=gnu99 -D_GNU_SOURCE -D_REENTRANT
++AM_CFLAGS = -Wall -Werror -Wextra -Wwrite-strings -Wno-unused-parameter -std=gnu99 -D_GNU_SOURCE
+ EXTRA_DIST = README.html README-WIN32.html config.h.win32 doc json-c.vcproj
+ SUBDIRS = . tests
+ lib_LTLIBRARIES = libjson-c.la $(am__append_1)
+Index: b/tests/Makefile.in
+===================================================================
+--- a/tests/Makefile.in
++++ b/tests/Makefile.in
+@@ -228,7 +228,7 @@
+ top_build_prefix = @top_build_prefix@
+ top_builddir = @top_builddir@
+ top_srcdir = @top_srcdir@
+-AM_CFLAGS = -Wall -Werror -Wextra -Wwrite-strings -Wno-unused-parameter -std=gnu99 -D_GNU_SOURCE -D_REENTRANT
++AM_CFLAGS = -Wall -Werror -Wextra -Wwrite-strings -Wno-unused-parameter -std=gnu99 -D_GNU_SOURCE
+ LIBJSON_LA = $(top_builddir)/libjson-c.la
+ test1_LDADD = $(LIBJSON_LA)
+ test1Formatted_LDADD = $(LIBJSON_LA)
diff --git a/package/json-c/json-c-no-reentrant.patch b/package/json-c/json-c-no-reentrant.patch
deleted file mode 100644 (file)
index b8ae6bb..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-Do not pass -D_REENTRANT
-
-This flag is not needed to build this library, and prevents to build
-it with toolchains that don't have thread support.
-
-Since the Makefile.in change is a one-liner, we also do it in the
-patch to avoid having to autoreconfigure the package.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/Makefile.am.inc
-===================================================================
---- a/Makefile.am.inc
-+++ b/Makefile.am.inc
-@@ -1,2 +1,2 @@
--AM_CFLAGS = -Wall -Werror -Wextra -Wwrite-strings -Wno-unused-parameter -std=gnu99 -D_GNU_SOURCE -D_REENTRANT
-+AM_CFLAGS = -Wall -Werror -Wextra -Wwrite-strings -Wno-unused-parameter -std=gnu99 -D_GNU_SOURCE
-Index: b/Makefile.in
-===================================================================
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -274,7 +274,7 @@
- top_build_prefix = @top_build_prefix@
- top_builddir = @top_builddir@
- top_srcdir = @top_srcdir@
--AM_CFLAGS = -Wall -Werror -Wextra -Wwrite-strings -Wno-unused-parameter -std=gnu99 -D_GNU_SOURCE -D_REENTRANT
-+AM_CFLAGS = -Wall -Werror -Wextra -Wwrite-strings -Wno-unused-parameter -std=gnu99 -D_GNU_SOURCE
- EXTRA_DIST = README.html README-WIN32.html config.h.win32 doc json-c.vcproj
- SUBDIRS = . tests
- lib_LTLIBRARIES = libjson-c.la $(am__append_1)
-Index: b/tests/Makefile.in
-===================================================================
---- a/tests/Makefile.in
-+++ b/tests/Makefile.in
-@@ -228,7 +228,7 @@
- top_build_prefix = @top_build_prefix@
- top_builddir = @top_builddir@
- top_srcdir = @top_srcdir@
--AM_CFLAGS = -Wall -Werror -Wextra -Wwrite-strings -Wno-unused-parameter -std=gnu99 -D_GNU_SOURCE -D_REENTRANT
-+AM_CFLAGS = -Wall -Werror -Wextra -Wwrite-strings -Wno-unused-parameter -std=gnu99 -D_GNU_SOURCE
- LIBJSON_LA = $(top_builddir)/libjson-c.la
- test1_LDADD = $(LIBJSON_LA)
- test1Formatted_LDADD = $(LIBJSON_LA)
diff --git a/package/kbd/0001-link-against-libintl.patch b/package/kbd/0001-link-against-libintl.patch
new file mode 100644 (file)
index 0000000..39fd461
--- /dev/null
@@ -0,0 +1,34 @@
+Make sure we link against libintl if needed
+
+We modify directly the Makefile.in so that we don't have to
+autoreconfigure the package, which doesn't work because packages using
+gettext need the autopoint tool for their autoregeneration step and
+this thing doesn't work (yet) in Buildroot.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: kbd-1.15.2/src/Makefile.am
+===================================================================
+--- kbd-1.15.2.orig/src/Makefile.am    2011-05-22 16:08:51.144530776 +0200
++++ kbd-1.15.2/src/Makefile.am 2011-05-22 16:09:09.892530778 +0200
+@@ -5,6 +5,8 @@
+ AM_CPPFLAGS = -DDATADIR=\"$(datadir)\" -DLOCALEDIR=\"$(localedir)\" $(WARNINGS) \
+       -funit-at-a-time
++LDADD = @INTLLIBS@
++
+ OLDPROGS = mapscrn loadunimap
+ PROGS = \
+       dumpkeys loadkeys showkey setfont showconsolefont \
+Index: kbd-1.15.2/src/Makefile.in
+===================================================================
+--- kbd-1.15.2.orig/src/Makefile.in    2011-05-22 16:10:27.540530777 +0200
++++ kbd-1.15.2/src/Makefile.in 2011-05-22 16:10:51.172530778 +0200
+@@ -26,6 +26,7 @@
+ install_sh_PROGRAM = $(install_sh) -c
+ install_sh_SCRIPT = $(install_sh) -c
+ INSTALL_HEADER = $(INSTALL_DATA)
++LDADD = @INTLLIBS@
+ transform = $(program_transform_name)
+ NORMAL_INSTALL = :
+ PRE_INSTALL = :
diff --git a/package/kbd/kbd-link-against-libintl.patch b/package/kbd/kbd-link-against-libintl.patch
deleted file mode 100644 (file)
index 39fd461..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-Make sure we link against libintl if needed
-
-We modify directly the Makefile.in so that we don't have to
-autoreconfigure the package, which doesn't work because packages using
-gettext need the autopoint tool for their autoregeneration step and
-this thing doesn't work (yet) in Buildroot.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: kbd-1.15.2/src/Makefile.am
-===================================================================
---- kbd-1.15.2.orig/src/Makefile.am    2011-05-22 16:08:51.144530776 +0200
-+++ kbd-1.15.2/src/Makefile.am 2011-05-22 16:09:09.892530778 +0200
-@@ -5,6 +5,8 @@
- AM_CPPFLAGS = -DDATADIR=\"$(datadir)\" -DLOCALEDIR=\"$(localedir)\" $(WARNINGS) \
-       -funit-at-a-time
-+LDADD = @INTLLIBS@
-+
- OLDPROGS = mapscrn loadunimap
- PROGS = \
-       dumpkeys loadkeys showkey setfont showconsolefont \
-Index: kbd-1.15.2/src/Makefile.in
-===================================================================
---- kbd-1.15.2.orig/src/Makefile.in    2011-05-22 16:10:27.540530777 +0200
-+++ kbd-1.15.2/src/Makefile.in 2011-05-22 16:10:51.172530778 +0200
-@@ -26,6 +26,7 @@
- install_sh_PROGRAM = $(install_sh) -c
- install_sh_SCRIPT = $(install_sh) -c
- INSTALL_HEADER = $(INSTALL_DATA)
-+LDADD = @INTLLIBS@
- transform = $(program_transform_name)
- NORMAL_INSTALL = :
- PRE_INSTALL = :
diff --git a/package/kexec-lite/0001-clean-restart.patch b/package/kexec-lite/0001-clean-restart.patch
new file mode 100644 (file)
index 0000000..faaa93a
--- /dev/null
@@ -0,0 +1,34 @@
+From 0a654c20e1b9324c57ba4116b52fb6ab33847e1d Mon Sep 17 00:00:00 2001
+From: Jeremy Kerr <jk@ozlabs.org>
+Date: Thu, 8 Aug 2013 17:16:31 +0800
+Subject: [PATCH] kexec: Implement clean restart for busybox init
+
+Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
+---
+ kexec.c |    3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/kexec.c b/kexec.c
+index 2edb7df..b2a0c42 100644
+--- a/kexec.c
++++ b/kexec.c
+@@ -27,6 +27,7 @@
+ #include <fcntl.h>
+ #include <errno.h>
+ #include <syscall.h>
++#include <signal.h>
+ #include <libfdt.h>
+ #include <getopt.h>
+ #include <sys/types.h>
+@@ -818,7 +819,7 @@ int main(int argc, char *argv[])
+                       sync();
+                       exec_kexec();
+               } else {
+-                      execlp("shutdown", "shutdown", "-r", "now", NULL);
++                      kill(1, SIGQUIT);
+               }
+               return -1;
+-- 
+1.7.10.4
+
diff --git a/package/kexec-lite/kexec-lite-01-clean-restart.patch b/package/kexec-lite/kexec-lite-01-clean-restart.patch
deleted file mode 100644 (file)
index faaa93a..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-From 0a654c20e1b9324c57ba4116b52fb6ab33847e1d Mon Sep 17 00:00:00 2001
-From: Jeremy Kerr <jk@ozlabs.org>
-Date: Thu, 8 Aug 2013 17:16:31 +0800
-Subject: [PATCH] kexec: Implement clean restart for busybox init
-
-Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
----
- kexec.c |    3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/kexec.c b/kexec.c
-index 2edb7df..b2a0c42 100644
---- a/kexec.c
-+++ b/kexec.c
-@@ -27,6 +27,7 @@
- #include <fcntl.h>
- #include <errno.h>
- #include <syscall.h>
-+#include <signal.h>
- #include <libfdt.h>
- #include <getopt.h>
- #include <sys/types.h>
-@@ -818,7 +819,7 @@ int main(int argc, char *argv[])
-                       sync();
-                       exec_kexec();
-               } else {
--                      execlp("shutdown", "shutdown", "-r", "now", NULL);
-+                      kill(1, SIGQUIT);
-               }
-               return -1;
--- 
-1.7.10.4
-
diff --git a/package/kexec/0001-largefile.patch b/package/kexec/0001-largefile.patch
new file mode 100644 (file)
index 0000000..74dd8e2
--- /dev/null
@@ -0,0 +1,22 @@
+[PATCH] vmcore-dmesg: don't enforce largefile handling
+
+Breaks build on !largefile toolchains.
+
+Instead simply use whatever mode is selected by toolchain / CFLAGS.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ vmcore-dmesg/vmcore-dmesg.c |    2 --
+ 1 file changed, 2 deletions(-)
+
+Index: kexec-tools-2.0.3/vmcore-dmesg/vmcore-dmesg.c
+===================================================================
+--- kexec-tools-2.0.3.orig/vmcore-dmesg/vmcore-dmesg.c
++++ kexec-tools-2.0.3/vmcore-dmesg/vmcore-dmesg.c
+@@ -1,6 +1,4 @@
+ #define _XOPEN_SOURCE 600
+-#define _LARGEFILE_SOURCE 1
+-#define _FILE_OFFSET_BITS 64
+ #include <endian.h>
+ #include <byteswap.h>
+ #include <stdio.h>
diff --git a/package/kexec/kexec-0001-largefile.patch b/package/kexec/kexec-0001-largefile.patch
deleted file mode 100644 (file)
index 74dd8e2..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-[PATCH] vmcore-dmesg: don't enforce largefile handling
-
-Breaks build on !largefile toolchains.
-
-Instead simply use whatever mode is selected by toolchain / CFLAGS.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- vmcore-dmesg/vmcore-dmesg.c |    2 --
- 1 file changed, 2 deletions(-)
-
-Index: kexec-tools-2.0.3/vmcore-dmesg/vmcore-dmesg.c
-===================================================================
---- kexec-tools-2.0.3.orig/vmcore-dmesg/vmcore-dmesg.c
-+++ kexec-tools-2.0.3/vmcore-dmesg/vmcore-dmesg.c
-@@ -1,6 +1,4 @@
- #define _XOPEN_SOURCE 600
--#define _LARGEFILE_SOURCE 1
--#define _FILE_OFFSET_BITS 64
- #include <endian.h>
- #include <byteswap.h>
- #include <stdio.h>
diff --git a/package/keyutils/0001-allow-building-of-the-shared-library-to-be-suppressed.patch b/package/keyutils/0001-allow-building-of-the-shared-library-to-be-suppressed.patch
new file mode 100644 (file)
index 0000000..88d32b0
--- /dev/null
@@ -0,0 +1,104 @@
+keyutils: Allow building of the shared library to be suppressed
+
+Upstream patch:
+  https://kernel.googlesource.com/pub/scm/linux/kernel/git/dhowells/keyutils/+/a4deb71ddc05e951c8be8d46615beed9d408a5c8
+
+Signed-off-by: Vicente Olivert Riera <vincent.riera@imgtec.com>
+
+LIB: Allow building of the shared library to be suppressed
+
+Allow building of the shared library to be suppressed by passing NO_SOLIB=1 to
+the Makefile.
+
+Reported-and-tested-by: Vicente Olivert Riera <vincent.riera@imgtec.com>
+Signed-off-by: David Howells <dhowells@redhat.com>
+diff --git a/Makefile b/Makefile
+index c904eaf..5dd2113 100644
+--- a/Makefile
++++ b/Makefile
+@@ -5,6 +5,7 @@
+ SPECFILE      := keyutils.spec
+ NO_GLIBC_KEYERR       := 0
+ NO_ARLIB      := 0
++NO_SOLIB      := 0
+ ETCDIR                := /etc
+ BINDIR                := /bin
+ SBINDIR               := /sbin
+@@ -95,7 +96,7 @@
+ # Normal build rule
+ #
+ ###############################################################################
+-all: $(DEVELLIB) keyctl request-key key.dns_resolver
++all: keyctl request-key key.dns_resolver
+ ###############################################################################
+ #
+@@ -104,20 +105,23 @@
+ ###############################################################################
+ #RPATH = -Wl,-rpath,$(LIBDIR)
+-ifeq ($(NO_ARLIB),0)
+-all: $(ARLIB)
+-$(ARLIB): keyutils.o
+-      $(AR) rcs $@ $<
+-endif
+-
+ VCPPFLAGS     := -DPKGBUILD="\"$(shell date -u +%F)\""
+ VCPPFLAGS     += -DPKGVERSION="\"keyutils-$(VERSION)\""
+ VCPPFLAGS     += -DAPIVERSION="\"libkeyutils-$(APIVERSION)\""
++ifeq ($(NO_ARLIB),0)
++all: $(ARLIB)
++$(ARLIB): keyutils.o
++      $(AR) rcs $@ $<
++
+ keyutils.o: keyutils.c keyutils.h Makefile
+       $(CC) $(CPPFLAGS) $(VCPPFLAGS) $(CFLAGS) -UNO_GLIBC_KEYERR -o $@ -c $<
++LIB_DEPENDENCY        := libkeyutils.a
++endif
++ifeq ($(NO_SOLIB),0)
++all: $(DEVELLIB)
+ $(DEVELLIB): $(SONAME)
+       ln -sf $< $@
+@@ -131,6 +135,8 @@
+ keyutils.os: keyutils.c keyutils.h Makefile
+       $(CC) $(CPPFLAGS) $(VCPPFLAGS) $(CFLAGS) -fPIC -o $@ -c $<
++LIB_DEPENDENCY        := $(DEVELLIB)
++endif
+ ###############################################################################
+ #
+@@ -140,13 +146,13 @@
+ %.o: %.c keyutils.h Makefile
+       $(CC) $(CPPFLAGS) $(CFLAGS) -o $@ -c $<
+-keyctl: keyctl.o $(DEVELLIB)
++keyctl: keyctl.o $(LIB_DEPENDENCY)
+       $(CC) -L. $(CFLAGS) $(LDFLAGS) $(RPATH) -o $@ $< -lkeyutils
+-request-key: request-key.o $(DEVELLIB)
++request-key: request-key.o $(LIB_DEPENDENCY)
+       $(CC) -L. $(CFLAGS) $(LDFLAGS) $(RPATH) -o $@ $< -lkeyutils
+-key.dns_resolver: key.dns_resolver.o $(DEVELLIB)
++key.dns_resolver: key.dns_resolver.o $(LIB_DEPENDENCY)
+       $(CC) -L. $(CFLAGS) $(LDFLAGS) $(RPATH) -o $@ $< -lkeyutils -lresolv
+ ###############################################################################
+@@ -158,10 +164,12 @@
+ ifeq ($(NO_ARLIB),0)
+       $(INSTALL) -D -m 0644 $(ARLIB) $(DESTDIR)$(USRLIBDIR)/$(ARLIB)
+ endif
++ifeq ($(NO_SOLIB),0)
+       $(INSTALL) -D $(LIBNAME) $(DESTDIR)$(LIBDIR)/$(LIBNAME)
+       $(LNS) $(LIBNAME) $(DESTDIR)$(LIBDIR)/$(SONAME)
+       mkdir -p $(DESTDIR)$(USRLIBDIR)
+       $(LNS) $(LIBDIR)/$(SONAME) $(DESTDIR)$(USRLIBDIR)/$(DEVELLIB)
++endif
+       $(INSTALL) -D keyctl $(DESTDIR)$(BINDIR)/keyctl
+       $(INSTALL) -D request-key $(DESTDIR)$(SBINDIR)/request-key
+       $(INSTALL) -D request-key-debug.sh $(DESTDIR)$(SHAREDIR)/request-key-debug.sh
diff --git a/package/keyutils/0002-fix-install-rule.patch b/package/keyutils/0002-fix-install-rule.patch
new file mode 100644 (file)
index 0000000..3670d28
--- /dev/null
@@ -0,0 +1,20 @@
+Makefile: fix install rule
+
+Do not link the .so with an absolute path, otherwise it may point to
+the host library.
+
+Based on the former patch by Yann E. MORIN.
+
+Signed-off-by: Vicente Olivert Riera <vincent.riera@imgtec.com>
+
+--- keyutils-1.5.9/Makefile.orig       2014-09-22 16:13:41.593562765 +0100
++++ keyutils-1.5.9/Makefile    2014-09-22 16:14:05.377963952 +0100
+@@ -168,7 +168,7 @@ ifeq ($(NO_SOLIB),0)
+       $(INSTALL) -D $(LIBNAME) $(DESTDIR)$(LIBDIR)/$(LIBNAME)
+       $(LNS) $(LIBNAME) $(DESTDIR)$(LIBDIR)/$(SONAME)
+       mkdir -p $(DESTDIR)$(USRLIBDIR)
+-      $(LNS) $(LIBDIR)/$(SONAME) $(DESTDIR)$(USRLIBDIR)/$(DEVELLIB)
++      $(LNS) $(SONAME) $(DESTDIR)$(USRLIBDIR)/$(DEVELLIB)
+ endif
+       $(INSTALL) -D keyctl $(DESTDIR)$(BINDIR)/keyctl
+       $(INSTALL) -D request-key $(DESTDIR)$(SBINDIR)/request-key
diff --git a/package/keyutils/0003-cifs.patch b/package/keyutils/0003-cifs.patch
new file mode 100644 (file)
index 0000000..b2903f9
--- /dev/null
@@ -0,0 +1,15 @@
+Patch vampirised from Debian's packaging of keyutils-1.4
+
+Author: Marcus Meissner <meissner@suse.de>
+Description: Added 2 cifs helpers to request-key.conf (for CIFS DFS support)
+
+diff -Naurp keyutils.orig/request-key.conf keyutils/request-key.conf
+--- keyutils.orig/request-key.conf     2008-09-07 23:53:10.000000000 +0000
++++ keyutils/request-key.conf  2009-02-05 00:53:00.000000000 +0000
+@@ -34,4 +34,6 @@
+ create        user    debug:*         negate          /bin/keyctl negate %k 30 %S
+ create        user    debug:loop:*    *               |/bin/cat
+ create        user    debug:*         *               /usr/share/keyutils/request-key-debug.sh %k %d %c %S
++create        cifs.spnego     *       *               /usr/sbin/cifs.upcall -c %k
++create        dns_resolver    *       *               /usr/sbin/cifs.upcall %k
+ negate        *       *               *               /bin/keyctl negate %k 30 %S
diff --git a/package/keyutils/0004-Makefile-for-buildroot.patch b/package/keyutils/0004-Makefile-for-buildroot.patch
new file mode 100644 (file)
index 0000000..1e19f77
--- /dev/null
@@ -0,0 +1,19 @@
+Makefile: Don't call "ln" directly
+
+Signed-off-by: Vicente Olivert Riera <vincent.riera@imgtec.com>
+
+--- keyutils-1.5.9/Makefile.orig       2014-09-22 16:05:14.117007430 +0100
++++ keyutils-1.5.9/Makefile    2014-09-22 16:06:26.053219336 +0100
+@@ -123,10 +123,10 @@ endif
+ ifeq ($(NO_SOLIB),0)
+ all: $(DEVELLIB)
+ $(DEVELLIB): $(SONAME)
+-      ln -sf $< $@
++      $(LNS) $< $@
+ $(SONAME): $(LIBNAME)
+-      ln -sf $< $@
++      $(LNS) $< $@
+ LIBVERS := -shared -Wl,-soname,$(SONAME) -Wl,--version-script,version.lds
diff --git a/package/keyutils/keyutils-01-allow-building-of-the-shared-library-to-be-suppressed.patch b/package/keyutils/keyutils-01-allow-building-of-the-shared-library-to-be-suppressed.patch
deleted file mode 100644 (file)
index 88d32b0..0000000
+++ /dev/null
@@ -1,104 +0,0 @@
-keyutils: Allow building of the shared library to be suppressed
-
-Upstream patch:
-  https://kernel.googlesource.com/pub/scm/linux/kernel/git/dhowells/keyutils/+/a4deb71ddc05e951c8be8d46615beed9d408a5c8
-
-Signed-off-by: Vicente Olivert Riera <vincent.riera@imgtec.com>
-
-LIB: Allow building of the shared library to be suppressed
-
-Allow building of the shared library to be suppressed by passing NO_SOLIB=1 to
-the Makefile.
-
-Reported-and-tested-by: Vicente Olivert Riera <vincent.riera@imgtec.com>
-Signed-off-by: David Howells <dhowells@redhat.com>
-diff --git a/Makefile b/Makefile
-index c904eaf..5dd2113 100644
---- a/Makefile
-+++ b/Makefile
-@@ -5,6 +5,7 @@
- SPECFILE      := keyutils.spec
- NO_GLIBC_KEYERR       := 0
- NO_ARLIB      := 0
-+NO_SOLIB      := 0
- ETCDIR                := /etc
- BINDIR                := /bin
- SBINDIR               := /sbin
-@@ -95,7 +96,7 @@
- # Normal build rule
- #
- ###############################################################################
--all: $(DEVELLIB) keyctl request-key key.dns_resolver
-+all: keyctl request-key key.dns_resolver
- ###############################################################################
- #
-@@ -104,20 +105,23 @@
- ###############################################################################
- #RPATH = -Wl,-rpath,$(LIBDIR)
--ifeq ($(NO_ARLIB),0)
--all: $(ARLIB)
--$(ARLIB): keyutils.o
--      $(AR) rcs $@ $<
--endif
--
- VCPPFLAGS     := -DPKGBUILD="\"$(shell date -u +%F)\""
- VCPPFLAGS     += -DPKGVERSION="\"keyutils-$(VERSION)\""
- VCPPFLAGS     += -DAPIVERSION="\"libkeyutils-$(APIVERSION)\""
-+ifeq ($(NO_ARLIB),0)
-+all: $(ARLIB)
-+$(ARLIB): keyutils.o
-+      $(AR) rcs $@ $<
-+
- keyutils.o: keyutils.c keyutils.h Makefile
-       $(CC) $(CPPFLAGS) $(VCPPFLAGS) $(CFLAGS) -UNO_GLIBC_KEYERR -o $@ -c $<
-+LIB_DEPENDENCY        := libkeyutils.a
-+endif
-+ifeq ($(NO_SOLIB),0)
-+all: $(DEVELLIB)
- $(DEVELLIB): $(SONAME)
-       ln -sf $< $@
-@@ -131,6 +135,8 @@
- keyutils.os: keyutils.c keyutils.h Makefile
-       $(CC) $(CPPFLAGS) $(VCPPFLAGS) $(CFLAGS) -fPIC -o $@ -c $<
-+LIB_DEPENDENCY        := $(DEVELLIB)
-+endif
- ###############################################################################
- #
-@@ -140,13 +146,13 @@
- %.o: %.c keyutils.h Makefile
-       $(CC) $(CPPFLAGS) $(CFLAGS) -o $@ -c $<
--keyctl: keyctl.o $(DEVELLIB)
-+keyctl: keyctl.o $(LIB_DEPENDENCY)
-       $(CC) -L. $(CFLAGS) $(LDFLAGS) $(RPATH) -o $@ $< -lkeyutils
--request-key: request-key.o $(DEVELLIB)
-+request-key: request-key.o $(LIB_DEPENDENCY)
-       $(CC) -L. $(CFLAGS) $(LDFLAGS) $(RPATH) -o $@ $< -lkeyutils
--key.dns_resolver: key.dns_resolver.o $(DEVELLIB)
-+key.dns_resolver: key.dns_resolver.o $(LIB_DEPENDENCY)
-       $(CC) -L. $(CFLAGS) $(LDFLAGS) $(RPATH) -o $@ $< -lkeyutils -lresolv
- ###############################################################################
-@@ -158,10 +164,12 @@
- ifeq ($(NO_ARLIB),0)
-       $(INSTALL) -D -m 0644 $(ARLIB) $(DESTDIR)$(USRLIBDIR)/$(ARLIB)
- endif
-+ifeq ($(NO_SOLIB),0)
-       $(INSTALL) -D $(LIBNAME) $(DESTDIR)$(LIBDIR)/$(LIBNAME)
-       $(LNS) $(LIBNAME) $(DESTDIR)$(LIBDIR)/$(SONAME)
-       mkdir -p $(DESTDIR)$(USRLIBDIR)
-       $(LNS) $(LIBDIR)/$(SONAME) $(DESTDIR)$(USRLIBDIR)/$(DEVELLIB)
-+endif
-       $(INSTALL) -D keyctl $(DESTDIR)$(BINDIR)/keyctl
-       $(INSTALL) -D request-key $(DESTDIR)$(SBINDIR)/request-key
-       $(INSTALL) -D request-key-debug.sh $(DESTDIR)$(SHAREDIR)/request-key-debug.sh
diff --git a/package/keyutils/keyutils-02-fix-install-rule.patch b/package/keyutils/keyutils-02-fix-install-rule.patch
deleted file mode 100644 (file)
index 3670d28..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-Makefile: fix install rule
-
-Do not link the .so with an absolute path, otherwise it may point to
-the host library.
-
-Based on the former patch by Yann E. MORIN.
-
-Signed-off-by: Vicente Olivert Riera <vincent.riera@imgtec.com>
-
---- keyutils-1.5.9/Makefile.orig       2014-09-22 16:13:41.593562765 +0100
-+++ keyutils-1.5.9/Makefile    2014-09-22 16:14:05.377963952 +0100
-@@ -168,7 +168,7 @@ ifeq ($(NO_SOLIB),0)
-       $(INSTALL) -D $(LIBNAME) $(DESTDIR)$(LIBDIR)/$(LIBNAME)
-       $(LNS) $(LIBNAME) $(DESTDIR)$(LIBDIR)/$(SONAME)
-       mkdir -p $(DESTDIR)$(USRLIBDIR)
--      $(LNS) $(LIBDIR)/$(SONAME) $(DESTDIR)$(USRLIBDIR)/$(DEVELLIB)
-+      $(LNS) $(SONAME) $(DESTDIR)$(USRLIBDIR)/$(DEVELLIB)
- endif
-       $(INSTALL) -D keyctl $(DESTDIR)$(BINDIR)/keyctl
-       $(INSTALL) -D request-key $(DESTDIR)$(SBINDIR)/request-key
diff --git a/package/keyutils/keyutils-03-cifs.patch b/package/keyutils/keyutils-03-cifs.patch
deleted file mode 100644 (file)
index b2903f9..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-Patch vampirised from Debian's packaging of keyutils-1.4
-
-Author: Marcus Meissner <meissner@suse.de>
-Description: Added 2 cifs helpers to request-key.conf (for CIFS DFS support)
-
-diff -Naurp keyutils.orig/request-key.conf keyutils/request-key.conf
---- keyutils.orig/request-key.conf     2008-09-07 23:53:10.000000000 +0000
-+++ keyutils/request-key.conf  2009-02-05 00:53:00.000000000 +0000
-@@ -34,4 +34,6 @@
- create        user    debug:*         negate          /bin/keyctl negate %k 30 %S
- create        user    debug:loop:*    *               |/bin/cat
- create        user    debug:*         *               /usr/share/keyutils/request-key-debug.sh %k %d %c %S
-+create        cifs.spnego     *       *               /usr/sbin/cifs.upcall -c %k
-+create        dns_resolver    *       *               /usr/sbin/cifs.upcall %k
- negate        *       *               *               /bin/keyctl negate %k 30 %S
diff --git a/package/keyutils/keyutils-04-Makefile-for-buildroot.patch b/package/keyutils/keyutils-04-Makefile-for-buildroot.patch
deleted file mode 100644 (file)
index 1e19f77..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-Makefile: Don't call "ln" directly
-
-Signed-off-by: Vicente Olivert Riera <vincent.riera@imgtec.com>
-
---- keyutils-1.5.9/Makefile.orig       2014-09-22 16:05:14.117007430 +0100
-+++ keyutils-1.5.9/Makefile    2014-09-22 16:06:26.053219336 +0100
-@@ -123,10 +123,10 @@ endif
- ifeq ($(NO_SOLIB),0)
- all: $(DEVELLIB)
- $(DEVELLIB): $(SONAME)
--      ln -sf $< $@
-+      $(LNS) $< $@
- $(SONAME): $(LIBNAME)
--      ln -sf $< $@
-+      $(LNS) $< $@
- LIBVERS := -shared -Wl,-soname,$(SONAME) -Wl,--version-script,version.lds
diff --git a/package/kobs-ng/0001-fix-mtd-defines.patch b/package/kobs-ng/0001-fix-mtd-defines.patch
new file mode 100644 (file)
index 0000000..3ffba71
--- /dev/null
@@ -0,0 +1,73 @@
+Newer kernel headers renamed mtd mode defines and no longer support
+MEMSETOOBSEL. Allow code to work with both older and newer kernel
+versions.
+
+Signed-off-by: Paul B. Henson <henson@acm.org>
+Signed-off-by: Sergey Alyoshin <alyoshin.s@gmail.com>
+
+diff -u -r kobs-ng-3.0.35-4.0.0-orig/src/mtd.c kobs-ng-3.0.35-4.0.0/src/mtd.c
+--- kobs-ng-3.0.35-4.0.0-orig/src/mtd.c        2012-12-17 22:37:40.000000000 -0800
++++ kobs-ng-3.0.35-4.0.0/src/mtd.c     2013-07-28 19:39:59.000000000 -0700
+@@ -852,8 +852,11 @@
+               mp = &md->part[i];
+               if (mp->fd != -1) {
++/* Newer kernels dropped MEMSETOOBSEL */
++#ifdef MEMSETOOBSEL
+                       (void)ioctl(mp->fd, MEMSETOOBSEL,
+                                       &mp->old_oobinfo);
++#endif
+                       close(mp->fd);
+               }
+@@ -896,6 +899,8 @@
+                               continue;
+                       }
++/* Newer kernels dropped MEMSETOOBSEL */
++#ifdef MEMSETOOBSEL
+                       if (r == -ENOTTY) {
+                               r = ioctl(mp->fd, MEMSETOOBSEL, &mp->old_oobinfo);
+                               if (r != 0) {
+@@ -904,6 +909,7 @@
+                               }
+                               mp->oobinfochanged = 0;
+                       }
++#endif
+               } else {
+                       r = ioctl(mp->fd, MTDFILEMODE, (void *)MTD_MODE_RAW);
+                       if (r != 0 && r != -ENOTTY) {
+@@ -911,6 +917,8 @@
+                               continue;
+                       }
++/* Newer kernels dropped MEMSETOOBSEL */
++#ifdef MEMSETOOBSEL
+                       if (r == -ENOTTY) {
+                               r = ioctl(mp->fd, MEMSETOOBSEL, &none_oobinfo);
+                               if (r != 0) {
+@@ -920,6 +928,7 @@
+                               mp->oobinfochanged = 1;
+                       } else
+                               mp->oobinfochanged = 2;
++#endif
+               }
+               mp->ecc = ecc;
+diff -u -r kobs-ng-3.0.35-4.0.0-orig/src/mtd.h kobs-ng-3.0.35-4.0.0/src/mtd.h
+--- kobs-ng-3.0.35-4.0.0-orig/src/mtd.h        2012-12-17 22:37:40.000000000 -0800
++++ kobs-ng-3.0.35-4.0.0/src/mtd.h     2013-07-28 19:33:57.000000000 -0700
+@@ -31,6 +31,13 @@
+ #include "BootControlBlocks.h"
+ #include "rom_nand_hamming_code_ecc.h"
++// Newer kernel headers renamed define
++#include <linux/version.h>
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 2, 0)
++# define MTD_MODE_NORMAL MTD_FILE_MODE_NORMAL
++# define MTD_MODE_RAW MTD_FILE_MODE_RAW
++#endif
++
+ //------------------------------------------------------------------------------
+ // Re-definitions of true and false, because the standard ones aren't good
+ // enough?
diff --git a/package/kobs-ng/kobs-ng-0001-fix-mtd-defines.patch b/package/kobs-ng/kobs-ng-0001-fix-mtd-defines.patch
deleted file mode 100644 (file)
index 3ffba71..0000000
+++ /dev/null
@@ -1,73 +0,0 @@
-Newer kernel headers renamed mtd mode defines and no longer support
-MEMSETOOBSEL. Allow code to work with both older and newer kernel
-versions.
-
-Signed-off-by: Paul B. Henson <henson@acm.org>
-Signed-off-by: Sergey Alyoshin <alyoshin.s@gmail.com>
-
-diff -u -r kobs-ng-3.0.35-4.0.0-orig/src/mtd.c kobs-ng-3.0.35-4.0.0/src/mtd.c
---- kobs-ng-3.0.35-4.0.0-orig/src/mtd.c        2012-12-17 22:37:40.000000000 -0800
-+++ kobs-ng-3.0.35-4.0.0/src/mtd.c     2013-07-28 19:39:59.000000000 -0700
-@@ -852,8 +852,11 @@
-               mp = &md->part[i];
-               if (mp->fd != -1) {
-+/* Newer kernels dropped MEMSETOOBSEL */
-+#ifdef MEMSETOOBSEL
-                       (void)ioctl(mp->fd, MEMSETOOBSEL,
-                                       &mp->old_oobinfo);
-+#endif
-                       close(mp->fd);
-               }
-@@ -896,6 +899,8 @@
-                               continue;
-                       }
-+/* Newer kernels dropped MEMSETOOBSEL */
-+#ifdef MEMSETOOBSEL
-                       if (r == -ENOTTY) {
-                               r = ioctl(mp->fd, MEMSETOOBSEL, &mp->old_oobinfo);
-                               if (r != 0) {
-@@ -904,6 +909,7 @@
-                               }
-                               mp->oobinfochanged = 0;
-                       }
-+#endif
-               } else {
-                       r = ioctl(mp->fd, MTDFILEMODE, (void *)MTD_MODE_RAW);
-                       if (r != 0 && r != -ENOTTY) {
-@@ -911,6 +917,8 @@
-                               continue;
-                       }
-+/* Newer kernels dropped MEMSETOOBSEL */
-+#ifdef MEMSETOOBSEL
-                       if (r == -ENOTTY) {
-                               r = ioctl(mp->fd, MEMSETOOBSEL, &none_oobinfo);
-                               if (r != 0) {
-@@ -920,6 +928,7 @@
-                               mp->oobinfochanged = 1;
-                       } else
-                               mp->oobinfochanged = 2;
-+#endif
-               }
-               mp->ecc = ecc;
-diff -u -r kobs-ng-3.0.35-4.0.0-orig/src/mtd.h kobs-ng-3.0.35-4.0.0/src/mtd.h
---- kobs-ng-3.0.35-4.0.0-orig/src/mtd.h        2012-12-17 22:37:40.000000000 -0800
-+++ kobs-ng-3.0.35-4.0.0/src/mtd.h     2013-07-28 19:33:57.000000000 -0700
-@@ -31,6 +31,13 @@
- #include "BootControlBlocks.h"
- #include "rom_nand_hamming_code_ecc.h"
-+// Newer kernel headers renamed define
-+#include <linux/version.h>
-+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 2, 0)
-+# define MTD_MODE_NORMAL MTD_FILE_MODE_NORMAL
-+# define MTD_MODE_RAW MTD_FILE_MODE_RAW
-+#endif
-+
- //------------------------------------------------------------------------------
- // Re-definitions of true and false, because the standard ones aren't good
- // enough?
diff --git a/package/latencytop/0001-makefile.patch b/package/latencytop/0001-makefile.patch
new file mode 100644 (file)
index 0000000..fa8c51c
--- /dev/null
@@ -0,0 +1,28 @@
+Usee $(CC) to enable cross compiling and link to the right ncurses library.
+
+Signed-off-by: Qais Yousef <qais.yousef@imgtec.com>
+
+--- latencytop-0.5/Makefile.old        2012-04-18 11:59:39.748084334 +0100
++++ latencytop-0.5/Makefile    2012-04-18 12:00:08.659112340 +0100
+@@ -4,7 +4,7 @@
+ DESTDIR =
+ SBINDIR = /usr/sbin
+ XCFLAGS = -W  -g `pkg-config --cflags glib-2.0` -D_FORTIFY_SOURCE=2 -Wno-sign-compare
+-LDF = -Wl,--as-needed `pkg-config --libs glib-2.0`   -lncursesw 
++LDF = -Wl,--as-needed `pkg-config --libs glib-2.0`   -lncurses 
+ OBJS= latencytop.o text_display.o translate.o fsync.o
+@@ -26,10 +26,10 @@
+ # We write explicity this "implicit rule"
+ %.o : %.c
+-      gcc -c $(CFLAGS) $(XCFLAGS) $< -o $@
++      $(CC) -c $(CFLAGS) $(XCFLAGS) $< -o $@
+ latencytop:  $(OBJS) latencytop.h Makefile
+-      gcc $(CFLAGS) $(OBJS) $(LDF) -o latencytop 
++      $(CC) $(CFLAGS) $(OBJS) $(LDF) -o latencytop 
+ clean:
+       rm -f *~ latencytop DEADJOE *.o
diff --git a/package/latencytop/latencytop-makefile.patch b/package/latencytop/latencytop-makefile.patch
deleted file mode 100644 (file)
index fa8c51c..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-Usee $(CC) to enable cross compiling and link to the right ncurses library.
-
-Signed-off-by: Qais Yousef <qais.yousef@imgtec.com>
-
---- latencytop-0.5/Makefile.old        2012-04-18 11:59:39.748084334 +0100
-+++ latencytop-0.5/Makefile    2012-04-18 12:00:08.659112340 +0100
-@@ -4,7 +4,7 @@
- DESTDIR =
- SBINDIR = /usr/sbin
- XCFLAGS = -W  -g `pkg-config --cflags glib-2.0` -D_FORTIFY_SOURCE=2 -Wno-sign-compare
--LDF = -Wl,--as-needed `pkg-config --libs glib-2.0`   -lncursesw 
-+LDF = -Wl,--as-needed `pkg-config --libs glib-2.0`   -lncurses 
- OBJS= latencytop.o text_display.o translate.o fsync.o
-@@ -26,10 +26,10 @@
- # We write explicity this "implicit rule"
- %.o : %.c
--      gcc -c $(CFLAGS) $(XCFLAGS) $< -o $@
-+      $(CC) -c $(CFLAGS) $(XCFLAGS) $< -o $@
- latencytop:  $(OBJS) latencytop.h Makefile
--      gcc $(CFLAGS) $(OBJS) $(LDF) -o latencytop 
-+      $(CC) $(CFLAGS) $(OBJS) $(LDF) -o latencytop 
- clean:
-       rm -f *~ latencytop DEADJOE *.o
diff --git a/package/lcdapi/0001-Remove-installation-of-docs-examples.patch b/package/lcdapi/0001-Remove-installation-of-docs-examples.patch
new file mode 100644 (file)
index 0000000..dcadcf4
--- /dev/null
@@ -0,0 +1,39 @@
+From ede0fa7d410be407164b68570a1540378bf0bd09 Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Date: Sat, 19 Jul 2014 10:40:59 +0200
+Subject: [PATCH] Remove installation of docs/examples
+
+They get installed in the wrong directory, i.e if DESTDIR is
+/path/to/output/target, they will be installed in
+/path/to/output/target./examples and /path/to/output/target./docs.
+
+Since we don't need docs and examples in Buildroot anyway, simply get
+rid of them.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ Makefile.am | 11 -----------
+ 1 file changed, 11 deletions(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index c56860a..6b1267b 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -69,14 +69,3 @@ liblcdapi_la_CXXFLAGS = \
+       -g0 -DNODEBUG -Os
+ ACLOCAL_AMFLAGS = -I m4
+-
+-docsdir = $(top_srcdir)/docs
+-exampledir = $(top_srcdir)/example
+-dist_docs_DATA = \
+-      docs/Makefile.am \
+-      docs/Makefile.in \
+-      docs/Doxyfile.in
+-dist_example_DATA = \
+-      example/client.cpp \
+-      example/Makefile.am \
+-      example/Makefile.in
+-- 
+2.0.0
+
diff --git a/package/lcdapi/lcdapi-0001-Remove-installation-of-docs-examples.patch b/package/lcdapi/lcdapi-0001-Remove-installation-of-docs-examples.patch
deleted file mode 100644 (file)
index dcadcf4..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-From ede0fa7d410be407164b68570a1540378bf0bd09 Mon Sep 17 00:00:00 2001
-From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-Date: Sat, 19 Jul 2014 10:40:59 +0200
-Subject: [PATCH] Remove installation of docs/examples
-
-They get installed in the wrong directory, i.e if DESTDIR is
-/path/to/output/target, they will be installed in
-/path/to/output/target./examples and /path/to/output/target./docs.
-
-Since we don't need docs and examples in Buildroot anyway, simply get
-rid of them.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
----
- Makefile.am | 11 -----------
- 1 file changed, 11 deletions(-)
-
-diff --git a/Makefile.am b/Makefile.am
-index c56860a..6b1267b 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -69,14 +69,3 @@ liblcdapi_la_CXXFLAGS = \
-       -g0 -DNODEBUG -Os
- ACLOCAL_AMFLAGS = -I m4
--
--docsdir = $(top_srcdir)/docs
--exampledir = $(top_srcdir)/example
--dist_docs_DATA = \
--      docs/Makefile.am \
--      docs/Makefile.in \
--      docs/Doxyfile.in
--dist_example_DATA = \
--      example/client.cpp \
--      example/Makefile.am \
--      example/Makefile.in
--- 
-2.0.0
-
diff --git a/package/lcdproc/0001-LCDd.conf.patch b/package/lcdproc/0001-LCDd.conf.patch
new file mode 100644 (file)
index 0000000..283ac88
--- /dev/null
@@ -0,0 +1,18 @@
+Fix the default LCDd configuration file, so that the DriverPath
+is set to the correct lcdproc library install path, rather than
+the dummy/default path.
+
+Signed-off-by: Simon Dawson <spdawson at gmail.com>
+---
+
+--- lcdproc-0.5.3/LCDd.conf.orig       2009-06-20 14:48:34.000000000 +0100
++++ lcdproc-0.5.3/LCDd.conf    2010-05-11 10:02:21.000000000 +0100
+@@ -34,7 +34,7 @@
+ #            the driver modules and will thus not be able to
+ #            function properly.
+ # NOTE: Always place a slash as last character !
+-DriverPath=server/drivers/
++DriverPath=/usr/lib/lcdproc/
+
+ # Tells the server to load the given drivers. Multiple lines can be given.
+ # The name of the driver is case sensitive and determines the section
diff --git a/package/lcdproc/lcdproc-LCDd.conf.patch b/package/lcdproc/lcdproc-LCDd.conf.patch
deleted file mode 100644 (file)
index 283ac88..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-Fix the default LCDd configuration file, so that the DriverPath
-is set to the correct lcdproc library install path, rather than
-the dummy/default path.
-
-Signed-off-by: Simon Dawson <spdawson at gmail.com>
----
-
---- lcdproc-0.5.3/LCDd.conf.orig       2009-06-20 14:48:34.000000000 +0100
-+++ lcdproc-0.5.3/LCDd.conf    2010-05-11 10:02:21.000000000 +0100
-@@ -34,7 +34,7 @@
- #            the driver modules and will thus not be able to
- #            function properly.
- # NOTE: Always place a slash as last character !
--DriverPath=server/drivers/
-+DriverPath=/usr/lib/lcdproc/
-
- # Tells the server to load the given drivers. Multiple lines can be given.
- # The name of the driver is case sensitive and determines the section
diff --git a/package/leafnode2/0001-cross_makefile.patch b/package/leafnode2/0001-cross_makefile.patch
new file mode 100644 (file)
index 0000000..b61a8ef
--- /dev/null
@@ -0,0 +1,39 @@
+Fix cross-compilation issues
+
+ - During target package compilation the host version of b_sortnl is
+   needed.
+
+ - Do not call a 'amiroot' program built for the target when
+   cross-compiling. We're anyway not root, so simply remove the
+   chown/chgrp dance.
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/Makefile.in
+===================================================================
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -1853,7 +1853,7 @@
+ configparam_data.c: $(srcdir)/config.table b_sortnl$(EXEEXT) genconfigparam_data.awk
+       rm -f config.table.sorted
+-      ./b_sortnl$(EXEEXT) <$(srcdir)/config.table >config.table.sorted
++      ./b_sortnl_host$(EXEEXT) <$(srcdir)/config.table >config.table.sorted
+       $(AWK) -f $(srcdir)/genconfigparam_data.awk <config.table.sorted >$@ \
+       || { rm -f $@ ; false ; }
+@@ -1868,13 +1868,7 @@
+ install-data-hook:
+       $(INSTALL) -d -m 02770 $(DESTDIR)$(SPOOLDIR)
+       $(INSTALL) -d -m 02770 $(DESTDIR)$(SPOOLDIR)/leaf.node
+-      -./amiroot && chown $(RUNAS_USER) $(DESTDIR)$(SPOOLDIR)
+-      -./amiroot && chown $(RUNAS_USER) $(DESTDIR)$(SPOOLDIR)/leaf.node
+-      -./amiroot && chgrp $(RUNAS_GROUP) $(DESTDIR)$(SPOOLDIR)
+-      -./amiroot && chgrp $(RUNAS_GROUP) $(DESTDIR)$(SPOOLDIR)/leaf.node
+       rm -f $(DESTDIR)$(sbindir)/leafnode-version # now in $(bindir)
+-      ./amiroot && p=$(DESTDIR)$(bindir)/newsq && chown 0 $$p \
+-              && chgrp $(RUNAS_GROUP) $$p && chmod 2111 $$p  ; true
+       @echo
+       @echo "### If upgrading from leafnode before 1.6,"
+       @echo "### run:  make update"
diff --git a/package/leafnode2/leafnode2-0001-cross_makefile.patch b/package/leafnode2/leafnode2-0001-cross_makefile.patch
deleted file mode 100644 (file)
index b61a8ef..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-Fix cross-compilation issues
-
- - During target package compilation the host version of b_sortnl is
-   needed.
-
- - Do not call a 'amiroot' program built for the target when
-   cross-compiling. We're anyway not root, so simply remove the
-   chown/chgrp dance.
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/Makefile.in
-===================================================================
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -1853,7 +1853,7 @@
- configparam_data.c: $(srcdir)/config.table b_sortnl$(EXEEXT) genconfigparam_data.awk
-       rm -f config.table.sorted
--      ./b_sortnl$(EXEEXT) <$(srcdir)/config.table >config.table.sorted
-+      ./b_sortnl_host$(EXEEXT) <$(srcdir)/config.table >config.table.sorted
-       $(AWK) -f $(srcdir)/genconfigparam_data.awk <config.table.sorted >$@ \
-       || { rm -f $@ ; false ; }
-@@ -1868,13 +1868,7 @@
- install-data-hook:
-       $(INSTALL) -d -m 02770 $(DESTDIR)$(SPOOLDIR)
-       $(INSTALL) -d -m 02770 $(DESTDIR)$(SPOOLDIR)/leaf.node
--      -./amiroot && chown $(RUNAS_USER) $(DESTDIR)$(SPOOLDIR)
--      -./amiroot && chown $(RUNAS_USER) $(DESTDIR)$(SPOOLDIR)/leaf.node
--      -./amiroot && chgrp $(RUNAS_GROUP) $(DESTDIR)$(SPOOLDIR)
--      -./amiroot && chgrp $(RUNAS_GROUP) $(DESTDIR)$(SPOOLDIR)/leaf.node
-       rm -f $(DESTDIR)$(sbindir)/leafnode-version # now in $(bindir)
--      ./amiroot && p=$(DESTDIR)$(bindir)/newsq && chown 0 $$p \
--              && chgrp $(RUNAS_GROUP) $$p && chmod 2111 $$p  ; true
-       @echo
-       @echo "### If upgrading from leafnode before 1.6,"
-       @echo "### run:  make update"
diff --git a/package/libaio/0001-arches.patch b/package/libaio/0001-arches.patch
new file mode 100644 (file)
index 0000000..c85568c
--- /dev/null
@@ -0,0 +1,671 @@
+Patch borrowed from OpenEmbedded, available at
+recipes/libaio/libaio-0.3.106/00_arches.patch in their source
+tree. The patch has been adapted to remove the ARM-related
+definitions, since they have been merged in later versions of libaio.
+
+The patch adds various architecture specific definitions (syscall
+number and macros) for m68k, MIPS, PA/RISC and Sparc. Amongst these,
+Buildroot mostly only cares about MIPS, but it was just easier to take
+the whole OpenEmbedded patch.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ src/libaio.h         |   24 +++++
+ src/syscall-m68k.h   |   78 +++++++++++++++++
+ src/syscall-mips.h   |  223 +++++++++++++++++++++++++++++++++++++++++++++++++++
+ src/syscall-parisc.h |  146 +++++++++++++++++++++++++++++++++
+ src/syscall-sparc.h  |  130 +++++++++++++++++++++++++++++
+ src/syscall.h        |    8 +
+ 7 files changed, 725 insertions(+)
+
+Index: libaio-0.3.109/src/libaio.h
+===================================================================
+--- libaio-0.3.109.orig/src/libaio.h
++++ libaio-0.3.109/src/libaio.h
+@@ -83,6 +83,30 @@
+ #define PADDEDptr(x, y)       x; unsigned y
+ #define PADDEDul(x, y)        unsigned long x; unsigned y
+ #  endif
++#elif defined(__m68k__) /* big endian, 32 bits */
++#define PADDED(x, y)  unsigned y; x
++#define PADDEDptr(x, y)       unsigned y; x
++#define PADDEDul(x, y)        unsigned y; unsigned long x
++#elif defined(__sparc__) /* big endian, 32 bits */
++#define PADDED(x, y)  unsigned y; x
++#define PADDEDptr(x, y)       unsigned y; x
++#define PADDEDul(x, y)        unsigned y; unsigned long x
++#elif defined(__hppa__) /* big endian, 32 bits */
++#define PADDED(x, y)  unsigned y; x
++#define PADDEDptr(x, y)       unsigned y; x
++#define PADDEDul(x, y)        unsigned y; unsigned long x
++#elif defined(__mips__)
++#  if defined (__MIPSEB__) /* big endian, 32 bits */
++#define PADDED(x, y)  unsigned y; x
++#define PADDEDptr(x, y)       unsigned y; x
++#define PADDEDul(x, y)        unsigned y; unsigned long x
++#  elif defined(__MIPSEL__) /* little endian, 32 bits */
++#define PADDED(x, y)  x; unsigned y
++#define PADDEDptr(x, y)       x; unsigned y
++#define PADDEDul(x, y)        unsigned long x; unsigned y
++#  else
++#    error "neither mipseb nor mipsel?"
++#  endif
+ #else
+ #error        endian?
+ #endif
+Index: libaio-0.3.109/src/syscall-m68k.h
+===================================================================
+--- /dev/null
++++ libaio-0.3.109/src/syscall-m68k.h
+@@ -0,0 +1,78 @@
++#define __NR_io_setup         241
++#define __NR_io_destroy               242
++#define __NR_io_getevents     243
++#define __NR_io_submit                244
++#define __NR_io_cancel                245
++
++#define io_syscall1(type,fname,sname,atype,a) \
++type fname(atype a) \
++{ \
++register long __res __asm__ ("%d0") = __NR_##sname; \
++register long __a __asm__ ("%d1") = (long)(a); \
++__asm__ __volatile__ ("trap  #0" \
++                    : "+d" (__res) \
++                    : "d" (__a)  ); \
++return (type) __res; \
++}
++
++#define io_syscall2(type,fname,sname,atype,a,btype,b) \
++type fname(atype a,btype b) \
++{ \
++register long __res __asm__ ("%d0") = __NR_##sname; \
++register long __a __asm__ ("%d1") = (long)(a); \
++register long __b __asm__ ("%d2") = (long)(b); \
++__asm__ __volatile__ ("trap  #0" \
++                    : "+d" (__res) \
++                    : "d" (__a), "d" (__b) \
++                   ); \
++return (type) __res; \
++}
++
++#define io_syscall3(type,fname,sname,atype,a,btype,b,ctype,c) \
++type fname(atype a,btype b,ctype c) \
++{ \
++register long __res __asm__ ("%d0") = __NR_##sname; \
++register long __a __asm__ ("%d1") = (long)(a); \
++register long __b __asm__ ("%d2") = (long)(b); \
++register long __c __asm__ ("%d3") = (long)(c); \
++__asm__ __volatile__ ("trap  #0" \
++                    : "+d" (__res) \
++                    : "d" (__a), "d" (__b), \
++                      "d" (__c) \
++                   ); \
++return (type) __res; \
++}
++
++#define io_syscall4(type,fname,sname,atype,a,btype,b,ctype,c,dtype,d) \
++type fname (atype a, btype b, ctype c, dtype d) \
++{ \
++register long __res __asm__ ("%d0") = __NR_##sname; \
++register long __a __asm__ ("%d1") = (long)(a); \
++register long __b __asm__ ("%d2") = (long)(b); \
++register long __c __asm__ ("%d3") = (long)(c); \
++register long __d __asm__ ("%d4") = (long)(d); \
++__asm__ __volatile__ ("trap  #0" \
++                    : "+d" (__res) \
++                    : "d" (__a), "d" (__b), \
++                      "d" (__c), "d" (__d)  \
++                   ); \
++return (type) __res; \
++}
++
++#define io_syscall5(type,fname,sname,atype,a,btype,b,ctype,c,dtype,d,etype,e) \
++type fname (atype a,btype b,ctype c,dtype d,etype e) \
++{ \
++register long __res __asm__ ("%d0") = __NR_##sname; \
++register long __a __asm__ ("%d1") = (long)(a); \
++register long __b __asm__ ("%d2") = (long)(b); \
++register long __c __asm__ ("%d3") = (long)(c); \
++register long __d __asm__ ("%d4") = (long)(d); \
++register long __e __asm__ ("%d5") = (long)(e); \
++__asm__ __volatile__ ("trap  #0" \
++                    : "+d" (__res) \
++                    : "d" (__a), "d" (__b), \
++                      "d" (__c), "d" (__d), "d" (__e)  \
++                   ); \
++return (type) __res; \
++}
++
+Index: libaio-0.3.109/src/syscall-mips.h
+===================================================================
+--- /dev/null
++++ libaio-0.3.109/src/syscall-mips.h
+@@ -0,0 +1,223 @@
++/*
++ * This file is subject to the terms and conditions of the GNU General Public
++ * License.  See the file "COPYING" in the main directory of this archive
++ * for more details.
++ *
++ * Copyright (C) 1995, 96, 97, 98, 99, 2000 by Ralf Baechle
++ * Copyright (C) 1999, 2000 Silicon Graphics, Inc.
++ *
++ * Changed system calls macros _syscall5 - _syscall7 to push args 5 to 7 onto
++ * the stack. Robin Farine for ACN S.A, Copyright (C) 1996 by ACN S.A
++ */
++
++#ifndef _MIPS_SIM_ABI32
++#define _MIPS_SIM_ABI32                       1
++#define _MIPS_SIM_NABI32              2
++#define _MIPS_SIM_ABI64                       3
++#endif
++
++#if _MIPS_SIM == _MIPS_SIM_ABI32
++
++/*
++ * Linux o32 style syscalls are in the range from 4000 to 4999.
++ */
++#define __NR_Linux                    4000
++#define __NR_io_setup                 (__NR_Linux + 241)
++#define __NR_io_destroy                       (__NR_Linux + 242)
++#define __NR_io_getevents             (__NR_Linux + 243)
++#define __NR_io_submit                        (__NR_Linux + 244)
++#define __NR_io_cancel                        (__NR_Linux + 245)
++
++#endif /* _MIPS_SIM == _MIPS_SIM_ABI32 */
++
++#if _MIPS_SIM == _MIPS_SIM_ABI64
++
++/*
++ * Linux 64-bit syscalls are in the range from 5000 to 5999.
++ */
++#define __NR_Linux                    5000
++#define __NR_io_setup                 (__NR_Linux + 200)
++#define __NR_io_destroy                       (__NR_Linux + 201)
++#define __NR_io_getevents             (__NR_Linux + 202)
++#define __NR_io_submit                        (__NR_Linux + 203)
++#define __NR_io_cancel                        (__NR_Linux + 204)
++#endif /* _MIPS_SIM == _MIPS_SIM_ABI64 */
++
++#if _MIPS_SIM == _MIPS_SIM_NABI32
++
++/*
++ * Linux N32 syscalls are in the range from 6000 to 6999.
++ */
++#define __NR_Linux                    6000
++#define __NR_io_setup                 (__NR_Linux + 200)
++#define __NR_io_destroy                       (__NR_Linux + 201)
++#define __NR_io_getevents             (__NR_Linux + 202)
++#define __NR_io_submit                        (__NR_Linux + 203)
++#define __NR_io_cancel                        (__NR_Linux + 204)
++#endif /* _MIPS_SIM == _MIPS_SIM_NABI32 */
++
++#define io_syscall1(type,fname,sname,atype,a) \
++type fname(atype a) \
++{ \
++      register unsigned long __a0 asm("$4") = (unsigned long) a; \
++      register unsigned long __a3 asm("$7"); \
++      unsigned long __v0; \
++      \
++      __asm__ volatile ( \
++      ".set\tnoreorder\n\t" \
++      "li\t$2, %3\t\t\t# " #fname "\n\t" \
++      "syscall\n\t" \
++      "move\t%0, $2\n\t" \
++      ".set\treorder" \
++      : "=&r" (__v0), "=r" (__a3) \
++      : "r" (__a0), "i" (__NR_##sname) \
++      : "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", \
++        "memory"); \
++      \
++      if (__a3 == 0) \
++              return (type) __v0; \
++      return (type) -1; \
++}
++
++#define io_syscall2(type,fname,sname,atype,a,btype,b) \
++type fname(atype a, btype b) \
++{ \
++      register unsigned long __a0 asm("$4") = (unsigned long) a; \
++      register unsigned long __a1 asm("$5") = (unsigned long) b; \
++      register unsigned long __a3 asm("$7"); \
++      unsigned long __v0; \
++      \
++      __asm__ volatile ( \
++      ".set\tnoreorder\n\t" \
++      "li\t$2, %4\t\t\t# " #fname "\n\t" \
++      "syscall\n\t" \
++      "move\t%0, $2\n\t" \
++      ".set\treorder" \
++      : "=&r" (__v0), "=r" (__a3) \
++      : "r" (__a0), "r" (__a1), "i" (__NR_##sname) \
++      : "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", \
++        "memory"); \
++      \
++      if (__a3 == 0) \
++              return (type) __v0; \
++      return (type) -1; \
++}
++
++#define io_syscall3(type,fname,sname,atype,a,btype,b,ctype,c) \
++type fname(atype a, btype b, ctype c) \
++{ \
++      register unsigned long __a0 asm("$4") = (unsigned long) a; \
++      register unsigned long __a1 asm("$5") = (unsigned long) b; \
++      register unsigned long __a2 asm("$6") = (unsigned long) c; \
++      register unsigned long __a3 asm("$7"); \
++      unsigned long __v0; \
++      \
++      __asm__ volatile ( \
++      ".set\tnoreorder\n\t" \
++      "li\t$2, %5\t\t\t# " #fname "\n\t" \
++      "syscall\n\t" \
++      "move\t%0, $2\n\t" \
++      ".set\treorder" \
++      : "=&r" (__v0), "=r" (__a3) \
++      : "r" (__a0), "r" (__a1), "r" (__a2), "i" (__NR_##sname) \
++      : "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", \
++        "memory"); \
++      \
++      if (__a3 == 0) \
++              return (type) __v0; \
++      return (type) -1; \
++}
++
++#define io_syscall4(type,fname,sname,atype,a,btype,b,ctype,c,dtype,d) \
++type fname(atype a, btype b, ctype c, dtype d) \
++{ \
++      register unsigned long __a0 asm("$4") = (unsigned long) a; \
++      register unsigned long __a1 asm("$5") = (unsigned long) b; \
++      register unsigned long __a2 asm("$6") = (unsigned long) c; \
++      register unsigned long __a3 asm("$7") = (unsigned long) d; \
++      unsigned long __v0; \
++      \
++      __asm__ volatile ( \
++      ".set\tnoreorder\n\t" \
++      "li\t$2, %5\t\t\t# " #fname "\n\t" \
++      "syscall\n\t" \
++      "move\t%0, $2\n\t" \
++      ".set\treorder" \
++      : "=&r" (__v0), "+r" (__a3) \
++      : "r" (__a0), "r" (__a1), "r" (__a2), "i" (__NR_##sname) \
++      : "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", \
++        "memory"); \
++      \
++      if (__a3 == 0) \
++              return (type) __v0; \
++      return (type) -1; \
++}
++
++#if (_MIPS_SIM == _MIPS_SIM_ABI32)
++
++/*
++ * Using those means your brain needs more than an oil change ;-)
++ */
++
++#define io_syscall5(type,fname,sname,atype,a,btype,b,ctype,c,dtype,d,etype,e) \
++type fname(atype a, btype b, ctype c, dtype d, etype e) \
++{ \
++      register unsigned long __a0 asm("$4") = (unsigned long) a; \
++      register unsigned long __a1 asm("$5") = (unsigned long) b; \
++      register unsigned long __a2 asm("$6") = (unsigned long) c; \
++      register unsigned long __a3 asm("$7") = (unsigned long) d; \
++      unsigned long __v0; \
++      \
++      __asm__ volatile ( \
++      ".set\tnoreorder\n\t" \
++      "lw\t$2, %6\n\t" \
++      "subu\t$29, 32\n\t" \
++      "sw\t$2, 16($29)\n\t" \
++      "li\t$2, %5\t\t\t# " #fname "\n\t" \
++      "syscall\n\t" \
++      "move\t%0, $2\n\t" \
++      "addiu\t$29, 32\n\t" \
++      ".set\treorder" \
++      : "=&r" (__v0), "+r" (__a3) \
++      : "r" (__a0), "r" (__a1), "r" (__a2), "i" (__NR_##sname), \
++        "m" ((unsigned long)e) \
++      : "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", \
++        "memory"); \
++      \
++      if (__a3 == 0) \
++              return (type) __v0; \
++      return (type) -1; \
++}
++
++#endif /* (_MIPS_SIM == _MIPS_SIM_ABI32) */
++
++#if (_MIPS_SIM == _MIPS_SIM_NABI32) || (_MIPS_SIM == _MIPS_SIM_ABI64)
++
++#define io_syscall5(type,fname,sname,atype,a,btype,b,ctype,c,dtype,d,etype,e) \
++type fname (atype a,btype b,ctype c,dtype d,etype e) \
++{ \
++      register unsigned long __a0 asm("$4") = (unsigned long) a; \
++      register unsigned long __a1 asm("$5") = (unsigned long) b; \
++      register unsigned long __a2 asm("$6") = (unsigned long) c; \
++      register unsigned long __a3 asm("$7") = (unsigned long) d; \
++      register unsigned long __a4 asm("$8") = (unsigned long) e; \
++      unsigned long __v0; \
++      \
++      __asm__ volatile ( \
++      ".set\tnoreorder\n\t" \
++      "li\t$2, %6\t\t\t# " #fname "\n\t" \
++      "syscall\n\t" \
++      "move\t%0, $2\n\t" \
++      ".set\treorder" \
++      : "=&r" (__v0), "+r" (__a3) \
++      : "r" (__a0), "r" (__a1), "r" (__a2), "r" (__a4), "i" (__NR_##sname) \
++      : "$2", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", \
++        "memory"); \
++      \
++      if (__a3 == 0) \
++              return (type) __v0; \
++      return (type) -1; \
++}
++
++#endif /* (_MIPS_SIM == _MIPS_SIM_NABI32) || (_MIPS_SIM == _MIPS_SIM_ABI64) */
++
+Index: libaio-0.3.109/src/syscall-parisc.h
+===================================================================
+--- /dev/null
++++ libaio-0.3.109/src/syscall-parisc.h
+@@ -0,0 +1,146 @@
++/*
++ * Linux system call numbers.
++ *
++ * Cary Coutant says that we should just use another syscall gateway
++ * page to avoid clashing with the HPUX space, and I think he's right:
++ * it will would keep a branch out of our syscall entry path, at the
++ * very least.  If we decide to change it later, we can ``just'' tweak
++ * the LINUX_GATEWAY_ADDR define at the bottom and make __NR_Linux be
++ * 1024 or something.  Oh, and recompile libc. =)
++ *
++ * 64-bit HPUX binaries get the syscall gateway address passed in a register
++ * from the kernel at startup, which seems a sane strategy.
++ */
++
++#define __NR_Linux                0
++#define __NR_io_setup           (__NR_Linux + 215)
++#define __NR_io_destroy         (__NR_Linux + 216)
++#define __NR_io_getevents       (__NR_Linux + 217)
++#define __NR_io_submit          (__NR_Linux + 218)
++#define __NR_io_cancel          (__NR_Linux + 219)
++
++#define SYS_ify(syscall_name)   __NR_##syscall_name
++
++/* Assume all syscalls are done from PIC code just to be
++ * safe. The worst case scenario is that you lose a register
++ * and save/restore r19 across the syscall. */
++#define PIC
++
++/* Definition taken from glibc 2.3.3
++ * sysdeps/unix/sysv/linux/hppa/sysdep.h
++ */
++
++#ifdef PIC
++/* WARNING: CANNOT BE USED IN A NOP! */
++# define K_STW_ASM_PIC        "       copy %%r19, %%r4\n"
++# define K_LDW_ASM_PIC        "       copy %%r4, %%r19\n"
++# define K_USING_GR4  "%r4",
++#else
++# define K_STW_ASM_PIC        " \n"
++# define K_LDW_ASM_PIC        " \n"
++# define K_USING_GR4
++#endif
++
++/* GCC has to be warned that a syscall may clobber all the ABI
++   registers listed as "caller-saves", see page 8, Table 2
++   in section 2.2.6 of the PA-RISC RUN-TIME architecture
++   document. However! r28 is the result and will conflict with
++   the clobber list so it is left out. Also the input arguments
++   registers r20 -> r26 will conflict with the list so they
++   are treated specially. Although r19 is clobbered by the syscall
++   we cannot say this because it would violate ABI, thus we say
++   r4 is clobbered and use that register to save/restore r19
++   across the syscall. */
++
++#define K_CALL_CLOB_REGS "%r1", "%r2", K_USING_GR4 \
++                       "%r20", "%r29", "%r31"
++
++#undef K_INLINE_SYSCALL
++#define K_INLINE_SYSCALL(name, nr, args...)   ({                      \
++      long __sys_res;                                                 \
++      {                                                               \
++              register unsigned long __res __asm__("r28");            \
++              K_LOAD_ARGS_##nr(args)                                  \
++              /* FIXME: HACK stw/ldw r19 around syscall */            \
++              __asm__ volatile(                                       \
++                      K_STW_ASM_PIC                                   \
++                      "       ble  0x100(%%sr2, %%r0)\n"              \
++                      "       ldi %1, %%r20\n"                        \
++                      K_LDW_ASM_PIC                                   \
++                      : "=r" (__res)                                  \
++                      : "i" (SYS_ify(name)) K_ASM_ARGS_##nr           \
++                      : "memory", K_CALL_CLOB_REGS K_CLOB_ARGS_##nr   \
++              );                                                      \
++              __sys_res = (long)__res;                                \
++      }                                                               \
++      __sys_res;                                                      \
++})
++
++#define K_LOAD_ARGS_0()
++#define K_LOAD_ARGS_1(r26)                                    \
++      register unsigned long __r26 __asm__("r26") = (unsigned long)(r26);   \
++      K_LOAD_ARGS_0()
++#define K_LOAD_ARGS_2(r26,r25)                                        \
++      register unsigned long __r25 __asm__("r25") = (unsigned long)(r25);   \
++      K_LOAD_ARGS_1(r26)
++#define K_LOAD_ARGS_3(r26,r25,r24)                            \
++      register unsigned long __r24 __asm__("r24") = (unsigned long)(r24);   \
++      K_LOAD_ARGS_2(r26,r25)
++#define K_LOAD_ARGS_4(r26,r25,r24,r23)                                \
++      register unsigned long __r23 __asm__("r23") = (unsigned long)(r23);   \
++      K_LOAD_ARGS_3(r26,r25,r24)
++#define K_LOAD_ARGS_5(r26,r25,r24,r23,r22)                    \
++      register unsigned long __r22 __asm__("r22") = (unsigned long)(r22);   \
++      K_LOAD_ARGS_4(r26,r25,r24,r23)
++#define K_LOAD_ARGS_6(r26,r25,r24,r23,r22,r21)                        \
++      register unsigned long __r21 __asm__("r21") = (unsigned long)(r21);   \
++      K_LOAD_ARGS_5(r26,r25,r24,r23,r22)
++
++/* Even with zero args we use r20 for the syscall number */
++#define K_ASM_ARGS_0
++#define K_ASM_ARGS_1 K_ASM_ARGS_0, "r" (__r26)
++#define K_ASM_ARGS_2 K_ASM_ARGS_1, "r" (__r25)
++#define K_ASM_ARGS_3 K_ASM_ARGS_2, "r" (__r24)
++#define K_ASM_ARGS_4 K_ASM_ARGS_3, "r" (__r23)
++#define K_ASM_ARGS_5 K_ASM_ARGS_4, "r" (__r22)
++#define K_ASM_ARGS_6 K_ASM_ARGS_5, "r" (__r21)
++
++/* The registers not listed as inputs but clobbered */
++#define K_CLOB_ARGS_6
++#define K_CLOB_ARGS_5 K_CLOB_ARGS_6, "%r21"
++#define K_CLOB_ARGS_4 K_CLOB_ARGS_5, "%r22"
++#define K_CLOB_ARGS_3 K_CLOB_ARGS_4, "%r23"
++#define K_CLOB_ARGS_2 K_CLOB_ARGS_3, "%r24"
++#define K_CLOB_ARGS_1 K_CLOB_ARGS_2, "%r25"
++#define K_CLOB_ARGS_0 K_CLOB_ARGS_1, "%r26"
++
++#define io_syscall1(type,fname,sname,type1,arg1)                      \
++type fname(type1 arg1)                                                        \
++{                                                                     \
++    return K_INLINE_SYSCALL(sname, 1, arg1);                          \
++}
++
++#define io_syscall2(type,fname,sname,type1,arg1,type2,arg2)           \
++type fname(type1 arg1, type2 arg2)                                    \
++{                                                                     \
++    return K_INLINE_SYSCALL(sname, 2, arg1, arg2);                    \
++}
++
++#define io_syscall3(type,fname,sname,type1,arg1,type2,arg2,type3,arg3)        \
++type fname(type1 arg1, type2 arg2, type3 arg3)                                \
++{                                                                     \
++    return K_INLINE_SYSCALL(sname, 3, arg1, arg2, arg3);              \
++}
++
++#define io_syscall4(type,fname,sname,type1,arg1,type2,arg2,type3,arg3,type4,arg4) \
++type fname(type1 arg1, type2 arg2, type3 arg3, type4 arg4)            \
++{                                                                     \
++    return K_INLINE_SYSCALL(sname, 4, arg1, arg2, arg3, arg4);                \
++}
++
++#define io_syscall5(type,fname,sname,type1,arg1,type2,arg2,type3,arg3,type4,arg4,type5,arg5) \
++type fname(type1 arg1, type2 arg2, type3 arg3, type4 arg4, type5 arg5)        \
++{                                                                     \
++    return K_INLINE_SYSCALL(sname, 5, arg1, arg2, arg3, arg4, arg5);  \
++}
++
+Index: libaio-0.3.109/src/syscall-sparc.h
+===================================================================
+--- /dev/null
++++ libaio-0.3.109/src/syscall-sparc.h
+@@ -0,0 +1,130 @@
++/* $Id: unistd.h,v 1.74 2002/02/08 03:57:18 davem Exp $ */
++
++/*
++ * System calls under the Sparc.
++ *
++ * Don't be scared by the ugly clobbers, it is the only way I can
++ * think of right now to force the arguments into fixed registers
++ * before the trap into the system call with gcc 'asm' statements.
++ *
++ * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
++ *
++ * SunOS compatibility based upon preliminary work which is:
++ *
++ * Copyright (C) 1995 Adrian M. Rodriguez (adrian@remus.rutgers.edu)
++ */
++
++
++#define __NR_io_setup         268
++#define __NR_io_destroy               269
++#define __NR_io_submit                270
++#define __NR_io_cancel                271
++#define __NR_io_getevents     272
++
++
++#define io_syscall1(type,fname,sname,type1,arg1) \
++type fname(type1 arg1) \
++{ \
++long __res; \
++register long __g1 __asm__ ("g1") = __NR_##sname; \
++register long __o0 __asm__ ("o0") = (long)(arg1); \
++__asm__ __volatile__ ("t 0x10\n\t" \
++                    "bcc 1f\n\t" \
++                    "mov %%o0, %0\n\t" \
++                    "sub %%g0, %%o0, %0\n\t" \
++                    "1:\n\t" \
++                    : "=r" (__res), "=&r" (__o0) \
++                    : "1" (__o0), "r" (__g1) \
++                    : "cc"); \
++if (__res < -255 || __res >= 0) \
++      return (type) __res; \
++return -1; \
++}
++
++#define io_syscall2(type,fname,sname,type1,arg1,type2,arg2) \
++type fname(type1 arg1,type2 arg2) \
++{ \
++long __res; \
++register long __g1 __asm__ ("g1") = __NR_##sname; \
++register long __o0 __asm__ ("o0") = (long)(arg1); \
++register long __o1 __asm__ ("o1") = (long)(arg2); \
++__asm__ __volatile__ ("t 0x10\n\t" \
++                    "bcc 1f\n\t" \
++                    "mov %%o0, %0\n\t" \
++                    "sub %%g0, %%o0, %0\n\t" \
++                    "1:\n\t" \
++                    : "=r" (__res), "=&r" (__o0) \
++                    : "1" (__o0), "r" (__o1), "r" (__g1) \
++                    : "cc"); \
++if (__res < -255 || __res >= 0) \
++      return (type) __res; \
++return -1; \
++}
++
++#define io_syscall3(type,fname,sname,type1,arg1,type2,arg2,type3,arg3) \
++type fname(type1 arg1,type2 arg2,type3 arg3) \
++{ \
++long __res; \
++register long __g1 __asm__ ("g1") = __NR_##sname; \
++register long __o0 __asm__ ("o0") = (long)(arg1); \
++register long __o1 __asm__ ("o1") = (long)(arg2); \
++register long __o2 __asm__ ("o2") = (long)(arg3); \
++__asm__ __volatile__ ("t 0x10\n\t" \
++                    "bcc 1f\n\t" \
++                    "mov %%o0, %0\n\t" \
++                    "sub %%g0, %%o0, %0\n\t" \
++                    "1:\n\t" \
++                    : "=r" (__res), "=&r" (__o0) \
++                    : "1" (__o0), "r" (__o1), "r" (__o2), "r" (__g1) \
++                    : "cc"); \
++if (__res < -255 || __res>=0) \
++      return (type) __res; \
++return -1; \
++}
++
++#define io_syscall4(type,fname,sname,type1,arg1,type2,arg2,type3,arg3,type4,arg4) \
++type fname(type1 arg1, type2 arg2, type3 arg3, type4 arg4) \
++{ \
++long __res; \
++register long __g1 __asm__ ("g1") = __NR_##sname; \
++register long __o0 __asm__ ("o0") = (long)(arg1); \
++register long __o1 __asm__ ("o1") = (long)(arg2); \
++register long __o2 __asm__ ("o2") = (long)(arg3); \
++register long __o3 __asm__ ("o3") = (long)(arg4); \
++__asm__ __volatile__ ("t 0x10\n\t" \
++                    "bcc 1f\n\t" \
++                    "mov %%o0, %0\n\t" \
++                    "sub %%g0, %%o0, %0\n\t" \
++                    "1:\n\t" \
++                    : "=r" (__res), "=&r" (__o0) \
++                    : "1" (__o0), "r" (__o1), "r" (__o2), "r" (__o3), "r" (__g1) \
++                    : "cc"); \
++if (__res < -255 || __res>=0) \
++      return (type) __res; \
++return -1; \
++}
++
++#define io_syscall5(type,fname,sname,type1,arg1,type2,arg2,type3,arg3,type4,arg4, \
++        type5,arg5) \
++type fname(type1 arg1,type2 arg2,type3 arg3,type4 arg4,type5 arg5) \
++{ \
++long __res; \
++register long __g1 __asm__ ("g1") = __NR_##sname; \
++register long __o0 __asm__ ("o0") = (long)(arg1); \
++register long __o1 __asm__ ("o1") = (long)(arg2); \
++register long __o2 __asm__ ("o2") = (long)(arg3); \
++register long __o3 __asm__ ("o3") = (long)(arg4); \
++register long __o4 __asm__ ("o4") = (long)(arg5); \
++__asm__ __volatile__ ("t 0x10\n\t" \
++                    "bcc 1f\n\t" \
++                    "mov %%o0, %0\n\t" \
++                    "sub %%g0, %%o0, %0\n\t" \
++                    "1:\n\t" \
++                    : "=r" (__res), "=&r" (__o0) \
++                    : "1" (__o0), "r" (__o1), "r" (__o2), "r" (__o3), "r" (__o4), "r" (__g1) \
++                    : "cc"); \
++if (__res < -255 || __res>=0) \
++      return (type) __res; \
++return -1; \
++}
++
+Index: libaio-0.3.109/src/syscall.h
+===================================================================
+--- libaio-0.3.109.orig/src/syscall.h
++++ libaio-0.3.109/src/syscall.h
+@@ -24,6 +24,14 @@
+ #include "syscall-alpha.h"
+ #elif defined(__arm__)
+ #include "syscall-arm.h"
++#elif defined(__m68k__)
++#include "syscall-m68k.h"
++#elif defined(__sparc__)
++#include "syscall-sparc.h"
++#elif defined(__hppa__)
++#include "syscall-parisc.h"
++#elif defined(__mips__)
++#include "syscall-mips.h"
+ #else
+ #error "add syscall-arch.h"
+ #endif
diff --git a/package/libaio/0002-avr32-support.patch b/package/libaio/0002-avr32-support.patch
new file mode 100644 (file)
index 0000000..57bb1f3
--- /dev/null
@@ -0,0 +1,122 @@
+Add AVR32 support to libaio
+
+Taken from OpenWRT repository.
+
+--- a/src/libaio.h
++++ b/src/libaio.h
+@@ -107,6 +107,10 @@ typedef enum io_iocb_cmd {
+ #  else
+ #    error "neither mipseb nor mipsel?"
+ #  endif
++#elif defined(__avr32__) /* big endian, 32 bits */
++#define PADDED(x, y)  unsigned y; x
++#define PADDEDptr(x, y)       unsigned y; x
++#define PADDEDul(x, y)        unsigned y; unsigned long x;
+ #else
+ #error        endian?
+ #endif
+--- /dev/null
++++ b/src/syscall-avr32.h
+@@ -0,0 +1,91 @@
++/*
++ * Copyright (C) 2007 Atmel Corporation
++ *
++ * This program is free software; you can redistribute it and/or modify
++ * it under the terms of the GNU General Public License version 2 as
++ * published by the Free Software Foundation.
++ */
++
++#define __NR_io_setup         197
++#define __NR_io_destroy               198
++#define __NR_io_getevents     199
++#define __NR_io_submit                200
++#define __NR_io_cancel                201
++
++#define io_syscall1(type,fname,sname,type1,arg1)                      \
++type fname(type1 arg1)                                                        \
++{                                                                     \
++      register long __r12 __asm__("r12") = (long)arg1;                \
++      register long __res_r12 __asm__("r12");                         \
++      register long __scno __asm__("r8") = __NR_##sname;              \
++      __asm__ __volatile__("scall"                                    \
++                           : "=r"(__res_r12)                          \
++                           : "0"(__r12), "r"(__scno)                  \
++                           : "memory");                               \
++      return (type) __res_r12;                                        \
++}
++
++#define io_syscall2(type,fname,sname,type1,arg1,type2,arg2)           \
++type fname(type1 arg1, type2 arg2)                                    \
++{                                                                     \
++      register long __r12 __asm__("r12") = (long)arg1;                \
++      register long __r11 __asm__("r11") = (long)arg2;                \
++      register long __res_r12 __asm__("r12");                         \
++      register long __scno __asm__("r8") = __NR_##sname;              \
++      __asm__ __volatile__("scall"                                    \
++                           : "=r"(__res_r12)                          \
++                           : "0"(__r12), "r"(__r11), "r"(__scno)      \
++                           : "memory");                               \
++      return (type) __res_r12;                                        \
++}
++
++#define io_syscall3(type,fname,sname,type1,arg1,type2,arg2,type3,arg3)        \
++type fname(type1 arg1, type2 arg2, type3 arg3)                                \
++{                                                                     \
++      register long __r12 __asm__("r12") = (long)arg1;                \
++      register long __r11 __asm__("r11") = (long)arg2;                \
++      register long __r10 __asm__("r10") = (long)arg3;                \
++      register long __res_r12 __asm__("r12");                         \
++      register long __scno __asm__("r8") = __NR_##sname;              \
++      __asm__ __volatile__("scall"                                    \
++                           : "=r"(__res_r12)                          \
++                           : "0"(__r12), "r"(__r11), "r"(__r10),      \
++                             "r"(__scno)                              \
++                           : "memory");                               \
++      return (type) __res_r12;                                        \
++}
++
++#define io_syscall4(type,fname,sname,type1,arg1,type2,arg2,type3,arg3,type4,arg4) \
++type fname(type1 arg1, type2 arg2, type3 arg3, type4 arg4)            \
++{                                                                     \
++      register long __r12 __asm__("r12") = (long)arg1;                \
++      register long __r11 __asm__("r11") = (long)arg2;                \
++      register long __r10 __asm__("r10") = (long)arg3;                \
++      register long __r9 __asm__("r9") = (long)arg4;                  \
++      register long __res_r12 __asm__("r12");                         \
++      register long __scno __asm__("r8") = __NR_##sname;              \
++      __asm__ __volatile__("scall"                                    \
++                           : "=r"(__res_r12)                          \
++                           : "0"(__r12), "r"(__r11), "r"(__r10),      \
++                             "r"(__r9), "r"(__scno)                   \
++                           : "memory");                               \
++      return (type) __res_r12;                                        \
++}
++
++#define io_syscall5(type,fname,sname,type1,arg1,type2,arg2,type3,arg3,type4,arg4,type5,arg5) \
++type fname(type1 arg1, type2 arg2, type3 arg3, type4 arg4, type5 arg5)        \
++{                                                                     \
++      register long __r12 __asm__("r12") = (long)arg1;                \
++      register long __r11 __asm__("r11") = (long)arg2;                \
++      register long __r10 __asm__("r10") = (long)arg3;                \
++      register long __r9 __asm__("r9") = (long)arg4;                  \
++      register long __r5 __asm__("r5") = (long)arg5;                  \
++      register long __res_r12 __asm__("r12");                         \
++      register long __scno __asm__("r8") = __NR_##sname;              \
++      __asm__ __volatile__("scall"                                    \
++                           : "=r"(__res_r12)                          \
++                           : "0"(__r12), "r"(__r11), "r"(__r10),      \
++                             "r"(__r9), "r"(__r5), "r"(__scno)        \
++                           : "memory");                               \
++      return (type) __res_r12;                                        \
++}
+--- a/src/syscall.h
++++ b/src/syscall.h
+@@ -32,6 +32,8 @@
+ #include "syscall-parisc.h"
+ #elif defined(__mips__)
+ #include "syscall-mips.h"
++#elif defined(__avr32__)
++#include "syscall-avr32.h"
+ #else
+ #error "add syscall-arch.h"
+ #endif
diff --git a/package/libaio/0003-destdir.patch b/package/libaio/0003-destdir.patch
new file mode 100644 (file)
index 0000000..583a2af
--- /dev/null
@@ -0,0 +1,24 @@
+Patch borrowed from OpenEmbedded, available at
+recipes/libaio/libaio-0.3.106/destdir.patch in their source tree.
+
+It just adds support for the traditional DESTDIR variable to install
+the library in a different sysroot than the normal /.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ Makefile |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: libaio-0.3.109/Makefile
+===================================================================
+--- libaio-0.3.109.orig/Makefile
++++ libaio-0.3.109/Makefile
+@@ -23,7 +23,7 @@
+       @$(MAKE) -C src
+ install:
+-      @$(MAKE) -C src install prefix=$(prefix) includedir=$(includedir) libdir=$(libdir)
++      @$(MAKE) -C src install prefix=$(DESTDIR)$(prefix) includedir=$(DESTDIR)$(includedir) libdir=$(DESTDIR)$(libdir)
+ check:
+       @$(MAKE) -C harness check
diff --git a/package/libaio/libaio-0.3.109-arches.patch b/package/libaio/libaio-0.3.109-arches.patch
deleted file mode 100644 (file)
index c85568c..0000000
+++ /dev/null
@@ -1,671 +0,0 @@
-Patch borrowed from OpenEmbedded, available at
-recipes/libaio/libaio-0.3.106/00_arches.patch in their source
-tree. The patch has been adapted to remove the ARM-related
-definitions, since they have been merged in later versions of libaio.
-
-The patch adds various architecture specific definitions (syscall
-number and macros) for m68k, MIPS, PA/RISC and Sparc. Amongst these,
-Buildroot mostly only cares about MIPS, but it was just easier to take
-the whole OpenEmbedded patch.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
----
- src/libaio.h         |   24 +++++
- src/syscall-m68k.h   |   78 +++++++++++++++++
- src/syscall-mips.h   |  223 +++++++++++++++++++++++++++++++++++++++++++++++++++
- src/syscall-parisc.h |  146 +++++++++++++++++++++++++++++++++
- src/syscall-sparc.h  |  130 +++++++++++++++++++++++++++++
- src/syscall.h        |    8 +
- 7 files changed, 725 insertions(+)
-
-Index: libaio-0.3.109/src/libaio.h
-===================================================================
---- libaio-0.3.109.orig/src/libaio.h
-+++ libaio-0.3.109/src/libaio.h
-@@ -83,6 +83,30 @@
- #define PADDEDptr(x, y)       x; unsigned y
- #define PADDEDul(x, y)        unsigned long x; unsigned y
- #  endif
-+#elif defined(__m68k__) /* big endian, 32 bits */
-+#define PADDED(x, y)  unsigned y; x
-+#define PADDEDptr(x, y)       unsigned y; x
-+#define PADDEDul(x, y)        unsigned y; unsigned long x
-+#elif defined(__sparc__) /* big endian, 32 bits */
-+#define PADDED(x, y)  unsigned y; x
-+#define PADDEDptr(x, y)       unsigned y; x
-+#define PADDEDul(x, y)        unsigned y; unsigned long x
-+#elif defined(__hppa__) /* big endian, 32 bits */
-+#define PADDED(x, y)  unsigned y; x
-+#define PADDEDptr(x, y)       unsigned y; x
-+#define PADDEDul(x, y)        unsigned y; unsigned long x
-+#elif defined(__mips__)
-+#  if defined (__MIPSEB__) /* big endian, 32 bits */
-+#define PADDED(x, y)  unsigned y; x
-+#define PADDEDptr(x, y)       unsigned y; x
-+#define PADDEDul(x, y)        unsigned y; unsigned long x
-+#  elif defined(__MIPSEL__) /* little endian, 32 bits */
-+#define PADDED(x, y)  x; unsigned y
-+#define PADDEDptr(x, y)       x; unsigned y
-+#define PADDEDul(x, y)        unsigned long x; unsigned y
-+#  else
-+#    error "neither mipseb nor mipsel?"
-+#  endif
- #else
- #error        endian?
- #endif
-Index: libaio-0.3.109/src/syscall-m68k.h
-===================================================================
---- /dev/null
-+++ libaio-0.3.109/src/syscall-m68k.h
-@@ -0,0 +1,78 @@
-+#define __NR_io_setup         241
-+#define __NR_io_destroy               242
-+#define __NR_io_getevents     243
-+#define __NR_io_submit                244
-+#define __NR_io_cancel                245
-+
-+#define io_syscall1(type,fname,sname,atype,a) \
-+type fname(atype a) \
-+{ \
-+register long __res __asm__ ("%d0") = __NR_##sname; \
-+register long __a __asm__ ("%d1") = (long)(a); \
-+__asm__ __volatile__ ("trap  #0" \
-+                    : "+d" (__res) \
-+                    : "d" (__a)  ); \
-+return (type) __res; \
-+}
-+
-+#define io_syscall2(type,fname,sname,atype,a,btype,b) \
-+type fname(atype a,btype b) \
-+{ \
-+register long __res __asm__ ("%d0") = __NR_##sname; \
-+register long __a __asm__ ("%d1") = (long)(a); \
-+register long __b __asm__ ("%d2") = (long)(b); \
-+__asm__ __volatile__ ("trap  #0" \
-+                    : "+d" (__res) \
-+                    : "d" (__a), "d" (__b) \
-+                   ); \
-+return (type) __res; \
-+}
-+
-+#define io_syscall3(type,fname,sname,atype,a,btype,b,ctype,c) \
-+type fname(atype a,btype b,ctype c) \
-+{ \
-+register long __res __asm__ ("%d0") = __NR_##sname; \
-+register long __a __asm__ ("%d1") = (long)(a); \
-+register long __b __asm__ ("%d2") = (long)(b); \
-+register long __c __asm__ ("%d3") = (long)(c); \
-+__asm__ __volatile__ ("trap  #0" \
-+                    : "+d" (__res) \
-+                    : "d" (__a), "d" (__b), \
-+                      "d" (__c) \
-+                   ); \
-+return (type) __res; \
-+}
-+
-+#define io_syscall4(type,fname,sname,atype,a,btype,b,ctype,c,dtype,d) \
-+type fname (atype a, btype b, ctype c, dtype d) \
-+{ \
-+register long __res __asm__ ("%d0") = __NR_##sname; \
-+register long __a __asm__ ("%d1") = (long)(a); \
-+register long __b __asm__ ("%d2") = (long)(b); \
-+register long __c __asm__ ("%d3") = (long)(c); \
-+register long __d __asm__ ("%d4") = (long)(d); \
-+__asm__ __volatile__ ("trap  #0" \
-+                    : "+d" (__res) \
-+                    : "d" (__a), "d" (__b), \
-+                      "d" (__c), "d" (__d)  \
-+                   ); \
-+return (type) __res; \
-+}
-+
-+#define io_syscall5(type,fname,sname,atype,a,btype,b,ctype,c,dtype,d,etype,e) \
-+type fname (atype a,btype b,ctype c,dtype d,etype e) \
-+{ \
-+register long __res __asm__ ("%d0") = __NR_##sname; \
-+register long __a __asm__ ("%d1") = (long)(a); \
-+register long __b __asm__ ("%d2") = (long)(b); \
-+register long __c __asm__ ("%d3") = (long)(c); \
-+register long __d __asm__ ("%d4") = (long)(d); \
-+register long __e __asm__ ("%d5") = (long)(e); \
-+__asm__ __volatile__ ("trap  #0" \
-+                    : "+d" (__res) \
-+                    : "d" (__a), "d" (__b), \
-+                      "d" (__c), "d" (__d), "d" (__e)  \
-+                   ); \
-+return (type) __res; \
-+}
-+
-Index: libaio-0.3.109/src/syscall-mips.h
-===================================================================
---- /dev/null
-+++ libaio-0.3.109/src/syscall-mips.h
-@@ -0,0 +1,223 @@
-+/*
-+ * This file is subject to the terms and conditions of the GNU General Public
-+ * License.  See the file "COPYING" in the main directory of this archive
-+ * for more details.
-+ *
-+ * Copyright (C) 1995, 96, 97, 98, 99, 2000 by Ralf Baechle
-+ * Copyright (C) 1999, 2000 Silicon Graphics, Inc.
-+ *
-+ * Changed system calls macros _syscall5 - _syscall7 to push args 5 to 7 onto
-+ * the stack. Robin Farine for ACN S.A, Copyright (C) 1996 by ACN S.A
-+ */
-+
-+#ifndef _MIPS_SIM_ABI32
-+#define _MIPS_SIM_ABI32                       1
-+#define _MIPS_SIM_NABI32              2
-+#define _MIPS_SIM_ABI64                       3
-+#endif
-+
-+#if _MIPS_SIM == _MIPS_SIM_ABI32
-+
-+/*
-+ * Linux o32 style syscalls are in the range from 4000 to 4999.
-+ */
-+#define __NR_Linux                    4000
-+#define __NR_io_setup                 (__NR_Linux + 241)
-+#define __NR_io_destroy                       (__NR_Linux + 242)
-+#define __NR_io_getevents             (__NR_Linux + 243)
-+#define __NR_io_submit                        (__NR_Linux + 244)
-+#define __NR_io_cancel                        (__NR_Linux + 245)
-+
-+#endif /* _MIPS_SIM == _MIPS_SIM_ABI32 */
-+
-+#if _MIPS_SIM == _MIPS_SIM_ABI64
-+
-+/*
-+ * Linux 64-bit syscalls are in the range from 5000 to 5999.
-+ */
-+#define __NR_Linux                    5000
-+#define __NR_io_setup                 (__NR_Linux + 200)
-+#define __NR_io_destroy                       (__NR_Linux + 201)
-+#define __NR_io_getevents             (__NR_Linux + 202)
-+#define __NR_io_submit                        (__NR_Linux + 203)
-+#define __NR_io_cancel                        (__NR_Linux + 204)
-+#endif /* _MIPS_SIM == _MIPS_SIM_ABI64 */
-+
-+#if _MIPS_SIM == _MIPS_SIM_NABI32
-+
-+/*
-+ * Linux N32 syscalls are in the range from 6000 to 6999.
-+ */
-+#define __NR_Linux                    6000
-+#define __NR_io_setup                 (__NR_Linux + 200)
-+#define __NR_io_destroy                       (__NR_Linux + 201)
-+#define __NR_io_getevents             (__NR_Linux + 202)
-+#define __NR_io_submit                        (__NR_Linux + 203)
-+#define __NR_io_cancel                        (__NR_Linux + 204)
-+#endif /* _MIPS_SIM == _MIPS_SIM_NABI32 */
-+
-+#define io_syscall1(type,fname,sname,atype,a) \
-+type fname(atype a) \
-+{ \
-+      register unsigned long __a0 asm("$4") = (unsigned long) a; \
-+      register unsigned long __a3 asm("$7"); \
-+      unsigned long __v0; \
-+      \
-+      __asm__ volatile ( \
-+      ".set\tnoreorder\n\t" \
-+      "li\t$2, %3\t\t\t# " #fname "\n\t" \
-+      "syscall\n\t" \
-+      "move\t%0, $2\n\t" \
-+      ".set\treorder" \
-+      : "=&r" (__v0), "=r" (__a3) \
-+      : "r" (__a0), "i" (__NR_##sname) \
-+      : "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", \
-+        "memory"); \
-+      \
-+      if (__a3 == 0) \
-+              return (type) __v0; \
-+      return (type) -1; \
-+}
-+
-+#define io_syscall2(type,fname,sname,atype,a,btype,b) \
-+type fname(atype a, btype b) \
-+{ \
-+      register unsigned long __a0 asm("$4") = (unsigned long) a; \
-+      register unsigned long __a1 asm("$5") = (unsigned long) b; \
-+      register unsigned long __a3 asm("$7"); \
-+      unsigned long __v0; \
-+      \
-+      __asm__ volatile ( \
-+      ".set\tnoreorder\n\t" \
-+      "li\t$2, %4\t\t\t# " #fname "\n\t" \
-+      "syscall\n\t" \
-+      "move\t%0, $2\n\t" \
-+      ".set\treorder" \
-+      : "=&r" (__v0), "=r" (__a3) \
-+      : "r" (__a0), "r" (__a1), "i" (__NR_##sname) \
-+      : "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", \
-+        "memory"); \
-+      \
-+      if (__a3 == 0) \
-+              return (type) __v0; \
-+      return (type) -1; \
-+}
-+
-+#define io_syscall3(type,fname,sname,atype,a,btype,b,ctype,c) \
-+type fname(atype a, btype b, ctype c) \
-+{ \
-+      register unsigned long __a0 asm("$4") = (unsigned long) a; \
-+      register unsigned long __a1 asm("$5") = (unsigned long) b; \
-+      register unsigned long __a2 asm("$6") = (unsigned long) c; \
-+      register unsigned long __a3 asm("$7"); \
-+      unsigned long __v0; \
-+      \
-+      __asm__ volatile ( \
-+      ".set\tnoreorder\n\t" \
-+      "li\t$2, %5\t\t\t# " #fname "\n\t" \
-+      "syscall\n\t" \
-+      "move\t%0, $2\n\t" \
-+      ".set\treorder" \
-+      : "=&r" (__v0), "=r" (__a3) \
-+      : "r" (__a0), "r" (__a1), "r" (__a2), "i" (__NR_##sname) \
-+      : "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", \
-+        "memory"); \
-+      \
-+      if (__a3 == 0) \
-+              return (type) __v0; \
-+      return (type) -1; \
-+}
-+
-+#define io_syscall4(type,fname,sname,atype,a,btype,b,ctype,c,dtype,d) \
-+type fname(atype a, btype b, ctype c, dtype d) \
-+{ \
-+      register unsigned long __a0 asm("$4") = (unsigned long) a; \
-+      register unsigned long __a1 asm("$5") = (unsigned long) b; \
-+      register unsigned long __a2 asm("$6") = (unsigned long) c; \
-+      register unsigned long __a3 asm("$7") = (unsigned long) d; \
-+      unsigned long __v0; \
-+      \
-+      __asm__ volatile ( \
-+      ".set\tnoreorder\n\t" \
-+      "li\t$2, %5\t\t\t# " #fname "\n\t" \
-+      "syscall\n\t" \
-+      "move\t%0, $2\n\t" \
-+      ".set\treorder" \
-+      : "=&r" (__v0), "+r" (__a3) \
-+      : "r" (__a0), "r" (__a1), "r" (__a2), "i" (__NR_##sname) \
-+      : "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", \
-+        "memory"); \
-+      \
-+      if (__a3 == 0) \
-+              return (type) __v0; \
-+      return (type) -1; \
-+}
-+
-+#if (_MIPS_SIM == _MIPS_SIM_ABI32)
-+
-+/*
-+ * Using those means your brain needs more than an oil change ;-)
-+ */
-+
-+#define io_syscall5(type,fname,sname,atype,a,btype,b,ctype,c,dtype,d,etype,e) \
-+type fname(atype a, btype b, ctype c, dtype d, etype e) \
-+{ \
-+      register unsigned long __a0 asm("$4") = (unsigned long) a; \
-+      register unsigned long __a1 asm("$5") = (unsigned long) b; \
-+      register unsigned long __a2 asm("$6") = (unsigned long) c; \
-+      register unsigned long __a3 asm("$7") = (unsigned long) d; \
-+      unsigned long __v0; \
-+      \
-+      __asm__ volatile ( \
-+      ".set\tnoreorder\n\t" \
-+      "lw\t$2, %6\n\t" \
-+      "subu\t$29, 32\n\t" \
-+      "sw\t$2, 16($29)\n\t" \
-+      "li\t$2, %5\t\t\t# " #fname "\n\t" \
-+      "syscall\n\t" \
-+      "move\t%0, $2\n\t" \
-+      "addiu\t$29, 32\n\t" \
-+      ".set\treorder" \
-+      : "=&r" (__v0), "+r" (__a3) \
-+      : "r" (__a0), "r" (__a1), "r" (__a2), "i" (__NR_##sname), \
-+        "m" ((unsigned long)e) \
-+      : "$2", "$8", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", \
-+        "memory"); \
-+      \
-+      if (__a3 == 0) \
-+              return (type) __v0; \
-+      return (type) -1; \
-+}
-+
-+#endif /* (_MIPS_SIM == _MIPS_SIM_ABI32) */
-+
-+#if (_MIPS_SIM == _MIPS_SIM_NABI32) || (_MIPS_SIM == _MIPS_SIM_ABI64)
-+
-+#define io_syscall5(type,fname,sname,atype,a,btype,b,ctype,c,dtype,d,etype,e) \
-+type fname (atype a,btype b,ctype c,dtype d,etype e) \
-+{ \
-+      register unsigned long __a0 asm("$4") = (unsigned long) a; \
-+      register unsigned long __a1 asm("$5") = (unsigned long) b; \
-+      register unsigned long __a2 asm("$6") = (unsigned long) c; \
-+      register unsigned long __a3 asm("$7") = (unsigned long) d; \
-+      register unsigned long __a4 asm("$8") = (unsigned long) e; \
-+      unsigned long __v0; \
-+      \
-+      __asm__ volatile ( \
-+      ".set\tnoreorder\n\t" \
-+      "li\t$2, %6\t\t\t# " #fname "\n\t" \
-+      "syscall\n\t" \
-+      "move\t%0, $2\n\t" \
-+      ".set\treorder" \
-+      : "=&r" (__v0), "+r" (__a3) \
-+      : "r" (__a0), "r" (__a1), "r" (__a2), "r" (__a4), "i" (__NR_##sname) \
-+      : "$2", "$9", "$10", "$11", "$12", "$13", "$14", "$15", "$24", \
-+        "memory"); \
-+      \
-+      if (__a3 == 0) \
-+              return (type) __v0; \
-+      return (type) -1; \
-+}
-+
-+#endif /* (_MIPS_SIM == _MIPS_SIM_NABI32) || (_MIPS_SIM == _MIPS_SIM_ABI64) */
-+
-Index: libaio-0.3.109/src/syscall-parisc.h
-===================================================================
---- /dev/null
-+++ libaio-0.3.109/src/syscall-parisc.h
-@@ -0,0 +1,146 @@
-+/*
-+ * Linux system call numbers.
-+ *
-+ * Cary Coutant says that we should just use another syscall gateway
-+ * page to avoid clashing with the HPUX space, and I think he's right:
-+ * it will would keep a branch out of our syscall entry path, at the
-+ * very least.  If we decide to change it later, we can ``just'' tweak
-+ * the LINUX_GATEWAY_ADDR define at the bottom and make __NR_Linux be
-+ * 1024 or something.  Oh, and recompile libc. =)
-+ *
-+ * 64-bit HPUX binaries get the syscall gateway address passed in a register
-+ * from the kernel at startup, which seems a sane strategy.
-+ */
-+
-+#define __NR_Linux                0
-+#define __NR_io_setup           (__NR_Linux + 215)
-+#define __NR_io_destroy         (__NR_Linux + 216)
-+#define __NR_io_getevents       (__NR_Linux + 217)
-+#define __NR_io_submit          (__NR_Linux + 218)
-+#define __NR_io_cancel          (__NR_Linux + 219)
-+
-+#define SYS_ify(syscall_name)   __NR_##syscall_name
-+
-+/* Assume all syscalls are done from PIC code just to be
-+ * safe. The worst case scenario is that you lose a register
-+ * and save/restore r19 across the syscall. */
-+#define PIC
-+
-+/* Definition taken from glibc 2.3.3
-+ * sysdeps/unix/sysv/linux/hppa/sysdep.h
-+ */
-+
-+#ifdef PIC
-+/* WARNING: CANNOT BE USED IN A NOP! */
-+# define K_STW_ASM_PIC        "       copy %%r19, %%r4\n"
-+# define K_LDW_ASM_PIC        "       copy %%r4, %%r19\n"
-+# define K_USING_GR4  "%r4",
-+#else
-+# define K_STW_ASM_PIC        " \n"
-+# define K_LDW_ASM_PIC        " \n"
-+# define K_USING_GR4
-+#endif
-+
-+/* GCC has to be warned that a syscall may clobber all the ABI
-+   registers listed as "caller-saves", see page 8, Table 2
-+   in section 2.2.6 of the PA-RISC RUN-TIME architecture
-+   document. However! r28 is the result and will conflict with
-+   the clobber list so it is left out. Also the input arguments
-+   registers r20 -> r26 will conflict with the list so they
-+   are treated specially. Although r19 is clobbered by the syscall
-+   we cannot say this because it would violate ABI, thus we say
-+   r4 is clobbered and use that register to save/restore r19
-+   across the syscall. */
-+
-+#define K_CALL_CLOB_REGS "%r1", "%r2", K_USING_GR4 \
-+                       "%r20", "%r29", "%r31"
-+
-+#undef K_INLINE_SYSCALL
-+#define K_INLINE_SYSCALL(name, nr, args...)   ({                      \
-+      long __sys_res;                                                 \
-+      {                                                               \
-+              register unsigned long __res __asm__("r28");            \
-+              K_LOAD_ARGS_##nr(args)                                  \
-+              /* FIXME: HACK stw/ldw r19 around syscall */            \
-+              __asm__ volatile(                                       \
-+                      K_STW_ASM_PIC                                   \
-+                      "       ble  0x100(%%sr2, %%r0)\n"              \
-+                      "       ldi %1, %%r20\n"                        \
-+                      K_LDW_ASM_PIC                                   \
-+                      : "=r" (__res)                                  \
-+                      : "i" (SYS_ify(name)) K_ASM_ARGS_##nr           \
-+                      : "memory", K_CALL_CLOB_REGS K_CLOB_ARGS_##nr   \
-+              );                                                      \
-+              __sys_res = (long)__res;                                \
-+      }                                                               \
-+      __sys_res;                                                      \
-+})
-+
-+#define K_LOAD_ARGS_0()
-+#define K_LOAD_ARGS_1(r26)                                    \
-+      register unsigned long __r26 __asm__("r26") = (unsigned long)(r26);   \
-+      K_LOAD_ARGS_0()
-+#define K_LOAD_ARGS_2(r26,r25)                                        \
-+      register unsigned long __r25 __asm__("r25") = (unsigned long)(r25);   \
-+      K_LOAD_ARGS_1(r26)
-+#define K_LOAD_ARGS_3(r26,r25,r24)                            \
-+      register unsigned long __r24 __asm__("r24") = (unsigned long)(r24);   \
-+      K_LOAD_ARGS_2(r26,r25)
-+#define K_LOAD_ARGS_4(r26,r25,r24,r23)                                \
-+      register unsigned long __r23 __asm__("r23") = (unsigned long)(r23);   \
-+      K_LOAD_ARGS_3(r26,r25,r24)
-+#define K_LOAD_ARGS_5(r26,r25,r24,r23,r22)                    \
-+      register unsigned long __r22 __asm__("r22") = (unsigned long)(r22);   \
-+      K_LOAD_ARGS_4(r26,r25,r24,r23)
-+#define K_LOAD_ARGS_6(r26,r25,r24,r23,r22,r21)                        \
-+      register unsigned long __r21 __asm__("r21") = (unsigned long)(r21);   \
-+      K_LOAD_ARGS_5(r26,r25,r24,r23,r22)
-+
-+/* Even with zero args we use r20 for the syscall number */
-+#define K_ASM_ARGS_0
-+#define K_ASM_ARGS_1 K_ASM_ARGS_0, "r" (__r26)
-+#define K_ASM_ARGS_2 K_ASM_ARGS_1, "r" (__r25)
-+#define K_ASM_ARGS_3 K_ASM_ARGS_2, "r" (__r24)
-+#define K_ASM_ARGS_4 K_ASM_ARGS_3, "r" (__r23)
-+#define K_ASM_ARGS_5 K_ASM_ARGS_4, "r" (__r22)
-+#define K_ASM_ARGS_6 K_ASM_ARGS_5, "r" (__r21)
-+
-+/* The registers not listed as inputs but clobbered */
-+#define K_CLOB_ARGS_6
-+#define K_CLOB_ARGS_5 K_CLOB_ARGS_6, "%r21"
-+#define K_CLOB_ARGS_4 K_CLOB_ARGS_5, "%r22"
-+#define K_CLOB_ARGS_3 K_CLOB_ARGS_4, "%r23"
-+#define K_CLOB_ARGS_2 K_CLOB_ARGS_3, "%r24"
-+#define K_CLOB_ARGS_1 K_CLOB_ARGS_2, "%r25"
-+#define K_CLOB_ARGS_0 K_CLOB_ARGS_1, "%r26"
-+
-+#define io_syscall1(type,fname,sname,type1,arg1)                      \
-+type fname(type1 arg1)                                                        \
-+{                                                                     \
-+    return K_INLINE_SYSCALL(sname, 1, arg1);                          \
-+}
-+
-+#define io_syscall2(type,fname,sname,type1,arg1,type2,arg2)           \
-+type fname(type1 arg1, type2 arg2)                                    \
-+{                                                                     \
-+    return K_INLINE_SYSCALL(sname, 2, arg1, arg2);                    \
-+}
-+
-+#define io_syscall3(type,fname,sname,type1,arg1,type2,arg2,type3,arg3)        \
-+type fname(type1 arg1, type2 arg2, type3 arg3)                                \
-+{                                                                     \
-+    return K_INLINE_SYSCALL(sname, 3, arg1, arg2, arg3);              \
-+}
-+
-+#define io_syscall4(type,fname,sname,type1,arg1,type2,arg2,type3,arg3,type4,arg4) \
-+type fname(type1 arg1, type2 arg2, type3 arg3, type4 arg4)            \
-+{                                                                     \
-+    return K_INLINE_SYSCALL(sname, 4, arg1, arg2, arg3, arg4);                \
-+}
-+
-+#define io_syscall5(type,fname,sname,type1,arg1,type2,arg2,type3,arg3,type4,arg4,type5,arg5) \
-+type fname(type1 arg1, type2 arg2, type3 arg3, type4 arg4, type5 arg5)        \
-+{                                                                     \
-+    return K_INLINE_SYSCALL(sname, 5, arg1, arg2, arg3, arg4, arg5);  \
-+}
-+
-Index: libaio-0.3.109/src/syscall-sparc.h
-===================================================================
---- /dev/null
-+++ libaio-0.3.109/src/syscall-sparc.h
-@@ -0,0 +1,130 @@
-+/* $Id: unistd.h,v 1.74 2002/02/08 03:57:18 davem Exp $ */
-+
-+/*
-+ * System calls under the Sparc.
-+ *
-+ * Don't be scared by the ugly clobbers, it is the only way I can
-+ * think of right now to force the arguments into fixed registers
-+ * before the trap into the system call with gcc 'asm' statements.
-+ *
-+ * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
-+ *
-+ * SunOS compatibility based upon preliminary work which is:
-+ *
-+ * Copyright (C) 1995 Adrian M. Rodriguez (adrian@remus.rutgers.edu)
-+ */
-+
-+
-+#define __NR_io_setup         268
-+#define __NR_io_destroy               269
-+#define __NR_io_submit                270
-+#define __NR_io_cancel                271
-+#define __NR_io_getevents     272
-+
-+
-+#define io_syscall1(type,fname,sname,type1,arg1) \
-+type fname(type1 arg1) \
-+{ \
-+long __res; \
-+register long __g1 __asm__ ("g1") = __NR_##sname; \
-+register long __o0 __asm__ ("o0") = (long)(arg1); \
-+__asm__ __volatile__ ("t 0x10\n\t" \
-+                    "bcc 1f\n\t" \
-+                    "mov %%o0, %0\n\t" \
-+                    "sub %%g0, %%o0, %0\n\t" \
-+                    "1:\n\t" \
-+                    : "=r" (__res), "=&r" (__o0) \
-+                    : "1" (__o0), "r" (__g1) \
-+                    : "cc"); \
-+if (__res < -255 || __res >= 0) \
-+      return (type) __res; \
-+return -1; \
-+}
-+
-+#define io_syscall2(type,fname,sname,type1,arg1,type2,arg2) \
-+type fname(type1 arg1,type2 arg2) \
-+{ \
-+long __res; \
-+register long __g1 __asm__ ("g1") = __NR_##sname; \
-+register long __o0 __asm__ ("o0") = (long)(arg1); \
-+register long __o1 __asm__ ("o1") = (long)(arg2); \
-+__asm__ __volatile__ ("t 0x10\n\t" \
-+                    "bcc 1f\n\t" \
-+                    "mov %%o0, %0\n\t" \
-+                    "sub %%g0, %%o0, %0\n\t" \
-+                    "1:\n\t" \
-+                    : "=r" (__res), "=&r" (__o0) \
-+                    : "1" (__o0), "r" (__o1), "r" (__g1) \
-+                    : "cc"); \
-+if (__res < -255 || __res >= 0) \
-+      return (type) __res; \
-+return -1; \
-+}
-+
-+#define io_syscall3(type,fname,sname,type1,arg1,type2,arg2,type3,arg3) \
-+type fname(type1 arg1,type2 arg2,type3 arg3) \
-+{ \
-+long __res; \
-+register long __g1 __asm__ ("g1") = __NR_##sname; \
-+register long __o0 __asm__ ("o0") = (long)(arg1); \
-+register long __o1 __asm__ ("o1") = (long)(arg2); \
-+register long __o2 __asm__ ("o2") = (long)(arg3); \
-+__asm__ __volatile__ ("t 0x10\n\t" \
-+                    "bcc 1f\n\t" \
-+                    "mov %%o0, %0\n\t" \
-+                    "sub %%g0, %%o0, %0\n\t" \
-+                    "1:\n\t" \
-+                    : "=r" (__res), "=&r" (__o0) \
-+                    : "1" (__o0), "r" (__o1), "r" (__o2), "r" (__g1) \
-+                    : "cc"); \
-+if (__res < -255 || __res>=0) \
-+      return (type) __res; \
-+return -1; \
-+}
-+
-+#define io_syscall4(type,fname,sname,type1,arg1,type2,arg2,type3,arg3,type4,arg4) \
-+type fname(type1 arg1, type2 arg2, type3 arg3, type4 arg4) \
-+{ \
-+long __res; \
-+register long __g1 __asm__ ("g1") = __NR_##sname; \
-+register long __o0 __asm__ ("o0") = (long)(arg1); \
-+register long __o1 __asm__ ("o1") = (long)(arg2); \
-+register long __o2 __asm__ ("o2") = (long)(arg3); \
-+register long __o3 __asm__ ("o3") = (long)(arg4); \
-+__asm__ __volatile__ ("t 0x10\n\t" \
-+                    "bcc 1f\n\t" \
-+                    "mov %%o0, %0\n\t" \
-+                    "sub %%g0, %%o0, %0\n\t" \
-+                    "1:\n\t" \
-+                    : "=r" (__res), "=&r" (__o0) \
-+                    : "1" (__o0), "r" (__o1), "r" (__o2), "r" (__o3), "r" (__g1) \
-+                    : "cc"); \
-+if (__res < -255 || __res>=0) \
-+      return (type) __res; \
-+return -1; \
-+}
-+
-+#define io_syscall5(type,fname,sname,type1,arg1,type2,arg2,type3,arg3,type4,arg4, \
-+        type5,arg5) \
-+type fname(type1 arg1,type2 arg2,type3 arg3,type4 arg4,type5 arg5) \
-+{ \
-+long __res; \
-+register long __g1 __asm__ ("g1") = __NR_##sname; \
-+register long __o0 __asm__ ("o0") = (long)(arg1); \
-+register long __o1 __asm__ ("o1") = (long)(arg2); \
-+register long __o2 __asm__ ("o2") = (long)(arg3); \
-+register long __o3 __asm__ ("o3") = (long)(arg4); \
-+register long __o4 __asm__ ("o4") = (long)(arg5); \
-+__asm__ __volatile__ ("t 0x10\n\t" \
-+                    "bcc 1f\n\t" \
-+                    "mov %%o0, %0\n\t" \
-+                    "sub %%g0, %%o0, %0\n\t" \
-+                    "1:\n\t" \
-+                    : "=r" (__res), "=&r" (__o0) \
-+                    : "1" (__o0), "r" (__o1), "r" (__o2), "r" (__o3), "r" (__o4), "r" (__g1) \
-+                    : "cc"); \
-+if (__res < -255 || __res>=0) \
-+      return (type) __res; \
-+return -1; \
-+}
-+
-Index: libaio-0.3.109/src/syscall.h
-===================================================================
---- libaio-0.3.109.orig/src/syscall.h
-+++ libaio-0.3.109/src/syscall.h
-@@ -24,6 +24,14 @@
- #include "syscall-alpha.h"
- #elif defined(__arm__)
- #include "syscall-arm.h"
-+#elif defined(__m68k__)
-+#include "syscall-m68k.h"
-+#elif defined(__sparc__)
-+#include "syscall-sparc.h"
-+#elif defined(__hppa__)
-+#include "syscall-parisc.h"
-+#elif defined(__mips__)
-+#include "syscall-mips.h"
- #else
- #error "add syscall-arch.h"
- #endif
diff --git a/package/libaio/libaio-0.3.109-avr32-support.patch b/package/libaio/libaio-0.3.109-avr32-support.patch
deleted file mode 100644 (file)
index 57bb1f3..0000000
+++ /dev/null
@@ -1,122 +0,0 @@
-Add AVR32 support to libaio
-
-Taken from OpenWRT repository.
-
---- a/src/libaio.h
-+++ b/src/libaio.h
-@@ -107,6 +107,10 @@ typedef enum io_iocb_cmd {
- #  else
- #    error "neither mipseb nor mipsel?"
- #  endif
-+#elif defined(__avr32__) /* big endian, 32 bits */
-+#define PADDED(x, y)  unsigned y; x
-+#define PADDEDptr(x, y)       unsigned y; x
-+#define PADDEDul(x, y)        unsigned y; unsigned long x;
- #else
- #error        endian?
- #endif
---- /dev/null
-+++ b/src/syscall-avr32.h
-@@ -0,0 +1,91 @@
-+/*
-+ * Copyright (C) 2007 Atmel Corporation
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License version 2 as
-+ * published by the Free Software Foundation.
-+ */
-+
-+#define __NR_io_setup         197
-+#define __NR_io_destroy               198
-+#define __NR_io_getevents     199
-+#define __NR_io_submit                200
-+#define __NR_io_cancel                201
-+
-+#define io_syscall1(type,fname,sname,type1,arg1)                      \
-+type fname(type1 arg1)                                                        \
-+{                                                                     \
-+      register long __r12 __asm__("r12") = (long)arg1;                \
-+      register long __res_r12 __asm__("r12");                         \
-+      register long __scno __asm__("r8") = __NR_##sname;              \
-+      __asm__ __volatile__("scall"                                    \
-+                           : "=r"(__res_r12)                          \
-+                           : "0"(__r12), "r"(__scno)                  \
-+                           : "memory");                               \
-+      return (type) __res_r12;                                        \
-+}
-+
-+#define io_syscall2(type,fname,sname,type1,arg1,type2,arg2)           \
-+type fname(type1 arg1, type2 arg2)                                    \
-+{                                                                     \
-+      register long __r12 __asm__("r12") = (long)arg1;                \
-+      register long __r11 __asm__("r11") = (long)arg2;                \
-+      register long __res_r12 __asm__("r12");                         \
-+      register long __scno __asm__("r8") = __NR_##sname;              \
-+      __asm__ __volatile__("scall"                                    \
-+                           : "=r"(__res_r12)                          \
-+                           : "0"(__r12), "r"(__r11), "r"(__scno)      \
-+                           : "memory");                               \
-+      return (type) __res_r12;                                        \
-+}
-+
-+#define io_syscall3(type,fname,sname,type1,arg1,type2,arg2,type3,arg3)        \
-+type fname(type1 arg1, type2 arg2, type3 arg3)                                \
-+{                                                                     \
-+      register long __r12 __asm__("r12") = (long)arg1;                \
-+      register long __r11 __asm__("r11") = (long)arg2;                \
-+      register long __r10 __asm__("r10") = (long)arg3;                \
-+      register long __res_r12 __asm__("r12");                         \
-+      register long __scno __asm__("r8") = __NR_##sname;              \
-+      __asm__ __volatile__("scall"                                    \
-+                           : "=r"(__res_r12)                          \
-+                           : "0"(__r12), "r"(__r11), "r"(__r10),      \
-+                             "r"(__scno)                              \
-+                           : "memory");                               \
-+      return (type) __res_r12;                                        \
-+}
-+
-+#define io_syscall4(type,fname,sname,type1,arg1,type2,arg2,type3,arg3,type4,arg4) \
-+type fname(type1 arg1, type2 arg2, type3 arg3, type4 arg4)            \
-+{                                                                     \
-+      register long __r12 __asm__("r12") = (long)arg1;                \
-+      register long __r11 __asm__("r11") = (long)arg2;                \
-+      register long __r10 __asm__("r10") = (long)arg3;                \
-+      register long __r9 __asm__("r9") = (long)arg4;                  \
-+      register long __res_r12 __asm__("r12");                         \
-+      register long __scno __asm__("r8") = __NR_##sname;              \
-+      __asm__ __volatile__("scall"                                    \
-+                           : "=r"(__res_r12)                          \
-+                           : "0"(__r12), "r"(__r11), "r"(__r10),      \
-+                             "r"(__r9), "r"(__scno)                   \
-+                           : "memory");                               \
-+      return (type) __res_r12;                                        \
-+}
-+
-+#define io_syscall5(type,fname,sname,type1,arg1,type2,arg2,type3,arg3,type4,arg4,type5,arg5) \
-+type fname(type1 arg1, type2 arg2, type3 arg3, type4 arg4, type5 arg5)        \
-+{                                                                     \
-+      register long __r12 __asm__("r12") = (long)arg1;                \
-+      register long __r11 __asm__("r11") = (long)arg2;                \
-+      register long __r10 __asm__("r10") = (long)arg3;                \
-+      register long __r9 __asm__("r9") = (long)arg4;                  \
-+      register long __r5 __asm__("r5") = (long)arg5;                  \
-+      register long __res_r12 __asm__("r12");                         \
-+      register long __scno __asm__("r8") = __NR_##sname;              \
-+      __asm__ __volatile__("scall"                                    \
-+                           : "=r"(__res_r12)                          \
-+                           : "0"(__r12), "r"(__r11), "r"(__r10),      \
-+                             "r"(__r9), "r"(__r5), "r"(__scno)        \
-+                           : "memory");                               \
-+      return (type) __res_r12;                                        \
-+}
---- a/src/syscall.h
-+++ b/src/syscall.h
-@@ -32,6 +32,8 @@
- #include "syscall-parisc.h"
- #elif defined(__mips__)
- #include "syscall-mips.h"
-+#elif defined(__avr32__)
-+#include "syscall-avr32.h"
- #else
- #error "add syscall-arch.h"
- #endif
diff --git a/package/libaio/libaio-0.3.109-destdir.patch b/package/libaio/libaio-0.3.109-destdir.patch
deleted file mode 100644 (file)
index 583a2af..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-Patch borrowed from OpenEmbedded, available at
-recipes/libaio/libaio-0.3.106/destdir.patch in their source tree.
-
-It just adds support for the traditional DESTDIR variable to install
-the library in a different sysroot than the normal /.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
----
- Makefile |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Index: libaio-0.3.109/Makefile
-===================================================================
---- libaio-0.3.109.orig/Makefile
-+++ libaio-0.3.109/Makefile
-@@ -23,7 +23,7 @@
-       @$(MAKE) -C src
- install:
--      @$(MAKE) -C src install prefix=$(prefix) includedir=$(includedir) libdir=$(libdir)
-+      @$(MAKE) -C src install prefix=$(DESTDIR)$(prefix) includedir=$(DESTDIR)$(includedir) libdir=$(DESTDIR)$(libdir)
- check:
-       @$(MAKE) -C harness check
diff --git a/package/libart/0001-art-config-cross.patch b/package/libart/0001-art-config-cross.patch
new file mode 100644 (file)
index 0000000..a54f26a
--- /dev/null
@@ -0,0 +1,34 @@
+diff -Nura libart_lgpl-2.3.21.orig/Makefile.am libart_lgpl-2.3.21/Makefile.am
+--- libart_lgpl-2.3.21.orig/Makefile.am        2011-02-01 10:07:39.687545397 -0300
++++ libart_lgpl-2.3.21/Makefile.am     2011-02-01 10:08:48.320545396 -0300
+@@ -5,11 +5,6 @@
+       
+ noinst_SCRIPTS = gen_art_config.sh
+-BUILT_SOURCES = art_config.h
+-
+-art_config.h:
+-      ./gen_art_config.sh > art_config.h
+-
+ EXTRA_DIST =                  \
+       libart.def              \
+       libart-config.in        \
+diff -Nura libart_lgpl-2.3.21.orig/art_config.h libart_lgpl-2.3.21/art_config.h
+--- libart_lgpl-2.3.21.orig/art_config.h       2011-02-01 10:07:39.688545397 -0300
++++ libart_lgpl-2.3.21/art_config.h    2011-02-01 10:08:27.315545395 -0300
+@@ -1,9 +1,15 @@
+ /* Automatically generated by gen_art_config */
++#include <limits.h>
++
+ #define ART_SIZEOF_CHAR 1
+ #define ART_SIZEOF_SHORT 2
+ #define ART_SIZEOF_INT 4
++#if LONG_MAX == 2147483647L
+ #define ART_SIZEOF_LONG 4
++#else
++#define ART_SIZEOF_LONG 8
++#endif
+ typedef unsigned char art_u8;
+ typedef unsigned short art_u16;
diff --git a/package/libart/libart-art-config-cross.patch b/package/libart/libart-art-config-cross.patch
deleted file mode 100644 (file)
index a54f26a..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-diff -Nura libart_lgpl-2.3.21.orig/Makefile.am libart_lgpl-2.3.21/Makefile.am
---- libart_lgpl-2.3.21.orig/Makefile.am        2011-02-01 10:07:39.687545397 -0300
-+++ libart_lgpl-2.3.21/Makefile.am     2011-02-01 10:08:48.320545396 -0300
-@@ -5,11 +5,6 @@
-       
- noinst_SCRIPTS = gen_art_config.sh
--BUILT_SOURCES = art_config.h
--
--art_config.h:
--      ./gen_art_config.sh > art_config.h
--
- EXTRA_DIST =                  \
-       libart.def              \
-       libart-config.in        \
-diff -Nura libart_lgpl-2.3.21.orig/art_config.h libart_lgpl-2.3.21/art_config.h
---- libart_lgpl-2.3.21.orig/art_config.h       2011-02-01 10:07:39.688545397 -0300
-+++ libart_lgpl-2.3.21/art_config.h    2011-02-01 10:08:27.315545395 -0300
-@@ -1,9 +1,15 @@
- /* Automatically generated by gen_art_config */
-+#include <limits.h>
-+
- #define ART_SIZEOF_CHAR 1
- #define ART_SIZEOF_SHORT 2
- #define ART_SIZEOF_INT 4
-+#if LONG_MAX == 2147483647L
- #define ART_SIZEOF_LONG 4
-+#else
-+#define ART_SIZEOF_LONG 8
-+#endif
- typedef unsigned char art_u8;
- typedef unsigned short art_u16;
diff --git a/package/libatasmart/0001-strpool-cross-flags.patch b/package/libatasmart/0001-strpool-cross-flags.patch
new file mode 100644 (file)
index 0000000..89b91cc
--- /dev/null
@@ -0,0 +1,42 @@
+From 730158700ea7a554c37f24bfbf5f4985f7280f3e Mon Sep 17 00:00:00 2001
+From: Peter Korsgaard <jacmet@sunsite.dk>
+Date: Wed, 6 Feb 2013 14:07:02 +0100
+Subject: [PATCH] strpool: don't mix up host/build flags when cross compiling
+
+Submitted upstream as https://bugs.freedesktop.org/show_bug.cgi?id=60364
+
+Commit b71035ce89 (build-sys: modernize build system) changed the strpool
+(which needs to be built for the build machine) compilation to use
+AM_CFLAGS / AM_LDFLAGS rather than CFLAGS / LDFLAGS. This is wrong, as
+The AM_ version is used TOGETHER with (the user supplied) CFLAGS/LDFLAGS,
+causing strpool to use both CFLAGS (for host) and CCFLAGS_FOR_BUILD (for
+build) flags, breaking cross compilation with errors like:
+
+cc1: error: unrecognized command line option "-mabi=spe"
+
+Instead overwrite the (user supplied) CFLAGS with the (user supplied)
+CFLAGS_FOR_BUILD (and similar for LDFLAGS) like we used to do.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ strpool/Makefile.am |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/strpool/Makefile.am b/strpool/Makefile.am
+index b041cea..5b335a5 100644
+--- a/strpool/Makefile.am
++++ b/strpool/Makefile.am
+@@ -17,8 +17,8 @@
+ # <http://www.gnu.org/licenses/>.
+ CC = @CC_FOR_BUILD@
+-AM_CFLAGS = @BUILD_CFLAGS@
+-AM_LDFLAGS = @BUILD_LDFLAGS@
++CFLAGS = @BUILD_CFLAGS@
++LDFLAGS = @BUILD_LDFLAGS@
+ noinst_PROGRAMS = \
+       strpool
+-- 
+1.7.10.4
+
diff --git a/package/libatasmart/libatasmart-strpool-cross-flags.patch b/package/libatasmart/libatasmart-strpool-cross-flags.patch
deleted file mode 100644 (file)
index 89b91cc..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-From 730158700ea7a554c37f24bfbf5f4985f7280f3e Mon Sep 17 00:00:00 2001
-From: Peter Korsgaard <jacmet@sunsite.dk>
-Date: Wed, 6 Feb 2013 14:07:02 +0100
-Subject: [PATCH] strpool: don't mix up host/build flags when cross compiling
-
-Submitted upstream as https://bugs.freedesktop.org/show_bug.cgi?id=60364
-
-Commit b71035ce89 (build-sys: modernize build system) changed the strpool
-(which needs to be built for the build machine) compilation to use
-AM_CFLAGS / AM_LDFLAGS rather than CFLAGS / LDFLAGS. This is wrong, as
-The AM_ version is used TOGETHER with (the user supplied) CFLAGS/LDFLAGS,
-causing strpool to use both CFLAGS (for host) and CCFLAGS_FOR_BUILD (for
-build) flags, breaking cross compilation with errors like:
-
-cc1: error: unrecognized command line option "-mabi=spe"
-
-Instead overwrite the (user supplied) CFLAGS with the (user supplied)
-CFLAGS_FOR_BUILD (and similar for LDFLAGS) like we used to do.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- strpool/Makefile.am |    4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/strpool/Makefile.am b/strpool/Makefile.am
-index b041cea..5b335a5 100644
---- a/strpool/Makefile.am
-+++ b/strpool/Makefile.am
-@@ -17,8 +17,8 @@
- # <http://www.gnu.org/licenses/>.
- CC = @CC_FOR_BUILD@
--AM_CFLAGS = @BUILD_CFLAGS@
--AM_LDFLAGS = @BUILD_LDFLAGS@
-+CFLAGS = @BUILD_CFLAGS@
-+LDFLAGS = @BUILD_LDFLAGS@
- noinst_PROGRAMS = \
-       strpool
--- 
-1.7.10.4
-
diff --git a/package/libcgi/0001-misc-fixes.patch b/package/libcgi/0001-misc-fixes.patch
new file mode 100644 (file)
index 0000000..b576178
--- /dev/null
@@ -0,0 +1,122 @@
+Index: b/src/cgi.c
+===================================================================
+--- a/src/cgi.c
++++ b/src/cgi.c
+@@ -336,7 +336,7 @@
+       hextable['b'] = 11;
+       hextable['c'] = 12;
+       hextable['d'] = 13;
+-      hextable['e'] = 13;
++      hextable['e'] = 14;
+       hextable['f'] = 15;
+       hextable['A'] = 10;
+       hextable['B'] = 11;
+Index: b/src/string.c
+===================================================================
+--- a/src/string.c
++++ b/src/string.c
+@@ -584,7 +584,7 @@
+       va_start(ptr, s);
+-      va_copy(bkp, str);
++      va_copy(bkp, ptr);
+       len = strlen(s);
+       while (*str) {
+Index: b/Makefile.in
+===================================================================
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -5,22 +5,32 @@
+ prefix = @prefix@
+ exec_prefix = @exec_prefix@
+-SHAREDOPT = -shared
++SHAREDOPT = -shared -fPIC -Wl,-soname,libcgi.so.0
+ LIBDIR = $(prefix)/lib
+-INCDIR = $(prefix)/include
++INCDIR = $(prefix)/include/libcgi/
+ MANDIR        = $(prefix)/man/man3
+ SHELL = /bin/sh
+ EXTRA_LIBS = 
+ INCS =  -Isrc
+-FLAGS = -Wall -fpic
++FLAGS = -Wall -D_REENTRANT
+ OBJS = src/error.o src/cgi.o src/session.o src/base64.o src/md5.o \
+       src/string.o src/general.o src/list.o src/cookie.o
++SHOBJS=$(OBJS:.o=.sh.o)
+-.c.o: $(CC) $(FLAGS) -c $<
++ALL_TARGETS = src/libcgi.a
++ifeq ($(STATIC),)
++ALL_TARGETS += src/libcgi.so
++endif
+-all: $(OBJS) src/libcgi.so
++%.o: %.c
++      $(CC) $(FLAGS) -c $*.c -o $@
++
++%.sh.o: %.c
++      $(CC) $(FLAGS) -fPIC -c $*.c -o $@
++
++all: $(ALL_TARGETS)
+       @echo ""
+       @echo ""
+@@ -48,14 +58,17 @@
+ src/libcgi.a: $(OBJS)
+       $(AR) rc src/libcgi.a $(OBJS)
+-src/libcgi.so: src/libcgi.a
+-      $(CC) $(SHAREDOPT) -o src/libcgi.so $(OBJS) $(EXTRA_LIBS)
++src/libcgi.so: $(SHOBJS)
++      $(CC) $(SHAREDOPT) -o src/libcgi.so $(SHOBJS) $(EXTRA_LIBS)
+ install:
+-      cp src/libcgi.a $(LIBDIR)
+-      cp src/libcgi.so $(LIBDIR)
+-      cp src/cgi.h $(INCDIR)
+-      cp src/session.h $(INCDIR)
++      cp src/libcgi.a $(DESTDIR)/$(LIBDIR)
++ifeq ($(STATIC),)
++      cp src/libcgi.so $(DESTDIR)/$(LIBDIR)
++endif
++      [ -d $(DESTDIR)/$(INCDIR) ] || mkdir -p $(DESTDIR)/$(INCDIR)
++      cp src/cgi.h $(DESTDIR)/$(INCDIR)
++      cp src/session.h $(DESTDIR)/$(INCDIR)
+ src/error.o: src/error.c src/error.h
+@@ -69,8 +82,9 @@
+ src/list.o: src/list.c
+ clean:
+-      find src/ -name *.*o -exec rm -f {} \;
++      find src/ -name *.o -exec rm -f {} \;
+       find src/ -name *.a -exec rm -f {} \;
++      find src/ -name *.so -exec rm -f {} \;
+ uninstall: clean
+       rm -f $(LIBDIR)/libcgi.*
+@@ -78,11 +92,11 @@
+       rm -f $(INCDIR)/session.h
+       rm -f $(MANDIR)/libcgi*
+-install_man:
+-      cp doc/man/man3/libcgi_base64.3 $(MANDIR)
+-      cp doc/man/man3/libcgi_cgi.3 $(MANDIR)
+-      cp doc/man/man3/libcgi_general.3 $(MANDIR)
+-      cp doc/man/man3/libcgi_string.3 $(MANDIR)
+-      cp doc/man/man3/libcgi_session.3 $(MANDIR)
+-      cp doc/man/man3/libcgi_cookie.3 $(MANDIR)
++#install_man:
++#     cp doc/man/man3/libcgi_base64.3 $(MANDIR)
++#     cp doc/man/man3/libcgi_cgi.3 $(MANDIR)
++#     cp doc/man/man3/libcgi_general.3 $(MANDIR)
++#     cp doc/man/man3/libcgi_string.3 $(MANDIR)
++#     cp doc/man/man3/libcgi_session.3 $(MANDIR)
++#     cp doc/man/man3/libcgi_cookie.3 $(MANDIR)
diff --git a/package/libcgi/libcgi.patch b/package/libcgi/libcgi.patch
deleted file mode 100644 (file)
index b576178..0000000
+++ /dev/null
@@ -1,122 +0,0 @@
-Index: b/src/cgi.c
-===================================================================
---- a/src/cgi.c
-+++ b/src/cgi.c
-@@ -336,7 +336,7 @@
-       hextable['b'] = 11;
-       hextable['c'] = 12;
-       hextable['d'] = 13;
--      hextable['e'] = 13;
-+      hextable['e'] = 14;
-       hextable['f'] = 15;
-       hextable['A'] = 10;
-       hextable['B'] = 11;
-Index: b/src/string.c
-===================================================================
---- a/src/string.c
-+++ b/src/string.c
-@@ -584,7 +584,7 @@
-       va_start(ptr, s);
--      va_copy(bkp, str);
-+      va_copy(bkp, ptr);
-       len = strlen(s);
-       while (*str) {
-Index: b/Makefile.in
-===================================================================
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -5,22 +5,32 @@
- prefix = @prefix@
- exec_prefix = @exec_prefix@
--SHAREDOPT = -shared
-+SHAREDOPT = -shared -fPIC -Wl,-soname,libcgi.so.0
- LIBDIR = $(prefix)/lib
--INCDIR = $(prefix)/include
-+INCDIR = $(prefix)/include/libcgi/
- MANDIR        = $(prefix)/man/man3
- SHELL = /bin/sh
- EXTRA_LIBS = 
- INCS =  -Isrc
--FLAGS = -Wall -fpic
-+FLAGS = -Wall -D_REENTRANT
- OBJS = src/error.o src/cgi.o src/session.o src/base64.o src/md5.o \
-       src/string.o src/general.o src/list.o src/cookie.o
-+SHOBJS=$(OBJS:.o=.sh.o)
--.c.o: $(CC) $(FLAGS) -c $<
-+ALL_TARGETS = src/libcgi.a
-+ifeq ($(STATIC),)
-+ALL_TARGETS += src/libcgi.so
-+endif
--all: $(OBJS) src/libcgi.so
-+%.o: %.c
-+      $(CC) $(FLAGS) -c $*.c -o $@
-+
-+%.sh.o: %.c
-+      $(CC) $(FLAGS) -fPIC -c $*.c -o $@
-+
-+all: $(ALL_TARGETS)
-       @echo ""
-       @echo ""
-@@ -48,14 +58,17 @@
- src/libcgi.a: $(OBJS)
-       $(AR) rc src/libcgi.a $(OBJS)
--src/libcgi.so: src/libcgi.a
--      $(CC) $(SHAREDOPT) -o src/libcgi.so $(OBJS) $(EXTRA_LIBS)
-+src/libcgi.so: $(SHOBJS)
-+      $(CC) $(SHAREDOPT) -o src/libcgi.so $(SHOBJS) $(EXTRA_LIBS)
- install:
--      cp src/libcgi.a $(LIBDIR)
--      cp src/libcgi.so $(LIBDIR)
--      cp src/cgi.h $(INCDIR)
--      cp src/session.h $(INCDIR)
-+      cp src/libcgi.a $(DESTDIR)/$(LIBDIR)
-+ifeq ($(STATIC),)
-+      cp src/libcgi.so $(DESTDIR)/$(LIBDIR)
-+endif
-+      [ -d $(DESTDIR)/$(INCDIR) ] || mkdir -p $(DESTDIR)/$(INCDIR)
-+      cp src/cgi.h $(DESTDIR)/$(INCDIR)
-+      cp src/session.h $(DESTDIR)/$(INCDIR)
- src/error.o: src/error.c src/error.h
-@@ -69,8 +82,9 @@
- src/list.o: src/list.c
- clean:
--      find src/ -name *.*o -exec rm -f {} \;
-+      find src/ -name *.o -exec rm -f {} \;
-       find src/ -name *.a -exec rm -f {} \;
-+      find src/ -name *.so -exec rm -f {} \;
- uninstall: clean
-       rm -f $(LIBDIR)/libcgi.*
-@@ -78,11 +92,11 @@
-       rm -f $(INCDIR)/session.h
-       rm -f $(MANDIR)/libcgi*
--install_man:
--      cp doc/man/man3/libcgi_base64.3 $(MANDIR)
--      cp doc/man/man3/libcgi_cgi.3 $(MANDIR)
--      cp doc/man/man3/libcgi_general.3 $(MANDIR)
--      cp doc/man/man3/libcgi_string.3 $(MANDIR)
--      cp doc/man/man3/libcgi_session.3 $(MANDIR)
--      cp doc/man/man3/libcgi_cookie.3 $(MANDIR)
-+#install_man:
-+#     cp doc/man/man3/libcgi_base64.3 $(MANDIR)
-+#     cp doc/man/man3/libcgi_cgi.3 $(MANDIR)
-+#     cp doc/man/man3/libcgi_general.3 $(MANDIR)
-+#     cp doc/man/man3/libcgi_string.3 $(MANDIR)
-+#     cp doc/man/man3/libcgi_session.3 $(MANDIR)
-+#     cp doc/man/man3/libcgi_cookie.3 $(MANDIR)
diff --git a/package/libcgicc/0001-disable-documentation-option.patch b/package/libcgicc/0001-disable-documentation-option.patch
new file mode 100644 (file)
index 0000000..a7b04a8
--- /dev/null
@@ -0,0 +1,50 @@
+Index: cgicc-3.2.9/Makefile.am
+===================================================================
+--- cgicc-3.2.9.orig/Makefile.am       2010-02-25 16:34:06.000000000 +0100
++++ cgicc-3.2.9/Makefile.am    2010-02-25 16:34:14.000000000 +0100
+@@ -8,9 +8,15 @@
+ DEMO =
+ endif
++if DOC
++DOCDIR = doc
++else
++DOC =
++endif
++
+ ACLOCAL_AMFLAGS= 
+-SUBDIRS = cgicc doc support $(DEMO)
++SUBDIRS = cgicc $(DOCDIR) support $(DEMO)
+ CLEANFILES = *~
+Index: cgicc-3.2.9/configure.ac
+===================================================================
+--- cgicc-3.2.9.orig/configure.ac      2010-02-25 16:34:06.000000000 +0100
++++ cgicc-3.2.9/configure.ac   2010-02-25 16:45:46.000000000 +0100
+@@ -17,9 +17,23 @@
+ AC_PROG_CXX
+ AC_PROG_INSTALL
+ AC_PROG_LIBTOOL
+-AC_CHECK_PROG(DOXYGEN, doxygen, doxygen, /bin/echo)
++AC_ARG_ENABLE(doc, 
++  [  --enable-doc          build doc [[default=yes]]],
++  [case "${enableval}" in
++    yes) cgicc_doc=yes ;;
++    no)  cgicc_doc=no ;;
++    *) AC_MSG_ERROR(bad value ${enableval} for --enable-doc) ;;
++  esac], cgicc_doc=yes)
++
++if test "$cgicc_doc" = yes; then
++ AC_CHECK_PROG(DOXYGEN, doxygen, doxygen)
++ if test -z "$DOXYGEN" ; then
++   AC_MSG_ERROR([Doxygen is required to build the documentation])
++ fi
++fi
++AM_CONDITIONAL(DOC, test "$cgicc_doc" = yes)
+ dnl Determine host system type
diff --git a/package/libcgicc/libcgicc-01-disable-documentation-option.patch b/package/libcgicc/libcgicc-01-disable-documentation-option.patch
deleted file mode 100644 (file)
index a7b04a8..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-Index: cgicc-3.2.9/Makefile.am
-===================================================================
---- cgicc-3.2.9.orig/Makefile.am       2010-02-25 16:34:06.000000000 +0100
-+++ cgicc-3.2.9/Makefile.am    2010-02-25 16:34:14.000000000 +0100
-@@ -8,9 +8,15 @@
- DEMO =
- endif
-+if DOC
-+DOCDIR = doc
-+else
-+DOC =
-+endif
-+
- ACLOCAL_AMFLAGS= 
--SUBDIRS = cgicc doc support $(DEMO)
-+SUBDIRS = cgicc $(DOCDIR) support $(DEMO)
- CLEANFILES = *~
-Index: cgicc-3.2.9/configure.ac
-===================================================================
---- cgicc-3.2.9.orig/configure.ac      2010-02-25 16:34:06.000000000 +0100
-+++ cgicc-3.2.9/configure.ac   2010-02-25 16:45:46.000000000 +0100
-@@ -17,9 +17,23 @@
- AC_PROG_CXX
- AC_PROG_INSTALL
- AC_PROG_LIBTOOL
--AC_CHECK_PROG(DOXYGEN, doxygen, doxygen, /bin/echo)
-+AC_ARG_ENABLE(doc, 
-+  [  --enable-doc          build doc [[default=yes]]],
-+  [case "${enableval}" in
-+    yes) cgicc_doc=yes ;;
-+    no)  cgicc_doc=no ;;
-+    *) AC_MSG_ERROR(bad value ${enableval} for --enable-doc) ;;
-+  esac], cgicc_doc=yes)
-+
-+if test "$cgicc_doc" = yes; then
-+ AC_CHECK_PROG(DOXYGEN, doxygen, doxygen)
-+ if test -z "$DOXYGEN" ; then
-+   AC_MSG_ERROR([Doxygen is required to build the documentation])
-+ fi
-+fi
-+AM_CONDITIONAL(DOC, test "$cgicc_doc" = yes)
- dnl Determine host system type
diff --git a/package/libconfuse/0001-fix-configure-ac.patch b/package/libconfuse/0001-fix-configure-ac.patch
new file mode 100644 (file)
index 0000000..6d61b48
--- /dev/null
@@ -0,0 +1,27 @@
+configure: remove po/Makefile.in from AC_CONFIG_FILES
+
+Since we are gettextizing the package, gettextize updates configure.ac
+to add po/Makefile.in to AC_CONFIG_FILES>
+
+Unfortunately, it's already present, and gettextize does not detect it,
+and insists on adding its own. Later on, autoreconf barfs on the double
+occurences.
+
+As suggested by Arnout, just patch configure.ac to remove the
+po/Makefile.in occurence, so gettextize can safely add its own
+
+Reported-by: Arnout Vandecappelle <arnout@mind.be>
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+Cc: Alvaro Gamez <alvaro.gamez@hazent.com>
+
+diff -durN libconfuse-V2_7.orig/configure.ac libconfuse-V2_7/configure.ac
+--- libconfuse-V2_7.orig/configure.ac  2010-02-20 10:14:10.000000000 +0100
++++ libconfuse-V2_7/configure.ac       2014-07-17 00:19:18.816785340 +0200
+@@ -49,7 +49,6 @@
+ AC_CONFIG_FILES([Makefile \
+                src/Makefile \
+                examples/Makefile \
+-                 po/Makefile.in \
+                m4/Makefile \
+                tests/Makefile \
+                doc/Makefile \
diff --git a/package/libconfuse/libconfuse-0000-fix-configure-ac.patch b/package/libconfuse/libconfuse-0000-fix-configure-ac.patch
deleted file mode 100644 (file)
index 6d61b48..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-configure: remove po/Makefile.in from AC_CONFIG_FILES
-
-Since we are gettextizing the package, gettextize updates configure.ac
-to add po/Makefile.in to AC_CONFIG_FILES>
-
-Unfortunately, it's already present, and gettextize does not detect it,
-and insists on adding its own. Later on, autoreconf barfs on the double
-occurences.
-
-As suggested by Arnout, just patch configure.ac to remove the
-po/Makefile.in occurence, so gettextize can safely add its own
-
-Reported-by: Arnout Vandecappelle <arnout@mind.be>
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
-Cc: Alvaro Gamez <alvaro.gamez@hazent.com>
-
-diff -durN libconfuse-V2_7.orig/configure.ac libconfuse-V2_7/configure.ac
---- libconfuse-V2_7.orig/configure.ac  2010-02-20 10:14:10.000000000 +0100
-+++ libconfuse-V2_7/configure.ac       2014-07-17 00:19:18.816785340 +0200
-@@ -49,7 +49,6 @@
- AC_CONFIG_FILES([Makefile \
-                src/Makefile \
-                examples/Makefile \
--                 po/Makefile.in \
-                m4/Makefile \
-                tests/Makefile \
-                doc/Makefile \
diff --git a/package/libcue/0001-_unused-fix.patch b/package/libcue/0001-_unused-fix.patch
new file mode 100644 (file)
index 0000000..8a58919
--- /dev/null
@@ -0,0 +1,50 @@
+[PATCH] fix build on uClibc
+
+Use cue_unused / cue_dead2 for the unused/non-returning annotation macros,
+as uClibc defines a struct member called __unused in stdio.h when built
+with locale support, breaking the build.
+
+According to ANSI C 4.1.2.1, defines beginning with '__' are reserved
+for the implementation, so shouldn't be used in user code.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ src/libcue/cue_scanner.c |   10 ++++++----
+ 1 file changed, 6 insertions(+), 4 deletions(-)
+
+Index: libcue-1.4.0/src/libcue/cue_scanner.c
+===================================================================
+--- libcue-1.4.0.orig/src/libcue/cue_scanner.c
++++ libcue-1.4.0/src/libcue/cue_scanner.c
+@@ -7,9 +7,11 @@
+ #if defined(__FreeBSD__)
+ #include <sys/cdefs.h>
++#define cue_unused __unused
++#define cue_dead2 __dead2
+ #else
+-#define __unused
+-#define __dead2
++#define cue_unused
++#define cue_dead2
+ #endif
+ #define FLEX_SCANNER
+@@ -248,7 +250,7 @@
+ YY_BUFFER_STATE yy_scan_bytes YY_PROTO(( yyconst char *bytes, int len ));
+ static void *yy_flex_alloc YY_PROTO(( yy_size_t ));
+-static void *yy_flex_realloc YY_PROTO(( void *, yy_size_t )) __unused;
++static void *yy_flex_realloc YY_PROTO(( void *, yy_size_t )) cue_unused;
+ static void yy_flex_free YY_PROTO(( void * ));
+ #define yy_new_buffer yy_create_buffer
+@@ -285,7 +287,7 @@
+ static yy_state_type yy_get_previous_state YY_PROTO(( void ));
+ static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state ));
+ static int yy_get_next_buffer YY_PROTO(( void ));
+-static void yy_fatal_error YY_PROTO(( yyconst char msg[] )) __dead2;
++static void yy_fatal_error YY_PROTO(( yyconst char msg[] )) cue_dead2;
+ /* Done after the current pattern has been matched and before the
+  * corresponding action - sets up yytext.
diff --git a/package/libcue/libcue-1.4.0-__unused-fix.patch b/package/libcue/libcue-1.4.0-__unused-fix.patch
deleted file mode 100644 (file)
index 8a58919..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-[PATCH] fix build on uClibc
-
-Use cue_unused / cue_dead2 for the unused/non-returning annotation macros,
-as uClibc defines a struct member called __unused in stdio.h when built
-with locale support, breaking the build.
-
-According to ANSI C 4.1.2.1, defines beginning with '__' are reserved
-for the implementation, so shouldn't be used in user code.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- src/libcue/cue_scanner.c |   10 ++++++----
- 1 file changed, 6 insertions(+), 4 deletions(-)
-
-Index: libcue-1.4.0/src/libcue/cue_scanner.c
-===================================================================
---- libcue-1.4.0.orig/src/libcue/cue_scanner.c
-+++ libcue-1.4.0/src/libcue/cue_scanner.c
-@@ -7,9 +7,11 @@
- #if defined(__FreeBSD__)
- #include <sys/cdefs.h>
-+#define cue_unused __unused
-+#define cue_dead2 __dead2
- #else
--#define __unused
--#define __dead2
-+#define cue_unused
-+#define cue_dead2
- #endif
- #define FLEX_SCANNER
-@@ -248,7 +250,7 @@
- YY_BUFFER_STATE yy_scan_bytes YY_PROTO(( yyconst char *bytes, int len ));
- static void *yy_flex_alloc YY_PROTO(( yy_size_t ));
--static void *yy_flex_realloc YY_PROTO(( void *, yy_size_t )) __unused;
-+static void *yy_flex_realloc YY_PROTO(( void *, yy_size_t )) cue_unused;
- static void yy_flex_free YY_PROTO(( void * ));
- #define yy_new_buffer yy_create_buffer
-@@ -285,7 +287,7 @@
- static yy_state_type yy_get_previous_state YY_PROTO(( void ));
- static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state ));
- static int yy_get_next_buffer YY_PROTO(( void ));
--static void yy_fatal_error YY_PROTO(( yyconst char msg[] )) __dead2;
-+static void yy_fatal_error YY_PROTO(( yyconst char msg[] )) cue_dead2;
- /* Done after the current pattern has been matched and before the
-  * corresponding action - sets up yytext.
diff --git a/package/libcuefile/0001-fix-static-link.patch b/package/libcuefile/0001-fix-static-link.patch
new file mode 100644 (file)
index 0000000..6eb5890
--- /dev/null
@@ -0,0 +1,25 @@
+Fix static only build
+
+Make sure to build the shared library only if BUILD_SHARED_LIBS is
+ON. Normally, CMake takes care of this automatically, but libcuefile
+wants to build both the shared and static variants, so the normal
+logic of CMake doesn't apply.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/src/CMakeLists.txt
+===================================================================
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -4,7 +4,11 @@
+ add_library(cuefile-static STATIC cd cdtext cue_parse cue_print cue_scan cuefile time toc toc_parse toc_print toc_scan)
+ set_target_properties(cuefile-static PROPERTIES OUTPUT_NAME cuefile CLEAN_DIRECT_OUTPUT 1)
++if (BUILD_SHARED_LIBS)
+ add_library(cuefile-shared SHARED cd cdtext cue_parse cue_print cue_scan cuefile time toc toc_parse toc_print toc_scan)
+ set_target_properties(cuefile-shared PROPERTIES OUTPUT_NAME cuefile CLEAN_DIRECT_OUTPUT 1 VERSION 0.0.0 SOVERSION 0)
+ install(TARGETS cuefile-static cuefile-shared LIBRARY DESTINATION "lib${LIB_SUFFIX}" ARCHIVE DESTINATION "lib${LIB_SUFFIX}")
++else (BUILD_SHARED_LIBS)
++install(TARGETS cuefile-static LIBRARY DESTINATION "lib${LIB_SUFFIX}" ARCHIVE DESTINATION "lib${LIB_SUFFIX}")
++endif (BUILD_SHARED_LIBS)
diff --git a/package/libcuefile/libcuefile-0001-fix-static-link.patch b/package/libcuefile/libcuefile-0001-fix-static-link.patch
deleted file mode 100644 (file)
index 6eb5890..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-Fix static only build
-
-Make sure to build the shared library only if BUILD_SHARED_LIBS is
-ON. Normally, CMake takes care of this automatically, but libcuefile
-wants to build both the shared and static variants, so the normal
-logic of CMake doesn't apply.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/src/CMakeLists.txt
-===================================================================
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -4,7 +4,11 @@
- add_library(cuefile-static STATIC cd cdtext cue_parse cue_print cue_scan cuefile time toc toc_parse toc_print toc_scan)
- set_target_properties(cuefile-static PROPERTIES OUTPUT_NAME cuefile CLEAN_DIRECT_OUTPUT 1)
-+if (BUILD_SHARED_LIBS)
- add_library(cuefile-shared SHARED cd cdtext cue_parse cue_print cue_scan cuefile time toc toc_parse toc_print toc_scan)
- set_target_properties(cuefile-shared PROPERTIES OUTPUT_NAME cuefile CLEAN_DIRECT_OUTPUT 1 VERSION 0.0.0 SOVERSION 0)
- install(TARGETS cuefile-static cuefile-shared LIBRARY DESTINATION "lib${LIB_SUFFIX}" ARCHIVE DESTINATION "lib${LIB_SUFFIX}")
-+else (BUILD_SHARED_LIBS)
-+install(TARGETS cuefile-static LIBRARY DESTINATION "lib${LIB_SUFFIX}" ARCHIVE DESTINATION "lib${LIB_SUFFIX}")
-+endif (BUILD_SHARED_LIBS)
diff --git a/package/libdaemon/0001-testd-use-unistd-h-instead-of-sys-unistd-h.patch b/package/libdaemon/0001-testd-use-unistd-h-instead-of-sys-unistd-h.patch
new file mode 100644 (file)
index 0000000..c8f4270
--- /dev/null
@@ -0,0 +1,16 @@
+examples/testd.c: As the C POSIX library recommends include the <unistd.h>
+instead of <sys/unistd.h>. This removes an error when building libdaemon
+against the musl C library.
+
+Signed-off-by: Jörg Krause <jkrause@posteo.de>
+--- libdaemon-0.14.orig/examples/testd.c       2014-08-30 00:27:08.359832977 +0200
++++ libdaemon-0.14/examples/testd.c    2014-08-30 00:27:25.439832670 +0200
+@@ -23,7 +23,7 @@
+ #include <string.h>
+ #include <sys/types.h>
+ #include <sys/time.h>
+-#include <sys/unistd.h>
++#include <unistd.h>
+ #include <sys/select.h>
+ #include <libdaemon/dfork.h>
diff --git a/package/libdaemon/libdaemon-0001-testd-use-unistd-h-instead-of-sys-unistd-h.patch b/package/libdaemon/libdaemon-0001-testd-use-unistd-h-instead-of-sys-unistd-h.patch
deleted file mode 100644 (file)
index c8f4270..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-examples/testd.c: As the C POSIX library recommends include the <unistd.h>
-instead of <sys/unistd.h>. This removes an error when building libdaemon
-against the musl C library.
-
-Signed-off-by: Jörg Krause <jkrause@posteo.de>
---- libdaemon-0.14.orig/examples/testd.c       2014-08-30 00:27:08.359832977 +0200
-+++ libdaemon-0.14/examples/testd.c    2014-08-30 00:27:25.439832670 +0200
-@@ -23,7 +23,7 @@
- #include <string.h>
- #include <sys/types.h>
- #include <sys/time.h>
--#include <sys/unistd.h>
-+#include <unistd.h>
- #include <sys/select.h>
- #include <libdaemon/dfork.h>
diff --git a/package/libdnet/0001-python-gcc.patch b/package/libdnet/0001-python-gcc.patch
new file mode 100644 (file)
index 0000000..ea732e4
--- /dev/null
@@ -0,0 +1,20 @@
+--- a/python/dnet.c    2006-01-19 18:08:23.000000000 +1100
++++ b/python/dnet.c    2008-09-03 16:30:47.000000000 +1000
+@@ -2726,7 +2726,7 @@
+   PyObject *__pyx_3 = 0;
+   unsigned short __pyx_4;
+   Py_INCREF(__pyx_v_self);
+-  ((PyObject*)__pyx_v_next) = Py_None; Py_INCREF(((PyObject*)__pyx_v_next));
++  __pyx_v_next = (struct __pyx_obj_4dnet_addr*)Py_None; Py_INCREF(((PyObject*)__pyx_v_next));
+   /* "/Users/dugsong/projects/libdnet/python/./dnet.pyx":634 */
+   __pyx_1 = (((struct __pyx_obj_4dnet___addr_ip4_iter *)__pyx_v_self)->cur <= ((struct __pyx_obj_4dnet___addr_ip4_iter *)__pyx_v_self)->max);
+@@ -2738,7 +2739,7 @@
+     Py_DECREF(__pyx_2); __pyx_2 = 0;
+     if (!__Pyx_TypeTest(__pyx_3, __pyx_ptype_4dnet_addr)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 635; goto __pyx_L1;}
+     Py_DECREF(((PyObject *)__pyx_v_next));
+-    ((PyObject *)__pyx_v_next) = __pyx_3;
++    __pyx_v_next = (struct __pyx_obj_4dnet_addr*)__pyx_3;
+     __pyx_3 = 0;
+     /* "/Users/dugsong/projects/libdnet/python/./dnet.pyx":636 */
diff --git a/package/libdnet/0002-python-makefile.patch b/package/libdnet/0002-python-makefile.patch
new file mode 100644 (file)
index 0000000..fb41e43
--- /dev/null
@@ -0,0 +1,16 @@
+---
+ python/Makefile.am |    1 +
+ 1 file changed, 1 insertion(+)
+
+Index: libdnet-1.11/python/Makefile.am
+===================================================================
+--- libdnet-1.11.orig/python/Makefile.am
++++ libdnet-1.11/python/Makefile.am
+@@ -11,6 +11,7 @@
+       pyrexc $(srcdir)/dnet.pyx
+ python-build: $(srcdir)/dnet.c
++      CC="$(CC)" LDSHARED="$(CC) -shared" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)" $(PYTHON) setup.py build_ext -I$(PYINCDIR) -L$(PYLIBDIR)
+       $(PYTHON) setup.py build
+       touch python-build
diff --git a/package/libdnet/libdnet-001-python-gcc.patch b/package/libdnet/libdnet-001-python-gcc.patch
deleted file mode 100644 (file)
index ea732e4..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
---- a/python/dnet.c    2006-01-19 18:08:23.000000000 +1100
-+++ b/python/dnet.c    2008-09-03 16:30:47.000000000 +1000
-@@ -2726,7 +2726,7 @@
-   PyObject *__pyx_3 = 0;
-   unsigned short __pyx_4;
-   Py_INCREF(__pyx_v_self);
--  ((PyObject*)__pyx_v_next) = Py_None; Py_INCREF(((PyObject*)__pyx_v_next));
-+  __pyx_v_next = (struct __pyx_obj_4dnet_addr*)Py_None; Py_INCREF(((PyObject*)__pyx_v_next));
-   /* "/Users/dugsong/projects/libdnet/python/./dnet.pyx":634 */
-   __pyx_1 = (((struct __pyx_obj_4dnet___addr_ip4_iter *)__pyx_v_self)->cur <= ((struct __pyx_obj_4dnet___addr_ip4_iter *)__pyx_v_self)->max);
-@@ -2738,7 +2739,7 @@
-     Py_DECREF(__pyx_2); __pyx_2 = 0;
-     if (!__Pyx_TypeTest(__pyx_3, __pyx_ptype_4dnet_addr)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 635; goto __pyx_L1;}
-     Py_DECREF(((PyObject *)__pyx_v_next));
--    ((PyObject *)__pyx_v_next) = __pyx_3;
-+    __pyx_v_next = (struct __pyx_obj_4dnet_addr*)__pyx_3;
-     __pyx_3 = 0;
-     /* "/Users/dugsong/projects/libdnet/python/./dnet.pyx":636 */
diff --git a/package/libdnet/libdnet-002-python-makefile.patch b/package/libdnet/libdnet-002-python-makefile.patch
deleted file mode 100644 (file)
index fb41e43..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
----
- python/Makefile.am |    1 +
- 1 file changed, 1 insertion(+)
-
-Index: libdnet-1.11/python/Makefile.am
-===================================================================
---- libdnet-1.11.orig/python/Makefile.am
-+++ libdnet-1.11/python/Makefile.am
-@@ -11,6 +11,7 @@
-       pyrexc $(srcdir)/dnet.pyx
- python-build: $(srcdir)/dnet.c
-+      CC="$(CC)" LDSHARED="$(CC) -shared" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)" $(PYTHON) setup.py build_ext -I$(PYINCDIR) -L$(PYLIBDIR)
-       $(PYTHON) setup.py build
-       touch python-build
diff --git a/package/libdvdnav/0001-fix-os2-support.patch b/package/libdvdnav/0001-fix-os2-support.patch
new file mode 100644 (file)
index 0000000..0f75f2f
--- /dev/null
@@ -0,0 +1,32 @@
+configure: fix build on NIOS II platform
+
+NIOS II is a CPU architecture from Altera, which uses 'nios2' as the
+architecture part of the tuple. Unfortunately, 'nios2' matches the
+current '*os2*' test done by libdvdnav's configure script to detect
+the OS/2 operating system. This leads to build issues as the build
+process of libdvdnav then tries to use OS/2 specific compiler
+options, that do not exist in the gcc used for Linux/NIOS2.
+
+To fix this, this patch makes the test for OS/2 a little bit more
+specific: in the case of the OS/2 operating system, the OS part of the
+tuple contains just 'os2' (confirmed by looking at config.guess and
+config.sub in the gnuconfig project). So using '*-os2-*' will properly
+match the OS/2 operating system but not the NIOS II architecture.
+
+Upstream-status: not needed, newer upstream versions no longer have
+                this test
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/configure.ac
+===================================================================
+--- a/configure.ac
++++ b/configure.ac
+@@ -166,7 +166,7 @@
+   *cygwin*)
+     LDFLAGS="-no-undefined $LDFLAGS"
+     ;;
+-  *os2*)
++  *-os2-*)
+     LDFLAGS="-no-undefined -Zbin-files $LDFLAGS"
+     ;;
+   *)
diff --git a/package/libdvdnav/libdvdnav-01-fix-os2-support.patch b/package/libdvdnav/libdvdnav-01-fix-os2-support.patch
deleted file mode 100644 (file)
index 0f75f2f..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-configure: fix build on NIOS II platform
-
-NIOS II is a CPU architecture from Altera, which uses 'nios2' as the
-architecture part of the tuple. Unfortunately, 'nios2' matches the
-current '*os2*' test done by libdvdnav's configure script to detect
-the OS/2 operating system. This leads to build issues as the build
-process of libdvdnav then tries to use OS/2 specific compiler
-options, that do not exist in the gcc used for Linux/NIOS2.
-
-To fix this, this patch makes the test for OS/2 a little bit more
-specific: in the case of the OS/2 operating system, the OS part of the
-tuple contains just 'os2' (confirmed by looking at config.guess and
-config.sub in the gnuconfig project). So using '*-os2-*' will properly
-match the OS/2 operating system but not the NIOS II architecture.
-
-Upstream-status: not needed, newer upstream versions no longer have
-                this test
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/configure.ac
-===================================================================
---- a/configure.ac
-+++ b/configure.ac
-@@ -166,7 +166,7 @@
-   *cygwin*)
-     LDFLAGS="-no-undefined $LDFLAGS"
-     ;;
--  *os2*)
-+  *-os2-*)
-     LDFLAGS="-no-undefined -Zbin-files $LDFLAGS"
-     ;;
-   *)
diff --git a/package/libdvdread/0001-fix-os2-support.patch b/package/libdvdread/0001-fix-os2-support.patch
new file mode 100644 (file)
index 0000000..755bfaf
--- /dev/null
@@ -0,0 +1,31 @@
+configure: fix build on NIOS II platform
+
+NIOS II is a CPU architecture from Altera, which uses 'nios2' as the
+architecture part of the tuple. Unfortunately, 'nios2' matches the
+current '*os2*' test done by libdvdread's configure script to detect
+the OS/2 operating system. This leads to build issues as the build
+process of libdvdread then tries to use OS/2 specific compiler
+options, that do not exist in the gcc used for Linux/NIOS2.
+
+To fix this, this patch makes the test for OS/2 a little bit more
+specific: in the case of the OS/2 operating system, the OS part of the
+tuple contains just 'os2' (confirmed by looking at config.guess and
+config.sub in the gnuconfig project). So using '*-os2-*' will properly
+match the OS/2 operating system but not the NIOS II architecture.
+
+Upstream-status: submitted
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/configure.ac
+===================================================================
+--- a/configure.ac
++++ b/configure.ac
+@@ -146,7 +146,7 @@
+   *cygwin*)
+     LDFLAGS="-no-undefined $LDFLAGS"
+     ;;
+-  *os2*)
++  *-os2-*)
+     LDFLAGS="-no-undefined -Zbin-files $LDFLAGS"
+     ;;
+   *)
diff --git a/package/libdvdread/libdvdread-01-fix-os2-support.patch b/package/libdvdread/libdvdread-01-fix-os2-support.patch
deleted file mode 100644 (file)
index 755bfaf..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-configure: fix build on NIOS II platform
-
-NIOS II is a CPU architecture from Altera, which uses 'nios2' as the
-architecture part of the tuple. Unfortunately, 'nios2' matches the
-current '*os2*' test done by libdvdread's configure script to detect
-the OS/2 operating system. This leads to build issues as the build
-process of libdvdread then tries to use OS/2 specific compiler
-options, that do not exist in the gcc used for Linux/NIOS2.
-
-To fix this, this patch makes the test for OS/2 a little bit more
-specific: in the case of the OS/2 operating system, the OS part of the
-tuple contains just 'os2' (confirmed by looking at config.guess and
-config.sub in the gnuconfig project). So using '*-os2-*' will properly
-match the OS/2 operating system but not the NIOS II architecture.
-
-Upstream-status: submitted
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/configure.ac
-===================================================================
---- a/configure.ac
-+++ b/configure.ac
-@@ -146,7 +146,7 @@
-   *cygwin*)
-     LDFLAGS="-no-undefined $LDFLAGS"
-     ;;
--  *os2*)
-+  *-os2-*)
-     LDFLAGS="-no-undefined -Zbin-files $LDFLAGS"
-     ;;
-   *)
diff --git a/package/libeXosip2/0001-fix-non-ipv6-build.patch b/package/libeXosip2/0001-fix-non-ipv6-build.patch
new file mode 100644 (file)
index 0000000..bec833f
--- /dev/null
@@ -0,0 +1,22 @@
+[PATCH] Fix build on systems without IPV6_TCLASS support
+
+The wrong variable name was used.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ src/eXtl_udp.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: libeXosip2-3.6.0/src/eXtl_udp.c
+===================================================================
+--- libeXosip2-3.6.0.orig/src/eXtl_udp.c
++++ libeXosip2-3.6.0/src/eXtl_udp.c
+@@ -178,7 +178,7 @@
+               res = setsockopt(udp_socket, IPPROTO_IPV6, IPV6_TCLASS,
+                       (SOCKET_OPTION_VALUE)&tos, sizeof(tos));
+ #else
+-              retval = setsockopt(udp_socket, IPPROTO_IPV6, IP_TOS,
++              res = setsockopt(udp_socket, IPPROTO_IPV6, IP_TOS,
+                       (SOCKET_OPTION_VALUE)&tos, sizeof(tos));
+ #endif
+       }
diff --git a/package/libeXosip2/0002-use-pkg-config-to-detect-openssl.patch b/package/libeXosip2/0002-use-pkg-config-to-detect-openssl.patch
new file mode 100644 (file)
index 0000000..69e349f
--- /dev/null
@@ -0,0 +1,62 @@
+configure: use pkg-config to find openssl
+
+The current check is broken for static linking, since the openssl
+libs need to be linked against libz, which is missing in the link
+command when doing a static build:
+    http://autobuild.buildroot.net/results/787/787cd9992b00d8008641af208f5fb7c4afb40b06/build-end.log
+
+Instead of trying convoluted tests to decide what additional libs
+are required, just delegate this job to pkg-config.
+
+At the same time, fix a few legacy, deprecated constructs in favour
+of their new counterparts.
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+---
+Upstream status: submitted, but no public mailing list (sent to the
+mail documented in: http://www.antisip.com/doc/exosip2/index.html )
+
+diff -durN libeXosip2-3.6.0.orig/configure.in libeXosip2-3.6.0/configure.in
+--- libeXosip2-3.6.0.orig/configure.in 2014-06-22 23:58:26.549487427 +0200
++++ libeXosip2-3.6.0/configure.in      2014-06-22 23:59:12.822008499 +0200
+@@ -44,7 +44,7 @@
+ AC_CONFIG_AUX_DIR(scripts)
+ AC_CONFIG_HEADERS(config.h)
+ AM_INIT_AUTOMAKE($PACKAGE, $VERSION)
+-AM_ACLOCAL_INCLUDE(scripts)
++AC_CONFIG_MACRO_DIR([scripts])
+ AC_CANONICAL_HOST
+@@ -371,13 +371,15 @@
+ AC_ARG_ENABLE(openssl,
+       [  --enable-openssl        enable support for openssl],
+-      enable_openssl=$enableval,enable_openssl="yes")
++      enable_openssl=$enableval,enable_openssl="auto")
+-if test "$enable_openssl" = "yes" ; then
+-      AC_CHECK_HEADERS(openssl/ssl.h)
+-      AC_CHECK_LIB(ssl,SSL_CTX_new,[EXOSIP_LIB="$EXOSIP_LIB -lssl"])
+-      AC_CHECK_LIB(crypto,X509_get_issuer_name,[EXOSIP_LIB="$EXOSIP_LIB -lcrypto"])
+-fi
++AS_IF([test "$enable_openssl" = "yes" -o "$enable_openssl" = "auto"],
++      [PKG_CHECK_MODULES([SSL], [openssl],
++                         [EXOSIP_LIB="$EXOSIP_LIB $SSL_LIBS"],
++                         [AS_IF([test "$enable_openssl" = "yes"],
++                                [AC_MSG_ERROR([can not find openssl])])
++                         ])
++      ])
+ AC_ARG_ENABLE(srvrec,
+       [  --enable-srvrec         enable support for SRV records DNS queries (yes) ],
+diff -durN build/libeXosip2-3.6.0.orig/Makefile.am build/libeXosip2-3.6.0/Makefile.am
+--- libeXosip2-3.6.0.orig/Makefile.am  2014-06-23 00:14:25.328226745 +0200
++++ libeXosip2-3.6.0/Makefile.am       2014-06-23 00:14:38.296371236 +0200
+@@ -1,4 +1,4 @@
+-
++ACLOCAL_AMFLAGS = -I scripts
+ EXTRA_DIST = README autogen.sh
+ SUBDIRS = scripts platform src include tools help
diff --git a/package/libeXosip2/libeXosip2-0000-fix-non-ipv6-build.patch b/package/libeXosip2/libeXosip2-0000-fix-non-ipv6-build.patch
deleted file mode 100644 (file)
index bec833f..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-[PATCH] Fix build on systems without IPV6_TCLASS support
-
-The wrong variable name was used.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- src/eXtl_udp.c |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Index: libeXosip2-3.6.0/src/eXtl_udp.c
-===================================================================
---- libeXosip2-3.6.0.orig/src/eXtl_udp.c
-+++ libeXosip2-3.6.0/src/eXtl_udp.c
-@@ -178,7 +178,7 @@
-               res = setsockopt(udp_socket, IPPROTO_IPV6, IPV6_TCLASS,
-                       (SOCKET_OPTION_VALUE)&tos, sizeof(tos));
- #else
--              retval = setsockopt(udp_socket, IPPROTO_IPV6, IP_TOS,
-+              res = setsockopt(udp_socket, IPPROTO_IPV6, IP_TOS,
-                       (SOCKET_OPTION_VALUE)&tos, sizeof(tos));
- #endif
-       }
diff --git a/package/libeXosip2/libeXosip2-0001-use-pkg-config-to-detect-openssl.patch b/package/libeXosip2/libeXosip2-0001-use-pkg-config-to-detect-openssl.patch
deleted file mode 100644 (file)
index 69e349f..0000000
+++ /dev/null
@@ -1,62 +0,0 @@
-configure: use pkg-config to find openssl
-
-The current check is broken for static linking, since the openssl
-libs need to be linked against libz, which is missing in the link
-command when doing a static build:
-    http://autobuild.buildroot.net/results/787/787cd9992b00d8008641af208f5fb7c4afb40b06/build-end.log
-
-Instead of trying convoluted tests to decide what additional libs
-are required, just delegate this job to pkg-config.
-
-At the same time, fix a few legacy, deprecated constructs in favour
-of their new counterparts.
-
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
-
----
-Upstream status: submitted, but no public mailing list (sent to the
-mail documented in: http://www.antisip.com/doc/exosip2/index.html )
-
-diff -durN libeXosip2-3.6.0.orig/configure.in libeXosip2-3.6.0/configure.in
---- libeXosip2-3.6.0.orig/configure.in 2014-06-22 23:58:26.549487427 +0200
-+++ libeXosip2-3.6.0/configure.in      2014-06-22 23:59:12.822008499 +0200
-@@ -44,7 +44,7 @@
- AC_CONFIG_AUX_DIR(scripts)
- AC_CONFIG_HEADERS(config.h)
- AM_INIT_AUTOMAKE($PACKAGE, $VERSION)
--AM_ACLOCAL_INCLUDE(scripts)
-+AC_CONFIG_MACRO_DIR([scripts])
- AC_CANONICAL_HOST
-@@ -371,13 +371,15 @@
- AC_ARG_ENABLE(openssl,
-       [  --enable-openssl        enable support for openssl],
--      enable_openssl=$enableval,enable_openssl="yes")
-+      enable_openssl=$enableval,enable_openssl="auto")
--if test "$enable_openssl" = "yes" ; then
--      AC_CHECK_HEADERS(openssl/ssl.h)
--      AC_CHECK_LIB(ssl,SSL_CTX_new,[EXOSIP_LIB="$EXOSIP_LIB -lssl"])
--      AC_CHECK_LIB(crypto,X509_get_issuer_name,[EXOSIP_LIB="$EXOSIP_LIB -lcrypto"])
--fi
-+AS_IF([test "$enable_openssl" = "yes" -o "$enable_openssl" = "auto"],
-+      [PKG_CHECK_MODULES([SSL], [openssl],
-+                         [EXOSIP_LIB="$EXOSIP_LIB $SSL_LIBS"],
-+                         [AS_IF([test "$enable_openssl" = "yes"],
-+                                [AC_MSG_ERROR([can not find openssl])])
-+                         ])
-+      ])
- AC_ARG_ENABLE(srvrec,
-       [  --enable-srvrec         enable support for SRV records DNS queries (yes) ],
-diff -durN build/libeXosip2-3.6.0.orig/Makefile.am build/libeXosip2-3.6.0/Makefile.am
---- libeXosip2-3.6.0.orig/Makefile.am  2014-06-23 00:14:25.328226745 +0200
-+++ libeXosip2-3.6.0/Makefile.am       2014-06-23 00:14:38.296371236 +0200
-@@ -1,4 +1,4 @@
--
-+ACLOCAL_AMFLAGS = -I scripts
- EXTRA_DIST = README autogen.sh
- SUBDIRS = scripts platform src include tools help
diff --git a/package/libedit/0001-check-bsd-functions-in-libbsd.patch b/package/libedit/0001-check-bsd-functions-in-libbsd.patch
new file mode 100644 (file)
index 0000000..21c57f8
--- /dev/null
@@ -0,0 +1,18 @@
+configure: on Linux, the BSD functions require linking against libbsd
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+diff -durN libedit-20130712-3.1.orig/configure.ac libedit-20130712-3.1/configure.ac
+--- libedit-20130712-3.1.orig/configure.ac     2013-07-12 20:39:22.000000000 +0200
++++ libedit-20130712-3.1/configure.ac  2013-07-28 23:35:35.012676469 +0200
+@@ -108,6 +108,10 @@
+ #AC_FUNC_REALLOC
+ AC_TYPE_SIGNAL
+ AC_FUNC_STAT
++
++# Search for libbsd for *vis functions
++AC_CHECK_LIB([bsd], [vis])
++
+ AC_CHECK_FUNCS([endpwent isascii memchr memset re_comp regcomp strcasecmp strchr strcspn strdup strerror strrchr strstr strtol issetugid wcsdup strlcpy strlcat fgetln vis strvis strunvis __secure_getenv secure_getenv])
+ # strlcpy
diff --git a/package/libedit/libedit-000-check-bsd-functions-in-libbsd.patch b/package/libedit/libedit-000-check-bsd-functions-in-libbsd.patch
deleted file mode 100644 (file)
index 21c57f8..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-configure: on Linux, the BSD functions require linking against libbsd
-
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
-
-diff -durN libedit-20130712-3.1.orig/configure.ac libedit-20130712-3.1/configure.ac
---- libedit-20130712-3.1.orig/configure.ac     2013-07-12 20:39:22.000000000 +0200
-+++ libedit-20130712-3.1/configure.ac  2013-07-28 23:35:35.012676469 +0200
-@@ -108,6 +108,10 @@
- #AC_FUNC_REALLOC
- AC_TYPE_SIGNAL
- AC_FUNC_STAT
-+
-+# Search for libbsd for *vis functions
-+AC_CHECK_LIB([bsd], [vis])
-+
- AC_CHECK_FUNCS([endpwent isascii memchr memset re_comp regcomp strcasecmp strchr strcspn strdup strerror strrchr strstr strtol issetugid wcsdup strlcpy strlcat fgetln vis strvis strunvis __secure_getenv secure_getenv])
- # strlcpy
diff --git a/package/libfcgi/0001-eof.patch b/package/libfcgi/0001-eof.patch
new file mode 100644 (file)
index 0000000..e731426
--- /dev/null
@@ -0,0 +1,24 @@
+[PATCH] fix build with C++ support and gcc >= 4.4
+
+EOF is defined in stdio, so ensure it is included.
+
+Based on similar patch by Markus Rothe:
+http://comments.gmane.org/gmane.comp.web.fastcgi.devel/3205
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ libfcgi/fcgio.cpp |    1 +
+ 1 file changed, 1 insertion(+)
+
+Index: fcgi-2.4.0/libfcgi/fcgio.cpp
+===================================================================
+--- fcgi-2.4.0.orig/libfcgi/fcgio.cpp
++++ fcgi-2.4.0/libfcgi/fcgio.cpp
+@@ -22,6 +22,7 @@
+ #define DLLAPI  __declspec(dllexport)
+ #endif
++#include <cstdio>
+ #include <limits.h>
+ #include "fcgio.h"
diff --git a/package/libfcgi/0002-link-against-libfcgi-la.patch b/package/libfcgi/0002-link-against-libfcgi-la.patch
new file mode 100644 (file)
index 0000000..8a5973a
--- /dev/null
@@ -0,0 +1,20 @@
+Properly link libfcgi++ against libfcgi
+
+We cannot directly use -lfcgi to link libfcgi++ against libfcgi,
+because libfcgi is not installed at this time. Instead, we should rely
+on libtool doing the right thing, by specifying libfcgi.la in
+libfcgi++ LIBADD variable.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/libfcgi/Makefile.am
+===================================================================
+--- a/libfcgi/Makefile.am
++++ b/libfcgi/Makefile.am
+@@ -23,5 +23,6 @@
+                        $(INCLUDEDIR)/fcgio.h  \
+                        fcgio.cpp
+ libfcgi___la_CFLAGS  = @PTHREAD_CFLAGS@
+-libfcgi___la_LDFLAGS = -lfcgi -rpath @libdir@
++libfcgi___la_LIBADD  = libfcgi.la
++libfcgi___la_LDFLAGS = -rpath @libdir@
diff --git a/package/libfcgi/0003-link-against-math.patch b/package/libfcgi/0003-link-against-math.patch
new file mode 100644 (file)
index 0000000..4c87ea6
--- /dev/null
@@ -0,0 +1,28 @@
+Link against math libraries when needed
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/cgi-fcgi/Makefile.am
+===================================================================
+--- a/cgi-fcgi/Makefile.am
++++ b/cgi-fcgi/Makefile.am
+@@ -11,5 +11,5 @@
+ LIBDIR      = ../libfcgi
+ LIBFCGI     = $(LIBDIR)/libfcgi.la
+-LDADD = $(LIBFCGI)
++LDADD = $(LIBFCGI) -lm
+ cgi_fcgi_SOURCES = $(INCLUDE_FILES) cgi-fcgi.c
+Index: b/examples/Makefile.am
+===================================================================
+--- a/examples/Makefile.am
++++ b/examples/Makefile.am
+@@ -21,7 +21,7 @@
+ LIBDIR      = ../libfcgi
+ LIBFCGI     = $(LIBDIR)/libfcgi.la
+-LDADD = $(LIBFCGI)
++LDADD = $(LIBFCGI) -lm
+ echo_SOURCES       = $(INCLUDE_FILES) echo.c
+ echo_x_SOURCES     = $(INCLUDE_FILES) echo-x.c
diff --git a/package/libfcgi/0004-make-autoreconfable.patch b/package/libfcgi/0004-make-autoreconfable.patch
new file mode 100644 (file)
index 0000000..e255fc6
--- /dev/null
@@ -0,0 +1,67 @@
+Make the package autoreconfigurable
+
+Adjust minor details in Makefile.am and configure.in in order to make
+the package compatible with the autoconf/automake versions we are
+using in Buildroot.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/cgi-fcgi/Makefile.am
+===================================================================
+--- a/cgi-fcgi/Makefile.am
++++ b/cgi-fcgi/Makefile.am
+@@ -2,7 +2,7 @@
+ bin_PROGRAMS     = cgi-fcgi
+ INCLUDEDIR  = ../include
+-CPPFLAGS    = @CPPFLAGS@ -I$(top_srcdir)/include
++AM_CPPFLAGS = @CPPFLAGS@ -I$(top_srcdir)/include
+ INCLUDE_FILES   = $(INCLUDEDIR)/fastcgi.h  \
+                 $(INCLUDEDIR)/fcgiapp.h  \
+Index: b/configure.in
+===================================================================
+--- a/configure.in
++++ b/configure.in
+@@ -4,12 +4,13 @@
+ dnl     generate the file "configure", which is run during the build
+ dnl     to configure the system for the local environment.
+-AC_INIT
+-AM_INIT_AUTOMAKE(fcgi, 2.4.0)
++AC_INIT([fcgi], [2.4.0])
++AM_INIT_AUTOMAKE([foreign])
+ AM_CONFIG_HEADER(fcgi_config.h)
+ AC_PROG_CC
++AC_PROG_CC_C_O
+ AC_PROG_CPP 
+ AC_PROG_INSTALL 
+ AC_PROG_LIBTOOL
+Index: b/examples/Makefile.am
+===================================================================
+--- a/examples/Makefile.am
++++ b/examples/Makefile.am
+@@ -11,7 +11,7 @@
+ EXTRA_PROGRAMS = threaded echo-cpp
+ INCLUDEDIR  = ../include
+-CPPFLAGS    = @CPPFLAGS@ -I$(top_srcdir)/include
++AM_CPPFLAGS = @CPPFLAGS@ -I$(top_srcdir)/include
+ INCLUDE_FILES   = $(INCLUDEDIR)/fastcgi.h    \
+                   $(INCLUDEDIR)/fcgiapp.h    \
+Index: b/libfcgi/Makefile.am
+===================================================================
+--- a/libfcgi/Makefile.am
++++ b/libfcgi/Makefile.am
+@@ -1,7 +1,7 @@
+ # $Id: Makefile.am,v 1.9 2001/12/22 03:16:20 robs Exp $
+ INCLUDEDIR  = ../include
+-CPPFLAGS    = @CPPFLAGS@ -I$(top_srcdir)/include
++AM_CPPFLAGS = @CPPFLAGS@ -I$(top_srcdir)/include
+ INCLUDE_FILES = $(INCLUDEDIR)/fastcgi.h     \
+                 $(INCLUDEDIR)/fcgiapp.h     \
diff --git a/package/libfcgi/0005-disable-examples.patch b/package/libfcgi/0005-disable-examples.patch
new file mode 100644 (file)
index 0000000..4a9916f
--- /dev/null
@@ -0,0 +1,21 @@
+Common subdirectories: libfcgi-2.4.0.orig/cgi-fcgi and libfcgi-2.4.0/cgi-fcgi
+Common subdirectories: libfcgi-2.4.0.orig/doc and libfcgi-2.4.0/doc
+Common subdirectories: libfcgi-2.4.0.orig/examples and libfcgi-2.4.0/examples
+Common subdirectories: libfcgi-2.4.0.orig/images and libfcgi-2.4.0/images
+Common subdirectories: libfcgi-2.4.0.orig/include and libfcgi-2.4.0/include
+Common subdirectories: libfcgi-2.4.0.orig/java and libfcgi-2.4.0/java
+Common subdirectories: libfcgi-2.4.0.orig/libfcgi and libfcgi-2.4.0/libfcgi
+diff -du libfcgi-2.4.0.orig/Makefile.am libfcgi-2.4.0/Makefile.am
+--- libfcgi-2.4.0.orig/Makefile.am     2001-12-22 14:05:39.000000000 +0100
++++ libfcgi-2.4.0/Makefile.am  2014-07-19 16:56:21.935216540 +0200
+@@ -4,7 +4,7 @@
+ #  $Id: Makefile.am,v 1.7 2001/12/22 13:05:39 robs Exp $
+ #
+-SUBDIRS = libfcgi cgi-fcgi examples include
++SUBDIRS = libfcgi cgi-fcgi include
+ include_HEADERS = fcgi_config.h
+Common subdirectories: libfcgi-2.4.0.orig/perl and libfcgi-2.4.0/perl
+Common subdirectories: libfcgi-2.4.0.orig/Win32 and libfcgi-2.4.0/Win32
diff --git a/package/libfcgi/libfcgi-0000-eof.patch b/package/libfcgi/libfcgi-0000-eof.patch
deleted file mode 100644 (file)
index e731426..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-[PATCH] fix build with C++ support and gcc >= 4.4
-
-EOF is defined in stdio, so ensure it is included.
-
-Based on similar patch by Markus Rothe:
-http://comments.gmane.org/gmane.comp.web.fastcgi.devel/3205
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- libfcgi/fcgio.cpp |    1 +
- 1 file changed, 1 insertion(+)
-
-Index: fcgi-2.4.0/libfcgi/fcgio.cpp
-===================================================================
---- fcgi-2.4.0.orig/libfcgi/fcgio.cpp
-+++ fcgi-2.4.0/libfcgi/fcgio.cpp
-@@ -22,6 +22,7 @@
- #define DLLAPI  __declspec(dllexport)
- #endif
-+#include <cstdio>
- #include <limits.h>
- #include "fcgio.h"
diff --git a/package/libfcgi/libfcgi-0001-link-against-libfcgi-la.patch b/package/libfcgi/libfcgi-0001-link-against-libfcgi-la.patch
deleted file mode 100644 (file)
index 8a5973a..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-Properly link libfcgi++ against libfcgi
-
-We cannot directly use -lfcgi to link libfcgi++ against libfcgi,
-because libfcgi is not installed at this time. Instead, we should rely
-on libtool doing the right thing, by specifying libfcgi.la in
-libfcgi++ LIBADD variable.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/libfcgi/Makefile.am
-===================================================================
---- a/libfcgi/Makefile.am
-+++ b/libfcgi/Makefile.am
-@@ -23,5 +23,6 @@
-                        $(INCLUDEDIR)/fcgio.h  \
-                        fcgio.cpp
- libfcgi___la_CFLAGS  = @PTHREAD_CFLAGS@
--libfcgi___la_LDFLAGS = -lfcgi -rpath @libdir@
-+libfcgi___la_LIBADD  = libfcgi.la
-+libfcgi___la_LDFLAGS = -rpath @libdir@
diff --git a/package/libfcgi/libfcgi-0002-link-against-math.patch b/package/libfcgi/libfcgi-0002-link-against-math.patch
deleted file mode 100644 (file)
index 4c87ea6..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-Link against math libraries when needed
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/cgi-fcgi/Makefile.am
-===================================================================
---- a/cgi-fcgi/Makefile.am
-+++ b/cgi-fcgi/Makefile.am
-@@ -11,5 +11,5 @@
- LIBDIR      = ../libfcgi
- LIBFCGI     = $(LIBDIR)/libfcgi.la
--LDADD = $(LIBFCGI)
-+LDADD = $(LIBFCGI) -lm
- cgi_fcgi_SOURCES = $(INCLUDE_FILES) cgi-fcgi.c
-Index: b/examples/Makefile.am
-===================================================================
---- a/examples/Makefile.am
-+++ b/examples/Makefile.am
-@@ -21,7 +21,7 @@
- LIBDIR      = ../libfcgi
- LIBFCGI     = $(LIBDIR)/libfcgi.la
--LDADD = $(LIBFCGI)
-+LDADD = $(LIBFCGI) -lm
- echo_SOURCES       = $(INCLUDE_FILES) echo.c
- echo_x_SOURCES     = $(INCLUDE_FILES) echo-x.c
diff --git a/package/libfcgi/libfcgi-0003-make-autoreconfable.patch b/package/libfcgi/libfcgi-0003-make-autoreconfable.patch
deleted file mode 100644 (file)
index e255fc6..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-Make the package autoreconfigurable
-
-Adjust minor details in Makefile.am and configure.in in order to make
-the package compatible with the autoconf/automake versions we are
-using in Buildroot.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/cgi-fcgi/Makefile.am
-===================================================================
---- a/cgi-fcgi/Makefile.am
-+++ b/cgi-fcgi/Makefile.am
-@@ -2,7 +2,7 @@
- bin_PROGRAMS     = cgi-fcgi
- INCLUDEDIR  = ../include
--CPPFLAGS    = @CPPFLAGS@ -I$(top_srcdir)/include
-+AM_CPPFLAGS = @CPPFLAGS@ -I$(top_srcdir)/include
- INCLUDE_FILES   = $(INCLUDEDIR)/fastcgi.h  \
-                 $(INCLUDEDIR)/fcgiapp.h  \
-Index: b/configure.in
-===================================================================
---- a/configure.in
-+++ b/configure.in
-@@ -4,12 +4,13 @@
- dnl     generate the file "configure", which is run during the build
- dnl     to configure the system for the local environment.
--AC_INIT
--AM_INIT_AUTOMAKE(fcgi, 2.4.0)
-+AC_INIT([fcgi], [2.4.0])
-+AM_INIT_AUTOMAKE([foreign])
- AM_CONFIG_HEADER(fcgi_config.h)
- AC_PROG_CC
-+AC_PROG_CC_C_O
- AC_PROG_CPP 
- AC_PROG_INSTALL 
- AC_PROG_LIBTOOL
-Index: b/examples/Makefile.am
-===================================================================
---- a/examples/Makefile.am
-+++ b/examples/Makefile.am
-@@ -11,7 +11,7 @@
- EXTRA_PROGRAMS = threaded echo-cpp
- INCLUDEDIR  = ../include
--CPPFLAGS    = @CPPFLAGS@ -I$(top_srcdir)/include
-+AM_CPPFLAGS = @CPPFLAGS@ -I$(top_srcdir)/include
- INCLUDE_FILES   = $(INCLUDEDIR)/fastcgi.h    \
-                   $(INCLUDEDIR)/fcgiapp.h    \
-Index: b/libfcgi/Makefile.am
-===================================================================
---- a/libfcgi/Makefile.am
-+++ b/libfcgi/Makefile.am
-@@ -1,7 +1,7 @@
- # $Id: Makefile.am,v 1.9 2001/12/22 03:16:20 robs Exp $
- INCLUDEDIR  = ../include
--CPPFLAGS    = @CPPFLAGS@ -I$(top_srcdir)/include
-+AM_CPPFLAGS = @CPPFLAGS@ -I$(top_srcdir)/include
- INCLUDE_FILES = $(INCLUDEDIR)/fastcgi.h     \
-                 $(INCLUDEDIR)/fcgiapp.h     \
diff --git a/package/libfcgi/libfcgi-0004-disable-examples.patch b/package/libfcgi/libfcgi-0004-disable-examples.patch
deleted file mode 100644 (file)
index 4a9916f..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-Common subdirectories: libfcgi-2.4.0.orig/cgi-fcgi and libfcgi-2.4.0/cgi-fcgi
-Common subdirectories: libfcgi-2.4.0.orig/doc and libfcgi-2.4.0/doc
-Common subdirectories: libfcgi-2.4.0.orig/examples and libfcgi-2.4.0/examples
-Common subdirectories: libfcgi-2.4.0.orig/images and libfcgi-2.4.0/images
-Common subdirectories: libfcgi-2.4.0.orig/include and libfcgi-2.4.0/include
-Common subdirectories: libfcgi-2.4.0.orig/java and libfcgi-2.4.0/java
-Common subdirectories: libfcgi-2.4.0.orig/libfcgi and libfcgi-2.4.0/libfcgi
-diff -du libfcgi-2.4.0.orig/Makefile.am libfcgi-2.4.0/Makefile.am
---- libfcgi-2.4.0.orig/Makefile.am     2001-12-22 14:05:39.000000000 +0100
-+++ libfcgi-2.4.0/Makefile.am  2014-07-19 16:56:21.935216540 +0200
-@@ -4,7 +4,7 @@
- #  $Id: Makefile.am,v 1.7 2001/12/22 13:05:39 robs Exp $
- #
--SUBDIRS = libfcgi cgi-fcgi examples include
-+SUBDIRS = libfcgi cgi-fcgi include
- include_HEADERS = fcgi_config.h
-Common subdirectories: libfcgi-2.4.0.orig/perl and libfcgi-2.4.0/perl
-Common subdirectories: libfcgi-2.4.0.orig/Win32 and libfcgi-2.4.0/Win32
diff --git a/package/libffi/0001-Fix-installation-location-of-libffi.patch b/package/libffi/0001-Fix-installation-location-of-libffi.patch
new file mode 100644 (file)
index 0000000..56e08f7
--- /dev/null
@@ -0,0 +1,50 @@
+From 102c02de867bfe831b5366c89d66bcf170db962e Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Date: Thu, 7 Feb 2013 22:26:56 +0100
+Subject: [PATCH] Fix installation location of libffi
+
+The libffi is currently declared as toolexeclib_LTLIBRARIES. In many
+cases, toolexeclib libraries will be installed in /usr/lib, so it
+doesn't make any difference.
+
+However, with multilib toolchains, they get installed in a
+subdirectory of /usr/lib/. For example, with a Sourcery CodeBench
+PowerPC toolchain, if the e500mc multilib variant is used, the libffi
+library gets installed in /usr/lib/te500mc/. This is due to the
+following code in the configure script:
+
+  multi_os_directory=`$CC -print-multi-os-directory`
+  case $multi_os_directory in
+    .) ;; # Avoid trailing /.
+    *) toolexeclibdir=$toolexeclibdir/$multi_os_directory ;;
+  esac
+
+Once the library is installed in /usr/lib/te500mc/, nothing works
+because this installation location is inconsistent with the
+installation location declared in libffi.pc.
+
+So, instead of using this bizarre toolexeclib_LTLIBRARIES, simply use
+the more standard lib_LTLIBRARIES, which ensures that the libffi
+library is always installed in /usr/lib.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ Makefile.am |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index 6f669ca..b60bcc1 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -93,7 +93,7 @@ FLAGS_TO_PASS = $(AM_MAKEFLAGS)
+ MAKEOVERRIDES=
+-toolexeclib_LTLIBRARIES = libffi.la
++lib_LTLIBRARIES = libffi.la
+ noinst_LTLIBRARIES = libffi_convenience.la
+ libffi_la_SOURCES = src/prep_cif.c src/types.c \
+-- 
+1.7.9.5
+
diff --git a/package/libffi/0002-Fix-use-of-compact-eh-frames-on-MIPS.patch b/package/libffi/0002-Fix-use-of-compact-eh-frames-on-MIPS.patch
new file mode 100644 (file)
index 0000000..15d1c96
--- /dev/null
@@ -0,0 +1,27 @@
+Newer MIPS toolchains use a different (compact) eh_frame format.
+libffi don't like them, so we have to switch to the older format.
+
+This patch add -mno-compact-eh to CFLAGS when compiling for
+Mips and compiler support it.
+
+Signed-off-by: Jérôme Pouiller <jezz@sysmic.org>
+
+--- a/configure.ac     2013-08-08 14:53:11.884267155 +0200
++++ b/configure.ac     2013-08-08 14:54:14.437493244 +0200
+@@ -430,6 +430,16 @@
+ AM_CONDITIONAL(FFI_EXEC_TRAMPOLINE_TABLE, test x$FFI_EXEC_TRAMPOLINE_TABLE = x1)
+ AC_SUBST(FFI_EXEC_TRAMPOLINE_TABLE)
++if test x$TARGET = xMIPS; then
++    save_CFLAGS="$CFLAGS"
++    CFLAGS=-mno-compact-eh
++    AC_MSG_CHECKING([whether the C compiler needs -mno-compact-eh])
++    AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])],
++                      [AC_MSG_RESULT([yes])]; [save_CFLAGS="$save_CFLAGS -mno-compact-eh"],
++                      [AC_MSG_RESULT([no])])
++    CFLAGS="$save_CFLAGS"
++fi
++
+ if test x$TARGET = xX86_64; then
+     AC_CACHE_CHECK([assembler supports unwind section type],
+       libffi_cv_as_x86_64_unwind_section_type, [
diff --git a/package/libffi/0003-fix-typo.patch b/package/libffi/0003-fix-typo.patch
new file mode 100644 (file)
index 0000000..f20804b
--- /dev/null
@@ -0,0 +1,41 @@
+From cbc5a3c0200aa6c2cf8d6798d69a21501557c83f Mon Sep 17 00:00:00 2001
+From: Ryan Hill <rhill@gentoo.org>
+Date: Sat, 31 May 2014 08:26:34 -0400
+Subject: [PATCH 05/10] Fix typo
+
+This patch was borrowed from upstream, commit
+cbc5a3c0200aa6c2cf8d6798d69a21501557c83f, and will be part of the next
+3.1.1 release.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ include/ffi.h.in | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/include/ffi.h.in b/include/ffi.h.in
+index 93c776f..70c6179 100644
+--- a/include/ffi.h.in
++++ b/include/ffi.h.in
+@@ -1,5 +1,5 @@
+ /* -----------------------------------------------------------------*-C-*-
+-   libffi @VERSION@ - Copyright (c) 2011 Anthony Green
++   libffi @VERSION@ - Copyright (c) 2011, 2014 Anthony Green
+                     - Copyright (c) 1996-2003, 2007, 2008 Red Hat, Inc.
+    Permission is hereby granted, free of charge, to any person
+@@ -221,10 +221,10 @@ typedef struct {
+ #endif
+ } ffi_cif;
+-#if HAVE_LONG_DOUBLE_VARIANT
++#if @HAVE_LONG_DOUBLE_VARIANT@
+ /* Used to adjust size/alignment of ffi types.  */
+ void ffi_prep_types (ffi_abi abi);
+-# endif
++#endif
+ /* Used internally, but overridden by some architectures */
+ ffi_status ffi_prep_cif_core(ffi_cif *cif,
+-- 
+2.0.0
+
diff --git a/package/libffi/0004-Add-missing-GNU-stack-markings-in-win32.S.patch b/package/libffi/0004-Add-missing-GNU-stack-markings-in-win32.S.patch
new file mode 100644 (file)
index 0000000..6097287
--- /dev/null
@@ -0,0 +1,36 @@
+From 978c9540154d320525488db1b7049277122f736d Mon Sep 17 00:00:00 2001
+From: Samuli Suominen <ssuominen@gentoo.org>
+Date: Sat, 31 May 2014 08:53:10 -0400
+Subject: [PATCH 06/10] Add missing GNU stack markings in win32.S
+
+This patch was borrowed from upstream, commit
+978c9540154d320525488db1b7049277122f736d, and will be part of the next
+3.1.1 release.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ src/x86/win32.S | 6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/src/x86/win32.S b/src/x86/win32.S
+index daf0e79..e42baf2 100644
+--- a/src/x86/win32.S
++++ b/src/x86/win32.S
+@@ -1,5 +1,6 @@
+ /* -----------------------------------------------------------------------
+-   win32.S - Copyright (c) 1996, 1998, 2001, 2002, 2009  Red Hat, Inc.
++   win32.S - Copyright (c) 2014  Anthony Green
++           Copyright (c) 1996, 1998, 2001, 2002, 2009  Red Hat, Inc.
+            Copyright (c) 2001  John Beniton
+            Copyright (c) 2002  Ranjit Mathew
+            Copyright (c) 2009  Daniel Witte
+@@ -1304,3 +1305,6 @@ L_ffi_closure_SYSV_inner$stub:
+ #endif /* !_MSC_VER */
++#if defined __ELF__ && defined __linux__
++      .section        .note.GNU-stack,"",@progbits
++#endif
+-- 
+2.0.0
+
diff --git a/package/libffi/0005-Fix-paths-in-libffi.pc.in.patch b/package/libffi/0005-Fix-paths-in-libffi.pc.in.patch
new file mode 100644 (file)
index 0000000..fd110a6
--- /dev/null
@@ -0,0 +1,46 @@
+From ad0d1d239afc7ad09203847793dcc020856d1035 Mon Sep 17 00:00:00 2001
+From: Samuli Suominen <ssuominen@gentoo.org>
+Date: Thu, 12 Jun 2014 06:30:21 -0400
+Subject: [PATCH 09/10] Fix paths in libffi.pc.in
+
+This patch was borrowed from upstream, commit
+ad0d1d239afc7ad09203847793dcc020856d1035, and will be part of the next
+3.1.1 release.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ configure.ac | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 4f7fe3f..bbc1a9d 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -590,11 +590,11 @@ AC_ARG_ENABLE(purify-safety,
+ if test "x$GCC" = "xyes"; then
+   if test -n "$with_cross_host" &&
+      test x"$with_cross_host" != x"no"; then
+-    toolexecdir='$(exec_prefix)/$(target_alias)'
+-    toolexeclibdir='$(toolexecdir)/lib'
++    toolexecdir="${exec_prefix}"/'$(target_alias)'
++    toolexeclibdir="${toolexecdir}"/lib
+   else
+-    toolexecdir='$(libdir)/gcc-lib/$(target_alias)'
+-    toolexeclibdir='$(libdir)'
++    toolexecdir="${libdir}"/gcc-lib/'$(target_alias)'
++    toolexeclibdir="${libdir}"
+   fi
+   multi_os_directory=`$CC $CFLAGS -print-multi-os-directory`
+   case $multi_os_directory in
+@@ -603,7 +603,7 @@ if test "x$GCC" = "xyes"; then
+   esac
+   AC_SUBST(toolexecdir)
+ else
+-  toolexeclibdir='$(libdir)'
++  toolexeclibdir="${libdir}"
+ fi
+ AC_SUBST(toolexeclibdir)
+-- 
+2.0.0
+
diff --git a/package/libffi/libffi-001-Fix-installation-location-of-libffi.patch b/package/libffi/libffi-001-Fix-installation-location-of-libffi.patch
deleted file mode 100644 (file)
index 56e08f7..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-From 102c02de867bfe831b5366c89d66bcf170db962e Mon Sep 17 00:00:00 2001
-From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-Date: Thu, 7 Feb 2013 22:26:56 +0100
-Subject: [PATCH] Fix installation location of libffi
-
-The libffi is currently declared as toolexeclib_LTLIBRARIES. In many
-cases, toolexeclib libraries will be installed in /usr/lib, so it
-doesn't make any difference.
-
-However, with multilib toolchains, they get installed in a
-subdirectory of /usr/lib/. For example, with a Sourcery CodeBench
-PowerPC toolchain, if the e500mc multilib variant is used, the libffi
-library gets installed in /usr/lib/te500mc/. This is due to the
-following code in the configure script:
-
-  multi_os_directory=`$CC -print-multi-os-directory`
-  case $multi_os_directory in
-    .) ;; # Avoid trailing /.
-    *) toolexeclibdir=$toolexeclibdir/$multi_os_directory ;;
-  esac
-
-Once the library is installed in /usr/lib/te500mc/, nothing works
-because this installation location is inconsistent with the
-installation location declared in libffi.pc.
-
-So, instead of using this bizarre toolexeclib_LTLIBRARIES, simply use
-the more standard lib_LTLIBRARIES, which ensures that the libffi
-library is always installed in /usr/lib.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
----
- Makefile.am |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Makefile.am b/Makefile.am
-index 6f669ca..b60bcc1 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -93,7 +93,7 @@ FLAGS_TO_PASS = $(AM_MAKEFLAGS)
- MAKEOVERRIDES=
--toolexeclib_LTLIBRARIES = libffi.la
-+lib_LTLIBRARIES = libffi.la
- noinst_LTLIBRARIES = libffi_convenience.la
- libffi_la_SOURCES = src/prep_cif.c src/types.c \
--- 
-1.7.9.5
-
diff --git a/package/libffi/libffi-002-Fix-use-of-compact-eh-frames-on-MIPS.patch b/package/libffi/libffi-002-Fix-use-of-compact-eh-frames-on-MIPS.patch
deleted file mode 100644 (file)
index 15d1c96..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-Newer MIPS toolchains use a different (compact) eh_frame format.
-libffi don't like them, so we have to switch to the older format.
-
-This patch add -mno-compact-eh to CFLAGS when compiling for
-Mips and compiler support it.
-
-Signed-off-by: Jérôme Pouiller <jezz@sysmic.org>
-
---- a/configure.ac     2013-08-08 14:53:11.884267155 +0200
-+++ b/configure.ac     2013-08-08 14:54:14.437493244 +0200
-@@ -430,6 +430,16 @@
- AM_CONDITIONAL(FFI_EXEC_TRAMPOLINE_TABLE, test x$FFI_EXEC_TRAMPOLINE_TABLE = x1)
- AC_SUBST(FFI_EXEC_TRAMPOLINE_TABLE)
-+if test x$TARGET = xMIPS; then
-+    save_CFLAGS="$CFLAGS"
-+    CFLAGS=-mno-compact-eh
-+    AC_MSG_CHECKING([whether the C compiler needs -mno-compact-eh])
-+    AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])],
-+                      [AC_MSG_RESULT([yes])]; [save_CFLAGS="$save_CFLAGS -mno-compact-eh"],
-+                      [AC_MSG_RESULT([no])])
-+    CFLAGS="$save_CFLAGS"
-+fi
-+
- if test x$TARGET = xX86_64; then
-     AC_CACHE_CHECK([assembler supports unwind section type],
-       libffi_cv_as_x86_64_unwind_section_type, [
diff --git a/package/libffi/libffi-003-fix-typo.patch b/package/libffi/libffi-003-fix-typo.patch
deleted file mode 100644 (file)
index f20804b..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-From cbc5a3c0200aa6c2cf8d6798d69a21501557c83f Mon Sep 17 00:00:00 2001
-From: Ryan Hill <rhill@gentoo.org>
-Date: Sat, 31 May 2014 08:26:34 -0400
-Subject: [PATCH 05/10] Fix typo
-
-This patch was borrowed from upstream, commit
-cbc5a3c0200aa6c2cf8d6798d69a21501557c83f, and will be part of the next
-3.1.1 release.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
----
- include/ffi.h.in | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/include/ffi.h.in b/include/ffi.h.in
-index 93c776f..70c6179 100644
---- a/include/ffi.h.in
-+++ b/include/ffi.h.in
-@@ -1,5 +1,5 @@
- /* -----------------------------------------------------------------*-C-*-
--   libffi @VERSION@ - Copyright (c) 2011 Anthony Green
-+   libffi @VERSION@ - Copyright (c) 2011, 2014 Anthony Green
-                     - Copyright (c) 1996-2003, 2007, 2008 Red Hat, Inc.
-    Permission is hereby granted, free of charge, to any person
-@@ -221,10 +221,10 @@ typedef struct {
- #endif
- } ffi_cif;
--#if HAVE_LONG_DOUBLE_VARIANT
-+#if @HAVE_LONG_DOUBLE_VARIANT@
- /* Used to adjust size/alignment of ffi types.  */
- void ffi_prep_types (ffi_abi abi);
--# endif
-+#endif
- /* Used internally, but overridden by some architectures */
- ffi_status ffi_prep_cif_core(ffi_cif *cif,
--- 
-2.0.0
-
diff --git a/package/libffi/libffi-004-Add-missing-GNU-stack-markings-in-win32.S.patch b/package/libffi/libffi-004-Add-missing-GNU-stack-markings-in-win32.S.patch
deleted file mode 100644 (file)
index 6097287..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-From 978c9540154d320525488db1b7049277122f736d Mon Sep 17 00:00:00 2001
-From: Samuli Suominen <ssuominen@gentoo.org>
-Date: Sat, 31 May 2014 08:53:10 -0400
-Subject: [PATCH 06/10] Add missing GNU stack markings in win32.S
-
-This patch was borrowed from upstream, commit
-978c9540154d320525488db1b7049277122f736d, and will be part of the next
-3.1.1 release.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
----
- src/x86/win32.S | 6 +++++-
- 1 file changed, 5 insertions(+), 1 deletion(-)
-
-diff --git a/src/x86/win32.S b/src/x86/win32.S
-index daf0e79..e42baf2 100644
---- a/src/x86/win32.S
-+++ b/src/x86/win32.S
-@@ -1,5 +1,6 @@
- /* -----------------------------------------------------------------------
--   win32.S - Copyright (c) 1996, 1998, 2001, 2002, 2009  Red Hat, Inc.
-+   win32.S - Copyright (c) 2014  Anthony Green
-+           Copyright (c) 1996, 1998, 2001, 2002, 2009  Red Hat, Inc.
-            Copyright (c) 2001  John Beniton
-            Copyright (c) 2002  Ranjit Mathew
-            Copyright (c) 2009  Daniel Witte
-@@ -1304,3 +1305,6 @@ L_ffi_closure_SYSV_inner$stub:
- #endif /* !_MSC_VER */
-+#if defined __ELF__ && defined __linux__
-+      .section        .note.GNU-stack,"",@progbits
-+#endif
--- 
-2.0.0
-
diff --git a/package/libffi/libffi-005-Fix-paths-in-libffi.pc.in.patch b/package/libffi/libffi-005-Fix-paths-in-libffi.pc.in.patch
deleted file mode 100644 (file)
index fd110a6..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-From ad0d1d239afc7ad09203847793dcc020856d1035 Mon Sep 17 00:00:00 2001
-From: Samuli Suominen <ssuominen@gentoo.org>
-Date: Thu, 12 Jun 2014 06:30:21 -0400
-Subject: [PATCH 09/10] Fix paths in libffi.pc.in
-
-This patch was borrowed from upstream, commit
-ad0d1d239afc7ad09203847793dcc020856d1035, and will be part of the next
-3.1.1 release.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
----
- configure.ac | 10 +++++-----
- 1 file changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 4f7fe3f..bbc1a9d 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -590,11 +590,11 @@ AC_ARG_ENABLE(purify-safety,
- if test "x$GCC" = "xyes"; then
-   if test -n "$with_cross_host" &&
-      test x"$with_cross_host" != x"no"; then
--    toolexecdir='$(exec_prefix)/$(target_alias)'
--    toolexeclibdir='$(toolexecdir)/lib'
-+    toolexecdir="${exec_prefix}"/'$(target_alias)'
-+    toolexeclibdir="${toolexecdir}"/lib
-   else
--    toolexecdir='$(libdir)/gcc-lib/$(target_alias)'
--    toolexeclibdir='$(libdir)'
-+    toolexecdir="${libdir}"/gcc-lib/'$(target_alias)'
-+    toolexeclibdir="${libdir}"
-   fi
-   multi_os_directory=`$CC $CFLAGS -print-multi-os-directory`
-   case $multi_os_directory in
-@@ -603,7 +603,7 @@ if test "x$GCC" = "xyes"; then
-   esac
-   AC_SUBST(toolexecdir)
- else
--  toolexeclibdir='$(libdir)'
-+  toolexeclibdir="${libdir}"
- fi
- AC_SUBST(toolexeclibdir)
--- 
-2.0.0
-
diff --git a/package/libfslvpuwrap/0001-vpu_wrapper-fix-tests-of-return-value-from-IOGetVirt.patch b/package/libfslvpuwrap/0001-vpu_wrapper-fix-tests-of-return-value-from-IOGetVirt.patch
new file mode 100644 (file)
index 0000000..3927430
--- /dev/null
@@ -0,0 +1,44 @@
+From 7ca66c10c05168c7d342df7c7a70d4a1ae0629f7 Mon Sep 17 00:00:00 2001
+From: Eric Nelson <eric.nelson@boundarydevices.com>
+Date: Sat, 28 Jun 2014 09:45:09 -0700
+Subject: [PATCH] vpu_wrapper: fix tests of return value from IOGetVirtMem
+
+IOGetVirtMem() returns a pointer or specifically -1 (MAP_FAILED)
+in the case of failure.
+
+This problem is being discussed upstream at
+https://lists.yoctoproject.org/pipermail/meta-freescale/2014-June/008993.html.
+
+Upstream-Status: Pending
+
+Signed-off-by: Laci Tele <laci@boundarydevices.com>
+Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
+---
+ vpu_wrapper.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/vpu_wrapper.c b/vpu_wrapper.c
+index 9249174..148c5df 100755
+--- a/vpu_wrapper.c
++++ b/vpu_wrapper.c
+@@ -6653,7 +6653,7 @@ VpuDecRetCode VPU_DecGetMem(VpuMemDesc* pInOutMem)
+               return VPU_DEC_RET_FAILURE;
+       }
+       ret=IOGetVirtMem(&buff);
+-      if(ret==0) //if(ret!=RETCODE_SUCCESS)
++      if(ret == -1) //if(ret==MAP_FAILED)
+       {
+               VPU_ERROR("%s: get virtual memory failure: size=%d, ret=%d \r\n",__FUNCTION__,buff.size,ret);
+               return VPU_DEC_RET_FAILURE;
+@@ -8277,7 +8277,7 @@ VpuEncRetCode VPU_EncGetMem(VpuMemDesc* pInOutMem)
+               return VPU_ENC_RET_FAILURE;
+       }
+       ret=IOGetVirtMem(&buff);
+-      if(ret==0) //if(ret!=RETCODE_SUCCESS)
++      if(ret == -1) //if(ret==MAP_FAILED)
+       {
+               VPU_ENC_ERROR("%s: get virtual memory failure: size=%d, ret=%d \r\n",__FUNCTION__,buff.size,(UINT32)ret);
+               return VPU_ENC_RET_FAILURE;
+-- 
+1.9.1
+
diff --git a/package/libfslvpuwrap/libfslvpuwrap-0001-vpu_wrapper-fix-tests-of-return-value-from-IOGetVirt.patch b/package/libfslvpuwrap/libfslvpuwrap-0001-vpu_wrapper-fix-tests-of-return-value-from-IOGetVirt.patch
deleted file mode 100644 (file)
index 3927430..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-From 7ca66c10c05168c7d342df7c7a70d4a1ae0629f7 Mon Sep 17 00:00:00 2001
-From: Eric Nelson <eric.nelson@boundarydevices.com>
-Date: Sat, 28 Jun 2014 09:45:09 -0700
-Subject: [PATCH] vpu_wrapper: fix tests of return value from IOGetVirtMem
-
-IOGetVirtMem() returns a pointer or specifically -1 (MAP_FAILED)
-in the case of failure.
-
-This problem is being discussed upstream at
-https://lists.yoctoproject.org/pipermail/meta-freescale/2014-June/008993.html.
-
-Upstream-Status: Pending
-
-Signed-off-by: Laci Tele <laci@boundarydevices.com>
-Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
----
- vpu_wrapper.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/vpu_wrapper.c b/vpu_wrapper.c
-index 9249174..148c5df 100755
---- a/vpu_wrapper.c
-+++ b/vpu_wrapper.c
-@@ -6653,7 +6653,7 @@ VpuDecRetCode VPU_DecGetMem(VpuMemDesc* pInOutMem)
-               return VPU_DEC_RET_FAILURE;
-       }
-       ret=IOGetVirtMem(&buff);
--      if(ret==0) //if(ret!=RETCODE_SUCCESS)
-+      if(ret == -1) //if(ret==MAP_FAILED)
-       {
-               VPU_ERROR("%s: get virtual memory failure: size=%d, ret=%d \r\n",__FUNCTION__,buff.size,ret);
-               return VPU_DEC_RET_FAILURE;
-@@ -8277,7 +8277,7 @@ VpuEncRetCode VPU_EncGetMem(VpuMemDesc* pInOutMem)
-               return VPU_ENC_RET_FAILURE;
-       }
-       ret=IOGetVirtMem(&buff);
--      if(ret==0) //if(ret!=RETCODE_SUCCESS)
-+      if(ret == -1) //if(ret==MAP_FAILED)
-       {
-               VPU_ENC_ERROR("%s: get virtual memory failure: size=%d, ret=%d \r\n",__FUNCTION__,buff.size,(UINT32)ret);
-               return VPU_ENC_RET_FAILURE;
--- 
-1.9.1
-
diff --git a/package/libfuse/0001-fix-aarch64-build.patch b/package/libfuse/0001-fix-aarch64-build.patch
new file mode 100644 (file)
index 0000000..3b88687
--- /dev/null
@@ -0,0 +1,22 @@
+Fix build on the AArch64 platform
+
+Upstream-Status: Submitted
+
+Signed-off-by: Riku Voipio <riku.voipio@linaro.org>
+
+--- a/include/fuse_kernel.h
++++ b/include/fuse_kernel.h
+@@ -88,12 +88,7 @@
+ #ifndef _LINUX_FUSE_H
+ #define _LINUX_FUSE_H
+-#include <sys/types.h>
+-#define __u64 uint64_t
+-#define __s64 int64_t
+-#define __u32 uint32_t
+-#define __s32 int32_t
+-#define __u16 uint16_t
++#include <linux/types.h>
+ /*
+  * Version negotiation:
diff --git a/package/libfuse/libfuse-fix-aarch64-build.patch b/package/libfuse/libfuse-fix-aarch64-build.patch
deleted file mode 100644 (file)
index 3b88687..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-Fix build on the AArch64 platform
-
-Upstream-Status: Submitted
-
-Signed-off-by: Riku Voipio <riku.voipio@linaro.org>
-
---- a/include/fuse_kernel.h
-+++ b/include/fuse_kernel.h
-@@ -88,12 +88,7 @@
- #ifndef _LINUX_FUSE_H
- #define _LINUX_FUSE_H
--#include <sys/types.h>
--#define __u64 uint64_t
--#define __s64 int64_t
--#define __u32 uint32_t
--#define __s32 int32_t
--#define __u16 uint16_t
-+#include <linux/types.h>
- /*
-  * Version negotiation:
diff --git a/package/libgail/0001-Relax-X11-dependencies.patch b/package/libgail/0001-Relax-X11-dependencies.patch
new file mode 100644 (file)
index 0000000..97e5656
--- /dev/null
@@ -0,0 +1,42 @@
+From cca72c48b5643fa62e1d55b7b181e147f5ba7fe9 Mon Sep 17 00:00:00 2001
+From: Lionel Landwerlin <llandwerlin@gmail.com>
+Date: Sun, 28 Mar 2010 21:47:38 +0200
+Subject: [PATCH] Relax X11 dependency
+
+Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
+---
+ configure.in      |    4 +++-
+ gail/gailwindow.c |    2 +-
+ 2 files changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/configure.in b/configure.in
+index 3801655..abaf417 100644
+--- a/configure.in
++++ b/configure.in
+@@ -86,7 +86,9 @@ GTK_REQUIRED_VERSION=2.9.4
+ PKG_CHECK_MODULES(DEP, $ATK_PACKAGES >= $ATK_REQUIRED_VERSION \
+       $GTK_PACKAGES >= $GTK_REQUIRED_VERSION)
+-if test "$gail_native_win32" != "yes"; then
++AC_ARG_ENABLE(x, [      --disable-x     disable x11 backend ],x11_backend=no,x11_backend=yes)
++
++if test "$gail_native_win32" != "yes" -a "$x11_backend" != "no"; then
+ PKG_CHECK_MODULES(X, x11, :, [
+ # pkg-config modules not found (only present since X11R7 aka Xorg); use
+diff --git a/gail/gailwindow.c b/gail/gailwindow.c
+index 616b25e..add454b 100644
+--- a/gail/gailwindow.c
++++ b/gail/gailwindow.c
+@@ -1071,7 +1071,7 @@ gail_window_get_mdi_zorder (AtkComponent *component)
+   return get_window_zorder (widget->window);
+ }
+-#elif defined (GDK_WINDOWING_WIN32)
++#elif defined (GDK_WINDOWING_WIN32) || defined (GDK_WINDOWING_DIRECTFB)
+ static gint
+ gail_window_get_mdi_zorder (AtkComponent *component)
+-- 
+1.7.0.2
+
diff --git a/package/libgail/libgail-1.22.3-Relax-X11-dependencies.patch b/package/libgail/libgail-1.22.3-Relax-X11-dependencies.patch
deleted file mode 100644 (file)
index 97e5656..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-From cca72c48b5643fa62e1d55b7b181e147f5ba7fe9 Mon Sep 17 00:00:00 2001
-From: Lionel Landwerlin <llandwerlin@gmail.com>
-Date: Sun, 28 Mar 2010 21:47:38 +0200
-Subject: [PATCH] Relax X11 dependency
-
-Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
----
- configure.in      |    4 +++-
- gail/gailwindow.c |    2 +-
- 2 files changed, 4 insertions(+), 2 deletions(-)
-
-diff --git a/configure.in b/configure.in
-index 3801655..abaf417 100644
---- a/configure.in
-+++ b/configure.in
-@@ -86,7 +86,9 @@ GTK_REQUIRED_VERSION=2.9.4
- PKG_CHECK_MODULES(DEP, $ATK_PACKAGES >= $ATK_REQUIRED_VERSION \
-       $GTK_PACKAGES >= $GTK_REQUIRED_VERSION)
--if test "$gail_native_win32" != "yes"; then
-+AC_ARG_ENABLE(x, [      --disable-x     disable x11 backend ],x11_backend=no,x11_backend=yes)
-+
-+if test "$gail_native_win32" != "yes" -a "$x11_backend" != "no"; then
- PKG_CHECK_MODULES(X, x11, :, [
- # pkg-config modules not found (only present since X11R7 aka Xorg); use
-diff --git a/gail/gailwindow.c b/gail/gailwindow.c
-index 616b25e..add454b 100644
---- a/gail/gailwindow.c
-+++ b/gail/gailwindow.c
-@@ -1071,7 +1071,7 @@ gail_window_get_mdi_zorder (AtkComponent *component)
-   return get_window_zorder (widget->window);
- }
--#elif defined (GDK_WINDOWING_WIN32)
-+#elif defined (GDK_WINDOWING_WIN32) || defined (GDK_WINDOWING_DIRECTFB)
- static gint
- gail_window_get_mdi_zorder (AtkComponent *component)
--- 
-1.7.0.2
-
diff --git a/package/libgc/0001-Fix-build-on-Linux-x86_64-under-uClibc.patch b/package/libgc/0001-Fix-build-on-Linux-x86_64-under-uClibc.patch
new file mode 100644 (file)
index 0000000..9190a01
--- /dev/null
@@ -0,0 +1,32 @@
+From 9cbd876ebc6ef8cbe647d4a914d03f527f822424 Mon Sep 17 00:00:00 2001
+Message-Id: <9cbd876ebc6ef8cbe647d4a914d03f527f822424.1398253762.git.baruch@tkos.co.il>
+From: Baruch Siach <baruch@tkos.co.il>
+Date: Wed, 23 Apr 2014 14:42:21 +0300
+Subject: [PATCH] Fix build on Linux/x86_64 under uClibc
+
+* include/private/gcconfig.h (GETCONTEXT_FPU_EXCMASK_BUG): don't define for
+uClibc, as it may not have fenv.h
+
+Patch status: sent upstream
+
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+---
+ include/private/gcconfig.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/include/private/gcconfig.h b/include/private/gcconfig.h
+index de7998be0f54..f866cc4ed8cc 100644
+--- a/include/private/gcconfig.h
++++ b/include/private/gcconfig.h
+@@ -2235,7 +2235,7 @@
+              extern int etext[];
+ #            define DATASTART ((ptr_t)((((word) (etext)) + 0xfff) & ~0xfff))
+ #       endif
+-#       if defined(__GLIBC__)
++#       if defined(__GLIBC__) && !defined(__UCLIBC__)
+           /* At present, there's a bug in GLibc getcontext() on         */
+           /* Linux/x64 (it clears FPU exception mask).  We define this  */
+           /* macro to workaround it.                                    */
+-- 
+1.9.2
+
diff --git a/package/libgc/libgc-01-Fix-build-on-Linux-x86_64-under-uClibc.patch b/package/libgc/libgc-01-Fix-build-on-Linux-x86_64-under-uClibc.patch
deleted file mode 100644 (file)
index 9190a01..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-From 9cbd876ebc6ef8cbe647d4a914d03f527f822424 Mon Sep 17 00:00:00 2001
-Message-Id: <9cbd876ebc6ef8cbe647d4a914d03f527f822424.1398253762.git.baruch@tkos.co.il>
-From: Baruch Siach <baruch@tkos.co.il>
-Date: Wed, 23 Apr 2014 14:42:21 +0300
-Subject: [PATCH] Fix build on Linux/x86_64 under uClibc
-
-* include/private/gcconfig.h (GETCONTEXT_FPU_EXCMASK_BUG): don't define for
-uClibc, as it may not have fenv.h
-
-Patch status: sent upstream
-
-Signed-off-by: Baruch Siach <baruch@tkos.co.il>
----
- include/private/gcconfig.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/include/private/gcconfig.h b/include/private/gcconfig.h
-index de7998be0f54..f866cc4ed8cc 100644
---- a/include/private/gcconfig.h
-+++ b/include/private/gcconfig.h
-@@ -2235,7 +2235,7 @@
-              extern int etext[];
- #            define DATASTART ((ptr_t)((((word) (etext)) + 0xfff) & ~0xfff))
- #       endif
--#       if defined(__GLIBC__)
-+#       if defined(__GLIBC__) && !defined(__UCLIBC__)
-           /* At present, there's a bug in GLibc getcontext() on         */
-           /* Linux/x64 (it clears FPU exception mask).  We define this  */
-           /* macro to workaround it.                                    */
--- 
-1.9.2
-
diff --git a/package/libgcrypt/0001-ac_cv_sys_symbol_underscore.patch b/package/libgcrypt/0001-ac_cv_sys_symbol_underscore.patch
new file mode 100644 (file)
index 0000000..95db0fb
--- /dev/null
@@ -0,0 +1,27 @@
+diff --git a/acinclude.m4 b/acinclude.m4
+index a7bc0fa..1a5bffc 100644
+--- a/acinclude.m4
++++ b/acinclude.m4
+@@ -76,13 +76,14 @@ case "${host}" in
+     i386-emx-os2 | i[3456]86-pc-os2*emx | i386-pc-msdosdjgpp)
+         ac_cv_sys_symbol_underscore=yes
+         ;;
+-    *)
+-      if test "$cross_compiling" = yes; then
+-        if test "x$ac_cv_sys_symbol_underscore" = x ; then
+-           ac_cv_sys_symbol_underscore=yes
+-        fi
+-      else
+-         tmp_do_check="yes"
++    *) if test -z "$ac_cv_sys_symbol_underscore"; then
++         if test "$cross_compiling" = yes; then
++           if test "x$ac_cv_sys_symbol_underscore" = x ; then
++              ac_cv_sys_symbol_underscore=yes
++           fi
++         else
++            tmp_do_check="yes"
++         fi
+       fi
+        ;;
+ esac
diff --git a/package/libgcrypt/0002-reconfigure.patch b/package/libgcrypt/0002-reconfigure.patch
new file mode 100644 (file)
index 0000000..87d29a2
--- /dev/null
@@ -0,0 +1,27 @@
+diff --git a/configure b/configure
+index 70a6d50..8f55d95 100755
+--- a/configure
++++ b/configure
+@@ -22306,14 +22306,15 @@ case "${host}" in
+     i386-emx-os2 | i345686-pc-os2*emx | i386-pc-msdosdjgpp)
+         ac_cv_sys_symbol_underscore=yes
+         ;;
+-    *)
+-      if test "$cross_compiling" = yes; then
+-        if test "x$ac_cv_sys_symbol_underscore" = x ; then
+-           ac_cv_sys_symbol_underscore=yes
++    *)if test -z "$ac_cv_sys_symbol_underscore";then
++        if test "$cross_compiling" = yes; then
++            if test "x$ac_cv_sys_symbol_underscore" = x ; then
++                ac_cv_sys_symbol_underscore=yes
++            fi
++        else
++            tmp_do_check="yes"
++        fi
+         fi
+-      else
+-         tmp_do_check="yes"
+-      fi
+        ;;
+ esac
+ if test "$tmp_do_check" = "yes"; then
diff --git a/package/libgcrypt/libgcrypt-00-ac_cv_sys_symbol_underscore.patch b/package/libgcrypt/libgcrypt-00-ac_cv_sys_symbol_underscore.patch
deleted file mode 100644 (file)
index 95db0fb..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-diff --git a/acinclude.m4 b/acinclude.m4
-index a7bc0fa..1a5bffc 100644
---- a/acinclude.m4
-+++ b/acinclude.m4
-@@ -76,13 +76,14 @@ case "${host}" in
-     i386-emx-os2 | i[3456]86-pc-os2*emx | i386-pc-msdosdjgpp)
-         ac_cv_sys_symbol_underscore=yes
-         ;;
--    *)
--      if test "$cross_compiling" = yes; then
--        if test "x$ac_cv_sys_symbol_underscore" = x ; then
--           ac_cv_sys_symbol_underscore=yes
--        fi
--      else
--         tmp_do_check="yes"
-+    *) if test -z "$ac_cv_sys_symbol_underscore"; then
-+         if test "$cross_compiling" = yes; then
-+           if test "x$ac_cv_sys_symbol_underscore" = x ; then
-+              ac_cv_sys_symbol_underscore=yes
-+           fi
-+         else
-+            tmp_do_check="yes"
-+         fi
-       fi
-        ;;
- esac
diff --git a/package/libgcrypt/libgcrypt-01-reconfigure.patch b/package/libgcrypt/libgcrypt-01-reconfigure.patch
deleted file mode 100644 (file)
index 87d29a2..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-diff --git a/configure b/configure
-index 70a6d50..8f55d95 100755
---- a/configure
-+++ b/configure
-@@ -22306,14 +22306,15 @@ case "${host}" in
-     i386-emx-os2 | i345686-pc-os2*emx | i386-pc-msdosdjgpp)
-         ac_cv_sys_symbol_underscore=yes
-         ;;
--    *)
--      if test "$cross_compiling" = yes; then
--        if test "x$ac_cv_sys_symbol_underscore" = x ; then
--           ac_cv_sys_symbol_underscore=yes
-+    *)if test -z "$ac_cv_sys_symbol_underscore";then
-+        if test "$cross_compiling" = yes; then
-+            if test "x$ac_cv_sys_symbol_underscore" = x ; then
-+                ac_cv_sys_symbol_underscore=yes
-+            fi
-+        else
-+            tmp_do_check="yes"
-+        fi
-         fi
--      else
--         tmp_do_check="yes"
--      fi
-        ;;
- esac
- if test "$tmp_do_check" = "yes"; then
diff --git a/package/libgeotiff/0001-use-pkg-config.patch b/package/libgeotiff/0001-use-pkg-config.patch
new file mode 100644 (file)
index 0000000..a4b11f1
--- /dev/null
@@ -0,0 +1,79 @@
+Use pkg-config for libtiff detection
+
+Using pkg-config allows proper behavior in static-only contexts: the
+libtiff library might depend on libz and libjpeg.
+
+This patch also fixes a few other issues in the configure.ac script
+that prevents autoreconf to work, or proper detection of the proj
+library.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/configure.ac
+===================================================================
+--- a/configure.ac
++++ b/configure.ac
+@@ -196,39 +196,12 @@
+ TIFF_CONFIG="no"
+-AC_ARG_WITH(libtiff, [  --with-libtiff=dir      Use libtiff in directory dir],,)
+-
+-if test "$with_libtiff" != "" ; then
+-  if test -f $with_libtiff/include/tiffio.h -a -d $with_libtiff/lib ; then
+-    LIBS="-L$with_libtiff/lib -ltiff $LIBS"
+-    TIFF_INC=-I$with_libtiff/include
+-  else
+-    LIBS="-L$with_libtiff -ltiff $LIBS"
+-    TIFF_INC=-I$with_libtiff
+-  fi
+-  LIBS_SAVED="$LIBS"
+-  AC_CHECK_LIB(tiff,TIFFOpen,[TIFF_CONFIG=yes],
+-               AC_MSG_ERROR([failed to link with -ltiff to find TIFFOpen]),-lm)
+-  AC_CHECK_LIB(tiff,TIFFMergeFieldInfo,[TIFF_CONFIG=yes],
+-               AC_MSG_ERROR([Libtiff 3.6.0 Beta or later required for this version of
+-libgeotiff. Please upgrade or use an older version of libgeotiff.]),-lm)
+-  LIBS="$LIBS_SAVED"
+-else
+-  AC_CHECK_LIB(tiff,TIFFOpen,[TIFF_CONFIG=yes],
+-               AC_MSG_ERROR([You will need to substantially rewrite libxtiff to
+-build libgeotiff without libtiff]),-lm)
+-  LIBS_SAVED="$LIBS"
+-  AC_CHECK_LIB(tiff,TIFFMergeFieldInfo,[TIFF_CONFIG=yes],
+-               AC_MSG_ERROR([Libtiff 3.6.0 Beta or later required for this version of
+-libgeotiff. Please upgrade libtiff or use an older version of libgeotiff.]),-lm)
+-  LIBS="$LIBS -ltiff"
+-  TIFF_INC=
+-  TIFF_CONFIG="yes"
+-fi
+-
++PKG_CHECK_MODULES(LIBTIFF, libtiff-4)
++TIFF_INC="$LIBTIFF_CFLAGS"
++LIBS="$LIBS $LIBTIFF_LIBS"
++TIFF_CONFIG="yes"
+ AC_SUBST([TIFF_INC])
+-AC_SUBST([TIFF_PREFIX])
+ AM_CONDITIONAL([TIFF_IS_CONFIG], [test ! x$TIFF_CONFIG = xno])
+ dnl
+@@ -280,15 +253,16 @@
+   PROJ_INC=-I$PROJ_INC
+   AC_SUBST(PROJ_INC,$PROJ_INC)
+-  AC_DEFINE(HAVE_PROJECTS_H)
++  AC_DEFINE([HAVE_PROJECTS_H], [], [Whether proj library header is available])
+   AC_DEFINE(HAVE_LIBPROJ)
+   AC_SUBST([HAVE_LIBPROJ])
+   PROJ_CONFIG="yes"
+-
+ else
+   AC_CHECK_LIB(proj,pj_init,,,-lm)
+   AC_CHECK_HEADERS(proj_api.h,,)
+-  PROJ_CONFIG="yes"
++  if "$ac_cv_lib_proj_pj_init" = "yes" -a "$ac_cv_header_proj_api_h" = "yes"; then
++    PROJ_CONFIG="yes"
++  fi
+ fi
+ AM_CONDITIONAL([PROJ_IS_CONFIG], [test ! x$PROJ_CONFIG = xno])
diff --git a/package/libgeotiff/libgeotiff-0001-use-pkg-config.patch b/package/libgeotiff/libgeotiff-0001-use-pkg-config.patch
deleted file mode 100644 (file)
index a4b11f1..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-Use pkg-config for libtiff detection
-
-Using pkg-config allows proper behavior in static-only contexts: the
-libtiff library might depend on libz and libjpeg.
-
-This patch also fixes a few other issues in the configure.ac script
-that prevents autoreconf to work, or proper detection of the proj
-library.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/configure.ac
-===================================================================
---- a/configure.ac
-+++ b/configure.ac
-@@ -196,39 +196,12 @@
- TIFF_CONFIG="no"
--AC_ARG_WITH(libtiff, [  --with-libtiff=dir      Use libtiff in directory dir],,)
--
--if test "$with_libtiff" != "" ; then
--  if test -f $with_libtiff/include/tiffio.h -a -d $with_libtiff/lib ; then
--    LIBS="-L$with_libtiff/lib -ltiff $LIBS"
--    TIFF_INC=-I$with_libtiff/include
--  else
--    LIBS="-L$with_libtiff -ltiff $LIBS"
--    TIFF_INC=-I$with_libtiff
--  fi
--  LIBS_SAVED="$LIBS"
--  AC_CHECK_LIB(tiff,TIFFOpen,[TIFF_CONFIG=yes],
--               AC_MSG_ERROR([failed to link with -ltiff to find TIFFOpen]),-lm)
--  AC_CHECK_LIB(tiff,TIFFMergeFieldInfo,[TIFF_CONFIG=yes],
--               AC_MSG_ERROR([Libtiff 3.6.0 Beta or later required for this version of
--libgeotiff. Please upgrade or use an older version of libgeotiff.]),-lm)
--  LIBS="$LIBS_SAVED"
--else
--  AC_CHECK_LIB(tiff,TIFFOpen,[TIFF_CONFIG=yes],
--               AC_MSG_ERROR([You will need to substantially rewrite libxtiff to
--build libgeotiff without libtiff]),-lm)
--  LIBS_SAVED="$LIBS"
--  AC_CHECK_LIB(tiff,TIFFMergeFieldInfo,[TIFF_CONFIG=yes],
--               AC_MSG_ERROR([Libtiff 3.6.0 Beta or later required for this version of
--libgeotiff. Please upgrade libtiff or use an older version of libgeotiff.]),-lm)
--  LIBS="$LIBS -ltiff"
--  TIFF_INC=
--  TIFF_CONFIG="yes"
--fi
--
-+PKG_CHECK_MODULES(LIBTIFF, libtiff-4)
-+TIFF_INC="$LIBTIFF_CFLAGS"
-+LIBS="$LIBS $LIBTIFF_LIBS"
-+TIFF_CONFIG="yes"
- AC_SUBST([TIFF_INC])
--AC_SUBST([TIFF_PREFIX])
- AM_CONDITIONAL([TIFF_IS_CONFIG], [test ! x$TIFF_CONFIG = xno])
- dnl
-@@ -280,15 +253,16 @@
-   PROJ_INC=-I$PROJ_INC
-   AC_SUBST(PROJ_INC,$PROJ_INC)
--  AC_DEFINE(HAVE_PROJECTS_H)
-+  AC_DEFINE([HAVE_PROJECTS_H], [], [Whether proj library header is available])
-   AC_DEFINE(HAVE_LIBPROJ)
-   AC_SUBST([HAVE_LIBPROJ])
-   PROJ_CONFIG="yes"
--
- else
-   AC_CHECK_LIB(proj,pj_init,,,-lm)
-   AC_CHECK_HEADERS(proj_api.h,,)
--  PROJ_CONFIG="yes"
-+  if "$ac_cv_lib_proj_pj_init" = "yes" -a "$ac_cv_header_proj_api_h" = "yes"; then
-+    PROJ_CONFIG="yes"
-+  fi
- fi
- AM_CONDITIONAL([PROJ_IS_CONFIG], [test ! x$PROJ_CONFIG = xno])
diff --git a/package/libglib2/0001-optional-ipv6.patch b/package/libglib2/0001-optional-ipv6.patch
new file mode 100644 (file)
index 0000000..cbab1f1
--- /dev/null
@@ -0,0 +1,195 @@
+[PATCH]: fix build on uClibc without IPv6 support
+
+Updated to glib 2.36 by Thomas Petazzoni.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ gio/ginetaddress.c |    9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+Index: b/gio/ginetaddress.c
+===================================================================
+--- a/gio/ginetaddress.c
++++ b/gio/ginetaddress.c
+@@ -21,6 +21,7 @@
+  *          Samuel Cormier-Iijima <sciyoshi@gmail.com>
+  */
++#include <features.h>
+ #include <config.h>
+ #include <string.h>
+@@ -423,7 +424,11 @@
+   return NULL;
+ }
++#if defined(__UCLIBC__) && !defined(__UCLIBC_HAS_IPV6__)
++#define G_INET_ADDRESS_FAMILY_IS_VALID(family) ((family) == AF_INET)
++#else
+ #define G_INET_ADDRESS_FAMILY_IS_VALID(family) ((family) == AF_INET || (family) == AF_INET6)
++#endif
+ /**
+  * g_inet_address_new_from_bytes:
+@@ -472,8 +477,10 @@
+       return g_inet_address_new_from_bytes (addr, family);
+     }
++#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_IPV6__))
+   else
+     return g_inet_address_new_from_bytes (in6addr_loopback.s6_addr, family);
++#endif
+ }
+ /**
+@@ -499,8 +506,10 @@
+       return g_inet_address_new_from_bytes (addr, family);
+     }
++#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_IPV6__))
+   else
+     return g_inet_address_new_from_bytes (in6addr_any.s6_addr, family);
++#endif
+ }
+Index: b/gio/gsocket.c
+===================================================================
+--- a/gio/gsocket.c
++++ b/gio/gsocket.c
+@@ -425,7 +425,9 @@
+   switch (family)
+     {
+      case G_SOCKET_FAMILY_IPV4:
++#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_IPV6__))
+      case G_SOCKET_FAMILY_IPV6:
++#endif
+        socket->priv->family = address.ss_family;
+        switch (socket->priv->type)
+        {
+@@ -1321,11 +1323,13 @@
+       g_socket_get_option (socket, IPPROTO_IP, IP_TTL,
+                          &value, &error);
+     }
++#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_IPV6__))
+   else if (socket->priv->family == G_SOCKET_FAMILY_IPV6)
+     {
+       g_socket_get_option (socket, IPPROTO_IPV6, IPV6_UNICAST_HOPS,
+                          &value, &error);
+     }
++#endif
+   else
+     g_return_val_if_reached (0);
+@@ -1362,6 +1366,7 @@
+       g_socket_set_option (socket, IPPROTO_IP, IP_TTL,
+                          ttl, &error);
+     }
++#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_IPV6__))
+   else if (socket->priv->family == G_SOCKET_FAMILY_IPV6)
+     {
+       g_socket_set_option (socket, IPPROTO_IP, IP_TTL,
+@@ -1369,6 +1374,7 @@
+       g_socket_set_option (socket, IPPROTO_IPV6, IPV6_UNICAST_HOPS,
+                          ttl, &error);
+     }
++#endif
+   else
+     g_return_if_reached ();
+@@ -1470,11 +1476,13 @@
+       g_socket_get_option (socket, IPPROTO_IP, IP_MULTICAST_LOOP,
+                          &value, &error);
+     }
++#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_IPV6__))
+   else if (socket->priv->family == G_SOCKET_FAMILY_IPV6)
+     {
+       g_socket_get_option (socket, IPPROTO_IPV6, IPV6_MULTICAST_LOOP,
+                          &value, &error);
+     }
++#endif
+   else
+     g_return_val_if_reached (FALSE);
+@@ -1515,6 +1523,7 @@
+       g_socket_set_option (socket, IPPROTO_IP, IP_MULTICAST_LOOP,
+                          loopback, &error);
+     }
++#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_IPV6__))
+   else if (socket->priv->family == G_SOCKET_FAMILY_IPV6)
+     {
+       g_socket_set_option (socket, IPPROTO_IP, IP_MULTICAST_LOOP,
+@@ -1522,6 +1531,7 @@
+       g_socket_set_option (socket, IPPROTO_IPV6, IPV6_MULTICAST_LOOP,
+                          loopback, &error);
+     }
++#endif
+   else
+     g_return_if_reached ();
+@@ -1559,11 +1569,13 @@
+       g_socket_get_option (socket, IPPROTO_IP, IP_MULTICAST_TTL,
+                          &value, &error);
+     }
++#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_IPV6__))
+   else if (socket->priv->family == G_SOCKET_FAMILY_IPV6)
+     {
+       g_socket_get_option (socket, IPPROTO_IPV6, IPV6_MULTICAST_HOPS,
+                          &value, &error);
+     }
++#endif
+   else
+     g_return_val_if_reached (FALSE);
+@@ -1601,6 +1613,7 @@
+       g_socket_set_option (socket, IPPROTO_IP, IP_MULTICAST_TTL,
+                          ttl, &error);
+     }
++#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_IPV6__))
+   else if (socket->priv->family == G_SOCKET_FAMILY_IPV6)
+     {
+       g_socket_set_option (socket, IPPROTO_IP, IP_MULTICAST_TTL,
+@@ -1608,6 +1621,7 @@
+       g_socket_set_option (socket, IPPROTO_IPV6, IPV6_MULTICAST_HOPS,
+                          ttl, &error);
+     }
++#endif
+   else
+     g_return_if_reached ();
+@@ -1965,6 +1979,7 @@
+       result = setsockopt (socket->priv->fd, IPPROTO_IP, optname,
+                          &mc_req, sizeof (mc_req));
+     }
++#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_IPV6__))
+   else if (g_inet_address_get_family (group) == G_SOCKET_FAMILY_IPV6)
+     {
+       struct ipv6_mreq mc_req_ipv6;
+@@ -1982,6 +1997,7 @@
+       result = setsockopt (socket->priv->fd, IPPROTO_IPV6, optname,
+                          &mc_req_ipv6, sizeof (mc_req_ipv6));
+     }
++#endif
+   else
+     g_return_val_if_reached (FALSE);
+@@ -2089,8 +2105,8 @@
+     case G_SOCKET_FAMILY_IPV4:
+       return TRUE;
+-    case G_SOCKET_FAMILY_IPV6:
+ #if defined (IPPROTO_IPV6) && defined (IPV6_V6ONLY)
++    case G_SOCKET_FAMILY_IPV6:
+       {
+         gint v6_only;
+@@ -2101,8 +2117,6 @@
+         return !v6_only;
+       }
+-#else
+-      return FALSE;
+ #endif
+     default:
diff --git a/package/libglib2/libglib2-0001-optional-ipv6.patch b/package/libglib2/libglib2-0001-optional-ipv6.patch
deleted file mode 100644 (file)
index cbab1f1..0000000
+++ /dev/null
@@ -1,195 +0,0 @@
-[PATCH]: fix build on uClibc without IPv6 support
-
-Updated to glib 2.36 by Thomas Petazzoni.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
----
- gio/ginetaddress.c |    9 +++++++++
- 1 file changed, 9 insertions(+)
-
-Index: b/gio/ginetaddress.c
-===================================================================
---- a/gio/ginetaddress.c
-+++ b/gio/ginetaddress.c
-@@ -21,6 +21,7 @@
-  *          Samuel Cormier-Iijima <sciyoshi@gmail.com>
-  */
-+#include <features.h>
- #include <config.h>
- #include <string.h>
-@@ -423,7 +424,11 @@
-   return NULL;
- }
-+#if defined(__UCLIBC__) && !defined(__UCLIBC_HAS_IPV6__)
-+#define G_INET_ADDRESS_FAMILY_IS_VALID(family) ((family) == AF_INET)
-+#else
- #define G_INET_ADDRESS_FAMILY_IS_VALID(family) ((family) == AF_INET || (family) == AF_INET6)
-+#endif
- /**
-  * g_inet_address_new_from_bytes:
-@@ -472,8 +477,10 @@
-       return g_inet_address_new_from_bytes (addr, family);
-     }
-+#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_IPV6__))
-   else
-     return g_inet_address_new_from_bytes (in6addr_loopback.s6_addr, family);
-+#endif
- }
- /**
-@@ -499,8 +506,10 @@
-       return g_inet_address_new_from_bytes (addr, family);
-     }
-+#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_IPV6__))
-   else
-     return g_inet_address_new_from_bytes (in6addr_any.s6_addr, family);
-+#endif
- }
-Index: b/gio/gsocket.c
-===================================================================
---- a/gio/gsocket.c
-+++ b/gio/gsocket.c
-@@ -425,7 +425,9 @@
-   switch (family)
-     {
-      case G_SOCKET_FAMILY_IPV4:
-+#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_IPV6__))
-      case G_SOCKET_FAMILY_IPV6:
-+#endif
-        socket->priv->family = address.ss_family;
-        switch (socket->priv->type)
-        {
-@@ -1321,11 +1323,13 @@
-       g_socket_get_option (socket, IPPROTO_IP, IP_TTL,
-                          &value, &error);
-     }
-+#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_IPV6__))
-   else if (socket->priv->family == G_SOCKET_FAMILY_IPV6)
-     {
-       g_socket_get_option (socket, IPPROTO_IPV6, IPV6_UNICAST_HOPS,
-                          &value, &error);
-     }
-+#endif
-   else
-     g_return_val_if_reached (0);
-@@ -1362,6 +1366,7 @@
-       g_socket_set_option (socket, IPPROTO_IP, IP_TTL,
-                          ttl, &error);
-     }
-+#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_IPV6__))
-   else if (socket->priv->family == G_SOCKET_FAMILY_IPV6)
-     {
-       g_socket_set_option (socket, IPPROTO_IP, IP_TTL,
-@@ -1369,6 +1374,7 @@
-       g_socket_set_option (socket, IPPROTO_IPV6, IPV6_UNICAST_HOPS,
-                          ttl, &error);
-     }
-+#endif
-   else
-     g_return_if_reached ();
-@@ -1470,11 +1476,13 @@
-       g_socket_get_option (socket, IPPROTO_IP, IP_MULTICAST_LOOP,
-                          &value, &error);
-     }
-+#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_IPV6__))
-   else if (socket->priv->family == G_SOCKET_FAMILY_IPV6)
-     {
-       g_socket_get_option (socket, IPPROTO_IPV6, IPV6_MULTICAST_LOOP,
-                          &value, &error);
-     }
-+#endif
-   else
-     g_return_val_if_reached (FALSE);
-@@ -1515,6 +1523,7 @@
-       g_socket_set_option (socket, IPPROTO_IP, IP_MULTICAST_LOOP,
-                          loopback, &error);
-     }
-+#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_IPV6__))
-   else if (socket->priv->family == G_SOCKET_FAMILY_IPV6)
-     {
-       g_socket_set_option (socket, IPPROTO_IP, IP_MULTICAST_LOOP,
-@@ -1522,6 +1531,7 @@
-       g_socket_set_option (socket, IPPROTO_IPV6, IPV6_MULTICAST_LOOP,
-                          loopback, &error);
-     }
-+#endif
-   else
-     g_return_if_reached ();
-@@ -1559,11 +1569,13 @@
-       g_socket_get_option (socket, IPPROTO_IP, IP_MULTICAST_TTL,
-                          &value, &error);
-     }
-+#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_IPV6__))
-   else if (socket->priv->family == G_SOCKET_FAMILY_IPV6)
-     {
-       g_socket_get_option (socket, IPPROTO_IPV6, IPV6_MULTICAST_HOPS,
-                          &value, &error);
-     }
-+#endif
-   else
-     g_return_val_if_reached (FALSE);
-@@ -1601,6 +1613,7 @@
-       g_socket_set_option (socket, IPPROTO_IP, IP_MULTICAST_TTL,
-                          ttl, &error);
-     }
-+#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_IPV6__))
-   else if (socket->priv->family == G_SOCKET_FAMILY_IPV6)
-     {
-       g_socket_set_option (socket, IPPROTO_IP, IP_MULTICAST_TTL,
-@@ -1608,6 +1621,7 @@
-       g_socket_set_option (socket, IPPROTO_IPV6, IPV6_MULTICAST_HOPS,
-                          ttl, &error);
-     }
-+#endif
-   else
-     g_return_if_reached ();
-@@ -1965,6 +1979,7 @@
-       result = setsockopt (socket->priv->fd, IPPROTO_IP, optname,
-                          &mc_req, sizeof (mc_req));
-     }
-+#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_IPV6__))
-   else if (g_inet_address_get_family (group) == G_SOCKET_FAMILY_IPV6)
-     {
-       struct ipv6_mreq mc_req_ipv6;
-@@ -1982,6 +1997,7 @@
-       result = setsockopt (socket->priv->fd, IPPROTO_IPV6, optname,
-                          &mc_req_ipv6, sizeof (mc_req_ipv6));
-     }
-+#endif
-   else
-     g_return_val_if_reached (FALSE);
-@@ -2089,8 +2105,8 @@
-     case G_SOCKET_FAMILY_IPV4:
-       return TRUE;
--    case G_SOCKET_FAMILY_IPV6:
- #if defined (IPPROTO_IPV6) && defined (IPV6_V6ONLY)
-+    case G_SOCKET_FAMILY_IPV6:
-       {
-         gint v6_only;
-@@ -2101,8 +2117,6 @@
-         return !v6_only;
-       }
--#else
--      return FALSE;
- #endif
-     default:
diff --git a/package/libgtk2/0001-reduce-dependencies.patch b/package/libgtk2/0001-reduce-dependencies.patch
new file mode 100644 (file)
index 0000000..3250cae
--- /dev/null
@@ -0,0 +1,117 @@
+Hack the configure.in file to add a "none" gdktarget which removes
+dependencies on graphic backends such as X.org or DirectFB. Gtk does
+not fully build in this mode, but it builds sufficiently to build the
+host tools that are needed to build the target Gtk.
+
+Changes:
+       Ported to 2.24.18
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
+---
+Index: libgtk2-2.24.18/configure.ac
+===================================================================
+--- libgtk2-2.24.18.orig/configure.ac  2013-05-13 07:02:44.000000000 -0500
++++ libgtk2-2.24.18/configure.ac       2013-05-27 02:12:09.947030335 -0500
+@@ -258,12 +258,12 @@
+   gdktarget=x11
+ fi
+-AC_ARG_WITH(gdktarget, [  --with-gdktarget=[[x11/win32/quartz/directfb]] select non-default GDK target],
++AC_ARG_WITH(gdktarget, [  --with-gdktarget=[[x11/win32/quartz/directfb/none]] select non-default GDK target],
+       gdktarget=$with_gdktarget)
+ AC_SUBST(gdktarget)
+ case $gdktarget in
+-  x11|win32|quartz|directfb) ;;
++  x11|win32|quartz|directfb|none) ;;
+   *) AC_MSG_ERROR([Invalid target for GDK: use x11, quartz, directfb or win32.]);;
+ esac
+@@ -372,11 +373,15 @@
+ ## annoying to construct
+ PKG_CHECK_MODULES(BASE_DEPENDENCIES,
+   [glib-2.0 >= glib_required_version dnl
+-   atk >= atk_required_version dnl
+-   pango >= pango_required_version dnl
+-   cairo >= cairo_required_version dnl
+    gdk-pixbuf-2.0 >= gdk_pixbuf_required_version])
++if test "x$gdktarget" != "xnone"; then
++   PKG_CHECK_MODULES(BASE_DEPENDENCIES,
++      [atk >= atk_required_version dnl
++       pango >= pango_required_version dnl
++       cairo >= cairo_required_version])
++fi
++
+ ## In addition to checking that cairo is present, we also need to
+ ## check that the correct cairo backend is there. E.g. if the GDK
+ ## target is win32 we need the cairo-win32 backend and so on.
+@@ -387,8 +392,11 @@
+ if test "x$cairo_backend" = "xx11"; then
+    cairo_backend=xlib
+ fi
+-PKG_CHECK_MODULES(CAIRO_BACKEND,
+-  [cairo-$cairo_backend >= cairo_required_version])
++
++if test "x$gdktarget" != "xnone"; then
++   PKG_CHECK_MODULES(CAIRO_BACKEND,
++      [cairo-$cairo_backend >= cairo_required_version])
++fi
+ PKG_CHECK_MODULES(GMODULE, [gmodule-2.0])
+@@ -1279,6 +1287,7 @@
+   AM_CONDITIONAL(USE_DIRECTFB, false)
+ fi
++if test "x$gdktarget" != "xnone"; then
+ # Check for Pango flags
+@@ -1324,6 +1333,8 @@
+   GDK_PACKAGES="$PANGO_PACKAGES gio-2.0 gdk-pixbuf-2.0 cairo-$cairo_backend"
+ fi
++fi # gdktarget != none
++
+ GDK_DEP_LIBS="$GDK_EXTRA_LIBS `$PKG_CONFIG --libs $GDK_PACKAGES` $MATH_LIB"
+ GDK_DEP_CFLAGS="`$PKG_CONFIG --cflags  gthread-2.0 $GDK_PACKAGES` $GDK_EXTRA_CFLAGS"
+ #
+@@ -1341,6 +1352,7 @@
+ AC_SUBST(GDK_DEP_LIBS)
+ AC_SUBST(GDK_DEP_CFLAGS)
++if test "x$gdktarget" != "xnone"; then
+ ########################################
+ # Check for Accessibility Toolkit flags
+@@ -1372,6 +1384,10 @@
+ fi
+ GTK_PACKAGES="atk cairo gdk-pixbuf-2.0 gio-2.0"
++else # gdktarget != none
++GTK_PACKAGES="gdk-pixbuf-2.0"
++fi # gdktarget != none
++
+ if test "x$gdktarget" = "xx11"; then
+   GTK_PACKAGES="$GTK_PACKAGES pangoft2"
+ fi
+@@ -1533,6 +1549,8 @@
+ gtk_save_cppflags="$CPPFLAGS"
+ CPPFLAGS="$CPPFLAGS $GTK_DEP_CFLAGS $GDK_DEP_CFLAGS"
++if test "x$gdktarget" != "xnone"; then
++
+ AC_CHECK_HEADER(cairo-pdf.h,,AC_MSG_ERROR([
+ *** Can't find cairo-pdf.h. You must build Cairo with the pdf
+ *** backend enabled.]))
+@@ -1547,6 +1565,8 @@
+ *** svg backend enabled.]))
+ fi   
++fi # gdktarget != none
++
+ CPPFLAGS="$gtk_save_cppflags"
+      
+                               
diff --git a/package/libgtk2/libgtk2-reduce-dependencies.patch b/package/libgtk2/libgtk2-reduce-dependencies.patch
deleted file mode 100644 (file)
index 3250cae..0000000
+++ /dev/null
@@ -1,117 +0,0 @@
-Hack the configure.in file to add a "none" gdktarget which removes
-dependencies on graphic backends such as X.org or DirectFB. Gtk does
-not fully build in this mode, but it builds sufficiently to build the
-host tools that are needed to build the target Gtk.
-
-Changes:
-       Ported to 2.24.18
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
----
-Index: libgtk2-2.24.18/configure.ac
-===================================================================
---- libgtk2-2.24.18.orig/configure.ac  2013-05-13 07:02:44.000000000 -0500
-+++ libgtk2-2.24.18/configure.ac       2013-05-27 02:12:09.947030335 -0500
-@@ -258,12 +258,12 @@
-   gdktarget=x11
- fi
--AC_ARG_WITH(gdktarget, [  --with-gdktarget=[[x11/win32/quartz/directfb]] select non-default GDK target],
-+AC_ARG_WITH(gdktarget, [  --with-gdktarget=[[x11/win32/quartz/directfb/none]] select non-default GDK target],
-       gdktarget=$with_gdktarget)
- AC_SUBST(gdktarget)
- case $gdktarget in
--  x11|win32|quartz|directfb) ;;
-+  x11|win32|quartz|directfb|none) ;;
-   *) AC_MSG_ERROR([Invalid target for GDK: use x11, quartz, directfb or win32.]);;
- esac
-@@ -372,11 +373,15 @@
- ## annoying to construct
- PKG_CHECK_MODULES(BASE_DEPENDENCIES,
-   [glib-2.0 >= glib_required_version dnl
--   atk >= atk_required_version dnl
--   pango >= pango_required_version dnl
--   cairo >= cairo_required_version dnl
-    gdk-pixbuf-2.0 >= gdk_pixbuf_required_version])
-+if test "x$gdktarget" != "xnone"; then
-+   PKG_CHECK_MODULES(BASE_DEPENDENCIES,
-+      [atk >= atk_required_version dnl
-+       pango >= pango_required_version dnl
-+       cairo >= cairo_required_version])
-+fi
-+
- ## In addition to checking that cairo is present, we also need to
- ## check that the correct cairo backend is there. E.g. if the GDK
- ## target is win32 we need the cairo-win32 backend and so on.
-@@ -387,8 +392,11 @@
- if test "x$cairo_backend" = "xx11"; then
-    cairo_backend=xlib
- fi
--PKG_CHECK_MODULES(CAIRO_BACKEND,
--  [cairo-$cairo_backend >= cairo_required_version])
-+
-+if test "x$gdktarget" != "xnone"; then
-+   PKG_CHECK_MODULES(CAIRO_BACKEND,
-+      [cairo-$cairo_backend >= cairo_required_version])
-+fi
- PKG_CHECK_MODULES(GMODULE, [gmodule-2.0])
-@@ -1279,6 +1287,7 @@
-   AM_CONDITIONAL(USE_DIRECTFB, false)
- fi
-+if test "x$gdktarget" != "xnone"; then
- # Check for Pango flags
-@@ -1324,6 +1333,8 @@
-   GDK_PACKAGES="$PANGO_PACKAGES gio-2.0 gdk-pixbuf-2.0 cairo-$cairo_backend"
- fi
-+fi # gdktarget != none
-+
- GDK_DEP_LIBS="$GDK_EXTRA_LIBS `$PKG_CONFIG --libs $GDK_PACKAGES` $MATH_LIB"
- GDK_DEP_CFLAGS="`$PKG_CONFIG --cflags  gthread-2.0 $GDK_PACKAGES` $GDK_EXTRA_CFLAGS"
- #
-@@ -1341,6 +1352,7 @@
- AC_SUBST(GDK_DEP_LIBS)
- AC_SUBST(GDK_DEP_CFLAGS)
-+if test "x$gdktarget" != "xnone"; then
- ########################################
- # Check for Accessibility Toolkit flags
-@@ -1372,6 +1384,10 @@
- fi
- GTK_PACKAGES="atk cairo gdk-pixbuf-2.0 gio-2.0"
-+else # gdktarget != none
-+GTK_PACKAGES="gdk-pixbuf-2.0"
-+fi # gdktarget != none
-+
- if test "x$gdktarget" = "xx11"; then
-   GTK_PACKAGES="$GTK_PACKAGES pangoft2"
- fi
-@@ -1533,6 +1549,8 @@
- gtk_save_cppflags="$CPPFLAGS"
- CPPFLAGS="$CPPFLAGS $GTK_DEP_CFLAGS $GDK_DEP_CFLAGS"
-+if test "x$gdktarget" != "xnone"; then
-+
- AC_CHECK_HEADER(cairo-pdf.h,,AC_MSG_ERROR([
- *** Can't find cairo-pdf.h. You must build Cairo with the pdf
- *** backend enabled.]))
-@@ -1547,6 +1565,8 @@
- *** svg backend enabled.]))
- fi   
-+fi # gdktarget != none
-+
- CPPFLAGS="$gtk_save_cppflags"
-      
-                               
diff --git a/package/libhid/0001-dont-fiddle-with-debug-flags.patch b/package/libhid/0001-dont-fiddle-with-debug-flags.patch
new file mode 100644 (file)
index 0000000..44a1728
--- /dev/null
@@ -0,0 +1,19 @@
+MD_CONF_DEBUGGING changes CFLAGS and CXXFLAGS with a horrible magic so disable
+it to prevent compilation errors.
+
+downloaded from
+http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/dev-libs/libhid/files/libhid-0.2.16-gentoo.patch?revision=1.1&view=markup
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+
+diff -uNr libhid-0.2.16.org/configure.ac libhid-0.2.16/configure.ac
+--- libhid-0.2.16.org/configure.ac     2007-04-01 22:32:10.000000000 +0200
++++ libhid-0.2.16/configure.ac 2014-10-19 21:31:00.550091947 +0200
+@@ -78,7 +78,6 @@
+ AC_C_BIGENDIAN
+ AC_C_STRINGIZE
+-MD_CONF_DEBUGGING
+ MD_CONF_COMPILER
+ AM_CONDITIONAL(OS_LINUX, test "$MD_OS" = "linux")
+ AM_CONDITIONAL(OS_BSD, test "$MD_OS" = "bsd")
diff --git a/package/libhid/0002-no-newline-in-ldflags.patch b/package/libhid/0002-no-newline-in-ldflags.patch
new file mode 100644 (file)
index 0000000..df845ee
--- /dev/null
@@ -0,0 +1,22 @@
+Fix improper usage of macro that introduces a wrong newline
+
+The MD_CONF_FLAGS() macro was used with a final newline that
+introduces an invalid newline in the middle of the macro expansion
+when defining LDFLAGS.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: libhid-0.2.16/configure.ac
+===================================================================
+--- libhid-0.2.16.orig/configure.ac    2007-04-01 22:32:10.000000000 +0200
++++ libhid-0.2.16/configure.ac 2012-12-12 20:24:03.000000000 +0100
+@@ -102,8 +102,7 @@
+   [],
+   [$OS_CFLAGS $LIBUSB_CFLAGS],
+   [],
+-  [$OS_LDFLAGS $LIBUSB_LIBS]
+-)
++  [$OS_LDFLAGS $LIBUSB_LIBS])
+ MD_CONF_DB2MAN
diff --git a/package/libhid/0003-uclinux.patch b/package/libhid/0003-uclinux.patch
new file mode 100644 (file)
index 0000000..cb3c452
--- /dev/null
@@ -0,0 +1,27 @@
+Good old 'uclinux is also linux'
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura libhid-0.2.16.orig/configure.ac libhid-0.2.16/configure.ac
+--- libhid-0.2.16.orig/configure.ac    2014-06-22 09:35:50.277261742 -0300
++++ libhid-0.2.16/configure.ac 2014-06-22 09:36:10.688951947 -0300
+@@ -80,6 +80,7 @@
+ MD_CONF_DEBUGGING
+ MD_CONF_COMPILER
++AM_CONDITIONAL(OS_LINUX, test "$MD_OS" = "uclinux")
+ AM_CONDITIONAL(OS_LINUX, test "$MD_OS" = "linux")
+ AM_CONDITIONAL(OS_BSD, test "$MD_OS" = "bsd")
+ AM_CONDITIONAL(OS_SOLARIS, test "$MD_OS" = "solaris")
+diff -Nura libhid-0.2.16.orig/m4/md_check_os.m4 libhid-0.2.16/m4/md_check_os.m4
+--- libhid-0.2.16.orig/m4/md_check_os.m4       2014-06-22 09:35:50.275261675 -0300
++++ libhid-0.2.16/m4/md_check_os.m4    2014-06-22 09:46:17.651475891 -0300
+@@ -3,7 +3,7 @@
+     AC_CANONICAL_HOST
+     AC_MSG_CHECKING(for target OS)
+     case $host in
+-      *-linux*)
++      *-linux*|*-uclinux*)
+         AC_DEFINE(OS_LINUX, [], [define to 1 if building for Linux])
+         AC_SUBST(OS_LINUX)
+         MD_OS=linux
diff --git a/package/libhid/libhid-0001-dont-fiddle-with-debug-flags.patch b/package/libhid/libhid-0001-dont-fiddle-with-debug-flags.patch
deleted file mode 100644 (file)
index 44a1728..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-MD_CONF_DEBUGGING changes CFLAGS and CXXFLAGS with a horrible magic so disable
-it to prevent compilation errors.
-
-downloaded from
-http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/dev-libs/libhid/files/libhid-0.2.16-gentoo.patch?revision=1.1&view=markup
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-
-diff -uNr libhid-0.2.16.org/configure.ac libhid-0.2.16/configure.ac
---- libhid-0.2.16.org/configure.ac     2007-04-01 22:32:10.000000000 +0200
-+++ libhid-0.2.16/configure.ac 2014-10-19 21:31:00.550091947 +0200
-@@ -78,7 +78,6 @@
- AC_C_BIGENDIAN
- AC_C_STRINGIZE
--MD_CONF_DEBUGGING
- MD_CONF_COMPILER
- AM_CONDITIONAL(OS_LINUX, test "$MD_OS" = "linux")
- AM_CONDITIONAL(OS_BSD, test "$MD_OS" = "bsd")
diff --git a/package/libhid/libhid-0002-no-newline-in-ldflags.patch b/package/libhid/libhid-0002-no-newline-in-ldflags.patch
deleted file mode 100644 (file)
index df845ee..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-Fix improper usage of macro that introduces a wrong newline
-
-The MD_CONF_FLAGS() macro was used with a final newline that
-introduces an invalid newline in the middle of the macro expansion
-when defining LDFLAGS.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: libhid-0.2.16/configure.ac
-===================================================================
---- libhid-0.2.16.orig/configure.ac    2007-04-01 22:32:10.000000000 +0200
-+++ libhid-0.2.16/configure.ac 2012-12-12 20:24:03.000000000 +0100
-@@ -102,8 +102,7 @@
-   [],
-   [$OS_CFLAGS $LIBUSB_CFLAGS],
-   [],
--  [$OS_LDFLAGS $LIBUSB_LIBS]
--)
-+  [$OS_LDFLAGS $LIBUSB_LIBS])
- MD_CONF_DB2MAN
diff --git a/package/libhid/libhid-0003-uclinux.patch b/package/libhid/libhid-0003-uclinux.patch
deleted file mode 100644 (file)
index cb3c452..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-Good old 'uclinux is also linux'
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura libhid-0.2.16.orig/configure.ac libhid-0.2.16/configure.ac
---- libhid-0.2.16.orig/configure.ac    2014-06-22 09:35:50.277261742 -0300
-+++ libhid-0.2.16/configure.ac 2014-06-22 09:36:10.688951947 -0300
-@@ -80,6 +80,7 @@
- MD_CONF_DEBUGGING
- MD_CONF_COMPILER
-+AM_CONDITIONAL(OS_LINUX, test "$MD_OS" = "uclinux")
- AM_CONDITIONAL(OS_LINUX, test "$MD_OS" = "linux")
- AM_CONDITIONAL(OS_BSD, test "$MD_OS" = "bsd")
- AM_CONDITIONAL(OS_SOLARIS, test "$MD_OS" = "solaris")
-diff -Nura libhid-0.2.16.orig/m4/md_check_os.m4 libhid-0.2.16/m4/md_check_os.m4
---- libhid-0.2.16.orig/m4/md_check_os.m4       2014-06-22 09:35:50.275261675 -0300
-+++ libhid-0.2.16/m4/md_check_os.m4    2014-06-22 09:46:17.651475891 -0300
-@@ -3,7 +3,7 @@
-     AC_CANONICAL_HOST
-     AC_MSG_CHECKING(for target OS)
-     case $host in
--      *-linux*)
-+      *-linux*|*-uclinux*)
-         AC_DEFINE(OS_LINUX, [], [define to 1 if building for Linux])
-         AC_SUBST(OS_LINUX)
-         MD_OS=linux
diff --git a/package/libiqrf/0001-cmake-handle-static-library-and-find-required-thread.patch b/package/libiqrf/0001-cmake-handle-static-library-and-find-required-thread.patch
new file mode 100644 (file)
index 0000000..cfd7d54
--- /dev/null
@@ -0,0 +1,45 @@
+From 46660112b76664473cc98b8ae6c863fd27c27d2d Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Fri, 29 Aug 2014 23:40:59 +0200
+Subject: [PATCH 1/1] cmake: handle static library and find required thread
+ module
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+---
+ CMakeLists.txt     | 2 ++
+ src/CMakeLists.txt | 4 +++-
+ 2 files changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 79f644c..7779a2a 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -6,7 +6,9 @@ enable_testing()
+ # use local module (for Findlibusb-1.0.cmake)
+ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/Modules/")
++find_package(Threads REQUIRED)
+ find_package(libusb-1.0 REQUIRED)
++
+ if (NOT LIBUSB_1_FOUND)
+       message(FATAL_ERROR "libusb-1.0 not installed. (try apt-get install libusb-1.0-0-dev)")
+ endif (NOT LIBUSB_1_FOUND)
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 149d198..0597ccd 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -18,8 +18,10 @@ set (iqrf_sources
+ include_directories ("${LIBUSB_1_INCLUDE_DIRS}")
+-add_library(iqrf SHARED ${iqrf_sources} ${iqrf_headers})
++add_library(iqrf ${iqrf_sources} ${iqrf_headers})
++
+ target_link_libraries(iqrf ${LIBUSB_1_LIBRARIES})
++target_link_libraries(iqrf ${CMAKE_THREAD_LIBS_INIT})
+ set_target_properties(iqrf PROPERTIES
+       VERSION "${iqrf_version_major}.${iqrf_version_minor}"
+-- 
+2.1.0
+
diff --git a/package/libiqrf/0002-use-only-c-language.patch b/package/libiqrf/0002-use-only-c-language.patch
new file mode 100644 (file)
index 0000000..2f1c23c
--- /dev/null
@@ -0,0 +1,29 @@
+Use only the C language
+
+libirqf is written completely in C, but by default, CMake assumes that
+both C and C++ are used, and therefore verifies that a C++ compiler is
+installed. This may not necessarily be the case for a C-only package
+in Buildroot.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/src/CMakeLists.txt
+===================================================================
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -1,5 +1,3 @@
+-project(iqrf)
+-
+ set (iqrf_version_major 0)
+ set (iqrf_version_minor 1)
+ set (iqrf_version_patch 2)
+Index: b/CMakeLists.txt
+===================================================================
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1,3 +1,5 @@
++project(iqrf C)
++
+ cmake_minimum_required(VERSION 2.8.1)
+ enable_testing()
diff --git a/package/libiqrf/libiqrf-0001-cmake-handle-static-library-and-find-required-thread.patch b/package/libiqrf/libiqrf-0001-cmake-handle-static-library-and-find-required-thread.patch
deleted file mode 100644 (file)
index cfd7d54..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-From 46660112b76664473cc98b8ae6c863fd27c27d2d Mon Sep 17 00:00:00 2001
-From: Samuel Martin <s.martin49@gmail.com>
-Date: Fri, 29 Aug 2014 23:40:59 +0200
-Subject: [PATCH 1/1] cmake: handle static library and find required thread
- module
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
----
- CMakeLists.txt     | 2 ++
- src/CMakeLists.txt | 4 +++-
- 2 files changed, 5 insertions(+), 1 deletion(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 79f644c..7779a2a 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -6,7 +6,9 @@ enable_testing()
- # use local module (for Findlibusb-1.0.cmake)
- set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/Modules/")
-+find_package(Threads REQUIRED)
- find_package(libusb-1.0 REQUIRED)
-+
- if (NOT LIBUSB_1_FOUND)
-       message(FATAL_ERROR "libusb-1.0 not installed. (try apt-get install libusb-1.0-0-dev)")
- endif (NOT LIBUSB_1_FOUND)
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index 149d198..0597ccd 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -18,8 +18,10 @@ set (iqrf_sources
- include_directories ("${LIBUSB_1_INCLUDE_DIRS}")
--add_library(iqrf SHARED ${iqrf_sources} ${iqrf_headers})
-+add_library(iqrf ${iqrf_sources} ${iqrf_headers})
-+
- target_link_libraries(iqrf ${LIBUSB_1_LIBRARIES})
-+target_link_libraries(iqrf ${CMAKE_THREAD_LIBS_INIT})
- set_target_properties(iqrf PROPERTIES
-       VERSION "${iqrf_version_major}.${iqrf_version_minor}"
--- 
-2.1.0
-
diff --git a/package/libiqrf/libiqrf-use-only-c-language.patch b/package/libiqrf/libiqrf-use-only-c-language.patch
deleted file mode 100644 (file)
index 2f1c23c..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-Use only the C language
-
-libirqf is written completely in C, but by default, CMake assumes that
-both C and C++ are used, and therefore verifies that a C++ compiler is
-installed. This may not necessarily be the case for a C-only package
-in Buildroot.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/src/CMakeLists.txt
-===================================================================
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -1,5 +1,3 @@
--project(iqrf)
--
- set (iqrf_version_major 0)
- set (iqrf_version_minor 1)
- set (iqrf_version_patch 2)
-Index: b/CMakeLists.txt
-===================================================================
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -1,3 +1,5 @@
-+project(iqrf C)
-+
- cmake_minimum_required(VERSION 2.8.1)
- enable_testing()
diff --git a/package/libjson/0001-fix-broken-makefile.patch b/package/libjson/0001-fix-broken-makefile.patch
new file mode 100644 (file)
index 0000000..8ceb0ca
--- /dev/null
@@ -0,0 +1,16 @@
+Fix the broken libjson makefile.
+
+Signed-off-by: Simon Dawson <spdawson@gmail.com>
+
+diff -Nurp a/makefile b/makefile
+--- a/makefile 2012-05-30 10:15:42.000000000 +0100
++++ b/makefile 2013-03-27 18:45:34.814670534 +0000
+@@ -170,7 +170,7 @@ include_path     = $(prefix)/$(includedi
+ # Usage check
+ ifdef CXXFLAGS
+ ifdef BUILD_TYPE
+-      $(error CXXFLAGS and BUILD_TYPE are mutually exclusive)
++$(error CXXFLAGS and BUILD_TYPE are mutually exclusive)
+ endif
+ endif
diff --git a/package/libjson/libjson-0001-fix-broken-makefile.patch b/package/libjson/libjson-0001-fix-broken-makefile.patch
deleted file mode 100644 (file)
index 8ceb0ca..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-Fix the broken libjson makefile.
-
-Signed-off-by: Simon Dawson <spdawson@gmail.com>
-
-diff -Nurp a/makefile b/makefile
---- a/makefile 2012-05-30 10:15:42.000000000 +0100
-+++ b/makefile 2013-03-27 18:45:34.814670534 +0000
-@@ -170,7 +170,7 @@ include_path     = $(prefix)/$(includedi
- # Usage check
- ifdef CXXFLAGS
- ifdef BUILD_TYPE
--      $(error CXXFLAGS and BUILD_TYPE are mutually exclusive)
-+$(error CXXFLAGS and BUILD_TYPE are mutually exclusive)
- endif
- endif
diff --git a/package/liblockfile/0001-install.patch b/package/liblockfile/0001-install.patch
new file mode 100644 (file)
index 0000000..bfa197c
--- /dev/null
@@ -0,0 +1,16 @@
+diff -ur liblockfile-1.06.1/Makefile.in liblockfile-1.06.1-patched/Makefile.in
+--- liblockfile-1.06.1/Makefile.in     2001-03-16 22:08:33.000000000 -0600
++++ liblockfile-1.06.1-patched/Makefile.in     2007-04-11 07:18:38.000000000 -0500
+@@ -60,11 +60,7 @@
+ install_common:
+               install -m 644 lockfile.h maillock.h $(ROOT)$(includedir)
+-              if [ "$(MAILGROUP)" != "" ]; then\
+-                install -g $(MAILGROUP) -m 2755 dotlockfile $(ROOT)$(bindir);\
+-              else \
+-                install -g root -m 755 dotlockfile $(ROOT)$(bindir); \
+-              fi
++              install -m 2755 dotlockfile $(ROOT)$(bindir);\
+               install -m 644 *.1 $(ROOT)$(mandir)/man1
+               install -m 644 *.3 $(ROOT)$(mandir)/man3
diff --git a/package/liblockfile/liblockfile-install.patch b/package/liblockfile/liblockfile-install.patch
deleted file mode 100644 (file)
index bfa197c..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-diff -ur liblockfile-1.06.1/Makefile.in liblockfile-1.06.1-patched/Makefile.in
---- liblockfile-1.06.1/Makefile.in     2001-03-16 22:08:33.000000000 -0600
-+++ liblockfile-1.06.1-patched/Makefile.in     2007-04-11 07:18:38.000000000 -0500
-@@ -60,11 +60,7 @@
- install_common:
-               install -m 644 lockfile.h maillock.h $(ROOT)$(includedir)
--              if [ "$(MAILGROUP)" != "" ]; then\
--                install -g $(MAILGROUP) -m 2755 dotlockfile $(ROOT)$(bindir);\
--              else \
--                install -g root -m 755 dotlockfile $(ROOT)$(bindir); \
--              fi
-+              install -m 2755 dotlockfile $(ROOT)$(bindir);\
-               install -m 644 *.1 $(ROOT)$(mandir)/man1
-               install -m 644 *.3 $(ROOT)$(mandir)/man3
diff --git a/package/libmad/0001-mips-h-constraint-removal.patch b/package/libmad/0001-mips-h-constraint-removal.patch
new file mode 100644 (file)
index 0000000..0958587
--- /dev/null
@@ -0,0 +1,72 @@
+http://patchwork.openembedded.org/patch/921/
+
+diff -ur libmad-0.15.1b-orig/fixed.h libmad-0.15.1b/fixed.h
+--- libmad-0.15.1b-orig/fixed.h        2004-02-17 12:32:03.000000000 +1030
++++ libmad-0.15.1b/fixed.h     2009-08-05 10:46:30.000000000 +0930
+@@ -299,6 +299,23 @@
+ # elif defined(FPM_MIPS)
++/* Test for gcc >= maj.min, as per __GNUC_PREREQ in glibc */
++#if defined (__GNUC__) && defined (__GNUC_MINOR__)
++#define __GNUC_PREREQ(maj, min) \
++      ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min))
++#else
++#define __GNUC_PREREQ(maj, min)  0
++#endif
++
++#if __GNUC_PREREQ(4,4)
++  typedef unsigned int u64_di_t __attribute__ ((mode (DI)));
++# define MAD_F_MLX(hi, lo, x, y) \
++   do { \
++      u64_di_t __ll = (u64_di_t) (x) * (y); \
++      hi = __ll >> 32; \
++      lo = __ll; \
++   } while (0) 
++#else
+ /*
+  * This MIPS version is fast and accurate; the disposition of the least
+  * significant bit depends on OPT_ACCURACY via mad_f_scale64().
+@@ -328,6 +345,7 @@
+        : "%r" ((x) >> 12), "r" ((y) >> 16))
+ #  define MAD_F_MLZ(hi, lo)  ((mad_fixed_t) (lo))
+ # endif
++#endif /* __GNU_PREREQ(4,4) */
+ # if defined(OPT_SPEED)
+ #  define mad_f_scale64(hi, lo)  \
+diff -ur libmad-0.15.1b-orig/mad.h libmad-0.15.1b/mad.h
+--- libmad-0.15.1b-orig/mad.h  2004-02-17 13:25:44.000000000 +1030
++++ libmad-0.15.1b/mad.h       2009-08-05 10:42:40.000000000 +0930
+@@ -344,6 +344,23 @@
+ # elif defined(FPM_MIPS)
++/* Test for gcc >= maj.min, as per __GNUC_PREREQ in glibc */
++#if defined (__GNUC__) && defined (__GNUC_MINOR__)
++#define __GNUC_PREREQ(maj, min) \
++      ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min))
++#else
++#define __GNUC_PREREQ(maj, min)  0
++#endif
++
++#if __GNUC_PREREQ(4,4)
++  typedef unsigned int u64_di_t __attribute__ ((mode (DI)));
++# define MAD_F_MLX(hi, lo, x, y) \
++   do { \
++      u64_di_t __ll = (u64_di_t) (x) * (y); \
++      hi = __ll >> 32; \
++      lo = __ll; \
++   } while (0) 
++#else
+ /*
+  * This MIPS version is fast and accurate; the disposition of the least
+  * significant bit depends on OPT_ACCURACY via mad_f_scale64().
+@@ -373,6 +390,7 @@
+        : "%r" ((x) >> 12), "r" ((y) >> 16))
+ #  define MAD_F_MLZ(hi, lo)  ((mad_fixed_t) (lo))
+ # endif
++#endif /* __GNU_PREREQ(4,4) */
+ # if defined(OPT_SPEED)
+ #  define mad_f_scale64(hi, lo)  \
diff --git a/package/libmad/0002-optimization.patch.avr32 b/package/libmad/0002-optimization.patch.avr32
new file mode 100644 (file)
index 0000000..b74eea3
--- /dev/null
@@ -0,0 +1,2922 @@
+diff --git a/bit.c b/bit.c
+index c2bfb24..262ce3a 100644
+--- a/bit.c
++++ b/bit.c
+@@ -25,12 +25,6 @@
+ # include "global.h"
+-# ifdef HAVE_LIMITS_H
+-#  include <limits.h>
+-# else
+-#  define CHAR_BIT  8
+-# endif
+-
+ # include "bit.h"
+ /*
+@@ -81,6 +75,8 @@ unsigned short const crc_table[256] = {
+ # define CRC_POLY  0x8005
++#ifndef FPM_AVR32
++
+ /*
+  * NAME:      bit->init()
+  * DESCRIPTION:       initialize bit pointer struct
+@@ -190,6 +186,8 @@ void mad_bit_write(struct mad_bitptr *bitptr, unsigned int len,
+ }
+ # endif
++#endif
++
+ /*
+  * NAME:      bit->crc()
+  * DESCRIPTION:       compute CRC-check word
+diff --git a/bit.h b/bit.h
+index 5a51570..70f550a 100644
+--- a/bit.h
++++ b/bit.h
+@@ -22,6 +22,92 @@
+ # ifndef LIBMAD_BIT_H
+ # define LIBMAD_BIT_H
++# ifdef HAVE_LIMITS_H
++#  include <limits.h>
++# else
++#  define CHAR_BIT  8
++# endif
++
++#ifdef FPM_AVR32
++
++struct mad_bitptr {
++  unsigned char const *byte;
++  unsigned int read_bytes;
++};
++
++/*
++ * NAME:      bit->init()
++ * DESCRIPTION:       initialize bit pointer struct
++ */
++static void mad_bit_init(struct mad_bitptr *bitptr, unsigned char const *byte)
++{
++  bitptr->byte  = byte;
++  bitptr->read_bytes  = 0;
++}
++
++/*
++ * NAME:      bit->length()
++ * DESCRIPTION:       return number of bits between start and end points
++ */
++static unsigned int mad_bit_length(struct mad_bitptr const *begin,
++                          struct mad_bitptr const *end)
++{
++  return (end->read_bytes - begin->read_bytes) +
++    8 * (end->byte - begin->byte);
++}
++
++/*
++ * NAME:      bit->nextbyte()
++ * DESCRIPTION:       return pointer to next unprocessed byte
++ */
++static unsigned char const *mad_bit_nextbyte(struct mad_bitptr const *bitptr)
++{
++  return bitptr->byte + ((bitptr->read_bytes + 0x7) >> 3);
++}
++
++/*
++ * NAME:      bit->skip()
++ * DESCRIPTION:       advance bit pointer
++ */
++static void mad_bit_skip(struct mad_bitptr *bitptr, unsigned int len)
++{
++  bitptr->read_bytes += len;
++  bitptr->byte += (bitptr->read_bytes >> 3);
++  bitptr->read_bytes &=  0x7;
++}
++
++/*
++ * NAME:      bit->read()
++ * DESCRIPTION:       read an arbitrary number of bits and return their UIMSBF value
++ */
++static unsigned long mad_bit_read(struct mad_bitptr *bitptr, unsigned int len)
++{
++  register unsigned long value;
++
++  if (!len)
++    return 0;
++
++  value = *(unsigned int *)bitptr->byte;
++
++  value <<= bitptr->read_bytes;
++  value >>= (32 - len);
++
++  bitptr->read_bytes += len;
++  bitptr->byte += (bitptr->read_bytes >> 3);
++  bitptr->read_bytes &=  0x7;
++
++  return value;
++}
++
++# define mad_bit_finish(bitptr)               /* nothing */
++
++static unsigned long  mad_bit_bitsleft(struct mad_bitptr *bitptr)
++{
++  return (8 - (bitptr)->read_bytes);
++}
++
++#else /* #ifdef FPM_AVR32 */
++
+ struct mad_bitptr {
+   unsigned char const *byte;
+   unsigned short cache;
+@@ -42,6 +128,8 @@ void mad_bit_skip(struct mad_bitptr *, unsigned int);
+ unsigned long mad_bit_read(struct mad_bitptr *, unsigned int);
+ void mad_bit_write(struct mad_bitptr *, unsigned int, unsigned long);
++#endif
++
+ unsigned short mad_bit_crc(struct mad_bitptr, unsigned int, unsigned short);
+ # endif
+diff --git a/configure.ac b/configure.ac
+index 9b79399..063cb9b 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -274,13 +274,14 @@ fi
+ AC_MSG_CHECKING(for architecture-specific fixed-point math routines)
+ AC_ARG_ENABLE(fpm, AC_HELP_STRING([--enable-fpm=ARCH],
+                  [use ARCH-specific fixed-point math routines
+-                  (one of: intel, arm, mips, sparc, ppc, 64bit, default)]),
++                  (one of: intel, arm, avr32, mips, sparc, ppc, 64bit, default)]),
+ [
+     case "$enableval" in
+       yes)                             ;;
+       no|default|approx) FPM="DEFAULT" ;;
+       intel|i?86)        FPM="INTEL"   ;;
+       arm)               FPM="ARM"     ;;
++      avr32)             FPM="AVR32"   ;;
+       mips)              FPM="MIPS"    ;;
+       sparc)             FPM="SPARC"   ;;
+       ppc|powerpc)       FPM="PPC"     ;;
+@@ -298,6 +299,7 @@ then
+     case "$host" in
+       i?86-*)     FPM="INTEL"  ;;
+       arm*-*)     FPM="ARM"    ;;
++      avr32*-*)   FPM="AVR32"  ;;
+       mips*-*)    FPM="MIPS"   ;;
+       sparc*-*)   FPM="SPARC"  ;;
+       powerpc*-*) FPM="PPC"    ;;
+@@ -343,6 +345,11 @@ then
+           ASO="$ASO -DASO_IMDCT"
+           ASO_OBJS="imdct_l_arm.lo"
+           ;;
++      avr32*-*)
++          ASO="$ASO -DASO_INTERLEAVE2"
++          ASO="$ASO -DASO_ZEROCHECK"
++          ASO_OBJS="dct32_avr32.lo synth_avr32.lo imdct_avr32.lo"
++          ;;
+       mips*-*)
+           ASO="$ASO -DASO_INTERLEAVE2"
+           ASO="$ASO -DASO_ZEROCHECK"
+diff --git a/configure b/configure
+index ee421cc..7a9f0c8 100755
+--- a/configure
++++ b/configure
+@@ -1048,7 +1048,7 @@ Optional Features:
+   --enable-speed          optimize for speed over accuracy
+   --enable-accuracy       optimize for accuracy over speed
+   --enable-fpm=ARCH       use ARCH-specific fixed-point math routines (one of:
+-                          intel, arm, mips, sparc, ppc, 64bit, default)
++                          intel, arm, avr32, mips, sparc, ppc, 64bit, default)
+   --enable-sso            use subband synthesis optimization
+   --disable-aso           disable architecture-specific optimizations
+   --enable-strict-iso     use strict ISO/IEC interpretations
+@@ -21477,6 +21477,7 @@ if test "${enable_fpm+set}" = set; then
+       no|default|approx) FPM="DEFAULT" ;;
+       intel|i?86)        FPM="INTEL"   ;;
+       arm)               FPM="ARM"     ;;
++      avr32)             FPM="AVR32"   ;;
+       mips)              FPM="MIPS"    ;;
+       sparc)             FPM="SPARC"   ;;
+       ppc|powerpc)       FPM="PPC"     ;;
+@@ -21498,6 +21499,7 @@ then
+     case "$host" in
+       i?86-*)     FPM="INTEL"  ;;
+       arm*-*)     FPM="ARM"    ;;
++      avr32*-*)   FPM="AVR32"  ;;
+       mips*-*)    FPM="MIPS"   ;;
+       sparc*-*)   FPM="SPARC"  ;;
+       powerpc*-*) FPM="PPC"    ;;
+@@ -21554,6 +21556,11 @@ then
+           ASO="$ASO -DASO_IMDCT"
+           ASO_OBJS="imdct_l_arm.lo"
+           ;;
++      avr32*-*)
++          ASO="$ASO -DASO_INTERLEAVE2"
++          ASO="$ASO -DASO_ZEROCHECK"
++          ASO_OBJS="dct32_avr32.lo synth_avr32.lo imdct_avr32.lo"
++          ;;
+       mips*-*)
+           ASO="$ASO -DASO_INTERLEAVE2"
+           ASO="$ASO -DASO_ZEROCHECK"
+diff --git a/dct32_avr32.S b/dct32_avr32.S
+new file mode 100644
+index 0000000..7513340
+--- /dev/null
++++ b/dct32_avr32.S
+@@ -0,0 +1,780 @@
++/*
++   Optimized 32-point Discrete Cosine Transform (DCT)
++   Copyright 2003-2006 Atmel Corporation.
++
++   Written by Ronny Pedersen, Atmel Norway
++
++   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. */
++
++#define       SHIFT   12
++#define MAD_F_SCALEBITS 28
++#define SLOTS 8
++
++#define MAD_F(x)      ((x + (1 << 15)) >> 16)
++
++#  define costab1     MAD_F(0x7fd8878e)
++#  define costab2     MAD_F(0x7f62368f)
++#  define costab3     MAD_F(0x7e9d55fc)
++#  define costab4     MAD_F(0x7d8a5f40)
++#  define costab5     MAD_F(0x7c29fbee)
++#  define costab6     MAD_F(0x7a7d055b)
++#  define costab7     MAD_F(0x78848414)
++#  define costab8     MAD_F(0x7641af3d)
++#  define costab9     MAD_F(0x73b5ebd1)
++#  define costab10    MAD_F(0x70e2cbc6)
++#  define costab11    MAD_F(0x6dca0d14)
++#  define costab12    MAD_F(0x6a6d98a4)
++#  define costab13    MAD_F(0x66cf8120)
++#  define costab14    MAD_F(0x62f201ac)
++#  define costab15    MAD_F(0x5ed77c8a)
++#  define costab16    MAD_F(0x5a82799a)
++#  define costab17    MAD_F(0x55f5a4d2)
++#  define costab18    MAD_F(0x5133cc94)
++#  define costab19    MAD_F(0x4c3fdff4)
++#  define costab20    MAD_F(0x471cece7)
++#  define costab21    MAD_F(0x41ce1e65)
++#  define costab22    MAD_F(0x3c56ba70)
++#  define costab23    MAD_F(0x36ba2014)
++#  define costab24    MAD_F(0x30fbc54d)
++#  define costab25    MAD_F(0x2b1f34eb)
++#  define costab26    MAD_F(0x25280c5e)
++#  define costab27    MAD_F(0x1f19f97b)
++#  define costab28    MAD_F(0x18f8b83c)
++#  define costab29    MAD_F(0x12c8106f)
++#  define costab30    MAD_F(0x0c8bd35e)
++#  define costab31    MAD_F(0x0647d97c)
++
++
++      .macro  butterfly2_in out1, out2, out3, out4, in, idx_in1, idx_in2, idx_in3, idx_in4, coeff1, coeff2, tmplo, tmphi
++      mov     \tmplo, \coeff1
++      ld.w    \out1, \in[\idx_in1 * 4]
++      ld.w    \out2, \in[\idx_in2 * 4]
++      ld.w    \out3, \in[\idx_in3 * 4]
++      ld.w    \out4, \in[\idx_in4 * 4]
++      sub     \tmphi, \out1, \out2
++      add     \out1, \out2
++      mulsatrndwh.w   \out2, \tmphi, \tmplo:b
++
++      sub     \tmphi, \out3, \out4
++      mov     \tmplo, \coeff2
++      add     \out3, \out4
++      mulsatrndwh.w   \out4, \tmphi, \tmplo:b
++      .endm
++
++      .macro  butterfly2      in1, in2, in3, in4, coeff1, tmplo, tmphi, tmp
++      mov     \tmp, \coeff1
++      sub     \tmphi, \in1, \in2
++      add     \in1, \in2
++      mulsatrndwh.w   \in2, \tmphi, \tmp:b
++
++      sub     \tmphi, \in3, \in4
++      add     \in3, \in4
++      mulsatrndwh.w   \in4, \tmphi, \tmp:b
++      .endm
++
++      .macro  butterfly4      in1, in2, in3, in4, in5, in6, in7, in8, coeff1, tmplo, tmphi, tmp
++      mov     \tmp, \coeff1
++      sub     \tmphi, \in1, \in2
++      add     \in1, \in2
++      mulsatrndwh.w   \in2, \tmphi, \tmp:b
++
++      sub     \tmphi, \in3, \in4
++      add     \in3, \in4
++      mulsatrndwh.w   \in4, \tmphi, \tmp:b
++
++      sub     \tmphi, \in5, \in6
++      add     \in5, \in6
++      mulsatrndwh.w   \in6, \tmphi, \tmp:b
++
++      sub     \tmphi, \in7, \in8
++      add     \in7, \in8
++      mulsatrndwh.w   \in8, \tmphi, \tmp:b
++      .endm
++
++      .macro  scale   reg
++      .endm
++
++/*void dct32( mad_fixed_t const in[32], unsigned int slot,
++              mad_fixed_t lo[16][8], mad_fixed_t hi[16][8]) */
++
++      .global dct32_avr32
++dct32_avr32:
++      stm     --sp, r0-r7, r9-r11, lr
++
++      sub     sp, 32*4
++
++/*    t0   = in[0]  + in[31];  t16  = MUL(in[0]  - in[31], costab1);
++      t1   = in[15] + in[16];  t17  = MUL(in[15] - in[16], costab31); */
++      butterfly2_in   r4/*t0*/, r5/*t16*/, r6/*t1*/, r7/*t17*/, r12, 0, 31, 15, 16, costab1, costab31, r10, r11
++
++/*    t41  = t16 + t17;
++      t59  = MUL(t16 - t17, costab2);
++      t33  =   t0  + t1;
++      t50  = MUL(t0  - t1,  costab2);*/
++      butterfly2      r5/*t41*/, r7/*t59*/, r4/*t33*/, r6/*t50*/, costab2, r10, r11, lr
++
++/*    t2   = in[7]  + in[24];  t18  = MUL(in[7]  - in[24], costab15);
++      t3   = in[8]  + in[23];  t19  = MUL(in[8]  - in[23], costab17); */
++      butterfly2_in   r0/*t2*/, r1/*t18*/, r2/*t3*/, r3/*t19*/, r12, 7, 24, 8, 23, costab15, costab17, r10, r11
++
++/*    t42  = t18 + t19;
++      t60  = MUL(t18 - t19, costab30);
++      t34  = t2  + t3;
++      t51  = MUL(t2  - t3,  costab30); */
++      butterfly2      r1/*t42*/, r3/*t60*/, r0/*t34*/, r2/*t51*/, costab30, r10, r11, lr
++
++/*    t73  = t41 + t42;  t94  = MUL(t41 - t42, costab4);
++      t83  = t59 + t60;  t106 = MUL(t59 - t60, costab4); */
++
++
++/*    t69  = t33 + t34;  t89  = MUL(t33 - t34, costab4);
++      t78  = t50 + t51;  t100 = MUL(t50 - t51, costab4); */
++      butterfly4      r5/*t73*/, r1/*t94*/, r7/*t83*/, r3/*t106*/,r4/*t69*/, r0/*t89*/, r6/*t78*/, r2/*t100*/, costab4, r10, r11, lr
++
++/*    Store away the computed butterflies:
++      sp[0-7] = t83, t78, t73, t69, t106, t100, t94, t89 */
++      stm     sp, r0-r7
++
++
++/*    t4   = in[3]  + in[28];  t20  = MUL(in[3]  - in[28], costab7);
++      t5   = in[12] + in[19];  t21  = MUL(in[12] - in[19], costab25); */
++      butterfly2_in   r4/*t4*/, r5/*t20*/, r6/*t5*/, r7/*t21*/, r12, 3, 28, 12, 19, costab7, costab25, r10, r11
++
++/*    t43  = t20 + t21;
++      t61  = MUL(t20 - t21, costab14);
++      t35  = t4  + t5;
++      t52  = MUL(t4  - t5,  costab14); */
++      butterfly2      r5/*t43*/, r7/*t61*/, r4/*t35*/, r6/*t52*/, costab14, r10, r11, lr
++
++/*    t6   = in[4]  + in[27];  t22  = MUL(in[4]  - in[27], costab9);
++      t7   = in[11] + in[20];  t23  = MUL(in[11] - in[20], costab23); */
++      butterfly2_in   r0/*t6*/, r1/*t22*/, r2/*t7*/, r3/*t23*/, r12, 4, 27, 11, 20, costab9, costab23, r10, r11
++
++/*    t44  = t22 + t23;
++      t62  = MUL(t22 - t23, costab18);
++      t36  = t6  + t7;
++      t53  = MUL(t6  - t7,  costab18); */
++      butterfly2      r1/*t44*/, r3/*t62*/, r0/*t36*/, r2/*t53*/, costab18, r10, r11, lr
++
++/*    t74  = t43 + t44;  t95  = MUL(t43 - t44, costab28);
++      t84  = t61 + t62;  t107 = MUL(t61 - t62, costab28); */
++
++/*    t70  = t35 + t36;  t90  = MUL(t35 - t36, costab28);
++      t79  = t52 + t53;  t101 = MUL(t52 - t53, costab28); */
++      butterfly4      r5/*t74*/, r1/*t95*/, r7/*t84*/, r3/*t107*/, r4/*t70*/, r0/*t90*/, r6/*t79*/, r2/*t101*/, costab28, r10, r11, lr
++
++/*    Store away the computed butterflies:
++      sp[8-15] = t84, t79, t74, t70, t107, t101, t95, t90 */
++      sub     r10, sp, -8*4
++      stm     r10, r0-r7
++
++
++/*    t8   = in[1]  + in[30];  t24  = MUL(in[1]  - in[30], costab3);
++      t9   = in[14] + in[17];  t25  = MUL(in[14] - in[17], costab29); */
++      butterfly2_in   r4/*t8*/, r5/*t24*/, r6/*t9*/, r7/*t25*/, r12, 1, 30, 14, 17, costab3, costab29, r10, r11
++
++
++/*    t45  = t24 + t25;
++      t63  = MUL(t24 - t25, costab6);
++      t37  = t8  + t9;
++      t54  = MUL(t8  - t9,  costab6); */
++      butterfly2      r5/*t45*/, r7/*t63*/, r4/*t37*/, r6/*t54*/, costab6, r10, r11, lr
++
++/*    t10  = in[6]  + in[25];  t26  = MUL(in[6]  - in[25], costab13);
++      t11  = in[9]  + in[22];  t27  = MUL(in[9]  - in[22], costab19); */
++      butterfly2_in   r0/*t10*/, r1/*t26*/, r2/*t11*/, r3/*t27*/, r12, 6, 25, 9, 22, costab13, costab19, r10, r11
++
++/*    t46  = t26 + t27;
++      t64  = MUL(t26 - t27, costab26);
++      t38  = t10 + t11;
++      t55  = MUL(t10 - t11, costab26); */
++      butterfly2      r1/*t46*/, r3/*t64*/, r0/*t38*/, r2/*t55*/, costab26, r10, r11, lr
++
++/*    t75  = t45 + t46;  t96  = MUL(t45 - t46, costab12);
++      t85  = t63 + t64;  t108 = MUL(t63 - t64, costab12); */
++
++/*    t71  = t37 + t38;  t91  = MUL(t37 - t38, costab12);
++      t80  = t54 + t55;  t102 = MUL(t54 - t55, costab12); */
++      butterfly4      r5/*t75*/, r1/*t96*/, r7/*t85*/, r3/*t108*/, r4/*t71*/, r0/*t91*/, r6/*t80*/, r2/*t102*/, costab12, r10, r11, lr
++
++/*    Store away the computed butterflies:
++      sp[16-23] = t85, t80, t75, t71, t108, t102, t96, t91 */
++      sub     r10, sp, -16*4
++      stm     r10, r0-r7
++
++/*    t12  = in[2]  + in[29];  t28  = MUL(in[2]  - in[29], costab5);
++      t13  = in[13] + in[18];  t29  = MUL(in[13] - in[18], costab27); */
++      butterfly2_in   r4/*t12*/, r5/*t28*/, r6/*t13*/, r7/*t29*/, r12, 2, 29, 13, 18, costab5, costab27, r10, r11
++
++/*    t47  = t28 + t29;
++      t65  = MUL(t28 - t29, costab10);
++      t39  = t12 + t13;
++      t56  = MUL(t12 - t13, costab10); */
++      butterfly2      r5/*t47*/, r7/*t65*/, r4/*t39*/, r6/*t56*/, costab10, r10, r11, lr
++
++/*    t14  = in[5]  + in[26];  t30  = MUL(in[5]  - in[26], costab11);
++      t15  = in[10] + in[21];  t31  = MUL(in[10] - in[21], costab21);*/
++      butterfly2_in   r0/*t14*/, r1/*t30*/, r2/*t15*/, r3/*t31*/, r12, 5, 26, 10, 21, costab11, costab21, r10, r11
++
++/*    t48  = t30 + t31;
++      t66  = MUL(t30 - t31, costab22);
++      t40  = t14 + t15;
++      t57  = MUL(t14 - t15, costab22);*/
++      butterfly2      r1/*t48*/, r3/*t66*/, r0/*t40*/, r2/*t57*/, costab22, r10, r11, lr
++
++/*    t76  = t47 + t48;  t97  = MUL(t47 - t48, costab20);
++      t86  = t65 + t66;  t109 = MUL(t65 - t66, costab20);*/
++
++/*    t72  = t39 + t40;  t92  = MUL(t39 - t40, costab20);
++      t81  = t56 + t57;  t103 = MUL(t56 - t57, costab20);*/
++      butterfly4      r5/*t76*/, r1/*t97*/, r7/*t86*/, r3/*t109*/,r4/*t72*/, r0/*t92*/, r6/*t81*/, r2/*t103*/, costab20, r10, r11, lr
++
++/*    Store away the computed butterflies:
++      sp[24-31] = t86, t81, t76, t72, t109, t103, t97, t92 */
++      sub     r10, sp, -24*4
++      stm     r10, r0-r7
++
++/*      We now have the following on the stack:
++
++      sp[0-7] = t83, t78, t73, t69, t106, t100, t94, t89
++      sp[8-15] = t84, t79, t74, t70, t107, t101, t95, t90
++      sp[16-23] = t85, t80, t75, t71, t108, t102, t96, t91
++      sp[24-31] = t86, t81, t76, t72, t109, t103, t97, t92    */
++
++/*    Load    {r0...r7} = { t72, t76, t71, t75, t70, t74, t69, t73 } */
++      ld.d    r6, sp[2*4]
++      ld.d    r4, sp[10*4]
++      ld.d    r2, sp[18*4]
++      ld.d    r0, sp[26*4]
++
++
++/*    t113 = t69  + t70;
++      t141 = MUL(t69 - t70, costab8);
++
++      t115 = t73  + t74;
++      t144 = MUL(t73 - t74, costab8); */
++      butterfly2      r6/*t113*/, r4/*t141*/, r7/*t115*/, r5/*t144*/, costab8, r10, r11, lr
++
++/*    t114 = t71  + t72;
++      t142 = MUL(t71 - t72, costab24);
++
++      t116 = t75  + t76;
++      t145 = MUL(t75 - t76, costab24); */
++      butterfly2      r2/*t114*/, r0/*t142*/, r3/*t116*/, r1/*t145*/, costab24, r10, r11, lr
++
++
++/*
++      t191 = t113 + t114;
++      t192 = MUL(t113 - t114, costab16)
++
++      t32  = t115 + t116;
++      t177 = MUL(t115 - t116, costab16) ;
++
++      t143 = t141 + t142;
++      t190 = MUL(t141 - t142, costab16) ;
++
++      t146 = t144 + t145;
++      t184 = MUL(t144 - t145, costab16) ; */
++      butterfly4      r6/*t191*/, r2/*t192*/, r7/*t32*/, r3/*t177*/, r4/*t143*/, r0/*190*/, r5/*t146*/, r1/*t184*/, costab16, r10, r11, lr
++
++/*    Store away the computed butterflies:
++      sp[2-3] = t32, t191
++      sp[10-11] = t146, t143
++      sp[18-19] = t177, t192
++      sp[26-27] = t184, t190 */
++      st.d    sp[2*4] , r6
++      st.d    sp[10*4], r4
++      st.d    sp[18*4], r2
++      st.d    sp[26*4], r0
++
++/*    Load    {r0...r7} = { t81, t86, t80, t85, t79, t84, t78, t83 } */
++      ld.d    r6, sp[0*4]
++      ld.d    r4, sp[8*4]
++      ld.d    r2, sp[16*4]
++      ld.d    r0, sp[24*4]
++
++
++/*    t118 = t78  + t79;
++      t148 = MUL(t78 - t79, costab8);
++
++      t121 = t83  + t84;
++      t152 = MUL(t83 - t84, costab8); */
++      butterfly2      r6/*t118*/, r4/*t148*/, r7/*t121*/, r5/*t152*/, costab8, r10, r11, lr
++
++/*    t119 = t80  + t81;
++      t149 = MUL(t80 - t81, costab24);
++
++      t122 = t85  + t86;
++      t153 = MUL(t85 - t86, costab24); */
++      butterfly2      r2/*t119*/, r0/*t149*/, r3/*t122*/, r1/*t153*/, costab24, r10, r11, lr
++
++
++
++/*    t58  = t118 + t119;
++      t178 = MUL(t118 - t119, costab16) ;
++
++      t67  = t121 + t122;
++      t179 = MUL(t121 - t122, costab16) ;
++
++      t150 = t148 + t149;
++      t185 = MUL(t148 - t149, costab16) ;
++
++      t154 = t152 + t153;
++      t186 = MUL(t152 - t153, costab16) ; */
++      butterfly4      r6/*t58*/, r2/*t178*/, r7/*t67*/, r3/*t179*/, r4/*t150*/, r0/*185*/, r5/*t154*/, r1/*t186*/, costab16, r10, r11, lr
++
++/*    Store away the computed butterflies:
++      sp[0-1] = t67, t58
++      sp[8-9] = t154, t150
++      sp[16-17] = t179, t178
++      sp[24-25] = t186, t185 */
++      st.d    sp[0*4] , r6
++      st.d    sp[8*4], r4
++      st.d    sp[16*4], r2
++      st.d    sp[24*4], r0
++
++/*    Load    {r0...r7} = { t92, t97, t91, t96, t90, t95, t89, t94 } */
++      ld.d    r6, sp[6*4]
++      ld.d    r4, sp[14*4]
++      ld.d    r2, sp[22*4]
++      ld.d    r0, sp[30*4]
++
++
++/*    t125 = t89  + t90;
++      t157 = MUL(t89 - t90, costab8);
++
++      t128 = t94  + t95;
++      t161 = MUL(t94 - t95, costab8); */
++      butterfly2      r6/*t125*/, r4/*t157*/, r7/*t128*/, r5/*t161*/, costab8, r10, r11, lr
++
++/*    t126 = t91  + t92;
++      t158 = MUL(t91 - t92, costab24);
++
++      t129 = t96  + t97;
++      t162 = MUL(t96 - t97, costab24); */
++      butterfly2      r2/*t126*/, r0/*t158*/, r3/*t129*/, r1/*t162*/, costab24, r10, r11, lr
++
++
++/*
++      t93  = t125 + t126;
++      t180 = MUL(t125 - t126, costab16) ;
++
++      t98  = t128 + t129;
++      t181 = MUL(t128 - t129, costab16) ;
++
++      t159 = t157 + t158;
++      t187 = MUL(t157 - t158, costab16) ;
++
++      t163 = t161 + t162;
++      t188 = MUL(t161 - t162, costab16) ; */
++      butterfly4      r6/*t93*/, r2/*t180*/, r7/*t98*/, r3/*t181*/, r4/*t159*/, r0/*187*/, r5/*t163*/, r1/*t188*/, costab16, r10, r11, lr
++
++
++/*    Store away the computed butterflies:
++      sp[6-7] = t98, t93
++      sp[14-15] = t163, t159
++      sp[22-23] = t181, t180
++      sp[30-31] = t188, t187 */
++      st.d    sp[6*4] , r6
++      st.d    sp[14*4], r4
++      st.d    sp[22*4], r2
++      st.d    sp[30*4], r0
++
++/*    Load    {r0...r7} = { t103, t109, t102, t108, t101, t107, t100, t106 } */
++      ld.d    r6, sp[4*4]
++      ld.d    r4, sp[12*4]
++      ld.d    r2, sp[20*4]
++      ld.d    r0, sp[28*4]
++
++
++
++/*    t132 = t100 + t101;
++      t166 = MUL(t100 - t101, costab8);
++
++      t136 = t106 + t107;
++      t171 = MUL(t106 - t107, costab8); */
++      butterfly2      r6/*t132*/, r4/*t166*/, r7/*t136*/, r5/*t171*/, costab8, r10, r11, lr
++
++/*    t133 = t102 + t103;
++      t167 = MUL(t102 - t103, costab24);
++
++      t137 = t108 + t109;
++      t172 = MUL(t108 - t109, costab24);*/
++      butterfly2      r2/*t133*/, r0/*t167*/, r3/*t137*/, r1/*t172*/, costab24, r10, r11, lr
++
++
++/*    t104 = t132 + t133;
++      t182 = MUL(t132 - t133, costab16) ;
++
++      t110 = t136 + t137;
++      t183 = MUL(t136 - t137, costab16) ;
++
++      t168 = t166 + t167;
++      t189 = MUL(t166 - t167, costab16) ;
++
++      t173 = t171 + t172;
++      t208 = MUL(t171 - t172, costab16) ; */
++      butterfly4      r6/*t104*/, r2/*t182*/, r7/*t110*/, r3/*t183*/, r4/*t168*/, r0/*189*/, r5/*t173*/, r1/*t208*/, costab16, r10, r11, lr
++
++/*    Store away the computed butterflies:
++      sp[4-5] = t110, t104
++      sp[12-13] = t173, t168
++      sp[20-21] = t183, t182
++      sp[28-29] = t208, t189 */
++      st.d    sp[4*4] , r6
++      st.d    sp[12*4], r4
++      st.d    sp[20*4], r2
++      st.d    sp[28*4], r0
++
++/*    Now we have the following stack
++
++      sp[0-7]   = t67,  t58 , t32,  t191, t110, t104, t98,  t93
++      sp[8-15]  = t154, t150, t146, t143, t173, t168, t163, t159
++      sp[16-23] = t179, t178, t177, t192, t183, t182, t181, t180
++      sp[24-31] = t186, t185, t184, t190, t208, t189, t188, t187
++*/
++
++      /* Get slot, lo and hi from stack */
++      lddsp   lr, sp[32*4 + 4] /*slot*/
++      lddsp   r12, sp[32*4 + 8] /*lo*/
++      lddsp   r11, sp[32*4 + 12] /*hi*/
++
++      add     r12, r12, lr << 2
++      add     r11, r11, lr << 2
++
++
++/*    t49  = -(t67 * 2) + t32;
++       hi[14][slot] = SHIFT(t32);
++      t87  = -(t110 * 2) + t67;
++      t138 = -(t173 * 2) + t110;
++      t203 = -(t208 * 2) + t173; */
++
++      lddsp   r0/*t67*/, sp[0]
++      lddsp   r1/*t32*/, sp[2*4]
++      lddsp   r2/*t110*/, sp[4*4]
++      lddsp   r3/*t173*/, sp[12*4]
++      lddsp   r5/*t208*/, sp[28*4]
++
++      sub     r4/*t49*/, r1, r0 << 1
++      scale   r1
++      sub     r0/*t87*/, r0, r2 << 1
++      st.w    r11[14*SLOTS*4], r1
++      sub     r2/*t138*/, r2, r3 << 1
++      sub     r1/*t203*/, r3, r5 << 1
++
++/*      Live: r0 = t87, r1= t203, r2= t138, r4 = t49
++      Free:   r3, r5, r6, r7, r8, r9, r10, lr  */
++
++/*    t68  = (t98 * 2) + t49;
++      hi[12][slot] = SHIFT(-t49);
++      t130 = -(t163 * 2) + t98;
++      t201 = -(t188 * 2) + t163;
++      t200 = -(t186 * 2) + t154;
++      t111 = (t154 * 2) + t87;
++      t77  = -(-(t87 * 2) - t68);
++      t88  = (t146 * 2) + t77;
++      t199 = -(t184 * 2) + t146;
++      hi[ 8][slot] = SHIFT(-t77);
++      hi[10][slot] = SHIFT(t68);*/
++      lddsp   r3/*t98*/, sp[6*4]
++      lddsp   r5/*t163*/, sp[14*4]
++      lddsp   r6/*t188*/, sp[30*4]
++      lddsp   r10/*t186*/, sp[24*4]
++
++      add     r7/*t68*/, r4, r3 << 1
++      neg     r4
++      scale   r4
++      lddsp   r9/*t154*/, sp[8*4]
++      sub     r3/*t130*/, r3, r5 << 1
++      st.w    r11[12*SLOTS*4], r4
++      sub     r8/*t201*/, r5, r6 << 1
++      sub     r4/*t200*/, r9, r10 << 1
++      lddsp   lr/*t146*/, sp[10*4]
++      lddsp   r6/*t184*/, sp[26*4]
++      add     r10/*t111*/, r0, r9 << 1
++      add     r5/*t77*/,r7, r0 << 1
++      add     r0/*t88*/, r5, lr << 1
++      sub     r6/*t199*/, lr, r6 << 1
++      neg     r5
++      scale   r5
++      scale   r7
++      st.w    r11[8*SLOTS*4], r5
++      st.w    r11[10*SLOTS*4], r7
++
++/*      Live: r0 = t88, r1= t203, r2= t138, r3 = t130, r4 = t200,
++              r6 = 199, r8 = t201, r10 = t111
++      Free:   r5, r7, r9, lr    */
++
++
++/*
++      t123 = -(-(t138 * 2) - t111);
++      t174 = (t183 * 2) + t138;
++      t99  = -(t111 * 2) + t88;
++      hi[ 6][slot] = SHIFT(t88); */
++      lddsp   r5/*t183*/, sp[20*4]
++
++      add     r7/*t123*/, r10, r2 << 1
++      sub     r10/*t99*/, r0, r10 << 1
++      scale   r0
++      add     r2/*t174*/, r2, r5 << 1
++      st.w    r11[6*SLOTS*4], r0
++
++/*      Live: r1 = t203, r2 = t174, r3 = t130, r4 = t200,
++              r6 = t199, r7 = t123, r8 = t201, r10 = t99
++      Free:   r0, r5, r9, lr    */
++
++/*    t112 = -(t130 * 2) + t99;
++      t164 = (t181 * 2) + t130;
++      hi[ 4][slot] = SHIFT(-t99); */
++      lddsp   r0/*t181*/, sp[22*4]
++
++      sub     r5/*t112*/, r10, r3 << 1
++      neg     r10
++      scale   r10
++      add     r3/*164*/, r3, r0 << 1
++      st.w    r11[4*SLOTS*4], r10
++
++/*      Live: r1 = t203, r2 = t174, r3 = t164, r4 = t200,
++              r5 = t112, r6 = t199, r7 = t123, r8 = t201
++      Free:   r0, r9, r10, lr    */
++
++
++/*    t117 = -(-(t123 * 2) - t112);
++      t139 = (t179 * 2) + t123;
++      hi[ 2][slot] = SHIFT(t112); */
++      lddsp   r0/*t179*/, sp[16*4]
++
++      add     r9/*t117*/, r5, r7 << 1
++      scale   r5
++      add     r7/*t139*/, r7, r0 << 1
++      st.w    r11[2*SLOTS*4], r5
++
++/*      Live: r1 = t203, r2 = t174, r3 = t164, r4 = t200,
++              r6 = t199, r7 = t139, r8 = t201, r9 = t117
++      Free:   r0, r5, r10, lr    */
++
++/*    t155 = -(t174 * 2) + t139;
++      t204 = -(-(t203 * 2) - t174);
++      t124 = (t177 * 2) + t117;
++      hi[ 0][slot] = SHIFT(-t117);
++      t131 = -(t139 * 2) + t124;
++      lo[ 1][slot] = SHIFT(t124);*/
++      lddsp   r0/*t177*/, sp[18*4]
++
++      sub     r5/*t155*/, r7, r2 << 1
++      add     r2/*t204*/, r2, r1 << 1
++      add     r0/*t124*/, r9, r0 << 1
++      neg     r9
++      scale   r9
++      sub     r7/*t131*/, r0, r7 << 1
++      scale   r0
++      st.w    r11[0*SLOTS*4], r9
++      st.w    r12[1*SLOTS*4], r0
++
++/*      Live: r2 = t204, r3 = t164, r4 = t200,
++              r5 = t155, r6 = t199, r7 = t131, r8 = t201
++      Free:   r0, r1, r9, r10, lr    */
++
++/*    t140 = (t164 * 2) + t131;
++      lo[ 3][slot] = SHIFT(-t131);
++      t202 = -(-(t201 * 2) - t164);  */
++      add     r0/*t140*/, r7, r3 << 1
++      neg     r7
++      scale   r7
++      add     r3/*t202*/, r3, r8 << 1
++      st.w    r12[3*SLOTS*4], r7
++
++/*      Live: r0 = t140, r2 = t204, r3 = t202, r4 = t200,
++              r5 = t155, r6 = t199
++      Free:   r1, r7, r8, r9, r10, lr    */
++
++
++/*    t147 = -(-(t155 * 2) - t140);
++      lo[ 5][slot] = SHIFT(t140);
++      t175 = -(t200 * 2) + t155;
++      t156 = -(t199 * 2) + t147;
++      lo[ 7][slot] = SHIFT(-t147); */
++      add     r1/*t147*/, r0, r5 << 1
++      scale   r0
++      sub     r5/*t175*/, r5, r4 << 1
++      sub     r4/*156*/, r1, r6 << 1
++      neg     r1
++      scale   r1
++      st.w    r12[5*SLOTS*4], r0
++      st.w    r12[7*SLOTS*4], r1
++
++/*      Live: r2 = t204, r3 = t202,
++              r4 = t156, r5 = t175
++      Free:   r0, r1, r6, r7, r8, r9, r10, lr    */
++
++
++/*    t205 = -(-(t204 * 2) - t175);
++      t165 = -(t175 * 2) + t156;
++      lo[ 9][slot] = SHIFT(t156);
++      t176 = -(t202 * 2) + t165;
++      lo[11][slot] = SHIFT(-t165);
++      t206 = -(-(t205 * 2) - t176);
++      lo[15][slot] = SHIFT(-t206)
++      lo[13][slot] = SHIFT(t176) */
++      add     r0/*t205*/, r5, r2 << 1
++      sub     r1/*t165*/, r4, r5 << 1
++      scale   r4
++      sub     r3/*t176*/, r1, r3 << 1
++      st.w    r12[9*SLOTS*4], r4
++      neg     r1
++      scale   r1
++      add     r6/*t206*/, r3, r0 << 1
++      neg     r6
++      scale   r6
++      scale   r3
++      st.w    r12[11*SLOTS*4], r1
++      st.w    r12[15*SLOTS*4], r6
++      st.w    r12[13*SLOTS*4], r3
++
++/*    t193 = -((t190 * 2) - t143)
++      hi[ 7][slot] = SHIFT(t143);
++      lo[ 8][slot] = SHIFT(-t193);
++      t82  = -(t104 * 2) + t58;
++      hi[13][slot] = SHIFT(t58);
++      t134 = -(t168 * 2) + t104;
++      t196 = -(t189 * 2) + t168; */
++
++      lddsp   r0/*t190*/, sp[27*4]
++      lddsp   r1/*t143*/, sp[11*4]
++      lddsp   r2/*t104*/, sp[5*4]
++      lddsp   r3/*t58*/, sp[1*4]
++      lddsp   r4/*t168*/, sp[13*4]
++      lddsp   r5/*t189*/, sp[29*4]
++      sub     r0/*t193*/, r1, r0 << 1
++      neg     r0
++      scale   r1
++      scale   r0
++      st.w    r11[7*SLOTS*4], r1
++      st.w    r12[8*SLOTS*4], r0
++      sub     r0/*t82*/, r3, r2 << 1
++      scale   r3
++      sub     r2/*t134*/, r2, r4 << 1
++      sub     r4/*t196*/, r4, r5 << 1
++      st.w    r11[13*SLOTS*4], r3
++
++/*      Live: r0 = t82, r2 = t134,
++              r4 = t196
++      Free:   r1, r3, r5, r6, r7, r8, r9, r10, lr    */
++
++
++
++/*
++
++      t207 = -(t185 * 2) + t150;
++      t105 = (t150 * 2) + t82;
++      hi[ 9][slot] = SHIFT(-t82);
++      t120 = -(-(t134 * 2) - t105);
++      hi[ 5][slot] = SHIFT(t105);
++      t169 = (t182 * 2) + t134;
++
++      t135 = (t178 * 2) + t120;
++      hi[ 1][slot] = SHIFT(-t120);
++      t197 = -(-(t196 * 2) - t169);
++      t151 = -(t169 * 2) + t135;
++      lo[ 2][slot] = SHIFT(t135); */
++      lddsp   r1/*t185*/, sp[25*4]
++      lddsp   r3/*t150*/, sp[9*4]
++      lddsp   r5/*t182*/, sp[21*4]
++      lddsp   r8/*t178*/, sp[17*4]
++
++      sub     r6/*t207*/, r3, r1 << 1
++      add     r3/*t105*/, r0, r3 << 1
++      neg     r0
++      scale   r0
++      add     r7/*t120*/, r3, r2 << 1
++      scale   r3
++      st.w    r11[9*SLOTS*4], r0
++      st.w    r11[5*SLOTS*4], r3
++      add     r2/*t169*/, r2, r5 << 1
++      add     r8/*t135*/, r7, r8 << 1
++      neg     r7
++      scale   r7
++      add     r4/*t197*/, r2, r4 << 1
++      sub     r2/*t151*/, r8, r2 << 1
++      scale   r8
++      st.w    r11[1*SLOTS*4], r7
++      st.w    r12[2*SLOTS*4], r8
++
++/*      Live: r2 = t151, r4 = t197, r6 = t207
++
++      Free:   r0, r1, r3, r5, r7, r8, r9, r10, lr    */
++
++
++
++/*    t170 = -(t207 * 2) + t151;
++      lo[ 6][slot] = SHIFT(-t151);
++
++      t198 = -(-(t197 * 2) - t170);
++      lo[10][slot] = SHIFT(t170);
++      lo[14][slot] = SHIFT(-t198);
++
++      t127 = -(t159 * 2) + t93;
++      hi[11][slot] = SHIFT(t93);
++      t194 = -(t187 * 2) + t159;   */
++      lddsp   r0/*t159*/, sp[15*4]
++      lddsp   r1/*t93*/, sp[7*4]
++      lddsp   r3/*t187*/, sp[31*4]
++      sub     r5/*t170*/, r2, r6 << 1
++      neg     r2
++      scale   r2
++      add     r4/*t198*/,r5, r4 << 1
++      neg     r4
++      scale   r5
++      scale   r4
++      st.w    r12[6*SLOTS*4], r2
++      st.w    r12[10*SLOTS*4], r5
++      st.w    r12[14*SLOTS*4], r4
++      sub     r7/*t127*/, r1, r0 << 1
++      scale   r1
++      sub     r0/*t194*/, r0, r3 << 1
++      st.w    r11[11*SLOTS*4], r1
++
++
++/*      Live: r0 = t194, r7 = t127
++      Free:   r1, r2, r3, r4, r6, r5, r8, r9, r10, lr    */
++
++/*    t160 = (t180 * 2) + t127;
++      hi[ 3][slot] = SHIFT(-t127);
++      t195 = -(-(t194 * 2) - t160);
++      lo[ 4][slot] = SHIFT(t160);
++      lo[12][slot] = SHIFT(-t195);
++
++      hi[15][slot] = SHIFT(t191);
++      lo[ 0][slot] = SHIFT(t192); */
++      lddsp   r1/*t180*/, sp[23*4]
++      lddsp   r2/*t191*/, sp[3*4]
++      lddsp   r3/*t192*/, sp[19*4]
++      add     r4/*t160*/, r7, r1 << 1
++      neg     r7
++      scale   r7
++      add     r6/*t195*/, r4, r0 << 1
++      scale   r4
++      neg     r6
++      scale   r6
++      st.w    r11[3*SLOTS*4], r7
++      st.w    r12[4*SLOTS*4], r4
++      st.w    r12[12*SLOTS*4], r6
++      scale   r2
++      scale   r3
++      st.w    r11[15*SLOTS*4], r2
++      st.w    r12[0*SLOTS*4], r3
++
++      sub     sp, -32*4
++      ldm     sp++,r0-r7, r9-r11, pc
+diff --git a/fixed.h b/fixed.h
+index 4b58abf..0a1350a 100644
+--- a/fixed.h
++++ b/fixed.h
+@@ -237,6 +237,46 @@ mad_fixed_t mad_f_mul_inline(mad_fixed_t x, mad_fixed_t y)
+ #   define MAD_F_SCALEBITS  MAD_F_FRACBITS
+ #  endif
++/* --- AVR32 ----------------------------------------------------------------- */
++
++# elif defined(FPM_AVR32)
++
++typedef   signed short mad_coeff_t;
++
++struct DWstruct {int high, low;};
++
++typedef union {
++  struct DWstruct s;
++  long long ll;
++} DWunion;
++
++#  define MAD_F_MLX(hi, lo, x, y)  \
++  { register DWunion __res; \
++    __res.ll = (long long)x * (long long)y; \
++    /*    asm ("muls.d\t%0, %1, %2" : "=r" (__res.ll) : "r" (x), "r" (y));*/ \
++    hi = __res.s.high; \
++    lo = __res.s.low; }
++
++#  define MAD_F_MLA(hi, lo, x, y)  \
++  { register DWunion __res; \
++    __res.s.high = hi; \
++    __res.s.low = lo; \
++    __res.ll += (long long)x * (long long)y; \
++/*  asm ("macs.d\t%0, %1, %2" : "+r" (__res.ll) : "r" (x), "r" (y));*/ \
++    hi = __res.s.high; \
++    lo = __res.s.low; }
++
++
++#  define MAD_F_MLN(hi, lo)  \
++    asm ("neg %0\n"  \
++       "acr   %1\n"  \
++         "neg   %1"    \
++       : "+r" (lo), "+r" (hi) \
++       :: "cc")
++
++
++#  define MAD_F_SCALEBITS  MAD_F_FRACBITS
++
+ /* --- ARM ----------------------------------------------------------------- */
+ # elif defined(FPM_ARM)
+@@ -433,6 +473,8 @@ mad_fixed_t mad_f_mul_inline(mad_fixed_t x, mad_fixed_t y)
+  *
+  * Pre-rounding is required to stay within the limits of compliance.
+  */
++typedef   signed int mad_coeff_t;
++
+ #  if defined(OPT_SPEED)
+ #   define mad_f_mul(x, y)    (((x) >> 12) * ((y) >> 16))
+ #  else
+diff --git a/imdct_avr32.S b/imdct_avr32.S
+new file mode 100644
+index 0000000..d0ee6b4
+--- /dev/null
++++ b/imdct_avr32.S
+@@ -0,0 +1,789 @@
++/*
++   Optimized 36-point Inverse Modified Cosine Transform (IMDCT)
++   Copyright 2003-2006 Atmel Corporation.
++
++   Written by Ronny Pedersen, Atmel Norway
++
++   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. */
++
++#define MAD_F(x) ((x + (1 << 13)) >> 14)
++
++      .public imdct36_avr32
++
++/*
++      void imdct36(mad_fixed_t const x[18], mad_fixed_t y[36])
++      {
++      mad_fixed_t tmp[18];
++      int i;
++*/
++/* DCT-IV */
++imdct36_avr32:
++      pushm   r0-r7,r11,lr
++      sub     sp, 4*18
++/*
++      {
++      mad_fixed_t tmp2[18];
++      int i;
++
++      /* scale[i] = 2 * cos(PI * (2 * i + 1) / (4 * 18)) */
++/*
++      static mad_fixed_t const scale[18] = {
++      MAD_F(0x1ff833fa), MAD_F(0x1fb9ea93), MAD_F(0x1f3dd120),
++      MAD_F(0x1e84d969), MAD_F(0x1d906bcf), MAD_F(0x1c62648b),
++      MAD_F(0x1afd100f), MAD_F(0x1963268b), MAD_F(0x1797c6a4),
++      MAD_F(0x159e6f5b), MAD_F(0x137af940), MAD_F(0x11318ef3),
++      MAD_F(0x0ec6a507), MAD_F(0x0c3ef153), MAD_F(0x099f61c5),
++      MAD_F(0x06ed12c5), MAD_F(0x042d4544), MAD_F(0x0165547c)
++      };
++*/
++
++  /* scaling */
++
++/*
++      for (i = 0; i < 18; i += 3) {
++              tmp2[i + 0] = mad_f_mul(x[i + 0], scale[i + 0]);
++              tmp2[i + 1] = mad_f_mul(x[i + 1], scale[i + 1]);
++              tmp2[i + 2] = mad_f_mul(x[i + 2], scale[i + 2]);
++        }
++*/
++      /* even input butterfly */
++
++/*
++      for (i = 0; i < 9; i += 3) {
++              tmp3[i + 0] = tmp2[i + 0] + tmp2[18 - (i + 0) - 1];
++              tmp3[i + 1] = tmp2[i + 1] + tmp2[18 - (i + 1) - 1];
++              tmp3[i + 2] = tmp2[i + 2] + tmp2[18 - (i + 2) - 1];
++        }
++      for (i = 0; i < 9; i += 3) {
++              tmp4[i + 0] = tmp2[i + 0] - tmp2[18 - (i + 0) - 1];
++              tmp4[i + 1] = tmp2[i + 1] - tmp2[18 - (i + 1) - 1];
++              tmp4[i + 2] = tmp2[i + 2] - tmp2[18 - (i + 2) - 1];
++        }
++*/
++
++      ld.d    r8, r12[0]                              /*r8 = x[1], r9 = x[0]*/
++      ld.d    r0, pc[scale_dctIV - .]                 /*r0 = {scale[2], scale[3]}, r1 = { scale[0], scale[1] }*/
++      ld.d    r2, r12[2*4]                            /*r2 = x[3], r3 = x[2]*/
++      ld.d    r4, pc[scale_dctIV - . + 14*2]          /*r4 = {scale[16], scale[17]}, r5 = { scale[14], scale[15] }*/
++      mulsatrndwh.w   r9/*tmp2[0]*/, r9, r1:t         /*tmp2[0] = mad_f_mul(x[0], scale[0]) */
++      ld.d    r6, r12[16*4]                           /*r6 = x[17], r7 = x[16]*/
++      mulsatrndwh.w   r8/*tmp2[1]*/, r8, r1:b         /*tmp2[1] = mad_f_mul(x[1], scale[1]) */
++      mulsatrndwh.w   r3/*tmp2[2]*/, r3, r0:t         /*tmp2[2] = mad_f_mul(x[2], scale[2]) */
++      mulsatrndwh.w   r2/*tmp2[3]*/, r2, r0:b         /*tmp2[3] = mad_f_mul(x[3], scale[3]) */
++      ld.d    r0, r12[14*4]                           /*r0 = x[15], r1 = x[14]*/
++      mulsatrndwh.w   r7/*tmp2[16]*/, r7, r4:t        /*tmp2[16] = mad_f_mul(x[16], scale[16]) */
++      mulsatrndwh.w   r6/*tmp2[17]*/, r6, r4:b        /*tmp2[17] = mad_f_mul(x[17], scale[17]) */
++      mulsatrndwh.w   r1/*tmp2[14]*/, r1, r5:t        /*tmp2[14] = mad_f_mul(x[14], scale[14]) */
++      mulsatrndwh.w   r0/*tmp2[15]*/, r0, r5:b        /*tmp2[15] = mad_f_mul(x[15], scale[15]) */
++
++      ld.d    r4, r12[4*4]                            /*r4 = x[5], r5 = x[4]*/
++
++      sub             lr/*tmp4[0]*/, r9, r6
++      add             r6/*tmp3[0]*/, r9, r6
++      sub             r10/*tmp4[1]*/, r8, r7
++      add             r7/*tmp3[1]*/, r8, r7
++      sub             r9/*tmp4[2]*/, r3, r0
++      add             r0/*tmp3[2]*/, r3, r0
++      sub             r8/*tmp4[3]*/, r2, r1
++      add             r1/*tmp3[3]*/, r2, r1
++
++      ld.d    r2, pc[scale_dctIV - . + 4*2]           /*r2 = {scale[6], scale[7]}, r3 = { scale[4], scale[5] }*/
++
++      stm             --sp, r8-r10, lr                /*sp[0] = tmp4[0],sp[1] = tmp4[1],
++                                                        sp[2] = tmp4[2],sp[3] = tmp4[3] */
++
++      /* Registers used:      r0 = tmp3[2], r1 = tmp3[3], r6 = tmp3[0], r7 = tmp3[1], r12 = x
++         Free registers:      r2-r5, r8-r11, lr
++      */
++      ld.d    r8, r12[6*4]                            /*r8 = x[7], r9 = x[6]*/
++      ld.d    r10, pc[scale_dctIV - . + 10*2]         /*r10 = {scale[12], scale[13]}, r11 = { scale[10], scale[11] }*/
++      mulsatrndwh.w   r5/*tmp2[4]*/, r5, r3:t         /*tmp2[4] = mad_f_mul(x[4], scale[4]) */
++      mulsatrndwh.w   r4/*tmp2[5]*/, r4, r3:b         /*tmp2[5] = mad_f_mul(x[5], scale[5]) */
++      mulsatrndwh.w   r9/*tmp2[6]*/, r9, r2:t         /*tmp2[6] = mad_f_mul(x[6], scale[6]) */
++      mulsatrndwh.w   r8/*tmp2[7]*/, r8, r2:b         /*tmp2[7] = mad_f_mul(x[7], scale[7]) */
++
++      ld.d    r2, r12[12*4]                           /*r2 = x[13], r3 = x[12]*/
++      ld.w    lr, r12[11*4]                           /*lr = x[11] */
++      mulsatrndwh.w   r3/*tmp2[12]*/, r3, r10:t       /*tmp2[12] = mad_f_mul(x[12], scale[12]) */
++      mulsatrndwh.w   r2/*tmp2[13]*/, r2, r10:b       /*tmp2[13] = mad_f_mul(x[13], scale[13]) */
++      ld.w    r10, r12[10*4]                          /*r10 = x[10] */
++      mulsatrndwh.w   lr/*tmp2[11]*/, lr, r11:b       /*tmp2[11] = mad_f_mul(x[11], scale[11]) */
++      mulsatrndwh.w   r10/*tmp2[10]*/, r10, r11:t     /*tmp2[10] = mad_f_mul(x[10], scale[10]) */
++
++      sub     r11/*tmp4[4]*/, r5, r2
++      add     r2/*tmp3[4]*/, r5, r2
++      sub     r5/*tmp4[5]*/, r4, r3
++      add     r3/*tmp3[5]*/, r4, r3
++      sub     r4/*tmp4[6]*/, r9, lr
++      add     lr/*tmp3[6]*/, r9, lr
++      sub     r9/*tmp4[7]*/, r8, r10
++      add     r10/*tmp3[7]*/, r8, r10
++      lddpc   r8, scale_dctIV + 8*2                   /*r8 = {scale[8], scale[9]} */
++
++      stm     --sp, r4, r5, r9, r11                   /*sp[0] = tmp4[4],sp[1] = tmp4[7],
++                                                        sp[2] = tmp4[5],sp[3] = tmp4[6] */
++      ld.d    r4, r12[8*4]                            /*r4 = x[9], r5 = x[8]*/
++      mulsatrndwh.w   r5/*tmp2[8]*/, r5, r8:t         /*tmp2[8] = mad_f_mul(x[8], scale[8]) */
++      mulsatrndwh.w   r4/*tmp2[9]*/, r4, r8:b         /*tmp2[9] = mad_f_mul(x[9], scale[9]) */
++      sub             r9/*tmp4[8]*/, r5, r4
++      add             r5/*tmp3[8]*/, r5, r4
++
++      st.w    --sp, r9                                /* sp[0] = tmp4[8] */
++
++      /* Registers used:
++
++              r0=tmp3[2], r1=tmp3[3], r2=tmp3[4], r3=tmp3[5], r5=tmp3[8], r6 = tmp3[0],
++              r7 = tmp3[1], r10=tmp3[7], lr=tmp3[6]
++         Free registers:
++              r4, r8, r9, r11, r12
++      */
++
++
++  /* SDCT-II */
++/*
++
++      {
++      mad_fixed_t tmp3[9];
++      int i;
++*/
++      /* scale[i] = 2 * cos(PI * (2 * i + 1) / (2 * 18)) */
++/*
++      static mad_fixed_t const scale[9] = {
++      MAD_F(0x1fe0d3b4), MAD_F(0x1ee8dd47), MAD_F(0x1d007930),
++      MAD_F(0x1a367e59), MAD_F(0x16a09e66), MAD_F(0x125abcf8),
++      MAD_F(0x0d8616bc), MAD_F(0x08483ee1), MAD_F(0x02c9fad7)
++      };
++*/
++  /* divide the 18-point SDCT-II into two 9-point SDCT-IIs */
++
++
++  /* fastdct */
++
++/*
++      {
++      mad_fixed_t a0,  a1,  a2,  a3,  a4,  a5,  a6,  a7,  a8,  a9,  a10, a11, a12;
++      mad_fixed_t a13, a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24, a25;
++      mad_fixed_t m0,  m1,  m2,  m3,  m4,  m5,  m6,  m7;
++*/
++//      enum {
++//        c0 =  MAD_F(0x1f838b8d),  /* 2 * cos( 1 * PI / 18) */
++//        c1 =  MAD_F(0x1bb67ae8),  /* 2 * cos( 3 * PI / 18) */
++//        c2 =  MAD_F(0x18836fa3),  /* 2 * cos( 4 * PI / 18) */
++//        c3 =  MAD_F(0x1491b752),  /* 2 * cos( 5 * PI / 18) */
++//        c4 =  MAD_F(0x0af1d43a),  /* 2 * cos( 7 * PI / 18) */
++//        c5 =  MAD_F(0x058e86a0),  /* 2 * cos( 8 * PI / 18) */
++//        c6 = -MAD_F(0x1e11f642)   /* 2 * cos(16 * PI / 18) */
++//      };
++
++/*
++      a2 = tmp3[6] + tmp3[2];
++      a6 = tmp3[8] + tmp3[0];
++      a11 = a2  - a6;
++      m5 = mad_f_mul(a11, -c6) ;
++      a4 = tmp3[1] + tmp3[7];
++
++      a18 =     tmp3[4] + a4;
++      a19 = -2 * tmp3[4] + a4;
++
++      a0 = tmp3[3] + tmp3[5];
++
++*/
++      add     r11/*a4*/, r7, r10
++      add     r12/*a18*/, r2, r11
++      sub     r11/*a19*/, r11, r2<<1
++
++      add     r4/*a2*/, lr, r0
++      add     r8/*a6*/, r5, r6
++      sub     r9/*a11*/, r4, r8
++
++      st.d    --sp, r0        /* sp[0] = tmp3[3], sp1[1] = tmp3[2]*/
++
++      mov     r2, MAD_F(0x1e11f642)
++      mulsatrndwh.w   r9/*m5*/, r9, r2:b
++
++      add     r2/*a0*/, r1, r3
++
++      /* Registers used:
++
++              r2=a0, r3=tmp3[5], r4=a2, r5=tmp3[8], r6 = tmp3[0],
++              r7 = tmp3[1], r8=a6, r10=tmp3[7], r9=m5, r11=a19, r12=a18,lr=tmp3[6]
++         Free registers:
++              r0, r1
++      */
++
++/*
++      a8  = a0  + a2;
++      a12 = a8  + a6;
++      a10 = a0  - a6;
++      a9  = a0  - a2;
++      m7 = mad_f_mul(a9,  -c2) ;
++      m6 = mad_f_mul(a10, -c5) ;
++*/
++
++      add     r0/*a8*/, r2, r4
++      add     r0/*a12*/, r8
++      rsub    r8/*a10*/, r2
++      sub     r2/*a9*/, r4
++      mov     r1, -MAD_F(0x18836fa3)
++      mulsatrndwh.w   r2/*m7*/, r2, r1:b
++      mov     r1, -MAD_F(0x058e86a0)
++      mulsatrndwh.w   r8/*m6*/, r8, r1:b
++
++      /* Registers used:
++
++              r0=a12, r2=m7, r3=tmp3[5], r5=tmp3[8], r6 = tmp3[0],
++              r7 = tmp3[1], r8=m6, r10=tmp3[7], r9=m5, r11=a19, r12=a18,lr=tmp3[6]
++         Free registers:
++              r1, r4
++      */
++
++
++/*
++      a21 = -a19 - (m5 << 1);
++      tmp[ 8] = a21 - (m6 << 1);
++
++      a20 = a19 - (m5 << 1);
++      tmp[ 4] = (m7 << 1)  + a20;
++      a22 = -a19 + (m6 << 1);
++      tmp[16] = a22 + (m7 << 1);
++      tmp[ 0] = a18 + a12;
++      tmp[12] = a12 - 2 * a18;
++*/
++      add     r1/*a21*/, r11, r9 << 1
++      neg     r1
++      sub     r1/*tmp[8]*/, r1, r8 << 1
++      stdsp   sp[4*11/*tmp3[..] on the stack*/ + 8*4], r1
++      sub     r4/*a20*/, r11, r9 << 1
++      add     r4/*tmp[4]*/, r4, r2 << 1
++      stdsp   sp[4*11/*tmp3[..] on the stack*/ + 4*4], r4
++      neg     r11
++      add     r1/*a22*/, r11, r8 << 1
++      add     r1/*tmp[16]*/, r1, r2 << 1
++      stdsp   sp[4*11/*tmp3[..] on the stack*/ + 16*4], r1
++      add     r4, r12, r0
++      sub     r1, r0, r12 << 1
++      stdsp   sp[4*11/*tmp3[..] on the stack*/ + 0*4], r4
++      stdsp   sp[4*11/*tmp3[..] on the stack*/ + 12*4], r1
++
++      ld.d    r0, sp++
++
++      /* Registers used:
++
++              r0 = tmp3[2], r1 = tmp3[3], r3=tmp3[5], r5=tmp3[8], r6 = tmp3[0],
++              r7 = tmp3[1], r10=tmp3[7], r11=a19, lr=tmp3[6]
++         Free registers:
++              r2,r4,r8,r9,r12
++      */
++
++/*
++      a5 = tmp3[1] - tmp3[7];
++      a7 = tmp3[8] - tmp3[0];
++      a3 = tmp3[6] - tmp3[2];
++      a1 = tmp3[3] - tmp3[5];
++      a13 = a1  - a3;
++      a14 = a13 + a7;
++      m3 = mad_f_mul(a14, -c1) ;
++      m4 = mad_f_mul(a5,  -c1) ;
++      tmp[ 6] = m3 << 1;
++*/
++      sub     r7/*a5*/, r10
++      sub     r2/*a7*/, r5, r6
++      sub     r4/*a3*/, lr, r0
++      sub     r8/*a1*/, r1, r3
++      sub     r9/*a13*/, r8, r4
++      add     r12/*a14*/, r9, r2
++      mov     r0, -MAD_F(0x1bb67ae8)
++      mulsatrndwh.w   r12/*m3*/, r12, r0:b
++      mulsatrndwh.w   r7/*m4*/, r7, r0:b
++      lsl     r12, 1
++      stdsp   sp[4*9/*tmp3[..] on the stack*/ + 6*4], r12
++
++      /* Registers used:
++              r2 = a7, r4 = a3, r7 = m4, r8 = a1, r12 = m3
++
++         Free registers:
++              r0, r1, r3, r5, r6, r10, r9, r11, lr
++      */
++
++
++/*
++      a15 = a3  + a7;
++      m2 = mad_f_mul(a15, -c4) ;
++      a17 = a1  + a3;
++      m0 = mad_f_mul(a17, -c3) ;
++      a23 = (m4 << 1)  + (m2 << 1);
++      tmp[14] = a23 + (m0 << 1); */
++      add     r0/*a15*/, r4, r2
++      mov     r1, -MAD_F(0x0af1d43a)
++      mulsatrndwh.w   r0/*m2*/, r0, r1:b
++      mov     r3, -MAD_F(0x1491b752)
++      add     r5/*a17*/, r8, r4
++      mulsatrndwh.w   r5/*m0*/, r5, r3:b
++      lsl     r7, 1
++      add     r6/*a23*/, r7, r0 << 1
++      add     r6/*tmp[14]*/, r6, r5 << 1
++      stdsp   sp[4*9/*tmp3[..] on the stack*/ + 14*4], r6
++
++      /* Registers used:
++              r0 = m2, r2 = a7, r5 = m0, r7 = m4, r8 = a1
++
++         Free registers:
++              r1, r3, r4, r6, r10, r9, r11, lr
++      */
++
++/*
++      a16 = a1  - a7;
++      m1 = mad_f_mul(a16, -c0) ;
++      a24 = (m4 << 1)  - (m2 << 1);
++      tmp[10] = a24 - (m1 << 1);
++
++      a25 = (m4 << 1)  + (m1 << 1);
++      tmp[ 2] = (m0 << 1)  - a25;
++*/
++      sub     r3/*a16*/, r8, r2
++      mov     r4,  -MAD_F(0x1f838b8d)
++      mulsatrndwh.w   r3/*m1*/, r3, r4:b
++      sub     r1/*a24*/, r7, r0 << 1
++      sub     r1/*tmp[10]*/, r1, r3 << 1
++      stdsp   sp[4*9/*tmp3[..] on the stack*/ + 10*4], r1
++      add     r7/*a25*/, r7, r3 << 1
++      sub     r7, r7, r5 << 1
++      neg     r7
++      stdsp   sp[4*9/*tmp3[..] on the stack*/ + 2*4], r7
++
++
++
++
++  /* output to every other slot for convenience */
++
++  /*} */
++  /* End fastdct */
++
++  /* odd input butterfly and scaling */
++
++
++      /*  On the stack:
++              sp[0] = tmp4[8], sp[1] = tmp4[4],sp[2] = tmp4[7], sp[3] = tmp4[5],sp[4] = tmp4[6]
++              sp[5] = tmp4[0], sp[6] = tmp4[1],sp[7] = tmp4[2],sp[8] = tmp4[3]
++      */
++
++  /*
++        tmp3[0] = mad_f_mul(tmp4[0], scale[0]);
++        tmp3[1] = mad_f_mul(tmp4[1], scale[1]) << 1;
++        tmp3[2] = mad_f_mul(tmp4[2], scale[2]);
++        tmp3[3] = mad_f_mul(tmp4[3], scale[3]) << 1;
++        tmp3[4] = mad_f_mul(tmp4[4], scale[4]);
++        tmp3[5] = mad_f_mul(tmp4[5], scale[5]);
++        tmp3[6] = mad_f_mul(tmp4[6], scale[6]) << 1;
++        tmp3[7] = mad_f_mul(tmp4[7], scale[7]);
++        tmp3[8] = mad_f_mul(tmp4[8], scale[8]) << 1;
++  */
++      /* Registers used:
++              r1 = tmp4[3], r2 = tmp4[2], r3 = tmp4[1], r4 = tmp4[0], r7 = tmp4[6]
++              r10 = tmp4[5], r11 = tmp4[7], r12 = tmp4[4], lr = tmp4[8]
++
++         Free registers:
++              r0, r5, r6, r8, r9
++      */
++      ld.d    r8, pc[ scale_sdctII - . + 4*2] /* r8 = { scale[6], scale[7] }, r9 = { scale[4], scale[5]} */
++      ldm     sp++, r1, r2, r3, r4, r7, r10, r11, r12, lr
++      mov     r5, MAD_F(0x02c9fad7)           /* r3 = scale[8] */
++      mulsatrndwh.w   r5/*tmp3[8]*/, lr, r5:b
++      mulsatrndwh.w   lr/*tmp3[6]*/, r7, r8:t
++      ld.d    r6, pc[ scale_sdctII - . + 0*2] /* r6 = { scale[2], scale[3] }, r7 = { scale[0], scale[1]} */
++      lsl     lr, 1
++      lsl     r5, 1
++      mulsatrndwh.w   r0/*tmp3[2]*/, r2, r6:t
++      mulsatrndwh.w   r1/*tmp3[3]*/, r1, r6:b
++      mulsatrndwh.w   r6/*tmp3[0]*/, r4, r7:t
++      mulsatrndwh.w   r7/*tmp3[1]*/, r3, r7:b
++      mulsatrndwh.w   r3/*tmp3[5]*/, r10, r9:b
++      mulsatrndwh.w   r2/*tmp3[4]*/, r12, r9:t
++      mulsatrndwh.w   r9/*tmp3[7]*/, r11, r8:b
++      lsl     r1, 1
++      lsl     r7, 1
++
++
++  /* fastdct */
++
++/*
++      {
++      mad_fixed_t a0,  a1,  a2,  a3,  a4,  a5,  a6,  a7,  a8,  a9,  a10, a11, a12;
++      mad_fixed_t a13, a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24, a25;
++      mad_fixed_t m0,  m1,  m2,  m3,  m4,  m5,  m6,  m7;
++*/
++//      enum {
++//        c0 =  MAD_F(0x1f838b8d),  /* 2 * cos( 1 * PI / 18) */
++//        c1 =  MAD_F(0x1bb67ae8),  /* 2 * cos( 3 * PI / 18) */
++//        c2 =  MAD_F(0x18836fa3),  /* 2 * cos( 4 * PI / 18) */
++//        c3 =  MAD_F(0x1491b752),  /* 2 * cos( 5 * PI / 18) */
++//        c4 =  MAD_F(0x0af1d43a),  /* 2 * cos( 7 * PI / 18) */
++//        c5 =  MAD_F(0x058e86a0),  /* 2 * cos( 8 * PI / 18) */
++//        c6 = -MAD_F(0x1e11f642)   /* 2 * cos(16 * PI / 18) */
++//      };
++
++      /* Registers used:
++
++              r0=tmp3[2], r1=tmp3[3], r2=tmp3[4], r3=tmp3[5], r5=tmp3[8], r6 = tmp3[0],
++              r7 = tmp3[1], r9=tmp3[7], lr=tmp3[6]
++         Free registers:
++              r4, r8, r10, r11, r12
++      */
++
++/*
++      a2 = tmp3[6] + (tmp3[2] << 1);
++      a6 = tmp3[8] + (tmp3[0] << 1);
++      a11 = a2 - a6;
++      m5 = mad_f_mul(a11, c6) ;
++      a4 = tmp3[1] + (tmp3[7] << 1);
++
++      a18 =     (tmp3[4] << 1) + a4;
++      a19 = -2 * (tmp3[4] << 1) + a4;
++
++      a0 = tmp3[3] + (tmp3[5] << 1);
++
++*/
++      add     r11/*a4*/, r7, r9 << 1
++      add     r12/*a18*/, r11, r2 << 1
++      sub     r11/*a19*/, r11, r2 << 2
++
++      add     r4/*a2*/, lr, r0 << 1
++      add     r8/*a6*/, r5, r6 << 1
++      sub     r10/*a11*/, r4, r8
++
++      st.d    --sp, r0        /* sp[0] = tmp3[3], sp1[1] = tmp3[2]*/
++
++      mov     r2, -MAD_F(0x1e11f642)
++      mulsatrndwh.w   r10/*m5*/, r10, r2:b
++
++      add     r2/*a0*/, r1, r3 << 1
++
++      /* Registers used:
++
++              r2=a0, r3=tmp3[5], r4=a2, r5=tmp3[8], r6 = tmp3[0],
++              r7 = tmp3[1], r8=a6, r9=tmp3[7], r10=m5, r11=a19, r12=a18,lr=tmp3[6]
++         Free registers:
++              r0, r1
++      */
++
++/*
++      a8  = a0  + a2;
++      a12 = a8  + a6;
++      a10 = a0  - a6;
++      a9  = a0  - a2;
++      m7 = mad_f_mul(a9,  -c2) ;
++      m6 = mad_f_mul(a10, -c5) ;
++*/
++
++      add     r0/*a8*/, r2, r4
++      add     r0/*a12*/, r8
++      rsub    r8/*a10*/, r2
++      sub     r2/*a9*/, r4
++      mov     r1, -MAD_F(0x18836fa3)
++      mulsatrndwh.w   r2/*m7*/, r2, r1:b
++      mov     r1, -MAD_F(0x058e86a0)
++      mulsatrndwh.w   r8/*m6*/, r8, r1:b
++
++      /* Registers used:
++
++              r0=a12, r2=m7, r3=tmp3[5], r5=tmp3[8], r6 = tmp3[0],
++              r7 = tmp3[1], r8=m6, r9=tmp3[7], r10=m5, r11=a19, r12=a18,lr=tmp3[6]
++         Free registers:
++              r1, r4
++      */
++
++
++/*
++      a21 = -a19 + (m5 << 1);
++      tmp[ 9] = a21 - (m6 << 1);
++
++      a20 = -(-a19 - (m5 << 1));
++      tmp[ 5] = (m7 << 1)  + a20;
++      a22 = -a19 + (m6 << 1);
++      tmp[17] = a22 + (m7 << 1);
++      tmp[ 1] = a18 + a12;
++      tmp[13] = a12 - 2 * a18;
++*/
++      sub     r1/*a21*/, r11, r10 << 1
++      neg     r1
++      sub     r1/*tmp[9]*/, r1, r8 << 1
++      stdsp   sp[4*2/*tmp3[..] on the stack*/ + 9*4], r1
++      add     r4/*a20*/, r11, r10 << 1
++      add     r4/*tmp[5]*/, r4, r2 << 1
++      stdsp   sp[4*2/*tmp3[..] on the stack*/ + 5*4], r4
++      neg     r11
++      add     r1/*a22*/, r11, r8 << 1
++      add     r1/*tmp[17]*/, r1, r2 << 1
++      stdsp   sp[4*2/*tmp3[..] on the stack*/ + 17*4], r1
++      add     r4, r12, r0
++      sub     r1, r0, r12 << 1
++      stdsp   sp[4*2/*tmp3[..] on the stack*/ + 1*4], r4
++      stdsp   sp[4*2/*tmp3[..] on the stack*/ + 13*4], r1
++
++      ld.d    r0, sp++
++
++      /* Registers used:
++
++              r0 = tmp3[2], r1 = tmp3[3], r3=tmp3[5], r5=tmp3[8], r6 = tmp3[0],
++              r7 = tmp3[1], r9=tmp3[7], r11=a19, lr=tmp3[6]
++         Free registers:
++              r2,r4,r8,r10,r12
++      */
++
++/*
++      a5 = tmp3[1] - (tmp3[7] << 1);
++      a7 = tmp3[8] - (tmp3[0] << 1);
++      a3 = tmp3[6] - (tmp3[2] << 1);
++      a1 = tmp3[3] - (tmp3[5] << 1);
++      a13 = a1  - a3;
++      a14 = a13 + a7;
++      m3 = mad_f_mul(a14, -c1) ;
++      m4 = mad_f_mul(a5,  -c1) ;
++      tmp[ 7] = m3 << 1;
++*/
++      sub     r7/*a5*/, r7, r9 << 1
++      sub     r2/*a7*/, r5, r6 << 1
++      sub     r4/*a3*/, lr, r0 << 1
++      sub     r8/*a1*/, r1, r3 << 1
++      sub     r10/*a13*/, r8, r4
++      add     r12/*a14*/, r10, r2
++      mov     r0, -MAD_F(0x1bb67ae8)
++      mulsatrndwh.w   r12/*m3*/, r12, r0:b
++      mulsatrndwh.w   r7/*m4*/, r7, r0:b
++      lsl     r12, 1
++      stdsp   sp[7*4], r12
++
++      /* Registers used:
++              r2 = a7, r4 = a3, r7 = m4, r8 = a1, r12 = m3
++
++         Free registers:
++              r0, r1, r3, r5, r6, r9, r10, r11, lr
++      */
++
++
++/*
++      a15 = a3  + a7;
++      m2 = mad_f_mul(a15, -c4) ;
++      a17 = a1  + a3;
++      m0 = mad_f_mul(a17, -c3) ;
++      a23 = (m4 << 1)  + (m2 << 1);
++      tmp[15] = a23 + (m0 << 1); */
++      add     r0/*a15*/, r4, r2
++      mov     r1, -MAD_F(0x0af1d43a)
++      mulsatrndwh.w   r0/*m2*/, r0, r1:b
++      mov     r3, -MAD_F(0x1491b752)
++      add     r5/*a17*/, r8, r4
++      mulsatrndwh.w   r5/*m0*/, r5, r3:b
++      lsl     r7, 1
++      add     r6/*a23*/, r7, r0 << 1
++      add     r6/*tmp[15]*/, r6, r5 << 1
++      stdsp   sp[15*4], r6
++
++      /* Registers used:
++              r0 = m2, r2 = a7, r5 = m0, r7 = m4, r8 = a1
++
++         Free registers:
++              r1, r3, r4, r6, r9, r10, r11, lr
++      */
++
++/*
++      a16 = a1  - a7;
++      m1 = mad_f_mul(a16, -c0) ;
++      a24 = (m4 << 1)  - (m2 << 1);
++      tmp[11] = a24 - (m1 << 1);
++
++      a25 = (m4 << 1)  + (m1 << 1);
++      tmp[ 3] = (m0 << 1)  - a25;
++*/
++      sub     r3/*a16*/, r8, r2
++      mov     r4,  -MAD_F(0x1f838b8d)
++      mulsatrndwh.w   r3/*m1*/, r3, r4:b
++      sub     r1/*a24*/, r7, r0 << 1
++      sub     r1/*tmp[11]*/, r1, r3 << 1
++      stdsp   sp[11*4], r1
++      add     r7/*a25*/, r7, r3 << 1
++      sub     r7, r7, r5 << 1
++      neg     r7
++      lddsp   r12, sp[4*18+4] /* Get y from stack */
++      stdsp   sp[3*4], r7
++
++
++  /* output to every other slot for convenience */
++
++  /* End fastdct */
++
++  /* output accumulation */
++
++/*    for (i = 3; i < 18; i += 8) {
++        tmp[i + 0] -= tmp[(i + 0) - 2];
++        tmp[i + 2] -= tmp[(i + 2) - 2];
++        tmp[i + 4] -= tmp[(i + 4) - 2];
++        tmp[i + 6] -= tmp[(i + 6) - 2];
++      }
++      }
++*/
++
++/* End  SDCT-II */
++
++
++
++  /* scale reduction and output accumulation */
++
++/*
++      for (i = 1; i < 17; i += 4) {
++        tmp[i + 0] = tmp[i + 0]  - tmp[(i + 0) - 1];
++        tmp[i + 1] = tmp[i + 1]  - tmp[(i + 1) - 1];
++        tmp[i + 2] = tmp[i + 2]  - tmp[(i + 2) - 1];
++        tmp[i + 3] = tmp[i + 3]  - tmp[(i + 3) - 1];
++      }
++      tmp[17] = tmp[17] - tmp[16];
++      }
++*/
++/* End  DCT-IV */
++
++
++  /* convert 18-point DCT-IV to 36-point IMDCT */
++
++/*
++      for (i =  0; i <  9; i += 3) {
++        y[i + 0] =  tmp[9 + (i + 0)];
++        y[i + 1] =  tmp[9 + (i + 1)];
++        y[i + 2] =  tmp[9 + (i + 2)];
++      }
++      for (i =  9; i < 27; i += 3) {
++        y[i + 0] = -tmp[36 - (9 + (i + 0)) - 1];
++        y[i + 1] = -tmp[36 - (9 + (i + 1)) - 1];
++        y[i + 2] = -tmp[36 - (9 + (i + 2)) - 1];
++      }
++      for (i = 27; i < 36; i += 3) {
++        y[i + 0] = -tmp[(i + 0) - 27];
++        y[i + 1] = -tmp[(i + 1) - 27];
++        y[i + 2] = -tmp[(i + 2) - 27];
++      }
++      }
++*/
++
++      /* Registers used:
++              r0 = tmp[8], r1 = tmp[7], r2 = tmp[6], r3 = tmp[5], r4 = tmp[4]
++              r5 = tmp[3], r6 = tmp[2], r7 = tmp[1], r8 = tmp[0], r12 = y
++
++         Free registers:
++              r9, r10, r11, lr
++      */
++
++      ldm     sp++, r0-r8     /* Get tmp[0]-tmp[8] from stack */
++      sub     r5, r7          /* tmp[3] -= tmp[1]*/
++      sub     r3, r5          /* tmp[5] -= tmp[3]*/
++      sub     r1, r3          /* tmp[7] -= tmp[5]*/
++
++      sub     r7, r8          /* tmp[1] -= tmp[0]*/
++      sub     r6, r7          /* tmp[2] -= tmp[1]*/
++      sub     r5, r6          /* tmp[3] -= tmp[2]*/
++      neg     r8
++      st.w    r12[26*4], r8   /* y[26] = -tmp[0] */
++      st.w    r12[27*4], r8   /* y[27] = -tmp[0] */
++      neg     r7
++      neg     r6
++      st.w    r12[25*4], r7   /* y[25] = -tmp[1] */
++      st.w    r12[24*4], r6   /* y[24] = -tmp[2] */
++      st.d    r12[28*4], r6   /* y[28] = -tmp[1], y[29] = -tmp[2]*/
++
++      sub     r4, r5          /* tmp[4] -= tmp[3]*/
++      sub     r3, r4          /* tmp[5] -= tmp[4]*/
++      neg     r5
++      neg     r4
++      st.w    r12[23*4], r5   /* y[23] = -tmp[3] */
++      st.w    r12[22*4], r4   /* y[22] = -tmp[4] */
++      st.d    r12[30*4], r4   /* y[30] = -tmp[3], y[31] = -tmp[4]*/
++
++      ldm     sp++, r4-r11,lr /* Get tmp[9]-tmp[17] from stack */
++
++      sub     r2, r3          /* tmp[6] -= tmp[5]*/
++
++      sub     lr, r1          /* tmp[9] -= tmp[7]*/
++      sub     r10, lr         /* tmp[11] -= tmp[9]*/
++      sub     r8, r10         /* tmp[13] -= tmp[11]*/
++      sub     r6, r8          /* tmp[15] -= tmp[13]*/
++      sub     r4, r6          /* tmp[17] -= tmp[15]*/
++
++      sub     r1, r2          /* tmp[7] -= tmp[6]*/
++      sub     r0, r1          /* tmp[8] -= tmp[7]*/
++      neg     r3
++      neg     r2
++      st.w    r12[21*4], r3   /* y[21] = -tmp[5] */
++      st.w    r12[20*4], r2   /* y[20] = -tmp[6] */
++      st.d    r12[32*4], r2   /* y[32] = -tmp[5], y[33] = -tmp[6]*/
++
++      sub     lr, r0          /* tmp[9] -= tmp[8]*/
++      sub     r11, lr         /* tmp[10] -= tmp[9]*/
++      neg     r1
++      neg     r0
++      st.w    r12[19*4], r1   /* y[19] = -tmp[7] */
++      st.w    r12[18*4], r0   /* y[18] = -tmp[8] */
++      st.d    r12[34*4], r0   /* y[34] = -tmp[7], y[35] = -tmp[8]*/
++
++      sub     r10, r11        /* tmp[11] -= tmp[10]*/
++      sub     r9, r10         /* tmp[12] -= tmp[11]*/
++
++      st.w    r12[0*4], lr    /* y[0] = tmp[9]*/
++      neg     lr
++      st.w    r12[17*4], lr   /* y[17] = -tmp[9]*/
++      st.d    r12[1*4], r10   /* y[1] = tmp[10], y[2] = tmp[11] */
++      neg     r11
++      neg     r10
++      st.w    r12[16*4], r11  /* y[16] = -tmp[10] */
++      st.w    r12[15*4], r10  /* y[15] = -tmp[11] */
++
++
++      sub     r8, r9          /* tmp[13] -= tmp[12]*/
++      sub     r7, r8          /* tmp[14] -= tmp[13]*/
++      st.d    r12[3*4], r8    /* y[3] = tmp[12], y[4] = tmp[13] */
++      neg     r9
++      neg     r8
++      st.w    r12[14*4], r9   /* y[14] = -tmp[12] */
++      st.w    r12[13*4], r8   /* y[13] = -tmp[13] */
++
++      sub     r6, r7          /* tmp[15] -= tmp[14]*/
++      sub     r5, r6          /* tmp[16] -= tmp[15]*/
++      sub     r4, r5          /* tmp[17] -= tmp[16]*/
++
++      st.d    r12[5*4], r6    /* y[5] = tmp[14], y[6] = tmp[15] */
++      neg     r7
++      neg     r6
++      st.w    r12[12*4], r7   /* y[12] = -tmp[14] */
++      st.w    r12[11*4], r6   /* y[11] = -tmp[15] */
++
++      st.d    r12[7*4], r4    /* y[7] = tmp[16], y[8] = tmp[17] */
++      neg     r5
++      neg     r4
++      st.w    r12[10*4], r5   /* y[10] = -tmp[16] */
++      st.w    r12[9*4], r4    /* y[9] = -tmp[17] */
++
++      popm    r0-r7,r11,pc
++
++      .align  2
++scale_dctIV:
++      .short  MAD_F(0x1ff833fa), MAD_F(0x1fb9ea93), MAD_F(0x1f3dd120)
++      .short  MAD_F(0x1e84d969), MAD_F(0x1d906bcf), MAD_F(0x1c62648b)
++      .short  MAD_F(0x1afd100f), MAD_F(0x1963268b), MAD_F(0x1797c6a4)
++      .short  MAD_F(0x159e6f5b), MAD_F(0x137af940), MAD_F(0x11318ef3)
++      .short  MAD_F(0x0ec6a507), MAD_F(0x0c3ef153), MAD_F(0x099f61c5)
++      .short  MAD_F(0x06ed12c5), MAD_F(0x042d4544), MAD_F(0x0165547c)
++
++      .align  2
++scale_sdctII:
++      .short  MAD_F(0x1fe0d3b4), MAD_F(0x1ee8dd47), MAD_F(0x1d007930)
++      .short  MAD_F(0x1a367e59), MAD_F(0x16a09e66), MAD_F(0x125abcf8)
++      .short  MAD_F(0x0d8616bc), MAD_F(0x08483ee1), MAD_F(0x02c9fad7)
+diff --git a/layer3.c b/layer3.c
+index 4e5d3fa..dffdab3 100644
+--- a/layer3.c
++++ b/layer3.c
+@@ -378,6 +378,11 @@ mad_fixed_t const ca[8] = {
+   -MAD_F(0x003a2847) /* -0.014198569 */, -MAD_F(0x000f27b4) /* -0.003699975 */
+ };
++#ifdef FPM_AVR32
++# undef MAD_F
++# define MAD_F(x) ((x + (1 << 12)) >> 13)
++#endif
++
+ /*
+  * IMDCT coefficients for short blocks
+  * derived from section 2.4.3.4.10.2 of ISO/IEC 11172-3
+@@ -386,7 +391,7 @@ mad_fixed_t const ca[8] = {
+  * imdct_s[i /odd][k] = cos((PI / 24) * (2 * (6 + (i-1)/2) + 7) * (2 * k + 1))
+  */
+ static
+-mad_fixed_t const imdct_s[6][6] = {
++mad_coeff_t const imdct_s[6][6] = {
+ # include "imdct_s.dat"
+ };
+@@ -398,7 +403,7 @@ mad_fixed_t const imdct_s[6][6] = {
+  * window_l[i] = sin((PI / 36) * (i + 1/2))
+  */
+ static
+-mad_fixed_t const window_l[36] = {
++mad_coeff_t const window_l[36] = {
+   MAD_F(0x00b2aa3e) /* 0.043619387 */, MAD_F(0x0216a2a2) /* 0.130526192 */,
+   MAD_F(0x03768962) /* 0.216439614 */, MAD_F(0x04cfb0e2) /* 0.300705800 */,
+   MAD_F(0x061f78aa) /* 0.382683432 */, MAD_F(0x07635284) /* 0.461748613 */,
+@@ -429,7 +434,7 @@ mad_fixed_t const window_l[36] = {
+  * window_s[i] = sin((PI / 12) * (i + 1/2))
+  */
+ static
+-mad_fixed_t const window_s[12] = {
++mad_coeff_t const window_s[12] = {
+   MAD_F(0x0216a2a2) /* 0.130526192 */, MAD_F(0x061f78aa) /* 0.382683432 */,
+   MAD_F(0x09bd7ca0) /* 0.608761429 */, MAD_F(0x0cb19346) /* 0.793353340 */,
+   MAD_F(0x0ec835e8) /* 0.923879533 */, MAD_F(0x0fdcf549) /* 0.991444861 */,
+@@ -438,6 +443,11 @@ mad_fixed_t const window_s[12] = {
+   MAD_F(0x061f78aa) /* 0.382683432 */, MAD_F(0x0216a2a2) /* 0.130526192 */,
+ };
++#ifdef FPM_AVR32
++# undef MAD_F
++# define MAD_F(x)             ((mad_fixed_t) (x##L))
++#endif
++
+ /*
+  * coefficients for intensity stereo processing
+  * derived from section 2.4.3.4.9.3 of ISO/IEC 11172-3
+@@ -879,6 +889,42 @@ void III_exponents(struct channel const *channel,
+  * NAME:      III_requantize()
+  * DESCRIPTION:       requantize one (positive) value
+  */
++
++#if 0
++/*static*/
++mad_fixed_t III_requantize(unsigned int value, signed int exp)
++{
++  register mad_fixed_t tmp2, tmp3;
++  long long tmp_d;
++
++  asm ("asr\t%0, %1, 2\n"
++       "ld.w\t%2, %4[%5 << 2]\n"
++       "sub\t%1, %1, %0 << 2\n"
++       "asr\t%3, %2, 7\n"
++       "andl\t%2, 0x7f, COH\n"
++       "add\t%0, %2\n"
++       "lsl\t%m0,%3,%0\n"
++       "neg\t%0\n"
++       "asr\t%3,%3,%0\n"
++       "add\t%2, %6, %1 << 2\n"
++       "ld.w\t%2, %2[12]\n"
++       "cp.w\t%0, 0\n"
++       "movlt\t%3, %m0\n"
++       "muls.d\t%0, %3, %2\n"
++       "cp.w\t%1, 0\n"
++       "breq\t0f\n"
++       "lsr\t%0, %0, 28\n"
++       "or\t%3, %0, %m0 << 4\n"
++       "0:\n"
++       : "=&r"(tmp_d), "+r"(exp), "=&r"(tmp2), "=&r"(tmp3)
++       : "r"(&rq_table), "r"(value), "r"(root_table));
++
++
++  return tmp3;
++}
++
++#else
++
+ static
+ mad_fixed_t III_requantize(unsigned int value, signed int exp)
+ {
+@@ -918,6 +964,7 @@ mad_fixed_t III_requantize(unsigned int value, signed int exp)
+   return frac ? mad_f_mul(requantized, root_table[3 + frac]) : requantized;
+ }
++#endif
+ /* we must take care that sz >= bits and sz < sizeof(long) lest bits == 0 */
+ # define MASK(cache, sz, bits)        \
+@@ -2054,27 +2101,42 @@ void imdct36(mad_fixed_t const X[18], mad_fixed_t x[36])
+ }
+ #  endif
++
++#ifdef FPM_AVR32
++# undef  mad_f_mul
++# define mad_f_mul(x, y) __builtin_mulsatrndwh_w(x, y)
++#endif
++
+ /*
+  * NAME:      III_imdct_l()
+  * DESCRIPTION:       perform IMDCT and windowing for long blocks
+  */
+ static
+-void III_imdct_l(mad_fixed_t const X[18], mad_fixed_t z[36],
++void III_imdct_l(mad_fixed_t /*const*/ X[18], mad_fixed_t z[36],
+                unsigned int block_type)
+ {
+   unsigned int i;
++  mad_fixed_t *z_ptr;
++  mad_coeff_t *w_ptr;
+   /* IMDCT */
++#ifdef FPM_AVR32
++  imdct36_avr32(X, z);
++#else
+   imdct36(X, z);
++#endif
+   /* windowing */
++  z_ptr = &z[0];
++  w_ptr = &window_l[0];
++
+   switch (block_type) {
+   case 0:  /* normal window */
+ # if defined(ASO_INTERLEAVE1)
+     {
+-      register mad_fixed_t tmp1, tmp2;
++      register mad_coeff_t tmp1, tmp2;
+       tmp1 = window_l[0];
+       tmp2 = window_l[1];
+@@ -2091,15 +2153,16 @@ void III_imdct_l(mad_fixed_t const X[18], mad_fixed_t z[36],
+     }
+ # elif defined(ASO_INTERLEAVE2)
+     {
+-      register mad_fixed_t tmp1, tmp2;
++      register mad_fixed_t tmp1;
++      register mad_coeff_t tmp2;
+-      tmp1 = z[0];
+-      tmp2 = window_l[0];
++      tmp1 = *z_ptr;
++      tmp2 = *w_ptr++;
+       for (i = 0; i < 35; ++i) {
+-      z[i] = mad_f_mul(tmp1, tmp2);
+-      tmp1 = z[i + 1];
+-      tmp2 = window_l[i + 1];
++      *z_ptr++ = mad_f_mul(tmp1, tmp2);
++      tmp1 = *z_ptr;
++      tmp2 = *w_ptr++;
+       }
+       z[35] = mad_f_mul(tmp1, tmp2);
+@@ -2118,23 +2181,28 @@ void III_imdct_l(mad_fixed_t const X[18], mad_fixed_t z[36],
+   case 1:  /* start block */
+     for (i =  0; i < 18; i += 3) {
+-      z[i + 0] = mad_f_mul(z[i + 0], window_l[i + 0]);
+-      z[i + 1] = mad_f_mul(z[i + 1], window_l[i + 1]);
+-      z[i + 2] = mad_f_mul(z[i + 2], window_l[i + 2]);
++      *(z_ptr++) = mad_f_mul(*z_ptr, *w_ptr++);
++      *(z_ptr++) = mad_f_mul(*z_ptr, *w_ptr++);
++      *(z_ptr++) = mad_f_mul(*z_ptr, *w_ptr++);
+     }
++    z_ptr += 6;
++    w_ptr = &window_s[6];
+     /*  (i = 18; i < 24; ++i) z[i] unchanged */
+-    for (i = 24; i < 30; ++i) z[i] = mad_f_mul(z[i], window_s[i - 18]);
+-    for (i = 30; i < 36; ++i) z[i] = 0;
++    for (i = 24; i < 30; ++i) *z_ptr++ = mad_f_mul(*z_ptr, *w_ptr++);
++    for (i = 30; i < 36; ++i) *z_ptr++ = 0;
+     break;
+   case 3:  /* stop block */
+-    for (i =  0; i <  6; ++i) z[i] = 0;
+-    for (i =  6; i < 12; ++i) z[i] = mad_f_mul(z[i], window_s[i - 6]);
++    w_ptr = &window_s[0];
++    for (i =  0; i <  6; ++i) *z_ptr++ = 0;
++    for (i =  6; i < 12; ++i) *z_ptr++ = mad_f_mul(*z_ptr, *w_ptr++);
+     /*  (i = 12; i < 18; ++i) z[i] unchanged */
++    w_ptr = &window_l[18];
++    z_ptr += 6;
+     for (i = 18; i < 36; i += 3) {
+-      z[i + 0] = mad_f_mul(z[i + 0], window_l[i + 0]);
+-      z[i + 1] = mad_f_mul(z[i + 1], window_l[i + 1]);
+-      z[i + 2] = mad_f_mul(z[i + 2], window_l[i + 2]);
++      *z_ptr++ = mad_f_mul(*z_ptr, *w_ptr++ );
++      *z_ptr++ = mad_f_mul(*z_ptr, *w_ptr++);
++      *z_ptr++ = mad_f_mul(*z_ptr, *w_ptr++);
+     }
+     break;
+   }
+@@ -2146,10 +2214,10 @@ void III_imdct_l(mad_fixed_t const X[18], mad_fixed_t z[36],
+  * DESCRIPTION:       perform IMDCT and windowing for short blocks
+  */
+ static
+-void III_imdct_s(mad_fixed_t const X[18], mad_fixed_t z[36])
++void III_imdct_s(mad_fixed_t /*const*/ X[18], mad_fixed_t z[36])
+ {
+   mad_fixed_t y[36], *yptr;
+-  mad_fixed_t const *wptr;
++  mad_coeff_t const *wptr;
+   int w, i;
+   register mad_fixed64hi_t hi;
+   register mad_fixed64lo_t lo;
+@@ -2159,11 +2227,56 @@ void III_imdct_s(mad_fixed_t const X[18], mad_fixed_t z[36])
+   yptr = &y[0];
+   for (w = 0; w < 3; ++w) {
+-    register mad_fixed_t const (*s)[6];
++    register mad_coeff_t const (*s)[6];
+     s = imdct_s;
+     for (i = 0; i < 3; ++i) {
++#ifdef FPM_AVR32
++      register long long int acc, tmp1, tmp2, tmp3, tmp4;
++      asm volatile ("ld.d\t%0, %5++\n"
++                    "ld.d\t%1, %6[0]\n"
++                    "ld.d\t%2, %6[2*4]\n"
++                    "ld.d\t%3, %6[4*4]\n"
++                    "mulwh.d\t%4, %m1, %m0:t\n"
++                    "macwh.d\t%4, %1, %m0:b\n"
++                    "ld.w\t%m0, %5++\n"
++                    "macwh.d\t%4, %m2, %0:t\n"
++                    "macwh.d\t%4, %2, %0:b\n"
++                    "macwh.d\t%4, %m3, %m0:t\n"
++                    "macwh.d\t%4, %3, %m0:b\n"
++                    "ld.d\t%0, %5++\n"
++                    "rol\t%4\n"
++                    "rol\t%m4\n"
++                    : "=&r"(tmp1), "=&r"(tmp2), "=&r"(tmp3), "=&r"(tmp4),
++                      "=&r"(acc), "+r"(s)
++                    : "r"(X));
++
++      asm volatile ("st.w\t%1[0], %m0\n"
++                    "neg\t%m0\n"
++                    "st.w\t%2[5*4], %m0\n"
++                    : "+r"(acc)
++                    : "r"(&yptr[i]), "r"(&yptr[-i]));
++
++      asm volatile ("mulwh.d\t%4, %m1, %m0:t\n"
++                    "macwh.d\t%4, %1, %m0:b\n"
++                    "ld.w\t%m0, %5++\n"
++                    "macwh.d\t%4, %m2, %0:t\n"
++                    "macwh.d\t%4, %2, %0:b\n"
++                    "macwh.d\t%4, %m3, %m0:t\n"
++                    "macwh.d\t%4, %3, %m0:b\n"
++                    "rol\t%4\n"
++                    "rol\t%m4\n"
++                    : "+r"(tmp1), "+r"(tmp2), "+r"(tmp3), "+r"(tmp4),
++                      "=&r"(acc), "+r"(s)
++                    : "r"(X));
++
++      asm volatile (  "st.w\t%1[6*4], %m0\n"
++                      "st.w\t%2[11*4], %m0\n"
++                      :: "r"(acc), "r"(&yptr[i]), "r"(&yptr[-i]));
++
++
++#else
+       MAD_F_ML0(hi, lo, X[0], (*s)[0]);
+       MAD_F_MLA(hi, lo, X[1], (*s)[1]);
+       MAD_F_MLA(hi, lo, X[2], (*s)[2]);
+@@ -2187,6 +2300,7 @@ void III_imdct_s(mad_fixed_t const X[18], mad_fixed_t z[36])
+       yptr[11 - i] = yptr[i + 6];
+       ++s;
++#endif
+     }
+     yptr += 12;
+@@ -2198,6 +2312,196 @@ void III_imdct_s(mad_fixed_t const X[18], mad_fixed_t z[36])
+   yptr = &y[0];
+   wptr = &window_s[0];
++#ifdef FPM_AVR32
++  /*    z[0] = 0;
++        z[1] = 0;
++        z[2] = 0;
++        z[3] = 0;
++        z[4] = 0;
++        z[5] = 0;
++        z[30] = 0;
++        z[31] = 0;
++        z[32] = 0;
++        z[33] = 0;
++        z[34] = 0;
++        z[35] = 0;
++  */
++  {
++    register long long int tmp, tmp2, tmp3, w0123, w4567, w891011;
++    asm volatile ("mov\t%m0, 0\n"
++                  "mov\t%0, %m0\n"
++                  "st.d\t%1[0], %0\n"
++                  "st.d\t%1[2*4], %0\n"
++                  "st.d\t%1[4*4], %0\n"
++                  "st.d\t%1[30*4], %0\n"
++                  "st.d\t%1[32*4], %0\n"
++                  "st.d\t%1[34*4], %0\n"
++                  : "=&r"(tmp) : "r"(z));
++
++
++
++    /*
++            z[6] = mad_f_mul(yptr [0], wptr[0]);
++            z[7] = mad_f_mul(yptr [1], wptr[1]);
++            z[8] = mad_f_mul(yptr [2], wptr[2]);
++            z[9] = mad_f_mul(yptr [3], wptr[3]);
++            z[10] = mad_f_mul(yptr[4], wptr[4]);
++            z[11] = mad_f_mul(yptr[5], wptr[5]);
++            z[24] = mad_f_mul(yptr [30], wptr[6]);
++            z[25] = mad_f_mul(yptr [31], wptr[7]);
++            z[26] = mad_f_mul(yptr [32], wptr[8]);
++            z[27] = mad_f_mul(yptr [33], wptr[9]);
++            z[28] = mad_f_mul(yptr[34], wptr[10]);
++            z[29] = mad_f_mul(yptr[35], wptr[11]);
++    */
++
++
++    asm volatile ("ld.d\t%0, %5[0*4]\n"
++                  "ld.d\t%3, %6[0*4]\n"
++                  "ld.d\t%1, %5[2*4]\n"
++                  "ld.d\t%2, %5[4*4]\n"
++                  "mulsatrndwh.w\t%m3, %m3, %m0:t\n"
++                  "mulsatrndwh.w\t%3, %3, %m0:b\n"
++                  "ld.d\t%4, %6[2*4]\n"
++                  "st.d\t%7[6*4], %3\n"
++
++                  "mulsatrndwh.w\t%m4, %m4, %0:t\n"
++                  "mulsatrndwh.w\t%4, %4, %0:b\n"
++                  "ld.d\t%3, %6[4*4]\n"
++                  "st.d\t%7[8*4], %4\n"
++
++                  "mulsatrndwh.w\t%m3, %m3, %m1:t\n"
++                  "mulsatrndwh.w\t%3, %3, %m1:b\n"
++                  "ld.d\t%4, %6[30*4]\n"
++                  "st.d\t%7[10*4], %3\n"
++
++                  "mulsatrndwh.w\t%m4, %m4, %1:t\n"
++                  "mulsatrndwh.w\t%4, %4, %1:b\n"
++                  "ld.d\t%3, %6[32*4]\n"
++                  "st.d\t%7[24*4], %4\n"
++
++                  "mulsatrndwh.w\t%m3, %m3, %m2:t\n"
++                  "mulsatrndwh.w\t%3, %3, %m2:b\n"
++                  "ld.d\t%4, %6[34*4]\n"
++                  "st.d\t%7[26*4], %3\n"
++
++                  "mulsatrndwh.w\t%m4, %m4, %2:t\n"
++                  "mulsatrndwh.w\t%4, %4, %2:b\n"
++                  "st.d\t%7[28*4], %4\n"
++
++                  : "=&r"(w0123), "=&r"(w4567), "=&r"(w891011), "=&r"(tmp), "=&r"(tmp2)
++                  : "r"(wptr), "r"(yptr), "r"(z));
++    /*
++       MAD_F_ML0(hi, lo, yptr[6], wptr[6]);
++       MAD_F_MLA(hi, lo, yptr[12], wptr[0]);
++       z[12] = MAD_F_MLZ(hi, lo);
++       MAD_F_ML0(hi, lo, yptr[7], wptr[7]);
++       MAD_F_MLA(hi, lo, yptr[13], wptr[1]);
++       z[13] = MAD_F_MLZ(hi, lo);
++       MAD_F_ML0(hi, lo, yptr[8], wptr[8]);
++       MAD_F_MLA(hi, lo, yptr[14], wptr[2]);
++       z[14] = MAD_F_MLZ(hi, lo);
++       MAD_F_ML0(hi, lo, yptr[9], wptr[9]);
++       MAD_F_MLA(hi, lo, yptr[15], wptr[3]);
++       z[15] = MAD_F_MLZ(hi, lo);
++       MAD_F_ML0(hi, lo, yptr[10], wptr[10]);
++       MAD_F_MLA(hi, lo, yptr[16], wptr[4]);
++       z[16] = MAD_F_MLZ(hi, lo);
++       MAD_F_ML0(hi, lo, yptr[11], wptr[11]);
++       MAD_F_MLA(hi, lo, yptr[17], wptr[5]);
++       z[17] = MAD_F_MLZ(hi, lo);
++
++       MAD_F_ML0(hi, lo, yptr[18], wptr[6]);
++       MAD_F_MLA(hi, lo, yptr[24], wptr[0]);
++       z[18] = MAD_F_MLZ(hi, lo);
++       MAD_F_ML0(hi, lo, yptr[19], wptr[7]);
++       MAD_F_MLA(hi, lo, yptr[25], wptr[1]);
++       z[19] = MAD_F_MLZ(hi, lo);
++       MAD_F_ML0(hi, lo, yptr[20], wptr[8]);
++       MAD_F_MLA(hi, lo, yptr[26], wptr[2]);
++       z[20] = MAD_F_MLZ(hi, lo);
++       MAD_F_ML0(hi, lo, yptr[21], wptr[9]);
++       MAD_F_MLA(hi, lo, yptr[27], wptr[3]);
++       z[21] = MAD_F_MLZ(hi, lo);
++       MAD_F_ML0(hi, lo, yptr[22], wptr[10]);
++       MAD_F_MLA(hi, lo, yptr[28], wptr[4]);
++       z[22] = MAD_F_MLZ(hi, lo);
++       MAD_F_ML0(hi, lo, yptr[23], wptr[11]);
++       MAD_F_MLA(hi, lo, yptr[29], wptr[5]);
++       z[23] = MAD_F_MLZ(hi, lo);*/
++
++
++    asm volatile ("ld.d\t%0, %3[6*4]\n"
++                  "ld.d\t%1, %3[12*4]\n"
++                  "mulwh.d\t%2, %m0, %5:t\n"
++                  "macwh.d\t%2, %m1, %m4:t\n"
++                  "mulwh.d\t%0, %0, %5:b\n"
++                  "macwh.d\t%0, %1, %m4:b\n"
++                  "lsl\t%m2, 1\n"
++                  "lsl\t%2, %m0, 1\n"
++                  "st.d\t%6[12*4], %2\n"
++
++                  "ld.d\t%0, %3[18*4]\n"
++                  "ld.d\t%1, %3[24*4]\n"
++                  "mulwh.d\t%2, %m0, %5:t\n"
++                  "macwh.d\t%2, %m1, %m4:t\n"
++                  "mulwh.d\t%0, %0, %5:b\n"
++                  "macwh.d\t%0, %1, %m4:b\n"
++                  "lsl\t%m2, 1\n"
++                  "lsl\t%2, %m0, 1\n"
++                  "st.d\t%6[18*4], %2\n"
++
++                  : "=&r"(tmp), "=&r"(tmp2), "=&r"(tmp3)
++                  : "r"(yptr), "r"(w0123), "r"(w4567), "r"(z));
++
++    asm volatile ("ld.d\t%0, %3[8*4]\n"
++                  "ld.d\t%1, %3[14*4]\n"
++                  "mulwh.d\t%2, %m0, %m5:t\n"
++                  "macwh.d\t%2, %m1, %4:t\n"
++                  "mulwh.d\t%0, %0, %m5:b\n"
++                  "macwh.d\t%0, %1, %4:b\n"
++                  "lsl\t%m2, 1\n"
++                  "lsl\t%2, %m0, 1\n"
++                  "st.d\t%6[14*4], %2\n"
++
++                  "ld.d\t%0, %3[20*4]\n"
++                  "ld.d\t%1, %3[26*4]\n"
++                  "mulwh.d\t%2, %m0, %m5:t\n"
++                  "macwh.d\t%2, %m1, %4:t\n"
++                  "mulwh.d\t%0, %0, %m5:b\n"
++                  "macwh.d\t%0, %1, %4:b\n"
++                  "lsl\t%m2, 1\n"
++                  "lsl\t%2, %m0, 1\n"
++                  "st.d\t%6[20*4], %2\n"
++
++                  : "=&r"(tmp), "=&r"(tmp2), "=&r"(tmp3)
++                  : "r"(yptr), "r"(w0123), "r"(w891011), "r"(z));
++
++    asm volatile ("ld.d\t%0, %3[10*4]\n"
++                  "ld.d\t%1, %3[16*4]\n"
++                  "mulwh.d\t%2, %m0, %5:t\n"
++                  "macwh.d\t%2, %m1, %m4:t\n"
++                  "mulwh.d\t%0, %0, %5:b\n"
++                  "macwh.d\t%0, %1, %m4:b\n"
++                  "lsl\t%m2, 1\n"
++                  "lsl\t%2, %m0, 1\n"
++                  "st.d\t%6[16*4], %2\n"
++
++                  "ld.d\t%0, %3[22*4]\n"
++                  "ld.d\t%1, %3[28*4]\n"
++                  "mulwh.d\t%2, %m0, %5:t\n"
++                  "macwh.d\t%2, %m1, %m4:t\n"
++                  "mulwh.d\t%0, %0, %5:b\n"
++                  "macwh.d\t%0, %1, %m4:b\n"
++                  "lsl\t%m2, 1\n"
++                  "lsl\t%2, %m0, 1\n"
++                  "st.d\t%6[22*4], %2\n"
++
++                  : "=&r"(tmp), "=&r"(tmp2), "=&r"(tmp3)
++                  : "r"(yptr), "r"(w4567), "r"(w891011), "r"(z));
++
++  }
++#else
+   for (i = 0; i < 6; ++i) {
+     z[i +  0] = 0;
+     z[i +  6] = mad_f_mul(yptr[ 0 + 0], wptr[0]);
+@@ -2218,8 +2522,15 @@ void III_imdct_s(mad_fixed_t const X[18], mad_fixed_t z[36])
+     ++yptr;
+     ++wptr;
+   }
++#endif
+ }
++#ifdef FPM_AVR32
++# undef  mad_f_mul
++# define mad_f_mul(x, y) ((((x) + (1L << 11)) >> 12) *  \
++                               (((y) + (1L << 15)) >> 16))
++#endif
++
+ /*
+  * NAME:      III_overlap()
+  * DESCRIPTION:       perform overlap-add of windowed IMDCT outputs
+diff --git a/synth.c b/synth.c
+index 1d28d43..f42d49b 100644
+--- a/synth.c
++++ b/synth.c
+@@ -29,20 +29,6 @@
+ # include "frame.h"
+ # include "synth.h"
+-/*
+- * NAME:      synth->init()
+- * DESCRIPTION:       initialize synth struct
+- */
+-void mad_synth_init(struct mad_synth *synth)
+-{
+-  mad_synth_mute(synth);
+-
+-  synth->phase = 0;
+-
+-  synth->pcm.samplerate = 0;
+-  synth->pcm.channels   = 0;
+-  synth->pcm.length     = 0;
+-}
+ /*
+  * NAME:      synth->mute()
+@@ -88,6 +74,10 @@ void mad_synth_mute(struct mad_synth *synth)
+ /* FPM_DEFAULT without OPT_SSO will actually lose accuracy and performance */
++# if defined(FPM_AVR32)
++#  define OPT_SSO
++# endif
++
+ # if defined(FPM_DEFAULT) && !defined(OPT_SSO)
+ #  define OPT_SSO
+ # endif
+@@ -522,9 +512,15 @@ void dct32(mad_fixed_t const in[32], unsigned int slot,
+ #  endif
+ #  define ML0(hi, lo, x, y)   ((lo)  = (x) * (y))
+ #  define MLA(hi, lo, x, y)   ((lo) += (x) * (y))
+-#  define MLN(hi, lo)         ((lo)  = -(lo))
+-#  define MLZ(hi, lo)         ((void) (hi), (mad_fixed_t) (lo))
+-#  define SHIFT(x)            ((x) >> 2)
++#  if defined(FPM_AVR32)
++#   define MLN(hi, lo)                MAD_F_MLN((hi), (lo))
++#   define MLZ(hi, lo)                (hi)
++#   define SHIFT(x)           ((x) << 2)
++#  else
++#   define MLN(hi, lo)                ((lo)  = -(lo))
++#   define MLZ(hi, lo)                ((void) (hi), (mad_fixed_t) (lo))
++#   define SHIFT(x)           ((x) >> 2)
++#  endif
+ #  define PRESHIFT(x)         ((MAD_F(x) + (1L << 13)) >> 14)
+ # else
+ #  define ML0(hi, lo, x, y)   MAD_F_ML0((hi), (lo), (x), (y))
+@@ -541,11 +537,54 @@ void dct32(mad_fixed_t const in[32], unsigned int slot,
+ #  endif
+ # endif
++/*
++ * NAME:      synth->init()
++ * DESCRIPTION:       initialize synth struct
++ */
++
++#ifdef FPM_AVR32
++short Dmod[17][33];
++#endif
++
+ static
++#ifdef FPM_AVR32
++short const D[17][32] = {
++#else
+ mad_fixed_t const D[17][32] = {
++#endif
+ # include "D.dat"
+ };
++void mad_synth_init(struct mad_synth *synth)
++{
++
++  mad_synth_mute(synth);
++
++  synth->phase = 0;
++
++  synth->pcm.samplerate = 0;
++  synth->pcm.channels   = 0;
++  synth->pcm.length     = 0;
++
++#ifdef FPM_AVR32
++  {
++    int i, j;
++    for ( i = 0; i < 17; i++ ){
++      for ( j = 0; j < 32; j++ ){
++        if ( j & 1 ){
++          Dmod[i][17 + (j >> 1)]= D[i][j];
++        } else {
++          Dmod[i][(j >> 1)]= D[i][j];
++        }
++      }
++
++      Dmod[i][16]= Dmod[i][16+8];
++    }
++  }
++#endif
++
++}
++
+ # if defined(ASO_SYNTH)
+ void synth_full(struct mad_synth *, struct mad_frame const *,
+               unsigned int, unsigned int);
+@@ -560,9 +599,13 @@ void synth_full(struct mad_synth *synth, struct mad_frame const *frame,
+ {
+   unsigned int phase, ch, s, sb, pe, po;
+   mad_fixed_t *pcm1, *pcm2, (*filter)[2][2][16][8];
+-  mad_fixed_t const (*sbsample)[36][32];
++  mad_fixed_t /*const*/ (*sbsample)[36][32];
+   register mad_fixed_t (*fe)[8], (*fx)[8], (*fo)[8];
++#ifdef FPM_AVR32
++  register short const (*Dptr)[32], *ptr;
++#else
+   register mad_fixed_t const (*Dptr)[32], *ptr;
++#endif
+   register mad_fixed64hi_t hi;
+   register mad_fixed64lo_t lo;
+@@ -573,6 +616,20 @@ void synth_full(struct mad_synth *synth, struct mad_frame const *frame,
+     pcm1     = synth->pcm.samples[ch];
+     for (s = 0; s < ns; ++s) {
++#  ifdef FPM_AVR32
++/*
++  int i;
++  for ( i = 0; i < 32; i++ ){
++  (*sbsample)[s][i] = ((*sbsample)[s][i] + (1 << 13)) & 0xFFFFC000;
++  }
++*/
++      dct32_avr32((*sbsample)[s], phase >> 1,
++          (*filter)[0][phase & 1], (*filter)[1][phase & 1]);
++      /*      printf("dct32: %d\n", GET_CYCLES);*/
++      pcm1 = synth_avr32(phase, (mad_fixed_t *)filter, \
++                         pcm1, (short *)&Dmod[0]);
++      /*      printf("synth_window: %d\n", GET_CYCLES);*/
++#  else
+       dct32((*sbsample)[s], phase >> 1,
+           (*filter)[0][phase & 1], (*filter)[1][phase & 1]);
+@@ -679,6 +736,7 @@ void synth_full(struct mad_synth *synth, struct mad_frame const *frame,
+       MLA(hi, lo, (*fo)[7], ptr[ 2]);
+       *pcm1 = SHIFT(-MLZ(hi, lo));
++#  endif
+       pcm1 += 16;
+       phase = (phase + 1) % 16;
+diff --git a/synth_avr32.S b/synth_avr32.S
+new file mode 100644
+index 0000000..701077b
+--- /dev/null
++++ b/synth_avr32.S
+@@ -0,0 +1,394 @@
++/*
++   Optimized function for speeding up synthesis filter
++   in MPEG Audio Decoding.
++   Copyright 2003-2006 Atmel Corporation.
++
++   Written by Ronny Pedersen and Lars Even AlmÃ¥s, Atmel Norway
++
++   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. */
++
++
++/* *****************
++   Defining macros
++   ***************** */
++
++      .macro  window_1        f, ptr, acc, ptr_offset, mul, tmp1_lo, tmp1_hi, tmp2_lo, tmp2_hi, tmp3_lo, tmp3_hi
++      ld.d            \tmp1_lo, \f[0*4]                       /* tmp1 = { f[0], f[1] } */
++      ld.w            \tmp2_lo, \ptr[0*2+\ptr_offset*2]       /* tmp2_lo = { ptr[0], ptr[1] }*/
++      ld.d            \tmp3_lo, \f[6*4]                       /* tmp3 = { f[6], f[7] } */
++      ld.w            \tmp2_hi, \ptr[6*2+\ptr_offset*2]       /* tmp2_hi = { ptr[6], ptr[7] }*/
++      .if \mul
++      mulwh.d         \acc, \tmp1_hi, \tmp2_lo:t              /* f[0] * ptr[0]*/
++      .else
++      macwh.d         \acc, \tmp1_hi, \tmp2_lo:t              /* f[0] * ptr[0]*/
++      .endif
++      macwh.d         \acc, \tmp3_lo, \tmp2_lo:b              /* f[7] * ptr[1]*/
++      ld.w            \tmp2_lo, \ptr[2*2+\ptr_offset*2]       /* tmp2_lo = { ptr[2], ptr[3] }*/
++      macwh.d         \acc, \tmp1_lo, \tmp2_hi:b              /* f[1] * ptr[7]*/
++      ld.d            \tmp1_lo, \f[2*4]                       /* tmp1 = { f[2], f[3] } */
++
++      macwh.d         \acc, \tmp3_hi, \tmp2_lo:t              /* f[6] * ptr[2]*/
++      macwh.d         \acc, \tmp1_hi, \tmp2_hi:t              /* f[2] * ptr[6]*/
++      ld.d            \tmp3_lo, \f[4*4]                       /* tmp3 = { f[4], f[5] } */
++      ld.w            \tmp2_hi, \ptr[4*2+\ptr_offset*2]       /* tmp2_hi = { ptr[4], ptr[5] }*/
++      macwh.d         \acc, \tmp3_lo, \tmp2_lo:b              /* f[5] * ptr[3]*/
++
++      macwh.d         \acc, \tmp1_lo, \tmp2_hi:b              /* f[3] * ptr[5]*/
++      macwh.d         \acc, \tmp3_hi, \tmp2_hi:t              /* f[4] * ptr[4]*/
++      .endm
++
++      .macro  window_2        f, ptr, acc, ptr_offset, mul, tmp1_lo, tmp1_hi, tmp2_lo, tmp2_hi, tmp3_lo, tmp3_hi
++      ld.d            \tmp1_lo, \f[0*4]                       /* tmp1 = { f[0], f[1] } */
++      ld.w            \tmp2_lo, \ptr[7*2+\ptr_offset*2]       /* tmp2_lo = { ptr[7], ptr[8] }*/
++      ld.d            \tmp3_lo, \f[2*4]                       /* tmp3 = { f[2], f[3] } */
++      ld.w            \tmp2_hi, \ptr[9*2+\ptr_offset*2]       /* tmp2_hi = { ptr[9], ptr[10] }*/
++      .if \mul
++      mulwh.d         \acc, \tmp1_hi, \tmp2_lo:t              /* f[0] * ptr[7]*/
++      .else
++      macwh.d         \acc, \tmp1_hi, \tmp2_lo:t              /* f[0] * ptr[7]*/
++      .endif
++      macwh.d         \acc, \tmp1_lo, \tmp2_lo:b              /* f[1] * ptr[8]*/
++
++      ld.d            \tmp1_lo, \f[4*4]                       /* tmp1 = { f[4], f[5] } */
++      ld.w            \tmp2_lo, \ptr[11*2+\ptr_offset*2]      /* tmp2_lo = { ptr[11], ptr[12] }*/
++
++      macwh.d         \acc, \tmp3_hi, \tmp2_hi:t              /* f[2] * ptr[9]*/
++      macwh.d         \acc, \tmp3_lo, \tmp2_hi:b              /* f[3] * ptr[10]*/
++
++      ld.d            \tmp3_lo, \f[6*4]                       /* tmp3 = { f[6], f[7] } */
++      ld.w            \tmp2_hi, \ptr[13*2+\ptr_offset*2]      /* tmp2_hi = { ptr[13], ptr[14] }*/
++
++      macwh.d         \acc, \tmp1_hi, \tmp2_lo:t              /* f[4] * ptr[11]*/
++      macwh.d         \acc, \tmp1_lo, \tmp2_lo:b              /* f[5] * ptr[12]*/
++      macwh.d         \acc, \tmp3_hi, \tmp2_hi:t              /* f[6] * ptr[13]*/
++      macwh.d         \acc, \tmp3_lo, \tmp2_hi:b              /* f[7] * ptr[14]*/
++      .endm
++
++      .macro  scale   res, d_lo, d_hi
++      lsl             \d_hi, 2
++      .endm
++
++/* **********************
++   Starting main function
++   ********************** */
++
++/* Function synth_avr32 is called from synth.c with arguments:
++             phase, filter, *pcm1, &D[0]              */
++
++      .global synth_avr32
++synth_avr32:
++      pushm           r0-r7, lr
++      sub             sp, 8
++
++      /* R12 = phase, R11 = filter, R10 = pcm1, r9 = D*/
++      bld             r12, 0
++      brcc            synth_even
++
++      /* Filter for odd phases */
++
++      /*      fe = &(*filter)[0][1][0];
++              fx = &(*filter)[0][0][0];
++              fo = &(*filter)[1][0][0]; */
++      sub             lr /*fe*/, r11, -16*8*4
++      sub             r8 /*fo*/, r11, -16*8*4*2
++
++      /*      pe = phase >> 1; */
++      lsr             r12, 1
++      stdsp           sp[4], r12
++      /*      ptr = (short const *)Dmod + pe; */
++      add             r12, r9, r12 << 1
++
++      /*      ML0(hi, lo, (*fx)[0], ptr[0 + 17]);
++              MLA(hi, lo, (*fx)[1], ptr[7 + 17]);
++              MLA(hi, lo, (*fx)[2], ptr[6 + 17]);
++              MLA(hi, lo, (*fx)[3], ptr[5 + 17]);
++              MLA(hi, lo, (*fx)[4], ptr[4 + 17]);
++              MLA(hi, lo, (*fx)[5], ptr[3 + 17]);
++              MLA(hi, lo, (*fx)[6], ptr[2 + 17]);
++              MLA(hi, lo, (*fx)[7], ptr[1 + 17]); */
++      window_1        r11/*fx*/,r12/*ptr*/,r0/*acc*/,17/*off*/,1/*mul*/,r2,r3,r4,r5,r6,r7
++
++    /*                MLN(hi, lo); */
++      neg             r0
++      acr             r1
++      neg             r1
++
++    /*                MLA(hi, lo, (*fe)[0], ptr[0]);
++              MLA(hi, lo, (*fe)[1], ptr[7]);
++              MLA(hi, lo, (*fe)[2], ptr[6]);
++                MLA(hi, lo, (*fe)[3], ptr[5]);
++                MLA(hi, lo, (*fe)[4], ptr[4]);
++                MLA(hi, lo, (*fe)[5], ptr[3]);
++                MLA(hi, lo, (*fe)[6], ptr[2]);
++                MLA(hi, lo, (*fe)[7], ptr[1]); */
++      window_1        lr/*fe*/,r12/*ptr*/,r0/*acc*/,0/*off*/,0/*mac*/,r2,r3,r4,r5,r6,r7
++
++    /*                *pcm1++ = SHIFT(MLZ(hi, lo));
++
++              pcm2 = pcm1 + 31; */
++      scale           r1, r0, r1
++      st.w            r10/*pcm_1*/++, r1
++      sub             r11/*pcm2*/, r10, -4*31
++
++    /*                for (sb = 1; sb < 16; ++sb) { */
++      mov             r2, 15
++      stdsp           sp[0], r2
++odd_loop:
++    /*                ++fe;
++              ptr += 33; */
++      sub             lr /*fe*/, -8*4
++      sub             r12, -33*2
++
++    /*                ML0(hi, lo, (*fo)[0], ptr[0 + 17]);
++              MLA(hi, lo, (*fo)[1], ptr[7 + 17]);
++              MLA(hi, lo, (*fo)[2], ptr[6 + 17]);
++              MLA(hi, lo, (*fo)[3], ptr[5 + 17]);
++              MLA(hi, lo, (*fo)[4], ptr[4 + 17]);
++              MLA(hi, lo, (*fo)[5], ptr[3 + 17]);
++              MLA(hi, lo, (*fo)[6], ptr[2 + 17]);
++              MLA(hi, lo, (*fo)[7], ptr[1 + 17]); */
++      window_1        r8/*fo*/,r12/*ptr*/,r0/*acc*/,17/*off*/,1/*mul*/,r2,r3,r4,r5,r6,r7
++    /*                MLN(hi, lo); */
++
++      neg             r0
++      acr             r1
++      neg             r1
++
++    /*                MLA(hi, lo, (*fe)[7], ptr[1]);
++              MLA(hi, lo, (*fe)[6], ptr[2]);
++              MLA(hi, lo, (*fe)[5], ptr[3]);
++              MLA(hi, lo, (*fe)[4], ptr[4]);
++              MLA(hi, lo, (*fe)[3], ptr[5]);
++              MLA(hi, lo, (*fe)[2], ptr[6]);
++              MLA(hi, lo, (*fe)[1], ptr[7]);
++              MLA(hi, lo, (*fe)[0], ptr[0]); */
++      window_1        lr/*fe*/,r12/*ptr*/,r0/*acc*/,0/*off*/,0/*mac*/,r2,r3,r4,r5,r6,r7
++
++    /*        ptr -= 2*pe; */
++      lddsp           r2, sp[4]
++
++    /*                *pcm1++ = SHIFT(MLZ(hi, lo)); */
++
++      scale           r1, r0, r1
++      sub             r12/*ptr*/, r12, r2/*pe*/<< 2
++      st.w            r10/*pcm_1*/++, r1
++
++
++    /*                ML0(hi, lo, (*fe)[0], ptr[7  + 17]);
++              MLA(hi, lo, (*fe)[1], ptr[8  + 17]);
++              MLA(hi, lo, (*fe)[2], ptr[9  + 17]);
++              MLA(hi, lo, (*fe)[3], ptr[10 + 17]);
++              MLA(hi, lo, (*fe)[4], ptr[11 + 17]);
++              MLA(hi, lo, (*fe)[5], ptr[12 + 17]);
++              MLA(hi, lo, (*fe)[6], ptr[13 + 17]);
++              MLA(hi, lo, (*fe)[7], ptr[14 + 17]); */
++      window_2        lr/*fe*/,r12/*ptr*/,r0/*acc*/,17/*off*/,1/*mul*/,r2,r3,r4,r5,r6,r7
++    /*                MLA(hi, lo, (*fo)[7], ptr[14]);
++              MLA(hi, lo, (*fo)[6], ptr[13]);
++              MLA(hi, lo, (*fo)[5], ptr[12]);
++              MLA(hi, lo, (*fo)[4], ptr[11]);
++              MLA(hi, lo, (*fo)[3], ptr[10]);
++              MLA(hi, lo, (*fo)[2], ptr[9]);
++              MLA(hi, lo, (*fo)[1], ptr[8]);
++              MLA(hi, lo, (*fo)[0], ptr[7]); */
++      window_2        r8/*fo*/,r12/*ptr*/,r0/*acc*/,0/*off*/,0/*mac*/,r2,r3,r4,r5,r6,r7
++
++
++    /*                *pcm2-- = SHIFT(MLZ(hi, lo)); */
++      lddsp           r3, sp[4]
++      lddsp           r2, sp[0]
++      scale           r1, r0, r1
++      st.w            --r11/*pcm_2*/, r1
++
++    /*                ptr += 2*pe; */
++      add             r12/*ptr*/, r12, r3/*pe*/<< 2
++
++    /*                ++fo;
++              } */
++      sub             r8/*fo*/, -8*4
++
++      sub             r2, 1
++      stdsp           sp[0], r2
++      brne            odd_loop
++
++    /*                ptr += 33; */
++      sub             r12/*ptr*/, -33*2
++
++    /*                ML0(hi, lo, (*fo)[0], ptr[0 + 17]);
++              MLA(hi, lo, (*fo)[1], ptr[7 + 17]);
++              MLA(hi, lo, (*fo)[2], ptr[6 + 17]);
++              MLA(hi, lo, (*fo)[3], ptr[5 + 17]);
++              MLA(hi, lo, (*fo)[4], ptr[4 + 17]);
++              MLA(hi, lo, (*fo)[5], ptr[3 + 17]);
++              MLA(hi, lo, (*fo)[6], ptr[2 + 17]);
++              MLA(hi, lo, (*fo)[7], ptr[1 + 17]); */
++      window_1        r8/*fo*/,r12/*ptr*/,r0/*acc*/,17/*off*/,1/*mul*/,r2,r3,r4,r5,r6,r7
++
++      rjmp            synth_end
++synth_even:
++      /* Filter for even phases */
++
++      /*      fe = &(*filter)[0][0][0];
++              fx = &(*filter)[0][1][0];
++              fo = &(*filter)[1][1][0]; */
++      sub             lr /*fx*/, r11, -16*8*4
++      sub             r8 /*fo*/, r11, -(16*8*4*2 + 16*8*4)
++
++      /*      po = ((phase - 1) & 0xF) >> 1; */
++      sub             r12, 1
++      andl            r12, 0xe, COH
++      stdsp           sp[4], r12
++      /*      ptr = (short const *)Dmod + po; */
++      add             r12, r9, r12
++
++      /*      ML0(hi, lo, (*fx)[0], ptr[0 + 17]);
++              MLA(hi, lo, (*fx)[1], ptr[7 + 17]);
++              MLA(hi, lo, (*fx)[2], ptr[6 + 17]);
++              MLA(hi, lo, (*fx)[3], ptr[5 + 17]);
++              MLA(hi, lo, (*fx)[4], ptr[4 + 17]);
++              MLA(hi, lo, (*fx)[5], ptr[3 + 17]);
++              MLA(hi, lo, (*fx)[6], ptr[2 + 17]);
++              MLA(hi, lo, (*fx)[7], ptr[1 + 17]); */
++      window_1        lr/*fx*/,r12/*ptr*/,r0/*acc*/,17/*off*/,1/*mul*/,r2,r3,r4,r5,r6,r7
++
++    /*                MLN(hi, lo); */
++      neg             r0
++      acr             r1
++      neg             r1
++
++    /*                MLA(hi, lo, (*fe)[0], ptr[0 + 1]);
++              MLA(hi, lo, (*fe)[1], ptr[7 + 1]);
++              MLA(hi, lo, (*fe)[2], ptr[6 + 1]);
++                MLA(hi, lo, (*fe)[3], ptr[5 + 1]);
++                MLA(hi, lo, (*fe)[4], ptr[4 + 1]);
++                MLA(hi, lo, (*fe)[5], ptr[3 + 1]);
++                MLA(hi, lo, (*fe)[6], ptr[2 + 1]);
++                MLA(hi, lo, (*fe)[7], ptr[1 + 1]); */
++      window_1        r11/*fe*/,r12/*ptr*/,r0/*acc*/,1/*off*/,0/*mac*/,r2,r3,r4,r5,r6,r7
++
++    /*                *pcm1++ = SHIFT(MLZ(hi, lo));
++
++              pcm2 = pcm1 + 31; */
++      scale           r1, r0, r1
++      st.w            r10/*pcm_1*/++, r1
++      sub             lr/*pcm2*/, r10, -4*31
++
++    /*                for (sb = 1; sb < 16; ++sb) { */
++      mov             r2, 15
++      stdsp           sp[0], r2
++even_loop:
++    /*                ++fe;
++              ptr += 33; */
++      sub             r11 /*fe*/, -8*4
++      sub             r12, -33*2
++
++    /*                ML0(hi, lo, (*fo)[0], ptr[0 + 17]);
++              MLA(hi, lo, (*fo)[1], ptr[7 + 17]);
++              MLA(hi, lo, (*fo)[2], ptr[6 + 17]);
++              MLA(hi, lo, (*fo)[3], ptr[5 + 17]);
++              MLA(hi, lo, (*fo)[4], ptr[4 + 17]);
++              MLA(hi, lo, (*fo)[5], ptr[3 + 17]);
++              MLA(hi, lo, (*fo)[6], ptr[2 + 17]);
++              MLA(hi, lo, (*fo)[7], ptr[1 + 17]); */
++      window_1        r8/*fo*/,r12/*ptr*/,r0/*acc*/,17/*off*/,1/*mul*/,r2,r3,r4,r5,r6,r7
++    /*                MLN(hi, lo); */
++      neg             r0
++      acr             r1
++      neg             r1
++
++    /*                MLA(hi, lo, (*fe)[7], ptr[1 + 1]);
++              MLA(hi, lo, (*fe)[6], ptr[2 + 1]);
++              MLA(hi, lo, (*fe)[5], ptr[3 + 1]);
++              MLA(hi, lo, (*fe)[4], ptr[4 + 1]);
++              MLA(hi, lo, (*fe)[3], ptr[5 + 1]);
++              MLA(hi, lo, (*fe)[2], ptr[6 + 1]);
++              MLA(hi, lo, (*fe)[1], ptr[7 + 1]);
++              MLA(hi, lo, (*fe)[0], ptr[0 + 1]); */
++      window_1        r11/*fe*/,r12/*ptr*/,r0/*acc*/,1/*off*/,0/*mac*/,r2,r3,r4,r5,r6,r7
++
++    /*                *pcm1++ = SHIFT(MLZ(hi, lo)); */
++      lddsp           r2, sp[4]
++      scale           r1, r0, r1
++    /*        ptr -= 2*po; */
++      sub             r12/*ptr*/, r12, r2/*po*/<< 1
++      st.w            r10/*pcm_1*/++, r1
++
++
++    /*                ML0(hi, lo, (*fe)[0], ptr[7  + 17 - 1]);
++              MLA(hi, lo, (*fe)[1], ptr[8  + 17 - 1]);
++              MLA(hi, lo, (*fe)[2], ptr[9  + 17 - 1]);
++              MLA(hi, lo, (*fe)[3], ptr[10 + 17 - 1]);
++              MLA(hi, lo, (*fe)[4], ptr[11 + 17 - 1]);
++              MLA(hi, lo, (*fe)[5], ptr[12 + 17 - 1]);
++              MLA(hi, lo, (*fe)[6], ptr[13 + 17 - 1]);
++              MLA(hi, lo, (*fe)[7], ptr[14 + 17 - 1]); */
++      window_2        r11/*fe*/,r12/*ptr*/,r0/*acc*/,16/*off*/,1/*mul*/,r2,r3,r4,r5,r6,r7
++    /*                MLA(hi, lo, (*fo)[7], ptr[14]);
++              MLA(hi, lo, (*fo)[6], ptr[13]);
++              MLA(hi, lo, (*fo)[5], ptr[12]);
++              MLA(hi, lo, (*fo)[4], ptr[11]);
++              MLA(hi, lo, (*fo)[3], ptr[10]);
++              MLA(hi, lo, (*fo)[2], ptr[9]);
++              MLA(hi, lo, (*fo)[1], ptr[8]);
++              MLA(hi, lo, (*fo)[0], ptr[7]); */
++      window_2        r8/*fo*/,r12/*ptr*/,r0/*acc*/,0/*off*/,0/*mac*/,r2,r3,r4,r5,r6,r7
++
++
++    /*                *pcm2-- = SHIFT(MLZ(hi, lo)); */
++      lddsp           r3, sp[4]
++      lddsp           r2, sp[0]
++      scale           r1, r0, r1
++      st.w            --lr/*pcm_2*/, r1
++
++    /*                ptr += 2*po; */
++      add             r12/*ptr*/, r12, r3/*po*/<< 1
++
++    /*                ++fo;
++              } */
++      sub             r8/*fo*/, -8*4
++
++      sub             r2, 1
++      stdsp           sp[0], r2
++      brne            even_loop
++
++    /*                ptr += 33; */
++      sub             r12/*ptr*/, -33*2
++
++    /*                ML0(hi, lo, (*fo)[0], ptr[0 + 17]);
++              MLA(hi, lo, (*fo)[1], ptr[7 + 17]);
++              MLA(hi, lo, (*fo)[2], ptr[6 + 17]);
++              MLA(hi, lo, (*fo)[3], ptr[5 + 17]);
++              MLA(hi, lo, (*fo)[4], ptr[4 + 17]);
++              MLA(hi, lo, (*fo)[5], ptr[3 + 17]);
++              MLA(hi, lo, (*fo)[6], ptr[2 + 17]);
++              MLA(hi, lo, (*fo)[7], ptr[1 + 17]); */
++      window_1        r8/*fo*/,r12/*ptr*/,r0/*acc*/,17/*off*/,1/*mul*/,r2,r3,r4,r5,r6,r7
++
++
++
++synth_end:
++   /*         *pcm1 = SHIFT(-MLZ(hi, lo)); */
++      scale           r1, r0, r1
++      neg             r1
++      st.w            r10/*pcm_1*/, r1
++
++      mov             r12, r10
++      sub             sp, -8
++      popm            r0-r7, pc
++
++
++
++
++
diff --git a/package/libmad/0003-remove-deprecated-cflags.patch b/package/libmad/0003-remove-deprecated-cflags.patch
new file mode 100644 (file)
index 0000000..e504083
--- /dev/null
@@ -0,0 +1,33 @@
+libmad: remove deprecated cflags (-fforce-mem)
+
+fforce-mem has long been deprecated, and is completely removed from
+gcc 4.3.x on.
+---
+ configure    |    1 -
+ configure.ac |    1 -
+ 2 files changed, 2 deletions(-)
+
+Index: libmad-0.15.1b/configure.ac
+===================================================================
+--- libmad-0.15.1b.orig/configure.ac
++++ libmad-0.15.1b/configure.ac
+@@ -140,7 +140,6 @@
+     case "$optimize" in
+       -O|"-O "*)
+           optimize="-O"
+-          optimize="$optimize -fforce-mem"
+           optimize="$optimize -fforce-addr"
+           : #x optimize="$optimize -finline-functions"
+           : #- optimize="$optimize -fstrength-reduce"
+Index: libmad-0.15.1b/configure
+===================================================================
+--- libmad-0.15.1b.orig/configure
++++ libmad-0.15.1b/configure
+@@ -19099,7 +19099,6 @@
+     case "$optimize" in
+       -O|"-O "*)
+           optimize="-O"
+-          optimize="$optimize -fforce-mem"
+           optimize="$optimize -fforce-addr"
+           : #x optimize="$optimize -finline-functions"
+           : #- optimize="$optimize -fstrength-reduce"
diff --git a/package/libmad/0004-thumb2-fixed-arm.patch b/package/libmad/0004-thumb2-fixed-arm.patch
new file mode 100644 (file)
index 0000000..befda48
--- /dev/null
@@ -0,0 +1,40 @@
+Fixes Thumb2-related build failure
+
+Patch below comes from the Debian libmad package.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+From: Dave Martin
+Subject: "rsc" doesnt exist anymore in thumb2
+
+diff --git a/fixed.h b/fixed.h
+index 4b58abf..ba4bc26 100644
+--- a/fixed.h
++++ b/fixed.h
+@@ -275,12 +275,25 @@ mad_fixed_t mad_f_mul_inline(mad_fixed_t x, mad_fixed_t y)
+        : "+r" (lo), "+r" (hi)  \
+        : "%r" (x), "r" (y))
++#ifdef __thumb__
++/* In Thumb-2, the RSB-immediate instruction is only allowed with a zero
++      operand.  If needed this code can also support Thumb-1 
++      (simply append "s" to the end of the second two instructions). */
++#  define MAD_F_MLN(hi, lo)  \
++    asm ("rsbs        %0, %0, #0\n\t"  \
++       "sbc   %1, %1, %1\n\t"  \
++       "sub   %1, %1, %2"  \
++       : "+&r" (lo), "=&r" (hi)  \
++       : "r" (hi)  \
++       : "cc")
++#else /* ! __thumb__ */
+ #  define MAD_F_MLN(hi, lo)  \
+     asm ("rsbs        %0, %2, #0\n\t"  \
+        "rsc   %1, %3, #0"  \
+-       : "=r" (lo), "=r" (hi)  \
++       : "=&r" (lo), "=r" (hi)  \
+        : "0" (lo), "1" (hi)  \
+        : "cc")
++#endif /* __thumb__ */
+ #  define mad_f_scale64(hi, lo)  \
+     ({ mad_fixed_t __result;  \
diff --git a/package/libmad/0005-thumb2-imdct-arm.patch b/package/libmad/0005-thumb2-imdct-arm.patch
new file mode 100644 (file)
index 0000000..414b9c8
--- /dev/null
@@ -0,0 +1,20 @@
+Fixes Thumb2 related build failure
+
+Patch below comes from the Debian libmad package.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+From: Konstantinos Margaritis <markos@debian.org>
+Subject: use "adr" instead of "add" to make code ready for thumb2
+
+--- ./imdct_l_arm.S.orig       2010-02-25 13:25:23.000000000 +0100
++++ ./imdct_l_arm.S    2010-02-25 13:27:26.000000000 +0100
+@@ -468,7 +468,7 @@
+     @----
+-    add     r2, pc, #(imdct36_long_karray-.-8)  @ r2 = base address of Knn array (PIC safe ?)
++    adr     r2, imdct36_long_karray
+ loop:
diff --git a/package/libmad/libmad-0.15.1b-mips-h-constraint-removal.patch b/package/libmad/libmad-0.15.1b-mips-h-constraint-removal.patch
deleted file mode 100644 (file)
index 0958587..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-http://patchwork.openembedded.org/patch/921/
-
-diff -ur libmad-0.15.1b-orig/fixed.h libmad-0.15.1b/fixed.h
---- libmad-0.15.1b-orig/fixed.h        2004-02-17 12:32:03.000000000 +1030
-+++ libmad-0.15.1b/fixed.h     2009-08-05 10:46:30.000000000 +0930
-@@ -299,6 +299,23 @@
- # elif defined(FPM_MIPS)
-+/* Test for gcc >= maj.min, as per __GNUC_PREREQ in glibc */
-+#if defined (__GNUC__) && defined (__GNUC_MINOR__)
-+#define __GNUC_PREREQ(maj, min) \
-+      ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min))
-+#else
-+#define __GNUC_PREREQ(maj, min)  0
-+#endif
-+
-+#if __GNUC_PREREQ(4,4)
-+  typedef unsigned int u64_di_t __attribute__ ((mode (DI)));
-+# define MAD_F_MLX(hi, lo, x, y) \
-+   do { \
-+      u64_di_t __ll = (u64_di_t) (x) * (y); \
-+      hi = __ll >> 32; \
-+      lo = __ll; \
-+   } while (0) 
-+#else
- /*
-  * This MIPS version is fast and accurate; the disposition of the least
-  * significant bit depends on OPT_ACCURACY via mad_f_scale64().
-@@ -328,6 +345,7 @@
-        : "%r" ((x) >> 12), "r" ((y) >> 16))
- #  define MAD_F_MLZ(hi, lo)  ((mad_fixed_t) (lo))
- # endif
-+#endif /* __GNU_PREREQ(4,4) */
- # if defined(OPT_SPEED)
- #  define mad_f_scale64(hi, lo)  \
-diff -ur libmad-0.15.1b-orig/mad.h libmad-0.15.1b/mad.h
---- libmad-0.15.1b-orig/mad.h  2004-02-17 13:25:44.000000000 +1030
-+++ libmad-0.15.1b/mad.h       2009-08-05 10:42:40.000000000 +0930
-@@ -344,6 +344,23 @@
- # elif defined(FPM_MIPS)
-+/* Test for gcc >= maj.min, as per __GNUC_PREREQ in glibc */
-+#if defined (__GNUC__) && defined (__GNUC_MINOR__)
-+#define __GNUC_PREREQ(maj, min) \
-+      ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min))
-+#else
-+#define __GNUC_PREREQ(maj, min)  0
-+#endif
-+
-+#if __GNUC_PREREQ(4,4)
-+  typedef unsigned int u64_di_t __attribute__ ((mode (DI)));
-+# define MAD_F_MLX(hi, lo, x, y) \
-+   do { \
-+      u64_di_t __ll = (u64_di_t) (x) * (y); \
-+      hi = __ll >> 32; \
-+      lo = __ll; \
-+   } while (0) 
-+#else
- /*
-  * This MIPS version is fast and accurate; the disposition of the least
-  * significant bit depends on OPT_ACCURACY via mad_f_scale64().
-@@ -373,6 +390,7 @@
-        : "%r" ((x) >> 12), "r" ((y) >> 16))
- #  define MAD_F_MLZ(hi, lo)  ((mad_fixed_t) (lo))
- # endif
-+#endif /* __GNU_PREREQ(4,4) */
- # if defined(OPT_SPEED)
- #  define mad_f_scale64(hi, lo)  \
diff --git a/package/libmad/libmad-0.15.1b-optimization.patch.avr32 b/package/libmad/libmad-0.15.1b-optimization.patch.avr32
deleted file mode 100644 (file)
index b74eea3..0000000
+++ /dev/null
@@ -1,2922 +0,0 @@
-diff --git a/bit.c b/bit.c
-index c2bfb24..262ce3a 100644
---- a/bit.c
-+++ b/bit.c
-@@ -25,12 +25,6 @@
- # include "global.h"
--# ifdef HAVE_LIMITS_H
--#  include <limits.h>
--# else
--#  define CHAR_BIT  8
--# endif
--
- # include "bit.h"
- /*
-@@ -81,6 +75,8 @@ unsigned short const crc_table[256] = {
- # define CRC_POLY  0x8005
-+#ifndef FPM_AVR32
-+
- /*
-  * NAME:      bit->init()
-  * DESCRIPTION:       initialize bit pointer struct
-@@ -190,6 +186,8 @@ void mad_bit_write(struct mad_bitptr *bitptr, unsigned int len,
- }
- # endif
-+#endif
-+
- /*
-  * NAME:      bit->crc()
-  * DESCRIPTION:       compute CRC-check word
-diff --git a/bit.h b/bit.h
-index 5a51570..70f550a 100644
---- a/bit.h
-+++ b/bit.h
-@@ -22,6 +22,92 @@
- # ifndef LIBMAD_BIT_H
- # define LIBMAD_BIT_H
-+# ifdef HAVE_LIMITS_H
-+#  include <limits.h>
-+# else
-+#  define CHAR_BIT  8
-+# endif
-+
-+#ifdef FPM_AVR32
-+
-+struct mad_bitptr {
-+  unsigned char const *byte;
-+  unsigned int read_bytes;
-+};
-+
-+/*
-+ * NAME:      bit->init()
-+ * DESCRIPTION:       initialize bit pointer struct
-+ */
-+static void mad_bit_init(struct mad_bitptr *bitptr, unsigned char const *byte)
-+{
-+  bitptr->byte  = byte;
-+  bitptr->read_bytes  = 0;
-+}
-+
-+/*
-+ * NAME:      bit->length()
-+ * DESCRIPTION:       return number of bits between start and end points
-+ */
-+static unsigned int mad_bit_length(struct mad_bitptr const *begin,
-+                          struct mad_bitptr const *end)
-+{
-+  return (end->read_bytes - begin->read_bytes) +
-+    8 * (end->byte - begin->byte);
-+}
-+
-+/*
-+ * NAME:      bit->nextbyte()
-+ * DESCRIPTION:       return pointer to next unprocessed byte
-+ */
-+static unsigned char const *mad_bit_nextbyte(struct mad_bitptr const *bitptr)
-+{
-+  return bitptr->byte + ((bitptr->read_bytes + 0x7) >> 3);
-+}
-+
-+/*
-+ * NAME:      bit->skip()
-+ * DESCRIPTION:       advance bit pointer
-+ */
-+static void mad_bit_skip(struct mad_bitptr *bitptr, unsigned int len)
-+{
-+  bitptr->read_bytes += len;
-+  bitptr->byte += (bitptr->read_bytes >> 3);
-+  bitptr->read_bytes &=  0x7;
-+}
-+
-+/*
-+ * NAME:      bit->read()
-+ * DESCRIPTION:       read an arbitrary number of bits and return their UIMSBF value
-+ */
-+static unsigned long mad_bit_read(struct mad_bitptr *bitptr, unsigned int len)
-+{
-+  register unsigned long value;
-+
-+  if (!len)
-+    return 0;
-+
-+  value = *(unsigned int *)bitptr->byte;
-+
-+  value <<= bitptr->read_bytes;
-+  value >>= (32 - len);
-+
-+  bitptr->read_bytes += len;
-+  bitptr->byte += (bitptr->read_bytes >> 3);
-+  bitptr->read_bytes &=  0x7;
-+
-+  return value;
-+}
-+
-+# define mad_bit_finish(bitptr)               /* nothing */
-+
-+static unsigned long  mad_bit_bitsleft(struct mad_bitptr *bitptr)
-+{
-+  return (8 - (bitptr)->read_bytes);
-+}
-+
-+#else /* #ifdef FPM_AVR32 */
-+
- struct mad_bitptr {
-   unsigned char const *byte;
-   unsigned short cache;
-@@ -42,6 +128,8 @@ void mad_bit_skip(struct mad_bitptr *, unsigned int);
- unsigned long mad_bit_read(struct mad_bitptr *, unsigned int);
- void mad_bit_write(struct mad_bitptr *, unsigned int, unsigned long);
-+#endif
-+
- unsigned short mad_bit_crc(struct mad_bitptr, unsigned int, unsigned short);
- # endif
-diff --git a/configure.ac b/configure.ac
-index 9b79399..063cb9b 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -274,13 +274,14 @@ fi
- AC_MSG_CHECKING(for architecture-specific fixed-point math routines)
- AC_ARG_ENABLE(fpm, AC_HELP_STRING([--enable-fpm=ARCH],
-                  [use ARCH-specific fixed-point math routines
--                  (one of: intel, arm, mips, sparc, ppc, 64bit, default)]),
-+                  (one of: intel, arm, avr32, mips, sparc, ppc, 64bit, default)]),
- [
-     case "$enableval" in
-       yes)                             ;;
-       no|default|approx) FPM="DEFAULT" ;;
-       intel|i?86)        FPM="INTEL"   ;;
-       arm)               FPM="ARM"     ;;
-+      avr32)             FPM="AVR32"   ;;
-       mips)              FPM="MIPS"    ;;
-       sparc)             FPM="SPARC"   ;;
-       ppc|powerpc)       FPM="PPC"     ;;
-@@ -298,6 +299,7 @@ then
-     case "$host" in
-       i?86-*)     FPM="INTEL"  ;;
-       arm*-*)     FPM="ARM"    ;;
-+      avr32*-*)   FPM="AVR32"  ;;
-       mips*-*)    FPM="MIPS"   ;;
-       sparc*-*)   FPM="SPARC"  ;;
-       powerpc*-*) FPM="PPC"    ;;
-@@ -343,6 +345,11 @@ then
-           ASO="$ASO -DASO_IMDCT"
-           ASO_OBJS="imdct_l_arm.lo"
-           ;;
-+      avr32*-*)
-+          ASO="$ASO -DASO_INTERLEAVE2"
-+          ASO="$ASO -DASO_ZEROCHECK"
-+          ASO_OBJS="dct32_avr32.lo synth_avr32.lo imdct_avr32.lo"
-+          ;;
-       mips*-*)
-           ASO="$ASO -DASO_INTERLEAVE2"
-           ASO="$ASO -DASO_ZEROCHECK"
-diff --git a/configure b/configure
-index ee421cc..7a9f0c8 100755
---- a/configure
-+++ b/configure
-@@ -1048,7 +1048,7 @@ Optional Features:
-   --enable-speed          optimize for speed over accuracy
-   --enable-accuracy       optimize for accuracy over speed
-   --enable-fpm=ARCH       use ARCH-specific fixed-point math routines (one of:
--                          intel, arm, mips, sparc, ppc, 64bit, default)
-+                          intel, arm, avr32, mips, sparc, ppc, 64bit, default)
-   --enable-sso            use subband synthesis optimization
-   --disable-aso           disable architecture-specific optimizations
-   --enable-strict-iso     use strict ISO/IEC interpretations
-@@ -21477,6 +21477,7 @@ if test "${enable_fpm+set}" = set; then
-       no|default|approx) FPM="DEFAULT" ;;
-       intel|i?86)        FPM="INTEL"   ;;
-       arm)               FPM="ARM"     ;;
-+      avr32)             FPM="AVR32"   ;;
-       mips)              FPM="MIPS"    ;;
-       sparc)             FPM="SPARC"   ;;
-       ppc|powerpc)       FPM="PPC"     ;;
-@@ -21498,6 +21499,7 @@ then
-     case "$host" in
-       i?86-*)     FPM="INTEL"  ;;
-       arm*-*)     FPM="ARM"    ;;
-+      avr32*-*)   FPM="AVR32"  ;;
-       mips*-*)    FPM="MIPS"   ;;
-       sparc*-*)   FPM="SPARC"  ;;
-       powerpc*-*) FPM="PPC"    ;;
-@@ -21554,6 +21556,11 @@ then
-           ASO="$ASO -DASO_IMDCT"
-           ASO_OBJS="imdct_l_arm.lo"
-           ;;
-+      avr32*-*)
-+          ASO="$ASO -DASO_INTERLEAVE2"
-+          ASO="$ASO -DASO_ZEROCHECK"
-+          ASO_OBJS="dct32_avr32.lo synth_avr32.lo imdct_avr32.lo"
-+          ;;
-       mips*-*)
-           ASO="$ASO -DASO_INTERLEAVE2"
-           ASO="$ASO -DASO_ZEROCHECK"
-diff --git a/dct32_avr32.S b/dct32_avr32.S
-new file mode 100644
-index 0000000..7513340
---- /dev/null
-+++ b/dct32_avr32.S
-@@ -0,0 +1,780 @@
-+/*
-+   Optimized 32-point Discrete Cosine Transform (DCT)
-+   Copyright 2003-2006 Atmel Corporation.
-+
-+   Written by Ronny Pedersen, Atmel Norway
-+
-+   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. */
-+
-+#define       SHIFT   12
-+#define MAD_F_SCALEBITS 28
-+#define SLOTS 8
-+
-+#define MAD_F(x)      ((x + (1 << 15)) >> 16)
-+
-+#  define costab1     MAD_F(0x7fd8878e)
-+#  define costab2     MAD_F(0x7f62368f)
-+#  define costab3     MAD_F(0x7e9d55fc)
-+#  define costab4     MAD_F(0x7d8a5f40)
-+#  define costab5     MAD_F(0x7c29fbee)
-+#  define costab6     MAD_F(0x7a7d055b)
-+#  define costab7     MAD_F(0x78848414)
-+#  define costab8     MAD_F(0x7641af3d)
-+#  define costab9     MAD_F(0x73b5ebd1)
-+#  define costab10    MAD_F(0x70e2cbc6)
-+#  define costab11    MAD_F(0x6dca0d14)
-+#  define costab12    MAD_F(0x6a6d98a4)
-+#  define costab13    MAD_F(0x66cf8120)
-+#  define costab14    MAD_F(0x62f201ac)
-+#  define costab15    MAD_F(0x5ed77c8a)
-+#  define costab16    MAD_F(0x5a82799a)
-+#  define costab17    MAD_F(0x55f5a4d2)
-+#  define costab18    MAD_F(0x5133cc94)
-+#  define costab19    MAD_F(0x4c3fdff4)
-+#  define costab20    MAD_F(0x471cece7)
-+#  define costab21    MAD_F(0x41ce1e65)
-+#  define costab22    MAD_F(0x3c56ba70)
-+#  define costab23    MAD_F(0x36ba2014)
-+#  define costab24    MAD_F(0x30fbc54d)
-+#  define costab25    MAD_F(0x2b1f34eb)
-+#  define costab26    MAD_F(0x25280c5e)
-+#  define costab27    MAD_F(0x1f19f97b)
-+#  define costab28    MAD_F(0x18f8b83c)
-+#  define costab29    MAD_F(0x12c8106f)
-+#  define costab30    MAD_F(0x0c8bd35e)
-+#  define costab31    MAD_F(0x0647d97c)
-+
-+
-+      .macro  butterfly2_in out1, out2, out3, out4, in, idx_in1, idx_in2, idx_in3, idx_in4, coeff1, coeff2, tmplo, tmphi
-+      mov     \tmplo, \coeff1
-+      ld.w    \out1, \in[\idx_in1 * 4]
-+      ld.w    \out2, \in[\idx_in2 * 4]
-+      ld.w    \out3, \in[\idx_in3 * 4]
-+      ld.w    \out4, \in[\idx_in4 * 4]
-+      sub     \tmphi, \out1, \out2
-+      add     \out1, \out2
-+      mulsatrndwh.w   \out2, \tmphi, \tmplo:b
-+
-+      sub     \tmphi, \out3, \out4
-+      mov     \tmplo, \coeff2
-+      add     \out3, \out4
-+      mulsatrndwh.w   \out4, \tmphi, \tmplo:b
-+      .endm
-+
-+      .macro  butterfly2      in1, in2, in3, in4, coeff1, tmplo, tmphi, tmp
-+      mov     \tmp, \coeff1
-+      sub     \tmphi, \in1, \in2
-+      add     \in1, \in2
-+      mulsatrndwh.w   \in2, \tmphi, \tmp:b
-+
-+      sub     \tmphi, \in3, \in4
-+      add     \in3, \in4
-+      mulsatrndwh.w   \in4, \tmphi, \tmp:b
-+      .endm
-+
-+      .macro  butterfly4      in1, in2, in3, in4, in5, in6, in7, in8, coeff1, tmplo, tmphi, tmp
-+      mov     \tmp, \coeff1
-+      sub     \tmphi, \in1, \in2
-+      add     \in1, \in2
-+      mulsatrndwh.w   \in2, \tmphi, \tmp:b
-+
-+      sub     \tmphi, \in3, \in4
-+      add     \in3, \in4
-+      mulsatrndwh.w   \in4, \tmphi, \tmp:b
-+
-+      sub     \tmphi, \in5, \in6
-+      add     \in5, \in6
-+      mulsatrndwh.w   \in6, \tmphi, \tmp:b
-+
-+      sub     \tmphi, \in7, \in8
-+      add     \in7, \in8
-+      mulsatrndwh.w   \in8, \tmphi, \tmp:b
-+      .endm
-+
-+      .macro  scale   reg
-+      .endm
-+
-+/*void dct32( mad_fixed_t const in[32], unsigned int slot,
-+              mad_fixed_t lo[16][8], mad_fixed_t hi[16][8]) */
-+
-+      .global dct32_avr32
-+dct32_avr32:
-+      stm     --sp, r0-r7, r9-r11, lr
-+
-+      sub     sp, 32*4
-+
-+/*    t0   = in[0]  + in[31];  t16  = MUL(in[0]  - in[31], costab1);
-+      t1   = in[15] + in[16];  t17  = MUL(in[15] - in[16], costab31); */
-+      butterfly2_in   r4/*t0*/, r5/*t16*/, r6/*t1*/, r7/*t17*/, r12, 0, 31, 15, 16, costab1, costab31, r10, r11
-+
-+/*    t41  = t16 + t17;
-+      t59  = MUL(t16 - t17, costab2);
-+      t33  =   t0  + t1;
-+      t50  = MUL(t0  - t1,  costab2);*/
-+      butterfly2      r5/*t41*/, r7/*t59*/, r4/*t33*/, r6/*t50*/, costab2, r10, r11, lr
-+
-+/*    t2   = in[7]  + in[24];  t18  = MUL(in[7]  - in[24], costab15);
-+      t3   = in[8]  + in[23];  t19  = MUL(in[8]  - in[23], costab17); */
-+      butterfly2_in   r0/*t2*/, r1/*t18*/, r2/*t3*/, r3/*t19*/, r12, 7, 24, 8, 23, costab15, costab17, r10, r11
-+
-+/*    t42  = t18 + t19;
-+      t60  = MUL(t18 - t19, costab30);
-+      t34  = t2  + t3;
-+      t51  = MUL(t2  - t3,  costab30); */
-+      butterfly2      r1/*t42*/, r3/*t60*/, r0/*t34*/, r2/*t51*/, costab30, r10, r11, lr
-+
-+/*    t73  = t41 + t42;  t94  = MUL(t41 - t42, costab4);
-+      t83  = t59 + t60;  t106 = MUL(t59 - t60, costab4); */
-+
-+
-+/*    t69  = t33 + t34;  t89  = MUL(t33 - t34, costab4);
-+      t78  = t50 + t51;  t100 = MUL(t50 - t51, costab4); */
-+      butterfly4      r5/*t73*/, r1/*t94*/, r7/*t83*/, r3/*t106*/,r4/*t69*/, r0/*t89*/, r6/*t78*/, r2/*t100*/, costab4, r10, r11, lr
-+
-+/*    Store away the computed butterflies:
-+      sp[0-7] = t83, t78, t73, t69, t106, t100, t94, t89 */
-+      stm     sp, r0-r7
-+
-+
-+/*    t4   = in[3]  + in[28];  t20  = MUL(in[3]  - in[28], costab7);
-+      t5   = in[12] + in[19];  t21  = MUL(in[12] - in[19], costab25); */
-+      butterfly2_in   r4/*t4*/, r5/*t20*/, r6/*t5*/, r7/*t21*/, r12, 3, 28, 12, 19, costab7, costab25, r10, r11
-+
-+/*    t43  = t20 + t21;
-+      t61  = MUL(t20 - t21, costab14);
-+      t35  = t4  + t5;
-+      t52  = MUL(t4  - t5,  costab14); */
-+      butterfly2      r5/*t43*/, r7/*t61*/, r4/*t35*/, r6/*t52*/, costab14, r10, r11, lr
-+
-+/*    t6   = in[4]  + in[27];  t22  = MUL(in[4]  - in[27], costab9);
-+      t7   = in[11] + in[20];  t23  = MUL(in[11] - in[20], costab23); */
-+      butterfly2_in   r0/*t6*/, r1/*t22*/, r2/*t7*/, r3/*t23*/, r12, 4, 27, 11, 20, costab9, costab23, r10, r11
-+
-+/*    t44  = t22 + t23;
-+      t62  = MUL(t22 - t23, costab18);
-+      t36  = t6  + t7;
-+      t53  = MUL(t6  - t7,  costab18); */
-+      butterfly2      r1/*t44*/, r3/*t62*/, r0/*t36*/, r2/*t53*/, costab18, r10, r11, lr
-+
-+/*    t74  = t43 + t44;  t95  = MUL(t43 - t44, costab28);
-+      t84  = t61 + t62;  t107 = MUL(t61 - t62, costab28); */
-+
-+/*    t70  = t35 + t36;  t90  = MUL(t35 - t36, costab28);
-+      t79  = t52 + t53;  t101 = MUL(t52 - t53, costab28); */
-+      butterfly4      r5/*t74*/, r1/*t95*/, r7/*t84*/, r3/*t107*/, r4/*t70*/, r0/*t90*/, r6/*t79*/, r2/*t101*/, costab28, r10, r11, lr
-+
-+/*    Store away the computed butterflies:
-+      sp[8-15] = t84, t79, t74, t70, t107, t101, t95, t90 */
-+      sub     r10, sp, -8*4
-+      stm     r10, r0-r7
-+
-+
-+/*    t8   = in[1]  + in[30];  t24  = MUL(in[1]  - in[30], costab3);
-+      t9   = in[14] + in[17];  t25  = MUL(in[14] - in[17], costab29); */
-+      butterfly2_in   r4/*t8*/, r5/*t24*/, r6/*t9*/, r7/*t25*/, r12, 1, 30, 14, 17, costab3, costab29, r10, r11
-+
-+
-+/*    t45  = t24 + t25;
-+      t63  = MUL(t24 - t25, costab6);
-+      t37  = t8  + t9;
-+      t54  = MUL(t8  - t9,  costab6); */
-+      butterfly2      r5/*t45*/, r7/*t63*/, r4/*t37*/, r6/*t54*/, costab6, r10, r11, lr
-+
-+/*    t10  = in[6]  + in[25];  t26  = MUL(in[6]  - in[25], costab13);
-+      t11  = in[9]  + in[22];  t27  = MUL(in[9]  - in[22], costab19); */
-+      butterfly2_in   r0/*t10*/, r1/*t26*/, r2/*t11*/, r3/*t27*/, r12, 6, 25, 9, 22, costab13, costab19, r10, r11
-+
-+/*    t46  = t26 + t27;
-+      t64  = MUL(t26 - t27, costab26);
-+      t38  = t10 + t11;
-+      t55  = MUL(t10 - t11, costab26); */
-+      butterfly2      r1/*t46*/, r3/*t64*/, r0/*t38*/, r2/*t55*/, costab26, r10, r11, lr
-+
-+/*    t75  = t45 + t46;  t96  = MUL(t45 - t46, costab12);
-+      t85  = t63 + t64;  t108 = MUL(t63 - t64, costab12); */
-+
-+/*    t71  = t37 + t38;  t91  = MUL(t37 - t38, costab12);
-+      t80  = t54 + t55;  t102 = MUL(t54 - t55, costab12); */
-+      butterfly4      r5/*t75*/, r1/*t96*/, r7/*t85*/, r3/*t108*/, r4/*t71*/, r0/*t91*/, r6/*t80*/, r2/*t102*/, costab12, r10, r11, lr
-+
-+/*    Store away the computed butterflies:
-+      sp[16-23] = t85, t80, t75, t71, t108, t102, t96, t91 */
-+      sub     r10, sp, -16*4
-+      stm     r10, r0-r7
-+
-+/*    t12  = in[2]  + in[29];  t28  = MUL(in[2]  - in[29], costab5);
-+      t13  = in[13] + in[18];  t29  = MUL(in[13] - in[18], costab27); */
-+      butterfly2_in   r4/*t12*/, r5/*t28*/, r6/*t13*/, r7/*t29*/, r12, 2, 29, 13, 18, costab5, costab27, r10, r11
-+
-+/*    t47  = t28 + t29;
-+      t65  = MUL(t28 - t29, costab10);
-+      t39  = t12 + t13;
-+      t56  = MUL(t12 - t13, costab10); */
-+      butterfly2      r5/*t47*/, r7/*t65*/, r4/*t39*/, r6/*t56*/, costab10, r10, r11, lr
-+
-+/*    t14  = in[5]  + in[26];  t30  = MUL(in[5]  - in[26], costab11);
-+      t15  = in[10] + in[21];  t31  = MUL(in[10] - in[21], costab21);*/
-+      butterfly2_in   r0/*t14*/, r1/*t30*/, r2/*t15*/, r3/*t31*/, r12, 5, 26, 10, 21, costab11, costab21, r10, r11
-+
-+/*    t48  = t30 + t31;
-+      t66  = MUL(t30 - t31, costab22);
-+      t40  = t14 + t15;
-+      t57  = MUL(t14 - t15, costab22);*/
-+      butterfly2      r1/*t48*/, r3/*t66*/, r0/*t40*/, r2/*t57*/, costab22, r10, r11, lr
-+
-+/*    t76  = t47 + t48;  t97  = MUL(t47 - t48, costab20);
-+      t86  = t65 + t66;  t109 = MUL(t65 - t66, costab20);*/
-+
-+/*    t72  = t39 + t40;  t92  = MUL(t39 - t40, costab20);
-+      t81  = t56 + t57;  t103 = MUL(t56 - t57, costab20);*/
-+      butterfly4      r5/*t76*/, r1/*t97*/, r7/*t86*/, r3/*t109*/,r4/*t72*/, r0/*t92*/, r6/*t81*/, r2/*t103*/, costab20, r10, r11, lr
-+
-+/*    Store away the computed butterflies:
-+      sp[24-31] = t86, t81, t76, t72, t109, t103, t97, t92 */
-+      sub     r10, sp, -24*4
-+      stm     r10, r0-r7
-+
-+/*      We now have the following on the stack:
-+
-+      sp[0-7] = t83, t78, t73, t69, t106, t100, t94, t89
-+      sp[8-15] = t84, t79, t74, t70, t107, t101, t95, t90
-+      sp[16-23] = t85, t80, t75, t71, t108, t102, t96, t91
-+      sp[24-31] = t86, t81, t76, t72, t109, t103, t97, t92    */
-+
-+/*    Load    {r0...r7} = { t72, t76, t71, t75, t70, t74, t69, t73 } */
-+      ld.d    r6, sp[2*4]
-+      ld.d    r4, sp[10*4]
-+      ld.d    r2, sp[18*4]
-+      ld.d    r0, sp[26*4]
-+
-+
-+/*    t113 = t69  + t70;
-+      t141 = MUL(t69 - t70, costab8);
-+
-+      t115 = t73  + t74;
-+      t144 = MUL(t73 - t74, costab8); */
-+      butterfly2      r6/*t113*/, r4/*t141*/, r7/*t115*/, r5/*t144*/, costab8, r10, r11, lr
-+
-+/*    t114 = t71  + t72;
-+      t142 = MUL(t71 - t72, costab24);
-+
-+      t116 = t75  + t76;
-+      t145 = MUL(t75 - t76, costab24); */
-+      butterfly2      r2/*t114*/, r0/*t142*/, r3/*t116*/, r1/*t145*/, costab24, r10, r11, lr
-+
-+
-+/*
-+      t191 = t113 + t114;
-+      t192 = MUL(t113 - t114, costab16)
-+
-+      t32  = t115 + t116;
-+      t177 = MUL(t115 - t116, costab16) ;
-+
-+      t143 = t141 + t142;
-+      t190 = MUL(t141 - t142, costab16) ;
-+
-+      t146 = t144 + t145;
-+      t184 = MUL(t144 - t145, costab16) ; */
-+      butterfly4      r6/*t191*/, r2/*t192*/, r7/*t32*/, r3/*t177*/, r4/*t143*/, r0/*190*/, r5/*t146*/, r1/*t184*/, costab16, r10, r11, lr
-+
-+/*    Store away the computed butterflies:
-+      sp[2-3] = t32, t191
-+      sp[10-11] = t146, t143
-+      sp[18-19] = t177, t192
-+      sp[26-27] = t184, t190 */
-+      st.d    sp[2*4] , r6
-+      st.d    sp[10*4], r4
-+      st.d    sp[18*4], r2
-+      st.d    sp[26*4], r0
-+
-+/*    Load    {r0...r7} = { t81, t86, t80, t85, t79, t84, t78, t83 } */
-+      ld.d    r6, sp[0*4]
-+      ld.d    r4, sp[8*4]
-+      ld.d    r2, sp[16*4]
-+      ld.d    r0, sp[24*4]
-+
-+
-+/*    t118 = t78  + t79;
-+      t148 = MUL(t78 - t79, costab8);
-+
-+      t121 = t83  + t84;
-+      t152 = MUL(t83 - t84, costab8); */
-+      butterfly2      r6/*t118*/, r4/*t148*/, r7/*t121*/, r5/*t152*/, costab8, r10, r11, lr
-+
-+/*    t119 = t80  + t81;
-+      t149 = MUL(t80 - t81, costab24);
-+
-+      t122 = t85  + t86;
-+      t153 = MUL(t85 - t86, costab24); */
-+      butterfly2      r2/*t119*/, r0/*t149*/, r3/*t122*/, r1/*t153*/, costab24, r10, r11, lr
-+
-+
-+
-+/*    t58  = t118 + t119;
-+      t178 = MUL(t118 - t119, costab16) ;
-+
-+      t67  = t121 + t122;
-+      t179 = MUL(t121 - t122, costab16) ;
-+
-+      t150 = t148 + t149;
-+      t185 = MUL(t148 - t149, costab16) ;
-+
-+      t154 = t152 + t153;
-+      t186 = MUL(t152 - t153, costab16) ; */
-+      butterfly4      r6/*t58*/, r2/*t178*/, r7/*t67*/, r3/*t179*/, r4/*t150*/, r0/*185*/, r5/*t154*/, r1/*t186*/, costab16, r10, r11, lr
-+
-+/*    Store away the computed butterflies:
-+      sp[0-1] = t67, t58
-+      sp[8-9] = t154, t150
-+      sp[16-17] = t179, t178
-+      sp[24-25] = t186, t185 */
-+      st.d    sp[0*4] , r6
-+      st.d    sp[8*4], r4
-+      st.d    sp[16*4], r2
-+      st.d    sp[24*4], r0
-+
-+/*    Load    {r0...r7} = { t92, t97, t91, t96, t90, t95, t89, t94 } */
-+      ld.d    r6, sp[6*4]
-+      ld.d    r4, sp[14*4]
-+      ld.d    r2, sp[22*4]
-+      ld.d    r0, sp[30*4]
-+
-+
-+/*    t125 = t89  + t90;
-+      t157 = MUL(t89 - t90, costab8);
-+
-+      t128 = t94  + t95;
-+      t161 = MUL(t94 - t95, costab8); */
-+      butterfly2      r6/*t125*/, r4/*t157*/, r7/*t128*/, r5/*t161*/, costab8, r10, r11, lr
-+
-+/*    t126 = t91  + t92;
-+      t158 = MUL(t91 - t92, costab24);
-+
-+      t129 = t96  + t97;
-+      t162 = MUL(t96 - t97, costab24); */
-+      butterfly2      r2/*t126*/, r0/*t158*/, r3/*t129*/, r1/*t162*/, costab24, r10, r11, lr
-+
-+
-+/*
-+      t93  = t125 + t126;
-+      t180 = MUL(t125 - t126, costab16) ;
-+
-+      t98  = t128 + t129;
-+      t181 = MUL(t128 - t129, costab16) ;
-+
-+      t159 = t157 + t158;
-+      t187 = MUL(t157 - t158, costab16) ;
-+
-+      t163 = t161 + t162;
-+      t188 = MUL(t161 - t162, costab16) ; */
-+      butterfly4      r6/*t93*/, r2/*t180*/, r7/*t98*/, r3/*t181*/, r4/*t159*/, r0/*187*/, r5/*t163*/, r1/*t188*/, costab16, r10, r11, lr
-+
-+
-+/*    Store away the computed butterflies:
-+      sp[6-7] = t98, t93
-+      sp[14-15] = t163, t159
-+      sp[22-23] = t181, t180
-+      sp[30-31] = t188, t187 */
-+      st.d    sp[6*4] , r6
-+      st.d    sp[14*4], r4
-+      st.d    sp[22*4], r2
-+      st.d    sp[30*4], r0
-+
-+/*    Load    {r0...r7} = { t103, t109, t102, t108, t101, t107, t100, t106 } */
-+      ld.d    r6, sp[4*4]
-+      ld.d    r4, sp[12*4]
-+      ld.d    r2, sp[20*4]
-+      ld.d    r0, sp[28*4]
-+
-+
-+
-+/*    t132 = t100 + t101;
-+      t166 = MUL(t100 - t101, costab8);
-+
-+      t136 = t106 + t107;
-+      t171 = MUL(t106 - t107, costab8); */
-+      butterfly2      r6/*t132*/, r4/*t166*/, r7/*t136*/, r5/*t171*/, costab8, r10, r11, lr
-+
-+/*    t133 = t102 + t103;
-+      t167 = MUL(t102 - t103, costab24);
-+
-+      t137 = t108 + t109;
-+      t172 = MUL(t108 - t109, costab24);*/
-+      butterfly2      r2/*t133*/, r0/*t167*/, r3/*t137*/, r1/*t172*/, costab24, r10, r11, lr
-+
-+
-+/*    t104 = t132 + t133;
-+      t182 = MUL(t132 - t133, costab16) ;
-+
-+      t110 = t136 + t137;
-+      t183 = MUL(t136 - t137, costab16) ;
-+
-+      t168 = t166 + t167;
-+      t189 = MUL(t166 - t167, costab16) ;
-+
-+      t173 = t171 + t172;
-+      t208 = MUL(t171 - t172, costab16) ; */
-+      butterfly4      r6/*t104*/, r2/*t182*/, r7/*t110*/, r3/*t183*/, r4/*t168*/, r0/*189*/, r5/*t173*/, r1/*t208*/, costab16, r10, r11, lr
-+
-+/*    Store away the computed butterflies:
-+      sp[4-5] = t110, t104
-+      sp[12-13] = t173, t168
-+      sp[20-21] = t183, t182
-+      sp[28-29] = t208, t189 */
-+      st.d    sp[4*4] , r6
-+      st.d    sp[12*4], r4
-+      st.d    sp[20*4], r2
-+      st.d    sp[28*4], r0
-+
-+/*    Now we have the following stack
-+
-+      sp[0-7]   = t67,  t58 , t32,  t191, t110, t104, t98,  t93
-+      sp[8-15]  = t154, t150, t146, t143, t173, t168, t163, t159
-+      sp[16-23] = t179, t178, t177, t192, t183, t182, t181, t180
-+      sp[24-31] = t186, t185, t184, t190, t208, t189, t188, t187
-+*/
-+
-+      /* Get slot, lo and hi from stack */
-+      lddsp   lr, sp[32*4 + 4] /*slot*/
-+      lddsp   r12, sp[32*4 + 8] /*lo*/
-+      lddsp   r11, sp[32*4 + 12] /*hi*/
-+
-+      add     r12, r12, lr << 2
-+      add     r11, r11, lr << 2
-+
-+
-+/*    t49  = -(t67 * 2) + t32;
-+       hi[14][slot] = SHIFT(t32);
-+      t87  = -(t110 * 2) + t67;
-+      t138 = -(t173 * 2) + t110;
-+      t203 = -(t208 * 2) + t173; */
-+
-+      lddsp   r0/*t67*/, sp[0]
-+      lddsp   r1/*t32*/, sp[2*4]
-+      lddsp   r2/*t110*/, sp[4*4]
-+      lddsp   r3/*t173*/, sp[12*4]
-+      lddsp   r5/*t208*/, sp[28*4]
-+
-+      sub     r4/*t49*/, r1, r0 << 1
-+      scale   r1
-+      sub     r0/*t87*/, r0, r2 << 1
-+      st.w    r11[14*SLOTS*4], r1
-+      sub     r2/*t138*/, r2, r3 << 1
-+      sub     r1/*t203*/, r3, r5 << 1
-+
-+/*      Live: r0 = t87, r1= t203, r2= t138, r4 = t49
-+      Free:   r3, r5, r6, r7, r8, r9, r10, lr  */
-+
-+/*    t68  = (t98 * 2) + t49;
-+      hi[12][slot] = SHIFT(-t49);
-+      t130 = -(t163 * 2) + t98;
-+      t201 = -(t188 * 2) + t163;
-+      t200 = -(t186 * 2) + t154;
-+      t111 = (t154 * 2) + t87;
-+      t77  = -(-(t87 * 2) - t68);
-+      t88  = (t146 * 2) + t77;
-+      t199 = -(t184 * 2) + t146;
-+      hi[ 8][slot] = SHIFT(-t77);
-+      hi[10][slot] = SHIFT(t68);*/
-+      lddsp   r3/*t98*/, sp[6*4]
-+      lddsp   r5/*t163*/, sp[14*4]
-+      lddsp   r6/*t188*/, sp[30*4]
-+      lddsp   r10/*t186*/, sp[24*4]
-+
-+      add     r7/*t68*/, r4, r3 << 1
-+      neg     r4
-+      scale   r4
-+      lddsp   r9/*t154*/, sp[8*4]
-+      sub     r3/*t130*/, r3, r5 << 1
-+      st.w    r11[12*SLOTS*4], r4
-+      sub     r8/*t201*/, r5, r6 << 1
-+      sub     r4/*t200*/, r9, r10 << 1
-+      lddsp   lr/*t146*/, sp[10*4]
-+      lddsp   r6/*t184*/, sp[26*4]
-+      add     r10/*t111*/, r0, r9 << 1
-+      add     r5/*t77*/,r7, r0 << 1
-+      add     r0/*t88*/, r5, lr << 1
-+      sub     r6/*t199*/, lr, r6 << 1
-+      neg     r5
-+      scale   r5
-+      scale   r7
-+      st.w    r11[8*SLOTS*4], r5
-+      st.w    r11[10*SLOTS*4], r7
-+
-+/*      Live: r0 = t88, r1= t203, r2= t138, r3 = t130, r4 = t200,
-+              r6 = 199, r8 = t201, r10 = t111
-+      Free:   r5, r7, r9, lr    */
-+
-+
-+/*
-+      t123 = -(-(t138 * 2) - t111);
-+      t174 = (t183 * 2) + t138;
-+      t99  = -(t111 * 2) + t88;
-+      hi[ 6][slot] = SHIFT(t88); */
-+      lddsp   r5/*t183*/, sp[20*4]
-+
-+      add     r7/*t123*/, r10, r2 << 1
-+      sub     r10/*t99*/, r0, r10 << 1
-+      scale   r0
-+      add     r2/*t174*/, r2, r5 << 1
-+      st.w    r11[6*SLOTS*4], r0
-+
-+/*      Live: r1 = t203, r2 = t174, r3 = t130, r4 = t200,
-+              r6 = t199, r7 = t123, r8 = t201, r10 = t99
-+      Free:   r0, r5, r9, lr    */
-+
-+/*    t112 = -(t130 * 2) + t99;
-+      t164 = (t181 * 2) + t130;
-+      hi[ 4][slot] = SHIFT(-t99); */
-+      lddsp   r0/*t181*/, sp[22*4]
-+
-+      sub     r5/*t112*/, r10, r3 << 1
-+      neg     r10
-+      scale   r10
-+      add     r3/*164*/, r3, r0 << 1
-+      st.w    r11[4*SLOTS*4], r10
-+
-+/*      Live: r1 = t203, r2 = t174, r3 = t164, r4 = t200,
-+              r5 = t112, r6 = t199, r7 = t123, r8 = t201
-+      Free:   r0, r9, r10, lr    */
-+
-+
-+/*    t117 = -(-(t123 * 2) - t112);
-+      t139 = (t179 * 2) + t123;
-+      hi[ 2][slot] = SHIFT(t112); */
-+      lddsp   r0/*t179*/, sp[16*4]
-+
-+      add     r9/*t117*/, r5, r7 << 1
-+      scale   r5
-+      add     r7/*t139*/, r7, r0 << 1
-+      st.w    r11[2*SLOTS*4], r5
-+
-+/*      Live: r1 = t203, r2 = t174, r3 = t164, r4 = t200,
-+              r6 = t199, r7 = t139, r8 = t201, r9 = t117
-+      Free:   r0, r5, r10, lr    */
-+
-+/*    t155 = -(t174 * 2) + t139;
-+      t204 = -(-(t203 * 2) - t174);
-+      t124 = (t177 * 2) + t117;
-+      hi[ 0][slot] = SHIFT(-t117);
-+      t131 = -(t139 * 2) + t124;
-+      lo[ 1][slot] = SHIFT(t124);*/
-+      lddsp   r0/*t177*/, sp[18*4]
-+
-+      sub     r5/*t155*/, r7, r2 << 1
-+      add     r2/*t204*/, r2, r1 << 1
-+      add     r0/*t124*/, r9, r0 << 1
-+      neg     r9
-+      scale   r9
-+      sub     r7/*t131*/, r0, r7 << 1
-+      scale   r0
-+      st.w    r11[0*SLOTS*4], r9
-+      st.w    r12[1*SLOTS*4], r0
-+
-+/*      Live: r2 = t204, r3 = t164, r4 = t200,
-+              r5 = t155, r6 = t199, r7 = t131, r8 = t201
-+      Free:   r0, r1, r9, r10, lr    */
-+
-+/*    t140 = (t164 * 2) + t131;
-+      lo[ 3][slot] = SHIFT(-t131);
-+      t202 = -(-(t201 * 2) - t164);  */
-+      add     r0/*t140*/, r7, r3 << 1
-+      neg     r7
-+      scale   r7
-+      add     r3/*t202*/, r3, r8 << 1
-+      st.w    r12[3*SLOTS*4], r7
-+
-+/*      Live: r0 = t140, r2 = t204, r3 = t202, r4 = t200,
-+              r5 = t155, r6 = t199
-+      Free:   r1, r7, r8, r9, r10, lr    */
-+
-+
-+/*    t147 = -(-(t155 * 2) - t140);
-+      lo[ 5][slot] = SHIFT(t140);
-+      t175 = -(t200 * 2) + t155;
-+      t156 = -(t199 * 2) + t147;
-+      lo[ 7][slot] = SHIFT(-t147); */
-+      add     r1/*t147*/, r0, r5 << 1
-+      scale   r0
-+      sub     r5/*t175*/, r5, r4 << 1
-+      sub     r4/*156*/, r1, r6 << 1
-+      neg     r1
-+      scale   r1
-+      st.w    r12[5*SLOTS*4], r0
-+      st.w    r12[7*SLOTS*4], r1
-+
-+/*      Live: r2 = t204, r3 = t202,
-+              r4 = t156, r5 = t175
-+      Free:   r0, r1, r6, r7, r8, r9, r10, lr    */
-+
-+
-+/*    t205 = -(-(t204 * 2) - t175);
-+      t165 = -(t175 * 2) + t156;
-+      lo[ 9][slot] = SHIFT(t156);
-+      t176 = -(t202 * 2) + t165;
-+      lo[11][slot] = SHIFT(-t165);
-+      t206 = -(-(t205 * 2) - t176);
-+      lo[15][slot] = SHIFT(-t206)
-+      lo[13][slot] = SHIFT(t176) */
-+      add     r0/*t205*/, r5, r2 << 1
-+      sub     r1/*t165*/, r4, r5 << 1
-+      scale   r4
-+      sub     r3/*t176*/, r1, r3 << 1
-+      st.w    r12[9*SLOTS*4], r4
-+      neg     r1
-+      scale   r1
-+      add     r6/*t206*/, r3, r0 << 1
-+      neg     r6
-+      scale   r6
-+      scale   r3
-+      st.w    r12[11*SLOTS*4], r1
-+      st.w    r12[15*SLOTS*4], r6
-+      st.w    r12[13*SLOTS*4], r3
-+
-+/*    t193 = -((t190 * 2) - t143)
-+      hi[ 7][slot] = SHIFT(t143);
-+      lo[ 8][slot] = SHIFT(-t193);
-+      t82  = -(t104 * 2) + t58;
-+      hi[13][slot] = SHIFT(t58);
-+      t134 = -(t168 * 2) + t104;
-+      t196 = -(t189 * 2) + t168; */
-+
-+      lddsp   r0/*t190*/, sp[27*4]
-+      lddsp   r1/*t143*/, sp[11*4]
-+      lddsp   r2/*t104*/, sp[5*4]
-+      lddsp   r3/*t58*/, sp[1*4]
-+      lddsp   r4/*t168*/, sp[13*4]
-+      lddsp   r5/*t189*/, sp[29*4]
-+      sub     r0/*t193*/, r1, r0 << 1
-+      neg     r0
-+      scale   r1
-+      scale   r0
-+      st.w    r11[7*SLOTS*4], r1
-+      st.w    r12[8*SLOTS*4], r0
-+      sub     r0/*t82*/, r3, r2 << 1
-+      scale   r3
-+      sub     r2/*t134*/, r2, r4 << 1
-+      sub     r4/*t196*/, r4, r5 << 1
-+      st.w    r11[13*SLOTS*4], r3
-+
-+/*      Live: r0 = t82, r2 = t134,
-+              r4 = t196
-+      Free:   r1, r3, r5, r6, r7, r8, r9, r10, lr    */
-+
-+
-+
-+/*
-+
-+      t207 = -(t185 * 2) + t150;
-+      t105 = (t150 * 2) + t82;
-+      hi[ 9][slot] = SHIFT(-t82);
-+      t120 = -(-(t134 * 2) - t105);
-+      hi[ 5][slot] = SHIFT(t105);
-+      t169 = (t182 * 2) + t134;
-+
-+      t135 = (t178 * 2) + t120;
-+      hi[ 1][slot] = SHIFT(-t120);
-+      t197 = -(-(t196 * 2) - t169);
-+      t151 = -(t169 * 2) + t135;
-+      lo[ 2][slot] = SHIFT(t135); */
-+      lddsp   r1/*t185*/, sp[25*4]
-+      lddsp   r3/*t150*/, sp[9*4]
-+      lddsp   r5/*t182*/, sp[21*4]
-+      lddsp   r8/*t178*/, sp[17*4]
-+
-+      sub     r6/*t207*/, r3, r1 << 1
-+      add     r3/*t105*/, r0, r3 << 1
-+      neg     r0
-+      scale   r0
-+      add     r7/*t120*/, r3, r2 << 1
-+      scale   r3
-+      st.w    r11[9*SLOTS*4], r0
-+      st.w    r11[5*SLOTS*4], r3
-+      add     r2/*t169*/, r2, r5 << 1
-+      add     r8/*t135*/, r7, r8 << 1
-+      neg     r7
-+      scale   r7
-+      add     r4/*t197*/, r2, r4 << 1
-+      sub     r2/*t151*/, r8, r2 << 1
-+      scale   r8
-+      st.w    r11[1*SLOTS*4], r7
-+      st.w    r12[2*SLOTS*4], r8
-+
-+/*      Live: r2 = t151, r4 = t197, r6 = t207
-+
-+      Free:   r0, r1, r3, r5, r7, r8, r9, r10, lr    */
-+
-+
-+
-+/*    t170 = -(t207 * 2) + t151;
-+      lo[ 6][slot] = SHIFT(-t151);
-+
-+      t198 = -(-(t197 * 2) - t170);
-+      lo[10][slot] = SHIFT(t170);
-+      lo[14][slot] = SHIFT(-t198);
-+
-+      t127 = -(t159 * 2) + t93;
-+      hi[11][slot] = SHIFT(t93);
-+      t194 = -(t187 * 2) + t159;   */
-+      lddsp   r0/*t159*/, sp[15*4]
-+      lddsp   r1/*t93*/, sp[7*4]
-+      lddsp   r3/*t187*/, sp[31*4]
-+      sub     r5/*t170*/, r2, r6 << 1
-+      neg     r2
-+      scale   r2
-+      add     r4/*t198*/,r5, r4 << 1
-+      neg     r4
-+      scale   r5
-+      scale   r4
-+      st.w    r12[6*SLOTS*4], r2
-+      st.w    r12[10*SLOTS*4], r5
-+      st.w    r12[14*SLOTS*4], r4
-+      sub     r7/*t127*/, r1, r0 << 1
-+      scale   r1
-+      sub     r0/*t194*/, r0, r3 << 1
-+      st.w    r11[11*SLOTS*4], r1
-+
-+
-+/*      Live: r0 = t194, r7 = t127
-+      Free:   r1, r2, r3, r4, r6, r5, r8, r9, r10, lr    */
-+
-+/*    t160 = (t180 * 2) + t127;
-+      hi[ 3][slot] = SHIFT(-t127);
-+      t195 = -(-(t194 * 2) - t160);
-+      lo[ 4][slot] = SHIFT(t160);
-+      lo[12][slot] = SHIFT(-t195);
-+
-+      hi[15][slot] = SHIFT(t191);
-+      lo[ 0][slot] = SHIFT(t192); */
-+      lddsp   r1/*t180*/, sp[23*4]
-+      lddsp   r2/*t191*/, sp[3*4]
-+      lddsp   r3/*t192*/, sp[19*4]
-+      add     r4/*t160*/, r7, r1 << 1
-+      neg     r7
-+      scale   r7
-+      add     r6/*t195*/, r4, r0 << 1
-+      scale   r4
-+      neg     r6
-+      scale   r6
-+      st.w    r11[3*SLOTS*4], r7
-+      st.w    r12[4*SLOTS*4], r4
-+      st.w    r12[12*SLOTS*4], r6
-+      scale   r2
-+      scale   r3
-+      st.w    r11[15*SLOTS*4], r2
-+      st.w    r12[0*SLOTS*4], r3
-+
-+      sub     sp, -32*4
-+      ldm     sp++,r0-r7, r9-r11, pc
-diff --git a/fixed.h b/fixed.h
-index 4b58abf..0a1350a 100644
---- a/fixed.h
-+++ b/fixed.h
-@@ -237,6 +237,46 @@ mad_fixed_t mad_f_mul_inline(mad_fixed_t x, mad_fixed_t y)
- #   define MAD_F_SCALEBITS  MAD_F_FRACBITS
- #  endif
-+/* --- AVR32 ----------------------------------------------------------------- */
-+
-+# elif defined(FPM_AVR32)
-+
-+typedef   signed short mad_coeff_t;
-+
-+struct DWstruct {int high, low;};
-+
-+typedef union {
-+  struct DWstruct s;
-+  long long ll;
-+} DWunion;
-+
-+#  define MAD_F_MLX(hi, lo, x, y)  \
-+  { register DWunion __res; \
-+    __res.ll = (long long)x * (long long)y; \
-+    /*    asm ("muls.d\t%0, %1, %2" : "=r" (__res.ll) : "r" (x), "r" (y));*/ \
-+    hi = __res.s.high; \
-+    lo = __res.s.low; }
-+
-+#  define MAD_F_MLA(hi, lo, x, y)  \
-+  { register DWunion __res; \
-+    __res.s.high = hi; \
-+    __res.s.low = lo; \
-+    __res.ll += (long long)x * (long long)y; \
-+/*  asm ("macs.d\t%0, %1, %2" : "+r" (__res.ll) : "r" (x), "r" (y));*/ \
-+    hi = __res.s.high; \
-+    lo = __res.s.low; }
-+
-+
-+#  define MAD_F_MLN(hi, lo)  \
-+    asm ("neg %0\n"  \
-+       "acr   %1\n"  \
-+         "neg   %1"    \
-+       : "+r" (lo), "+r" (hi) \
-+       :: "cc")
-+
-+
-+#  define MAD_F_SCALEBITS  MAD_F_FRACBITS
-+
- /* --- ARM ----------------------------------------------------------------- */
- # elif defined(FPM_ARM)
-@@ -433,6 +473,8 @@ mad_fixed_t mad_f_mul_inline(mad_fixed_t x, mad_fixed_t y)
-  *
-  * Pre-rounding is required to stay within the limits of compliance.
-  */
-+typedef   signed int mad_coeff_t;
-+
- #  if defined(OPT_SPEED)
- #   define mad_f_mul(x, y)    (((x) >> 12) * ((y) >> 16))
- #  else
-diff --git a/imdct_avr32.S b/imdct_avr32.S
-new file mode 100644
-index 0000000..d0ee6b4
---- /dev/null
-+++ b/imdct_avr32.S
-@@ -0,0 +1,789 @@
-+/*
-+   Optimized 36-point Inverse Modified Cosine Transform (IMDCT)
-+   Copyright 2003-2006 Atmel Corporation.
-+
-+   Written by Ronny Pedersen, Atmel Norway
-+
-+   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. */
-+
-+#define MAD_F(x) ((x + (1 << 13)) >> 14)
-+
-+      .public imdct36_avr32
-+
-+/*
-+      void imdct36(mad_fixed_t const x[18], mad_fixed_t y[36])
-+      {
-+      mad_fixed_t tmp[18];
-+      int i;
-+*/
-+/* DCT-IV */
-+imdct36_avr32:
-+      pushm   r0-r7,r11,lr
-+      sub     sp, 4*18
-+/*
-+      {
-+      mad_fixed_t tmp2[18];
-+      int i;
-+
-+      /* scale[i] = 2 * cos(PI * (2 * i + 1) / (4 * 18)) */
-+/*
-+      static mad_fixed_t const scale[18] = {
-+      MAD_F(0x1ff833fa), MAD_F(0x1fb9ea93), MAD_F(0x1f3dd120),
-+      MAD_F(0x1e84d969), MAD_F(0x1d906bcf), MAD_F(0x1c62648b),
-+      MAD_F(0x1afd100f), MAD_F(0x1963268b), MAD_F(0x1797c6a4),
-+      MAD_F(0x159e6f5b), MAD_F(0x137af940), MAD_F(0x11318ef3),
-+      MAD_F(0x0ec6a507), MAD_F(0x0c3ef153), MAD_F(0x099f61c5),
-+      MAD_F(0x06ed12c5), MAD_F(0x042d4544), MAD_F(0x0165547c)
-+      };
-+*/
-+
-+  /* scaling */
-+
-+/*
-+      for (i = 0; i < 18; i += 3) {
-+              tmp2[i + 0] = mad_f_mul(x[i + 0], scale[i + 0]);
-+              tmp2[i + 1] = mad_f_mul(x[i + 1], scale[i + 1]);
-+              tmp2[i + 2] = mad_f_mul(x[i + 2], scale[i + 2]);
-+        }
-+*/
-+      /* even input butterfly */
-+
-+/*
-+      for (i = 0; i < 9; i += 3) {
-+              tmp3[i + 0] = tmp2[i + 0] + tmp2[18 - (i + 0) - 1];
-+              tmp3[i + 1] = tmp2[i + 1] + tmp2[18 - (i + 1) - 1];
-+              tmp3[i + 2] = tmp2[i + 2] + tmp2[18 - (i + 2) - 1];
-+        }
-+      for (i = 0; i < 9; i += 3) {
-+              tmp4[i + 0] = tmp2[i + 0] - tmp2[18 - (i + 0) - 1];
-+              tmp4[i + 1] = tmp2[i + 1] - tmp2[18 - (i + 1) - 1];
-+              tmp4[i + 2] = tmp2[i + 2] - tmp2[18 - (i + 2) - 1];
-+        }
-+*/
-+
-+      ld.d    r8, r12[0]                              /*r8 = x[1], r9 = x[0]*/
-+      ld.d    r0, pc[scale_dctIV - .]                 /*r0 = {scale[2], scale[3]}, r1 = { scale[0], scale[1] }*/
-+      ld.d    r2, r12[2*4]                            /*r2 = x[3], r3 = x[2]*/
-+      ld.d    r4, pc[scale_dctIV - . + 14*2]          /*r4 = {scale[16], scale[17]}, r5 = { scale[14], scale[15] }*/
-+      mulsatrndwh.w   r9/*tmp2[0]*/, r9, r1:t         /*tmp2[0] = mad_f_mul(x[0], scale[0]) */
-+      ld.d    r6, r12[16*4]                           /*r6 = x[17], r7 = x[16]*/
-+      mulsatrndwh.w   r8/*tmp2[1]*/, r8, r1:b         /*tmp2[1] = mad_f_mul(x[1], scale[1]) */
-+      mulsatrndwh.w   r3/*tmp2[2]*/, r3, r0:t         /*tmp2[2] = mad_f_mul(x[2], scale[2]) */
-+      mulsatrndwh.w   r2/*tmp2[3]*/, r2, r0:b         /*tmp2[3] = mad_f_mul(x[3], scale[3]) */
-+      ld.d    r0, r12[14*4]                           /*r0 = x[15], r1 = x[14]*/
-+      mulsatrndwh.w   r7/*tmp2[16]*/, r7, r4:t        /*tmp2[16] = mad_f_mul(x[16], scale[16]) */
-+      mulsatrndwh.w   r6/*tmp2[17]*/, r6, r4:b        /*tmp2[17] = mad_f_mul(x[17], scale[17]) */
-+      mulsatrndwh.w   r1/*tmp2[14]*/, r1, r5:t        /*tmp2[14] = mad_f_mul(x[14], scale[14]) */
-+      mulsatrndwh.w   r0/*tmp2[15]*/, r0, r5:b        /*tmp2[15] = mad_f_mul(x[15], scale[15]) */
-+
-+      ld.d    r4, r12[4*4]                            /*r4 = x[5], r5 = x[4]*/
-+
-+      sub             lr/*tmp4[0]*/, r9, r6
-+      add             r6/*tmp3[0]*/, r9, r6
-+      sub             r10/*tmp4[1]*/, r8, r7
-+      add             r7/*tmp3[1]*/, r8, r7
-+      sub             r9/*tmp4[2]*/, r3, r0
-+      add             r0/*tmp3[2]*/, r3, r0
-+      sub             r8/*tmp4[3]*/, r2, r1
-+      add             r1/*tmp3[3]*/, r2, r1
-+
-+      ld.d    r2, pc[scale_dctIV - . + 4*2]           /*r2 = {scale[6], scale[7]}, r3 = { scale[4], scale[5] }*/
-+
-+      stm             --sp, r8-r10, lr                /*sp[0] = tmp4[0],sp[1] = tmp4[1],
-+                                                        sp[2] = tmp4[2],sp[3] = tmp4[3] */
-+
-+      /* Registers used:      r0 = tmp3[2], r1 = tmp3[3], r6 = tmp3[0], r7 = tmp3[1], r12 = x
-+         Free registers:      r2-r5, r8-r11, lr
-+      */
-+      ld.d    r8, r12[6*4]                            /*r8 = x[7], r9 = x[6]*/
-+      ld.d    r10, pc[scale_dctIV - . + 10*2]         /*r10 = {scale[12], scale[13]}, r11 = { scale[10], scale[11] }*/
-+      mulsatrndwh.w   r5/*tmp2[4]*/, r5, r3:t         /*tmp2[4] = mad_f_mul(x[4], scale[4]) */
-+      mulsatrndwh.w   r4/*tmp2[5]*/, r4, r3:b         /*tmp2[5] = mad_f_mul(x[5], scale[5]) */
-+      mulsatrndwh.w   r9/*tmp2[6]*/, r9, r2:t         /*tmp2[6] = mad_f_mul(x[6], scale[6]) */
-+      mulsatrndwh.w   r8/*tmp2[7]*/, r8, r2:b         /*tmp2[7] = mad_f_mul(x[7], scale[7]) */
-+
-+      ld.d    r2, r12[12*4]                           /*r2 = x[13], r3 = x[12]*/
-+      ld.w    lr, r12[11*4]                           /*lr = x[11] */
-+      mulsatrndwh.w   r3/*tmp2[12]*/, r3, r10:t       /*tmp2[12] = mad_f_mul(x[12], scale[12]) */
-+      mulsatrndwh.w   r2/*tmp2[13]*/, r2, r10:b       /*tmp2[13] = mad_f_mul(x[13], scale[13]) */
-+      ld.w    r10, r12[10*4]                          /*r10 = x[10] */
-+      mulsatrndwh.w   lr/*tmp2[11]*/, lr, r11:b       /*tmp2[11] = mad_f_mul(x[11], scale[11]) */
-+      mulsatrndwh.w   r10/*tmp2[10]*/, r10, r11:t     /*tmp2[10] = mad_f_mul(x[10], scale[10]) */
-+
-+      sub     r11/*tmp4[4]*/, r5, r2
-+      add     r2/*tmp3[4]*/, r5, r2
-+      sub     r5/*tmp4[5]*/, r4, r3
-+      add     r3/*tmp3[5]*/, r4, r3
-+      sub     r4/*tmp4[6]*/, r9, lr
-+      add     lr/*tmp3[6]*/, r9, lr
-+      sub     r9/*tmp4[7]*/, r8, r10
-+      add     r10/*tmp3[7]*/, r8, r10
-+      lddpc   r8, scale_dctIV + 8*2                   /*r8 = {scale[8], scale[9]} */
-+
-+      stm     --sp, r4, r5, r9, r11                   /*sp[0] = tmp4[4],sp[1] = tmp4[7],
-+                                                        sp[2] = tmp4[5],sp[3] = tmp4[6] */
-+      ld.d    r4, r12[8*4]                            /*r4 = x[9], r5 = x[8]*/
-+      mulsatrndwh.w   r5/*tmp2[8]*/, r5, r8:t         /*tmp2[8] = mad_f_mul(x[8], scale[8]) */
-+      mulsatrndwh.w   r4/*tmp2[9]*/, r4, r8:b         /*tmp2[9] = mad_f_mul(x[9], scale[9]) */
-+      sub             r9/*tmp4[8]*/, r5, r4
-+      add             r5/*tmp3[8]*/, r5, r4
-+
-+      st.w    --sp, r9                                /* sp[0] = tmp4[8] */
-+
-+      /* Registers used:
-+
-+              r0=tmp3[2], r1=tmp3[3], r2=tmp3[4], r3=tmp3[5], r5=tmp3[8], r6 = tmp3[0],
-+              r7 = tmp3[1], r10=tmp3[7], lr=tmp3[6]
-+         Free registers:
-+              r4, r8, r9, r11, r12
-+      */
-+
-+
-+  /* SDCT-II */
-+/*
-+
-+      {
-+      mad_fixed_t tmp3[9];
-+      int i;
-+*/
-+      /* scale[i] = 2 * cos(PI * (2 * i + 1) / (2 * 18)) */
-+/*
-+      static mad_fixed_t const scale[9] = {
-+      MAD_F(0x1fe0d3b4), MAD_F(0x1ee8dd47), MAD_F(0x1d007930),
-+      MAD_F(0x1a367e59), MAD_F(0x16a09e66), MAD_F(0x125abcf8),
-+      MAD_F(0x0d8616bc), MAD_F(0x08483ee1), MAD_F(0x02c9fad7)
-+      };
-+*/
-+  /* divide the 18-point SDCT-II into two 9-point SDCT-IIs */
-+
-+
-+  /* fastdct */
-+
-+/*
-+      {
-+      mad_fixed_t a0,  a1,  a2,  a3,  a4,  a5,  a6,  a7,  a8,  a9,  a10, a11, a12;
-+      mad_fixed_t a13, a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24, a25;
-+      mad_fixed_t m0,  m1,  m2,  m3,  m4,  m5,  m6,  m7;
-+*/
-+//      enum {
-+//        c0 =  MAD_F(0x1f838b8d),  /* 2 * cos( 1 * PI / 18) */
-+//        c1 =  MAD_F(0x1bb67ae8),  /* 2 * cos( 3 * PI / 18) */
-+//        c2 =  MAD_F(0x18836fa3),  /* 2 * cos( 4 * PI / 18) */
-+//        c3 =  MAD_F(0x1491b752),  /* 2 * cos( 5 * PI / 18) */
-+//        c4 =  MAD_F(0x0af1d43a),  /* 2 * cos( 7 * PI / 18) */
-+//        c5 =  MAD_F(0x058e86a0),  /* 2 * cos( 8 * PI / 18) */
-+//        c6 = -MAD_F(0x1e11f642)   /* 2 * cos(16 * PI / 18) */
-+//      };
-+
-+/*
-+      a2 = tmp3[6] + tmp3[2];
-+      a6 = tmp3[8] + tmp3[0];
-+      a11 = a2  - a6;
-+      m5 = mad_f_mul(a11, -c6) ;
-+      a4 = tmp3[1] + tmp3[7];
-+
-+      a18 =     tmp3[4] + a4;
-+      a19 = -2 * tmp3[4] + a4;
-+
-+      a0 = tmp3[3] + tmp3[5];
-+
-+*/
-+      add     r11/*a4*/, r7, r10
-+      add     r12/*a18*/, r2, r11
-+      sub     r11/*a19*/, r11, r2<<1
-+
-+      add     r4/*a2*/, lr, r0
-+      add     r8/*a6*/, r5, r6
-+      sub     r9/*a11*/, r4, r8
-+
-+      st.d    --sp, r0        /* sp[0] = tmp3[3], sp1[1] = tmp3[2]*/
-+
-+      mov     r2, MAD_F(0x1e11f642)
-+      mulsatrndwh.w   r9/*m5*/, r9, r2:b
-+
-+      add     r2/*a0*/, r1, r3
-+
-+      /* Registers used:
-+
-+              r2=a0, r3=tmp3[5], r4=a2, r5=tmp3[8], r6 = tmp3[0],
-+              r7 = tmp3[1], r8=a6, r10=tmp3[7], r9=m5, r11=a19, r12=a18,lr=tmp3[6]
-+         Free registers:
-+              r0, r1
-+      */
-+
-+/*
-+      a8  = a0  + a2;
-+      a12 = a8  + a6;
-+      a10 = a0  - a6;
-+      a9  = a0  - a2;
-+      m7 = mad_f_mul(a9,  -c2) ;
-+      m6 = mad_f_mul(a10, -c5) ;
-+*/
-+
-+      add     r0/*a8*/, r2, r4
-+      add     r0/*a12*/, r8
-+      rsub    r8/*a10*/, r2
-+      sub     r2/*a9*/, r4
-+      mov     r1, -MAD_F(0x18836fa3)
-+      mulsatrndwh.w   r2/*m7*/, r2, r1:b
-+      mov     r1, -MAD_F(0x058e86a0)
-+      mulsatrndwh.w   r8/*m6*/, r8, r1:b
-+
-+      /* Registers used:
-+
-+              r0=a12, r2=m7, r3=tmp3[5], r5=tmp3[8], r6 = tmp3[0],
-+              r7 = tmp3[1], r8=m6, r10=tmp3[7], r9=m5, r11=a19, r12=a18,lr=tmp3[6]
-+         Free registers:
-+              r1, r4
-+      */
-+
-+
-+/*
-+      a21 = -a19 - (m5 << 1);
-+      tmp[ 8] = a21 - (m6 << 1);
-+
-+      a20 = a19 - (m5 << 1);
-+      tmp[ 4] = (m7 << 1)  + a20;
-+      a22 = -a19 + (m6 << 1);
-+      tmp[16] = a22 + (m7 << 1);
-+      tmp[ 0] = a18 + a12;
-+      tmp[12] = a12 - 2 * a18;
-+*/
-+      add     r1/*a21*/, r11, r9 << 1
-+      neg     r1
-+      sub     r1/*tmp[8]*/, r1, r8 << 1
-+      stdsp   sp[4*11/*tmp3[..] on the stack*/ + 8*4], r1
-+      sub     r4/*a20*/, r11, r9 << 1
-+      add     r4/*tmp[4]*/, r4, r2 << 1
-+      stdsp   sp[4*11/*tmp3[..] on the stack*/ + 4*4], r4
-+      neg     r11
-+      add     r1/*a22*/, r11, r8 << 1
-+      add     r1/*tmp[16]*/, r1, r2 << 1
-+      stdsp   sp[4*11/*tmp3[..] on the stack*/ + 16*4], r1
-+      add     r4, r12, r0
-+      sub     r1, r0, r12 << 1
-+      stdsp   sp[4*11/*tmp3[..] on the stack*/ + 0*4], r4
-+      stdsp   sp[4*11/*tmp3[..] on the stack*/ + 12*4], r1
-+
-+      ld.d    r0, sp++
-+
-+      /* Registers used:
-+
-+              r0 = tmp3[2], r1 = tmp3[3], r3=tmp3[5], r5=tmp3[8], r6 = tmp3[0],
-+              r7 = tmp3[1], r10=tmp3[7], r11=a19, lr=tmp3[6]
-+         Free registers:
-+              r2,r4,r8,r9,r12
-+      */
-+
-+/*
-+      a5 = tmp3[1] - tmp3[7];
-+      a7 = tmp3[8] - tmp3[0];
-+      a3 = tmp3[6] - tmp3[2];
-+      a1 = tmp3[3] - tmp3[5];
-+      a13 = a1  - a3;
-+      a14 = a13 + a7;
-+      m3 = mad_f_mul(a14, -c1) ;
-+      m4 = mad_f_mul(a5,  -c1) ;
-+      tmp[ 6] = m3 << 1;
-+*/
-+      sub     r7/*a5*/, r10
-+      sub     r2/*a7*/, r5, r6
-+      sub     r4/*a3*/, lr, r0
-+      sub     r8/*a1*/, r1, r3
-+      sub     r9/*a13*/, r8, r4
-+      add     r12/*a14*/, r9, r2
-+      mov     r0, -MAD_F(0x1bb67ae8)
-+      mulsatrndwh.w   r12/*m3*/, r12, r0:b
-+      mulsatrndwh.w   r7/*m4*/, r7, r0:b
-+      lsl     r12, 1
-+      stdsp   sp[4*9/*tmp3[..] on the stack*/ + 6*4], r12
-+
-+      /* Registers used:
-+              r2 = a7, r4 = a3, r7 = m4, r8 = a1, r12 = m3
-+
-+         Free registers:
-+              r0, r1, r3, r5, r6, r10, r9, r11, lr
-+      */
-+
-+
-+/*
-+      a15 = a3  + a7;
-+      m2 = mad_f_mul(a15, -c4) ;
-+      a17 = a1  + a3;
-+      m0 = mad_f_mul(a17, -c3) ;
-+      a23 = (m4 << 1)  + (m2 << 1);
-+      tmp[14] = a23 + (m0 << 1); */
-+      add     r0/*a15*/, r4, r2
-+      mov     r1, -MAD_F(0x0af1d43a)
-+      mulsatrndwh.w   r0/*m2*/, r0, r1:b
-+      mov     r3, -MAD_F(0x1491b752)
-+      add     r5/*a17*/, r8, r4
-+      mulsatrndwh.w   r5/*m0*/, r5, r3:b
-+      lsl     r7, 1
-+      add     r6/*a23*/, r7, r0 << 1
-+      add     r6/*tmp[14]*/, r6, r5 << 1
-+      stdsp   sp[4*9/*tmp3[..] on the stack*/ + 14*4], r6
-+
-+      /* Registers used:
-+              r0 = m2, r2 = a7, r5 = m0, r7 = m4, r8 = a1
-+
-+         Free registers:
-+              r1, r3, r4, r6, r10, r9, r11, lr
-+      */
-+
-+/*
-+      a16 = a1  - a7;
-+      m1 = mad_f_mul(a16, -c0) ;
-+      a24 = (m4 << 1)  - (m2 << 1);
-+      tmp[10] = a24 - (m1 << 1);
-+
-+      a25 = (m4 << 1)  + (m1 << 1);
-+      tmp[ 2] = (m0 << 1)  - a25;
-+*/
-+      sub     r3/*a16*/, r8, r2
-+      mov     r4,  -MAD_F(0x1f838b8d)
-+      mulsatrndwh.w   r3/*m1*/, r3, r4:b
-+      sub     r1/*a24*/, r7, r0 << 1
-+      sub     r1/*tmp[10]*/, r1, r3 << 1
-+      stdsp   sp[4*9/*tmp3[..] on the stack*/ + 10*4], r1
-+      add     r7/*a25*/, r7, r3 << 1
-+      sub     r7, r7, r5 << 1
-+      neg     r7
-+      stdsp   sp[4*9/*tmp3[..] on the stack*/ + 2*4], r7
-+
-+
-+
-+
-+  /* output to every other slot for convenience */
-+
-+  /*} */
-+  /* End fastdct */
-+
-+  /* odd input butterfly and scaling */
-+
-+
-+      /*  On the stack:
-+              sp[0] = tmp4[8], sp[1] = tmp4[4],sp[2] = tmp4[7], sp[3] = tmp4[5],sp[4] = tmp4[6]
-+              sp[5] = tmp4[0], sp[6] = tmp4[1],sp[7] = tmp4[2],sp[8] = tmp4[3]
-+      */
-+
-+  /*
-+        tmp3[0] = mad_f_mul(tmp4[0], scale[0]);
-+        tmp3[1] = mad_f_mul(tmp4[1], scale[1]) << 1;
-+        tmp3[2] = mad_f_mul(tmp4[2], scale[2]);
-+        tmp3[3] = mad_f_mul(tmp4[3], scale[3]) << 1;
-+        tmp3[4] = mad_f_mul(tmp4[4], scale[4]);
-+        tmp3[5] = mad_f_mul(tmp4[5], scale[5]);
-+        tmp3[6] = mad_f_mul(tmp4[6], scale[6]) << 1;
-+        tmp3[7] = mad_f_mul(tmp4[7], scale[7]);
-+        tmp3[8] = mad_f_mul(tmp4[8], scale[8]) << 1;
-+  */
-+      /* Registers used:
-+              r1 = tmp4[3], r2 = tmp4[2], r3 = tmp4[1], r4 = tmp4[0], r7 = tmp4[6]
-+              r10 = tmp4[5], r11 = tmp4[7], r12 = tmp4[4], lr = tmp4[8]
-+
-+         Free registers:
-+              r0, r5, r6, r8, r9
-+      */
-+      ld.d    r8, pc[ scale_sdctII - . + 4*2] /* r8 = { scale[6], scale[7] }, r9 = { scale[4], scale[5]} */
-+      ldm     sp++, r1, r2, r3, r4, r7, r10, r11, r12, lr
-+      mov     r5, MAD_F(0x02c9fad7)           /* r3 = scale[8] */
-+      mulsatrndwh.w   r5/*tmp3[8]*/, lr, r5:b
-+      mulsatrndwh.w   lr/*tmp3[6]*/, r7, r8:t
-+      ld.d    r6, pc[ scale_sdctII - . + 0*2] /* r6 = { scale[2], scale[3] }, r7 = { scale[0], scale[1]} */
-+      lsl     lr, 1
-+      lsl     r5, 1
-+      mulsatrndwh.w   r0/*tmp3[2]*/, r2, r6:t
-+      mulsatrndwh.w   r1/*tmp3[3]*/, r1, r6:b
-+      mulsatrndwh.w   r6/*tmp3[0]*/, r4, r7:t
-+      mulsatrndwh.w   r7/*tmp3[1]*/, r3, r7:b
-+      mulsatrndwh.w   r3/*tmp3[5]*/, r10, r9:b
-+      mulsatrndwh.w   r2/*tmp3[4]*/, r12, r9:t
-+      mulsatrndwh.w   r9/*tmp3[7]*/, r11, r8:b
-+      lsl     r1, 1
-+      lsl     r7, 1
-+
-+
-+  /* fastdct */
-+
-+/*
-+      {
-+      mad_fixed_t a0,  a1,  a2,  a3,  a4,  a5,  a6,  a7,  a8,  a9,  a10, a11, a12;
-+      mad_fixed_t a13, a14, a15, a16, a17, a18, a19, a20, a21, a22, a23, a24, a25;
-+      mad_fixed_t m0,  m1,  m2,  m3,  m4,  m5,  m6,  m7;
-+*/
-+//      enum {
-+//        c0 =  MAD_F(0x1f838b8d),  /* 2 * cos( 1 * PI / 18) */
-+//        c1 =  MAD_F(0x1bb67ae8),  /* 2 * cos( 3 * PI / 18) */
-+//        c2 =  MAD_F(0x18836fa3),  /* 2 * cos( 4 * PI / 18) */
-+//        c3 =  MAD_F(0x1491b752),  /* 2 * cos( 5 * PI / 18) */
-+//        c4 =  MAD_F(0x0af1d43a),  /* 2 * cos( 7 * PI / 18) */
-+//        c5 =  MAD_F(0x058e86a0),  /* 2 * cos( 8 * PI / 18) */
-+//        c6 = -MAD_F(0x1e11f642)   /* 2 * cos(16 * PI / 18) */
-+//      };
-+
-+      /* Registers used:
-+
-+              r0=tmp3[2], r1=tmp3[3], r2=tmp3[4], r3=tmp3[5], r5=tmp3[8], r6 = tmp3[0],
-+              r7 = tmp3[1], r9=tmp3[7], lr=tmp3[6]
-+         Free registers:
-+              r4, r8, r10, r11, r12
-+      */
-+
-+/*
-+      a2 = tmp3[6] + (tmp3[2] << 1);
-+      a6 = tmp3[8] + (tmp3[0] << 1);
-+      a11 = a2 - a6;
-+      m5 = mad_f_mul(a11, c6) ;
-+      a4 = tmp3[1] + (tmp3[7] << 1);
-+
-+      a18 =     (tmp3[4] << 1) + a4;
-+      a19 = -2 * (tmp3[4] << 1) + a4;
-+
-+      a0 = tmp3[3] + (tmp3[5] << 1);
-+
-+*/
-+      add     r11/*a4*/, r7, r9 << 1
-+      add     r12/*a18*/, r11, r2 << 1
-+      sub     r11/*a19*/, r11, r2 << 2
-+
-+      add     r4/*a2*/, lr, r0 << 1
-+      add     r8/*a6*/, r5, r6 << 1
-+      sub     r10/*a11*/, r4, r8
-+
-+      st.d    --sp, r0        /* sp[0] = tmp3[3], sp1[1] = tmp3[2]*/
-+
-+      mov     r2, -MAD_F(0x1e11f642)
-+      mulsatrndwh.w   r10/*m5*/, r10, r2:b
-+
-+      add     r2/*a0*/, r1, r3 << 1
-+
-+      /* Registers used:
-+
-+              r2=a0, r3=tmp3[5], r4=a2, r5=tmp3[8], r6 = tmp3[0],
-+              r7 = tmp3[1], r8=a6, r9=tmp3[7], r10=m5, r11=a19, r12=a18,lr=tmp3[6]
-+         Free registers:
-+              r0, r1
-+      */
-+
-+/*
-+      a8  = a0  + a2;
-+      a12 = a8  + a6;
-+      a10 = a0  - a6;
-+      a9  = a0  - a2;
-+      m7 = mad_f_mul(a9,  -c2) ;
-+      m6 = mad_f_mul(a10, -c5) ;
-+*/
-+
-+      add     r0/*a8*/, r2, r4
-+      add     r0/*a12*/, r8
-+      rsub    r8/*a10*/, r2
-+      sub     r2/*a9*/, r4
-+      mov     r1, -MAD_F(0x18836fa3)
-+      mulsatrndwh.w   r2/*m7*/, r2, r1:b
-+      mov     r1, -MAD_F(0x058e86a0)
-+      mulsatrndwh.w   r8/*m6*/, r8, r1:b
-+
-+      /* Registers used:
-+
-+              r0=a12, r2=m7, r3=tmp3[5], r5=tmp3[8], r6 = tmp3[0],
-+              r7 = tmp3[1], r8=m6, r9=tmp3[7], r10=m5, r11=a19, r12=a18,lr=tmp3[6]
-+         Free registers:
-+              r1, r4
-+      */
-+
-+
-+/*
-+      a21 = -a19 + (m5 << 1);
-+      tmp[ 9] = a21 - (m6 << 1);
-+
-+      a20 = -(-a19 - (m5 << 1));
-+      tmp[ 5] = (m7 << 1)  + a20;
-+      a22 = -a19 + (m6 << 1);
-+      tmp[17] = a22 + (m7 << 1);
-+      tmp[ 1] = a18 + a12;
-+      tmp[13] = a12 - 2 * a18;
-+*/
-+      sub     r1/*a21*/, r11, r10 << 1
-+      neg     r1
-+      sub     r1/*tmp[9]*/, r1, r8 << 1
-+      stdsp   sp[4*2/*tmp3[..] on the stack*/ + 9*4], r1
-+      add     r4/*a20*/, r11, r10 << 1
-+      add     r4/*tmp[5]*/, r4, r2 << 1
-+      stdsp   sp[4*2/*tmp3[..] on the stack*/ + 5*4], r4
-+      neg     r11
-+      add     r1/*a22*/, r11, r8 << 1
-+      add     r1/*tmp[17]*/, r1, r2 << 1
-+      stdsp   sp[4*2/*tmp3[..] on the stack*/ + 17*4], r1
-+      add     r4, r12, r0
-+      sub     r1, r0, r12 << 1
-+      stdsp   sp[4*2/*tmp3[..] on the stack*/ + 1*4], r4
-+      stdsp   sp[4*2/*tmp3[..] on the stack*/ + 13*4], r1
-+
-+      ld.d    r0, sp++
-+
-+      /* Registers used:
-+
-+              r0 = tmp3[2], r1 = tmp3[3], r3=tmp3[5], r5=tmp3[8], r6 = tmp3[0],
-+              r7 = tmp3[1], r9=tmp3[7], r11=a19, lr=tmp3[6]
-+         Free registers:
-+              r2,r4,r8,r10,r12
-+      */
-+
-+/*
-+      a5 = tmp3[1] - (tmp3[7] << 1);
-+      a7 = tmp3[8] - (tmp3[0] << 1);
-+      a3 = tmp3[6] - (tmp3[2] << 1);
-+      a1 = tmp3[3] - (tmp3[5] << 1);
-+      a13 = a1  - a3;
-+      a14 = a13 + a7;
-+      m3 = mad_f_mul(a14, -c1) ;
-+      m4 = mad_f_mul(a5,  -c1) ;
-+      tmp[ 7] = m3 << 1;
-+*/
-+      sub     r7/*a5*/, r7, r9 << 1
-+      sub     r2/*a7*/, r5, r6 << 1
-+      sub     r4/*a3*/, lr, r0 << 1
-+      sub     r8/*a1*/, r1, r3 << 1
-+      sub     r10/*a13*/, r8, r4
-+      add     r12/*a14*/, r10, r2
-+      mov     r0, -MAD_F(0x1bb67ae8)
-+      mulsatrndwh.w   r12/*m3*/, r12, r0:b
-+      mulsatrndwh.w   r7/*m4*/, r7, r0:b
-+      lsl     r12, 1
-+      stdsp   sp[7*4], r12
-+
-+      /* Registers used:
-+              r2 = a7, r4 = a3, r7 = m4, r8 = a1, r12 = m3
-+
-+         Free registers:
-+              r0, r1, r3, r5, r6, r9, r10, r11, lr
-+      */
-+
-+
-+/*
-+      a15 = a3  + a7;
-+      m2 = mad_f_mul(a15, -c4) ;
-+      a17 = a1  + a3;
-+      m0 = mad_f_mul(a17, -c3) ;
-+      a23 = (m4 << 1)  + (m2 << 1);
-+      tmp[15] = a23 + (m0 << 1); */
-+      add     r0/*a15*/, r4, r2
-+      mov     r1, -MAD_F(0x0af1d43a)
-+      mulsatrndwh.w   r0/*m2*/, r0, r1:b
-+      mov     r3, -MAD_F(0x1491b752)
-+      add     r5/*a17*/, r8, r4
-+      mulsatrndwh.w   r5/*m0*/, r5, r3:b
-+      lsl     r7, 1
-+      add     r6/*a23*/, r7, r0 << 1
-+      add     r6/*tmp[15]*/, r6, r5 << 1
-+      stdsp   sp[15*4], r6
-+
-+      /* Registers used:
-+              r0 = m2, r2 = a7, r5 = m0, r7 = m4, r8 = a1
-+
-+         Free registers:
-+              r1, r3, r4, r6, r9, r10, r11, lr
-+      */
-+
-+/*
-+      a16 = a1  - a7;
-+      m1 = mad_f_mul(a16, -c0) ;
-+      a24 = (m4 << 1)  - (m2 << 1);
-+      tmp[11] = a24 - (m1 << 1);
-+
-+      a25 = (m4 << 1)  + (m1 << 1);
-+      tmp[ 3] = (m0 << 1)  - a25;
-+*/
-+      sub     r3/*a16*/, r8, r2
-+      mov     r4,  -MAD_F(0x1f838b8d)
-+      mulsatrndwh.w   r3/*m1*/, r3, r4:b
-+      sub     r1/*a24*/, r7, r0 << 1
-+      sub     r1/*tmp[11]*/, r1, r3 << 1
-+      stdsp   sp[11*4], r1
-+      add     r7/*a25*/, r7, r3 << 1
-+      sub     r7, r7, r5 << 1
-+      neg     r7
-+      lddsp   r12, sp[4*18+4] /* Get y from stack */
-+      stdsp   sp[3*4], r7
-+
-+
-+  /* output to every other slot for convenience */
-+
-+  /* End fastdct */
-+
-+  /* output accumulation */
-+
-+/*    for (i = 3; i < 18; i += 8) {
-+        tmp[i + 0] -= tmp[(i + 0) - 2];
-+        tmp[i + 2] -= tmp[(i + 2) - 2];
-+        tmp[i + 4] -= tmp[(i + 4) - 2];
-+        tmp[i + 6] -= tmp[(i + 6) - 2];
-+      }
-+      }
-+*/
-+
-+/* End  SDCT-II */
-+
-+
-+
-+  /* scale reduction and output accumulation */
-+
-+/*
-+      for (i = 1; i < 17; i += 4) {
-+        tmp[i + 0] = tmp[i + 0]  - tmp[(i + 0) - 1];
-+        tmp[i + 1] = tmp[i + 1]  - tmp[(i + 1) - 1];
-+        tmp[i + 2] = tmp[i + 2]  - tmp[(i + 2) - 1];
-+        tmp[i + 3] = tmp[i + 3]  - tmp[(i + 3) - 1];
-+      }
-+      tmp[17] = tmp[17] - tmp[16];
-+      }
-+*/
-+/* End  DCT-IV */
-+
-+
-+  /* convert 18-point DCT-IV to 36-point IMDCT */
-+
-+/*
-+      for (i =  0; i <  9; i += 3) {
-+        y[i + 0] =  tmp[9 + (i + 0)];
-+        y[i + 1] =  tmp[9 + (i + 1)];
-+        y[i + 2] =  tmp[9 + (i + 2)];
-+      }
-+      for (i =  9; i < 27; i += 3) {
-+        y[i + 0] = -tmp[36 - (9 + (i + 0)) - 1];
-+        y[i + 1] = -tmp[36 - (9 + (i + 1)) - 1];
-+        y[i + 2] = -tmp[36 - (9 + (i + 2)) - 1];
-+      }
-+      for (i = 27; i < 36; i += 3) {
-+        y[i + 0] = -tmp[(i + 0) - 27];
-+        y[i + 1] = -tmp[(i + 1) - 27];
-+        y[i + 2] = -tmp[(i + 2) - 27];
-+      }
-+      }
-+*/
-+
-+      /* Registers used:
-+              r0 = tmp[8], r1 = tmp[7], r2 = tmp[6], r3 = tmp[5], r4 = tmp[4]
-+              r5 = tmp[3], r6 = tmp[2], r7 = tmp[1], r8 = tmp[0], r12 = y
-+
-+         Free registers:
-+              r9, r10, r11, lr
-+      */
-+
-+      ldm     sp++, r0-r8     /* Get tmp[0]-tmp[8] from stack */
-+      sub     r5, r7          /* tmp[3] -= tmp[1]*/
-+      sub     r3, r5          /* tmp[5] -= tmp[3]*/
-+      sub     r1, r3          /* tmp[7] -= tmp[5]*/
-+
-+      sub     r7, r8          /* tmp[1] -= tmp[0]*/
-+      sub     r6, r7          /* tmp[2] -= tmp[1]*/
-+      sub     r5, r6          /* tmp[3] -= tmp[2]*/
-+      neg     r8
-+      st.w    r12[26*4], r8   /* y[26] = -tmp[0] */
-+      st.w    r12[27*4], r8   /* y[27] = -tmp[0] */
-+      neg     r7
-+      neg     r6
-+      st.w    r12[25*4], r7   /* y[25] = -tmp[1] */
-+      st.w    r12[24*4], r6   /* y[24] = -tmp[2] */
-+      st.d    r12[28*4], r6   /* y[28] = -tmp[1], y[29] = -tmp[2]*/
-+
-+      sub     r4, r5          /* tmp[4] -= tmp[3]*/
-+      sub     r3, r4          /* tmp[5] -= tmp[4]*/
-+      neg     r5
-+      neg     r4
-+      st.w    r12[23*4], r5   /* y[23] = -tmp[3] */
-+      st.w    r12[22*4], r4   /* y[22] = -tmp[4] */
-+      st.d    r12[30*4], r4   /* y[30] = -tmp[3], y[31] = -tmp[4]*/
-+
-+      ldm     sp++, r4-r11,lr /* Get tmp[9]-tmp[17] from stack */
-+
-+      sub     r2, r3          /* tmp[6] -= tmp[5]*/
-+
-+      sub     lr, r1          /* tmp[9] -= tmp[7]*/
-+      sub     r10, lr         /* tmp[11] -= tmp[9]*/
-+      sub     r8, r10         /* tmp[13] -= tmp[11]*/
-+      sub     r6, r8          /* tmp[15] -= tmp[13]*/
-+      sub     r4, r6          /* tmp[17] -= tmp[15]*/
-+
-+      sub     r1, r2          /* tmp[7] -= tmp[6]*/
-+      sub     r0, r1          /* tmp[8] -= tmp[7]*/
-+      neg     r3
-+      neg     r2
-+      st.w    r12[21*4], r3   /* y[21] = -tmp[5] */
-+      st.w    r12[20*4], r2   /* y[20] = -tmp[6] */
-+      st.d    r12[32*4], r2   /* y[32] = -tmp[5], y[33] = -tmp[6]*/
-+
-+      sub     lr, r0          /* tmp[9] -= tmp[8]*/
-+      sub     r11, lr         /* tmp[10] -= tmp[9]*/
-+      neg     r1
-+      neg     r0
-+      st.w    r12[19*4], r1   /* y[19] = -tmp[7] */
-+      st.w    r12[18*4], r0   /* y[18] = -tmp[8] */
-+      st.d    r12[34*4], r0   /* y[34] = -tmp[7], y[35] = -tmp[8]*/
-+
-+      sub     r10, r11        /* tmp[11] -= tmp[10]*/
-+      sub     r9, r10         /* tmp[12] -= tmp[11]*/
-+
-+      st.w    r12[0*4], lr    /* y[0] = tmp[9]*/
-+      neg     lr
-+      st.w    r12[17*4], lr   /* y[17] = -tmp[9]*/
-+      st.d    r12[1*4], r10   /* y[1] = tmp[10], y[2] = tmp[11] */
-+      neg     r11
-+      neg     r10
-+      st.w    r12[16*4], r11  /* y[16] = -tmp[10] */
-+      st.w    r12[15*4], r10  /* y[15] = -tmp[11] */
-+
-+
-+      sub     r8, r9          /* tmp[13] -= tmp[12]*/
-+      sub     r7, r8          /* tmp[14] -= tmp[13]*/
-+      st.d    r12[3*4], r8    /* y[3] = tmp[12], y[4] = tmp[13] */
-+      neg     r9
-+      neg     r8
-+      st.w    r12[14*4], r9   /* y[14] = -tmp[12] */
-+      st.w    r12[13*4], r8   /* y[13] = -tmp[13] */
-+
-+      sub     r6, r7          /* tmp[15] -= tmp[14]*/
-+      sub     r5, r6          /* tmp[16] -= tmp[15]*/
-+      sub     r4, r5          /* tmp[17] -= tmp[16]*/
-+
-+      st.d    r12[5*4], r6    /* y[5] = tmp[14], y[6] = tmp[15] */
-+      neg     r7
-+      neg     r6
-+      st.w    r12[12*4], r7   /* y[12] = -tmp[14] */
-+      st.w    r12[11*4], r6   /* y[11] = -tmp[15] */
-+
-+      st.d    r12[7*4], r4    /* y[7] = tmp[16], y[8] = tmp[17] */
-+      neg     r5
-+      neg     r4
-+      st.w    r12[10*4], r5   /* y[10] = -tmp[16] */
-+      st.w    r12[9*4], r4    /* y[9] = -tmp[17] */
-+
-+      popm    r0-r7,r11,pc
-+
-+      .align  2
-+scale_dctIV:
-+      .short  MAD_F(0x1ff833fa), MAD_F(0x1fb9ea93), MAD_F(0x1f3dd120)
-+      .short  MAD_F(0x1e84d969), MAD_F(0x1d906bcf), MAD_F(0x1c62648b)
-+      .short  MAD_F(0x1afd100f), MAD_F(0x1963268b), MAD_F(0x1797c6a4)
-+      .short  MAD_F(0x159e6f5b), MAD_F(0x137af940), MAD_F(0x11318ef3)
-+      .short  MAD_F(0x0ec6a507), MAD_F(0x0c3ef153), MAD_F(0x099f61c5)
-+      .short  MAD_F(0x06ed12c5), MAD_F(0x042d4544), MAD_F(0x0165547c)
-+
-+      .align  2
-+scale_sdctII:
-+      .short  MAD_F(0x1fe0d3b4), MAD_F(0x1ee8dd47), MAD_F(0x1d007930)
-+      .short  MAD_F(0x1a367e59), MAD_F(0x16a09e66), MAD_F(0x125abcf8)
-+      .short  MAD_F(0x0d8616bc), MAD_F(0x08483ee1), MAD_F(0x02c9fad7)
-diff --git a/layer3.c b/layer3.c
-index 4e5d3fa..dffdab3 100644
---- a/layer3.c
-+++ b/layer3.c
-@@ -378,6 +378,11 @@ mad_fixed_t const ca[8] = {
-   -MAD_F(0x003a2847) /* -0.014198569 */, -MAD_F(0x000f27b4) /* -0.003699975 */
- };
-+#ifdef FPM_AVR32
-+# undef MAD_F
-+# define MAD_F(x) ((x + (1 << 12)) >> 13)
-+#endif
-+
- /*
-  * IMDCT coefficients for short blocks
-  * derived from section 2.4.3.4.10.2 of ISO/IEC 11172-3
-@@ -386,7 +391,7 @@ mad_fixed_t const ca[8] = {
-  * imdct_s[i /odd][k] = cos((PI / 24) * (2 * (6 + (i-1)/2) + 7) * (2 * k + 1))
-  */
- static
--mad_fixed_t const imdct_s[6][6] = {
-+mad_coeff_t const imdct_s[6][6] = {
- # include "imdct_s.dat"
- };
-@@ -398,7 +403,7 @@ mad_fixed_t const imdct_s[6][6] = {
-  * window_l[i] = sin((PI / 36) * (i + 1/2))
-  */
- static
--mad_fixed_t const window_l[36] = {
-+mad_coeff_t const window_l[36] = {
-   MAD_F(0x00b2aa3e) /* 0.043619387 */, MAD_F(0x0216a2a2) /* 0.130526192 */,
-   MAD_F(0x03768962) /* 0.216439614 */, MAD_F(0x04cfb0e2) /* 0.300705800 */,
-   MAD_F(0x061f78aa) /* 0.382683432 */, MAD_F(0x07635284) /* 0.461748613 */,
-@@ -429,7 +434,7 @@ mad_fixed_t const window_l[36] = {
-  * window_s[i] = sin((PI / 12) * (i + 1/2))
-  */
- static
--mad_fixed_t const window_s[12] = {
-+mad_coeff_t const window_s[12] = {
-   MAD_F(0x0216a2a2) /* 0.130526192 */, MAD_F(0x061f78aa) /* 0.382683432 */,
-   MAD_F(0x09bd7ca0) /* 0.608761429 */, MAD_F(0x0cb19346) /* 0.793353340 */,
-   MAD_F(0x0ec835e8) /* 0.923879533 */, MAD_F(0x0fdcf549) /* 0.991444861 */,
-@@ -438,6 +443,11 @@ mad_fixed_t const window_s[12] = {
-   MAD_F(0x061f78aa) /* 0.382683432 */, MAD_F(0x0216a2a2) /* 0.130526192 */,
- };
-+#ifdef FPM_AVR32
-+# undef MAD_F
-+# define MAD_F(x)             ((mad_fixed_t) (x##L))
-+#endif
-+
- /*
-  * coefficients for intensity stereo processing
-  * derived from section 2.4.3.4.9.3 of ISO/IEC 11172-3
-@@ -879,6 +889,42 @@ void III_exponents(struct channel const *channel,
-  * NAME:      III_requantize()
-  * DESCRIPTION:       requantize one (positive) value
-  */
-+
-+#if 0
-+/*static*/
-+mad_fixed_t III_requantize(unsigned int value, signed int exp)
-+{
-+  register mad_fixed_t tmp2, tmp3;
-+  long long tmp_d;
-+
-+  asm ("asr\t%0, %1, 2\n"
-+       "ld.w\t%2, %4[%5 << 2]\n"
-+       "sub\t%1, %1, %0 << 2\n"
-+       "asr\t%3, %2, 7\n"
-+       "andl\t%2, 0x7f, COH\n"
-+       "add\t%0, %2\n"
-+       "lsl\t%m0,%3,%0\n"
-+       "neg\t%0\n"
-+       "asr\t%3,%3,%0\n"
-+       "add\t%2, %6, %1 << 2\n"
-+       "ld.w\t%2, %2[12]\n"
-+       "cp.w\t%0, 0\n"
-+       "movlt\t%3, %m0\n"
-+       "muls.d\t%0, %3, %2\n"
-+       "cp.w\t%1, 0\n"
-+       "breq\t0f\n"
-+       "lsr\t%0, %0, 28\n"
-+       "or\t%3, %0, %m0 << 4\n"
-+       "0:\n"
-+       : "=&r"(tmp_d), "+r"(exp), "=&r"(tmp2), "=&r"(tmp3)
-+       : "r"(&rq_table), "r"(value), "r"(root_table));
-+
-+
-+  return tmp3;
-+}
-+
-+#else
-+
- static
- mad_fixed_t III_requantize(unsigned int value, signed int exp)
- {
-@@ -918,6 +964,7 @@ mad_fixed_t III_requantize(unsigned int value, signed int exp)
-   return frac ? mad_f_mul(requantized, root_table[3 + frac]) : requantized;
- }
-+#endif
- /* we must take care that sz >= bits and sz < sizeof(long) lest bits == 0 */
- # define MASK(cache, sz, bits)        \
-@@ -2054,27 +2101,42 @@ void imdct36(mad_fixed_t const X[18], mad_fixed_t x[36])
- }
- #  endif
-+
-+#ifdef FPM_AVR32
-+# undef  mad_f_mul
-+# define mad_f_mul(x, y) __builtin_mulsatrndwh_w(x, y)
-+#endif
-+
- /*
-  * NAME:      III_imdct_l()
-  * DESCRIPTION:       perform IMDCT and windowing for long blocks
-  */
- static
--void III_imdct_l(mad_fixed_t const X[18], mad_fixed_t z[36],
-+void III_imdct_l(mad_fixed_t /*const*/ X[18], mad_fixed_t z[36],
-                unsigned int block_type)
- {
-   unsigned int i;
-+  mad_fixed_t *z_ptr;
-+  mad_coeff_t *w_ptr;
-   /* IMDCT */
-+#ifdef FPM_AVR32
-+  imdct36_avr32(X, z);
-+#else
-   imdct36(X, z);
-+#endif
-   /* windowing */
-+  z_ptr = &z[0];
-+  w_ptr = &window_l[0];
-+
-   switch (block_type) {
-   case 0:  /* normal window */
- # if defined(ASO_INTERLEAVE1)
-     {
--      register mad_fixed_t tmp1, tmp2;
-+      register mad_coeff_t tmp1, tmp2;
-       tmp1 = window_l[0];
-       tmp2 = window_l[1];
-@@ -2091,15 +2153,16 @@ void III_imdct_l(mad_fixed_t const X[18], mad_fixed_t z[36],
-     }
- # elif defined(ASO_INTERLEAVE2)
-     {
--      register mad_fixed_t tmp1, tmp2;
-+      register mad_fixed_t tmp1;
-+      register mad_coeff_t tmp2;
--      tmp1 = z[0];
--      tmp2 = window_l[0];
-+      tmp1 = *z_ptr;
-+      tmp2 = *w_ptr++;
-       for (i = 0; i < 35; ++i) {
--      z[i] = mad_f_mul(tmp1, tmp2);
--      tmp1 = z[i + 1];
--      tmp2 = window_l[i + 1];
-+      *z_ptr++ = mad_f_mul(tmp1, tmp2);
-+      tmp1 = *z_ptr;
-+      tmp2 = *w_ptr++;
-       }
-       z[35] = mad_f_mul(tmp1, tmp2);
-@@ -2118,23 +2181,28 @@ void III_imdct_l(mad_fixed_t const X[18], mad_fixed_t z[36],
-   case 1:  /* start block */
-     for (i =  0; i < 18; i += 3) {
--      z[i + 0] = mad_f_mul(z[i + 0], window_l[i + 0]);
--      z[i + 1] = mad_f_mul(z[i + 1], window_l[i + 1]);
--      z[i + 2] = mad_f_mul(z[i + 2], window_l[i + 2]);
-+      *(z_ptr++) = mad_f_mul(*z_ptr, *w_ptr++);
-+      *(z_ptr++) = mad_f_mul(*z_ptr, *w_ptr++);
-+      *(z_ptr++) = mad_f_mul(*z_ptr, *w_ptr++);
-     }
-+    z_ptr += 6;
-+    w_ptr = &window_s[6];
-     /*  (i = 18; i < 24; ++i) z[i] unchanged */
--    for (i = 24; i < 30; ++i) z[i] = mad_f_mul(z[i], window_s[i - 18]);
--    for (i = 30; i < 36; ++i) z[i] = 0;
-+    for (i = 24; i < 30; ++i) *z_ptr++ = mad_f_mul(*z_ptr, *w_ptr++);
-+    for (i = 30; i < 36; ++i) *z_ptr++ = 0;
-     break;
-   case 3:  /* stop block */
--    for (i =  0; i <  6; ++i) z[i] = 0;
--    for (i =  6; i < 12; ++i) z[i] = mad_f_mul(z[i], window_s[i - 6]);
-+    w_ptr = &window_s[0];
-+    for (i =  0; i <  6; ++i) *z_ptr++ = 0;
-+    for (i =  6; i < 12; ++i) *z_ptr++ = mad_f_mul(*z_ptr, *w_ptr++);
-     /*  (i = 12; i < 18; ++i) z[i] unchanged */
-+    w_ptr = &window_l[18];
-+    z_ptr += 6;
-     for (i = 18; i < 36; i += 3) {
--      z[i + 0] = mad_f_mul(z[i + 0], window_l[i + 0]);
--      z[i + 1] = mad_f_mul(z[i + 1], window_l[i + 1]);
--      z[i + 2] = mad_f_mul(z[i + 2], window_l[i + 2]);
-+      *z_ptr++ = mad_f_mul(*z_ptr, *w_ptr++ );
-+      *z_ptr++ = mad_f_mul(*z_ptr, *w_ptr++);
-+      *z_ptr++ = mad_f_mul(*z_ptr, *w_ptr++);
-     }
-     break;
-   }
-@@ -2146,10 +2214,10 @@ void III_imdct_l(mad_fixed_t const X[18], mad_fixed_t z[36],
-  * DESCRIPTION:       perform IMDCT and windowing for short blocks
-  */
- static
--void III_imdct_s(mad_fixed_t const X[18], mad_fixed_t z[36])
-+void III_imdct_s(mad_fixed_t /*const*/ X[18], mad_fixed_t z[36])
- {
-   mad_fixed_t y[36], *yptr;
--  mad_fixed_t const *wptr;
-+  mad_coeff_t const *wptr;
-   int w, i;
-   register mad_fixed64hi_t hi;
-   register mad_fixed64lo_t lo;
-@@ -2159,11 +2227,56 @@ void III_imdct_s(mad_fixed_t const X[18], mad_fixed_t z[36])
-   yptr = &y[0];
-   for (w = 0; w < 3; ++w) {
--    register mad_fixed_t const (*s)[6];
-+    register mad_coeff_t const (*s)[6];
-     s = imdct_s;
-     for (i = 0; i < 3; ++i) {
-+#ifdef FPM_AVR32
-+      register long long int acc, tmp1, tmp2, tmp3, tmp4;
-+      asm volatile ("ld.d\t%0, %5++\n"
-+                    "ld.d\t%1, %6[0]\n"
-+                    "ld.d\t%2, %6[2*4]\n"
-+                    "ld.d\t%3, %6[4*4]\n"
-+                    "mulwh.d\t%4, %m1, %m0:t\n"
-+                    "macwh.d\t%4, %1, %m0:b\n"
-+                    "ld.w\t%m0, %5++\n"
-+                    "macwh.d\t%4, %m2, %0:t\n"
-+                    "macwh.d\t%4, %2, %0:b\n"
-+                    "macwh.d\t%4, %m3, %m0:t\n"
-+                    "macwh.d\t%4, %3, %m0:b\n"
-+                    "ld.d\t%0, %5++\n"
-+                    "rol\t%4\n"
-+                    "rol\t%m4\n"
-+                    : "=&r"(tmp1), "=&r"(tmp2), "=&r"(tmp3), "=&r"(tmp4),
-+                      "=&r"(acc), "+r"(s)
-+                    : "r"(X));
-+
-+      asm volatile ("st.w\t%1[0], %m0\n"
-+                    "neg\t%m0\n"
-+                    "st.w\t%2[5*4], %m0\n"
-+                    : "+r"(acc)
-+                    : "r"(&yptr[i]), "r"(&yptr[-i]));
-+
-+      asm volatile ("mulwh.d\t%4, %m1, %m0:t\n"
-+                    "macwh.d\t%4, %1, %m0:b\n"
-+                    "ld.w\t%m0, %5++\n"
-+                    "macwh.d\t%4, %m2, %0:t\n"
-+                    "macwh.d\t%4, %2, %0:b\n"
-+                    "macwh.d\t%4, %m3, %m0:t\n"
-+                    "macwh.d\t%4, %3, %m0:b\n"
-+                    "rol\t%4\n"
-+                    "rol\t%m4\n"
-+                    : "+r"(tmp1), "+r"(tmp2), "+r"(tmp3), "+r"(tmp4),
-+                      "=&r"(acc), "+r"(s)
-+                    : "r"(X));
-+
-+      asm volatile (  "st.w\t%1[6*4], %m0\n"
-+                      "st.w\t%2[11*4], %m0\n"
-+                      :: "r"(acc), "r"(&yptr[i]), "r"(&yptr[-i]));
-+
-+
-+#else
-       MAD_F_ML0(hi, lo, X[0], (*s)[0]);
-       MAD_F_MLA(hi, lo, X[1], (*s)[1]);
-       MAD_F_MLA(hi, lo, X[2], (*s)[2]);
-@@ -2187,6 +2300,7 @@ void III_imdct_s(mad_fixed_t const X[18], mad_fixed_t z[36])
-       yptr[11 - i] = yptr[i + 6];
-       ++s;
-+#endif
-     }
-     yptr += 12;
-@@ -2198,6 +2312,196 @@ void III_imdct_s(mad_fixed_t const X[18], mad_fixed_t z[36])
-   yptr = &y[0];
-   wptr = &window_s[0];
-+#ifdef FPM_AVR32
-+  /*    z[0] = 0;
-+        z[1] = 0;
-+        z[2] = 0;
-+        z[3] = 0;
-+        z[4] = 0;
-+        z[5] = 0;
-+        z[30] = 0;
-+        z[31] = 0;
-+        z[32] = 0;
-+        z[33] = 0;
-+        z[34] = 0;
-+        z[35] = 0;
-+  */
-+  {
-+    register long long int tmp, tmp2, tmp3, w0123, w4567, w891011;
-+    asm volatile ("mov\t%m0, 0\n"
-+                  "mov\t%0, %m0\n"
-+                  "st.d\t%1[0], %0\n"
-+                  "st.d\t%1[2*4], %0\n"
-+                  "st.d\t%1[4*4], %0\n"
-+                  "st.d\t%1[30*4], %0\n"
-+                  "st.d\t%1[32*4], %0\n"
-+                  "st.d\t%1[34*4], %0\n"
-+                  : "=&r"(tmp) : "r"(z));
-+
-+
-+
-+    /*
-+            z[6] = mad_f_mul(yptr [0], wptr[0]);
-+            z[7] = mad_f_mul(yptr [1], wptr[1]);
-+            z[8] = mad_f_mul(yptr [2], wptr[2]);
-+            z[9] = mad_f_mul(yptr [3], wptr[3]);
-+            z[10] = mad_f_mul(yptr[4], wptr[4]);
-+            z[11] = mad_f_mul(yptr[5], wptr[5]);
-+            z[24] = mad_f_mul(yptr [30], wptr[6]);
-+            z[25] = mad_f_mul(yptr [31], wptr[7]);
-+            z[26] = mad_f_mul(yptr [32], wptr[8]);
-+            z[27] = mad_f_mul(yptr [33], wptr[9]);
-+            z[28] = mad_f_mul(yptr[34], wptr[10]);
-+            z[29] = mad_f_mul(yptr[35], wptr[11]);
-+    */
-+
-+
-+    asm volatile ("ld.d\t%0, %5[0*4]\n"
-+                  "ld.d\t%3, %6[0*4]\n"
-+                  "ld.d\t%1, %5[2*4]\n"
-+                  "ld.d\t%2, %5[4*4]\n"
-+                  "mulsatrndwh.w\t%m3, %m3, %m0:t\n"
-+                  "mulsatrndwh.w\t%3, %3, %m0:b\n"
-+                  "ld.d\t%4, %6[2*4]\n"
-+                  "st.d\t%7[6*4], %3\n"
-+
-+                  "mulsatrndwh.w\t%m4, %m4, %0:t\n"
-+                  "mulsatrndwh.w\t%4, %4, %0:b\n"
-+                  "ld.d\t%3, %6[4*4]\n"
-+                  "st.d\t%7[8*4], %4\n"
-+
-+                  "mulsatrndwh.w\t%m3, %m3, %m1:t\n"
-+                  "mulsatrndwh.w\t%3, %3, %m1:b\n"
-+                  "ld.d\t%4, %6[30*4]\n"
-+                  "st.d\t%7[10*4], %3\n"
-+
-+                  "mulsatrndwh.w\t%m4, %m4, %1:t\n"
-+                  "mulsatrndwh.w\t%4, %4, %1:b\n"
-+                  "ld.d\t%3, %6[32*4]\n"
-+                  "st.d\t%7[24*4], %4\n"
-+
-+                  "mulsatrndwh.w\t%m3, %m3, %m2:t\n"
-+                  "mulsatrndwh.w\t%3, %3, %m2:b\n"
-+                  "ld.d\t%4, %6[34*4]\n"
-+                  "st.d\t%7[26*4], %3\n"
-+
-+                  "mulsatrndwh.w\t%m4, %m4, %2:t\n"
-+                  "mulsatrndwh.w\t%4, %4, %2:b\n"
-+                  "st.d\t%7[28*4], %4\n"
-+
-+                  : "=&r"(w0123), "=&r"(w4567), "=&r"(w891011), "=&r"(tmp), "=&r"(tmp2)
-+                  : "r"(wptr), "r"(yptr), "r"(z));
-+    /*
-+       MAD_F_ML0(hi, lo, yptr[6], wptr[6]);
-+       MAD_F_MLA(hi, lo, yptr[12], wptr[0]);
-+       z[12] = MAD_F_MLZ(hi, lo);
-+       MAD_F_ML0(hi, lo, yptr[7], wptr[7]);
-+       MAD_F_MLA(hi, lo, yptr[13], wptr[1]);
-+       z[13] = MAD_F_MLZ(hi, lo);
-+       MAD_F_ML0(hi, lo, yptr[8], wptr[8]);
-+       MAD_F_MLA(hi, lo, yptr[14], wptr[2]);
-+       z[14] = MAD_F_MLZ(hi, lo);
-+       MAD_F_ML0(hi, lo, yptr[9], wptr[9]);
-+       MAD_F_MLA(hi, lo, yptr[15], wptr[3]);
-+       z[15] = MAD_F_MLZ(hi, lo);
-+       MAD_F_ML0(hi, lo, yptr[10], wptr[10]);
-+       MAD_F_MLA(hi, lo, yptr[16], wptr[4]);
-+       z[16] = MAD_F_MLZ(hi, lo);
-+       MAD_F_ML0(hi, lo, yptr[11], wptr[11]);
-+       MAD_F_MLA(hi, lo, yptr[17], wptr[5]);
-+       z[17] = MAD_F_MLZ(hi, lo);
-+
-+       MAD_F_ML0(hi, lo, yptr[18], wptr[6]);
-+       MAD_F_MLA(hi, lo, yptr[24], wptr[0]);
-+       z[18] = MAD_F_MLZ(hi, lo);
-+       MAD_F_ML0(hi, lo, yptr[19], wptr[7]);
-+       MAD_F_MLA(hi, lo, yptr[25], wptr[1]);
-+       z[19] = MAD_F_MLZ(hi, lo);
-+       MAD_F_ML0(hi, lo, yptr[20], wptr[8]);
-+       MAD_F_MLA(hi, lo, yptr[26], wptr[2]);
-+       z[20] = MAD_F_MLZ(hi, lo);
-+       MAD_F_ML0(hi, lo, yptr[21], wptr[9]);
-+       MAD_F_MLA(hi, lo, yptr[27], wptr[3]);
-+       z[21] = MAD_F_MLZ(hi, lo);
-+       MAD_F_ML0(hi, lo, yptr[22], wptr[10]);
-+       MAD_F_MLA(hi, lo, yptr[28], wptr[4]);
-+       z[22] = MAD_F_MLZ(hi, lo);
-+       MAD_F_ML0(hi, lo, yptr[23], wptr[11]);
-+       MAD_F_MLA(hi, lo, yptr[29], wptr[5]);
-+       z[23] = MAD_F_MLZ(hi, lo);*/
-+
-+
-+    asm volatile ("ld.d\t%0, %3[6*4]\n"
-+                  "ld.d\t%1, %3[12*4]\n"
-+                  "mulwh.d\t%2, %m0, %5:t\n"
-+                  "macwh.d\t%2, %m1, %m4:t\n"
-+                  "mulwh.d\t%0, %0, %5:b\n"
-+                  "macwh.d\t%0, %1, %m4:b\n"
-+                  "lsl\t%m2, 1\n"
-+                  "lsl\t%2, %m0, 1\n"
-+                  "st.d\t%6[12*4], %2\n"
-+
-+                  "ld.d\t%0, %3[18*4]\n"
-+                  "ld.d\t%1, %3[24*4]\n"
-+                  "mulwh.d\t%2, %m0, %5:t\n"
-+                  "macwh.d\t%2, %m1, %m4:t\n"
-+                  "mulwh.d\t%0, %0, %5:b\n"
-+                  "macwh.d\t%0, %1, %m4:b\n"
-+                  "lsl\t%m2, 1\n"
-+                  "lsl\t%2, %m0, 1\n"
-+                  "st.d\t%6[18*4], %2\n"
-+
-+                  : "=&r"(tmp), "=&r"(tmp2), "=&r"(tmp3)
-+                  : "r"(yptr), "r"(w0123), "r"(w4567), "r"(z));
-+
-+    asm volatile ("ld.d\t%0, %3[8*4]\n"
-+                  "ld.d\t%1, %3[14*4]\n"
-+                  "mulwh.d\t%2, %m0, %m5:t\n"
-+                  "macwh.d\t%2, %m1, %4:t\n"
-+                  "mulwh.d\t%0, %0, %m5:b\n"
-+                  "macwh.d\t%0, %1, %4:b\n"
-+                  "lsl\t%m2, 1\n"
-+                  "lsl\t%2, %m0, 1\n"
-+                  "st.d\t%6[14*4], %2\n"
-+
-+                  "ld.d\t%0, %3[20*4]\n"
-+                  "ld.d\t%1, %3[26*4]\n"
-+                  "mulwh.d\t%2, %m0, %m5:t\n"
-+                  "macwh.d\t%2, %m1, %4:t\n"
-+                  "mulwh.d\t%0, %0, %m5:b\n"
-+                  "macwh.d\t%0, %1, %4:b\n"
-+                  "lsl\t%m2, 1\n"
-+                  "lsl\t%2, %m0, 1\n"
-+                  "st.d\t%6[20*4], %2\n"
-+
-+                  : "=&r"(tmp), "=&r"(tmp2), "=&r"(tmp3)
-+                  : "r"(yptr), "r"(w0123), "r"(w891011), "r"(z));
-+
-+    asm volatile ("ld.d\t%0, %3[10*4]\n"
-+                  "ld.d\t%1, %3[16*4]\n"
-+                  "mulwh.d\t%2, %m0, %5:t\n"
-+                  "macwh.d\t%2, %m1, %m4:t\n"
-+                  "mulwh.d\t%0, %0, %5:b\n"
-+                  "macwh.d\t%0, %1, %m4:b\n"
-+                  "lsl\t%m2, 1\n"
-+                  "lsl\t%2, %m0, 1\n"
-+                  "st.d\t%6[16*4], %2\n"
-+
-+                  "ld.d\t%0, %3[22*4]\n"
-+                  "ld.d\t%1, %3[28*4]\n"
-+                  "mulwh.d\t%2, %m0, %5:t\n"
-+                  "macwh.d\t%2, %m1, %m4:t\n"
-+                  "mulwh.d\t%0, %0, %5:b\n"
-+                  "macwh.d\t%0, %1, %m4:b\n"
-+                  "lsl\t%m2, 1\n"
-+                  "lsl\t%2, %m0, 1\n"
-+                  "st.d\t%6[22*4], %2\n"
-+
-+                  : "=&r"(tmp), "=&r"(tmp2), "=&r"(tmp3)
-+                  : "r"(yptr), "r"(w4567), "r"(w891011), "r"(z));
-+
-+  }
-+#else
-   for (i = 0; i < 6; ++i) {
-     z[i +  0] = 0;
-     z[i +  6] = mad_f_mul(yptr[ 0 + 0], wptr[0]);
-@@ -2218,8 +2522,15 @@ void III_imdct_s(mad_fixed_t const X[18], mad_fixed_t z[36])
-     ++yptr;
-     ++wptr;
-   }
-+#endif
- }
-+#ifdef FPM_AVR32
-+# undef  mad_f_mul
-+# define mad_f_mul(x, y) ((((x) + (1L << 11)) >> 12) *  \
-+                               (((y) + (1L << 15)) >> 16))
-+#endif
-+
- /*
-  * NAME:      III_overlap()
-  * DESCRIPTION:       perform overlap-add of windowed IMDCT outputs
-diff --git a/synth.c b/synth.c
-index 1d28d43..f42d49b 100644
---- a/synth.c
-+++ b/synth.c
-@@ -29,20 +29,6 @@
- # include "frame.h"
- # include "synth.h"
--/*
-- * NAME:      synth->init()
-- * DESCRIPTION:       initialize synth struct
-- */
--void mad_synth_init(struct mad_synth *synth)
--{
--  mad_synth_mute(synth);
--
--  synth->phase = 0;
--
--  synth->pcm.samplerate = 0;
--  synth->pcm.channels   = 0;
--  synth->pcm.length     = 0;
--}
- /*
-  * NAME:      synth->mute()
-@@ -88,6 +74,10 @@ void mad_synth_mute(struct mad_synth *synth)
- /* FPM_DEFAULT without OPT_SSO will actually lose accuracy and performance */
-+# if defined(FPM_AVR32)
-+#  define OPT_SSO
-+# endif
-+
- # if defined(FPM_DEFAULT) && !defined(OPT_SSO)
- #  define OPT_SSO
- # endif
-@@ -522,9 +512,15 @@ void dct32(mad_fixed_t const in[32], unsigned int slot,
- #  endif
- #  define ML0(hi, lo, x, y)   ((lo)  = (x) * (y))
- #  define MLA(hi, lo, x, y)   ((lo) += (x) * (y))
--#  define MLN(hi, lo)         ((lo)  = -(lo))
--#  define MLZ(hi, lo)         ((void) (hi), (mad_fixed_t) (lo))
--#  define SHIFT(x)            ((x) >> 2)
-+#  if defined(FPM_AVR32)
-+#   define MLN(hi, lo)                MAD_F_MLN((hi), (lo))
-+#   define MLZ(hi, lo)                (hi)
-+#   define SHIFT(x)           ((x) << 2)
-+#  else
-+#   define MLN(hi, lo)                ((lo)  = -(lo))
-+#   define MLZ(hi, lo)                ((void) (hi), (mad_fixed_t) (lo))
-+#   define SHIFT(x)           ((x) >> 2)
-+#  endif
- #  define PRESHIFT(x)         ((MAD_F(x) + (1L << 13)) >> 14)
- # else
- #  define ML0(hi, lo, x, y)   MAD_F_ML0((hi), (lo), (x), (y))
-@@ -541,11 +537,54 @@ void dct32(mad_fixed_t const in[32], unsigned int slot,
- #  endif
- # endif
-+/*
-+ * NAME:      synth->init()
-+ * DESCRIPTION:       initialize synth struct
-+ */
-+
-+#ifdef FPM_AVR32
-+short Dmod[17][33];
-+#endif
-+
- static
-+#ifdef FPM_AVR32
-+short const D[17][32] = {
-+#else
- mad_fixed_t const D[17][32] = {
-+#endif
- # include "D.dat"
- };
-+void mad_synth_init(struct mad_synth *synth)
-+{
-+
-+  mad_synth_mute(synth);
-+
-+  synth->phase = 0;
-+
-+  synth->pcm.samplerate = 0;
-+  synth->pcm.channels   = 0;
-+  synth->pcm.length     = 0;
-+
-+#ifdef FPM_AVR32
-+  {
-+    int i, j;
-+    for ( i = 0; i < 17; i++ ){
-+      for ( j = 0; j < 32; j++ ){
-+        if ( j & 1 ){
-+          Dmod[i][17 + (j >> 1)]= D[i][j];
-+        } else {
-+          Dmod[i][(j >> 1)]= D[i][j];
-+        }
-+      }
-+
-+      Dmod[i][16]= Dmod[i][16+8];
-+    }
-+  }
-+#endif
-+
-+}
-+
- # if defined(ASO_SYNTH)
- void synth_full(struct mad_synth *, struct mad_frame const *,
-               unsigned int, unsigned int);
-@@ -560,9 +599,13 @@ void synth_full(struct mad_synth *synth, struct mad_frame const *frame,
- {
-   unsigned int phase, ch, s, sb, pe, po;
-   mad_fixed_t *pcm1, *pcm2, (*filter)[2][2][16][8];
--  mad_fixed_t const (*sbsample)[36][32];
-+  mad_fixed_t /*const*/ (*sbsample)[36][32];
-   register mad_fixed_t (*fe)[8], (*fx)[8], (*fo)[8];
-+#ifdef FPM_AVR32
-+  register short const (*Dptr)[32], *ptr;
-+#else
-   register mad_fixed_t const (*Dptr)[32], *ptr;
-+#endif
-   register mad_fixed64hi_t hi;
-   register mad_fixed64lo_t lo;
-@@ -573,6 +616,20 @@ void synth_full(struct mad_synth *synth, struct mad_frame const *frame,
-     pcm1     = synth->pcm.samples[ch];
-     for (s = 0; s < ns; ++s) {
-+#  ifdef FPM_AVR32
-+/*
-+  int i;
-+  for ( i = 0; i < 32; i++ ){
-+  (*sbsample)[s][i] = ((*sbsample)[s][i] + (1 << 13)) & 0xFFFFC000;
-+  }
-+*/
-+      dct32_avr32((*sbsample)[s], phase >> 1,
-+          (*filter)[0][phase & 1], (*filter)[1][phase & 1]);
-+      /*      printf("dct32: %d\n", GET_CYCLES);*/
-+      pcm1 = synth_avr32(phase, (mad_fixed_t *)filter, \
-+                         pcm1, (short *)&Dmod[0]);
-+      /*      printf("synth_window: %d\n", GET_CYCLES);*/
-+#  else
-       dct32((*sbsample)[s], phase >> 1,
-           (*filter)[0][phase & 1], (*filter)[1][phase & 1]);
-@@ -679,6 +736,7 @@ void synth_full(struct mad_synth *synth, struct mad_frame const *frame,
-       MLA(hi, lo, (*fo)[7], ptr[ 2]);
-       *pcm1 = SHIFT(-MLZ(hi, lo));
-+#  endif
-       pcm1 += 16;
-       phase = (phase + 1) % 16;
-diff --git a/synth_avr32.S b/synth_avr32.S
-new file mode 100644
-index 0000000..701077b
---- /dev/null
-+++ b/synth_avr32.S
-@@ -0,0 +1,394 @@
-+/*
-+   Optimized function for speeding up synthesis filter
-+   in MPEG Audio Decoding.
-+   Copyright 2003-2006 Atmel Corporation.
-+
-+   Written by Ronny Pedersen and Lars Even AlmÃ¥s, Atmel Norway
-+
-+   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. */
-+
-+
-+/* *****************
-+   Defining macros
-+   ***************** */
-+
-+      .macro  window_1        f, ptr, acc, ptr_offset, mul, tmp1_lo, tmp1_hi, tmp2_lo, tmp2_hi, tmp3_lo, tmp3_hi
-+      ld.d            \tmp1_lo, \f[0*4]                       /* tmp1 = { f[0], f[1] } */
-+      ld.w            \tmp2_lo, \ptr[0*2+\ptr_offset*2]       /* tmp2_lo = { ptr[0], ptr[1] }*/
-+      ld.d            \tmp3_lo, \f[6*4]                       /* tmp3 = { f[6], f[7] } */
-+      ld.w            \tmp2_hi, \ptr[6*2+\ptr_offset*2]       /* tmp2_hi = { ptr[6], ptr[7] }*/
-+      .if \mul
-+      mulwh.d         \acc, \tmp1_hi, \tmp2_lo:t              /* f[0] * ptr[0]*/
-+      .else
-+      macwh.d         \acc, \tmp1_hi, \tmp2_lo:t              /* f[0] * ptr[0]*/
-+      .endif
-+      macwh.d         \acc, \tmp3_lo, \tmp2_lo:b              /* f[7] * ptr[1]*/
-+      ld.w            \tmp2_lo, \ptr[2*2+\ptr_offset*2]       /* tmp2_lo = { ptr[2], ptr[3] }*/
-+      macwh.d         \acc, \tmp1_lo, \tmp2_hi:b              /* f[1] * ptr[7]*/
-+      ld.d            \tmp1_lo, \f[2*4]                       /* tmp1 = { f[2], f[3] } */
-+
-+      macwh.d         \acc, \tmp3_hi, \tmp2_lo:t              /* f[6] * ptr[2]*/
-+      macwh.d         \acc, \tmp1_hi, \tmp2_hi:t              /* f[2] * ptr[6]*/
-+      ld.d            \tmp3_lo, \f[4*4]                       /* tmp3 = { f[4], f[5] } */
-+      ld.w            \tmp2_hi, \ptr[4*2+\ptr_offset*2]       /* tmp2_hi = { ptr[4], ptr[5] }*/
-+      macwh.d         \acc, \tmp3_lo, \tmp2_lo:b              /* f[5] * ptr[3]*/
-+
-+      macwh.d         \acc, \tmp1_lo, \tmp2_hi:b              /* f[3] * ptr[5]*/
-+      macwh.d         \acc, \tmp3_hi, \tmp2_hi:t              /* f[4] * ptr[4]*/
-+      .endm
-+
-+      .macro  window_2        f, ptr, acc, ptr_offset, mul, tmp1_lo, tmp1_hi, tmp2_lo, tmp2_hi, tmp3_lo, tmp3_hi
-+      ld.d            \tmp1_lo, \f[0*4]                       /* tmp1 = { f[0], f[1] } */
-+      ld.w            \tmp2_lo, \ptr[7*2+\ptr_offset*2]       /* tmp2_lo = { ptr[7], ptr[8] }*/
-+      ld.d            \tmp3_lo, \f[2*4]                       /* tmp3 = { f[2], f[3] } */
-+      ld.w            \tmp2_hi, \ptr[9*2+\ptr_offset*2]       /* tmp2_hi = { ptr[9], ptr[10] }*/
-+      .if \mul
-+      mulwh.d         \acc, \tmp1_hi, \tmp2_lo:t              /* f[0] * ptr[7]*/
-+      .else
-+      macwh.d         \acc, \tmp1_hi, \tmp2_lo:t              /* f[0] * ptr[7]*/
-+      .endif
-+      macwh.d         \acc, \tmp1_lo, \tmp2_lo:b              /* f[1] * ptr[8]*/
-+
-+      ld.d            \tmp1_lo, \f[4*4]                       /* tmp1 = { f[4], f[5] } */
-+      ld.w            \tmp2_lo, \ptr[11*2+\ptr_offset*2]      /* tmp2_lo = { ptr[11], ptr[12] }*/
-+
-+      macwh.d         \acc, \tmp3_hi, \tmp2_hi:t              /* f[2] * ptr[9]*/
-+      macwh.d         \acc, \tmp3_lo, \tmp2_hi:b              /* f[3] * ptr[10]*/
-+
-+      ld.d            \tmp3_lo, \f[6*4]                       /* tmp3 = { f[6], f[7] } */
-+      ld.w            \tmp2_hi, \ptr[13*2+\ptr_offset*2]      /* tmp2_hi = { ptr[13], ptr[14] }*/
-+
-+      macwh.d         \acc, \tmp1_hi, \tmp2_lo:t              /* f[4] * ptr[11]*/
-+      macwh.d         \acc, \tmp1_lo, \tmp2_lo:b              /* f[5] * ptr[12]*/
-+      macwh.d         \acc, \tmp3_hi, \tmp2_hi:t              /* f[6] * ptr[13]*/
-+      macwh.d         \acc, \tmp3_lo, \tmp2_hi:b              /* f[7] * ptr[14]*/
-+      .endm
-+
-+      .macro  scale   res, d_lo, d_hi
-+      lsl             \d_hi, 2
-+      .endm
-+
-+/* **********************
-+   Starting main function
-+   ********************** */
-+
-+/* Function synth_avr32 is called from synth.c with arguments:
-+             phase, filter, *pcm1, &D[0]              */
-+
-+      .global synth_avr32
-+synth_avr32:
-+      pushm           r0-r7, lr
-+      sub             sp, 8
-+
-+      /* R12 = phase, R11 = filter, R10 = pcm1, r9 = D*/
-+      bld             r12, 0
-+      brcc            synth_even
-+
-+      /* Filter for odd phases */
-+
-+      /*      fe = &(*filter)[0][1][0];
-+              fx = &(*filter)[0][0][0];
-+              fo = &(*filter)[1][0][0]; */
-+      sub             lr /*fe*/, r11, -16*8*4
-+      sub             r8 /*fo*/, r11, -16*8*4*2
-+
-+      /*      pe = phase >> 1; */
-+      lsr             r12, 1
-+      stdsp           sp[4], r12
-+      /*      ptr = (short const *)Dmod + pe; */
-+      add             r12, r9, r12 << 1
-+
-+      /*      ML0(hi, lo, (*fx)[0], ptr[0 + 17]);
-+              MLA(hi, lo, (*fx)[1], ptr[7 + 17]);
-+              MLA(hi, lo, (*fx)[2], ptr[6 + 17]);
-+              MLA(hi, lo, (*fx)[3], ptr[5 + 17]);
-+              MLA(hi, lo, (*fx)[4], ptr[4 + 17]);
-+              MLA(hi, lo, (*fx)[5], ptr[3 + 17]);
-+              MLA(hi, lo, (*fx)[6], ptr[2 + 17]);
-+              MLA(hi, lo, (*fx)[7], ptr[1 + 17]); */
-+      window_1        r11/*fx*/,r12/*ptr*/,r0/*acc*/,17/*off*/,1/*mul*/,r2,r3,r4,r5,r6,r7
-+
-+    /*                MLN(hi, lo); */
-+      neg             r0
-+      acr             r1
-+      neg             r1
-+
-+    /*                MLA(hi, lo, (*fe)[0], ptr[0]);
-+              MLA(hi, lo, (*fe)[1], ptr[7]);
-+              MLA(hi, lo, (*fe)[2], ptr[6]);
-+                MLA(hi, lo, (*fe)[3], ptr[5]);
-+                MLA(hi, lo, (*fe)[4], ptr[4]);
-+                MLA(hi, lo, (*fe)[5], ptr[3]);
-+                MLA(hi, lo, (*fe)[6], ptr[2]);
-+                MLA(hi, lo, (*fe)[7], ptr[1]); */
-+      window_1        lr/*fe*/,r12/*ptr*/,r0/*acc*/,0/*off*/,0/*mac*/,r2,r3,r4,r5,r6,r7
-+
-+    /*                *pcm1++ = SHIFT(MLZ(hi, lo));
-+
-+              pcm2 = pcm1 + 31; */
-+      scale           r1, r0, r1
-+      st.w            r10/*pcm_1*/++, r1
-+      sub             r11/*pcm2*/, r10, -4*31
-+
-+    /*                for (sb = 1; sb < 16; ++sb) { */
-+      mov             r2, 15
-+      stdsp           sp[0], r2
-+odd_loop:
-+    /*                ++fe;
-+              ptr += 33; */
-+      sub             lr /*fe*/, -8*4
-+      sub             r12, -33*2
-+
-+    /*                ML0(hi, lo, (*fo)[0], ptr[0 + 17]);
-+              MLA(hi, lo, (*fo)[1], ptr[7 + 17]);
-+              MLA(hi, lo, (*fo)[2], ptr[6 + 17]);
-+              MLA(hi, lo, (*fo)[3], ptr[5 + 17]);
-+              MLA(hi, lo, (*fo)[4], ptr[4 + 17]);
-+              MLA(hi, lo, (*fo)[5], ptr[3 + 17]);
-+              MLA(hi, lo, (*fo)[6], ptr[2 + 17]);
-+              MLA(hi, lo, (*fo)[7], ptr[1 + 17]); */
-+      window_1        r8/*fo*/,r12/*ptr*/,r0/*acc*/,17/*off*/,1/*mul*/,r2,r3,r4,r5,r6,r7
-+    /*                MLN(hi, lo); */
-+
-+      neg             r0
-+      acr             r1
-+      neg             r1
-+
-+    /*                MLA(hi, lo, (*fe)[7], ptr[1]);
-+              MLA(hi, lo, (*fe)[6], ptr[2]);
-+              MLA(hi, lo, (*fe)[5], ptr[3]);
-+              MLA(hi, lo, (*fe)[4], ptr[4]);
-+              MLA(hi, lo, (*fe)[3], ptr[5]);
-+              MLA(hi, lo, (*fe)[2], ptr[6]);
-+              MLA(hi, lo, (*fe)[1], ptr[7]);
-+              MLA(hi, lo, (*fe)[0], ptr[0]); */
-+      window_1        lr/*fe*/,r12/*ptr*/,r0/*acc*/,0/*off*/,0/*mac*/,r2,r3,r4,r5,r6,r7
-+
-+    /*        ptr -= 2*pe; */
-+      lddsp           r2, sp[4]
-+
-+    /*                *pcm1++ = SHIFT(MLZ(hi, lo)); */
-+
-+      scale           r1, r0, r1
-+      sub             r12/*ptr*/, r12, r2/*pe*/<< 2
-+      st.w            r10/*pcm_1*/++, r1
-+
-+
-+    /*                ML0(hi, lo, (*fe)[0], ptr[7  + 17]);
-+              MLA(hi, lo, (*fe)[1], ptr[8  + 17]);
-+              MLA(hi, lo, (*fe)[2], ptr[9  + 17]);
-+              MLA(hi, lo, (*fe)[3], ptr[10 + 17]);
-+              MLA(hi, lo, (*fe)[4], ptr[11 + 17]);
-+              MLA(hi, lo, (*fe)[5], ptr[12 + 17]);
-+              MLA(hi, lo, (*fe)[6], ptr[13 + 17]);
-+              MLA(hi, lo, (*fe)[7], ptr[14 + 17]); */
-+      window_2        lr/*fe*/,r12/*ptr*/,r0/*acc*/,17/*off*/,1/*mul*/,r2,r3,r4,r5,r6,r7
-+    /*                MLA(hi, lo, (*fo)[7], ptr[14]);
-+              MLA(hi, lo, (*fo)[6], ptr[13]);
-+              MLA(hi, lo, (*fo)[5], ptr[12]);
-+              MLA(hi, lo, (*fo)[4], ptr[11]);
-+              MLA(hi, lo, (*fo)[3], ptr[10]);
-+              MLA(hi, lo, (*fo)[2], ptr[9]);
-+              MLA(hi, lo, (*fo)[1], ptr[8]);
-+              MLA(hi, lo, (*fo)[0], ptr[7]); */
-+      window_2        r8/*fo*/,r12/*ptr*/,r0/*acc*/,0/*off*/,0/*mac*/,r2,r3,r4,r5,r6,r7
-+
-+
-+    /*                *pcm2-- = SHIFT(MLZ(hi, lo)); */
-+      lddsp           r3, sp[4]
-+      lddsp           r2, sp[0]
-+      scale           r1, r0, r1
-+      st.w            --r11/*pcm_2*/, r1
-+
-+    /*                ptr += 2*pe; */
-+      add             r12/*ptr*/, r12, r3/*pe*/<< 2
-+
-+    /*                ++fo;
-+              } */
-+      sub             r8/*fo*/, -8*4
-+
-+      sub             r2, 1
-+      stdsp           sp[0], r2
-+      brne            odd_loop
-+
-+    /*                ptr += 33; */
-+      sub             r12/*ptr*/, -33*2
-+
-+    /*                ML0(hi, lo, (*fo)[0], ptr[0 + 17]);
-+              MLA(hi, lo, (*fo)[1], ptr[7 + 17]);
-+              MLA(hi, lo, (*fo)[2], ptr[6 + 17]);
-+              MLA(hi, lo, (*fo)[3], ptr[5 + 17]);
-+              MLA(hi, lo, (*fo)[4], ptr[4 + 17]);
-+              MLA(hi, lo, (*fo)[5], ptr[3 + 17]);
-+              MLA(hi, lo, (*fo)[6], ptr[2 + 17]);
-+              MLA(hi, lo, (*fo)[7], ptr[1 + 17]); */
-+      window_1        r8/*fo*/,r12/*ptr*/,r0/*acc*/,17/*off*/,1/*mul*/,r2,r3,r4,r5,r6,r7
-+
-+      rjmp            synth_end
-+synth_even:
-+      /* Filter for even phases */
-+
-+      /*      fe = &(*filter)[0][0][0];
-+              fx = &(*filter)[0][1][0];
-+              fo = &(*filter)[1][1][0]; */
-+      sub             lr /*fx*/, r11, -16*8*4
-+      sub             r8 /*fo*/, r11, -(16*8*4*2 + 16*8*4)
-+
-+      /*      po = ((phase - 1) & 0xF) >> 1; */
-+      sub             r12, 1
-+      andl            r12, 0xe, COH
-+      stdsp           sp[4], r12
-+      /*      ptr = (short const *)Dmod + po; */
-+      add             r12, r9, r12
-+
-+      /*      ML0(hi, lo, (*fx)[0], ptr[0 + 17]);
-+              MLA(hi, lo, (*fx)[1], ptr[7 + 17]);
-+              MLA(hi, lo, (*fx)[2], ptr[6 + 17]);
-+              MLA(hi, lo, (*fx)[3], ptr[5 + 17]);
-+              MLA(hi, lo, (*fx)[4], ptr[4 + 17]);
-+              MLA(hi, lo, (*fx)[5], ptr[3 + 17]);
-+              MLA(hi, lo, (*fx)[6], ptr[2 + 17]);
-+              MLA(hi, lo, (*fx)[7], ptr[1 + 17]); */
-+      window_1        lr/*fx*/,r12/*ptr*/,r0/*acc*/,17/*off*/,1/*mul*/,r2,r3,r4,r5,r6,r7
-+
-+    /*                MLN(hi, lo); */
-+      neg             r0
-+      acr             r1
-+      neg             r1
-+
-+    /*                MLA(hi, lo, (*fe)[0], ptr[0 + 1]);
-+              MLA(hi, lo, (*fe)[1], ptr[7 + 1]);
-+              MLA(hi, lo, (*fe)[2], ptr[6 + 1]);
-+                MLA(hi, lo, (*fe)[3], ptr[5 + 1]);
-+                MLA(hi, lo, (*fe)[4], ptr[4 + 1]);
-+                MLA(hi, lo, (*fe)[5], ptr[3 + 1]);
-+                MLA(hi, lo, (*fe)[6], ptr[2 + 1]);
-+                MLA(hi, lo, (*fe)[7], ptr[1 + 1]); */
-+      window_1        r11/*fe*/,r12/*ptr*/,r0/*acc*/,1/*off*/,0/*mac*/,r2,r3,r4,r5,r6,r7
-+
-+    /*                *pcm1++ = SHIFT(MLZ(hi, lo));
-+
-+              pcm2 = pcm1 + 31; */
-+      scale           r1, r0, r1
-+      st.w            r10/*pcm_1*/++, r1
-+      sub             lr/*pcm2*/, r10, -4*31
-+
-+    /*                for (sb = 1; sb < 16; ++sb) { */
-+      mov             r2, 15
-+      stdsp           sp[0], r2
-+even_loop:
-+    /*                ++fe;
-+              ptr += 33; */
-+      sub             r11 /*fe*/, -8*4
-+      sub             r12, -33*2
-+
-+    /*                ML0(hi, lo, (*fo)[0], ptr[0 + 17]);
-+              MLA(hi, lo, (*fo)[1], ptr[7 + 17]);
-+              MLA(hi, lo, (*fo)[2], ptr[6 + 17]);
-+              MLA(hi, lo, (*fo)[3], ptr[5 + 17]);
-+              MLA(hi, lo, (*fo)[4], ptr[4 + 17]);
-+              MLA(hi, lo, (*fo)[5], ptr[3 + 17]);
-+              MLA(hi, lo, (*fo)[6], ptr[2 + 17]);
-+              MLA(hi, lo, (*fo)[7], ptr[1 + 17]); */
-+      window_1        r8/*fo*/,r12/*ptr*/,r0/*acc*/,17/*off*/,1/*mul*/,r2,r3,r4,r5,r6,r7
-+    /*                MLN(hi, lo); */
-+      neg             r0
-+      acr             r1
-+      neg             r1
-+
-+    /*                MLA(hi, lo, (*fe)[7], ptr[1 + 1]);
-+              MLA(hi, lo, (*fe)[6], ptr[2 + 1]);
-+              MLA(hi, lo, (*fe)[5], ptr[3 + 1]);
-+              MLA(hi, lo, (*fe)[4], ptr[4 + 1]);
-+              MLA(hi, lo, (*fe)[3], ptr[5 + 1]);
-+              MLA(hi, lo, (*fe)[2], ptr[6 + 1]);
-+              MLA(hi, lo, (*fe)[1], ptr[7 + 1]);
-+              MLA(hi, lo, (*fe)[0], ptr[0 + 1]); */
-+      window_1        r11/*fe*/,r12/*ptr*/,r0/*acc*/,1/*off*/,0/*mac*/,r2,r3,r4,r5,r6,r7
-+
-+    /*                *pcm1++ = SHIFT(MLZ(hi, lo)); */
-+      lddsp           r2, sp[4]
-+      scale           r1, r0, r1
-+    /*        ptr -= 2*po; */
-+      sub             r12/*ptr*/, r12, r2/*po*/<< 1
-+      st.w            r10/*pcm_1*/++, r1
-+
-+
-+    /*                ML0(hi, lo, (*fe)[0], ptr[7  + 17 - 1]);
-+              MLA(hi, lo, (*fe)[1], ptr[8  + 17 - 1]);
-+              MLA(hi, lo, (*fe)[2], ptr[9  + 17 - 1]);
-+              MLA(hi, lo, (*fe)[3], ptr[10 + 17 - 1]);
-+              MLA(hi, lo, (*fe)[4], ptr[11 + 17 - 1]);
-+              MLA(hi, lo, (*fe)[5], ptr[12 + 17 - 1]);
-+              MLA(hi, lo, (*fe)[6], ptr[13 + 17 - 1]);
-+              MLA(hi, lo, (*fe)[7], ptr[14 + 17 - 1]); */
-+      window_2        r11/*fe*/,r12/*ptr*/,r0/*acc*/,16/*off*/,1/*mul*/,r2,r3,r4,r5,r6,r7
-+    /*                MLA(hi, lo, (*fo)[7], ptr[14]);
-+              MLA(hi, lo, (*fo)[6], ptr[13]);
-+              MLA(hi, lo, (*fo)[5], ptr[12]);
-+              MLA(hi, lo, (*fo)[4], ptr[11]);
-+              MLA(hi, lo, (*fo)[3], ptr[10]);
-+              MLA(hi, lo, (*fo)[2], ptr[9]);
-+              MLA(hi, lo, (*fo)[1], ptr[8]);
-+              MLA(hi, lo, (*fo)[0], ptr[7]); */
-+      window_2        r8/*fo*/,r12/*ptr*/,r0/*acc*/,0/*off*/,0/*mac*/,r2,r3,r4,r5,r6,r7
-+
-+
-+    /*                *pcm2-- = SHIFT(MLZ(hi, lo)); */
-+      lddsp           r3, sp[4]
-+      lddsp           r2, sp[0]
-+      scale           r1, r0, r1
-+      st.w            --lr/*pcm_2*/, r1
-+
-+    /*                ptr += 2*po; */
-+      add             r12/*ptr*/, r12, r3/*po*/<< 1
-+
-+    /*                ++fo;
-+              } */
-+      sub             r8/*fo*/, -8*4
-+
-+      sub             r2, 1
-+      stdsp           sp[0], r2
-+      brne            even_loop
-+
-+    /*                ptr += 33; */
-+      sub             r12/*ptr*/, -33*2
-+
-+    /*                ML0(hi, lo, (*fo)[0], ptr[0 + 17]);
-+              MLA(hi, lo, (*fo)[1], ptr[7 + 17]);
-+              MLA(hi, lo, (*fo)[2], ptr[6 + 17]);
-+              MLA(hi, lo, (*fo)[3], ptr[5 + 17]);
-+              MLA(hi, lo, (*fo)[4], ptr[4 + 17]);
-+              MLA(hi, lo, (*fo)[5], ptr[3 + 17]);
-+              MLA(hi, lo, (*fo)[6], ptr[2 + 17]);
-+              MLA(hi, lo, (*fo)[7], ptr[1 + 17]); */
-+      window_1        r8/*fo*/,r12/*ptr*/,r0/*acc*/,17/*off*/,1/*mul*/,r2,r3,r4,r5,r6,r7
-+
-+
-+
-+synth_end:
-+   /*         *pcm1 = SHIFT(-MLZ(hi, lo)); */
-+      scale           r1, r0, r1
-+      neg             r1
-+      st.w            r10/*pcm_1*/, r1
-+
-+      mov             r12, r10
-+      sub             sp, -8
-+      popm            r0-r7, pc
-+
-+
-+
-+
-+
diff --git a/package/libmad/libmad-0.15.1b-remove-deprecated-cflags.patch b/package/libmad/libmad-0.15.1b-remove-deprecated-cflags.patch
deleted file mode 100644 (file)
index e504083..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-libmad: remove deprecated cflags (-fforce-mem)
-
-fforce-mem has long been deprecated, and is completely removed from
-gcc 4.3.x on.
----
- configure    |    1 -
- configure.ac |    1 -
- 2 files changed, 2 deletions(-)
-
-Index: libmad-0.15.1b/configure.ac
-===================================================================
---- libmad-0.15.1b.orig/configure.ac
-+++ libmad-0.15.1b/configure.ac
-@@ -140,7 +140,6 @@
-     case "$optimize" in
-       -O|"-O "*)
-           optimize="-O"
--          optimize="$optimize -fforce-mem"
-           optimize="$optimize -fforce-addr"
-           : #x optimize="$optimize -finline-functions"
-           : #- optimize="$optimize -fstrength-reduce"
-Index: libmad-0.15.1b/configure
-===================================================================
---- libmad-0.15.1b.orig/configure
-+++ libmad-0.15.1b/configure
-@@ -19099,7 +19099,6 @@
-     case "$optimize" in
-       -O|"-O "*)
-           optimize="-O"
--          optimize="$optimize -fforce-mem"
-           optimize="$optimize -fforce-addr"
-           : #x optimize="$optimize -finline-functions"
-           : #- optimize="$optimize -fstrength-reduce"
diff --git a/package/libmad/libmad-0.15.1b-thumb2-fixed-arm.patch b/package/libmad/libmad-0.15.1b-thumb2-fixed-arm.patch
deleted file mode 100644 (file)
index befda48..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-Fixes Thumb2-related build failure
-
-Patch below comes from the Debian libmad package.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-From: Dave Martin
-Subject: "rsc" doesnt exist anymore in thumb2
-
-diff --git a/fixed.h b/fixed.h
-index 4b58abf..ba4bc26 100644
---- a/fixed.h
-+++ b/fixed.h
-@@ -275,12 +275,25 @@ mad_fixed_t mad_f_mul_inline(mad_fixed_t x, mad_fixed_t y)
-        : "+r" (lo), "+r" (hi)  \
-        : "%r" (x), "r" (y))
-+#ifdef __thumb__
-+/* In Thumb-2, the RSB-immediate instruction is only allowed with a zero
-+      operand.  If needed this code can also support Thumb-1 
-+      (simply append "s" to the end of the second two instructions). */
-+#  define MAD_F_MLN(hi, lo)  \
-+    asm ("rsbs        %0, %0, #0\n\t"  \
-+       "sbc   %1, %1, %1\n\t"  \
-+       "sub   %1, %1, %2"  \
-+       : "+&r" (lo), "=&r" (hi)  \
-+       : "r" (hi)  \
-+       : "cc")
-+#else /* ! __thumb__ */
- #  define MAD_F_MLN(hi, lo)  \
-     asm ("rsbs        %0, %2, #0\n\t"  \
-        "rsc   %1, %3, #0"  \
--       : "=r" (lo), "=r" (hi)  \
-+       : "=&r" (lo), "=r" (hi)  \
-        : "0" (lo), "1" (hi)  \
-        : "cc")
-+#endif /* __thumb__ */
- #  define mad_f_scale64(hi, lo)  \
-     ({ mad_fixed_t __result;  \
diff --git a/package/libmad/libmad-0.15.1b-thumb2-imdct-arm.patch b/package/libmad/libmad-0.15.1b-thumb2-imdct-arm.patch
deleted file mode 100644 (file)
index 414b9c8..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-Fixes Thumb2 related build failure
-
-Patch below comes from the Debian libmad package.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-From: Konstantinos Margaritis <markos@debian.org>
-Subject: use "adr" instead of "add" to make code ready for thumb2
-
---- ./imdct_l_arm.S.orig       2010-02-25 13:25:23.000000000 +0100
-+++ ./imdct_l_arm.S    2010-02-25 13:27:26.000000000 +0100
-@@ -468,7 +468,7 @@
-     @----
--    add     r2, pc, #(imdct36_long_karray-.-8)  @ r2 = base address of Knn array (PIC safe ?)
-+    adr     r2, imdct36_long_karray
- loop:
diff --git a/package/libmcrypt/0001-nocxx.patch b/package/libmcrypt/0001-nocxx.patch
new file mode 100644 (file)
index 0000000..b1c2871
--- /dev/null
@@ -0,0 +1,15 @@
+libmcrypt doesn't use C++ so remove the check.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura libmcrypt-2.5.8.orig/configure.in libmcrypt-2.5.8/configure.in
+--- libmcrypt-2.5.8.orig/configure.in  2013-01-07 12:20:44.332200669 -0300
++++ libmcrypt-2.5.8/configure.in       2013-01-07 12:20:50.405390565 -0300
+@@ -19,7 +19,6 @@
+ AC_PROG_MAKE_SET
+-AC_PROG_CXX
+ AC_PROG_CC
+ AC_PROG_CPP
+ AC_PROG_INSTALL
diff --git a/package/libmcrypt/libmcrypt-nocxx.patch b/package/libmcrypt/libmcrypt-nocxx.patch
deleted file mode 100644 (file)
index b1c2871..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-libmcrypt doesn't use C++ so remove the check.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura libmcrypt-2.5.8.orig/configure.in libmcrypt-2.5.8/configure.in
---- libmcrypt-2.5.8.orig/configure.in  2013-01-07 12:20:44.332200669 -0300
-+++ libmcrypt-2.5.8/configure.in       2013-01-07 12:20:50.405390565 -0300
-@@ -19,7 +19,6 @@
- AC_PROG_MAKE_SET
--AC_PROG_CXX
- AC_PROG_CC
- AC_PROG_CPP
- AC_PROG_INSTALL
diff --git a/package/libmnl/0001-uclinux.patch b/package/libmnl/0001-uclinux.patch
new file mode 100644 (file)
index 0000000..e8f97c6
--- /dev/null
@@ -0,0 +1,26 @@
+From ae2acfa7d287e3ffc0bb66091059b86f62775bd5 Mon Sep 17 00:00:00 2001
+From: Gustavo Zacarias <gustavo@zacarias.com.ar>
+Date: Tue, 10 Sep 2013 15:24:47 -0300
+Subject: [PATCH] configure: uclinux is also linux
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index dcd3cf8..313a015 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -17,7 +17,7 @@ AC_DISABLE_STATIC
+ LT_INIT
+ CHECK_GCC_FVISIBILITY
+ case "$host" in
+-*-*-linux*) ;;
++*-*-linux* | *-*-uclinux*) ;;
+ *) AC_MSG_ERROR([Linux only, dude!]);;
+ esac
+-- 
+1.8.1.5
+
diff --git a/package/libmnl/libmnl-01-uclinux.patch b/package/libmnl/libmnl-01-uclinux.patch
deleted file mode 100644 (file)
index e8f97c6..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-From ae2acfa7d287e3ffc0bb66091059b86f62775bd5 Mon Sep 17 00:00:00 2001
-From: Gustavo Zacarias <gustavo@zacarias.com.ar>
-Date: Tue, 10 Sep 2013 15:24:47 -0300
-Subject: [PATCH] configure: uclinux is also linux
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
----
- configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index dcd3cf8..313a015 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -17,7 +17,7 @@ AC_DISABLE_STATIC
- LT_INIT
- CHECK_GCC_FVISIBILITY
- case "$host" in
--*-*-linux*) ;;
-+*-*-linux* | *-*-uclinux*) ;;
- *) AC_MSG_ERROR([Linux only, dude!]);;
- esac
--- 
-1.8.1.5
-
diff --git a/package/libmpdclient/0001-musl-fixes.patch b/package/libmpdclient/0001-musl-fixes.patch
new file mode 100644 (file)
index 0000000..60df540
--- /dev/null
@@ -0,0 +1,41 @@
+From cc2ffe943dd36a4c95ec34b2f2bf413de15b7974 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Fran=C3=A7ois=20Revol?= <revol@free.fr>
+Date: Fri, 11 Jul 2014 08:56:49 +0200
+Subject: POSIX says fd_set is defined by <sys/select.h>
+
+Haiku requires this.
+
+cf.
+http://pubs.opengroup.org/onlinepubs/009695399/basedefs/sys/select.h.html
+
+Also guard sys/select.h by ifndef WIN32 as Mingw32 doesn't provide it.
+We'll avoid a configure check just for this.
+
+diff --git a/src/socket.c b/src/socket.c
+index f76510c..2aa5f7f 100644
+--- a/src/socket.c
++++ b/src/socket.c
+@@ -43,6 +43,7 @@
+ #else
+ #  include <netinet/in.h>
+ #  include <arpa/inet.h>
++#  include <sys/select.h>
+ #  include <sys/socket.h>
+ #  include <netdb.h>
+ #  include <sys/un.h>
+diff --git a/src/sync.c b/src/sync.c
+index 43cfe50..0a6c9d3 100644
+--- a/src/sync.c
++++ b/src/sync.c
+@@ -33,6 +33,9 @@
+ #include <assert.h>
+ #include <stdlib.h>
+ #include <stdio.h>
++#ifndef WIN32
++#include <sys/select.h>
++#endif
+ #include <fcntl.h>
+ #include <unistd.h>
+-- 
+cgit v0.10-2-gd358
diff --git a/package/libmpdclient/libmpdclient-0001-musl-fixes.patch b/package/libmpdclient/libmpdclient-0001-musl-fixes.patch
deleted file mode 100644 (file)
index 60df540..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-From cc2ffe943dd36a4c95ec34b2f2bf413de15b7974 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Fran=C3=A7ois=20Revol?= <revol@free.fr>
-Date: Fri, 11 Jul 2014 08:56:49 +0200
-Subject: POSIX says fd_set is defined by <sys/select.h>
-
-Haiku requires this.
-
-cf.
-http://pubs.opengroup.org/onlinepubs/009695399/basedefs/sys/select.h.html
-
-Also guard sys/select.h by ifndef WIN32 as Mingw32 doesn't provide it.
-We'll avoid a configure check just for this.
-
-diff --git a/src/socket.c b/src/socket.c
-index f76510c..2aa5f7f 100644
---- a/src/socket.c
-+++ b/src/socket.c
-@@ -43,6 +43,7 @@
- #else
- #  include <netinet/in.h>
- #  include <arpa/inet.h>
-+#  include <sys/select.h>
- #  include <sys/socket.h>
- #  include <netdb.h>
- #  include <sys/un.h>
-diff --git a/src/sync.c b/src/sync.c
-index 43cfe50..0a6c9d3 100644
---- a/src/sync.c
-+++ b/src/sync.c
-@@ -33,6 +33,9 @@
- #include <assert.h>
- #include <stdlib.h>
- #include <stdio.h>
-+#ifndef WIN32
-+#include <sys/select.h>
-+#endif
- #include <fcntl.h>
- #include <unistd.h>
--- 
-cgit v0.10-2-gd358
diff --git a/package/libmpeg2/0001-altivec.patch b/package/libmpeg2/0001-altivec.patch
new file mode 100644 (file)
index 0000000..4928a62
--- /dev/null
@@ -0,0 +1,23 @@
+[PATCH] fix altivec.h detection
+
+Patch from Gentoo:
+
+http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/media-libs/libmpeg2/files/libmpeg2-0.5.1-altivec.patch?revision=1.1&view=markup
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+--- a/configure.ac.bak 2010-05-25 17:12:14.756245990 +0000
++++ b/configure.ac     2010-05-25 17:11:51.629581723 +0000
+@@ -79,11 +79,10 @@
+                CFLAGS="$OPT_CFLAGS $TRY_CFLAGS $CFLAGS"
+                AC_MSG_CHECKING([if <altivec.h> is needed])
+                AC_TRY_COMPILE([],
+-                  [typedef vector int t;
+-                   vec_ld(0, (unsigned char *)0);],
++                  [vector int t; t = vec_add(t,t);],
+                   [have_altivec=yes; AC_MSG_RESULT(no)],
+                   [AC_TRY_COMPILE([#include <altivec.h>],
+-                      [typedef vector int t; vec_ld(0, (unsigned char *)0);],
++                      [vector int t; t = vec_add(t,t);],
+                       [AC_DEFINE([HAVE_ALTIVEC_H],,
+                           [Define to 1 if you have the <altivec.h> header.])
+                        have_altivec=yes; AC_MSG_RESULT(yes)],
diff --git a/package/libmpeg2/0002-armv4l.patch b/package/libmpeg2/0002-armv4l.patch
new file mode 100644 (file)
index 0000000..70d45ef
--- /dev/null
@@ -0,0 +1,24 @@
+Patch taken from gentoo.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -urNp libmpeg2.orig/libmpeg2/motion_comp_arm_s.S libmpeg2/libmpeg2/motion_comp_arm_s.S
+--- libmpeg2.orig/libmpeg2/motion_comp_arm_s.S 2008-07-09 21:16:05.000000000 +0200
++++ libmpeg2/libmpeg2/motion_comp_arm_s.S      2009-11-20 19:55:22.000000000 +0100
+@@ -19,6 +19,16 @@
+ @ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
++@ Data preload is supported only by ARM V5TE and above
++
++#if (defined (__ARM_ARCH_2__) || defined (__ARM_ARCH_3__) \
++     || defined (__ARM_ARCH_3M__) || defined (__ARM_ARCH_4__) \
++     || defined (__ARM_ARCH_4T__) || defined (__ARM_ARCH_5__) \
++     || defined (__ARM_ARCH_5T__))
++.macro pld reg
++.endm
++#endif
++
+       .text
+ @ ----------------------------------------------------------------
diff --git a/package/libmpeg2/libmpeg2-0.5.1-altivec.patch b/package/libmpeg2/libmpeg2-0.5.1-altivec.patch
deleted file mode 100644 (file)
index 4928a62..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-[PATCH] fix altivec.h detection
-
-Patch from Gentoo:
-
-http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/media-libs/libmpeg2/files/libmpeg2-0.5.1-altivec.patch?revision=1.1&view=markup
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
---- a/configure.ac.bak 2010-05-25 17:12:14.756245990 +0000
-+++ b/configure.ac     2010-05-25 17:11:51.629581723 +0000
-@@ -79,11 +79,10 @@
-                CFLAGS="$OPT_CFLAGS $TRY_CFLAGS $CFLAGS"
-                AC_MSG_CHECKING([if <altivec.h> is needed])
-                AC_TRY_COMPILE([],
--                  [typedef vector int t;
--                   vec_ld(0, (unsigned char *)0);],
-+                  [vector int t; t = vec_add(t,t);],
-                   [have_altivec=yes; AC_MSG_RESULT(no)],
-                   [AC_TRY_COMPILE([#include <altivec.h>],
--                      [typedef vector int t; vec_ld(0, (unsigned char *)0);],
-+                      [vector int t; t = vec_add(t,t);],
-                       [AC_DEFINE([HAVE_ALTIVEC_H],,
-                           [Define to 1 if you have the <altivec.h> header.])
-                        have_altivec=yes; AC_MSG_RESULT(yes)],
diff --git a/package/libmpeg2/libmpeg2-0.5.1-armv4l.patch b/package/libmpeg2/libmpeg2-0.5.1-armv4l.patch
deleted file mode 100644 (file)
index 70d45ef..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-Patch taken from gentoo.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -urNp libmpeg2.orig/libmpeg2/motion_comp_arm_s.S libmpeg2/libmpeg2/motion_comp_arm_s.S
---- libmpeg2.orig/libmpeg2/motion_comp_arm_s.S 2008-07-09 21:16:05.000000000 +0200
-+++ libmpeg2/libmpeg2/motion_comp_arm_s.S      2009-11-20 19:55:22.000000000 +0100
-@@ -19,6 +19,16 @@
- @ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-+@ Data preload is supported only by ARM V5TE and above
-+
-+#if (defined (__ARM_ARCH_2__) || defined (__ARM_ARCH_3__) \
-+     || defined (__ARM_ARCH_3M__) || defined (__ARM_ARCH_4__) \
-+     || defined (__ARM_ARCH_4T__) || defined (__ARM_ARCH_5__) \
-+     || defined (__ARM_ARCH_5T__))
-+.macro pld reg
-+.endm
-+#endif
-+
-       .text
- @ ----------------------------------------------------------------
diff --git a/package/libnetfilter_acct/0001-uclinux.patch b/package/libnetfilter_acct/0001-uclinux.patch
new file mode 100644 (file)
index 0000000..070f02c
--- /dev/null
@@ -0,0 +1,26 @@
+From bfcaf00a8c972e2c10412d917f08626eb05079c7 Mon Sep 17 00:00:00 2001
+From: Gustavo Zacarias <gustavo@zacarias.com.ar>
+Date: Tue, 10 Sep 2013 15:32:03 -0300
+Subject: [PATCH] configure: uclinux is also linux
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index ad1bef8..24a7bb9 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -22,7 +22,7 @@ AC_DISABLE_STATIC
+ LT_INIT
+ CHECK_GCC_FVISIBILITY
+ case "$host" in
+-*-*-linux*) ;;
++*-*-linux* | *-*-uclinux*) ;;
+ *) AC_MSG_ERROR([Linux only, dude!]);;
+ esac
+-- 
+1.8.1.5
+
diff --git a/package/libnetfilter_acct/libnetfilter_acct-01-uclinux.patch b/package/libnetfilter_acct/libnetfilter_acct-01-uclinux.patch
deleted file mode 100644 (file)
index 070f02c..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-From bfcaf00a8c972e2c10412d917f08626eb05079c7 Mon Sep 17 00:00:00 2001
-From: Gustavo Zacarias <gustavo@zacarias.com.ar>
-Date: Tue, 10 Sep 2013 15:32:03 -0300
-Subject: [PATCH] configure: uclinux is also linux
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
----
- configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index ad1bef8..24a7bb9 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -22,7 +22,7 @@ AC_DISABLE_STATIC
- LT_INIT
- CHECK_GCC_FVISIBILITY
- case "$host" in
--*-*-linux*) ;;
-+*-*-linux* | *-*-uclinux*) ;;
- *) AC_MSG_ERROR([Linux only, dude!]);;
- esac
--- 
-1.8.1.5
-
diff --git a/package/libnetfilter_cthelper/0001-uclinux.patch b/package/libnetfilter_cthelper/0001-uclinux.patch
new file mode 100644 (file)
index 0000000..7a6ca70
--- /dev/null
@@ -0,0 +1,26 @@
+From d028334281b218209412ec6e1dba56ca96320bd9 Mon Sep 17 00:00:00 2001
+From: Gustavo Zacarias <gustavo@zacarias.com.ar>
+Date: Tue, 10 Sep 2013 16:08:29 -0300
+Subject: [PATCH] configure: uclinux is also linux
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index d52b1ce..9389b70 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -22,7 +22,7 @@ AC_DISABLE_STATIC
+ LT_INIT
+ CHECK_GCC_FVISIBILITY
+ case "$host" in
+-*-*-linux*) ;;
++*-*-linux* | *-*-uclinux*) ;;
+ *) AC_MSG_ERROR([Linux only, dude!]);;
+ esac
+-- 
+1.8.1.5
+
diff --git a/package/libnetfilter_cthelper/libnetfilter_cthelper-01-uclinux.patch b/package/libnetfilter_cthelper/libnetfilter_cthelper-01-uclinux.patch
deleted file mode 100644 (file)
index 7a6ca70..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-From d028334281b218209412ec6e1dba56ca96320bd9 Mon Sep 17 00:00:00 2001
-From: Gustavo Zacarias <gustavo@zacarias.com.ar>
-Date: Tue, 10 Sep 2013 16:08:29 -0300
-Subject: [PATCH] configure: uclinux is also linux
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
----
- configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index d52b1ce..9389b70 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -22,7 +22,7 @@ AC_DISABLE_STATIC
- LT_INIT
- CHECK_GCC_FVISIBILITY
- case "$host" in
--*-*-linux*) ;;
-+*-*-linux* | *-*-uclinux*) ;;
- *) AC_MSG_ERROR([Linux only, dude!]);;
- esac
--- 
-1.8.1.5
-
diff --git a/package/libnetfilter_cttimeout/0001-uclinux.patch b/package/libnetfilter_cttimeout/0001-uclinux.patch
new file mode 100644 (file)
index 0000000..5d462d8
--- /dev/null
@@ -0,0 +1,26 @@
+From d8d2ec14bc192f998afae2b71c69248e73518ddf Mon Sep 17 00:00:00 2001
+From: Gustavo Zacarias <gustavo@zacarias.com.ar>
+Date: Tue, 10 Sep 2013 16:09:14 -0300
+Subject: [PATCH] configure: uclinux is also linux
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index d79e941..aeb6ad0 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -22,7 +22,7 @@ AC_DISABLE_STATIC
+ LT_INIT
+ CHECK_GCC_FVISIBILITY
+ case "$host" in
+-*-*-linux*) ;;
++*-*-linux* | *-*-uclinux*) ;;
+ *) AC_MSG_ERROR([Linux only, dude!]);;
+ esac
+-- 
+1.8.1.5
+
diff --git a/package/libnetfilter_cttimeout/libnetfilter_cttimeout-01-uclinux.patch b/package/libnetfilter_cttimeout/libnetfilter_cttimeout-01-uclinux.patch
deleted file mode 100644 (file)
index 5d462d8..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-From d8d2ec14bc192f998afae2b71c69248e73518ddf Mon Sep 17 00:00:00 2001
-From: Gustavo Zacarias <gustavo@zacarias.com.ar>
-Date: Tue, 10 Sep 2013 16:09:14 -0300
-Subject: [PATCH] configure: uclinux is also linux
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
----
- configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index d79e941..aeb6ad0 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -22,7 +22,7 @@ AC_DISABLE_STATIC
- LT_INIT
- CHECK_GCC_FVISIBILITY
- case "$host" in
--*-*-linux*) ;;
-+*-*-linux* | *-*-uclinux*) ;;
- *) AC_MSG_ERROR([Linux only, dude!]);;
- esac
--- 
-1.8.1.5
-
diff --git a/package/libnetfilter_log/0001-uclinux.patch b/package/libnetfilter_log/0001-uclinux.patch
new file mode 100644 (file)
index 0000000..75d4a1e
--- /dev/null
@@ -0,0 +1,26 @@
+From e36a2377e7ec50f6f675eb41f79edcda6ddebe5c Mon Sep 17 00:00:00 2001
+From: Gustavo Zacarias <gustavo@zacarias.com.ar>
+Date: Tue, 10 Sep 2013 15:48:50 -0300
+Subject: [PATCH] configure: uclinux is also linux
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index e6e1317..189a753 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -20,7 +20,7 @@ AC_PROG_INSTALL
+ AC_PROG_LN_S
+ case "$host" in 
+-*-*-linux*) ;;
++*-*-linux* | *-*-uclinux*) ;;
+ *) AC_MSG_ERROR([Linux only, dude!]);;
+ esac
+-- 
+1.8.1.5
+
diff --git a/package/libnetfilter_log/libnetfilter_log-01-uclinux.patch b/package/libnetfilter_log/libnetfilter_log-01-uclinux.patch
deleted file mode 100644 (file)
index 75d4a1e..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-From e36a2377e7ec50f6f675eb41f79edcda6ddebe5c Mon Sep 17 00:00:00 2001
-From: Gustavo Zacarias <gustavo@zacarias.com.ar>
-Date: Tue, 10 Sep 2013 15:48:50 -0300
-Subject: [PATCH] configure: uclinux is also linux
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
----
- configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index e6e1317..189a753 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -20,7 +20,7 @@ AC_PROG_INSTALL
- AC_PROG_LN_S
- case "$host" in 
--*-*-linux*) ;;
-+*-*-linux* | *-*-uclinux*) ;;
- *) AC_MSG_ERROR([Linux only, dude!]);;
- esac
--- 
-1.8.1.5
-
diff --git a/package/libnetfilter_queue/0001-uclinux.patch b/package/libnetfilter_queue/0001-uclinux.patch
new file mode 100644 (file)
index 0000000..21895d9
--- /dev/null
@@ -0,0 +1,26 @@
+From 311b60655761f6f3c4fe44cf6eff63427283f25e Mon Sep 17 00:00:00 2001
+From: Gustavo Zacarias <gustavo@zacarias.com.ar>
+Date: Tue, 10 Sep 2013 16:13:58 -0300
+Subject: [PATCH] configure: uclinux is also linux
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 07747a6..289868f 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -21,7 +21,7 @@ AC_PROG_INSTALL
+ CHECK_GCC_FVISIBILITY
+ case "$host" in
+-*-*-linux*) ;;
++*-*-linux* | *-*-uclinux*) ;;
+ *) AC_MSG_ERROR([Linux only, dude!]);;
+ esac
+-- 
+1.8.1.5
+
diff --git a/package/libnetfilter_queue/libnetfilter_queue-01-uclinux.patch b/package/libnetfilter_queue/libnetfilter_queue-01-uclinux.patch
deleted file mode 100644 (file)
index 21895d9..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-From 311b60655761f6f3c4fe44cf6eff63427283f25e Mon Sep 17 00:00:00 2001
-From: Gustavo Zacarias <gustavo@zacarias.com.ar>
-Date: Tue, 10 Sep 2013 16:13:58 -0300
-Subject: [PATCH] configure: uclinux is also linux
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
----
- configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index 07747a6..289868f 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -21,7 +21,7 @@ AC_PROG_INSTALL
- CHECK_GCC_FVISIBILITY
- case "$host" in
--*-*-linux*) ;;
-+*-*-linux* | *-*-uclinux*) ;;
- *) AC_MSG_ERROR([Linux only, dude!]);;
- esac
--- 
-1.8.1.5
-
diff --git a/package/libnfc/0001-build-systems-make-example-build-optional.patch b/package/libnfc/0001-build-systems-make-example-build-optional.patch
new file mode 100644 (file)
index 0000000..06577c5
--- /dev/null
@@ -0,0 +1,82 @@
+From 40a4871b171293d98acb40cf54be9ee9b78a3244 Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Wed, 6 Jun 2012 00:49:25 +0200
+Subject: [PATCH 1/1] build systems: make example build optional
+
+This patch makes example build optional for both cmake and autotools build
+systems.
+
+In order to keep the former behavior, example build is enabled by default.
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+
+diff -Nurp a/CMakeLists.txt b/CMakeLists.txt
+--- a/CMakeLists.txt   2013-12-08 18:51:01.000000000 +0000
++++ b/CMakeLists.txt   2014-01-08 12:51:42.435096403 +0000
+@@ -39,6 +39,7 @@ IF(LIBNFC_ENVVARS)
+   ADD_DEFINITIONS(-DENVVARS)
+ ENDIF(LIBNFC_ENVVARS)
++SET(BUILD_EXAMPLES ON CACHE BOOL "Build examples")
+ SET(LIBNFC_DEBUG_MODE OFF CACHE BOOL "Debug mode")
+ IF(LIBNFC_DEBUG_MODE)
+   ADD_DEFINITIONS(-DDEBUG)
+@@ -155,7 +156,10 @@ ENDIF(WIN32)
+ ADD_SUBDIRECTORY(libnfc)
+ ADD_SUBDIRECTORY(include)
+ ADD_SUBDIRECTORY(utils)
+-ADD_SUBDIRECTORY(examples)
++
++IF(BUILD_EXAMPLES)
++  ADD_SUBDIRECTORY(examples)
++ENDIF(BUILD_EXAMPLES)
+ # Binary Package
+ IF(WIN32)
+diff -Nurp a/Makefile.am b/Makefile.am
+--- a/Makefile.am      2013-12-08 18:51:01.000000000 +0000
++++ b/Makefile.am      2014-01-08 12:52:12.807018593 +0000
+@@ -2,7 +2,13 @@ ACLOCAL_AMFLAGS = -I m4
+ AM_CFLAGS = $(LIBNFC_CFLAGS)
+-SUBDIRS = libnfc utils examples include contrib cmake test
++SUBDIRS = libnfc utils
++
++if EXAMPLE_ENABLED
++SUBDIRS += examples
++endif
++
++SUBDIRS += include contrib cmake test
+ pkgconfigdir = $(libdir)/pkgconfig
+ pkgconfig_DATA = libnfc.pc
+diff -Nurp a/configure.ac b/configure.ac
+--- a/configure.ac     2013-12-08 18:51:01.000000000 +0000
++++ b/configure.ac     2014-01-08 12:53:02.054872564 +0000
+@@ -142,6 +142,14 @@ then
+ fi
+ AM_CONDITIONAL(DOC_ENABLED, [test x"$enable_doc" = xyes])
++# Example build (default: yes)
++AC_ARG_ENABLE([example],AS_HELP_STRING([--enable-example],[Enable example build.]),[enable_example=$enableval],[enable_example="yes"])
++
++AC_MSG_CHECKING(for example build)
++AC_MSG_RESULT($enable_example)
++
++AM_CONDITIONAL(EXAMPLE_ENABLED, [test x"$enable_example" = xyes])
++
+ # Dependencies
+ PKG_CONFIG_REQUIRES=""
+@@ -160,7 +168,10 @@ if test x$ac_cv_with_cutter = xyes -a x$
+ fi
+ AM_CONDITIONAL([WITH_CUTTER], [test "$ac_cv_use_cutter" != "no"])
++if test x"$enable_example" = "xyes"
++then
+ AC_CHECK_READLINE
++fi
+ # Help us to write great code ;-)
+ CFLAGS="$CFLAGS -Wall -pedantic -Wextra"
diff --git a/package/libnfc/libnfc-build-systems-make-example-build-optional.patch b/package/libnfc/libnfc-build-systems-make-example-build-optional.patch
deleted file mode 100644 (file)
index 06577c5..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-From 40a4871b171293d98acb40cf54be9ee9b78a3244 Mon Sep 17 00:00:00 2001
-From: Samuel Martin <s.martin49@gmail.com>
-Date: Wed, 6 Jun 2012 00:49:25 +0200
-Subject: [PATCH 1/1] build systems: make example build optional
-
-This patch makes example build optional for both cmake and autotools build
-systems.
-
-In order to keep the former behavior, example build is enabled by default.
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
-
-diff -Nurp a/CMakeLists.txt b/CMakeLists.txt
---- a/CMakeLists.txt   2013-12-08 18:51:01.000000000 +0000
-+++ b/CMakeLists.txt   2014-01-08 12:51:42.435096403 +0000
-@@ -39,6 +39,7 @@ IF(LIBNFC_ENVVARS)
-   ADD_DEFINITIONS(-DENVVARS)
- ENDIF(LIBNFC_ENVVARS)
-+SET(BUILD_EXAMPLES ON CACHE BOOL "Build examples")
- SET(LIBNFC_DEBUG_MODE OFF CACHE BOOL "Debug mode")
- IF(LIBNFC_DEBUG_MODE)
-   ADD_DEFINITIONS(-DDEBUG)
-@@ -155,7 +156,10 @@ ENDIF(WIN32)
- ADD_SUBDIRECTORY(libnfc)
- ADD_SUBDIRECTORY(include)
- ADD_SUBDIRECTORY(utils)
--ADD_SUBDIRECTORY(examples)
-+
-+IF(BUILD_EXAMPLES)
-+  ADD_SUBDIRECTORY(examples)
-+ENDIF(BUILD_EXAMPLES)
- # Binary Package
- IF(WIN32)
-diff -Nurp a/Makefile.am b/Makefile.am
---- a/Makefile.am      2013-12-08 18:51:01.000000000 +0000
-+++ b/Makefile.am      2014-01-08 12:52:12.807018593 +0000
-@@ -2,7 +2,13 @@ ACLOCAL_AMFLAGS = -I m4
- AM_CFLAGS = $(LIBNFC_CFLAGS)
--SUBDIRS = libnfc utils examples include contrib cmake test
-+SUBDIRS = libnfc utils
-+
-+if EXAMPLE_ENABLED
-+SUBDIRS += examples
-+endif
-+
-+SUBDIRS += include contrib cmake test
- pkgconfigdir = $(libdir)/pkgconfig
- pkgconfig_DATA = libnfc.pc
-diff -Nurp a/configure.ac b/configure.ac
---- a/configure.ac     2013-12-08 18:51:01.000000000 +0000
-+++ b/configure.ac     2014-01-08 12:53:02.054872564 +0000
-@@ -142,6 +142,14 @@ then
- fi
- AM_CONDITIONAL(DOC_ENABLED, [test x"$enable_doc" = xyes])
-+# Example build (default: yes)
-+AC_ARG_ENABLE([example],AS_HELP_STRING([--enable-example],[Enable example build.]),[enable_example=$enableval],[enable_example="yes"])
-+
-+AC_MSG_CHECKING(for example build)
-+AC_MSG_RESULT($enable_example)
-+
-+AM_CONDITIONAL(EXAMPLE_ENABLED, [test x"$enable_example" = xyes])
-+
- # Dependencies
- PKG_CONFIG_REQUIRES=""
-@@ -160,7 +168,10 @@ if test x$ac_cv_with_cutter = xyes -a x$
- fi
- AM_CONDITIONAL([WITH_CUTTER], [test "$ac_cv_use_cutter" != "no"])
-+if test x"$enable_example" = "xyes"
-+then
- AC_CHECK_READLINE
-+fi
- # Help us to write great code ;-)
- CFLAGS="$CFLAGS -Wall -pedantic -Wextra"
diff --git a/package/libnfnetlink/0001-uclinux.patch b/package/libnfnetlink/0001-uclinux.patch
new file mode 100644 (file)
index 0000000..b152012
--- /dev/null
@@ -0,0 +1,26 @@
+From 8e5a9d8f32c9646d01d8c84e979892dfd28a7f7c Mon Sep 17 00:00:00 2001
+From: Gustavo Zacarias <gustavo@zacarias.com.ar>
+Date: Tue, 10 Sep 2013 15:35:22 -0300
+Subject: [PATCH] configure: uclinux is also linux
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 0926a1c..b979772 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -18,7 +18,7 @@ AC_DISABLE_STATIC
+ AM_PROG_LIBTOOL
+ case "$host" in 
+-*-*-linux*) ;;
++*-*-linux* | *-*-uclinux*) ;;
+ *) AC_MSG_ERROR([Linux only, dude!]);;
+ esac
+-- 
+1.8.1.5
+
diff --git a/package/libnfnetlink/libnfnetlink-01-uclinux.patch b/package/libnfnetlink/libnfnetlink-01-uclinux.patch
deleted file mode 100644 (file)
index b152012..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-From 8e5a9d8f32c9646d01d8c84e979892dfd28a7f7c Mon Sep 17 00:00:00 2001
-From: Gustavo Zacarias <gustavo@zacarias.com.ar>
-Date: Tue, 10 Sep 2013 15:35:22 -0300
-Subject: [PATCH] configure: uclinux is also linux
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
----
- configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index 0926a1c..b979772 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -18,7 +18,7 @@ AC_DISABLE_STATIC
- AM_PROG_LIBTOOL
- case "$host" in 
--*-*-linux*) ;;
-+*-*-linux* | *-*-uclinux*) ;;
- *) AC_MSG_ERROR([Linux only, dude!]);;
- esac
--- 
-1.8.1.5
-
diff --git a/package/libnl/0001-netlink-netlink-h-use-poll-h-instead-of-sys-poll-h.patch b/package/libnl/0001-netlink-netlink-h-use-poll-h-instead-of-sys-poll-h.patch
new file mode 100644 (file)
index 0000000..dd55cd4
--- /dev/null
@@ -0,0 +1,18 @@
+netlink/netlink.h: As the poll() man page recommends include the <poll.h>
+instead of <sys/poll.h>. This removes an error when building libdl against 
+the musl C library.
+
+Signed-off-by: Jörg Krause <jkrause@posteo.de>
+
+diff -purN libnl-3.2.25.orig/include/netlink/netlink.h libnl-3.2.25/include/netlink/netlink.h
+--- libnl-3.2.25.orig/include/netlink/netlink.h        2014-09-01 11:42:37.254724124 +0200
++++ libnl-3.2.25/include/netlink/netlink.h     2014-09-01 11:42:58.254724255 +0200
+@@ -16,7 +16,7 @@
+ #include <stdint.h>
+ #include <string.h>
+ #include <stdlib.h>
+-#include <sys/poll.h>
++#include <poll.h>
+ #include <sys/socket.h>
+ #include <sys/types.h>
+ #include <sys/time.h>
diff --git a/package/libnl/libnl-0001-netlink-netlink-h-use-poll-h-instead-of-sys-poll-h.patch b/package/libnl/libnl-0001-netlink-netlink-h-use-poll-h-instead-of-sys-poll-h.patch
deleted file mode 100644 (file)
index dd55cd4..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-netlink/netlink.h: As the poll() man page recommends include the <poll.h>
-instead of <sys/poll.h>. This removes an error when building libdl against 
-the musl C library.
-
-Signed-off-by: Jörg Krause <jkrause@posteo.de>
-
-diff -purN libnl-3.2.25.orig/include/netlink/netlink.h libnl-3.2.25/include/netlink/netlink.h
---- libnl-3.2.25.orig/include/netlink/netlink.h        2014-09-01 11:42:37.254724124 +0200
-+++ libnl-3.2.25/include/netlink/netlink.h     2014-09-01 11:42:58.254724255 +0200
-@@ -16,7 +16,7 @@
- #include <stdint.h>
- #include <string.h>
- #include <stdlib.h>
--#include <sys/poll.h>
-+#include <poll.h>
- #include <sys/socket.h>
- #include <sys/types.h>
- #include <sys/time.h>
diff --git a/package/libnspr/0001-nios2.patch b/package/libnspr/0001-nios2.patch
new file mode 100644 (file)
index 0000000..4fc6551
--- /dev/null
@@ -0,0 +1,72 @@
+Add Nios-II support
+
+[Gustavo: update for nspr 4.10.6]
+Signed-off-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
+
+diff -Nura nspr-4.10.6.orig/nspr/pr/include/md/_linux.cfg nspr-4.10.6/nspr/pr/include/md/_linux.cfg
+--- nspr-4.10.6.orig/nspr/pr/include/md/_linux.cfg     2014-06-18 10:26:22.447502521 -0300
++++ nspr-4.10.6/nspr/pr/include/md/_linux.cfg  2014-06-18 10:26:32.746850581 -0300
+@@ -924,6 +924,51 @@
+ #define PR_BYTES_PER_WORD_LOG2   2
+ #define PR_BYTES_PER_DWORD_LOG2  3
++#elif defined(nios2)
++
++#define IS_LITTLE_ENDIAN 1
++#undef  IS_BIG_ENDIAN
++
++#define PR_BYTES_PER_BYTE   1
++#define PR_BYTES_PER_SHORT  2
++#define PR_BYTES_PER_INT    4
++#define PR_BYTES_PER_INT64  8
++#define PR_BYTES_PER_LONG   4
++#define PR_BYTES_PER_FLOAT  4
++#define PR_BYTES_PER_DOUBLE 8
++#define PR_BYTES_PER_WORD   4
++#define PR_BYTES_PER_DWORD  8
++
++#define PR_BITS_PER_BYTE    8
++#define PR_BITS_PER_SHORT   16
++#define PR_BITS_PER_INT     32
++#define PR_BITS_PER_INT64   64
++#define PR_BITS_PER_LONG    32
++#define PR_BITS_PER_FLOAT   32
++#define PR_BITS_PER_DOUBLE  64
++#define PR_BITS_PER_WORD    32
++
++#define PR_BITS_PER_BYTE_LOG2   3
++#define PR_BITS_PER_SHORT_LOG2  4
++#define PR_BITS_PER_INT_LOG2    5
++#define PR_BITS_PER_INT64_LOG2  6
++#define PR_BITS_PER_LONG_LOG2   5
++#define PR_BITS_PER_FLOAT_LOG2  5
++#define PR_BITS_PER_DOUBLE_LOG2 6
++#define PR_BITS_PER_WORD_LOG2   5
++
++#define PR_ALIGN_OF_SHORT   2
++#define PR_ALIGN_OF_INT     4
++#define PR_ALIGN_OF_LONG    4
++#define PR_ALIGN_OF_INT64   4
++#define PR_ALIGN_OF_FLOAT   4
++#define PR_ALIGN_OF_DOUBLE  4
++#define PR_ALIGN_OF_POINTER 4
++#define PR_ALIGN_OF_WORD    4
++
++#define PR_BYTES_PER_WORD_LOG2   2
++#define PR_BYTES_PER_DWORD_LOG2  3
++
+ #else
+ #error "Unknown CPU architecture"
+diff -Nura nspr-4.10.6.orig/nspr/pr/include/md/_linux.h nspr-4.10.6/nspr/pr/include/md/_linux.h
+--- nspr-4.10.6.orig/nspr/pr/include/md/_linux.h       2014-06-18 10:26:22.446502487 -0300
++++ nspr-4.10.6/nspr/pr/include/md/_linux.h    2014-06-18 10:26:32.747850615 -0300
+@@ -55,6 +55,8 @@
+ #define _PR_SI_ARCHITECTURE "avr32"
+ #elif defined(__m32r__)
+ #define _PR_SI_ARCHITECTURE "m32r"
++#elif defined(nios2)
++#define _PR_SI_ARCHITECTURE "nios2"
+ #else
+ #error "Unknown CPU architecture"
+ #endif
diff --git a/package/libnspr/0002-microblaze.patch b/package/libnspr/0002-microblaze.patch
new file mode 100644 (file)
index 0000000..30b17f3
--- /dev/null
@@ -0,0 +1,77 @@
+Add Microblaze support
+
+[Gustavo: update for nspr 4.10.6]
+Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
+
+diff -Nura nspr-4.10.6.nios2/nspr/pr/include/md/_linux.cfg nspr-4.10.6/nspr/pr/include/md/_linux.cfg
+--- nspr-4.10.6.nios2/nspr/pr/include/md/_linux.cfg    2014-06-18 10:29:15.816361425 -0300
++++ nspr-4.10.6/nspr/pr/include/md/_linux.cfg  2014-06-18 10:26:59.908768508 -0300
+@@ -969,6 +969,56 @@
+ #define PR_BYTES_PER_WORD_LOG2   2
+ #define PR_BYTES_PER_DWORD_LOG2  3
++#elif defined(__microblaze__)
++
++#if defined(__BIG_ENDIAN__)
++#define IS_BIG_ENDIAN 1
++#undef  IS_LITTLE_ENDIAN
++#else
++#define IS_LITTLE_ENDIAN 1
++#undef  IS_BIG_ENDIAN
++#endif
++
++#define PR_BYTES_PER_BYTE   1
++#define PR_BYTES_PER_SHORT  2
++#define PR_BYTES_PER_INT    4
++#define PR_BYTES_PER_INT64  8
++#define PR_BYTES_PER_LONG   4
++#define PR_BYTES_PER_FLOAT  4
++#define PR_BYTES_PER_DOUBLE 8
++#define PR_BYTES_PER_WORD   4
++#define PR_BYTES_PER_DWORD  8
++
++#define PR_BITS_PER_BYTE    8
++#define PR_BITS_PER_SHORT   16
++#define PR_BITS_PER_INT     32
++#define PR_BITS_PER_INT64   64
++#define PR_BITS_PER_LONG    32
++#define PR_BITS_PER_FLOAT   32
++#define PR_BITS_PER_DOUBLE  64
++#define PR_BITS_PER_WORD    32
++
++#define PR_BITS_PER_BYTE_LOG2   3
++#define PR_BITS_PER_SHORT_LOG2  4
++#define PR_BITS_PER_INT_LOG2    5
++#define PR_BITS_PER_INT64_LOG2  6
++#define PR_BITS_PER_LONG_LOG2   5
++#define PR_BITS_PER_FLOAT_LOG2  5
++#define PR_BITS_PER_DOUBLE_LOG2 6
++#define PR_BITS_PER_WORD_LOG2   5
++
++#define PR_ALIGN_OF_SHORT   2
++#define PR_ALIGN_OF_INT     4
++#define PR_ALIGN_OF_LONG    4
++#define PR_ALIGN_OF_INT64   4
++#define PR_ALIGN_OF_FLOAT   4
++#define PR_ALIGN_OF_DOUBLE  4
++#define PR_ALIGN_OF_POINTER 4
++#define PR_ALIGN_OF_WORD    4
++
++#define PR_BYTES_PER_WORD_LOG2   2
++#define PR_BYTES_PER_DWORD_LOG2  3
++
+ #else
+ #error "Unknown CPU architecture"
+diff -Nura nspr-4.10.6.nios2/nspr/pr/include/md/_linux.h nspr-4.10.6/nspr/pr/include/md/_linux.h
+--- nspr-4.10.6.nios2/nspr/pr/include/md/_linux.h      2014-06-18 10:29:15.817361459 -0300
++++ nspr-4.10.6/nspr/pr/include/md/_linux.h    2014-06-18 10:26:59.909768537 -0300
+@@ -55,6 +55,8 @@
+ #define _PR_SI_ARCHITECTURE "avr32"
+ #elif defined(__m32r__)
+ #define _PR_SI_ARCHITECTURE "m32r"
++#elif defined(__microblaze__)
++#define _PR_SI_ARCHITECTURE "microblaze"
+ #elif defined(nios2)
+ #define _PR_SI_ARCHITECTURE "nios2"
+ #else
diff --git a/package/libnspr/libnspr-0001-nios2.patch b/package/libnspr/libnspr-0001-nios2.patch
deleted file mode 100644 (file)
index 4fc6551..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-Add Nios-II support
-
-[Gustavo: update for nspr 4.10.6]
-Signed-off-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
-
-diff -Nura nspr-4.10.6.orig/nspr/pr/include/md/_linux.cfg nspr-4.10.6/nspr/pr/include/md/_linux.cfg
---- nspr-4.10.6.orig/nspr/pr/include/md/_linux.cfg     2014-06-18 10:26:22.447502521 -0300
-+++ nspr-4.10.6/nspr/pr/include/md/_linux.cfg  2014-06-18 10:26:32.746850581 -0300
-@@ -924,6 +924,51 @@
- #define PR_BYTES_PER_WORD_LOG2   2
- #define PR_BYTES_PER_DWORD_LOG2  3
-+#elif defined(nios2)
-+
-+#define IS_LITTLE_ENDIAN 1
-+#undef  IS_BIG_ENDIAN
-+
-+#define PR_BYTES_PER_BYTE   1
-+#define PR_BYTES_PER_SHORT  2
-+#define PR_BYTES_PER_INT    4
-+#define PR_BYTES_PER_INT64  8
-+#define PR_BYTES_PER_LONG   4
-+#define PR_BYTES_PER_FLOAT  4
-+#define PR_BYTES_PER_DOUBLE 8
-+#define PR_BYTES_PER_WORD   4
-+#define PR_BYTES_PER_DWORD  8
-+
-+#define PR_BITS_PER_BYTE    8
-+#define PR_BITS_PER_SHORT   16
-+#define PR_BITS_PER_INT     32
-+#define PR_BITS_PER_INT64   64
-+#define PR_BITS_PER_LONG    32
-+#define PR_BITS_PER_FLOAT   32
-+#define PR_BITS_PER_DOUBLE  64
-+#define PR_BITS_PER_WORD    32
-+
-+#define PR_BITS_PER_BYTE_LOG2   3
-+#define PR_BITS_PER_SHORT_LOG2  4
-+#define PR_BITS_PER_INT_LOG2    5
-+#define PR_BITS_PER_INT64_LOG2  6
-+#define PR_BITS_PER_LONG_LOG2   5
-+#define PR_BITS_PER_FLOAT_LOG2  5
-+#define PR_BITS_PER_DOUBLE_LOG2 6
-+#define PR_BITS_PER_WORD_LOG2   5
-+
-+#define PR_ALIGN_OF_SHORT   2
-+#define PR_ALIGN_OF_INT     4
-+#define PR_ALIGN_OF_LONG    4
-+#define PR_ALIGN_OF_INT64   4
-+#define PR_ALIGN_OF_FLOAT   4
-+#define PR_ALIGN_OF_DOUBLE  4
-+#define PR_ALIGN_OF_POINTER 4
-+#define PR_ALIGN_OF_WORD    4
-+
-+#define PR_BYTES_PER_WORD_LOG2   2
-+#define PR_BYTES_PER_DWORD_LOG2  3
-+
- #else
- #error "Unknown CPU architecture"
-diff -Nura nspr-4.10.6.orig/nspr/pr/include/md/_linux.h nspr-4.10.6/nspr/pr/include/md/_linux.h
---- nspr-4.10.6.orig/nspr/pr/include/md/_linux.h       2014-06-18 10:26:22.446502487 -0300
-+++ nspr-4.10.6/nspr/pr/include/md/_linux.h    2014-06-18 10:26:32.747850615 -0300
-@@ -55,6 +55,8 @@
- #define _PR_SI_ARCHITECTURE "avr32"
- #elif defined(__m32r__)
- #define _PR_SI_ARCHITECTURE "m32r"
-+#elif defined(nios2)
-+#define _PR_SI_ARCHITECTURE "nios2"
- #else
- #error "Unknown CPU architecture"
- #endif
diff --git a/package/libnspr/libnspr-0002-microblaze.patch b/package/libnspr/libnspr-0002-microblaze.patch
deleted file mode 100644 (file)
index 30b17f3..0000000
+++ /dev/null
@@ -1,77 +0,0 @@
-Add Microblaze support
-
-[Gustavo: update for nspr 4.10.6]
-Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
-
-diff -Nura nspr-4.10.6.nios2/nspr/pr/include/md/_linux.cfg nspr-4.10.6/nspr/pr/include/md/_linux.cfg
---- nspr-4.10.6.nios2/nspr/pr/include/md/_linux.cfg    2014-06-18 10:29:15.816361425 -0300
-+++ nspr-4.10.6/nspr/pr/include/md/_linux.cfg  2014-06-18 10:26:59.908768508 -0300
-@@ -969,6 +969,56 @@
- #define PR_BYTES_PER_WORD_LOG2   2
- #define PR_BYTES_PER_DWORD_LOG2  3
-+#elif defined(__microblaze__)
-+
-+#if defined(__BIG_ENDIAN__)
-+#define IS_BIG_ENDIAN 1
-+#undef  IS_LITTLE_ENDIAN
-+#else
-+#define IS_LITTLE_ENDIAN 1
-+#undef  IS_BIG_ENDIAN
-+#endif
-+
-+#define PR_BYTES_PER_BYTE   1
-+#define PR_BYTES_PER_SHORT  2
-+#define PR_BYTES_PER_INT    4
-+#define PR_BYTES_PER_INT64  8
-+#define PR_BYTES_PER_LONG   4
-+#define PR_BYTES_PER_FLOAT  4
-+#define PR_BYTES_PER_DOUBLE 8
-+#define PR_BYTES_PER_WORD   4
-+#define PR_BYTES_PER_DWORD  8
-+
-+#define PR_BITS_PER_BYTE    8
-+#define PR_BITS_PER_SHORT   16
-+#define PR_BITS_PER_INT     32
-+#define PR_BITS_PER_INT64   64
-+#define PR_BITS_PER_LONG    32
-+#define PR_BITS_PER_FLOAT   32
-+#define PR_BITS_PER_DOUBLE  64
-+#define PR_BITS_PER_WORD    32
-+
-+#define PR_BITS_PER_BYTE_LOG2   3
-+#define PR_BITS_PER_SHORT_LOG2  4
-+#define PR_BITS_PER_INT_LOG2    5
-+#define PR_BITS_PER_INT64_LOG2  6
-+#define PR_BITS_PER_LONG_LOG2   5
-+#define PR_BITS_PER_FLOAT_LOG2  5
-+#define PR_BITS_PER_DOUBLE_LOG2 6
-+#define PR_BITS_PER_WORD_LOG2   5
-+
-+#define PR_ALIGN_OF_SHORT   2
-+#define PR_ALIGN_OF_INT     4
-+#define PR_ALIGN_OF_LONG    4
-+#define PR_ALIGN_OF_INT64   4
-+#define PR_ALIGN_OF_FLOAT   4
-+#define PR_ALIGN_OF_DOUBLE  4
-+#define PR_ALIGN_OF_POINTER 4
-+#define PR_ALIGN_OF_WORD    4
-+
-+#define PR_BYTES_PER_WORD_LOG2   2
-+#define PR_BYTES_PER_DWORD_LOG2  3
-+
- #else
- #error "Unknown CPU architecture"
-diff -Nura nspr-4.10.6.nios2/nspr/pr/include/md/_linux.h nspr-4.10.6/nspr/pr/include/md/_linux.h
---- nspr-4.10.6.nios2/nspr/pr/include/md/_linux.h      2014-06-18 10:29:15.817361459 -0300
-+++ nspr-4.10.6/nspr/pr/include/md/_linux.h    2014-06-18 10:26:59.909768537 -0300
-@@ -55,6 +55,8 @@
- #define _PR_SI_ARCHITECTURE "avr32"
- #elif defined(__m32r__)
- #define _PR_SI_ARCHITECTURE "m32r"
-+#elif defined(__microblaze__)
-+#define _PR_SI_ARCHITECTURE "microblaze"
- #elif defined(nios2)
- #define _PR_SI_ARCHITECTURE "nios2"
- #else
diff --git a/package/libnss/0001-cross-compile.patch b/package/libnss/0001-cross-compile.patch
new file mode 100644 (file)
index 0000000..31de71b
--- /dev/null
@@ -0,0 +1,48 @@
+This patch allows us to set a value for the cross compiler via TARGETCC without
+setting CC on the command line. CC is used for host tools as well as cross
+compiled code so we cannot define it on the command line without breaking
+the host tools build.
+
+[Gustavo: update for nss 3.16.1]
+[baruch: add OPTIMIZER handling]
+Signed-off-by: Will Newton <will.newton@imgtec.com>
+
+diff -Nuar nss-3.16.1-orig/nss/coreconf/Linux.mk nss-3.16.1/nss/coreconf/Linux.mk
+--- nss-3.16.1-orig/nss/coreconf/Linux.mk      2014-05-02 06:27:18.000000000 +0300
++++ nss-3.16.1/nss/coreconf/Linux.mk   2014-07-01 02:38:18.701480512 +0300
+@@ -16,9 +16,13 @@
+       IMPL_STRATEGY = _PTH
+ endif
+-CC                    = gcc
+-CCC                   = g++
+-RANLIB                        = ranlib
++TARGETCC              = gcc
++TARGETCCC             = g++
++TARGETRANLIB          = ranlib
++
++CC                    = $(TARGETCC)
++CCC                   = $(TARGETCCC)
++RANLIB                        = $(TARGETRANLIB)
+ DEFAULT_COMPILER = gcc
+@@ -125,6 +129,7 @@
+ endif
+ endif
++OPTIMIZER = $(TARGET_OPTIMIZER)
+ ifeq ($(USE_PTHREADS),1)
+ OS_PTHREAD = -lpthread 
+diff -Nuar nss-3.16.1-orig/nss/coreconf/nsinstall/Makefile nss-3.16.1/nss/coreconf/nsinstall/Makefile
+--- nss-3.16.1-orig/nss/coreconf/nsinstall/Makefile    2014-05-02 06:27:18.000000000 +0300
++++ nss-3.16.1/nss/coreconf/nsinstall/Makefile 2014-07-01 02:38:48.102185011 +0300
+@@ -31,6 +31,7 @@
+ ifdef NATIVE_FLAGS
+ OS_CFLAGS=$(NATIVE_FLAGS)
++OPTIMIZER=
+ endif
+ include $(DEPTH)/coreconf/rules.mk
diff --git a/package/libnss/0002-uclibc.patch b/package/libnss/0002-uclibc.patch
new file mode 100644 (file)
index 0000000..b81db93
--- /dev/null
@@ -0,0 +1,20 @@
+uCLibc does not define RTLD_NOLOAD.
+
+[Gustavo: update for nss 3.16.1]
+Signed-off-by: Will Newton <will.newton@imgtec.com>
+
+diff -Nura nss-3.16.1.orig/nss/lib/freebl/stubs.c nss-3.16.1/nss/lib/freebl/stubs.c
+--- nss-3.16.1.orig/nss/lib/freebl/stubs.c     2014-06-18 10:34:30.529997002 -0300
++++ nss-3.16.1/nss/lib/freebl/stubs.c  2014-06-18 10:36:25.508882650 -0300
+@@ -594,6 +594,11 @@
+     return SECSuccess;
+ }
++/* uClibc does not define RTLD_NOLOAD. */
++#ifndef RTLD_NOLOAD
++#define RTLD_NOLOAD 0
++#endif
++
+ /*
+  * fetch the library if it's loaded. For NSS it should already be loaded
+  */
diff --git a/package/libnss/libnss-0001-cross-compile.patch b/package/libnss/libnss-0001-cross-compile.patch
deleted file mode 100644 (file)
index 31de71b..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-This patch allows us to set a value for the cross compiler via TARGETCC without
-setting CC on the command line. CC is used for host tools as well as cross
-compiled code so we cannot define it on the command line without breaking
-the host tools build.
-
-[Gustavo: update for nss 3.16.1]
-[baruch: add OPTIMIZER handling]
-Signed-off-by: Will Newton <will.newton@imgtec.com>
-
-diff -Nuar nss-3.16.1-orig/nss/coreconf/Linux.mk nss-3.16.1/nss/coreconf/Linux.mk
---- nss-3.16.1-orig/nss/coreconf/Linux.mk      2014-05-02 06:27:18.000000000 +0300
-+++ nss-3.16.1/nss/coreconf/Linux.mk   2014-07-01 02:38:18.701480512 +0300
-@@ -16,9 +16,13 @@
-       IMPL_STRATEGY = _PTH
- endif
--CC                    = gcc
--CCC                   = g++
--RANLIB                        = ranlib
-+TARGETCC              = gcc
-+TARGETCCC             = g++
-+TARGETRANLIB          = ranlib
-+
-+CC                    = $(TARGETCC)
-+CCC                   = $(TARGETCCC)
-+RANLIB                        = $(TARGETRANLIB)
- DEFAULT_COMPILER = gcc
-@@ -125,6 +129,7 @@
- endif
- endif
-+OPTIMIZER = $(TARGET_OPTIMIZER)
- ifeq ($(USE_PTHREADS),1)
- OS_PTHREAD = -lpthread 
-diff -Nuar nss-3.16.1-orig/nss/coreconf/nsinstall/Makefile nss-3.16.1/nss/coreconf/nsinstall/Makefile
---- nss-3.16.1-orig/nss/coreconf/nsinstall/Makefile    2014-05-02 06:27:18.000000000 +0300
-+++ nss-3.16.1/nss/coreconf/nsinstall/Makefile 2014-07-01 02:38:48.102185011 +0300
-@@ -31,6 +31,7 @@
- ifdef NATIVE_FLAGS
- OS_CFLAGS=$(NATIVE_FLAGS)
-+OPTIMIZER=
- endif
- include $(DEPTH)/coreconf/rules.mk
diff --git a/package/libnss/libnss-0002-uclibc.patch b/package/libnss/libnss-0002-uclibc.patch
deleted file mode 100644 (file)
index b81db93..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-uCLibc does not define RTLD_NOLOAD.
-
-[Gustavo: update for nss 3.16.1]
-Signed-off-by: Will Newton <will.newton@imgtec.com>
-
-diff -Nura nss-3.16.1.orig/nss/lib/freebl/stubs.c nss-3.16.1/nss/lib/freebl/stubs.c
---- nss-3.16.1.orig/nss/lib/freebl/stubs.c     2014-06-18 10:34:30.529997002 -0300
-+++ nss-3.16.1/nss/lib/freebl/stubs.c  2014-06-18 10:36:25.508882650 -0300
-@@ -594,6 +594,11 @@
-     return SECSuccess;
- }
-+/* uClibc does not define RTLD_NOLOAD. */
-+#ifndef RTLD_NOLOAD
-+#define RTLD_NOLOAD 0
-+#endif
-+
- /*
-  * fetch the library if it's loaded. For NSS it should already be loaded
-  */
diff --git a/package/libpcap/0001-remove-libnl-include-path.patch b/package/libpcap/0001-remove-libnl-include-path.patch
new file mode 100644 (file)
index 0000000..7b7106b
--- /dev/null
@@ -0,0 +1,16 @@
+Remove hardcoded path to libnl3 include directory
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/configure.in
+===================================================================
+--- a/configure.in
++++ b/configure.in
+@@ -445,7 +445,6 @@
+                       AC_DEFINE(HAVE_LIBNL_3_x,1,[if libnl exists and is version 3.x])
+                       AC_DEFINE(HAVE_LIBNL_NLE,1,[libnl has NLE_FAILURE])
+                       AC_DEFINE(HAVE_LIBNL_SOCKETS,1,[libnl has new-style socket api])
+-                      V_INCLS="$V_INCLS -I/usr/include/libnl3"
+                       have_any_nl="yes"
+               ])
diff --git a/package/libpcap/0002-configure.in-uclinux-is-also-linux.patch b/package/libpcap/0002-configure.in-uclinux-is-also-linux.patch
new file mode 100644 (file)
index 0000000..55be25e
--- /dev/null
@@ -0,0 +1,39 @@
+From a904d1e35be72d0821a6680a75060815bce86642 Mon Sep 17 00:00:00 2001
+Message-Id: <a904d1e35be72d0821a6680a75060815bce86642.1406266983.git.baruch@tkos.co.il>
+From: Baruch Siach <baruch@tkos.co.il>
+Date: Fri, 25 Jul 2014 07:28:47 +0300
+Subject: [PATCH] configure.in: uclinux is also linux
+
+Also we need -lpthread for the test to build for noMMU targets.
+
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+---
+ configure.in | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/configure.in b/configure.in
+index 4530aed3a7d0..63f708b9b855 100644
+--- a/configure.in
++++ b/configure.in
+@@ -1539,7 +1539,7 @@ AC_ARG_ENABLE([canusb],
+ if test "x$enable_canusb" != "xno" ; then
+       dnl check for canusb support
+       case "$host_os" in
+-      linux*)
++      linux*|uclinux*)
+               AC_CHECK_HEADER(libusb-1.0/libusb.h,
+               [
+                   AC_CHECK_LIB(usb-1.0, libusb_init,
+@@ -1549,7 +1549,8 @@ if test "x$enable_canusb" != "xno" ; then
+                       LIBS="-lusb-1.0 -lpthread $LIBS"
+                       ac_lbl_has_libusb=yes
+                   ],
+-                  ac_lbl_has_libusb=no
++                  ac_lbl_has_libusb=no,
++                  -lpthread
+                   )
+               ],
+               ac_lbl_has_libusb=no
+-- 
+2.0.1
+
diff --git a/package/libpcap/libpcap-0001-remove-libnl-include-path.patch b/package/libpcap/libpcap-0001-remove-libnl-include-path.patch
deleted file mode 100644 (file)
index 7b7106b..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-Remove hardcoded path to libnl3 include directory
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/configure.in
-===================================================================
---- a/configure.in
-+++ b/configure.in
-@@ -445,7 +445,6 @@
-                       AC_DEFINE(HAVE_LIBNL_3_x,1,[if libnl exists and is version 3.x])
-                       AC_DEFINE(HAVE_LIBNL_NLE,1,[libnl has NLE_FAILURE])
-                       AC_DEFINE(HAVE_LIBNL_SOCKETS,1,[libnl has new-style socket api])
--                      V_INCLS="$V_INCLS -I/usr/include/libnl3"
-                       have_any_nl="yes"
-               ])
diff --git a/package/libpcap/libpcap-0002-configure.in-uclinux-is-also-linux.patch b/package/libpcap/libpcap-0002-configure.in-uclinux-is-also-linux.patch
deleted file mode 100644 (file)
index 55be25e..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-From a904d1e35be72d0821a6680a75060815bce86642 Mon Sep 17 00:00:00 2001
-Message-Id: <a904d1e35be72d0821a6680a75060815bce86642.1406266983.git.baruch@tkos.co.il>
-From: Baruch Siach <baruch@tkos.co.il>
-Date: Fri, 25 Jul 2014 07:28:47 +0300
-Subject: [PATCH] configure.in: uclinux is also linux
-
-Also we need -lpthread for the test to build for noMMU targets.
-
-Signed-off-by: Baruch Siach <baruch@tkos.co.il>
----
- configure.in | 5 +++--
- 1 file changed, 3 insertions(+), 2 deletions(-)
-
-diff --git a/configure.in b/configure.in
-index 4530aed3a7d0..63f708b9b855 100644
---- a/configure.in
-+++ b/configure.in
-@@ -1539,7 +1539,7 @@ AC_ARG_ENABLE([canusb],
- if test "x$enable_canusb" != "xno" ; then
-       dnl check for canusb support
-       case "$host_os" in
--      linux*)
-+      linux*|uclinux*)
-               AC_CHECK_HEADER(libusb-1.0/libusb.h,
-               [
-                   AC_CHECK_LIB(usb-1.0, libusb_init,
-@@ -1549,7 +1549,8 @@ if test "x$enable_canusb" != "xno" ; then
-                       LIBS="-lusb-1.0 -lpthread $LIBS"
-                       ac_lbl_has_libusb=yes
-                   ],
--                  ac_lbl_has_libusb=no
-+                  ac_lbl_has_libusb=no,
-+                  -lpthread
-                   )
-               ],
-               ac_lbl_has_libusb=no
--- 
-2.0.1
-
diff --git a/package/libplayer/0001-add-fpic.patch b/package/libplayer/0001-add-fpic.patch
new file mode 100644 (file)
index 0000000..e4b227f
--- /dev/null
@@ -0,0 +1,18 @@
+Add -fPIC to CFLAGS
+
+-fPIC is needed to build shared library code.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/src/Makefile
+===================================================================
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -9,6 +9,7 @@
+ SHARED_LIBNAME_VERSION = $(SHARED_LIBNAME).$(VERSION)
+ SHARED_LIBNAME_MAJOR = $(SHARED_LIBNAME).$(shell echo $(VERSION) | cut -f1 -d.)
+ SHARED_LIBNAME_FLAGS = -shared -Wl,-soname,$(SHARED_LIBNAME_MAJOR)
++CFLAGS = -fPIC
+ ifeq ($(BUILD_STATIC),yes)
+   BUILD_RULES += lib_static
diff --git a/package/libplayer/0002-fix-configure-cflags.patch b/package/libplayer/0002-fix-configure-cflags.patch
new file mode 100644 (file)
index 0000000..186afd5
--- /dev/null
@@ -0,0 +1,41 @@
+From: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
+Subject: [PATCH] libplayer: Fix handling of cflags in configure.
+
+The cflags returned by pkg-config or another config script may consist
+of several arguments for the compiler.  These should not be quoted together
+into a single argument.
+
+Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
+---
+Sent upstream to devel@geexbox.org on July 11, 2012.
+---
+diff -rup libplayer-2.0.1.orig/configure libplayer-2.0.1/configure
+--- libplayer-2.0.1.orig/configure     2010-10-03 19:26:11.000000000 +0200
++++ libplayer-2.0.1/configure  2012-07-10 23:33:02.783701852 +0200
+@@ -342,7 +342,7 @@ check_libconfig(){
+   err=1
+   if `which "$config" 1>/dev/null 2>&1`; then
+     cflags=`$config $ccflags`
+-    [ -n "$cflags" ] && check_cflags "$cflags"
++    [ -n "$cflags" ] && check_cflags $cflags
+     libs=`$config $clibs`
+     if [ -n "$libs" ]; then
+       temp_extralibs "$libs"
+@@ -364,7 +364,7 @@ check_libconfig_exists(){
+   err=1
+   if `which "$config" 1>/dev/null 2>&1`; then
+     cflags=`$config $ccflags`
+-    [ -n "$cflags" ] && temp_cflags "$cflags"
++    [ -n "$cflags" ] && temp_cflags $cflags
+     libs=`$config $clibs`
+     if [ -n "$libs" ]; then
+       temp_extralibs "$libs"
+@@ -386,7 +386,7 @@ check_pkgconfig(){
+   err=1
+   if `which pkg-config 1>/dev/null 2>&1`; then
+     cflags=`pkg-config $pkg $ccflags`
+-    [ -n "$cflags" ] && check_cflags "$cflags"
++    [ -n "$cflags" ] && check_cflags $cflags
+     libs=`pkg-config $pkg $clibs`
+     if [ -n "$libs" ]; then
+       temp_extralibs "$libs"
diff --git a/package/libplayer/libplayer-add-fpic.patch b/package/libplayer/libplayer-add-fpic.patch
deleted file mode 100644 (file)
index e4b227f..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-Add -fPIC to CFLAGS
-
--fPIC is needed to build shared library code.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/src/Makefile
-===================================================================
---- a/src/Makefile
-+++ b/src/Makefile
-@@ -9,6 +9,7 @@
- SHARED_LIBNAME_VERSION = $(SHARED_LIBNAME).$(VERSION)
- SHARED_LIBNAME_MAJOR = $(SHARED_LIBNAME).$(shell echo $(VERSION) | cut -f1 -d.)
- SHARED_LIBNAME_FLAGS = -shared -Wl,-soname,$(SHARED_LIBNAME_MAJOR)
-+CFLAGS = -fPIC
- ifeq ($(BUILD_STATIC),yes)
-   BUILD_RULES += lib_static
diff --git a/package/libplayer/libplayer-fix-configure-cflags.patch b/package/libplayer/libplayer-fix-configure-cflags.patch
deleted file mode 100644 (file)
index 186afd5..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-From: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
-Subject: [PATCH] libplayer: Fix handling of cflags in configure.
-
-The cflags returned by pkg-config or another config script may consist
-of several arguments for the compiler.  These should not be quoted together
-into a single argument.
-
-Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
----
-Sent upstream to devel@geexbox.org on July 11, 2012.
----
-diff -rup libplayer-2.0.1.orig/configure libplayer-2.0.1/configure
---- libplayer-2.0.1.orig/configure     2010-10-03 19:26:11.000000000 +0200
-+++ libplayer-2.0.1/configure  2012-07-10 23:33:02.783701852 +0200
-@@ -342,7 +342,7 @@ check_libconfig(){
-   err=1
-   if `which "$config" 1>/dev/null 2>&1`; then
-     cflags=`$config $ccflags`
--    [ -n "$cflags" ] && check_cflags "$cflags"
-+    [ -n "$cflags" ] && check_cflags $cflags
-     libs=`$config $clibs`
-     if [ -n "$libs" ]; then
-       temp_extralibs "$libs"
-@@ -364,7 +364,7 @@ check_libconfig_exists(){
-   err=1
-   if `which "$config" 1>/dev/null 2>&1`; then
-     cflags=`$config $ccflags`
--    [ -n "$cflags" ] && temp_cflags "$cflags"
-+    [ -n "$cflags" ] && temp_cflags $cflags
-     libs=`$config $clibs`
-     if [ -n "$libs" ]; then
-       temp_extralibs "$libs"
-@@ -386,7 +386,7 @@ check_pkgconfig(){
-   err=1
-   if `which pkg-config 1>/dev/null 2>&1`; then
-     cflags=`pkg-config $pkg $ccflags`
--    [ -n "$cflags" ] && check_cflags "$cflags"
-+    [ -n "$cflags" ] && check_cflags $cflags
-     libs=`pkg-config $pkg $clibs`
-     if [ -n "$libs" ]; then
-       temp_extralibs "$libs"
diff --git a/package/libpthsem/0001-fix-build-on-linux-3.x-host.patch b/package/libpthsem/0001-fix-build-on-linux-3.x-host.patch
new file mode 100644 (file)
index 0000000..21fff4e
--- /dev/null
@@ -0,0 +1,28 @@
+From 2d0450bfa3fb7003098da1a7fe24c3ae140912dc Mon Sep 17 00:00:00 2001
+From: Gregory Hermant <gregory.hermant@calao-systems.com>
+Date: Mon, 22 Oct 2012 15:11:53 +0200
+Subject: [PATCH] pthsem build on Linux 3.x host
+
+
+Signed-off-by: Michael Markstaller <mm@elabnet.de>
+Signed-off-by: Gregory Hermant <gregory.hermant@calao-systems.com>
+---
+ acinclude.m4 |    2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/acinclude.m4 b/acinclude.m4
+index 03b42de..fea9bc8 100644
+--- a/acinclude.m4
++++ b/acinclude.m4
+@@ -892,6 +892,8 @@ case $PLATFORM in
+         case "x`uname -r`" in
+ changequote(, )dnl
+             x2.[23456789]* ) ;;
++changequote(, )dnl
++            x3.* ) ;;
+ changequote([, ])
+             * ) braindead=yes ;;
+         esac
+-- 
+1.7.9.5
+
diff --git a/package/libpthsem/libpthsem-2.0.8-fix-build-on-linux-3.x-host.patch b/package/libpthsem/libpthsem-2.0.8-fix-build-on-linux-3.x-host.patch
deleted file mode 100644 (file)
index 21fff4e..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-From 2d0450bfa3fb7003098da1a7fe24c3ae140912dc Mon Sep 17 00:00:00 2001
-From: Gregory Hermant <gregory.hermant@calao-systems.com>
-Date: Mon, 22 Oct 2012 15:11:53 +0200
-Subject: [PATCH] pthsem build on Linux 3.x host
-
-
-Signed-off-by: Michael Markstaller <mm@elabnet.de>
-Signed-off-by: Gregory Hermant <gregory.hermant@calao-systems.com>
----
- acinclude.m4 |    2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/acinclude.m4 b/acinclude.m4
-index 03b42de..fea9bc8 100644
---- a/acinclude.m4
-+++ b/acinclude.m4
-@@ -892,6 +892,8 @@ case $PLATFORM in
-         case "x`uname -r`" in
- changequote(, )dnl
-             x2.[23456789]* ) ;;
-+changequote(, )dnl
-+            x3.* ) ;;
- changequote([, ])
-             * ) braindead=yes ;;
-         esac
--- 
-1.7.9.5
-
diff --git a/package/librtlsdr/0001-disable_shared_library_target_in_build.patch b/package/librtlsdr/0001-disable_shared_library_target_in_build.patch
new file mode 100644 (file)
index 0000000..b763c48
--- /dev/null
@@ -0,0 +1,80 @@
+librtlsdr: disable shared library target in build
+
+Disable shared library target if BUILD_SHARED_LIBS if OFF.
+
+Signed-off-by: Yuvaraj Patil <yuvaraj.patil@wipro.com>
+---
+diff -Nurp librtlsdr-v0.5.3_orig/src/CMakeLists.txt librtlsdr-v0.5.3/src/CMakeLists.txt
+--- librtlsdr-v0.5.3_orig/src/CMakeLists.txt   2014-09-24 17:31:40.610337074 +0530
++++ librtlsdr-v0.5.3/src/CMakeLists.txt        2014-09-24 17:32:38.838334632 +0530
+@@ -20,6 +20,7 @@
+ ########################################################################
+ # Setup library
+ ########################################################################
++if(BUILD_SHARED_LIBS)
+ add_library(rtlsdr_shared SHARED
+     librtlsdr.c
+     tuner_e4k.c
+@@ -37,6 +38,7 @@ set_target_properties(rtlsdr_shared PROP
+ set_target_properties(rtlsdr_shared PROPERTIES OUTPUT_NAME rtlsdr)
+ set_target_properties(rtlsdr_shared PROPERTIES SOVERSION ${MAJOR_VERSION})
+ set_target_properties(rtlsdr_shared PROPERTIES VERSION ${LIBVER})
++endif()
+ add_library(rtlsdr_static STATIC
+     librtlsdr.c
+@@ -71,6 +73,12 @@ if(NOT WIN32)
+ set_target_properties(rtlsdr_static PROPERTIES OUTPUT_NAME rtlsdr)
+ endif()
++if(BUILD_SHARED_LIBS)
++set(rtlsdr_lib rtlsdr_shared)
++else()
++set(rtlsdr_lib rtlsdr_static)
++endif()
++
+ ########################################################################
+ # Build utility
+ ########################################################################
+@@ -81,33 +89,33 @@ add_executable(rtl_fm rtl_fm.c)
+ add_executable(rtl_eeprom rtl_eeprom.c)
+ add_executable(rtl_adsb rtl_adsb.c)
+ add_executable(rtl_power rtl_power.c)
+-set(INSTALL_TARGETS rtlsdr_shared rtlsdr_static rtl_sdr rtl_tcp rtl_test rtl_fm rtl_eeprom rtl_adsb rtl_power)
++set(INSTALL_TARGETS ${rtlsdr_lib} rtl_sdr rtl_tcp rtl_test rtl_fm rtl_eeprom rtl_adsb rtl_power)
+-target_link_libraries(rtl_sdr rtlsdr_shared convenience_static
++target_link_libraries(rtl_sdr ${rtlsdr_lib} convenience_static
+     ${LIBUSB_LIBRARIES}
+     ${CMAKE_THREAD_LIBS_INIT}
+ )
+-target_link_libraries(rtl_tcp rtlsdr_shared convenience_static
++target_link_libraries(rtl_tcp ${rtlsdr_lib} convenience_static
+     ${LIBUSB_LIBRARIES}
+     ${CMAKE_THREAD_LIBS_INIT}
+ )
+-target_link_libraries(rtl_test rtlsdr_shared convenience_static
++target_link_libraries(rtl_test ${rtlsdr_lib} convenience_static
+     ${LIBUSB_LIBRARIES}
+     ${CMAKE_THREAD_LIBS_INIT}
+ )
+-target_link_libraries(rtl_fm rtlsdr_shared convenience_static
++target_link_libraries(rtl_fm ${rtlsdr_lib} convenience_static
+     ${LIBUSB_LIBRARIES}
+     ${CMAKE_THREAD_LIBS_INIT}
+ )
+-target_link_libraries(rtl_eeprom rtlsdr_shared convenience_static
++target_link_libraries(rtl_eeprom ${rtlsdr_lib} convenience_static
+     ${LIBUSB_LIBRARIES}
+     ${CMAKE_THREAD_LIBS_INIT}
+ )
+-target_link_libraries(rtl_adsb rtlsdr_shared convenience_static
++target_link_libraries(rtl_adsb ${rtlsdr_lib} convenience_static
+     ${LIBUSB_LIBRARIES}
+     ${CMAKE_THREAD_LIBS_INIT}
+ )
+-target_link_libraries(rtl_power rtlsdr_shared convenience_static
++target_link_libraries(rtl_power ${rtlsdr_lib} convenience_static
+     ${LIBUSB_LIBRARIES}
+     ${CMAKE_THREAD_LIBS_INIT}
+ )
diff --git a/package/librtlsdr/librtlsdr_001_disable_shared_library_target_in_build.patch b/package/librtlsdr/librtlsdr_001_disable_shared_library_target_in_build.patch
deleted file mode 100644 (file)
index b763c48..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-librtlsdr: disable shared library target in build
-
-Disable shared library target if BUILD_SHARED_LIBS if OFF.
-
-Signed-off-by: Yuvaraj Patil <yuvaraj.patil@wipro.com>
----
-diff -Nurp librtlsdr-v0.5.3_orig/src/CMakeLists.txt librtlsdr-v0.5.3/src/CMakeLists.txt
---- librtlsdr-v0.5.3_orig/src/CMakeLists.txt   2014-09-24 17:31:40.610337074 +0530
-+++ librtlsdr-v0.5.3/src/CMakeLists.txt        2014-09-24 17:32:38.838334632 +0530
-@@ -20,6 +20,7 @@
- ########################################################################
- # Setup library
- ########################################################################
-+if(BUILD_SHARED_LIBS)
- add_library(rtlsdr_shared SHARED
-     librtlsdr.c
-     tuner_e4k.c
-@@ -37,6 +38,7 @@ set_target_properties(rtlsdr_shared PROP
- set_target_properties(rtlsdr_shared PROPERTIES OUTPUT_NAME rtlsdr)
- set_target_properties(rtlsdr_shared PROPERTIES SOVERSION ${MAJOR_VERSION})
- set_target_properties(rtlsdr_shared PROPERTIES VERSION ${LIBVER})
-+endif()
- add_library(rtlsdr_static STATIC
-     librtlsdr.c
-@@ -71,6 +73,12 @@ if(NOT WIN32)
- set_target_properties(rtlsdr_static PROPERTIES OUTPUT_NAME rtlsdr)
- endif()
-+if(BUILD_SHARED_LIBS)
-+set(rtlsdr_lib rtlsdr_shared)
-+else()
-+set(rtlsdr_lib rtlsdr_static)
-+endif()
-+
- ########################################################################
- # Build utility
- ########################################################################
-@@ -81,33 +89,33 @@ add_executable(rtl_fm rtl_fm.c)
- add_executable(rtl_eeprom rtl_eeprom.c)
- add_executable(rtl_adsb rtl_adsb.c)
- add_executable(rtl_power rtl_power.c)
--set(INSTALL_TARGETS rtlsdr_shared rtlsdr_static rtl_sdr rtl_tcp rtl_test rtl_fm rtl_eeprom rtl_adsb rtl_power)
-+set(INSTALL_TARGETS ${rtlsdr_lib} rtl_sdr rtl_tcp rtl_test rtl_fm rtl_eeprom rtl_adsb rtl_power)
--target_link_libraries(rtl_sdr rtlsdr_shared convenience_static
-+target_link_libraries(rtl_sdr ${rtlsdr_lib} convenience_static
-     ${LIBUSB_LIBRARIES}
-     ${CMAKE_THREAD_LIBS_INIT}
- )
--target_link_libraries(rtl_tcp rtlsdr_shared convenience_static
-+target_link_libraries(rtl_tcp ${rtlsdr_lib} convenience_static
-     ${LIBUSB_LIBRARIES}
-     ${CMAKE_THREAD_LIBS_INIT}
- )
--target_link_libraries(rtl_test rtlsdr_shared convenience_static
-+target_link_libraries(rtl_test ${rtlsdr_lib} convenience_static
-     ${LIBUSB_LIBRARIES}
-     ${CMAKE_THREAD_LIBS_INIT}
- )
--target_link_libraries(rtl_fm rtlsdr_shared convenience_static
-+target_link_libraries(rtl_fm ${rtlsdr_lib} convenience_static
-     ${LIBUSB_LIBRARIES}
-     ${CMAKE_THREAD_LIBS_INIT}
- )
--target_link_libraries(rtl_eeprom rtlsdr_shared convenience_static
-+target_link_libraries(rtl_eeprom ${rtlsdr_lib} convenience_static
-     ${LIBUSB_LIBRARIES}
-     ${CMAKE_THREAD_LIBS_INIT}
- )
--target_link_libraries(rtl_adsb rtlsdr_shared convenience_static
-+target_link_libraries(rtl_adsb ${rtlsdr_lib} convenience_static
-     ${LIBUSB_LIBRARIES}
-     ${CMAKE_THREAD_LIBS_INIT}
- )
--target_link_libraries(rtl_power rtlsdr_shared convenience_static
-+target_link_libraries(rtl_power ${rtlsdr_lib} convenience_static
-     ${LIBUSB_LIBRARIES}
-     ${CMAKE_THREAD_LIBS_INIT}
- )
diff --git a/package/libseccomp/0001-use-system-headers-from-sysroot.patch b/package/libseccomp/0001-use-system-headers-from-sysroot.patch
new file mode 100644 (file)
index 0000000..0997edd
--- /dev/null
@@ -0,0 +1,17 @@
+configure: check headers in sysroot, not in host's system headers
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+diff -durN libseccomp-1.0.0.orig/configure libseccomp-1.0.0/configure
+--- libseccomp-1.0.0.orig/configure    2012-07-27 22:35:05.000000000 +0200
++++ libseccomp-1.0.0/configure 2012-10-27 00:12:50.739196219 +0200
+@@ -205,7 +205,8 @@
+ #
+ # system seccomp includes
+-if [[ -r "/usr/include/linux/seccomp.h" ]]; then
++# ${SYSROOT} added by buildroot for cross-compilation
++if [[ -r "${SYSROOT}/usr/include/linux/seccomp.h" ]]; then
+       opt_sysinc_seccomp="yes"
+ else
+       opt_sysinc_seccomp="no"
diff --git a/package/libseccomp/0002-Remove-the-dependency-on-proc.patch b/package/libseccomp/0002-Remove-the-dependency-on-proc.patch
new file mode 100644 (file)
index 0000000..081bca7
--- /dev/null
@@ -0,0 +1,42 @@
+From 58c34ae1343e2a452e08cd160936a231bcdb67a1 Mon Sep 17 00:00:00 2001
+From: Maxime Ripard <maxime.ripard@free-electrons.com>
+Date: Tue, 18 Dec 2012 09:57:47 +0100
+Subject: [PATCH] Remove the dependency on /proc
+
+The Makefile relied on a broken logic for the INSTALL_PC_MACRO.
+It was used like this: $(INSTALL_PC_MACRO) file.
+
+The INSTALL_PC_MACRO was then expanded with a trailing sharp, to pass
+the name of the file to install as a comment at the end of the command.
+
+And then, to retrieve the file to copy, it used the $NF variable of awk
+on the /proc/self/cmdline file to happily reinvent the argument
+mechanism.
+
+This patch removes of this crazy stuff by using the -t option of
+install, that keeps the same calling convention.
+
+Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
+---
+ macros.mk |    5 ++---
+ 1 file changed, 2 insertions(+), 3 deletions(-)
+
+diff --git a/macros.mk b/macros.mk
+index 6162900..eb61ead 100644
+--- a/macros.mk
++++ b/macros.mk
+@@ -150,9 +150,8 @@ endif
+ INSTALL_PC_MACRO += \
+               $(INSTALL) -o $(INSTALL_OWNER) -g $(INSTALL_GROUP) \
+                       -d "$(INSTALL_LIB_DIR)/pkgconfig"; \
+-              $(INSTALL) -o $(INSTALL_OWNER) -g $(INSTALL_GROUP) -m 0644 \
+-                      "$$(cat /proc/$$$$/cmdline | awk '{print $$(NF)}')" \
+-                      "$(INSTALL_LIB_DIR)/pkgconfig"; \#
++              $(INSTALL) -o $(INSTALL_OWNER) -g $(INSTALL_GROUP) -m 0644 -t \
++                      "$(INSTALL_LIB_DIR)/pkgconfig"
+ ifeq ($(V),0)
+       INSTALL_INC_MACRO = @echo " INSTALL $^ ($(INSTALL_INC_DIR))";
+-- 
+1.7.9.5
+
diff --git a/package/libseccomp/libseccomp-0001-use-system-headers-from-sysroot.patch b/package/libseccomp/libseccomp-0001-use-system-headers-from-sysroot.patch
deleted file mode 100644 (file)
index 0997edd..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-configure: check headers in sysroot, not in host's system headers
-
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
-
-diff -durN libseccomp-1.0.0.orig/configure libseccomp-1.0.0/configure
---- libseccomp-1.0.0.orig/configure    2012-07-27 22:35:05.000000000 +0200
-+++ libseccomp-1.0.0/configure 2012-10-27 00:12:50.739196219 +0200
-@@ -205,7 +205,8 @@
- #
- # system seccomp includes
--if [[ -r "/usr/include/linux/seccomp.h" ]]; then
-+# ${SYSROOT} added by buildroot for cross-compilation
-+if [[ -r "${SYSROOT}/usr/include/linux/seccomp.h" ]]; then
-       opt_sysinc_seccomp="yes"
- else
-       opt_sysinc_seccomp="no"
diff --git a/package/libseccomp/libseccomp-0002-Remove-the-dependency-on-proc.patch b/package/libseccomp/libseccomp-0002-Remove-the-dependency-on-proc.patch
deleted file mode 100644 (file)
index 081bca7..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-From 58c34ae1343e2a452e08cd160936a231bcdb67a1 Mon Sep 17 00:00:00 2001
-From: Maxime Ripard <maxime.ripard@free-electrons.com>
-Date: Tue, 18 Dec 2012 09:57:47 +0100
-Subject: [PATCH] Remove the dependency on /proc
-
-The Makefile relied on a broken logic for the INSTALL_PC_MACRO.
-It was used like this: $(INSTALL_PC_MACRO) file.
-
-The INSTALL_PC_MACRO was then expanded with a trailing sharp, to pass
-the name of the file to install as a comment at the end of the command.
-
-And then, to retrieve the file to copy, it used the $NF variable of awk
-on the /proc/self/cmdline file to happily reinvent the argument
-mechanism.
-
-This patch removes of this crazy stuff by using the -t option of
-install, that keeps the same calling convention.
-
-Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
----
- macros.mk |    5 ++---
- 1 file changed, 2 insertions(+), 3 deletions(-)
-
-diff --git a/macros.mk b/macros.mk
-index 6162900..eb61ead 100644
---- a/macros.mk
-+++ b/macros.mk
-@@ -150,9 +150,8 @@ endif
- INSTALL_PC_MACRO += \
-               $(INSTALL) -o $(INSTALL_OWNER) -g $(INSTALL_GROUP) \
-                       -d "$(INSTALL_LIB_DIR)/pkgconfig"; \
--              $(INSTALL) -o $(INSTALL_OWNER) -g $(INSTALL_GROUP) -m 0644 \
--                      "$$(cat /proc/$$$$/cmdline | awk '{print $$(NF)}')" \
--                      "$(INSTALL_LIB_DIR)/pkgconfig"; \#
-+              $(INSTALL) -o $(INSTALL_OWNER) -g $(INSTALL_GROUP) -m 0644 -t \
-+                      "$(INSTALL_LIB_DIR)/pkgconfig"
- ifeq ($(V),0)
-       INSTALL_INC_MACRO = @echo " INSTALL $^ ($(INSTALL_INC_DIR))";
--- 
-1.7.9.5
-
diff --git a/package/libsepol/0001-support-static-only.patch b/package/libsepol/0001-support-static-only.patch
new file mode 100644 (file)
index 0000000..b974680
--- /dev/null
@@ -0,0 +1,44 @@
+Add support for static-only build
+
+Instead of unconditionally building shared libraries, this patch
+improves the libsepol build system with a "STATIC" variable, which
+when defined to some non-empty value, will disable the build of shared
+libraries. It allows to support cases where the target architecture
+does not have support for shared libraries.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/src/Makefile
+===================================================================
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -17,7 +17,12 @@
+ CFLAGS ?= -Werror -Wall -W -Wundef -Wshadow -Wmissing-noreturn -Wmissing-format-attribute
+ override CFLAGS += -I. -I../include -D_GNU_SOURCE
+-all: $(LIBA) $(LIBSO) $(LIBPC)
++ALL_TARGETS = $(LIBA) $(LIBPC)
++ifeq ($(STATIC),)
++ALL_TARGETS += $(LIBSO)
++endif
++
++all: $(ALL_TARGETS)
+ $(LIBA):  $(OBJS)
+       $(AR) rcs $@ $^
+@@ -39,11 +44,13 @@
+ install: all
+       test -d $(LIBDIR) || install -m 755 -d $(LIBDIR)
+       install -m 644 $(LIBA) $(LIBDIR)
+-      test -d $(SHLIBDIR) || install -m 755 -d $(SHLIBDIR)
+-      install -m 755 $(LIBSO) $(SHLIBDIR)
+       test -d $(LIBDIR)/pkgconfig || install -m 755 -d $(LIBDIR)/pkgconfig
+       install -m 644 $(LIBPC) $(LIBDIR)/pkgconfig
++ifeq ($(STATIC),)
++      test -d $(SHLIBDIR) || install -m 755 -d $(SHLIBDIR)
++      install -m 755 $(LIBSO) $(SHLIBDIR)
+       cd $(LIBDIR) && ln -sf ../../`basename $(SHLIBDIR)`/$(LIBSO) $(TARGET)
++endif
+ relabel:
+       /sbin/restorecon $(SHLIBDIR)/$(LIBSO)
diff --git a/package/libsepol/libsepol-01-support-static-only.patch b/package/libsepol/libsepol-01-support-static-only.patch
deleted file mode 100644 (file)
index b974680..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-Add support for static-only build
-
-Instead of unconditionally building shared libraries, this patch
-improves the libsepol build system with a "STATIC" variable, which
-when defined to some non-empty value, will disable the build of shared
-libraries. It allows to support cases where the target architecture
-does not have support for shared libraries.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/src/Makefile
-===================================================================
---- a/src/Makefile
-+++ b/src/Makefile
-@@ -17,7 +17,12 @@
- CFLAGS ?= -Werror -Wall -W -Wundef -Wshadow -Wmissing-noreturn -Wmissing-format-attribute
- override CFLAGS += -I. -I../include -D_GNU_SOURCE
--all: $(LIBA) $(LIBSO) $(LIBPC)
-+ALL_TARGETS = $(LIBA) $(LIBPC)
-+ifeq ($(STATIC),)
-+ALL_TARGETS += $(LIBSO)
-+endif
-+
-+all: $(ALL_TARGETS)
- $(LIBA):  $(OBJS)
-       $(AR) rcs $@ $^
-@@ -39,11 +44,13 @@
- install: all
-       test -d $(LIBDIR) || install -m 755 -d $(LIBDIR)
-       install -m 644 $(LIBA) $(LIBDIR)
--      test -d $(SHLIBDIR) || install -m 755 -d $(SHLIBDIR)
--      install -m 755 $(LIBSO) $(SHLIBDIR)
-       test -d $(LIBDIR)/pkgconfig || install -m 755 -d $(LIBDIR)/pkgconfig
-       install -m 644 $(LIBPC) $(LIBDIR)/pkgconfig
-+ifeq ($(STATIC),)
-+      test -d $(SHLIBDIR) || install -m 755 -d $(SHLIBDIR)
-+      install -m 755 $(LIBSO) $(SHLIBDIR)
-       cd $(LIBDIR) && ln -sf ../../`basename $(SHLIBDIR)`/$(LIBSO) $(TARGET)
-+endif
- relabel:
-       /sbin/restorecon $(SHLIBDIR)/$(LIBSO)
diff --git a/package/libserial/0001-disable-python-bindings.patch b/package/libserial/0001-disable-python-bindings.patch
new file mode 100644 (file)
index 0000000..54b5cb6
--- /dev/null
@@ -0,0 +1,25 @@
+Disable build of Python bindings, which requires the sipconfig module.
+
+Signed-off-by: Simon Dawson <spdawson@gmail.com>
+
+diff -Nurp a/Makefile.am b/Makefile.am
+--- a/Makefile.am      2008-11-12 01:27:31.000000000 +0000
++++ b/Makefile.am      2013-04-16 09:41:13.476002178 +0100
+@@ -1,4 +1,4 @@
+-SUBDIRS=src doc examples sip
++SUBDIRS=src doc examples
+ EXTRA_DIST = doxygen.conf.in Makefile.dist libserial.spec libserial.pc
+diff -Nurp a/Makefile.in b/Makefile.in
+--- a/Makefile.in      2008-11-12 01:28:14.000000000 +0000
++++ b/Makefile.in      2013-04-16 09:41:05.628013626 +0100
+@@ -197,7 +197,7 @@ sysconfdir = @sysconfdir@
+ target_alias = @target_alias@
+ top_builddir = @top_builddir@
+ top_srcdir = @top_srcdir@
+-SUBDIRS = src doc examples sip
++SUBDIRS = src doc examples
+ EXTRA_DIST = doxygen.conf.in Makefile.dist libserial.spec libserial.pc
+ pkgconfigdir = $(libdir)/pkgconfig
+ pkgconfig_DATA = libserial.pc
diff --git a/package/libserial/0002-add-missing-header-include.patch b/package/libserial/0002-add-missing-header-include.patch
new file mode 100644 (file)
index 0000000..a022637
--- /dev/null
@@ -0,0 +1,15 @@
+Add a missing header include, to fix a build error.
+
+Signed-off-by: Simon Dawson <spdawson@gmail.com>
+
+diff -Nurp a/src/SerialPort.cpp b/src/SerialPort.cpp
+--- a/src/SerialPort.cpp       2008-11-12 01:27:30.000000000 +0000
++++ b/src/SerialPort.cpp       2013-04-23 15:43:41.537495852 +0100
+@@ -27,6 +27,7 @@
+ #include <cassert>
+ #include <termios.h>
+ #include <fcntl.h>
++#include <unistd.h>
+ #include <sys/ioctl.h>
+ #include <sys/time.h>
+ #include <signal.h>
diff --git a/package/libserial/libserial-0001-disable-python-bindings.patch b/package/libserial/libserial-0001-disable-python-bindings.patch
deleted file mode 100644 (file)
index 54b5cb6..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-Disable build of Python bindings, which requires the sipconfig module.
-
-Signed-off-by: Simon Dawson <spdawson@gmail.com>
-
-diff -Nurp a/Makefile.am b/Makefile.am
---- a/Makefile.am      2008-11-12 01:27:31.000000000 +0000
-+++ b/Makefile.am      2013-04-16 09:41:13.476002178 +0100
-@@ -1,4 +1,4 @@
--SUBDIRS=src doc examples sip
-+SUBDIRS=src doc examples
- EXTRA_DIST = doxygen.conf.in Makefile.dist libserial.spec libserial.pc
-diff -Nurp a/Makefile.in b/Makefile.in
---- a/Makefile.in      2008-11-12 01:28:14.000000000 +0000
-+++ b/Makefile.in      2013-04-16 09:41:05.628013626 +0100
-@@ -197,7 +197,7 @@ sysconfdir = @sysconfdir@
- target_alias = @target_alias@
- top_builddir = @top_builddir@
- top_srcdir = @top_srcdir@
--SUBDIRS = src doc examples sip
-+SUBDIRS = src doc examples
- EXTRA_DIST = doxygen.conf.in Makefile.dist libserial.spec libserial.pc
- pkgconfigdir = $(libdir)/pkgconfig
- pkgconfig_DATA = libserial.pc
diff --git a/package/libserial/libserial-0002-add-missing-header-include.patch b/package/libserial/libserial-0002-add-missing-header-include.patch
deleted file mode 100644 (file)
index a022637..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-Add a missing header include, to fix a build error.
-
-Signed-off-by: Simon Dawson <spdawson@gmail.com>
-
-diff -Nurp a/src/SerialPort.cpp b/src/SerialPort.cpp
---- a/src/SerialPort.cpp       2008-11-12 01:27:30.000000000 +0000
-+++ b/src/SerialPort.cpp       2013-04-23 15:43:41.537495852 +0100
-@@ -27,6 +27,7 @@
- #include <cassert>
- #include <termios.h>
- #include <fcntl.h>
-+#include <unistd.h>
- #include <sys/ioctl.h>
- #include <sys/time.h>
- #include <signal.h>
diff --git a/package/libsndfile/0001-srconly.patch b/package/libsndfile/0001-srconly.patch
new file mode 100644 (file)
index 0000000..417e340
--- /dev/null
@@ -0,0 +1,17 @@
+---
+ Makefile.in |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: libsndfile-1.0.18/Makefile.in
+===================================================================
+--- libsndfile-1.0.18.orig/Makefile.in
++++ libsndfile-1.0.18/Makefile.in
+@@ -260,7 +260,7 @@
+ top_srcdir = @top_srcdir@
+ DISTCHECK_CONFIGURE_FLAGS = --enable-gcc-werror
+ @BUILD_OCTAVE_MOD_TRUE@octave_dir = Octave
+-SUBDIRS = M4 man doc Win32 src $(octave_dir) examples regtest tests programs
++SUBDIRS = src
+ DIST_SUBDIRS = M4 man doc Win32 src Octave examples regtest tests programs
+ EXTRA_DIST = libsndfile.spec.in sndfile.pc.in Mingw-make-dist.sh
+ pkgconfigdir = $(libdir)/pkgconfig
diff --git a/package/libsndfile/libsndfile-srconly.patch b/package/libsndfile/libsndfile-srconly.patch
deleted file mode 100644 (file)
index 417e340..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
----
- Makefile.in |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Index: libsndfile-1.0.18/Makefile.in
-===================================================================
---- libsndfile-1.0.18.orig/Makefile.in
-+++ libsndfile-1.0.18/Makefile.in
-@@ -260,7 +260,7 @@
- top_srcdir = @top_srcdir@
- DISTCHECK_CONFIGURE_FLAGS = --enable-gcc-werror
- @BUILD_OCTAVE_MOD_TRUE@octave_dir = Octave
--SUBDIRS = M4 man doc Win32 src $(octave_dir) examples regtest tests programs
-+SUBDIRS = src
- DIST_SUBDIRS = M4 man doc Win32 src Octave examples regtest tests programs
- EXTRA_DIST = libsndfile.spec.in sndfile.pc.in Mingw-make-dist.sh
- pkgconfigdir = $(libdir)/pkgconfig
diff --git a/package/libstrophe/0001-make-autoreconfable.patch b/package/libstrophe/0001-make-autoreconfable.patch
new file mode 100644 (file)
index 0000000..98da3f4
--- /dev/null
@@ -0,0 +1,13 @@
+Make the package autoreconfigurable
+
+Signed-off-by: Denis Bodor <lefinnois@lefinnois.net>
+
+diff -ur libstrophe.orig/Makefile.am libstrophe/Makefile.am
+--- libstrophe.orig/Makefile.am        2014-03-02 18:58:36.219753865 +0100
++++ libstrophe/Makefile.am     2014-03-02 18:58:02.739752477 +0100
+@@ -1,4 +1,4 @@
+-AUTOMAKE_OPTIONS = subdir-objects
++AUTOMAKE_OPTIONS = subdir-objects foreign
+ CFLAGS = -g -Wall
diff --git a/package/libstrophe/libstrophe-01-make-autoreconfable.patch b/package/libstrophe/libstrophe-01-make-autoreconfable.patch
deleted file mode 100644 (file)
index 98da3f4..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-Make the package autoreconfigurable
-
-Signed-off-by: Denis Bodor <lefinnois@lefinnois.net>
-
-diff -ur libstrophe.orig/Makefile.am libstrophe/Makefile.am
---- libstrophe.orig/Makefile.am        2014-03-02 18:58:36.219753865 +0100
-+++ libstrophe/Makefile.am     2014-03-02 18:58:02.739752477 +0100
-@@ -1,4 +1,4 @@
--AUTOMAKE_OPTIONS = subdir-objects
-+AUTOMAKE_OPTIONS = subdir-objects foreign
- CFLAGS = -g -Wall
diff --git a/package/libsvg/0001-fix-expat-static-declaration.patch b/package/libsvg/0001-fix-expat-static-declaration.patch
new file mode 100644 (file)
index 0000000..58ef286
--- /dev/null
@@ -0,0 +1,33 @@
+Newer expat versions use different declarations of the following functions:
+
+static void _svg_parser_sax_start_element ();
+static void _svg_parser_sax_end_element ();
+static void _svg_parser_sax_characters ();
+
+We need to patch the libsvg source to not follow into a build error like
+   "static declaration of 'foo' follows non-static declaration"
+and use the functions from the expat library instead from the libsvg source.
+
+Patch based on
+http://oe-lite.org/redmine/projects/xorg/repository/revisions/c4df7951e846e1be718f37f2455696a1d0861f3d/entry/recipes/cairo/libsvg-0.1.4/gcc4_and_expat.patch
+
+Signed-off-by: Carsten Schoenert <c.schoenert@gmail.com>
+
+diff -bur libsvg-0.1.4~orig/src/svg_parser_expat.c libsvg-0.1.4/src/svg_parser_expat.c
+--- libsvg-0.1.4~orig/src/svg_parser_expat.c   2005-02-14 11:26:26.000000000 -0600
++++ libsvg-0.1.4/src/svg_parser_expat.c        2006-02-10 21:58:20.000000000 -0600
+@@ -30,6 +30,7 @@
+ #include "svgint.h"
+ #include "svg_hash.h"
++#ifndef LIBSVG_EXPAT
+ static void
+ _svg_parser_sax_start_element (void           *closure,
+                              const XML_Char   *name,
+@@ -43,6 +44,7 @@
+ _svg_parser_sax_characters (void              *closure,
+                           const XML_Char      *ch,
+                           int                 len);
++#endif
+ static void
diff --git a/package/libsvg/libsvg-fix-expat-static-declaration.patch b/package/libsvg/libsvg-fix-expat-static-declaration.patch
deleted file mode 100644 (file)
index 58ef286..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-Newer expat versions use different declarations of the following functions:
-
-static void _svg_parser_sax_start_element ();
-static void _svg_parser_sax_end_element ();
-static void _svg_parser_sax_characters ();
-
-We need to patch the libsvg source to not follow into a build error like
-   "static declaration of 'foo' follows non-static declaration"
-and use the functions from the expat library instead from the libsvg source.
-
-Patch based on
-http://oe-lite.org/redmine/projects/xorg/repository/revisions/c4df7951e846e1be718f37f2455696a1d0861f3d/entry/recipes/cairo/libsvg-0.1.4/gcc4_and_expat.patch
-
-Signed-off-by: Carsten Schoenert <c.schoenert@gmail.com>
-
-diff -bur libsvg-0.1.4~orig/src/svg_parser_expat.c libsvg-0.1.4/src/svg_parser_expat.c
---- libsvg-0.1.4~orig/src/svg_parser_expat.c   2005-02-14 11:26:26.000000000 -0600
-+++ libsvg-0.1.4/src/svg_parser_expat.c        2006-02-10 21:58:20.000000000 -0600
-@@ -30,6 +30,7 @@
- #include "svgint.h"
- #include "svg_hash.h"
-+#ifndef LIBSVG_EXPAT
- static void
- _svg_parser_sax_start_element (void           *closure,
-                              const XML_Char   *name,
-@@ -43,6 +44,7 @@
- _svg_parser_sax_characters (void              *closure,
-                           const XML_Char      *ch,
-                           int                 len);
-+#endif
- static void
diff --git a/package/libtorrent/0001-cross_compile.patch b/package/libtorrent/0001-cross_compile.patch
new file mode 100644 (file)
index 0000000..f86f289
--- /dev/null
@@ -0,0 +1,39 @@
+Fix cross compilation, based on OpenWRT patch.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura libtorrent-0.13.3.orig/configure.ac libtorrent-0.13.3/configure.ac
+--- libtorrent-0.13.3.orig/configure.ac        2012-10-31 07:38:59.345752076 -0300
++++ libtorrent-0.13.3/configure.ac     2012-10-31 07:39:06.454799361 -0300
+@@ -19,7 +19,6 @@
+ AM_INIT_AUTOMAKE
+ AM_CONFIG_HEADER(config.h)
+-AM_PATH_CPPUNIT(1.9.6)
+ AC_PROG_CXX
+diff -Nura libtorrent-0.13.3.orig/scripts/checks.m4 libtorrent-0.13.3/scripts/checks.m4
+--- libtorrent-0.13.3.orig/scripts/checks.m4   2012-10-31 07:38:59.342752057 -0300
++++ libtorrent-0.13.3/scripts/checks.m4        2012-10-31 07:39:06.454799361 -0300
+@@ -96,7 +96,7 @@
+ AC_DEFUN([TORRENT_CHECK_KQUEUE_SOCKET_ONLY], [
+   AC_MSG_CHECKING(whether kqueue supports pipes and ptys)
+-  AC_RUN_IFELSE([AC_LANG_SOURCE([
++  AC_LINK_IFELSE([AC_LANG_SOURCE([
+       #include <fcntl.h>
+       #include <stdlib.h>
+       #include <unistd.h>
+diff -Nura libtorrent-0.13.3.orig/scripts/common.m4 libtorrent-0.13.3/scripts/common.m4
+--- libtorrent-0.13.3.orig/scripts/common.m4   2012-10-31 07:38:59.342752057 -0300
++++ libtorrent-0.13.3/scripts/common.m4        2012-10-31 07:39:32.550972826 -0300
+@@ -223,7 +223,7 @@
+ AC_DEFUN([TORRENT_CHECK_EXECINFO], [
+   AC_MSG_CHECKING(for execinfo.h)
+-  AC_RUN_IFELSE([AC_LANG_SOURCE([
++  AC_LINK_IFELSE([AC_LANG_SOURCE([
+       #include <execinfo.h>
+       int main() { backtrace((void**)0, 0); backtrace_symbols((char**)0, 0); return 0;}
+       ])],
diff --git a/package/libtorrent/libtorrent-cross_compile.patch b/package/libtorrent/libtorrent-cross_compile.patch
deleted file mode 100644 (file)
index f86f289..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-Fix cross compilation, based on OpenWRT patch.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura libtorrent-0.13.3.orig/configure.ac libtorrent-0.13.3/configure.ac
---- libtorrent-0.13.3.orig/configure.ac        2012-10-31 07:38:59.345752076 -0300
-+++ libtorrent-0.13.3/configure.ac     2012-10-31 07:39:06.454799361 -0300
-@@ -19,7 +19,6 @@
- AM_INIT_AUTOMAKE
- AM_CONFIG_HEADER(config.h)
--AM_PATH_CPPUNIT(1.9.6)
- AC_PROG_CXX
-diff -Nura libtorrent-0.13.3.orig/scripts/checks.m4 libtorrent-0.13.3/scripts/checks.m4
---- libtorrent-0.13.3.orig/scripts/checks.m4   2012-10-31 07:38:59.342752057 -0300
-+++ libtorrent-0.13.3/scripts/checks.m4        2012-10-31 07:39:06.454799361 -0300
-@@ -96,7 +96,7 @@
- AC_DEFUN([TORRENT_CHECK_KQUEUE_SOCKET_ONLY], [
-   AC_MSG_CHECKING(whether kqueue supports pipes and ptys)
--  AC_RUN_IFELSE([AC_LANG_SOURCE([
-+  AC_LINK_IFELSE([AC_LANG_SOURCE([
-       #include <fcntl.h>
-       #include <stdlib.h>
-       #include <unistd.h>
-diff -Nura libtorrent-0.13.3.orig/scripts/common.m4 libtorrent-0.13.3/scripts/common.m4
---- libtorrent-0.13.3.orig/scripts/common.m4   2012-10-31 07:38:59.342752057 -0300
-+++ libtorrent-0.13.3/scripts/common.m4        2012-10-31 07:39:32.550972826 -0300
-@@ -223,7 +223,7 @@
- AC_DEFUN([TORRENT_CHECK_EXECINFO], [
-   AC_MSG_CHECKING(for execinfo.h)
--  AC_RUN_IFELSE([AC_LANG_SOURCE([
-+  AC_LINK_IFELSE([AC_LANG_SOURCE([
-       #include <execinfo.h>
-       int main() { backtrace((void**)0, 0); backtrace_symbols((char**)0, 0); return 0;}
-       ])],
diff --git a/package/libubox/0001-drop-legacy-json-c.patch b/package/libubox/0001-drop-legacy-json-c.patch
new file mode 100644 (file)
index 0000000..84bd99a
--- /dev/null
@@ -0,0 +1,34 @@
+[PATCH] libubox: drop legacy json-c support
+
+The cmake logic is wrong (E.G. PKG_CHECK_FOR_MODULES fails unless all
+modules are found), and the legacy libjson.so name is also used by the other
+libjson (http://sourceforge.net/projects/libjson/) which provides an
+incompatible API, so just drop it.
+
+Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
+---
+ CMakeLists.txt |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+Index: libubox-bbd846ec2d72b2629758b69dc122ac0b0f2c3e4b/CMakeLists.txt
+===================================================================
+--- libubox-bbd846ec2d72b2629758b69dc122ac0b0f2c3e4b.orig/CMakeLists.txt
++++ libubox-bbd846ec2d72b2629758b69dc122ac0b0f2c3e4b/CMakeLists.txt
+@@ -13,7 +13,7 @@
+ ENDIF()
+ INCLUDE(FindPkgConfig)
+-PKG_CHECK_MODULES(JSONC json-c json)
++PKG_CHECK_MODULES(JSONC json-c)
+ IF(JSONC_FOUND)
+   ADD_DEFINITIONS(-DJSONC)
+   INCLUDE_DIRECTORIES(${JSONC_INCLUDE_DIRS})
+@@ -42,7 +42,7 @@
+ ADD_SUBDIRECTORY(lua)
+-find_library(json NAMES json-c json)
++find_library(json NAMES json-c)
+ IF(EXISTS ${json})
+       ADD_LIBRARY(blobmsg_json SHARED blobmsg_json.c)
+       TARGET_LINK_LIBRARIES(blobmsg_json ubox ${json})
diff --git a/package/libubox/libubox-01-drop-legacy-json-c.patch b/package/libubox/libubox-01-drop-legacy-json-c.patch
deleted file mode 100644 (file)
index 84bd99a..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-[PATCH] libubox: drop legacy json-c support
-
-The cmake logic is wrong (E.G. PKG_CHECK_FOR_MODULES fails unless all
-modules are found), and the legacy libjson.so name is also used by the other
-libjson (http://sourceforge.net/projects/libjson/) which provides an
-incompatible API, so just drop it.
-
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- CMakeLists.txt |    4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-Index: libubox-bbd846ec2d72b2629758b69dc122ac0b0f2c3e4b/CMakeLists.txt
-===================================================================
---- libubox-bbd846ec2d72b2629758b69dc122ac0b0f2c3e4b.orig/CMakeLists.txt
-+++ libubox-bbd846ec2d72b2629758b69dc122ac0b0f2c3e4b/CMakeLists.txt
-@@ -13,7 +13,7 @@
- ENDIF()
- INCLUDE(FindPkgConfig)
--PKG_CHECK_MODULES(JSONC json-c json)
-+PKG_CHECK_MODULES(JSONC json-c)
- IF(JSONC_FOUND)
-   ADD_DEFINITIONS(-DJSONC)
-   INCLUDE_DIRECTORIES(${JSONC_INCLUDE_DIRS})
-@@ -42,7 +42,7 @@
- ADD_SUBDIRECTORY(lua)
--find_library(json NAMES json-c json)
-+find_library(json NAMES json-c)
- IF(EXISTS ${json})
-       ADD_LIBRARY(blobmsg_json SHARED blobmsg_json.c)
-       TARGET_LINK_LIBRARIES(blobmsg_json ubox ${json})
diff --git a/package/liburcu/0001-Only-blacklist-ARM-gcc-4.8.0-and-4.8.1.patch b/package/liburcu/0001-Only-blacklist-ARM-gcc-4.8.0-and-4.8.1.patch
new file mode 100644 (file)
index 0000000..585abc0
--- /dev/null
@@ -0,0 +1,40 @@
+From 54d8fe7ae40902d6d38e670f4024092f53c14e1f Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Sat, 8 Mar 2014 13:19:14 +0100
+Subject: [PATCH] Only blacklist ARM gcc 4.8.0 and 4.8.1
+
+Since many ARM toolchain providers include the bug fix for PR58854 in
+their latest releases based on gcc-4.8.2, then only blacklist gcc 4.8.0
+and 4.8.1.
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+---
+ urcu/compiler.h | 9 ++++++++-
+ 1 file changed, 8 insertions(+), 1 deletion(-)
+
+diff --git a/urcu/compiler.h b/urcu/compiler.h
+index 1e30903..56115f1 100644
+--- a/urcu/compiler.h
++++ b/urcu/compiler.h
+@@ -118,10 +118,17 @@
+                               + __GNUC_PATCHLEVEL__)
+ /*
++ * Official gcc releases from 4.8.0 to 4.8.2 have the following bug,
++ * however, many arm toolchain providers have the included the fix for
++ * their latest 4.8.2 releases.
++ * So, we only blacklist gcc 4.8.0 and 4.8.1.
++ * Unfortunately, this bug is not easy to test, so we rely on the
++ * knowledge of the user on its compiler.
++ *
+  * http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58854
+  */
+ # ifdef __ARMEL__
+-#  if URCU_GCC_VERSION >= 40800 && URCU_GCC_VERSION <= 40802
++#  if URCU_GCC_VERSION >= 40800 && URCU_GCC_VERSION <= 40801
+ #   error Your gcc version produces clobbered frame accesses
+ #  endif
+ # endif
+-- 
+1.9.0
+
diff --git a/package/liburcu/liburcu-0001-Only-blacklist-ARM-gcc-4.8.0-and-4.8.1.patch b/package/liburcu/liburcu-0001-Only-blacklist-ARM-gcc-4.8.0-and-4.8.1.patch
deleted file mode 100644 (file)
index 585abc0..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-From 54d8fe7ae40902d6d38e670f4024092f53c14e1f Mon Sep 17 00:00:00 2001
-From: Samuel Martin <s.martin49@gmail.com>
-Date: Sat, 8 Mar 2014 13:19:14 +0100
-Subject: [PATCH] Only blacklist ARM gcc 4.8.0 and 4.8.1
-
-Since many ARM toolchain providers include the bug fix for PR58854 in
-their latest releases based on gcc-4.8.2, then only blacklist gcc 4.8.0
-and 4.8.1.
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
----
- urcu/compiler.h | 9 ++++++++-
- 1 file changed, 8 insertions(+), 1 deletion(-)
-
-diff --git a/urcu/compiler.h b/urcu/compiler.h
-index 1e30903..56115f1 100644
---- a/urcu/compiler.h
-+++ b/urcu/compiler.h
-@@ -118,10 +118,17 @@
-                               + __GNUC_PATCHLEVEL__)
- /*
-+ * Official gcc releases from 4.8.0 to 4.8.2 have the following bug,
-+ * however, many arm toolchain providers have the included the fix for
-+ * their latest 4.8.2 releases.
-+ * So, we only blacklist gcc 4.8.0 and 4.8.1.
-+ * Unfortunately, this bug is not easy to test, so we rely on the
-+ * knowledge of the user on its compiler.
-+ *
-  * http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58854
-  */
- # ifdef __ARMEL__
--#  if URCU_GCC_VERSION >= 40800 && URCU_GCC_VERSION <= 40802
-+#  if URCU_GCC_VERSION >= 40800 && URCU_GCC_VERSION <= 40801
- #   error Your gcc version produces clobbered frame accesses
- #  endif
- # endif
--- 
-1.9.0
-
diff --git a/package/libv4l/0001-fixup-lfs-mismatch-in-preload-libraries.patch b/package/libv4l/0001-fixup-lfs-mismatch-in-preload-libraries.patch
new file mode 100644 (file)
index 0000000..f23eb7a
--- /dev/null
@@ -0,0 +1,44 @@
+From e5952b043a71fe83fbc392e498e8f77774fca0d8 Mon Sep 17 00:00:00 2001
+From: Peter Korsgaard <jacmet@sunsite.dk>
+Date: Sat, 28 Jun 2014 09:32:53 -0300
+Subject: [PATCH] fixup lfs mismatch in preload libraries
+
+Ensure that the lfs variants are not transparently used instead of the !lfs
+ones so both can be wrapped, independently of any custom CFLAGS/CPPFLAGS.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ lib/libv4l1/v4l1compat.c  | 3 +++
+ lib/libv4l2/v4l2convert.c | 3 +++
+ 2 files changed, 6 insertions(+)
+
+diff --git a/lib/libv4l1/v4l1compat.c b/lib/libv4l1/v4l1compat.c
+index e328288..70eb74f 100644
+--- a/lib/libv4l1/v4l1compat.c
++++ b/lib/libv4l1/v4l1compat.c
+@@ -19,6 +19,9 @@
+ # Foundation, Inc., 51 Franklin Street, Suite 500, Boston, MA  02110-1335  USA
+  */
+
++/* ensure we see *64 variants and they aren't transparently used */
++#undef _LARGEFILE_SOURCE
++#undef _FILE_OFFSET_BITS
+ #define _LARGEFILE64_SOURCE 1
+
+ #include <config.h>
+diff --git a/lib/libv4l2/v4l2convert.c b/lib/libv4l2/v4l2convert.c
+index 9b46ab8..bc41056 100644
+--- a/lib/libv4l2/v4l2convert.c
++++ b/lib/libv4l2/v4l2convert.c
+@@ -23,6 +23,9 @@
+ /* prevent GCC 4.7 inlining error */
+ #undef _FORTIFY_SOURCE
+
++/* ensure we see *64 variants and they aren't transparently used */
++#undef _LARGEFILE_SOURCE
++#undef _FILE_OFFSET_BITS
+ #define _LARGEFILE64_SOURCE 1
+
+ #include <config.h>
+--
+1.9.1
diff --git a/package/libv4l/libv4l-0001-fixup-lfs-mismatch-in-preload-libraries.patch b/package/libv4l/libv4l-0001-fixup-lfs-mismatch-in-preload-libraries.patch
deleted file mode 100644 (file)
index f23eb7a..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-From e5952b043a71fe83fbc392e498e8f77774fca0d8 Mon Sep 17 00:00:00 2001
-From: Peter Korsgaard <jacmet@sunsite.dk>
-Date: Sat, 28 Jun 2014 09:32:53 -0300
-Subject: [PATCH] fixup lfs mismatch in preload libraries
-
-Ensure that the lfs variants are not transparently used instead of the !lfs
-ones so both can be wrapped, independently of any custom CFLAGS/CPPFLAGS.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- lib/libv4l1/v4l1compat.c  | 3 +++
- lib/libv4l2/v4l2convert.c | 3 +++
- 2 files changed, 6 insertions(+)
-
-diff --git a/lib/libv4l1/v4l1compat.c b/lib/libv4l1/v4l1compat.c
-index e328288..70eb74f 100644
---- a/lib/libv4l1/v4l1compat.c
-+++ b/lib/libv4l1/v4l1compat.c
-@@ -19,6 +19,9 @@
- # Foundation, Inc., 51 Franklin Street, Suite 500, Boston, MA  02110-1335  USA
-  */
-
-+/* ensure we see *64 variants and they aren't transparently used */
-+#undef _LARGEFILE_SOURCE
-+#undef _FILE_OFFSET_BITS
- #define _LARGEFILE64_SOURCE 1
-
- #include <config.h>
-diff --git a/lib/libv4l2/v4l2convert.c b/lib/libv4l2/v4l2convert.c
-index 9b46ab8..bc41056 100644
---- a/lib/libv4l2/v4l2convert.c
-+++ b/lib/libv4l2/v4l2convert.c
-@@ -23,6 +23,9 @@
- /* prevent GCC 4.7 inlining error */
- #undef _FORTIFY_SOURCE
-
-+/* ensure we see *64 variants and they aren't transparently used */
-+#undef _LARGEFILE_SOURCE
-+#undef _FILE_OFFSET_BITS
- #define _LARGEFILE64_SOURCE 1
-
- #include <config.h>
---
-1.9.1
diff --git a/package/libva-intel-driver/0001-wayland.patch b/package/libva-intel-driver/0001-wayland.patch
new file mode 100644 (file)
index 0000000..2f8c859
--- /dev/null
@@ -0,0 +1,50 @@
+Fixes various wayland-related compile errors:
+
+i965_output_wayland.c:31:41: fatal error: wayland-drm-client-protocol.h:
+ No such file or directory
+
+i965_output_wayland.h:31:26: error: unknown type name 'VADriverContextP'
+
+make[4]: *** No rule to make target `wayland-drm-client-protocol.h', needed by
+ `i965_output_wayland.c'.  Stop.
+
+Patch sent upstream:
+http://lists.freedesktop.org/archives/libva/2014-July/002520.html
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+
+diff -uNr libva-intel-driver-1.3.2.org/src/i965_output_wayland.c libva-intel-driver-1.3.2/src/i965_output_wayland.c
+--- libva-intel-driver-1.3.2.org/src/i965_output_wayland.c     2014-06-03 02:36:44.000000000 +0200
++++ libva-intel-driver-1.3.2/src/i965_output_wayland.c 2014-07-19 11:48:31.329043292 +0200
+@@ -28,7 +28,7 @@
+ #include <va/va_backend.h>
+ #include <va/va_backend_wayland.h>
+ #include <wayland-client.h>
+-#include <wayland-drm-client-protocol.h>
++#include <va/wayland-drm-client-protocol.h>
+ #include "intel_driver.h"
+ #include "i965_output_wayland.h"
+ #include "i965_drv_video.h"
+diff -uNr libva-intel-driver-1.3.2.org/src/i965_output_wayland.h libva-intel-driver-1.3.2/src/i965_output_wayland.h
+--- libva-intel-driver-1.3.2.org/src/i965_output_wayland.h     2014-05-19 10:19:39.000000000 +0200
++++ libva-intel-driver-1.3.2/src/i965_output_wayland.h 2014-07-19 11:48:09.201321881 +0200
+@@ -26,6 +26,7 @@
+ #define I965_OUTPUT_WAYLAND_H
+ #include <stdbool.h>
++#include <va/va_backend.h>
+ bool
+ i965_output_wayland_init(VADriverContextP ctx);
+diff -uNr libva-intel-driver-1.3.2.org/src/Makefile.am libva-intel-driver-1.3.2/src/Makefile.am
+--- libva-intel-driver-1.3.2.org/src/Makefile.am       2014-06-16 04:13:12.000000000 +0200
++++ libva-intel-driver-1.3.2/src/Makefile.am   2014-07-19 11:53:02.885627916 +0200
+@@ -146,7 +146,7 @@
+ endif
+ # Wayland protocol
+-protocol_source_h = wayland-drm-client-protocol.h
++#protocol_source_h = wayland-drm-client-protocol.h
+ i965_output_wayland.c: $(protocol_source_h)
+ @wayland_scanner_rules@
diff --git a/package/libva-intel-driver/libva-intel-driver-0001-wayland.patch b/package/libva-intel-driver/libva-intel-driver-0001-wayland.patch
deleted file mode 100644 (file)
index 2f8c859..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-Fixes various wayland-related compile errors:
-
-i965_output_wayland.c:31:41: fatal error: wayland-drm-client-protocol.h:
- No such file or directory
-
-i965_output_wayland.h:31:26: error: unknown type name 'VADriverContextP'
-
-make[4]: *** No rule to make target `wayland-drm-client-protocol.h', needed by
- `i965_output_wayland.c'.  Stop.
-
-Patch sent upstream:
-http://lists.freedesktop.org/archives/libva/2014-July/002520.html
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-
-diff -uNr libva-intel-driver-1.3.2.org/src/i965_output_wayland.c libva-intel-driver-1.3.2/src/i965_output_wayland.c
---- libva-intel-driver-1.3.2.org/src/i965_output_wayland.c     2014-06-03 02:36:44.000000000 +0200
-+++ libva-intel-driver-1.3.2/src/i965_output_wayland.c 2014-07-19 11:48:31.329043292 +0200
-@@ -28,7 +28,7 @@
- #include <va/va_backend.h>
- #include <va/va_backend_wayland.h>
- #include <wayland-client.h>
--#include <wayland-drm-client-protocol.h>
-+#include <va/wayland-drm-client-protocol.h>
- #include "intel_driver.h"
- #include "i965_output_wayland.h"
- #include "i965_drv_video.h"
-diff -uNr libva-intel-driver-1.3.2.org/src/i965_output_wayland.h libva-intel-driver-1.3.2/src/i965_output_wayland.h
---- libva-intel-driver-1.3.2.org/src/i965_output_wayland.h     2014-05-19 10:19:39.000000000 +0200
-+++ libva-intel-driver-1.3.2/src/i965_output_wayland.h 2014-07-19 11:48:09.201321881 +0200
-@@ -26,6 +26,7 @@
- #define I965_OUTPUT_WAYLAND_H
- #include <stdbool.h>
-+#include <va/va_backend.h>
- bool
- i965_output_wayland_init(VADriverContextP ctx);
-diff -uNr libva-intel-driver-1.3.2.org/src/Makefile.am libva-intel-driver-1.3.2/src/Makefile.am
---- libva-intel-driver-1.3.2.org/src/Makefile.am       2014-06-16 04:13:12.000000000 +0200
-+++ libva-intel-driver-1.3.2/src/Makefile.am   2014-07-19 11:53:02.885627916 +0200
-@@ -146,7 +146,7 @@
- endif
- # Wayland protocol
--protocol_source_h = wayland-drm-client-protocol.h
-+#protocol_source_h = wayland-drm-client-protocol.h
- i965_output_wayland.c: $(protocol_source_h)
- @wayland_scanner_rules@
diff --git a/package/libva/0001-no_test_decode.patch b/package/libva/0001-no_test_decode.patch
new file mode 100644 (file)
index 0000000..0f0d786
--- /dev/null
@@ -0,0 +1,17 @@
+mpeg2vldemo is the only file requiring cxx support. It is not needed for
+buildroot, so disable its compilation to avoid depending on cxx.
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+
+diff -uNr libva-1.3.0.org/test/Makefile.am libva-1.3.0/test/Makefile.am
+--- libva-1.3.0.org/test/Makefile.am   2014-03-24 05:49:46.000000000 +0100
++++ libva-1.3.0/test/Makefile.am       2014-04-26 18:12:25.644390292 +0200
+@@ -20,7 +20,7 @@
+ # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
+ # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+-SUBDIRS = common decode encode vainfo
++SUBDIRS = common encode vainfo
+ if USE_X11
+ SUBDIRS += basic putsurface
diff --git a/package/libva/0002-wayland.patch b/package/libva/0002-wayland.patch
new file mode 100644 (file)
index 0000000..e309096
--- /dev/null
@@ -0,0 +1,26 @@
+Fixes compile error in libva-intel-driver
+
+make[4]: Entering directory `/home/br/br/output/build/libva-intel-driver-1.3.2/src'
+  CC       i965_drv_video_la-i965_output_wayland.lo
+i965_output_wayland.c:31:41: fatal error: wayland-drm-client-protocol.h: No such file or directory
+compilation terminated.
+
+Patch sent upstream:
+http://lists.freedesktop.org/archives/libva/2014-July/002519.html
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+
+diff -uNr libva-1.3.1.org/va/wayland/Makefile.am libva-1.3.1/va/wayland/Makefile.am
+--- libva-1.3.1.org/va/wayland/Makefile.am     2014-05-09 06:28:15.000000000 +0200
++++ libva-1.3.1/va/wayland/Makefile.am 2014-07-19 11:46:01.126931242 +0200
+@@ -54,8 +54,8 @@
+ noinst_LTLIBRARIES            = libva_wayland.la
+ libva_waylandincludedir               = ${includedir}/va
+-libva_waylandinclude_HEADERS  = $(source_h)
+-libva_wayland_la_SOURCES      = $(source_c) $(protocol_source_h)
++libva_waylandinclude_HEADERS  = $(source_h) $(protocol_source_h)
++libva_wayland_la_SOURCES      = $(source_c)
+ noinst_HEADERS                        = $(source_h_priv)
+ # Wayland protocol
diff --git a/package/libva/libva-0001-no_test_decode.patch b/package/libva/libva-0001-no_test_decode.patch
deleted file mode 100644 (file)
index 0f0d786..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-mpeg2vldemo is the only file requiring cxx support. It is not needed for
-buildroot, so disable its compilation to avoid depending on cxx.
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-
-diff -uNr libva-1.3.0.org/test/Makefile.am libva-1.3.0/test/Makefile.am
---- libva-1.3.0.org/test/Makefile.am   2014-03-24 05:49:46.000000000 +0100
-+++ libva-1.3.0/test/Makefile.am       2014-04-26 18:12:25.644390292 +0200
-@@ -20,7 +20,7 @@
- # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
- # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
--SUBDIRS = common decode encode vainfo
-+SUBDIRS = common encode vainfo
- if USE_X11
- SUBDIRS += basic putsurface
diff --git a/package/libva/libva-0002-wayland.patch b/package/libva/libva-0002-wayland.patch
deleted file mode 100644 (file)
index e309096..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-Fixes compile error in libva-intel-driver
-
-make[4]: Entering directory `/home/br/br/output/build/libva-intel-driver-1.3.2/src'
-  CC       i965_drv_video_la-i965_output_wayland.lo
-i965_output_wayland.c:31:41: fatal error: wayland-drm-client-protocol.h: No such file or directory
-compilation terminated.
-
-Patch sent upstream:
-http://lists.freedesktop.org/archives/libva/2014-July/002519.html
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-
-diff -uNr libva-1.3.1.org/va/wayland/Makefile.am libva-1.3.1/va/wayland/Makefile.am
---- libva-1.3.1.org/va/wayland/Makefile.am     2014-05-09 06:28:15.000000000 +0200
-+++ libva-1.3.1/va/wayland/Makefile.am 2014-07-19 11:46:01.126931242 +0200
-@@ -54,8 +54,8 @@
- noinst_LTLIBRARIES            = libva_wayland.la
- libva_waylandincludedir               = ${includedir}/va
--libva_waylandinclude_HEADERS  = $(source_h)
--libva_wayland_la_SOURCES      = $(source_c) $(protocol_source_h)
-+libva_waylandinclude_HEADERS  = $(source_h) $(protocol_source_h)
-+libva_wayland_la_SOURCES      = $(source_c)
- noinst_HEADERS                        = $(source_h_priv)
- # Wayland protocol
diff --git a/package/libwebsockets/0001-cmake-set-the-project-language.patch b/package/libwebsockets/0001-cmake-set-the-project-language.patch
new file mode 100644 (file)
index 0000000..7b017a7
--- /dev/null
@@ -0,0 +1,34 @@
+From 6ab441e0509a9fda179fd1febf73d0f9fae321d6 Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Fri, 2 May 2014 14:24:58 +0200
+Subject: [PATCH] cmake: set the project language
+
+By default, CMake sets C and C++ as languages used by the project.
+This makes the configuration failed if no C++ compiler is found.
+
+Since libwesockets in written in pure C, no C++, there is no reason to
+disable it when the toolchain has no C++ support.
+
+This patch just make the CMake code reflecting the real status of the
+project with regard to the languages used.
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+---
+ CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index f1b6ace..72391b0 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1,6 +1,6 @@
+ cmake_minimum_required(VERSION 2.6)
+-project(libwebsockets)
++project(libwebsockets C)
+ set(PACKAGE "libwebsockets")
+ set(CPACK_PACKAGE_NAME "${PACKAGE}")
+-- 
+1.9.2
+
diff --git a/package/libwebsockets/0002-cmake-disable-shared-library-build-when-BUILD_SHARED.patch b/package/libwebsockets/0002-cmake-disable-shared-library-build-when-BUILD_SHARED.patch
new file mode 100644 (file)
index 0000000..95d1ad8
--- /dev/null
@@ -0,0 +1,107 @@
+From 045b035bd9ebbd45f40dda36b143ede869eb5f16 Mon Sep 17 00:00:00 2001
+From: Sagaert Johan <sagaert.johan@skynet.be>
+Date: Fri, 31 Oct 2014 12:25:48 +0100
+Subject: [PATCH 2/2] cmake: disable shared library build when
+ BUILD_SHARED_LIBS is off
+
+Original patch from Samuel Martin, reworked by Sagaert Johan when
+updating libwebsockets.
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+Signed-off-by: Sagaert Johan <sagaert.johan@skynet.be>
+[yann.morin.1998@free.fr: further fix after the version bumped]
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+---
+ CMakeLists.txt | 17 ++++++++++++-----
+ 1 file changed, 12 insertions(+), 5 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 7978845..89853ce 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -372,14 +372,19 @@ source_group("Sources"          FILES ${SOURCES})
+ #
+ # Create the lib.
+ #
++set(_libs_websockets websockets)
+ add_library(websockets STATIC
+                       ${HDR_PRIVATE}
+                       ${HDR_PUBLIC}
+                       ${SOURCES})
++
++if(BUILD_SHARED_LIBS)
++list(APPEND _libs_websockets websockets_shared)
+ add_library(websockets_shared SHARED
+                       ${HDR_PRIVATE}
+                       ${HDR_PUBLIC}
+                       ${SOURCES})
++endif()
+ if (WIN32)
+       # On Windows libs have the same file ending (.lib)
+@@ -400,15 +405,17 @@ endif(WIN32)
+ # We want the shared lib to be named "libwebsockets"
+ # not "libwebsocket_shared".
++if(BUILD_SHARED_LIBS)
+ set_target_properties(websockets_shared
+-              PROPERTIES 
++              PROPERTIES
+               OUTPUT_NAME websockets)
++endif()
+ # Set the so version of the lib.
+ # Equivalent to LDFLAGS=-version-info x:x:x
+ if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX)
+-      foreach(lib websockets websockets_shared)
+-              set_target_properties(${lib} 
++      foreach(lib ${_libs_websockets})
++              set_target_properties(${lib}
+                       PROPERTIES
+                       SOVERSION ${SOVERSION})
+       endforeach()
+@@ -460,7 +467,7 @@ if (NOT LWS_WITHOUT_EXTENSIONS)
+       endif()
+       # Make sure ZLib is compiled before the libs.
+-      foreach (lib websockets websockets_shared)
++      foreach (lib ${_libs_websockets})
+               add_dependencies(${lib} ZLIB)
+       endforeach()
+@@ -524,7 +531,7 @@ if (UNIX)
+ endif()
+ # Setup the linking for all libs.
+-foreach (lib websockets websockets_shared)
++foreach (lib ${_libs_websockets})
+       target_link_libraries(${lib} ${LIB_LIST})
+ endforeach()
+@@ -793,7 +800,7 @@
+ set(LWS_INSTALL_CMAKE_DIR ${DEF_INSTALL_CMAKE_DIR} CACHE PATH "Installation directory for CMake files")
+ # Export targets (This is used for other CMake projects to easily find the libraries and include files).
+-export(TARGETS websockets websockets_shared
++export(TARGETS ${_libs_websockets}
+         FILE "${PROJECT_BINARY_DIR}/LibwebsocketsTargets.cmake")
+ export(PACKAGE libwebsockets)
+@@ -829,7 +835,7 @@
+                 ${PROJECT_BINARY_DIR}/LibwebsocketsConfigVersion.cmake 
+                 @ONLY)
+-set_target_properties(websockets websockets_shared 
++set_target_properties(${_libs_websockets}
+                                       PROPERTIES PUBLIC_HEADER "${HDR_PUBLIC}")
+ #
+@@ -837,7 +843,7 @@
+ #
+ # Install libs and headers.
+-install(TARGETS websockets websockets_shared
++install(TARGETS ${_libs_websockets}
+               EXPORT LibwebsocketsTargets
+               LIBRARY DESTINATION "${LWS_INSTALL_LIB_DIR}${LIB_SUFFIX}" COMPONENT libraries
+               ARCHIVE DESTINATION "${LWS_INSTALL_LIB_DIR}${LIB_SUFFIX}" COMPONENT libraries
diff --git a/package/libwebsockets/libwebsockets-0001-cmake-set-the-project-language.patch b/package/libwebsockets/libwebsockets-0001-cmake-set-the-project-language.patch
deleted file mode 100644 (file)
index 7b017a7..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-From 6ab441e0509a9fda179fd1febf73d0f9fae321d6 Mon Sep 17 00:00:00 2001
-From: Samuel Martin <s.martin49@gmail.com>
-Date: Fri, 2 May 2014 14:24:58 +0200
-Subject: [PATCH] cmake: set the project language
-
-By default, CMake sets C and C++ as languages used by the project.
-This makes the configuration failed if no C++ compiler is found.
-
-Since libwesockets in written in pure C, no C++, there is no reason to
-disable it when the toolchain has no C++ support.
-
-This patch just make the CMake code reflecting the real status of the
-project with regard to the languages used.
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
----
- CMakeLists.txt | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index f1b6ace..72391b0 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -1,6 +1,6 @@
- cmake_minimum_required(VERSION 2.6)
--project(libwebsockets)
-+project(libwebsockets C)
- set(PACKAGE "libwebsockets")
- set(CPACK_PACKAGE_NAME "${PACKAGE}")
--- 
-1.9.2
-
diff --git a/package/libwebsockets/libwebsockets-0002-cmake-disable-shared-library-build-when-BUILD_SHARED.patch b/package/libwebsockets/libwebsockets-0002-cmake-disable-shared-library-build-when-BUILD_SHARED.patch
deleted file mode 100644 (file)
index 95d1ad8..0000000
+++ /dev/null
@@ -1,107 +0,0 @@
-From 045b035bd9ebbd45f40dda36b143ede869eb5f16 Mon Sep 17 00:00:00 2001
-From: Sagaert Johan <sagaert.johan@skynet.be>
-Date: Fri, 31 Oct 2014 12:25:48 +0100
-Subject: [PATCH 2/2] cmake: disable shared library build when
- BUILD_SHARED_LIBS is off
-
-Original patch from Samuel Martin, reworked by Sagaert Johan when
-updating libwebsockets.
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
-Signed-off-by: Sagaert Johan <sagaert.johan@skynet.be>
-[yann.morin.1998@free.fr: further fix after the version bumped]
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
----
- CMakeLists.txt | 17 ++++++++++++-----
- 1 file changed, 12 insertions(+), 5 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 7978845..89853ce 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -372,14 +372,19 @@ source_group("Sources"          FILES ${SOURCES})
- #
- # Create the lib.
- #
-+set(_libs_websockets websockets)
- add_library(websockets STATIC
-                       ${HDR_PRIVATE}
-                       ${HDR_PUBLIC}
-                       ${SOURCES})
-+
-+if(BUILD_SHARED_LIBS)
-+list(APPEND _libs_websockets websockets_shared)
- add_library(websockets_shared SHARED
-                       ${HDR_PRIVATE}
-                       ${HDR_PUBLIC}
-                       ${SOURCES})
-+endif()
- if (WIN32)
-       # On Windows libs have the same file ending (.lib)
-@@ -400,15 +405,17 @@ endif(WIN32)
- # We want the shared lib to be named "libwebsockets"
- # not "libwebsocket_shared".
-+if(BUILD_SHARED_LIBS)
- set_target_properties(websockets_shared
--              PROPERTIES 
-+              PROPERTIES
-               OUTPUT_NAME websockets)
-+endif()
- # Set the so version of the lib.
- # Equivalent to LDFLAGS=-version-info x:x:x
- if(CMAKE_COMPILER_IS_GNUCC OR CMAKE_COMPILER_IS_GNUCXX)
--      foreach(lib websockets websockets_shared)
--              set_target_properties(${lib} 
-+      foreach(lib ${_libs_websockets})
-+              set_target_properties(${lib}
-                       PROPERTIES
-                       SOVERSION ${SOVERSION})
-       endforeach()
-@@ -460,7 +467,7 @@ if (NOT LWS_WITHOUT_EXTENSIONS)
-       endif()
-       # Make sure ZLib is compiled before the libs.
--      foreach (lib websockets websockets_shared)
-+      foreach (lib ${_libs_websockets})
-               add_dependencies(${lib} ZLIB)
-       endforeach()
-@@ -524,7 +531,7 @@ if (UNIX)
- endif()
- # Setup the linking for all libs.
--foreach (lib websockets websockets_shared)
-+foreach (lib ${_libs_websockets})
-       target_link_libraries(${lib} ${LIB_LIST})
- endforeach()
-@@ -793,7 +800,7 @@
- set(LWS_INSTALL_CMAKE_DIR ${DEF_INSTALL_CMAKE_DIR} CACHE PATH "Installation directory for CMake files")
- # Export targets (This is used for other CMake projects to easily find the libraries and include files).
--export(TARGETS websockets websockets_shared
-+export(TARGETS ${_libs_websockets}
-         FILE "${PROJECT_BINARY_DIR}/LibwebsocketsTargets.cmake")
- export(PACKAGE libwebsockets)
-@@ -829,7 +835,7 @@
-                 ${PROJECT_BINARY_DIR}/LibwebsocketsConfigVersion.cmake 
-                 @ONLY)
--set_target_properties(websockets websockets_shared 
-+set_target_properties(${_libs_websockets}
-                                       PROPERTIES PUBLIC_HEADER "${HDR_PUBLIC}")
- #
-@@ -837,7 +843,7 @@
- #
- # Install libs and headers.
--install(TARGETS websockets websockets_shared
-+install(TARGETS ${_libs_websockets}
-               EXPORT LibwebsocketsTargets
-               LIBRARY DESTINATION "${LWS_INSTALL_LIB_DIR}${LIB_SUFFIX}" COMPONENT libraries
-               ARCHIVE DESTINATION "${LWS_INSTALL_LIB_DIR}${LIB_SUFFIX}" COMPONENT libraries
diff --git a/package/lighttpd/0001-Fix-default-config-file.patch b/package/lighttpd/0001-Fix-default-config-file.patch
new file mode 100644 (file)
index 0000000..88d2c6f
--- /dev/null
@@ -0,0 +1,98 @@
+Modify the default lighttpd configuration file to have one a starting conf
+
+  * Changed the log path to /var/log and logs filenames
+  * Disable IPv6
+  * Do not setuid to a user that doesn't exist on the system
+  * Disable pdf ranges fix for Adobe Reader since it uses regex and we
+    don't always have pcre support
+  * Change the network backend to writev since linux-sendfile fails on buildroot
+
+Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
+Signed-off-by: Simon Dawson <spdawson@gmail.com>
+
+diff -Nurp a/doc/config/conf.d/access_log.conf b/doc/config/conf.d/access_log.conf
+--- a/doc/config/conf.d/access_log.conf        2010-07-11 18:01:32.000000000 +0100
++++ b/doc/config/conf.d/access_log.conf        2012-07-21 19:37:58.453207990 +0100
+@@ -9,7 +9,7 @@ server.modules += ( "mod_accesslog" )
+ ##
+ ## Default access log.
+ ##
+-accesslog.filename          = log_root + "/access.log"
++accesslog.filename          = log_root + "/lighttpd-access.log"
+ ##
+ ## The default format produces CLF compatible output.
+diff -Nurp a/doc/config/lighttpd.conf b/doc/config/lighttpd.conf
+--- a/doc/config/lighttpd.conf 2011-12-18 12:57:25.000000000 +0000
++++ b/doc/config/lighttpd.conf 2012-07-21 19:40:45.281200552 +0100
+@@ -13,8 +13,8 @@
+ ## if you add a variable here. Add the corresponding variable in the
+ ## chroot example aswell.
+ ##
+-var.log_root    = "/var/log/lighttpd"
+-var.server_root = "/srv/www"
++var.log_root    = "/var/log"
++var.server_root = "/var/www"
+ var.state_dir   = "/var/run"
+ var.home_dir    = "/var/lib/lighttpd"
+ var.conf_dir    = "/etc/lighttpd"
+@@ -90,7 +90,7 @@ server.port = 80
+ ##
+ ## Use IPv6?
+ ##
+-server.use-ipv6 = "enable"
++# server.use-ipv6 = "enable"
+ ##
+ ## bind to a specific IP
+@@ -101,8 +101,8 @@ server.use-ipv6 = "enable"
+ ## Run as a different username/groupname.
+ ## This requires root permissions during startup. 
+ ##
+-server.username  = "lighttpd"
+-server.groupname = "lighttpd"
++# server.username  = "lighttpd"
++# server.groupname = "lighttpd"
+ ## 
+ ## enable core files.
+@@ -112,7 +112,7 @@ server.groupname = "lighttpd"
+ ##
+ ## Document root
+ ##
+-server.document-root = server_root + "/htdocs"
++server.document-root = server_root
+ ##
+ ## The value for the "Server:" response field.
+@@ -138,7 +138,7 @@ server.pid-file = state_dir + "/lighttpd
+ ##
+ ## Path to the error log file
+ ##
+-server.errorlog             = log_root + "/error.log"
++server.errorlog             = log_root + "/lighttpd-error.log"
+ ##
+ ## If you want to log to syslog you have to unset the 
+@@ -188,7 +188,7 @@ server.event-handler = "linux-sysepoll"
+ ## linux-sendfile - is recommended for small files.
+ ## writev         - is recommended for sending many large files
+ ##
+-server.network-backend = "linux-sendfile"
++server.network-backend = "writev"
+ ##
+ ## As lighttpd is a single-threaded server, its main resource limit is
+@@ -311,9 +311,9 @@ url.access-deny             = ( "~", ".i
+ ## disable range requests for pdf files
+ ## workaround for a bug in the Acrobat Reader plugin.
+ ##
+-$HTTP["url"] =~ "\.pdf$" {
+-  server.range-requests = "disable"
+-}
++# $HTTP["url"] =~ "\.pdf$" {
++#  server.range-requests = "disable"
++# }
+ ##
+ ## url handling modules (rewrite, redirect)
diff --git a/package/lighttpd/lighttpd-01-Fix-default-config-file.patch b/package/lighttpd/lighttpd-01-Fix-default-config-file.patch
deleted file mode 100644 (file)
index 88d2c6f..0000000
+++ /dev/null
@@ -1,98 +0,0 @@
-Modify the default lighttpd configuration file to have one a starting conf
-
-  * Changed the log path to /var/log and logs filenames
-  * Disable IPv6
-  * Do not setuid to a user that doesn't exist on the system
-  * Disable pdf ranges fix for Adobe Reader since it uses regex and we
-    don't always have pcre support
-  * Change the network backend to writev since linux-sendfile fails on buildroot
-
-Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
-Signed-off-by: Simon Dawson <spdawson@gmail.com>
-
-diff -Nurp a/doc/config/conf.d/access_log.conf b/doc/config/conf.d/access_log.conf
---- a/doc/config/conf.d/access_log.conf        2010-07-11 18:01:32.000000000 +0100
-+++ b/doc/config/conf.d/access_log.conf        2012-07-21 19:37:58.453207990 +0100
-@@ -9,7 +9,7 @@ server.modules += ( "mod_accesslog" )
- ##
- ## Default access log.
- ##
--accesslog.filename          = log_root + "/access.log"
-+accesslog.filename          = log_root + "/lighttpd-access.log"
- ##
- ## The default format produces CLF compatible output.
-diff -Nurp a/doc/config/lighttpd.conf b/doc/config/lighttpd.conf
---- a/doc/config/lighttpd.conf 2011-12-18 12:57:25.000000000 +0000
-+++ b/doc/config/lighttpd.conf 2012-07-21 19:40:45.281200552 +0100
-@@ -13,8 +13,8 @@
- ## if you add a variable here. Add the corresponding variable in the
- ## chroot example aswell.
- ##
--var.log_root    = "/var/log/lighttpd"
--var.server_root = "/srv/www"
-+var.log_root    = "/var/log"
-+var.server_root = "/var/www"
- var.state_dir   = "/var/run"
- var.home_dir    = "/var/lib/lighttpd"
- var.conf_dir    = "/etc/lighttpd"
-@@ -90,7 +90,7 @@ server.port = 80
- ##
- ## Use IPv6?
- ##
--server.use-ipv6 = "enable"
-+# server.use-ipv6 = "enable"
- ##
- ## bind to a specific IP
-@@ -101,8 +101,8 @@ server.use-ipv6 = "enable"
- ## Run as a different username/groupname.
- ## This requires root permissions during startup. 
- ##
--server.username  = "lighttpd"
--server.groupname = "lighttpd"
-+# server.username  = "lighttpd"
-+# server.groupname = "lighttpd"
- ## 
- ## enable core files.
-@@ -112,7 +112,7 @@ server.groupname = "lighttpd"
- ##
- ## Document root
- ##
--server.document-root = server_root + "/htdocs"
-+server.document-root = server_root
- ##
- ## The value for the "Server:" response field.
-@@ -138,7 +138,7 @@ server.pid-file = state_dir + "/lighttpd
- ##
- ## Path to the error log file
- ##
--server.errorlog             = log_root + "/error.log"
-+server.errorlog             = log_root + "/lighttpd-error.log"
- ##
- ## If you want to log to syslog you have to unset the 
-@@ -188,7 +188,7 @@ server.event-handler = "linux-sysepoll"
- ## linux-sendfile - is recommended for small files.
- ## writev         - is recommended for sending many large files
- ##
--server.network-backend = "linux-sendfile"
-+server.network-backend = "writev"
- ##
- ## As lighttpd is a single-threaded server, its main resource limit is
-@@ -311,9 +311,9 @@ url.access-deny             = ( "~", ".i
- ## disable range requests for pdf files
- ## workaround for a bug in the Acrobat Reader plugin.
- ##
--$HTTP["url"] =~ "\.pdf$" {
--  server.range-requests = "disable"
--}
-+# $HTTP["url"] =~ "\.pdf$" {
-+#  server.range-requests = "disable"
-+# }
- ##
- ## url handling modules (rewrite, redirect)
diff --git a/package/linux-headers/3.0.101/0001-headers_install-fix-__packed-in-exported-kernel-head.patch b/package/linux-headers/3.0.101/0001-headers_install-fix-__packed-in-exported-kernel-head.patch
new file mode 100644 (file)
index 0000000..8777b71
--- /dev/null
@@ -0,0 +1,46 @@
+From f210735fe2f17a6225432ee3d1239bcf23a8659c Mon Sep 17 00:00:00 2001
+From: Markus Trippelsdorf <markus@trippelsdorf.de>
+Date: Fri, 24 Jun 2011 15:51:00 +0200
+Subject: [PATCH] headers_install: fix __packed in exported kernel headers
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+checkpatch.pl warns about using __attribute__((packed)) in kernel
+headers: "__packed is preferred over __attribute__((packed))". If one
+follows that advice it could cause problems in the exported header
+files, because the outside world doesn't know about this shortcut.
+
+For example busybox will fail to compile:
+ CC      miscutils/ubi_attach_detach.o
+ In file included from miscutils/ubi_attach_detach.c:27:0:
+ /usr/include/mtd/ubi-user.h:330:3: error: conflicting types for â€˜__packed’
+ /usr/include/mtd/ubi-user.h:314:3: note: previous declaration of â€˜__packed’ was here
+...
+
+Fix the problem by substituting __packed with __attribute__((packed)) in
+the header_install.pl script.
+
+Cc: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
+CC: Joe Perches <joe@perches.com>
+Signed-off-by: Markus Trippelsdorf <markus@trippelsdorf.de>
+Signed-off-by: Michal Marek <mmarek@suse.cz>
+---
+ scripts/headers_install.pl |    1 +
+ 1 files changed, 1 insertions(+), 0 deletions(-)
+
+diff --git a/scripts/headers_install.pl b/scripts/headers_install.pl
+index efb3be1..48462be 100644
+--- a/scripts/headers_install.pl
++++ b/scripts/headers_install.pl
+@@ -35,6 +35,7 @@ foreach my $file (@files) {
+               $line =~ s/([\s(])__iomem\s/$1/g;
+               $line =~ s/\s__attribute_const__\s/ /g;
+               $line =~ s/\s__attribute_const__$//g;
++              $line =~ s/\b__packed\b/__attribute__((packed))/g;
+               $line =~ s/^#include <linux\/compiler.h>//;
+               $line =~ s/(^|\s)(inline)\b/$1__$2__/g;
+               $line =~ s/(^|\s)(asm)\b(\s|[(]|$)/$1__$2__$3/g;
+-- 
+1.7.5.4
+
diff --git a/package/linux-headers/3.0.101/linux-headers-headers_install-fix-__packed-in-exported-kernel-head.patch b/package/linux-headers/3.0.101/linux-headers-headers_install-fix-__packed-in-exported-kernel-head.patch
deleted file mode 100644 (file)
index 8777b71..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-From f210735fe2f17a6225432ee3d1239bcf23a8659c Mon Sep 17 00:00:00 2001
-From: Markus Trippelsdorf <markus@trippelsdorf.de>
-Date: Fri, 24 Jun 2011 15:51:00 +0200
-Subject: [PATCH] headers_install: fix __packed in exported kernel headers
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-checkpatch.pl warns about using __attribute__((packed)) in kernel
-headers: "__packed is preferred over __attribute__((packed))". If one
-follows that advice it could cause problems in the exported header
-files, because the outside world doesn't know about this shortcut.
-
-For example busybox will fail to compile:
- CC      miscutils/ubi_attach_detach.o
- In file included from miscutils/ubi_attach_detach.c:27:0:
- /usr/include/mtd/ubi-user.h:330:3: error: conflicting types for â€˜__packed’
- /usr/include/mtd/ubi-user.h:314:3: note: previous declaration of â€˜__packed’ was here
-...
-
-Fix the problem by substituting __packed with __attribute__((packed)) in
-the header_install.pl script.
-
-Cc: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
-CC: Joe Perches <joe@perches.com>
-Signed-off-by: Markus Trippelsdorf <markus@trippelsdorf.de>
-Signed-off-by: Michal Marek <mmarek@suse.cz>
----
- scripts/headers_install.pl |    1 +
- 1 files changed, 1 insertions(+), 0 deletions(-)
-
-diff --git a/scripts/headers_install.pl b/scripts/headers_install.pl
-index efb3be1..48462be 100644
---- a/scripts/headers_install.pl
-+++ b/scripts/headers_install.pl
-@@ -35,6 +35,7 @@ foreach my $file (@files) {
-               $line =~ s/([\s(])__iomem\s/$1/g;
-               $line =~ s/\s__attribute_const__\s/ /g;
-               $line =~ s/\s__attribute_const__$//g;
-+              $line =~ s/\b__packed\b/__attribute__((packed))/g;
-               $line =~ s/^#include <linux\/compiler.h>//;
-               $line =~ s/(^|\s)(inline)\b/$1__$2__/g;
-               $line =~ s/(^|\s)(asm)\b(\s|[(]|$)/$1__$2__$3/g;
--- 
-1.7.5.4
-
diff --git a/package/linux-zigbee/0001-test-serial-Remove-test-serial.patch b/package/linux-zigbee/0001-test-serial-Remove-test-serial.patch
new file mode 100644 (file)
index 0000000..8cd9d75
--- /dev/null
@@ -0,0 +1,54 @@
+From 98187a5238939edc889fdaad93b00628b55d1e08 Mon Sep 17 00:00:00 2001
+From: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
+Date: Sat, 3 May 2014 19:43:20 +0200
+Subject: [PATCH] test-serial: Remove test-serial
+
+This folders only contains python tests scripts which would force us to
+enable a dependency to host-python which seems kind of silly since
+theses are only tests scripts.
+
+Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
+---
+ Makefile.am  | 2 +-
+ configure.ac | 6 ------
+ 2 files changed, 1 insertion(+), 7 deletions(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index 265f0d7..e7bb1a1 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -2,7 +2,7 @@ include $(top_srcdir)/Makefile.common
+ ACLOCAL_AMFLAGS = -I m4
+-SUBDIRS = lib addrdb src tests test-serial
++SUBDIRS = lib addrdb src tests
+ include_HEADERS = include/ieee802154.h include/nl802154.h
+ noinst_HEADERS = include/libcommon.h include/addrdb.h include/logging.h
+diff --git a/configure.ac b/configure.ac
+index 17658af..506b289 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -77,11 +77,6 @@ AC_PROG_LIBTOOL
+ AM_PROG_LEX
+ AC_PROG_YACC
+ AC_SUBST(LIBTOOL_DEPS)
+-# Currently the scripts works with python2.x only
+-# Check for this at first
+-AC_PATH_PROG(PYTHON, python2 python2.7 python2.6 python2.5 python)
+-AM_PATH_PYTHON(,, [:])
+-py_CHECK_MAJOR_VERSION([PYTHON_VERSION], [2])
+ AM_MISSING_PROG(HELP2MAN, help2man, $missing_dir)
+ # Checks for libraries.
+@@ -135,6 +130,5 @@ AC_CONFIG_FILES([
+       addrdb/Makefile
+       src/Makefile
+       tests/Makefile
+-      test-serial/Makefile
+ ])
+ AC_OUTPUT
+-- 
+1.9.2
+
diff --git a/package/linux-zigbee/linux-zigbee-0001-test-serial-Remove-test-serial.patch b/package/linux-zigbee/linux-zigbee-0001-test-serial-Remove-test-serial.patch
deleted file mode 100644 (file)
index 8cd9d75..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-From 98187a5238939edc889fdaad93b00628b55d1e08 Mon Sep 17 00:00:00 2001
-From: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
-Date: Sat, 3 May 2014 19:43:20 +0200
-Subject: [PATCH] test-serial: Remove test-serial
-
-This folders only contains python tests scripts which would force us to
-enable a dependency to host-python which seems kind of silly since
-theses are only tests scripts.
-
-Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
----
- Makefile.am  | 2 +-
- configure.ac | 6 ------
- 2 files changed, 1 insertion(+), 7 deletions(-)
-
-diff --git a/Makefile.am b/Makefile.am
-index 265f0d7..e7bb1a1 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -2,7 +2,7 @@ include $(top_srcdir)/Makefile.common
- ACLOCAL_AMFLAGS = -I m4
--SUBDIRS = lib addrdb src tests test-serial
-+SUBDIRS = lib addrdb src tests
- include_HEADERS = include/ieee802154.h include/nl802154.h
- noinst_HEADERS = include/libcommon.h include/addrdb.h include/logging.h
-diff --git a/configure.ac b/configure.ac
-index 17658af..506b289 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -77,11 +77,6 @@ AC_PROG_LIBTOOL
- AM_PROG_LEX
- AC_PROG_YACC
- AC_SUBST(LIBTOOL_DEPS)
--# Currently the scripts works with python2.x only
--# Check for this at first
--AC_PATH_PROG(PYTHON, python2 python2.7 python2.6 python2.5 python)
--AM_PATH_PYTHON(,, [:])
--py_CHECK_MAJOR_VERSION([PYTHON_VERSION], [2])
- AM_MISSING_PROG(HELP2MAN, help2man, $missing_dir)
- # Checks for libraries.
-@@ -135,6 +130,5 @@ AC_CONFIG_FILES([
-       addrdb/Makefile
-       src/Makefile
-       tests/Makefile
--      test-serial/Makefile
- ])
- AC_OUTPUT
--- 
-1.9.2
-
diff --git a/package/lite/0001-dfbspy-stat.patch b/package/lite/0001-dfbspy-stat.patch
new file mode 100644 (file)
index 0000000..5ca7369
--- /dev/null
@@ -0,0 +1,53 @@
+From upstream git (git://git.directfb.org/git/directfb/libs/LiTE.git)
+
+From ffe0ce78327a63ddb1265328ea9b5b03acdca019 Mon Sep 17 00:00:00 2001
+From: Denis Oliver Kropp <dok@directfb.org>
+Date: Fri, 1 Apr 2011 20:20:26 +0200
+Subject: [PATCH] dfbspy: Build fix for dfbspy example.
+
+---
+ examples/dfbspy.c |   20 ++++++++++----------
+ 1 files changed, 10 insertions(+), 10 deletions(-)
+
+diff --git a/examples/dfbspy.c b/examples/dfbspy.c
+index 5f36f0b..c7f9725 100644
+--- a/examples/dfbspy.c
++++ b/examples/dfbspy.c
+@@ -89,9 +89,9 @@ read_stat( FusionStat *stat, int world )
+ /**************************************************************************************************/
+-#define CALC(x)     stat.x = (int)(((s.x - last_stat.x) * 1000 / (float) diff) + 0.5f)
++#define CALC(x)     stats.x = (int)(((s.x - last_stat.x) * 1000 / (float) diff) + 0.5f)
+-static FusionStat last_stat, stat;
++static FusionStat last_stat, stats;
+ static long long  last_millis;
+ static int
+@@ -145,14 +145,14 @@ static const struct {
+      void          (*update)( LiteLabel *label, void *ctx );
+      void           *ctx;
+ } list[] = {
+-     { "lease/purchase", update_number, &stat.lease_purchase },
+-     { "cede",           update_number, &stat.cede },
+-     { "attach",         update_number, &stat.attach },
+-     { "detach",         update_number, &stat.detach },
+-     { "ref up",         update_number, &stat.ref_up },
+-     { "ref down",       update_number, &stat.ref_down },
+-     { "prevail/swoop",  update_number, &stat.prevail_swoop },
+-     { "dismiss",        update_number, &stat.dismiss }
++     { "lease/purchase", update_number, &stats.lease_purchase },
++     { "cede",           update_number, &stats.cede },
++     { "attach",         update_number, &stats.attach },
++     { "detach",         update_number, &stats.detach },
++     { "ref up",         update_number, &stats.ref_up },
++     { "ref down",       update_number, &stats.ref_down },
++     { "prevail/swoop",  update_number, &stats.prevail_swoop },
++     { "dismiss",        update_number, &stats.dismiss }
+ };
+ #define NUM_LIST    (sizeof(list)/sizeof(list[0]))
+-- 
+1.7.6.3
+
diff --git a/package/lite/0002-no-tests.patch b/package/lite/0002-no-tests.patch
new file mode 100644 (file)
index 0000000..3a47186
--- /dev/null
@@ -0,0 +1,11 @@
+--- a/Makefile.in.orig 2008-07-07 13:07:12.000000000 +0200
++++ b/Makefile.in      2008-07-07 13:07:05.000000000 +0200
+@@ -202,7 +202,7 @@
+ target_vendor = @target_vendor@
+ top_builddir = @top_builddir@
+ top_srcdir = @top_srcdir@
+-SUBDIRS = data fonts lite leck examples tests
++SUBDIRS = data fonts lite leck examples
+ EXTRA_DIST = TODO lite.pc.in leck.pc.in
+ pkgconfigdir = $(libdir)/pkgconfig
+ pkgconfig_DATA = lite.pc leck.pc
diff --git a/package/lite/0003-pkg-config.patch b/package/lite/0003-pkg-config.patch
new file mode 100644 (file)
index 0000000..cdd2416
--- /dev/null
@@ -0,0 +1,22 @@
+From 7982cccbb6ad58f3802bb266467290200d130a48 Mon Sep 17 00:00:00 2001
+From: Ville Syrjala <syrjala@sci.fi>
+Date: Sat, 27 Nov 2010 01:14:25 +0200
+Subject: [PATCH] Too many '\' characters in the .pc file
+
+---
+ lite.pc.in |    2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/lite.pc.in b/lite.pc.in
+index 48eb969..3a21eaa 100644
+--- a/lite.pc.in
++++ b/lite.pc.in
+@@ -9,4 +9,4 @@ Description: "LiTE" is a Toolkit Engine
+ Requires: directfb >= @DFB_REQUIRED_VERSION@
+ Version: @VERSION@
+ Libs: -L${libdir} -llite
+-Cflags: -I${includedir} -DLITEFONTDIR=\\\"@LITEFONTDIR@\\\"
++Cflags: -I${includedir} -DLITEFONTDIR=\"@LITEFONTDIR@\"
+--
+1.7.1
+
diff --git a/package/lite/lite-dfbspy-stat.patch b/package/lite/lite-dfbspy-stat.patch
deleted file mode 100644 (file)
index 5ca7369..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-From upstream git (git://git.directfb.org/git/directfb/libs/LiTE.git)
-
-From ffe0ce78327a63ddb1265328ea9b5b03acdca019 Mon Sep 17 00:00:00 2001
-From: Denis Oliver Kropp <dok@directfb.org>
-Date: Fri, 1 Apr 2011 20:20:26 +0200
-Subject: [PATCH] dfbspy: Build fix for dfbspy example.
-
----
- examples/dfbspy.c |   20 ++++++++++----------
- 1 files changed, 10 insertions(+), 10 deletions(-)
-
-diff --git a/examples/dfbspy.c b/examples/dfbspy.c
-index 5f36f0b..c7f9725 100644
---- a/examples/dfbspy.c
-+++ b/examples/dfbspy.c
-@@ -89,9 +89,9 @@ read_stat( FusionStat *stat, int world )
- /**************************************************************************************************/
--#define CALC(x)     stat.x = (int)(((s.x - last_stat.x) * 1000 / (float) diff) + 0.5f)
-+#define CALC(x)     stats.x = (int)(((s.x - last_stat.x) * 1000 / (float) diff) + 0.5f)
--static FusionStat last_stat, stat;
-+static FusionStat last_stat, stats;
- static long long  last_millis;
- static int
-@@ -145,14 +145,14 @@ static const struct {
-      void          (*update)( LiteLabel *label, void *ctx );
-      void           *ctx;
- } list[] = {
--     { "lease/purchase", update_number, &stat.lease_purchase },
--     { "cede",           update_number, &stat.cede },
--     { "attach",         update_number, &stat.attach },
--     { "detach",         update_number, &stat.detach },
--     { "ref up",         update_number, &stat.ref_up },
--     { "ref down",       update_number, &stat.ref_down },
--     { "prevail/swoop",  update_number, &stat.prevail_swoop },
--     { "dismiss",        update_number, &stat.dismiss }
-+     { "lease/purchase", update_number, &stats.lease_purchase },
-+     { "cede",           update_number, &stats.cede },
-+     { "attach",         update_number, &stats.attach },
-+     { "detach",         update_number, &stats.detach },
-+     { "ref up",         update_number, &stats.ref_up },
-+     { "ref down",       update_number, &stats.ref_down },
-+     { "prevail/swoop",  update_number, &stats.prevail_swoop },
-+     { "dismiss",        update_number, &stats.dismiss }
- };
- #define NUM_LIST    (sizeof(list)/sizeof(list[0]))
--- 
-1.7.6.3
-
diff --git a/package/lite/lite-no-tests.patch b/package/lite/lite-no-tests.patch
deleted file mode 100644 (file)
index 3a47186..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/Makefile.in.orig 2008-07-07 13:07:12.000000000 +0200
-+++ b/Makefile.in      2008-07-07 13:07:05.000000000 +0200
-@@ -202,7 +202,7 @@
- target_vendor = @target_vendor@
- top_builddir = @top_builddir@
- top_srcdir = @top_srcdir@
--SUBDIRS = data fonts lite leck examples tests
-+SUBDIRS = data fonts lite leck examples
- EXTRA_DIST = TODO lite.pc.in leck.pc.in
- pkgconfigdir = $(libdir)/pkgconfig
- pkgconfig_DATA = lite.pc leck.pc
diff --git a/package/lite/lite-pkg-config.patch b/package/lite/lite-pkg-config.patch
deleted file mode 100644 (file)
index cdd2416..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-From 7982cccbb6ad58f3802bb266467290200d130a48 Mon Sep 17 00:00:00 2001
-From: Ville Syrjala <syrjala@sci.fi>
-Date: Sat, 27 Nov 2010 01:14:25 +0200
-Subject: [PATCH] Too many '\' characters in the .pc file
-
----
- lite.pc.in |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/lite.pc.in b/lite.pc.in
-index 48eb969..3a21eaa 100644
---- a/lite.pc.in
-+++ b/lite.pc.in
-@@ -9,4 +9,4 @@ Description: "LiTE" is a Toolkit Engine
- Requires: directfb >= @DFB_REQUIRED_VERSION@
- Version: @VERSION@
- Libs: -L${libdir} -llite
--Cflags: -I${includedir} -DLITEFONTDIR=\\\"@LITEFONTDIR@\\\"
-+Cflags: -I${includedir} -DLITEFONTDIR=\"@LITEFONTDIR@\"
---
-1.7.1
-
diff --git a/package/lm-sensors/0001-static-build.patch b/package/lm-sensors/0001-static-build.patch
new file mode 100644 (file)
index 0000000..63edd44
--- /dev/null
@@ -0,0 +1,81 @@
+Add support for static only build
+
+This patch adds support for a BUILD_SHARED_LIB variable that allows to
+enable/disable the build of the shared library, in order to support
+static-only builds.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/Makefile
+===================================================================
+--- a/Makefile
++++ b/Makefile
+@@ -85,6 +85,9 @@
+ # Build and install static library
+ BUILD_STATIC_LIB := 1
++# Build and install shared library
++BUILD_SHARED_LIB := 1
++
+ # Set these to add preprocessor or compiler flags, or use
+ # environment variables
+ # CFLAGS :=
+Index: b/lib/Module.mk
+===================================================================
+--- a/lib/Module.mk
++++ b/lib/Module.mk
+@@ -43,8 +43,14 @@
+ LIBSTLIBNAME := libsensors.a
+ LIBSHSONAME := libsensors.so.$(LIBMAINVER)
++ifeq ($(BUILD_SHARED_LIB),1)
+ LIBTARGETS := $(MODULE_DIR)/$(LIBSHLIBNAME) \
+               $(MODULE_DIR)/$(LIBSHSONAME) $(MODULE_DIR)/$(LIBSHBASENAME)
++LIBDEP_FOR_PROGS := $(LIBSHBASENAME)
++else
++LIBDEP_FOR_PROGS := $(LIBSTLIBNAME)
++endif
++
+ ifeq ($(BUILD_STATIC_LIB),1)
+ LIBTARGETS += $(MODULE_DIR)/$(LIBSTLIBNAME)
+ endif
+@@ -131,9 +137,11 @@
+ ifeq ($(BUILD_STATIC_LIB),1)
+       $(INSTALL) -m 644 $(LIB_DIR)/$(LIBSTLIBNAME) $(DESTDIR)$(LIBDIR)
+ endif
++ifeq ($(BUILD_SHARED_LIB),1)
+       $(INSTALL) -m 755 $(LIB_DIR)/$(LIBSHLIBNAME) $(DESTDIR)$(LIBDIR)
+       $(LN) $(LIBSHLIBNAME) $(DESTDIR)$(LIBDIR)/$(LIBSHSONAME)
+       $(LN) $(LIBSHSONAME) $(DESTDIR)$(LIBDIR)/$(LIBSHBASENAME)
++endif
+       @if [ -z "$(DESTDIR)" -a "$(LIBDIR)" != "/usr/lib" -a "$(LIBDIR)" != "/lib" ] ; then \
+          if [ -e "/usr/lib/$(LIBSHSONAME)" -o -e "/usr/lib/$(LIBSHBASENAME)" ] ; then \
+            echo '******************************************************************************' ; \
+Index: b/prog/sensord/Module.mk
+===================================================================
+--- a/prog/sensord/Module.mk
++++ b/prog/sensord/Module.mk
+@@ -41,7 +41,7 @@
+ REMOVESENSORDBIN := $(patsubst $(MODULE_DIR)/%,$(DESTDIR)$(SBINDIR)/%,$(PROGSENSORDTARGETS))
+ REMOVESENSORDMAN := $(patsubst $(MODULE_DIR)/%,$(DESTDIR)$(PROGSENSORDMAN8DIR)/%,$(PROGSENSORDMAN8FILES))
+-$(PROGSENSORDTARGETS): $(PROGSENSORDSOURCES:.c=.ro) lib/$(LIBSHBASENAME)
++$(PROGSENSORDTARGETS): $(PROGSENSORDSOURCES:.c=.ro) lib/$(LIBDEP_FOR_PROGS)
+       $(CC) $(EXLDFLAGS) -o $@ $(PROGSENSORDSOURCES:.c=.ro) -Llib -lsensors -lrrd
+ all-prog-sensord: $(PROGSENSORDTARGETS)
+Index: b/prog/sensors/Module.mk
+===================================================================
+--- a/prog/sensors/Module.mk
++++ b/prog/sensors/Module.mk
+@@ -39,8 +39,8 @@
+ LIBICONV := $(shell if /sbin/ldconfig -p | grep -q '/libiconv\.so$$' ; then echo \-liconv; else echo; fi)
+-$(PROGSENSORSTARGETS): $(PROGSENSORSSOURCES:.c=.ro) lib/$(LIBSHBASENAME)
+-      $(CC) $(EXLDFLAGS) -o $@ $(PROGSENSORSSOURCES:.c=.ro) $(LIBICONV) -Llib -lsensors
++$(PROGSENSORSTARGETS): $(PROGSENSORSSOURCES:.c=.ro) lib/$(LIBDEP_FOR_PROGS)
++      $(CC) $(EXLDFLAGS) -o $@ $(PROGSENSORSSOURCES:.c=.ro) $(LIBICONV) -Llib -lsensors -lm
+ all-prog-sensors: $(PROGSENSORSTARGETS)
+ user :: all-prog-sensors
diff --git a/package/lm-sensors/0002-no-host-ldconfig.patch b/package/lm-sensors/0002-no-host-ldconfig.patch
new file mode 100644 (file)
index 0000000..51f7f6a
--- /dev/null
@@ -0,0 +1,29 @@
+Remove usage of host ldconfig
+
+To know whether the libiconv library is available, lm-sensors is using
+the host ldconfig, which is obviously wrong in cross-compilation.
+
+Moreover, the lm-sensors program making use of the iconv_*() API
+already does it when __UCLIBC__ is *not* defined. In this case, the
+iconv_*() functions are already part of the C library, so there is no
+need to link against a separate library. Therefore, this patch simply
+removes the libiconv handling.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/prog/sensors/Module.mk
+===================================================================
+--- a/prog/sensors/Module.mk
++++ b/prog/sensors/Module.mk
+@@ -37,10 +37,8 @@
+ REMOVESENSORSBIN := $(patsubst $(MODULE_DIR)/%,$(DESTDIR)$(BINDIR)/%,$(PROGSENSORSTARGETS))
+ REMOVESENSORSMAN := $(patsubst $(MODULE_DIR)/%,$(DESTDIR)$(PROGSENSORSMAN1DIR)/%,$(PROGSENSORSMAN1FILES))
+-LIBICONV := $(shell if /sbin/ldconfig -p | grep -q '/libiconv\.so$$' ; then echo \-liconv; else echo; fi)
+-
+ $(PROGSENSORSTARGETS): $(PROGSENSORSSOURCES:.c=.ro) lib/$(LIBDEP_FOR_PROGS)
+-      $(CC) $(EXLDFLAGS) -o $@ $(PROGSENSORSSOURCES:.c=.ro) $(LIBICONV) -Llib -lsensors -lm
++      $(CC) $(EXLDFLAGS) -o $@ $(PROGSENSORSSOURCES:.c=.ro) -Llib -lsensors -lm
+ all-prog-sensors: $(PROGSENSORSTARGETS)
+ user :: all-prog-sensors
diff --git a/package/lm-sensors/lm-sensors-0001-static-build.patch b/package/lm-sensors/lm-sensors-0001-static-build.patch
deleted file mode 100644 (file)
index 63edd44..0000000
+++ /dev/null
@@ -1,81 +0,0 @@
-Add support for static only build
-
-This patch adds support for a BUILD_SHARED_LIB variable that allows to
-enable/disable the build of the shared library, in order to support
-static-only builds.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/Makefile
-===================================================================
---- a/Makefile
-+++ b/Makefile
-@@ -85,6 +85,9 @@
- # Build and install static library
- BUILD_STATIC_LIB := 1
-+# Build and install shared library
-+BUILD_SHARED_LIB := 1
-+
- # Set these to add preprocessor or compiler flags, or use
- # environment variables
- # CFLAGS :=
-Index: b/lib/Module.mk
-===================================================================
---- a/lib/Module.mk
-+++ b/lib/Module.mk
-@@ -43,8 +43,14 @@
- LIBSTLIBNAME := libsensors.a
- LIBSHSONAME := libsensors.so.$(LIBMAINVER)
-+ifeq ($(BUILD_SHARED_LIB),1)
- LIBTARGETS := $(MODULE_DIR)/$(LIBSHLIBNAME) \
-               $(MODULE_DIR)/$(LIBSHSONAME) $(MODULE_DIR)/$(LIBSHBASENAME)
-+LIBDEP_FOR_PROGS := $(LIBSHBASENAME)
-+else
-+LIBDEP_FOR_PROGS := $(LIBSTLIBNAME)
-+endif
-+
- ifeq ($(BUILD_STATIC_LIB),1)
- LIBTARGETS += $(MODULE_DIR)/$(LIBSTLIBNAME)
- endif
-@@ -131,9 +137,11 @@
- ifeq ($(BUILD_STATIC_LIB),1)
-       $(INSTALL) -m 644 $(LIB_DIR)/$(LIBSTLIBNAME) $(DESTDIR)$(LIBDIR)
- endif
-+ifeq ($(BUILD_SHARED_LIB),1)
-       $(INSTALL) -m 755 $(LIB_DIR)/$(LIBSHLIBNAME) $(DESTDIR)$(LIBDIR)
-       $(LN) $(LIBSHLIBNAME) $(DESTDIR)$(LIBDIR)/$(LIBSHSONAME)
-       $(LN) $(LIBSHSONAME) $(DESTDIR)$(LIBDIR)/$(LIBSHBASENAME)
-+endif
-       @if [ -z "$(DESTDIR)" -a "$(LIBDIR)" != "/usr/lib" -a "$(LIBDIR)" != "/lib" ] ; then \
-          if [ -e "/usr/lib/$(LIBSHSONAME)" -o -e "/usr/lib/$(LIBSHBASENAME)" ] ; then \
-            echo '******************************************************************************' ; \
-Index: b/prog/sensord/Module.mk
-===================================================================
---- a/prog/sensord/Module.mk
-+++ b/prog/sensord/Module.mk
-@@ -41,7 +41,7 @@
- REMOVESENSORDBIN := $(patsubst $(MODULE_DIR)/%,$(DESTDIR)$(SBINDIR)/%,$(PROGSENSORDTARGETS))
- REMOVESENSORDMAN := $(patsubst $(MODULE_DIR)/%,$(DESTDIR)$(PROGSENSORDMAN8DIR)/%,$(PROGSENSORDMAN8FILES))
--$(PROGSENSORDTARGETS): $(PROGSENSORDSOURCES:.c=.ro) lib/$(LIBSHBASENAME)
-+$(PROGSENSORDTARGETS): $(PROGSENSORDSOURCES:.c=.ro) lib/$(LIBDEP_FOR_PROGS)
-       $(CC) $(EXLDFLAGS) -o $@ $(PROGSENSORDSOURCES:.c=.ro) -Llib -lsensors -lrrd
- all-prog-sensord: $(PROGSENSORDTARGETS)
-Index: b/prog/sensors/Module.mk
-===================================================================
---- a/prog/sensors/Module.mk
-+++ b/prog/sensors/Module.mk
-@@ -39,8 +39,8 @@
- LIBICONV := $(shell if /sbin/ldconfig -p | grep -q '/libiconv\.so$$' ; then echo \-liconv; else echo; fi)
--$(PROGSENSORSTARGETS): $(PROGSENSORSSOURCES:.c=.ro) lib/$(LIBSHBASENAME)
--      $(CC) $(EXLDFLAGS) -o $@ $(PROGSENSORSSOURCES:.c=.ro) $(LIBICONV) -Llib -lsensors
-+$(PROGSENSORSTARGETS): $(PROGSENSORSSOURCES:.c=.ro) lib/$(LIBDEP_FOR_PROGS)
-+      $(CC) $(EXLDFLAGS) -o $@ $(PROGSENSORSSOURCES:.c=.ro) $(LIBICONV) -Llib -lsensors -lm
- all-prog-sensors: $(PROGSENSORSTARGETS)
- user :: all-prog-sensors
diff --git a/package/lm-sensors/lm-sensors-0002-no-host-ldconfig.patch b/package/lm-sensors/lm-sensors-0002-no-host-ldconfig.patch
deleted file mode 100644 (file)
index 51f7f6a..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-Remove usage of host ldconfig
-
-To know whether the libiconv library is available, lm-sensors is using
-the host ldconfig, which is obviously wrong in cross-compilation.
-
-Moreover, the lm-sensors program making use of the iconv_*() API
-already does it when __UCLIBC__ is *not* defined. In this case, the
-iconv_*() functions are already part of the C library, so there is no
-need to link against a separate library. Therefore, this patch simply
-removes the libiconv handling.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/prog/sensors/Module.mk
-===================================================================
---- a/prog/sensors/Module.mk
-+++ b/prog/sensors/Module.mk
-@@ -37,10 +37,8 @@
- REMOVESENSORSBIN := $(patsubst $(MODULE_DIR)/%,$(DESTDIR)$(BINDIR)/%,$(PROGSENSORSTARGETS))
- REMOVESENSORSMAN := $(patsubst $(MODULE_DIR)/%,$(DESTDIR)$(PROGSENSORSMAN1DIR)/%,$(PROGSENSORSMAN1FILES))
--LIBICONV := $(shell if /sbin/ldconfig -p | grep -q '/libiconv\.so$$' ; then echo \-liconv; else echo; fi)
--
- $(PROGSENSORSTARGETS): $(PROGSENSORSSOURCES:.c=.ro) lib/$(LIBDEP_FOR_PROGS)
--      $(CC) $(EXLDFLAGS) -o $@ $(PROGSENSORSSOURCES:.c=.ro) $(LIBICONV) -Llib -lsensors -lm
-+      $(CC) $(EXLDFLAGS) -o $@ $(PROGSENSORSSOURCES:.c=.ro) -Llib -lsensors -lm
- all-prog-sensors: $(PROGSENSORSTARGETS)
- user :: all-prog-sensors
diff --git a/package/lockfile-progs/0001-sus3v-legacy.patch b/package/lockfile-progs/0001-sus3v-legacy.patch
new file mode 100644 (file)
index 0000000..8cf552e
--- /dev/null
@@ -0,0 +1,11 @@
+--- /lockfile-progs.orig.c     2007-10-11 10:32:09.000000000 -0300
++++ /lockfile-progs.c  2007-10-11 10:32:28.000000000 -0300
+@@ -93,7 +93,7 @@
+     { NULL, 0, NULL, 0 }
+   };
+-  char *cmd_name = rindex(argv[0], '/');
++  char *cmd_name = strrchr(argv[0], '/');
+   int mail_cmd_p = 0;
+   if(cmd_name != NULL) {
diff --git a/package/lockfile-progs/lockfile-progs-01-sus3v-legacy.patch b/package/lockfile-progs/lockfile-progs-01-sus3v-legacy.patch
deleted file mode 100644 (file)
index 8cf552e..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
---- /lockfile-progs.orig.c     2007-10-11 10:32:09.000000000 -0300
-+++ /lockfile-progs.c  2007-10-11 10:32:28.000000000 -0300
-@@ -93,7 +93,7 @@
-     { NULL, 0, NULL, 0 }
-   };
--  char *cmd_name = rindex(argv[0], '/');
-+  char *cmd_name = strrchr(argv[0], '/');
-   int mail_cmd_p = 0;
-   if(cmd_name != NULL) {
diff --git a/package/log4cxx/0001-charset-fixes.patch b/package/log4cxx/0001-charset-fixes.patch
new file mode 100644 (file)
index 0000000..75567fd
--- /dev/null
@@ -0,0 +1,43 @@
+Fix build when iconv support is not available
+
+When iconv support is not available, the apr-util library does not
+provide character set conversion features, and therefore APR_HAS_XLATE
+is false.
+
+However, on Linux !defined(_WIN32) is always true, but the part of the
+code that defines the APRCharsetDecoder and APRCharsetEncoder are only
+enclosed in a #if APR_HAS_XLATE, without the "|| defined(_WIN32)"
+which leads to build failures: the APRCharsetEncoder and
+APRCharsetDecoder classes are used without being defined.
+
+This patch removes the || !defined(_WIN32) so that when iconv support
+is not here, we fall back to raising an exception at runtime.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/src/main/cpp/charsetdecoder.cpp
+===================================================================
+--- a/src/main/cpp/charsetdecoder.cpp
++++ b/src/main/cpp/charsetdecoder.cpp
+@@ -476,7 +476,7 @@
+         StringHelper::equalsIgnoreCase(charset, LOG4CXX_STR("ISO-LATIN-1"), LOG4CXX_STR("iso-latin-1"))) {
+         return new ISOLatinCharsetDecoder();
+     }
+-#if APR_HAS_XLATE || !defined(_WIN32)
++#if APR_HAS_XLATE
+     return new APRCharsetDecoder(charset);
+ #else    
+     throw IllegalArgumentException(charset);
+Index: b/src/main/cpp/charsetencoder.cpp
+===================================================================
+--- a/src/main/cpp/charsetencoder.cpp
++++ b/src/main/cpp/charsetencoder.cpp
+@@ -484,7 +484,7 @@
+     } else if (StringHelper::equalsIgnoreCase(charset, LOG4CXX_STR("UTF-16LE"), LOG4CXX_STR("utf-16le"))) {
+         return new UTF16LECharsetEncoder();
+     }
+-#if APR_HAS_XLATE || !defined(_WIN32)
++#if APR_HAS_XLATE
+     return new APRCharsetEncoder(charset);
+ #else    
+     throw IllegalArgumentException(charset);
diff --git a/package/log4cxx/0002-missing-includes.patch b/package/log4cxx/0002-missing-includes.patch
new file mode 100644 (file)
index 0000000..dd4da11
--- /dev/null
@@ -0,0 +1,44 @@
+commit bcaf1f8a682d641cee325142099c371464fd5946
+Author: Curtis William Arnold <carnold@apache.org>
+Date:   Tue May 20 16:05:37 2008 +0000
+
+    LOGCXX-286: gcc 4.3 requires #include <cstring>
+    
+    git-svn-id: https://svn.apache.org/repos/asf/logging/log4cxx/trunk@658304 13f79535-47bb-0310-9956-ffa450edef68
+
+diff --git a/src/examples/cpp/console.cpp b/src/examples/cpp/console.cpp
+index 6a01d8a..a673a10 100755
+--- a/src/examples/cpp/console.cpp
++++ b/src/examples/cpp/console.cpp
+@@ -22,6 +22,7 @@
+ #include <log4cxx/logmanager.h>
+ #include <iostream>
+ #include <locale.h>
++#include <cstring>
+ using namespace log4cxx;
+ using namespace log4cxx::helpers;
+diff --git a/src/main/cpp/inputstreamreader.cpp b/src/main/cpp/inputstreamreader.cpp
+index 52b1c0a..cb45181 100644
+--- a/src/main/cpp/inputstreamreader.cpp
++++ b/src/main/cpp/inputstreamreader.cpp
+@@ -20,6 +20,7 @@
+ #include <log4cxx/helpers/exception.h>
+ #include <log4cxx/helpers/pool.h>
+ #include <log4cxx/helpers/bytebuffer.h>
++#include <cstring>
+ using namespace log4cxx;
+ using namespace log4cxx::helpers;
+diff --git a/src/main/cpp/socketoutputstream.cpp b/src/main/cpp/socketoutputstream.cpp
+index 185f835..c61eb11 100644
+--- a/src/main/cpp/socketoutputstream.cpp
++++ b/src/main/cpp/socketoutputstream.cpp
+@@ -19,6 +19,7 @@
+ #include <log4cxx/helpers/socketoutputstream.h>
+ #include <log4cxx/helpers/socket.h>
+ #include <log4cxx/helpers/bytebuffer.h>
++#include <cstring>
+ using namespace log4cxx;
+ using namespace log4cxx::helpers;
diff --git a/package/log4cxx/0003-missing-includes.patch b/package/log4cxx/0003-missing-includes.patch
new file mode 100644 (file)
index 0000000..cd21bba
--- /dev/null
@@ -0,0 +1,21 @@
+commit ce62c00ea5f9bf2f0740ecde5b245c9b7edc80ff
+Author: Curtis William Arnold <carnold@apache.org>
+Date:   Mon Apr 27 03:53:50 2009 +0000
+
+    LOGCXX-332: fails to build with gcc 4.4
+    
+    git-svn-id: https://svn.apache.org/repos/asf/logging/log4cxx/trunk@768863 13f79535-47bb-0310-9956-ffa450edef68
+
+diff --git a/src/examples/cpp/console.cpp b/src/examples/cpp/console.cpp
+index a673a10..f44c944 100755
+--- a/src/examples/cpp/console.cpp
++++ b/src/examples/cpp/console.cpp
+@@ -23,6 +23,8 @@
+ #include <iostream>
+ #include <locale.h>
+ #include <cstring>
++#include <cstdio>
++#include <stdint.h>
+ using namespace log4cxx;
+ using namespace log4cxx::helpers;
diff --git a/package/log4cxx/log4cxx-0001-charset-fixes.patch b/package/log4cxx/log4cxx-0001-charset-fixes.patch
deleted file mode 100644 (file)
index 75567fd..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-Fix build when iconv support is not available
-
-When iconv support is not available, the apr-util library does not
-provide character set conversion features, and therefore APR_HAS_XLATE
-is false.
-
-However, on Linux !defined(_WIN32) is always true, but the part of the
-code that defines the APRCharsetDecoder and APRCharsetEncoder are only
-enclosed in a #if APR_HAS_XLATE, without the "|| defined(_WIN32)"
-which leads to build failures: the APRCharsetEncoder and
-APRCharsetDecoder classes are used without being defined.
-
-This patch removes the || !defined(_WIN32) so that when iconv support
-is not here, we fall back to raising an exception at runtime.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/src/main/cpp/charsetdecoder.cpp
-===================================================================
---- a/src/main/cpp/charsetdecoder.cpp
-+++ b/src/main/cpp/charsetdecoder.cpp
-@@ -476,7 +476,7 @@
-         StringHelper::equalsIgnoreCase(charset, LOG4CXX_STR("ISO-LATIN-1"), LOG4CXX_STR("iso-latin-1"))) {
-         return new ISOLatinCharsetDecoder();
-     }
--#if APR_HAS_XLATE || !defined(_WIN32)
-+#if APR_HAS_XLATE
-     return new APRCharsetDecoder(charset);
- #else    
-     throw IllegalArgumentException(charset);
-Index: b/src/main/cpp/charsetencoder.cpp
-===================================================================
---- a/src/main/cpp/charsetencoder.cpp
-+++ b/src/main/cpp/charsetencoder.cpp
-@@ -484,7 +484,7 @@
-     } else if (StringHelper::equalsIgnoreCase(charset, LOG4CXX_STR("UTF-16LE"), LOG4CXX_STR("utf-16le"))) {
-         return new UTF16LECharsetEncoder();
-     }
--#if APR_HAS_XLATE || !defined(_WIN32)
-+#if APR_HAS_XLATE
-     return new APRCharsetEncoder(charset);
- #else    
-     throw IllegalArgumentException(charset);
diff --git a/package/log4cxx/log4cxx-0002-missing-includes.patch b/package/log4cxx/log4cxx-0002-missing-includes.patch
deleted file mode 100644 (file)
index dd4da11..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-commit bcaf1f8a682d641cee325142099c371464fd5946
-Author: Curtis William Arnold <carnold@apache.org>
-Date:   Tue May 20 16:05:37 2008 +0000
-
-    LOGCXX-286: gcc 4.3 requires #include <cstring>
-    
-    git-svn-id: https://svn.apache.org/repos/asf/logging/log4cxx/trunk@658304 13f79535-47bb-0310-9956-ffa450edef68
-
-diff --git a/src/examples/cpp/console.cpp b/src/examples/cpp/console.cpp
-index 6a01d8a..a673a10 100755
---- a/src/examples/cpp/console.cpp
-+++ b/src/examples/cpp/console.cpp
-@@ -22,6 +22,7 @@
- #include <log4cxx/logmanager.h>
- #include <iostream>
- #include <locale.h>
-+#include <cstring>
- using namespace log4cxx;
- using namespace log4cxx::helpers;
-diff --git a/src/main/cpp/inputstreamreader.cpp b/src/main/cpp/inputstreamreader.cpp
-index 52b1c0a..cb45181 100644
---- a/src/main/cpp/inputstreamreader.cpp
-+++ b/src/main/cpp/inputstreamreader.cpp
-@@ -20,6 +20,7 @@
- #include <log4cxx/helpers/exception.h>
- #include <log4cxx/helpers/pool.h>
- #include <log4cxx/helpers/bytebuffer.h>
-+#include <cstring>
- using namespace log4cxx;
- using namespace log4cxx::helpers;
-diff --git a/src/main/cpp/socketoutputstream.cpp b/src/main/cpp/socketoutputstream.cpp
-index 185f835..c61eb11 100644
---- a/src/main/cpp/socketoutputstream.cpp
-+++ b/src/main/cpp/socketoutputstream.cpp
-@@ -19,6 +19,7 @@
- #include <log4cxx/helpers/socketoutputstream.h>
- #include <log4cxx/helpers/socket.h>
- #include <log4cxx/helpers/bytebuffer.h>
-+#include <cstring>
- using namespace log4cxx;
- using namespace log4cxx::helpers;
diff --git a/package/log4cxx/log4cxx-0003-missing-includes.patch b/package/log4cxx/log4cxx-0003-missing-includes.patch
deleted file mode 100644 (file)
index cd21bba..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-commit ce62c00ea5f9bf2f0740ecde5b245c9b7edc80ff
-Author: Curtis William Arnold <carnold@apache.org>
-Date:   Mon Apr 27 03:53:50 2009 +0000
-
-    LOGCXX-332: fails to build with gcc 4.4
-    
-    git-svn-id: https://svn.apache.org/repos/asf/logging/log4cxx/trunk@768863 13f79535-47bb-0310-9956-ffa450edef68
-
-diff --git a/src/examples/cpp/console.cpp b/src/examples/cpp/console.cpp
-index a673a10..f44c944 100755
---- a/src/examples/cpp/console.cpp
-+++ b/src/examples/cpp/console.cpp
-@@ -23,6 +23,8 @@
- #include <iostream>
- #include <locale.h>
- #include <cstring>
-+#include <cstdio>
-+#include <stdint.h>
- using namespace log4cxx;
- using namespace log4cxx::helpers;
diff --git a/package/lshw/0001-add-LIBS.patch b/package/lshw/0001-add-LIBS.patch
new file mode 100644 (file)
index 0000000..70b2a5b
--- /dev/null
@@ -0,0 +1,30 @@
+We need to be able to pass extra LIBS when our toolchain lacks NLS support,
+this way we can build libintl and link to it.
+A good example is uClibc with locale support disabled.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura lshw-B.02.16.orig/src/gui/Makefile lshw-B.02.16/src/gui/Makefile
+--- lshw-B.02.16.orig/src/gui/Makefile 2012-05-28 12:32:49.303885759 -0300
++++ lshw-B.02.16/src/gui/Makefile      2012-05-28 12:33:33.850206001 -0300
+@@ -11,7 +11,7 @@
+ CXXFLAGS=-g -Wall $(INCLUDES) $(DEFINES) $(RPM_OPT_FLAGS)
+ CFLAGS=$(CXXFLAGS) $(DEFINES)
+ GTKLIBS=$(shell pkg-config gtk+-2.0 gmodule-2.0 --libs)
+-LIBS=-L../core -llshw -lresolv -lsqlite3 $(GTKLIBS)
++LIBS+=-L../core -llshw -lresolv -lsqlite3 $(GTKLIBS)
+ LDFLAGS=
+ ifneq ($(shell $(LD) --help 2| grep -- --as-needed), )
+       LDFLAGS+= -Wl,--as-needed
+diff -Nura lshw-B.02.16.orig/src/Makefile lshw-B.02.16/src/Makefile
+--- lshw-B.02.16.orig/src/Makefile     2012-05-28 12:32:49.292885680 -0300
++++ lshw-B.02.16/src/Makefile  2012-05-28 12:33:24.530139060 -0300
+@@ -30,7 +30,7 @@
+       LDFLAGS+= -Wl,--as-needed
+ endif
+ LDSTATIC=-static
+-LIBS=-llshw -lresolv
++LIBS+=-llshw -lresolv
+ ifeq ($(SQLITE), 1)
+       LIBS+= $(shell pkg-config --libs sqlite3)
+ endif
diff --git a/package/lshw/lshw-add-LIBS.patch b/package/lshw/lshw-add-LIBS.patch
deleted file mode 100644 (file)
index 70b2a5b..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-We need to be able to pass extra LIBS when our toolchain lacks NLS support,
-this way we can build libintl and link to it.
-A good example is uClibc with locale support disabled.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura lshw-B.02.16.orig/src/gui/Makefile lshw-B.02.16/src/gui/Makefile
---- lshw-B.02.16.orig/src/gui/Makefile 2012-05-28 12:32:49.303885759 -0300
-+++ lshw-B.02.16/src/gui/Makefile      2012-05-28 12:33:33.850206001 -0300
-@@ -11,7 +11,7 @@
- CXXFLAGS=-g -Wall $(INCLUDES) $(DEFINES) $(RPM_OPT_FLAGS)
- CFLAGS=$(CXXFLAGS) $(DEFINES)
- GTKLIBS=$(shell pkg-config gtk+-2.0 gmodule-2.0 --libs)
--LIBS=-L../core -llshw -lresolv -lsqlite3 $(GTKLIBS)
-+LIBS+=-L../core -llshw -lresolv -lsqlite3 $(GTKLIBS)
- LDFLAGS=
- ifneq ($(shell $(LD) --help 2| grep -- --as-needed), )
-       LDFLAGS+= -Wl,--as-needed
-diff -Nura lshw-B.02.16.orig/src/Makefile lshw-B.02.16/src/Makefile
---- lshw-B.02.16.orig/src/Makefile     2012-05-28 12:32:49.292885680 -0300
-+++ lshw-B.02.16/src/Makefile  2012-05-28 12:33:24.530139060 -0300
-@@ -30,7 +30,7 @@
-       LDFLAGS+= -Wl,--as-needed
- endif
- LDSTATIC=-static
--LIBS=-llshw -lresolv
-+LIBS+=-llshw -lresolv
- ifeq ($(SQLITE), 1)
-       LIBS+= $(shell pkg-config --libs sqlite3)
- endif
diff --git a/package/ltp-testsuite/0001-fix-build-on-uClibc-exp10.patch b/package/ltp-testsuite/0001-fix-build-on-uClibc-exp10.patch
new file mode 100644 (file)
index 0000000..7a02d95
--- /dev/null
@@ -0,0 +1,22 @@
+Inspired by: http://peter.korsgaard.com/patches/alsa-utils/alsamixer-fix-build-on-uClibc-exp10.patch
+
+exp10 extension is not part of uClibc, so compute it.
+
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+
+diff -purN ltp-testsuite-20101031.orig/testcases/realtime/lib/libstats.c ltp-testsuite-20101031/testcases/realtime/lib/libstats.c
+--- ltp-testsuite-20101031.orig/testcases/realtime/lib/libstats.c      2012-10-22 23:19:02.306646174 +0200
++++ ltp-testsuite-20101031/testcases/realtime/lib/libstats.c   2012-10-22 23:25:41.554847766 +0200
+@@ -46,6 +46,11 @@
+ #include <libstats.h>
+ #include <librttest.h>
++#ifdef __UCLIBC__
++/* 10^x = 10^(log e^x) = (e^x)^log10 = e^(x * log 10) */
++#define exp10(x) (exp((x) * log(10)))
++#endif /* __UCLIBC__ */
++
+ int save_stats = 0;
+ /* static helper functions */
diff --git a/package/ltp-testsuite/ltp-testsuite-fix-build-on-uClibc-exp10.patch b/package/ltp-testsuite/ltp-testsuite-fix-build-on-uClibc-exp10.patch
deleted file mode 100644 (file)
index 7a02d95..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-Inspired by: http://peter.korsgaard.com/patches/alsa-utils/alsamixer-fix-build-on-uClibc-exp10.patch
-
-exp10 extension is not part of uClibc, so compute it.
-
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
-
-diff -purN ltp-testsuite-20101031.orig/testcases/realtime/lib/libstats.c ltp-testsuite-20101031/testcases/realtime/lib/libstats.c
---- ltp-testsuite-20101031.orig/testcases/realtime/lib/libstats.c      2012-10-22 23:19:02.306646174 +0200
-+++ ltp-testsuite-20101031/testcases/realtime/lib/libstats.c   2012-10-22 23:25:41.554847766 +0200
-@@ -46,6 +46,11 @@
- #include <libstats.h>
- #include <librttest.h>
-+#ifdef __UCLIBC__
-+/* 10^x = 10^(log e^x) = (e^x)^log10 = e^(x * log 10) */
-+#define exp10(x) (exp((x) * log(10)))
-+#endif /* __UCLIBC__ */
-+
- int save_stats = 0;
- /* static helper functions */
diff --git a/package/ltrace/0001-events.patch b/package/ltrace/0001-events.patch
new file mode 100644 (file)
index 0000000..f3699a1
--- /dev/null
@@ -0,0 +1,47 @@
+[PATCH] events.c: add similar system headers workaround as trace.c
+
+Needed for E.G. powerpc on uClibc.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ sysdeps/linux-gnu/events.c |   27 +++++++++++++++++++++++++++
+ 1 file changed, 27 insertions(+)
+
+Index: ltrace-0.6.0/sysdeps/linux-gnu/events.c
+===================================================================
+--- ltrace-0.6.0.orig/sysdeps/linux-gnu/events.c
++++ ltrace-0.6.0/sysdeps/linux-gnu/events.c
+@@ -11,6 +11,33 @@
+ #include "common.h"
++/* If the system headers did not provide the constants, hard-code the normal
++   values.  */
++#ifndef PTRACE_EVENT_FORK
++
++#define PTRACE_OLDSETOPTIONS    21
++#define PTRACE_SETOPTIONS       0x4200
++#define PTRACE_GETEVENTMSG      0x4201
++
++/* options set using PTRACE_SETOPTIONS */
++#define PTRACE_O_TRACESYSGOOD   0x00000001
++#define PTRACE_O_TRACEFORK      0x00000002
++#define PTRACE_O_TRACEVFORK     0x00000004
++#define PTRACE_O_TRACECLONE     0x00000008
++#define PTRACE_O_TRACEEXEC      0x00000010
++#define PTRACE_O_TRACEVFORKDONE 0x00000020
++#define PTRACE_O_TRACEEXIT      0x00000040
++
++/* Wait extended result codes for the above trace options.  */
++#define PTRACE_EVENT_FORK       1
++#define PTRACE_EVENT_VFORK      2
++#define PTRACE_EVENT_CLONE      3
++#define PTRACE_EVENT_EXEC       4
++#define PTRACE_EVENT_VFORK_DONE 5
++#define PTRACE_EVENT_EXIT       6
++
++#endif /* PTRACE_EVENT_FORK */
++
+ static Event event;
+ Event *
diff --git a/package/ltrace/0002-arm-plt.patch b/package/ltrace/0002-arm-plt.patch
new file mode 100644 (file)
index 0000000..f130ce8
--- /dev/null
@@ -0,0 +1,30 @@
+From 04377d28135e351c8d096c4392a493e937416815 Mon Sep 17 00:00:00 2001
+From: Alexandre Belloni <alexandre.belloni@free-electrons.com>
+Date: Thu, 24 Jul 2014 23:15:20 +0200
+Subject: [PATCH] Allow building with uclibc toolchains
+
+Unfortunately, uclicbc doesn't define SHT_ARM_ATTRIBUTES in elf.h
+
+Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
+---
+ sysdeps/linux-gnu/arm/plt.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/sysdeps/linux-gnu/arm/plt.c b/sysdeps/linux-gnu/arm/plt.c
+index 9e9e37f0c5b0..a0a5795eb9cb 100644
+--- a/sysdeps/linux-gnu/arm/plt.c
++++ b/sysdeps/linux-gnu/arm/plt.c
+@@ -28,6 +28,10 @@
+ #include "library.h"
+ #include "ltrace-elf.h"
++#ifndef SHT_ARM_ATTRIBUTES
++#define SHT_ARM_ATTRIBUTES     0x70000003
++#endif
++
+ static int
+ get_hardfp(uint64_t abi_vfp_args)
+ {
+-- 
+1.9.1
+
diff --git a/package/ltrace/0003-PPC-fix-PPC32-build.patch b/package/ltrace/0003-PPC-fix-PPC32-build.patch
new file mode 100644 (file)
index 0000000..92055c9
--- /dev/null
@@ -0,0 +1,31 @@
+From c01c6dc017b5ae2b6de7b690725890642b6bf857 Mon Sep 17 00:00:00 2001
+From: Alexandre Belloni <alexandre.belloni@free-electrons.com>
+Date: Tue, 29 Jul 2014 11:01:31 +0200
+Subject: [PATCH] PPC: fix PPC32 build
+
+Compilation on PPC32 fails because STACK_FRAME_OVERHEAD is never defined
+in arch.h.
+
+Define it to 112 on that platform to restore the same behaviour as
+before commit eea4ad2cce289753aaa35b4e0258a76d8f8f367c.
+
+Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
+---
+ sysdeps/linux-gnu/ppc/arch.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/sysdeps/linux-gnu/ppc/arch.h b/sysdeps/linux-gnu/ppc/arch.h
+index 7918a136b016..d5ad759a755c 100644
+--- a/sysdeps/linux-gnu/ppc/arch.h
++++ b/sysdeps/linux-gnu/ppc/arch.h
+@@ -57,6 +57,7 @@
+ #else
+ #define BREAKPOINT_VALUE { 0x7f, 0xe0, 0x00, 0x08 }
+ #define ARCH_ENDIAN_BIG
++# define STACK_FRAME_OVERHEAD 112
+ # ifndef EF_PPC64_ABI
+ # define EF_PPC64_ABI 3
+ # endif
+-- 
+1.9.1
+
diff --git a/package/ltrace/ltrace-01-events.patch b/package/ltrace/ltrace-01-events.patch
deleted file mode 100644 (file)
index f3699a1..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-[PATCH] events.c: add similar system headers workaround as trace.c
-
-Needed for E.G. powerpc on uClibc.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- sysdeps/linux-gnu/events.c |   27 +++++++++++++++++++++++++++
- 1 file changed, 27 insertions(+)
-
-Index: ltrace-0.6.0/sysdeps/linux-gnu/events.c
-===================================================================
---- ltrace-0.6.0.orig/sysdeps/linux-gnu/events.c
-+++ ltrace-0.6.0/sysdeps/linux-gnu/events.c
-@@ -11,6 +11,33 @@
- #include "common.h"
-+/* If the system headers did not provide the constants, hard-code the normal
-+   values.  */
-+#ifndef PTRACE_EVENT_FORK
-+
-+#define PTRACE_OLDSETOPTIONS    21
-+#define PTRACE_SETOPTIONS       0x4200
-+#define PTRACE_GETEVENTMSG      0x4201
-+
-+/* options set using PTRACE_SETOPTIONS */
-+#define PTRACE_O_TRACESYSGOOD   0x00000001
-+#define PTRACE_O_TRACEFORK      0x00000002
-+#define PTRACE_O_TRACEVFORK     0x00000004
-+#define PTRACE_O_TRACECLONE     0x00000008
-+#define PTRACE_O_TRACEEXEC      0x00000010
-+#define PTRACE_O_TRACEVFORKDONE 0x00000020
-+#define PTRACE_O_TRACEEXIT      0x00000040
-+
-+/* Wait extended result codes for the above trace options.  */
-+#define PTRACE_EVENT_FORK       1
-+#define PTRACE_EVENT_VFORK      2
-+#define PTRACE_EVENT_CLONE      3
-+#define PTRACE_EVENT_EXEC       4
-+#define PTRACE_EVENT_VFORK_DONE 5
-+#define PTRACE_EVENT_EXIT       6
-+
-+#endif /* PTRACE_EVENT_FORK */
-+
- static Event event;
- Event *
diff --git a/package/ltrace/ltrace-02-arm-plt.patch b/package/ltrace/ltrace-02-arm-plt.patch
deleted file mode 100644 (file)
index f130ce8..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-From 04377d28135e351c8d096c4392a493e937416815 Mon Sep 17 00:00:00 2001
-From: Alexandre Belloni <alexandre.belloni@free-electrons.com>
-Date: Thu, 24 Jul 2014 23:15:20 +0200
-Subject: [PATCH] Allow building with uclibc toolchains
-
-Unfortunately, uclicbc doesn't define SHT_ARM_ATTRIBUTES in elf.h
-
-Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
----
- sysdeps/linux-gnu/arm/plt.c | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/sysdeps/linux-gnu/arm/plt.c b/sysdeps/linux-gnu/arm/plt.c
-index 9e9e37f0c5b0..a0a5795eb9cb 100644
---- a/sysdeps/linux-gnu/arm/plt.c
-+++ b/sysdeps/linux-gnu/arm/plt.c
-@@ -28,6 +28,10 @@
- #include "library.h"
- #include "ltrace-elf.h"
-+#ifndef SHT_ARM_ATTRIBUTES
-+#define SHT_ARM_ATTRIBUTES     0x70000003
-+#endif
-+
- static int
- get_hardfp(uint64_t abi_vfp_args)
- {
--- 
-1.9.1
-
diff --git a/package/ltrace/ltrace-03-PPC-fix-PPC32-build.patch b/package/ltrace/ltrace-03-PPC-fix-PPC32-build.patch
deleted file mode 100644 (file)
index 92055c9..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-From c01c6dc017b5ae2b6de7b690725890642b6bf857 Mon Sep 17 00:00:00 2001
-From: Alexandre Belloni <alexandre.belloni@free-electrons.com>
-Date: Tue, 29 Jul 2014 11:01:31 +0200
-Subject: [PATCH] PPC: fix PPC32 build
-
-Compilation on PPC32 fails because STACK_FRAME_OVERHEAD is never defined
-in arch.h.
-
-Define it to 112 on that platform to restore the same behaviour as
-before commit eea4ad2cce289753aaa35b4e0258a76d8f8f367c.
-
-Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
----
- sysdeps/linux-gnu/ppc/arch.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/sysdeps/linux-gnu/ppc/arch.h b/sysdeps/linux-gnu/ppc/arch.h
-index 7918a136b016..d5ad759a755c 100644
---- a/sysdeps/linux-gnu/ppc/arch.h
-+++ b/sysdeps/linux-gnu/ppc/arch.h
-@@ -57,6 +57,7 @@
- #else
- #define BREAKPOINT_VALUE { 0x7f, 0xe0, 0x00, 0x08 }
- #define ARCH_ENDIAN_BIG
-+# define STACK_FRAME_OVERHEAD 112
- # ifndef EF_PPC64_ABI
- # define EF_PPC64_ABI 3
- # endif
--- 
-1.9.1
-
diff --git a/package/lttng-babeltrace/0001-no-posix-fallocate-in-uclibc.patch b/package/lttng-babeltrace/0001-no-posix-fallocate-in-uclibc.patch
new file mode 100644 (file)
index 0000000..d77825f
--- /dev/null
@@ -0,0 +1,37 @@
+Do not call posix_fallocate() on uClibc
+
+uClibc does not implement posix_fallocate(), and posix_fallocate() is
+mostly only an hint to the kernel that we will need such or such
+amount of space inside a file. So we just don't call posix_fallocate()
+when building against uClibc.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+[Peter: add #include <features.h>
+---
+ formats/ctf/ctf.c |    3 +++
+ 1 file changed, 3 insertions(+)
+
+Index: lttng-babeltrace-0.8/formats/ctf/ctf.c
+===================================================================
+--- lttng-babeltrace-0.8.orig/formats/ctf/ctf.c
++++ lttng-babeltrace-0.8/formats/ctf/ctf.c
+@@ -32,6 +32,7 @@
+ #include <sys/stat.h>
+ #include <fcntl.h>
+ #include <dirent.h>
++#include <features.h>
+ #include <glib.h>
+ #include <unistd.h>
+ #include <stdlib.h>
+@@ -384,9 +385,11 @@
+               }
+               pos->content_size = -1U;        /* Unknown at this point */
+               pos->packet_size = WRITE_PACKET_LEN;
++#ifndef __UCLIBC__
+               off = posix_fallocate(pos->fd, pos->mmap_offset,
+                                     pos->packet_size / CHAR_BIT);
+               assert(off >= 0);
++#endif
+               pos->offset = 0;
+       } else {
+       read_next_packet:
diff --git a/package/lttng-babeltrace/lttng-babeltrace-01-no-posix-fallocate-in-uclibc.patch b/package/lttng-babeltrace/lttng-babeltrace-01-no-posix-fallocate-in-uclibc.patch
deleted file mode 100644 (file)
index d77825f..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-Do not call posix_fallocate() on uClibc
-
-uClibc does not implement posix_fallocate(), and posix_fallocate() is
-mostly only an hint to the kernel that we will need such or such
-amount of space inside a file. So we just don't call posix_fallocate()
-when building against uClibc.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-[Peter: add #include <features.h>
----
- formats/ctf/ctf.c |    3 +++
- 1 file changed, 3 insertions(+)
-
-Index: lttng-babeltrace-0.8/formats/ctf/ctf.c
-===================================================================
---- lttng-babeltrace-0.8.orig/formats/ctf/ctf.c
-+++ lttng-babeltrace-0.8/formats/ctf/ctf.c
-@@ -32,6 +32,7 @@
- #include <sys/stat.h>
- #include <fcntl.h>
- #include <dirent.h>
-+#include <features.h>
- #include <glib.h>
- #include <unistd.h>
- #include <stdlib.h>
-@@ -384,9 +385,11 @@
-               }
-               pos->content_size = -1U;        /* Unknown at this point */
-               pos->packet_size = WRITE_PACKET_LEN;
-+#ifndef __UCLIBC__
-               off = posix_fallocate(pos->fd, pos->mmap_offset,
-                                     pos->packet_size / CHAR_BIT);
-               assert(off >= 0);
-+#endif
-               pos->offset = 0;
-       } else {
-       read_next_packet:
diff --git a/package/luajit/0004-no-bin-symlink.patch b/package/luajit/0004-no-bin-symlink.patch
new file mode 100644 (file)
index 0000000..0de3162
--- /dev/null
@@ -0,0 +1,26 @@
+Do not use a symlink for the binary, simply name if luajit
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/Makefile
+===================================================================
+--- a/Makefile
++++ b/Makefile
+@@ -42,8 +42,7 @@
+ INSTALL_MAN= $(INSTALL_SHARE)/man/man1
+ INSTALL_PKGCONFIG= $(INSTALL_LIB)/pkgconfig
+-INSTALL_TNAME= luajit-$(VERSION)
+-INSTALL_TSYMNAME= luajit
++INSTALL_TNAME= luajit
+ INSTALL_ANAME= libluajit-$(ABIVER).a
+ INSTALL_SONAME= libluajit-$(ABIVER).so.$(MAJVER).$(MINVER).$(RELVER)
+ INSTALL_SOSHORT= libluajit-$(ABIVER).so
+@@ -57,7 +56,6 @@
+ INSTALL_SHORT1= $(INSTALL_LIB)/$(INSTALL_SOSHORT)
+ INSTALL_SHORT2= $(INSTALL_LIB)/$(INSTALL_SOSHORT)
+ INSTALL_T= $(INSTALL_BIN)/$(INSTALL_TNAME)
+-INSTALL_TSYM= $(INSTALL_BIN)/$(INSTALL_TSYMNAME)
+ INSTALL_PC= $(INSTALL_PKGCONFIG)/$(INSTALL_PCNAME)
+ INSTALL_DIRS= $(INSTALL_BIN) $(INSTALL_LIB) $(INSTALL_INC) $(INSTALL_MAN) \
diff --git a/package/luajit/0005-install-inc.patch b/package/luajit/0005-install-inc.patch
new file mode 100644 (file)
index 0000000..1fd11b1
--- /dev/null
@@ -0,0 +1,17 @@
+Install includes like lua's ones
+
+Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
+
+Index: b/Makefile
+===================================================================
+--- a/Makefile
++++ b/Makefile
+@@ -31,7 +31,7 @@ DPREFIX= $(DESTDIR)$(PREFIX)
+ INSTALL_BIN=   $(DPREFIX)/bin
+ INSTALL_LIB=   $(DPREFIX)/lib
+ INSTALL_SHARE= $(DPREFIX)/share
+-INSTALL_INC=   $(DPREFIX)/include/luajit-$(MAJVER).$(MINVER)
++INSTALL_INC=   $(DPREFIX)/include
+ INSTALL_LJLIBD= $(INSTALL_SHARE)/luajit-$(VERSION)
+ INSTALL_JITLIB= $(INSTALL_LJLIBD)/jit
diff --git a/package/luajit/0006-install-so.patch b/package/luajit/0006-install-so.patch
new file mode 100644 (file)
index 0000000..738ec07
--- /dev/null
@@ -0,0 +1,22 @@
+fix the following runtime error :
+    luajit: error while loading shared libraries: libluajit-5.1.so.2: cannot open shared object file: No such file or directory
+
+by creating two symbolic links:
+    libluajit-5.1.so -> libluajit-5.1.so.2.0.3
+    libluajit-5.1.so.2 -> libluajit-5.1.so.2.0.3
+
+Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
+
+Index: b/Makefile
+===================================================================
+--- a/Makefile
++++ b/Makefile
+@@ -56,7 +56,7 @@
+ INSTALL_STATIC= $(INSTALL_LIB)/$(INSTALL_ANAME)
+ INSTALL_DYN= $(INSTALL_LIB)/$(INSTALL_SONAME)
+ INSTALL_SHORT1= $(INSTALL_LIB)/$(INSTALL_SOSHORT)
+-INSTALL_SHORT2= $(INSTALL_LIB)/$(INSTALL_SOSHORT)
++INSTALL_SHORT2= $(INSTALL_LIB)/$(INSTALL_SOSHORT).$(MAJVER)
+ INSTALL_T= $(INSTALL_BIN)/$(INSTALL_TNAME)
+ INSTALL_TSYM= $(INSTALL_BIN)/$(INSTALL_TSYMNAME)
+ INSTALL_PC= $(INSTALL_PKGCONFIG)/$(INSTALL_PCNAME)
diff --git a/package/luajit/luajit-04-no-bin-symlink.patch b/package/luajit/luajit-04-no-bin-symlink.patch
deleted file mode 100644 (file)
index 0de3162..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-Do not use a symlink for the binary, simply name if luajit
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/Makefile
-===================================================================
---- a/Makefile
-+++ b/Makefile
-@@ -42,8 +42,7 @@
- INSTALL_MAN= $(INSTALL_SHARE)/man/man1
- INSTALL_PKGCONFIG= $(INSTALL_LIB)/pkgconfig
--INSTALL_TNAME= luajit-$(VERSION)
--INSTALL_TSYMNAME= luajit
-+INSTALL_TNAME= luajit
- INSTALL_ANAME= libluajit-$(ABIVER).a
- INSTALL_SONAME= libluajit-$(ABIVER).so.$(MAJVER).$(MINVER).$(RELVER)
- INSTALL_SOSHORT= libluajit-$(ABIVER).so
-@@ -57,7 +56,6 @@
- INSTALL_SHORT1= $(INSTALL_LIB)/$(INSTALL_SOSHORT)
- INSTALL_SHORT2= $(INSTALL_LIB)/$(INSTALL_SOSHORT)
- INSTALL_T= $(INSTALL_BIN)/$(INSTALL_TNAME)
--INSTALL_TSYM= $(INSTALL_BIN)/$(INSTALL_TSYMNAME)
- INSTALL_PC= $(INSTALL_PKGCONFIG)/$(INSTALL_PCNAME)
- INSTALL_DIRS= $(INSTALL_BIN) $(INSTALL_LIB) $(INSTALL_INC) $(INSTALL_MAN) \
diff --git a/package/luajit/luajit-05-install-inc.patch b/package/luajit/luajit-05-install-inc.patch
deleted file mode 100644 (file)
index 1fd11b1..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-Install includes like lua's ones
-
-Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
-
-Index: b/Makefile
-===================================================================
---- a/Makefile
-+++ b/Makefile
-@@ -31,7 +31,7 @@ DPREFIX= $(DESTDIR)$(PREFIX)
- INSTALL_BIN=   $(DPREFIX)/bin
- INSTALL_LIB=   $(DPREFIX)/lib
- INSTALL_SHARE= $(DPREFIX)/share
--INSTALL_INC=   $(DPREFIX)/include/luajit-$(MAJVER).$(MINVER)
-+INSTALL_INC=   $(DPREFIX)/include
- INSTALL_LJLIBD= $(INSTALL_SHARE)/luajit-$(VERSION)
- INSTALL_JITLIB= $(INSTALL_LJLIBD)/jit
diff --git a/package/luajit/luajit-06-install-so.patch b/package/luajit/luajit-06-install-so.patch
deleted file mode 100644 (file)
index 738ec07..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-fix the following runtime error :
-    luajit: error while loading shared libraries: libluajit-5.1.so.2: cannot open shared object file: No such file or directory
-
-by creating two symbolic links:
-    libluajit-5.1.so -> libluajit-5.1.so.2.0.3
-    libluajit-5.1.so.2 -> libluajit-5.1.so.2.0.3
-
-Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
-
-Index: b/Makefile
-===================================================================
---- a/Makefile
-+++ b/Makefile
-@@ -56,7 +56,7 @@
- INSTALL_STATIC= $(INSTALL_LIB)/$(INSTALL_ANAME)
- INSTALL_DYN= $(INSTALL_LIB)/$(INSTALL_SONAME)
- INSTALL_SHORT1= $(INSTALL_LIB)/$(INSTALL_SOSHORT)
--INSTALL_SHORT2= $(INSTALL_LIB)/$(INSTALL_SOSHORT)
-+INSTALL_SHORT2= $(INSTALL_LIB)/$(INSTALL_SOSHORT).$(MAJVER)
- INSTALL_T= $(INSTALL_BIN)/$(INSTALL_TNAME)
- INSTALL_TSYM= $(INSTALL_BIN)/$(INSTALL_TSYMNAME)
- INSTALL_PC= $(INSTALL_PKGCONFIG)/$(INSTALL_PCNAME)
diff --git a/package/luasocket/0001-uClibc-IPv6.patch b/package/luasocket/0001-uClibc-IPv6.patch
new file mode 100644 (file)
index 0000000..ae70b4d
--- /dev/null
@@ -0,0 +1,217 @@
+fix build with uClibc without IPv6 support
+
+see Pull Request: https://github.com/diegonehab/luasocket/pull/90
+
+Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
+
+Index: b/luasocket-3.0-rc1/src/options.c
+===================================================================
+--- a/luasocket-3.0-rc1/src/options.c
++++ b/luasocket-3.0-rc1/src/options.c
+@@ -110,6 +110,7 @@
+     return opt_setboolean(L, ps, SOL_SOCKET, SO_BROADCAST);
+ }
++#ifdef IPV6_UNICAST_HOPS
+ int opt_set_ip6_unicast_hops(lua_State *L, p_socket ps)
+ {
+   return opt_setint(L, ps, IPPROTO_IPV6, IPV6_UNICAST_HOPS);
+@@ -119,7 +120,9 @@
+ {
+   return opt_getint(L, ps, IPPROTO_IPV6, IPV6_UNICAST_HOPS);
+ }
++#endif
++#ifdef IPV6_MULTICAST_HOPS
+ int opt_set_ip6_multicast_hops(lua_State *L, p_socket ps)
+ {
+   return opt_setint(L, ps, IPPROTO_IPV6, IPV6_MULTICAST_HOPS);
+@@ -129,6 +132,7 @@
+ {
+   return opt_getint(L, ps, IPPROTO_IPV6, IPV6_MULTICAST_HOPS);
+ }
++#endif
+ int opt_set_ip_multicast_loop(lua_State *L, p_socket ps)
+ {
+@@ -140,6 +144,7 @@
+     return opt_getboolean(L, ps, IPPROTO_IP, IP_MULTICAST_LOOP);
+ }
++#ifdef IPV6_MULTICAST_LOOP
+ int opt_set_ip6_multicast_loop(lua_State *L, p_socket ps)
+ {
+     return opt_setboolean(L, ps, IPPROTO_IPV6, IPV6_MULTICAST_LOOP);
+@@ -149,6 +154,7 @@
+ {
+     return opt_getboolean(L, ps, IPPROTO_IPV6, IPV6_MULTICAST_LOOP);
+ }
++#endif
+ int opt_set_linger(lua_State *L, p_socket ps)
+ {
+@@ -221,16 +227,21 @@
+     return opt_setmembership(L, ps, IPPROTO_IP, IP_DROP_MEMBERSHIP);
+ }
++#ifdef IPV6_ADD_MEMBERSHIP
+ int opt_set_ip6_add_membership(lua_State *L, p_socket ps)
+ {
+     return opt_ip6_setmembership(L, ps, IPPROTO_IPV6, IPV6_ADD_MEMBERSHIP);
+ }
++#endif
++#ifdef IPV6_DROP_MEMBERSHIP
+ int opt_set_ip6_drop_membersip(lua_State *L, p_socket ps)
+ {
+     return opt_ip6_setmembership(L, ps, IPPROTO_IPV6, IPV6_DROP_MEMBERSHIP);
+ }
++#endif
++#ifdef IPV6_V6ONLY
+ int opt_get_ip6_v6only(lua_State *L, p_socket ps)
+ {
+     return opt_getboolean(L, ps, IPPROTO_IPV6, IPV6_V6ONLY);
+@@ -240,6 +251,7 @@
+ {
+     return opt_setboolean(L, ps, IPPROTO_IPV6, IPV6_V6ONLY);
+ }
++#endif
+ /*=========================================================================*\
+ * Auxiliar functions
+Index: b/luasocket-3.0-rc1/src/options.h
+===================================================================
+--- a/luasocket-3.0-rc1/src/options.h
++++ b/luasocket-3.0-rc1/src/options.h
+@@ -32,12 +32,24 @@
+ int opt_set_ip_multicast_loop(lua_State *L, p_socket ps);
+ int opt_set_ip_add_membership(lua_State *L, p_socket ps);
+ int opt_set_ip_drop_membersip(lua_State *L, p_socket ps);
++#ifdef IPV6_UNICAST_HOPS
+ int opt_set_ip6_unicast_hops(lua_State *L, p_socket ps);
++#endif
++#ifdef IPV6_MULTICAST_HOPS
+ int opt_set_ip6_multicast_hops(lua_State *L, p_socket ps);
++#endif
++#ifdef IPV6_MULTICAST_LOOP
+ int opt_set_ip6_multicast_loop(lua_State *L, p_socket ps);
++#endif
++#ifdef IPV6_ADD_MEMBERSHIP
+ int opt_set_ip6_add_membership(lua_State *L, p_socket ps);
++#endif
++#ifdef IPV6_DROP_MEMBERSHIP
+ int opt_set_ip6_drop_membersip(lua_State *L, p_socket ps);
++#endif
++#ifdef IPV6_V6ONLY
+ int opt_set_ip6_v6only(lua_State *L, p_socket ps);
++#endif
+ /* supported options for getoption */
+ int opt_get_reuseaddr(lua_State *L, p_socket ps);
+@@ -48,10 +60,18 @@
+ int opt_get_ip_multicast_loop(lua_State *L, p_socket ps);
+ int opt_get_ip_multicast_if(lua_State *L, p_socket ps);
+ int opt_get_error(lua_State *L, p_socket ps);
++#ifdef IPV6_MULTICAST_LOOP
+ int opt_get_ip6_multicast_loop(lua_State *L, p_socket ps);
++#endif
++#ifdef IPV6_MULTICAST_HOPS
+ int opt_get_ip6_multicast_hops(lua_State *L, p_socket ps);
++#endif
++#ifdef IPV6_UNICAST_HOPS
+ int opt_get_ip6_unicast_hops(lua_State *L, p_socket ps);
++#endif
++#ifdef IPV6_V6ONLY
+ int opt_get_ip6_v6only(lua_State *L, p_socket ps); 
++#endif
+ /* invokes the appropriate option handler */
+ int opt_meth_setoption(lua_State *L, p_opt opt, p_socket ps);
+Index: b/luasocket-3.0-rc1/src/tcp.c
+===================================================================
+--- a/luasocket-3.0-rc1/src/tcp.c
++++ b/luasocket-3.0-rc1/src/tcp.c
+@@ -81,7 +81,9 @@
+     {"keepalive",   opt_set_keepalive},
+     {"reuseaddr",   opt_set_reuseaddr},
+     {"tcp-nodelay", opt_set_tcp_nodelay},
++#ifdef IPV6_V6ONLY
+     {"ipv6-v6only", opt_set_ip6_v6only},
++#endif
+     {"linger",      opt_set_linger},
+     {NULL,          NULL}
+ };
+@@ -366,11 +368,13 @@
+         auxiliar_setclass(L, "tcp{master}", -1);
+         /* initialize remaining structure fields */
+         socket_setnonblocking(&sock);
++#ifdef IPV6_V6ONLY
+         if (family == PF_INET6) {
+             int yes = 1;
+             setsockopt(sock, IPPROTO_IPV6, IPV6_V6ONLY,
+                 (void *)&yes, sizeof(yes));
+         }
++#endif
+         tcp->sock = sock;
+         io_init(&tcp->io, (p_send) socket_send, (p_recv) socket_recv,
+                 (p_error) socket_ioerror, &tcp->sock);
+Index: b/luasocket-3.0-rc1/src/udp.c
+===================================================================
+--- a/luasocket-3.0-rc1/src/udp.c
++++ b/luasocket-3.0-rc1/src/udp.c
+@@ -78,12 +78,22 @@
+     {"ip-multicast-loop",    opt_set_ip_multicast_loop},
+     {"ip-add-membership",    opt_set_ip_add_membership},
+     {"ip-drop-membership",   opt_set_ip_drop_membersip},
++#ifdef IPV6_UNICAST_HOPS
+     {"ipv6-unicast-hops",    opt_set_ip6_unicast_hops},
+     {"ipv6-multicast-hops",  opt_set_ip6_unicast_hops},
++#endif
++#ifdef IPV6_MULTICAST_LOOP
+     {"ipv6-multicast-loop",  opt_set_ip6_multicast_loop},
++#endif
++#ifdef IPV6_ADD_MEMBERSHIP
+     {"ipv6-add-membership",  opt_set_ip6_add_membership},
++#endif
++#ifdef IPV6_DROP_MEMBERSHIP
+     {"ipv6-drop-membership", opt_set_ip6_drop_membersip},
++#endif
++#ifdef IPV6_V6ONLY
+     {"ipv6-v6only",          opt_set_ip6_v6only},
++#endif
+     {NULL,                   NULL}
+ };
+@@ -92,10 +102,16 @@
+     {"ip-multicast-if",      opt_get_ip_multicast_if},
+     {"ip-multicast-loop",    opt_get_ip_multicast_loop},
+     {"error",                opt_get_error},
++#ifdef IPV6_UNICAST_HOPS
+     {"ipv6-unicast-hops",    opt_get_ip6_unicast_hops},
+     {"ipv6-multicast-hops",  opt_get_ip6_unicast_hops},
++#endif
++#ifdef IPV6_MULTICAST_LOOP
+     {"ipv6-multicast-loop",  opt_get_ip6_multicast_loop},
++#endif
++#ifdef IPV6_V6ONLY
+     {"ipv6-v6only",          opt_get_ip6_v6only},
++#endif
+     {NULL,                   NULL}
+ };
+@@ -416,11 +432,13 @@
+         auxiliar_setclass(L, "udp{unconnected}", -1);
+         /* initialize remaining structure fields */
+         socket_setnonblocking(&sock);
++#ifdef IPV6_V6ONLY
+         if (family == PF_INET6) {
+             int yes = 1;
+             setsockopt(sock, IPPROTO_IPV6, IPV6_V6ONLY,
+                 (void *)&yes, sizeof(yes));
+         }
++#endif
+         udp->sock = sock;
+         timeout_init(&udp->tm, -1, -1);
+         udp->family = family;
+
diff --git a/package/luasocket/luasocket-01-uClibc-IPv6.patch b/package/luasocket/luasocket-01-uClibc-IPv6.patch
deleted file mode 100644 (file)
index ae70b4d..0000000
+++ /dev/null
@@ -1,217 +0,0 @@
-fix build with uClibc without IPv6 support
-
-see Pull Request: https://github.com/diegonehab/luasocket/pull/90
-
-Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
-
-Index: b/luasocket-3.0-rc1/src/options.c
-===================================================================
---- a/luasocket-3.0-rc1/src/options.c
-+++ b/luasocket-3.0-rc1/src/options.c
-@@ -110,6 +110,7 @@
-     return opt_setboolean(L, ps, SOL_SOCKET, SO_BROADCAST);
- }
-+#ifdef IPV6_UNICAST_HOPS
- int opt_set_ip6_unicast_hops(lua_State *L, p_socket ps)
- {
-   return opt_setint(L, ps, IPPROTO_IPV6, IPV6_UNICAST_HOPS);
-@@ -119,7 +120,9 @@
- {
-   return opt_getint(L, ps, IPPROTO_IPV6, IPV6_UNICAST_HOPS);
- }
-+#endif
-+#ifdef IPV6_MULTICAST_HOPS
- int opt_set_ip6_multicast_hops(lua_State *L, p_socket ps)
- {
-   return opt_setint(L, ps, IPPROTO_IPV6, IPV6_MULTICAST_HOPS);
-@@ -129,6 +132,7 @@
- {
-   return opt_getint(L, ps, IPPROTO_IPV6, IPV6_MULTICAST_HOPS);
- }
-+#endif
- int opt_set_ip_multicast_loop(lua_State *L, p_socket ps)
- {
-@@ -140,6 +144,7 @@
-     return opt_getboolean(L, ps, IPPROTO_IP, IP_MULTICAST_LOOP);
- }
-+#ifdef IPV6_MULTICAST_LOOP
- int opt_set_ip6_multicast_loop(lua_State *L, p_socket ps)
- {
-     return opt_setboolean(L, ps, IPPROTO_IPV6, IPV6_MULTICAST_LOOP);
-@@ -149,6 +154,7 @@
- {
-     return opt_getboolean(L, ps, IPPROTO_IPV6, IPV6_MULTICAST_LOOP);
- }
-+#endif
- int opt_set_linger(lua_State *L, p_socket ps)
- {
-@@ -221,16 +227,21 @@
-     return opt_setmembership(L, ps, IPPROTO_IP, IP_DROP_MEMBERSHIP);
- }
-+#ifdef IPV6_ADD_MEMBERSHIP
- int opt_set_ip6_add_membership(lua_State *L, p_socket ps)
- {
-     return opt_ip6_setmembership(L, ps, IPPROTO_IPV6, IPV6_ADD_MEMBERSHIP);
- }
-+#endif
-+#ifdef IPV6_DROP_MEMBERSHIP
- int opt_set_ip6_drop_membersip(lua_State *L, p_socket ps)
- {
-     return opt_ip6_setmembership(L, ps, IPPROTO_IPV6, IPV6_DROP_MEMBERSHIP);
- }
-+#endif
-+#ifdef IPV6_V6ONLY
- int opt_get_ip6_v6only(lua_State *L, p_socket ps)
- {
-     return opt_getboolean(L, ps, IPPROTO_IPV6, IPV6_V6ONLY);
-@@ -240,6 +251,7 @@
- {
-     return opt_setboolean(L, ps, IPPROTO_IPV6, IPV6_V6ONLY);
- }
-+#endif
- /*=========================================================================*\
- * Auxiliar functions
-Index: b/luasocket-3.0-rc1/src/options.h
-===================================================================
---- a/luasocket-3.0-rc1/src/options.h
-+++ b/luasocket-3.0-rc1/src/options.h
-@@ -32,12 +32,24 @@
- int opt_set_ip_multicast_loop(lua_State *L, p_socket ps);
- int opt_set_ip_add_membership(lua_State *L, p_socket ps);
- int opt_set_ip_drop_membersip(lua_State *L, p_socket ps);
-+#ifdef IPV6_UNICAST_HOPS
- int opt_set_ip6_unicast_hops(lua_State *L, p_socket ps);
-+#endif
-+#ifdef IPV6_MULTICAST_HOPS
- int opt_set_ip6_multicast_hops(lua_State *L, p_socket ps);
-+#endif
-+#ifdef IPV6_MULTICAST_LOOP
- int opt_set_ip6_multicast_loop(lua_State *L, p_socket ps);
-+#endif
-+#ifdef IPV6_ADD_MEMBERSHIP
- int opt_set_ip6_add_membership(lua_State *L, p_socket ps);
-+#endif
-+#ifdef IPV6_DROP_MEMBERSHIP
- int opt_set_ip6_drop_membersip(lua_State *L, p_socket ps);
-+#endif
-+#ifdef IPV6_V6ONLY
- int opt_set_ip6_v6only(lua_State *L, p_socket ps);
-+#endif
- /* supported options for getoption */
- int opt_get_reuseaddr(lua_State *L, p_socket ps);
-@@ -48,10 +60,18 @@
- int opt_get_ip_multicast_loop(lua_State *L, p_socket ps);
- int opt_get_ip_multicast_if(lua_State *L, p_socket ps);
- int opt_get_error(lua_State *L, p_socket ps);
-+#ifdef IPV6_MULTICAST_LOOP
- int opt_get_ip6_multicast_loop(lua_State *L, p_socket ps);
-+#endif
-+#ifdef IPV6_MULTICAST_HOPS
- int opt_get_ip6_multicast_hops(lua_State *L, p_socket ps);
-+#endif
-+#ifdef IPV6_UNICAST_HOPS
- int opt_get_ip6_unicast_hops(lua_State *L, p_socket ps);
-+#endif
-+#ifdef IPV6_V6ONLY
- int opt_get_ip6_v6only(lua_State *L, p_socket ps); 
-+#endif
- /* invokes the appropriate option handler */
- int opt_meth_setoption(lua_State *L, p_opt opt, p_socket ps);
-Index: b/luasocket-3.0-rc1/src/tcp.c
-===================================================================
---- a/luasocket-3.0-rc1/src/tcp.c
-+++ b/luasocket-3.0-rc1/src/tcp.c
-@@ -81,7 +81,9 @@
-     {"keepalive",   opt_set_keepalive},
-     {"reuseaddr",   opt_set_reuseaddr},
-     {"tcp-nodelay", opt_set_tcp_nodelay},
-+#ifdef IPV6_V6ONLY
-     {"ipv6-v6only", opt_set_ip6_v6only},
-+#endif
-     {"linger",      opt_set_linger},
-     {NULL,          NULL}
- };
-@@ -366,11 +368,13 @@
-         auxiliar_setclass(L, "tcp{master}", -1);
-         /* initialize remaining structure fields */
-         socket_setnonblocking(&sock);
-+#ifdef IPV6_V6ONLY
-         if (family == PF_INET6) {
-             int yes = 1;
-             setsockopt(sock, IPPROTO_IPV6, IPV6_V6ONLY,
-                 (void *)&yes, sizeof(yes));
-         }
-+#endif
-         tcp->sock = sock;
-         io_init(&tcp->io, (p_send) socket_send, (p_recv) socket_recv,
-                 (p_error) socket_ioerror, &tcp->sock);
-Index: b/luasocket-3.0-rc1/src/udp.c
-===================================================================
---- a/luasocket-3.0-rc1/src/udp.c
-+++ b/luasocket-3.0-rc1/src/udp.c
-@@ -78,12 +78,22 @@
-     {"ip-multicast-loop",    opt_set_ip_multicast_loop},
-     {"ip-add-membership",    opt_set_ip_add_membership},
-     {"ip-drop-membership",   opt_set_ip_drop_membersip},
-+#ifdef IPV6_UNICAST_HOPS
-     {"ipv6-unicast-hops",    opt_set_ip6_unicast_hops},
-     {"ipv6-multicast-hops",  opt_set_ip6_unicast_hops},
-+#endif
-+#ifdef IPV6_MULTICAST_LOOP
-     {"ipv6-multicast-loop",  opt_set_ip6_multicast_loop},
-+#endif
-+#ifdef IPV6_ADD_MEMBERSHIP
-     {"ipv6-add-membership",  opt_set_ip6_add_membership},
-+#endif
-+#ifdef IPV6_DROP_MEMBERSHIP
-     {"ipv6-drop-membership", opt_set_ip6_drop_membersip},
-+#endif
-+#ifdef IPV6_V6ONLY
-     {"ipv6-v6only",          opt_set_ip6_v6only},
-+#endif
-     {NULL,                   NULL}
- };
-@@ -92,10 +102,16 @@
-     {"ip-multicast-if",      opt_get_ip_multicast_if},
-     {"ip-multicast-loop",    opt_get_ip_multicast_loop},
-     {"error",                opt_get_error},
-+#ifdef IPV6_UNICAST_HOPS
-     {"ipv6-unicast-hops",    opt_get_ip6_unicast_hops},
-     {"ipv6-multicast-hops",  opt_get_ip6_unicast_hops},
-+#endif
-+#ifdef IPV6_MULTICAST_LOOP
-     {"ipv6-multicast-loop",  opt_get_ip6_multicast_loop},
-+#endif
-+#ifdef IPV6_V6ONLY
-     {"ipv6-v6only",          opt_get_ip6_v6only},
-+#endif
-     {NULL,                   NULL}
- };
-@@ -416,11 +432,13 @@
-         auxiliar_setclass(L, "udp{unconnected}", -1);
-         /* initialize remaining structure fields */
-         socket_setnonblocking(&sock);
-+#ifdef IPV6_V6ONLY
-         if (family == PF_INET6) {
-             int yes = 1;
-             setsockopt(sock, IPPROTO_IPV6, IPV6_V6ONLY,
-                 (void *)&yes, sizeof(yes));
-         }
-+#endif
-         udp->sock = sock;
-         timeout_init(&udp->tm, -1, -1);
-         udp->family = family;
-
diff --git a/package/lxc/0001-drop-werror.patch b/package/lxc/0001-drop-werror.patch
new file mode 100644 (file)
index 0000000..d2a8673
--- /dev/null
@@ -0,0 +1,16 @@
+Don't do -Werror it breaks builds on some scenarios with trivialities.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura lxc-lxc-1.0.4/configure.ac lxc-lxc-1.0.4.orig/configure.ac
+--- lxc-lxc-1.0.4.orig/configure.ac    2014-07-04 10:31:19.821029891 -0300
++++ lxc-lxc-1.0.4/configure.ac 2014-06-13 14:07:45.000000000 -0300
+@@ -560,7 +560,7 @@
+ LXC_CHECK_TLS
+ if test "x$GCC" = "xyes"; then
+-      CFLAGS="$CFLAGS -Wall -Werror"
++      CFLAGS="$CFLAGS -Wall"
+ fi
+ # Files requiring some variable expansion
diff --git a/package/lxc/lxc-01-drop-werror.patch b/package/lxc/lxc-01-drop-werror.patch
deleted file mode 100644 (file)
index d2a8673..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-Don't do -Werror it breaks builds on some scenarios with trivialities.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura lxc-lxc-1.0.4/configure.ac lxc-lxc-1.0.4.orig/configure.ac
---- lxc-lxc-1.0.4.orig/configure.ac    2014-07-04 10:31:19.821029891 -0300
-+++ lxc-lxc-1.0.4/configure.ac 2014-06-13 14:07:45.000000000 -0300
-@@ -560,7 +560,7 @@
- LXC_CHECK_TLS
- if test "x$GCC" = "xyes"; then
--      CFLAGS="$CFLAGS -Wall -Werror"
-+      CFLAGS="$CFLAGS -Wall"
- fi
- # Files requiring some variable expansion
diff --git a/package/lzma/0001-Remove-static-from-LDFLAGS.patch b/package/lzma/0001-Remove-static-from-LDFLAGS.patch
new file mode 100644 (file)
index 0000000..9a33e44
--- /dev/null
@@ -0,0 +1,68 @@
+From 1b33f6d13e5c25a2500ee312068c08a3d3811a5f Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Vincent=20Stehl=C3=A9?= <vincent.stehle@laposte.net>
+Date: Wed, 3 Dec 2014 21:32:02 +0100
+Subject: [PATCH] Remove -static from LDFLAGS
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Buildroot does not enable static libraries by default for host builds. Having
+-static hardcoded in the LDFLAGS breaks the build, so remove it.
+
+Signed-off-by: Vincent Stehlé <vincent.stehle@laposte.net>
+---
+ src/lzmadec/Makefile.am  | 1 -
+ src/lzmadec/Makefile.in  | 1 -
+ src/lzmainfo/Makefile.am | 1 -
+ src/lzmainfo/Makefile.in | 1 -
+ 4 files changed, 4 deletions(-)
+
+diff --git a/src/lzmadec/Makefile.am b/src/lzmadec/Makefile.am
+index 7322b2a..13edec8 100644
+--- a/src/lzmadec/Makefile.am
++++ b/src/lzmadec/Makefile.am
+@@ -2,6 +2,5 @@ bin_PROGRAMS = lzmadec
+ lzmadec_SOURCES = lzmadec.c
+ lzmadec_LDADD = @top_builddir@/src/liblzmadec/liblzmadec.la
+ AM_CPPFLAGS = -I@top_srcdir@/src/liblzmadec
+-AM_LDFLAGS = -static
+ dist_man_MANS = lzmadec.1
+diff --git a/src/lzmadec/Makefile.in b/src/lzmadec/Makefile.in
+index 5af9240..4ed1de1 100644
+--- a/src/lzmadec/Makefile.in
++++ b/src/lzmadec/Makefile.in
+@@ -185,7 +185,6 @@ top_srcdir = @top_srcdir@
+ lzmadec_SOURCES = lzmadec.c
+ lzmadec_LDADD = @top_builddir@/src/liblzmadec/liblzmadec.la
+ AM_CPPFLAGS = -I@top_srcdir@/src/liblzmadec
+-AM_LDFLAGS = -static
+ dist_man_MANS = lzmadec.1
+ all: all-am
+diff --git a/src/lzmainfo/Makefile.am b/src/lzmainfo/Makefile.am
+index b5b01ec..e280bff 100644
+--- a/src/lzmainfo/Makefile.am
++++ b/src/lzmainfo/Makefile.am
+@@ -2,6 +2,5 @@ bin_PROGRAMS = lzmainfo
+ lzmainfo_SOURCES = lzmainfo.c
+ lzmainfo_LDADD = @top_builddir@/src/liblzmadec/liblzmadec.la
+ AM_CPPFLAGS = -I@top_srcdir@/src/liblzmadec
+-AM_LDFLAGS = -static
+ dist_man_MANS = lzmainfo.1
+diff --git a/src/lzmainfo/Makefile.in b/src/lzmainfo/Makefile.in
+index 6a2127a..f1f3441 100644
+--- a/src/lzmainfo/Makefile.in
++++ b/src/lzmainfo/Makefile.in
+@@ -185,7 +185,6 @@ top_srcdir = @top_srcdir@
+ lzmainfo_SOURCES = lzmainfo.c
+ lzmainfo_LDADD = @top_builddir@/src/liblzmadec/liblzmadec.la
+ AM_CPPFLAGS = -I@top_srcdir@/src/liblzmadec
+-AM_LDFLAGS = -static
+ dist_man_MANS = lzmainfo.1
+ all: all-am
+-- 
+2.1.3
+
diff --git a/package/lzma/lzma-0001-Remove-static-from-LDFLAGS.patch b/package/lzma/lzma-0001-Remove-static-from-LDFLAGS.patch
deleted file mode 100644 (file)
index 9a33e44..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-From 1b33f6d13e5c25a2500ee312068c08a3d3811a5f Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Vincent=20Stehl=C3=A9?= <vincent.stehle@laposte.net>
-Date: Wed, 3 Dec 2014 21:32:02 +0100
-Subject: [PATCH] Remove -static from LDFLAGS
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Buildroot does not enable static libraries by default for host builds. Having
--static hardcoded in the LDFLAGS breaks the build, so remove it.
-
-Signed-off-by: Vincent Stehlé <vincent.stehle@laposte.net>
----
- src/lzmadec/Makefile.am  | 1 -
- src/lzmadec/Makefile.in  | 1 -
- src/lzmainfo/Makefile.am | 1 -
- src/lzmainfo/Makefile.in | 1 -
- 4 files changed, 4 deletions(-)
-
-diff --git a/src/lzmadec/Makefile.am b/src/lzmadec/Makefile.am
-index 7322b2a..13edec8 100644
---- a/src/lzmadec/Makefile.am
-+++ b/src/lzmadec/Makefile.am
-@@ -2,6 +2,5 @@ bin_PROGRAMS = lzmadec
- lzmadec_SOURCES = lzmadec.c
- lzmadec_LDADD = @top_builddir@/src/liblzmadec/liblzmadec.la
- AM_CPPFLAGS = -I@top_srcdir@/src/liblzmadec
--AM_LDFLAGS = -static
- dist_man_MANS = lzmadec.1
-diff --git a/src/lzmadec/Makefile.in b/src/lzmadec/Makefile.in
-index 5af9240..4ed1de1 100644
---- a/src/lzmadec/Makefile.in
-+++ b/src/lzmadec/Makefile.in
-@@ -185,7 +185,6 @@ top_srcdir = @top_srcdir@
- lzmadec_SOURCES = lzmadec.c
- lzmadec_LDADD = @top_builddir@/src/liblzmadec/liblzmadec.la
- AM_CPPFLAGS = -I@top_srcdir@/src/liblzmadec
--AM_LDFLAGS = -static
- dist_man_MANS = lzmadec.1
- all: all-am
-diff --git a/src/lzmainfo/Makefile.am b/src/lzmainfo/Makefile.am
-index b5b01ec..e280bff 100644
---- a/src/lzmainfo/Makefile.am
-+++ b/src/lzmainfo/Makefile.am
-@@ -2,6 +2,5 @@ bin_PROGRAMS = lzmainfo
- lzmainfo_SOURCES = lzmainfo.c
- lzmainfo_LDADD = @top_builddir@/src/liblzmadec/liblzmadec.la
- AM_CPPFLAGS = -I@top_srcdir@/src/liblzmadec
--AM_LDFLAGS = -static
- dist_man_MANS = lzmainfo.1
-diff --git a/src/lzmainfo/Makefile.in b/src/lzmainfo/Makefile.in
-index 6a2127a..f1f3441 100644
---- a/src/lzmainfo/Makefile.in
-+++ b/src/lzmainfo/Makefile.in
-@@ -185,7 +185,6 @@ top_srcdir = @top_srcdir@
- lzmainfo_SOURCES = lzmainfo.c
- lzmainfo_LDADD = @top_builddir@/src/liblzmadec/liblzmadec.la
- AM_CPPFLAGS = -I@top_srcdir@/src/liblzmadec
--AM_LDFLAGS = -static
- dist_man_MANS = lzmainfo.1
- all: all-am
--- 
-2.1.3
-
diff --git a/package/madplay/0001-switch-to-new-alsa-api.patch b/package/madplay/0001-switch-to-new-alsa-api.patch
new file mode 100644 (file)
index 0000000..60d7bd3
--- /dev/null
@@ -0,0 +1,173 @@
+Switch madplay to the new API. This is done thanks to a patch written
+by Micha Nelissen <micha@neli.hopto.org> and available at
+http://article.gmane.org/gmane.comp.audio.mad.devel/729.
+
+--- madplay-0.15.2b/audio_alsa.c       2008-10-18 15:10:16.000000000 +0200
++++ madplay-0.15.2b/audio_alsa.c.new   2008-10-18 15:03:27.000000000 +0200
+@@ -28,31 +28,30 @@
+
+ #include <errno.h>
+
+-#define ALSA_PCM_OLD_HW_PARAMS_API
+-#define ALSA_PCM_OLD_SW_PARAMS_API
+ #include <alsa/asoundlib.h>
+
+ #include <mad.h>
+
+ #include "audio.h"
+
+-char *buf     = NULL;
+-int paused    = 0;
++#define BUFFER_TIME_MAX     500000
+
+-int rate      = -1;
+-int channels  = -1;
+-int bitdepth  = -1;
+-int sample_size       = -1;
+-
+-int buffer_time               = 500000;
+-int period_time               = 100000;
+-char *defaultdev      = "plughw:0,0";
++unsigned char *buf  = NULL;
++int paused        = 0;
++
++unsigned int rate           = 0;
++unsigned int channels     = -1;
++unsigned int bitdepth     = -1;
++unsigned int sample_size    = -1;
++
++unsigned int buffer_time;
++unsigned int period_time;
++char *defaultdev          = "plughw:0,0";
+
+ snd_pcm_hw_params_t *alsa_hwparams;
+ snd_pcm_sw_params_t *alsa_swparams;
+
+-snd_pcm_sframes_t buffer_size;
+-snd_pcm_sframes_t period_size;
++snd_pcm_uframes_t buffer_size;
+
+ snd_pcm_format_t  alsa_format = -1;
+ snd_pcm_access_t  alsa_access = SND_PCM_ACCESS_MMAP_INTERLEAVED;
+@@ -66,14 +65,20 @@
+                snd_pcm_hw_params_t *params,
+                snd_pcm_access_t access)
+ {
+-      int err, dir;
+-      
++      int err;
++
+       /* choose all parameters */
+       err = snd_pcm_hw_params_any(handle,params);
+       if (err < 0) {
+               printf("Access type not available for playback: %s\n", snd_strerror(err));
+               return err;
+       }
++      /* set the access type */
++      err = snd_pcm_hw_params_set_access(handle, params, alsa_access);
++      if (err < 0) {
++              printf("Sample format not available for playback: %s\n", snd_strerror(err));
++              return err;
++      }
+       /* set the sample format */
+       err = snd_pcm_hw_params_set_format(handle, params, alsa_format);
+       if (err < 0) {
+@@ -87,29 +92,38 @@
+               return err;
+       }
+       /* set the stream rate */
+-      err = snd_pcm_hw_params_set_rate_near(handle, params, rate, 0);
++      err = snd_pcm_hw_params_set_rate(handle, params, rate, 0);
+       if (err < 0) {
+               printf("Rate %iHz not available for playback: %s\n", rate, snd_strerror(err));
+               return err;
+       }
+-      if (err != rate) {
+-              printf("Rate doesn't match (requested %iHz, get %iHz)\n", rate, err);
+-              return -EINVAL;
+-      }
++      err = snd_pcm_hw_params_get_buffer_time_max(params, &buffer_time, NULL);
++        if (err < 0) {
++                printf("Unable to retrieve buffer time: %s\n", snd_strerror(err));
++                return err;
++        }
++        if (buffer_time > BUFFER_TIME_MAX)
++                buffer_time = BUFFER_TIME_MAX;
+       /* set buffer time */
+-      err = snd_pcm_hw_params_set_buffer_time_near(handle, params, buffer_time, &dir);
++      err = snd_pcm_hw_params_set_buffer_time_near(handle, params, &buffer_time, 0);
+       if (err < 0) {
+               printf("Unable to set buffer time %i for playback: %s\n", buffer_time, snd_strerror(err));
+               return err;
+       }
+-      buffer_size = snd_pcm_hw_params_get_buffer_size(params);
++        if (period_time * 4 > buffer_time)
++                period_time = buffer_time / 4;
+       /* set period time */
+-      err = snd_pcm_hw_params_set_period_time_near(handle, params, period_time, &dir);
++      err = snd_pcm_hw_params_set_period_time_near(handle, params, &period_time, NULL);
+       if (err < 0) {
+               printf("Unable to set period time %i for playback: %s\n", period_time, snd_strerror(err));
+               return err;
+       }
+-      period_size = snd_pcm_hw_params_get_period_size(params, &dir);
++        /* retrieve buffer size */
++      err = snd_pcm_hw_params_get_buffer_size(params, &buffer_size);
++        if (err < 0) {
++                printf("Unable to retrieve buffer size: %s\n", snd_strerror(err));
++                return err;
++        }
+       /* write the parameters to device */
+       err = snd_pcm_hw_params(handle, params);
+       if (err < 0) {
+@@ -123,6 +137,7 @@
+ int set_swparams(snd_pcm_t *handle,
+                snd_pcm_sw_params_t *params)
+ {
++        unsigned int start_threshold;
+       int err;
+
+         /* get current swparams */
+@@ -136,13 +151,7 @@
+         if (err < 0) {
+                 printf("Unable to set start threshold mode for playback: %s\n", snd_strerror(err));
+                 return err;
+-                                                                                      }
+-        /* allow transfer when at least period_size samples can be processed */
+-        err = snd_pcm_sw_params_set_avail_min(handle, params, period_size);
+-        if (err < 0) {
+-                printf("Unable to set avail min for playback: %s\n", snd_strerror(err));
+-                return err;
+-                                                                                                      }
++      }
+         /* align all transfers to 1 samples */
+         err = snd_pcm_sw_params_set_xfer_align(handle, params, 1);
+         if (err < 0) {
+@@ -190,7 +199,7 @@
+       rate            = config->speed;
+
+       if ( bitdepth == 0 )
+-              config->precision = bitdepth = 32;
++              config->precision = bitdepth = 16;
+
+       switch (bitdepth)
+       {
+@@ -241,7 +250,7 @@
+               return -1;
+       }
+
+-      buf = malloc(buffer_size);
++      buf = malloc(buffer_size * sample_size);
+       if (buf == NULL) {
+               audio_error="unable to allocate output buffer table";
+               return -1;
+@@ -279,7 +288,7 @@
+ int play(struct audio_play *play)
+ {
+       int err, len;
+-      char *ptr;
++      unsigned char *ptr;
+
+       ptr = buf;
+       len = play->nsamples;
+
diff --git a/package/madplay/madplay-0.15.2b-switch-to-new-alsa-api.patch b/package/madplay/madplay-0.15.2b-switch-to-new-alsa-api.patch
deleted file mode 100644 (file)
index 60d7bd3..0000000
+++ /dev/null
@@ -1,173 +0,0 @@
-Switch madplay to the new API. This is done thanks to a patch written
-by Micha Nelissen <micha@neli.hopto.org> and available at
-http://article.gmane.org/gmane.comp.audio.mad.devel/729.
-
---- madplay-0.15.2b/audio_alsa.c       2008-10-18 15:10:16.000000000 +0200
-+++ madplay-0.15.2b/audio_alsa.c.new   2008-10-18 15:03:27.000000000 +0200
-@@ -28,31 +28,30 @@
-
- #include <errno.h>
-
--#define ALSA_PCM_OLD_HW_PARAMS_API
--#define ALSA_PCM_OLD_SW_PARAMS_API
- #include <alsa/asoundlib.h>
-
- #include <mad.h>
-
- #include "audio.h"
-
--char *buf     = NULL;
--int paused    = 0;
-+#define BUFFER_TIME_MAX     500000
-
--int rate      = -1;
--int channels  = -1;
--int bitdepth  = -1;
--int sample_size       = -1;
--
--int buffer_time               = 500000;
--int period_time               = 100000;
--char *defaultdev      = "plughw:0,0";
-+unsigned char *buf  = NULL;
-+int paused        = 0;
-+
-+unsigned int rate           = 0;
-+unsigned int channels     = -1;
-+unsigned int bitdepth     = -1;
-+unsigned int sample_size    = -1;
-+
-+unsigned int buffer_time;
-+unsigned int period_time;
-+char *defaultdev          = "plughw:0,0";
-
- snd_pcm_hw_params_t *alsa_hwparams;
- snd_pcm_sw_params_t *alsa_swparams;
-
--snd_pcm_sframes_t buffer_size;
--snd_pcm_sframes_t period_size;
-+snd_pcm_uframes_t buffer_size;
-
- snd_pcm_format_t  alsa_format = -1;
- snd_pcm_access_t  alsa_access = SND_PCM_ACCESS_MMAP_INTERLEAVED;
-@@ -66,14 +65,20 @@
-                snd_pcm_hw_params_t *params,
-                snd_pcm_access_t access)
- {
--      int err, dir;
--      
-+      int err;
-+
-       /* choose all parameters */
-       err = snd_pcm_hw_params_any(handle,params);
-       if (err < 0) {
-               printf("Access type not available for playback: %s\n", snd_strerror(err));
-               return err;
-       }
-+      /* set the access type */
-+      err = snd_pcm_hw_params_set_access(handle, params, alsa_access);
-+      if (err < 0) {
-+              printf("Sample format not available for playback: %s\n", snd_strerror(err));
-+              return err;
-+      }
-       /* set the sample format */
-       err = snd_pcm_hw_params_set_format(handle, params, alsa_format);
-       if (err < 0) {
-@@ -87,29 +92,38 @@
-               return err;
-       }
-       /* set the stream rate */
--      err = snd_pcm_hw_params_set_rate_near(handle, params, rate, 0);
-+      err = snd_pcm_hw_params_set_rate(handle, params, rate, 0);
-       if (err < 0) {
-               printf("Rate %iHz not available for playback: %s\n", rate, snd_strerror(err));
-               return err;
-       }
--      if (err != rate) {
--              printf("Rate doesn't match (requested %iHz, get %iHz)\n", rate, err);
--              return -EINVAL;
--      }
-+      err = snd_pcm_hw_params_get_buffer_time_max(params, &buffer_time, NULL);
-+        if (err < 0) {
-+                printf("Unable to retrieve buffer time: %s\n", snd_strerror(err));
-+                return err;
-+        }
-+        if (buffer_time > BUFFER_TIME_MAX)
-+                buffer_time = BUFFER_TIME_MAX;
-       /* set buffer time */
--      err = snd_pcm_hw_params_set_buffer_time_near(handle, params, buffer_time, &dir);
-+      err = snd_pcm_hw_params_set_buffer_time_near(handle, params, &buffer_time, 0);
-       if (err < 0) {
-               printf("Unable to set buffer time %i for playback: %s\n", buffer_time, snd_strerror(err));
-               return err;
-       }
--      buffer_size = snd_pcm_hw_params_get_buffer_size(params);
-+        if (period_time * 4 > buffer_time)
-+                period_time = buffer_time / 4;
-       /* set period time */
--      err = snd_pcm_hw_params_set_period_time_near(handle, params, period_time, &dir);
-+      err = snd_pcm_hw_params_set_period_time_near(handle, params, &period_time, NULL);
-       if (err < 0) {
-               printf("Unable to set period time %i for playback: %s\n", period_time, snd_strerror(err));
-               return err;
-       }
--      period_size = snd_pcm_hw_params_get_period_size(params, &dir);
-+        /* retrieve buffer size */
-+      err = snd_pcm_hw_params_get_buffer_size(params, &buffer_size);
-+        if (err < 0) {
-+                printf("Unable to retrieve buffer size: %s\n", snd_strerror(err));
-+                return err;
-+        }
-       /* write the parameters to device */
-       err = snd_pcm_hw_params(handle, params);
-       if (err < 0) {
-@@ -123,6 +137,7 @@
- int set_swparams(snd_pcm_t *handle,
-                snd_pcm_sw_params_t *params)
- {
-+        unsigned int start_threshold;
-       int err;
-
-         /* get current swparams */
-@@ -136,13 +151,7 @@
-         if (err < 0) {
-                 printf("Unable to set start threshold mode for playback: %s\n", snd_strerror(err));
-                 return err;
--                                                                                      }
--        /* allow transfer when at least period_size samples can be processed */
--        err = snd_pcm_sw_params_set_avail_min(handle, params, period_size);
--        if (err < 0) {
--                printf("Unable to set avail min for playback: %s\n", snd_strerror(err));
--                return err;
--                                                                                                      }
-+      }
-         /* align all transfers to 1 samples */
-         err = snd_pcm_sw_params_set_xfer_align(handle, params, 1);
-         if (err < 0) {
-@@ -190,7 +199,7 @@
-       rate            = config->speed;
-
-       if ( bitdepth == 0 )
--              config->precision = bitdepth = 32;
-+              config->precision = bitdepth = 16;
-
-       switch (bitdepth)
-       {
-@@ -241,7 +250,7 @@
-               return -1;
-       }
-
--      buf = malloc(buffer_size);
-+      buf = malloc(buffer_size * sample_size);
-       if (buf == NULL) {
-               audio_error="unable to allocate output buffer table";
-               return -1;
-@@ -279,7 +288,7 @@
- int play(struct audio_play *play)
- {
-       int err, len;
--      char *ptr;
-+      unsigned char *ptr;
-
-       ptr = buf;
-       len = play->nsamples;
-
diff --git a/package/matchbox/matchbox-lib/0001-index-is-legacy.patch b/package/matchbox/matchbox-lib/0001-index-is-legacy.patch
new file mode 100644 (file)
index 0000000..b486fb1
--- /dev/null
@@ -0,0 +1,35 @@
+index() is a legacy function, not implemented in some uClibc
+configurations.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ libmb/mbexp.c  |    2 +-
+ libmb/mbmenu.c |    2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+Index: libmatchbox-1.9/libmb/mbexp.c
+===================================================================
+--- libmatchbox-1.9.orig/libmb/mbexp.c
++++ libmatchbox-1.9/libmb/mbexp.c
+@@ -492,7 +492,7 @@
+   /* get the family */
+-  if (index(spec, ',') != NULL || index(spec, '-') != NULL) 
++  if (strchr(spec, ',') != NULL || strchr(spec, '-') != NULL) 
+     has_comma_delim = True;
+   while (!got_family) {
+Index: libmatchbox-1.9/libmb/mbmenu.c
+===================================================================
+--- libmatchbox-1.9.orig/libmb/mbmenu.c
++++ libmatchbox-1.9/libmb/mbmenu.c
+@@ -433,7 +433,7 @@
+    {
+       s = p;
+       found   = NULL;
+-      while(index("/\0", *p) == NULL) p++;
++      while(strchr("/\0", *p) == NULL) p++;
+       if (*p != '\0') { *p = '\0'; p++; };
+       item = current->items;
diff --git a/package/matchbox/matchbox-lib/0002-libpng15.patch b/package/matchbox/matchbox-lib/0002-libpng15.patch
new file mode 100644 (file)
index 0000000..3d68573
--- /dev/null
@@ -0,0 +1,26 @@
+Support for libpng 1.5+ shamelessly taken from Gentoo.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+--- a/libmb/mbpixbuf.c
++++ b/libmb/mbpixbuf.c
+@@ -247,7 +247,7 @@
+     return NULL;
+   }
+-  if ( setjmp( png_ptr->jmpbuf ) ) {
++  if ( setjmp( png_jmpbuf(png_ptr) ) ) {
+     png_destroy_read_struct( &png_ptr, &info_ptr, NULL);
+     fclose(fd);
+     return NULL;
+@@ -269,8 +269,8 @@
+       ( color_type == PNG_COLOR_TYPE_GRAY_ALPHA ))
+     png_set_gray_to_rgb(png_ptr);
+  
+-  if ( info_ptr->color_type == PNG_COLOR_TYPE_RGB_ALPHA 
+-       || info_ptr->color_type == PNG_COLOR_TYPE_GRAY_ALPHA
++  if ( color_type == PNG_COLOR_TYPE_RGB_ALPHA 
++       || color_type == PNG_COLOR_TYPE_GRAY_ALPHA
+        )
+     *has_alpha = 1;
+   else
diff --git a/package/matchbox/matchbox-lib/0003-include-setjmp-h.patch b/package/matchbox/matchbox-lib/0003-include-setjmp-h.patch
new file mode 100644 (file)
index 0000000..72e1e45
--- /dev/null
@@ -0,0 +1,17 @@
+matchbox-lib: include setjmp.h
+
+Based on this upstream patch:
+
+   http://git.yoctoproject.org/cgit/cgit.cgi/libmatchbox/commit/?id=9315bcce1f01e7d6c00161442d61d3c676794d9d
+
+Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
+--- libmatchbox-1.9/libmb/mbpixbuf.c.orig      2014-02-21 12:45:46.867035956 +0000
++++ libmatchbox-1.9/libmb/mbpixbuf.c   2014-02-21 12:46:43.482949583 +0000
+@@ -22,6 +22,7 @@
+ #include <strings.h>
+ #include "mbpixbuf.h"
++#include <setjmp.h>
+ #define BYTE_ORD_24_RGB  0
+ #define BYTE_ORD_24_RBG  1
diff --git a/package/matchbox/matchbox-lib/matchbox-lib-0001-index-is-legacy.patch b/package/matchbox/matchbox-lib/matchbox-lib-0001-index-is-legacy.patch
deleted file mode 100644 (file)
index b486fb1..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-index() is a legacy function, not implemented in some uClibc
-configurations.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
----
- libmb/mbexp.c  |    2 +-
- libmb/mbmenu.c |    2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-Index: libmatchbox-1.9/libmb/mbexp.c
-===================================================================
---- libmatchbox-1.9.orig/libmb/mbexp.c
-+++ libmatchbox-1.9/libmb/mbexp.c
-@@ -492,7 +492,7 @@
-   /* get the family */
--  if (index(spec, ',') != NULL || index(spec, '-') != NULL) 
-+  if (strchr(spec, ',') != NULL || strchr(spec, '-') != NULL) 
-     has_comma_delim = True;
-   while (!got_family) {
-Index: libmatchbox-1.9/libmb/mbmenu.c
-===================================================================
---- libmatchbox-1.9.orig/libmb/mbmenu.c
-+++ libmatchbox-1.9/libmb/mbmenu.c
-@@ -433,7 +433,7 @@
-    {
-       s = p;
-       found   = NULL;
--      while(index("/\0", *p) == NULL) p++;
-+      while(strchr("/\0", *p) == NULL) p++;
-       if (*p != '\0') { *p = '\0'; p++; };
-       item = current->items;
diff --git a/package/matchbox/matchbox-lib/matchbox-lib-0002-libpng15.patch b/package/matchbox/matchbox-lib/matchbox-lib-0002-libpng15.patch
deleted file mode 100644 (file)
index 3d68573..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-Support for libpng 1.5+ shamelessly taken from Gentoo.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
---- a/libmb/mbpixbuf.c
-+++ b/libmb/mbpixbuf.c
-@@ -247,7 +247,7 @@
-     return NULL;
-   }
--  if ( setjmp( png_ptr->jmpbuf ) ) {
-+  if ( setjmp( png_jmpbuf(png_ptr) ) ) {
-     png_destroy_read_struct( &png_ptr, &info_ptr, NULL);
-     fclose(fd);
-     return NULL;
-@@ -269,8 +269,8 @@
-       ( color_type == PNG_COLOR_TYPE_GRAY_ALPHA ))
-     png_set_gray_to_rgb(png_ptr);
-  
--  if ( info_ptr->color_type == PNG_COLOR_TYPE_RGB_ALPHA 
--       || info_ptr->color_type == PNG_COLOR_TYPE_GRAY_ALPHA
-+  if ( color_type == PNG_COLOR_TYPE_RGB_ALPHA 
-+       || color_type == PNG_COLOR_TYPE_GRAY_ALPHA
-        )
-     *has_alpha = 1;
-   else
diff --git a/package/matchbox/matchbox-lib/matchbox-lib-0003-include-setjmp-h.patch b/package/matchbox/matchbox-lib/matchbox-lib-0003-include-setjmp-h.patch
deleted file mode 100644 (file)
index 72e1e45..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-matchbox-lib: include setjmp.h
-
-Based on this upstream patch:
-
-   http://git.yoctoproject.org/cgit/cgit.cgi/libmatchbox/commit/?id=9315bcce1f01e7d6c00161442d61d3c676794d9d
-
-Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
---- libmatchbox-1.9/libmb/mbpixbuf.c.orig      2014-02-21 12:45:46.867035956 +0000
-+++ libmatchbox-1.9/libmb/mbpixbuf.c   2014-02-21 12:46:43.482949583 +0000
-@@ -22,6 +22,7 @@
- #include <strings.h>
- #include "mbpixbuf.h"
-+#include <setjmp.h>
- #define BYTE_ORD_24_RGB  0
- #define BYTE_ORD_24_RBG  1
diff --git a/package/matchbox/matchbox-startup-monitor/0001-true-false.patch b/package/matchbox/matchbox-startup-monitor/0001-true-false.patch
new file mode 100644 (file)
index 0000000..c92a077
--- /dev/null
@@ -0,0 +1,21 @@
+mbmonitor uses TRUE / FALSE without defining them
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ mbmonitor.c |    3 +++
+ 1 file changed, 3 insertions(+)
+
+Index: mb-applet-startup-monitor-0.1/mbmonitor.c
+===================================================================
+--- mb-applet-startup-monitor-0.1.orig/mbmonitor.c
++++ mb-applet-startup-monitor-0.1/mbmonitor.c
+@@ -43,6 +43,9 @@
+ #define POLLTIME         10
+ #define HOURGLASS_N_FRAMES 8 
++#define FALSE            0
++#define TRUE             1
++
+ typedef struct LaunchList LaunchList;
+ struct LaunchList
diff --git a/package/matchbox/matchbox-startup-monitor/matchbox-startup-monitor-0.1-true-false.patch b/package/matchbox/matchbox-startup-monitor/matchbox-startup-monitor-0.1-true-false.patch
deleted file mode 100644 (file)
index c92a077..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-mbmonitor uses TRUE / FALSE without defining them
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- mbmonitor.c |    3 +++
- 1 file changed, 3 insertions(+)
-
-Index: mb-applet-startup-monitor-0.1/mbmonitor.c
-===================================================================
---- mb-applet-startup-monitor-0.1.orig/mbmonitor.c
-+++ mb-applet-startup-monitor-0.1/mbmonitor.c
-@@ -43,6 +43,9 @@
- #define POLLTIME         10
- #define HOURGLASS_N_FRAMES 8 
-+#define FALSE            0
-+#define TRUE             1
-+
- typedef struct LaunchList LaunchList;
- struct LaunchList
diff --git a/package/matchbox/matchbox-wm/0001-defaulttheme.patch b/package/matchbox/matchbox-wm/0001-defaulttheme.patch
new file mode 100644 (file)
index 0000000..b4da664
--- /dev/null
@@ -0,0 +1,47 @@
+[PATCH] fix mbtheme build issue when png support is disabled
+
+DEFAULTTHEME{,NAME} is not defined when png support is disabled, leading
+to compile errors in mbtheme.c:
+
+mbtheme.c: In function 'show_parse_error':
+mbtheme.c:2422:28: error: 'DEFAULTTHEME' undeclared (first use in this function)
+mbtheme.c:2422:28: note: each undeclared identifier is reported only once for each function it appears in
+mbtheme.c: In function 'mbtheme_init':
+mbtheme.c:2448:30: error: 'DEFAULTTHEME' undeclared (first use in this function)
+mbtheme.c:2470:25: error: 'DEFAULTTHEMENAME' undeclared (first use in this function)
+
+Fix it by unconditionally defining them as the values used are the same
+in png / !png cases anyway.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ src/structs.h |    9 ---------
+ 1 file changed, 9 deletions(-)
+
+Index: matchbox-window-manager-1.2/src/structs.h
+===================================================================
+--- matchbox-window-manager-1.2.orig/src/structs.h
++++ matchbox-window-manager-1.2/src/structs.h
+@@ -81,8 +81,6 @@
+ #define GENERIC_ICON        PKGDATADIR "/mbnoapp.xpm"
+-#ifdef MB_HAVE_PNG
+-
+ #define DEFAULT_THEME       DATADIR "/themes/Default/matchbox/theme.xml"
+ #define DEFAULTTHEME       DATADIR "/themes/Default/matchbox/theme.xml"
+@@ -91,13 +89,6 @@
+ #define DEFAULTTHEMENAME  "Default"
+-#else
+-
+-#define DEFAULT_THEME       DATADIR "/themes/Default/matchbox/theme.xml"
+-#define DEFAULT_THEME_NAME  "Default"
+-
+-#endif
+-
+ #define CONFDEFAULTS       PKGDATADIR "/defaults"
+ /* Simple Macros  */
diff --git a/package/matchbox/matchbox-wm/matchbox-wm-defaulttheme.patch b/package/matchbox/matchbox-wm/matchbox-wm-defaulttheme.patch
deleted file mode 100644 (file)
index b4da664..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-[PATCH] fix mbtheme build issue when png support is disabled
-
-DEFAULTTHEME{,NAME} is not defined when png support is disabled, leading
-to compile errors in mbtheme.c:
-
-mbtheme.c: In function 'show_parse_error':
-mbtheme.c:2422:28: error: 'DEFAULTTHEME' undeclared (first use in this function)
-mbtheme.c:2422:28: note: each undeclared identifier is reported only once for each function it appears in
-mbtheme.c: In function 'mbtheme_init':
-mbtheme.c:2448:30: error: 'DEFAULTTHEME' undeclared (first use in this function)
-mbtheme.c:2470:25: error: 'DEFAULTTHEMENAME' undeclared (first use in this function)
-
-Fix it by unconditionally defining them as the values used are the same
-in png / !png cases anyway.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- src/structs.h |    9 ---------
- 1 file changed, 9 deletions(-)
-
-Index: matchbox-window-manager-1.2/src/structs.h
-===================================================================
---- matchbox-window-manager-1.2.orig/src/structs.h
-+++ matchbox-window-manager-1.2/src/structs.h
-@@ -81,8 +81,6 @@
- #define GENERIC_ICON        PKGDATADIR "/mbnoapp.xpm"
--#ifdef MB_HAVE_PNG
--
- #define DEFAULT_THEME       DATADIR "/themes/Default/matchbox/theme.xml"
- #define DEFAULTTHEME       DATADIR "/themes/Default/matchbox/theme.xml"
-@@ -91,13 +89,6 @@
- #define DEFAULTTHEMENAME  "Default"
--#else
--
--#define DEFAULT_THEME       DATADIR "/themes/Default/matchbox/theme.xml"
--#define DEFAULT_THEME_NAME  "Default"
--
--#endif
--
- #define CONFDEFAULTS       PKGDATADIR "/defaults"
- /* Simple Macros  */
diff --git a/package/mcrypt/0001-CVE-2012-4409.patch b/package/mcrypt/0001-CVE-2012-4409.patch
new file mode 100644 (file)
index 0000000..97c658b
--- /dev/null
@@ -0,0 +1,25 @@
+From 3efb40e17ce4f76717ae17a1ce1e1f747ddf59fd Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <alon.barlev@gmail.com>
+Date: Sat, 22 Dec 2012 22:37:06 +0200
+Subject: [PATCH] cleanup: buffer overflow
+
+---
+ src/extra.c |    2 ++
+ 1 files changed, 2 insertions(+), 0 deletions(-)
+
+diff --git a/src/extra.c b/src/extra.c
+index 3082f82..c7a1ac0 100644
+--- a/src/extra.c
++++ b/src/extra.c
+@@ -241,6 +241,8 @@ int check_file_head(FILE * fstream, char *algorithm, char *mode,
+               if (m_getbit(6, flags) == 1) { /* if the salt bit is set */
+                       if (m_getbit(0, sflag) != 0) { /* if the first bit is set */
+                               *salt_size = m_setbit(0, sflag, 0);
++                              if (*salt_size > sizeof(tmp_buf))
++                                      err_quit(_("Salt is too long\n"));
+                               if (*salt_size > 0) {
+                                       fread(tmp_buf, 1, *salt_size,
+                                             fstream);
+-- 
+1.7.8.6
+
diff --git a/package/mcrypt/0002-CVE-2012-4426.patch b/package/mcrypt/0002-CVE-2012-4426.patch
new file mode 100644 (file)
index 0000000..708d4a5
--- /dev/null
@@ -0,0 +1,35 @@
+Patch taken from gentoo.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+--- a/src/errors.c
++++ b/src/errors.c
+@@ -25,24 +25,24 @@
+ void err_quit(char *errmsg)
+ {
+-      fprintf(stderr, errmsg);
++      fprintf(stderr, "%s", errmsg);
+       exit(-1);
+ }
+ void err_warn(char *errmsg)
+ {
+       if (quiet <= 1)
+-              fprintf(stderr, errmsg);
++              fprintf(stderr, "%s", errmsg);
+ }
+ void err_info(char *errmsg)
+ {
+       if (quiet == 0)
+-              fprintf(stderr, errmsg);
++              fprintf(stderr, "%s", errmsg);
+ }
+ void err_crit(char *errmsg)
+ {
+       if (quiet <= 2)
+-              fprintf(stderr, errmsg);
++              fprintf(stderr, "%s", errmsg);
+ }
diff --git a/package/mcrypt/0003-CVE-2012-4527.patch b/package/mcrypt/0003-CVE-2012-4527.patch
new file mode 100644 (file)
index 0000000..a8cf6f4
--- /dev/null
@@ -0,0 +1,99 @@
+Fix for CVE-2012-4527.
+Authored by Attila Bogar and Jean-Michel Vourgère <jmv_deb@nirgal.com>
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura mcrypt-2.6.8.orig/src/mcrypt.c mcrypt-2.6.8/src/mcrypt.c
+--- mcrypt-2.6.8.orig/src/mcrypt.c     2013-01-14 19:15:49.465925072 -0300
++++ mcrypt-2.6.8/src/mcrypt.c  2013-01-14 19:28:13.711478000 -0300
+@@ -44,7 +44,9 @@
+ static char rcsid[] =
+     "$Id: mcrypt.c,v 1.2 2007/11/07 17:10:21 nmav Exp $";
+-char tmperr[128];
++/* Temporary error message can contain one file name and 1k of text */
++#define ERRWIDTH ((PATH_MAX)+1024)
++char tmperr[ERRWIDTH];
+ unsigned int stream_flag = FALSE;
+ char *keymode = NULL;
+ char *mode = NULL;
+@@ -482,7 +484,7 @@
+ #ifdef HAVE_STAT
+       if (stream_flag == FALSE) {
+        if (is_normal_file(file[i]) == FALSE) {
+-          sprintf(tmperr,
++          snprintf(tmperr, ERRWIDTH,
+                   _
+                   ("%s: %s is not a regular file. Skipping...\n"),
+                   program_name, file[i]);
+@@ -501,7 +503,7 @@
+           dinfile = file[i];
+        if ((isatty(fileno((FILE *) (stdin))) == 1)
+            && (stream_flag == TRUE) && (force == 0)) {        /* not a tty */
+-          sprintf(tmperr,
++          snprintf(tmperr, ERRWIDTH,
+                   _
+                   ("%s: Encrypted data will not be read from a terminal.\n"),
+                   program_name);
+@@ -520,7 +522,7 @@
+           einfile = file[i];
+        if ((isatty(fileno((FILE *) (stdout))) == 1)
+            && (stream_flag == TRUE) && (force == 0)) {        /* not a tty */
+-          sprintf(tmperr,
++          snprintf(tmperr, ERRWIDTH,
+                   _
+                   ("%s: Encrypted data will not be written to a terminal.\n"),
+                   program_name);
+@@ -544,7 +546,7 @@
+           strcpy(outfile, einfile);
+           /* if file has already the .nc ignore it */
+           if (strstr(outfile, ".nc") != NULL) {
+-             sprintf(tmperr,
++             snprintf(tmperr, ERRWIDTH,
+                      _
+                      ("%s: file %s has the .nc suffix... skipping...\n"),
+                      program_name, outfile);
+@@ -590,10 +592,10 @@
+        if (x == 0) {
+           if (stream_flag == FALSE) {
+-             sprintf(tmperr, _("File %s was decrypted.\n"), dinfile);
++             snprintf(tmperr, ERRWIDTH, _("File %s was decrypted.\n"), dinfile);
+              err_warn(tmperr);
+           } else {
+-             sprintf(tmperr, _("Stdin was decrypted.\n"));
++             snprintf(tmperr, ERRWIDTH, _("Stdin was decrypted.\n"));
+              err_warn(tmperr);
+           }
+ #ifdef HAVE_STAT
+@@ -610,7 +612,7 @@
+        } else {
+           if (stream_flag == FALSE) {
+-             sprintf(tmperr,
++             snprintf(tmperr, ERRWIDTH,
+                      _
+                      ("File %s was NOT decrypted successfully.\n"),
+                      dinfile);
+@@ -636,10 +638,10 @@
+        if (x == 0) {
+           if (stream_flag == FALSE) {
+-             sprintf(tmperr, _("File %s was encrypted.\n"), einfile);
++             snprintf(tmperr, ERRWIDTH, _("File %s was encrypted.\n"), einfile);
+              err_warn(tmperr);
+           } else {
+-             sprintf(tmperr, _("Stdin was encrypted.\n"));
++             snprintf(tmperr, ERRWIDTH, _("Stdin was encrypted.\n"));
+              err_warn(tmperr);
+           }
+ #ifdef HAVE_STAT
+@@ -655,7 +657,7 @@
+        } else {
+           if (stream_flag == FALSE) {
+-             sprintf(tmperr,
++             snprintf(tmperr, ERRWIDTH,
+                      _
+                      ("File %s was NOT encrypted successfully.\n"),
+                      einfile);
diff --git a/package/mcrypt/0004-no-rpath.patch b/package/mcrypt/0004-no-rpath.patch
new file mode 100644 (file)
index 0000000..a0813bc
--- /dev/null
@@ -0,0 +1,17 @@
+Patch out rpath hardcoding since it completely ignores --disable-rpath
+and other configure ways.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura mcrypt-2.6.8.orig/config.rpath mcrypt-2.6.8/config.rpath
+--- mcrypt-2.6.8.orig/config.rpath     2013-01-07 13:05:22.626883480 -0300
++++ mcrypt-2.6.8/config.rpath  2013-01-07 13:12:47.196090608 -0300
+@@ -153,7 +153,7 @@
+   # here allows them to be overridden if necessary.
+   # 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'
++  hardcode_libdir_flag_spec=
+   case "$host_os" in
+     aix3* | aix4* | aix5*)
+       # On AIX/PPC, the GNU linker is very broken
diff --git a/package/mcrypt/mcrypt-CVE-2012-4409.patch b/package/mcrypt/mcrypt-CVE-2012-4409.patch
deleted file mode 100644 (file)
index 97c658b..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-From 3efb40e17ce4f76717ae17a1ce1e1f747ddf59fd Mon Sep 17 00:00:00 2001
-From: Alon Bar-Lev <alon.barlev@gmail.com>
-Date: Sat, 22 Dec 2012 22:37:06 +0200
-Subject: [PATCH] cleanup: buffer overflow
-
----
- src/extra.c |    2 ++
- 1 files changed, 2 insertions(+), 0 deletions(-)
-
-diff --git a/src/extra.c b/src/extra.c
-index 3082f82..c7a1ac0 100644
---- a/src/extra.c
-+++ b/src/extra.c
-@@ -241,6 +241,8 @@ int check_file_head(FILE * fstream, char *algorithm, char *mode,
-               if (m_getbit(6, flags) == 1) { /* if the salt bit is set */
-                       if (m_getbit(0, sflag) != 0) { /* if the first bit is set */
-                               *salt_size = m_setbit(0, sflag, 0);
-+                              if (*salt_size > sizeof(tmp_buf))
-+                                      err_quit(_("Salt is too long\n"));
-                               if (*salt_size > 0) {
-                                       fread(tmp_buf, 1, *salt_size,
-                                             fstream);
--- 
-1.7.8.6
-
diff --git a/package/mcrypt/mcrypt-CVE-2012-4426.patch b/package/mcrypt/mcrypt-CVE-2012-4426.patch
deleted file mode 100644 (file)
index 708d4a5..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-Patch taken from gentoo.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
---- a/src/errors.c
-+++ b/src/errors.c
-@@ -25,24 +25,24 @@
- void err_quit(char *errmsg)
- {
--      fprintf(stderr, errmsg);
-+      fprintf(stderr, "%s", errmsg);
-       exit(-1);
- }
- void err_warn(char *errmsg)
- {
-       if (quiet <= 1)
--              fprintf(stderr, errmsg);
-+              fprintf(stderr, "%s", errmsg);
- }
- void err_info(char *errmsg)
- {
-       if (quiet == 0)
--              fprintf(stderr, errmsg);
-+              fprintf(stderr, "%s", errmsg);
- }
- void err_crit(char *errmsg)
- {
-       if (quiet <= 2)
--              fprintf(stderr, errmsg);
-+              fprintf(stderr, "%s", errmsg);
- }
diff --git a/package/mcrypt/mcrypt-CVE-2012-4527.patch b/package/mcrypt/mcrypt-CVE-2012-4527.patch
deleted file mode 100644 (file)
index a8cf6f4..0000000
+++ /dev/null
@@ -1,99 +0,0 @@
-Fix for CVE-2012-4527.
-Authored by Attila Bogar and Jean-Michel Vourgère <jmv_deb@nirgal.com>
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura mcrypt-2.6.8.orig/src/mcrypt.c mcrypt-2.6.8/src/mcrypt.c
---- mcrypt-2.6.8.orig/src/mcrypt.c     2013-01-14 19:15:49.465925072 -0300
-+++ mcrypt-2.6.8/src/mcrypt.c  2013-01-14 19:28:13.711478000 -0300
-@@ -44,7 +44,9 @@
- static char rcsid[] =
-     "$Id: mcrypt.c,v 1.2 2007/11/07 17:10:21 nmav Exp $";
--char tmperr[128];
-+/* Temporary error message can contain one file name and 1k of text */
-+#define ERRWIDTH ((PATH_MAX)+1024)
-+char tmperr[ERRWIDTH];
- unsigned int stream_flag = FALSE;
- char *keymode = NULL;
- char *mode = NULL;
-@@ -482,7 +484,7 @@
- #ifdef HAVE_STAT
-       if (stream_flag == FALSE) {
-        if (is_normal_file(file[i]) == FALSE) {
--          sprintf(tmperr,
-+          snprintf(tmperr, ERRWIDTH,
-                   _
-                   ("%s: %s is not a regular file. Skipping...\n"),
-                   program_name, file[i]);
-@@ -501,7 +503,7 @@
-           dinfile = file[i];
-        if ((isatty(fileno((FILE *) (stdin))) == 1)
-            && (stream_flag == TRUE) && (force == 0)) {        /* not a tty */
--          sprintf(tmperr,
-+          snprintf(tmperr, ERRWIDTH,
-                   _
-                   ("%s: Encrypted data will not be read from a terminal.\n"),
-                   program_name);
-@@ -520,7 +522,7 @@
-           einfile = file[i];
-        if ((isatty(fileno((FILE *) (stdout))) == 1)
-            && (stream_flag == TRUE) && (force == 0)) {        /* not a tty */
--          sprintf(tmperr,
-+          snprintf(tmperr, ERRWIDTH,
-                   _
-                   ("%s: Encrypted data will not be written to a terminal.\n"),
-                   program_name);
-@@ -544,7 +546,7 @@
-           strcpy(outfile, einfile);
-           /* if file has already the .nc ignore it */
-           if (strstr(outfile, ".nc") != NULL) {
--             sprintf(tmperr,
-+             snprintf(tmperr, ERRWIDTH,
-                      _
-                      ("%s: file %s has the .nc suffix... skipping...\n"),
-                      program_name, outfile);
-@@ -590,10 +592,10 @@
-        if (x == 0) {
-           if (stream_flag == FALSE) {
--             sprintf(tmperr, _("File %s was decrypted.\n"), dinfile);
-+             snprintf(tmperr, ERRWIDTH, _("File %s was decrypted.\n"), dinfile);
-              err_warn(tmperr);
-           } else {
--             sprintf(tmperr, _("Stdin was decrypted.\n"));
-+             snprintf(tmperr, ERRWIDTH, _("Stdin was decrypted.\n"));
-              err_warn(tmperr);
-           }
- #ifdef HAVE_STAT
-@@ -610,7 +612,7 @@
-        } else {
-           if (stream_flag == FALSE) {
--             sprintf(tmperr,
-+             snprintf(tmperr, ERRWIDTH,
-                      _
-                      ("File %s was NOT decrypted successfully.\n"),
-                      dinfile);
-@@ -636,10 +638,10 @@
-        if (x == 0) {
-           if (stream_flag == FALSE) {
--             sprintf(tmperr, _("File %s was encrypted.\n"), einfile);
-+             snprintf(tmperr, ERRWIDTH, _("File %s was encrypted.\n"), einfile);
-              err_warn(tmperr);
-           } else {
--             sprintf(tmperr, _("Stdin was encrypted.\n"));
-+             snprintf(tmperr, ERRWIDTH, _("Stdin was encrypted.\n"));
-              err_warn(tmperr);
-           }
- #ifdef HAVE_STAT
-@@ -655,7 +657,7 @@
-        } else {
-           if (stream_flag == FALSE) {
--             sprintf(tmperr,
-+             snprintf(tmperr, ERRWIDTH,
-                      _
-                      ("File %s was NOT encrypted successfully.\n"),
-                      einfile);
diff --git a/package/mcrypt/mcrypt-no-rpath.patch b/package/mcrypt/mcrypt-no-rpath.patch
deleted file mode 100644 (file)
index a0813bc..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-Patch out rpath hardcoding since it completely ignores --disable-rpath
-and other configure ways.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura mcrypt-2.6.8.orig/config.rpath mcrypt-2.6.8/config.rpath
---- mcrypt-2.6.8.orig/config.rpath     2013-01-07 13:05:22.626883480 -0300
-+++ mcrypt-2.6.8/config.rpath  2013-01-07 13:12:47.196090608 -0300
-@@ -153,7 +153,7 @@
-   # here allows them to be overridden if necessary.
-   # 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'
-+  hardcode_libdir_flag_spec=
-   case "$host_os" in
-     aix3* | aix4* | aix5*)
-       # On AIX/PPC, the GNU linker is very broken
diff --git a/package/mdadm/0010-add-install-targets-for-mdadm-and-mdmon.patch b/package/mdadm/0010-add-install-targets-for-mdadm-and-mdmon.patch
new file mode 100644 (file)
index 0000000..15df755
--- /dev/null
@@ -0,0 +1,32 @@
+From a1a9243671b1e23123f57e879890325154b8e00d Mon Sep 17 00:00:00 2001
+From: Christophe Vu-Brugier <cvubrugier@lacie.com>
+Date: Wed, 6 Mar 2013 16:03:14 +0100
+Subject: [PATCH] Add install targets for mdadm and mdmon
+
+
+Signed-off-by: Christophe Vu-Brugier <cvubrugier@lacie.com>
+---
+ Makefile |    6 +++++-
+ 1 file changed, 5 insertions(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index 315455b..27d8eeb 100644
+--- a/Makefile
++++ b/Makefile
+@@ -231,8 +231,12 @@ $(MON_OBJS) : $(INCL) mdmon.h
+ sha1.o : sha1.c sha1.h md5.h
+       $(CC) $(CFLAGS) -DHAVE_STDINT_H -o sha1.o -c sha1.c
+-install : mdadm mdmon install-man install-udev
++install : install-mdadm install-mdmon install-man install-udev
++
++install-mdadm :
+       $(INSTALL) -D $(STRIP) -m 755 mdadm $(DESTDIR)$(BINDIR)/mdadm
++
++install-mdmon :
+       $(INSTALL) -D $(STRIP) -m 755 mdmon $(DESTDIR)$(BINDIR)/mdmon
+ install-static : mdadm.static install-man
+-- 
+1.7.10.4
+
diff --git a/package/mdadm/0020-uclibc-dont-force-largefile.patch b/package/mdadm/0020-uclibc-dont-force-largefile.patch
new file mode 100644 (file)
index 0000000..fe3ab47
--- /dev/null
@@ -0,0 +1,27 @@
+[PATCH] mdadm: don't enable largefile support unconditionally on uClibc
+
+uClibc can be compiled without largefile support (and errors out if
+_FILE_OFFSET_BITS is set to 64), so don't define it if that combination
+is detected.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ mdadm.h |    4 ++++
+ 1 file changed, 4 insertions(+)
+
+Index: mdadm-3.2.6/mdadm.h
+===================================================================
+--- mdadm-3.2.6.orig/mdadm.h
++++ mdadm-3.2.6/mdadm.h
+@@ -23,7 +23,11 @@
+  */
+ #define       _GNU_SOURCE
++#include <features.h>
++/* uclibc without largefile support #errors on _FILE_OFFSET_BITS=64 */
++#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_LFS__))
+ #define _FILE_OFFSET_BITS 64
++#endif
+ #include      <unistd.h>
+ #if !defined(__dietlibc__) && !defined(__KLIBC__)
+ extern __off64_t lseek64 __P ((int __fd, __off64_t __offset, int __whence));
diff --git a/package/mdadm/0030-uclibc-redefine-off64_t-as-off_t-if-no-largefile.patch b/package/mdadm/0030-uclibc-redefine-off64_t-as-off_t-if-no-largefile.patch
new file mode 100644 (file)
index 0000000..d958ab8
--- /dev/null
@@ -0,0 +1,27 @@
+From 9c63360a2db71882cc548305774ce87af5f52b6e Mon Sep 17 00:00:00 2001
+From: Christophe Vu-Brugier <cvubrugier@lacie.com>
+Date: Thu, 7 Mar 2013 10:37:09 +0100
+Subject: [PATCH] uClibc: redefine off64_t as off_t if largefile support is
+ disabled
+
+
+Signed-off-by: Christophe Vu-Brugier <cvubrugier@lacie.com>
+---
+ mdadm.h |    1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/mdadm.h b/mdadm.h
+index 216c31d..1c72cc4 100644
+--- a/mdadm.h
++++ b/mdadm.h
+@@ -1008,6 +1008,7 @@ struct stat64;
+ # include <features.h>
+ # ifndef __UCLIBC_HAS_LFS__
+ #  define lseek64 lseek
++#  define off64_t off_t
+ # endif
+ # ifndef  __UCLIBC_HAS_FTW__
+ #  undef HAVE_FTW
+-- 
+1.7.10.4
+
diff --git a/package/mdadm/mdadm-010-add-install-targets-for-mdadm-and-mdmon.patch b/package/mdadm/mdadm-010-add-install-targets-for-mdadm-and-mdmon.patch
deleted file mode 100644 (file)
index 15df755..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-From a1a9243671b1e23123f57e879890325154b8e00d Mon Sep 17 00:00:00 2001
-From: Christophe Vu-Brugier <cvubrugier@lacie.com>
-Date: Wed, 6 Mar 2013 16:03:14 +0100
-Subject: [PATCH] Add install targets for mdadm and mdmon
-
-
-Signed-off-by: Christophe Vu-Brugier <cvubrugier@lacie.com>
----
- Makefile |    6 +++++-
- 1 file changed, 5 insertions(+), 1 deletion(-)
-
-diff --git a/Makefile b/Makefile
-index 315455b..27d8eeb 100644
---- a/Makefile
-+++ b/Makefile
-@@ -231,8 +231,12 @@ $(MON_OBJS) : $(INCL) mdmon.h
- sha1.o : sha1.c sha1.h md5.h
-       $(CC) $(CFLAGS) -DHAVE_STDINT_H -o sha1.o -c sha1.c
--install : mdadm mdmon install-man install-udev
-+install : install-mdadm install-mdmon install-man install-udev
-+
-+install-mdadm :
-       $(INSTALL) -D $(STRIP) -m 755 mdadm $(DESTDIR)$(BINDIR)/mdadm
-+
-+install-mdmon :
-       $(INSTALL) -D $(STRIP) -m 755 mdmon $(DESTDIR)$(BINDIR)/mdmon
- install-static : mdadm.static install-man
--- 
-1.7.10.4
-
diff --git a/package/mdadm/mdadm-020-uclibc-dont-force-largefile.patch b/package/mdadm/mdadm-020-uclibc-dont-force-largefile.patch
deleted file mode 100644 (file)
index fe3ab47..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-[PATCH] mdadm: don't enable largefile support unconditionally on uClibc
-
-uClibc can be compiled without largefile support (and errors out if
-_FILE_OFFSET_BITS is set to 64), so don't define it if that combination
-is detected.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- mdadm.h |    4 ++++
- 1 file changed, 4 insertions(+)
-
-Index: mdadm-3.2.6/mdadm.h
-===================================================================
---- mdadm-3.2.6.orig/mdadm.h
-+++ mdadm-3.2.6/mdadm.h
-@@ -23,7 +23,11 @@
-  */
- #define       _GNU_SOURCE
-+#include <features.h>
-+/* uclibc without largefile support #errors on _FILE_OFFSET_BITS=64 */
-+#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_LFS__))
- #define _FILE_OFFSET_BITS 64
-+#endif
- #include      <unistd.h>
- #if !defined(__dietlibc__) && !defined(__KLIBC__)
- extern __off64_t lseek64 __P ((int __fd, __off64_t __offset, int __whence));
diff --git a/package/mdadm/mdadm-030-uclibc-redefine-off64_t-as-off_t-if-no-largefile.patch b/package/mdadm/mdadm-030-uclibc-redefine-off64_t-as-off_t-if-no-largefile.patch
deleted file mode 100644 (file)
index d958ab8..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-From 9c63360a2db71882cc548305774ce87af5f52b6e Mon Sep 17 00:00:00 2001
-From: Christophe Vu-Brugier <cvubrugier@lacie.com>
-Date: Thu, 7 Mar 2013 10:37:09 +0100
-Subject: [PATCH] uClibc: redefine off64_t as off_t if largefile support is
- disabled
-
-
-Signed-off-by: Christophe Vu-Brugier <cvubrugier@lacie.com>
----
- mdadm.h |    1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/mdadm.h b/mdadm.h
-index 216c31d..1c72cc4 100644
---- a/mdadm.h
-+++ b/mdadm.h
-@@ -1008,6 +1008,7 @@ struct stat64;
- # include <features.h>
- # ifndef __UCLIBC_HAS_LFS__
- #  define lseek64 lseek
-+#  define off64_t off_t
- # endif
- # ifndef  __UCLIBC_HAS_FTW__
- #  undef HAVE_FTW
--- 
-1.7.10.4
-
diff --git a/package/media-ctl/0001-add-kernel-headers-for-compatibility-with-old-toolchains.patch b/package/media-ctl/0001-add-kernel-headers-for-compatibility-with-old-toolchains.patch
new file mode 100644 (file)
index 0000000..17b52ce
--- /dev/null
@@ -0,0 +1,303 @@
+From 480b9effa08541b5df369dd6516013282cf28bd8 Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Date: Sun, 6 Oct 2013 17:24:04 +0200
+Subject: [PATCH] Add kernel headers for compatibility with old toolchains
+
+The media controller mechanism is relatively new in the Linux kernel,
+and therefore all toolchains don't yet have the necessary
+headers. This patch makes sure that media-ctl provides such headers,
+as was already the case with v4l2-common.h, v4l2-subdev.h and
+videodev2.h.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ configure.ac              |   6 +--
+ src/linux/media.h         | 132 ++++++++++++++++++++++++++++++++++++++++++++++
+ src/linux/v4l2-mediabus.h | 119 +++++++++++++++++++++++++++++++++++++++++
+ 3 files changed, 252 insertions(+), 5 deletions(-)
+ create mode 100644 src/linux/media.h
+ create mode 100644 src/linux/v4l2-mediabus.h
+
+diff --git a/configure.ac b/configure.ac
+index a749794..56eb71f 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -51,11 +51,7 @@ AC_ARG_WITH(kernel-headers,
+ CPPFLAGS="$CPPFLAGS -I$KERNEL_HEADERS_DIR/include"
+ # Checks for header files.
+-AC_CHECK_HEADERS([linux/media.h \
+-                linux/types.h \
+-                linux/v4l2-mediabus.h \
+-                linux/v4l2-subdev.h \
+-                linux/videodev2.h],
++AC_CHECK_HEADERS([linux/types.h],
+                 [],
+                 [echo "ERROR: Kernel header file not found or not usable!"; exit 1])
+diff --git a/src/linux/media.h b/src/linux/media.h
+new file mode 100644
+index 0000000..410e7cc
+--- /dev/null
++++ b/src/linux/media.h
+@@ -0,0 +1,132 @@
++/*
++ * Multimedia device API
++ *
++ * Copyright (C) 2010 Nokia Corporation
++ *
++ * Contacts: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
++ *         Sakari Ailus <sakari.ailus@iki.fi>
++ *
++ * This program is free software; you can redistribute it and/or modify
++ * it under the terms of the GNU General Public License version 2 as
++ * published by the Free Software Foundation.
++ *
++ * 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
++ */
++
++#ifndef __LINUX_MEDIA_H
++#define __LINUX_MEDIA_H
++
++#include <linux/ioctl.h>
++#include <linux/types.h>
++#include <linux/version.h>
++
++#define MEDIA_API_VERSION     KERNEL_VERSION(0, 1, 0)
++
++struct media_device_info {
++      char driver[16];
++      char model[32];
++      char serial[40];
++      char bus_info[32];
++      __u32 media_version;
++      __u32 hw_revision;
++      __u32 driver_version;
++      __u32 reserved[31];
++};
++
++#define MEDIA_ENT_ID_FLAG_NEXT                (1 << 31)
++
++#define MEDIA_ENT_TYPE_SHIFT          16
++#define MEDIA_ENT_TYPE_MASK           0x00ff0000
++#define MEDIA_ENT_SUBTYPE_MASK                0x0000ffff
++
++#define MEDIA_ENT_T_DEVNODE           (1 << MEDIA_ENT_TYPE_SHIFT)
++#define MEDIA_ENT_T_DEVNODE_V4L               (MEDIA_ENT_T_DEVNODE + 1)
++#define MEDIA_ENT_T_DEVNODE_FB                (MEDIA_ENT_T_DEVNODE + 2)
++#define MEDIA_ENT_T_DEVNODE_ALSA      (MEDIA_ENT_T_DEVNODE + 3)
++#define MEDIA_ENT_T_DEVNODE_DVB               (MEDIA_ENT_T_DEVNODE + 4)
++
++#define MEDIA_ENT_T_V4L2_SUBDEV               (2 << MEDIA_ENT_TYPE_SHIFT)
++#define MEDIA_ENT_T_V4L2_SUBDEV_SENSOR        (MEDIA_ENT_T_V4L2_SUBDEV + 1)
++#define MEDIA_ENT_T_V4L2_SUBDEV_FLASH (MEDIA_ENT_T_V4L2_SUBDEV + 2)
++#define MEDIA_ENT_T_V4L2_SUBDEV_LENS  (MEDIA_ENT_T_V4L2_SUBDEV + 3)
++
++#define MEDIA_ENT_FL_DEFAULT          (1 << 0)
++
++struct media_entity_desc {
++      __u32 id;
++      char name[32];
++      __u32 type;
++      __u32 revision;
++      __u32 flags;
++      __u32 group_id;
++      __u16 pads;
++      __u16 links;
++
++      __u32 reserved[4];
++
++      union {
++              /* Node specifications */
++              struct {
++                      __u32 major;
++                      __u32 minor;
++              } v4l;
++              struct {
++                      __u32 major;
++                      __u32 minor;
++              } fb;
++              struct {
++                      __u32 card;
++                      __u32 device;
++                      __u32 subdevice;
++              } alsa;
++              int dvb;
++
++              /* Sub-device specifications */
++              /* Nothing needed yet */
++              __u8 raw[184];
++      };
++};
++
++#define MEDIA_PAD_FL_SINK             (1 << 0)
++#define MEDIA_PAD_FL_SOURCE           (1 << 1)
++
++struct media_pad_desc {
++      __u32 entity;           /* entity ID */
++      __u16 index;            /* pad index */
++      __u32 flags;            /* pad flags */
++      __u32 reserved[2];
++};
++
++#define MEDIA_LNK_FL_ENABLED          (1 << 0)
++#define MEDIA_LNK_FL_IMMUTABLE                (1 << 1)
++#define MEDIA_LNK_FL_DYNAMIC          (1 << 2)
++
++struct media_link_desc {
++      struct media_pad_desc source;
++      struct media_pad_desc sink;
++      __u32 flags;
++      __u32 reserved[2];
++};
++
++struct media_links_enum {
++      __u32 entity;
++      /* Should have enough room for pads elements */
++      struct media_pad_desc *pads;
++      /* Should have enough room for links elements */
++      struct media_link_desc *links;
++      __u32 reserved[4];
++};
++
++#define MEDIA_IOC_DEVICE_INFO         _IOWR('|', 0x00, struct media_device_info)
++#define MEDIA_IOC_ENUM_ENTITIES               _IOWR('|', 0x01, struct media_entity_desc)
++#define MEDIA_IOC_ENUM_LINKS          _IOWR('|', 0x02, struct media_links_enum)
++#define MEDIA_IOC_SETUP_LINK          _IOWR('|', 0x03, struct media_link_desc)
++
++#endif /* __LINUX_MEDIA_H */
+diff --git a/src/linux/v4l2-mediabus.h b/src/linux/v4l2-mediabus.h
+new file mode 100644
+index 0000000..7d64e0e
+--- /dev/null
++++ b/src/linux/v4l2-mediabus.h
+@@ -0,0 +1,119 @@
++/*
++ * Media Bus API header
++ *
++ * Copyright (C) 2009, Guennadi Liakhovetski <g.liakhovetski@gmx.de>
++ *
++ * This program is free software; you can redistribute it and/or modify
++ * it under the terms of the GNU General Public License version 2 as
++ * published by the Free Software Foundation.
++ */
++
++#ifndef __LINUX_V4L2_MEDIABUS_H
++#define __LINUX_V4L2_MEDIABUS_H
++
++#include <linux/types.h>
++#include <linux/videodev2.h>
++
++/*
++ * These pixel codes uniquely identify data formats on the media bus. Mostly
++ * they correspond to similarly named V4L2_PIX_FMT_* formats, format 0 is
++ * reserved, V4L2_MBUS_FMT_FIXED shall be used by host-client pairs, where the
++ * data format is fixed. Additionally, "2X8" means that one pixel is transferred
++ * in two 8-bit samples, "BE" or "LE" specify in which order those samples are
++ * transferred over the bus: "LE" means that the least significant bits are
++ * transferred first, "BE" means that the most significant bits are transferred
++ * first, and "PADHI" and "PADLO" define which bits - low or high, in the
++ * incomplete high byte, are filled with padding bits.
++ *
++ * The pixel codes are grouped by type, bus_width, bits per component, samples
++ * per pixel and order of subsamples. Numerical values are sorted using generic
++ * numerical sort order (8 thus comes before 10).
++ *
++ * As their value can't change when a new pixel code is inserted in the
++ * enumeration, the pixel codes are explicitly given a numerical value. The next
++ * free values for each category are listed below, update them when inserting
++ * new pixel codes.
++ */
++enum v4l2_mbus_pixelcode {
++      V4L2_MBUS_FMT_FIXED = 0x0001,
++
++      /* RGB - next is 0x1009 */
++      V4L2_MBUS_FMT_RGB444_2X8_PADHI_BE = 0x1001,
++      V4L2_MBUS_FMT_RGB444_2X8_PADHI_LE = 0x1002,
++      V4L2_MBUS_FMT_RGB555_2X8_PADHI_BE = 0x1003,
++      V4L2_MBUS_FMT_RGB555_2X8_PADHI_LE = 0x1004,
++      V4L2_MBUS_FMT_BGR565_2X8_BE = 0x1005,
++      V4L2_MBUS_FMT_BGR565_2X8_LE = 0x1006,
++      V4L2_MBUS_FMT_RGB565_2X8_BE = 0x1007,
++      V4L2_MBUS_FMT_RGB565_2X8_LE = 0x1008,
++
++      /* YUV (including grey) - next is 0x2014 */
++      V4L2_MBUS_FMT_Y8_1X8 = 0x2001,
++      V4L2_MBUS_FMT_UYVY8_1_5X8 = 0x2002,
++      V4L2_MBUS_FMT_VYUY8_1_5X8 = 0x2003,
++      V4L2_MBUS_FMT_YUYV8_1_5X8 = 0x2004,
++      V4L2_MBUS_FMT_YVYU8_1_5X8 = 0x2005,
++      V4L2_MBUS_FMT_UYVY8_2X8 = 0x2006,
++      V4L2_MBUS_FMT_VYUY8_2X8 = 0x2007,
++      V4L2_MBUS_FMT_YUYV8_2X8 = 0x2008,
++      V4L2_MBUS_FMT_YVYU8_2X8 = 0x2009,
++      V4L2_MBUS_FMT_Y10_1X10 = 0x200a,
++      V4L2_MBUS_FMT_YUYV10_2X10 = 0x200b,
++      V4L2_MBUS_FMT_YVYU10_2X10 = 0x200c,
++      V4L2_MBUS_FMT_Y12_1X12 = 0x2013,
++      V4L2_MBUS_FMT_UYVY8_1X16 = 0x200f,
++      V4L2_MBUS_FMT_VYUY8_1X16 = 0x2010,
++      V4L2_MBUS_FMT_YUYV8_1X16 = 0x2011,
++      V4L2_MBUS_FMT_YVYU8_1X16 = 0x2012,
++      V4L2_MBUS_FMT_YUYV10_1X20 = 0x200d,
++      V4L2_MBUS_FMT_YVYU10_1X20 = 0x200e,
++
++      /* Bayer - next is 0x3015 */
++      V4L2_MBUS_FMT_SBGGR8_1X8 = 0x3001,
++      V4L2_MBUS_FMT_SGBRG8_1X8 = 0x3013,
++      V4L2_MBUS_FMT_SGRBG8_1X8 = 0x3002,
++      V4L2_MBUS_FMT_SRGGB8_1X8 = 0x3014,
++      V4L2_MBUS_FMT_SBGGR10_DPCM8_1X8 = 0x300b,
++      V4L2_MBUS_FMT_SGBRG10_DPCM8_1X8 = 0x300c,
++      V4L2_MBUS_FMT_SGRBG10_DPCM8_1X8 = 0x3009,
++      V4L2_MBUS_FMT_SRGGB10_DPCM8_1X8 = 0x300d,
++      V4L2_MBUS_FMT_SBGGR10_2X8_PADHI_BE = 0x3003,
++      V4L2_MBUS_FMT_SBGGR10_2X8_PADHI_LE = 0x3004,
++      V4L2_MBUS_FMT_SBGGR10_2X8_PADLO_BE = 0x3005,
++      V4L2_MBUS_FMT_SBGGR10_2X8_PADLO_LE = 0x3006,
++      V4L2_MBUS_FMT_SBGGR10_1X10 = 0x3007,
++      V4L2_MBUS_FMT_SGBRG10_1X10 = 0x300e,
++      V4L2_MBUS_FMT_SGRBG10_1X10 = 0x300a,
++      V4L2_MBUS_FMT_SRGGB10_1X10 = 0x300f,
++      V4L2_MBUS_FMT_SBGGR12_1X12 = 0x3008,
++      V4L2_MBUS_FMT_SGBRG12_1X12 = 0x3010,
++      V4L2_MBUS_FMT_SGRBG12_1X12 = 0x3011,
++      V4L2_MBUS_FMT_SRGGB12_1X12 = 0x3012,
++
++      /* JPEG compressed formats - next is 0x4002 */
++      V4L2_MBUS_FMT_JPEG_1X8 = 0x4001,
++
++      /* Vendor specific formats - next is 0x5002 */
++
++      /* S5C73M3 sensor specific interleaved UYVY and JPEG */
++      V4L2_MBUS_FMT_S5C_UYVY_JPEG_1X8 = 0x5001,
++};
++
++/**
++ * struct v4l2_mbus_framefmt - frame format on the media bus
++ * @width:    frame width
++ * @height:   frame height
++ * @code:     data format code (from enum v4l2_mbus_pixelcode)
++ * @field:    used interlacing type (from enum v4l2_field)
++ * @colorspace:       colorspace of the data (from enum v4l2_colorspace)
++ */
++struct v4l2_mbus_framefmt {
++      __u32                   width;
++      __u32                   height;
++      __u32                   code;
++      __u32                   field;
++      __u32                   colorspace;
++      __u32                   reserved[7];
++};
++
++#endif
+-- 
+1.8.1.2
+
diff --git a/package/media-ctl/media-ctl-0001-add-kernel-headers-for-compatibility-with-old-toolchains.patch b/package/media-ctl/media-ctl-0001-add-kernel-headers-for-compatibility-with-old-toolchains.patch
deleted file mode 100644 (file)
index 17b52ce..0000000
+++ /dev/null
@@ -1,303 +0,0 @@
-From 480b9effa08541b5df369dd6516013282cf28bd8 Mon Sep 17 00:00:00 2001
-From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-Date: Sun, 6 Oct 2013 17:24:04 +0200
-Subject: [PATCH] Add kernel headers for compatibility with old toolchains
-
-The media controller mechanism is relatively new in the Linux kernel,
-and therefore all toolchains don't yet have the necessary
-headers. This patch makes sure that media-ctl provides such headers,
-as was already the case with v4l2-common.h, v4l2-subdev.h and
-videodev2.h.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
----
- configure.ac              |   6 +--
- src/linux/media.h         | 132 ++++++++++++++++++++++++++++++++++++++++++++++
- src/linux/v4l2-mediabus.h | 119 +++++++++++++++++++++++++++++++++++++++++
- 3 files changed, 252 insertions(+), 5 deletions(-)
- create mode 100644 src/linux/media.h
- create mode 100644 src/linux/v4l2-mediabus.h
-
-diff --git a/configure.ac b/configure.ac
-index a749794..56eb71f 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -51,11 +51,7 @@ AC_ARG_WITH(kernel-headers,
- CPPFLAGS="$CPPFLAGS -I$KERNEL_HEADERS_DIR/include"
- # Checks for header files.
--AC_CHECK_HEADERS([linux/media.h \
--                linux/types.h \
--                linux/v4l2-mediabus.h \
--                linux/v4l2-subdev.h \
--                linux/videodev2.h],
-+AC_CHECK_HEADERS([linux/types.h],
-                 [],
-                 [echo "ERROR: Kernel header file not found or not usable!"; exit 1])
-diff --git a/src/linux/media.h b/src/linux/media.h
-new file mode 100644
-index 0000000..410e7cc
---- /dev/null
-+++ b/src/linux/media.h
-@@ -0,0 +1,132 @@
-+/*
-+ * Multimedia device API
-+ *
-+ * Copyright (C) 2010 Nokia Corporation
-+ *
-+ * Contacts: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
-+ *         Sakari Ailus <sakari.ailus@iki.fi>
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License version 2 as
-+ * published by the Free Software Foundation.
-+ *
-+ * 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
-+ */
-+
-+#ifndef __LINUX_MEDIA_H
-+#define __LINUX_MEDIA_H
-+
-+#include <linux/ioctl.h>
-+#include <linux/types.h>
-+#include <linux/version.h>
-+
-+#define MEDIA_API_VERSION     KERNEL_VERSION(0, 1, 0)
-+
-+struct media_device_info {
-+      char driver[16];
-+      char model[32];
-+      char serial[40];
-+      char bus_info[32];
-+      __u32 media_version;
-+      __u32 hw_revision;
-+      __u32 driver_version;
-+      __u32 reserved[31];
-+};
-+
-+#define MEDIA_ENT_ID_FLAG_NEXT                (1 << 31)
-+
-+#define MEDIA_ENT_TYPE_SHIFT          16
-+#define MEDIA_ENT_TYPE_MASK           0x00ff0000
-+#define MEDIA_ENT_SUBTYPE_MASK                0x0000ffff
-+
-+#define MEDIA_ENT_T_DEVNODE           (1 << MEDIA_ENT_TYPE_SHIFT)
-+#define MEDIA_ENT_T_DEVNODE_V4L               (MEDIA_ENT_T_DEVNODE + 1)
-+#define MEDIA_ENT_T_DEVNODE_FB                (MEDIA_ENT_T_DEVNODE + 2)
-+#define MEDIA_ENT_T_DEVNODE_ALSA      (MEDIA_ENT_T_DEVNODE + 3)
-+#define MEDIA_ENT_T_DEVNODE_DVB               (MEDIA_ENT_T_DEVNODE + 4)
-+
-+#define MEDIA_ENT_T_V4L2_SUBDEV               (2 << MEDIA_ENT_TYPE_SHIFT)
-+#define MEDIA_ENT_T_V4L2_SUBDEV_SENSOR        (MEDIA_ENT_T_V4L2_SUBDEV + 1)
-+#define MEDIA_ENT_T_V4L2_SUBDEV_FLASH (MEDIA_ENT_T_V4L2_SUBDEV + 2)
-+#define MEDIA_ENT_T_V4L2_SUBDEV_LENS  (MEDIA_ENT_T_V4L2_SUBDEV + 3)
-+
-+#define MEDIA_ENT_FL_DEFAULT          (1 << 0)
-+
-+struct media_entity_desc {
-+      __u32 id;
-+      char name[32];
-+      __u32 type;
-+      __u32 revision;
-+      __u32 flags;
-+      __u32 group_id;
-+      __u16 pads;
-+      __u16 links;
-+
-+      __u32 reserved[4];
-+
-+      union {
-+              /* Node specifications */
-+              struct {
-+                      __u32 major;
-+                      __u32 minor;
-+              } v4l;
-+              struct {
-+                      __u32 major;
-+                      __u32 minor;
-+              } fb;
-+              struct {
-+                      __u32 card;
-+                      __u32 device;
-+                      __u32 subdevice;
-+              } alsa;
-+              int dvb;
-+
-+              /* Sub-device specifications */
-+              /* Nothing needed yet */
-+              __u8 raw[184];
-+      };
-+};
-+
-+#define MEDIA_PAD_FL_SINK             (1 << 0)
-+#define MEDIA_PAD_FL_SOURCE           (1 << 1)
-+
-+struct media_pad_desc {
-+      __u32 entity;           /* entity ID */
-+      __u16 index;            /* pad index */
-+      __u32 flags;            /* pad flags */
-+      __u32 reserved[2];
-+};
-+
-+#define MEDIA_LNK_FL_ENABLED          (1 << 0)
-+#define MEDIA_LNK_FL_IMMUTABLE                (1 << 1)
-+#define MEDIA_LNK_FL_DYNAMIC          (1 << 2)
-+
-+struct media_link_desc {
-+      struct media_pad_desc source;
-+      struct media_pad_desc sink;
-+      __u32 flags;
-+      __u32 reserved[2];
-+};
-+
-+struct media_links_enum {
-+      __u32 entity;
-+      /* Should have enough room for pads elements */
-+      struct media_pad_desc *pads;
-+      /* Should have enough room for links elements */
-+      struct media_link_desc *links;
-+      __u32 reserved[4];
-+};
-+
-+#define MEDIA_IOC_DEVICE_INFO         _IOWR('|', 0x00, struct media_device_info)
-+#define MEDIA_IOC_ENUM_ENTITIES               _IOWR('|', 0x01, struct media_entity_desc)
-+#define MEDIA_IOC_ENUM_LINKS          _IOWR('|', 0x02, struct media_links_enum)
-+#define MEDIA_IOC_SETUP_LINK          _IOWR('|', 0x03, struct media_link_desc)
-+
-+#endif /* __LINUX_MEDIA_H */
-diff --git a/src/linux/v4l2-mediabus.h b/src/linux/v4l2-mediabus.h
-new file mode 100644
-index 0000000..7d64e0e
---- /dev/null
-+++ b/src/linux/v4l2-mediabus.h
-@@ -0,0 +1,119 @@
-+/*
-+ * Media Bus API header
-+ *
-+ * Copyright (C) 2009, Guennadi Liakhovetski <g.liakhovetski@gmx.de>
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License version 2 as
-+ * published by the Free Software Foundation.
-+ */
-+
-+#ifndef __LINUX_V4L2_MEDIABUS_H
-+#define __LINUX_V4L2_MEDIABUS_H
-+
-+#include <linux/types.h>
-+#include <linux/videodev2.h>
-+
-+/*
-+ * These pixel codes uniquely identify data formats on the media bus. Mostly
-+ * they correspond to similarly named V4L2_PIX_FMT_* formats, format 0 is
-+ * reserved, V4L2_MBUS_FMT_FIXED shall be used by host-client pairs, where the
-+ * data format is fixed. Additionally, "2X8" means that one pixel is transferred
-+ * in two 8-bit samples, "BE" or "LE" specify in which order those samples are
-+ * transferred over the bus: "LE" means that the least significant bits are
-+ * transferred first, "BE" means that the most significant bits are transferred
-+ * first, and "PADHI" and "PADLO" define which bits - low or high, in the
-+ * incomplete high byte, are filled with padding bits.
-+ *
-+ * The pixel codes are grouped by type, bus_width, bits per component, samples
-+ * per pixel and order of subsamples. Numerical values are sorted using generic
-+ * numerical sort order (8 thus comes before 10).
-+ *
-+ * As their value can't change when a new pixel code is inserted in the
-+ * enumeration, the pixel codes are explicitly given a numerical value. The next
-+ * free values for each category are listed below, update them when inserting
-+ * new pixel codes.
-+ */
-+enum v4l2_mbus_pixelcode {
-+      V4L2_MBUS_FMT_FIXED = 0x0001,
-+
-+      /* RGB - next is 0x1009 */
-+      V4L2_MBUS_FMT_RGB444_2X8_PADHI_BE = 0x1001,
-+      V4L2_MBUS_FMT_RGB444_2X8_PADHI_LE = 0x1002,
-+      V4L2_MBUS_FMT_RGB555_2X8_PADHI_BE = 0x1003,
-+      V4L2_MBUS_FMT_RGB555_2X8_PADHI_LE = 0x1004,
-+      V4L2_MBUS_FMT_BGR565_2X8_BE = 0x1005,
-+      V4L2_MBUS_FMT_BGR565_2X8_LE = 0x1006,
-+      V4L2_MBUS_FMT_RGB565_2X8_BE = 0x1007,
-+      V4L2_MBUS_FMT_RGB565_2X8_LE = 0x1008,
-+
-+      /* YUV (including grey) - next is 0x2014 */
-+      V4L2_MBUS_FMT_Y8_1X8 = 0x2001,
-+      V4L2_MBUS_FMT_UYVY8_1_5X8 = 0x2002,
-+      V4L2_MBUS_FMT_VYUY8_1_5X8 = 0x2003,
-+      V4L2_MBUS_FMT_YUYV8_1_5X8 = 0x2004,
-+      V4L2_MBUS_FMT_YVYU8_1_5X8 = 0x2005,
-+      V4L2_MBUS_FMT_UYVY8_2X8 = 0x2006,
-+      V4L2_MBUS_FMT_VYUY8_2X8 = 0x2007,
-+      V4L2_MBUS_FMT_YUYV8_2X8 = 0x2008,
-+      V4L2_MBUS_FMT_YVYU8_2X8 = 0x2009,
-+      V4L2_MBUS_FMT_Y10_1X10 = 0x200a,
-+      V4L2_MBUS_FMT_YUYV10_2X10 = 0x200b,
-+      V4L2_MBUS_FMT_YVYU10_2X10 = 0x200c,
-+      V4L2_MBUS_FMT_Y12_1X12 = 0x2013,
-+      V4L2_MBUS_FMT_UYVY8_1X16 = 0x200f,
-+      V4L2_MBUS_FMT_VYUY8_1X16 = 0x2010,
-+      V4L2_MBUS_FMT_YUYV8_1X16 = 0x2011,
-+      V4L2_MBUS_FMT_YVYU8_1X16 = 0x2012,
-+      V4L2_MBUS_FMT_YUYV10_1X20 = 0x200d,
-+      V4L2_MBUS_FMT_YVYU10_1X20 = 0x200e,
-+
-+      /* Bayer - next is 0x3015 */
-+      V4L2_MBUS_FMT_SBGGR8_1X8 = 0x3001,
-+      V4L2_MBUS_FMT_SGBRG8_1X8 = 0x3013,
-+      V4L2_MBUS_FMT_SGRBG8_1X8 = 0x3002,
-+      V4L2_MBUS_FMT_SRGGB8_1X8 = 0x3014,
-+      V4L2_MBUS_FMT_SBGGR10_DPCM8_1X8 = 0x300b,
-+      V4L2_MBUS_FMT_SGBRG10_DPCM8_1X8 = 0x300c,
-+      V4L2_MBUS_FMT_SGRBG10_DPCM8_1X8 = 0x3009,
-+      V4L2_MBUS_FMT_SRGGB10_DPCM8_1X8 = 0x300d,
-+      V4L2_MBUS_FMT_SBGGR10_2X8_PADHI_BE = 0x3003,
-+      V4L2_MBUS_FMT_SBGGR10_2X8_PADHI_LE = 0x3004,
-+      V4L2_MBUS_FMT_SBGGR10_2X8_PADLO_BE = 0x3005,
-+      V4L2_MBUS_FMT_SBGGR10_2X8_PADLO_LE = 0x3006,
-+      V4L2_MBUS_FMT_SBGGR10_1X10 = 0x3007,
-+      V4L2_MBUS_FMT_SGBRG10_1X10 = 0x300e,
-+      V4L2_MBUS_FMT_SGRBG10_1X10 = 0x300a,
-+      V4L2_MBUS_FMT_SRGGB10_1X10 = 0x300f,
-+      V4L2_MBUS_FMT_SBGGR12_1X12 = 0x3008,
-+      V4L2_MBUS_FMT_SGBRG12_1X12 = 0x3010,
-+      V4L2_MBUS_FMT_SGRBG12_1X12 = 0x3011,
-+      V4L2_MBUS_FMT_SRGGB12_1X12 = 0x3012,
-+
-+      /* JPEG compressed formats - next is 0x4002 */
-+      V4L2_MBUS_FMT_JPEG_1X8 = 0x4001,
-+
-+      /* Vendor specific formats - next is 0x5002 */
-+
-+      /* S5C73M3 sensor specific interleaved UYVY and JPEG */
-+      V4L2_MBUS_FMT_S5C_UYVY_JPEG_1X8 = 0x5001,
-+};
-+
-+/**
-+ * struct v4l2_mbus_framefmt - frame format on the media bus
-+ * @width:    frame width
-+ * @height:   frame height
-+ * @code:     data format code (from enum v4l2_mbus_pixelcode)
-+ * @field:    used interlacing type (from enum v4l2_field)
-+ * @colorspace:       colorspace of the data (from enum v4l2_colorspace)
-+ */
-+struct v4l2_mbus_framefmt {
-+      __u32                   width;
-+      __u32                   height;
-+      __u32                   code;
-+      __u32                   field;
-+      __u32                   colorspace;
-+      __u32                   reserved[7];
-+};
-+
-+#endif
--- 
-1.8.1.2
-
diff --git a/package/mediastreamer/0001-misc-fixes.patch b/package/mediastreamer/0001-misc-fixes.patch
new file mode 100644 (file)
index 0000000..84c9948
--- /dev/null
@@ -0,0 +1,156 @@
+Fix linphone compile with newer ffmpeg versions, downloaded from
+https://github.com/dankamongmen/mediastreamer2/commit/4f438eb8e132a3119284be771e0daad143597ebd
+
+Fixes
+http://autobuild.buildroot.net/results/b72/b72b1f6287986af3d686cc3c8b9c1b3fd9419d29/
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+
+
+From 4f438eb8e132a3119284be771e0daad143597ebd Mon Sep 17 00:00:00 2001
+From: nick black <nick.black@sprezzatech.com>
+Date: Mon, 28 Jan 2013 23:54:17 -0500
+Subject: [PATCH] adapt to new libav API
+
+---
+ src/utils/ffmpeg-priv.h       | 1 +
+ src/videofilters/h264dec.c    | 6 +++---
+ src/videofilters/jpegwriter.c | 6 +++---
+ src/videofilters/nowebcam.c   | 6 +++---
+ src/videofilters/videodec.c   | 8 ++++----
+ src/videofilters/videoenc.c   | 6 +++---
+ 6 files changed, 17 insertions(+), 16 deletions(-)
+
+diff --git a/src/utils/ffmpeg-priv.h b/src/utils/ffmpeg-priv.h
+index 0eab098..a405c05 100644
+--- a/src/utils/ffmpeg-priv.h
++++ b/src/utils/ffmpeg-priv.h
+@@ -35,6 +35,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ /* new layout */
+ # include <libavcodec/avcodec.h>
+ # include <libavutil/avutil.h>
++# include <libavutil/mem.h>
+ #else
+ /* old layout */
+ # include <ffmpeg/avcodec.h>
+diff --git a/src/videofilters/h264dec.c b/src/videofilters/h264dec.c
+index 5229b5e..7059634 100644
+--- a/src/videofilters/h264dec.c
++++ b/src/videofilters/h264dec.c
+@@ -58,10 +58,10 @@ static void dec_open(DecData *d){
+       int error;
+       codec=avcodec_find_decoder(CODEC_ID_H264);
+       if (codec==NULL) ms_fatal("Could not find H264 decoder in ffmpeg.");
+-      avcodec_get_context_defaults(&d->av_context);
+-      error=avcodec_open(&d->av_context,codec);
++      avcodec_get_context_defaults3(&d->av_context, codec);
++      error=avcodec_open2(&d->av_context,codec, NULL);
+       if (error!=0){
+-              ms_fatal("avcodec_open() failed.");
++              ms_fatal("avcodec_open2() failed.");
+       }
+ }
+diff --git a/src/videofilters/jpegwriter.c b/src/videofilters/jpegwriter.c
+index cca79c5..daf3cdb 100644
+--- a/src/videofilters/jpegwriter.c
++++ b/src/videofilters/jpegwriter.c
+@@ -90,7 +90,7 @@ static void jpg_process(MSFilter *f){
+                       mblk_t *jpegm;
+                       struct SwsContext *sws_ctx;
+                       
+-                      AVCodecContext *avctx=avcodec_alloc_context();
++                      AVCodecContext *avctx=avcodec_alloc_context3(NULL);
+                       
+                       avctx->width=yuvbuf.w;
+                       avctx->height=yuvbuf.h;
+@@ -98,9 +98,9 @@ static void jpg_process(MSFilter *f){
+                       avctx->time_base.den =1;
+                       avctx->pix_fmt=PIX_FMT_YUVJ420P;
+-                      error=avcodec_open(avctx,s->codec);
++                      error=avcodec_open2(avctx,s->codec,NULL);
+                       if (error!=0) {
+-                              ms_error("avcodec_open() failed: %i",error);
++                              ms_error("avcodec_open2() failed: %i",error);
+                               cleanup(s,NULL);
+                               av_free(avctx);
+                               return;
+diff --git a/src/videofilters/nowebcam.c b/src/videofilters/nowebcam.c
+index f1c10de..b45f89f 100644
+--- a/src/videofilters/nowebcam.c
++++ b/src/videofilters/nowebcam.c
+@@ -68,9 +68,9 @@ static mblk_t *jpeg2yuv(uint8_t *jpgbuf, int bufsize, MSVideoSize *reqsize){
+               return NULL;
+       }
+-      avcodec_get_context_defaults(&av_context);
+-      if (avcodec_open(&av_context,codec)<0){
+-              ms_error("jpeg2yuv: avcodec_open failed");
++      avcodec_get_context_defaults3(&av_context,NULL);
++      if (avcodec_open2(&av_context,codec,NULL)<0){
++              ms_error("jpeg2yuv: avcodec_open2 failed");
+               return NULL;
+       }
+       av_init_packet(&pkt);
+diff --git a/src/videofilters/videodec.c b/src/videofilters/videodec.c
+index 9807214..2f1b452 100644
+--- a/src/videofilters/videodec.c
++++ b/src/videofilters/videodec.c
+@@ -53,7 +53,7 @@ static void dec_init(MSFilter *f, enum CodecID cid){
+       DecState *s=(DecState *)ms_new0(DecState,1);
+       ms_ffmpeg_check_init();
+       
+-      avcodec_get_context_defaults(&s->av_context);
++      avcodec_get_context_defaults3(&s->av_context,NULL);
+       s->av_codec=NULL;
+       s->codec=cid;
+       s->input=NULL;
+@@ -135,7 +135,7 @@ static void dec_preprocess(MSFilter *f){
+       if (s->av_context.codec==NULL){
+               /* we must know picture size before initializing snow decoder*/
+               if (s->codec!=CODEC_ID_SNOW){
+-                      error=avcodec_open(&s->av_context, s->av_codec);
++                      error=avcodec_open2(&s->av_context, s->av_codec, NULL);
+                       if (error!=0) ms_error("avcodec_open() failed: %i",error);
+                       if (s->codec==CODEC_ID_MPEG4 && s->dci_size>0){
+                               s->av_context.extradata=s->dci;
+@@ -225,8 +225,8 @@ static mblk_t * parse_snow_header(DecState *s,mblk_t *inm){
+                       int error;
+                       s->av_context.width=h>>16;
+                       s->av_context.height=h&0xffff;
+-                      error=avcodec_open(&s->av_context, s->av_codec);
+-                      if (error!=0) ms_error("avcodec_open() failed for snow: %i",error);
++                      error=avcodec_open2(&s->av_context, s->av_codec, NULL);
++                      if (error!=0) ms_error("avcodec_open2() failed for snow: %i",error);
+                       else {
+                               s->snow_initialized=TRUE;
+                               ms_message("Snow decoder initialized,size=%ix%i",
+diff --git a/src/videofilters/videoenc.c b/src/videofilters/videoenc.c
+index da35592..4101772 100644
+--- a/src/videofilters/videoenc.c
++++ b/src/videofilters/videoenc.c
+@@ -242,7 +242,7 @@ static void prepare(EncState *s){
+       AVCodecContext *c=&s->av_context;
+       const int max_br_vbv=128000;
+-      avcodec_get_context_defaults(c);
++      avcodec_get_context_defaults3(c,NULL);
+       if (s->codec==CODEC_ID_MJPEG)
+       {
+               ms_message("Codec bitrate set to %i",c->bit_rate);
+@@ -348,9 +348,9 @@ static void enc_preprocess(MSFilter *f){
+               ms_error("could not find encoder for codec id %i",s->codec);
+               return;
+       }
+-      error=avcodec_open(&s->av_context, s->av_codec);
++      error=avcodec_open2(&s->av_context, s->av_codec, NULL);
+       if (error!=0) {
+-              ms_error("avcodec_open() failed: %i",error);
++              ms_error("avcodec_open2() failed: %i",error);
+               return;
+       }
+       video_starter_init(&s->starter);
+-- 
+2.0.3
+
diff --git a/package/mediastreamer/mediastreamer-0001.patch b/package/mediastreamer/mediastreamer-0001.patch
deleted file mode 100644 (file)
index 84c9948..0000000
+++ /dev/null
@@ -1,156 +0,0 @@
-Fix linphone compile with newer ffmpeg versions, downloaded from
-https://github.com/dankamongmen/mediastreamer2/commit/4f438eb8e132a3119284be771e0daad143597ebd
-
-Fixes
-http://autobuild.buildroot.net/results/b72/b72b1f6287986af3d686cc3c8b9c1b3fd9419d29/
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-
-
-From 4f438eb8e132a3119284be771e0daad143597ebd Mon Sep 17 00:00:00 2001
-From: nick black <nick.black@sprezzatech.com>
-Date: Mon, 28 Jan 2013 23:54:17 -0500
-Subject: [PATCH] adapt to new libav API
-
----
- src/utils/ffmpeg-priv.h       | 1 +
- src/videofilters/h264dec.c    | 6 +++---
- src/videofilters/jpegwriter.c | 6 +++---
- src/videofilters/nowebcam.c   | 6 +++---
- src/videofilters/videodec.c   | 8 ++++----
- src/videofilters/videoenc.c   | 6 +++---
- 6 files changed, 17 insertions(+), 16 deletions(-)
-
-diff --git a/src/utils/ffmpeg-priv.h b/src/utils/ffmpeg-priv.h
-index 0eab098..a405c05 100644
---- a/src/utils/ffmpeg-priv.h
-+++ b/src/utils/ffmpeg-priv.h
-@@ -35,6 +35,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
- /* new layout */
- # include <libavcodec/avcodec.h>
- # include <libavutil/avutil.h>
-+# include <libavutil/mem.h>
- #else
- /* old layout */
- # include <ffmpeg/avcodec.h>
-diff --git a/src/videofilters/h264dec.c b/src/videofilters/h264dec.c
-index 5229b5e..7059634 100644
---- a/src/videofilters/h264dec.c
-+++ b/src/videofilters/h264dec.c
-@@ -58,10 +58,10 @@ static void dec_open(DecData *d){
-       int error;
-       codec=avcodec_find_decoder(CODEC_ID_H264);
-       if (codec==NULL) ms_fatal("Could not find H264 decoder in ffmpeg.");
--      avcodec_get_context_defaults(&d->av_context);
--      error=avcodec_open(&d->av_context,codec);
-+      avcodec_get_context_defaults3(&d->av_context, codec);
-+      error=avcodec_open2(&d->av_context,codec, NULL);
-       if (error!=0){
--              ms_fatal("avcodec_open() failed.");
-+              ms_fatal("avcodec_open2() failed.");
-       }
- }
-diff --git a/src/videofilters/jpegwriter.c b/src/videofilters/jpegwriter.c
-index cca79c5..daf3cdb 100644
---- a/src/videofilters/jpegwriter.c
-+++ b/src/videofilters/jpegwriter.c
-@@ -90,7 +90,7 @@ static void jpg_process(MSFilter *f){
-                       mblk_t *jpegm;
-                       struct SwsContext *sws_ctx;
-                       
--                      AVCodecContext *avctx=avcodec_alloc_context();
-+                      AVCodecContext *avctx=avcodec_alloc_context3(NULL);
-                       
-                       avctx->width=yuvbuf.w;
-                       avctx->height=yuvbuf.h;
-@@ -98,9 +98,9 @@ static void jpg_process(MSFilter *f){
-                       avctx->time_base.den =1;
-                       avctx->pix_fmt=PIX_FMT_YUVJ420P;
--                      error=avcodec_open(avctx,s->codec);
-+                      error=avcodec_open2(avctx,s->codec,NULL);
-                       if (error!=0) {
--                              ms_error("avcodec_open() failed: %i",error);
-+                              ms_error("avcodec_open2() failed: %i",error);
-                               cleanup(s,NULL);
-                               av_free(avctx);
-                               return;
-diff --git a/src/videofilters/nowebcam.c b/src/videofilters/nowebcam.c
-index f1c10de..b45f89f 100644
---- a/src/videofilters/nowebcam.c
-+++ b/src/videofilters/nowebcam.c
-@@ -68,9 +68,9 @@ static mblk_t *jpeg2yuv(uint8_t *jpgbuf, int bufsize, MSVideoSize *reqsize){
-               return NULL;
-       }
--      avcodec_get_context_defaults(&av_context);
--      if (avcodec_open(&av_context,codec)<0){
--              ms_error("jpeg2yuv: avcodec_open failed");
-+      avcodec_get_context_defaults3(&av_context,NULL);
-+      if (avcodec_open2(&av_context,codec,NULL)<0){
-+              ms_error("jpeg2yuv: avcodec_open2 failed");
-               return NULL;
-       }
-       av_init_packet(&pkt);
-diff --git a/src/videofilters/videodec.c b/src/videofilters/videodec.c
-index 9807214..2f1b452 100644
---- a/src/videofilters/videodec.c
-+++ b/src/videofilters/videodec.c
-@@ -53,7 +53,7 @@ static void dec_init(MSFilter *f, enum CodecID cid){
-       DecState *s=(DecState *)ms_new0(DecState,1);
-       ms_ffmpeg_check_init();
-       
--      avcodec_get_context_defaults(&s->av_context);
-+      avcodec_get_context_defaults3(&s->av_context,NULL);
-       s->av_codec=NULL;
-       s->codec=cid;
-       s->input=NULL;
-@@ -135,7 +135,7 @@ static void dec_preprocess(MSFilter *f){
-       if (s->av_context.codec==NULL){
-               /* we must know picture size before initializing snow decoder*/
-               if (s->codec!=CODEC_ID_SNOW){
--                      error=avcodec_open(&s->av_context, s->av_codec);
-+                      error=avcodec_open2(&s->av_context, s->av_codec, NULL);
-                       if (error!=0) ms_error("avcodec_open() failed: %i",error);
-                       if (s->codec==CODEC_ID_MPEG4 && s->dci_size>0){
-                               s->av_context.extradata=s->dci;
-@@ -225,8 +225,8 @@ static mblk_t * parse_snow_header(DecState *s,mblk_t *inm){
-                       int error;
-                       s->av_context.width=h>>16;
-                       s->av_context.height=h&0xffff;
--                      error=avcodec_open(&s->av_context, s->av_codec);
--                      if (error!=0) ms_error("avcodec_open() failed for snow: %i",error);
-+                      error=avcodec_open2(&s->av_context, s->av_codec, NULL);
-+                      if (error!=0) ms_error("avcodec_open2() failed for snow: %i",error);
-                       else {
-                               s->snow_initialized=TRUE;
-                               ms_message("Snow decoder initialized,size=%ix%i",
-diff --git a/src/videofilters/videoenc.c b/src/videofilters/videoenc.c
-index da35592..4101772 100644
---- a/src/videofilters/videoenc.c
-+++ b/src/videofilters/videoenc.c
-@@ -242,7 +242,7 @@ static void prepare(EncState *s){
-       AVCodecContext *c=&s->av_context;
-       const int max_br_vbv=128000;
--      avcodec_get_context_defaults(c);
-+      avcodec_get_context_defaults3(c,NULL);
-       if (s->codec==CODEC_ID_MJPEG)
-       {
-               ms_message("Codec bitrate set to %i",c->bit_rate);
-@@ -348,9 +348,9 @@ static void enc_preprocess(MSFilter *f){
-               ms_error("could not find encoder for codec id %i",s->codec);
-               return;
-       }
--      error=avcodec_open(&s->av_context, s->av_codec);
-+      error=avcodec_open2(&s->av_context, s->av_codec, NULL);
-       if (error!=0) {
--              ms_error("avcodec_open() failed: %i",error);
-+              ms_error("avcodec_open2() failed: %i",error);
-               return;
-       }
-       video_starter_init(&s->starter);
--- 
-2.0.3
-
diff --git a/package/memstat/0001-PATH_MAX.patch b/package/memstat/0001-PATH_MAX.patch
new file mode 100644 (file)
index 0000000..0c3617a
--- /dev/null
@@ -0,0 +1,14 @@
+Add missing #include for PATH_MAX
+
+Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
+
+--- memstat-0.8.org/memstat.c  2009-06-08 14:38:05.000000000 +0200
++++ memstat-0.8/memstat.c      2014-09-12 03:55:43.096035374 +0200
+@@ -19,6 +19,7 @@
+ #include <unistd.h>
+ #include <getopt.h>
+ #include <errno.h>
++#include <limits.h>
+ /* blacklist devices that just map physical memory */
+ char *blacklist[] = { "/dev/mem",
diff --git a/package/memstat/memstat-0001-PATH_MAX.patch b/package/memstat/memstat-0001-PATH_MAX.patch
deleted file mode 100644 (file)
index 0c3617a..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-Add missing #include for PATH_MAX
-
-Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
-
---- memstat-0.8.org/memstat.c  2009-06-08 14:38:05.000000000 +0200
-+++ memstat-0.8/memstat.c      2014-09-12 03:55:43.096035374 +0200
-@@ -19,6 +19,7 @@
- #include <unistd.h>
- #include <getopt.h>
- #include <errno.h>
-+#include <limits.h>
- /* blacklist devices that just map physical memory */
- char *blacklist[] = { "/dev/mem",
diff --git a/package/memtester/0001-makefile-fix.patch b/package/memtester/0001-makefile-fix.patch
new file mode 100644 (file)
index 0000000..6f1481b
--- /dev/null
@@ -0,0 +1,23 @@
+The a/{b,c} construct doesn't work within make, so let's split the
+creation of the installation directories in two commands.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ Makefile |    3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+Index: memtester-4.2.1/Makefile
+===================================================================
+--- memtester-4.2.1.orig/Makefile
++++ memtester-4.2.1/Makefile
+@@ -25,8 +25,9 @@
+ all: memtester
+ install: all
+-      mkdir -m 755 -p $(INSTALLPATH)/{bin,man/man8}
++      mkdir -m 755 -p $(INSTALLPATH)/bin
+       install -m 755 memtester $(INSTALLPATH)/bin/
++      mkdir -m 755 -p $(INSTALLPATH)/man/man8
+       gzip -c memtester.8 >memtester.8.gz ; install -m 644 memtester.8.gz $(INSTALLPATH)/man/man8/
+ auto-ccld.sh: \
diff --git a/package/memtester/memtester-makefile-fix.patch b/package/memtester/memtester-makefile-fix.patch
deleted file mode 100644 (file)
index 6f1481b..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-The a/{b,c} construct doesn't work within make, so let's split the
-creation of the installation directories in two commands.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
----
- Makefile |    3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-Index: memtester-4.2.1/Makefile
-===================================================================
---- memtester-4.2.1.orig/Makefile
-+++ memtester-4.2.1/Makefile
-@@ -25,8 +25,9 @@
- all: memtester
- install: all
--      mkdir -m 755 -p $(INSTALLPATH)/{bin,man/man8}
-+      mkdir -m 755 -p $(INSTALLPATH)/bin
-       install -m 755 memtester $(INSTALLPATH)/bin/
-+      mkdir -m 755 -p $(INSTALLPATH)/man/man8
-       gzip -c memtester.8 >memtester.8.gz ; install -m 644 memtester.8.gz $(INSTALLPATH)/man/man8/
- auto-ccld.sh: \
diff --git a/package/metacity/0001-add-libm-reference.patch b/package/metacity/0001-add-libm-reference.patch
new file mode 100644 (file)
index 0000000..6285017
--- /dev/null
@@ -0,0 +1,51 @@
+Upstream fix to link metacity itself against libm
+
+The upstream fix is modified to also include the changes on the
+configure script directly, so that autoreconfiguring is not
+needed. Autoreconfiguring cannot be done easily on metacity, due to
+missing AM_GCONF_SOURCE_2 and AM_NLS macros.
+
+http://git.gnome.org/browse/metacity/commit/configure.in?id=9cb0b6ff520ea69bdff6c328a21787202aee1bcc
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+From 9cb0b6ff520ea69bdff6c328a21787202aee1bcc Mon Sep 17 00:00:00 2001
+From: Götz Waschk <waschk@mandriva.org>
+Date: Wed, 22 Oct 2008 12:08:48 +0000
+Subject: add libm reference. Closes #557357.
+
+2008-10-22  Götz Waschk  <waschk@mandriva.org>
+
+        * configure.in: add libm reference.  Closes #557357.
+
+
+svn path=/trunk/; revision=3984
+---
+(limited to 'configure.in')
+
+Index: b/configure.in
+===================================================================
+--- a/configure.in
++++ b/configure.in
+@@ -413,7 +413,7 @@
+    AC_DEFINE(HAVE_XSYNC, , [Have the Xsync extension library])
+ fi
+-METACITY_LIBS="$METACITY_LIBS $XSYNC_LIBS $RANDR_LIBS $SHAPE_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
++METACITY_LIBS="$METACITY_LIBS $XSYNC_LIBS $RANDR_LIBS $SHAPE_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS -lm"
+ METACITY_MESSAGE_LIBS="$METACITY_MESSAGE_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
+ METACITY_WINDOW_DEMO_LIBS="$METACITY_WINDOW_DEMO_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
+ METACITY_PROPS_LIBS="$METACITY_PROPS_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
+Index: b/configure
+===================================================================
+--- a/configure
++++ b/configure
+@@ -29509,7 +29509,7 @@
+ fi
+-METACITY_LIBS="$METACITY_LIBS $XSYNC_LIBS $RANDR_LIBS $SHAPE_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
++METACITY_LIBS="$METACITY_LIBS $XSYNC_LIBS $RANDR_LIBS $SHAPE_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS -lm"
+ METACITY_MESSAGE_LIBS="$METACITY_MESSAGE_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
+ METACITY_WINDOW_DEMO_LIBS="$METACITY_WINDOW_DEMO_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
+ METACITY_PROPS_LIBS="$METACITY_PROPS_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
diff --git a/package/metacity/0002-gconf.patch b/package/metacity/0002-gconf.patch
new file mode 100644 (file)
index 0000000..939ef7e
--- /dev/null
@@ -0,0 +1,30 @@
+[PATCH] fix build with --disable-gconf
+
+src/core/prefs.c still contain a call to gconf_client_set_bool() when
+built with --disable-gconf, breaking the build.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ src/core/prefs.c |    2 ++
+ 1 file changed, 2 insertions(+)
+
+Index: metacity-2.25.1/src/core/prefs.c
+===================================================================
+--- metacity-2.25.1.orig/src/core/prefs.c
++++ metacity-2.25.1/src/core/prefs.c
+@@ -2949,6 +2949,7 @@
+ void
+ meta_prefs_set_compositing_manager (gboolean whether)
+ {
++#if HAVE_GCONF
+   GError *err = NULL;
+   gconf_client_set_bool (default_client,
+@@ -2962,6 +2963,7 @@
+                     err->message);
+       g_error_free (err);
+     }
++#endif
+ }
+ #ifndef HAVE_GCONF
diff --git a/package/metacity/0003-mag-add-libm-reference.patch b/package/metacity/0003-mag-add-libm-reference.patch
new file mode 100644 (file)
index 0000000..d47d807
--- /dev/null
@@ -0,0 +1,45 @@
+Upstream patch to fix link against libm
+
+The upstream patch is modified to also include the necessary
+Makefile.in, which avoids the need for autoreconfiguring the
+package. Autoreconfiguring the package unfortunately doesn't work, due
+to AM_GCONF_SOURCE_2 and AM_NLS macros being missing.
+
+http://git.gnome.org/browse/metacity/commit/src/tools/Makefile.am?id=13d0d52eb885598885b6ff4b73c795c8f29c2a6b
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+From 13d0d52eb885598885b6ff4b73c795c8f29c2a6b Mon Sep 17 00:00:00 2001
+From: Matthias Clasen <mclasen@redhat.com>
+Date: Sun, 02 May 2010 14:50:42 +0000
+Subject: fails to link with pedantic linkers
+
+---
+(limited to 'src/tools/Makefile.am')
+
+Index: b/src/tools/Makefile.am
+===================================================================
+--- a/src/tools/Makefile.am
++++ b/src/tools/Makefile.am
+@@ -26,7 +26,7 @@
+ metacity_message_LDADD= @METACITY_MESSAGE_LIBS@
+ metacity_window_demo_LDADD= @METACITY_WINDOW_DEMO_LIBS@
+-metacity_mag_LDADD= @METACITY_WINDOW_DEMO_LIBS@
++metacity_mag_LDADD= @METACITY_WINDOW_DEMO_LIBS@ -lm
+ metacity_grayscale_LDADD = @METACITY_WINDOW_DEMO_LIBS@
+ EXTRA_DIST=$(icon_DATA)
+Index: b/src/tools/Makefile.in
+===================================================================
+--- a/src/tools/Makefile.in
++++ b/src/tools/Makefile.in
+@@ -281,7 +281,7 @@
+ metacity_message_LDADD = @METACITY_MESSAGE_LIBS@
+ metacity_window_demo_LDADD = @METACITY_WINDOW_DEMO_LIBS@
+-metacity_mag_LDADD = @METACITY_WINDOW_DEMO_LIBS@
++metacity_mag_LDADD = @METACITY_WINDOW_DEMO_LIBS@ -lm
+ metacity_grayscale_LDADD = @METACITY_WINDOW_DEMO_LIBS@
+ EXTRA_DIST = $(icon_DATA)
+ all: all-am
diff --git a/package/metacity/metacity-add-libm-reference.patch b/package/metacity/metacity-add-libm-reference.patch
deleted file mode 100644 (file)
index 6285017..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-Upstream fix to link metacity itself against libm
-
-The upstream fix is modified to also include the changes on the
-configure script directly, so that autoreconfiguring is not
-needed. Autoreconfiguring cannot be done easily on metacity, due to
-missing AM_GCONF_SOURCE_2 and AM_NLS macros.
-
-http://git.gnome.org/browse/metacity/commit/configure.in?id=9cb0b6ff520ea69bdff6c328a21787202aee1bcc
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-From 9cb0b6ff520ea69bdff6c328a21787202aee1bcc Mon Sep 17 00:00:00 2001
-From: Götz Waschk <waschk@mandriva.org>
-Date: Wed, 22 Oct 2008 12:08:48 +0000
-Subject: add libm reference. Closes #557357.
-
-2008-10-22  Götz Waschk  <waschk@mandriva.org>
-
-        * configure.in: add libm reference.  Closes #557357.
-
-
-svn path=/trunk/; revision=3984
----
-(limited to 'configure.in')
-
-Index: b/configure.in
-===================================================================
---- a/configure.in
-+++ b/configure.in
-@@ -413,7 +413,7 @@
-    AC_DEFINE(HAVE_XSYNC, , [Have the Xsync extension library])
- fi
--METACITY_LIBS="$METACITY_LIBS $XSYNC_LIBS $RANDR_LIBS $SHAPE_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
-+METACITY_LIBS="$METACITY_LIBS $XSYNC_LIBS $RANDR_LIBS $SHAPE_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS -lm"
- METACITY_MESSAGE_LIBS="$METACITY_MESSAGE_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
- METACITY_WINDOW_DEMO_LIBS="$METACITY_WINDOW_DEMO_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
- METACITY_PROPS_LIBS="$METACITY_PROPS_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
-Index: b/configure
-===================================================================
---- a/configure
-+++ b/configure
-@@ -29509,7 +29509,7 @@
- fi
--METACITY_LIBS="$METACITY_LIBS $XSYNC_LIBS $RANDR_LIBS $SHAPE_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
-+METACITY_LIBS="$METACITY_LIBS $XSYNC_LIBS $RANDR_LIBS $SHAPE_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS -lm"
- METACITY_MESSAGE_LIBS="$METACITY_MESSAGE_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
- METACITY_WINDOW_DEMO_LIBS="$METACITY_WINDOW_DEMO_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
- METACITY_PROPS_LIBS="$METACITY_PROPS_LIBS $X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS"
diff --git a/package/metacity/metacity-gconf.patch b/package/metacity/metacity-gconf.patch
deleted file mode 100644 (file)
index 939ef7e..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-[PATCH] fix build with --disable-gconf
-
-src/core/prefs.c still contain a call to gconf_client_set_bool() when
-built with --disable-gconf, breaking the build.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- src/core/prefs.c |    2 ++
- 1 file changed, 2 insertions(+)
-
-Index: metacity-2.25.1/src/core/prefs.c
-===================================================================
---- metacity-2.25.1.orig/src/core/prefs.c
-+++ metacity-2.25.1/src/core/prefs.c
-@@ -2949,6 +2949,7 @@
- void
- meta_prefs_set_compositing_manager (gboolean whether)
- {
-+#if HAVE_GCONF
-   GError *err = NULL;
-   gconf_client_set_bool (default_client,
-@@ -2962,6 +2963,7 @@
-                     err->message);
-       g_error_free (err);
-     }
-+#endif
- }
- #ifndef HAVE_GCONF
diff --git a/package/metacity/metacity-mag-add-libm-reference.patch b/package/metacity/metacity-mag-add-libm-reference.patch
deleted file mode 100644 (file)
index d47d807..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-Upstream patch to fix link against libm
-
-The upstream patch is modified to also include the necessary
-Makefile.in, which avoids the need for autoreconfiguring the
-package. Autoreconfiguring the package unfortunately doesn't work, due
-to AM_GCONF_SOURCE_2 and AM_NLS macros being missing.
-
-http://git.gnome.org/browse/metacity/commit/src/tools/Makefile.am?id=13d0d52eb885598885b6ff4b73c795c8f29c2a6b
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-From 13d0d52eb885598885b6ff4b73c795c8f29c2a6b Mon Sep 17 00:00:00 2001
-From: Matthias Clasen <mclasen@redhat.com>
-Date: Sun, 02 May 2010 14:50:42 +0000
-Subject: fails to link with pedantic linkers
-
----
-(limited to 'src/tools/Makefile.am')
-
-Index: b/src/tools/Makefile.am
-===================================================================
---- a/src/tools/Makefile.am
-+++ b/src/tools/Makefile.am
-@@ -26,7 +26,7 @@
- metacity_message_LDADD= @METACITY_MESSAGE_LIBS@
- metacity_window_demo_LDADD= @METACITY_WINDOW_DEMO_LIBS@
--metacity_mag_LDADD= @METACITY_WINDOW_DEMO_LIBS@
-+metacity_mag_LDADD= @METACITY_WINDOW_DEMO_LIBS@ -lm
- metacity_grayscale_LDADD = @METACITY_WINDOW_DEMO_LIBS@
- EXTRA_DIST=$(icon_DATA)
-Index: b/src/tools/Makefile.in
-===================================================================
---- a/src/tools/Makefile.in
-+++ b/src/tools/Makefile.in
-@@ -281,7 +281,7 @@
- metacity_message_LDADD = @METACITY_MESSAGE_LIBS@
- metacity_window_demo_LDADD = @METACITY_WINDOW_DEMO_LIBS@
--metacity_mag_LDADD = @METACITY_WINDOW_DEMO_LIBS@
-+metacity_mag_LDADD = @METACITY_WINDOW_DEMO_LIBS@ -lm
- metacity_grayscale_LDADD = @METACITY_WINDOW_DEMO_LIBS@
- EXTRA_DIST = $(icon_DATA)
- all: all-am
diff --git a/package/mii-diag/0001-strchr.patch b/package/mii-diag/0001-strchr.patch
new file mode 100644 (file)
index 0000000..fcfeb3c
--- /dev/null
@@ -0,0 +1,23 @@
+Use the strrchr() function instead of the deprecated rindex()
+function.
+
+--- mii-diag-2.11.orig/mii-diag.c.orig 2008-06-25 11:08:52.000000000 +1000
++++ mii-diag-2.11.orig/mii-diag.c      2005-03-27 03:56:33.000000000 +1000
+@@ -174,7 +174,7 @@
+ {
+       int c, errflag = 0;
+       char **spp, *ifname;
+-    char *progname = rindex(argv[0], '/') ? rindex(argv[0], '/')+1 : argv[0];
++    char *progname = strrchr(argv[0], '/') ? strrchr(argv[0], '/')+1 : argv[0];
+       while ((c = getopt_long(argc, argv, shortopts, longopts, 0)) != EOF)
+               switch (c) {
+@@ -310,7 +310,7 @@
+                                       str = endstr+1;
+                               else {
+                                       fprintf(stderr, "Invalid driver parameter '%s'.\n", str);
+-                                      str = index(str, ',');
++                                      str = strchr(str, ',');
+                               }
+                       } else if (endstr[0] == ',') {
+                               data32[i] = newval;
diff --git a/package/mii-diag/mii-diag-strchr.patch b/package/mii-diag/mii-diag-strchr.patch
deleted file mode 100644 (file)
index fcfeb3c..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-Use the strrchr() function instead of the deprecated rindex()
-function.
-
---- mii-diag-2.11.orig/mii-diag.c.orig 2008-06-25 11:08:52.000000000 +1000
-+++ mii-diag-2.11.orig/mii-diag.c      2005-03-27 03:56:33.000000000 +1000
-@@ -174,7 +174,7 @@
- {
-       int c, errflag = 0;
-       char **spp, *ifname;
--    char *progname = rindex(argv[0], '/') ? rindex(argv[0], '/')+1 : argv[0];
-+    char *progname = strrchr(argv[0], '/') ? strrchr(argv[0], '/')+1 : argv[0];
-       while ((c = getopt_long(argc, argv, shortopts, longopts, 0)) != EOF)
-               switch (c) {
-@@ -310,7 +310,7 @@
-                                       str = endstr+1;
-                               else {
-                                       fprintf(stderr, "Invalid driver parameter '%s'.\n", str);
--                                      str = index(str, ',');
-+                                      str = strchr(str, ',');
-                               }
-                       } else if (endstr[0] == ',') {
-                               data32[i] = newval;
diff --git a/package/mmc-utils/0001-fix-mmc-h-includes.patch b/package/mmc-utils/0001-fix-mmc-h-includes.patch
new file mode 100644 (file)
index 0000000..8d0b2eb
--- /dev/null
@@ -0,0 +1,41 @@
+mmc-utils: fix mmc.h includes
+
+Some toolchains include asm-generic/int-l64.h from their asm/types.h
+file for certain 64-bit architectures. This causes a conflict between
+types like this one:
+
+asm-generic/int-l64.h:28:25: error: conflicting types for '__s64'
+ typedef __signed__ long __s64;
+            ^
+In file included from mmc.h:17:0,
+        from mmc_cmds.c:30:
+asm-generic/int-ll64.h:29:44: note: previous declaration of '__s64' was
+here
+ __extension__ typedef __signed__ long long __s64;
+
+[Ryan: added include of linux/types.h because mmc/ioctl.h does not
+       include it in kernel version before 3.4]
+
+Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
+Signed-off-by: Ryan Barnett <rjbarnet@rockwellcollins.com>
+---
+ mmc.h |    4 +++-
+ 1 files changed, 3 insertions(+), 1 deletions(-)
+diff --git a/mmc.h b/mmc.h
+index 9871d62..2d54ec5 100644
+--- a/mmc.h
++++ b/mmc.h
+@@ -14,9 +14,12 @@
+  * Boston, MA 021110-1307, USA.
+  */
+
+-#include <asm-generic/int-ll64.h>
++#include <linux/types.h>
+ #include <linux/mmc/ioctl.h>
+ #include <stdio.h>
++#ifndef _ASM_GENERIC_INT_L64_H
++#include <asm-generic/int-ll64.h>
++#endif
+
+ #define CHECK(expr, msg, err_stmt) { if (expr) { fprintf(stderr, msg); err_stmt; } }
+
diff --git a/package/mmc-utils/mmc-utils-001-fix-mmc-h-includes.patch b/package/mmc-utils/mmc-utils-001-fix-mmc-h-includes.patch
deleted file mode 100644 (file)
index 8d0b2eb..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-mmc-utils: fix mmc.h includes
-
-Some toolchains include asm-generic/int-l64.h from their asm/types.h
-file for certain 64-bit architectures. This causes a conflict between
-types like this one:
-
-asm-generic/int-l64.h:28:25: error: conflicting types for '__s64'
- typedef __signed__ long __s64;
-            ^
-In file included from mmc.h:17:0,
-        from mmc_cmds.c:30:
-asm-generic/int-ll64.h:29:44: note: previous declaration of '__s64' was
-here
- __extension__ typedef __signed__ long long __s64;
-
-[Ryan: added include of linux/types.h because mmc/ioctl.h does not
-       include it in kernel version before 3.4]
-
-Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
-Signed-off-by: Ryan Barnett <rjbarnet@rockwellcollins.com>
----
- mmc.h |    4 +++-
- 1 files changed, 3 insertions(+), 1 deletions(-)
-diff --git a/mmc.h b/mmc.h
-index 9871d62..2d54ec5 100644
---- a/mmc.h
-+++ b/mmc.h
-@@ -14,9 +14,12 @@
-  * Boston, MA 021110-1307, USA.
-  */
-
--#include <asm-generic/int-ll64.h>
-+#include <linux/types.h>
- #include <linux/mmc/ioctl.h>
- #include <stdio.h>
-+#ifndef _ASM_GENERIC_INT_L64_H
-+#include <asm-generic/int-ll64.h>
-+#endif
-
- #define CHECK(expr, msg, err_stmt) { if (expr) { fprintf(stderr, msg); err_stmt; } }
-
diff --git a/package/mongrel2/0001-use-CC-variable-to-compile-procer.patch b/package/mongrel2/0001-use-CC-variable-to-compile-procer.patch
new file mode 100644 (file)
index 0000000..310177a
--- /dev/null
@@ -0,0 +1,28 @@
+From d30cf797af4828e49fd3c0f25841e669dec05ed5 Mon Sep 17 00:00:00 2001
+From: Lionel Orry <lionel.orry@gmail.com>
+Date: Wed, 27 Mar 2013 14:02:00 +0100
+Subject: [PATCH 3/4] use CC variable to compile procer.
+
+This fixes procer tool cross-compilation issues.
+
+Signed-off-by: Lionel Orry <lionel.orry@gmail.com>
+---
+ tools/procer/Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tools/procer/Makefile b/tools/procer/Makefile
+index d0d7de0..bb9aa31 100644
+--- a/tools/procer/Makefile
++++ b/tools/procer/Makefile
+@@ -8,7 +8,7 @@ all: procer
+ procer: ../../build/libm2.a ${OBJECTS}
+-      gcc $(OPTFLAGS) $(OPTLIBS) -o $@ ${OBJECTS} ../../build/libm2.a ${LIBS}
++      $(CC) $(OPTFLAGS) $(OPTLIBS) -o $@ ${OBJECTS} ../../build/libm2.a ${LIBS}
+ clean:
+       rm -f *.o procer
+-- 
+1.8.1.4
+
diff --git a/package/mongrel2/0002-Do-not-run-tests.patch b/package/mongrel2/0002-Do-not-run-tests.patch
new file mode 100644 (file)
index 0000000..557c27e
--- /dev/null
@@ -0,0 +1,43 @@
+From 3cbef2195533f357c8a80c2840108662461273b7 Mon Sep 17 00:00:00 2001
+From: Lionel Orry <lionel.orry@gmail.com>
+Date: Wed, 27 Mar 2013 14:48:19 +0100
+Subject: [PATCH 4/4] Do not run tests.
+
+This patch is specific to cross-compiled environments and avoids running
+the tests on the host. It is not meant to be applied upstream.
+
+Signed-off-by: Lionel Orry <lionel.orry@gmail.com>
+---
+ Makefile            | 2 +-
+ tools/m2sh/Makefile | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 7dc4089..ca72630 100644
+--- a/Makefile
++++ b/Makefile
+@@ -16,7 +16,7 @@ TEST_SRC=$(wildcard tests/*_tests.c)
+ TESTS=$(patsubst %.c,%,${TEST_SRC})
+ MAKEOPTS=OPTFLAGS="${NOEXTCFLAGS} ${OPTFLAGS}" OPTLIBS="${OPTLIBS}" LIBS="${LIBS}" DESTDIR="${DESTDIR}" PREFIX="${PREFIX}"
+-all: bin/mongrel2 tests m2sh procer
++all: bin/mongrel2 m2sh procer filters config_modules
+ dev: CFLAGS=-g -Wall -Isrc -Wall -Wextra $(OPTFLAGS) -D_FILE_OFFSET_BITS=64
+ dev: all
+diff --git a/tools/m2sh/Makefile b/tools/m2sh/Makefile
+index b50d8a0..334e4da 100644
+--- a/tools/m2sh/Makefile
++++ b/tools/m2sh/Makefile
+@@ -9,7 +9,7 @@ TESTS=$(patsubst %.c,%,${TEST_SRC})
+ LIB_SRC=$(filter-out src/m2sh.c,${SOURCES})
+ LIB_OBJ=$(filter-out src/m2sh.o,${OBJECTS})
+-all: ../lemon/lemon tests build/m2sh
++all: ../lemon/lemon build/m2sh
+ dev: CFLAGS=-g -Wall -Wextra -Isrc -I../../src $(OPTFLAGS)
+ dev: all
+-- 
+1.8.1.4
+
diff --git a/package/mongrel2/0003-Fix-Makefiles-for-cross-compilation.patch b/package/mongrel2/0003-Fix-Makefiles-for-cross-compilation.patch
new file mode 100644 (file)
index 0000000..730d8eb
--- /dev/null
@@ -0,0 +1,75 @@
+From 298356c44a7df2b34c4e307c531d2010e2cb4b79 Mon Sep 17 00:00:00 2001
+From: Lionel Orry <lionel.orry@gmail.com>
+Date: Wed, 27 Mar 2013 15:56:56 +0100
+Subject: [PATCH 1/1] Fix Makefiles for cross-compilation
+
+The CFLAGS handling in mongrel2 is really messy and it is hard to make
+it behave correctly with cross-compiling environments. This patch
+restricts the Makefiles syntax to GNU Make, but help cross-compiling.
+
+This is not meant to be applied upstream.
+
+Signed-off-by: Lionel Orry <lionel.orry@gmail.com>
+---
+ Makefile                      | 2 +-
+ tools/config_modules/Makefile | 2 +-
+ tools/filters/Makefile        | 2 +-
+ tools/m2sh/Makefile           | 2 +-
+ tools/procer/Makefile         | 2 +-
+ 5 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 6dce4a6..d48e05e 100644
+--- a/Makefile
++++ b/Makefile
+@@ -1,4 +1,4 @@
+-CFLAGS=-g -O2 -Wall -Wextra -Isrc -Isrc/polarssl/include -pthread -rdynamic -DNDEBUG $(OPTFLAGS) -D_FILE_OFFSET_BITS=64
++override CFLAGS += -g -O2 -Wall -Wextra -Isrc -Isrc/polarssl/include -pthread -rdynamic -DNDEBUG $(OPTFLAGS) -D_FILE_OFFSET_BITS=64
+ LIBS=-lzmq -ldl -lsqlite3 $(OPTLIBS)
+ PREFIX?=/usr/local
+diff --git a/tools/config_modules/Makefile b/tools/config_modules/Makefile
+index 398490c..53f2255 100644
+--- a/tools/config_modules/Makefile
++++ b/tools/config_modules/Makefile
+@@ -1,5 +1,5 @@
+ PREFIX?=/usr/local
+-CFLAGS=-I../../src -I../../src/polarssl/include $(OPTFLAGS) -fPIC -shared -nostartfiles -L../../build
++override CFLAGS += -I../../src -I../../src/polarssl/include $(OPTFLAGS) -fPIC -shared -nostartfiles -L../../build
+ LDFLAGS=$(OPTLIBS)
+ MONGO_SRC = mongo-c-driver/src/bson.c \
+diff --git a/tools/filters/Makefile b/tools/filters/Makefile
+index f9f4556..6077b79 100644
+--- a/tools/filters/Makefile
++++ b/tools/filters/Makefile
+@@ -1,5 +1,5 @@
+ PREFIX?=/usr/local
+-CFLAGS=-I../../src -I../../src/polarssl/include $(OPTFLAGS) -g -fPIC -shared -nostartfiles -L../../build
++ override CFLAGS += -I../../src -I../../src/polarssl/include $(OPTFLAGS) -g -fPIC -shared -nostartfiles -L../../build
+ LDFLAGS=$(OPTLIBS)
+ all: null.so
+diff --git a/tools/m2sh/Makefile b/tools/m2sh/Makefile
+index b50d8a0..ba378c5 100644
+--- a/tools/m2sh/Makefile
++++ b/tools/m2sh/Makefile
+@@ -1,4 +1,4 @@
+-CFLAGS=-DNDEBUG -DNO_LINENOS -pthread -g -I../../src -Isrc -Wall $(OPTFLAGS)
++override CFLAGS += -DNDEBUG -DNO_LINENOS -pthread -g -I../../src -Isrc -Wall $(OPTFLAGS)
+ LIBS=-lzmq -lsqlite3 ../../build/libm2.a $(OPTLIBS)
+ PREFIX?=/usr/local
+diff --git a/tools/procer/Makefile b/tools/procer/Makefile
+index d0d7de0..629b2e9 100644
+--- a/tools/procer/Makefile
++++ b/tools/procer/Makefile
+@@ -1,4 +1,4 @@
+-CFLAGS=-DNDEBUG -pthread -g -I../../src -Wall $(OPTFLAGS)
++override CFLAGS += -DNDEBUG -pthread -g -I../../src -Wall $(OPTFLAGS)
+ PREFIX?=/usr/local
+ LIBS?=-lzmq 
+ SOURCES=$(wildcard *.c)
+-- 
+1.8.1.4
+
diff --git a/package/mongrel2/mongrel2-0001-use-CC-variable-to-compile-procer.patch b/package/mongrel2/mongrel2-0001-use-CC-variable-to-compile-procer.patch
deleted file mode 100644 (file)
index 310177a..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-From d30cf797af4828e49fd3c0f25841e669dec05ed5 Mon Sep 17 00:00:00 2001
-From: Lionel Orry <lionel.orry@gmail.com>
-Date: Wed, 27 Mar 2013 14:02:00 +0100
-Subject: [PATCH 3/4] use CC variable to compile procer.
-
-This fixes procer tool cross-compilation issues.
-
-Signed-off-by: Lionel Orry <lionel.orry@gmail.com>
----
- tools/procer/Makefile | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/tools/procer/Makefile b/tools/procer/Makefile
-index d0d7de0..bb9aa31 100644
---- a/tools/procer/Makefile
-+++ b/tools/procer/Makefile
-@@ -8,7 +8,7 @@ all: procer
- procer: ../../build/libm2.a ${OBJECTS}
--      gcc $(OPTFLAGS) $(OPTLIBS) -o $@ ${OBJECTS} ../../build/libm2.a ${LIBS}
-+      $(CC) $(OPTFLAGS) $(OPTLIBS) -o $@ ${OBJECTS} ../../build/libm2.a ${LIBS}
- clean:
-       rm -f *.o procer
--- 
-1.8.1.4
-
diff --git a/package/mongrel2/mongrel2-0002-Do-not-run-tests.patch b/package/mongrel2/mongrel2-0002-Do-not-run-tests.patch
deleted file mode 100644 (file)
index 557c27e..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-From 3cbef2195533f357c8a80c2840108662461273b7 Mon Sep 17 00:00:00 2001
-From: Lionel Orry <lionel.orry@gmail.com>
-Date: Wed, 27 Mar 2013 14:48:19 +0100
-Subject: [PATCH 4/4] Do not run tests.
-
-This patch is specific to cross-compiled environments and avoids running
-the tests on the host. It is not meant to be applied upstream.
-
-Signed-off-by: Lionel Orry <lionel.orry@gmail.com>
----
- Makefile            | 2 +-
- tools/m2sh/Makefile | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index 7dc4089..ca72630 100644
---- a/Makefile
-+++ b/Makefile
-@@ -16,7 +16,7 @@ TEST_SRC=$(wildcard tests/*_tests.c)
- TESTS=$(patsubst %.c,%,${TEST_SRC})
- MAKEOPTS=OPTFLAGS="${NOEXTCFLAGS} ${OPTFLAGS}" OPTLIBS="${OPTLIBS}" LIBS="${LIBS}" DESTDIR="${DESTDIR}" PREFIX="${PREFIX}"
--all: bin/mongrel2 tests m2sh procer
-+all: bin/mongrel2 m2sh procer filters config_modules
- dev: CFLAGS=-g -Wall -Isrc -Wall -Wextra $(OPTFLAGS) -D_FILE_OFFSET_BITS=64
- dev: all
-diff --git a/tools/m2sh/Makefile b/tools/m2sh/Makefile
-index b50d8a0..334e4da 100644
---- a/tools/m2sh/Makefile
-+++ b/tools/m2sh/Makefile
-@@ -9,7 +9,7 @@ TESTS=$(patsubst %.c,%,${TEST_SRC})
- LIB_SRC=$(filter-out src/m2sh.c,${SOURCES})
- LIB_OBJ=$(filter-out src/m2sh.o,${OBJECTS})
--all: ../lemon/lemon tests build/m2sh
-+all: ../lemon/lemon build/m2sh
- dev: CFLAGS=-g -Wall -Wextra -Isrc -I../../src $(OPTFLAGS)
- dev: all
--- 
-1.8.1.4
-
diff --git a/package/mongrel2/mongrel2-0003-Fix-Makefiles-for-cross-compilation.patch b/package/mongrel2/mongrel2-0003-Fix-Makefiles-for-cross-compilation.patch
deleted file mode 100644 (file)
index 730d8eb..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-From 298356c44a7df2b34c4e307c531d2010e2cb4b79 Mon Sep 17 00:00:00 2001
-From: Lionel Orry <lionel.orry@gmail.com>
-Date: Wed, 27 Mar 2013 15:56:56 +0100
-Subject: [PATCH 1/1] Fix Makefiles for cross-compilation
-
-The CFLAGS handling in mongrel2 is really messy and it is hard to make
-it behave correctly with cross-compiling environments. This patch
-restricts the Makefiles syntax to GNU Make, but help cross-compiling.
-
-This is not meant to be applied upstream.
-
-Signed-off-by: Lionel Orry <lionel.orry@gmail.com>
----
- Makefile                      | 2 +-
- tools/config_modules/Makefile | 2 +-
- tools/filters/Makefile        | 2 +-
- tools/m2sh/Makefile           | 2 +-
- tools/procer/Makefile         | 2 +-
- 5 files changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index 6dce4a6..d48e05e 100644
---- a/Makefile
-+++ b/Makefile
-@@ -1,4 +1,4 @@
--CFLAGS=-g -O2 -Wall -Wextra -Isrc -Isrc/polarssl/include -pthread -rdynamic -DNDEBUG $(OPTFLAGS) -D_FILE_OFFSET_BITS=64
-+override CFLAGS += -g -O2 -Wall -Wextra -Isrc -Isrc/polarssl/include -pthread -rdynamic -DNDEBUG $(OPTFLAGS) -D_FILE_OFFSET_BITS=64
- LIBS=-lzmq -ldl -lsqlite3 $(OPTLIBS)
- PREFIX?=/usr/local
-diff --git a/tools/config_modules/Makefile b/tools/config_modules/Makefile
-index 398490c..53f2255 100644
---- a/tools/config_modules/Makefile
-+++ b/tools/config_modules/Makefile
-@@ -1,5 +1,5 @@
- PREFIX?=/usr/local
--CFLAGS=-I../../src -I../../src/polarssl/include $(OPTFLAGS) -fPIC -shared -nostartfiles -L../../build
-+override CFLAGS += -I../../src -I../../src/polarssl/include $(OPTFLAGS) -fPIC -shared -nostartfiles -L../../build
- LDFLAGS=$(OPTLIBS)
- MONGO_SRC = mongo-c-driver/src/bson.c \
-diff --git a/tools/filters/Makefile b/tools/filters/Makefile
-index f9f4556..6077b79 100644
---- a/tools/filters/Makefile
-+++ b/tools/filters/Makefile
-@@ -1,5 +1,5 @@
- PREFIX?=/usr/local
--CFLAGS=-I../../src -I../../src/polarssl/include $(OPTFLAGS) -g -fPIC -shared -nostartfiles -L../../build
-+ override CFLAGS += -I../../src -I../../src/polarssl/include $(OPTFLAGS) -g -fPIC -shared -nostartfiles -L../../build
- LDFLAGS=$(OPTLIBS)
- all: null.so
-diff --git a/tools/m2sh/Makefile b/tools/m2sh/Makefile
-index b50d8a0..ba378c5 100644
---- a/tools/m2sh/Makefile
-+++ b/tools/m2sh/Makefile
-@@ -1,4 +1,4 @@
--CFLAGS=-DNDEBUG -DNO_LINENOS -pthread -g -I../../src -Isrc -Wall $(OPTFLAGS)
-+override CFLAGS += -DNDEBUG -DNO_LINENOS -pthread -g -I../../src -Isrc -Wall $(OPTFLAGS)
- LIBS=-lzmq -lsqlite3 ../../build/libm2.a $(OPTLIBS)
- PREFIX?=/usr/local
-diff --git a/tools/procer/Makefile b/tools/procer/Makefile
-index d0d7de0..629b2e9 100644
---- a/tools/procer/Makefile
-+++ b/tools/procer/Makefile
-@@ -1,4 +1,4 @@
--CFLAGS=-DNDEBUG -pthread -g -I../../src -Wall $(OPTFLAGS)
-+override CFLAGS += -DNDEBUG -pthread -g -I../../src -Wall $(OPTFLAGS)
- PREFIX?=/usr/local
- LIBS?=-lzmq 
- SOURCES=$(wildcard *.c)
--- 
-1.8.1.4
-
diff --git a/package/monit/0001-no-force-static.patch b/package/monit/0001-no-force-static.patch
new file mode 100644 (file)
index 0000000..edb619b
--- /dev/null
@@ -0,0 +1,20 @@
+Do not force building a statically-linked binary
+
+Statically-linked binary do not work well with glibc, because it
+still dlopen()s the NSS libraries.
+
+Reported-by: Peter Kümmel <syntheticpp@gmx.net>
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+diff -durN monit-5.7.orig/Makefile.am monit-5.7/Makefile.am
+--- monit-5.7.orig/Makefile.am 2014-02-20 09:00:42.000000000 +0100
++++ monit-5.7/Makefile.am      2014-09-05 12:49:43.711104001 +0200
+@@ -85,7 +85,7 @@
+                 src/process/sysdep_@ARCH@.c
+  
+ monit_LDADD   = libmonit/libmonit.la
+-monit_LDFLAGS         = -static $(EXTLDFLAGS)
++monit_LDFLAGS         = $(EXTLDFLAGS)
+ man_MANS      = monit.1
diff --git a/package/monit/monit-0001-no-force-static.patch b/package/monit/monit-0001-no-force-static.patch
deleted file mode 100644 (file)
index edb619b..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-Do not force building a statically-linked binary
-
-Statically-linked binary do not work well with glibc, because it
-still dlopen()s the NSS libraries.
-
-Reported-by: Peter Kümmel <syntheticpp@gmx.net>
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
-
-diff -durN monit-5.7.orig/Makefile.am monit-5.7/Makefile.am
---- monit-5.7.orig/Makefile.am 2014-02-20 09:00:42.000000000 +0100
-+++ monit-5.7/Makefile.am      2014-09-05 12:49:43.711104001 +0200
-@@ -85,7 +85,7 @@
-                 src/process/sysdep_@ARCH@.c
-  
- monit_LDADD   = libmonit/libmonit.la
--monit_LDFLAGS         = -static $(EXTLDFLAGS)
-+monit_LDFLAGS         = $(EXTLDFLAGS)
- man_MANS      = monit.1
diff --git a/package/mono/0001-gc-fix-uclibc.patch b/package/mono/0001-gc-fix-uclibc.patch
new file mode 100644 (file)
index 0000000..62b52cd
--- /dev/null
@@ -0,0 +1,16 @@
+Disable backtrace on not supported uclibc.
+
+Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com>
+
+diff -purN mono-native-3.8.0.orig/libgc/include/gc.h mono-native-3.8.0/libgc/include/gc.h
+--- mono-native-3.8.0.orig/libgc/include/gc.h  2014-10-07 15:00:21.259466731 +0200
++++ mono-native-3.8.0/libgc/include/gc.h       2014-10-07 15:05:25.560975681 +0200
+@@ -500,7 +500,7 @@ GC_API GC_PTR GC_malloc_atomic_ignore_of
+ #ifdef __linux__
+ # include <features.h>
+ # if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1 || __GLIBC__ > 2) \
+-     && !defined(__ia64__)
++     && !defined(__ia64__) && !defined(__UCLIBC__)
+ #   ifndef GC_HAVE_BUILTIN_BACKTRACE
+ #     define GC_HAVE_BUILTIN_BACKTRACE
+ #   endif
diff --git a/package/mono/0002-support-uclibc-musl.patch b/package/mono/0002-support-uclibc-musl.patch
new file mode 100644 (file)
index 0000000..48a3493
--- /dev/null
@@ -0,0 +1,25 @@
+Adjust libc.so path depending on C library being used
+
+By default, on Linux systems, Mono assumes that the C library is
+libc.so.6. While this is true for glibc, it is not true for uClibc and
+Musl based systems. This patch adds support for such systems.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/configure.ac
+===================================================================
+--- a/configure.ac
++++ b/configure.ac
+@@ -2973,6 +2973,12 @@
+         SQLITE="libsqlite.so"
+         SQLITE3="libsqlite3.so"
+       ;;
++    *-*-*uclibc*)
++      LIBC="libc.so.0"
++      ;;
++    *-*-*musl*)
++      LIBC="libc.so"
++      ;;
+     *-*-*linux*)
+       AC_PATH_X
+       dlsearch_path=`(libtool --config ; echo eval echo \\$sys_lib_dlsearch_path_spec) | sh`
diff --git a/package/mono/mono-001-gc-fix-uclibc.patch b/package/mono/mono-001-gc-fix-uclibc.patch
deleted file mode 100644 (file)
index 62b52cd..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-Disable backtrace on not supported uclibc.
-
-Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com>
-
-diff -purN mono-native-3.8.0.orig/libgc/include/gc.h mono-native-3.8.0/libgc/include/gc.h
---- mono-native-3.8.0.orig/libgc/include/gc.h  2014-10-07 15:00:21.259466731 +0200
-+++ mono-native-3.8.0/libgc/include/gc.h       2014-10-07 15:05:25.560975681 +0200
-@@ -500,7 +500,7 @@ GC_API GC_PTR GC_malloc_atomic_ignore_of
- #ifdef __linux__
- # include <features.h>
- # if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1 || __GLIBC__ > 2) \
--     && !defined(__ia64__)
-+     && !defined(__ia64__) && !defined(__UCLIBC__)
- #   ifndef GC_HAVE_BUILTIN_BACKTRACE
- #     define GC_HAVE_BUILTIN_BACKTRACE
- #   endif
diff --git a/package/mono/mono-002-support-uclibc-musl.patch b/package/mono/mono-002-support-uclibc-musl.patch
deleted file mode 100644 (file)
index 48a3493..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-Adjust libc.so path depending on C library being used
-
-By default, on Linux systems, Mono assumes that the C library is
-libc.so.6. While this is true for glibc, it is not true for uClibc and
-Musl based systems. This patch adds support for such systems.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/configure.ac
-===================================================================
---- a/configure.ac
-+++ b/configure.ac
-@@ -2973,6 +2973,12 @@
-         SQLITE="libsqlite.so"
-         SQLITE3="libsqlite3.so"
-       ;;
-+    *-*-*uclibc*)
-+      LIBC="libc.so.0"
-+      ;;
-+    *-*-*musl*)
-+      LIBC="libc.so"
-+      ;;
-     *-*-*linux*)
-       AC_PATH_X
-       dlsearch_path=`(libtool --config ; echo eval echo \\$sys_lib_dlsearch_path_spec) | sh`
diff --git a/package/mplayer/0001-disable-install-strip.patch b/package/mplayer/0001-disable-install-strip.patch
new file mode 100644 (file)
index 0000000..644d292
--- /dev/null
@@ -0,0 +1,24 @@
+Disable stripping on installation
+
+Using the -s option of install does not work, as it uses the host
+strip instead of the cross strip. So, get rid of it, and let Buildroot
+handle the stripping.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ configure |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: mplayer-32710/configure
+===================================================================
+--- mplayer-32710.orig/configure
++++ mplayer-32710/configure
+@@ -2519,7 +2519,7 @@
+ # Checking for CFLAGS
+-_install_strip="-s"
++_install_strip=
+ if test "$_profile" != "" || test "$_debug" != "" ; then
+   CFLAGS="-O2 $_march $_mcpu $_pipe $_debug $_profile"
+   WARNFLAGS="-W -Wall"
diff --git a/package/mplayer/0002-fix-cc-parsing.patch b/package/mplayer/0002-fix-cc-parsing.patch
new file mode 100644 (file)
index 0000000..a3ba03f
--- /dev/null
@@ -0,0 +1,22 @@
+[PATCH] mplayer: fix --cc= parsing if the value contains equal signs (=)
+
+E.G. if -cc="$CROSS-gcc --sysroot=<SYSROOT>" is passed.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ configure |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: mplayer-32710/configure
+===================================================================
+--- mplayer-32710.orig/configure
++++ mplayer-32710/configure
+@@ -870,7 +870,7 @@
+     _target=$(echo $ac_option | cut -d '=' -f 2)
+     ;;
+   --cc=*)
+-    _cc=$(echo $ac_option | cut -d '=' -f 2)
++    _cc=$(echo $ac_option | cut -d '=' -f 2-)
+     ;;
+   --host-cc=*)
+     _host_cc=$(echo $ac_option | cut -d '=' -f 2)
diff --git a/package/mplayer/0003-mpdemux-live555-async-interface.patch b/package/mplayer/0003-mpdemux-live555-async-interface.patch
new file mode 100644 (file)
index 0000000..5a62a18
--- /dev/null
@@ -0,0 +1,126 @@
+From d3195ea13f4a9aae546ff996e53681349a1a3cdb Mon Sep 17 00:00:00 2001
+From: sherpya <sherpya@netfarm.it>
+Date: Fri, 14 Jun 2013 05:25:38 +0200
+Subject: [PATCH 25/27] mpdemux: live555 async interface
+
+From: https://raw.github.com/sherpya/mplayer-be/master/patches/mp/0025-mpdemux-live555-async-interface.patch
+
+Adjust live555 interface code for modern versions of live555.
+
+Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
+---
+ libmpdemux/demux_rtp.cpp | 51 ++++++++++++++++++++++++++++++++----------------
+ 2 files changed, 35 insertions(+), 22 deletions(-)
+
+diff --git a/libmpdemux/demux_rtp.cpp b/libmpdemux/demux_rtp.cpp
+index ad7a7f1..05d06e0 100644
+--- a/libmpdemux/demux_rtp.cpp
++++ b/libmpdemux/demux_rtp.cpp
+@@ -19,8 +19,6 @@
+  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+  */
+-#define RTSPCLIENT_SYNCHRONOUS_INTERFACE 1
+-
+ extern "C" {
+ // on MinGW, we must include windows.h before the things it conflicts
+ #ifdef __MINGW32__    // with.  they are each protected from
+@@ -94,15 +92,6 @@ struct RTPState {
+ extern "C" char* network_username;
+ extern "C" char* network_password;
+-static char* openURL_rtsp(RTSPClient* client, char const* url) {
+-  // If we were given a user name (and optional password), then use them:
+-  if (network_username != NULL) {
+-    char const* password = network_password == NULL ? "" : network_password;
+-    return client->describeWithPassword(url, network_username, password);
+-  } else {
+-    return client->describeURL(url);
+-  }
+-}
+ static char* openURL_sip(SIPClient* client, char const* url) {
+   // If we were given a user name (and optional password), then use them:
+@@ -118,6 +107,19 @@ static char* openURL_sip(SIPClient* client, char const* url) {
+ extern AVCodecContext *avcctx;
+ #endif
++static char fWatchVariableForSyncInterface;
++static char* fResultString;
++static int fResultCode;
++
++static void responseHandlerForSyncInterface(RTSPClient* rtspClient, int responseCode, char* responseString) {
++  // Set result values:
++  fResultCode = responseCode;
++  fResultString = responseString;
++
++  // Signal a break from the event loop (thereby returning from the blocking command):
++  fWatchVariableForSyncInterface = ~0;
++}
++
+ extern "C" int audio_id, video_id, dvdsub_id;
+ extern "C" demuxer_t* demux_open_rtp(demuxer_t* demuxer) {
+   Boolean success = False;
+@@ -146,13 +148,19 @@ extern "C" demuxer_t* demux_open_rtp(demuxer_t* demuxer) {
+         rtsp_transport_http = demuxer->stream->streaming_ctrl->url->port;
+         rtsp_transport_tcp = 1;
+       }
+-      rtspClient = RTSPClient::createNew(*env, verbose, "MPlayer", rtsp_transport_http);
++      rtspClient = RTSPClient::createNew(*env, url, verbose, "MPlayer", rtsp_transport_http);
+       if (rtspClient == NULL) {
+         fprintf(stderr, "Failed to create RTSP client: %s\n",
+                 env->getResultMsg());
+         break;
+       }
+-      sdpDescription = openURL_rtsp(rtspClient, url);
++      fWatchVariableForSyncInterface = 0;
++      rtspClient->sendDescribeCommand(responseHandlerForSyncInterface);
++      env->taskScheduler().doEventLoop(&fWatchVariableForSyncInterface);
++      if (fResultCode == 0)
++          sdpDescription = fResultString;
++      else
++          delete[] fResultString;
+       } else { // SIP
+       unsigned char desiredAudioType = 0; // PCMU (use 3 for GSM)
+       sipClient = SIPClient::createNew(*env, desiredAudioType, NULL,
+@@ -236,8 +244,12 @@ extern "C" demuxer_t* demux_open_rtp(demuxer_t* demuxer) {
+       if (rtspClient != NULL) {
+         // Issue a RTSP "SETUP" command on the chosen subsession:
+-        if (!rtspClient->setupMediaSubsession(*subsession, False,
+-                                              rtsp_transport_tcp)) break;
++        fWatchVariableForSyncInterface = 0;
++        rtspClient->sendSetupCommand(*subsession, responseHandlerForSyncInterface, False, rtsp_transport_tcp);
++        env->taskScheduler().doEventLoop(&fWatchVariableForSyncInterface);
++        delete[] fResultString;
++        if (fResultCode != 0) break;
++
+         if (!strcmp(subsession->mediumName(), "audio"))
+           audiofound = 1;
+         if (!strcmp(subsession->mediumName(), "video"))
+@@ -248,7 +260,11 @@ extern "C" demuxer_t* demux_open_rtp(demuxer_t* demuxer) {
+     if (rtspClient != NULL) {
+       // Issue a RTSP aggregate "PLAY" command on the whole session:
+-      if (!rtspClient->playMediaSession(*mediaSession)) break;
++      fWatchVariableForSyncInterface = 0;
++      rtspClient->sendPlayCommand(*mediaSession, responseHandlerForSyncInterface);
++      env->taskScheduler().doEventLoop(&fWatchVariableForSyncInterface);
++      delete[] fResultString;
++      if (fResultCode != 0) break;
+     } else if (sipClient != NULL) {
+       sipClient->sendACK(); // to start the stream flowing
+     }
+@@ -637,7 +653,8 @@ static void teardownRTSPorSIPSession(RTPState* rtpState) {
+   MediaSession* mediaSession = rtpState->mediaSession;
+   if (mediaSession == NULL) return;
+   if (rtpState->rtspClient != NULL) {
+-    rtpState->rtspClient->teardownMediaSession(*mediaSession);
++    fWatchVariableForSyncInterface = 0;
++    rtpState->rtspClient->sendTeardownCommand(*mediaSession, NULL);
+   } else if (rtpState->sipClient != NULL) {
+     rtpState->sipClient->sendBYE();
+   }
+-- 
+1.8.5.2
+
diff --git a/package/mplayer/0004-add-arc-support.patch b/package/mplayer/0004-add-arc-support.patch
new file mode 100644 (file)
index 0000000..c14ef23
--- /dev/null
@@ -0,0 +1,13 @@
+--- mplayer-1.1/configure      2013-12-03 00:32:10.815571460 -0800
++++ mplayer-1.1-arc/configure  2013-11-29 00:34:29.238297709 -0800
+@@ -2492,6 +2492,10 @@
+   generic)
+     arch='generic'
+     ;;
++  arc)
++    arch='arc'
++    iproc='arc'
++    ;;
+   *)
+     echo "The architecture of your CPU ($host_arch) is not supported by this configure script"
diff --git a/package/mplayer/mplayer-0001-disable-install-strip.patch b/package/mplayer/mplayer-0001-disable-install-strip.patch
deleted file mode 100644 (file)
index 644d292..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-Disable stripping on installation
-
-Using the -s option of install does not work, as it uses the host
-strip instead of the cross strip. So, get rid of it, and let Buildroot
-handle the stripping.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
----
- configure |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Index: mplayer-32710/configure
-===================================================================
---- mplayer-32710.orig/configure
-+++ mplayer-32710/configure
-@@ -2519,7 +2519,7 @@
- # Checking for CFLAGS
--_install_strip="-s"
-+_install_strip=
- if test "$_profile" != "" || test "$_debug" != "" ; then
-   CFLAGS="-O2 $_march $_mcpu $_pipe $_debug $_profile"
-   WARNFLAGS="-W -Wall"
diff --git a/package/mplayer/mplayer-0002-fix-cc-parsing.patch b/package/mplayer/mplayer-0002-fix-cc-parsing.patch
deleted file mode 100644 (file)
index a3ba03f..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-[PATCH] mplayer: fix --cc= parsing if the value contains equal signs (=)
-
-E.G. if -cc="$CROSS-gcc --sysroot=<SYSROOT>" is passed.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- configure |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Index: mplayer-32710/configure
-===================================================================
---- mplayer-32710.orig/configure
-+++ mplayer-32710/configure
-@@ -870,7 +870,7 @@
-     _target=$(echo $ac_option | cut -d '=' -f 2)
-     ;;
-   --cc=*)
--    _cc=$(echo $ac_option | cut -d '=' -f 2)
-+    _cc=$(echo $ac_option | cut -d '=' -f 2-)
-     ;;
-   --host-cc=*)
-     _host_cc=$(echo $ac_option | cut -d '=' -f 2)
diff --git a/package/mplayer/mplayer-0003-mpdemux-live555-async-interface.patch b/package/mplayer/mplayer-0003-mpdemux-live555-async-interface.patch
deleted file mode 100644 (file)
index 5a62a18..0000000
+++ /dev/null
@@ -1,126 +0,0 @@
-From d3195ea13f4a9aae546ff996e53681349a1a3cdb Mon Sep 17 00:00:00 2001
-From: sherpya <sherpya@netfarm.it>
-Date: Fri, 14 Jun 2013 05:25:38 +0200
-Subject: [PATCH 25/27] mpdemux: live555 async interface
-
-From: https://raw.github.com/sherpya/mplayer-be/master/patches/mp/0025-mpdemux-live555-async-interface.patch
-
-Adjust live555 interface code for modern versions of live555.
-
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- libmpdemux/demux_rtp.cpp | 51 ++++++++++++++++++++++++++++++++----------------
- 2 files changed, 35 insertions(+), 22 deletions(-)
-
-diff --git a/libmpdemux/demux_rtp.cpp b/libmpdemux/demux_rtp.cpp
-index ad7a7f1..05d06e0 100644
---- a/libmpdemux/demux_rtp.cpp
-+++ b/libmpdemux/demux_rtp.cpp
-@@ -19,8 +19,6 @@
-  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-  */
--#define RTSPCLIENT_SYNCHRONOUS_INTERFACE 1
--
- extern "C" {
- // on MinGW, we must include windows.h before the things it conflicts
- #ifdef __MINGW32__    // with.  they are each protected from
-@@ -94,15 +92,6 @@ struct RTPState {
- extern "C" char* network_username;
- extern "C" char* network_password;
--static char* openURL_rtsp(RTSPClient* client, char const* url) {
--  // If we were given a user name (and optional password), then use them:
--  if (network_username != NULL) {
--    char const* password = network_password == NULL ? "" : network_password;
--    return client->describeWithPassword(url, network_username, password);
--  } else {
--    return client->describeURL(url);
--  }
--}
- static char* openURL_sip(SIPClient* client, char const* url) {
-   // If we were given a user name (and optional password), then use them:
-@@ -118,6 +107,19 @@ static char* openURL_sip(SIPClient* client, char const* url) {
- extern AVCodecContext *avcctx;
- #endif
-+static char fWatchVariableForSyncInterface;
-+static char* fResultString;
-+static int fResultCode;
-+
-+static void responseHandlerForSyncInterface(RTSPClient* rtspClient, int responseCode, char* responseString) {
-+  // Set result values:
-+  fResultCode = responseCode;
-+  fResultString = responseString;
-+
-+  // Signal a break from the event loop (thereby returning from the blocking command):
-+  fWatchVariableForSyncInterface = ~0;
-+}
-+
- extern "C" int audio_id, video_id, dvdsub_id;
- extern "C" demuxer_t* demux_open_rtp(demuxer_t* demuxer) {
-   Boolean success = False;
-@@ -146,13 +148,19 @@ extern "C" demuxer_t* demux_open_rtp(demuxer_t* demuxer) {
-         rtsp_transport_http = demuxer->stream->streaming_ctrl->url->port;
-         rtsp_transport_tcp = 1;
-       }
--      rtspClient = RTSPClient::createNew(*env, verbose, "MPlayer", rtsp_transport_http);
-+      rtspClient = RTSPClient::createNew(*env, url, verbose, "MPlayer", rtsp_transport_http);
-       if (rtspClient == NULL) {
-         fprintf(stderr, "Failed to create RTSP client: %s\n",
-                 env->getResultMsg());
-         break;
-       }
--      sdpDescription = openURL_rtsp(rtspClient, url);
-+      fWatchVariableForSyncInterface = 0;
-+      rtspClient->sendDescribeCommand(responseHandlerForSyncInterface);
-+      env->taskScheduler().doEventLoop(&fWatchVariableForSyncInterface);
-+      if (fResultCode == 0)
-+          sdpDescription = fResultString;
-+      else
-+          delete[] fResultString;
-       } else { // SIP
-       unsigned char desiredAudioType = 0; // PCMU (use 3 for GSM)
-       sipClient = SIPClient::createNew(*env, desiredAudioType, NULL,
-@@ -236,8 +244,12 @@ extern "C" demuxer_t* demux_open_rtp(demuxer_t* demuxer) {
-       if (rtspClient != NULL) {
-         // Issue a RTSP "SETUP" command on the chosen subsession:
--        if (!rtspClient->setupMediaSubsession(*subsession, False,
--                                              rtsp_transport_tcp)) break;
-+        fWatchVariableForSyncInterface = 0;
-+        rtspClient->sendSetupCommand(*subsession, responseHandlerForSyncInterface, False, rtsp_transport_tcp);
-+        env->taskScheduler().doEventLoop(&fWatchVariableForSyncInterface);
-+        delete[] fResultString;
-+        if (fResultCode != 0) break;
-+
-         if (!strcmp(subsession->mediumName(), "audio"))
-           audiofound = 1;
-         if (!strcmp(subsession->mediumName(), "video"))
-@@ -248,7 +260,11 @@ extern "C" demuxer_t* demux_open_rtp(demuxer_t* demuxer) {
-     if (rtspClient != NULL) {
-       // Issue a RTSP aggregate "PLAY" command on the whole session:
--      if (!rtspClient->playMediaSession(*mediaSession)) break;
-+      fWatchVariableForSyncInterface = 0;
-+      rtspClient->sendPlayCommand(*mediaSession, responseHandlerForSyncInterface);
-+      env->taskScheduler().doEventLoop(&fWatchVariableForSyncInterface);
-+      delete[] fResultString;
-+      if (fResultCode != 0) break;
-     } else if (sipClient != NULL) {
-       sipClient->sendACK(); // to start the stream flowing
-     }
-@@ -637,7 +653,8 @@ static void teardownRTSPorSIPSession(RTPState* rtpState) {
-   MediaSession* mediaSession = rtpState->mediaSession;
-   if (mediaSession == NULL) return;
-   if (rtpState->rtspClient != NULL) {
--    rtpState->rtspClient->teardownMediaSession(*mediaSession);
-+    fWatchVariableForSyncInterface = 0;
-+    rtpState->rtspClient->sendTeardownCommand(*mediaSession, NULL);
-   } else if (rtpState->sipClient != NULL) {
-     rtpState->sipClient->sendBYE();
-   }
--- 
-1.8.5.2
-
diff --git a/package/mplayer/mplayer-0004-add-arc-support.patch b/package/mplayer/mplayer-0004-add-arc-support.patch
deleted file mode 100644 (file)
index c14ef23..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
---- mplayer-1.1/configure      2013-12-03 00:32:10.815571460 -0800
-+++ mplayer-1.1-arc/configure  2013-11-29 00:34:29.238297709 -0800
-@@ -2492,6 +2492,10 @@
-   generic)
-     arch='generic'
-     ;;
-+  arc)
-+    arch='arc'
-+    iproc='arc'
-+    ;;
-   *)
-     echo "The architecture of your CPU ($host_arch) is not supported by this configure script"
diff --git a/package/mtd/0001-Fix-rpmatch-call-under-uClibc.patch b/package/mtd/0001-Fix-rpmatch-call-under-uClibc.patch
new file mode 100644 (file)
index 0000000..910a501
--- /dev/null
@@ -0,0 +1,61 @@
+From aebb2831c13ffc6f1df79e638b99e78c52aed4ce Mon Sep 17 00:00:00 2001
+Message-Id: <aebb2831c13ffc6f1df79e638b99e78c52aed4ce.1397593673.git.baruch@tkos.co.il>
+From: Baruch Siach <baruch@tkos.co.il>
+Date: Sun, 13 Apr 2014 15:26:46 +0300
+Subject: [PATCH] Fix rpmatch() call under uClibc
+
+Combine the following two patches. The first is upstream (commit 50c9e11f7e),
+the second has been posted upstream at
+http://patchwork.ozlabs.org/patch/339365/.
+
+include/common.h: fix build against current uClibc
+
+Commit dbe0fd17f2 (mtd-utils: new prompt() helper for talking to the user)
+introduced a rpmatch() call. However, uClibc versions older than (not yet
+released) 0.9.34 don't have rpmatch() implementation. Add one.
+
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
+Acked-by: Mike Frysinger <vapier@gentoo.org>
+
+include/common.h: fix build against recent 0.9.33 uClibc
+
+An implementation of rpmatch() was backported to the 0.9.33 branch of uClibc.
+So the uClibc version check introduced in commit 50c9e11f7e (include/common.h:
+fix build against current uClibc) is not enough. Rename the local rpmatch()
+implementation to avoid collision.
+
+Cc: Mike Frysinger <vapier@gentoo.org>
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+---
+ include/common.h | 14 ++++++++++++++
+ 1 file changed, 14 insertions(+)
+
+diff --git a/include/common.h b/include/common.h
+index 4ffccea17213..838dc757bdf1 100644
+--- a/include/common.h
++++ b/include/common.h
+@@ -102,6 +102,20 @@ extern "C" {
+       fprintf(stderr, "%s: warning!: " fmt "\n", PROGRAM_NAME, ##__VA_ARGS__); \
+ } while(0)
++#if defined(__UCLIBC__)
++/* uClibc versions before 0.9.34 don't have rpmatch() */
++#if __UCLIBC_MAJOR__ == 0 && \
++              (__UCLIBC_MINOR__ < 9 || \
++              (__UCLIBC_MINOR__ == 9 && __UCLIBC_SUBLEVEL__ < 34))
++#define rpmatch __rpmatch
++static inline int __rpmatch(const char *resp)
++{
++    return (resp[0] == 'y' || resp[0] == 'Y') ? 1 :
++      (resp[0] == 'n' || resp[0] == 'N') ? 0 : -1;
++}
++#endif
++#endif
++
+ /**
+  * prompt the user for confirmation
+  */
+-- 
+1.9.1
+
diff --git a/package/mtd/mtd-01-Fix-rpmatch-call-under-uClibc.patch b/package/mtd/mtd-01-Fix-rpmatch-call-under-uClibc.patch
deleted file mode 100644 (file)
index 910a501..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-From aebb2831c13ffc6f1df79e638b99e78c52aed4ce Mon Sep 17 00:00:00 2001
-Message-Id: <aebb2831c13ffc6f1df79e638b99e78c52aed4ce.1397593673.git.baruch@tkos.co.il>
-From: Baruch Siach <baruch@tkos.co.il>
-Date: Sun, 13 Apr 2014 15:26:46 +0300
-Subject: [PATCH] Fix rpmatch() call under uClibc
-
-Combine the following two patches. The first is upstream (commit 50c9e11f7e),
-the second has been posted upstream at
-http://patchwork.ozlabs.org/patch/339365/.
-
-include/common.h: fix build against current uClibc
-
-Commit dbe0fd17f2 (mtd-utils: new prompt() helper for talking to the user)
-introduced a rpmatch() call. However, uClibc versions older than (not yet
-released) 0.9.34 don't have rpmatch() implementation. Add one.
-
-Signed-off-by: Baruch Siach <baruch@tkos.co.il>
-Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
-Acked-by: Mike Frysinger <vapier@gentoo.org>
-
-include/common.h: fix build against recent 0.9.33 uClibc
-
-An implementation of rpmatch() was backported to the 0.9.33 branch of uClibc.
-So the uClibc version check introduced in commit 50c9e11f7e (include/common.h:
-fix build against current uClibc) is not enough. Rename the local rpmatch()
-implementation to avoid collision.
-
-Cc: Mike Frysinger <vapier@gentoo.org>
-Signed-off-by: Baruch Siach <baruch@tkos.co.il>
----
- include/common.h | 14 ++++++++++++++
- 1 file changed, 14 insertions(+)
-
-diff --git a/include/common.h b/include/common.h
-index 4ffccea17213..838dc757bdf1 100644
---- a/include/common.h
-+++ b/include/common.h
-@@ -102,6 +102,20 @@ extern "C" {
-       fprintf(stderr, "%s: warning!: " fmt "\n", PROGRAM_NAME, ##__VA_ARGS__); \
- } while(0)
-+#if defined(__UCLIBC__)
-+/* uClibc versions before 0.9.34 don't have rpmatch() */
-+#if __UCLIBC_MAJOR__ == 0 && \
-+              (__UCLIBC_MINOR__ < 9 || \
-+              (__UCLIBC_MINOR__ == 9 && __UCLIBC_SUBLEVEL__ < 34))
-+#define rpmatch __rpmatch
-+static inline int __rpmatch(const char *resp)
-+{
-+    return (resp[0] == 'y' || resp[0] == 'Y') ? 1 :
-+      (resp[0] == 'n' || resp[0] == 'N') ? 0 : -1;
-+}
-+#endif
-+#endif
-+
- /**
-  * prompt the user for confirmation
-  */
--- 
-1.9.1
-
diff --git a/package/musepack/0001-shared.patch b/package/musepack/0001-shared.patch
new file mode 100644 (file)
index 0000000..d8c788d
--- /dev/null
@@ -0,0 +1,24 @@
+Fixup installation of shared mpcdec library.
+Based on gentoo patch.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+---
+
+diff -Nura musepack_src_r475.orig/libmpcdec/CMakeLists.txt musepack_src_r475/libmpcdec/CMakeLists.txt
+--- musepack_src_r475.orig/libmpcdec/CMakeLists.txt    2010-08-21 12:55:01.000000000 -0300
++++ musepack_src_r475/libmpcdec/CMakeLists.txt 2011-08-17 15:53:06.126873408 -0300
+@@ -1,7 +1,12 @@
+ include_directories(${libmpc_SOURCE_DIR}/include)
+ if(SHARED)
+-  add_library(mpcdec SHARED huffman mpc_decoder mpc_reader streaminfo mpc_bits_reader mpc_demux requant synth_filter ${libmpc_SOURCE_DIR}/common/crc32)
++  add_library(mpcdec_shared SHARED huffman mpc_decoder mpc_reader streaminfo mpc_bits_reader mpc_demux requant synth_filter ${libmpc_SOURCE_DIR}/common/crc32)
++  set_target_properties(mpcdec_shared PROPERTIES OUTPUT_NAME mpcdec CLEAN_DIRECT_OUTPUT 1 VERSION 7.0.1 SOVERSION 7)
++  target_link_libraries(mpcdec_shared m)
++  install(TARGETS mpcdec_shared LIBRARY DESTINATION "lib${LIB_SUFFIX}" ARCHIVE DESTINATION "lib${LIB_SUFFIX}")
+ else(SHARED)
+   add_library(mpcdec_static STATIC huffman mpc_decoder mpc_reader streaminfo mpc_bits_reader mpc_demux requant synth_filter ${libmpc_SOURCE_DIR}/common/crc32)
++  set_target_properties(mpcdec_static PROPERTIES OUTPUT_NAME mpcdec CLEAN_DIRECT_OUTPUT 1)
++  target_link_libraries(mpcdec_static m)
++  install(TARGETS mpcdec_static LIBRARY DESTINATION "lib${LIB_SUFFIX}" ARCHIVE DESTINATION "lib${LIB_SUFFIX}")
+ endif(SHARED)
+-
diff --git a/package/musepack/0002-cmake-use-the-standard-CMake-flag-to-drive-the-share.patch b/package/musepack/0002-cmake-use-the-standard-CMake-flag-to-drive-the-share.patch
new file mode 100644 (file)
index 0000000..4bfeca0
--- /dev/null
@@ -0,0 +1,43 @@
+From d2f01ba6fa2a065156fad686d1849309c661e527 Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Sun, 31 Aug 2014 12:07:31 +0200
+Subject: [PATCH 2/2] cmake: use the standard CMake flag to drive the shared
+ object build
+
+If BUILD_SHARED_LIBS is set and SHARED undefined, then drive SHARED with
+the BUILD_SHARED_LIBS value.
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+---
+ CMakeLists.txt | 15 ++++++++++-----
+ 1 file changed, 10 insertions(+), 5 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index b13f78c..db75510 100755
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -7,11 +7,16 @@ project(libmpc C)
+ set(CMAKE_VERBOSE_MAKEFILE false)
+ TEST_BIG_ENDIAN(MPC_ENDIANNESS)
+-if(WIN32)
+-  option(SHARED "Use shared libmpcdec" OFF)
+-else(WIN32)
+-  option(SHARED "Use shared libmpcdec" ON)
+-endif(WIN32)
++# Use the standard CMake flag to drive the shared object build.
++if(DEFINED BUILD_SHARED_LIBS AND NOT DEFINED SHARED)
++  set(SHARED ${BUILD_SHARED_LIBS})
++else()
++  if(WIN32)
++    option(SHARED "Use shared libmpcdec" OFF)
++  else(WIN32)
++    option(SHARED "Use shared libmpcdec" ON)
++  endif(WIN32)
++endif()
+ add_definitions(-DFAST_MATH -DCVD_FASTLOG)
+-- 
+2.1.0
+
diff --git a/package/musepack/musepack-0001-shared.patch b/package/musepack/musepack-0001-shared.patch
deleted file mode 100644 (file)
index d8c788d..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-Fixup installation of shared mpcdec library.
-Based on gentoo patch.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
----
-
-diff -Nura musepack_src_r475.orig/libmpcdec/CMakeLists.txt musepack_src_r475/libmpcdec/CMakeLists.txt
---- musepack_src_r475.orig/libmpcdec/CMakeLists.txt    2010-08-21 12:55:01.000000000 -0300
-+++ musepack_src_r475/libmpcdec/CMakeLists.txt 2011-08-17 15:53:06.126873408 -0300
-@@ -1,7 +1,12 @@
- include_directories(${libmpc_SOURCE_DIR}/include)
- if(SHARED)
--  add_library(mpcdec SHARED huffman mpc_decoder mpc_reader streaminfo mpc_bits_reader mpc_demux requant synth_filter ${libmpc_SOURCE_DIR}/common/crc32)
-+  add_library(mpcdec_shared SHARED huffman mpc_decoder mpc_reader streaminfo mpc_bits_reader mpc_demux requant synth_filter ${libmpc_SOURCE_DIR}/common/crc32)
-+  set_target_properties(mpcdec_shared PROPERTIES OUTPUT_NAME mpcdec CLEAN_DIRECT_OUTPUT 1 VERSION 7.0.1 SOVERSION 7)
-+  target_link_libraries(mpcdec_shared m)
-+  install(TARGETS mpcdec_shared LIBRARY DESTINATION "lib${LIB_SUFFIX}" ARCHIVE DESTINATION "lib${LIB_SUFFIX}")
- else(SHARED)
-   add_library(mpcdec_static STATIC huffman mpc_decoder mpc_reader streaminfo mpc_bits_reader mpc_demux requant synth_filter ${libmpc_SOURCE_DIR}/common/crc32)
-+  set_target_properties(mpcdec_static PROPERTIES OUTPUT_NAME mpcdec CLEAN_DIRECT_OUTPUT 1)
-+  target_link_libraries(mpcdec_static m)
-+  install(TARGETS mpcdec_static LIBRARY DESTINATION "lib${LIB_SUFFIX}" ARCHIVE DESTINATION "lib${LIB_SUFFIX}")
- endif(SHARED)
--
diff --git a/package/musepack/musepack-0002-cmake-use-the-standard-CMake-flag-to-drive-the-share.patch b/package/musepack/musepack-0002-cmake-use-the-standard-CMake-flag-to-drive-the-share.patch
deleted file mode 100644 (file)
index 4bfeca0..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-From d2f01ba6fa2a065156fad686d1849309c661e527 Mon Sep 17 00:00:00 2001
-From: Samuel Martin <s.martin49@gmail.com>
-Date: Sun, 31 Aug 2014 12:07:31 +0200
-Subject: [PATCH 2/2] cmake: use the standard CMake flag to drive the shared
- object build
-
-If BUILD_SHARED_LIBS is set and SHARED undefined, then drive SHARED with
-the BUILD_SHARED_LIBS value.
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
----
- CMakeLists.txt | 15 ++++++++++-----
- 1 file changed, 10 insertions(+), 5 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index b13f78c..db75510 100755
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -7,11 +7,16 @@ project(libmpc C)
- set(CMAKE_VERBOSE_MAKEFILE false)
- TEST_BIG_ENDIAN(MPC_ENDIANNESS)
--if(WIN32)
--  option(SHARED "Use shared libmpcdec" OFF)
--else(WIN32)
--  option(SHARED "Use shared libmpcdec" ON)
--endif(WIN32)
-+# Use the standard CMake flag to drive the shared object build.
-+if(DEFINED BUILD_SHARED_LIBS AND NOT DEFINED SHARED)
-+  set(SHARED ${BUILD_SHARED_LIBS})
-+else()
-+  if(WIN32)
-+    option(SHARED "Use shared libmpcdec" OFF)
-+  else(WIN32)
-+    option(SHARED "Use shared libmpcdec" ON)
-+  endif(WIN32)
-+endif()
- add_definitions(-DFAST_MATH -DCVD_FASTLOG)
--- 
-2.1.0
-
diff --git a/package/mutt/0001-nodoc.patch b/package/mutt/0001-nodoc.patch
new file mode 100644 (file)
index 0000000..6fd556d
--- /dev/null
@@ -0,0 +1,21 @@
+Disable the documentation build
+
+The documentation tool is compiled for the target, but executed on the
+host. We don't bother fixing this, as we don't care of the
+documentation in Buildroot.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: mutt-1.5.17+20080114/Makefile.am
+===================================================================
+--- mutt-1.5.17+20080114.orig/Makefile.am      2010-05-15 18:15:08.000000000 +0200
++++ mutt-1.5.17+20080114/Makefile.am   2010-05-15 18:15:17.000000000 +0200
+@@ -9,7 +9,7 @@
+ IMAP_INCLUDES = -I$(top_srcdir)/imap
+ endif
+-SUBDIRS = m4 po intl doc contrib $(IMAP_SUBDIR)
++SUBDIRS = m4 po intl contrib $(IMAP_SUBDIR)
+ bin_SCRIPTS = muttbug flea @SMIMEAUX_TARGET@
diff --git a/package/mutt/mutt-01-nodoc.patch b/package/mutt/mutt-01-nodoc.patch
deleted file mode 100644 (file)
index 6fd556d..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-Disable the documentation build
-
-The documentation tool is compiled for the target, but executed on the
-host. We don't bother fixing this, as we don't care of the
-documentation in Buildroot.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: mutt-1.5.17+20080114/Makefile.am
-===================================================================
---- mutt-1.5.17+20080114.orig/Makefile.am      2010-05-15 18:15:08.000000000 +0200
-+++ mutt-1.5.17+20080114/Makefile.am   2010-05-15 18:15:17.000000000 +0200
-@@ -9,7 +9,7 @@
- IMAP_INCLUDES = -I$(top_srcdir)/imap
- endif
--SUBDIRS = m4 po intl doc contrib $(IMAP_SUBDIR)
-+SUBDIRS = m4 po intl contrib $(IMAP_SUBDIR)
- bin_SCRIPTS = muttbug flea @SMIMEAUX_TARGET@
diff --git a/package/mxml/0001-fix-cross-target-installation.patch b/package/mxml/0001-fix-cross-target-installation.patch
new file mode 100644 (file)
index 0000000..3a9fa0c
--- /dev/null
@@ -0,0 +1,55 @@
+From: Baruch Siach <baruch@tkos.co.il>
+Subject: [PATCH] mxml: workaround for cross build
+
+The added patch is a workaround for cross build as follows:
+
+       * disable run of a test binary at build time
+       * disable generation of documentation using the mxmldoc binary
+       * remove now non-existent entries from the install target
+       * disable strip when running install
+
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+---
+diff -Nuar mxml-2.7-orig/Makefile.in mxml-2.7/Makefile.in
+--- mxml-2.7-orig/Makefile.in  2011-04-13 18:43:32.000000000 +0300
++++ mxml-2.7/Makefile.in       2012-05-16 07:21:42.677220980 +0300
+@@ -57,7 +57,7 @@
+ # Install commands...
+ #
+-INSTALL_BIN   =       $(LIBTOOL) $(INSTALL) -m 755 -s
++INSTALL_BIN   =       $(LIBTOOL) $(INSTALL) -m 755
+ INSTALL_DATA  =       $(INSTALL) -m 644
+ INSTALL_DIR   =       $(INSTALL) -d
+ INSTALL_LIB   =       $(LIBTOOL) $(INSTALL) -m 755
+@@ -88,7 +88,7 @@
+                       mxml-index.o mxml-node.o mxml-search.o mxml-set.o
+ LIBOBJS               =       $(PUBLIBOBJS) mxml-private.o mxml-string.o
+ OBJS          =       mxmldoc.o testmxml.o $(LIBOBJS)
+-TARGETS               =       $(LIBMXML) mxmldoc testmxml mxml.xml doc/mxml.man
++TARGETS               =       $(LIBMXML) libmxml.a
+ #
+@@ -140,9 +140,6 @@
+ #
+ install:      $(TARGETS) install-$(LIBMXML) install-libmxml.a
+-      echo Installing mxmldoc in $(BUILDROOT)$(bindir)...
+-      $(INSTALL_DIR) $(BUILDROOT)$(bindir)
+-      $(INSTALL_BIN) mxmldoc $(BUILDROOT)$(bindir)
+       echo Installing documentation in $(BUILDROOT)$(docdir)...
+       $(INSTALL_DIR) $(BUILDROOT)$(docdir)
+       for file in $(DOCFILES); do \
+@@ -154,11 +151,6 @@
+       echo Installing pkgconfig files in $(BUILDROOT)$(libdir)/pkgconfig...
+       $(INSTALL_DIR) $(BUILDROOT)$(libdir)/pkgconfig
+       $(INSTALL_DATA) mxml.pc $(BUILDROOT)$(libdir)/pkgconfig
+-      echo Installing man pages in $(BUILDROOT)$(mandir)...
+-      $(INSTALL_DIR) $(BUILDROOT)$(mandir)/man1
+-      $(INSTALL_MAN) doc/mxmldoc.man $(BUILDROOT)$(mandir)/man1/mxmldoc.1
+-      $(INSTALL_DIR) $(BUILDROOT)$(mandir)/man3
+-      $(INSTALL_MAN) doc/mxml.man $(BUILDROOT)$(mandir)/man3/mxml.3
+ install-libmxml.a:
+       echo Installing libmxml.a to $(BUILDROOT)$(libdir)...
diff --git a/package/mxml/mxml-fix-cross-target-installation.patch b/package/mxml/mxml-fix-cross-target-installation.patch
deleted file mode 100644 (file)
index 3a9fa0c..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-From: Baruch Siach <baruch@tkos.co.il>
-Subject: [PATCH] mxml: workaround for cross build
-
-The added patch is a workaround for cross build as follows:
-
-       * disable run of a test binary at build time
-       * disable generation of documentation using the mxmldoc binary
-       * remove now non-existent entries from the install target
-       * disable strip when running install
-
-Signed-off-by: Baruch Siach <baruch@tkos.co.il>
----
-diff -Nuar mxml-2.7-orig/Makefile.in mxml-2.7/Makefile.in
---- mxml-2.7-orig/Makefile.in  2011-04-13 18:43:32.000000000 +0300
-+++ mxml-2.7/Makefile.in       2012-05-16 07:21:42.677220980 +0300
-@@ -57,7 +57,7 @@
- # Install commands...
- #
--INSTALL_BIN   =       $(LIBTOOL) $(INSTALL) -m 755 -s
-+INSTALL_BIN   =       $(LIBTOOL) $(INSTALL) -m 755
- INSTALL_DATA  =       $(INSTALL) -m 644
- INSTALL_DIR   =       $(INSTALL) -d
- INSTALL_LIB   =       $(LIBTOOL) $(INSTALL) -m 755
-@@ -88,7 +88,7 @@
-                       mxml-index.o mxml-node.o mxml-search.o mxml-set.o
- LIBOBJS               =       $(PUBLIBOBJS) mxml-private.o mxml-string.o
- OBJS          =       mxmldoc.o testmxml.o $(LIBOBJS)
--TARGETS               =       $(LIBMXML) mxmldoc testmxml mxml.xml doc/mxml.man
-+TARGETS               =       $(LIBMXML) libmxml.a
- #
-@@ -140,9 +140,6 @@
- #
- install:      $(TARGETS) install-$(LIBMXML) install-libmxml.a
--      echo Installing mxmldoc in $(BUILDROOT)$(bindir)...
--      $(INSTALL_DIR) $(BUILDROOT)$(bindir)
--      $(INSTALL_BIN) mxmldoc $(BUILDROOT)$(bindir)
-       echo Installing documentation in $(BUILDROOT)$(docdir)...
-       $(INSTALL_DIR) $(BUILDROOT)$(docdir)
-       for file in $(DOCFILES); do \
-@@ -154,11 +151,6 @@
-       echo Installing pkgconfig files in $(BUILDROOT)$(libdir)/pkgconfig...
-       $(INSTALL_DIR) $(BUILDROOT)$(libdir)/pkgconfig
-       $(INSTALL_DATA) mxml.pc $(BUILDROOT)$(libdir)/pkgconfig
--      echo Installing man pages in $(BUILDROOT)$(mandir)...
--      $(INSTALL_DIR) $(BUILDROOT)$(mandir)/man1
--      $(INSTALL_MAN) doc/mxmldoc.man $(BUILDROOT)$(mandir)/man1/mxmldoc.1
--      $(INSTALL_DIR) $(BUILDROOT)$(mandir)/man3
--      $(INSTALL_MAN) doc/mxml.man $(BUILDROOT)$(mandir)/man3/mxml.3
- install-libmxml.a:
-       echo Installing libmxml.a to $(BUILDROOT)$(libdir)...
diff --git a/package/ncurses/0001-fixup-pkg-config-handling.patch b/package/ncurses/0001-fixup-pkg-config-handling.patch
new file mode 100644 (file)
index 0000000..e1cfc75
--- /dev/null
@@ -0,0 +1,89 @@
+Change handling of PKG_CONFIG_LIBDIR
+
+When PKG_CONFIG_LIBDIR was unset in the environment, the configure
+script was deducing the PKG_CONFIG_LIBDIR from the location of the
+pkg-config binary, which doesn't make a lot of sense, and isn't done
+by other autotools based packages.
+
+Also, the configure script was checking that the directory really
+exists. This forced to create the directory *and* provide an absolute
+path in PKG_CONFIG_LIBDIR, which didn't play well with the fact that
+at installation time, PKG_CONFIG_LIBDIR is suffixed to DESTDIR, which
+means that we got two times the staging directory location.
+
+This patch fixes both of those issues. Also, since ncurses uses a fork
+of autoconf 2.13, we can't simply use _AUTORECONF=YES, so we also fix
+the configure script in this patch.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/configure
+===================================================================
+--- a/configure
++++ b/configure
+@@ -3623,27 +3623,20 @@
+       # Leave this as something that can be overridden in the environment.
+       if test -z "$PKG_CONFIG_LIBDIR" ; then
+-              PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG" | sed -e 's,/[^/]*/[^/]*$,,'`/lib/pkgconfig
++              PKG_CONFIG_LIBDIR="/usr/lib/pkgconfig"
+       fi
++
+       PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG_LIBDIR" | sed -e 's/^://' -e 's/:.*//'`
+-      if test -n "$PKG_CONFIG_LIBDIR" && test -d "$PKG_CONFIG_LIBDIR" ; then
+-# Check whether --enable-pc-files or --disable-pc-files was given.
+-if test "${enable_pc_files+set}" = set; then
+-  enableval="$enable_pc_files"
+-  enable_pc_files=$enableval
+-else
+-  enable_pc_files=no
+-fi;
+-              echo "$as_me:3638: result: $enable_pc_files" >&5
+-echo "${ECHO_T}$enable_pc_files" >&6
++        # Check whether --enable-pc-files or --disable-pc-files was given.
++      if test "${enable_pc_files+set}" = set; then
++          enableval="$enable_pc_files"
++          enable_pc_files=$enableval
+       else
+-              echo "$as_me:3641: result: no" >&5
+-echo "${ECHO_T}no" >&6
+-              { echo "$as_me:3643: WARNING: did not find library $PKG_CONFIG_LIBDIR" >&5
+-echo "$as_me: WARNING: did not find library $PKG_CONFIG_LIBDIR" >&2;}
+-              enable_pc_files=no
+-      fi
++          enable_pc_files=no
++      fi;
++      echo "$as_me:3638: result: $enable_pc_files" >&5
++      echo "${ECHO_T}$enable_pc_files" >&6
+ fi
+ echo "$as_me:3649: checking if we should assume mixed-case filenames" >&5
+Index: b/configure.in
+===================================================================
+--- a/configure.in
++++ b/configure.in
+@@ -174,20 +174,14 @@
+       # Leave this as something that can be overridden in the environment.
+       if test -z "$PKG_CONFIG_LIBDIR" ; then
+-              PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG" | sed -e 's,/[[^/]]*/[[^/]]*$,,'`/lib/pkgconfig
++              PKG_CONFIG_LIBDIR="/usr/lib/pkgconfig"
+       fi
+       PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG_LIBDIR" | sed -e 's/^://' -e 's/:.*//'`
+-      if test -n "$PKG_CONFIG_LIBDIR" && test -d "$PKG_CONFIG_LIBDIR" ; then
+-              AC_ARG_ENABLE(pc-files,
++      AC_ARG_ENABLE(pc-files,
+                       [  --enable-pc-files       generate and install .pc files for pkg-config],
+                       [enable_pc_files=$enableval],
+                       [enable_pc_files=no])
+-              AC_MSG_RESULT($enable_pc_files)
+-      else
+-              AC_MSG_RESULT(no)
+-              AC_MSG_WARN(did not find library $PKG_CONFIG_LIBDIR)
+-              enable_pc_files=no
+-      fi
++      AC_MSG_RESULT($enable_pc_files)
+ fi
+ AC_SUBST(PKG_CONFIG_LIBDIR)
diff --git a/package/ncurses/ncurses-01-fixup-pkg-config-handling.patch b/package/ncurses/ncurses-01-fixup-pkg-config-handling.patch
deleted file mode 100644 (file)
index e1cfc75..0000000
+++ /dev/null
@@ -1,89 +0,0 @@
-Change handling of PKG_CONFIG_LIBDIR
-
-When PKG_CONFIG_LIBDIR was unset in the environment, the configure
-script was deducing the PKG_CONFIG_LIBDIR from the location of the
-pkg-config binary, which doesn't make a lot of sense, and isn't done
-by other autotools based packages.
-
-Also, the configure script was checking that the directory really
-exists. This forced to create the directory *and* provide an absolute
-path in PKG_CONFIG_LIBDIR, which didn't play well with the fact that
-at installation time, PKG_CONFIG_LIBDIR is suffixed to DESTDIR, which
-means that we got two times the staging directory location.
-
-This patch fixes both of those issues. Also, since ncurses uses a fork
-of autoconf 2.13, we can't simply use _AUTORECONF=YES, so we also fix
-the configure script in this patch.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/configure
-===================================================================
---- a/configure
-+++ b/configure
-@@ -3623,27 +3623,20 @@
-       # Leave this as something that can be overridden in the environment.
-       if test -z "$PKG_CONFIG_LIBDIR" ; then
--              PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG" | sed -e 's,/[^/]*/[^/]*$,,'`/lib/pkgconfig
-+              PKG_CONFIG_LIBDIR="/usr/lib/pkgconfig"
-       fi
-+
-       PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG_LIBDIR" | sed -e 's/^://' -e 's/:.*//'`
--      if test -n "$PKG_CONFIG_LIBDIR" && test -d "$PKG_CONFIG_LIBDIR" ; then
--# Check whether --enable-pc-files or --disable-pc-files was given.
--if test "${enable_pc_files+set}" = set; then
--  enableval="$enable_pc_files"
--  enable_pc_files=$enableval
--else
--  enable_pc_files=no
--fi;
--              echo "$as_me:3638: result: $enable_pc_files" >&5
--echo "${ECHO_T}$enable_pc_files" >&6
-+        # Check whether --enable-pc-files or --disable-pc-files was given.
-+      if test "${enable_pc_files+set}" = set; then
-+          enableval="$enable_pc_files"
-+          enable_pc_files=$enableval
-       else
--              echo "$as_me:3641: result: no" >&5
--echo "${ECHO_T}no" >&6
--              { echo "$as_me:3643: WARNING: did not find library $PKG_CONFIG_LIBDIR" >&5
--echo "$as_me: WARNING: did not find library $PKG_CONFIG_LIBDIR" >&2;}
--              enable_pc_files=no
--      fi
-+          enable_pc_files=no
-+      fi;
-+      echo "$as_me:3638: result: $enable_pc_files" >&5
-+      echo "${ECHO_T}$enable_pc_files" >&6
- fi
- echo "$as_me:3649: checking if we should assume mixed-case filenames" >&5
-Index: b/configure.in
-===================================================================
---- a/configure.in
-+++ b/configure.in
-@@ -174,20 +174,14 @@
-       # Leave this as something that can be overridden in the environment.
-       if test -z "$PKG_CONFIG_LIBDIR" ; then
--              PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG" | sed -e 's,/[[^/]]*/[[^/]]*$,,'`/lib/pkgconfig
-+              PKG_CONFIG_LIBDIR="/usr/lib/pkgconfig"
-       fi
-       PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG_LIBDIR" | sed -e 's/^://' -e 's/:.*//'`
--      if test -n "$PKG_CONFIG_LIBDIR" && test -d "$PKG_CONFIG_LIBDIR" ; then
--              AC_ARG_ENABLE(pc-files,
-+      AC_ARG_ENABLE(pc-files,
-                       [  --enable-pc-files       generate and install .pc files for pkg-config],
-                       [enable_pc_files=$enableval],
-                       [enable_pc_files=no])
--              AC_MSG_RESULT($enable_pc_files)
--      else
--              AC_MSG_RESULT(no)
--              AC_MSG_WARN(did not find library $PKG_CONFIG_LIBDIR)
--              enable_pc_files=no
--      fi
-+      AC_MSG_RESULT($enable_pc_files)
- fi
- AC_SUBST(PKG_CONFIG_LIBDIR)
diff --git a/package/ne10/0001-CMakeLists-don-t-hard-code-thumb-code-generation.patch b/package/ne10/0001-CMakeLists-don-t-hard-code-thumb-code-generation.patch
new file mode 100644 (file)
index 0000000..3402b5a
--- /dev/null
@@ -0,0 +1,27 @@
+From 00995e0b8a66fbd0eabd206188120bfc1ecdac59 Mon Sep 17 00:00:00 2001
+Message-Id: <00995e0b8a66fbd0eabd206188120bfc1ecdac59.1398245232.git.baruch@tkos.co.il>
+From: Baruch Siach <baruch@tkos.co.il>
+Date: Wed, 23 Apr 2014 12:21:37 +0300
+Subject: [PATCH] CMakeLists: don't hard code thumb code generation
+
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+---
+ CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 2c7f8d62a42b..cec614fba041 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -77,7 +77,7 @@ if(ANDROID_PLATFORM)
+       add_subdirectory(android/NE10Demo/jni)
+     endif()
+ elseif(GNULINUX_PLATFORM)
+-    set(CMAKE_C_FLAGS "-O2 -mthumb-interwork -mthumb -march=armv7-a -mfpu=vfp3")
++    set(CMAKE_C_FLAGS "-O2 -mthumb-interwork -march=armv7-a -mfpu=vfp3")
+     set(CMAKE_ASM_FLAGS "-mthumb-interwork -mthumb -march=armv7-a -mfpu=neon")
+ elseif(IOS_PLATFORM)
+     #set minimal target ios version.If not provided this option, Xcode
+-- 
+1.9.2
+
diff --git a/package/ne10/ne10-01-CMakeLists-don-t-hard-code-thumb-code-generation.patch b/package/ne10/ne10-01-CMakeLists-don-t-hard-code-thumb-code-generation.patch
deleted file mode 100644 (file)
index 3402b5a..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-From 00995e0b8a66fbd0eabd206188120bfc1ecdac59 Mon Sep 17 00:00:00 2001
-Message-Id: <00995e0b8a66fbd0eabd206188120bfc1ecdac59.1398245232.git.baruch@tkos.co.il>
-From: Baruch Siach <baruch@tkos.co.il>
-Date: Wed, 23 Apr 2014 12:21:37 +0300
-Subject: [PATCH] CMakeLists: don't hard code thumb code generation
-
-Signed-off-by: Baruch Siach <baruch@tkos.co.il>
----
- CMakeLists.txt | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 2c7f8d62a42b..cec614fba041 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -77,7 +77,7 @@ if(ANDROID_PLATFORM)
-       add_subdirectory(android/NE10Demo/jni)
-     endif()
- elseif(GNULINUX_PLATFORM)
--    set(CMAKE_C_FLAGS "-O2 -mthumb-interwork -mthumb -march=armv7-a -mfpu=vfp3")
-+    set(CMAKE_C_FLAGS "-O2 -mthumb-interwork -march=armv7-a -mfpu=vfp3")
-     set(CMAKE_ASM_FLAGS "-mthumb-interwork -mthumb -march=armv7-a -mfpu=neon")
- elseif(IOS_PLATFORM)
-     #set minimal target ios version.If not provided this option, Xcode
--- 
-1.9.2
-
diff --git a/package/netcat/0001-signed-bit-counting.patch b/package/netcat/0001-signed-bit-counting.patch
new file mode 100644 (file)
index 0000000..e29da31
--- /dev/null
@@ -0,0 +1,30 @@
+# Fix the endian-specific bit-counting code so that it works.
+# SF:1068324 "netcat_flag_count() fix"
+#   http://sourceforge.net/tracker/?func=detail&aid=1205729&group_id=52204&atid=466046
+# SF:1205729 "doen't work on arm linux platform":
+#   http://sourceforge.net/tracker/?func=detail&aid=1068324&group_id=52204&atid=466046
+
+Index: netcat-0.7.1/src/flagset.c
+===================================================================
+--- netcat-0.7.1.orig/src/flagset.c    2010-07-19 13:51:46.000000000 +0100
++++ netcat-0.7.1/src/flagset.c 2010-07-19 13:52:27.000000000 +0100
+@@ -134,7 +134,7 @@
+ int netcat_flag_count(void)
+ {
+-  register char c;
++  register unsigned char c;
+   register int i;
+   int ret = 0;
+@@ -154,8 +154,8 @@
+       Assumed that the bit number 1 is the sign, and that we will shift the
+       bit 1 (or the bit that takes its place later) until the the most right,
+       WHY it has to keep the wrong sign? */
+-      ret -= (c >> 7);
+-      c <<= 1;
++      ret += c&1;
++      c>>=1;
+     }
+   }
diff --git a/package/netcat/netcat-0.7.1-signed-bit-counting.patch b/package/netcat/netcat-0.7.1-signed-bit-counting.patch
deleted file mode 100644 (file)
index e29da31..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-# Fix the endian-specific bit-counting code so that it works.
-# SF:1068324 "netcat_flag_count() fix"
-#   http://sourceforge.net/tracker/?func=detail&aid=1205729&group_id=52204&atid=466046
-# SF:1205729 "doen't work on arm linux platform":
-#   http://sourceforge.net/tracker/?func=detail&aid=1068324&group_id=52204&atid=466046
-
-Index: netcat-0.7.1/src/flagset.c
-===================================================================
---- netcat-0.7.1.orig/src/flagset.c    2010-07-19 13:51:46.000000000 +0100
-+++ netcat-0.7.1/src/flagset.c 2010-07-19 13:52:27.000000000 +0100
-@@ -134,7 +134,7 @@
- int netcat_flag_count(void)
- {
--  register char c;
-+  register unsigned char c;
-   register int i;
-   int ret = 0;
-@@ -154,8 +154,8 @@
-       Assumed that the bit number 1 is the sign, and that we will shift the
-       bit 1 (or the bit that takes its place later) until the the most right,
-       WHY it has to keep the wrong sign? */
--      ret -= (c >> 7);
--      c <<= 1;
-+      ret += c&1;
-+      c>>=1;
-     }
-   }
diff --git a/package/netplug/0001-makefile-flags.patch b/package/netplug/0001-makefile-flags.patch
new file mode 100644 (file)
index 0000000..b2468f8
--- /dev/null
@@ -0,0 +1,21 @@
+Preserve the cflags settings, because buildroot clobbers them.
+
+--- a/Makefile 2010-10-05 00:06:38.000000000 -0700
++++ b/Makefile 2010-10-05 00:15:27.000000000 -0700
+@@ -11,11 +11,14 @@ mandir ?= $(prefix)/usr/share/man
+ install_opts :=
+-CFLAGS += -Wall -std=gnu99 -DNP_ETC_DIR='"$(etcdir)"' \
++NETPLUG_CFLAGS += -Wall -std=gnu99 -DNP_ETC_DIR='"$(etcdir)"' \
+       -DNP_SCRIPT_DIR='"$(scriptdir)"' -ggdb3 -O3 -DNP_VERSION='"$(version)"'
++%.o: %.c
++      $(CC) $(NETPLUG_CFLAGS) $(CFLAGS) -c -o $@ $<
++
+ netplugd: config.o netlink.o lib.o if_info.o main.o
+-      $(CC) $(LDFLAGS) -o $@ $^
++      $(CC) $(LDFLAGS) -o $@ $(NETPLUG_CFLAGS) $^
+ install:
+       install -d $(install_opts) -m 755 \
diff --git a/package/netplug/netplug-1.2.9.2-makefile-flags.patch b/package/netplug/netplug-1.2.9.2-makefile-flags.patch
deleted file mode 100644 (file)
index b2468f8..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-Preserve the cflags settings, because buildroot clobbers them.
-
---- a/Makefile 2010-10-05 00:06:38.000000000 -0700
-+++ b/Makefile 2010-10-05 00:15:27.000000000 -0700
-@@ -11,11 +11,14 @@ mandir ?= $(prefix)/usr/share/man
- install_opts :=
--CFLAGS += -Wall -std=gnu99 -DNP_ETC_DIR='"$(etcdir)"' \
-+NETPLUG_CFLAGS += -Wall -std=gnu99 -DNP_ETC_DIR='"$(etcdir)"' \
-       -DNP_SCRIPT_DIR='"$(scriptdir)"' -ggdb3 -O3 -DNP_VERSION='"$(version)"'
-+%.o: %.c
-+      $(CC) $(NETPLUG_CFLAGS) $(CFLAGS) -c -o $@ $<
-+
- netplugd: config.o netlink.o lib.o if_info.o main.o
--      $(CC) $(LDFLAGS) -o $@ $^
-+      $(CC) $(LDFLAGS) -o $@ $(NETPLUG_CFLAGS) $^
- install:
-       install -d $(install_opts) -m 755 \
diff --git a/package/network-manager/0001-NetworkManagerUtils-fix-build-with-toolchains-not-ex.patch b/package/network-manager/0001-NetworkManagerUtils-fix-build-with-toolchains-not-ex.patch
new file mode 100644 (file)
index 0000000..9286daa
--- /dev/null
@@ -0,0 +1,38 @@
+From b8241447e2a910dde57bf5a44a4464d80c87ebca Mon Sep 17 00:00:00 2001
+From: Peter Korsgaard <peter@korsgaard.com>
+Date: Mon, 11 Aug 2014 09:37:05 +0200
+Subject: [PATCH] NetworkManagerUtils: fix build with toolchains not exporting
+ CLOCK_BOOTTIME
+
+E.G. uClibc 0.9.33 and earlier.
+
+Submitted upstream: https://bugzilla.gnome.org/show_bug.cgi?id=734599
+
+Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
+---
+ src/NetworkManagerUtils.c | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+diff --git a/src/NetworkManagerUtils.c b/src/NetworkManagerUtils.c
+index aa689ce..fc85b00 100644
+--- a/src/NetworkManagerUtils.c
++++ b/src/NetworkManagerUtils.c
+@@ -45,6 +45,15 @@
+ #include "nm-posix-signals.h"
+ /*
++ * Some toolchains (E.G. uClibc 0.9.33 and earlier) don't export
++ * CLOCK_BOOTTIME even though the kernel supports it, so provide a
++ * local definition
++ */
++#ifndef CLOCK_BOOTTIME
++#define CLOCK_BOOTTIME 7
++#endif
++
++/*
+  * nm_ethernet_address_is_valid
+  *
+  * Compares an Ethernet address against known invalid addresses.
+-- 
+2.0.0
+
diff --git a/package/network-manager/network-manager-0001-NetworkManagerUtils-fix-build-with-toolchains-not-ex.patch b/package/network-manager/network-manager-0001-NetworkManagerUtils-fix-build-with-toolchains-not-ex.patch
deleted file mode 100644 (file)
index 9286daa..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-From b8241447e2a910dde57bf5a44a4464d80c87ebca Mon Sep 17 00:00:00 2001
-From: Peter Korsgaard <peter@korsgaard.com>
-Date: Mon, 11 Aug 2014 09:37:05 +0200
-Subject: [PATCH] NetworkManagerUtils: fix build with toolchains not exporting
- CLOCK_BOOTTIME
-
-E.G. uClibc 0.9.33 and earlier.
-
-Submitted upstream: https://bugzilla.gnome.org/show_bug.cgi?id=734599
-
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- src/NetworkManagerUtils.c | 9 +++++++++
- 1 file changed, 9 insertions(+)
-
-diff --git a/src/NetworkManagerUtils.c b/src/NetworkManagerUtils.c
-index aa689ce..fc85b00 100644
---- a/src/NetworkManagerUtils.c
-+++ b/src/NetworkManagerUtils.c
-@@ -45,6 +45,15 @@
- #include "nm-posix-signals.h"
- /*
-+ * Some toolchains (E.G. uClibc 0.9.33 and earlier) don't export
-+ * CLOCK_BOOTTIME even though the kernel supports it, so provide a
-+ * local definition
-+ */
-+#ifndef CLOCK_BOOTTIME
-+#define CLOCK_BOOTTIME 7
-+#endif
-+
-+/*
-  * nm_ethernet_address_is_valid
-  *
-  * Compares an Ethernet address against known invalid addresses.
--- 
-2.0.0
-
diff --git a/package/nfacct/0001-uclinux.patch b/package/nfacct/0001-uclinux.patch
new file mode 100644 (file)
index 0000000..295a370
--- /dev/null
@@ -0,0 +1,26 @@
+From da1a0c186232d1bca9c723bd47d11a6e3807ae29 Mon Sep 17 00:00:00 2001
+From: Gustavo Zacarias <gustavo@zacarias.com.ar>
+Date: Tue, 10 Sep 2013 16:16:48 -0300
+Subject: [PATCH] configure: uclinux is also linux
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+---
+ configure.ac | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 9679112..9a34bdc 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -15,7 +15,7 @@ AC_PROG_INSTALL
+ AC_PROG_LN_S
+ case "$host" in
+-*-*-linux*) ;;
++*-*-linux* | *-*-uclinux*) ;;
+ *) AC_MSG_ERROR([Linux only, dude!]);;
+ esac
+-- 
+1.8.1.5
+
diff --git a/package/nfacct/nfacct-01-uclinux.patch b/package/nfacct/nfacct-01-uclinux.patch
deleted file mode 100644 (file)
index 295a370..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-From da1a0c186232d1bca9c723bd47d11a6e3807ae29 Mon Sep 17 00:00:00 2001
-From: Gustavo Zacarias <gustavo@zacarias.com.ar>
-Date: Tue, 10 Sep 2013 16:16:48 -0300
-Subject: [PATCH] configure: uclinux is also linux
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
----
- configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index 9679112..9a34bdc 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -15,7 +15,7 @@ AC_PROG_INSTALL
- AC_PROG_LN_S
- case "$host" in
--*-*-linux*) ;;
-+*-*-linux* | *-*-uclinux*) ;;
- *) AC_MSG_ERROR([Linux only, dude!]);;
- esac
--- 
-1.8.1.5
-
diff --git a/package/ngrep/0001-make-objs.patch b/package/ngrep/0001-make-objs.patch
new file mode 100644 (file)
index 0000000..8b55e3f
--- /dev/null
@@ -0,0 +1,23 @@
+ngrep: don't include regex objects since we're using pcre
+
+Signed-off-by: Wade Berrier <wberrier@gmail.com>
+
+--- ngrep-1.45/Makefile.in.orig        2006-11-28 06:35:37.000000000 -0700
++++ ngrep-1.45/Makefile.in     2011-06-29 14:05:27.000000000 -0600
+@@ -32,13 +32,13 @@
+ INSTALL = ./install-sh
+-REGEX_DIR=@REGEX_DIR@
+-REGEX_OBJS=@REGEX_OBJS@
++REGEX_DIR=
++REGEX_OBJS=
+ all: $(TARGET) 
+-$(TARGET): $(REGEX_OBJS) $(OBJS) 
++$(TARGET): $(OBJS) 
+       $(CC) $(CFLAGS) $(LDFLAGS) $(STRIPFLAG) -o $(TARGET) $(OBJS) $(REGEX_OBJS) $(LIBS) 
+ debug: $(REGEX_OBJS) $(OBJS)
diff --git a/package/ngrep/0002-pcre-header.patch b/package/ngrep/0002-pcre-header.patch
new file mode 100644 (file)
index 0000000..40b9234
--- /dev/null
@@ -0,0 +1,16 @@
+ngrep: don't use versioned header
+
+Signed-off-by: Wade Berrier <wberrier@gmail.com>
+
+diff -ur ngrep-1.45/ngrep.c ngrep-1.45.mod/ngrep.c
+--- ngrep-1.45/ngrep.c  Tue Nov 28 15:38:43 2006
++++ ngrep-1.45.mod/ngrep.c      Sat May 19 10:21:27 2007
+@@ -92,7 +92,7 @@
+ #endif
+ #if USE_PCRE
+-#include "pcre-5.0/pcre.h"
++#include "pcre.h"
+ #else
+ #include "regex-0.12/regex.h"
+ #endif
diff --git a/package/ngrep/0003-fix-static-link.patch b/package/ngrep/0003-fix-static-link.patch
new file mode 100644 (file)
index 0000000..98c2626
--- /dev/null
@@ -0,0 +1,25 @@
+ngrep: fix static link with pcre
+
+Libraries must be placed after object files.
+
+Signed-off-by: Romain Naour <romain.naour@openwide.fr>
+---
+ Makefile.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile.in b/Makefile.in
+index 2ae4506..761d7d9 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -11,7 +11,7 @@ CFLAGS=@CFLAGS@ -D@OS@ @DEFS@ @EXTRA_DEFINES@
+ INCLUDES=-I@srcdir@ @PCAP_INCLUDE@ @EXTRA_INCLUDES@
+ LDFLAGS=@LDFLAGS@ @PCAP_LINK@
+-LIBS=-lpcap @EXTRA_LIBS@ 
++LIBS=@LIBS@ @EXTRA_LIBS@
+ STRIPFLAG=@STRIPFLAG@
+-- 
+1.8.1.4
+
diff --git a/package/ngrep/ngrep-0001-make-objs.patch b/package/ngrep/ngrep-0001-make-objs.patch
deleted file mode 100644 (file)
index 8b55e3f..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-ngrep: don't include regex objects since we're using pcre
-
-Signed-off-by: Wade Berrier <wberrier@gmail.com>
-
---- ngrep-1.45/Makefile.in.orig        2006-11-28 06:35:37.000000000 -0700
-+++ ngrep-1.45/Makefile.in     2011-06-29 14:05:27.000000000 -0600
-@@ -32,13 +32,13 @@
- INSTALL = ./install-sh
--REGEX_DIR=@REGEX_DIR@
--REGEX_OBJS=@REGEX_OBJS@
-+REGEX_DIR=
-+REGEX_OBJS=
- all: $(TARGET) 
--$(TARGET): $(REGEX_OBJS) $(OBJS) 
-+$(TARGET): $(OBJS) 
-       $(CC) $(CFLAGS) $(LDFLAGS) $(STRIPFLAG) -o $(TARGET) $(OBJS) $(REGEX_OBJS) $(LIBS) 
- debug: $(REGEX_OBJS) $(OBJS)
diff --git a/package/ngrep/ngrep-0002-pcre-header.patch b/package/ngrep/ngrep-0002-pcre-header.patch
deleted file mode 100644 (file)
index 40b9234..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-ngrep: don't use versioned header
-
-Signed-off-by: Wade Berrier <wberrier@gmail.com>
-
-diff -ur ngrep-1.45/ngrep.c ngrep-1.45.mod/ngrep.c
---- ngrep-1.45/ngrep.c  Tue Nov 28 15:38:43 2006
-+++ ngrep-1.45.mod/ngrep.c      Sat May 19 10:21:27 2007
-@@ -92,7 +92,7 @@
- #endif
- #if USE_PCRE
--#include "pcre-5.0/pcre.h"
-+#include "pcre.h"
- #else
- #include "regex-0.12/regex.h"
- #endif
diff --git a/package/ngrep/ngrep-0003-fix-static-link.patch b/package/ngrep/ngrep-0003-fix-static-link.patch
deleted file mode 100644 (file)
index 98c2626..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-ngrep: fix static link with pcre
-
-Libraries must be placed after object files.
-
-Signed-off-by: Romain Naour <romain.naour@openwide.fr>
----
- Makefile.in | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/Makefile.in b/Makefile.in
-index 2ae4506..761d7d9 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -11,7 +11,7 @@ CFLAGS=@CFLAGS@ -D@OS@ @DEFS@ @EXTRA_DEFINES@
- INCLUDES=-I@srcdir@ @PCAP_INCLUDE@ @EXTRA_INCLUDES@
- LDFLAGS=@LDFLAGS@ @PCAP_LINK@
--LIBS=-lpcap @EXTRA_LIBS@ 
-+LIBS=@LIBS@ @EXTRA_LIBS@
- STRIPFLAG=@STRIPFLAG@
--- 
-1.8.1.4
-
diff --git a/package/nodejs/0001-remove-python-bz2-dependency.patch b/package/nodejs/0001-remove-python-bz2-dependency.patch
new file mode 100644 (file)
index 0000000..75fe437
--- /dev/null
@@ -0,0 +1,27 @@
+Remove dependency on Python bz2 module
+
+The Python bz2 module is only needed in certain cases, so only import
+it when needed. In the normal nodejs build, this allows to remove the
+dependency on this module.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Index: b/deps/v8/tools/js2c.py
+===================================================================
+--- a/deps/v8/tools/js2c.py
++++ b/deps/v8/tools/js2c.py
+@@ -33,7 +33,6 @@
+ import os, re, sys, string
+ import jsmin
+-import bz2
+ def ToCAsciiArray(lines):
+@@ -344,6 +343,7 @@
+   else:
+     raw_sources_declaration = RAW_SOURCES_COMPRESSION_DECLARATION
+     if env['COMPRESSION'] == 'bz2':
++      import bz2
+       all_sources = bz2.compress("".join(all_sources))
+     total_length = len(all_sources)
+     sources_data = ToCArray(all_sources)
diff --git a/package/nodejs/0002-gyp-force-link-command-to-use-CXX.patch b/package/nodejs/0002-gyp-force-link-command-to-use-CXX.patch
new file mode 100644 (file)
index 0000000..a2f02ab
--- /dev/null
@@ -0,0 +1,26 @@
+From 00d809e9305241f8636a2d75e22c493293e6971a Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Sun, 20 Apr 2014 15:03:01 +0200
+Subject: [PATCH] gyp: force link command to use CXX
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+---
+ tools/gyp/pylib/gyp/generator/make.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tools/gyp/pylib/gyp/generator/make.py b/tools/gyp/pylib/gyp/generator/make.py
+index 0de510e..54e4c96 100644
+--- a/tools/gyp/pylib/gyp/generator/make.py
++++ b/tools/gyp/pylib/gyp/generator/make.py
+@@ -134,7 +134,7 @@ cmd_alink_thin = rm -f $@ && $(AR.$(TOOLSET)) crsT $@ $(filter %.o,$^)
+ # special "figure out circular dependencies" flags around the entire
+ # input list during linking.
+ quiet_cmd_link = LINK($(TOOLSET)) $@
+-cmd_link = $(LINK.$(TOOLSET)) $(GYP_LDFLAGS) $(LDFLAGS.$(TOOLSET)) -o $@ -Wl,--start-group $(LD_INPUTS) -Wl,--end-group $(LIBS)
++cmd_link = $(CXX.$(TOOLSET)) $(GYP_LDFLAGS) $(LDFLAGS.$(TOOLSET)) -o $@ -Wl,--start-group $(LD_INPUTS) -Wl,--end-group $(LIBS)
+ # We support two kinds of shared objects (.so):
+ # 1) shared_library, which is just bundling together many dependent libraries
+-- 
+1.9.2
+
diff --git a/package/nodejs/0003-use-python-variable.patch b/package/nodejs/0003-use-python-variable.patch
new file mode 100644 (file)
index 0000000..f231f4c
--- /dev/null
@@ -0,0 +1,43 @@
+Use a python variable instead of hardcoding Python
+
+The nodejs build system uses python in a number of locations. However,
+there are some locations where it hardcodes 'python' as the Python
+interpreter. However, this causes problems when we need to use python2
+instead of just python.
+
+This patch fixes that by using the python variable already in place in
+the nodejs build system.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/deps/v8/tools/gyp/v8.gyp
+===================================================================
+--- a/deps/v8/tools/gyp/v8.gyp
++++ b/deps/v8/tools/gyp/v8.gyp
+@@ -792,7 +792,7 @@
+                 '<(SHARED_INTERMEDIATE_DIR)/libraries.cc',
+               ],
+               'action': [
+-                'python',
++                '<(python)',
+                 '../../tools/js2c.py',
+                 '<@(_outputs)',
+                 'CORE',
+@@ -810,7 +810,7 @@
+                 '<(SHARED_INTERMEDIATE_DIR)/experimental-libraries.cc',
+               ],
+               'action': [
+-                'python',
++                '<(python)',
+                 '../../tools/js2c.py',
+                 '<@(_outputs)',
+                 'EXPERIMENTAL',
+@@ -840,7 +840,7 @@
+                   '<(SHARED_INTERMEDIATE_DIR)/debug-support.cc',
+                 ],
+                 'action': [
+-                  'python',
++                  '<(python)',
+                   '../../tools/gen-postmortem-metadata.py',
+                   '<@(_outputs)',
+                   '<@(heapobject_files)'
diff --git a/package/nodejs/0004-fix-build-error-without-OpenSSL-support.patch b/package/nodejs/0004-fix-build-error-without-OpenSSL-support.patch
new file mode 100644 (file)
index 0000000..9d41516
--- /dev/null
@@ -0,0 +1,54 @@
+From d9acdddb42aef48a9504368019beb1ad91c9a0c4 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?J=C3=B6rg=20Krause?= <jkrause@posteo.de>
+Date: Mon, 17 Nov 2014 12:34:05 +0100
+Subject: [PATCH 1/1] src/node.cc: fix build error without OpenSSL support
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Signed-off-by: Jörg Krause <jkrause@posteo.de>
+---
+ src/node.cc | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/src/node.cc b/src/node.cc
+index 18c743f..cb77f08 100644
+--- a/src/node.cc
++++ b/src/node.cc
+@@ -82,7 +82,6 @@ typedef int mode_t;
+ #include "node_script.h"
+ #include "v8_typed_array.h"
+-#include "node_crypto.h"
+ #include "util.h"
+ using namespace v8;
+@@ -2544,8 +2543,10 @@ static void PrintHelp() {
+          "  --trace-deprecation  show stack traces on deprecations\n"
+          "  --v8-options         print v8 command line options\n"
+          "  --max-stack-size=val set max v8 stack size (bytes)\n"
++#if HAVE_OPENSSL
+          "  --enable-ssl2        enable ssl2\n"
+          "  --enable-ssl3        enable ssl3\n"
++#endif
+          "\n"
+          "Environment variables:\n"
+ #ifdef _WIN32
+@@ -2579,12 +2580,14 @@ static void ParseArgs(int argc, char **argv) {
+       p = 1 + strchr(arg, '=');
+       max_stack_size = atoi(p);
+       argv[i] = const_cast<char*>("");
++#if HAVE_OPENSSL
+     } else if (strcmp(arg, "--enable-ssl2") == 0) {
+       SSL2_ENABLE = true;
+       argv[i] = const_cast<char*>("");
+     } else if (strcmp(arg, "--enable-ssl3") == 0) {
+       SSL3_ENABLE = true;
+       argv[i] = const_cast<char*>("");
++#endif
+     } else if (strcmp(arg, "--help") == 0 || strcmp(arg, "-h") == 0) {
+       PrintHelp();
+       exit(0);
+-- 
+2.1.3
+
diff --git a/package/nodejs/nodejs-0001-remove-python-bz2-dependency.patch b/package/nodejs/nodejs-0001-remove-python-bz2-dependency.patch
deleted file mode 100644 (file)
index 75fe437..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-Remove dependency on Python bz2 module
-
-The Python bz2 module is only needed in certain cases, so only import
-it when needed. In the normal nodejs build, this allows to remove the
-dependency on this module.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-Index: b/deps/v8/tools/js2c.py
-===================================================================
---- a/deps/v8/tools/js2c.py
-+++ b/deps/v8/tools/js2c.py
-@@ -33,7 +33,6 @@
- import os, re, sys, string
- import jsmin
--import bz2
- def ToCAsciiArray(lines):
-@@ -344,6 +343,7 @@
-   else:
-     raw_sources_declaration = RAW_SOURCES_COMPRESSION_DECLARATION
-     if env['COMPRESSION'] == 'bz2':
-+      import bz2
-       all_sources = bz2.compress("".join(all_sources))
-     total_length = len(all_sources)
-     sources_data = ToCArray(all_sources)
diff --git a/package/nodejs/nodejs-0002-gyp-force-link-command-to-use-CXX.patch b/package/nodejs/nodejs-0002-gyp-force-link-command-to-use-CXX.patch
deleted file mode 100644 (file)
index a2f02ab..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-From 00d809e9305241f8636a2d75e22c493293e6971a Mon Sep 17 00:00:00 2001
-From: Samuel Martin <s.martin49@gmail.com>
-Date: Sun, 20 Apr 2014 15:03:01 +0200
-Subject: [PATCH] gyp: force link command to use CXX
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
----
- tools/gyp/pylib/gyp/generator/make.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/tools/gyp/pylib/gyp/generator/make.py b/tools/gyp/pylib/gyp/generator/make.py
-index 0de510e..54e4c96 100644
---- a/tools/gyp/pylib/gyp/generator/make.py
-+++ b/tools/gyp/pylib/gyp/generator/make.py
-@@ -134,7 +134,7 @@ cmd_alink_thin = rm -f $@ && $(AR.$(TOOLSET)) crsT $@ $(filter %.o,$^)
- # special "figure out circular dependencies" flags around the entire
- # input list during linking.
- quiet_cmd_link = LINK($(TOOLSET)) $@
--cmd_link = $(LINK.$(TOOLSET)) $(GYP_LDFLAGS) $(LDFLAGS.$(TOOLSET)) -o $@ -Wl,--start-group $(LD_INPUTS) -Wl,--end-group $(LIBS)
-+cmd_link = $(CXX.$(TOOLSET)) $(GYP_LDFLAGS) $(LDFLAGS.$(TOOLSET)) -o $@ -Wl,--start-group $(LD_INPUTS) -Wl,--end-group $(LIBS)
- # We support two kinds of shared objects (.so):
- # 1) shared_library, which is just bundling together many dependent libraries
--- 
-1.9.2
-
diff --git a/package/nodejs/nodejs-0003-use-python-variable.patch b/package/nodejs/nodejs-0003-use-python-variable.patch
deleted file mode 100644 (file)
index f231f4c..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-Use a python variable instead of hardcoding Python
-
-The nodejs build system uses python in a number of locations. However,
-there are some locations where it hardcodes 'python' as the Python
-interpreter. However, this causes problems when we need to use python2
-instead of just python.
-
-This patch fixes that by using the python variable already in place in
-the nodejs build system.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/deps/v8/tools/gyp/v8.gyp
-===================================================================
---- a/deps/v8/tools/gyp/v8.gyp
-+++ b/deps/v8/tools/gyp/v8.gyp
-@@ -792,7 +792,7 @@
-                 '<(SHARED_INTERMEDIATE_DIR)/libraries.cc',
-               ],
-               'action': [
--                'python',
-+                '<(python)',
-                 '../../tools/js2c.py',
-                 '<@(_outputs)',
-                 'CORE',
-@@ -810,7 +810,7 @@
-                 '<(SHARED_INTERMEDIATE_DIR)/experimental-libraries.cc',
-               ],
-               'action': [
--                'python',
-+                '<(python)',
-                 '../../tools/js2c.py',
-                 '<@(_outputs)',
-                 'EXPERIMENTAL',
-@@ -840,7 +840,7 @@
-                   '<(SHARED_INTERMEDIATE_DIR)/debug-support.cc',
-                 ],
-                 'action': [
--                  'python',
-+                  '<(python)',
-                   '../../tools/gen-postmortem-metadata.py',
-                   '<@(_outputs)',
-                   '<@(heapobject_files)'
diff --git a/package/nodejs/nodejs-0004-fix-build-error-without-OpenSSL-support.patch b/package/nodejs/nodejs-0004-fix-build-error-without-OpenSSL-support.patch
deleted file mode 100644 (file)
index 9d41516..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-From d9acdddb42aef48a9504368019beb1ad91c9a0c4 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?J=C3=B6rg=20Krause?= <jkrause@posteo.de>
-Date: Mon, 17 Nov 2014 12:34:05 +0100
-Subject: [PATCH 1/1] src/node.cc: fix build error without OpenSSL support
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Signed-off-by: Jörg Krause <jkrause@posteo.de>
----
- src/node.cc | 5 ++++-
- 1 file changed, 4 insertions(+), 1 deletion(-)
-
-diff --git a/src/node.cc b/src/node.cc
-index 18c743f..cb77f08 100644
---- a/src/node.cc
-+++ b/src/node.cc
-@@ -82,7 +82,6 @@ typedef int mode_t;
- #include "node_script.h"
- #include "v8_typed_array.h"
--#include "node_crypto.h"
- #include "util.h"
- using namespace v8;
-@@ -2544,8 +2543,10 @@ static void PrintHelp() {
-          "  --trace-deprecation  show stack traces on deprecations\n"
-          "  --v8-options         print v8 command line options\n"
-          "  --max-stack-size=val set max v8 stack size (bytes)\n"
-+#if HAVE_OPENSSL
-          "  --enable-ssl2        enable ssl2\n"
-          "  --enable-ssl3        enable ssl3\n"
-+#endif
-          "\n"
-          "Environment variables:\n"
- #ifdef _WIN32
-@@ -2579,12 +2580,14 @@ static void ParseArgs(int argc, char **argv) {
-       p = 1 + strchr(arg, '=');
-       max_stack_size = atoi(p);
-       argv[i] = const_cast<char*>("");
-+#if HAVE_OPENSSL
-     } else if (strcmp(arg, "--enable-ssl2") == 0) {
-       SSL2_ENABLE = true;
-       argv[i] = const_cast<char*>("");
-     } else if (strcmp(arg, "--enable-ssl3") == 0) {
-       SSL3_ENABLE = true;
-       argv[i] = const_cast<char*>("");
-+#endif
-     } else if (strcmp(arg, "--help") == 0 || strcmp(arg, "-h") == 0) {
-       PrintHelp();
-       exit(0);
--- 
-2.1.3
-
diff --git a/package/nut/0001-foo-config.patch b/package/nut/0001-foo-config.patch
new file mode 100644 (file)
index 0000000..7202f13
--- /dev/null
@@ -0,0 +1,72 @@
+configure: fix calls to {gdlib,net-snmp}-config
+
+nut directly calls to {gdlib,net-snmp}-config. In Buildroot,
+those are not in the PATH, and nut would catch those of the
+system (if they are installed), or miss them entirely.
+
+Fix that by using environment variables that will tell where
+to look for them.
+
+Note: libusb also uses libusb-config, but only as a fallback
+if pkg-config fails. Since we ensure that pkg-config exists,
+and libusb is properly installed before we build nut, there
+is no need to fix the libusb-config calls, since they won't
+be called at all.
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+diff -durN nut-2.6.5.orig/m4/nut_check_libgd.m4 nut-2.6.5/m4/nut_check_libgd.m4
+--- nut-2.6.5.orig/m4/nut_check_libgd.m4       2012-07-31 19:38:56.000000000 +0200
++++ nut-2.6.5/m4/nut_check_libgd.m4    2013-11-01 16:24:02.626549810 +0100
+@@ -20,7 +20,7 @@
+       LIBS="-lgd -lpng -lz -ljpeg -lfreetype -lm -lXpm -lX11"
+       AC_MSG_CHECKING(for gd version via gdlib-config)
+-      GD_VERSION=`gdlib-config --version 2>/dev/null`
++      GD_VERSION=`${GDLIB_CONFIG} --version 2>/dev/null`
+       if test "$?" != "0" -o -z "${GD_VERSION}"; then
+               GD_VERSION="none"
+       fi
+@@ -34,9 +34,9 @@
+               AC_MSG_WARN([[If gd detection fails, upgrade gd or use --with-gd-includes and --with-gd-libs]])
+               ;;
+       *)
+-              CFLAGS="`gdlib-config --includes 2>/dev/null`"
+-              LDFLAGS="`gdlib-config --ldflags 2>/dev/null`"
+-              LIBS="`gdlib-config --libs 2>/dev/null`"
++              CFLAGS="`${GDLIB_CONFIG} --includes 2>/dev/null`"
++              LDFLAGS="`${GDLIB_CONFIG} --ldflags 2>/dev/null`"
++              LIBS="`${GDLIB_CONFIG} --libs 2>/dev/null`"
+               ;;
+       esac
+diff -durN nut-2.6.5.orig/m4/nut_check_libnetsnmp.m4 nut-2.6.5/m4/nut_check_libnetsnmp.m4
+--- nut-2.6.5.orig/m4/nut_check_libnetsnmp.m4  2012-07-31 19:38:56.000000000 +0200
++++ nut-2.6.5/m4/nut_check_libnetsnmp.m4       2013-11-01 16:30:07.398282923 +0100
+@@ -15,7 +15,7 @@
+       dnl See which version of the Net-SNMP library (if any) is installed
+       AC_MSG_CHECKING(for Net-SNMP version via net-snmp-config)
+-      SNMP_VERSION=`net-snmp-config --version 2>/dev/null`
++      SNMP_VERSION=`${NET_SNMP_CONFIG} --version 2>/dev/null`
+       if test "$?" != "0" -o -z "${SNMP_VERSION}"; then
+               SNMP_VERSION="none"
+       fi
+@@ -33,7 +33,7 @@
+                       CFLAGS="${withval}"
+                       ;;
+               esac
+-      ], [CFLAGS="`net-snmp-config --base-cflags 2>/dev/null`"])
++      ], [CFLAGS="`${NET_SNMP_CONFIG} --base-cflags 2>/dev/null`"])
+       AC_MSG_RESULT([${CFLAGS}])
+       AC_MSG_CHECKING(for Net-SNMP libs)
+@@ -48,7 +48,7 @@
+                       LIBS="${withval}"
+                       ;;
+               esac
+-      ], [LIBS="`net-snmp-config --libs 2>/dev/null`"])
++      ], [LIBS="`${NET_SNMP_CONFIG} --libs 2>/dev/null`"])
+       AC_MSG_RESULT([${LIBS}])
+       dnl Check if the Net-SNMP library is usable
diff --git a/package/nut/0002-parallel-build.patch b/package/nut/0002-parallel-build.patch
new file mode 100644 (file)
index 0000000..f979c19
--- /dev/null
@@ -0,0 +1,24 @@
+conf: fix parallel install
+
+Do not reference the upsmon.conf.sample twice, otherwise install, with
+a high number of make jobs, may fail, like so:
+    http://autobuild.buildroot.net/results/256/2567e13cd5bc702bc3a38a1d6fc8e34022cc7db5/build-end.log
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+---
+Upstream status:
+    https://github.com/networkupstools/nut/pull/147
+
+diff -durB nut-2.7.2.orig/conf/Makefile.am nut-2.7.2/conf/Makefile.am
+--- nut-2.7.2.orig/conf/Makefile.am    2014-02-14 09:56:53.000000000 +0100
++++ nut-2.7.2/conf/Makefile.am 2014-08-17 11:33:46.804439240 +0200
+@@ -2,7 +2,7 @@
+ INSTALL_0600 = $(INSTALL) -m 0600
+-SECFILES = upsmon.conf.sample upsd.conf.sample upsd.users.sample
++SECFILES = upsd.conf.sample upsd.users.sample
+ PUBFILES = nut.conf.sample ups.conf.sample
+ CGIPUB = hosts.conf.sample upsset.conf.sample upsstats.html.sample    \
+  upsstats-single.html.sample
diff --git a/package/nut/nut-0001-foo-config.patch b/package/nut/nut-0001-foo-config.patch
deleted file mode 100644 (file)
index 7202f13..0000000
+++ /dev/null
@@ -1,72 +0,0 @@
-configure: fix calls to {gdlib,net-snmp}-config
-
-nut directly calls to {gdlib,net-snmp}-config. In Buildroot,
-those are not in the PATH, and nut would catch those of the
-system (if they are installed), or miss them entirely.
-
-Fix that by using environment variables that will tell where
-to look for them.
-
-Note: libusb also uses libusb-config, but only as a fallback
-if pkg-config fails. Since we ensure that pkg-config exists,
-and libusb is properly installed before we build nut, there
-is no need to fix the libusb-config calls, since they won't
-be called at all.
-
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
-
-diff -durN nut-2.6.5.orig/m4/nut_check_libgd.m4 nut-2.6.5/m4/nut_check_libgd.m4
---- nut-2.6.5.orig/m4/nut_check_libgd.m4       2012-07-31 19:38:56.000000000 +0200
-+++ nut-2.6.5/m4/nut_check_libgd.m4    2013-11-01 16:24:02.626549810 +0100
-@@ -20,7 +20,7 @@
-       LIBS="-lgd -lpng -lz -ljpeg -lfreetype -lm -lXpm -lX11"
-       AC_MSG_CHECKING(for gd version via gdlib-config)
--      GD_VERSION=`gdlib-config --version 2>/dev/null`
-+      GD_VERSION=`${GDLIB_CONFIG} --version 2>/dev/null`
-       if test "$?" != "0" -o -z "${GD_VERSION}"; then
-               GD_VERSION="none"
-       fi
-@@ -34,9 +34,9 @@
-               AC_MSG_WARN([[If gd detection fails, upgrade gd or use --with-gd-includes and --with-gd-libs]])
-               ;;
-       *)
--              CFLAGS="`gdlib-config --includes 2>/dev/null`"
--              LDFLAGS="`gdlib-config --ldflags 2>/dev/null`"
--              LIBS="`gdlib-config --libs 2>/dev/null`"
-+              CFLAGS="`${GDLIB_CONFIG} --includes 2>/dev/null`"
-+              LDFLAGS="`${GDLIB_CONFIG} --ldflags 2>/dev/null`"
-+              LIBS="`${GDLIB_CONFIG} --libs 2>/dev/null`"
-               ;;
-       esac
-diff -durN nut-2.6.5.orig/m4/nut_check_libnetsnmp.m4 nut-2.6.5/m4/nut_check_libnetsnmp.m4
---- nut-2.6.5.orig/m4/nut_check_libnetsnmp.m4  2012-07-31 19:38:56.000000000 +0200
-+++ nut-2.6.5/m4/nut_check_libnetsnmp.m4       2013-11-01 16:30:07.398282923 +0100
-@@ -15,7 +15,7 @@
-       dnl See which version of the Net-SNMP library (if any) is installed
-       AC_MSG_CHECKING(for Net-SNMP version via net-snmp-config)
--      SNMP_VERSION=`net-snmp-config --version 2>/dev/null`
-+      SNMP_VERSION=`${NET_SNMP_CONFIG} --version 2>/dev/null`
-       if test "$?" != "0" -o -z "${SNMP_VERSION}"; then
-               SNMP_VERSION="none"
-       fi
-@@ -33,7 +33,7 @@
-                       CFLAGS="${withval}"
-                       ;;
-               esac
--      ], [CFLAGS="`net-snmp-config --base-cflags 2>/dev/null`"])
-+      ], [CFLAGS="`${NET_SNMP_CONFIG} --base-cflags 2>/dev/null`"])
-       AC_MSG_RESULT([${CFLAGS}])
-       AC_MSG_CHECKING(for Net-SNMP libs)
-@@ -48,7 +48,7 @@
-                       LIBS="${withval}"
-                       ;;
-               esac
--      ], [LIBS="`net-snmp-config --libs 2>/dev/null`"])
-+      ], [LIBS="`${NET_SNMP_CONFIG} --libs 2>/dev/null`"])
-       AC_MSG_RESULT([${LIBS}])
-       dnl Check if the Net-SNMP library is usable
diff --git a/package/nut/nut-0002-parallel-build.patch b/package/nut/nut-0002-parallel-build.patch
deleted file mode 100644 (file)
index f979c19..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-conf: fix parallel install
-
-Do not reference the upsmon.conf.sample twice, otherwise install, with
-a high number of make jobs, may fail, like so:
-    http://autobuild.buildroot.net/results/256/2567e13cd5bc702bc3a38a1d6fc8e34022cc7db5/build-end.log
-
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
-
----
-Upstream status:
-    https://github.com/networkupstools/nut/pull/147
-
-diff -durB nut-2.7.2.orig/conf/Makefile.am nut-2.7.2/conf/Makefile.am
---- nut-2.7.2.orig/conf/Makefile.am    2014-02-14 09:56:53.000000000 +0100
-+++ nut-2.7.2/conf/Makefile.am 2014-08-17 11:33:46.804439240 +0200
-@@ -2,7 +2,7 @@
- INSTALL_0600 = $(INSTALL) -m 0600
--SECFILES = upsmon.conf.sample upsd.conf.sample upsd.users.sample
-+SECFILES = upsd.conf.sample upsd.users.sample
- PUBFILES = nut.conf.sample ups.conf.sample
- CGIPUB = hosts.conf.sample upsset.conf.sample upsstats.html.sample    \
-  upsstats-single.html.sample
diff --git a/package/nuttcp/0001-susv3-legacy.patch b/package/nuttcp/0001-susv3-legacy.patch
new file mode 100644 (file)
index 0000000..9a215f8
--- /dev/null
@@ -0,0 +1,264 @@
+[PATCH] Replace susv3 legacy function with modern equivalents
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ nuttcp-6.1.2.c |   90 ++++++++++++++++++++++++++++-----------------------------
+ 1 file changed, 45 insertions(+), 45 deletions(-)
+
+Index: nuttcp-6.1.2/nuttcp-6.1.2.c
+===================================================================
+--- nuttcp-6.1.2.orig/nuttcp-6.1.2.c
++++ nuttcp-6.1.2/nuttcp-6.1.2.c
+@@ -1925,11 +1925,11 @@
+       if (udp && !haverateopt)
+               rate = DEFAULT_UDP_RATE;
+-      bzero((char *)&frominet, sizeof(frominet));
+-      bzero((char *)&clientaddr, sizeof(clientaddr));
++      memset((char *)&frominet, 0, sizeof(frominet));
++      memset((char *)&clientaddr, 0, sizeof(clientaddr));
+ #ifdef AF_INET6
+-      bzero((char *)&clientaddr6, sizeof(clientaddr6));
++      memset((char *)&clientaddr6, 0, sizeof(clientaddr6));
+       clientscope6 = 0;
+ #endif
+@@ -1985,7 +1985,7 @@
+               }
+               while (stream_idx <= nstream) {
+-                      bzero(&hints, sizeof(hints));
++                      memset(&hints, 0, sizeof(hints));
+                       res[stream_idx] = NULL;
+                       if (explicitaf) hints.ai_family = af;
+                       if ((cp2 = strchr(cp1, '/'))) {
+@@ -3013,12 +3013,12 @@
+               if ((stream_idx > 0) && skip_data)
+                       break;
+-              bzero((char *)&sinme[stream_idx], sizeof(sinme[stream_idx]));
+-              bzero((char *)&sinhim[stream_idx], sizeof(sinhim[stream_idx]));
++              memset((char *)&sinme[stream_idx], 0, sizeof(sinme[stream_idx]));
++              memset((char *)&sinhim[stream_idx], 0, sizeof(sinhim[stream_idx]));
+ #ifdef AF_INET6
+-              bzero((char *)&sinme6[stream_idx], sizeof(sinme6[stream_idx]));
+-              bzero((char *)&sinhim6[stream_idx], sizeof(sinhim6[stream_idx]));
++              memset((char *)&sinme6[stream_idx], 0, sizeof(sinme6[stream_idx]));
++              memset((char *)&sinhim6[stream_idx], 0, sizeof(sinhim6[stream_idx]));
+ #endif
+               if (((trans && !reverse) && (stream_idx > 0)) ||
+@@ -3028,15 +3028,15 @@
+                       if (client) {
+                               if (af == AF_INET) {
+                                   sinhim[stream_idx].sin_family = af;
+-                                  bcopy((char *)&(((struct sockaddr_in *)res[stream_idx]->ai_addr)->sin_addr),
+-                                        (char *)&sinhim[stream_idx].sin_addr.s_addr,
++                                  memcpy((char *)&sinhim[stream_idx].sin_addr.s_addr,
++                                        (char *)&(((struct sockaddr_in *)res[stream_idx]->ai_addr)->sin_addr),
+                                         sizeof(sinhim[stream_idx].sin_addr.s_addr));
+                               }
+ #ifdef AF_INET6
+                               else if (af == AF_INET6) {
+                                   sinhim6[stream_idx].sin6_family = af;
+-                                  bcopy((char *)&(((struct sockaddr_in6 *)res[stream_idx]->ai_addr)->sin6_addr),
+-                                        (char *)&sinhim6[stream_idx].sin6_addr.s6_addr,
++                                  memcpy((char *)&sinhim6[stream_idx].sin6_addr.s6_addr,
++                                        (char *)&(((struct sockaddr_in6 *)res[stream_idx]->ai_addr)->sin6_addr),
+                                         sizeof(sinhim6[stream_idx].sin6_addr.s6_addr));
+                                   sinhim6[stream_idx].sin6_scope_id = ((struct sockaddr_in6 *)res[stream_idx]->ai_addr)->sin6_scope_id;
+                               }
+@@ -3113,8 +3113,8 @@
+                                * to the multicast group
+                                */
+                               if (af == AF_INET) {
+-                                  bcopy((char *)&sinhim[1].sin_addr.s_addr,
+-                                      (char *)&save_sinhim.sin_addr.s_addr,
++                                  memcpy((char *)&save_sinhim.sin_addr.s_addr,
++                                      (char *)&sinhim[1].sin_addr.s_addr,
+                                       sizeof(struct in_addr));
+                                   if (!client && (irvers >= 50505)) {
+                                       struct sockaddr_in peer;
+@@ -3124,8 +3124,8 @@
+                                                     &peerlen) < 0) {
+                                               err("getpeername");
+                                       }
+-                                      bcopy((char *)&peer.sin_addr.s_addr,
+-                                          (char *)&sinhim[1].sin_addr.s_addr,
++                                      memcpy((char *)&sinhim[1].sin_addr.s_addr,
++                                          (char *)&peer.sin_addr.s_addr,
+                                           sizeof(struct in_addr));
+                                   }
+                                   else {
+@@ -3136,8 +3136,8 @@
+                                                       &melen) < 0) {
+                                               err("getsockname");
+                                       }
+-                                      bcopy((char *)&me.sin_addr.s_addr,
+-                                          (char *)&sinhim[1].sin_addr.s_addr,
++                                      memcpy((char *)&sinhim[1].sin_addr.s_addr,
++                                          (char *)&me.sin_addr.s_addr,
+                                           sizeof(struct in_addr));
+                                   }
+                                   sinhim[1].sin_addr.s_addr &=
+@@ -4197,13 +4197,13 @@
+                                               &melen) < 0) {
+                                       err("getsockname");
+                               }
+-                              bcopy((char *)&me.sin_addr.s_addr,
+-                                    (char *)&mc_group.imr_multiaddr.s_addr,
++                              memcpy((char *)&mc_group.imr_multiaddr.s_addr,
++                                    (char *)&me.sin_addr.s_addr,
+                                     sizeof(struct in_addr));
+                       }
+                       else {
+-                              bcopy((char *)&peer.sin_addr.s_addr,
+-                                    (char *)&mc_group.imr_multiaddr.s_addr,
++                              memcpy((char *)&mc_group.imr_multiaddr.s_addr,
++                                    (char *)&peer.sin_addr.s_addr,
+                                     sizeof(struct in_addr));
+                       }
+                       mc_group.imr_multiaddr.s_addr &= htonl(0xFFFFFF);
+@@ -4330,12 +4330,12 @@
+                       if(udp) {
+                               strcpy(buf, "BOD0");
+                               if (multicast) {
+-                                  bcopy((char *)&sinhim[1].sin_addr.s_addr,
+-                                        (char *)&save_mc.sin_addr.s_addr,
+-                                        sizeof(struct in_addr));
+-                                  bcopy((char *)&save_sinhim.sin_addr.s_addr,
++                                  memcpy((char *)&save_mc.sin_addr.s_addr,
+                                         (char *)&sinhim[1].sin_addr.s_addr,
+                                         sizeof(struct in_addr));
++                                  memcpy((char *)&sinhim[1].sin_addr.s_addr,
++                                        (char *)&save_sinhim.sin_addr.s_addr,
++                                        sizeof(struct in_addr));
+                               }
+                               (void)Nwrite( fd[stream_idx + 1], buf, 4 ); /* rcvr start */
+                               if (two_bod) {
+@@ -4344,8 +4344,8 @@
+                                       (void)Nwrite( fd[stream_idx + 1], buf, 4 ); /* rcvr start */
+                               }
+                               if (multicast) {
+-                                  bcopy((char *)&save_mc.sin_addr.s_addr,
+-                                        (char *)&sinhim[1].sin_addr.s_addr,
++                                  memcpy((char *)&sinhim[1].sin_addr.s_addr,
++                                        (char *)&save_mc.sin_addr.s_addr,
+                                         sizeof(struct in_addr));
+                               }
+                               if (timeout)
+@@ -4361,7 +4361,7 @@
+                               fflush(stdout);
+                       }
+                       if (udplossinfo)
+-                              bcopy(&nbytes, buf + 24, 8);
++                              memcpy(buf + 24, &nbytes, 8);
+                       if (!udp && interval && !(format & NORETRANS) &&
+                           ((retransinfo == 1) ||
+                            ((retransinfo >= 2) &&
+@@ -4372,13 +4372,13 @@
+                                       tmp = 0x5254524Eu;      /* "RTRN" */
+                               else
+                                       tmp = 0x48525452u;      /* "HRTR" */
+-                              bcopy(&nretrans, buf + 24, 4);
+-                              bcopy(&tmp, buf + 28, 4);
++                              memcpy(buf + 24, &nretrans, 4);
++                              memcpy(buf + 28, &tmp, 4);
+                       }
+                       else {
+                               send_retrans = 0;
+                               if (!udp)
+-                                      bzero(buf + 24, 8);
++                                      memset(buf + 24, 0, 8);
+                       }
+                       if (nbuf == INT_MAX)
+                               nbuf = ULLONG_MAX;
+@@ -4423,12 +4423,12 @@
+                               nbytes += buflen;
+                               cnt = 0;
+                               if (udplossinfo)
+-                                      bcopy(&nbytes, buf + 24, 8);
++                                      memcpy(buf + 24, &nbytes, 8);
+                               if (send_retrans) {
+                                       nretrans = get_retrans(
+                                                       fd[stream_idx + 1]);
+                                       nretrans -= iretrans;
+-                                      bcopy(&nretrans, buf + 24, 4);
++                                      memcpy(buf + 24, &nretrans, 4);
+                               }
+                               stream_idx++;
+                               stream_idx = stream_idx % nstream;
+@@ -4523,8 +4523,8 @@
+                               nbytes += cnt;
+                       if(udp) {
+                               if (multicast)
+-                                  bcopy((char *)&save_sinhim.sin_addr.s_addr,
+-                                        (char *)&sinhim[1].sin_addr.s_addr,
++                                  memcpy((char *)&sinhim[1].sin_addr.s_addr,
++                                        (char *)&save_sinhim.sin_addr.s_addr,
+                                         sizeof(struct in_addr));
+                               strcpy(buf, "EOD0");
+                               (void)Nwrite( fd[stream_idx + 1], buf, 4 ); /* rcvr end */
+@@ -4532,7 +4532,7 @@
+               } else {
+                       first_read = 1;
+                       need_swap = 0;
+-                      bzero(buf + 24, 8);
++                      memset(buf + 24, 0, 8);
+                       if (udp) {
+                           ntbytesc = 0;
+                           got_eod0 = 0;
+@@ -4584,7 +4584,7 @@
+                                    * goes off right here */
+                                   if (udplossinfo) {
+                                           if (first_read) {
+-                                                  bcopy(buf + 24, &ntbytesc,
++                                                  memcpy(&ntbytesc, buf + 24,
+                                                               8);
+                                                   first_read = 0;
+                                                   if (ntbytesc > 0x100000000ull)
+@@ -4598,7 +4598,7 @@
+                                                   }
+                                           }
+                                           if (!need_swap)
+-                                                  bcopy(buf + 24, &ntbytesc,
++                                                  memcpy(&ntbytesc, buf + 24,
+                                                               8);
+                                           else {
+                                                   cp1 = (char *)&ntbytesc;
+@@ -4627,8 +4627,8 @@
+                                           uint32_t tmp;
+                                           first_read = 0;
+-                                          bcopy(buf + 24, &nretrans, 4);
+-                                          bcopy(buf + 28, &tmp, 4);
++                                          memcpy(&nretrans, buf + 24, 4);
++                                          memcpy(&tmp, buf + 28, 4);
+                                           if (tmp == 0x5254524Eu) {
+                                                   /* "RTRN" */
+                                                   retransinfo = 1;
+@@ -4661,7 +4661,7 @@
+                                   }
+                                   if (read_retrans) {
+                                           if (!need_swap)
+-                                                  bcopy(buf + 24, &nretrans,
++                                                  memcpy(&nretrans, buf + 24,
+                                                               4);
+                                           else {
+                                                   cp1 = (char *)&nretrans;
+@@ -5327,10 +5327,10 @@
+               itimer.it_interval.tv_usec = 0;
+               setitimer(ITIMER_REAL, &itimer, 0);
+               signal(SIGALRM, SIG_DFL);
+-              bzero((char *)&frominet, sizeof(frominet));
+-              bzero((char *)&clientaddr, sizeof(clientaddr));
++              memset((char *)&frominet, 0, sizeof(frominet));
++              memset((char *)&clientaddr, 0, sizeof(clientaddr));
+ #ifdef AF_INET6
+-              bzero((char *)&clientaddr6, sizeof(clientaddr));
++              memset((char *)&clientaddr6, 0, sizeof(clientaddr));
+               clientscope6 = 0;
+ #endif
+               cput = 0.000001;
diff --git a/package/nuttcp/nuttcp-6.1.2-susv3-legacy.patch b/package/nuttcp/nuttcp-6.1.2-susv3-legacy.patch
deleted file mode 100644 (file)
index 9a215f8..0000000
+++ /dev/null
@@ -1,264 +0,0 @@
-[PATCH] Replace susv3 legacy function with modern equivalents
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- nuttcp-6.1.2.c |   90 ++++++++++++++++++++++++++++-----------------------------
- 1 file changed, 45 insertions(+), 45 deletions(-)
-
-Index: nuttcp-6.1.2/nuttcp-6.1.2.c
-===================================================================
---- nuttcp-6.1.2.orig/nuttcp-6.1.2.c
-+++ nuttcp-6.1.2/nuttcp-6.1.2.c
-@@ -1925,11 +1925,11 @@
-       if (udp && !haverateopt)
-               rate = DEFAULT_UDP_RATE;
--      bzero((char *)&frominet, sizeof(frominet));
--      bzero((char *)&clientaddr, sizeof(clientaddr));
-+      memset((char *)&frominet, 0, sizeof(frominet));
-+      memset((char *)&clientaddr, 0, sizeof(clientaddr));
- #ifdef AF_INET6
--      bzero((char *)&clientaddr6, sizeof(clientaddr6));
-+      memset((char *)&clientaddr6, 0, sizeof(clientaddr6));
-       clientscope6 = 0;
- #endif
-@@ -1985,7 +1985,7 @@
-               }
-               while (stream_idx <= nstream) {
--                      bzero(&hints, sizeof(hints));
-+                      memset(&hints, 0, sizeof(hints));
-                       res[stream_idx] = NULL;
-                       if (explicitaf) hints.ai_family = af;
-                       if ((cp2 = strchr(cp1, '/'))) {
-@@ -3013,12 +3013,12 @@
-               if ((stream_idx > 0) && skip_data)
-                       break;
--              bzero((char *)&sinme[stream_idx], sizeof(sinme[stream_idx]));
--              bzero((char *)&sinhim[stream_idx], sizeof(sinhim[stream_idx]));
-+              memset((char *)&sinme[stream_idx], 0, sizeof(sinme[stream_idx]));
-+              memset((char *)&sinhim[stream_idx], 0, sizeof(sinhim[stream_idx]));
- #ifdef AF_INET6
--              bzero((char *)&sinme6[stream_idx], sizeof(sinme6[stream_idx]));
--              bzero((char *)&sinhim6[stream_idx], sizeof(sinhim6[stream_idx]));
-+              memset((char *)&sinme6[stream_idx], 0, sizeof(sinme6[stream_idx]));
-+              memset((char *)&sinhim6[stream_idx], 0, sizeof(sinhim6[stream_idx]));
- #endif
-               if (((trans && !reverse) && (stream_idx > 0)) ||
-@@ -3028,15 +3028,15 @@
-                       if (client) {
-                               if (af == AF_INET) {
-                                   sinhim[stream_idx].sin_family = af;
--                                  bcopy((char *)&(((struct sockaddr_in *)res[stream_idx]->ai_addr)->sin_addr),
--                                        (char *)&sinhim[stream_idx].sin_addr.s_addr,
-+                                  memcpy((char *)&sinhim[stream_idx].sin_addr.s_addr,
-+                                        (char *)&(((struct sockaddr_in *)res[stream_idx]->ai_addr)->sin_addr),
-                                         sizeof(sinhim[stream_idx].sin_addr.s_addr));
-                               }
- #ifdef AF_INET6
-                               else if (af == AF_INET6) {
-                                   sinhim6[stream_idx].sin6_family = af;
--                                  bcopy((char *)&(((struct sockaddr_in6 *)res[stream_idx]->ai_addr)->sin6_addr),
--                                        (char *)&sinhim6[stream_idx].sin6_addr.s6_addr,
-+                                  memcpy((char *)&sinhim6[stream_idx].sin6_addr.s6_addr,
-+                                        (char *)&(((struct sockaddr_in6 *)res[stream_idx]->ai_addr)->sin6_addr),
-                                         sizeof(sinhim6[stream_idx].sin6_addr.s6_addr));
-                                   sinhim6[stream_idx].sin6_scope_id = ((struct sockaddr_in6 *)res[stream_idx]->ai_addr)->sin6_scope_id;
-                               }
-@@ -3113,8 +3113,8 @@
-                                * to the multicast group
-                                */
-                               if (af == AF_INET) {
--                                  bcopy((char *)&sinhim[1].sin_addr.s_addr,
--                                      (char *)&save_sinhim.sin_addr.s_addr,
-+                                  memcpy((char *)&save_sinhim.sin_addr.s_addr,
-+                                      (char *)&sinhim[1].sin_addr.s_addr,
-                                       sizeof(struct in_addr));
-                                   if (!client && (irvers >= 50505)) {
-                                       struct sockaddr_in peer;
-@@ -3124,8 +3124,8 @@
-                                                     &peerlen) < 0) {
-                                               err("getpeername");
-                                       }
--                                      bcopy((char *)&peer.sin_addr.s_addr,
--                                          (char *)&sinhim[1].sin_addr.s_addr,
-+                                      memcpy((char *)&sinhim[1].sin_addr.s_addr,
-+                                          (char *)&peer.sin_addr.s_addr,
-                                           sizeof(struct in_addr));
-                                   }
-                                   else {
-@@ -3136,8 +3136,8 @@
-                                                       &melen) < 0) {
-                                               err("getsockname");
-                                       }
--                                      bcopy((char *)&me.sin_addr.s_addr,
--                                          (char *)&sinhim[1].sin_addr.s_addr,
-+                                      memcpy((char *)&sinhim[1].sin_addr.s_addr,
-+                                          (char *)&me.sin_addr.s_addr,
-                                           sizeof(struct in_addr));
-                                   }
-                                   sinhim[1].sin_addr.s_addr &=
-@@ -4197,13 +4197,13 @@
-                                               &melen) < 0) {
-                                       err("getsockname");
-                               }
--                              bcopy((char *)&me.sin_addr.s_addr,
--                                    (char *)&mc_group.imr_multiaddr.s_addr,
-+                              memcpy((char *)&mc_group.imr_multiaddr.s_addr,
-+                                    (char *)&me.sin_addr.s_addr,
-                                     sizeof(struct in_addr));
-                       }
-                       else {
--                              bcopy((char *)&peer.sin_addr.s_addr,
--                                    (char *)&mc_group.imr_multiaddr.s_addr,
-+                              memcpy((char *)&mc_group.imr_multiaddr.s_addr,
-+                                    (char *)&peer.sin_addr.s_addr,
-                                     sizeof(struct in_addr));
-                       }
-                       mc_group.imr_multiaddr.s_addr &= htonl(0xFFFFFF);
-@@ -4330,12 +4330,12 @@
-                       if(udp) {
-                               strcpy(buf, "BOD0");
-                               if (multicast) {
--                                  bcopy((char *)&sinhim[1].sin_addr.s_addr,
--                                        (char *)&save_mc.sin_addr.s_addr,
--                                        sizeof(struct in_addr));
--                                  bcopy((char *)&save_sinhim.sin_addr.s_addr,
-+                                  memcpy((char *)&save_mc.sin_addr.s_addr,
-                                         (char *)&sinhim[1].sin_addr.s_addr,
-                                         sizeof(struct in_addr));
-+                                  memcpy((char *)&sinhim[1].sin_addr.s_addr,
-+                                        (char *)&save_sinhim.sin_addr.s_addr,
-+                                        sizeof(struct in_addr));
-                               }
-                               (void)Nwrite( fd[stream_idx + 1], buf, 4 ); /* rcvr start */
-                               if (two_bod) {
-@@ -4344,8 +4344,8 @@
-                                       (void)Nwrite( fd[stream_idx + 1], buf, 4 ); /* rcvr start */
-                               }
-                               if (multicast) {
--                                  bcopy((char *)&save_mc.sin_addr.s_addr,
--                                        (char *)&sinhim[1].sin_addr.s_addr,
-+                                  memcpy((char *)&sinhim[1].sin_addr.s_addr,
-+                                        (char *)&save_mc.sin_addr.s_addr,
-                                         sizeof(struct in_addr));
-                               }
-                               if (timeout)
-@@ -4361,7 +4361,7 @@
-                               fflush(stdout);
-                       }
-                       if (udplossinfo)
--                              bcopy(&nbytes, buf + 24, 8);
-+                              memcpy(buf + 24, &nbytes, 8);
-                       if (!udp && interval && !(format & NORETRANS) &&
-                           ((retransinfo == 1) ||
-                            ((retransinfo >= 2) &&
-@@ -4372,13 +4372,13 @@
-                                       tmp = 0x5254524Eu;      /* "RTRN" */
-                               else
-                                       tmp = 0x48525452u;      /* "HRTR" */
--                              bcopy(&nretrans, buf + 24, 4);
--                              bcopy(&tmp, buf + 28, 4);
-+                              memcpy(buf + 24, &nretrans, 4);
-+                              memcpy(buf + 28, &tmp, 4);
-                       }
-                       else {
-                               send_retrans = 0;
-                               if (!udp)
--                                      bzero(buf + 24, 8);
-+                                      memset(buf + 24, 0, 8);
-                       }
-                       if (nbuf == INT_MAX)
-                               nbuf = ULLONG_MAX;
-@@ -4423,12 +4423,12 @@
-                               nbytes += buflen;
-                               cnt = 0;
-                               if (udplossinfo)
--                                      bcopy(&nbytes, buf + 24, 8);
-+                                      memcpy(buf + 24, &nbytes, 8);
-                               if (send_retrans) {
-                                       nretrans = get_retrans(
-                                                       fd[stream_idx + 1]);
-                                       nretrans -= iretrans;
--                                      bcopy(&nretrans, buf + 24, 4);
-+                                      memcpy(buf + 24, &nretrans, 4);
-                               }
-                               stream_idx++;
-                               stream_idx = stream_idx % nstream;
-@@ -4523,8 +4523,8 @@
-                               nbytes += cnt;
-                       if(udp) {
-                               if (multicast)
--                                  bcopy((char *)&save_sinhim.sin_addr.s_addr,
--                                        (char *)&sinhim[1].sin_addr.s_addr,
-+                                  memcpy((char *)&sinhim[1].sin_addr.s_addr,
-+                                        (char *)&save_sinhim.sin_addr.s_addr,
-                                         sizeof(struct in_addr));
-                               strcpy(buf, "EOD0");
-                               (void)Nwrite( fd[stream_idx + 1], buf, 4 ); /* rcvr end */
-@@ -4532,7 +4532,7 @@
-               } else {
-                       first_read = 1;
-                       need_swap = 0;
--                      bzero(buf + 24, 8);
-+                      memset(buf + 24, 0, 8);
-                       if (udp) {
-                           ntbytesc = 0;
-                           got_eod0 = 0;
-@@ -4584,7 +4584,7 @@
-                                    * goes off right here */
-                                   if (udplossinfo) {
-                                           if (first_read) {
--                                                  bcopy(buf + 24, &ntbytesc,
-+                                                  memcpy(&ntbytesc, buf + 24,
-                                                               8);
-                                                   first_read = 0;
-                                                   if (ntbytesc > 0x100000000ull)
-@@ -4598,7 +4598,7 @@
-                                                   }
-                                           }
-                                           if (!need_swap)
--                                                  bcopy(buf + 24, &ntbytesc,
-+                                                  memcpy(&ntbytesc, buf + 24,
-                                                               8);
-                                           else {
-                                                   cp1 = (char *)&ntbytesc;
-@@ -4627,8 +4627,8 @@
-                                           uint32_t tmp;
-                                           first_read = 0;
--                                          bcopy(buf + 24, &nretrans, 4);
--                                          bcopy(buf + 28, &tmp, 4);
-+                                          memcpy(&nretrans, buf + 24, 4);
-+                                          memcpy(&tmp, buf + 28, 4);
-                                           if (tmp == 0x5254524Eu) {
-                                                   /* "RTRN" */
-                                                   retransinfo = 1;
-@@ -4661,7 +4661,7 @@
-                                   }
-                                   if (read_retrans) {
-                                           if (!need_swap)
--                                                  bcopy(buf + 24, &nretrans,
-+                                                  memcpy(&nretrans, buf + 24,
-                                                               4);
-                                           else {
-                                                   cp1 = (char *)&nretrans;
-@@ -5327,10 +5327,10 @@
-               itimer.it_interval.tv_usec = 0;
-               setitimer(ITIMER_REAL, &itimer, 0);
-               signal(SIGALRM, SIG_DFL);
--              bzero((char *)&frominet, sizeof(frominet));
--              bzero((char *)&clientaddr, sizeof(clientaddr));
-+              memset((char *)&frominet, 0, sizeof(frominet));
-+              memset((char *)&clientaddr, 0, sizeof(clientaddr));
- #ifdef AF_INET6
--              bzero((char *)&clientaddr6, sizeof(clientaddr));
-+              memset((char *)&clientaddr6, 0, sizeof(clientaddr));
-               clientscope6 = 0;
- #endif
-               cput = 0.000001;
diff --git a/package/ocf-linux/0001-modules-cross.patch b/package/ocf-linux/0001-modules-cross.patch
new file mode 100644 (file)
index 0000000..f80ef06
--- /dev/null
@@ -0,0 +1,42 @@
+Remove the OCF linux kernel extension instead opting to build ocf-linux
+modules out of tree.
+This is easier for users since no kernel config tweaking is required.
+On the downside the OCF drivers can't be used, but then all of the
+kernel crypto drivers are available to users via cryptosoft which is
+preferred.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura ocf-linux-20120127.orig/ocf/Makefile ocf-linux-20120127/ocf/Makefile
+--- ocf-linux-20120127.orig/ocf/Makefile       2013-04-27 09:27:04.413911866 -0300
++++ ocf-linux-20120127/ocf/Makefile    2013-04-27 09:27:31.131775576 -0300
+@@ -2,6 +2,7 @@
+ -include $(ROOTDIR)/modules/.config
+
+ OCF_OBJS = crypto.o criov.o
++KDIR ?= /lib/modules/$(shell uname -r)/build
+
+ ifdef CONFIG_OCF_RANDOMHARVEST
+       OCF_OBJS += random.o
+@@ -78,20 +79,13 @@
+ #
+
+ ocf_make:
+-      make -C /lib/modules/$(shell uname -r)/build M=`pwd` $(OCF_TARGET) CONFIG_OCF_OCF=m
+-      make -C /lib/modules/$(shell uname -r)/build M=`pwd` $(OCF_TARGET) CONFIG_OCF_OCF=m CONFIG_OCF_CRYPTOSOFT=m
+-      -make -C /lib/modules/$(shell uname -r)/build M=`pwd` $(OCF_TARGET) CONFIG_OCF_OCF=m CONFIG_OCF_BENCH=m
+-      -make -C /lib/modules/$(shell uname -r)/build M=`pwd` $(OCF_TARGET) CONFIG_OCF_OCF=m CONFIG_OCF_OCFNULL=m
+-      -make -C /lib/modules/$(shell uname -r)/build M=`pwd` $(OCF_TARGET) CONFIG_OCF_OCF=m CONFIG_OCF_HIFN=m
++      make -C $(KDIR) M=`pwd` $(OCF_TARGET) CONFIG_OCF_OCF=m CONFIG_OCF_CRYPTOSOFT=m CONFIG_OCF_BENCH=m CONFIG_OCF_OCFNULL=m
+
+ ocf_modules:
+       $(MAKE) ocf_make OCF_TARGET=modules
+
+ ocf_install:
+       $(MAKE) ocf_make OCF_TARGET="modules modules_install"
+-      depmod
+-      mkdir -p /usr/include/crypto
+-      cp cryptodev.h /usr/include/crypto/.
+
+ #
+ # generate full kernel patches for 2.4 and 2.6 kernels to make patching
diff --git a/package/ocf-linux/ocf-linux-01-modules-cross.patch b/package/ocf-linux/ocf-linux-01-modules-cross.patch
deleted file mode 100644 (file)
index f80ef06..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-Remove the OCF linux kernel extension instead opting to build ocf-linux
-modules out of tree.
-This is easier for users since no kernel config tweaking is required.
-On the downside the OCF drivers can't be used, but then all of the
-kernel crypto drivers are available to users via cryptosoft which is
-preferred.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura ocf-linux-20120127.orig/ocf/Makefile ocf-linux-20120127/ocf/Makefile
---- ocf-linux-20120127.orig/ocf/Makefile       2013-04-27 09:27:04.413911866 -0300
-+++ ocf-linux-20120127/ocf/Makefile    2013-04-27 09:27:31.131775576 -0300
-@@ -2,6 +2,7 @@
- -include $(ROOTDIR)/modules/.config
-
- OCF_OBJS = crypto.o criov.o
-+KDIR ?= /lib/modules/$(shell uname -r)/build
-
- ifdef CONFIG_OCF_RANDOMHARVEST
-       OCF_OBJS += random.o
-@@ -78,20 +79,13 @@
- #
-
- ocf_make:
--      make -C /lib/modules/$(shell uname -r)/build M=`pwd` $(OCF_TARGET) CONFIG_OCF_OCF=m
--      make -C /lib/modules/$(shell uname -r)/build M=`pwd` $(OCF_TARGET) CONFIG_OCF_OCF=m CONFIG_OCF_CRYPTOSOFT=m
--      -make -C /lib/modules/$(shell uname -r)/build M=`pwd` $(OCF_TARGET) CONFIG_OCF_OCF=m CONFIG_OCF_BENCH=m
--      -make -C /lib/modules/$(shell uname -r)/build M=`pwd` $(OCF_TARGET) CONFIG_OCF_OCF=m CONFIG_OCF_OCFNULL=m
--      -make -C /lib/modules/$(shell uname -r)/build M=`pwd` $(OCF_TARGET) CONFIG_OCF_OCF=m CONFIG_OCF_HIFN=m
-+      make -C $(KDIR) M=`pwd` $(OCF_TARGET) CONFIG_OCF_OCF=m CONFIG_OCF_CRYPTOSOFT=m CONFIG_OCF_BENCH=m CONFIG_OCF_OCFNULL=m
-
- ocf_modules:
-       $(MAKE) ocf_make OCF_TARGET=modules
-
- ocf_install:
-       $(MAKE) ocf_make OCF_TARGET="modules modules_install"
--      depmod
--      mkdir -p /usr/include/crypto
--      cp cryptodev.h /usr/include/crypto/.
-
- #
- # generate full kernel patches for 2.4 and 2.6 kernels to make patching
diff --git a/package/ofono/0001-uclibc-backtrace.patch b/package/ofono/0001-uclibc-backtrace.patch
new file mode 100644 (file)
index 0000000..8499bcf
--- /dev/null
@@ -0,0 +1,44 @@
+[PATCH] fix build on uClibc without UCLIBC_HAS_BACKTRACE
+
+Backtrace support is only used for logging on signal errors, which
+isn't really critical, so simply remove backtrace info if not
+available in uClibc.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ src/log.c |    7 +++++++
+ 1 file changed, 7 insertions(+)
+
+Index: ofono-1.5/src/log.c
+===================================================================
+--- ofono-1.5.orig/src/log.c
++++ ofono-1.5/src/log.c
+@@ -30,7 +30,12 @@
+ #include <stdlib.h>
+ #include <string.h>
+ #include <syslog.h>
++#include <features.h>
++/* backtrace support is optional on uClibc */
++#if !(defined(__UCLIBC__) && !defined (__UCLIBC_HAS_BACKTRACE__))
++#define HAVE_BACKTRACE
+ #include <execinfo.h>
++#endif
+ #include <dlfcn.h>
+ #include "ofono.h"
+@@ -115,6 +120,7 @@
+ static void print_backtrace(unsigned int offset)
+ {
++#ifdef HAVE_BACKTRACE
+       void *frames[99];
+       size_t n_ptrs;
+       unsigned int i;
+@@ -213,6 +219,7 @@
+       close(outfd[1]);
+       close(infd[0]);
++#endif /* HAVE_BACKTRACE */
+ }
+ static void signal_handler(int signo)
diff --git a/package/ofono/ofono-uclibc-backtrace.patch b/package/ofono/ofono-uclibc-backtrace.patch
deleted file mode 100644 (file)
index 8499bcf..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-[PATCH] fix build on uClibc without UCLIBC_HAS_BACKTRACE
-
-Backtrace support is only used for logging on signal errors, which
-isn't really critical, so simply remove backtrace info if not
-available in uClibc.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- src/log.c |    7 +++++++
- 1 file changed, 7 insertions(+)
-
-Index: ofono-1.5/src/log.c
-===================================================================
---- ofono-1.5.orig/src/log.c
-+++ ofono-1.5/src/log.c
-@@ -30,7 +30,12 @@
- #include <stdlib.h>
- #include <string.h>
- #include <syslog.h>
-+#include <features.h>
-+/* backtrace support is optional on uClibc */
-+#if !(defined(__UCLIBC__) && !defined (__UCLIBC_HAS_BACKTRACE__))
-+#define HAVE_BACKTRACE
- #include <execinfo.h>
-+#endif
- #include <dlfcn.h>
- #include "ofono.h"
-@@ -115,6 +120,7 @@
- static void print_backtrace(unsigned int offset)
- {
-+#ifdef HAVE_BACKTRACE
-       void *frames[99];
-       size_t n_ptrs;
-       unsigned int i;
-@@ -213,6 +219,7 @@
-       close(outfd[1]);
-       close(infd[0]);
-+#endif /* HAVE_BACKTRACE */
- }
- static void signal_handler(int signo)
diff --git a/package/open2300/0001-fix-makefile.patch b/package/open2300/0001-fix-makefile.patch
new file mode 100644 (file)
index 0000000..c3bb252
--- /dev/null
@@ -0,0 +1,52 @@
+From b0a1f12349bee43040a889c7e74873cfb253b9d8 Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Thu, 6 Feb 2014 21:42:50 +0100
+Subject: [PATCH] fix makefile
+
+- allow to extend CFLAGS and CC_LDFLAGS
+- remove hard-coded include dirs. and lib. dirs. (which pointed to some
+  location in the host system)
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+---
+ Makefile | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 92a2cc0..1b54175 100755
+--- a/Makefile
++++ b/Makefile
+@@ -37,9 +37,9 @@ MYSQLHISTLOGOBJ = mysqlhistlog2300.o rw2300.o linux2300.o win2300.o
+ VERSION = 1.11
+-CFLAGS = -Wall -O3 -DVERSION=\"$(VERSION)\"
+-CC_LDFLAGS = -lm
+-CC_WINFLAG = 
++override CFLAGS += -Wall -O3 -DVERSION=\"$(VERSION)\"
++override CC_LDFLAGS += -lm
++CC_WINFLAG =
+ # For Windows - comment the two line above and un-comment the two lines below.
+ #CC_LDFLAGS = -lm -lwsock32
+ #CC_WINFLAG = -mwindows
+@@ -80,7 +80,7 @@ xml2300 : $(XMLOBJ)
+       $(CC) $(CFLAGS) -o $@ $(XMLOBJ) $(CC_LDFLAGS) $(CC_WINFLAG)
+ mysql2300:
+-      $(CC) $(CFLAGS) -o mysql2300 mysql2300.c rw2300.c linux2300.c $(CC_LDFLAGS) $(CC_WINFLAG) -I/usr/include/mysql -L/usr/lib/mysql -lmysqlclient
++      $(CC) $(CFLAGS) -o mysql2300 mysql2300.c rw2300.c linux2300.c $(CC_LDFLAGS) $(CC_WINFLAG)
+ pgsql2300: $(PGSQLOBJ)
+       $(CC) $(CFLAGS) -o $@ $(PGSQLOBJ) $(CC_LDFLAGS) $(CC_WINFLAG) -I/usr/include/pgsql -L/usr/lib/pgsql -lpq
+@@ -95,7 +95,7 @@ minmax2300: $(MINMAXOBJ)
+       $(CC) $(CFLAGS) -o $@ $(MINMAXOBJ) $(CC_LDFLAGS) $(CC_WINFLAG)
+       
+ mysqlhistlog2300 :
+-      $(CC) $(CFLAGS) -o mysqlhistlog2300 mysqlhistlog2300.c rw2300.c linux2300.c $(CC_LDFLAGS) $(CC_WINFLAG) -I/usr/include/mysql -L/usr/lib/mysql -lmysqlclient
++      $(CC) $(CFLAGS) -o mysqlhistlog2300 mysqlhistlog2300.c rw2300.c linux2300.c $(CC_LDFLAGS) $(CC_WINFLAG)
+ install:
+-- 
+1.8.5.3
+
diff --git a/package/open2300/open2300-0001-fix-makefile.patch b/package/open2300/open2300-0001-fix-makefile.patch
deleted file mode 100644 (file)
index c3bb252..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-From b0a1f12349bee43040a889c7e74873cfb253b9d8 Mon Sep 17 00:00:00 2001
-From: Samuel Martin <s.martin49@gmail.com>
-Date: Thu, 6 Feb 2014 21:42:50 +0100
-Subject: [PATCH] fix makefile
-
-- allow to extend CFLAGS and CC_LDFLAGS
-- remove hard-coded include dirs. and lib. dirs. (which pointed to some
-  location in the host system)
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
----
- Makefile | 10 +++++-----
- 1 file changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index 92a2cc0..1b54175 100755
---- a/Makefile
-+++ b/Makefile
-@@ -37,9 +37,9 @@ MYSQLHISTLOGOBJ = mysqlhistlog2300.o rw2300.o linux2300.o win2300.o
- VERSION = 1.11
--CFLAGS = -Wall -O3 -DVERSION=\"$(VERSION)\"
--CC_LDFLAGS = -lm
--CC_WINFLAG = 
-+override CFLAGS += -Wall -O3 -DVERSION=\"$(VERSION)\"
-+override CC_LDFLAGS += -lm
-+CC_WINFLAG =
- # For Windows - comment the two line above and un-comment the two lines below.
- #CC_LDFLAGS = -lm -lwsock32
- #CC_WINFLAG = -mwindows
-@@ -80,7 +80,7 @@ xml2300 : $(XMLOBJ)
-       $(CC) $(CFLAGS) -o $@ $(XMLOBJ) $(CC_LDFLAGS) $(CC_WINFLAG)
- mysql2300:
--      $(CC) $(CFLAGS) -o mysql2300 mysql2300.c rw2300.c linux2300.c $(CC_LDFLAGS) $(CC_WINFLAG) -I/usr/include/mysql -L/usr/lib/mysql -lmysqlclient
-+      $(CC) $(CFLAGS) -o mysql2300 mysql2300.c rw2300.c linux2300.c $(CC_LDFLAGS) $(CC_WINFLAG)
- pgsql2300: $(PGSQLOBJ)
-       $(CC) $(CFLAGS) -o $@ $(PGSQLOBJ) $(CC_LDFLAGS) $(CC_WINFLAG) -I/usr/include/pgsql -L/usr/lib/pgsql -lpq
-@@ -95,7 +95,7 @@ minmax2300: $(MINMAXOBJ)
-       $(CC) $(CFLAGS) -o $@ $(MINMAXOBJ) $(CC_LDFLAGS) $(CC_WINFLAG)
-       
- mysqlhistlog2300 :
--      $(CC) $(CFLAGS) -o mysqlhistlog2300 mysqlhistlog2300.c rw2300.c linux2300.c $(CC_LDFLAGS) $(CC_WINFLAG) -I/usr/include/mysql -L/usr/lib/mysql -lmysqlclient
-+      $(CC) $(CFLAGS) -o mysqlhistlog2300 mysqlhistlog2300.c rw2300.c linux2300.c $(CC_LDFLAGS) $(CC_WINFLAG)
- install:
--- 
-1.8.5.3
-
diff --git a/package/openobex/0001-libusb_check_when_cross-compiling.patch b/package/openobex/0001-libusb_check_when_cross-compiling.patch
new file mode 100644 (file)
index 0000000..7b8056a
--- /dev/null
@@ -0,0 +1,18 @@
+Fix libusb check when cross-compiling.
+
+Signed-off-by: Julien Boibessot <julien.boibessot@armadeus.com>
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+
+Index: openobex-1.5/acinclude.m4
+===================================================================
+--- openobex-1.5.orig/acinclude.m4     2010-06-16 10:32:47.000000000 +0200
++++ openobex-1.5/acinclude.m4  2010-06-16 10:35:33.000000000 +0200
+@@ -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/package/openobex/0002-replace_deprecated_functions.patch b/package/openobex/0002-replace_deprecated_functions.patch
new file mode 100644 (file)
index 0000000..17274d3
--- /dev/null
@@ -0,0 +1,30 @@
+obex_test_cable.c: avoid to use SuSv3 LEGACY APIs
+
+Signed-off-by: Julien Boibessot <julien.boibessot@armadeus.com>
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+
+Index: openobex-1.5/apps/obex_test_cable.c
+===================================================================
+--- openobex-1.5.orig/apps/obex_test_cable.c   2009-02-08 19:30:22.000000000 +0100
++++ openobex-1.5/apps/obex_test_cable.c        2010-06-16 11:11:05.000000000 +0200
+@@ -113,9 +113,9 @@
+                       if(total == sizeof(tmpbuf))
+                               return -1;
+-                      if( (answer = index(tmpbuf, '\n')) )    {
++                      if( (answer = strchr(tmpbuf, '\n')) )   {
+                               // Remove first line (echo)
+-                              if( (answer_end = index(answer+1, '\n')) )      {
++                              if( (answer_end = strchr(answer+1, '\n')) )     {
+                                       // Found end of answer
+                                       done = 1;
+                               }
+@@ -178,7 +178,7 @@
+       }
+       tcgetattr(gt->ttyfd, &gt->oldtio);
+-      bzero(&gt->newtio, sizeof(struct termios));
++      memset(&gt->newtio, 0, sizeof(struct termios));
+       gt->newtio.c_cflag = B115200 | CS8 | CREAD | CRTSCTS;
+       gt->newtio.c_iflag = IGNPAR;
+       gt->newtio.c_oflag = 0;
diff --git a/package/openobex/openobex-libusb_check_when_cross-compiling.patch b/package/openobex/openobex-libusb_check_when_cross-compiling.patch
deleted file mode 100644 (file)
index 7b8056a..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-Fix libusb check when cross-compiling.
-
-Signed-off-by: Julien Boibessot <julien.boibessot@armadeus.com>
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
-
-Index: openobex-1.5/acinclude.m4
-===================================================================
---- openobex-1.5.orig/acinclude.m4     2010-06-16 10:32:47.000000000 +0200
-+++ openobex-1.5/acinclude.m4  2010-06-16 10:35:33.000000000 +0200
-@@ -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/package/openobex/openobex-replace_deprecated_functions.patch b/package/openobex/openobex-replace_deprecated_functions.patch
deleted file mode 100644 (file)
index 17274d3..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-obex_test_cable.c: avoid to use SuSv3 LEGACY APIs
-
-Signed-off-by: Julien Boibessot <julien.boibessot@armadeus.com>
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
-
-Index: openobex-1.5/apps/obex_test_cable.c
-===================================================================
---- openobex-1.5.orig/apps/obex_test_cable.c   2009-02-08 19:30:22.000000000 +0100
-+++ openobex-1.5/apps/obex_test_cable.c        2010-06-16 11:11:05.000000000 +0200
-@@ -113,9 +113,9 @@
-                       if(total == sizeof(tmpbuf))
-                               return -1;
--                      if( (answer = index(tmpbuf, '\n')) )    {
-+                      if( (answer = strchr(tmpbuf, '\n')) )   {
-                               // Remove first line (echo)
--                              if( (answer_end = index(answer+1, '\n')) )      {
-+                              if( (answer_end = strchr(answer+1, '\n')) )     {
-                                       // Found end of answer
-                                       done = 1;
-                               }
-@@ -178,7 +178,7 @@
-       }
-       tcgetattr(gt->ttyfd, &gt->oldtio);
--      bzero(&gt->newtio, sizeof(struct termios));
-+      memset(&gt->newtio, 0, sizeof(struct termios));
-       gt->newtio.c_cflag = B115200 | CS8 | CREAD | CRTSCTS;
-       gt->newtio.c_iflag = IGNPAR;
-       gt->newtio.c_oflag = 0;
diff --git a/package/openpgm/0001-version_generator.py-make-it-python3-compliant.patch b/package/openpgm/0001-version_generator.py-make-it-python3-compliant.patch
new file mode 100644 (file)
index 0000000..97cff29
--- /dev/null
@@ -0,0 +1,42 @@
+From e04f5c20fc1536f8e6d4faf32f2f4657d441f7c8 Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Mon, 14 Apr 2014 17:54:37 +0200
+Subject: [PATCH] version_generator.py: make it python3 compliant
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+---
+ openpgm/pgm/version_generator.py | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/openpgm/pgm/version_generator.py b/openpgm/pgm/version_generator.py
+index 2265480..c31376f 100755
+--- a/openpgm/pgm/version_generator.py
++++ b/openpgm/pgm/version_generator.py
+@@ -1,5 +1,7 @@
+ #!/usr/bin/python
++from __future__ import print_function
++
+ import os
+ import platform
+ import time
+@@ -8,7 +10,7 @@ build_date = time.strftime ("%Y-%m-%d")
+ build_time = time.strftime ("%H:%M:%S")
+ build_rev = filter (str.isdigit, "$Revision: 1369 $")
+-print """
++print("""
+ /* vim:ts=8:sts=8:sw=4:noai:noexpandtab
+  * 
+  * OpenPGM version.
+@@ -47,6 +49,6 @@ const char* pgm_build_revision = "%s";
+ /* eof */
+-"""%(build_date, build_time, platform.system(), platform.machine(), build_rev)
++"""%(build_date, build_time, platform.system(), platform.machine(), build_rev))
+ # end of file
+-- 
+1.9.2
+
diff --git a/package/openpgm/0002-cross-compile.patch b/package/openpgm/0002-cross-compile.patch
new file mode 100644 (file)
index 0000000..07a2449
--- /dev/null
@@ -0,0 +1,38 @@
+configure.ac: cross-compilation fix
+
+This patch enables to configure the package when cross-compiling in a way
+recommended by Autoconf manual (see manual for version 2.69, Section 6.6
+Checking Runtime Behavior).
+
+Signed-off-by: Alexander Lukichev <alexander.lukichev@gmail.com>
+
+--- a/openpgm/pgm/configure.ac 2011-09-27 20:59:08.000000000 +0300
++++ b/openpgm/pgm/configure.ac 2013-02-12 10:33:53.000000000 +0200
+@@ -272,14 +272,19 @@ uint32_t add32_with_carry (uint32_t a, u
+       ;;
+ esac
+ # ticket spinlock friendly: unaligned pointers & atomic ops (excl. Sun Pro)
+-AC_MSG_CHECKING([for unaligned pointers])
+-AC_RUN_IFELSE(
+-      [AC_LANG_PROGRAM([[char* nezumi = "mouse";]],
+-              [[short x = *(short*)(nezumi + 2)]])],
+-      [AC_MSG_RESULT([yes])
+-              pgm_unaligned_pointers=yes],
+-      [AC_MSG_RESULT([no])
+-              pgm_unaligned_pointers=no])
++AC_CACHE_CHECK([if unaligned access fails], [ac_cv_lbl_unaligned_fail],
++      [AC_RUN_IFELSE(
++              [AC_LANG_PROGRAM([[char* nezumi = "mouse";]],
++                      [[short x = *(short*)(nezumi + 2)]])],
++              [ac_cv_lbl_unaligned_fail=no],
++              [ac_cv_lbl_unaligned_fail=yes],
++              [ac_cv_lbl_unaligned_fail=yes])
++      ])
++if test "$ac_cv_lbl_unaligned_fail" = yes; then
++      pgm_unaligned_pointers=no
++else
++      pgm_unaligned_pointers=yes
++fi
+ AC_MSG_CHECKING([for intrinsic atomic ops])
+ # AC_PREPROC_IFELSE not always portable
+ AC_COMPILE_IFELSE(
diff --git a/package/openpgm/openpgm-0001-version_generator.py-make-it-python3-compliant.patch b/package/openpgm/openpgm-0001-version_generator.py-make-it-python3-compliant.patch
deleted file mode 100644 (file)
index 97cff29..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-From e04f5c20fc1536f8e6d4faf32f2f4657d441f7c8 Mon Sep 17 00:00:00 2001
-From: Samuel Martin <s.martin49@gmail.com>
-Date: Mon, 14 Apr 2014 17:54:37 +0200
-Subject: [PATCH] version_generator.py: make it python3 compliant
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
----
- openpgm/pgm/version_generator.py | 6 ++++--
- 1 file changed, 4 insertions(+), 2 deletions(-)
-
-diff --git a/openpgm/pgm/version_generator.py b/openpgm/pgm/version_generator.py
-index 2265480..c31376f 100755
---- a/openpgm/pgm/version_generator.py
-+++ b/openpgm/pgm/version_generator.py
-@@ -1,5 +1,7 @@
- #!/usr/bin/python
-+from __future__ import print_function
-+
- import os
- import platform
- import time
-@@ -8,7 +10,7 @@ build_date = time.strftime ("%Y-%m-%d")
- build_time = time.strftime ("%H:%M:%S")
- build_rev = filter (str.isdigit, "$Revision: 1369 $")
--print """
-+print("""
- /* vim:ts=8:sts=8:sw=4:noai:noexpandtab
-  * 
-  * OpenPGM version.
-@@ -47,6 +49,6 @@ const char* pgm_build_revision = "%s";
- /* eof */
--"""%(build_date, build_time, platform.system(), platform.machine(), build_rev)
-+"""%(build_date, build_time, platform.system(), platform.machine(), build_rev))
- # end of file
--- 
-1.9.2
-
diff --git a/package/openpgm/openpgm-cross-compile.patch b/package/openpgm/openpgm-cross-compile.patch
deleted file mode 100644 (file)
index 07a2449..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-configure.ac: cross-compilation fix
-
-This patch enables to configure the package when cross-compiling in a way
-recommended by Autoconf manual (see manual for version 2.69, Section 6.6
-Checking Runtime Behavior).
-
-Signed-off-by: Alexander Lukichev <alexander.lukichev@gmail.com>
-
---- a/openpgm/pgm/configure.ac 2011-09-27 20:59:08.000000000 +0300
-+++ b/openpgm/pgm/configure.ac 2013-02-12 10:33:53.000000000 +0200
-@@ -272,14 +272,19 @@ uint32_t add32_with_carry (uint32_t a, u
-       ;;
- esac
- # ticket spinlock friendly: unaligned pointers & atomic ops (excl. Sun Pro)
--AC_MSG_CHECKING([for unaligned pointers])
--AC_RUN_IFELSE(
--      [AC_LANG_PROGRAM([[char* nezumi = "mouse";]],
--              [[short x = *(short*)(nezumi + 2)]])],
--      [AC_MSG_RESULT([yes])
--              pgm_unaligned_pointers=yes],
--      [AC_MSG_RESULT([no])
--              pgm_unaligned_pointers=no])
-+AC_CACHE_CHECK([if unaligned access fails], [ac_cv_lbl_unaligned_fail],
-+      [AC_RUN_IFELSE(
-+              [AC_LANG_PROGRAM([[char* nezumi = "mouse";]],
-+                      [[short x = *(short*)(nezumi + 2)]])],
-+              [ac_cv_lbl_unaligned_fail=no],
-+              [ac_cv_lbl_unaligned_fail=yes],
-+              [ac_cv_lbl_unaligned_fail=yes])
-+      ])
-+if test "$ac_cv_lbl_unaligned_fail" = yes; then
-+      pgm_unaligned_pointers=no
-+else
-+      pgm_unaligned_pointers=yes
-+fi
- AC_MSG_CHECKING([for intrinsic atomic ops])
- # AC_PREPROC_IFELSE not always portable
- AC_COMPILE_IFELSE(
diff --git a/package/openssh/0001-fix-pam-uclibc-pthreads-clash.patch b/package/openssh/0001-fix-pam-uclibc-pthreads-clash.patch
new file mode 100644 (file)
index 0000000..d9bc6e5
--- /dev/null
@@ -0,0 +1,44 @@
+When PAM is enabled, openssh makes its own static versions of pthreads
+functions.  But when built with a uclibc toolchain, pthreads.h gets
+indirectly included.  The clashing exported and static definitions of
+the pthreads functions then cause a compile error.  This patch fixes
+the problem by changing the static pthread function names with macros
+when the static functions are defined.
+
+Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com>
+
+diff -urN openssh-6.1p1.orig/auth-pam.c openssh-6.1p1/auth-pam.c
+--- openssh-6.1p1.orig/auth-pam.c      2009-07-12 08:07:21.000000000 -0400
++++ openssh-6.1p1/auth-pam.c   2012-09-15 19:49:47.677288199 -0400
+@@ -166,6 +166,7 @@
+               sigdie("PAM: authentication thread exited uncleanly");
+ }
++#define pthread_exit pthread_exit_AVOID_UCLIBC_PTHREAD_CLASH
+ /* ARGSUSED */
+ static void
+ pthread_exit(void *value)
+@@ -173,6 +174,7 @@
+       _exit(0);
+ }
++#define pthread_create pthread_create_AVOID_UCLIBC_PTHREAD_CLASH
+ /* ARGSUSED */
+ static int
+ pthread_create(sp_pthread_t *thread, const void *attr,
+@@ -200,6 +202,7 @@
+       }
+ }
++#define pthread_cancel pthread_cancel_AVOID_UCLIBC_PTHREAD_CLASH
+ static int
+ pthread_cancel(sp_pthread_t thread)
+ {
+@@ -207,6 +210,7 @@
+       return (kill(thread, SIGTERM));
+ }
++#define pthread_join pthread_join_AVOID_UCLIBC_PTHREAD_CLASH
+ /* ARGSUSED */
+ static int
+ pthread_join(sp_pthread_t thread, void **value)
diff --git a/package/openssh/0002-fix-howmany-include.patch b/package/openssh/0002-fix-howmany-include.patch
new file mode 100644 (file)
index 0000000..21675bf
--- /dev/null
@@ -0,0 +1,66 @@
+diff -ru openssh-6.6p1.org/channels.c openssh-6.6p1/channels.c
+--- openssh-6.6p1.org/channels.c       2014-02-27 00:18:33.000000000 +0100
++++ openssh-6.6p1/channels.c   2014-09-12 05:33:43.791424676 +0200
+@@ -41,6 +41,7 @@
+ #include "includes.h"
++#include <sys/param.h>
+ #include <sys/types.h>
+ #include <sys/ioctl.h>
+ #include <sys/un.h>
+diff -ru openssh-6.6p1.org/openbsd-compat/bsd-poll.c openssh-6.6p1/openbsd-compat/bsd-poll.c
+--- openssh-6.6p1.org/openbsd-compat/bsd-poll.c        2014-02-06 00:44:13.000000000 +0100
++++ openssh-6.6p1/openbsd-compat/bsd-poll.c    2014-09-12 05:39:35.580947451 +0200
+@@ -19,6 +19,7 @@
+ #include "includes.h"
+ #if !defined(HAVE_POLL)
++#include <sys/param.h>
+ #include <sys/types.h>
+ #include <sys/time.h>
+ #ifdef HAVE_SYS_SELECT_H
+diff -ru openssh-6.6p1.org/sshconnect.c openssh-6.6p1/sshconnect.c
+--- openssh-6.6p1.org/sshconnect.c     2014-02-06 23:24:34.000000000 +0100
++++ openssh-6.6p1/sshconnect.c 2014-09-12 05:39:57.372236592 +0200
+@@ -15,6 +15,7 @@
+ #include "includes.h"
++#include <sys/param.h>
+ #include <sys/types.h>
+ #include <sys/wait.h>
+ #include <sys/stat.h>
+diff -ru openssh-6.6p1.org/sshd.c openssh-6.6p1/sshd.c
+--- openssh-6.6p1.org/sshd.c   2014-02-27 00:20:08.000000000 +0100
++++ openssh-6.6p1/sshd.c       2014-09-12 05:42:20.233576519 +0200
+@@ -44,6 +44,7 @@
+ #include "includes.h"
++#include <sys/param.h>
+ #include <sys/types.h>
+ #include <sys/ioctl.h>
+ #include <sys/socket.h>
+diff -ru openssh-6.6p1.org/ssh-keyscan.c openssh-6.6p1/ssh-keyscan.c
+--- openssh-6.6p1.org/ssh-keyscan.c    2013-12-07 01:24:02.000000000 +0100
++++ openssh-6.6p1/ssh-keyscan.c        2014-09-12 05:41:03.102092462 +0200
+@@ -10,6 +10,7 @@
+ #include "includes.h"
+  
+ #include "openbsd-compat/sys-queue.h"
++#include <sys/param.h>
+ #include <sys/resource.h>
+ #ifdef HAVE_SYS_TIME_H
+ # include <sys/time.h>
+diff -ru openssh-6.6p1.org/ssh-pkcs11-helper.c openssh-6.6p1/ssh-pkcs11-helper.c
+--- openssh-6.6p1.org/ssh-pkcs11-helper.c      2013-12-05 00:23:21.000000000 +0100
++++ openssh-6.6p1/ssh-pkcs11-helper.c  2014-09-12 05:40:20.488482522 +0200
+@@ -17,6 +17,7 @@
+ #include "includes.h"
++#include <sys/param.h>
+ #include <sys/types.h>
+ #ifdef HAVE_SYS_TIME_H
+ # include <sys/time.h>
diff --git a/package/openssh/openssh-01-fix-pam-uclibc-pthreads-clash.patch b/package/openssh/openssh-01-fix-pam-uclibc-pthreads-clash.patch
deleted file mode 100644 (file)
index d9bc6e5..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-When PAM is enabled, openssh makes its own static versions of pthreads
-functions.  But when built with a uclibc toolchain, pthreads.h gets
-indirectly included.  The clashing exported and static definitions of
-the pthreads functions then cause a compile error.  This patch fixes
-the problem by changing the static pthread function names with macros
-when the static functions are defined.
-
-Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com>
-
-diff -urN openssh-6.1p1.orig/auth-pam.c openssh-6.1p1/auth-pam.c
---- openssh-6.1p1.orig/auth-pam.c      2009-07-12 08:07:21.000000000 -0400
-+++ openssh-6.1p1/auth-pam.c   2012-09-15 19:49:47.677288199 -0400
-@@ -166,6 +166,7 @@
-               sigdie("PAM: authentication thread exited uncleanly");
- }
-+#define pthread_exit pthread_exit_AVOID_UCLIBC_PTHREAD_CLASH
- /* ARGSUSED */
- static void
- pthread_exit(void *value)
-@@ -173,6 +174,7 @@
-       _exit(0);
- }
-+#define pthread_create pthread_create_AVOID_UCLIBC_PTHREAD_CLASH
- /* ARGSUSED */
- static int
- pthread_create(sp_pthread_t *thread, const void *attr,
-@@ -200,6 +202,7 @@
-       }
- }
-+#define pthread_cancel pthread_cancel_AVOID_UCLIBC_PTHREAD_CLASH
- static int
- pthread_cancel(sp_pthread_t thread)
- {
-@@ -207,6 +210,7 @@
-       return (kill(thread, SIGTERM));
- }
-+#define pthread_join pthread_join_AVOID_UCLIBC_PTHREAD_CLASH
- /* ARGSUSED */
- static int
- pthread_join(sp_pthread_t thread, void **value)
diff --git a/package/openssh/openssh-02-fix-howmany-include.patch b/package/openssh/openssh-02-fix-howmany-include.patch
deleted file mode 100644 (file)
index 21675bf..0000000
+++ /dev/null
@@ -1,66 +0,0 @@
-diff -ru openssh-6.6p1.org/channels.c openssh-6.6p1/channels.c
---- openssh-6.6p1.org/channels.c       2014-02-27 00:18:33.000000000 +0100
-+++ openssh-6.6p1/channels.c   2014-09-12 05:33:43.791424676 +0200
-@@ -41,6 +41,7 @@
- #include "includes.h"
-+#include <sys/param.h>
- #include <sys/types.h>
- #include <sys/ioctl.h>
- #include <sys/un.h>
-diff -ru openssh-6.6p1.org/openbsd-compat/bsd-poll.c openssh-6.6p1/openbsd-compat/bsd-poll.c
---- openssh-6.6p1.org/openbsd-compat/bsd-poll.c        2014-02-06 00:44:13.000000000 +0100
-+++ openssh-6.6p1/openbsd-compat/bsd-poll.c    2014-09-12 05:39:35.580947451 +0200
-@@ -19,6 +19,7 @@
- #include "includes.h"
- #if !defined(HAVE_POLL)
-+#include <sys/param.h>
- #include <sys/types.h>
- #include <sys/time.h>
- #ifdef HAVE_SYS_SELECT_H
-diff -ru openssh-6.6p1.org/sshconnect.c openssh-6.6p1/sshconnect.c
---- openssh-6.6p1.org/sshconnect.c     2014-02-06 23:24:34.000000000 +0100
-+++ openssh-6.6p1/sshconnect.c 2014-09-12 05:39:57.372236592 +0200
-@@ -15,6 +15,7 @@
- #include "includes.h"
-+#include <sys/param.h>
- #include <sys/types.h>
- #include <sys/wait.h>
- #include <sys/stat.h>
-diff -ru openssh-6.6p1.org/sshd.c openssh-6.6p1/sshd.c
---- openssh-6.6p1.org/sshd.c   2014-02-27 00:20:08.000000000 +0100
-+++ openssh-6.6p1/sshd.c       2014-09-12 05:42:20.233576519 +0200
-@@ -44,6 +44,7 @@
- #include "includes.h"
-+#include <sys/param.h>
- #include <sys/types.h>
- #include <sys/ioctl.h>
- #include <sys/socket.h>
-diff -ru openssh-6.6p1.org/ssh-keyscan.c openssh-6.6p1/ssh-keyscan.c
---- openssh-6.6p1.org/ssh-keyscan.c    2013-12-07 01:24:02.000000000 +0100
-+++ openssh-6.6p1/ssh-keyscan.c        2014-09-12 05:41:03.102092462 +0200
-@@ -10,6 +10,7 @@
- #include "includes.h"
-  
- #include "openbsd-compat/sys-queue.h"
-+#include <sys/param.h>
- #include <sys/resource.h>
- #ifdef HAVE_SYS_TIME_H
- # include <sys/time.h>
-diff -ru openssh-6.6p1.org/ssh-pkcs11-helper.c openssh-6.6p1/ssh-pkcs11-helper.c
---- openssh-6.6p1.org/ssh-pkcs11-helper.c      2013-12-05 00:23:21.000000000 +0100
-+++ openssh-6.6p1/ssh-pkcs11-helper.c  2014-09-12 05:40:20.488482522 +0200
-@@ -17,6 +17,7 @@
- #include "includes.h"
-+#include <sys/param.h>
- #include <sys/types.h>
- #ifdef HAVE_SYS_TIME_H
- # include <sys/time.h>
diff --git a/package/openvmtools/0001-has_bsd_printf.patch b/package/openvmtools/0001-has_bsd_printf.patch
new file mode 100644 (file)
index 0000000..889f7d1
--- /dev/null
@@ -0,0 +1,26 @@
+lib/misc/msgList.c: missing #ifdef
+
+This macro checks for BSD style printf(), which is not present
+when compiling for uClibc. The linked functions are unnecessary in
+this case, and they break compilation.
+
+Signed-off-by: Karoly Kasza <kaszak@gmail.com>
+
+--- open-vm-tools-9.4.6-1770165.orig/lib/misc/msgList.c        2014-07-02 00:21:14.000000000 +0200
++++ open-vm-tools-9.4.6-1770165/lib/misc/msgList.c     2014-07-29 13:40:40.000000000 +0200
+@@ -487,6 +487,7 @@
+    return messages->id;
+ }
++#ifdef HAS_BSD_PRINTF
+ /*
+  *----------------------------------------------------------------------
+@@ -566,6 +567,7 @@
+    }
+ }
++#endif
+ /*
+  *----------------------------------------------------------------------
diff --git a/package/openvmtools/0002-network_script.patch b/package/openvmtools/0002-network_script.patch
new file mode 100644 (file)
index 0000000..67705cc
--- /dev/null
@@ -0,0 +1,21 @@
+scripts/linux/network: exit normally if no network control script
+
+When using suspend/resume from the hypervisor, openvmtools checks for the
+networking script, and exists with an error if not found, making the hypervisor
+raise a warning message. This workaround silences that error message.
+
+Signed-off-by: Karoly Kasza <kaszak@gmail.com>
+
+--- open-vm-tools-9.4.6-1770165.orig/scripts/linux/network     2014-07-02 00:21:14.000000000 +0200
++++ open-vm-tools-9.4.6-1770165/scripts/linux/network  2014-08-07 16:34:21.963514273 +0200
+@@ -88,7 +88,9 @@
+ run_network_script()
+ {
+    script=`find_networking_script`
+-   [ "$script" != "error" ] || Panic "Cannot find system networking script."
++#   [ "$script" != "error" ] || Panic "Cannot find system networking script."
++# Modified for buildroot
++   [ "$script" != "error" ] || exit 0
+    # Using SysV "service" if it exists, otherwise fall back to run the script directly
+    service=`which service 2>/dev/null`
diff --git a/package/openvmtools/0003-conditionally-define-g_info.patch b/package/openvmtools/0003-conditionally-define-g_info.patch
new file mode 100644 (file)
index 0000000..fa35f29
--- /dev/null
@@ -0,0 +1,28 @@
+conditionally define g_info
+
+glib also defines a g_info macro since 2.39.2, conflicting with the one in
+openvmtools:
+
+https://git.gnome.org/browse/glib/commit/?h=glib-2-40&id=36f1a4ce7ed6df6aa8
+
+Patch from Fedora:
+
+https://bugzilla.redhat.com/show_bug.cgi?id=1063847
+http://pkgs.fedoraproject.org/cgit/open-vm-tools.git/tree/g_info_redefine.patch
+
+Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
+
+diff -uNr open-vm-tools-9.4.0-1280544.orig/lib/include/vmware/tools/log.h open-vm-tools-9.4.0-1280544/lib/include/vmware/tools/log.h
+--- open-vm-tools-9.4.0-1280544.orig/lib/include/vmware/tools/log.h    2013-09-23 19:51:10.000000000 +0400
++++ open-vm-tools-9.4.0-1280544/lib/include/vmware/tools/log.h 2014-02-18 10:56:50.368604176 +0400
+@@ -134,7 +134,9 @@
+  *******************************************************************************
+  */
+-#define g_info(fmt, ...) g_log(G_LOG_DOMAIN, G_LOG_LEVEL_INFO, fmt, ## __VA_ARGS__)
++#if !defined(g_info)
++#  define g_info(fmt, ...) g_log(G_LOG_DOMAIN, G_LOG_LEVEL_INFO, fmt, ## __VA_ARGS__)
++#endif
+ /*
diff --git a/package/openvmtools/0004-no_cflags_werror.patch b/package/openvmtools/0004-no_cflags_werror.patch
new file mode 100644 (file)
index 0000000..96bd355
--- /dev/null
@@ -0,0 +1,17 @@
+configure.ac: disable -Werror
+
+Disable the mandatory flag -Werror in configure.ac.
+
+Signed-off-by: Karoly Kasza <kaszak@gmail.com>
+
+--- open-vm-tools-9.4.6-1770165.orig/configure.ac      2014-07-02 00:21:14.000000000 +0200
++++ open-vm-tools-9.4.6-1770165/configure.ac   2014-09-15 16:03:47.565900402 +0200
+@@ -832,7 +832,7 @@
+ ### General flags / actions
+ CFLAGS="$CFLAGS -Wall"
+-CFLAGS="$CFLAGS -Werror"
++# CFLAGS="$CFLAGS -Werror"
+ # -Wno-unknown-pragmas is due to gcc not understanding '#pragma ident' in Xlib.h on OpenSolaris.
+ for TEST_CFLAG in -Wno-pointer-sign -Wno-unused-value -fno-strict-aliasing \
diff --git a/package/openvmtools/0005-dont-force-cppflags.patch b/package/openvmtools/0005-dont-force-cppflags.patch
new file mode 100644 (file)
index 0000000..8f904b1
--- /dev/null
@@ -0,0 +1,22 @@
+m4: do not force -I/usr/include in CPPFLAGS
+
+This is so horribly broken for cross-compilation. :-(
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+diff -durN openvmtools-9.4.6-1770165.orig/m4/vmtools.m4 openvmtools-9.4.6-1770165/m4/vmtools.m4
+--- openvmtools-9.4.6-1770165.orig/m4/vmtools.m4       2014-07-02 00:21:14.000000000 +0200
++++ openvmtools-9.4.6-1770165/m4/vmtools.m4    2014-09-21 12:39:15.901659888 +0200
+@@ -281,10 +281,10 @@
+       if test "$os" = freebsd; then
+          CUSTOM_$1_CPPFLAGS="-I/usr/local/include"
+       else
+-         CUSTOM_$1_CPPFLAGS="-I/usr/include"
++         CUSTOM_$1_CPPFLAGS=" "
+       fi
+       if test -n "$2"; then
+-         CUSTOM_$1_CPPFLAGS="${CUSTOM_$1_CPPFLAGS}/$2"
++         : CUSTOM_$1_CPPFLAGS="${CUSTOM_$1_CPPFLAGS}/$2"
+       fi
+    fi
+ ])
diff --git a/package/openvmtools/openvmtools-01-has_bsd_printf.patch b/package/openvmtools/openvmtools-01-has_bsd_printf.patch
deleted file mode 100644 (file)
index 889f7d1..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-lib/misc/msgList.c: missing #ifdef
-
-This macro checks for BSD style printf(), which is not present
-when compiling for uClibc. The linked functions are unnecessary in
-this case, and they break compilation.
-
-Signed-off-by: Karoly Kasza <kaszak@gmail.com>
-
---- open-vm-tools-9.4.6-1770165.orig/lib/misc/msgList.c        2014-07-02 00:21:14.000000000 +0200
-+++ open-vm-tools-9.4.6-1770165/lib/misc/msgList.c     2014-07-29 13:40:40.000000000 +0200
-@@ -487,6 +487,7 @@
-    return messages->id;
- }
-+#ifdef HAS_BSD_PRINTF
- /*
-  *----------------------------------------------------------------------
-@@ -566,6 +567,7 @@
-    }
- }
-+#endif
- /*
-  *----------------------------------------------------------------------
diff --git a/package/openvmtools/openvmtools-02-network_script.patch b/package/openvmtools/openvmtools-02-network_script.patch
deleted file mode 100644 (file)
index 67705cc..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-scripts/linux/network: exit normally if no network control script
-
-When using suspend/resume from the hypervisor, openvmtools checks for the
-networking script, and exists with an error if not found, making the hypervisor
-raise a warning message. This workaround silences that error message.
-
-Signed-off-by: Karoly Kasza <kaszak@gmail.com>
-
---- open-vm-tools-9.4.6-1770165.orig/scripts/linux/network     2014-07-02 00:21:14.000000000 +0200
-+++ open-vm-tools-9.4.6-1770165/scripts/linux/network  2014-08-07 16:34:21.963514273 +0200
-@@ -88,7 +88,9 @@
- run_network_script()
- {
-    script=`find_networking_script`
--   [ "$script" != "error" ] || Panic "Cannot find system networking script."
-+#   [ "$script" != "error" ] || Panic "Cannot find system networking script."
-+# Modified for buildroot
-+   [ "$script" != "error" ] || exit 0
-    # Using SysV "service" if it exists, otherwise fall back to run the script directly
-    service=`which service 2>/dev/null`
diff --git a/package/openvmtools/openvmtools-03-conditionally-define-g_info.patch b/package/openvmtools/openvmtools-03-conditionally-define-g_info.patch
deleted file mode 100644 (file)
index fa35f29..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-conditionally define g_info
-
-glib also defines a g_info macro since 2.39.2, conflicting with the one in
-openvmtools:
-
-https://git.gnome.org/browse/glib/commit/?h=glib-2-40&id=36f1a4ce7ed6df6aa8
-
-Patch from Fedora:
-
-https://bugzilla.redhat.com/show_bug.cgi?id=1063847
-http://pkgs.fedoraproject.org/cgit/open-vm-tools.git/tree/g_info_redefine.patch
-
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
-
-diff -uNr open-vm-tools-9.4.0-1280544.orig/lib/include/vmware/tools/log.h open-vm-tools-9.4.0-1280544/lib/include/vmware/tools/log.h
---- open-vm-tools-9.4.0-1280544.orig/lib/include/vmware/tools/log.h    2013-09-23 19:51:10.000000000 +0400
-+++ open-vm-tools-9.4.0-1280544/lib/include/vmware/tools/log.h 2014-02-18 10:56:50.368604176 +0400
-@@ -134,7 +134,9 @@
-  *******************************************************************************
-  */
--#define g_info(fmt, ...) g_log(G_LOG_DOMAIN, G_LOG_LEVEL_INFO, fmt, ## __VA_ARGS__)
-+#if !defined(g_info)
-+#  define g_info(fmt, ...) g_log(G_LOG_DOMAIN, G_LOG_LEVEL_INFO, fmt, ## __VA_ARGS__)
-+#endif
- /*
diff --git a/package/openvmtools/openvmtools-04-no_cflags_werror.patch b/package/openvmtools/openvmtools-04-no_cflags_werror.patch
deleted file mode 100644 (file)
index 96bd355..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-configure.ac: disable -Werror
-
-Disable the mandatory flag -Werror in configure.ac.
-
-Signed-off-by: Karoly Kasza <kaszak@gmail.com>
-
---- open-vm-tools-9.4.6-1770165.orig/configure.ac      2014-07-02 00:21:14.000000000 +0200
-+++ open-vm-tools-9.4.6-1770165/configure.ac   2014-09-15 16:03:47.565900402 +0200
-@@ -832,7 +832,7 @@
- ### General flags / actions
- CFLAGS="$CFLAGS -Wall"
--CFLAGS="$CFLAGS -Werror"
-+# CFLAGS="$CFLAGS -Werror"
- # -Wno-unknown-pragmas is due to gcc not understanding '#pragma ident' in Xlib.h on OpenSolaris.
- for TEST_CFLAG in -Wno-pointer-sign -Wno-unused-value -fno-strict-aliasing \
diff --git a/package/openvmtools/openvmtools-05-dont-force-cppflags.patch b/package/openvmtools/openvmtools-05-dont-force-cppflags.patch
deleted file mode 100644 (file)
index 8f904b1..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-m4: do not force -I/usr/include in CPPFLAGS
-
-This is so horribly broken for cross-compilation. :-(
-
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
-
-diff -durN openvmtools-9.4.6-1770165.orig/m4/vmtools.m4 openvmtools-9.4.6-1770165/m4/vmtools.m4
---- openvmtools-9.4.6-1770165.orig/m4/vmtools.m4       2014-07-02 00:21:14.000000000 +0200
-+++ openvmtools-9.4.6-1770165/m4/vmtools.m4    2014-09-21 12:39:15.901659888 +0200
-@@ -281,10 +281,10 @@
-       if test "$os" = freebsd; then
-          CUSTOM_$1_CPPFLAGS="-I/usr/local/include"
-       else
--         CUSTOM_$1_CPPFLAGS="-I/usr/include"
-+         CUSTOM_$1_CPPFLAGS=" "
-       fi
-       if test -n "$2"; then
--         CUSTOM_$1_CPPFLAGS="${CUSTOM_$1_CPPFLAGS}/$2"
-+         : CUSTOM_$1_CPPFLAGS="${CUSTOM_$1_CPPFLAGS}/$2"
-       fi
-    fi
- ])
diff --git a/package/opus-tools/0001-largefile.patch b/package/opus-tools/0001-largefile.patch
new file mode 100644 (file)
index 0000000..a10fcbc
--- /dev/null
@@ -0,0 +1,37 @@
+From f1d9376b383f4ee7ec2d7c5a1728d38cdb692df6 Mon Sep 17 00:00:00 2001
+From: Peter Korsgaard <jacmet@sunsite.dk>
+Date: Sat, 15 Dec 2012 00:05:41 +0100
+Subject: [PATCH] audio-in.c: Don't force largefile support
+
+Buildroot ensures the correct defines are enabled depending on toolchain
+configuration, so don't hard code largefile support here.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ src/audio-in.c |   10 ----------
+ 1 file changed, 10 deletions(-)
+
+diff --git a/src/audio-in.c b/src/audio-in.c
+index 9bf4f6f..e404629 100644
+--- a/src/audio-in.c
++++ b/src/audio-in.c
+@@ -32,16 +32,6 @@
+ # include <config.h>
+ #endif
+-#if !defined(_LARGEFILE_SOURCE)
+-# define _LARGEFILE_SOURCE
+-#endif
+-#if !defined(_LARGEFILE64_SOURCE)
+-# define _LARGEFILE64_SOURCE
+-#endif
+-#if !defined(_FILE_OFFSET_BITS)
+-# define _FILE_OFFSET_BITS 64
+-#endif
+-
+ #include <stdlib.h>
+ #include <stdio.h>
+ #include <string.h>
+-- 
+1.7.10.4
+
diff --git a/package/opus-tools/opus-tools-largefile.patch b/package/opus-tools/opus-tools-largefile.patch
deleted file mode 100644 (file)
index a10fcbc..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-From f1d9376b383f4ee7ec2d7c5a1728d38cdb692df6 Mon Sep 17 00:00:00 2001
-From: Peter Korsgaard <jacmet@sunsite.dk>
-Date: Sat, 15 Dec 2012 00:05:41 +0100
-Subject: [PATCH] audio-in.c: Don't force largefile support
-
-Buildroot ensures the correct defines are enabled depending on toolchain
-configuration, so don't hard code largefile support here.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- src/audio-in.c |   10 ----------
- 1 file changed, 10 deletions(-)
-
-diff --git a/src/audio-in.c b/src/audio-in.c
-index 9bf4f6f..e404629 100644
---- a/src/audio-in.c
-+++ b/src/audio-in.c
-@@ -32,16 +32,6 @@
- # include <config.h>
- #endif
--#if !defined(_LARGEFILE_SOURCE)
--# define _LARGEFILE_SOURCE
--#endif
--#if !defined(_LARGEFILE64_SOURCE)
--# define _LARGEFILE64_SOURCE
--#endif
--#if !defined(_FILE_OFFSET_BITS)
--# define _FILE_OFFSET_BITS 64
--#endif
--
- #include <stdlib.h>
- #include <stdio.h>
- #include <string.h>
--- 
-1.7.10.4
-
diff --git a/package/opus/0001-configure.ac-fix-bashism-in-ARM-optimization-handling.patch b/package/opus/0001-configure.ac-fix-bashism-in-ARM-optimization-handling.patch
new file mode 100644 (file)
index 0000000..80b9dfc
--- /dev/null
@@ -0,0 +1,43 @@
+From a3d4f4f2385394b822b8f66342de8a1e3b4217bb Mon Sep 17 00:00:00 2001
+From: Peter Korsgaard <peter@korsgaard.com>
+Date: Sun, 8 Dec 2013 10:54:25 +0100
+Subject: [PATCH] configure.ac: fix bashism in ARM optimization handling
+
+Submitted upstream:
+http://lists.xiph.org/pipermail/opus/2013-December/002422.html
+
+Breaks configure when /bin/sh isn't bash with:
+
+configure: Trying to force-enable ARMv6 media instructions...
+checking if assembler supports ARMv6 media instructions on ARM... yes
+configure: Trying to force-enable NEON instructions...
+checking if assembler supports NEON instructions on ARM... yes
+./configure.lineno: 12799: Bad substitution
+
+Fix it by using the %% expansion to remove everything from the first
+space instead.
+
+Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
+---
+ configure.ac | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 0ba4a80..443362f 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -333,9 +333,9 @@ AS_IF([test x"${enable_asm}" = x"yes"],[
+ AM_CONDITIONAL([CPU_ARM], [test "$cpu_arm" = "yes"])
+ AM_CONDITIONAL([OPUS_ARM_INLINE_ASM],
+-    [test x"${inline_optimization:0:3}" = x"ARM"])
++    [test x"${inline_optimization%% *}" = x"ARM"])
+ AM_CONDITIONAL([OPUS_ARM_EXTERNAL_ASM],
+-    [test x"${asm_optimization:0:3}" = x"ARM"])
++    [test x"${asm_optimization%% *}" = x"ARM"])
+ AS_IF([test x"$enable_rtcd" = x"yes"],[
+     AS_IF([test x"$rtcd_support" != x"no"],[
+-- 
+1.8.4.rc3
+
diff --git a/package/opus/opus-01-configure.ac-fix-bashism-in-ARM-optimization-handling.patch b/package/opus/opus-01-configure.ac-fix-bashism-in-ARM-optimization-handling.patch
deleted file mode 100644 (file)
index 80b9dfc..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-From a3d4f4f2385394b822b8f66342de8a1e3b4217bb Mon Sep 17 00:00:00 2001
-From: Peter Korsgaard <peter@korsgaard.com>
-Date: Sun, 8 Dec 2013 10:54:25 +0100
-Subject: [PATCH] configure.ac: fix bashism in ARM optimization handling
-
-Submitted upstream:
-http://lists.xiph.org/pipermail/opus/2013-December/002422.html
-
-Breaks configure when /bin/sh isn't bash with:
-
-configure: Trying to force-enable ARMv6 media instructions...
-checking if assembler supports ARMv6 media instructions on ARM... yes
-configure: Trying to force-enable NEON instructions...
-checking if assembler supports NEON instructions on ARM... yes
-./configure.lineno: 12799: Bad substitution
-
-Fix it by using the %% expansion to remove everything from the first
-space instead.
-
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- configure.ac | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 0ba4a80..443362f 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -333,9 +333,9 @@ AS_IF([test x"${enable_asm}" = x"yes"],[
- AM_CONDITIONAL([CPU_ARM], [test "$cpu_arm" = "yes"])
- AM_CONDITIONAL([OPUS_ARM_INLINE_ASM],
--    [test x"${inline_optimization:0:3}" = x"ARM"])
-+    [test x"${inline_optimization%% *}" = x"ARM"])
- AM_CONDITIONAL([OPUS_ARM_EXTERNAL_ASM],
--    [test x"${asm_optimization:0:3}" = x"ARM"])
-+    [test x"${asm_optimization%% *}" = x"ARM"])
- AS_IF([test x"$enable_rtcd" = x"yes"],[
-     AS_IF([test x"$rtcd_support" != x"no"],[
--- 
-1.8.4.rc3
-
diff --git a/package/owl-linux/0001-fix-CROSS_COMPILE-usage-in-Makefile.patch b/package/owl-linux/0001-fix-CROSS_COMPILE-usage-in-Makefile.patch
new file mode 100644 (file)
index 0000000..14b4631
--- /dev/null
@@ -0,0 +1,16 @@
+Fix the owl-linux Makefile so that it protects spaces in the CROSS_COMPILE
+variable. For example, this variable will contain spaces if ccache is used.
+
+Signed-off-by: Simon Dawson <spdawson@gmail.com>
+diff -Nurp a/Makefile b/Makefile
+--- a/Makefile 2012-06-14 10:51:45.000000000 +0100
++++ b/Makefile 2012-07-20 10:46:41.636752148 +0100
+@@ -35,7 +35,7 @@ else
+       PWD := $(shell pwd)
+ default:
+-      $(MAKE) -C $(KERNELDIR) ARCH=$(ARCH) CROSS_COMPILE=$(CROSS_COMPILE) M=$(PWD) MODE=$(MODE) modules
++      $(MAKE) -C $(KERNELDIR) ARCH=$(ARCH) CROSS_COMPILE="$(CROSS_COMPILE)" M=$(PWD) MODE=$(MODE) modules
+ clean: 
+       -rm -f *.o *.mod.c *.ko modules.order Module.symvers
diff --git a/package/owl-linux/0002-fix-for-linux-3.3.x.patch b/package/owl-linux/0002-fix-for-linux-3.3.x.patch
new file mode 100644 (file)
index 0000000..831ac7f
--- /dev/null
@@ -0,0 +1,21 @@
+Kernel commit b81693d9149c598302e8eb9c20cb20330d922c8e changed the
+net_device_ops structure, removing the ndo_set_multicast_list callback. The
+ndo_set_rx_mode has also been added to this structure.
+
+The upshot of these changes is that owl-linux fails to compile with 3.3.x
+and later kernels.
+
+Signed-off-by: Simon Dawson <spdawson@gmail.com>
+diff -Nurp a/owl_net.c b/owl_net.c
+--- a/owl_net.c        2012-06-14 10:51:45.000000000 +0100
++++ b/owl_net.c        2012-07-20 13:16:28.772351464 +0100
+@@ -384,7 +384,9 @@ static const struct net_device_ops netde
+ #endif /* OWL_CONFIG_IFUPDOWN */
+         .ndo_start_xmit         = owl_net_tx,
+         .ndo_get_stats          = owl_net_get_stats,
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,3,0)
+         .ndo_set_multicast_list = NULL,
++#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,3,0) */
+         .ndo_tx_timeout         = owl_net_tx_timeout,
+         .ndo_set_mac_address    = NULL,
+ };
diff --git a/package/owl-linux/owl-linux-fix-CROSS_COMPILE-usage-in-Makefile.patch b/package/owl-linux/owl-linux-fix-CROSS_COMPILE-usage-in-Makefile.patch
deleted file mode 100644 (file)
index 14b4631..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-Fix the owl-linux Makefile so that it protects spaces in the CROSS_COMPILE
-variable. For example, this variable will contain spaces if ccache is used.
-
-Signed-off-by: Simon Dawson <spdawson@gmail.com>
-diff -Nurp a/Makefile b/Makefile
---- a/Makefile 2012-06-14 10:51:45.000000000 +0100
-+++ b/Makefile 2012-07-20 10:46:41.636752148 +0100
-@@ -35,7 +35,7 @@ else
-       PWD := $(shell pwd)
- default:
--      $(MAKE) -C $(KERNELDIR) ARCH=$(ARCH) CROSS_COMPILE=$(CROSS_COMPILE) M=$(PWD) MODE=$(MODE) modules
-+      $(MAKE) -C $(KERNELDIR) ARCH=$(ARCH) CROSS_COMPILE="$(CROSS_COMPILE)" M=$(PWD) MODE=$(MODE) modules
- clean: 
-       -rm -f *.o *.mod.c *.ko modules.order Module.symvers
diff --git a/package/owl-linux/owl-linux-fix-for-linux-3.3.x.patch b/package/owl-linux/owl-linux-fix-for-linux-3.3.x.patch
deleted file mode 100644 (file)
index 831ac7f..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-Kernel commit b81693d9149c598302e8eb9c20cb20330d922c8e changed the
-net_device_ops structure, removing the ndo_set_multicast_list callback. The
-ndo_set_rx_mode has also been added to this structure.
-
-The upshot of these changes is that owl-linux fails to compile with 3.3.x
-and later kernels.
-
-Signed-off-by: Simon Dawson <spdawson@gmail.com>
-diff -Nurp a/owl_net.c b/owl_net.c
---- a/owl_net.c        2012-06-14 10:51:45.000000000 +0100
-+++ b/owl_net.c        2012-07-20 13:16:28.772351464 +0100
-@@ -384,7 +384,9 @@ static const struct net_device_ops netde
- #endif /* OWL_CONFIG_IFUPDOWN */
-         .ndo_start_xmit         = owl_net_tx,
-         .ndo_get_stats          = owl_net_get_stats,
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,3,0)
-         .ndo_set_multicast_list = NULL,
-+#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,3,0) */
-         .ndo_tx_timeout         = owl_net_tx_timeout,
-         .ndo_set_mac_address    = NULL,
- };
diff --git a/package/p11-kit/0001-Fix-build-against-older-pthreads-implementations.patch b/package/p11-kit/0001-Fix-build-against-older-pthreads-implementations.patch
new file mode 100644 (file)
index 0000000..3562f3c
--- /dev/null
@@ -0,0 +1,64 @@
+From 05b6a7550756ffdced25a6c51cf2222bad9e59e7 Mon Sep 17 00:00:00 2001
+Message-Id: <05b6a7550756ffdced25a6c51cf2222bad9e59e7.1399285491.git.baruch@tkos.co.il>
+From: Baruch Siach <baruch@tkos.co.il>
+Date: Mon, 5 May 2014 09:32:23 +0300
+Subject: [PATCH] Fix build against older pthreads implementations
+
+Older pthreads implementations like glibc NPTL prior to version 2.12, and
+uClibc linuxthreads (both), need _XOPEN_SOURCE to expose
+pthread_mutexattr_settype() and THREAD_MUTEX_DEFAULT. The value 600 (SuSv3,
+POSIX.1-2001) is equivalent to _POSIX_C_SOURCE 200112L.
+
+Fixes the following build error:
+
+  CC       compat.lo
+compat.c: In function 'p11_mutex_init':
+compat.c:164:2: warning: implicit declaration of function 'pthread_mutexattr_settype' [-Wimplicit-function-declaration]
+compat.c:164:2: warning: nested extern declaration of 'pthread_mutexattr_settype' [-Wnested-externs]
+compat.c:164:36: error: 'PTHREAD_MUTEX_DEFAULT' undeclared (first use in this function)
+
+Patch status: sent upstream
+
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+---
+ common/compat.h  | 6 ++++++
+ common/message.c | 6 ------
+ 2 files changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/common/compat.h b/common/compat.h
+index d7fe414a46bf..fbc1dc1d4f0f 100644
+--- a/common/compat.h
++++ b/common/compat.h
+@@ -37,6 +37,12 @@
+ #include "config.h"
++/*
++ * Oh god. glibc is nasty. Changes behavior and definitions of POSIX
++ * functions to completely different signatures depending on defines
++ */
++#define _XOPEN_SOURCE 600
++
+ #include <sys/types.h>
+ #include <sys/stat.h>
+diff --git a/common/message.c b/common/message.c
+index 35f2764487a9..e68dfac561c8 100644
+--- a/common/message.c
++++ b/common/message.c
+@@ -37,12 +37,6 @@
+ #include "config.h"
+-/*
+- * Oh god. glibc is nasty. Changes behavior and definitions of POSIX
+- * functions to completely different signatures depending on defines
+- */
+-#define _POSIX_C_SOURCE 200112L
+-
+ #include "compat.h"
+ #define P11_DEBUG_FLAG P11_DEBUG_LIB
+ #include "debug.h"
+-- 
+2.0.0.rc0
+
diff --git a/package/p11-kit/p11-kit-01-Fix-build-against-older-pthreads-implementations.patch b/package/p11-kit/p11-kit-01-Fix-build-against-older-pthreads-implementations.patch
deleted file mode 100644 (file)
index 3562f3c..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-From 05b6a7550756ffdced25a6c51cf2222bad9e59e7 Mon Sep 17 00:00:00 2001
-Message-Id: <05b6a7550756ffdced25a6c51cf2222bad9e59e7.1399285491.git.baruch@tkos.co.il>
-From: Baruch Siach <baruch@tkos.co.il>
-Date: Mon, 5 May 2014 09:32:23 +0300
-Subject: [PATCH] Fix build against older pthreads implementations
-
-Older pthreads implementations like glibc NPTL prior to version 2.12, and
-uClibc linuxthreads (both), need _XOPEN_SOURCE to expose
-pthread_mutexattr_settype() and THREAD_MUTEX_DEFAULT. The value 600 (SuSv3,
-POSIX.1-2001) is equivalent to _POSIX_C_SOURCE 200112L.
-
-Fixes the following build error:
-
-  CC       compat.lo
-compat.c: In function 'p11_mutex_init':
-compat.c:164:2: warning: implicit declaration of function 'pthread_mutexattr_settype' [-Wimplicit-function-declaration]
-compat.c:164:2: warning: nested extern declaration of 'pthread_mutexattr_settype' [-Wnested-externs]
-compat.c:164:36: error: 'PTHREAD_MUTEX_DEFAULT' undeclared (first use in this function)
-
-Patch status: sent upstream
-
-Signed-off-by: Baruch Siach <baruch@tkos.co.il>
----
- common/compat.h  | 6 ++++++
- common/message.c | 6 ------
- 2 files changed, 6 insertions(+), 6 deletions(-)
-
-diff --git a/common/compat.h b/common/compat.h
-index d7fe414a46bf..fbc1dc1d4f0f 100644
---- a/common/compat.h
-+++ b/common/compat.h
-@@ -37,6 +37,12 @@
- #include "config.h"
-+/*
-+ * Oh god. glibc is nasty. Changes behavior and definitions of POSIX
-+ * functions to completely different signatures depending on defines
-+ */
-+#define _XOPEN_SOURCE 600
-+
- #include <sys/types.h>
- #include <sys/stat.h>
-diff --git a/common/message.c b/common/message.c
-index 35f2764487a9..e68dfac561c8 100644
---- a/common/message.c
-+++ b/common/message.c
-@@ -37,12 +37,6 @@
- #include "config.h"
--/*
-- * Oh god. glibc is nasty. Changes behavior and definitions of POSIX
-- * functions to completely different signatures depending on defines
-- */
--#define _POSIX_C_SOURCE 200112L
--
- #include "compat.h"
- #define P11_DEBUG_FLAG P11_DEBUG_LIB
- #include "debug.h"
--- 
-2.0.0.rc0
-
diff --git a/package/pango/0001-no-tests.patch b/package/pango/0001-no-tests.patch
new file mode 100644 (file)
index 0000000..e6777f6
--- /dev/null
@@ -0,0 +1,27 @@
+Prevent Pango to build tests.
+
+Updated to Pango 1.36.3 by Hadrien Boutteville.
+
+Signed-off-by: Hadrien Boutteville <hadrien.boutteville@gmail.com>
+
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -1,6 +1,6 @@
+ ## Process this file with automake to create Makefile.in.
+-SUBDIRS= pango modules pango-view examples docs tools tests build
++SUBDIRS= pango modules pango-view examples docs tools build
+ EXTRA_DIST =                  \
+       autogen.sh              \
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -418,7 +418,7 @@ target_alias = @target_alias@
+ top_build_prefix = @top_build_prefix@
+ top_builddir = @top_builddir@
+ top_srcdir = @top_srcdir@
+-SUBDIRS = pango modules pango-view examples docs tools tests build
++SUBDIRS = pango modules pango-view examples docs tools build
+ EXTRA_DIST = \
+       autogen.sh              \
+       pango.pc.in             \
diff --git a/package/pango/0002-no-gtk-doc.patch b/package/pango/0002-no-gtk-doc.patch
new file mode 100644 (file)
index 0000000..926a263
--- /dev/null
@@ -0,0 +1,25 @@
+Same patch as for systemd in commit
+7144f2f04b705538a893e538a6b851f536f433b6:
+
+Fix deactivation of gtk-doc
+
+The tarball contains the Makefile for building documentation with gtk-doc,
+Unfortunately the AM_CONDITIONAL variable is not the correct one, which
+results in an error when running autoreconf.
+
+This patch fixes this issue.
+
+Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
+Signed-off-by: Hadrien Boutteville <hadrien.boutteville@gmail.com>
+
+--- a/gtk-doc.make
++++ b/gtk-doc.make
+@@ -267,7 +267,7 @@
+ #
+ # Require gtk-doc when making dist
+ #
+-if HAVE_GTK_DOC
++if ENABLE_GTK_DOC
+ dist-check-gtkdoc: docs
+ else
+ dist-check-gtkdoc:
diff --git a/package/pango/pango-0001-no-tests.patch b/package/pango/pango-0001-no-tests.patch
deleted file mode 100644 (file)
index e6777f6..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-Prevent Pango to build tests.
-
-Updated to Pango 1.36.3 by Hadrien Boutteville.
-
-Signed-off-by: Hadrien Boutteville <hadrien.boutteville@gmail.com>
-
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -1,6 +1,6 @@
- ## Process this file with automake to create Makefile.in.
--SUBDIRS= pango modules pango-view examples docs tools tests build
-+SUBDIRS= pango modules pango-view examples docs tools build
- EXTRA_DIST =                  \
-       autogen.sh              \
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -418,7 +418,7 @@ target_alias = @target_alias@
- top_build_prefix = @top_build_prefix@
- top_builddir = @top_builddir@
- top_srcdir = @top_srcdir@
--SUBDIRS = pango modules pango-view examples docs tools tests build
-+SUBDIRS = pango modules pango-view examples docs tools build
- EXTRA_DIST = \
-       autogen.sh              \
-       pango.pc.in             \
diff --git a/package/pango/pango-0002-no-gtk-doc.patch b/package/pango/pango-0002-no-gtk-doc.patch
deleted file mode 100644 (file)
index 926a263..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-Same patch as for systemd in commit
-7144f2f04b705538a893e538a6b851f536f433b6:
-
-Fix deactivation of gtk-doc
-
-The tarball contains the Makefile for building documentation with gtk-doc,
-Unfortunately the AM_CONDITIONAL variable is not the correct one, which
-results in an error when running autoreconf.
-
-This patch fixes this issue.
-
-Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
-Signed-off-by: Hadrien Boutteville <hadrien.boutteville@gmail.com>
-
---- a/gtk-doc.make
-+++ b/gtk-doc.make
-@@ -267,7 +267,7 @@
- #
- # Require gtk-doc when making dist
- #
--if HAVE_GTK_DOC
-+if ENABLE_GTK_DOC
- dist-check-gtkdoc: docs
- else
- dist-check-gtkdoc:
diff --git a/package/parted/0001-readline-deprecated.patch b/package/parted/0001-readline-deprecated.patch
new file mode 100644 (file)
index 0000000..a3f40c8
--- /dev/null
@@ -0,0 +1,19 @@
+The CPPFunction typedef (among others) have been deprecated in favour of
+specific prototyped typedefs since readline 4.2.
+It's been working since because compatibility typedefs have been
+in place until they were removed in readline 6.3.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura parted-3.1.orig/parted/ui.c parted-3.1/parted/ui.c
+--- parted-3.1.orig/parted/ui.c        2014-03-01 16:11:41.970827134 -0300
++++ parted-3.1/parted/ui.c     2014-03-01 16:11:55.540259786 -0300
+@@ -1474,7 +1474,7 @@
+ #ifdef HAVE_LIBREADLINE
+   if (!opt_script_mode) {
+     rl_initialize ();
+-    rl_attempted_completion_function = (CPPFunction*) complete_function;
++    rl_attempted_completion_function = (rl_completion_func_t *) complete_function;
+     readline_state.in_readline = 0;
+   }
+ #endif
diff --git a/package/parted/0002-configure.ac-uclinux-is-also-linux.patch b/package/parted/0002-configure.ac-uclinux-is-also-linux.patch
new file mode 100644 (file)
index 0000000..b2119bc
--- /dev/null
@@ -0,0 +1,33 @@
+From b3958317c5ee2940e7024bec2e7f288b5a6a26c3 Mon Sep 17 00:00:00 2001
+From: Gustavo Zacarias <gustavo@zacarias.com.ar>
+Date: Mon, 30 Jun 2014 10:09:04 -0300
+Subject: [PATCH] configure.ac: uclinux is also linux
+
+uclinux is used in the tuple for some noMMU linux builds like Blackfin
+FLAT output, so accept it as linux too.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+---
+ configure.ac | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 436d0e2..50ad478 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -58,10 +58,10 @@ AM_SILENT_RULES([yes]) # make --enable-silent-rules the default.
+ AC_CANONICAL_HOST
+ case "$host_os" in
+-      linux*) OS=linux ;;
++      linux*|uclinux*) OS=linux ;;
+       gnu*)   OS=gnu ;;
+       beos*)  OS=beos ;;
+-      *)      AC_MSG_ERROR([Unknown or unsupported OS "$host_os".  Only "linux", "gnu" and "beos" are supported in this version of GNU Parted.]) ;;
++      *)      AC_MSG_ERROR([Unknown or unsupported OS "$host_os".  Only "linux", "uclinux", "gnu" and "beos" are supported in this version of GNU Parted.]) ;;
+ esac
+ AC_SUBST([OS])
+-- 
+1.8.5.5
+
diff --git a/package/parted/0003-fix-static-link-uuid.patch b/package/parted/0003-fix-static-link-uuid.patch
new file mode 100644 (file)
index 0000000..d6ec2cf
--- /dev/null
@@ -0,0 +1,48 @@
+configure: use pkg-config to find libuuid
+
+In some conditions, libuuid may be linked with -lintl. This can be the
+case on uClibc when locales are enabled.
+
+When doing a shared link, this dependency is automatically pulled in via
+a DT_NEEDED ELF tag
+
+For a static link, there is no such mechanism to pull in dependent
+libraries.
+
+Currently, the check for libuuid is done with AC_CHECK_LIB, but this
+does not handle dependencies, and thus a stattic build fails.
+
+Use pkg-config to find libuuid, that automatically pulls in the
+dependencies of libuuid, if any.
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+---
+Note: of course, that relies on the fact that libuuid installs a proper
+.pc file; a patch will be submitted upstream shortly.
+
+But even considering the current situation, where libuuid does not
+provide a proper .pc file (yet), this patch does not change the
+behaviour we've had so far; it is a bet on the future! ;-)
+
+diff -durN parted-3.1.orig/configure.ac parted-3.1/configure.ac
+--- parted-3.1.orig/configure.ac       2014-11-29 16:27:49.520560137 +0100
++++ parted-3.1/configure.ac    2014-11-29 16:32:50.799702049 +0100
+@@ -313,16 +313,7 @@
+ AC_SUBST([DL_LIBS])
+ dnl Check for libuuid
+-UUID_LIBS=""
+-AC_CHECK_LIB([uuid], [uuid_generate], [UUID_LIBS="-luuid"],
+-      [AC_MSG_ERROR(dnl
+-[GNU Parted requires libuuid - a part of the util-linux-ng package (but
+-usually distributed separately in libuuid-devel, uuid-dev or similar)
+-This can probably be found on your distribution's CD or FTP site or at:
+-    http://userweb.kernel.org/~kzak/util-linux-ng/
+-Note: originally, libuuid was part of the e2fsprogs package.  Later, it
+-moved to util-linux-ng-2.16, and that package is now the preferred source.])])
+-AC_SUBST([UUID_LIBS])
++PKG_CHECK_MODULES([UUID],[uuid])
+ dnl Check for libdevmapper
+ DM_LIBS=
diff --git a/package/parted/parted-001-readline-deprecated.patch b/package/parted/parted-001-readline-deprecated.patch
deleted file mode 100644 (file)
index a3f40c8..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-The CPPFunction typedef (among others) have been deprecated in favour of
-specific prototyped typedefs since readline 4.2.
-It's been working since because compatibility typedefs have been
-in place until they were removed in readline 6.3.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura parted-3.1.orig/parted/ui.c parted-3.1/parted/ui.c
---- parted-3.1.orig/parted/ui.c        2014-03-01 16:11:41.970827134 -0300
-+++ parted-3.1/parted/ui.c     2014-03-01 16:11:55.540259786 -0300
-@@ -1474,7 +1474,7 @@
- #ifdef HAVE_LIBREADLINE
-   if (!opt_script_mode) {
-     rl_initialize ();
--    rl_attempted_completion_function = (CPPFunction*) complete_function;
-+    rl_attempted_completion_function = (rl_completion_func_t *) complete_function;
-     readline_state.in_readline = 0;
-   }
- #endif
diff --git a/package/parted/parted-002-configure.ac-uclinux-is-also-linux.patch b/package/parted/parted-002-configure.ac-uclinux-is-also-linux.patch
deleted file mode 100644 (file)
index b2119bc..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-From b3958317c5ee2940e7024bec2e7f288b5a6a26c3 Mon Sep 17 00:00:00 2001
-From: Gustavo Zacarias <gustavo@zacarias.com.ar>
-Date: Mon, 30 Jun 2014 10:09:04 -0300
-Subject: [PATCH] configure.ac: uclinux is also linux
-
-uclinux is used in the tuple for some noMMU linux builds like Blackfin
-FLAT output, so accept it as linux too.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
----
- configure.ac | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 436d0e2..50ad478 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -58,10 +58,10 @@ AM_SILENT_RULES([yes]) # make --enable-silent-rules the default.
- AC_CANONICAL_HOST
- case "$host_os" in
--      linux*) OS=linux ;;
-+      linux*|uclinux*) OS=linux ;;
-       gnu*)   OS=gnu ;;
-       beos*)  OS=beos ;;
--      *)      AC_MSG_ERROR([Unknown or unsupported OS "$host_os".  Only "linux", "gnu" and "beos" are supported in this version of GNU Parted.]) ;;
-+      *)      AC_MSG_ERROR([Unknown or unsupported OS "$host_os".  Only "linux", "uclinux", "gnu" and "beos" are supported in this version of GNU Parted.]) ;;
- esac
- AC_SUBST([OS])
--- 
-1.8.5.5
-
diff --git a/package/parted/parted-003-fix-static-link-uuid.patch b/package/parted/parted-003-fix-static-link-uuid.patch
deleted file mode 100644 (file)
index d6ec2cf..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-configure: use pkg-config to find libuuid
-
-In some conditions, libuuid may be linked with -lintl. This can be the
-case on uClibc when locales are enabled.
-
-When doing a shared link, this dependency is automatically pulled in via
-a DT_NEEDED ELF tag
-
-For a static link, there is no such mechanism to pull in dependent
-libraries.
-
-Currently, the check for libuuid is done with AC_CHECK_LIB, but this
-does not handle dependencies, and thus a stattic build fails.
-
-Use pkg-config to find libuuid, that automatically pulls in the
-dependencies of libuuid, if any.
-
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
-
----
-Note: of course, that relies on the fact that libuuid installs a proper
-.pc file; a patch will be submitted upstream shortly.
-
-But even considering the current situation, where libuuid does not
-provide a proper .pc file (yet), this patch does not change the
-behaviour we've had so far; it is a bet on the future! ;-)
-
-diff -durN parted-3.1.orig/configure.ac parted-3.1/configure.ac
---- parted-3.1.orig/configure.ac       2014-11-29 16:27:49.520560137 +0100
-+++ parted-3.1/configure.ac    2014-11-29 16:32:50.799702049 +0100
-@@ -313,16 +313,7 @@
- AC_SUBST([DL_LIBS])
- dnl Check for libuuid
--UUID_LIBS=""
--AC_CHECK_LIB([uuid], [uuid_generate], [UUID_LIBS="-luuid"],
--      [AC_MSG_ERROR(dnl
--[GNU Parted requires libuuid - a part of the util-linux-ng package (but
--usually distributed separately in libuuid-devel, uuid-dev or similar)
--This can probably be found on your distribution's CD or FTP site or at:
--    http://userweb.kernel.org/~kzak/util-linux-ng/
--Note: originally, libuuid was part of the e2fsprogs package.  Later, it
--moved to util-linux-ng-2.16, and that package is now the preferred source.])])
--AC_SUBST([UUID_LIBS])
-+PKG_CHECK_MODULES([UUID],[uuid])
- dnl Check for libdevmapper
- DM_LIBS=
diff --git a/package/pcmanfm/0001-link-against-libx11.patch b/package/pcmanfm/0001-link-against-libx11.patch
new file mode 100644 (file)
index 0000000..f571e77
--- /dev/null
@@ -0,0 +1,20 @@
+Link against libX11
+
+fm-desktop.c uses XSendEvent, so we should link against libX11.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/configure.in
+===================================================================
+--- a/configure.in
++++ b/configure.in
+@@ -12,7 +12,8 @@
+ pkg_modules="gtk+-2.0 >= 2.6.0 \
+              gthread-2.0 \
+-             libstartup-notification-1.0"
++             libstartup-notification-1.0 \
++           x11"
+ AC_FUNC_MMAP
diff --git a/package/pcmanfm/pcmanfm-link-against-libx11.patch b/package/pcmanfm/pcmanfm-link-against-libx11.patch
deleted file mode 100644 (file)
index f571e77..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-Link against libX11
-
-fm-desktop.c uses XSendEvent, so we should link against libX11.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/configure.in
-===================================================================
---- a/configure.in
-+++ b/configure.in
-@@ -12,7 +12,8 @@
- pkg_modules="gtk+-2.0 >= 2.6.0 \
-              gthread-2.0 \
--             libstartup-notification-1.0"
-+             libstartup-notification-1.0 \
-+           x11"
- AC_FUNC_MMAP
diff --git a/package/pcsc-lite/0001-pthread-needed-for-libusb.patch b/package/pcsc-lite/0001-pthread-needed-for-libusb.patch
new file mode 100644 (file)
index 0000000..acb777a
--- /dev/null
@@ -0,0 +1,29 @@
+configure.ac: explicitly add pthread cflags/libs in the libusb test
+
+If libusb-config does not exist, LIBUSB_CFLAGS and PTHREAD_CFLAGS will be
+empty, and the test for libusb will be performed without additional flags.
+However, when libusb needs threads, some extra flags are needed (depending
+on the platform), like -pthreads, -lpthread, etc. Without these flags, the
+test for libusb_init() will fail to link correctly, and pcsc-lite will fail
+detecting libusb.
+
+Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
+
+Upstream-status: will be submitted
+
+---
+
+diff --git a/configure.ac b/configure.ac
+--- a/configure.ac
++++ b/configure.ac
+@@ -254,8 +254,8 @@ if test "x$use_libusb" != xno ; then
+       saved_CPPFLAGS="$CPPFLAGS"
+       saved_LIBS="$LIBS"
+-      CPPFLAGS="$CPPFLAGS $LIBUSB_CFLAGS"
+-      LIBS="$LDFLAGS $LIBUSB_LIBS"
++      CPPFLAGS="$CPPFLAGS $LIBUSB_CFLAGS $PTHREAD_CFLAGS"
++      LIBS="$LDFLAGS $LIBUSB_LIBS $PTHREAD_LIBS"
+       AC_CHECK_HEADERS(libusb.h, [],
+               [ AC_MSG_ERROR([libusb.h not found, use ./configure LIBUSB_CFLAGS=...]) ])
diff --git a/package/pcsc-lite/pcsc-lite-0001-pthread-needed-for-libusb.patch b/package/pcsc-lite/pcsc-lite-0001-pthread-needed-for-libusb.patch
deleted file mode 100644 (file)
index acb777a..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-configure.ac: explicitly add pthread cflags/libs in the libusb test
-
-If libusb-config does not exist, LIBUSB_CFLAGS and PTHREAD_CFLAGS will be
-empty, and the test for libusb will be performed without additional flags.
-However, when libusb needs threads, some extra flags are needed (depending
-on the platform), like -pthreads, -lpthread, etc. Without these flags, the
-test for libusb_init() will fail to link correctly, and pcsc-lite will fail
-detecting libusb.
-
-Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
-
-Upstream-status: will be submitted
-
----
-
-diff --git a/configure.ac b/configure.ac
---- a/configure.ac
-+++ b/configure.ac
-@@ -254,8 +254,8 @@ if test "x$use_libusb" != xno ; then
-       saved_CPPFLAGS="$CPPFLAGS"
-       saved_LIBS="$LIBS"
--      CPPFLAGS="$CPPFLAGS $LIBUSB_CFLAGS"
--      LIBS="$LDFLAGS $LIBUSB_LIBS"
-+      CPPFLAGS="$CPPFLAGS $LIBUSB_CFLAGS $PTHREAD_CFLAGS"
-+      LIBS="$LDFLAGS $LIBUSB_LIBS $PTHREAD_LIBS"
-       AC_CHECK_HEADERS(libusb.h, [],
-               [ AC_MSG_ERROR([libusb.h not found, use ./configure LIBUSB_CFLAGS=...]) ])
diff --git a/package/perl-net-ssleay/0001-fix-build-system.patch b/package/perl-net-ssleay/0001-fix-build-system.patch
new file mode 100644 (file)
index 0000000..a6cd0f9
--- /dev/null
@@ -0,0 +1,36 @@
+buildsystem: fix for cross-compilation
+
+Avoid running the openssl binary, since it would break for
+cross-compilation. Buildroot has a supported version, anyway.
+
+Also, avoid adding hard-coded includes and libraries search
+paths, since they are missing the destdir; Buildroot compilers
+and linkers already know where to search, anyway.
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+diff -durN perl-net-ssleay-1.64.orig/inc/Module/Install/PRIVATE/Net/SSLeay.pm perl-net-ssleay-1.64/inc/Module/Install/PRIVATE/Net/SSLeay.pm
+--- perl-net-ssleay-1.64.orig/inc/Module/Install/PRIVATE/Net/SSLeay.pm 2014-04-01 08:08:37.000000000 +0200
++++ perl-net-ssleay-1.64/inc/Module/Install/PRIVATE/Net/SSLeay.pm      2014-07-13 00:38:46.281380282 +0200
+@@ -37,14 +37,18 @@
+         exit 0; # according http://wiki.cpantesters.org/wiki/CPANAuthorNotes this is best-practice when "missing library"
+     }
+-    $self->check_openssl_version($prefix, $exec);
++# Does not work for cross-compilation.
++# In Buildroot, we do have a supported version.
++#    $self->check_openssl_version($prefix, $exec);
+     my $opts = $self->ssleay_get_build_opts($prefix, $exec);
+     $self->makemaker_args(
+         CCCDLFLAGS => $opts->{cccdlflags},
+         OPTIMIZE => $opts->{optimize},
+-        INC => join(' ', map {"-I$_"} @{$opts->{inc_paths}}),
+-        LIBS => join(' ', (map {"-L$_"} @{$opts->{lib_paths}}), (map {"-l$_"} @{$opts->{lib_links}})),
++# Buildroot already has the correct include and library search paths.
++#        INC => join(' ', map {"-I$_"} @{$opts->{inc_paths}}),
++#        LIBS => join(' ', (map {"-L$_"} @{$opts->{lib_paths}}), (map {"-l$_"} @{$opts->{lib_links}})),
++        LIBS => join(' ', (map {"-l$_"} @{$opts->{lib_links}})),
+     );
+     if ( $self->prompt(
diff --git a/package/perl-net-ssleay/perl-net-ssleay-0000-fix-build-system.patch b/package/perl-net-ssleay/perl-net-ssleay-0000-fix-build-system.patch
deleted file mode 100644 (file)
index a6cd0f9..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-buildsystem: fix for cross-compilation
-
-Avoid running the openssl binary, since it would break for
-cross-compilation. Buildroot has a supported version, anyway.
-
-Also, avoid adding hard-coded includes and libraries search
-paths, since they are missing the destdir; Buildroot compilers
-and linkers already know where to search, anyway.
-
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
-
-diff -durN perl-net-ssleay-1.64.orig/inc/Module/Install/PRIVATE/Net/SSLeay.pm perl-net-ssleay-1.64/inc/Module/Install/PRIVATE/Net/SSLeay.pm
---- perl-net-ssleay-1.64.orig/inc/Module/Install/PRIVATE/Net/SSLeay.pm 2014-04-01 08:08:37.000000000 +0200
-+++ perl-net-ssleay-1.64/inc/Module/Install/PRIVATE/Net/SSLeay.pm      2014-07-13 00:38:46.281380282 +0200
-@@ -37,14 +37,18 @@
-         exit 0; # according http://wiki.cpantesters.org/wiki/CPANAuthorNotes this is best-practice when "missing library"
-     }
--    $self->check_openssl_version($prefix, $exec);
-+# Does not work for cross-compilation.
-+# In Buildroot, we do have a supported version.
-+#    $self->check_openssl_version($prefix, $exec);
-     my $opts = $self->ssleay_get_build_opts($prefix, $exec);
-     $self->makemaker_args(
-         CCCDLFLAGS => $opts->{cccdlflags},
-         OPTIMIZE => $opts->{optimize},
--        INC => join(' ', map {"-I$_"} @{$opts->{inc_paths}}),
--        LIBS => join(' ', (map {"-L$_"} @{$opts->{lib_paths}}), (map {"-l$_"} @{$opts->{lib_links}})),
-+# Buildroot already has the correct include and library search paths.
-+#        INC => join(' ', map {"-I$_"} @{$opts->{inc_paths}}),
-+#        LIBS => join(' ', (map {"-L$_"} @{$opts->{lib_paths}}), (map {"-l$_"} @{$opts->{lib_links}})),
-+        LIBS => join(' ', (map {"-l$_"} @{$opts->{lib_links}})),
-     );
-     if ( $self->prompt(
diff --git a/package/perl-xml-libxml/0001-Makefile-PL.patch b/package/perl-xml-libxml/0001-Makefile-PL.patch
new file mode 100644 (file)
index 0000000..ce2724c
--- /dev/null
@@ -0,0 +1,18 @@
+fake check_lib for cross-compilation
+
+Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
+
+Index: b/Makefile.PL
+===================================================================
+--- a/Makefile.PL
++++ b/Makefile.PL
+@@ -84,8 +84,7 @@
+ # -------------------------------------------------------------------------- #
+ # -------------------------------------------------------------------------- #
+-use lib qw(inc);
+-use Devel::CheckLib;
++sub check_lib { return 1; }
+ # Prompt the user here for any paths and other configuration
diff --git a/package/perl-xml-libxml/perl-xml-libxml-01-Makefile-PL.patch b/package/perl-xml-libxml/perl-xml-libxml-01-Makefile-PL.patch
deleted file mode 100644 (file)
index ce2724c..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-fake check_lib for cross-compilation
-
-Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
-
-Index: b/Makefile.PL
-===================================================================
---- a/Makefile.PL
-+++ b/Makefile.PL
-@@ -84,8 +84,7 @@
- # -------------------------------------------------------------------------- #
- # -------------------------------------------------------------------------- #
--use lib qw(inc);
--use Devel::CheckLib;
-+sub check_lib { return 1; }
- # Prompt the user here for any paths and other configuration
diff --git a/package/perl/0001-uClibc-IPv6.patch b/package/perl/0001-uClibc-IPv6.patch
new file mode 100644 (file)
index 0000000..b29d373
--- /dev/null
@@ -0,0 +1,61 @@
+fix on uClibc without IPv6 support
+
+Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
+
+Index: b/cpan/Socket/Socket.xs
+===================================================================
+--- a/cpan/Socket/Socket.xs
++++ b/cpan/Socket/Socket.xs
+@@ -920,7 +920,7 @@
+       CODE:
+ #ifdef HAS_INETNTOP
+       STRLEN addrlen;
+-#ifdef AF_INET6
++#if (defined(__UCLIBC__) && defined(__UCLIBC_HAS_IPV6__)) || (!defined(__UCLIBC__) && defined(AF_INET6))
+       struct in6_addr addr;
+       char str[INET6_ADDRSTRLEN];
+ #else
+@@ -940,7 +940,7 @@
+               croak("Bad address length for Socket::inet_ntop on AF_INET;"
+                     " got %"UVuf", should be 4", (UV)addrlen);
+           break;
+-#ifdef AF_INET6
++#if (defined(__UCLIBC__) && defined(__UCLIBC_HAS_IPV6__)) || (!defined(__UCLIBC__) && defined(AF_INET6))
+         case AF_INET6:
+           if(addrlen != 16)
+               croak("Bad address length for Socket::inet_ntop on AF_INET6;"
+@@ -949,7 +949,7 @@
+ #endif
+         default:
+               croak("Bad address family for %s, got %d, should be"
+-#ifdef AF_INET6
++#if (defined(__UCLIBC__) && defined(__UCLIBC_HAS_IPV6__)) || (!defined(__UCLIBC__) && defined(AF_INET6))
+                     " either AF_INET or AF_INET6",
+ #else
+                     " AF_INET",
+@@ -979,7 +979,7 @@
+ #ifdef HAS_INETPTON
+       int ok;
+       int addrlen = 0;
+-#ifdef AF_INET6
++#if (defined(__UCLIBC__) && defined(__UCLIBC_HAS_IPV6__)) || (!defined(__UCLIBC__) && defined(AF_INET6))
+       struct in6_addr ip_address;
+ #else
+       struct in_addr ip_address;
+@@ -989,14 +989,14 @@
+         case AF_INET:
+           addrlen = 4;
+           break;
+-#ifdef AF_INET6
++#if (defined(__UCLIBC__) && defined(__UCLIBC_HAS_IPV6__)) || (!defined(__UCLIBC__) && defined(AF_INET6))
+         case AF_INET6:
+           addrlen = 16;
+           break;
+ #endif
+         default:
+               croak("Bad address family for %s, got %d, should be"
+-#ifdef AF_INET6
++#if (defined(__UCLIBC__) && defined(__UCLIBC_HAS_IPV6__)) || (!defined(__UCLIBC__) && defined(AF_INET6))
+                     " either AF_INET or AF_INET6",
+ #else
+                     " AF_INET",
diff --git a/package/perl/perl-uClibc-IPv6.patch b/package/perl/perl-uClibc-IPv6.patch
deleted file mode 100644 (file)
index b29d373..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-fix on uClibc without IPv6 support
-
-Signed-off-by: Francois Perrad <francois.perrad@gadz.org>
-
-Index: b/cpan/Socket/Socket.xs
-===================================================================
---- a/cpan/Socket/Socket.xs
-+++ b/cpan/Socket/Socket.xs
-@@ -920,7 +920,7 @@
-       CODE:
- #ifdef HAS_INETNTOP
-       STRLEN addrlen;
--#ifdef AF_INET6
-+#if (defined(__UCLIBC__) && defined(__UCLIBC_HAS_IPV6__)) || (!defined(__UCLIBC__) && defined(AF_INET6))
-       struct in6_addr addr;
-       char str[INET6_ADDRSTRLEN];
- #else
-@@ -940,7 +940,7 @@
-               croak("Bad address length for Socket::inet_ntop on AF_INET;"
-                     " got %"UVuf", should be 4", (UV)addrlen);
-           break;
--#ifdef AF_INET6
-+#if (defined(__UCLIBC__) && defined(__UCLIBC_HAS_IPV6__)) || (!defined(__UCLIBC__) && defined(AF_INET6))
-         case AF_INET6:
-           if(addrlen != 16)
-               croak("Bad address length for Socket::inet_ntop on AF_INET6;"
-@@ -949,7 +949,7 @@
- #endif
-         default:
-               croak("Bad address family for %s, got %d, should be"
--#ifdef AF_INET6
-+#if (defined(__UCLIBC__) && defined(__UCLIBC_HAS_IPV6__)) || (!defined(__UCLIBC__) && defined(AF_INET6))
-                     " either AF_INET or AF_INET6",
- #else
-                     " AF_INET",
-@@ -979,7 +979,7 @@
- #ifdef HAS_INETPTON
-       int ok;
-       int addrlen = 0;
--#ifdef AF_INET6
-+#if (defined(__UCLIBC__) && defined(__UCLIBC_HAS_IPV6__)) || (!defined(__UCLIBC__) && defined(AF_INET6))
-       struct in6_addr ip_address;
- #else
-       struct in_addr ip_address;
-@@ -989,14 +989,14 @@
-         case AF_INET:
-           addrlen = 4;
-           break;
--#ifdef AF_INET6
-+#if (defined(__UCLIBC__) && defined(__UCLIBC_HAS_IPV6__)) || (!defined(__UCLIBC__) && defined(AF_INET6))
-         case AF_INET6:
-           addrlen = 16;
-           break;
- #endif
-         default:
-               croak("Bad address family for %s, got %d, should be"
--#ifdef AF_INET6
-+#if (defined(__UCLIBC__) && defined(__UCLIBC_HAS_IPV6__)) || (!defined(__UCLIBC__) && defined(AF_INET6))
-                     " either AF_INET or AF_INET6",
- #else
-                     " AF_INET",
diff --git a/package/pifmrds/0001-Makefile-cross-compile-friendly.patch b/package/pifmrds/0001-Makefile-cross-compile-friendly.patch
new file mode 100644 (file)
index 0000000..414d97c
--- /dev/null
@@ -0,0 +1,37 @@
+Makefile: make it cross-compile (and Buildroot) friendly.
+
+The current Makefile makes heavy assumptions that it is doing native
+compilation on the RPi, as it checks that `uname -m` is an ARM machine.
+
+This is wrong in the cross-compilation case.
+
+Remove the conditional altogether, and do not override the CFLAGS
+as passed in the environment (Buildroot passes proper CFLAGS).
+
+[intial patch by: Eric Limpens <limpens@gmail.com>]
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+diff -durN pifmrds-c67306ea9b8d827f45e0d90279d367e97119bcb1.orig/src/Makefile pifmrds-c67306ea9b8d827f45e0d90279d367e97119bcb1/src/Makefile
+--- pifmrds-c67306ea9b8d827f45e0d90279d367e97119bcb1.orig/src/Makefile 2014-05-04 18:21:40.000000000 +0200
++++ pifmrds-c67306ea9b8d827f45e0d90279d367e97119bcb1/src/Makefile      2014-06-21 16:38:31.971804343 +0200
+@@ -1,20 +1,8 @@
+ CC = gcc
+-STD_CFLAGS = -Wall -std=gnu99 -c -g -O3
+-# Enable ARM-specific options only on ARM, and compilation of the app only on ARM
+-UNAME := $(shell uname -m)
+-
+-ifeq ($(UNAME), armv6l)
+-      CFLAGS = $(STD_CFLAGS) -march=armv6 -mtune=arm1176jzf-s -mfloat-abi=hard -mfpu=vfp -ffast-math
+-
+ app: rds.o waveforms.o pi_fm_rds.o fm_mpx.o control_pipe.o
+       $(CC) -o pi_fm_rds rds.o waveforms.o pi_fm_rds.o fm_mpx.o control_pipe.o -lm -lsndfile
+-else
+-      CFLAGS = $(STD_CFLAGS)
+-endif
+-
+-
+ rds_wav: rds.o waveforms.o rds_wav.o fm_mpx.o
+       $(CC) -o rds_wav rds_wav.o rds.o waveforms.o fm_mpx.o -lm -lsndfile
diff --git a/package/pifmrds/0002-Makefile-use-LDFLAGS.patch b/package/pifmrds/0002-Makefile-use-LDFLAGS.patch
new file mode 100644 (file)
index 0000000..54c1427
--- /dev/null
@@ -0,0 +1,20 @@
+Makefile: use LDFLAGS when linking
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+diff -durN pifmrds-c67306ea9b8d827f45e0d90279d367e97119bcb1.orig/src/Makefile pifmrds-c67306ea9b8d827f45e0d90279d367e97119bcb1/src/Makefile
+--- pifmrds-c67306ea9b8d827f45e0d90279d367e97119bcb1.orig/src/Makefile 2014-06-21 16:46:49.101118754 +0200
++++ pifmrds-c67306ea9b8d827f45e0d90279d367e97119bcb1/src/Makefile      2014-06-21 16:47:47.801745683 +0200
+@@ -1,10 +1,10 @@
+ CC = gcc
+ app: rds.o waveforms.o pi_fm_rds.o fm_mpx.o control_pipe.o
+-      $(CC) -o pi_fm_rds rds.o waveforms.o pi_fm_rds.o fm_mpx.o control_pipe.o -lm -lsndfile
++      $(CC) $(LDFLAGS) -o pi_fm_rds rds.o waveforms.o pi_fm_rds.o fm_mpx.o control_pipe.o -lm -lsndfile
+ rds_wav: rds.o waveforms.o rds_wav.o fm_mpx.o
+-      $(CC) -o rds_wav rds_wav.o rds.o waveforms.o fm_mpx.o -lm -lsndfile
++      $(CC) $(LDFLAGS) -o rds_wav rds_wav.o rds.o waveforms.o fm_mpx.o -lm -lsndfile
+ rds.o: rds.c waveforms.h
+       $(CC) $(CFLAGS) rds.c
diff --git a/package/pifmrds/pifmrds-0001-Makefile-cross-compile-friendly.patch b/package/pifmrds/pifmrds-0001-Makefile-cross-compile-friendly.patch
deleted file mode 100644 (file)
index 414d97c..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-Makefile: make it cross-compile (and Buildroot) friendly.
-
-The current Makefile makes heavy assumptions that it is doing native
-compilation on the RPi, as it checks that `uname -m` is an ARM machine.
-
-This is wrong in the cross-compilation case.
-
-Remove the conditional altogether, and do not override the CFLAGS
-as passed in the environment (Buildroot passes proper CFLAGS).
-
-[intial patch by: Eric Limpens <limpens@gmail.com>]
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
-
-diff -durN pifmrds-c67306ea9b8d827f45e0d90279d367e97119bcb1.orig/src/Makefile pifmrds-c67306ea9b8d827f45e0d90279d367e97119bcb1/src/Makefile
---- pifmrds-c67306ea9b8d827f45e0d90279d367e97119bcb1.orig/src/Makefile 2014-05-04 18:21:40.000000000 +0200
-+++ pifmrds-c67306ea9b8d827f45e0d90279d367e97119bcb1/src/Makefile      2014-06-21 16:38:31.971804343 +0200
-@@ -1,20 +1,8 @@
- CC = gcc
--STD_CFLAGS = -Wall -std=gnu99 -c -g -O3
--# Enable ARM-specific options only on ARM, and compilation of the app only on ARM
--UNAME := $(shell uname -m)
--
--ifeq ($(UNAME), armv6l)
--      CFLAGS = $(STD_CFLAGS) -march=armv6 -mtune=arm1176jzf-s -mfloat-abi=hard -mfpu=vfp -ffast-math
--
- app: rds.o waveforms.o pi_fm_rds.o fm_mpx.o control_pipe.o
-       $(CC) -o pi_fm_rds rds.o waveforms.o pi_fm_rds.o fm_mpx.o control_pipe.o -lm -lsndfile
--else
--      CFLAGS = $(STD_CFLAGS)
--endif
--
--
- rds_wav: rds.o waveforms.o rds_wav.o fm_mpx.o
-       $(CC) -o rds_wav rds_wav.o rds.o waveforms.o fm_mpx.o -lm -lsndfile
diff --git a/package/pifmrds/pifmrds-0002-Makefile-use-LDFLAGS.patch b/package/pifmrds/pifmrds-0002-Makefile-use-LDFLAGS.patch
deleted file mode 100644 (file)
index 54c1427..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-Makefile: use LDFLAGS when linking
-
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
-
-diff -durN pifmrds-c67306ea9b8d827f45e0d90279d367e97119bcb1.orig/src/Makefile pifmrds-c67306ea9b8d827f45e0d90279d367e97119bcb1/src/Makefile
---- pifmrds-c67306ea9b8d827f45e0d90279d367e97119bcb1.orig/src/Makefile 2014-06-21 16:46:49.101118754 +0200
-+++ pifmrds-c67306ea9b8d827f45e0d90279d367e97119bcb1/src/Makefile      2014-06-21 16:47:47.801745683 +0200
-@@ -1,10 +1,10 @@
- CC = gcc
- app: rds.o waveforms.o pi_fm_rds.o fm_mpx.o control_pipe.o
--      $(CC) -o pi_fm_rds rds.o waveforms.o pi_fm_rds.o fm_mpx.o control_pipe.o -lm -lsndfile
-+      $(CC) $(LDFLAGS) -o pi_fm_rds rds.o waveforms.o pi_fm_rds.o fm_mpx.o control_pipe.o -lm -lsndfile
- rds_wav: rds.o waveforms.o rds_wav.o fm_mpx.o
--      $(CC) -o rds_wav rds_wav.o rds.o waveforms.o fm_mpx.o -lm -lsndfile
-+      $(CC) $(LDFLAGS) -o rds_wav rds_wav.o rds.o waveforms.o fm_mpx.o -lm -lsndfile
- rds.o: rds.c waveforms.h
-       $(CC) $(CFLAGS) rds.c
diff --git a/package/pkgconf/0001-fix-variable.patch b/package/pkgconf/0001-fix-variable.patch
new file mode 100644 (file)
index 0000000..4c213d6
--- /dev/null
@@ -0,0 +1,29 @@
+[PATCH] prefix sysroot to include/libdir path variables
+
+Prefix includedir / libdir variable values with sysroot if a variable is
+requested (--variable=<name>), similar to how it's done for -I / -L flags.
+
+This is sometimes used to find header files (E.G. in gst-plugins configure),
+so ensure the sysroot'ed files are used.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
+
+diff -Nura pkgconf-0.8.9.orig/main.c pkgconf-0.8.9/main.c
+--- pkgconf-0.8.9.orig/main.c  2012-10-24 14:32:08.236508699 -0300
++++ pkgconf-0.8.9/main.c       2012-10-24 14:54:36.771070217 -0300
+@@ -298,7 +298,13 @@
+       if (eflag != PKG_ERRF_OK)
+               return false;
+-      printf("%s\n", req.buf);
++      if ( !strcmp(req.variable, "includedir") ||
++        !strcmp(req.variable, "mapdir") ||
++        !strcmp(req.variable, "sdkdir") ||
++        !strcmp(req.variable, "libdir"))
++              printf("%s%s\n", sysroot_dir, req.buf);
++      else
++              printf("%s\n", req.buf);
+       return true;
+ }
diff --git a/package/pkgconf/0002-fix-double-sysroot.patch b/package/pkgconf/0002-fix-double-sysroot.patch
new file mode 100644 (file)
index 0000000..14bc34a
--- /dev/null
@@ -0,0 +1,40 @@
+pkgconf: don't double prefix lib/include paths with sysroot
+
+A .pc file could contain statements of the form:
+    -L/usr/lib
+but also:
+    -L/path/to/sysroot/usr/lib
+
+The latter form typically occurs when the dependency was configured with a
+statement like --with-xxx=$(STAGING_DIR)/usr.
+
+pkgconf only expects the first form, and prefixes it with the specified
+sysroot. However, this strategy would result in a double sysroot in the
+second case:
+    -L/path/to/sysroot/path/to/sysroot/usr/lib
+
+This patch checks for the presence of the sysroot in the specified -L or -I
+directives, and only adds the sysroot when not already present.
+
+Upstream-status: will be submitted
+
+Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
+
+---
+ main.c |  3 ++-
+ 1 files changed, 2 insertions(+), 1 deletions(-)
+
+
+diff -r 16865d81819f -r 9d8e1737687f main.c
+--- a/main.c   Mon Jun 16 19:47:52 2014 +0200
++++ b/main.c   Mon Jun 16 19:48:15 2014 +0200
+@@ -82,7 +82,8 @@
+       {
+       case 'L':
+       case 'I':
+-              return sysroot_dir;
++              if (strncmp(sysroot_dir, frag->data, strlen(sysroot_dir)) != 0)
++                      return sysroot_dir;
+       default:
+               break;
+       }
diff --git a/package/pkgconf/pkgconf-01-fix-variable.patch b/package/pkgconf/pkgconf-01-fix-variable.patch
deleted file mode 100644 (file)
index 4c213d6..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-[PATCH] prefix sysroot to include/libdir path variables
-
-Prefix includedir / libdir variable values with sysroot if a variable is
-requested (--variable=<name>), similar to how it's done for -I / -L flags.
-
-This is sometimes used to find header files (E.G. in gst-plugins configure),
-so ensure the sysroot'ed files are used.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
-
-diff -Nura pkgconf-0.8.9.orig/main.c pkgconf-0.8.9/main.c
---- pkgconf-0.8.9.orig/main.c  2012-10-24 14:32:08.236508699 -0300
-+++ pkgconf-0.8.9/main.c       2012-10-24 14:54:36.771070217 -0300
-@@ -298,7 +298,13 @@
-       if (eflag != PKG_ERRF_OK)
-               return false;
--      printf("%s\n", req.buf);
-+      if ( !strcmp(req.variable, "includedir") ||
-+        !strcmp(req.variable, "mapdir") ||
-+        !strcmp(req.variable, "sdkdir") ||
-+        !strcmp(req.variable, "libdir"))
-+              printf("%s%s\n", sysroot_dir, req.buf);
-+      else
-+              printf("%s\n", req.buf);
-       return true;
- }
diff --git a/package/pkgconf/pkgconf-02-fix-double-sysroot.patch b/package/pkgconf/pkgconf-02-fix-double-sysroot.patch
deleted file mode 100644 (file)
index 14bc34a..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-pkgconf: don't double prefix lib/include paths with sysroot
-
-A .pc file could contain statements of the form:
-    -L/usr/lib
-but also:
-    -L/path/to/sysroot/usr/lib
-
-The latter form typically occurs when the dependency was configured with a
-statement like --with-xxx=$(STAGING_DIR)/usr.
-
-pkgconf only expects the first form, and prefixes it with the specified
-sysroot. However, this strategy would result in a double sysroot in the
-second case:
-    -L/path/to/sysroot/path/to/sysroot/usr/lib
-
-This patch checks for the presence of the sysroot in the specified -L or -I
-directives, and only adds the sysroot when not already present.
-
-Upstream-status: will be submitted
-
-Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
-
----
- main.c |  3 ++-
- 1 files changed, 2 insertions(+), 1 deletions(-)
-
-
-diff -r 16865d81819f -r 9d8e1737687f main.c
---- a/main.c   Mon Jun 16 19:47:52 2014 +0200
-+++ b/main.c   Mon Jun 16 19:48:15 2014 +0200
-@@ -82,7 +82,8 @@
-       {
-       case 'L':
-       case 'I':
--              return sysroot_dir;
-+              if (strncmp(sysroot_dir, frag->data, strlen(sysroot_dir)) != 0)
-+                      return sysroot_dir;
-       default:
-               break;
-       }
diff --git a/package/poco/0001-aarch64.patch b/package/poco/0001-aarch64.patch
new file mode 100644 (file)
index 0000000..f629f7b
--- /dev/null
@@ -0,0 +1,39 @@
+From 37899eda9563d9134cb5864751b6432cabfaac3e Mon Sep 17 00:00:00 2001
+From: Will Newton <will.newton@linaro.org>
+Date: Tue, 21 May 2013 22:11:05 +0100
+Subject: [PATCH] Foundation/include/Poco/Platform.h: Add support for AArch64.
+
+Add support for big and little endian AArch64 preprocessor defines.
+---
+ Foundation/include/Poco/Platform.h | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/Foundation/include/Poco/Platform.h b/Foundation/include/Poco/Platform.h
+index f34f277..8ddb4cb 100644
+--- a/Foundation/include/Poco/Platform.h
++++ b/Foundation/include/Poco/Platform.h
+@@ -145,6 +145,7 @@
+ #define POCO_ARCH_S390    0x0c
+ #define POCO_ARCH_SH      0x0d
+ #define POCO_ARCH_NIOS2   0x0e
++#define POCO_ARCH_AARCH64 0x0f
+ #if defined(__ALPHA) || defined(__alpha) || defined(__alpha__) || defined(_M_ALPHA)
+@@ -207,7 +208,12 @@
+       #else
+               #define POCO_ARCH_BIG_ENDIAN 1
+       #endif
+-
++#elif defined(__AARCH64EL__)
++      #define POCO_ARCH POCO_ARCH_AARCH64
++      #define POCO_ARCH_LITTLE_ENDIAN 1
++#elif defined(__AARCH64EB__)
++      #define POCO_ARCH POCO_ARCH_AARCH64
++      #define POCO_ARCH_BIG_ENDIAN 1
+ #endif
+-- 
+1.8.1.4
+
diff --git a/package/poco/0002-add-cross-build-config.patch b/package/poco/0002-add-cross-build-config.patch
new file mode 100644 (file)
index 0000000..a087838
--- /dev/null
@@ -0,0 +1,82 @@
+From: Baruch Siach <baruch@tkos.co.il>
+Subject: [PATCH] poco: add Linux configuration file for generic cross build
+
+This patch adds the Linux-CrossEnv config file to poco. This file is identical
+to the Linux one, except the added CROSSENV variable that allows setting of
+the toolchain prefix.
+
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+---
+diff -Nuar poco-1.4.1p1-dist/build/config/Linux-CrossEnv poco-1.4.1p1/build/config/Linux-CrossEnv
+--- poco-1.4.1p1-dist/build/config/Linux-CrossEnv      1970-01-01 02:00:00.000000000 +0200
++++ poco-1.4.1p1/build/config/Linux-CrossEnv   2011-08-02 18:51:03.682047719 +0300
+@@ -0,0 +1,69 @@
++#
++# Linux
++#
++# Make settings for cross compiled Linux
++#
++#
++
++#
++# General Settings
++#
++LINKMODE ?= SHARED
++
++#
++# Define Tools
++#
++CC      = $(CROSSENV)gcc
++CXX     = $(CROSSENV)g++
++LINK    = $(CXX)
++LIB     = $(CROSSENV)ar -cr
++RANLIB  = $(CROSSENV)ranlib
++SHLIB   = $(CXX) -shared -Wl,-soname,$(notdir $@) -o $@
++SHLIBLN = $(POCO_BASE)/build/script/shlibln
++STRIP   = $(CROSSENV)strip
++DEP     = $(POCO_BASE)/build/script/makedepend.gcc 
++SHELL   = sh
++RM      = rm -rf
++CP      = cp
++MKDIR   = mkdir -p
++
++#
++# Extension for Shared Libraries
++#
++SHAREDLIBEXT     = .so.$(target_version)
++SHAREDLIBLINKEXT = .so
++
++#
++# Compiler and Linker Flags
++#
++CFLAGS          = 
++CFLAGS32        =
++CFLAGS64        =
++CXXFLAGS        = -Wall -Wno-sign-compare
++CXXFLAGS32      =
++CXXFLAGS64      =
++LINKFLAGS       =
++LINKFLAGS32     =
++LINKFLAGS64     =
++STATICOPT_CC    =
++STATICOPT_CXX   =
++STATICOPT_LINK  = -static
++SHAREDOPT_CC    = -fPIC
++SHAREDOPT_CXX   = -fPIC
++SHAREDOPT_LINK  = -Wl,-rpath,$(LIBPATH)
++DEBUGOPT_CC     = -g -D_DEBUG
++DEBUGOPT_CXX    = -g -D_DEBUG
++DEBUGOPT_LINK   = -g
++RELEASEOPT_CC   = -O2 -DNDEBUG
++RELEASEOPT_CXX  = -O2 -DNDEBUG
++RELEASEOPT_LINK = -O2
++
++#
++# System Specific Flags
++#
++SYSFLAGS = -D_XOPEN_SOURCE=500 -D_REENTRANT -D_THREAD_SAFE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DPOCO_HAVE_FD_EPOLL
++
++#
++# System Specific Libraries
++#
++SYSLIBS  = -lpthread -ldl -lrt
diff --git a/package/poco/0003-add-staging-search-path.patch b/package/poco/0003-add-staging-search-path.patch
new file mode 100644 (file)
index 0000000..a9397b4
--- /dev/null
@@ -0,0 +1,23 @@
+From: Baruch Siach <baruch@tkos.co.il>
+Subject: [PATCH] poco: add the staging path to search path
+
+Add the mysql headers and client libraries to the search path of the
+preprocessor and the linker. The $MYSQL_LIBDIR / $MYSQL_INCIDR variables
+must be set from the make command line.
+
+[Peter: Remove host dirs, add MYSQL_INCDIR]
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+--- 
+--- poco-1.4.4-all-dist/Data/MySQL/Makefile    2012-09-20 01:30:42.000000000 +0300
++++ poco-1.4.4-all/Data/MySQL/Makefile 2012-10-11 14:36:10.343153420 +0200
+@@ -8,8 +8,8 @@
+ include $(POCO_BASE)/build/rules/global
+-SYSLIBS += -L/usr/local/lib$(LIB64SUFFIX)/mysql -L/usr/lib$(LIB64SUFFIX)/mysql -L/usr/mysql/lib$(LIB64SUFFIX)/mysql -L/usr/local/mysql/lib$(LIB64SUFFIX) -lmysqlclient
+-INCLUDE += -I/usr/local/include/mysql/ -I/usr/include/mysql -I/usr/mysql/include/mysql -I/usr/local/mysql/include
++SYSLIBS += -L$(MYSQL_LIBDIR) -lmysqlclient
++INCLUDE += -I$(MYSQL_INCDIR)
+ SYSFLAGS += -DTHREADSAFE -DNO_TCL
+ objects = Binder Extractor SessionImpl Connector \
diff --git a/package/poco/0004-dont-build-debug-libs.patch b/package/poco/0004-dont-build-debug-libs.patch
new file mode 100644 (file)
index 0000000..7480963
--- /dev/null
@@ -0,0 +1,19 @@
+From: Baruch Siach <baruch@tkos.co.il>
+Subject: [PATCH] poco: don't build debug libraries
+
+Remove the debug libraries build dependency from the default target.
+
+Signed-off-by: Baruch Siach <baruch@tkos.co.il>
+---
+
+--- poco-1.4.1p1-dist/build/rules/compile      2011-02-09 11:12:24.000000000 +0200
++++ poco-1.4.1p1/build/rules/compile   2011-08-03 07:51:42.946044176 +0300
+@@ -14,7 +14,7 @@
+ all: $(DEFAULT_TARGET)
+ all_static: static_debug static_release
+-all_shared: shared_debug shared_release
++all_shared: shared_release
+ all_debug: static_debug shared_debug
+ all_release: static_release shared_release
diff --git a/package/poco/poco-aarch64.patch b/package/poco/poco-aarch64.patch
deleted file mode 100644 (file)
index f629f7b..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-From 37899eda9563d9134cb5864751b6432cabfaac3e Mon Sep 17 00:00:00 2001
-From: Will Newton <will.newton@linaro.org>
-Date: Tue, 21 May 2013 22:11:05 +0100
-Subject: [PATCH] Foundation/include/Poco/Platform.h: Add support for AArch64.
-
-Add support for big and little endian AArch64 preprocessor defines.
----
- Foundation/include/Poco/Platform.h | 8 +++++++-
- 1 file changed, 7 insertions(+), 1 deletion(-)
-
-diff --git a/Foundation/include/Poco/Platform.h b/Foundation/include/Poco/Platform.h
-index f34f277..8ddb4cb 100644
---- a/Foundation/include/Poco/Platform.h
-+++ b/Foundation/include/Poco/Platform.h
-@@ -145,6 +145,7 @@
- #define POCO_ARCH_S390    0x0c
- #define POCO_ARCH_SH      0x0d
- #define POCO_ARCH_NIOS2   0x0e
-+#define POCO_ARCH_AARCH64 0x0f
- #if defined(__ALPHA) || defined(__alpha) || defined(__alpha__) || defined(_M_ALPHA)
-@@ -207,7 +208,12 @@
-       #else
-               #define POCO_ARCH_BIG_ENDIAN 1
-       #endif
--
-+#elif defined(__AARCH64EL__)
-+      #define POCO_ARCH POCO_ARCH_AARCH64
-+      #define POCO_ARCH_LITTLE_ENDIAN 1
-+#elif defined(__AARCH64EB__)
-+      #define POCO_ARCH POCO_ARCH_AARCH64
-+      #define POCO_ARCH_BIG_ENDIAN 1
- #endif
--- 
-1.8.1.4
-
diff --git a/package/poco/poco-add-cross-build-config.patch b/package/poco/poco-add-cross-build-config.patch
deleted file mode 100644 (file)
index a087838..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-From: Baruch Siach <baruch@tkos.co.il>
-Subject: [PATCH] poco: add Linux configuration file for generic cross build
-
-This patch adds the Linux-CrossEnv config file to poco. This file is identical
-to the Linux one, except the added CROSSENV variable that allows setting of
-the toolchain prefix.
-
-Signed-off-by: Baruch Siach <baruch@tkos.co.il>
----
-diff -Nuar poco-1.4.1p1-dist/build/config/Linux-CrossEnv poco-1.4.1p1/build/config/Linux-CrossEnv
---- poco-1.4.1p1-dist/build/config/Linux-CrossEnv      1970-01-01 02:00:00.000000000 +0200
-+++ poco-1.4.1p1/build/config/Linux-CrossEnv   2011-08-02 18:51:03.682047719 +0300
-@@ -0,0 +1,69 @@
-+#
-+# Linux
-+#
-+# Make settings for cross compiled Linux
-+#
-+#
-+
-+#
-+# General Settings
-+#
-+LINKMODE ?= SHARED
-+
-+#
-+# Define Tools
-+#
-+CC      = $(CROSSENV)gcc
-+CXX     = $(CROSSENV)g++
-+LINK    = $(CXX)
-+LIB     = $(CROSSENV)ar -cr
-+RANLIB  = $(CROSSENV)ranlib
-+SHLIB   = $(CXX) -shared -Wl,-soname,$(notdir $@) -o $@
-+SHLIBLN = $(POCO_BASE)/build/script/shlibln
-+STRIP   = $(CROSSENV)strip
-+DEP     = $(POCO_BASE)/build/script/makedepend.gcc 
-+SHELL   = sh
-+RM      = rm -rf
-+CP      = cp
-+MKDIR   = mkdir -p
-+
-+#
-+# Extension for Shared Libraries
-+#
-+SHAREDLIBEXT     = .so.$(target_version)
-+SHAREDLIBLINKEXT = .so
-+
-+#
-+# Compiler and Linker Flags
-+#
-+CFLAGS          = 
-+CFLAGS32        =
-+CFLAGS64        =
-+CXXFLAGS        = -Wall -Wno-sign-compare
-+CXXFLAGS32      =
-+CXXFLAGS64      =
-+LINKFLAGS       =
-+LINKFLAGS32     =
-+LINKFLAGS64     =
-+STATICOPT_CC    =
-+STATICOPT_CXX   =
-+STATICOPT_LINK  = -static
-+SHAREDOPT_CC    = -fPIC
-+SHAREDOPT_CXX   = -fPIC
-+SHAREDOPT_LINK  = -Wl,-rpath,$(LIBPATH)
-+DEBUGOPT_CC     = -g -D_DEBUG
-+DEBUGOPT_CXX    = -g -D_DEBUG
-+DEBUGOPT_LINK   = -g
-+RELEASEOPT_CC   = -O2 -DNDEBUG
-+RELEASEOPT_CXX  = -O2 -DNDEBUG
-+RELEASEOPT_LINK = -O2
-+
-+#
-+# System Specific Flags
-+#
-+SYSFLAGS = -D_XOPEN_SOURCE=500 -D_REENTRANT -D_THREAD_SAFE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DPOCO_HAVE_FD_EPOLL
-+
-+#
-+# System Specific Libraries
-+#
-+SYSLIBS  = -lpthread -ldl -lrt
diff --git a/package/poco/poco-add-staging-search-path.patch b/package/poco/poco-add-staging-search-path.patch
deleted file mode 100644 (file)
index a9397b4..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-From: Baruch Siach <baruch@tkos.co.il>
-Subject: [PATCH] poco: add the staging path to search path
-
-Add the mysql headers and client libraries to the search path of the
-preprocessor and the linker. The $MYSQL_LIBDIR / $MYSQL_INCIDR variables
-must be set from the make command line.
-
-[Peter: Remove host dirs, add MYSQL_INCDIR]
-Signed-off-by: Baruch Siach <baruch@tkos.co.il>
---- 
---- poco-1.4.4-all-dist/Data/MySQL/Makefile    2012-09-20 01:30:42.000000000 +0300
-+++ poco-1.4.4-all/Data/MySQL/Makefile 2012-10-11 14:36:10.343153420 +0200
-@@ -8,8 +8,8 @@
- include $(POCO_BASE)/build/rules/global
--SYSLIBS += -L/usr/local/lib$(LIB64SUFFIX)/mysql -L/usr/lib$(LIB64SUFFIX)/mysql -L/usr/mysql/lib$(LIB64SUFFIX)/mysql -L/usr/local/mysql/lib$(LIB64SUFFIX) -lmysqlclient
--INCLUDE += -I/usr/local/include/mysql/ -I/usr/include/mysql -I/usr/mysql/include/mysql -I/usr/local/mysql/include
-+SYSLIBS += -L$(MYSQL_LIBDIR) -lmysqlclient
-+INCLUDE += -I$(MYSQL_INCDIR)
- SYSFLAGS += -DTHREADSAFE -DNO_TCL
- objects = Binder Extractor SessionImpl Connector \
diff --git a/package/poco/poco-dont-build-debug-libs.patch b/package/poco/poco-dont-build-debug-libs.patch
deleted file mode 100644 (file)
index 7480963..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-From: Baruch Siach <baruch@tkos.co.il>
-Subject: [PATCH] poco: don't build debug libraries
-
-Remove the debug libraries build dependency from the default target.
-
-Signed-off-by: Baruch Siach <baruch@tkos.co.il>
----
-
---- poco-1.4.1p1-dist/build/rules/compile      2011-02-09 11:12:24.000000000 +0200
-+++ poco-1.4.1p1/build/rules/compile   2011-08-03 07:51:42.946044176 +0300
-@@ -14,7 +14,7 @@
- all: $(DEFAULT_TARGET)
- all_static: static_debug static_release
--all_shared: shared_debug shared_release
-+all_shared: shared_release
- all_debug: static_debug shared_debug
- all_release: static_release shared_release
diff --git a/package/popt/0001-no-wchar.patch b/package/popt/0001-no-wchar.patch
new file mode 100644 (file)
index 0000000..161165e
--- /dev/null
@@ -0,0 +1,12 @@
+diff -ru popt-1.14_vanilla/popthelp.c popt-1.14_no-wchar/popthelp.c
+--- popt-1.14_vanilla/popthelp.c       2008-03-27 17:33:08.000000000 +0000
++++ popt-1.14_no-wchar/popthelp.c      2008-04-10 05:44:43.000000000 +0000
+@@ -15,7 +15,7 @@
+ #include <sys/ioctl.h>
+ #endif
+-#define       POPT_WCHAR_HACK
++/* #define    POPT_WCHAR_HACK */
+ #ifdef        POPT_WCHAR_HACK
+ #include <wchar.h>                    /* for mbsrtowcs */
+ /*@access mbstate_t @*/
diff --git a/package/popt/0002-fix-autoreconf.patch b/package/popt/0002-fix-autoreconf.patch
new file mode 100644 (file)
index 0000000..f1fcc57
--- /dev/null
@@ -0,0 +1,38 @@
+Make sure we can autoreconfigure popt
+
+This commit makes a few changes in the popt build system to allow it
+to be autoreconfigured with modern autotools:
+
+ - the TESTS variable shouldn't be using $(top_srcdir), and since we
+   don't care about tests in Buildroot, we just disable it.
+
+ - the AM_C_PROTOTYPES macro is deprecated and should no longer be
+   used, causes an error with autoconf/automake.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/Makefile.am
+===================================================================
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -37,8 +37,6 @@
+ TESTS_ENVIRONMENT = \
+ test1="$(top_builddir)/test1"
+-TESTS = $(top_srcdir)/testit.sh
+-
+ include_HEADERS = popt.h
+ usrlibdir = $(libdir)
+Index: b/configure.ac
+===================================================================
+--- a/configure.ac
++++ b/configure.ac
+@@ -46,7 +46,6 @@
+ AC_SYS_LARGEFILE
+ AC_ISC_POSIX
+-AM_C_PROTOTYPES
+ AC_CHECK_HEADERS(float.h fnmatch.h glob.h langinfo.h libintl.h mcheck.h unistd.h)
diff --git a/package/popt/0003-glob-detection.patch b/package/popt/0003-glob-detection.patch
new file mode 100644 (file)
index 0000000..7bdce7d
--- /dev/null
@@ -0,0 +1,41 @@
+Detect glob_pattern_p()
+
+The current popt build system tests the existence of <glob.h>, and
+then assumes that if __GLIBC__ is defined, then glob_pattern_p() must
+be available. Unfortunately, that's not true with uClibc: <glob.h> may
+be installed, but not necessarily the GNU glob extensions... and
+uClibc defines __GLIBC__. This is causing build issues with certain
+uClibc toolchains that do not have GNU glob extensions enabled.
+
+To fix this, this patch adds an AC_CHECK_FUNCS() test for
+glob_pattern_p, and uses that to find out whether glob_pattern_p() is
+available or not.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/configure.ac
+===================================================================
+--- a/configure.ac
++++ b/configure.ac
+@@ -81,7 +81,7 @@
+ AC_CHECK_FUNC(setreuid, [], [
+     AC_CHECK_LIB(ucb, setreuid, [if echo $LIBS | grep -- -lucb >/dev/null ;then :; else LIBS="$LIBS -lc -lucb" USEUCB=y;fi])
+ ])
+-AC_CHECK_FUNCS(getuid geteuid iconv mtrace __secure_getenv setregid stpcpy strerror vasprintf srandom)
++AC_CHECK_FUNCS(getuid geteuid iconv mtrace __secure_getenv setregid stpcpy strerror vasprintf srandom glob_pattern_p)
+ AM_GNU_GETTEXT([external])
+ AM_ICONV_LINK
+Index: b/poptconfig.c
+===================================================================
+--- a/poptconfig.c
++++ b/poptconfig.c
+@@ -42,7 +42,7 @@
+ /*@=declundef =exportheader =incondefs =protoparammatch =redecl =type @*/
+ #endif        /* __LCLINT__ */
+-#if !defined(__GLIBC__)
++#if !defined(HAVE_GLOB_PATTERN_P)
+ /* Return nonzero if PATTERN contains any metacharacters.
+    Metacharacters can be quoted with backslashes if QUOTE is nonzero.  */
+ static int
diff --git a/package/popt/popt-01-no-wchar.patch b/package/popt/popt-01-no-wchar.patch
deleted file mode 100644 (file)
index 161165e..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -ru popt-1.14_vanilla/popthelp.c popt-1.14_no-wchar/popthelp.c
---- popt-1.14_vanilla/popthelp.c       2008-03-27 17:33:08.000000000 +0000
-+++ popt-1.14_no-wchar/popthelp.c      2008-04-10 05:44:43.000000000 +0000
-@@ -15,7 +15,7 @@
- #include <sys/ioctl.h>
- #endif
--#define       POPT_WCHAR_HACK
-+/* #define    POPT_WCHAR_HACK */
- #ifdef        POPT_WCHAR_HACK
- #include <wchar.h>                    /* for mbsrtowcs */
- /*@access mbstate_t @*/
diff --git a/package/popt/popt-02-fix-autoreconf.patch b/package/popt/popt-02-fix-autoreconf.patch
deleted file mode 100644 (file)
index f1fcc57..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-Make sure we can autoreconfigure popt
-
-This commit makes a few changes in the popt build system to allow it
-to be autoreconfigured with modern autotools:
-
- - the TESTS variable shouldn't be using $(top_srcdir), and since we
-   don't care about tests in Buildroot, we just disable it.
-
- - the AM_C_PROTOTYPES macro is deprecated and should no longer be
-   used, causes an error with autoconf/automake.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/Makefile.am
-===================================================================
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -37,8 +37,6 @@
- TESTS_ENVIRONMENT = \
- test1="$(top_builddir)/test1"
--TESTS = $(top_srcdir)/testit.sh
--
- include_HEADERS = popt.h
- usrlibdir = $(libdir)
-Index: b/configure.ac
-===================================================================
---- a/configure.ac
-+++ b/configure.ac
-@@ -46,7 +46,6 @@
- AC_SYS_LARGEFILE
- AC_ISC_POSIX
--AM_C_PROTOTYPES
- AC_CHECK_HEADERS(float.h fnmatch.h glob.h langinfo.h libintl.h mcheck.h unistd.h)
diff --git a/package/popt/popt-03-glob-detection.patch b/package/popt/popt-03-glob-detection.patch
deleted file mode 100644 (file)
index 7bdce7d..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-Detect glob_pattern_p()
-
-The current popt build system tests the existence of <glob.h>, and
-then assumes that if __GLIBC__ is defined, then glob_pattern_p() must
-be available. Unfortunately, that's not true with uClibc: <glob.h> may
-be installed, but not necessarily the GNU glob extensions... and
-uClibc defines __GLIBC__. This is causing build issues with certain
-uClibc toolchains that do not have GNU glob extensions enabled.
-
-To fix this, this patch adds an AC_CHECK_FUNCS() test for
-glob_pattern_p, and uses that to find out whether glob_pattern_p() is
-available or not.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/configure.ac
-===================================================================
---- a/configure.ac
-+++ b/configure.ac
-@@ -81,7 +81,7 @@
- AC_CHECK_FUNC(setreuid, [], [
-     AC_CHECK_LIB(ucb, setreuid, [if echo $LIBS | grep -- -lucb >/dev/null ;then :; else LIBS="$LIBS -lc -lucb" USEUCB=y;fi])
- ])
--AC_CHECK_FUNCS(getuid geteuid iconv mtrace __secure_getenv setregid stpcpy strerror vasprintf srandom)
-+AC_CHECK_FUNCS(getuid geteuid iconv mtrace __secure_getenv setregid stpcpy strerror vasprintf srandom glob_pattern_p)
- AM_GNU_GETTEXT([external])
- AM_ICONV_LINK
-Index: b/poptconfig.c
-===================================================================
---- a/poptconfig.c
-+++ b/poptconfig.c
-@@ -42,7 +42,7 @@
- /*@=declundef =exportheader =incondefs =protoparammatch =redecl =type @*/
- #endif        /* __LCLINT__ */
--#if !defined(__GLIBC__)
-+#if !defined(HAVE_GLOB_PATTERN_P)
- /* Return nonzero if PATTERN contains any metacharacters.
-    Metacharacters can be quoted with backslashes if QUOTE is nonzero.  */
- static int
diff --git a/package/portmap/0001-README-fix-typo-in-tcp-wrapper-doc.patch b/package/portmap/0001-README-fix-typo-in-tcp-wrapper-doc.patch
new file mode 100644 (file)
index 0000000..01aa7bf
--- /dev/null
@@ -0,0 +1,26 @@
+From af4a27a17bbdbe941f2462e116c2e4c8ade110e3 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Fri, 19 Nov 2010 23:35:20 -0500
+Subject: [PATCH 1/4] README: fix typo in tcp wrapper doc
+
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+---
+ README |    2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/README b/README
+index 0da54cc..916de7e 100644
+--- a/README
++++ b/README
+@@ -18,7 +18,7 @@ There is no "./configure", just use "make".
+ Some make variable can be used to control compilation.
+- NO_TCP_WRAPPER=  if non-empty, doen't use tcp_wrappers
++ NO_TCP_WRAPPER=  if non-empty, don't use tcp_wrappers
+  USE_DNS=       if set, tcp_wrappers can check peers based on hostname
+                 as well as IP address.  This should only be used if you
+                 are certain that gethostbyname will never trigger a
+-- 
+1.7.3.1
+
diff --git a/package/portmap/0002-NO_PIE-make-PIE-support-controllable.patch b/package/portmap/0002-NO_PIE-make-PIE-support-controllable.patch
new file mode 100644 (file)
index 0000000..6e544bf
--- /dev/null
@@ -0,0 +1,53 @@
+From 087874b15367a04fd482541d1832696d7163d1ac Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Fri, 19 Nov 2010 23:35:47 -0500
+Subject: [PATCH 2/4] NO_PIE: make PIE support controllable
+
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+---
+ Makefile |    8 ++++++--
+ README   |    1 +
+ 2 files changed, 7 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 5343428..cfcfdbb 100644
+--- a/Makefile
++++ b/Makefile
+@@ -106,6 +106,10 @@ CPPFLAGS += -DIGNORE_SIGCHLD      # AIX 4.x, HP-UX 9.x
+ #
+ # LDLIBS      += -m
+ # CFLAGS      += -arch m68k -arch i386 -arch hppa
++ifeq ($(NO_PIE),)
++CFLAGS_PIE  = -fpie
++LDFLAGS_PIE = -pie
++endif
+ # Auxiliary libraries that you may have to specify
+ #
+@@ -125,9 +129,9 @@ CFLAGS   += -Wall -Wstrict-prototypes
+ all:  portmap pmap_dump pmap_set portmap.man
+ CPPFLAGS += $(HOSTS_ACCESS)
+-portmap: CFLAGS   += -fpie
++portmap: CFLAGS   += $(CFLAGS_PIE)
+ portmap: LDLIBS   += $(WRAP_LIB)
+-portmap: LDFLAGS  += -pie
++portmap: LDFLAGS  += $(LDFLAGS_PIE)
+ portmap: portmap.o pmap_check.o from_local.o
+ from_local: CPPFLAGS += -DTEST
+diff --git a/README b/README
+index 916de7e..e0b561a 100644
+--- a/README
++++ b/README
+@@ -18,6 +18,7 @@ There is no "./configure", just use "make".
+ Some make variable can be used to control compilation.
++ NO_PIE=        if non-empty, don't build portmap as a PIE
+  NO_TCP_WRAPPER=  if non-empty, don't use tcp_wrappers
+  USE_DNS=       if set, tcp_wrappers can check peers based on hostname
+                 as well as IP address.  This should only be used if you
+-- 
+1.7.3.1
+
diff --git a/package/portmap/0003-NO_FORK-control-usage-of-fork-for-nommu-systems.patch b/package/portmap/0003-NO_FORK-control-usage-of-fork-for-nommu-systems.patch
new file mode 100644 (file)
index 0000000..41396b6
--- /dev/null
@@ -0,0 +1,95 @@
+From b3afea5757af1a7356ba30d2e0a7d5909ca18121 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Fri, 19 Nov 2010 23:48:20 -0500
+Subject: [PATCH 3/4] NO_FORK: control usage of fork() for nommu systems
+
+nommu systems lack a fork() function, so add a NO_FORK flag to control
+its usage.  We don't lose a ton of functionality in doing so, and on an
+embedded system, this is OK.
+
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+---
+ Makefile     |    5 +++++
+ README       |    1 +
+ pmap_check.c |    6 ++++--
+ portmap.c    |    6 ++++++
+ 4 files changed, 16 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index cfcfdbb..9df5574 100644
+--- a/Makefile
++++ b/Makefile
+@@ -27,6 +27,11 @@ MAN_SED += -e 's/USE_DNS/yes/'
+ endif
+ endif
++# For no-mmu systems, we have to disable the fork() functions.
++ifneq ($(NO_FORK),)
++CPPFLAGS += -DNO_FORK
++endif
++
+ # Comment out if your RPC library does not allocate privileged ports for
+ # requests from processes with root privilege, or the new portmap will
+ # always reject requests to register/unregister services on privileged
+diff --git a/README b/README
+index e0b561a..bda1707 100644
+--- a/README
++++ b/README
+@@ -18,6 +18,7 @@ There is no "./configure", just use "make".
+ Some make variable can be used to control compilation.
++ NO_FORK=       if non-empty, don't use fork (good for nommu systems)
+  NO_PIE=        if non-empty, don't build portmap as a PIE
+  NO_TCP_WRAPPER=  if non-empty, don't use tcp_wrappers
+  USE_DNS=       if set, tcp_wrappers can check peers based on hostname
+diff --git a/pmap_check.c b/pmap_check.c
+index 6b3e490..983414e 100644
+--- a/pmap_check.c
++++ b/pmap_check.c
+@@ -302,8 +302,10 @@ static void logit(int severity, struct sockaddr_in *addr,
+      * getrpcbynumber() or syslog() does its thing.
+      */
+-    if (fork() == 0) {
+-
++#ifndef NO_FORK
++    if (fork() == 0)
++#endif
++    {
+       /* Try to map program number to name. */
+       if (prognum == 0) {
+diff --git a/portmap.c b/portmap.c
+index 2a98881..94abc64 100644
+--- a/portmap.c
++++ b/portmap.c
+@@ -753,6 +755,7 @@ static void callit(struct svc_req *rqstp, SVCXPRT *xprt)
+       if ((pml = find_service(a.rmt_prog, a.rmt_vers,
+           (u_long)IPPROTO_UDP)) == NULL)
+               return;
++#ifndef NO_FORK
+       /*
+        * fork a child to do the work.  Parent immediately returns.
+        * Child exits upon completion.
+@@ -763,6 +766,7 @@ static void callit(struct svc_req *rqstp, SVCXPRT *xprt)
+                           a.rmt_prog);
+               return;
+       }
++#endif
+       port = pml->pml_map.pm_port;
+       get_myaddress(&me);
+       me.sin_port = htons(port);
+@@ -783,7 +787,9 @@ static void callit(struct svc_req *rqstp, SVCXPRT *xprt)
+               clnt_destroy(client);
+       }
+       (void)close(so);
++#ifndef NO_FORK
+       exit(0);
++#endif
+ }
+ #ifndef IGNORE_SIGCHLD                        /* Lionel Cons <cons@dxcern.cern.ch> */
+-- 
+1.7.3.1
+
diff --git a/package/portmap/0004-NO_PERROR-control-overriding-of-perror-symbol.patch b/package/portmap/0004-NO_PERROR-control-overriding-of-perror-symbol.patch
new file mode 100644 (file)
index 0000000..665d6a1
--- /dev/null
@@ -0,0 +1,65 @@
+From 8cea0778f0fb838a7bd764be08f15e1494e5a0b2 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Fri, 19 Nov 2010 23:50:27 -0500
+Subject: [PATCH 4/4] NO_PERROR: control overriding of perror() symbol
+
+Doing static builds of portmap might fail when the C library's perror()
+function is pulled in and collides with portmap's definition.  So add a
+flag to control the local override.
+
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+---
+ Makefile |    5 +++++
+ README   |    1 +
+ 2 files changed, 6 insertions(+), 0 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 9df5574..1635107 100644
+--- a/Makefile
++++ b/Makefile
+@@ -32,6 +32,11 @@ ifneq ($(NO_FORK),)
+ CPPFLAGS += -DNO_FORK
+ endif
++# For static builds, we might hit perror() symbol clashes
++ifneq ($(NO_PERROR),)
++CPPFLAGS += -DNO_PERROR
++endif
++
+ # Comment out if your RPC library does not allocate privileged ports for
+ # requests from processes with root privilege, or the new portmap will
+ # always reject requests to register/unregister services on privileged
+diff --git a/README b/README
+index bda1707..05861a8 100644
+--- a/README
++++ b/README
+@@ -19,6 +19,7 @@ There is no "./configure", just use "make".
+ Some make variable can be used to control compilation.
+  NO_FORK=       if non-empty, don't use fork (good for nommu systems)
++ NO_PERROR=     if non-empty, don't override the perror() func
+  NO_PIE=        if non-empty, don't build portmap as a PIE
+  NO_TCP_WRAPPER=  if non-empty, don't use tcp_wrappers
+  USE_DNS=       if set, tcp_wrappers can check peers based on hostname
+diff --git a/portmap.c b/portmap.c
+index 2a98881..94abc64 100644
+--- a/portmap.c
++++ b/portmap.c
+@@ -391,12 +391,14 @@ main(int argc, char **argv)
+       abort();
+ }
++#ifndef NO_PERROR
+ /* need to override perror calls in rpc library */
+ void perror(const char *what)
+ {
+       syslog(LOG_ERR, "%s: %m", what);
+ }
++#endif
+ static struct pmaplist *
+ find_service(u_long prog, u_long vers, u_long prot)
+-- 
+1.7.3.1
+
diff --git a/package/portmap/0005-tcpd.patch b/package/portmap/0005-tcpd.patch
new file mode 100644 (file)
index 0000000..c6af8f8
--- /dev/null
@@ -0,0 +1,18 @@
+Enable compile without tcp-wrappers
+
+Patch by Timothy Redaelli <drizzt@gentoo.org>
+
+http://bugs.gentoo.org/178242
+
+--- portmap_6.0/pmap_check.c
++++ portmap_6.0/pmap_check.c
+@@ -44,7 +44,9 @@
+ #include <netinet/in.h>
+ #include <rpc/rpcent.h>
+ #endif
++#ifdef HOSTS_ACCESS
+ #include <tcpd.h>
++#endif
+ #include <arpa/inet.h>
+ #include <grp.h>
diff --git a/package/portmap/portmap-6.0-0001-README-fix-typo-in-tcp-wrapper-doc.patch b/package/portmap/portmap-6.0-0001-README-fix-typo-in-tcp-wrapper-doc.patch
deleted file mode 100644 (file)
index 01aa7bf..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-From af4a27a17bbdbe941f2462e116c2e4c8ade110e3 Mon Sep 17 00:00:00 2001
-From: Mike Frysinger <vapier@gentoo.org>
-Date: Fri, 19 Nov 2010 23:35:20 -0500
-Subject: [PATCH 1/4] README: fix typo in tcp wrapper doc
-
-Signed-off-by: Mike Frysinger <vapier@gentoo.org>
----
- README |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/README b/README
-index 0da54cc..916de7e 100644
---- a/README
-+++ b/README
-@@ -18,7 +18,7 @@ There is no "./configure", just use "make".
- Some make variable can be used to control compilation.
-- NO_TCP_WRAPPER=  if non-empty, doen't use tcp_wrappers
-+ NO_TCP_WRAPPER=  if non-empty, don't use tcp_wrappers
-  USE_DNS=       if set, tcp_wrappers can check peers based on hostname
-                 as well as IP address.  This should only be used if you
-                 are certain that gethostbyname will never trigger a
--- 
-1.7.3.1
-
diff --git a/package/portmap/portmap-6.0-0002-NO_PIE-make-PIE-support-controllable.patch b/package/portmap/portmap-6.0-0002-NO_PIE-make-PIE-support-controllable.patch
deleted file mode 100644 (file)
index 6e544bf..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-From 087874b15367a04fd482541d1832696d7163d1ac Mon Sep 17 00:00:00 2001
-From: Mike Frysinger <vapier@gentoo.org>
-Date: Fri, 19 Nov 2010 23:35:47 -0500
-Subject: [PATCH 2/4] NO_PIE: make PIE support controllable
-
-Signed-off-by: Mike Frysinger <vapier@gentoo.org>
----
- Makefile |    8 ++++++--
- README   |    1 +
- 2 files changed, 7 insertions(+), 2 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index 5343428..cfcfdbb 100644
---- a/Makefile
-+++ b/Makefile
-@@ -106,6 +106,10 @@ CPPFLAGS += -DIGNORE_SIGCHLD      # AIX 4.x, HP-UX 9.x
- #
- # LDLIBS      += -m
- # CFLAGS      += -arch m68k -arch i386 -arch hppa
-+ifeq ($(NO_PIE),)
-+CFLAGS_PIE  = -fpie
-+LDFLAGS_PIE = -pie
-+endif
- # Auxiliary libraries that you may have to specify
- #
-@@ -125,9 +129,9 @@ CFLAGS   += -Wall -Wstrict-prototypes
- all:  portmap pmap_dump pmap_set portmap.man
- CPPFLAGS += $(HOSTS_ACCESS)
--portmap: CFLAGS   += -fpie
-+portmap: CFLAGS   += $(CFLAGS_PIE)
- portmap: LDLIBS   += $(WRAP_LIB)
--portmap: LDFLAGS  += -pie
-+portmap: LDFLAGS  += $(LDFLAGS_PIE)
- portmap: portmap.o pmap_check.o from_local.o
- from_local: CPPFLAGS += -DTEST
-diff --git a/README b/README
-index 916de7e..e0b561a 100644
---- a/README
-+++ b/README
-@@ -18,6 +18,7 @@ There is no "./configure", just use "make".
- Some make variable can be used to control compilation.
-+ NO_PIE=        if non-empty, don't build portmap as a PIE
-  NO_TCP_WRAPPER=  if non-empty, don't use tcp_wrappers
-  USE_DNS=       if set, tcp_wrappers can check peers based on hostname
-                 as well as IP address.  This should only be used if you
--- 
-1.7.3.1
-
diff --git a/package/portmap/portmap-6.0-0003-NO_FORK-control-usage-of-fork-for-nommu-systems.patch b/package/portmap/portmap-6.0-0003-NO_FORK-control-usage-of-fork-for-nommu-systems.patch
deleted file mode 100644 (file)
index 41396b6..0000000
+++ /dev/null
@@ -1,95 +0,0 @@
-From b3afea5757af1a7356ba30d2e0a7d5909ca18121 Mon Sep 17 00:00:00 2001
-From: Mike Frysinger <vapier@gentoo.org>
-Date: Fri, 19 Nov 2010 23:48:20 -0500
-Subject: [PATCH 3/4] NO_FORK: control usage of fork() for nommu systems
-
-nommu systems lack a fork() function, so add a NO_FORK flag to control
-its usage.  We don't lose a ton of functionality in doing so, and on an
-embedded system, this is OK.
-
-Signed-off-by: Mike Frysinger <vapier@gentoo.org>
----
- Makefile     |    5 +++++
- README       |    1 +
- pmap_check.c |    6 ++++--
- portmap.c    |    6 ++++++
- 4 files changed, 16 insertions(+), 2 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index cfcfdbb..9df5574 100644
---- a/Makefile
-+++ b/Makefile
-@@ -27,6 +27,11 @@ MAN_SED += -e 's/USE_DNS/yes/'
- endif
- endif
-+# For no-mmu systems, we have to disable the fork() functions.
-+ifneq ($(NO_FORK),)
-+CPPFLAGS += -DNO_FORK
-+endif
-+
- # Comment out if your RPC library does not allocate privileged ports for
- # requests from processes with root privilege, or the new portmap will
- # always reject requests to register/unregister services on privileged
-diff --git a/README b/README
-index e0b561a..bda1707 100644
---- a/README
-+++ b/README
-@@ -18,6 +18,7 @@ There is no "./configure", just use "make".
- Some make variable can be used to control compilation.
-+ NO_FORK=       if non-empty, don't use fork (good for nommu systems)
-  NO_PIE=        if non-empty, don't build portmap as a PIE
-  NO_TCP_WRAPPER=  if non-empty, don't use tcp_wrappers
-  USE_DNS=       if set, tcp_wrappers can check peers based on hostname
-diff --git a/pmap_check.c b/pmap_check.c
-index 6b3e490..983414e 100644
---- a/pmap_check.c
-+++ b/pmap_check.c
-@@ -302,8 +302,10 @@ static void logit(int severity, struct sockaddr_in *addr,
-      * getrpcbynumber() or syslog() does its thing.
-      */
--    if (fork() == 0) {
--
-+#ifndef NO_FORK
-+    if (fork() == 0)
-+#endif
-+    {
-       /* Try to map program number to name. */
-       if (prognum == 0) {
-diff --git a/portmap.c b/portmap.c
-index 2a98881..94abc64 100644
---- a/portmap.c
-+++ b/portmap.c
-@@ -753,6 +755,7 @@ static void callit(struct svc_req *rqstp, SVCXPRT *xprt)
-       if ((pml = find_service(a.rmt_prog, a.rmt_vers,
-           (u_long)IPPROTO_UDP)) == NULL)
-               return;
-+#ifndef NO_FORK
-       /*
-        * fork a child to do the work.  Parent immediately returns.
-        * Child exits upon completion.
-@@ -763,6 +766,7 @@ static void callit(struct svc_req *rqstp, SVCXPRT *xprt)
-                           a.rmt_prog);
-               return;
-       }
-+#endif
-       port = pml->pml_map.pm_port;
-       get_myaddress(&me);
-       me.sin_port = htons(port);
-@@ -783,7 +787,9 @@ static void callit(struct svc_req *rqstp, SVCXPRT *xprt)
-               clnt_destroy(client);
-       }
-       (void)close(so);
-+#ifndef NO_FORK
-       exit(0);
-+#endif
- }
- #ifndef IGNORE_SIGCHLD                        /* Lionel Cons <cons@dxcern.cern.ch> */
--- 
-1.7.3.1
-
diff --git a/package/portmap/portmap-6.0-0004-NO_PERROR-control-overriding-of-perror-symbol.patch b/package/portmap/portmap-6.0-0004-NO_PERROR-control-overriding-of-perror-symbol.patch
deleted file mode 100644 (file)
index 665d6a1..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-From 8cea0778f0fb838a7bd764be08f15e1494e5a0b2 Mon Sep 17 00:00:00 2001
-From: Mike Frysinger <vapier@gentoo.org>
-Date: Fri, 19 Nov 2010 23:50:27 -0500
-Subject: [PATCH 4/4] NO_PERROR: control overriding of perror() symbol
-
-Doing static builds of portmap might fail when the C library's perror()
-function is pulled in and collides with portmap's definition.  So add a
-flag to control the local override.
-
-Signed-off-by: Mike Frysinger <vapier@gentoo.org>
----
- Makefile |    5 +++++
- README   |    1 +
- 2 files changed, 6 insertions(+), 0 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index 9df5574..1635107 100644
---- a/Makefile
-+++ b/Makefile
-@@ -32,6 +32,11 @@ ifneq ($(NO_FORK),)
- CPPFLAGS += -DNO_FORK
- endif
-+# For static builds, we might hit perror() symbol clashes
-+ifneq ($(NO_PERROR),)
-+CPPFLAGS += -DNO_PERROR
-+endif
-+
- # Comment out if your RPC library does not allocate privileged ports for
- # requests from processes with root privilege, or the new portmap will
- # always reject requests to register/unregister services on privileged
-diff --git a/README b/README
-index bda1707..05861a8 100644
---- a/README
-+++ b/README
-@@ -19,6 +19,7 @@ There is no "./configure", just use "make".
- Some make variable can be used to control compilation.
-  NO_FORK=       if non-empty, don't use fork (good for nommu systems)
-+ NO_PERROR=     if non-empty, don't override the perror() func
-  NO_PIE=        if non-empty, don't build portmap as a PIE
-  NO_TCP_WRAPPER=  if non-empty, don't use tcp_wrappers
-  USE_DNS=       if set, tcp_wrappers can check peers based on hostname
-diff --git a/portmap.c b/portmap.c
-index 2a98881..94abc64 100644
---- a/portmap.c
-+++ b/portmap.c
-@@ -391,12 +391,14 @@ main(int argc, char **argv)
-       abort();
- }
-+#ifndef NO_PERROR
- /* need to override perror calls in rpc library */
- void perror(const char *what)
- {
-       syslog(LOG_ERR, "%s: %m", what);
- }
-+#endif
- static struct pmaplist *
- find_service(u_long prog, u_long vers, u_long prot)
--- 
-1.7.3.1
-
diff --git a/package/portmap/portmap-6.0-tcpd.patch b/package/portmap/portmap-6.0-tcpd.patch
deleted file mode 100644 (file)
index c6af8f8..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-Enable compile without tcp-wrappers
-
-Patch by Timothy Redaelli <drizzt@gentoo.org>
-
-http://bugs.gentoo.org/178242
-
---- portmap_6.0/pmap_check.c
-+++ portmap_6.0/pmap_check.c
-@@ -44,7 +44,9 @@
- #include <netinet/in.h>
- #include <rpc/rpcent.h>
- #endif
-+#ifdef HOSTS_ACCESS
- #include <tcpd.h>
-+#endif
- #include <arpa/inet.h>
- #include <grp.h>
diff --git a/package/pptp-linux/0001-susv3-legacy.patch b/package/pptp-linux/0001-susv3-legacy.patch
new file mode 100644 (file)
index 0000000..5cc9f57
--- /dev/null
@@ -0,0 +1,29 @@
+bzero is deprecated in POSIX.1-2001 and removed for POSIX.1-2008 so
+switch to memset instead.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura pptp-1.8.0.orig/pptp_callmgr.c pptp-1.8.0/pptp_callmgr.c
+--- pptp-1.8.0.orig/pptp_callmgr.c     2013-10-23 05:10:46.000000000 -0300
++++ pptp-1.8.0/pptp_callmgr.c  2014-03-31 16:47:42.617643298 -0300
+@@ -340,7 +340,7 @@
+     }
+ #endif
+     if (localbind.s_addr != INADDR_NONE) {
+-        bzero(&src, sizeof(src));
++      memset(&src, 0, sizeof(src));
+         src.i.sin_family = AF_INET;
+         src.i.sin_addr   = localbind;
+         if (bind(s, &src.a, sizeof(src.i)) != 0) {
+diff -Nura pptp-1.8.0.orig/pptp_gre.c pptp-1.8.0/pptp_gre.c
+--- pptp-1.8.0.orig/pptp_gre.c 2013-10-23 05:10:46.000000000 -0300
++++ pptp-1.8.0/pptp_gre.c      2014-03-31 16:47:30.745249066 -0300
+@@ -103,7 +103,7 @@
+     }
+ #endif
+     if (localbind.s_addr != INADDR_NONE) {
+-        bzero(&loc_addr, sizeof(loc_addr));
++      memset(&loc_addr, 0, sizeof(loc_addr));
+         loc_addr.i.sin_family = AF_INET;
+         loc_addr.i.sin_addr   = localbind;
+         if (bind(s, &loc_addr.a, sizeof(loc_addr.i)) != 0) {
diff --git a/package/pptp-linux/0002-fix-parallel-build.patch b/package/pptp-linux/0002-fix-parallel-build.patch
new file mode 100644 (file)
index 0000000..04a7977
--- /dev/null
@@ -0,0 +1,23 @@
+Fix parallel build issue
+
+The config.h header file must be created before being used to build
+source files that include it, especially version.c. In order for this
+to happen even in highly-parallel builds, we add a dependency of all
+object files on config.h, in order to ensure it gets generated before
+make attempts to build the object files.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/Makefile
+===================================================================
+--- a/Makefile
++++ b/Makefile
+@@ -37,6 +37,8 @@
+ all: config.h $(PPTP_BIN) pptpsetup.8
++$(PPTP_OBJS): config.h
++
+ $(PPTP_BIN): $(PPTP_OBJS) $(PPTP_DEPS)
+       $(CC) -o $(PPTP_BIN) $(PPTP_OBJS) $(LDFLAGS) $(LIBS)
diff --git a/package/pptp-linux/pptp-linux-001-susv3-legacy.patch b/package/pptp-linux/pptp-linux-001-susv3-legacy.patch
deleted file mode 100644 (file)
index 5cc9f57..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-bzero is deprecated in POSIX.1-2001 and removed for POSIX.1-2008 so
-switch to memset instead.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura pptp-1.8.0.orig/pptp_callmgr.c pptp-1.8.0/pptp_callmgr.c
---- pptp-1.8.0.orig/pptp_callmgr.c     2013-10-23 05:10:46.000000000 -0300
-+++ pptp-1.8.0/pptp_callmgr.c  2014-03-31 16:47:42.617643298 -0300
-@@ -340,7 +340,7 @@
-     }
- #endif
-     if (localbind.s_addr != INADDR_NONE) {
--        bzero(&src, sizeof(src));
-+      memset(&src, 0, sizeof(src));
-         src.i.sin_family = AF_INET;
-         src.i.sin_addr   = localbind;
-         if (bind(s, &src.a, sizeof(src.i)) != 0) {
-diff -Nura pptp-1.8.0.orig/pptp_gre.c pptp-1.8.0/pptp_gre.c
---- pptp-1.8.0.orig/pptp_gre.c 2013-10-23 05:10:46.000000000 -0300
-+++ pptp-1.8.0/pptp_gre.c      2014-03-31 16:47:30.745249066 -0300
-@@ -103,7 +103,7 @@
-     }
- #endif
-     if (localbind.s_addr != INADDR_NONE) {
--        bzero(&loc_addr, sizeof(loc_addr));
-+      memset(&loc_addr, 0, sizeof(loc_addr));
-         loc_addr.i.sin_family = AF_INET;
-         loc_addr.i.sin_addr   = localbind;
-         if (bind(s, &loc_addr.a, sizeof(loc_addr.i)) != 0) {
diff --git a/package/pptp-linux/pptp-linux-002-fix-parallel-build.patch b/package/pptp-linux/pptp-linux-002-fix-parallel-build.patch
deleted file mode 100644 (file)
index 04a7977..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-Fix parallel build issue
-
-The config.h header file must be created before being used to build
-source files that include it, especially version.c. In order for this
-to happen even in highly-parallel builds, we add a dependency of all
-object files on config.h, in order to ensure it gets generated before
-make attempts to build the object files.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/Makefile
-===================================================================
---- a/Makefile
-+++ b/Makefile
-@@ -37,6 +37,8 @@
- all: config.h $(PPTP_BIN) pptpsetup.8
-+$(PPTP_OBJS): config.h
-+
- $(PPTP_BIN): $(PPTP_OBJS) $(PPTP_DEPS)
-       $(CC) -o $(PPTP_BIN) $(PPTP_OBJS) $(LDFLAGS) $(LIBS)
diff --git a/package/prboom/0001-libpng-1.4.patch b/package/prboom/0001-libpng-1.4.patch
new file mode 100644 (file)
index 0000000..0d2a3a5
--- /dev/null
@@ -0,0 +1,32 @@
+[PATCH] fix build with libpng 1.4.x
+
+In 1.4.x the png_*_NULL defines are gone. Replace them with a normal
+NULL instead.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ src/SDL/i_sshot.c |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+Index: prboom-2.5.0/src/SDL/i_sshot.c
+===================================================================
+--- prboom-2.5.0.orig/src/SDL/i_sshot.c
++++ prboom-2.5.0/src/SDL/i_sshot.c
+@@ -231,7 +231,7 @@ int I_ScreenShot (const char *fname)
+   if (fp)
+   {
+     png_struct *png_ptr = png_create_write_struct(
+-        PNG_LIBPNG_VER_STRING, png_error_ptr_NULL, error_fn, warning_fn);
++        PNG_LIBPNG_VER_STRING, NULL, error_fn, warning_fn);
+     if (png_ptr)
+     {
+@@ -279,7 +279,7 @@ int I_ScreenShot (const char *fname)
+             break;
+         }
+       }
+-      png_destroy_write_struct(&png_ptr,  png_infopp_NULL);
++      png_destroy_write_struct(&png_ptr, NULL);
+     }
+     fclose(fp);
+   }
diff --git a/package/prboom/prboom-2.5.0-libpng-1.4.patch b/package/prboom/prboom-2.5.0-libpng-1.4.patch
deleted file mode 100644 (file)
index 0d2a3a5..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-[PATCH] fix build with libpng 1.4.x
-
-In 1.4.x the png_*_NULL defines are gone. Replace them with a normal
-NULL instead.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- src/SDL/i_sshot.c |    4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-Index: prboom-2.5.0/src/SDL/i_sshot.c
-===================================================================
---- prboom-2.5.0.orig/src/SDL/i_sshot.c
-+++ prboom-2.5.0/src/SDL/i_sshot.c
-@@ -231,7 +231,7 @@ int I_ScreenShot (const char *fname)
-   if (fp)
-   {
-     png_struct *png_ptr = png_create_write_struct(
--        PNG_LIBPNG_VER_STRING, png_error_ptr_NULL, error_fn, warning_fn);
-+        PNG_LIBPNG_VER_STRING, NULL, error_fn, warning_fn);
-     if (png_ptr)
-     {
-@@ -279,7 +279,7 @@ int I_ScreenShot (const char *fname)
-             break;
-         }
-       }
--      png_destroy_write_struct(&png_ptr,  png_infopp_NULL);
-+      png_destroy_write_struct(&png_ptr, NULL);
-     }
-     fclose(fp);
-   }
diff --git a/package/procps-ng/0001-remove-index.patch b/package/procps-ng/0001-remove-index.patch
new file mode 100644 (file)
index 0000000..1d85b31
--- /dev/null
@@ -0,0 +1,16 @@
+sysctl: remove use of legacy index()
+
+[yann.morin.1998@free.fr: adapt to procps-ng]
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+diff -durN procps-v3.3.9.orig/sysctl.c procps-v3.3.9/sysctl.c
+--- procps-v3.3.9.orig/sysctl.c        2013-12-03 12:16:18.000000000 +0100
++++ procps-v3.3.9/sysctl.c     2014-05-31 00:45:00.869748741 +0200
+@@ -794,7 +794,7 @@
+                     program_invocation_short_name);
+       for ( ; *argv; argv++) {
+-              if (WriteMode || index(*argv, '='))
++              if (WriteMode || strchr(*argv, '='))
+                       ReturnCode += WriteSetting(*argv);
+               else
+                       ReturnCode += ReadSetting(*argv);
diff --git a/package/procps-ng/procps-ng-0000-remove-index.patch b/package/procps-ng/procps-ng-0000-remove-index.patch
deleted file mode 100644 (file)
index 1d85b31..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-sysctl: remove use of legacy index()
-
-[yann.morin.1998@free.fr: adapt to procps-ng]
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
-diff -durN procps-v3.3.9.orig/sysctl.c procps-v3.3.9/sysctl.c
---- procps-v3.3.9.orig/sysctl.c        2013-12-03 12:16:18.000000000 +0100
-+++ procps-v3.3.9/sysctl.c     2014-05-31 00:45:00.869748741 +0200
-@@ -794,7 +794,7 @@
-                     program_invocation_short_name);
-       for ( ; *argv; argv++) {
--              if (WriteMode || index(*argv, '='))
-+              if (WriteMode || strchr(*argv, '='))
-                       ReturnCode += WriteSetting(*argv);
-               else
-                       ReturnCode += ReadSetting(*argv);
diff --git a/package/proftpd/0001-fix-kernel-header-capability-version.patch b/package/proftpd/0001-fix-kernel-header-capability-version.patch
new file mode 100644 (file)
index 0000000..4401c9a
--- /dev/null
@@ -0,0 +1,12 @@
+--- a/lib/libcap/libcap.h      2008-08-22 19:49:48.000000000 -0700
++++ b/lib/libcap/libcap.h      2010-10-06 15:31:11.000000000 -0700
+@@ -65,7 +65,8 @@ struct _cap_struct {
+  */
+ #if !defined(_LINUX_CAPABILITY_VERSION_1) || \
+-            (_LINUX_CAPABILITY_VERSION_1 != 0x19980330)
++            ((_LINUX_CAPABILITY_VERSION_1 != 0x19980330) && \
++            (_LINUX_CAPABILITY_VERSION_1 != 0x20071026))
+ # error "Kernel <linux/capability.h> does not match library"
+ # error "file "libcap.h" --> fix and recompile libcap"
diff --git a/package/proftpd/0002-__mempcpy.patch b/package/proftpd/0002-__mempcpy.patch
new file mode 100644 (file)
index 0000000..1b8f0b0
--- /dev/null
@@ -0,0 +1,54 @@
+[PATCH] pr_fnmatch.c: use mempcpy, not __mempcpy to fix linker issue with uClibc
+
+The standard name (as checked for by configure) for the function is mempcpy,
+not __mempcpy, so use that instead.
+
+The existing code happens to work on glibc, as that provides an __mempcpy
+alias, but other C libraries (E.G.  uClibc) don't:
+
+./host/usr/bin/arm-linux-nm -D ./staging/lib/libuClibc-0.9.33.2.so | grep mempcpy
+00035d2c W mempcpy
+00036cf8 W wmempcpy
+
+vs
+
+./host/usr/bin/arm-none-linux-gnueabi-nm -D staging/lib/libc-2.18.so | grep mempcpy
+0007d140 T mempcpy
+0007d140 T __mempcpy
+000e15f0 T __mempcpy_chk
+00081828 T __mempcpy_small
+00083148 W wmempcpy
+000e4e3c T __wmempcpy_chk
+
+Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
+---
+ lib/pr_fnmatch.c      |    2 +-
+ lib/pr_fnmatch_loop.c |    2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+Index: proftpd-1.3.4d/lib/pr_fnmatch.c
+===================================================================
+--- proftpd-1.3.4d.orig/lib/pr_fnmatch.c
++++ proftpd-1.3.4d/lib/pr_fnmatch.c
+@@ -250,7 +250,7 @@
+ # endif
+ # define STRLEN(S) strlen (S)
+ # define STRCAT(D, S) strcat (D, S)
+-# define MEMPCPY(D, S, N) __mempcpy (D, S, N)
++# define MEMPCPY(D, S, N) mempcpy (D, S, N)
+ # define MEMCHR(S, C, N) memchr (S, C, N)
+ # define STRCOLL(S1, S2) strcoll (S1, S2)
+ # include "pr_fnmatch_loop.c"
+Index: proftpd-1.3.4d/lib/pr_fnmatch_loop.c
+===================================================================
+--- proftpd-1.3.4d.orig/lib/pr_fnmatch_loop.c
++++ proftpd-1.3.4d/lib/pr_fnmatch_loop.c
+@@ -54,7 +54,7 @@
+ /* Copy N bytes of SRC to DEST, return pointer to bytes after the
+    last written byte.  */
+ static void *
+-__mempcpy (void *dest, const void *src, size_t n)
++mempcpy (void *dest, const void *src, size_t n)
+ {
+   return (char *) memcpy (dest, src, n) + n;
+ }
diff --git a/package/proftpd/proftpd-0001-fix-kernel-header-capability-version.patch b/package/proftpd/proftpd-0001-fix-kernel-header-capability-version.patch
deleted file mode 100644 (file)
index 4401c9a..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
---- a/lib/libcap/libcap.h      2008-08-22 19:49:48.000000000 -0700
-+++ b/lib/libcap/libcap.h      2010-10-06 15:31:11.000000000 -0700
-@@ -65,7 +65,8 @@ struct _cap_struct {
-  */
- #if !defined(_LINUX_CAPABILITY_VERSION_1) || \
--            (_LINUX_CAPABILITY_VERSION_1 != 0x19980330)
-+            ((_LINUX_CAPABILITY_VERSION_1 != 0x19980330) && \
-+            (_LINUX_CAPABILITY_VERSION_1 != 0x20071026))
- # error "Kernel <linux/capability.h> does not match library"
- # error "file "libcap.h" --> fix and recompile libcap"
diff --git a/package/proftpd/proftpd-0002-__mempcpy.patch b/package/proftpd/proftpd-0002-__mempcpy.patch
deleted file mode 100644 (file)
index 1b8f0b0..0000000
+++ /dev/null
@@ -1,54 +0,0 @@
-[PATCH] pr_fnmatch.c: use mempcpy, not __mempcpy to fix linker issue with uClibc
-
-The standard name (as checked for by configure) for the function is mempcpy,
-not __mempcpy, so use that instead.
-
-The existing code happens to work on glibc, as that provides an __mempcpy
-alias, but other C libraries (E.G.  uClibc) don't:
-
-./host/usr/bin/arm-linux-nm -D ./staging/lib/libuClibc-0.9.33.2.so | grep mempcpy
-00035d2c W mempcpy
-00036cf8 W wmempcpy
-
-vs
-
-./host/usr/bin/arm-none-linux-gnueabi-nm -D staging/lib/libc-2.18.so | grep mempcpy
-0007d140 T mempcpy
-0007d140 T __mempcpy
-000e15f0 T __mempcpy_chk
-00081828 T __mempcpy_small
-00083148 W wmempcpy
-000e4e3c T __wmempcpy_chk
-
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- lib/pr_fnmatch.c      |    2 +-
- lib/pr_fnmatch_loop.c |    2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-Index: proftpd-1.3.4d/lib/pr_fnmatch.c
-===================================================================
---- proftpd-1.3.4d.orig/lib/pr_fnmatch.c
-+++ proftpd-1.3.4d/lib/pr_fnmatch.c
-@@ -250,7 +250,7 @@
- # endif
- # define STRLEN(S) strlen (S)
- # define STRCAT(D, S) strcat (D, S)
--# define MEMPCPY(D, S, N) __mempcpy (D, S, N)
-+# define MEMPCPY(D, S, N) mempcpy (D, S, N)
- # define MEMCHR(S, C, N) memchr (S, C, N)
- # define STRCOLL(S1, S2) strcoll (S1, S2)
- # include "pr_fnmatch_loop.c"
-Index: proftpd-1.3.4d/lib/pr_fnmatch_loop.c
-===================================================================
---- proftpd-1.3.4d.orig/lib/pr_fnmatch_loop.c
-+++ proftpd-1.3.4d/lib/pr_fnmatch_loop.c
-@@ -54,7 +54,7 @@
- /* Copy N bytes of SRC to DEST, return pointer to bytes after the
-    last written byte.  */
- static void *
--__mempcpy (void *dest, const void *src, size_t n)
-+mempcpy (void *dest, const void *src, size_t n)
- {
-   return (char *) memcpy (dest, src, n) + n;
- }
diff --git a/package/psmisc/0001-link-against-libintl.patch b/package/psmisc/0001-link-against-libintl.patch
new file mode 100644 (file)
index 0000000..907e7e7
--- /dev/null
@@ -0,0 +1,33 @@
+Link against libintl if needed
+
+When built against a C library that has locale support, but for which
+intl support is provided by an external libintl library, psmisc
+forgets to link against this library, even though the configure script
+properly checks that.
+
+This patch therefore ensure that we link against libintl when needed,
+thanks to the @INTLLIBS@ variable provided by the configure script.
+
+We do not modify the Makefile.am file, because autoreconfiguring this
+package doesn't work: because of its usage of gettext, it wants to run
+the "autopoint" program, which itself depends on CVS being installed,
+for some strange reasons. That's the reason why we fall back to the
+hacky solution of modifying the Makefile.in file.
+
+Forward-ported Thomas's patch to psmisc 22.16
+from commit f066ed70cd6939838d4057f66798cbc1d972cc73
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura psmisc-22.16.orig/src/Makefile.in psmisc-22.16/src/Makefile.in
+--- psmisc-22.16.orig/src/Makefile.in  2012-03-28 22:27:33.106660358 -0300
++++ psmisc-22.16/src/Makefile.in       2012-03-28 22:28:55.752219349 -0300
+@@ -76,7 +76,7 @@
+ killall_DEPENDENCIES =
+ am_peekfd_OBJECTS = peekfd.$(OBJEXT)
+ peekfd_OBJECTS = $(am_peekfd_OBJECTS)
+-peekfd_LDADD = $(LDADD)
++peekfd_LDADD = $(LDADD) @LIBINTL@
+ am_prtstat_OBJECTS = prtstat.$(OBJEXT)
+ prtstat_OBJECTS = $(am_prtstat_OBJECTS)
+ prtstat_DEPENDENCIES =
diff --git a/package/psmisc/0002-no-__progname.patch b/package/psmisc/0002-no-__progname.patch
new file mode 100644 (file)
index 0000000..5109657
--- /dev/null
@@ -0,0 +1,47 @@
+[PATCH]: pstree: don't use glibc-specific __progname
+
+uclibc (per default) doesn't implement __progname, and the pstree.x11
+stuff isn't that critical, so just disable it.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: psmisc-22.13/src/pstree.c
+===================================================================
+--- psmisc-22.13.orig/src/pstree.c     2010-07-12 13:10:03.000000000 +0200
++++ psmisc-22.13/src/pstree.c  2011-05-21 16:33:37.456530775 +0200
+@@ -49,8 +49,6 @@
+ #include <selinux/selinux.h>
+ #endif                                /*WITH_SELINUX */
+-extern const char *__progname;
+-
+ #define PROC_BASE    "/proc"
+ /* UTF-8 defines by Johan Myreen, updated by Ben Winslow */
+@@ -854,9 +852,6 @@
+     textdomain(PACKAGE);
+ #endif
+-    if (!strcmp(__progname, "pstree.x11"))
+-        wait_end = 1;
+-
+     /*
+      * Attempt to figure out a good default symbol set.  Will be overriden by
+      * command-line options, if given.
+Index: psmisc-22.13/src/Makefile.in
+===================================================================
+--- psmisc-22.13.orig/src/Makefile.in  2011-05-21 16:33:42.748530777 +0200
++++ psmisc-22.13/src/Makefile.in       2011-05-21 16:33:47.360530782 +0200
+@@ -557,10 +557,6 @@
+               grep '^{ 1,"HUP" },$$' signames.h >/dev/null || \
+                 { rm -f signames.h; exit 1; }
+-install-exec-hook:
+-              cd $(DESTDIR)$(bindir) && \
+-                      ( [ -h pstree.x11 ]  || $(LN_S) pstree pstree.x11)
+-
+ # Tell versions [3.59,3.63) of GNU make to not export all variables.
+ # Otherwise a system limit (for SysV at least) may be exceeded.
+ .NOEXPORT:
diff --git a/package/psmisc/psmisc-link-against-libintl.patch b/package/psmisc/psmisc-link-against-libintl.patch
deleted file mode 100644 (file)
index 907e7e7..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-Link against libintl if needed
-
-When built against a C library that has locale support, but for which
-intl support is provided by an external libintl library, psmisc
-forgets to link against this library, even though the configure script
-properly checks that.
-
-This patch therefore ensure that we link against libintl when needed,
-thanks to the @INTLLIBS@ variable provided by the configure script.
-
-We do not modify the Makefile.am file, because autoreconfiguring this
-package doesn't work: because of its usage of gettext, it wants to run
-the "autopoint" program, which itself depends on CVS being installed,
-for some strange reasons. That's the reason why we fall back to the
-hacky solution of modifying the Makefile.in file.
-
-Forward-ported Thomas's patch to psmisc 22.16
-from commit f066ed70cd6939838d4057f66798cbc1d972cc73
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura psmisc-22.16.orig/src/Makefile.in psmisc-22.16/src/Makefile.in
---- psmisc-22.16.orig/src/Makefile.in  2012-03-28 22:27:33.106660358 -0300
-+++ psmisc-22.16/src/Makefile.in       2012-03-28 22:28:55.752219349 -0300
-@@ -76,7 +76,7 @@
- killall_DEPENDENCIES =
- am_peekfd_OBJECTS = peekfd.$(OBJEXT)
- peekfd_OBJECTS = $(am_peekfd_OBJECTS)
--peekfd_LDADD = $(LDADD)
-+peekfd_LDADD = $(LDADD) @LIBINTL@
- am_prtstat_OBJECTS = prtstat.$(OBJEXT)
- prtstat_OBJECTS = $(am_prtstat_OBJECTS)
- prtstat_DEPENDENCIES =
diff --git a/package/psmisc/psmisc-no-__progname.patch b/package/psmisc/psmisc-no-__progname.patch
deleted file mode 100644 (file)
index 5109657..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-[PATCH]: pstree: don't use glibc-specific __progname
-
-uclibc (per default) doesn't implement __progname, and the pstree.x11
-stuff isn't that critical, so just disable it.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: psmisc-22.13/src/pstree.c
-===================================================================
---- psmisc-22.13.orig/src/pstree.c     2010-07-12 13:10:03.000000000 +0200
-+++ psmisc-22.13/src/pstree.c  2011-05-21 16:33:37.456530775 +0200
-@@ -49,8 +49,6 @@
- #include <selinux/selinux.h>
- #endif                                /*WITH_SELINUX */
--extern const char *__progname;
--
- #define PROC_BASE    "/proc"
- /* UTF-8 defines by Johan Myreen, updated by Ben Winslow */
-@@ -854,9 +852,6 @@
-     textdomain(PACKAGE);
- #endif
--    if (!strcmp(__progname, "pstree.x11"))
--        wait_end = 1;
--
-     /*
-      * Attempt to figure out a good default symbol set.  Will be overriden by
-      * command-line options, if given.
-Index: psmisc-22.13/src/Makefile.in
-===================================================================
---- psmisc-22.13.orig/src/Makefile.in  2011-05-21 16:33:42.748530777 +0200
-+++ psmisc-22.13/src/Makefile.in       2011-05-21 16:33:47.360530782 +0200
-@@ -557,10 +557,6 @@
-               grep '^{ 1,"HUP" },$$' signames.h >/dev/null || \
-                 { rm -f signames.h; exit 1; }
--install-exec-hook:
--              cd $(DESTDIR)$(bindir) && \
--                      ( [ -h pstree.x11 ]  || $(LN_S) pstree pstree.x11)
--
- # Tell versions [3.59,3.63) of GNU make to not export all variables.
- # Otherwise a system limit (for SysV at least) may be exceeded.
- .NOEXPORT:
diff --git a/package/pure-ftpd/0001-cross.patch b/package/pure-ftpd/0001-cross.patch
new file mode 100644 (file)
index 0000000..f8b1d81
--- /dev/null
@@ -0,0 +1,25 @@
+Do not include host paths when cross-compiling.
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+
+diff -uNr pure-ftpd-1.0.36.org/configure pure-ftpd-1.0.36/configure
+--- pure-ftpd-1.0.36.org/configure     2012-03-16 06:29:23.000000000 +0100
++++ pure-ftpd-1.0.36/configure 2014-09-28 19:55:56.650529713 +0200
+@@ -6319,17 +6319,6 @@
+-if test -d /usr/local/include; then
+-  CPPFLAGS="$CPPFLAGS -I/usr/local/include"
+-fi
+-
+-if test -d /usr/kerberos/include; then
+-  CPPFLAGS="$CPPFLAGS -I/usr/kerberos/include"
+-fi
+-
+-if test -d /usr/local/lib; then
+-  LDFLAGS="$LDFLAGS -L/usr/local/lib"
+-fi
+ if uname | fgrep SunOS > /dev/null 2> /dev/null ; then
+   CPPFLAGS="$CPPFLAGS -D_XPG4_2=1"
diff --git a/package/pure-ftpd/pure-ftpd-0001-cross.patch b/package/pure-ftpd/pure-ftpd-0001-cross.patch
deleted file mode 100644 (file)
index f8b1d81..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-Do not include host paths when cross-compiling.
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-
-diff -uNr pure-ftpd-1.0.36.org/configure pure-ftpd-1.0.36/configure
---- pure-ftpd-1.0.36.org/configure     2012-03-16 06:29:23.000000000 +0100
-+++ pure-ftpd-1.0.36/configure 2014-09-28 19:55:56.650529713 +0200
-@@ -6319,17 +6319,6 @@
--if test -d /usr/local/include; then
--  CPPFLAGS="$CPPFLAGS -I/usr/local/include"
--fi
--
--if test -d /usr/kerberos/include; then
--  CPPFLAGS="$CPPFLAGS -I/usr/kerberos/include"
--fi
--
--if test -d /usr/local/lib; then
--  LDFLAGS="$LDFLAGS -L/usr/local/lib"
--fi
- if uname | fgrep SunOS > /dev/null 2> /dev/null ; then
-   CPPFLAGS="$CPPFLAGS -D_XPG4_2=1"
diff --git a/package/python-ipython/0001-set-correct-python-executable-path.patch b/package/python-ipython/0001-set-correct-python-executable-path.patch
new file mode 100644 (file)
index 0000000..0fbd5a1
--- /dev/null
@@ -0,0 +1,15 @@
+Set correct Python executable path
+
+Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
+
+--- python-ipython-2.1.0/setupbase.py  2014-05-21 15:19:12.000000000 -0400
++++ python-ipython-2.1.0-new/setupbase.py      2014-07-23 23:34:32.892030423 -0400
+@@ -394,7 +394,7 @@ class build_scripts_entrypt(build_script
+             mod, func = entrypt.split(':')
+             with open(outfile, 'w') as f:
+-                f.write(script_src.format(executable=sys.executable,
++                f.write(script_src.format(executable='/usr/bin/env python',
+                                           mod=mod, func=func))
+         return outfiles, outfiles
diff --git a/package/python-ipython/python-ipython-001-set-correct-python-executable-path.patch b/package/python-ipython/python-ipython-001-set-correct-python-executable-path.patch
deleted file mode 100644 (file)
index 0fbd5a1..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-Set correct Python executable path
-
-Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
-
---- python-ipython-2.1.0/setupbase.py  2014-05-21 15:19:12.000000000 -0400
-+++ python-ipython-2.1.0-new/setupbase.py      2014-07-23 23:34:32.892030423 -0400
-@@ -394,7 +394,7 @@ class build_scripts_entrypt(build_script
-             mod, func = entrypt.split(':')
-             with open(outfile, 'w') as f:
--                f.write(script_src.format(executable=sys.executable,
-+                f.write(script_src.format(executable='/usr/bin/env python',
-                                           mod=mod, func=func))
-         return outfiles, outfiles
diff --git a/package/python-nfc/0001-add-setup-py.patch b/package/python-nfc/0001-add-setup-py.patch
new file mode 100644 (file)
index 0000000..5a51452
--- /dev/null
@@ -0,0 +1,26 @@
+Add simple setup.py
+
+Having a setup.py allows to easily get the .py files compiled into
+.pyc, which is good because by default, Buildroot only keeps .pyc
+files on the target.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/setup.py
+===================================================================
+--- /dev/null
++++ b/setup.py
+@@ -0,0 +1,13 @@
++#!/usr/bin/env python
++
++from distutils.core import setup
++
++setup(name='NFC',
++      version='1.0',
++      description='Python NFC',
++      author='Stephen Tiedemann',
++      author_email='stephen.tiedemann@googlemail.com',
++      url='https://launchpad.net/nfcpy',
++      packages=['nfc', 'nfc/dev', 'nfc/llcp', 'nfc/ndef',
++                'nfc/snep'],
++      )
diff --git a/package/python-nfc/python-nfc-add-setup-py.patch b/package/python-nfc/python-nfc-add-setup-py.patch
deleted file mode 100644 (file)
index 5a51452..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-Add simple setup.py
-
-Having a setup.py allows to easily get the .py files compiled into
-.pyc, which is good because by default, Buildroot only keeps .pyc
-files on the target.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/setup.py
-===================================================================
---- /dev/null
-+++ b/setup.py
-@@ -0,0 +1,13 @@
-+#!/usr/bin/env python
-+
-+from distutils.core import setup
-+
-+setup(name='NFC',
-+      version='1.0',
-+      description='Python NFC',
-+      author='Stephen Tiedemann',
-+      author_email='stephen.tiedemann@googlemail.com',
-+      url='https://launchpad.net/nfcpy',
-+      packages=['nfc', 'nfc/dev', 'nfc/llcp', 'nfc/ndef',
-+                'nfc/snep'],
-+      )
diff --git a/package/python-numpy/0001-no-fenv-on-uclibc.patch b/package/python-numpy/0001-no-fenv-on-uclibc.patch
new file mode 100644 (file)
index 0000000..633dbcd
--- /dev/null
@@ -0,0 +1,79 @@
+Don't use <fenv.h> on uClibc
+
+The python-numpy code already has provisions to not use <fenv.h> when
+not available. However, it uses __GLIBC__ to know whether fenv.h is
+available or not, but uClibc defines __GLIBC__, so python-numpy thinks
+fenv.h is available.
+
+This patch fixes that by changing all defined(__GLIBC__) occurences by
+(defined(__GLIBC__) && !defined(__UCLIBC__)).
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/numpy/core/include/numpy/ufuncobject.h
+===================================================================
+--- a/numpy/core/include/numpy/ufuncobject.h
++++ b/numpy/core/include/numpy/ufuncobject.h
+@@ -413,11 +413,11 @@
+         (void) fpsetsticky(0); \
+         }
+-#elif defined(__GLIBC__) || defined(__APPLE__) || \
++#elif (defined(__GLIBC__) && !defined(__UCLIBC__)) || defined(__APPLE__) || \
+       defined(__CYGWIN__) || defined(__MINGW32__) || \
+       (defined(__FreeBSD__) && (__FreeBSD_version >= 502114))
+-#if defined(__GLIBC__) || defined(__APPLE__) || \
++#if (defined(__GLIBC__) && !defined(__UCLIBC__)) || defined(__APPLE__) || \
+     defined(__MINGW32__) || defined(__FreeBSD__)
+ #include <fenv.h>
+ #elif defined(__CYGWIN__)
+Index: b/numpy/core/src/npymath/ieee754.c.src
+===================================================================
+--- a/numpy/core/src/npymath/ieee754.c.src
++++ b/numpy/core/src/npymath/ieee754.c.src
+@@ -586,11 +586,11 @@
+ }
+-#elif defined(__GLIBC__) || defined(__APPLE__) || \
++#elif (defined(__GLIBC__) && !defined(__UCLIBC__)) || defined(__APPLE__) || \
+       defined(__CYGWIN__) || defined(__MINGW32__) || \
+       (defined(__FreeBSD__) && (__FreeBSD_version >= 502114))
+-# if defined(__GLIBC__) || defined(__APPLE__) || \
++# if (defined(__GLIBC__) && !defined(__UCLIBC__)) || defined(__APPLE__) || \
+      defined(__MINGW32__) || defined(__FreeBSD__)
+ #  include <fenv.h>
+ # elif defined(__CYGWIN__)
+Index: b/numpy/numarray/_capi.c
+===================================================================
+--- a/numpy/numarray/_capi.c
++++ b/numpy/numarray/_capi.c
+@@ -10,7 +10,7 @@
+ #include <sys/param.h>
+ #endif
+-#if defined(__GLIBC__) || defined(__APPLE__) || defined(__MINGW32__) || (defined(__FreeBSD__) && (__FreeBSD_version >= 502114))
++#if (defined(__GLIBC__) && !defined(__UCLIBC__)) || defined(__APPLE__) || defined(__MINGW32__) || (defined(__FreeBSD__) && (__FreeBSD_version >= 502114))
+ #include <fenv.h>
+ #elif defined(__CYGWIN__)
+ #include "numpy/fenv/fenv.h"
+@@ -258,7 +258,7 @@
+ }
+ /* Likewise for Integer overflows */
+-#if defined(__GLIBC__) || defined(__APPLE__) || defined(__CYGWIN__) || defined(__MINGW32__) || (defined(__FreeBSD__) && (__FreeBSD_version >= 502114))
++#if (defined(__GLIBC__) && !defined(__UCLIBC__)) || defined(__APPLE__) || defined(__CYGWIN__) || defined(__MINGW32__) || (defined(__FreeBSD__) && (__FreeBSD_version >= 502114))
+ static int int_overflow_error(Float64 value) { /* For x86_64 */
+     feraiseexcept(FE_OVERFLOW);
+     return (int) value;
+@@ -3007,7 +3007,7 @@
+     return retstatus;
+ }
+-#elif defined(__GLIBC__) || defined(__APPLE__) || defined(__CYGWIN__) || defined(__MINGW32__) || (defined(__FreeBSD__) && (__FreeBSD_version >= 502114))
++#elif (defined(__GLIBC__) && !defined(__UCLIBC__)) || defined(__APPLE__) || defined(__CYGWIN__) || defined(__MINGW32__) || (defined(__FreeBSD__) && (__FreeBSD_version >= 502114))
+ static int
+ NA_checkFPErrors(void)
diff --git a/package/python-numpy/python-numpy-0001-no-fenv-on-uclibc.patch b/package/python-numpy/python-numpy-0001-no-fenv-on-uclibc.patch
deleted file mode 100644 (file)
index 633dbcd..0000000
+++ /dev/null
@@ -1,79 +0,0 @@
-Don't use <fenv.h> on uClibc
-
-The python-numpy code already has provisions to not use <fenv.h> when
-not available. However, it uses __GLIBC__ to know whether fenv.h is
-available or not, but uClibc defines __GLIBC__, so python-numpy thinks
-fenv.h is available.
-
-This patch fixes that by changing all defined(__GLIBC__) occurences by
-(defined(__GLIBC__) && !defined(__UCLIBC__)).
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/numpy/core/include/numpy/ufuncobject.h
-===================================================================
---- a/numpy/core/include/numpy/ufuncobject.h
-+++ b/numpy/core/include/numpy/ufuncobject.h
-@@ -413,11 +413,11 @@
-         (void) fpsetsticky(0); \
-         }
--#elif defined(__GLIBC__) || defined(__APPLE__) || \
-+#elif (defined(__GLIBC__) && !defined(__UCLIBC__)) || defined(__APPLE__) || \
-       defined(__CYGWIN__) || defined(__MINGW32__) || \
-       (defined(__FreeBSD__) && (__FreeBSD_version >= 502114))
--#if defined(__GLIBC__) || defined(__APPLE__) || \
-+#if (defined(__GLIBC__) && !defined(__UCLIBC__)) || defined(__APPLE__) || \
-     defined(__MINGW32__) || defined(__FreeBSD__)
- #include <fenv.h>
- #elif defined(__CYGWIN__)
-Index: b/numpy/core/src/npymath/ieee754.c.src
-===================================================================
---- a/numpy/core/src/npymath/ieee754.c.src
-+++ b/numpy/core/src/npymath/ieee754.c.src
-@@ -586,11 +586,11 @@
- }
--#elif defined(__GLIBC__) || defined(__APPLE__) || \
-+#elif (defined(__GLIBC__) && !defined(__UCLIBC__)) || defined(__APPLE__) || \
-       defined(__CYGWIN__) || defined(__MINGW32__) || \
-       (defined(__FreeBSD__) && (__FreeBSD_version >= 502114))
--# if defined(__GLIBC__) || defined(__APPLE__) || \
-+# if (defined(__GLIBC__) && !defined(__UCLIBC__)) || defined(__APPLE__) || \
-      defined(__MINGW32__) || defined(__FreeBSD__)
- #  include <fenv.h>
- # elif defined(__CYGWIN__)
-Index: b/numpy/numarray/_capi.c
-===================================================================
---- a/numpy/numarray/_capi.c
-+++ b/numpy/numarray/_capi.c
-@@ -10,7 +10,7 @@
- #include <sys/param.h>
- #endif
--#if defined(__GLIBC__) || defined(__APPLE__) || defined(__MINGW32__) || (defined(__FreeBSD__) && (__FreeBSD_version >= 502114))
-+#if (defined(__GLIBC__) && !defined(__UCLIBC__)) || defined(__APPLE__) || defined(__MINGW32__) || (defined(__FreeBSD__) && (__FreeBSD_version >= 502114))
- #include <fenv.h>
- #elif defined(__CYGWIN__)
- #include "numpy/fenv/fenv.h"
-@@ -258,7 +258,7 @@
- }
- /* Likewise for Integer overflows */
--#if defined(__GLIBC__) || defined(__APPLE__) || defined(__CYGWIN__) || defined(__MINGW32__) || (defined(__FreeBSD__) && (__FreeBSD_version >= 502114))
-+#if (defined(__GLIBC__) && !defined(__UCLIBC__)) || defined(__APPLE__) || defined(__CYGWIN__) || defined(__MINGW32__) || (defined(__FreeBSD__) && (__FreeBSD_version >= 502114))
- static int int_overflow_error(Float64 value) { /* For x86_64 */
-     feraiseexcept(FE_OVERFLOW);
-     return (int) value;
-@@ -3007,7 +3007,7 @@
-     return retstatus;
- }
--#elif defined(__GLIBC__) || defined(__APPLE__) || defined(__CYGWIN__) || defined(__MINGW32__) || (defined(__FreeBSD__) && (__FreeBSD_version >= 502114))
-+#elif (defined(__GLIBC__) && !defined(__UCLIBC__)) || defined(__APPLE__) || defined(__CYGWIN__) || defined(__MINGW32__) || (defined(__FreeBSD__) && (__FreeBSD_version >= 502114))
- static int
- NA_checkFPErrors(void)
diff --git a/package/python-pycrypto/0001-remove-incorrect-header-path.patch b/package/python-pycrypto/0001-remove-incorrect-header-path.patch
new file mode 100644 (file)
index 0000000..9268d31
--- /dev/null
@@ -0,0 +1,21 @@
+Do not use /usr/include for headers
+
+Using /usr/include is wrong when doing cross-compilation, so get rid
+of it, and rely on the compiler to use the appropriate default paths
+for headers.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/setup.py
+===================================================================
+--- a/setup.py
++++ b/setup.py
+@@ -370,7 +370,7 @@
+       'ext_modules': plat_ext + [
+             # _fastmath (uses GNU mp library)
+             Extension("Crypto.PublicKey._fastmath",
+-                      include_dirs=['src/','/usr/include/'],
++                      include_dirs=['src/'],
+                       libraries=['gmp'],
+                       sources=["src/_fastmath.c"]),
diff --git a/package/python-pycrypto/python-pycrypto-0001-remove-incorrect-header-path.patch b/package/python-pycrypto/python-pycrypto-0001-remove-incorrect-header-path.patch
deleted file mode 100644 (file)
index 9268d31..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-Do not use /usr/include for headers
-
-Using /usr/include is wrong when doing cross-compilation, so get rid
-of it, and rely on the compiler to use the appropriate default paths
-for headers.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/setup.py
-===================================================================
---- a/setup.py
-+++ b/setup.py
-@@ -370,7 +370,7 @@
-       'ext_modules': plat_ext + [
-             # _fastmath (uses GNU mp library)
-             Extension("Crypto.PublicKey._fastmath",
--                      include_dirs=['src/','/usr/include/'],
-+                      include_dirs=['src/'],
-                       libraries=['gmp'],
-                       sources=["src/_fastmath.c"]),
diff --git a/package/python-pyzmq/0001-use-buildroot-zmq-version-instead-of-detect.patch b/package/python-pyzmq/0001-use-buildroot-zmq-version-instead-of-detect.patch
new file mode 100644 (file)
index 0000000..5606069
--- /dev/null
@@ -0,0 +1,43 @@
+detect.py: fix the ZMQ version check to the ZMQ version of the buildroot
+
+The setup.py script tries to compile a test C program and runs it, to
+retrieve a version string for the installed ZMQ library, but if the cross
+compiler links it together, the result cannot be run on the host, due to
+different architectures and libraries.
+
+And if the host compiler would compile/link it, it would not link with the
+library version inside buildroot but with the library from the host, possibly returning a wrong version number.
+
+Instead of trying to run the compiled test program to get the version
+dynamically, return the version of the buildroot environment.
+
+Signed-off-by: Michael Rommel <rommel@layer-7.net>
+
+--- pyzmq-13.0.2/buildutils/detect.py.orig     2013-08-10 00:49:28.242557978 +0200
++++ pyzmq-13.0.2/buildutils/detect.py  2013-08-10 00:44:35.197572704 +0200
+@@ -119,15 +119,17 @@ def detect_zmq(basedir, compiler=None, *
+             
+     efile = test_compilation(cfile, compiler=compiler, **compiler_attrs)
+     
+-    result = Popen(efile, stdout=PIPE, stderr=PIPE)
+-    so, se = result.communicate()
++    # result = Popen(efile, stdout=PIPE, stderr=PIPE)
++    # so, se = result.communicate()
+     # for py3k:
+-    so = so.decode()
+-    se = se.decode()
+-    if result.returncode:
+-        msg = "Error running version detection script:\n%s\n%s" % (so,se)
+-        logging.error(msg)
+-        raise IOError(msg)
++    #so = so.decode()
++    #se = se.decode()
++    #if result.returncode:
++    #    msg = "Error running version detection script:\n%s\n%s" % (so,se)
++    #    logging.error(msg)
++    #    raise IOError(msg)
++
++    so = "vers: ##ZEROMQ_VERSION##"
+     handlers = {'vers':  lambda val: tuple(int(v) for v in val.split('.'))}
diff --git a/package/python-pyzmq/python-pyzmq-0001-use-buildroot-zmq-version-instead-of-detect.patch b/package/python-pyzmq/python-pyzmq-0001-use-buildroot-zmq-version-instead-of-detect.patch
deleted file mode 100644 (file)
index 5606069..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-detect.py: fix the ZMQ version check to the ZMQ version of the buildroot
-
-The setup.py script tries to compile a test C program and runs it, to
-retrieve a version string for the installed ZMQ library, but if the cross
-compiler links it together, the result cannot be run on the host, due to
-different architectures and libraries.
-
-And if the host compiler would compile/link it, it would not link with the
-library version inside buildroot but with the library from the host, possibly returning a wrong version number.
-
-Instead of trying to run the compiled test program to get the version
-dynamically, return the version of the buildroot environment.
-
-Signed-off-by: Michael Rommel <rommel@layer-7.net>
-
---- pyzmq-13.0.2/buildutils/detect.py.orig     2013-08-10 00:49:28.242557978 +0200
-+++ pyzmq-13.0.2/buildutils/detect.py  2013-08-10 00:44:35.197572704 +0200
-@@ -119,15 +119,17 @@ def detect_zmq(basedir, compiler=None, *
-             
-     efile = test_compilation(cfile, compiler=compiler, **compiler_attrs)
-     
--    result = Popen(efile, stdout=PIPE, stderr=PIPE)
--    so, se = result.communicate()
-+    # result = Popen(efile, stdout=PIPE, stderr=PIPE)
-+    # so, se = result.communicate()
-     # for py3k:
--    so = so.decode()
--    se = se.decode()
--    if result.returncode:
--        msg = "Error running version detection script:\n%s\n%s" % (so,se)
--        logging.error(msg)
--        raise IOError(msg)
-+    #so = so.decode()
-+    #se = se.decode()
-+    #if result.returncode:
-+    #    msg = "Error running version detection script:\n%s\n%s" % (so,se)
-+    #    logging.error(msg)
-+    #    raise IOError(msg)
-+
-+    so = "vers: ##ZEROMQ_VERSION##"
-     handlers = {'vers':  lambda val: tuple(int(v) for v in val.split('.'))}
diff --git a/package/python-setuptools/0001-add-executable.patch b/package/python-setuptools/0001-add-executable.patch
new file mode 100644 (file)
index 0000000..502d099
--- /dev/null
@@ -0,0 +1,55 @@
+Add a new --executable option to distribute so that we can
+force the shebang line in installed python scripts.
+
+[Thomas: refresh for setuptools 5.8.]
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/setuptools/command/install.py
+===================================================================
+--- a/setuptools/command/install.py
++++ b/setuptools/command/install.py
+@@ -16,6 +16,7 @@
+     """Use easy_install to install the package, w/dependencies"""
+     user_options = orig.install.user_options + [
++        ('executable=', 'e', "specify final destination interpreter path"),
+         ('old-and-unmanageable', None, "Try not to use this!"),
+         ('single-version-externally-managed', None,
+          "used by system package builders to create 'flat' eggs"),
+@@ -31,6 +32,7 @@
+     def initialize_options(self):
+         orig.install.initialize_options(self)
++        self.executable = None
+         self.old_and_unmanageable = None
+         self.single_version_externally_managed = None
+Index: b/setuptools/command/install_scripts.py
+===================================================================
+--- a/setuptools/command/install_scripts.py
++++ b/setuptools/command/install_scripts.py
+@@ -11,6 +11,13 @@
+     def initialize_options(self):
+         orig.install_scripts.initialize_options(self)
+         self.no_ep = False
++        self.executable = None
++
++    def finalize_options(self):
++        orig.install_scripts.finalize_options(self)
++        self.set_undefined_options('install',
++                ('executable','executable')
++        )
+     def run(self):
+         from setuptools.command.easy_install import get_script_args
+@@ -32,6 +39,8 @@
+         )
+         bs_cmd = self.get_finalized_command('build_scripts')
+         executable = getattr(bs_cmd, 'executable', sys_executable)
++        if self.executable is not None:
++            executable = self.executable
+         is_wininst = getattr(
+             self.get_finalized_command("bdist_wininst"), '_is_running', False
+         )
diff --git a/package/python-setuptools/python-setuptools-0001-add-executable.patch b/package/python-setuptools/python-setuptools-0001-add-executable.patch
deleted file mode 100644 (file)
index 502d099..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-Add a new --executable option to distribute so that we can
-force the shebang line in installed python scripts.
-
-[Thomas: refresh for setuptools 5.8.]
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/setuptools/command/install.py
-===================================================================
---- a/setuptools/command/install.py
-+++ b/setuptools/command/install.py
-@@ -16,6 +16,7 @@
-     """Use easy_install to install the package, w/dependencies"""
-     user_options = orig.install.user_options + [
-+        ('executable=', 'e', "specify final destination interpreter path"),
-         ('old-and-unmanageable', None, "Try not to use this!"),
-         ('single-version-externally-managed', None,
-          "used by system package builders to create 'flat' eggs"),
-@@ -31,6 +32,7 @@
-     def initialize_options(self):
-         orig.install.initialize_options(self)
-+        self.executable = None
-         self.old_and_unmanageable = None
-         self.single_version_externally_managed = None
-Index: b/setuptools/command/install_scripts.py
-===================================================================
---- a/setuptools/command/install_scripts.py
-+++ b/setuptools/command/install_scripts.py
-@@ -11,6 +11,13 @@
-     def initialize_options(self):
-         orig.install_scripts.initialize_options(self)
-         self.no_ep = False
-+        self.executable = None
-+
-+    def finalize_options(self):
-+        orig.install_scripts.finalize_options(self)
-+        self.set_undefined_options('install',
-+                ('executable','executable')
-+        )
-     def run(self):
-         from setuptools.command.easy_install import get_script_args
-@@ -32,6 +39,8 @@
-         )
-         bs_cmd = self.get_finalized_command('build_scripts')
-         executable = getattr(bs_cmd, 'executable', sys_executable)
-+        if self.executable is not None:
-+            executable = self.executable
-         is_wininst = getattr(
-             self.get_finalized_command("bdist_wininst"), '_is_running', False
-         )
diff --git a/package/qdecoder/0001-fix-make-install.patch b/package/qdecoder/0001-fix-make-install.patch
new file mode 100644 (file)
index 0000000..f353566
--- /dev/null
@@ -0,0 +1,40 @@
+[PATCH] fix make install to respect DESTDIR
+
+And also ensure destination directories exist.
+
+Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
+---
+ src/Makefile.in |   17 +++++++++--------
+ 1 file changed, 9 insertions(+), 8 deletions(-)
+
+Index: qdecoder-r12.0.5/src/Makefile.in
+===================================================================
+--- qdecoder-r12.0.5.orig/src/Makefile.in
++++ qdecoder-r12.0.5/src/Makefile.in
+@@ -78,17 +78,18 @@
+       ${LN_S} -f ${SLIBREALNAME} ${SLIBNAME}
+ install: all
+-      ${INSTALL_DATA} qdecoder.h ${HEADERDIR}/qdecoder.h
+-      ${INSTALL_DATA} ${LIBNAME} ${LIBDIR}/${LIBNAME}
+-      ${INSTALL_DATA} ${SLIBREALNAME} ${LIBDIR}/${SLIBREALNAME}
+-      ( cd ${LIBDIR}; ${LN_S} -f ${SLIBREALNAME} ${SLIBNAME} )
++      mkdir -p ${DESTDIR}/${HEADERDIR} ${DESTDIR}/${LIBDIR}
++      ${INSTALL_DATA} qdecoder.h ${DESTDIR}/${HEADERDIR}/qdecoder.h
++      ${INSTALL_DATA} ${LIBNAME} ${DESTDIR}/${LIBDIR}/${LIBNAME}
++      ${INSTALL_DATA} ${SLIBREALNAME} ${DESTDIR}/${LIBDIR}/${SLIBREALNAME}
++      ( cd ${DESTDIR}/${LIBDIR}; ${LN_S} -f ${SLIBREALNAME} ${SLIBNAME} )
+ deinstall: uninstall
+ uninstall:
+-      ${RM} -f ${HEADERDIR}/qdecoder.h
+-      ${RM} -f ${LIBDIR}/${LIBNAME}
+-      ${RM} -f ${LIBDIR}/${SLIBREALNAME}
+-      ${RM} -f ${LIBDIR}/${SLIBNAME}
++      ${RM} -f ${DESTDIR}/${HEADERDIR}/qdecoder.h
++      ${RM} -f ${DESTDIR}/${LIBDIR}/${LIBNAME}
++      ${RM} -f ${DESTDIR}/${LIBDIR}/${SLIBREALNAME}
++      ${RM} -f ${DESTDIR}/${LIBDIR}/${SLIBNAME}
+ doc:
+       doxygen doxygen.conf
diff --git a/package/qdecoder/0002-configure.ac-drop-hardcoded-paths.patch b/package/qdecoder/0002-configure.ac-drop-hardcoded-paths.patch
new file mode 100644 (file)
index 0000000..689d1d9
--- /dev/null
@@ -0,0 +1,25 @@
+[PATCH] configure.ac: drop hardcoded paths
+
+Causing problems with cross compilation.
+
+Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
+---
+ configure.ac |    5 +----
+ 1 file changed, 1 insertion(+), 4 deletions(-)
+
+Index: qdecoder-r12.0.5/configure.ac
+===================================================================
+--- qdecoder-r12.0.5.orig/configure.ac
++++ qdecoder-r12.0.5/configure.ac
+@@ -81,10 +81,7 @@
+ AC_CONFIG_HEADER([config.h])
+ AC_CONFIG_FILES([Makefile src/Makefile examples/Makefile])
+-## Set path
+-PATH="$PATH:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin"
+-CPPFLAGS="$CPPFLAGS -I/usr/include -I/usr/local/include -I./ -D_GNU_SOURCE"
+-LDFLAGS="$LDFLAGS -L/usr/lib -L/usr/local/lib"
++CPPFLAGS="$CPPFLAGS -I./ -D_GNU_SOURCE"
+ ## Set autoconf setting
+ #AC_CANONICAL_TARGET
diff --git a/package/qdecoder/0003-errno.patch b/package/qdecoder/0003-errno.patch
new file mode 100644 (file)
index 0000000..71d5cfd
--- /dev/null
@@ -0,0 +1,34 @@
+Fixes build error
+
+qcgireq.c: In function '_parse_multipart_value_into_disk':
+qcgireq.c:738:60: error: 'errno' undeclared (first use in this function)
+         DEBUG("I/O error. (errno=%d)", (ioerror == true) ? errno : 0);
+
+Patch downloaded from upstream repo:
+https://github.com/wolkykim/qdecoder/commit/574f0216a51e3e852cd94e2a0a3b52dc64e74548
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+
+
+From 574f0216a51e3e852cd94e2a0a3b52dc64e74548 Mon Sep 17 00:00:00 2001
+From: nyov <nyov@nexnode.net>
+Date: Fri, 5 Sep 2014 18:41:10 +0000
+Subject: [PATCH] add missing header include
+
+fixes #7
+---
+ src/qcgireq.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/qcgireq.c b/src/qcgireq.c
+index dcb8c57..d34ff83 100644
+--- a/src/qcgireq.c
++++ b/src/qcgireq.c
+@@ -139,6 +139,7 @@
+ #ifndef _WIN32
+ #include <dirent.h>
+ #endif
++#include <errno.h>
+ #include "qdecoder.h"
+ #include "internal.h"
diff --git a/package/qdecoder/qdecoder-0001-fix-make-install.patch b/package/qdecoder/qdecoder-0001-fix-make-install.patch
deleted file mode 100644 (file)
index f353566..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-[PATCH] fix make install to respect DESTDIR
-
-And also ensure destination directories exist.
-
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- src/Makefile.in |   17 +++++++++--------
- 1 file changed, 9 insertions(+), 8 deletions(-)
-
-Index: qdecoder-r12.0.5/src/Makefile.in
-===================================================================
---- qdecoder-r12.0.5.orig/src/Makefile.in
-+++ qdecoder-r12.0.5/src/Makefile.in
-@@ -78,17 +78,18 @@
-       ${LN_S} -f ${SLIBREALNAME} ${SLIBNAME}
- install: all
--      ${INSTALL_DATA} qdecoder.h ${HEADERDIR}/qdecoder.h
--      ${INSTALL_DATA} ${LIBNAME} ${LIBDIR}/${LIBNAME}
--      ${INSTALL_DATA} ${SLIBREALNAME} ${LIBDIR}/${SLIBREALNAME}
--      ( cd ${LIBDIR}; ${LN_S} -f ${SLIBREALNAME} ${SLIBNAME} )
-+      mkdir -p ${DESTDIR}/${HEADERDIR} ${DESTDIR}/${LIBDIR}
-+      ${INSTALL_DATA} qdecoder.h ${DESTDIR}/${HEADERDIR}/qdecoder.h
-+      ${INSTALL_DATA} ${LIBNAME} ${DESTDIR}/${LIBDIR}/${LIBNAME}
-+      ${INSTALL_DATA} ${SLIBREALNAME} ${DESTDIR}/${LIBDIR}/${SLIBREALNAME}
-+      ( cd ${DESTDIR}/${LIBDIR}; ${LN_S} -f ${SLIBREALNAME} ${SLIBNAME} )
- deinstall: uninstall
- uninstall:
--      ${RM} -f ${HEADERDIR}/qdecoder.h
--      ${RM} -f ${LIBDIR}/${LIBNAME}
--      ${RM} -f ${LIBDIR}/${SLIBREALNAME}
--      ${RM} -f ${LIBDIR}/${SLIBNAME}
-+      ${RM} -f ${DESTDIR}/${HEADERDIR}/qdecoder.h
-+      ${RM} -f ${DESTDIR}/${LIBDIR}/${LIBNAME}
-+      ${RM} -f ${DESTDIR}/${LIBDIR}/${SLIBREALNAME}
-+      ${RM} -f ${DESTDIR}/${LIBDIR}/${SLIBNAME}
- doc:
-       doxygen doxygen.conf
diff --git a/package/qdecoder/qdecoder-0002-configure.ac-drop-hardcoded-paths.patch b/package/qdecoder/qdecoder-0002-configure.ac-drop-hardcoded-paths.patch
deleted file mode 100644 (file)
index 689d1d9..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-[PATCH] configure.ac: drop hardcoded paths
-
-Causing problems with cross compilation.
-
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- configure.ac |    5 +----
- 1 file changed, 1 insertion(+), 4 deletions(-)
-
-Index: qdecoder-r12.0.5/configure.ac
-===================================================================
---- qdecoder-r12.0.5.orig/configure.ac
-+++ qdecoder-r12.0.5/configure.ac
-@@ -81,10 +81,7 @@
- AC_CONFIG_HEADER([config.h])
- AC_CONFIG_FILES([Makefile src/Makefile examples/Makefile])
--## Set path
--PATH="$PATH:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin"
--CPPFLAGS="$CPPFLAGS -I/usr/include -I/usr/local/include -I./ -D_GNU_SOURCE"
--LDFLAGS="$LDFLAGS -L/usr/lib -L/usr/local/lib"
-+CPPFLAGS="$CPPFLAGS -I./ -D_GNU_SOURCE"
- ## Set autoconf setting
- #AC_CANONICAL_TARGET
diff --git a/package/qdecoder/qdecoder-0003-errno.patch b/package/qdecoder/qdecoder-0003-errno.patch
deleted file mode 100644 (file)
index 71d5cfd..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-Fixes build error
-
-qcgireq.c: In function '_parse_multipart_value_into_disk':
-qcgireq.c:738:60: error: 'errno' undeclared (first use in this function)
-         DEBUG("I/O error. (errno=%d)", (ioerror == true) ? errno : 0);
-
-Patch downloaded from upstream repo:
-https://github.com/wolkykim/qdecoder/commit/574f0216a51e3e852cd94e2a0a3b52dc64e74548
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-
-
-From 574f0216a51e3e852cd94e2a0a3b52dc64e74548 Mon Sep 17 00:00:00 2001
-From: nyov <nyov@nexnode.net>
-Date: Fri, 5 Sep 2014 18:41:10 +0000
-Subject: [PATCH] add missing header include
-
-fixes #7
----
- src/qcgireq.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/qcgireq.c b/src/qcgireq.c
-index dcb8c57..d34ff83 100644
---- a/src/qcgireq.c
-+++ b/src/qcgireq.c
-@@ -139,6 +139,7 @@
- #ifndef _WIN32
- #include <dirent.h>
- #endif
-+#include <errno.h>
- #include "qdecoder.h"
- #include "internal.h"
diff --git a/package/qextserialport/0001-gui.patch b/package/qextserialport/0001-gui.patch
new file mode 100644 (file)
index 0000000..d3dedae
--- /dev/null
@@ -0,0 +1,16 @@
+Don't require Qt GUI module
+
+Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
+---
+diff -Nrup qextserialport-f83b4e7ca922e53.orig/qextserialport.pro qextserialport-f83b4e7ca922e53/qextserialport.pro
+--- qextserialport-f83b4e7ca922e53.orig/qextserialport.pro     2012-10-17 09:13:53.000000000 +0200
++++ qextserialport-f83b4e7ca922e53/qextserialport.pro  2012-11-13 22:48:29.249431510 +0100
+@@ -41,6 +41,8 @@ macx:qesp_mac_framework {
+ win32|mac:!wince*:!win32-msvc:!macx-xcode:CONFIG += debug_and_release build_all
++!win32*:!wince*:QT -= gui
++
+ #generate proper library name
+ greaterThan(QT_MAJOR_VERSION, 4) {
+     QESP_LIB_BASENAME = QtExtSerialPort
diff --git a/package/qextserialport/0002-main-include.patch b/package/qextserialport/0002-main-include.patch
new file mode 100644 (file)
index 0000000..858f335
--- /dev/null
@@ -0,0 +1,15 @@
+Create a main include file QExtSerialPort
+
+This main include file will be installed in
+<QExtSerialPort/QExtSerialPort> so that Qt applications can use this
+library by including header files in a Qt-like style.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: qextserialport-ef4af2a2ee3f/src/QExtSerialPort
+===================================================================
+--- /dev/null
++++ qextserialport-ef4af2a2ee3f/src/QExtSerialPort
+@@ -0,0 +1,2 @@
++#include "qextserialport.h"
++#include "qextserialenumerator.h"
diff --git a/package/qextserialport/0003-pkgconfig.patch b/package/qextserialport/0003-pkgconfig.patch
new file mode 100644 (file)
index 0000000..d67f3fc
--- /dev/null
@@ -0,0 +1,19 @@
+Add a pkgconfig file to ease usage with applications
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: qextserialport-ef4af2a2ee3f/qextserialport.pc
+===================================================================
+--- /dev/null
++++ qextserialport-ef4af2a2ee3f/qextserialport.pc
+@@ -0,0 +1,10 @@
++prefix=/usr
++exec_prefix=${prefix}
++libdir=${prefix}/lib
++includedir=${prefix}/include/QExtSerialPort
++
++Name: QtExtSerialPort
++Description: QtExtSerialPort library
++Version: 1.2.0
++Libs: -L${libdir} -lqextserialport
++Cflags: -I${includedir}
diff --git a/package/qextserialport/qextserialport-gui.patch b/package/qextserialport/qextserialport-gui.patch
deleted file mode 100644 (file)
index d3dedae..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-Don't require Qt GUI module
-
-Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
----
-diff -Nrup qextserialport-f83b4e7ca922e53.orig/qextserialport.pro qextserialport-f83b4e7ca922e53/qextserialport.pro
---- qextserialport-f83b4e7ca922e53.orig/qextserialport.pro     2012-10-17 09:13:53.000000000 +0200
-+++ qextserialport-f83b4e7ca922e53/qextserialport.pro  2012-11-13 22:48:29.249431510 +0100
-@@ -41,6 +41,8 @@ macx:qesp_mac_framework {
- win32|mac:!wince*:!win32-msvc:!macx-xcode:CONFIG += debug_and_release build_all
-+!win32*:!wince*:QT -= gui
-+
- #generate proper library name
- greaterThan(QT_MAJOR_VERSION, 4) {
-     QESP_LIB_BASENAME = QtExtSerialPort
diff --git a/package/qextserialport/qextserialport-main-include.patch b/package/qextserialport/qextserialport-main-include.patch
deleted file mode 100644 (file)
index 858f335..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-Create a main include file QExtSerialPort
-
-This main include file will be installed in
-<QExtSerialPort/QExtSerialPort> so that Qt applications can use this
-library by including header files in a Qt-like style.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: qextserialport-ef4af2a2ee3f/src/QExtSerialPort
-===================================================================
---- /dev/null
-+++ qextserialport-ef4af2a2ee3f/src/QExtSerialPort
-@@ -0,0 +1,2 @@
-+#include "qextserialport.h"
-+#include "qextserialenumerator.h"
diff --git a/package/qextserialport/qextserialport-pkgconfig.patch b/package/qextserialport/qextserialport-pkgconfig.patch
deleted file mode 100644 (file)
index d67f3fc..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-Add a pkgconfig file to ease usage with applications
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: qextserialport-ef4af2a2ee3f/qextserialport.pc
-===================================================================
---- /dev/null
-+++ qextserialport-ef4af2a2ee3f/qextserialport.pc
-@@ -0,0 +1,10 @@
-+prefix=/usr
-+exec_prefix=${prefix}
-+libdir=${prefix}/lib
-+includedir=${prefix}/include/QExtSerialPort
-+
-+Name: QtExtSerialPort
-+Description: QtExtSerialPort library
-+Version: 1.2.0
-+Libs: -L${libdir} -lqextserialport
-+Cflags: -I${includedir}
diff --git a/package/qlibc/0001-remove-absolute-paths.patch b/package/qlibc/0001-remove-absolute-paths.patch
new file mode 100644 (file)
index 0000000..5976c3c
--- /dev/null
@@ -0,0 +1,19 @@
+Remove absolute paths to host locations
+
+Signed-off-by: Sagaert Johan <sagaert.johan@skynet.be>
+
+Index: b/configure.ac
+===================================================================
+--- a/configure.ac
++++ b/configure.ac
+@@ -85,10 +85,8 @@
+ ## Set path
+ PATH="$PATH:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin"
+-CPPFLAGS="$CPPFLAGS -I/usr/include -I/usr/local/include"
+ CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
+ CPPFLAGS="$CPPFLAGS -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
+-LDFLAGS="$LDFLAGS -L/usr/lib -L/usr/local/lib"
+ ## Set autoconf setting
+ #AC_CANONICAL_TARGET
diff --git a/package/qlibc/0002-obey-destdir.patch b/package/qlibc/0002-obey-destdir.patch
new file mode 100644 (file)
index 0000000..02b0bc4
--- /dev/null
@@ -0,0 +1,90 @@
+Make sure the Makefile obeys $(DESTDIR)
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/src/Makefile.in
+===================================================================
+--- a/src/Makefile.in
++++ b/src/Makefile.in
+@@ -120,48 +120,48 @@
+ install: ${INSTALL_TARGETS}
+ install-qlibc: qlibc
+-      ${MKDIR_P} ${INST_INCDIR}/qlibc
+-      ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibc.h ${INST_INCDIR}/qlibc/qlibc.h
+-      ${MKDIR_P} ${INST_LIBDIR}
+-      ${INSTALL_DATA} ${QLIBC_LIBDIR}/${QLIBC_LIBNAME} ${INST_LIBDIR}/${QLIBC_LIBNAME}
+-      ${INSTALL_DATA} ${QLIBC_LIBDIR}/${QLIBC_SLIBREALNAME} ${INST_LIBDIR}/${QLIBC_SLIBREALNAME}
+-      ( cd ${INST_LIBDIR}; ${LN_S} -f ${QLIBC_SLIBREALNAME} ${QLIBC_SLIBNAME} )
++      ${MKDIR_P} ${DESTDIR}/${INST_INCDIR}/qlibc
++      ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibc.h ${DESTDIR}/${INST_INCDIR}/qlibc/qlibc.h
++      ${MKDIR_P} ${DESTDIR}/${INST_LIBDIR}
++      ${INSTALL_DATA} ${QLIBC_LIBDIR}/${QLIBC_LIBNAME} ${DESTDIR}/${INST_LIBDIR}/${QLIBC_LIBNAME}
++      ${INSTALL_DATA} ${QLIBC_LIBDIR}/${QLIBC_SLIBREALNAME} ${DESTDIR}/${INST_LIBDIR}/${QLIBC_SLIBREALNAME}
++      ( cd ${DESTDIR}/${INST_LIBDIR}; ${LN_S} -f ${QLIBC_SLIBREALNAME} ${QLIBC_SLIBNAME} )
+ uninstall-qlibc:
+-      ${RM} -f ${INST_INCDIR}/qlibc/qlibc.h
+-      ${RM} -f ${INST_LIBDIR}/${QLIBC_LIBNAME}
+-      ${RM} -f ${INST_LIBDIR}/${QLIBC_SLIBREALNAME}
+-      ${RM} -f ${INST_LIBDIR}/${QLIBC_SLIBNAME}
++      ${RM} -f ${DESTDIR}/${INST_INCDIR}/qlibc/qlibc.h
++      ${RM} -f ${DESTDIR}/${INST_LIBDIR}/${QLIBC_LIBNAME}
++      ${RM} -f ${DESTDIR}/${INST_LIBDIR}/${QLIBC_SLIBREALNAME}
++      ${RM} -f ${DESTDIR}/${INST_LIBDIR}/${QLIBC_SLIBNAME}
+ install-qlibcext: qlibcext
+-      ${MKDIR_P} ${INST_INCDIR}/qlibc
+-      ${MKDIR_P} ${INST_INCDIR}/qlibc/qlibcext/
+-      ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext.h ${INST_INCDIR}/qlibc/qlibcext.h
+-      ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qconfig.h ${INST_INCDIR}/qlibc/qlibcext/qconfig.h
+-      ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qaconf.h ${INST_INCDIR}/qlibc/qlibcext/qaconf.h
+-      ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qlog.h ${INST_INCDIR}/qlibc/qlibcext/qlog.h
+-      ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qhttpclient.h ${INST_INCDIR}/qlibc/qlibcext/qhttpclient.h
+-      ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qdatabase.h ${INST_INCDIR}/qlibc/qlibcext/qdatabase.h
+-      ${MKDIR_P} ${INST_LIBDIR}
+-      ${INSTALL_DATA} ${QLIBC_LIBDIR}/${QLIBCEXT_LIBNAME} ${INST_LIBDIR}/${QLIBCEXT_LIBNAME}
+-      ${INSTALL_DATA} ${QLIBC_LIBDIR}/${QLIBCEXT_SLIBREALNAME} ${INST_LIBDIR}/${QLIBCEXT_SLIBREALNAME}
+-      ( cd ${INST_LIBDIR}; ${LN_S} -f ${QLIBCEXT_SLIBREALNAME} ${QLIBCEXT_SLIBNAME} )
++      ${MKDIR_P} ${DESTDIR}/${INST_INCDIR}/qlibc
++      ${MKDIR_P} ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/
++      ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext.h ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext.h
++      ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qconfig.h ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qconfig.h
++      ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qaconf.h ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qaconf.h
++      ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qlog.h ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qlog.h
++      ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qhttpclient.h ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qhttpclient.h
++      ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qdatabase.h ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qdatabase.h
++      ${MKDIR_P} ${DESTDIR}/${INST_LIBDIR}
++      ${INSTALL_DATA} ${QLIBC_LIBDIR}/${QLIBCEXT_LIBNAME} ${DESTDIR}/${INST_LIBDIR}/${QLIBCEXT_LIBNAME}
++      ${INSTALL_DATA} ${QLIBC_LIBDIR}/${QLIBCEXT_SLIBREALNAME} ${DESTDIR}/${INST_LIBDIR}/${QLIBCEXT_SLIBREALNAME}
++      ( cd ${DESTDIR}/${INST_LIBDIR}; ${LN_S} -f ${QLIBCEXT_SLIBREALNAME} ${QLIBCEXT_SLIBNAME} )
+ uninstall-qlibcext:
+-      ${RM} -f ${INST_INCDIR}/qlibc/qlibcext.h
+-      ${RM} -f ${INST_INCDIR}/qlibc/qlibcext/qconfig.h
+-      ${RM} -f ${INST_INCDIR}/qlibc/qlibcext/qaconf.h
+-      ${RM} -f ${INST_INCDIR}/qlibc/qlibcext/qlog.h
+-      ${RM} -f ${INST_INCDIR}/qlibc/qlibcext/qhttpclient.h
+-      ${RM} -f ${INST_INCDIR}/qlibc/qlibcext/qdatabase.h
+-      ${RM} -f ${INST_LIBDIR}/${QLIBCEXT_LIBNAME}
+-      ${RM} -f ${INST_LIBDIR}/${QLIBCEXT_SLIBREALNAME}
+-      ${RM} -f ${INST_LIBDIR}/${QLIBCEXT_SLIBNAME}
++      ${RM} -f ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext.h
++      ${RM} -f ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qconfig.h
++      ${RM} -f ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qaconf.h
++      ${RM} -f ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qlog.h
++      ${RM} -f ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qhttpclient.h
++      ${RM} -f ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qdatabase.h
++      ${RM} -f ${DESTDIR}/${INST_LIBDIR}/${QLIBCEXT_LIBNAME}
++      ${RM} -f ${DESTDIR}/${INST_LIBDIR}/${QLIBCEXT_SLIBREALNAME}
++      ${RM} -f ${DESTDIR}/${INST_LIBDIR}/${QLIBCEXT_SLIBNAME}
+ deinstall: uninstall
+ uninstall: uninstall-qlibc uninstall-qlibcext
+-      ${RMDIR} ${INST_INCDIR}/qlibc/qlibcext
+-      ${RMDIR} ${INST_INCDIR}/qlibc
++      ${RMDIR} ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext
++      ${RMDIR} ${DESTDIR}/${INST_INCDIR}/qlibc
+ clean:
+       ${RM} -f ${QLIBC_OBJS}
diff --git a/package/qlibc/0003-fix-openssl-mysql-checks.patch b/package/qlibc/0003-fix-openssl-mysql-checks.patch
new file mode 100644 (file)
index 0000000..bb609b2
--- /dev/null
@@ -0,0 +1,36 @@
+Allow to explicitly disable openssl and mysql
+
+AC_ARG_WITH() is being incorrectly used: the third argument indicates
+the action that needs to be taken when a value was passed, when not
+the option is enabled. Therefore, the result of the existing code was
+that when you passed --without-mysql or --without-openssl, the
+$withval variable would get the value 'yes', which is obviously wrong.
+
+Instead, we simply empty this third argument, because $withval is
+already properly filled with 'yes' or 'no' by the AC_ARG_WITH()
+function.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/configure.ac
+===================================================================
+--- a/configure.ac
++++ b/configure.ac
+@@ -170,7 +170,7 @@
+ ## --with section
+ ##
+-AC_ARG_WITH([openssl],[AS_HELP_STRING([--with-openssl], [This will enable HTTPS support in qhttpclient extension API. When it's enabled, user applications will need to link openssl library with -lssl option.])],[withval=yes],[withval=no])
++AC_ARG_WITH([openssl],[AS_HELP_STRING([--with-openssl], [This will enable HTTPS support in qhttpclient extension API. When it's enabled, user applications will need to link openssl library with -lssl option.])],[],[withval=no])
+ if test "$withval" = yes; then
+       if test "$with_openssl" = yes; then
+               with_openssl="/usr/include"
+@@ -185,7 +185,7 @@
+       fi
+ fi
+-AC_ARG_WITH([mysql],[AS_HELP_STRING([--with-mysql], [This will enable MySQL database support in qdatabase extension API. When it's enabled, user applications need to link mysql client library. (ex: -lmysqlclient)])],[withval=yes],[withval=no])
++AC_ARG_WITH([mysql],[AS_HELP_STRING([--with-mysql], [This will enable MySQL database support in qdatabase extension API. When it's enabled, user applications need to link mysql client library. (ex: -lmysqlclient)])],[],[withval=no])
+ if test "$withval" = yes; then
+       if test "$with_mysql" = yes; then
+               with_mysql="/usr/include/mysql"
diff --git a/package/qlibc/qlibc-0001-remove-absolute-paths.patch b/package/qlibc/qlibc-0001-remove-absolute-paths.patch
deleted file mode 100644 (file)
index 5976c3c..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-Remove absolute paths to host locations
-
-Signed-off-by: Sagaert Johan <sagaert.johan@skynet.be>
-
-Index: b/configure.ac
-===================================================================
---- a/configure.ac
-+++ b/configure.ac
-@@ -85,10 +85,8 @@
- ## Set path
- PATH="$PATH:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin"
--CPPFLAGS="$CPPFLAGS -I/usr/include -I/usr/local/include"
- CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
- CPPFLAGS="$CPPFLAGS -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
--LDFLAGS="$LDFLAGS -L/usr/lib -L/usr/local/lib"
- ## Set autoconf setting
- #AC_CANONICAL_TARGET
diff --git a/package/qlibc/qlibc-0002-obey-destdir.patch b/package/qlibc/qlibc-0002-obey-destdir.patch
deleted file mode 100644 (file)
index 02b0bc4..0000000
+++ /dev/null
@@ -1,90 +0,0 @@
-Make sure the Makefile obeys $(DESTDIR)
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/src/Makefile.in
-===================================================================
---- a/src/Makefile.in
-+++ b/src/Makefile.in
-@@ -120,48 +120,48 @@
- install: ${INSTALL_TARGETS}
- install-qlibc: qlibc
--      ${MKDIR_P} ${INST_INCDIR}/qlibc
--      ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibc.h ${INST_INCDIR}/qlibc/qlibc.h
--      ${MKDIR_P} ${INST_LIBDIR}
--      ${INSTALL_DATA} ${QLIBC_LIBDIR}/${QLIBC_LIBNAME} ${INST_LIBDIR}/${QLIBC_LIBNAME}
--      ${INSTALL_DATA} ${QLIBC_LIBDIR}/${QLIBC_SLIBREALNAME} ${INST_LIBDIR}/${QLIBC_SLIBREALNAME}
--      ( cd ${INST_LIBDIR}; ${LN_S} -f ${QLIBC_SLIBREALNAME} ${QLIBC_SLIBNAME} )
-+      ${MKDIR_P} ${DESTDIR}/${INST_INCDIR}/qlibc
-+      ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibc.h ${DESTDIR}/${INST_INCDIR}/qlibc/qlibc.h
-+      ${MKDIR_P} ${DESTDIR}/${INST_LIBDIR}
-+      ${INSTALL_DATA} ${QLIBC_LIBDIR}/${QLIBC_LIBNAME} ${DESTDIR}/${INST_LIBDIR}/${QLIBC_LIBNAME}
-+      ${INSTALL_DATA} ${QLIBC_LIBDIR}/${QLIBC_SLIBREALNAME} ${DESTDIR}/${INST_LIBDIR}/${QLIBC_SLIBREALNAME}
-+      ( cd ${DESTDIR}/${INST_LIBDIR}; ${LN_S} -f ${QLIBC_SLIBREALNAME} ${QLIBC_SLIBNAME} )
- uninstall-qlibc:
--      ${RM} -f ${INST_INCDIR}/qlibc/qlibc.h
--      ${RM} -f ${INST_LIBDIR}/${QLIBC_LIBNAME}
--      ${RM} -f ${INST_LIBDIR}/${QLIBC_SLIBREALNAME}
--      ${RM} -f ${INST_LIBDIR}/${QLIBC_SLIBNAME}
-+      ${RM} -f ${DESTDIR}/${INST_INCDIR}/qlibc/qlibc.h
-+      ${RM} -f ${DESTDIR}/${INST_LIBDIR}/${QLIBC_LIBNAME}
-+      ${RM} -f ${DESTDIR}/${INST_LIBDIR}/${QLIBC_SLIBREALNAME}
-+      ${RM} -f ${DESTDIR}/${INST_LIBDIR}/${QLIBC_SLIBNAME}
- install-qlibcext: qlibcext
--      ${MKDIR_P} ${INST_INCDIR}/qlibc
--      ${MKDIR_P} ${INST_INCDIR}/qlibc/qlibcext/
--      ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext.h ${INST_INCDIR}/qlibc/qlibcext.h
--      ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qconfig.h ${INST_INCDIR}/qlibc/qlibcext/qconfig.h
--      ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qaconf.h ${INST_INCDIR}/qlibc/qlibcext/qaconf.h
--      ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qlog.h ${INST_INCDIR}/qlibc/qlibcext/qlog.h
--      ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qhttpclient.h ${INST_INCDIR}/qlibc/qlibcext/qhttpclient.h
--      ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qdatabase.h ${INST_INCDIR}/qlibc/qlibcext/qdatabase.h
--      ${MKDIR_P} ${INST_LIBDIR}
--      ${INSTALL_DATA} ${QLIBC_LIBDIR}/${QLIBCEXT_LIBNAME} ${INST_LIBDIR}/${QLIBCEXT_LIBNAME}
--      ${INSTALL_DATA} ${QLIBC_LIBDIR}/${QLIBCEXT_SLIBREALNAME} ${INST_LIBDIR}/${QLIBCEXT_SLIBREALNAME}
--      ( cd ${INST_LIBDIR}; ${LN_S} -f ${QLIBCEXT_SLIBREALNAME} ${QLIBCEXT_SLIBNAME} )
-+      ${MKDIR_P} ${DESTDIR}/${INST_INCDIR}/qlibc
-+      ${MKDIR_P} ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/
-+      ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext.h ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext.h
-+      ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qconfig.h ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qconfig.h
-+      ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qaconf.h ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qaconf.h
-+      ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qlog.h ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qlog.h
-+      ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qhttpclient.h ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qhttpclient.h
-+      ${INSTALL_DATA} ${QLIBC_INCDIR}/qlibcext/qdatabase.h ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qdatabase.h
-+      ${MKDIR_P} ${DESTDIR}/${INST_LIBDIR}
-+      ${INSTALL_DATA} ${QLIBC_LIBDIR}/${QLIBCEXT_LIBNAME} ${DESTDIR}/${INST_LIBDIR}/${QLIBCEXT_LIBNAME}
-+      ${INSTALL_DATA} ${QLIBC_LIBDIR}/${QLIBCEXT_SLIBREALNAME} ${DESTDIR}/${INST_LIBDIR}/${QLIBCEXT_SLIBREALNAME}
-+      ( cd ${DESTDIR}/${INST_LIBDIR}; ${LN_S} -f ${QLIBCEXT_SLIBREALNAME} ${QLIBCEXT_SLIBNAME} )
- uninstall-qlibcext:
--      ${RM} -f ${INST_INCDIR}/qlibc/qlibcext.h
--      ${RM} -f ${INST_INCDIR}/qlibc/qlibcext/qconfig.h
--      ${RM} -f ${INST_INCDIR}/qlibc/qlibcext/qaconf.h
--      ${RM} -f ${INST_INCDIR}/qlibc/qlibcext/qlog.h
--      ${RM} -f ${INST_INCDIR}/qlibc/qlibcext/qhttpclient.h
--      ${RM} -f ${INST_INCDIR}/qlibc/qlibcext/qdatabase.h
--      ${RM} -f ${INST_LIBDIR}/${QLIBCEXT_LIBNAME}
--      ${RM} -f ${INST_LIBDIR}/${QLIBCEXT_SLIBREALNAME}
--      ${RM} -f ${INST_LIBDIR}/${QLIBCEXT_SLIBNAME}
-+      ${RM} -f ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext.h
-+      ${RM} -f ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qconfig.h
-+      ${RM} -f ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qaconf.h
-+      ${RM} -f ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qlog.h
-+      ${RM} -f ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qhttpclient.h
-+      ${RM} -f ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext/qdatabase.h
-+      ${RM} -f ${DESTDIR}/${INST_LIBDIR}/${QLIBCEXT_LIBNAME}
-+      ${RM} -f ${DESTDIR}/${INST_LIBDIR}/${QLIBCEXT_SLIBREALNAME}
-+      ${RM} -f ${DESTDIR}/${INST_LIBDIR}/${QLIBCEXT_SLIBNAME}
- deinstall: uninstall
- uninstall: uninstall-qlibc uninstall-qlibcext
--      ${RMDIR} ${INST_INCDIR}/qlibc/qlibcext
--      ${RMDIR} ${INST_INCDIR}/qlibc
-+      ${RMDIR} ${DESTDIR}/${INST_INCDIR}/qlibc/qlibcext
-+      ${RMDIR} ${DESTDIR}/${INST_INCDIR}/qlibc
- clean:
-       ${RM} -f ${QLIBC_OBJS}
diff --git a/package/qlibc/qlibc-0003-fix-openssl-mysql-checks.patch b/package/qlibc/qlibc-0003-fix-openssl-mysql-checks.patch
deleted file mode 100644 (file)
index bb609b2..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-Allow to explicitly disable openssl and mysql
-
-AC_ARG_WITH() is being incorrectly used: the third argument indicates
-the action that needs to be taken when a value was passed, when not
-the option is enabled. Therefore, the result of the existing code was
-that when you passed --without-mysql or --without-openssl, the
-$withval variable would get the value 'yes', which is obviously wrong.
-
-Instead, we simply empty this third argument, because $withval is
-already properly filled with 'yes' or 'no' by the AC_ARG_WITH()
-function.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/configure.ac
-===================================================================
---- a/configure.ac
-+++ b/configure.ac
-@@ -170,7 +170,7 @@
- ## --with section
- ##
--AC_ARG_WITH([openssl],[AS_HELP_STRING([--with-openssl], [This will enable HTTPS support in qhttpclient extension API. When it's enabled, user applications will need to link openssl library with -lssl option.])],[withval=yes],[withval=no])
-+AC_ARG_WITH([openssl],[AS_HELP_STRING([--with-openssl], [This will enable HTTPS support in qhttpclient extension API. When it's enabled, user applications will need to link openssl library with -lssl option.])],[],[withval=no])
- if test "$withval" = yes; then
-       if test "$with_openssl" = yes; then
-               with_openssl="/usr/include"
-@@ -185,7 +185,7 @@
-       fi
- fi
--AC_ARG_WITH([mysql],[AS_HELP_STRING([--with-mysql], [This will enable MySQL database support in qdatabase extension API. When it's enabled, user applications need to link mysql client library. (ex: -lmysqlclient)])],[withval=yes],[withval=no])
-+AC_ARG_WITH([mysql],[AS_HELP_STRING([--with-mysql], [This will enable MySQL database support in qdatabase extension API. When it's enabled, user applications need to link mysql client library. (ex: -lmysqlclient)])],[],[withval=no])
- if test "$withval" = yes; then
-       if test "$with_mysql" = yes; then
-               with_mysql="/usr/include/mysql"
diff --git a/package/qt/0001-configure.patch b/package/qt/0001-configure.patch
new file mode 100644 (file)
index 0000000..07c9630
--- /dev/null
@@ -0,0 +1,52 @@
+Fix -hostprefix behaviour
+
+When -hostprefix ./configure option is used, Qt installs all its
+headers, libraries and binaries inside the given host prefix, instead
+of the prefix. This is used by Buildroot to make sure that all Qt
+libraries and headers are installed in $(STAGING_DIR).
+
+Qt ./configure script also allows to tune the installation location of
+various elements, for examples the plugins through the -plugindir
+option. Unfortunately, this option only impact the installation path
+on the target, but not on the host when -hostprefix is used.
+
+This patch modifies Qt ./configure script so that HOST_*PATH_STR
+variables are composed of the host prefix concatenated with the path
+of installation on the target. This way, the plugin installation local
+in the $(STAGING_DIR) and on the target remains the same.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+---
+ configure |   18 +++++++++---------
+ 1 file changed, 9 insertions(+), 9 deletions(-)
+
+Index: qt-everywhere-opensource-src-4.8.1/configure
+===================================================================
+--- qt-everywhere-opensource-src-4.8.1.orig/configure
++++ qt-everywhere-opensource-src-4.8.1/configure
+@@ -4661,15 +4661,15 @@
+ if [ ! -z "$QT_HOST_PREFIX" ]; then
+-    HOSTPREFIX_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_prfxpath=$QT_HOST_PREFIX"`
+-    HOSTDOCUMENTATION_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_docspath=$QT_HOST_PREFIX/doc"`
+-    HOSTHEADERS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_hdrspath=$QT_HOST_PREFIX/include"`
+-    HOSTLIBRARIES_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_libspath=$QT_HOST_PREFIX/lib"`
+-    HOSTBINARIES_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_binspath=$QT_HOST_PREFIX/bin"`
+-    HOSTPLUGINS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_plugpath=$QT_HOST_PREFIX/plugins"`
+-    HOSTIMPORTS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_impspath=$QT_HOST_PREFIX/IMPORTS"`
+-    HOSTDATA_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_datapath=$QT_HOST_PREFIX"`
+-    HOSTTRANSLATIONS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_trnspath=$QT_HOST_PREFIX/translations"`
++    HOSTPREFIX_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_prfxpath=$QT_HOST_PREFIX/$QT_INSTALL_PREFIX"`
++    HOSTDOCUMENTATION_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_docspath=$QT_HOST_PREFIX/$QT_INSTALL_DOCS"`
++    HOSTHEADERS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_hdrspath=$QT_HOST_PREFIX/$QT_INSTALL_HEADERS"`
++    HOSTLIBRARIES_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_libspath=$QT_HOST_PREFIX/$QT_INSTALL_LIBS"`
++    HOSTBINARIES_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_binspath=$QT_HOST_PREFIX/$QT_INSTALL_BINS"`
++    HOSTPLUGINS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_plugpath=$QT_HOST_PREFIX/$QT_INSTALL_PLUGINS"`
++    HOSTIMPORTS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_impspath=$QT_HOST_PREFIX/$QT_INSTALL_IMPORTS"`
++    HOSTDATA_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_datapath=$QT_HOST_PREFIX/$QT_INSTALL_DATA"`
++    HOSTTRANSLATIONS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_trnspath=$QT_HOST_PREFIX/$QT_INSTALL_TRANSLATIONS"`
+     HOSTSETTINGS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_stngpath=$QT_INSTALL_SETTINGS"`
+     HOSTEXAMPLES_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_xmplpath=$QT_INSTALL_EXAMPLES"`
+     HOSTDEMOS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_demopath=$QT_INSTALL_DEMOS"`
diff --git a/package/qt/0002-eglwsegl-use-system.patch b/package/qt/0002-eglwsegl-use-system.patch
new file mode 100644 (file)
index 0000000..cb30381
--- /dev/null
@@ -0,0 +1,802 @@
+Patch to remove obsolete powervr headers and instead use the headers provided
+on the system.
+
+Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
+---
+Index: qt-4.8.5/src/3rdparty/powervr/pvr2d.h
+===================================================================
+--- qt-4.8.5.orig/src/3rdparty/powervr/pvr2d.h 2013-07-08 11:24:33.010516867 -0500
++++ /dev/null  1970-01-01 00:00:00.000000000 +0000
+@@ -1,502 +0,0 @@
+-/*!****************************************************************************
+-@File          pvr2d.h
+-@Title         PVR2D external header file
+-@Author        Imagination Technologies
+-@Copyright     Copyright (c) by Imagination Technologies Limited.
+-                              This specification is protected by copyright laws and contains
+-                              material proprietary to Imagination Technologies Limited.
+-                              You may use and distribute this specification free of charge for implementing
+-                              the functionality therein, without altering or removing any trademark, copyright,
+-                              or other notice from the specification.
+-@Platform      Generic
+-@Description   PVR2D definitions for PVR2D clients
+-******************************************************************************/
+-
+-
+-/******************************************************************************
+-Modifications :-
+-$Log: pvr2d.h $
+-******************************************************************************/
+-
+-#ifndef _PVR2D_H_
+-#define _PVR2D_H_
+-
+-#ifdef __cplusplus
+-extern "C" {
+-#endif
+-
+-/* PVR2D Platform-specific definitions */
+-#define PVR2D_EXPORT
+-#define PVR2D_IMPORT
+-
+-
+-#define PVR2D_REV_MAJOR               2
+-#define PVR2D_REV_MINOR               1
+-
+-typedef enum
+-{
+-      PVR2D_FALSE = 0,
+-      PVR2D_TRUE
+-} PVR2D_BOOL;
+-
+-
+-/* error codes */
+-typedef enum
+-{
+-      PVR2D_OK = 0,
+-      PVR2DERROR_INVALID_PARAMETER = -1,
+-      PVR2DERROR_DEVICE_UNAVAILABLE = -2,
+-      PVR2DERROR_INVALID_CONTEXT = -3,
+-      PVR2DERROR_MEMORY_UNAVAILABLE = -4,
+-      PVR2DERROR_DEVICE_NOT_PRESENT = -5,
+-      PVR2DERROR_IOCTL_ERROR = -6,
+-      PVR2DERROR_GENERIC_ERROR = -7,
+-      PVR2DERROR_BLT_NOTCOMPLETE = -8,
+-      PVR2DERROR_HW_FEATURE_NOT_SUPPORTED = -9,
+-      PVR2DERROR_NOT_YET_IMPLEMENTED = -10,
+-      PVR2DERROR_MAPPING_FAILED = -11
+-}PVR2DERROR;
+-
+-
+-/* pixel formats */
+-typedef enum
+-{
+-      PVR2D_1BPP = 0,
+-      PVR2D_RGB565,
+-      PVR2D_ARGB4444,
+-      PVR2D_RGB888,
+-      PVR2D_ARGB8888,
+-      PVR2D_ARGB1555,
+-      PVR2D_ALPHA8,
+-      PVR2D_ALPHA4,
+-      PVR2D_PAL2,
+-      PVR2D_PAL4,
+-      PVR2D_PAL8,
+-      PVR2D_VGAEMU
+-
+-}PVR2DFORMAT;
+-
+-
+-/* wrap surface type */
+-typedef enum
+-{
+-      PVR2D_WRAPFLAG_NONCONTIGUOUS = 0,
+-      PVR2D_WRAPFLAG_CONTIGUOUS = 1,
+-
+-}PVR2DWRAPFLAGS;
+-
+-/* flags for control information of additional blits */
+-typedef enum
+-{
+-      PVR2D_BLIT_DISABLE_ALL                                  = 0x0000,       /* disable all additional controls */
+-      PVR2D_BLIT_CK_ENABLE                                    = 0x0001,       /* enable colour key */
+-      PVR2D_BLIT_GLOBAL_ALPHA_ENABLE                  = 0x0002,       /* enable standard global alpha */
+-      PVR2D_BLIT_PERPIXEL_ALPHABLEND_ENABLE   = 0x0004,       /* enable per-pixel alpha bleding */
+-      PVR2D_BLIT_PAT_SURFACE_ENABLE                   = 0x0008,       /* enable pattern surf (disable fill) */
+-      PVR2D_BLIT_FULLY_SPECIFIED_ALPHA_ENABLE = 0x0010,       /* enable fully specified alpha */
+-      PVR2D_BLIT_ROT_90                                               = 0x0020,       /* apply 90 degree rotation to the blt */
+-      PVR2D_BLIT_ROT_180                                              = 0x0040,       /* apply 180 degree rotation to the blt */
+-      PVR2D_BLIT_ROT_270                                              = 0x0080,       /* apply 270 degree rotation to the blt */
+-      PVR2D_BLIT_COPYORDER_TL2BR                              = 0x0100,       /* copy order overrides */
+-      PVR2D_BLIT_COPYORDER_BR2TL                              = 0x0200,
+-      PVR2D_BLIT_COPYORDER_TR2BL                              = 0x0400,
+-      PVR2D_BLIT_COPYORDER_BL2TR                              = 0x0800,
+-      PVR2D_BLIT_COLKEY_SOURCE                                = 0x1000,       /* Key colour is on the source surface */
+-      PVR2D_BLIT_COLKEY_DEST                                  = 0x2000        /* Key colour is on the destination surface */
+-
+-} PVR2DBLITFLAGS;
+-
+-/* standard alpha-blending functions, AlphaBlendingFunc field of PVR2DBLTINFO */
+-typedef enum
+-{
+-      PVR2D_ALPHA_OP_SRC_DSTINV = 1,  /* source alpha : Cdst = Csrc*Asrc + Cdst*(1-Asrc) */
+-      PVR2D_ALPHA_OP_SRCP_DSTINV = 2  /* premultiplied source alpha : Cdst = Csrc + Cdst*(1-Asrc) */
+-} PVR2D_ALPHABLENDFUNC;
+-
+-/* blend ops for fully specified alpha */
+-typedef enum
+-{
+-      PVR2D_BLEND_OP_ZERO = 0,
+-      PVR2D_BLEND_OP_ONE = 1,
+-      PVR2D_BLEND_OP_SRC = 2,
+-      PVR2D_BLEND_OP_DST = 3,
+-      PVR2D_BLEND_OP_GLOBAL = 4,
+-      PVR2D_BLEND_OP_SRC_PLUS_GLOBAL = 5,
+-      PVR2D_BLEND_OP_DST_PLUS_GLOBAL = 6
+-}PVR2D_BLEND_OP;
+-
+-
+-typedef void* PVR2D_HANDLE;
+-
+-
+-/* Fully specified alpha blend :      pAlpha field of PVR2DBLTINFO structure                                  */
+-/* a fully specified Alpha Blend operation is defined as                                                                      */
+-/* DST (ALPHA) = (ALPHA_1 * SRC (ALPHA)) + (ALPHA_3 * DST (ALPHA))                                                    */
+-/* DST (RGB)   = (ALPHA_2 * SRC (RGB)) + (ALPHA_4 * DST (RGB))                                                                */
+-/* if the pre-multiplication stage is enabled then the equations become the following:                */
+-/* PRE_MUL     = ((SRC(A)) * (Global Alpha Value))                                                                                    */
+-/* DST (ALPHA) = (ALPHA_1 * SRC (ALPHA)) + (PRE_MUL * DST (ALPHA))                                                    */
+-/* DST (RGB)   = (ALPHA_2 * SRC (RGB)) + (PRE_MUL * DST (RGB))                                                                */
+-/* if the transparent source alpha stage is enabled then a source alpha of zero forces the    */
+-/* source to be transparent for that pixel regardless of the blend equation being used.               */
+-typedef struct _PVR2D_ALPHABLT
+-{
+-      PVR2D_BLEND_OP  eAlpha1;
+-      PVR2D_BOOL              bAlpha1Invert;
+-      PVR2D_BLEND_OP  eAlpha2;
+-      PVR2D_BOOL              bAlpha2Invert;
+-      PVR2D_BLEND_OP  eAlpha3;
+-      PVR2D_BOOL              bAlpha3Invert;
+-      PVR2D_BLEND_OP  eAlpha4;
+-      PVR2D_BOOL              bAlpha4Invert;
+-      PVR2D_BOOL              bPremulAlpha;                   /* enable pre-multiplication stage */
+-      PVR2D_BOOL              bTransAlpha;                    /* enable transparent source alpha stage */
+-      PVR2D_BOOL              bUpdateAlphaLookup;             /* enable and update the 1555-Lookup alpha table */
+-      unsigned char   uAlphaLookup0;                  /* 8 bit alpha when A=0 in a 1555-Lookup surface */
+-      unsigned char   uAlphaLookup1;                  /* 8 bit alpha when A=1 in a 1555-Lookup surface */
+-      unsigned char   uGlobalRGB;                             /* Global Alpha Value for RGB, 0=transparent 255=opaque */
+-      unsigned char   uGlobalA;                               /* Global Alpha Value for Alpha */
+-
+-} PVR2D_ALPHABLT, *PPVR2D_ALPHABLT;
+-
+-
+-/* surface memory info structure */
+-typedef struct _PVR2DMEMINFO
+-{
+-      void                            *pBase;
+-      unsigned long           ui32MemSize;
+-      unsigned long           ui32DevAddr;
+-      unsigned long           ulFlags;
+-      void                            *hPrivateData;
+-      void                            *hPrivateMapData;
+-
+-}PVR2DMEMINFO, *PPVR2DMEMINFO;
+-
+-
+-#define PVR2D_MAX_DEVICE_NAME 20
+-
+-typedef struct _PVR2DDEVICEINFO
+-{
+-      unsigned long   ulDevID;
+-      char                    szDeviceName[PVR2D_MAX_DEVICE_NAME];
+-}PVR2DDEVICEINFO;
+-
+-
+-typedef struct _PVR2DISPLAYINFO
+-{
+-      unsigned long   ulMaxFlipChains;
+-      unsigned long   ulMaxBuffersInChain;
+-      PVR2DFORMAT             eFormat;
+-      unsigned long   ulWidth;
+-      unsigned long   ulHeight;
+-      long                    lStride;
+-      unsigned long   ulMinFlipInterval;
+-      unsigned long   ulMaxFlipInterval;
+-
+-}PVR2DDISPLAYINFO;
+-
+-
+-typedef struct _PVR2DBLTINFO
+-{
+-      unsigned long   CopyCode;                       /* rop code  */
+-      unsigned long   Colour;                         /* fill colour */
+-      unsigned long   ColourKey;                      /* colour key */
+-      unsigned char   GlobalAlphaValue;       /* global alpha blending */
+-      unsigned char   AlphaBlendingFunc;      /* per-pixel alpha-blending function */
+-
+-      PVR2DBLITFLAGS  BlitFlags;                      /* additional blit control information */
+-
+-      PVR2DMEMINFO    *pDstMemInfo;           /* destination memory */
+-      unsigned long   DstOffset;                      /* byte offset from start of allocation to destination surface pixel 0,0 */
+-      long                    DstStride;                      /* signed stride, the number of bytes from pixel 0,0 to 0,1 */
+-      long                    DstX, DstY;                     /* pixel offset from start of dest surface to start of blt rectangle */
+-      long                    DSizeX,DSizeY;          /* blt size */
+-      PVR2DFORMAT             DstFormat;                      /* dest format */
+-      unsigned long   DstSurfWidth;           /* size of dest surface in pixels */
+-      unsigned long   DstSurfHeight;          /* size of dest surface in pixels */
+-
+-      PVR2DMEMINFO    *pSrcMemInfo;           /* source mem, (source fields are also used for patterns) */
+-      unsigned long   SrcOffset;                      /* byte offset from start of allocation to src/pat surface pixel 0,0 */
+-      long                    SrcStride;                      /* signed stride, the number of bytes from pixel 0,0 to 0,1 */
+-      long                    SrcX, SrcY;                     /* pixel offset from start of surface to start of source rectangle */
+-                                                                              /* for patterns this is the start offset within the pattern */
+-      long                    SizeX,SizeY;            /* source rectangle size or pattern size in pixels */
+-      PVR2DFORMAT             SrcFormat;                      /* source/pattern format */
+-      PVR2DMEMINFO    *pPalMemInfo;           /* source/pattern palette memory containing argb8888 colour table */
+-      unsigned long   PalOffset;                      /* byte offset from start of allocation to start of palette */
+-      unsigned long   SrcSurfWidth;           /* size of source surface in pixels */
+-      unsigned long   SrcSurfHeight;          /* size of source surface in pixels */
+-
+-      PVR2DMEMINFO    *pMaskMemInfo;          /* mask memory, 1bpp format implied */
+-      unsigned long   MaskOffset;                     /* byte offset from start of allocation to mask surface pixel 0,0 */
+-      long                    MaskStride;                     /* signed stride, the number of bytes from pixel 0,0 to 0,1 */
+-      long                    MaskX, MaskY;           /* mask rect top left (mask size = blt size) */
+-      unsigned long   MaskSurfWidth;          /* size of mask surface in pixels */
+-      unsigned long   MaskSurfHeight;         /* size of mask surface in pixels */
+-      
+-      PPVR2D_ALPHABLT pAlpha;                         /* fully specified alpha blend */
+-
+-}PVR2DBLTINFO, *PPVR2DBLTINFO;
+-
+-typedef struct _PVR2DRECT
+-{
+-      long left, top;
+-      long right, bottom;
+-} PVR2DRECT;
+-
+-typedef struct
+-{
+-      PVR2DMEMINFO    *pSurfMemInfo;          /* surface memory */
+-      unsigned long   SurfOffset;                     /* byte offset from start of allocation to destination surface pixel 0,0 */
+-      long                    Stride;                         /* signed stride */
+-      PVR2DFORMAT             Format;
+-      unsigned long   SurfWidth;                      /* surface size in pixels */
+-      unsigned long   SurfHeight;
+-
+-} PVR2D_SURFACE, *PPVR2D_SURFACE;
+-
+-typedef struct
+-{
+-      unsigned long   *pUseCode;                                      /* USSE code */
+-      unsigned long   UseCodeSize;                            /* usse code size in bytes */
+-
+-} PVR2D_USECODE, *PPVR2D_USECODE;
+-
+-typedef struct
+-{
+-      PVR2D_SURFACE                   sDst;                           /* destination surface */
+-      PVR2D_SURFACE                   sSrc;                           /* source surface */
+-      PVR2DRECT                               rcDest;                         /* destination rectangle */
+-      PVR2DRECT                               rcSource;                       /* source rectangle */
+-      PVR2D_HANDLE                    hUseCode;                       /* custom USE code (NULL implies source copy) */
+-      unsigned long                   UseParams[2];           /* per-blt params for use code */
+-
+-} PVR2D_3DBLT, *PPVR2D_3DBLT;
+-
+-
+-#define MAKE_COPY_BLIT(src,soff,dest,doff,sx,sy,dx,dy,sz)
+-
+-typedef void* PVR2DCONTEXTHANDLE;
+-typedef void* PVR2DFLIPCHAINHANDLE;
+-
+-
+-// CopyCode field of PVR2DBLTINFO structure:
+-// the CopyCode field of the PVR2DBLTINFO structure should contain a rop3 or rop4 code.
+-// a rop3 is an 8 bit code that describes a blt with three inputs : source dest and pattern
+-// rop4 is a 16 bit code that describes a blt with four inputs : source dest pattern and mask
+-// common rop3 codes are defined below
+-// a colour fill blt is processed in the pattern channel as a constant colour with a rop code of 0xF0
+-// PVR2D_BLIT_PAT_SURFACE_ENABLE defines whether the pattern channel is a surface or a fill colour.
+-// a rop4 is defined by two rop3 codes, and the 1 bit-per-pixel mask surface defines which is used.
+-// a common rop4 is 0xAAF0 which is the mask copy blt used for text glyphs.
+-// CopyCode is taken to be a rop4 when pMaskMemInfo is non zero, otherwise it is assumed to be a rop3
+-// use the PVR2DMASKROP4 macro below to construct a rop4 from two rop3's
+-// rop3a is the rop used when mask pixel = 1, and rop3b when mask = 0
+-#define PVR2DROP4(rop3b, rop3a)                       ((rop3b<<8)|rop3a)
+-
+-/* common rop codes */
+-#define PVR2DROPclear                         0x00       /* 0 (whiteness) */
+-#define PVR2DROPset                                   0xFF       /* 1 (blackness) */
+-#define PVR2DROPnoop                          0xAA       /* dst (used for masked blts) */
+-
+-/* source and  dest rop codes */
+-#define PVR2DROPand                                   0x88       /* src AND dst */
+-#define PVR2DROPandReverse                    0x44       /* src AND NOT dst */
+-#define PVR2DROPcopy                          0xCC       /* src (used for source copy and alpha blts) */
+-#define PVR2DROPandInverted                   0x22       /* NOT src AND dst */
+-#define PVR2DROPxor                                   0x66       /* src XOR dst */
+-#define PVR2DROPor                                    0xEE       /* src OR dst */
+-#define PVR2DROPnor                                   0x11       /* NOT src AND NOT dst */
+-#define PVR2DROPequiv                         0x99       /* NOT src XOR dst */
+-#define PVR2DROPinvert                                0x55       /* NOT dst */
+-#define PVR2DROPorReverse                     0xDD       /* src OR NOT dst */
+-#define PVR2DROPcopyInverted          0x33       /* NOT src */
+-#define PVR2DROPorInverted                    0xBB       /* NOT src OR dst */
+-#define PVR2DROPnand                          0x77       /* NOT src OR NOT dst */
+-
+-/* pattern rop codes */
+-#define PVR2DPATROPand                                0xA0       /* pat AND dst */
+-#define PVR2DPATROPandReverse         0x50       /* pat AND NOT dst */
+-#define PVR2DPATROPcopy                               0xF0       /* pat (used for solid color fills and pattern blts) */
+-#define PVR2DPATROPandInverted                0x0A       /* NOT pat AND dst */
+-#define PVR2DPATROPxor                                0x5A       /* pat XOR dst */
+-#define PVR2DPATROPor                         0xFA       /* pat OR dst */
+-#define PVR2DPATROPnor                                0x05       /* NOT pat AND NOT dst */
+-#define PVR2DPATROPequiv                      0xA5       /* NOT pat XOR dst */
+-#define PVR2DPATROPinvert                     0x55       /* NOT dst */
+-#define PVR2DPATROPorReverse          0xF5       /* pat OR NOT dst */
+-#define PVR2DPATROPcopyInverted               0x0F       /* NOT pat */
+-#define PVR2DPATROPorInverted         0xAF       /* NOT pat OR dst */
+-#define PVR2DPATROPnand                               0x5F       /* NOT pat OR NOT dst */
+-
+-/* common rop4 codes */
+-#define PVR2DROP4MaskedCopy              PVR2DROP4(PVR2DROPnoop,PVR2DROPcopy)         /* masked source copy blt (used for rounded window corners etc) */
+-#define PVR2DROP4MaskedFill              PVR2DROP4(PVR2DROPnoop,PVR2DPATROPcopy)      /* masked colour fill blt (used for text) */
+-
+-/* Legacy support */
+-#define PVR2DROP3_PATMASK                     PVR2DPATROPcopy
+-#define PVR2DROP3_SRCMASK                     PVR2DROPcopy
+-
+-/* pixmap memory alignment */
+-#define PVR2D_ALIGNMENT_4                     4                       /* DWORD alignment */
+-#define PVR2D_ALIGNMENT_ANY                   0                       /* no alignment    */
+-#define PVR2D_ALIGNMENT_PALETTE               16                      /* 16 byte alignment is required for palettes */
+-
+-/* Heap number for PVR2DGetFrameBuffer */
+-#define PVR2D_FB_PRIMARY_SURFACE 0
+-
+-#define PVR2D_PRESENT_PROPERTY_SRCSTRIDE      (1 << 0)
+-#define PVR2D_PRESENT_PROPERTY_DSTSIZE                (1 << 1)
+-#define PVR2D_PRESENT_PROPERTY_DSTPOS         (1 << 2)
+-#define PVR2D_PRESENT_PROPERTY_CLIPRECTS      (1 << 3)
+-#define PVR2D_PRESENT_PROPERTY_INTERVAL               (1 << 4)
+-
+-
+-#define PVR2D_CREATE_FLIPCHAIN_SHARED         (1 << 0)
+-#define PVR2D_CREATE_FLIPCHAIN_QUERY          (1 << 1)
+-
+-/* Functions that the library exports */
+-
+-PVR2D_IMPORT
+-int PVR2DEnumerateDevices(PVR2DDEVICEINFO *pDevInfo);
+-
+-PVR2D_IMPORT
+-PVR2DERROR PVR2DCreateDeviceContext(unsigned long ulDevID,
+-                                                                      PVR2DCONTEXTHANDLE* phContext,
+-                                                                      unsigned long ulFlags);
+-
+-PVR2D_IMPORT
+-PVR2DERROR PVR2DDestroyDeviceContext(PVR2DCONTEXTHANDLE hContext);
+-
+-PVR2D_IMPORT
+-PVR2DERROR PVR2DGetDeviceInfo(PVR2DCONTEXTHANDLE hContext,
+-                                                        PVR2DDISPLAYINFO *pDisplayInfo);
+-
+-PVR2D_IMPORT
+-PVR2DERROR PVR2DGetScreenMode(PVR2DCONTEXTHANDLE hContext,
+-                                                        PVR2DFORMAT *pFormat,
+-                                                        long *plWidth,
+-                                                        long *plHeight,
+-                                                        long *plStride,
+-                                                        int *piRefreshRate);
+-
+-PVR2D_IMPORT
+-PVR2DERROR PVR2DGetFrameBuffer(PVR2DCONTEXTHANDLE hContext,
+-                                                         int nHeap,
+-                                                         PVR2DMEMINFO **ppsMemInfo);
+-
+-PVR2D_IMPORT
+-PVR2DERROR PVR2DMemAlloc(PVR2DCONTEXTHANDLE hContext,
+-                                               unsigned long ulBytes,
+-                                               unsigned long ulAlign,
+-                                               unsigned long ulFlags,
+-                                               PVR2DMEMINFO **ppsMemInfo);
+-
+-PVR2D_IMPORT
+-PVR2DERROR PVR2DMemWrap(PVR2DCONTEXTHANDLE hContext,
+-                                              void *pMem,
+-                                              unsigned long ulFlags,
+-                                              unsigned long ulBytes,
+-                                              unsigned long alPageAddress[],
+-                                              PVR2DMEMINFO **ppsMemInfo);
+-
+-PVR2D_IMPORT
+-PVR2DERROR PVR2DMemMap(PVR2DCONTEXTHANDLE hContext,
+-                                              unsigned long ulFlags,
+-                                              void *hPrivateMapData,
+-                                              PVR2DMEMINFO **ppsDstMem);
+-
+-PVR2D_IMPORT
+-PVR2DERROR PVR2DMemFree(PVR2DCONTEXTHANDLE hContext,
+-                                              PVR2DMEMINFO *psMemInfo);
+-
+-PVR2D_IMPORT
+-PVR2DERROR PVR2DBlt(PVR2DCONTEXTHANDLE hContext,
+-                                      PVR2DBLTINFO *pBltInfo);
+-
+-PVR2D_IMPORT
+-PVR2DERROR PVR2DBltClipped(PVR2DCONTEXTHANDLE hContext,
+-                                                 PVR2DBLTINFO *pBltInfo,
+-                                                 unsigned long ulNumClipRects,
+-                                                 PVR2DRECT *pClipRects);
+-
+-PVR2D_IMPORT
+-PVR2DERROR PVR2DQueryBlitsComplete(PVR2DCONTEXTHANDLE hContext,
+-                                                                 PVR2DMEMINFO *pMemInfo,
+-                                                                 unsigned int uiWaitForComplete);
+-
+-PVR2D_IMPORT
+-PVR2DERROR PVR2DSetPresentBltProperties(PVR2DCONTEXTHANDLE hContext,
+-                                                                              unsigned long ulPropertyMask,
+-                                                                              long lSrcStride,
+-                                                                              unsigned long ulDstWidth,
+-                                                                              unsigned long ulDstHeight,
+-                                                                              long lDstXPos,
+-                                                                              long lDstYPos,
+-                                                                              unsigned long ulNumClipRects,
+-                                                                              PVR2DRECT *pClipRects,
+-                                                                              unsigned long ulSwapInterval);
+-
+-PVR2D_IMPORT
+-PVR2DERROR PVR2DPresentBlt(PVR2DCONTEXTHANDLE hContext,
+-                                                 PVR2DMEMINFO *pMemInfo,
+-                                                 long lRenderID);
+-
+-PVR2D_IMPORT
+-PVR2DERROR PVR2DCreateFlipChain(PVR2DCONTEXTHANDLE hContext,
+-                                                              unsigned long ulFlags,
+-                                                              unsigned long ulNumBuffers,
+-                                                              unsigned long ulWidth,
+-                                                              unsigned long ulHeight,
+-                                                              PVR2DFORMAT eFormat,
+-                                                              long *plStride,
+-                                                              unsigned long *pulFlipChainID,
+-                                                              PVR2DFLIPCHAINHANDLE *phFlipChain);
+-
+-PVR2D_IMPORT
+-PVR2DERROR PVR2DDestroyFlipChain(PVR2DCONTEXTHANDLE hContext,
+-                                                               PVR2DFLIPCHAINHANDLE hFlipChain);
+-
+-PVR2D_IMPORT
+-PVR2DERROR PVR2DGetFlipChainBuffers(PVR2DCONTEXTHANDLE hContext,
+-                                                                      PVR2DFLIPCHAINHANDLE hFlipChain,
+-                                                                      unsigned long *pulNumBuffers,
+-                                                                      PVR2DMEMINFO *psMemInfo[]);
+-
+-PVR2D_IMPORT
+-PVR2DERROR PVR2DSetPresentFlipProperties(PVR2DCONTEXTHANDLE hContext,
+-                                                                               PVR2DFLIPCHAINHANDLE hFlipChain,
+-                                                                               unsigned long ulPropertyMask,
+-                                                                               long lDstXPos,
+-                                                                               long lDstYPos,
+-                                                                               unsigned long ulNumClipRects,
+-                                                                               PVR2DRECT *pClipRects,
+-                                                                               unsigned long ulSwapInterval);
+-
+-PVR2D_IMPORT
+-PVR2DERROR PVR2DPresentFlip(PVR2DCONTEXTHANDLE hContext,
+-                                                      PVR2DFLIPCHAINHANDLE hFlipChain,
+-                                                      PVR2DMEMINFO *psMemInfo,
+-                                                      long lRenderID);
+-
+-PVR2D_IMPORT
+-PVR2DERROR PVR2DGetAPIRev(long *lRevMajor, long *lRevMinor);
+-
+-PVR2D_IMPORT
+-PVR2DERROR PVR2DLoadUseCode (const PVR2DCONTEXTHANDLE hContext, const unsigned char   *pUseCode,
+-                                                                      const unsigned long UseCodeSize, PVR2D_HANDLE *pUseCodeHandle);
+-PVR2D_IMPORT
+-PVR2DERROR PVR2DFreeUseCode (const PVR2DCONTEXTHANDLE hContext, const PVR2D_HANDLE hUseCodeHandle);
+-
+-PVR2D_IMPORT
+-PVR2DERROR PVR2DBlt3D (const PVR2DCONTEXTHANDLE hContext, const PPVR2D_3DBLT pBlt3D);
+-
+-#ifdef __cplusplus
+-}
+-#endif 
+-
+-#endif /* _PVR2D_H_ */
+-
+-/******************************************************************************
+- End of file (pvr2d.h)
+-******************************************************************************/
+Index: qt-4.8.5/src/3rdparty/powervr/wsegl.h
+===================================================================
+--- qt-4.8.5.orig/src/3rdparty/powervr/wsegl.h 2013-07-08 11:24:33.010516867 -0500
++++ /dev/null  1970-01-01 00:00:00.000000000 +0000
+@@ -1,240 +0,0 @@
+-/******************************************************************************
+- Name         : wsegl.h
+- Copyright    :       Copyright (c) Imagination Technologies Limited.
+-                              This specification is protected by copyright laws and contains
+-                              material proprietary to Imagination Technologies Limited.
+-                              You may use and distribute this specification free of charge for implementing
+-                              the functionality therein, without altering or removing any trademark, copyright,
+-                              or other notice from the specification.
+- Platform     : ANSI
+-*****************************************************************************/
+-
+-
+-#if !defined(__WSEGL_H__)
+-#define __WSEGL_H__
+-
+-#ifdef __cplusplus
+-extern "C" {
+-#endif 
+-
+-/*
+-// WSEGL Platform-specific definitions
+-*/
+-#define WSEGL_EXPORT
+-#define WSEGL_IMPORT
+-
+-/*
+-// WSEGL API Version Number
+-*/
+-
+-#define WSEGL_VERSION 1
+-#define WSEGL_DEFAULT_DISPLAY 0
+-#define WSEGL_DEFAULT_NATIVE_ENGINE 0
+-
+-#define WSEGL_FALSE           0
+-#define WSEGL_TRUE            1
+-#define WSEGL_NULL            0
+-
+-#define       WSEGL_UNREFERENCED_PARAMETER(param) (param) = (param)
+-
+-/*
+-// WSEGL handles
+-*/
+-typedef void *WSEGLDisplayHandle;
+-typedef void *WSEGLDrawableHandle;
+-
+-/*
+-// Display capability type
+-*/
+-typedef enum WSEGLCapsType_TAG
+-{
+-      WSEGL_NO_CAPS = 0,
+-      WSEGL_CAP_MIN_SWAP_INTERVAL = 1, /* System default value = 1 */
+-      WSEGL_CAP_MAX_SWAP_INTERVAL = 2, /* System default value = 1 */
+-      WSEGL_CAP_WINDOWS_USE_HW_SYNC = 3, /* System default value = 0 (FALSE) */
+-      WSEGL_CAP_PIXMAPS_USE_HW_SYNC = 4, /* System default value = 0 (FALSE) */
+-
+-} WSEGLCapsType;
+-
+-/*
+-// Display capability
+-*/
+-typedef struct WSEGLCaps_TAG
+-{
+-      WSEGLCapsType eCapsType;
+-      unsigned long ui32CapsValue;
+-
+-} WSEGLCaps;
+-
+-/*
+-// Drawable type
+-*/
+-#define WSEGL_NO_DRAWABLE                     0x0
+-#define WSEGL_DRAWABLE_WINDOW         0x1
+-#define WSEGL_DRAWABLE_PIXMAP         0x2
+-
+-
+-/*
+-// Pixel format of display/drawable
+-*/
+-typedef enum WSEGLPixelFormat_TAG
+-{
+-      WSEGL_PIXELFORMAT_565 = 0,
+-      WSEGL_PIXELFORMAT_4444 = 1,
+-      WSEGL_PIXELFORMAT_8888 = 2,
+-      WSEGL_PIXELFORMAT_1555 = 3
+-
+-} WSEGLPixelFormat;
+-
+-/*
+-// Transparent of display/drawable
+-*/
+-typedef enum WSEGLTransparentType_TAG
+-{
+-      WSEGL_OPAQUE = 0,
+-      WSEGL_COLOR_KEY = 1,
+-
+-} WSEGLTransparentType;
+-
+-/*
+-// Display/drawable configuration
+-*/
+-typedef struct WSEGLConfig_TAG
+-{
+-      /*
+-      // Type of drawables this configuration applies to -
+-      // OR'd values of drawable types. 
+-      */
+-      unsigned long ui32DrawableType;
+-
+-      /* Pixel format */
+-      WSEGLPixelFormat ePixelFormat;
+-
+-      /* Native Renderable  - set to WSEGL_TRUE if native renderable */
+-      unsigned long ulNativeRenderable;
+-
+-      /* FrameBuffer Level Parameter */
+-      unsigned long ulFrameBufferLevel;
+-
+-      /* Native Visual ID */
+-      unsigned long ulNativeVisualID;
+-
+-      /* Native Visual */
+-      void *hNativeVisual;
+-
+-      /* Transparent Type */
+-      WSEGLTransparentType eTransparentType;
+-
+-      /* Transparent Color - only used if transparent type is COLOR_KEY */
+-      unsigned long ulTransparentColor; /* packed as 0x00RRGGBB */
+-
+-
+-} WSEGLConfig;
+-
+-/*
+-// WSEGL errors
+-*/
+-typedef enum WSEGLError_TAG
+-{
+-      WSEGL_SUCCESS = 0,
+-      WSEGL_CANNOT_INITIALISE = 1,
+-      WSEGL_BAD_NATIVE_DISPLAY = 2,
+-      WSEGL_BAD_NATIVE_WINDOW = 3,
+-      WSEGL_BAD_NATIVE_PIXMAP = 4,
+-      WSEGL_BAD_NATIVE_ENGINE = 5,
+-      WSEGL_BAD_DRAWABLE = 6,
+-      WSEGL_BAD_CONFIG = 7,
+-      WSEGL_OUT_OF_MEMORY = 8
+-
+-} WSEGLError; 
+-
+-/*
+-// Drawable orientation (in degrees anti-clockwise)
+-*/
+-typedef enum WSEGLRotationAngle_TAG
+-{
+-      WSEGL_ROTATE_0 = 0,
+-      WSEGL_ROTATE_90 = 1,
+-      WSEGL_ROTATE_180 = 2,
+-      WSEGL_ROTATE_270 = 3
+-
+-} WSEGLRotationAngle; 
+-
+-/*
+-// Drawable information required by OpenGL-ES driver
+-*/
+-typedef struct WSEGLDrawableParams_TAG
+-{
+-      /* Width in pixels of the drawable */
+-      unsigned long   ui32Width;
+-
+-      /* Height in pixels of the drawable */
+-      unsigned long   ui32Height;
+-
+-      /* Stride in pixels of the drawable */
+-      unsigned long   ui32Stride;
+-
+-      /* Pixel format of the drawable */
+-      WSEGLPixelFormat        ePixelFormat;
+-
+-      /* User space cpu virtual address of the drawable */
+-      void                    *pvLinearAddress;
+-
+-      /* HW address of the drawable */
+-      unsigned long   ui32HWAddress;
+-
+-      /* Private data for the drawable */
+-      void                    *hPrivateData;
+-
+-} WSEGLDrawableParams;
+-
+-
+-/*
+-// Table of function pointers that is returned by WSEGL_GetFunctionTablePointer()
+-//
+-// The first entry in the table is the version number of the wsegl.h header file that
+-// the module has been written against, and should therefore be set to WSEGL_VERSION
+-*/
+-typedef struct WSEGL_FunctionTable_TAG
+-{
+-      unsigned long ui32WSEGLVersion;
+-
+-      WSEGLError (*pfnWSEGL_IsDisplayValid)(NativeDisplayType);
+-
+-      WSEGLError (*pfnWSEGL_InitialiseDisplay)(NativeDisplayType, WSEGLDisplayHandle *, const WSEGLCaps **, WSEGLConfig **);
+-
+-      WSEGLError (*pfnWSEGL_CloseDisplay)(WSEGLDisplayHandle);
+-
+-      WSEGLError (*pfnWSEGL_CreateWindowDrawable)(WSEGLDisplayHandle, WSEGLConfig *, WSEGLDrawableHandle *, NativeWindowType, WSEGLRotationAngle *);
+-
+-      WSEGLError (*pfnWSEGL_CreatePixmapDrawable)(WSEGLDisplayHandle, WSEGLConfig *, WSEGLDrawableHandle *, NativePixmapType, WSEGLRotationAngle *);
+-
+-      WSEGLError (*pfnWSEGL_DeleteDrawable)(WSEGLDrawableHandle);
+-
+-      WSEGLError (*pfnWSEGL_SwapDrawable)(WSEGLDrawableHandle, unsigned long);
+-
+-      WSEGLError (*pfnWSEGL_SwapControlInterval)(WSEGLDrawableHandle, unsigned long);
+-
+-      WSEGLError (*pfnWSEGL_WaitNative)(WSEGLDrawableHandle, unsigned long);
+-
+-      WSEGLError (*pfnWSEGL_CopyFromDrawable)(WSEGLDrawableHandle, NativePixmapType);
+-
+-      WSEGLError (*pfnWSEGL_CopyFromPBuffer)(void *, unsigned long, unsigned long, unsigned long, WSEGLPixelFormat, NativePixmapType);
+-
+-      WSEGLError (*pfnWSEGL_GetDrawableParameters)(WSEGLDrawableHandle, WSEGLDrawableParams *, WSEGLDrawableParams *);
+-
+-
+-} WSEGL_FunctionTable;
+-
+-
+-WSEGL_IMPORT const WSEGL_FunctionTable *WSEGL_GetFunctionTablePointer(void);
+-
+-#ifdef __cplusplus
+-}
+-#endif 
+-
+-#endif /* __WSEGL_H__ */
+-
+-/******************************************************************************
+- End of file (wsegl.h)
+-******************************************************************************/
+Index: qt-4.8.5/src/plugins/gfxdrivers/powervr/QWSWSEGL/pvrqwswsegl.c
+===================================================================
+--- qt-4.8.5.orig/src/plugins/gfxdrivers/powervr/QWSWSEGL/pvrqwswsegl.c        2013-07-08 11:24:33.010516867 -0500
++++ qt-4.8.5/src/plugins/gfxdrivers/powervr/QWSWSEGL/pvrqwswsegl.c     2013-07-08 11:28:26.142521123 -0500
+@@ -39,7 +39,7 @@
+ **
+ ****************************************************************************/
+-#include <GLES/eglplatform.h>
++#include <EGL/eglplatform.h>
+ #include <wsegl.h>
+ #include <pvr2d.h>
+ #include <string.h>
+@@ -379,6 +379,20 @@
+     return WSEGL_SUCCESS;
+ }
++/* Function stub for ConnectDrawable() */
++static WSEGLError wseglConnectDrawable(WSEGLDrawableHandle hDrawable)
++{
++    WSEGL_UNREFERENCED_PARAMETER(hDrawable);
++    return WSEGL_SUCCESS;
++}
++
++/* Function stub for DisconnectDrawable() */
++static WSEGLError wseglDisconnectDrawable(WSEGLDrawableHandle hDrawable)
++{
++    WSEGL_UNREFERENCED_PARAMETER(hDrawable);
++    return WSEGL_SUCCESS;
++}
++
+ static WSEGL_FunctionTable const wseglFunctions = {
+     WSEGL_VERSION,
+     wseglIsDisplayValid,
+@@ -392,7 +406,9 @@
+     wseglWaitNative,
+     wseglCopyFromDrawable,
+     wseglCopyFromPBuffer,
+-    wseglGetDrawableParameters
++    wseglGetDrawableParameters,
++    wseglConnectDrawable,
++    wseglDisconnectDrawable
+ };
+ /* Return the table of WSEGL functions to the EGL implementation */
diff --git a/package/qt/0003-fix-const-atomics.patch b/package/qt/0003-fix-const-atomics.patch
new file mode 100644 (file)
index 0000000..6485356
--- /dev/null
@@ -0,0 +1,50 @@
+From d4d07dac01796b2aa0fb501c14865cab7e42b3a9 Mon Sep 17 00:00:00 2001
+From: Mischa Jonker <mischa.jonker@synopsys.com>
+Date: Sun, 4 Nov 2012 11:42:04 +0100
+Subject: [PATCH] Fix const-related build error in generic atomic ops
+
+It's still not entirely const-correct though. In all other architectures
+this is obfuscated through the use of inline asm (which the compiler
+doesn't check). This patch obfuscates through const_cast
+---
+ src/corelib/arch/generic/qatomic_generic_unix.cpp |    8 ++++----
+ src/corelib/arch/qatomic_generic.h                |    2 +-
+ 2 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/src/corelib/arch/generic/qatomic_generic_unix.cpp b/src/corelib/arch/generic/qatomic_generic_unix.cpp
+index 1c6cbf0..6fce81d 100644
+--- a/src/corelib/arch/generic/qatomic_generic_unix.cpp
++++ b/src/corelib/arch/generic/qatomic_generic_unix.cpp
+@@ -85,13 +85,13 @@ int QBasicAtomicInt_fetchAndAddOrdered(volatile int *_q_value, int valueToAdd)
+ Q_CORE_EXPORT
+ bool QBasicAtomicPointer_testAndSetOrdered(void * volatile *_q_value,
+-                                           void *expectedValue,
+-                                           void *newValue)
++                                           const void *expectedValue,
++                                           const void *newValue)
+ {
+     bool returnValue = false;
+     pthread_mutex_lock(&qAtomicMutex);
+     if (*_q_value == expectedValue) {
+-        *_q_value = newValue;
++        *_q_value = const_cast<void*>(newValue);
+         returnValue = true;
+     }
+     pthread_mutex_unlock(&qAtomicMutex);
+diff --git a/src/corelib/arch/qatomic_generic.h b/src/corelib/arch/qatomic_generic.h
+index 621a767..4c14679 100644
+--- a/src/corelib/arch/qatomic_generic.h
++++ b/src/corelib/arch/qatomic_generic.h
+@@ -105,7 +105,7 @@ Q_CORE_EXPORT bool QBasicAtomicInt_testAndSetOrdered(volatile int *, int, int);
+ Q_CORE_EXPORT int QBasicAtomicInt_fetchAndStoreOrdered(volatile int *, int);
+ Q_CORE_EXPORT int QBasicAtomicInt_fetchAndAddOrdered(volatile int *, int);
+-Q_CORE_EXPORT bool QBasicAtomicPointer_testAndSetOrdered(void * volatile *, void *, void *);
++Q_CORE_EXPORT bool QBasicAtomicPointer_testAndSetOrdered(void * volatile *, const void *, const void *);
+ Q_CORE_EXPORT void *QBasicAtomicPointer_fetchAndStoreOrdered(void * volatile *, void *);
+ Q_CORE_EXPORT void *QBasicAtomicPointer_fetchAndAddOrdered(void * volatile *, qptrdiff);
+-- 
+1.7.0.4
+
diff --git a/package/qt/0004-pthread_getattr_np.patch b/package/qt/0004-pthread_getattr_np.patch
new file mode 100644 (file)
index 0000000..28f0c84
--- /dev/null
@@ -0,0 +1,107 @@
+Add pthred_getattr_np / phread_attr_getstrack alternatives for uClibc
+
+Based on https://dev.openwrt.org/log/packages/Xorg/lib/qt4/patches/100-fix-webkit-for-uclibc.patch?rev=20371
+
+Signed-off-by: Johan Sagaert <sagaert.johan@skynet.be>
+---
+ src/3rdparty/javascriptcore/JavaScriptCore/runtime/Collector.cpp |   61 ++++++++++
+ 1 file changed, 61 insertions(+)
+
+Index: qt-everywhere-opensource-src-4.8.1/src/3rdparty/javascriptcore/JavaScriptCore/runtime/Collector.cpp
+===================================================================
+--- qt-everywhere-opensource-src-4.8.1.orig/src/3rdparty/javascriptcore/JavaScriptCore/runtime/Collector.cpp
++++ qt-everywhere-opensource-src-4.8.1/src/3rdparty/javascriptcore/JavaScriptCore/runtime/Collector.cpp
+@@ -70,6 +70,23 @@
+ #endif
+ #include <unistd.h>
++#if defined(QT_LINUXBASE)
++#include <dlfcn.h>
++#endif
++
++#if defined(__UCLIBC__)
++// versions of uClibc 0.9.32 and below with linuxthreads.old do not have
++// pthread_getattr_np or pthread_attr_getstack.
++#if __UCLIBC_MAJOR__ == 0 && \
++    (__UCLIBC_MINOR__ < 9 || \
++    (__UCLIBC_MINOR__ == 9 && __UCLIBC_SUBLEVEL__ <= 32)) && \
++    defined(__LINUXTHREADS_OLD__)
++#define UCLIBC_USE_PROC_SELF_MAPS 1
++#include <stdio_ext.h>
++extern int *__libc_stack_end;
++#endif
++#endif
++
+ #if OS(SOLARIS)
+ #include <thread.h>
+ #else
+@@ -648,6 +665,37 @@
+     get_thread_info(find_thread(NULL), &threadInfo);
+     return threadInfo.stack_end;
+ #elif OS(UNIX)
++#ifdef UCLIBC_USE_PROC_SELF_MAPS
++    // Read /proc/self/maps and locate the line whose address
++    // range contains __libc_stack_end.
++    FILE *file = fopen("/proc/self/maps", "r");
++    if (!file)
++        return 0;
++    __fsetlocking(file, FSETLOCKING_BYCALLER);
++    char *line = NULL;
++    size_t lineLen = 0;
++    while (!feof_unlocked(file)) {
++        if (getdelim(&line, &lineLen, '\n', file) <= 0)
++            break;
++
++        long from;
++        long to;
++        if (sscanf (line, "%lx-%lx", &from, &to) != 2)
++            continue;
++        if (from <= (long)__libc_stack_end && (long)__libc_stack_end < to) {
++            fclose(file);
++            free(line);
++#ifdef _STACK_GROWS_UP
++            return (void *)from;
++#else
++            return (void *)to;
++#endif
++        }
++    }
++    fclose(file);
++    free(line);
++    return 0;
++#else
+     AtomicallyInitializedStatic(Mutex&, mutex = *new Mutex);
+     MutexLocker locker(mutex);
+     static void* stackBase = 0;
+@@ -655,11 +703,23 @@
+     static pthread_t stackThread;
+     pthread_t thread = pthread_self();
+     if (stackBase == 0 || thread != stackThread) {
++
++#if defined(QT_LINUXBASE)
++        // LinuxBase is missing pthread_getattr_np - resolve it once at runtime instead
++        // see http://bugs.linuxbase.org/show_bug.cgi?id=2364
++        typedef int (*GetAttrPtr)(pthread_t, pthread_attr_t *);
++        static int (*pthread_getattr_np_ptr)(pthread_t, pthread_attr_t *) = 0;
++        if (!pthread_getattr_np_ptr)
++            *(void **)&pthread_getattr_np_ptr = dlsym(RTLD_DEFAULT, "pthread_getattr_np");
++#endif
+         pthread_attr_t sattr;
+         pthread_attr_init(&sattr);
+ #if HAVE(PTHREAD_NP_H) || OS(NETBSD)
+         // e.g. on FreeBSD 5.4, neundorf@kde.org
+         pthread_attr_get_np(thread, &sattr);
++#elif defined(QT_LINUXBASE)
++        if (pthread_getattr_np_ptr)
++            pthread_getattr_np_ptr(thread, &sattr);
+ #else
+         // FIXME: this function is non-portable; other POSIX systems may have different np alternatives
+         pthread_getattr_np(thread, &sattr);
+@@ -671,6 +731,7 @@
+         stackThread = thread;
+     }
+     return static_cast<char*>(stackBase) + stackSize;
++#endif
+ #else
+ #error Need a way to get the stack base on this platform
+ #endif
diff --git a/package/qt/0005-script-qtdbus-no-gui.patch b/package/qt/0005-script-qtdbus-no-gui.patch
new file mode 100644 (file)
index 0000000..e29e9e4
--- /dev/null
@@ -0,0 +1,22 @@
+[PATCH] fix build with script+dbus enabled, but no gui
+
+The script/qtdbus plugin doesn't need gui support, so don't try to
+link it against libQtGui.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ src/plugins/script/qtdbus/qtdbus.pro |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: qt-4.7.3/src/plugins/script/qtdbus/qtdbus.pro
+===================================================================
+--- qt-4.7.3.orig/src/plugins/script/qtdbus/qtdbus.pro
++++ qt-4.7.3/src/plugins/script/qtdbus/qtdbus.pro
+@@ -1,6 +1,6 @@
+ TARGET  = qtscriptdbus
+ include(../../qpluginbase.pri)
+-QT = core gui script
++QT = core script
+ CONFIG += qdbus
+ SOURCES += main.cpp
diff --git a/package/qt/0006-uClibc-lfs-fix.patch b/package/qt/0006-uClibc-lfs-fix.patch
new file mode 100644 (file)
index 0000000..ea04a60
--- /dev/null
@@ -0,0 +1,41 @@
+From 6f88b27de256266947a7f6a3e70e18510754aab2 Mon Sep 17 00:00:00 2001
+From: Peter Korsgaard <jacmet@sunsite.dk>
+Date: Sat, 14 Apr 2012 20:36:07 +0200
+Subject: [PATCH] mkspecs/common/posix: fix !largefile builds on uClibc
+
+uClibc doesn't even define O_LARGEFILE when not configured with large file
+support, so ensure this define is only used when Qt is built with
+-largefile, otherwise the build fails with:
+
+io/qtemporaryfile.cpp: In function 'bool createFileFromTemplate(
+       NativeFileHandle&, QFileSystemEntry::NativePath&, size_t, size_t,
+       QSystemError&)':
+io/qtemporaryfile.cpp:197:57: error: 'O_LARGEFILE' was not declared in
+       this scope
+
+Reported-Upstream: https://bugreports.qt-project.org/browse/QTBUG-25321
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ mkspecs/common/posix/qplatformdefs.h |    5 +++++
+ 1 files changed, 5 insertions(+), 0 deletions(-)
+
+diff --git a/mkspecs/common/posix/qplatformdefs.h b/mkspecs/common/posix/qplatformdefs.h
+index daecc00..8a796cf 100644
+--- a/mkspecs/common/posix/qplatformdefs.h
++++ b/mkspecs/common/posix/qplatformdefs.h
+@@ -123,7 +123,12 @@
+ #define QT_READ                 ::read
+ #define QT_WRITE                ::write
++#ifdef QT_LARGEFILE_SUPPORT
+ #define QT_OPEN_LARGEFILE       O_LARGEFILE
++#else
++#define QT_OPEN_LARGEFILE       0
++#endif
++
+ #define QT_OPEN_RDONLY          O_RDONLY
+ #define QT_OPEN_WRONLY          O_WRONLY
+ #define QT_OPEN_RDWR            O_RDWR
+-- 
+1.7.8.3
+
diff --git a/package/qt/qt-configure.patch b/package/qt/qt-configure.patch
deleted file mode 100644 (file)
index 07c9630..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-Fix -hostprefix behaviour
-
-When -hostprefix ./configure option is used, Qt installs all its
-headers, libraries and binaries inside the given host prefix, instead
-of the prefix. This is used by Buildroot to make sure that all Qt
-libraries and headers are installed in $(STAGING_DIR).
-
-Qt ./configure script also allows to tune the installation location of
-various elements, for examples the plugins through the -plugindir
-option. Unfortunately, this option only impact the installation path
-on the target, but not on the host when -hostprefix is used.
-
-This patch modifies Qt ./configure script so that HOST_*PATH_STR
-variables are composed of the host prefix concatenated with the path
-of installation on the target. This way, the plugin installation local
-in the $(STAGING_DIR) and on the target remains the same.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
----
- configure |   18 +++++++++---------
- 1 file changed, 9 insertions(+), 9 deletions(-)
-
-Index: qt-everywhere-opensource-src-4.8.1/configure
-===================================================================
---- qt-everywhere-opensource-src-4.8.1.orig/configure
-+++ qt-everywhere-opensource-src-4.8.1/configure
-@@ -4661,15 +4661,15 @@
- if [ ! -z "$QT_HOST_PREFIX" ]; then
--    HOSTPREFIX_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_prfxpath=$QT_HOST_PREFIX"`
--    HOSTDOCUMENTATION_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_docspath=$QT_HOST_PREFIX/doc"`
--    HOSTHEADERS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_hdrspath=$QT_HOST_PREFIX/include"`
--    HOSTLIBRARIES_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_libspath=$QT_HOST_PREFIX/lib"`
--    HOSTBINARIES_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_binspath=$QT_HOST_PREFIX/bin"`
--    HOSTPLUGINS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_plugpath=$QT_HOST_PREFIX/plugins"`
--    HOSTIMPORTS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_impspath=$QT_HOST_PREFIX/IMPORTS"`
--    HOSTDATA_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_datapath=$QT_HOST_PREFIX"`
--    HOSTTRANSLATIONS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_trnspath=$QT_HOST_PREFIX/translations"`
-+    HOSTPREFIX_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_prfxpath=$QT_HOST_PREFIX/$QT_INSTALL_PREFIX"`
-+    HOSTDOCUMENTATION_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_docspath=$QT_HOST_PREFIX/$QT_INSTALL_DOCS"`
-+    HOSTHEADERS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_hdrspath=$QT_HOST_PREFIX/$QT_INSTALL_HEADERS"`
-+    HOSTLIBRARIES_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_libspath=$QT_HOST_PREFIX/$QT_INSTALL_LIBS"`
-+    HOSTBINARIES_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_binspath=$QT_HOST_PREFIX/$QT_INSTALL_BINS"`
-+    HOSTPLUGINS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_plugpath=$QT_HOST_PREFIX/$QT_INSTALL_PLUGINS"`
-+    HOSTIMPORTS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_impspath=$QT_HOST_PREFIX/$QT_INSTALL_IMPORTS"`
-+    HOSTDATA_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_datapath=$QT_HOST_PREFIX/$QT_INSTALL_DATA"`
-+    HOSTTRANSLATIONS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_trnspath=$QT_HOST_PREFIX/$QT_INSTALL_TRANSLATIONS"`
-     HOSTSETTINGS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_stngpath=$QT_INSTALL_SETTINGS"`
-     HOSTEXAMPLES_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_xmplpath=$QT_INSTALL_EXAMPLES"`
-     HOSTDEMOS_PATH_STR=`"$relpath/config.tests/unix/padstring" 268 "qt_demopath=$QT_INSTALL_DEMOS"`
diff --git a/package/qt/qt-eglwsegl-use-system.patch b/package/qt/qt-eglwsegl-use-system.patch
deleted file mode 100644 (file)
index cb30381..0000000
+++ /dev/null
@@ -1,802 +0,0 @@
-Patch to remove obsolete powervr headers and instead use the headers provided
-on the system.
-
-Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
----
-Index: qt-4.8.5/src/3rdparty/powervr/pvr2d.h
-===================================================================
---- qt-4.8.5.orig/src/3rdparty/powervr/pvr2d.h 2013-07-08 11:24:33.010516867 -0500
-+++ /dev/null  1970-01-01 00:00:00.000000000 +0000
-@@ -1,502 +0,0 @@
--/*!****************************************************************************
--@File          pvr2d.h
--@Title         PVR2D external header file
--@Author        Imagination Technologies
--@Copyright     Copyright (c) by Imagination Technologies Limited.
--                              This specification is protected by copyright laws and contains
--                              material proprietary to Imagination Technologies Limited.
--                              You may use and distribute this specification free of charge for implementing
--                              the functionality therein, without altering or removing any trademark, copyright,
--                              or other notice from the specification.
--@Platform      Generic
--@Description   PVR2D definitions for PVR2D clients
--******************************************************************************/
--
--
--/******************************************************************************
--Modifications :-
--$Log: pvr2d.h $
--******************************************************************************/
--
--#ifndef _PVR2D_H_
--#define _PVR2D_H_
--
--#ifdef __cplusplus
--extern "C" {
--#endif
--
--/* PVR2D Platform-specific definitions */
--#define PVR2D_EXPORT
--#define PVR2D_IMPORT
--
--
--#define PVR2D_REV_MAJOR               2
--#define PVR2D_REV_MINOR               1
--
--typedef enum
--{
--      PVR2D_FALSE = 0,
--      PVR2D_TRUE
--} PVR2D_BOOL;
--
--
--/* error codes */
--typedef enum
--{
--      PVR2D_OK = 0,
--      PVR2DERROR_INVALID_PARAMETER = -1,
--      PVR2DERROR_DEVICE_UNAVAILABLE = -2,
--      PVR2DERROR_INVALID_CONTEXT = -3,
--      PVR2DERROR_MEMORY_UNAVAILABLE = -4,
--      PVR2DERROR_DEVICE_NOT_PRESENT = -5,
--      PVR2DERROR_IOCTL_ERROR = -6,
--      PVR2DERROR_GENERIC_ERROR = -7,
--      PVR2DERROR_BLT_NOTCOMPLETE = -8,
--      PVR2DERROR_HW_FEATURE_NOT_SUPPORTED = -9,
--      PVR2DERROR_NOT_YET_IMPLEMENTED = -10,
--      PVR2DERROR_MAPPING_FAILED = -11
--}PVR2DERROR;
--
--
--/* pixel formats */
--typedef enum
--{
--      PVR2D_1BPP = 0,
--      PVR2D_RGB565,
--      PVR2D_ARGB4444,
--      PVR2D_RGB888,
--      PVR2D_ARGB8888,
--      PVR2D_ARGB1555,
--      PVR2D_ALPHA8,
--      PVR2D_ALPHA4,
--      PVR2D_PAL2,
--      PVR2D_PAL4,
--      PVR2D_PAL8,
--      PVR2D_VGAEMU
--
--}PVR2DFORMAT;
--
--
--/* wrap surface type */
--typedef enum
--{
--      PVR2D_WRAPFLAG_NONCONTIGUOUS = 0,
--      PVR2D_WRAPFLAG_CONTIGUOUS = 1,
--
--}PVR2DWRAPFLAGS;
--
--/* flags for control information of additional blits */
--typedef enum
--{
--      PVR2D_BLIT_DISABLE_ALL                                  = 0x0000,       /* disable all additional controls */
--      PVR2D_BLIT_CK_ENABLE                                    = 0x0001,       /* enable colour key */
--      PVR2D_BLIT_GLOBAL_ALPHA_ENABLE                  = 0x0002,       /* enable standard global alpha */
--      PVR2D_BLIT_PERPIXEL_ALPHABLEND_ENABLE   = 0x0004,       /* enable per-pixel alpha bleding */
--      PVR2D_BLIT_PAT_SURFACE_ENABLE                   = 0x0008,       /* enable pattern surf (disable fill) */
--      PVR2D_BLIT_FULLY_SPECIFIED_ALPHA_ENABLE = 0x0010,       /* enable fully specified alpha */
--      PVR2D_BLIT_ROT_90                                               = 0x0020,       /* apply 90 degree rotation to the blt */
--      PVR2D_BLIT_ROT_180                                              = 0x0040,       /* apply 180 degree rotation to the blt */
--      PVR2D_BLIT_ROT_270                                              = 0x0080,       /* apply 270 degree rotation to the blt */
--      PVR2D_BLIT_COPYORDER_TL2BR                              = 0x0100,       /* copy order overrides */
--      PVR2D_BLIT_COPYORDER_BR2TL                              = 0x0200,
--      PVR2D_BLIT_COPYORDER_TR2BL                              = 0x0400,
--      PVR2D_BLIT_COPYORDER_BL2TR                              = 0x0800,
--      PVR2D_BLIT_COLKEY_SOURCE                                = 0x1000,       /* Key colour is on the source surface */
--      PVR2D_BLIT_COLKEY_DEST                                  = 0x2000        /* Key colour is on the destination surface */
--
--} PVR2DBLITFLAGS;
--
--/* standard alpha-blending functions, AlphaBlendingFunc field of PVR2DBLTINFO */
--typedef enum
--{
--      PVR2D_ALPHA_OP_SRC_DSTINV = 1,  /* source alpha : Cdst = Csrc*Asrc + Cdst*(1-Asrc) */
--      PVR2D_ALPHA_OP_SRCP_DSTINV = 2  /* premultiplied source alpha : Cdst = Csrc + Cdst*(1-Asrc) */
--} PVR2D_ALPHABLENDFUNC;
--
--/* blend ops for fully specified alpha */
--typedef enum
--{
--      PVR2D_BLEND_OP_ZERO = 0,
--      PVR2D_BLEND_OP_ONE = 1,
--      PVR2D_BLEND_OP_SRC = 2,
--      PVR2D_BLEND_OP_DST = 3,
--      PVR2D_BLEND_OP_GLOBAL = 4,
--      PVR2D_BLEND_OP_SRC_PLUS_GLOBAL = 5,
--      PVR2D_BLEND_OP_DST_PLUS_GLOBAL = 6
--}PVR2D_BLEND_OP;
--
--
--typedef void* PVR2D_HANDLE;
--
--
--/* Fully specified alpha blend :      pAlpha field of PVR2DBLTINFO structure                                  */
--/* a fully specified Alpha Blend operation is defined as                                                                      */
--/* DST (ALPHA) = (ALPHA_1 * SRC (ALPHA)) + (ALPHA_3 * DST (ALPHA))                                                    */
--/* DST (RGB)   = (ALPHA_2 * SRC (RGB)) + (ALPHA_4 * DST (RGB))                                                                */
--/* if the pre-multiplication stage is enabled then the equations become the following:                */
--/* PRE_MUL     = ((SRC(A)) * (Global Alpha Value))                                                                                    */
--/* DST (ALPHA) = (ALPHA_1 * SRC (ALPHA)) + (PRE_MUL * DST (ALPHA))                                                    */
--/* DST (RGB)   = (ALPHA_2 * SRC (RGB)) + (PRE_MUL * DST (RGB))                                                                */
--/* if the transparent source alpha stage is enabled then a source alpha of zero forces the    */
--/* source to be transparent for that pixel regardless of the blend equation being used.               */
--typedef struct _PVR2D_ALPHABLT
--{
--      PVR2D_BLEND_OP  eAlpha1;
--      PVR2D_BOOL              bAlpha1Invert;
--      PVR2D_BLEND_OP  eAlpha2;
--      PVR2D_BOOL              bAlpha2Invert;
--      PVR2D_BLEND_OP  eAlpha3;
--      PVR2D_BOOL              bAlpha3Invert;
--      PVR2D_BLEND_OP  eAlpha4;
--      PVR2D_BOOL              bAlpha4Invert;
--      PVR2D_BOOL              bPremulAlpha;                   /* enable pre-multiplication stage */
--      PVR2D_BOOL              bTransAlpha;                    /* enable transparent source alpha stage */
--      PVR2D_BOOL              bUpdateAlphaLookup;             /* enable and update the 1555-Lookup alpha table */
--      unsigned char   uAlphaLookup0;                  /* 8 bit alpha when A=0 in a 1555-Lookup surface */
--      unsigned char   uAlphaLookup1;                  /* 8 bit alpha when A=1 in a 1555-Lookup surface */
--      unsigned char   uGlobalRGB;                             /* Global Alpha Value for RGB, 0=transparent 255=opaque */
--      unsigned char   uGlobalA;                               /* Global Alpha Value for Alpha */
--
--} PVR2D_ALPHABLT, *PPVR2D_ALPHABLT;
--
--
--/* surface memory info structure */
--typedef struct _PVR2DMEMINFO
--{
--      void                            *pBase;
--      unsigned long           ui32MemSize;
--      unsigned long           ui32DevAddr;
--      unsigned long           ulFlags;
--      void                            *hPrivateData;
--      void                            *hPrivateMapData;
--
--}PVR2DMEMINFO, *PPVR2DMEMINFO;
--
--
--#define PVR2D_MAX_DEVICE_NAME 20
--
--typedef struct _PVR2DDEVICEINFO
--{
--      unsigned long   ulDevID;
--      char                    szDeviceName[PVR2D_MAX_DEVICE_NAME];
--}PVR2DDEVICEINFO;
--
--
--typedef struct _PVR2DISPLAYINFO
--{
--      unsigned long   ulMaxFlipChains;
--      unsigned long   ulMaxBuffersInChain;
--      PVR2DFORMAT             eFormat;
--      unsigned long   ulWidth;
--      unsigned long   ulHeight;
--      long                    lStride;
--      unsigned long   ulMinFlipInterval;
--      unsigned long   ulMaxFlipInterval;
--
--}PVR2DDISPLAYINFO;
--
--
--typedef struct _PVR2DBLTINFO
--{
--      unsigned long   CopyCode;                       /* rop code  */
--      unsigned long   Colour;                         /* fill colour */
--      unsigned long   ColourKey;                      /* colour key */
--      unsigned char   GlobalAlphaValue;       /* global alpha blending */
--      unsigned char   AlphaBlendingFunc;      /* per-pixel alpha-blending function */
--
--      PVR2DBLITFLAGS  BlitFlags;                      /* additional blit control information */
--
--      PVR2DMEMINFO    *pDstMemInfo;           /* destination memory */
--      unsigned long   DstOffset;                      /* byte offset from start of allocation to destination surface pixel 0,0 */
--      long                    DstStride;                      /* signed stride, the number of bytes from pixel 0,0 to 0,1 */
--      long                    DstX, DstY;                     /* pixel offset from start of dest surface to start of blt rectangle */
--      long                    DSizeX,DSizeY;          /* blt size */
--      PVR2DFORMAT             DstFormat;                      /* dest format */
--      unsigned long   DstSurfWidth;           /* size of dest surface in pixels */
--      unsigned long   DstSurfHeight;          /* size of dest surface in pixels */
--
--      PVR2DMEMINFO    *pSrcMemInfo;           /* source mem, (source fields are also used for patterns) */
--      unsigned long   SrcOffset;                      /* byte offset from start of allocation to src/pat surface pixel 0,0 */
--      long                    SrcStride;                      /* signed stride, the number of bytes from pixel 0,0 to 0,1 */
--      long                    SrcX, SrcY;                     /* pixel offset from start of surface to start of source rectangle */
--                                                                              /* for patterns this is the start offset within the pattern */
--      long                    SizeX,SizeY;            /* source rectangle size or pattern size in pixels */
--      PVR2DFORMAT             SrcFormat;                      /* source/pattern format */
--      PVR2DMEMINFO    *pPalMemInfo;           /* source/pattern palette memory containing argb8888 colour table */
--      unsigned long   PalOffset;                      /* byte offset from start of allocation to start of palette */
--      unsigned long   SrcSurfWidth;           /* size of source surface in pixels */
--      unsigned long   SrcSurfHeight;          /* size of source surface in pixels */
--
--      PVR2DMEMINFO    *pMaskMemInfo;          /* mask memory, 1bpp format implied */
--      unsigned long   MaskOffset;                     /* byte offset from start of allocation to mask surface pixel 0,0 */
--      long                    MaskStride;                     /* signed stride, the number of bytes from pixel 0,0 to 0,1 */
--      long                    MaskX, MaskY;           /* mask rect top left (mask size = blt size) */
--      unsigned long   MaskSurfWidth;          /* size of mask surface in pixels */
--      unsigned long   MaskSurfHeight;         /* size of mask surface in pixels */
--      
--      PPVR2D_ALPHABLT pAlpha;                         /* fully specified alpha blend */
--
--}PVR2DBLTINFO, *PPVR2DBLTINFO;
--
--typedef struct _PVR2DRECT
--{
--      long left, top;
--      long right, bottom;
--} PVR2DRECT;
--
--typedef struct
--{
--      PVR2DMEMINFO    *pSurfMemInfo;          /* surface memory */
--      unsigned long   SurfOffset;                     /* byte offset from start of allocation to destination surface pixel 0,0 */
--      long                    Stride;                         /* signed stride */
--      PVR2DFORMAT             Format;
--      unsigned long   SurfWidth;                      /* surface size in pixels */
--      unsigned long   SurfHeight;
--
--} PVR2D_SURFACE, *PPVR2D_SURFACE;
--
--typedef struct
--{
--      unsigned long   *pUseCode;                                      /* USSE code */
--      unsigned long   UseCodeSize;                            /* usse code size in bytes */
--
--} PVR2D_USECODE, *PPVR2D_USECODE;
--
--typedef struct
--{
--      PVR2D_SURFACE                   sDst;                           /* destination surface */
--      PVR2D_SURFACE                   sSrc;                           /* source surface */
--      PVR2DRECT                               rcDest;                         /* destination rectangle */
--      PVR2DRECT                               rcSource;                       /* source rectangle */
--      PVR2D_HANDLE                    hUseCode;                       /* custom USE code (NULL implies source copy) */
--      unsigned long                   UseParams[2];           /* per-blt params for use code */
--
--} PVR2D_3DBLT, *PPVR2D_3DBLT;
--
--
--#define MAKE_COPY_BLIT(src,soff,dest,doff,sx,sy,dx,dy,sz)
--
--typedef void* PVR2DCONTEXTHANDLE;
--typedef void* PVR2DFLIPCHAINHANDLE;
--
--
--// CopyCode field of PVR2DBLTINFO structure:
--// the CopyCode field of the PVR2DBLTINFO structure should contain a rop3 or rop4 code.
--// a rop3 is an 8 bit code that describes a blt with three inputs : source dest and pattern
--// rop4 is a 16 bit code that describes a blt with four inputs : source dest pattern and mask
--// common rop3 codes are defined below
--// a colour fill blt is processed in the pattern channel as a constant colour with a rop code of 0xF0
--// PVR2D_BLIT_PAT_SURFACE_ENABLE defines whether the pattern channel is a surface or a fill colour.
--// a rop4 is defined by two rop3 codes, and the 1 bit-per-pixel mask surface defines which is used.
--// a common rop4 is 0xAAF0 which is the mask copy blt used for text glyphs.
--// CopyCode is taken to be a rop4 when pMaskMemInfo is non zero, otherwise it is assumed to be a rop3
--// use the PVR2DMASKROP4 macro below to construct a rop4 from two rop3's
--// rop3a is the rop used when mask pixel = 1, and rop3b when mask = 0
--#define PVR2DROP4(rop3b, rop3a)                       ((rop3b<<8)|rop3a)
--
--/* common rop codes */
--#define PVR2DROPclear                         0x00       /* 0 (whiteness) */
--#define PVR2DROPset                                   0xFF       /* 1 (blackness) */
--#define PVR2DROPnoop                          0xAA       /* dst (used for masked blts) */
--
--/* source and  dest rop codes */
--#define PVR2DROPand                                   0x88       /* src AND dst */
--#define PVR2DROPandReverse                    0x44       /* src AND NOT dst */
--#define PVR2DROPcopy                          0xCC       /* src (used for source copy and alpha blts) */
--#define PVR2DROPandInverted                   0x22       /* NOT src AND dst */
--#define PVR2DROPxor                                   0x66       /* src XOR dst */
--#define PVR2DROPor                                    0xEE       /* src OR dst */
--#define PVR2DROPnor                                   0x11       /* NOT src AND NOT dst */
--#define PVR2DROPequiv                         0x99       /* NOT src XOR dst */
--#define PVR2DROPinvert                                0x55       /* NOT dst */
--#define PVR2DROPorReverse                     0xDD       /* src OR NOT dst */
--#define PVR2DROPcopyInverted          0x33       /* NOT src */
--#define PVR2DROPorInverted                    0xBB       /* NOT src OR dst */
--#define PVR2DROPnand                          0x77       /* NOT src OR NOT dst */
--
--/* pattern rop codes */
--#define PVR2DPATROPand                                0xA0       /* pat AND dst */
--#define PVR2DPATROPandReverse         0x50       /* pat AND NOT dst */
--#define PVR2DPATROPcopy                               0xF0       /* pat (used for solid color fills and pattern blts) */
--#define PVR2DPATROPandInverted                0x0A       /* NOT pat AND dst */
--#define PVR2DPATROPxor                                0x5A       /* pat XOR dst */
--#define PVR2DPATROPor                         0xFA       /* pat OR dst */
--#define PVR2DPATROPnor                                0x05       /* NOT pat AND NOT dst */
--#define PVR2DPATROPequiv                      0xA5       /* NOT pat XOR dst */
--#define PVR2DPATROPinvert                     0x55       /* NOT dst */
--#define PVR2DPATROPorReverse          0xF5       /* pat OR NOT dst */
--#define PVR2DPATROPcopyInverted               0x0F       /* NOT pat */
--#define PVR2DPATROPorInverted         0xAF       /* NOT pat OR dst */
--#define PVR2DPATROPnand                               0x5F       /* NOT pat OR NOT dst */
--
--/* common rop4 codes */
--#define PVR2DROP4MaskedCopy              PVR2DROP4(PVR2DROPnoop,PVR2DROPcopy)         /* masked source copy blt (used for rounded window corners etc) */
--#define PVR2DROP4MaskedFill              PVR2DROP4(PVR2DROPnoop,PVR2DPATROPcopy)      /* masked colour fill blt (used for text) */
--
--/* Legacy support */
--#define PVR2DROP3_PATMASK                     PVR2DPATROPcopy
--#define PVR2DROP3_SRCMASK                     PVR2DROPcopy
--
--/* pixmap memory alignment */
--#define PVR2D_ALIGNMENT_4                     4                       /* DWORD alignment */
--#define PVR2D_ALIGNMENT_ANY                   0                       /* no alignment    */
--#define PVR2D_ALIGNMENT_PALETTE               16                      /* 16 byte alignment is required for palettes */
--
--/* Heap number for PVR2DGetFrameBuffer */
--#define PVR2D_FB_PRIMARY_SURFACE 0
--
--#define PVR2D_PRESENT_PROPERTY_SRCSTRIDE      (1 << 0)
--#define PVR2D_PRESENT_PROPERTY_DSTSIZE                (1 << 1)
--#define PVR2D_PRESENT_PROPERTY_DSTPOS         (1 << 2)
--#define PVR2D_PRESENT_PROPERTY_CLIPRECTS      (1 << 3)
--#define PVR2D_PRESENT_PROPERTY_INTERVAL               (1 << 4)
--
--
--#define PVR2D_CREATE_FLIPCHAIN_SHARED         (1 << 0)
--#define PVR2D_CREATE_FLIPCHAIN_QUERY          (1 << 1)
--
--/* Functions that the library exports */
--
--PVR2D_IMPORT
--int PVR2DEnumerateDevices(PVR2DDEVICEINFO *pDevInfo);
--
--PVR2D_IMPORT
--PVR2DERROR PVR2DCreateDeviceContext(unsigned long ulDevID,
--                                                                      PVR2DCONTEXTHANDLE* phContext,
--                                                                      unsigned long ulFlags);
--
--PVR2D_IMPORT
--PVR2DERROR PVR2DDestroyDeviceContext(PVR2DCONTEXTHANDLE hContext);
--
--PVR2D_IMPORT
--PVR2DERROR PVR2DGetDeviceInfo(PVR2DCONTEXTHANDLE hContext,
--                                                        PVR2DDISPLAYINFO *pDisplayInfo);
--
--PVR2D_IMPORT
--PVR2DERROR PVR2DGetScreenMode(PVR2DCONTEXTHANDLE hContext,
--                                                        PVR2DFORMAT *pFormat,
--                                                        long *plWidth,
--                                                        long *plHeight,
--                                                        long *plStride,
--                                                        int *piRefreshRate);
--
--PVR2D_IMPORT
--PVR2DERROR PVR2DGetFrameBuffer(PVR2DCONTEXTHANDLE hContext,
--                                                         int nHeap,
--                                                         PVR2DMEMINFO **ppsMemInfo);
--
--PVR2D_IMPORT
--PVR2DERROR PVR2DMemAlloc(PVR2DCONTEXTHANDLE hContext,
--                                               unsigned long ulBytes,
--                                               unsigned long ulAlign,
--                                               unsigned long ulFlags,
--                                               PVR2DMEMINFO **ppsMemInfo);
--
--PVR2D_IMPORT
--PVR2DERROR PVR2DMemWrap(PVR2DCONTEXTHANDLE hContext,
--                                              void *pMem,
--                                              unsigned long ulFlags,
--                                              unsigned long ulBytes,
--                                              unsigned long alPageAddress[],
--                                              PVR2DMEMINFO **ppsMemInfo);
--
--PVR2D_IMPORT
--PVR2DERROR PVR2DMemMap(PVR2DCONTEXTHANDLE hContext,
--                                              unsigned long ulFlags,
--                                              void *hPrivateMapData,
--                                              PVR2DMEMINFO **ppsDstMem);
--
--PVR2D_IMPORT
--PVR2DERROR PVR2DMemFree(PVR2DCONTEXTHANDLE hContext,
--                                              PVR2DMEMINFO *psMemInfo);
--
--PVR2D_IMPORT
--PVR2DERROR PVR2DBlt(PVR2DCONTEXTHANDLE hContext,
--                                      PVR2DBLTINFO *pBltInfo);
--
--PVR2D_IMPORT
--PVR2DERROR PVR2DBltClipped(PVR2DCONTEXTHANDLE hContext,
--                                                 PVR2DBLTINFO *pBltInfo,
--                                                 unsigned long ulNumClipRects,
--                                                 PVR2DRECT *pClipRects);
--
--PVR2D_IMPORT
--PVR2DERROR PVR2DQueryBlitsComplete(PVR2DCONTEXTHANDLE hContext,
--                                                                 PVR2DMEMINFO *pMemInfo,
--                                                                 unsigned int uiWaitForComplete);
--
--PVR2D_IMPORT
--PVR2DERROR PVR2DSetPresentBltProperties(PVR2DCONTEXTHANDLE hContext,
--                                                                              unsigned long ulPropertyMask,
--                                                                              long lSrcStride,
--                                                                              unsigned long ulDstWidth,
--                                                                              unsigned long ulDstHeight,
--                                                                              long lDstXPos,
--                                                                              long lDstYPos,
--                                                                              unsigned long ulNumClipRects,
--                                                                              PVR2DRECT *pClipRects,
--                                                                              unsigned long ulSwapInterval);
--
--PVR2D_IMPORT
--PVR2DERROR PVR2DPresentBlt(PVR2DCONTEXTHANDLE hContext,
--                                                 PVR2DMEMINFO *pMemInfo,
--                                                 long lRenderID);
--
--PVR2D_IMPORT
--PVR2DERROR PVR2DCreateFlipChain(PVR2DCONTEXTHANDLE hContext,
--                                                              unsigned long ulFlags,
--                                                              unsigned long ulNumBuffers,
--                                                              unsigned long ulWidth,
--                                                              unsigned long ulHeight,
--                                                              PVR2DFORMAT eFormat,
--                                                              long *plStride,
--                                                              unsigned long *pulFlipChainID,
--                                                              PVR2DFLIPCHAINHANDLE *phFlipChain);
--
--PVR2D_IMPORT
--PVR2DERROR PVR2DDestroyFlipChain(PVR2DCONTEXTHANDLE hContext,
--                                                               PVR2DFLIPCHAINHANDLE hFlipChain);
--
--PVR2D_IMPORT
--PVR2DERROR PVR2DGetFlipChainBuffers(PVR2DCONTEXTHANDLE hContext,
--                                                                      PVR2DFLIPCHAINHANDLE hFlipChain,
--                                                                      unsigned long *pulNumBuffers,
--                                                                      PVR2DMEMINFO *psMemInfo[]);
--
--PVR2D_IMPORT
--PVR2DERROR PVR2DSetPresentFlipProperties(PVR2DCONTEXTHANDLE hContext,
--                                                                               PVR2DFLIPCHAINHANDLE hFlipChain,
--                                                                               unsigned long ulPropertyMask,
--                                                                               long lDstXPos,
--                                                                               long lDstYPos,
--                                                                               unsigned long ulNumClipRects,
--                                                                               PVR2DRECT *pClipRects,
--                                                                               unsigned long ulSwapInterval);
--
--PVR2D_IMPORT
--PVR2DERROR PVR2DPresentFlip(PVR2DCONTEXTHANDLE hContext,
--                                                      PVR2DFLIPCHAINHANDLE hFlipChain,
--                                                      PVR2DMEMINFO *psMemInfo,
--                                                      long lRenderID);
--
--PVR2D_IMPORT
--PVR2DERROR PVR2DGetAPIRev(long *lRevMajor, long *lRevMinor);
--
--PVR2D_IMPORT
--PVR2DERROR PVR2DLoadUseCode (const PVR2DCONTEXTHANDLE hContext, const unsigned char   *pUseCode,
--                                                                      const unsigned long UseCodeSize, PVR2D_HANDLE *pUseCodeHandle);
--PVR2D_IMPORT
--PVR2DERROR PVR2DFreeUseCode (const PVR2DCONTEXTHANDLE hContext, const PVR2D_HANDLE hUseCodeHandle);
--
--PVR2D_IMPORT
--PVR2DERROR PVR2DBlt3D (const PVR2DCONTEXTHANDLE hContext, const PPVR2D_3DBLT pBlt3D);
--
--#ifdef __cplusplus
--}
--#endif 
--
--#endif /* _PVR2D_H_ */
--
--/******************************************************************************
-- End of file (pvr2d.h)
--******************************************************************************/
-Index: qt-4.8.5/src/3rdparty/powervr/wsegl.h
-===================================================================
---- qt-4.8.5.orig/src/3rdparty/powervr/wsegl.h 2013-07-08 11:24:33.010516867 -0500
-+++ /dev/null  1970-01-01 00:00:00.000000000 +0000
-@@ -1,240 +0,0 @@
--/******************************************************************************
-- Name         : wsegl.h
-- Copyright    :       Copyright (c) Imagination Technologies Limited.
--                              This specification is protected by copyright laws and contains
--                              material proprietary to Imagination Technologies Limited.
--                              You may use and distribute this specification free of charge for implementing
--                              the functionality therein, without altering or removing any trademark, copyright,
--                              or other notice from the specification.
-- Platform     : ANSI
--*****************************************************************************/
--
--
--#if !defined(__WSEGL_H__)
--#define __WSEGL_H__
--
--#ifdef __cplusplus
--extern "C" {
--#endif 
--
--/*
--// WSEGL Platform-specific definitions
--*/
--#define WSEGL_EXPORT
--#define WSEGL_IMPORT
--
--/*
--// WSEGL API Version Number
--*/
--
--#define WSEGL_VERSION 1
--#define WSEGL_DEFAULT_DISPLAY 0
--#define WSEGL_DEFAULT_NATIVE_ENGINE 0
--
--#define WSEGL_FALSE           0
--#define WSEGL_TRUE            1
--#define WSEGL_NULL            0
--
--#define       WSEGL_UNREFERENCED_PARAMETER(param) (param) = (param)
--
--/*
--// WSEGL handles
--*/
--typedef void *WSEGLDisplayHandle;
--typedef void *WSEGLDrawableHandle;
--
--/*
--// Display capability type
--*/
--typedef enum WSEGLCapsType_TAG
--{
--      WSEGL_NO_CAPS = 0,
--      WSEGL_CAP_MIN_SWAP_INTERVAL = 1, /* System default value = 1 */
--      WSEGL_CAP_MAX_SWAP_INTERVAL = 2, /* System default value = 1 */
--      WSEGL_CAP_WINDOWS_USE_HW_SYNC = 3, /* System default value = 0 (FALSE) */
--      WSEGL_CAP_PIXMAPS_USE_HW_SYNC = 4, /* System default value = 0 (FALSE) */
--
--} WSEGLCapsType;
--
--/*
--// Display capability
--*/
--typedef struct WSEGLCaps_TAG
--{
--      WSEGLCapsType eCapsType;
--      unsigned long ui32CapsValue;
--
--} WSEGLCaps;
--
--/*
--// Drawable type
--*/
--#define WSEGL_NO_DRAWABLE                     0x0
--#define WSEGL_DRAWABLE_WINDOW         0x1
--#define WSEGL_DRAWABLE_PIXMAP         0x2
--
--
--/*
--// Pixel format of display/drawable
--*/
--typedef enum WSEGLPixelFormat_TAG
--{
--      WSEGL_PIXELFORMAT_565 = 0,
--      WSEGL_PIXELFORMAT_4444 = 1,
--      WSEGL_PIXELFORMAT_8888 = 2,
--      WSEGL_PIXELFORMAT_1555 = 3
--
--} WSEGLPixelFormat;
--
--/*
--// Transparent of display/drawable
--*/
--typedef enum WSEGLTransparentType_TAG
--{
--      WSEGL_OPAQUE = 0,
--      WSEGL_COLOR_KEY = 1,
--
--} WSEGLTransparentType;
--
--/*
--// Display/drawable configuration
--*/
--typedef struct WSEGLConfig_TAG
--{
--      /*
--      // Type of drawables this configuration applies to -
--      // OR'd values of drawable types. 
--      */
--      unsigned long ui32DrawableType;
--
--      /* Pixel format */
--      WSEGLPixelFormat ePixelFormat;
--
--      /* Native Renderable  - set to WSEGL_TRUE if native renderable */
--      unsigned long ulNativeRenderable;
--
--      /* FrameBuffer Level Parameter */
--      unsigned long ulFrameBufferLevel;
--
--      /* Native Visual ID */
--      unsigned long ulNativeVisualID;
--
--      /* Native Visual */
--      void *hNativeVisual;
--
--      /* Transparent Type */
--      WSEGLTransparentType eTransparentType;
--
--      /* Transparent Color - only used if transparent type is COLOR_KEY */
--      unsigned long ulTransparentColor; /* packed as 0x00RRGGBB */
--
--
--} WSEGLConfig;
--
--/*
--// WSEGL errors
--*/
--typedef enum WSEGLError_TAG
--{
--      WSEGL_SUCCESS = 0,
--      WSEGL_CANNOT_INITIALISE = 1,
--      WSEGL_BAD_NATIVE_DISPLAY = 2,
--      WSEGL_BAD_NATIVE_WINDOW = 3,
--      WSEGL_BAD_NATIVE_PIXMAP = 4,
--      WSEGL_BAD_NATIVE_ENGINE = 5,
--      WSEGL_BAD_DRAWABLE = 6,
--      WSEGL_BAD_CONFIG = 7,
--      WSEGL_OUT_OF_MEMORY = 8
--
--} WSEGLError; 
--
--/*
--// Drawable orientation (in degrees anti-clockwise)
--*/
--typedef enum WSEGLRotationAngle_TAG
--{
--      WSEGL_ROTATE_0 = 0,
--      WSEGL_ROTATE_90 = 1,
--      WSEGL_ROTATE_180 = 2,
--      WSEGL_ROTATE_270 = 3
--
--} WSEGLRotationAngle; 
--
--/*
--// Drawable information required by OpenGL-ES driver
--*/
--typedef struct WSEGLDrawableParams_TAG
--{
--      /* Width in pixels of the drawable */
--      unsigned long   ui32Width;
--
--      /* Height in pixels of the drawable */
--      unsigned long   ui32Height;
--
--      /* Stride in pixels of the drawable */
--      unsigned long   ui32Stride;
--
--      /* Pixel format of the drawable */
--      WSEGLPixelFormat        ePixelFormat;
--
--      /* User space cpu virtual address of the drawable */
--      void                    *pvLinearAddress;
--
--      /* HW address of the drawable */
--      unsigned long   ui32HWAddress;
--
--      /* Private data for the drawable */
--      void                    *hPrivateData;
--
--} WSEGLDrawableParams;
--
--
--/*
--// Table of function pointers that is returned by WSEGL_GetFunctionTablePointer()
--//
--// The first entry in the table is the version number of the wsegl.h header file that
--// the module has been written against, and should therefore be set to WSEGL_VERSION
--*/
--typedef struct WSEGL_FunctionTable_TAG
--{
--      unsigned long ui32WSEGLVersion;
--
--      WSEGLError (*pfnWSEGL_IsDisplayValid)(NativeDisplayType);
--
--      WSEGLError (*pfnWSEGL_InitialiseDisplay)(NativeDisplayType, WSEGLDisplayHandle *, const WSEGLCaps **, WSEGLConfig **);
--
--      WSEGLError (*pfnWSEGL_CloseDisplay)(WSEGLDisplayHandle);
--
--      WSEGLError (*pfnWSEGL_CreateWindowDrawable)(WSEGLDisplayHandle, WSEGLConfig *, WSEGLDrawableHandle *, NativeWindowType, WSEGLRotationAngle *);
--
--      WSEGLError (*pfnWSEGL_CreatePixmapDrawable)(WSEGLDisplayHandle, WSEGLConfig *, WSEGLDrawableHandle *, NativePixmapType, WSEGLRotationAngle *);
--
--      WSEGLError (*pfnWSEGL_DeleteDrawable)(WSEGLDrawableHandle);
--
--      WSEGLError (*pfnWSEGL_SwapDrawable)(WSEGLDrawableHandle, unsigned long);
--
--      WSEGLError (*pfnWSEGL_SwapControlInterval)(WSEGLDrawableHandle, unsigned long);
--
--      WSEGLError (*pfnWSEGL_WaitNative)(WSEGLDrawableHandle, unsigned long);
--
--      WSEGLError (*pfnWSEGL_CopyFromDrawable)(WSEGLDrawableHandle, NativePixmapType);
--
--      WSEGLError (*pfnWSEGL_CopyFromPBuffer)(void *, unsigned long, unsigned long, unsigned long, WSEGLPixelFormat, NativePixmapType);
--
--      WSEGLError (*pfnWSEGL_GetDrawableParameters)(WSEGLDrawableHandle, WSEGLDrawableParams *, WSEGLDrawableParams *);
--
--
--} WSEGL_FunctionTable;
--
--
--WSEGL_IMPORT const WSEGL_FunctionTable *WSEGL_GetFunctionTablePointer(void);
--
--#ifdef __cplusplus
--}
--#endif 
--
--#endif /* __WSEGL_H__ */
--
--/******************************************************************************
-- End of file (wsegl.h)
--******************************************************************************/
-Index: qt-4.8.5/src/plugins/gfxdrivers/powervr/QWSWSEGL/pvrqwswsegl.c
-===================================================================
---- qt-4.8.5.orig/src/plugins/gfxdrivers/powervr/QWSWSEGL/pvrqwswsegl.c        2013-07-08 11:24:33.010516867 -0500
-+++ qt-4.8.5/src/plugins/gfxdrivers/powervr/QWSWSEGL/pvrqwswsegl.c     2013-07-08 11:28:26.142521123 -0500
-@@ -39,7 +39,7 @@
- **
- ****************************************************************************/
--#include <GLES/eglplatform.h>
-+#include <EGL/eglplatform.h>
- #include <wsegl.h>
- #include <pvr2d.h>
- #include <string.h>
-@@ -379,6 +379,20 @@
-     return WSEGL_SUCCESS;
- }
-+/* Function stub for ConnectDrawable() */
-+static WSEGLError wseglConnectDrawable(WSEGLDrawableHandle hDrawable)
-+{
-+    WSEGL_UNREFERENCED_PARAMETER(hDrawable);
-+    return WSEGL_SUCCESS;
-+}
-+
-+/* Function stub for DisconnectDrawable() */
-+static WSEGLError wseglDisconnectDrawable(WSEGLDrawableHandle hDrawable)
-+{
-+    WSEGL_UNREFERENCED_PARAMETER(hDrawable);
-+    return WSEGL_SUCCESS;
-+}
-+
- static WSEGL_FunctionTable const wseglFunctions = {
-     WSEGL_VERSION,
-     wseglIsDisplayValid,
-@@ -392,7 +406,9 @@
-     wseglWaitNative,
-     wseglCopyFromDrawable,
-     wseglCopyFromPBuffer,
--    wseglGetDrawableParameters
-+    wseglGetDrawableParameters,
-+    wseglConnectDrawable,
-+    wseglDisconnectDrawable
- };
- /* Return the table of WSEGL functions to the EGL implementation */
diff --git a/package/qt/qt-fix-const-atomics.patch b/package/qt/qt-fix-const-atomics.patch
deleted file mode 100644 (file)
index 6485356..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-From d4d07dac01796b2aa0fb501c14865cab7e42b3a9 Mon Sep 17 00:00:00 2001
-From: Mischa Jonker <mischa.jonker@synopsys.com>
-Date: Sun, 4 Nov 2012 11:42:04 +0100
-Subject: [PATCH] Fix const-related build error in generic atomic ops
-
-It's still not entirely const-correct though. In all other architectures
-this is obfuscated through the use of inline asm (which the compiler
-doesn't check). This patch obfuscates through const_cast
----
- src/corelib/arch/generic/qatomic_generic_unix.cpp |    8 ++++----
- src/corelib/arch/qatomic_generic.h                |    2 +-
- 2 files changed, 5 insertions(+), 5 deletions(-)
-
-diff --git a/src/corelib/arch/generic/qatomic_generic_unix.cpp b/src/corelib/arch/generic/qatomic_generic_unix.cpp
-index 1c6cbf0..6fce81d 100644
---- a/src/corelib/arch/generic/qatomic_generic_unix.cpp
-+++ b/src/corelib/arch/generic/qatomic_generic_unix.cpp
-@@ -85,13 +85,13 @@ int QBasicAtomicInt_fetchAndAddOrdered(volatile int *_q_value, int valueToAdd)
- Q_CORE_EXPORT
- bool QBasicAtomicPointer_testAndSetOrdered(void * volatile *_q_value,
--                                           void *expectedValue,
--                                           void *newValue)
-+                                           const void *expectedValue,
-+                                           const void *newValue)
- {
-     bool returnValue = false;
-     pthread_mutex_lock(&qAtomicMutex);
-     if (*_q_value == expectedValue) {
--        *_q_value = newValue;
-+        *_q_value = const_cast<void*>(newValue);
-         returnValue = true;
-     }
-     pthread_mutex_unlock(&qAtomicMutex);
-diff --git a/src/corelib/arch/qatomic_generic.h b/src/corelib/arch/qatomic_generic.h
-index 621a767..4c14679 100644
---- a/src/corelib/arch/qatomic_generic.h
-+++ b/src/corelib/arch/qatomic_generic.h
-@@ -105,7 +105,7 @@ Q_CORE_EXPORT bool QBasicAtomicInt_testAndSetOrdered(volatile int *, int, int);
- Q_CORE_EXPORT int QBasicAtomicInt_fetchAndStoreOrdered(volatile int *, int);
- Q_CORE_EXPORT int QBasicAtomicInt_fetchAndAddOrdered(volatile int *, int);
--Q_CORE_EXPORT bool QBasicAtomicPointer_testAndSetOrdered(void * volatile *, void *, void *);
-+Q_CORE_EXPORT bool QBasicAtomicPointer_testAndSetOrdered(void * volatile *, const void *, const void *);
- Q_CORE_EXPORT void *QBasicAtomicPointer_fetchAndStoreOrdered(void * volatile *, void *);
- Q_CORE_EXPORT void *QBasicAtomicPointer_fetchAndAddOrdered(void * volatile *, qptrdiff);
--- 
-1.7.0.4
-
diff --git a/package/qt/qt-pthread_getattr_np.patch b/package/qt/qt-pthread_getattr_np.patch
deleted file mode 100644 (file)
index 28f0c84..0000000
+++ /dev/null
@@ -1,107 +0,0 @@
-Add pthred_getattr_np / phread_attr_getstrack alternatives for uClibc
-
-Based on https://dev.openwrt.org/log/packages/Xorg/lib/qt4/patches/100-fix-webkit-for-uclibc.patch?rev=20371
-
-Signed-off-by: Johan Sagaert <sagaert.johan@skynet.be>
----
- src/3rdparty/javascriptcore/JavaScriptCore/runtime/Collector.cpp |   61 ++++++++++
- 1 file changed, 61 insertions(+)
-
-Index: qt-everywhere-opensource-src-4.8.1/src/3rdparty/javascriptcore/JavaScriptCore/runtime/Collector.cpp
-===================================================================
---- qt-everywhere-opensource-src-4.8.1.orig/src/3rdparty/javascriptcore/JavaScriptCore/runtime/Collector.cpp
-+++ qt-everywhere-opensource-src-4.8.1/src/3rdparty/javascriptcore/JavaScriptCore/runtime/Collector.cpp
-@@ -70,6 +70,23 @@
- #endif
- #include <unistd.h>
-+#if defined(QT_LINUXBASE)
-+#include <dlfcn.h>
-+#endif
-+
-+#if defined(__UCLIBC__)
-+// versions of uClibc 0.9.32 and below with linuxthreads.old do not have
-+// pthread_getattr_np or pthread_attr_getstack.
-+#if __UCLIBC_MAJOR__ == 0 && \
-+    (__UCLIBC_MINOR__ < 9 || \
-+    (__UCLIBC_MINOR__ == 9 && __UCLIBC_SUBLEVEL__ <= 32)) && \
-+    defined(__LINUXTHREADS_OLD__)
-+#define UCLIBC_USE_PROC_SELF_MAPS 1
-+#include <stdio_ext.h>
-+extern int *__libc_stack_end;
-+#endif
-+#endif
-+
- #if OS(SOLARIS)
- #include <thread.h>
- #else
-@@ -648,6 +665,37 @@
-     get_thread_info(find_thread(NULL), &threadInfo);
-     return threadInfo.stack_end;
- #elif OS(UNIX)
-+#ifdef UCLIBC_USE_PROC_SELF_MAPS
-+    // Read /proc/self/maps and locate the line whose address
-+    // range contains __libc_stack_end.
-+    FILE *file = fopen("/proc/self/maps", "r");
-+    if (!file)
-+        return 0;
-+    __fsetlocking(file, FSETLOCKING_BYCALLER);
-+    char *line = NULL;
-+    size_t lineLen = 0;
-+    while (!feof_unlocked(file)) {
-+        if (getdelim(&line, &lineLen, '\n', file) <= 0)
-+            break;
-+
-+        long from;
-+        long to;
-+        if (sscanf (line, "%lx-%lx", &from, &to) != 2)
-+            continue;
-+        if (from <= (long)__libc_stack_end && (long)__libc_stack_end < to) {
-+            fclose(file);
-+            free(line);
-+#ifdef _STACK_GROWS_UP
-+            return (void *)from;
-+#else
-+            return (void *)to;
-+#endif
-+        }
-+    }
-+    fclose(file);
-+    free(line);
-+    return 0;
-+#else
-     AtomicallyInitializedStatic(Mutex&, mutex = *new Mutex);
-     MutexLocker locker(mutex);
-     static void* stackBase = 0;
-@@ -655,11 +703,23 @@
-     static pthread_t stackThread;
-     pthread_t thread = pthread_self();
-     if (stackBase == 0 || thread != stackThread) {
-+
-+#if defined(QT_LINUXBASE)
-+        // LinuxBase is missing pthread_getattr_np - resolve it once at runtime instead
-+        // see http://bugs.linuxbase.org/show_bug.cgi?id=2364
-+        typedef int (*GetAttrPtr)(pthread_t, pthread_attr_t *);
-+        static int (*pthread_getattr_np_ptr)(pthread_t, pthread_attr_t *) = 0;
-+        if (!pthread_getattr_np_ptr)
-+            *(void **)&pthread_getattr_np_ptr = dlsym(RTLD_DEFAULT, "pthread_getattr_np");
-+#endif
-         pthread_attr_t sattr;
-         pthread_attr_init(&sattr);
- #if HAVE(PTHREAD_NP_H) || OS(NETBSD)
-         // e.g. on FreeBSD 5.4, neundorf@kde.org
-         pthread_attr_get_np(thread, &sattr);
-+#elif defined(QT_LINUXBASE)
-+        if (pthread_getattr_np_ptr)
-+            pthread_getattr_np_ptr(thread, &sattr);
- #else
-         // FIXME: this function is non-portable; other POSIX systems may have different np alternatives
-         pthread_getattr_np(thread, &sattr);
-@@ -671,6 +731,7 @@
-         stackThread = thread;
-     }
-     return static_cast<char*>(stackBase) + stackSize;
-+#endif
- #else
- #error Need a way to get the stack base on this platform
- #endif
diff --git a/package/qt/qt-script-qtdbus-no-gui.patch b/package/qt/qt-script-qtdbus-no-gui.patch
deleted file mode 100644 (file)
index e29e9e4..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-[PATCH] fix build with script+dbus enabled, but no gui
-
-The script/qtdbus plugin doesn't need gui support, so don't try to
-link it against libQtGui.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- src/plugins/script/qtdbus/qtdbus.pro |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Index: qt-4.7.3/src/plugins/script/qtdbus/qtdbus.pro
-===================================================================
---- qt-4.7.3.orig/src/plugins/script/qtdbus/qtdbus.pro
-+++ qt-4.7.3/src/plugins/script/qtdbus/qtdbus.pro
-@@ -1,6 +1,6 @@
- TARGET  = qtscriptdbus
- include(../../qpluginbase.pri)
--QT = core gui script
-+QT = core script
- CONFIG += qdbus
- SOURCES += main.cpp
diff --git a/package/qt/qt-uClibc-lfs-fix.patch b/package/qt/qt-uClibc-lfs-fix.patch
deleted file mode 100644 (file)
index ea04a60..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-From 6f88b27de256266947a7f6a3e70e18510754aab2 Mon Sep 17 00:00:00 2001
-From: Peter Korsgaard <jacmet@sunsite.dk>
-Date: Sat, 14 Apr 2012 20:36:07 +0200
-Subject: [PATCH] mkspecs/common/posix: fix !largefile builds on uClibc
-
-uClibc doesn't even define O_LARGEFILE when not configured with large file
-support, so ensure this define is only used when Qt is built with
--largefile, otherwise the build fails with:
-
-io/qtemporaryfile.cpp: In function 'bool createFileFromTemplate(
-       NativeFileHandle&, QFileSystemEntry::NativePath&, size_t, size_t,
-       QSystemError&)':
-io/qtemporaryfile.cpp:197:57: error: 'O_LARGEFILE' was not declared in
-       this scope
-
-Reported-Upstream: https://bugreports.qt-project.org/browse/QTBUG-25321
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- mkspecs/common/posix/qplatformdefs.h |    5 +++++
- 1 files changed, 5 insertions(+), 0 deletions(-)
-
-diff --git a/mkspecs/common/posix/qplatformdefs.h b/mkspecs/common/posix/qplatformdefs.h
-index daecc00..8a796cf 100644
---- a/mkspecs/common/posix/qplatformdefs.h
-+++ b/mkspecs/common/posix/qplatformdefs.h
-@@ -123,7 +123,12 @@
- #define QT_READ                 ::read
- #define QT_WRITE                ::write
-+#ifdef QT_LARGEFILE_SUPPORT
- #define QT_OPEN_LARGEFILE       O_LARGEFILE
-+#else
-+#define QT_OPEN_LARGEFILE       0
-+#endif
-+
- #define QT_OPEN_RDONLY          O_RDONLY
- #define QT_OPEN_WRONLY          O_WRONLY
- #define QT_OPEN_RDWR            O_RDWR
--- 
-1.7.8.3
-
diff --git a/package/qt5/qt5base/0002-mkspecs-files.patch b/package/qt5/qt5base/0002-mkspecs-files.patch
new file mode 100644 (file)
index 0000000..09c1b67
--- /dev/null
@@ -0,0 +1,39 @@
+Add a Buildroot 'device' to ease cross-compilation
+
+Qt5 has a mechanism to support "device" profiles, so that people can
+specify the compiler, compiler flags and so on for a specific device.
+
+We leverage this mechanism in the Buildroot packaging of qt5 to
+simplify cross-compilation: we have our own "device" definition, which
+allows us to easily pass the cross-compiler paths and flags from our
+qt5.mk.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/mkspecs/devices/linux-buildroot-g++/qmake.conf
+===================================================================
+--- /dev/null
++++ b/mkspecs/devices/linux-buildroot-g++/qmake.conf
+@@ -0,0 +1,16 @@
++include(../common/linux_device_pre.conf)
++
++# modifications to g++-unix.conf
++QMAKE_CC                = $${BR_CCACHE} $${CROSS_COMPILE}gcc
++QMAKE_CXX               = $${BR_CCACHE} $${CROSS_COMPILE}g++
++
++#modifications to gcc-base.conf
++QMAKE_CFLAGS           += $${BR_COMPILER_CFLAGS}
++QMAKE_CXXFLAGS         += $${BR_COMPILER_CXXFLAGS}
++QMAKE_CXXFLAGS_RELEASE += -O3
++CONFIG                 += nostrip
++
++QMAKE_LIBS             += -lrt -lpthread -ldl
++
++include(../common/linux_device_post.conf)
++load(qt_config)
+Index: b/mkspecs/devices/linux-buildroot-g++/qplatformdefs.h
+===================================================================
+--- /dev/null
++++ b/mkspecs/devices/linux-buildroot-g++/qplatformdefs.h
+@@ -0,0 +1 @@
++#include "../../linux-g++/qplatformdefs.h"
diff --git a/package/qt5/qt5base/0003-uclibc-no-lfs.patch b/package/qt5/qt5base/0003-uclibc-no-lfs.patch
new file mode 100644 (file)
index 0000000..9772d49
--- /dev/null
@@ -0,0 +1,36 @@
+From 6f88b27de256266947a7f6a3e70e18510754aab2 Mon Sep 17 00:00:00 2001
+From: Peter Korsgaard <jacmet@sunsite.dk>
+Date: Sat, 14 Apr 2012 20:36:07 +0200
+Subject: [PATCH] mkspecs/common/posix: fix !largefile builds on uClibc
+
+uClibc doesn't even define O_LARGEFILE when not configured with large file
+support, so ensure this define is only used when Qt is built with
+-largefile, otherwise the build fails with:
+
+io/qtemporaryfile.cpp: In function 'bool createFileFromTemplate(
+        NativeFileHandle&, QFileSystemEntry::NativePath&, size_t, size_t,
+        QSystemError&)':
+io/qtemporaryfile.cpp:197:57: error: 'O_LARGEFILE' was not declared in
+        this scope
+
+Moved to qt5 by Thomas Petazzoni.
+
+Reported-Upstream: https://bugreports.qt-project.org/browse/QTBUG-25321
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+
+Index: b/mkspecs/common/posix/qplatformdefs.h
+===================================================================
+--- a/mkspecs/common/posix/qplatformdefs.h
++++ b/mkspecs/common/posix/qplatformdefs.h
+@@ -123,7 +123,11 @@
+ #define QT_READ                 ::read
+ #define QT_WRITE                ::write
++#ifdef QT_LARGEFILE_SUPPORT
+ #define QT_OPEN_LARGEFILE       O_LARGEFILE
++#else
++#define QT_OPEN_LARGEFILE       0
++#endif
+ #define QT_OPEN_RDONLY          O_RDONLY
+ #define QT_OPEN_WRONLY          O_WRONLY
+ #define QT_OPEN_RDWR            O_RDWR
diff --git a/package/qt5/qt5base/qt5base-0002-mkspecs-files.patch b/package/qt5/qt5base/qt5base-0002-mkspecs-files.patch
deleted file mode 100644 (file)
index 09c1b67..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-Add a Buildroot 'device' to ease cross-compilation
-
-Qt5 has a mechanism to support "device" profiles, so that people can
-specify the compiler, compiler flags and so on for a specific device.
-
-We leverage this mechanism in the Buildroot packaging of qt5 to
-simplify cross-compilation: we have our own "device" definition, which
-allows us to easily pass the cross-compiler paths and flags from our
-qt5.mk.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/mkspecs/devices/linux-buildroot-g++/qmake.conf
-===================================================================
---- /dev/null
-+++ b/mkspecs/devices/linux-buildroot-g++/qmake.conf
-@@ -0,0 +1,16 @@
-+include(../common/linux_device_pre.conf)
-+
-+# modifications to g++-unix.conf
-+QMAKE_CC                = $${BR_CCACHE} $${CROSS_COMPILE}gcc
-+QMAKE_CXX               = $${BR_CCACHE} $${CROSS_COMPILE}g++
-+
-+#modifications to gcc-base.conf
-+QMAKE_CFLAGS           += $${BR_COMPILER_CFLAGS}
-+QMAKE_CXXFLAGS         += $${BR_COMPILER_CXXFLAGS}
-+QMAKE_CXXFLAGS_RELEASE += -O3
-+CONFIG                 += nostrip
-+
-+QMAKE_LIBS             += -lrt -lpthread -ldl
-+
-+include(../common/linux_device_post.conf)
-+load(qt_config)
-Index: b/mkspecs/devices/linux-buildroot-g++/qplatformdefs.h
-===================================================================
---- /dev/null
-+++ b/mkspecs/devices/linux-buildroot-g++/qplatformdefs.h
-@@ -0,0 +1 @@
-+#include "../../linux-g++/qplatformdefs.h"
diff --git a/package/qt5/qt5base/qt5base-0003-uclibc-no-lfs.patch b/package/qt5/qt5base/qt5base-0003-uclibc-no-lfs.patch
deleted file mode 100644 (file)
index 9772d49..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-From 6f88b27de256266947a7f6a3e70e18510754aab2 Mon Sep 17 00:00:00 2001
-From: Peter Korsgaard <jacmet@sunsite.dk>
-Date: Sat, 14 Apr 2012 20:36:07 +0200
-Subject: [PATCH] mkspecs/common/posix: fix !largefile builds on uClibc
-
-uClibc doesn't even define O_LARGEFILE when not configured with large file
-support, so ensure this define is only used when Qt is built with
--largefile, otherwise the build fails with:
-
-io/qtemporaryfile.cpp: In function 'bool createFileFromTemplate(
-        NativeFileHandle&, QFileSystemEntry::NativePath&, size_t, size_t,
-        QSystemError&)':
-io/qtemporaryfile.cpp:197:57: error: 'O_LARGEFILE' was not declared in
-        this scope
-
-Moved to qt5 by Thomas Petazzoni.
-
-Reported-Upstream: https://bugreports.qt-project.org/browse/QTBUG-25321
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
-
-Index: b/mkspecs/common/posix/qplatformdefs.h
-===================================================================
---- a/mkspecs/common/posix/qplatformdefs.h
-+++ b/mkspecs/common/posix/qplatformdefs.h
-@@ -123,7 +123,11 @@
- #define QT_READ                 ::read
- #define QT_WRITE                ::write
-+#ifdef QT_LARGEFILE_SUPPORT
- #define QT_OPEN_LARGEFILE       O_LARGEFILE
-+#else
-+#define QT_OPEN_LARGEFILE       0
-+#endif
- #define QT_OPEN_RDONLY          O_RDONLY
- #define QT_OPEN_WRONLY          O_WRONLY
- #define QT_OPEN_RDWR            O_RDWR
diff --git a/package/qt5/qt5webkit-examples/0001-build.patch b/package/qt5/qt5webkit-examples/0001-build.patch
new file mode 100644 (file)
index 0000000..68964f0
--- /dev/null
@@ -0,0 +1,30 @@
+This patch improves the qt5webkit examples build for 2 aspects:
+
+# Allows to build even if qt5base examples are not enabled
+# Builds xmlpatterns example only if the qt5xmlpattern package has been built
+
+Signed-off-by: Massimo Callegari <massimocallegari@yahoo.it>
+
+Index: b/examples/webkitwidgets/webkitwidgets.pro
+===================================================================
+--- /dev/null
++++ b/examples/webkitwidgets/webkitwidgets.pro
+@@ -8,5 +8,6 @@
+             framecapture \
+             browser \
+             embedded \
+-            scroller \
+-            xmlpatterns
++            scroller
++
++qtHaveModule(xmlpatterns): SUBDIRS += xmlpatterns
+Index: b/qtwebkit-examples.pro
+===================================================================
+--- /dev/null
++++ b/qtwebkit-examples.pro
+@@ -3,3 +3,4 @@
+ load(qt_parts)
+ SUBDIRS += doc
++SUBDIRS += examples
+
diff --git a/package/qt5/qt5webkit-examples/qt5webkit-examples-0001-build.patch b/package/qt5/qt5webkit-examples/qt5webkit-examples-0001-build.patch
deleted file mode 100644 (file)
index 68964f0..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-This patch improves the qt5webkit examples build for 2 aspects:
-
-# Allows to build even if qt5base examples are not enabled
-# Builds xmlpatterns example only if the qt5xmlpattern package has been built
-
-Signed-off-by: Massimo Callegari <massimocallegari@yahoo.it>
-
-Index: b/examples/webkitwidgets/webkitwidgets.pro
-===================================================================
---- /dev/null
-+++ b/examples/webkitwidgets/webkitwidgets.pro
-@@ -8,5 +8,6 @@
-             framecapture \
-             browser \
-             embedded \
--            scroller \
--            xmlpatterns
-+            scroller
-+
-+qtHaveModule(xmlpatterns): SUBDIRS += xmlpatterns
-Index: b/qtwebkit-examples.pro
-===================================================================
---- /dev/null
-+++ b/qtwebkit-examples.pro
-@@ -3,3 +3,4 @@
- load(qt_parts)
- SUBDIRS += doc
-+SUBDIRS += examples
-
diff --git a/package/qtuio/0001-TuioServer.cpp-add-missing-include.patch b/package/qtuio/0001-TuioServer.cpp-add-missing-include.patch
new file mode 100644 (file)
index 0000000..9933702
--- /dev/null
@@ -0,0 +1,28 @@
+From 4dd7cad8c95484a882eaa2aeaa74595a3dd93a07 Mon Sep 17 00:00:00 2001
+From: Stephan Hoffmann <sho@relinux.de>
+Date: Sun, 2 Dec 2012 13:36:41 +0100
+Subject: [PATCH] TuioServer.cpp: add missing include
+
+If usleep() is used the header <unistd.h> has to be included
+
+Signed-off-by: Stephan Hoffmann <sho@relinux.de>
+---
+ src/3rdparty/tuio/TuioServer.cpp |    2 ++
+ 1 files changed, 2 insertions(+), 0 deletions(-)
+
+diff --git a/src/3rdparty/tuio/TuioServer.cpp b/src/3rdparty/tuio/TuioServer.cpp
+index f17bef9..851144c 100644
+--- a/src/3rdparty/tuio/TuioServer.cpp
++++ b/src/3rdparty/tuio/TuioServer.cpp
+@@ -25,6 +25,8 @@ using namespace TUIO;
+ using namespace osc;
+ #ifndef WIN32
++#include <unistd.h>
++
+ static void* ThreadFunc( void* obj )
+ #else
+ static DWORD WINAPI ThreadFunc( LPVOID obj )
+-- 
+1.7.0.4
+
diff --git a/package/qtuio/0002-dont-append-_d-for-debug.patch b/package/qtuio/0002-dont-append-_d-for-debug.patch
new file mode 100644 (file)
index 0000000..fbaaf19
--- /dev/null
@@ -0,0 +1,29 @@
+[PATCH] don't append _d to library name when Qt is built with debug support
+
+qtuio appends _d to the library name when Qt was built with debug support,
+breaking linking step for examples and staging/target install.
+
+There's no real advantage to the _d suffix, so simply fix it by removing
+the logic appending _d.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ src/qTUIO.pro |    5 -----
+ 1 file changed, 5 deletions(-)
+
+Index: qtuio-abe4973ff6/src/qTUIO.pro
+===================================================================
+--- qtuio-abe4973ff6.orig/src/qTUIO.pro
++++ qtuio-abe4973ff6/src/qTUIO.pro
+@@ -16,11 +16,6 @@
+ win32:LIBS += ws2_32.lib \
+     winmm.lib
+-# Changes the name of the target, when is debug mode
+-CONFIG( debug, debug|release ) { 
+-    TARGET = $${TARGET}_d
+-    BUILD_NAME = debug
+-}
+ CONFIG( release, debug|release ):BUILD_NAME = release
+ # Temporary folders for the auxiliar files
diff --git a/package/qtuio/qtuio-TuioServer.cpp-add-missing-include.patch b/package/qtuio/qtuio-TuioServer.cpp-add-missing-include.patch
deleted file mode 100644 (file)
index 9933702..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-From 4dd7cad8c95484a882eaa2aeaa74595a3dd93a07 Mon Sep 17 00:00:00 2001
-From: Stephan Hoffmann <sho@relinux.de>
-Date: Sun, 2 Dec 2012 13:36:41 +0100
-Subject: [PATCH] TuioServer.cpp: add missing include
-
-If usleep() is used the header <unistd.h> has to be included
-
-Signed-off-by: Stephan Hoffmann <sho@relinux.de>
----
- src/3rdparty/tuio/TuioServer.cpp |    2 ++
- 1 files changed, 2 insertions(+), 0 deletions(-)
-
-diff --git a/src/3rdparty/tuio/TuioServer.cpp b/src/3rdparty/tuio/TuioServer.cpp
-index f17bef9..851144c 100644
---- a/src/3rdparty/tuio/TuioServer.cpp
-+++ b/src/3rdparty/tuio/TuioServer.cpp
-@@ -25,6 +25,8 @@ using namespace TUIO;
- using namespace osc;
- #ifndef WIN32
-+#include <unistd.h>
-+
- static void* ThreadFunc( void* obj )
- #else
- static DWORD WINAPI ThreadFunc( LPVOID obj )
--- 
-1.7.0.4
-
diff --git a/package/qtuio/qtuio-dont-append-_d-for-debug.patch b/package/qtuio/qtuio-dont-append-_d-for-debug.patch
deleted file mode 100644 (file)
index fbaaf19..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-[PATCH] don't append _d to library name when Qt is built with debug support
-
-qtuio appends _d to the library name when Qt was built with debug support,
-breaking linking step for examples and staging/target install.
-
-There's no real advantage to the _d suffix, so simply fix it by removing
-the logic appending _d.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- src/qTUIO.pro |    5 -----
- 1 file changed, 5 deletions(-)
-
-Index: qtuio-abe4973ff6/src/qTUIO.pro
-===================================================================
---- qtuio-abe4973ff6.orig/src/qTUIO.pro
-+++ qtuio-abe4973ff6/src/qTUIO.pro
-@@ -16,11 +16,6 @@
- win32:LIBS += ws2_32.lib \
-     winmm.lib
--# Changes the name of the target, when is debug mode
--CONFIG( debug, debug|release ) { 
--    TARGET = $${TARGET}_d
--    BUILD_NAME = debug
--}
- CONFIG( release, debug|release ):BUILD_NAME = release
- # Temporary folders for the auxiliar files
diff --git a/package/quagga/0001-fix-ipctl-forwarding.patch b/package/quagga/0001-fix-ipctl-forwarding.patch
new file mode 100644 (file)
index 0000000..e2e3421
--- /dev/null
@@ -0,0 +1,27 @@
+Add definitions for IPCTL_FORWARDING and IP6CTL_FORWARDING.
+
+Inspired from
+http://svn.gnumonks.org/trunk/grouter/build/src/quagga/quagga/quagga-0.99.1-forward_sysctl-2.6.14.patch
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: quagga-0.99.16/zebra/ipforward_sysctl.c
+===================================================================
+--- quagga-0.99.16.orig/zebra/ipforward_sysctl.c       2010-06-20 23:40:45.000000000 +0200
++++ quagga-0.99.16/zebra/ipforward_sysctl.c    2010-06-20 23:41:37.000000000 +0200
+@@ -31,6 +31,15 @@
+ #define MIB_SIZ 4
++/* Fix for recent (2.6.14) kernel headers */
++#ifndef IPCTL_FORWARDING
++#define IPCTL_FORWARDING NET_IPV4_FORWARD
++#endif
++
++#ifndef IP6CTL_FORWARDING
++#define IP6CTL_FORWARDING NET_IPV6_FORWARDING
++#endif
++
+ extern struct zebra_privs_t zserv_privs;
+ /* IPv4 forwarding control MIB. */
diff --git a/package/quagga/quagga-fix-ipctl-forwarding.patch b/package/quagga/quagga-fix-ipctl-forwarding.patch
deleted file mode 100644 (file)
index e2e3421..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-Add definitions for IPCTL_FORWARDING and IP6CTL_FORWARDING.
-
-Inspired from
-http://svn.gnumonks.org/trunk/grouter/build/src/quagga/quagga/quagga-0.99.1-forward_sysctl-2.6.14.patch
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: quagga-0.99.16/zebra/ipforward_sysctl.c
-===================================================================
---- quagga-0.99.16.orig/zebra/ipforward_sysctl.c       2010-06-20 23:40:45.000000000 +0200
-+++ quagga-0.99.16/zebra/ipforward_sysctl.c    2010-06-20 23:41:37.000000000 +0200
-@@ -31,6 +31,15 @@
- #define MIB_SIZ 4
-+/* Fix for recent (2.6.14) kernel headers */
-+#ifndef IPCTL_FORWARDING
-+#define IPCTL_FORWARDING NET_IPV4_FORWARD
-+#endif
-+
-+#ifndef IP6CTL_FORWARDING
-+#define IP6CTL_FORWARDING NET_IPV6_FORWARDING
-+#endif
-+
- extern struct zebra_privs_t zserv_privs;
- /* IPv4 forwarding control MIB. */
diff --git a/package/qwt/0001-remove-installed-check.patch b/package/qwt/0001-remove-installed-check.patch
new file mode 100644 (file)
index 0000000..7490a7b
--- /dev/null
@@ -0,0 +1,32 @@
+Remove useless check at build time
+
+At build time, Qwt looks whether the Qwt libraries are already
+installed in the destination directory, to avoid confusion between
+libraries installed system-wide and locally-built shared
+libraries. However, this behaviour conflicts with how Buildroot builds
+and installs libraries, so get rid of it.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: qwt-6.0.0/qwtbuild.pri
+===================================================================
+--- qwt-6.0.0.orig/qwtbuild.pri        2011-09-12 19:37:35.663275952 +0200
++++ qwt-6.0.0/qwtbuild.pri     2011-09-12 19:37:41.913275949 +0200
+@@ -53,17 +53,3 @@
+ !debug_and_release {
+     OBJECTS_DIR       = obj
+ }
+-
+-unix {
+-
+-    exists( $${QMAKE_LIBDIR_QT}/libqwt.* ) {
+-
+-        # On some Linux distributions the Qwt libraries are installed 
+-        # in the same directory as the Qt libraries. Unfortunately
+-        # qmake always adds QMAKE_LIBDIR_QT at the beginning of the 
+-        # linker path, so that the installed libraries will be
+-        # used instead of the local ones.
+-
+-        error( "local build will conflict with $${QMAKE_LIBDIR_QT}/libqwt.*" )
+-    }
+-}
diff --git a/package/qwt/qwt-remove-installed-check.patch b/package/qwt/qwt-remove-installed-check.patch
deleted file mode 100644 (file)
index 7490a7b..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-Remove useless check at build time
-
-At build time, Qwt looks whether the Qwt libraries are already
-installed in the destination directory, to avoid confusion between
-libraries installed system-wide and locally-built shared
-libraries. However, this behaviour conflicts with how Buildroot builds
-and installs libraries, so get rid of it.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: qwt-6.0.0/qwtbuild.pri
-===================================================================
---- qwt-6.0.0.orig/qwtbuild.pri        2011-09-12 19:37:35.663275952 +0200
-+++ qwt-6.0.0/qwtbuild.pri     2011-09-12 19:37:41.913275949 +0200
-@@ -53,17 +53,3 @@
- !debug_and_release {
-     OBJECTS_DIR       = obj
- }
--
--unix {
--
--    exists( $${QMAKE_LIBDIR_QT}/libqwt.* ) {
--
--        # On some Linux distributions the Qwt libraries are installed 
--        # in the same directory as the Qt libraries. Unfortunately
--        # qmake always adds QMAKE_LIBDIR_QT at the beginning of the 
--        # linker path, so that the installed libraries will be
--        # used instead of the local ones.
--
--        error( "local build will conflict with $${QMAKE_LIBDIR_QT}/libqwt.*" )
--    }
--}
diff --git a/package/rdesktop/0001-8bit-colors.patch b/package/rdesktop/0001-8bit-colors.patch
new file mode 100644 (file)
index 0000000..710f8de
--- /dev/null
@@ -0,0 +1,21 @@
+diff -urpN rdesktop-1.5.0-orig/xwin.c rdesktop-1.5.0/xwin.c
+--- rdesktop-1.5.0-orig/xwin.c 2007-01-17 12:01:18.000000000 +0100
++++ rdesktop-1.5.0/xwin.c      2007-01-17 12:05:02.000000000 +0100
+@@ -1461,7 +1461,7 @@ select_visual(int screen_num)
+               }
+               /* we use a colourmap, so the default visual should do */
+-              g_owncolmap = True;
++//            g_owncolmap = True;
+               g_visual = vmatches[0].visual;
+               g_depth = vmatches[0].depth;
+       }
+@@ -1568,7 +1568,7 @@ ui_init(void)
+       {
+               g_xcolmap =
+                       XCreateColormap(g_display, RootWindowOfScreen(g_screen), g_visual,
+-                                      AllocNone);
++                                      (g_depth <= 8) ? AllocAll : AllocNone);
+               if (g_depth <= 8)
+                       warning("Display colour depth is %d bit: you may want to use -C for a private colourmap.\n", g_depth);
+       }
diff --git a/package/rdesktop/rdesktop-01-8bit-colors.patch b/package/rdesktop/rdesktop-01-8bit-colors.patch
deleted file mode 100644 (file)
index 710f8de..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-diff -urpN rdesktop-1.5.0-orig/xwin.c rdesktop-1.5.0/xwin.c
---- rdesktop-1.5.0-orig/xwin.c 2007-01-17 12:01:18.000000000 +0100
-+++ rdesktop-1.5.0/xwin.c      2007-01-17 12:05:02.000000000 +0100
-@@ -1461,7 +1461,7 @@ select_visual(int screen_num)
-               }
-               /* we use a colourmap, so the default visual should do */
--              g_owncolmap = True;
-+//            g_owncolmap = True;
-               g_visual = vmatches[0].visual;
-               g_depth = vmatches[0].depth;
-       }
-@@ -1568,7 +1568,7 @@ ui_init(void)
-       {
-               g_xcolmap =
-                       XCreateColormap(g_display, RootWindowOfScreen(g_screen), g_visual,
--                                      AllocNone);
-+                                      (g_depth <= 8) ? AllocAll : AllocNone);
-               if (g_depth <= 8)
-                       warning("Display colour depth is %d bit: you may want to use -C for a private colourmap.\n", g_depth);
-       }
diff --git a/package/readline/0001-curses-link.patch b/package/readline/0001-curses-link.patch
new file mode 100644 (file)
index 0000000..56b4770
--- /dev/null
@@ -0,0 +1,16 @@
+link readline directly to ncurses since it needs symbols from it
+
+upstream readline does this on purpose (no direct linking), but
+it doesn't make much sense in a Linux world
+
+--- a/support/shobj-conf
++++ b/support/shobj-conf
+@@ -42,7 +42,7 @@
+ SHOBJ_LIBS=
+ SHLIB_XLDFLAGS=
+-SHLIB_LIBS=
++SHLIB_LIBS=-lncurses
+ SHLIB_DOT='.'
+ SHLIB_LIBPREF='lib'
diff --git a/package/readline/readline-001-curses-link.patch b/package/readline/readline-001-curses-link.patch
deleted file mode 100644 (file)
index 56b4770..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-link readline directly to ncurses since it needs symbols from it
-
-upstream readline does this on purpose (no direct linking), but
-it doesn't make much sense in a Linux world
-
---- a/support/shobj-conf
-+++ b/support/shobj-conf
-@@ -42,7 +42,7 @@
- SHOBJ_LIBS=
- SHLIB_XLDFLAGS=
--SHLIB_LIBS=
-+SHLIB_LIBS=-lncurses
- SHLIB_DOT='.'
- SHLIB_LIBPREF='lib'
diff --git a/package/rp-pppoe/0002-krn-plugin.patch b/package/rp-pppoe/0002-krn-plugin.patch
new file mode 100644 (file)
index 0000000..d364e86
--- /dev/null
@@ -0,0 +1,25 @@
+diff -Nura rp-pppoe-3.11.orig/src/configure rp-pppoe-3.11/src/configure
+--- rp-pppoe-3.11.orig/src/configure   2012-08-21 10:01:10.536440032 -0300
++++ rp-pppoe-3.11/src/configure        2012-08-21 10:01:45.353442397 -0300
+@@ -4517,7 +4517,7 @@
+ modprobe pppoe > /dev/null 2>&1
+ fi
+ if test "$cross_compiling" = yes; then :
+-  ac_cv_linux_kernel_pppoe=no; $ECHO "cross-compiling, default: "
++  ac_cv_linux_kernel_pppoe=yes; $ECHO "cross-compiling, default: "
+ else
+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
+diff -Nura rp-pppoe-3.11.orig/src/pppoe-server.c rp-pppoe-3.11/src/pppoe-server.c
+--- rp-pppoe-3.11.orig/src/pppoe-server.c      2012-08-21 10:01:10.535440032 -0300
++++ rp-pppoe-3.11/src/pppoe-server.c   2012-08-21 10:02:02.597443569 -0300
+@@ -20,6 +20,9 @@
+ #include "config.h"
++/* Patched hack to make this cross compile */
++#define HAVE_LINUX_KERNEL_PPPOE 1
++
+ #if defined(HAVE_NETPACKET_PACKET_H) || defined(HAVE_LINUX_IF_PACKET_H)
+ #define _POSIX_SOURCE 1 /* For sigaction defines */
+ #endif
diff --git a/package/rp-pppoe/rp-pppoe-3.10-002-krn-plugin.patch b/package/rp-pppoe/rp-pppoe-3.10-002-krn-plugin.patch
deleted file mode 100644 (file)
index d364e86..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-diff -Nura rp-pppoe-3.11.orig/src/configure rp-pppoe-3.11/src/configure
---- rp-pppoe-3.11.orig/src/configure   2012-08-21 10:01:10.536440032 -0300
-+++ rp-pppoe-3.11/src/configure        2012-08-21 10:01:45.353442397 -0300
-@@ -4517,7 +4517,7 @@
- modprobe pppoe > /dev/null 2>&1
- fi
- if test "$cross_compiling" = yes; then :
--  ac_cv_linux_kernel_pppoe=no; $ECHO "cross-compiling, default: "
-+  ac_cv_linux_kernel_pppoe=yes; $ECHO "cross-compiling, default: "
- else
-   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
- /* end confdefs.h.  */
-diff -Nura rp-pppoe-3.11.orig/src/pppoe-server.c rp-pppoe-3.11/src/pppoe-server.c
---- rp-pppoe-3.11.orig/src/pppoe-server.c      2012-08-21 10:01:10.535440032 -0300
-+++ rp-pppoe-3.11/src/pppoe-server.c   2012-08-21 10:02:02.597443569 -0300
-@@ -20,6 +20,9 @@
- #include "config.h"
-+/* Patched hack to make this cross compile */
-+#define HAVE_LINUX_KERNEL_PPPOE 1
-+
- #if defined(HAVE_NETPACKET_PACKET_H) || defined(HAVE_LINUX_IF_PACKET_H)
- #define _POSIX_SOURCE 1 /* For sigaction defines */
- #endif
diff --git a/package/rpcbind/0001-Remove-yellow-pages-support.patch b/package/rpcbind/0001-Remove-yellow-pages-support.patch
new file mode 100644 (file)
index 0000000..e35828f
--- /dev/null
@@ -0,0 +1,56 @@
+From 249e25c5cc675c212ca4e4a3342bff8f59285b1a Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Date: Sat, 10 Nov 2012 22:03:43 +0100
+Subject: [PATCH] Remove yellow pages support
+
+This support requires yellow pages support in libtirpc, which isn't
+available. As most Buildroot users are most likely never going to need
+such feature, get rid of it.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ src/security.c | 18 ------------------
+ 1 file changed, 18 deletions(-)
+
+diff --git a/src/security.c b/src/security.c
+index d272f74..8d5863c 100644
+--- a/src/security.c
++++ b/src/security.c
+@@ -23,9 +23,6 @@
+ #include <rpcsvc/mount.h>
+ #include <rpcsvc/rquota.h>
+ #include <rpcsvc/nfs_prot.h>
+-#include <rpcsvc/yp.h>
+-#include <rpcsvc/ypclnt.h>
+-#include <rpcsvc/yppasswd.h>
+ #include "rpcbind.h"
+@@ -308,24 +305,9 @@ check_callit(SVCXPRT *xprt, struct r_rmtcall_args *args, int versnum /*__unused*
+                   args->rmt_proc != MOUNTPROC_UMNT)
+                       break;
+               goto deny;
+-      case YPBINDPROG:
+-              if (args->rmt_proc != YPBINDPROC_SETDOM)
+-                      break;
+-              /* FALLTHROUGH */
+-      case YPPASSWDPROG:
+       case NFS_PROGRAM:
+       case RQUOTAPROG:
+               goto deny;
+-      case YPPROG:
+-              switch (args->rmt_proc) {
+-              case YPPROC_ALL:
+-              case YPPROC_MATCH:
+-              case YPPROC_FIRST:
+-              case YPPROC_NEXT:
+-                      goto deny;
+-              default:
+-                      break;
+-              }
+       default:
+               break;
+       }
+-- 
+2.0.0
+
diff --git a/package/rpcbind/0003-Make-IPv6-configurable.patch b/package/rpcbind/0003-Make-IPv6-configurable.patch
new file mode 100644 (file)
index 0000000..0bb311c
--- /dev/null
@@ -0,0 +1,42 @@
+From 5a1826d116ae986cb464d3503e0ae9ceaba3a687 Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Date: Sat, 10 Nov 2012 22:24:56 +0100
+Subject: [PATCH] Make IPv6 configurable
+
+Add an autoconf check that verifies whether IPv6 is available or not,
+and define the INET6 macro if available, instead of hardcoding it in
+src/Makefile.am.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ Makefile.am  | 1 -
+ configure.in | 3 +++
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index d10c906..c983a3e 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -3,7 +3,6 @@ AM_CPPFLAGS = \
+       -DPORTMAP \
+       -DFACILITY=LOG_MAIL \
+       -DSEVERITY=LOG_INFO \
+-      -DINET6 \
+       -DRPCBIND_STATEDIR="\"$(statedir)\"" \
+       -DRPCBIND_USER="\"$(rpcuser)\"" \
+       -D_GNU_SOURCE \
+diff --git a/configure.ac b/configure.ac
+index 2b67720..f144c8e 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -36,4 +36,7 @@ AS_IF([test x$enable_libwrap = xyes], [
+ AC_SEARCH_LIBS([pthread_create], [pthread])
++AC_CHECK_HEADER(netinet/ip6.h,
++        AC_DEFINE(INET6, 1, [Define to 1 if IPv6 is available]))
++
+ AC_OUTPUT([Makefile])
+-- 
+2.0.0
+
diff --git a/package/rpcbind/rpcbind-0001-Remove-yellow-pages-support.patch b/package/rpcbind/rpcbind-0001-Remove-yellow-pages-support.patch
deleted file mode 100644 (file)
index e35828f..0000000
+++ /dev/null
@@ -1,56 +0,0 @@
-From 249e25c5cc675c212ca4e4a3342bff8f59285b1a Mon Sep 17 00:00:00 2001
-From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-Date: Sat, 10 Nov 2012 22:03:43 +0100
-Subject: [PATCH] Remove yellow pages support
-
-This support requires yellow pages support in libtirpc, which isn't
-available. As most Buildroot users are most likely never going to need
-such feature, get rid of it.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
----
- src/security.c | 18 ------------------
- 1 file changed, 18 deletions(-)
-
-diff --git a/src/security.c b/src/security.c
-index d272f74..8d5863c 100644
---- a/src/security.c
-+++ b/src/security.c
-@@ -23,9 +23,6 @@
- #include <rpcsvc/mount.h>
- #include <rpcsvc/rquota.h>
- #include <rpcsvc/nfs_prot.h>
--#include <rpcsvc/yp.h>
--#include <rpcsvc/ypclnt.h>
--#include <rpcsvc/yppasswd.h>
- #include "rpcbind.h"
-@@ -308,24 +305,9 @@ check_callit(SVCXPRT *xprt, struct r_rmtcall_args *args, int versnum /*__unused*
-                   args->rmt_proc != MOUNTPROC_UMNT)
-                       break;
-               goto deny;
--      case YPBINDPROG:
--              if (args->rmt_proc != YPBINDPROC_SETDOM)
--                      break;
--              /* FALLTHROUGH */
--      case YPPASSWDPROG:
-       case NFS_PROGRAM:
-       case RQUOTAPROG:
-               goto deny;
--      case YPPROG:
--              switch (args->rmt_proc) {
--              case YPPROC_ALL:
--              case YPPROC_MATCH:
--              case YPPROC_FIRST:
--              case YPPROC_NEXT:
--                      goto deny;
--              default:
--                      break;
--              }
-       default:
-               break;
-       }
--- 
-2.0.0
-
diff --git a/package/rpcbind/rpcbind-0003-Make-IPv6-configurable.patch b/package/rpcbind/rpcbind-0003-Make-IPv6-configurable.patch
deleted file mode 100644 (file)
index 0bb311c..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-From 5a1826d116ae986cb464d3503e0ae9ceaba3a687 Mon Sep 17 00:00:00 2001
-From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-Date: Sat, 10 Nov 2012 22:24:56 +0100
-Subject: [PATCH] Make IPv6 configurable
-
-Add an autoconf check that verifies whether IPv6 is available or not,
-and define the INET6 macro if available, instead of hardcoding it in
-src/Makefile.am.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
----
- Makefile.am  | 1 -
- configure.in | 3 +++
- 2 files changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/Makefile.am b/Makefile.am
-index d10c906..c983a3e 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -3,7 +3,6 @@ AM_CPPFLAGS = \
-       -DPORTMAP \
-       -DFACILITY=LOG_MAIL \
-       -DSEVERITY=LOG_INFO \
--      -DINET6 \
-       -DRPCBIND_STATEDIR="\"$(statedir)\"" \
-       -DRPCBIND_USER="\"$(rpcuser)\"" \
-       -D_GNU_SOURCE \
-diff --git a/configure.ac b/configure.ac
-index 2b67720..f144c8e 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -36,4 +36,7 @@ AS_IF([test x$enable_libwrap = xyes], [
- AC_SEARCH_LIBS([pthread_create], [pthread])
-+AC_CHECK_HEADER(netinet/ip6.h,
-+        AC_DEFINE(INET6, 1, [Define to 1 if IPv6 is available]))
-+
- AC_OUTPUT([Makefile])
--- 
-2.0.0
-
diff --git a/package/rpi-userland/0001-add-pkgconfig-files.patch b/package/rpi-userland/0001-add-pkgconfig-files.patch
new file mode 100644 (file)
index 0000000..e88f810
--- /dev/null
@@ -0,0 +1,82 @@
+Add .pc files for the OpenGLESv2, EGL and bcm_host libraries
+
+Those pkg-config files make it easier for Qt5 to find those libraries
+and the appropriate link flags.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+Index: b/interface/khronos/egl/egl.pc.in
+===================================================================
+--- /dev/null
++++ b/interface/khronos/egl/egl.pc.in
+@@ -0,0 +1,11 @@
++prefix=@CMAKE_INSTALL_PREFIX@
++exec_prefix=${prefix}
++libdir=${exec_prefix}/lib
++includedir=${prefix}/include
++
++Name: egl
++Description: RasberryPi implementation of EGL
++Version: 10
++Libs: -L${libdir} -lEGL -lGLESv2 -lbcm_host -lvchostif
++Cflags: -I${includedir}/ -I${includedir}/interface/vcos/pthreads/ \
++        -I${includedir}/interface/vmcs_host/linux/
+Index: b/interface/khronos/CMakeLists.txt
+===================================================================
+--- a/interface/khronos/CMakeLists.txt
++++ b/interface/khronos/CMakeLists.txt
+@@ -74,3 +74,11 @@
+ install(TARGETS EGL GLESv2 OpenVG WFC khrn_client DESTINATION lib)
+ install(TARGETS EGL_static GLESv2_static khrn_static DESTINATION lib)
++configure_file("${CMAKE_CURRENT_SOURCE_DIR}/egl/egl.pc.in"
++  "${CMAKE_CURRENT_BINARY_DIR}/egl/egl.pc" @ONLY)
++install(FILES "${CMAKE_CURRENT_BINARY_DIR}/egl/egl.pc"
++  DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/pkgconfig")
++configure_file("${CMAKE_CURRENT_SOURCE_DIR}/glxx/glesv2.pc.in"
++  "${CMAKE_CURRENT_BINARY_DIR}/glxx/glesv2.pc" @ONLY)
++install(FILES "${CMAKE_CURRENT_BINARY_DIR}/glxx/glesv2.pc"
++  DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/pkgconfig")
+Index: b/interface/khronos/glxx/glesv2.pc.in
+===================================================================
+--- /dev/null
++++ b/interface/khronos/glxx/glesv2.pc.in
+@@ -0,0 +1,10 @@
++prefix=@CMAKE_INSTALL_PREFIX@
++exec_prefix=${prefix}
++libdir=${exec_prefix}/lib
++includedir=${prefix}/include
++
++Name: glesv2
++Description: RasberryPi implementation of OpenGL ESv2
++Version: 2.0
++Libs: -L${libdir} -lGLESv2
++Cflags: -I${includedir}/
+Index: b/host_applications/linux/libs/bcm_host/CMakeLists.txt
+===================================================================
+--- a/host_applications/linux/libs/bcm_host/CMakeLists.txt
++++ b/host_applications/linux/libs/bcm_host/CMakeLists.txt
+@@ -20,3 +20,7 @@
+ install(TARGETS bcm_host DESTINATION lib)
++configure_file("${CMAKE_CURRENT_SOURCE_DIR}/bcm_host.pc.in"
++  "${CMAKE_CURRENT_BINARY_DIR}/bcm_host.pc" @ONLY)
++install(FILES "${CMAKE_CURRENT_BINARY_DIR}/bcm_host.pc"
++  DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/pkgconfig")
+Index: b/host_applications/linux/libs/bcm_host/bcm_host.pc.in
+===================================================================
+--- /dev/null
++++ b/host_applications/linux/libs/bcm_host/bcm_host.pc.in
+@@ -0,0 +1,10 @@
++prefix=/usr
++exec_prefix=${prefix}
++libdir=${exec_prefix}/lib
++includedir=${prefix}/include
++
++Name: bcm_host
++Description: Broadcom VideoCore host API library
++Version: 1
++Libs: -L${libdir} -lbcm_host -lvcos -lvchiq_arm
++Cflags: -I${includedir} -I${includedir}/interface/vmcs_host/linux -I${includedir}/interface/vcos/pthreads -DUSE_VCHIQ_ARM
diff --git a/package/rpi-userland/0002-makefiles-cmake-vmcs.cmake-allow-to-override-VMCS_IN.patch b/package/rpi-userland/0002-makefiles-cmake-vmcs.cmake-allow-to-override-VMCS_IN.patch
new file mode 100644 (file)
index 0000000..e54d29e
--- /dev/null
@@ -0,0 +1,26 @@
+From fec2560cfcb8d3398e4f1ccc3de7923365873676 Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Sat, 5 Jan 2013 16:04:55 +0100
+Subject: [PATCH] makefiles/cmake/vmcs.cmake: allow to override
+ VMCS_INSTALL_PREFIX
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+---
+ makefiles/cmake/vmcs.cmake | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/makefiles/cmake/vmcs.cmake b/makefiles/cmake/vmcs.cmake
+index 0f8641b..cc70cca 100644
+--- a/makefiles/cmake/vmcs.cmake
++++ b/makefiles/cmake/vmcs.cmake
+@@ -9,7 +9,7 @@ INCLUDE(CPack)
+ # Where shall we install?
+ if (ANDROID)
+   SET(VMCS_INSTALL_PREFIX "/vendor/brcm/islands" CACHE PATH "Prefix prepended to install directories" FORCE)
+-else()
++elseif(NOT DEFINED VMCS_INSTALL_PREFIX)
+   SET(VMCS_INSTALL_PREFIX "/opt/vc" CACHE PATH "Prefix prepended to install directories" FORCE)
+ endif()
+-- 
+1.8.1
diff --git a/package/rpi-userland/0003-remove-faulty-assert.patch b/package/rpi-userland/0003-remove-faulty-assert.patch
new file mode 100644 (file)
index 0000000..c23c43a
--- /dev/null
@@ -0,0 +1,21 @@
+interface: remove faulty assert() to make weston happy at runtime
+
+This was removed after a discussion on IRC with the weston guys
+('daniels' on irc.freenode.net/#wayland).
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+---
+Upstream status: no, will be pushed by weston guys later.
+If not, I'll do it.
+
+diff -durN rpi-userland-77d32cd.orig/interface/vmcs_host/vc_vchi_dispmanx.c rpi-userland-77d32cd/interface/vmcs_host/vc_vchi_dispmanx.c
+--- rpi-userland-77d32cd.orig/interface/vmcs_host/vc_vchi_dispmanx.c   2013-10-04 17:43:44.000000000 +0200
++++ rpi-userland-77d32cd/interface/vmcs_host/vc_vchi_dispmanx.c        2013-10-08 22:28:51.611433539 +0200
+@@ -1187,7 +1187,6 @@
+          continue;
+    
+       if(dispmanx_client.update_callback ) {
+-         vcos_assert( dispmanx_client.pending_update_handle == (DISPMANX_UPDATE_HANDLE_T) dispmanx_client.notify_buffer[1]);
+          dispmanx_client.update_callback((DISPMANX_UPDATE_HANDLE_T) dispmanx_client.notify_buffer[1], dispmanx_client.update_callback_param);
+       }
+    }
diff --git a/package/rpi-userland/0004-fix-musl-compile.patch b/package/rpi-userland/0004-fix-musl-compile.patch
new file mode 100644 (file)
index 0000000..f960482
--- /dev/null
@@ -0,0 +1,113 @@
+From 198d93fab0659f7a548329d742de8b3e27cfd977 Mon Sep 17 00:00:00 2001
+From: Maarten ter Huurne <maarten@treewalker.org>
+Date: Fri, 12 Sep 2014 18:28:51 +0200
+Subject: [PATCH] Combined musl compile fixes
+
+The individual patches and their descriptions can be found here:
+https://github.com/raspberrypi/userland/pull/201
+
+Upstream status: accepted (4333d6d)
+However, bumping to that revision is currently not an option since that
+also pulls in 66338d3 which breaks Weston:
+http://lists.busybox.net/pipermail/buildroot/2014-October/109309.html
+
+Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
+---
+ containers/CMakeLists.txt                                  | 2 +-
+ host_applications/linux/apps/hello_pi/CMakeLists.txt       | 2 +-
+ host_applications/linux/apps/hello_pi/libs/vgfont/Makefile | 1 -
+ interface/vcos/pthreads/vcos_platform.h                    | 3 ---
+ interface/vcos/pthreads/vcos_pthreads.c                    | 2 +-
+ interface/vmcs_host/linux/vcfilesys.c                      | 4 ++--
+ 6 files changed, 5 insertions(+), 9 deletions(-)
+
+diff --git a/containers/CMakeLists.txt b/containers/CMakeLists.txt
+index 721f74f..a29a885 100644
+--- a/containers/CMakeLists.txt
++++ b/containers/CMakeLists.txt
+@@ -13,7 +13,7 @@ add_definitions(-DDL_PATH_PREFIX="${VMCS_PLUGIN_DIR}/")
+ SET( GCC_COMPILER_FLAGS -Wall -g -O2 -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wcast-qual -Wwrite-strings -Wundef )
+ SET( GCC_COMPILER_FLAGS ${GCC_COMPILER_FLAGS} -Wextra )#-Wno-missing-field-initializers )
+-SET( GCC_COMPILER_FLAGS ${GCC_COMPILER_FLAGS} -D__STDC_VERSION__=199901L )
++SET( GCC_COMPILER_FLAGS ${GCC_COMPILER_FLAGS} -std=c99 -D_POSIX_C_SOURCE=199309L )
+ SET( GCC_COMPILER_FLAGS ${GCC_COMPILER_FLAGS} -Wno-missing-field-initializers )
+ SET( GCC_COMPILER_FLAGS ${GCC_COMPILER_FLAGS} -Wno-unused-value )
+diff --git a/host_applications/linux/apps/hello_pi/CMakeLists.txt b/host_applications/linux/apps/hello_pi/CMakeLists.txt
+index ab4dae3..f2c6aef 100644
+--- a/host_applications/linux/apps/hello_pi/CMakeLists.txt
++++ b/host_applications/linux/apps/hello_pi/CMakeLists.txt
+@@ -24,7 +24,7 @@ add_subdirectory(hello_teapot)
+ if(BUILD_FONT)
+ set(VGFONT_SRCS libs/vgfont/font.c libs/vgfont/vgft.c libs/vgfont/graphics.c)
+-set_source_files_properties(${VGFONT_SRCS} PROPERTIES COMPILE_DEFINITIONS "_HAVE_TIMER_T")
++set_source_files_properties(${VGFONT_SRCS} PROPERTIES COMPILE_DEFINITIONS)
+ add_library(vgfont ${VGFONT_SRCS})
+ add_subdirectory(hello_font)
+diff --git a/host_applications/linux/apps/hello_pi/libs/vgfont/Makefile b/host_applications/linux/apps/hello_pi/libs/vgfont/Makefile
+index d04fb08..1e2a22b 100755
+--- a/host_applications/linux/apps/hello_pi/libs/vgfont/Makefile
++++ b/host_applications/linux/apps/hello_pi/libs/vgfont/Makefile
+@@ -2,7 +2,6 @@ OBJS=font.o vgft.o graphics.o
+ LIB=libvgfont.a
+ INCLUDES+=-I$(SDKSTAGE)/usr/include/freetype2 -I$(SDKSTAGE)/usr/include -I$(SDKSTAGE)/usr/include/arm-linux-gnueabi
+-CFLAGS+=-D_HAVE_TIMER_T
+ include ../../Makefile.include
+diff --git a/interface/vcos/pthreads/vcos_platform.h b/interface/vcos/pthreads/vcos_platform.h
+index 468098b..2095e25 100755
+--- a/interface/vcos/pthreads/vcos_platform.h
++++ b/interface/vcos/pthreads/vcos_platform.h
+@@ -120,9 +120,6 @@ typedef struct
+ #define VCOS_ONCE_INIT        PTHREAD_ONCE_INIT
+-#if defined(__arm__) && !defined(_HAVE_TIMER_T) && !defined(ANDROID)
+-typedef __timer_t timer_t;
+-#endif
+ typedef struct VCOS_TIMER_T
+ {
+    pthread_t thread;                      /**< id of the timer thread */
+diff --git a/interface/vcos/pthreads/vcos_pthreads.c b/interface/vcos/pthreads/vcos_pthreads.c
+index 668f647..fdc8bc4 100644
+--- a/interface/vcos/pthreads/vcos_pthreads.c
++++ b/interface/vcos/pthreads/vcos_pthreads.c
+@@ -33,7 +33,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ #include <stdlib.h>
+ #include <stdio.h>
+ #include <sys/time.h>
+-#include <sys/param.h>
++#include <linux/param.h>
+ /* Cygwin doesn't always have prctl.h and it doesn't have PR_SET_NAME */
+ #if defined( __linux__ )
+diff --git a/interface/vmcs_host/linux/vcfilesys.c b/interface/vmcs_host/linux/vcfilesys.c
+index ab65e3e..53c7486 100644
+--- a/interface/vmcs_host/linux/vcfilesys.c
++++ b/interface/vmcs_host/linux/vcfilesys.c
+@@ -49,7 +49,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ #include <ctype.h>
+ #include <limits.h>
+-#if !defined(ANDROID) && !defined( __USE_FILE_OFFSET64 )
++#if defined(__GLIBC__) && !defined( __USE_FILE_OFFSET64 )
+ #error   "__USE_FILE_OFFSET64 isn't defined"
+ #endif
+@@ -916,7 +916,7 @@ int vc_hostfs_set_attr(const char *path, fattributes_t attr)
+    if (pathbuf)
+    {
+-      __mode_t mode = 0;
++      mode_t mode = 0;
+       struct stat sb;
+       backslash_to_slash(pathbuf);
+-- 
+1.8.4.5
+
diff --git a/package/rpi-userland/rpi-userland-000-add-pkgconfig-files.patch b/package/rpi-userland/rpi-userland-000-add-pkgconfig-files.patch
deleted file mode 100644 (file)
index e88f810..0000000
+++ /dev/null
@@ -1,82 +0,0 @@
-Add .pc files for the OpenGLESv2, EGL and bcm_host libraries
-
-Those pkg-config files make it easier for Qt5 to find those libraries
-and the appropriate link flags.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
-
-Index: b/interface/khronos/egl/egl.pc.in
-===================================================================
---- /dev/null
-+++ b/interface/khronos/egl/egl.pc.in
-@@ -0,0 +1,11 @@
-+prefix=@CMAKE_INSTALL_PREFIX@
-+exec_prefix=${prefix}
-+libdir=${exec_prefix}/lib
-+includedir=${prefix}/include
-+
-+Name: egl
-+Description: RasberryPi implementation of EGL
-+Version: 10
-+Libs: -L${libdir} -lEGL -lGLESv2 -lbcm_host -lvchostif
-+Cflags: -I${includedir}/ -I${includedir}/interface/vcos/pthreads/ \
-+        -I${includedir}/interface/vmcs_host/linux/
-Index: b/interface/khronos/CMakeLists.txt
-===================================================================
---- a/interface/khronos/CMakeLists.txt
-+++ b/interface/khronos/CMakeLists.txt
-@@ -74,3 +74,11 @@
- install(TARGETS EGL GLESv2 OpenVG WFC khrn_client DESTINATION lib)
- install(TARGETS EGL_static GLESv2_static khrn_static DESTINATION lib)
-+configure_file("${CMAKE_CURRENT_SOURCE_DIR}/egl/egl.pc.in"
-+  "${CMAKE_CURRENT_BINARY_DIR}/egl/egl.pc" @ONLY)
-+install(FILES "${CMAKE_CURRENT_BINARY_DIR}/egl/egl.pc"
-+  DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/pkgconfig")
-+configure_file("${CMAKE_CURRENT_SOURCE_DIR}/glxx/glesv2.pc.in"
-+  "${CMAKE_CURRENT_BINARY_DIR}/glxx/glesv2.pc" @ONLY)
-+install(FILES "${CMAKE_CURRENT_BINARY_DIR}/glxx/glesv2.pc"
-+  DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/pkgconfig")
-Index: b/interface/khronos/glxx/glesv2.pc.in
-===================================================================
---- /dev/null
-+++ b/interface/khronos/glxx/glesv2.pc.in
-@@ -0,0 +1,10 @@
-+prefix=@CMAKE_INSTALL_PREFIX@
-+exec_prefix=${prefix}
-+libdir=${exec_prefix}/lib
-+includedir=${prefix}/include
-+
-+Name: glesv2
-+Description: RasberryPi implementation of OpenGL ESv2
-+Version: 2.0
-+Libs: -L${libdir} -lGLESv2
-+Cflags: -I${includedir}/
-Index: b/host_applications/linux/libs/bcm_host/CMakeLists.txt
-===================================================================
---- a/host_applications/linux/libs/bcm_host/CMakeLists.txt
-+++ b/host_applications/linux/libs/bcm_host/CMakeLists.txt
-@@ -20,3 +20,7 @@
- install(TARGETS bcm_host DESTINATION lib)
-+configure_file("${CMAKE_CURRENT_SOURCE_DIR}/bcm_host.pc.in"
-+  "${CMAKE_CURRENT_BINARY_DIR}/bcm_host.pc" @ONLY)
-+install(FILES "${CMAKE_CURRENT_BINARY_DIR}/bcm_host.pc"
-+  DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/pkgconfig")
-Index: b/host_applications/linux/libs/bcm_host/bcm_host.pc.in
-===================================================================
---- /dev/null
-+++ b/host_applications/linux/libs/bcm_host/bcm_host.pc.in
-@@ -0,0 +1,10 @@
-+prefix=/usr
-+exec_prefix=${prefix}
-+libdir=${exec_prefix}/lib
-+includedir=${prefix}/include
-+
-+Name: bcm_host
-+Description: Broadcom VideoCore host API library
-+Version: 1
-+Libs: -L${libdir} -lbcm_host -lvcos -lvchiq_arm
-+Cflags: -I${includedir} -I${includedir}/interface/vmcs_host/linux -I${includedir}/interface/vcos/pthreads -DUSE_VCHIQ_ARM
diff --git a/package/rpi-userland/rpi-userland-001-makefiles-cmake-vmcs.cmake-allow-to-override-VMCS_IN.patch b/package/rpi-userland/rpi-userland-001-makefiles-cmake-vmcs.cmake-allow-to-override-VMCS_IN.patch
deleted file mode 100644 (file)
index e54d29e..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-From fec2560cfcb8d3398e4f1ccc3de7923365873676 Mon Sep 17 00:00:00 2001
-From: Samuel Martin <s.martin49@gmail.com>
-Date: Sat, 5 Jan 2013 16:04:55 +0100
-Subject: [PATCH] makefiles/cmake/vmcs.cmake: allow to override
- VMCS_INSTALL_PREFIX
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
----
- makefiles/cmake/vmcs.cmake | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/makefiles/cmake/vmcs.cmake b/makefiles/cmake/vmcs.cmake
-index 0f8641b..cc70cca 100644
---- a/makefiles/cmake/vmcs.cmake
-+++ b/makefiles/cmake/vmcs.cmake
-@@ -9,7 +9,7 @@ INCLUDE(CPack)
- # Where shall we install?
- if (ANDROID)
-   SET(VMCS_INSTALL_PREFIX "/vendor/brcm/islands" CACHE PATH "Prefix prepended to install directories" FORCE)
--else()
-+elseif(NOT DEFINED VMCS_INSTALL_PREFIX)
-   SET(VMCS_INSTALL_PREFIX "/opt/vc" CACHE PATH "Prefix prepended to install directories" FORCE)
- endif()
--- 
-1.8.1
diff --git a/package/rpi-userland/rpi-userland-002-remove-faulty-assert.patch b/package/rpi-userland/rpi-userland-002-remove-faulty-assert.patch
deleted file mode 100644 (file)
index c23c43a..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-interface: remove faulty assert() to make weston happy at runtime
-
-This was removed after a discussion on IRC with the weston guys
-('daniels' on irc.freenode.net/#wayland).
-
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
----
-Upstream status: no, will be pushed by weston guys later.
-If not, I'll do it.
-
-diff -durN rpi-userland-77d32cd.orig/interface/vmcs_host/vc_vchi_dispmanx.c rpi-userland-77d32cd/interface/vmcs_host/vc_vchi_dispmanx.c
---- rpi-userland-77d32cd.orig/interface/vmcs_host/vc_vchi_dispmanx.c   2013-10-04 17:43:44.000000000 +0200
-+++ rpi-userland-77d32cd/interface/vmcs_host/vc_vchi_dispmanx.c        2013-10-08 22:28:51.611433539 +0200
-@@ -1187,7 +1187,6 @@
-          continue;
-    
-       if(dispmanx_client.update_callback ) {
--         vcos_assert( dispmanx_client.pending_update_handle == (DISPMANX_UPDATE_HANDLE_T) dispmanx_client.notify_buffer[1]);
-          dispmanx_client.update_callback((DISPMANX_UPDATE_HANDLE_T) dispmanx_client.notify_buffer[1], dispmanx_client.update_callback_param);
-       }
-    }
diff --git a/package/rpi-userland/rpi-userland-003-fix-musl-compile.patch b/package/rpi-userland/rpi-userland-003-fix-musl-compile.patch
deleted file mode 100644 (file)
index f960482..0000000
+++ /dev/null
@@ -1,113 +0,0 @@
-From 198d93fab0659f7a548329d742de8b3e27cfd977 Mon Sep 17 00:00:00 2001
-From: Maarten ter Huurne <maarten@treewalker.org>
-Date: Fri, 12 Sep 2014 18:28:51 +0200
-Subject: [PATCH] Combined musl compile fixes
-
-The individual patches and their descriptions can be found here:
-https://github.com/raspberrypi/userland/pull/201
-
-Upstream status: accepted (4333d6d)
-However, bumping to that revision is currently not an option since that
-also pulls in 66338d3 which breaks Weston:
-http://lists.busybox.net/pipermail/buildroot/2014-October/109309.html
-
-Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
----
- containers/CMakeLists.txt                                  | 2 +-
- host_applications/linux/apps/hello_pi/CMakeLists.txt       | 2 +-
- host_applications/linux/apps/hello_pi/libs/vgfont/Makefile | 1 -
- interface/vcos/pthreads/vcos_platform.h                    | 3 ---
- interface/vcos/pthreads/vcos_pthreads.c                    | 2 +-
- interface/vmcs_host/linux/vcfilesys.c                      | 4 ++--
- 6 files changed, 5 insertions(+), 9 deletions(-)
-
-diff --git a/containers/CMakeLists.txt b/containers/CMakeLists.txt
-index 721f74f..a29a885 100644
---- a/containers/CMakeLists.txt
-+++ b/containers/CMakeLists.txt
-@@ -13,7 +13,7 @@ add_definitions(-DDL_PATH_PREFIX="${VMCS_PLUGIN_DIR}/")
- SET( GCC_COMPILER_FLAGS -Wall -g -O2 -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wcast-qual -Wwrite-strings -Wundef )
- SET( GCC_COMPILER_FLAGS ${GCC_COMPILER_FLAGS} -Wextra )#-Wno-missing-field-initializers )
--SET( GCC_COMPILER_FLAGS ${GCC_COMPILER_FLAGS} -D__STDC_VERSION__=199901L )
-+SET( GCC_COMPILER_FLAGS ${GCC_COMPILER_FLAGS} -std=c99 -D_POSIX_C_SOURCE=199309L )
- SET( GCC_COMPILER_FLAGS ${GCC_COMPILER_FLAGS} -Wno-missing-field-initializers )
- SET( GCC_COMPILER_FLAGS ${GCC_COMPILER_FLAGS} -Wno-unused-value )
-diff --git a/host_applications/linux/apps/hello_pi/CMakeLists.txt b/host_applications/linux/apps/hello_pi/CMakeLists.txt
-index ab4dae3..f2c6aef 100644
---- a/host_applications/linux/apps/hello_pi/CMakeLists.txt
-+++ b/host_applications/linux/apps/hello_pi/CMakeLists.txt
-@@ -24,7 +24,7 @@ add_subdirectory(hello_teapot)
- if(BUILD_FONT)
- set(VGFONT_SRCS libs/vgfont/font.c libs/vgfont/vgft.c libs/vgfont/graphics.c)
--set_source_files_properties(${VGFONT_SRCS} PROPERTIES COMPILE_DEFINITIONS "_HAVE_TIMER_T")
-+set_source_files_properties(${VGFONT_SRCS} PROPERTIES COMPILE_DEFINITIONS)
- add_library(vgfont ${VGFONT_SRCS})
- add_subdirectory(hello_font)
-diff --git a/host_applications/linux/apps/hello_pi/libs/vgfont/Makefile b/host_applications/linux/apps/hello_pi/libs/vgfont/Makefile
-index d04fb08..1e2a22b 100755
---- a/host_applications/linux/apps/hello_pi/libs/vgfont/Makefile
-+++ b/host_applications/linux/apps/hello_pi/libs/vgfont/Makefile
-@@ -2,7 +2,6 @@ OBJS=font.o vgft.o graphics.o
- LIB=libvgfont.a
- INCLUDES+=-I$(SDKSTAGE)/usr/include/freetype2 -I$(SDKSTAGE)/usr/include -I$(SDKSTAGE)/usr/include/arm-linux-gnueabi
--CFLAGS+=-D_HAVE_TIMER_T
- include ../../Makefile.include
-diff --git a/interface/vcos/pthreads/vcos_platform.h b/interface/vcos/pthreads/vcos_platform.h
-index 468098b..2095e25 100755
---- a/interface/vcos/pthreads/vcos_platform.h
-+++ b/interface/vcos/pthreads/vcos_platform.h
-@@ -120,9 +120,6 @@ typedef struct
- #define VCOS_ONCE_INIT        PTHREAD_ONCE_INIT
--#if defined(__arm__) && !defined(_HAVE_TIMER_T) && !defined(ANDROID)
--typedef __timer_t timer_t;
--#endif
- typedef struct VCOS_TIMER_T
- {
-    pthread_t thread;                      /**< id of the timer thread */
-diff --git a/interface/vcos/pthreads/vcos_pthreads.c b/interface/vcos/pthreads/vcos_pthreads.c
-index 668f647..fdc8bc4 100644
---- a/interface/vcos/pthreads/vcos_pthreads.c
-+++ b/interface/vcos/pthreads/vcos_pthreads.c
-@@ -33,7 +33,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- #include <stdlib.h>
- #include <stdio.h>
- #include <sys/time.h>
--#include <sys/param.h>
-+#include <linux/param.h>
- /* Cygwin doesn't always have prctl.h and it doesn't have PR_SET_NAME */
- #if defined( __linux__ )
-diff --git a/interface/vmcs_host/linux/vcfilesys.c b/interface/vmcs_host/linux/vcfilesys.c
-index ab65e3e..53c7486 100644
---- a/interface/vmcs_host/linux/vcfilesys.c
-+++ b/interface/vmcs_host/linux/vcfilesys.c
-@@ -49,7 +49,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- #include <ctype.h>
- #include <limits.h>
--#if !defined(ANDROID) && !defined( __USE_FILE_OFFSET64 )
-+#if defined(__GLIBC__) && !defined( __USE_FILE_OFFSET64 )
- #error   "__USE_FILE_OFFSET64 isn't defined"
- #endif
-@@ -916,7 +916,7 @@ int vc_hostfs_set_attr(const char *path, fattributes_t attr)
-    if (pathbuf)
-    {
--      __mode_t mode = 0;
-+      mode_t mode = 0;
-       struct stat sb;
-       backslash_to_slash(pathbuf);
--- 
-1.8.4.5
-
diff --git a/package/rpm/0001-uclibc-no-lfs-fix.patch b/package/rpm/0001-uclibc-no-lfs-fix.patch
new file mode 100644 (file)
index 0000000..00d0579
--- /dev/null
@@ -0,0 +1,22 @@
+[PATCH] rpm: fix build on uClibc with !LFS
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ rpmio/fts.c |    4 ++++
+ 1 file changed, 4 insertions(+)
+
+Index: rpm-5.2.0/rpmio/fts.c
+===================================================================
+--- rpm-5.2.0.orig/rpmio/fts.c
++++ rpm-5.2.0/rpmio/fts.c
+@@ -47,6 +47,10 @@ static char sccsid[] = "@(#)fts.c   8.6 (B
+ #else
+ #if defined(__UCLIBC__)
+ #   define __fxstat64(_stat_ver, _fd, _sbp)    fstat((_fd), (_sbp))
++#   include <features.h>
++#   ifndef __UCLIBC_HAS_LFS__
++#     define stat64 stat
++#   endif
+ #endif
+ #if defined(hpux) || defined(__hpux)
+ # define        _INCLUDE_POSIX_SOURCE
diff --git a/package/rpm/0002-depends-fix.patch b/package/rpm/0002-depends-fix.patch
new file mode 100644 (file)
index 0000000..4a92775
--- /dev/null
@@ -0,0 +1,19 @@
+Bugfix included upstream
+
+diff -u --new-file --recursive rpm-5.2.0_vanilla/lib/depends.c rpm-5.2.0_depends-fix/lib/depends.c
+--- rpm-5.2.0_vanilla/lib/depends.c    2009-05-23 01:23:46.000000000 +0000
++++ rpm-5.2.0_depends-fix/lib/depends.c        2009-09-22 06:33:37.950783501 +0000
+@@ -2371,11 +2371,11 @@
+       memset(selected, 0, sizeof(*selected) * ts->orderCount);
+-      if ((requires = rpmteDS(p, RPMTAG_REQUIRENAME)) != NULL) {
+-
+       /* Avoid narcisstic relations. */
+       selected[rpmtsiOc(pi)] = 1;
++      if ((requires = rpmteDS(p, RPMTAG_REQUIRENAME)) != NULL) {
++
+       /* T2. Next "q <- p" relation. */
+       /* First, do pre-requisites. */
diff --git a/package/rpm/0003-exclude-some-tools.patch b/package/rpm/0003-exclude-some-tools.patch
new file mode 100644 (file)
index 0000000..2cbc7cb
--- /dev/null
@@ -0,0 +1,30 @@
+diff -ru rpm-5.2.0_vanilla/tools/Makefile.am rpm-5.2.0_exclude-some-tools/tools/Makefile.am
+--- rpm-5.2.0_vanilla/tools/Makefile.am        2009-06-03 01:24:42.000000000 +0000
++++ rpm-5.2.0_exclude-some-tools/tools/Makefile.am     2009-12-20 07:47:13.000000000 +0000
+@@ -45,9 +45,7 @@
+ bin_PROGRAMS =                rpm2cpio
+ pkgbindir =           @USRLIBRPM@/bin
+-pkgbin_PROGRAMS =     \
+-      rpmcache rpmdigest grep mtree rpmrepo rpmspecdump wget \
+-      rpmcmp rpmdeps @WITH_KEYUTILS_RPMKEY@ @WITH_LIBELF_DEBUGEDIT@
++pkgbin_PROGRAMS =     
+ dist_man_MANS =               rpmgrep.1
+ debugedit_SOURCES =   debugedit.c hashtab.c
+diff -ru rpm-5.2.0_vanilla/tools/Makefile.in rpm-5.2.0_exclude-some-tools/tools/Makefile.in
+--- rpm-5.2.0_vanilla/tools/Makefile.in        2009-07-07 21:14:06.000000000 +0000
++++ rpm-5.2.0_exclude-some-tools/tools/Makefile.in     2009-12-20 07:47:37.000000000 +0000
+@@ -39,11 +39,7 @@
+ target_triplet = @target@
+ EXTRA_PROGRAMS = rpmkey$(EXEEXT) debugedit$(EXEEXT)
+ bin_PROGRAMS = rpm2cpio$(EXEEXT)
+-pkgbin_PROGRAMS = rpmcache$(EXEEXT) rpmdigest$(EXEEXT) grep$(EXEEXT) \
+-      mtree$(EXEEXT) rpmrepo$(EXEEXT) rpmspecdump$(EXEEXT) \
+-      wget$(EXEEXT) rpmcmp$(EXEEXT) rpmdeps$(EXEEXT) \
+-      @WITH_KEYUTILS_RPMKEY@ @WITH_LIBELF_DEBUGEDIT@ $(am__EXEEXT_1) \
+-      $(am__EXEEXT_2)
++pkgbin_PROGRAMS = 
+ @WITH_XAR_TRUE@am__append_1 = txar
+ @WITH_DB_INTERNAL_TRUE@@WITH_DB_TOOLS_INTEGRATED_TRUE@am__append_2 = db_tool
+ @WITH_DB_INTERNAL_TRUE@@WITH_DB_RPC_TRUE@@WITH_DB_TOOLS_INTEGRATED_TRUE@am__append_3 = \
diff --git a/package/rpm/0004-ignore-shared-mutexes.patch b/package/rpm/0004-ignore-shared-mutexes.patch
new file mode 100644 (file)
index 0000000..f19d6b6
--- /dev/null
@@ -0,0 +1,12 @@
+diff -ru rpm-5.2.0_vanilla/db/env/env_open.c rpm-5.2.0_test/db/env/env_open.c
+--- rpm-5.2.0_vanilla/db/env/env_open.c        2008-05-28 01:23:27.000000000 +0000
++++ rpm-5.2.0_test/db/env/env_open.c   2009-12-24 14:54:55.000000000 +0000
+@@ -124,7 +124,7 @@
+               }
+       }
+-#ifdef HAVE_MUTEX_THREAD_ONLY
++#ifdef NK_HAVE_MUTEX_THREAD_ONLY
+       /*
+        * Currently we support one kind of mutex that is intra-process only,
+        * POSIX 1003.1 pthreads, because a variety of systems don't support
diff --git a/package/rpm/0005-no-parentdirs.patch b/package/rpm/0005-no-parentdirs.patch
new file mode 100644 (file)
index 0000000..d05c99a
--- /dev/null
@@ -0,0 +1,14 @@
+Reduce parentdirs we use, parentdirs are used for ordering
+Included upstream
+diff -u --new-file --recursive rpm-5.1.9_vanilla/lib/depends.c rpm-5.1.9_no-parentdirs/lib/depends.c
+--- rpm-5.1.9_vanilla/lib/depends.c    2009-04-12 19:46:17.000000000 +0000
++++ rpm-5.1.9_no-parentdirs/lib/depends.c      2009-06-13 15:21:43.504999639 +0000
+@@ -2257,7 +2257,7 @@
+ #define isAuto(_x)    ((_x) & _autobits)
+ /*@unchecked@*/
+-static int slashDepth = 100;  /* #slashes pemitted in parentdir deps. */
++static int slashDepth = 2;    /* #slashes pemitted in parentdir deps. */
+ static int countSlashes(const char * dn)
+       /*@*/
diff --git a/package/rpm/0006-ordering-fix.patch b/package/rpm/0006-ordering-fix.patch
new file mode 100644 (file)
index 0000000..a618e1f
--- /dev/null
@@ -0,0 +1,45 @@
+Included upstream
+--- x/lib/depends.c    2009/05/15 13:40:58     1.445
++++ y/lib/depends.c    2009/08/22 22:12:02     1.446
+@@ -2216,9 +2216,6 @@
+ {
+     rpmte q, qprev;
+-    /* Mark the package as queued. */
+-    rpmteTSI(p)->tsi_queued = 1;
+-
+     if ((*rp) == NULL) {      /* 1st element */
+       /*@-dependenttrans@*/ /* FIX: double indirection */
+       (*rp) = (*qp) = p;
+@@ -2238,6 +2235,12 @@
+       /* XXX Insure removed after added. */
+       if (rpmteType(p) == TR_REMOVED && rpmteType(p) != rpmteType(q))
+           continue;
++
++      /* XXX Follow all previous generations in the queue. */
++      if (rpmteTSI(p)->tsi_queued > rpmteTSI(q)->tsi_queued)
++          continue;
++
++      /* XXX Within a generation, queue behind more "important". */
+       if (rpmteTSI(q)->tsi_qcnt <= rpmteTSI(p)->tsi_qcnt)
+           break;
+     }
+@@ -2521,6 +2524,9 @@
+       if (rpmteTSI(p)->tsi_count != 0)
+           continue;
++
++      /* Mark the package as queued. */
++      rpmteTSI(p)->tsi_queued = orderingCount + 1;
+       rpmteTSI(p)->tsi_suc = NULL;
+       addQ(p, &q, &r, prefcolor);
+       qlen++;
+@@ -2584,6 +2590,8 @@
+               (void) rpmteSetParent(p, q);
+               (void) rpmteSetDegree(q, rpmteDegree(q)+1);
++              /* Mark the package as queued. */
++              rpmteTSI(p)->tsi_queued = orderingCount + 1;
+               /* XXX TODO: add control bit. */
+               rpmteTSI(p)->tsi_suc = NULL;
+ /*@-nullstate@*/      /* XXX FIX: rpmteTSI(q)->tsi_suc can be NULL. */
diff --git a/package/rpm/0007-parentdir-vs-requires.patch b/package/rpm/0007-parentdir-vs-requires.patch
new file mode 100644 (file)
index 0000000..309ab25
--- /dev/null
@@ -0,0 +1,37 @@
+Avoid looking up files or directories that this package provides
+Included upstream
+diff -u --new-file --recursive rpm-5.2.0_vanilla/lib/depends.c rpm-5.2.0_parentdir-vs-requires/lib/depends.c
+--- rpm-5.2.0_vanilla/lib/depends.c    2009-05-23 01:23:46.000000000 +0000
++++ rpm-5.2.0_parentdir-vs-requires/lib/depends.c      2009-09-22 17:00:24.880956271 +0000
+@@ -2095,6 +2095,7 @@
+     rpmtsi qi; rpmte q;
+     tsortInfo tsi;
+     nsType NSType = rpmdsNSType(requires);
++    const char * N = rpmdsN(requires);
+     fnpyKey key;
+     int teType = rpmteType(p);
+     alKey pkgKey;
+@@ -2128,6 +2129,23 @@
+       break;
+     }
++    /* Avoid looking up files/directories that are "owned" by _THIS_ package. */
++    if (*N == '/') {
++    rpmfi fi = rpmteFI(p, RPMTAG_BASENAMES);
++    int bingo = 0;
++
++    fi = rpmfiInit(fi, 0);
++    while (rpmfiNext(fi) >= 0) {
++        const char * fn = rpmfiFN(fi);
++        if (strcmp(N, fn))
++        continue;
++        bingo = 1;
++        break;
++    }
++    if (bingo)
++        return 0;
++    }
++
+     pkgKey = RPMAL_NOMATCH;
+     key = rpmalSatisfiesDepend(al, requires, &pkgKey);
diff --git a/package/rpm/0008-short-circuit-c99.patch b/package/rpm/0008-short-circuit-c99.patch
new file mode 100644 (file)
index 0000000..5d7b53a
--- /dev/null
@@ -0,0 +1,235 @@
+Buildroot specific
+diff -ru rpm-5.1.9_vanilla/xz/configure rpm-5.1.9_short-circuit-c99/xz/configure
+--- rpm-5.1.9_vanilla/xz/configure     2009-04-18 16:47:23.000000000 +0000
++++ rpm-5.1.9_short-circuit-c99/xz/configure   2009-08-04 08:25:59.000000000 +0000
+@@ -4970,214 +4970,7 @@
+   am__fastdepCC_FALSE=
+ fi
+-
+-   { $as_echo "$as_me:$LINENO: checking for $CC option to accept ISO C99" >&5
+-$as_echo_n "checking for $CC option to accept ISO C99... " >&6; }
+-if test "${ac_cv_prog_cc_c99+set}" = set; then
+-  $as_echo_n "(cached) " >&6
+-else
+-  ac_cv_prog_cc_c99=no
+-ac_save_CC=$CC
+-cat >conftest.$ac_ext <<_ACEOF
+-/* confdefs.h.  */
+-_ACEOF
+-cat confdefs.h >>conftest.$ac_ext
+-cat >>conftest.$ac_ext <<_ACEOF
+-/* end confdefs.h.  */
+-#include <stdarg.h>
+-#include <stdbool.h>
+-#include <stdlib.h>
+-#include <wchar.h>
+-#include <stdio.h>
+-
+-// Check varargs macros.  These examples are taken from C99 6.10.3.5.
+-#define debug(...) fprintf (stderr, __VA_ARGS__)
+-#define showlist(...) puts (#__VA_ARGS__)
+-#define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__))
+-static void
+-test_varargs_macros (void)
+-{
+-  int x = 1234;
+-  int y = 5678;
+-  debug ("Flag");
+-  debug ("X = %d\n", x);
+-  showlist (The first, second, and third items.);
+-  report (x>y, "x is %d but y is %d", x, y);
+-}
+-
+-// Check long long types.
+-#define BIG64 18446744073709551615ull
+-#define BIG32 4294967295ul
+-#define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0)
+-#if !BIG_OK
+-  your preprocessor is broken;
+-#endif
+-#if BIG_OK
+-#else
+-  your preprocessor is broken;
+-#endif
+-static long long int bignum = -9223372036854775807LL;
+-static unsigned long long int ubignum = BIG64;
+-
+-struct incomplete_array
+-{
+-  int datasize;
+-  double data[];
+-};
+-
+-struct named_init {
+-  int number;
+-  const wchar_t *name;
+-  double average;
+-};
+-
+-typedef const char *ccp;
+-
+-static inline int
+-test_restrict (ccp restrict text)
+-{
+-  // See if C++-style comments work.
+-  // Iterate through items via the restricted pointer.
+-  // Also check for declarations in for loops.
+-  for (unsigned int i = 0; *(text+i) != '\0'; ++i)
+-    continue;
+-  return 0;
+-}
+-
+-// Check varargs and va_copy.
+-static void
+-test_varargs (const char *format, ...)
+-{
+-  va_list args;
+-  va_start (args, format);
+-  va_list args_copy;
+-  va_copy (args_copy, args);
+-
+-  const char *str;
+-  int number;
+-  float fnumber;
+-
+-  while (*format)
+-    {
+-      switch (*format++)
+-      {
+-      case 's': // string
+-        str = va_arg (args_copy, const char *);
+-        break;
+-      case 'd': // int
+-        number = va_arg (args_copy, int);
+-        break;
+-      case 'f': // float
+-        fnumber = va_arg (args_copy, double);
+-        break;
+-      default:
+-        break;
+-      }
+-    }
+-  va_end (args_copy);
+-  va_end (args);
+-}
+-
+-int
+-main ()
+-{
+-
+-  // Check bool.
+-  _Bool success = false;
+-
+-  // Check restrict.
+-  if (test_restrict ("String literal") == 0)
+-    success = true;
+-  char *restrict newvar = "Another string";
+-
+-  // Check varargs.
+-  test_varargs ("s, d' f .", "string", 65, 34.234);
+-  test_varargs_macros ();
+-
+-  // Check flexible array members.
+-  struct incomplete_array *ia =
+-    malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10));
+-  ia->datasize = 10;
+-  for (int i = 0; i < ia->datasize; ++i)
+-    ia->data[i] = i * 1.234;
+-
+-  // Check named initializers.
+-  struct named_init ni = {
+-    .number = 34,
+-    .name = L"Test wide string",
+-    .average = 543.34343,
+-  };
+-
+-  ni.number = 58;
+-
+-  int dynamic_array[ni.number];
+-  dynamic_array[ni.number - 1] = 543;
+-
+-  // work around unused variable warnings
+-  return (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x'
+-        || dynamic_array[ni.number - 1] != 543);
+-
+-  ;
+-  return 0;
+-}
+-_ACEOF
+-for ac_arg in '' -std=gnu99 -std=c99 -c99 -AC99 -xc99=all -qlanglvl=extc99
+-do
+-  CC="$ac_save_CC $ac_arg"
+-  rm -f conftest.$ac_objext
+-if { (ac_try="$ac_compile"
+-case "(($ac_try" in
+-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+-  *) ac_try_echo=$ac_try;;
+-esac
+-eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
+-$as_echo "$ac_try_echo") >&5
+-  (eval "$ac_compile") 2>conftest.er1
+-  ac_status=$?
+-  grep -v '^ *+' conftest.er1 >conftest.err
+-  rm -f conftest.er1
+-  cat conftest.err >&5
+-  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
+-  (exit $ac_status); } && {
+-       test -z "$ac_c_werror_flag" ||
+-       test ! -s conftest.err
+-       } && test -s conftest.$ac_objext; then
+-  ac_cv_prog_cc_c99=$ac_arg
+-else
+-  $as_echo "$as_me: failed program was:" >&5
+-sed 's/^/| /' conftest.$ac_ext >&5
+-
+-
+-fi
+-
+-rm -f core conftest.err conftest.$ac_objext
+-  test "x$ac_cv_prog_cc_c99" != "xno" && break
+-done
+-rm -f conftest.$ac_ext
+-CC=$ac_save_CC
+-
+-fi
+-# AC_CACHE_VAL
+-case "x$ac_cv_prog_cc_c99" in
+-  x)
+-    { $as_echo "$as_me:$LINENO: result: none needed" >&5
+-$as_echo "none needed" >&6; } ;;
+-  xno)
+-    { $as_echo "$as_me:$LINENO: result: unsupported" >&5
+-$as_echo "unsupported" >&6; } ;;
+-  *)
+-    CC="$CC $ac_cv_prog_cc_c99"
+-    { $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c99" >&5
+-$as_echo "$ac_cv_prog_cc_c99" >&6; } ;;
+-esac
+-
+-
+-
+-if test x$ac_cv_prog_cc_c99 = xno ; then
+-      { { $as_echo "$as_me:$LINENO: error: No C99 compiler was found." >&5
+-$as_echo "$as_me: error: No C99 compiler was found." >&2;}
+-   { (exit 1); exit 1; }; }
+-fi
++CC="$CC -std=c99"
+ if test "x$CC" != xcc; then
+   { $as_echo "$as_me:$LINENO: checking whether $CC and cc understand -c and -o together" >&5
+diff -ru rpm-5.1.9_vanilla/xz/configure.ac rpm-5.1.9_short-circuit-c99/xz/configure.ac
+--- rpm-5.1.9_vanilla/xz/configure.ac  2009-02-16 17:07:46.000000000 +0000
++++ rpm-5.1.9_short-circuit-c99/xz/configure.ac        2009-08-04 08:25:28.000000000 +0000
+@@ -402,10 +402,7 @@
+ AM_INIT_AUTOMAKE([1.10 foreign tar-v7 filename-length-max=99])
+ AC_PROG_LN_S
+-AC_PROG_CC_C99
+-if test x$ac_cv_prog_cc_c99 = xno ; then
+-      AC_MSG_ERROR([No C99 compiler was found.])
+-fi
++CC="$CC -std=c99"
+ AM_PROG_CC_C_O
+ AM_PROG_AS
diff --git a/package/rpm/rpm-5.2.0-uclibc-no-lfs-fix.patch b/package/rpm/rpm-5.2.0-uclibc-no-lfs-fix.patch
deleted file mode 100644 (file)
index 00d0579..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-[PATCH] rpm: fix build on uClibc with !LFS
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- rpmio/fts.c |    4 ++++
- 1 file changed, 4 insertions(+)
-
-Index: rpm-5.2.0/rpmio/fts.c
-===================================================================
---- rpm-5.2.0.orig/rpmio/fts.c
-+++ rpm-5.2.0/rpmio/fts.c
-@@ -47,6 +47,10 @@ static char sccsid[] = "@(#)fts.c   8.6 (B
- #else
- #if defined(__UCLIBC__)
- #   define __fxstat64(_stat_ver, _fd, _sbp)    fstat((_fd), (_sbp))
-+#   include <features.h>
-+#   ifndef __UCLIBC_HAS_LFS__
-+#     define stat64 stat
-+#   endif
- #endif
- #if defined(hpux) || defined(__hpux)
- # define        _INCLUDE_POSIX_SOURCE
diff --git a/package/rpm/rpm-5.2.0_depends-fix.patch b/package/rpm/rpm-5.2.0_depends-fix.patch
deleted file mode 100644 (file)
index 4a92775..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-Bugfix included upstream
-
-diff -u --new-file --recursive rpm-5.2.0_vanilla/lib/depends.c rpm-5.2.0_depends-fix/lib/depends.c
---- rpm-5.2.0_vanilla/lib/depends.c    2009-05-23 01:23:46.000000000 +0000
-+++ rpm-5.2.0_depends-fix/lib/depends.c        2009-09-22 06:33:37.950783501 +0000
-@@ -2371,11 +2371,11 @@
-       memset(selected, 0, sizeof(*selected) * ts->orderCount);
--      if ((requires = rpmteDS(p, RPMTAG_REQUIRENAME)) != NULL) {
--
-       /* Avoid narcisstic relations. */
-       selected[rpmtsiOc(pi)] = 1;
-+      if ((requires = rpmteDS(p, RPMTAG_REQUIRENAME)) != NULL) {
-+
-       /* T2. Next "q <- p" relation. */
-       /* First, do pre-requisites. */
diff --git a/package/rpm/rpm-5.2.0_exclude-some-tools.patch b/package/rpm/rpm-5.2.0_exclude-some-tools.patch
deleted file mode 100644 (file)
index 2cbc7cb..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-diff -ru rpm-5.2.0_vanilla/tools/Makefile.am rpm-5.2.0_exclude-some-tools/tools/Makefile.am
---- rpm-5.2.0_vanilla/tools/Makefile.am        2009-06-03 01:24:42.000000000 +0000
-+++ rpm-5.2.0_exclude-some-tools/tools/Makefile.am     2009-12-20 07:47:13.000000000 +0000
-@@ -45,9 +45,7 @@
- bin_PROGRAMS =                rpm2cpio
- pkgbindir =           @USRLIBRPM@/bin
--pkgbin_PROGRAMS =     \
--      rpmcache rpmdigest grep mtree rpmrepo rpmspecdump wget \
--      rpmcmp rpmdeps @WITH_KEYUTILS_RPMKEY@ @WITH_LIBELF_DEBUGEDIT@
-+pkgbin_PROGRAMS =     
- dist_man_MANS =               rpmgrep.1
- debugedit_SOURCES =   debugedit.c hashtab.c
-diff -ru rpm-5.2.0_vanilla/tools/Makefile.in rpm-5.2.0_exclude-some-tools/tools/Makefile.in
---- rpm-5.2.0_vanilla/tools/Makefile.in        2009-07-07 21:14:06.000000000 +0000
-+++ rpm-5.2.0_exclude-some-tools/tools/Makefile.in     2009-12-20 07:47:37.000000000 +0000
-@@ -39,11 +39,7 @@
- target_triplet = @target@
- EXTRA_PROGRAMS = rpmkey$(EXEEXT) debugedit$(EXEEXT)
- bin_PROGRAMS = rpm2cpio$(EXEEXT)
--pkgbin_PROGRAMS = rpmcache$(EXEEXT) rpmdigest$(EXEEXT) grep$(EXEEXT) \
--      mtree$(EXEEXT) rpmrepo$(EXEEXT) rpmspecdump$(EXEEXT) \
--      wget$(EXEEXT) rpmcmp$(EXEEXT) rpmdeps$(EXEEXT) \
--      @WITH_KEYUTILS_RPMKEY@ @WITH_LIBELF_DEBUGEDIT@ $(am__EXEEXT_1) \
--      $(am__EXEEXT_2)
-+pkgbin_PROGRAMS = 
- @WITH_XAR_TRUE@am__append_1 = txar
- @WITH_DB_INTERNAL_TRUE@@WITH_DB_TOOLS_INTEGRATED_TRUE@am__append_2 = db_tool
- @WITH_DB_INTERNAL_TRUE@@WITH_DB_RPC_TRUE@@WITH_DB_TOOLS_INTEGRATED_TRUE@am__append_3 = \
diff --git a/package/rpm/rpm-5.2.0_ignore-shared-mutexes.patch b/package/rpm/rpm-5.2.0_ignore-shared-mutexes.patch
deleted file mode 100644 (file)
index f19d6b6..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -ru rpm-5.2.0_vanilla/db/env/env_open.c rpm-5.2.0_test/db/env/env_open.c
---- rpm-5.2.0_vanilla/db/env/env_open.c        2008-05-28 01:23:27.000000000 +0000
-+++ rpm-5.2.0_test/db/env/env_open.c   2009-12-24 14:54:55.000000000 +0000
-@@ -124,7 +124,7 @@
-               }
-       }
--#ifdef HAVE_MUTEX_THREAD_ONLY
-+#ifdef NK_HAVE_MUTEX_THREAD_ONLY
-       /*
-        * Currently we support one kind of mutex that is intra-process only,
-        * POSIX 1003.1 pthreads, because a variety of systems don't support
diff --git a/package/rpm/rpm-5.2.0_no-parentdirs.patch b/package/rpm/rpm-5.2.0_no-parentdirs.patch
deleted file mode 100644 (file)
index d05c99a..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-Reduce parentdirs we use, parentdirs are used for ordering
-Included upstream
-diff -u --new-file --recursive rpm-5.1.9_vanilla/lib/depends.c rpm-5.1.9_no-parentdirs/lib/depends.c
---- rpm-5.1.9_vanilla/lib/depends.c    2009-04-12 19:46:17.000000000 +0000
-+++ rpm-5.1.9_no-parentdirs/lib/depends.c      2009-06-13 15:21:43.504999639 +0000
-@@ -2257,7 +2257,7 @@
- #define isAuto(_x)    ((_x) & _autobits)
- /*@unchecked@*/
--static int slashDepth = 100;  /* #slashes pemitted in parentdir deps. */
-+static int slashDepth = 2;    /* #slashes pemitted in parentdir deps. */
- static int countSlashes(const char * dn)
-       /*@*/
diff --git a/package/rpm/rpm-5.2.0_ordering-fix.patch b/package/rpm/rpm-5.2.0_ordering-fix.patch
deleted file mode 100644 (file)
index a618e1f..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-Included upstream
---- x/lib/depends.c    2009/05/15 13:40:58     1.445
-+++ y/lib/depends.c    2009/08/22 22:12:02     1.446
-@@ -2216,9 +2216,6 @@
- {
-     rpmte q, qprev;
--    /* Mark the package as queued. */
--    rpmteTSI(p)->tsi_queued = 1;
--
-     if ((*rp) == NULL) {      /* 1st element */
-       /*@-dependenttrans@*/ /* FIX: double indirection */
-       (*rp) = (*qp) = p;
-@@ -2238,6 +2235,12 @@
-       /* XXX Insure removed after added. */
-       if (rpmteType(p) == TR_REMOVED && rpmteType(p) != rpmteType(q))
-           continue;
-+
-+      /* XXX Follow all previous generations in the queue. */
-+      if (rpmteTSI(p)->tsi_queued > rpmteTSI(q)->tsi_queued)
-+          continue;
-+
-+      /* XXX Within a generation, queue behind more "important". */
-       if (rpmteTSI(q)->tsi_qcnt <= rpmteTSI(p)->tsi_qcnt)
-           break;
-     }
-@@ -2521,6 +2524,9 @@
-       if (rpmteTSI(p)->tsi_count != 0)
-           continue;
-+
-+      /* Mark the package as queued. */
-+      rpmteTSI(p)->tsi_queued = orderingCount + 1;
-       rpmteTSI(p)->tsi_suc = NULL;
-       addQ(p, &q, &r, prefcolor);
-       qlen++;
-@@ -2584,6 +2590,8 @@
-               (void) rpmteSetParent(p, q);
-               (void) rpmteSetDegree(q, rpmteDegree(q)+1);
-+              /* Mark the package as queued. */
-+              rpmteTSI(p)->tsi_queued = orderingCount + 1;
-               /* XXX TODO: add control bit. */
-               rpmteTSI(p)->tsi_suc = NULL;
- /*@-nullstate@*/      /* XXX FIX: rpmteTSI(q)->tsi_suc can be NULL. */
diff --git a/package/rpm/rpm-5.2.0_parentdir-vs-requires.patch b/package/rpm/rpm-5.2.0_parentdir-vs-requires.patch
deleted file mode 100644 (file)
index 309ab25..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-Avoid looking up files or directories that this package provides
-Included upstream
-diff -u --new-file --recursive rpm-5.2.0_vanilla/lib/depends.c rpm-5.2.0_parentdir-vs-requires/lib/depends.c
---- rpm-5.2.0_vanilla/lib/depends.c    2009-05-23 01:23:46.000000000 +0000
-+++ rpm-5.2.0_parentdir-vs-requires/lib/depends.c      2009-09-22 17:00:24.880956271 +0000
-@@ -2095,6 +2095,7 @@
-     rpmtsi qi; rpmte q;
-     tsortInfo tsi;
-     nsType NSType = rpmdsNSType(requires);
-+    const char * N = rpmdsN(requires);
-     fnpyKey key;
-     int teType = rpmteType(p);
-     alKey pkgKey;
-@@ -2128,6 +2129,23 @@
-       break;
-     }
-+    /* Avoid looking up files/directories that are "owned" by _THIS_ package. */
-+    if (*N == '/') {
-+    rpmfi fi = rpmteFI(p, RPMTAG_BASENAMES);
-+    int bingo = 0;
-+
-+    fi = rpmfiInit(fi, 0);
-+    while (rpmfiNext(fi) >= 0) {
-+        const char * fn = rpmfiFN(fi);
-+        if (strcmp(N, fn))
-+        continue;
-+        bingo = 1;
-+        break;
-+    }
-+    if (bingo)
-+        return 0;
-+    }
-+
-     pkgKey = RPMAL_NOMATCH;
-     key = rpmalSatisfiesDepend(al, requires, &pkgKey);
diff --git a/package/rpm/rpm-5.2.0_short-circuit-c99.patch b/package/rpm/rpm-5.2.0_short-circuit-c99.patch
deleted file mode 100644 (file)
index 5d7b53a..0000000
+++ /dev/null
@@ -1,235 +0,0 @@
-Buildroot specific
-diff -ru rpm-5.1.9_vanilla/xz/configure rpm-5.1.9_short-circuit-c99/xz/configure
---- rpm-5.1.9_vanilla/xz/configure     2009-04-18 16:47:23.000000000 +0000
-+++ rpm-5.1.9_short-circuit-c99/xz/configure   2009-08-04 08:25:59.000000000 +0000
-@@ -4970,214 +4970,7 @@
-   am__fastdepCC_FALSE=
- fi
--
--   { $as_echo "$as_me:$LINENO: checking for $CC option to accept ISO C99" >&5
--$as_echo_n "checking for $CC option to accept ISO C99... " >&6; }
--if test "${ac_cv_prog_cc_c99+set}" = set; then
--  $as_echo_n "(cached) " >&6
--else
--  ac_cv_prog_cc_c99=no
--ac_save_CC=$CC
--cat >conftest.$ac_ext <<_ACEOF
--/* confdefs.h.  */
--_ACEOF
--cat confdefs.h >>conftest.$ac_ext
--cat >>conftest.$ac_ext <<_ACEOF
--/* end confdefs.h.  */
--#include <stdarg.h>
--#include <stdbool.h>
--#include <stdlib.h>
--#include <wchar.h>
--#include <stdio.h>
--
--// Check varargs macros.  These examples are taken from C99 6.10.3.5.
--#define debug(...) fprintf (stderr, __VA_ARGS__)
--#define showlist(...) puts (#__VA_ARGS__)
--#define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__))
--static void
--test_varargs_macros (void)
--{
--  int x = 1234;
--  int y = 5678;
--  debug ("Flag");
--  debug ("X = %d\n", x);
--  showlist (The first, second, and third items.);
--  report (x>y, "x is %d but y is %d", x, y);
--}
--
--// Check long long types.
--#define BIG64 18446744073709551615ull
--#define BIG32 4294967295ul
--#define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0)
--#if !BIG_OK
--  your preprocessor is broken;
--#endif
--#if BIG_OK
--#else
--  your preprocessor is broken;
--#endif
--static long long int bignum = -9223372036854775807LL;
--static unsigned long long int ubignum = BIG64;
--
--struct incomplete_array
--{
--  int datasize;
--  double data[];
--};
--
--struct named_init {
--  int number;
--  const wchar_t *name;
--  double average;
--};
--
--typedef const char *ccp;
--
--static inline int
--test_restrict (ccp restrict text)
--{
--  // See if C++-style comments work.
--  // Iterate through items via the restricted pointer.
--  // Also check for declarations in for loops.
--  for (unsigned int i = 0; *(text+i) != '\0'; ++i)
--    continue;
--  return 0;
--}
--
--// Check varargs and va_copy.
--static void
--test_varargs (const char *format, ...)
--{
--  va_list args;
--  va_start (args, format);
--  va_list args_copy;
--  va_copy (args_copy, args);
--
--  const char *str;
--  int number;
--  float fnumber;
--
--  while (*format)
--    {
--      switch (*format++)
--      {
--      case 's': // string
--        str = va_arg (args_copy, const char *);
--        break;
--      case 'd': // int
--        number = va_arg (args_copy, int);
--        break;
--      case 'f': // float
--        fnumber = va_arg (args_copy, double);
--        break;
--      default:
--        break;
--      }
--    }
--  va_end (args_copy);
--  va_end (args);
--}
--
--int
--main ()
--{
--
--  // Check bool.
--  _Bool success = false;
--
--  // Check restrict.
--  if (test_restrict ("String literal") == 0)
--    success = true;
--  char *restrict newvar = "Another string";
--
--  // Check varargs.
--  test_varargs ("s, d' f .", "string", 65, 34.234);
--  test_varargs_macros ();
--
--  // Check flexible array members.
--  struct incomplete_array *ia =
--    malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10));
--  ia->datasize = 10;
--  for (int i = 0; i < ia->datasize; ++i)
--    ia->data[i] = i * 1.234;
--
--  // Check named initializers.
--  struct named_init ni = {
--    .number = 34,
--    .name = L"Test wide string",
--    .average = 543.34343,
--  };
--
--  ni.number = 58;
--
--  int dynamic_array[ni.number];
--  dynamic_array[ni.number - 1] = 543;
--
--  // work around unused variable warnings
--  return (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x'
--        || dynamic_array[ni.number - 1] != 543);
--
--  ;
--  return 0;
--}
--_ACEOF
--for ac_arg in '' -std=gnu99 -std=c99 -c99 -AC99 -xc99=all -qlanglvl=extc99
--do
--  CC="$ac_save_CC $ac_arg"
--  rm -f conftest.$ac_objext
--if { (ac_try="$ac_compile"
--case "(($ac_try" in
--  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
--  *) ac_try_echo=$ac_try;;
--esac
--eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\""
--$as_echo "$ac_try_echo") >&5
--  (eval "$ac_compile") 2>conftest.er1
--  ac_status=$?
--  grep -v '^ *+' conftest.er1 >conftest.err
--  rm -f conftest.er1
--  cat conftest.err >&5
--  $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5
--  (exit $ac_status); } && {
--       test -z "$ac_c_werror_flag" ||
--       test ! -s conftest.err
--       } && test -s conftest.$ac_objext; then
--  ac_cv_prog_cc_c99=$ac_arg
--else
--  $as_echo "$as_me: failed program was:" >&5
--sed 's/^/| /' conftest.$ac_ext >&5
--
--
--fi
--
--rm -f core conftest.err conftest.$ac_objext
--  test "x$ac_cv_prog_cc_c99" != "xno" && break
--done
--rm -f conftest.$ac_ext
--CC=$ac_save_CC
--
--fi
--# AC_CACHE_VAL
--case "x$ac_cv_prog_cc_c99" in
--  x)
--    { $as_echo "$as_me:$LINENO: result: none needed" >&5
--$as_echo "none needed" >&6; } ;;
--  xno)
--    { $as_echo "$as_me:$LINENO: result: unsupported" >&5
--$as_echo "unsupported" >&6; } ;;
--  *)
--    CC="$CC $ac_cv_prog_cc_c99"
--    { $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c99" >&5
--$as_echo "$ac_cv_prog_cc_c99" >&6; } ;;
--esac
--
--
--
--if test x$ac_cv_prog_cc_c99 = xno ; then
--      { { $as_echo "$as_me:$LINENO: error: No C99 compiler was found." >&5
--$as_echo "$as_me: error: No C99 compiler was found." >&2;}
--   { (exit 1); exit 1; }; }
--fi
-+CC="$CC -std=c99"
- if test "x$CC" != xcc; then
-   { $as_echo "$as_me:$LINENO: checking whether $CC and cc understand -c and -o together" >&5
-diff -ru rpm-5.1.9_vanilla/xz/configure.ac rpm-5.1.9_short-circuit-c99/xz/configure.ac
---- rpm-5.1.9_vanilla/xz/configure.ac  2009-02-16 17:07:46.000000000 +0000
-+++ rpm-5.1.9_short-circuit-c99/xz/configure.ac        2009-08-04 08:25:28.000000000 +0000
-@@ -402,10 +402,7 @@
- AM_INIT_AUTOMAKE([1.10 foreign tar-v7 filename-length-max=99])
- AC_PROG_LN_S
--AC_PROG_CC_C99
--if test x$ac_cv_prog_cc_c99 = xno ; then
--      AC_MSG_ERROR([No C99 compiler was found.])
--fi
-+CC="$CC -std=c99"
- AM_PROG_CC_C_O
- AM_PROG_AS
diff --git a/package/rrdtool/0001-automake-compat.patch b/package/rrdtool/0001-automake-compat.patch
new file mode 100644 (file)
index 0000000..92b753d
--- /dev/null
@@ -0,0 +1,18 @@
+Make it compatible with newer autoconf/automake.
+Patch from OpenWRT.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+--- a/bindings/tcl/Makefile.am
++++ b/bindings/tcl/Makefile.am
+@@ -26,8 +26,8 @@ tclpkgdir = @TCL_PACKAGE_DIR@
+ tclpkg_DATA = pkgIndex.tcl
+ tclpkg_SCRIPTS = ifOctets.tcl
+ else
+-pkglib_DATA = pkgIndex.tcl
+-pkglib_SCRIPTS = ifOctets.tcl
++pkgdata_DATA = pkgIndex.tcl
++pkgdata_SCRIPTS = ifOctets.tcl
+ endif
+ # Automake doen't like `tclrrd$(VERSION)$(TCL_SHLIB_SUFFIX)' as
diff --git a/package/rrdtool/0002-configure-dont-hardcode-include-dirs.patch b/package/rrdtool/0002-configure-dont-hardcode-include-dirs.patch
new file mode 100644 (file)
index 0000000..43b57a1
--- /dev/null
@@ -0,0 +1,26 @@
+[PATCH] configure.ac: don't hardcode include files search paths
+
+Breaks cross compilation if host has libart/freetype.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ configure.ac |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+Index: rrdtool-1.2.30/configure.ac
+===================================================================
+--- rrdtool-1.2.30.orig/configure.ac
++++ rrdtool-1.2.30/configure.ac
+@@ -524,10 +524,10 @@
+ CORE_LIBS="$LIBS"
+-EX_CHECK_ALL(art_lgpl_2, art_vpath_add_point,       libart_lgpl/libart.h,   libart-2.0,  2.3.17, ftp://ftp.gnome.org/pub/GNOME/sources/libart_lgpl/2.3/, /usr/include/libart-2.0)
++EX_CHECK_ALL(art_lgpl_2, art_vpath_add_point,       libart_lgpl/libart.h,   libart-2.0,  2.3.17, ftp://ftp.gnome.org/pub/GNOME/sources/libart_lgpl/2.3/, "")
+ EX_CHECK_ALL(z,          zlibVersion,               zlib.h,                 zlib,        1.2.3,  http://www.gzip.org/zlib/, "")
+ EX_CHECK_ALL(png,        png_access_version_number, png.h,                  libpng,      1.2.10,  http://prdownloads.sourceforge.net/libpng/, "")
+-EX_CHECK_ALL(freetype,   FT_Init_FreeType,          ft2build.h,                   freetype2,   2.1.10,  http://prdownloads.sourceforge.net/freetype/, /usr/include/freetype2)
++EX_CHECK_ALL(freetype,   FT_Init_FreeType,          ft2build.h,                   freetype2,   2.1.10,  http://prdownloads.sourceforge.net/freetype/, "")
+ if test "$EX_CHECK_ALL_ERR" = "YES"; then
+   AC_MSG_ERROR([Please fix the library issues listed above and try again.])
diff --git a/package/rrdtool/rrdtool-automake-compat.patch b/package/rrdtool/rrdtool-automake-compat.patch
deleted file mode 100644 (file)
index 92b753d..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-Make it compatible with newer autoconf/automake.
-Patch from OpenWRT.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
---- a/bindings/tcl/Makefile.am
-+++ b/bindings/tcl/Makefile.am
-@@ -26,8 +26,8 @@ tclpkgdir = @TCL_PACKAGE_DIR@
- tclpkg_DATA = pkgIndex.tcl
- tclpkg_SCRIPTS = ifOctets.tcl
- else
--pkglib_DATA = pkgIndex.tcl
--pkglib_SCRIPTS = ifOctets.tcl
-+pkgdata_DATA = pkgIndex.tcl
-+pkgdata_SCRIPTS = ifOctets.tcl
- endif
- # Automake doen't like `tclrrd$(VERSION)$(TCL_SHLIB_SUFFIX)' as
diff --git a/package/rrdtool/rrdtool-configure-dont-hardcode-include-dirs.patch b/package/rrdtool/rrdtool-configure-dont-hardcode-include-dirs.patch
deleted file mode 100644 (file)
index 43b57a1..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-[PATCH] configure.ac: don't hardcode include files search paths
-
-Breaks cross compilation if host has libart/freetype.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- configure.ac |    4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-Index: rrdtool-1.2.30/configure.ac
-===================================================================
---- rrdtool-1.2.30.orig/configure.ac
-+++ rrdtool-1.2.30/configure.ac
-@@ -524,10 +524,10 @@
- CORE_LIBS="$LIBS"
--EX_CHECK_ALL(art_lgpl_2, art_vpath_add_point,       libart_lgpl/libart.h,   libart-2.0,  2.3.17, ftp://ftp.gnome.org/pub/GNOME/sources/libart_lgpl/2.3/, /usr/include/libart-2.0)
-+EX_CHECK_ALL(art_lgpl_2, art_vpath_add_point,       libart_lgpl/libart.h,   libart-2.0,  2.3.17, ftp://ftp.gnome.org/pub/GNOME/sources/libart_lgpl/2.3/, "")
- EX_CHECK_ALL(z,          zlibVersion,               zlib.h,                 zlib,        1.2.3,  http://www.gzip.org/zlib/, "")
- EX_CHECK_ALL(png,        png_access_version_number, png.h,                  libpng,      1.2.10,  http://prdownloads.sourceforge.net/libpng/, "")
--EX_CHECK_ALL(freetype,   FT_Init_FreeType,          ft2build.h,                   freetype2,   2.1.10,  http://prdownloads.sourceforge.net/freetype/, /usr/include/freetype2)
-+EX_CHECK_ALL(freetype,   FT_Init_FreeType,          ft2build.h,                   freetype2,   2.1.10,  http://prdownloads.sourceforge.net/freetype/, "")
- if test "$EX_CHECK_ALL_ERR" = "YES"; then
-   AC_MSG_ERROR([Please fix the library issues listed above and try again.])
diff --git a/package/rtorrent/0001-cross_compile.patch b/package/rtorrent/0001-cross_compile.patch
new file mode 100644 (file)
index 0000000..2be8d06
--- /dev/null
@@ -0,0 +1,27 @@
+Fix cross compilation, based on OpenWRT patch.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura rtorrent-0.9.2/configure.ac rtorrent-0.9.2-cross/configure.ac
+--- rtorrent-0.9.2/configure.ac        2012-04-20 03:55:30.000000000 -0300
++++ rtorrent-0.9.2-cross/configure.ac  2012-05-09 11:06:49.436474039 -0300
+@@ -4,7 +4,6 @@
+ AM_INIT_AUTOMAKE
+ AM_CONFIG_HEADER(config.h)
+-AM_PATH_CPPUNIT(1.9.6)
+ AC_PROG_CXX
+ AC_PROG_LIBTOOL
+diff -Nura rtorrent-0.9.2/scripts/common.m4 rtorrent-0.9.2-cross/scripts/common.m4
+--- rtorrent-0.9.2/scripts/common.m4   2012-03-13 09:10:49.000000000 -0300
++++ rtorrent-0.9.2-cross/scripts/common.m4     2012-05-09 11:05:56.620102678 -0300
+@@ -223,7 +223,7 @@
+ AC_DEFUN([TORRENT_CHECK_EXECINFO], [
+   AC_MSG_CHECKING(for execinfo.h)
+-  AC_RUN_IFELSE([AC_LANG_SOURCE([
++  AC_LINK_IFELSE([AC_LANG_SOURCE([
+       #include <execinfo.h>
+       int main() { backtrace((void**)0, 0); backtrace_symbols((char**)0, 0); return 0;}
+       ])],
diff --git a/package/rtorrent/rtorrent-cross_compile.patch b/package/rtorrent/rtorrent-cross_compile.patch
deleted file mode 100644 (file)
index 2be8d06..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-Fix cross compilation, based on OpenWRT patch.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura rtorrent-0.9.2/configure.ac rtorrent-0.9.2-cross/configure.ac
---- rtorrent-0.9.2/configure.ac        2012-04-20 03:55:30.000000000 -0300
-+++ rtorrent-0.9.2-cross/configure.ac  2012-05-09 11:06:49.436474039 -0300
-@@ -4,7 +4,6 @@
- AM_INIT_AUTOMAKE
- AM_CONFIG_HEADER(config.h)
--AM_PATH_CPPUNIT(1.9.6)
- AC_PROG_CXX
- AC_PROG_LIBTOOL
-diff -Nura rtorrent-0.9.2/scripts/common.m4 rtorrent-0.9.2-cross/scripts/common.m4
---- rtorrent-0.9.2/scripts/common.m4   2012-03-13 09:10:49.000000000 -0300
-+++ rtorrent-0.9.2-cross/scripts/common.m4     2012-05-09 11:05:56.620102678 -0300
-@@ -223,7 +223,7 @@
- AC_DEFUN([TORRENT_CHECK_EXECINFO], [
-   AC_MSG_CHECKING(for execinfo.h)
--  AC_RUN_IFELSE([AC_LANG_SOURCE([
-+  AC_LINK_IFELSE([AC_LANG_SOURCE([
-       #include <execinfo.h>
-       int main() { backtrace((void**)0, 0); backtrace_symbols((char**)0, 0); return 0;}
-       ])],
diff --git a/package/rtptools/0001-host2ip-no-nis-on-uClibc.patch b/package/rtptools/0001-host2ip-no-nis-on-uClibc.patch
new file mode 100644 (file)
index 0000000..f1a72f9
--- /dev/null
@@ -0,0 +1,45 @@
+host2ip.c: disable NIS support when building with uClibc
+
+uClibc doesn't have NIS support, so simply disable the fallback.
+
+Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
+---
+ host2ip.c |   11 +++++++++++
+ 1 file changed, 11 insertions(+)
+
+Index: rtptools-1.20/host2ip.c
+===================================================================
+--- rtptools-1.20.orig/host2ip.c
++++ rtptools-1.20/host2ip.c
+@@ -3,7 +3,16 @@
+ #include <netdb.h>           /* gethostbyname() */
+ #include <netinet/in.h>      /* sockaddr_in */
+ #include <arpa/inet.h>       /* inet_addr() */
++
++#include <features.h>
++#ifndef __UCLIBC__
++#define HAVE_YP
++#endif
++
++#ifdef HAVE_YP
+ #include <rpcsvc/ypclnt.h>   /* YP */
++#endif
++
+ #include <string.h>          /* strlen() added by Akira 12/27/01 */ 
+ #include "sysdep.h"
+@@ -28,6 +37,7 @@
+   else if ((hep = gethostbyname(host))) {
+     in = *(struct in_addr *)(hep->h_addr_list[0]);
+   }
++#ifdef HAVE_YP
+   /* As a last resort, try YP. */
+   else {
+     static char *domain = 0;  /* YP domain */
+@@ -39,5 +49,6 @@
+       in.s_addr = inet_addr(value);
+     }
+   }
++#endif
+   return in;
+ } /* host2ip */
diff --git a/package/rtptools/rtptools-01-host2ip-no-nis-on-uClibc.patch b/package/rtptools/rtptools-01-host2ip-no-nis-on-uClibc.patch
deleted file mode 100644 (file)
index f1a72f9..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-host2ip.c: disable NIS support when building with uClibc
-
-uClibc doesn't have NIS support, so simply disable the fallback.
-
-Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
----
- host2ip.c |   11 +++++++++++
- 1 file changed, 11 insertions(+)
-
-Index: rtptools-1.20/host2ip.c
-===================================================================
---- rtptools-1.20.orig/host2ip.c
-+++ rtptools-1.20/host2ip.c
-@@ -3,7 +3,16 @@
- #include <netdb.h>           /* gethostbyname() */
- #include <netinet/in.h>      /* sockaddr_in */
- #include <arpa/inet.h>       /* inet_addr() */
-+
-+#include <features.h>
-+#ifndef __UCLIBC__
-+#define HAVE_YP
-+#endif
-+
-+#ifdef HAVE_YP
- #include <rpcsvc/ypclnt.h>   /* YP */
-+#endif
-+
- #include <string.h>          /* strlen() added by Akira 12/27/01 */ 
- #include "sysdep.h"
-@@ -28,6 +37,7 @@
-   else if ((hep = gethostbyname(host))) {
-     in = *(struct in_addr *)(hep->h_addr_list[0]);
-   }
-+#ifdef HAVE_YP
-   /* As a last resort, try YP. */
-   else {
-     static char *domain = 0;  /* YP domain */
-@@ -39,5 +49,6 @@
-       in.s_addr = inet_addr(value);
-     }
-   }
-+#endif
-   return in;
- } /* host2ip */
diff --git a/package/rubix/0001-dont-use-legacy-functions.patch b/package/rubix/0001-dont-use-legacy-functions.patch
new file mode 100644 (file)
index 0000000..9c34aee
--- /dev/null
@@ -0,0 +1,18 @@
+Use strstr() instead of index(), since index() is a legacy function
+and it may not be available in uClibc, depending on the configuration.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: rubix-1.0.5/cube.c
+===================================================================
+--- rubix-1.0.5.orig/cube.c    2010-02-14 14:19:05.000000000 +0100
++++ rubix-1.0.5/cube.c 2010-02-14 14:19:14.000000000 +0100
+@@ -257,7 +257,7 @@
+     if (i==-1) goto finish;
+     if (buffer[0]=='%') goto new_section;
+     buffer[0]=toupper(buffer[0]);
+-    ptr = index(buffer, '=');
++    ptr = strstr(buffer, '=');
+     if (ptr) {
+       ++ptr;
+       while (isspace(*ptr)) ++ptr;
diff --git a/package/rubix/0002-misc-fixes.patch b/package/rubix/0002-misc-fixes.patch
new file mode 100644 (file)
index 0000000..3ce6dad
--- /dev/null
@@ -0,0 +1,135 @@
+diff -Nrup rubix-1.0.5/fillpoly.c rubix-1.0.5-avr32/fillpoly.c
+--- rubix-1.0.5/fillpoly.c     2003-10-12 15:41:43.000000000 -0400
++++ rubix-1.0.5-avr32/fillpoly.c       2008-02-29 12:39:51.000000000 -0500
+@@ -435,7 +435,7 @@ void fill_lines(device *d, int thecol)
+                       );
+ #endif
+     }
+-  } else if (d->depth==16) { /* here 16bpp */
++  } else if ((d->depth==16) | (d->depth==15)) { /* here 16bpp */
+     register int i;
+ #ifndef PC_ARCHI
+     register int j;
+diff -Nrup rubix-1.0.5/line.c rubix-1.0.5-avr32/line.c
+--- rubix-1.0.5/line.c 2003-10-12 14:15:19.000000000 -0400
++++ rubix-1.0.5-avr32/line.c   2008-02-29 12:39:51.000000000 -0500
+@@ -1317,7 +1317,7 @@ void drawline(device *d, line *l)
+ #endif
+   if (d->depth==8)
+     drawline8(d, l);
+-  else if (d->depth==16)
++  else if ((d->depth==16) | (d->depth==15))
+     drawline16(d, l);
+   else if (d->depth==24)
+     drawline24(d, l);
+diff -Nrup rubix-1.0.5/Makefile rubix-1.0.5-avr32/Makefile
+--- rubix-1.0.5/Makefile       2003-12-04 14:27:58.000000000 -0500
++++ rubix-1.0.5-avr32/Makefile 2008-02-29 12:58:30.000000000 -0500
+@@ -11,21 +11,17 @@
+ # Customize to fit your needs (especially if it does not work for now).
+ LANGUAGE=ENGLISH
+-GAMESDIR=/usr/games
+ #architecture=-DPC_ARCHI
+ # For Solaris
+ #EXTRALIBS=-lsocket
+-CC=gcc
+ CFLAGS=-Wall -O3 -fomit-frame-pointer -ffast-math \
+    -DGAMESDIR="\"$(GAMESDIR)\"" \
+    -D$(LANGUAGE) $(architecture)
+ #CFLAGS=-Wall -g -ffast-math -Iplayer $(architecture)
+-XINC=-I/usr/X11R6/include
+-XLIB=-L/usr/X11R6/lib -lX11
+ #the following should not be changed.
+@@ -37,7 +33,7 @@ rubix : $(OBJ)
+ install :
+       mkdir -p $(GAMESDIR)
+-      install -c -s rubix $(GAMESDIR)
++      install -c rubix $(GAMESDIR)
+ clean :
+       rm -f *.o *~ core *.bak *.dat gmon.out
+diff -Nrup rubix-1.0.5/screen.c rubix-1.0.5-avr32/screen.c
+--- rubix-1.0.5/screen.c       2004-04-26 04:26:05.000000000 -0400
++++ rubix-1.0.5-avr32/screen.c 2008-02-29 12:39:51.000000000 -0500
+@@ -80,11 +80,17 @@ void error_statement(SCREEN *s)
+ int reset_data_buffers(SCREEN *s)
+ {     
++  int temp;
+   if (s->im)
+     XDestroyImage(s->im);
++  if (s->depth == 15) {
++              temp=16;
++  } else {
++              temp=s->depth;
++  }
+-  s->buffer=(char *)malloc(((SCREEN_X+7)/8)*SCREEN_Y*s->depth);
++  s->buffer=(char *)malloc(((SCREEN_X+7)/8)*SCREEN_Y*temp);
+   if (!s->buffer) {
+     error_statement(s);
+@@ -106,7 +112,7 @@ int reset_data_buffers(SCREEN *s)
+    */
+   /* Sed - december 2003 - no it has to be 8 */
+   s->im=XCreateImage(s->d, DefaultVisual(s->d, DefaultScreen(s->d)), 
+-                   s->depth==32?24:s->depth, ZPixmap,
++                   s->depth, ZPixmap,
+                    0, s->buffer, SCREEN_X, SCREEN_Y, 8, 0);
+   if (!s->im) {
+@@ -139,8 +145,8 @@ int init_screen(SCREEN *s)
+   s->depth=DefaultDepth(s->d, DefaultScreen(s->d));
+   
+-  if (s->depth!=8 && s->depth!=16 && s->depth!=24) {
+-    fprintf(stderr, "screen depth not supported (only 8, 16 and 24bpp (which means 32bpp too) handled\n");
++  if (s->depth!=8 && s->depth!=15 && s->depth!=16 && s->depth!=24) {
++    fprintf(stderr, "screen depth not supported (only 8, 15, 16 and 24bpp (which means 32bpp too) handled\n");
+     XCloseDisplay(s->d);
+     s->d=(Display *)0;
+     return -1;
+@@ -182,10 +188,10 @@ int init_screen(SCREEN *s)
+    
+   /* let's create and map our window */
+   s->w=XCreateWindow(s->d, DefaultRootWindow(s->d), 0, 0, 
+-                     SCREEN_X, SCREEN_Y, 3, s->depth==32?24:s->depth,
++                     SCREEN_X, SCREEN_Y, 3, s->depth,
+                      CopyFromParent, CopyFromParent, 0, NULL);
+   s->h=XCreateWindow(s->d, DefaultRootWindow(s->d), 0, 0, 
+-                     HELP_X, HELP_Y, 3, s->depth==32?24:s->depth,
++                     HELP_X, HELP_Y, 3, s->depth,
+                      CopyFromParent, CopyFromParent, 0, NULL);     
+    
+   xch.res_name = "rubix";
+@@ -946,13 +952,18 @@ void close_screen(SCREEN *s)
+ void clear_screen(SCREEN *s)
+ {
+   /* fill s->im with pixel[10], avoid XPutPixel which is rather slow... */
+-  int i, w, dw;
++  int i, w, dw, temp;
++  if (s->depth == 15) {
++      temp = 16;
++  } else {
++      temp = s->depth;
++  }
+   w = (SCREEN_X+7)/8;
+-  dw = s->depth/8;
++  dw = temp/8;
+   XPutPixel(s->im, 0, 0, pixel[10]);
+   for (i=1; i<8*w; i++)
+      memcpy(s->buffer + i*dw, s->buffer, dw);
+-  w = w * s->depth;
++  w = w * temp;
+   for (i=1; i<SCREEN_Y; i++)
+      memcpy(s->buffer + i*w, s->buffer, w);
+ }
diff --git a/package/rubix/rubix-1.0.5-dont-use-legacy-functions.patch b/package/rubix/rubix-1.0.5-dont-use-legacy-functions.patch
deleted file mode 100644 (file)
index 9c34aee..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-Use strstr() instead of index(), since index() is a legacy function
-and it may not be available in uClibc, depending on the configuration.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: rubix-1.0.5/cube.c
-===================================================================
---- rubix-1.0.5.orig/cube.c    2010-02-14 14:19:05.000000000 +0100
-+++ rubix-1.0.5/cube.c 2010-02-14 14:19:14.000000000 +0100
-@@ -257,7 +257,7 @@
-     if (i==-1) goto finish;
-     if (buffer[0]=='%') goto new_section;
-     buffer[0]=toupper(buffer[0]);
--    ptr = index(buffer, '=');
-+    ptr = strstr(buffer, '=');
-     if (ptr) {
-       ++ptr;
-       while (isspace(*ptr)) ++ptr;
diff --git a/package/rubix/rubix-1.0.5.patch b/package/rubix/rubix-1.0.5.patch
deleted file mode 100644 (file)
index 3ce6dad..0000000
+++ /dev/null
@@ -1,135 +0,0 @@
-diff -Nrup rubix-1.0.5/fillpoly.c rubix-1.0.5-avr32/fillpoly.c
---- rubix-1.0.5/fillpoly.c     2003-10-12 15:41:43.000000000 -0400
-+++ rubix-1.0.5-avr32/fillpoly.c       2008-02-29 12:39:51.000000000 -0500
-@@ -435,7 +435,7 @@ void fill_lines(device *d, int thecol)
-                       );
- #endif
-     }
--  } else if (d->depth==16) { /* here 16bpp */
-+  } else if ((d->depth==16) | (d->depth==15)) { /* here 16bpp */
-     register int i;
- #ifndef PC_ARCHI
-     register int j;
-diff -Nrup rubix-1.0.5/line.c rubix-1.0.5-avr32/line.c
---- rubix-1.0.5/line.c 2003-10-12 14:15:19.000000000 -0400
-+++ rubix-1.0.5-avr32/line.c   2008-02-29 12:39:51.000000000 -0500
-@@ -1317,7 +1317,7 @@ void drawline(device *d, line *l)
- #endif
-   if (d->depth==8)
-     drawline8(d, l);
--  else if (d->depth==16)
-+  else if ((d->depth==16) | (d->depth==15))
-     drawline16(d, l);
-   else if (d->depth==24)
-     drawline24(d, l);
-diff -Nrup rubix-1.0.5/Makefile rubix-1.0.5-avr32/Makefile
---- rubix-1.0.5/Makefile       2003-12-04 14:27:58.000000000 -0500
-+++ rubix-1.0.5-avr32/Makefile 2008-02-29 12:58:30.000000000 -0500
-@@ -11,21 +11,17 @@
- # Customize to fit your needs (especially if it does not work for now).
- LANGUAGE=ENGLISH
--GAMESDIR=/usr/games
- #architecture=-DPC_ARCHI
- # For Solaris
- #EXTRALIBS=-lsocket
--CC=gcc
- CFLAGS=-Wall -O3 -fomit-frame-pointer -ffast-math \
-    -DGAMESDIR="\"$(GAMESDIR)\"" \
-    -D$(LANGUAGE) $(architecture)
- #CFLAGS=-Wall -g -ffast-math -Iplayer $(architecture)
--XINC=-I/usr/X11R6/include
--XLIB=-L/usr/X11R6/lib -lX11
- #the following should not be changed.
-@@ -37,7 +33,7 @@ rubix : $(OBJ)
- install :
-       mkdir -p $(GAMESDIR)
--      install -c -s rubix $(GAMESDIR)
-+      install -c rubix $(GAMESDIR)
- clean :
-       rm -f *.o *~ core *.bak *.dat gmon.out
-diff -Nrup rubix-1.0.5/screen.c rubix-1.0.5-avr32/screen.c
---- rubix-1.0.5/screen.c       2004-04-26 04:26:05.000000000 -0400
-+++ rubix-1.0.5-avr32/screen.c 2008-02-29 12:39:51.000000000 -0500
-@@ -80,11 +80,17 @@ void error_statement(SCREEN *s)
- int reset_data_buffers(SCREEN *s)
- {     
-+  int temp;
-   if (s->im)
-     XDestroyImage(s->im);
-+  if (s->depth == 15) {
-+              temp=16;
-+  } else {
-+              temp=s->depth;
-+  }
--  s->buffer=(char *)malloc(((SCREEN_X+7)/8)*SCREEN_Y*s->depth);
-+  s->buffer=(char *)malloc(((SCREEN_X+7)/8)*SCREEN_Y*temp);
-   if (!s->buffer) {
-     error_statement(s);
-@@ -106,7 +112,7 @@ int reset_data_buffers(SCREEN *s)
-    */
-   /* Sed - december 2003 - no it has to be 8 */
-   s->im=XCreateImage(s->d, DefaultVisual(s->d, DefaultScreen(s->d)), 
--                   s->depth==32?24:s->depth, ZPixmap,
-+                   s->depth, ZPixmap,
-                    0, s->buffer, SCREEN_X, SCREEN_Y, 8, 0);
-   if (!s->im) {
-@@ -139,8 +145,8 @@ int init_screen(SCREEN *s)
-   s->depth=DefaultDepth(s->d, DefaultScreen(s->d));
-   
--  if (s->depth!=8 && s->depth!=16 && s->depth!=24) {
--    fprintf(stderr, "screen depth not supported (only 8, 16 and 24bpp (which means 32bpp too) handled\n");
-+  if (s->depth!=8 && s->depth!=15 && s->depth!=16 && s->depth!=24) {
-+    fprintf(stderr, "screen depth not supported (only 8, 15, 16 and 24bpp (which means 32bpp too) handled\n");
-     XCloseDisplay(s->d);
-     s->d=(Display *)0;
-     return -1;
-@@ -182,10 +188,10 @@ int init_screen(SCREEN *s)
-    
-   /* let's create and map our window */
-   s->w=XCreateWindow(s->d, DefaultRootWindow(s->d), 0, 0, 
--                     SCREEN_X, SCREEN_Y, 3, s->depth==32?24:s->depth,
-+                     SCREEN_X, SCREEN_Y, 3, s->depth,
-                      CopyFromParent, CopyFromParent, 0, NULL);
-   s->h=XCreateWindow(s->d, DefaultRootWindow(s->d), 0, 0, 
--                     HELP_X, HELP_Y, 3, s->depth==32?24:s->depth,
-+                     HELP_X, HELP_Y, 3, s->depth,
-                      CopyFromParent, CopyFromParent, 0, NULL);     
-    
-   xch.res_name = "rubix";
-@@ -946,13 +952,18 @@ void close_screen(SCREEN *s)
- void clear_screen(SCREEN *s)
- {
-   /* fill s->im with pixel[10], avoid XPutPixel which is rather slow... */
--  int i, w, dw;
-+  int i, w, dw, temp;
-+  if (s->depth == 15) {
-+      temp = 16;
-+  } else {
-+      temp = s->depth;
-+  }
-   w = (SCREEN_X+7)/8;
--  dw = s->depth/8;
-+  dw = temp/8;
-   XPutPixel(s->im, 0, 0, pixel[10]);
-   for (i=1; i<8*w; i++)
-      memcpy(s->buffer + i*dw, s->buffer, dw);
--  w = w * s->depth;
-+  w = w * temp;
-   for (i=1; i<SCREEN_Y; i++)
-      memcpy(s->buffer + i*w, s->buffer, w);
- }
diff --git a/package/samba/0001-fix-smbd-libs-avahi.patch b/package/samba/0001-fix-smbd-libs-avahi.patch
new file mode 100644 (file)
index 0000000..6624f57
--- /dev/null
@@ -0,0 +1,17 @@
+Expliticly link with -lpthread if smbd is compiled with
+avahi support. Otherwise the binary will fail to run.
+
+Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
+
+diff -Nura samba-3.6.16.orig/source3/Makefile.in samba-3.6.16/source3/Makefile.in
+--- samba-3.6.16.orig/source3/Makefile.in      2013-06-21 08:12:39.995871935 -0300
++++ samba-3.6.16/source3/Makefile.in   2013-06-21 08:13:17.778103805 -0300
+@@ -1783,7 +1783,7 @@
+               $(KRB5LIBS) $(DYNEXP) $(PRINT_LIBS) $(AUTH_LIBS) \
+               $(ACL_LIBS) $(PASSDB_LIBS) $(LIBS) $(DNSSD_LIBS) $(AVAHI_LIBS) \
+               $(POPT_LIBS) @SMBD_LIBS@ $(LIBTALLOC_LIBS) $(LIBTEVENT_LIBS) $(LIBTDB_LIBS) \
+-              $(LIBWBCLIENT_LIBS) $(ZLIB_LIBS)
++              $(LIBWBCLIENT_LIBS) $(ZLIB_LIBS) $(PTHREAD_LDFLAGS)
+
+ bin/nmbd@EXEEXT@: $(BINARY_PREREQS) $(NMBD_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTEVENT) $(LIBTDB) $(LIBWBCLIENT)
+       @echo Linking $@
diff --git a/package/samba/0002-getaddrinfo.patch b/package/samba/0002-getaddrinfo.patch
new file mode 100644 (file)
index 0000000..df3570c
--- /dev/null
@@ -0,0 +1,20 @@
+Patch forward-ported from OpenWRT.
+Don't check for buggy getaddrinfo() assume it's safe if it's present.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura samba-3.6.8.orig/source3/configure samba-3.6.8/source3/configure
+--- samba-3.6.8.orig/source3/configure 2012-09-14 05:19:52.000000000 -0300
++++ samba-3.6.8/source3/configure      2012-09-25 20:31:57.861743235 -0300
+@@ -13269,10 +13269,7 @@
+       # see bug 5910, use our replacements if we detect
+       # a broken system.
+       if test "$cross_compiling" = yes; then :
+-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+-as_fn_error $? "cannot run test program while cross compiling
+-See \`config.log' for more details" "$LINENO" 5; }
++              $as_echo "assuming valid getaddrinfo without bug 5910" >&2
+ else
+   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
diff --git a/package/samba/samba-0001-fix-smbd-libs-avahi.patch b/package/samba/samba-0001-fix-smbd-libs-avahi.patch
deleted file mode 100644 (file)
index 6624f57..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-Expliticly link with -lpthread if smbd is compiled with
-avahi support. Otherwise the binary will fail to run.
-
-Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
-
-diff -Nura samba-3.6.16.orig/source3/Makefile.in samba-3.6.16/source3/Makefile.in
---- samba-3.6.16.orig/source3/Makefile.in      2013-06-21 08:12:39.995871935 -0300
-+++ samba-3.6.16/source3/Makefile.in   2013-06-21 08:13:17.778103805 -0300
-@@ -1783,7 +1783,7 @@
-               $(KRB5LIBS) $(DYNEXP) $(PRINT_LIBS) $(AUTH_LIBS) \
-               $(ACL_LIBS) $(PASSDB_LIBS) $(LIBS) $(DNSSD_LIBS) $(AVAHI_LIBS) \
-               $(POPT_LIBS) @SMBD_LIBS@ $(LIBTALLOC_LIBS) $(LIBTEVENT_LIBS) $(LIBTDB_LIBS) \
--              $(LIBWBCLIENT_LIBS) $(ZLIB_LIBS)
-+              $(LIBWBCLIENT_LIBS) $(ZLIB_LIBS) $(PTHREAD_LDFLAGS)
-
- bin/nmbd@EXEEXT@: $(BINARY_PREREQS) $(NMBD_OBJ) @BUILD_POPT@ $(LIBTALLOC) $(LIBTEVENT) $(LIBTDB) $(LIBWBCLIENT)
-       @echo Linking $@
diff --git a/package/samba/samba-0002-getaddrinfo.patch b/package/samba/samba-0002-getaddrinfo.patch
deleted file mode 100644 (file)
index df3570c..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-Patch forward-ported from OpenWRT.
-Don't check for buggy getaddrinfo() assume it's safe if it's present.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura samba-3.6.8.orig/source3/configure samba-3.6.8/source3/configure
---- samba-3.6.8.orig/source3/configure 2012-09-14 05:19:52.000000000 -0300
-+++ samba-3.6.8/source3/configure      2012-09-25 20:31:57.861743235 -0300
-@@ -13269,10 +13269,7 @@
-       # see bug 5910, use our replacements if we detect
-       # a broken system.
-       if test "$cross_compiling" = yes; then :
--  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
--$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
--as_fn_error $? "cannot run test program while cross compiling
--See \`config.log' for more details" "$LINENO" 5; }
-+              $as_echo "assuming valid getaddrinfo without bug 5910" >&2
- else
-   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
- /* end confdefs.h.  */
diff --git a/package/sawman/0001-link-using-gcc-instead-of-ld.patch b/package/sawman/0001-link-using-gcc-instead-of-ld.patch
new file mode 100644 (file)
index 0000000..02e8029
--- /dev/null
@@ -0,0 +1,19 @@
+sawman: Link using gcc instead of ld
+
+Using ld may cause a link failure due to using the default emulation
+linker which is configured when building the linker in binutils.  Using
+gcc instead will pass the appropriate -m value because the compiler 
+knows the ABI you are using.
+
+Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
+--- SaWMan-1.6.3/rules/libobject.make.orig     2013-12-17 15:54:22.137856874 +0000
++++ SaWMan-1.6.3/rules/libobject.make  2013-12-17 15:54:44.233201909 +0000
+@@ -3,7 +3,7 @@
+       if test -d $<.tmp; then rmdir $<.tmp; fi
+       mkdir $<.tmp
+       (cd $<.tmp && $(AR) x ../../$<)
+-      $(LD) -o $@ -r $<.tmp/*.o
++      $(CC) -nostdlib -o $@ -r $<.tmp/*.o
+       rm -f $<.tmp/*.o && rmdir $<.tmp
+ .PHONY: $(LTLIBRARIES:%.la=.libs/%.a)
diff --git a/package/sawman/sawman-001-link-using-gcc-instead-of-ld.patch b/package/sawman/sawman-001-link-using-gcc-instead-of-ld.patch
deleted file mode 100644 (file)
index 02e8029..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-sawman: Link using gcc instead of ld
-
-Using ld may cause a link failure due to using the default emulation
-linker which is configured when building the linker in binutils.  Using
-gcc instead will pass the appropriate -m value because the compiler 
-knows the ABI you are using.
-
-Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
---- SaWMan-1.6.3/rules/libobject.make.orig     2013-12-17 15:54:22.137856874 +0000
-+++ SaWMan-1.6.3/rules/libobject.make  2013-12-17 15:54:44.233201909 +0000
-@@ -3,7 +3,7 @@
-       if test -d $<.tmp; then rmdir $<.tmp; fi
-       mkdir $<.tmp
-       (cd $<.tmp && $(AR) x ../../$<)
--      $(LD) -o $@ -r $<.tmp/*.o
-+      $(CC) -nostdlib -o $@ -r $<.tmp/*.o
-       rm -f $<.tmp/*.o && rmdir $<.tmp
- .PHONY: $(LTLIBRARIES:%.la=.libs/%.a)
diff --git a/package/screen/0001-compiler-sanity-checks.patch b/package/screen/0001-compiler-sanity-checks.patch
new file mode 100644 (file)
index 0000000..19d13c6
--- /dev/null
@@ -0,0 +1,60 @@
+From: Maarten ter Huurne <maarten@treewalker.org>
+Date: Sat, 13 Sep 2014 10:27:27 +0200
+Subject: Removed redundant compiler sanity checks
+
+AC_PROG_CC already performs sanity checks. And unlike the removed
+checks, it does so in a way that supports cross compilation.
+
+Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
+---
+ configure.in | 27 ---------------------------
+ 1 file changed, 27 deletions(-)
+
+diff --git a/configure.in b/configure.in
+index 87fd43b..572c2a3 100644
+--- a/configure.in
++++ b/configure.in
+@@ -47,31 +47,6 @@ AC_PROG_GCC_TRADITIONAL
+ AC_ISC_POSIX
+ AC_USE_SYSTEM_EXTENSIONS
+-AC_TRY_RUN(main(){exit(0);},,[
+-if test $CC != cc ; then
+-AC_NOTE(Your $CC failed - restarting with CC=cc)
+-AC_NOTE()
+-CC=cc
+-export CC
+-exec $0 $configure_args
+-fi
+-])
+-
+-AC_TRY_RUN(main(){exit(0);},,
+-exec 5>&2
+-eval $ac_link
+-AC_NOTE(CC=$CC; CFLAGS=$CFLAGS; LIBS=$LIBS;)
+-AC_NOTE($ac_compile)
+-AC_MSG_ERROR(Can't run the compiler - sorry))
+-
+-AC_TRY_RUN([
+-main()
+-{
+-  int __something_strange_();
+-  __something_strange_(0);
+-}
+-],AC_MSG_ERROR(Your compiler does not set the exit status - sorry))
+-
+ AC_PROG_AWK
+ AC_PROG_INSTALL
+@@ -1299,8 +1274,6 @@ fi
+ dnl Ptx bug workaround -- insert -lc after -ltermcap
+ test -n "$seqptx" && LIBS="-ltermcap -lc -lsocket -linet -lnsl -lsec -lseq"
+-AC_TRY_RUN(main(){exit(0);},,AC_MSG_ERROR(Can't run the compiler - internal error. Sorry.))
+-
+ ETCSCREENRC=
+ AC_MSG_CHECKING(for the global screenrc file)
+ AC_ARG_WITH(sys-screenrc, [  --with-sys-screenrc=path to the global screenrc file], [ ETCSCREENRC="${withval}" ])
+-- 
+1.8.4.5
+
diff --git a/package/screen/0002-no-memcpy-fallback.patch b/package/screen/0002-no-memcpy-fallback.patch
new file mode 100644 (file)
index 0000000..0f5a099
--- /dev/null
@@ -0,0 +1,122 @@
+From: Maarten ter Huurne <maarten@treewalker.org>
+Date: Sat, 13 Sep 2014 11:37:59 +0200
+Subject: Do not use memcpy as an alternative for bcopy/memmove
+
+The configure script runs a small test program to check whether
+memcpy can handle overlapping memory areas. However, it is not valid
+to conclude that if a single case of overlapping memory is handled
+correctly, all cases will be handled correctly.
+
+Since screen already has its own bcopy implementation as a fallback
+for the case that bcopy and memmove are unusable, removing the memcpy
+option should not break any systems.
+
+Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
+---
+ acconfig.h   |  3 +--
+ configure.in | 18 +-----------------
+ os.h         |  8 ++------
+ osdef.h.in   | 10 +---------
+ 4 files changed, 5 insertions(+), 34 deletions(-)
+
+diff --git a/acconfig.h b/acconfig.h
+index 2e46985..9b0b9d4 100644
+--- a/acconfig.h
++++ b/acconfig.h
+@@ -476,7 +476,7 @@
+ #undef GETTTYENT
+ /*
+- * Define USEBCOPY if the bcopy/memcpy from your system's C library
++ * Define USEBCOPY if the bcopy from your system's C library
+  * supports the overlapping of source and destination blocks.  When
+  * undefined, screen uses its own (probably slower) version of bcopy().
+  * 
+@@ -487,7 +487,6 @@
+  * Their memove fails the test in the configure script. Sigh. (Juergen)
+  */
+ #undef USEBCOPY
+-#undef USEMEMCPY
+ #undef USEMEMMOVE
+ /*
+diff --git a/configure.in b/configure.in
+index 572c2a3..ff9606d 100644
+--- a/configure.in
++++ b/configure.in
+@@ -1144,7 +1144,7 @@ AC_TRY_LINK(,[getttyent();], AC_DEFINE(GETTTYENT))
+ AC_CHECKING(fdwalk)
+ AC_TRY_LINK([#include <stdlib.h>], [fdwalk(NULL, NULL);],AC_DEFINE(HAVE_FDWALK))
+-AC_CHECKING(whether memcpy/memmove/bcopy handles overlapping arguments)
++AC_CHECKING(whether memmove/bcopy handles overlapping arguments)
+ AC_TRY_RUN([
+ main() {
+   char buf[10];
+@@ -1174,22 +1174,6 @@ main() {
+   exit(0); /* libc version works properly.  */
+ }], AC_DEFINE(USEMEMMOVE))
+-
+-AC_TRY_RUN([
+-#define bcopy(s,d,l) memcpy(d,s,l)
+-main() {
+-  char buf[10];
+-  strcpy(buf, "abcdefghi");
+-  bcopy(buf, buf + 2, 3);
+-  if (strncmp(buf, "ababcf", 6))
+-    exit(1);
+-  strcpy(buf, "abcdefghi");
+-  bcopy(buf + 2, buf, 3);
+-  if (strncmp(buf, "cdedef", 6))
+-    exit(1);
+-  exit(0); /* libc version works properly.  */
+-}], AC_DEFINE(USEMEMCPY))
+-
+ AC_SYS_LONG_FILE_NAMES
+ AC_MSG_CHECKING(for vsprintf)
+diff --git a/os.h b/os.h
+index 55de249..6838ec0 100644
+--- a/os.h
++++ b/os.h
+@@ -142,12 +142,8 @@ extern int errno;
+ # ifdef USEMEMMOVE
+ #  define bcopy(s,d,len) memmove(d,s,len)
+ # else
+-#  ifdef USEMEMCPY
+-#   define bcopy(s,d,len) memcpy(d,s,len)
+-#  else
+-#   define NEED_OWN_BCOPY
+-#   define bcopy xbcopy
+-#  endif
++#  define NEED_OWN_BCOPY
++#  define bcopy xbcopy
+ # endif
+ #endif
+diff --git a/osdef.h.in b/osdef.h.in
+index 8687b60..e4057a0 100644
+--- a/osdef.h.in
++++ b/osdef.h.in
+@@ -58,16 +58,8 @@ extern int   bcmp __P((char *, char *, int));
+ extern int   killpg __P((int, int));
+ #endif
+-#ifndef USEBCOPY
+-# ifdef USEMEMCPY
+-extern void  memcpy __P((char *, char *, int));
+-# else
+-#  ifdef USEMEMMOVE
++#if defined(USEMEMMOVE) && !defined(USEBCOPY)
+ extern void  memmove __P((char *, char *, int));
+-#  else
+-extern void  bcopy __P((char *, char *, int));
+-#  endif
+-# endif
+ #else
+ extern void  bcopy __P((char *, char *, int));
+ #endif
+-- 
+1.8.4.5
+
diff --git a/package/screen/0003-cross-compilation-AC_TRY_RUN.patch b/package/screen/0003-cross-compilation-AC_TRY_RUN.patch
new file mode 100644 (file)
index 0000000..b908301
--- /dev/null
@@ -0,0 +1,123 @@
+From: Maarten ter Huurne <maarten@treewalker.org>
+Date: Sat, 13 Sep 2014 12:04:41 +0200
+Subject: Provide cross compilation alternatives for all AC_TRY_RUN uses
+
+Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
+---
+ configure.in | 30 +++++++++++++++++++-----------
+ 1 file changed, 19 insertions(+), 11 deletions(-)
+
+diff --git a/configure.in b/configure.in
+index ff9606d..d53a079 100644
+--- a/configure.in
++++ b/configure.in
+@@ -347,7 +347,8 @@ main()
+   exit(0);
+ }
+ ], AC_NOTE(- your fifos are usable) fifo=1,
+-AC_NOTE(- your fifos are not usable))
++AC_NOTE(- your fifos are not usable),
++AC_NOTE(- skipping check because we are cross compiling; assuming fifos are usable) fifo=1)
+ rm -f /tmp/conftest*
+ if test -n "$fifo"; then
+@@ -395,7 +396,8 @@ main()
+   exit(0);
+ }
+ ], AC_NOTE(- your implementation is ok), 
+-AC_NOTE(- you have a broken implementation) AC_DEFINE(BROKEN_PIPE) fifobr=1)
++AC_NOTE(- you have a broken implementation) AC_DEFINE(BROKEN_PIPE) fifobr=1,
++AC_NOTE(- skipping check because we are cross compiling; assuming fifo implementation is ok))
+ rm -f /tmp/conftest*
+ fi
+@@ -457,7 +459,8 @@ main()
+   exit(0);
+ }
+ ], AC_NOTE(- your sockets are usable) sock=1,
+-AC_NOTE(- your sockets are not usable))
++AC_NOTE(- your sockets are not usable),
++AC_NOTE(- skipping check because we are cross compiling; assuming sockets are usable) sock=1)
+ rm -f /tmp/conftest*
+ if test -n "$sock"; then
+@@ -496,7 +499,8 @@ main()
+ }
+ ],AC_NOTE(- you are normal),
+ AC_NOTE(- unix domain sockets are not kept in the filesystem)
+-AC_DEFINE(SOCK_NOT_IN_FS) socknofs=1)
++AC_DEFINE(SOCK_NOT_IN_FS) socknofs=1,
++AC_NOTE(- skipping check because we are cross compiling; assuming sockets are normal))
+ rm -f /tmp/conftest*
+ fi
+@@ -623,7 +627,8 @@ main()
+   exit(0);
+ }
+ ],AC_NOTE(- select is ok),
+-AC_NOTE(- select can't count) AC_DEFINE(SELECT_BROKEN))
++AC_NOTE(- select can't count) AC_DEFINE(SELECT_BROKEN),
++AC_NOTE(- skipping check because we are cross compiling; assuming select is ok))
+ dnl
+ dnl    ****  termcap or terminfo  ****
+@@ -665,7 +670,8 @@ main()
+ {
+  exit(strcmp(tgoto("%p1%d", 0, 1), "1") ? 0 : 1);
+ }], AC_NOTE(- you use the termcap database),
+-AC_NOTE(- you use the terminfo database) AC_DEFINE(TERMINFO))
++AC_NOTE(- you use the terminfo database) AC_DEFINE(TERMINFO),
++AC_NOTE(- skipping check because we are cross compiling; assuming terminfo database is used) AC_DEFINE(TERMINFO))
+ AC_CHECKING(ospeed)
+ AC_TRY_LINK(extern short ospeed;,ospeed=5;,,AC_DEFINE(NEED_OSPEED))
+@@ -800,7 +806,8 @@ main()
+     else
+       AC_NOTE(- can't determine - assume ptys are world accessable)
+     fi
+-  ]
++  ],
++  AC_NOTE(- skipping check because we are cross compiling; assuming ptys are world accessable)
+ )
+ rm -f conftest_grp
+ fi
+@@ -884,7 +891,7 @@ AC_EGREP_CPP(yes,
+ #endif
+ ], load=1)
+ fi
+-if test -z "$load" ; then
++if test -z "$load" && test "$cross_compiling" = no ; then
+ AC_CHECKING(for kernelfile)
+ for core in /unix /vmunix /dynix /hp-ux /xelos /dev/ksyms /kernel/unix /kernel/genunix /unicos /mach /netbsd /386bsd /dgux /bsd /stand/vmunix; do
+   if test -f $core || test -c $core; then
+@@ -1077,7 +1084,7 @@ main()
+ #endif
+   exit(0);
+ }
+-],,AC_DEFINE(SYSVSIGS))
++],,AC_DEFINE(SYSVSIGS),:)
+ fi
+@@ -1157,7 +1164,7 @@ main() {
+   if (strncmp(buf, "cdedef", 6))
+     exit(1);
+   exit(0); /* libc version works properly.  */
+-}], AC_DEFINE(USEBCOPY))
++}], AC_DEFINE(USEBCOPY),,:)
+ AC_TRY_RUN([
+ #define bcopy(s,d,l) memmove(d,s,l)
+@@ -1172,7 +1179,8 @@ main() {
+   if (strncmp(buf, "cdedef", 6))
+     exit(1);
+   exit(0); /* libc version works properly.  */
+-}], AC_DEFINE(USEMEMMOVE))
++}], AC_DEFINE(USEMEMMOVE),,
++  AC_NOTE(- skipping check because we are cross compiling; use memmove) AC_DEFINE(USEMEMMOVE))
+ AC_SYS_LONG_FILE_NAMES
+-- 
+1.8.4.5
+
diff --git a/package/screen/0004-cross-compilation-ignore-host-fs.patch b/package/screen/0004-cross-compilation-ignore-host-fs.patch
new file mode 100644 (file)
index 0000000..aeacfb1
--- /dev/null
@@ -0,0 +1,130 @@
+From: Maarten ter Huurne <maarten@treewalker.org>
+Date: Sun, 14 Sep 2014 07:10:59 +0200
+Subject: When cross-compiling, skip checks that look in the host file system
+
+Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
+---
+ configure.in | 23 +++++++++++++++++++----
+ 1 file changed, 19 insertions(+), 4 deletions(-)
+
+diff --git a/configure.in b/configure.in
+index d53a079..79aa56d 100644
+--- a/configure.in
++++ b/configure.in
+@@ -84,7 +84,7 @@ AC_ARG_ENABLE(socket-dir,
+ dnl
+ dnl    ****  special unix variants  ****
+ dnl
+-if test -n "$ISC"; then
++if test "$cross_compiling" = no && test -n "$ISC" ; then
+   AC_DEFINE(ISC) LIBS="$LIBS -linet"
+ fi
+@@ -95,10 +95,11 @@ dnl AC_DEFINE(OSF1)        # this disables MIPS again....
+ dnl fi
+ dnl fi
+-if test -f /sysV68 ; then
++if test "$cross_compiling" = no && test -f /sysV68 ; then
+ AC_DEFINE(sysV68)
+ fi
++if test "$cross_compiling" = no ; then
+ AC_CHECKING(for MIPS)
+ if test -f /lib/libmld.a || test -f /usr/lib/libmld.a || test -f /usr/lib/cmplrs/cc/libmld.a; then
+ oldlibs="$LIBS"
+@@ -122,6 +123,7 @@ AC_DEFINE(USE_WAIT2) LIBS="$LIBS -lbsd" ; CC="$CC -I/usr/include/bsd"
+ ))
+ fi
+ fi
++fi
+ AC_CHECKING(for Ultrix)
+@@ -131,7 +133,7 @@ AC_EGREP_CPP(yes,
+ #endif
+ ], ULTRIX=1)
+-if test -f /usr/lib/libpyr.a ; then
++if test "$cross_compiling" = no && test -f /usr/lib/libpyr.a ; then
+ oldlibs="$LIBS"
+ LIBS="$LIBS -lpyr"
+ AC_CHECKING(Pyramid OSX)
+@@ -678,17 +680,21 @@ AC_TRY_LINK(extern short ospeed;,ospeed=5;,,AC_DEFINE(NEED_OSPEED))
+ dnl
+ dnl    ****  PTY specific things  ****
+ dnl
++if test "$cross_compiling" = no ; then
+ AC_CHECKING(for /dev/ptc)
+ if test -r /dev/ptc; then
+ AC_DEFINE(HAVE_DEV_PTC)
+ fi
++fi
++if test "$cross_compiling" = no ; then
+ AC_CHECKING(for SVR4 ptys)
+ sysvr4ptys=
+ if test -c /dev/ptmx ; then
+ AC_TRY_LINK([],[ptsname(0);grantpt(0);unlockpt(0);],[AC_DEFINE(HAVE_SVR4_PTYS)
+ sysvr4ptys=1])
+ fi
++fi
+ AC_CHECK_FUNCS(getpt)
+@@ -698,6 +704,7 @@ AC_CHECK_FUNCS(openpty,,
+ [AC_CHECK_LIB(util,openpty, [AC_DEFINE(HAVE_OPENPTY)] [LIBS="$LIBS -lutil"])])
+ fi
++if test "$cross_compiling" = no ; then
+ AC_CHECKING(for ptyranges)
+ if test -d /dev/ptym ; then
+ pdir='/dev/ptym'
+@@ -721,6 +728,7 @@ p1=`echo $ptys | tr ' ' '\012' | sed -e 's/^.*\(.\)$/\1/g'  | sort -u | tr -d '\
+ AC_DEFINE_UNQUOTED(PTYRANGE0,"$p0")
+ AC_DEFINE_UNQUOTED(PTYRANGE1,"$p1")
+ fi
++fi
+ dnl    ****  pty mode/group handling ****
+ dnl
+@@ -868,14 +876,16 @@ fi
+ dnl
+ dnl    ****  loadav  ****
+ dnl
++if test "$cross_compiling" = no ; then
+ AC_CHECKING(for libutil(s))
+ test -f /usr/lib/libutils.a && LIBS="$LIBS -lutils"
+ test -f /usr/lib/libutil.a && LIBS="$LIBS -lutil"
++fi
+ AC_CHECKING(getloadavg)
+ AC_TRY_LINK(,[getloadavg((double *)0, 0);],
+ AC_DEFINE(LOADAV_GETLOADAVG) load=1,
+-if test -f /usr/lib/libkvm.a ; then
++if test "$cross_compiling" = no && test -f /usr/lib/libkvm.a ; then
+ olibs="$LIBS"
+ LIBS="$LIBS -lkvm"
+ AC_CHECKING(getloadavg with -lkvm)
+@@ -1093,13 +1103,18 @@ dnl    ****  libraries  ****
+ dnl
+ AC_CHECKING(for crypt and sec libraries)
++if test "$cross_compiling" = no ; then
+ test -f /lib/libcrypt_d.a || test -f /usr/lib/libcrypt_d.a && LIBS="$LIBS -lcrypt_d"
++fi
+ oldlibs="$LIBS"
+ LIBS="$LIBS -lcrypt"
+ AC_CHECKING(crypt)
+ AC_TRY_LINK(,,,LIBS="$oldlibs")
++if test "$cross_compiling" = no ; then
+ test -f /lib/libsec.a || test -f /usr/lib/libsec.a && LIBS="$LIBS -lsec"
+ test -f /lib/libshadow.a || test -f /usr/lib/libshadow.a && LIBS="$LIBS -lshadow"
++fi
++
+ oldlibs="$LIBS"
+ LIBS="$LIBS -lsun"
+ AC_CHECKING(IRIX sun library)
+-- 
+1.8.4.5
+
diff --git a/package/screen/0005-avoid-identifying-as-SVR4.patch b/package/screen/0005-avoid-identifying-as-SVR4.patch
new file mode 100644 (file)
index 0000000..10c08d2
--- /dev/null
@@ -0,0 +1,52 @@
+From: Maarten ter Huurne <maarten@treewalker.org>
+Date: Sun, 14 Sep 2014 11:16:58 +0200
+Subject: Avoid mis-identifying systems as SVR4
+
+My openSUSE 13.1 Linux system was detected as SVR4 because it had
+libelf installed. This leads to linking with libelf, even though no
+symbols from that library were actually used, and to a workaround for
+a buggy getlogin() being enabled.
+
+It is not documented which exact SVR4 system had the bug that the
+workaround was added for, so all I could do is make an educated guess
+at the #defines its compiler would be likely to set.
+
+Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
+---
+ configure.in | 14 ++++++++++++--
+ 1 file changed, 12 insertions(+), 2 deletions(-)
+
+diff --git a/configure.in b/configure.in
+index f78f81f..181b7f9 100644
+--- a/configure.in
++++ b/configure.in
+@@ -178,14 +178,24 @@ AC_EGREP_CPP(yes,
+ #endif
+ ], LIBS="$LIBS -lsocket -linet";seqptx=1)
++AC_CHECKING(SVR4)
++AC_EGREP_CPP(yes,
++[main () {
++#if defined(SVR4) || defined(__SVR4)
++  yes;
++#endif
++], AC_NOTE(- you have a SVR4 system) AC_DEFINE(SVR4) svr4=1)
++if test -n "$svr4" ; then
+ oldlibs="$LIBS"
+ LIBS="$LIBS -lelf"
+ AC_CHECKING(SVR4)
+ AC_TRY_LINK([#include <utmpx.h>
+ ],,
+-[AC_CHECK_HEADER(dwarf.h, AC_DEFINE(SVR4) AC_DEFINE(BUGGYGETLOGIN),
+-[AC_CHECK_HEADER(elf.h, AC_DEFINE(SVR4) AC_DEFINE(BUGGYGETLOGIN))])]
++[AC_CHECK_HEADER(dwarf.h, AC_DEFINE(BUGGYGETLOGIN),
++[AC_CHECK_HEADER(elf.h, AC_DEFINE(BUGGYGETLOGIN))])]
+ ,LIBS="$oldlibs")
++fi
++
+ AC_CHECK_HEADERS([stropts.h string.h strings.h])
+ AC_CHECKING(for Solaris 2.x)
+-- 
+1.8.4.5
+
diff --git a/package/screen/0006-install-no-backup-binary.patch b/package/screen/0006-install-no-backup-binary.patch
new file mode 100644 (file)
index 0000000..504862a
--- /dev/null
@@ -0,0 +1,39 @@
+From: Maarten ter Huurne <maarten@treewalker.org>
+Date: Sun, 14 Sep 2014 23:58:34 +0200
+Subject: Do not create backup of old installed binary
+
+This is a rather unusual feature that packagers will not expect.
+
+Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
+---
+ Makefile.in | 4 ----
+ 1 file changed, 4 deletions(-)
+
+diff --git a/Makefile.in b/Makefile.in
+index 187a69b..65549e9 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -83,12 +83,9 @@ screen: $(OFILES)
+           $(OPTIONS) $(CFLAGS) $<
+ install_bin: .version screen
+-      -if [ -f $(DESTDIR)$(bindir)/$(SCREEN) ] && [ ! -f $(DESTDIR)$(bindir)/$(SCREEN).old ]; \
+-              then mv $(DESTDIR)$(bindir)/$(SCREEN) $(DESTDIR)$(bindir)/$(SCREEN).old; fi
+       $(INSTALL_PROGRAM) screen $(DESTDIR)$(bindir)/$(SCREEN)
+       -chown root $(DESTDIR)$(bindir)/$(SCREEN) && chmod 4755 $(DESTDIR)$(bindir)/$(SCREEN)
+ # This doesn't work if $(bindir)/screen is a symlink
+-      -if [ -f $(DESTDIR)$(bindir)/screen ] && [ ! -f $(DESTDIR)$(bindir)/screen.old ]; then mv $(DESTDIR)$(bindir)/screen $(DESTDIR)$(bindir)/screen.old; fi
+       rm -f $(DESTDIR)$(bindir)/screen
+       (cd $(DESTDIR)$(bindir) && ln -f -s $(SCREEN) screen)
+       cp $(srcdir)/utf8encodings/?? $(DESTDIR)$(SCREENENCODINGS)
+@@ -113,7 +110,6 @@ installdirs:
+ uninstall: .version
+       rm -f $(DESTDIR)$(bindir)/$(SCREEN)
+       rm -f $(DESTDIR)$(bindir)/screen
+-      -mv $(DESTDIR)$(bindir)/screen.old $(DESTDIR)$(bindir)/screen
+       rm -f $(DESTDIR)$(ETCSCREENRC)
+       cd doc; $(MAKE) uninstall
+-- 
+1.8.4.5
+
diff --git a/package/screen/0007-install-always-chmod.patch b/package/screen/0007-install-always-chmod.patch
new file mode 100644 (file)
index 0000000..0aa7690
--- /dev/null
@@ -0,0 +1,29 @@
+From: Maarten ter Huurne <maarten@treewalker.org>
+Date: Mon, 15 Sep 2014 00:03:05 +0200
+Subject: Change binary permission flags even if chown fails
+
+Typically when creating a package, the build is not run as root, so
+the chown will fail. But the chmod can still be done.
+
+Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
+---
+ Makefile.in | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/Makefile.in b/Makefile.in
+index 65549e9..3c12fdb 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -84,7 +84,8 @@ screen: $(OFILES)
+ install_bin: .version screen
+       $(INSTALL_PROGRAM) screen $(DESTDIR)$(bindir)/$(SCREEN)
+-      -chown root $(DESTDIR)$(bindir)/$(SCREEN) && chmod 4755 $(DESTDIR)$(bindir)/$(SCREEN)
++      -chown root $(DESTDIR)$(bindir)/$(SCREEN)
++      -chmod 4755 $(DESTDIR)$(bindir)/$(SCREEN)
+ # This doesn't work if $(bindir)/screen is a symlink
+       rm -f $(DESTDIR)$(bindir)/screen
+       (cd $(DESTDIR)$(bindir) && ln -f -s $(SCREEN) screen)
+-- 
+1.8.4.5
+
diff --git a/package/screen/0008-install-nonversioned-binary.patch b/package/screen/0008-install-nonversioned-binary.patch
new file mode 100644 (file)
index 0000000..ecbbd65
--- /dev/null
@@ -0,0 +1,31 @@
+From: Maarten ter Huurne <maarten@treewalker.org>
+Date: Mon, 15 Sep 2014 00:06:20 +0200
+Subject: Support overriding SCREEN to get a non-versioned binary
+
+If a packager runs "make install SCREEN=screen", do not create
+"screen" as a symlink to itself.
+
+Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
+---
+ Makefile.in | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/Makefile.in b/Makefile.in
+index 3c12fdb..860f351 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -86,9 +86,11 @@ install_bin: .version screen
+       $(INSTALL_PROGRAM) screen $(DESTDIR)$(bindir)/$(SCREEN)
+       -chown root $(DESTDIR)$(bindir)/$(SCREEN)
+       -chmod 4755 $(DESTDIR)$(bindir)/$(SCREEN)
++ifneq (${SCREEN},screen)
+ # This doesn't work if $(bindir)/screen is a symlink
+       rm -f $(DESTDIR)$(bindir)/screen
+       (cd $(DESTDIR)$(bindir) && ln -f -s $(SCREEN) screen)
++endif
+       cp $(srcdir)/utf8encodings/?? $(DESTDIR)$(SCREENENCODINGS)
+ ###############################################################################
+-- 
+1.8.4.5
+
diff --git a/package/screen/0009-install-dir-dependency.patch b/package/screen/0009-install-dir-dependency.patch
new file mode 100644 (file)
index 0000000..9016cb9
--- /dev/null
@@ -0,0 +1,43 @@
+From: Maarten ter Huurne <maarten@treewalker.org>
+Date: Mon, 15 Sep 2014 02:27:09 +0200
+Subject: Ensure that installation dirs exist before copying files into them
+
+Since the "install_bin" target requires the installation directories
+to exist, it should depend on the "installdirs" target. The previous
+approach of having "install" depend on "installdirs" is not reliable.
+
+For example, in a parallel build, there was no guarantee that
+"installdirs" would be finished before "install_bin" runs. Also if
+the user requested only "install_bin" to be made, "installdirs" would
+be skipped altogether.
+
+Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
+---
+ Makefile.in | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile.in b/Makefile.in
+index 860f351..f0fe08d 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -82,7 +82,7 @@ screen: $(OFILES)
+       $(CC) -c -I. -I$(srcdir) $(M_CFLAGS) $(CPPFLAGS) $(DEFS) \
+           $(OPTIONS) $(CFLAGS) $<
+-install_bin: .version screen
++install_bin: .version screen installdirs
+       $(INSTALL_PROGRAM) screen $(DESTDIR)$(bindir)/$(SCREEN)
+       -chown root $(DESTDIR)$(bindir)/$(SCREEN)
+       -chmod 4755 $(DESTDIR)$(bindir)/$(SCREEN)
+@@ -94,7 +94,7 @@ endif
+       cp $(srcdir)/utf8encodings/?? $(DESTDIR)$(SCREENENCODINGS)
+ ###############################################################################
+-install: installdirs install_bin
++install: install_bin
+       cd doc ; $(MAKE) install
+       -if [ -d /usr/lib/terminfo ]; then \
+               PATH="$$PATH:/usr/5bin" tic ${srcdir}/terminfo/screeninfo.src; \
+-- 
+1.8.4.5
+
diff --git a/package/screen/0010-rename-sched_h.patch b/package/screen/0010-rename-sched_h.patch
new file mode 100644 (file)
index 0000000..cdbb033
--- /dev/null
@@ -0,0 +1,142 @@
+From: Maarten ter Huurne <maarten@treewalker.org>
+Date: Mon, 15 Sep 2014 00:24:41 +0200
+Subject: Renamed sched.h to eventqueue.h
+
+There is a <sched.h> system header that got shadowed by "sched.h".
+While Screen itself doesn't include <sched.h>, other system headers
+might include it indirectly. This broke the build when using uClibc
+with pthread support.
+
+Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
+---
+ eventqueue.h | 48 ++++++++++++++++++++++++++++++++++++++++++++++++
+ sched.h      | 48 ------------------------------------------------
+ screen.h     |  2 +-
+ 3 files changed, 49 insertions(+), 49 deletions(-)
+ create mode 100644 eventqueue.h
+ delete mode 100644 sched.h
+
+diff --git a/eventqueue.h b/eventqueue.h
+new file mode 100644
+index 0000000..fdc3fc4
+--- /dev/null
++++ b/eventqueue.h
+@@ -0,0 +1,48 @@
++/* Copyright (c) 2008, 2009
++ *      Juergen Weigert (jnweiger@immd4.informatik.uni-erlangen.de)
++ *      Michael Schroeder (mlschroe@immd4.informatik.uni-erlangen.de)
++ *      Micah Cowan (micah@cowan.name)
++ *      Sadrul Habib Chowdhury (sadrul@users.sourceforge.net)
++ * Copyright (c) 1993-2002, 2003, 2005, 2006, 2007
++ *      Juergen Weigert (jnweiger@immd4.informatik.uni-erlangen.de)
++ *      Michael Schroeder (mlschroe@immd4.informatik.uni-erlangen.de)
++ * Copyright (c) 1987 Oliver Laumann
++ *
++ * 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 3, 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 (see the file COPYING); if not, see
++ * http://www.gnu.org/licenses/, or contact Free Software Foundation, Inc.,
++ * 51 Franklin Street, Fifth Floor, Boston, MA  02111-1301  USA
++ *
++ ****************************************************************
++ * $Id$ GNU
++ */
++
++struct event
++{
++  struct event *next;
++  void (*handler) __P((struct event *, char *));
++  char *data;
++  int fd;
++  int type;
++  int pri;
++  struct timeval timeout;
++  int queued;         /* in evs queue */
++  int active;         /* in fdset */
++  int *condpos;               /* only active if condpos - condneg > 0 */
++  int *condneg;
++};
++
++#define EV_TIMEOUT    0
++#define EV_READ               1
++#define EV_WRITE      2
++#define EV_ALWAYS     3
+diff --git a/sched.h b/sched.h
+deleted file mode 100644
+index fdc3fc4..0000000
+--- a/sched.h
++++ /dev/null
+@@ -1,48 +0,0 @@
+-/* Copyright (c) 2008, 2009
+- *      Juergen Weigert (jnweiger@immd4.informatik.uni-erlangen.de)
+- *      Michael Schroeder (mlschroe@immd4.informatik.uni-erlangen.de)
+- *      Micah Cowan (micah@cowan.name)
+- *      Sadrul Habib Chowdhury (sadrul@users.sourceforge.net)
+- * Copyright (c) 1993-2002, 2003, 2005, 2006, 2007
+- *      Juergen Weigert (jnweiger@immd4.informatik.uni-erlangen.de)
+- *      Michael Schroeder (mlschroe@immd4.informatik.uni-erlangen.de)
+- * Copyright (c) 1987 Oliver Laumann
+- *
+- * 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 3, 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 (see the file COPYING); if not, see
+- * http://www.gnu.org/licenses/, or contact Free Software Foundation, Inc.,
+- * 51 Franklin Street, Fifth Floor, Boston, MA  02111-1301  USA
+- *
+- ****************************************************************
+- * $Id$ GNU
+- */
+-
+-struct event
+-{
+-  struct event *next;
+-  void (*handler) __P((struct event *, char *));
+-  char *data;
+-  int fd;
+-  int type;
+-  int pri;
+-  struct timeval timeout;
+-  int queued;         /* in evs queue */
+-  int active;         /* in fdset */
+-  int *condpos;               /* only active if condpos - condneg > 0 */
+-  int *condneg;
+-};
+-
+-#define EV_TIMEOUT    0
+-#define EV_READ               1
+-#define EV_WRITE      2
+-#define EV_ALWAYS     3
+diff --git a/screen.h b/screen.h
+index 603ca3f..34238c8 100644
+--- a/screen.h
++++ b/screen.h
+@@ -43,7 +43,7 @@
+ #include "osdef.h"
+ #include "ansi.h"
+-#include "sched.h"
++#include "eventqueue.h"
+ #include "acls.h"
+ #include "comm.h"
+ #include "layer.h"
+-- 
+1.8.4.5
+
diff --git a/package/screen/screen-0001-compiler-sanity-checks.patch b/package/screen/screen-0001-compiler-sanity-checks.patch
deleted file mode 100644 (file)
index 19d13c6..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-From: Maarten ter Huurne <maarten@treewalker.org>
-Date: Sat, 13 Sep 2014 10:27:27 +0200
-Subject: Removed redundant compiler sanity checks
-
-AC_PROG_CC already performs sanity checks. And unlike the removed
-checks, it does so in a way that supports cross compilation.
-
-Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
----
- configure.in | 27 ---------------------------
- 1 file changed, 27 deletions(-)
-
-diff --git a/configure.in b/configure.in
-index 87fd43b..572c2a3 100644
---- a/configure.in
-+++ b/configure.in
-@@ -47,31 +47,6 @@ AC_PROG_GCC_TRADITIONAL
- AC_ISC_POSIX
- AC_USE_SYSTEM_EXTENSIONS
--AC_TRY_RUN(main(){exit(0);},,[
--if test $CC != cc ; then
--AC_NOTE(Your $CC failed - restarting with CC=cc)
--AC_NOTE()
--CC=cc
--export CC
--exec $0 $configure_args
--fi
--])
--
--AC_TRY_RUN(main(){exit(0);},,
--exec 5>&2
--eval $ac_link
--AC_NOTE(CC=$CC; CFLAGS=$CFLAGS; LIBS=$LIBS;)
--AC_NOTE($ac_compile)
--AC_MSG_ERROR(Can't run the compiler - sorry))
--
--AC_TRY_RUN([
--main()
--{
--  int __something_strange_();
--  __something_strange_(0);
--}
--],AC_MSG_ERROR(Your compiler does not set the exit status - sorry))
--
- AC_PROG_AWK
- AC_PROG_INSTALL
-@@ -1299,8 +1274,6 @@ fi
- dnl Ptx bug workaround -- insert -lc after -ltermcap
- test -n "$seqptx" && LIBS="-ltermcap -lc -lsocket -linet -lnsl -lsec -lseq"
--AC_TRY_RUN(main(){exit(0);},,AC_MSG_ERROR(Can't run the compiler - internal error. Sorry.))
--
- ETCSCREENRC=
- AC_MSG_CHECKING(for the global screenrc file)
- AC_ARG_WITH(sys-screenrc, [  --with-sys-screenrc=path to the global screenrc file], [ ETCSCREENRC="${withval}" ])
--- 
-1.8.4.5
-
diff --git a/package/screen/screen-0002-no-memcpy-fallback.patch b/package/screen/screen-0002-no-memcpy-fallback.patch
deleted file mode 100644 (file)
index 0f5a099..0000000
+++ /dev/null
@@ -1,122 +0,0 @@
-From: Maarten ter Huurne <maarten@treewalker.org>
-Date: Sat, 13 Sep 2014 11:37:59 +0200
-Subject: Do not use memcpy as an alternative for bcopy/memmove
-
-The configure script runs a small test program to check whether
-memcpy can handle overlapping memory areas. However, it is not valid
-to conclude that if a single case of overlapping memory is handled
-correctly, all cases will be handled correctly.
-
-Since screen already has its own bcopy implementation as a fallback
-for the case that bcopy and memmove are unusable, removing the memcpy
-option should not break any systems.
-
-Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
----
- acconfig.h   |  3 +--
- configure.in | 18 +-----------------
- os.h         |  8 ++------
- osdef.h.in   | 10 +---------
- 4 files changed, 5 insertions(+), 34 deletions(-)
-
-diff --git a/acconfig.h b/acconfig.h
-index 2e46985..9b0b9d4 100644
---- a/acconfig.h
-+++ b/acconfig.h
-@@ -476,7 +476,7 @@
- #undef GETTTYENT
- /*
-- * Define USEBCOPY if the bcopy/memcpy from your system's C library
-+ * Define USEBCOPY if the bcopy from your system's C library
-  * supports the overlapping of source and destination blocks.  When
-  * undefined, screen uses its own (probably slower) version of bcopy().
-  * 
-@@ -487,7 +487,6 @@
-  * Their memove fails the test in the configure script. Sigh. (Juergen)
-  */
- #undef USEBCOPY
--#undef USEMEMCPY
- #undef USEMEMMOVE
- /*
-diff --git a/configure.in b/configure.in
-index 572c2a3..ff9606d 100644
---- a/configure.in
-+++ b/configure.in
-@@ -1144,7 +1144,7 @@ AC_TRY_LINK(,[getttyent();], AC_DEFINE(GETTTYENT))
- AC_CHECKING(fdwalk)
- AC_TRY_LINK([#include <stdlib.h>], [fdwalk(NULL, NULL);],AC_DEFINE(HAVE_FDWALK))
--AC_CHECKING(whether memcpy/memmove/bcopy handles overlapping arguments)
-+AC_CHECKING(whether memmove/bcopy handles overlapping arguments)
- AC_TRY_RUN([
- main() {
-   char buf[10];
-@@ -1174,22 +1174,6 @@ main() {
-   exit(0); /* libc version works properly.  */
- }], AC_DEFINE(USEMEMMOVE))
--
--AC_TRY_RUN([
--#define bcopy(s,d,l) memcpy(d,s,l)
--main() {
--  char buf[10];
--  strcpy(buf, "abcdefghi");
--  bcopy(buf, buf + 2, 3);
--  if (strncmp(buf, "ababcf", 6))
--    exit(1);
--  strcpy(buf, "abcdefghi");
--  bcopy(buf + 2, buf, 3);
--  if (strncmp(buf, "cdedef", 6))
--    exit(1);
--  exit(0); /* libc version works properly.  */
--}], AC_DEFINE(USEMEMCPY))
--
- AC_SYS_LONG_FILE_NAMES
- AC_MSG_CHECKING(for vsprintf)
-diff --git a/os.h b/os.h
-index 55de249..6838ec0 100644
---- a/os.h
-+++ b/os.h
-@@ -142,12 +142,8 @@ extern int errno;
- # ifdef USEMEMMOVE
- #  define bcopy(s,d,len) memmove(d,s,len)
- # else
--#  ifdef USEMEMCPY
--#   define bcopy(s,d,len) memcpy(d,s,len)
--#  else
--#   define NEED_OWN_BCOPY
--#   define bcopy xbcopy
--#  endif
-+#  define NEED_OWN_BCOPY
-+#  define bcopy xbcopy
- # endif
- #endif
-diff --git a/osdef.h.in b/osdef.h.in
-index 8687b60..e4057a0 100644
---- a/osdef.h.in
-+++ b/osdef.h.in
-@@ -58,16 +58,8 @@ extern int   bcmp __P((char *, char *, int));
- extern int   killpg __P((int, int));
- #endif
--#ifndef USEBCOPY
--# ifdef USEMEMCPY
--extern void  memcpy __P((char *, char *, int));
--# else
--#  ifdef USEMEMMOVE
-+#if defined(USEMEMMOVE) && !defined(USEBCOPY)
- extern void  memmove __P((char *, char *, int));
--#  else
--extern void  bcopy __P((char *, char *, int));
--#  endif
--# endif
- #else
- extern void  bcopy __P((char *, char *, int));
- #endif
--- 
-1.8.4.5
-
diff --git a/package/screen/screen-0003-cross-compilation-AC_TRY_RUN.patch b/package/screen/screen-0003-cross-compilation-AC_TRY_RUN.patch
deleted file mode 100644 (file)
index b908301..0000000
+++ /dev/null
@@ -1,123 +0,0 @@
-From: Maarten ter Huurne <maarten@treewalker.org>
-Date: Sat, 13 Sep 2014 12:04:41 +0200
-Subject: Provide cross compilation alternatives for all AC_TRY_RUN uses
-
-Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
----
- configure.in | 30 +++++++++++++++++++-----------
- 1 file changed, 19 insertions(+), 11 deletions(-)
-
-diff --git a/configure.in b/configure.in
-index ff9606d..d53a079 100644
---- a/configure.in
-+++ b/configure.in
-@@ -347,7 +347,8 @@ main()
-   exit(0);
- }
- ], AC_NOTE(- your fifos are usable) fifo=1,
--AC_NOTE(- your fifos are not usable))
-+AC_NOTE(- your fifos are not usable),
-+AC_NOTE(- skipping check because we are cross compiling; assuming fifos are usable) fifo=1)
- rm -f /tmp/conftest*
- if test -n "$fifo"; then
-@@ -395,7 +396,8 @@ main()
-   exit(0);
- }
- ], AC_NOTE(- your implementation is ok), 
--AC_NOTE(- you have a broken implementation) AC_DEFINE(BROKEN_PIPE) fifobr=1)
-+AC_NOTE(- you have a broken implementation) AC_DEFINE(BROKEN_PIPE) fifobr=1,
-+AC_NOTE(- skipping check because we are cross compiling; assuming fifo implementation is ok))
- rm -f /tmp/conftest*
- fi
-@@ -457,7 +459,8 @@ main()
-   exit(0);
- }
- ], AC_NOTE(- your sockets are usable) sock=1,
--AC_NOTE(- your sockets are not usable))
-+AC_NOTE(- your sockets are not usable),
-+AC_NOTE(- skipping check because we are cross compiling; assuming sockets are usable) sock=1)
- rm -f /tmp/conftest*
- if test -n "$sock"; then
-@@ -496,7 +499,8 @@ main()
- }
- ],AC_NOTE(- you are normal),
- AC_NOTE(- unix domain sockets are not kept in the filesystem)
--AC_DEFINE(SOCK_NOT_IN_FS) socknofs=1)
-+AC_DEFINE(SOCK_NOT_IN_FS) socknofs=1,
-+AC_NOTE(- skipping check because we are cross compiling; assuming sockets are normal))
- rm -f /tmp/conftest*
- fi
-@@ -623,7 +627,8 @@ main()
-   exit(0);
- }
- ],AC_NOTE(- select is ok),
--AC_NOTE(- select can't count) AC_DEFINE(SELECT_BROKEN))
-+AC_NOTE(- select can't count) AC_DEFINE(SELECT_BROKEN),
-+AC_NOTE(- skipping check because we are cross compiling; assuming select is ok))
- dnl
- dnl    ****  termcap or terminfo  ****
-@@ -665,7 +670,8 @@ main()
- {
-  exit(strcmp(tgoto("%p1%d", 0, 1), "1") ? 0 : 1);
- }], AC_NOTE(- you use the termcap database),
--AC_NOTE(- you use the terminfo database) AC_DEFINE(TERMINFO))
-+AC_NOTE(- you use the terminfo database) AC_DEFINE(TERMINFO),
-+AC_NOTE(- skipping check because we are cross compiling; assuming terminfo database is used) AC_DEFINE(TERMINFO))
- AC_CHECKING(ospeed)
- AC_TRY_LINK(extern short ospeed;,ospeed=5;,,AC_DEFINE(NEED_OSPEED))
-@@ -800,7 +806,8 @@ main()
-     else
-       AC_NOTE(- can't determine - assume ptys are world accessable)
-     fi
--  ]
-+  ],
-+  AC_NOTE(- skipping check because we are cross compiling; assuming ptys are world accessable)
- )
- rm -f conftest_grp
- fi
-@@ -884,7 +891,7 @@ AC_EGREP_CPP(yes,
- #endif
- ], load=1)
- fi
--if test -z "$load" ; then
-+if test -z "$load" && test "$cross_compiling" = no ; then
- AC_CHECKING(for kernelfile)
- for core in /unix /vmunix /dynix /hp-ux /xelos /dev/ksyms /kernel/unix /kernel/genunix /unicos /mach /netbsd /386bsd /dgux /bsd /stand/vmunix; do
-   if test -f $core || test -c $core; then
-@@ -1077,7 +1084,7 @@ main()
- #endif
-   exit(0);
- }
--],,AC_DEFINE(SYSVSIGS))
-+],,AC_DEFINE(SYSVSIGS),:)
- fi
-@@ -1157,7 +1164,7 @@ main() {
-   if (strncmp(buf, "cdedef", 6))
-     exit(1);
-   exit(0); /* libc version works properly.  */
--}], AC_DEFINE(USEBCOPY))
-+}], AC_DEFINE(USEBCOPY),,:)
- AC_TRY_RUN([
- #define bcopy(s,d,l) memmove(d,s,l)
-@@ -1172,7 +1179,8 @@ main() {
-   if (strncmp(buf, "cdedef", 6))
-     exit(1);
-   exit(0); /* libc version works properly.  */
--}], AC_DEFINE(USEMEMMOVE))
-+}], AC_DEFINE(USEMEMMOVE),,
-+  AC_NOTE(- skipping check because we are cross compiling; use memmove) AC_DEFINE(USEMEMMOVE))
- AC_SYS_LONG_FILE_NAMES
--- 
-1.8.4.5
-
diff --git a/package/screen/screen-0004-cross-compilation-ignore-host-fs.patch b/package/screen/screen-0004-cross-compilation-ignore-host-fs.patch
deleted file mode 100644 (file)
index aeacfb1..0000000
+++ /dev/null
@@ -1,130 +0,0 @@
-From: Maarten ter Huurne <maarten@treewalker.org>
-Date: Sun, 14 Sep 2014 07:10:59 +0200
-Subject: When cross-compiling, skip checks that look in the host file system
-
-Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
----
- configure.in | 23 +++++++++++++++++++----
- 1 file changed, 19 insertions(+), 4 deletions(-)
-
-diff --git a/configure.in b/configure.in
-index d53a079..79aa56d 100644
---- a/configure.in
-+++ b/configure.in
-@@ -84,7 +84,7 @@ AC_ARG_ENABLE(socket-dir,
- dnl
- dnl    ****  special unix variants  ****
- dnl
--if test -n "$ISC"; then
-+if test "$cross_compiling" = no && test -n "$ISC" ; then
-   AC_DEFINE(ISC) LIBS="$LIBS -linet"
- fi
-@@ -95,10 +95,11 @@ dnl AC_DEFINE(OSF1)        # this disables MIPS again....
- dnl fi
- dnl fi
--if test -f /sysV68 ; then
-+if test "$cross_compiling" = no && test -f /sysV68 ; then
- AC_DEFINE(sysV68)
- fi
-+if test "$cross_compiling" = no ; then
- AC_CHECKING(for MIPS)
- if test -f /lib/libmld.a || test -f /usr/lib/libmld.a || test -f /usr/lib/cmplrs/cc/libmld.a; then
- oldlibs="$LIBS"
-@@ -122,6 +123,7 @@ AC_DEFINE(USE_WAIT2) LIBS="$LIBS -lbsd" ; CC="$CC -I/usr/include/bsd"
- ))
- fi
- fi
-+fi
- AC_CHECKING(for Ultrix)
-@@ -131,7 +133,7 @@ AC_EGREP_CPP(yes,
- #endif
- ], ULTRIX=1)
--if test -f /usr/lib/libpyr.a ; then
-+if test "$cross_compiling" = no && test -f /usr/lib/libpyr.a ; then
- oldlibs="$LIBS"
- LIBS="$LIBS -lpyr"
- AC_CHECKING(Pyramid OSX)
-@@ -678,17 +680,21 @@ AC_TRY_LINK(extern short ospeed;,ospeed=5;,,AC_DEFINE(NEED_OSPEED))
- dnl
- dnl    ****  PTY specific things  ****
- dnl
-+if test "$cross_compiling" = no ; then
- AC_CHECKING(for /dev/ptc)
- if test -r /dev/ptc; then
- AC_DEFINE(HAVE_DEV_PTC)
- fi
-+fi
-+if test "$cross_compiling" = no ; then
- AC_CHECKING(for SVR4 ptys)
- sysvr4ptys=
- if test -c /dev/ptmx ; then
- AC_TRY_LINK([],[ptsname(0);grantpt(0);unlockpt(0);],[AC_DEFINE(HAVE_SVR4_PTYS)
- sysvr4ptys=1])
- fi
-+fi
- AC_CHECK_FUNCS(getpt)
-@@ -698,6 +704,7 @@ AC_CHECK_FUNCS(openpty,,
- [AC_CHECK_LIB(util,openpty, [AC_DEFINE(HAVE_OPENPTY)] [LIBS="$LIBS -lutil"])])
- fi
-+if test "$cross_compiling" = no ; then
- AC_CHECKING(for ptyranges)
- if test -d /dev/ptym ; then
- pdir='/dev/ptym'
-@@ -721,6 +728,7 @@ p1=`echo $ptys | tr ' ' '\012' | sed -e 's/^.*\(.\)$/\1/g'  | sort -u | tr -d '\
- AC_DEFINE_UNQUOTED(PTYRANGE0,"$p0")
- AC_DEFINE_UNQUOTED(PTYRANGE1,"$p1")
- fi
-+fi
- dnl    ****  pty mode/group handling ****
- dnl
-@@ -868,14 +876,16 @@ fi
- dnl
- dnl    ****  loadav  ****
- dnl
-+if test "$cross_compiling" = no ; then
- AC_CHECKING(for libutil(s))
- test -f /usr/lib/libutils.a && LIBS="$LIBS -lutils"
- test -f /usr/lib/libutil.a && LIBS="$LIBS -lutil"
-+fi
- AC_CHECKING(getloadavg)
- AC_TRY_LINK(,[getloadavg((double *)0, 0);],
- AC_DEFINE(LOADAV_GETLOADAVG) load=1,
--if test -f /usr/lib/libkvm.a ; then
-+if test "$cross_compiling" = no && test -f /usr/lib/libkvm.a ; then
- olibs="$LIBS"
- LIBS="$LIBS -lkvm"
- AC_CHECKING(getloadavg with -lkvm)
-@@ -1093,13 +1103,18 @@ dnl    ****  libraries  ****
- dnl
- AC_CHECKING(for crypt and sec libraries)
-+if test "$cross_compiling" = no ; then
- test -f /lib/libcrypt_d.a || test -f /usr/lib/libcrypt_d.a && LIBS="$LIBS -lcrypt_d"
-+fi
- oldlibs="$LIBS"
- LIBS="$LIBS -lcrypt"
- AC_CHECKING(crypt)
- AC_TRY_LINK(,,,LIBS="$oldlibs")
-+if test "$cross_compiling" = no ; then
- test -f /lib/libsec.a || test -f /usr/lib/libsec.a && LIBS="$LIBS -lsec"
- test -f /lib/libshadow.a || test -f /usr/lib/libshadow.a && LIBS="$LIBS -lshadow"
-+fi
-+
- oldlibs="$LIBS"
- LIBS="$LIBS -lsun"
- AC_CHECKING(IRIX sun library)
--- 
-1.8.4.5
-
diff --git a/package/screen/screen-0005-avoid-identifying-as-SVR4.patch b/package/screen/screen-0005-avoid-identifying-as-SVR4.patch
deleted file mode 100644 (file)
index 10c08d2..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-From: Maarten ter Huurne <maarten@treewalker.org>
-Date: Sun, 14 Sep 2014 11:16:58 +0200
-Subject: Avoid mis-identifying systems as SVR4
-
-My openSUSE 13.1 Linux system was detected as SVR4 because it had
-libelf installed. This leads to linking with libelf, even though no
-symbols from that library were actually used, and to a workaround for
-a buggy getlogin() being enabled.
-
-It is not documented which exact SVR4 system had the bug that the
-workaround was added for, so all I could do is make an educated guess
-at the #defines its compiler would be likely to set.
-
-Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
----
- configure.in | 14 ++++++++++++--
- 1 file changed, 12 insertions(+), 2 deletions(-)
-
-diff --git a/configure.in b/configure.in
-index f78f81f..181b7f9 100644
---- a/configure.in
-+++ b/configure.in
-@@ -178,14 +178,24 @@ AC_EGREP_CPP(yes,
- #endif
- ], LIBS="$LIBS -lsocket -linet";seqptx=1)
-+AC_CHECKING(SVR4)
-+AC_EGREP_CPP(yes,
-+[main () {
-+#if defined(SVR4) || defined(__SVR4)
-+  yes;
-+#endif
-+], AC_NOTE(- you have a SVR4 system) AC_DEFINE(SVR4) svr4=1)
-+if test -n "$svr4" ; then
- oldlibs="$LIBS"
- LIBS="$LIBS -lelf"
- AC_CHECKING(SVR4)
- AC_TRY_LINK([#include <utmpx.h>
- ],,
--[AC_CHECK_HEADER(dwarf.h, AC_DEFINE(SVR4) AC_DEFINE(BUGGYGETLOGIN),
--[AC_CHECK_HEADER(elf.h, AC_DEFINE(SVR4) AC_DEFINE(BUGGYGETLOGIN))])]
-+[AC_CHECK_HEADER(dwarf.h, AC_DEFINE(BUGGYGETLOGIN),
-+[AC_CHECK_HEADER(elf.h, AC_DEFINE(BUGGYGETLOGIN))])]
- ,LIBS="$oldlibs")
-+fi
-+
- AC_CHECK_HEADERS([stropts.h string.h strings.h])
- AC_CHECKING(for Solaris 2.x)
--- 
-1.8.4.5
-
diff --git a/package/screen/screen-0006-install-no-backup-binary.patch b/package/screen/screen-0006-install-no-backup-binary.patch
deleted file mode 100644 (file)
index 504862a..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-From: Maarten ter Huurne <maarten@treewalker.org>
-Date: Sun, 14 Sep 2014 23:58:34 +0200
-Subject: Do not create backup of old installed binary
-
-This is a rather unusual feature that packagers will not expect.
-
-Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
----
- Makefile.in | 4 ----
- 1 file changed, 4 deletions(-)
-
-diff --git a/Makefile.in b/Makefile.in
-index 187a69b..65549e9 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -83,12 +83,9 @@ screen: $(OFILES)
-           $(OPTIONS) $(CFLAGS) $<
- install_bin: .version screen
--      -if [ -f $(DESTDIR)$(bindir)/$(SCREEN) ] && [ ! -f $(DESTDIR)$(bindir)/$(SCREEN).old ]; \
--              then mv $(DESTDIR)$(bindir)/$(SCREEN) $(DESTDIR)$(bindir)/$(SCREEN).old; fi
-       $(INSTALL_PROGRAM) screen $(DESTDIR)$(bindir)/$(SCREEN)
-       -chown root $(DESTDIR)$(bindir)/$(SCREEN) && chmod 4755 $(DESTDIR)$(bindir)/$(SCREEN)
- # This doesn't work if $(bindir)/screen is a symlink
--      -if [ -f $(DESTDIR)$(bindir)/screen ] && [ ! -f $(DESTDIR)$(bindir)/screen.old ]; then mv $(DESTDIR)$(bindir)/screen $(DESTDIR)$(bindir)/screen.old; fi
-       rm -f $(DESTDIR)$(bindir)/screen
-       (cd $(DESTDIR)$(bindir) && ln -f -s $(SCREEN) screen)
-       cp $(srcdir)/utf8encodings/?? $(DESTDIR)$(SCREENENCODINGS)
-@@ -113,7 +110,6 @@ installdirs:
- uninstall: .version
-       rm -f $(DESTDIR)$(bindir)/$(SCREEN)
-       rm -f $(DESTDIR)$(bindir)/screen
--      -mv $(DESTDIR)$(bindir)/screen.old $(DESTDIR)$(bindir)/screen
-       rm -f $(DESTDIR)$(ETCSCREENRC)
-       cd doc; $(MAKE) uninstall
--- 
-1.8.4.5
-
diff --git a/package/screen/screen-0007-install-always-chmod.patch b/package/screen/screen-0007-install-always-chmod.patch
deleted file mode 100644 (file)
index 0aa7690..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-From: Maarten ter Huurne <maarten@treewalker.org>
-Date: Mon, 15 Sep 2014 00:03:05 +0200
-Subject: Change binary permission flags even if chown fails
-
-Typically when creating a package, the build is not run as root, so
-the chown will fail. But the chmod can still be done.
-
-Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
----
- Makefile.in | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/Makefile.in b/Makefile.in
-index 65549e9..3c12fdb 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -84,7 +84,8 @@ screen: $(OFILES)
- install_bin: .version screen
-       $(INSTALL_PROGRAM) screen $(DESTDIR)$(bindir)/$(SCREEN)
--      -chown root $(DESTDIR)$(bindir)/$(SCREEN) && chmod 4755 $(DESTDIR)$(bindir)/$(SCREEN)
-+      -chown root $(DESTDIR)$(bindir)/$(SCREEN)
-+      -chmod 4755 $(DESTDIR)$(bindir)/$(SCREEN)
- # This doesn't work if $(bindir)/screen is a symlink
-       rm -f $(DESTDIR)$(bindir)/screen
-       (cd $(DESTDIR)$(bindir) && ln -f -s $(SCREEN) screen)
--- 
-1.8.4.5
-
diff --git a/package/screen/screen-0008-install-nonversioned-binary.patch b/package/screen/screen-0008-install-nonversioned-binary.patch
deleted file mode 100644 (file)
index ecbbd65..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-From: Maarten ter Huurne <maarten@treewalker.org>
-Date: Mon, 15 Sep 2014 00:06:20 +0200
-Subject: Support overriding SCREEN to get a non-versioned binary
-
-If a packager runs "make install SCREEN=screen", do not create
-"screen" as a symlink to itself.
-
-Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
----
- Makefile.in | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/Makefile.in b/Makefile.in
-index 3c12fdb..860f351 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -86,9 +86,11 @@ install_bin: .version screen
-       $(INSTALL_PROGRAM) screen $(DESTDIR)$(bindir)/$(SCREEN)
-       -chown root $(DESTDIR)$(bindir)/$(SCREEN)
-       -chmod 4755 $(DESTDIR)$(bindir)/$(SCREEN)
-+ifneq (${SCREEN},screen)
- # This doesn't work if $(bindir)/screen is a symlink
-       rm -f $(DESTDIR)$(bindir)/screen
-       (cd $(DESTDIR)$(bindir) && ln -f -s $(SCREEN) screen)
-+endif
-       cp $(srcdir)/utf8encodings/?? $(DESTDIR)$(SCREENENCODINGS)
- ###############################################################################
--- 
-1.8.4.5
-
diff --git a/package/screen/screen-0009-install-dir-dependency.patch b/package/screen/screen-0009-install-dir-dependency.patch
deleted file mode 100644 (file)
index 9016cb9..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-From: Maarten ter Huurne <maarten@treewalker.org>
-Date: Mon, 15 Sep 2014 02:27:09 +0200
-Subject: Ensure that installation dirs exist before copying files into them
-
-Since the "install_bin" target requires the installation directories
-to exist, it should depend on the "installdirs" target. The previous
-approach of having "install" depend on "installdirs" is not reliable.
-
-For example, in a parallel build, there was no guarantee that
-"installdirs" would be finished before "install_bin" runs. Also if
-the user requested only "install_bin" to be made, "installdirs" would
-be skipped altogether.
-
-Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
----
- Makefile.in | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/Makefile.in b/Makefile.in
-index 860f351..f0fe08d 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -82,7 +82,7 @@ screen: $(OFILES)
-       $(CC) -c -I. -I$(srcdir) $(M_CFLAGS) $(CPPFLAGS) $(DEFS) \
-           $(OPTIONS) $(CFLAGS) $<
--install_bin: .version screen
-+install_bin: .version screen installdirs
-       $(INSTALL_PROGRAM) screen $(DESTDIR)$(bindir)/$(SCREEN)
-       -chown root $(DESTDIR)$(bindir)/$(SCREEN)
-       -chmod 4755 $(DESTDIR)$(bindir)/$(SCREEN)
-@@ -94,7 +94,7 @@ endif
-       cp $(srcdir)/utf8encodings/?? $(DESTDIR)$(SCREENENCODINGS)
- ###############################################################################
--install: installdirs install_bin
-+install: install_bin
-       cd doc ; $(MAKE) install
-       -if [ -d /usr/lib/terminfo ]; then \
-               PATH="$$PATH:/usr/5bin" tic ${srcdir}/terminfo/screeninfo.src; \
--- 
-1.8.4.5
-
diff --git a/package/screen/screen-0010-rename-sched_h.patch b/package/screen/screen-0010-rename-sched_h.patch
deleted file mode 100644 (file)
index cdbb033..0000000
+++ /dev/null
@@ -1,142 +0,0 @@
-From: Maarten ter Huurne <maarten@treewalker.org>
-Date: Mon, 15 Sep 2014 00:24:41 +0200
-Subject: Renamed sched.h to eventqueue.h
-
-There is a <sched.h> system header that got shadowed by "sched.h".
-While Screen itself doesn't include <sched.h>, other system headers
-might include it indirectly. This broke the build when using uClibc
-with pthread support.
-
-Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
----
- eventqueue.h | 48 ++++++++++++++++++++++++++++++++++++++++++++++++
- sched.h      | 48 ------------------------------------------------
- screen.h     |  2 +-
- 3 files changed, 49 insertions(+), 49 deletions(-)
- create mode 100644 eventqueue.h
- delete mode 100644 sched.h
-
-diff --git a/eventqueue.h b/eventqueue.h
-new file mode 100644
-index 0000000..fdc3fc4
---- /dev/null
-+++ b/eventqueue.h
-@@ -0,0 +1,48 @@
-+/* Copyright (c) 2008, 2009
-+ *      Juergen Weigert (jnweiger@immd4.informatik.uni-erlangen.de)
-+ *      Michael Schroeder (mlschroe@immd4.informatik.uni-erlangen.de)
-+ *      Micah Cowan (micah@cowan.name)
-+ *      Sadrul Habib Chowdhury (sadrul@users.sourceforge.net)
-+ * Copyright (c) 1993-2002, 2003, 2005, 2006, 2007
-+ *      Juergen Weigert (jnweiger@immd4.informatik.uni-erlangen.de)
-+ *      Michael Schroeder (mlschroe@immd4.informatik.uni-erlangen.de)
-+ * Copyright (c) 1987 Oliver Laumann
-+ *
-+ * 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 3, 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 (see the file COPYING); if not, see
-+ * http://www.gnu.org/licenses/, or contact Free Software Foundation, Inc.,
-+ * 51 Franklin Street, Fifth Floor, Boston, MA  02111-1301  USA
-+ *
-+ ****************************************************************
-+ * $Id$ GNU
-+ */
-+
-+struct event
-+{
-+  struct event *next;
-+  void (*handler) __P((struct event *, char *));
-+  char *data;
-+  int fd;
-+  int type;
-+  int pri;
-+  struct timeval timeout;
-+  int queued;         /* in evs queue */
-+  int active;         /* in fdset */
-+  int *condpos;               /* only active if condpos - condneg > 0 */
-+  int *condneg;
-+};
-+
-+#define EV_TIMEOUT    0
-+#define EV_READ               1
-+#define EV_WRITE      2
-+#define EV_ALWAYS     3
-diff --git a/sched.h b/sched.h
-deleted file mode 100644
-index fdc3fc4..0000000
---- a/sched.h
-+++ /dev/null
-@@ -1,48 +0,0 @@
--/* Copyright (c) 2008, 2009
-- *      Juergen Weigert (jnweiger@immd4.informatik.uni-erlangen.de)
-- *      Michael Schroeder (mlschroe@immd4.informatik.uni-erlangen.de)
-- *      Micah Cowan (micah@cowan.name)
-- *      Sadrul Habib Chowdhury (sadrul@users.sourceforge.net)
-- * Copyright (c) 1993-2002, 2003, 2005, 2006, 2007
-- *      Juergen Weigert (jnweiger@immd4.informatik.uni-erlangen.de)
-- *      Michael Schroeder (mlschroe@immd4.informatik.uni-erlangen.de)
-- * Copyright (c) 1987 Oliver Laumann
-- *
-- * 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 3, 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 (see the file COPYING); if not, see
-- * http://www.gnu.org/licenses/, or contact Free Software Foundation, Inc.,
-- * 51 Franklin Street, Fifth Floor, Boston, MA  02111-1301  USA
-- *
-- ****************************************************************
-- * $Id$ GNU
-- */
--
--struct event
--{
--  struct event *next;
--  void (*handler) __P((struct event *, char *));
--  char *data;
--  int fd;
--  int type;
--  int pri;
--  struct timeval timeout;
--  int queued;         /* in evs queue */
--  int active;         /* in fdset */
--  int *condpos;               /* only active if condpos - condneg > 0 */
--  int *condneg;
--};
--
--#define EV_TIMEOUT    0
--#define EV_READ               1
--#define EV_WRITE      2
--#define EV_ALWAYS     3
-diff --git a/screen.h b/screen.h
-index 603ca3f..34238c8 100644
---- a/screen.h
-+++ b/screen.h
-@@ -43,7 +43,7 @@
- #include "osdef.h"
- #include "ansi.h"
--#include "sched.h"
-+#include "eventqueue.h"
- #include "acls.h"
- #include "comm.h"
- #include "layer.h"
--- 
-1.8.4.5
-
diff --git a/package/sdl/0001-use-correct-directfb-config.patch b/package/sdl/0001-use-correct-directfb-config.patch
new file mode 100644 (file)
index 0000000..ef671a1
--- /dev/null
@@ -0,0 +1,25 @@
+[PATCH] configure.in: use correct directfb-config in version check
+
+The configure script has just checked for the correct directfb-config
+script, so also use it for the version check instead of whatever
+might be in the path.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ configure.in |    2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+Index: SDL-1.2.15/configure.in
+===================================================================
+--- SDL-1.2.15.orig/configure.in
++++ SDL-1.2.15/configure.in
+@@ -1276,7 +1276,7 @@
+         else
+             set -- `echo $DIRECTFB_REQUIRED_VERSION | sed 's/\./ /g'`
+             NEED_VERSION=`expr $1 \* 10000 + $2 \* 100 + $3`
+-            set -- `directfb-config --version | sed 's/\./ /g'`
++            set -- `$DIRECTFBCONFIG --version | sed 's/\./ /g'`
+             HAVE_VERSION=`expr $1 \* 10000 + $2 \* 100 + $3`
+             if test $HAVE_VERSION -ge $NEED_VERSION; then
+                 DIRECTFB_CFLAGS=`$DIRECTFBCONFIG --cflags`
+
diff --git a/package/sdl/0002-fix-compilation-with-libx11.patch b/package/sdl/0002-fix-compilation-with-libx11.patch
new file mode 100644 (file)
index 0000000..27f2448
--- /dev/null
@@ -0,0 +1,60 @@
+sdl: Fix compilation with libX11 >= 1.5.99.902
+Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
+
+# HG changeset patch
+# User Azamat H. Hackimov <azamat.hackimov@gmail.com>
+# Date 1370184533 -21600
+# Node ID 91ad7b43317a6387e115ecdf63a49137f47e42c8
+# Parent  f7fd5c3951b9ed922fdf696f7182e71b58a13268
+Fix compilation with libX11 >= 1.5.99.902.
+
+These changes fixes bug #1769 for SDL 1.2
+(http://bugzilla.libsdl.org/show_bug.cgi?id=1769).
+
+diff -r f7fd5c3951b9 -r 91ad7b43317a configure.in
+--- a/configure.in     Wed Apr 17 00:56:53 2013 -0700
++++ b/configure.in     Sun Jun 02 20:48:53 2013 +0600
+@@ -1169,6 +1169,17 @@
+             if test x$definitely_enable_video_x11_xrandr = xyes; then
+                 AC_DEFINE(SDL_VIDEO_DRIVER_X11_XRANDR)
+             fi
++            AC_MSG_CHECKING(for const parameter to _XData32)
++            have_const_param_xdata32=no
++            AC_TRY_COMPILE([
++              #include <X11/Xlibint.h>
++              extern int _XData32(Display *dpy,register _Xconst long *data,unsigned len);
++            ],[
++            ],[
++            have_const_param_xdata32=yes
++            AC_DEFINE(SDL_VIDEO_DRIVER_X11_CONST_PARAM_XDATA32)
++            ])
++            AC_MSG_RESULT($have_const_param_xdata32)
+         fi
+     fi
+ }
+diff -r f7fd5c3951b9 -r 91ad7b43317a include/SDL_config.h.in
+--- a/include/SDL_config.h.in  Wed Apr 17 00:56:53 2013 -0700
++++ b/include/SDL_config.h.in  Sun Jun 02 20:48:53 2013 +0600
+@@ -283,6 +283,7 @@
+ #undef SDL_VIDEO_DRIVER_WINDIB
+ #undef SDL_VIDEO_DRIVER_WSCONS
+ #undef SDL_VIDEO_DRIVER_X11
++#undef SDL_VIDEO_DRIVER_X11_CONST_PARAM_XDATA32
+ #undef SDL_VIDEO_DRIVER_X11_DGAMOUSE
+ #undef SDL_VIDEO_DRIVER_X11_DYNAMIC
+ #undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT
+diff -r f7fd5c3951b9 -r 91ad7b43317a src/video/x11/SDL_x11sym.h
+--- a/src/video/x11/SDL_x11sym.h       Wed Apr 17 00:56:53 2013 -0700
++++ b/src/video/x11/SDL_x11sym.h       Sun Jun 02 20:48:53 2013 +0600
+@@ -165,7 +165,11 @@
+  */
+ #ifdef LONG64
+ SDL_X11_MODULE(IO_32BIT)
++#if SDL_VIDEO_DRIVER_X11_CONST_PARAM_XDATA32
++SDL_X11_SYM(int,_XData32,(Display *dpy,register _Xconst long *data,unsigned len),(dpy,data,len),return)
++#else
+ SDL_X11_SYM(int,_XData32,(Display *dpy,register long *data,unsigned len),(dpy,data,len),return)
++#endif
+ SDL_X11_SYM(void,_XRead32,(Display *dpy,register long *data,long len),(dpy,data,len),)
+ #endif
diff --git a/package/sdl/sdl-0001-use-correct-directfb-config.patch b/package/sdl/sdl-0001-use-correct-directfb-config.patch
deleted file mode 100644 (file)
index ef671a1..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-[PATCH] configure.in: use correct directfb-config in version check
-
-The configure script has just checked for the correct directfb-config
-script, so also use it for the version check instead of whatever
-might be in the path.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- configure.in |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-Index: SDL-1.2.15/configure.in
-===================================================================
---- SDL-1.2.15.orig/configure.in
-+++ SDL-1.2.15/configure.in
-@@ -1276,7 +1276,7 @@
-         else
-             set -- `echo $DIRECTFB_REQUIRED_VERSION | sed 's/\./ /g'`
-             NEED_VERSION=`expr $1 \* 10000 + $2 \* 100 + $3`
--            set -- `directfb-config --version | sed 's/\./ /g'`
-+            set -- `$DIRECTFBCONFIG --version | sed 's/\./ /g'`
-             HAVE_VERSION=`expr $1 \* 10000 + $2 \* 100 + $3`
-             if test $HAVE_VERSION -ge $NEED_VERSION; then
-                 DIRECTFB_CFLAGS=`$DIRECTFBCONFIG --cflags`
-
diff --git a/package/sdl/sdl-0002-fix-compilation-with-libx11.patch b/package/sdl/sdl-0002-fix-compilation-with-libx11.patch
deleted file mode 100644 (file)
index 27f2448..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-sdl: Fix compilation with libX11 >= 1.5.99.902
-Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
-
-# HG changeset patch
-# User Azamat H. Hackimov <azamat.hackimov@gmail.com>
-# Date 1370184533 -21600
-# Node ID 91ad7b43317a6387e115ecdf63a49137f47e42c8
-# Parent  f7fd5c3951b9ed922fdf696f7182e71b58a13268
-Fix compilation with libX11 >= 1.5.99.902.
-
-These changes fixes bug #1769 for SDL 1.2
-(http://bugzilla.libsdl.org/show_bug.cgi?id=1769).
-
-diff -r f7fd5c3951b9 -r 91ad7b43317a configure.in
---- a/configure.in     Wed Apr 17 00:56:53 2013 -0700
-+++ b/configure.in     Sun Jun 02 20:48:53 2013 +0600
-@@ -1169,6 +1169,17 @@
-             if test x$definitely_enable_video_x11_xrandr = xyes; then
-                 AC_DEFINE(SDL_VIDEO_DRIVER_X11_XRANDR)
-             fi
-+            AC_MSG_CHECKING(for const parameter to _XData32)
-+            have_const_param_xdata32=no
-+            AC_TRY_COMPILE([
-+              #include <X11/Xlibint.h>
-+              extern int _XData32(Display *dpy,register _Xconst long *data,unsigned len);
-+            ],[
-+            ],[
-+            have_const_param_xdata32=yes
-+            AC_DEFINE(SDL_VIDEO_DRIVER_X11_CONST_PARAM_XDATA32)
-+            ])
-+            AC_MSG_RESULT($have_const_param_xdata32)
-         fi
-     fi
- }
-diff -r f7fd5c3951b9 -r 91ad7b43317a include/SDL_config.h.in
---- a/include/SDL_config.h.in  Wed Apr 17 00:56:53 2013 -0700
-+++ b/include/SDL_config.h.in  Sun Jun 02 20:48:53 2013 +0600
-@@ -283,6 +283,7 @@
- #undef SDL_VIDEO_DRIVER_WINDIB
- #undef SDL_VIDEO_DRIVER_WSCONS
- #undef SDL_VIDEO_DRIVER_X11
-+#undef SDL_VIDEO_DRIVER_X11_CONST_PARAM_XDATA32
- #undef SDL_VIDEO_DRIVER_X11_DGAMOUSE
- #undef SDL_VIDEO_DRIVER_X11_DYNAMIC
- #undef SDL_VIDEO_DRIVER_X11_DYNAMIC_XEXT
-diff -r f7fd5c3951b9 -r 91ad7b43317a src/video/x11/SDL_x11sym.h
---- a/src/video/x11/SDL_x11sym.h       Wed Apr 17 00:56:53 2013 -0700
-+++ b/src/video/x11/SDL_x11sym.h       Sun Jun 02 20:48:53 2013 +0600
-@@ -165,7 +165,11 @@
-  */
- #ifdef LONG64
- SDL_X11_MODULE(IO_32BIT)
-+#if SDL_VIDEO_DRIVER_X11_CONST_PARAM_XDATA32
-+SDL_X11_SYM(int,_XData32,(Display *dpy,register _Xconst long *data,unsigned len),(dpy,data,len),return)
-+#else
- SDL_X11_SYM(int,_XData32,(Display *dpy,register long *data,unsigned len),(dpy,data,len),return)
-+#endif
- SDL_X11_SYM(void,_XRead32,(Display *dpy,register long *data,long len),(dpy,data,len),)
- #endif
diff --git a/package/ser2net/0001-Fix-TIOCSRS485-undeclared-error.patch b/package/ser2net/0001-Fix-TIOCSRS485-undeclared-error.patch
new file mode 100644 (file)
index 0000000..9c6d168
--- /dev/null
@@ -0,0 +1,65 @@
+ser2net: Fix compilation failures due to missing TIOCSRS485 macro
+
+Patch sent upstream:
+       https://sourceforge.net/p/ser2net/mailman/message/32905302/
+
+Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
+
+From: Yegor Yefremov <yegorslists@googlemail.com>
+
+include <asm-generic/ioctls.h> fixes compilations for systems,
+where <asm-generic/ioctls.h> won't be included automatically.
+
+Move special Linux includes to dataxfer.h.
+
+Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
+---
+ dataxfer.h | 5 +++--
+ devcfg.c   | 2 --
+ 2 files changed, 3 insertions(+), 4 deletions(-)
+
+diff --git a/dataxfer.h b/dataxfer.h
+index bd2665e..c3d7431 100644
+--- a/dataxfer.h
++++ b/dataxfer.h
+@@ -20,8 +20,6 @@
+ #ifndef DATAXFER
+ #define DATAXFER
+-#include <linux/serial.h>
+-
+ #include "controller.h"
+ #ifdef USE_UUCP_LOCKING
+@@ -30,6 +28,9 @@ extern int uucp_locking_enabled;
+ #ifdef linux
++#include <linux/serial.h>
++#include <asm-generic/ioctls.h>
++
+ #define USE_RS485_FEATURE
+ /* Check, if the toolchain provides serial_rs485 structure and macros */
+diff --git a/devcfg.c b/devcfg.c
+index ab819a6..1f84714 100644
+--- a/devcfg.c
++++ b/devcfg.c
+@@ -18,7 +18,6 @@
+  */
+ /* This code handles generating the configuration for the serial port. */
+-
+ #include <unistd.h>
+ #include <termios.h>
+ #include <sys/ioctl.h>
+@@ -31,7 +30,6 @@
+ #include <signal.h>
+ #include <errno.h>
+ #include <syslog.h>
+-#include <linux/serial.h>
+ #include "ser2net.h"
+ #include "selector.h"
+-- 
+1.9.1
diff --git a/package/ser2net/ser2net-0001-Fix-TIOCSRS485-undeclared-error.patch b/package/ser2net/ser2net-0001-Fix-TIOCSRS485-undeclared-error.patch
deleted file mode 100644 (file)
index 9c6d168..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-ser2net: Fix compilation failures due to missing TIOCSRS485 macro
-
-Patch sent upstream:
-       https://sourceforge.net/p/ser2net/mailman/message/32905302/
-
-Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
-
-From: Yegor Yefremov <yegorslists@googlemail.com>
-
-include <asm-generic/ioctls.h> fixes compilations for systems,
-where <asm-generic/ioctls.h> won't be included automatically.
-
-Move special Linux includes to dataxfer.h.
-
-Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
----
- dataxfer.h | 5 +++--
- devcfg.c   | 2 --
- 2 files changed, 3 insertions(+), 4 deletions(-)
-
-diff --git a/dataxfer.h b/dataxfer.h
-index bd2665e..c3d7431 100644
---- a/dataxfer.h
-+++ b/dataxfer.h
-@@ -20,8 +20,6 @@
- #ifndef DATAXFER
- #define DATAXFER
--#include <linux/serial.h>
--
- #include "controller.h"
- #ifdef USE_UUCP_LOCKING
-@@ -30,6 +28,9 @@ extern int uucp_locking_enabled;
- #ifdef linux
-+#include <linux/serial.h>
-+#include <asm-generic/ioctls.h>
-+
- #define USE_RS485_FEATURE
- /* Check, if the toolchain provides serial_rs485 structure and macros */
-diff --git a/devcfg.c b/devcfg.c
-index ab819a6..1f84714 100644
---- a/devcfg.c
-+++ b/devcfg.c
-@@ -18,7 +18,6 @@
-  */
- /* This code handles generating the configuration for the serial port. */
--
- #include <unistd.h>
- #include <termios.h>
- #include <sys/ioctl.h>
-@@ -31,7 +30,6 @@
- #include <signal.h>
- #include <errno.h>
- #include <syslog.h>
--#include <linux/serial.h>
- #include "ser2net.h"
- #include "selector.h"
--- 
-1.9.1
diff --git a/package/setserial/0001-build-system-fix.patch b/package/setserial/0001-build-system-fix.patch
new file mode 100644 (file)
index 0000000..eec7993
--- /dev/null
@@ -0,0 +1,28 @@
+Install the setserial program in /usr/bin instead of /bin, and make
+sure that the directories (especially the manpages directory) are
+created before installing files to them. This is similar to what
+automake does.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ Makefile.in |    7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+Index: setserial-2.17/Makefile.in
+===================================================================
+--- setserial-2.17.orig/Makefile.in
++++ setserial-2.17/Makefile.in
+@@ -26,9 +26,10 @@ setserial.cat: setserial.8
+       nroff -man setserial.8 > setserial.cat
+ install: setserial setserial.8
+-      $(INSTALL_PROGRAM) setserial $(DESTDIR)/bin
+-      $(STRIP) $(DESTDIR)/bin/setserial
+-      $(INSTALL_DATA) setserial.8 $(DESTDIR)/usr/man/man8
++      mkdir -p $(DESTDIR)/usr/bin
++      $(INSTALL_PROGRAM) setserial $(DESTDIR)/usr/bin
++      mkdir -p $(DESTDIR)/usr/share/man/man8
++      $(INSTALL_DATA) setserial.8 $(DESTDIR)/usr/share/man/man8
+ clean:
+       $(RM) setserial setserial.o setserial.cat *~
diff --git a/package/setserial/0002-tiocghayesesp-build-fix.patch b/package/setserial/0002-tiocghayesesp-build-fix.patch
new file mode 100644 (file)
index 0000000..176a0c9
--- /dev/null
@@ -0,0 +1,28 @@
+[PATCH] setserial: fix build with 2.6.33+ kernel headers
+
+linux/hayesesp.h got removed in 2.6.33, but some archs (like x86) still
+define the TIOCGHAYESESP ioctl, breaking the build.
+
+It's very unlikely to be of interest anymore, so just undef it.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ setserial.c |    5 +++++
+ 1 file changed, 5 insertions(+)
+
+Index: setserial-2.17/setserial.c
+===================================================================
+--- setserial-2.17.orig/setserial.c
++++ setserial-2.17/setserial.c
+@@ -24,6 +24,11 @@
+ #endif
+ #include <linux/serial.h>
++/* linux/hayesesp.h got removed in 2.6.33 but some archs (like x86)
++   still define TIOCGHAYESESP. It's very unlikely to be of interest
++   anymore, so just undef it */
++#undef TIOCGHAYESESP
++
+ #include "version.h"
+ static char version_str[] = "setserial version " SETSERIAL_VERSION ", "
diff --git a/package/setserial/setserial-0001-build-system-fix.patch b/package/setserial/setserial-0001-build-system-fix.patch
deleted file mode 100644 (file)
index eec7993..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-Install the setserial program in /usr/bin instead of /bin, and make
-sure that the directories (especially the manpages directory) are
-created before installing files to them. This is similar to what
-automake does.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
----
- Makefile.in |    7 ++++---
- 1 file changed, 4 insertions(+), 3 deletions(-)
-
-Index: setserial-2.17/Makefile.in
-===================================================================
---- setserial-2.17.orig/Makefile.in
-+++ setserial-2.17/Makefile.in
-@@ -26,9 +26,10 @@ setserial.cat: setserial.8
-       nroff -man setserial.8 > setserial.cat
- install: setserial setserial.8
--      $(INSTALL_PROGRAM) setserial $(DESTDIR)/bin
--      $(STRIP) $(DESTDIR)/bin/setserial
--      $(INSTALL_DATA) setserial.8 $(DESTDIR)/usr/man/man8
-+      mkdir -p $(DESTDIR)/usr/bin
-+      $(INSTALL_PROGRAM) setserial $(DESTDIR)/usr/bin
-+      mkdir -p $(DESTDIR)/usr/share/man/man8
-+      $(INSTALL_DATA) setserial.8 $(DESTDIR)/usr/share/man/man8
- clean:
-       $(RM) setserial setserial.o setserial.cat *~
diff --git a/package/setserial/setserial-0002-tiocghayesesp-build-fix.patch b/package/setserial/setserial-0002-tiocghayesesp-build-fix.patch
deleted file mode 100644 (file)
index 176a0c9..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-[PATCH] setserial: fix build with 2.6.33+ kernel headers
-
-linux/hayesesp.h got removed in 2.6.33, but some archs (like x86) still
-define the TIOCGHAYESESP ioctl, breaking the build.
-
-It's very unlikely to be of interest anymore, so just undef it.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- setserial.c |    5 +++++
- 1 file changed, 5 insertions(+)
-
-Index: setserial-2.17/setserial.c
-===================================================================
---- setserial-2.17.orig/setserial.c
-+++ setserial-2.17/setserial.c
-@@ -24,6 +24,11 @@
- #endif
- #include <linux/serial.h>
-+/* linux/hayesesp.h got removed in 2.6.33 but some archs (like x86)
-+   still define TIOCGHAYESESP. It's very unlikely to be of interest
-+   anymore, so just undef it */
-+#undef TIOCGHAYESESP
-+
- #include "version.h"
- static char version_str[] = "setserial version " SETSERIAL_VERSION ", "
diff --git a/package/sispmctl/0001-configure-add-pkg-config-support.patch b/package/sispmctl/0001-configure-add-pkg-config-support.patch
new file mode 100644 (file)
index 0000000..9466080
--- /dev/null
@@ -0,0 +1,70 @@
+From 8002a7e6fa965dfd304d098fbc64b0f1a6e3b465 Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@openwide.fr>
+Date: Sun, 24 Aug 2014 22:34:29 +0200
+Subject: [PATCH 1/1] configure: add pkg-config support
+
+The static linking doesn't works with libusb-compat when using libusb-config.
+Also the CFLAGS initialization with libusb-config --cflags is comented out.
+
+Based on libftdi's patch, add the support for pkg-config to link sispmctl
+correctly.
+
+This allow to add correct include directory to CFLAGS
+(Add -I$(STAGING_DIR)/usr/include and -I$(STAGING_DIR)/usr/include/libusb-1.0)
+Also add needed libraries during static linking (-lusb -lusb-1.0 and -pthread)
+
+Signed-off-by: Romain Naour <romain.naour@openwide.fr>
+---
+ configure.in | 36 +++++++++++-------------------------
+ 1 file changed, 11 insertions(+), 25 deletions(-)
+
+diff --git a/configure.in b/configure.in
+index 08d39ea..65d0c1d 100644
+--- a/configure.in
++++ b/configure.in
+@@ -23,31 +23,17 @@ AC_SUBST(WEBDIR)
+ AC_ARG_WITH(bindaddr,[  --with-bindaddr=IP bind listening socket to IP], [BINDADDR="$withval"])
+ AC_SUBST(BINDADDR)
+-
+-# Checks for libraries.
+-dnl check for libusb-config
+-AC_PATH_PROG(HAVELIBUSB, libusb-config, $PATH)
+-
+-if test -e "$HAVELIBUSB"; then
+-   dnl   LIBUSB_CFLAGS=`$HAVELIBUSB --cflags`
+-   LIBUSB_LIBS=`$HAVELIBUSB --libs`
+-   CFLAGS="$CFLAGS $LIBUSB_CFLAGS"
+-   LIBS="$LIBS $LIBUSB_LIBS"
+-else
+-   AC_MSG_ERROR([*** libusb-config not found. You need a working libusb installation. Version >=0.1.7])
+-fi
+-
+-dnl check for version of libusb
+-AC_MSG_CHECKING([if libusb version is >= 0.1.9])
+-libusb_version_needed="1009"
+-libusb_version=`$HAVELIBUSB --version | sed -e "s/libusb //" | awk 'BEGIN { FS = "."; } { printf "%d", ($''1 * 1000 + $''2) * 1000 + $''3;}'`
+-
+-if test $libusb_version -lt $libusb_version_needed; then
+-   AC_MSG_RESULT(no)
+-   AC_MSG_ERROR([*** libusb is too old ($libusb_version). You need a libusb installation newer or equal to 0.1.9.])
+-else
+-   AC_MSG_RESULT(yes)
+-fi
++dnl check for libusb
++PKG_CHECK_MODULES(LIBUSB, libusb >= 0.1.11)
++CFLAGS="$CFLAGS $LIBUSB_CFLAGS"
++LIBS="$LIBS $LIBUSB_LIBS"
++
++dnl Check for recent pkg-config which supports Requires.private
++case `$PKG_CONFIG --version` in
++0.?|0.1[0-7]) PKGCONFIG_REQUIRES="Requires"; ;;
++*) PKGCONFIG_REQUIRES="Requires.private"; ;;
++esac
++AC_SUBST(PKGCONFIG_REQUIRES)
+ # Checks for header files.
+ AC_HEADER_STDC
+-- 
+1.9.3
+
diff --git a/package/sispmctl/sispmctl-01-configure-add-pkg-config-support.patch b/package/sispmctl/sispmctl-01-configure-add-pkg-config-support.patch
deleted file mode 100644 (file)
index 9466080..0000000
+++ /dev/null
@@ -1,70 +0,0 @@
-From 8002a7e6fa965dfd304d098fbc64b0f1a6e3b465 Mon Sep 17 00:00:00 2001
-From: Romain Naour <romain.naour@openwide.fr>
-Date: Sun, 24 Aug 2014 22:34:29 +0200
-Subject: [PATCH 1/1] configure: add pkg-config support
-
-The static linking doesn't works with libusb-compat when using libusb-config.
-Also the CFLAGS initialization with libusb-config --cflags is comented out.
-
-Based on libftdi's patch, add the support for pkg-config to link sispmctl
-correctly.
-
-This allow to add correct include directory to CFLAGS
-(Add -I$(STAGING_DIR)/usr/include and -I$(STAGING_DIR)/usr/include/libusb-1.0)
-Also add needed libraries during static linking (-lusb -lusb-1.0 and -pthread)
-
-Signed-off-by: Romain Naour <romain.naour@openwide.fr>
----
- configure.in | 36 +++++++++++-------------------------
- 1 file changed, 11 insertions(+), 25 deletions(-)
-
-diff --git a/configure.in b/configure.in
-index 08d39ea..65d0c1d 100644
---- a/configure.in
-+++ b/configure.in
-@@ -23,31 +23,17 @@ AC_SUBST(WEBDIR)
- AC_ARG_WITH(bindaddr,[  --with-bindaddr=IP bind listening socket to IP], [BINDADDR="$withval"])
- AC_SUBST(BINDADDR)
--
--# Checks for libraries.
--dnl check for libusb-config
--AC_PATH_PROG(HAVELIBUSB, libusb-config, $PATH)
--
--if test -e "$HAVELIBUSB"; then
--   dnl   LIBUSB_CFLAGS=`$HAVELIBUSB --cflags`
--   LIBUSB_LIBS=`$HAVELIBUSB --libs`
--   CFLAGS="$CFLAGS $LIBUSB_CFLAGS"
--   LIBS="$LIBS $LIBUSB_LIBS"
--else
--   AC_MSG_ERROR([*** libusb-config not found. You need a working libusb installation. Version >=0.1.7])
--fi
--
--dnl check for version of libusb
--AC_MSG_CHECKING([if libusb version is >= 0.1.9])
--libusb_version_needed="1009"
--libusb_version=`$HAVELIBUSB --version | sed -e "s/libusb //" | awk 'BEGIN { FS = "."; } { printf "%d", ($''1 * 1000 + $''2) * 1000 + $''3;}'`
--
--if test $libusb_version -lt $libusb_version_needed; then
--   AC_MSG_RESULT(no)
--   AC_MSG_ERROR([*** libusb is too old ($libusb_version). You need a libusb installation newer or equal to 0.1.9.])
--else
--   AC_MSG_RESULT(yes)
--fi
-+dnl check for libusb
-+PKG_CHECK_MODULES(LIBUSB, libusb >= 0.1.11)
-+CFLAGS="$CFLAGS $LIBUSB_CFLAGS"
-+LIBS="$LIBS $LIBUSB_LIBS"
-+
-+dnl Check for recent pkg-config which supports Requires.private
-+case `$PKG_CONFIG --version` in
-+0.?|0.1[0-7]) PKGCONFIG_REQUIRES="Requires"; ;;
-+*) PKGCONFIG_REQUIRES="Requires.private"; ;;
-+esac
-+AC_SUBST(PKGCONFIG_REQUIRES)
- # Checks for header files.
- AC_HEADER_STDC
--- 
-1.9.3
-
diff --git a/package/smstools3/0001-fix-Makefile.patch b/package/smstools3/0001-fix-Makefile.patch
new file mode 100644 (file)
index 0000000..5842357
--- /dev/null
@@ -0,0 +1,29 @@
+Makefile: fix rules
+
+In a Makefile, recipes should follow rules, there can not be variable
+definitions in-between.
+
+Although make-3.81 is happy about it, make-4.0 (and probably 3.82 too)
+do whine loudly.
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+diff -durN smstools3-3.1.15.orig/src/Makefile smstools3-3.1.15/src/Makefile
+--- smstools3-3.1.15.orig/src/Makefile 2010-09-21 13:29:14.000000000 +0200
++++ smstools3-3.1.15/src/Makefile      2014-09-01 22:27:02.719939329 +0200
+@@ -39,14 +39,13 @@
+ all: smsd 
+-smsd: smsd.c extras.o locking.o cfgfile.o logging.o alarm.o smsd_cfg.o charset.o stats.o blacklist.o whitelist.o modeminit.o pdu.o
+-
+ ifneq (,$(findstring SOLARIS,$(CFLAGS)))
+ ifeq (,$(findstring DISABLE_INET_SOCKET,$(CFLAGS)))
+ override LFLAGS += -lsocket -lnsl
+ endif
+ endif
++smsd: smsd.c extras.o locking.o cfgfile.o logging.o alarm.o smsd_cfg.o charset.o stats.o blacklist.o whitelist.o modeminit.o pdu.o
+ ifneq (,$(findstring NOSTATS,$(CFLAGS)))
+       $(CC) $(CFLAGS) -o $@ $^ $(LFLAGS)
+ else 
diff --git a/package/smstools3/smstools3-0000-fix-Makefile.patch b/package/smstools3/smstools3-0000-fix-Makefile.patch
deleted file mode 100644 (file)
index 5842357..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-Makefile: fix rules
-
-In a Makefile, recipes should follow rules, there can not be variable
-definitions in-between.
-
-Although make-3.81 is happy about it, make-4.0 (and probably 3.82 too)
-do whine loudly.
-
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
-
-diff -durN smstools3-3.1.15.orig/src/Makefile smstools3-3.1.15/src/Makefile
---- smstools3-3.1.15.orig/src/Makefile 2010-09-21 13:29:14.000000000 +0200
-+++ smstools3-3.1.15/src/Makefile      2014-09-01 22:27:02.719939329 +0200
-@@ -39,14 +39,13 @@
- all: smsd 
--smsd: smsd.c extras.o locking.o cfgfile.o logging.o alarm.o smsd_cfg.o charset.o stats.o blacklist.o whitelist.o modeminit.o pdu.o
--
- ifneq (,$(findstring SOLARIS,$(CFLAGS)))
- ifeq (,$(findstring DISABLE_INET_SOCKET,$(CFLAGS)))
- override LFLAGS += -lsocket -lnsl
- endif
- endif
-+smsd: smsd.c extras.o locking.o cfgfile.o logging.o alarm.o smsd_cfg.o charset.o stats.o blacklist.o whitelist.o modeminit.o pdu.o
- ifneq (,$(findstring NOSTATS,$(CFLAGS)))
-       $(CC) $(CFLAGS) -o $@ $^ $(LFLAGS)
- else 
diff --git a/package/snmppp/0001-Add-missing-includes.patch b/package/snmppp/0001-Add-missing-includes.patch
new file mode 100644 (file)
index 0000000..c3fa491
--- /dev/null
@@ -0,0 +1,41 @@
+From 6433c6e8d81313ec7ef6c8d3abf96fffa537e23e Mon Sep 17 00:00:00 2001
+From: Luca Ceresoli <luca@lucaceresoli.net>
+Date: Tue, 1 Apr 2014 14:35:25 +0200
+Subject: [PATCH] Add missing includes
+
+Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
+---
+ include/snmp_pp/config_snmp_pp.h.in | 4 ++++
+ include/snmp_pp/smival.h            | 1 +
+ 2 files changed, 5 insertions(+)
+
+diff --git a/include/snmp_pp/config_snmp_pp.h.in b/include/snmp_pp/config_snmp_pp.h.in
+index 89a5b0d..3100713 100644
+--- a/include/snmp_pp/config_snmp_pp.h.in
++++ b/include/snmp_pp/config_snmp_pp.h.in
+@@ -28,6 +28,10 @@
+ #ifndef _CONFIG_SNMP_PP_H_
+ #define _CONFIG_SNMP_PP_H_
++#ifdef __linux__
++#include <sys/socket.h>
++#endif
++
+ #define SNMP_PP_VERSION_STRING "@VERSION@"
+ #define SNMP_PP_VERSION @SNMP_PP_MAJOR_VERSION@
+ #define SNMP_PP_RELEASE @SNMP_PP_MINOR_VERSION@
+diff --git a/include/snmp_pp/smival.h b/include/snmp_pp/smival.h
+index 7a36fab..7522087 100644
+--- a/include/snmp_pp/smival.h
++++ b/include/snmp_pp/smival.h
+@@ -59,6 +59,7 @@
+ #define _SMIVALUE
+ //----[ includes ]-----------------------------------------------------
++#include <string.h>
+ #include "snmp_pp/smi.h"
+ #ifdef SNMP_PP_NAMESPACE
+-- 
+1.8.3.2
+
diff --git a/package/snmppp/snmppp-01-Add-missing-includes.patch b/package/snmppp/snmppp-01-Add-missing-includes.patch
deleted file mode 100644 (file)
index c3fa491..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-From 6433c6e8d81313ec7ef6c8d3abf96fffa537e23e Mon Sep 17 00:00:00 2001
-From: Luca Ceresoli <luca@lucaceresoli.net>
-Date: Tue, 1 Apr 2014 14:35:25 +0200
-Subject: [PATCH] Add missing includes
-
-Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
----
- include/snmp_pp/config_snmp_pp.h.in | 4 ++++
- include/snmp_pp/smival.h            | 1 +
- 2 files changed, 5 insertions(+)
-
-diff --git a/include/snmp_pp/config_snmp_pp.h.in b/include/snmp_pp/config_snmp_pp.h.in
-index 89a5b0d..3100713 100644
---- a/include/snmp_pp/config_snmp_pp.h.in
-+++ b/include/snmp_pp/config_snmp_pp.h.in
-@@ -28,6 +28,10 @@
- #ifndef _CONFIG_SNMP_PP_H_
- #define _CONFIG_SNMP_PP_H_
-+#ifdef __linux__
-+#include <sys/socket.h>
-+#endif
-+
- #define SNMP_PP_VERSION_STRING "@VERSION@"
- #define SNMP_PP_VERSION @SNMP_PP_MAJOR_VERSION@
- #define SNMP_PP_RELEASE @SNMP_PP_MINOR_VERSION@
-diff --git a/include/snmp_pp/smival.h b/include/snmp_pp/smival.h
-index 7a36fab..7522087 100644
---- a/include/snmp_pp/smival.h
-+++ b/include/snmp_pp/smival.h
-@@ -59,6 +59,7 @@
- #define _SMIVALUE
- //----[ includes ]-----------------------------------------------------
-+#include <string.h>
- #include "snmp_pp/smi.h"
- #ifdef SNMP_PP_NAMESPACE
--- 
-1.8.3.2
-
diff --git a/package/socat/0001-no-documentation.patch b/package/socat/0001-no-documentation.patch
new file mode 100644 (file)
index 0000000..ce088df
--- /dev/null
@@ -0,0 +1,37 @@
+socat: disable documentation build/installation
+
+The documentation generation process requires a special yold2man
+program, for which we don't have a package in Buildroot. Since we
+generally don't care much about documentation of packages, just adjust
+the package Makefile.in to not build/install its documentation.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/Makefile.in
+===================================================================
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -93,7 +93,7 @@
+       Config/Makefile.Cygwin-1-5-25 Config/config.Cygwin-1-5-25.h \
+       Config/Makefile.MacOSX-10-5 Config/config.MacOSX-10-5.h
+-all: progs doc
++all: progs
+ scmclean: gitclean
+@@ -136,13 +136,11 @@
+ strip: progs
+       strip $(PROGS)
+-install: progs $(srcdir)/doc/socat.1
++install: progs
+       mkdir -p $(DESTDIR)$(BINDEST)
+       $(INSTALL) -m 755 socat $(DESTDIR)$(BINDEST)
+       $(INSTALL) -m 755 procan $(DESTDIR)$(BINDEST)
+       $(INSTALL) -m 755 filan $(DESTDIR)$(BINDEST)
+-      mkdir -p $(DESTDIR)$(MANDEST)/man1
+-      $(INSTALL) -m 644 $(srcdir)/doc/socat.1 $(DESTDIR)$(MANDEST)/man1/
+ uninstall:
+       rm -f $(DESTDIR)$(BINDEST)/socat
diff --git a/package/socat/socat-001-no-documentation.patch b/package/socat/socat-001-no-documentation.patch
deleted file mode 100644 (file)
index ce088df..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-socat: disable documentation build/installation
-
-The documentation generation process requires a special yold2man
-program, for which we don't have a package in Buildroot. Since we
-generally don't care much about documentation of packages, just adjust
-the package Makefile.in to not build/install its documentation.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/Makefile.in
-===================================================================
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -93,7 +93,7 @@
-       Config/Makefile.Cygwin-1-5-25 Config/config.Cygwin-1-5-25.h \
-       Config/Makefile.MacOSX-10-5 Config/config.MacOSX-10-5.h
--all: progs doc
-+all: progs
- scmclean: gitclean
-@@ -136,13 +136,11 @@
- strip: progs
-       strip $(PROGS)
--install: progs $(srcdir)/doc/socat.1
-+install: progs
-       mkdir -p $(DESTDIR)$(BINDEST)
-       $(INSTALL) -m 755 socat $(DESTDIR)$(BINDEST)
-       $(INSTALL) -m 755 procan $(DESTDIR)$(BINDEST)
-       $(INSTALL) -m 755 filan $(DESTDIR)$(BINDEST)
--      mkdir -p $(DESTDIR)$(MANDEST)/man1
--      $(INSTALL) -m 644 $(srcdir)/doc/socat.1 $(DESTDIR)$(MANDEST)/man1/
- uninstall:
-       rm -f $(DESTDIR)$(BINDEST)/socat
diff --git a/package/sox/0001-uclibc.patch b/package/sox/0001-uclibc.patch
new file mode 100644 (file)
index 0000000..5c118fa
--- /dev/null
@@ -0,0 +1,26 @@
+Make SoX support uclibc-based toolchains, from:
+http://sourceforge.net/p/sox/bugs/179/
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+Index: sox-14.4.1/src/formats.c
+===================================================================
+--- sox-14.4.1.orig/src/formats.c
++++ sox-14.4.1/src/formats.c
+@@ -409,7 +409,7 @@ static void UNUSED rewind_pipe(FILE * fp
+ #if defined _FSTDIO || defined _NEWLIB_VERSION || defined __APPLE__
+   fp->_p -= PIPE_AUTO_DETECT_SIZE;
+   fp->_r += PIPE_AUTO_DETECT_SIZE;
+-#elif defined __GLIBC__
++#elif defined __GLIBC__ && ! defined __UCLIBC__
+   fp->_IO_read_ptr = fp->_IO_read_base;
+ #elif defined _MSC_VER || defined _WIN32 || defined _WIN64 || defined _ISO_STDIO_ISO_H
+   fp->_ptr = fp->_base;
+@@ -417,7 +417,6 @@ static void UNUSED rewind_pipe(FILE * fp
+   /* To fix this #error, either simply remove the #error line and live without
+    * file-type detection with pipes, or add support for your compiler in the
+    * lines above.  Test with cat monkey.wav | ./sox --info - */
+-  #error FIX NEEDED HERE
+   #define NO_REWIND_PIPE
+   (void)fp;
+ #endif
diff --git a/package/sox/sox-0001-uclibc.patch b/package/sox/sox-0001-uclibc.patch
deleted file mode 100644 (file)
index 5c118fa..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-Make SoX support uclibc-based toolchains, from:
-http://sourceforge.net/p/sox/bugs/179/
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-Index: sox-14.4.1/src/formats.c
-===================================================================
---- sox-14.4.1.orig/src/formats.c
-+++ sox-14.4.1/src/formats.c
-@@ -409,7 +409,7 @@ static void UNUSED rewind_pipe(FILE * fp
- #if defined _FSTDIO || defined _NEWLIB_VERSION || defined __APPLE__
-   fp->_p -= PIPE_AUTO_DETECT_SIZE;
-   fp->_r += PIPE_AUTO_DETECT_SIZE;
--#elif defined __GLIBC__
-+#elif defined __GLIBC__ && ! defined __UCLIBC__
-   fp->_IO_read_ptr = fp->_IO_read_base;
- #elif defined _MSC_VER || defined _WIN32 || defined _WIN64 || defined _ISO_STDIO_ISO_H
-   fp->_ptr = fp->_base;
-@@ -417,7 +417,6 @@ static void UNUSED rewind_pipe(FILE * fp
-   /* To fix this #error, either simply remove the #error line and live without
-    * file-type detection with pipes, or add support for your compiler in the
-    * lines above.  Test with cat monkey.wav | ./sox --info - */
--  #error FIX NEEDED HERE
-   #define NO_REWIND_PIPE
-   (void)fp;
- #endif
diff --git a/package/speex/0001-thumb2-support.patch b/package/speex/0001-thumb2-support.patch
new file mode 100644 (file)
index 0000000..b6f7369
--- /dev/null
@@ -0,0 +1,220 @@
+Make speex Thumb2 compatible
+
+Patch written by Michael Hope from Linaro, available at
+http://lists.xiph.org/pipermail/speex-dev/2010-November/008041.html.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+diff --git a/libspeex/filters_arm4.h b/libspeex/filters_arm4.h
+index 7a74042..6ec1f75 100644
+--- a/libspeex/filters_arm4.h
++++ b/libspeex/filters_arm4.h
+@@ -47,8 +47,10 @@ int normalize16(const spx_sig_t *x, spx_word16_t *y, spx_sig_t max_scale, int le
+          "\tldr %4, [%0], #4 \n"
+          "\tcmps %4, %1 \n"
++         "\tit gt \n"
+          "\tmovgt %1, %4 \n"
+          "\tcmps %4, %3 \n"
++         "\tit lt \n"
+          "\tmovlt %3, %4 \n"
+          "\tsubs %2, %2, #1 \n"
+@@ -56,6 +58,7 @@ int normalize16(const spx_sig_t *x, spx_word16_t *y, spx_sig_t max_scale, int le
+          "\trsb %3, %3, #0 \n"
+          "\tcmp %1, %3 \n"
++         "\tit lt \n"
+          "\tmovlt %1, %3 \n"
+    : "=r" (dead1), "=r" (max_val), "=r" (dead3), "=r" (dead4),
+    "=r" (dead5), "=r" (dead6)
+diff --git a/libspeex/fixed_arm4.h b/libspeex/fixed_arm4.h
+index b6981ca..b6218ca 100644
+--- a/libspeex/fixed_arm4.h
++++ b/libspeex/fixed_arm4.h
+@@ -69,72 +69,90 @@ static inline short DIV32_16(int a, int b)
+    __asm__ __volatile__ (
+          "\teor %5, %0, %1\n"
+          "\tmovs %4, %0\n"
++         "\tit mi \n"
+          "\trsbmi %0, %0, #0 \n"
+          "\tmovs %4, %1\n"
++         "\tit mi \n"
+          "\trsbmi %1, %1, #0 \n"
+          "\tmov %4, #1\n"
+          "\tsubs %3, %0, %1, asl #14 \n"
++         "\titt pl \n"
+          "\tmovpl %0, %3 \n"
+          "\torrpl %2, %2, %4, asl #14 \n"
+          "\tsubs %3, %0, %1, asl #13 \n"
++         "\titt pl \n"
+          "\tmovpl %0, %3 \n"
+          "\torrpl %2, %2, %4, asl #13 \n"
+          "\tsubs %3, %0, %1, asl #12 \n"
++         "\titt pl \n"
+          "\tmovpl %0, %3 \n"
+          "\torrpl %2, %2, %4, asl #12 \n"
+          "\tsubs %3, %0, %1, asl #11 \n"
++         "\titt pl \n"
+          "\tmovpl %0, %3 \n"
+          "\torrpl %2, %2, %4, asl #11 \n"
+          "\tsubs %3, %0, %1, asl #10 \n"
++         "\titt pl \n"
+          "\tmovpl %0, %3 \n"
+          "\torrpl %2, %2, %4, asl #10 \n"
+          "\tsubs %3, %0, %1, asl #9 \n"
++         "\titt pl \n"
+          "\tmovpl %0, %3 \n"
+          "\torrpl %2, %2, %4, asl #9 \n"
+          "\tsubs %3, %0, %1, asl #8 \n"
++         "\titt pl \n"
+          "\tmovpl %0, %3 \n"
+          "\torrpl %2, %2, %4, asl #8 \n"
+          "\tsubs %3, %0, %1, asl #7 \n"
++         "\titt pl \n"
+          "\tmovpl %0, %3 \n"
+          "\torrpl %2, %2, %4, asl #7 \n"
+          "\tsubs %3, %0, %1, asl #6 \n"
++         "\titt pl \n"
+          "\tmovpl %0, %3 \n"
+          "\torrpl %2, %2, %4, asl #6 \n"
+          
+          "\tsubs %3, %0, %1, asl #5 \n"
++         "\titt pl \n"
+          "\tmovpl %0, %3 \n"
+          "\torrpl %2, %2, %4, asl #5 \n"
+          "\tsubs %3, %0, %1, asl #4 \n"
++         "\titt pl \n"
+          "\tmovpl %0, %3 \n"
+          "\torrpl %2, %2, %4, asl #4 \n"
+          "\tsubs %3, %0, %1, asl #3 \n"
++         "\titt pl \n"
+          "\tmovpl %0, %3 \n"
+          "\torrpl %2, %2, %4, asl #3 \n"
+          "\tsubs %3, %0, %1, asl #2 \n"
++         "\titt pl \n"
+          "\tmovpl %0, %3 \n"
+          "\torrpl %2, %2, %4, asl #2 \n"
+          "\tsubs %3, %0, %1, asl #1 \n"
++         "\titt pl \n"
+          "\tmovpl %0, %3 \n"
+          "\torrpl %2, %2, %4, asl #1 \n"
+          "\tsubs %3, %0, %1 \n"
++         "\titt pl \n"
+          "\tmovpl %0, %3 \n"
+          "\torrpl %2, %2, %4 \n"
+          "\tmovs %5, %5, lsr #31 \n"
++         "\tit ne \n"
+          "\trsbne %2, %2, #0 \n"
+    : "=r" (dead1), "=r" (dead2), "=r" (res),
+    "=r" (dead3), "=r" (dead4), "=r" (dead5)
+diff --git a/libspeex/fixed_arm5e.h b/libspeex/fixed_arm5e.h
+index 9b4861c..bdadd02 100644
+--- a/libspeex/fixed_arm5e.h
++++ b/libspeex/fixed_arm5e.h
+@@ -97,72 +97,90 @@ static inline short DIV32_16(int a, int b)
+    __asm__ __volatile__ (
+          "\teor %5, %0, %1\n"
+          "\tmovs %4, %0\n"
++         "\tit mi \n"
+          "\trsbmi %0, %0, #0 \n"
+          "\tmovs %4, %1\n"
++         "\tit mi \n"
+          "\trsbmi %1, %1, #0 \n"
+          "\tmov %4, #1\n"
+          "\tsubs %3, %0, %1, asl #14 \n"
++         "\titt pl \n"
+          "\torrpl %2, %2, %4, asl #14 \n"
+          "\tmovpl %0, %3 \n"
+          "\tsubs %3, %0, %1, asl #13 \n"
++         "\titt pl \n"
+          "\torrpl %2, %2, %4, asl #13 \n"
+          "\tmovpl %0, %3 \n"
+          "\tsubs %3, %0, %1, asl #12 \n"
++         "\titt pl \n"
+          "\torrpl %2, %2, %4, asl #12 \n"
+          "\tmovpl %0, %3 \n"
+          "\tsubs %3, %0, %1, asl #11 \n"
++         "\titt pl \n"
+          "\torrpl %2, %2, %4, asl #11 \n"
+          "\tmovpl %0, %3 \n"
+          "\tsubs %3, %0, %1, asl #10 \n"
++         "\titt pl \n"
+          "\torrpl %2, %2, %4, asl #10 \n"
+          "\tmovpl %0, %3 \n"
+          "\tsubs %3, %0, %1, asl #9 \n"
++         "\titt pl \n"
+          "\torrpl %2, %2, %4, asl #9 \n"
+          "\tmovpl %0, %3 \n"
+          "\tsubs %3, %0, %1, asl #8 \n"
++         "\titt pl \n"
+          "\torrpl %2, %2, %4, asl #8 \n"
+          "\tmovpl %0, %3 \n"
+          "\tsubs %3, %0, %1, asl #7 \n"
++         "\titt pl \n"
+          "\torrpl %2, %2, %4, asl #7 \n"
+          "\tmovpl %0, %3 \n"
+          "\tsubs %3, %0, %1, asl #6 \n"
++         "\titt pl \n"
+          "\torrpl %2, %2, %4, asl #6 \n"
+          "\tmovpl %0, %3 \n"
+          "\tsubs %3, %0, %1, asl #5 \n"
++         "\titt pl \n"
+          "\torrpl %2, %2, %4, asl #5 \n"
+          "\tmovpl %0, %3 \n"
+          "\tsubs %3, %0, %1, asl #4 \n"
++         "\titt pl \n"
+          "\torrpl %2, %2, %4, asl #4 \n"
+          "\tmovpl %0, %3 \n"
+          "\tsubs %3, %0, %1, asl #3 \n"
++         "\titt pl \n"
+          "\torrpl %2, %2, %4, asl #3 \n"
+          "\tmovpl %0, %3 \n"
+          "\tsubs %3, %0, %1, asl #2 \n"
++         "\titt pl \n"
+          "\torrpl %2, %2, %4, asl #2 \n"
+          "\tmovpl %0, %3 \n"
+          "\tsubs %3, %0, %1, asl #1 \n"
++         "\titt pl \n"
+          "\torrpl %2, %2, %4, asl #1 \n"
+          "\tmovpl %0, %3 \n"
+          "\tsubs %3, %0, %1 \n"
++         "\titt pl \n"
+          "\torrpl %2, %2, %4 \n"
+          "\tmovpl %0, %3 \n"
+          
+          "\tmovs %5, %5, lsr #31 \n"
++         "\tit ne \n"
+          "\trsbne %2, %2, #0 \n"
+    : "=r" (dead1), "=r" (dead2), "=r" (res),
+    "=r" (dead3), "=r" (dead4), "=r" (dead5)
diff --git a/package/speex/speex-thumb2-support.patch b/package/speex/speex-thumb2-support.patch
deleted file mode 100644 (file)
index b6f7369..0000000
+++ /dev/null
@@ -1,220 +0,0 @@
-Make speex Thumb2 compatible
-
-Patch written by Michael Hope from Linaro, available at
-http://lists.xiph.org/pipermail/speex-dev/2010-November/008041.html.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-diff --git a/libspeex/filters_arm4.h b/libspeex/filters_arm4.h
-index 7a74042..6ec1f75 100644
---- a/libspeex/filters_arm4.h
-+++ b/libspeex/filters_arm4.h
-@@ -47,8 +47,10 @@ int normalize16(const spx_sig_t *x, spx_word16_t *y, spx_sig_t max_scale, int le
-          "\tldr %4, [%0], #4 \n"
-          "\tcmps %4, %1 \n"
-+         "\tit gt \n"
-          "\tmovgt %1, %4 \n"
-          "\tcmps %4, %3 \n"
-+         "\tit lt \n"
-          "\tmovlt %3, %4 \n"
-          "\tsubs %2, %2, #1 \n"
-@@ -56,6 +58,7 @@ int normalize16(const spx_sig_t *x, spx_word16_t *y, spx_sig_t max_scale, int le
-          "\trsb %3, %3, #0 \n"
-          "\tcmp %1, %3 \n"
-+         "\tit lt \n"
-          "\tmovlt %1, %3 \n"
-    : "=r" (dead1), "=r" (max_val), "=r" (dead3), "=r" (dead4),
-    "=r" (dead5), "=r" (dead6)
-diff --git a/libspeex/fixed_arm4.h b/libspeex/fixed_arm4.h
-index b6981ca..b6218ca 100644
---- a/libspeex/fixed_arm4.h
-+++ b/libspeex/fixed_arm4.h
-@@ -69,72 +69,90 @@ static inline short DIV32_16(int a, int b)
-    __asm__ __volatile__ (
-          "\teor %5, %0, %1\n"
-          "\tmovs %4, %0\n"
-+         "\tit mi \n"
-          "\trsbmi %0, %0, #0 \n"
-          "\tmovs %4, %1\n"
-+         "\tit mi \n"
-          "\trsbmi %1, %1, #0 \n"
-          "\tmov %4, #1\n"
-          "\tsubs %3, %0, %1, asl #14 \n"
-+         "\titt pl \n"
-          "\tmovpl %0, %3 \n"
-          "\torrpl %2, %2, %4, asl #14 \n"
-          "\tsubs %3, %0, %1, asl #13 \n"
-+         "\titt pl \n"
-          "\tmovpl %0, %3 \n"
-          "\torrpl %2, %2, %4, asl #13 \n"
-          "\tsubs %3, %0, %1, asl #12 \n"
-+         "\titt pl \n"
-          "\tmovpl %0, %3 \n"
-          "\torrpl %2, %2, %4, asl #12 \n"
-          "\tsubs %3, %0, %1, asl #11 \n"
-+         "\titt pl \n"
-          "\tmovpl %0, %3 \n"
-          "\torrpl %2, %2, %4, asl #11 \n"
-          "\tsubs %3, %0, %1, asl #10 \n"
-+         "\titt pl \n"
-          "\tmovpl %0, %3 \n"
-          "\torrpl %2, %2, %4, asl #10 \n"
-          "\tsubs %3, %0, %1, asl #9 \n"
-+         "\titt pl \n"
-          "\tmovpl %0, %3 \n"
-          "\torrpl %2, %2, %4, asl #9 \n"
-          "\tsubs %3, %0, %1, asl #8 \n"
-+         "\titt pl \n"
-          "\tmovpl %0, %3 \n"
-          "\torrpl %2, %2, %4, asl #8 \n"
-          "\tsubs %3, %0, %1, asl #7 \n"
-+         "\titt pl \n"
-          "\tmovpl %0, %3 \n"
-          "\torrpl %2, %2, %4, asl #7 \n"
-          "\tsubs %3, %0, %1, asl #6 \n"
-+         "\titt pl \n"
-          "\tmovpl %0, %3 \n"
-          "\torrpl %2, %2, %4, asl #6 \n"
-          
-          "\tsubs %3, %0, %1, asl #5 \n"
-+         "\titt pl \n"
-          "\tmovpl %0, %3 \n"
-          "\torrpl %2, %2, %4, asl #5 \n"
-          "\tsubs %3, %0, %1, asl #4 \n"
-+         "\titt pl \n"
-          "\tmovpl %0, %3 \n"
-          "\torrpl %2, %2, %4, asl #4 \n"
-          "\tsubs %3, %0, %1, asl #3 \n"
-+         "\titt pl \n"
-          "\tmovpl %0, %3 \n"
-          "\torrpl %2, %2, %4, asl #3 \n"
-          "\tsubs %3, %0, %1, asl #2 \n"
-+         "\titt pl \n"
-          "\tmovpl %0, %3 \n"
-          "\torrpl %2, %2, %4, asl #2 \n"
-          "\tsubs %3, %0, %1, asl #1 \n"
-+         "\titt pl \n"
-          "\tmovpl %0, %3 \n"
-          "\torrpl %2, %2, %4, asl #1 \n"
-          "\tsubs %3, %0, %1 \n"
-+         "\titt pl \n"
-          "\tmovpl %0, %3 \n"
-          "\torrpl %2, %2, %4 \n"
-          "\tmovs %5, %5, lsr #31 \n"
-+         "\tit ne \n"
-          "\trsbne %2, %2, #0 \n"
-    : "=r" (dead1), "=r" (dead2), "=r" (res),
-    "=r" (dead3), "=r" (dead4), "=r" (dead5)
-diff --git a/libspeex/fixed_arm5e.h b/libspeex/fixed_arm5e.h
-index 9b4861c..bdadd02 100644
---- a/libspeex/fixed_arm5e.h
-+++ b/libspeex/fixed_arm5e.h
-@@ -97,72 +97,90 @@ static inline short DIV32_16(int a, int b)
-    __asm__ __volatile__ (
-          "\teor %5, %0, %1\n"
-          "\tmovs %4, %0\n"
-+         "\tit mi \n"
-          "\trsbmi %0, %0, #0 \n"
-          "\tmovs %4, %1\n"
-+         "\tit mi \n"
-          "\trsbmi %1, %1, #0 \n"
-          "\tmov %4, #1\n"
-          "\tsubs %3, %0, %1, asl #14 \n"
-+         "\titt pl \n"
-          "\torrpl %2, %2, %4, asl #14 \n"
-          "\tmovpl %0, %3 \n"
-          "\tsubs %3, %0, %1, asl #13 \n"
-+         "\titt pl \n"
-          "\torrpl %2, %2, %4, asl #13 \n"
-          "\tmovpl %0, %3 \n"
-          "\tsubs %3, %0, %1, asl #12 \n"
-+         "\titt pl \n"
-          "\torrpl %2, %2, %4, asl #12 \n"
-          "\tmovpl %0, %3 \n"
-          "\tsubs %3, %0, %1, asl #11 \n"
-+         "\titt pl \n"
-          "\torrpl %2, %2, %4, asl #11 \n"
-          "\tmovpl %0, %3 \n"
-          "\tsubs %3, %0, %1, asl #10 \n"
-+         "\titt pl \n"
-          "\torrpl %2, %2, %4, asl #10 \n"
-          "\tmovpl %0, %3 \n"
-          "\tsubs %3, %0, %1, asl #9 \n"
-+         "\titt pl \n"
-          "\torrpl %2, %2, %4, asl #9 \n"
-          "\tmovpl %0, %3 \n"
-          "\tsubs %3, %0, %1, asl #8 \n"
-+         "\titt pl \n"
-          "\torrpl %2, %2, %4, asl #8 \n"
-          "\tmovpl %0, %3 \n"
-          "\tsubs %3, %0, %1, asl #7 \n"
-+         "\titt pl \n"
-          "\torrpl %2, %2, %4, asl #7 \n"
-          "\tmovpl %0, %3 \n"
-          "\tsubs %3, %0, %1, asl #6 \n"
-+         "\titt pl \n"
-          "\torrpl %2, %2, %4, asl #6 \n"
-          "\tmovpl %0, %3 \n"
-          "\tsubs %3, %0, %1, asl #5 \n"
-+         "\titt pl \n"
-          "\torrpl %2, %2, %4, asl #5 \n"
-          "\tmovpl %0, %3 \n"
-          "\tsubs %3, %0, %1, asl #4 \n"
-+         "\titt pl \n"
-          "\torrpl %2, %2, %4, asl #4 \n"
-          "\tmovpl %0, %3 \n"
-          "\tsubs %3, %0, %1, asl #3 \n"
-+         "\titt pl \n"
-          "\torrpl %2, %2, %4, asl #3 \n"
-          "\tmovpl %0, %3 \n"
-          "\tsubs %3, %0, %1, asl #2 \n"
-+         "\titt pl \n"
-          "\torrpl %2, %2, %4, asl #2 \n"
-          "\tmovpl %0, %3 \n"
-          "\tsubs %3, %0, %1, asl #1 \n"
-+         "\titt pl \n"
-          "\torrpl %2, %2, %4, asl #1 \n"
-          "\tmovpl %0, %3 \n"
-          "\tsubs %3, %0, %1 \n"
-+         "\titt pl \n"
-          "\torrpl %2, %2, %4 \n"
-          "\tmovpl %0, %3 \n"
-          
-          "\tmovs %5, %5, lsr #31 \n"
-+         "\tit ne \n"
-          "\trsbne %2, %2, #0 \n"
-    : "=r" (dead1), "=r" (dead2), "=r" (res),
-    "=r" (dead3), "=r" (dead4), "=r" (dead5)
diff --git a/package/spice/0001-fix-missing-monitor_latency-argument.patch b/package/spice/0001-fix-missing-monitor_latency-argument.patch
new file mode 100644 (file)
index 0000000..e14dd2c
--- /dev/null
@@ -0,0 +1,28 @@
+From 0d3767853ca179ce04a9b312d7a30d33d1266a3b Mon Sep 17 00:00:00 2001
+From: Axel Lin <axel.lin@ingics.com>
+Date: Thu, 10 Oct 2013 12:36:40 +0800
+Subject: [PATCH] red_tunnel_worker: Fix build error due to missing monitor_latency argument
+
+Fix missing monitor_latency argument in red_channel_client_create call.
+
+Signed-off-by: Axel Lin <axel.lin@ingics.com>
+---
+ server/red_tunnel_worker.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/server/red_tunnel_worker.c b/server/red_tunnel_worker.c
+index 97dcafd..6781d73 100644
+--- a/server/red_tunnel_worker.c
++++ b/server/red_tunnel_worker.c
+@@ -3417,7 +3417,7 @@ static void handle_tunnel_channel_link(RedChannel *channel, RedClient *client,
+     }
+     tcc = (TunnelChannelClient*)red_channel_client_create(sizeof(TunnelChannelClient),
+-                                                          channel, client, stream,
++                                                          channel, client, stream, FALSE,
+                                                           0, NULL, 0, NULL);
+     if (!tcc) {
+         return;
+-- 
+1.8.1.2
+
diff --git a/package/spice/spice-0001-fix-missing-monitor_latency-argument.patch b/package/spice/spice-0001-fix-missing-monitor_latency-argument.patch
deleted file mode 100644 (file)
index e14dd2c..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-From 0d3767853ca179ce04a9b312d7a30d33d1266a3b Mon Sep 17 00:00:00 2001
-From: Axel Lin <axel.lin@ingics.com>
-Date: Thu, 10 Oct 2013 12:36:40 +0800
-Subject: [PATCH] red_tunnel_worker: Fix build error due to missing monitor_latency argument
-
-Fix missing monitor_latency argument in red_channel_client_create call.
-
-Signed-off-by: Axel Lin <axel.lin@ingics.com>
----
- server/red_tunnel_worker.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/server/red_tunnel_worker.c b/server/red_tunnel_worker.c
-index 97dcafd..6781d73 100644
---- a/server/red_tunnel_worker.c
-+++ b/server/red_tunnel_worker.c
-@@ -3417,7 +3417,7 @@ static void handle_tunnel_channel_link(RedChannel *channel, RedClient *client,
-     }
-     tcc = (TunnelChannelClient*)red_channel_client_create(sizeof(TunnelChannelClient),
--                                                          channel, client, stream,
-+                                                          channel, client, stream, FALSE,
-                                                           0, NULL, 0, NULL);
-     if (!tcc) {
-         return;
--- 
-1.8.1.2
-
diff --git a/package/statserial/0001-ncurses-link.patch b/package/statserial/0001-ncurses-link.patch
new file mode 100644 (file)
index 0000000..b1c41e6
--- /dev/null
@@ -0,0 +1,16 @@
+Link to libncurses instead of the legacy libcurses.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura statserial-1.1.orig/Makefile statserial-1.1/Makefile
+--- statserial-1.1.orig/Makefile       2014-07-04 12:47:41.279440415 -0300
++++ statserial-1.1/Makefile    2014-07-04 12:47:47.948665740 -0300
+@@ -10,7 +10,7 @@
+ LDFLAGS = -s -N
+ statserial:   statserial.o
+-      $(LD) $(LDFLAGS) -o statserial statserial.o -lcurses
++      $(LD) $(LDFLAGS) -o statserial statserial.o -lncurses
+ statserial.o: statserial.c
+       $(CC) $(CFLAGS) -c statserial.c
diff --git a/package/statserial/statserial-01-ncurses-link.patch b/package/statserial/statserial-01-ncurses-link.patch
deleted file mode 100644 (file)
index b1c41e6..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-Link to libncurses instead of the legacy libcurses.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura statserial-1.1.orig/Makefile statserial-1.1/Makefile
---- statserial-1.1.orig/Makefile       2014-07-04 12:47:41.279440415 -0300
-+++ statserial-1.1/Makefile    2014-07-04 12:47:47.948665740 -0300
-@@ -10,7 +10,7 @@
- LDFLAGS = -s -N
- statserial:   statserial.o
--      $(LD) $(LDFLAGS) -o statserial statserial.o -lcurses
-+      $(LD) $(LDFLAGS) -o statserial statserial.o -lncurses
- statserial.o: statserial.c
-       $(CC) $(CFLAGS) -c statserial.c
diff --git a/package/strace/0001-sigaction-wrap-sa_restorer-in-ifdef-SA_RESTORER-cons.patch b/package/strace/0001-sigaction-wrap-sa_restorer-in-ifdef-SA_RESTORER-cons.patch
new file mode 100644 (file)
index 0000000..cd2e31b
--- /dev/null
@@ -0,0 +1,107 @@
+Add a patch to fix the sa_restorer problems in strace.
+
+This patch has been applied upstream:
+  https://sourceforge.net/p/strace/code/ci/c3a5c01051ba29a9f421f4d45d96bbc32df2b796/
+
+Signed-off-by: Vicente Olivert Riera <vincent.riera@imgtec.com>
+
+From c3a5c01051ba29a9f421f4d45d96bbc32df2b796 Mon Sep 17 00:00:00 2001
+From: Vicente Olivert Riera <vincent@gentoo.org>
+Date: Thu, 11 Sep 2014 20:05:18 +0100
+Subject: [PATCH] sigaction: wrap sa_restorer in #ifdef SA_RESTORER consistently
+
+Wrap sa_restorer member definitions in #ifdef SA_RESTORER to be
+consistent with their use.
+If an architecture does not provide sa_restorer members but still
+defines SA_RESTORER macro, the latter has to be explicitly undefined.
+
+This change fixes compilation failures like this one:
+signal.c: In function 'decode_old_sigaction':
+signal.c:631:21: error: 'struct old_sigaction' has no member named 'sa_restorer'
+signal.c: In function 'decode_new_sigaction':
+signal.c:1224:21: error: 'struct new_sigaction' has no member named 'sa_restorer'
+
+* signal.c (struct old_sigaction, struct old_sigaction32,
+struct new_sigaction, struct new_sigaction32):
+Wrap sa_restorer member in #ifdef SA_RESTORER.
+(decode_old_sigaction, decode_new_sigaction):
+Wrap use of sa32.sa_restorer in #ifdef SA_RESTORER.
+
+Signed-off-by: Vicente Olivert Riera <vincent.riera@imgtec.com>
+---
+ signal.c |   18 ++++++++++++++----
+ 1 files changed, 14 insertions(+), 4 deletions(-)
+
+diff --git a/signal.c b/signal.c
+index 74e0fd9..5855d13 100644
+--- a/signal.c
++++ b/signal.c
+@@ -559,8 +559,10 @@ struct old_sigaction {
+       void (*__sa_handler)(int);
+       unsigned long sa_mask;
+       unsigned long sa_flags;
+-      void (*sa_restorer)(void);
+ #endif /* !MIPS */
++#ifdef SA_RESTORER
++      void (*sa_restorer)(void);
++#endif
+ };
+ struct old_sigaction32 {
+@@ -568,7 +570,9 @@ struct old_sigaction32 {
+       uint32_t __sa_handler;
+       uint32_t sa_mask;
+       uint32_t sa_flags;
++#ifdef SA_RESTORER
+       uint32_t sa_restorer;
++#endif
+ };
+ static void
+@@ -594,7 +598,9 @@ decode_old_sigaction(struct tcb *tcp, long addr)
+                       memset(&sa, 0, sizeof(sa));
+                       sa.__sa_handler = (void*)(uintptr_t)sa32.__sa_handler;
+                       sa.sa_flags = sa32.sa_flags;
++#ifdef SA_RESTORER
+                       sa.sa_restorer = (void*)(uintptr_t)sa32.sa_restorer;
++#endif
+                       sa.sa_mask = sa32.sa_mask;
+               }
+       } else
+@@ -1138,10 +1144,10 @@ struct new_sigaction
+ #else
+       void (*__sa_handler)(int);
+       unsigned long sa_flags;
+-# if !defined(ALPHA) && !defined(HPPA) && !defined(IA64)
+-      void (*sa_restorer)(void);
+-# endif /* !ALPHA && !HPPA && !IA64 */
+ #endif /* !MIPS */
++#ifdef SA_RESTORER
++      void (*sa_restorer)(void);
++#endif
+       /* Kernel treats sa_mask as an array of longs. */
+       unsigned long sa_mask[NSIG / sizeof(long) ? NSIG / sizeof(long) : 1];
+ };
+@@ -1150,7 +1156,9 @@ struct new_sigaction32
+ {
+       uint32_t __sa_handler;
+       uint32_t sa_flags;
++#ifdef SA_RESTORER
+       uint32_t sa_restorer;
++#endif
+       uint32_t sa_mask[2 * (NSIG / sizeof(long) ? NSIG / sizeof(long) : 1)];
+ };
+@@ -1176,7 +1184,9 @@ decode_new_sigaction(struct tcb *tcp, long addr)
+                       memset(&sa, 0, sizeof(sa));
+                       sa.__sa_handler = (void*)(unsigned long)sa32.__sa_handler;
+                       sa.sa_flags     = sa32.sa_flags;
++#ifdef SA_RESTORER
+                       sa.sa_restorer  = (void*)(unsigned long)sa32.sa_restorer;
++#endif
+                       /* Kernel treats sa_mask as an array of longs.
+                        * For 32-bit process, "long" is uint32_t, thus, for example,
+                        * 32th bit in sa_mask will end up as bit 0 in sa_mask[1].
+-- 
+1.7.1
+
diff --git a/package/strace/strace-0001-sigaction-wrap-sa_restorer-in-ifdef-SA_RESTORER-cons.patch b/package/strace/strace-0001-sigaction-wrap-sa_restorer-in-ifdef-SA_RESTORER-cons.patch
deleted file mode 100644 (file)
index cd2e31b..0000000
+++ /dev/null
@@ -1,107 +0,0 @@
-Add a patch to fix the sa_restorer problems in strace.
-
-This patch has been applied upstream:
-  https://sourceforge.net/p/strace/code/ci/c3a5c01051ba29a9f421f4d45d96bbc32df2b796/
-
-Signed-off-by: Vicente Olivert Riera <vincent.riera@imgtec.com>
-
-From c3a5c01051ba29a9f421f4d45d96bbc32df2b796 Mon Sep 17 00:00:00 2001
-From: Vicente Olivert Riera <vincent@gentoo.org>
-Date: Thu, 11 Sep 2014 20:05:18 +0100
-Subject: [PATCH] sigaction: wrap sa_restorer in #ifdef SA_RESTORER consistently
-
-Wrap sa_restorer member definitions in #ifdef SA_RESTORER to be
-consistent with their use.
-If an architecture does not provide sa_restorer members but still
-defines SA_RESTORER macro, the latter has to be explicitly undefined.
-
-This change fixes compilation failures like this one:
-signal.c: In function 'decode_old_sigaction':
-signal.c:631:21: error: 'struct old_sigaction' has no member named 'sa_restorer'
-signal.c: In function 'decode_new_sigaction':
-signal.c:1224:21: error: 'struct new_sigaction' has no member named 'sa_restorer'
-
-* signal.c (struct old_sigaction, struct old_sigaction32,
-struct new_sigaction, struct new_sigaction32):
-Wrap sa_restorer member in #ifdef SA_RESTORER.
-(decode_old_sigaction, decode_new_sigaction):
-Wrap use of sa32.sa_restorer in #ifdef SA_RESTORER.
-
-Signed-off-by: Vicente Olivert Riera <vincent.riera@imgtec.com>
----
- signal.c |   18 ++++++++++++++----
- 1 files changed, 14 insertions(+), 4 deletions(-)
-
-diff --git a/signal.c b/signal.c
-index 74e0fd9..5855d13 100644
---- a/signal.c
-+++ b/signal.c
-@@ -559,8 +559,10 @@ struct old_sigaction {
-       void (*__sa_handler)(int);
-       unsigned long sa_mask;
-       unsigned long sa_flags;
--      void (*sa_restorer)(void);
- #endif /* !MIPS */
-+#ifdef SA_RESTORER
-+      void (*sa_restorer)(void);
-+#endif
- };
- struct old_sigaction32 {
-@@ -568,7 +570,9 @@ struct old_sigaction32 {
-       uint32_t __sa_handler;
-       uint32_t sa_mask;
-       uint32_t sa_flags;
-+#ifdef SA_RESTORER
-       uint32_t sa_restorer;
-+#endif
- };
- static void
-@@ -594,7 +598,9 @@ decode_old_sigaction(struct tcb *tcp, long addr)
-                       memset(&sa, 0, sizeof(sa));
-                       sa.__sa_handler = (void*)(uintptr_t)sa32.__sa_handler;
-                       sa.sa_flags = sa32.sa_flags;
-+#ifdef SA_RESTORER
-                       sa.sa_restorer = (void*)(uintptr_t)sa32.sa_restorer;
-+#endif
-                       sa.sa_mask = sa32.sa_mask;
-               }
-       } else
-@@ -1138,10 +1144,10 @@ struct new_sigaction
- #else
-       void (*__sa_handler)(int);
-       unsigned long sa_flags;
--# if !defined(ALPHA) && !defined(HPPA) && !defined(IA64)
--      void (*sa_restorer)(void);
--# endif /* !ALPHA && !HPPA && !IA64 */
- #endif /* !MIPS */
-+#ifdef SA_RESTORER
-+      void (*sa_restorer)(void);
-+#endif
-       /* Kernel treats sa_mask as an array of longs. */
-       unsigned long sa_mask[NSIG / sizeof(long) ? NSIG / sizeof(long) : 1];
- };
-@@ -1150,7 +1156,9 @@ struct new_sigaction32
- {
-       uint32_t __sa_handler;
-       uint32_t sa_flags;
-+#ifdef SA_RESTORER
-       uint32_t sa_restorer;
-+#endif
-       uint32_t sa_mask[2 * (NSIG / sizeof(long) ? NSIG / sizeof(long) : 1)];
- };
-@@ -1176,7 +1184,9 @@ decode_new_sigaction(struct tcb *tcp, long addr)
-                       memset(&sa, 0, sizeof(sa));
-                       sa.__sa_handler = (void*)(unsigned long)sa32.__sa_handler;
-                       sa.sa_flags     = sa32.sa_flags;
-+#ifdef SA_RESTORER
-                       sa.sa_restorer  = (void*)(unsigned long)sa32.sa_restorer;
-+#endif
-                       /* Kernel treats sa_mask as an array of longs.
-                        * For 32-bit process, "long" is uint32_t, thus, for example,
-                        * 32th bit in sa_mask will end up as bit 0 in sa_mask[1].
--- 
-1.7.1
-
diff --git a/package/stress/0001-Remove-largefile.patch b/package/stress/0001-Remove-largefile.patch
new file mode 100644 (file)
index 0000000..bf894bc
--- /dev/null
@@ -0,0 +1,22 @@
+Remove largefile
+
+Otherwise it doesn't compile in uClibc without largefile.
+
+If the toolchain does support largefile, it will still work on large files
+anyway.
+
+Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
+---
+Upstream status: mail sent to apw@rossby.metr.ou.edu
+---
+diff -rup stress-1.0.4.orig/src/Makefile.am stress-1.0.4/src/Makefile.am
+--- stress-1.0.4.orig/src/Makefile.am  2009-12-03 02:04:05.000000000 +0100
++++ stress-1.0.4/src/Makefile.am       2012-05-04 23:09:48.229842463 +0200
+@@ -1,7 +1,5 @@
+ MAINTAINERCLEANFILES = Makefile.in
+-AM_CFLAGS = -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
+-
+ bin_PROGRAMS = stress
+ stress_SOURCES = stress.c
+ stress_MANS = stress.1
diff --git a/package/stress/stress-0001-Remove-largefile.patch b/package/stress/stress-0001-Remove-largefile.patch
deleted file mode 100644 (file)
index bf894bc..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-Remove largefile
-
-Otherwise it doesn't compile in uClibc without largefile.
-
-If the toolchain does support largefile, it will still work on large files
-anyway.
-
-Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
----
-Upstream status: mail sent to apw@rossby.metr.ou.edu
----
-diff -rup stress-1.0.4.orig/src/Makefile.am stress-1.0.4/src/Makefile.am
---- stress-1.0.4.orig/src/Makefile.am  2009-12-03 02:04:05.000000000 +0100
-+++ stress-1.0.4/src/Makefile.am       2012-05-04 23:09:48.229842463 +0200
-@@ -1,7 +1,5 @@
- MAINTAINERCLEANFILES = Makefile.in
--AM_CFLAGS = -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
--
- bin_PROGRAMS = stress
- stress_SOURCES = stress.c
- stress_MANS = stress.1
diff --git a/package/sudo/0001-no-netgroup.patch b/package/sudo/0001-no-netgroup.patch
new file mode 100644 (file)
index 0000000..64b870c
--- /dev/null
@@ -0,0 +1,29 @@
+# HG changeset patch
+# User Todd C. Miller <Todd.Miller@courtesan.com>
+# Date 1406550172 21600
+# Node ID 57deb66ef8ffc0f551d460e15a34f7df78f54d2a
+# Parent  f547bf80c436c07ddb1c7385d22db96862ae7e4f
+Fix compilation on systems w/o netgroups.
+
+Status: upstream
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -r f547bf80c436 -r 57deb66ef8ff plugins/sudoers/match.c
+--- a/plugins/sudoers/match.c  Sat Jul 26 06:07:34 2014 -0600
++++ b/plugins/sudoers/match.c  Mon Jul 28 06:22:52 2014 -0600
+@@ -972,12 +972,12 @@
+       rc = true;
+     else if (lhost != shost && innetgr(netgr, shost, user, domain))
+       rc = true;
+-#endif /* HAVE_INNETGR */
+     sudo_debug_printf(SUDO_DEBUG_DEBUG|SUDO_DEBUG_LINENO,
+       "netgroup %s matches (%s|%s, %s, %s): %s", netgr, lhost ? lhost : "",
+       shost ? shost : "", user ? user : "", domain ? domain : "",
+       rc ? "true" : "false");
++#endif /* HAVE_INNETGR */
+     debug_return_bool(rc);
+ }
+
diff --git a/package/sudo/0002-drop-sspcflags-piecflags-for-host.patch b/package/sudo/0002-drop-sspcflags-piecflags-for-host.patch
new file mode 100644 (file)
index 0000000..9f09656
--- /dev/null
@@ -0,0 +1,21 @@
+Don't use SSP_CFLAGS and PIE_CFLAGS for host tools.
+http://www.sudo.ws/bugs/show_bug.cgi?id=662
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura sudo-1.8.10p3.orig/compat/Makefile.in sudo-1.8.10p3/compat/Makefile.in
+--- sudo-1.8.10p3.orig/compat/Makefile.in      2014-03-07 18:51:19.000000000 -0300
++++ sudo-1.8.10p3/compat/Makefile.in   2014-09-20 07:29:30.913108029 -0300
+@@ -96,10 +96,10 @@
+       ./mksigname > $@
+ mksiglist: $(srcdir)/mksiglist.c $(srcdir)/mksiglist.h $(incdir)/missing.h $(top_builddir)/config.h
+-      $(CC) $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/mksiglist.c -o $@
++      $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFS) $(srcdir)/mksiglist.c -o $@
+ mksigname: $(srcdir)/mksigname.c $(srcdir)/mksigname.h $(incdir)/missing.h $(top_builddir)/config.h
+-      $(CC) $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/mksigname.c -o $@
++      $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFS) $(srcdir)/mksigname.c -o $@
+ fnm_test: fnm_test.o libreplace.la
+       $(LIBTOOL) --mode=link $(CC) -o $@ fnm_test.o libreplace.la $(PIE_LDFLAGS) $(SSP_LDFLAGS)
diff --git a/package/sudo/sudo-0001-no-netgroup.patch b/package/sudo/sudo-0001-no-netgroup.patch
deleted file mode 100644 (file)
index 64b870c..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-# HG changeset patch
-# User Todd C. Miller <Todd.Miller@courtesan.com>
-# Date 1406550172 21600
-# Node ID 57deb66ef8ffc0f551d460e15a34f7df78f54d2a
-# Parent  f547bf80c436c07ddb1c7385d22db96862ae7e4f
-Fix compilation on systems w/o netgroups.
-
-Status: upstream
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -r f547bf80c436 -r 57deb66ef8ff plugins/sudoers/match.c
---- a/plugins/sudoers/match.c  Sat Jul 26 06:07:34 2014 -0600
-+++ b/plugins/sudoers/match.c  Mon Jul 28 06:22:52 2014 -0600
-@@ -972,12 +972,12 @@
-       rc = true;
-     else if (lhost != shost && innetgr(netgr, shost, user, domain))
-       rc = true;
--#endif /* HAVE_INNETGR */
-     sudo_debug_printf(SUDO_DEBUG_DEBUG|SUDO_DEBUG_LINENO,
-       "netgroup %s matches (%s|%s, %s, %s): %s", netgr, lhost ? lhost : "",
-       shost ? shost : "", user ? user : "", domain ? domain : "",
-       rc ? "true" : "false");
-+#endif /* HAVE_INNETGR */
-     debug_return_bool(rc);
- }
-
diff --git a/package/sudo/sudo-0002-drop-sspcflags-piecflags-for-host.patch b/package/sudo/sudo-0002-drop-sspcflags-piecflags-for-host.patch
deleted file mode 100644 (file)
index 9f09656..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-Don't use SSP_CFLAGS and PIE_CFLAGS for host tools.
-http://www.sudo.ws/bugs/show_bug.cgi?id=662
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura sudo-1.8.10p3.orig/compat/Makefile.in sudo-1.8.10p3/compat/Makefile.in
---- sudo-1.8.10p3.orig/compat/Makefile.in      2014-03-07 18:51:19.000000000 -0300
-+++ sudo-1.8.10p3/compat/Makefile.in   2014-09-20 07:29:30.913108029 -0300
-@@ -96,10 +96,10 @@
-       ./mksigname > $@
- mksiglist: $(srcdir)/mksiglist.c $(srcdir)/mksiglist.h $(incdir)/missing.h $(top_builddir)/config.h
--      $(CC) $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/mksiglist.c -o $@
-+      $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFS) $(srcdir)/mksiglist.c -o $@
- mksigname: $(srcdir)/mksigname.c $(srcdir)/mksigname.h $(incdir)/missing.h $(top_builddir)/config.h
--      $(CC) $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/mksigname.c -o $@
-+      $(CC) $(CPPFLAGS) $(CFLAGS) $(DEFS) $(srcdir)/mksigname.c -o $@
- fnm_test: fnm_test.o libreplace.la
-       $(LIBTOOL) --mode=link $(CC) -o $@ fnm_test.o libreplace.la $(PIE_LDFLAGS) $(SSP_LDFLAGS)
diff --git a/package/sunxi-mali/0001-Add-missing-GLchar-definitions.patch b/package/sunxi-mali/0001-Add-missing-GLchar-definitions.patch
new file mode 100644 (file)
index 0000000..a9370b0
--- /dev/null
@@ -0,0 +1,45 @@
+From 058d5e8cd90d117535b5d314fd9e15c70028ff20 Mon Sep 17 00:00:00 2001
+From: Eric Le Bihan <eric.le.bihan.dev@free.fr>
+Date: Mon, 21 Apr 2014 19:31:23 +0200
+Subject: [PATCH] Add missing GLchar definitions.
+
+The GLES and GLES2 header files provided by sunxi-mali do not define the
+type "GLchar" and use "char" instead in the prototype of some functions.
+
+This issue has been reported upstream some time ago, but the pull
+request has not been merged yet.  (See
+https://github.com/linux-sunxi/sunxi-mali/pull/8).
+
+Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
+---
+ include/GLES/gl.h   | 1 +
+ include/GLES2/gl2.h | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/include/GLES/gl.h b/include/GLES/gl.h
+index 858f394..a6bb591 100644
+--- a/include/GLES/gl.h
++++ b/include/GLES/gl.h
+@@ -29,6 +29,7 @@ typedef float  GLfloat;
+ typedef float  GLclampf;
+ typedef signed int  GLfixed;
+ typedef signed int  GLclampx;
++typedef char GLchar;
+ typedef int * GLintptr;
+ typedef int *  GLsizeiptr;
+diff --git a/include/GLES2/gl2.h b/include/GLES2/gl2.h
+index 59e376c..90d96bb 100644
+--- a/include/GLES2/gl2.h
++++ b/include/GLES2/gl2.h
+@@ -32,6 +32,7 @@ typedef unsigned int     GLuint;
+ typedef khronos_float_t  GLfloat;
+ typedef khronos_float_t  GLclampf;
+ typedef khronos_int32_t  GLfixed;
++typedef char             GLchar;
+ /* GL types for handling large vertex buffer objects */
+ typedef khronos_intptr_t GLintptr;
+-- 
+1.9.0
+
diff --git a/package/sunxi-mali/sunxi-mali-0001-Add-missing-GLchar-definitions.patch b/package/sunxi-mali/sunxi-mali-0001-Add-missing-GLchar-definitions.patch
deleted file mode 100644 (file)
index a9370b0..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-From 058d5e8cd90d117535b5d314fd9e15c70028ff20 Mon Sep 17 00:00:00 2001
-From: Eric Le Bihan <eric.le.bihan.dev@free.fr>
-Date: Mon, 21 Apr 2014 19:31:23 +0200
-Subject: [PATCH] Add missing GLchar definitions.
-
-The GLES and GLES2 header files provided by sunxi-mali do not define the
-type "GLchar" and use "char" instead in the prototype of some functions.
-
-This issue has been reported upstream some time ago, but the pull
-request has not been merged yet.  (See
-https://github.com/linux-sunxi/sunxi-mali/pull/8).
-
-Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
----
- include/GLES/gl.h   | 1 +
- include/GLES2/gl2.h | 1 +
- 2 files changed, 2 insertions(+)
-
-diff --git a/include/GLES/gl.h b/include/GLES/gl.h
-index 858f394..a6bb591 100644
---- a/include/GLES/gl.h
-+++ b/include/GLES/gl.h
-@@ -29,6 +29,7 @@ typedef float  GLfloat;
- typedef float  GLclampf;
- typedef signed int  GLfixed;
- typedef signed int  GLclampx;
-+typedef char GLchar;
- typedef int * GLintptr;
- typedef int *  GLsizeiptr;
-diff --git a/include/GLES2/gl2.h b/include/GLES2/gl2.h
-index 59e376c..90d96bb 100644
---- a/include/GLES2/gl2.h
-+++ b/include/GLES2/gl2.h
-@@ -32,6 +32,7 @@ typedef unsigned int     GLuint;
- typedef khronos_float_t  GLfloat;
- typedef khronos_float_t  GLclampf;
- typedef khronos_int32_t  GLfixed;
-+typedef char             GLchar;
- /* GL types for handling large vertex buffer objects */
- typedef khronos_intptr_t GLintptr;
--- 
-1.9.0
-
diff --git a/package/synergy/0001-includes.patch b/package/synergy/0001-includes.patch
new file mode 100644 (file)
index 0000000..accaf82
--- /dev/null
@@ -0,0 +1,167 @@
+[PATCH] fix build with modern toolchains
+
+Several files are missing the correct includes for exit/getenvmemcpy/strlen/..
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ lib/arch/CArchDaemonUnix.cpp        |    1 +
+ lib/arch/CMultibyte.cpp             |    1 +
+ lib/base/CStringUtil.cpp            |    1 +
+ lib/client/CClient.cpp              |    3 ++-
+ lib/client/CServerProxy.cpp         |    1 +
+ lib/net/CTCPSocket.cpp              |    2 +-
+ lib/platform/CXWindowsScreen.cpp    |    1 +
+ lib/server/CClientProxy1_3.cpp      |    1 +
+ lib/server/CServer.cpp              |    1 +
+ lib/synergy/CPacketStreamFilter.cpp |    1 +
+ lib/synergy/IKeyState.cpp           |    1 +
+ lib/synergy/IPrimaryScreen.cpp      |    1 +
+ 12 files changed, 13 insertions(+), 2 deletions(-)
+
+Index: synergy-1.3.1/lib/arch/CArchDaemonUnix.cpp
+===================================================================
+--- synergy-1.3.1.orig/lib/arch/CArchDaemonUnix.cpp
++++ synergy-1.3.1/lib/arch/CArchDaemonUnix.cpp
+@@ -19,6 +19,7 @@
+ #include <sys/stat.h>
+ #include <fcntl.h>
+ #include <errno.h>
++#include <stdlib.h>
+ //
+ // CArchDaemonUnix
+Index: synergy-1.3.1/lib/arch/CMultibyte.cpp
+===================================================================
+--- synergy-1.3.1.orig/lib/arch/CMultibyte.cpp
++++ synergy-1.3.1/lib/arch/CMultibyte.cpp
+@@ -19,6 +19,7 @@
+ #include "CArch.h"
+ #include <limits.h>
+ #include <string.h>
++#include <stdlib.h>
+ #if HAVE_LOCALE_H
+ #     include <locale.h>
+ #endif
+Index: synergy-1.3.1/lib/base/CStringUtil.cpp
+===================================================================
+--- synergy-1.3.1.orig/lib/base/CStringUtil.cpp
++++ synergy-1.3.1/lib/base/CStringUtil.cpp
+@@ -19,6 +19,7 @@
+ #include <cctype>
+ #include <cstdio>
+ #include <cstdlib>
++#include <cstring>
+ #include <algorithm>
+ //
+Index: synergy-1.3.1/lib/client/CClient.cpp
+===================================================================
+--- synergy-1.3.1.orig/lib/client/CClient.cpp
++++ synergy-1.3.1/lib/client/CClient.cpp
+@@ -26,7 +26,8 @@
+ #include "CLog.h"
+ #include "IEventQueue.h"
+ #include "TMethodEventJob.h"
+-
++#include <string.h>
++#include <stdlib.h>
+ //
+ // CClient
+ //
+Index: synergy-1.3.1/lib/client/CServerProxy.cpp
+===================================================================
+--- synergy-1.3.1.orig/lib/client/CServerProxy.cpp
++++ synergy-1.3.1/lib/client/CServerProxy.cpp
+@@ -24,6 +24,7 @@
+ #include "TMethodEventJob.h"
+ #include "XBase.h"
+ #include <memory>
++#include <string.h>
+ //
+ // CServerProxy
+Index: synergy-1.3.1/lib/net/CTCPSocket.cpp
+===================================================================
+--- synergy-1.3.1.orig/lib/net/CTCPSocket.cpp
++++ synergy-1.3.1/lib/net/CTCPSocket.cpp
+@@ -24,7 +24,7 @@
+ #include "CArch.h"
+ #include "XArch.h"
+ #include <string.h>
+-
++#include <stdlib.h>
+ //
+ // CTCPSocket
+ //
+Index: synergy-1.3.1/lib/platform/CXWindowsScreen.cpp
+===================================================================
+--- synergy-1.3.1.orig/lib/platform/CXWindowsScreen.cpp
++++ synergy-1.3.1/lib/platform/CXWindowsScreen.cpp
+@@ -27,6 +27,7 @@
+ #include "IEventQueue.h"
+ #include "TMethodEventJob.h"
+ #include <cstring>
++#include <stdlib.h>
+ #if X_DISPLAY_MISSING
+ #     error X11 is required to build synergy
+ #else
+Index: synergy-1.3.1/lib/server/CClientProxy1_3.cpp
+===================================================================
+--- synergy-1.3.1.orig/lib/server/CClientProxy1_3.cpp
++++ synergy-1.3.1/lib/server/CClientProxy1_3.cpp
+@@ -17,6 +17,7 @@
+ #include "CLog.h"
+ #include "IEventQueue.h"
+ #include "TMethodEventJob.h"
++#include <string.h>
+ //
+ // CClientProxy1_3
+Index: synergy-1.3.1/lib/server/CServer.cpp
+===================================================================
+--- synergy-1.3.1.orig/lib/server/CServer.cpp
++++ synergy-1.3.1/lib/server/CServer.cpp
+@@ -29,6 +29,7 @@
+ #include "TMethodEventJob.h"
+ #include "CArch.h"
+ #include <string.h>
++#include <stdlib.h>
+ //
+ // CServer
+Index: synergy-1.3.1/lib/synergy/CPacketStreamFilter.cpp
+===================================================================
+--- synergy-1.3.1.orig/lib/synergy/CPacketStreamFilter.cpp
++++ synergy-1.3.1/lib/synergy/CPacketStreamFilter.cpp
+@@ -16,6 +16,7 @@
+ #include "IEventQueue.h"
+ #include "CLock.h"
+ #include "TMethodEventJob.h"
++#include <string.h>
+ //
+ // CPacketStreamFilter
+Index: synergy-1.3.1/lib/synergy/IKeyState.cpp
+===================================================================
+--- synergy-1.3.1.orig/lib/synergy/IKeyState.cpp
++++ synergy-1.3.1/lib/synergy/IKeyState.cpp
+@@ -14,6 +14,7 @@
+ #include "IKeyState.h"
+ #include <string.h>
++#include <stdlib.h>
+ //
+ // IKeyState
+Index: synergy-1.3.1/lib/synergy/IPrimaryScreen.cpp
+===================================================================
+--- synergy-1.3.1.orig/lib/synergy/IPrimaryScreen.cpp
++++ synergy-1.3.1/lib/synergy/IPrimaryScreen.cpp
+@@ -13,6 +13,7 @@
+  */
+ #include "IPrimaryScreen.h"
++#include <stdlib.h>
+ //
+ // IPrimaryScreen
diff --git a/package/synergy/0002-remove-werror.patch b/package/synergy/0002-remove-werror.patch
new file mode 100644 (file)
index 0000000..31a8c2b
--- /dev/null
@@ -0,0 +1,16 @@
+Remove -Werror from CXXFLAGS
+
+Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
+
+Index: synergy-1.3.1/configure.in
+===================================================================
+--- synergy-1.3.1.orig/configure.in
++++ synergy-1.3.1/configure.in
+@@ -239,7 +239,6 @@ dnl checks for system services
+ dnl enable maximum compiler warnings and warnings are errors.
+ ACX_CXX_WARNINGS
+-ACX_CXX_WARNINGS_ARE_ERRORS
+ dnl adjust compiler and linker variables
+ CXXFLAGS="$CXXFLAGS $SYNERGY_CXXFLAGS $ARCH_CFLAGS"
diff --git a/package/synergy/synergy-1.3.1-includes.patch b/package/synergy/synergy-1.3.1-includes.patch
deleted file mode 100644 (file)
index accaf82..0000000
+++ /dev/null
@@ -1,167 +0,0 @@
-[PATCH] fix build with modern toolchains
-
-Several files are missing the correct includes for exit/getenvmemcpy/strlen/..
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- lib/arch/CArchDaemonUnix.cpp        |    1 +
- lib/arch/CMultibyte.cpp             |    1 +
- lib/base/CStringUtil.cpp            |    1 +
- lib/client/CClient.cpp              |    3 ++-
- lib/client/CServerProxy.cpp         |    1 +
- lib/net/CTCPSocket.cpp              |    2 +-
- lib/platform/CXWindowsScreen.cpp    |    1 +
- lib/server/CClientProxy1_3.cpp      |    1 +
- lib/server/CServer.cpp              |    1 +
- lib/synergy/CPacketStreamFilter.cpp |    1 +
- lib/synergy/IKeyState.cpp           |    1 +
- lib/synergy/IPrimaryScreen.cpp      |    1 +
- 12 files changed, 13 insertions(+), 2 deletions(-)
-
-Index: synergy-1.3.1/lib/arch/CArchDaemonUnix.cpp
-===================================================================
---- synergy-1.3.1.orig/lib/arch/CArchDaemonUnix.cpp
-+++ synergy-1.3.1/lib/arch/CArchDaemonUnix.cpp
-@@ -19,6 +19,7 @@
- #include <sys/stat.h>
- #include <fcntl.h>
- #include <errno.h>
-+#include <stdlib.h>
- //
- // CArchDaemonUnix
-Index: synergy-1.3.1/lib/arch/CMultibyte.cpp
-===================================================================
---- synergy-1.3.1.orig/lib/arch/CMultibyte.cpp
-+++ synergy-1.3.1/lib/arch/CMultibyte.cpp
-@@ -19,6 +19,7 @@
- #include "CArch.h"
- #include <limits.h>
- #include <string.h>
-+#include <stdlib.h>
- #if HAVE_LOCALE_H
- #     include <locale.h>
- #endif
-Index: synergy-1.3.1/lib/base/CStringUtil.cpp
-===================================================================
---- synergy-1.3.1.orig/lib/base/CStringUtil.cpp
-+++ synergy-1.3.1/lib/base/CStringUtil.cpp
-@@ -19,6 +19,7 @@
- #include <cctype>
- #include <cstdio>
- #include <cstdlib>
-+#include <cstring>
- #include <algorithm>
- //
-Index: synergy-1.3.1/lib/client/CClient.cpp
-===================================================================
---- synergy-1.3.1.orig/lib/client/CClient.cpp
-+++ synergy-1.3.1/lib/client/CClient.cpp
-@@ -26,7 +26,8 @@
- #include "CLog.h"
- #include "IEventQueue.h"
- #include "TMethodEventJob.h"
--
-+#include <string.h>
-+#include <stdlib.h>
- //
- // CClient
- //
-Index: synergy-1.3.1/lib/client/CServerProxy.cpp
-===================================================================
---- synergy-1.3.1.orig/lib/client/CServerProxy.cpp
-+++ synergy-1.3.1/lib/client/CServerProxy.cpp
-@@ -24,6 +24,7 @@
- #include "TMethodEventJob.h"
- #include "XBase.h"
- #include <memory>
-+#include <string.h>
- //
- // CServerProxy
-Index: synergy-1.3.1/lib/net/CTCPSocket.cpp
-===================================================================
---- synergy-1.3.1.orig/lib/net/CTCPSocket.cpp
-+++ synergy-1.3.1/lib/net/CTCPSocket.cpp
-@@ -24,7 +24,7 @@
- #include "CArch.h"
- #include "XArch.h"
- #include <string.h>
--
-+#include <stdlib.h>
- //
- // CTCPSocket
- //
-Index: synergy-1.3.1/lib/platform/CXWindowsScreen.cpp
-===================================================================
---- synergy-1.3.1.orig/lib/platform/CXWindowsScreen.cpp
-+++ synergy-1.3.1/lib/platform/CXWindowsScreen.cpp
-@@ -27,6 +27,7 @@
- #include "IEventQueue.h"
- #include "TMethodEventJob.h"
- #include <cstring>
-+#include <stdlib.h>
- #if X_DISPLAY_MISSING
- #     error X11 is required to build synergy
- #else
-Index: synergy-1.3.1/lib/server/CClientProxy1_3.cpp
-===================================================================
---- synergy-1.3.1.orig/lib/server/CClientProxy1_3.cpp
-+++ synergy-1.3.1/lib/server/CClientProxy1_3.cpp
-@@ -17,6 +17,7 @@
- #include "CLog.h"
- #include "IEventQueue.h"
- #include "TMethodEventJob.h"
-+#include <string.h>
- //
- // CClientProxy1_3
-Index: synergy-1.3.1/lib/server/CServer.cpp
-===================================================================
---- synergy-1.3.1.orig/lib/server/CServer.cpp
-+++ synergy-1.3.1/lib/server/CServer.cpp
-@@ -29,6 +29,7 @@
- #include "TMethodEventJob.h"
- #include "CArch.h"
- #include <string.h>
-+#include <stdlib.h>
- //
- // CServer
-Index: synergy-1.3.1/lib/synergy/CPacketStreamFilter.cpp
-===================================================================
---- synergy-1.3.1.orig/lib/synergy/CPacketStreamFilter.cpp
-+++ synergy-1.3.1/lib/synergy/CPacketStreamFilter.cpp
-@@ -16,6 +16,7 @@
- #include "IEventQueue.h"
- #include "CLock.h"
- #include "TMethodEventJob.h"
-+#include <string.h>
- //
- // CPacketStreamFilter
-Index: synergy-1.3.1/lib/synergy/IKeyState.cpp
-===================================================================
---- synergy-1.3.1.orig/lib/synergy/IKeyState.cpp
-+++ synergy-1.3.1/lib/synergy/IKeyState.cpp
-@@ -14,6 +14,7 @@
- #include "IKeyState.h"
- #include <string.h>
-+#include <stdlib.h>
- //
- // IKeyState
-Index: synergy-1.3.1/lib/synergy/IPrimaryScreen.cpp
-===================================================================
---- synergy-1.3.1.orig/lib/synergy/IPrimaryScreen.cpp
-+++ synergy-1.3.1/lib/synergy/IPrimaryScreen.cpp
-@@ -13,6 +13,7 @@
-  */
- #include "IPrimaryScreen.h"
-+#include <stdlib.h>
- //
- // IPrimaryScreen
diff --git a/package/synergy/synergy-1.3.1-remove-werror.patch b/package/synergy/synergy-1.3.1-remove-werror.patch
deleted file mode 100644 (file)
index 31a8c2b..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-Remove -Werror from CXXFLAGS
-
-Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
-
-Index: synergy-1.3.1/configure.in
-===================================================================
---- synergy-1.3.1.orig/configure.in
-+++ synergy-1.3.1/configure.in
-@@ -239,7 +239,6 @@ dnl checks for system services
- dnl enable maximum compiler warnings and warnings are errors.
- ACX_CXX_WARNINGS
--ACX_CXX_WARNINGS_ARE_ERRORS
- dnl adjust compiler and linker variables
- CXXFLAGS="$CXXFLAGS $SYNERGY_CXXFLAGS $ARCH_CFLAGS"
diff --git a/package/sysprof/0001-define-NT_GNU_BUILD_ID.patch b/package/sysprof/0001-define-NT_GNU_BUILD_ID.patch
new file mode 100644 (file)
index 0000000..dcc2cbe
--- /dev/null
@@ -0,0 +1,22 @@
+On uclibc elf.h does not have GNU extentions but we need this define
+so we define it locally if its not getting it from elf.h
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
+Upstream-Status: Pending
+
+Index: git/elfparser.h
+===================================================================
+--- git.orig/elfparser.h       2011-07-16 18:57:41.000000000 -0700
++++ git/elfparser.h    2011-07-16 20:28:54.733829895 -0700
+@@ -17,6 +17,10 @@
+  */
+ #include <glib.h>
++#ifndef NT_GNU_BUILD_ID
++#define NT_GNU_BUILD_ID 3
++#endif
++
+ typedef struct ElfSym ElfSym;
+ typedef struct ElfParser ElfParser;
diff --git a/package/sysprof/sysprof-01-define-NT_GNU_BUILD_ID.patch b/package/sysprof/sysprof-01-define-NT_GNU_BUILD_ID.patch
deleted file mode 100644 (file)
index dcc2cbe..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-On uclibc elf.h does not have GNU extentions but we need this define
-so we define it locally if its not getting it from elf.h
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
-Upstream-Status: Pending
-
-Index: git/elfparser.h
-===================================================================
---- git.orig/elfparser.h       2011-07-16 18:57:41.000000000 -0700
-+++ git/elfparser.h    2011-07-16 20:28:54.733829895 -0700
-@@ -17,6 +17,10 @@
-  */
- #include <glib.h>
-+#ifndef NT_GNU_BUILD_ID
-+#define NT_GNU_BUILD_ID 3
-+#endif
-+
- typedef struct ElfSym ElfSym;
- typedef struct ElfParser ElfParser;
diff --git a/package/taglib/0001-cmake-use-the-standard-CMake-flag-to-drive-the-share.patch b/package/taglib/0001-cmake-use-the-standard-CMake-flag-to-drive-the-share.patch
new file mode 100644 (file)
index 0000000..535ccb4
--- /dev/null
@@ -0,0 +1,40 @@
+From 4e6a75eed3602f10aff516f49c8088c6da8db9df Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Sun, 31 Aug 2014 12:11:57 +0200
+Subject: [PATCH 1/1] cmake: use the standard CMake flag to drive the shared
+ object build
+
+If BUILD_SHARED_LIBS is set and ENABLE_STATIC undefined, then drive
+ENABLE_STATIC with the BUILD_SHARED_LIBS value.
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+---
+ CMakeLists.txt | 12 +++++++++++-
+ 1 file changed, 11 insertions(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 317ffa1..9931957 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -2,7 +2,17 @@ project(taglib)
+ cmake_minimum_required(VERSION 2.6.0 FATAL_ERROR)
+-option(ENABLE_STATIC "Make static version of libtag"  OFF)
++# Use the standard CMake flag to drive the shared object build.
++if(DEFINED BUILD_SHARED_LIBS AND NOT DEFINED ENABLE_STATIC)
++  if(BUILD_SHARED_LIBS)
++    set(ENABLE_STATIC OFF)
++  else()
++    set(ENABLE_STATIC ON)
++  endif()
++else()
++  option(ENABLE_STATIC "Make static version of libtag"  OFF)
++endif()
++
+ if(ENABLE_STATIC)
+   add_definitions(-DTAGLIB_STATIC)
+   set(BUILD_SHARED_LIBS OFF)
+-- 
+2.1.0
+
diff --git a/package/taglib/taglib-0001-cmake-use-the-standard-CMake-flag-to-drive-the-share.patch b/package/taglib/taglib-0001-cmake-use-the-standard-CMake-flag-to-drive-the-share.patch
deleted file mode 100644 (file)
index 535ccb4..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-From 4e6a75eed3602f10aff516f49c8088c6da8db9df Mon Sep 17 00:00:00 2001
-From: Samuel Martin <s.martin49@gmail.com>
-Date: Sun, 31 Aug 2014 12:11:57 +0200
-Subject: [PATCH 1/1] cmake: use the standard CMake flag to drive the shared
- object build
-
-If BUILD_SHARED_LIBS is set and ENABLE_STATIC undefined, then drive
-ENABLE_STATIC with the BUILD_SHARED_LIBS value.
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
----
- CMakeLists.txt | 12 +++++++++++-
- 1 file changed, 11 insertions(+), 1 deletion(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 317ffa1..9931957 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -2,7 +2,17 @@ project(taglib)
- cmake_minimum_required(VERSION 2.6.0 FATAL_ERROR)
--option(ENABLE_STATIC "Make static version of libtag"  OFF)
-+# Use the standard CMake flag to drive the shared object build.
-+if(DEFINED BUILD_SHARED_LIBS AND NOT DEFINED ENABLE_STATIC)
-+  if(BUILD_SHARED_LIBS)
-+    set(ENABLE_STATIC OFF)
-+  else()
-+    set(ENABLE_STATIC ON)
-+  endif()
-+else()
-+  option(ENABLE_STATIC "Make static version of libtag"  OFF)
-+endif()
-+
- if(ENABLE_STATIC)
-   add_definitions(-DTAGLIB_STATIC)
-   set(BUILD_SHARED_LIBS OFF)
--- 
-2.1.0
-
diff --git a/package/tar/0001-fix-build-failure.patch b/package/tar/0001-fix-build-failure.patch
new file mode 100644 (file)
index 0000000..8550a3e
--- /dev/null
@@ -0,0 +1,52 @@
+Status: upstream
+http://git.savannah.gnu.org/cgit/tar.git/commit/?id=e9ddc08da0982f36581ae5a8c7763453ff41cfe8
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+From e9ddc08da0982f36581ae5a8c7763453ff41cfe8 Mon Sep 17 00:00:00 2001
+From: Sergey Poznyakoff <gray@gnu.org>
+Date: Wed, 24 Sep 2014 21:22:16 +0000
+Subject: Bugfixes.
+
+* doc/tar.1: Fix typo in font spec.
+* src/tar.c (sort_mode_arg, sort_mode_flag): Protect "inode"
+(SAVEDIR_SORT_INODE) with D_INO_IN_DIRENT
+---
+diff --git a/doc/tar.1 b/doc/tar.1
+index 9000627..b91de63 100644
+--- a/doc/tar.1
++++ b/doc/tar.1
+@@ -879,7 +879,7 @@ Exclude files matching patterns listed in FILE.
+ \fB\-\-strip\-components\fR=\fINUMBER\fR
+ Strip \fINUMBER\fR leading components from file names on extraction.
+ .TP
+-\fB\-\-transform\fR=\fIEXPRESSION\dR, \fB\-\-xform\fR=\fIEXPRESSION\fR
++\fB\-\-transform\fR=\fIEXPRESSION\fR, \fB\-\-xform\fR=\fIEXPRESSION\fR
+ Use sed replace \fIEXPRESSION\fR to transform file names.
+ .SS File name matching options
+ These options affect both exclude and include patterns.
+diff --git a/src/tar.c b/src/tar.c
+index 225c624..f8102e0 100644
+--- a/src/tar.c
++++ b/src/tar.c
+@@ -1341,14 +1341,18 @@ static char filename_terminator;
+ static char const *const sort_mode_arg[] = {
+   "none",
+   "name",
++#if D_INO_IN_DIRENT
+   "inode",
++#endif
+   NULL
+ };
+ static int sort_mode_flag[] = {
+     SAVEDIR_SORT_NONE,
+     SAVEDIR_SORT_NAME,
++#if D_INO_IN_DIRENT
+     SAVEDIR_SORT_INODE
++#endif
+ };
+ ARGMATCH_VERIFY (sort_mode_arg, sort_mode_flag);
+--
+cgit v0.9.0.2
diff --git a/package/tar/tar-0001-fix-build-failure.patch b/package/tar/tar-0001-fix-build-failure.patch
deleted file mode 100644 (file)
index 8550a3e..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-Status: upstream
-http://git.savannah.gnu.org/cgit/tar.git/commit/?id=e9ddc08da0982f36581ae5a8c7763453ff41cfe8
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-From e9ddc08da0982f36581ae5a8c7763453ff41cfe8 Mon Sep 17 00:00:00 2001
-From: Sergey Poznyakoff <gray@gnu.org>
-Date: Wed, 24 Sep 2014 21:22:16 +0000
-Subject: Bugfixes.
-
-* doc/tar.1: Fix typo in font spec.
-* src/tar.c (sort_mode_arg, sort_mode_flag): Protect "inode"
-(SAVEDIR_SORT_INODE) with D_INO_IN_DIRENT
----
-diff --git a/doc/tar.1 b/doc/tar.1
-index 9000627..b91de63 100644
---- a/doc/tar.1
-+++ b/doc/tar.1
-@@ -879,7 +879,7 @@ Exclude files matching patterns listed in FILE.
- \fB\-\-strip\-components\fR=\fINUMBER\fR
- Strip \fINUMBER\fR leading components from file names on extraction.
- .TP
--\fB\-\-transform\fR=\fIEXPRESSION\dR, \fB\-\-xform\fR=\fIEXPRESSION\fR
-+\fB\-\-transform\fR=\fIEXPRESSION\fR, \fB\-\-xform\fR=\fIEXPRESSION\fR
- Use sed replace \fIEXPRESSION\fR to transform file names.
- .SS File name matching options
- These options affect both exclude and include patterns.
-diff --git a/src/tar.c b/src/tar.c
-index 225c624..f8102e0 100644
---- a/src/tar.c
-+++ b/src/tar.c
-@@ -1341,14 +1341,18 @@ static char filename_terminator;
- static char const *const sort_mode_arg[] = {
-   "none",
-   "name",
-+#if D_INO_IN_DIRENT
-   "inode",
-+#endif
-   NULL
- };
- static int sort_mode_flag[] = {
-     SAVEDIR_SORT_NONE,
-     SAVEDIR_SORT_NAME,
-+#if D_INO_IN_DIRENT
-     SAVEDIR_SORT_INODE
-+#endif
- };
- ARGMATCH_VERIFY (sort_mode_arg, sort_mode_flag);
---
-cgit v0.9.0.2
diff --git a/package/tcl/0001-dont-build-compat.patch b/package/tcl/0001-dont-build-compat.patch
new file mode 100644 (file)
index 0000000..85c5c57
--- /dev/null
@@ -0,0 +1,32 @@
+From: Andrew Ruder <andrew.ruder@elecsyscorp.com>
+Subject: [PATCH] Disable tcl compatibility layers
+
+Turn off building compatibility layers for old/broken versions of
+standard functions (strstr, strtoul, strtod) with the assumption that
+anything buildroot is using as a standard C library will be good enough
+to not have broken behavior.
+
+Signed-off-by: Andrew Ruder <andrew.ruder@elecsyscorp.com>
+---
+
+diff --git a/unix/tcl.m4 b/unix/tcl.m4
+--- a/unix/tcl.m4
++++ b/unix/tcl.m4
+@@ -2466,7 +2466,7 @@ AC_DEFUN([SC_BUGGY_STRTOD], [
+                   }
+                   exit(0);
+               }], tcl_cv_strtod_buggy=ok, tcl_cv_strtod_buggy=buggy,
+-                  tcl_cv_strtod_buggy=buggy)])
++                  tcl_cv_strtod_buggy=ok)])
+       if test "$tcl_cv_strtod_buggy" = buggy; then
+           AC_LIBOBJ([fixstrtod])
+           USE_COMPAT=1
+@@ -2725,7 +2725,7 @@ AC_DEFUN([SC_TCL_CHECK_BROKEN_FUNC],[
+     if test ["$tcl_ok"] = 1; then
+       AC_CACHE_CHECK([proper ]$1[ implementation], [tcl_cv_]$1[_unbroken],
+           AC_TRY_RUN([[int main() {]$2[}]],[tcl_cv_]$1[_unbroken]=ok,
+-              [tcl_cv_]$1[_unbroken]=broken,[tcl_cv_]$1[_unbroken]=unknown))
++              [tcl_cv_]$1[_unbroken]=broken,[tcl_cv_]$1[_unbroken]=ok))
+       if test ["$tcl_cv_]$1[_unbroken"] = "ok"; then
+           tcl_ok=1
+       else
diff --git a/package/tcl/tcl-0001-dont-build-compat.patch b/package/tcl/tcl-0001-dont-build-compat.patch
deleted file mode 100644 (file)
index 85c5c57..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-From: Andrew Ruder <andrew.ruder@elecsyscorp.com>
-Subject: [PATCH] Disable tcl compatibility layers
-
-Turn off building compatibility layers for old/broken versions of
-standard functions (strstr, strtoul, strtod) with the assumption that
-anything buildroot is using as a standard C library will be good enough
-to not have broken behavior.
-
-Signed-off-by: Andrew Ruder <andrew.ruder@elecsyscorp.com>
----
-
-diff --git a/unix/tcl.m4 b/unix/tcl.m4
---- a/unix/tcl.m4
-+++ b/unix/tcl.m4
-@@ -2466,7 +2466,7 @@ AC_DEFUN([SC_BUGGY_STRTOD], [
-                   }
-                   exit(0);
-               }], tcl_cv_strtod_buggy=ok, tcl_cv_strtod_buggy=buggy,
--                  tcl_cv_strtod_buggy=buggy)])
-+                  tcl_cv_strtod_buggy=ok)])
-       if test "$tcl_cv_strtod_buggy" = buggy; then
-           AC_LIBOBJ([fixstrtod])
-           USE_COMPAT=1
-@@ -2725,7 +2725,7 @@ AC_DEFUN([SC_TCL_CHECK_BROKEN_FUNC],[
-     if test ["$tcl_ok"] = 1; then
-       AC_CACHE_CHECK([proper ]$1[ implementation], [tcl_cv_]$1[_unbroken],
-           AC_TRY_RUN([[int main() {]$2[}]],[tcl_cv_]$1[_unbroken]=ok,
--              [tcl_cv_]$1[_unbroken]=broken,[tcl_cv_]$1[_unbroken]=unknown))
-+              [tcl_cv_]$1[_unbroken]=broken,[tcl_cv_]$1[_unbroken]=ok))
-       if test ["$tcl_cv_]$1[_unbroken"] = "ok"; then
-           tcl_ok=1
-       else
diff --git a/package/thttpd/0001-getline.patch b/package/thttpd/0001-getline.patch
new file mode 100644 (file)
index 0000000..35c366a
--- /dev/null
@@ -0,0 +1,26 @@
+Fix glibc/eglibc getline() conflicting functions.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+---
+
+diff -Nura thttpd-2.25b.orig/extras/htpasswd.c thttpd-2.25b/extras/htpasswd.c
+--- thttpd-2.25b.orig/extras/htpasswd.c        2001-12-18 21:08:08.000000000 -0300
++++ thttpd-2.25b/extras/htpasswd.c     2011-11-25 11:42:47.198582812 -0300
+@@ -49,7 +49,7 @@
+     while((line[y++] = line[x++]));
+ }
+-static int getline(char *s, int n, FILE *f) {
++static int get_line(char *s, int n, FILE *f) {
+     register int i=0;
+     while(1) {
+@@ -189,7 +189,7 @@
+     strcpy(user,argv[2]);
+     found = 0;
+-    while(!(getline(line,MAX_STRING_LEN,f))) {
++    while(!(get_line(line,MAX_STRING_LEN,f))) {
+         if(found || (line[0] == '#') || (!line[0])) {
+             putline(tfp,line);
+             continue;
diff --git a/package/thttpd/thttpd-2.25b-getline.patch b/package/thttpd/thttpd-2.25b-getline.patch
deleted file mode 100644 (file)
index 35c366a..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-Fix glibc/eglibc getline() conflicting functions.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
----
-
-diff -Nura thttpd-2.25b.orig/extras/htpasswd.c thttpd-2.25b/extras/htpasswd.c
---- thttpd-2.25b.orig/extras/htpasswd.c        2001-12-18 21:08:08.000000000 -0300
-+++ thttpd-2.25b/extras/htpasswd.c     2011-11-25 11:42:47.198582812 -0300
-@@ -49,7 +49,7 @@
-     while((line[y++] = line[x++]));
- }
--static int getline(char *s, int n, FILE *f) {
-+static int get_line(char *s, int n, FILE *f) {
-     register int i=0;
-     while(1) {
-@@ -189,7 +189,7 @@
-     strcpy(user,argv[2]);
-     found = 0;
--    while(!(getline(line,MAX_STRING_LEN,f))) {
-+    while(!(get_line(line,MAX_STRING_LEN,f))) {
-         if(found || (line[0] == '#') || (!line[0])) {
-             putline(tfp,line);
-             continue;
diff --git a/package/ti-gfx/0001-newclkapi.patch b/package/ti-gfx/0001-newclkapi.patch
new file mode 100644 (file)
index 0000000..69574c1
--- /dev/null
@@ -0,0 +1,118 @@
+This patch adjusts the omap3630 portion of the powervr driver to use the new
+clk kernel api.
+
+Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
+[yann.morin.1998@free.fr: rebased ontop of 5.01.00.01]
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+diff -durN ti-gfx-5_01_00_01.orig/GFX_Linux_KM/services4/system/omap3630/sysutils_linux.c ti-gfx-5_01_00_01/GFX_Linux_KM/services4/system/omap3630/sysutils_linux.c
+--- ti-gfx-5_01_00_01.orig/GFX_Linux_KM/services4/system/omap3630/sysutils_linux.c     2013-12-23 15:44:20.000000000 +0100
++++ ti-gfx-5_01_00_01/GFX_Linux_KM/services4/system/omap3630/sysutils_linux.c  2014-02-26 19:17:39.829571846 +0100
+@@ -182,6 +182,49 @@
+  @Return   PVRSRV_ERROR
+ ******************************************************************************/
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,2,0)
++int clk_disable_unprepare(struct clk *clk)
++{
++      return clk_disable(clk);
++}
++#elif LINUX_VERSION_CODE < KERNEL_VERSION(3,3,0)
++int clk_disable_unprepare(struct clk *clk)
++{
++      res = clk_disable(clk);
++      if (res < 0)
++              return res;
++
++      res = clk_unprepare(clk);
++      if (ret < 0)
++              return res;
++
++      return 0;
++}
++#endif
++
++
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,2,0)
++int clk_prepare_enable(struct clk *clk)
++{
++      return clk_enable(clk);
++}
++#elif LINUX_VERSION_CODE < KERNEL_VERSION(3,3,0)
++int clk_prepare_enable(struct clk *clk)
++{
++      res = clk_prepare(clk);
++      if (ret < 0)
++              return res;
++
++      res = clk_enable(clk);
++      if (res < 0) {
++              clk_unprepare(clk);
++              return res;
++      }
++
++      return 0;
++}
++#endif
++
+ PVRSRV_ERROR EnableSGXClocks(SYS_DATA *psSysData)
+ {
+ #if !defined(NO_HARDWARE)
+@@ -198,7 +241,7 @@
+ #if !defined(PM_RUNTIME_SUPPORT)
+         PVR_DPF((PVR_DBG_MESSAGE, "EnableSGXClocks: Enabling SGX Clocks"));
+-        res=clk_enable(psSysSpecData->psSGX_FCK);
++        res=clk_prepare_enable(psSysSpecData->psSGX_FCK);
+         if (res < 0)
+         {
+                 PVR_DPF((PVR_DBG_ERROR, "EnableSGXClocks: Couldn't enable SGX functional clock (%d)", res));
+@@ -324,7 +367,7 @@
+       PVR_DPF((PVR_DBG_MESSAGE, "DisableSGXClocks: Disabling SGX Clocks"));
+ #if !defined(PM_RUNTIME_SUPPORT)
+-        clk_disable(psSysSpecData->psSGX_FCK);
++        clk_disable_unprepare(psSysSpecData->psSGX_FCK);
+ #endif
+       SysDisableSGXInterrupts(psSysData);
+@@ -540,14 +583,14 @@
+       rate = clk_get_rate(psSysSpecData->psGPT11_FCK);
+       PVR_TRACE(("GPTIMER11 clock is %dMHz", HZ_TO_MHZ(rate)));
+-      res = clk_enable(psSysSpecData->psGPT11_FCK);
++      res = clk_prepare_enable(psSysSpecData->psGPT11_FCK);
+       if (res < 0)
+       {
+               PVR_DPF((PVR_DBG_ERROR, "EnableSystemClocks: Couldn't enable GPTIMER11 functional clock (%d)", res));
+               goto ExitError;
+       }
+-      res = clk_enable(psSysSpecData->psGPT11_ICK);
++      res = clk_prepare_enable(psSysSpecData->psGPT11_ICK);
+       if (res < 0)
+       {
+               PVR_DPF((PVR_DBG_ERROR, "EnableSystemClocks: Couldn't enable GPTIMER11 interface clock (%d)", res));
+@@ -610,9 +653,9 @@
+ ExitDisableGPT11ICK:
+ #if defined(PVR_OMAP4_TIMING_PRCM)
+-      clk_disable(psSysSpecData->psGPT11_ICK);
++      clk_disable_unprepare(psSysSpecData->psGPT11_ICK);
+ ExitDisableGPT11FCK:
+-      clk_disable(psSysSpecData->psGPT11_FCK);
++      clk_disable_unprepare(psSysSpecData->psGPT11_FCK);
+ ExitError:
+ #endif        /* defined(PVR_OMAP4_TIMING_PRCM) */
+       eError = PVRSRV_ERROR_CLOCK_REQUEST_FAILED;
+@@ -664,9 +707,9 @@
+       psSysSpecData->sTimerRegPhysBase.uiAddr = 0;
+ #endif
+ #if defined(PVR_OMAP4_TIMING_PRCM)
+-      clk_disable(psSysSpecData->psGPT11_ICK);
++      clk_disable_unprepare(psSysSpecData->psGPT11_ICK);
+-      clk_disable(psSysSpecData->psGPT11_FCK);
++      clk_disable_unprepare(psSysSpecData->psGPT11_FCK);
+ #endif        /* defined(PVR_OMAP4_TIMING_PRCM) */
+ }
+ #endif        /* PVR_OMAP_USE_DM_TIMER_API */
diff --git a/package/ti-gfx/0002-fix-build-omaplfb-linux.patch b/package/ti-gfx/0002-fix-build-omaplfb-linux.patch
new file mode 100644 (file)
index 0000000..002d01c
--- /dev/null
@@ -0,0 +1,21 @@
+Since commit a73fdc647417699833f22d0f239affe22e062827 in the kernel,
+omap_dss_device's 'output' is renamed 'src'.
+
+Fix build with at least es5.x selected (AM35xx).
+
+Signed-off-by: Hadrien Boutteville <hadrien.boutteville@gmail.com>
+
+--- a/GFX_Linux_KM/services4/3rdparty/dc_omapfb3_linux/omaplfb_linux.c
++++ b/GFX_Linux_KM/services4/3rdparty/dc_omapfb3_linux/omaplfb_linux.c
+@@ -176,8 +176,10 @@
+ #define OMAP_DSS_DRIVER(drv, dev) struct omap_dss_driver *drv = (dev) != NULL ? (dev)->driver : NULL
+ #if (LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0))
+ #define OMAP_DSS_MANAGER(man, dev) struct omap_overlay_manager *man = (dev) != NULL ? (dev)->manager : NULL
+-#else
++#elif (LINUX_VERSION_CODE < KERNEL_VERSION(3,12,0))
+ #define OMAP_DSS_MANAGER(man, dev) struct omap_overlay_manager *man = (dev) != NULL ? (dev)->output->manager : NULL
++#else
++#define OMAP_DSS_MANAGER(man, dev) struct omap_overlay_manager *man = (dev) != NULL ? (dev)->src->manager : NULL
+ #endif
+ #define       WAIT_FOR_VSYNC(man)     ((man)->wait_for_vsync)
diff --git a/package/ti-gfx/0003-km_install_modules.patch b/package/ti-gfx/0003-km_install_modules.patch
new file mode 100644 (file)
index 0000000..2cf6e81
--- /dev/null
@@ -0,0 +1,19 @@
+Patch to add modules_install target to the modules makefile.  This makes
+installation a little easier.
+
+Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
+----
+Index: ti-gfx-4_09_00_01/GFX_Linux_KM/Makefile
+===================================================================
+--- ti-gfx-4_09_00_01.orig/GFX_Linux_KM/Makefile       2013-03-07 11:00:11.000000000 -0600
++++ ti-gfx-4_09_00_01/GFX_Linux_KM/Makefile    2013-05-23 01:36:29.356676281 -0500
+@@ -479,6 +479,9 @@
+ all:
+       $(MAKE) -C $(KERNELDIR) M=`pwd` $*
++install:
++      $(MAKE) -C $(KERNELDIR) M=`pwd` modules_install
++
+ clean:
+       @find . -name "*.o" -exec rm -r {} \;
+       @find . -name "*.ko" -exec rm -r {} \;
diff --git a/package/ti-gfx/ti-gfx-0000-newclkapi.patch b/package/ti-gfx/ti-gfx-0000-newclkapi.patch
deleted file mode 100644 (file)
index 69574c1..0000000
+++ /dev/null
@@ -1,118 +0,0 @@
-This patch adjusts the omap3630 portion of the powervr driver to use the new
-clk kernel api.
-
-Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
-[yann.morin.1998@free.fr: rebased ontop of 5.01.00.01]
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
-diff -durN ti-gfx-5_01_00_01.orig/GFX_Linux_KM/services4/system/omap3630/sysutils_linux.c ti-gfx-5_01_00_01/GFX_Linux_KM/services4/system/omap3630/sysutils_linux.c
---- ti-gfx-5_01_00_01.orig/GFX_Linux_KM/services4/system/omap3630/sysutils_linux.c     2013-12-23 15:44:20.000000000 +0100
-+++ ti-gfx-5_01_00_01/GFX_Linux_KM/services4/system/omap3630/sysutils_linux.c  2014-02-26 19:17:39.829571846 +0100
-@@ -182,6 +182,49 @@
-  @Return   PVRSRV_ERROR
- ******************************************************************************/
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,2,0)
-+int clk_disable_unprepare(struct clk *clk)
-+{
-+      return clk_disable(clk);
-+}
-+#elif LINUX_VERSION_CODE < KERNEL_VERSION(3,3,0)
-+int clk_disable_unprepare(struct clk *clk)
-+{
-+      res = clk_disable(clk);
-+      if (res < 0)
-+              return res;
-+
-+      res = clk_unprepare(clk);
-+      if (ret < 0)
-+              return res;
-+
-+      return 0;
-+}
-+#endif
-+
-+
-+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,2,0)
-+int clk_prepare_enable(struct clk *clk)
-+{
-+      return clk_enable(clk);
-+}
-+#elif LINUX_VERSION_CODE < KERNEL_VERSION(3,3,0)
-+int clk_prepare_enable(struct clk *clk)
-+{
-+      res = clk_prepare(clk);
-+      if (ret < 0)
-+              return res;
-+
-+      res = clk_enable(clk);
-+      if (res < 0) {
-+              clk_unprepare(clk);
-+              return res;
-+      }
-+
-+      return 0;
-+}
-+#endif
-+
- PVRSRV_ERROR EnableSGXClocks(SYS_DATA *psSysData)
- {
- #if !defined(NO_HARDWARE)
-@@ -198,7 +241,7 @@
- #if !defined(PM_RUNTIME_SUPPORT)
-         PVR_DPF((PVR_DBG_MESSAGE, "EnableSGXClocks: Enabling SGX Clocks"));
--        res=clk_enable(psSysSpecData->psSGX_FCK);
-+        res=clk_prepare_enable(psSysSpecData->psSGX_FCK);
-         if (res < 0)
-         {
-                 PVR_DPF((PVR_DBG_ERROR, "EnableSGXClocks: Couldn't enable SGX functional clock (%d)", res));
-@@ -324,7 +367,7 @@
-       PVR_DPF((PVR_DBG_MESSAGE, "DisableSGXClocks: Disabling SGX Clocks"));
- #if !defined(PM_RUNTIME_SUPPORT)
--        clk_disable(psSysSpecData->psSGX_FCK);
-+        clk_disable_unprepare(psSysSpecData->psSGX_FCK);
- #endif
-       SysDisableSGXInterrupts(psSysData);
-@@ -540,14 +583,14 @@
-       rate = clk_get_rate(psSysSpecData->psGPT11_FCK);
-       PVR_TRACE(("GPTIMER11 clock is %dMHz", HZ_TO_MHZ(rate)));
--      res = clk_enable(psSysSpecData->psGPT11_FCK);
-+      res = clk_prepare_enable(psSysSpecData->psGPT11_FCK);
-       if (res < 0)
-       {
-               PVR_DPF((PVR_DBG_ERROR, "EnableSystemClocks: Couldn't enable GPTIMER11 functional clock (%d)", res));
-               goto ExitError;
-       }
--      res = clk_enable(psSysSpecData->psGPT11_ICK);
-+      res = clk_prepare_enable(psSysSpecData->psGPT11_ICK);
-       if (res < 0)
-       {
-               PVR_DPF((PVR_DBG_ERROR, "EnableSystemClocks: Couldn't enable GPTIMER11 interface clock (%d)", res));
-@@ -610,9 +653,9 @@
- ExitDisableGPT11ICK:
- #if defined(PVR_OMAP4_TIMING_PRCM)
--      clk_disable(psSysSpecData->psGPT11_ICK);
-+      clk_disable_unprepare(psSysSpecData->psGPT11_ICK);
- ExitDisableGPT11FCK:
--      clk_disable(psSysSpecData->psGPT11_FCK);
-+      clk_disable_unprepare(psSysSpecData->psGPT11_FCK);
- ExitError:
- #endif        /* defined(PVR_OMAP4_TIMING_PRCM) */
-       eError = PVRSRV_ERROR_CLOCK_REQUEST_FAILED;
-@@ -664,9 +707,9 @@
-       psSysSpecData->sTimerRegPhysBase.uiAddr = 0;
- #endif
- #if defined(PVR_OMAP4_TIMING_PRCM)
--      clk_disable(psSysSpecData->psGPT11_ICK);
-+      clk_disable_unprepare(psSysSpecData->psGPT11_ICK);
--      clk_disable(psSysSpecData->psGPT11_FCK);
-+      clk_disable_unprepare(psSysSpecData->psGPT11_FCK);
- #endif        /* defined(PVR_OMAP4_TIMING_PRCM) */
- }
- #endif        /* PVR_OMAP_USE_DM_TIMER_API */
diff --git a/package/ti-gfx/ti-gfx-0001-fix-build-omaplfb-linux.patch b/package/ti-gfx/ti-gfx-0001-fix-build-omaplfb-linux.patch
deleted file mode 100644 (file)
index 002d01c..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-Since commit a73fdc647417699833f22d0f239affe22e062827 in the kernel,
-omap_dss_device's 'output' is renamed 'src'.
-
-Fix build with at least es5.x selected (AM35xx).
-
-Signed-off-by: Hadrien Boutteville <hadrien.boutteville@gmail.com>
-
---- a/GFX_Linux_KM/services4/3rdparty/dc_omapfb3_linux/omaplfb_linux.c
-+++ b/GFX_Linux_KM/services4/3rdparty/dc_omapfb3_linux/omaplfb_linux.c
-@@ -176,8 +176,10 @@
- #define OMAP_DSS_DRIVER(drv, dev) struct omap_dss_driver *drv = (dev) != NULL ? (dev)->driver : NULL
- #if (LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0))
- #define OMAP_DSS_MANAGER(man, dev) struct omap_overlay_manager *man = (dev) != NULL ? (dev)->manager : NULL
--#else
-+#elif (LINUX_VERSION_CODE < KERNEL_VERSION(3,12,0))
- #define OMAP_DSS_MANAGER(man, dev) struct omap_overlay_manager *man = (dev) != NULL ? (dev)->output->manager : NULL
-+#else
-+#define OMAP_DSS_MANAGER(man, dev) struct omap_overlay_manager *man = (dev) != NULL ? (dev)->src->manager : NULL
- #endif
- #define       WAIT_FOR_VSYNC(man)     ((man)->wait_for_vsync)
diff --git a/package/ti-gfx/ti-gfx-km_install_modules.patch b/package/ti-gfx/ti-gfx-km_install_modules.patch
deleted file mode 100644 (file)
index 2cf6e81..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-Patch to add modules_install target to the modules makefile.  This makes
-installation a little easier.
-
-Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
-----
-Index: ti-gfx-4_09_00_01/GFX_Linux_KM/Makefile
-===================================================================
---- ti-gfx-4_09_00_01.orig/GFX_Linux_KM/Makefile       2013-03-07 11:00:11.000000000 -0600
-+++ ti-gfx-4_09_00_01/GFX_Linux_KM/Makefile    2013-05-23 01:36:29.356676281 -0500
-@@ -479,6 +479,9 @@
- all:
-       $(MAKE) -C $(KERNELDIR) M=`pwd` $*
-+install:
-+      $(MAKE) -C $(KERNELDIR) M=`pwd` modules_install
-+
- clean:
-       @find . -name "*.o" -exec rm -r {} \;
-       @find . -name "*.ko" -exec rm -r {} \;
diff --git a/package/tinyhttpd/0001-misc-fixes.patch b/package/tinyhttpd/0001-misc-fixes.patch
new file mode 100644 (file)
index 0000000..05d6e50
--- /dev/null
@@ -0,0 +1,80 @@
+diff -ur tinyhttpd-0.1.0/httpd.c tinyhttpd-0.1.0-patched/httpd.c
+--- tinyhttpd-0.1.0/httpd.c    2001-04-21 19:13:13.000000000 -0500
++++ tinyhttpd-0.1.0-patched/httpd.c    2007-07-02 09:19:27.000000000 -0500
+@@ -4,14 +4,6 @@
+  * CSE 4344 (Network concepts), Prof. Zeigler
+  * University of Texas at Arlington
+  */
+-/* This program compiles for Sparc Solaris 2.6.
+- * To compile for Linux:
+- *  1) Comment out the #include <pthread.h> line.
+- *  2) Comment out the line that defines the variable newthread.
+- *  3) Comment out the two lines that run pthread_create().
+- *  4) Uncomment the line that runs accept_request().
+- *  5) Remove -lsocket from the Makefile.
+- */
+ #include <stdio.h>
+ #include <sys/socket.h>
+ #include <sys/types.h>
+@@ -22,7 +14,6 @@
+ #include <strings.h>
+ #include <string.h>
+ #include <sys/stat.h>
+-#include <pthread.h>
+ #include <sys/wait.h>
+ #include <stdlib.h>
+@@ -30,7 +21,6 @@
+ #define SERVER_STRING "Server: jdbhttpd/0.1.0\r\n"
+-void accept_request(int);
+ void bad_request(int);
+ void cat(int, FILE *);
+ void cannot_execute(int);
+@@ -102,7 +92,7 @@
+   }
+  }
+- sprintf(path, "htdocs%s", url);
++ sprintf(path, "/var/www%s", url);
+  if (path[strlen(path) - 1] == '/')
+   strcat(path, "index.html");
+  if (stat(path, &st) == -1) {
+@@ -475,11 +465,10 @@
+ int main(void)
+ {
+  int server_sock = -1;
+- u_short port = 0;
++ u_short port = 80;
+  int client_sock = -1;
+  struct sockaddr_in client_name;
+  int client_name_len = sizeof(client_name);
+- pthread_t newthread;
+  server_sock = startup(&port);
+  printf("httpd running on port %d\n", port);
+@@ -491,9 +480,7 @@
+                        &client_name_len);
+   if (client_sock == -1)
+    error_die("accept");
+- /* accept_request(client_sock); */
+- if (pthread_create(&newthread , NULL, accept_request, client_sock) != 0)
+-   perror("pthread_create");
++  accept_request(client_sock);
+  }
+  close(server_sock);
+diff -ur tinyhttpd-0.1.0/Makefile tinyhttpd-0.1.0-patched/Makefile
+--- tinyhttpd-0.1.0/Makefile   2001-04-21 17:03:39.000000000 -0500
++++ tinyhttpd-0.1.0-patched/Makefile   2007-07-02 10:29:41.000000000 -0500
+@@ -1,7 +1,7 @@
+ all: httpd
+ httpd: httpd.c
+-      gcc -W -Wall -lsocket -lpthread -o httpd httpd.c
++      $(CC) $(CFLAGS) $(LDFLAGS) -W -Wall -o httpd httpd.c
+ clean:
+-      rm httpd
++      rm -f httpd
diff --git a/package/tinyhttpd/tinyhttpd.patch b/package/tinyhttpd/tinyhttpd.patch
deleted file mode 100644 (file)
index 05d6e50..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-diff -ur tinyhttpd-0.1.0/httpd.c tinyhttpd-0.1.0-patched/httpd.c
---- tinyhttpd-0.1.0/httpd.c    2001-04-21 19:13:13.000000000 -0500
-+++ tinyhttpd-0.1.0-patched/httpd.c    2007-07-02 09:19:27.000000000 -0500
-@@ -4,14 +4,6 @@
-  * CSE 4344 (Network concepts), Prof. Zeigler
-  * University of Texas at Arlington
-  */
--/* This program compiles for Sparc Solaris 2.6.
-- * To compile for Linux:
-- *  1) Comment out the #include <pthread.h> line.
-- *  2) Comment out the line that defines the variable newthread.
-- *  3) Comment out the two lines that run pthread_create().
-- *  4) Uncomment the line that runs accept_request().
-- *  5) Remove -lsocket from the Makefile.
-- */
- #include <stdio.h>
- #include <sys/socket.h>
- #include <sys/types.h>
-@@ -22,7 +14,6 @@
- #include <strings.h>
- #include <string.h>
- #include <sys/stat.h>
--#include <pthread.h>
- #include <sys/wait.h>
- #include <stdlib.h>
-@@ -30,7 +21,6 @@
- #define SERVER_STRING "Server: jdbhttpd/0.1.0\r\n"
--void accept_request(int);
- void bad_request(int);
- void cat(int, FILE *);
- void cannot_execute(int);
-@@ -102,7 +92,7 @@
-   }
-  }
-- sprintf(path, "htdocs%s", url);
-+ sprintf(path, "/var/www%s", url);
-  if (path[strlen(path) - 1] == '/')
-   strcat(path, "index.html");
-  if (stat(path, &st) == -1) {
-@@ -475,11 +465,10 @@
- int main(void)
- {
-  int server_sock = -1;
-- u_short port = 0;
-+ u_short port = 80;
-  int client_sock = -1;
-  struct sockaddr_in client_name;
-  int client_name_len = sizeof(client_name);
-- pthread_t newthread;
-  server_sock = startup(&port);
-  printf("httpd running on port %d\n", port);
-@@ -491,9 +480,7 @@
-                        &client_name_len);
-   if (client_sock == -1)
-    error_die("accept");
-- /* accept_request(client_sock); */
-- if (pthread_create(&newthread , NULL, accept_request, client_sock) != 0)
--   perror("pthread_create");
-+  accept_request(client_sock);
-  }
-  close(server_sock);
-diff -ur tinyhttpd-0.1.0/Makefile tinyhttpd-0.1.0-patched/Makefile
---- tinyhttpd-0.1.0/Makefile   2001-04-21 17:03:39.000000000 -0500
-+++ tinyhttpd-0.1.0-patched/Makefile   2007-07-02 10:29:41.000000000 -0500
-@@ -1,7 +1,7 @@
- all: httpd
- httpd: httpd.c
--      gcc -W -Wall -lsocket -lpthread -o httpd httpd.c
-+      $(CC) $(CFLAGS) $(LDFLAGS) -W -Wall -o httpd httpd.c
- clean:
--      rm httpd
-+      rm -f httpd
diff --git a/package/tn5250/0001-ssldir.patch b/package/tn5250/0001-ssldir.patch
new file mode 100644 (file)
index 0000000..6fc78de
--- /dev/null
@@ -0,0 +1,17 @@
+Value is assigned to $with_ssl_dir but used from $with_ssl which is wrong.
+Fix configure since it's a one-liner and avoid an autoreconf.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura tn5250-0.17.4.orig/configure tn5250-0.17.4/configure
+--- tn5250-0.17.4.orig/configure       2014-09-10 08:33:15.689519554 -0300
++++ tn5250-0.17.4/configure    2014-09-10 08:33:47.428613117 -0300
+@@ -23258,7 +23258,7 @@
+ if test "${with_ssl_dir+set}" = set; then
+   withval=$with_ssl_dir;
+     if test "$with_ssl_dir" != "no"; then
+-         checksslinclude "$with_ssl"
++         checksslinclude "$with_ssl_dir"
+     else
+         for topdir in /usr/local /usr /usr/pkg /usr/lib /var/ssl /opt; do
+             for subdir in $topdir $topdir/openssl $topdir/ssl; do
diff --git a/package/tn5250/tn5250-01-ssldir.patch b/package/tn5250/tn5250-01-ssldir.patch
deleted file mode 100644 (file)
index 6fc78de..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-Value is assigned to $with_ssl_dir but used from $with_ssl which is wrong.
-Fix configure since it's a one-liner and avoid an autoreconf.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura tn5250-0.17.4.orig/configure tn5250-0.17.4/configure
---- tn5250-0.17.4.orig/configure       2014-09-10 08:33:15.689519554 -0300
-+++ tn5250-0.17.4/configure    2014-09-10 08:33:47.428613117 -0300
-@@ -23258,7 +23258,7 @@
- if test "${with_ssl_dir+set}" = set; then
-   withval=$with_ssl_dir;
-     if test "$with_ssl_dir" != "no"; then
--         checksslinclude "$with_ssl"
-+         checksslinclude "$with_ssl_dir"
-     else
-         for topdir in /usr/local /usr /usr/pkg /usr/lib /var/ssl /opt; do
-             for subdir in $topdir $topdir/openssl $topdir/ssl; do
diff --git a/package/trace-cmd/0001-Fix-ptrace-detection.patch b/package/trace-cmd/0001-Fix-ptrace-detection.patch
new file mode 100644 (file)
index 0000000..b17d7df
--- /dev/null
@@ -0,0 +1,36 @@
+From 0070081ffe65a4fbe442044ddfcc818593c98e33 Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@openwide.fr>
+Date: Wed, 30 Oct 2013 22:35:34 +0100
+Subject: [PATCH] Fix ptrace detection
+
+Ptrace support detection is ignored when CFLAGS is set in command
+arguments. Use override in Makefile to add -DWARN_NO_PTRACE and
+-DNO_PTRACE in CFLAGS if ptrace is not available.
+
+Signed-off-by: Romain Naour <romain.naour@openwide.fr>
+---
+ Makefile | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 83329ca..01b4f45 100644
+--- a/Makefile
++++ b/Makefile
+@@ -223,12 +223,12 @@ LDFLAGS ?=
+ ifndef NO_PTRACE
+ ifneq ($(call try-cc,$(SOURCE_PTRACE),),y)
+       NO_PTRACE = 1
+-      CFLAGS += -DWARN_NO_PTRACE
++      override CFLAGS += -DWARN_NO_PTRACE
+ endif
+ endif
+ ifdef NO_PTRACE
+-CFLAGS += -DNO_PTRACE
++override CFLAGS += -DNO_PTRACE
+ endif
+ # Append required CFLAGS
+-- 
+1.8.1.2
+
diff --git a/package/trace-cmd/trace-cmd-0001-Fix-ptrace-detection.patch b/package/trace-cmd/trace-cmd-0001-Fix-ptrace-detection.patch
deleted file mode 100644 (file)
index b17d7df..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-From 0070081ffe65a4fbe442044ddfcc818593c98e33 Mon Sep 17 00:00:00 2001
-From: Romain Naour <romain.naour@openwide.fr>
-Date: Wed, 30 Oct 2013 22:35:34 +0100
-Subject: [PATCH] Fix ptrace detection
-
-Ptrace support detection is ignored when CFLAGS is set in command
-arguments. Use override in Makefile to add -DWARN_NO_PTRACE and
--DNO_PTRACE in CFLAGS if ptrace is not available.
-
-Signed-off-by: Romain Naour <romain.naour@openwide.fr>
----
- Makefile | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index 83329ca..01b4f45 100644
---- a/Makefile
-+++ b/Makefile
-@@ -223,12 +223,12 @@ LDFLAGS ?=
- ifndef NO_PTRACE
- ifneq ($(call try-cc,$(SOURCE_PTRACE),),y)
-       NO_PTRACE = 1
--      CFLAGS += -DWARN_NO_PTRACE
-+      override CFLAGS += -DWARN_NO_PTRACE
- endif
- endif
- ifdef NO_PTRACE
--CFLAGS += -DNO_PTRACE
-+override CFLAGS += -DNO_PTRACE
- endif
- # Append required CFLAGS
--- 
-1.8.1.2
-
diff --git a/package/transmission/0001-fix-utypes.patch b/package/transmission/0001-fix-utypes.patch
new file mode 100644 (file)
index 0000000..96403a6
--- /dev/null
@@ -0,0 +1,30 @@
+Fix build error "conflicting types for 'UTP_Write'"
+
+Fetch from: http://www.adminsehow.com/2012/10/how-to-install-transmission-2-71-on-debian-6-0-squeeze/
+
+The corresponding upstream bug report (unfixed) can be found here:
+https://trac.transmissionbt.com/ticket/5232
+
+Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
+
+--- transmission-2.82.org/third-party/libutp/utypes.h  2013-08-09 04:47:43.000000000 +0200
++++ transmission-2.82/third-party/libutp/utypes.h      2014-01-02 20:17:18.000000000 +0100
+@@ -35,8 +35,15 @@
+ typedef const char * cstr;\r
+ typedef char * str;\r
\r
+-#ifndef __cplusplus\r
+-typedef uint8 bool;\r
+-#endif\r
++//#ifndef __cplusplus
++//typedef uint8 bool;
++//#endif
++#ifndef __cplusplus
++#ifdef HAVE_STDBOOL_H
++#include <stdbool.h>
++#else
++typedef uint8 bool;
++#endif
++#endif
\r
+ #endif //__UTYPES_H__\r
diff --git a/package/transmission/transmission-01-fix-utypes.patch b/package/transmission/transmission-01-fix-utypes.patch
deleted file mode 100644 (file)
index 96403a6..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-Fix build error "conflicting types for 'UTP_Write'"
-
-Fetch from: http://www.adminsehow.com/2012/10/how-to-install-transmission-2-71-on-debian-6-0-squeeze/
-
-The corresponding upstream bug report (unfixed) can be found here:
-https://trac.transmissionbt.com/ticket/5232
-
-Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
-
---- transmission-2.82.org/third-party/libutp/utypes.h  2013-08-09 04:47:43.000000000 +0200
-+++ transmission-2.82/third-party/libutp/utypes.h      2014-01-02 20:17:18.000000000 +0100
-@@ -35,8 +35,15 @@
- typedef const char * cstr;\r
- typedef char * str;\r
\r
--#ifndef __cplusplus\r
--typedef uint8 bool;\r
--#endif\r
-+//#ifndef __cplusplus
-+//typedef uint8 bool;
-+//#endif
-+#ifndef __cplusplus
-+#ifdef HAVE_STDBOOL_H
-+#include <stdbool.h>
-+#else
-+typedef uint8 bool;
-+#endif
-+#endif
\r
- #endif //__UTYPES_H__\r
diff --git a/package/tslib/0001-enable_raw_module.patch b/package/tslib/0001-enable_raw_module.patch
new file mode 100644 (file)
index 0000000..cb89338
--- /dev/null
@@ -0,0 +1,14 @@
+Enable raw module by default
+
+Signed-off-by: Daniel Nyström <daniel.nystrom@timeterminal.se>
+
+diff -Naur tslib-e000d35a.orig/etc/ts.conf tslib-e000d35a/etc/ts.conf
+--- tslib-e000d35a.orig/etc/ts.conf    2010-12-21 18:54:45.000000000 +0100
++++ tslib-e000d35a/etc/ts.conf 2010-12-21 18:55:03.000000000 +0100
+@@ -1,5 +1,5 @@
+ # Uncomment if you wish to use the linux input layer event interface
+-# module_raw input
++module_raw input
+ # Uncomment if you're using a Sharp Zaurus SL-5500/SL-5000d
+ # module_raw collie
diff --git a/package/tslib/0002-add_finddef_and_inputattach_utils.patch b/package/tslib/0002-add_finddef_and_inputattach_utils.patch
new file mode 100644 (file)
index 0000000..dcc6ec7
--- /dev/null
@@ -0,0 +1,718 @@
+diff -Naur tslib-org/tests/Makefile.am tslib-1.0/tests/Makefile.am
+--- tslib-org/tests/Makefile.am        2006-08-25 00:02:55.000000000 +0300
++++ tslib-1.0/tests/Makefile.am        2007-05-07 17:39:54.000000000 +0300
+@@ -12,7 +12,7 @@
+ AM_CFLAGS               = $(DEBUGFLAGS)
+ INCLUDES              = -I$(top_srcdir)/src
+-bin_PROGRAMS          = ts_test ts_calibrate ts_print ts_print_raw ts_harvest
++bin_PROGRAMS          = ts_test ts_calibrate ts_print ts_print_raw ts_harvest ts_finddev inputattach
+ ts_test_SOURCES               = ts_test.c fbutils.c fbutils.h font_8x8.c font_8x16.c font.h
+ ts_test_LDADD         = $(top_builddir)/src/libts.la
+@@ -27,4 +27,10 @@
+ ts_calibrate_LDADD    = $(top_builddir)/src/libts.la
+ ts_harvest_SOURCES    = ts_harvest.c fbutils.c fbutils.h testutils.c testutils.h font_8x8.c font_8x16.c font.h
+-ts_harvest_LDADD              = $(top_builddir)/src/libts.la
++ts_harvest_LDADD      = $(top_builddir)/src/libts.la
++
++ts_finddev_SOURCES      = ts_finddev.c
++ts_finddev_LDADD        = $(top_builddir)/src/libts.la
++
++inputattach_SOURCES     = inputattach.c
++inputattach_LDADD       =
+diff -Naur tslib-org/tests/inputattach.c tslib-1.0/tests/inputattach.c
+--- tslib-org/tests/inputattach.c      1970-01-01 02:00:00.000000000 +0200
++++ tslib-1.0/tests/inputattach.c      2007-05-07 17:36:37.000000000 +0300
+@@ -0,0 +1,611 @@
++/*
++ * $Id: inputattach.c,v 1.24 2006/02/08 12:19:31 vojtech Exp $
++ *
++ *  Copyright (c) 1999-2000 Vojtech Pavlik
++ *
++ *  Sponsored by SuSE
++ *
++ *  Twiddler support Copyright (c) 2001 Arndt Schoenewald
++ *  Sponsored by Quelltext AG (http://www.quelltext-ag.de), Dortmund, Germany
++ */
++
++/*
++ * Input line discipline attach program
++ */
++
++/*
++ * 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
++ * 
++ * Should you need to contact me, the author, you can do so either by
++ * e-mail - mail your message to <vojtech@ucw.cz>, or by paper mail:
++ * Vojtech Pavlik, Simunkova 1594, Prague 8, 182 00 Czech Republic
++ */
++ 
++/* softa note: 
++cvs version is here:
++http://cvs.sourceforge.net/viewcvs.py/ *checkout* /linuxconsole/ruby/utils/inputattach.c
++*/
++
++#include <linux/serio.h>
++
++#include <sys/types.h>
++#include <sys/stat.h>
++#include <sys/ioctl.h>
++#include <sys/time.h>
++
++#include <stdio.h>
++#include <stdlib.h>
++#include <unistd.h>
++#include <fcntl.h>
++#include <termios.h>
++#include <string.h>
++#include <assert.h>
++#include <ctype.h>
++
++// softa patch!
++/*
++ * Serio types
++ */
++#ifndef SERIO_UNKNOWN
++  #define SERIO_UNKNOWN   0x00
++#endif
++#ifndef SERIO_MSC
++  #define SERIO_MSC       0x01
++#endif
++#ifndef SERIO_SUN
++  #define SERIO_SUN       0x02
++#endif
++#ifndef SERIO_MS
++  #define SERIO_MS        0x03
++#endif
++#ifndef SERIO_MP
++  #define SERIO_MP        0x04
++#endif
++#ifndef SERIO_MZ
++  #define SERIO_MZ        0x05
++#endif
++#ifndef SERIO_MZP
++  #define SERIO_MZP       0x06
++#endif
++#ifndef SERIO_MZPP
++  #define SERIO_MZPP      0x07
++#endif
++#ifndef SERIO_VSXXXAA
++  #define SERIO_VSXXXAA   0x08
++#endif
++#ifndef SERIO_SUNKBD
++  #define SERIO_SUNKBD    0x10
++#endif
++#ifndef SERIO_WARRIOR
++  #define SERIO_WARRIOR   0x18
++#endif
++#ifndef SERIO_SPACEORB
++  #define SERIO_SPACEORB  0x19
++#endif
++#ifndef SERIO_MAGELLAN
++  #define SERIO_MAGELLAN  0x1a
++#endif
++#ifndef SERIO_SPACEBALL
++  #define SERIO_SPACEBALL 0x1b
++#endif
++#ifndef SERIO_GUNZE
++  #define SERIO_GUNZE     0x1c
++#endif
++#ifndef SERIO_IFORCE
++  #define SERIO_IFORCE    0x1d
++#endif
++#ifndef SERIO_STINGER
++  #define SERIO_STINGER   0x1e
++#endif
++#ifndef SERIO_NEWTON
++  #define SERIO_NEWTON    0x1f
++#endif
++#ifndef SERIO_STOWAWAY
++  #define SERIO_STOWAWAY  0x20
++#endif
++#ifndef SERIO_H3600
++  #define SERIO_H3600     0x21
++#endif 
++#ifndef SERIO_PS2SER
++  #define SERIO_PS2SER    0x22
++#endif
++#ifndef SERIO_TWIDKBD
++  #define SERIO_TWIDKBD   0x23
++#endif
++#ifndef SERIO_TWIDJOY
++  #define SERIO_TWIDJOY   0x24
++#endif
++#ifndef SERIO_HIL
++  #define SERIO_HIL       0x25
++#endif
++#ifndef SERIO_SNES232
++  #define SERIO_SNES232   0x26
++#endif
++#ifndef SERIO_SEMTECH
++  #define SERIO_SEMTECH   0x27
++#endif
++#ifndef SERIO_LKKBD
++  #define SERIO_LKKBD     0x28
++#endif
++#ifndef SERIO_ELO
++  #define SERIO_ELO       0x29
++#endif
++#ifndef SERIO_MICROTOUCH
++  #define SERIO_MICROTOUCH        0x30
++#endif
++#ifndef SERIO_PENMOUNT
++  #define SERIO_PENMOUNT  0x31
++#endif
++#ifndef SERIO_TOUCHRIGHT
++  #define SERIO_TOUCHRIGHT        0x32
++#endif
++#ifndef SERIO_TOUCHWIN
++  #define SERIO_TOUCHWIN  0x33
++#endif
++// end softa patch!
++
++int readchar(int fd, unsigned char *c, int timeout)
++{
++      struct timeval tv;
++      fd_set set;
++      
++      tv.tv_sec = 0;
++      tv.tv_usec = timeout * 1000;
++
++      FD_ZERO(&set);
++      FD_SET(fd, &set);
++
++      if (!select(fd+1, &set, NULL, NULL, &tv)) return -1;
++      if (read(fd, c, 1) != 1) return -1;
++
++      return 0;
++}
++
++
++
++void setline(int fd, int flags, int speed)
++{
++      struct termios t;
++
++      tcgetattr(fd, &t);
++
++      t.c_cflag = flags | CREAD | HUPCL | CLOCAL;
++      t.c_iflag = IGNBRK | IGNPAR;
++      t.c_oflag = 0;
++      t.c_lflag = 0;
++      t.c_cc[VMIN ] = 1;
++      t.c_cc[VTIME] = 0;
++
++      cfsetispeed(&t, speed);
++      cfsetospeed(&t, speed);
++
++      tcsetattr(fd, TCSANOW, &t);
++}
++
++int logitech_command(int fd, char *c)
++{
++      int i;
++      unsigned char d;
++      for (i = 0; c[i]; i++) {
++              write(fd, c + i, 1);
++              if (readchar(fd, &d, 1000))
++                      return -1;
++              if (c[i] != d)
++                      return -1;
++      }
++      return 0;
++}
++
++int magellan_init(int fd, long *id, long *extra)
++{
++      write(fd, "m3\rpBB\rz\r", 9);
++      return 0;
++}
++
++int warrior_init(int fd, long *id, long *extra)
++{
++      if (logitech_command(fd, "*S")) return -1;
++      setline(fd, CS8, B4800);
++      return 0;
++}
++
++int spaceball_waitchar(int fd, unsigned char c, unsigned char *d, int timeout)
++{
++      unsigned char b = 0;
++
++      while (!readchar(fd, &b, timeout)) {
++              if (b == 0x0a) continue;
++              *d++ = b;
++              if (b == c) break;
++      }
++
++      *d = 0;
++
++      return -(b != c);
++}
++
++int spaceball_waitcmd(int fd, char c, char *d)
++{
++      int i;
++
++      for (i = 0; i < 8; i++) {
++              if (spaceball_waitchar(fd, 0x0d, d, 1000))
++                      return -1;
++              if (d[0] == c)
++                      return 0;
++      }
++
++      return -1;
++}
++
++int spaceball_cmd(int fd, char *c, char *d)
++{
++      int i;
++
++      for (i = 0; c[i]; i++)
++              write(fd, c + i, 1);
++      write(fd, "\r", 1);
++
++      i = spaceball_waitcmd(fd, toupper(c[0]), d);
++
++      return i;
++}
++
++#define SPACEBALL_1003                1
++#define SPACEBALL_2003B               3
++#define SPACEBALL_2003C               4
++#define SPACEBALL_3003C               7
++#define SPACEBALL_4000FLX     8
++#define SPACEBALL_4000FLX_L   9
++
++int spaceball_init(int fd, long *id, long *extra)
++{
++      char r[64];
++
++      if (spaceball_waitchar(fd, 0x11, r, 4000) ||
++          spaceball_waitchar(fd, 0x0d, r, 1000))
++              return -1;
++
++      if (spaceball_waitcmd(fd, '@', r))
++              return -1; 
++
++      if (strncmp("@1 Spaceball alive", r, 18))
++              return -1;
++
++      if (spaceball_waitcmd(fd, '@', r))
++              return -1; 
++
++      if (spaceball_cmd(fd, "hm", r))
++              return -1;
++
++      if (!strncmp("Hm2003B", r, 7))
++              *id = SPACEBALL_2003B;
++      if (!strncmp("Hm2003C", r, 7))
++              *id = SPACEBALL_2003C;
++      if (!strncmp("Hm3003C", r, 7))
++              *id = SPACEBALL_3003C;
++
++      if (!strncmp("HvFirmware", r, 10)) {
++
++              if (spaceball_cmd(fd, "\"", r))
++                      return -1;
++
++              if (strncmp("\"1 Spaceball 4000 FLX", r, 21))
++                      return -1;
++
++              if (spaceball_waitcmd(fd, '"', r))
++                      return -1; 
++
++              if (strstr(r, " L "))
++                      *id = SPACEBALL_4000FLX_L;
++              else
++                      *id = SPACEBALL_4000FLX;
++
++              if (spaceball_waitcmd(fd, '"', r))
++                      return -1; 
++
++              if (spaceball_cmd(fd, "YS", r))
++                      return -1;
++
++              if (spaceball_cmd(fd, "M", r))
++                      return -1;
++
++              return 0;
++      }
++
++      if (spaceball_cmd(fd, "P@A@A", r) ||
++          spaceball_cmd(fd, "FT@", r)   ||
++          spaceball_cmd(fd, "MSS", r))
++              return -1;
++
++      return 0;
++}
++
++int stinger_init(int fd, long *id, long *extra)
++{
++      int i;
++      unsigned char c;
++      unsigned char *response = "\r\n0600520058C272";
++
++      if (write(fd, " E5E5", 5) != 5)         /* Enable command */
++              return -1; 
++
++      for (i = 0; i < 16; i++)                /* Check for Stinger */
++              if (readchar(fd, &c, 200) || (c != response[i])) 
++                      return -1;
++
++      return 0;
++}
++
++int mzp_init(int fd, long *id, long *extra)
++{
++      if (logitech_command(fd, "*X*q")) return -1;
++      setline(fd, CS8, B9600);
++      return 0;
++}
++
++int newton_init(int fd, long *id, long *extra)
++{
++  int i;
++  unsigned char c;
++  unsigned char response[35] =
++  { 0x16, 0x10, 0x02, 0x64, 0x5f, 0x69, 0x64, 0x00,
++    0x00, 0x00, 0x0c, 0x6b, 0x79, 0x62, 0x64, 0x61,
++    0x70, 0x70, 0x6c, 0x00, 0x00, 0x00, 0x01, 0x6e,
++    0x6f, 0x66, 0x6d, 0x00, 0x00, 0x00, 0x00, 0x10,
++    0x03, 0xdd, 0xe7 };
++
++  for (i = 0; i < 35; i++)
++    if (readchar(fd, &c, 400) || (c != response[i]))
++      return -1;
++
++  return 0;
++}
++
++int twiddler_init(int fd, long *id, long *extra)
++{
++      unsigned char c[10];
++      int count, line;
++
++      /* Turn DTR off, otherwise the Twiddler won't send any data. */
++      if (ioctl(fd, TIOCMGET, &line)) return -1;
++      line &= ~TIOCM_DTR;
++      if (ioctl(fd, TIOCMSET, &line)) return -1;
++
++      /* Check whether the device on the serial line is the Twiddler.
++       *
++       * The Twiddler sends data packets of 5 bytes which have the following
++       * properties: the MSB is 0 on the first and 1 on all other bytes, and
++       * the high order nibble of the last byte is always 0x8.
++       *
++       * We read and check two of those 5 byte packets to be sure that we
++       * are indeed talking to a Twiddler. */
++
++      /* Read at most 5 bytes until we find one with the MSB set to 0 */
++      for (count = 0; count < 5; count++) {
++              if (readchar(fd, c+0, 500)) return -1;
++              if ((c[0] & 0x80) == 0) break;
++      }
++
++      if (count == 5) {
++              /* Could not find header byte in data stream */
++              return -1;
++      }
++
++      /* Read remaining 4 bytes plus the full next data packet */
++      for (count = 1; count < 10; count++) {
++              if (readchar(fd, c+count, 500)) return -1;
++      }
++
++      /* Check whether the bytes of both data packets obey the rules */
++      for (count = 1; count < 10; count++) {
++              if ((count % 5 == 0 && (c[count] & 0x80) != 0)
++                  || (count % 5 == 4 && (c[count] & 0xF0) != 0x80)
++                  || (count % 5 != 0 && (c[count] & 0x80) != 0x80)) {
++                      /* Invalid byte in data packet */
++                      return -1;
++              }
++      }
++
++      return 0;
++}
++
++int penmount_init(int fd, long *id, long *extra)
++{
++      unsigned char init_cmd[5] = { 0xF2, 0x00, 0x00, 0x00, 0x00 };
++      unsigned char start_cmd[5] = { 0xF1, 0x00, 0x00, 0x00, 0x00 };
++      unsigned char c[10];
++      int count;
++      
++      /* try to initialize device */
++      if (write( fd, init_cmd, 5 ) != 5)
++              return -1;
++              
++      /* read the responce */
++      for (count = 0; count < 5; count ++) {
++              if (readchar(fd, c+0, 500)) return -1;
++              if (c[0] == 0xf2) break;
++      }
++      
++      if (readchar(fd, c+1, 500)) return -1;
++      if (c[1] != 0xd9) return -1;
++      
++      if (readchar(fd, c+2, 500)) return -1;
++      if (c[2] != 0x0a) return -1;
++      
++      /* the device is present! start it! */
++      if (write( fd, start_cmd, 5 ) != 5)
++              return -1;
++              
++      return 0;
++}
++
++int dump_init(int fd, long *id, long *extra)
++{
++      unsigned char c, o = 0;
++
++      c = 0x80;
++
++      if (write(fd, &c, 1) != 1)         /* Enable command */
++                return -1;
++
++      while (1)
++              if (!readchar(fd, &c, 1)) {
++                      printf("%02x (%c) ", c, ((c > 32) && (c < 127)) ? c : 'x');
++                      o = 1;
++              } else {
++                      if (o) {
++                              printf("\n");
++                              o = 0;
++                      }
++              }
++}
++
++struct input_types {
++      char name[16];
++      char name2[16];
++      int speed;
++      int flags;
++      unsigned long type;
++      unsigned long id;
++      unsigned long extra;
++      int flush;
++      int (*init)(int fd, long *id, long *extra);
++};
++
++struct input_types input_types[] = {
++
++{ "--sunkbd",         "-skb",         B1200, CS8,                     SERIO_SUNKBD,   0,      0,      1,      NULL },
++{ "--lkkbd",          "-lk",          B4800, CS8|CSTOPB,              SERIO_LKKBD,    0,      0,      1,      NULL },
++{ "--vsxxx-aa",               "-vs",          B4800, CS8|CSTOPB|PARENB|PARODD,SERIO_VSXXXAA,  0,      0,      1,      NULL },
++{ "--spaceorb",               "-orb",         B9600, CS8,                     SERIO_SPACEORB, 0,      0,      1,      NULL },
++{ "--spaceball",      "-sbl",         B9600, CS8,                     SERIO_SPACEBALL,0,      0,      0,      spaceball_init },
++{ "--magellan",               "-mag",         B9600, CS8 | CSTOPB | CRTSCTS,  SERIO_MAGELLAN, 0,      0,      1,      magellan_init },
++{ "--warrior",                "-war",         B1200, CS7 | CSTOPB,            SERIO_WARRIOR,  0,      0,      1,      warrior_init },
++{ "--stinger",                "-sting",       B1200, CS8,                     SERIO_STINGER,  0,      0,      1,      stinger_init },
++{ "--mousesystems",   "-msc",         B1200, CS8,                     SERIO_MSC,      0,      0x01,   1,      NULL },
++{ "--sunmouse",               "-sun",         B1200, CS8,                     SERIO_SUN,      0,      0x01,   1,      NULL },
++{ "--microsoft",      "-bare",        B1200, CS7,                     SERIO_MS,       0,      0,      1,      NULL },
++{ "--mshack",         "-ms",          B1200, CS7,                     SERIO_MS,       0,      0x01,   1,      NULL },
++{ "--mouseman",               "-mman",        B1200, CS7,                     SERIO_MP,       0,      0x01,   1,      NULL },
++{ "--intellimouse",   "-ms3",         B1200, CS7,                     SERIO_MZ,       0,      0x11,   1,      NULL },
++{ "--mmwheel",                "-mmw",         B1200, CS7 | CSTOPB,            SERIO_MZP,      0,      0x13,   1,      mzp_init },
++{ "--iforce",         "-ifor",        B38400, CS8,                    SERIO_IFORCE,   0,      0,      0,      NULL },
++{ "--newtonkbd",        "-newt",        B9600, CS8,                     SERIO_NEWTON, 0,      0,      0,      newton_init },
++{ "--h3600ts",          "-ipaq",      B115200, CS8,                   SERIO_H3600,    0,      0,      0,      NULL },
++{ "--stowawaykbd",      "-ipaqkbd",     B115200, CS8,                   SERIO_STOWAWAY, 0,    0,      0,      NULL },
++{ "--ps2serkbd",      "-ps2ser",      B1200, CS8,                     SERIO_PS2SER,   0,      0,      1,      NULL },
++{ "--twiddler",               "-twid",        B2400, CS8,                     SERIO_TWIDKBD,  0,      0,      0,      twiddler_init },
++{ "--twiddler-joy",   "-twidjoy",     B2400, CS8,                     SERIO_TWIDJOY,  0,      0,      0,      twiddler_init },
++{ "--elotouch",               "-elo",         B9600, CS8 | CRTSCTS,           SERIO_ELO,      0,      0,      0,      NULL },
++{ "--elo4002",                "-elo6b",       B9600, CS8 | CRTSCTS,           SERIO_ELO,      1,      0,      0,      NULL },
++{ "--elo271-140",     "-elo4b",       B9600, CS8 | CRTSCTS,           SERIO_ELO,      2,      0,      0,      NULL },
++{ "--elo261-280",     "-elo3b",       B9600, CS8 | CRTSCTS,           SERIO_ELO,      3,      0,      0,      NULL },
++{ "--dump",           "-dump",        B2400, CS8,                     0,              0,      0,      0,      dump_init },
++{ "--dmc9000",          "-dmc",         B19200, CS8,                  SERIO_PENMOUNT, 0,      0,      0,      penmount_init },
++{ "", "", 0, 0 }
++
++};
++
++int main(int argc, char **argv)
++{
++      unsigned long devt;
++      int ldisc;
++        int type;
++      long id, extra;
++        int fd;
++      char c;
++
++        if (argc < 2 || argc > 3 || !strcmp("--help", argv[1])) {
++                puts("");
++                puts("Usage: inputttach <mode> <device>");
++                puts("");
++                puts("Modes:");
++                puts("  --sunkbd        -skb   Sun Type 4 and Type 5 keyboards");
++              puts("  --lkkbd         -lk    DEC LK201 / LK401 keyboards");
++              puts("  --vsxxx-aa      -vs    DEC VSXXX-AA / VSXXX-GA mouse and VSXXX-AB tablet");
++                puts("  --spaceorb      -orb   SpaceOrb 360 / SpaceBall Avenger");
++              puts("  --spaceball     -sbl   SpaceBall 2003 / 3003 / 4000 FLX");
++                puts("  --magellan      -mag   Magellan / SpaceMouse");
++                puts("  --warrior       -war   WingMan Warrior");
++              puts("  --stinger       -stng  Gravis Stinger");
++              puts("  --mousesystems  -msc   3-button Mouse Systems mice");
++              puts("  --sunmouse      -sun   3-button Sun mice");
++              puts("  --microsoft     -bare  2-button Microsoft mice");
++              puts("  --mshack        -ms    3-button mice in Microsoft mode");
++              puts("  --mouseman      -mman  3-button Logitech and Genius mice");
++              puts("  --intellimouse  -ms3   Microsoft IntelliMouse");
++              puts("  --mmwheel       -mmw   Logitech mice with 4-5 buttons or wheel");
++              puts("  --iforce        -ifor  I-Force joysticks and wheels");
++                puts("  --h3600ts       -ipaq  Ipaq h3600 touchscreen");
++              puts("  --stowawaykbd   -ipaqkbd  Stowaway keyboard");
++              puts("  --ps2serkbd     -ps2ser PS/2 via serial keyboard");
++              puts("  --twiddler      -twid   Handykey Twiddler chording keyboard");
++              puts("  --twiddler-joy  -twidjoy  Handykey Twiddler used as a joystick");
++              puts("  --dmc9000       -dmc   DMC9000/Penpount touchscreen");
++              puts("");
++                return 1;
++        }
++
++        for (type = 0; input_types[type].speed; type++) {
++                if (!strncasecmp(argv[1], input_types[type].name, 16) ||
++                      !strncasecmp(argv[1], input_types[type].name2, 16))
++                        break;
++        }
++
++      if (!input_types[type].speed) {
++              fprintf(stderr, "inputattach: invalid mode\n");
++              return 1;
++      }
++
++      if ((fd = open(argv[2], O_RDWR | O_NOCTTY | O_NONBLOCK)) < 0) {
++              perror("inputattach");
++              return 1;
++      }
++
++      setline(fd, input_types[type].flags, input_types[type].speed);
++
++      if (input_types[type].flush)
++              while (!readchar(fd, &c, 100));
++
++      id = input_types[type].id;
++      extra = input_types[type].extra;
++
++      if (input_types[type].init && input_types[type].init(fd, &id, &extra)) {
++              fprintf(stderr, "inputattach: device initialization failed\n");
++              return 1;
++      }
++
++      ldisc = N_MOUSE;
++      if(ioctl(fd, TIOCSETD, &ldisc)) {
++              fprintf(stderr, "inputattach: can't set line discipline\n"); 
++              return 1;
++      }
++
++      devt = input_types[type].type | (id << 8) | (extra << 16);
++
++      if(ioctl(fd, SPIOCSTYPE, &devt)) {
++              fprintf(stderr, "inputattach: can't set device type\n");
++              return 1;
++      }
++
++      read(fd, NULL, 0);
++
++      ldisc = 0;
++      ioctl(fd, TIOCSETD, &ldisc);
++      close(fd);
++
++      return 0;
++}
+diff -Naur tslib-org/tests/ts_finddev.c tslib-1.0/tests/ts_finddev.c
+--- tslib-org/tests/ts_finddev.c       1970-01-01 02:00:00.000000000 +0200
++++ tslib-1.0/tests/ts_finddev.c       2007-05-07 17:36:37.000000000 +0300
+@@ -0,0 +1,75 @@
++/*
++ *  tslib/src/ts_print.c
++ *
++ *  Derived from tslib/src/ts_test.c by Douglas Lowder
++ *  Just prints touchscreen events -- does not paint them on framebuffer
++ *
++ * This file is placed under the GPL.  Please see the file
++ * COPYING for more details.
++ *
++ * Basic test program for touchscreen library.
++ */
++#include <stdio.h>
++#include <stdlib.h>
++#include <signal.h>
++#include <sys/fcntl.h>
++#include <sys/ioctl.h>
++#include <sys/mman.h>
++#include <sys/time.h>
++#include <sys/types.h>
++#include <unistd.h>
++
++#include "tslib.h"
++
++void usage( int argc, char** argv ) {
++      printf( "Usage: %s device_name wait_for_sec\n", argv[0] );
++      printf( "\tdevice_name  - tdevice to probe, example /dev/input/event0\n" );
++      printf( "\twait_for_sec - wait seconds for touch event, if 0 - dont wait!\n" );
++      printf( "\tReturn codes:\n" );
++      printf( "\t  0          - timeout expired without receiving event.\n" );
++      printf( "\t               But this maybe is TouchScreen.\n" );
++      printf( "\t -1          - this is NOT TouchScreen device!\n" );
++      printf( "\t  1          - this is TouchScreen for shure!\n" );  
++      exit(-1);
++}
++
++void alarm_handler( int sig ) {
++      // time is expired!
++      exit(0);
++}
++
++int main( int argc, char** argv )
++{
++      struct tsdev *ts;
++      struct ts_sample samp;
++      char *tsdevice=NULL;
++      int waitsec;
++      int ret;
++      
++      if (argc != 3)
++              usage( argc, argv );
++              
++      tsdevice = argv[1];
++      waitsec = atoi( argv[2] );
++      if (waitsec < 0)
++              usage( argc, argv );
++              
++      ts = ts_open( tsdevice, 0 );
++      if (!ts)
++              return -1;
++      if (ts_config(ts))
++              return -1;
++              
++      if (!waitsec) {
++              return 0;
++      }
++              
++      printf( "Probe device %s, Please Touch Screen Anywhere in %i seconds! ... \n", tsdevice, waitsec );
++      signal( SIGALRM, alarm_handler );
++      alarm( waitsec );
++      ret = ts_read_raw(ts, &samp, 1 );
++      if (ret)
++              return 1;
++              
++      return -1;
++}
diff --git a/package/tslib/tslib-enable_raw_module.patch b/package/tslib/tslib-enable_raw_module.patch
deleted file mode 100644 (file)
index cb89338..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-Enable raw module by default
-
-Signed-off-by: Daniel Nyström <daniel.nystrom@timeterminal.se>
-
-diff -Naur tslib-e000d35a.orig/etc/ts.conf tslib-e000d35a/etc/ts.conf
---- tslib-e000d35a.orig/etc/ts.conf    2010-12-21 18:54:45.000000000 +0100
-+++ tslib-e000d35a/etc/ts.conf 2010-12-21 18:55:03.000000000 +0100
-@@ -1,5 +1,5 @@
- # Uncomment if you wish to use the linux input layer event interface
--# module_raw input
-+module_raw input
- # Uncomment if you're using a Sharp Zaurus SL-5500/SL-5000d
- # module_raw collie
diff --git a/package/tslib/tslib_add_finddef_and_inputattach_utils.patch b/package/tslib/tslib_add_finddef_and_inputattach_utils.patch
deleted file mode 100644 (file)
index dcc6ec7..0000000
+++ /dev/null
@@ -1,718 +0,0 @@
-diff -Naur tslib-org/tests/Makefile.am tslib-1.0/tests/Makefile.am
---- tslib-org/tests/Makefile.am        2006-08-25 00:02:55.000000000 +0300
-+++ tslib-1.0/tests/Makefile.am        2007-05-07 17:39:54.000000000 +0300
-@@ -12,7 +12,7 @@
- AM_CFLAGS               = $(DEBUGFLAGS)
- INCLUDES              = -I$(top_srcdir)/src
--bin_PROGRAMS          = ts_test ts_calibrate ts_print ts_print_raw ts_harvest
-+bin_PROGRAMS          = ts_test ts_calibrate ts_print ts_print_raw ts_harvest ts_finddev inputattach
- ts_test_SOURCES               = ts_test.c fbutils.c fbutils.h font_8x8.c font_8x16.c font.h
- ts_test_LDADD         = $(top_builddir)/src/libts.la
-@@ -27,4 +27,10 @@
- ts_calibrate_LDADD    = $(top_builddir)/src/libts.la
- ts_harvest_SOURCES    = ts_harvest.c fbutils.c fbutils.h testutils.c testutils.h font_8x8.c font_8x16.c font.h
--ts_harvest_LDADD              = $(top_builddir)/src/libts.la
-+ts_harvest_LDADD      = $(top_builddir)/src/libts.la
-+
-+ts_finddev_SOURCES      = ts_finddev.c
-+ts_finddev_LDADD        = $(top_builddir)/src/libts.la
-+
-+inputattach_SOURCES     = inputattach.c
-+inputattach_LDADD       =
-diff -Naur tslib-org/tests/inputattach.c tslib-1.0/tests/inputattach.c
---- tslib-org/tests/inputattach.c      1970-01-01 02:00:00.000000000 +0200
-+++ tslib-1.0/tests/inputattach.c      2007-05-07 17:36:37.000000000 +0300
-@@ -0,0 +1,611 @@
-+/*
-+ * $Id: inputattach.c,v 1.24 2006/02/08 12:19:31 vojtech Exp $
-+ *
-+ *  Copyright (c) 1999-2000 Vojtech Pavlik
-+ *
-+ *  Sponsored by SuSE
-+ *
-+ *  Twiddler support Copyright (c) 2001 Arndt Schoenewald
-+ *  Sponsored by Quelltext AG (http://www.quelltext-ag.de), Dortmund, Germany
-+ */
-+
-+/*
-+ * Input line discipline attach program
-+ */
-+
-+/*
-+ * 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
-+ * 
-+ * Should you need to contact me, the author, you can do so either by
-+ * e-mail - mail your message to <vojtech@ucw.cz>, or by paper mail:
-+ * Vojtech Pavlik, Simunkova 1594, Prague 8, 182 00 Czech Republic
-+ */
-+ 
-+/* softa note: 
-+cvs version is here:
-+http://cvs.sourceforge.net/viewcvs.py/ *checkout* /linuxconsole/ruby/utils/inputattach.c
-+*/
-+
-+#include <linux/serio.h>
-+
-+#include <sys/types.h>
-+#include <sys/stat.h>
-+#include <sys/ioctl.h>
-+#include <sys/time.h>
-+
-+#include <stdio.h>
-+#include <stdlib.h>
-+#include <unistd.h>
-+#include <fcntl.h>
-+#include <termios.h>
-+#include <string.h>
-+#include <assert.h>
-+#include <ctype.h>
-+
-+// softa patch!
-+/*
-+ * Serio types
-+ */
-+#ifndef SERIO_UNKNOWN
-+  #define SERIO_UNKNOWN   0x00
-+#endif
-+#ifndef SERIO_MSC
-+  #define SERIO_MSC       0x01
-+#endif
-+#ifndef SERIO_SUN
-+  #define SERIO_SUN       0x02
-+#endif
-+#ifndef SERIO_MS
-+  #define SERIO_MS        0x03
-+#endif
-+#ifndef SERIO_MP
-+  #define SERIO_MP        0x04
-+#endif
-+#ifndef SERIO_MZ
-+  #define SERIO_MZ        0x05
-+#endif
-+#ifndef SERIO_MZP
-+  #define SERIO_MZP       0x06
-+#endif
-+#ifndef SERIO_MZPP
-+  #define SERIO_MZPP      0x07
-+#endif
-+#ifndef SERIO_VSXXXAA
-+  #define SERIO_VSXXXAA   0x08
-+#endif
-+#ifndef SERIO_SUNKBD
-+  #define SERIO_SUNKBD    0x10
-+#endif
-+#ifndef SERIO_WARRIOR
-+  #define SERIO_WARRIOR   0x18
-+#endif
-+#ifndef SERIO_SPACEORB
-+  #define SERIO_SPACEORB  0x19
-+#endif
-+#ifndef SERIO_MAGELLAN
-+  #define SERIO_MAGELLAN  0x1a
-+#endif
-+#ifndef SERIO_SPACEBALL
-+  #define SERIO_SPACEBALL 0x1b
-+#endif
-+#ifndef SERIO_GUNZE
-+  #define SERIO_GUNZE     0x1c
-+#endif
-+#ifndef SERIO_IFORCE
-+  #define SERIO_IFORCE    0x1d
-+#endif
-+#ifndef SERIO_STINGER
-+  #define SERIO_STINGER   0x1e
-+#endif
-+#ifndef SERIO_NEWTON
-+  #define SERIO_NEWTON    0x1f
-+#endif
-+#ifndef SERIO_STOWAWAY
-+  #define SERIO_STOWAWAY  0x20
-+#endif
-+#ifndef SERIO_H3600
-+  #define SERIO_H3600     0x21
-+#endif 
-+#ifndef SERIO_PS2SER
-+  #define SERIO_PS2SER    0x22
-+#endif
-+#ifndef SERIO_TWIDKBD
-+  #define SERIO_TWIDKBD   0x23
-+#endif
-+#ifndef SERIO_TWIDJOY
-+  #define SERIO_TWIDJOY   0x24
-+#endif
-+#ifndef SERIO_HIL
-+  #define SERIO_HIL       0x25
-+#endif
-+#ifndef SERIO_SNES232
-+  #define SERIO_SNES232   0x26
-+#endif
-+#ifndef SERIO_SEMTECH
-+  #define SERIO_SEMTECH   0x27
-+#endif
-+#ifndef SERIO_LKKBD
-+  #define SERIO_LKKBD     0x28
-+#endif
-+#ifndef SERIO_ELO
-+  #define SERIO_ELO       0x29
-+#endif
-+#ifndef SERIO_MICROTOUCH
-+  #define SERIO_MICROTOUCH        0x30
-+#endif
-+#ifndef SERIO_PENMOUNT
-+  #define SERIO_PENMOUNT  0x31
-+#endif
-+#ifndef SERIO_TOUCHRIGHT
-+  #define SERIO_TOUCHRIGHT        0x32
-+#endif
-+#ifndef SERIO_TOUCHWIN
-+  #define SERIO_TOUCHWIN  0x33
-+#endif
-+// end softa patch!
-+
-+int readchar(int fd, unsigned char *c, int timeout)
-+{
-+      struct timeval tv;
-+      fd_set set;
-+      
-+      tv.tv_sec = 0;
-+      tv.tv_usec = timeout * 1000;
-+
-+      FD_ZERO(&set);
-+      FD_SET(fd, &set);
-+
-+      if (!select(fd+1, &set, NULL, NULL, &tv)) return -1;
-+      if (read(fd, c, 1) != 1) return -1;
-+
-+      return 0;
-+}
-+
-+
-+
-+void setline(int fd, int flags, int speed)
-+{
-+      struct termios t;
-+
-+      tcgetattr(fd, &t);
-+
-+      t.c_cflag = flags | CREAD | HUPCL | CLOCAL;
-+      t.c_iflag = IGNBRK | IGNPAR;
-+      t.c_oflag = 0;
-+      t.c_lflag = 0;
-+      t.c_cc[VMIN ] = 1;
-+      t.c_cc[VTIME] = 0;
-+
-+      cfsetispeed(&t, speed);
-+      cfsetospeed(&t, speed);
-+
-+      tcsetattr(fd, TCSANOW, &t);
-+}
-+
-+int logitech_command(int fd, char *c)
-+{
-+      int i;
-+      unsigned char d;
-+      for (i = 0; c[i]; i++) {
-+              write(fd, c + i, 1);
-+              if (readchar(fd, &d, 1000))
-+                      return -1;
-+              if (c[i] != d)
-+                      return -1;
-+      }
-+      return 0;
-+}
-+
-+int magellan_init(int fd, long *id, long *extra)
-+{
-+      write(fd, "m3\rpBB\rz\r", 9);
-+      return 0;
-+}
-+
-+int warrior_init(int fd, long *id, long *extra)
-+{
-+      if (logitech_command(fd, "*S")) return -1;
-+      setline(fd, CS8, B4800);
-+      return 0;
-+}
-+
-+int spaceball_waitchar(int fd, unsigned char c, unsigned char *d, int timeout)
-+{
-+      unsigned char b = 0;
-+
-+      while (!readchar(fd, &b, timeout)) {
-+              if (b == 0x0a) continue;
-+              *d++ = b;
-+              if (b == c) break;
-+      }
-+
-+      *d = 0;
-+
-+      return -(b != c);
-+}
-+
-+int spaceball_waitcmd(int fd, char c, char *d)
-+{
-+      int i;
-+
-+      for (i = 0; i < 8; i++) {
-+              if (spaceball_waitchar(fd, 0x0d, d, 1000))
-+                      return -1;
-+              if (d[0] == c)
-+                      return 0;
-+      }
-+
-+      return -1;
-+}
-+
-+int spaceball_cmd(int fd, char *c, char *d)
-+{
-+      int i;
-+
-+      for (i = 0; c[i]; i++)
-+              write(fd, c + i, 1);
-+      write(fd, "\r", 1);
-+
-+      i = spaceball_waitcmd(fd, toupper(c[0]), d);
-+
-+      return i;
-+}
-+
-+#define SPACEBALL_1003                1
-+#define SPACEBALL_2003B               3
-+#define SPACEBALL_2003C               4
-+#define SPACEBALL_3003C               7
-+#define SPACEBALL_4000FLX     8
-+#define SPACEBALL_4000FLX_L   9
-+
-+int spaceball_init(int fd, long *id, long *extra)
-+{
-+      char r[64];
-+
-+      if (spaceball_waitchar(fd, 0x11, r, 4000) ||
-+          spaceball_waitchar(fd, 0x0d, r, 1000))
-+              return -1;
-+
-+      if (spaceball_waitcmd(fd, '@', r))
-+              return -1; 
-+
-+      if (strncmp("@1 Spaceball alive", r, 18))
-+              return -1;
-+
-+      if (spaceball_waitcmd(fd, '@', r))
-+              return -1; 
-+
-+      if (spaceball_cmd(fd, "hm", r))
-+              return -1;
-+
-+      if (!strncmp("Hm2003B", r, 7))
-+              *id = SPACEBALL_2003B;
-+      if (!strncmp("Hm2003C", r, 7))
-+              *id = SPACEBALL_2003C;
-+      if (!strncmp("Hm3003C", r, 7))
-+              *id = SPACEBALL_3003C;
-+
-+      if (!strncmp("HvFirmware", r, 10)) {
-+
-+              if (spaceball_cmd(fd, "\"", r))
-+                      return -1;
-+
-+              if (strncmp("\"1 Spaceball 4000 FLX", r, 21))
-+                      return -1;
-+
-+              if (spaceball_waitcmd(fd, '"', r))
-+                      return -1; 
-+
-+              if (strstr(r, " L "))
-+                      *id = SPACEBALL_4000FLX_L;
-+              else
-+                      *id = SPACEBALL_4000FLX;
-+
-+              if (spaceball_waitcmd(fd, '"', r))
-+                      return -1; 
-+
-+              if (spaceball_cmd(fd, "YS", r))
-+                      return -1;
-+
-+              if (spaceball_cmd(fd, "M", r))
-+                      return -1;
-+
-+              return 0;
-+      }
-+
-+      if (spaceball_cmd(fd, "P@A@A", r) ||
-+          spaceball_cmd(fd, "FT@", r)   ||
-+          spaceball_cmd(fd, "MSS", r))
-+              return -1;
-+
-+      return 0;
-+}
-+
-+int stinger_init(int fd, long *id, long *extra)
-+{
-+      int i;
-+      unsigned char c;
-+      unsigned char *response = "\r\n0600520058C272";
-+
-+      if (write(fd, " E5E5", 5) != 5)         /* Enable command */
-+              return -1; 
-+
-+      for (i = 0; i < 16; i++)                /* Check for Stinger */
-+              if (readchar(fd, &c, 200) || (c != response[i])) 
-+                      return -1;
-+
-+      return 0;
-+}
-+
-+int mzp_init(int fd, long *id, long *extra)
-+{
-+      if (logitech_command(fd, "*X*q")) return -1;
-+      setline(fd, CS8, B9600);
-+      return 0;
-+}
-+
-+int newton_init(int fd, long *id, long *extra)
-+{
-+  int i;
-+  unsigned char c;
-+  unsigned char response[35] =
-+  { 0x16, 0x10, 0x02, 0x64, 0x5f, 0x69, 0x64, 0x00,
-+    0x00, 0x00, 0x0c, 0x6b, 0x79, 0x62, 0x64, 0x61,
-+    0x70, 0x70, 0x6c, 0x00, 0x00, 0x00, 0x01, 0x6e,
-+    0x6f, 0x66, 0x6d, 0x00, 0x00, 0x00, 0x00, 0x10,
-+    0x03, 0xdd, 0xe7 };
-+
-+  for (i = 0; i < 35; i++)
-+    if (readchar(fd, &c, 400) || (c != response[i]))
-+      return -1;
-+
-+  return 0;
-+}
-+
-+int twiddler_init(int fd, long *id, long *extra)
-+{
-+      unsigned char c[10];
-+      int count, line;
-+
-+      /* Turn DTR off, otherwise the Twiddler won't send any data. */
-+      if (ioctl(fd, TIOCMGET, &line)) return -1;
-+      line &= ~TIOCM_DTR;
-+      if (ioctl(fd, TIOCMSET, &line)) return -1;
-+
-+      /* Check whether the device on the serial line is the Twiddler.
-+       *
-+       * The Twiddler sends data packets of 5 bytes which have the following
-+       * properties: the MSB is 0 on the first and 1 on all other bytes, and
-+       * the high order nibble of the last byte is always 0x8.
-+       *
-+       * We read and check two of those 5 byte packets to be sure that we
-+       * are indeed talking to a Twiddler. */
-+
-+      /* Read at most 5 bytes until we find one with the MSB set to 0 */
-+      for (count = 0; count < 5; count++) {
-+              if (readchar(fd, c+0, 500)) return -1;
-+              if ((c[0] & 0x80) == 0) break;
-+      }
-+
-+      if (count == 5) {
-+              /* Could not find header byte in data stream */
-+              return -1;
-+      }
-+
-+      /* Read remaining 4 bytes plus the full next data packet */
-+      for (count = 1; count < 10; count++) {
-+              if (readchar(fd, c+count, 500)) return -1;
-+      }
-+
-+      /* Check whether the bytes of both data packets obey the rules */
-+      for (count = 1; count < 10; count++) {
-+              if ((count % 5 == 0 && (c[count] & 0x80) != 0)
-+                  || (count % 5 == 4 && (c[count] & 0xF0) != 0x80)
-+                  || (count % 5 != 0 && (c[count] & 0x80) != 0x80)) {
-+                      /* Invalid byte in data packet */
-+                      return -1;
-+              }
-+      }
-+
-+      return 0;
-+}
-+
-+int penmount_init(int fd, long *id, long *extra)
-+{
-+      unsigned char init_cmd[5] = { 0xF2, 0x00, 0x00, 0x00, 0x00 };
-+      unsigned char start_cmd[5] = { 0xF1, 0x00, 0x00, 0x00, 0x00 };
-+      unsigned char c[10];
-+      int count;
-+      
-+      /* try to initialize device */
-+      if (write( fd, init_cmd, 5 ) != 5)
-+              return -1;
-+              
-+      /* read the responce */
-+      for (count = 0; count < 5; count ++) {
-+              if (readchar(fd, c+0, 500)) return -1;
-+              if (c[0] == 0xf2) break;
-+      }
-+      
-+      if (readchar(fd, c+1, 500)) return -1;
-+      if (c[1] != 0xd9) return -1;
-+      
-+      if (readchar(fd, c+2, 500)) return -1;
-+      if (c[2] != 0x0a) return -1;
-+      
-+      /* the device is present! start it! */
-+      if (write( fd, start_cmd, 5 ) != 5)
-+              return -1;
-+              
-+      return 0;
-+}
-+
-+int dump_init(int fd, long *id, long *extra)
-+{
-+      unsigned char c, o = 0;
-+
-+      c = 0x80;
-+
-+      if (write(fd, &c, 1) != 1)         /* Enable command */
-+                return -1;
-+
-+      while (1)
-+              if (!readchar(fd, &c, 1)) {
-+                      printf("%02x (%c) ", c, ((c > 32) && (c < 127)) ? c : 'x');
-+                      o = 1;
-+              } else {
-+                      if (o) {
-+                              printf("\n");
-+                              o = 0;
-+                      }
-+              }
-+}
-+
-+struct input_types {
-+      char name[16];
-+      char name2[16];
-+      int speed;
-+      int flags;
-+      unsigned long type;
-+      unsigned long id;
-+      unsigned long extra;
-+      int flush;
-+      int (*init)(int fd, long *id, long *extra);
-+};
-+
-+struct input_types input_types[] = {
-+
-+{ "--sunkbd",         "-skb",         B1200, CS8,                     SERIO_SUNKBD,   0,      0,      1,      NULL },
-+{ "--lkkbd",          "-lk",          B4800, CS8|CSTOPB,              SERIO_LKKBD,    0,      0,      1,      NULL },
-+{ "--vsxxx-aa",               "-vs",          B4800, CS8|CSTOPB|PARENB|PARODD,SERIO_VSXXXAA,  0,      0,      1,      NULL },
-+{ "--spaceorb",               "-orb",         B9600, CS8,                     SERIO_SPACEORB, 0,      0,      1,      NULL },
-+{ "--spaceball",      "-sbl",         B9600, CS8,                     SERIO_SPACEBALL,0,      0,      0,      spaceball_init },
-+{ "--magellan",               "-mag",         B9600, CS8 | CSTOPB | CRTSCTS,  SERIO_MAGELLAN, 0,      0,      1,      magellan_init },
-+{ "--warrior",                "-war",         B1200, CS7 | CSTOPB,            SERIO_WARRIOR,  0,      0,      1,      warrior_init },
-+{ "--stinger",                "-sting",       B1200, CS8,                     SERIO_STINGER,  0,      0,      1,      stinger_init },
-+{ "--mousesystems",   "-msc",         B1200, CS8,                     SERIO_MSC,      0,      0x01,   1,      NULL },
-+{ "--sunmouse",               "-sun",         B1200, CS8,                     SERIO_SUN,      0,      0x01,   1,      NULL },
-+{ "--microsoft",      "-bare",        B1200, CS7,                     SERIO_MS,       0,      0,      1,      NULL },
-+{ "--mshack",         "-ms",          B1200, CS7,                     SERIO_MS,       0,      0x01,   1,      NULL },
-+{ "--mouseman",               "-mman",        B1200, CS7,                     SERIO_MP,       0,      0x01,   1,      NULL },
-+{ "--intellimouse",   "-ms3",         B1200, CS7,                     SERIO_MZ,       0,      0x11,   1,      NULL },
-+{ "--mmwheel",                "-mmw",         B1200, CS7 | CSTOPB,            SERIO_MZP,      0,      0x13,   1,      mzp_init },
-+{ "--iforce",         "-ifor",        B38400, CS8,                    SERIO_IFORCE,   0,      0,      0,      NULL },
-+{ "--newtonkbd",        "-newt",        B9600, CS8,                     SERIO_NEWTON, 0,      0,      0,      newton_init },
-+{ "--h3600ts",          "-ipaq",      B115200, CS8,                   SERIO_H3600,    0,      0,      0,      NULL },
-+{ "--stowawaykbd",      "-ipaqkbd",     B115200, CS8,                   SERIO_STOWAWAY, 0,    0,      0,      NULL },
-+{ "--ps2serkbd",      "-ps2ser",      B1200, CS8,                     SERIO_PS2SER,   0,      0,      1,      NULL },
-+{ "--twiddler",               "-twid",        B2400, CS8,                     SERIO_TWIDKBD,  0,      0,      0,      twiddler_init },
-+{ "--twiddler-joy",   "-twidjoy",     B2400, CS8,                     SERIO_TWIDJOY,  0,      0,      0,      twiddler_init },
-+{ "--elotouch",               "-elo",         B9600, CS8 | CRTSCTS,           SERIO_ELO,      0,      0,      0,      NULL },
-+{ "--elo4002",                "-elo6b",       B9600, CS8 | CRTSCTS,           SERIO_ELO,      1,      0,      0,      NULL },
-+{ "--elo271-140",     "-elo4b",       B9600, CS8 | CRTSCTS,           SERIO_ELO,      2,      0,      0,      NULL },
-+{ "--elo261-280",     "-elo3b",       B9600, CS8 | CRTSCTS,           SERIO_ELO,      3,      0,      0,      NULL },
-+{ "--dump",           "-dump",        B2400, CS8,                     0,              0,      0,      0,      dump_init },
-+{ "--dmc9000",          "-dmc",         B19200, CS8,                  SERIO_PENMOUNT, 0,      0,      0,      penmount_init },
-+{ "", "", 0, 0 }
-+
-+};
-+
-+int main(int argc, char **argv)
-+{
-+      unsigned long devt;
-+      int ldisc;
-+        int type;
-+      long id, extra;
-+        int fd;
-+      char c;
-+
-+        if (argc < 2 || argc > 3 || !strcmp("--help", argv[1])) {
-+                puts("");
-+                puts("Usage: inputttach <mode> <device>");
-+                puts("");
-+                puts("Modes:");
-+                puts("  --sunkbd        -skb   Sun Type 4 and Type 5 keyboards");
-+              puts("  --lkkbd         -lk    DEC LK201 / LK401 keyboards");
-+              puts("  --vsxxx-aa      -vs    DEC VSXXX-AA / VSXXX-GA mouse and VSXXX-AB tablet");
-+                puts("  --spaceorb      -orb   SpaceOrb 360 / SpaceBall Avenger");
-+              puts("  --spaceball     -sbl   SpaceBall 2003 / 3003 / 4000 FLX");
-+                puts("  --magellan      -mag   Magellan / SpaceMouse");
-+                puts("  --warrior       -war   WingMan Warrior");
-+              puts("  --stinger       -stng  Gravis Stinger");
-+              puts("  --mousesystems  -msc   3-button Mouse Systems mice");
-+              puts("  --sunmouse      -sun   3-button Sun mice");
-+              puts("  --microsoft     -bare  2-button Microsoft mice");
-+              puts("  --mshack        -ms    3-button mice in Microsoft mode");
-+              puts("  --mouseman      -mman  3-button Logitech and Genius mice");
-+              puts("  --intellimouse  -ms3   Microsoft IntelliMouse");
-+              puts("  --mmwheel       -mmw   Logitech mice with 4-5 buttons or wheel");
-+              puts("  --iforce        -ifor  I-Force joysticks and wheels");
-+                puts("  --h3600ts       -ipaq  Ipaq h3600 touchscreen");
-+              puts("  --stowawaykbd   -ipaqkbd  Stowaway keyboard");
-+              puts("  --ps2serkbd     -ps2ser PS/2 via serial keyboard");
-+              puts("  --twiddler      -twid   Handykey Twiddler chording keyboard");
-+              puts("  --twiddler-joy  -twidjoy  Handykey Twiddler used as a joystick");
-+              puts("  --dmc9000       -dmc   DMC9000/Penpount touchscreen");
-+              puts("");
-+                return 1;
-+        }
-+
-+        for (type = 0; input_types[type].speed; type++) {
-+                if (!strncasecmp(argv[1], input_types[type].name, 16) ||
-+                      !strncasecmp(argv[1], input_types[type].name2, 16))
-+                        break;
-+        }
-+
-+      if (!input_types[type].speed) {
-+              fprintf(stderr, "inputattach: invalid mode\n");
-+              return 1;
-+      }
-+
-+      if ((fd = open(argv[2], O_RDWR | O_NOCTTY | O_NONBLOCK)) < 0) {
-+              perror("inputattach");
-+              return 1;
-+      }
-+
-+      setline(fd, input_types[type].flags, input_types[type].speed);
-+
-+      if (input_types[type].flush)
-+              while (!readchar(fd, &c, 100));
-+
-+      id = input_types[type].id;
-+      extra = input_types[type].extra;
-+
-+      if (input_types[type].init && input_types[type].init(fd, &id, &extra)) {
-+              fprintf(stderr, "inputattach: device initialization failed\n");
-+              return 1;
-+      }
-+
-+      ldisc = N_MOUSE;
-+      if(ioctl(fd, TIOCSETD, &ldisc)) {
-+              fprintf(stderr, "inputattach: can't set line discipline\n"); 
-+              return 1;
-+      }
-+
-+      devt = input_types[type].type | (id << 8) | (extra << 16);
-+
-+      if(ioctl(fd, SPIOCSTYPE, &devt)) {
-+              fprintf(stderr, "inputattach: can't set device type\n");
-+              return 1;
-+      }
-+
-+      read(fd, NULL, 0);
-+
-+      ldisc = 0;
-+      ioctl(fd, TIOCSETD, &ldisc);
-+      close(fd);
-+
-+      return 0;
-+}
-diff -Naur tslib-org/tests/ts_finddev.c tslib-1.0/tests/ts_finddev.c
---- tslib-org/tests/ts_finddev.c       1970-01-01 02:00:00.000000000 +0200
-+++ tslib-1.0/tests/ts_finddev.c       2007-05-07 17:36:37.000000000 +0300
-@@ -0,0 +1,75 @@
-+/*
-+ *  tslib/src/ts_print.c
-+ *
-+ *  Derived from tslib/src/ts_test.c by Douglas Lowder
-+ *  Just prints touchscreen events -- does not paint them on framebuffer
-+ *
-+ * This file is placed under the GPL.  Please see the file
-+ * COPYING for more details.
-+ *
-+ * Basic test program for touchscreen library.
-+ */
-+#include <stdio.h>
-+#include <stdlib.h>
-+#include <signal.h>
-+#include <sys/fcntl.h>
-+#include <sys/ioctl.h>
-+#include <sys/mman.h>
-+#include <sys/time.h>
-+#include <sys/types.h>
-+#include <unistd.h>
-+
-+#include "tslib.h"
-+
-+void usage( int argc, char** argv ) {
-+      printf( "Usage: %s device_name wait_for_sec\n", argv[0] );
-+      printf( "\tdevice_name  - tdevice to probe, example /dev/input/event0\n" );
-+      printf( "\twait_for_sec - wait seconds for touch event, if 0 - dont wait!\n" );
-+      printf( "\tReturn codes:\n" );
-+      printf( "\t  0          - timeout expired without receiving event.\n" );
-+      printf( "\t               But this maybe is TouchScreen.\n" );
-+      printf( "\t -1          - this is NOT TouchScreen device!\n" );
-+      printf( "\t  1          - this is TouchScreen for shure!\n" );  
-+      exit(-1);
-+}
-+
-+void alarm_handler( int sig ) {
-+      // time is expired!
-+      exit(0);
-+}
-+
-+int main( int argc, char** argv )
-+{
-+      struct tsdev *ts;
-+      struct ts_sample samp;
-+      char *tsdevice=NULL;
-+      int waitsec;
-+      int ret;
-+      
-+      if (argc != 3)
-+              usage( argc, argv );
-+              
-+      tsdevice = argv[1];
-+      waitsec = atoi( argv[2] );
-+      if (waitsec < 0)
-+              usage( argc, argv );
-+              
-+      ts = ts_open( tsdevice, 0 );
-+      if (!ts)
-+              return -1;
-+      if (ts_config(ts))
-+              return -1;
-+              
-+      if (!waitsec) {
-+              return 0;
-+      }
-+              
-+      printf( "Probe device %s, Please Touch Screen Anywhere in %i seconds! ... \n", tsdevice, waitsec );
-+      signal( SIGALRM, alarm_handler );
-+      alarm( waitsec );
-+      ret = ts_read_raw(ts, &samp, 1 );
-+      if (ret)
-+              return 1;
-+              
-+      return -1;
-+}
diff --git a/package/uboot-tools/0001-drop-configh-from-tools.patch b/package/uboot-tools/0001-drop-configh-from-tools.patch
new file mode 100644 (file)
index 0000000..a36332f
--- /dev/null
@@ -0,0 +1,25 @@
+We need to build u-boot tools without a board configuration for the target.
+fw_env just uses config.h to define the default environment of the created
+image, so it really isn't mandatory.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff --git a/tools/env/fw_env.h b/tools/env/fw_env.h
+index aff471b..dfe7439 100644
+--- a/tools/env/fw_env.h
++++ b/tools/env/fw_env.h
+@@ -5,14 +5,6 @@
+  * SPDX-License-Identifier:   GPL-2.0+
+  */
+-/* Pull in the current config to define the default environment */
+-#ifndef __ASSEMBLY__
+-#define __ASSEMBLY__ /* get only #defines from config.h */
+-#include <config.h>
+-#undef        __ASSEMBLY__
+-#else
+-#include <config.h>
+-#endif
+ /*
+  * To build the utility with the static configuration
diff --git a/package/uboot-tools/0002-nostrip.patch b/package/uboot-tools/0002-nostrip.patch
new file mode 100644 (file)
index 0000000..7333f41
--- /dev/null
@@ -0,0 +1,61 @@
+From 17e0d6ddd1dc5d04b8032bde2f2076134b0c6dd7 Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Date: Wed, 27 Aug 2014 14:21:32 +0200
+Subject: [PATCH] tools/env: change stripping strategy to allow no-stripping
+
+When building the U-Boot tools for non-ELF platforms (such as Blackfin
+FLAT), since commit 79fc0c5f498c3982aa4740c273ab1a9255063d9c
+("tools/env: cross-compile fw_printenv without setting HOSTCC"), the
+build fails because it tries to strip a FLAT binary, which does not
+make sense.
+
+This commit solves this by changing the stripping logic in
+tools/env/Makefile to be similar to the one in tools/Makefile. This
+logic continues to apply strip to the final binary, but does not abort
+the build if it fails, and does the stripping in place on the final
+binary. This allows the logic to work fine if stripping doesn't work,
+as it leaves the final binary untouched.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Cc: Masahiro Yamada <yamada.m@jp.panasonic.com>
+Cc: Sonic Zhang <sonic.zhang@analog.com>
+---
+An improved solution would be to be able to override STRIP completely
+by setting it to /bin/true, but the main Makefile enforces STRIP =
+$(CROSS_COMPILE)strip.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ tools/env/Makefile | 14 ++++++++------
+ 1 file changed, 8 insertions(+), 6 deletions(-)
+
+diff --git a/tools/env/Makefile b/tools/env/Makefile
+index f5368bc..d047aa5 100644
+--- a/tools/env/Makefile
++++ b/tools/env/Makefile
+@@ -21,14 +21,16 @@ HOST_EXTRACFLAGS += -DMTD_OLD
+ endif
+ always := fw_printenv
+-hostprogs-y := fw_printenv_unstripped
++hostprogs-y := fw_printenv
+-fw_printenv_unstripped-objs := fw_env.o fw_env_main.o \
++fw_printenv-objs := fw_env.o fw_env_main.o \
+       crc32.o ctype.o linux_string.o \
+       env_attr.o env_flags.o aes.o
+-quiet_cmd_strip = STRIP   $@
+-      cmd_strip = $(STRIP) -o $@ $<
++quiet_cmd_crosstools_strip = STRIP   $^
++      cmd_crosstools_strip = $(STRIP) $^; touch $@
+-$(obj)/fw_printenv: $(obj)/fw_printenv_unstripped FORCE
+-      $(call if_changed,strip)
++$(obj)/.strip: $(obj)/fw_printenv
++      $(call cmd,crosstools_strip)
++
++always += .strip
+-- 
+2.0.0
+
diff --git a/package/uboot-tools/uboot-tools-01-drop-configh-from-tools.patch b/package/uboot-tools/uboot-tools-01-drop-configh-from-tools.patch
deleted file mode 100644 (file)
index a36332f..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-We need to build u-boot tools without a board configuration for the target.
-fw_env just uses config.h to define the default environment of the created
-image, so it really isn't mandatory.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff --git a/tools/env/fw_env.h b/tools/env/fw_env.h
-index aff471b..dfe7439 100644
---- a/tools/env/fw_env.h
-+++ b/tools/env/fw_env.h
-@@ -5,14 +5,6 @@
-  * SPDX-License-Identifier:   GPL-2.0+
-  */
--/* Pull in the current config to define the default environment */
--#ifndef __ASSEMBLY__
--#define __ASSEMBLY__ /* get only #defines from config.h */
--#include <config.h>
--#undef        __ASSEMBLY__
--#else
--#include <config.h>
--#endif
- /*
-  * To build the utility with the static configuration
diff --git a/package/uboot-tools/uboot-tools-02-nostrip.patch b/package/uboot-tools/uboot-tools-02-nostrip.patch
deleted file mode 100644 (file)
index 7333f41..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-From 17e0d6ddd1dc5d04b8032bde2f2076134b0c6dd7 Mon Sep 17 00:00:00 2001
-From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-Date: Wed, 27 Aug 2014 14:21:32 +0200
-Subject: [PATCH] tools/env: change stripping strategy to allow no-stripping
-
-When building the U-Boot tools for non-ELF platforms (such as Blackfin
-FLAT), since commit 79fc0c5f498c3982aa4740c273ab1a9255063d9c
-("tools/env: cross-compile fw_printenv without setting HOSTCC"), the
-build fails because it tries to strip a FLAT binary, which does not
-make sense.
-
-This commit solves this by changing the stripping logic in
-tools/env/Makefile to be similar to the one in tools/Makefile. This
-logic continues to apply strip to the final binary, but does not abort
-the build if it fails, and does the stripping in place on the final
-binary. This allows the logic to work fine if stripping doesn't work,
-as it leaves the final binary untouched.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-Cc: Masahiro Yamada <yamada.m@jp.panasonic.com>
-Cc: Sonic Zhang <sonic.zhang@analog.com>
----
-An improved solution would be to be able to override STRIP completely
-by setting it to /bin/true, but the main Makefile enforces STRIP =
-$(CROSS_COMPILE)strip.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
----
- tools/env/Makefile | 14 ++++++++------
- 1 file changed, 8 insertions(+), 6 deletions(-)
-
-diff --git a/tools/env/Makefile b/tools/env/Makefile
-index f5368bc..d047aa5 100644
---- a/tools/env/Makefile
-+++ b/tools/env/Makefile
-@@ -21,14 +21,16 @@ HOST_EXTRACFLAGS += -DMTD_OLD
- endif
- always := fw_printenv
--hostprogs-y := fw_printenv_unstripped
-+hostprogs-y := fw_printenv
--fw_printenv_unstripped-objs := fw_env.o fw_env_main.o \
-+fw_printenv-objs := fw_env.o fw_env_main.o \
-       crc32.o ctype.o linux_string.o \
-       env_attr.o env_flags.o aes.o
--quiet_cmd_strip = STRIP   $@
--      cmd_strip = $(STRIP) -o $@ $<
-+quiet_cmd_crosstools_strip = STRIP   $^
-+      cmd_crosstools_strip = $(STRIP) $^; touch $@
--$(obj)/fw_printenv: $(obj)/fw_printenv_unstripped FORCE
--      $(call if_changed,strip)
-+$(obj)/.strip: $(obj)/fw_printenv
-+      $(call cmd,crosstools_strip)
-+
-+always += .strip
--- 
-2.0.0
-
diff --git a/package/udpcast/0001-select-h.patch b/package/udpcast/0001-select-h.patch
new file mode 100644 (file)
index 0000000..9a8cfc9
--- /dev/null
@@ -0,0 +1,11 @@
+--- udpcast-20120424/console.h 2005-12-22 22:59:18.000000000 +0000
++++ udpcast-20120424.mod/console.h     2013-05-22 22:22:19.835474140 +0100
+@@ -6,6 +6,8 @@
+ #include <winbase.h>
+ #endif /* __MINGW32__ */
++#include <sys/select.h>
++
+ #define prepareConsole udpc_prepareConsole
+ #define getConsoleFd udpc_getConsoleFd
+ #define restoreConsole udpc_restoreConsole
diff --git a/package/udpcast/udpcast-select-h.patch b/package/udpcast/udpcast-select-h.patch
deleted file mode 100644 (file)
index 9a8cfc9..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
---- udpcast-20120424/console.h 2005-12-22 22:59:18.000000000 +0000
-+++ udpcast-20120424.mod/console.h     2013-05-22 22:22:19.835474140 +0100
-@@ -6,6 +6,8 @@
- #include <winbase.h>
- #endif /* __MINGW32__ */
-+#include <sys/select.h>
-+
- #define prepareConsole udpc_prepareConsole
- #define getConsoleFd udpc_getConsoleFd
- #define restoreConsole udpc_restoreConsole
diff --git a/package/unionfs/0001-fuse-no-cxx-needed.patch b/package/unionfs/0001-fuse-no-cxx-needed.patch
new file mode 100644 (file)
index 0000000..56f7e24
--- /dev/null
@@ -0,0 +1,19 @@
+By default, CMake assumes a project uses the C and C++ languages, so
+it checks for both the C and the C++ compiler to exist.
+
+However, unionfs-fuse is written purely in C, so checking for a C++
+compiler is useless, and even prevents unionfs-fuse from building
+properly on targets for which no C++ compiler is available.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/CMakeLists.txt
+===================================================================
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1,4 +1,4 @@
+-project(unionfs-fuse)
++project(unionfs-fuse C)
+ cmake_minimum_required(VERSION 2.0)
+ INCLUDE (CheckIncludeFiles)
diff --git a/package/unionfs/unionfs-fuse-no-cxx-needed.patch b/package/unionfs/unionfs-fuse-no-cxx-needed.patch
deleted file mode 100644 (file)
index 56f7e24..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-By default, CMake assumes a project uses the C and C++ languages, so
-it checks for both the C and the C++ compiler to exist.
-
-However, unionfs-fuse is written purely in C, so checking for a C++
-compiler is useless, and even prevents unionfs-fuse from building
-properly on targets for which no C++ compiler is available.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/CMakeLists.txt
-===================================================================
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -1,4 +1,4 @@
--project(unionfs-fuse)
-+project(unionfs-fuse C)
- cmake_minimum_required(VERSION 2.0)
- INCLUDE (CheckIncludeFiles)
diff --git a/package/urg/0001-select-h.patch b/package/urg/0001-select-h.patch
new file mode 100644 (file)
index 0000000..09d1530
--- /dev/null
@@ -0,0 +1,11 @@
+--- urg-0.8.18/src/c/connection/serial_ctrl_lin.c      2010-11-22 01:48:01.000000000 +0000
++++ urg-0.8.18.mod/src/c/connection/serial_ctrl_lin.c  2013-05-21 20:56:35.822025969 +0100
+@@ -17,7 +17,7 @@
+ #include <fcntl.h>
+ #include <errno.h>
+ #include <string.h>
+-
++#include <sys/select.h>
+ //#include <ctype.h>
+ enum {
diff --git a/package/urg/urg-select-h.patch b/package/urg/urg-select-h.patch
deleted file mode 100644 (file)
index 09d1530..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
---- urg-0.8.18/src/c/connection/serial_ctrl_lin.c      2010-11-22 01:48:01.000000000 +0000
-+++ urg-0.8.18.mod/src/c/connection/serial_ctrl_lin.c  2013-05-21 20:56:35.822025969 +0100
-@@ -17,7 +17,7 @@
- #include <fcntl.h>
- #include <errno.h>
- #include <string.h>
--
-+#include <sys/select.h>
- //#include <ctype.h>
- enum {
diff --git a/package/usbmount/0001-rules-fix.patch b/package/usbmount/0001-rules-fix.patch
new file mode 100644 (file)
index 0000000..c71b613
--- /dev/null
@@ -0,0 +1,19 @@
+Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
+---
+ usbmount.rules |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+Index: b/usbmount.rules
+===================================================================
+--- a/usbmount.rules
++++ b/usbmount.rules
+@@ -1,7 +1,7 @@
+ # Rules for USBmount -*- conf -*-
+
+ KERNEL=="sd*", DRIVERS=="sbp2",               ACTION=="add",  RUN+="/usr/share/usbmount/usbmount add"
+-KERNEL=="sd*", SUBSYSTEMS=="usb",     ACTION=="add",  RUN+="/usr/share/usbmount/usbmount add"
+-KERNEL=="ub*", SUBSYSTEMS=="usb",     ACTION=="add",  RUN+="/usr/share/usbmount/usbmount add"
++KERNEL=="sd*", SUBSYSTEM=="block",    ACTION=="add",  RUN+="/usr/share/usbmount/usbmount add"
++KERNEL=="ub*", SUBSYSTEM=="block",    ACTION=="add",  RUN+="/usr/share/usbmount/usbmount add"
+ KERNEL=="sd*",                                ACTION=="remove",       RUN+="/usr/share/usbmount/usbmount remove"
+ KERNEL=="ub*",                                ACTION=="remove",       RUN+="/usr/share/usbmount/usbmount remove"
diff --git a/package/usbmount/0002-use-udev-environment-instead-of-blkid.patch b/package/usbmount/0002-use-udev-environment-instead-of-blkid.patch
new file mode 100644 (file)
index 0000000..27928b5
--- /dev/null
@@ -0,0 +1,71 @@
+udev can provide all the values that usbmount determined using the
+blkid binary. This patch drops use of blkid in favor of using the
+environment variables set by udev. Thus it removes the dependency
+on blkid from usbmount.
+
+Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
+--- usbmount-0.0.22/usbmount.orig      2013-06-18 14:44:40.143096147 +0200
++++ usbmount-0.0.22/usbmount   2013-06-19 16:13:09.882434896 +0200
+@@ -59,11 +59,6 @@
+     exit 0
+ fi
+-if [ ! -x /sbin/blkid ]; then
+-    log err "cannot execute /sbin/blkid"
+-    exit 1
+-fi
+-
+ # Per Policy 9.3.2, directories under /var/run have to be created
+ # after every reboot.
+ if [ ! -e /var/run/usbmount ]; then
+@@ -83,15 +78,7 @@
+     trap '( lockfile-remove /var/run/usbmount/.mount )' 0
+     log debug "acquired lock /var/run/usbmount/.mount.lock"
+-    # Grab device information from device and "divide it"
+-    #   FIXME: improvement: implement mounting by label (notice that labels
+-    #   can contain spaces, which makes things a little bit less comfortable).
+-    DEVINFO=$(/sbin/blkid -p $DEVNAME)
+-    FSTYPE=$(echo "$DEVINFO" | sed 's/.*[[:blank:]]TYPE="\([^"]*\)".*/\1/g; s/[[:blank:]]*//g;')
+-    UUID=$(echo "$DEVINFO"   | sed 's/.*[[:blank:]]UUID="\([^"]*\)".*/\1/g; s/[[:blank:]]*//g;')
+-    USAGE=$(echo "$DEVINFO"  | sed 's/.*[[:blank:]]USAGE="\([^"]*\)".*/\1/g; s/[[:blank:]]*//g;')
+-
+-    if ! echo $USAGE | egrep -q "(filesystem|disklabel)"; then
++    if ! echo $ID_FS_USAGE | egrep -q "(filesystem|disklabel)"; then
+       log info "$DEVNAME does not contain a filesystem or disklabel"
+       exit 1
+     fi
+@@ -101,14 +88,14 @@
+       log info "executing command: mount $DEVNAME"
+       mount $DEVNAME || log err "mount by DEVNAME with $DEVNAME wasn't successful; return code $?"
+-    elif grep -q "^[[:blank:]]*UUID=$UUID" /etc/fstab; then
+-        log info "executing command: mount -U $UUID"
+-      mount -U $UUID || log err "mount by UUID with $UUID wasn't successful; return code $?"
++    elif grep -q "^[[:blank:]]*UUID=$ID_FS_UUID" /etc/fstab; then
++        log info "executing command: mount -U $ID_FS_UUID"
++      mount -U $ID_FS_UUID || log err "mount by UUID with $ID_FS_UUID wasn't successful; return code $?"
+     else
+-      log debug "$DEVNAME contains filesystem type $FSTYPE"
++      log debug "$DEVNAME contains filesystem type $ID_FS_TYPE"
+-      fstype=$FSTYPE
++      fstype=$ID_FS_TYPE
+       # Test if the filesystem type is in the list of filesystem
+       # types to mount.
+       if in_list "$fstype" "$FILESYSTEMS"; then
+@@ -176,11 +163,13 @@
+               # Run hook scripts; ignore errors.
+               export UM_DEVICE="$DEVNAME"
++              export UM_UUID="$ID_FS_UUID"
+               export UM_MOUNTPOINT="$mountpoint"
+               export UM_FILESYSTEM="$fstype"
+               export UM_MOUNTOPTIONS="$options"
+               export UM_VENDOR="$vendor"
+               export UM_MODEL="$model"
++              export UM_LABEL="$ID_FS_LABEL"
+               log info "executing command: run-parts /etc/usbmount/mount.d"
+               run-parts /etc/usbmount/mount.d || :
+           else
diff --git a/package/usbmount/usbmount-rules-fix.patch b/package/usbmount/usbmount-rules-fix.patch
deleted file mode 100644 (file)
index c71b613..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
----
- usbmount.rules |    4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-Index: b/usbmount.rules
-===================================================================
---- a/usbmount.rules
-+++ b/usbmount.rules
-@@ -1,7 +1,7 @@
- # Rules for USBmount -*- conf -*-
-
- KERNEL=="sd*", DRIVERS=="sbp2",               ACTION=="add",  RUN+="/usr/share/usbmount/usbmount add"
--KERNEL=="sd*", SUBSYSTEMS=="usb",     ACTION=="add",  RUN+="/usr/share/usbmount/usbmount add"
--KERNEL=="ub*", SUBSYSTEMS=="usb",     ACTION=="add",  RUN+="/usr/share/usbmount/usbmount add"
-+KERNEL=="sd*", SUBSYSTEM=="block",    ACTION=="add",  RUN+="/usr/share/usbmount/usbmount add"
-+KERNEL=="ub*", SUBSYSTEM=="block",    ACTION=="add",  RUN+="/usr/share/usbmount/usbmount add"
- KERNEL=="sd*",                                ACTION=="remove",       RUN+="/usr/share/usbmount/usbmount remove"
- KERNEL=="ub*",                                ACTION=="remove",       RUN+="/usr/share/usbmount/usbmount remove"
diff --git a/package/usbmount/usbmount-use-udev-environment-instead-of-blkid.patch b/package/usbmount/usbmount-use-udev-environment-instead-of-blkid.patch
deleted file mode 100644 (file)
index 27928b5..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-udev can provide all the values that usbmount determined using the
-blkid binary. This patch drops use of blkid in favor of using the
-environment variables set by udev. Thus it removes the dependency
-on blkid from usbmount.
-
-Signed-off-by: Sven Neumann <s.neumann@raumfeld.com>
---- usbmount-0.0.22/usbmount.orig      2013-06-18 14:44:40.143096147 +0200
-+++ usbmount-0.0.22/usbmount   2013-06-19 16:13:09.882434896 +0200
-@@ -59,11 +59,6 @@
-     exit 0
- fi
--if [ ! -x /sbin/blkid ]; then
--    log err "cannot execute /sbin/blkid"
--    exit 1
--fi
--
- # Per Policy 9.3.2, directories under /var/run have to be created
- # after every reboot.
- if [ ! -e /var/run/usbmount ]; then
-@@ -83,15 +78,7 @@
-     trap '( lockfile-remove /var/run/usbmount/.mount )' 0
-     log debug "acquired lock /var/run/usbmount/.mount.lock"
--    # Grab device information from device and "divide it"
--    #   FIXME: improvement: implement mounting by label (notice that labels
--    #   can contain spaces, which makes things a little bit less comfortable).
--    DEVINFO=$(/sbin/blkid -p $DEVNAME)
--    FSTYPE=$(echo "$DEVINFO" | sed 's/.*[[:blank:]]TYPE="\([^"]*\)".*/\1/g; s/[[:blank:]]*//g;')
--    UUID=$(echo "$DEVINFO"   | sed 's/.*[[:blank:]]UUID="\([^"]*\)".*/\1/g; s/[[:blank:]]*//g;')
--    USAGE=$(echo "$DEVINFO"  | sed 's/.*[[:blank:]]USAGE="\([^"]*\)".*/\1/g; s/[[:blank:]]*//g;')
--
--    if ! echo $USAGE | egrep -q "(filesystem|disklabel)"; then
-+    if ! echo $ID_FS_USAGE | egrep -q "(filesystem|disklabel)"; then
-       log info "$DEVNAME does not contain a filesystem or disklabel"
-       exit 1
-     fi
-@@ -101,14 +88,14 @@
-       log info "executing command: mount $DEVNAME"
-       mount $DEVNAME || log err "mount by DEVNAME with $DEVNAME wasn't successful; return code $?"
--    elif grep -q "^[[:blank:]]*UUID=$UUID" /etc/fstab; then
--        log info "executing command: mount -U $UUID"
--      mount -U $UUID || log err "mount by UUID with $UUID wasn't successful; return code $?"
-+    elif grep -q "^[[:blank:]]*UUID=$ID_FS_UUID" /etc/fstab; then
-+        log info "executing command: mount -U $ID_FS_UUID"
-+      mount -U $ID_FS_UUID || log err "mount by UUID with $ID_FS_UUID wasn't successful; return code $?"
-     else
--      log debug "$DEVNAME contains filesystem type $FSTYPE"
-+      log debug "$DEVNAME contains filesystem type $ID_FS_TYPE"
--      fstype=$FSTYPE
-+      fstype=$ID_FS_TYPE
-       # Test if the filesystem type is in the list of filesystem
-       # types to mount.
-       if in_list "$fstype" "$FILESYSTEMS"; then
-@@ -176,11 +163,13 @@
-               # Run hook scripts; ignore errors.
-               export UM_DEVICE="$DEVNAME"
-+              export UM_UUID="$ID_FS_UUID"
-               export UM_MOUNTPOINT="$mountpoint"
-               export UM_FILESYSTEM="$fstype"
-               export UM_MOUNTOPTIONS="$options"
-               export UM_VENDOR="$vendor"
-               export UM_MODEL="$model"
-+              export UM_LABEL="$ID_FS_LABEL"
-               log info "executing command: run-parts /etc/usbmount/mount.d"
-               run-parts /etc/usbmount/mount.d || :
-           else
diff --git a/package/ushare/0001-compile-fixes.patch b/package/ushare/0001-compile-fixes.patch
new file mode 100644 (file)
index 0000000..cfdf5e3
--- /dev/null
@@ -0,0 +1,206 @@
+Patch nixed from OpenWRT svn to fix build breakage.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+--- a/src/cds.c
++++ b/src/cds.c
+@@ -20,6 +20,8 @@
+  */
+ #include <stdlib.h>
++#include <stdio.h>
++#include <string.h>
+ #include <upnp/upnp.h>
+ #include <upnp/upnptools.h>
+--- a/src/http.c
++++ b/src/http.c
+@@ -25,6 +25,7 @@
+ #include <errno.h>
+ #include <stdio.h>
+ #include <stdlib.h>
++#include <string.h>
+ #include <unistd.h>
+ #include <errno.h>
+@@ -77,8 +78,7 @@ set_info_file (struct File_Info *info, c
+   info->content_type = ixmlCloneDOMString (content_type);
+ }
+-static int
+-http_get_info (const char *filename, struct File_Info *info)
++int http_get_info (const char *filename, struct File_Info *info)
+ {
+   extern struct ushare_t *ut;
+   struct upnp_entry_t *entry = NULL;
+@@ -197,8 +197,7 @@ get_file_memory (const char *fullpath, c
+   return ((UpnpWebFileHandle) file);
+ }
+-static UpnpWebFileHandle
+-http_open (const char *filename, enum UpnpOpenFileMode mode)
++UpnpWebFileHandle http_open (const char *filename, enum UpnpOpenFileMode mode)
+ {
+   extern struct ushare_t *ut;
+   struct upnp_entry_t *entry = NULL;
+@@ -251,8 +250,7 @@ http_open (const char *filename, enum Up
+   return ((UpnpWebFileHandle) file);
+ }
+-static int
+-http_read (UpnpWebFileHandle fh, char *buf, size_t buflen)
++int http_read (UpnpWebFileHandle fh, char *buf, size_t buflen)
+ {
+   struct web_file_t *file = (struct web_file_t *) fh;
+   ssize_t len = -1;
+@@ -286,8 +284,7 @@ http_read (UpnpWebFileHandle fh, char *b
+   return len;
+ }
+-static int
+-http_write (UpnpWebFileHandle fh __attribute__((unused)),
++int http_write (UpnpWebFileHandle fh __attribute__((unused)),
+             char *buf __attribute__((unused)),
+             size_t buflen __attribute__((unused)))
+ {
+@@ -296,8 +293,7 @@ http_write (UpnpWebFileHandle fh __attri
+   return 0;
+ }
+-static int
+-http_seek (UpnpWebFileHandle fh, off_t offset, int origin)
++int http_seek (UpnpWebFileHandle fh, off_t offset, int origin)
+ {
+   struct web_file_t *file = (struct web_file_t *) fh;
+   off_t newpos = -1;
+@@ -371,8 +367,7 @@ http_seek (UpnpWebFileHandle fh, off_t o
+   return 0;
+ }
+-static int
+-http_close (UpnpWebFileHandle fh)
++int http_close (UpnpWebFileHandle fh)
+ {
+   struct web_file_t *file = (struct web_file_t *) fh;
+@@ -402,13 +397,3 @@ http_close (UpnpWebFileHandle fh)
+   return 0;
+ }
+-
+-struct UpnpVirtualDirCallbacks virtual_dir_callbacks =
+-  {
+-    http_get_info,
+-    http_open,
+-    http_read,
+-    http_write,
+-    http_seek,
+-    http_close
+-  };
+--- a/src/http.h
++++ b/src/http.h
+@@ -25,6 +25,18 @@
+ #include <upnp/upnp.h>
+ #include <upnp/upnptools.h>
+-struct UpnpVirtualDirCallbacks virtual_dir_callbacks;
++int http_get_info (const char *filename, struct File_Info *info);
++
++UpnpWebFileHandle http_open (const char *filename, enum UpnpOpenFileMode mode);
++
++int http_read (UpnpWebFileHandle fh, char *buf, size_t buflen);
++
++int http_seek (UpnpWebFileHandle fh, off_t offset, int origin);
++
++int http_write (UpnpWebFileHandle fh __attribute__((unused)),
++      char *buf __attribute__((unused)),
++      size_t buflen __attribute__((unused)));
++
++int http_close (UpnpWebFileHandle fh);
+ #endif /* _HTTP_H_ */
+--- a/src/ushare.c
++++ b/src/ushare.c
+@@ -188,7 +188,7 @@ handle_action_request (struct Upnp_Actio
+   if (strcmp (request->DevUDN + 5, ut->udn))
+     return;
+-  ip = request->CtrlPtIPAddr.s_addr;
++  ip = (*(struct sockaddr_in *)&request->CtrlPtIPAddr).sin_addr.s_addr;
+   ip = ntohl (ip);
+   sprintf (val, "%d.%d.%d.%d",
+            (ip >> 24) & 0xFF, (ip >> 16) & 0xFF, (ip >> 8) & 0xFF, ip & 0xFF);
+@@ -348,13 +348,23 @@ init_upnp (struct ushare_t *ut)
+   UpnpEnableWebserver (TRUE);
+-  res = UpnpSetVirtualDirCallbacks (&virtual_dir_callbacks);
+-  if (res != UPNP_E_SUCCESS)
+-  {
+-    log_error (_("Cannot set virtual directory callbacks\n"));
+-    free (description);
+-    return -1;
+-  }
++#define upnp_set_callback(cb, func) \
++  do {                                                            \
++    res = UpnpVirtualDir_set_##cb##Callback(func);                \
++    if (res != UPNP_E_SUCCESS)                                    \
++    {                                                             \
++      log_error (_("Cannot set virtual directory callbacks\n"));  \
++      free (description);                                         \
++      return -1;                                                  \
++    }                                                             \
++  } while(0)
++
++  upnp_set_callback(GetInfo, http_get_info);
++  upnp_set_callback(Open,    http_open);
++  upnp_set_callback(Read,    http_read);
++  upnp_set_callback(Seek,    http_seek);
++  upnp_set_callback(Write,   http_write);
++  upnp_set_callback(Close,   http_close);
+   res = UpnpAddVirtualDir (VIRTUAL_DIR);
+   if (res != UPNP_E_SUCCESS)
+--- a/src/cms.c
++++ b/src/cms.c
+@@ -20,6 +20,8 @@
+  */
+ #include <stdlib.h>
++#include <stdio.h>
++#include <string.h>
+ #include <upnp/upnp.h>
+ #include <upnp/upnptools.h>
+--- a/src/mime.c
++++ b/src/mime.c
+@@ -20,6 +20,7 @@
+  */
+ #include <stdlib.h>
++#include <stdio.h>
+ #include <string.h>
+ #include "mime.h"
+--- a/src/presentation.c
++++ b/src/presentation.c
+@@ -19,6 +19,8 @@
+  */
+ #include <stdlib.h>
++#include <stdio.h>
++#include <string.h>
+ #if HAVE_LANGINFO_CODESET
+ # include <langinfo.h>
+--- a/src/services.c
++++ b/src/services.c
+@@ -20,6 +20,8 @@
+  */
+ #include <stdlib.h>
++#include <stdio.h>
++#include <string.h>
+ #include <upnp/upnp.h>
+ #include <upnp/upnptools.h>
diff --git a/package/ushare/ushare-compile-fixes.patch b/package/ushare/ushare-compile-fixes.patch
deleted file mode 100644 (file)
index cfdf5e3..0000000
+++ /dev/null
@@ -1,206 +0,0 @@
-Patch nixed from OpenWRT svn to fix build breakage.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
---- a/src/cds.c
-+++ b/src/cds.c
-@@ -20,6 +20,8 @@
-  */
- #include <stdlib.h>
-+#include <stdio.h>
-+#include <string.h>
- #include <upnp/upnp.h>
- #include <upnp/upnptools.h>
---- a/src/http.c
-+++ b/src/http.c
-@@ -25,6 +25,7 @@
- #include <errno.h>
- #include <stdio.h>
- #include <stdlib.h>
-+#include <string.h>
- #include <unistd.h>
- #include <errno.h>
-@@ -77,8 +78,7 @@ set_info_file (struct File_Info *info, c
-   info->content_type = ixmlCloneDOMString (content_type);
- }
--static int
--http_get_info (const char *filename, struct File_Info *info)
-+int http_get_info (const char *filename, struct File_Info *info)
- {
-   extern struct ushare_t *ut;
-   struct upnp_entry_t *entry = NULL;
-@@ -197,8 +197,7 @@ get_file_memory (const char *fullpath, c
-   return ((UpnpWebFileHandle) file);
- }
--static UpnpWebFileHandle
--http_open (const char *filename, enum UpnpOpenFileMode mode)
-+UpnpWebFileHandle http_open (const char *filename, enum UpnpOpenFileMode mode)
- {
-   extern struct ushare_t *ut;
-   struct upnp_entry_t *entry = NULL;
-@@ -251,8 +250,7 @@ http_open (const char *filename, enum Up
-   return ((UpnpWebFileHandle) file);
- }
--static int
--http_read (UpnpWebFileHandle fh, char *buf, size_t buflen)
-+int http_read (UpnpWebFileHandle fh, char *buf, size_t buflen)
- {
-   struct web_file_t *file = (struct web_file_t *) fh;
-   ssize_t len = -1;
-@@ -286,8 +284,7 @@ http_read (UpnpWebFileHandle fh, char *b
-   return len;
- }
--static int
--http_write (UpnpWebFileHandle fh __attribute__((unused)),
-+int http_write (UpnpWebFileHandle fh __attribute__((unused)),
-             char *buf __attribute__((unused)),
-             size_t buflen __attribute__((unused)))
- {
-@@ -296,8 +293,7 @@ http_write (UpnpWebFileHandle fh __attri
-   return 0;
- }
--static int
--http_seek (UpnpWebFileHandle fh, off_t offset, int origin)
-+int http_seek (UpnpWebFileHandle fh, off_t offset, int origin)
- {
-   struct web_file_t *file = (struct web_file_t *) fh;
-   off_t newpos = -1;
-@@ -371,8 +367,7 @@ http_seek (UpnpWebFileHandle fh, off_t o
-   return 0;
- }
--static int
--http_close (UpnpWebFileHandle fh)
-+int http_close (UpnpWebFileHandle fh)
- {
-   struct web_file_t *file = (struct web_file_t *) fh;
-@@ -402,13 +397,3 @@ http_close (UpnpWebFileHandle fh)
-   return 0;
- }
--
--struct UpnpVirtualDirCallbacks virtual_dir_callbacks =
--  {
--    http_get_info,
--    http_open,
--    http_read,
--    http_write,
--    http_seek,
--    http_close
--  };
---- a/src/http.h
-+++ b/src/http.h
-@@ -25,6 +25,18 @@
- #include <upnp/upnp.h>
- #include <upnp/upnptools.h>
--struct UpnpVirtualDirCallbacks virtual_dir_callbacks;
-+int http_get_info (const char *filename, struct File_Info *info);
-+
-+UpnpWebFileHandle http_open (const char *filename, enum UpnpOpenFileMode mode);
-+
-+int http_read (UpnpWebFileHandle fh, char *buf, size_t buflen);
-+
-+int http_seek (UpnpWebFileHandle fh, off_t offset, int origin);
-+
-+int http_write (UpnpWebFileHandle fh __attribute__((unused)),
-+      char *buf __attribute__((unused)),
-+      size_t buflen __attribute__((unused)));
-+
-+int http_close (UpnpWebFileHandle fh);
- #endif /* _HTTP_H_ */
---- a/src/ushare.c
-+++ b/src/ushare.c
-@@ -188,7 +188,7 @@ handle_action_request (struct Upnp_Actio
-   if (strcmp (request->DevUDN + 5, ut->udn))
-     return;
--  ip = request->CtrlPtIPAddr.s_addr;
-+  ip = (*(struct sockaddr_in *)&request->CtrlPtIPAddr).sin_addr.s_addr;
-   ip = ntohl (ip);
-   sprintf (val, "%d.%d.%d.%d",
-            (ip >> 24) & 0xFF, (ip >> 16) & 0xFF, (ip >> 8) & 0xFF, ip & 0xFF);
-@@ -348,13 +348,23 @@ init_upnp (struct ushare_t *ut)
-   UpnpEnableWebserver (TRUE);
--  res = UpnpSetVirtualDirCallbacks (&virtual_dir_callbacks);
--  if (res != UPNP_E_SUCCESS)
--  {
--    log_error (_("Cannot set virtual directory callbacks\n"));
--    free (description);
--    return -1;
--  }
-+#define upnp_set_callback(cb, func) \
-+  do {                                                            \
-+    res = UpnpVirtualDir_set_##cb##Callback(func);                \
-+    if (res != UPNP_E_SUCCESS)                                    \
-+    {                                                             \
-+      log_error (_("Cannot set virtual directory callbacks\n"));  \
-+      free (description);                                         \
-+      return -1;                                                  \
-+    }                                                             \
-+  } while(0)
-+
-+  upnp_set_callback(GetInfo, http_get_info);
-+  upnp_set_callback(Open,    http_open);
-+  upnp_set_callback(Read,    http_read);
-+  upnp_set_callback(Seek,    http_seek);
-+  upnp_set_callback(Write,   http_write);
-+  upnp_set_callback(Close,   http_close);
-   res = UpnpAddVirtualDir (VIRTUAL_DIR);
-   if (res != UPNP_E_SUCCESS)
---- a/src/cms.c
-+++ b/src/cms.c
-@@ -20,6 +20,8 @@
-  */
- #include <stdlib.h>
-+#include <stdio.h>
-+#include <string.h>
- #include <upnp/upnp.h>
- #include <upnp/upnptools.h>
---- a/src/mime.c
-+++ b/src/mime.c
-@@ -20,6 +20,7 @@
-  */
- #include <stdlib.h>
-+#include <stdio.h>
- #include <string.h>
- #include "mime.h"
---- a/src/presentation.c
-+++ b/src/presentation.c
-@@ -19,6 +19,8 @@
-  */
- #include <stdlib.h>
-+#include <stdio.h>
-+#include <string.h>
- #if HAVE_LANGINFO_CODESET
- # include <langinfo.h>
---- a/src/services.c
-+++ b/src/services.c
-@@ -20,6 +20,8 @@
-  */
- #include <stdlib.h>
-+#include <stdio.h>
-+#include <string.h>
- #include <upnp/upnp.h>
- #include <upnp/upnptools.h>
diff --git a/package/ussp-push/0001-fix-build-against-bluez-4.patch b/package/ussp-push/0001-fix-build-against-bluez-4.patch
new file mode 100644 (file)
index 0000000..0694bfb
--- /dev/null
@@ -0,0 +1,15 @@
+Fix build against bluez4.
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+
+--- ussp-push-0.11.orig/src/obex_socket.c      2012-11-01 09:58:51.049538708 +0100
++++ ussp-push-0.11/src/obex_socket.c   2012-11-01 12:10:10.719506951 +0100
+@@ -197,7 +197,7 @@ static int bt_sock_name2bth(int devid, c
+       for (i = 0; i < niinf; i++) {
+               char devname[128];
+-              if (hci_remote_name(dd, &piinf[i].bdaddr, sizeof(devname) - 1,
++              if (hci_read_remote_name(dd, &piinf[i].bdaddr, sizeof(devname) - 1,
+                                   devname, 100000) >= 0) {
+                       if (strcasecmp(devname, btname) == 0) {
+                               *btaddr = piinf[i].bdaddr;
diff --git a/package/ussp-push/ussp-push-fix-build-against-bluez-4.patch b/package/ussp-push/ussp-push-fix-build-against-bluez-4.patch
deleted file mode 100644 (file)
index 0694bfb..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-Fix build against bluez4.
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
-
---- ussp-push-0.11.orig/src/obex_socket.c      2012-11-01 09:58:51.049538708 +0100
-+++ ussp-push-0.11/src/obex_socket.c   2012-11-01 12:10:10.719506951 +0100
-@@ -197,7 +197,7 @@ static int bt_sock_name2bth(int devid, c
-       for (i = 0; i < niinf; i++) {
-               char devname[128];
--              if (hci_remote_name(dd, &piinf[i].bdaddr, sizeof(devname) - 1,
-+              if (hci_read_remote_name(dd, &piinf[i].bdaddr, sizeof(devname) - 1,
-                                   devname, 100000) >= 0) {
-                       if (strcasecmp(devname, btname) == 0) {
-                               *btaddr = piinf[i].bdaddr;
diff --git a/package/vala/0001-dont-add-dirty-to-valac-version.patch b/package/vala/0001-dont-add-dirty-to-valac-version.patch
new file mode 100644 (file)
index 0000000..a2a0623
--- /dev/null
@@ -0,0 +1,25 @@
+valac: don't append -dirty to version
+
+Don't append -dirty to the valac version number if the Buildroot Git
+tree has uncommited changes.
+
+The patched script is meant for the valac developers, but it also
+activates if you build valac in a subdirectory of a Git tree (e.g.
+as is commonly done in Buildroot).
+
+The effect is that valac gets built as being version x.y.z-dirty, which
+breaks programs (such as Midori) that explicitly check for valac-x.y.z.
+
+Signed-off-by: Simon Dawson <spdawson@gmail.com>
+diff -Nur a/build-aux/git-version-gen b/build-aux/git-version-gen
+--- a/build-aux/git-version-gen        2010-08-15 12:49:03.000000000 +0100
++++ b/build-aux/git-version-gen        2012-05-14 10:17:19.977204570 +0100
+@@ -135,7 +135,7 @@
+     *) # Append the suffix only if there isn't one already.
+       case $v in
+         *-dirty) ;;
+-        *) v="$v-dirty" ;;
++        #*) v="$v-dirty" ;;
+       esac ;;
+ esac
diff --git a/package/vala/vala-dont-add-dirty-to-valac-version.patch b/package/vala/vala-dont-add-dirty-to-valac-version.patch
deleted file mode 100644 (file)
index a2a0623..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-valac: don't append -dirty to version
-
-Don't append -dirty to the valac version number if the Buildroot Git
-tree has uncommited changes.
-
-The patched script is meant for the valac developers, but it also
-activates if you build valac in a subdirectory of a Git tree (e.g.
-as is commonly done in Buildroot).
-
-The effect is that valac gets built as being version x.y.z-dirty, which
-breaks programs (such as Midori) that explicitly check for valac-x.y.z.
-
-Signed-off-by: Simon Dawson <spdawson@gmail.com>
-diff -Nur a/build-aux/git-version-gen b/build-aux/git-version-gen
---- a/build-aux/git-version-gen        2010-08-15 12:49:03.000000000 +0100
-+++ b/build-aux/git-version-gen        2012-05-14 10:17:19.977204570 +0100
-@@ -135,7 +135,7 @@
-     *) # Append the suffix only if there isn't one already.
-       case $v in
-         *-dirty) ;;
--        *) v="$v-dirty" ;;
-+        #*) v="$v-dirty" ;;
-       esac ;;
- esac
diff --git a/package/valgrind/0001-workaround-SIGSEGV-on-PPC.patch b/package/valgrind/0001-workaround-SIGSEGV-on-PPC.patch
new file mode 100644 (file)
index 0000000..1c5966b
--- /dev/null
@@ -0,0 +1,32 @@
+From bd9d2af89e45081132c150e5e4bdf9a12dfca693 Mon Sep 17 00:00:00 2001
+From: Pierre Habouzit <madcoder@debian.org>
+Date: Tue, 10 May 2011 23:11:45 +0200
+Subject: [PATCH 1/2] workaround SIGSEGV on PPC.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Signed-off-by: Pierre Habouzit <madcoder@debian.org>
+Signed-off-by: Jérôme Pouiller <jezz@sysmic.org>
+---
+ coregrind/m_machine.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/coregrind/m_machine.c b/coregrind/m_machine.c
+index 42d8ce8..3c9900f 100644
+--- a/coregrind/m_machine.c
++++ b/coregrind/m_machine.c
+@@ -27,6 +27,10 @@
+    The GNU General Public License is contained in the file COPYING.
+ */
++#ifdef __powerpc__
++#  pragma GCC optimize ("-O0")
++#endif
++
+ #include "pub_core_basics.h"
+ #include "pub_core_vki.h"
+ #include "pub_core_libcsetjmp.h"   // setjmp facilities
+-- 
+1.9.1
+
diff --git a/package/valgrind/0002-don-t-enable-largefile-support-unconditionally-on-uC.patch b/package/valgrind/0002-don-t-enable-largefile-support-unconditionally-on-uC.patch
new file mode 100644 (file)
index 0000000..57ab2c3
--- /dev/null
@@ -0,0 +1,71 @@
+From 6bb94d51e25b394bc9c52699f744a7cc06ffca15 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Pouiller?= <jezz@sysmic.org>
+Date: Thu, 2 Jan 2014 16:00:06 +0100
+Subject: [PATCH 2/2] don't enable largefile support unconditionally on uClibc
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+uClibc can be compiled without largefile support (and errors out if
+_FILE_OFFSET_BITS is set to 64), so don't define it if that combination
+is detected.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+Signed-off-by: Jérôme Pouiller <jezz@sysmic.org>
+---
+ coregrind/m_initimg/initimg-linux.c | 4 ++++
+ coregrind/m_main.c                  | 4 ++++
+ coregrind/m_ume/elf.c               | 4 ++++
+ 3 files changed, 12 insertions(+)
+
+diff --git a/coregrind/m_initimg/initimg-linux.c b/coregrind/m_initimg/initimg-linux.c
+index a8e7d27..fa670cb 100644
+--- a/coregrind/m_initimg/initimg-linux.c
++++ b/coregrind/m_initimg/initimg-linux.c
+@@ -55,7 +55,11 @@
+ /* --- !!! --- EXTERNAL HEADERS start --- !!! --- */
+ #define _GNU_SOURCE
++#include <features.h>
++/* uclibc without largefile support #errors on _FILE_OFFSET_BITS=64 */
++#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_LFS__))
+ #define _FILE_OFFSET_BITS 64
++#endif
+ /* This is for ELF types etc, and also the AT_ constants. */
+ #include <elf.h>
+ /* --- !!! --- EXTERNAL HEADERS end --- !!! --- */
+diff --git a/coregrind/m_main.c b/coregrind/m_main.c
+index e7159a8..4371a1f 100644
+--- a/coregrind/m_main.c
++++ b/coregrind/m_main.c
+@@ -3143,7 +3143,11 @@ asm(
+ /* --- !!! --- EXTERNAL HEADERS start --- !!! --- */
+ #define _GNU_SOURCE
++#include <features.h>
++/* uclibc without largefile support #errors on _FILE_OFFSET_BITS=64 */
++#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_LFS__))
+ #define _FILE_OFFSET_BITS 64
++#endif
+ /* This is in order to get AT_NULL and AT_PAGESIZE. */
+ #include <elf.h>
+ /* --- !!! --- EXTERNAL HEADERS end --- !!! --- */
+diff --git a/coregrind/m_ume/elf.c b/coregrind/m_ume/elf.c
+index 4615da3..06992a4 100644
+--- a/coregrind/m_ume/elf.c
++++ b/coregrind/m_ume/elf.c
+@@ -48,7 +48,11 @@
+ /* --- !!! --- EXTERNAL HEADERS start --- !!! --- */
+ #define _GNU_SOURCE
++#include <features.h>
++/* uclibc without largefile support #errors on _FILE_OFFSET_BITS=64 */
++#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_LFS__))
+ #define _FILE_OFFSET_BITS 64
++#endif
+ /* This is for ELF types etc, and also the AT_ constants. */
+ #include <elf.h>
+ /* --- !!! --- EXTERNAL HEADERS end --- !!! --- */
+-- 
+1.9.1
+
diff --git a/package/valgrind/0003-add-missing-ptrace-getsiginfo-on-powerpc.patch b/package/valgrind/0003-add-missing-ptrace-getsiginfo-on-powerpc.patch
new file mode 100644 (file)
index 0000000..f663825
--- /dev/null
@@ -0,0 +1,28 @@
+Define PTRACE_GETSIGINFO on PowerPC when not available
+
+uClibc 0.9.33.2 does not define PTRACE_GETSIGINFO in PowerPC. Even
+though Buildroot has a uClibc patch doing that, it doesn't solve the
+case of external uClibc toolchain from other sources (such as
+Crosstool-NG). Therefore, this patch modifies Valgrind to define
+PTRACE_GETSIGINFO on PowerPC to the right value, when such definition
+is not available from the C library.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/coregrind/vgdb-invoker-ptrace.c
+===================================================================
+--- a/coregrind/vgdb-invoker-ptrace.c
++++ b/coregrind/vgdb-invoker-ptrace.c
+@@ -71,6 +71,12 @@
+ #   endif
+ #endif
++#if defined(__powerpc__)
++# ifndef PTRACE_GETSIGINFO
++#  define PTRACE_GETSIGINFO 0x4202
++# endif
++#endif
++
+ #if VEX_HOST_WORDSIZE == 8
+ typedef Addr64 CORE_ADDR;
+ #elif VEX_HOST_WORDSIZE == 4
diff --git a/package/valgrind/valgrind-0001-workaround-SIGSEGV-on-PPC.patch b/package/valgrind/valgrind-0001-workaround-SIGSEGV-on-PPC.patch
deleted file mode 100644 (file)
index 1c5966b..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-From bd9d2af89e45081132c150e5e4bdf9a12dfca693 Mon Sep 17 00:00:00 2001
-From: Pierre Habouzit <madcoder@debian.org>
-Date: Tue, 10 May 2011 23:11:45 +0200
-Subject: [PATCH 1/2] workaround SIGSEGV on PPC.
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Signed-off-by: Pierre Habouzit <madcoder@debian.org>
-Signed-off-by: Jérôme Pouiller <jezz@sysmic.org>
----
- coregrind/m_machine.c | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/coregrind/m_machine.c b/coregrind/m_machine.c
-index 42d8ce8..3c9900f 100644
---- a/coregrind/m_machine.c
-+++ b/coregrind/m_machine.c
-@@ -27,6 +27,10 @@
-    The GNU General Public License is contained in the file COPYING.
- */
-+#ifdef __powerpc__
-+#  pragma GCC optimize ("-O0")
-+#endif
-+
- #include "pub_core_basics.h"
- #include "pub_core_vki.h"
- #include "pub_core_libcsetjmp.h"   // setjmp facilities
--- 
-1.9.1
-
diff --git a/package/valgrind/valgrind-0002-don-t-enable-largefile-support-unconditionally-on-uC.patch b/package/valgrind/valgrind-0002-don-t-enable-largefile-support-unconditionally-on-uC.patch
deleted file mode 100644 (file)
index 57ab2c3..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-From 6bb94d51e25b394bc9c52699f744a7cc06ffca15 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Pouiller?= <jezz@sysmic.org>
-Date: Thu, 2 Jan 2014 16:00:06 +0100
-Subject: [PATCH 2/2] don't enable largefile support unconditionally on uClibc
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-uClibc can be compiled without largefile support (and errors out if
-_FILE_OFFSET_BITS is set to 64), so don't define it if that combination
-is detected.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
-Signed-off-by: Jérôme Pouiller <jezz@sysmic.org>
----
- coregrind/m_initimg/initimg-linux.c | 4 ++++
- coregrind/m_main.c                  | 4 ++++
- coregrind/m_ume/elf.c               | 4 ++++
- 3 files changed, 12 insertions(+)
-
-diff --git a/coregrind/m_initimg/initimg-linux.c b/coregrind/m_initimg/initimg-linux.c
-index a8e7d27..fa670cb 100644
---- a/coregrind/m_initimg/initimg-linux.c
-+++ b/coregrind/m_initimg/initimg-linux.c
-@@ -55,7 +55,11 @@
- /* --- !!! --- EXTERNAL HEADERS start --- !!! --- */
- #define _GNU_SOURCE
-+#include <features.h>
-+/* uclibc without largefile support #errors on _FILE_OFFSET_BITS=64 */
-+#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_LFS__))
- #define _FILE_OFFSET_BITS 64
-+#endif
- /* This is for ELF types etc, and also the AT_ constants. */
- #include <elf.h>
- /* --- !!! --- EXTERNAL HEADERS end --- !!! --- */
-diff --git a/coregrind/m_main.c b/coregrind/m_main.c
-index e7159a8..4371a1f 100644
---- a/coregrind/m_main.c
-+++ b/coregrind/m_main.c
-@@ -3143,7 +3143,11 @@ asm(
- /* --- !!! --- EXTERNAL HEADERS start --- !!! --- */
- #define _GNU_SOURCE
-+#include <features.h>
-+/* uclibc without largefile support #errors on _FILE_OFFSET_BITS=64 */
-+#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_LFS__))
- #define _FILE_OFFSET_BITS 64
-+#endif
- /* This is in order to get AT_NULL and AT_PAGESIZE. */
- #include <elf.h>
- /* --- !!! --- EXTERNAL HEADERS end --- !!! --- */
-diff --git a/coregrind/m_ume/elf.c b/coregrind/m_ume/elf.c
-index 4615da3..06992a4 100644
---- a/coregrind/m_ume/elf.c
-+++ b/coregrind/m_ume/elf.c
-@@ -48,7 +48,11 @@
- /* --- !!! --- EXTERNAL HEADERS start --- !!! --- */
- #define _GNU_SOURCE
-+#include <features.h>
-+/* uclibc without largefile support #errors on _FILE_OFFSET_BITS=64 */
-+#if !(defined(__UCLIBC__) && !defined(__UCLIBC_HAS_LFS__))
- #define _FILE_OFFSET_BITS 64
-+#endif
- /* This is for ELF types etc, and also the AT_ constants. */
- #include <elf.h>
- /* --- !!! --- EXTERNAL HEADERS end --- !!! --- */
--- 
-1.9.1
-
diff --git a/package/valgrind/valgrind-0003-add-missing-ptrace-getsiginfo-on-powerpc.patch b/package/valgrind/valgrind-0003-add-missing-ptrace-getsiginfo-on-powerpc.patch
deleted file mode 100644 (file)
index f663825..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-Define PTRACE_GETSIGINFO on PowerPC when not available
-
-uClibc 0.9.33.2 does not define PTRACE_GETSIGINFO in PowerPC. Even
-though Buildroot has a uClibc patch doing that, it doesn't solve the
-case of external uClibc toolchain from other sources (such as
-Crosstool-NG). Therefore, this patch modifies Valgrind to define
-PTRACE_GETSIGINFO on PowerPC to the right value, when such definition
-is not available from the C library.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/coregrind/vgdb-invoker-ptrace.c
-===================================================================
---- a/coregrind/vgdb-invoker-ptrace.c
-+++ b/coregrind/vgdb-invoker-ptrace.c
-@@ -71,6 +71,12 @@
- #   endif
- #endif
-+#if defined(__powerpc__)
-+# ifndef PTRACE_GETSIGINFO
-+#  define PTRACE_GETSIGINFO 0x4202
-+# endif
-+#endif
-+
- #if VEX_HOST_WORDSIZE == 8
- typedef Addr64 CORE_ADDR;
- #elif VEX_HOST_WORDSIZE == 4
diff --git a/package/vde2/0001-no-cxx.patch b/package/vde2/0001-no-cxx.patch
new file mode 100644 (file)
index 0000000..67cefa2
--- /dev/null
@@ -0,0 +1,22 @@
+configure: do not test for CXX, it's not needed
+
+There is no C++ source file, so no reason to require a C++ compiler.
+
+Reported-by: Peter Korsgaard <jacmet@uclibc.org>
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+---
+Patch sent upstream
+( not yet in archives, awaits moderator approval... :-/ )
+
+diff -durN vde2-2.3.2.orig/configure.ac vde2-2.3.2/configure.ac
+--- vde2-2.3.2.orig/configure.ac       2011-11-23 17:41:19.000000000 +0100
++++ vde2-2.3.2/configure.ac    2012-12-14 21:56:47.146319686 +0100
+@@ -11,7 +11,6 @@
+ AC_CONFIG_LIBOBJ_DIR(src/common)
+ # Checks for programs.
+-AC_PROG_CXX
+ AC_PROG_CC
+ AC_PROG_INSTALL
+ AC_PROG_LN_S
diff --git a/package/vde2/vde2-no-cxx.patch b/package/vde2/vde2-no-cxx.patch
deleted file mode 100644 (file)
index 67cefa2..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-configure: do not test for CXX, it's not needed
-
-There is no C++ source file, so no reason to require a C++ compiler.
-
-Reported-by: Peter Korsgaard <jacmet@uclibc.org>
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
-
----
-Patch sent upstream
-( not yet in archives, awaits moderator approval... :-/ )
-
-diff -durN vde2-2.3.2.orig/configure.ac vde2-2.3.2/configure.ac
---- vde2-2.3.2.orig/configure.ac       2011-11-23 17:41:19.000000000 +0100
-+++ vde2-2.3.2/configure.ac    2012-12-14 21:56:47.146319686 +0100
-@@ -11,7 +11,6 @@
- AC_CONFIG_LIBOBJ_DIR(src/common)
- # Checks for programs.
--AC_PROG_CXX
- AC_PROG_CC
- AC_PROG_INSTALL
- AC_PROG_LN_S
diff --git a/package/vlc/0001-vlc-static.patch b/package/vlc/0001-vlc-static.patch
new file mode 100644 (file)
index 0000000..faf7e80
--- /dev/null
@@ -0,0 +1,24 @@
+diff -uNr vlc-2.1.5.org/bin/Makefile.am vlc-2.1.5/bin/Makefile.am
+--- vlc-2.1.5.org/bin/Makefile.am      2013-12-03 10:12:34.000000000 +0100
++++ vlc-2.1.5/bin/Makefile.am  2014-08-03 12:30:06.722154518 +0200
+@@ -1,7 +1,7 @@
+ # Building vlc
+ #
+ bin_PROGRAMS = vlc
+-noinst_PROGRAMS = vlc-static
++noinst_PROGRAMS =
+ noinst_DATA =
+ vlclib_PROGRAMS = vlc-cache-gen
+ EXTRA_PROGRAMS = vlc-wrapper
+diff -uNr vlc-2.1.5.org/Makefile.am vlc-2.1.5/Makefile.am
+--- vlc-2.1.5.org/Makefile.am  2014-02-14 18:40:50.000000000 +0100
++++ vlc-2.1.5/Makefile.am      2014-08-03 12:29:52.059010766 +0200
+@@ -607,7 +607,7 @@
+       cd lib && $(MAKE) $(AM_MAKEFLAGS) libvlc.la
+ core: libvlc vlc$(EXEEXT)
+-      cd bin && $(MAKE) $(AM_MAKEFLAGS) vlc$(EXEEXT) vlc-static$(EXEEXT)
++      cd bin && $(MAKE) $(AM_MAKEFLAGS) vlc$(EXEEXT)
+ doc:
+       cd doc && $(MAKE) $(AM_MAKEFLAGS) doc
diff --git a/package/vlc/0002-configure.ac-add-check-for-libgcrypt-config-program.patch b/package/vlc/0002-configure.ac-add-check-for-libgcrypt-config-program.patch
new file mode 100644 (file)
index 0000000..1ad6712
--- /dev/null
@@ -0,0 +1,43 @@
+From 88bf3313850bc7f0e6db21daee2b8d8e607b7bb4 Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Sat, 8 Feb 2014 14:33:27 +0100
+Subject: [PATCH] configure.ac: add check for libgcrypt-config program
+
+This allows to override the default libgcrypt-config location (which is
+useful when cross-compiling), instead of using the one from the host
+system.
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+---
+ configure.ac | 9 +++++----
+ 1 file changed, 5 insertions(+), 4 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 02fb8aa..5a2267b 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -3943,16 +3943,17 @@ dnl
+ AC_ARG_ENABLE(libgcrypt,
+   [  --disable-libgcrypt     gcrypt support (default enabled)])
+ AS_IF([test "${enable_libgcrypt}" != "no"], [
++  AC_PATH_PROG(GCRYPT_CONFIG,libgcrypt-config,libgcrypt-config)
+   AC_CHECK_DECL([GCRYCTL_SET_THREAD_CBS], [
+-    libgcrypt-config --version >/dev/null || \
++    ${GCRYPT_CONFIG} --version >/dev/null || \
+         AC_MSG_ERROR([gcrypt.h present but libgcrypt-config could not be found])
+     AC_CHECK_LIB(gcrypt, gcry_control, [
+       have_libgcrypt="yes"
+-      GCRYPT_CFLAGS="`libgcrypt-config --cflags`"
+-      GCRYPT_LIBS="`libgcrypt-config --libs`"
++      GCRYPT_CFLAGS="`${GCRYPT_CONFIG} --cflags`"
++      GCRYPT_LIBS="`${GCRYPT_CONFIG} --libs`"
+     ], [
+       AC_MSG_ERROR([libgcrypt not found. Install libgcrypt or use --disable-libgcrypt. Have a nice day.])
+-    ], [`libgcrypt-config --libs`])
++    ], [`${GCRYPT_CONFIG} --libs`])
+   ], [
+     AC_MSG_ERROR([libgcrypt version 1.1.94 or higher not found. Install libgcrypt or use --disable-libgcrypt. Have a nice day.])
+   ], [#include <gcrypt.h>]
+-- 
+1.8.5.4
+
diff --git a/package/vlc/0003-automake-add-subdir-objects-option.patch b/package/vlc/0003-automake-add-subdir-objects-option.patch
new file mode 100644 (file)
index 0000000..cea6a38
--- /dev/null
@@ -0,0 +1,22 @@
+automake: add subdir-objects option
+
+Our version of automake warns if this option is enabled and source files
+in subdirectories are used.
+
+It doesn't really seems to have a noticable effect on the build, but it
+does remove a lot of annoying warnings.
+
+Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
+
+diff -Nrup vlc-2.1.2.orig/configure.ac vlc-2.1.2/configure.ac
+--- vlc-2.1.2.orig/configure.ac        2014-02-27 00:22:19.512944952 +0100
++++ vlc-2.1.2/configure.ac     2014-02-27 00:24:21.360940651 +0100
+@@ -24,7 +24,7 @@ AC_CANONICAL_BUILD
+ AC_CANONICAL_HOST
+ AC_PRESERVE_HELP_ORDER
+-AM_INIT_AUTOMAKE(tar-ustar color-tests foreign)
++AM_INIT_AUTOMAKE(tar-ustar color-tests foreign subdir-objects)
+ AC_CONFIG_HEADERS([config.h])
+ # Disable with "./configure --disable-silent-rules" or "make V=1"
diff --git a/package/vlc/0004-libav.patch b/package/vlc/0004-libav.patch
new file mode 100644 (file)
index 0000000..c4842d7
--- /dev/null
@@ -0,0 +1,22 @@
+VLC works fine with ffmpeg 2.4, ported from upstream
+http://git.videolan.org/?p=vlc/vlc-2.2.git;a=blobdiff;f=configure.ac;h=21a9f89585297ebb98481a29719ef35a20f040db;hp=570da72136f4a5f8142fbab696ece53dd7f84b6a;hb=4ed2079b77b8aeb6d7885cc9828a90290018a7a4;hpb=18fbf7fd17a0f4e9cabcc2e34ac54b210ba08b27
+
+Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
+
+diff --git a/configure.ac b/configure.ac
+index 570da72..21a9f89 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -2285,9 +2285,9 @@ AC_ARG_ENABLE(avcodec,
+ [  --enable-avcodec        libavcodec codec (default enabled)])
+ AS_IF([test "${enable_avcodec}" != "no"], [
+   PKG_CHECK_MODULES(AVCODEC,[libavcodec >= 53.34.0 libavutil >= 51.22.0], [
+-    PKG_CHECK_EXISTS([libavcodec < 56],, [
+-      AC_MSG_ERROR([libavcodec versions 56 and later are not supported yet.])
+-    ])
++    dnl PKG_CHECK_EXISTS([libavcodec < 56],, [
++    dnl   AC_MSG_ERROR([libavcodec versions 56 and later are not supported yet.])
++    dnl ])
+     VLC_SAVE_FLAGS
+     CPPFLAGS="${CPPFLAGS} ${AVCODEC_CFLAGS}"
+     CFLAGS="${CFLAGS} ${AVCODEC_CFLAGS}"
diff --git a/package/vlc/vlc-0001-vlc-static.patch b/package/vlc/vlc-0001-vlc-static.patch
deleted file mode 100644 (file)
index faf7e80..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-diff -uNr vlc-2.1.5.org/bin/Makefile.am vlc-2.1.5/bin/Makefile.am
---- vlc-2.1.5.org/bin/Makefile.am      2013-12-03 10:12:34.000000000 +0100
-+++ vlc-2.1.5/bin/Makefile.am  2014-08-03 12:30:06.722154518 +0200
-@@ -1,7 +1,7 @@
- # Building vlc
- #
- bin_PROGRAMS = vlc
--noinst_PROGRAMS = vlc-static
-+noinst_PROGRAMS =
- noinst_DATA =
- vlclib_PROGRAMS = vlc-cache-gen
- EXTRA_PROGRAMS = vlc-wrapper
-diff -uNr vlc-2.1.5.org/Makefile.am vlc-2.1.5/Makefile.am
---- vlc-2.1.5.org/Makefile.am  2014-02-14 18:40:50.000000000 +0100
-+++ vlc-2.1.5/Makefile.am      2014-08-03 12:29:52.059010766 +0200
-@@ -607,7 +607,7 @@
-       cd lib && $(MAKE) $(AM_MAKEFLAGS) libvlc.la
- core: libvlc vlc$(EXEEXT)
--      cd bin && $(MAKE) $(AM_MAKEFLAGS) vlc$(EXEEXT) vlc-static$(EXEEXT)
-+      cd bin && $(MAKE) $(AM_MAKEFLAGS) vlc$(EXEEXT)
- doc:
-       cd doc && $(MAKE) $(AM_MAKEFLAGS) doc
diff --git a/package/vlc/vlc-0002-configure.ac-add-check-for-libgcrypt-config-program.patch b/package/vlc/vlc-0002-configure.ac-add-check-for-libgcrypt-config-program.patch
deleted file mode 100644 (file)
index 1ad6712..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-From 88bf3313850bc7f0e6db21daee2b8d8e607b7bb4 Mon Sep 17 00:00:00 2001
-From: Samuel Martin <s.martin49@gmail.com>
-Date: Sat, 8 Feb 2014 14:33:27 +0100
-Subject: [PATCH] configure.ac: add check for libgcrypt-config program
-
-This allows to override the default libgcrypt-config location (which is
-useful when cross-compiling), instead of using the one from the host
-system.
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
----
- configure.ac | 9 +++++----
- 1 file changed, 5 insertions(+), 4 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index 02fb8aa..5a2267b 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -3943,16 +3943,17 @@ dnl
- AC_ARG_ENABLE(libgcrypt,
-   [  --disable-libgcrypt     gcrypt support (default enabled)])
- AS_IF([test "${enable_libgcrypt}" != "no"], [
-+  AC_PATH_PROG(GCRYPT_CONFIG,libgcrypt-config,libgcrypt-config)
-   AC_CHECK_DECL([GCRYCTL_SET_THREAD_CBS], [
--    libgcrypt-config --version >/dev/null || \
-+    ${GCRYPT_CONFIG} --version >/dev/null || \
-         AC_MSG_ERROR([gcrypt.h present but libgcrypt-config could not be found])
-     AC_CHECK_LIB(gcrypt, gcry_control, [
-       have_libgcrypt="yes"
--      GCRYPT_CFLAGS="`libgcrypt-config --cflags`"
--      GCRYPT_LIBS="`libgcrypt-config --libs`"
-+      GCRYPT_CFLAGS="`${GCRYPT_CONFIG} --cflags`"
-+      GCRYPT_LIBS="`${GCRYPT_CONFIG} --libs`"
-     ], [
-       AC_MSG_ERROR([libgcrypt not found. Install libgcrypt or use --disable-libgcrypt. Have a nice day.])
--    ], [`libgcrypt-config --libs`])
-+    ], [`${GCRYPT_CONFIG} --libs`])
-   ], [
-     AC_MSG_ERROR([libgcrypt version 1.1.94 or higher not found. Install libgcrypt or use --disable-libgcrypt. Have a nice day.])
-   ], [#include <gcrypt.h>]
--- 
-1.8.5.4
-
diff --git a/package/vlc/vlc-0003-automake-add-subdir-objects-option.patch b/package/vlc/vlc-0003-automake-add-subdir-objects-option.patch
deleted file mode 100644 (file)
index cea6a38..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-automake: add subdir-objects option
-
-Our version of automake warns if this option is enabled and source files
-in subdirectories are used.
-
-It doesn't really seems to have a noticable effect on the build, but it
-does remove a lot of annoying warnings.
-
-Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
-
-diff -Nrup vlc-2.1.2.orig/configure.ac vlc-2.1.2/configure.ac
---- vlc-2.1.2.orig/configure.ac        2014-02-27 00:22:19.512944952 +0100
-+++ vlc-2.1.2/configure.ac     2014-02-27 00:24:21.360940651 +0100
-@@ -24,7 +24,7 @@ AC_CANONICAL_BUILD
- AC_CANONICAL_HOST
- AC_PRESERVE_HELP_ORDER
--AM_INIT_AUTOMAKE(tar-ustar color-tests foreign)
-+AM_INIT_AUTOMAKE(tar-ustar color-tests foreign subdir-objects)
- AC_CONFIG_HEADERS([config.h])
- # Disable with "./configure --disable-silent-rules" or "make V=1"
diff --git a/package/vlc/vlc-0004-libav.patch b/package/vlc/vlc-0004-libav.patch
deleted file mode 100644 (file)
index c4842d7..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-VLC works fine with ffmpeg 2.4, ported from upstream
-http://git.videolan.org/?p=vlc/vlc-2.2.git;a=blobdiff;f=configure.ac;h=21a9f89585297ebb98481a29719ef35a20f040db;hp=570da72136f4a5f8142fbab696ece53dd7f84b6a;hb=4ed2079b77b8aeb6d7885cc9828a90290018a7a4;hpb=18fbf7fd17a0f4e9cabcc2e34ac54b210ba08b27
-
-Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
-
-diff --git a/configure.ac b/configure.ac
-index 570da72..21a9f89 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -2285,9 +2285,9 @@ AC_ARG_ENABLE(avcodec,
- [  --enable-avcodec        libavcodec codec (default enabled)])
- AS_IF([test "${enable_avcodec}" != "no"], [
-   PKG_CHECK_MODULES(AVCODEC,[libavcodec >= 53.34.0 libavutil >= 51.22.0], [
--    PKG_CHECK_EXISTS([libavcodec < 56],, [
--      AC_MSG_ERROR([libavcodec versions 56 and later are not supported yet.])
--    ])
-+    dnl PKG_CHECK_EXISTS([libavcodec < 56],, [
-+    dnl   AC_MSG_ERROR([libavcodec versions 56 and later are not supported yet.])
-+    dnl ])
-     VLC_SAVE_FLAGS
-     CPPFLAGS="${CPPFLAGS} ${AVCODEC_CFLAGS}"
-     CFLAGS="${CFLAGS} ${AVCODEC_CFLAGS}"
diff --git a/package/vpnc/0001-fix-build.patch b/package/vpnc/0001-fix-build.patch
new file mode 100644 (file)
index 0000000..e21348b
--- /dev/null
@@ -0,0 +1,71 @@
+Misc. Makefile cleanup and fix the VERSION definition.
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+
+---
+diff -purN vpnc-0.5.3.orig/Makefile vpnc-0.5.3/Makefile
+--- vpnc-0.5.3.orig/Makefile   2012-08-06 00:03:22.677914146 +0200
++++ vpnc-0.5.3/Makefile        2012-08-06 00:06:58.506744901 +0200
+@@ -19,21 +19,19 @@
+ #
+ # $Id: Makefile 312 2008-06-15 18:09:42Z Joerg Mayer $
+-DESTDIR=
+-PREFIX=/usr/local
+-ETCDIR=/etc/vpnc
+-BINDIR=$(PREFIX)/bin
+-SBINDIR=$(PREFIX)/sbin
+-MANDIR=$(PREFIX)/share/man
+-DOCDIR=$(PREFIX)/share/doc/vpnc
+-
+-SRCS = sysdep.c vpnc-debug.c isakmp-pkt.c tunip.c config.c dh.c math_group.c supp.c decrypt-utils.c
+-BINS = vpnc cisco-decrypt
+-OBJS = $(addsuffix .o,$(basename $(SRCS)))
++DESTDIR =
++PREFIX ?= /usr/local
++ETCDIR  = /etc/vpnc
++BINDIR  = $(PREFIX)/bin
++SBINDIR = $(PREFIX)/sbin
++MANDIR  = $(PREFIX)/share/man
++DOCDIR  = $(PREFIX)/share/doc/vpnc
++
++SRCS    = sysdep.c vpnc-debug.c isakmp-pkt.c tunip.c config.c dh.c math_group.c supp.c decrypt-utils.c
++BINS    = vpnc cisco-decrypt
++OBJS    = $(addsuffix .o,$(basename $(SRCS)))
+ BINOBJS = $(addsuffix .o,$(BINS))
+ BINSRCS = $(addsuffix .c,$(BINS))
+-VERSION := $(shell sh mk-version)
+-RELEASE_VERSION := $(shell cat VERSION)
+ # The license of vpnc (Gpl >= 2) is quite likely incompatible with the
+ # openssl license. Openssl is currently used to provide certificate
+@@ -50,13 +48,13 @@ RELEASE_VERSION := $(shell cat VERSION)
+ #OPENSSL_GPL_VIOLATION = -DOPENSSL_GPL_VIOLATION
+ #OPENSSLLIBS = -lcrypto
+-CC=gcc
+-CFLAGS ?= -O3 -g
+-CFLAGS += -W -Wall -Wmissing-declarations -Wwrite-strings
+-CFLAGS +=  $(shell libgcrypt-config --cflags)
+-CPPFLAGS += -DVERSION=\"$(VERSION)\" $(OPENSSL_GPL_VIOLATION)
+-LDFLAGS ?= -g
+-LDFLAGS += $(shell libgcrypt-config --libs) $(OPENSSLLIBS)
++CC       ?= gcc
++CFLAGS   ?= -O3 -g
++CFLAGS   += -W -Wall -Wmissing-declarations -Wwrite-strings
++CFLAGS   += $(shell libgcrypt-config --cflags)
++CPPFLAGS += $(OPENSSL_GPL_VIOLATION)
++LDFLAGS  ?= -g
++LDFLAGS  += $(shell libgcrypt-config --libs) $(OPENSSLLIBS)
+ ifeq ($(shell uname -s), SunOS)
+ LDFLAGS += -lnsl -lresolv -lsocket
+@@ -84,7 +82,7 @@ cisco-decrypt : cisco-decrypt.o decrypt-
+       $(CC) -o $@ $^ $(LDFLAGS)
+ .depend: $(SRCS) $(BINSRCS)
+-      $(CC) -MM $(SRCS) $(BINSRCS) $(CFLAGS) $(CPPFLAGS) > $@
++      $(CC) -MM $(SRCS) $(BINSRCS) $(CPPFLAGS) $(CFLAGS) > $@
+ vpnc-debug.c vpnc-debug.h : isakmp.h enum2debug.pl
+       LC_ALL=C perl -w ./enum2debug.pl isakmp.h >vpnc-debug.c 2>vpnc-debug.h
diff --git a/package/vpnc/0002-nomanual.patch b/package/vpnc/0002-nomanual.patch
new file mode 100644 (file)
index 0000000..7f2ea53
--- /dev/null
@@ -0,0 +1,15 @@
+diff -urN vpnc-0.5.3-0rig/Makefile vpnc-0.5.3/Makefile
+--- vpnc-0.5.3-0rig/Makefile   2008-11-19 21:36:12.000000000 +0100
++++ vpnc-0.5.3/Makefile        2009-01-15 00:38:36.000000000 +0100
+@@ -72,7 +72,10 @@
+       $(CC) -o $@ $^ $(LDFLAGS)
+ vpnc.8 : vpnc.8.template makeman.pl vpnc
+-      ./makeman.pl
++      @echo "Cannot make manual when cross compiling"
++      touch $@
++
++#     ./makeman.pl
+ vpnc-script : vpnc-script.in
+       sed -e 's,@''PREFIX''@,$(PREFIX),g' $< > $@ && chmod 755 $@
diff --git a/package/vpnc/0003-susv3-legacy.patch b/package/vpnc/0003-susv3-legacy.patch
new file mode 100644 (file)
index 0000000..2e577e3
--- /dev/null
@@ -0,0 +1,12 @@
+diff -rdup vpnc-0.5.1.oorig/config.c vpnc-0.5.1/config.c
+--- vpnc-0.5.1.oorig/config.c  2007-09-10 22:39:48.000000000 +0200
++++ vpnc-0.5.1/config.c        2007-09-19 14:19:46.000000000 +0200
+@@ -538,7 +538,7 @@ static char *get_config_filename(const c
+ {
+       char *realname;
+       
+-      asprintf(&realname, "%s%s%s", index(name, '/') ? "" : "/etc/vpnc/", name, add_dot_conf ? ".conf" : "");
++      asprintf(&realname, "%s%s%s", strchr(name, '/') ? "" : "/etc/vpnc/", name, add_dot_conf ? ".conf" : "");
+       return realname;
+ }
diff --git a/package/vpnc/vpnc-0.5.3-fix-build.patch b/package/vpnc/vpnc-0.5.3-fix-build.patch
deleted file mode 100644 (file)
index e21348b..0000000
+++ /dev/null
@@ -1,71 +0,0 @@
-Misc. Makefile cleanup and fix the VERSION definition.
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
-
----
-diff -purN vpnc-0.5.3.orig/Makefile vpnc-0.5.3/Makefile
---- vpnc-0.5.3.orig/Makefile   2012-08-06 00:03:22.677914146 +0200
-+++ vpnc-0.5.3/Makefile        2012-08-06 00:06:58.506744901 +0200
-@@ -19,21 +19,19 @@
- #
- # $Id: Makefile 312 2008-06-15 18:09:42Z Joerg Mayer $
--DESTDIR=
--PREFIX=/usr/local
--ETCDIR=/etc/vpnc
--BINDIR=$(PREFIX)/bin
--SBINDIR=$(PREFIX)/sbin
--MANDIR=$(PREFIX)/share/man
--DOCDIR=$(PREFIX)/share/doc/vpnc
--
--SRCS = sysdep.c vpnc-debug.c isakmp-pkt.c tunip.c config.c dh.c math_group.c supp.c decrypt-utils.c
--BINS = vpnc cisco-decrypt
--OBJS = $(addsuffix .o,$(basename $(SRCS)))
-+DESTDIR =
-+PREFIX ?= /usr/local
-+ETCDIR  = /etc/vpnc
-+BINDIR  = $(PREFIX)/bin
-+SBINDIR = $(PREFIX)/sbin
-+MANDIR  = $(PREFIX)/share/man
-+DOCDIR  = $(PREFIX)/share/doc/vpnc
-+
-+SRCS    = sysdep.c vpnc-debug.c isakmp-pkt.c tunip.c config.c dh.c math_group.c supp.c decrypt-utils.c
-+BINS    = vpnc cisco-decrypt
-+OBJS    = $(addsuffix .o,$(basename $(SRCS)))
- BINOBJS = $(addsuffix .o,$(BINS))
- BINSRCS = $(addsuffix .c,$(BINS))
--VERSION := $(shell sh mk-version)
--RELEASE_VERSION := $(shell cat VERSION)
- # The license of vpnc (Gpl >= 2) is quite likely incompatible with the
- # openssl license. Openssl is currently used to provide certificate
-@@ -50,13 +48,13 @@ RELEASE_VERSION := $(shell cat VERSION)
- #OPENSSL_GPL_VIOLATION = -DOPENSSL_GPL_VIOLATION
- #OPENSSLLIBS = -lcrypto
--CC=gcc
--CFLAGS ?= -O3 -g
--CFLAGS += -W -Wall -Wmissing-declarations -Wwrite-strings
--CFLAGS +=  $(shell libgcrypt-config --cflags)
--CPPFLAGS += -DVERSION=\"$(VERSION)\" $(OPENSSL_GPL_VIOLATION)
--LDFLAGS ?= -g
--LDFLAGS += $(shell libgcrypt-config --libs) $(OPENSSLLIBS)
-+CC       ?= gcc
-+CFLAGS   ?= -O3 -g
-+CFLAGS   += -W -Wall -Wmissing-declarations -Wwrite-strings
-+CFLAGS   += $(shell libgcrypt-config --cflags)
-+CPPFLAGS += $(OPENSSL_GPL_VIOLATION)
-+LDFLAGS  ?= -g
-+LDFLAGS  += $(shell libgcrypt-config --libs) $(OPENSSLLIBS)
- ifeq ($(shell uname -s), SunOS)
- LDFLAGS += -lnsl -lresolv -lsocket
-@@ -84,7 +82,7 @@ cisco-decrypt : cisco-decrypt.o decrypt-
-       $(CC) -o $@ $^ $(LDFLAGS)
- .depend: $(SRCS) $(BINSRCS)
--      $(CC) -MM $(SRCS) $(BINSRCS) $(CFLAGS) $(CPPFLAGS) > $@
-+      $(CC) -MM $(SRCS) $(BINSRCS) $(CPPFLAGS) $(CFLAGS) > $@
- vpnc-debug.c vpnc-debug.h : isakmp.h enum2debug.pl
-       LC_ALL=C perl -w ./enum2debug.pl isakmp.h >vpnc-debug.c 2>vpnc-debug.h
diff --git a/package/vpnc/vpnc-0.5.3-nomanual.patch b/package/vpnc/vpnc-0.5.3-nomanual.patch
deleted file mode 100644 (file)
index 7f2ea53..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-diff -urN vpnc-0.5.3-0rig/Makefile vpnc-0.5.3/Makefile
---- vpnc-0.5.3-0rig/Makefile   2008-11-19 21:36:12.000000000 +0100
-+++ vpnc-0.5.3/Makefile        2009-01-15 00:38:36.000000000 +0100
-@@ -72,7 +72,10 @@
-       $(CC) -o $@ $^ $(LDFLAGS)
- vpnc.8 : vpnc.8.template makeman.pl vpnc
--      ./makeman.pl
-+      @echo "Cannot make manual when cross compiling"
-+      touch $@
-+
-+#     ./makeman.pl
- vpnc-script : vpnc-script.in
-       sed -e 's,@''PREFIX''@,$(PREFIX),g' $< > $@ && chmod 755 $@
diff --git a/package/vpnc/vpnc-0.5.3-susv3-legacy.patch b/package/vpnc/vpnc-0.5.3-susv3-legacy.patch
deleted file mode 100644 (file)
index 2e577e3..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -rdup vpnc-0.5.1.oorig/config.c vpnc-0.5.1/config.c
---- vpnc-0.5.1.oorig/config.c  2007-09-10 22:39:48.000000000 +0200
-+++ vpnc-0.5.1/config.c        2007-09-19 14:19:46.000000000 +0200
-@@ -538,7 +538,7 @@ static char *get_config_filename(const c
- {
-       char *realname;
-       
--      asprintf(&realname, "%s%s%s", index(name, '/') ? "" : "/etc/vpnc/", name, add_dot_conf ? ".conf" : "");
-+      asprintf(&realname, "%s%s%s", strchr(name, '/') ? "" : "/etc/vpnc/", name, add_dot_conf ? ".conf" : "");
-       return realname;
- }
diff --git a/package/vtun/0001-fix-installation.patch b/package/vtun/0001-fix-installation.patch
new file mode 100644 (file)
index 0000000..d9659fa
--- /dev/null
@@ -0,0 +1,44 @@
+Makefile.in: fix installation steps
+
+Not sure what the reason for that patch is, but originally added by Ulf
+Samuelsson <ulf.samuelsson@atmel.com>, when upgrading from 2.6.x to 3.0.2.
+
+yann.morin.1998@free.fr: the initial commit in the Buildroot tree had the
+SoB by Ulf, but it was not explicitly reproduced here in the patch; so I
+added it here directly in the patch.
+
+Somewhat-signed-off-by: Ulf Samuelsson <ulf.samuelsson@atmel.com>
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+diff -durN vtun-3.0.3.orig/Makefile.in vtun-3.0.3/Makefile.in
+--- vtun-3.0.3.orig/Makefile.in        2012-07-09 06:55:38.000000000 +0200
++++ vtun-3.0.3/Makefile.in     2013-02-16 23:28:47.034036869 +0100
+@@ -28,7 +28,7 @@
+ LEXFLAGS = -t 
+ INSTALL = @INSTALL@
+-INSTALL_OWNER = -o root -g 0
++INSTALL_OWNER =
+ prefix = @prefix@
+ exec_prefix = @exec_prefix@
+@@ -89,16 +89,15 @@
+ install_config: 
+       $(INSTALL) -d -m 755 $(INSTALL_OWNER) $(DESTDIR)$(ETC_DIR)
+-      if [ ! -f $(ETC_DIR)/vtund.conf ]; then \
+-        $(INSTALL) -m 600 $(INSTALL_OWNER) vtund.conf $(DESTDIR)$(ETC_DIR); \
+-      fi
++      $(INSTALL) -m 600 $(INSTALL_OWNER) vtund.conf $(DESTDIR)$(ETC_DIR);
++      $(INSTALL) -m 600 $(INSTALL_OWNER) scripts/vtund-start.conf $(DESTDIR)$(ETC_DIR);
+ install: vtund install_config install_man
+-      $(INSTALL) -d -m 755 $(INSTALL_OWNER) $(DESTDIR)$(VAR_DIR)/run
+       $(INSTALL) -d -m 755 $(INSTALL_OWNER) $(DESTDIR)$(STAT_DIR)
+       $(INSTALL) -d -m 755 $(INSTALL_OWNER) $(DESTDIR)$(LOCK_DIR)
+       $(INSTALL) -d -m 755 $(INSTALL_OWNER) $(DESTDIR)$(SBIN_DIR)
+       $(INSTALL) -m 755 $(INSTALL_OWNER) vtund $(DESTDIR)$(SBIN_DIR)
+-      $(BIN_DIR)/strip $(DESTDIR)$(SBIN_DIR)/vtund
++      $(INSTALL) -m 755 -D $(INSTALL_OWNER) scripts/vtund.rc.debian \
++              $(DESTDIR)$(ETC_DIR)/init.d/S90vtun
+ # DO NOT DELETE THIS LINE -- make depend depends on it.
diff --git a/package/vtun/0002-fix-ssl-headers-checks.patch b/package/vtun/0002-fix-ssl-headers-checks.patch
new file mode 100644 (file)
index 0000000..765411a
--- /dev/null
@@ -0,0 +1,47 @@
+configure.in: do not hard-code search patch for SSL headers
+
+Do. Not. Do. That. It breaks cross-compilation.
+
+Also use the SSL headers dir to look for blowfish headers.
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+diff -durN vtun-3.0.3.orig/configure.in vtun-3.0.3/configure.in
+--- vtun-3.0.3.orig/configure.in       2009-03-29 12:08:51.000000000 +0200
++++ vtun-3.0.3/configure.in    2013-02-16 23:44:44.004339680 +0100
+@@ -166,7 +166,7 @@
+    AC_MSG_RESULT()
+    AC_CHECKING( for md5 Library and Header files ... )
+ AC_SEARCH_HEADERS(md5.h,
+-    $SSL_HDR_DIR /usr/include/openssl "" /usr/include /usr/include/ssl /usr/local/include /usr/local/ssl/include /usr/include/sys, 
++    $SSL_HDR_DIR "" , 
+     ,
+     AC_MSG_ERROR( SSL headers not found. )
+    )
+@@ -176,7 +176,7 @@
+    AC_MSG_RESULT()
+    AC_CHECKING( for blowfish Library and Header files ... )
+    AC_SEARCH_HEADERS(blowfish.h,
+-    $BLOWFISH_HDR_DIR /usr/include/ssl /usr/include/openssl /usr/include /usr/local/include /usr/local/ssl/include  /usr/include/crypto,
++    $BLOWFISH_HDR_DIR $SSL_HDR_DIR,
+       AC_CHECK_LIB(crypto, BF_set_key,
+           [
+              LIBS="$LIBS -lcrypto"
+@@ -193,7 +193,7 @@
+    AC_MSG_RESULT()
+    AC_CHECKING( for AES Library and Header files ... )
+    AC_SEARCH_HEADERS(aes.h,
+-    $SSL_HDR_DIR /usr/include/ssl /usr/include/openssl /usr/include /usr/local/include /usr/local/ssl/include  /usr/include/crypto,
++    $SSL_HDR_DIR ,
+       AC_CHECK_LIB(crypto, AES_set_encrypt_key,
+           [
+              AC_DEFINE(HAVE_SSL_AES)
+@@ -208,7 +208,7 @@
+    AC_MSG_RESULT()
+    AC_CHECKING( for EVP Library and Header files ... )
+    AC_SEARCH_HEADERS(evp.h,
+-    $SSL_HDR_DIR /usr/include/ssl /usr/include/openssl /usr/include /usr/local/include /usr/local/ssl/include  /usr/include/crypto,
++    $SSL_HDR_DIR ,
+       AC_CHECK_LIB(crypto, EVP_EncryptInit,
+           [
+              AC_DEFINE(HAVE_SSL_EVP)
diff --git a/package/vtun/0003-fixup-configure.in.patch b/package/vtun/0003-fixup-configure.in.patch
new file mode 100644 (file)
index 0000000..cb2ac67
--- /dev/null
@@ -0,0 +1,92 @@
+configure.in: minimal syntax fixup for autoreconf
+
+This is the strictly minimal syntax fixups to make autoreconf happy...
+
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+---
+Note: configure.in is still full of incorrect syntax, but fixing it is
+a task for another day, and would have to be upstreamed. But upstream
+looks to be moribund at best, if not dead... :-(
+
+So, keep it for ourselves for now... Too bad, vtun is really helpfull.
+
+--- vtun-3.0.3.orig/configure.in       2013-02-16 23:54:52.582451817 +0100
++++ vtun-3.0.3/configure.in    2013-02-17 00:03:13.640887353 +0100
+@@ -110,10 +110,10 @@
+ AC_SEARCH_LIBS(nanosleep, rt posix4)
+ dnl Check for setproctitle in libutil
+-AC_SEARCH_LIBS(setproctitle, util bsd, AC_DEFINE(HAVE_SETPROC_TITLE) )
++AC_SEARCH_LIBS(setproctitle, util bsd, AC_DEFINE([HAVE_SETPROC_TITLE],[],[Define to set title in /proc]) )
+ if test "$SHAPER" = "yes"; then
+-   AC_DEFINE(HAVE_SHAPER)
++   AC_DEFINE([HAVE_SHAPER],[],[Define to use shapper])
+ fi
+ if test "$ZLIB" = "yes"; then
+@@ -121,7 +121,7 @@
+    AC_CHECKING( for ZLIB Library and Header files ... )
+    AC_CHECK_LIB(z, deflate,
+       LIBS="$LIBS -lz"
+-      AC_DEFINE(HAVE_ZLIB),
++      AC_DEFINE([HAVE_ZLIB],[],[Define to use ZLIB]),
+       AC_MSG_ERROR( Zlib library not found.)
+    )
+ fi
+@@ -148,7 +148,7 @@
+           AC_CHECK_LIB($I, lzo1x_decompress,
+           [
+                 LIBS="$LIBS -l"$I
+-             AC_DEFINE(HAVE_LZO)
++             AC_DEFINE([HAVE_LZO],[],[Define to use LZO])
+                 havelzo=1
+             ]
+           )
+@@ -180,8 +180,8 @@
+       AC_CHECK_LIB(crypto, BF_set_key,
+           [
+              LIBS="$LIBS -lcrypto"
+-             AC_DEFINE(HAVE_SSL)
+-             AC_DEFINE(HAVE_SSL_BLOWFISH)
++             AC_DEFINE([HAVE_SSL],[],[Define to use SSL])
++             AC_DEFINE([HAVE_SSL_BLOWFISH],[],[Define to use blowfish])
+           ],
+           AC_MSG_ERROR( SSL library not found. )
+       ),
+@@ -196,7 +196,7 @@
+     $SSL_HDR_DIR ,
+       AC_CHECK_LIB(crypto, AES_set_encrypt_key,
+           [
+-             AC_DEFINE(HAVE_SSL_AES)
++             AC_DEFINE([HAVE_SSL_AES],[],[Define to use AES])
+           ],
+           AC_MSG_ERROR( AES library not found. )
+       ),
+@@ -211,7 +211,7 @@
+     $SSL_HDR_DIR ,
+       AC_CHECK_LIB(crypto, EVP_EncryptInit,
+           [
+-             AC_DEFINE(HAVE_SSL_EVP)
++             AC_DEFINE([HAVE_SSL_EVP],[],Define to use EVP)
+           ],
+           AC_MSG_ERROR( EVP library not found. )
+       ),
+@@ -220,7 +220,7 @@
+ fi
+ if test "$NATHACK" = "yes"; then
+-   AC_DEFINE(ENABLE_NAT_HACK)
++   AC_DEFINE([ENABLE_NAT_HACK],[],[Define to use NAT hack])
+ fi
+ if test "$SOCKS" = "yes"; then
+@@ -274,6 +274,6 @@
+ REL=`echo 'BRANCH-3_X' | tr -d '$: \-' | sed 's/^[A-Za-z]*//' | sed 's/\_/\./'`
+ changequote([,])
+-AC_DEFINE_UNQUOTED(VTUN_VER, "$REL `date '+%m/%d/%Y'`")
++AC_DEFINE_UNQUOTED([VTUN_VER], ["$REL `date '+%m/%d/%Y'`"], [vtun version])
+ AC_OUTPUT(Makefile)
diff --git a/package/vtun/vtun-001-fix-installation.patch b/package/vtun/vtun-001-fix-installation.patch
deleted file mode 100644 (file)
index d9659fa..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-Makefile.in: fix installation steps
-
-Not sure what the reason for that patch is, but originally added by Ulf
-Samuelsson <ulf.samuelsson@atmel.com>, when upgrading from 2.6.x to 3.0.2.
-
-yann.morin.1998@free.fr: the initial commit in the Buildroot tree had the
-SoB by Ulf, but it was not explicitly reproduced here in the patch; so I
-added it here directly in the patch.
-
-Somewhat-signed-off-by: Ulf Samuelsson <ulf.samuelsson@atmel.com>
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
-diff -durN vtun-3.0.3.orig/Makefile.in vtun-3.0.3/Makefile.in
---- vtun-3.0.3.orig/Makefile.in        2012-07-09 06:55:38.000000000 +0200
-+++ vtun-3.0.3/Makefile.in     2013-02-16 23:28:47.034036869 +0100
-@@ -28,7 +28,7 @@
- LEXFLAGS = -t 
- INSTALL = @INSTALL@
--INSTALL_OWNER = -o root -g 0
-+INSTALL_OWNER =
- prefix = @prefix@
- exec_prefix = @exec_prefix@
-@@ -89,16 +89,15 @@
- install_config: 
-       $(INSTALL) -d -m 755 $(INSTALL_OWNER) $(DESTDIR)$(ETC_DIR)
--      if [ ! -f $(ETC_DIR)/vtund.conf ]; then \
--        $(INSTALL) -m 600 $(INSTALL_OWNER) vtund.conf $(DESTDIR)$(ETC_DIR); \
--      fi
-+      $(INSTALL) -m 600 $(INSTALL_OWNER) vtund.conf $(DESTDIR)$(ETC_DIR);
-+      $(INSTALL) -m 600 $(INSTALL_OWNER) scripts/vtund-start.conf $(DESTDIR)$(ETC_DIR);
- install: vtund install_config install_man
--      $(INSTALL) -d -m 755 $(INSTALL_OWNER) $(DESTDIR)$(VAR_DIR)/run
-       $(INSTALL) -d -m 755 $(INSTALL_OWNER) $(DESTDIR)$(STAT_DIR)
-       $(INSTALL) -d -m 755 $(INSTALL_OWNER) $(DESTDIR)$(LOCK_DIR)
-       $(INSTALL) -d -m 755 $(INSTALL_OWNER) $(DESTDIR)$(SBIN_DIR)
-       $(INSTALL) -m 755 $(INSTALL_OWNER) vtund $(DESTDIR)$(SBIN_DIR)
--      $(BIN_DIR)/strip $(DESTDIR)$(SBIN_DIR)/vtund
-+      $(INSTALL) -m 755 -D $(INSTALL_OWNER) scripts/vtund.rc.debian \
-+              $(DESTDIR)$(ETC_DIR)/init.d/S90vtun
- # DO NOT DELETE THIS LINE -- make depend depends on it.
diff --git a/package/vtun/vtun-002-fix-ssl-headers-checks.patch b/package/vtun/vtun-002-fix-ssl-headers-checks.patch
deleted file mode 100644 (file)
index 765411a..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-configure.in: do not hard-code search patch for SSL headers
-
-Do. Not. Do. That. It breaks cross-compilation.
-
-Also use the SSL headers dir to look for blowfish headers.
-
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
-
-diff -durN vtun-3.0.3.orig/configure.in vtun-3.0.3/configure.in
---- vtun-3.0.3.orig/configure.in       2009-03-29 12:08:51.000000000 +0200
-+++ vtun-3.0.3/configure.in    2013-02-16 23:44:44.004339680 +0100
-@@ -166,7 +166,7 @@
-    AC_MSG_RESULT()
-    AC_CHECKING( for md5 Library and Header files ... )
- AC_SEARCH_HEADERS(md5.h,
--    $SSL_HDR_DIR /usr/include/openssl "" /usr/include /usr/include/ssl /usr/local/include /usr/local/ssl/include /usr/include/sys, 
-+    $SSL_HDR_DIR "" , 
-     ,
-     AC_MSG_ERROR( SSL headers not found. )
-    )
-@@ -176,7 +176,7 @@
-    AC_MSG_RESULT()
-    AC_CHECKING( for blowfish Library and Header files ... )
-    AC_SEARCH_HEADERS(blowfish.h,
--    $BLOWFISH_HDR_DIR /usr/include/ssl /usr/include/openssl /usr/include /usr/local/include /usr/local/ssl/include  /usr/include/crypto,
-+    $BLOWFISH_HDR_DIR $SSL_HDR_DIR,
-       AC_CHECK_LIB(crypto, BF_set_key,
-           [
-              LIBS="$LIBS -lcrypto"
-@@ -193,7 +193,7 @@
-    AC_MSG_RESULT()
-    AC_CHECKING( for AES Library and Header files ... )
-    AC_SEARCH_HEADERS(aes.h,
--    $SSL_HDR_DIR /usr/include/ssl /usr/include/openssl /usr/include /usr/local/include /usr/local/ssl/include  /usr/include/crypto,
-+    $SSL_HDR_DIR ,
-       AC_CHECK_LIB(crypto, AES_set_encrypt_key,
-           [
-              AC_DEFINE(HAVE_SSL_AES)
-@@ -208,7 +208,7 @@
-    AC_MSG_RESULT()
-    AC_CHECKING( for EVP Library and Header files ... )
-    AC_SEARCH_HEADERS(evp.h,
--    $SSL_HDR_DIR /usr/include/ssl /usr/include/openssl /usr/include /usr/local/include /usr/local/ssl/include  /usr/include/crypto,
-+    $SSL_HDR_DIR ,
-       AC_CHECK_LIB(crypto, EVP_EncryptInit,
-           [
-              AC_DEFINE(HAVE_SSL_EVP)
diff --git a/package/vtun/vtun-003-fixup-configure.in.patch b/package/vtun/vtun-003-fixup-configure.in.patch
deleted file mode 100644 (file)
index cb2ac67..0000000
+++ /dev/null
@@ -1,92 +0,0 @@
-configure.in: minimal syntax fixup for autoreconf
-
-This is the strictly minimal syntax fixups to make autoreconf happy...
-
-Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
-
----
-Note: configure.in is still full of incorrect syntax, but fixing it is
-a task for another day, and would have to be upstreamed. But upstream
-looks to be moribund at best, if not dead... :-(
-
-So, keep it for ourselves for now... Too bad, vtun is really helpfull.
-
---- vtun-3.0.3.orig/configure.in       2013-02-16 23:54:52.582451817 +0100
-+++ vtun-3.0.3/configure.in    2013-02-17 00:03:13.640887353 +0100
-@@ -110,10 +110,10 @@
- AC_SEARCH_LIBS(nanosleep, rt posix4)
- dnl Check for setproctitle in libutil
--AC_SEARCH_LIBS(setproctitle, util bsd, AC_DEFINE(HAVE_SETPROC_TITLE) )
-+AC_SEARCH_LIBS(setproctitle, util bsd, AC_DEFINE([HAVE_SETPROC_TITLE],[],[Define to set title in /proc]) )
- if test "$SHAPER" = "yes"; then
--   AC_DEFINE(HAVE_SHAPER)
-+   AC_DEFINE([HAVE_SHAPER],[],[Define to use shapper])
- fi
- if test "$ZLIB" = "yes"; then
-@@ -121,7 +121,7 @@
-    AC_CHECKING( for ZLIB Library and Header files ... )
-    AC_CHECK_LIB(z, deflate,
-       LIBS="$LIBS -lz"
--      AC_DEFINE(HAVE_ZLIB),
-+      AC_DEFINE([HAVE_ZLIB],[],[Define to use ZLIB]),
-       AC_MSG_ERROR( Zlib library not found.)
-    )
- fi
-@@ -148,7 +148,7 @@
-           AC_CHECK_LIB($I, lzo1x_decompress,
-           [
-                 LIBS="$LIBS -l"$I
--             AC_DEFINE(HAVE_LZO)
-+             AC_DEFINE([HAVE_LZO],[],[Define to use LZO])
-                 havelzo=1
-             ]
-           )
-@@ -180,8 +180,8 @@
-       AC_CHECK_LIB(crypto, BF_set_key,
-           [
-              LIBS="$LIBS -lcrypto"
--             AC_DEFINE(HAVE_SSL)
--             AC_DEFINE(HAVE_SSL_BLOWFISH)
-+             AC_DEFINE([HAVE_SSL],[],[Define to use SSL])
-+             AC_DEFINE([HAVE_SSL_BLOWFISH],[],[Define to use blowfish])
-           ],
-           AC_MSG_ERROR( SSL library not found. )
-       ),
-@@ -196,7 +196,7 @@
-     $SSL_HDR_DIR ,
-       AC_CHECK_LIB(crypto, AES_set_encrypt_key,
-           [
--             AC_DEFINE(HAVE_SSL_AES)
-+             AC_DEFINE([HAVE_SSL_AES],[],[Define to use AES])
-           ],
-           AC_MSG_ERROR( AES library not found. )
-       ),
-@@ -211,7 +211,7 @@
-     $SSL_HDR_DIR ,
-       AC_CHECK_LIB(crypto, EVP_EncryptInit,
-           [
--             AC_DEFINE(HAVE_SSL_EVP)
-+             AC_DEFINE([HAVE_SSL_EVP],[],Define to use EVP)
-           ],
-           AC_MSG_ERROR( EVP library not found. )
-       ),
-@@ -220,7 +220,7 @@
- fi
- if test "$NATHACK" = "yes"; then
--   AC_DEFINE(ENABLE_NAT_HACK)
-+   AC_DEFINE([ENABLE_NAT_HACK],[],[Define to use NAT hack])
- fi
- if test "$SOCKS" = "yes"; then
-@@ -274,6 +274,6 @@
- REL=`echo 'BRANCH-3_X' | tr -d '$: \-' | sed 's/^[A-Za-z]*//' | sed 's/\_/\./'`
- changequote([,])
--AC_DEFINE_UNQUOTED(VTUN_VER, "$REL `date '+%m/%d/%Y'`")
-+AC_DEFINE_UNQUOTED([VTUN_VER], ["$REL `date '+%m/%d/%Y'`"], [vtun version])
- AC_OUTPUT(Makefile)
diff --git a/package/webkit/0001-build-fix-for-32-bit-autotools.patch b/package/webkit/0001-build-fix-for-32-bit-autotools.patch
new file mode 100644 (file)
index 0000000..d7765ea
--- /dev/null
@@ -0,0 +1,34 @@
+Add missing symbol for WebCore::TextIterator::getLocationAndLengthFromRange
+
+Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
+
+From f5bb58f9096061f00c948e668335811d364ba360 Mon Sep 17 00:00:00 2001
+From: "kov@webkit.org" <kov@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
+Date: Thu, 7 Feb 2013 13:48:46 +0000
+Subject: [PATCH] Unreviewed build fix after r141196 for 32 bits autotools.
+
+* Source/autotools/symbols.filter: restore 32 bits version of the
+WebCore::TextIterator::getLocationAndLengthFromRange(WebCore::Node*,
+WebCore::Range const*, unsigned int&, unsigned int&) symbol.
+
+git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142105 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+---
+ ChangeLog                       | 8 ++++++++
+ Source/autotools/symbols.filter | 1 +
+ 2 files changed, 9 insertions(+)
+
+diff --git a/Source/autotools/symbols.filter b/Source/autotools/symbols.filter
+index 9d730b3..2edefaf 100644
+--- a/Source/autotools/symbols.filter
++++ b/Source/autotools/symbols.filter
+@@ -57,6 +57,7 @@ _ZN7WebCore11HistoryItem16setDocumentStateERKN3WTF6VectorINS1_6StringELj0EEE;
+ _ZN7WebCore11HistoryItem16setDocumentStateERKN3WTF6VectorINS1_6StringELm0EEE;
+ _ZN7WebCore11MemoryCache14resourceForURLERKNS_4KURLE;
+ _ZN7WebCore12TextIterator26rangeFromLocationAndLengthEPNS_13ContainerNodeEiib;
++_ZN7WebCore12TextIterator29getLocationAndLengthFromRangeEPNS_4NodeEPKNS_5RangeERjS6_;
+ _ZN7WebCore12TextIterator29getLocationAndLengthFromRangeEPNS_4NodeEPKNS_5RangeERmS6_;
+ _ZN7WebCore12PrintContext20pageNumberForElementEPNS_7ElementERKNS_9FloatSizeE;
+ _ZN7WebCore13createWrapperEPN3JSC9ExecStateEPNS_17JSDOMGlobalObjectEPNS_4NodeE;
+-- 
+1.8.3.2
+
diff --git a/package/webkit/0002-build-fix-for-gtklauncher.patch b/package/webkit/0002-build-fix-for-gtklauncher.patch
new file mode 100644 (file)
index 0000000..9a840b6
--- /dev/null
@@ -0,0 +1,51 @@
+Make gstreamer support conditional
+
+Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
+
+From f1055f61bce46eccf8dc0aa017113a08d3d71944 Mon Sep 17 00:00:00 2001
+From: "commit-queue@webkit.org"
+ <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
+Date: Fri, 15 Mar 2013 07:13:51 +0000
+Subject: [PATCH] Build fix for Tools/GtkLauncher/Programs_GtkLauncher-main.o
+ if gstreamer is not installed https://bugs.webkit.org/show_bug.cgi?id=112394
+
+Patch by Tobias Mueller <tobiasmue@gnome.org> on 2013-03-15
+Reviewed by Philippe Normand.
+
+* GtkLauncher/main.c:
+(main): Guard using the gstreamer function with #ifdef WTF_USE_GSTREAMER
+
+git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145881 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+---
+ Tools/ChangeLog          | 10 ++++++++++
+ Tools/GtkLauncher/main.c |  5 ++++-
+ 2 files changed, 14 insertions(+), 1 deletion(-)
+
+diff --git a/Tools/GtkLauncher/main.c b/Tools/GtkLauncher/main.c
+index 32baf4a..84c8833 100644
+--- a/Tools/GtkLauncher/main.c
++++ b/Tools/GtkLauncher/main.c
+@@ -28,7 +28,9 @@
+ #include "autotoolsconfig.h"
+ #include "LauncherInspectorWindow.h"
+ #include <errno.h>
++#ifdef WTF_USE_GSTREAMER
+ #include <gst/gst.h>
++#endif
+ #include <gtk/gtk.h>
+ #include <stdlib.h>
+ #include <string.h>
+@@ -489,8 +491,9 @@ int main(int argc, char* argv[])
+     GOptionContext *context = g_option_context_new(0);
+     g_option_context_add_main_entries(context, commandLineOptions, 0);
+     g_option_context_add_group(context, gtk_get_option_group(TRUE));
++#ifdef WTF_USE_GSTREAMER
+     g_option_context_add_group(context, gst_init_get_option_group());
+-
++#endif
+     webkitSettings = webkit_web_settings_new();
+     g_object_set(webkitSettings, "enable-developer-extras", TRUE, NULL);
+     if (!addWebSettingsGroupToContext(context, webkitSettings)) {
+-- 
+1.8.3.2
+
diff --git a/package/webkit/0003-detect-harfbuzz-icu.patch b/package/webkit/0003-detect-harfbuzz-icu.patch
new file mode 100644 (file)
index 0000000..dc93c67
--- /dev/null
@@ -0,0 +1,28 @@
+harfbuzz-icu detections based on the following upstream commits
+
+- 5f3ae29ffb29c499c1825578ba7f3ffcbf1aa8b9
+- ad2a23ec44b692bde43a13b658990770caa8dfc5
+- 22b4786377142424bfb6562ff029997acd0846d1
+
+Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
+
+Index: webkit-1.11.5/configure.ac
+===================================================================
+--- webkit-1.11.5.orig/configure.ac
++++ webkit-1.11.5/configure.ac
+@@ -938,6 +938,15 @@ PKG_CHECK_MODULES([FREETYPE],
+                   freetype2 >= $FREETYPE2_REQUIRED_VERSION
+                   harfbuzz])
+ fi
++# HarfBuzz 0.9.18 splits harbuzz-icu into a separate library.
++# Since we support earlier HarfBuzz versions we keep this conditional for now.
++m4_define([harfbuzz_required_version], [0.9.7])
++if $PKG_CONFIG --atleast-version 0.9.18 harfbuzz; then
++      PKG_CHECK_MODULES([HARFBUZZ_ICU], [harfbuzz-icu >= $harfbuzz_required_version])
++      FREETYPE_CFLAGS+=" $HARFBUZZ_ICU_CFLAGS"
++      FREETYPE_LIBS+=" $HARFBUZZ_ICU_LIBS"
++fi
++
+ AC_SUBST([FREETYPE_CFLAGS])
+ AC_SUBST([FREETYPE_LIBS])
diff --git a/package/webkit/0004-disable-docrebase.patch b/package/webkit/0004-disable-docrebase.patch
new file mode 100644 (file)
index 0000000..2692d61
--- /dev/null
@@ -0,0 +1,27 @@
+This patch prevents documentation from being rebased or installed. This
+prevents an error when gtk-doc --rebase is called.
+
+Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
+Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
+
+Index: webkit-1.11.5/Tools/GNUmakefile.am
+===================================================================
+--- webkit-1.11.5.orig/Tools/GNUmakefile.am
++++ webkit-1.11.5/Tools/GNUmakefile.am
+@@ -308,6 +308,8 @@ EXTRA_DIST += \
+       Tools/Scripts/webkit-build-directory \
+       Tools/Scripts/webkitdirs.pm
++if ENABLE_GTK_DOC
++
+ docs: docs-build.stamp
+ .PHONY : docs
+ DISTCLEANFILES += docs-build.stamp
+@@ -412,7 +414,6 @@ if ENABLE_WEBKIT2
+       rm -rf $${installdir}
+ endif
+-if ENABLE_GTK_DOC
+ all: docs-build.stamp
+ endif
diff --git a/package/webkit/0005-disable-tests.patch b/package/webkit/0005-disable-tests.patch
new file mode 100644 (file)
index 0000000..6fa6daa
--- /dev/null
@@ -0,0 +1,80 @@
+This prevents the Webkit test suites from being built.
+
+Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
+----
+Index: webkit-1.9.6/GNUmakefile.am
+===================================================================
+--- webkit-1.9.6.orig/GNUmakefile.am   2012-08-06 03:17:24.000000000 -0500
++++ webkit-1.9.6/GNUmakefile.am        2013-05-28 10:08:53.645129501 -0500
+@@ -282,11 +282,14 @@
+ include Tools/DumpRenderTree/gtk/GNUmakefile.ImageDiff.am
+ include Source/WebKit2/GNUmakefile.am
+-include Source/WebKit2/UIProcess/API/gtk/tests/GNUmakefile.am
+ include Tools/MiniBrowser/gtk/GNUmakefile.am
++
++if ENABLE_TESTS
++include Source/WebKit2/UIProcess/API/gtk/tests/GNUmakefile.am
+ include Tools/WebKitTestRunner/GNUmakefile.am
+ include Source/ThirdParty/gtest/GNUmakefile.am
+ include Tools/TestWebKitAPI/GNUmakefile.am
++endif # ENABLE_TESTS
+ # [GTK] Refactor the translations now that we have webkit2
+ # https://bugs.webkit.org/show_bug.cgi?id=55153
+Index: webkit-1.9.6/Source/WebKit/gtk/GNUmakefile.am
+===================================================================
+--- webkit-1.9.6.orig/Source/WebKit/gtk/GNUmakefile.am 2012-07-19 05:02:29.000000000 -0500
++++ webkit-1.9.6/Source/WebKit/gtk/GNUmakefile.am      2013-05-28 10:09:49.277130516 -0500
+@@ -413,6 +413,7 @@
+ dist_resources_DATA = \
+       $(shell ls $(srcdir)/Source/WebKit/gtk/resources/*.html)
++if ENABLE_TESTS
+ # Build unit tests
+ webkit_tests_cflags = \
+       -fno-strict-aliasing \
+@@ -613,6 +614,8 @@
+ Programs_unittests_testcopyandpaste_LDADD = $(webkit_tests_ldadd)
+ Programs_unittests_testcopyandpaste_LDFLAGS = $(webkit_tests_ldflags)
++endif # ENABLE_TESTS
++
+ # Project-wide clean rules
+ # Files that will be cleaned
+ CLEANFILES += \
+Index: webkit-1.9.6/configure.ac
+===================================================================
+--- webkit-1.9.6.orig/configure.ac     2012-08-06 08:45:10.000000000 -0500
++++ webkit-1.9.6/configure.ac  2013-05-28 10:07:55.817128445 -0500
+@@ -516,6 +516,14 @@
+ AC_SUBST(CAIRO_CFLAGS)
+ AC_SUBST(CAIRO_LIBS)
++# check wheter to build tests
++AC_MSG_CHECKING([wheter to build tests])
++AC_ARG_ENABLE(tests,
++              AC_HELP_STRING([--enable-tests],
++                             [turn on tests [default=no]]),
++              [],[enable_debug="no"])
++AC_MSG_RESULT([$enable_tests])
++
+ # check whether to build with debugging enabled
+ AC_MSG_CHECKING([whether to do a debug build])
+ AC_ARG_ENABLE(debug,
+@@ -1423,6 +1431,7 @@
+ AM_CONDITIONAL([USE_FARSTREAM], [test "$have_farstream" = "yes"])
+ # WebKit feature conditionals
++AM_CONDITIONAL([ENABLE_TESTS],[test "$enable_tests" = "yes"])
+ AM_CONDITIONAL([ENABLE_DEBUG],[test "$enable_debug_features" = "yes"])
+ AM_CONDITIONAL([ENABLE_UNSTABLE_FEATURES],[test "$enable_unstable_features" = "yes"])
+ AM_CONDITIONAL([ENABLE_WEBGL],[test "$enable_webgl" = "yes"])
+@@ -1534,6 +1543,7 @@
+ WebKit was configured with the following options:
+ Build configuration:
++ Enable tests (slow)                                      : $enable_tests
+  Enable debugging (slow)                                  : $enable_debug
+  Compile with debug symbols (slow)                        : $enable_debug_symbols
+  Enable debug features (slow)                             : $enable_debug_features
diff --git a/package/webkit/0006-execinfo_h.patch b/package/webkit/0006-execinfo_h.patch
new file mode 100644 (file)
index 0000000..f5508a1
--- /dev/null
@@ -0,0 +1,20 @@
+Fixes uclibc build as uclibc does not include backtrace functionality
+
+Signed-of-by: Spenser Gilliland <spenser@gillilanding.com>
+Signed-of-by: Markos Chandras <markos.chandras@imgtec.com>
+
+Index: webkit-1.11.5/Source/WTF/wtf/Assertions.cpp
+===================================================================
+--- webkit-1.11.5.orig/Source/WTF/wtf/Assertions.cpp
++++ webkit-1.11.5/Source/WTF/wtf/Assertions.cpp
+@@ -61,8 +61,10 @@
+ #if (OS(DARWIN) || (OS(LINUX) && !defined(__UCLIBC__))) && !OS(ANDROID)
+ #include <cxxabi.h>
+ #include <dlfcn.h>
++#if !defined(__UCLIBC__)
+ #include <execinfo.h>
+ #endif
++#endif
+ #if OS(ANDROID)
+ #include "android/log.h"
diff --git a/package/webkit/0007-mips-dfg.patch b/package/webkit/0007-mips-dfg.patch
new file mode 100644 (file)
index 0000000..3925951
--- /dev/null
@@ -0,0 +1,1490 @@
+Upstream patch for DFG implementation for MIPS
+
+Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
+
+From c921d19863ccf66bdd0ffa5d38eaf05efab6b136 Mon Sep 17 00:00:00 2001
+From: "commit-queue@webkit.org"
+ <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
+Date: Mon, 18 Feb 2013 19:25:23 +0000
+Subject: [PATCH] MIPS DFG implementation.
+ https://bugs.webkit.org/show_bug.cgi?id=101328
+
+Patch by Balazs Kilvady <kilvadyb@homejinni.com> on 2013-02-18
+Reviewed by Oliver Hunt.
+
+DFG implementation for MIPS.
+
+Source/JavaScriptCore:
+
+* assembler/MIPSAssembler.h:
+(JSC::MIPSAssembler::MIPSAssembler):
+(JSC::MIPSAssembler::sllv):
+(JSC::MIPSAssembler::movd):
+(MIPSAssembler):
+(JSC::MIPSAssembler::negd):
+(JSC::MIPSAssembler::labelForWatchpoint):
+(JSC::MIPSAssembler::label):
+(JSC::MIPSAssembler::vmov):
+(JSC::MIPSAssembler::linkDirectJump):
+(JSC::MIPSAssembler::maxJumpReplacementSize):
+(JSC::MIPSAssembler::revertJumpToMove):
+(JSC::MIPSAssembler::replaceWithJump):
+* assembler/MacroAssembler.h:
+(MacroAssembler):
+(JSC::MacroAssembler::poke):
+* assembler/MacroAssemblerMIPS.h:
+(JSC::MacroAssemblerMIPS::add32):
+(MacroAssemblerMIPS):
+(JSC::MacroAssemblerMIPS::and32):
+(JSC::MacroAssemblerMIPS::lshift32):
+(JSC::MacroAssemblerMIPS::mul32):
+(JSC::MacroAssemblerMIPS::or32):
+(JSC::MacroAssemblerMIPS::rshift32):
+(JSC::MacroAssemblerMIPS::urshift32):
+(JSC::MacroAssemblerMIPS::sub32):
+(JSC::MacroAssemblerMIPS::xor32):
+(JSC::MacroAssemblerMIPS::store32):
+(JSC::MacroAssemblerMIPS::jump):
+(JSC::MacroAssemblerMIPS::branchAdd32):
+(JSC::MacroAssemblerMIPS::branchMul32):
+(JSC::MacroAssemblerMIPS::branchSub32):
+(JSC::MacroAssemblerMIPS::branchNeg32):
+(JSC::MacroAssemblerMIPS::call):
+(JSC::MacroAssemblerMIPS::loadDouble):
+(JSC::MacroAssemblerMIPS::moveDouble):
+(JSC::MacroAssemblerMIPS::swapDouble):
+(JSC::MacroAssemblerMIPS::subDouble):
+(JSC::MacroAssemblerMIPS::mulDouble):
+(JSC::MacroAssemblerMIPS::divDouble):
+(JSC::MacroAssemblerMIPS::negateDouble):
+(JSC::MacroAssemblerMIPS::branchEqual):
+(JSC::MacroAssemblerMIPS::branchNotEqual):
+(JSC::MacroAssemblerMIPS::branchTruncateDoubleToInt32):
+(JSC::MacroAssemblerMIPS::branchTruncateDoubleToUint32):
+(JSC::MacroAssemblerMIPS::truncateDoubleToInt32):
+(JSC::MacroAssemblerMIPS::truncateDoubleToUint32):
+(JSC::MacroAssemblerMIPS::branchDoubleNonZero):
+(JSC::MacroAssemblerMIPS::branchDoubleZeroOrNaN):
+(JSC::MacroAssemblerMIPS::invert):
+(JSC::MacroAssemblerMIPS::replaceWithJump):
+(JSC::MacroAssemblerMIPS::maxJumpReplacementSize):
+* dfg/DFGAssemblyHelpers.h:
+(AssemblyHelpers):
+(JSC::DFG::AssemblyHelpers::preserveReturnAddressAfterCall):
+(JSC::DFG::AssemblyHelpers::restoreReturnAddressBeforeReturn):
+(JSC::DFG::AssemblyHelpers::debugCall):
+* dfg/DFGCCallHelpers.h:
+(CCallHelpers):
+(JSC::DFG::CCallHelpers::setupArguments):
+(JSC::DFG::CCallHelpers::setupArgumentsWithExecState):
+* dfg/DFGFPRInfo.h:
+(DFG):
+(FPRInfo):
+(JSC::DFG::FPRInfo::toRegister):
+(JSC::DFG::FPRInfo::toIndex):
+(JSC::DFG::FPRInfo::debugName):
+* dfg/DFGGPRInfo.h:
+(DFG):
+(GPRInfo):
+(JSC::DFG::GPRInfo::toRegister):
+(JSC::DFG::GPRInfo::toIndex):
+(JSC::DFG::GPRInfo::debugName):
+* dfg/DFGSpeculativeJIT.h:
+(SpeculativeJIT):
+* jit/JSInterfaceJIT.h:
+(JSInterfaceJIT):
+* runtime/JSGlobalData.h:
+(JSC::ScratchBuffer::allocationSize):
+(ScratchBuffer):
+
+Source/WTF:
+
+* wtf/Platform.h:
+
+git-svn-id: http://svn.webkit.org/repository/webkit/trunk@143247 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+---
+ Source/JavaScriptCore/ChangeLog                    |  90 ++++
+ Source/JavaScriptCore/assembler/MIPSAssembler.h    | 109 ++++-
+ Source/JavaScriptCore/assembler/MacroAssembler.h   |   7 +
+ .../JavaScriptCore/assembler/MacroAssemblerMIPS.h  | 480 +++++++++++++++++++--
+ Source/JavaScriptCore/dfg/DFGAssemblyHelpers.h     |  19 +-
+ Source/JavaScriptCore/dfg/DFGCCallHelpers.h        |  92 ++--
+ Source/JavaScriptCore/dfg/DFGFPRInfo.h             |  68 +++
+ Source/JavaScriptCore/dfg/DFGGPRInfo.h             |  67 +++
+ Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h      |   4 +-
+ Source/JavaScriptCore/jit/JSInterfaceJIT.h         |   4 +
+ Source/JavaScriptCore/runtime/JSGlobalData.h       |   6 +-
+ Source/WTF/ChangeLog                               |  11 +
+ Source/WTF/wtf/Platform.h                          |   4 +
+ 13 files changed, 888 insertions(+), 73 deletions(-)
+
+diff --git a/Source/JavaScriptCore/assembler/MIPSAssembler.h b/Source/JavaScriptCore/assembler/MIPSAssembler.h
+index 026f87e..7f553bb 100644
+--- a/Source/JavaScriptCore/assembler/MIPSAssembler.h
++++ b/Source/JavaScriptCore/assembler/MIPSAssembler.h
+@@ -152,6 +152,8 @@ public:
+     typedef SegmentedVector<AssemblerLabel, 64> Jumps;
+     MIPSAssembler()
++        : m_indexOfLastWatchpoint(INT_MIN)
++        , m_indexOfTailOfLastWatchpoint(INT_MIN)
+     {
+     }
+@@ -325,7 +327,7 @@ public:
+         emitInst(0x00000000 | (rd << OP_SH_RD) | (rt << OP_SH_RT) | ((shamt & 0x1f) << OP_SH_SHAMT));
+     }
+-    void sllv(RegisterID rd, RegisterID rt, int rs)
++    void sllv(RegisterID rd, RegisterID rt, RegisterID rs)
+     {
+         emitInst(0x00000004 | (rd << OP_SH_RD) | (rt << OP_SH_RT) | (rs << OP_SH_RS));
+     }
+@@ -527,6 +529,16 @@ public:
+         emitInst(0x46200004 | (fd << OP_SH_FD) | (fs << OP_SH_FS));
+     }
++    void movd(FPRegisterID fd, FPRegisterID fs)
++    {
++        emitInst(0x46200006 | (fd << OP_SH_FD) | (fs << OP_SH_FS));
++    }
++
++    void negd(FPRegisterID fd, FPRegisterID fs)
++    {
++        emitInst(0x46200007 | (fd << OP_SH_FD) | (fs << OP_SH_FS));
++    }
++
+     void truncwd(FPRegisterID fd, FPRegisterID fs)
+     {
+         emitInst(0x4620000d | (fd << OP_SH_FD) | (fs << OP_SH_FS));
+@@ -619,9 +631,24 @@ public:
+         return m_buffer.label();
+     }
++    AssemblerLabel labelForWatchpoint()
++    {
++        AssemblerLabel result = m_buffer.label();
++        if (static_cast<int>(result.m_offset) != m_indexOfLastWatchpoint)
++            result = label();
++        m_indexOfLastWatchpoint = result.m_offset;
++        m_indexOfTailOfLastWatchpoint = result.m_offset + maxJumpReplacementSize();
++        return result;
++    }
++
+     AssemblerLabel label()
+     {
+-        return m_buffer.label();
++        AssemblerLabel result = m_buffer.label();
++        while (UNLIKELY(static_cast<int>(result.m_offset) < m_indexOfTailOfLastWatchpoint)) {
++            nop();
++            result = m_buffer.label();
++        }
++        return result;
+     }
+     AssemblerLabel align(int alignment)
+@@ -664,14 +691,24 @@ public:
+     // Assembly helpers for moving data between fp and registers.
+     void vmov(RegisterID rd1, RegisterID rd2, FPRegisterID rn)
+     {
++#if WTF_MIPS_ISA_REV(2) && WTF_MIPS_FP64
++        mfc1(rd1, rn);
++        mfhc1(rd2, rn);
++#else
+         mfc1(rd1, rn);
+         mfc1(rd2, FPRegisterID(rn + 1));
++#endif
+     }
+     void vmov(FPRegisterID rd, RegisterID rn1, RegisterID rn2)
+     {
++#if WTF_MIPS_ISA_REV(2) && WTF_MIPS_FP64
++        mtc1(rn1, rd);
++        mthc1(rn2, rd);
++#else
+         mtc1(rn1, rd);
+         mtc1(rn2, FPRegisterID(rd + 1));
++#endif
+     }
+     static unsigned getCallReturnOffset(AssemblerLabel call)
+@@ -688,6 +725,35 @@ public:
+     // writable region of memory; to modify the code in an execute-only execuable
+     // pool the 'repatch' and 'relink' methods should be used.
++    static size_t linkDirectJump(void* code, void* to)
++    {
++        MIPSWord* insn = reinterpret_cast<MIPSWord*>(reinterpret_cast<intptr_t>(code));
++        size_t ops = 0;
++        int32_t slotAddr = reinterpret_cast<int>(insn) + 4;
++        int32_t toAddr = reinterpret_cast<int>(to);
++
++        if ((slotAddr & 0xf0000000) != (toAddr & 0xf0000000)) {
++            // lui
++            *insn = 0x3c000000 | (MIPSRegisters::t9 << OP_SH_RT) | ((toAddr >> 16) & 0xffff);
++            ++insn;
++            // ori
++            *insn = 0x34000000 | (MIPSRegisters::t9 << OP_SH_RT) | (MIPSRegisters::t9 << OP_SH_RS) | (toAddr & 0xffff);
++            ++insn;
++            // jr
++            *insn = 0x00000008 | (MIPSRegisters::t9 << OP_SH_RS);
++            ++insn;
++            ops = 4 * sizeof(MIPSWord);
++        } else {
++            // j
++            *insn = 0x08000000 | ((toAddr & 0x0fffffff) >> 2);
++            ++insn;
++            ops = 2 * sizeof(MIPSWord);
++        }
++        // nop
++        *insn = 0x00000000;
++        return ops;
++    }
++
+     void linkJump(AssemblerLabel from, AssemblerLabel to)
+     {
+         ASSERT(to.isSet());
+@@ -825,29 +891,36 @@ public:
+ #endif
+     }
+-    static void revertJumpToMove(void* instructionStart, RegisterID rt, int imm)
++    static ptrdiff_t maxJumpReplacementSize()
+     {
+-        MIPSWord* insn = static_cast<MIPSWord*>(instructionStart) + 1;
+-        ASSERT((*insn & 0xfc000000) == 0x34000000);
+-        *insn = (*insn & 0xfc1f0000) | (imm & 0xffff);
+-        cacheFlush(insn, sizeof(MIPSWord));
++        return sizeof(MIPSWord) * 4;
+     }
+-    static void replaceWithJump(void* instructionStart, void* to)
++    static void revertJumpToMove(void* instructionStart, RegisterID rt, int imm)
+     {
+-        MIPSWord* instruction = reinterpret_cast<MIPSWord*>(instructionStart);
+-        intptr_t jumpTo = reinterpret_cast<intptr_t>(to);
++        MIPSWord* insn = static_cast<MIPSWord*>(instructionStart);
++        size_t codeSize = 2 * sizeof(MIPSWord);
+         // lui
+-        instruction[0] = 0x3c000000 | (MIPSRegisters::t9 << OP_SH_RT) | ((jumpTo >> 16) & 0xffff);
++        *insn = 0x3c000000 | (rt << OP_SH_RT) | ((imm >> 16) & 0xffff);
++        ++insn;
+         // ori
+-        instruction[1] = 0x34000000 | (MIPSRegisters::t9 << OP_SH_RT) | (MIPSRegisters::t9 << OP_SH_RS) | (jumpTo & 0xffff);
+-        // jr
+-        instruction[2] = 0x00000008 | (MIPSRegisters::t9 << OP_SH_RS);
+-        // nop
+-        instruction[3] = 0x0;
++        *insn = 0x34000000 | (rt << OP_SH_RS) | (rt << OP_SH_RT) | (imm & 0xffff);
++        ++insn;
++        // if jr $t9
++        if (*insn == 0x03200008) {
++            *insn = 0x00000000;
++            codeSize += sizeof(MIPSWord);
++        }
++        cacheFlush(insn, codeSize);
++    }
+-        cacheFlush(instruction, sizeof(MIPSWord) * 4);
++    static void replaceWithJump(void* instructionStart, void* to)
++    {
++        ASSERT(!(bitwise_cast<uintptr_t>(instructionStart) & 3));
++        ASSERT(!(bitwise_cast<uintptr_t>(to) & 3));
++        size_t ops = linkDirectJump(instructionStart, to);
++        cacheFlush(instructionStart, ops);
+     }
+     static void replaceWithLoad(void* instructionStart)
+@@ -1023,6 +1096,8 @@ private:
+     AssemblerBuffer m_buffer;
+     Jumps m_jumps;
++    int m_indexOfLastWatchpoint;
++    int m_indexOfTailOfLastWatchpoint;
+ };
+ } // namespace JSC
+diff --git a/Source/JavaScriptCore/assembler/MacroAssembler.h b/Source/JavaScriptCore/assembler/MacroAssembler.h
+index 60a93db..1f0c3de 100644
+--- a/Source/JavaScriptCore/assembler/MacroAssembler.h
++++ b/Source/JavaScriptCore/assembler/MacroAssembler.h
+@@ -200,6 +200,13 @@ public:
+     }
+ #endif
+     
++#if CPU(MIPS)
++    void poke(FPRegisterID src, int index = 0)
++    {
++        ASSERT(!(index & 1));
++        storeDouble(src, addressForPoke(index));
++    }
++#endif
+     // Backwards banches, these are currently all implemented using existing forwards branch mechanisms.
+     void branchPtr(RelationalCondition cond, RegisterID op1, TrustedImmPtr imm, Label target)
+diff --git a/Source/JavaScriptCore/assembler/MacroAssemblerMIPS.h b/Source/JavaScriptCore/assembler/MacroAssemblerMIPS.h
+index 43ad434..4f14960 100644
+--- a/Source/JavaScriptCore/assembler/MacroAssemblerMIPS.h
++++ b/Source/JavaScriptCore/assembler/MacroAssemblerMIPS.h
+@@ -114,6 +114,11 @@ public:
+         m_assembler.addu(dest, dest, src);
+     }
++    void add32(RegisterID op1, RegisterID op2, RegisterID dest)
++    {
++        m_assembler.addu(dest, op1, op2);
++    }
++
+     void add32(TrustedImm32 imm, RegisterID dest)
+     {
+         add32(imm, dest, dest);
+@@ -267,6 +272,11 @@ public:
+         m_assembler.andInsn(dest, dest, src);
+     }
++    void and32(RegisterID op1, RegisterID op2, RegisterID dest)
++    {
++        m_assembler.andInsn(dest, op1, op2);
++    }
++
+     void and32(TrustedImm32 imm, RegisterID dest)
+     {
+         if (!imm.m_value && !m_fixedWidth)
+@@ -283,9 +293,16 @@ public:
+         }
+     }
+-    void lshift32(TrustedImm32 imm, RegisterID dest)
++    void and32(TrustedImm32 imm, RegisterID src, RegisterID dest)
+     {
+-        m_assembler.sll(dest, dest, imm.m_value);
++        if (!imm.m_value && !m_fixedWidth)
++            move(MIPSRegisters::zero, dest);
++        else if (imm.m_value > 0 && imm.m_value < 65535 && !m_fixedWidth)
++            m_assembler.andi(dest, src, imm.m_value);
++        else {
++            move(imm, immTempRegister);
++            m_assembler.andInsn(dest, src, immTempRegister);
++        }
+     }
+     void lshift32(RegisterID shiftAmount, RegisterID dest)
+@@ -293,11 +310,33 @@ public:
+         m_assembler.sllv(dest, dest, shiftAmount);
+     }
++    void lshift32(RegisterID src, RegisterID shiftAmount, RegisterID dest)
++    {
++        m_assembler.sllv(dest, src, shiftAmount);
++    }
++
++    void lshift32(TrustedImm32 imm, RegisterID dest)
++    {
++        move(imm, immTempRegister);
++        m_assembler.sllv(dest, dest, immTempRegister);
++    }
++
++    void lshift32(RegisterID src, TrustedImm32 imm, RegisterID dest)
++    {
++        move(imm, immTempRegister);
++        m_assembler.sllv(dest, src, immTempRegister);
++    }
++
+     void mul32(RegisterID src, RegisterID dest)
+     {
+         m_assembler.mul(dest, dest, src);
+     }
++    void mul32(RegisterID op1, RegisterID op2, RegisterID dest)
++    {
++        m_assembler.mul(dest, op1, op2);
++    }
++
+     void mul32(TrustedImm32 imm, RegisterID src, RegisterID dest)
+     {
+         if (!imm.m_value && !m_fixedWidth)
+@@ -348,6 +387,24 @@ public:
+         m_assembler.orInsn(dest, dest, dataTempRegister);
+     }
++    void or32(TrustedImm32 imm, RegisterID src, RegisterID dest)
++    {
++        if (!imm.m_value && !m_fixedWidth)
++            return;
++
++        if (imm.m_value > 0 && imm.m_value < 65535 && !m_fixedWidth) {
++            m_assembler.ori(dest, src, imm.m_value);
++            return;
++        }
++
++        /*
++            li      dataTemp, imm
++            or      dest, src, dataTemp
++        */
++        move(imm, dataTempRegister);
++        m_assembler.orInsn(dest, src, dataTempRegister);
++    }
++
+     void or32(RegisterID src, AbsoluteAddress dest)
+     {
+         load32(dest.m_ptr, dataTempRegister);
+@@ -360,6 +417,11 @@ public:
+         m_assembler.srav(dest, dest, shiftAmount);
+     }
++    void rshift32(RegisterID src, RegisterID shiftAmount, RegisterID dest)
++    {
++        m_assembler.srav(dest, src, shiftAmount);
++    }
++
+     void rshift32(TrustedImm32 imm, RegisterID dest)
+     {
+         m_assembler.sra(dest, dest, imm.m_value);
+@@ -375,16 +437,31 @@ public:
+         m_assembler.srlv(dest, dest, shiftAmount);
+     }
++    void urshift32(RegisterID src, RegisterID shiftAmount, RegisterID dest)
++    {
++        m_assembler.srlv(dest, src, shiftAmount);
++    }
++
+     void urshift32(TrustedImm32 imm, RegisterID dest)
+     {
+         m_assembler.srl(dest, dest, imm.m_value);
+     }
++    void urshift32(RegisterID src, TrustedImm32 imm, RegisterID dest)
++    {
++        m_assembler.srl(dest, src, imm.m_value);
++    }
++
+     void sub32(RegisterID src, RegisterID dest)
+     {
+         m_assembler.subu(dest, dest, src);
+     }
++    void sub32(RegisterID op1, RegisterID op2, RegisterID dest)
++    {
++        m_assembler.subu(dest, op1, op2);
++    }
++
+     void sub32(TrustedImm32 imm, RegisterID dest)
+     {
+         if (imm.m_value >= -32767 && imm.m_value <= 32768
+@@ -495,6 +572,11 @@ public:
+         m_assembler.xorInsn(dest, dest, src);
+     }
++    void xor32(RegisterID op1, RegisterID op2, RegisterID dest)
++    {
++        m_assembler.xorInsn(dest, op1, op2);
++    }
++
+     void xor32(TrustedImm32 imm, RegisterID dest)
+     {
+         if (imm.m_value == -1) {
+@@ -510,6 +592,21 @@ public:
+         m_assembler.xorInsn(dest, dest, immTempRegister);
+     }
++    void xor32(TrustedImm32 imm, RegisterID src, RegisterID dest)
++    {
++        if (imm.m_value == -1) {
++            m_assembler.nor(dest, src, MIPSRegisters::zero);
++            return;
++        }
++
++        /*
++            li  immTemp, imm
++            xor dest, dest, immTemp
++        */
++        move(imm, immTempRegister);
++        m_assembler.xorInsn(dest, src, immTempRegister);
++    }
++
+     void sqrtDouble(FPRegisterID src, FPRegisterID dst)
+     {
+         m_assembler.sqrtd(dst, src);
+@@ -989,6 +1086,44 @@ public:
+         }
+     }
++    void store32(TrustedImm32 imm, BaseIndex address)
++    {
++        if (address.offset >= -32768 && address.offset <= 32767 && !m_fixedWidth) {
++            /*
++                sll     addrTemp, address.index, address.scale
++                addu    addrTemp, addrTemp, address.base
++                sw      src, address.offset(addrTemp)
++            */
++            m_assembler.sll(addrTempRegister, address.index, address.scale);
++            m_assembler.addu(addrTempRegister, addrTempRegister, address.base);
++            if (!imm.m_value)
++                m_assembler.sw(MIPSRegisters::zero, addrTempRegister, address.offset);
++            else {
++                move(imm, immTempRegister);
++                m_assembler.sw(immTempRegister, addrTempRegister, address.offset);
++            }
++        } else {
++            /*
++                sll     addrTemp, address.index, address.scale
++                addu    addrTemp, addrTemp, address.base
++                lui     immTemp, (address.offset + 0x8000) >> 16
++                addu    addrTemp, addrTemp, immTemp
++                sw      src, (address.offset & 0xffff)(at)
++            */
++            m_assembler.sll(addrTempRegister, address.index, address.scale);
++            m_assembler.addu(addrTempRegister, addrTempRegister, address.base);
++            m_assembler.lui(immTempRegister, (address.offset + 0x8000) >> 16);
++            m_assembler.addu(addrTempRegister, addrTempRegister, immTempRegister);
++            if (!imm.m_value && !m_fixedWidth)
++                m_assembler.sw(MIPSRegisters::zero, addrTempRegister, address.offset);
++            else {
++                move(imm, immTempRegister);
++                m_assembler.sw(immTempRegister, addrTempRegister, address.offset);
++            }
++        }
++    }
++
++
+     void store32(RegisterID src, const void* address)
+     {
+         /*
+@@ -1336,6 +1471,15 @@ public:
+         m_fixedWidth = false;
+     }
++    void jump(AbsoluteAddress address)
++    {
++        m_fixedWidth = true;
++        load32(address.m_ptr, MIPSRegisters::t9);
++        m_assembler.jr(MIPSRegisters::t9);
++        m_assembler.nop();
++        m_fixedWidth = false;
++    }
++
+     void moveDoubleToInts(FPRegisterID src, RegisterID dest1, RegisterID dest2)
+     {
+         m_assembler.vmov(dest1, dest2, src);
+@@ -1404,6 +1548,53 @@ public:
+         return Jump();
+     }
++    Jump branchAdd32(ResultCondition cond, RegisterID op1, RegisterID op2, RegisterID dest)
++    {
++        ASSERT((cond == Overflow) || (cond == Signed) || (cond == Zero) || (cond == NonZero));
++        if (cond == Overflow) {
++            /*
++                move    dataTemp, op1
++                xor     cmpTemp, dataTemp, op2
++                bltz    cmpTemp, No_overflow    # diff sign bit -> no overflow
++                addu    dest, dataTemp, op2
++                xor     cmpTemp, dest, dataTemp
++                bgez    cmpTemp, No_overflow    # same sign big -> no overflow
++                nop
++                b       Overflow
++                nop
++                nop
++                nop
++                nop
++                nop
++            No_overflow:
++            */
++            move(op1, dataTempRegister);
++            m_assembler.xorInsn(cmpTempRegister, dataTempRegister, op2);
++            m_assembler.bltz(cmpTempRegister, 10);
++            m_assembler.addu(dest, dataTempRegister, op2);
++            m_assembler.xorInsn(cmpTempRegister, dest, dataTempRegister);
++            m_assembler.bgez(cmpTempRegister, 7);
++            m_assembler.nop();
++            return jump();
++        }
++        if (cond == Signed) {
++            add32(op1, op2, dest);
++            // Check if dest is negative.
++            m_assembler.slt(cmpTempRegister, dest, MIPSRegisters::zero);
++            return branchNotEqual(cmpTempRegister, MIPSRegisters::zero);
++        }
++        if (cond == Zero) {
++            add32(op1, op2, dest);
++            return branchEqual(dest, MIPSRegisters::zero);
++        }
++        if (cond == NonZero) {
++            add32(op1, op2, dest);
++            return branchNotEqual(dest, MIPSRegisters::zero);
++        }
++        ASSERT(0);
++        return Jump();
++    }
++
+     Jump branchAdd32(ResultCondition cond, TrustedImm32 imm, RegisterID dest)
+     {
+         move(imm, immTempRegister);
+@@ -1417,6 +1608,111 @@ public:
+         return branchAdd32(cond, immTempRegister, dest);
+     }
++    Jump branchAdd32(ResultCondition cond, TrustedImm32 imm, AbsoluteAddress dest)
++    {
++        ASSERT((cond == Overflow) || (cond == Signed) || (cond == Zero) || (cond == NonZero));
++        if (cond == Overflow) {
++            /*
++                move    dataTemp, dest
++                xori    cmpTemp, dataTemp, imm
++                bltz    cmpTemp, No_overflow    # diff sign bit -> no overflow
++                addiu   dataTemp, dataTemp, imm
++                move    dest, dataTemp
++                xori    cmpTemp, dataTemp, imm
++                bgez    cmpTemp, No_overflow    # same sign big -> no overflow
++                nop
++                b       Overflow
++                nop
++                nop
++                nop
++                nop
++                nop
++            No_overflow:
++            */
++            if (imm.m_value >= -32768 && imm.m_value  <= 32767 && !m_fixedWidth) {
++                load32(dest.m_ptr, dataTempRegister);
++                m_assembler.xori(cmpTempRegister, dataTempRegister, imm.m_value);
++                m_assembler.bltz(cmpTempRegister, 10);
++                m_assembler.addiu(dataTempRegister, dataTempRegister, imm.m_value);
++                store32(dataTempRegister, dest.m_ptr);
++                m_assembler.xori(cmpTempRegister, dataTempRegister, imm.m_value);
++                m_assembler.bgez(cmpTempRegister, 7);
++                m_assembler.nop();
++            } else {
++                load32(dest.m_ptr, dataTempRegister);
++                move(imm, immTempRegister);
++                m_assembler.xorInsn(cmpTempRegister, dataTempRegister, immTempRegister);
++                m_assembler.bltz(cmpTempRegister, 10);
++                m_assembler.addiu(dataTempRegister, dataTempRegister, immTempRegister);
++                store32(dataTempRegister, dest.m_ptr);
++                m_assembler.xori(cmpTempRegister, dataTempRegister, immTempRegister);
++                m_assembler.bgez(cmpTempRegister, 7);
++                m_assembler.nop();
++            }
++            return jump();
++        }
++        move(imm, immTempRegister);
++        load32(dest.m_ptr, dataTempRegister);
++        add32(immTempRegister, dataTempRegister);
++        store32(dataTempRegister, dest.m_ptr);
++        if (cond == Signed) {
++            // Check if dest is negative.
++            m_assembler.slt(cmpTempRegister, dataTempRegister, MIPSRegisters::zero);
++            return branchNotEqual(cmpTempRegister, MIPSRegisters::zero);
++        }
++        if (cond == Zero)
++            return branchEqual(dataTempRegister, MIPSRegisters::zero);
++        if (cond == NonZero)
++            return branchNotEqual(dataTempRegister, MIPSRegisters::zero);
++        ASSERT(0);
++        return Jump();
++    }
++
++    Jump branchMul32(ResultCondition cond, RegisterID src1, RegisterID src2, RegisterID dest)
++    {
++        ASSERT((cond == Overflow) || (cond == Signed) || (cond == Zero) || (cond == NonZero));
++        if (cond == Overflow) {
++            /*
++                mult    src, dest
++                mfhi    dataTemp
++                mflo    dest
++                sra     addrTemp, dest, 31
++                beq     dataTemp, addrTemp, No_overflow # all sign bits (bit 63 to bit 31) are the same -> no overflow
++                nop
++                b       Overflow
++                nop
++                nop
++                nop
++                nop
++                nop
++            No_overflow:
++            */
++            m_assembler.mult(src1, src2);
++            m_assembler.mfhi(dataTempRegister);
++            m_assembler.mflo(dest);
++            m_assembler.sra(addrTempRegister, dest, 31);
++            m_assembler.beq(dataTempRegister, addrTempRegister, 7);
++            m_assembler.nop();
++            return jump();
++        }
++        if (cond == Signed) {
++            mul32(src1, src2, dest);
++            // Check if dest is negative.
++            m_assembler.slt(cmpTempRegister, dest, MIPSRegisters::zero);
++            return branchNotEqual(cmpTempRegister, MIPSRegisters::zero);
++        }
++        if (cond == Zero) {
++            mul32(src1, src2, dest);
++            return branchEqual(dest, MIPSRegisters::zero);
++        }
++        if (cond == NonZero) {
++            mul32(src1, src2, dest);
++            return branchNotEqual(dest, MIPSRegisters::zero);
++        }
++        ASSERT(0);
++        return Jump();
++    }
++
+     Jump branchMul32(ResultCondition cond, RegisterID src, RegisterID dest)
+     {
+         ASSERT((cond == Overflow) || (cond == Signed) || (cond == Zero) || (cond == NonZero));
+@@ -1465,8 +1761,7 @@ public:
+     Jump branchMul32(ResultCondition cond, TrustedImm32 imm, RegisterID src, RegisterID dest)
+     {
+         move(imm, immTempRegister);
+-        move(src, dest);
+-        return branchMul32(cond, immTempRegister, dest);
++        return branchMul32(cond, immTempRegister, src, dest);
+     }
+     Jump branchSub32(ResultCondition cond, RegisterID src, RegisterID dest)
+@@ -1525,8 +1820,60 @@ public:
+     Jump branchSub32(ResultCondition cond, RegisterID src, TrustedImm32 imm, RegisterID dest)
+     {
+         move(imm, immTempRegister);
+-        move(src, dest);
+-        return branchSub32(cond, immTempRegister, dest);
++        return branchSub32(cond, src, immTempRegister, dest);
++    }
++
++    Jump branchSub32(ResultCondition cond, RegisterID op1, RegisterID op2, RegisterID dest)
++    {
++        ASSERT((cond == Overflow) || (cond == Signed) || (cond == Zero) || (cond == NonZero));
++        if (cond == Overflow) {
++            /*
++                move    dataTemp, op1
++                xor     cmpTemp, dataTemp, op2
++                bgez    cmpTemp, No_overflow    # same sign bit -> no overflow
++                subu    dest, dataTemp, op2
++                xor     cmpTemp, dest, dataTemp
++                bgez    cmpTemp, No_overflow    # same sign bit -> no overflow
++                nop
++                b       Overflow
++                nop
++                nop
++                nop
++                nop
++                nop
++            No_overflow:
++            */
++            move(op1, dataTempRegister);
++            m_assembler.xorInsn(cmpTempRegister, dataTempRegister, op2);
++            m_assembler.bgez(cmpTempRegister, 10);
++            m_assembler.subu(dest, dataTempRegister, op2);
++            m_assembler.xorInsn(cmpTempRegister, dest, dataTempRegister);
++            m_assembler.bgez(cmpTempRegister, 7);
++            m_assembler.nop();
++            return jump();
++        }
++        if (cond == Signed) {
++            sub32(op1, op2, dest);
++            // Check if dest is negative.
++            m_assembler.slt(cmpTempRegister, dest, MIPSRegisters::zero);
++            return branchNotEqual(cmpTempRegister, MIPSRegisters::zero);
++        }
++        if (cond == Zero) {
++            sub32(op1, op2, dest);
++            return branchEqual(dest, MIPSRegisters::zero);
++        }
++        if (cond == NonZero) {
++            sub32(op1, op2, dest);
++            return branchNotEqual(dest, MIPSRegisters::zero);
++        }
++        ASSERT(0);
++        return Jump();
++    }
++
++    Jump branchNeg32(ResultCondition cond, RegisterID srcDest)
++    {
++        m_assembler.li(dataTempRegister, -1);
++        return branchMul32(cond, dataTempRegister, srcDest);
+     }
+     Jump branchOr32(ResultCondition cond, RegisterID src, RegisterID dest)
+@@ -1578,7 +1925,8 @@ public:
+     Call call(RegisterID target)
+     {
+-        m_assembler.jalr(target);
++        move(target, MIPSRegisters::t9);
++        m_assembler.jalr(MIPSRegisters::t9);
+         m_assembler.nop();
+         return Call(m_assembler.label(), Call::None);
+     }
+@@ -1822,7 +2170,7 @@ public:
+                 lui     immTemp, (address.offset + 0x8000) >> 16
+                 addu    addrTemp, addrTemp, immTemp
+                 lwc1    dest, (address.offset & 0xffff)(at)
+-                lwc1    dest+4, (address.offset & 0xffff + 4)(at)
++                lwc1    dest+1, (address.offset & 0xffff + 4)(at)
+             */
+             m_assembler.sll(addrTempRegister, address.index, address.scale);
+             m_assembler.addu(addrTempRegister, addrTempRegister, address.base);
+@@ -2009,6 +2357,19 @@ public:
+ #endif
+     }
++    void moveDouble(FPRegisterID src, FPRegisterID dest)
++    {
++        if (src != dest || m_fixedWidth)
++            m_assembler.movd(dest, src);
++    }
++
++    void swapDouble(FPRegisterID fr1, FPRegisterID fr2)
++    {
++        moveDouble(fr1, fpTempRegister);
++        moveDouble(fr2, fr1);
++        moveDouble(fpTempRegister, fr2);
++    }
++
+     void addDouble(FPRegisterID src, FPRegisterID dest)
+     {
+         m_assembler.addd(dest, dest, src);
+@@ -2036,6 +2397,11 @@ public:
+         m_assembler.subd(dest, dest, src);
+     }
++    void subDouble(FPRegisterID op1, FPRegisterID op2, FPRegisterID dest)
++    {
++        m_assembler.subd(dest, op1, op2);
++    }
++
+     void subDouble(Address src, FPRegisterID dest)
+     {
+         loadDouble(src, fpTempRegister);
+@@ -2053,11 +2419,32 @@ public:
+         m_assembler.muld(dest, dest, fpTempRegister);
+     }
++    void mulDouble(FPRegisterID op1, FPRegisterID op2, FPRegisterID dest)
++    {
++        m_assembler.muld(dest, op1, op2);
++    }
++
+     void divDouble(FPRegisterID src, FPRegisterID dest)
+     {
+         m_assembler.divd(dest, dest, src);
+     }
++    void divDouble(FPRegisterID op1, FPRegisterID op2, FPRegisterID dest)
++    {
++        m_assembler.divd(dest, op1, op2);
++    }
++
++    void divDouble(Address src, FPRegisterID dest)
++    {
++        loadDouble(src, fpTempRegister);
++        m_assembler.divd(dest, dest, fpTempRegister);
++    }
++
++    void negateDouble(FPRegisterID src, FPRegisterID dest)
++    {
++        m_assembler.negd(dest, src);
++    }
++
+     void convertInt32ToDouble(RegisterID src, FPRegisterID dest)
+     {
+         m_assembler.mtc1(src, fpTempRegister);
+@@ -2117,6 +2504,8 @@ public:
+     Jump branchEqual(RegisterID rs, RegisterID rt)
+     {
++        m_assembler.nop();
++        m_assembler.nop();
+         m_assembler.appendJump();
+         m_assembler.beq(rs, rt, 0);
+         m_assembler.nop();
+@@ -2126,6 +2515,8 @@ public:
+     Jump branchNotEqual(RegisterID rs, RegisterID rt)
+     {
++        m_assembler.nop();
++        m_assembler.nop();
+         m_assembler.appendJump();
+         m_assembler.bne(rs, rt, 0);
+         m_assembler.nop();
+@@ -2192,11 +2583,33 @@ public:
+     // If the result is not representable as a 32 bit value, branch.
+     // May also branch for some values that are representable in 32 bits
+     // (specifically, in this case, INT_MAX 0x7fffffff).
+-    Jump branchTruncateDoubleToInt32(FPRegisterID src, RegisterID dest)
++    enum BranchTruncateType { BranchIfTruncateFailed, BranchIfTruncateSuccessful };
++    Jump branchTruncateDoubleToInt32(FPRegisterID src, RegisterID dest, BranchTruncateType branchType = BranchIfTruncateFailed)
++    {
++        m_assembler.truncwd(fpTempRegister, src);
++        m_assembler.mfc1(dest, fpTempRegister);
++        return branch32(branchType == BranchIfTruncateFailed ? Equal : NotEqual, dest, TrustedImm32(0x7fffffff));
++    }
++
++    Jump branchTruncateDoubleToUint32(FPRegisterID src, RegisterID dest, BranchTruncateType branchType = BranchIfTruncateFailed)
++    {
++        m_assembler.truncwd(fpTempRegister, src);
++        m_assembler.mfc1(dest, fpTempRegister);
++        return branch32(branchType == BranchIfTruncateFailed ? Equal : NotEqual, dest, TrustedImm32(0));
++    }
++
++    // Result is undefined if the value is outside of the integer range.
++    void truncateDoubleToInt32(FPRegisterID src, RegisterID dest)
++    {
++        m_assembler.truncwd(fpTempRegister, src);
++        m_assembler.mfc1(dest, fpTempRegister);
++    }
++
++    // Result is undefined if src > 2^31
++    void truncateDoubleToUint32(FPRegisterID src, RegisterID dest)
+     {
+         m_assembler.truncwd(fpTempRegister, src);
+         m_assembler.mfc1(dest, fpTempRegister);
+-        return branch32(Equal, dest, TrustedImm32(0x7fffffff));
+     }
+     // Convert 'src' to an integer, and places the resulting 'dest'.
+@@ -2218,28 +2631,43 @@ public:
+     Jump branchDoubleNonZero(FPRegisterID reg, FPRegisterID scratch)
+     {
+-#if WTF_MIPS_ISA_REV(2) && WTF_MIPS_FP64
+-        m_assembler.mtc1(MIPSRegisters::zero, scratch);
+-        m_assembler.mthc1(MIPSRegisters::zero, scratch);
+-#else
+-        m_assembler.mtc1(MIPSRegisters::zero, scratch);
+-        m_assembler.mtc1(MIPSRegisters::zero, FPRegisterID(scratch + 1));
+-#endif
++        m_assembler.vmov(scratch, MIPSRegisters::zero, MIPSRegisters::zero);
+         return branchDouble(DoubleNotEqual, reg, scratch);
+     }
+     Jump branchDoubleZeroOrNaN(FPRegisterID reg, FPRegisterID scratch)
+     {
+-#if WTF_MIPS_ISA_REV(2) && WTF_MIPS_FP64
+-        m_assembler.mtc1(MIPSRegisters::zero, scratch);
+-        m_assembler.mthc1(MIPSRegisters::zero, scratch);
+-#else
+-        m_assembler.mtc1(MIPSRegisters::zero, scratch);
+-        m_assembler.mtc1(MIPSRegisters::zero, FPRegisterID(scratch + 1));
+-#endif
++        m_assembler.vmov(scratch, MIPSRegisters::zero, MIPSRegisters::zero);
+         return branchDouble(DoubleEqualOrUnordered, reg, scratch);
+     }
++    // Invert a relational condition, e.g. == becomes !=, < becomes >=, etc.
++    static RelationalCondition invert(RelationalCondition cond)
++    {
++        RelationalCondition r;
++        if (cond == Equal)
++            r = NotEqual;
++        else if (cond == NotEqual)
++            r = Equal;
++        else if (cond == Above)
++            r = BelowOrEqual;
++        else if (cond == AboveOrEqual)
++            r = Below;
++        else if (cond == Below)
++            r = AboveOrEqual;
++        else if (cond == BelowOrEqual)
++            r = Above;
++        else if (cond == GreaterThan)
++            r = LessThanOrEqual;
++        else if (cond == GreaterThanOrEqual)
++            r = LessThan;
++        else if (cond == LessThan)
++            r = GreaterThanOrEqual;
++        else if (cond == LessThanOrEqual)
++            r = GreaterThan;
++        return r;
++    }
++
+     void nop()
+     {
+         m_assembler.nop();
+@@ -2252,12 +2680,12 @@ public:
+     static void replaceWithJump(CodeLocationLabel instructionStart, CodeLocationLabel destination)
+     {
+-        RELEASE_ASSERT_NOT_REACHED();
++        MIPSAssembler::replaceWithJump(instructionStart.dataLocation(), destination.dataLocation());
+     }
+     
+     static ptrdiff_t maxJumpReplacementSize()
+     {
+-        RELEASE_ASSERT_NOT_REACHED();
++        MIPSAssembler::maxJumpReplacementSize();
+         return 0;
+     }
+diff --git a/Source/JavaScriptCore/dfg/DFGAssemblyHelpers.h b/Source/JavaScriptCore/dfg/DFGAssemblyHelpers.h
+index fa0f5e0..573d8dc 100644
+--- a/Source/JavaScriptCore/dfg/DFGAssemblyHelpers.h
++++ b/Source/JavaScriptCore/dfg/DFGAssemblyHelpers.h
+@@ -93,6 +93,23 @@ public:
+     }
+ #endif
++#if CPU(MIPS)
++    ALWAYS_INLINE void preserveReturnAddressAfterCall(RegisterID reg)
++    {
++        move(returnAddressRegister, reg);
++    }
++
++    ALWAYS_INLINE void restoreReturnAddressBeforeReturn(RegisterID reg)
++    {
++        move(reg, returnAddressRegister);
++    }
++
++    ALWAYS_INLINE void restoreReturnAddressBeforeReturn(Address address)
++    {
++        loadPtr(address, returnAddressRegister);
++    }
++#endif
++
+     void emitGetFromCallFrameHeaderPtr(JSStack::CallFrameHeaderEntry entry, GPRReg to)
+     {
+         loadPtr(Address(GPRInfo::callFrameRegister, entry * sizeof(Register)), to);
+@@ -193,7 +210,7 @@ public:
+         move(TrustedImmPtr(scratchBuffer->activeLengthPtr()), GPRInfo::regT0);
+         storePtr(TrustedImmPtr(scratchSize), GPRInfo::regT0);
+-#if CPU(X86_64) || CPU(ARM)
++#if CPU(X86_64) || CPU(ARM) || CPU(MIPS)
+         move(TrustedImmPtr(buffer), GPRInfo::argumentGPR2);
+         move(TrustedImmPtr(argument), GPRInfo::argumentGPR1);
+         move(GPRInfo::callFrameRegister, GPRInfo::argumentGPR0);
+diff --git a/Source/JavaScriptCore/dfg/DFGCCallHelpers.h b/Source/JavaScriptCore/dfg/DFGCCallHelpers.h
+index 8adde05..3d99f6f 100644
+--- a/Source/JavaScriptCore/dfg/DFGCCallHelpers.h
++++ b/Source/JavaScriptCore/dfg/DFGCCallHelpers.h
+@@ -576,6 +576,39 @@ public:
+         poke(GPRInfo::nonArgGPR0);
+     }
+ #endif // CPU(ARM_HARDFP)
++#elif CPU(MIPS)
++    ALWAYS_INLINE void setupArguments(FPRReg arg1)
++    {
++        moveDouble(arg1, FPRInfo::argumentFPR0);
++    }
++
++    ALWAYS_INLINE void setupArguments(FPRReg arg1, FPRReg arg2)
++    {
++        if (arg2 != FPRInfo::argumentFPR0) {
++            moveDouble(arg1, FPRInfo::argumentFPR0);
++            moveDouble(arg2, FPRInfo::argumentFPR1);
++        } else if (arg1 != FPRInfo::argumentFPR1) {
++            moveDouble(arg2, FPRInfo::argumentFPR1);
++            moveDouble(arg1, FPRInfo::argumentFPR0);
++        } else {
++            // Swap arg1, arg2.
++            swapDouble(FPRInfo::argumentFPR0, FPRInfo::argumentFPR1);
++        }
++    }
++
++    ALWAYS_INLINE void setupArgumentsWithExecState(FPRReg arg1, GPRReg arg2)
++    {
++        assembler().vmov(GPRInfo::argumentGPR2, GPRInfo::argumentGPR3, arg1);
++        move(GPRInfo::callFrameRegister, GPRInfo::argumentGPR0);
++        poke(arg2, 4);
++    }
++
++    ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, GPRReg arg2, FPRReg arg3)
++    {
++        setupStubArguments(arg1, arg2);
++        move(GPRInfo::callFrameRegister, GPRInfo::argumentGPR0);
++        poke(arg3, 4);
++    }
+ #else
+ #error "DFG JIT not supported on this platform."
+ #endif
+@@ -803,119 +836,126 @@ public:
+     // These methods are suitable for any calling convention that provides for
+     // exactly 4 argument registers, e.g. ARMv7.
+ #if NUMBER_OF_ARGUMENT_REGISTERS == 4
++
++#if CPU(MIPS)
++#define POKE_ARGUMENT_OFFSET 4
++#else
++#define POKE_ARGUMENT_OFFSET 0
++#endif
++
+     ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, GPRReg arg2, GPRReg arg3, GPRReg arg4)
+     {
+-        poke(arg4);
++        poke(arg4, POKE_ARGUMENT_OFFSET);
+         setupArgumentsWithExecState(arg1, arg2, arg3);
+     }
+     ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, GPRReg arg2, GPRReg arg3, TrustedImm32 arg4)
+     {
+-        poke(arg4);
++        poke(arg4, POKE_ARGUMENT_OFFSET);
+         setupArgumentsWithExecState(arg1, arg2, arg3);
+     }
+     ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, TrustedImmPtr arg2, TrustedImm32 arg3, GPRReg arg4)
+     {
+-        poke(arg4);
++        poke(arg4, POKE_ARGUMENT_OFFSET);
+         setupArgumentsWithExecState(arg1, arg2, arg3);
+     }
+     ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, TrustedImmPtr arg2, TrustedImm32 arg3, GPRReg arg4, GPRReg arg5)
+     {
+-        poke(arg5, 1);
+-        poke(arg4);
++        poke(arg5, POKE_ARGUMENT_OFFSET + 1);
++        poke(arg4, POKE_ARGUMENT_OFFSET);
+         setupArgumentsWithExecState(arg1, arg2, arg3);
+     }
+     ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, GPRReg arg2, TrustedImm32 arg3, TrustedImm32 arg4)
+     {
+-        poke(arg4);
++        poke(arg4, POKE_ARGUMENT_OFFSET);
+         setupArgumentsWithExecState(arg1, arg2, arg3);
+     }
+     ALWAYS_INLINE void setupArgumentsWithExecState(TrustedImm32 arg1, TrustedImm32 arg2, GPRReg arg3, GPRReg arg4)
+     {
+-        poke(arg4);
++        poke(arg4, POKE_ARGUMENT_OFFSET);
+         setupArgumentsWithExecState(arg1, arg2, arg3);
+     }
+     ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, GPRReg arg2, GPRReg arg3, TrustedImmPtr arg4)
+     {
+-        poke(arg4);
++        poke(arg4, POKE_ARGUMENT_OFFSET);
+         setupArgumentsWithExecState(arg1, arg2, arg3);
+     }
+     ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, GPRReg arg2, GPRReg arg3, GPRReg arg4, GPRReg arg5)
+     {
+-        poke(arg5, 1);
+-        poke(arg4);
++        poke(arg5, POKE_ARGUMENT_OFFSET + 1);
++        poke(arg4, POKE_ARGUMENT_OFFSET);
+         setupArgumentsWithExecState(arg1, arg2, arg3);
+     }
+     ALWAYS_INLINE void setupArgumentsWithExecState(TrustedImm32 arg1, GPRReg arg2, GPRReg arg3, GPRReg arg4)
+     {
+-        poke(arg4);
++        poke(arg4, POKE_ARGUMENT_OFFSET);
+         setupArgumentsWithExecState(arg1, arg2, arg3);
+     }
+     ALWAYS_INLINE void setupArgumentsWithExecState(TrustedImm32 arg1, GPRReg arg2, GPRReg arg3, TrustedImmPtr arg4)
+     {
+-        poke(arg4);
++        poke(arg4, POKE_ARGUMENT_OFFSET);
+         setupArgumentsWithExecState(arg1, arg2, arg3);
+     }
+     ALWAYS_INLINE void setupArgumentsWithExecState(TrustedImm32 arg1, GPRReg arg2, TrustedImm32 arg3, TrustedImmPtr arg4)
+     {
+-        poke(arg4);
++        poke(arg4, POKE_ARGUMENT_OFFSET);
+         setupArgumentsWithExecState(arg1, arg2, arg3);
+     }
+     ALWAYS_INLINE void setupArgumentsWithExecState(TrustedImm32 arg1, GPRReg arg2, TrustedImm32 arg3, GPRReg arg4)
+     {
+-        poke(arg4);
++        poke(arg4, POKE_ARGUMENT_OFFSET);
+         setupArgumentsWithExecState(arg1, arg2, arg3);
+     }
+     ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, GPRReg arg2, TrustedImm32 arg3, GPRReg arg4, GPRReg arg5)
+     {
+-        poke(arg5, 1);
+-        poke(arg4);
++        poke(arg5, POKE_ARGUMENT_OFFSET + 1);
++        poke(arg4, POKE_ARGUMENT_OFFSET);
+         setupArgumentsWithExecState(arg1, arg2, arg3);
+     }
+     ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, GPRReg arg2, TrustedImm32 arg3, GPRReg arg4, TrustedImm32 arg5)
+     {
+-        poke(arg5, 1);
+-        poke(arg4);
++        poke(arg5, POKE_ARGUMENT_OFFSET + 1);
++        poke(arg4, POKE_ARGUMENT_OFFSET);
+         setupArgumentsWithExecState(arg1, arg2, arg3);
+     }
+     ALWAYS_INLINE void setupArgumentsWithExecState(TrustedImm32 arg1, GPRReg arg2, GPRReg arg3, GPRReg arg4, TrustedImmPtr arg5)
+     {
+-        poke(arg5, 1);
+-        poke(arg4);
++        poke(arg5, POKE_ARGUMENT_OFFSET + 1);
++        poke(arg4, POKE_ARGUMENT_OFFSET);
+         setupArgumentsWithExecState(arg1, arg2, arg3);
+     }
+     ALWAYS_INLINE void setupArgumentsWithExecState(TrustedImm32 arg1, GPRReg arg2, GPRReg arg3, TrustedImm32 arg4, TrustedImm32 arg5)
+     {
+-        poke(arg5, 1);
+-        poke(arg4);
++        poke(arg5, POKE_ARGUMENT_OFFSET + 1);
++        poke(arg4, POKE_ARGUMENT_OFFSET);
+         setupArgumentsWithExecState(arg1, arg2, arg3);
+     }
+     ALWAYS_INLINE void setupArgumentsWithExecState(TrustedImm32 arg1, TrustedImm32 arg2, TrustedImm32 arg3, GPRReg arg4, GPRReg arg5)
+     {
+-        poke(arg5, 1);
+-        poke(arg4);
++        poke(arg5, POKE_ARGUMENT_OFFSET + 1);
++        poke(arg4, POKE_ARGUMENT_OFFSET);
+         setupArgumentsWithExecState(arg1, arg2, arg3);
+     }
+     ALWAYS_INLINE void setupArgumentsWithExecState(TrustedImm32 arg1, GPRReg arg2, GPRReg arg3, GPRReg arg4, GPRReg arg5)
+     {
+-        poke(arg5, 1);
+-        poke(arg4);
++        poke(arg5, POKE_ARGUMENT_OFFSET + 1);
++        poke(arg4, POKE_ARGUMENT_OFFSET);
+         setupArgumentsWithExecState(arg1, arg2, arg3);
+     }
+diff --git a/Source/JavaScriptCore/dfg/DFGFPRInfo.h b/Source/JavaScriptCore/dfg/DFGFPRInfo.h
+index 17aaa7d..e18ec06 100644
+--- a/Source/JavaScriptCore/dfg/DFGFPRInfo.h
++++ b/Source/JavaScriptCore/dfg/DFGFPRInfo.h
+@@ -164,6 +164,74 @@ public:
+ #endif
++#if CPU(MIPS)
++
++class FPRInfo {
++public:
++    typedef FPRReg RegisterType;
++    static const unsigned numberOfRegisters = 6;
++
++    // Temporary registers.
++    static const FPRReg fpRegT0 = MIPSRegisters::f0;
++    static const FPRReg fpRegT1 = MIPSRegisters::f4;
++    static const FPRReg fpRegT2 = MIPSRegisters::f6;
++    static const FPRReg fpRegT3 = MIPSRegisters::f8;
++    static const FPRReg fpRegT4 = MIPSRegisters::f10;
++    static const FPRReg fpRegT5 = MIPSRegisters::f18;
++
++    static const FPRReg returnValueFPR = MIPSRegisters::f0;
++
++    static const FPRReg argumentFPR0 = MIPSRegisters::f12;
++    static const FPRReg argumentFPR1 = MIPSRegisters::f14;
++
++    static FPRReg toRegister(unsigned index)
++    {
++        static const FPRReg registerForIndex[numberOfRegisters] = {
++            fpRegT0, fpRegT1, fpRegT2, fpRegT3, fpRegT4, fpRegT5 };
++
++        ASSERT(index < numberOfRegisters);
++        return registerForIndex[index];
++    }
++
++    static unsigned toIndex(FPRReg reg)
++    {
++        ASSERT(reg != InvalidFPRReg);
++        ASSERT(reg < 20);
++        static const unsigned indexForRegister[20] = {
++            0, InvalidIndex, InvalidIndex, InvalidIndex,
++            1, InvalidIndex, 2, InvalidIndex,
++            3, InvalidIndex, 4, InvalidIndex,
++            InvalidIndex, InvalidIndex, InvalidIndex, InvalidIndex,
++            InvalidIndex, InvalidIndex, 5, InvalidIndex,
++        };
++        unsigned result = indexForRegister[reg];
++        ASSERT(result != InvalidIndex);
++        return result;
++    }
++
++    static const char* debugName(FPRReg reg)
++    {
++        ASSERT(reg != InvalidFPRReg);
++        ASSERT(reg < 32);
++        static const char* nameForRegister[32] = {
++            "f0", "f1", "f2", "f3",
++            "f4", "f5", "f6", "f7",
++            "f8", "f9", "f10", "f11",
++            "f12", "f13", "f14", "f15"
++            "f16", "f17", "f18", "f19"
++            "f20", "f21", "f22", "f23"
++            "f24", "f25", "f26", "f27"
++            "f28", "f29", "f30", "f31"
++        };
++        return nameForRegister[reg];
++    }
++private:
++
++    static const unsigned InvalidIndex = 0xffffffff;
++};
++
++#endif
++
+ typedef RegisterBank<FPRInfo>::iterator fpr_iterator;
+ } } // namespace JSC::DFG
+diff --git a/Source/JavaScriptCore/dfg/DFGGPRInfo.h b/Source/JavaScriptCore/dfg/DFGGPRInfo.h
+index 3d07556..aa634cd 100644
+--- a/Source/JavaScriptCore/dfg/DFGGPRInfo.h
++++ b/Source/JavaScriptCore/dfg/DFGGPRInfo.h
+@@ -461,6 +461,73 @@ private:
+ #endif
++#if CPU(MIPS)
++#define NUMBER_OF_ARGUMENT_REGISTERS 4
++
++class GPRInfo {
++public:
++    typedef GPRReg RegisterType;
++    static const unsigned numberOfRegisters = 6;
++
++    // Temporary registers.
++    static const GPRReg regT0 = MIPSRegisters::v0;
++    static const GPRReg regT1 = MIPSRegisters::v1;
++    static const GPRReg regT2 = MIPSRegisters::t4;
++    static const GPRReg regT3 = MIPSRegisters::t5;
++    static const GPRReg regT4 = MIPSRegisters::t6;
++    static const GPRReg regT5 = MIPSRegisters::t7;
++    // These registers match the baseline JIT.
++    static const GPRReg cachedResultRegister = regT0;
++    static const GPRReg cachedResultRegister2 = regT1;
++    static const GPRReg callFrameRegister = MIPSRegisters::s0;
++    // These constants provide the names for the general purpose argument & return value registers.
++    static const GPRReg argumentGPR0 = MIPSRegisters::a0;
++    static const GPRReg argumentGPR1 = MIPSRegisters::a1;
++    static const GPRReg argumentGPR2 = MIPSRegisters::a2;
++    static const GPRReg argumentGPR3 = MIPSRegisters::a3;
++    static const GPRReg nonArgGPR0 = regT2;
++    static const GPRReg nonArgGPR1 = regT3;
++    static const GPRReg nonArgGPR2 = regT4;
++    static const GPRReg returnValueGPR = regT0;
++    static const GPRReg returnValueGPR2 = regT1;
++    static const GPRReg nonPreservedNonReturnGPR = regT5;
++
++    static GPRReg toRegister(unsigned index)
++    {
++        ASSERT(index < numberOfRegisters);
++        static const GPRReg registerForIndex[numberOfRegisters] = { regT0, regT1, regT2, regT3, regT4, regT5 };
++        return registerForIndex[index];
++    }
++
++    static unsigned toIndex(GPRReg reg)
++    {
++        ASSERT(reg != InvalidGPRReg);
++        ASSERT(reg < 16);
++        static const unsigned indexForRegister[16] = { InvalidIndex, InvalidIndex, 0, 1, InvalidIndex, InvalidIndex, InvalidIndex, InvalidIndex, InvalidIndex, InvalidIndex, InvalidIndex, InvalidIndex, 2, 3, 4, 5 };
++        unsigned result = indexForRegister[reg];
++        ASSERT(result != InvalidIndex);
++        return result;
++    }
++
++    static const char* debugName(GPRReg reg)
++    {
++        ASSERT(reg != InvalidGPRReg);
++        ASSERT(reg < 16);
++        static const char* nameForRegister[16] = {
++            "zero", "at", "v0", "v1",
++            "a0", "a1", "a2", "a3",
++            "t0", "t1", "t2", "t3",
++            "t4", "t5", "t6", "t7"
++        };
++        return nameForRegister[reg];
++    }
++private:
++
++    static const unsigned InvalidIndex = 0xffffffff;
++};
++
++#endif
++
+ typedef RegisterBank<GPRInfo>::iterator gpr_iterator;
+ } } // namespace JSC::DFG
+diff --git a/Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h b/Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h
+index ea33f38..247274b 100644
+--- a/Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h
++++ b/Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h
+@@ -1241,7 +1241,7 @@ public:
+ // EncodedJSValue in JSVALUE32_64 is a 64-bit integer. When being compiled in ARM EABI, it must be aligned even-numbered register (r0, r2 or [sp]).
+ // To avoid assemblies from using wrong registers, let's occupy r1 or r3 with a dummy argument when necessary.
+-#if COMPILER_SUPPORTS(EABI) && CPU(ARM)
++#if (COMPILER_SUPPORTS(EABI) && CPU(ARM)) || CPU(MIPS)
+ #define EABI_32BIT_DUMMY_ARG      TrustedImm32(0),
+ #else
+ #define EABI_32BIT_DUMMY_ARG
+@@ -1691,7 +1691,7 @@ public:
+     }
+ #endif
+     
+-#if !defined(NDEBUG) && !CPU(ARM)
++#if !defined(NDEBUG) && !CPU(ARM) && !CPU(MIPS)
+     void prepareForExternalCall()
+     {
+         // We're about to call out to a "native" helper function. The helper
+diff --git a/Source/JavaScriptCore/jit/JSInterfaceJIT.h b/Source/JavaScriptCore/jit/JSInterfaceJIT.h
+index 7fdeaf0..48ad6b2 100644
+--- a/Source/JavaScriptCore/jit/JSInterfaceJIT.h
++++ b/Source/JavaScriptCore/jit/JSInterfaceJIT.h
+@@ -125,6 +125,10 @@ namespace JSC {
+         static const RegisterID cachedResultRegister = MIPSRegisters::v0;
+         static const RegisterID firstArgumentRegister = MIPSRegisters::a0;
+         
++#if ENABLE(VALUE_PROFILER)
++        static const RegisterID bucketCounterRegister = MIPSRegisters::s3;
++#endif
++
+         // regT0 must be v0 for returning a 32-bit value.
+         static const RegisterID regT0 = MIPSRegisters::v0;
+         
+diff --git a/Source/JavaScriptCore/runtime/JSGlobalData.h b/Source/JavaScriptCore/runtime/JSGlobalData.h
+index 5d47ab9..c02f336 100644
+--- a/Source/JavaScriptCore/runtime/JSGlobalData.h
++++ b/Source/JavaScriptCore/runtime/JSGlobalData.h
+@@ -141,14 +141,18 @@ namespace JSC {
+             return result;
+         }
+-        static size_t allocationSize(size_t bufferSize) { return sizeof(size_t) + bufferSize; }
++        static size_t allocationSize(size_t bufferSize) { return sizeof(ScratchBuffer) + bufferSize; }
+         void setActiveLength(size_t activeLength) { m_activeLength = activeLength; }
+         size_t activeLength() const { return m_activeLength; };
+         size_t* activeLengthPtr() { return &m_activeLength; };
+         void* dataBuffer() { return m_buffer; }
+         size_t m_activeLength;
++#if CPU(MIPS) && (defined WTF_MIPS_ARCH_REV && WTF_MIPS_ARCH_REV == 2)
++        void* m_buffer[0] __attribute__((aligned(8)));
++#else
+         void* m_buffer[0];
++#endif
+     };
+ #if COMPILER(MSVC)
+ #pragma warning(pop)
+diff --git a/Source/WTF/wtf/Platform.h b/Source/WTF/wtf/Platform.h
+index 1698247..2d90359 100644
+--- a/Source/WTF/wtf/Platform.h
++++ b/Source/WTF/wtf/Platform.h
+@@ -818,6 +818,10 @@
+ #if CPU(ARM_TRADITIONAL)
+ #define ENABLE_DFG_JIT 1
+ #endif
++/* Enable the DFG JIT on MIPS. */
++#if CPU(MIPS)
++#define ENABLE_DFG_JIT 1
++#endif
+ #endif
+ /* If the jit is not available, enable the LLInt C Loop: */
+-- 
+1.8.3.2
+
diff --git a/package/webkit/0008-support-bison-3.0.patch b/package/webkit/0008-support-bison-3.0.patch
new file mode 100644 (file)
index 0000000..c081b20
--- /dev/null
@@ -0,0 +1,22 @@
+ANGLE doesn't build with bison 3.0
+
+Author: allan.jensen@digia.com
+​https://bugs.webkit.org/show_bug.cgi?id=119798
+Reviewed by Antti Koivisto.
+Make glslang.y compatible with bison 3.0, by using %lex-param
+to set YYLEX_PARAM and getting rid of useless YYID macro.
+
+From upstream: http://trac.webkit.org/changeset/154109
+[Arnout: adapted to our older webkit version]
+Signed-off-by: Arnout Vandecaeppelle (Essensium/Mind) <arnout@mind.be>
+---
+Index: trunk/Source/ThirdParty/ANGLE/src/compiler/glslang.y
+===================================================================
+--- trunk/Source/ThirdParty/ANGLE/src/compiler/glslang.y       (revision 154108)
++++ trunk/Source/ThirdParty/ANGLE/src/compiler/glslang.y       (revision 154109)
+@@ -48,4 +48,5 @@
+ %pure-parser
+ %parse-param {TParseContext* context}
++%lex-param {YYLEX_PARAM}
+ %union {
diff --git a/package/webkit/webkit-0001-build-fix-for-32-bit-autotools.patch b/package/webkit/webkit-0001-build-fix-for-32-bit-autotools.patch
deleted file mode 100644 (file)
index d7765ea..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-Add missing symbol for WebCore::TextIterator::getLocationAndLengthFromRange
-
-Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
-
-From f5bb58f9096061f00c948e668335811d364ba360 Mon Sep 17 00:00:00 2001
-From: "kov@webkit.org" <kov@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
-Date: Thu, 7 Feb 2013 13:48:46 +0000
-Subject: [PATCH] Unreviewed build fix after r141196 for 32 bits autotools.
-
-* Source/autotools/symbols.filter: restore 32 bits version of the
-WebCore::TextIterator::getLocationAndLengthFromRange(WebCore::Node*,
-WebCore::Range const*, unsigned int&, unsigned int&) symbol.
-
-git-svn-id: http://svn.webkit.org/repository/webkit/trunk@142105 268f45cc-cd09-0410-ab3c-d52691b4dbfc
----
- ChangeLog                       | 8 ++++++++
- Source/autotools/symbols.filter | 1 +
- 2 files changed, 9 insertions(+)
-
-diff --git a/Source/autotools/symbols.filter b/Source/autotools/symbols.filter
-index 9d730b3..2edefaf 100644
---- a/Source/autotools/symbols.filter
-+++ b/Source/autotools/symbols.filter
-@@ -57,6 +57,7 @@ _ZN7WebCore11HistoryItem16setDocumentStateERKN3WTF6VectorINS1_6StringELj0EEE;
- _ZN7WebCore11HistoryItem16setDocumentStateERKN3WTF6VectorINS1_6StringELm0EEE;
- _ZN7WebCore11MemoryCache14resourceForURLERKNS_4KURLE;
- _ZN7WebCore12TextIterator26rangeFromLocationAndLengthEPNS_13ContainerNodeEiib;
-+_ZN7WebCore12TextIterator29getLocationAndLengthFromRangeEPNS_4NodeEPKNS_5RangeERjS6_;
- _ZN7WebCore12TextIterator29getLocationAndLengthFromRangeEPNS_4NodeEPKNS_5RangeERmS6_;
- _ZN7WebCore12PrintContext20pageNumberForElementEPNS_7ElementERKNS_9FloatSizeE;
- _ZN7WebCore13createWrapperEPN3JSC9ExecStateEPNS_17JSDOMGlobalObjectEPNS_4NodeE;
--- 
-1.8.3.2
-
diff --git a/package/webkit/webkit-0002-build-fix-for-gtklauncher.patch b/package/webkit/webkit-0002-build-fix-for-gtklauncher.patch
deleted file mode 100644 (file)
index 9a840b6..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-Make gstreamer support conditional
-
-Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
-
-From f1055f61bce46eccf8dc0aa017113a08d3d71944 Mon Sep 17 00:00:00 2001
-From: "commit-queue@webkit.org"
- <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
-Date: Fri, 15 Mar 2013 07:13:51 +0000
-Subject: [PATCH] Build fix for Tools/GtkLauncher/Programs_GtkLauncher-main.o
- if gstreamer is not installed https://bugs.webkit.org/show_bug.cgi?id=112394
-
-Patch by Tobias Mueller <tobiasmue@gnome.org> on 2013-03-15
-Reviewed by Philippe Normand.
-
-* GtkLauncher/main.c:
-(main): Guard using the gstreamer function with #ifdef WTF_USE_GSTREAMER
-
-git-svn-id: http://svn.webkit.org/repository/webkit/trunk@145881 268f45cc-cd09-0410-ab3c-d52691b4dbfc
----
- Tools/ChangeLog          | 10 ++++++++++
- Tools/GtkLauncher/main.c |  5 ++++-
- 2 files changed, 14 insertions(+), 1 deletion(-)
-
-diff --git a/Tools/GtkLauncher/main.c b/Tools/GtkLauncher/main.c
-index 32baf4a..84c8833 100644
---- a/Tools/GtkLauncher/main.c
-+++ b/Tools/GtkLauncher/main.c
-@@ -28,7 +28,9 @@
- #include "autotoolsconfig.h"
- #include "LauncherInspectorWindow.h"
- #include <errno.h>
-+#ifdef WTF_USE_GSTREAMER
- #include <gst/gst.h>
-+#endif
- #include <gtk/gtk.h>
- #include <stdlib.h>
- #include <string.h>
-@@ -489,8 +491,9 @@ int main(int argc, char* argv[])
-     GOptionContext *context = g_option_context_new(0);
-     g_option_context_add_main_entries(context, commandLineOptions, 0);
-     g_option_context_add_group(context, gtk_get_option_group(TRUE));
-+#ifdef WTF_USE_GSTREAMER
-     g_option_context_add_group(context, gst_init_get_option_group());
--
-+#endif
-     webkitSettings = webkit_web_settings_new();
-     g_object_set(webkitSettings, "enable-developer-extras", TRUE, NULL);
-     if (!addWebSettingsGroupToContext(context, webkitSettings)) {
--- 
-1.8.3.2
-
diff --git a/package/webkit/webkit-0003-detect-harfbuzz-icu.patch b/package/webkit/webkit-0003-detect-harfbuzz-icu.patch
deleted file mode 100644 (file)
index dc93c67..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-harfbuzz-icu detections based on the following upstream commits
-
-- 5f3ae29ffb29c499c1825578ba7f3ffcbf1aa8b9
-- ad2a23ec44b692bde43a13b658990770caa8dfc5
-- 22b4786377142424bfb6562ff029997acd0846d1
-
-Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
-
-Index: webkit-1.11.5/configure.ac
-===================================================================
---- webkit-1.11.5.orig/configure.ac
-+++ webkit-1.11.5/configure.ac
-@@ -938,6 +938,15 @@ PKG_CHECK_MODULES([FREETYPE],
-                   freetype2 >= $FREETYPE2_REQUIRED_VERSION
-                   harfbuzz])
- fi
-+# HarfBuzz 0.9.18 splits harbuzz-icu into a separate library.
-+# Since we support earlier HarfBuzz versions we keep this conditional for now.
-+m4_define([harfbuzz_required_version], [0.9.7])
-+if $PKG_CONFIG --atleast-version 0.9.18 harfbuzz; then
-+      PKG_CHECK_MODULES([HARFBUZZ_ICU], [harfbuzz-icu >= $harfbuzz_required_version])
-+      FREETYPE_CFLAGS+=" $HARFBUZZ_ICU_CFLAGS"
-+      FREETYPE_LIBS+=" $HARFBUZZ_ICU_LIBS"
-+fi
-+
- AC_SUBST([FREETYPE_CFLAGS])
- AC_SUBST([FREETYPE_LIBS])
diff --git a/package/webkit/webkit-0004-disable-docrebase.patch b/package/webkit/webkit-0004-disable-docrebase.patch
deleted file mode 100644 (file)
index 2692d61..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-This patch prevents documentation from being rebased or installed. This
-prevents an error when gtk-doc --rebase is called.
-
-Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
-Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
-
-Index: webkit-1.11.5/Tools/GNUmakefile.am
-===================================================================
---- webkit-1.11.5.orig/Tools/GNUmakefile.am
-+++ webkit-1.11.5/Tools/GNUmakefile.am
-@@ -308,6 +308,8 @@ EXTRA_DIST += \
-       Tools/Scripts/webkit-build-directory \
-       Tools/Scripts/webkitdirs.pm
-+if ENABLE_GTK_DOC
-+
- docs: docs-build.stamp
- .PHONY : docs
- DISTCLEANFILES += docs-build.stamp
-@@ -412,7 +414,6 @@ if ENABLE_WEBKIT2
-       rm -rf $${installdir}
- endif
--if ENABLE_GTK_DOC
- all: docs-build.stamp
- endif
diff --git a/package/webkit/webkit-0005-disable-tests.patch b/package/webkit/webkit-0005-disable-tests.patch
deleted file mode 100644 (file)
index 6fa6daa..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-This prevents the Webkit test suites from being built.
-
-Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
-----
-Index: webkit-1.9.6/GNUmakefile.am
-===================================================================
---- webkit-1.9.6.orig/GNUmakefile.am   2012-08-06 03:17:24.000000000 -0500
-+++ webkit-1.9.6/GNUmakefile.am        2013-05-28 10:08:53.645129501 -0500
-@@ -282,11 +282,14 @@
- include Tools/DumpRenderTree/gtk/GNUmakefile.ImageDiff.am
- include Source/WebKit2/GNUmakefile.am
--include Source/WebKit2/UIProcess/API/gtk/tests/GNUmakefile.am
- include Tools/MiniBrowser/gtk/GNUmakefile.am
-+
-+if ENABLE_TESTS
-+include Source/WebKit2/UIProcess/API/gtk/tests/GNUmakefile.am
- include Tools/WebKitTestRunner/GNUmakefile.am
- include Source/ThirdParty/gtest/GNUmakefile.am
- include Tools/TestWebKitAPI/GNUmakefile.am
-+endif # ENABLE_TESTS
- # [GTK] Refactor the translations now that we have webkit2
- # https://bugs.webkit.org/show_bug.cgi?id=55153
-Index: webkit-1.9.6/Source/WebKit/gtk/GNUmakefile.am
-===================================================================
---- webkit-1.9.6.orig/Source/WebKit/gtk/GNUmakefile.am 2012-07-19 05:02:29.000000000 -0500
-+++ webkit-1.9.6/Source/WebKit/gtk/GNUmakefile.am      2013-05-28 10:09:49.277130516 -0500
-@@ -413,6 +413,7 @@
- dist_resources_DATA = \
-       $(shell ls $(srcdir)/Source/WebKit/gtk/resources/*.html)
-+if ENABLE_TESTS
- # Build unit tests
- webkit_tests_cflags = \
-       -fno-strict-aliasing \
-@@ -613,6 +614,8 @@
- Programs_unittests_testcopyandpaste_LDADD = $(webkit_tests_ldadd)
- Programs_unittests_testcopyandpaste_LDFLAGS = $(webkit_tests_ldflags)
-+endif # ENABLE_TESTS
-+
- # Project-wide clean rules
- # Files that will be cleaned
- CLEANFILES += \
-Index: webkit-1.9.6/configure.ac
-===================================================================
---- webkit-1.9.6.orig/configure.ac     2012-08-06 08:45:10.000000000 -0500
-+++ webkit-1.9.6/configure.ac  2013-05-28 10:07:55.817128445 -0500
-@@ -516,6 +516,14 @@
- AC_SUBST(CAIRO_CFLAGS)
- AC_SUBST(CAIRO_LIBS)
-+# check wheter to build tests
-+AC_MSG_CHECKING([wheter to build tests])
-+AC_ARG_ENABLE(tests,
-+              AC_HELP_STRING([--enable-tests],
-+                             [turn on tests [default=no]]),
-+              [],[enable_debug="no"])
-+AC_MSG_RESULT([$enable_tests])
-+
- # check whether to build with debugging enabled
- AC_MSG_CHECKING([whether to do a debug build])
- AC_ARG_ENABLE(debug,
-@@ -1423,6 +1431,7 @@
- AM_CONDITIONAL([USE_FARSTREAM], [test "$have_farstream" = "yes"])
- # WebKit feature conditionals
-+AM_CONDITIONAL([ENABLE_TESTS],[test "$enable_tests" = "yes"])
- AM_CONDITIONAL([ENABLE_DEBUG],[test "$enable_debug_features" = "yes"])
- AM_CONDITIONAL([ENABLE_UNSTABLE_FEATURES],[test "$enable_unstable_features" = "yes"])
- AM_CONDITIONAL([ENABLE_WEBGL],[test "$enable_webgl" = "yes"])
-@@ -1534,6 +1543,7 @@
- WebKit was configured with the following options:
- Build configuration:
-+ Enable tests (slow)                                      : $enable_tests
-  Enable debugging (slow)                                  : $enable_debug
-  Compile with debug symbols (slow)                        : $enable_debug_symbols
-  Enable debug features (slow)                             : $enable_debug_features
diff --git a/package/webkit/webkit-0006-execinfo_h.patch b/package/webkit/webkit-0006-execinfo_h.patch
deleted file mode 100644 (file)
index f5508a1..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-Fixes uclibc build as uclibc does not include backtrace functionality
-
-Signed-of-by: Spenser Gilliland <spenser@gillilanding.com>
-Signed-of-by: Markos Chandras <markos.chandras@imgtec.com>
-
-Index: webkit-1.11.5/Source/WTF/wtf/Assertions.cpp
-===================================================================
---- webkit-1.11.5.orig/Source/WTF/wtf/Assertions.cpp
-+++ webkit-1.11.5/Source/WTF/wtf/Assertions.cpp
-@@ -61,8 +61,10 @@
- #if (OS(DARWIN) || (OS(LINUX) && !defined(__UCLIBC__))) && !OS(ANDROID)
- #include <cxxabi.h>
- #include <dlfcn.h>
-+#if !defined(__UCLIBC__)
- #include <execinfo.h>
- #endif
-+#endif
- #if OS(ANDROID)
- #include "android/log.h"
diff --git a/package/webkit/webkit-0007-mips-dfg.patch b/package/webkit/webkit-0007-mips-dfg.patch
deleted file mode 100644 (file)
index 3925951..0000000
+++ /dev/null
@@ -1,1490 +0,0 @@
-Upstream patch for DFG implementation for MIPS
-
-Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
-
-From c921d19863ccf66bdd0ffa5d38eaf05efab6b136 Mon Sep 17 00:00:00 2001
-From: "commit-queue@webkit.org"
- <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
-Date: Mon, 18 Feb 2013 19:25:23 +0000
-Subject: [PATCH] MIPS DFG implementation.
- https://bugs.webkit.org/show_bug.cgi?id=101328
-
-Patch by Balazs Kilvady <kilvadyb@homejinni.com> on 2013-02-18
-Reviewed by Oliver Hunt.
-
-DFG implementation for MIPS.
-
-Source/JavaScriptCore:
-
-* assembler/MIPSAssembler.h:
-(JSC::MIPSAssembler::MIPSAssembler):
-(JSC::MIPSAssembler::sllv):
-(JSC::MIPSAssembler::movd):
-(MIPSAssembler):
-(JSC::MIPSAssembler::negd):
-(JSC::MIPSAssembler::labelForWatchpoint):
-(JSC::MIPSAssembler::label):
-(JSC::MIPSAssembler::vmov):
-(JSC::MIPSAssembler::linkDirectJump):
-(JSC::MIPSAssembler::maxJumpReplacementSize):
-(JSC::MIPSAssembler::revertJumpToMove):
-(JSC::MIPSAssembler::replaceWithJump):
-* assembler/MacroAssembler.h:
-(MacroAssembler):
-(JSC::MacroAssembler::poke):
-* assembler/MacroAssemblerMIPS.h:
-(JSC::MacroAssemblerMIPS::add32):
-(MacroAssemblerMIPS):
-(JSC::MacroAssemblerMIPS::and32):
-(JSC::MacroAssemblerMIPS::lshift32):
-(JSC::MacroAssemblerMIPS::mul32):
-(JSC::MacroAssemblerMIPS::or32):
-(JSC::MacroAssemblerMIPS::rshift32):
-(JSC::MacroAssemblerMIPS::urshift32):
-(JSC::MacroAssemblerMIPS::sub32):
-(JSC::MacroAssemblerMIPS::xor32):
-(JSC::MacroAssemblerMIPS::store32):
-(JSC::MacroAssemblerMIPS::jump):
-(JSC::MacroAssemblerMIPS::branchAdd32):
-(JSC::MacroAssemblerMIPS::branchMul32):
-(JSC::MacroAssemblerMIPS::branchSub32):
-(JSC::MacroAssemblerMIPS::branchNeg32):
-(JSC::MacroAssemblerMIPS::call):
-(JSC::MacroAssemblerMIPS::loadDouble):
-(JSC::MacroAssemblerMIPS::moveDouble):
-(JSC::MacroAssemblerMIPS::swapDouble):
-(JSC::MacroAssemblerMIPS::subDouble):
-(JSC::MacroAssemblerMIPS::mulDouble):
-(JSC::MacroAssemblerMIPS::divDouble):
-(JSC::MacroAssemblerMIPS::negateDouble):
-(JSC::MacroAssemblerMIPS::branchEqual):
-(JSC::MacroAssemblerMIPS::branchNotEqual):
-(JSC::MacroAssemblerMIPS::branchTruncateDoubleToInt32):
-(JSC::MacroAssemblerMIPS::branchTruncateDoubleToUint32):
-(JSC::MacroAssemblerMIPS::truncateDoubleToInt32):
-(JSC::MacroAssemblerMIPS::truncateDoubleToUint32):
-(JSC::MacroAssemblerMIPS::branchDoubleNonZero):
-(JSC::MacroAssemblerMIPS::branchDoubleZeroOrNaN):
-(JSC::MacroAssemblerMIPS::invert):
-(JSC::MacroAssemblerMIPS::replaceWithJump):
-(JSC::MacroAssemblerMIPS::maxJumpReplacementSize):
-* dfg/DFGAssemblyHelpers.h:
-(AssemblyHelpers):
-(JSC::DFG::AssemblyHelpers::preserveReturnAddressAfterCall):
-(JSC::DFG::AssemblyHelpers::restoreReturnAddressBeforeReturn):
-(JSC::DFG::AssemblyHelpers::debugCall):
-* dfg/DFGCCallHelpers.h:
-(CCallHelpers):
-(JSC::DFG::CCallHelpers::setupArguments):
-(JSC::DFG::CCallHelpers::setupArgumentsWithExecState):
-* dfg/DFGFPRInfo.h:
-(DFG):
-(FPRInfo):
-(JSC::DFG::FPRInfo::toRegister):
-(JSC::DFG::FPRInfo::toIndex):
-(JSC::DFG::FPRInfo::debugName):
-* dfg/DFGGPRInfo.h:
-(DFG):
-(GPRInfo):
-(JSC::DFG::GPRInfo::toRegister):
-(JSC::DFG::GPRInfo::toIndex):
-(JSC::DFG::GPRInfo::debugName):
-* dfg/DFGSpeculativeJIT.h:
-(SpeculativeJIT):
-* jit/JSInterfaceJIT.h:
-(JSInterfaceJIT):
-* runtime/JSGlobalData.h:
-(JSC::ScratchBuffer::allocationSize):
-(ScratchBuffer):
-
-Source/WTF:
-
-* wtf/Platform.h:
-
-git-svn-id: http://svn.webkit.org/repository/webkit/trunk@143247 268f45cc-cd09-0410-ab3c-d52691b4dbfc
----
- Source/JavaScriptCore/ChangeLog                    |  90 ++++
- Source/JavaScriptCore/assembler/MIPSAssembler.h    | 109 ++++-
- Source/JavaScriptCore/assembler/MacroAssembler.h   |   7 +
- .../JavaScriptCore/assembler/MacroAssemblerMIPS.h  | 480 +++++++++++++++++++--
- Source/JavaScriptCore/dfg/DFGAssemblyHelpers.h     |  19 +-
- Source/JavaScriptCore/dfg/DFGCCallHelpers.h        |  92 ++--
- Source/JavaScriptCore/dfg/DFGFPRInfo.h             |  68 +++
- Source/JavaScriptCore/dfg/DFGGPRInfo.h             |  67 +++
- Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h      |   4 +-
- Source/JavaScriptCore/jit/JSInterfaceJIT.h         |   4 +
- Source/JavaScriptCore/runtime/JSGlobalData.h       |   6 +-
- Source/WTF/ChangeLog                               |  11 +
- Source/WTF/wtf/Platform.h                          |   4 +
- 13 files changed, 888 insertions(+), 73 deletions(-)
-
-diff --git a/Source/JavaScriptCore/assembler/MIPSAssembler.h b/Source/JavaScriptCore/assembler/MIPSAssembler.h
-index 026f87e..7f553bb 100644
---- a/Source/JavaScriptCore/assembler/MIPSAssembler.h
-+++ b/Source/JavaScriptCore/assembler/MIPSAssembler.h
-@@ -152,6 +152,8 @@ public:
-     typedef SegmentedVector<AssemblerLabel, 64> Jumps;
-     MIPSAssembler()
-+        : m_indexOfLastWatchpoint(INT_MIN)
-+        , m_indexOfTailOfLastWatchpoint(INT_MIN)
-     {
-     }
-@@ -325,7 +327,7 @@ public:
-         emitInst(0x00000000 | (rd << OP_SH_RD) | (rt << OP_SH_RT) | ((shamt & 0x1f) << OP_SH_SHAMT));
-     }
--    void sllv(RegisterID rd, RegisterID rt, int rs)
-+    void sllv(RegisterID rd, RegisterID rt, RegisterID rs)
-     {
-         emitInst(0x00000004 | (rd << OP_SH_RD) | (rt << OP_SH_RT) | (rs << OP_SH_RS));
-     }
-@@ -527,6 +529,16 @@ public:
-         emitInst(0x46200004 | (fd << OP_SH_FD) | (fs << OP_SH_FS));
-     }
-+    void movd(FPRegisterID fd, FPRegisterID fs)
-+    {
-+        emitInst(0x46200006 | (fd << OP_SH_FD) | (fs << OP_SH_FS));
-+    }
-+
-+    void negd(FPRegisterID fd, FPRegisterID fs)
-+    {
-+        emitInst(0x46200007 | (fd << OP_SH_FD) | (fs << OP_SH_FS));
-+    }
-+
-     void truncwd(FPRegisterID fd, FPRegisterID fs)
-     {
-         emitInst(0x4620000d | (fd << OP_SH_FD) | (fs << OP_SH_FS));
-@@ -619,9 +631,24 @@ public:
-         return m_buffer.label();
-     }
-+    AssemblerLabel labelForWatchpoint()
-+    {
-+        AssemblerLabel result = m_buffer.label();
-+        if (static_cast<int>(result.m_offset) != m_indexOfLastWatchpoint)
-+            result = label();
-+        m_indexOfLastWatchpoint = result.m_offset;
-+        m_indexOfTailOfLastWatchpoint = result.m_offset + maxJumpReplacementSize();
-+        return result;
-+    }
-+
-     AssemblerLabel label()
-     {
--        return m_buffer.label();
-+        AssemblerLabel result = m_buffer.label();
-+        while (UNLIKELY(static_cast<int>(result.m_offset) < m_indexOfTailOfLastWatchpoint)) {
-+            nop();
-+            result = m_buffer.label();
-+        }
-+        return result;
-     }
-     AssemblerLabel align(int alignment)
-@@ -664,14 +691,24 @@ public:
-     // Assembly helpers for moving data between fp and registers.
-     void vmov(RegisterID rd1, RegisterID rd2, FPRegisterID rn)
-     {
-+#if WTF_MIPS_ISA_REV(2) && WTF_MIPS_FP64
-+        mfc1(rd1, rn);
-+        mfhc1(rd2, rn);
-+#else
-         mfc1(rd1, rn);
-         mfc1(rd2, FPRegisterID(rn + 1));
-+#endif
-     }
-     void vmov(FPRegisterID rd, RegisterID rn1, RegisterID rn2)
-     {
-+#if WTF_MIPS_ISA_REV(2) && WTF_MIPS_FP64
-+        mtc1(rn1, rd);
-+        mthc1(rn2, rd);
-+#else
-         mtc1(rn1, rd);
-         mtc1(rn2, FPRegisterID(rd + 1));
-+#endif
-     }
-     static unsigned getCallReturnOffset(AssemblerLabel call)
-@@ -688,6 +725,35 @@ public:
-     // writable region of memory; to modify the code in an execute-only execuable
-     // pool the 'repatch' and 'relink' methods should be used.
-+    static size_t linkDirectJump(void* code, void* to)
-+    {
-+        MIPSWord* insn = reinterpret_cast<MIPSWord*>(reinterpret_cast<intptr_t>(code));
-+        size_t ops = 0;
-+        int32_t slotAddr = reinterpret_cast<int>(insn) + 4;
-+        int32_t toAddr = reinterpret_cast<int>(to);
-+
-+        if ((slotAddr & 0xf0000000) != (toAddr & 0xf0000000)) {
-+            // lui
-+            *insn = 0x3c000000 | (MIPSRegisters::t9 << OP_SH_RT) | ((toAddr >> 16) & 0xffff);
-+            ++insn;
-+            // ori
-+            *insn = 0x34000000 | (MIPSRegisters::t9 << OP_SH_RT) | (MIPSRegisters::t9 << OP_SH_RS) | (toAddr & 0xffff);
-+            ++insn;
-+            // jr
-+            *insn = 0x00000008 | (MIPSRegisters::t9 << OP_SH_RS);
-+            ++insn;
-+            ops = 4 * sizeof(MIPSWord);
-+        } else {
-+            // j
-+            *insn = 0x08000000 | ((toAddr & 0x0fffffff) >> 2);
-+            ++insn;
-+            ops = 2 * sizeof(MIPSWord);
-+        }
-+        // nop
-+        *insn = 0x00000000;
-+        return ops;
-+    }
-+
-     void linkJump(AssemblerLabel from, AssemblerLabel to)
-     {
-         ASSERT(to.isSet());
-@@ -825,29 +891,36 @@ public:
- #endif
-     }
--    static void revertJumpToMove(void* instructionStart, RegisterID rt, int imm)
-+    static ptrdiff_t maxJumpReplacementSize()
-     {
--        MIPSWord* insn = static_cast<MIPSWord*>(instructionStart) + 1;
--        ASSERT((*insn & 0xfc000000) == 0x34000000);
--        *insn = (*insn & 0xfc1f0000) | (imm & 0xffff);
--        cacheFlush(insn, sizeof(MIPSWord));
-+        return sizeof(MIPSWord) * 4;
-     }
--    static void replaceWithJump(void* instructionStart, void* to)
-+    static void revertJumpToMove(void* instructionStart, RegisterID rt, int imm)
-     {
--        MIPSWord* instruction = reinterpret_cast<MIPSWord*>(instructionStart);
--        intptr_t jumpTo = reinterpret_cast<intptr_t>(to);
-+        MIPSWord* insn = static_cast<MIPSWord*>(instructionStart);
-+        size_t codeSize = 2 * sizeof(MIPSWord);
-         // lui
--        instruction[0] = 0x3c000000 | (MIPSRegisters::t9 << OP_SH_RT) | ((jumpTo >> 16) & 0xffff);
-+        *insn = 0x3c000000 | (rt << OP_SH_RT) | ((imm >> 16) & 0xffff);
-+        ++insn;
-         // ori
--        instruction[1] = 0x34000000 | (MIPSRegisters::t9 << OP_SH_RT) | (MIPSRegisters::t9 << OP_SH_RS) | (jumpTo & 0xffff);
--        // jr
--        instruction[2] = 0x00000008 | (MIPSRegisters::t9 << OP_SH_RS);
--        // nop
--        instruction[3] = 0x0;
-+        *insn = 0x34000000 | (rt << OP_SH_RS) | (rt << OP_SH_RT) | (imm & 0xffff);
-+        ++insn;
-+        // if jr $t9
-+        if (*insn == 0x03200008) {
-+            *insn = 0x00000000;
-+            codeSize += sizeof(MIPSWord);
-+        }
-+        cacheFlush(insn, codeSize);
-+    }
--        cacheFlush(instruction, sizeof(MIPSWord) * 4);
-+    static void replaceWithJump(void* instructionStart, void* to)
-+    {
-+        ASSERT(!(bitwise_cast<uintptr_t>(instructionStart) & 3));
-+        ASSERT(!(bitwise_cast<uintptr_t>(to) & 3));
-+        size_t ops = linkDirectJump(instructionStart, to);
-+        cacheFlush(instructionStart, ops);
-     }
-     static void replaceWithLoad(void* instructionStart)
-@@ -1023,6 +1096,8 @@ private:
-     AssemblerBuffer m_buffer;
-     Jumps m_jumps;
-+    int m_indexOfLastWatchpoint;
-+    int m_indexOfTailOfLastWatchpoint;
- };
- } // namespace JSC
-diff --git a/Source/JavaScriptCore/assembler/MacroAssembler.h b/Source/JavaScriptCore/assembler/MacroAssembler.h
-index 60a93db..1f0c3de 100644
---- a/Source/JavaScriptCore/assembler/MacroAssembler.h
-+++ b/Source/JavaScriptCore/assembler/MacroAssembler.h
-@@ -200,6 +200,13 @@ public:
-     }
- #endif
-     
-+#if CPU(MIPS)
-+    void poke(FPRegisterID src, int index = 0)
-+    {
-+        ASSERT(!(index & 1));
-+        storeDouble(src, addressForPoke(index));
-+    }
-+#endif
-     // Backwards banches, these are currently all implemented using existing forwards branch mechanisms.
-     void branchPtr(RelationalCondition cond, RegisterID op1, TrustedImmPtr imm, Label target)
-diff --git a/Source/JavaScriptCore/assembler/MacroAssemblerMIPS.h b/Source/JavaScriptCore/assembler/MacroAssemblerMIPS.h
-index 43ad434..4f14960 100644
---- a/Source/JavaScriptCore/assembler/MacroAssemblerMIPS.h
-+++ b/Source/JavaScriptCore/assembler/MacroAssemblerMIPS.h
-@@ -114,6 +114,11 @@ public:
-         m_assembler.addu(dest, dest, src);
-     }
-+    void add32(RegisterID op1, RegisterID op2, RegisterID dest)
-+    {
-+        m_assembler.addu(dest, op1, op2);
-+    }
-+
-     void add32(TrustedImm32 imm, RegisterID dest)
-     {
-         add32(imm, dest, dest);
-@@ -267,6 +272,11 @@ public:
-         m_assembler.andInsn(dest, dest, src);
-     }
-+    void and32(RegisterID op1, RegisterID op2, RegisterID dest)
-+    {
-+        m_assembler.andInsn(dest, op1, op2);
-+    }
-+
-     void and32(TrustedImm32 imm, RegisterID dest)
-     {
-         if (!imm.m_value && !m_fixedWidth)
-@@ -283,9 +293,16 @@ public:
-         }
-     }
--    void lshift32(TrustedImm32 imm, RegisterID dest)
-+    void and32(TrustedImm32 imm, RegisterID src, RegisterID dest)
-     {
--        m_assembler.sll(dest, dest, imm.m_value);
-+        if (!imm.m_value && !m_fixedWidth)
-+            move(MIPSRegisters::zero, dest);
-+        else if (imm.m_value > 0 && imm.m_value < 65535 && !m_fixedWidth)
-+            m_assembler.andi(dest, src, imm.m_value);
-+        else {
-+            move(imm, immTempRegister);
-+            m_assembler.andInsn(dest, src, immTempRegister);
-+        }
-     }
-     void lshift32(RegisterID shiftAmount, RegisterID dest)
-@@ -293,11 +310,33 @@ public:
-         m_assembler.sllv(dest, dest, shiftAmount);
-     }
-+    void lshift32(RegisterID src, RegisterID shiftAmount, RegisterID dest)
-+    {
-+        m_assembler.sllv(dest, src, shiftAmount);
-+    }
-+
-+    void lshift32(TrustedImm32 imm, RegisterID dest)
-+    {
-+        move(imm, immTempRegister);
-+        m_assembler.sllv(dest, dest, immTempRegister);
-+    }
-+
-+    void lshift32(RegisterID src, TrustedImm32 imm, RegisterID dest)
-+    {
-+        move(imm, immTempRegister);
-+        m_assembler.sllv(dest, src, immTempRegister);
-+    }
-+
-     void mul32(RegisterID src, RegisterID dest)
-     {
-         m_assembler.mul(dest, dest, src);
-     }
-+    void mul32(RegisterID op1, RegisterID op2, RegisterID dest)
-+    {
-+        m_assembler.mul(dest, op1, op2);
-+    }
-+
-     void mul32(TrustedImm32 imm, RegisterID src, RegisterID dest)
-     {
-         if (!imm.m_value && !m_fixedWidth)
-@@ -348,6 +387,24 @@ public:
-         m_assembler.orInsn(dest, dest, dataTempRegister);
-     }
-+    void or32(TrustedImm32 imm, RegisterID src, RegisterID dest)
-+    {
-+        if (!imm.m_value && !m_fixedWidth)
-+            return;
-+
-+        if (imm.m_value > 0 && imm.m_value < 65535 && !m_fixedWidth) {
-+            m_assembler.ori(dest, src, imm.m_value);
-+            return;
-+        }
-+
-+        /*
-+            li      dataTemp, imm
-+            or      dest, src, dataTemp
-+        */
-+        move(imm, dataTempRegister);
-+        m_assembler.orInsn(dest, src, dataTempRegister);
-+    }
-+
-     void or32(RegisterID src, AbsoluteAddress dest)
-     {
-         load32(dest.m_ptr, dataTempRegister);
-@@ -360,6 +417,11 @@ public:
-         m_assembler.srav(dest, dest, shiftAmount);
-     }
-+    void rshift32(RegisterID src, RegisterID shiftAmount, RegisterID dest)
-+    {
-+        m_assembler.srav(dest, src, shiftAmount);
-+    }
-+
-     void rshift32(TrustedImm32 imm, RegisterID dest)
-     {
-         m_assembler.sra(dest, dest, imm.m_value);
-@@ -375,16 +437,31 @@ public:
-         m_assembler.srlv(dest, dest, shiftAmount);
-     }
-+    void urshift32(RegisterID src, RegisterID shiftAmount, RegisterID dest)
-+    {
-+        m_assembler.srlv(dest, src, shiftAmount);
-+    }
-+
-     void urshift32(TrustedImm32 imm, RegisterID dest)
-     {
-         m_assembler.srl(dest, dest, imm.m_value);
-     }
-+    void urshift32(RegisterID src, TrustedImm32 imm, RegisterID dest)
-+    {
-+        m_assembler.srl(dest, src, imm.m_value);
-+    }
-+
-     void sub32(RegisterID src, RegisterID dest)
-     {
-         m_assembler.subu(dest, dest, src);
-     }
-+    void sub32(RegisterID op1, RegisterID op2, RegisterID dest)
-+    {
-+        m_assembler.subu(dest, op1, op2);
-+    }
-+
-     void sub32(TrustedImm32 imm, RegisterID dest)
-     {
-         if (imm.m_value >= -32767 && imm.m_value <= 32768
-@@ -495,6 +572,11 @@ public:
-         m_assembler.xorInsn(dest, dest, src);
-     }
-+    void xor32(RegisterID op1, RegisterID op2, RegisterID dest)
-+    {
-+        m_assembler.xorInsn(dest, op1, op2);
-+    }
-+
-     void xor32(TrustedImm32 imm, RegisterID dest)
-     {
-         if (imm.m_value == -1) {
-@@ -510,6 +592,21 @@ public:
-         m_assembler.xorInsn(dest, dest, immTempRegister);
-     }
-+    void xor32(TrustedImm32 imm, RegisterID src, RegisterID dest)
-+    {
-+        if (imm.m_value == -1) {
-+            m_assembler.nor(dest, src, MIPSRegisters::zero);
-+            return;
-+        }
-+
-+        /*
-+            li  immTemp, imm
-+            xor dest, dest, immTemp
-+        */
-+        move(imm, immTempRegister);
-+        m_assembler.xorInsn(dest, src, immTempRegister);
-+    }
-+
-     void sqrtDouble(FPRegisterID src, FPRegisterID dst)
-     {
-         m_assembler.sqrtd(dst, src);
-@@ -989,6 +1086,44 @@ public:
-         }
-     }
-+    void store32(TrustedImm32 imm, BaseIndex address)
-+    {
-+        if (address.offset >= -32768 && address.offset <= 32767 && !m_fixedWidth) {
-+            /*
-+                sll     addrTemp, address.index, address.scale
-+                addu    addrTemp, addrTemp, address.base
-+                sw      src, address.offset(addrTemp)
-+            */
-+            m_assembler.sll(addrTempRegister, address.index, address.scale);
-+            m_assembler.addu(addrTempRegister, addrTempRegister, address.base);
-+            if (!imm.m_value)
-+                m_assembler.sw(MIPSRegisters::zero, addrTempRegister, address.offset);
-+            else {
-+                move(imm, immTempRegister);
-+                m_assembler.sw(immTempRegister, addrTempRegister, address.offset);
-+            }
-+        } else {
-+            /*
-+                sll     addrTemp, address.index, address.scale
-+                addu    addrTemp, addrTemp, address.base
-+                lui     immTemp, (address.offset + 0x8000) >> 16
-+                addu    addrTemp, addrTemp, immTemp
-+                sw      src, (address.offset & 0xffff)(at)
-+            */
-+            m_assembler.sll(addrTempRegister, address.index, address.scale);
-+            m_assembler.addu(addrTempRegister, addrTempRegister, address.base);
-+            m_assembler.lui(immTempRegister, (address.offset + 0x8000) >> 16);
-+            m_assembler.addu(addrTempRegister, addrTempRegister, immTempRegister);
-+            if (!imm.m_value && !m_fixedWidth)
-+                m_assembler.sw(MIPSRegisters::zero, addrTempRegister, address.offset);
-+            else {
-+                move(imm, immTempRegister);
-+                m_assembler.sw(immTempRegister, addrTempRegister, address.offset);
-+            }
-+        }
-+    }
-+
-+
-     void store32(RegisterID src, const void* address)
-     {
-         /*
-@@ -1336,6 +1471,15 @@ public:
-         m_fixedWidth = false;
-     }
-+    void jump(AbsoluteAddress address)
-+    {
-+        m_fixedWidth = true;
-+        load32(address.m_ptr, MIPSRegisters::t9);
-+        m_assembler.jr(MIPSRegisters::t9);
-+        m_assembler.nop();
-+        m_fixedWidth = false;
-+    }
-+
-     void moveDoubleToInts(FPRegisterID src, RegisterID dest1, RegisterID dest2)
-     {
-         m_assembler.vmov(dest1, dest2, src);
-@@ -1404,6 +1548,53 @@ public:
-         return Jump();
-     }
-+    Jump branchAdd32(ResultCondition cond, RegisterID op1, RegisterID op2, RegisterID dest)
-+    {
-+        ASSERT((cond == Overflow) || (cond == Signed) || (cond == Zero) || (cond == NonZero));
-+        if (cond == Overflow) {
-+            /*
-+                move    dataTemp, op1
-+                xor     cmpTemp, dataTemp, op2
-+                bltz    cmpTemp, No_overflow    # diff sign bit -> no overflow
-+                addu    dest, dataTemp, op2
-+                xor     cmpTemp, dest, dataTemp
-+                bgez    cmpTemp, No_overflow    # same sign big -> no overflow
-+                nop
-+                b       Overflow
-+                nop
-+                nop
-+                nop
-+                nop
-+                nop
-+            No_overflow:
-+            */
-+            move(op1, dataTempRegister);
-+            m_assembler.xorInsn(cmpTempRegister, dataTempRegister, op2);
-+            m_assembler.bltz(cmpTempRegister, 10);
-+            m_assembler.addu(dest, dataTempRegister, op2);
-+            m_assembler.xorInsn(cmpTempRegister, dest, dataTempRegister);
-+            m_assembler.bgez(cmpTempRegister, 7);
-+            m_assembler.nop();
-+            return jump();
-+        }
-+        if (cond == Signed) {
-+            add32(op1, op2, dest);
-+            // Check if dest is negative.
-+            m_assembler.slt(cmpTempRegister, dest, MIPSRegisters::zero);
-+            return branchNotEqual(cmpTempRegister, MIPSRegisters::zero);
-+        }
-+        if (cond == Zero) {
-+            add32(op1, op2, dest);
-+            return branchEqual(dest, MIPSRegisters::zero);
-+        }
-+        if (cond == NonZero) {
-+            add32(op1, op2, dest);
-+            return branchNotEqual(dest, MIPSRegisters::zero);
-+        }
-+        ASSERT(0);
-+        return Jump();
-+    }
-+
-     Jump branchAdd32(ResultCondition cond, TrustedImm32 imm, RegisterID dest)
-     {
-         move(imm, immTempRegister);
-@@ -1417,6 +1608,111 @@ public:
-         return branchAdd32(cond, immTempRegister, dest);
-     }
-+    Jump branchAdd32(ResultCondition cond, TrustedImm32 imm, AbsoluteAddress dest)
-+    {
-+        ASSERT((cond == Overflow) || (cond == Signed) || (cond == Zero) || (cond == NonZero));
-+        if (cond == Overflow) {
-+            /*
-+                move    dataTemp, dest
-+                xori    cmpTemp, dataTemp, imm
-+                bltz    cmpTemp, No_overflow    # diff sign bit -> no overflow
-+                addiu   dataTemp, dataTemp, imm
-+                move    dest, dataTemp
-+                xori    cmpTemp, dataTemp, imm
-+                bgez    cmpTemp, No_overflow    # same sign big -> no overflow
-+                nop
-+                b       Overflow
-+                nop
-+                nop
-+                nop
-+                nop
-+                nop
-+            No_overflow:
-+            */
-+            if (imm.m_value >= -32768 && imm.m_value  <= 32767 && !m_fixedWidth) {
-+                load32(dest.m_ptr, dataTempRegister);
-+                m_assembler.xori(cmpTempRegister, dataTempRegister, imm.m_value);
-+                m_assembler.bltz(cmpTempRegister, 10);
-+                m_assembler.addiu(dataTempRegister, dataTempRegister, imm.m_value);
-+                store32(dataTempRegister, dest.m_ptr);
-+                m_assembler.xori(cmpTempRegister, dataTempRegister, imm.m_value);
-+                m_assembler.bgez(cmpTempRegister, 7);
-+                m_assembler.nop();
-+            } else {
-+                load32(dest.m_ptr, dataTempRegister);
-+                move(imm, immTempRegister);
-+                m_assembler.xorInsn(cmpTempRegister, dataTempRegister, immTempRegister);
-+                m_assembler.bltz(cmpTempRegister, 10);
-+                m_assembler.addiu(dataTempRegister, dataTempRegister, immTempRegister);
-+                store32(dataTempRegister, dest.m_ptr);
-+                m_assembler.xori(cmpTempRegister, dataTempRegister, immTempRegister);
-+                m_assembler.bgez(cmpTempRegister, 7);
-+                m_assembler.nop();
-+            }
-+            return jump();
-+        }
-+        move(imm, immTempRegister);
-+        load32(dest.m_ptr, dataTempRegister);
-+        add32(immTempRegister, dataTempRegister);
-+        store32(dataTempRegister, dest.m_ptr);
-+        if (cond == Signed) {
-+            // Check if dest is negative.
-+            m_assembler.slt(cmpTempRegister, dataTempRegister, MIPSRegisters::zero);
-+            return branchNotEqual(cmpTempRegister, MIPSRegisters::zero);
-+        }
-+        if (cond == Zero)
-+            return branchEqual(dataTempRegister, MIPSRegisters::zero);
-+        if (cond == NonZero)
-+            return branchNotEqual(dataTempRegister, MIPSRegisters::zero);
-+        ASSERT(0);
-+        return Jump();
-+    }
-+
-+    Jump branchMul32(ResultCondition cond, RegisterID src1, RegisterID src2, RegisterID dest)
-+    {
-+        ASSERT((cond == Overflow) || (cond == Signed) || (cond == Zero) || (cond == NonZero));
-+        if (cond == Overflow) {
-+            /*
-+                mult    src, dest
-+                mfhi    dataTemp
-+                mflo    dest
-+                sra     addrTemp, dest, 31
-+                beq     dataTemp, addrTemp, No_overflow # all sign bits (bit 63 to bit 31) are the same -> no overflow
-+                nop
-+                b       Overflow
-+                nop
-+                nop
-+                nop
-+                nop
-+                nop
-+            No_overflow:
-+            */
-+            m_assembler.mult(src1, src2);
-+            m_assembler.mfhi(dataTempRegister);
-+            m_assembler.mflo(dest);
-+            m_assembler.sra(addrTempRegister, dest, 31);
-+            m_assembler.beq(dataTempRegister, addrTempRegister, 7);
-+            m_assembler.nop();
-+            return jump();
-+        }
-+        if (cond == Signed) {
-+            mul32(src1, src2, dest);
-+            // Check if dest is negative.
-+            m_assembler.slt(cmpTempRegister, dest, MIPSRegisters::zero);
-+            return branchNotEqual(cmpTempRegister, MIPSRegisters::zero);
-+        }
-+        if (cond == Zero) {
-+            mul32(src1, src2, dest);
-+            return branchEqual(dest, MIPSRegisters::zero);
-+        }
-+        if (cond == NonZero) {
-+            mul32(src1, src2, dest);
-+            return branchNotEqual(dest, MIPSRegisters::zero);
-+        }
-+        ASSERT(0);
-+        return Jump();
-+    }
-+
-     Jump branchMul32(ResultCondition cond, RegisterID src, RegisterID dest)
-     {
-         ASSERT((cond == Overflow) || (cond == Signed) || (cond == Zero) || (cond == NonZero));
-@@ -1465,8 +1761,7 @@ public:
-     Jump branchMul32(ResultCondition cond, TrustedImm32 imm, RegisterID src, RegisterID dest)
-     {
-         move(imm, immTempRegister);
--        move(src, dest);
--        return branchMul32(cond, immTempRegister, dest);
-+        return branchMul32(cond, immTempRegister, src, dest);
-     }
-     Jump branchSub32(ResultCondition cond, RegisterID src, RegisterID dest)
-@@ -1525,8 +1820,60 @@ public:
-     Jump branchSub32(ResultCondition cond, RegisterID src, TrustedImm32 imm, RegisterID dest)
-     {
-         move(imm, immTempRegister);
--        move(src, dest);
--        return branchSub32(cond, immTempRegister, dest);
-+        return branchSub32(cond, src, immTempRegister, dest);
-+    }
-+
-+    Jump branchSub32(ResultCondition cond, RegisterID op1, RegisterID op2, RegisterID dest)
-+    {
-+        ASSERT((cond == Overflow) || (cond == Signed) || (cond == Zero) || (cond == NonZero));
-+        if (cond == Overflow) {
-+            /*
-+                move    dataTemp, op1
-+                xor     cmpTemp, dataTemp, op2
-+                bgez    cmpTemp, No_overflow    # same sign bit -> no overflow
-+                subu    dest, dataTemp, op2
-+                xor     cmpTemp, dest, dataTemp
-+                bgez    cmpTemp, No_overflow    # same sign bit -> no overflow
-+                nop
-+                b       Overflow
-+                nop
-+                nop
-+                nop
-+                nop
-+                nop
-+            No_overflow:
-+            */
-+            move(op1, dataTempRegister);
-+            m_assembler.xorInsn(cmpTempRegister, dataTempRegister, op2);
-+            m_assembler.bgez(cmpTempRegister, 10);
-+            m_assembler.subu(dest, dataTempRegister, op2);
-+            m_assembler.xorInsn(cmpTempRegister, dest, dataTempRegister);
-+            m_assembler.bgez(cmpTempRegister, 7);
-+            m_assembler.nop();
-+            return jump();
-+        }
-+        if (cond == Signed) {
-+            sub32(op1, op2, dest);
-+            // Check if dest is negative.
-+            m_assembler.slt(cmpTempRegister, dest, MIPSRegisters::zero);
-+            return branchNotEqual(cmpTempRegister, MIPSRegisters::zero);
-+        }
-+        if (cond == Zero) {
-+            sub32(op1, op2, dest);
-+            return branchEqual(dest, MIPSRegisters::zero);
-+        }
-+        if (cond == NonZero) {
-+            sub32(op1, op2, dest);
-+            return branchNotEqual(dest, MIPSRegisters::zero);
-+        }
-+        ASSERT(0);
-+        return Jump();
-+    }
-+
-+    Jump branchNeg32(ResultCondition cond, RegisterID srcDest)
-+    {
-+        m_assembler.li(dataTempRegister, -1);
-+        return branchMul32(cond, dataTempRegister, srcDest);
-     }
-     Jump branchOr32(ResultCondition cond, RegisterID src, RegisterID dest)
-@@ -1578,7 +1925,8 @@ public:
-     Call call(RegisterID target)
-     {
--        m_assembler.jalr(target);
-+        move(target, MIPSRegisters::t9);
-+        m_assembler.jalr(MIPSRegisters::t9);
-         m_assembler.nop();
-         return Call(m_assembler.label(), Call::None);
-     }
-@@ -1822,7 +2170,7 @@ public:
-                 lui     immTemp, (address.offset + 0x8000) >> 16
-                 addu    addrTemp, addrTemp, immTemp
-                 lwc1    dest, (address.offset & 0xffff)(at)
--                lwc1    dest+4, (address.offset & 0xffff + 4)(at)
-+                lwc1    dest+1, (address.offset & 0xffff + 4)(at)
-             */
-             m_assembler.sll(addrTempRegister, address.index, address.scale);
-             m_assembler.addu(addrTempRegister, addrTempRegister, address.base);
-@@ -2009,6 +2357,19 @@ public:
- #endif
-     }
-+    void moveDouble(FPRegisterID src, FPRegisterID dest)
-+    {
-+        if (src != dest || m_fixedWidth)
-+            m_assembler.movd(dest, src);
-+    }
-+
-+    void swapDouble(FPRegisterID fr1, FPRegisterID fr2)
-+    {
-+        moveDouble(fr1, fpTempRegister);
-+        moveDouble(fr2, fr1);
-+        moveDouble(fpTempRegister, fr2);
-+    }
-+
-     void addDouble(FPRegisterID src, FPRegisterID dest)
-     {
-         m_assembler.addd(dest, dest, src);
-@@ -2036,6 +2397,11 @@ public:
-         m_assembler.subd(dest, dest, src);
-     }
-+    void subDouble(FPRegisterID op1, FPRegisterID op2, FPRegisterID dest)
-+    {
-+        m_assembler.subd(dest, op1, op2);
-+    }
-+
-     void subDouble(Address src, FPRegisterID dest)
-     {
-         loadDouble(src, fpTempRegister);
-@@ -2053,11 +2419,32 @@ public:
-         m_assembler.muld(dest, dest, fpTempRegister);
-     }
-+    void mulDouble(FPRegisterID op1, FPRegisterID op2, FPRegisterID dest)
-+    {
-+        m_assembler.muld(dest, op1, op2);
-+    }
-+
-     void divDouble(FPRegisterID src, FPRegisterID dest)
-     {
-         m_assembler.divd(dest, dest, src);
-     }
-+    void divDouble(FPRegisterID op1, FPRegisterID op2, FPRegisterID dest)
-+    {
-+        m_assembler.divd(dest, op1, op2);
-+    }
-+
-+    void divDouble(Address src, FPRegisterID dest)
-+    {
-+        loadDouble(src, fpTempRegister);
-+        m_assembler.divd(dest, dest, fpTempRegister);
-+    }
-+
-+    void negateDouble(FPRegisterID src, FPRegisterID dest)
-+    {
-+        m_assembler.negd(dest, src);
-+    }
-+
-     void convertInt32ToDouble(RegisterID src, FPRegisterID dest)
-     {
-         m_assembler.mtc1(src, fpTempRegister);
-@@ -2117,6 +2504,8 @@ public:
-     Jump branchEqual(RegisterID rs, RegisterID rt)
-     {
-+        m_assembler.nop();
-+        m_assembler.nop();
-         m_assembler.appendJump();
-         m_assembler.beq(rs, rt, 0);
-         m_assembler.nop();
-@@ -2126,6 +2515,8 @@ public:
-     Jump branchNotEqual(RegisterID rs, RegisterID rt)
-     {
-+        m_assembler.nop();
-+        m_assembler.nop();
-         m_assembler.appendJump();
-         m_assembler.bne(rs, rt, 0);
-         m_assembler.nop();
-@@ -2192,11 +2583,33 @@ public:
-     // If the result is not representable as a 32 bit value, branch.
-     // May also branch for some values that are representable in 32 bits
-     // (specifically, in this case, INT_MAX 0x7fffffff).
--    Jump branchTruncateDoubleToInt32(FPRegisterID src, RegisterID dest)
-+    enum BranchTruncateType { BranchIfTruncateFailed, BranchIfTruncateSuccessful };
-+    Jump branchTruncateDoubleToInt32(FPRegisterID src, RegisterID dest, BranchTruncateType branchType = BranchIfTruncateFailed)
-+    {
-+        m_assembler.truncwd(fpTempRegister, src);
-+        m_assembler.mfc1(dest, fpTempRegister);
-+        return branch32(branchType == BranchIfTruncateFailed ? Equal : NotEqual, dest, TrustedImm32(0x7fffffff));
-+    }
-+
-+    Jump branchTruncateDoubleToUint32(FPRegisterID src, RegisterID dest, BranchTruncateType branchType = BranchIfTruncateFailed)
-+    {
-+        m_assembler.truncwd(fpTempRegister, src);
-+        m_assembler.mfc1(dest, fpTempRegister);
-+        return branch32(branchType == BranchIfTruncateFailed ? Equal : NotEqual, dest, TrustedImm32(0));
-+    }
-+
-+    // Result is undefined if the value is outside of the integer range.
-+    void truncateDoubleToInt32(FPRegisterID src, RegisterID dest)
-+    {
-+        m_assembler.truncwd(fpTempRegister, src);
-+        m_assembler.mfc1(dest, fpTempRegister);
-+    }
-+
-+    // Result is undefined if src > 2^31
-+    void truncateDoubleToUint32(FPRegisterID src, RegisterID dest)
-     {
-         m_assembler.truncwd(fpTempRegister, src);
-         m_assembler.mfc1(dest, fpTempRegister);
--        return branch32(Equal, dest, TrustedImm32(0x7fffffff));
-     }
-     // Convert 'src' to an integer, and places the resulting 'dest'.
-@@ -2218,28 +2631,43 @@ public:
-     Jump branchDoubleNonZero(FPRegisterID reg, FPRegisterID scratch)
-     {
--#if WTF_MIPS_ISA_REV(2) && WTF_MIPS_FP64
--        m_assembler.mtc1(MIPSRegisters::zero, scratch);
--        m_assembler.mthc1(MIPSRegisters::zero, scratch);
--#else
--        m_assembler.mtc1(MIPSRegisters::zero, scratch);
--        m_assembler.mtc1(MIPSRegisters::zero, FPRegisterID(scratch + 1));
--#endif
-+        m_assembler.vmov(scratch, MIPSRegisters::zero, MIPSRegisters::zero);
-         return branchDouble(DoubleNotEqual, reg, scratch);
-     }
-     Jump branchDoubleZeroOrNaN(FPRegisterID reg, FPRegisterID scratch)
-     {
--#if WTF_MIPS_ISA_REV(2) && WTF_MIPS_FP64
--        m_assembler.mtc1(MIPSRegisters::zero, scratch);
--        m_assembler.mthc1(MIPSRegisters::zero, scratch);
--#else
--        m_assembler.mtc1(MIPSRegisters::zero, scratch);
--        m_assembler.mtc1(MIPSRegisters::zero, FPRegisterID(scratch + 1));
--#endif
-+        m_assembler.vmov(scratch, MIPSRegisters::zero, MIPSRegisters::zero);
-         return branchDouble(DoubleEqualOrUnordered, reg, scratch);
-     }
-+    // Invert a relational condition, e.g. == becomes !=, < becomes >=, etc.
-+    static RelationalCondition invert(RelationalCondition cond)
-+    {
-+        RelationalCondition r;
-+        if (cond == Equal)
-+            r = NotEqual;
-+        else if (cond == NotEqual)
-+            r = Equal;
-+        else if (cond == Above)
-+            r = BelowOrEqual;
-+        else if (cond == AboveOrEqual)
-+            r = Below;
-+        else if (cond == Below)
-+            r = AboveOrEqual;
-+        else if (cond == BelowOrEqual)
-+            r = Above;
-+        else if (cond == GreaterThan)
-+            r = LessThanOrEqual;
-+        else if (cond == GreaterThanOrEqual)
-+            r = LessThan;
-+        else if (cond == LessThan)
-+            r = GreaterThanOrEqual;
-+        else if (cond == LessThanOrEqual)
-+            r = GreaterThan;
-+        return r;
-+    }
-+
-     void nop()
-     {
-         m_assembler.nop();
-@@ -2252,12 +2680,12 @@ public:
-     static void replaceWithJump(CodeLocationLabel instructionStart, CodeLocationLabel destination)
-     {
--        RELEASE_ASSERT_NOT_REACHED();
-+        MIPSAssembler::replaceWithJump(instructionStart.dataLocation(), destination.dataLocation());
-     }
-     
-     static ptrdiff_t maxJumpReplacementSize()
-     {
--        RELEASE_ASSERT_NOT_REACHED();
-+        MIPSAssembler::maxJumpReplacementSize();
-         return 0;
-     }
-diff --git a/Source/JavaScriptCore/dfg/DFGAssemblyHelpers.h b/Source/JavaScriptCore/dfg/DFGAssemblyHelpers.h
-index fa0f5e0..573d8dc 100644
---- a/Source/JavaScriptCore/dfg/DFGAssemblyHelpers.h
-+++ b/Source/JavaScriptCore/dfg/DFGAssemblyHelpers.h
-@@ -93,6 +93,23 @@ public:
-     }
- #endif
-+#if CPU(MIPS)
-+    ALWAYS_INLINE void preserveReturnAddressAfterCall(RegisterID reg)
-+    {
-+        move(returnAddressRegister, reg);
-+    }
-+
-+    ALWAYS_INLINE void restoreReturnAddressBeforeReturn(RegisterID reg)
-+    {
-+        move(reg, returnAddressRegister);
-+    }
-+
-+    ALWAYS_INLINE void restoreReturnAddressBeforeReturn(Address address)
-+    {
-+        loadPtr(address, returnAddressRegister);
-+    }
-+#endif
-+
-     void emitGetFromCallFrameHeaderPtr(JSStack::CallFrameHeaderEntry entry, GPRReg to)
-     {
-         loadPtr(Address(GPRInfo::callFrameRegister, entry * sizeof(Register)), to);
-@@ -193,7 +210,7 @@ public:
-         move(TrustedImmPtr(scratchBuffer->activeLengthPtr()), GPRInfo::regT0);
-         storePtr(TrustedImmPtr(scratchSize), GPRInfo::regT0);
--#if CPU(X86_64) || CPU(ARM)
-+#if CPU(X86_64) || CPU(ARM) || CPU(MIPS)
-         move(TrustedImmPtr(buffer), GPRInfo::argumentGPR2);
-         move(TrustedImmPtr(argument), GPRInfo::argumentGPR1);
-         move(GPRInfo::callFrameRegister, GPRInfo::argumentGPR0);
-diff --git a/Source/JavaScriptCore/dfg/DFGCCallHelpers.h b/Source/JavaScriptCore/dfg/DFGCCallHelpers.h
-index 8adde05..3d99f6f 100644
---- a/Source/JavaScriptCore/dfg/DFGCCallHelpers.h
-+++ b/Source/JavaScriptCore/dfg/DFGCCallHelpers.h
-@@ -576,6 +576,39 @@ public:
-         poke(GPRInfo::nonArgGPR0);
-     }
- #endif // CPU(ARM_HARDFP)
-+#elif CPU(MIPS)
-+    ALWAYS_INLINE void setupArguments(FPRReg arg1)
-+    {
-+        moveDouble(arg1, FPRInfo::argumentFPR0);
-+    }
-+
-+    ALWAYS_INLINE void setupArguments(FPRReg arg1, FPRReg arg2)
-+    {
-+        if (arg2 != FPRInfo::argumentFPR0) {
-+            moveDouble(arg1, FPRInfo::argumentFPR0);
-+            moveDouble(arg2, FPRInfo::argumentFPR1);
-+        } else if (arg1 != FPRInfo::argumentFPR1) {
-+            moveDouble(arg2, FPRInfo::argumentFPR1);
-+            moveDouble(arg1, FPRInfo::argumentFPR0);
-+        } else {
-+            // Swap arg1, arg2.
-+            swapDouble(FPRInfo::argumentFPR0, FPRInfo::argumentFPR1);
-+        }
-+    }
-+
-+    ALWAYS_INLINE void setupArgumentsWithExecState(FPRReg arg1, GPRReg arg2)
-+    {
-+        assembler().vmov(GPRInfo::argumentGPR2, GPRInfo::argumentGPR3, arg1);
-+        move(GPRInfo::callFrameRegister, GPRInfo::argumentGPR0);
-+        poke(arg2, 4);
-+    }
-+
-+    ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, GPRReg arg2, FPRReg arg3)
-+    {
-+        setupStubArguments(arg1, arg2);
-+        move(GPRInfo::callFrameRegister, GPRInfo::argumentGPR0);
-+        poke(arg3, 4);
-+    }
- #else
- #error "DFG JIT not supported on this platform."
- #endif
-@@ -803,119 +836,126 @@ public:
-     // These methods are suitable for any calling convention that provides for
-     // exactly 4 argument registers, e.g. ARMv7.
- #if NUMBER_OF_ARGUMENT_REGISTERS == 4
-+
-+#if CPU(MIPS)
-+#define POKE_ARGUMENT_OFFSET 4
-+#else
-+#define POKE_ARGUMENT_OFFSET 0
-+#endif
-+
-     ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, GPRReg arg2, GPRReg arg3, GPRReg arg4)
-     {
--        poke(arg4);
-+        poke(arg4, POKE_ARGUMENT_OFFSET);
-         setupArgumentsWithExecState(arg1, arg2, arg3);
-     }
-     ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, GPRReg arg2, GPRReg arg3, TrustedImm32 arg4)
-     {
--        poke(arg4);
-+        poke(arg4, POKE_ARGUMENT_OFFSET);
-         setupArgumentsWithExecState(arg1, arg2, arg3);
-     }
-     ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, TrustedImmPtr arg2, TrustedImm32 arg3, GPRReg arg4)
-     {
--        poke(arg4);
-+        poke(arg4, POKE_ARGUMENT_OFFSET);
-         setupArgumentsWithExecState(arg1, arg2, arg3);
-     }
-     ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, TrustedImmPtr arg2, TrustedImm32 arg3, GPRReg arg4, GPRReg arg5)
-     {
--        poke(arg5, 1);
--        poke(arg4);
-+        poke(arg5, POKE_ARGUMENT_OFFSET + 1);
-+        poke(arg4, POKE_ARGUMENT_OFFSET);
-         setupArgumentsWithExecState(arg1, arg2, arg3);
-     }
-     ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, GPRReg arg2, TrustedImm32 arg3, TrustedImm32 arg4)
-     {
--        poke(arg4);
-+        poke(arg4, POKE_ARGUMENT_OFFSET);
-         setupArgumentsWithExecState(arg1, arg2, arg3);
-     }
-     ALWAYS_INLINE void setupArgumentsWithExecState(TrustedImm32 arg1, TrustedImm32 arg2, GPRReg arg3, GPRReg arg4)
-     {
--        poke(arg4);
-+        poke(arg4, POKE_ARGUMENT_OFFSET);
-         setupArgumentsWithExecState(arg1, arg2, arg3);
-     }
-     ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, GPRReg arg2, GPRReg arg3, TrustedImmPtr arg4)
-     {
--        poke(arg4);
-+        poke(arg4, POKE_ARGUMENT_OFFSET);
-         setupArgumentsWithExecState(arg1, arg2, arg3);
-     }
-     ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, GPRReg arg2, GPRReg arg3, GPRReg arg4, GPRReg arg5)
-     {
--        poke(arg5, 1);
--        poke(arg4);
-+        poke(arg5, POKE_ARGUMENT_OFFSET + 1);
-+        poke(arg4, POKE_ARGUMENT_OFFSET);
-         setupArgumentsWithExecState(arg1, arg2, arg3);
-     }
-     ALWAYS_INLINE void setupArgumentsWithExecState(TrustedImm32 arg1, GPRReg arg2, GPRReg arg3, GPRReg arg4)
-     {
--        poke(arg4);
-+        poke(arg4, POKE_ARGUMENT_OFFSET);
-         setupArgumentsWithExecState(arg1, arg2, arg3);
-     }
-     ALWAYS_INLINE void setupArgumentsWithExecState(TrustedImm32 arg1, GPRReg arg2, GPRReg arg3, TrustedImmPtr arg4)
-     {
--        poke(arg4);
-+        poke(arg4, POKE_ARGUMENT_OFFSET);
-         setupArgumentsWithExecState(arg1, arg2, arg3);
-     }
-     ALWAYS_INLINE void setupArgumentsWithExecState(TrustedImm32 arg1, GPRReg arg2, TrustedImm32 arg3, TrustedImmPtr arg4)
-     {
--        poke(arg4);
-+        poke(arg4, POKE_ARGUMENT_OFFSET);
-         setupArgumentsWithExecState(arg1, arg2, arg3);
-     }
-     ALWAYS_INLINE void setupArgumentsWithExecState(TrustedImm32 arg1, GPRReg arg2, TrustedImm32 arg3, GPRReg arg4)
-     {
--        poke(arg4);
-+        poke(arg4, POKE_ARGUMENT_OFFSET);
-         setupArgumentsWithExecState(arg1, arg2, arg3);
-     }
-     ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, GPRReg arg2, TrustedImm32 arg3, GPRReg arg4, GPRReg arg5)
-     {
--        poke(arg5, 1);
--        poke(arg4);
-+        poke(arg5, POKE_ARGUMENT_OFFSET + 1);
-+        poke(arg4, POKE_ARGUMENT_OFFSET);
-         setupArgumentsWithExecState(arg1, arg2, arg3);
-     }
-     ALWAYS_INLINE void setupArgumentsWithExecState(GPRReg arg1, GPRReg arg2, TrustedImm32 arg3, GPRReg arg4, TrustedImm32 arg5)
-     {
--        poke(arg5, 1);
--        poke(arg4);
-+        poke(arg5, POKE_ARGUMENT_OFFSET + 1);
-+        poke(arg4, POKE_ARGUMENT_OFFSET);
-         setupArgumentsWithExecState(arg1, arg2, arg3);
-     }
-     ALWAYS_INLINE void setupArgumentsWithExecState(TrustedImm32 arg1, GPRReg arg2, GPRReg arg3, GPRReg arg4, TrustedImmPtr arg5)
-     {
--        poke(arg5, 1);
--        poke(arg4);
-+        poke(arg5, POKE_ARGUMENT_OFFSET + 1);
-+        poke(arg4, POKE_ARGUMENT_OFFSET);
-         setupArgumentsWithExecState(arg1, arg2, arg3);
-     }
-     ALWAYS_INLINE void setupArgumentsWithExecState(TrustedImm32 arg1, GPRReg arg2, GPRReg arg3, TrustedImm32 arg4, TrustedImm32 arg5)
-     {
--        poke(arg5, 1);
--        poke(arg4);
-+        poke(arg5, POKE_ARGUMENT_OFFSET + 1);
-+        poke(arg4, POKE_ARGUMENT_OFFSET);
-         setupArgumentsWithExecState(arg1, arg2, arg3);
-     }
-     ALWAYS_INLINE void setupArgumentsWithExecState(TrustedImm32 arg1, TrustedImm32 arg2, TrustedImm32 arg3, GPRReg arg4, GPRReg arg5)
-     {
--        poke(arg5, 1);
--        poke(arg4);
-+        poke(arg5, POKE_ARGUMENT_OFFSET + 1);
-+        poke(arg4, POKE_ARGUMENT_OFFSET);
-         setupArgumentsWithExecState(arg1, arg2, arg3);
-     }
-     ALWAYS_INLINE void setupArgumentsWithExecState(TrustedImm32 arg1, GPRReg arg2, GPRReg arg3, GPRReg arg4, GPRReg arg5)
-     {
--        poke(arg5, 1);
--        poke(arg4);
-+        poke(arg5, POKE_ARGUMENT_OFFSET + 1);
-+        poke(arg4, POKE_ARGUMENT_OFFSET);
-         setupArgumentsWithExecState(arg1, arg2, arg3);
-     }
-diff --git a/Source/JavaScriptCore/dfg/DFGFPRInfo.h b/Source/JavaScriptCore/dfg/DFGFPRInfo.h
-index 17aaa7d..e18ec06 100644
---- a/Source/JavaScriptCore/dfg/DFGFPRInfo.h
-+++ b/Source/JavaScriptCore/dfg/DFGFPRInfo.h
-@@ -164,6 +164,74 @@ public:
- #endif
-+#if CPU(MIPS)
-+
-+class FPRInfo {
-+public:
-+    typedef FPRReg RegisterType;
-+    static const unsigned numberOfRegisters = 6;
-+
-+    // Temporary registers.
-+    static const FPRReg fpRegT0 = MIPSRegisters::f0;
-+    static const FPRReg fpRegT1 = MIPSRegisters::f4;
-+    static const FPRReg fpRegT2 = MIPSRegisters::f6;
-+    static const FPRReg fpRegT3 = MIPSRegisters::f8;
-+    static const FPRReg fpRegT4 = MIPSRegisters::f10;
-+    static const FPRReg fpRegT5 = MIPSRegisters::f18;
-+
-+    static const FPRReg returnValueFPR = MIPSRegisters::f0;
-+
-+    static const FPRReg argumentFPR0 = MIPSRegisters::f12;
-+    static const FPRReg argumentFPR1 = MIPSRegisters::f14;
-+
-+    static FPRReg toRegister(unsigned index)
-+    {
-+        static const FPRReg registerForIndex[numberOfRegisters] = {
-+            fpRegT0, fpRegT1, fpRegT2, fpRegT3, fpRegT4, fpRegT5 };
-+
-+        ASSERT(index < numberOfRegisters);
-+        return registerForIndex[index];
-+    }
-+
-+    static unsigned toIndex(FPRReg reg)
-+    {
-+        ASSERT(reg != InvalidFPRReg);
-+        ASSERT(reg < 20);
-+        static const unsigned indexForRegister[20] = {
-+            0, InvalidIndex, InvalidIndex, InvalidIndex,
-+            1, InvalidIndex, 2, InvalidIndex,
-+            3, InvalidIndex, 4, InvalidIndex,
-+            InvalidIndex, InvalidIndex, InvalidIndex, InvalidIndex,
-+            InvalidIndex, InvalidIndex, 5, InvalidIndex,
-+        };
-+        unsigned result = indexForRegister[reg];
-+        ASSERT(result != InvalidIndex);
-+        return result;
-+    }
-+
-+    static const char* debugName(FPRReg reg)
-+    {
-+        ASSERT(reg != InvalidFPRReg);
-+        ASSERT(reg < 32);
-+        static const char* nameForRegister[32] = {
-+            "f0", "f1", "f2", "f3",
-+            "f4", "f5", "f6", "f7",
-+            "f8", "f9", "f10", "f11",
-+            "f12", "f13", "f14", "f15"
-+            "f16", "f17", "f18", "f19"
-+            "f20", "f21", "f22", "f23"
-+            "f24", "f25", "f26", "f27"
-+            "f28", "f29", "f30", "f31"
-+        };
-+        return nameForRegister[reg];
-+    }
-+private:
-+
-+    static const unsigned InvalidIndex = 0xffffffff;
-+};
-+
-+#endif
-+
- typedef RegisterBank<FPRInfo>::iterator fpr_iterator;
- } } // namespace JSC::DFG
-diff --git a/Source/JavaScriptCore/dfg/DFGGPRInfo.h b/Source/JavaScriptCore/dfg/DFGGPRInfo.h
-index 3d07556..aa634cd 100644
---- a/Source/JavaScriptCore/dfg/DFGGPRInfo.h
-+++ b/Source/JavaScriptCore/dfg/DFGGPRInfo.h
-@@ -461,6 +461,73 @@ private:
- #endif
-+#if CPU(MIPS)
-+#define NUMBER_OF_ARGUMENT_REGISTERS 4
-+
-+class GPRInfo {
-+public:
-+    typedef GPRReg RegisterType;
-+    static const unsigned numberOfRegisters = 6;
-+
-+    // Temporary registers.
-+    static const GPRReg regT0 = MIPSRegisters::v0;
-+    static const GPRReg regT1 = MIPSRegisters::v1;
-+    static const GPRReg regT2 = MIPSRegisters::t4;
-+    static const GPRReg regT3 = MIPSRegisters::t5;
-+    static const GPRReg regT4 = MIPSRegisters::t6;
-+    static const GPRReg regT5 = MIPSRegisters::t7;
-+    // These registers match the baseline JIT.
-+    static const GPRReg cachedResultRegister = regT0;
-+    static const GPRReg cachedResultRegister2 = regT1;
-+    static const GPRReg callFrameRegister = MIPSRegisters::s0;
-+    // These constants provide the names for the general purpose argument & return value registers.
-+    static const GPRReg argumentGPR0 = MIPSRegisters::a0;
-+    static const GPRReg argumentGPR1 = MIPSRegisters::a1;
-+    static const GPRReg argumentGPR2 = MIPSRegisters::a2;
-+    static const GPRReg argumentGPR3 = MIPSRegisters::a3;
-+    static const GPRReg nonArgGPR0 = regT2;
-+    static const GPRReg nonArgGPR1 = regT3;
-+    static const GPRReg nonArgGPR2 = regT4;
-+    static const GPRReg returnValueGPR = regT0;
-+    static const GPRReg returnValueGPR2 = regT1;
-+    static const GPRReg nonPreservedNonReturnGPR = regT5;
-+
-+    static GPRReg toRegister(unsigned index)
-+    {
-+        ASSERT(index < numberOfRegisters);
-+        static const GPRReg registerForIndex[numberOfRegisters] = { regT0, regT1, regT2, regT3, regT4, regT5 };
-+        return registerForIndex[index];
-+    }
-+
-+    static unsigned toIndex(GPRReg reg)
-+    {
-+        ASSERT(reg != InvalidGPRReg);
-+        ASSERT(reg < 16);
-+        static const unsigned indexForRegister[16] = { InvalidIndex, InvalidIndex, 0, 1, InvalidIndex, InvalidIndex, InvalidIndex, InvalidIndex, InvalidIndex, InvalidIndex, InvalidIndex, InvalidIndex, 2, 3, 4, 5 };
-+        unsigned result = indexForRegister[reg];
-+        ASSERT(result != InvalidIndex);
-+        return result;
-+    }
-+
-+    static const char* debugName(GPRReg reg)
-+    {
-+        ASSERT(reg != InvalidGPRReg);
-+        ASSERT(reg < 16);
-+        static const char* nameForRegister[16] = {
-+            "zero", "at", "v0", "v1",
-+            "a0", "a1", "a2", "a3",
-+            "t0", "t1", "t2", "t3",
-+            "t4", "t5", "t6", "t7"
-+        };
-+        return nameForRegister[reg];
-+    }
-+private:
-+
-+    static const unsigned InvalidIndex = 0xffffffff;
-+};
-+
-+#endif
-+
- typedef RegisterBank<GPRInfo>::iterator gpr_iterator;
- } } // namespace JSC::DFG
-diff --git a/Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h b/Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h
-index ea33f38..247274b 100644
---- a/Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h
-+++ b/Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h
-@@ -1241,7 +1241,7 @@ public:
- // EncodedJSValue in JSVALUE32_64 is a 64-bit integer. When being compiled in ARM EABI, it must be aligned even-numbered register (r0, r2 or [sp]).
- // To avoid assemblies from using wrong registers, let's occupy r1 or r3 with a dummy argument when necessary.
--#if COMPILER_SUPPORTS(EABI) && CPU(ARM)
-+#if (COMPILER_SUPPORTS(EABI) && CPU(ARM)) || CPU(MIPS)
- #define EABI_32BIT_DUMMY_ARG      TrustedImm32(0),
- #else
- #define EABI_32BIT_DUMMY_ARG
-@@ -1691,7 +1691,7 @@ public:
-     }
- #endif
-     
--#if !defined(NDEBUG) && !CPU(ARM)
-+#if !defined(NDEBUG) && !CPU(ARM) && !CPU(MIPS)
-     void prepareForExternalCall()
-     {
-         // We're about to call out to a "native" helper function. The helper
-diff --git a/Source/JavaScriptCore/jit/JSInterfaceJIT.h b/Source/JavaScriptCore/jit/JSInterfaceJIT.h
-index 7fdeaf0..48ad6b2 100644
---- a/Source/JavaScriptCore/jit/JSInterfaceJIT.h
-+++ b/Source/JavaScriptCore/jit/JSInterfaceJIT.h
-@@ -125,6 +125,10 @@ namespace JSC {
-         static const RegisterID cachedResultRegister = MIPSRegisters::v0;
-         static const RegisterID firstArgumentRegister = MIPSRegisters::a0;
-         
-+#if ENABLE(VALUE_PROFILER)
-+        static const RegisterID bucketCounterRegister = MIPSRegisters::s3;
-+#endif
-+
-         // regT0 must be v0 for returning a 32-bit value.
-         static const RegisterID regT0 = MIPSRegisters::v0;
-         
-diff --git a/Source/JavaScriptCore/runtime/JSGlobalData.h b/Source/JavaScriptCore/runtime/JSGlobalData.h
-index 5d47ab9..c02f336 100644
---- a/Source/JavaScriptCore/runtime/JSGlobalData.h
-+++ b/Source/JavaScriptCore/runtime/JSGlobalData.h
-@@ -141,14 +141,18 @@ namespace JSC {
-             return result;
-         }
--        static size_t allocationSize(size_t bufferSize) { return sizeof(size_t) + bufferSize; }
-+        static size_t allocationSize(size_t bufferSize) { return sizeof(ScratchBuffer) + bufferSize; }
-         void setActiveLength(size_t activeLength) { m_activeLength = activeLength; }
-         size_t activeLength() const { return m_activeLength; };
-         size_t* activeLengthPtr() { return &m_activeLength; };
-         void* dataBuffer() { return m_buffer; }
-         size_t m_activeLength;
-+#if CPU(MIPS) && (defined WTF_MIPS_ARCH_REV && WTF_MIPS_ARCH_REV == 2)
-+        void* m_buffer[0] __attribute__((aligned(8)));
-+#else
-         void* m_buffer[0];
-+#endif
-     };
- #if COMPILER(MSVC)
- #pragma warning(pop)
-diff --git a/Source/WTF/wtf/Platform.h b/Source/WTF/wtf/Platform.h
-index 1698247..2d90359 100644
---- a/Source/WTF/wtf/Platform.h
-+++ b/Source/WTF/wtf/Platform.h
-@@ -818,6 +818,10 @@
- #if CPU(ARM_TRADITIONAL)
- #define ENABLE_DFG_JIT 1
- #endif
-+/* Enable the DFG JIT on MIPS. */
-+#if CPU(MIPS)
-+#define ENABLE_DFG_JIT 1
-+#endif
- #endif
- /* If the jit is not available, enable the LLInt C Loop: */
--- 
-1.8.3.2
-
diff --git a/package/webkit/webkit-0008-support-bison-3.0.patch b/package/webkit/webkit-0008-support-bison-3.0.patch
deleted file mode 100644 (file)
index c081b20..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-ANGLE doesn't build with bison 3.0
-
-Author: allan.jensen@digia.com
-​https://bugs.webkit.org/show_bug.cgi?id=119798
-Reviewed by Antti Koivisto.
-Make glslang.y compatible with bison 3.0, by using %lex-param
-to set YYLEX_PARAM and getting rid of useless YYID macro.
-
-From upstream: http://trac.webkit.org/changeset/154109
-[Arnout: adapted to our older webkit version]
-Signed-off-by: Arnout Vandecaeppelle (Essensium/Mind) <arnout@mind.be>
----
-Index: trunk/Source/ThirdParty/ANGLE/src/compiler/glslang.y
-===================================================================
---- trunk/Source/ThirdParty/ANGLE/src/compiler/glslang.y       (revision 154108)
-+++ trunk/Source/ThirdParty/ANGLE/src/compiler/glslang.y       (revision 154109)
-@@ -48,4 +48,5 @@
- %pure-parser
- %parse-param {TParseContext* context}
-+%lex-param {YYLEX_PARAM}
- %union {
diff --git a/package/wipe/0001-dont-force-lfs.patch b/package/wipe/0001-dont-force-lfs.patch
new file mode 100644 (file)
index 0000000..08916e2
--- /dev/null
@@ -0,0 +1,16 @@
+LARGEFILE support shouldn't be forced into CFLAGS
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura wipe-2.3.1/configure.in wipe-2.3.1-lfs/configure.in
+--- wipe-2.3.1/configure.in    2009-06-15 22:55:11.000000000 -0300
++++ wipe-2.3.1-lfs/configure.in        2012-03-05 11:25:30.463221948 -0300
+@@ -91,7 +91,7 @@
+ test "$with_efence" = "yes" && temp2CFLAGS="$debugCFLAGS" && LIBS="-lefence"
+ DEBUG="$debugCFLAGS $fullCFLAGS"
+-fullCFLAGS="$temp2CFLAGS $fullCFLAGS -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
++fullCFLAGS="$temp2CFLAGS $fullCFLAGS"
+ CFLAGS="$checkCFLAGS -D__USE_BSD -D_BSD_SOURCE -D__USE_POSIX -D_POSIX_SOURCE -D_POSIX_MAPPED_FILES"
+ dnl Checks for libraries.
diff --git a/package/wipe/wipe-dont-force-lfs.patch b/package/wipe/wipe-dont-force-lfs.patch
deleted file mode 100644 (file)
index 08916e2..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-LARGEFILE support shouldn't be forced into CFLAGS
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura wipe-2.3.1/configure.in wipe-2.3.1-lfs/configure.in
---- wipe-2.3.1/configure.in    2009-06-15 22:55:11.000000000 -0300
-+++ wipe-2.3.1-lfs/configure.in        2012-03-05 11:25:30.463221948 -0300
-@@ -91,7 +91,7 @@
- test "$with_efence" = "yes" && temp2CFLAGS="$debugCFLAGS" && LIBS="-lefence"
- DEBUG="$debugCFLAGS $fullCFLAGS"
--fullCFLAGS="$temp2CFLAGS $fullCFLAGS -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"
-+fullCFLAGS="$temp2CFLAGS $fullCFLAGS"
- CFLAGS="$checkCFLAGS -D__USE_BSD -D_BSD_SOURCE -D__USE_POSIX -D_POSIX_SOURCE -D_POSIX_MAPPED_FILES"
- dnl Checks for libraries.
diff --git a/package/wireless_tools/0001-remove-bzero.patch b/package/wireless_tools/0001-remove-bzero.patch
new file mode 100644 (file)
index 0000000..53ef588
--- /dev/null
@@ -0,0 +1,95 @@
+Switch all instances of deprecated bzero() to memset() equivalent.
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura wireless_tools.30/ifrename.c wireless_tools.30-bzero/ifrename.c
+--- wireless_tools.30/ifrename.c       2007-10-16 20:12:41.000000000 -0300
++++ wireless_tools.30-bzero/ifrename.c 2014-06-11 09:52:59.623741119 -0300
+@@ -541,7 +541,7 @@
+           victimname, autoname);
+   /* Prepare request */
+-  bzero(&ifr, sizeof(struct ifreq));
++  memset(&ifr, 0, sizeof(struct ifreq));
+   strncpy(ifr.ifr_name, victimname, IFNAMSIZ); 
+   strncpy(ifr.ifr_newname, autoname, IFNAMSIZ); 
+@@ -587,7 +587,7 @@
+     }
+   /* Prepare request */
+-  bzero(&ifr, sizeof(struct ifreq));
++  memset(&ifr, 0, sizeof(struct ifreq));
+   strncpy(ifr.ifr_name, oldname, IFNAMSIZ); 
+   strncpy(ifr.ifr_newname, newname, IFNAMSIZ); 
+@@ -747,7 +747,7 @@
+   int         i;
+   /* Get MAC address */
+-  bzero(&ifr, sizeof(struct ifreq));
++  memset(&ifr, 0, sizeof(struct ifreq));
+   strncpy(ifr.ifr_name, ifname, IFNAMSIZ);
+   ret = ioctl(skfd, SIOCGIFHWADDR, &ifr);
+   if(ret < 0)
+@@ -1040,8 +1040,8 @@
+     return(0);
+   /* Prepare request */
+-  bzero(&ifr, sizeof(struct ifreq));
+-  bzero(&drvinfo, sizeof(struct ethtool_drvinfo));
++  memset(&ifr, 0, sizeof(struct ifreq));
++  memset(&drvinfo, 0, sizeof(struct ethtool_drvinfo));
+   strncpy(ifr.ifr_name, ifname, IFNAMSIZ);
+   drvinfo.cmd = ETHTOOL_GDRVINFO;
+   ifr.ifr_data = (caddr_t) &drvinfo;
+@@ -1206,8 +1206,8 @@
+     return(0);
+   /* Prepare request */
+-  bzero(&ifr, sizeof(struct ifreq));
+-  bzero(&map, sizeof(struct ifmap));
++  memset(&ifr, 0, sizeof(struct ifreq));
++  memset(&map, 0, sizeof(struct ifmap));
+   strncpy(ifr.ifr_name, ifname, IFNAMSIZ);
+   /* Do it */
+@@ -2050,7 +2050,7 @@
+   struct add_extra    extrainfo;
+   /* Reset the list of filters */
+-  bzero(selector_active, sizeof(selector_active));
++  memset(selector_active, 0, sizeof(selector_active));
+   /* Check filename */
+   if(!strcmp(filename, "-"))
+diff -Nura wireless_tools.30/iwlib.c wireless_tools.30-bzero/iwlib.c
+--- wireless_tools.30/iwlib.c  2009-11-23 23:28:59.000000000 -0300
++++ wireless_tools.30-bzero/iwlib.c    2014-06-11 09:50:20.611371384 -0300
+@@ -484,7 +484,7 @@
+   union iw_range_raw *        range_raw;
+   /* Cleanup */
+-  bzero(buffer, sizeof(buffer));
++  memset(buffer, 0, sizeof(buffer));
+   wrq.u.data.pointer = (caddr_t) buffer;
+   wrq.u.data.length = sizeof(buffer);
+@@ -513,7 +513,7 @@
+   else
+     {
+       /* Zero unknown fields */
+-      bzero((char *) range, sizeof(struct iw_range));
++      memset((char *) range, 0, sizeof(struct iw_range));
+       /* Initial part unmoved */
+       memcpy((char *) range,
+@@ -3064,7 +3064,7 @@
+       oldwscan->next = wscan;
+       /* Reset it */
+-      bzero(wscan, sizeof(struct wireless_scan));
++      memset(wscan, 0, sizeof(struct wireless_scan));
+       /* Save cell identifier */
+       wscan->has_ap_addr = 1;
diff --git a/package/wireless_tools/wireless_tools-01-remove-bzero.patch b/package/wireless_tools/wireless_tools-01-remove-bzero.patch
deleted file mode 100644 (file)
index 53ef588..0000000
+++ /dev/null
@@ -1,95 +0,0 @@
-Switch all instances of deprecated bzero() to memset() equivalent.
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura wireless_tools.30/ifrename.c wireless_tools.30-bzero/ifrename.c
---- wireless_tools.30/ifrename.c       2007-10-16 20:12:41.000000000 -0300
-+++ wireless_tools.30-bzero/ifrename.c 2014-06-11 09:52:59.623741119 -0300
-@@ -541,7 +541,7 @@
-           victimname, autoname);
-   /* Prepare request */
--  bzero(&ifr, sizeof(struct ifreq));
-+  memset(&ifr, 0, sizeof(struct ifreq));
-   strncpy(ifr.ifr_name, victimname, IFNAMSIZ); 
-   strncpy(ifr.ifr_newname, autoname, IFNAMSIZ); 
-@@ -587,7 +587,7 @@
-     }
-   /* Prepare request */
--  bzero(&ifr, sizeof(struct ifreq));
-+  memset(&ifr, 0, sizeof(struct ifreq));
-   strncpy(ifr.ifr_name, oldname, IFNAMSIZ); 
-   strncpy(ifr.ifr_newname, newname, IFNAMSIZ); 
-@@ -747,7 +747,7 @@
-   int         i;
-   /* Get MAC address */
--  bzero(&ifr, sizeof(struct ifreq));
-+  memset(&ifr, 0, sizeof(struct ifreq));
-   strncpy(ifr.ifr_name, ifname, IFNAMSIZ);
-   ret = ioctl(skfd, SIOCGIFHWADDR, &ifr);
-   if(ret < 0)
-@@ -1040,8 +1040,8 @@
-     return(0);
-   /* Prepare request */
--  bzero(&ifr, sizeof(struct ifreq));
--  bzero(&drvinfo, sizeof(struct ethtool_drvinfo));
-+  memset(&ifr, 0, sizeof(struct ifreq));
-+  memset(&drvinfo, 0, sizeof(struct ethtool_drvinfo));
-   strncpy(ifr.ifr_name, ifname, IFNAMSIZ);
-   drvinfo.cmd = ETHTOOL_GDRVINFO;
-   ifr.ifr_data = (caddr_t) &drvinfo;
-@@ -1206,8 +1206,8 @@
-     return(0);
-   /* Prepare request */
--  bzero(&ifr, sizeof(struct ifreq));
--  bzero(&map, sizeof(struct ifmap));
-+  memset(&ifr, 0, sizeof(struct ifreq));
-+  memset(&map, 0, sizeof(struct ifmap));
-   strncpy(ifr.ifr_name, ifname, IFNAMSIZ);
-   /* Do it */
-@@ -2050,7 +2050,7 @@
-   struct add_extra    extrainfo;
-   /* Reset the list of filters */
--  bzero(selector_active, sizeof(selector_active));
-+  memset(selector_active, 0, sizeof(selector_active));
-   /* Check filename */
-   if(!strcmp(filename, "-"))
-diff -Nura wireless_tools.30/iwlib.c wireless_tools.30-bzero/iwlib.c
---- wireless_tools.30/iwlib.c  2009-11-23 23:28:59.000000000 -0300
-+++ wireless_tools.30-bzero/iwlib.c    2014-06-11 09:50:20.611371384 -0300
-@@ -484,7 +484,7 @@
-   union iw_range_raw *        range_raw;
-   /* Cleanup */
--  bzero(buffer, sizeof(buffer));
-+  memset(buffer, 0, sizeof(buffer));
-   wrq.u.data.pointer = (caddr_t) buffer;
-   wrq.u.data.length = sizeof(buffer);
-@@ -513,7 +513,7 @@
-   else
-     {
-       /* Zero unknown fields */
--      bzero((char *) range, sizeof(struct iw_range));
-+      memset((char *) range, 0, sizeof(struct iw_range));
-       /* Initial part unmoved */
-       memcpy((char *) range,
-@@ -3064,7 +3064,7 @@
-       oldwscan->next = wscan;
-       /* Reset it */
--      bzero(wscan, sizeof(struct wireless_scan));
-+      memset(wscan, 0, sizeof(struct wireless_scan));
-       /* Save cell identifier */
-       wscan->has_ap_addr = 1;
diff --git a/package/wireshark/0001-fix-wrong-cflags-for-build-assumption.patch b/package/wireshark/0001-fix-wrong-cflags-for-build-assumption.patch
new file mode 100644 (file)
index 0000000..14cb957
--- /dev/null
@@ -0,0 +1,38 @@
+AC_WIRESHARK_GCC_CFLAGS_CHECK checks for valid CFLAGS against CC and pushes
+them into CFLAGS and CFLAGS_FOR_BUILD.
+This is wrong since CC_FOR_BUILD might be wildly different and older than CC
+leading to build errors.
+
+Upstream status: reported in tracker
+https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9507
+
+Patch status: Interim to fix:
+http://autobuild.buildroot.net/results/2b1/2b1a0654b649618422d65edf370b82476ba84491/
+
+Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
+
+diff -Nura wireshark-1.12.0.orig/acinclude.m4 wireshark-1.12.0/acinclude.m4
+--- wireshark-1.12.0.orig/acinclude.m4 2014-09-04 15:45:38.365255309 -0300
++++ wireshark-1.12.0/acinclude.m4      2014-09-04 15:46:23.349810353 -0300
+@@ -1755,10 +1755,6 @@
+               # just the new option.
+               #
+               CFLAGS="$CFLAGS_saved $GCC_OPTION"
+-              #
+-              # Add it to the flags we use when building build tools.
+-              #
+-              CFLAGS_FOR_BUILD="$CFLAGS_FOR_BUILD $GCC_OPTION"
+             ],
+             [
+               AC_MSG_RESULT(yes)
+@@ -1771,10 +1767,6 @@
+           # just the new option.
+           #
+           CFLAGS="$CFLAGS_saved $GCC_OPTION"
+-          #
+-          # Add it to the flags we use when building build tools.
+-          #
+-          CFLAGS_FOR_BUILD="$CFLAGS_FOR_BUILD $GCC_OPTION"
+         fi
+       ],
+       [
diff --git a/package/wireshark/wireshark-0001-fix-wrong-cflags-for-build-assumption.patch b/package/wireshark/wireshark-0001-fix-wrong-cflags-for-build-assumption.patch
deleted file mode 100644 (file)
index 14cb957..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-AC_WIRESHARK_GCC_CFLAGS_CHECK checks for valid CFLAGS against CC and pushes
-them into CFLAGS and CFLAGS_FOR_BUILD.
-This is wrong since CC_FOR_BUILD might be wildly different and older than CC
-leading to build errors.
-
-Upstream status: reported in tracker
-https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9507
-
-Patch status: Interim to fix:
-http://autobuild.buildroot.net/results/2b1/2b1a0654b649618422d65edf370b82476ba84491/
-
-Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
-
-diff -Nura wireshark-1.12.0.orig/acinclude.m4 wireshark-1.12.0/acinclude.m4
---- wireshark-1.12.0.orig/acinclude.m4 2014-09-04 15:45:38.365255309 -0300
-+++ wireshark-1.12.0/acinclude.m4      2014-09-04 15:46:23.349810353 -0300
-@@ -1755,10 +1755,6 @@
-               # just the new option.
-               #
-               CFLAGS="$CFLAGS_saved $GCC_OPTION"
--              #
--              # Add it to the flags we use when building build tools.
--              #
--              CFLAGS_FOR_BUILD="$CFLAGS_FOR_BUILD $GCC_OPTION"
-             ],
-             [
-               AC_MSG_RESULT(yes)
-@@ -1771,10 +1767,6 @@
-           # just the new option.
-           #
-           CFLAGS="$CFLAGS_saved $GCC_OPTION"
--          #
--          # Add it to the flags we use when building build tools.
--          #
--          CFLAGS_FOR_BUILD="$CFLAGS_FOR_BUILD $GCC_OPTION"
-         fi
-       ],
-       [
diff --git a/package/wpa_supplicant/0001-fix-musl-build-error.patch b/package/wpa_supplicant/0001-fix-musl-build-error.patch
new file mode 100644 (file)
index 0000000..08f63df
--- /dev/null
@@ -0,0 +1,45 @@
+From ccc079dc16e70844bb28e84d00bd26b61ecc755c Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?J=C3=B6rg=20Krause?= <jkrause@posteo.de>
+Date: Wed, 3 Dec 2014 22:29:29 +0100
+Subject: [PATCH 1/1] fix musl build error
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Building wpa_supplicant with the musl C library fails since musl does not
+define type names such as '__uint32_t'. To support building wpa_supplicant
+with the musl C library use the integer types declared in the ISO C standard
+header file <stdint.h>.
+
+Signed-off-by: Jörg Krause <jkrause@posteo.de>
+---
+ src/drivers/linux_wext.h | 12 ++++++------
+ 1 file changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/src/drivers/linux_wext.h b/src/drivers/linux_wext.h
+index 55cf955..e7c7001 100644
+--- a/src/drivers/linux_wext.h
++++ b/src/drivers/linux_wext.h
+@@ -19,13 +19,13 @@
+ #define _LINUX_SOCKET_H
+ #define _LINUX_IF_H
+-#include <sys/types.h>
++#include <stdint.h>
+ #include <net/if.h>
+-typedef __uint32_t __u32;
+-typedef __int32_t __s32;
+-typedef __uint16_t __u16;
+-typedef __int16_t __s16;
+-typedef __uint8_t __u8;
++typedef uint32_t __u32;
++typedef int32_t __s32;
++typedef uint16_t __u16;
++typedef int16_t __s16;
++typedef uint8_t __u8;
+ #ifndef __user
+ #define __user
+ #endif /* __user */
+-- 
+2.1.3
+
diff --git a/package/wpa_supplicant/wpa_supplicant-0001-fix-musl-build-error.patch b/package/wpa_supplicant/wpa_supplicant-0001-fix-musl-build-error.patch
deleted file mode 100644 (file)
index 08f63df..0000000
+++ /dev/null
@@ -1,45 +0,0 @@
-From ccc079dc16e70844bb28e84d00bd26b61ecc755c Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?J=C3=B6rg=20Krause?= <jkrause@posteo.de>
-Date: Wed, 3 Dec 2014 22:29:29 +0100
-Subject: [PATCH 1/1] fix musl build error
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Building wpa_supplicant with the musl C library fails since musl does not
-define type names such as '__uint32_t'. To support building wpa_supplicant
-with the musl C library use the integer types declared in the ISO C standard
-header file <stdint.h>.
-
-Signed-off-by: Jörg Krause <jkrause@posteo.de>
----
- src/drivers/linux_wext.h | 12 ++++++------
- 1 file changed, 6 insertions(+), 6 deletions(-)
-
-diff --git a/src/drivers/linux_wext.h b/src/drivers/linux_wext.h
-index 55cf955..e7c7001 100644
---- a/src/drivers/linux_wext.h
-+++ b/src/drivers/linux_wext.h
-@@ -19,13 +19,13 @@
- #define _LINUX_SOCKET_H
- #define _LINUX_IF_H
--#include <sys/types.h>
-+#include <stdint.h>
- #include <net/if.h>
--typedef __uint32_t __u32;
--typedef __int32_t __s32;
--typedef __uint16_t __u16;
--typedef __int16_t __s16;
--typedef __uint8_t __u8;
-+typedef uint32_t __u32;
-+typedef int32_t __s32;
-+typedef uint16_t __u16;
-+typedef int16_t __s16;
-+typedef uint8_t __u8;
- #ifndef __user
- #define __user
- #endif /* __user */
--- 
-2.1.3
-
diff --git a/package/wvdial/0001-uClibc-scandir.patch b/package/wvdial/0001-uClibc-scandir.patch
new file mode 100644 (file)
index 0000000..b611e94
--- /dev/null
@@ -0,0 +1,23 @@
+Fix wvdial so that it works with scandir as defined in uClibc.
+
+Signed-off-by: Simon Dawson <spdawson@gmail.com>
+
+diff -Nurp a/wvmodemscan.cc b/wvmodemscan.cc
+--- a/wvmodemscan.cc   2009-09-29 18:27:28.000000000 +0100
++++ b/wvmodemscan.cc   2012-07-28 14:03:56.359729660 +0100
+@@ -495,13 +495,13 @@ static int fileselect(const struct diren
+       // (no internal ISDN support)   || !strncmp(e->d_name, "ttyI", 4);
+ }
+-#if defined(__GLIBC__) && __GLIBC_PREREQ(2, 10)
++#if defined(__UCLIBC__) || (defined(__GLIBC__) && __GLIBC_PREREQ(2, 10))
+ static int filesort(const dirent **e1, const dirent **e2)
+ #else
+ static int filesort(const void *_e1, const void *_e2)
+ #endif
+ {
+-#if !(defined(__GLIBC__) && __GLIBC_PREREQ(2, 10))
++#if !(defined(__UCLIBC__) || (defined(__GLIBC__) && __GLIBC_PREREQ(2, 10)))
+     dirent const * const *e1 = (dirent const * const *)_e1;
+     dirent const * const *e2 = (dirent const * const *)_e2;
+ #endif
diff --git a/package/wvdial/wvdial-0001-uClibc-scandir.patch b/package/wvdial/wvdial-0001-uClibc-scandir.patch
deleted file mode 100644 (file)
index b611e94..0000000
+++ /dev/null
@@ -1,23 +0,0 @@
-Fix wvdial so that it works with scandir as defined in uClibc.
-
-Signed-off-by: Simon Dawson <spdawson@gmail.com>
-
-diff -Nurp a/wvmodemscan.cc b/wvmodemscan.cc
---- a/wvmodemscan.cc   2009-09-29 18:27:28.000000000 +0100
-+++ b/wvmodemscan.cc   2012-07-28 14:03:56.359729660 +0100
-@@ -495,13 +495,13 @@ static int fileselect(const struct diren
-       // (no internal ISDN support)   || !strncmp(e->d_name, "ttyI", 4);
- }
--#if defined(__GLIBC__) && __GLIBC_PREREQ(2, 10)
-+#if defined(__UCLIBC__) || (defined(__GLIBC__) && __GLIBC_PREREQ(2, 10))
- static int filesort(const dirent **e1, const dirent **e2)
- #else
- static int filesort(const void *_e1, const void *_e2)
- #endif
- {
--#if !(defined(__GLIBC__) && __GLIBC_PREREQ(2, 10))
-+#if !(defined(__UCLIBC__) || (defined(__GLIBC__) && __GLIBC_PREREQ(2, 10)))
-     dirent const * const *e1 = (dirent const * const *)_e1;
-     dirent const * const *e2 = (dirent const * const *)_e2;
- #endif
diff --git a/package/wvstreams/0001-fix-uClibc-compile-getcontext.patch b/package/wvstreams/0001-fix-uClibc-compile-getcontext.patch
new file mode 100644 (file)
index 0000000..c78cc18
--- /dev/null
@@ -0,0 +1,273 @@
+Fix wvstreams so that it builds with uClibc, which does not have the
+getcontext() and setcontext() functions.
+
+Signed-off-by: Simon Dawson <spdawson@gmail.com>
+
+diff -Nurp a/include/wvtask.h b/include/wvtask.h
+--- a/include/wvtask.h 2008-07-14 20:11:35.000000000 +0100
++++ b/include/wvtask.h 2012-07-28 12:29:53.559981240 +0100
+@@ -28,6 +28,13 @@
+ #define WVTASK_MAGIC 0x123678
++#undef HAVE_GETCONTEXT
++#ifdef HAVE_GETCONTEXT
++typedef ucontext_t TaskContext;
++#else
++typedef jmp_buf TaskContext;
++#endif
++
+ class WvTaskMan;
+ /** Represents a single thread of control. */
+@@ -54,8 +61,8 @@ class WvTask
+     bool running, recycled;
+     
+     WvTaskMan &man;
+-    ucontext_t mystate;       // used for resuming the task
+-    ucontext_t func_call, func_return;
++    TaskContext mystate;      // used for resuming the task
++    TaskContext func_call, func_return;
+     
+     TaskFunc *func;
+     void *userdata;
+@@ -94,13 +101,13 @@ class WvTaskMan
+     static void call_func(WvTask *task);
+     static char *stacktop;
+-    static ucontext_t stackmaster_task;
++    static TaskContext stackmaster_task;
+     
+     static WvTask *stack_target;
+-    static ucontext_t get_stack_return;
++    static TaskContext get_stack_return;
+     
+     static WvTask *current_task;
+-    static ucontext_t toplevel;
++    static TaskContext toplevel;
+     
+     WvTaskMan();
+     virtual ~WvTaskMan();
+diff -Nurp a/utils/wvtask.cc b/utils/wvtask.cc
+--- a/utils/wvtask.cc  2009-05-13 22:42:52.000000000 +0100
++++ b/utils/wvtask.cc  2012-07-28 12:32:23.855974538 +0100
+@@ -60,12 +60,14 @@ int WvTask::taskcount, WvTask::numtasks,
+ WvTaskMan *WvTaskMan::singleton;
+ int WvTaskMan::links, WvTaskMan::magic_number;
+ WvTaskList WvTaskMan::all_tasks, WvTaskMan::free_tasks;
+-ucontext_t WvTaskMan::stackmaster_task, WvTaskMan::get_stack_return,
++TaskContext WvTaskMan::stackmaster_task, WvTaskMan::get_stack_return,
+     WvTaskMan::toplevel;
+ WvTask *WvTaskMan::current_task, *WvTaskMan::stack_target;
+ char *WvTaskMan::stacktop;
++#ifdef HAVE_GETCONTEXT
+ static int context_return;
++#endif
+ static bool use_shared_stack()
+@@ -198,9 +200,13 @@ WvTaskMan::WvTaskMan()
+     
+     stacktop = (char *)alloca(0);
+     
++#ifdef HAVE_GETCONTEXT
+     context_return = 0;
+     assert(getcontext(&get_stack_return) == 0);
+     if (context_return == 0)
++#else
++    if (setjmp(get_stack_return) == 0)
++#endif
+     {
+       // initial setup - start the stackmaster() task (never returns!)
+       stackmaster();
+@@ -257,22 +263,30 @@ int WvTaskMan::run(WvTask &task, int val
+         
+     WvTask *old_task = current_task;
+     current_task = &task;
+-    ucontext_t *state;
++    TaskContext *state;
+     
+     if (!old_task)
+       state = &toplevel; // top-level call (not in an actual task yet)
+     else
+       state = &old_task->mystate;
+     
++#ifdef HAVE_GETCONTEXT
+     context_return = 0;
+     assert(getcontext(state) == 0);
+     int newval = context_return;
++#else
++    int newval = setjmp(*state);
++#endif
+     if (newval == 0)
+     {
+       // saved the state, now run the task.
++#ifdef HAVE_GETCONTEXT
+         context_return = val;
+         setcontext(&task.mystate);
+         return -1;
++#else
++        longjmp(task.mystate, val);
++#endif
+     }
+     else
+     {
+@@ -317,16 +331,24 @@ int WvTaskMan::yield(int val)
+                 (long)current_task->stacksize);
+     }
+ #endif
+-              
++
++#ifdef HAVE_GETCONTEXT                
+     context_return = 0;
+     assert(getcontext(&current_task->mystate) == 0);
+     int newval = context_return;
++#else
++    int newval = setjmp(current_task->mystate);
++#endif
+     if (newval == 0)
+     {
+       // saved the task state; now yield to the toplevel.
++#ifdef HAVE_GETCONTEXT
+         context_return = val;
+         setcontext(&toplevel);
+         return -1;
++#else
++        longjmp(toplevel, val);
++#endif
+     }
+     else
+     {
+@@ -340,9 +362,13 @@ int WvTaskMan::yield(int val)
+ void WvTaskMan::get_stack(WvTask &task, size_t size)
+ {
++#ifdef HAVE_GETCONTEXT
+     context_return = 0;
+     assert(getcontext(&get_stack_return) == 0);
+     if (context_return == 0)
++#else
++    if (setjmp(get_stack_return) == 0)
++#endif
+     {
+       assert(magic_number == -WVTASK_MAGIC);
+       assert(task.magic_number == WVTASK_MAGIC);
+@@ -358,6 +384,7 @@ void WvTaskMan::get_stack(WvTask &task,
+             static char *next_stack_addr = NULL;
+ #endif
+         
++#ifndef HAVE_GETCONTEXT
+             task.stack = mmap(next_stack_addr, task.stacksize,
+                 PROT_READ | PROT_WRITE,
+ #ifndef MACOS 
+@@ -366,12 +393,17 @@ void WvTaskMan::get_stack(WvTask &task,
+                 MAP_PRIVATE,
+ #endif
+                 -1, 0);
++#endif // !HAVE_GETCONTEXT
+         }
+       
+       // initial setup
+       stack_target = &task;
++#ifdef HAVE_GETCONTEXT
+       context_return = size/1024 + (size%1024 > 0);
+       setcontext(&stackmaster_task);
++#else
++      longjmp(stackmaster_task, size/1024 + (size%1024 > 0));
++#endif
+     }
+     else
+     {
+@@ -408,9 +440,13 @@ void WvTaskMan::_stackmaster()
+     {
+       assert(magic_number == -WVTASK_MAGIC);
+       
++#ifdef HAVE_GETCONTEXT
+         context_return = 0;
+         assert(getcontext(&stackmaster_task) == 0);
+         val = context_return;
++#else
++        val = setjmp(stackmaster_task);
++#endif
+       if (val == 0)
+       {
+           assert(magic_number == -WVTASK_MAGIC);
+@@ -418,8 +454,12 @@ void WvTaskMan::_stackmaster()
+           // just did setjmp; save stackmaster's current state (with
+           // all current stack allocations) and go back to get_stack
+           // (or the constructor, if that's what called us)
++#ifdef HAVE_GETCONTEXT
+             context_return = 1;
+             setcontext(&get_stack_return);
++#else
++            longjmp(get_stack_return, 1);
++#endif
+       }
+       else
+       {
+@@ -462,7 +502,9 @@ void WvTaskMan::call_func(WvTask *task)
+     task->func(task->userdata);
+     Dprintf("WvTaskMan: returning from task #%d (%s)\n",
+           task->tid, (const char *)task->name);
++#ifdef HAVE_GETCONTEXT
+     context_return = 1;
++#endif
+ }
+@@ -473,9 +515,13 @@ void WvTaskMan::do_task()
+     assert(task->magic_number == WVTASK_MAGIC);
+       
+     // back here from longjmp; someone wants stack space.    
++#ifdef HAVE_GETCONTEXT
+     context_return = 0;
+     assert(getcontext(&task->mystate) == 0);
+     if (context_return == 0)
++#else
++    if (setjmp(task->mystate) == 0)
++#endif
+     {
+       // done the setjmp; that means the target task now has
+       // a working jmp_buf all set up.  Leave space on the stack
+@@ -510,6 +556,7 @@ void WvTaskMan::do_task()
+                 }
+                 else
+                 {
++#ifdef HAVE_GETCONTEXT
+                     assert(getcontext(&task->func_call) == 0);
+                     task->func_call.uc_stack.ss_size = task->stacksize;
+                     task->func_call.uc_stack.ss_sp = task->stack;
+@@ -519,11 +566,19 @@ void WvTaskMan::do_task()
+                             task->tid, (const char *)task->name);
+                     makecontext(&task->func_call,
+                             (void (*)(void))call_func, 1, task);
++#else
++                    assert(setjmp(task->func_call) == 0);
++#endif
++#ifdef HAVE_GETCONTEXT
+                     context_return = 0;
+                     assert(getcontext(&task->func_return) == 0);
+                     if (context_return == 0)
+                         setcontext(&task->func_call);
++#else
++                    if (setjmp(task->func_return) == 0)
++                        longjmp(task->func_call, 0);
++#endif
+                 }
+               
+               // the task's function terminated.
+@@ -544,8 +599,12 @@ const void *WvTaskMan::current_top_of_st
+     if (use_shared_stack() || current_task == NULL)
+         return __libc_stack_end;
+     else
++#ifdef HAVE_GETCONTEXT
+         return (const char *)current_task->stack + current_task->stacksize;
+ #else
++        return 0;
++#endif
++#else
+     return 0;
+ #endif
+ }
diff --git a/package/wvstreams/0002-fix-uClibc-compile-execinfo-backtrace.patch b/package/wvstreams/0002-fix-uClibc-compile-execinfo-backtrace.patch
new file mode 100644 (file)
index 0000000..c6317da
--- /dev/null
@@ -0,0 +1,31 @@
+Fix wvstreams so that it builds with uClibc: we don't have execinfo.h,
+so we can't do backtrace() stuff.
+
+Signed-off-by: Simon Dawson <spdawson@gmail.com>
+
+diff -Nurp a/utils/wvcrash.cc b/utils/wvcrash.cc
+--- a/utils/wvcrash.cc 2008-12-17 12:24:20.000000000 +0000
++++ b/utils/wvcrash.cc 2012-07-27 22:00:15.456502262 +0100
+@@ -28,7 +28,9 @@
+ // FIXME: this file mostly only works in Linux
+ #ifdef __linux
+-# include <execinfo.h>
++#ifdef HAVE_EXECINFO_H
++#include <execinfo.h>
++#endif
+ #include <unistd.h>
+ #ifdef __USE_GNU
+@@ -267,9 +269,11 @@ static void wvcrash_real(int sig, int fd
+       }
+     }
++#ifdef HAVE_EXECINFO_H
+     wr(fd, "\nBacktrace:\n");
+     backtrace_symbols_fd(trace,
+                backtrace(trace, sizeof(trace)/sizeof(trace[0])), fd);
++#endif
+     
+     if (pid > 0)
+     {
diff --git a/package/wvstreams/0003-fix-uClibc-compile-misc.patch b/package/wvstreams/0003-fix-uClibc-compile-misc.patch
new file mode 100644 (file)
index 0000000..690a961
--- /dev/null
@@ -0,0 +1,16 @@
+Fix wvstreams so that it builds with uClibc: const cast problem.
+
+Signed-off-by: Simon Dawson <spdawson@gmail.com>
+
+diff -Nurp a/crypto/wvx509.cc b/crypto/wvx509.cc
+--- a/crypto/wvx509.cc 2008-10-23 21:23:49.000000000 +0100
++++ b/crypto/wvx509.cc 2012-06-15 18:45:06.605899292 +0100
+@@ -1157,7 +1157,7 @@ WvString WvX509::get_extension(int nid)
+         
+         if (ext)
+         {
+-            X509V3_EXT_METHOD *method = X509V3_EXT_get(ext);
++          X509V3_EXT_METHOD *method = const_cast<X509V3_EXT_METHOD *>(X509V3_EXT_get(ext));
+             if (!method)
+             {
+                 WvDynBuf buf;
diff --git a/package/wvstreams/0004-build-fixes.patch b/package/wvstreams/0004-build-fixes.patch
new file mode 100644 (file)
index 0000000..21792d7
--- /dev/null
@@ -0,0 +1,40 @@
+Add missing includes for proper build on Linux/glibc
+
+The current wvstreams code doesn't build on Linux/glibc, with error
+about chmod() not being available (for wvunixdgsocket.cc) or umask()
+not being available (for wvatomicfile.cc). Those errors turn out to be
+missing includes. Those includes were in fact already done, but
+conditionally for MacOS. We make them unconditional (it probably
+breaks other platforms, but since Buildroot is Linux only, we don't
+care).
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/ipstreams/wvunixdgsocket.cc
+===================================================================
+--- a/ipstreams/wvunixdgsocket.cc
++++ b/ipstreams/wvunixdgsocket.cc
+@@ -1,8 +1,6 @@
+ #include "wvunixdgsocket.h"
+-#ifdef MACOS
+ #include <sys/types.h>
+ #include <sys/stat.h>
+-#endif
+ WvUnixDGSocket::WvUnixDGSocket(WvStringParm filename, bool _server, int perms)
+     : socketfile(filename)
+Index: b/streams/wvatomicfile.cc
+===================================================================
+--- a/streams/wvatomicfile.cc
++++ b/streams/wvatomicfile.cc
+@@ -10,10 +10,7 @@
+ #include "wvatomicfile.h"
+ #include "wvfileutils.h"
+ #include "wvstrutils.h"
+-
+-#ifdef MACOS
+ #include <sys/stat.h>
+-#endif
+ WvAtomicFile::WvAtomicFile(WvStringParm filename, int flags, mode_t create_mode)
+     : tmp_file(WvString::null)
diff --git a/package/wvstreams/0005-getuid.patch b/package/wvstreams/0005-getuid.patch
new file mode 100644 (file)
index 0000000..6015066
--- /dev/null
@@ -0,0 +1,25 @@
+[PATCH] wvuid.cc: getuid needs sys/types.h + unistd.h
+
+Otherwise the build fails with:
+
+utils/wvuid.cc: In function 'wvuid_t wvgetuid()':
+utils/wvuid.cc:63:19: error: 'getuid' was not declared in this scope
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ utils/wvuid.cc |    2 ++
+ 1 file changed, 2 insertions(+)
+
+Index: wvstreams-4.6.1/utils/wvuid.cc
+===================================================================
+--- wvstreams-4.6.1.orig/utils/wvuid.cc
++++ wvstreams-4.6.1/utils/wvuid.cc
+@@ -33,6 +33,8 @@
+ #else // not WIN32
++#include <unistd.h>
++#include <sys/types.h>
+ WvString wv_username_from_uid(wvuid_t uid)
+ {
diff --git a/package/wvstreams/wvstreams-0001-fix-uClibc-compile-getcontext.patch b/package/wvstreams/wvstreams-0001-fix-uClibc-compile-getcontext.patch
deleted file mode 100644 (file)
index c78cc18..0000000
+++ /dev/null
@@ -1,273 +0,0 @@
-Fix wvstreams so that it builds with uClibc, which does not have the
-getcontext() and setcontext() functions.
-
-Signed-off-by: Simon Dawson <spdawson@gmail.com>
-
-diff -Nurp a/include/wvtask.h b/include/wvtask.h
---- a/include/wvtask.h 2008-07-14 20:11:35.000000000 +0100
-+++ b/include/wvtask.h 2012-07-28 12:29:53.559981240 +0100
-@@ -28,6 +28,13 @@
- #define WVTASK_MAGIC 0x123678
-+#undef HAVE_GETCONTEXT
-+#ifdef HAVE_GETCONTEXT
-+typedef ucontext_t TaskContext;
-+#else
-+typedef jmp_buf TaskContext;
-+#endif
-+
- class WvTaskMan;
- /** Represents a single thread of control. */
-@@ -54,8 +61,8 @@ class WvTask
-     bool running, recycled;
-     
-     WvTaskMan &man;
--    ucontext_t mystate;       // used for resuming the task
--    ucontext_t func_call, func_return;
-+    TaskContext mystate;      // used for resuming the task
-+    TaskContext func_call, func_return;
-     
-     TaskFunc *func;
-     void *userdata;
-@@ -94,13 +101,13 @@ class WvTaskMan
-     static void call_func(WvTask *task);
-     static char *stacktop;
--    static ucontext_t stackmaster_task;
-+    static TaskContext stackmaster_task;
-     
-     static WvTask *stack_target;
--    static ucontext_t get_stack_return;
-+    static TaskContext get_stack_return;
-     
-     static WvTask *current_task;
--    static ucontext_t toplevel;
-+    static TaskContext toplevel;
-     
-     WvTaskMan();
-     virtual ~WvTaskMan();
-diff -Nurp a/utils/wvtask.cc b/utils/wvtask.cc
---- a/utils/wvtask.cc  2009-05-13 22:42:52.000000000 +0100
-+++ b/utils/wvtask.cc  2012-07-28 12:32:23.855974538 +0100
-@@ -60,12 +60,14 @@ int WvTask::taskcount, WvTask::numtasks,
- WvTaskMan *WvTaskMan::singleton;
- int WvTaskMan::links, WvTaskMan::magic_number;
- WvTaskList WvTaskMan::all_tasks, WvTaskMan::free_tasks;
--ucontext_t WvTaskMan::stackmaster_task, WvTaskMan::get_stack_return,
-+TaskContext WvTaskMan::stackmaster_task, WvTaskMan::get_stack_return,
-     WvTaskMan::toplevel;
- WvTask *WvTaskMan::current_task, *WvTaskMan::stack_target;
- char *WvTaskMan::stacktop;
-+#ifdef HAVE_GETCONTEXT
- static int context_return;
-+#endif
- static bool use_shared_stack()
-@@ -198,9 +200,13 @@ WvTaskMan::WvTaskMan()
-     
-     stacktop = (char *)alloca(0);
-     
-+#ifdef HAVE_GETCONTEXT
-     context_return = 0;
-     assert(getcontext(&get_stack_return) == 0);
-     if (context_return == 0)
-+#else
-+    if (setjmp(get_stack_return) == 0)
-+#endif
-     {
-       // initial setup - start the stackmaster() task (never returns!)
-       stackmaster();
-@@ -257,22 +263,30 @@ int WvTaskMan::run(WvTask &task, int val
-         
-     WvTask *old_task = current_task;
-     current_task = &task;
--    ucontext_t *state;
-+    TaskContext *state;
-     
-     if (!old_task)
-       state = &toplevel; // top-level call (not in an actual task yet)
-     else
-       state = &old_task->mystate;
-     
-+#ifdef HAVE_GETCONTEXT
-     context_return = 0;
-     assert(getcontext(state) == 0);
-     int newval = context_return;
-+#else
-+    int newval = setjmp(*state);
-+#endif
-     if (newval == 0)
-     {
-       // saved the state, now run the task.
-+#ifdef HAVE_GETCONTEXT
-         context_return = val;
-         setcontext(&task.mystate);
-         return -1;
-+#else
-+        longjmp(task.mystate, val);
-+#endif
-     }
-     else
-     {
-@@ -317,16 +331,24 @@ int WvTaskMan::yield(int val)
-                 (long)current_task->stacksize);
-     }
- #endif
--              
-+
-+#ifdef HAVE_GETCONTEXT                
-     context_return = 0;
-     assert(getcontext(&current_task->mystate) == 0);
-     int newval = context_return;
-+#else
-+    int newval = setjmp(current_task->mystate);
-+#endif
-     if (newval == 0)
-     {
-       // saved the task state; now yield to the toplevel.
-+#ifdef HAVE_GETCONTEXT
-         context_return = val;
-         setcontext(&toplevel);
-         return -1;
-+#else
-+        longjmp(toplevel, val);
-+#endif
-     }
-     else
-     {
-@@ -340,9 +362,13 @@ int WvTaskMan::yield(int val)
- void WvTaskMan::get_stack(WvTask &task, size_t size)
- {
-+#ifdef HAVE_GETCONTEXT
-     context_return = 0;
-     assert(getcontext(&get_stack_return) == 0);
-     if (context_return == 0)
-+#else
-+    if (setjmp(get_stack_return) == 0)
-+#endif
-     {
-       assert(magic_number == -WVTASK_MAGIC);
-       assert(task.magic_number == WVTASK_MAGIC);
-@@ -358,6 +384,7 @@ void WvTaskMan::get_stack(WvTask &task,
-             static char *next_stack_addr = NULL;
- #endif
-         
-+#ifndef HAVE_GETCONTEXT
-             task.stack = mmap(next_stack_addr, task.stacksize,
-                 PROT_READ | PROT_WRITE,
- #ifndef MACOS 
-@@ -366,12 +393,17 @@ void WvTaskMan::get_stack(WvTask &task,
-                 MAP_PRIVATE,
- #endif
-                 -1, 0);
-+#endif // !HAVE_GETCONTEXT
-         }
-       
-       // initial setup
-       stack_target = &task;
-+#ifdef HAVE_GETCONTEXT
-       context_return = size/1024 + (size%1024 > 0);
-       setcontext(&stackmaster_task);
-+#else
-+      longjmp(stackmaster_task, size/1024 + (size%1024 > 0));
-+#endif
-     }
-     else
-     {
-@@ -408,9 +440,13 @@ void WvTaskMan::_stackmaster()
-     {
-       assert(magic_number == -WVTASK_MAGIC);
-       
-+#ifdef HAVE_GETCONTEXT
-         context_return = 0;
-         assert(getcontext(&stackmaster_task) == 0);
-         val = context_return;
-+#else
-+        val = setjmp(stackmaster_task);
-+#endif
-       if (val == 0)
-       {
-           assert(magic_number == -WVTASK_MAGIC);
-@@ -418,8 +454,12 @@ void WvTaskMan::_stackmaster()
-           // just did setjmp; save stackmaster's current state (with
-           // all current stack allocations) and go back to get_stack
-           // (or the constructor, if that's what called us)
-+#ifdef HAVE_GETCONTEXT
-             context_return = 1;
-             setcontext(&get_stack_return);
-+#else
-+            longjmp(get_stack_return, 1);
-+#endif
-       }
-       else
-       {
-@@ -462,7 +502,9 @@ void WvTaskMan::call_func(WvTask *task)
-     task->func(task->userdata);
-     Dprintf("WvTaskMan: returning from task #%d (%s)\n",
-           task->tid, (const char *)task->name);
-+#ifdef HAVE_GETCONTEXT
-     context_return = 1;
-+#endif
- }
-@@ -473,9 +515,13 @@ void WvTaskMan::do_task()
-     assert(task->magic_number == WVTASK_MAGIC);
-       
-     // back here from longjmp; someone wants stack space.    
-+#ifdef HAVE_GETCONTEXT
-     context_return = 0;
-     assert(getcontext(&task->mystate) == 0);
-     if (context_return == 0)
-+#else
-+    if (setjmp(task->mystate) == 0)
-+#endif
-     {
-       // done the setjmp; that means the target task now has
-       // a working jmp_buf all set up.  Leave space on the stack
-@@ -510,6 +556,7 @@ void WvTaskMan::do_task()
-                 }
-                 else
-                 {
-+#ifdef HAVE_GETCONTEXT
-                     assert(getcontext(&task->func_call) == 0);
-                     task->func_call.uc_stack.ss_size = task->stacksize;
-                     task->func_call.uc_stack.ss_sp = task->stack;
-@@ -519,11 +566,19 @@ void WvTaskMan::do_task()
-                             task->tid, (const char *)task->name);
-                     makecontext(&task->func_call,
-                             (void (*)(void))call_func, 1, task);
-+#else
-+                    assert(setjmp(task->func_call) == 0);
-+#endif
-+#ifdef HAVE_GETCONTEXT
-                     context_return = 0;
-                     assert(getcontext(&task->func_return) == 0);
-                     if (context_return == 0)
-                         setcontext(&task->func_call);
-+#else
-+                    if (setjmp(task->func_return) == 0)
-+                        longjmp(task->func_call, 0);
-+#endif
-                 }
-               
-               // the task's function terminated.
-@@ -544,8 +599,12 @@ const void *WvTaskMan::current_top_of_st
-     if (use_shared_stack() || current_task == NULL)
-         return __libc_stack_end;
-     else
-+#ifdef HAVE_GETCONTEXT
-         return (const char *)current_task->stack + current_task->stacksize;
- #else
-+        return 0;
-+#endif
-+#else
-     return 0;
- #endif
- }
diff --git a/package/wvstreams/wvstreams-0002-fix-uClibc-compile-execinfo-backtrace.patch b/package/wvstreams/wvstreams-0002-fix-uClibc-compile-execinfo-backtrace.patch
deleted file mode 100644 (file)
index c6317da..0000000
+++ /dev/null
@@ -1,31 +0,0 @@
-Fix wvstreams so that it builds with uClibc: we don't have execinfo.h,
-so we can't do backtrace() stuff.
-
-Signed-off-by: Simon Dawson <spdawson@gmail.com>
-
-diff -Nurp a/utils/wvcrash.cc b/utils/wvcrash.cc
---- a/utils/wvcrash.cc 2008-12-17 12:24:20.000000000 +0000
-+++ b/utils/wvcrash.cc 2012-07-27 22:00:15.456502262 +0100
-@@ -28,7 +28,9 @@
- // FIXME: this file mostly only works in Linux
- #ifdef __linux
--# include <execinfo.h>
-+#ifdef HAVE_EXECINFO_H
-+#include <execinfo.h>
-+#endif
- #include <unistd.h>
- #ifdef __USE_GNU
-@@ -267,9 +269,11 @@ static void wvcrash_real(int sig, int fd
-       }
-     }
-+#ifdef HAVE_EXECINFO_H
-     wr(fd, "\nBacktrace:\n");
-     backtrace_symbols_fd(trace,
-                backtrace(trace, sizeof(trace)/sizeof(trace[0])), fd);
-+#endif
-     
-     if (pid > 0)
-     {
diff --git a/package/wvstreams/wvstreams-0003-fix-uClibc-compile-misc.patch b/package/wvstreams/wvstreams-0003-fix-uClibc-compile-misc.patch
deleted file mode 100644 (file)
index 690a961..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-Fix wvstreams so that it builds with uClibc: const cast problem.
-
-Signed-off-by: Simon Dawson <spdawson@gmail.com>
-
-diff -Nurp a/crypto/wvx509.cc b/crypto/wvx509.cc
---- a/crypto/wvx509.cc 2008-10-23 21:23:49.000000000 +0100
-+++ b/crypto/wvx509.cc 2012-06-15 18:45:06.605899292 +0100
-@@ -1157,7 +1157,7 @@ WvString WvX509::get_extension(int nid)
-         
-         if (ext)
-         {
--            X509V3_EXT_METHOD *method = X509V3_EXT_get(ext);
-+          X509V3_EXT_METHOD *method = const_cast<X509V3_EXT_METHOD *>(X509V3_EXT_get(ext));
-             if (!method)
-             {
-                 WvDynBuf buf;
diff --git a/package/wvstreams/wvstreams-0004-build-fixes.patch b/package/wvstreams/wvstreams-0004-build-fixes.patch
deleted file mode 100644 (file)
index 21792d7..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-Add missing includes for proper build on Linux/glibc
-
-The current wvstreams code doesn't build on Linux/glibc, with error
-about chmod() not being available (for wvunixdgsocket.cc) or umask()
-not being available (for wvatomicfile.cc). Those errors turn out to be
-missing includes. Those includes were in fact already done, but
-conditionally for MacOS. We make them unconditional (it probably
-breaks other platforms, but since Buildroot is Linux only, we don't
-care).
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/ipstreams/wvunixdgsocket.cc
-===================================================================
---- a/ipstreams/wvunixdgsocket.cc
-+++ b/ipstreams/wvunixdgsocket.cc
-@@ -1,8 +1,6 @@
- #include "wvunixdgsocket.h"
--#ifdef MACOS
- #include <sys/types.h>
- #include <sys/stat.h>
--#endif
- WvUnixDGSocket::WvUnixDGSocket(WvStringParm filename, bool _server, int perms)
-     : socketfile(filename)
-Index: b/streams/wvatomicfile.cc
-===================================================================
---- a/streams/wvatomicfile.cc
-+++ b/streams/wvatomicfile.cc
-@@ -10,10 +10,7 @@
- #include "wvatomicfile.h"
- #include "wvfileutils.h"
- #include "wvstrutils.h"
--
--#ifdef MACOS
- #include <sys/stat.h>
--#endif
- WvAtomicFile::WvAtomicFile(WvStringParm filename, int flags, mode_t create_mode)
-     : tmp_file(WvString::null)
diff --git a/package/wvstreams/wvstreams-0005-getuid.patch b/package/wvstreams/wvstreams-0005-getuid.patch
deleted file mode 100644 (file)
index 6015066..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-[PATCH] wvuid.cc: getuid needs sys/types.h + unistd.h
-
-Otherwise the build fails with:
-
-utils/wvuid.cc: In function 'wvuid_t wvgetuid()':
-utils/wvuid.cc:63:19: error: 'getuid' was not declared in this scope
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- utils/wvuid.cc |    2 ++
- 1 file changed, 2 insertions(+)
-
-Index: wvstreams-4.6.1/utils/wvuid.cc
-===================================================================
---- wvstreams-4.6.1.orig/utils/wvuid.cc
-+++ wvstreams-4.6.1/utils/wvuid.cc
-@@ -33,6 +33,8 @@
- #else // not WIN32
-+#include <unistd.h>
-+#include <sys/types.h>
- WvString wv_username_from_uid(wvuid_t uid)
- {
diff --git a/package/x11r7/xapp_luit/0001-posix-openpt.patch b/package/x11r7/xapp_luit/0001-posix-openpt.patch
new file mode 100644 (file)
index 0000000..c8ff8e4
--- /dev/null
@@ -0,0 +1,19 @@
+Suggested workaround to build with recent gcc versions
+
+Upstream bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=47792
+
+Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
+
+Index: xapp_luit-1.1.1/sys.c
+===================================================================
+--- xapp_luit-1.1.1.orig/sys.c
++++ xapp_luit-1.1.1/sys.c
+@@ -20,6 +20,8 @@ OUT OF OR IN CONNECTION WITH THE SOFTWAR
+ THE SOFTWARE.
+ */
++#define _XOPEN_SOURCE 600
++
+ #ifdef HAVE_CONFIG_H
+ # include "config.h"
+ #endif
diff --git a/package/x11r7/xapp_luit/xapp_luit-posix-openpt.patch b/package/x11r7/xapp_luit/xapp_luit-posix-openpt.patch
deleted file mode 100644 (file)
index c8ff8e4..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-Suggested workaround to build with recent gcc versions
-
-Upstream bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=47792
-
-Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
-
-Index: xapp_luit-1.1.1/sys.c
-===================================================================
---- xapp_luit-1.1.1.orig/sys.c
-+++ xapp_luit-1.1.1/sys.c
-@@ -20,6 +20,8 @@ OUT OF OR IN CONNECTION WITH THE SOFTWAR
- THE SOFTWARE.
- */
-+#define _XOPEN_SOURCE 600
-+
- #ifdef HAVE_CONFIG_H
- # include "config.h"
- #endif
diff --git a/package/x11r7/xcursor-transparent-theme/0001-fix-symlink.patch b/package/x11r7/xcursor-transparent-theme/0001-fix-symlink.patch
new file mode 100644 (file)
index 0000000..9cf351f
--- /dev/null
@@ -0,0 +1,37 @@
+Do not symlink to a host directory
+
+The installation of xcursor-transparent-theme creates many symbolic
+links to the 'transp' cursor file, but it does so using an absolute
+directory, that happens to point to the installation location, which
+is incorrect when cross-compiling.
+
+Also add the -f option so that the package can be reinstalled even if
+it has already been installed.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/cursors/Makefile.am
+===================================================================
+--- a/cursors/Makefile.am
++++ b/cursors/Makefile.am
+@@ -91,6 +91,6 @@
+       $(INSTALL_DATA) $(CURSOR_REAL) $(DESTDIR)$(CURSOR_DIR)/ 
+       for CURSOR in $(CURSOR_NAMES); do \
+               echo '-- Installing cursor '$$CURSOR; \
+-              ln -s $(DESTDIR)$(CURSOR_DIR)/transp $(DESTDIR)$(CURSOR_DIR)/$$CURSOR; \
++              ln -sf transp $(DESTDIR)$(CURSOR_DIR)/$$CURSOR; \
+       done
+Index: b/cursors/Makefile.in
+===================================================================
+--- a/cursors/Makefile.in
++++ b/cursors/Makefile.in
+@@ -177,7 +177,7 @@
+       $(INSTALL_DATA) $(CURSOR_REAL) $(DESTDIR)$(CURSOR_DIR)/ 
+       for CURSOR in $(CURSOR_NAMES); do \
+               echo '-- Installing cursor '$$CURSOR; \
+-              ln -s $(DESTDIR)$(CURSOR_DIR)/transp $(DESTDIR)$(CURSOR_DIR)/$$CURSOR; \
++              ln -sf transp $(DESTDIR)$(CURSOR_DIR)/$$CURSOR; \
+       done
+ # Tell versions [3.59,3.63) of GNU make to not export all variables.
diff --git a/package/x11r7/xcursor-transparent-theme/xcursor-transparent-theme-0001-fix-symlink.patch b/package/x11r7/xcursor-transparent-theme/xcursor-transparent-theme-0001-fix-symlink.patch
deleted file mode 100644 (file)
index 9cf351f..0000000
+++ /dev/null
@@ -1,37 +0,0 @@
-Do not symlink to a host directory
-
-The installation of xcursor-transparent-theme creates many symbolic
-links to the 'transp' cursor file, but it does so using an absolute
-directory, that happens to point to the installation location, which
-is incorrect when cross-compiling.
-
-Also add the -f option so that the package can be reinstalled even if
-it has already been installed.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/cursors/Makefile.am
-===================================================================
---- a/cursors/Makefile.am
-+++ b/cursors/Makefile.am
-@@ -91,6 +91,6 @@
-       $(INSTALL_DATA) $(CURSOR_REAL) $(DESTDIR)$(CURSOR_DIR)/ 
-       for CURSOR in $(CURSOR_NAMES); do \
-               echo '-- Installing cursor '$$CURSOR; \
--              ln -s $(DESTDIR)$(CURSOR_DIR)/transp $(DESTDIR)$(CURSOR_DIR)/$$CURSOR; \
-+              ln -sf transp $(DESTDIR)$(CURSOR_DIR)/$$CURSOR; \
-       done
-Index: b/cursors/Makefile.in
-===================================================================
---- a/cursors/Makefile.in
-+++ b/cursors/Makefile.in
-@@ -177,7 +177,7 @@
-       $(INSTALL_DATA) $(CURSOR_REAL) $(DESTDIR)$(CURSOR_DIR)/ 
-       for CURSOR in $(CURSOR_NAMES); do \
-               echo '-- Installing cursor '$$CURSOR; \
--              ln -s $(DESTDIR)$(CURSOR_DIR)/transp $(DESTDIR)$(CURSOR_DIR)/$$CURSOR; \
-+              ln -sf transp $(DESTDIR)$(CURSOR_DIR)/$$CURSOR; \
-       done
- # Tell versions [3.59,3.63) of GNU make to not export all variables.
diff --git a/package/x11r7/xdriver_xf86-input-tslib/0001-fix-segfault.patch b/package/x11r7/xdriver_xf86-input-tslib/0001-fix-segfault.patch
new file mode 100644 (file)
index 0000000..adef18b
--- /dev/null
@@ -0,0 +1,34 @@
+Fetch from: https://launchpad.net/ubuntu/+archive/primary/+files/xf86-input-tslib_0.0.6-7build3.debian.tar.gz
+
+Signed-off-by: Jesper Baekdahl <jbb@gamblify.com>
+---
+--- xf86-input-tslib-0.0.6/src/tslib.c 2009-10-19 18:07:18.000000000 +0300
++++ xf86-input-tslib-0.0.6.new/src/tslib.c     2010-02-12 16:15:05.000000000 +0200
+@@ -103,8 +103,6 @@
+ static void
+ PointerControlProc(DeviceIntPtr dev, PtrCtrl * ctrl)
+ {
+-      ErrorF("%s\n", __FUNCTION__);
+-      return;
+ }
+ static Bool
+@@ -406,7 +404,9 @@
+               xf86MotionHistoryAllocate(pInfo);
+ #endif
+-              break;
++              if (!InitPtrFeedbackClassDeviceStruct(device, PointerControlProc))
++                      return !Success;
++              break;
+       case DEVICE_ON:
+               AddEnabledDevice(pInfo->fd);
+@@ -435,6 +435,7 @@
+       xf86TslibControlProc(pInfo->dev, DEVICE_OFF);
+       ts_close(priv->ts);
+       xfree(pInfo->private);
++      pInfo->private = NULL;
+       xf86DeleteInput(pInfo, 0);
+ }
diff --git a/package/x11r7/xdriver_xf86-input-tslib/0002-port-abi-12.patch b/package/x11r7/xdriver_xf86-input-tslib/0002-port-abi-12.patch
new file mode 100644 (file)
index 0000000..eb8fb54
--- /dev/null
@@ -0,0 +1,196 @@
+Fetch from: https://launchpad.net/ubuntu/+archive/primary/+files/xf86-input-tslib_0.0.6-7build3.debian.tar.gz
+Fixes build against newer versions of xorg.
+
+Signed-off-by: Jesper Baekdahl <jbb@gamblify.com>
+---
+Index: xf86-input-tslib-trunk/src/tslib.c
+===================================================================
+--- xf86-input-tslib-trunk/src/tslib.c (revision 48)
++++ xf86-input-tslib-trunk/src/tslib.c (working copy)
+@@ -69,6 +69,13 @@
+ #define DEFAULT_HEIGHT                240
+ #define DEFAULT_WIDTH         320
++#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 12
++#define COLLECT_INPUT_OPTIONS(pInfo, options) xf86CollectInputOptions((pInfo), (options), NULL)
++#else
++#define COLLECT_INPUT_OPTIONS(pInfo, options) xf86CollectInputOptions((pInfo), (options))
++#endif
++
++
+ enum { TSLIB_ROTATE_NONE=0, TSLIB_ROTATE_CW=270, TSLIB_ROTATE_UD=180, TSLIB_ROTATE_CCW=90 };
+ enum button_state { BUTTON_NOT_PRESSED = 0, BUTTON_1_PRESSED = 1, BUTTON_3_CLICK = 3, BUTTON_3_CLICKED=4, BUTTON_EMULATION_OFF=-1 };
+@@ -106,7 +113,7 @@
+ }
+ static Bool
+-ConvertProc( LocalDevicePtr local,
++ConvertProc( InputInfoPtr local,
+                        int first,
+                        int num,
+                        int v0,
+@@ -135,7 +142,7 @@
+     return t;
+ }
+-static void ReadInput (LocalDevicePtr local)
++static void ReadInput (InputInfoPtr local)
+ {
+       struct ts_priv *priv = (struct ts_priv *) (local->private);
+       struct ts_sample samp;
+@@ -382,7 +389,11 @@
+                                              axiswidth - 1,   /* max val */
+                                              axiswidth,       /* resolution */
+                                              0,               /* min_res */
+-                                             axiswidth);      /* max_res */
++                                             axiswidth        /* max_res */
++#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 12
++                                             ,Absolute
++#endif
++                                             );
+               InitValuatorAxisStruct(device, 1,
+ #if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7
+@@ -392,7 +403,11 @@
+                                              axisheight - 1,  /* max val */
+                                              axisheight,      /* resolution */
+                                              0,               /* min_res */
+-                                             axisheight);     /* max_res */
++                                             axisheight       /* max_res */
++#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 12
++                                             ,Absolute
++#endif
++                                             );
+               if (InitProximityClassDeviceStruct (device) == FALSE) {
+                       ErrorF ("Unable to allocate EVTouch touchscreen ProximityClassDeviceStruct\n");
+@@ -434,7 +449,7 @@
+       ErrorF("%s\n", __FUNCTION__);
+       xf86TslibControlProc(pInfo->dev, DEVICE_OFF);
+       ts_close(priv->ts);
+-      xfree(pInfo->private);
++      free(pInfo->private);
+       pInfo->private = NULL;
+       xf86DeleteInput(pInfo, 0);
+ }
+@@ -444,47 +459,57 @@
+  *
+  * called when the module subsection is found in XF86Config
+  */
++#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 12
++static int 
++xf86TslibInit(InputDriverPtr drv, InputInfoPtr pInfo, int flags)
++#else
+ static InputInfoPtr
+ xf86TslibInit(InputDriverPtr drv, IDevPtr dev, int flags)
++#endif
+ {
+       struct ts_priv *priv;
+       char *s;
++#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 12
+       InputInfoPtr pInfo;
++#endif
+-      priv = xcalloc (1, sizeof (struct ts_priv));
++      priv = calloc (1, sizeof (struct ts_priv));
+         if (!priv)
+-                return NULL;
++                return BadValue;
++#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 12
+       if (!(pInfo = xf86AllocateInput(drv, 0))) {
+-              xfree(priv);
+-              return NULL;
++              free(priv);
++              return BadValue;
+       }
+       /* Initialise the InputInfoRec. */
+       pInfo->name = dev->identifier;
+-      pInfo->type_name = XI_TOUCHSCREEN;
+       pInfo->flags =
+           XI86_KEYBOARD_CAPABLE | XI86_POINTER_CAPABLE |
+           XI86_SEND_DRAG_EVENTS;
+-      pInfo->device_control = xf86TslibControlProc;
+-      pInfo->read_input = ReadInput;
+ #if GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0
+       pInfo->motion_history_proc = xf86GetMotionEvents;
+       pInfo->history_size = 0;
+ #endif
+-      pInfo->control_proc = NULL;
++      pInfo->conf_idev = dev;
+       pInfo->close_proc = NULL;
+-      pInfo->switch_mode = NULL;
+       pInfo->conversion_proc = ConvertProc;
+       pInfo->reverse_conversion_proc = NULL;
+-      pInfo->dev = NULL;
+       pInfo->private_flags = 0;
+       pInfo->always_core_feedback = 0;
+-      pInfo->conf_idev = dev;
++#endif
++
++      pInfo->type_name = XI_TOUCHSCREEN;
++      pInfo->control_proc = NULL;
++      pInfo->read_input = ReadInput;
++      pInfo->device_control = xf86TslibControlProc;
++      pInfo->switch_mode = NULL;
+       pInfo->private = priv;
++      pInfo->dev = NULL;
+       /* Collect the options, and process the common options. */
+-      xf86CollectInputOptions(pInfo, NULL, NULL);
++      COLLECT_INPUT_OPTIONS(pInfo, NULL);
+       xf86ProcessCommonOptions(pInfo, pInfo->options);
+       priv->screen_num = xf86SetIntOption(pInfo->options, "ScreenNumber", 0 );
+@@ -510,23 +535,31 @@
+               priv->rotate = TSLIB_ROTATE_NONE;
+       }
++#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 12
+       s = xf86CheckStrOption(dev->commonOptions, "path", NULL);
++#else
++      s = xf86CheckStrOption(pInfo->options, "path", NULL);
++#endif
+       if (!s)
++#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 12
+               s = xf86CheckStrOption(dev->commonOptions, "Device", NULL);
++#else
++              s = xf86CheckStrOption(pInfo->options, "Device", NULL);
++#endif
+  
+       priv->ts = ts_open(s, 1);
+-      xfree(s);
++      free(s);
+       if (!priv->ts) {
+               ErrorF("ts_open failed (device=%s)\n",s);
+               xf86DeleteInput(pInfo, 0);
+-              return NULL;
++              return BadValue;
+       }
+       if (ts_config(priv->ts)) {
+               ErrorF("ts_config failed\n");
+               xf86DeleteInput(pInfo, 0);
+-              return NULL;
++              return BadValue;
+       }
+       pInfo->fd = ts_fd(priv->ts);
+@@ -536,11 +569,13 @@
+               priv->state = BUTTON_EMULATION_OFF;
+       }
++#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 12
+       /* Mark the device configured */
+       pInfo->flags |= XI86_CONFIGURED;
++#endif
+       /* Return the configured device */
+-      return (pInfo);
++      return Success;
+ }
+ _X_EXPORT InputDriverRec TSLIB = {
diff --git a/package/x11r7/xdriver_xf86-input-tslib/xdriver_xf86-input-tslib-0001-fix-segfault.patch b/package/x11r7/xdriver_xf86-input-tslib/xdriver_xf86-input-tslib-0001-fix-segfault.patch
deleted file mode 100644 (file)
index adef18b..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-Fetch from: https://launchpad.net/ubuntu/+archive/primary/+files/xf86-input-tslib_0.0.6-7build3.debian.tar.gz
-
-Signed-off-by: Jesper Baekdahl <jbb@gamblify.com>
----
---- xf86-input-tslib-0.0.6/src/tslib.c 2009-10-19 18:07:18.000000000 +0300
-+++ xf86-input-tslib-0.0.6.new/src/tslib.c     2010-02-12 16:15:05.000000000 +0200
-@@ -103,8 +103,6 @@
- static void
- PointerControlProc(DeviceIntPtr dev, PtrCtrl * ctrl)
- {
--      ErrorF("%s\n", __FUNCTION__);
--      return;
- }
- static Bool
-@@ -406,7 +404,9 @@
-               xf86MotionHistoryAllocate(pInfo);
- #endif
--              break;
-+              if (!InitPtrFeedbackClassDeviceStruct(device, PointerControlProc))
-+                      return !Success;
-+              break;
-       case DEVICE_ON:
-               AddEnabledDevice(pInfo->fd);
-@@ -435,6 +435,7 @@
-       xf86TslibControlProc(pInfo->dev, DEVICE_OFF);
-       ts_close(priv->ts);
-       xfree(pInfo->private);
-+      pInfo->private = NULL;
-       xf86DeleteInput(pInfo, 0);
- }
diff --git a/package/x11r7/xdriver_xf86-input-tslib/xdriver_xf86-input-tslib-0002-port-abi-12.patch b/package/x11r7/xdriver_xf86-input-tslib/xdriver_xf86-input-tslib-0002-port-abi-12.patch
deleted file mode 100644 (file)
index eb8fb54..0000000
+++ /dev/null
@@ -1,196 +0,0 @@
-Fetch from: https://launchpad.net/ubuntu/+archive/primary/+files/xf86-input-tslib_0.0.6-7build3.debian.tar.gz
-Fixes build against newer versions of xorg.
-
-Signed-off-by: Jesper Baekdahl <jbb@gamblify.com>
----
-Index: xf86-input-tslib-trunk/src/tslib.c
-===================================================================
---- xf86-input-tslib-trunk/src/tslib.c (revision 48)
-+++ xf86-input-tslib-trunk/src/tslib.c (working copy)
-@@ -69,6 +69,13 @@
- #define DEFAULT_HEIGHT                240
- #define DEFAULT_WIDTH         320
-+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 12
-+#define COLLECT_INPUT_OPTIONS(pInfo, options) xf86CollectInputOptions((pInfo), (options), NULL)
-+#else
-+#define COLLECT_INPUT_OPTIONS(pInfo, options) xf86CollectInputOptions((pInfo), (options))
-+#endif
-+
-+
- enum { TSLIB_ROTATE_NONE=0, TSLIB_ROTATE_CW=270, TSLIB_ROTATE_UD=180, TSLIB_ROTATE_CCW=90 };
- enum button_state { BUTTON_NOT_PRESSED = 0, BUTTON_1_PRESSED = 1, BUTTON_3_CLICK = 3, BUTTON_3_CLICKED=4, BUTTON_EMULATION_OFF=-1 };
-@@ -106,7 +113,7 @@
- }
- static Bool
--ConvertProc( LocalDevicePtr local,
-+ConvertProc( InputInfoPtr local,
-                        int first,
-                        int num,
-                        int v0,
-@@ -135,7 +142,7 @@
-     return t;
- }
--static void ReadInput (LocalDevicePtr local)
-+static void ReadInput (InputInfoPtr local)
- {
-       struct ts_priv *priv = (struct ts_priv *) (local->private);
-       struct ts_sample samp;
-@@ -382,7 +389,11 @@
-                                              axiswidth - 1,   /* max val */
-                                              axiswidth,       /* resolution */
-                                              0,               /* min_res */
--                                             axiswidth);      /* max_res */
-+                                             axiswidth        /* max_res */
-+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 12
-+                                             ,Absolute
-+#endif
-+                                             );
-               InitValuatorAxisStruct(device, 1,
- #if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 7
-@@ -392,7 +403,11 @@
-                                              axisheight - 1,  /* max val */
-                                              axisheight,      /* resolution */
-                                              0,               /* min_res */
--                                             axisheight);     /* max_res */
-+                                             axisheight       /* max_res */
-+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 12
-+                                             ,Absolute
-+#endif
-+                                             );
-               if (InitProximityClassDeviceStruct (device) == FALSE) {
-                       ErrorF ("Unable to allocate EVTouch touchscreen ProximityClassDeviceStruct\n");
-@@ -434,7 +449,7 @@
-       ErrorF("%s\n", __FUNCTION__);
-       xf86TslibControlProc(pInfo->dev, DEVICE_OFF);
-       ts_close(priv->ts);
--      xfree(pInfo->private);
-+      free(pInfo->private);
-       pInfo->private = NULL;
-       xf86DeleteInput(pInfo, 0);
- }
-@@ -444,47 +459,57 @@
-  *
-  * called when the module subsection is found in XF86Config
-  */
-+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 12
-+static int 
-+xf86TslibInit(InputDriverPtr drv, InputInfoPtr pInfo, int flags)
-+#else
- static InputInfoPtr
- xf86TslibInit(InputDriverPtr drv, IDevPtr dev, int flags)
-+#endif
- {
-       struct ts_priv *priv;
-       char *s;
-+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 12
-       InputInfoPtr pInfo;
-+#endif
--      priv = xcalloc (1, sizeof (struct ts_priv));
-+      priv = calloc (1, sizeof (struct ts_priv));
-         if (!priv)
--                return NULL;
-+                return BadValue;
-+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 12
-       if (!(pInfo = xf86AllocateInput(drv, 0))) {
--              xfree(priv);
--              return NULL;
-+              free(priv);
-+              return BadValue;
-       }
-       /* Initialise the InputInfoRec. */
-       pInfo->name = dev->identifier;
--      pInfo->type_name = XI_TOUCHSCREEN;
-       pInfo->flags =
-           XI86_KEYBOARD_CAPABLE | XI86_POINTER_CAPABLE |
-           XI86_SEND_DRAG_EVENTS;
--      pInfo->device_control = xf86TslibControlProc;
--      pInfo->read_input = ReadInput;
- #if GET_ABI_MAJOR(ABI_XINPUT_VERSION) == 0
-       pInfo->motion_history_proc = xf86GetMotionEvents;
-       pInfo->history_size = 0;
- #endif
--      pInfo->control_proc = NULL;
-+      pInfo->conf_idev = dev;
-       pInfo->close_proc = NULL;
--      pInfo->switch_mode = NULL;
-       pInfo->conversion_proc = ConvertProc;
-       pInfo->reverse_conversion_proc = NULL;
--      pInfo->dev = NULL;
-       pInfo->private_flags = 0;
-       pInfo->always_core_feedback = 0;
--      pInfo->conf_idev = dev;
-+#endif
-+
-+      pInfo->type_name = XI_TOUCHSCREEN;
-+      pInfo->control_proc = NULL;
-+      pInfo->read_input = ReadInput;
-+      pInfo->device_control = xf86TslibControlProc;
-+      pInfo->switch_mode = NULL;
-       pInfo->private = priv;
-+      pInfo->dev = NULL;
-       /* Collect the options, and process the common options. */
--      xf86CollectInputOptions(pInfo, NULL, NULL);
-+      COLLECT_INPUT_OPTIONS(pInfo, NULL);
-       xf86ProcessCommonOptions(pInfo, pInfo->options);
-       priv->screen_num = xf86SetIntOption(pInfo->options, "ScreenNumber", 0 );
-@@ -510,23 +535,31 @@
-               priv->rotate = TSLIB_ROTATE_NONE;
-       }
-+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 12
-       s = xf86CheckStrOption(dev->commonOptions, "path", NULL);
-+#else
-+      s = xf86CheckStrOption(pInfo->options, "path", NULL);
-+#endif
-       if (!s)
-+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 12
-               s = xf86CheckStrOption(dev->commonOptions, "Device", NULL);
-+#else
-+              s = xf86CheckStrOption(pInfo->options, "Device", NULL);
-+#endif
-  
-       priv->ts = ts_open(s, 1);
--      xfree(s);
-+      free(s);
-       if (!priv->ts) {
-               ErrorF("ts_open failed (device=%s)\n",s);
-               xf86DeleteInput(pInfo, 0);
--              return NULL;
-+              return BadValue;
-       }
-       if (ts_config(priv->ts)) {
-               ErrorF("ts_config failed\n");
-               xf86DeleteInput(pInfo, 0);
--              return NULL;
-+              return BadValue;
-       }
-       pInfo->fd = ts_fd(priv->ts);
-@@ -536,11 +569,13 @@
-               priv->state = BUTTON_EMULATION_OFF;
-       }
-+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 12
-       /* Mark the device configured */
-       pInfo->flags |= XI86_CONFIGURED;
-+#endif
-       /* Return the configured device */
--      return (pInfo);
-+      return Success;
- }
- _X_EXPORT InputDriverRec TSLIB = {
diff --git a/package/x11r7/xdriver_xf86-video-ark/0001-mibstore.patch b/package/x11r7/xdriver_xf86-video-ark/0001-mibstore.patch
new file mode 100644 (file)
index 0000000..fa3e685
--- /dev/null
@@ -0,0 +1,40 @@
+From 3a3eb72baec46f48e6cf15a834271c3d3386deac Mon Sep 17 00:00:00 2001
+From: Gaetan Nadon <memsize@videotron.ca>
+Date: Tue, 17 Sep 2013 19:55:37 +0000
+Subject: Remove usage of mibstore.h (removed from server)
+
+The module had a compile error for this missing header file.
+
+Changes similar to vmware commit
+23d87c92b7211cc5249eefe4ab3a2c7f370e279e
+
+Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
+Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
+---
+Fetch from:
+http://cgit.freedesktop.org/xorg/driver/xf86-video-ark/commit/?id=3a3eb72baec46f48e6cf15a834271c3d3386deac
+
+Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
+
+diff --git a/src/ark_driver.c b/src/ark_driver.c
+index b7c287c..65cfe84 100644
+--- a/src/ark_driver.c
++++ b/src/ark_driver.c
+@@ -39,7 +39,6 @@
+ #include "compiler.h"
+ #include "mipointer.h"
+ #include "micmap.h"
+-#include "mibstore.h"
+ #include "fb.h"
+ #include "ark.h"
+@@ -538,7 +537,6 @@ static Bool ARKScreenInit(SCREEN_INIT_ARGS_DECL)
+       fbPictureInit (pScreen, 0, 0);
+-      miInitializeBackingStore(pScreen);
+       xf86SetBackingStore(pScreen);
+       if (!pARK->NoAccel) {
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/package/x11r7/xdriver_xf86-video-ark/xdriver_xf86-video-ark-0001-mibstore.patch b/package/x11r7/xdriver_xf86-video-ark/xdriver_xf86-video-ark-0001-mibstore.patch
deleted file mode 100644 (file)
index fa3e685..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-From 3a3eb72baec46f48e6cf15a834271c3d3386deac Mon Sep 17 00:00:00 2001
-From: Gaetan Nadon <memsize@videotron.ca>
-Date: Tue, 17 Sep 2013 19:55:37 +0000
-Subject: Remove usage of mibstore.h (removed from server)
-
-The module had a compile error for this missing header file.
-
-Changes similar to vmware commit
-23d87c92b7211cc5249eefe4ab3a2c7f370e279e
-
-Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
-Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
----
-Fetch from:
-http://cgit.freedesktop.org/xorg/driver/xf86-video-ark/commit/?id=3a3eb72baec46f48e6cf15a834271c3d3386deac
-
-Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
-
-diff --git a/src/ark_driver.c b/src/ark_driver.c
-index b7c287c..65cfe84 100644
---- a/src/ark_driver.c
-+++ b/src/ark_driver.c
-@@ -39,7 +39,6 @@
- #include "compiler.h"
- #include "mipointer.h"
- #include "micmap.h"
--#include "mibstore.h"
- #include "fb.h"
- #include "ark.h"
-@@ -538,7 +537,6 @@ static Bool ARKScreenInit(SCREEN_INIT_ARGS_DECL)
-       fbPictureInit (pScreen, 0, 0);
--      miInitializeBackingStore(pScreen);
-       xf86SetBackingStore(pScreen);
-       if (!pARK->NoAccel) {
---
-cgit v0.9.0.2-2-gbebe
diff --git a/package/x11r7/xdriver_xf86-video-ati/0001-noxaa.patch b/package/x11r7/xdriver_xf86-video-ati/0001-noxaa.patch
new file mode 100644 (file)
index 0000000..4e53ea0
--- /dev/null
@@ -0,0 +1,17 @@
+XAA support was removed from xorg xserver
+http://cgit.freedesktop.org/xorg/xserver/commit/?id=e191e296e6e7861978ea4a0ae9aa7b780e52732b
+
+Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
+
+diff -uNr xf86-video-ati-6.14.6.org/configure.ac xf86-video-ati-6.14.6/configure.ac
+--- xf86-video-ati-6.14.6.org/configure.ac     2012-06-29 15:46:11.000000000 +0200
++++ xf86-video-ati-6.14.6/configure.ac 2014-03-29 17:21:35.805208243 +0100
+@@ -163,8 +163,6 @@
+ AM_CONDITIONAL(DRM_MODE, test x$DRM_MODE = xyes)
+ AM_CONDITIONAL(LIBUDEV, test x$LIBUDEV = xyes)
+-AC_DEFINE(USE_XAA, 1, [Build support for XAA])
+-
+ # Properly handle EXA.
+ AC_MSG_CHECKING([whether to enable EXA support])
+ if test "x$EXA" = xyes; then
diff --git a/package/x11r7/xdriver_xf86-video-ati/0002-mibstore.patch b/package/x11r7/xdriver_xf86-video-ati/0002-mibstore.patch
new file mode 100644 (file)
index 0000000..28c72aa
--- /dev/null
@@ -0,0 +1,33 @@
+patch adapted from upstream:
+http://cgit.freedesktop.org/xorg/driver/xf86-video-ati/commit/?id=e8cb0b721e6ea251f85c799ca0563bfa59a2d37c
+
+Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
+
+diff -uNr xf86-video-ati-6.14.6.org/src/radeon_driver.c xf86-video-ati-6.14.6/src/radeon_driver.c
+--- xf86-video-ati-6.14.6.org/src/radeon_driver.c      2012-06-25 10:19:41.000000000 +0200
++++ xf86-video-ati-6.14.6/src/radeon_driver.c  2014-03-29 17:27:54.712440644 +0100
+@@ -3753,10 +3753,6 @@
+     RADEONInitMemMapRegisters(pScrn, info->ModeReg, info);
+     RADEONRestoreMemMapRegisters(pScrn, info->ModeReg);
+-    /* Backing store setup */
+-    xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, RADEON_LOGLEVEL_DEBUG,
+-                 "Initializing backing store\n");
+-    miInitializeBackingStore(pScreen);
+     xf86SetBackingStore(pScreen);
+     /* DRI finalisation */
+diff -uNr xf86-video-ati-6.14.6.org/src/radeon_kms.c xf86-video-ati-6.14.6/src/radeon_kms.c
+--- xf86-video-ati-6.14.6.org/src/radeon_kms.c 2012-06-29 15:45:35.000000000 +0200
++++ xf86-video-ati-6.14.6/src/radeon_kms.c     2014-03-29 17:28:02.328340925 +0100
+@@ -1036,10 +1036,6 @@
+ #endif
+     pScrn->vtSema = TRUE;
+-    /* Backing store setup */
+-    xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, RADEON_LOGLEVEL_DEBUG,
+-                 "Initializing backing store\n");
+-    miInitializeBackingStore(pScreen);
+     xf86SetBackingStore(pScreen);
diff --git a/package/x11r7/xdriver_xf86-video-ati/0003-DamageUnregister.patch b/package/x11r7/xdriver_xf86-video-ati/0003-DamageUnregister.patch
new file mode 100644 (file)
index 0000000..e866cfd
--- /dev/null
@@ -0,0 +1,28 @@
+Fix compile error, inspired by
+http://cgit.freedesktop.org/xorg/driver/xf86-video-vmware/commit/?id=e26dec8f5278df74a102493bf6d2d8444dab5d6d
+
+Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
+
+diff -uNr xf86-video-ati-6.14.6.org/src/radeon_driver.c xf86-video-ati-6.14.6/src/radeon_driver.c
+--- xf86-video-ati-6.14.6.org/src/radeon_driver.c      2012-06-25 10:19:41.000000000 +0200
++++ xf86-video-ati-6.14.6/src/radeon_driver.c  2014-03-29 18:03:47.401381113 +0100
+@@ -99,6 +99,7 @@
+ #endif
+ #include "xf86cmap.h"
+ #include "vbe.h"
++#include <xorgVersion.h>
+ #include "shadow.h"
+                               /* vgaHW definitions */
+@@ -6440,7 +6437,11 @@
+     if (info->dri && info->dri->pDamage) {
+       PixmapPtr pPix = pScreen->GetScreenPixmap(pScreen);
++#if XORG_VERSION_CURRENT >= XORG_VERSION_NUMERIC(1,14,99,2,0)
++      DamageUnregister(info->dri->pDamage);
++#else
+       DamageUnregister(&pPix->drawable, info->dri->pDamage);
++#endif
+       DamageDestroy(info->dri->pDamage);
+       info->dri->pDamage = NULL;
+     }
diff --git a/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati-0001-noxaa.patch b/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati-0001-noxaa.patch
deleted file mode 100644 (file)
index 4e53ea0..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-XAA support was removed from xorg xserver
-http://cgit.freedesktop.org/xorg/xserver/commit/?id=e191e296e6e7861978ea4a0ae9aa7b780e52732b
-
-Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
-
-diff -uNr xf86-video-ati-6.14.6.org/configure.ac xf86-video-ati-6.14.6/configure.ac
---- xf86-video-ati-6.14.6.org/configure.ac     2012-06-29 15:46:11.000000000 +0200
-+++ xf86-video-ati-6.14.6/configure.ac 2014-03-29 17:21:35.805208243 +0100
-@@ -163,8 +163,6 @@
- AM_CONDITIONAL(DRM_MODE, test x$DRM_MODE = xyes)
- AM_CONDITIONAL(LIBUDEV, test x$LIBUDEV = xyes)
--AC_DEFINE(USE_XAA, 1, [Build support for XAA])
--
- # Properly handle EXA.
- AC_MSG_CHECKING([whether to enable EXA support])
- if test "x$EXA" = xyes; then
diff --git a/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati-0002-mibstore.patch b/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati-0002-mibstore.patch
deleted file mode 100644 (file)
index 28c72aa..0000000
+++ /dev/null
@@ -1,33 +0,0 @@
-patch adapted from upstream:
-http://cgit.freedesktop.org/xorg/driver/xf86-video-ati/commit/?id=e8cb0b721e6ea251f85c799ca0563bfa59a2d37c
-
-Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
-
-diff -uNr xf86-video-ati-6.14.6.org/src/radeon_driver.c xf86-video-ati-6.14.6/src/radeon_driver.c
---- xf86-video-ati-6.14.6.org/src/radeon_driver.c      2012-06-25 10:19:41.000000000 +0200
-+++ xf86-video-ati-6.14.6/src/radeon_driver.c  2014-03-29 17:27:54.712440644 +0100
-@@ -3753,10 +3753,6 @@
-     RADEONInitMemMapRegisters(pScrn, info->ModeReg, info);
-     RADEONRestoreMemMapRegisters(pScrn, info->ModeReg);
--    /* Backing store setup */
--    xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, RADEON_LOGLEVEL_DEBUG,
--                 "Initializing backing store\n");
--    miInitializeBackingStore(pScreen);
-     xf86SetBackingStore(pScreen);
-     /* DRI finalisation */
-diff -uNr xf86-video-ati-6.14.6.org/src/radeon_kms.c xf86-video-ati-6.14.6/src/radeon_kms.c
---- xf86-video-ati-6.14.6.org/src/radeon_kms.c 2012-06-29 15:45:35.000000000 +0200
-+++ xf86-video-ati-6.14.6/src/radeon_kms.c     2014-03-29 17:28:02.328340925 +0100
-@@ -1036,10 +1036,6 @@
- #endif
-     pScrn->vtSema = TRUE;
--    /* Backing store setup */
--    xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, RADEON_LOGLEVEL_DEBUG,
--                 "Initializing backing store\n");
--    miInitializeBackingStore(pScreen);
-     xf86SetBackingStore(pScreen);
diff --git a/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati-0003-DamageUnregister.patch b/package/x11r7/xdriver_xf86-video-ati/xdriver_xf86-video-ati-0003-DamageUnregister.patch
deleted file mode 100644 (file)
index e866cfd..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-Fix compile error, inspired by
-http://cgit.freedesktop.org/xorg/driver/xf86-video-vmware/commit/?id=e26dec8f5278df74a102493bf6d2d8444dab5d6d
-
-Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
-
-diff -uNr xf86-video-ati-6.14.6.org/src/radeon_driver.c xf86-video-ati-6.14.6/src/radeon_driver.c
---- xf86-video-ati-6.14.6.org/src/radeon_driver.c      2012-06-25 10:19:41.000000000 +0200
-+++ xf86-video-ati-6.14.6/src/radeon_driver.c  2014-03-29 18:03:47.401381113 +0100
-@@ -99,6 +99,7 @@
- #endif
- #include "xf86cmap.h"
- #include "vbe.h"
-+#include <xorgVersion.h>
- #include "shadow.h"
-                               /* vgaHW definitions */
-@@ -6440,7 +6437,11 @@
-     if (info->dri && info->dri->pDamage) {
-       PixmapPtr pPix = pScreen->GetScreenPixmap(pScreen);
-+#if XORG_VERSION_CURRENT >= XORG_VERSION_NUMERIC(1,14,99,2,0)
-+      DamageUnregister(info->dri->pDamage);
-+#else
-       DamageUnregister(&pPix->drawable, info->dri->pDamage);
-+#endif
-       DamageDestroy(info->dri->pDamage);
-       info->dri->pDamage = NULL;
-     }
diff --git a/package/x11r7/xdriver_xf86-video-geode/0001-include.patch b/package/x11r7/xdriver_xf86-video-geode/0001-include.patch
new file mode 100644 (file)
index 0000000..e38424a
--- /dev/null
@@ -0,0 +1,17 @@
+taken from upstream to fix FTBFS on xserver 1.15 and up
+http://cgit.freedesktop.org/xorg/driver/xf86-video-geode/commit/?id=9707a7a5eac25536a5150fc12d9ace52420b4d36
+http://cgit.freedesktop.org/xorg/driver/xf86-video-geode/commit/?id=70b131d09b7d21df1d1ffcf6a4e50d3086924228
+
+Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
+
+diff -uNr xf86-video-geode-2.11.15.org/src/geode_dcon.c xf86-video-geode-2.11.15/src/geode_dcon.c
+--- xf86-video-geode-2.11.15.org/src/geode_dcon.c      2013-10-09 13:47:09.000000000 +0200
++++ xf86-video-geode-2.11.15/src/geode_dcon.c  2014-03-29 12:33:46.718311451 +0100
+@@ -29,6 +29,7 @@
+ /* Includes that are used by all drivers */
+ #include <xf86.h>
++#include <xf86Modes.h>
+ #include <xf86_OSproc.h>
+ #include <compiler.h>
diff --git a/package/x11r7/xdriver_xf86-video-geode/xdriver_xf86-video-geode-0001-include.patch b/package/x11r7/xdriver_xf86-video-geode/xdriver_xf86-video-geode-0001-include.patch
deleted file mode 100644 (file)
index e38424a..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-taken from upstream to fix FTBFS on xserver 1.15 and up
-http://cgit.freedesktop.org/xorg/driver/xf86-video-geode/commit/?id=9707a7a5eac25536a5150fc12d9ace52420b4d36
-http://cgit.freedesktop.org/xorg/driver/xf86-video-geode/commit/?id=70b131d09b7d21df1d1ffcf6a4e50d3086924228
-
-Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
-
-diff -uNr xf86-video-geode-2.11.15.org/src/geode_dcon.c xf86-video-geode-2.11.15/src/geode_dcon.c
---- xf86-video-geode-2.11.15.org/src/geode_dcon.c      2013-10-09 13:47:09.000000000 +0200
-+++ xf86-video-geode-2.11.15/src/geode_dcon.c  2014-03-29 12:33:46.718311451 +0100
-@@ -29,6 +29,7 @@
- /* Includes that are used by all drivers */
- #include <xf86.h>
-+#include <xf86Modes.h>
- #include <xf86_OSproc.h>
- #include <compiler.h>
diff --git a/package/x11r7/xdriver_xf86-video-glint/0001-mbstring.patch b/package/x11r7/xdriver_xf86-video-glint/0001-mbstring.patch
new file mode 100644 (file)
index 0000000..635600a
--- /dev/null
@@ -0,0 +1,35 @@
+From 073d5b0b392781bf4a6aa7f9e2dbe2ae51caed2c Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax@redhat.com>
+Date: Tue, 25 Sep 2012 12:54:38 +0000
+Subject: Remove mibstore.h
+
+Signed-off-by: Adam Jackson <ajax@redhat.com>
+---
+Fetch from:
+http://cgit.freedesktop.org/xorg/driver/xf86-video-glint/commit/?id=073d5b0b392781bf4a6aa7f9e2dbe2ae51caed2c
+
+Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
+
+diff --git a/src/glint_driver.c b/src/glint_driver.c
+index b6d20a9..aa78516 100644
+--- a/src/glint_driver.c
++++ b/src/glint_driver.c
+@@ -52,8 +52,6 @@
+ #include "compiler.h"
+ #include "mipointer.h"
+-#include "mibstore.h"
+-
+ #include "pm3_regs.h"
+ #include "glint_regs.h"
+ #include "IBM.h"
+@@ -2904,7 +2902,6 @@ GLINTScreenInit(SCREEN_INIT_ARGS_DECL)
+         }
+     }
+-    miInitializeBackingStore(pScreen);
+     xf86SetBackingStore(pScreen);
+     xf86SetSilkenMouse(pScreen);
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/package/x11r7/xdriver_xf86-video-glint/xdriver_xf86-video-glint-0001-mbstring.patch b/package/x11r7/xdriver_xf86-video-glint/xdriver_xf86-video-glint-0001-mbstring.patch
deleted file mode 100644 (file)
index 635600a..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-From 073d5b0b392781bf4a6aa7f9e2dbe2ae51caed2c Mon Sep 17 00:00:00 2001
-From: Adam Jackson <ajax@redhat.com>
-Date: Tue, 25 Sep 2012 12:54:38 +0000
-Subject: Remove mibstore.h
-
-Signed-off-by: Adam Jackson <ajax@redhat.com>
----
-Fetch from:
-http://cgit.freedesktop.org/xorg/driver/xf86-video-glint/commit/?id=073d5b0b392781bf4a6aa7f9e2dbe2ae51caed2c
-
-Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
-
-diff --git a/src/glint_driver.c b/src/glint_driver.c
-index b6d20a9..aa78516 100644
---- a/src/glint_driver.c
-+++ b/src/glint_driver.c
-@@ -52,8 +52,6 @@
- #include "compiler.h"
- #include "mipointer.h"
--#include "mibstore.h"
--
- #include "pm3_regs.h"
- #include "glint_regs.h"
- #include "IBM.h"
-@@ -2904,7 +2902,6 @@ GLINTScreenInit(SCREEN_INIT_ARGS_DECL)
-         }
-     }
--    miInitializeBackingStore(pScreen);
-     xf86SetBackingStore(pScreen);
-     xf86SetSilkenMouse(pScreen);
---
-cgit v0.9.0.2-2-gbebe
diff --git a/package/x11r7/xdriver_xf86-video-i128/0001-mbstring.patch b/package/x11r7/xdriver_xf86-video-i128/0001-mbstring.patch
new file mode 100644 (file)
index 0000000..40bb1ea
--- /dev/null
@@ -0,0 +1,35 @@
+From c87753733a6e1f85d1d037dced0b47ce0cf41658 Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax@redhat.com>
+Date: Tue, 25 Sep 2012 12:54:40 +0000
+Subject: Remove mibstore.h
+
+Signed-off-by: Adam Jackson <ajax@redhat.com>
+---
+Fetch from:
+http://cgit.freedesktop.org/xorg/driver/xf86-video-i128/commit/?id=c87753733a6e1f85d1d037dced0b47ce0cf41658
+
+Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
+
+diff --git a/src/i128_driver.c b/src/i128_driver.c
+index a0f08c0..51a4135 100644
+--- a/src/i128_driver.c
++++ b/src/i128_driver.c
+@@ -50,8 +50,6 @@
+ /* All drivers initialising the SW cursor need this */
+ #include "mipointer.h"
+-/* All drivers implementing backing store need this */
+-#include "mibstore.h"
+ #include "micmap.h"
+ #include "xf86DDC.h"
+@@ -1556,7 +1554,6 @@ I128ScreenInit(SCREEN_INIT_ARGS_DECL)
+         return FALSE;
+     }
+     
+-    miInitializeBackingStore(pScreen);
+     xf86SetBackingStore(pScreen);
+     xf86SetSilkenMouse(pScreen);
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/package/x11r7/xdriver_xf86-video-i128/xdriver_xf86-video-i128-0001-mbstring.patch b/package/x11r7/xdriver_xf86-video-i128/xdriver_xf86-video-i128-0001-mbstring.patch
deleted file mode 100644 (file)
index 40bb1ea..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-From c87753733a6e1f85d1d037dced0b47ce0cf41658 Mon Sep 17 00:00:00 2001
-From: Adam Jackson <ajax@redhat.com>
-Date: Tue, 25 Sep 2012 12:54:40 +0000
-Subject: Remove mibstore.h
-
-Signed-off-by: Adam Jackson <ajax@redhat.com>
----
-Fetch from:
-http://cgit.freedesktop.org/xorg/driver/xf86-video-i128/commit/?id=c87753733a6e1f85d1d037dced0b47ce0cf41658
-
-Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
-
-diff --git a/src/i128_driver.c b/src/i128_driver.c
-index a0f08c0..51a4135 100644
---- a/src/i128_driver.c
-+++ b/src/i128_driver.c
-@@ -50,8 +50,6 @@
- /* All drivers initialising the SW cursor need this */
- #include "mipointer.h"
--/* All drivers implementing backing store need this */
--#include "mibstore.h"
- #include "micmap.h"
- #include "xf86DDC.h"
-@@ -1556,7 +1554,6 @@ I128ScreenInit(SCREEN_INIT_ARGS_DECL)
-         return FALSE;
-     }
-     
--    miInitializeBackingStore(pScreen);
-     xf86SetBackingStore(pScreen);
-     xf86SetSilkenMouse(pScreen);
---
-cgit v0.9.0.2-2-gbebe
diff --git a/package/x11r7/xdriver_xf86-video-mach64/0001-cross-compile.patch b/package/x11r7/xdriver_xf86-video-mach64/0001-cross-compile.patch
new file mode 100644 (file)
index 0000000..d276176
--- /dev/null
@@ -0,0 +1,27 @@
+--- a/configure.ac     2008-06-23 10:39:28.000000000 -0400
++++ b/configure.ac     2008-06-23 10:40:46.000000000 -0400
+@@ -85,14 +85,20 @@ sdkdir=$(pkg-config --variable=sdkdir xo
+ AC_HEADER_STDC
+ if test "$DRI" != no; then
+-      AC_CHECK_FILE([${sdkdir}/dri.h],
++      if test "$cross_compiling" = "no" ; then
++              AC_CHECK_FILE([${sdkdir}/dri.h],
+                       [have_dri_h="yes"], [have_dri_h="no"])
+-      AC_CHECK_FILE([${sdkdir}/sarea.h],
++              AC_CHECK_FILE([${sdkdir}/sarea.h],
+                       [have_sarea_h="yes"], [have_sarea_h="no"])
+-      AC_CHECK_FILE([${sdkdir}/dristruct.h],
++              AC_CHECK_FILE([${sdkdir}/dristruct.h],
+                       [have_dristruct_h="yes"], [have_dristruct_h="no"])
+-      AC_CHECK_FILE([${sdkdir}/damage.h],
++              AC_CHECK_FILE([${sdkdir}/damage.h],
+                       [have_damage_h="yes"], [have_damage_h="no"])
++      else
++              have_dri_h="yes"
++              have_sarea_h="yes"
++              have_dristruct_h="yes"
++      fi
+ fi
+ AC_MSG_CHECKING([whether to include DRI support])
diff --git a/package/x11r7/xdriver_xf86-video-mach64/xdriver_xf86-video-mach64-cross-compile.patch b/package/x11r7/xdriver_xf86-video-mach64/xdriver_xf86-video-mach64-cross-compile.patch
deleted file mode 100644 (file)
index d276176..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
---- a/configure.ac     2008-06-23 10:39:28.000000000 -0400
-+++ b/configure.ac     2008-06-23 10:40:46.000000000 -0400
-@@ -85,14 +85,20 @@ sdkdir=$(pkg-config --variable=sdkdir xo
- AC_HEADER_STDC
- if test "$DRI" != no; then
--      AC_CHECK_FILE([${sdkdir}/dri.h],
-+      if test "$cross_compiling" = "no" ; then
-+              AC_CHECK_FILE([${sdkdir}/dri.h],
-                       [have_dri_h="yes"], [have_dri_h="no"])
--      AC_CHECK_FILE([${sdkdir}/sarea.h],
-+              AC_CHECK_FILE([${sdkdir}/sarea.h],
-                       [have_sarea_h="yes"], [have_sarea_h="no"])
--      AC_CHECK_FILE([${sdkdir}/dristruct.h],
-+              AC_CHECK_FILE([${sdkdir}/dristruct.h],
-                       [have_dristruct_h="yes"], [have_dristruct_h="no"])
--      AC_CHECK_FILE([${sdkdir}/damage.h],
-+              AC_CHECK_FILE([${sdkdir}/damage.h],
-                       [have_damage_h="yes"], [have_damage_h="no"])
-+      else
-+              have_dri_h="yes"
-+              have_sarea_h="yes"
-+              have_dristruct_h="yes"
-+      fi
- fi
- AC_MSG_CHECKING([whether to include DRI support])
diff --git a/package/x11r7/xdriver_xf86-video-mga/0001-misc-fixes.patch b/package/x11r7/xdriver_xf86-video-mga/0001-misc-fixes.patch
new file mode 100644 (file)
index 0000000..5707bd1
--- /dev/null
@@ -0,0 +1,21 @@
+--- xf86-video-mga-1.4.9/configure.ac.orig     2007-06-10 11:55:24.000000000 +0200
++++ xf86-video-mga-1.4.9/configure.ac  2007-06-10 12:00:37.000000000 +0200
+@@ -77,12 +77,18 @@
+ AC_HEADER_STDC
+ if test "x$DRI" != xno; then
++      if test "$cross_compiling" = no; then
+         AC_CHECK_FILE([${sdkdir}/dri.h],
+                       [have_dri_h="yes"], [have_dri_h="no"])
+         AC_CHECK_FILE([${sdkdir}/sarea.h],
+                       [have_sarea_h="yes"], [have_sarea_h="no"])
+         AC_CHECK_FILE([${sdkdir}/dristruct.h],
+                       [have_dristruct_h="yes"], [have_dristruct_h="no"])
++      else
++              have_dri_h="yes"
++              have_sarea_h="yes"
++              have_dristruct_h="yes"
++      fi
+ fi
+ AC_MSG_CHECKING([whether to include DRI support])
diff --git a/package/x11r7/xdriver_xf86-video-mga/xdriver_xf86-video-mga-1.4.9.patch b/package/x11r7/xdriver_xf86-video-mga/xdriver_xf86-video-mga-1.4.9.patch
deleted file mode 100644 (file)
index 5707bd1..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
---- xf86-video-mga-1.4.9/configure.ac.orig     2007-06-10 11:55:24.000000000 +0200
-+++ xf86-video-mga-1.4.9/configure.ac  2007-06-10 12:00:37.000000000 +0200
-@@ -77,12 +77,18 @@
- AC_HEADER_STDC
- if test "x$DRI" != xno; then
-+      if test "$cross_compiling" = no; then
-         AC_CHECK_FILE([${sdkdir}/dri.h],
-                       [have_dri_h="yes"], [have_dri_h="no"])
-         AC_CHECK_FILE([${sdkdir}/sarea.h],
-                       [have_sarea_h="yes"], [have_sarea_h="no"])
-         AC_CHECK_FILE([${sdkdir}/dristruct.h],
-                       [have_dristruct_h="yes"], [have_dristruct_h="no"])
-+      else
-+              have_dri_h="yes"
-+              have_sarea_h="yes"
-+              have_dristruct_h="yes"
-+      fi
- fi
- AC_MSG_CHECKING([whether to include DRI support])
diff --git a/package/x11r7/xdriver_xf86-video-nv/0001-mibstore.patch b/package/x11r7/xdriver_xf86-video-nv/0001-mibstore.patch
new file mode 100644 (file)
index 0000000..e71418b
--- /dev/null
@@ -0,0 +1,86 @@
+From fc78fe98222b0204b8a2872a529763d6fe5048da Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax@redhat.com>
+Date: Tue, 25 Sep 2012 12:54:49 +0000
+Subject: Remove mibstore.h
+
+Signed-off-by: Adam Jackson <ajax@redhat.com>
+---
+Fetch from:
+http://cgit.freedesktop.org/xorg/driver/xf86-video-nv/commit/?id=fc78fe98222b0204b8a2872a529763d6fe5048da
+
+Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
+
+diff --git a/src/g80_driver.c b/src/g80_driver.c
+index cc4e197..719b96c 100644
+--- a/src/g80_driver.c
++++ b/src/g80_driver.c
+@@ -34,7 +34,6 @@
+ #include <xf86Resources.h>
+ #endif
+ #include <mipointer.h>
+-#include <mibstore.h>
+ #include <micmap.h>
+ #include <xf86cmap.h>
+ #include <fb.h>
+@@ -833,7 +832,6 @@ G80ScreenInit(SCREEN_INIT_ARGS_DECL)
+         }
+     }
+-    miInitializeBackingStore(pScreen);
+     xf86SetBackingStore(pScreen);
+     xf86SetSilkenMouse(pScreen);
+diff --git a/src/nv_driver.c b/src/nv_driver.c
+index 6dad6e5..8f35334 100644
+--- a/src/nv_driver.c
++++ b/src/nv_driver.c
+@@ -2550,7 +2550,6 @@ NVScreenInit(SCREEN_INIT_ARGS_DECL)
+     if (!pNv->NoAccel)
+       NVAccelInit(pScreen);
+     
+-    miInitializeBackingStore(pScreen);
+     xf86SetBackingStore(pScreen);
+     xf86SetSilkenMouse(pScreen);
+diff --git a/src/nv_include.h b/src/nv_include.h
+index fb190bf..f174eef 100644
+--- a/src/nv_include.h
++++ b/src/nv_include.h
+@@ -24,9 +24,6 @@
+ /* All drivers initialising the SW cursor need this */
+ #include "mipointer.h"
+-/* All drivers implementing backing store need this */
+-#include "mibstore.h"
+-
+ #include "micmap.h"
+ #include "xf86DDC.h"
+diff --git a/src/riva_driver.c b/src/riva_driver.c
+index e0667ef..759501e 100644
+--- a/src/riva_driver.c
++++ b/src/riva_driver.c
+@@ -1168,7 +1168,6 @@ RivaScreenInit(SCREEN_INIT_ARGS_DECL)
+     if (!pRiva->NoAccel)
+       RivaAccelInit(pScreen);
+     
+-    miInitializeBackingStore(pScreen);
+     xf86SetBackingStore(pScreen);
+     xf86SetSilkenMouse(pScreen);
+diff --git a/src/riva_include.h b/src/riva_include.h
+index f2c5302..c7aeef7 100644
+--- a/src/riva_include.h
++++ b/src/riva_include.h
+@@ -22,9 +22,6 @@
+ /* All drivers initialising the SW cursor need this */
+ #include "mipointer.h"
+-/* All drivers implementing backing store need this */
+-#include "mibstore.h"
+-
+ #include "micmap.h"
+ #include "xf86DDC.h"
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/package/x11r7/xdriver_xf86-video-nv/xdriver_xf86-video-nv-0001-mibstore.patch b/package/x11r7/xdriver_xf86-video-nv/xdriver_xf86-video-nv-0001-mibstore.patch
deleted file mode 100644 (file)
index e71418b..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-From fc78fe98222b0204b8a2872a529763d6fe5048da Mon Sep 17 00:00:00 2001
-From: Adam Jackson <ajax@redhat.com>
-Date: Tue, 25 Sep 2012 12:54:49 +0000
-Subject: Remove mibstore.h
-
-Signed-off-by: Adam Jackson <ajax@redhat.com>
----
-Fetch from:
-http://cgit.freedesktop.org/xorg/driver/xf86-video-nv/commit/?id=fc78fe98222b0204b8a2872a529763d6fe5048da
-
-Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
-
-diff --git a/src/g80_driver.c b/src/g80_driver.c
-index cc4e197..719b96c 100644
---- a/src/g80_driver.c
-+++ b/src/g80_driver.c
-@@ -34,7 +34,6 @@
- #include <xf86Resources.h>
- #endif
- #include <mipointer.h>
--#include <mibstore.h>
- #include <micmap.h>
- #include <xf86cmap.h>
- #include <fb.h>
-@@ -833,7 +832,6 @@ G80ScreenInit(SCREEN_INIT_ARGS_DECL)
-         }
-     }
--    miInitializeBackingStore(pScreen);
-     xf86SetBackingStore(pScreen);
-     xf86SetSilkenMouse(pScreen);
-diff --git a/src/nv_driver.c b/src/nv_driver.c
-index 6dad6e5..8f35334 100644
---- a/src/nv_driver.c
-+++ b/src/nv_driver.c
-@@ -2550,7 +2550,6 @@ NVScreenInit(SCREEN_INIT_ARGS_DECL)
-     if (!pNv->NoAccel)
-       NVAccelInit(pScreen);
-     
--    miInitializeBackingStore(pScreen);
-     xf86SetBackingStore(pScreen);
-     xf86SetSilkenMouse(pScreen);
-diff --git a/src/nv_include.h b/src/nv_include.h
-index fb190bf..f174eef 100644
---- a/src/nv_include.h
-+++ b/src/nv_include.h
-@@ -24,9 +24,6 @@
- /* All drivers initialising the SW cursor need this */
- #include "mipointer.h"
--/* All drivers implementing backing store need this */
--#include "mibstore.h"
--
- #include "micmap.h"
- #include "xf86DDC.h"
-diff --git a/src/riva_driver.c b/src/riva_driver.c
-index e0667ef..759501e 100644
---- a/src/riva_driver.c
-+++ b/src/riva_driver.c
-@@ -1168,7 +1168,6 @@ RivaScreenInit(SCREEN_INIT_ARGS_DECL)
-     if (!pRiva->NoAccel)
-       RivaAccelInit(pScreen);
-     
--    miInitializeBackingStore(pScreen);
-     xf86SetBackingStore(pScreen);
-     xf86SetSilkenMouse(pScreen);
-diff --git a/src/riva_include.h b/src/riva_include.h
-index f2c5302..c7aeef7 100644
---- a/src/riva_include.h
-+++ b/src/riva_include.h
-@@ -22,9 +22,6 @@
- /* All drivers initialising the SW cursor need this */
- #include "mipointer.h"
--/* All drivers implementing backing store need this */
--#include "mibstore.h"
--
- #include "micmap.h"
- #include "xf86DDC.h"
---
-cgit v0.9.0.2-2-gbebe
diff --git a/package/x11r7/xdriver_xf86-video-r128/0001-cross-compile.patch b/package/x11r7/xdriver_xf86-video-r128/0001-cross-compile.patch
new file mode 100644 (file)
index 0000000..d276176
--- /dev/null
@@ -0,0 +1,27 @@
+--- a/configure.ac     2008-06-23 10:39:28.000000000 -0400
++++ b/configure.ac     2008-06-23 10:40:46.000000000 -0400
+@@ -85,14 +85,20 @@ sdkdir=$(pkg-config --variable=sdkdir xo
+ AC_HEADER_STDC
+ if test "$DRI" != no; then
+-      AC_CHECK_FILE([${sdkdir}/dri.h],
++      if test "$cross_compiling" = "no" ; then
++              AC_CHECK_FILE([${sdkdir}/dri.h],
+                       [have_dri_h="yes"], [have_dri_h="no"])
+-      AC_CHECK_FILE([${sdkdir}/sarea.h],
++              AC_CHECK_FILE([${sdkdir}/sarea.h],
+                       [have_sarea_h="yes"], [have_sarea_h="no"])
+-      AC_CHECK_FILE([${sdkdir}/dristruct.h],
++              AC_CHECK_FILE([${sdkdir}/dristruct.h],
+                       [have_dristruct_h="yes"], [have_dristruct_h="no"])
+-      AC_CHECK_FILE([${sdkdir}/damage.h],
++              AC_CHECK_FILE([${sdkdir}/damage.h],
+                       [have_damage_h="yes"], [have_damage_h="no"])
++      else
++              have_dri_h="yes"
++              have_sarea_h="yes"
++              have_dristruct_h="yes"
++      fi
+ fi
+ AC_MSG_CHECKING([whether to include DRI support])
diff --git a/package/x11r7/xdriver_xf86-video-r128/xdriver_xf86-video-r128-cross-compile.patch b/package/x11r7/xdriver_xf86-video-r128/xdriver_xf86-video-r128-cross-compile.patch
deleted file mode 100644 (file)
index d276176..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
---- a/configure.ac     2008-06-23 10:39:28.000000000 -0400
-+++ b/configure.ac     2008-06-23 10:40:46.000000000 -0400
-@@ -85,14 +85,20 @@ sdkdir=$(pkg-config --variable=sdkdir xo
- AC_HEADER_STDC
- if test "$DRI" != no; then
--      AC_CHECK_FILE([${sdkdir}/dri.h],
-+      if test "$cross_compiling" = "no" ; then
-+              AC_CHECK_FILE([${sdkdir}/dri.h],
-                       [have_dri_h="yes"], [have_dri_h="no"])
--      AC_CHECK_FILE([${sdkdir}/sarea.h],
-+              AC_CHECK_FILE([${sdkdir}/sarea.h],
-                       [have_sarea_h="yes"], [have_sarea_h="no"])
--      AC_CHECK_FILE([${sdkdir}/dristruct.h],
-+              AC_CHECK_FILE([${sdkdir}/dristruct.h],
-                       [have_dristruct_h="yes"], [have_dristruct_h="no"])
--      AC_CHECK_FILE([${sdkdir}/damage.h],
-+              AC_CHECK_FILE([${sdkdir}/damage.h],
-                       [have_damage_h="yes"], [have_damage_h="no"])
-+      else
-+              have_dri_h="yes"
-+              have_sarea_h="yes"
-+              have_dristruct_h="yes"
-+      fi
- fi
- AC_MSG_CHECKING([whether to include DRI support])
diff --git a/package/x11r7/xdriver_xf86-video-savage/0001-cross-compile.patch b/package/x11r7/xdriver_xf86-video-savage/0001-cross-compile.patch
new file mode 100644 (file)
index 0000000..b9c296b
--- /dev/null
@@ -0,0 +1,27 @@
+--- a/configure.ac     2008-05-21 16:04:23.000000000 -0400
++++ b/configure.ac     2008-06-23 11:41:50.000000000 -0400
+@@ -68,12 +68,18 @@ sdkdir=$(pkg-config --variable=sdkdir xo
+ AC_HEADER_STDC
+ if test "$DRI" != no; then
+-        AC_CHECK_FILE([${sdkdir}/dri.h],
+-                      [have_dri_h="yes"], [have_dri_h="no"])
+-        AC_CHECK_FILE([${sdkdir}/sarea.h],
+-                      [have_sarea_h="yes"], [have_sarea_h="no"])
+-        AC_CHECK_FILE([${sdkdir}/dristruct.h],
+-                      [have_dristruct_h="yes"], [have_dristruct_h="no"])
++      if test "$cross_compiling" = "no" ; then
++              AC_CHECK_FILE([${sdkdir}/dri.h],
++                        [have_dri_h="yes"], [have_dri_h="no"])
++              AC_CHECK_FILE([${sdkdir}/sarea.h],
++                        [have_sarea_h="yes"], [have_sarea_h="no"])
++              AC_CHECK_FILE([${sdkdir}/dristruct.h],
++                        [have_dristruct_h="yes"], [have_dristruct_h="no"])
++      else
++              have_dri_h="yes"
++              have_sarea_h="yes"
++              have_dristruct_h="yes"
++      fi
+ fi
+ AC_MSG_CHECKING([whether to include DRI support])
diff --git a/package/x11r7/xdriver_xf86-video-savage/xdriver_xf86-video-savage-2.2.1-cross-compile.patch b/package/x11r7/xdriver_xf86-video-savage/xdriver_xf86-video-savage-2.2.1-cross-compile.patch
deleted file mode 100644 (file)
index b9c296b..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
---- a/configure.ac     2008-05-21 16:04:23.000000000 -0400
-+++ b/configure.ac     2008-06-23 11:41:50.000000000 -0400
-@@ -68,12 +68,18 @@ sdkdir=$(pkg-config --variable=sdkdir xo
- AC_HEADER_STDC
- if test "$DRI" != no; then
--        AC_CHECK_FILE([${sdkdir}/dri.h],
--                      [have_dri_h="yes"], [have_dri_h="no"])
--        AC_CHECK_FILE([${sdkdir}/sarea.h],
--                      [have_sarea_h="yes"], [have_sarea_h="no"])
--        AC_CHECK_FILE([${sdkdir}/dristruct.h],
--                      [have_dristruct_h="yes"], [have_dristruct_h="no"])
-+      if test "$cross_compiling" = "no" ; then
-+              AC_CHECK_FILE([${sdkdir}/dri.h],
-+                        [have_dri_h="yes"], [have_dri_h="no"])
-+              AC_CHECK_FILE([${sdkdir}/sarea.h],
-+                        [have_sarea_h="yes"], [have_sarea_h="no"])
-+              AC_CHECK_FILE([${sdkdir}/dristruct.h],
-+                        [have_dristruct_h="yes"], [have_dristruct_h="no"])
-+      else
-+              have_dri_h="yes"
-+              have_sarea_h="yes"
-+              have_dristruct_h="yes"
-+      fi
- fi
- AC_MSG_CHECKING([whether to include DRI support])
diff --git a/package/x11r7/xdriver_xf86-video-siliconmotion/0001-smi_driver.patch b/package/x11r7/xdriver_xf86-video-siliconmotion/0001-smi_driver.patch
new file mode 100644 (file)
index 0000000..493edbb
--- /dev/null
@@ -0,0 +1,27 @@
+From f19d7e463c30f1364e82e8c9f87b8a8407d53680 Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax@redhat.com>
+Date: Thu, 10 Jan 2013 03:59:39 +0000
+Subject: Remove miInitializeBackingStore()
+
+Signed-off-by: Adam Jackson <ajax@redhat.com>
+---
+Fetch from:
+http://cgit.freedesktop.org/xorg/driver/xf86-video-siliconmotion/commit/?id=f19d7e463c30f1364e82e8c9f87b8a8407d53680
+
+Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
+
+diff --git a/src/smi_driver.c b/src/smi_driver.c
+index 4794571..134db79 100644
+--- a/src/smi_driver.c
++++ b/src/smi_driver.c
+@@ -1750,8 +1750,6 @@ SMI_ScreenInit(SCREEN_INIT_ARGS_DECL)
+                  "Done writing mode.  Register dump:\n");
+     SMI_PrintRegs(pScrn);
+-    miInitializeBackingStore(pScreen);
+-
+ #ifdef HAVE_XMODES
+     xf86DiDGAInit(pScreen, (unsigned long)(pSmi->FBBase + pScrn->fbOffset));
+ #endif
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/package/x11r7/xdriver_xf86-video-siliconmotion/xdriver_xf86-video-siliconmotion-0001-smi_driver.patch b/package/x11r7/xdriver_xf86-video-siliconmotion/xdriver_xf86-video-siliconmotion-0001-smi_driver.patch
deleted file mode 100644 (file)
index 493edbb..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-From f19d7e463c30f1364e82e8c9f87b8a8407d53680 Mon Sep 17 00:00:00 2001
-From: Adam Jackson <ajax@redhat.com>
-Date: Thu, 10 Jan 2013 03:59:39 +0000
-Subject: Remove miInitializeBackingStore()
-
-Signed-off-by: Adam Jackson <ajax@redhat.com>
----
-Fetch from:
-http://cgit.freedesktop.org/xorg/driver/xf86-video-siliconmotion/commit/?id=f19d7e463c30f1364e82e8c9f87b8a8407d53680
-
-Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
-
-diff --git a/src/smi_driver.c b/src/smi_driver.c
-index 4794571..134db79 100644
---- a/src/smi_driver.c
-+++ b/src/smi_driver.c
-@@ -1750,8 +1750,6 @@ SMI_ScreenInit(SCREEN_INIT_ARGS_DECL)
-                  "Done writing mode.  Register dump:\n");
-     SMI_PrintRegs(pScrn);
--    miInitializeBackingStore(pScreen);
--
- #ifdef HAVE_XMODES
-     xf86DiDGAInit(pScreen, (unsigned long)(pSmi->FBBase + pScrn->fbOffset));
- #endif
---
-cgit v0.9.0.2-2-gbebe
diff --git a/package/x11r7/xdriver_xf86-video-sis/0001-cross.patch b/package/x11r7/xdriver_xf86-video-sis/0001-cross.patch
new file mode 100644 (file)
index 0000000..9e06480
--- /dev/null
@@ -0,0 +1,21 @@
+--- xf86-video-sis-0.9.3/configure.ac.orig     2007-06-10 21:00:29.000000000 +0200
++++ xf86-video-sis-0.9.3/configure.ac  2007-06-10 21:00:45.000000000 +0200
+@@ -71,12 +71,18 @@
+ AC_HEADER_STDC
+ if test "$DRI" != no; then
++      if test "$cross_compiling" = "no" ; then
+         AC_CHECK_FILE([${sdkdir}/dri.h],
+                       [have_dri_h="yes"], [have_dri_h="no"])
+         AC_CHECK_FILE([${sdkdir}/sarea.h],
+                       [have_sarea_h="yes"], [have_sarea_h="no"])
+         AC_CHECK_FILE([${sdkdir}/dristruct.h],
+                       [have_dristruct_h="yes"], [have_dristruct_h="no"])
++      else
++              have_dri_h="yes"
++              have_sarea_h="yes"
++              have_dristruct_h="yes"
++      fi
+ fi
+ AC_MSG_CHECKING([whether to include DRI support])
diff --git a/package/x11r7/xdriver_xf86-video-sis/0002-mibstore.patch b/package/x11r7/xdriver_xf86-video-sis/0002-mibstore.patch
new file mode 100644 (file)
index 0000000..436e437
--- /dev/null
@@ -0,0 +1,34 @@
+From 926d4f655c8491b68a338f50c810f6729686ec9f Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax@redhat.com>
+Date: Tue, 25 Sep 2012 12:54:51 +0000
+Subject: Remove mibstore.h
+
+Signed-off-by: Adam Jackson <ajax@redhat.com>
+---
+Fetch from:
+http://cgit.freedesktop.org/xorg/driver/xf86-video-sis/commit/?id=926d4f655c8491b68a338f50c810f6729686ec9f
+
+Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
+
+diff --git a/src/sis_driver.c b/src/sis_driver.c
+index 4c9b9cb..46cfefd 100644
+--- a/src/sis_driver.c
++++ b/src/sis_driver.c
+@@ -57,7 +57,6 @@
+ #include "fb.h"
+ #include "micmap.h"
+ #include "mipointer.h"
+-#include "mibstore.h"
+ #include "edid.h"
+ #define SIS_NEED_inSISREG
+@@ -8883,7 +8882,6 @@ SISScreenInit(SCREEN_INIT_ARGS_DECL)
+     }
+     pSiS->SiSFastVidCopyDone = TRUE;
+-    miInitializeBackingStore(pScreen);
+     xf86SetBackingStore(pScreen);
+     xf86SetSilkenMouse(pScreen);
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/package/x11r7/xdriver_xf86-video-sis/0003-xf86UnMapVidMem.patch b/package/x11r7/xdriver_xf86-video-sis/0003-xf86UnMapVidMem.patch
new file mode 100644 (file)
index 0000000..6082fb9
--- /dev/null
@@ -0,0 +1,86 @@
+From 339fb3bc032b9f35b07b90480ae82a0fd352e078 Mon Sep 17 00:00:00 2001
+From: Jan Lindemann <jan@jannet.de>
+Date: Thu, 30 Aug 2012 18:09:10 +0000
+Subject: Replace xf86UnMapVidMem with pci_device_unmap_range
+
+Mixing pci_device_map_range with xf86UnMapVidMem doesn't work too well.
+
+X.Org bug#18028 <https://bugs.freedesktop.org/show_bug.cgi?id=18028>
+
+Bug found by Bryan Henderson <bryanh@giraffe-data.com>
+
+Signed-off-by: Julien Cristau <jcristau@debian.org>
+---
+Fetch from:
+http://cgit.freedesktop.org/xorg/driver/xf86-video-sis/commit/?id=339fb3bc032b9f35b07b90480ae82a0fd352e078
+
+Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
+
+diff --git a/src/sis_driver.c b/src/sis_driver.c
+index 61e8075..4c9b9cb 100644
+--- a/src/sis_driver.c
++++ b/src/sis_driver.c
+@@ -7344,7 +7344,11 @@ SISUnmapMem(ScrnInfoPtr pScrn)
+         if(pSiSEnt->MapCountIOBase) {
+           pSiSEnt->MapCountIOBase--;
+           if((pSiSEnt->MapCountIOBase == 0) || (pSiSEnt->forceUnmapIOBase)) {
++#ifndef XSERVER_LIBPCIACCESS
+               xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiSEnt->IOBase, (pSiS->mmioSize * 1024));
++#else
++              pci_device_unmap_range(pSiS->PciInfo, pSiSEnt->IOBase, (pSiS->mmioSize * 1024));
++#endif
+               pSiSEnt->IOBase = NULL;
+               pSiSEnt->MapCountIOBase = 0;
+               pSiSEnt->forceUnmapIOBase = FALSE;
+@@ -7355,7 +7359,11 @@ SISUnmapMem(ScrnInfoPtr pScrn)
+       if(pSiSEnt->MapCountIOBaseDense) {
+           pSiSEnt->MapCountIOBaseDense--;
+           if((pSiSEnt->MapCountIOBaseDense == 0) || (pSiSEnt->forceUnmapIOBaseDense)) {
++#ifndef XSERVER_LIBPCIACCESS
+               xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiSEnt->IOBaseDense, (pSiS->mmioSize * 1024));
++#else
++              pci_device_unmap_range(pSiS->PciInfo, (pointer)pSiSEnt->IOBaseDense, (pSiS->mmioSize * 1024));
++#endif
+               pSiSEnt->IOBaseDense = NULL;
+               pSiSEnt->MapCountIOBaseDense = 0;
+               pSiSEnt->forceUnmapIOBaseDense = FALSE;
+@@ -7366,7 +7374,11 @@ SISUnmapMem(ScrnInfoPtr pScrn)
+       if(pSiSEnt->MapCountFbBase) {
+           pSiSEnt->MapCountFbBase--;
+           if((pSiSEnt->MapCountFbBase == 0) || (pSiSEnt->forceUnmapFbBase)) {
++#ifndef XSERVER_LIBPCIACCESS
+               xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiSEnt->RealFbBase, pSiS->FbMapSize);
++#else
++              pci_device_unmap_range(pSiS->PciInfo, (pointer)pSiSEnt->RealFbBase, pSiS->FbMapSize);
++#endif
+               pSiSEnt->FbBase = pSiSEnt->RealFbBase = NULL;
+               pSiSEnt->MapCountFbBase = 0;
+               pSiSEnt->forceUnmapFbBase = FALSE;
+@@ -7376,13 +7388,25 @@ SISUnmapMem(ScrnInfoPtr pScrn)
+       }
+     } else {
+ #endif
++#ifndef XSERVER_LIBPCIACCESS
+       xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiS->IOBase, (pSiS->mmioSize * 1024));
++#else
++      pci_device_unmap_range(pSiS->PciInfo, (pointer)pSiS->IOBase, (pSiS->mmioSize * 1024));
++#endif
+       pSiS->IOBase = NULL;
+ #ifdef __alpha__
++#ifndef XSERVER_LIBPCIACCESS
+       xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiS->IOBaseDense, (pSiS->mmioSize * 1024));
++#else
++      pci_device_unmap_range(pSiS->PciInfo, (pointer)pSiS->IOBaseDense, (pSiS->mmioSize * 1024));
++#endif
+       pSiS->IOBaseDense = NULL;
+ #endif
++#ifndef XSERVER_LIBPCIACCESS
+       xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiS->RealFbBase, pSiS->FbMapSize);
++#else
++      pci_device_unmap_range(pSiS->PciInfo, (pointer)pSiS->RealFbBase, pSiS->FbMapSize);
++#endif
+       pSiS->FbBase = pSiS->RealFbBase = NULL;
+ #ifdef SISDUALHEAD
+     }
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/package/x11r7/xdriver_xf86-video-sis/0004-xf86Priv.patch b/package/x11r7/xdriver_xf86-video-sis/0004-xf86Priv.patch
new file mode 100644 (file)
index 0000000..bf36b0d
--- /dev/null
@@ -0,0 +1,43 @@
+From 7d4402786b758de3e6ce2641e15a39d612d5c518 Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax@redhat.com>
+Date: Mon, 15 Oct 2012 23:11:30 +0000
+Subject: Stop including xf86Priv.h
+
+As the name might suggest, it's server-private.
+
+Signed-off-by: Adam Jackson <ajax@redhat.com>
+---
+Fetch from:
+http://cgit.freedesktop.org/xorg/driver/xf86-video-sis/commit/?id=7d4402786b758de3e6ce2641e15a39d612d5c518
+
+Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
+
+diff --git a/src/sis.h b/src/sis.h
+index 46fca2a..20e6134 100644
+--- a/src/sis.h
++++ b/src/sis.h
+@@ -75,7 +75,6 @@
+ #include "compiler.h"
+ #include "xf86Pci.h"
+-#include "xf86Priv.h"
+ #include "xf86_OSproc.h"
+ #if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 6
+ #include "xf86Resources.h"
+diff --git a/src/sis_driver.c b/src/sis_driver.c
+index 46cfefd..cefe503 100644
+--- a/src/sis_driver.c
++++ b/src/sis_driver.c
+@@ -93,6 +93,10 @@
+ #include "dri.h"
+ #endif
++#ifndef DEFAULT_DPI
++#define DEFAULT_DPI 96
++#endif
++
+ /*
+  * LookupWindow was removed with video abi 11.
+  */
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/package/x11r7/xdriver_xf86-video-sis/0005-hvdisplay.patch b/package/x11r7/xdriver_xf86-video-sis/0005-hvdisplay.patch
new file mode 100644 (file)
index 0000000..584d3f4
--- /dev/null
@@ -0,0 +1,46 @@
+From 0a4336efaafac4c34d4287b5df586bbb418f7f76 Mon Sep 17 00:00:00 2001
+From: Alan Coopersmith <alan.coopersmith@oracle.com>
+Date: Sat, 26 Oct 2013 21:27:17 +0000
+Subject: Fix HDisplay/VDisplay typos
+
+Found by gcc -Wlogicalops:
+
+sis_driver.c: In function 'SiS_CheckModeCRT2':
+sis_driver.c:13754:5: warning: logical 'and' of mutually exclusive tests is always false [-Wlogical-op]
+sis_driver.c:13755:6: warning: logical 'and' of mutually exclusive tests is always false [-Wlogical-op]
+sis_driver.c:13756:6: warning: logical 'and' of mutually exclusive tests is always false [-Wlogical-op]
+sis_driver.c:13758:5: warning: logical 'and' of mutually exclusive tests is always false [-Wlogical-op]
+sis_driver.c:13759:6: warning: logical 'and' of mutually exclusive tests is always false [-Wlogical-op]
+
+Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
+Reviewed-by: Gaetan Nadon <memsize@videotron.ca>
+---
+Fetch from:
+http://cgit.freedesktop.org/xorg/driver/xf86-video-sis/commit/?id=0a4336efaafac4c34d4287b5df586bbb418f7f76
+
+Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
+
+diff --git a/src/sis_driver.c b/src/sis_driver.c
+index cefe503..80b8d51 100644
+--- a/src/sis_driver.c
++++ b/src/sis_driver.c
+@@ -13751,12 +13751,12 @@ SiS_CheckModeCRT2(ScrnInfoPtr pScrn, DisplayModePtr mode, unsigned int VBFlags,
+       if( ((mode->HDisplay <= pSiS->LCDwidth) &&
+            (mode->VDisplay <= pSiS->LCDheight)) ||
+         ((pSiS->SiS_Pr->SiS_CustomT == CUT_PANEL848) &&
+-         (((mode->HDisplay == 1360) && (mode->HDisplay == 768)) ||
+-          ((mode->HDisplay == 1024) && (mode->HDisplay == 768)) ||
+-          ((mode->HDisplay ==  800) && (mode->HDisplay == 600)))) ||
++         (((mode->HDisplay == 1360) && (mode->VDisplay == 768)) ||
++          ((mode->HDisplay == 1024) && (mode->VDisplay == 768)) ||
++          ((mode->HDisplay ==  800) && (mode->VDisplay == 600)))) ||
+         ((pSiS->SiS_Pr->SiS_CustomT == CUT_PANEL856) &&
+-         (((mode->HDisplay == 1024) && (mode->HDisplay == 768)) ||
+-          ((mode->HDisplay ==  800) && (mode->HDisplay == 600)))) ) {
++         (((mode->HDisplay == 1024) && (mode->VDisplay == 768)) ||
++          ((mode->HDisplay ==  800) && (mode->VDisplay == 600)))) ) {
+        ModeIndex = SiS_GetModeID_LCD(pSiS->VGAEngine, VBFlags, mode->HDisplay, mode->VDisplay, i,
+                               pSiS->FSTN, pSiS->SiS_Pr->SiS_CustomT, pSiS->LCDwidth, pSiS->LCDheight,
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/package/x11r7/xdriver_xf86-video-sis/0006-fixwarnings.patch b/package/x11r7/xdriver_xf86-video-sis/0006-fixwarnings.patch
new file mode 100644 (file)
index 0000000..3598c9e
--- /dev/null
@@ -0,0 +1,67 @@
+From 49796d6a3274adc0250ee07faa6bc63e41c98740 Mon Sep 17 00:00:00 2001
+From: Peter Hutterer <peter.hutterer@who-t.net>
+Date: Thu, 21 Nov 2013 22:21:18 +0000
+Subject: Fix format-security warnings
+
+sis_driver.c: In function 'SISErrorLog':
+sis_driver.c:432:5: error: format not a string literal and no format arguments [-Werror=format-security]
+     xf86DrvMsg(pScrn->scrnIndex, X_ERROR, str);
+     ^
+sis_driver.c:439:5: error: format not a string literal and no format arguments [-Werror=format-security]
+     xf86DrvMsg(pScrn->scrnIndex, X_ERROR, str);
+     ^
+sis_driver.c: In function 'SiSUpdateXineramaScreenInfo':
+sis_driver.c:1917:4: error: format not a string literal and no format arguments [-Werror=format-security]
+    xf86DrvMsg(pScrn1->scrnIndex, X_INFO, rectxine);
+    ^
+sis_driver.c:1924:8: error: format not a string literal and no format arguments [-Werror=format-security]
+        xf86DrvMsg(pScrn1->scrnIndex, X_INFO, rectxine);
+
+Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
+---
+Fetch from:
+http://cgit.freedesktop.org/xorg/driver/xf86-video-sis/commit/?id=49796d6a3274adc0250ee07faa6bc63e41c98740
+
+Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
+
+diff --git a/src/sis_driver.c b/src/sis_driver.c
+index 80b8d51..bd9c4e1 100644
+--- a/src/sis_driver.c
++++ b/src/sis_driver.c
+@@ -429,14 +429,14 @@ SISErrorLog(ScrnInfoPtr pScrn, const char *format, ...)
+     static const char *str = "**************************************************\n";
+     va_start(ap, format);
+-    xf86DrvMsg(pScrn->scrnIndex, X_ERROR, str);
++    xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "%s", str);
+     xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
+       "                      ERROR:\n");
+     xf86VDrvMsgVerb(pScrn->scrnIndex, X_ERROR, 1, format, ap);
+     va_end(ap);
+     xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
+       "                  END OF MESSAGE\n");
+-    xf86DrvMsg(pScrn->scrnIndex, X_ERROR, str);
++    xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "%s", str);
+ }
+ static void
+@@ -1914,14 +1914,14 @@ SiSUpdateXineramaScreenInfo(ScrnInfoPtr pScrn1)
+        if(infochanged && !usenonrect) {
+         xf86DrvMsg(pScrn1->scrnIndex, X_INFO,
+                       "Virtual screen size does not match maximum display modes...\n");
+-        xf86DrvMsg(pScrn1->scrnIndex, X_INFO, rectxine);
++        xf86DrvMsg(pScrn1->scrnIndex, X_INFO, "%s", rectxine);
+        }
+     } else if(infochanged && usenonrect) {
+        usenonrect = FALSE;
+        xf86DrvMsg(pScrn1->scrnIndex, X_INFO,
+               "Only clone modes available for this virtual screen size...\n");
+-       xf86DrvMsg(pScrn1->scrnIndex, X_INFO, rectxine);
++       xf86DrvMsg(pScrn1->scrnIndex, X_INFO, "%s", rectxine);
+     }
+     if(pSiS->maxCRT1_X1) {            /* Means we have at least one non-clone mode */
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/package/x11r7/xdriver_xf86-video-sis/0007-xi.patch b/package/x11r7/xdriver_xf86-video-sis/0007-xi.patch
new file mode 100644 (file)
index 0000000..7905248
--- /dev/null
@@ -0,0 +1,24 @@
+Fetch from:
+https://projects.archlinux.org/svntogit/packages.git/commit/trunk?h=packages/xf86-video-sis&id=7aaa7a9786ce5654df877311909244e0a6c42fd1
+
+Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
+
+--- xf86-video-sis-0.10.7/src/sis_driver.c     2013-03-10 13:57:50.000000000 +0100
++++ xf86-video-sis-0.10.7/src/sis_driver.c.new 2013-03-10 13:54:48.645203559 +0100
+@@ -9378,7 +9378,15 @@
+      }
+      if(doit) {
+       sigstate = xf86BlockSIGIO();
+-#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 15
++#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 18
++        {
++            double dx = x, dy = y;
++            miPointerSetPosition(inputInfo.pointer, Absolute, &dx, &dy,
++                NULL, NULL);
++            x = (int)dx;
++            y = (int)dy;
++        }
++#elif GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 15
+         {
+             double dx = x, dy = y;
+             miPointerSetPosition(inputInfo.pointer, Absolute, &dx, &dy);
diff --git a/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis-0001-cross.patch b/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis-0001-cross.patch
deleted file mode 100644 (file)
index 9e06480..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
---- xf86-video-sis-0.9.3/configure.ac.orig     2007-06-10 21:00:29.000000000 +0200
-+++ xf86-video-sis-0.9.3/configure.ac  2007-06-10 21:00:45.000000000 +0200
-@@ -71,12 +71,18 @@
- AC_HEADER_STDC
- if test "$DRI" != no; then
-+      if test "$cross_compiling" = "no" ; then
-         AC_CHECK_FILE([${sdkdir}/dri.h],
-                       [have_dri_h="yes"], [have_dri_h="no"])
-         AC_CHECK_FILE([${sdkdir}/sarea.h],
-                       [have_sarea_h="yes"], [have_sarea_h="no"])
-         AC_CHECK_FILE([${sdkdir}/dristruct.h],
-                       [have_dristruct_h="yes"], [have_dristruct_h="no"])
-+      else
-+              have_dri_h="yes"
-+              have_sarea_h="yes"
-+              have_dristruct_h="yes"
-+      fi
- fi
- AC_MSG_CHECKING([whether to include DRI support])
diff --git a/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis-0002-mibstore.patch b/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis-0002-mibstore.patch
deleted file mode 100644 (file)
index 436e437..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-From 926d4f655c8491b68a338f50c810f6729686ec9f Mon Sep 17 00:00:00 2001
-From: Adam Jackson <ajax@redhat.com>
-Date: Tue, 25 Sep 2012 12:54:51 +0000
-Subject: Remove mibstore.h
-
-Signed-off-by: Adam Jackson <ajax@redhat.com>
----
-Fetch from:
-http://cgit.freedesktop.org/xorg/driver/xf86-video-sis/commit/?id=926d4f655c8491b68a338f50c810f6729686ec9f
-
-Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
-
-diff --git a/src/sis_driver.c b/src/sis_driver.c
-index 4c9b9cb..46cfefd 100644
---- a/src/sis_driver.c
-+++ b/src/sis_driver.c
-@@ -57,7 +57,6 @@
- #include "fb.h"
- #include "micmap.h"
- #include "mipointer.h"
--#include "mibstore.h"
- #include "edid.h"
- #define SIS_NEED_inSISREG
-@@ -8883,7 +8882,6 @@ SISScreenInit(SCREEN_INIT_ARGS_DECL)
-     }
-     pSiS->SiSFastVidCopyDone = TRUE;
--    miInitializeBackingStore(pScreen);
-     xf86SetBackingStore(pScreen);
-     xf86SetSilkenMouse(pScreen);
---
-cgit v0.9.0.2-2-gbebe
diff --git a/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis-0003-xf86UnMapVidMem.patch b/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis-0003-xf86UnMapVidMem.patch
deleted file mode 100644 (file)
index 6082fb9..0000000
+++ /dev/null
@@ -1,86 +0,0 @@
-From 339fb3bc032b9f35b07b90480ae82a0fd352e078 Mon Sep 17 00:00:00 2001
-From: Jan Lindemann <jan@jannet.de>
-Date: Thu, 30 Aug 2012 18:09:10 +0000
-Subject: Replace xf86UnMapVidMem with pci_device_unmap_range
-
-Mixing pci_device_map_range with xf86UnMapVidMem doesn't work too well.
-
-X.Org bug#18028 <https://bugs.freedesktop.org/show_bug.cgi?id=18028>
-
-Bug found by Bryan Henderson <bryanh@giraffe-data.com>
-
-Signed-off-by: Julien Cristau <jcristau@debian.org>
----
-Fetch from:
-http://cgit.freedesktop.org/xorg/driver/xf86-video-sis/commit/?id=339fb3bc032b9f35b07b90480ae82a0fd352e078
-
-Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
-
-diff --git a/src/sis_driver.c b/src/sis_driver.c
-index 61e8075..4c9b9cb 100644
---- a/src/sis_driver.c
-+++ b/src/sis_driver.c
-@@ -7344,7 +7344,11 @@ SISUnmapMem(ScrnInfoPtr pScrn)
-         if(pSiSEnt->MapCountIOBase) {
-           pSiSEnt->MapCountIOBase--;
-           if((pSiSEnt->MapCountIOBase == 0) || (pSiSEnt->forceUnmapIOBase)) {
-+#ifndef XSERVER_LIBPCIACCESS
-               xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiSEnt->IOBase, (pSiS->mmioSize * 1024));
-+#else
-+              pci_device_unmap_range(pSiS->PciInfo, pSiSEnt->IOBase, (pSiS->mmioSize * 1024));
-+#endif
-               pSiSEnt->IOBase = NULL;
-               pSiSEnt->MapCountIOBase = 0;
-               pSiSEnt->forceUnmapIOBase = FALSE;
-@@ -7355,7 +7359,11 @@ SISUnmapMem(ScrnInfoPtr pScrn)
-       if(pSiSEnt->MapCountIOBaseDense) {
-           pSiSEnt->MapCountIOBaseDense--;
-           if((pSiSEnt->MapCountIOBaseDense == 0) || (pSiSEnt->forceUnmapIOBaseDense)) {
-+#ifndef XSERVER_LIBPCIACCESS
-               xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiSEnt->IOBaseDense, (pSiS->mmioSize * 1024));
-+#else
-+              pci_device_unmap_range(pSiS->PciInfo, (pointer)pSiSEnt->IOBaseDense, (pSiS->mmioSize * 1024));
-+#endif
-               pSiSEnt->IOBaseDense = NULL;
-               pSiSEnt->MapCountIOBaseDense = 0;
-               pSiSEnt->forceUnmapIOBaseDense = FALSE;
-@@ -7366,7 +7374,11 @@ SISUnmapMem(ScrnInfoPtr pScrn)
-       if(pSiSEnt->MapCountFbBase) {
-           pSiSEnt->MapCountFbBase--;
-           if((pSiSEnt->MapCountFbBase == 0) || (pSiSEnt->forceUnmapFbBase)) {
-+#ifndef XSERVER_LIBPCIACCESS
-               xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiSEnt->RealFbBase, pSiS->FbMapSize);
-+#else
-+              pci_device_unmap_range(pSiS->PciInfo, (pointer)pSiSEnt->RealFbBase, pSiS->FbMapSize);
-+#endif
-               pSiSEnt->FbBase = pSiSEnt->RealFbBase = NULL;
-               pSiSEnt->MapCountFbBase = 0;
-               pSiSEnt->forceUnmapFbBase = FALSE;
-@@ -7376,13 +7388,25 @@ SISUnmapMem(ScrnInfoPtr pScrn)
-       }
-     } else {
- #endif
-+#ifndef XSERVER_LIBPCIACCESS
-       xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiS->IOBase, (pSiS->mmioSize * 1024));
-+#else
-+      pci_device_unmap_range(pSiS->PciInfo, (pointer)pSiS->IOBase, (pSiS->mmioSize * 1024));
-+#endif
-       pSiS->IOBase = NULL;
- #ifdef __alpha__
-+#ifndef XSERVER_LIBPCIACCESS
-       xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiS->IOBaseDense, (pSiS->mmioSize * 1024));
-+#else
-+      pci_device_unmap_range(pSiS->PciInfo, (pointer)pSiS->IOBaseDense, (pSiS->mmioSize * 1024));
-+#endif
-       pSiS->IOBaseDense = NULL;
- #endif
-+#ifndef XSERVER_LIBPCIACCESS
-       xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pSiS->RealFbBase, pSiS->FbMapSize);
-+#else
-+      pci_device_unmap_range(pSiS->PciInfo, (pointer)pSiS->RealFbBase, pSiS->FbMapSize);
-+#endif
-       pSiS->FbBase = pSiS->RealFbBase = NULL;
- #ifdef SISDUALHEAD
-     }
---
-cgit v0.9.0.2-2-gbebe
diff --git a/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis-0004-xf86Priv.patch b/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis-0004-xf86Priv.patch
deleted file mode 100644 (file)
index bf36b0d..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-From 7d4402786b758de3e6ce2641e15a39d612d5c518 Mon Sep 17 00:00:00 2001
-From: Adam Jackson <ajax@redhat.com>
-Date: Mon, 15 Oct 2012 23:11:30 +0000
-Subject: Stop including xf86Priv.h
-
-As the name might suggest, it's server-private.
-
-Signed-off-by: Adam Jackson <ajax@redhat.com>
----
-Fetch from:
-http://cgit.freedesktop.org/xorg/driver/xf86-video-sis/commit/?id=7d4402786b758de3e6ce2641e15a39d612d5c518
-
-Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
-
-diff --git a/src/sis.h b/src/sis.h
-index 46fca2a..20e6134 100644
---- a/src/sis.h
-+++ b/src/sis.h
-@@ -75,7 +75,6 @@
- #include "compiler.h"
- #include "xf86Pci.h"
--#include "xf86Priv.h"
- #include "xf86_OSproc.h"
- #if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 6
- #include "xf86Resources.h"
-diff --git a/src/sis_driver.c b/src/sis_driver.c
-index 46cfefd..cefe503 100644
---- a/src/sis_driver.c
-+++ b/src/sis_driver.c
-@@ -93,6 +93,10 @@
- #include "dri.h"
- #endif
-+#ifndef DEFAULT_DPI
-+#define DEFAULT_DPI 96
-+#endif
-+
- /*
-  * LookupWindow was removed with video abi 11.
-  */
---
-cgit v0.9.0.2-2-gbebe
diff --git a/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis-0005-hvdisplay.patch b/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis-0005-hvdisplay.patch
deleted file mode 100644 (file)
index 584d3f4..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-From 0a4336efaafac4c34d4287b5df586bbb418f7f76 Mon Sep 17 00:00:00 2001
-From: Alan Coopersmith <alan.coopersmith@oracle.com>
-Date: Sat, 26 Oct 2013 21:27:17 +0000
-Subject: Fix HDisplay/VDisplay typos
-
-Found by gcc -Wlogicalops:
-
-sis_driver.c: In function 'SiS_CheckModeCRT2':
-sis_driver.c:13754:5: warning: logical 'and' of mutually exclusive tests is always false [-Wlogical-op]
-sis_driver.c:13755:6: warning: logical 'and' of mutually exclusive tests is always false [-Wlogical-op]
-sis_driver.c:13756:6: warning: logical 'and' of mutually exclusive tests is always false [-Wlogical-op]
-sis_driver.c:13758:5: warning: logical 'and' of mutually exclusive tests is always false [-Wlogical-op]
-sis_driver.c:13759:6: warning: logical 'and' of mutually exclusive tests is always false [-Wlogical-op]
-
-Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
-Reviewed-by: Gaetan Nadon <memsize@videotron.ca>
----
-Fetch from:
-http://cgit.freedesktop.org/xorg/driver/xf86-video-sis/commit/?id=0a4336efaafac4c34d4287b5df586bbb418f7f76
-
-Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
-
-diff --git a/src/sis_driver.c b/src/sis_driver.c
-index cefe503..80b8d51 100644
---- a/src/sis_driver.c
-+++ b/src/sis_driver.c
-@@ -13751,12 +13751,12 @@ SiS_CheckModeCRT2(ScrnInfoPtr pScrn, DisplayModePtr mode, unsigned int VBFlags,
-       if( ((mode->HDisplay <= pSiS->LCDwidth) &&
-            (mode->VDisplay <= pSiS->LCDheight)) ||
-         ((pSiS->SiS_Pr->SiS_CustomT == CUT_PANEL848) &&
--         (((mode->HDisplay == 1360) && (mode->HDisplay == 768)) ||
--          ((mode->HDisplay == 1024) && (mode->HDisplay == 768)) ||
--          ((mode->HDisplay ==  800) && (mode->HDisplay == 600)))) ||
-+         (((mode->HDisplay == 1360) && (mode->VDisplay == 768)) ||
-+          ((mode->HDisplay == 1024) && (mode->VDisplay == 768)) ||
-+          ((mode->HDisplay ==  800) && (mode->VDisplay == 600)))) ||
-         ((pSiS->SiS_Pr->SiS_CustomT == CUT_PANEL856) &&
--         (((mode->HDisplay == 1024) && (mode->HDisplay == 768)) ||
--          ((mode->HDisplay ==  800) && (mode->HDisplay == 600)))) ) {
-+         (((mode->HDisplay == 1024) && (mode->VDisplay == 768)) ||
-+          ((mode->HDisplay ==  800) && (mode->VDisplay == 600)))) ) {
-        ModeIndex = SiS_GetModeID_LCD(pSiS->VGAEngine, VBFlags, mode->HDisplay, mode->VDisplay, i,
-                               pSiS->FSTN, pSiS->SiS_Pr->SiS_CustomT, pSiS->LCDwidth, pSiS->LCDheight,
---
-cgit v0.9.0.2-2-gbebe
diff --git a/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis-0006-fixwarnings.patch b/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis-0006-fixwarnings.patch
deleted file mode 100644 (file)
index 3598c9e..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-From 49796d6a3274adc0250ee07faa6bc63e41c98740 Mon Sep 17 00:00:00 2001
-From: Peter Hutterer <peter.hutterer@who-t.net>
-Date: Thu, 21 Nov 2013 22:21:18 +0000
-Subject: Fix format-security warnings
-
-sis_driver.c: In function 'SISErrorLog':
-sis_driver.c:432:5: error: format not a string literal and no format arguments [-Werror=format-security]
-     xf86DrvMsg(pScrn->scrnIndex, X_ERROR, str);
-     ^
-sis_driver.c:439:5: error: format not a string literal and no format arguments [-Werror=format-security]
-     xf86DrvMsg(pScrn->scrnIndex, X_ERROR, str);
-     ^
-sis_driver.c: In function 'SiSUpdateXineramaScreenInfo':
-sis_driver.c:1917:4: error: format not a string literal and no format arguments [-Werror=format-security]
-    xf86DrvMsg(pScrn1->scrnIndex, X_INFO, rectxine);
-    ^
-sis_driver.c:1924:8: error: format not a string literal and no format arguments [-Werror=format-security]
-        xf86DrvMsg(pScrn1->scrnIndex, X_INFO, rectxine);
-
-Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
----
-Fetch from:
-http://cgit.freedesktop.org/xorg/driver/xf86-video-sis/commit/?id=49796d6a3274adc0250ee07faa6bc63e41c98740
-
-Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
-
-diff --git a/src/sis_driver.c b/src/sis_driver.c
-index 80b8d51..bd9c4e1 100644
---- a/src/sis_driver.c
-+++ b/src/sis_driver.c
-@@ -429,14 +429,14 @@ SISErrorLog(ScrnInfoPtr pScrn, const char *format, ...)
-     static const char *str = "**************************************************\n";
-     va_start(ap, format);
--    xf86DrvMsg(pScrn->scrnIndex, X_ERROR, str);
-+    xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "%s", str);
-     xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
-       "                      ERROR:\n");
-     xf86VDrvMsgVerb(pScrn->scrnIndex, X_ERROR, 1, format, ap);
-     va_end(ap);
-     xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
-       "                  END OF MESSAGE\n");
--    xf86DrvMsg(pScrn->scrnIndex, X_ERROR, str);
-+    xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "%s", str);
- }
- static void
-@@ -1914,14 +1914,14 @@ SiSUpdateXineramaScreenInfo(ScrnInfoPtr pScrn1)
-        if(infochanged && !usenonrect) {
-         xf86DrvMsg(pScrn1->scrnIndex, X_INFO,
-                       "Virtual screen size does not match maximum display modes...\n");
--        xf86DrvMsg(pScrn1->scrnIndex, X_INFO, rectxine);
-+        xf86DrvMsg(pScrn1->scrnIndex, X_INFO, "%s", rectxine);
-        }
-     } else if(infochanged && usenonrect) {
-        usenonrect = FALSE;
-        xf86DrvMsg(pScrn1->scrnIndex, X_INFO,
-               "Only clone modes available for this virtual screen size...\n");
--       xf86DrvMsg(pScrn1->scrnIndex, X_INFO, rectxine);
-+       xf86DrvMsg(pScrn1->scrnIndex, X_INFO, "%s", rectxine);
-     }
-     if(pSiS->maxCRT1_X1) {            /* Means we have at least one non-clone mode */
---
-cgit v0.9.0.2-2-gbebe
diff --git a/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis-0007-xi.patch b/package/x11r7/xdriver_xf86-video-sis/xdriver_xf86-video-sis-0007-xi.patch
deleted file mode 100644 (file)
index 7905248..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-Fetch from:
-https://projects.archlinux.org/svntogit/packages.git/commit/trunk?h=packages/xf86-video-sis&id=7aaa7a9786ce5654df877311909244e0a6c42fd1
-
-Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
-
---- xf86-video-sis-0.10.7/src/sis_driver.c     2013-03-10 13:57:50.000000000 +0100
-+++ xf86-video-sis-0.10.7/src/sis_driver.c.new 2013-03-10 13:54:48.645203559 +0100
-@@ -9378,7 +9378,15 @@
-      }
-      if(doit) {
-       sigstate = xf86BlockSIGIO();
--#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 15
-+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 18
-+        {
-+            double dx = x, dy = y;
-+            miPointerSetPosition(inputInfo.pointer, Absolute, &dx, &dy,
-+                NULL, NULL);
-+            x = (int)dx;
-+            y = (int)dy;
-+        }
-+#elif GET_ABI_MAJOR(ABI_XINPUT_VERSION) >= 15
-         {
-             double dx = x, dy = y;
-             miPointerSetPosition(inputInfo.pointer, Absolute, &dx, &dy);
diff --git a/package/x11r7/xdriver_xf86-video-tdfx/0001-cross.patch b/package/x11r7/xdriver_xf86-video-tdfx/0001-cross.patch
new file mode 100644 (file)
index 0000000..e53591b
--- /dev/null
@@ -0,0 +1,24 @@
+--- xf86-video-tdfx-1.3.0/configure.ac.orig    2007-06-10 21:01:54.000000000 +0200
++++ xf86-video-tdfx-1.3.0/configure.ac 2007-06-10 21:02:06.000000000 +0200
+@@ -67,13 +67,20 @@
+ # Checks for header files.
+ AC_HEADER_STDC
+-if test "$DRI" != no; then
++if test "x$DRI" != xno; then
++      if test "$cross_compiling" = "no" ; then
+         AC_CHECK_FILE([${sdkdir}/dri.h],
+                       [have_dri_h="yes"], [have_dri_h="no"])
+         AC_CHECK_FILE([${sdkdir}/sarea.h],
+                       [have_sarea_h="yes"], [have_sarea_h="no"])
+         AC_CHECK_FILE([${sdkdir}/dristruct.h],
+                       [have_dristruct_h="yes"], [have_dristruct_h="no"])
++              AC_CHECK_HEADER
++      else
++              have_dri_h="yes"
++              have_sarea_h="yes"
++              have_dristruct_h="yes"
++      fi
+ fi
+ AC_MSG_CHECKING([whether to include DRI support])
diff --git a/package/x11r7/xdriver_xf86-video-tdfx/0002-mibstore.patch b/package/x11r7/xdriver_xf86-video-tdfx/0002-mibstore.patch
new file mode 100644 (file)
index 0000000..f156ea7
--- /dev/null
@@ -0,0 +1,36 @@
+From 10498d2730c651eb7a1890eb9e728269732e9dad Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax@redhat.com>
+Date: Tue, 25 Sep 2012 12:54:59 +0000
+Subject: Remove mibstore.h
+
+Signed-off-by: Adam Jackson <ajax@redhat.com>
+---
+Fetch from:
+http://cgit.freedesktop.org/xorg/driver/xf86-video-tdfx/commit/?id=10498d2730c651eb7a1890eb9e728269732e9dad
+
+Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
+diff --git a/src/tdfx_driver.c b/src/tdfx_driver.c
+index ddd5431..412da07 100644
+--- a/src/tdfx_driver.c
++++ b/src/tdfx_driver.c
+@@ -62,10 +62,6 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+ #include "compiler.h"
+-/* Drivers using the mi implementation of backing store need: */
+-
+-#include "mibstore.h"
+-
+ /* All drivers using the vgahw module need this */
+ /* This driver needs to be modified to not use vgaHW for multihead operation */
+ #include "vgaHW.h"
+@@ -2373,7 +2369,6 @@ TDFXScreenInit(SCREEN_INIT_ARGS_DECL) {
+     }
+   }
+-  miInitializeBackingStore(pScreen);
+   xf86SetBackingStore(pScreen);
+   xf86SetSilkenMouse(pScreen);
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/package/x11r7/xdriver_xf86-video-tdfx/xdriver_xf86-video-tdfx-0001-cross.patch b/package/x11r7/xdriver_xf86-video-tdfx/xdriver_xf86-video-tdfx-0001-cross.patch
deleted file mode 100644 (file)
index e53591b..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
---- xf86-video-tdfx-1.3.0/configure.ac.orig    2007-06-10 21:01:54.000000000 +0200
-+++ xf86-video-tdfx-1.3.0/configure.ac 2007-06-10 21:02:06.000000000 +0200
-@@ -67,13 +67,20 @@
- # Checks for header files.
- AC_HEADER_STDC
--if test "$DRI" != no; then
-+if test "x$DRI" != xno; then
-+      if test "$cross_compiling" = "no" ; then
-         AC_CHECK_FILE([${sdkdir}/dri.h],
-                       [have_dri_h="yes"], [have_dri_h="no"])
-         AC_CHECK_FILE([${sdkdir}/sarea.h],
-                       [have_sarea_h="yes"], [have_sarea_h="no"])
-         AC_CHECK_FILE([${sdkdir}/dristruct.h],
-                       [have_dristruct_h="yes"], [have_dristruct_h="no"])
-+              AC_CHECK_HEADER
-+      else
-+              have_dri_h="yes"
-+              have_sarea_h="yes"
-+              have_dristruct_h="yes"
-+      fi
- fi
- AC_MSG_CHECKING([whether to include DRI support])
diff --git a/package/x11r7/xdriver_xf86-video-tdfx/xdriver_xf86-video-tdfx-0002-mibstore.patch b/package/x11r7/xdriver_xf86-video-tdfx/xdriver_xf86-video-tdfx-0002-mibstore.patch
deleted file mode 100644 (file)
index f156ea7..0000000
+++ /dev/null
@@ -1,36 +0,0 @@
-From 10498d2730c651eb7a1890eb9e728269732e9dad Mon Sep 17 00:00:00 2001
-From: Adam Jackson <ajax@redhat.com>
-Date: Tue, 25 Sep 2012 12:54:59 +0000
-Subject: Remove mibstore.h
-
-Signed-off-by: Adam Jackson <ajax@redhat.com>
----
-Fetch from:
-http://cgit.freedesktop.org/xorg/driver/xf86-video-tdfx/commit/?id=10498d2730c651eb7a1890eb9e728269732e9dad
-
-Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
-diff --git a/src/tdfx_driver.c b/src/tdfx_driver.c
-index ddd5431..412da07 100644
---- a/src/tdfx_driver.c
-+++ b/src/tdfx_driver.c
-@@ -62,10 +62,6 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- #include "compiler.h"
--/* Drivers using the mi implementation of backing store need: */
--
--#include "mibstore.h"
--
- /* All drivers using the vgahw module need this */
- /* This driver needs to be modified to not use vgaHW for multihead operation */
- #include "vgaHW.h"
-@@ -2373,7 +2369,6 @@ TDFXScreenInit(SCREEN_INIT_ARGS_DECL) {
-     }
-   }
--  miInitializeBackingStore(pScreen);
-   xf86SetBackingStore(pScreen);
-   xf86SetSilkenMouse(pScreen);
---
-cgit v0.9.0.2-2-gbebe
diff --git a/package/x11r7/xdriver_xf86-video-tga/0001-mibstore.patch b/package/x11r7/xdriver_xf86-video-tga/0001-mibstore.patch
new file mode 100644 (file)
index 0000000..07bcd04
--- /dev/null
@@ -0,0 +1,47 @@
+From b7022db0559cd1b6cd3eb6b5abf6896a607b478d Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax@redhat.com>
+Date: Tue, 25 Sep 2012 12:55:00 +0000
+Subject: Remove mibstore.h
+
+Signed-off-by: Adam Jackson <ajax@redhat.com>
+---
+Fetch from:
+http://cgit.freedesktop.org/xorg/driver/xf86-video-tga/commit/?id=b7022db0559cd1b6cd3eb6b5abf6896a607b478d
+
+Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
+
+diff --git a/src/tga_accel.c b/src/tga_accel.c
+index 35af1a4..b414df5 100644
+--- a/src/tga_accel.c
++++ b/src/tga_accel.c
+@@ -37,7 +37,6 @@
+ #include "xf86cmap.h"
+ #include "mipointer.h"
+-#include "mibstore.h"
+ #include "miline.h"
+ #include "tga_regs.h"
+diff --git a/src/tga_driver.c b/src/tga_driver.c
+index dd4f3e6..90d2660 100644
+--- a/src/tga_driver.c
++++ b/src/tga_driver.c
+@@ -46,8 +46,6 @@
+ /* software cursor */
+ #include "mipointer.h"
+-/* backing store */
+-#include "mibstore.h"
+ /*  #include "mibank.h" */
+ /* colormap manipulation */
+@@ -1451,7 +1449,6 @@ TGAScreenInit(SCREEN_INIT_ARGS_DECL)
+     
+     fbPictureInit (pScreen, 0, 0);
+     
+-    miInitializeBackingStore(pScreen);
+     xf86SetBackingStore(pScreen);
+     xf86SetSilkenMouse(pScreen);
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/package/x11r7/xdriver_xf86-video-tga/xdriver_xf86-video-tga-0001-mibstore.patch b/package/x11r7/xdriver_xf86-video-tga/xdriver_xf86-video-tga-0001-mibstore.patch
deleted file mode 100644 (file)
index 07bcd04..0000000
+++ /dev/null
@@ -1,47 +0,0 @@
-From b7022db0559cd1b6cd3eb6b5abf6896a607b478d Mon Sep 17 00:00:00 2001
-From: Adam Jackson <ajax@redhat.com>
-Date: Tue, 25 Sep 2012 12:55:00 +0000
-Subject: Remove mibstore.h
-
-Signed-off-by: Adam Jackson <ajax@redhat.com>
----
-Fetch from:
-http://cgit.freedesktop.org/xorg/driver/xf86-video-tga/commit/?id=b7022db0559cd1b6cd3eb6b5abf6896a607b478d
-
-Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
-
-diff --git a/src/tga_accel.c b/src/tga_accel.c
-index 35af1a4..b414df5 100644
---- a/src/tga_accel.c
-+++ b/src/tga_accel.c
-@@ -37,7 +37,6 @@
- #include "xf86cmap.h"
- #include "mipointer.h"
--#include "mibstore.h"
- #include "miline.h"
- #include "tga_regs.h"
-diff --git a/src/tga_driver.c b/src/tga_driver.c
-index dd4f3e6..90d2660 100644
---- a/src/tga_driver.c
-+++ b/src/tga_driver.c
-@@ -46,8 +46,6 @@
- /* software cursor */
- #include "mipointer.h"
--/* backing store */
--#include "mibstore.h"
- /*  #include "mibank.h" */
- /* colormap manipulation */
-@@ -1451,7 +1449,6 @@ TGAScreenInit(SCREEN_INIT_ARGS_DECL)
-     
-     fbPictureInit (pScreen, 0, 0);
-     
--    miInitializeBackingStore(pScreen);
-     xf86SetBackingStore(pScreen);
-     xf86SetSilkenMouse(pScreen);
---
-cgit v0.9.0.2-2-gbebe
diff --git a/package/x11r7/xdriver_xf86-video-trident/0001-mibstore.patch b/package/x11r7/xdriver_xf86-video-trident/0001-mibstore.patch
new file mode 100644 (file)
index 0000000..efdd6ac
--- /dev/null
@@ -0,0 +1,34 @@
+From 30787294c837aefa8820b6f76f00fe30d4e54181 Mon Sep 17 00:00:00 2001
+From: Adam Jackson <ajax@redhat.com>
+Date: Tue, 25 Sep 2012 12:55:01 +0000
+Subject: Remove mibstore.h
+
+Signed-off-by: Adam Jackson <ajax@redhat.com>
+---
+Fetch from:
+http://cgit.freedesktop.org/xorg/driver/xf86-video-trident/commit/?id=30787294c837aefa8820b6f76f00fe30d4e54181
+
+Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
+
+diff --git a/src/trident_driver.c b/src/trident_driver.c
+index dc12b76..408c870 100644
+--- a/src/trident_driver.c
++++ b/src/trident_driver.c
+@@ -56,7 +56,6 @@
+ #include "mipointer.h"
+-#include "mibstore.h"
+ #include "shadow.h"
+ #include "trident.h"
+ #include "trident_regs.h"
+@@ -3037,7 +3036,6 @@ TRIDENTScreenInit(SCREEN_INIT_ARGS_DECL)
+       TridentAccelInit(pScreen);
+     }
+-    miInitializeBackingStore(pScreen);
+     xf86SetBackingStore(pScreen);
+     /* Initialise cursor functions */
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/package/x11r7/xdriver_xf86-video-trident/0002-xaa.patch b/package/x11r7/xdriver_xf86-video-trident/0002-xaa.patch
new file mode 100644 (file)
index 0000000..0750002
--- /dev/null
@@ -0,0 +1,39 @@
+From 48c15909691e28ad2c188a2978b1c8ef3d9d8760 Mon Sep 17 00:00:00 2001
+From: Timo Aaltonen <tjaalton@ubuntu.com>
+Date: Wed, 26 Sep 2012 08:01:26 +0000
+Subject: Fix loading the driver without XAA
+
+---
+Fetch from:
+http://cgit.freedesktop.org/xorg/driver/xf86-video-trident/commit/?id=48c15909691e28ad2c188a2978b1c8ef3d9d8760
+
+Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
+
+diff --git a/src/trident_dga.c b/src/trident_dga.c
+index 0263aa7..c4b5b9a 100644
+--- a/src/trident_dga.c
++++ b/src/trident_dga.c
+@@ -37,10 +37,10 @@
+ static Bool TRIDENT_OpenFramebuffer(ScrnInfoPtr, char **, unsigned char **, 
+                                       int *, int *, int *);
+ static Bool TRIDENT_SetMode(ScrnInfoPtr, DGAModePtr);
+-static void TRIDENT_Sync(ScrnInfoPtr);
+ static int  TRIDENT_GetViewport(ScrnInfoPtr);
+ static void TRIDENT_SetViewport(ScrnInfoPtr, int, int, int);
+ #ifdef HAVE_XAA_H
++static void TRIDENT_Sync(ScrnInfoPtr);
+ static void TRIDENT_FillRect(ScrnInfoPtr, int, int, int, int, unsigned long);
+ static void TRIDENT_BlitRect(ScrnInfoPtr, int, int, int, int, int, int);
+ #if 0
+@@ -56,8 +56,8 @@ DGAFunctionRec TRIDENTDGAFuncs = {
+    TRIDENT_SetMode,
+    TRIDENT_SetViewport,
+    TRIDENT_GetViewport,
+-   TRIDENT_Sync,
+ #ifdef HAVE_XAA_H
++   TRIDENT_Sync,
+    TRIDENT_FillRect,
+    TRIDENT_BlitRect,
+ #if 0
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/package/x11r7/xdriver_xf86-video-trident/xdriver_xf86-video-trident-0001-mibstore.patch b/package/x11r7/xdriver_xf86-video-trident/xdriver_xf86-video-trident-0001-mibstore.patch
deleted file mode 100644 (file)
index efdd6ac..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-From 30787294c837aefa8820b6f76f00fe30d4e54181 Mon Sep 17 00:00:00 2001
-From: Adam Jackson <ajax@redhat.com>
-Date: Tue, 25 Sep 2012 12:55:01 +0000
-Subject: Remove mibstore.h
-
-Signed-off-by: Adam Jackson <ajax@redhat.com>
----
-Fetch from:
-http://cgit.freedesktop.org/xorg/driver/xf86-video-trident/commit/?id=30787294c837aefa8820b6f76f00fe30d4e54181
-
-Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
-
-diff --git a/src/trident_driver.c b/src/trident_driver.c
-index dc12b76..408c870 100644
---- a/src/trident_driver.c
-+++ b/src/trident_driver.c
-@@ -56,7 +56,6 @@
- #include "mipointer.h"
--#include "mibstore.h"
- #include "shadow.h"
- #include "trident.h"
- #include "trident_regs.h"
-@@ -3037,7 +3036,6 @@ TRIDENTScreenInit(SCREEN_INIT_ARGS_DECL)
-       TridentAccelInit(pScreen);
-     }
--    miInitializeBackingStore(pScreen);
-     xf86SetBackingStore(pScreen);
-     /* Initialise cursor functions */
---
-cgit v0.9.0.2-2-gbebe
diff --git a/package/x11r7/xdriver_xf86-video-trident/xdriver_xf86-video-trident-0002-xaa.patch b/package/x11r7/xdriver_xf86-video-trident/xdriver_xf86-video-trident-0002-xaa.patch
deleted file mode 100644 (file)
index 0750002..0000000
+++ /dev/null
@@ -1,39 +0,0 @@
-From 48c15909691e28ad2c188a2978b1c8ef3d9d8760 Mon Sep 17 00:00:00 2001
-From: Timo Aaltonen <tjaalton@ubuntu.com>
-Date: Wed, 26 Sep 2012 08:01:26 +0000
-Subject: Fix loading the driver without XAA
-
----
-Fetch from:
-http://cgit.freedesktop.org/xorg/driver/xf86-video-trident/commit/?id=48c15909691e28ad2c188a2978b1c8ef3d9d8760
-
-Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
-
-diff --git a/src/trident_dga.c b/src/trident_dga.c
-index 0263aa7..c4b5b9a 100644
---- a/src/trident_dga.c
-+++ b/src/trident_dga.c
-@@ -37,10 +37,10 @@
- static Bool TRIDENT_OpenFramebuffer(ScrnInfoPtr, char **, unsigned char **, 
-                                       int *, int *, int *);
- static Bool TRIDENT_SetMode(ScrnInfoPtr, DGAModePtr);
--static void TRIDENT_Sync(ScrnInfoPtr);
- static int  TRIDENT_GetViewport(ScrnInfoPtr);
- static void TRIDENT_SetViewport(ScrnInfoPtr, int, int, int);
- #ifdef HAVE_XAA_H
-+static void TRIDENT_Sync(ScrnInfoPtr);
- static void TRIDENT_FillRect(ScrnInfoPtr, int, int, int, int, unsigned long);
- static void TRIDENT_BlitRect(ScrnInfoPtr, int, int, int, int, int, int);
- #if 0
-@@ -56,8 +56,8 @@ DGAFunctionRec TRIDENTDGAFuncs = {
-    TRIDENT_SetMode,
-    TRIDENT_SetViewport,
-    TRIDENT_GetViewport,
--   TRIDENT_Sync,
- #ifdef HAVE_XAA_H
-+   TRIDENT_Sync,
-    TRIDENT_FillRect,
-    TRIDENT_BlitRect,
- #if 0
---
-cgit v0.9.0.2-2-gbebe
diff --git a/package/x11r7/xlib_libXpm/0001-fork-check.patch b/package/x11r7/xlib_libXpm/0001-fork-check.patch
new file mode 100644 (file)
index 0000000..fb4fb7d
--- /dev/null
@@ -0,0 +1,21 @@
+Allow usage when fork() is not available
+
+When fork() is not available, we need to define NO_ZPIPE so that
+libXpm doesn't try to fork/exec to use a pipe to uncompress compressed
+.xpm files. There is obviously a loss of functionality, but loading
+uncompressed .xpm files should continue to work.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/configure.ac
+===================================================================
+--- a/configure.ac
++++ b/configure.ac
+@@ -22,6 +22,7 @@
+ # Checks for library functions
+ AC_CHECK_FUNCS([strlcat])
++AC_CHECK_FUNC([fork],[], AC_DEFINE(NO_ZPIPE))
+ # Obtain compiler/linker options for dependencies
+ PKG_CHECK_MODULES(XPM, xproto x11)
diff --git a/package/x11r7/xlib_libXpm/xlib_libXpm-01-fork-check.patch b/package/x11r7/xlib_libXpm/xlib_libXpm-01-fork-check.patch
deleted file mode 100644 (file)
index fb4fb7d..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-Allow usage when fork() is not available
-
-When fork() is not available, we need to define NO_ZPIPE so that
-libXpm doesn't try to fork/exec to use a pipe to uncompress compressed
-.xpm files. There is obviously a loss of functionality, but loading
-uncompressed .xpm files should continue to work.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/configure.ac
-===================================================================
---- a/configure.ac
-+++ b/configure.ac
-@@ -22,6 +22,7 @@
- # Checks for library functions
- AC_CHECK_FUNCS([strlcat])
-+AC_CHECK_FUNC([fork],[], AC_DEFINE(NO_ZPIPE))
- # Obtain compiler/linker options for dependencies
- PKG_CHECK_MODULES(XPM, xproto x11)
diff --git a/package/x11r7/xlib_libXt/0001-util-don-t-link-makestrs-with-target-cflags.patch b/package/x11r7/xlib_libXt/0001-util-don-t-link-makestrs-with-target-cflags.patch
new file mode 100644 (file)
index 0000000..692d03b
--- /dev/null
@@ -0,0 +1,50 @@
+From 3f064076c783914cafdff028db303681dae4291d Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Date: Thu, 15 Nov 2012 18:31:53 +0100
+Subject: [PATCH] libXt: util: don't link makestrs with target cflags
+
+The line:
+
+AM_CFLAGS = $(XT_CFLAGS)
+
+in util/Makefile.am is wrong because it adds target cflags to the
+compilation of makestrs, which is built for the build machine, which
+leads to build failures when cross-compiling.
+
+We also remove the inclusion of <X11/Xos.h> from makestrs.c, because
+it was the only non-standard header being included (and therefore
+possibly requiring special cflags), but it was in reality not useful
+at all to build makestrs.c.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ util/Makefile.am |    1 -
+ util/makestrs.c  |    1 -
+ 2 files changed, 2 deletions(-)
+
+diff --git a/util/Makefile.am b/util/Makefile.am
+index dedfa6b..cc6f3fc 100644
+--- a/util/Makefile.am
++++ b/util/Makefile.am
+@@ -10,7 +10,6 @@ EXTRA_DIST = \
+        StrDefs.ht \
+        string.list
+-AM_CFLAGS = $(XT_CFLAGS)
+ makestrs_SOURCES = makestrs.c
+diff --git a/util/makestrs.c b/util/makestrs.c
+index a52866a..00c861f 100644
+--- a/util/makestrs.c
++++ b/util/makestrs.c
+@@ -27,7 +27,6 @@ in this Software without prior written authorization from The Open Group.
+ /* Constructs string definitions */
+ #include <stdio.h>
+-#include <X11/Xos.h>
+ #include <stdlib.h>
+ #include <unistd.h>
+-- 
+1.7.9.5
diff --git a/package/x11r7/xlib_libXt/xlib_libXt-0001-util-don-t-link-makestrs-with-target-cflags.patch b/package/x11r7/xlib_libXt/xlib_libXt-0001-util-don-t-link-makestrs-with-target-cflags.patch
deleted file mode 100644 (file)
index 692d03b..0000000
+++ /dev/null
@@ -1,50 +0,0 @@
-From 3f064076c783914cafdff028db303681dae4291d Mon Sep 17 00:00:00 2001
-From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-Date: Thu, 15 Nov 2012 18:31:53 +0100
-Subject: [PATCH] libXt: util: don't link makestrs with target cflags
-
-The line:
-
-AM_CFLAGS = $(XT_CFLAGS)
-
-in util/Makefile.am is wrong because it adds target cflags to the
-compilation of makestrs, which is built for the build machine, which
-leads to build failures when cross-compiling.
-
-We also remove the inclusion of <X11/Xos.h> from makestrs.c, because
-it was the only non-standard header being included (and therefore
-possibly requiring special cflags), but it was in reality not useful
-at all to build makestrs.c.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
----
- util/Makefile.am |    1 -
- util/makestrs.c  |    1 -
- 2 files changed, 2 deletions(-)
-
-diff --git a/util/Makefile.am b/util/Makefile.am
-index dedfa6b..cc6f3fc 100644
---- a/util/Makefile.am
-+++ b/util/Makefile.am
-@@ -10,7 +10,6 @@ EXTRA_DIST = \
-        StrDefs.ht \
-        string.list
--AM_CFLAGS = $(XT_CFLAGS)
- makestrs_SOURCES = makestrs.c
-diff --git a/util/makestrs.c b/util/makestrs.c
-index a52866a..00c861f 100644
---- a/util/makestrs.c
-+++ b/util/makestrs.c
-@@ -27,7 +27,6 @@ in this Software without prior written authorization from The Open Group.
- /* Constructs string definitions */
- #include <stdio.h>
--#include <X11/Xos.h>
- #include <stdlib.h>
- #include <unistd.h>
--- 
-1.7.9.5
diff --git a/package/x11vnc/0001-ipv6.patch b/package/x11vnc/0001-ipv6.patch
new file mode 100644 (file)
index 0000000..89c2835
--- /dev/null
@@ -0,0 +1,25 @@
+[PATCH] fix build on uClibc without IPv6 support
+
+Some systems (like uClibc) defines AF_INET6 even when configured without
+IPv6 support, so don't use that to decide if IPv6 support should be enabled.
+
+Instead use the X11VNC_IPV6 define like elsewhere in the code.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ x11vnc/enc.h |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: x11vnc-0.9.13/x11vnc/enc.h
+===================================================================
+--- x11vnc-0.9.13.orig/x11vnc/enc.h
++++ x11vnc-0.9.13/x11vnc/enc.h
+@@ -1733,7 +1733,7 @@
+       }
+       try6:
+-#ifdef AF_INET6
++#if X11VNC_IPV6
+       if (!getenv("ULTRAVNC_DSM_HELPER_NOIPV6")) {
+               struct sockaddr_in6 sin;
+               int one = 1, sock = -1;
diff --git a/package/x11vnc/x11vnc-ipv6.patch b/package/x11vnc/x11vnc-ipv6.patch
deleted file mode 100644 (file)
index 89c2835..0000000
+++ /dev/null
@@ -1,25 +0,0 @@
-[PATCH] fix build on uClibc without IPv6 support
-
-Some systems (like uClibc) defines AF_INET6 even when configured without
-IPv6 support, so don't use that to decide if IPv6 support should be enabled.
-
-Instead use the X11VNC_IPV6 define like elsewhere in the code.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- x11vnc/enc.h |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Index: x11vnc-0.9.13/x11vnc/enc.h
-===================================================================
---- x11vnc-0.9.13.orig/x11vnc/enc.h
-+++ x11vnc-0.9.13/x11vnc/enc.h
-@@ -1733,7 +1733,7 @@
-       }
-       try6:
--#ifdef AF_INET6
-+#if X11VNC_IPV6
-       if (!getenv("ULTRAVNC_DSM_HELPER_NOIPV6")) {
-               struct sockaddr_in6 sin;
-               int one = 1, sock = -1;
diff --git a/package/xinetd/0001-ar.patch b/package/xinetd/0001-ar.patch
new file mode 100644 (file)
index 0000000..566f2f7
--- /dev/null
@@ -0,0 +1,74 @@
+This patch changes all of the hard-coded invocations of "ar" to $(AR), to
+support a cross-compilation toolchain.
+
+The content of this patch was copied from the OpenWrt project:
+https://dev.openwrt.org/browser/packages/net/xinetd/patches/001-ar.patch
+
+Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com>
+
+--- a/libs/src/misc/Makefile.in
++++ b/libs/src/misc/Makefile.in
+@@ -62,7 +62,7 @@
+ $(LIBNAME): $(OBJECTS)
+-      ar r $@ $?
++      $(AR) r $@ $?
+       $(RANLIB) $@
+ install: $(LIBNAME)
+--- a/libs/src/portable/Makefile.in
++++ b/libs/src/portable/Makefile.in
+@@ -57,7 +57,7 @@
+ $(LIBNAME): $(OBJECTS)
+-      ar r $@ $?
++      $(AR) r $@ $?
+       $(RANLIB) $@
+ install: $(LIBNAME)
+--- a/libs/src/pset/Makefile.in
++++ b/libs/src/pset/Makefile.in
+@@ -53,7 +53,7 @@
+       mv $(LIBNAME) $(LIBDIR)/optimized
+ $(LIBNAME): $(OBJECTS)
+-      ar r $@ $?
++      $(AR) r $@ $?
+       $(RANLIB) $@
+ install: $(LIBNAME)
+--- a/libs/src/sio/Makefile.in
++++ b/libs/src/sio/Makefile.in
+@@ -52,7 +52,7 @@
+       $(INSTALL) $(FMODE) $(LIBNAME) $(LIBDIR)/optimized
+ $(LIBNAME): $(OBJECTS)
+-      ar r $@ $?
++      $(AR) r $@ $?
+       $(RANLIB) $@
+ install: $(LIBNAME)
+--- a/libs/src/str/Makefile.in
++++ b/libs/src/str/Makefile.in
+@@ -63,7 +63,7 @@
+       $(INSTALL) $(FMODE) $(LIBNAME) $(LIBDIR)-O
+ $(LIBNAME): $(OBJECTS)
+-      ar r $@ $?
++      $(AR) r $@ $?
+       $(RANLIB) $@
+ LINT_IGNORE=possible pointer alignment|RCSid unused
+--- a/libs/src/xlog/Makefile.in
++++ b/libs/src/xlog/Makefile.in
+@@ -58,7 +58,7 @@
+       $(INSTALL) $(FMODE) $(LIBNAME) $(LIBDIR)/optimized
+ $(LIBNAME): $(OBJECTS)
+-      ar r $@ $?
++      $(AR) r $@ $?
+       $(RANLIB) $@
+ install: $(LIBNAME)
diff --git a/package/xinetd/0002-destdir.patch b/package/xinetd/0002-destdir.patch
new file mode 100644 (file)
index 0000000..7a323eb
--- /dev/null
@@ -0,0 +1,55 @@
+This patch adds $(DESTDIR) to xinetd's installation paths, to support 
+installation to a cross-compiled RFS area.
+
+The content of this patch was inspired by the OpenWrt project:
+https://dev.openwrt.org/browser/packages/net/xinetd/patches/002-destdir.patch
+
+Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com>
+
+diff -urN xinetd-2.3.15.ORIG/Makefile.in xinetd-2.3.15/Makefile.in
+--- xinetd-2.3.15.ORIG/Makefile.in     2007-09-20 13:01:52.000000000 -0400
++++ xinetd-2.3.15/Makefile.in  2012-06-18 10:20:00.540864388 -0400
+@@ -75,27 +75,27 @@
+ install: build
+       for i in $(DAEMONDIR) $(BINDIR) $(MANDIR)/man5 $(MANDIR)/man8 ; do \
+-         test -d $$i || mkdir -p $$i ; done
+-      $(INSTALL_CMD) -m 755 xinetd/xinetd $(DAEMONDIR)
+-      $(INSTALL_CMD) -m 755 xinetd/itox $(DAEMONDIR)
+-      $(INSTALL_CMD) -m 755 $(SRCDIR)/xinetd/xconv.pl $(DAEMONDIR)
+-      $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.conf.man $(MANDIR)/man5/xinetd.conf.5
+-      $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.log.man $(MANDIR)/man8/xinetd.log.8
+-      $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.man $(MANDIR)/man8/xinetd.8
+-      $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/itox.8 $(MANDIR)/man8/itox.8
+-      $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xconv.pl.8 $(MANDIR)/man8/xconv.pl.8
++         test -d $(DESTDIR)$$i || mkdir -p $(DESTDIR)$$i ; done
++      $(INSTALL_CMD) -m 755 xinetd/xinetd $(DESTDIR)$(DAEMONDIR)
++      $(INSTALL_CMD) -m 755 xinetd/itox $(DESTDIR)$(DAEMONDIR)
++      $(INSTALL_CMD) -m 755 $(SRCDIR)/xinetd/xconv.pl $(DESTDIR)$(DAEMONDIR)
++      $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.conf.man $(DESTDIR)$(MANDIR)/man5/xinetd.conf.5
++      $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.log.man $(DESTDIR)$(MANDIR)/man8/xinetd.log.8
++      $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.man $(DESTDIR)$(MANDIR)/man8/xinetd.8
++      $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/itox.8 $(DESTDIR)$(MANDIR)/man8/itox.8
++      $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xconv.pl.8 $(DESTDIR)$(MANDIR)/man8/xconv.pl.8
+       @echo "You must put your xinetd.conf in /etc/xinetd.conf"
+       @echo "There is a sample config file in xinetd/sample.conf and you can"
+       @echo "use xconv.pl to convert your old inetd.conf file to an xinetd format"
+ uninstall:
+-      rm -f $(DAEMONDIR)/xinetd
+-      rm -f $(DAEMONDIR)/itox
+-      rm -f $(DAEMONDIR)/xconv.pl
+-      rm -f $(MANDIR)/man5/xinetd.conf.5
+-      rm -f $(MANDIR)/man8/xinetd.log.8
+-      rm -f $(MANDIR)/man8/xinetd.8
+-      rm -f $(MANDIR)/man8/itox.8
++      rm -f $(DESTDIR)$(DAEMONDIR)/xinetd
++      rm -f $(DESTDIR)$(DAEMONDIR)/itox
++      rm -f $(DESTDIR)$(DAEMONDIR)/xconv.pl
++      rm -f $(DESTDIR)$(MANDIR)/man5/xinetd.conf.5
++      rm -f $(DESTDIR)$(MANDIR)/man8/xinetd.log.8
++      rm -f $(DESTDIR)$(MANDIR)/man8/xinetd.8
++      rm -f $(DESTDIR)$(MANDIR)/man8/itox.8
+  
+ distclean: clean
+       rm -f config.cache config.log Makefile config.status xinetd/itox
diff --git a/package/xinetd/0003-rpc-fix.patch b/package/xinetd/0003-rpc-fix.patch
new file mode 100644 (file)
index 0000000..6c32b72
--- /dev/null
@@ -0,0 +1,26 @@
+This patch fixes compiling xinetd without RPC support.
+
+The content of this patch was copied from the OpenWrt project:
+https://dev.openwrt.org/browser/packages/net/xinetd/patches/003-rpc_fix.patch
+
+Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com>
+
+--- a/xinetd/confparse.c
++++ b/xinetd/confparse.c
+@@ -745,7 +745,7 @@ static status_e check_entry( struct serv
+          }
+    }
+-/* #ifndef NO_RPC */
++#ifndef NO_RPC
+ #if defined(HAVE_RPC_RPCENT_H) || defined(HAVE_NETDB_H)
+    if ( SC_IS_RPC( scp ) && !SC_IS_UNLISTED( scp ) )
+    {
+@@ -759,6 +759,7 @@ static status_e check_entry( struct serv
+       SC_RPCDATA( scp )->rd_program_number = rep->r_number ;
+    }
+    else
++#endif
+ #endif   /* ! NO_RPC */
+    {
+        if ( !SC_IS_UNLISTED( scp ) ) 
diff --git a/package/xinetd/0004-configure-rlim_t.patch b/package/xinetd/0004-configure-rlim_t.patch
new file mode 100644 (file)
index 0000000..e1cb48a
--- /dev/null
@@ -0,0 +1,18 @@
+Have the configure script look for rlim_t in <sys/resource.h>
+
+That's where POSIX says it should be. Some libcs will include its
+definition via <sys/types.h> as well, but musl doesn't.
+
+Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
+
+--- xinetd-2.3.15.orig/configure       2007-09-20 16:58:27.000000000 +0200
++++ xinetd-2.3.15/configure    2014-09-16 17:20:22.787665449 +0200
+@@ -7909,7 +7909,7 @@
+ cat confdefs.h >>conftest.$ac_ext
+ cat >>conftest.$ac_ext <<_ACEOF
+ /* end confdefs.h.  */
+-#include <sys/types.h>
++#include <sys/resource.h>
+ #if STDC_HEADERS
+ #include <stdlib.h>
+ #endif
diff --git a/package/xinetd/xinetd-001-ar.patch b/package/xinetd/xinetd-001-ar.patch
deleted file mode 100644 (file)
index 566f2f7..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-This patch changes all of the hard-coded invocations of "ar" to $(AR), to
-support a cross-compilation toolchain.
-
-The content of this patch was copied from the OpenWrt project:
-https://dev.openwrt.org/browser/packages/net/xinetd/patches/001-ar.patch
-
-Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com>
-
---- a/libs/src/misc/Makefile.in
-+++ b/libs/src/misc/Makefile.in
-@@ -62,7 +62,7 @@
- $(LIBNAME): $(OBJECTS)
--      ar r $@ $?
-+      $(AR) r $@ $?
-       $(RANLIB) $@
- install: $(LIBNAME)
---- a/libs/src/portable/Makefile.in
-+++ b/libs/src/portable/Makefile.in
-@@ -57,7 +57,7 @@
- $(LIBNAME): $(OBJECTS)
--      ar r $@ $?
-+      $(AR) r $@ $?
-       $(RANLIB) $@
- install: $(LIBNAME)
---- a/libs/src/pset/Makefile.in
-+++ b/libs/src/pset/Makefile.in
-@@ -53,7 +53,7 @@
-       mv $(LIBNAME) $(LIBDIR)/optimized
- $(LIBNAME): $(OBJECTS)
--      ar r $@ $?
-+      $(AR) r $@ $?
-       $(RANLIB) $@
- install: $(LIBNAME)
---- a/libs/src/sio/Makefile.in
-+++ b/libs/src/sio/Makefile.in
-@@ -52,7 +52,7 @@
-       $(INSTALL) $(FMODE) $(LIBNAME) $(LIBDIR)/optimized
- $(LIBNAME): $(OBJECTS)
--      ar r $@ $?
-+      $(AR) r $@ $?
-       $(RANLIB) $@
- install: $(LIBNAME)
---- a/libs/src/str/Makefile.in
-+++ b/libs/src/str/Makefile.in
-@@ -63,7 +63,7 @@
-       $(INSTALL) $(FMODE) $(LIBNAME) $(LIBDIR)-O
- $(LIBNAME): $(OBJECTS)
--      ar r $@ $?
-+      $(AR) r $@ $?
-       $(RANLIB) $@
- LINT_IGNORE=possible pointer alignment|RCSid unused
---- a/libs/src/xlog/Makefile.in
-+++ b/libs/src/xlog/Makefile.in
-@@ -58,7 +58,7 @@
-       $(INSTALL) $(FMODE) $(LIBNAME) $(LIBDIR)/optimized
- $(LIBNAME): $(OBJECTS)
--      ar r $@ $?
-+      $(AR) r $@ $?
-       $(RANLIB) $@
- install: $(LIBNAME)
diff --git a/package/xinetd/xinetd-002-destdir.patch b/package/xinetd/xinetd-002-destdir.patch
deleted file mode 100644 (file)
index 7a323eb..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-This patch adds $(DESTDIR) to xinetd's installation paths, to support 
-installation to a cross-compiled RFS area.
-
-The content of this patch was inspired by the OpenWrt project:
-https://dev.openwrt.org/browser/packages/net/xinetd/patches/002-destdir.patch
-
-Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com>
-
-diff -urN xinetd-2.3.15.ORIG/Makefile.in xinetd-2.3.15/Makefile.in
---- xinetd-2.3.15.ORIG/Makefile.in     2007-09-20 13:01:52.000000000 -0400
-+++ xinetd-2.3.15/Makefile.in  2012-06-18 10:20:00.540864388 -0400
-@@ -75,27 +75,27 @@
- install: build
-       for i in $(DAEMONDIR) $(BINDIR) $(MANDIR)/man5 $(MANDIR)/man8 ; do \
--         test -d $$i || mkdir -p $$i ; done
--      $(INSTALL_CMD) -m 755 xinetd/xinetd $(DAEMONDIR)
--      $(INSTALL_CMD) -m 755 xinetd/itox $(DAEMONDIR)
--      $(INSTALL_CMD) -m 755 $(SRCDIR)/xinetd/xconv.pl $(DAEMONDIR)
--      $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.conf.man $(MANDIR)/man5/xinetd.conf.5
--      $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.log.man $(MANDIR)/man8/xinetd.log.8
--      $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.man $(MANDIR)/man8/xinetd.8
--      $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/itox.8 $(MANDIR)/man8/itox.8
--      $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xconv.pl.8 $(MANDIR)/man8/xconv.pl.8
-+         test -d $(DESTDIR)$$i || mkdir -p $(DESTDIR)$$i ; done
-+      $(INSTALL_CMD) -m 755 xinetd/xinetd $(DESTDIR)$(DAEMONDIR)
-+      $(INSTALL_CMD) -m 755 xinetd/itox $(DESTDIR)$(DAEMONDIR)
-+      $(INSTALL_CMD) -m 755 $(SRCDIR)/xinetd/xconv.pl $(DESTDIR)$(DAEMONDIR)
-+      $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.conf.man $(DESTDIR)$(MANDIR)/man5/xinetd.conf.5
-+      $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.log.man $(DESTDIR)$(MANDIR)/man8/xinetd.log.8
-+      $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xinetd.man $(DESTDIR)$(MANDIR)/man8/xinetd.8
-+      $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/itox.8 $(DESTDIR)$(MANDIR)/man8/itox.8
-+      $(INSTALL_CMD) -m 644 $(SRCDIR)/xinetd/xconv.pl.8 $(DESTDIR)$(MANDIR)/man8/xconv.pl.8
-       @echo "You must put your xinetd.conf in /etc/xinetd.conf"
-       @echo "There is a sample config file in xinetd/sample.conf and you can"
-       @echo "use xconv.pl to convert your old inetd.conf file to an xinetd format"
- uninstall:
--      rm -f $(DAEMONDIR)/xinetd
--      rm -f $(DAEMONDIR)/itox
--      rm -f $(DAEMONDIR)/xconv.pl
--      rm -f $(MANDIR)/man5/xinetd.conf.5
--      rm -f $(MANDIR)/man8/xinetd.log.8
--      rm -f $(MANDIR)/man8/xinetd.8
--      rm -f $(MANDIR)/man8/itox.8
-+      rm -f $(DESTDIR)$(DAEMONDIR)/xinetd
-+      rm -f $(DESTDIR)$(DAEMONDIR)/itox
-+      rm -f $(DESTDIR)$(DAEMONDIR)/xconv.pl
-+      rm -f $(DESTDIR)$(MANDIR)/man5/xinetd.conf.5
-+      rm -f $(DESTDIR)$(MANDIR)/man8/xinetd.log.8
-+      rm -f $(DESTDIR)$(MANDIR)/man8/xinetd.8
-+      rm -f $(DESTDIR)$(MANDIR)/man8/itox.8
-  
- distclean: clean
-       rm -f config.cache config.log Makefile config.status xinetd/itox
diff --git a/package/xinetd/xinetd-003-rpc-fix.patch b/package/xinetd/xinetd-003-rpc-fix.patch
deleted file mode 100644 (file)
index 6c32b72..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-This patch fixes compiling xinetd without RPC support.
-
-The content of this patch was copied from the OpenWrt project:
-https://dev.openwrt.org/browser/packages/net/xinetd/patches/003-rpc_fix.patch
-
-Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com>
-
---- a/xinetd/confparse.c
-+++ b/xinetd/confparse.c
-@@ -745,7 +745,7 @@ static status_e check_entry( struct serv
-          }
-    }
--/* #ifndef NO_RPC */
-+#ifndef NO_RPC
- #if defined(HAVE_RPC_RPCENT_H) || defined(HAVE_NETDB_H)
-    if ( SC_IS_RPC( scp ) && !SC_IS_UNLISTED( scp ) )
-    {
-@@ -759,6 +759,7 @@ static status_e check_entry( struct serv
-       SC_RPCDATA( scp )->rd_program_number = rep->r_number ;
-    }
-    else
-+#endif
- #endif   /* ! NO_RPC */
-    {
-        if ( !SC_IS_UNLISTED( scp ) ) 
diff --git a/package/xinetd/xinetd-004-configure-rlim_t.patch b/package/xinetd/xinetd-004-configure-rlim_t.patch
deleted file mode 100644 (file)
index e1cb48a..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-Have the configure script look for rlim_t in <sys/resource.h>
-
-That's where POSIX says it should be. Some libcs will include its
-definition via <sys/types.h> as well, but musl doesn't.
-
-Signed-off-by: Maarten ter Huurne <maarten@treewalker.org>
-
---- xinetd-2.3.15.orig/configure       2007-09-20 16:58:27.000000000 +0200
-+++ xinetd-2.3.15/configure    2014-09-16 17:20:22.787665449 +0200
-@@ -7909,7 +7909,7 @@
- cat confdefs.h >>conftest.$ac_ext
- cat >>conftest.$ac_ext <<_ACEOF
- /* end confdefs.h.  */
--#include <sys/types.h>
-+#include <sys/resource.h>
- #if STDC_HEADERS
- #include <stdlib.h>
- #endif
diff --git a/package/xl2tp/0001-legacy.patch b/package/xl2tp/0001-legacy.patch
new file mode 100644 (file)
index 0000000..5279fd7
--- /dev/null
@@ -0,0 +1,17 @@
+Replace SUSV3-specific functions index, bcopy, bzero and bcmp by their
+POSIX variants.
+
+--- l2tpd-0.70-pre20031121.oorig/osport.h      2004-07-08 22:47:52.000000000 +0200
++++ l2tpd-0.70-pre20031121/osport.h    2006-12-28 15:32:50.000000000 +0100
+@@ -37,4 +37,11 @@
+ #endif /* defined(SOLARIS) */
++#if defined __UCLIBC__ && !defined UCLIBC_SUSV3_LEGACY_MACROS
++# define index(x, y)        strchr(x, y)
++# define bcopy(S1, S2, LEN) ((void)memmove(S2, S1, LEN))
++# define bzero(S1, LEN)     ((void)memset(S1,  0, LEN))
++# define bcmp(S1,S2,LEN)    ((memcmp(S2, S1, LEN)==0)?0:1)
++#endif /* defined __UCLIBC__ && !defined UCLIBC_SUSV3_LEGACY_MACROS */
++
+ #endif /* _OSPORT_H_ */
diff --git a/package/xl2tp/xl2tp-legacy.patch b/package/xl2tp/xl2tp-legacy.patch
deleted file mode 100644 (file)
index 5279fd7..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-Replace SUSV3-specific functions index, bcopy, bzero and bcmp by their
-POSIX variants.
-
---- l2tpd-0.70-pre20031121.oorig/osport.h      2004-07-08 22:47:52.000000000 +0200
-+++ l2tpd-0.70-pre20031121/osport.h    2006-12-28 15:32:50.000000000 +0100
-@@ -37,4 +37,11 @@
- #endif /* defined(SOLARIS) */
-+#if defined __UCLIBC__ && !defined UCLIBC_SUSV3_LEGACY_MACROS
-+# define index(x, y)        strchr(x, y)
-+# define bcopy(S1, S2, LEN) ((void)memmove(S2, S1, LEN))
-+# define bzero(S1, LEN)     ((void)memset(S1,  0, LEN))
-+# define bcmp(S1,S2,LEN)    ((memcmp(S2, S1, LEN)==0)?0:1)
-+#endif /* defined __UCLIBC__ && !defined UCLIBC_SUSV3_LEGACY_MACROS */
-+
- #endif /* _OSPORT_H_ */
diff --git a/package/xscreensaver/0001-fix-cross-compile-ansi-c-bailout.patch b/package/xscreensaver/0001-fix-cross-compile-ansi-c-bailout.patch
new file mode 100644 (file)
index 0000000..4d05f03
--- /dev/null
@@ -0,0 +1,29 @@
+The configure bails out when cross-compiling, because it is over-cautious
+about ANSI support in the C compiler. Work around this by disabling the
+bail-out code.
+
+Signed-off-by: Simon Dawson <spdawson@gmail.com>
+
+diff -Nurp a/configure b/configure
+--- a/configure        2013-07-16 10:23:32.000000000 +0100
++++ b/configure        2013-09-22 14:50:07.186953454 +0100
+@@ -3537,9 +3537,7 @@ $as_echo "Solaris: adding -D__EXTENSIONS
+   { $as_echo "$as_me:$LINENO: checking whether the compiler works on ANSI C" >&5
+ $as_echo_n "checking whether the compiler works on ANSI C... " >&6; }
+   if test "$cross_compiling" = yes; then
+-  { { $as_echo "$as_me:$LINENO: error: Couldn't build even a trivial ANSI C program: check CC." >&5
+-$as_echo "$as_me: error: Couldn't build even a trivial ANSI C program: check CC." >&2;}
+-   { (exit 1); exit 1; }; }
++  :
+ else
+   cat >conftest.$ac_ext <<_ACEOF
+ /* confdefs.h.  */
+@@ -8616,7 +8614,7 @@ fi
+ $as_echo "$ac_cv_xpointer" >&6; }
+   if test "$ac_cv_xpointer" != yes; then
+    cat >>confdefs.h <<\_ACEOF
+-#define XPointer char*
++/* #define XPointer char* */
+ _ACEOF
+   fi
diff --git a/package/xscreensaver/0002-fix-minixpm-build-problem.patch b/package/xscreensaver/0002-fix-minixpm-build-problem.patch
new file mode 100644 (file)
index 0000000..842fb20
--- /dev/null
@@ -0,0 +1,134 @@
+Fix compile and link errors related to the minixpm code.
+
+Signed-off-by: Simon Dawson <spdawson@gmail.com>
+
+diff -Nurp a/hacks/Makefile.in b/hacks/Makefile.in
+--- a/hacks/Makefile.in        2013-07-16 10:23:32.000000000 +0100
++++ b/hacks/Makefile.in        2013-09-22 18:47:56.389238980 +0100
+@@ -73,17 +73,22 @@ UTIL_SRCS  = $(UTILS_SRC)/alpha.c $(UTILS
+                 $(UTILS_SRC)/minixpm.c \
+                 $(UTILS_SRC)/yarandom.c $(UTILS_SRC)/erase.c \
+                 $(UTILS_SRC)/xshm.c $(UTILS_SRC)/xdbe.c \
+-                $(UTILS_SRC)/textclient.c
++                $(UTILS_SRC)/colorbars.c \
++                $(UTILS_SRC)/fade.c \
++                $(UTILS_SRC)/textclient.c \
++                $(UTILS_SRC)/overlay.c
+ UTIL_OBJS     = $(UTILS_BIN)/alpha.o $(UTILS_BIN)/colors.o \
+                 $(UTILS_BIN)/grabclient.o \
+                 $(UTILS_BIN)/hsv.o $(UTILS_BIN)/resources.o \
+                 $(UTILS_BIN)/spline.o $(UTILS_BIN)/usleep.o \
+                 $(UTILS_BIN)/visual.o $(UTILS_BIN)/logo.o \
+-                $(UTILS_SRC)/minixpm.c \
++                $(UTILS_BIN)/minixpm.o \
+                 $(UTILS_BIN)/yarandom.o $(UTILS_BIN)/erase.o \
+                 $(UTILS_BIN)/xshm.o $(UTILS_BIN)/xdbe.o \
+                 $(UTILS_BIN)/colorbars.o \
+-                $(UTILS_SRC)/textclient.o
++                $(UTILS_BIN)/fade.o \
++                $(UTILS_BIN)/textclient.o \
++                $(UTILS_BIN)/overlay.o
+ SRCS          = attraction.c blitspin.c bouboule.c braid.c bubbles.c \
+                 bubbles-default.c decayscreen.c deco.c drift.c flag.c \
+@@ -559,11 +564,11 @@ xscreensaver-sgigl: xscreensaver-sgigl.c
+ attraction:   attraction.o    $(HACK_OBJS) $(COL) $(SPL)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(SPL) $(HACK_LIBS)
+-blitspin:     blitspin.o      $(HACK_OBJS) $(GRAB) $(XPM)
+-      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(XPM) $(XPM_LIBS)
++blitspin:     blitspin.o      $(HACK_OBJS) $(GRAB) $(XPM) $(MINIXPM)
++      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(XPM) $(MINIXPM) $(XPM_LIBS)
+-bubbles:      bubbles.o       $(HACK_OBJS) bubbles-default.o $(XPM)
+-      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) bubbles-default.o $(XPM) $(XPM_LIBS)
++bubbles:      bubbles.o       $(HACK_OBJS) bubbles-default.o $(XPM) $(MINIXPM)
++      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) bubbles-default.o $(XPM) $(MINIXPM) $(XPM_LIBS)
+ decayscreen:  decayscreen.o   $(HACK_OBJS) $(GRAB)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(HACK_LIBS)
+@@ -604,8 +609,8 @@ moire:             moire.o         $(HACK_OBJS) $(COL) $(S
+ moire2:               moire2.o        $(HACK_OBJS) $(COL) $(DBE)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(DBE) $(HACK_LIBS)
+-noseguy:      noseguy.o       $(HACK_OBJS) $(XPM) $(TEXT)
+-      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(XPM) $(TEXT) $(XPM_LIBS) $(TEXT_LIBS)
++noseguy:      noseguy.o       $(HACK_OBJS) $(XPM) $(TEXT) $(MINIXPM)
++      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(XPM) $(TEXT) $(MINIXPM) $(XPM_LIBS) $(TEXT_LIBS)
+ pedal:                pedal.o         $(HACK_OBJS) $(HSV) $(ERASE)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HSV) $(ERASE) $(HACK_LIBS)
+@@ -658,14 +663,14 @@ interference:  interference.o    $(HACK_OBJ
+ truchet:       truchet.o      $(HACK_OBJS) $(COL)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
+-bsod:         bsod.o          $(HACK_OBJS) $(GRAB) $(APPLE2) $(XPM)
+-      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(APPLE2) $(XPM) $(XPM_LIBS)
++bsod:         bsod.o          $(HACK_OBJS) $(GRAB) $(APPLE2) $(XPM) $(MINIXPM)
++      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(APPLE2) $(XPM) $(MINIXPM) $(XPM_LIBS)
+ apple2:               apple2.o apple2-main.o  $(HACK_OBJS) $(ATV) $(GRAB) $(TEXT)
+       $(CC_HACK) -o $@ $@.o   apple2-main.o $(HACK_OBJS) $(ATV) $(GRAB) $(TEXT) $(XPM_LIBS) $(TEXT_LIBS)
+-xanalogtv:    xanalogtv.o     $(HACK_OBJS) $(ATV) $(GRAB) $(XPM)
+-      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(ATV) $(GRAB) $(XPM) $(XPM_LIBS) $(HACK_LIBS)
++xanalogtv:    xanalogtv.o     $(HACK_OBJS) $(ATV) $(GRAB) $(XPM) $(MINIXPM)
++      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(ATV) $(GRAB) $(XPM) $(MINIXPM) $(XPM_LIBS) $(HACK_LIBS)
+ distort:      distort.o       $(HACK_OBJS) $(GRAB) $(SHM)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(SHM) $(HACK_LIBS)
+@@ -688,8 +693,8 @@ compass:   compass.o       $(HACK_OBJS) $(DBE)
+ squiral:      squiral.o       $(HACK_OBJS) $(COL)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
+-xflame:               xflame.o        $(HACK_OBJS) $(SHM) $(XPM)
+-      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(SHM) $(XPM) $(XPM_LIBS)
++xflame:               xflame.o        $(HACK_OBJS) $(SHM) $(XPM) $(MINIXPM)
++      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(SHM) $(XPM) $(MINIXPM) $(XPM_LIBS)
+ wander:               wander.o        $(HACK_OBJS) $(COL) $(ERASE)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(ERASE) $(HACK_LIBS)
+@@ -703,8 +708,8 @@ critical:  critical.o      $(HACK_OBJS) $(COL)
+ phosphor:     phosphor.o      $(HACK_OBJS) $(TEXT) $(COL)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(TEXT) $(COL) $(HACK_LIBS) $(TEXT_LIBS)
+-xmatrix:      xmatrix.o       $(HACK_OBJS) $(TEXT) $(XPM)
+-      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(TEXT) $(XPM) $(XPM_LIBS) $(TEXT_LIBS)
++xmatrix:      xmatrix.o       $(HACK_OBJS) $(TEXT) $(XPM) $(MINIXPM)
++      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(TEXT) $(XPM) $(MINIXPM) $(XPM_LIBS) $(TEXT_LIBS)
+ petri:                petri.o         $(HACK_OBJS) $(COL) $(SPL)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(SPL) $(HACK_LIBS)
+@@ -787,8 +792,8 @@ cloudlife: cloudlife.o     $(HACK_OBJS) $(CO
+ fontglide:    fontglide.o     $(HACK_OBJS) $(DBE) $(TEXT)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(DBE) $(TEXT) $(HACK_LIBS) $(TEXT_LIBS)
+-pong:         pong.o  $(HACK_OBJS) $(ATV) $(GRAB) $(XPM)
+-      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(ATV) $(GRAB) $(XPM) $(XPM_LIBS) $(HACK_LIBS)
++pong:         pong.o  $(HACK_OBJS) $(ATV) $(GRAB) $(XPM) $(MINIXPM)
++      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(ATV) $(GRAB) $(XPM) $(MINIXPM) $(XPM_LIBS) $(HACK_LIBS)
+ wormhole:     wormhole.o      $(HACK_OBJS)
+       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HACK_LIBS)
+@@ -856,8 +861,8 @@ braid:             braid.o         $(XLOCK_OBJS) $(ERASE)
+ drift:                drift.o         $(XLOCK_OBJS) $(ERASE)
+       $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(ERASE) $(HACK_LIBS)
+-flag:         flag.o          $(XLOCK_OBJS) $(XPM)
+-      $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(XPM) $(XPM_LIBS)
++flag:         flag.o          $(XLOCK_OBJS) $(XPM) $(MINIXPM)
++      $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(XPM) $(MINIXPM) $(XPM_LIBS)
+ forest:               forest.o        $(XLOCK_OBJS) $(ERASE)
+       $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(ERASE) $(HACK_LIBS)
+@@ -959,8 +964,8 @@ thornbird: thornbird.o     $(XLOCK_OBJS)
+       $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
+ PACOBJS=pacman_ai.o pacman_level.o
+-pacman:               pacman.o        $(PACOBJS) $(XLOCK_OBJS) $(XPM)
+-      $(CC_HACK) -o $@ $@.o   $(PACOBJS) $(XLOCK_OBJS) $(XPM) $(XPM_LIBS)
++pacman:               pacman.o        $(PACOBJS) $(XLOCK_OBJS) $(XPM) $(MINIXPM)
++      $(CC_HACK) -o $@ $@.o   $(PACOBJS) $(XLOCK_OBJS) $(XPM) $(MINIXPM) $(XPM_LIBS)
+ fiberlamp:    fiberlamp.o     $(XLOCK_OBJS)
+       $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
diff --git a/package/xscreensaver/0003-driver-fix-linking-with-lintl.patch b/package/xscreensaver/0003-driver-fix-linking-with-lintl.patch
new file mode 100644 (file)
index 0000000..51551c6
--- /dev/null
@@ -0,0 +1,35 @@
+From 2336fa7901733a434c38637bf39f3e282e78e1c1 Mon Sep 17 00:00:00 2001
+From: Romain Naour <romain.naour@openwide.fr>
+Date: Wed, 27 Aug 2014 22:44:21 +0200
+Subject: [PATCH 1/1] driver: fix linking with lintl
+
+The libintl is missing during xscreensaver build if
+glib2 was build with gettext.
+
+xscreensaver.o: In function `main':
+undefined reference to `libintl_bindtextdomain'
+undefined reference to `libintl_textdomain'
+
+Backport a patch applied in 5.28
+
+Signed-off-by: Romain Naour <romain.naour@openwide.fr>
+---
+ driver/Makefile.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/driver/Makefile.in b/driver/Makefile.in
+index af077ca..ce7055c 100644
+--- a/driver/Makefile.in
++++ b/driver/Makefile.in
+@@ -776,7 +776,7 @@ XScreenSaver_Xm_ad.h: XScreenSaver-Xm.ad
+ # The executables linked in this directory.
+ #
+ xscreensaver: $(SAVER_OBJS)
+-      $(CC) $(LDFLAGS) -o $@ $(SAVER_OBJS) $(SAVER_LIBS)
++      $(CC) $(LDFLAGS) -o $@ $(SAVER_OBJS) $(SAVER_LIBS) $(INTL_LIBS)
+ xscreensaver-command: $(CMD_OBJS)
+       $(CC) $(LDFLAGS) -o $@ $(CMD_OBJS) $(CMD_LIBS)
+-- 
+1.9.3
+
diff --git a/package/xscreensaver/xscreensaver-0001-fix-cross-compile-ansi-c-bailout.patch b/package/xscreensaver/xscreensaver-0001-fix-cross-compile-ansi-c-bailout.patch
deleted file mode 100644 (file)
index 4d05f03..0000000
+++ /dev/null
@@ -1,29 +0,0 @@
-The configure bails out when cross-compiling, because it is over-cautious
-about ANSI support in the C compiler. Work around this by disabling the
-bail-out code.
-
-Signed-off-by: Simon Dawson <spdawson@gmail.com>
-
-diff -Nurp a/configure b/configure
---- a/configure        2013-07-16 10:23:32.000000000 +0100
-+++ b/configure        2013-09-22 14:50:07.186953454 +0100
-@@ -3537,9 +3537,7 @@ $as_echo "Solaris: adding -D__EXTENSIONS
-   { $as_echo "$as_me:$LINENO: checking whether the compiler works on ANSI C" >&5
- $as_echo_n "checking whether the compiler works on ANSI C... " >&6; }
-   if test "$cross_compiling" = yes; then
--  { { $as_echo "$as_me:$LINENO: error: Couldn't build even a trivial ANSI C program: check CC." >&5
--$as_echo "$as_me: error: Couldn't build even a trivial ANSI C program: check CC." >&2;}
--   { (exit 1); exit 1; }; }
-+  :
- else
-   cat >conftest.$ac_ext <<_ACEOF
- /* confdefs.h.  */
-@@ -8616,7 +8614,7 @@ fi
- $as_echo "$ac_cv_xpointer" >&6; }
-   if test "$ac_cv_xpointer" != yes; then
-    cat >>confdefs.h <<\_ACEOF
--#define XPointer char*
-+/* #define XPointer char* */
- _ACEOF
-   fi
diff --git a/package/xscreensaver/xscreensaver-0002-fix-minixpm-build-problem.patch b/package/xscreensaver/xscreensaver-0002-fix-minixpm-build-problem.patch
deleted file mode 100644 (file)
index 842fb20..0000000
+++ /dev/null
@@ -1,134 +0,0 @@
-Fix compile and link errors related to the minixpm code.
-
-Signed-off-by: Simon Dawson <spdawson@gmail.com>
-
-diff -Nurp a/hacks/Makefile.in b/hacks/Makefile.in
---- a/hacks/Makefile.in        2013-07-16 10:23:32.000000000 +0100
-+++ b/hacks/Makefile.in        2013-09-22 18:47:56.389238980 +0100
-@@ -73,17 +73,22 @@ UTIL_SRCS  = $(UTILS_SRC)/alpha.c $(UTILS
-                 $(UTILS_SRC)/minixpm.c \
-                 $(UTILS_SRC)/yarandom.c $(UTILS_SRC)/erase.c \
-                 $(UTILS_SRC)/xshm.c $(UTILS_SRC)/xdbe.c \
--                $(UTILS_SRC)/textclient.c
-+                $(UTILS_SRC)/colorbars.c \
-+                $(UTILS_SRC)/fade.c \
-+                $(UTILS_SRC)/textclient.c \
-+                $(UTILS_SRC)/overlay.c
- UTIL_OBJS     = $(UTILS_BIN)/alpha.o $(UTILS_BIN)/colors.o \
-                 $(UTILS_BIN)/grabclient.o \
-                 $(UTILS_BIN)/hsv.o $(UTILS_BIN)/resources.o \
-                 $(UTILS_BIN)/spline.o $(UTILS_BIN)/usleep.o \
-                 $(UTILS_BIN)/visual.o $(UTILS_BIN)/logo.o \
--                $(UTILS_SRC)/minixpm.c \
-+                $(UTILS_BIN)/minixpm.o \
-                 $(UTILS_BIN)/yarandom.o $(UTILS_BIN)/erase.o \
-                 $(UTILS_BIN)/xshm.o $(UTILS_BIN)/xdbe.o \
-                 $(UTILS_BIN)/colorbars.o \
--                $(UTILS_SRC)/textclient.o
-+                $(UTILS_BIN)/fade.o \
-+                $(UTILS_BIN)/textclient.o \
-+                $(UTILS_BIN)/overlay.o
- SRCS          = attraction.c blitspin.c bouboule.c braid.c bubbles.c \
-                 bubbles-default.c decayscreen.c deco.c drift.c flag.c \
-@@ -559,11 +564,11 @@ xscreensaver-sgigl: xscreensaver-sgigl.c
- attraction:   attraction.o    $(HACK_OBJS) $(COL) $(SPL)
-       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(SPL) $(HACK_LIBS)
--blitspin:     blitspin.o      $(HACK_OBJS) $(GRAB) $(XPM)
--      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(XPM) $(XPM_LIBS)
-+blitspin:     blitspin.o      $(HACK_OBJS) $(GRAB) $(XPM) $(MINIXPM)
-+      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(XPM) $(MINIXPM) $(XPM_LIBS)
--bubbles:      bubbles.o       $(HACK_OBJS) bubbles-default.o $(XPM)
--      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) bubbles-default.o $(XPM) $(XPM_LIBS)
-+bubbles:      bubbles.o       $(HACK_OBJS) bubbles-default.o $(XPM) $(MINIXPM)
-+      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) bubbles-default.o $(XPM) $(MINIXPM) $(XPM_LIBS)
- decayscreen:  decayscreen.o   $(HACK_OBJS) $(GRAB)
-       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(HACK_LIBS)
-@@ -604,8 +609,8 @@ moire:             moire.o         $(HACK_OBJS) $(COL) $(S
- moire2:               moire2.o        $(HACK_OBJS) $(COL) $(DBE)
-       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(DBE) $(HACK_LIBS)
--noseguy:      noseguy.o       $(HACK_OBJS) $(XPM) $(TEXT)
--      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(XPM) $(TEXT) $(XPM_LIBS) $(TEXT_LIBS)
-+noseguy:      noseguy.o       $(HACK_OBJS) $(XPM) $(TEXT) $(MINIXPM)
-+      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(XPM) $(TEXT) $(MINIXPM) $(XPM_LIBS) $(TEXT_LIBS)
- pedal:                pedal.o         $(HACK_OBJS) $(HSV) $(ERASE)
-       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HSV) $(ERASE) $(HACK_LIBS)
-@@ -658,14 +663,14 @@ interference:  interference.o    $(HACK_OBJ
- truchet:       truchet.o      $(HACK_OBJS) $(COL)
-       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
--bsod:         bsod.o          $(HACK_OBJS) $(GRAB) $(APPLE2) $(XPM)
--      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(APPLE2) $(XPM) $(XPM_LIBS)
-+bsod:         bsod.o          $(HACK_OBJS) $(GRAB) $(APPLE2) $(XPM) $(MINIXPM)
-+      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(APPLE2) $(XPM) $(MINIXPM) $(XPM_LIBS)
- apple2:               apple2.o apple2-main.o  $(HACK_OBJS) $(ATV) $(GRAB) $(TEXT)
-       $(CC_HACK) -o $@ $@.o   apple2-main.o $(HACK_OBJS) $(ATV) $(GRAB) $(TEXT) $(XPM_LIBS) $(TEXT_LIBS)
--xanalogtv:    xanalogtv.o     $(HACK_OBJS) $(ATV) $(GRAB) $(XPM)
--      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(ATV) $(GRAB) $(XPM) $(XPM_LIBS) $(HACK_LIBS)
-+xanalogtv:    xanalogtv.o     $(HACK_OBJS) $(ATV) $(GRAB) $(XPM) $(MINIXPM)
-+      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(ATV) $(GRAB) $(XPM) $(MINIXPM) $(XPM_LIBS) $(HACK_LIBS)
- distort:      distort.o       $(HACK_OBJS) $(GRAB) $(SHM)
-       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(GRAB) $(SHM) $(HACK_LIBS)
-@@ -688,8 +693,8 @@ compass:   compass.o       $(HACK_OBJS) $(DBE)
- squiral:      squiral.o       $(HACK_OBJS) $(COL)
-       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(HACK_LIBS)
--xflame:               xflame.o        $(HACK_OBJS) $(SHM) $(XPM)
--      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(SHM) $(XPM) $(XPM_LIBS)
-+xflame:               xflame.o        $(HACK_OBJS) $(SHM) $(XPM) $(MINIXPM)
-+      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(SHM) $(XPM) $(MINIXPM) $(XPM_LIBS)
- wander:               wander.o        $(HACK_OBJS) $(COL) $(ERASE)
-       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(ERASE) $(HACK_LIBS)
-@@ -703,8 +708,8 @@ critical:  critical.o      $(HACK_OBJS) $(COL)
- phosphor:     phosphor.o      $(HACK_OBJS) $(TEXT) $(COL)
-       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(TEXT) $(COL) $(HACK_LIBS) $(TEXT_LIBS)
--xmatrix:      xmatrix.o       $(HACK_OBJS) $(TEXT) $(XPM)
--      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(TEXT) $(XPM) $(XPM_LIBS) $(TEXT_LIBS)
-+xmatrix:      xmatrix.o       $(HACK_OBJS) $(TEXT) $(XPM) $(MINIXPM)
-+      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(TEXT) $(XPM) $(MINIXPM) $(XPM_LIBS) $(TEXT_LIBS)
- petri:                petri.o         $(HACK_OBJS) $(COL) $(SPL)
-       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(COL) $(SPL) $(HACK_LIBS)
-@@ -787,8 +792,8 @@ cloudlife: cloudlife.o     $(HACK_OBJS) $(CO
- fontglide:    fontglide.o     $(HACK_OBJS) $(DBE) $(TEXT)
-       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(DBE) $(TEXT) $(HACK_LIBS) $(TEXT_LIBS)
--pong:         pong.o  $(HACK_OBJS) $(ATV) $(GRAB) $(XPM)
--      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(ATV) $(GRAB) $(XPM) $(XPM_LIBS) $(HACK_LIBS)
-+pong:         pong.o  $(HACK_OBJS) $(ATV) $(GRAB) $(XPM) $(MINIXPM)
-+      $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(ATV) $(GRAB) $(XPM) $(MINIXPM) $(XPM_LIBS) $(HACK_LIBS)
- wormhole:     wormhole.o      $(HACK_OBJS)
-       $(CC_HACK) -o $@ $@.o   $(HACK_OBJS) $(HACK_LIBS)
-@@ -856,8 +861,8 @@ braid:             braid.o         $(XLOCK_OBJS) $(ERASE)
- drift:                drift.o         $(XLOCK_OBJS) $(ERASE)
-       $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(ERASE) $(HACK_LIBS)
--flag:         flag.o          $(XLOCK_OBJS) $(XPM)
--      $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(XPM) $(XPM_LIBS)
-+flag:         flag.o          $(XLOCK_OBJS) $(XPM) $(MINIXPM)
-+      $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(XPM) $(MINIXPM) $(XPM_LIBS)
- forest:               forest.o        $(XLOCK_OBJS) $(ERASE)
-       $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(ERASE) $(HACK_LIBS)
-@@ -959,8 +964,8 @@ thornbird: thornbird.o     $(XLOCK_OBJS)
-       $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
- PACOBJS=pacman_ai.o pacman_level.o
--pacman:               pacman.o        $(PACOBJS) $(XLOCK_OBJS) $(XPM)
--      $(CC_HACK) -o $@ $@.o   $(PACOBJS) $(XLOCK_OBJS) $(XPM) $(XPM_LIBS)
-+pacman:               pacman.o        $(PACOBJS) $(XLOCK_OBJS) $(XPM) $(MINIXPM)
-+      $(CC_HACK) -o $@ $@.o   $(PACOBJS) $(XLOCK_OBJS) $(XPM) $(MINIXPM) $(XPM_LIBS)
- fiberlamp:    fiberlamp.o     $(XLOCK_OBJS)
-       $(CC_HACK) -o $@ $@.o   $(XLOCK_OBJS) $(HACK_LIBS)
diff --git a/package/xscreensaver/xscreensaver-0003-driver-fix-linking-with-lintl.patch b/package/xscreensaver/xscreensaver-0003-driver-fix-linking-with-lintl.patch
deleted file mode 100644 (file)
index 51551c6..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-From 2336fa7901733a434c38637bf39f3e282e78e1c1 Mon Sep 17 00:00:00 2001
-From: Romain Naour <romain.naour@openwide.fr>
-Date: Wed, 27 Aug 2014 22:44:21 +0200
-Subject: [PATCH 1/1] driver: fix linking with lintl
-
-The libintl is missing during xscreensaver build if
-glib2 was build with gettext.
-
-xscreensaver.o: In function `main':
-undefined reference to `libintl_bindtextdomain'
-undefined reference to `libintl_textdomain'
-
-Backport a patch applied in 5.28
-
-Signed-off-by: Romain Naour <romain.naour@openwide.fr>
----
- driver/Makefile.in | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/driver/Makefile.in b/driver/Makefile.in
-index af077ca..ce7055c 100644
---- a/driver/Makefile.in
-+++ b/driver/Makefile.in
-@@ -776,7 +776,7 @@ XScreenSaver_Xm_ad.h: XScreenSaver-Xm.ad
- # The executables linked in this directory.
- #
- xscreensaver: $(SAVER_OBJS)
--      $(CC) $(LDFLAGS) -o $@ $(SAVER_OBJS) $(SAVER_LIBS)
-+      $(CC) $(LDFLAGS) -o $@ $(SAVER_OBJS) $(SAVER_LIBS) $(INTL_LIBS)
- xscreensaver-command: $(CMD_OBJS)
-       $(CC) $(LDFLAGS) -o $@ $(CMD_OBJS) $(CMD_LIBS)
--- 
-1.9.3
-
diff --git a/package/xvkbd/0001-makefile.patch b/package/xvkbd/0001-makefile.patch
new file mode 100644 (file)
index 0000000..a8f6577
--- /dev/null
@@ -0,0 +1,2400 @@
+--- a/Makefile 2008-03-04 06:14:55.425005441 -0500
++++ b/Makefile 2008-03-05 08:40:50.000000000 -0500
+@@ -0,0 +1,2397 @@
++# Makefile generated by imake - do not edit!
++# $Xorg: imake.c,v 1.6 2001/02/09 02:03:15 xorgcvs Exp $
++
++# ----------------------------------------------------------------------
++# Makefile generated from "Imake.tmpl" and <Imakefile>
++# $Xorg: Imake.tmpl,v 1.4 2000/08/17 19:41:46 cpqbld Exp $
++# $XdotOrg: util/cf/Imake.tmpl,v 1.17 2006/04/15 15:55:25 herrb Exp $
++#
++#
++#
++#
++# $XFree86: xc/config/cf/Imake.tmpl,v 3.155 2003/12/24 18:58:41 dickey Exp $
++# ----------------------------------------------------------------------
++
++all::
++
++.SUFFIXES: .i
++
++# $XdotOrg: util/cf/Imake.cf,v 1.12 2005/11/08 06:33:24 jkj Exp $
++# $Xorg: Imake.cf,v 1.4 2000/08/17 19:41:45 cpqbld Exp $
++
++# $XFree86: xc/config/cf/Imake.cf,v 3.88 2003/12/16 21:30:21 herrb Exp $
++
++# Keep cpp from replacing path elements containing i486/i586/i686
++
++# -----------------------------------------------------------------------
++# site-specific configuration parameters that need to come before
++# the platform-specific parameters - edit site.def to change
++
++# site:  $TOG: site.sample /main/r64_final/1 1998/02/05 16:28:49 kaleb $
++
++# site:  $XFree86: xc/config/cf/site.def,v 3.24 2000/06/25 20:17:29 dawes Exp $
++
++# $XFree86: xc/config/cf/xf86site.def,v 3.186 2003/06/25 18:06:22 eich Exp $
++
++# ----------------------------------------------------------------------
++# platform-specific configuration parameters - edit linux.cf to change
++
++# $XdotOrg: util/cf/linux.cf,v 1.31 2005/10/21 19:10:27 ajax Exp $
++# platform:  $Xorg: linux.cf,v 1.3 2000/08/17 19:41:47 cpqbld Exp $
++
++# platform:  $XFree86: xc/config/cf/linux.cf,v 3.220 2003/12/30 22:38:33 tsi Exp $
++
++# operating system:  Linux 2.6.23.8-63.fc8 i686 [ELF] (2.6.23)
++# libc:       (6.7.0)
++# binutils:   (217)
++
++# $Xorg: lnxLib.rules,v 1.3 2000/08/17 19:41:47 cpqbld Exp $
++# $XFree86: xc/config/cf/lnxLib.rules,v 3.52 2003/10/31 20:49:03 herrb Exp $
++
++# $XdotOrg: util/cf/xorg.cf,v 1.53 2005/10/03 16:08:44 alanc Exp $
++
++# $Xorg: xfree86.cf,v 1.4 2000/08/17 19:41:49 cpqbld Exp $
++
++XORG_VERSION_CURRENT = (((6) * 10000000) + ((8) * 100000) + ((99) * 1000) + 903)
++RELEASE_VERSION = RELEASE-1
++
++AFB_DEFS = -DUSE_AFB
++
++DRIVERSDKDIR = $(USRLIBDIR)/Server
++DRIVERSDKMODULEDIR = $(USRLIBDIR)/Server/modules
++DRIVERSDKINCLUDEDIR = $(USRLIBDIR)/Server/include
++
++       XF86SRC = $(SERVERSRC)/hw/xfree86
++    XF86COMSRC = $(XF86SRC)/common
++ XF86PARSERSRC = $(XF86SRC)/parser
++     XF86OSSRC = $(XF86SRC)/os-support
++ XF86DRIVERSRC = $(XF86SRC)/drivers
++     DRIVERSRC = $(XF86DRIVERSRC)
++
++        XFREE86DOCDIR = $(DOCDIR)
++      XFREE86PSDOCDIR = $(DOCPSDIR)
++     XFREE86PDFDOCDIR = $(DOCPDFDIR)
++    XFREE86HTMLDOCDIR = $(DOCHTMLDIR)
++XFREE86JAPANESEDOCDIR = $(DOCDIR)/Japanese
++
++# $Xorg: xf86.rules,v 1.3 2000/08/17 19:41:48 cpqbld Exp $
++
++# $XFree86: xc/config/cf/xf86.rules,v 3.34tsi Exp $
++
++# ----------------------------------------------------------------------
++# site-specific configuration parameters that go after
++# the platform-specific parameters - edit site.def to change
++
++# site:  $TOG: site.sample /main/r64_final/1 1998/02/05 16:28:49 kaleb $
++
++# site:  $XFree86: xc/config/cf/site.def,v 3.24 2000/06/25 20:17:29 dawes Exp $
++
++# ---------------------------------------------------------------------
++# Imake rules for building libraries, programs, scripts, and data files
++# rules:  $Xorg: Imake.rules,v 1.3 2000/08/17 19:41:46 cpqbld Exp $
++# rules:  $XdotOrg: util/cf/Imake.rules,v 1.11 2005/11/08 06:33:24 jkj Exp $
++#
++#
++#
++#
++# rules:  $XFree86: xc/config/cf/Imake.rules,v 3.128 2003/11/15 03:25:17 dawes Exp $
++
++.PHONY: all interfaces install install.man install.lib install.sdk    depend includes cleandir
++
++ _NULLCMD_ = @ echo -n
++
++X_BYTE_ORDER = X_LITTLE_ENDIAN
++
++GLIDE2INCDIR =
++
++GLIDE3INCDIR =
++
++GLIDE3LIBNAME =
++
++TKLIBNAME =
++
++TKLIBDIR =
++
++TCLLIBNAME =
++
++TCLIBDIR =
++
++          PATHSEP = /
++            SHELL = /bin/sh -e
++
++              TOP = .
++      CURRENT_DIR = .
++
++            IMAKE = imake
++           DEPEND = gccmakedep
++        MKDIRHIER = mkdir -p
++          REVPATH = revpath
++    EXPORTLISTGEN =
++             RMAN = RmanCmd
++     RMANBASENAME = rman
++      RMANOPTIONS = RmanOptions
++        CONFIGSRC = $(TOP)/config
++         IMAKESRC = $(CONFIGSRC)/imake
++        DEPENDSRC = $(CONFIGSRC)/util
++
++          INCROOT = /usr/include
++        USRLIBDIR = /usr/lib
++           VARDIR = /var
++        VARLIBDIR = $(VARDIR)/lib
++  SYSTEMUSRLIBDIR = /usr/lib
++  SYSTEMUSRINCDIR = /usr/include
++         SHLIBDIR = /usr/lib
++       LINTLIBDIR = $(USRLIBDIR)/lint
++          MANPATH = /usr/share/man
++    MANSOURCEPATH = $(MANPATH)/man
++           MANDIR = $(MANSOURCEPATH)1
++        LIBMANDIR = $(MANSOURCEPATH)3
++       FILEMANDIR = $(MANSOURCEPATH)5
++       MISCMANDIR = $(MANSOURCEPATH)$(MISCMANSUFFIX)
++     DRIVERMANDIR = $(MANSOURCEPATH)$(DRIVERMANSUFFIX)
++     LOGDIRECTORY = $(VARDIR)/log
++
++        VARRUNDIR = $(VARDIR)/run
++
++         VARDBDIR = $(VARDIR)/lib
++
++               AR = ar clq
++
++# Nice try but useless: make will inherit BOOTSTRAPCFLAGS
++# from  top Makefile
++  BOOTSTRAPCFLAGS =
++
++               CC = gcc -m32
++               AS = gcc -m32 -c -x assembler
++
++.SUFFIXES: .cc
++
++              CXX = c++ -m32
++
++          CXXFILT = c++filt
++
++           CXXLIB = -lstdc++
++
++    CXXDEBUGFLAGS = -O2 -fno-strength-reduce -fno-strict-aliasing
++CXXDEPENDINCLUDES =
++ CXXEXTRA_DEFINES =
++CXXEXTRA_INCLUDES =
++   CXXSTD_DEFINES = -Dlinux -D__i386__ -D_POSIX_C_SOURCE=199309L                              -D_POSIX_SOURCE -D_XOPEN_SOURCE                                 -D_BSD_SOURCE -D_SVID_SOURCE                                 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64                                                                  $(CXXPROJECT_DEFINES)
++       CXXOPTIONS =
++      CXXINCLUDES = $(INCLUDES) $(TOP_INCLUDES) $(CXXEXTRA_INCLUDES)
++       CXXDEFINES = $(CXXINCLUDES) $(CXXSTD_DEFINES) $(THREADS_CXXDEFINES) $(DEFINES) $(CXXEXTRA_DEFINES)
++         CXXFLAGS = $(CXXDEBUGFLAGS) $(CXXOPTIONS) $(THREADS_CXXFLAGS) $(CXXDEFINES)
++
++         COMPRESS = compress
++          GZIPCMD = gzip
++
++              CPP = cpp $(STD_CPP_DEFINES)
++           RAWCPP = cpp -undef $(STD_CPP_OPTIONS)
++    PREPROCESSCMD = gcc -m32 -E $(STD_CPP_DEFINES)
++
++          INSTALL = install
++     INSTALLFLAGS = -c
++
++               LD = gcc -m32 -nostdlib
++
++              LEX = flex -l
++               M4 = m4
++          M4FLAGS =
++           LEXLIB = -lfl
++             YACC = bison -y
++           CCYACC = bison -y
++
++             LINT = lint
++
++      LINTLIBFLAG = -C
++         LINTOPTS = -axz
++               LN = ln -s
++             MAKE = make
++               MV = mv -f
++               CP = cp
++
++           RANLIB = ranlib
++
++  RANLIBINSTFLAGS =
++
++               RM = rm -f
++             PERL = perl
++         PERLOPTS =
++     PERLENVSETUP = env LC_ALL=C
++        MANSUFFIX = 1x
++     LIBMANSUFFIX = 3x
++    FILEMANSUFFIX = 5x
++    MISCMANSUFFIX = 7
++  DRIVERMANSUFFIX = 4
++   ADMINMANSUFFIX = 8
++     MANSRCSUFFIX = man
++     MANNEWSUFFIX = _man
++          MANDEFS = -D__apploaddir__=$(XAPPLOADDIR) -D__appmansuffix__=$(MANSUFFIX) -D__filemansuffix__=$(FILEMANSUFFIX) -D__libmansuffix__=$(LIBMANSUFFIX) -D__miscmansuffix__=$(MISCMANSUFFIX) -D__drivermansuffix__=$(DRIVERMANSUFFIX) -D__adminmansuffix__=$(ADMINMANSUFFIX) -D__projectroot__=$(PROJECTROOT) -D__xconfigfile__=$(XCONFIGFILE) -D__xconfigdir__=$(XCONFIGDIR) -D__xlogfile__=$(XLOGFILE) -D__xservername__=$(XSERVERNAME) $(XORGMANDEFS) $(VENDORMANDEFS)
++
++   COMPRESSMANCMD = gzip -n
++
++            TROFF = groff -Tps
++            NROFF = nroff
++
++         MSMACROS = -ms
++        MANMACROS = -man
++              TBL = tbl
++              EQN = eqn
++             NEQN = neqn
++              COL = col
++         COLFLAGS = -b
++
++            MODCC = gcc -m32
++
++           MODCPP = cpp
++        MODCFLAGS = $(CFLAGS)
++            MODAS = gcc -m32 -c -x assembler
++       MODASFLAGS =
++
++            MODLD = gcc -m32 -nostdlib
++
++       MODLDFLAGS =
++MODLDCOMBINEFLAGS = -r
++            MODAR = ar clq
++
++        MODRANLIB = ranlib
++
++     STD_INCLUDES =
++  STD_CPP_OPTIONS = -traditional
++  STD_CPP_DEFINES = -traditional -Dlinux -D__i386__ -D_POSIX_C_SOURCE=199309L                                 -D_POSIX_SOURCE -D_XOPEN_SOURCE                                 -D_BSD_SOURCE -D_SVID_SOURCE                                 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64                                                                  $(PROJECT_DEFINES)
++      STD_DEFINES = -Dlinux -D__i386__ -D_POSIX_C_SOURCE=199309L                              -D_POSIX_SOURCE -D_XOPEN_SOURCE                                 -D_BSD_SOURCE -D_SVID_SOURCE                                 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64                                                                  $(PROJECT_DEFINES)
++ EXTRA_LOAD_FLAGS =
++  EXTRA_LDOPTIONS =
++  EXTRA_LIBRARIES =
++             TAGS = ctags
++
++   PARALLELMFLAGS =
++
++    SHAREDCODEDEF =
++         SHLIBDEF =
++
++     SHLIBLDFLAGS = -shared $(SHLIBGLOBALSFLAGS)
++
++         NOSTDLIB = -nostdlib
++     POSTNOSTDLIB = -Wl,-Bstatic -lgcc -Wl,-Bdynamic
++
++         PICFLAGS = -fPIC
++
++      CXXPICFLAGS = -fPIC
++
++    PROTO_DEFINES = -DFUNCPROTO=15 -DNARROWPROTO
++
++     INSTPGMFLAGS =
++
++     INSTBINFLAGS = -m 0755
++     INSTUIDFLAGS = -m 4711
++     INSTLIBFLAGS = -m 0644
++     INSTINCFLAGS = -m 0444
++     INSTMANFLAGS = -m 0444
++     INSTDATFLAGS = -m 0444
++    INSTKMEMFLAGS = -m 4711
++
++      PROJECTROOT = /usr
++
++      CDEBUGFLAGS = -O2 -fno-strength-reduce -fno-strict-aliasing
++        CCOPTIONS =
++
++      ALLINCLUDES = $(INCLUDES) $(EXTRA_INCLUDES) $(TOP_INCLUDES) $(INSTALLED_INCLUDES) $(STD_INCLUDES)
++       ALLDEFINES = $(ALLINCLUDES) $(STD_DEFINES) $(PROTO_DEFINES) $(THREADS_DEFINES) $(MODULE_DEFINES) $(DEFINES) $(EXTRA_DEFINES)
++           CFLAGS = $(CDEBUGFLAGS) $(CCOPTIONS) $(THREADS_CFLAGS) $(MODULE_CFLAGS) $(ALLDEFINES)
++        LINTFLAGS = $(LINTOPTS) -DLINT $(ALLDEFINES) $(DEPEND_DEFINES)
++         LDPRELIB = -L$(USRLIBDIR) $(INSTALLED_LIBS)
++        LDPOSTLIB =
++        LDOPTIONS = $(CDEBUGFLAGS) $(CCOPTIONS)  $(EXTRA_LDOPTIONS) $(THREADS_LDFLAGS) $(LOCAL_LDFLAGS) $(LDPRELIBS)
++     CXXLDOPTIONS = $(CXXDEBUGFLAGS) $(CXXOPTIONS) $(EXTRA_LDOPTIONS) $(THREADS_CXXLDFLAGS) $(LOCAL_LDFLAGS) $(LDPRELIBS)
++
++           LDLIBS = $(LDPOSTLIBS) $(THREADS_LIBS) $(SYS_LIBRARIES) $(EXTRA_LIBRARIES)
++
++           CCLINK = $(CC)
++
++          CXXLINK = $(CXX)
++
++     LDSTRIPFLAGS = -x
++   LDCOMBINEFLAGS = -r
++      DEPENDFLAGS =
++   DEPEND_DEFINES =
++
++# Not sure this belongs here
++         TKLIBDIR =
++         TKINCDIR =
++        TKLIBNAME =
++        TKLIBRARY = -L$(TKLIBDIR) -l$(TKLIBNAME)
++        TCLLIBDIR =
++        TCLINCDIR =
++       TCLLIBNAME =
++       TCLLIBRARY = -L$(TCLLIBDIR) -l$(TCLLIBNAME)
++
++        MACROFILE = linux.cf
++           RM_CMD = $(RM)
++
++    IMAKE_DEFINES =
++   IMAKE_WARNINGS = -Wundef
++
++         IRULESRC = $(CONFIGDIR)
++        IMAKE_CMD = $(IMAKE) -DUseInstalled -I$(IRULESRC) $(IMAKE_DEFINES)                $(IMAKE_WARNINGS)
++
++     ICONFIGFILES = $(IRULESRC)/Imake.tmpl $(IRULESRC)/X11.tmpl                       $(IRULESRC)/site.def $(IRULESRC)/$(MACROFILE)                   $(IRULESRC)/xfree86.cf $(IRULESRC)/xf86.rules $(IRULESRC)/xorgsite.def $(IRULESRC)/host.def $(EXTRA_ICONFIGFILES)
++
++# $Xorg: X11.rules,v 1.4 2000/08/17 19:41:46 cpqbld Exp $
++
++# $XFree86: xc/config/cf/X11.rules,v 1.6 2001/01/17 16:22:31 dawes Exp $
++
++# ----------------------------------------------------------------------
++# X Window System Build Parameters and Rules
++# $XdotOrg: util/cf/X11.tmpl,v 1.54 2006/04/15 15:55:25 herrb Exp $
++# $Xorg: X11.tmpl,v 1.6 2000/08/17 19:41:46 cpqbld Exp $
++#
++#
++#
++#
++# $XFree86: xc/config/cf/X11.tmpl,v 1.248 2004/02/16 04:07:37 dawes Exp $
++
++XORGRELSTRING = `echo 6 8 99 903 | sed -e 's/ /./g' -e 's/^/Version\\\ /'`
++  XORGMANNAME = X Version 11
++
++STICKY_DEFINES = -DHAS_STICKY_DIR_BIT
++
++FCHOWN_DEFINES = -DHAS_FCHOWN
++
++# -----------------------------------------------------------------------
++# X Window System make variables; these need to be coordinated with rules
++
++             XTOP = $(TOP)
++           BINDIR = /usr/bin
++     BUILDINCROOT = $(TOP)/exports
++      BUILDINCDIR = $(BUILDINCROOT)/include
++      BUILDINCTOP = ../..
++      BUILDLIBDIR = $(TOP)/exports/lib
++      BUILDLIBTOP = ../..
++      BUILDBINDIR = $(TOP)/exports/bin
++      BUILDBINTOP = ../..
++   BUILDMODULEDIR = $(BUILDLIBDIR)/modules
++     BUILDI18NDIR = $(BUILDLIBDIR)/locale
++   BUILDMODULETOP = $(BUILDLIBTOP)/..
++    XBUILDINCROOT = $(XTOP)/exports
++     XBUILDINCDIR = $(XBUILDINCROOT)/include/X11
++     XBUILDINCTOP = ../../..
++     XBUILDBINDIR = $(XBUILDINCROOT)/bin
++           INCDIR = $(INCROOT)
++           ADMDIR = /usr/adm
++           LIBDIR = /usr/lib/X11
++         SHAREDIR = /usr/share/X11
++       LIBEXECDIR = /usr/libexec
++        MODULEDIR = $(USRLIBDIR)/modules
++   TOP_X_INCLUDES =
++          XBINDIR = $(PROJECTROOT)/bin
++
++       INSTSRCDIR = /usr/src
++
++        ETCX11DIR = /etc/X11
++
++          CONFDIR = $(ETCX11DIR)
++
++           DOCDIR = $(LIBDIR)/doc
++       DOCHTMLDIR = $(DOCDIR)/html
++         DOCPSDIR = $(DOCDIR)/PostScript
++        DOCPDFDIR = $(DOCDIR)/PDF
++          FONTDIR = $(LIBDIR)/fonts
++     ENCODINGSDIR = $(LIBDIR)/fonts/encodings
++         XINITDIR = $(LIBDIR)/xinit
++           XDMDIR = $(LIBDIR)/xdm
++        XDMVARDIR = $(VARLIBDIR)/xdm
++           TWMDIR = $(LIBDIR)/twm
++           XSMDIR = $(LIBDIR)/xsm
++           NLSDIR = $(LIBDIR)/nls
++       XLOCALEDIR = $(LIBDIR)/locale
++      LBXPROXYDIR = $(LIBDIR)/lbxproxy
++  PROXYMANAGERDIR = $(LIBDIR)/proxymngr
++        XPRINTDIR = $(LIBDIR)/xserver
++      XAPPLOADDIR = /usr/share/X11/app-defaults
++       FONTCFLAGS = -t
++
++     INSTAPPFLAGS = $(INSTDATFLAGS)
++
++              RGB = $(XBINDIR)/rgb
++            FONTC = $(XBINDIR)/bdftopcf
++      MKFONTSCALE = $(XBINDIR)/mkfontscale
++        MKFONTDIR = $(XBINDIR)/mkfontdir
++      MKHTMLINDEX = $(XBINDIR)/mkhtmlindex
++          UCS2ANY = $(XBINDIR)/ucs2any
++      BDFTRUNCATE = $(XBINDIR)/bdftruncate
++     UCSMAPPREFIX = $(FONTDIR)/util/map-
++       XCURSORGEN = $(XBINDIR)/xcursorgen
++
++     HTMLINDEXCMD = HtmlIndexCmd
++
++       DOCUTILSRC = $(XTOP)/doc/util
++        CLIENTSRC = $(TOP)/clients
++          DEMOSRC = $(TOP)/demos
++       XDOCMACROS = $(DOCUTILSRC)/macros.t
++       XIDXMACROS = $(DOCUTILSRC)/indexmacros.t
++       PROGRAMSRC = $(TOP)/programs
++           LIBSRC = $(XTOP)/lib
++          FONTSRC = $(XTOP)/fonts
++     ENCODINGSSRC = $(FONTSRC)/encodings
++       INCLUDESRC = $(BUILDINCROOT)/include
++      XINCLUDESRC = $(INCLUDESRC)/X11
++        SERVERSRC = $(XTOP)/programs/Xserver
++       CONTRIBSRC = $(XTOP)/../contrib
++   UNSUPPORTEDSRC = $(XTOP)/unsupported
++           DOCSRC = $(XTOP)/doc
++           RGBSRC = $(XTOP)/programs/rgb
++      BDFTOPCFSRC = $(PROGRAMSRC)/bdftopcf
++     MKFONTDIRSRC = $(PROGRAMSRC)/mkfontdir
++    FONTSERVERSRC = $(PROGRAMSRC)/xfs
++       FONTINCSRC = $(XTOP)/include/fonts
++        EXTINCSRC = $(XTOP)/include/extensions
++      FTSOURCEDIR = FreeTypeSrcDir
++        DRMSRCDIR = $(TOP)/extras/drm
++       MESASRCDIR = $(TOP)/extras/Mesa
++  OGLSAMPLESRCDIR = $(TOP)/extras/ogl-sample
++        PSWRAPSRC = $(XTOP)/config/pswrap
++     TRANSCOMMSRC = $(LIBSRC)/xtrans
++   TRANS_INCLUDES = -I$(TRANSCOMMSRC)
++ CONNECTION_FLAGS = -DUNIXCONN -DTCPCONN $(STICKY_DEFINES) $(FCHOWN_DEFINES) -DIPv6
++XTRANS_FAILDEFINES = -DFAIL_HARD
++
++    VENDORMANNAME = X.Org
++ VENDORMANVERSION = `echo 6 8 99 903 | sed -e 's/ /./g' -e 's/^/Version\\\ /'`
++      XORGMANDEFS = -D__xorgversion__="\"$(XORGRELSTRING)\" \"$(XORGMANNAME)\""
++    VENDORMANDEFS = -D__vendorversion__="$(VENDORMANVERSION) $(VENDORMANNAME)"
++       VENDORNAME = The X.Org Foundation
++  VENDORNAMESHORT = X.Org
++
++ VENDORWEBSUPPORT = http://wiki.X.Org
++
++VENDORSUPPORTDEFS = -D__VENDORDWEBSUPPORT__='"$(VENDORWEBSUPPORT)"'
++
++      XKBDEFRULES = xorg
++  XKBDEFRULESDEFS = -D__XKBDEFRULES__='"$(XKBDEFRULES)"'
++
++     XCONFIGFILE = xorg.conf
++      XCONFIGDIR = $(LIBDIR)
++        XLOGFILE = Xorg
++     XSERVERNAME = Xorg
++
++       XENVLIBDIR = $(USRLIBDIR)
++   CLIENTENVSETUP = LD_LIBRARY_PATH=$(XENVLIBDIR) XLOCALEDIR=$(BUILDLIBDIR)/locale
++
++# $Xorg: lnxLib.tmpl,v 1.3 2000/08/17 19:41:47 cpqbld Exp $
++# $XFree86: xc/config/cf/lnxLib.tmpl,v 3.19 2003/10/15 22:47:48 herrb Exp $
++
++          XLIBSRC = $(LIBSRC)/X11
++
++SOXLIBREV = 6.2
++DEPXONLYLIB =
++XONLYLIB =  -lX11
++
++LINTXONLY = $(LINTLIBDIR)/llib-lX11.ln
++
++      DEPXLIBONLY = $(DEPXONLYLIB)
++         XLIBONLY = $(XONLYLIB)
++     LINTXONLYLIB = $(LINTXONLY)
++
++      XEXTLIBSRC = $(LIBSRC)/Xext
++
++SOXEXTREV = 6.4
++DEPEXTENSIONLIB =
++EXTENSIONLIB =  -lXext
++
++LINTEXTENSION = $(LINTLIBDIR)/llib-lXext.ln
++
++LINTEXTENSIONLIB = $(LINTEXTENSION)
++          DEPXLIB = $(DEPEXTENSIONLIB) $(DEPXONLYLIB)
++             XLIB = $(EXTENSIONLIB) $(XONLYLIB)
++         LINTXLIB = $(LINTXONLYLIB)
++
++    XSSLIBSRC = $(LIBSRC)/Xss
++
++SOXSSREV = 1.0
++DEPXSSLIB =
++XSSLIB =  -lXss
++
++LINTXSS = $(LINTLIBDIR)/llib-lXss.ln
++
++    XXF86MISCLIBSRC = $(LIBSRC)/Xxf86misc
++
++SOXXF86MISCREV = 1.1
++DEPXXF86MISCLIB =
++XXF86MISCLIB =  -lXxf86misc
++
++LINTXXF86MISC = $(LINTLIBDIR)/llib-lXxf86misc.ln
++
++    XXF86VMLIBSRC = $(LIBSRC)/Xxf86vm
++
++SOXXF86VMREV = 1.0
++DEPXXF86VMLIB =
++XXF86VMLIB =  -lXxf86vm
++
++LINTXXF86VM = $(LINTLIBDIR)/llib-lXxf86vm.ln
++
++    XXF86DGALIBSRC = $(LIBSRC)/Xxf86dga
++
++SOXXF86DGAREV = 1.0
++DEPXXF86DGALIB =
++XXF86DGALIB =  -lXxf86dga
++
++LINTXXF86DGA = $(LINTLIBDIR)/llib-lXxf86dga.ln
++
++    XXF86RUSHLIBSRC = $(LIBSRC)/Xxf86rush
++
++SOXXF86RUSHREV = 1.0
++DEPXXF86RUSHLIB =
++XXF86RUSHLIB =  -lXxf86rush
++
++LINTXXF86RUSH = $(LINTLIBDIR)/llib-lXxf86rush.ln
++
++    XVLIBSRC = $(LIBSRC)/Xv
++
++SOXVREV = 1.0
++DEPXVLIB =
++XVLIB =  -lXv
++
++LINTXV = $(LINTLIBDIR)/llib-lXv.ln
++
++    XVMCLIBSRC = $(LIBSRC)/XvMC
++
++SOXVMCREV = 1.0
++DEPXVMCLIB =
++XVMCLIB =  -lXvMC
++
++LINTXVMC = $(LINTLIBDIR)/llib-lXvMC.ln
++
++    XINERAMALIBSRC = $(LIBSRC)/Xinerama
++
++SOXINERAMAREV = 1.0
++DEPXINERAMALIB =
++XINERAMALIB =  -lXinerama
++
++LINTXINERAMA = $(LINTLIBDIR)/llib-lXinerama.ln
++
++    XRESLIBSRC = $(LIBSRC)/XRes
++
++SOXRESREV = 1.0
++DEPXRESLIB =
++XRESLIB =  -lXRes
++
++LINTXRES = $(LINTLIBDIR)/llib-lXRes.ln
++
++    DMXLIBSRC = $(LIBSRC)/dmx
++
++DEPDMXLIB = $(USRLIBDIR)/libdmx.a
++DMXLIB =  -ldmx
++
++LINTDMX = $(LINTLIBDIR)/llib-ldmx.ln
++
++    DPSLIBSRC = $(LIBSRC)/dps
++
++DEPDPSLIB = $(USRLIBDIR)/libdps.a
++DPSLIB =  -ldps
++
++LINTDPS = $(LINTLIBDIR)/llib-ldps.ln
++
++    DPSTKLIBSRC = $(LIBSRC)/dpstk
++
++DEPDPSTKLIB = $(USRLIBDIR)/libdpstk.a
++DPSTKLIB =  -ldpstk
++
++LINTDPSTK = $(LINTLIBDIR)/llib-ldpstk.ln
++
++    PSRESLIBSRC = $(LIBSRC)/psres
++
++DEPPSRESLIB = $(USRLIBDIR)/libpsres.a
++PSRESLIB =  -lpsres
++
++LINTPSRES = $(LINTLIBDIR)/llib-lpsres.ln
++
++    GLULIBSRC = $(LIBSRC)/GLU
++
++SOGLUREV = 1.3
++DEPGLULIB =
++GLULIB =  -lGLU
++
++LINTGLU = $(LINTLIBDIR)/llib-lGLU.ln
++
++    GLXLIBSRC = $(LIBSRC)/GL
++
++SOGLREV = 1.2
++DEPGLXLIB =
++GLXLIB =  -lGL
++
++LINTGLX = $(LINTLIBDIR)/llib-lGL.ln
++
++    GLWIDGETSRC = $(LIBSRC)/GLw
++
++SOGLWREV = 1.0
++DEPGLWLIB =
++GLWLIB =  -lGLw
++
++LINTGLW = $(LINTLIBDIR)/llib-lGLw.ln
++
++    XRENDERLIBSRC = $(LIBSRC)/Xrender
++
++SOXRENDERREV = 1.2.2
++DEPXRENDERLIB =
++XRENDERLIB =  -lXrender
++
++LINTXRENDER = $(LINTLIBDIR)/llib-lXrender.ln
++
++    XRANDRLIBSRC = $(LIBSRC)/Xrandr
++
++SOXRANDRREV = 2.0
++DEPXRANDRLIB =
++XRANDRLIB =  -lXrandr
++
++LINTXRANDR = $(LINTLIBDIR)/llib-lXrandr.ln
++
++    XFIXESLIBSRC = $(LIBSRC)/Xfixes
++
++SOXFIXESREV = 3.0
++DEPXFIXESLIB =
++XFIXESLIB =  -lXfixes
++
++LINTXFIXES = $(LINTLIBDIR)/llib-lXfixes.ln
++
++   XDAMAGELIBSRC = $(LIBSRC)/Xdamage
++
++SOXDAMAGEREV = 1.0
++DEPXDAMAGELIB =
++XDAMAGELIB =  -lXdamage
++
++LINTXDAMAGE = $(LINTLIBDIR)/llib-lXdamage.ln
++
++XCOMPOSITELIBSRC = $(LIBSRC)/Xcomposite
++
++SOXCOMPOSITEREV = 1.0
++DEPXCOMPOSITELIB =
++XCOMPOSITELIB =  -lXcomposite
++
++LINTXCOMPOSITE = $(LINTLIBDIR)/llib-lXcomposite.ln
++
++XEVIELIBSRC = $(LIBSRC)/Xevie
++
++SOXEVIEREV = 1.0
++DEPXEVIELIB =
++XEVIELIB =  -lXevie
++
++LINTXEVIE = $(LINTLIBDIR)/llib-lXevie.ln
++
++   XCURSORLIBSRC = $(LIBSRC)/Xcursor
++
++SOXCURSORREV = 1.0.2
++DEPXCURSORLIB =
++XCURSORLIB =  -lXcursor
++
++LINTXCURSOR = $(LINTLIBDIR)/llib-lXcursor.ln
++
++   APPLEWMLIBSRC = $(LIBSRC)/apple
++
++DEPAPPLEWMLIB = $(USRLIBDIR)/libAppleWM.a
++APPLEWMLIB =  -lAppleWM
++
++LINTAPPLEWM = $(LINTLIBDIR)/llib-lAppleWM.ln
++
++   WINDOWSWMLIBSRC = $(LIBSRC)/windows
++
++DEPWINDOWSWMLIB = $(USRLIBDIR)/libWindowsWM.a
++WINDOWSWMLIB =  -lWindowsWM
++
++LINTWINDOWSWM = $(LINTLIBDIR)/llib-lWindowsWM.ln
++
++    XFONTCACHELIBSRC = $(LIBSRC)/Xfontcache
++
++SOXFONTCACHEREV = 1.2
++DEPXFONTCACHELIB =
++XFONTCACHELIB =  -lXfontcache
++
++LINTXFONTCACHE = $(LINTLIBDIR)/llib-lXfontcache.ln
++
++         XAUTHSRC = $(LIBSRC)/Xau
++
++SOXAUTHREV = 6.0
++DEPXAUTHLIB =
++XAUTHLIB =  -lXau
++
++LINTXAUTH = $(LINTLIBDIR)/llib-lXau.ln
++
++      XDMCPLIBSRC = $(LIBSRC)/Xdmcp
++
++SOXDMCPREV = 6.0
++DEPXDMCPLIB =
++XDMCPLIB =  -lXdmcp
++
++LINTXDMCP = $(LINTLIBDIR)/llib-lXdmcp.ln
++
++           XMUSRC = $(LIBSRC)/Xmu
++
++SOXMUREV = 6.2
++DEPXMULIB =
++XMULIB =  -lXmu
++
++LINTXMU = $(LINTLIBDIR)/llib-lXmu.ln
++
++           XMUUSRC = $(LIBSRC)/Xmuu
++
++SOXMUUREV = 1.0
++DEPXMUULIB =
++XMUULIB =  -lXmuu
++
++LINTXMUU = $(LINTLIBDIR)/llib-lXmuu.ln
++
++       OLDXLIBSRC = $(LIBSRC)/oldX
++
++DEPOLDXLIB = $(USRLIBDIR)/liboldX.a
++OLDXLIB =  -loldX
++
++LINTOLDX = $(LINTLIBDIR)/llib-loldX.ln
++
++         XPLIBSRC = $(LIBSRC)/Xp
++
++SOXPREV = 6.2
++DEPXPLIB =
++XPLIB =  -lXp
++
++LINTXP = $(LINTLIBDIR)/llib-lXp.ln
++
++       TOOLKITSRC = $(LIBSRC)/Xt
++
++SOXTREV = 6.0
++DEPXTOOLONLYLIB =
++XTOOLONLYLIB =  -lXt
++
++LINTXTOOLONLY = $(LINTLIBDIR)/llib-lXt.ln
++
++      DEPXTOOLLIB = $(DEPXTOOLONLYLIB) $(DEPSMLIB) $(DEPICELIB)
++         XTOOLLIB = $(XTOOLONLYLIB) $(SMLIB) $(ICELIB)
++     LINTXTOOLLIB = $(LINTXTOOLONLYLIB)
++
++       XALIBSRC = $(LIBSRC)/Xa
++
++SOXAREV = 1.0
++DEPXALIB =
++XALIB =  -lXa
++
++LINTXA = $(LINTLIBDIR)/llib-lXa.ln
++
++       AWIDGETSRC = $(LIBSRC)/Xaw
++
++SOXAWREV = 8.0
++DEPXAWLIB =
++XAWLIB =  -lXaw
++
++LINTXAW = $(LINTLIBDIR)/llib-lXaw.ln
++
++       AWIDGET7SRC = $(LIBSRC)/Xaw7
++
++SOXAW7REV = 7.0
++DEPXAW7LIB =
++XAW7LIB =  -lXaw
++
++LINTXAW7 = $(LINTLIBDIR)/llib-lXaw.ln
++
++       AWIDGET6SRC = $(LIBSRC)/Xaw6
++
++SOXAW6REV = 6.1
++DEPXAW6LIB =
++XAW6LIB =  -lXaw
++
++LINTXAW6 = $(LINTLIBDIR)/llib-lXaw.ln
++
++         XILIBSRC = $(LIBSRC)/Xi
++
++SOXINPUTREV = 6.0
++DEPXILIB =
++XILIB =  -lXi
++
++LINTXI = $(LINTLIBDIR)/llib-lXi.ln
++
++      XTESTLIBSRC = $(LIBSRC)/Xtst
++
++SOXTESTREV = 6.1
++DEPXTESTLIB =
++XTESTLIB =  -lXtst
++
++LINTXTEST = $(LINTLIBDIR)/llib-lXtst.ln
++
++DEPXBSDLIB = $(USRLIBDIR)/libXbsd.a
++XBSDLIB =  -lXbsd
++
++LINTXBSD = $(LINTLIBDIR)/llib-lXbsd.ln
++
++           ICESRC = $(LIBSRC)/ICE
++
++SOICEREV = 6.4
++DEPICELIB =
++ICELIB =  -lICE
++
++LINTICE = $(LINTLIBDIR)/llib-lICE.ln
++
++            SMSRC = $(LIBSRC)/SM
++
++SOSMREV = 6.0
++DEPSMLIB =
++SMLIB =  -lSM
++
++LINTSM = $(LINTLIBDIR)/llib-lSM.ln
++
++           XKEYSRC = $(LIBSRC)/Xkey
++
++SOXKEYREV = 6.0
++DEPXKEYLIB =
++XKEYLIB =  -lXkey
++
++LINTXKEY = $(LINTLIBDIR)/llib-lXkey.ln
++
++         FSLIBSRC = $(LIBSRC)/FS
++
++SOFSREV = 6.0
++DEPFSLIB =
++FSLIB =  -lFS
++
++LINTFS = $(LINTLIBDIR)/llib-lFS.ln
++
++         FONTLIBSRC = $(LIBSRC)/font
++
++SOFONTREV = 1.5
++DEPFONTLIB =
++FONTLIB = -L$(FREETYPELIBDIR) -L$(FONTLIBSRC)  -lXfont
++
++LINTXFONT = $(LINTLIBDIR)/llib-lXfont.ln
++#
++SOFONTREV = 1.5
++DEPXFONTLIB =
++XFONTLIB =  -lXfont
++
++LINTXFONT = $(LINTLIBDIR)/llib-lXfont.ln
++
++     FONTSTUBLIBSRC = $(FONTLIBSRC)/stubs
++
++DEPFONTSTUBLIB = $(USRLIBDIR)/libfntstubs.a
++FONTSTUBLIB =  -lfntstubs
++
++LINTFONTSTUB = $(LINTLIBDIR)/llib-lfntstubs.ln
++         DEPFONTLIB = $(DEPXFONTLIB) $(DEPFONTSTUBLIB)
++            FONTLIB = $(XFONTLIB) $(FONTSTUBLIB) $(FREETYPE2LIB)
++
++         FONTENCLIBSRC = $(LIBSRC)/fontenc
++
++SOFONTENCREV = 1.0
++DEPXFONTENCLIB =
++XFONTENCLIB =  -lfontenc
++
++LINTXFONTENC = $(LINTLIBDIR)/llib-lfontenc.ln
++
++          XPMLIBSRC = $(LIBSRC)/Xpm
++
++SOXPMREV = 4.11
++DEPXPMLIB =
++XPMLIB =  -lXpm
++
++LINTXPM = $(LINTLIBDIR)/llib-lXpm.ln
++
++FREETYPE2DIR = /usr
++FREETYPE2LIBDIR = /usr/lib
++FREETYPE2INCDIR = /usr/include
++
++FREETYPE2LIB = -lfreetype
++
++FREETYPE2INCLUDES = -I$(FREETYPE2INCDIR)/freetype2 -I$(FREETYPE2INCDIR)/freetype2/config
++
++FREETYPE2DEFINES = -DFREETYPE2
++
++          EXPATLIBSRC = $(LIBSRC)/expat
++
++SOEXPATREV = 0.4
++DEPEXPATLIB =
++EXPATLIB =  -lexpat
++
++LINTEXPAT = $(LINTLIBDIR)/llib-lexpat.ln
++
++EXPATDIR = /usr
++EXPATLIBDIR = /usr/lib
++EXPATINCDIR = /usr/include
++
++EXPATINCLUDES =
++
++EXPATLIB = -lexpat
++
++EXPATDEFINES = -DEXPAT
++
++          XFT1LIBSRC = $(LIBSRC)/Xft1
++
++SOXFT1REV = 1.1
++DEPXFT1LIB =
++XFT1LIB =  -lXft
++
++LINTXFT1 = $(LINTLIBDIR)/llib-lXft.ln
++
++          XFTLIBSRC = $(LIBSRC)/Xft
++
++SOXFTREV = 2.1.2
++DEPXFTLIB =
++XFTLIB =  -lXft
++
++LINTXFT = $(LINTLIBDIR)/llib-lXft.ln
++
++          FONTCONFIGLIBSRC = $(LIBSRC)/fontconfig
++
++SOFONTCONFIGREV = 1.0.4
++DEPFONTCONFIGLIB =
++FONTCONFIGLIB =  -lfontconfig
++
++LINTFONTCONFIG = $(LINTLIBDIR)/llib-lfontconfig.ln
++
++FONTCONFIGINCDIR=$(INCDIR)
++
++FONTCONFIGINCLUDES = -I$(FONTCONFIGINCDIR)
++
++FCCACHE = $(BINDIR)/fc-cache
++
++FONTCONFIGDEFINES = -DFONTCONFIG
++
++XFTINCLUDES=$(FONTCONFIGINCLUDES) $(FREETYPE2INCLUDES)
++
++LIBPNGINCDIR = /usr/include
++
++LIBPNGINC=
++
++LIBPNGDIR = /usr
++LIBPNGLIBDIR = /usr/lib
++LIBPNGINCDIR = /usr/include
++
++LIBPNGLIB = -lpng
++
++    XKBFILELIBSRC = $(LIBSRC)/xkbfile
++
++SOXKBFILEREV =  1.0
++DEPXKBFILELIB =
++XKBFILELIB =  -lxkbfile
++
++LINTXKBFILE = $(LINTLIBDIR)/llib-lxkbfile.ln
++
++     XKBCOMPCMD = $(XBINDIR)/xkbcomp
++
++    XKBUILIBSRC = $(LIBSRC)/xkbui
++
++SOXKBUIREV =  1.0
++DEPXKBUILIB =
++XKBUILIB =  -lxkbui
++
++LINTXKBUI = $(LINTLIBDIR)/llib-lxkbui.ln
++
++EXTRAXAWREQS =
++
++EXTRAXAWCLIENTDEPLIBS =
++
++EXTRAXAWCLIENTLIBS =
++
++        XTRAPLIBSRC = $(LIBSRC)/XTrap
++
++SOXTRAPREV = 6.4
++DEPXTRAPLIB =
++XTRAPLIB =  -lXTrap
++
++LINTXTRAP = $(LINTLIBDIR)/llib-lXTrap.ln
++
++          DEPLIBS = $(DEPXAWLIB) $(DEPXMULIB) $(DEPXTOOLLIB) $(DEPXLIB)
++
++         DEPLIBS1 = $(DEPLIBS)
++         DEPLIBS2 = $(DEPLIBS)
++         DEPLIBS3 = $(DEPLIBS)
++         DEPLIBS4 = $(DEPLIBS)
++         DEPLIBS5 = $(DEPLIBS)
++         DEPLIBS6 = $(DEPLIBS)
++         DEPLIBS7 = $(DEPLIBS)
++         DEPLIBS8 = $(DEPLIBS)
++         DEPLIBS9 = $(DEPLIBS)
++         DEPLIBS10 = $(DEPLIBS)
++
++       FCPRELOADPATTERN = libfontconfig.so.?
++
++      XFTPRELOADPATTERN = libXft.so.?
++  XRENDERPRELOADPATTERN = libXrender.so.?
++    XFONTPRELOADPATTERN = libXfont*.so.?
++
++XMULIBONLY = -lXmu
++XMULIB = $(XMULIBONLY) $(XTOOLLIB) $(XLIB)
++
++        CONFIGDIR = /usr/share/X11/config
++
++    USRLIBDIRPATH = $(USRLIBDIR)
++        LDPRELIBS = -L$(USRLIBDIR)  $(INSTALLED_LIBS)
++       LDPOSTLIBS =
++     TOP_INCLUDES = -I$(INCROOT) $(TOP_X_INCLUDES)
++  PROJECT_DEFINES =
++   VENDOR_DEFINES = -DXVENDORNAME='"$(VENDORNAME)"' -DXVENDORNAMESHORT='"$(VENDORNAMESHORT)"'
++
++CXXPROJECT_DEFINES =
++
++# ----------------------------------------------------------------------
++# start of Imakefile
++
++# Remove the next line if you want genuine Xaw instead of Xaw3d
++
++# Remove the next line if you don't want to enable XTEST support
++
++# Remove the next line if you want to disable internationalization
++
++SRCS = xvkbd.c findwidget.c
++OBJS = xvkbd.o findwidget.o
++DEPLIBS = $(DEPXAWLIB) $(DEPXMULIB) $(DEPXTOOLLIB) $(DEPXPMLIB) $(EXTRAXAWCLIENTDEPLIBS) $(DEPXLIB)
++SYS_LIBRARIES = $(XAWLIB) $(XMULIBONLY) $(XTOOLLIB) $(XPMLIB) $(EXTRAXAWCLIENTLIBS) $(XLIB)
++
++D_XTEST = -DUSE_XTEST
++SYS_LIBRARIES = $(XAWLIB) $(XMULIBONLY) $(XTOOLLIB) $(XPMLIB) $(EXTRAXAWCLIENTLIBS) $(XLIB) -lXtst
++
++D_I18N = -DUSE_I18N
++
++DEFINES = $(D_XAW3D) $(D_XTEST) $(D_I18N)
++
++xvkbd.o:       xvkbd.c resources.h XVkbd-common.h
++      $(RM) $@
++              $(CC) -c $(CFLAGS)   $*.c
++
++        PROGRAM = xvkbd
++
++all:: xvkbd
++
++xvkbd: $(OBJS) $(DEPLIBS)
++      $(RM) $@
++      $(CCLINK) -o $@ $(LDOPTIONS) $(OBJS) $(LOCAL_LIBRARIES) $(LDLIBS)  $(EXTRA_LOAD_FLAGS)
++
++install:: xvkbd
++      @if [ -d $(DESTDIR)$(BINDIR) ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(BINDIR) ]; then \
++                      (set -x; rm -f $(DESTDIR)$(BINDIR)); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(BINDIR)); \
++      fi
++      $(INSTALL) $(INSTALLFLAGS) $(INSTPGMFLAGS)  xvkbd $(DESTDIR)$(BINDIR)/xvkbd
++
++all:: xvkbd.$(MANNEWSUFFIX)
++
++xvkbd.$(MANNEWSUFFIX): xvkbd.$(MANSRCSUFFIX)
++      $(RM) $@
++      if test -z "$(PREPROCESSMANPAGES)" ; then \
++         cd `dirname xvkbd` && \
++         $(LN) `basename xvkbd.$(MANSRCSUFFIX)` `basename $@`; \
++      else \
++                   $(RAWCPP)  $(MANDEFS) $(EXTRAMANDEFS) \
++           < xvkbd.$(MANSRCSUFFIX) | sed -e '/^#  *[0-9][0-9]*  *.*$$/d'                      -e '/^#line  *[0-9][0-9]*  *.*$$/d'                     -e '/^[         ]*XCOMM$$/s/XCOMM/#/'                   -e '/^[         ]*XCOMM[^a-zA-Z0-9_]/s/XCOMM/#/'                        -e '/^[         ]*XHASH/s/XHASH/#/'                     -e '/\@\@$$/s/\@\@$$/\\/' >$@; \
++      fi
++
++cleandir::
++      $(RM) xvkbd.$(MANNEWSUFFIX)
++
++install.man:: xvkbd.$(MANNEWSUFFIX)
++      @if [ -d $(DESTDIR)$(MANDIR) ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(MANDIR) ]; then \
++                      (set -x; rm -f $(DESTDIR)$(MANDIR)); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(MANDIR)); \
++      fi
++      $(INSTALL) $(INSTALLFLAGS) $(INSTMANFLAGS) xvkbd.$(MANNEWSUFFIX) $(DESTDIR)$(MANDIR)/xvkbd.$(MANSUFFIX)
++
++depend::
++      $(DEPEND) $(DEPENDFLAGS) -- $(ALLDEFINES) $(DEPEND_DEFINES) -- $(SRCS)
++
++lint:
++      $(LINT) $(LINTFLAGS) $(SRCS) $(LINTLIBS)
++lint1:
++      $(LINT) $(LINTFLAGS) $(FILE) $(LINTLIBS)
++
++cleandir::
++      $(RM) xvkbd
++
++install::
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
++      fi
++      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
++                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
++      fi
++      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
++      fi
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++        RELPATH=`echo $(LIBDIR)/. | \
++              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
++        cd $(DESTDIR)$(LIBDIR)/.; \
++        if [ -d app-defaults -a ! -h app-defaults ]; then \
++          (cd app-defaults; tar cf - . | \
++              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
++               tar xf -; exit 0); exit 0); \
++        fi; \
++        $(RM) -r app-defaults; \
++        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
++      fi
++
++install:: XVkbd.ad
++      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
++                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
++      fi
++      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd
++
++install::
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
++      fi
++      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
++                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
++      fi
++      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
++      fi
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++        RELPATH=`echo $(LIBDIR)/. | \
++              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
++        cd $(DESTDIR)$(LIBDIR)/.; \
++        if [ -d app-defaults -a ! -h app-defaults ]; then \
++          (cd app-defaults; tar cf - . | \
++              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
++               tar xf -; exit 0); exit 0); \
++        fi; \
++        $(RM) -r app-defaults; \
++        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
++      fi
++
++install:: XVkbd-belgian.ad
++      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
++                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
++      fi
++      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-belgian.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-belgian
++
++install::
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
++      fi
++      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
++                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
++      fi
++      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
++      fi
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++        RELPATH=`echo $(LIBDIR)/. | \
++              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
++        cd $(DESTDIR)$(LIBDIR)/.; \
++        if [ -d app-defaults -a ! -h app-defaults ]; then \
++          (cd app-defaults; tar cf - . | \
++              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
++               tar xf -; exit 0); exit 0); \
++        fi; \
++        $(RM) -r app-defaults; \
++        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
++      fi
++
++install:: XVkbd-common.ad
++      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
++                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
++      fi
++      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-common.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-common
++
++install::
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
++      fi
++      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
++                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
++      fi
++      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
++      fi
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++        RELPATH=`echo $(LIBDIR)/. | \
++              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
++        cd $(DESTDIR)$(LIBDIR)/.; \
++        if [ -d app-defaults -a ! -h app-defaults ]; then \
++          (cd app-defaults; tar cf - . | \
++              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
++               tar xf -; exit 0); exit 0); \
++        fi; \
++        $(RM) -r app-defaults; \
++        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
++      fi
++
++install:: XVkbd-danish.ad
++      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
++                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
++      fi
++      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-danish.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-danish
++
++install::
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
++      fi
++      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
++                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
++      fi
++      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
++      fi
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++        RELPATH=`echo $(LIBDIR)/. | \
++              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
++        cd $(DESTDIR)$(LIBDIR)/.; \
++        if [ -d app-defaults -a ! -h app-defaults ]; then \
++          (cd app-defaults; tar cf - . | \
++              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
++               tar xf -; exit 0); exit 0); \
++        fi; \
++        $(RM) -r app-defaults; \
++        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
++      fi
++
++install:: XVkbd-fitaly.ad
++      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
++                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
++      fi
++      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-fitaly.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-fitaly
++
++install::
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
++      fi
++      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
++                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
++      fi
++      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
++      fi
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++        RELPATH=`echo $(LIBDIR)/. | \
++              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
++        cd $(DESTDIR)$(LIBDIR)/.; \
++        if [ -d app-defaults -a ! -h app-defaults ]; then \
++          (cd app-defaults; tar cf - . | \
++              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
++               tar xf -; exit 0); exit 0); \
++        fi; \
++        $(RM) -r app-defaults; \
++        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
++      fi
++
++install:: XVkbd-french.ad
++      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
++                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
++      fi
++      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-french.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-french
++
++install::
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
++      fi
++      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
++                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
++      fi
++      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
++      fi
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++        RELPATH=`echo $(LIBDIR)/. | \
++              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
++        cd $(DESTDIR)$(LIBDIR)/.; \
++        if [ -d app-defaults -a ! -h app-defaults ]; then \
++          (cd app-defaults; tar cf - . | \
++              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
++               tar xf -; exit 0); exit 0); \
++        fi; \
++        $(RM) -r app-defaults; \
++        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
++      fi
++
++install:: XVkbd-french2.ad
++      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
++                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
++      fi
++      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-french2.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-french2
++
++install::
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
++      fi
++      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
++                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
++      fi
++      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
++      fi
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++        RELPATH=`echo $(LIBDIR)/. | \
++              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
++        cd $(DESTDIR)$(LIBDIR)/.; \
++        if [ -d app-defaults -a ! -h app-defaults ]; then \
++          (cd app-defaults; tar cf - . | \
++              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
++               tar xf -; exit 0); exit 0); \
++        fi; \
++        $(RM) -r app-defaults; \
++        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
++      fi
++
++install:: XVkbd-german.ad
++      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
++                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
++      fi
++      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-german.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-german
++
++install::
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
++      fi
++      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
++                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
++      fi
++      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
++      fi
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++        RELPATH=`echo $(LIBDIR)/. | \
++              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
++        cd $(DESTDIR)$(LIBDIR)/.; \
++        if [ -d app-defaults -a ! -h app-defaults ]; then \
++          (cd app-defaults; tar cf - . | \
++              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
++               tar xf -; exit 0); exit 0); \
++        fi; \
++        $(RM) -r app-defaults; \
++        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
++      fi
++
++install:: XVkbd-greek.ad
++      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
++                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
++      fi
++      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-greek.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-greek
++
++install::
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
++      fi
++      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
++                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
++      fi
++      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
++      fi
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++        RELPATH=`echo $(LIBDIR)/. | \
++              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
++        cd $(DESTDIR)$(LIBDIR)/.; \
++        if [ -d app-defaults -a ! -h app-defaults ]; then \
++          (cd app-defaults; tar cf - . | \
++              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
++               tar xf -; exit 0); exit 0); \
++        fi; \
++        $(RM) -r app-defaults; \
++        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
++      fi
++
++install:: XVkbd-hebrew.ad
++      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
++                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
++      fi
++      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-hebrew.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-hebrew
++
++install::
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
++      fi
++      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
++                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
++      fi
++      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
++      fi
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++        RELPATH=`echo $(LIBDIR)/. | \
++              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
++        cd $(DESTDIR)$(LIBDIR)/.; \
++        if [ -d app-defaults -a ! -h app-defaults ]; then \
++          (cd app-defaults; tar cf - . | \
++              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
++               tar xf -; exit 0); exit 0); \
++        fi; \
++        $(RM) -r app-defaults; \
++        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
++      fi
++
++install:: XVkbd-icelandic.ad
++      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
++                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
++      fi
++      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-icelandic.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-icelandic
++
++install::
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
++      fi
++      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
++                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
++      fi
++      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
++      fi
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++        RELPATH=`echo $(LIBDIR)/. | \
++              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
++        cd $(DESTDIR)$(LIBDIR)/.; \
++        if [ -d app-defaults -a ! -h app-defaults ]; then \
++          (cd app-defaults; tar cf - . | \
++              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
++               tar xf -; exit 0); exit 0); \
++        fi; \
++        $(RM) -r app-defaults; \
++        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
++      fi
++
++install:: XVkbd-italian.ad
++      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
++                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
++      fi
++      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-italian.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-italian
++
++install::
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
++      fi
++      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
++                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
++      fi
++      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
++      fi
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++        RELPATH=`echo $(LIBDIR)/. | \
++              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
++        cd $(DESTDIR)$(LIBDIR)/.; \
++        if [ -d app-defaults -a ! -h app-defaults ]; then \
++          (cd app-defaults; tar cf - . | \
++              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
++               tar xf -; exit 0); exit 0); \
++        fi; \
++        $(RM) -r app-defaults; \
++        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
++      fi
++
++install:: XVkbd-jisx6002.ad
++      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
++                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
++      fi
++      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-jisx6002.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-jisx6002
++
++install::
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
++      fi
++      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
++                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
++      fi
++      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
++      fi
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++        RELPATH=`echo $(LIBDIR)/. | \
++              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
++        cd $(DESTDIR)$(LIBDIR)/.; \
++        if [ -d app-defaults -a ! -h app-defaults ]; then \
++          (cd app-defaults; tar cf - . | \
++              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
++               tar xf -; exit 0); exit 0); \
++        fi; \
++        $(RM) -r app-defaults; \
++        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
++      fi
++
++install:: XVkbd-jisx6004.ad
++      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
++                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
++      fi
++      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-jisx6004.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-jisx6004
++
++install::
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
++      fi
++      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
++                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
++      fi
++      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
++      fi
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++        RELPATH=`echo $(LIBDIR)/. | \
++              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
++        cd $(DESTDIR)$(LIBDIR)/.; \
++        if [ -d app-defaults -a ! -h app-defaults ]; then \
++          (cd app-defaults; tar cf - . | \
++              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
++               tar xf -; exit 0); exit 0); \
++        fi; \
++        $(RM) -r app-defaults; \
++        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
++      fi
++
++install:: XVkbd-korean.ad
++      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
++                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
++      fi
++      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-korean.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-korean
++
++install::
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
++      fi
++      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
++                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
++      fi
++      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
++      fi
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++        RELPATH=`echo $(LIBDIR)/. | \
++              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
++        cd $(DESTDIR)$(LIBDIR)/.; \
++        if [ -d app-defaults -a ! -h app-defaults ]; then \
++          (cd app-defaults; tar cf - . | \
++              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
++               tar xf -; exit 0); exit 0); \
++        fi; \
++        $(RM) -r app-defaults; \
++        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
++      fi
++
++install:: XVkbd-latin1.ad
++      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
++                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
++      fi
++      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-latin1.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-latin1
++
++install::
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
++      fi
++      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
++                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
++      fi
++      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
++      fi
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++        RELPATH=`echo $(LIBDIR)/. | \
++              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
++        cd $(DESTDIR)$(LIBDIR)/.; \
++        if [ -d app-defaults -a ! -h app-defaults ]; then \
++          (cd app-defaults; tar cf - . | \
++              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
++               tar xf -; exit 0); exit 0); \
++        fi; \
++        $(RM) -r app-defaults; \
++        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
++      fi
++
++install:: XVkbd-norwegian.ad
++      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
++                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
++      fi
++      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-norwegian.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-norwegian
++
++install::
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
++      fi
++      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
++                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
++      fi
++      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
++      fi
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++        RELPATH=`echo $(LIBDIR)/. | \
++              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
++        cd $(DESTDIR)$(LIBDIR)/.; \
++        if [ -d app-defaults -a ! -h app-defaults ]; then \
++          (cd app-defaults; tar cf - . | \
++              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
++               tar xf -; exit 0); exit 0); \
++        fi; \
++        $(RM) -r app-defaults; \
++        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
++      fi
++
++install:: XVkbd-portuguese.ad
++      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
++                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
++      fi
++      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-portuguese.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-portuguese
++
++install::
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
++      fi
++      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
++                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
++      fi
++      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
++      fi
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++        RELPATH=`echo $(LIBDIR)/. | \
++              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
++        cd $(DESTDIR)$(LIBDIR)/.; \
++        if [ -d app-defaults -a ! -h app-defaults ]; then \
++          (cd app-defaults; tar cf - . | \
++              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
++               tar xf -; exit 0); exit 0); \
++        fi; \
++        $(RM) -r app-defaults; \
++        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
++      fi
++
++install:: XVkbd-slovene.ad
++      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
++                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
++      fi
++      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-slovene.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-slovene
++
++install::
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
++      fi
++      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
++                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
++      fi
++      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
++      fi
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++        RELPATH=`echo $(LIBDIR)/. | \
++              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
++        cd $(DESTDIR)$(LIBDIR)/.; \
++        if [ -d app-defaults -a ! -h app-defaults ]; then \
++          (cd app-defaults; tar cf - . | \
++              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
++               tar xf -; exit 0); exit 0); \
++        fi; \
++        $(RM) -r app-defaults; \
++        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
++      fi
++
++install:: XVkbd-small.ad
++      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
++                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
++      fi
++      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-small.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-small
++
++install::
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
++      fi
++      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
++                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
++      fi
++      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
++      fi
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++        RELPATH=`echo $(LIBDIR)/. | \
++              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
++        cd $(DESTDIR)$(LIBDIR)/.; \
++        if [ -d app-defaults -a ! -h app-defaults ]; then \
++          (cd app-defaults; tar cf - . | \
++              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
++               tar xf -; exit 0); exit 0); \
++        fi; \
++        $(RM) -r app-defaults; \
++        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
++      fi
++
++install:: XVkbd-spanish.ad
++      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
++                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
++      fi
++      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-spanish.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-spanish
++
++install::
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
++      fi
++      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
++                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
++      fi
++      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
++      fi
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++        RELPATH=`echo $(LIBDIR)/. | \
++              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
++        cd $(DESTDIR)$(LIBDIR)/.; \
++        if [ -d app-defaults -a ! -h app-defaults ]; then \
++          (cd app-defaults; tar cf - . | \
++              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
++               tar xf -; exit 0); exit 0); \
++        fi; \
++        $(RM) -r app-defaults; \
++        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
++      fi
++
++install:: XVkbd-swedish.ad
++      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
++                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
++      fi
++      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-swedish.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-swedish
++
++install::
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
++      fi
++      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
++                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
++      fi
++      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
++      fi
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++        RELPATH=`echo $(LIBDIR)/. | \
++              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
++        cd $(DESTDIR)$(LIBDIR)/.; \
++        if [ -d app-defaults -a ! -h app-defaults ]; then \
++          (cd app-defaults; tar cf - . | \
++              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
++               tar xf -; exit 0); exit 0); \
++        fi; \
++        $(RM) -r app-defaults; \
++        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
++      fi
++
++install:: XVkbd-swissgerman.ad
++      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
++                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
++      fi
++      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-swissgerman.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-swissgerman
++
++install::
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
++      fi
++      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
++                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
++      fi
++      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
++      fi
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++        RELPATH=`echo $(LIBDIR)/. | \
++              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
++        cd $(DESTDIR)$(LIBDIR)/.; \
++        if [ -d app-defaults -a ! -h app-defaults ]; then \
++          (cd app-defaults; tar cf - . | \
++              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
++               tar xf -; exit 0); exit 0); \
++        fi; \
++        $(RM) -r app-defaults; \
++        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
++      fi
++
++install:: XVkbd-turkish.ad
++      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
++                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
++      fi
++      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-turkish.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-turkish
++
++install::
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
++      fi
++      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
++                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
++      fi
++      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
++                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
++      fi
++      @for flag in ${MAKEFLAGS} ''; do \
++        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
++      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
++        RELPATH=`echo $(LIBDIR)/. | \
++              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
++        cd $(DESTDIR)$(LIBDIR)/.; \
++        if [ -d app-defaults -a ! -h app-defaults ]; then \
++          (cd app-defaults; tar cf - . | \
++              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
++               tar xf -; exit 0); exit 0); \
++        fi; \
++        $(RM) -r app-defaults; \
++        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
++      fi
++
++install:: XVkbd-uk.ad
++      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
++              set +x; \
++      else \
++              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
++                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
++              fi; \
++              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
++      fi
++      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-uk.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-uk
++
++#  ============================
++#  These rules are only for me
++
++_distclean: cleandir
++      -rm Makefile
++
++XVkbd-common.h: XVkbd-common.ad
++      -which ad2c > /dev/null && ad2c XVkbd-common.ad > XVkbd-common.h
++
++HTML = $(HOME)/public_html/homepage3.nifty.com/xvkbd/index.html
++_readme:
++      -[ -f $(HTML) ] && html2man $(HTML) > xvkbd.man
++      ( echo ".pl 10000"; echo ".ll 75"; echo ".hy 0"; echo ".ad l" ) |               cat - xvkbd.man | groff -Tascii -man | sed 's/.\b//g' |          head -9000 | cat -s | tail +3 > README
++
++#  ============================
++
++# ----------------------------------------------------------------------
++# common rules for all Makefiles - do not edit
++
++.c.i:
++      $(RM) $@
++              $(CC) -E $(CFLAGS) $(_NOOP_) $*.c > $@
++
++.SUFFIXES: .ii
++
++.cc.ii:
++      $(RM) $@
++              $(CC) -E $(CFLAGS) $(_NOOP_) $*.cc > $@
++
++.SUFFIXES: .s
++
++.c.s:
++      $(RM) $@
++              $(CC) -S $(CFLAGS) $(_NOOP_) $*.c
++
++.cc.s:
++      $(RM) $@
++              $(CC) -S $(CFLAGS) $(_NOOP_) $*.cc
++
++emptyrule::
++
++cleandir::
++      $(RM) *.CKP *.ln *.BAK *.bak *.o core errs ,* *~ *.a .emacs_* tags TAGS make.log MakeOut   "#"*
++
++Makefile::
++      -@if [ -f Makefile ]; then set -x; \
++      $(RM) Makefile.bak; $(MV) Makefile Makefile.bak; \
++      else exit 0; fi
++      $(IMAKE_CMD) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT_DIR)
++
++tags::
++      $(TAGS) -w *.[ch]
++      $(TAGS) -xw *.[ch] > TAGS
++
++man_keywords::
++
++html_index::
++
++clean:: cleandir
++
++distclean:: cleandir
++
++# ----------------------------------------------------------------------
++# empty rules for directories that do not have SUBDIRS - do not edit
++
++install::
++      @echo "install in $(CURRENT_DIR) done"
++
++install.man::
++      @echo "install.man in $(CURRENT_DIR) done"
++
++install.sdk::
++      @echo "install.sdk in $(CURRENT_DIR) done"
++
++Makefiles::
++
++includes::
++
++depend::
++
++distclean::
++      $(RM) Makefile Makefile.dep
++
++# ----------------------------------------------------------------------
++# dependencies generated by makedepend
++
diff --git a/package/xvkbd/xvkbd-makefile.patch b/package/xvkbd/xvkbd-makefile.patch
deleted file mode 100644 (file)
index a8f6577..0000000
+++ /dev/null
@@ -1,2400 +0,0 @@
---- a/Makefile 2008-03-04 06:14:55.425005441 -0500
-+++ b/Makefile 2008-03-05 08:40:50.000000000 -0500
-@@ -0,0 +1,2397 @@
-+# Makefile generated by imake - do not edit!
-+# $Xorg: imake.c,v 1.6 2001/02/09 02:03:15 xorgcvs Exp $
-+
-+# ----------------------------------------------------------------------
-+# Makefile generated from "Imake.tmpl" and <Imakefile>
-+# $Xorg: Imake.tmpl,v 1.4 2000/08/17 19:41:46 cpqbld Exp $
-+# $XdotOrg: util/cf/Imake.tmpl,v 1.17 2006/04/15 15:55:25 herrb Exp $
-+#
-+#
-+#
-+#
-+# $XFree86: xc/config/cf/Imake.tmpl,v 3.155 2003/12/24 18:58:41 dickey Exp $
-+# ----------------------------------------------------------------------
-+
-+all::
-+
-+.SUFFIXES: .i
-+
-+# $XdotOrg: util/cf/Imake.cf,v 1.12 2005/11/08 06:33:24 jkj Exp $
-+# $Xorg: Imake.cf,v 1.4 2000/08/17 19:41:45 cpqbld Exp $
-+
-+# $XFree86: xc/config/cf/Imake.cf,v 3.88 2003/12/16 21:30:21 herrb Exp $
-+
-+# Keep cpp from replacing path elements containing i486/i586/i686
-+
-+# -----------------------------------------------------------------------
-+# site-specific configuration parameters that need to come before
-+# the platform-specific parameters - edit site.def to change
-+
-+# site:  $TOG: site.sample /main/r64_final/1 1998/02/05 16:28:49 kaleb $
-+
-+# site:  $XFree86: xc/config/cf/site.def,v 3.24 2000/06/25 20:17:29 dawes Exp $
-+
-+# $XFree86: xc/config/cf/xf86site.def,v 3.186 2003/06/25 18:06:22 eich Exp $
-+
-+# ----------------------------------------------------------------------
-+# platform-specific configuration parameters - edit linux.cf to change
-+
-+# $XdotOrg: util/cf/linux.cf,v 1.31 2005/10/21 19:10:27 ajax Exp $
-+# platform:  $Xorg: linux.cf,v 1.3 2000/08/17 19:41:47 cpqbld Exp $
-+
-+# platform:  $XFree86: xc/config/cf/linux.cf,v 3.220 2003/12/30 22:38:33 tsi Exp $
-+
-+# operating system:  Linux 2.6.23.8-63.fc8 i686 [ELF] (2.6.23)
-+# libc:       (6.7.0)
-+# binutils:   (217)
-+
-+# $Xorg: lnxLib.rules,v 1.3 2000/08/17 19:41:47 cpqbld Exp $
-+# $XFree86: xc/config/cf/lnxLib.rules,v 3.52 2003/10/31 20:49:03 herrb Exp $
-+
-+# $XdotOrg: util/cf/xorg.cf,v 1.53 2005/10/03 16:08:44 alanc Exp $
-+
-+# $Xorg: xfree86.cf,v 1.4 2000/08/17 19:41:49 cpqbld Exp $
-+
-+XORG_VERSION_CURRENT = (((6) * 10000000) + ((8) * 100000) + ((99) * 1000) + 903)
-+RELEASE_VERSION = RELEASE-1
-+
-+AFB_DEFS = -DUSE_AFB
-+
-+DRIVERSDKDIR = $(USRLIBDIR)/Server
-+DRIVERSDKMODULEDIR = $(USRLIBDIR)/Server/modules
-+DRIVERSDKINCLUDEDIR = $(USRLIBDIR)/Server/include
-+
-+       XF86SRC = $(SERVERSRC)/hw/xfree86
-+    XF86COMSRC = $(XF86SRC)/common
-+ XF86PARSERSRC = $(XF86SRC)/parser
-+     XF86OSSRC = $(XF86SRC)/os-support
-+ XF86DRIVERSRC = $(XF86SRC)/drivers
-+     DRIVERSRC = $(XF86DRIVERSRC)
-+
-+        XFREE86DOCDIR = $(DOCDIR)
-+      XFREE86PSDOCDIR = $(DOCPSDIR)
-+     XFREE86PDFDOCDIR = $(DOCPDFDIR)
-+    XFREE86HTMLDOCDIR = $(DOCHTMLDIR)
-+XFREE86JAPANESEDOCDIR = $(DOCDIR)/Japanese
-+
-+# $Xorg: xf86.rules,v 1.3 2000/08/17 19:41:48 cpqbld Exp $
-+
-+# $XFree86: xc/config/cf/xf86.rules,v 3.34tsi Exp $
-+
-+# ----------------------------------------------------------------------
-+# site-specific configuration parameters that go after
-+# the platform-specific parameters - edit site.def to change
-+
-+# site:  $TOG: site.sample /main/r64_final/1 1998/02/05 16:28:49 kaleb $
-+
-+# site:  $XFree86: xc/config/cf/site.def,v 3.24 2000/06/25 20:17:29 dawes Exp $
-+
-+# ---------------------------------------------------------------------
-+# Imake rules for building libraries, programs, scripts, and data files
-+# rules:  $Xorg: Imake.rules,v 1.3 2000/08/17 19:41:46 cpqbld Exp $
-+# rules:  $XdotOrg: util/cf/Imake.rules,v 1.11 2005/11/08 06:33:24 jkj Exp $
-+#
-+#
-+#
-+#
-+# rules:  $XFree86: xc/config/cf/Imake.rules,v 3.128 2003/11/15 03:25:17 dawes Exp $
-+
-+.PHONY: all interfaces install install.man install.lib install.sdk    depend includes cleandir
-+
-+ _NULLCMD_ = @ echo -n
-+
-+X_BYTE_ORDER = X_LITTLE_ENDIAN
-+
-+GLIDE2INCDIR =
-+
-+GLIDE3INCDIR =
-+
-+GLIDE3LIBNAME =
-+
-+TKLIBNAME =
-+
-+TKLIBDIR =
-+
-+TCLLIBNAME =
-+
-+TCLIBDIR =
-+
-+          PATHSEP = /
-+            SHELL = /bin/sh -e
-+
-+              TOP = .
-+      CURRENT_DIR = .
-+
-+            IMAKE = imake
-+           DEPEND = gccmakedep
-+        MKDIRHIER = mkdir -p
-+          REVPATH = revpath
-+    EXPORTLISTGEN =
-+             RMAN = RmanCmd
-+     RMANBASENAME = rman
-+      RMANOPTIONS = RmanOptions
-+        CONFIGSRC = $(TOP)/config
-+         IMAKESRC = $(CONFIGSRC)/imake
-+        DEPENDSRC = $(CONFIGSRC)/util
-+
-+          INCROOT = /usr/include
-+        USRLIBDIR = /usr/lib
-+           VARDIR = /var
-+        VARLIBDIR = $(VARDIR)/lib
-+  SYSTEMUSRLIBDIR = /usr/lib
-+  SYSTEMUSRINCDIR = /usr/include
-+         SHLIBDIR = /usr/lib
-+       LINTLIBDIR = $(USRLIBDIR)/lint
-+          MANPATH = /usr/share/man
-+    MANSOURCEPATH = $(MANPATH)/man
-+           MANDIR = $(MANSOURCEPATH)1
-+        LIBMANDIR = $(MANSOURCEPATH)3
-+       FILEMANDIR = $(MANSOURCEPATH)5
-+       MISCMANDIR = $(MANSOURCEPATH)$(MISCMANSUFFIX)
-+     DRIVERMANDIR = $(MANSOURCEPATH)$(DRIVERMANSUFFIX)
-+     LOGDIRECTORY = $(VARDIR)/log
-+
-+        VARRUNDIR = $(VARDIR)/run
-+
-+         VARDBDIR = $(VARDIR)/lib
-+
-+               AR = ar clq
-+
-+# Nice try but useless: make will inherit BOOTSTRAPCFLAGS
-+# from  top Makefile
-+  BOOTSTRAPCFLAGS =
-+
-+               CC = gcc -m32
-+               AS = gcc -m32 -c -x assembler
-+
-+.SUFFIXES: .cc
-+
-+              CXX = c++ -m32
-+
-+          CXXFILT = c++filt
-+
-+           CXXLIB = -lstdc++
-+
-+    CXXDEBUGFLAGS = -O2 -fno-strength-reduce -fno-strict-aliasing
-+CXXDEPENDINCLUDES =
-+ CXXEXTRA_DEFINES =
-+CXXEXTRA_INCLUDES =
-+   CXXSTD_DEFINES = -Dlinux -D__i386__ -D_POSIX_C_SOURCE=199309L                              -D_POSIX_SOURCE -D_XOPEN_SOURCE                                 -D_BSD_SOURCE -D_SVID_SOURCE                                 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64                                                                  $(CXXPROJECT_DEFINES)
-+       CXXOPTIONS =
-+      CXXINCLUDES = $(INCLUDES) $(TOP_INCLUDES) $(CXXEXTRA_INCLUDES)
-+       CXXDEFINES = $(CXXINCLUDES) $(CXXSTD_DEFINES) $(THREADS_CXXDEFINES) $(DEFINES) $(CXXEXTRA_DEFINES)
-+         CXXFLAGS = $(CXXDEBUGFLAGS) $(CXXOPTIONS) $(THREADS_CXXFLAGS) $(CXXDEFINES)
-+
-+         COMPRESS = compress
-+          GZIPCMD = gzip
-+
-+              CPP = cpp $(STD_CPP_DEFINES)
-+           RAWCPP = cpp -undef $(STD_CPP_OPTIONS)
-+    PREPROCESSCMD = gcc -m32 -E $(STD_CPP_DEFINES)
-+
-+          INSTALL = install
-+     INSTALLFLAGS = -c
-+
-+               LD = gcc -m32 -nostdlib
-+
-+              LEX = flex -l
-+               M4 = m4
-+          M4FLAGS =
-+           LEXLIB = -lfl
-+             YACC = bison -y
-+           CCYACC = bison -y
-+
-+             LINT = lint
-+
-+      LINTLIBFLAG = -C
-+         LINTOPTS = -axz
-+               LN = ln -s
-+             MAKE = make
-+               MV = mv -f
-+               CP = cp
-+
-+           RANLIB = ranlib
-+
-+  RANLIBINSTFLAGS =
-+
-+               RM = rm -f
-+             PERL = perl
-+         PERLOPTS =
-+     PERLENVSETUP = env LC_ALL=C
-+        MANSUFFIX = 1x
-+     LIBMANSUFFIX = 3x
-+    FILEMANSUFFIX = 5x
-+    MISCMANSUFFIX = 7
-+  DRIVERMANSUFFIX = 4
-+   ADMINMANSUFFIX = 8
-+     MANSRCSUFFIX = man
-+     MANNEWSUFFIX = _man
-+          MANDEFS = -D__apploaddir__=$(XAPPLOADDIR) -D__appmansuffix__=$(MANSUFFIX) -D__filemansuffix__=$(FILEMANSUFFIX) -D__libmansuffix__=$(LIBMANSUFFIX) -D__miscmansuffix__=$(MISCMANSUFFIX) -D__drivermansuffix__=$(DRIVERMANSUFFIX) -D__adminmansuffix__=$(ADMINMANSUFFIX) -D__projectroot__=$(PROJECTROOT) -D__xconfigfile__=$(XCONFIGFILE) -D__xconfigdir__=$(XCONFIGDIR) -D__xlogfile__=$(XLOGFILE) -D__xservername__=$(XSERVERNAME) $(XORGMANDEFS) $(VENDORMANDEFS)
-+
-+   COMPRESSMANCMD = gzip -n
-+
-+            TROFF = groff -Tps
-+            NROFF = nroff
-+
-+         MSMACROS = -ms
-+        MANMACROS = -man
-+              TBL = tbl
-+              EQN = eqn
-+             NEQN = neqn
-+              COL = col
-+         COLFLAGS = -b
-+
-+            MODCC = gcc -m32
-+
-+           MODCPP = cpp
-+        MODCFLAGS = $(CFLAGS)
-+            MODAS = gcc -m32 -c -x assembler
-+       MODASFLAGS =
-+
-+            MODLD = gcc -m32 -nostdlib
-+
-+       MODLDFLAGS =
-+MODLDCOMBINEFLAGS = -r
-+            MODAR = ar clq
-+
-+        MODRANLIB = ranlib
-+
-+     STD_INCLUDES =
-+  STD_CPP_OPTIONS = -traditional
-+  STD_CPP_DEFINES = -traditional -Dlinux -D__i386__ -D_POSIX_C_SOURCE=199309L                                 -D_POSIX_SOURCE -D_XOPEN_SOURCE                                 -D_BSD_SOURCE -D_SVID_SOURCE                                 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64                                                                  $(PROJECT_DEFINES)
-+      STD_DEFINES = -Dlinux -D__i386__ -D_POSIX_C_SOURCE=199309L                              -D_POSIX_SOURCE -D_XOPEN_SOURCE                                 -D_BSD_SOURCE -D_SVID_SOURCE                                 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64                                                                  $(PROJECT_DEFINES)
-+ EXTRA_LOAD_FLAGS =
-+  EXTRA_LDOPTIONS =
-+  EXTRA_LIBRARIES =
-+             TAGS = ctags
-+
-+   PARALLELMFLAGS =
-+
-+    SHAREDCODEDEF =
-+         SHLIBDEF =
-+
-+     SHLIBLDFLAGS = -shared $(SHLIBGLOBALSFLAGS)
-+
-+         NOSTDLIB = -nostdlib
-+     POSTNOSTDLIB = -Wl,-Bstatic -lgcc -Wl,-Bdynamic
-+
-+         PICFLAGS = -fPIC
-+
-+      CXXPICFLAGS = -fPIC
-+
-+    PROTO_DEFINES = -DFUNCPROTO=15 -DNARROWPROTO
-+
-+     INSTPGMFLAGS =
-+
-+     INSTBINFLAGS = -m 0755
-+     INSTUIDFLAGS = -m 4711
-+     INSTLIBFLAGS = -m 0644
-+     INSTINCFLAGS = -m 0444
-+     INSTMANFLAGS = -m 0444
-+     INSTDATFLAGS = -m 0444
-+    INSTKMEMFLAGS = -m 4711
-+
-+      PROJECTROOT = /usr
-+
-+      CDEBUGFLAGS = -O2 -fno-strength-reduce -fno-strict-aliasing
-+        CCOPTIONS =
-+
-+      ALLINCLUDES = $(INCLUDES) $(EXTRA_INCLUDES) $(TOP_INCLUDES) $(INSTALLED_INCLUDES) $(STD_INCLUDES)
-+       ALLDEFINES = $(ALLINCLUDES) $(STD_DEFINES) $(PROTO_DEFINES) $(THREADS_DEFINES) $(MODULE_DEFINES) $(DEFINES) $(EXTRA_DEFINES)
-+           CFLAGS = $(CDEBUGFLAGS) $(CCOPTIONS) $(THREADS_CFLAGS) $(MODULE_CFLAGS) $(ALLDEFINES)
-+        LINTFLAGS = $(LINTOPTS) -DLINT $(ALLDEFINES) $(DEPEND_DEFINES)
-+         LDPRELIB = -L$(USRLIBDIR) $(INSTALLED_LIBS)
-+        LDPOSTLIB =
-+        LDOPTIONS = $(CDEBUGFLAGS) $(CCOPTIONS)  $(EXTRA_LDOPTIONS) $(THREADS_LDFLAGS) $(LOCAL_LDFLAGS) $(LDPRELIBS)
-+     CXXLDOPTIONS = $(CXXDEBUGFLAGS) $(CXXOPTIONS) $(EXTRA_LDOPTIONS) $(THREADS_CXXLDFLAGS) $(LOCAL_LDFLAGS) $(LDPRELIBS)
-+
-+           LDLIBS = $(LDPOSTLIBS) $(THREADS_LIBS) $(SYS_LIBRARIES) $(EXTRA_LIBRARIES)
-+
-+           CCLINK = $(CC)
-+
-+          CXXLINK = $(CXX)
-+
-+     LDSTRIPFLAGS = -x
-+   LDCOMBINEFLAGS = -r
-+      DEPENDFLAGS =
-+   DEPEND_DEFINES =
-+
-+# Not sure this belongs here
-+         TKLIBDIR =
-+         TKINCDIR =
-+        TKLIBNAME =
-+        TKLIBRARY = -L$(TKLIBDIR) -l$(TKLIBNAME)
-+        TCLLIBDIR =
-+        TCLINCDIR =
-+       TCLLIBNAME =
-+       TCLLIBRARY = -L$(TCLLIBDIR) -l$(TCLLIBNAME)
-+
-+        MACROFILE = linux.cf
-+           RM_CMD = $(RM)
-+
-+    IMAKE_DEFINES =
-+   IMAKE_WARNINGS = -Wundef
-+
-+         IRULESRC = $(CONFIGDIR)
-+        IMAKE_CMD = $(IMAKE) -DUseInstalled -I$(IRULESRC) $(IMAKE_DEFINES)                $(IMAKE_WARNINGS)
-+
-+     ICONFIGFILES = $(IRULESRC)/Imake.tmpl $(IRULESRC)/X11.tmpl                       $(IRULESRC)/site.def $(IRULESRC)/$(MACROFILE)                   $(IRULESRC)/xfree86.cf $(IRULESRC)/xf86.rules $(IRULESRC)/xorgsite.def $(IRULESRC)/host.def $(EXTRA_ICONFIGFILES)
-+
-+# $Xorg: X11.rules,v 1.4 2000/08/17 19:41:46 cpqbld Exp $
-+
-+# $XFree86: xc/config/cf/X11.rules,v 1.6 2001/01/17 16:22:31 dawes Exp $
-+
-+# ----------------------------------------------------------------------
-+# X Window System Build Parameters and Rules
-+# $XdotOrg: util/cf/X11.tmpl,v 1.54 2006/04/15 15:55:25 herrb Exp $
-+# $Xorg: X11.tmpl,v 1.6 2000/08/17 19:41:46 cpqbld Exp $
-+#
-+#
-+#
-+#
-+# $XFree86: xc/config/cf/X11.tmpl,v 1.248 2004/02/16 04:07:37 dawes Exp $
-+
-+XORGRELSTRING = `echo 6 8 99 903 | sed -e 's/ /./g' -e 's/^/Version\\\ /'`
-+  XORGMANNAME = X Version 11
-+
-+STICKY_DEFINES = -DHAS_STICKY_DIR_BIT
-+
-+FCHOWN_DEFINES = -DHAS_FCHOWN
-+
-+# -----------------------------------------------------------------------
-+# X Window System make variables; these need to be coordinated with rules
-+
-+             XTOP = $(TOP)
-+           BINDIR = /usr/bin
-+     BUILDINCROOT = $(TOP)/exports
-+      BUILDINCDIR = $(BUILDINCROOT)/include
-+      BUILDINCTOP = ../..
-+      BUILDLIBDIR = $(TOP)/exports/lib
-+      BUILDLIBTOP = ../..
-+      BUILDBINDIR = $(TOP)/exports/bin
-+      BUILDBINTOP = ../..
-+   BUILDMODULEDIR = $(BUILDLIBDIR)/modules
-+     BUILDI18NDIR = $(BUILDLIBDIR)/locale
-+   BUILDMODULETOP = $(BUILDLIBTOP)/..
-+    XBUILDINCROOT = $(XTOP)/exports
-+     XBUILDINCDIR = $(XBUILDINCROOT)/include/X11
-+     XBUILDINCTOP = ../../..
-+     XBUILDBINDIR = $(XBUILDINCROOT)/bin
-+           INCDIR = $(INCROOT)
-+           ADMDIR = /usr/adm
-+           LIBDIR = /usr/lib/X11
-+         SHAREDIR = /usr/share/X11
-+       LIBEXECDIR = /usr/libexec
-+        MODULEDIR = $(USRLIBDIR)/modules
-+   TOP_X_INCLUDES =
-+          XBINDIR = $(PROJECTROOT)/bin
-+
-+       INSTSRCDIR = /usr/src
-+
-+        ETCX11DIR = /etc/X11
-+
-+          CONFDIR = $(ETCX11DIR)
-+
-+           DOCDIR = $(LIBDIR)/doc
-+       DOCHTMLDIR = $(DOCDIR)/html
-+         DOCPSDIR = $(DOCDIR)/PostScript
-+        DOCPDFDIR = $(DOCDIR)/PDF
-+          FONTDIR = $(LIBDIR)/fonts
-+     ENCODINGSDIR = $(LIBDIR)/fonts/encodings
-+         XINITDIR = $(LIBDIR)/xinit
-+           XDMDIR = $(LIBDIR)/xdm
-+        XDMVARDIR = $(VARLIBDIR)/xdm
-+           TWMDIR = $(LIBDIR)/twm
-+           XSMDIR = $(LIBDIR)/xsm
-+           NLSDIR = $(LIBDIR)/nls
-+       XLOCALEDIR = $(LIBDIR)/locale
-+      LBXPROXYDIR = $(LIBDIR)/lbxproxy
-+  PROXYMANAGERDIR = $(LIBDIR)/proxymngr
-+        XPRINTDIR = $(LIBDIR)/xserver
-+      XAPPLOADDIR = /usr/share/X11/app-defaults
-+       FONTCFLAGS = -t
-+
-+     INSTAPPFLAGS = $(INSTDATFLAGS)
-+
-+              RGB = $(XBINDIR)/rgb
-+            FONTC = $(XBINDIR)/bdftopcf
-+      MKFONTSCALE = $(XBINDIR)/mkfontscale
-+        MKFONTDIR = $(XBINDIR)/mkfontdir
-+      MKHTMLINDEX = $(XBINDIR)/mkhtmlindex
-+          UCS2ANY = $(XBINDIR)/ucs2any
-+      BDFTRUNCATE = $(XBINDIR)/bdftruncate
-+     UCSMAPPREFIX = $(FONTDIR)/util/map-
-+       XCURSORGEN = $(XBINDIR)/xcursorgen
-+
-+     HTMLINDEXCMD = HtmlIndexCmd
-+
-+       DOCUTILSRC = $(XTOP)/doc/util
-+        CLIENTSRC = $(TOP)/clients
-+          DEMOSRC = $(TOP)/demos
-+       XDOCMACROS = $(DOCUTILSRC)/macros.t
-+       XIDXMACROS = $(DOCUTILSRC)/indexmacros.t
-+       PROGRAMSRC = $(TOP)/programs
-+           LIBSRC = $(XTOP)/lib
-+          FONTSRC = $(XTOP)/fonts
-+     ENCODINGSSRC = $(FONTSRC)/encodings
-+       INCLUDESRC = $(BUILDINCROOT)/include
-+      XINCLUDESRC = $(INCLUDESRC)/X11
-+        SERVERSRC = $(XTOP)/programs/Xserver
-+       CONTRIBSRC = $(XTOP)/../contrib
-+   UNSUPPORTEDSRC = $(XTOP)/unsupported
-+           DOCSRC = $(XTOP)/doc
-+           RGBSRC = $(XTOP)/programs/rgb
-+      BDFTOPCFSRC = $(PROGRAMSRC)/bdftopcf
-+     MKFONTDIRSRC = $(PROGRAMSRC)/mkfontdir
-+    FONTSERVERSRC = $(PROGRAMSRC)/xfs
-+       FONTINCSRC = $(XTOP)/include/fonts
-+        EXTINCSRC = $(XTOP)/include/extensions
-+      FTSOURCEDIR = FreeTypeSrcDir
-+        DRMSRCDIR = $(TOP)/extras/drm
-+       MESASRCDIR = $(TOP)/extras/Mesa
-+  OGLSAMPLESRCDIR = $(TOP)/extras/ogl-sample
-+        PSWRAPSRC = $(XTOP)/config/pswrap
-+     TRANSCOMMSRC = $(LIBSRC)/xtrans
-+   TRANS_INCLUDES = -I$(TRANSCOMMSRC)
-+ CONNECTION_FLAGS = -DUNIXCONN -DTCPCONN $(STICKY_DEFINES) $(FCHOWN_DEFINES) -DIPv6
-+XTRANS_FAILDEFINES = -DFAIL_HARD
-+
-+    VENDORMANNAME = X.Org
-+ VENDORMANVERSION = `echo 6 8 99 903 | sed -e 's/ /./g' -e 's/^/Version\\\ /'`
-+      XORGMANDEFS = -D__xorgversion__="\"$(XORGRELSTRING)\" \"$(XORGMANNAME)\""
-+    VENDORMANDEFS = -D__vendorversion__="$(VENDORMANVERSION) $(VENDORMANNAME)"
-+       VENDORNAME = The X.Org Foundation
-+  VENDORNAMESHORT = X.Org
-+
-+ VENDORWEBSUPPORT = http://wiki.X.Org
-+
-+VENDORSUPPORTDEFS = -D__VENDORDWEBSUPPORT__='"$(VENDORWEBSUPPORT)"'
-+
-+      XKBDEFRULES = xorg
-+  XKBDEFRULESDEFS = -D__XKBDEFRULES__='"$(XKBDEFRULES)"'
-+
-+     XCONFIGFILE = xorg.conf
-+      XCONFIGDIR = $(LIBDIR)
-+        XLOGFILE = Xorg
-+     XSERVERNAME = Xorg
-+
-+       XENVLIBDIR = $(USRLIBDIR)
-+   CLIENTENVSETUP = LD_LIBRARY_PATH=$(XENVLIBDIR) XLOCALEDIR=$(BUILDLIBDIR)/locale
-+
-+# $Xorg: lnxLib.tmpl,v 1.3 2000/08/17 19:41:47 cpqbld Exp $
-+# $XFree86: xc/config/cf/lnxLib.tmpl,v 3.19 2003/10/15 22:47:48 herrb Exp $
-+
-+          XLIBSRC = $(LIBSRC)/X11
-+
-+SOXLIBREV = 6.2
-+DEPXONLYLIB =
-+XONLYLIB =  -lX11
-+
-+LINTXONLY = $(LINTLIBDIR)/llib-lX11.ln
-+
-+      DEPXLIBONLY = $(DEPXONLYLIB)
-+         XLIBONLY = $(XONLYLIB)
-+     LINTXONLYLIB = $(LINTXONLY)
-+
-+      XEXTLIBSRC = $(LIBSRC)/Xext
-+
-+SOXEXTREV = 6.4
-+DEPEXTENSIONLIB =
-+EXTENSIONLIB =  -lXext
-+
-+LINTEXTENSION = $(LINTLIBDIR)/llib-lXext.ln
-+
-+LINTEXTENSIONLIB = $(LINTEXTENSION)
-+          DEPXLIB = $(DEPEXTENSIONLIB) $(DEPXONLYLIB)
-+             XLIB = $(EXTENSIONLIB) $(XONLYLIB)
-+         LINTXLIB = $(LINTXONLYLIB)
-+
-+    XSSLIBSRC = $(LIBSRC)/Xss
-+
-+SOXSSREV = 1.0
-+DEPXSSLIB =
-+XSSLIB =  -lXss
-+
-+LINTXSS = $(LINTLIBDIR)/llib-lXss.ln
-+
-+    XXF86MISCLIBSRC = $(LIBSRC)/Xxf86misc
-+
-+SOXXF86MISCREV = 1.1
-+DEPXXF86MISCLIB =
-+XXF86MISCLIB =  -lXxf86misc
-+
-+LINTXXF86MISC = $(LINTLIBDIR)/llib-lXxf86misc.ln
-+
-+    XXF86VMLIBSRC = $(LIBSRC)/Xxf86vm
-+
-+SOXXF86VMREV = 1.0
-+DEPXXF86VMLIB =
-+XXF86VMLIB =  -lXxf86vm
-+
-+LINTXXF86VM = $(LINTLIBDIR)/llib-lXxf86vm.ln
-+
-+    XXF86DGALIBSRC = $(LIBSRC)/Xxf86dga
-+
-+SOXXF86DGAREV = 1.0
-+DEPXXF86DGALIB =
-+XXF86DGALIB =  -lXxf86dga
-+
-+LINTXXF86DGA = $(LINTLIBDIR)/llib-lXxf86dga.ln
-+
-+    XXF86RUSHLIBSRC = $(LIBSRC)/Xxf86rush
-+
-+SOXXF86RUSHREV = 1.0
-+DEPXXF86RUSHLIB =
-+XXF86RUSHLIB =  -lXxf86rush
-+
-+LINTXXF86RUSH = $(LINTLIBDIR)/llib-lXxf86rush.ln
-+
-+    XVLIBSRC = $(LIBSRC)/Xv
-+
-+SOXVREV = 1.0
-+DEPXVLIB =
-+XVLIB =  -lXv
-+
-+LINTXV = $(LINTLIBDIR)/llib-lXv.ln
-+
-+    XVMCLIBSRC = $(LIBSRC)/XvMC
-+
-+SOXVMCREV = 1.0
-+DEPXVMCLIB =
-+XVMCLIB =  -lXvMC
-+
-+LINTXVMC = $(LINTLIBDIR)/llib-lXvMC.ln
-+
-+    XINERAMALIBSRC = $(LIBSRC)/Xinerama
-+
-+SOXINERAMAREV = 1.0
-+DEPXINERAMALIB =
-+XINERAMALIB =  -lXinerama
-+
-+LINTXINERAMA = $(LINTLIBDIR)/llib-lXinerama.ln
-+
-+    XRESLIBSRC = $(LIBSRC)/XRes
-+
-+SOXRESREV = 1.0
-+DEPXRESLIB =
-+XRESLIB =  -lXRes
-+
-+LINTXRES = $(LINTLIBDIR)/llib-lXRes.ln
-+
-+    DMXLIBSRC = $(LIBSRC)/dmx
-+
-+DEPDMXLIB = $(USRLIBDIR)/libdmx.a
-+DMXLIB =  -ldmx
-+
-+LINTDMX = $(LINTLIBDIR)/llib-ldmx.ln
-+
-+    DPSLIBSRC = $(LIBSRC)/dps
-+
-+DEPDPSLIB = $(USRLIBDIR)/libdps.a
-+DPSLIB =  -ldps
-+
-+LINTDPS = $(LINTLIBDIR)/llib-ldps.ln
-+
-+    DPSTKLIBSRC = $(LIBSRC)/dpstk
-+
-+DEPDPSTKLIB = $(USRLIBDIR)/libdpstk.a
-+DPSTKLIB =  -ldpstk
-+
-+LINTDPSTK = $(LINTLIBDIR)/llib-ldpstk.ln
-+
-+    PSRESLIBSRC = $(LIBSRC)/psres
-+
-+DEPPSRESLIB = $(USRLIBDIR)/libpsres.a
-+PSRESLIB =  -lpsres
-+
-+LINTPSRES = $(LINTLIBDIR)/llib-lpsres.ln
-+
-+    GLULIBSRC = $(LIBSRC)/GLU
-+
-+SOGLUREV = 1.3
-+DEPGLULIB =
-+GLULIB =  -lGLU
-+
-+LINTGLU = $(LINTLIBDIR)/llib-lGLU.ln
-+
-+    GLXLIBSRC = $(LIBSRC)/GL
-+
-+SOGLREV = 1.2
-+DEPGLXLIB =
-+GLXLIB =  -lGL
-+
-+LINTGLX = $(LINTLIBDIR)/llib-lGL.ln
-+
-+    GLWIDGETSRC = $(LIBSRC)/GLw
-+
-+SOGLWREV = 1.0
-+DEPGLWLIB =
-+GLWLIB =  -lGLw
-+
-+LINTGLW = $(LINTLIBDIR)/llib-lGLw.ln
-+
-+    XRENDERLIBSRC = $(LIBSRC)/Xrender
-+
-+SOXRENDERREV = 1.2.2
-+DEPXRENDERLIB =
-+XRENDERLIB =  -lXrender
-+
-+LINTXRENDER = $(LINTLIBDIR)/llib-lXrender.ln
-+
-+    XRANDRLIBSRC = $(LIBSRC)/Xrandr
-+
-+SOXRANDRREV = 2.0
-+DEPXRANDRLIB =
-+XRANDRLIB =  -lXrandr
-+
-+LINTXRANDR = $(LINTLIBDIR)/llib-lXrandr.ln
-+
-+    XFIXESLIBSRC = $(LIBSRC)/Xfixes
-+
-+SOXFIXESREV = 3.0
-+DEPXFIXESLIB =
-+XFIXESLIB =  -lXfixes
-+
-+LINTXFIXES = $(LINTLIBDIR)/llib-lXfixes.ln
-+
-+   XDAMAGELIBSRC = $(LIBSRC)/Xdamage
-+
-+SOXDAMAGEREV = 1.0
-+DEPXDAMAGELIB =
-+XDAMAGELIB =  -lXdamage
-+
-+LINTXDAMAGE = $(LINTLIBDIR)/llib-lXdamage.ln
-+
-+XCOMPOSITELIBSRC = $(LIBSRC)/Xcomposite
-+
-+SOXCOMPOSITEREV = 1.0
-+DEPXCOMPOSITELIB =
-+XCOMPOSITELIB =  -lXcomposite
-+
-+LINTXCOMPOSITE = $(LINTLIBDIR)/llib-lXcomposite.ln
-+
-+XEVIELIBSRC = $(LIBSRC)/Xevie
-+
-+SOXEVIEREV = 1.0
-+DEPXEVIELIB =
-+XEVIELIB =  -lXevie
-+
-+LINTXEVIE = $(LINTLIBDIR)/llib-lXevie.ln
-+
-+   XCURSORLIBSRC = $(LIBSRC)/Xcursor
-+
-+SOXCURSORREV = 1.0.2
-+DEPXCURSORLIB =
-+XCURSORLIB =  -lXcursor
-+
-+LINTXCURSOR = $(LINTLIBDIR)/llib-lXcursor.ln
-+
-+   APPLEWMLIBSRC = $(LIBSRC)/apple
-+
-+DEPAPPLEWMLIB = $(USRLIBDIR)/libAppleWM.a
-+APPLEWMLIB =  -lAppleWM
-+
-+LINTAPPLEWM = $(LINTLIBDIR)/llib-lAppleWM.ln
-+
-+   WINDOWSWMLIBSRC = $(LIBSRC)/windows
-+
-+DEPWINDOWSWMLIB = $(USRLIBDIR)/libWindowsWM.a
-+WINDOWSWMLIB =  -lWindowsWM
-+
-+LINTWINDOWSWM = $(LINTLIBDIR)/llib-lWindowsWM.ln
-+
-+    XFONTCACHELIBSRC = $(LIBSRC)/Xfontcache
-+
-+SOXFONTCACHEREV = 1.2
-+DEPXFONTCACHELIB =
-+XFONTCACHELIB =  -lXfontcache
-+
-+LINTXFONTCACHE = $(LINTLIBDIR)/llib-lXfontcache.ln
-+
-+         XAUTHSRC = $(LIBSRC)/Xau
-+
-+SOXAUTHREV = 6.0
-+DEPXAUTHLIB =
-+XAUTHLIB =  -lXau
-+
-+LINTXAUTH = $(LINTLIBDIR)/llib-lXau.ln
-+
-+      XDMCPLIBSRC = $(LIBSRC)/Xdmcp
-+
-+SOXDMCPREV = 6.0
-+DEPXDMCPLIB =
-+XDMCPLIB =  -lXdmcp
-+
-+LINTXDMCP = $(LINTLIBDIR)/llib-lXdmcp.ln
-+
-+           XMUSRC = $(LIBSRC)/Xmu
-+
-+SOXMUREV = 6.2
-+DEPXMULIB =
-+XMULIB =  -lXmu
-+
-+LINTXMU = $(LINTLIBDIR)/llib-lXmu.ln
-+
-+           XMUUSRC = $(LIBSRC)/Xmuu
-+
-+SOXMUUREV = 1.0
-+DEPXMUULIB =
-+XMUULIB =  -lXmuu
-+
-+LINTXMUU = $(LINTLIBDIR)/llib-lXmuu.ln
-+
-+       OLDXLIBSRC = $(LIBSRC)/oldX
-+
-+DEPOLDXLIB = $(USRLIBDIR)/liboldX.a
-+OLDXLIB =  -loldX
-+
-+LINTOLDX = $(LINTLIBDIR)/llib-loldX.ln
-+
-+         XPLIBSRC = $(LIBSRC)/Xp
-+
-+SOXPREV = 6.2
-+DEPXPLIB =
-+XPLIB =  -lXp
-+
-+LINTXP = $(LINTLIBDIR)/llib-lXp.ln
-+
-+       TOOLKITSRC = $(LIBSRC)/Xt
-+
-+SOXTREV = 6.0
-+DEPXTOOLONLYLIB =
-+XTOOLONLYLIB =  -lXt
-+
-+LINTXTOOLONLY = $(LINTLIBDIR)/llib-lXt.ln
-+
-+      DEPXTOOLLIB = $(DEPXTOOLONLYLIB) $(DEPSMLIB) $(DEPICELIB)
-+         XTOOLLIB = $(XTOOLONLYLIB) $(SMLIB) $(ICELIB)
-+     LINTXTOOLLIB = $(LINTXTOOLONLYLIB)
-+
-+       XALIBSRC = $(LIBSRC)/Xa
-+
-+SOXAREV = 1.0
-+DEPXALIB =
-+XALIB =  -lXa
-+
-+LINTXA = $(LINTLIBDIR)/llib-lXa.ln
-+
-+       AWIDGETSRC = $(LIBSRC)/Xaw
-+
-+SOXAWREV = 8.0
-+DEPXAWLIB =
-+XAWLIB =  -lXaw
-+
-+LINTXAW = $(LINTLIBDIR)/llib-lXaw.ln
-+
-+       AWIDGET7SRC = $(LIBSRC)/Xaw7
-+
-+SOXAW7REV = 7.0
-+DEPXAW7LIB =
-+XAW7LIB =  -lXaw
-+
-+LINTXAW7 = $(LINTLIBDIR)/llib-lXaw.ln
-+
-+       AWIDGET6SRC = $(LIBSRC)/Xaw6
-+
-+SOXAW6REV = 6.1
-+DEPXAW6LIB =
-+XAW6LIB =  -lXaw
-+
-+LINTXAW6 = $(LINTLIBDIR)/llib-lXaw.ln
-+
-+         XILIBSRC = $(LIBSRC)/Xi
-+
-+SOXINPUTREV = 6.0
-+DEPXILIB =
-+XILIB =  -lXi
-+
-+LINTXI = $(LINTLIBDIR)/llib-lXi.ln
-+
-+      XTESTLIBSRC = $(LIBSRC)/Xtst
-+
-+SOXTESTREV = 6.1
-+DEPXTESTLIB =
-+XTESTLIB =  -lXtst
-+
-+LINTXTEST = $(LINTLIBDIR)/llib-lXtst.ln
-+
-+DEPXBSDLIB = $(USRLIBDIR)/libXbsd.a
-+XBSDLIB =  -lXbsd
-+
-+LINTXBSD = $(LINTLIBDIR)/llib-lXbsd.ln
-+
-+           ICESRC = $(LIBSRC)/ICE
-+
-+SOICEREV = 6.4
-+DEPICELIB =
-+ICELIB =  -lICE
-+
-+LINTICE = $(LINTLIBDIR)/llib-lICE.ln
-+
-+            SMSRC = $(LIBSRC)/SM
-+
-+SOSMREV = 6.0
-+DEPSMLIB =
-+SMLIB =  -lSM
-+
-+LINTSM = $(LINTLIBDIR)/llib-lSM.ln
-+
-+           XKEYSRC = $(LIBSRC)/Xkey
-+
-+SOXKEYREV = 6.0
-+DEPXKEYLIB =
-+XKEYLIB =  -lXkey
-+
-+LINTXKEY = $(LINTLIBDIR)/llib-lXkey.ln
-+
-+         FSLIBSRC = $(LIBSRC)/FS
-+
-+SOFSREV = 6.0
-+DEPFSLIB =
-+FSLIB =  -lFS
-+
-+LINTFS = $(LINTLIBDIR)/llib-lFS.ln
-+
-+         FONTLIBSRC = $(LIBSRC)/font
-+
-+SOFONTREV = 1.5
-+DEPFONTLIB =
-+FONTLIB = -L$(FREETYPELIBDIR) -L$(FONTLIBSRC)  -lXfont
-+
-+LINTXFONT = $(LINTLIBDIR)/llib-lXfont.ln
-+#
-+SOFONTREV = 1.5
-+DEPXFONTLIB =
-+XFONTLIB =  -lXfont
-+
-+LINTXFONT = $(LINTLIBDIR)/llib-lXfont.ln
-+
-+     FONTSTUBLIBSRC = $(FONTLIBSRC)/stubs
-+
-+DEPFONTSTUBLIB = $(USRLIBDIR)/libfntstubs.a
-+FONTSTUBLIB =  -lfntstubs
-+
-+LINTFONTSTUB = $(LINTLIBDIR)/llib-lfntstubs.ln
-+         DEPFONTLIB = $(DEPXFONTLIB) $(DEPFONTSTUBLIB)
-+            FONTLIB = $(XFONTLIB) $(FONTSTUBLIB) $(FREETYPE2LIB)
-+
-+         FONTENCLIBSRC = $(LIBSRC)/fontenc
-+
-+SOFONTENCREV = 1.0
-+DEPXFONTENCLIB =
-+XFONTENCLIB =  -lfontenc
-+
-+LINTXFONTENC = $(LINTLIBDIR)/llib-lfontenc.ln
-+
-+          XPMLIBSRC = $(LIBSRC)/Xpm
-+
-+SOXPMREV = 4.11
-+DEPXPMLIB =
-+XPMLIB =  -lXpm
-+
-+LINTXPM = $(LINTLIBDIR)/llib-lXpm.ln
-+
-+FREETYPE2DIR = /usr
-+FREETYPE2LIBDIR = /usr/lib
-+FREETYPE2INCDIR = /usr/include
-+
-+FREETYPE2LIB = -lfreetype
-+
-+FREETYPE2INCLUDES = -I$(FREETYPE2INCDIR)/freetype2 -I$(FREETYPE2INCDIR)/freetype2/config
-+
-+FREETYPE2DEFINES = -DFREETYPE2
-+
-+          EXPATLIBSRC = $(LIBSRC)/expat
-+
-+SOEXPATREV = 0.4
-+DEPEXPATLIB =
-+EXPATLIB =  -lexpat
-+
-+LINTEXPAT = $(LINTLIBDIR)/llib-lexpat.ln
-+
-+EXPATDIR = /usr
-+EXPATLIBDIR = /usr/lib
-+EXPATINCDIR = /usr/include
-+
-+EXPATINCLUDES =
-+
-+EXPATLIB = -lexpat
-+
-+EXPATDEFINES = -DEXPAT
-+
-+          XFT1LIBSRC = $(LIBSRC)/Xft1
-+
-+SOXFT1REV = 1.1
-+DEPXFT1LIB =
-+XFT1LIB =  -lXft
-+
-+LINTXFT1 = $(LINTLIBDIR)/llib-lXft.ln
-+
-+          XFTLIBSRC = $(LIBSRC)/Xft
-+
-+SOXFTREV = 2.1.2
-+DEPXFTLIB =
-+XFTLIB =  -lXft
-+
-+LINTXFT = $(LINTLIBDIR)/llib-lXft.ln
-+
-+          FONTCONFIGLIBSRC = $(LIBSRC)/fontconfig
-+
-+SOFONTCONFIGREV = 1.0.4
-+DEPFONTCONFIGLIB =
-+FONTCONFIGLIB =  -lfontconfig
-+
-+LINTFONTCONFIG = $(LINTLIBDIR)/llib-lfontconfig.ln
-+
-+FONTCONFIGINCDIR=$(INCDIR)
-+
-+FONTCONFIGINCLUDES = -I$(FONTCONFIGINCDIR)
-+
-+FCCACHE = $(BINDIR)/fc-cache
-+
-+FONTCONFIGDEFINES = -DFONTCONFIG
-+
-+XFTINCLUDES=$(FONTCONFIGINCLUDES) $(FREETYPE2INCLUDES)
-+
-+LIBPNGINCDIR = /usr/include
-+
-+LIBPNGINC=
-+
-+LIBPNGDIR = /usr
-+LIBPNGLIBDIR = /usr/lib
-+LIBPNGINCDIR = /usr/include
-+
-+LIBPNGLIB = -lpng
-+
-+    XKBFILELIBSRC = $(LIBSRC)/xkbfile
-+
-+SOXKBFILEREV =  1.0
-+DEPXKBFILELIB =
-+XKBFILELIB =  -lxkbfile
-+
-+LINTXKBFILE = $(LINTLIBDIR)/llib-lxkbfile.ln
-+
-+     XKBCOMPCMD = $(XBINDIR)/xkbcomp
-+
-+    XKBUILIBSRC = $(LIBSRC)/xkbui
-+
-+SOXKBUIREV =  1.0
-+DEPXKBUILIB =
-+XKBUILIB =  -lxkbui
-+
-+LINTXKBUI = $(LINTLIBDIR)/llib-lxkbui.ln
-+
-+EXTRAXAWREQS =
-+
-+EXTRAXAWCLIENTDEPLIBS =
-+
-+EXTRAXAWCLIENTLIBS =
-+
-+        XTRAPLIBSRC = $(LIBSRC)/XTrap
-+
-+SOXTRAPREV = 6.4
-+DEPXTRAPLIB =
-+XTRAPLIB =  -lXTrap
-+
-+LINTXTRAP = $(LINTLIBDIR)/llib-lXTrap.ln
-+
-+          DEPLIBS = $(DEPXAWLIB) $(DEPXMULIB) $(DEPXTOOLLIB) $(DEPXLIB)
-+
-+         DEPLIBS1 = $(DEPLIBS)
-+         DEPLIBS2 = $(DEPLIBS)
-+         DEPLIBS3 = $(DEPLIBS)
-+         DEPLIBS4 = $(DEPLIBS)
-+         DEPLIBS5 = $(DEPLIBS)
-+         DEPLIBS6 = $(DEPLIBS)
-+         DEPLIBS7 = $(DEPLIBS)
-+         DEPLIBS8 = $(DEPLIBS)
-+         DEPLIBS9 = $(DEPLIBS)
-+         DEPLIBS10 = $(DEPLIBS)
-+
-+       FCPRELOADPATTERN = libfontconfig.so.?
-+
-+      XFTPRELOADPATTERN = libXft.so.?
-+  XRENDERPRELOADPATTERN = libXrender.so.?
-+    XFONTPRELOADPATTERN = libXfont*.so.?
-+
-+XMULIBONLY = -lXmu
-+XMULIB = $(XMULIBONLY) $(XTOOLLIB) $(XLIB)
-+
-+        CONFIGDIR = /usr/share/X11/config
-+
-+    USRLIBDIRPATH = $(USRLIBDIR)
-+        LDPRELIBS = -L$(USRLIBDIR)  $(INSTALLED_LIBS)
-+       LDPOSTLIBS =
-+     TOP_INCLUDES = -I$(INCROOT) $(TOP_X_INCLUDES)
-+  PROJECT_DEFINES =
-+   VENDOR_DEFINES = -DXVENDORNAME='"$(VENDORNAME)"' -DXVENDORNAMESHORT='"$(VENDORNAMESHORT)"'
-+
-+CXXPROJECT_DEFINES =
-+
-+# ----------------------------------------------------------------------
-+# start of Imakefile
-+
-+# Remove the next line if you want genuine Xaw instead of Xaw3d
-+
-+# Remove the next line if you don't want to enable XTEST support
-+
-+# Remove the next line if you want to disable internationalization
-+
-+SRCS = xvkbd.c findwidget.c
-+OBJS = xvkbd.o findwidget.o
-+DEPLIBS = $(DEPXAWLIB) $(DEPXMULIB) $(DEPXTOOLLIB) $(DEPXPMLIB) $(EXTRAXAWCLIENTDEPLIBS) $(DEPXLIB)
-+SYS_LIBRARIES = $(XAWLIB) $(XMULIBONLY) $(XTOOLLIB) $(XPMLIB) $(EXTRAXAWCLIENTLIBS) $(XLIB)
-+
-+D_XTEST = -DUSE_XTEST
-+SYS_LIBRARIES = $(XAWLIB) $(XMULIBONLY) $(XTOOLLIB) $(XPMLIB) $(EXTRAXAWCLIENTLIBS) $(XLIB) -lXtst
-+
-+D_I18N = -DUSE_I18N
-+
-+DEFINES = $(D_XAW3D) $(D_XTEST) $(D_I18N)
-+
-+xvkbd.o:       xvkbd.c resources.h XVkbd-common.h
-+      $(RM) $@
-+              $(CC) -c $(CFLAGS)   $*.c
-+
-+        PROGRAM = xvkbd
-+
-+all:: xvkbd
-+
-+xvkbd: $(OBJS) $(DEPLIBS)
-+      $(RM) $@
-+      $(CCLINK) -o $@ $(LDOPTIONS) $(OBJS) $(LOCAL_LIBRARIES) $(LDLIBS)  $(EXTRA_LOAD_FLAGS)
-+
-+install:: xvkbd
-+      @if [ -d $(DESTDIR)$(BINDIR) ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(BINDIR) ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(BINDIR)); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(BINDIR)); \
-+      fi
-+      $(INSTALL) $(INSTALLFLAGS) $(INSTPGMFLAGS)  xvkbd $(DESTDIR)$(BINDIR)/xvkbd
-+
-+all:: xvkbd.$(MANNEWSUFFIX)
-+
-+xvkbd.$(MANNEWSUFFIX): xvkbd.$(MANSRCSUFFIX)
-+      $(RM) $@
-+      if test -z "$(PREPROCESSMANPAGES)" ; then \
-+         cd `dirname xvkbd` && \
-+         $(LN) `basename xvkbd.$(MANSRCSUFFIX)` `basename $@`; \
-+      else \
-+                   $(RAWCPP)  $(MANDEFS) $(EXTRAMANDEFS) \
-+           < xvkbd.$(MANSRCSUFFIX) | sed -e '/^#  *[0-9][0-9]*  *.*$$/d'                      -e '/^#line  *[0-9][0-9]*  *.*$$/d'                     -e '/^[         ]*XCOMM$$/s/XCOMM/#/'                   -e '/^[         ]*XCOMM[^a-zA-Z0-9_]/s/XCOMM/#/'                        -e '/^[         ]*XHASH/s/XHASH/#/'                     -e '/\@\@$$/s/\@\@$$/\\/' >$@; \
-+      fi
-+
-+cleandir::
-+      $(RM) xvkbd.$(MANNEWSUFFIX)
-+
-+install.man:: xvkbd.$(MANNEWSUFFIX)
-+      @if [ -d $(DESTDIR)$(MANDIR) ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(MANDIR) ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(MANDIR)); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(MANDIR)); \
-+      fi
-+      $(INSTALL) $(INSTALLFLAGS) $(INSTMANFLAGS) xvkbd.$(MANNEWSUFFIX) $(DESTDIR)$(MANDIR)/xvkbd.$(MANSUFFIX)
-+
-+depend::
-+      $(DEPEND) $(DEPENDFLAGS) -- $(ALLDEFINES) $(DEPEND_DEFINES) -- $(SRCS)
-+
-+lint:
-+      $(LINT) $(LINTFLAGS) $(SRCS) $(LINTLIBS)
-+lint1:
-+      $(LINT) $(LINTFLAGS) $(FILE) $(LINTLIBS)
-+
-+cleandir::
-+      $(RM) xvkbd
-+
-+install::
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
-+      fi
-+      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
-+      fi
-+      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
-+      fi
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+        RELPATH=`echo $(LIBDIR)/. | \
-+              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
-+        cd $(DESTDIR)$(LIBDIR)/.; \
-+        if [ -d app-defaults -a ! -h app-defaults ]; then \
-+          (cd app-defaults; tar cf - . | \
-+              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
-+               tar xf -; exit 0); exit 0); \
-+        fi; \
-+        $(RM) -r app-defaults; \
-+        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
-+      fi
-+
-+install:: XVkbd.ad
-+      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
-+      fi
-+      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd
-+
-+install::
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
-+      fi
-+      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
-+      fi
-+      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
-+      fi
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+        RELPATH=`echo $(LIBDIR)/. | \
-+              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
-+        cd $(DESTDIR)$(LIBDIR)/.; \
-+        if [ -d app-defaults -a ! -h app-defaults ]; then \
-+          (cd app-defaults; tar cf - . | \
-+              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
-+               tar xf -; exit 0); exit 0); \
-+        fi; \
-+        $(RM) -r app-defaults; \
-+        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
-+      fi
-+
-+install:: XVkbd-belgian.ad
-+      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
-+      fi
-+      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-belgian.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-belgian
-+
-+install::
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
-+      fi
-+      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
-+      fi
-+      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
-+      fi
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+        RELPATH=`echo $(LIBDIR)/. | \
-+              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
-+        cd $(DESTDIR)$(LIBDIR)/.; \
-+        if [ -d app-defaults -a ! -h app-defaults ]; then \
-+          (cd app-defaults; tar cf - . | \
-+              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
-+               tar xf -; exit 0); exit 0); \
-+        fi; \
-+        $(RM) -r app-defaults; \
-+        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
-+      fi
-+
-+install:: XVkbd-common.ad
-+      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
-+      fi
-+      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-common.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-common
-+
-+install::
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
-+      fi
-+      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
-+      fi
-+      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
-+      fi
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+        RELPATH=`echo $(LIBDIR)/. | \
-+              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
-+        cd $(DESTDIR)$(LIBDIR)/.; \
-+        if [ -d app-defaults -a ! -h app-defaults ]; then \
-+          (cd app-defaults; tar cf - . | \
-+              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
-+               tar xf -; exit 0); exit 0); \
-+        fi; \
-+        $(RM) -r app-defaults; \
-+        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
-+      fi
-+
-+install:: XVkbd-danish.ad
-+      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
-+      fi
-+      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-danish.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-danish
-+
-+install::
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
-+      fi
-+      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
-+      fi
-+      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
-+      fi
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+        RELPATH=`echo $(LIBDIR)/. | \
-+              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
-+        cd $(DESTDIR)$(LIBDIR)/.; \
-+        if [ -d app-defaults -a ! -h app-defaults ]; then \
-+          (cd app-defaults; tar cf - . | \
-+              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
-+               tar xf -; exit 0); exit 0); \
-+        fi; \
-+        $(RM) -r app-defaults; \
-+        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
-+      fi
-+
-+install:: XVkbd-fitaly.ad
-+      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
-+      fi
-+      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-fitaly.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-fitaly
-+
-+install::
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
-+      fi
-+      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
-+      fi
-+      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
-+      fi
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+        RELPATH=`echo $(LIBDIR)/. | \
-+              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
-+        cd $(DESTDIR)$(LIBDIR)/.; \
-+        if [ -d app-defaults -a ! -h app-defaults ]; then \
-+          (cd app-defaults; tar cf - . | \
-+              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
-+               tar xf -; exit 0); exit 0); \
-+        fi; \
-+        $(RM) -r app-defaults; \
-+        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
-+      fi
-+
-+install:: XVkbd-french.ad
-+      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
-+      fi
-+      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-french.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-french
-+
-+install::
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
-+      fi
-+      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
-+      fi
-+      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
-+      fi
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+        RELPATH=`echo $(LIBDIR)/. | \
-+              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
-+        cd $(DESTDIR)$(LIBDIR)/.; \
-+        if [ -d app-defaults -a ! -h app-defaults ]; then \
-+          (cd app-defaults; tar cf - . | \
-+              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
-+               tar xf -; exit 0); exit 0); \
-+        fi; \
-+        $(RM) -r app-defaults; \
-+        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
-+      fi
-+
-+install:: XVkbd-french2.ad
-+      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
-+      fi
-+      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-french2.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-french2
-+
-+install::
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
-+      fi
-+      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
-+      fi
-+      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
-+      fi
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+        RELPATH=`echo $(LIBDIR)/. | \
-+              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
-+        cd $(DESTDIR)$(LIBDIR)/.; \
-+        if [ -d app-defaults -a ! -h app-defaults ]; then \
-+          (cd app-defaults; tar cf - . | \
-+              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
-+               tar xf -; exit 0); exit 0); \
-+        fi; \
-+        $(RM) -r app-defaults; \
-+        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
-+      fi
-+
-+install:: XVkbd-german.ad
-+      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
-+      fi
-+      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-german.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-german
-+
-+install::
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
-+      fi
-+      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
-+      fi
-+      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
-+      fi
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+        RELPATH=`echo $(LIBDIR)/. | \
-+              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
-+        cd $(DESTDIR)$(LIBDIR)/.; \
-+        if [ -d app-defaults -a ! -h app-defaults ]; then \
-+          (cd app-defaults; tar cf - . | \
-+              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
-+               tar xf -; exit 0); exit 0); \
-+        fi; \
-+        $(RM) -r app-defaults; \
-+        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
-+      fi
-+
-+install:: XVkbd-greek.ad
-+      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
-+      fi
-+      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-greek.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-greek
-+
-+install::
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
-+      fi
-+      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
-+      fi
-+      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
-+      fi
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+        RELPATH=`echo $(LIBDIR)/. | \
-+              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
-+        cd $(DESTDIR)$(LIBDIR)/.; \
-+        if [ -d app-defaults -a ! -h app-defaults ]; then \
-+          (cd app-defaults; tar cf - . | \
-+              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
-+               tar xf -; exit 0); exit 0); \
-+        fi; \
-+        $(RM) -r app-defaults; \
-+        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
-+      fi
-+
-+install:: XVkbd-hebrew.ad
-+      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
-+      fi
-+      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-hebrew.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-hebrew
-+
-+install::
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
-+      fi
-+      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
-+      fi
-+      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
-+      fi
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+        RELPATH=`echo $(LIBDIR)/. | \
-+              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
-+        cd $(DESTDIR)$(LIBDIR)/.; \
-+        if [ -d app-defaults -a ! -h app-defaults ]; then \
-+          (cd app-defaults; tar cf - . | \
-+              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
-+               tar xf -; exit 0); exit 0); \
-+        fi; \
-+        $(RM) -r app-defaults; \
-+        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
-+      fi
-+
-+install:: XVkbd-icelandic.ad
-+      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
-+      fi
-+      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-icelandic.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-icelandic
-+
-+install::
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
-+      fi
-+      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
-+      fi
-+      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
-+      fi
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+        RELPATH=`echo $(LIBDIR)/. | \
-+              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
-+        cd $(DESTDIR)$(LIBDIR)/.; \
-+        if [ -d app-defaults -a ! -h app-defaults ]; then \
-+          (cd app-defaults; tar cf - . | \
-+              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
-+               tar xf -; exit 0); exit 0); \
-+        fi; \
-+        $(RM) -r app-defaults; \
-+        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
-+      fi
-+
-+install:: XVkbd-italian.ad
-+      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
-+      fi
-+      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-italian.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-italian
-+
-+install::
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
-+      fi
-+      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
-+      fi
-+      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
-+      fi
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+        RELPATH=`echo $(LIBDIR)/. | \
-+              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
-+        cd $(DESTDIR)$(LIBDIR)/.; \
-+        if [ -d app-defaults -a ! -h app-defaults ]; then \
-+          (cd app-defaults; tar cf - . | \
-+              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
-+               tar xf -; exit 0); exit 0); \
-+        fi; \
-+        $(RM) -r app-defaults; \
-+        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
-+      fi
-+
-+install:: XVkbd-jisx6002.ad
-+      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
-+      fi
-+      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-jisx6002.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-jisx6002
-+
-+install::
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
-+      fi
-+      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
-+      fi
-+      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
-+      fi
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+        RELPATH=`echo $(LIBDIR)/. | \
-+              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
-+        cd $(DESTDIR)$(LIBDIR)/.; \
-+        if [ -d app-defaults -a ! -h app-defaults ]; then \
-+          (cd app-defaults; tar cf - . | \
-+              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
-+               tar xf -; exit 0); exit 0); \
-+        fi; \
-+        $(RM) -r app-defaults; \
-+        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
-+      fi
-+
-+install:: XVkbd-jisx6004.ad
-+      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
-+      fi
-+      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-jisx6004.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-jisx6004
-+
-+install::
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
-+      fi
-+      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
-+      fi
-+      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
-+      fi
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+        RELPATH=`echo $(LIBDIR)/. | \
-+              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
-+        cd $(DESTDIR)$(LIBDIR)/.; \
-+        if [ -d app-defaults -a ! -h app-defaults ]; then \
-+          (cd app-defaults; tar cf - . | \
-+              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
-+               tar xf -; exit 0); exit 0); \
-+        fi; \
-+        $(RM) -r app-defaults; \
-+        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
-+      fi
-+
-+install:: XVkbd-korean.ad
-+      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
-+      fi
-+      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-korean.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-korean
-+
-+install::
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
-+      fi
-+      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
-+      fi
-+      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
-+      fi
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+        RELPATH=`echo $(LIBDIR)/. | \
-+              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
-+        cd $(DESTDIR)$(LIBDIR)/.; \
-+        if [ -d app-defaults -a ! -h app-defaults ]; then \
-+          (cd app-defaults; tar cf - . | \
-+              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
-+               tar xf -; exit 0); exit 0); \
-+        fi; \
-+        $(RM) -r app-defaults; \
-+        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
-+      fi
-+
-+install:: XVkbd-latin1.ad
-+      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
-+      fi
-+      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-latin1.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-latin1
-+
-+install::
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
-+      fi
-+      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
-+      fi
-+      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
-+      fi
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+        RELPATH=`echo $(LIBDIR)/. | \
-+              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
-+        cd $(DESTDIR)$(LIBDIR)/.; \
-+        if [ -d app-defaults -a ! -h app-defaults ]; then \
-+          (cd app-defaults; tar cf - . | \
-+              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
-+               tar xf -; exit 0); exit 0); \
-+        fi; \
-+        $(RM) -r app-defaults; \
-+        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
-+      fi
-+
-+install:: XVkbd-norwegian.ad
-+      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
-+      fi
-+      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-norwegian.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-norwegian
-+
-+install::
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
-+      fi
-+      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
-+      fi
-+      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
-+      fi
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+        RELPATH=`echo $(LIBDIR)/. | \
-+              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
-+        cd $(DESTDIR)$(LIBDIR)/.; \
-+        if [ -d app-defaults -a ! -h app-defaults ]; then \
-+          (cd app-defaults; tar cf - . | \
-+              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
-+               tar xf -; exit 0); exit 0); \
-+        fi; \
-+        $(RM) -r app-defaults; \
-+        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
-+      fi
-+
-+install:: XVkbd-portuguese.ad
-+      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
-+      fi
-+      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-portuguese.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-portuguese
-+
-+install::
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
-+      fi
-+      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
-+      fi
-+      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
-+      fi
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+        RELPATH=`echo $(LIBDIR)/. | \
-+              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
-+        cd $(DESTDIR)$(LIBDIR)/.; \
-+        if [ -d app-defaults -a ! -h app-defaults ]; then \
-+          (cd app-defaults; tar cf - . | \
-+              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
-+               tar xf -; exit 0); exit 0); \
-+        fi; \
-+        $(RM) -r app-defaults; \
-+        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
-+      fi
-+
-+install:: XVkbd-slovene.ad
-+      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
-+      fi
-+      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-slovene.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-slovene
-+
-+install::
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
-+      fi
-+      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
-+      fi
-+      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
-+      fi
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+        RELPATH=`echo $(LIBDIR)/. | \
-+              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
-+        cd $(DESTDIR)$(LIBDIR)/.; \
-+        if [ -d app-defaults -a ! -h app-defaults ]; then \
-+          (cd app-defaults; tar cf - . | \
-+              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
-+               tar xf -; exit 0); exit 0); \
-+        fi; \
-+        $(RM) -r app-defaults; \
-+        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
-+      fi
-+
-+install:: XVkbd-small.ad
-+      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
-+      fi
-+      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-small.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-small
-+
-+install::
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
-+      fi
-+      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
-+      fi
-+      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
-+      fi
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+        RELPATH=`echo $(LIBDIR)/. | \
-+              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
-+        cd $(DESTDIR)$(LIBDIR)/.; \
-+        if [ -d app-defaults -a ! -h app-defaults ]; then \
-+          (cd app-defaults; tar cf - . | \
-+              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
-+               tar xf -; exit 0); exit 0); \
-+        fi; \
-+        $(RM) -r app-defaults; \
-+        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
-+      fi
-+
-+install:: XVkbd-spanish.ad
-+      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
-+      fi
-+      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-spanish.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-spanish
-+
-+install::
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
-+      fi
-+      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
-+      fi
-+      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
-+      fi
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+        RELPATH=`echo $(LIBDIR)/. | \
-+              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
-+        cd $(DESTDIR)$(LIBDIR)/.; \
-+        if [ -d app-defaults -a ! -h app-defaults ]; then \
-+          (cd app-defaults; tar cf - . | \
-+              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
-+               tar xf -; exit 0); exit 0); \
-+        fi; \
-+        $(RM) -r app-defaults; \
-+        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
-+      fi
-+
-+install:: XVkbd-swedish.ad
-+      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
-+      fi
-+      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-swedish.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-swedish
-+
-+install::
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
-+      fi
-+      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
-+      fi
-+      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
-+      fi
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+        RELPATH=`echo $(LIBDIR)/. | \
-+              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
-+        cd $(DESTDIR)$(LIBDIR)/.; \
-+        if [ -d app-defaults -a ! -h app-defaults ]; then \
-+          (cd app-defaults; tar cf - . | \
-+              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
-+               tar xf -; exit 0); exit 0); \
-+        fi; \
-+        $(RM) -r app-defaults; \
-+        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
-+      fi
-+
-+install:: XVkbd-swissgerman.ad
-+      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
-+      fi
-+      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-swissgerman.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-swissgerman
-+
-+install::
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
-+      fi
-+      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
-+      fi
-+      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
-+      fi
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+        RELPATH=`echo $(LIBDIR)/. | \
-+              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
-+        cd $(DESTDIR)$(LIBDIR)/.; \
-+        if [ -d app-defaults -a ! -h app-defaults ]; then \
-+          (cd app-defaults; tar cf - . | \
-+              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
-+               tar xf -; exit 0); exit 0); \
-+        fi; \
-+        $(RM) -r app-defaults; \
-+        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
-+      fi
-+
-+install:: XVkbd-turkish.ad
-+      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
-+      fi
-+      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-turkish.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-turkish
-+
-+install::
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+        $(RM) $(DESTDIR)$(CONFDIR)/app-defaults; \
-+      fi
-+      @if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(LIBDIR)/. ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(LIBDIR)/.); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(LIBDIR)/.); \
-+      fi
-+      @if [ -d $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(CONFDIR)/app-defaults ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(CONFDIR)/app-defaults); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(CONFDIR)/app-defaults); \
-+      fi
-+      @for flag in ${MAKEFLAGS} ''; do \
-+        case "$$flag" in *=*) ;; --*) ;; *[i]*) set +e;; esac; done; \
-+      if [ -d $(DESTDIR)$(LIBDIR)/. ]; then \
-+        RELPATH=`echo $(LIBDIR)/. | \
-+              sed -e 's:^/::' -e 's:[^/.][^/]*:..:'g -e 's:/\.$$::'`; \
-+        cd $(DESTDIR)$(LIBDIR)/.; \
-+        if [ -d app-defaults -a ! -h app-defaults ]; then \
-+          (cd app-defaults; tar cf - . | \
-+              (cd $(DESTDIR)$(CONFDIR)/app-defaults; \
-+               tar xf -; exit 0); exit 0); \
-+        fi; \
-+        $(RM) -r app-defaults; \
-+        $(LN) $${RELPATH}$(CONFDIR)/app-defaults .; \
-+      fi
-+
-+install:: XVkbd-uk.ad
-+      @if [ -d $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+              set +x; \
-+      else \
-+              if [ -h $(DESTDIR)$(XAPPLOADDIR) ]; then \
-+                      (set -x; rm -f $(DESTDIR)$(XAPPLOADDIR)); \
-+              fi; \
-+              (set -x; $(MKDIRHIER) $(DESTDIR)$(XAPPLOADDIR)); \
-+      fi
-+      $(INSTALL) $(INSTALLFLAGS) $(INSTAPPFLAGS) XVkbd-uk.ad $(DESTDIR)$(XAPPLOADDIR)/XVkbd-uk
-+
-+#  ============================
-+#  These rules are only for me
-+
-+_distclean: cleandir
-+      -rm Makefile
-+
-+XVkbd-common.h: XVkbd-common.ad
-+      -which ad2c > /dev/null && ad2c XVkbd-common.ad > XVkbd-common.h
-+
-+HTML = $(HOME)/public_html/homepage3.nifty.com/xvkbd/index.html
-+_readme:
-+      -[ -f $(HTML) ] && html2man $(HTML) > xvkbd.man
-+      ( echo ".pl 10000"; echo ".ll 75"; echo ".hy 0"; echo ".ad l" ) |               cat - xvkbd.man | groff -Tascii -man | sed 's/.\b//g' |          head -9000 | cat -s | tail +3 > README
-+
-+#  ============================
-+
-+# ----------------------------------------------------------------------
-+# common rules for all Makefiles - do not edit
-+
-+.c.i:
-+      $(RM) $@
-+              $(CC) -E $(CFLAGS) $(_NOOP_) $*.c > $@
-+
-+.SUFFIXES: .ii
-+
-+.cc.ii:
-+      $(RM) $@
-+              $(CC) -E $(CFLAGS) $(_NOOP_) $*.cc > $@
-+
-+.SUFFIXES: .s
-+
-+.c.s:
-+      $(RM) $@
-+              $(CC) -S $(CFLAGS) $(_NOOP_) $*.c
-+
-+.cc.s:
-+      $(RM) $@
-+              $(CC) -S $(CFLAGS) $(_NOOP_) $*.cc
-+
-+emptyrule::
-+
-+cleandir::
-+      $(RM) *.CKP *.ln *.BAK *.bak *.o core errs ,* *~ *.a .emacs_* tags TAGS make.log MakeOut   "#"*
-+
-+Makefile::
-+      -@if [ -f Makefile ]; then set -x; \
-+      $(RM) Makefile.bak; $(MV) Makefile Makefile.bak; \
-+      else exit 0; fi
-+      $(IMAKE_CMD) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT_DIR)
-+
-+tags::
-+      $(TAGS) -w *.[ch]
-+      $(TAGS) -xw *.[ch] > TAGS
-+
-+man_keywords::
-+
-+html_index::
-+
-+clean:: cleandir
-+
-+distclean:: cleandir
-+
-+# ----------------------------------------------------------------------
-+# empty rules for directories that do not have SUBDIRS - do not edit
-+
-+install::
-+      @echo "install in $(CURRENT_DIR) done"
-+
-+install.man::
-+      @echo "install.man in $(CURRENT_DIR) done"
-+
-+install.sdk::
-+      @echo "install.sdk in $(CURRENT_DIR) done"
-+
-+Makefiles::
-+
-+includes::
-+
-+depend::
-+
-+distclean::
-+      $(RM) Makefile Makefile.dep
-+
-+# ----------------------------------------------------------------------
-+# dependencies generated by makedepend
-+
diff --git a/package/yajl/0001-math-link.patch b/package/yajl/0001-math-link.patch
new file mode 100644 (file)
index 0000000..355a248
--- /dev/null
@@ -0,0 +1,24 @@
+[PATCH] fix json_reformat linking on uClibc
+
+json_reformat calls yajl_gen_* functions, which internally use isnan() /
+isinf(). On Glibc, these are provided by libc, but on uClibc you need to
+link with -lm (like the spec says), so ensure we do so.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ reformatter/CMakeLists.txt |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+Index: yajl-2.0.2/reformatter/CMakeLists.txt
+===================================================================
+--- yajl-2.0.2.orig/reformatter/CMakeLists.txt
++++ yajl-2.0.2/reformatter/CMakeLists.txt
+@@ -26,7 +26,7 @@
+ ADD_EXECUTABLE(json_reformat ${SRCS})
+-TARGET_LINK_LIBRARIES(json_reformat yajl_s)
++TARGET_LINK_LIBRARIES(json_reformat yajl_s m)
+ # copy the binary into the output directory
+ GET_TARGET_PROPERTY(binPath json_reformat LOCATION)
diff --git a/package/yajl/0002-cmake-disable-shared-library-build-when-BUILD_SHARED.patch b/package/yajl/0002-cmake-disable-shared-library-build-when-BUILD_SHARED.patch
new file mode 100644 (file)
index 0000000..261c486
--- /dev/null
@@ -0,0 +1,44 @@
+From bb4fb7ff71fd6cadd9c1bf8716845a91e5998c0c Mon Sep 17 00:00:00 2001
+From: Samuel Martin <s.martin49@gmail.com>
+Date: Sun, 31 Aug 2014 00:39:11 +0200
+Subject: [PATCH 2/2] cmake: disable shared library build when
+ BUILD_SHARED_LIBS is off
+
+Signed-off-by: Samuel Martin <s.martin49@gmail.com>
+---
+ src/CMakeLists.txt | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index e36b736..6a24424 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -37,6 +37,7 @@ SET(LIBRARY_OUTPUT_PATH ${libDir})
+ ADD_LIBRARY(yajl_s STATIC ${SRCS} ${HDRS} ${PUB_HDRS})
++IF(BUILD_SHARED_LIBS)
+ ADD_LIBRARY(yajl SHARED ${SRCS} ${HDRS} ${PUB_HDRS})
+ #### setup shared library version number
+@@ -51,6 +52,7 @@ IF(APPLE)
+   SET_TARGET_PROPERTIES(yajl PROPERTIES
+                         INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib")
+ ENDIF(APPLE)
++ENDIF(BUILD_SHARED_LIBS)
+ #### build up an sdk as a post build step
+@@ -78,7 +80,9 @@ INCLUDE_DIRECTORIES(${incDir}/..)
+ IF(NOT WIN32)
+   # at build time you may specify the cmake variable LIB_SUFFIX to handle
+   # 64-bit systems which use 'lib64'
++  IF(BUILD_SHARED_LIBS)
+   INSTALL(TARGETS yajl LIBRARY DESTINATION lib${LIB_SUFFIX})
++  ENDIF(BUILD_SHARED_LIBS)
+   INSTALL(TARGETS yajl_s ARCHIVE DESTINATION lib${LIB_SUFFIX})
+   INSTALL(FILES ${PUB_HDRS} DESTINATION include/yajl)
+   INSTALL(FILES ${incDir}/yajl_version.h DESTINATION include/yajl)
+-- 
+2.1.0
+
diff --git a/package/yajl/yajl-0001-math-link.patch b/package/yajl/yajl-0001-math-link.patch
deleted file mode 100644 (file)
index 355a248..0000000
+++ /dev/null
@@ -1,24 +0,0 @@
-[PATCH] fix json_reformat linking on uClibc
-
-json_reformat calls yajl_gen_* functions, which internally use isnan() /
-isinf(). On Glibc, these are provided by libc, but on uClibc you need to
-link with -lm (like the spec says), so ensure we do so.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- reformatter/CMakeLists.txt |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Index: yajl-2.0.2/reformatter/CMakeLists.txt
-===================================================================
---- yajl-2.0.2.orig/reformatter/CMakeLists.txt
-+++ yajl-2.0.2/reformatter/CMakeLists.txt
-@@ -26,7 +26,7 @@
- ADD_EXECUTABLE(json_reformat ${SRCS})
--TARGET_LINK_LIBRARIES(json_reformat yajl_s)
-+TARGET_LINK_LIBRARIES(json_reformat yajl_s m)
- # copy the binary into the output directory
- GET_TARGET_PROPERTY(binPath json_reformat LOCATION)
diff --git a/package/yajl/yajl-0002-cmake-disable-shared-library-build-when-BUILD_SHARED.patch b/package/yajl/yajl-0002-cmake-disable-shared-library-build-when-BUILD_SHARED.patch
deleted file mode 100644 (file)
index 261c486..0000000
+++ /dev/null
@@ -1,44 +0,0 @@
-From bb4fb7ff71fd6cadd9c1bf8716845a91e5998c0c Mon Sep 17 00:00:00 2001
-From: Samuel Martin <s.martin49@gmail.com>
-Date: Sun, 31 Aug 2014 00:39:11 +0200
-Subject: [PATCH 2/2] cmake: disable shared library build when
- BUILD_SHARED_LIBS is off
-
-Signed-off-by: Samuel Martin <s.martin49@gmail.com>
----
- src/CMakeLists.txt | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index e36b736..6a24424 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -37,6 +37,7 @@ SET(LIBRARY_OUTPUT_PATH ${libDir})
- ADD_LIBRARY(yajl_s STATIC ${SRCS} ${HDRS} ${PUB_HDRS})
-+IF(BUILD_SHARED_LIBS)
- ADD_LIBRARY(yajl SHARED ${SRCS} ${HDRS} ${PUB_HDRS})
- #### setup shared library version number
-@@ -51,6 +52,7 @@ IF(APPLE)
-   SET_TARGET_PROPERTIES(yajl PROPERTIES
-                         INSTALL_NAME_DIR "${CMAKE_INSTALL_PREFIX}/lib")
- ENDIF(APPLE)
-+ENDIF(BUILD_SHARED_LIBS)
- #### build up an sdk as a post build step
-@@ -78,7 +80,9 @@ INCLUDE_DIRECTORIES(${incDir}/..)
- IF(NOT WIN32)
-   # at build time you may specify the cmake variable LIB_SUFFIX to handle
-   # 64-bit systems which use 'lib64'
-+  IF(BUILD_SHARED_LIBS)
-   INSTALL(TARGETS yajl LIBRARY DESTINATION lib${LIB_SUFFIX})
-+  ENDIF(BUILD_SHARED_LIBS)
-   INSTALL(TARGETS yajl_s ARCHIVE DESTINATION lib${LIB_SUFFIX})
-   INSTALL(FILES ${PUB_HDRS} DESTINATION include/yajl)
-   INSTALL(FILES ${incDir}/yajl_version.h DESTINATION include/yajl)
--- 
-2.1.0
-
diff --git a/package/ympd/0002-only-c-language.patch b/package/ympd/0002-only-c-language.patch
new file mode 100644 (file)
index 0000000..df5734c
--- /dev/null
@@ -0,0 +1,21 @@
+ympd is implemented only in C
+
+By default, CMake assumes that the project is using both C and C++. By
+explicitly passing 'C' as argument of the project() macro, we tell
+CMake that only C is used, which prevents CMake from checking if a C++
+compiler exists.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+
+Index: b/CMakeLists.txt
+===================================================================
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1,6 +1,6 @@
+ cmake_minimum_required(VERSION 2.6)
+-project (ympd)
++project (ympd C)
+ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${PROJECT_SOURCE_DIR}/cmake/")
+ set(CPACK_PACKAGE_VERSION_MAJOR "1")
+ set(CPACK_PACKAGE_VERSION_MINOR "2")
diff --git a/package/ympd/ympd-0002-only-c-language.patch b/package/ympd/ympd-0002-only-c-language.patch
deleted file mode 100644 (file)
index df5734c..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-ympd is implemented only in C
-
-By default, CMake assumes that the project is using both C and C++. By
-explicitly passing 'C' as argument of the project() macro, we tell
-CMake that only C is used, which prevents CMake from checking if a C++
-compiler exists.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-
-Index: b/CMakeLists.txt
-===================================================================
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -1,6 +1,6 @@
- cmake_minimum_required(VERSION 2.6)
--project (ympd)
-+project (ympd C)
- set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${PROJECT_SOURCE_DIR}/cmake/")
- set(CPACK_PACKAGE_VERSION_MAJOR "1")
- set(CPACK_PACKAGE_VERSION_MINOR "2")
diff --git a/package/zic/0001-fix-dependencies.patch b/package/zic/0001-fix-dependencies.patch
new file mode 100644 (file)
index 0000000..e1cbc12
--- /dev/null
@@ -0,0 +1,27 @@
+From 4a2a55a640dd9316dac5f31832064f28f59ab0ae Mon Sep 17 00:00:00 2001
+From: Richard Braun <rbraun@sceen.net>
+Date: Fri, 4 Jan 2013 10:57:24 +0100
+Subject: [PATCH] zic: fix dependencies
+
+The yearistype script is provided by the tzdata package, and is required
+at runtime only.
+---
+ Makefile |    2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index d76a81e..30df7dc 100644
+--- a/Makefile
++++ b/Makefile
+@@ -349,7 +349,7 @@ version.h:
+ zdump:                $(TZDOBJS)
+               $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(TZDOBJS) $(LDLIBS)
+-zic:          $(TZCOBJS) yearistype
++zic:          $(TZCOBJS)
+               $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(TZCOBJS) $(LDLIBS)
+ yearistype:   yearistype.sh
+-- 
+1.7.2.5
+
diff --git a/package/zic/zic-fix-dependencies.patch b/package/zic/zic-fix-dependencies.patch
deleted file mode 100644 (file)
index e1cbc12..0000000
+++ /dev/null
@@ -1,27 +0,0 @@
-From 4a2a55a640dd9316dac5f31832064f28f59ab0ae Mon Sep 17 00:00:00 2001
-From: Richard Braun <rbraun@sceen.net>
-Date: Fri, 4 Jan 2013 10:57:24 +0100
-Subject: [PATCH] zic: fix dependencies
-
-The yearistype script is provided by the tzdata package, and is required
-at runtime only.
----
- Makefile |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index d76a81e..30df7dc 100644
---- a/Makefile
-+++ b/Makefile
-@@ -349,7 +349,7 @@ version.h:
- zdump:                $(TZDOBJS)
-               $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(TZDOBJS) $(LDLIBS)
--zic:          $(TZCOBJS) yearistype
-+zic:          $(TZCOBJS)
-               $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(TZCOBJS) $(LDLIBS)
- yearistype:   yearistype.sh
--- 
-1.7.2.5
-
diff --git a/package/zlog/0001-fix-compiling-on-Buildroot.patch b/package/zlog/0001-fix-compiling-on-Buildroot.patch
new file mode 100644 (file)
index 0000000..32aa7d6
--- /dev/null
@@ -0,0 +1,32 @@
+From a9f6a55bdb29a2bebc96a68ab53077906c25a9df Mon Sep 17 00:00:00 2001
+From: Yegor Yefremov <yegorslists@googlemail.com>
+Date: Wed, 22 Jan 2014 15:04:42 +0100
+Subject: [PATCH] Fix compiling on Buildroot
+
+Buildroot always specifies -D_LARGEFILE_SOURCE, -D_LARGEFILE64_SOURCE,
+-D_FILE_OFFSET_BITS=64, so define them only if they are not already
+defined.
+
+Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
+---
+ src/fmacros.h |    4 ++++
+ 1 files changed, 4 insertions(+), 0 deletions(-)
+
+diff --git a/src/fmacros.h b/src/fmacros.h
+index fa37948..059dfeb 100644
+--- a/src/fmacros.h
++++ b/src/fmacros.h
+@@ -14,7 +14,11 @@
+ #define _XOPEN_SOURCE
+ #endif
+
++#ifndef _LARGEFILE_SOURCE
+ #define _LARGEFILE_SOURCE
++#endif
++#ifndef _FILE_OFFSET_BITS
+ #define _FILE_OFFSET_BITS 64
++#endif
+
+ #endif
+--
+1.7.7
diff --git a/package/zlog/0002-compile-Remove-Werror-and-avoid-build-failures-becau.patch b/package/zlog/0002-compile-Remove-Werror-and-avoid-build-failures-becau.patch
new file mode 100644 (file)
index 0000000..0f1b912
--- /dev/null
@@ -0,0 +1,38 @@
+From 4a08c9e07fa8b7a1d6a76b927ea97e3eaa784845 Mon Sep 17 00:00:00 2001
+From: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
+Date: Sun, 26 Oct 2014 16:16:25 -0300
+Subject: [PATCH] compile: Remove -Werror and avoid build failures because of
+ warnings
+
+Using -Werror on production is a bad idea, as otherwise harmless warnings
+get treated as errors breaking builds. This is currently the case with
+Nios-II architecture toolchain, warning about a deprecated macro:
+
+../usr/nios2-buildroot-linux-gnu/sysroot/usr/include/features.h:148:3:
+error: #warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE" [-Werror=cpp]
+ # warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE"
+
+Instead of trying to fix the macro, let's fix the real issue here,
+and remove -Werror.
+
+Signed-off-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
+---
+ src/makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/makefile b/src/makefile
+index 294dc08..4ac4c43 100644
+--- a/src/makefile
++++ b/src/makefile
+@@ -32,7 +32,7 @@ ZLOG_MINOR=2
+ # Fallback to gcc when $CC is not in $PATH.
+ CC:=$(shell sh -c 'type $(CC) >/dev/null 2>/dev/null && echo $(CC) || echo gcc')
+ OPTIMIZATION?=-O2
+-WARNINGS=-Wall -Werror -Wstrict-prototypes -fwrapv
++WARNINGS=-Wall -Wstrict-prototypes -fwrapv
+ DEBUG?= -g -ggdb
+ REAL_CFLAGS=$(OPTIMIZATION) -fPIC -pthread $(CFLAGS) $(WARNINGS) $(DEBUG)
+ REAL_LDFLAGS=$(LDFLAGS) -pthread
+-- 
+2.1.0
+
diff --git a/package/zlog/zlog-01-fix-compiling-on-Buildroot.patch b/package/zlog/zlog-01-fix-compiling-on-Buildroot.patch
deleted file mode 100644 (file)
index 32aa7d6..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-From a9f6a55bdb29a2bebc96a68ab53077906c25a9df Mon Sep 17 00:00:00 2001
-From: Yegor Yefremov <yegorslists@googlemail.com>
-Date: Wed, 22 Jan 2014 15:04:42 +0100
-Subject: [PATCH] Fix compiling on Buildroot
-
-Buildroot always specifies -D_LARGEFILE_SOURCE, -D_LARGEFILE64_SOURCE,
--D_FILE_OFFSET_BITS=64, so define them only if they are not already
-defined.
-
-Signed-off-by: Yegor Yefremov <yegorslists@googlemail.com>
----
- src/fmacros.h |    4 ++++
- 1 files changed, 4 insertions(+), 0 deletions(-)
-
-diff --git a/src/fmacros.h b/src/fmacros.h
-index fa37948..059dfeb 100644
---- a/src/fmacros.h
-+++ b/src/fmacros.h
-@@ -14,7 +14,11 @@
- #define _XOPEN_SOURCE
- #endif
-
-+#ifndef _LARGEFILE_SOURCE
- #define _LARGEFILE_SOURCE
-+#endif
-+#ifndef _FILE_OFFSET_BITS
- #define _FILE_OFFSET_BITS 64
-+#endif
-
- #endif
---
-1.7.7
diff --git a/package/zlog/zlog-02-compile-Remove-Werror-and-avoid-build-failures-becau.patch b/package/zlog/zlog-02-compile-Remove-Werror-and-avoid-build-failures-becau.patch
deleted file mode 100644 (file)
index 0f1b912..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-From 4a08c9e07fa8b7a1d6a76b927ea97e3eaa784845 Mon Sep 17 00:00:00 2001
-From: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
-Date: Sun, 26 Oct 2014 16:16:25 -0300
-Subject: [PATCH] compile: Remove -Werror and avoid build failures because of
- warnings
-
-Using -Werror on production is a bad idea, as otherwise harmless warnings
-get treated as errors breaking builds. This is currently the case with
-Nios-II architecture toolchain, warning about a deprecated macro:
-
-../usr/nios2-buildroot-linux-gnu/sysroot/usr/include/features.h:148:3:
-error: #warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE" [-Werror=cpp]
- # warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE"
-
-Instead of trying to fix the macro, let's fix the real issue here,
-and remove -Werror.
-
-Signed-off-by: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
----
- src/makefile | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/makefile b/src/makefile
-index 294dc08..4ac4c43 100644
---- a/src/makefile
-+++ b/src/makefile
-@@ -32,7 +32,7 @@ ZLOG_MINOR=2
- # Fallback to gcc when $CC is not in $PATH.
- CC:=$(shell sh -c 'type $(CC) >/dev/null 2>/dev/null && echo $(CC) || echo gcc')
- OPTIMIZATION?=-O2
--WARNINGS=-Wall -Werror -Wstrict-prototypes -fwrapv
-+WARNINGS=-Wall -Wstrict-prototypes -fwrapv
- DEBUG?= -g -ggdb
- REAL_CFLAGS=$(OPTIMIZATION) -fPIC -pthread $(CFLAGS) $(WARNINGS) $(DEBUG)
- REAL_LDFLAGS=$(LDFLAGS) -pthread
--- 
-2.1.0
-
diff --git a/package/znc/0001-time.patch b/package/znc/0001-time.patch
new file mode 100644 (file)
index 0000000..3866139
--- /dev/null
@@ -0,0 +1,303 @@
+From 18d6daf4793fb7e9750175bd46b17fe1965b78dd Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+Date: Tue, 6 May 2014 22:00:11 +0200
+Subject: [PATCH] Add missing <time.h> includes
+
+Submitted upstream at https://github.com/znc/znc/pull/569.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+---
+ modules/adminlog.cpp    | 1 +
+ modules/awaystore.cpp   | 2 ++
+ modules/crypt.cpp       | 2 ++
+ modules/ctcpflood.cpp   | 2 ++
+ modules/flooddetach.cpp | 2 ++
+ modules/lastseen.cpp    | 2 ++
+ modules/log.cpp         | 2 ++
+ modules/savebuff.cpp    | 2 ++
+ modules/schat.cpp       | 2 ++
+ modules/simple_away.cpp | 2 ++
+ src/Buffer.cpp          | 2 ++
+ src/Csocket.cpp         | 2 ++
+ src/FileUtils.cpp       | 2 ++
+ src/HTTPSock.cpp        | 1 +
+ src/IRCSock.cpp         | 2 ++
+ src/User.cpp            | 1 +
+ src/Utils.cpp           | 2 ++
+ src/WebModules.cpp      | 2 ++
+ src/ZNCDebug.cpp        | 1 +
+ src/main.cpp            | 1 +
+ src/znc.cpp             | 2 ++
+ 21 files changed, 37 insertions(+)
+
+diff --git a/modules/adminlog.cpp b/modules/adminlog.cpp
+index 77577b1..16dd665 100644
+--- a/modules/adminlog.cpp
++++ b/modules/adminlog.cpp
+@@ -20,6 +20,7 @@
+ #include <znc/User.h>
+ #include <syslog.h>
++#include <time.h>
+ class CAdminLogMod : public CModule {
+ public:
+diff --git a/modules/awaystore.cpp b/modules/awaystore.cpp
+index da75260..56349df 100644
+--- a/modules/awaystore.cpp
++++ b/modules/awaystore.cpp
+@@ -30,6 +30,8 @@
+ #include <znc/IRCNetwork.h>
+ #include <znc/FileUtils.h>
++#include <time.h>
++
+ using std::vector;
+ using std::map;
+diff --git a/modules/crypt.cpp b/modules/crypt.cpp
+index fcc664b..8f9018f 100644
+--- a/modules/crypt.cpp
++++ b/modules/crypt.cpp
+@@ -34,6 +34,8 @@
+ #include <znc/User.h>
+ #include <znc/IRCNetwork.h>
++#include <time.h>
++
+ #define REQUIRESSL    1
+ #define NICK_PREFIX_KEY       "[nick-prefix]"
+diff --git a/modules/ctcpflood.cpp b/modules/ctcpflood.cpp
+index ac154e2..f2ce27f 100644
+--- a/modules/ctcpflood.cpp
++++ b/modules/ctcpflood.cpp
+@@ -17,6 +17,8 @@
+ #include <znc/Modules.h>
+ #include <znc/Chan.h>
++#include <time.h>
++
+ class CCtcpFloodMod : public CModule {
+ public:
+       MODCONSTRUCTOR(CCtcpFloodMod) {
+diff --git a/modules/flooddetach.cpp b/modules/flooddetach.cpp
+index f4ed892..0ffb651 100644
+--- a/modules/flooddetach.cpp
++++ b/modules/flooddetach.cpp
+@@ -17,6 +17,8 @@
+ #include <znc/Chan.h>
+ #include <znc/IRCNetwork.h>
++#include <time.h>
++
+ using std::map;
+ class CFloodDetachMod : public CModule {
+diff --git a/modules/lastseen.cpp b/modules/lastseen.cpp
+index bd6eb9b..b3b209f 100644
+--- a/modules/lastseen.cpp
++++ b/modules/lastseen.cpp
+@@ -17,6 +17,8 @@
+ #include <znc/User.h>
+ #include <znc/znc.h>
++#include <time.h>
++
+ using std::map;
+ using std::pair;
+ using std::multimap;
+diff --git a/modules/log.cpp b/modules/log.cpp
+index 260b577..e718d76 100644
+--- a/modules/log.cpp
++++ b/modules/log.cpp
+@@ -21,6 +21,8 @@
+ #include <znc/Chan.h>
+ #include <znc/Server.h>
++#include <time.h>
++
+ using std::vector;
+ class CLogMod: public CModule {
+diff --git a/modules/savebuff.cpp b/modules/savebuff.cpp
+index 8a85153..2e0ed5c 100644
+--- a/modules/savebuff.cpp
++++ b/modules/savebuff.cpp
+@@ -29,6 +29,8 @@
+ #include <znc/IRCNetwork.h>
+ #include <znc/FileUtils.h>
++#include <time.h>
++
+ using std::vector;
+ #define CRYPT_VERIFICATION_TOKEN "::__:SAVEBUFF:__::"
+diff --git a/modules/schat.cpp b/modules/schat.cpp
+index 98d03b4..5a7f1a0 100644
+--- a/modules/schat.cpp
++++ b/modules/schat.cpp
+@@ -25,6 +25,8 @@
+ #include <znc/User.h>
+ #include <znc/IRCNetwork.h>
++#include <time.h>
++
+ using std::pair;
+ using std::stringstream;
+ using std::map;
+diff --git a/modules/simple_away.cpp b/modules/simple_away.cpp
+index a1e5927..67faeea 100644
+--- a/modules/simple_away.cpp
++++ b/modules/simple_away.cpp
+@@ -17,6 +17,8 @@
+ #include <znc/User.h>
+ #include <znc/IRCNetwork.h>
++#include <time.h>
++
+ #define SIMPLE_AWAY_DEFAULT_REASON "Auto away at %s"
+ #define SIMPLE_AWAY_DEFAULT_TIME   60
+diff --git a/src/Buffer.cpp b/src/Buffer.cpp
+index eefbb29..55ecd72 100644
+--- a/src/Buffer.cpp
++++ b/src/Buffer.cpp
+@@ -17,6 +17,8 @@
+ #include <znc/znc.h>
+ #include <znc/User.h>
++#include <time.h>
++
+ CBufLine::CBufLine(const CString& sFormat, const CString& sText, const timeval* ts) {
+       m_sFormat = sFormat;
+       m_sText = sText;
+diff --git a/src/Csocket.cpp b/src/Csocket.cpp
+index 2e4cb14..ca6ed38 100644
+--- a/src/Csocket.cpp
++++ b/src/Csocket.cpp
+@@ -53,6 +53,8 @@
+ #include <unicode/errorcode.h>
+ #endif /* HAVE_ICU */
++#include <time.h>
++
+ #include <list>
+ #define CS_SRANDBUFFER 128
+diff --git a/src/FileUtils.cpp b/src/FileUtils.cpp
+index 7224a49..4c8f1d3 100644
+--- a/src/FileUtils.cpp
++++ b/src/FileUtils.cpp
+@@ -23,6 +23,8 @@
+ #include <sys/types.h>
+ #include <sys/wait.h>
++#include <time.h>
++
+ #ifndef HAVE_LSTAT
+ #  define lstat(a, b) stat(a, b)
+ #endif
+diff --git a/src/HTTPSock.cpp b/src/HTTPSock.cpp
+index ab03130..36bf52b 100644
+--- a/src/HTTPSock.cpp
++++ b/src/HTTPSock.cpp
+@@ -18,6 +18,7 @@
+ #include <znc/znc.h>
+ #include <iomanip>
++#include <time.h>
+ #ifdef HAVE_ZLIB
+ #include <zlib.h>
+diff --git a/src/IRCSock.cpp b/src/IRCSock.cpp
+index 2ef12f6..d0c56a7 100644
+--- a/src/IRCSock.cpp
++++ b/src/IRCSock.cpp
+@@ -20,6 +20,8 @@
+ #include <znc/IRCNetwork.h>
+ #include <znc/Server.h>
++#include <time.h>
++
+ using std::set;
+ using std::vector;
+ using std::map;
+diff --git a/src/User.cpp b/src/User.cpp
+index cf664f1..4a64f83 100644
+--- a/src/User.cpp
++++ b/src/User.cpp
+@@ -20,6 +20,7 @@
+ #include <znc/IRCNetwork.h>
+ #include <znc/IRCSock.h>
+ #include <math.h>
++#include <time.h>
+ using std::vector;
+ using std::set;
+diff --git a/src/Utils.cpp b/src/Utils.cpp
+index 33c83de..e0862dd 100644
+--- a/src/Utils.cpp
++++ b/src/Utils.cpp
+@@ -26,6 +26,8 @@
+ #include <cstring>
+ #include <cstdlib>
++#include <time.h>
++
+ using std::map;
+ using std::stringstream;
+ using std::vector;
+diff --git a/src/WebModules.cpp b/src/WebModules.cpp
+index d61ba23..ddd88e0 100644
+--- a/src/WebModules.cpp
++++ b/src/WebModules.cpp
+@@ -22,6 +22,8 @@
+ #include <algorithm>
+ #include <sstream>
++#include <time.h>
++
+ using std::pair;
+ using std::vector;
+diff --git a/src/ZNCDebug.cpp b/src/ZNCDebug.cpp
+index 01d06b4..cc83298 100644
+--- a/src/ZNCDebug.cpp
++++ b/src/ZNCDebug.cpp
+@@ -18,6 +18,7 @@
+ #include <iostream>
+ #include <sys/time.h>
+ #include <stdio.h>
++#include <time.h>
+ bool CDebug::stdoutIsTTY = true;
+ bool CDebug::debug =
+diff --git a/src/main.cpp b/src/main.cpp
+index ac9d691..7d74f8e 100644
+--- a/src/main.cpp
++++ b/src/main.cpp
+@@ -16,6 +16,7 @@
+ #include <znc/znc.h>
+ #include <signal.h>
++#include <time.h>
+ using std::cout;
+ using std::endl;
+diff --git a/src/znc.cpp b/src/znc.cpp
+index 9e66f3d..dce1372 100644
+--- a/src/znc.cpp
++++ b/src/znc.cpp
+@@ -21,6 +21,8 @@
+ #include <znc/IRCNetwork.h>
+ #include <znc/Config.h>
++#include <time.h>
++
+ using std::endl;
+ using std::cout;
+ using std::map;
+-- 
+1.9.2
+
diff --git a/package/znc/znc-01-time.patch b/package/znc/znc-01-time.patch
deleted file mode 100644 (file)
index 3866139..0000000
+++ /dev/null
@@ -1,303 +0,0 @@
-From 18d6daf4793fb7e9750175bd46b17fe1965b78dd Mon Sep 17 00:00:00 2001
-From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
-Date: Tue, 6 May 2014 22:00:11 +0200
-Subject: [PATCH] Add missing <time.h> includes
-
-Submitted upstream at https://github.com/znc/znc/pull/569.
-
-Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
----
- modules/adminlog.cpp    | 1 +
- modules/awaystore.cpp   | 2 ++
- modules/crypt.cpp       | 2 ++
- modules/ctcpflood.cpp   | 2 ++
- modules/flooddetach.cpp | 2 ++
- modules/lastseen.cpp    | 2 ++
- modules/log.cpp         | 2 ++
- modules/savebuff.cpp    | 2 ++
- modules/schat.cpp       | 2 ++
- modules/simple_away.cpp | 2 ++
- src/Buffer.cpp          | 2 ++
- src/Csocket.cpp         | 2 ++
- src/FileUtils.cpp       | 2 ++
- src/HTTPSock.cpp        | 1 +
- src/IRCSock.cpp         | 2 ++
- src/User.cpp            | 1 +
- src/Utils.cpp           | 2 ++
- src/WebModules.cpp      | 2 ++
- src/ZNCDebug.cpp        | 1 +
- src/main.cpp            | 1 +
- src/znc.cpp             | 2 ++
- 21 files changed, 37 insertions(+)
-
-diff --git a/modules/adminlog.cpp b/modules/adminlog.cpp
-index 77577b1..16dd665 100644
---- a/modules/adminlog.cpp
-+++ b/modules/adminlog.cpp
-@@ -20,6 +20,7 @@
- #include <znc/User.h>
- #include <syslog.h>
-+#include <time.h>
- class CAdminLogMod : public CModule {
- public:
-diff --git a/modules/awaystore.cpp b/modules/awaystore.cpp
-index da75260..56349df 100644
---- a/modules/awaystore.cpp
-+++ b/modules/awaystore.cpp
-@@ -30,6 +30,8 @@
- #include <znc/IRCNetwork.h>
- #include <znc/FileUtils.h>
-+#include <time.h>
-+
- using std::vector;
- using std::map;
-diff --git a/modules/crypt.cpp b/modules/crypt.cpp
-index fcc664b..8f9018f 100644
---- a/modules/crypt.cpp
-+++ b/modules/crypt.cpp
-@@ -34,6 +34,8 @@
- #include <znc/User.h>
- #include <znc/IRCNetwork.h>
-+#include <time.h>
-+
- #define REQUIRESSL    1
- #define NICK_PREFIX_KEY       "[nick-prefix]"
-diff --git a/modules/ctcpflood.cpp b/modules/ctcpflood.cpp
-index ac154e2..f2ce27f 100644
---- a/modules/ctcpflood.cpp
-+++ b/modules/ctcpflood.cpp
-@@ -17,6 +17,8 @@
- #include <znc/Modules.h>
- #include <znc/Chan.h>
-+#include <time.h>
-+
- class CCtcpFloodMod : public CModule {
- public:
-       MODCONSTRUCTOR(CCtcpFloodMod) {
-diff --git a/modules/flooddetach.cpp b/modules/flooddetach.cpp
-index f4ed892..0ffb651 100644
---- a/modules/flooddetach.cpp
-+++ b/modules/flooddetach.cpp
-@@ -17,6 +17,8 @@
- #include <znc/Chan.h>
- #include <znc/IRCNetwork.h>
-+#include <time.h>
-+
- using std::map;
- class CFloodDetachMod : public CModule {
-diff --git a/modules/lastseen.cpp b/modules/lastseen.cpp
-index bd6eb9b..b3b209f 100644
---- a/modules/lastseen.cpp
-+++ b/modules/lastseen.cpp
-@@ -17,6 +17,8 @@
- #include <znc/User.h>
- #include <znc/znc.h>
-+#include <time.h>
-+
- using std::map;
- using std::pair;
- using std::multimap;
-diff --git a/modules/log.cpp b/modules/log.cpp
-index 260b577..e718d76 100644
---- a/modules/log.cpp
-+++ b/modules/log.cpp
-@@ -21,6 +21,8 @@
- #include <znc/Chan.h>
- #include <znc/Server.h>
-+#include <time.h>
-+
- using std::vector;
- class CLogMod: public CModule {
-diff --git a/modules/savebuff.cpp b/modules/savebuff.cpp
-index 8a85153..2e0ed5c 100644
---- a/modules/savebuff.cpp
-+++ b/modules/savebuff.cpp
-@@ -29,6 +29,8 @@
- #include <znc/IRCNetwork.h>
- #include <znc/FileUtils.h>
-+#include <time.h>
-+
- using std::vector;
- #define CRYPT_VERIFICATION_TOKEN "::__:SAVEBUFF:__::"
-diff --git a/modules/schat.cpp b/modules/schat.cpp
-index 98d03b4..5a7f1a0 100644
---- a/modules/schat.cpp
-+++ b/modules/schat.cpp
-@@ -25,6 +25,8 @@
- #include <znc/User.h>
- #include <znc/IRCNetwork.h>
-+#include <time.h>
-+
- using std::pair;
- using std::stringstream;
- using std::map;
-diff --git a/modules/simple_away.cpp b/modules/simple_away.cpp
-index a1e5927..67faeea 100644
---- a/modules/simple_away.cpp
-+++ b/modules/simple_away.cpp
-@@ -17,6 +17,8 @@
- #include <znc/User.h>
- #include <znc/IRCNetwork.h>
-+#include <time.h>
-+
- #define SIMPLE_AWAY_DEFAULT_REASON "Auto away at %s"
- #define SIMPLE_AWAY_DEFAULT_TIME   60
-diff --git a/src/Buffer.cpp b/src/Buffer.cpp
-index eefbb29..55ecd72 100644
---- a/src/Buffer.cpp
-+++ b/src/Buffer.cpp
-@@ -17,6 +17,8 @@
- #include <znc/znc.h>
- #include <znc/User.h>
-+#include <time.h>
-+
- CBufLine::CBufLine(const CString& sFormat, const CString& sText, const timeval* ts) {
-       m_sFormat = sFormat;
-       m_sText = sText;
-diff --git a/src/Csocket.cpp b/src/Csocket.cpp
-index 2e4cb14..ca6ed38 100644
---- a/src/Csocket.cpp
-+++ b/src/Csocket.cpp
-@@ -53,6 +53,8 @@
- #include <unicode/errorcode.h>
- #endif /* HAVE_ICU */
-+#include <time.h>
-+
- #include <list>
- #define CS_SRANDBUFFER 128
-diff --git a/src/FileUtils.cpp b/src/FileUtils.cpp
-index 7224a49..4c8f1d3 100644
---- a/src/FileUtils.cpp
-+++ b/src/FileUtils.cpp
-@@ -23,6 +23,8 @@
- #include <sys/types.h>
- #include <sys/wait.h>
-+#include <time.h>
-+
- #ifndef HAVE_LSTAT
- #  define lstat(a, b) stat(a, b)
- #endif
-diff --git a/src/HTTPSock.cpp b/src/HTTPSock.cpp
-index ab03130..36bf52b 100644
---- a/src/HTTPSock.cpp
-+++ b/src/HTTPSock.cpp
-@@ -18,6 +18,7 @@
- #include <znc/znc.h>
- #include <iomanip>
-+#include <time.h>
- #ifdef HAVE_ZLIB
- #include <zlib.h>
-diff --git a/src/IRCSock.cpp b/src/IRCSock.cpp
-index 2ef12f6..d0c56a7 100644
---- a/src/IRCSock.cpp
-+++ b/src/IRCSock.cpp
-@@ -20,6 +20,8 @@
- #include <znc/IRCNetwork.h>
- #include <znc/Server.h>
-+#include <time.h>
-+
- using std::set;
- using std::vector;
- using std::map;
-diff --git a/src/User.cpp b/src/User.cpp
-index cf664f1..4a64f83 100644
---- a/src/User.cpp
-+++ b/src/User.cpp
-@@ -20,6 +20,7 @@
- #include <znc/IRCNetwork.h>
- #include <znc/IRCSock.h>
- #include <math.h>
-+#include <time.h>
- using std::vector;
- using std::set;
-diff --git a/src/Utils.cpp b/src/Utils.cpp
-index 33c83de..e0862dd 100644
---- a/src/Utils.cpp
-+++ b/src/Utils.cpp
-@@ -26,6 +26,8 @@
- #include <cstring>
- #include <cstdlib>
-+#include <time.h>
-+
- using std::map;
- using std::stringstream;
- using std::vector;
-diff --git a/src/WebModules.cpp b/src/WebModules.cpp
-index d61ba23..ddd88e0 100644
---- a/src/WebModules.cpp
-+++ b/src/WebModules.cpp
-@@ -22,6 +22,8 @@
- #include <algorithm>
- #include <sstream>
-+#include <time.h>
-+
- using std::pair;
- using std::vector;
-diff --git a/src/ZNCDebug.cpp b/src/ZNCDebug.cpp
-index 01d06b4..cc83298 100644
---- a/src/ZNCDebug.cpp
-+++ b/src/ZNCDebug.cpp
-@@ -18,6 +18,7 @@
- #include <iostream>
- #include <sys/time.h>
- #include <stdio.h>
-+#include <time.h>
- bool CDebug::stdoutIsTTY = true;
- bool CDebug::debug =
-diff --git a/src/main.cpp b/src/main.cpp
-index ac9d691..7d74f8e 100644
---- a/src/main.cpp
-+++ b/src/main.cpp
-@@ -16,6 +16,7 @@
- #include <znc/znc.h>
- #include <signal.h>
-+#include <time.h>
- using std::cout;
- using std::endl;
-diff --git a/src/znc.cpp b/src/znc.cpp
-index 9e66f3d..dce1372 100644
---- a/src/znc.cpp
-+++ b/src/znc.cpp
-@@ -21,6 +21,8 @@
- #include <znc/IRCNetwork.h>
- #include <znc/Config.h>
-+#include <time.h>
-+
- using std::endl;
- using std::cout;
- using std::map;
--- 
-1.9.2
-
diff --git a/package/zxing/0001-makefile.patch b/package/zxing/0001-makefile.patch
new file mode 100644 (file)
index 0000000..66896bf
--- /dev/null
@@ -0,0 +1,30 @@
+[PATCH] add Makefile
+
+The scons based build system doesn't handle cross compilation, special
+compiler flags or (un)installation, so add a simple makefile instead
+which does.
+
+Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
+---
+ cpp/core/src/Makefile |   14 ++++++++++++++
+ 1 file changed, 14 insertions(+)
+
+Index: zxing-2.0/cpp/core/src/Makefile
+===================================================================
+--- /dev/null
++++ zxing-2.0/cpp/core/src/Makefile
+@@ -0,0 +1,14 @@
++override CXXFLAGS += -I.
++SRCS := $(shell find -name '*.cpp')
++
++libzxing.a: $(SRCS:.cpp=.o)
++      $(AR) $(ARFLAGS) $@ $^
++
++install: libzxing.a
++      install -D -m 0644 $^ $(DESTDIR)/usr/lib/$^
++      find -name '*.h' -exec install -m 0644 -D "{}" \
++              "$(DESTDIR)/usr/include/{}" ";"
++
++uninstall:
++      rm -f $(DESTDIR)/usr/lib/libzxing.a
++      rm -rf $(DESTDIR)/usr/include/zxing
diff --git a/package/zxing/zxing-makefile.patch b/package/zxing/zxing-makefile.patch
deleted file mode 100644 (file)
index 66896bf..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-[PATCH] add Makefile
-
-The scons based build system doesn't handle cross compilation, special
-compiler flags or (un)installation, so add a simple makefile instead
-which does.
-
-Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
----
- cpp/core/src/Makefile |   14 ++++++++++++++
- 1 file changed, 14 insertions(+)
-
-Index: zxing-2.0/cpp/core/src/Makefile
-===================================================================
---- /dev/null
-+++ zxing-2.0/cpp/core/src/Makefile
-@@ -0,0 +1,14 @@
-+override CXXFLAGS += -I.
-+SRCS := $(shell find -name '*.cpp')
-+
-+libzxing.a: $(SRCS:.cpp=.o)
-+      $(AR) $(ARFLAGS) $@ $^
-+
-+install: libzxing.a
-+      install -D -m 0644 $^ $(DESTDIR)/usr/lib/$^
-+      find -name '*.h' -exec install -m 0644 -D "{}" \
-+              "$(DESTDIR)/usr/include/{}" ";"
-+
-+uninstall:
-+      rm -f $(DESTDIR)/usr/lib/libzxing.a
-+      rm -rf $(DESTDIR)/usr/include/zxing